MySQL に CTEが入ったんですよという話題の中で、PostgreSQLのCTEの定番でこんなものがあるんですよ、とPostgreSQLの(というかSRA OSSの)石井さんに教えていただきました。
Mandelbrot set - PostgreSQL wiki
もちろんこのままではMySQLでは動かないのですが、少しの修正で動くようになったので、紹介します。
もとのSQL (PostgreSQL)
上記サイトに掲載されていた PostgreSQL用のSQLです。実行結果は上記サイトを参照。きれいなマンデルブロートが出力されます。
WITH RECURSIVE
x(i)
AS (
VALUES(0)
UNION ALL
SELECT i + 1 FROM x WHERE i < 101
),
Z(Ix, Iy, Cx, Cy, X, Y, I)
AS (
SELECT Ix, Iy, X::FLOAT, Y::FLOAT, X::FLOAT, Y::FLOAT, 0
FROM
(SELECT -2.2 + 0.031 * i, i FROM x) AS xgen(x,ix)
CROSS JOIN
(SELECT -1.5 + 0.031 * i, i FROM x) AS ygen(y,iy)
UNION ALL
SELECT Ix, Iy, Cx, Cy, X * X - Y * Y + Cx AS X, Y * X * 2 + Cy, I + 1
FROM Z
WHERE X * X + Y * Y < 16.0
AND I < 27
),
Zt (Ix, Iy, I) AS (
SELECT Ix, Iy, MAX(I) AS I
FROM Z
GROUP BY Iy, Ix
ORDER BY Iy, Ix
)
SELECT array_to_string(
array_agg(
SUBSTRING(
' .,,,-----++++%%%%@@@@#### ',
GREATEST(I,1),
1
)
),''
)
FROM Zt
GROUP BY Iy
ORDER BY Iy;
MySQL version (今回動くようにしたもの)
WITH RECURSIVE x(i) AS ( VALUES ROW(0) UNION ALL SELECT i + 1 FROM x WHERE i < 101 ), Z(Ix, Iy, Cx, Cy, X, Y, I) AS ( SELECT Ix, Iy, X, Y, X, Y, 0 FROM (SELECT -2.2 + 0.031 * i, i FROM x) AS xgen(x,ix) CROSS JOIN (SELECT -1.5 + 0.031 * i, i FROM x) AS ygen(y,iy) UNION ALL SELECT Ix, Iy, Cx, Cy, X * X - Y * Y + Cx AS X, Y * X * 2 + Cy, I + 1 FROM Z WHERE X * X + Y * Y < 16.0 AND I < 27 ), Zt (Ix, Iy, I) AS ( SELECT Ix, Iy, MAX(I) AS I FROM Z GROUP BY Iy, Ix ORDER BY Iy, Ix ) SELECT array_to_string( array_agg( SUBSTRING( ' .,,,-----++++%%%%@@@@#### ', GREATEST(I,1), 1 ) ),'' ) FROM Zt GROUP BY Iy ORDER BY Iy;
実行結果
mysql> WITH RECURSIVE x(i) AS (
-> VALUES ROW(0)
-> UNION ALL
-> SELECT i + 1 FROM x WHERE i < 101
-> ),
-> Z(Ix, Iy, Cx, Cy, X, Y, I)
-> AS (
-> SELECT Ix, Iy, X, Y, X, Y, 0
-> FROM
-> (SELECT -2.2 + 0.031 * i, i FROM x) AS xgen(x,ix)
-> CROSS JOIN
-> (SELECT -1.5 + 0.031 * i, i FROM x) AS ygen(y,iy)
-> UNION ALL
-> SELECT Ix, Iy, Cx, Cy, X * X - Y * Y + Cx AS X, Y * X * 2 + Cy, I + 1
-> FROM Z
-> WHERE X * X + Y * Y < 16.0
-> AND I < 27
-> ),
-> Zt (Ix, Iy, I) AS (
-> SELECT Ix, Iy, MAX(I) AS I
-> FROM Z
-> GROUP BY Iy, Ix
-> ORDER BY Iy, Ix
-> )
-> SELECT Iy, GROUP_CONCAT(s ORDER BY Ix)
-> FROM (
-> SELECT Iy, Ix, I, SUBSTRING(' .,,,-----++++%%%%@@@@#### ',I,1) s
-> FROM Zt
-> ) t
-> GROUP BY Iy
-> ORDER BY Iy;
+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Iy | GROUP_CONCAT(s ORDER BY Ix) |
+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 0 | , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , |
| 1 | , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , |
| 2 | , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , |
| 3 | , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., |
| 4 | , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 5 | , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 6 | , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 7 | , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 8 | , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 9 | , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 10 | , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 11 | , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 12 | ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 13 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 14 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 15 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-, ,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 16 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+,+,-,-,+,+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,. |
| 17 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,%,+,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,. |
| 18 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,%,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,. |
| 19 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,#,%,%,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,. |
| 20 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+,-,+,%, , , ,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,. |
| 21 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+, ,+,#,#, , ,%,+,%,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,. |
| 22 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,@, , , , , , ,@, ,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,. |
| 23 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,%, , , , , , , ,%,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,. |
| 24 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,+, , , , , , , , , ,-,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,. |
| 25 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,+,@, , , , , , , ,+,-,-,-,-,-,-,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,. |
| 26 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,#,-,-,-,-,-,-,-,+,+, , , , , , , ,+,+,-,-,-,-,-,-,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,. |
| 27 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,+, ,%, ,-,-,-,+, ,+,%,%,%,@, , , , , ,%,%,+,@,+,@,%,-,-,-,-,-,-,+,-,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,. |
| 28 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-, , ,#, ,+,+,%, , , , , , , , , , , , , , , ,%, ,@,-,-,-,-,-,+,+,-,-,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,. |
| 29 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,+, , , , ,%, , , , , , , , , , , , , , , , , , ,%,%,+,+, ,%,+,%,#,-,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,. |
| 30 | .,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,#, , , , , , , , , , , , , , , , , , , , , , , , ,%, , , , ,+,+,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 31 | .,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 32 | .,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,+,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 33 | .,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,+, ,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,%,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 34 | .,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 35 | .,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,%,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 36 | .,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,+,+,-,-,-,-,-,-,+,-,-,-,-,-,-,-,-,-,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,+,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 37 | .,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,%,+,-,-,-,-,-,+,+,-,-,-,-,-,-,-,-,-, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,#,+,-,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 38 | .,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-, ,%,+,+,-,-,+,@, ,-,+,-,-,-,-,-,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 39 | .,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,@, ,@,+,+,@, ,+, ,+,-,-,-,-,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 40 | .,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,+,@, , ,@, , , , , ,@,@,+,+,+,+,#, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 41 | .,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,%, , , , , , , , , , , ,#,+,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 42 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,+,+,%,#, , , , , , , , , , , ,%,%,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,@,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 43 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,+, , , , , , , , , , , , , , , ,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 44 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,-,-,+,+,@, , , , , , , , , , , , , , ,#, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 45 | .,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,%,+,+,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,@,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 46 | .,.,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,-,+, ,@, ,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 47 | .,.,,,,,,,,,,,,,,,,,,,-,-,-,%,-,-,-,-,-,-,-,-,%,-,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 48 | .,.,,,,,,,,,,,-,-,-,-,-,-,-, ,+,-,+,+,+,+,-,+,%,%,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 49 | .,.,,,,,,,,,,,,,-,-,-,-,-,-,%,-,-,-,-,-,-,-,-,+,+,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 50 | .,.,,,,,,,,,,,,,,,,,,,,,-,-,+,-,-,-,-,-,-,-,-,-,-,+,%,#, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 51 | .,.,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,+,@,@,@,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 52 | .,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-, ,+,+,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,%,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 53 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,+,@, , , , , , , , , , , , , , ,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 54 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,#,#,#, , , , , , , , , , , , , ,%,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 55 | .,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,+,%,@, , , , , , , , , , , ,%,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,%,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,. |
| 56 | .,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,@, , , , , , , , , , , ,%,+,+,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,%,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 57 | .,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,+,@, , ,%, , , , ,#,@, ,+,+,+,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 58 | .,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,+,+, ,%,%,+,+,%, ,+,@,+,-,-,-,-,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 59 | .,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,%,+,+,+,-,-,+,#,+,-,-,-,-,-,-,-,-,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,#,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 60 | .,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,+,+,-,-,-,-,-,%,%,-,-,-,-,-,-,-,-,-, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,@,#,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,. |
| 61 | .,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,+,@, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,+,+,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 62 | .,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,%, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 63 | .,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,,,,,,,-,-,-,-,-,-,-,-,-,-,-,-,-, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,#,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 64 | .,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,+,#,+, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,. |
| 65 | .,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,+,%,#, , , , , , , , , , , , , , , , , , , , , , , , , , , ,#,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 66 | .,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,+,@, , , , , , , , , , , , , , , , , , , , , , , , ,@, , , ,@,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 67 | .,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,#, , , , , , , , , , , , , , , , , , , , , , , , ,+, , , , ,%,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,. |
| 68 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,%,%, , , ,@,+,@, , , , , , , , , , , , , , , , , ,%,+,-,+, ,+,+,+,%,-,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,. |
| 69 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,%, ,%,@,+,+, , , , , , , , , , , , , , ,#, ,%, , ,-,-,-,-,-,+,+,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,. |
| 70 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-, ,+,+, ,-,-,-,+, ,+, ,+,%,@, , , , , ,%,+,+,+,+,+,+,-,-,-,-,-,-,%,-,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,. |
| 71 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,@,-,-,-,-,-,-,-,+,+, , , , , , , ,+,-,-,-,-,-,-,-,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,. |
| 72 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,-,-,-,+,%, , , , , , , ,+,-,-,-,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,. |
| 73 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,-,+, , , , , , , , , ,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,. |
| 74 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,-,-,+, , , , , , , ,#,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,. |
| 75 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,+,%, , , , , , ,%,#,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,. |
| 76 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+,%,+,%,@, , ,%,+,%,%,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,. |
| 77 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+,-,+,%, , ,%,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,. |
| 78 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,%,%,+,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,. |
| 79 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,+,%,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,. |
| 80 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,%,+,@,+,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,. |
| 81 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,+,+,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 82 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,@,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 83 | .,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,-,-,-,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 84 | ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-,-,%,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 85 | ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 86 | , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 87 | , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 88 | , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 89 | , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 90 | , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 91 | , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 92 | , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 93 | , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,,,,,,,,,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. |
| 94 | , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., |
| 95 | , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , |
| 96 | , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , |
| 97 | , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , |
| 98 | , , , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , , |
| 99 | , , , , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , , , , |
| 100 | , , , , , , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , , , , , |
| 101 | , , , , , , , , , , , , , , , , , , ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,., , , , , , , , , , , |
+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
102 rows in set, 65535 warnings (0.21 sec)フォントを小さくして、画像で見せると、こんな感じになります。美しい。

変更点の解説
- VALUES 文に ROW 記述が必要 x VALUES(0), o VALUES ROW(0)
- FLOAT へのキャストは明記不要なので、削除
- GREATEST() は集約関数としての動作はしないので、一旦キャラクタを決めるクエリをサブクエリとして作成
- array_to_string() 関数はないので、MySQLでは GROUP_CONCAT() で。
PostgreSQL版では、キャラクタの順序決め(array_agg() か array_to_string() するタイミング)で Ix を使った順序決めを行っていない点が気になりました。処理の都合上、期待通りに Ix順となるよう文字列が作られているようですが、このクエリを厳密に読み解くとその順序は「不定」ではないでしょうか。
それにしても、CTEやWindow関数活用の先輩である PostgreSQL には、やはり面白いサンプルがいっぱいありますね。ほかにも試してみたくなりました。おもしろかった~。
追記
よく見たら、膨大なワーニングが出ていた。
102 rows in set, 65535 warnings (0.21 sec)
これは、FLOATを「さくっと消してしまった」ことによるもので、やはりここは丁寧にCASTすべきであった。
エラーの例:
| Note | 1265 | Data truncated for column 'Y' at row 1 |
キャスト方法
SELECT Ix, Iy, CAST(X AS FLOAT), CAST(Y AS FLOAT) , CAST(X AS FLOAT), CAST(Y AS FLOAT), 0
これで WARNINGS は出なくなる。