seaofclouds (owner)

Forks

Revisions

gist: 78642 Download_button fork
public
Description:
wish defunkt a happy birthday and fork this gist!
Public Clone URL: git://gist.github.com/78642.git
Embed All Files: show embed
happy birthday, chris #
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
.__ ___. .__ __ .__ .___
| |__ _____ ______ ______ ___.__. \_ |__ |__|_______ _/ |_ | |__ __| _/_____ ___.__.
| | \ \__ \ \____ \ \____ \< | | | __ \ | |\_ __ \\ __\| | \ / __ | \__ \ < | |
| Y \ / __ \_| |_> >| |_> >\___ | | \_\ \| | | | \/ | | | Y \/ /_/ | / __ \_\___ |
|___| /(____ /| __/ | __/ / ____| |___ /|__| |__| |__| |___| /\____ | (____ // ____|
     \/ \/ |__| |__| \/ \/ \/ \/ \/ \/
         _____ ___ ___ ___ ___ ___
        / /::\ / /\ / /\ /__/\ /__/\ /__/| ___
       / /:/\:\ / /:/_ / /:/_ \ \:\ \ \:\ | |:| / /\
      / /:/ \:\ / /:/ /\ / /:/ /\ \ \:\ \ \:\ | |:| / /:/
     /__/:/ \__\:| / /:/ /:/_ / /:/ /:/___ \ \:\ _____\__\:\ __| |:| / /:/
     \ \:\ / /://__/:/ /:/ /\/__/:/ /://__/\ \__\:\/__/::::::::\/__/\_|:|____ / /::\
      \ \:\ /:/ \ \:\/:/ /:/\ \:\/:/ \ \:\ / /:/\ \:\~~\~~\/\ \:\/::::://__/:/\:\
       \ \:\/:/ \ \::/ /:/ \ \::/ \ \:\ /:/ \ \:\ ~~~ \ \::/~~~~ \__\/ \:\
        \ \::/ \ \:\/:/ \ \:\ \ \:\/:/ \ \:\ \ \:\ \ \:\
         \__\/ \ \::/ \ \:\ \ \::/ \ \:\ \ \:\ \__\/
                      \__\/ \__\/ \__\/ \__\/ \__\/
                                                                                                    
                                                                                                    
                                    ...................................
                                    ..,7ZOZZ$$7II????I??7ZZOZO7........
                           . .....OZZZOZZZZZZZZZZOOZOZZZZZIOZ8=......
                           . . ...IZZZO+?++?OOOOOOOOZOOO$ZOOOOO8....
                           . .....IOZZZ?=~+?OOZOOOOOO8+??$8OOOO8.. ...
                           .. ...IOZOZ?+=??OOOOOOOOO8+??78OOZO8,.....
                           . ....IOZO$?=~??OZOOOOOOOO+??7OOOZOO:...
                             .. ...,IZZOI+=~??OZOOOOOOOO7I?7OOOOOO+....
                            . ....~7ZZZI+=:?+OZZOOZOOZO++?IOOOZOO7..
                            .......~IZZZ?+=+++OZZZOZOOZO???7OOOZOO7....
                          ........,?OZZZII??Z8ZZZZZOOOOZOZ$7ZOOOOOZ.....
                            . . ..~IOZZ7?+=+??ZZZOZOOOOOI??I$OOOOO8....
                            . ...+?OZZ7?+=+??ZZZZZOOOOO+=?I7OOZOO8....
                            ......+?OZZ7??+???ZZZZOOZOOOI??I7OOOZO8....
                           .. . ..??OZZ7??+???ZZOZZOOOOOI??I7OOZOO8,. .
                            . ...?+OZZI??=???ZZZZZOOOOOI+?I7OOZZO8,. .
                            . ...I+OZZI??=+??ZZZZZOOOZOI+?I7OOZZOO,.
                             .....??OZZI?+=+??ZZZZZOOOOOI+?I7OOOZOO:...
                           . .. ..??OZZI?+=+??ZZZZZOOOOOI+??7OOOZOO~. .
                           . .....??OZZI??=??IZZZZZOOOOOI+??7OOOZOO~...
                            .. ...?+8ZZ$?I??IIOZOZOZOOOO7II7$OOZZ8O=...
                             ... .?++OZOO$$ZOOZOZOOOOOOOOOOOOOOOOO8:...
                           .......~IIZ$Z7I?II7ZZZOOOOOOO777ZOOO$OOZ.....
                          .... ...=IZZZO7????7ZZZOOOOOOOOZ77ZOOOOOZ....
                            . . I?OZZZI?I?OZZZZZOOOOOOOOOOOOOOOO8:....
                            ......??OZZI?????7ZOZZOOOOOOOO7I7OOOOOO+...
                            .....:+?ZZZ??+=??$ZZZZOOOOZOI??IIOOOZOOI....
                            .....+?7ZZO??+~+?$ZZZZOOOOZO7+??I8OOZZO$.....
                            ... .??$ZZO??++??ZZZZZZOOOOO$=???OOOZZOZ,.... . .
                            ... .?+$ZZZ??+=??ZZZZZZOOOOO$+???OOOZZOO,.... . .
                           ......I?ZZZZ??++??ZZZZZZOOOOOZ????OOOZZO8~.... . .
                           .. ...??OZZ$??++??ZZZZZOOOOOOZ???IOOOZZO8+...
                           . ...?IOZZ$??++??OZZZZOOOOOOZ???IOOOZZO8= ..
                          .... ..+7OZZ7??++??OZZZZOOOOOOO????OOOO$OO= ..
                            .. ..+$OZZI??++??OZZZOOOOOOOZ???IOOOZZOO+... ..
                           ... .,+ZOZZI??++?IOZZZOOOOOZOO???IZOOOZOO?...
                           .....~=OZZZ???+??IOZOOOOOOOOOO???IZOOO$OO?....
                            .. .=+OZZZ??+++?$OOZZOZOOOOOO????ZOOZZOOI...
                             ...?+OZZO???+??7OZZOOZOOOOOO????$OOZZOO7....
                             ...I+OZZO??++??$OZZZOZOOOOOZ????$OOZZOO$....
                           .....I+OZZO???+??$OZZZZOOOOOOO????$OOOZOOO,...
                           .....I+OZZO??++??ZOZZZZOOOOOZO????7OOOZZO8,...
                           .....+?ZZZOI?++??$OZZZZOOOOOOO????7OOOZZOO~..
                            ....+IZZZO???+??ZOZZZZOOOOOOO????7OOOZZO8~..
                            ....+IZZZZ??++??ZOZZZZOOOOOZO????7OOOZZOO?..
                           ....:+$ZZZ$I?++??ZOZZZZZZOOOOO????7OOOZZOO?I..
                          .....$?$ZZZ$I??+?IOZZZZZZZOOOOO????7OOOZZO8~$.. ..
                          .....??ZZZZ7I?+~+?ZZZZZZZZOOOZO???IIOOOZZO8?I..
                          .....I?OZZZ$?+???IOZZZZOZOOOZO8??I?7OOOZ$OO7Z..........
                          .....7?O$ZZOI+~+7$ZZZZZOOZZZOZ$++?IIOOOZ$OOZO:.... ...
                            ...ZZ8?$Z=IOO7=~=???7Z8OZZZZZOO$$ZZOOZ$OOZO~.... . ..
                           ...,7O$II$Z8?7~~=?I???????7OOO7+I$OZOOOZZZOO~. .... .
                           ...7IOIII77+==~~=+I????????I?=+$8OZI8ZOZ8OZO=.......
                           ...OZO?II77+=~~~=?I???II????I+~~=+ZO+OZZ,8OZI........
                            .:OO8?II77+==~~=?I??????????+~~==I7OI8?,$OO8........
                            .?$O8III7$+==~~~?I???????????~~==I?$78I:IOOO.......
                           ..$IO8II777+==~~~II?????????I?~~~+??7$O7:?8O7,.... ..
                           ..O+OOIII7$+==~~=II?II????????~~=+I?+$ZI:=8O$Z.......
                           ..O?OZIII77?=~~~=III??????????=~=+I??ZOI~:8OO8.... ..
                           ..$7O7IIII7+=~~~=III??????II?I=~==7??ZO?I:8888.... ..
                          ...I$8?II77I+=~~~=?II?II???I?II====II8O8??:88OO..... .
                           ..IO8Z$Z$7I+==~~~?II??I???????===+?II???=.8O8Z..... .
                          ...ZZ87O8$$?+==~=~II???????????===+??I??Z$ZZ888.......
                          ...OZOI7+7$$??+++++I???III???I?+=+?IIIII+~,88O8........
                          ...~8O8=7777III???????????I??I??????II?I?,D8ZO$.... ..
                          ....IOOIDDOOO777III?I??I?I?I?IIII7I$OODO8?8OZO.........
                           ...7OZ7OZZZ87I77$D8D888888OOOZZZZ$Z$777?7O$87.......
                           ..8OOO=MN8N8??++I+DNNNNNNNN8NIII++ZOZMNM=NOOO7. ... .
                 ...........8ZZ788NOMMN++~~==NDDNNDDDDDNI==+7NNNDNN8M88OZO.......... ..
                 .......,?Z7O7$$D8NNMMMOOMDMDNODMMMMMD$7$8NNMDNNNNDD8MO8?8=~7..... .
                   ...O7OOO$DI78ZOOOZDMMMMMMZOI7Z8DD8Z77ZZZD8DMM8OOOO8O88OI$OZ,...
                  ...8?OZOD=OZ$$ZZII7I?I7O878MMMD8OZONMNMO$77D$7$77ZOOOOO8D8O8=.......
                 .....ND~=DZ$$77III7?DI++I7MIIZO77I777777IM7$7I88I7I7ZOOOO8ODM?. ......
                 ...~M~?ZO$$777?7II?Z??I??N+IZI+M?IIIII?IIINO$I?7O$I7IIZZOZ8IODMI... ...
         .. ......M,=??Z777IIIII????$???I$??+I?II?I???I??I??=+II,ZOIIIII77O$:=++ZDN.. . ..
         .......8~III77$7III????????7??????II7IIZ+$?ZI+?77?8?I~~8$=IIII7II7IZI~=++~NM?....
         ....?+=??777$$III??????????I????++O???????????=II7+?I=I87??I??II?II7$ZI=+++:+M~ .
    ........?+II77$Z$7II????????????II?$?$?=7I77+?+II??I==7?II7I=7+????I?IIIII7$Z7++??+.M. ..... .
     .. ...+??777$ZIIII????????????+8I?I?I?III+=I?Z+O+I+=$++7?+?I,$??????III??I77Z7???+?,NM......
      . .?=?I$$$Z7III?I??????????????I?+????7?+?????I??I?I+?+???II7?I???????++IIIIZZ7II??=~N......
 .. ....+?II$$OZIII?????????????????=~~7??+7Z+$???I?I???I7=7?II?IO??????????I+,~?II7ZZ7III+=+,.....
   ....++?77Z$7$II???????????????????I?ON???IZ??77777?I$Z???????O????????????I?,..=7I7O$I7I+~,~....
. ....++?7$$ZZII?????????????????????????:=???I??77$$7I?II???II=????I???I????I?I,.,:?I7$Z777+:N7..
.....==?I$$ZII????????????????????????????+:I?I?????II7777I7I???????????????????I+,..,I77ZZ77+,~..
....+=+I7ZO????+++?????????????????????????II77Z$$$ZO$7I?II????I?????III?????I??????=~:,77$ZZI~:N...
. .:=+?I$?++++++++??????IIIIIIIIIIIIIIIIIII?I??IIII?IIIIIIIIIIIIIIIIIIIIIIIIII??????+??+~I77OOI+,O..
...+++?II?+++++???IIIIIIIIIIIIIIIIIIIIIIII7IIIIII7IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII??????I77OO7:$..
 ..=++?$?++~~=??I7II7I7IIIIIIIIIIIII77I7II7777777777I777II7IIIII77II7777I7III7IIII7IIIIII7I77$88??:.
..~+=?Z7I?+++==+I7777I777777I77777777I77777777777777777777777I77777777777777I7777777III77777$$OOO+D.
..?=++$I7?+++?I7777777777777777777777777777$$7$$$$$$$7777777777777777777777777777777$777777$$OZO8I8.
..+++O$$??++?I$77777777777777$$$$777$7$$$$$$$$$$$$$$$777777777$777$7777$$$$$$7777$ZZ$$7IIIIZZZZODOZ.
..++78OZ?+=+?I$$77$$$7$$$$$$$ZZZZ$$$Z$$$$$$$$$$$$7$$$7$7$77$$77$$$$$$$$$$ZZZZ$$ZZZOZZZZ???I$OOZZ8D$.
..+=ZDO7I+==+$$$$$$$$$$$$ZZZOZZOZZZZZZZZ$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$Z$$OOOOOOOOOZOOOZI+??7OOZZDDZ.
..+=8D8II????ZZZZZZZZOOOOOOOOOOZOOOOO88O8OOOOOOOOOOZOOOOOOOZZOOO88O88888O88O88OOOOOOOOO$III7O88O8DZ,
..?+OD8III?IIOO8888OOO8OOOOO8O888OOOOO8OOO88O8OO8OO8888888O88888OOO8OO8O88OOOOOOOO8OOOO$777$88888DZ,
..I=$ND77III7888O88888O888O888888888888888O888888888888888888888888OOOO8OO888888OO88O88Z7$$$88D8D8Z,
..=+IN8$$777$O8O888888888888888O8888888888888888888888OO8888888888888888888888888888888O$ZO8888ONDI:
..:~IN8O$Z77ZO8OO8O888888O88O8O888O8888888888OO8O88O888O88888888O888O8O8D888O8O888O88O8OD8OD8DNZ77I,
 .,:::~,,,:,I,,~87::~$N+,7ND8$D88DIZNDZ=$DDO7DDD$$8DD7+88N?=?DDDI+OD8?I8NI=+I8?++?+II?7I7777$$Z$$II.
..,,:::::::::~:::~~~~~~~:~~~~~~~~~=~~~~~~~~=~~===========+=++++===++++???+??+?????IIII7777$$$$$$7I7.
..,::::::::::::::~~~~~~~~~~~~~~~~~~~~~~==~===============+=+==+++++++++++????????IIII7777$7$$$$$777.
. ,::::::::::::::~~~~~~~~~~~~~~~~~~~~~~=~~============+++=++=++++++++++++???????IIIII7777$$$$Z$$7?N.
. ,,::::::::::::~~~~~~~~~~~~~~~~~~~~~~~=~============+====+=+++++++++++++?+?????IIIIII777$$$$Z$$$I+.
...:,:::,:::::~:~~8M8Z+~~~~~~:,:::~~~==~~=====~~===+=====+++++++++++??+?+??+??+?+IIIII777$$$$Z$$7?7.
...7I$:,,:::::::~~:,NNM,~~::~MNNO~=~~=~======~OMNM:=====+++==++++++++=+??+???MMD=??++?Z7$$$$Z$$$7?=.
...7$O,::,::::::~~~,DNNM,~~,M+MM7~~=:=ODO?:====$MD~=?=~?I=+:?NMN?:=+$MDDM?MMD=N=?MMZDMMI7$$$$$Z$77..
...7$D.,,,,::::::~~,D?MDM=~M?$MMZ=~:MM:~,MM7~==MMZ:=8MN?:=MMM+?$MMM+?7MMM?OM7?+?OMMMDOI777$$$$$$IZ..
  .IZZ,::::::::~~~~:D?,MNM,M:+MMI~+~=?MMMMM$==~MMZ,MM,=+?=MMMZOOMMM=?IMM8+????+I=MMMMMMO$7$$$$$$7D..
...?$ZZ,::::::~::~~,MI~DNNM:~$MM?~:DMM:=:MM8+=~MMMMDMMO:+8MMM~~====++7MM??+??+?+D+???8MM7$$$$$$$7O..
...=?$O,,:::::::~,ONMMZ~MND~,$MM8:~MMM::,MMZ:=~MMZ:=7MMM,:MMMN~:=8M+=ZMMD=+?????~MMMMMMI$$$$$$77I$
...,$OM:::::::~~~~:~:::=:Z:~~?::$~=~7MD+,8MMO,MM8MM:=:MMMO?~OMMM+~??IO?~=7?+???II+III77I7$$$$$77?8..
....77D,,:::::::~~~~:~==,,?+?::=~=~=====~=====+=+===++=+++++++++++++++?????I?II?III77777$$$$$$$7I=.
.. .$$N,::::::::~~~~~~.MMO+~~DMZ~==~=========+=========+==+++=+++++++++??+??+????IIIII77$$$$$$77?~.
....?I8,,:::::::~~~~~8$,7:~=~~=~OO=~==~DD$Z=~===~8$O8O=+++==++++++++++?+?~MMMMZ?I?II7777$$$Z$Z7$?,.
....ZZ8:,:::::::~~~,O:,M~,8=~~~~==O,=~~:+MMM:+==DMMMN~==~++==+?=?+?++++???+~MMI?+?IO8I77$$$$Z$7?8..
....7ZO,::::::~:~~~$M~:=:DD=~=+~~~NM=====NMNM~+IM+MMN+=+:MMDMMM~?=MMMMMMMM?=MM$I~MMO?I$$$$$$$$7IO..
....,:,:::::::~:~~~NZM,=Z$:8M$M=M8+M:==:$N:MMM~M:7MMZ=++IN:==MMM=?+MMM7?==?~MM7MM7II77$D7$Z$$$7II..
  ..,::::::::::~:=,DZ$M~~==$$,N~M~7M~~=:ON~MMMMM~8MMO~==OMMMMMMM+++ZMM7??+?=MMMNMMM?7IO87$ZZZ$IIO..
  ..,:::::::::::::M.,~:=MM:$+=,M,~8M===~$M=,MMM~+ZMM8++MMM:?=MM????8MM7?+??~MMII+MMMMZ$$$$$Z$77?+..
  ..,:::::::::~:~~:M+::$~=~::=~:=,M=+=+$MM=?OM~=ZMMMMM:MMMNZMMMMM?MMMMMM=~MMMMMM+7IMMMIZ$$ZZ$77?~..
.....:?~::::::::::~7M.MN:==~=~~:DO~===:~::~+=~=+~:~=~~=?~?+~+==~=+=++++++?????IIIII7777$$$$$$7I?~.
.....,,,::::::::~~~:~~:$MN:,::~M?+~~~~=~===~====~=+=+=++=+++++++?+=+??????????IIII7777$7$$$$$7I7..
.....=7D,::::::::~~~~~~=~=::==~=~~=======+~=====+++=++=+==+?+=++++?+???????I????III7777$$$$$$7I7...
.....,,,::::::::~~~~~~~~====~=~~~=~:=++:=+~+=+~++=~+=++=~=~~~?~~=~++=~++=~=+?+IIIIII777$$$$$$7?7...
......?Z,::::::~:~~~~~~=~===:M.M=N,7,,M:,M,M~=M:DM?IN:D?NMMNI?8MD,M:IMINDZDOM+?III77777$Z$$$$I?8...
. ...?:,:::::::~:~~~~~~~===+,,,,==~~:~::~~=~=~:~~=~===:~~=~==~=:~==~==~?===7???II77777$$Z$$$7I7...
......+Z:::::::::~~=~~~~~~~~:NMMN,M,NMMMMMM,MMMMMMMM~+MMMM=OMMM,MMM=MMMD+?MM7+I??I77777$$ZZ$77$7....
. ....7~::::::::~~~~=~~~~~~=~=:MDMMM+8+:$MDDMMN=~MM~~MMMMN~?~MZMMN=+?++MMN+?+??I?I77777$$$Z$7I7~..
......::+::::::::~~~~~~===~~==~=N+ZMM:=.8M,+,NM:~MM,=M=:~DM=~MO=ZMM~$?+OMNO=??I?II7777$$$$$$$I$....
. . ..:7Z::::::::~~~~~~~~~~~===+,==:~=+::::+:~~:~~::+=~~=:+~=~~=??~~=I=+????I???II7777$$$$$$$IZ....
... ...:,,::::::~~~~~~~~=~==~=~~+~~~=~===~+:D8,N:DZ8MNIM:M?,NM=+??++?+II??????IIIII7777$Z$$$I?+....
... . .$,:::::::~~~~~~~=~=~==========+=+=++~$:N:D~MM$?N:M:OMIM?+?+?++?????????II?7I7777$$$Z7$?,....
 . ...,~:::::::~~~~~~~=~=~====~==+====~==++++==?=++??=++=+++=?+?+++++???+I???IIIII7777$$$$$7I....
.. ....~::::::::~:~~~~~=~~==~D=??7=I$.??8:++=I~+=8~?~?~$:8:Z=7Z=Z~M~D8?8MZN=N?IIII77777$$$$$II.....
 ......:::::::::~~~~~~===~~==~:~+:=?=,ID$N=O?O~8O$=$O:?D=Z:Z~??=+==+=8D?++?++?IIII7777$$$$$7II.. .
 ......:::::::::~~~~~~~~=~====~~~=:D+?M878?$8+MZ,+?OI=7N?=DZO7NMM~=OM?N+I???I??IIII777$$$$$7II.. .
.......,:::::::::~~~~~====~~~~===~?7OD$$ZMO,NZZ7MNM=O~N7ZZZ$$+87+MMIII$+=?+?I?IIII7777$$$$$7I?....
 .. ..=::::::::~~~~~~~~~=====~M=7+:7$:??+:MO~=?=+=?=+~7?~=8I=$?MM$$~$:+D=D8?I?III7777$$$$$7I+....
... ....:::::::::~~~~~~~~~==~~=::~?~=?~I+=~Z?DO~I~?N=D?87+II=+?7?+Z=?=+?++??IIIIII7777$$$$7II~....
..... ..::::::::::~~~~~====~==~===+=+~?OD+OM?=:7=++~OM,N8~7~NO++7=7I=+???????IIIIII777$$$$7I?,....
 .......::::::::~~~~~~===~===========~?~??7:+7$7~==~?O~I?=7II$++==+++??+????IIIIIII777$$$$7II... .
 .. ....::::::::::~~~~=~==~~===~=====~======++==+==+++?===++????+++?+????????IIIII7777$$$77II... .
........:::::::::~~~~~=~~~~==~~=========+=+======+=++++=+?++?++++?????????????IIIII777$$$$7II.....
........:::::::::~~~~~~~~~=~=~~=================+=++++++++++++++++?????????????IIII777$7$77I:.....
. . ....+:,::::::~:~~~=~=~======~================+++===+++++++++++?+?????????IIIIIII7777$I?Z,.....
      . .OO8,~,::~~~~~~~~~~=~~====~===~===~=========++++++++++++++++?++??+?????I???IIII77ZZ8......
      . .N$ZZ7$+~+=,,~:::~~::~==~========+==+==+===+===+=+=+?=+=+++++==?I?=?II?II77I777$$$OO......
      ...?8$$$7777$7$$7$$$Z7$ZOZ$$Z$ZZ$Z$Z$Z$7$Z$I7$$$Z$$77$$$$$7$7777$$$$$$7$$777777777$ZZ$.... .
        ..$7$7$7$7$$$77$$$$$$$$$$777I77777$$ZOO88DD8DDNNNNNNNN8O$777I77777$$$$$$$77$$777$ZO......
         ..87$Z$$ZZO8Z888OOZ77$ZZ$$$$7$$$77$$$Z$ZZZZZOOO8888DDDDDDDDDOOZZOOO$OZZZ$$Z$$$$OOD... ...
         ..OZ$OO8DDNDZ?II$$$ZOOOOZOOOOO88888888O888888888D88888DDDDDDDDDDDDDND8$$OOOZOO88D........
         ...$$I7I7$I?I$ZZZOZOOOOOZZZOOOOOOOZZZOZOZZOO8888888D8DDDDDDDDDDDDDDDDDDD88DD8DD8=...... .
        ....Z$Z$Z$$ZZOOOO8O$$$$ZZZZZZZZZ$$ZZOOOOZO8888888888888888888DDDDDDDDDDNDNDDD8ODD.........
         ....8OO$ZZOOOZ$Z8DZ7DN8ZZOZZZZOOOOO8888D8888888888888D888888888Z8OOOOODNDND8DDD...... ...
         ....=OOO$$ZZZZ$7ON$7I7$ZOOOOO88DDDDDDDDDDDDDDDDDDDDDDDDD88DO$$7$OOOOODOZO88D7DO...
        ......O$O$7OZ77II7ZOOOO888Z$$7$77IIIIII777I7III7777$$Z$$$77$OMDD$?ZZO$ZO8DD8?$N....
        ......=DZOD8O7II??$OZOOO8DDNDNNMMMMMMMMMMMMMMMMMN8D88888888NND8ZO8DN8$ZZ$78D$$$ ...
        ........ZOZ===7$$77$Z88O$$$$ZZOZ$ZZZZZ$O88ZO8O8ZOOOOOOO8DNMMMMMNNNZI7?7OO8$Z$O...
        .... ....MZZODMMO7+888Z7$7I77777II7I7$7I77II77$7I7I777I7$$$$ZZ8NN?+$Z+?$$8N7.......
        .............,=??I?77I7II77$$$OZ$$Z$ZZZZZOOO8O8OZZZ8ZZ$II?+:,......................