1
-
0                                            PRINCETON UNIVERSITY COMPUTER CENTER CLINIC
-
-
-
-
-
                                                            +------------+
                                                            +            +
                                                            + COMPUTER   +
                                                            +            +
                                                            +    PICTURE +
                                                            +            +
                                                            +------------+
-
-
-
-                                                              THE MOON
-                                                   COMPUTER TRANSCRIPTION PROCESS
0                                                                 BY
0                                                         SAMUEL P. HARBISON
0                                                       COMPUTER CENTER CLINIC
                                                         PRINCETON UNIVERSITY
                                                           87 PROSPECT ST.
                                                     PRINCETON, NEW JERSEY 08540
-                                                  COPYRIGHT 1973 BY S. P. HARBISON
-                                                       SHEET  1 OF  5 SHEETS
-                         THE COMPLETE PICTURE IS CONSTRUCTED BY TAPING THE SHEETS TOGETHER SO THAT THE
                          LAST CHARACTER ON THE FIRST SHEET MEETS THE FIRST CHARACTER ON THE NEXT SHEET
                          WITH NO WHITE SPACE BETWEEN THEM.  THIS WILL REQUIRE TRIMMING THE SHEETS WITH
                          SCISSORS.  DO NOT PUT TAPE ON THE PRINTED SIDE OF THE PAPER; TAPE FROM BEHIND.
-
-
-
-
-
-
0
         - 1 1-11+=====IXXXZZZXZZZZ-Z--Z-----Z-Z----Z-Z--M------M------MM-------------------------------Z-----------Z--------M-------
+                                  C CC CCCCC C CCCC C CC CCCCCC CCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC CCCCCCCC CCCCCCC
 -"----------"---"-"""""-"""""""""""+""""""""""+"+"+"++++++++++++++++++++++++++++++++++++++++==++++=++++==+++===+====++=+===++==++==+
+.C..........+...+.+++++.+++++++++++C++++++++++C+C+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+'B''''''''''C'''C'CCCCC'CCCCCCCCCCC CCCCCCCCCC C C C
+XHXXXXXXXXXX XXX X     X
+CXCCCCCCCCCC CCC C     C
 """""""""""--------------"----""""""""""""""""""+"""""+"+++++++++++++++=++++++++++++++++++++++++++++++++++++++++++==+++++++++==++==+
+CCCCCCCCCCC..............+....++++++++++++++++++C+++++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBB''''''''''''''C''''CCCCCCCCCCCCCCCCCC CCCCC C
+HHHHHHHHHHHXXXXXXXXXXXXXX XXXX
+XXXXXXXXXXXCCCCCCCCCCCCCC CCCC
 """"-""""""--"----------------""-"""""""""""""""""""""+"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++
+CCCC.CCCCCC..C................++.+++++++++++++++++++++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBB'BBBBBB''B''''''''''''''''CC'CCCCCCCCCCCCCCCCCCCCC C
+HHHHXHHHHHHXXHXXXXXXXXXXXXXXXX  X
+XXXXCXXXXXXCCXCCCCCCCCCCCCCCCC  C
 """"-""----"------"-------"""""""""""""+"""""+"""""+"+"++++++++"==++++++++++++++++++++++++++++++++++++++++++++=++++++++++++=+++++=++
+CCCC.+C....C......+.......+++++++++++++C+++++C+++++C+C+CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBB'CB''''B''''''C'''''''CCCCCCCCCCCCC CCCCC CCCCC C C        C
+HHHHX HXXXXHXXXXXX XXXXXXX
+XXXXC XCCCCXCCCCCC CCCCCCC
 """""-""""""-"----"-------"---"-"""""""""""""""""""""""+++"++""++"++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCC.C+CCCC.C....+.......+...+.+++++++++++++++++++++++CCC+CC++CC+CCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBB'BCBBBB'B''''C'''''''C'''C'CCCCCCCCCCCCCCCCCCCCCCC   C  CC  C          C
+HHHHHXH HHHHXHXXXX XXXXXXX XXX X
+XXXXXCX XXXXCXCCCC CCCCCCC CCC C
 """"""-+""---"------------------""-""""""""""""""""""""+"""""""""+++"++"++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++
+CCCCCC.CCC...C..................++.++++++++++++++++++++C+++++++++CCC+CC+CCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBB' BB'''B''''''''''''''''''CC'CCCCCCCCCCCCCCCCCCCC CCCCCCCCC   C  C                  C
+HHHHHHX HHXXXHXXXXXXXXXXXXXXXXXX  X
+XXXXXXC XXCCCXCCCCCCCCCCCCCCCCCC  C
 """"""""""""-"--"-------------"----"---""-""""""""""""""""""""""""""""""++"+""+"+++++"+"++++"+++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCC.C..C.............+....+...++.++++++++++++++++++++++++++++++CC+C++C+CCCCC+C+CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBB'B''B'''''''''''''C''''C'''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C CC C     C C    C
+HHHHHHHHHHHHXHXXHXXXXXXXXXXXXX XXXX XXX  X
+XXXXXXXXXXXXCXCCXCCCCCCCCCCCCC CCCC CCC  C
 """"-"""-"""--"-"---"-------------""""+"""""""""""""""""""""""""""""+"++++""+"+++++++"++++++++"+++++++++++++++++++++++++++++++++++++
+CCCC.CCC.CCC..C.C...+.............++++C+++++++++++++++++++++++++++++C+CCCC++C+CCCCCCC+CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBB'BBB'BBB''B'B'''C'''''''''''''CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC C    CC C       C        C
+HHHHXHHHXHHHXXHXHXXX XXXXXXXXXXXXX
+XXXXCXXXCXXXCCXCXCCC CCCCCCCCCCCCC
 """""""""""""--""-------"---------""""-"""""""""""""""""""""""""""""""+"++"++"+""+"+""""""++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCC..CC.......+.........++++.+++++++++++++++++++++++++++++++C+CC+CC+C++C+C++++++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBB''BB'''''''C'''''''''CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  C  C CC C CCCCCC
+HHHHHHHHHHHHHXXHHXXXXXXX XXXXXXXXX    X
+XXXXXXXXXXXXXCCXXCCCCCCC CCCCCCCCC    C
 """"""-"""""""-"""------------------""---"---"""""""""""""""""""""""""""+++"""+"+""+"""++"+"++""++"+++++++++++++++++++++++++++++++++
+CCCCCC.CCCCCCC.CCC..................++...+...+++++++++++++++++++++++++++CCC+++C+C++C+++CC+C+CC++CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBB'BBBBBBB'BBB''''''''''''''''''CC'''C'''CCCCCCCCCCCCCCCCCCCCCCCCCCC   CCC C CC CCC  C C  CC  C
+HHHHHHXHHHHHHHXHHHXXXXXXXXXXXXXXXXXX  XXX XXX
+XXXXXXCXXXXXXXCXXXCCCCCCCCCCCCCCCCCC  CCC CCC
 """"""""""""""-"""----------------"---------""""""""""""""""""""""""""""+"+""+""+""+"+"+"+"""+++++"+++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCC.CCC................+.........++++++++++++++++++++++++++++C+C++C++C++C+C+C+C+++CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBB'BBB''''''''''''''''C'''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCC C CC CC CC C C C CCC     C
+HHHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXX XXXXXXXXX
+XXXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCC CCCCCCCCC
 """""""""""-""-"""--------------"-------"""""""""""-"""""""""""""""""""""""""""+""++"+++""""++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCC.CC.CCC..............+.......+++++++++++.+++++++++++++++++++++++++++C++CC+CCC++++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBB'BB'BBB''''''''''''''C'''''''CCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCC CC  C   CCCC
+HHHHHHHHHHHXHHXHHHXXXXXXXXXXXXXX XXXXXXX           X
+XXXXXXXXXXXCXXCXXXCCCCCCCCCCCCCC CCCCCCC           C
 """"""""""""""-"""----------------""-----""-""""""""""""""""""""""""""""""""""++""""++""""""""+"++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCC.CCC................++.....++.++++++++++++++++++++++++++++++++++CC++++CC++++++++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBB'BBB''''''''''''''''CC'''''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCC  CCCCCCCC C
+HHHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXX  XXXXX  X
+XXXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCC  CCCCC  C
 """"""""""""""-"---"-------------"---"-"--"-"""""""""""""""""""""""""""""""""""""""""+"""+"+++"++""+++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCC.C...C.............+...+.+..+.+++++++++++++++++++++++++++++++++++++++++C+++C+CCC+CC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBB'B'''B'''''''''''''C'''C'C''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C   C  CC
+HHHHHHHHHHHHHHXHXXXHXXXXXXXXXXXXX XXX X XX X
+XXXXXXXXXXXXXXCXCCCXCCCCCCCCCCCCC CCC C CC C
 """"""""""""""-"-------------------"-"---""""""""""""""""""""""""""""""""""""""""""""""++""+""++"+"+++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCC.C...................+.+...++++++++++++++++++++++++++++++++++++++++++++++CC++C++CC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBB'B'''''''''''''''''''C'C'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC CC  C C
+HHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXX X XXX
+XXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCC C CCC
 """""""""-"-"---------------------"-"-""""-"-"""""""""""""""""""""""""""""""+""""++""++"""""+"++++"+++"+++++++++++++++++++++++++++++
+CCCCCCCCC.C.C.....................+.+.++++.+.+++++++++++++++++++++++++++++++C++++CC++CC+++++C+CCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBB'B'B'''''''''''''''''''''C'C'CCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  CC  CCCCC C    C   C
+HHHHHHHHHXHXHXXXXXXXXXXXXXXXXXXXXX X X    X X
+XXXXXXXXXCXCXCCCCCCCCCCCCCCCCCCCCC C C    C C
 """"""""""""""""-----------------------"-"-"""""""""""""""""""""""""""""""""+"""""""""""+"""""""+"++++++++"+++++++++++++++++++++++++
+CCCCCCCCCCCCCCCC.......................+.+.+++++++++++++++++++++++++++++++++C+++++++++++C+++++++C+CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBBBB'''''''''''''''''''''''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC CCCCCCC C        C
+HHHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXX X X
+XXXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCC C C
 """""""""""""""---------------------------"""""""""""""""""""""""""""""""""""+"""""+""+"""+"""++++++"+++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCC...........................+++++++++++++++++++++++++++++++++++C+++++C++C+++C+++CCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBBB'''''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CC CCC CCC      C
+HHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """""""-""""---"""--"-"-----------------"""-"""""""""""""""""""""""""""""""""+"""""""""""""""""+++++"+++++++++++++++++++++++++++++++
+CCCCCCC.CCCC...CCC..C.C.................+++.+++++++++++++++++++++++++++++++++C+++++++++++++++++CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBB'BBBB'''BBB''B'B'''''''''''''''''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCC     C
+HHHHHHHXHHHHXXXHHHXXHXHXXXXXXXXXXXXXXXXX   X
+XXXXXXXCXXXXCCCXXXCCXCXCCCCCCCCCCCCCCCCC   C
 #""-"""""""""-"--"-"-"---"------"-------"-"""--"""""-""""-""""""""""""""""""""""""""+"""""""""++++"+++++++++"++++++""+++++++++++++++
+XCC.CCCCCCCCC.C..C.+.+...C......+.......+.+++..+++++.++++.++++++++++++++++++++++++++C+++++++++CCCC+CCCCCCCCC+CCCCCC++CCCCCCCCCCCCCCC
+$BB'BBBBBBBBB'B''B'C'C'''B''''''C'''''''C'CCC''CCCCC'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC    C         C      CC
+_HHXHHHHHHHHHXHXXHX X XXXHXXXXXX XXXXXXX X   XX     X    X
+&XXCXXXXXXXXXCXCCXC C CCCXCCCCCC CCCCCCC C   CC     C    C
 """""""""""""-"""-------------------------""""""""""""""""""""""""""""""""""""""""+""+"""+"""""+""+++++++++++"++++++++++++++++++++++
+CCCCCCCCCCCCC.CCC.........................++++++++++++++++++++++++++++++++++++++++C++C+++C+++++C++CCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBB'BBB'''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC CCCCC CC           C
+HHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCC
 """"""""-""""""----"------------------"----"""""""""""""""""""""""""""""""""""""""""""+""+"++""+"""++++"+++"++++++++++++++++++++++++
+CCCCCCCC.CCCCCC....C..................+....+++++++++++++++++++++++++++++++++++++++++++C++C+CC++C+++CCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCC
+BBBBBBBB'BBBBBB''''B''''''''''''''''''C''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC C  CC CCC    C   C
+HHHHHHHHXHHHHHHXXXXHXXXXXXXXXXXXXXXXXX XXXX
+XXXXXXXXCXXXXXXCCCCXCCCCCCCCCCCCCCCCCC CCCC
 """""""""""""-""-""""--------------------"""-"--"-"""""""""""""""""""""""""""""""""""""""""""+""""""""""""+"++""+"++""+"+++"++++++"+
+CCCCCCCCCCCCC.CC.CCCC....................+++.+..+.+++++++++++++++++++++++++++++++++++++++++++C++++++++++++C+CC++C+CC++C+CCC+CCCCCC+C
+BBBBBBBBBBBBB'BB'BBBB''''''''''''''''''''CCC'C''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCC C  CC C  CC C   C      C
+HHHHHHHHHHHHHXHHXHHHHXXXXXXXXXXXXXXXXXXXX   X XX X
+XXXXXXXXXXXXXCXXCXXXXCCCCCCCCCCCCCCCCCCCC   C CC C
 """""""-"-"-"""--""--"----+--------"-"---"""-""""""""""""""""""""""""""""""""+""""""""""+"""+"++++++++"+++++++""+"++++++++++++++++++
+CCCCCCC.C.C.CCC..CC..C....C........+.+...+++.++++++++++++++++++++++++++++++++C++++++++++C+++C+CCCCCCCC+CCCCCCC++C+CCCCCCCCCCCCCCCCCC
+BBBBBBB'B'B'BBB''BB''B'''' ''''''''C'C'''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC CCC C        C       CC C
+HHHHHHHXHXHXHHHXXHHXXHXXXX XXXXXXXX X XXX   X
+XXXXXXXCXCXCXXXCCXXCCXCCCC CCCCCCCC C CCC   C
 """#""""""-""""-"-""--"---=-------------"-""-"""""""""""""""""""""""""""""+""+"""+""""""""+"+++"+""++"+"+++"+++"++++++++++++++++++++
+CCCXCCCCCC.CCCC.C.CC..+...C.............+.++.+++++++++++++++++++++++++++++C++C+++C++++++++C+CCC+C++CC+C+CCC+CCC+CCCCCCCCCCCCCCCCCCCC
+BBB$BBBBBB'BBBB'B'BB''C''' '''''''''''''C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC CCCCCCCC C   C CC  C C   C   C
+HHH_HHHHHHXHHHHXHXHHXX XXX XXXXXXXXXXXXX X  X
+XXX&XXXXXXCXXXXCXCXXCC CCC CCCCCCCCCCCCC C  C
 """"""-""""""""""--""-----------"------""""--""""""""""""""""""""""""""""""""""""""""""""""""+"""++++""+++""+++"""+"++++++++++++++++
+CCCCCC.CCCCCCCCCC..CC...........+......++++..++++++++++++++++++++++++++++++++++++++++++++++++C+++CCCC++CCC++CCC+++C+CCCCCCCCCCCCCCCC
+BBBBBB'BBBBBBBBBB''BB'''''''''''C''''''CCCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC    CC   CC   CCC C
+HHHHHHXHHHHHHHHHHXXHHXXXXXXXXXXX XXXXXX    XX
+XXXXXXCXXXXXXXXXXCCXXCCCCCCCCCCC CCCCCC    CC
 #"""""-"""""-"""""----"----------------""-----"""""""""""""""""""""""""""""""""""""""""""""""+"++""++""+++""++++++++++"+++++++++++++
+XCCCCC.CCCCC.CCCCC....C................++.....+++++++++++++++++++++++++++++++++++++++++++++++C+CC++CC++CCC++CCCCCCCCCC+CCCCCCCCCCCCC
+$BBBBB'BBBBB'BBBBB''''B''''''''''''''''CC'''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CC  CC   CC          C
+_HHHHHXHHHHHXHHHHHXXXXHXXXXXXXXXXXXXXXX  XXXXX
+&XXXXXCXXXXXCXXXXXCCCCXCCCCCCCCCCCCCCCC  CCCCC
 "#"""""#""""""""------------------"---"""-""-"-""""""""""""""""""""""""""""+"""""""""""""+""++"+++++++"++"+"++++++++++++++++++++++++
+CXCCCCCXCCCCCCCC..................+...+++.++.+.++++++++++++++++++++++++++++C+++++++++++++C++CC+CCCCCCC+CC+C+CCCCCCCCCCCCCCCCCCCCCCCC
+B$BBBBB$BBBBBBBB''''''''''''''''''C'''CCC'CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC CC  C       C  C C
+H_HHHHH_HHHHHHHHXXXXXXXXXXXXXXXXXX XXX   X  X X
+X&XXXXX&XXXXXXXXCCCCCCCCCCCCCCCCCC CCC   C  C C
 ##"""#"""""""""""-"-"------------------""-"-"""""""""-"""""""""""""""""""""""""""""""""""""""""""+"+"""+"""++++++""++++++++"+++++"++
+XXCCCXCCCCCCCCCCC.C.C..................++.+.+++++++++.+++++++++++++++++++++++++++++++++++++++++++C+C+++C+++CCCCCC++CCCCCCCC+CCCCC+CC
+$$BBB$BBBBBBBBBBB'B'B''''''''''''''''''CC'C'CCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCC CCC      CC        C     C
+__HHH_HHHHHHHHHHHXHXHXXXXXXXXXXXXXXXXXX  X X         X
+&&XXX&XXXXXXXXXXXCXCXCCCCCCCCCCCCCCCCCC  C C         C
 #""""""""""""""--"----------------------"----"-"""""""""""-""""""""""""""""""""""""""""""""""""""+""""""""""+++++"++""++++++++++++++
+XCCCCCCCCCCCCCC..C......................+....+.+++++++++++.++++++++++++++++++++++++++++++++++++++C++++++++++CCCCC+CC++CCCCCCCCCCCCCC
+$BBBBBBBBBBBBBB''B''''''''''''''''''''''C''''C'CCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC     C  CC
+_HHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXX XXXX X           X
+&XXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCC CCCC C           C
 #"""""""""""""""-"-----------------------------"""""""""""""""""""""""""""""""""""""""""""""+"""+"""""""""""""+"++++++"++"++++++++++
+XCCCCCCCCCCCCCCC.C.............................+++++++++++++++++++++++++++++++++++++++++++++C+++C+++++++++++++C+CCCCCC+CC+CCCCCCCCCC
+$BBBBBBBBBBBBBBB'B'''''''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCCCCCCCCCCC C      C  C
+_HHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """""""""""""""""-""------------------"-""-""""""""-""""""""""""""""""""""""+"""""+""""""""""""++"""+++""++++++"""++++++++++++++++++
+CCCCCCCCCCCCCCCCC.CC..................+.++.++++++++.++++++++++++++++++++++++C+++++C++++++++++++CC+++CCC++CCCCCC+++CCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBBBBBBB'BB''''''''''''''''''C'CC'CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCC CCCCC CCCCCCCCCCCC  CCC   CC      CCC
+HHHHHHHHHHHHHHHHHXHHXXXXXXXXXXXXXXXXXX X  X        X
+XXXXXXXXXXXXXXXXXCXXCCCCCCCCCCCCCCCCCC C  C        C
 """""#"""""""""---""----"------------"-----""""""-"""""""""""""""""""""""""""""""""""""""""""""+"+""++"+""+"++""""+++"++++++++++++++
+CCCCCXCCCCCCCCC...CC....C............+.....++++++.+++++++++++++++++++++++++++++++++++++++++++++C+C++CC+C++C+CC++++CCC+CCCCCCCCCCCCCC
+BBBBB$BBBBBBBBB'''BB''''B''''''''''''C'''''CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CC  C CC C  CCCC   C
+HHHHH_HHHHHHHHHXXXHHXXXXHXXXXXXXXXXXX XXXXX      X
+XXXXX&XXXXXXXXXCCCXXCCCCXCCCCCCCCCCCC CCCCC      C
 ""#""""""""""""-"------------------------"-""""---"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""""+++"+++++""++++++"
+CCXCCCCCCCCCCCC.C........................+.++++...+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++++CCC+CCCCC++CCCCCC+
+BB$BBBBBBBBBBBB'B''''''''''''''''''''''''C'CCCC'''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC   C     CC      C
+HH_HHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXX X    XXX X
+XX&XXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCC C    CCC C
 """"#""""""""""""---"---------------------""""-"--"-""-"-"""""""""""""""""""""""""""""""""""""""""""""""""""+""""""""+++++++"+++++++
+CCCCXCCCCCCCCCCCC...C.....................++++.+..+.++.+.+++++++++++++++++++++++++++++++++++++++++++++++++++C++++++++CCCCCCC+CCCCCCC
+BBBB$BBBBBBBBBBBB'''B'''''''''''''''''''''CCCC'C''C'CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC       C
+HHHH_HHHHHHHHHHHHXXXHXXXXXXXXXXXXXXXXXXXXX    X XX X  X X
+XXXX&XXXXXXXXXXXXCCCXCCCCCCCCCCCCCCCCCCCCC    C CC C  C C
 #""##""#""""""""""-""-------------------"------------"""-""""""""""""""""""""""""""""""""""""""""""""++"""++++"+""+++++"""""++"+++++
+XCCXXCCXCCCCCCCCCC.CC...................+............+++.++++++++++++++++++++++++++++++++++++++++++++CC+++CCCC+C++CCCCC+++++CC+CCCCC
+$BB$$BB$BBBBBBBBBB'BB'''''''''''''''''''C''''''''''''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCC    C CC     CCCCC  C
+_HH__HH_HHHHHHHHHHXHHXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX   X
+&XX&&XX&XXXXXXXXXXCXXCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCC   C
 ##"#""""""""""-"""-"--------------------"---""---"--"-""""""""""""""""""""""""""""""""""""""""""+"""""""""""+"+""+"""+"""+"""++++"++
+XXCXCCCCCCCCCC.CCC.C....................+...++...+..+.++++++++++++++++++++++++++++++++++++++++++C+++++++++++C+C++C+++C+++C+++CCCC+CC
+$$B$BBBBBBBBBB'BBB'B''''''''''''''''''''C'''CC'''C''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC C CC CCC CCC CCC    C
+__H_HHHHHHHHHHXHHHXHXXXXXXXXXXXXXXXXXXXX XXX  XXX XX X
+&&X&XXXXXXXXXXCXXXCXCCCCCCCCCCCCCCCCCCCC CCC  CCC CC C
 "#"""""""""""""""-"-""--------------------"-""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""""+""+"""++++"++
+CXCCCCCCCCCCCCCCC.C.CC....................+.++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++++C++C+++CCCC+CC
+B$BBBBBBBBBBBBBBB'B'BB''''''''''''''''''''C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC CC CCC    C
+H_HHHHHHHHHHHHHHHXHXHHXXXXXXXXXXXXXXXXXXXX X  X
+X&XXXXXXXXXXXXXXXCXCXXCCCCCCCCCCCCCCCCCCCC C  C
 """""""""""""""""-"---------------------------"""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"+"+"+"""+++""++
+CCCCCCCCCCCCCCCCC.C...........................+++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+C+C+C+++CCC++CC
+BBBBBBBBBBBBBBBBB'B'''''''''''''''''''''''''''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C C CCC   CC
+HHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX   X
+XXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC   C
 ""#"#-#"""-"""-"""""-"-""--""---------------"-"""-""-""""""""""""""""+"""""""""""""""""""""""""""""""""+"""""""+""+++++"++++++++++++
+CCXCX.XCCC.CCC.CCCCC.C.CC..CC...............+.+++.++.++++++++++++++++C+++++++++++++++++++++++++++++++++C+++++++C++CCCCC+CCCCCCCCCCCC
+BB$B$'$BBB'BBB'BBBBB'B'BB''BB'''''''''''''''C'CCC'CC'CCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC CC     C
+HH_H_X_HHHXHHHXHHHHHXHXHHXXHHXXXXXXXXXXXXXXX X   X  X
+XX&X&C&XXXCXXXCXXXXXCXCXXCCXXCCCCCCCCCCCCCCC C   C  C
 #"""#""""""-"-"-""""-"""---"-----------"---------"-""""-"""""""-""""""""""""""""""""""""""""""""""""""""""+""""""""+"""""++"++++++++
+XCCCXCCCCCC.C.C.CCCC.CCC...C...........+.........+.++++.+++++++.++++++++++++++++++++++++++++++++++++++++++C++++++++C+++++CC+CCCCCCCC
+$BBB$BBBBBB'B'B'BBBB'BBB'''B'''''''''''C'''''''''C'CCCC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC CCCCC  C
+_HHH_HHHHHHXHXHXHHHHXHHHXXXHXXXXXXXXXXX XXXXXXXXX X    X       X
+&XXX&XXXXXXCXCXCXXXXCXXXCCCXCCCCCCCCCCC CCCCCCCCC C    C       C
 """#""""""-""""""--"""-"------------------------""--"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""+++"++++
+CCCXCCCCCC.CCCCCC..CCC.C........................++..+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++CCC+CCCC
+BBB$BBBBBB'BBBBBB''BBB'B''''''''''''''''''''''''CC''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC   C
+HHH_HHHHHHXHHHHHHXXHHHXHXXXXXXXXXXXXXXXXXXXXXXXX  XX X
+XXX&XXXXXXCXXXXXXCCXXXCXCCCCCCCCCCCCCCCCCCCCCCCC  CC C
 #"#""-""""""""""""-""""-------------------------"----"""""""""""-""""""""""""""""""""""""""""""""""""""""""""""+"""""""""""""+++++++
+XCXCC.CCCCCCCCCCCC.CCCC.........................+....+++++++++++.++++++++++++++++++++++++++++++++++++++++++++++C+++++++++++++CCCCCCC
+$B$BB'BBBBBBBBBBBB'BBBB'''''''''''''''''''''''''C''''CCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC
+_H_HHXHHHHHHHHHHHHXHHHHXXXXXXXXXXXXXXXXXXXXXXXXX XXXX           X
+&X&XXCXXXXXXXXXXXXCXXXXCCCCCCCCCCCCCCCCCCCCCCCCC CCCC           C
 """""""""""-"-"""-""""-------------------"----"--""+""""""""-"-"""""""""""""""""""""""""""""""""""""""+"""+""""++""+"""""++"++++++++
+CCCCCCCCCCC.C.CCC.CCCC...................+....+..++C++++++++.+.+++++++++++++++++++++++++++++++++++++++C+++C++++CC++C+++++CC+CCCCCCCC
+BBBBBBBBBBB'B'BBB'BBBB'''''''''''''''''''C''''C''CC CCCCCCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCC  CC CCCCC  C
+HHHHHHHHHHHXHXHHHXHHHHXXXXXXXXXXXXXXXXXXX XXXX XX           X X
+XXXXXXXXXXXCXCXXXCXXXXCCCCCCCCCCCCCCCCCCC CCCC CC           C C
 #"#"""""""""""""""""-"-------------------------"-"""""-"-""""-""""""+""""""""""""""""""""""""""""""""""+""""""""""""""""++""""+++"++
+XCXCCCCCCCCCCCCCCCCC.C.........................+.+++++.+.++++.++++++C++++++++++++++++++++++++++++++++++C++++++++++++++++CC++++CCC+CC
+$B$BBBBBBBBBBBBBBBBB'B'''''''''''''''''''''''''C'CCCCC'C'CCCC'CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCC  CCCC   C
+_H_HHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXX X     X X    X
+&X&XXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCC C     C C    C
 """#"""""""""""--"""---------------------------"--""--""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"++""+++"""
+CCCXCCCCCCCCCCC..CCC...........................+..++..++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+CC++CCC+++
+BBB$BBBBBBBBBBB''BBB'''''''''''''''''''''''''''C''CC''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CC   CCC
+HHH_HHHHHHHHHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX XX  XX  X
+XXX&XXXXXXXXXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC CC  CC  C
 """"""-"""""""""-""""--"--------------------------""-"""""""""""""""""""""""""""""""""""""""""""""""""+""""""""""""""+""+"++"+"++"+"
+CCCCCC.CCCCCCCCC.CCCC..C..........................++.+++++++++++++++++++++++++++++++++++++++++++++++++C++++++++++++++C++C+CC+C+CC+C+
+BBBBBB'BBBBBBBBB'BBBB''B''''''''''''''''''''''''''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC CC C  C C  C C
+HHHHHHXHHHHHHHHHXHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX  X
+XXXXXXCXXXXXXXXXCXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC  C
 """""-"""""""""""--"--"--"----------------------""-"-"""""""""""""""""""""""""""""""""""""""""""""""""+"""""""""""""""+""""""++"++""
+CCCCC.CCCCCCCCCCC..C..C..C......................++.+.+++++++++++++++++++++++++++++++++++++++++++++++++C+++++++++++++++C++++++CC+CC++
+BBBBB'BBBBBBBBBBB''B''B''B''''''''''''''''''''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC CCCCCC  C  CC
+HHHHHXHHHHHHHHHHHXXHXXHXXHXXXXXXXXXXXXXXXXXXXXXX  X X
+XXXXXCXXXXXXXXXXXCCXCCXCCXCCCCCCCCCCCCCCCCCCCCCC  C C
 #"#""""""""""""""""""--""-"-----------------"----""-"-""""""""""""""""""""""""""""""""""""""""""""""""""""+""""""""+++""+"++++++"+""
+XCXCCCCCCCCCCCCCCCCCC..CC.+.................+....++.+.++++++++++++++++++++++++++++++++++++++++++++++++++++C++++++++CCC++C+CCCCCC+C++
+$B$BBBBBBBBBBBBBBBBBB''BB'C'''''''''''''''''C''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC   CC C      C CC
+_H_HHHHHHHHHHHHHHHHHHXXHHX XXXXXXXXXXXXXXXXX XXXX  X X
+&X&XXXXXXXXXXXXXXXXXXCCXXC CCCCCCCCCCCCCCCCC CCCC  C C
 #""""""""-"""""""---"---"-------------------"---"""-""""""""""""""""""""""""""""""""""""""""""""""""""""""+""""""+"+""""+"""++"++"""
+XCCCCCCCC.CCCCCCC...C...C...................+...+++.++++++++++++++++++++++++++++++++++++++++++++++++++++++C++++++C+C++++C+++CC+CC+++
+$BBBBBBBB'BBBBBBB'''B'''B'''''''''''''''''''C'''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC C CCCC CCC  C  CCC
+_HHHHHHHHXHHHHHHHXXXHXXXHXXXXXXXXXXXXXXXXXXX XXX   X
+&XXXXXXXXCXXXXXXXCCCXCCCXCCCCCCCCCCCCCCCCCCC CCC   C
 """""""#""""""""""""---"""---------------------""-"-"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""+""++""
+CCCCCCCXCCCCCCCCCCCC...CCC.....................++.+.+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++C++CC++
+BBBBBBB$BBBBBBBBBBBB'''BBB'''''''''''''''''''''CC'C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC CC  CC
+HHHHHHH_HHHHHHHHHHHHXXXHHHXXXXXXXXXXXXXXXXXXXXX  X X X
+XXXXXXX&XXXXXXXXXXXXCCCXXXCCCCCCCCCCCCCCCCCCCCC  C C C
 """""#""""-"-"""---"""--"-"""---------------"--"""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""+""""""++"+"+"""
+CCCCCXCCCC.C.CCC...CCC..C.CCC...............+..+++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++C++++++CC+C+C+++
+BBBBB$BBBB'B'BBB'''BBB''B'BBB'''''''''''''''C''CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC CCCCCC  C C CCC
+HHHHH_HHHHXHXHHHXXXHHHXXHXHHHXXXXXXXXXXXXXXX XX     X
+XXXXX&XXXXCXCXXXCCCXXXCCXCXXXCCCCCCCCCCCCCCC CC     C
 #"""#""""""""""""""""--"""-----------------------"--"--"""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""++
+XCCCXCCCCCCCCCCCCCCCC..CCC.......................+..+..+++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++CC
+$BBB$BBBBBBBBBBBBBBBB''BBB'''''''''''''''''''''''C''C''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC
+_HHH_HHHHHHHHHHHHHHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXX XX XX   X
+&XXX&XXXXXXXXXXXXXXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCC CC CC   C
 """""""""""""""""-"""-""""----------------------"""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"++"""""
+CCCCCCCCCCCCCCCCC.CCC.CCCC......................+++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+CC+++++
+BBBBBBBBBBBBBBBBB'BBB'BBBB''''''''''''''''''''''CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CCCCC
+HHHHHHHHHHHHHHHHHXHHHXHHHHXXXXXXXXXXXXXXXXXXXXXX     X
+XXXXXXXXXXXXXXXXXCXXXCXXXXCCCCCCCCCCCCCCCCCCCCCC     C
 """""""""""""""""""""-"-"------------------"---""""-"-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""+"++++"""""
+CCCCCCCCCCCCCCCCCCCCC.C.C..................+...++++.+.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++C+CCCC+++++
+BBBBBBBBBBBBBBBBBBBBB'B'B''''''''''''''''''C'''CCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC C    CCCCC
+HHHHHHHHHHHHHHHHHHHHHXHXHXXXXXXXXXXXXXXXXXX XXX    X X
+XXXXXXXXXXXXXXXXXXXXXCXCXCCCCCCCCCCCCCCCCCC CCC    C C
 #"""""#"""""""-"--""""---"--"------------------""---""""""--""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++"""""++""""+
+XCCCCCXCCCCCCC.C..CCCC...C..C..................++...++++++..++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CC+++++CC++++C
+$BBBBB$BBBBBBB'B''BBBB'''B''B''''''''''''''''''CC'''CCCCCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCC  CCCC
+_HHHHH_HHHHHHHXHXXHHHHXXXHXXHXXXXXXXXXXXXXXXXXX  XXX      XX
+&XXXXX&XXXXXXXCXCCXXXXCCCXCCXCCCCCCCCCCCCCCCCCC  CCC      CC
 #""##"""#"#"""""""-""""-------"---------------"--""---""-""-"""""""""""""""""-"""""""""""""""""""""""""""+""""""""""""""""""""""+"++
+XCCXXCCCXCXCCCCCCC.CCCC.......C...............+..++...++.++.+++++++++++++++++.+++++++++++++++++++++++++++C++++++++++++++++++++++C+CC
+$BB$$BBB$B$BBBBBBB'BBBB'''''''B'''''''''''''''C''CC'''CC'CC'CCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCC C
+_HH__HHH_H_HHHHHHHXHHHHXXXXXXXHXXXXXXXXXXXXXXX XX  XXX  X  X                 X
+&XX&&XXX&X&XXXXXXXCXXXXCCCCCCCXCCCCCCCCCCCCCCC CC  CCC  C  C                 C
 """"##""""""""+"""""""--"------"------------------""-"""---""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""+"""++++"++
+CCCCXXCCCCCCCCCCCCCCCC..C......C..................++.+++...++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++C+++CCCC+CC
+BBBB$$BBBBBBBB BBBBBBB''B''''''B''''''''''''''''''CC'CCC'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CCC    C
+HHHH__HHHHHHHH HHHHHHHXXHXXXXXXHXXXXXXXXXXXXXXXXXX  X   XXX
+XXXX&&XXXXXXXX XXXXXXXCCXCCCCCCXCCCCCCCCCCCCCCCCCC  C   CCC
 """""""""""""""-""""""""-"-""----------------"----------""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""++++""+
+CCCCCCCCCCCCCC+.CCCCCCCC.C.CC................+..........++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++CCCC++C
+BBBBBBBBBBBBBBC'BBBBBBBB'B'BB''''''''''''''''C''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC    CC
+HHHHHHHHHHHHHH XHHHHHHHHXHXHHXXXXXXXXXXXXXXXX XXXXXXXXXX
+XXXXXXXXXXXXXX CXXXXXXXXCXCXXCCCCCCCCCCCCCCCC CCCCCCCCCC
 "#"#"""""""""""""""""-"--"--""-----------------"------"-""""""""""-""""""""""""""""""""""""""""""""""""""""""""""""""""++""++++++++"
+CXCXCCCCCCCCCCCCCCCCC.C..C..CC.................+......+.++++++++++.++++++++++++++++++++++++++++++++++++++++++++++++++++CC++CCCCCCCC+
+B$B$BBBBBBBBBBBBBBBBB'B''B''BB'''''''''''''''''C''''''C'CCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC        C
+H_H_HHHHHHHHHHHHHHHHHXHXXHXXHHXXXXXXXXXXXXXXXXX XXXXXX X          X
+X&X&XXXXXXXXXXXXXXXXXCXCCXCCXXCCCCCCCCCCCCCCCCC CCCCCC C          C
 "##"#"""#"""""""""""-""""-----------------------"--"--"--"-""""""""""""""""""""""""""""""""""""""""""""""""+""""""""+++++++++++++"+"
+CXXCXCCCXCCCCCCCCCCC.CCCC.......................+..+..+..+.++++++++++++++++++++++++++++++++++++++++++++++++C++++++++CCCCCCCCCCCCC+C+
+B$$B$BBB$BBBBBBBBBBB'BBBB'''''''''''''''''''''''C''C''C''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC             C C
+H__H_HHH_HHHHHHHHHHHXHHHHXXXXXXXXXXXXXXXXXXXXXXX XX XX XX X
+X&&X&XXX&XXXXXXXXXXXCXXXXCCCCCCCCCCCCCCCCCCCCCCC CC CC CC C
 """"""""#""""""""""""""-"-"---------------------"---"""--""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""+"+"++++++"""++
+CCCCCCCCXCCCCCCCCCCCCCC.C.C.....................+...+++..++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++C+C+CCCCCC+++CC
+BBBBBBBB$BBBBBBBBBBBBBB'B'B'''''''''''''''''''''C'''CCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC C C      CCC
+HHHHHHHH_HHHHHHHHHHHHHHXHXHXXXXXXXXXXXXXXXXXXXXX XXX   XX
+XXXXXXXX&XXXXXXXXXXXXXXCXCXCCCCCCCCCCCCCCCCCCCCC CCC   CC
 ""#"""#""""""""-""""-""-""---"-----------------""--------""""""""""""""""""""""""""""""""""""""""""""""""""""+"+"""""""++"+""+"""""+
+CCXCCCXCCCCCCCC.CCCC.CC.CC...C.................++........++++++++++++++++++++++++++++++++++++++++++++++++++++C+C+++++++CC+C++C+++++C
+BB$BBB$BBBBBBBB'BBBB'BB'BB'''B'''''''''''''''''CC''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCCCC  C CC CCCCC
+HH_HHH_HHHHHHHHXHHHHXHHXHHXXXHXXXXXXXXXXXXXXXXX  XXXXXXXX
+XX&XXX&XXXXXXXXCXXXXCXXCXXCCCXCCCCCCCCCCCCCCCCC  CCCCCCCC
 #""-#""""""-"""""""""---"-"---"-------------------"----""""""""""""-""""""""""""""""""""""""""""""""""""+"""""""""""+"++"""""+"+"+++
+XCC.XCCCCCC.CCCCCCCCC...C.C...C...................+....++++++++++++.++++++++++++++++++++++++++++++++++++C+++++++++++C+CC+++++C+C+CCC
+$BB'$BBBBBB'BBBBBBBBB'''B'B'''B'''''''''''''''''''C''''CCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC C  CCCCC C C
+_HHX_HHHHHHXHHHHHHHHHXXXHXHXXXHXXXXXXXXXXXXXXXXXXX XXXX            X
+&XXC&XXXXXXCXXXXXXXXXCCCXCXCCCXCCCCCCCCCCCCCCCCCCC CCCC            C
 """""""""""""""""""""""""""---"---------------"-"-""---"-""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++
+CCCCCCCCCCCCCCCCCCCCCCCCCCC...C...............+.+.++...+.++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CC
+BBBBBBBBBBBBBBBBBBBBBBBBBBB'''B'''''''''''''''C'C'CC'''C'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHHHHHHHHHXXXHXXXXXXXXXXXXXXX X X  XXX X    X
+XXXXXXXXXXXXXXXXXXXXXXXXXXXCCCXCCCCCCCCCCCCCCC C C  CCC C    C
 """""""#""""""""""""""""-"--"-------------------"------"-"--"""""""""""""""""""""""""""""""""""""""""""""""""+""""""""""""""""""""++
+CCCCCCCXCCCCCCCCCCCCCCCC.C..C...................+......+.+..+++++++++++++++++++++++++++++++++++++++++++++++++C++++++++++++++++++++CC
+BBBBBBB$BBBBBBBBBBBBBBBB'B''B'''''''''''''''''''C''''''C'C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCC
+HHHHHHH_HHHHHHHHHHHHHHHHXHXXHXXXXXXXXXXXXXXXXXXX XXXXXX X XX
+XXXXXXX&XXXXXXXXXXXXXXXXCXCCXCCCCCCCCCCCCCCCCCCC CCCCCC C CC
 ##"#"""""#""""""""""-"-"""------"------------------"-----""-"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""+
+XXCXCCCCCXCCCCCCCCCC.C.CCC......C..................+.....++.+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++C
+$$B$BBBBB$BBBBBBBBBB'B'BBB''''''B''''''''''''''''''C'''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC
+__H_HHHHH_HHHHHHHHHHXHXHHHXXXXXXHXXXXXXXXXXXXXXXXXX XXXXX  X X
+&&X&XXXXX&XXXXXXXXXXCXCXXXCCCCCCXCCCCCCCCCCCCCCCCCC CCCCC  C C
 """#"""""""""""""""""-"--"-----------------------"-----"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++++"+"""+
+CCCXCCCCCCCCCCCCCCCCC.C..C.......................+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CCCC+C+++C
+BBB$BBBBBBBBBBBBBBBBB'B''B'''''''''''''''''''''''C'''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC    C CCC
+HHH_HHHHHHHHHHHHHHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXX XXXXX
+XXX&XXXXXXXXXXXXXXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCC CCCCC
 """"#""""""""""""""""""""---"-----------------------------""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++"++""""+
+CCCCXCCCCCCCCCCCCCCCCCCCC...C.............................++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CC+CC++++C
+BBBB$BBBBBBBBBBBBBBBBBBBB'''B'''''''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C  CCCC
+HHHH_HHHHHHHHHHHHHHHHHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXX&XXXXXXXXXXXXXXXXXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""""#""""""""""""""""--"--------------------------""-"-""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++"+"++""=
+XCCCCXCCCCCCCCCCCCCCCC..C..........................++.+.++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CC+C+CC++C
+$BBBB$BBBBBBBBBBBBBBBB''B''''''''''''''''''''''''''CC'C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C C  CC
+_HHHH_HHHHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX  X X  X
+&XXXX&XXXXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC  C C  C
 """""#""""""""""""""""-"-""-"-"----------------"-"-""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"++"+=
+CCCCCXCCCCCCCCCCCCCCCC.C.CC.C.C................+.+.++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+CC+CC
+BBBBB$BBBBBBBBBBBBBBBB'B'BB'B'B''''''''''''''''C'C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  C
+HHHHH_HHHHHHHHHHHHHHHHXHXHHXHXHXXXXXXXXXXXXXXXX X X  X
+XXXXX&XXXXXXXXXXXXXXXXCXCXXCXCXCCCCCCCCCCCCCCCC C C  C
 "##"""#""""""#"""""""""-----"--------------------"--------"-"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""+++
+CXXCCCXCCCCCCXCCCCCCCCC.....C....................+........+.+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++CCC
+B$$BBB$BBBBBB$BBBBBBBBB'''''B''''''''''''''''''''C''''''''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC
+H__HHH_HHHHHH_HHHHHHHHHXXXXXHXXXXXXXXXXXXXXXXXXXX XXXXXXXX X X
+X&&XXX&XXXXXX&XXXXXXXXXCCCCCXCCCCCCCCCCCCCCCCCCCC CCCCCCCC C C
 """###""#""""""""""""""""--""----------"-------------------"-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+
+CCCXXXCCXCCCCCCCCCCCCCCCC..CC..........+...................+.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C
+BBB$$$BB$BBBBBBBBBBBBBBBB''BB''''''''''C'''''''''''''''''''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHH___HH_HHHHHHHHHHHHHHHHXXHHXXXXXXXXXX XXXXXXXXXXXXXXXXXXX X
+XXX&&&XX&XXXXXXXXXXXXXXXXCCXXCCCCCCCCCC CCCCCCCCCCCCCCCCCCC C
 "###"""""""""""""""""-"""----------------------"---""--""""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CXXXCCCCCCCCCCCCCCCCC.CCC......................+...++..++++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+B$$$BBBBBBBBBBBBBBBBB'BBB''''''''''''''''''''''C'''CC''CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H___HHHHHHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXX XXX  XX      X
+X&&&XXXXXXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCC CCC  CC      C
 #"""""#"""#"""""""""-""-"-"-"----"---------------"-"----""--""""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""+"""+
+XCCCCCXCCCXCCCCCCCCC.CC.C.C.C....C...............+.+....++..++++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++C+++C
+$BBBBB$BBB$BBBBBBBBB'BB'B'B'B''''B'''''''''''''''C'C''''CC''CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC CCC
+_HHHHH_HHH_HHHHHHHHHXHHXHXHXHXXXXHXXXXXXXXXXXXXXX X XXXX  XX      X
+&XXXXX&XXX&XXXXXXXXXCXXCXCXCXCCCCXCCCCCCCCCCCCCCC C CCCC  CC      C
 """""""""""""""""""""-"-----"-"-----------------------""""-"""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"+"+
+CCCCCCCCCCCCCCCCCCCCC.C.....C.C.......................++++.+++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+C+C
+BBBBBBBBBBBBBBBBBBBBB'B'''''B'B'''''''''''''''''''''''CCCC'CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C
+HHHHHHHHHHHHHHHHHHHHHXHXXXXXHXHXXXXXXXXXXXXXXXXXXXXXXX    X     X
+XXXXXXXXXXXXXXXXXXXXXCXCCCCCXCXCCCCCCCCCCCCCCCCCCCCCCC    C     C
 "##"##"""""""""""""-"-"---"--"""--------------------------""--""--"-"-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CXXCXXCCCCCCCCCCCCC.C.C...C..CCC..........................++..++..+.+.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+B$$B$$BBBBBBBBBBBBB'B'B'''B''BBB''''''''''''''''''''''''''CC''CC''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H__H__HHHHHHHHHHHHHXHXHXXXHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXX  XX  XX X X
+X&&X&&XXXXXXXXXXXXXCXCXCCCXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCC  CC  CC C C
 "#"""""#"""""""""""""--"--"-""-"--------------------------""--""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CXCCCCCXCCCCCCCCCCCCC..C..C.CC.C..........................++..++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+B$BBBBB$BBBBBBBBBBBBB''B''B'BB'B''''''''''''''''''''''''''CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H_HHHHH_HHHHHHHHHHHHHXXHXXHXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXX  XX
+X&XXXXX&XXXXXXXXXXXXXCCXCCXCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCC  CC
 """"""#""-"""""""""""""""---"--"--------------"-----------"""-""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""++""""
+CCCCCCXCC.CCCCCCCCCCCCCCC...C..C..............+...........+++.++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++CC++++
+BBBBBB$BB'BBBBBBBBBBBBBBB'''B''B''''''''''''''C'''''''''''CCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC  CCCC
+HHHHHH_HHXHHHHHHHHHHHHHHHXXXHXXHXXXXXXXXXXXXXX XXXXXXXXXXX   X  X
+XXXXXX&XXCXXXXXXXXXXXXXXXCCCXCCXCCCCCCCCCCCCCC CCCCCCCCCCC   C  C
 "##""""""""""-""""-""""----"""-"--------"-------------"---""-""""-"""""""""""""""""""""""""""""""""""""""""""+"""""""""""""""+"+""+"
+CXXCCCCCCCCCC.CCCC.CCCC....CCC.C........+.............+...++.++++.+++++++++++++++++++++++++++++++++++++++++++C+++++++++++++++C+C++C+
+B$$BBBBBBBBBB'BBBB'BBBB''''BBB'B''''''''C'''''''''''''C'''CC'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC C CC C
+H__HHHHHHHHHHXHHHHXHHHHXXXXHHHXHXXXXXXXX XXXXXXXXXXXXX XXX  X    X
+X&&XXXXXXXXXXCXXXXCXXXXCCCCXXXCXCCCCCCCC CCCCCCCCCCCCC CCC  C    C
 "#"#""#"#""#"""""""-"""""--""--------------------------"--""-"--""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CXCXCCXCXCCXCCCCCCC.CCCCC..CC..........................+..++.+..++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+B$B$BB$B$BB$BBBBBBB'BBBBB''BB''''''''''''''''''''''''''C''CC'C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H_H_HH_H_HH_HHHHHHHXHHHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXXX XX  X XX
+X&X&XX&X&XX&XXXXXXXCXXXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCCC CC  C CC
 """""#"""""""""""""""""-"---"--"-----------------------"--"""-"""""""-"""""""""""""""""""""""""""""""""""""""""""""""+""""""""""""""
+CCCCCXCCCCCCCCCCCCCCCCC.C...C..C.......................+..+++.+++++++.+++++++++++++++++++++++++++++++++++++++++++++++C++++++++++++++
+BBBBB$BBBBBBBBBBBBBBBBB'B'''B''B'''''''''''''''''''''''C''CCC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC
+HHHHH_HHHHHHHHHHHHHHHHHXHXXXHXXHXXXXXXXXXXXXXXXXXXXXXXX XX   X       X
+XXXXX&XXXXXXXXXXXXXXXXXCXCCCXCCXCCCCCCCCCCCCCCCCCCCCCCC CC   C       C
 #"#"""#"#""""""""""""""-""--""-"-----------------------"---""-""-""""""""""""""""""""""""""""""""""""""""""""""""""""+""""""""""""""
+XCXCCCXCXCCCCCCCCCCCCCC.CC..CC.C.......................+...++.++.++++++++++++++++++++++++++++++++++++++++++++++++++++C++++++++++++++
+$B$BBB$B$BBBBBBBBBBBBBB'BB''BB'B'''''''''''''''''''''''C'''CC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC
+_H_HHH_H_HHHHHHHHHHHHHHXHHXXHHXHXXXXXXXXXXXXXXXXXXXXXXX XXX  X  X
+&X&XXX&X&XXXXXXXXXXXXXXCXXCCXXCXCCCCCCCCCCCCCCCCCCCCCCC CCC  C  C
 #""""#""-#"""""""""---"""""-"---------------"-----------"-"""""""-""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++
+XCCCCXCC.XCCCCCCCCC...CCCCC.C...............+...........+.+++++++.++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CC
+$BBBB$BB'$BBBBBBBBB'''BBBBB'B'''''''''''''''C'''''''''''C'CCCCCCC'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_HHHH_HHX_HHHHHHHHHXXXHHHHHXHXXXXXXXXXXXXXXX XXXXXXXXXXX X       X    X
+&XXXX&XXC&XXXXXXXXXCCCXXXXXCXCCCCCCCCCCCCCCC CCCCCCCCCCC C       C    C
 ""#"#"#"##"""#"""""-"""--"-""-""--------------------------------"---"-"-"""""""""""""""""""""""""""""""""""""""""""+""""""""""""""""
+CCXCXCXCXXCCCXCCCCC.CCC..C.CC.CC................................+...+.+.+++++++++++++++++++++++++++++++++++++++++++C++++++++++++++++
+BB$B$B$B$$BBB$BBBBB'BBB''B'BB'BB''''''''''''''''''''''''''''''''C'''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCC
+HH_H_H_H__HHH_HHHHHXHHHXXHXHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX X X
+XX&X&X&X&&XXX&XXXXXCXXXCCXCXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C C
 ""#""##"""#"""#"""""""""""--""----------------------"------"--"""-"-"""""""""""""""""""""""""""""""""""""""""""""""+"""""""""""""""+
+CCXCCXXCCCXCCCXCCCCCCCCCCC..CC......................+......+..+++.+.+++++++++++++++++++++++++++++++++++++++++++++++C+++++++++++++++C
+BB$BB$$BBB$BBB$BBBBBBBBBBB''BB''''''''''''''''''''''C''''''C''CCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC
+HH_HH__HHH_HHH_HHHHHHHHHHHXXHHXXXXXXXXXXXXXXXXXXXXXX XXXXXX XX   X X
+XX&XX&&XXX&XXX&XXXXXXXXXXXCCXXCCCCCCCCCCCCCCCCCCCCCC CCCCCC CC   C C
 #"-"#"#""""""""""""""--""""-""----------------------------"-"-""""""""""-""""""""""""""""""""""""""""""""""""""""""+""""""""+""++""+
+XC.CXCXCCCCCCCCCCCCCC..CCCC.CC............................+.+.++++++++++.++++++++++++++++++++++++++++++++++++++++++C++++++++C++CC++C
+$B'B$B$BBBBBBBBBBBBBB''BBBB'BB''''''''''''''''''''''''''''C'C'CCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC CC  CC
+_HXH_H_HHHHHHHHHHHHHHXXHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X X          X
+&XCX&X&XXXXXXXXXXXXXXCCXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C          C
 #"""""""""""""""""""-""""--"-----------------"-------------------"-""""-""-"-"-"""""""""""""""""""""""""""""""""""""""""""++""""""""
+XCCCCCCCCCCCCCCCCCCC.CC+C..C.................+...................+.++++.++.+.+.+++++++++++++++++++++++++++++++++++++++++++CC++++++++
+$BBBBBBBBBBBBBBBBBBB'BBCB''B'''''''''''''''''C'''''''''''''''''''C'CCCC'CC'C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCCCC
+_HHHHHHHHHHHHHHHHHHHXHH HXXHXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX X    X  X X X
+&XXXXXXXXXXXXXXXXXXXCXX XCCXCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCC C    C  C C C
 #"##""""##"#""""""-""""-"""""""----------------------------"--"--"""-""""--""""""+""""""""""""""""""""""""""""""""""""""""""""""""""
+XCXXCCCCXXCXCCCCCC.CCCC.CCCCCCC............................+..+..+++.++++..++++++C++++++++++++++++++++++++++++++++++++++++++++++++++
+$B$$BBBB$$B$BBBBBB'BBBB'BBBBBBB''''''''''''''''''''''''''''C''C''CCC'CCCC''CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_H__HHHH__H_HHHHHHXHHHHXHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX XX   X    XX
+&X&&XXXX&&X&XXXXXXCXXXXCXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CC   C    CC
 #"""""""""""""""""""""""--"-"--"---------------------------""""---"""""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+XCCCCCCCCCCCCCCCCCCCCCCC..C.C..C...........................++++...+++++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+$BBBBBBBBBBBBBBBBBBBBBBB''B'B''B'''''''''''''''''''''''''''CCCC'''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_HHHHHHHHHHHHHHHHHHHHHHHXXHXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXX    XXX       X
+&XXXXXXXXXXXXXXXXXXXXXXXCCXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC    CCC       C
 """"#""""""""""""""""""---"--""-"-"------------------------""-"-"-"""--"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCXCCCCCCCCCCCCCCCCCC...C..CC.C.C........................++.+.+.+++..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BBBB$BBBBBBBBBBBBBBBBBB'''B''BB'B'B''''''''''''''''''''''''CC'C'C'CCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHH_HHHHHHHHHHHHHHHHHHXXXHXXHHXHXHXXXXXXXXXXXXXXXXXXXXXXXX  X X X   XX
+XXXX&XXXXXXXXXXXXXXXXXXCCCXCCXXCXCXCCCCCCCCCCCCCCCCCCCCCCCC  C C C   CC
 """"""""#""""""""""-"-""----""-""---"----------------------"-""--"""-"-"""""-""-""""""""""""""""""""""""""""""""""""""""""+"""""""""
+CCCCCCCCXCCCCCCCCCC.C.CC....CC.CC...C......................+.++..+++.+.+++++.++.++++++++++++++++++++++++++++++++++++++++++C+++++++++
+BBBBBBBB$BBBBBBBBBB'B'BB''''BB'BB'''B''''''''''''''''''''''C'CC''CCC'C'CCCCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC
+HHHHHHHH_HHHHHHHHHHXHXHHXXXXHHXHHXXXHXXXXXXXXXXXXXXXXXXXXXX X  XX   X X     X  X
+XXXXXXXX&XXXXXXXXXXCXCXXCCCCXXCXXCCCXCCCCCCCCCCCCCCCCCCCCCC C  CC   C C     C  C
 #"#""""#"""""""""""""""--""-"""--"-"----------------------------""--"--"-""--"""""""""""""""""""""""""""""""""""""""""""""""""""""""
+XCXCCCCXCCCCCCCCCCCCCCC..CC.CCC..C.C............................++..+..+.++..+++++++++++++++++++++++++++++++++++++++++++++++++++++++
+$B$BBBB$BBBBBBBBBBBBBBB''BB'BBB''B'B''''''''''''''''''''''''''''CC''C''C'CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_H_HHHH_HHHHHHHHHHHHHHHXXHHXHHHXXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XX XX X  XX
+&X&XXXX&XXXXXXXXXXXXXXXCCXXCXXXCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC CC C  CC
 #""""#""""-""""""""""""""---"""-"------------------------------""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""+
+XCCCCXCCCC.CCCCCCCCCCCCCC...CCC.C..............................++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++C
+$BBBB$BBBB'BBBBBBBBBBBBBB'''BBB'B''''''''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC
+_HHHH_HHHHXHHHHHHHHHHHHHHXXXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XXXX&XXXXCXXXXXXXXXXXXXXCCCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ""#""""#"""#""#"""""""""""-""---"-------------------------------"""""""-""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""+=
+CCXCCCCXCCCXCCXCCCCCCCCCCC.CC...C...............................+++++++.++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++CC
+BB$BBBB$BBB$BB$BBBBBBBBBBB'BB'''B'''''''''''''''''''''''''''''''CCCCCCC'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH_HHHH_HHH_HH_HHHHHHHHHHHXHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX       X    X
+XX&XXXX&XXX&XX&XXXXXXXXXXXCXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC       C    C
 #"""""""""""""""-""""""--"-------"--""-------------------------------"-""""""""""""""""-""""""""""""""""""""""""""""""+"""""""+""+==
+XCCCCCCCCCCCCCCC.CCCCCC..C.......C..CC...............................+.++++++++++++++++.++++++++++++++++++++++++++++++C+++++++C++CCC
+$BBBBBBBBBBBBBBB'BBBBBB''B'''''''B''BB'''''''''''''''''''''''''''''''C'CCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC CC
+_HHHHHHHHHHHHHHHXHHHHHHXXHXXXXXXXHXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X                X
+&XXXXXXXXXXXXXXXCXXXXXXCCXCCCCCCCXCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C                C
 #"#"""""""""""""""""""""""--"------------------------"--"-------""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"++M="
+XCXCCCCCCCCCCCCCCCCCCCCCCC..C........................+..+.......++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+CC C+
+$B$BBBBBBBBBBBBBBBBBBBBBBB''B''''''''''''''''''''''''C''C'''''''CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C    C
+_H_HHHHHHHHHHHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXX XX XXXXXXX    X
+&X&XXXXXXXXXXXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCC    C
 "#"#"""""""""""""""""-"""---"--"--------------------------"-"--"-"""-""-"""-""""""""""""""""""""""""""""""""""""""""""""""""""++=++-
+CXCXCCCCCCCCCCCCCCCCC.CCC...C..C..........................+.+..+.+++.++.+++.++++++++++++++++++++++++++++++++++++++++++++++++++CCCCCC
+B$B$BBBBBBBBBBBBBBBBB'BBB'''B''B''''''''''''''''''''''''''C'C''C'CCC'CC'CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H_H_HHHHHHHHHHHHHHHHHXHHHXXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX X XX X   X  X   X
+X&X&XXXXXXXXXXXXXXXXXCXXXCCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC C CC C   C  C   C
 ##"""#""""""""""""""""""-""-""""--"------------------"------""---""------""-"""""""""""""""""""""""""""""""""""""""""""""""""++=+=XI
+XXCCCXCCCCCCCCCCCCCCCCCC.CC.CCCC..C..................+......++...++......++.+++++++++++++++++++++++++++++++++++++++++++++++++CCCCC
+$$BBB$BBBBBBBBBBBBBBBBBB'BB'BBBB''B''''''''''''''''''C''''''CC'''CC''''''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+__HHH_HHHHHHHHHHHHHHHHHHXHHXHHHHXXHXXXXXXXXXXXXXXXXXX XXXXXX  XXX  XXXXXX  X
+&&XXX&XXXXXXXXXXXXXXXXXXCXXCXXXXCCXCCCCCCCCCCCCCCCCCC CCCCCC  CCC  CCCCCC  C
 """""""""##""""""""-""""""--"""""""-"-------------------"---"""""""-""""""+""""""-"""""""""""""""""""""""""""""""""""""""""++M--Z=-+
+CCCCCCCCCXXCCCCCCCC.CCCCCC..CCCCCCC.C...................+...+++++++.++++++C++++++.+++++++++++++++++++++++++++++++++++++++++CC CC
+BBBBBBBBB$$BBBBBBBB'BBBBBB''BBBBBBB'B'''''''''''''''''''C'''CCCCCCC'CCCCCC CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHH__HHHHHHHHXHHHHHHXXHHHHHHHXHXXXXXXXXXXXXXXXXXXX XXX       X             X
+XXXXXXXXX&&XXXXXXXXCXXXXXXCCXXXXXXXCXCCCCCCCCCCCCCCCCCCC CCC       C             C
 ####""#"#"""""-""""""""""-"-"-""---------------------------------""-----"-""-""""""""""""""""""""""""""""""""""""""""""""""+-XXI+-1I
+XXXXCCXCXCCCCC.CCCCCCCCCC.C.C.CC.................................++.....+.++.++++++++++++++++++++++++++++++++++++++++++++++CC
+$$$$BB$B$BBBBB'BBBBBBBBBB'B'B'BB'''''''''''''''''''''''''''''''''CC'''''C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+____HH_H_HHHHHXHHHHHHHHHHXHXHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXXX X  X
+&&&&XX&X&XXXXXCXXXXXXXXXXCXCXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCC C  C
 #"""""#"""""""""""""""""--""""----------------------------------"""-"---"""""""-""""""""""""""""""""""""""""""""""""""""""=MZXI--+A-
+XCCCCCXCCCCCCCCCCCCCCCCC..CCCC..................................+++.+...+++++++.++++++++++++++++++++++++++++++++++++++++++C        C
+$BBBBB$BBBBBBBBBBBBBBBBB''BBBB''''''''''''''''''''''''''''''''''CCC'C'''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_HHHHH_HHHHHHHHHHHHHHHHHXXHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   X XXX       X
+&XXXXX&XXXXXXXXXXXXXXXXXCCXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   C CCC       C
 #""#""""""""""""""""-""--"--"""---"----------------------------"--"---""-""""""""-"-"""""""""""""""""""""""""""""""""""""=-MZA=-=ZM-
+XCCXCCCCCCCCCCCCCCCC.CC..C..CCC...C............................+..+...++.++++++++.+.+++++++++++++++++++++++++++++++++++++CC        C
+$BB$BBBBBBBBBBBBBBBB'BB''B''BBB'''B''''''''''''''''''''''''''''C''C'''CC'CCCCCCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+_HH_HHHHHHHHHHHHHHHHXHHXXHXXHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX XXX  X        X X
+&XX&XXXXXXXXXXXXXXXXCXXCCXCCXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC  C        C C
 "-""#####"#""""#""""""""""--"------------------------------"--"------"--""""""""""""""""""""""""""""""""""""""""""""""""MA--I=1I-=-=
+C.CCXXXXXCXCCCCXCCCCCCCCCC..C..............................+..+......+..++++++++++++++++++++++++++++++++++++++++++++++++  CC    CCC
+B'BB$$$$$B$BBBB$BBBBBBBBBB''B''''''''''''''''''''''''''''''C''C''''''C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HXHH_____H_HHHH_HHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX XXXXXX XX
+XCXX&&&&&X&XXXX&XXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCC CC
 ##""""##"""""""""""-""""""-"-"""""---------"----------------------""---"----"""""""""-"-"""""""""""""""""""""""""""""""=IIZAI=IXM-=-
+XXCCCCXXCCCCCCCCCCC.CCCCCC.C.CCCCC.........+......................++...+....+++++++++.+.+++++++++++++++++++++++++++++++C         C
+$$BBBB$$BBBBBBBBBBB'BBBBBB'B'BBBBB'''''''''C''''''''''''''''''''''CC'''C''''CCCCCCCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+__HHHH__HHHHHHHHHHHXHHHHHHXHXHHHHHXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX  XXX XXXX         X X
+&&XXXX&&XXXXXXXXXXXCXXXXXXCXCXXXXXCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCC  CCC CCCC         C C
 """"""##"#""""""""""""""""-"-"--"------------------------"----------"--"-""-""""-"""""""""""""""""""""""""""""""""""""+Z=AAIIIAZ-A -
+CC+CCCXXCXCCCCCCCCCCCCCCCC.C.C..C........................+..........+..+.++.++++.+++++++++++++++++++++++++++++++++++++C         C
+BBCBBB$$B$BBBBBBBBBBBBBBBB'B'B''B''''''''''''''''''''''''C''''''''''C''C'CC'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH HHH__H_HHHHHHHHHHHHHHHHXHXHXXHXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXX XX X  X    X
+XX XXX&&X&XXXXXXXXXXXXXXXXCXCXCCXCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC CC C  C    C
 ""-""""#""""""""""""""""""--"----------------------------"-"--------""""-"""""""-""""""""""""""""""""""""""""""""""""+MZXI+=IIAZX+ +
+CC.CCCCXCCCCCCCCCCCCCCCCCC..C............................+.+........++++.+++++++.++++++++++++++++++++++++++++++++++++C
+BB'BBBB$BBBBBBBBBBBBBBBBBB''B''''''''''''''''''''''''''''C'C''''''''CCCC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHXHHHH_HHHHHHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X XXXXXXXX    X       X
+XXCXXXX&XXXXXXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCCCCC    C       C
 """"""""""#"""""""""-"""-"--"""----------------------------"-""--"""-"--"""""-"""""""-"""""""""""""""""""""""""""""""=ZX+-=I+=XA=--I
+CCCCCCCCCCXCCCCCCCCC.CCC.C..CCC............................+.++..+++.+..+++++.+++++++.+++++++++++++++++++++++++++++++C
+BBBBBBBBBB$BBBBBBBBB'BBB'B''BBB''''''''''''''''''''''''''''C'CC''CCC'C''CCCCC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHH_HHHHHHHHHXHHHXHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X  XX   X XX     X       X
+XXXXXXXXXX&XXXXXXXXXCXXXCXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CC   C CC     C       C
 """""""""""""""""""""""""-"""""------------------------"---"----------"""---"""""-"--""-"""""-""""""""""""""""""""""=--A1+IXXAZZI1=A
+CCCCCCCCCCCCCCCCCCCCCCCCC.CC+CC........................+...+..........+++...+++++.+..++.+++++.++++++++++++++++++++++CCC
+BBBBBBBBBBBBBBBBBBBBBBBBB'BBCBB''''''''''''''''''''''''C'''C''''''''''CCC'''CCCCC'C''CC'CCCCC'CCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHHHHHHHXHH HHXXXXXXXXXXXXXXXXXXXXXXXX XXX XXXXXXXXXX   XXX     X XX  X     X
+XXXXXXXXXXXXXXXXXXXXXXXXXCXX XXCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCCCCCCCC   CCC     C CC  C     C
 ##"""""""""""""-""""""""--"--------------------------------"---""--"-""-"""-"-"""""""""""""""""""""""""""""""""""""+MM-AII-+-XZA==IA
+XXCCCCCCCCCCCCC.CCCCCCCC..C................................+...++..+.++.+++.+.+++++++++++++++++++++++++++++++++++++C  C   CCC
+$$BBBBBBBBBBBBB'BBBBBBBB''B''''''''''''''''''''''''''''''''C'''CC''C'CC'CCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+__HHHHHHHHHHHHHXHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX  XX X  X   X X
+&&XXXXXXXXXXXXXCXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC  CC C  C   C C
 "#"####"#""""""""""""""-"""-""""--"-----------------------------"--"-"-""--""-"""""""""""-""""""""""+"""""""""""""+MAZZXI="=AAIIIAXI
+CXCXXXXCXCCCCCCCCCCCCCC.CCC.CCCC..C.............................+..+.+.++..++.+++++++++++.++++++++++C+++++++++++++C      C+C
+B$B$$$$B$BBBBBBBBBBBBBB'BBB'BBBB''B'''''''''''''''''''''''''''''C''C'C'CC''CC'CCCCCCCCCCC'CCCCCCCCCC CCCCCCCCCCCCC        C
+H_H____H_HHHHHHHHHHHHHHXHHHXHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX X X  XX  X           X
+X&X&&&&X&XXXXXXXXXXXXXXCXXXCXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC C C  CC  C           C
 ##"#"""""""""""""""""""""---"""--------------------------------------"""---"-""-"""-"""""""""""""""++""""""""""""+-IZZMAM"+AIIXAAAXI
+XXCXCCCCCCCCCCCCCCCCCCCCC...CCC......................................+++...+.++.+++.+++++++++++++++CC++++++++++++CC      +C
+$$B$BBBBBBBBBBBBBBBBBBBBB'''BBB''''''''''''''''''''''''''''''''''''''CCC'''C'CC'CCC'CCCCCCCCCCCCCCC  CCCCCCCCCCCC        C
+__H_HHHHHHHHHHHHHHHHHHHHHXXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   XXX X  X   X
+&&X&XXXXXXXXXXXXXXXXXXXXXCCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CCC C  C   C
 "#""#"""#""-"""""""""-"""-"---"""----------------------"-----------"-"-"""-"-""""--"""-""""""""""""""""""""""""""-IXZ-XX+MAIIZXXZXAI
+CXCCXCCCXCC.CCCCCCCCC.CCC.C...CCC......................+...........+.+.+++.+.++++..+++.++++++++++++++++++++++++++C   C  C
+B$BB$BBB$BB'BBBBBBBBB'BBB'B'''BBB''''''''''''''''''''''C'''''''''''C'C'CCC'C'CCCC''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCC
+H_HH_HHH_HHXHHHHHHHHHXHHHXHXXXHHHXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX X X   X X    XX   X
+X&XX&XXX&XXCXXXXXXXXXCXXXCXCCCXXXCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC C C   C C    CC   C
 ##""""""""""""""""""-""""""""--"""-------------------------------""----"""-""--"-"-"""""""""""""""""""""""""""""-AZZ-XIZZIIIIXXXXAII
+XXCCCCCCCCCCCCCCCCCC.CCCCCCCC..CCC...............................++....+++.++..+.+.+++++++++++++++++++++++++++++C   C
+$$BBBBBBBBBBBBBBBBBB'BBBBBBBB''BBB'''''''''''''''''''''''''''''''CC''''CCC'CC''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+__HHHHHHHHHHHHHHHHHHXHHHHHHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXX   X  XX X X
+&&XXXXXXXXXXXXXXXXXXCXXXXXXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCC   C  CC C C
 #""""#"""""#"""""""""""""""""-""-"-"---------------------------"-""--""-"""""""--"""""""""""-""""""""""""""""""=ZZZX-I+AAAAIXXAAAAXX
+XCCCCXCCCCCXCCCCCCCCCCCCCCCCC.CC.C.C...........................+.++..++.+++++++..+++++++++++.++++++++++++++++++C    C
+$BBBB$BBBBB$BBBBBBBBBBBBBBBBB'BB'B'B'''''''''''''''''''''''''''C'CC''CC'CCCCCCC''CCCCCCCCCCC'CCCCCCCCCCCCCCCCCC
+_HHHH_HHHHH_HHHHHHHHHHHHHHHHHXHHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX X  XX  X       XX           X
+&XXXX&XXXXX&XXXXXXXXXXXXXXXXXCXXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CC  C       CC           C
 "#""""""##""#""""""-""""""""""""-"""---------------------------"""--"---""""-"""""""-"""-""""""""""""""""""""""==ZAZX++IXZAXXIIAXXAX
+CXCCCCCCXXCCXCCCCCC.CCCCCCCCCCCC.CCC...........................+++..+...++++.+++++++.+++.++++++++++++++++++++++CC
+B$BBBBBB$$BB$BBBBBB'BBBBBBBBBBBB'BBB'''''''''''''''''''''''''''CCC''C'''CCCC'CCCCCCC'CCC'CCCCCCCCCCCCCCCCCCCCCC
+H_HHHHHH__HH_HHHHHHXHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX   XX XXX    X       X   X
+X&XXXXXX&&XX&XXXXXXCXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC   CC CCC    C       C   C
 #""""#""""""""""""""-""""-"-""-"--------------------------------"""---""-"""""""""""""""""-""""""""""""""""""""+Z=AA=++Z-M-XXIIAXAAA
+XCCCCXCCCCCCCCCCCCCC.CCCC.C.CC.C................................+++...++.+++++++++++++++++.++++++++++++++++++++C        C C
+$BBBB$BBBBBBBBBBBBBB'BBBB'B'BB'B''''''''''''''''''''''''''''''''CCC'''CC'CCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCC
+_HHHH_HHHHHHHHHHHHHHXHHHHXHXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   XXX  X                 X
+&XXXX&XXXXXXXXXXXXXXCXXXXCXCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CCC  C                 C
 """#"""""#""""#""""""""""----"""---"-------------------------------"-"-""-"""-""-"""""""""""""""""""""""""""++=-=====+A--M-ZXAAAAAXZ
+CCCXCCCCCXCCCCXCCCCCCCCCC....CCC...C...............................+.+.++.+++.++.+++++++++++++++++++++++++++CCCC       CC C
+BBB$BBBBB$BBBB$BBBBBBBBBB''''BBB'''B'''''''''''''''''''''''''''''''C'C'CC'CCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHH_HHHHH_HHHH_HHHHHHHHHHXXXXHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X X  X   X  X
+XXX&XXXXX&XXXX&XXXXXXXXXXCCCCXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C  C   C  C
 ###"""""""##"##""""""-""-"---"-"-------""-------------------------""-"-"--"--"-""-""""""""""""""""""""""""""=MMX-+1+==XZZ--ZAIXIIAAX
+XXXCCCCCCCXXCXXCCCCCC.CC.C...C.C.......CC.........................++.+.+..+..+.++.++++++++++++++++++++++++++C            CC
+$$$BBBBBBB$$B$$BBBBBB'BB'B'''B'B'''''''BB'''''''''''''''''''''''''CC'C'C''C''C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCC
+___HHHHHHH__H__HHHHHHXHHXHXXXHXHXXXXXXXHHXXXXXXXXXXXXXXXXXXXXXXXXX  X X XX XX X  X
+&&&XXXXXXX&&X&&XXXXXXCXXCXCCCXCXCCCCCCCXXCCCCCCCCCCCCCCCCCCCCCCCCC  C C CC CC C  C
 #"""""""-#""#""""""-"""""-"--"""-----"---------------------"-"-"---"-""--"""""""-""""""""""""""""""""""""""=MMMX  -+1IXXXZZXIAII=XAA
+XCCCCCCC.XCCXCCCCCC.CCCCC.C..CCC.....C.....................+.+.+...+.++..+++++++.++++++++++++++++++++++++++C
+$BBBBBBB'$BB$BBBBBB'BBBBB'B''BBB'''''B'''''''''''''''''''''C'C'C'''C'CC''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCC
+_HHHHHHHX_HH_HHHHHHXHHHHHXHXXHHHXXXXXHXXXXXXXXXXXXXXXXXXXXX X X XXX X  XX       X
+&XXXXXXXC&XX&XXXXXXCXXXXXCXCCXXXCCCCCXCCCCCCCCCCCCCCCCCCCCC C C CCC C  CC       C
 ##"""#"""""""""""""-"""""--""""-""-----------------------------------""-""-""""""""""""""""""""""++""""""+MM=-Z1 -1-1IIAXIIAIAAXZXXA
+XXCCCXCCCCCCCCCCCCC.CCCCC..CCCC.CC...................................++.++.++++++++++++++++++++++CC++++++C  CC
+$$BBB$BBBBBBBBBBBBB'BBBBB''BBBB'BB'''''''''''''''''''''''''''''''''''CC'CC'CCCCCCCCCCCCCCCCCCCCCC  CCCCCC
+__HHH_HHHHHHHHHHHHHXHHHHHXXHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X  X
+&&XXX&XXXXXXXXXXXXXCXXXXXCCXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C  C
 ##""#""#"""""""""""""""""---""""----------------------------------------"""""-"""-"""""""-"""""""""""""""-Z=MX+ 1+11AAIIA=IAIAXXZZZZ
+XXCCXCCXCCCCCCCCCCCCCCCCC...CCCC........................................+++++.+++.+++++++.+++++++++++++++C C
+$$BB$BB$BBBBBBBBBBBBBBBBB'''BBBB''''''''''''''''''''''''''''''''''''''''CCCCC'CCC'CCCCCCC'CCCCCCCCCCCCCCC
+__HH_HH_HHHHHHHHHHHHHHHHHXXXHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX     X   X       X
+&&XX&XX&XXXXXXXXXXXXXXXXXCCCXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC     C   C       C
 ##"#""""""""""""""-"""""""--""""--------------------------"--------------""---"""-"""""""""""""""""""""-+XZ-X+-1=+=AXAAII+XXA=AZZZXZ
+XXCXCCCCCCCCCCCCCC.CCCCCCC..CCCC..........................+..............++...+++.+++++++++++++++++++++.C  C
+$$B$BBBBBBBBBBBBBB'BBBBBBB''BBBB''''''''''''''''''''''''''C''''''''''''''CC'''CCC'CCCCCCCCCCCCCCCCCCCCC'
+__H_HHHHHHHHHHHHHHXHHHHHHHXXHHHHXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX  XXX   X                     X
+&&X&XXXXXXXXXXXXXXCXXXXXXXCCXXXXCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC  CCC   C                     C
 #"#""""""#""""#"""""""""""-"-""-"""--""-"-----"--------------"--------"--"""""""""""""-""""-""""""""""-+---=M11++IIAAA+==IXI=AXXZXAA
+XCXCCCCCCXCCCCXCCCCCCCCCCC.C.CC.CC+..C+.+.....+..............+........+..+++++++++++++.++++.++++++++++.CCCCC
+$B$BBBBBB$BBBB$BBBBBBBBBBB'B'BB'BBC''BC'C'''''C''''''''''''''C''''''''C''CCCCCCCCCCCCC'CCCC'CCCCCCCCCC'
+_H_HHHHHH_HHHH_HHHHHHHHHHHXHXHHXHH XXH X XXXXX XXXXXXXXXXXXXX XXXXXXXX XX             X    X          X
+&X&XXXXXX&XXXX&XXXXXXXXXXXCXCXXCXX CCX C CCCCC CCCCCCCCCCCCCC CCCCCCCC CC             C    C          C
 "#""""""#"""""""""""""""-"-"--"----"-----------------------------"----------"""""""""""""""""""""""""-"MMM+"Z+====II=++AIAIAIXAAZAAI
+CXCCCCCCXCCCCCCCCCCCCCCC.C.C..C....+.............................+..........+++++++++++++++++++++++++.+   C+
+B$BBBBBB$BBBBBBBBBBBBBBB'B'B''B''''C'''''''''''''''''''''''''''''C''''''''''CCCCCCCCCCCCCCCCCCCCCCCCC'C    C
+H_HHHHHH_HHHHHHHHHHHHHHHXHXHXXHXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXX                         X
+X&XXXXXX&XXXXXXXXXXXXXXXCXCXCCXCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC                         C
 #"#"""""""""""""""""""""""-""""""---------------------------"----""-------"-"-"""""""""""""""""""""---+=-M-=ZAXAAIAI==II=IXXIAAXZZXA
+XCXCCCCCCCCCCCCCCCCCCCCCCC.CCCCCC...........................+....++.......+.+.+++++++++++++++++++++...CCC .C
+$B$BBBBBBBBBBBBBBBBBBBBBBB'BBBBBB'''''''''''''''''''''''''''C''''CC'''''''C'C'CCCCCCCCCCCCCCCCCCCCC'''    '
+_H_HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX  XXXXXXX X X                     XXX    X
+&X&XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  CCCCCCC C C                     CCC    C
 #"""""""""#"""""""""""""""---""""""-"----------------------------"----"----""--"-"""-""""""""""---"--"==-MMZX-XXAAA=I+++AAZZAXX-M-XX
+XCCCCCCCCCXCCCCCCCCCCCCCCC...CCCCCC.C............................+....+....++..+.+++.++++++++++...+..+CCC    C                 C C
+$BBBBBBBBB$BBBBBBBBBBBBBBB'''BBBBBB'B''''''''''''''''''''''''''''C''''C''''CC''C'CCC'CCCCCCCCCC'''C''C
+_HHHHHHHHH_HHHHHHHHHHHHHHHXXXHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX XXXX  XX X   X          XXX XX
+&XXXXXXXXX&XXXXXXXXXXXXXXXCCCXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCC  CC C   C          CCC CC
 #"""""""""#"""""""#-"""--"---"""--------------------------"----"---""""""""-""""""""""-"""""""""-"--"+-XZZXZZXXXXXII++=IAX--XZZM+ZAX
+XCCCCCCCCCXCCCCCCCX.CCC..C...CCC..........................+....+...++++++++.++++++++++.+++++++++.+..+CC                   CC    C
+$BBBBBBBBB$BBBBBBB$'BBB''B'''BBB''''''''''''''''''''''''''C''''C'''CCCCCCCC'CCCCCCCCCC'CCCCCCCCC'C''C
+_HHHHHHHHH_HHHHHHH_XHHHXXHXXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX XXX        X          X         X XX
+&XXXXXXXXX&XXXXXXX&CXXXCCXCCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCC        C          C         C CC
 #"#-"###""""""""""""""""""""""""""---"----------------------------------------"-""---"--""-"-"-"""--MMXAX-ZXZZZXXX+I1+AAXZZZZ-Z="ZZZ
+XCX.CXXXCCCCCCCCCCCCCCCCCCCCCCCCCC...C........................................+.++...+..++.+.+.+++..     C                   C C+
+$B$'B$$$BBBBBBBBBBBBBBBBBBBBBBBBBB'''B''''''''''''''''''''''''''''''''''''''''C'CC'''C''CC'C'C'CCC''                            C
+_H_XH___HHHHHHHHHHHHHHHHHHHHHHHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X  XXX XX  X X X   XX
+&X&CX&&&XXXXXXXXXXXXXXXXXXXXXXXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CCC CC  C C C   CC
 #""#"""""""""""""""""""""""""""""--""-------------------------"-"-----""""""""""""""""""""""-""""--+M=XAXAAZZXXAAI=I=IZZZXXXZZ-++-M-
+XCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC..CC.........................+.+.....++++++++++++++++++++++.++++..C C                        CCCC C
+$BB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB''BB'''''''''''''''''''''''''C'C'''''CCCCCCCCCCCCCCCCCCCCCC'CCCC''
+_HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXX X XXXXX                      X    XX
+&XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCC                      C    CC
 """"##"""""#"""""""""""""-""-""""--"""------------------------------"-"""--"""""-""-"-"""-""---"-""+M+-ZA+A-XXXXXAXXXZZZZAIIXAMMMZZZ
+CCCCXXCCCCCXCCCCCCCCCCCCC.CC.CCCC..CCC..............................+.+++..+++++.++.+.+++.++...+.C+C CC    C
+BBBB$$BBBBB$BBBBBBBBBBBBB'BB'BBBB''BBB''''''''''''''''''''''''''''''C'CCC''CCCCC'CC'C'CCC'CC'''C'BC
+HHHH__HHHHH_HHHHHHHHHHHHHXHHXHHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X   XX     X  X X   X  XXX XH
+XXXX&&XXXXX&XXXXXXXXXXXXXCXXCXXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C   CC     C  C C   C  CCC CX
 """"""""""#"""""""""""-"""--""""""""------------------------------"--"""""""-""""""""""-"""""""----=+M=ZAAXZZXAXZXZZZ-ZIAAAAXM=IZXXI
+CCCCCCCCCCXCCCCCCCCCCC.CCC..CCCCCCCC..............................+..+++++++.++++++++++.+++++++....CC C              C        C
+BBBBBBBBBB$BBBBBBBBBBB'BBB''BBBBBBBB''''''''''''''''''''''''''''''C''CCCCCCC'CCCCCCCCCC'CCCCCCC''''
+HHHHHHHHHH_HHHHHHHHHHHXHHHXXHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX       X          X       XXXX
+XXXXXXXXXX&XXXXXXXXXXXCXXXCCXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC       C          C       CCCC
 #####"##"""""""""""""""""--"""-"""---"-----------------------------"---""""""""""""""---""-"---"-"-=+MZXIAZZXAA-ZZZX--MXAAAXXM-AAII=
+XXXXXCXXCCCCCCCCCCCCCCCCC..CCC.CCC...C.............................+...++++++++++++++...++.+...+.C.CC          C    CC        C
+$$$$$B$$BBBBBBBBBBBBBBBBB''BBB'BBB'''B'''''''''''''''''''''''''''''C'''CCCCCCCCCCCCCC'''CC'C'''C'B'
+_____H__HHHHHHHHHHHHHHHHHXXHHHXHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX              XXX  X XXX XHX
+&&&&&X&&XXXXXXXXXXXXXXXXXCCXXXCXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC              CCC  C CCC CXC
 ##""#"#"""""""""""""""""""""""""""-""----------------------"---------"-""""-""""-"""-"""-"-"-"--"""+=-XIIZXXXIXZXZZZ-M-XXZX-XXA===11
+XXCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC.CC......................+.........+.++++.++++.+++.+++.+.+.+..CC+CCC              C C    C
+$$BB$B$BBBBBBBBBBBBBBBBBBBBBBBBBBB'BB''''''''''''''''''''''C'''''''''C'CCCC'CCCC'CCC'CCC'C'C'C''BBC
+__HH_H_HHHHHHHHHHHHHHHHHHHHHHHHHHHXHHXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXX X    X    X   X   X X X XXHH
+&&XX&X&XXXXXXXXXXXXXXXXXXXXXXXXXXXCXXCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC C    C    C   C   C C C CCXX
 #"#"""-""""""""""""""""--"""-""""--""-""-----------------------"--"-"""""""-""""""""-""--"---""""-"=MZXAXXXXXAZXXZZXZ-XXZMZM-X=1+1-+
+XCXCCC.CCCCCCCCCCCCCCCC..CCC.CCCC..CC.CC.......................+..+.+++++++.++++++++.++..+...++CC.+C                 C      C
+$B$BBB'BBBBBBBBBBBBBBBB''BBB'BBBB''BB'BB'''''''''''''''''''''''C''C'CCCCCCC'CCCCCCCC'CC''C'''CCBB'C
+_H_HHHXHHHHHHHHHHHHHHHHXXHHHXHHHHXXHHXHHXXXXXXXXXXXXXXXXXXXXXXX XX X       X        X  XX XXX  HHX
+&X&XXXCXXXXXXXXXXXXXXXXCCXXXCXXXXCCXXCXXCCCCCCCCCCCCCCCCCCCCCCC CC C       C        C  CC CCC  XXC
 #"""#""#"""""#"""-"""""-"""""-"-"--""-"----------------------------"---"-"--""""""--"""""-"""+-"-"=M-AXAXZ-XXZZAXXZXXXAZM-ZXXA1--  +
+XCCCXCCXCCCCCXCCC.CCCCC.CCCCC.C.C..CC.C............................+...+.+..++++++..+++++.+++C.C.+C C     C              C
+$BBB$BB$BBBBB$BBB'BBBBB'BBBBB'B'B''BB'B''''''''''''''''''''''''''''C'''C'C''CCCCCC''CCCCC'CCC 'B'C
+_HHH_HH_HHHHH_HHHXHHHHHXHHHHHXHXHXXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX X XX      XX     X    XHX
+&XXX&XX&XXXXX&XXXCXXXXXCXXXXXCXCXCCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C CC      CC     C    CXC
 #""""#""""""""""""""""""-"""-"-"--"--"-------------------------"-----"----""---"""""""-""----""-"+MZXAAAZ--ZXXXXZAXIIIAZZXAI=1     -
+XCCCCXCCCCCCCCCCCCCCCCCC.CCC.C.C..C..C.........................+.....+....++...+++++++.++....+C.+C       CC
+$BBBB$BBBBBBBBBBBBBBBBBB'BBB'B'B''B''B'''''''''''''''''''''''''C'''''C''''CC'''CCCCCCC'CC''''CB'C
+_HHHH_HHHHHHHHHHHHHHHHHHXHHHXHXHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX XXXX  XXX       X  XXXX HX
+&XXXX&XXXXXXXXXXXXXXXXXXCXXXCXCXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CCCC  CCC       C  CCCC XC
 ##"""#""""""""""""""""""-"""-"""""""-"--------------------"---""-------"-""--"-"""""""-""""-"--+==XZAXXZZ---ZXAIA=I+=IXXAI=1    ---1
+XXCCCXCCCCCCCCCCCCCCCCCC.CCC.CCCCCCC.C....................+...++.......+.++..+.+++++++.++++.+..CCC       CCC
+$$BBB$BBBBBBBBBBBBBBBBBB'BBB'BBBBBBB'B''''''''''''''''''''C'''CC'''''''C'CC''C'CCCCCCC'CCCC'C''
+__HHH_HHHHHHHHHHHHHHHHHHXHHHXHHHHHHHXHXXXXXXXXXXXXXXXXXXXX XXX  XXXXXXX X  XX X       X    X XX
+&&XXX&XXXXXXXXXXXXXXXXXXCXXXCXXXXXXXCXCCCCCCCCCCCCCCCCCCCC CCC  CCCCCCC C  CC C       C    C CC
 "#""#"#"""""""""""""""""-""-"""""-""-"------"----------------------"-""--"--"--""""-""-"----+"+=MZAXAZZZZZZ---AXAA=-1=XAII+-   -1-1=
+CXCCXCXCCCCCCCCCCCCCCCCC.CC.+CCCC.CC.C......C......................+.++..+..+..++++.++.+....C+CC           CCC
+B$BB$B$BBBBBBBBBBBBBBBBB'BB'CBBBB'BB'B''''''B''''''''''''''''''''''C'CC''C''C''CCCC'CC'C'''' C
+H_HH_H_HHHHHHHHHHHHHHHHHXHHX HHHHXHHXHXXXXXXHXXXXXXXXXXXXXXXXXXXXXX X  XX XX XX    X  X XXXX
+X&XX&X&XXXXXXXXXXXXXXXXXCXXC XXXXCXXCXCCCCCCXCCCCCCCCCCCCCCCCCCCCCC C  CC CC CC    C  C CCCC
 ###""#"""""""#""#""""-"""-""---""-"-"-----"-----------------------""""-"""-""+-"""""----"--+""++ZI=AZMZ-Z-X--XAZXI==AIIIIAI1   11-+I
+XXXCCXCCCCCCCXCCXCCCC.CCC.C+...CC.C.C.....C.......................++++.+++.++C.+++++....+..C++CC       C C CC
+$$$BB$BBBBBBB$BB$BBBB'BBB'BC'''BB'B'B'''''B'''''''''''''''''''''''CCCC'CCC'CC 'CCCCC''''C'' CC
+___HH_HHHHHHH_HH_HHHHXHHHXH XXXHHXHXHXXXXXHXXXXXXXXXXXXXXXXXXXXXXX    X   X   X     XXXX XX
+&&&XX&XXXXXXX&XX&XXXXCXXXCX CCCXXCXCXCCCCCXCCCCCCCCCCCCCCCCCCCCCCC    C   C   C     CCCC CC
 """"""""""""""""""""""""""--"""-"""--"""-----------------------+""""-""""-"""""""""""""""-"===+==1A-ZZXZ-ZXAXXXZZAIAAAAAAI=----1+1AI
+CCCCCCCCCCCCCCCCCCCCCCCCCC..CCC.CCC..CCC.......................C++++.++++.+++++++++++++++.+CCCCC   C    C
+BBBBBBBBBBBBBBBBBBBBBBBBBB''BBB'BBB''BBB''''''''''''''''''''''' CCCC'CCCC'CCCCCCCCCCCCCCC'C
+HHHHHHHHHHHHHHHHHHHHHHHHHHXXHHHXHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXX     X    X               X
+XXXXXXXXXXXXXXXXXXXXXXXXXXCCXXXCXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCC     C    C               C
 """#""-""""""""""""""-""""---""""--""-------------------------"--""--""""-""--"""-"""-""-"--=MMZ-IXZAAAXZXAIAXZZZAIIIXXXXA+- --+1+A=
+CCCXCC.CCCCCCCCCCCCCC.CCCC...CCCC..CC.........................+..++..++++.++..+++.+++.++.+CCC
+BBB$BB'BBBBBBBBBBBBBB'BBBB'''BBBB''BB'''''''''''''''''''''''''C''CC''CCCC'CC''CCC'CCC'CC'C
+HHH_HHXHHHHHHHHHHHHHHXHHHHXXXHHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXX XX  XX    X  XX   X   X  X
+XXX&XXCXXXXXXXXXXXXXXCXXXXCCCXXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCC CC  CC    C  CC   C   C  C
 """#""""""""""""""""-""""""""""""""----"--""------------#---------------"-"-"-""---""""--+X==M-A=ZZMZXXZZAXXAAA+I==IXZZAXA=1--11+===
+CCCXCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCC....C..+C............X...............+.+.+.++...++++..C CC C
+BBB$BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBB''''B''CB''''''''''''$'''''''''''''''C'C'C'CC'''CCCC''
+HHH_HHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHXXXXHXX HXXXXXXXXXXXX_XXXXXXXXXXXXXXX X X X  XXX    XX
+XXX&XXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXCCCCXCC XCCCCCCCCCCCC&CCCCCCCCCCCCCCC C C C  CCC    CC
 """#""""#"""""""""""""""""--"""""""-"-------------------------"--"""-----"--"""-"---"""--XZ+==-XZ-MMZXAXZZZXAA-I==Z-ZZXA=+- 11-+++=A
+CCCXCCCCXCCCCCCCCCCCCCCCCC..CCCCCCC.C.........................+..+++.....+..+++.+...+++..  CCCC  C                 C
+BBB$BBBB$BBBBBBBBBBBBBBBBB''BBBBBBB'B'''''''''''''''''''''''''C''CCC'''''C''CCC'C'''CCC''
+HHH_HHHH_HHHHHHHHHHHHHHHHHXXHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXX XX   XXXXX XX   X XXX   XX
+XXX&XXXX&XXXXXXXXXXXXXXXXXCCXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCC CC   CCCCC CC   C CCC   CC
 #""""""#"#"""""""""""""""---"""""-"""--"--------------------------""--""-""--"--"""--"-"=-=M=M-Z--+-XAAAZZXIIA1=X-=-ZXA=1---11-++IAA
+XCCC+CCXCXCCCCCCCCCCCCCCC...CCCCC.CCC..C..........................++..++.++..+..+++..+.+CCC C C CCCC             CCC
+$BBBCBB$B$BBBBBBBBBBBBBBB'''BBBBB'BBB''B''''''''''''''''''''''''''CC''CC'CC''C''CCC''C'C
+_HHH HH_H_HHHHHHHHHHHHHHHXXXHHHHHXHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX  XX  X  XX XX   XX X
+&XXX XX&X&XXXXXXXXXXXXXXXCCCXXXXXCXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC  CC  C  CC CC   CC C
 ##""""#""""""""""""""""-"""--""""---"--------------------------"--""-"""""""---""-----"M---Z=M--Z-MZAAAIXXX=====X-MZZX=1++11+11++III
+XXCCCCXCCCCCCCCCCCCCCCC.CCC..CCCC...C..........................+..++.+++++++...++.....+ CCC C CC C               C
+$$BBBB$BBBBBBBBBBBBBBBB'BBB''BBBB'''B''''''''''''''''''''''''''C''CC'CCCCCCC'''CC'''''C
+__HHHH_HHHHHHHHHHHHHHHHXHHHXXHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXX XX  X       XXX  XXXXX
+&&XXXX&XXXXXXXXXXXXXXXXCXXXCCXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC CC  C       CCC  CCCCC
 ""#"#""""""""""""""""""""""--""""--------"-------------------"-""---"""-""""------""--+ZZ-AZMM-M--ZZZZIIAZA=+1=AA-M-ZA+1===+=II=====
+CCXCXCCCCCCCCCCCCCCCCCCCCCC..CCCC........C...................+.++...+++.++++......++..C  C    C CC               C C
+BB$B$BBBBBBBBBBBBBBBBBBBBBB''BBBB''''''''B'''''''''''''''''''C'CC'''CCC'CCCC''''''CC''
+HH_H_HHHHHHHHHHHHHHHHHHHHHHXXHHHHXXXXXXXXHXXXXXXXXXXXXXXXXXXX X  XXX   X    XXXXXX  XX
+XX&X&XXXXXXXXXXXXXXXXXXXXXXCCXXXXCCCCCCCCXCCCCCCCCCCCCCCCCCCC C  CCC   C    CCCCCC  CC
 "#"""#"""""""#"""""""""""---"""----"------------------------------""""""""-"--""-""---=ZXAXZX-M==--Z-ZAIAI=11=ZAX=MZX++IXI=I=XX=1+=+
+CXCCCXCCCCCCCXCCCCCCCCCCC...+CC....C..............................++++++++.+..++.++...C      C CCCC C            C
+B$BBB$BBBBBBB$BBBBBBBBBBB'''CBB''''B''''''''''''''''''''''''''''''CCCCCCCC'C''CC'CC'''
+H_HHH_HHHHHHH_HHHHHHHHHHHXXX HHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX        X XX  X  XXX
+X&XXX&XXXXXXX&XXXXXXXXXXXCCC XXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC        C CC  C  CCC
 #""-""""""""#"""""""""""""-"-"-"-"-"----------------------------""-"------"-"-"-""--"M=XAAXZXZ-=M=MZAXZXA++1IZZX--XA=+IXXIIAIAA=11+1
+XCC.CCCCCCCCXCCCCCCCCCCCCC.C.C.C.C.C............................++.+......+.+.+.++..+ C       CC C              CC
+$BB'BBBBBBBB$BBBBBBBBBBBBB'B'B'B'B'B''''''''''''''''''''''''''''CC'C''''''C'C'C'CC''C
+_HHXHHHHHHHH_HHHHHHHHHHHHHXHXHXHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X XXXXXX X X X  XX
+&XXCXXXXXXXX&XXXXXXXXXXXXXCXCXCXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C CCCCCC C C C  CC
 #""#"""""""#"""""""""""""""--"""-"------------------------------"----"""""--"-------=M=IAX=-X--MM=MZA-ZA+1=IXZZZ-ZXI==IAXAXAI===I11+
+XCCXCCCCCCCXCCCCCCCCCCCCCCC..CCC.C..............................+....+++++..+.......C C   CC CC  C   C          C
+$BB$BBBBBBB$BBBBBBBBBBBBBBB''BBB'B''''''''''''''''''''''''''''''C''''CCCCC''C'''''''
+_HH_HHHHHHH_HHHHHHHHHHHHHHHXXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX     XX XXXXXXX
+&XX&XXXXXXX&XXXXXXXXXXXXXXXCCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC     CC CCCCCCC
 #""#"""#""""""""""""""""""""""""---""--"----------------------"--------"----"------"M=Z+XA"M-=-MMMMZXZA=+IAX-Z--ZAI+==IZZZZA=+=II11+
+XCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCC...CC..C......................+........+....+......+ C    + CCC             C CC
+$BB$BBB$BBBBBBBBBBBBBBBBBBBBBBBB'''BB''B''''''''''''''''''''''C''''''''C''''C''''''C      C
+_HH_HHH_HHHHHHHHHHHHHHHHHHHHHHHHXXXHHXXHXXXXXXXXXXXXXXXXXXXXXX XXXXXXXX XXXX XXXXXX
+&XX&XXX&XXXXXXXXXXXXXXXXXXXXXXXXCCCXXCCXCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC CCCC CCCCCC
 #"""""""""""""""-"""""""""""-""""--"--"--"-----------------"--"--"----""--""--""----M==IXA--==--X--XXX=1AZZZ---XXI====AM-ZZ=++II+1++
+XCCCCCCCCCCCCCCC.CCCCCCCCCCC.CCCC..C..C..C.................+..+..+....++..++..++...C C    .CCCCC CC         CCC         C
+$BBBBBBBBBBBBBBB'BBBBBBBBBBB'BBBB''B''B''B'''''''''''''''''C''C''C''''CC''CC''CC'''       '
+_HHHHHHHHHHHHHHHXHHHHHHHHHHHXHHHHXXHXXHXXHXXXXXXXXXXXXXXXXX XX XX XXXX  XX  XX  XXX       X
+&XXXXXXXXXXXXXXXCXXXXXXXXXXXCXXXXCCXCCXCCXCCCCCCCCCCCCCCCCC CC CC CCCC  CC  CC  CCC       C
 #"""""#""""""""""-"""""""-"-""""""-""---"-----------------------"----"----"------""-=-XXA-+-M=-ZZ-AXA==A-XZZXZXII=AAI=Z-ZZA==+I++=I+
+XCCCCCXCCCCCCCCCC.CCCCCCC.C.CCCCCC.CC...C.......................+....+....+......++CCC   CCC CC  C      C              C
+$BBBBB$BBBBBBBBBB'BBBBBBB'B'BBBBBB'BB'''B'''''''''''''''''''''''C''''C''''C''''''CC
+_HHHHH_HHHHHHHHHHXHHHHHHHXHXHHHHHHXHHXXXHXXXXXXXXXXXXXXXXXXXXXXX XXXX XXXX XXXXXX
+&XXXXX&XXXXXXXXXXCXXXXXXXCXCXXXXXXCXXCCCXCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCC CCCCCC
 """""""#""""""""""""""""""""-""""---""----------------------------"-----""-----"--=+MXXAZMM--M-=-XAAIIXZZXXXZZAIIAAA==XZZA=A==I===I1
+CCCCCCCXCCCCCCCCCCCCCCCCCCCC.CCCC...CC............................+.....++.....+..CC       CC CCC
+BBBBBBB$BBBBBBBBBBBBBBBBBBBB'BBBB'''BB''''''''''''''''''''''''''''C'''''CC'''''C''
+HHHHHHH_HHHHHHHHHHHHHHHHHHHHXHHHHXXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX  XXXXX XX
+XXXXXXX&XXXXXXXXXXXXXXXXXXXXCXXXXCCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC  CCCCC CC
 ##""""""##""""""""""""""""""-"-""""------------------------------"---"-""--------+==ZZAIXMM-XMM=M-IAIAZ-XXZXZX=IA==I=IXAI=XA=A+++II-
+XXCCCCCCXXCCCCCCCCCCCCCCCCCC.C.CCCC..............................+...+.++........CCC       C   C C     C
+$$BBBBBB$$BBBBBBBBBBBBBBBBBB'B'BBBB''''''''''''''''''''''''''''''C'''C'CC''''''''
+__HHHHHH__HHHHHHHHHHHHHHHHHHXHXHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX X  XXXXXXXX
+&&XXXXXX&&XXXXXXXXXXXXXXXXXXCXCXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C  CCCCCCCC
 "#"""""""""""""""""""""""-----"""-""----------------------------"""-""-"---"---"-=+-ZZ1=X-M-ZZ-+=-ZAXZZAAXAAA=IIIIXIAII==AXAAX+==I=-
+CXCCCCCCCCCCCCCCCCCCCCCCC.....CCC.CC............................+++.++.+...+...+.CCC     C C  CCCC
+B$BBBBBBBBBBBBBBBBBBBBBBB'''''BBB'BB''''''''''''''''''''''''''''CCC'CC'C'''C'''C'
+H_HHHHHHHHHHHHHHHHHHHHHHHXXXXXHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX   X  X XXX XXX X
+X&XXXXXXXXXXXXXXXXXXXXXXXCCCCCXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC   C  C CCC CCC C
 ""###"#"###""""""""""""""--"---""----"------------------------------------------+=+ZZZIX=-Z==A-=MZZXZZXXIXAXA=IAZ-ZXXI1=IXXX-A=IAI=1
+CCXXXCXCXXXCCCCCCCCCCCCCC..C...CC....C..........................................CCC     CC CC CC                 C          C
+BB$$$B$B$$$BBBBBBBBBBBBBB''B'''BB''''B''''''''''''''''''''''''''''''''''''''''''
+HH___H_H___HHHHHHHHHHHHHHXXHXXXHHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XX&&&X&X&&&XXXXXXXXXXXXXXCCXCCCXXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#"""""""#"""""-"""""""""""---"-"-"----------------------------"---------------"MM=AZZI-+-M+=-MMZ-XXZXZZX-ZXAIIXXAZZXI=AAZZZZAXAXXI+
+CXCCCCCCCXCCCCC.CCCCCCCCCCC...C.C.C............................+...............+  C    CCC CCC   C       C
+B$BBBBBBB$BBBBB'BBBBBBBBBBB'''B'B'B''''''''''''''''''''''''''''C'''''''''''''''C
+H_HHHHHHH_HHHHHXHHHHHHHHHHHXXXHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX
+X&XXXXXXX&XXXXXCXXXXXXXXXXXCCCXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC
 "#""""""""#"""""""""--"""--""""""""-"-""---------------------------------------+-MMAZIZM=Z===-M-ZMA=AXZZ--XAAAAAIXZZXXAZX---XZ-X-ZA1
+CXCCCCCCCCXCCCCCCCCC..CCC..CCCCCCCC.C.CC.......................................CC       C CCCC C        CC               CCC  C C
+B$BBBBBBBB$BBBBBBBBB''BBB''BBBBBBBB'B'BB'''''''''''''''''''''''''''''''''''''''
+H_HHHHHHHH_HHHHHHHHHXXHHHXXHHHHHHHHXHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXXXXXX&XXXXXXXXXCCXXXCCXXXXXXXXCXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ""#"""""""#"""#"""""-""""""-"""-"""--"-"-----------------------""-""-"-""------MXMM=X=MZ====--MZ-ZI=AXZXZZAIAAAIXZZAAZXZ-=----ZZ-ZA
+CCXCCCCCCCXCCCXCCCCC.CCCCCC.CCC.CCC..C.C.......................++.++.+.++......    C    CCCCCC  C                       CCCCCC  C
+BB$BBBBBBB$BBB$BBBBB'BBBBBB'BBB'BBB''B'B'''''''''''''''''''''''CC'CC'C'CC''''''
+HH_HHHHHHH_HHH_HHHHHXHHHHHHXHHHXHHHXXHXHXXXXXXXXXXXXXXXXXXXXXXX  X  X X  XXXXXX
+XX&XXXXXXX&XXX&XXXXXCXXXXXXCXXXCXXXCCXCXCCCCCCCCCCCCCCCCCCCCCCC  C  C C  CCCCCC
 #"#"""##"""""""""""""""""""""""""-"------"------------------------------------"-Z=M"ZZ-M-MM--=M+=IAAXZMMMXXAXAAAAIAA-ZXZMMM-=MZ---Z-
+XCXCCCXXCCCCCCCCCCCCCCCCCCCCCCCCC.C......C....................................+C C +  C C  CCC CC                   C      CC  CCC
+$B$BBB$$BBBBBBBBBBBBBBBBBBBBBBBBB'B''''''B''''''''''''''''''''''''''''''''''''C    C
+_H_HHH__HHHHHHHHHHHHHHHHHHHHHHHHHXHXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&X&XXX&&XXXXXXXXXXXXXXXXXXXXXXXXXCXCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""""""""""""""""""""""""""""""""----"-"-"------------------------"-----------MZ==-=ZMM=-M-Z-=="-=AA---=-ZZXXZZA=IA----M----=-Z=-MX+
+XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC....C.C.C........................+...........  CCCC   CC C CCC+C   CCCCC          CCCC CCCCCC CC
+$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB''''B'B'B''''''''''''''''''''''''C'''''''''''                 C
+_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXXXXHXHXHXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX
+&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCCCCXCXCXCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC
 #""""#""""""""""""""""""-"""""""-""-"""--""----------------------------"------Z-=MZZM==M-M--M++=X=AXZ-M-XXZXAZXI=ZZ=MMMZXZZ=MZ-=Z-Z=
+XCCCCXCCCCCCCCCCCCCCCCCC.CCCCCCC.CC.CCC..CC............................+...... CC    CC C CC CCC     C C           C       C  CC C
+$BBBB$BBBBBBBBBBBBBBBBBB'BBBBBBB'BB'BBB''BB''''''''''''''''''''''''''''C''''''
+_HHHH_HHHHHHHHHHHHHHHHHHXHHHHHHHXHHXHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX
+&XXXX&XXXXXXXXXXXXXXXXXXCXXXXXXXCXXCXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC
 #""""#""""""""""""""-""""--""------""-"-------------"-----------------"-"----=ZM+-Z-=-MM-Z-Z+++ZIXZZ-MZZXXXXIZXXXZ-+MM-ZZ--=M-M=---A
+XCCCCXCCCCCCCCCCCCCC.CCCC..CC......CC.C.............+.................+.+....C  CC CCC  C C CCC     C             CC  C  CCC C CCCC
+$BBBB$BBBBBBBBBBBBBB'BBBB''BB''''''BB'B'''''''''''''C'''''''''''''''''C'C''''
+_HHHH_HHHHHHHHHHHHHHXHHHHXXHHXXXXXXHHXHXXXXXXXXXXXXX XXXXXXXXXXXXXXXXX X XXXX
+&XXXX&XXXXXXXXXXXXXXCXXXXCCXXCCCCCCXXCXCCCCCCCCCCCCC CCCCCCCCCCCCCCCCC C CCCC
 #"""##""#""""#-""""""""-"""""""-"-"-"""-""-------------------"-----------"----ZM=XX-MMM====-=MZXXZ--M-ZXZZXXXZ-ZZZ-MMM-MMM-=MM-M-ZMX
+XCCCXXCCXCCCCX.CCCCCCCC.CCCCCCC.C.C.CCC.CC...................+...........+...C  C  C   CCCCCC     CC C        C   C   C   CC  C C
+$BBB$$BB$BBBB$'BBBBBBBB'BBBBBBB'B'B'BBB'BB'''''''''''''''''''C'''''''''''C'''
+_HHH__HH_HHHH_XHHHHHHHHXHHHHHHHXHXHXHHHXHHXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX XXX
+&XXX&&XX&XXXX&CXXXXXXXXCXXXXXXXCXCXCXXXCXXCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC CCC
 #"""""""#"""""""""""""""""-""-""""""""---"-------------------"---------------IZM=XA-M=M===ZZ-AIZ--M-=M-ZZ-ZXX-=ZZZZMMZM=M----M-M-M+-
+XCCCCCCCXCCCCCCCCCCCCCCCCC.CC.CCCCCCCC...C...................+...............   C  C C CCC  C   CC CC C  C   CC        C CCCC C C CC
+$BBBBBBB$BBBBBBBBBBBBBBBBB'BB'BBBBBBBB'''B'''''''''''''''''''C'''''''''''''''
+_HHHHHHH_HHHHHHHHHHHHHHHHHXHHXHHHHHHHHXXXHXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX
+&XXXXXXX&XXXXXXXXXXXXXXXXXCXXCXXXXXXXXCCCXCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC
 ##"#""""""""#""""""""""""""""""""""-"-""---------------------"--------------=IM==ZX--MM-ZXXZ-ZXM=M---=--M-ZXZ+"M-XZ=MZM=M--MM-MM-="=
+XXCXCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCC.C.CC.....................+..............C  CC  CC  C    C   C CCCCCC C   C+ C  C   C CC  C  CC+C
+$$B$BBBBBBBB$BBBBBBBBBBBBBBBBBBBBBB'B'BB'''''''''''''''''''''C''''''''''''''                                  C                   C
+__H_HHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHXHXHHXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX
+&&X&XXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXCXCXXCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC
 #""-""#"#""#"""""""""""""---"""---""""-"--"--------------------------------"XZ=M-Z-Z--MXAXXMM-M+=MM-=M--MM-AX-MM-XZ=M=MXMMZMMM+=-+"-
+XCC.CCXCXCCXCCCCCCCCCCCCC...CCC...CCCC.C..C................................+  C C C CC       C CC  CC CC  C  C  C  C C        CCCC+C
+$BB'BB$B$BB$BBBBBBBBBBBBB'''BBB'''BBBB'B''B''''''''''''''''''''''''''''''''C                                                      C
+_HHXHH_H_HH_HHHHHHHHHHHHHXXXHHHXXXHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XXCXX&X&XX&XXXXXXXXXXXXXCCCXXXCCCXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ####""""""""""""""#-""""""""""""""""""-"-----------------------------------MZ==+-X----ZXX-M---==MMZ==-M-=+-ZZZAXZZZZZ+MX=-MMM==+++"I
+XXXXCCCCCCCCCCCCCCX.CCCCCCCCCCCCCCCCCC.C...................................  CCCC CCCC   C CCCCC   CCC CCCC          C  CC   CCCCC+
+$$$$BBBBBBBBBBBBBB$'BBBBBBBBBBBBBBBBBB'B'''''''''''''''''''''''''''''''''''                                                       C
+____HHHHHHHHHHHHHH_XHHHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&&&XXXXXXXXXXXXXX&CXXXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #"""##"#"""""""-""""""""""""""""""---"-"-------------------------------------MM+XX-MZ-XZ--Z-ZZ-M=-ZMM-M-==--XXIIAXXXZ=M-=-====-==++Z
+XCCCXXCXCCCCCCC.CCCCCCCCCCCCCCCCCC...C.C...................................CC  C  C  C  CC C  C CC   C CCCCC         C CCCCCCCCCCCC
+$BBB$$B$BBBBBBB'BBBBBBBBBBBBBBBBBB'''B'B'''''''''''''''''''''''''''''''''''
+_HHH__H_HHHHHHHXHHHHHHHHHHHHHHHHHHXXXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XXX&&X&XXXXXXXCXXXXXXXXXXXXXXXXXXCCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""##""##"""""""#"""""-""""""-""""-"-"""--------------------"--------------Z--=ZX-M-XZXZ--Z-Z--=MZZZZ-MM==MZZX=I=AAXZMM==M===M--M"+=
+XCCXXCCXXCCCCCCCXCCCC+.CCCCCC.CCCC.C.CCC....................+.............. CCC  C C    CC C CCC     C  CC             CC CCC CC +CC
+$BB$$BB$$BBBBBBB$BBBBC'BBBBBB'BBBB'B'BBB''''''''''''''''''''C''''''''''''''                                                      C
+_HH__HH__HHHHHHH_HHHH XHHHHHHXHHHHXHXHHHXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX
+&XX&&XX&&XXXXXXX&XXXX CXXXXXXCXXXXCXCXXXCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC
 "#""""""##"""-"""""""""""""-""""-"-""-------------------------"-----------=ZXM==XX-XZZX-MZ--XZ-=M-ZXZZZ-M+-ZMXAIIIAZZ--+=-M+M---=++"
+CXCCCCCCXXCCC.CCCCCCCCCCCCC.CCCC.C.CC.........................+...........C   C   C    C  CC  CC C     C CC          CCCCC C CCCCCC+
+B$BBBBBB$$BBB'BBBBBBBBBBBBB'BBBB'B'BB'''''''''''''''''''''''''C'''''''''''                                                         C
+H_HHHHHH__HHHXHHHHHHHHHHHHHXHHHHXHXHHXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX
+X&XXXXXX&&XXXCXXXXXXXXXXXXXCXXXXCXCXXCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC
 """"""#"#-""#""""""""""-""""-""""-"""-"""---------------------------------MZZ=MXIZZAZZZZZA-MZZX-ZZXX-X--M+---XXAAAZZZZAMM--+=++"+"+"
+CCCCCCXCX.CCXCCCCCCCCCC.CCCC.CCCC.CCC.CCC.................................   C            C    C    C CC CCCC            CCCCCC+C+C+
+BBBBBB$B$'BB$BBBBBBBBBB'BBBB'BBBB'BBB'BBB'''''''''''''''''''''''''''''''''                                                     C C C
+HHHHHH_H_XHH_HHHHHHHHHHXHHHHXHHHHXHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXX&X&CXX&XXXXXXXXXXCXXXXCXXXXCXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#""""#""#"""""""""""""-""""""-"""""""-----------------------------------"XX-=MIAZAXZAXXXZ=--ZXXZ-ZZZ-=+==---AAAXXXZZA=---M++"""=""+
+CXCCCCXCCXCCCCCCCCCCCCC.CCCCCC.CCCCCCC...................................+  CC            CCC    C   CCCCCCCC          CCC CC+++C++C
+B$BBBB$BB$BBBBBBBBBBBBB'BBBBBB'BBBBBBB'''''''''''''''''''''''''''''''''''C                                                   CCC CC
+H_HHHH_HH_HHHHHHHHHHHHHXHHHHHHXHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXX&XX&XXXXXXXXXXXXXCXXXXXXCXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#"#"""#""""""""""""""-"""""-"""""""--"-----------"----------------------=AX-=--XAAZXIXXXMM-=M-Z--XX-="+==ZZ-ZXAZXXZA=+-ZM=+""++M"++
+CXCXCCCXCCCCCCCC+CCCCC.CCCCC.CCCCCCC..C...........+......................C  CCC            CC C CC  CC+CCC  C          C  CC++CC +CC
+B$B$BBB$BBBBBBBBCBBBBB'BBBBB'BBBBBBB''B'''''''''''C''''''''''''''''''''''                             C                     CC   C
+H_H_HHH_HHHHHHHH HHHHHXHHHHHXHHHHHHHXXHXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX
+X&X&XXX&XXXXXXXX XXXXXCXXXXXCXXXXXXXCCXCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCC
 """"""""""#""-"""""""""""-"---"-"----"---------------------"----"-"------ZXAZMZ=X=X-XIZ--MM==+--=-ZZM+"+=MXAZ-AXZXZA=IAM-=="""""M""+
+CCCCCCCCCCXCC.C+CCCCCCCCC.C...C.C....C.....................+....+.+......          C   CC  CCCCCCC   C+CC    C          CCC+++++ ++C
+BBBBBBBBBB$BB'BCBBBBBBBBB'B'''B'B''''B'''''''''''''''''''''C''''C'C''''''                             C                    CCCCC CC
+HHHHHHHHHH_HHXH HHHHHHHHHXHXXXHXHXXXXHXXXXXXXXXXXXXXXXXXXXX XXXX X XXXXXX
+XXXXXXXXXX&XXCX XXXXXXXXXCXCCCXCXCCCCXCCCCCCCCCCCCCCCCCCCCC CCCC C CCCCCC
 "####"#"""""""""""""""-"""""""""""""""---"--"----------------------------AAX=MXAIAZ-AA---MMMMMM-M--======MZXZZIAXAI11=XZZ===="""=""+
+CXXXXCXCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCC...C..C............................   C      C  CCC      C CCCCCCCC                CCCC+++C++C
+B$$$$B$BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBB'''B''B''''''''''''''''''''''''''''                                                    CCC CC
+H____H_HHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHXXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&&&&X&XXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXCCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#"#""#""""""""""""""""""""""""""""-"-"---------------------------------=AAM+ZAI=AZZAZ--Z--Z-MMZZMM+=MM=MZXXAXAXXI+  1AXM==M=""=M=="
+CXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C.C.................................C   C         CC CC C      CC  C                 CC C++C CC+
+B$B$BB$BBBBBBBBBBBBBBBBBBBBBBBBBBBB'B'B'''''''''''''''''''''''''''''''''                                                     CC    C
+H_H_HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&X&XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #"#""#""#"""""""""""""""""""""""""""--"""-----------"-------------------IAAMMIAA+AZZZX--=-ZXM=ZAZ-M=+=M==Z-MIIIX-A1 -1XM=MMM=++M-=M"
+XCXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC..CCC...........+...................              CCCC   C   C CCC CC C     C       C   CCC CC +
+$B$BB$BB$BBBBBBBBBBBBBBBBBBBBBBBBBBB''BBB'''''''''''C'''''''''''''''''''                                                           C
+_H_HH_HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHXXHHHXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX
+&X&XX&XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXCCXXXCCCCCCCCCCC CCCCCCCCCCCCCCCCCCC
 ##""#####"""##""#""""""""""-"""--"-""--"-----"----"---"------"--------""+II-A=I==AXZZZMZ+-XXZ=MAXXM=-==++M==IIAAI=I+11IM=--=++MZM+="
+XXCCXXXXXCCCXXCCXCCCCCCCCCC.CCC..C.CC..C.....C....+...+......+........++   C            CC   C     CCCCCC CC            CCCCCC   CC+
+$$BB$$$$$BBB$$BB$BBBBBBBBBB'BBB''B'BB''B'''''B''''C'''C''''''C''''''''CC                                                           C
+__HH_____HHH__HH_HHHHHHHHHHXHHHXXHXHHXXHXXXXXHXXXX XXX XXXXXX XXXXXXXX
+&&XX&&&&&XXX&&XX&XXXXXXXXXXCXXXCCXCXXCCXCCCCCXCCCC CCC CCCCCC CCCCCCCC
 ###"###"#"""#""""-"""""""""""""-"""""-"""------------------------------M=AIZ===-AXZZZA-Z=-MX-M-Z-=M-Z=M+=MM=XAAIA-"=I=XMM--M=-MZM+-"
+XXXCXXXCXCCCXCCCC.CCCCCCCCCCCCC.CCCCC.CCC..............................               C CC  C C CC C C CC  C     C+C     CC CC   CC+
+$$$B$$$B$BBB$BBBB'BBBBBBBBBBBBB'BBBBB'BBB''''''''''''''''''''''''''''''                                           C                C
+___H___H_HHH_HHHHXHHHHHHHHHHHHHXHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&&X&&&X&XXX&XXXXCXXXXXXXXXXXXXCXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ""#"""""#"""""""""""""""""""""-"""""-"--"------------------------"-----XA==I=I==XXXZZ=XZ=M+XZ------MM=MM-MM=-ZZMM"-"MAX--ZZMMMMZM=M"
+CCXCCCCCXCCCCCCCCCCCCCCCCCCCCC.CCCCC.C..C........................+.....                 C C  CCCCCC  C  C  CC    +.+   CC        C +
+BB$BBBBB$BBBBBBBBBBBBBBBBBBBBB'BBBBB'B''B''''''''''''''''''''''''C'''''                                          C'C               C
+HH_HHHHH_HHHHHHHHHHHHHHHHHHHHHXHHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXXX XXXXX                                           X
+XX&XXXXX&XXXXXXXXXXXXXXXXXXXXXCXXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCCC CCCCC                                           C
 #"""""#"""""""""""""""""""""""""""-""--"--"------------"---------------II1+=IA=AZZZZXAZ-++=-----=Z-=++=M=M-M=+"+"--+MXAM--M--ZXX=+==
+XCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC.CC..C..C............+...............                CCCCCCCCCC CCCCC C C CC+C+..C    CC CC   CCCC
+$BBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBB'BB''B''B''''''''''''C'''''''''''''''                                       C C''
+_HHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHXHHXXHXXHXXXXXXXXXXXX XXXXXXXXXXXXXXX                                          XX
+&XXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXCXXCCXCCXCCCCCCCCCCCC CCCCCCCCCCCCCCC                                          CC
 """"""""""##"""""""""-"""-"""""""--"--""-------------------"--------""M=+ 1=AA=AZZXIX-=M="==MM-M=-=+==++"-MZM="+---+ZXIXM==-ZIAA===Z
+CCCCCCCCCCXXCCCCCCCCC.CCC.CCCCCCC..C..CC...................+........++               CC C+CC  C CCCCCCCC+C   C+C...C     CCC    CCC
+BBBBBBBBBB$$BBBBBBBBB'BBB'BBBBBBB''B''BB'''''''''''''''''''C''''''''CC                   C              C     C '''
+HHHHHHHHHH__HHHHHHHHHXHHHXHHHHHHHXXHXXHHXXXXXXXXXXXXXXXXXXX XXXXXXXX                                            XXX
+XXXXXXXXXX&&XXXXXXXXXCXXXCXXXXXXXCCXCCXXCCCCCCCCCCCCCCCCCCC CCCCCCCC                                            CCC
 ###"""""""""#""""""""""""""-""""""""-""-"---------------"-------------Z=  +AXA+IZXI=A-+==+M=-MMMMM++=+-+"M+-Z-=+"--"--X-=++=MA=I=M-X
+XXXCCCCCCCCCXCCCCCCCCCCCCCC.CCCCCCCC.CC.C...............+.............               CCCCC CC     CCCC.C+ CC CCC+..+CC CCCCC    C C
+$$$BBBBBBBBB$BBBBBBBBBBBBBB'BBBBBBBB'BB'B'''''''''''''''C'''''''''''''                                ' C       C''C
+___HHHHHHHHH_HHHHHHHHHHHHHHXHHHHHHHHXHHXHXXXXXXXXXXXXXXX XXXXXXXXXXXXX                                X          XX
+&&&XXXXXXXXX&XXXXXXXXXXXXXXCXXXXXXXXCXXCXCCCCCCCCCCCCCCC CCCCCCCCCCCCC                                C          CC
 #"""""#"""""""""""""""""""""""""""""-""-"-------"-------------------"-II  IXXXXIZZAAXM+M=M=-MM-Z-M+++-"+"+"=ZZZ=+"""M++===++=-IXM--M
+XCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CC.C.......+...................+.                C C CC  C C CCC.+C+C+C   CC+++ CCCCCCCCC   CC
+$BBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB'B'''''''C'''''''''''''''''''C'                               'C C C      CCC
+_HHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHXHXXXXXXX XXXXXXXXXXXXXXXXXXX X                               X
+&XXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXCXCCCCCCC CCCCCCCCCCCCCCCCCCC C                               C
 #""""""#""""""""""""""-""""""""""""""""""------------------------"----=+-+AZIX-XZ-XAIMM-MM=MM-ZX-=+""""----=-ZZM+"-++"-+M=+++MX-ZX-=
+XCCCCCCXCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCC........................+....        C  C     C  C  C  CCC++++....CC   C+.CC+.C CCCC  C  CC
+$BBBBBB$BBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB''''''''''''''''''''''''C''''                             CCCC''''      C'  C'
+_HHHHHH_HHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXX XXXX                                 XXXX       X   X
+&XXXXXX&XXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCC CCCC                                 CCCC       C   C
 ##"""#"#""#"#""""#""""""""""""""""""--"----------------------------"-+1+-AIXIXXZZZXIAMMM-=MMZZ-ZZ=+"""---"+=Z-M-M-"=+-"+MM""+-XZXAZ=
+XXCCCXCXCCXCXCCCCXCCCCCCCCCCCCCCCCCC..C............................+.C                  CC    C  CC+++...+CC C C .+CC.+C  ++CC     C
+$$BBB$B$BB$B$BBBB$BBBBBBBBBBBBBBBBBB''B''''''''''''''''''''''''''''C'                              CCC'''C       'C  'C   CC
+__HHH_H_HH_H_HHHH_HHHHHHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X                                 XXX        X   X
+&&XXX&X&XX&X&XXXX&XXXXXXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C                                 CCC        C   C
 ""-"##"#""#"""""""""""""""""""""""""""""-"---------------------"-----X111XXIXXAXXZI+X===--MMZ-ZZM+""""---+++Z-MM-"=M+"""+==+MZAXXXZM
+CC.CXXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C.....................+.....                CCCCC   C   C++++...CCC C  C+C C+++CCCC
+BB'B$$B$BB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B'''''''''''''''''''''C'''''                             CCCC'''        C   CCC
+HHXH__H_HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXX XXXXX                                 XXX
+XXCX&&X&XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCC CCCCC                                 CCC
 #""""#"""""#"""""""""""""""""""""""""""------------------------------+=-=ZA=XZIXXZ=--=Z=M-MZZXXZ-=++""--"++=Z--++"=M+++""=MMXII=AI=X
+XCCCCXCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC..............................               CC C C      CCCC++..+CCC CCCC+C CCC++C
+$BBBB$BBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBB''''''''''''''''''''''''''''''                               CC''C        C     CC
+_HHHH_HHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                                 XX
+&XXXX&XXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                                 CC
 ##"#""#"""""""""""""""""""""-""""""-"---"---------------------"-----"-=1AZAIXZAXXA+=M-Z+-M=ZX=IZ-M=++=""+M=MZ-=+"++=""""+-ZX=1+1+-+I
+XXCXCCXCCCCCCCCCCCCCCCCCCCCC.CCCCCC.C...C.....................+.....+                C CC C     C CCCC++C C  CCC+CCC++++CC
+$$B$BB$BBBBBBBBBBBBBBBBBBBBB'BBBBBB'B'''B'''''''''''''''''''''C'''''C                                 CC        C   CCCC
+__H_HH_HHHHHHHHHHHHHHHHHHHHHXHHHHHHXHXXXHXXXXXXXXXXXXXXXXXXXXX XXXXX
+&&X&XX&XXXXXXXXXXXXXXXXXXXXXCXXXXXXCXCCCXCCCCCCCCCCCCCCCCCCCCC CCCCC
 ##"""-""#"###"""""#""""""""""""""""""-"---"-----------------------"-=-==IXZXZ-XZZ=AZMXMMZ=MAZAXXMM+++=+M+Z----=++M++++"+MMZX+1--+-1-
+XXCCC.CCXCXXXCCCCCXCCCCCCCCCCCCCCCCCC.C...C.......................+.C        C           C        CCCCC C CCCCCCC CCCC+C           C
+$$BBB'BB$B$$$BBBBB$BBBBBBBBBBBBBBBBBB'B'''B'''''''''''''''''''''''C'                                                  C
+__HHHXHH_H___HHHHH_HHHHHHHHHHHHHHHHHHXHXXXHXXXXXXXXXXXXXXXXXXXXXXX X
+&&XXXCXX&X&&&XXXXX&XXXXXXXXXXXXXXXXXXCXCCCXCCCCCCCCCCCCCCCCCCCCCCC C
 #""#""""""""#"""""#"""""""""""""""""""------------------------------X+=AAIZZZZXZAIAZZZM-MMZZZZXZM=+====MMZZZX-+++=++++"==MXZ=+=+==X+
+XCCXCCCCCCCCXCCCCCXCCCCCCCCCCCCCCCCCCC..............................                   C         CCCCCC      CCCCCCCCC+CC          C
+$BB$BBBBBBBB$BBBBB$BBBBBBBBBBBBBBBBBBB''''''''''''''''''''''''''''''                                                  C
+_HH_HHHHHHHH_HHHHH_HHHHHHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XX&XXXXXXXX&XXXXX&XXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ####""""##""""""""""""""""""""""""""""-""-----------------------"---I=+XAIZZZXXX=AXZZZZZ----ZXAZMMM===+M-XXXZM=+=+++++"+=-AI1IAAI=A-
+XXXXCCCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CC.......................+...                    CCCC       CCCC C     CCCCCCCC+CCC         C
+$$$$BBBB$$BBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB'''''''''''''''''''''''C'''                                                  C
+____HHHH__HHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHXXXXXXXXXXXXXXXXXXXXXXX XXX
+&&&&XXXX&&XXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXCCCCCCCCCCCCCCCCCCCCCCC CCC
 ###"#""""""#"#""""""""""""""""""""""---"----------------------------===XXZXXZXAAIXX-ZXAXZX-MZXA--Z-M=++=XAXZ-===M+++==+==XI=1A-Z=II=
+XXXCXCCCCCCXCXCCCCCCCCCCCCCCCCCCCCCC...C............................               C      C    CC C CCCC    CCCC CCCCCCCC     C
+$$$B$BBBBBB$B$BBBBBBBBBBBBBBBBBBBBBB'''B''''''''''''''''''''''''''''
+___H_HHHHHH_H_HHHHHHHHHHHHHHHHHHHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&&X&XXXXXX&X&XXXXXXXXXXXXXXXXXXXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ##"###"##"#"""""""""""""""""""""""""+""-"---------------------------I==AAZXX-AAAZZXZ-ZXXX--=XAZMM-Z-M=+-AAX--+++M+MMM==--II=+ZAIX=IX
+XXCXXXCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C...........................        C       C    CCC     C C CCC   CCCCC C   CCCC
+$$B$$$B$$B$BBBBBBBBBBBBBBBBBBBBBBBBB BB'B'''''''''''''''''''''''''''
+__H___H__H_HHHHHHHHHHHHHHHHHHHHHHHHH HHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&X&&&X&&X&XXXXXXXXXXXXXXXXXXXXXXXXX XXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ###""""""""#"""""""""""""-""-"""-"-"-"-----------------------------"==AXIAAZXIXZXXZZZ-X-ZZZZAAAZ-MZZ--MXZX-M=++MM=MMM=+M-AAAXM-ZM=Z=
+XXXCCCCCCCCXCCCCCCCCCCCCC.CC.CCC.C.C.C.............................+                 C C        C   CC    C CCC  C   CC C     C    C
+$$$BBBBBBBB$BBBBBBBBBBBBB'BB'BBB'B'B'B'''''''''''''''''''''''''''''C
+___HHHHHHHH_HHHHHHHHHHHHHXHHXHHHXHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&&XXXXXXXX&XXXXXXXXXXXXXCXXCXXXCXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""""#""#""""""""""""""""-""""-"""""""-------------------------"---=++IXIAXZXAX----ZXXAZZZ-ZAAAXZZZM=MMXZ-M+"+=-M+===++M-AAXZ-ZXXIZM
+XCCCCXCCXCCCCCCCCCCCCCCCC.CCCC.CCCCCCC.........................+...C           CCCC       C         C    C C+CCC CCCCCC C    C
+$BBBB$BB$BBBBBBBBBBBBBBBB'BBBB'BBBBBBB'''''''''''''''''''''''''C'''                                         C
+_HHHH_HH_HHHHHHHHHHHHHHHHXHHHHXHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXX XXX
+&XXXX&XX&XXXXXXXXXXXXXXXXCXXXXCXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCC CCC
 """""#""""""""""""""""""""""-"""""""---"---------------------------M=+IXXXX-AIX---ZZXAAXZZZXIAXXZ-M-=M-Z-Z=""+M-=MM====--==AZ-X=XXZ-
+CCCCCXCCCCCCCCCCCCCCCCCCCCCC.CCCCCCC...C...........................        C   CCC               C CC C C C++C CC  CCCCCC    C     C
+BBBBB$BBBBBBBBBBBBBBBBBBBBBB'BBBBBBB'''B'''''''''''''''''''''''''''                                        CC
+HHHHH_HHHHHHHHHHHHHHHHHHHHHHXHHHHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXX&XXXXXXXXXXXXXXXXXXXXXXCXXXXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#""###""#"""""""""""""""""""""-"""""----------------------------"-X==AAXZZZAX---ZZZAAZZXZXIAIXX----=--Z=-+-++MX=====MMZZXA1AZXZZZZM
+CXCCXXXCCXCCCCCCCCCCCCCCCCCCCCC.CCCCC............................+.           CCC               CCCCCCC CCC.CC  CCCCC
+B$BB$$$BB$BBBBBBBBBBBBBBBBBBBBB'BBBBB''''''''''''''''''''''''''''C'                                        '
+H_HH___HH_HHHHHHHHHHHHHHHHHHHHHXHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X                                        X
+X&XX&&&XX&XXXXXXXXXXXXXXXXXXXXXCXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C                                        C
 ##"""#""""""##""""""""-"""""-"""""""----"--"-------------------"---AI=XXAZZXZZM---ZXAIZXZXXXIAI+AM--MM--==--++M-==+=M-ZZMZZIAZMMM-X-
+XXCCCXCCCCCCXXCCCCCCCC.CCCCC.CCCCCCC....C..C...................+...            CCC                CC  CCCC..CC CCCCC C           C C
+$$BBB$BBBBBB$$BBBBBBBB'BBBBB'BBBBBBB''''B''B'''''''''''''''''''C'''                                       ''
+__HHH_HHHHHH__HHHHHHHHXHHHHHXHHHHHHHXXXXHXXHXXXXXXXXXXXXXXXXXXX XXX                                       XX
+&&XXX&XXXXXX&&XXXXXXXXCXXXXXCXXXXXXXCCCCXCCXCCCCCCCCCCCCCCCCCCC CCC                                       CC
 """#""""""""""#""""""""""-"""""""""""---------------------------"--I==XXIZZXMM--ZZZAAAXAXAXZXA+1Z=MM-M--M+-"++-M++===M---XXXX-M==-ZX
+CCCXCCCCCCCCCCXCCCCCCCCCC.CCCCCCCCCCC...........................+..           CC                 C  C CC C.+CCC CCCCC CCC    C CCC
+BBB$BBBBBBBBBB$BBBBBBBBBB'BBBBBBBBBBB'''''''''''''''''''''''''''C''                                       'C
+HHH_HHHHHHHHHH_HHHHHHHHHHXHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX XX                                       X
+XXX&XXXXXXXXXX&XXXXXXXXXXCXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC CC                                       C
 """#"#""##"#""""""""""""""""""""-"""""-"---------------------------+I=XX=IXX-XZ-ZZZ=AAXAXXZ--X=AXM---MZZM="+""==+====MM-ZX--ZZ-M=MZI
+CCCXCXCCXXCXCCCCCCCCCCCCCCCCCCCC.CCCCC.C...........................         C  C           CC     CCC    C+C++CCCCCCC  C  CC  C C
+BBB$B$BB$$B$BBBBBBBBBBBBBBBBBBBB'BBBBB'B'''''''''''''''''''''''''''                                       C CC
+HHH_H_HH__H_HHHHHHHHHHHHHHHHHHHHXHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXX&X&XX&&X&XXXXXXXXXXXXXXXXXXXXCXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #"""#"##"""""""""#""""""-"""""""""""""-"---------------------------=A+AAAI=AXXX--ZXAXIAIXXXZZZIX----Z-XA-M=++"+=++M=+=MZ--MMM--=M-X=
+XCCCXCXXCCCCCCCCCXCCCCCC.CCCCCCCCCCCCC.C...........................            CC               CCCC C  C CCC+CCCC CCC  CC   CCC C
+$BBB$B$$BBBBBBBBB$BBBBBB'BBBBBBBBBBBBB'B'''''''''''''''''''''''''''                                          C
+_HHH_H__HHHHHHHHH_HHHHHHXHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&XXX&X&&XXXXXXXXX&XXXXXXCXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """#"""""#""""""""""-""""""""""""""-""-----------------------------IAIIIIA1XAXXZZAIAIIXAAXAAXZAA--XZZXXIXZX-="==+++===---MMMMM==-ZA1
+CCCXCCCCCXCCCCCCCCCC.CCCCCCCCCCCCCC.CC.............................                             CC         CC+CCCCCCCCCCC     CCC
+BBB$BBBBB$BBBBBBBBBB'BBBBBBBBBBBBBB'BB'''''''''''''''''''''''''''''                                          C
+HHH_HHHHH_HHHHHHHHHHXHHHHHHHHHHHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXX&XXXXX&XXXXXXXXXXCXXXXXXXXXXXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ""##"#"""#""#""""""""""""""""""""""-"""----------------------"----"AAXI=XX+XZAXZXIIIIIZXXIAAAXAAZ-ZXAII=IXAZM+M=+=+MMMMZ-MM--M=MZZX=
+CCXXCXCCCXCCXCCCCCCCCCCC+CCCCCCCCCC.CCC......................+....+                              C           C CCCC     C  CC C
+BB$$B$BBB$BB$BBBBBBBBBBBCBBBBBBBBBB'BBB''''''''''''''''''''''C''''C
+HH__H_HHH_HH_HHHHHHHHHHH HHHHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXX XXXX
+XX&&X&XXX&XX&XXXXXXXXXXX XXXXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCC CCCC
 ""###"##"""""#"""""#"-""-"-"""""-""-------------------------------+XAAIIZX+AX=XZXIIIIIXAA=AAAAAAZXA=++++==AXZMM-MZMMMM-Z-MMMMMM-Z-ZI
+CCXXXCXXCCCCCXCCCCCXC.CC.C.CCCCC.CC...............................C                                            C      C C      C C
+BB$$$B$$BBBBB$BBBBB$B'BB'B'BBBBB'BB'''''''''''''''''''''''''''''''
+HH___H__HHHHH_HHHHH_HXHHXHXHHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XX&&&X&&XXXXX&XXXXX&XCXXCXCXXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""#"#"#"""""""""""""""""""---"-""-----"--"-----------------------ZAX=AI=AAAAAXZXXXAAAAAA+IAAIAZZX1--11++==AAMZM=Z+=MZZZ-Z-M-Z=M--ZX
+XCCXCXCXCCCCCCCCCCCCCCCCCCC...C.CC.....C..C.......................                                              C CC    C C C C CC
+$BB$B$B$BBBBBBBBBBBBBBBBBBB'''B'BB'''''B''B'''''''''''''''''''''''
+_HH_H_H_HHHHHHHHHHHHHHHHHHHXXXHXHHXXXXXHXXHXXXXXXXXXXXXXXXXXXXXXXX
+&XX&X&X&XXXXXXXXXXXXXXXXXXXCCCXCXXCCCCCXCCXCCCCCCCCCCCCCCCCCCCCCCC
 """""##"""""""""""""""""""-"""""""""""""-"------------------------+IAIIAIAXIXI=AAIXAIAAXA=I1=AXZXI1-1=+====IX--=MM=M-ZXXXZ--ZM===MZX
+CCCCCXXCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCC.C........................                                           CCC  C C     CC  CCC
+BBBBB$$BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBB'B''''''''''''''''''''''''
+HHHHH__HHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXX&&XXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCC
 "##"##"""""#""#"""""""""""""""""""""""----------------------------1AAAAIAAAXA=-+IIXAAAAXXII =AXZA=- +======AZMMM===-Z-ZXZ-====++=-ZZ
+CXXCXXCCCCCXCCXCCCCCCCCCCCCCCCCCCCCCCC............................                                              CCCC C   CCCCCCCCC
+B$$B$$BBBBB$BB$BBBBBBBBBBBBBBBBBBBBBBB''''''''''''''''''''''''''''
+H__H__HHHHH_HH_HHHHHHHHHHHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&&X&&XXXXX&XX&XXXXXXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 #"#"""""""""""#"""""""""-"""""""""""""-"""-----------------------"+XXXIA1AAZII 1IXZX=IIIAII1=XXZI1  +=+II=+AZM--===M--M--=+++++++M--
+XCXCCCCCCCCCCCXCCCCCCCCC.CCCCCCCCCCCCC.CCC.......................+                                            CCCCC CC CCCCCCCCCC CC
+$B$BBBBBBBBBBB$BBBBBBBBB'BBBBBBBBBBBBB'BBB'''''''''''''''''''''''C
+_H_HHHHHHHHHHH_HHHHHHHHHXHHHHHHHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXX
+&X&XXXXXXXXXXX&XXXXXXXXXCXXXXXXXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCC
 ##""#""#""#"""""""""""""""-"-""--"""-----------------------------"=XMZXA1XZ-ZX 1AXXZIIIAXA=+=IZX=1  1+ =I==A-ZZ-=+=M-Z==M=+++"+=++++
+XXCCXCCXCCXCCCCCCCCCCCCCCC.C.CC..CCC.............................+         C                                C  CCCC C CC CCCC+CCCCCC
+$$BB$BB$BB$BBBBBBBBBBBBBBB'B'BB''BBB'''''''''''''''''''''''''''''C                                                           C
+__HH_HH_HH_HHHHHHHHHHHHHHHXHXHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+&&XX&XX&XX&XXXXXXXXXXXXXXXCXCXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#""""#"##"""""""""-""""""-""""""""--"""-------------------------"=XZXAXIAZZZX==XIIXAXXXZXI=AXXA=+  1- +I=IZZZZM+=+=MM+=MM=++"+++"++
+CXCCCCXCXXCCCCCCCCC.CCCCCC.CCCCCCCC..CCC.........................+                                              CCCC  CC  CCC+CCC+CC
+B$BBBB$B$$BBBBBBBBB'BBBBBB'BBBBBBBB''BBB'''''''''''''''''''''''''C                                                           C   C
+H_HHHH_H__HHHHHHHHHXHHHHHHXHHHHHHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXX&X&&XXXXXXXXXCXXXXXXCXXXXXXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCC
 """""""""""""""""""""""""""""""""""--"--"-------------------------IXZZ+A=ZXZZX=IXI=IAZXZXII=AXAA=1  1---=IXZ-MMM++++++++==M=+""+""==
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC..C..C.........................                                          C   CCCCCCCCCC CC++C++CC
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB''B''B'''''''''''''''''''''''''                                                           CC CC
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCC
 """"""""""""-"""""-""""""""""""""--"---"--------------------------IZZX+A=XXIZX=XAA==X-XZZI==AAAXI+--+--1+=Z-==MM+++===-==+===+++++=M
+CCCCCCCCCCCC.CCCCC.CCCCCCCCCCCCCC..C...C..........................                   C                     CCC  CCCCCCCCCCCCCCCCCCC
+BBBBBBBBBBBB'BBBBB'BBBBBBBBBBBBBB''B'''B''''''''''''''''''''''''''
+HHHHHHHHHHHHXHHHHHXHHHHHHHHHHHHHHXXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXXXXXXXXCXXXXXCXXXXXXXXXXXXXXCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC
 #""""#"""#""""""""""""""""-"""-""-""-------"----------------------IMMZ+=1IAAZZXXXAAAX-ZXX=+=IAAX=11--1-1+=XM++M-+=+=MZZZM=+=M==+++=M
+XCCCCXCCCXCCCCCCCCCCCCCCCC.CCC.CC.CC.......C......................                   C                      CC CCCCC     CCC CCCCCC
+$BBBB$BBB$BBBBBBBBBBBBBBBB'BBB'BB'BB'''''''B''''''''''''''''''''''
+_HHHH_HHH_HHHHHHHHHHHHHHHHXHHHXHHXHHXXXXXXXHXXXXXXXXXXXXXXXXXXXXXX
+&XXXX&XXX&XXXXXXXXXXXXXXXXCXXXCXXCXXCCCCCCCXCCCCCCCCCCCCCCCCCCCCCC
 "#""#""""#"#"""""""""""""""""""""--""-"-"-------------------------=-MMI=1AIXZZXXZ-=IAZAAXX=IAAZZ+=+1+111+=AM"+==++++MZZX--MMMM==-=MM
+CXCCXCCCCXCXCCCCCCCCCCCCCCCCCCCCC..CC.C.+......................... C             C                          +CCCCCCC    CC    CCCC
+B$BB$BBBB$B$BBBBBBBBBBBBBBBBBBBBB''BB'B'C'''''''''''''''''''''''''                                          C
+H_HH_HHHH_H_HHHHHHHHHHHHHHHHHHHHHXXHHXHX XXXXXXXXXXXXXXXXXXXXXXXXX
+X&XX&XXXX&X&XXXXXXXXXXXXXXXXXXXXXCCXXCXC CCCCCCCCCCCCCCCCCCCCCCCCC
 "#""""""""""""""""""""""""""""""""-""----------------------------"=-="X==AAXXXZZZM==IXXXIX=IZZ-ZAZII=++1=XZ="=M+++++=M-Z-M--M===M=M-
+CXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CC............................+ CC+                        C            C+C CCCCCC C C CC CCC C C
+B$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB''''''''''''''''''''''''''''C   C                                      C
+H_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """"#""""""""""""""""""""""""-""""-"""-"""------------------------=M+-Z=IXZZZZZZXXIXXXXZAZIA-M-M-MXZA===ZM=""=-=+++++=MM=MMMM+++==-X
+CCCCXCCCCCCCCCCCCCCCCCCCCCCCC.CCCC.CCC.CCC........................  C.                      C C C         C++CCCCCCCCC  C    CCCCCC
+BBBB$BBBBBBBBBBBBBBBBBBBBBBBB'BBBB'BBB'BBB''''''''''''''''''''''''   '                                     CC
+HHHH_HHHHHHHHHHHHHHHHHHHHHHHHXHHHHXHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXX   X
+XXXX&XXXXXXXXXXXXXXXXXXXXXXXXCXXXXCXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCC   C
 """""""""""--"""""""""""-"-""""""""-"--"-------------------------"=-"-+++Z-ZMZZXAXXZZZX=ZZXI-=MMMMM--ZXA=+"+++-M=+++++=++=MMM+++=M-Z
+CCCCCCCCCCC..CCCCCCCCCCC.C.CCCCCCCC.C..C.........................+ C+.C   C                 CC     CC   CC+CCCC CCCCCCCCCC   CCCC C
+BBBBBBBBBBB''BBBBBBBBBBB'B'BBBBBBBB'B''B'''''''''''''''''''''''''C  C'                                    C
+HHHHHHHHHHHXXHHHHHHHHHHHXHXHHHHHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXXXX    X
+XXXXXXXXXXXCCXXXXXXXXXXXCXCXXXXXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCC    C
 #"#"""""""#""""""""""""-"""""""""""""-"---------------------------=I+-"+AZ-Z--ZXXXZ----Z--XXM=-=MZ=MM===+"-"+=-=M======="+=MM=+==MMM
+XCXCCCCCCCXCCCCCCCCCCCC.CCCCCCCCCCCCC.C...........................  C.+   C CC     CCCC CC   CCC  C  CCCC+.+CCCC CCCCCCC+CC  CCCC
+$B$BBBBBBB$BBBBBBBBBBBB'BBBBBBBBBBBBB'B'''''''''''''''''''''''''''   'C                                  C'C            C
+_H_HHHHHHH_HHHHHHHHHHHHXHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX   X                                    X
+&X&XXXXXXX&XXXXXXXXXXXXCXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC   C                                    C
 """"#""""#""""""""""""""-"""""""""""""---------------------------"+I=++AAZZAZZXAXZXZ-MMZZ-ZZ=--=MZ-==++"-"-"+-Z-XZ-=MZM=+--M==+=M---
+CCCCXCCCCXCCCCCCCCCCCCCC.CCCCCCCCCCCCC...........................+  CCC             C    C  CCCC  CCCCC+C+.+CC C  CC   CCCC CCCC CCC
+BBBB$BBBB$BBBBBBBBBBBBBB'BBBBBBBBBBBBB'''''''''''''''''''''''''''C                                     C C'C
+HHHH_HHHH_HHHHHHHHHHHHHHXHHHHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX                                         X
+XXXX&XXXX&XXXXXXXXXXXXXXCXXXXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC                                         C
 ###"#"""##""""""""#"""""""""""""""-"-""""--"----------------------=IMMM-IZZXZZAAZ-AZ-MX-X--M=Z-MZ--MM="+=""+=--AIA-=M--M=MM==++=M-ZA
+XXXCXCCCXXCCCCCCCCXCCCCCCCCCCCCCCC.C.CCCC..C......................     C         C  C  C CC C C  CC  C+CC++CCCC   CC CC C  CCCCC C
+$$$B$BBB$$BBBBBBBB$BBBBBBBBBBBBBBB'B'BBBB''B''''''''''''''''''''''                                    C  CC
+___H_HHH__HHHHHHHH_HHHHHHHHHHHHHHHXHXHHHHXXHXXXXXXXXXXXXXXXXXXXXXX
+&&&X&XXX&&XXXXXXXX&XXXXXXXXXXXXXXXCXCXXXXCCXCCCCCCCCCCCCCCCCCCCCCC
 #"""#""####""#"-"""""""""""""""-""-"-"-"------"-----------------""==MMMMI-AAZZ=XXZXXM--MZ--+M-MZ+-M=M="+""==MM-=AZZ-MM--===MM+++=MZX
+XCCCXCCXXXXCCXC.CCCCCCCCCCCCCCC.CC.C.C.C......C.................++       C           CC  CCC C   C C C+C++CC  C    C  CCCCC  CCCC
+$BBB$BB$$$$BB$B'BBBBBBBBBBBBBBB'BB'B'B'B''''''B'''''''''''''''''CC                                    C CC
+_HHH_HH____HH_HXHHHHHHHHHHHHHHHXHHXHXHXHXXXXXXHXXXXXXXXXXXXXXXXX
+&XXX&XX&&&&XX&XCXXXXXXXXXXXXXXXCXXCXCXCXCCCCCCXCCCCCCCCCCCCCCCCC
 #""""""##""#""""""""""""""""""""-"""""--"-""-----"----------------I=-M-+AAAIXX=XIAAX-Z--ZZM=-Z-ZXMM+-M++++-M-ZZAXXZZMMMZ-M=======-Z-
+XCCCCCCXXCCXCCCCCCCCCCCCCCCCCCCC.CCCCC..C.CC.....C................  C CC            C CC   CC C    CC CCCCC C           C CCCCCCCC C
+$BBBBBB$$BB$BBBBBBBBBBBBBBBBBBBB'BBBBB''B'BB'''''B''''''''''''''''
+_HHHHHH__HH_HHHHHHHHHHHHHHHHHHHHXHHHHHXXHXHHXXXXXHXXXXXXXXXXXXXXXX
+&XXXXXX&&XX&XXXXXXXXXXXXXXXXXXXXCXXXXXCCXCXXCCCCCXCCCCCCCCCCCCCCCC
 ""##"""""#"""""""""""""""""-"""""""""""-"-"-----------------------AIMMZ+AAAIAA+AIXXX-XZ=XZM=-X--ZMM+-=+=M-ZZZZXAAXXZ--M---+++==M-ZZM
+CCXXCCCCCXCCCCCCCCCCCCCCCCC.CCCCCCCCCCC.C.C.......................     C            C  C   CC CC   CCCCC C          CC CCCCCCCC C
+BB$$BBBBB$BBBBBBBBBBBBBBBBB'BBBBBBBBBBB'B'B'''''''''''''''''''''''
+HH__HHHHH_HHHHHHHHHHHHHHHHHXHHHHHHHHHHHXHXHXXXXXXXXXXXXXXXXXXXXXXX
+XX&&XXXXX&XXXXXXXXXXXXXXXXXCXXXXXXXXXXXCXCXCCCCCCCCCCCCCCCCCCCCCCC
 ""#"#""#"##"""""""""-""""""""""""""""""-"----"--------------------AAMMZ-ZXZ=XXAIIXAAXXXZZZ-MAZ--Z-MMX=+=MZXAAXAAAXZZ-Z-MM==++=MMMZ-=
+CCXCXCCXCXXCCCCCCCCC.CCCCCCCCCCCCCCCCCC.C....C....................     C                  C   CC C   CCC            C C  CCCCC    CC
+BB$B$BB$B$$BBBBBBBBB'BBBBBBBBBBBBBBBBBB'B''''B''''''''''''''''''''
+HH_H_HH_H__HHHHHHHHHXHHHHHHHHHHHHHHHHHHXHXXXXHXXXXXXXXXXXXXXXXXXXX
+XX&X&XX&X&&XXXXXXXXXCXXXXXXXXXXXXXXXXXXCXCCCCXCCCCCCCCCCCCCCCCCCCC
 "#"#""""""""""""""""""""""""""-"""""""""-"""-"--------------------IX-MZM-ZX+XAXIAXA=XAX=--MZAA-ZM-MZZM+=ZAXAAAIIAXZXZZ-===M=+=MMMMMM
+CXCXCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCC.CCC.C....................  C   C               CC    C  C    CC              CCCC CCC
+B$B$BBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBB'BBB'B''''''''''''''''''''
+H_H_HHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHXHHHXHXXXXXXXXXXXXXXXXXXXX
+X&X&XXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXCXXXCXCCCCCCCCCCCCCCCCCCCC
 ""#"#""""#""""""-"""""""""""""-"""-""-"-"-------------------------IAM=MM-ZX=XI-IIX==XXX=Z---XX+I-Z-M-=+MMZXAA=IIXXZZZZ--==-M+MM---M=
+CCXCXCCCCXCCCCCC.CCCCCCCCCCCCC.CCC.CC.C.C.........................   C  C     C          CCC    C C CCC               CCCCC C  CCC C
+BB$B$BBBB$BBBBBB'BBBBBBBBBBBBB'BBB'BB'B'B'''''''''''''''''''''''''
+HH_H_HHHH_HHHHHHXHHHHHHHHHHHHHXHHHXHHXHXHXXXXXXXXXXXXXXXXXXXXXXXXX
+XX&X&XXXX&XXXXXXCXXXXXXXXXXXXXCXXXCXXCXCXCCCCCCCCCCCCCCCCCCCCCCCCC
 #"#"""""""#""""""""""""""""""""""""""----"----------------------"#ZX-"MM-XZAA=-ZZXAXZ-A=ZZMZXX1+XAMMM=+=M-AAAI==AAXZ---MMM-M-M==M-M=
+XCXCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC....C......................CX  C+  C     C      C               CCC C          CCC   C C CC C C
+$B$BBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBB''''B''''''''''''''''''''''B$   C
+_H_HHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHXXXXHXXXXXXXXXXXXXXXXXXXXXXH_
+&X&XXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXCCCCXCCCCCCCCCCCCCCCCCCCCCCX&
 #"#"""#"""#""""#"""#"#"""""""""""""--""""""-----------------------MZ="MM--ZXI=ZZZZAXZZAXXA-XZA+-XZZZ-MMM=-AAAA+=IAXZ-MZMMMM--M======
+XCXCCCXCCCXCCCCXCCCXCXCCCCCCCCCCCCC..CCCCCC.......................  C+  CC                C         C   CC          C      CC CCCCCC
+$B$BBB$BBB$BBBB$BBB$B$BBBBBBBBBBBBB''BBBBBB'''''''''''''''''''''''   C
+_H_HHH_HHH_HHHH_HHH_H_HHHHHHHHHHHHHXXHHHHHHXXXXXXXXXXXXXXXXXXXXXXX
+&X&XXX&XXX&XXXX&XXX&X&XXXXXXXXXXXXXCCXXXXXXCCCCCCCCCCCCCCCCCCCCCCC
 "###""""""#""""""""-"""""""--"""""""-"-----"----"------------"--"--M+"M-MZZZ=1XX-ZXXAA1AZA=AZIA+XXAAXI-Z=-XXAX=IIAAZ-M-M=MMMM==M=+++
+CXXXCCCCCCXCCCCCCCC.CCCCCCC..CCCCCCC.C.....C....C............+..+.. C+ C        C                     C CC          C C C    CC CCCC
+B$$$BBBBBB$BBBBBBBB'BBBBBBB''BBBBBBB'B'''''B''''B''''''''''''C''C''  C
+H___HHHHHH_HHHHHHHHXHHHHHHHXXHHHHHHHXHXXXXXHXXXXHXXXXXXXXXXXX XX XX
+X&&&XXXXXX&XXXXXXXXCXXXXXXXCCXXXXXXXCXCCCCCXCCCCXCCCCCCCCCCCC CC CC
 """"""""""""""""""""""-""""""""""""--"-"-"------------------------"=++-=-IAAIAXXXAAZXA=AIZAAA==MI1=AMZX-=ZAZZXAIXXXZ-M-MMMMM===M==+=
+CCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCC..C.C.C........................+CCCCCC                     C        CC           C C     CCC CCCC
+BBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBB''B'B'B''''''''''''''''''''''''C
+HHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHXXHXHXHXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXCCXCXCXCCCCCCCCCCCCCCCCCCCCCCCC
 """"""#""""""#"""""""""""""""-"""""""""---------------------------"M+=-+=AAAXZXZZAAZAXXZ=M-AII"=ZXIAZZZM+-XM-ZXXZ------MMM===MM===++
+CCCCCCXCCCCCCXCCCCCCCCCCCCCCC.CCCCCCCCC...........................+ CCCCC                 C   +C        CC  C    CCCCCC   CCC  CCCCC
+BBBBBB$BBBBBB$BBBBBBBBBBBBBBB'BBBBBBBBB'''''''''''''''''''''''''''C                           C
+HHHHHH_HHHHHH_HHHHHHHHHHHHHHHXHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXX&XXXXXX&XXXXXXXXXXXXXXXCXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#""""""#"""""""""""""""""""""""-""""""-----------------------------"+M"MAAXAZAMZ-ZZZ--X+--X=++-=+ZXAA-=+M-MM-ZZ-==Z--M--++++M---===
+CXCCCCCCXCCCCCCCCCCCCCCCCCCCCCCC.CCCCCC............................C+C +         C   CC  CC   CCCC    CCC C  C  CCC CC CCCCCC CCCCCC
+B$BBBBBB$BBBBBBBBBBBBBBBBBBBBBBB'BBBBBB'''''''''''''''''''''''''''' C  C
+H_HHHHHH_HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXXXX&XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """""""""#""#"""""""""-""""""""""""""-"-"------------"----------------"--==AZ-ZM-Z-XMM-=XAIXI1ZX-"MXAIZ==XZ===--M==Z---Z-++=+=-XZ-MM
+CCCCCCCCCXCCXCCCCCCCCC.CC+CCCCCCCCCCC.C.C............+.............C..+.C    C  C C   CC        C+     CC  CCCCC CC CCC CCCCCCC  C
+BBBBBBBBB$BB$BBBBBBBBB'BBCBBBBBBBBBBB'B'B''''''''''''C''''''''''''' ''C'                         C
+HHHHHHHHH_HH_HHHHHHHHHXHH HHHHHHHHHHHXHXHXXXXXXXXXXXX XXXXXXXXXXXXX XX X
+XXXXXXXXX&XX&XXXXXXXXXCXX XXXXXXXXXXXCXCXCCCCCCCCCCCC CCCCCCCCCCCCC CC C
 #"""""""""""""""""""""-""""-"-""""""----""-------"-----"-----------=--"-=X=XZ-=MMIZXXAZ+XAX=-A--X+MX=+XM==I==--M=====M-M=++===-Z--MM
+XCCCCCCCCCCCCCCCCCCCCC.CCCC.C.CCCCCC....CC.......C.....+...........C..+.C    C         C   CC CC C      C  CCCC CCCCC C CCCCCCC CC
+$BBBBBBBBBBBBBBBBBBBBB'BBBB'B'BBBBBB''''BB'''''''B'''''C''''''''''' ''C'
+_HHHHHHHHHHHHHHHHHHHHHXHHHHXHXHHHHHHXXXXHHXXXXXXXHXXXXX XXXXXXXXXXX XX X
+&XXXXXXXXXXXXXXXXXXXXXCXXXXCXCXXXXXXCCCCXXCCCCCCCXCCCCC CCCCCCCCCCC CC C
 "#""""""""#""""""""""""""""""""""""""--"--------------------------"+-""-MZZXAM=Z-XAAXXMZAM+"=+"+AM-ZI=ZMM++M=M--++===--=+==++=------
+CXCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC..C..........................+C.C+.        C         C+CC+C  C         C CCCCCCCCCCCCCCCCCCCCCC
+B$BBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBB''B''''''''''''''''''''''''''C 'BC'                   C  C
+H_HHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX  XH X
+X&XXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC  CX C
 "##"##"""""#"""""""""""""""""-"""""""""--""------------------------"-"+-+--XAZX-=MXX===MAZ"-Z=-"MIAAAIZMX=+Z=+M-=+-M=MM++==++=-X----
+CXXCXXCCCCCXCCCCCCCCCCCCCCCCC.CCCCCCCCC..CC........................+.CC.CCC    CC   C C   +. C.+            CC CCCC C  CCCCCCCC CCCC
+B$$B$$BBBBB$BBBBBBBBBBBBBBBBB'BBBBBBBBB''BB''''''''''''''''''''''''C'B '                  C'  'C
+H__H__HHHHH_HHHHHHHHHHHHHHHHHXHHHHHHHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXX XH X                   X  X
+X&&X&&XXXXX&XXXXXXXXXXXXXXXXXCXXXXXXXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCC CX C                   C  C
 ""-"##"""-"""""""""""""""""-"-""""-"-"-"--------------"-----------"-""+-"-XIIX+Z-MAAZA=-=Z--=-""=X==+I-ZIIIXM==M=+=+==M=+==++=MZ---X
+CC.CXXCCC.CCCCCCCCCCCCCCCCC.C.CCCC.C.C.C..............+...........+.CCC.+C    C C     CC  .. C++C C   C      CC CCCCCC CCCCCCC  CCC
+BB'B$$BBB'BBBBBBBBBBBBBBBBB'B'BBBB'B'B'B''''''''''''''C'''''''''''C'BB 'C                 ''  CC
+HHXH__HHHXHHHHHHHHHHHHHHHHHXHXHHHHXHXHXHXXXXXXXXXXXXXX XXXXXXXXXXX XHH X                  XX
+XXCX&&XXXCXXXXXXXXXXXXXXXXXCXCXXXXCXCXCXCCCCCCCCCCCCCC CCCCCCCCCCC CXX C                  CC
 """"""""""#"""""""""""""-""""-"-"--""-"---"--------------------------"="MZXXAZ+--ZXXXIXMAZ+M+--"+="-AA=XIIXZMM===+++=MM=====MM-X----
+CCCCCCCCCCXCCCCCCCCCCCCC.CCCC.C.C..CC.C...C..........................CC+      CCC         C  C.+CC+C  C       CCCCCCC  CCCCC  C CCCC
+BBBBBBBBBB$BBBBBBBBBBBBB'BBBB'B'B''BB'B'''B''''''''''''''''''''''''''B C                      'C  C
+HHHHHHHHHH_HHHHHHHHHHHHHXHHHHXHXHXXHHXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXH                        X
+XXXXXXXXXX&XXXXXXXXXXXXXCXXXXCXCXCCXXCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCX                        C
 """""""#"""""""""""""""""""---"-"-""--"-----------------------------"-+=ZIXII-=ZZ-XAXIAZAI==IZ--""+=ZI+MAAZ-MAMM=+===M-MMMMMMMMZ--MM
+CCCCCCCXCCCCCCCCCCCCCCCCCCC...C.C.CC..C.............................+.CC     CC  C        C   ..++CC  C    C    CCCCC C         CC
+BBBBBBB$BBBBBBBBBBBBBBBBBBB'''B'B'BB''B'''''''''''''''''''''''''''''C'                        ''CC
+HHHHHHH_HHHHHHHHHHHHHHHHHHHXXXHXHXHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X                        XX
+XXXXXXX&XXXXXXXXXXXXXXXXXXXCCCXCXCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C                        CC
 """"##"#""""""""""""""""""-"--"""""---"--"--------------------------"-"=M=XA+--Z-M-XXX+IAX-ZXM-"""=-ZIMMIXZ=MXZM=++=+=M--==M===M=M==
+CCCCXXCXCCCCCCCCCCCCCCCCCC.C..CCCCC...C..C..........................+.+C     CC C C       C   .+++CC       C    CCCCCC CCCC CCC C CC
+BBBB$$B$BBBBBBBBBBBBBBBBBB'B''BBBBB'''B''B''''''''''''''''''''''''''C'C                       'CCC
+HHHH__H_HHHHHHHHHHHHHHHHHHXHXXHHHHHXXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX X                        X
+XXXX&&X&XXXXXXXXXXXXXXXXXXCXCCXXXXXCCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC C                        C
 "##"""#"""""""""--"""""-"-""""-"--"""-----"--"-----------------------"-M+ZIA=AX--M+MXA+A=ZM"-M""""=1==Z=XAZ+++++""=M++=Z-=====++==M=
+CXXCCCXCCCCCCCCC..CCCCC.C.CCCC.C..CCC.....C..C.......................C. C      CC C        +C ++++C    C   CCCCC++C CCC CCCCCCCCCC C
+B$$BBB$BBBBBBBBB''BBBBB'B'BBBB'B''BBB'''''B''B'''''''''''''''''''''''B'                    C  CCCC              CC
+H__HHH_HHHHHHHHHXXHHHHHXHXHHHHXHXXHHHXXXXXHXXHXXXXXXXXXXXXXXXXXXXXXXXHX
+X&&XXX&XXXXXXXXXCCXXXXXCXCXXXXCXCCXXXCCCCCXCCXCCCCCCCCCCCCCCCCCCCCCCCXC
 """#""""""""""#""""""""""-"""""-"""-"---"---------------------------"""Z=ZIAAZZ-ZM-"Z1IAI-++-X+"-"=+-IM+XA=="-""+"=Z=+=Z-===M=+"+==+
+CCCXCCCCCCCCCCXCCCCCCCCCC.CCCCC.CCC.C...C...........................+CC C      C  C+       CC C+.+C    C  CC+.++C+C CCC CCCC CC+CCCC
+BBB$BBBBBBBBBB$BBBBBBBBBB'BBBBB'BBB'B'''B'''''''''''''''''''''''''''CBB            C           C'C          C'CC C             C
+HHH_HHHHHHHHHH_HHHHHHHHHHXHHHHHXHHHXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXX HH                         X            X
+XXX&XXXXXXXXXX&XXXXXXXXXXCXXXXXCXXXCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC XX                         C            C
 "#"""""""""""""""""""""""""""""-"""-----"-------------------------------MZI=XZZX--M"+AA=+-+-M=Z="+M+ A+MZX==+---""+I-+=M-MM==++""=++
+CXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCC.....C..............................C        CC +C      C   C+C    C   CCC...++C CCC C  CCCC++CCC
+B$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB'''''B''''''''''''''''''''''''''''''            C            C            '''CC             CC
+H_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                                      XXX
+X&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                                      CCC
 "#"#""""""""#""""""""""""-""""-""""""--"-----------------------------""=MZA1XZXX-++M-ZA===IZM=A+++=  A==-=Z-M+-+-"-=Z++++==+++++"+"+
+CXCXCCCCCCCCXCCCCCCCCCCCC.CCCC.CCCCCC..C.............................++C        CCC .          CCCC   CCC  C C.C.+C  CCCCCCCCCCC+C+C
+B$B$BBBBBBBB$BBBBBBBBBBBB'BBBB'BBBBBB''B'''''''''''''''''''''''''''''CC             '                         ' 'C              C C
+H_H_HHHHHHHH_HHHHHHHHHHHHXHHHHXHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX               X                         X X
+X&X&XXXXXXXX&XXXXXXXXXXXXCXXXXCXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC               C                         C C
 """""-"""##""""""""""""""-"-"""-"-"-"--"-----------------------------"=+MZZ=ZZXXX====ZAI-====A=+=M-- A-+-AXXXA"=""A+IZ=+"++"""++""""
+CCCCC.CCCXXCCCCCCCCCCCCCC.C.CCC.C.C.C..C.............................+CC         CCCC   C   C  CC C   CCC     +C++    CC+CC+++CC++++
+BBBBB'BBB$$BBBBBBBBBBBBBB'B'BBB'B'B'B''B'''''''''''''''''''''''''''''C                                        C CC      C  CCC  CCCC
+HHHHHXHHH__HHHHHHHHHHHHHHXHXHHHXHXHXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXXXXCXXX&&XXXXXXXXXXXXXXCXCXXXCXCXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "#"""""""""""""""""""""-""---"""-"""--"------------------------------""+MZAA-MZI=ZX=X1XA-1A=ZZI=XM-A+=Z-MMMZXZ-ZZ-==A1I-==+"+=+++"++
+CXCCCCCCCCCCCCCCCCCCCCC.CC...CCC.CCC..C..............................++C    C      C    C      C  C    C      C  C     CCCC+CCCCC+CC
+B$BBBBBBBBBBBBBBBBBBBBB'BB'''BBB'BBB''B''''''''''''''''''''''''''''''CC                                                    C     C
+H_HHHHHHHHHHHHHHHHHHHHHXHHXXXHHHXHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&XXXXXXXXXXXXXXXXXXXXXCXXCCCXXXCXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ##"##"""#"#"""""""-"""""-"""""""-"""----------------------------------"-=A=I=MM=+XZM--IX-=MA==IXMX=A==XXMMM-AZXXXZ+=I1+X--M""=++++++
+XXCXXCCCXCXCCCCCCC.CCCCC.CCCCCCC.CCC..................................+.C           C   C                  C            CC ++CCCCCCC
+$$B$$BBB$B$BBBBBBB'BBBBB'BBBBBBB'BBB''''''''''''''''''''''''''''''''''C'                                                   CC
+__H__HHH_H_HHHHHHHXHHHHHXHHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X
+&&X&&XXX&X&XXXXXXXCXXXXXCXXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
 #"""#"###"""""""""-"""""""""""""--"-"--"-"-"--------------------------""+AI=1XM1 AX-Z++=+=MA=I=1-Z====XZZAAZXXAAXZII===Z-AI-=+""+""+
+XCCCXCXXXCCCCCCCCC.CCCCCCCCCCCCC..C.C..C.C.C..........................+CC          C            C                       C  CCC++C++C
+$BBB$B$$$BBBBBBBBB'BBBBBBBBBBBBB''B'B''B'B'B''''''''''''''''''''''''''CB                                                      CC CC
+_HHH_H___HHHHHHHHHXHHHHHHHHHHHHHXXHXHXXHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXX H
+&XXX&X&&&XXXXXXXXXCXXXXXXXXXXXXXCCXCXCCXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCC X
 ""#"##""""#"#"""-"""""""""-""""--"--""""------------------------""""""M-+AZI+=AI ==ZX=I- +ZZAX=A=MAIA=X+XAZZZXXXXXXXIIIZ+X1IZ"-"+""+
+CCXCXXCCCCXCXCCC.CCCCCCCCC.CCCC..C..CCCC........................++++++ .C                     C        C                C    +.+C++C
+BB$B$$BBBB$B$BBB'BBBBBBBBB'BBBB''B''BBBB''''''''''''''''''''''''CCCCCC '                                                     C'C CC
+HH_H__HHHH_H_HHHXHHHHHHHHHXHHHHXXHXXHHHHXXXXXXXXXXXXXXXXXXXXXXXX       X                                                      X
+XX&X&&XXXX&X&XXXCXXXXXXXXXCXXXXCCXCCXXXXCCCCCCCCCCCCCCCCCCCCCCCC       C                                                      C
 ###"""#"-"#"""""""""""""-"-"-"""""-"----"-"----"--------------------""=+=IZA=+AA-AAII=I  -=A==+"MAXA=IZZI-"+AAAZ+AXAXXAZ-X==A-+""+++
+XXXCCCXC.CXCCCCCCCCCCCCC.C.C.CCCCC.C....C.C....C....................++CCC                C    C+         C+C            C    CC++CCC
+$$$BBB$B'B$BBBBBBBBBBBBB'B'B'BBBBB'B''''B'B''''B''''''''''''''''''''CC                         C          C                    CC
+___HHH_HXH_HHHHHHHHHHHHHXHXHXHHHHHXHXXXXHXHXXXXHXXXXXXXXXXXXXXXXXXXX
+&&&XXX&XCX&XXXXXXXXXXXXXCXCXCXXXXXCXCCCCXCXCCCCXCCCCCCCCCCCCCCCCCCCC
 ""#"""#""""""""""""-""""-""-"""-"--------"----------------------------"--AZII1IA=AZA+=+  =ZI==-"-XAM=IXZIZ"-XXZ-AAAAZMZZZXXAAIX+-"++
+CCXCCCXCCCCCCCCCCCC.CCCC.CC.CCC.C........C............................+CC                C    C+.         +.   C               C.+CC
+BB$BBB$BBBBBBBBBBBB'BBBB'BB'BBB'B''''''''B''''''''''''''''''''''''''''C                        C'         C'                    'C
+HH_HHH_HHHHHHHHHHHHXHHHHXHHXHHHXHXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX                          X          X                    X
+XX&XXX&XXXXXXXXXXXXCXXXXCXXCXXXCXCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC                          C          C                    C
 ""#""#""""##""""""""""""--"""-"-""-"""--"---"--------------------------Z-XXI=++IIIZXA-1+1Z-ZX=I---AZ+=IIXAM+IAMMAXAA-M-ZZAXZZ==-""++
+CCXCCXCCCCXXCCCCCCCCCCCC..CCC.C.CC.CCC..C...C.......................... C                 C    C.C         C        C C        C++CC
+BB$BB$BBBB$$BBBBBBBBBBBB''BBB'B'BB'BBB''B'''B''''''''''''''''''''''''''                         '                               CC
+HH_HH_HHHH__HHHHHHHHHHHHXXHHHXHXHHXHHHXXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXX                         X
+XX&XX&XXXX&&XXXXXXXXXXXXCCXXXCXCXXCXXXCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC                         C
 "###"""#""""-""""""""""""""-"-""-"--""---"-----------------------------ZMXAA=1 +=IAI=- AM1++M==I""XZ--AI=ZAXAMMMZAXZZ-XZXXZZXIIA-MZ-
+CXXXCCCXCCCC.CCCCCCCCCCCCCC.C.CC.C..CC...C.............................                    C    ++  CC               C          C  C
+B$$$BBB$BBBB'BBBBBBBBBBBBBB'B'BB'B''BB'''B'''''''''''''''''''''''''''''                         CC
+H___HHH_HHHHXHHHHHHHHHHHHHHXHXHHXHXXHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+X&&&XXX&XXXXCXXXXXXXXXXXXXXCXCXXCXCCXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 "##""#"#""""""""""""""""""""""""""---""-"------------------------------MMXIAI  ==IAAI- -"-A"MZII+-AA-Z=XIZZZZ=A-ZXX--Z-AXIXA=AAXXXAX
+CXXCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCC...CC.C..............................                C+C +    C.  C          C   CC C
+B$$BB$B$BBBBBBBBBBBBBBBBBBBBBBBBBB'''BB'B''''''''''''''''''''''''''''''                 C  C     '
+H__HH_H_HHHHHHHHHHHHHHHHHHHHHHHHHHXXXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                          X
+X&&XX&X&XXXXXXXXXXXXXXXXXXXXXXXXXXCCCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                          C
 "##""####"""""#"""""""""-""""""""--"-""-------------------------"------"--IAI+1+=IAXA11-"+AM-"M-+"ZA-XIZXIXXXA=ZZXA-M-ZAXAXZXXAXXXAX
+CXXCCXXXXCCCCCXCCCCCCCCC.CCCCCCCC..C.CC.........................+......+CC             C+C  C+ CCC  C              C C
+B$$BB$$$$BBBBB$BBBBBBBBB'BBBBBBBB''B'BB'''''''''''''''''''''''''C''''''C                C    C   B
+H__HH____HHHHH_HHHHHHHHHXHHHHHHHHXXHXHHXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX                          H
+X&&XX&&&&XXXXX&XXXXXXXXXCXXXXXXXXCCXCXXCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC                          X
 "#"""#"##"#""""""""""""""""""-""""""""-"------------------------"-------Z=AAX=I+=+IZZIX+-"XZ+"=""""XZAXZII1AAZ--ZXAX--AXA-IZ-ZZZZXXX
+CXCCCXCXXCXCCCCCCCCCCCCCCCCCC.CCCCCCCC.C........................+....... C             C.+  CCC+CC+           CC    CC   C  C
+B$BBB$B$$B$BBBBBBBBBBBBBBBBBB'BBBBBBBB'B''''''''''''''''''''''''C'''''''                'C   B CBBC
+H_HHH_H__H_HHHHHHHHHHHHHHHHHHXHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX                X    H  HH
+X&XXX&X&&X&XXXXXXXXXXXXXXXXXXCXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC                C    X  XX
 #""""##""#""""""""""""""-""-"""""-""-"--""-----------------"------"-----MMZZX1I=+-AI-MX+-"=X=-=-""-ZAI=XAA AXZ-XZXXIXZZAZMXIZZ-ZZ-ZA
+XCCCCXXCCXCCCCCCCCCCCCCC.CC.CCCCC.CC.C..CC.................+......+.....            C  C.+C C.C.CC.           C               C  C
+$BBBB$$BB$BBBBBBBBBBBBBB'BB'BBBBB'BB'B''BB'''''''''''''''''C''''''C'''''                'C   ' 'BB'
+_HHHH__HH_HHHHHHHHHHHHHHXHHXHHHHHXHHXHXXHHXXXXXXXXXXXXXXXXX XXXXXX XXXXX                X    X XHHX
+&XXXX&&XX&XXXXXXXXXXXXXXCXXCXXXXXCXXCXCCXXCCCCCCCCCCCCCCCCC CCCCCC CCCCC                C    C CXXC
 "##"""""""#""""""""""-"""""""""""""-"---------------------------"-"-----"M-ZZ=I+=AI=Z"--="-XX"--""+ZAI+"=A=IXZ-AAZ-----MMMXAAXI-XZXX
+CXXCCCCCCCXCCCCCCCCCC.CCCCCCCCCCCCC.C...........................+.+.....+ C          +CCC+.  +..CCC   C+C     C   CCCCC        C
+B$$BBBBBBB$BBBBBBBBBB'BBBBBBBBBBBBB'B'''''''''''''''''''''''''''C'C'''''C            C   C'  C''BB     C
+H__HHHHHHH_HHHHHHHHHHXHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX X XXXXX                  X   XXHH
+X&&XXXXXXX&XXXXXXXXXXCXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCC                  C   CCXX
 "##"-"""""""""""""""""""-"""""""""""""--"-------------------------------"--=ZAI1=ZX+AM=+A+-+I+--""X+IA""-ZXZ--Z-Z-=MMMZ+=--AIXAXAZXX
+CXXC.CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCC..C...............................+CCC          CC C.C C..C+    +C.   CC C CC    CCCC
+B$$B'BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBB''B'''''''''''''''''''''''''''''''C                 '   ''BC    CB'
+H__HXHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                  X   XXH      HX
+X&&XCXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                  C   CCX      XC
 ##"#"""#"""""""""""""-""-"""""""-"-"""----------------------------------"M-"=XA=IX-I=IXZAM="-X""-M-1IAM""+M+"+--M++MM=-=MZ-AAAXXZXXZ
+XXCXCCCXCCCCCCCCCCCCC.CC.CCCCCCC.C.CCC..................................+ C+C     C       C+C C+.      CCC C+CCC CC  CCC  C
+$$B$BBB$BBBBBBBBBBBBB'BB'BBBBBBB'B'BBB''''''''''''''''''''''''''''''''''C  C               C  BC'      BB   C
+__H_HHH_HHHHHHHHHHHHHXHHXHHHHHHHXHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                      H X      HH
+&&X&XXX&XXXXXXXXXXXXXCXXCXXXXXXXCXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                      X C      XX
 ""#"""#""""--""""""""""-""--""""""-"""-"----------------"-------------"--+M+"XXAAAAA=+I=-==-+=-""M- AAX"-+""+MMI-M--M+MM-ZZZZZX-MIAA
+CCXCCCXCCCC..CCCCCCCCCC.CC..CCCCCC.CCC.C................+.............+..C C+           CC CCC.++      +.CCCC   C CC C  C      C
+BB$BBB$BBBB''BBBBBBBBBB'BB''BBBBBB'BBB'B''''''''''''''''C'''''''''''''C''   C                 'CC      C' BB
+HH_HHH_HHHHXXHHHHHHHHHHXHHXXHHHHHHXHHHXHXXXXXXXXXXXXXXXX XXXXXXXXXXXXX XX                     X         X HH
+XX&XXX&XXXXCCXXXXXXXXXXCXXCCXXXXXXCXXXCXCCCCCCCCCCCCCCCC CCCCCCCCCCCCC CC                     C         C XX
 #"##""#"""""""""""""""""""""""""-""""""-"""-------------------------------M="-AXXAAII+A-M"A-A"M=-+A+AXZXZ--"-MMXZZ-MZ--ZZ-----XAZXZA
+XCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCC.CCC............................... C+C         C +   + CCC       C.+C     C  CC  CCCCC
+$B$$BB$BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB'BBB'''''''''''''''''''''''''''''''  C            C   C            'C
+_H__HH_HHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                                X
+&X&&XX&XXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                                C
 """#"""""""#"""""""""""""""""""""-""--"--"--------------------------------+-=+AZ-I=AA=IZ==- =M+"M=XX-XX-Z-++--MZ-AM-X---MMZ-ZZXAXAZI
+CCCXCCCCCCCXCCCC+CCCCCCCCCCCCCCCC.CC..C..C................................CCCC  C       CCC   C+ C  C  C CCCCC  C  C CCC   C
+BBB$BBBBBBB$BBBBCBBBBBBBBBBBBBBBB'BB''B''B''''''''''''''''''''''''''''''''                     C
+HHH_HHHHHHH_HHHH HHHHHHHHHHHHHHHHXHHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+XXX&XXXXXXX&XXXX XXXXXXXXXXXXXXXXCXXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ###""""""""""""""""""""-"""""""""-"--"-"----------------------------------"-="AZMXAAAI=IXZ==-M"-"--M-ZZ---ZMMZXZXXMZX--XZZ--XZXAZXXZ
+XXXCCCCCCCCCCCCCCCCCCCC.CCCCCCCCC.C..C.C..................................+CC+            C C +.+CC C  CCC           CC   CC
+$$$BBBBBBBBBBBBBBBBBBBB'BBBBBBBBB'B''B'B''''''''''''''''''''''''''''''''''C  C                C'C
+___HHHHHHHHHHHHHHHHHHHHXHHHHHHHHHXHXXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX                     X
+&&&XXXXXXXXXXXXXXXXXXXXCXXXXXXXXXCXCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                     C
 #"""##"""""#"""""""""""""""--"""""--""""---------------------"--""--------"=---ZXXAI==II1=+MM+-""Z--ZAZI-=-MMZAXI+Z--AIAZAAZZ-ZZMZX-
+XCCCXXCCCCCXCCCCCCCCCCCCCCC..CCCCC..CCCC.....................+..++........+CC.C           C  CC+C CC    CCC        CC        C     C
+$BBB$$BBBBB$BBBBBBBBBBBBBBB''BBBBB''BBBB'''''''''''''''''''''C''CC''''''''C  '                 CB
+_HHH__HHHHH_HHHHHHHHHHHHHHHXXHHHHHXXHHHHXXXXXXXXXXXXXXXXXXXXX XX  XXXXXXXX   X                  H
+&XXX&&XXXXX&XXXXXXXXXXXXXXXCCXXXXXCCXXXXCCCCCCCCCCCCCCCCCCCCC CC  CCCCCCCC   C                  X
 """"""""""""""""""""""""-"""-"""""""""-"-------------------"-"-----------"-"Z+ZAZAI==IIIII--MXXM=ZAZIAAXZMMMXI===+AAAIAX-=1+I=AA-AXZ
+CCCCCCCCCCCCCCCCCCCCCCCC.CCC.CCCCCCCCC.C...................+.+...........+.+ C            C.    C                       C       C
+BBBBBBBBBBBBBBBBBBBBBBBB'BBB'BBBBBBBBB'B'''''''''''''''''''C'C'''''''''''C'C               '
+HHHHHHHHHHHHHHHHHHHHHHHHXHHHXHHHHHHHHHXHXXXXXXXXXXXXXXXXXXX X XXXXXXXXXXX X                X
+XXXXXXXXXXXXXXXXXXXXXXXXCXXXCXXXXXXXXXCXCCCCCCCCCCCCCCCCCCC C CCCCCCCCCCC C                C
 """""""""""""""""-""""""""""""""""-""-"--------------------"-------"------"-M-XA-XI++AAAAIX+"ZAXAA=XZIXXIZM=A=I+=+AXIX=MZZ-A+-11==AX
+CCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCC.CC.C....................+.......+......+. C  C          C+              C          C   C
+BBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBB'BB'B''''''''''''''''''''C'''''''C''''''C'                C
+HHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHXHHXHXXXXXXXXXXXXXXXXXXXX XXXXXXX XXXXXX X
+XXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXCXXCXCCCCCCCCCCCCCCCCCCCC CCCCCCC CCCCCC C
 ##""""""""""""-"""#"""""-""-""""""-""-"-""-"-------------------"----------"-+--A-XA+=A+AIAIX=+=IIIIAZXZ-IX-=Z=AIZ-XA1X+M=M+=X1--+AXZ
+XXCCCCCCCCCCCC.CCCXCCCCC.CC.CCCCCC.CC.C.CC.C...................+..........+.CCC C           CC         C  CC     C    C C CC
+$$BBBBBBBBBBBB'BBB$BBBBB'BB'BBBBBB'BB'B'BB'B'''''''''''''''''''C''''''''''C'
+__HHHHHHHHHHHHXHHH_HHHHHXHHXHHHHHHXHHXHXHHXHXXXXXXXXXXXXXXXXXXX XXXXXXXXXX X
+&&XXXXXXXXXXXXCXXX&XXXXXCXXCXXXXXXCXXCXCXXCXCCCCCCCCCCCCCCCCCCC CCCCCCCCCC C
 """"""#""""""""""""""--"""""--""--"""--"--------------"------------------"-""+XAXXA =IAAI+=IAMX+=IA=ZXIMAIXII+++M+=-ZZ=+++++=MX1IAAZ
+CCCCCCXCCCCCCCCCCCCCC..CCCCC..CC..CCC..C..............+..................+.++C                                   CCC  CCCCCCC
+BBBBBB$BBBBBBBBBBBBBB''BBBBB''BB''BBB''B''''''''''''''C''''''''''''''''''C'CC
+HHHHHH_HHHHHHHHHHHHHHXXHHHHHXXHHXXHHHXXHXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX X
+XXXXXX&XXXXXXXXXXXXXXCCXXXXXCCXXCCXXXCCXCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC C
 ###""""#"#"#""""#"""-"""""-""--"""---""-"---------------------------"-"---"---ZXZZX++IIAAIAIIAAI+A=XZI+ZZII+ AZXM==M-MM-========MI=A
+XXXCCCCXCXCXCCCCXCCC.CCCCC.CC..CCC...CC.C...........................+.+...+...                                   CC C  CCCCCCCCC
+$$$BBBB$B$B$BBBB$BBB'BBBBB'BB''BBB'''BB'B'''''''''''''''''''''''''''C'C'''C'''
+___HHHH_H_H_HHHH_HHHXHHHHHXHHXXHHHXXXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXX X XXX XXX
+&&&XXXX&X&X&XXXX&XXXCXXXXXCXXCCXXXCCCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCC CCC
 #"""""""##"""""""""""""""-""---""""""""""----------------------------"--"---"-+Z-+A=++=XXAMAIII=IAAXX=-+AXA==M==MM---MM--MM==M==-++=
+XCCCCCCCXXCCCCCCCCCCCCCCC.CC...CCCCCCCCCC............................+..+...+.C CC                            CC  CCC  CC  CC CCC
+$BBBBBBB$$BBBBBBBBBBBBBBB'BB'''BBBBBBBBBB''''''''''''''''''''''''''''C''C'''C'
+_HHHHHHH__HHHHHHHHHHHHHHHXHHXXXHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XX XXX X
+&XXXXXXX&&XXXXXXXXXXXXXXXCXXCCCXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC C
 ###"#""""""""""""""""""""""""""""""""-"-------------------------"----"-"----"--"+-Z=+1+AMA=X=A+=ZMXX 1  II+AZ=+=M--ZZ-M-Z--MM-MM-IIA
+XXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C.........................+....+.+....+..+C.        C                  CCC CC  C C CC  C  C
+$$$B$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B'''''''''''''''''''''''''C''''C'C''''C''C '
+___H_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXX XXXX X XXXX XX  X
+&&&X&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCC CCCC C CCCC CC  C
 "##"""""""#"-""""""""""""""-"-"""---"----------------------------------"----""---"=I+I1+Z-MXIA+=-"+A -  I+=IZ==M-X-ZZ---Z------MMMZ=
+CXXCCCCCCCXC.CCCCCCCCCCCCCC.C.CCC...C..................................+....++...+C      C      C+C          CC C C  CCC CCCCCC
+B$$BBBBBBB$B'BBBBBBBBBBBBBB'B'BBB'''B''''''''''''''''''''''''''''''''''C''''CC'''C               C
+H__HHHHHHH_HXHHHHHHHHHHHHHHXHXHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX  XXX
+X&&XXXXXXX&XCXXXXXXXXXXXXXXCXCXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  CCC
 #"""""""""""""""""""""""""""""""-"""""-"-"---------------------------------""""---+I+ZX=AAZ==ZI+A+"A+11 1+=AZ==ZXX----M-ZZZ--ZZ----I
+XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCC.C.C.................................++++...C              C+          CC   CCCC C   CC  CCCC
+$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBB'B'B'''''''''''''''''''''''''''''''''CCCC'''                C
+_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX    XXX
+&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC    CCC
 ""#""""""""-""""""""""""""""-"""""--"-"-""---------------------------"-"---"---"----I=+AIIA==I=1=-"-+A=1 1=Z=+=-ZZ-------XXXZZXZZZZZ
+CCXCCCCCCCC.CCCCCCCCCCCCCCCC.CCCCC..C.C.CC...........................+.+...+...+...C CC          C+C        CCCC  CCCCCCC
+BB$BBBBBBBB'BBBBBBBBBBBBBBBB'BBBBB''B'B'BB'''''''''''''''''''''''''''C'C'''C'''C'''               C
+HH_HHHHHHHHXHHHHHHHHHHHHHHHHXHHHHHXXHXHXHHXXXXXXXXXXXXXXXXXXXXXXXXXXX X XXX XXX XXX
+XX&XXXXXXXXCXXXXXXXXXXXXXXXXCXXXXXCCXCXCXXCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCC CCC CCC
 "##"""""#"""+"""""""""""""""""-""""-"""--""--------------------------"--------""---MZM"+ZXAAI=++1IMXIXI++ =-M+=---MM-Z---ZXXAXZZ--ZZ
+CXXCCCCCXCCCCCCCCCCCCCCCCCCCCC.CCCC.CCC..CC..........................+........++...   CC                   C CCCCC  C CCC       CC
+B$$BBBBB$BBB BBBBBBBBBBBBBBBBB'BBBB'BBB''BB''''''''''''''''''''''''''C''''''''CC'''   B
+H__HHHHH_HHH HHHHHHHHHHHHHHHHHXHHHHXHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXX  XXX   H
+X&&XXXXX&XXX XXXXXXXXXXXXXXXXXCXXXXCXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC  CCC   X
 "#""""""""""""#"""""""""-"""""""--""-----------"---------------"---"-"--""""""""+-"+XAM""ZAAAAI-++I+AZ++1 1--=MMMX=MZZX--ZXXAIAZ--ZZ
+CXCCCCCCCCCCCCXCCCCCCCCC.CCCCCCC..CC...........C...............+...+.+..++++++++C.+C   ++                  CCC    C    CC       CC
+B$BBBBBBBBBBBB$BBBBBBBBB'BBBBBBB''BB'''''''''''B'''''''''''''''C'''C'C''CCCCCCCC 'C    CC
+H_HHHHHHHHHHHH_HHHHHHHHHXHHHHHHHXXHHXXXXXXXXXXXHXXXXXXXXXXXXXXX XXX X XX         X
+X&XXXXXXXXXXXX&XXXXXXXXXCXXXXXXXCCXXCCCCCCCCCCCXCCCCCCCCCCCCCCC CCC C CC         C
 ##"""""""#"""""""""""""""-""-"-"-"-""""----------------""-----"------"---"--""""="-"-Z--+MX-AI=+++==X-A1=--XM===MMMM-ZXZ-ZXXAAZ-M---
+XXCCCCCCCXCCCCCCCCCCCCCCC.CC.C.C.C.CCCC................++.....+......+...+..++++C+.+C CCC            C       CCC    C   C      C CCC
+$$BBBBBBB$BBBBBBBBBBBBBBB'BB'B'B'B'BBBB''''''''''''''''CC'''''C''''''C'''C''CCCC C'C
+__HHHHHHH_HHHHHHHHHHHHHHHXHHXHXHXHXHHHHXXXXXXXXXXXXXXXX  XXXXX XXXXXX XXX XX      X
+&&XXXXXXX&XXXXXXXXXXXXXXXCXXCXCXCXCXXXXCCCCCCCCCCCCCCCC  CCCCC CCCCCC CCC CC      C
 ###""""""""""""""""-"""""-""""-"---"--"-----------------------"------"----""-"-"+=-""-+-M+ZAA++==-AXZMA+=1  ZMMM-MMM-XXZZZXXAXZ---Z-
+XXXCCCCCCCCCCCCCCCC.CCCCC.CCCC.C...C..C.......................+......+....++.+.+CC.C+CCC C                      C   C          CCC C
+$$$BBBBBBBBBBBBBBBB'BBBBB'BBBB'B'''B''B'''''''''''''''''''''''C''''''C''''CC'C'C  'BC
+___HHHHHHHHHHHHHHHHXHHHHHXHHHHXHXXXHXXHXXXXXXXXXXXXXXXXXXXXXXX XXXXXX XXXX  X X   XH
+&&&XXXXXXXXXXXXXXXXCXXXXXCXXXXCXCCCXCCXCCCCCCCCCCCCCCCCCCCCCCC CCCCCC CCCC  C C   CX
 "##"""#"""""""""""""""""-"-----"---"---------------------------------"----""-"---+-"-=="-"=-X=1+I-=XA=I=-1- AM--M--ZZXXZZXXAAAXZZ-=I
+CXXCCCXCCCCCCCCCCCCCCCCC.C.....C...C.................................+....++.+...C.C.CC+C+CC         C        CC CC              C
+B$$BBB$BBBBBBBBBBBBBBBBB'B'''''B'''B'''''''''''''''''''''''''''''''''C''''CC'C''' 'B'  C C
+H__HHH_HHHHHHHHHHHHHHHHHXHXXXXXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX  X XXX XHX
+X&&XXX&XXXXXXXXXXXXXXXXXCXCCCCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  C CCC CXC
 #""""""""""-"""""""""""-"""""--------"----------------------------""--"-"-""-"""""M--"Z----MZA+=+++==M-ZA++ AXZZ-ZXZZXAZXXAXXIAXZZ1+
+XCCCCCCCCCC.CCCCCCCCCCC.CCCCC........C............................++..+.+.++.+++++ ..+ .C..           C         C
+$BBBBBBBBBB'BBBBBBBBBBB'BBBBB''''''''B''''''''''''''''''''''''''''CC''C'C'CC'CCCCC ''C ' ''
+_HHHHHHHHHHXHHHHHHHHHHHXHHHHHXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XX X X  X      XX  X XX
+&XXXXXXXXXXCXXXXXXXXXXXCXXXXXCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC C C  C      CC  C CC
 "#""""##"""""""""""""""""""-"---"""--"------------------------------------"---"-"-=+"+Z-==+"MXI++=+1+Z-X=XXIX-Z-ZZZZZZZZXXZXZXXXXZZX
+CXCCCCXXCCCCCCCCCCCCCCCCCCC.C...CCC..C....................................+...+.+.CC+C CCCC+          C C    C C
+B$BBBB$$BBBBBBBBBBBBBBBBBBB'B'''BBB''B''''''''''''''''''''''''''''''''''''C'''C'C'  C      C
+H_HHHH__HHHHHHHHHHHHHHHHHHHXHXXXHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXX X X
+X&XXXX&&XXXXXXXXXXXXXXXXXXXCXCCCXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C C
 ###""""""""""""""""""-""-"-"""-""""-"""----------------------------------""-"""""""-++-ZMX=="ZAI=++++X=-M-XZX-Z--XZZZZZZZXXZZZAAXXZZ
+XXXCCCCCCCCCCCCCCCCCC.CC.C.CCC.CCCC.CCC..................................++.+++++++CCCC   CC+         CC C   C CC
+$$$BBBBBBBBBBBBBBBBBB'BB'B'BBB'BBBB'BBB''''''''''''''''''''''''''''''''''CC'CCCCCCC         C
+___HHHHHHHHHHHHHHHHHHXHHXHXHHHXHHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X
+&&&XXXXXXXXXXXXXXXXXXCXXCXCXXXCXXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C
 "###"#"""##""""-"""#"-""-""""-"-"""-"----------------------------------"""----""""-ZZ++ZXAZ-""XI=11+1-=+"MXZXXZ-ZXZZZZ-Z-XXZZZXAXXXA
+CXXXCXCCCXXCCCC.CCCXC.CC.CCCC.C.CCC.C..................................+++....++++.  CC    C++       CCC+      C      C C
+B$$$B$BBB$$BBBB'BBB$B'BB'BBBB'B'BBB'B''''''''''''''''''''''''''''''''''CCC''''CCCC'         CC          C
+H___H_HHH__HHHHXHHH_HXHHXHHHHXHXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   XXXX    X
+X&&&X&XXX&&XXXXCXXX&XCXXCXXXXCXCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CCCC    C
 "##""""""#"""""""""""""""""-"""""---"-----------------------------""------"-""--""-++Z-ZAI-----==+-++IAM+=MZZAXZAZXZZ--Z-ZXZZXXXXAIA
+CXXCCCCCCXCCCCCCCCCCCCCCCCC.CCCCC...C.............................++......+.++..++.C  .   CCC.C         CC           CC C
+B$$BBBBBB$BBBBBBBBBBBBBBBBB'BBBBB'''B'''''''''''''''''''''''''''''CC''''''C'CC''CC'   '      '
+H__HHHHHH_HHHHHHHHHHHHHHHHHXHHHHHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXXXX X  XX  X   X      X
+X&&XXXXXX&XXXXXXXXXXXXXXXXXCXXXXXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCC C  CC  C   C      C
 ##"""""""""""""""""""""""""""""""""-"------------------------------------""-"-"-"-""IX++XIA=ZMM-I=-1==+IM+MZXAAXXZZZ-ZZZZZZZZXXXAIII
+XXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C....................................++.+.+.+.++  CC   C             C          C
+$$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B''''''''''''''''''''''''''''''''''''CC'C'C'C'CC
+__HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X X X X
+&&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C C C C
 ###"""""""""""""""""-"""-"""""-"""--"-------------------------------"-------"-""-"--=I="+IIXMX-=II++=++=Z++M-X=IXZ-ZZZ-ZZ-ZZZXXXAAAI
+XXXCCCCCCCCCCCCCCCCC.CCC.CCCCC.CCC..C...............................+.......+.++.+..C C+C     C          CC C     C   C  C
+$$$BBBBBBBBBBBBBBBBB'BBB'BBBBB'BBB''B'''''''''''''''''''''''''''''''C'''''''C'CC'C''   C
+___HHHHHHHHHHHHHHHHHXHHHXHHHHHXHHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX X  X XX
+&&&XXXXXXXXXXXXXXXXXCXXXCXXXXXCXXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC C  C CC
 ""#""""""""""""""""""---""--""-""-""-"----------------------------------"-----""-""""-X+--=IZZXXII1+==+=AI++MZI=AXZ-Z-Z-ZZXZXXZXAAIA
+CCXCCCCCCCCCCCCCCCCCC...CC..CC.CC.CC.C..................................+.....++.++++C C.C                CC       C C C
+BB$BBBBBBBBBBBBBBBBBB'''BB''BB'BB'BB'B''''''''''''''''''''''''''''''''''C'''''CC'CCCC   '
+HH_HHHHHHHHHHHHHHHHHHXXXHHXXHHXHHXHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX  X       X
+XX&XXXXXXXXXXXXXXXXXXCCCXXCCXXCXXCXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC  C       C
 "##""#"""""##-"""""-"-"""""-"-"""----""-"-----------------------"""--""--"--""""""""""A-""IAXZ-XX=+IA=I+AX==--ZXAAXXZM-MZXXXXZZZXAII
+CXXCCXCCCCCXX.CCCCC.C.CCCCC.C.CCC....CC.C.......................+++..++..+..++++++++++ C++    C           CCCC        C
+B$$BB$BBBBB$$'BBBBB'B'BBBBB'B'BBB''''BB'B'''''''''''''''''''''''CCC''CC''C''CCCCCCCCCC  CC
+H__HH_HHHHH__XHHHHHXHXHHHHHXHXHHHXXXXHHXHXXXXXXXXXXXXXXXXXXXXXXX   XX  XX XX
+X&&XX&XXXXX&&CXXXXXCXCXXXXXCXCXXXCCCCXXCXCCCCCCCCCCCCCCCCCCCCCCC   CC  CC CC
 "###"""#""""""""""""--""-"-"----""-"-"--------------------------""""-------""---"--"""=AM"Z=IZ--XI-=XIAI+I-+Z--ZZAXXXZZ-ZXZZZZZXXI=I
+CXXXCCCXCCCCCCCCCCCC..CC.C.C....CC.C.C..........................++++.......++...+..+++C  +    CC          CC CC        C
+B$$$BBB$BBBBBBBBBBBB''BB'B'B''''BB'B'B''''''''''''''''''''''''''CCCC'''''''CC'''C''CCC   C
+H___HHH_HHHHHHHHHHHHXXHHXHXHXXXXHHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXX    XXXXXXX  XXX XX
+X&&&XXX&XXXXXXXXXXXXCCXXCXCXCCCCXXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCC    CCCCCCC  CCC CC
 """#""""""""""""--""""""-""""--"""---"-----------------""------------"---"""""-""-"-"""XI=-=AXZZZX+1XXA=+=Z+=ZAZZAXZZZXZXAZZ--ZXXAII
+CCCXCCCCCCCCCCCC..CCCCCC.CCCC..CCC...C.................++............+...+++++.++.+.+++  CC                CC               CC
+BBB$BBBBBBBBBBBB''BBBBBB'BBBB''BBB'''B'''''''''''''''''CC''''''''''''C'''CCCCC'CC'C'CCC
+HHH_HHHHHHHHHHHHXXHHHHHHXHHHHXXHHHXXXHXXXXXXXXXXXXXXXXX  XXXXXXXXXXXX XXX     X  X X
+XXX&XXXXXXXXXXXXCCXXXXXXCXXXXCCXXXCCCXCCCCCCCCCCCCCCCCC  CCCCCCCCCCCC CCC     C  C C
 ""#"""""""#"""""""-""""""""""---"-"--------------------""----------------""""--"""---"-=+=Z=AXXXXX=1IZZ+=-1-MZ+MMXXZZ-XXZXXZ--ZXXXXA
+CCXCCCCCCCXCCCCCCC.CCCCCCCCCC...C.C....................++................++++..+++...+.C                   C         C      CC
+BB$BBBBBBB$BBBBBBB'BBBBBBBBBB'''B'B''''''''''''''''''''CC''''''''''''''''CCCC''CCC'''C'
+HH_HHHHHHH_HHHHHHHXHHHHHHHHHHXXXHXHXXXXXXXXXXXXXXXXXXXX  XXXXXXXXXXXXXXXX    XX   XXX X
+XX&XXXXXXX&XXXXXXXCXXXXXXXXXXCCCXCXCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCC    CC   CCC C
 """""""""""--""-""-""-"""-"-""-"-"-"-------------------------------------""-"-"--"""""-"I++IAIAAXX=++X==Z= Z-AI==-ZZZZZAXZXZZZZXXXAA
+CCCCCCCCCCC..CC.CC.CC.CCC.C.CC.C.C.C.....................................++.+.+..+++++.+              C     C  CCC
+BBBBBBBBBBB''BB'BB'BB'BBB'B'BB'B'B'B'''''''''''''''''''''''''''''''''''''CC'C'C''CCCCC'C
+HHHHHHHHHHHXXHHXHHXHHXHHHXHXHHXHXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X X XX     X
+XXXXXXXXXXXCCXXCXXCXXCXXXCXCXXCXCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C C CC     C
 """""""""""""""""""""-"""""-""-""---""------"-----------------"--"-"----""---"---"-"-"""MI===A=IXXI====ZX=AX-Z-MMMZXZZZXXZXXZZZXAXXA
+CCCCCCCCCCCCCCCCCCCCC.CCCCC.CC.CC...CC......+.................+..+.+....++...+...+.+.+++              C  C  C C
+BBBBBBBBBBBBBBBBBBBBB'BBBBB'BB'BB'''BB''''''C'''''''''''''''''C''C'C''''CC'''C'''C'C'CCC
+HHHHHHHHHHHHHHHHHHHHHXHHHHHXHHXHHXXXHHXXXXXX XXXXXXXXXXXXXXXXX XX X XXXX  XXX XXX X X
+XXXXXXXXXXXXXXXXXXXXXCXXXXXCXXCXXCCCXXCCCCCC CCCCCCCCCCCCCCCCC CC C CCCC  CCC CCC C C
 """"""""""""""-""""""""---""""-"--"----------------------------------"-"-"""-""""-"""-"""A===ZI-AAI=IIA-ZMXI-X-MMMZXZXZZZXXXZXXXAAAX
+CCCCCCCCCCCCCC.CCCCCCCC...CCCC.C..+..................................+.+.+++.++++.+++.+++              C    C C
+BBBBBBBBBBBBBB'BBBBBBBB'''BBBB'B''C''''''''''''''''''''''''''''''''''C'C'CCC'CCCC'CCC'CCC
+HHHHHHHHHHHHHHXHHHHHHHHXXXHHHHXHXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X X   X    X   X
+XXXXXXXXXXXXXXCXXXXXXXXCCCXXXXCXCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C   C    C   C
 """""""""##"""-""""""""""-"""-""----"-----------------------"--"-----"---"""--""""""""-""=+1=XX1==I=I=AZM=X+XXAM-M-ZZZXZZXAAAAXXAIAA
+CCCCCCCCCXXCCC.CCCCCCCCCC.CCC.CC....C.......................+..+.....+...+++..++++++++.++C               C      C C
+BBBBBBBBB$$BBB'BBBBBBBBBB'BBB'BB''''B'''''''''''''''''''''''C''C'''''C'''CCC''CCCCCCCC'CC
+HHHHHHHHH__HHHXHHHHHHHHHHXHHHXHHXXXXHXXXXXXXXXXXXXXXXXXXXXXX XX XXXXX XXX   XX        X
+XXXXXXXXX&&XXXCXXXXXXXXXXCXXXCXXCCCCXCCCCCCCCCCCCCCCCCCCCCCC CC CCCCC CCC   CC        C
 "##""#""-#""#"""-"""""-"""--""----""---"------------------"-----------"-----"---"-"-""""""M 1=X=+II=II=XX-ZX-Z=IA-M-ZZXZZZA=IXXXA=I=
+CXXCCXCC.XCCXCCC.CCCCC.CCC..CC....CC...+..................+...........+.....+...+.+.++++++               C       C C
+B$$BB$BB'$BB$BBB'BBBBB'BBB''BB''''BB'''C''''''''''''''''''C'''''''''''C'''''C'''C'C'CCCCCC
+H__HH_HHX_HH_HHHXHHHHHXHHHXXHHXXXXHHXXX XXXXXXXXXXXXXXXXXX XXXXXXXXXXX XXXXX XXX X X
+X&&XX&XXC&XX&XXXCXXXXXCXXXCCXXCCCCXXCCC CCCCCCCCCCCCCCCCCC CCCCCCCCCCC CCCCC CCC C C
 ##"""""""""""""""""""""""""""--"---"---------------------------"------"-"""-"----"""-""""-"I-+IA==A=IAAIIXXA+II=-AAAAZZZ-ZAIAXZXX===
+XXCCCCCCCCCCCCCCCCCCCCCCCCCCC..C...C...........................+......+.+++.+....+++.++++.+                     C       C
+$$BBBBBBBBBBBBBBBBBBBBBBBBBBB''B'''B'''''''''''''''''''''''''''C''''''C'CCC'C''''CCC'CCCC'C
+__HHHHHHHHHHHHHHHHHHHHHHHHHHHXXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX X   X XXXX   X    X
+&&XXXXXXXXXXXXXXXXXXXXXXXXXXXCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC C   C CCCC   C    C
 ##""""""""""""-"""""""""""-"--"----------"--------------------"--------"-"-----"-""----""-"+=1+A==I==IAIIAZZ=ZIX-Z+ IZZ-XXXXAXXXX===
+XXCCCCCCCCCCCC.CCCCCCCCCCC.C..C..........+....................+........+.+.....+.++....++.+C                    C      C
+$$BBBBBBBBBBBB'BBBBBBBBBBB'B''B''''''''''C''''''''''''''''''''C''''''''C'C'''''C'CC''''CC'C
+__HHHHHHHHHHHHXHHHHHHHHHHHXHXXHXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX XXXXXXXX X XXXXX X  XXXX  X
+&&XXXXXXXXXXXXCXXXXXXXXXXXCXCCXCCCCCCCCCC CCCCCCCCCCCCCCCCCCCC CCCCCCCC C CCCCC C  CCCC  C
 "##"""#"""""""""""""""""-"-""-""-"----"----------------------------------""--"""--"""-""""""MI==A=+=+IAAIAXXXM+"+-X =XZXXZZZZIAAA==+
+CXXCCCXCCCCCCCCCCCCCCCCC.C.CC.CC.C....C..................................++..+++..+++.++++++                  C+CC
+B$$BBB$BBBBBBBBBBBBBBBBB'B'BB'BB'B''''B''''''''''''''''''''''''''''''''''CC''CCC''CCC'CCCCCC                   C
+H__HHH_HHHHHHHHHHHHHHHHHXHXHHXHHXHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XX   XX   X
+X&&XXX&XXXXXXXXXXXXXXXXXCXCXXCXXCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC   CC   C
 #"#"""""""""""""""""""--""---""----"-------------------"---"--"""-"-""---"--""""-"-""""""""""ZX+==++-=IAXXAX-M++-"+==XA=AZZZZXI=IA=+
+XCXCCCCCCCCCCCCCCCCCCC..CC...CC....C...................+...+..+++.+.++...+..++++.+.++++++++++               C CCC+C
+$B$BBBBBBBBBBBBBBBBBBB''BB'''BB''''B'''''''''''''''''''C'''C''CCC'C'CC'''C''CCCC'C'CCCCCCCCCC                    C
+_H_HHHHHHHHHHHHHHHHHHHXXHHXXXHHXXXXHXXXXXXXXXXXXXXXXXXX XXX XX   X X  XXX XX    X X
+&X&XXXXXXXXXXXXXXXXXXXCCXXCCCXXCCCCXCCCCCCCCCCCCCCCCCCC CCC CC   C C  CCC CC    C C
 ##""""""""""""-""""""""""""""""""-""---"----------------------"-"-----"-"---""""-----""""-"""+I==I++1++IXAXA-X=-XX"+IXXA1II-ZZZXXZAA
+XXCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCC.CC...C......................+.+.....+.+...++++.....++++.+++C              C CC  +C       C
+$$BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB'BB'''B''''''''''''''''''''''C'C'''''C'C'''CCCC'''''CCCC'CCC                     C
+__HHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHXHHXXXHXXXXXXXXXXXXXXXXXXXXXX X XXXXX X XXX    XXXXX    X
+&&XXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXCXXCCCXCCCCCCCCCCCCCCCCCCCCCC C CCCCC C CCC    CCCCC    C
 """"""""""""""-""""""""-"""-"-----------------------------"------------"-""-""""-"-"--""---"""ZI=+=+-11=AIIII=ZZXI+-MXZZ1+-IXAXXZ-ZZ
+CCCCCCCCCCCCCC.CCCCCCCC.CCC.C.............................+............+.++.++++.+.+..++...+++                    C.             C
+BBBBBBBBBBBBBB'BBBBBBBB'BBB'B'''''''''''''''''''''''''''''C''''''''''''C'CC'CCCC'C'C''CC'''CCC                     '
+HHHHHHHHHHHHHHXHHHHHHHHXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX X  X    X X XX  XXX                        X
+XXXXXXXXXXXXXXCXXXXXXXXCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCC C  C    C C CC  CCC                        C
 """""#""""""""""""""""""--""--"---"--"-----------+------"---------"--"--"""-"-"""""""""-"--""""XA1=+ -1+IIAXIAXZMZ---+MZA+- +AAAX-ZZ
+CCCCCXCCCCCCCCCCCCCCCCCC..CC..C...C..C...........C......+.........+..+..+++.+.+++++++++.+..++++                   C..C           C
+BBBBB$BBBBBBBBBBBBBBBBBB''BB''B'''B''B''''''''''' ''''''C'''''''''C''C''CCC'C'CCCCCCCCC'C''CCCC                    ''
+HHHHH_HHHHHHHHHHHHHHHHHHXXHHXXHXXXHXXHXXXXXXXXXXX XXXXXX XXXXXXXXX XX XX   X X         X XX                        XX
+XXXXX&XXXXXXXXXXXXXXXXXXCCXXCCXCCCXCCXCCCCCCCCCCC CCCCCC CCCCCCCCC CC CC   C C         C CC                        CC
 """"-""""-"""-"-""""-""--"-"-"-"-------------------------"--"---"""-""-"--"--""-"""""""-"""""""+=+-+ -+===IAAA-ZZZA=+-=XI+=11Z-AXZZX
+CCCC.CCCC.CCC.C.CCCC.CC..C.C.+.C.........................+..+...+++.++.+..+..++.+++++++.+++++++C              C    CC.C       C
+BBBB'BBBB'BBB'B'BBBB'BB''B'B'C'B'''''''''''''''''''''''''C''C'''CCC'CC'C''C''CC'CCCCCCC'CCCCCCC                      '
+HHHHXHHHHXHHHXHXHHHHXHHXXHXHX XHXXXXXXXXXXXXXXXXXXXXXXXXX XX XXX   X  X XX XX  X       X                             X
+XXXXCXXXXCXXXCXCXXXXCXXCCXCXC CXCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC   C  C CC CC  C       C                             C
 """"""#""""""""""""""""--"-----""-------------------------------"--------""-""""""""-"--""-""""-==1++ -=+=IAAXX=XZX=MMM+X=IIXZZAZI==
+CCCCCCXCCCCCCCCCCCCCCCC..C.....CC...............................+........++.++++++++.+..++.++++.C                  C   C
+BBBBBB$BBBBBBBBBBBBBBBB''B'''''BB'''''''''''''''''''''''''''''''C''''''''CC'CCCCCCCC'C''CC'CCCC'
+HHHHHH_HHHHHHHHHHHHHHHHXXHXXXXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXX  X        X XX  X    X
+XXXXXX&XXXXXXXXXXXXXXXXCCXCCCCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC  C        C CC  C    C
 #"""""""""""""""""-"""-""""-"--"-------------------------------"-------"-""""-""-"""-""-"-"""""""Z+1=- 1++IIAAIAXZMMMXI+=--1Z-ZM+-XI
+XCCCCCCCCCCCCCCCCC.CCC.CCCC.C..C...............................+.......+.++++.++.+++.++.+.+++++++                      CC    C  CC
+$BBBBBBBBBBBBBBBBB'BBB'BBBB'B''B'''''''''''''''''''''''''''''''C'''''''C'CCCC'CC'CCC'CC'C'CCCCCCC
+_HHHHHHHHHHHHHHHHHXHHHXHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX X    X  X   X  X X
+&XXXXXXXXXXXXXXXXXCXXXCXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC C    C  C   C  C C
 #""""""""""""""-"""""""""""-"--"--""-"-""----------"------"----"------------""-"---"""""""""""""""X+1+-1-=I+AAA=XXZXAA+-"A -X-Z=+MMZ
+XCCCCCCCCCCCCCC.CCCCCCCCCCC.C..C..CC.C.CC..........+......+....+............++.+...+++++++++++++++                     C+    C CC
+$BBBBBBBBBBBBBB'BBBBBBBBBBB'B''B''BB'B'BB''''''''''C''''''C''''C''''''''''''CC'C'''CCCCCCCCCCCCCCC                      C
+_HHHHHHHHHHHHHHXHHHHHHHHHHHXHXXHXXHHXHXHHXXXXXXXXXX XXXXXX XXXX XXXXXXXXXXXX  X XXX
+&XXXXXXXXXXXXXXCXXXXXXXXXXXCXCCXCCXXCXCXXCCCCCCCCCC CCCCCC CCCC CCCCCCCCCCCC  C CCC
 """""-""""""-""""-"""""""""""------"-"-------------------""----""-"----""---"-""---""""-""""""""""++--+++=I+IA+-+II==A=A"MZ1=Z===-ZM
+CCCCC.CCCCCC.CCCC.CCCCCCCCCCC......C.C...................++....++.+....++...+.++...++++.++++++++++C                     +     CCCC
+BBBBB'BBBBBB'BBBB'BBBBBBBBBBB''''''B'B'''''''''''''''''''CC''''CC'C''''CC'''C'CC'''CCCC'CCCCCCCCCC                      C
+HHHHHXHHHHHHXHHHHXHHHHHHHHHHHXXXXXXHXHXXXXXXXXXXXXXXXXXXX  XXXX  X XXXX  XXX X  XXX    X
+XXXXXCXXXXXXCXXXXCXXXXXXXXXXXCCCCCCXCXCCCCCCCCCCCCCCCCCCC  CCCC  C CCCC  CCC C  CCC    C
 #"""""#"""""""""""""""-""-""---"--"-"-----------------------"-"------"--"---"""-""""""--""-"""""-""=+--+++++IAAII====II=ZZ+=Z-===MZZ
+XCCCCCXCCCCCCCCCCCCCCC.CC.CC...C..C.C.......................+.+......+..+...+++.++++++..++.+++++.++C                      CC CCCC
+$BBBBB$BBBBBBBBBBBBBBB'BB'BB'''B''B'B'''''''''''''''''''''''C'C''''''C''C'''CCC'CCCCCC''CC'CCCCC'CC
+_HHHHH_HHHHHHHHHHHHHHHXHHXHHXXXHXXHXHXXXXXXXXXXXXXXXXXXXXXXX X XXXXXX XX XXX   X      XX  X     X
+&XXXXX&XXXXXXXXXXXXXXXCXXCXXCCCXCCXCXCCCCCCCCCCCCCCCCCCCCCCC C CCCCCC CC CCC   C      CC  C     C
 """""""""""""""""""""--""""""--"--""--"-------------------------------------"-"-"-""""--"""""""-""""Z+--=+1=IXAAX=1==IXXZXX+=ZM=MXZ-
+CCCCCCCCCCCCCCCCCCCCC..CCCCCC..C..CC..C.....................................+.+.+.++++..+++++++.++++                       CC  C   C
+BBBBBBBBBBBBBBBBBBBBB''BBBBBB''B''BB''B'''''''''''''''''''''''''''''''''''''C'C'C'CCCC''CCCCCCC'CCCC
+HHHHHHHHHHHHHHHHHHHHHXXHHHHHHXXHXXHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X X X    XX       X
+XXXXXXXXXXXXXXXXXXXXXCCXXXXXXCCXCCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C C    CC       C
 #"""""""""""""""""""--"""""-"""---"-"---"--------------"---------"---------"--""""-"""""""""""""""""+I-  I==IAXXXA1+AZ-M-ZA==II-MM-M
+XCCCCCCCCCCCCCCCCCCC..CCCCC.CCC...C.C...C..............+.........+.........+..++++.+++++++++++++++++C                 C C  CC  C  C
+$BBBBBBBBBBBBBBBBBBB''BBBBB'BBB'''B'B'''B''''''''''''''C'''''''''C'''''''''C''CCCC'CCCCCCCCCCCCCCCCC
+_HHHHHHHHHHHHHHHHHHHXXHHHHHXHHHXXXHXHXXXHXXXXXXXXXXXXXX XXXXXXXXX XXXXXXXXX XX    X
+&XXXXXXXXXXXXXXXXXXXCCXXXXXCXXXCCCXCXCCCXCCCCCCCCCCCCCC CCCCCCCCC CCCCCCCCC CC    C
 """"#"""#""""""""""""""""-"-""-"-------------------------"--"-"--"----""""-"-----""""""""""""""""""""=+  -==+AXAAAI11Z++ZXZXXIA--=MM
+CCCCXCCCXCCCCCCCCCCCCCCCC.C.CC.C.........................+..+.+..+....++++.+.....++++++++++++++++++++C                CC       CCC
+BBBB$BBB$BBBBBBBBBBBBBBBB'B'BB'B'''''''''''''''''''''''''C''C'C''C''''CCCC'C'''''CCCCCCCCCCCCCCCCCCCC
+HHHH_HHH_HHHHHHHHHHHHHHHHXHXHHXHXXXXXXXXXXXXXXXXXXXXXXXXX XX X XX XXXX    X XXXXX
+XXXX&XXX&XXXXXXXXXXXXXXXXCXCXXCXCCCCCCCCCCCCCCCCCCCCCCCCC CC C CC CCCC    C CCCCC
 ""#"""""""""""""""""""""""--""-"""---"---""----------------------------"-----"--""""""""""""""-"""""""-1 11+=IA+==IA=X=XAAI==IX==-MM
+CCXCCCCCCCCCCCCCCCCCCCCCCC..CC.CCC...C...CC............................+.....+..++++++++++++++.+++++++C               C        CCC
+BB$BBBBBBBBBBBBBBBBBBBBBBB''BB'BBB'''B'''BB''''''''''''''''''''''''''''C'''''C''CCCCCCCCCCCCCC'CCCCCCC
+HH_HHHHHHHHHHHHHHHHHHHHHHHXXHHXHHHXXXHXXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX XX              X
+XX&XXXXXXXXXXXXXXXXXXXXXXXCCXXCXXXCCCXCCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CC              C
 ""#""""""""""""""""""""""-"-"------""--"------------------------"--"---------"--"--""""""""""""""""""""Z  1 +===+IIA=I-X=XI+I+=XX-=-
+CCXCCCCCCCCCCCCCCCCCCCCCC.C.C......CC..C........................+..+.........+..+..++++++++++++++++++++               C          CCC
+BB$BBBBBBBBBBBBBBBBBBBBBB'B'B''''''BB''B''''''''''''''''''''''''C''C'''''''''C''C''CCCCCCCCCCCCCCCCCCCC
+HH_HHHHHHHHHHHHHHHHHHHHHHXHXHXXXXXXHHXXHXXXXXXXXXXXXXXXXXXXXXXXX XX XXXXXXXXX XX XX
+XX&XXXXXXXXXXXXXXXXXXXXXXCXCXCCCCCCXXCCXCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCC CC CC
 ""#""""""""""""""""""""""-"---""--"-"--"-----------------------""--"--"-""--""-""--"-""-"""""""""""-"""+A ---+11=I==IIX-IIA=AI===XM-
+CCXCCCCCCCCCCCCCCCCCCCCCC.C...+C..C.C..C.......................++..+..+.++..++.++..+.++.+++++++++++.+++C               C           C
+BB$BBBBBBBBBBBBBBBBBBBBBB'B'''CB''B'B''B'''''''''''''''''''''''CC''C''C'CC''CC'CC''C'CC'CCCCCCCCCCC'CCC
+HH_HHHHHHHHHHHHHHHHHHHHHHXHXXX HXXHXHXXHXXXXXXXXXXXXXXXXXXXXXXX  XX XX X  XX  X  XX X  X           X
+XX&XXXXXXXXXXXXXXXXXXXXXXCXCCC XCCXCXCCXCCCCCCCCCCCCCCCCCCCCCCC  CC CC C  CC  C  CC C  C           C
 """"""""-"""""-"""-"""""-"-"-"-"-"""------------------------""--"-""---"-""-"""""-""""""""""""""""""""""+--1-1 1=I==XAXXA=XIAZ=1-=IA
+CCCCCCCC.CCCCC.CCC.CCCCC.C.C.C.C.CCC........................++..+.++...+.++.+++++.++++++++++++++++++++++C
+BBBBBBBB'BBBBB'BBB'BBBBB'B'B'B'B'BBB''''''''''''''''''''''''CC''C'CC'''C'CC'CCCCC'CCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHXHHHHHXHHHXHHHHHXHXHXHXHXHHHXXXXXXXXXXXXXXXXXXXXXXXX  XX X  XXX X  X     X
+XXXXXXXXCXXXXXCXXXCXXXXXCXCXCXCXCXXXCCCCCCCCCCCCCCCCCCCCCCCC  CC C  CCC C  C     C
 ""#""-""""""""""""""-"-----------"--"-""-------------------------"--""---"--""""""-""""""""""""""""""""""=1++I+1=IAIAAXAAIAIIXXI=I=X
+CCXCC.CCCCCCCCCCCCCC.C...........C..C.CC.........................+..++...+..++++++.++++++++++++++++++++++C
+BB$BB'BBBBBBBBBBBBBB'B'''''''''''B''B'BB'''''''''''''''''''''''''C''CC'''C''CCCCCC'CCCCCCCCCCCCCCCCCCCCCC
+HH_HHXHHHHHHHHHHHHHHXHXXXXXXXXXXXHXXHXHHXXXXXXXXXXXXXXXXXXXXXXXXX XX  XXX XX      X
+XX&XXCXXXXXXXXXXXXXXCXCCCCCCCCCCCXCCXCXXCCCCCCCCCCCCCCCCCCCCCCCCC CC  CCC CC      C
 """""""""-""""""""""""-----------"----------------------"-"-"--"-"---""------"""""""""""""""""""""""""""""M++==+=IAII=IIIAXAXZ-XAXXZ
+CCCCCCCCC.CCCCCCCCCCCC...........C......................+.+.+..+.+...++......+++++++++++++++++++++++++++++                    C
+BBBBBBBBB'BBBBBBBBBBBB'''''''''''B''''''''''''''''''''''C'C'C''C'C'''CC''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHXHHHHHHHHHHHHXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXX X X XX X XXX  XXXXXX
+XXXXXXXXXCXXXXXXXXXXXXCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCC C C CC C CCC  CCCCCC
 """"""""--"""""""""""""---"----"-""--------"--------------------------"----""""-"-""""""""""--"""""""""""""-11===IAAI11AIIAXXXZXXIXZ
+CCCCCCCC..CCCCCCCCCCCCC...C....C.CC........+..........................+....++++.+.++++++++++..+++++++++++++C
+BBBBBBBB''BBBBBBBBBBBBB'''B''''B'BB''''''''C''''''''''''''''''''''''''C''''CCCC'C'CCCCCCCCCC''CCCCCCCCCCCCC
+HHHHHHHHXXHHHHHHHHHHHHHXXXHXXXXHXHHXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXX XXXX    X X          XX
+XXXXXXXXCCXXXXXXXXXXXXXCCCXCCCCXCXXCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCC CCCC    C C          CC
 """"""""-"-"="-"""""-""---"-----"------------------------"--""""""------""""""-"""""-"""""""""""""""""""""""M-+=ZIAAI=-=IIIAAAAXA==X
+CCCCCCCC.C.CCC.CCCCC.CC...C.....C........................+..++++++......++++++.+++++.+++++++++++++++++++++++
+BBBBBBBB'B'B B'BBBBB'BB'''B'''''B''''''''''''''''''''''''C''CCCCCC''''''CCCCCC'CCCCC'CCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHXHXH HXHHHHHXHHXXXHXXXXXHXXXXXXXXXXXXXXXXXXXXXXXX XX      XXXXXX      X     X
+XXXXXXXXCXCX XCXXXXXCXXCCCXCCCCCXCCCCCCCCCCCCCCCCCCCCCCCC CC      CCCCCC      C     C
 """""-""""""""""""""--"--"------"-"-"------------------""-------"""--"-----"-"-""-"""""""""""""""""""""""""""Z1+XZ=A=+=+IIIIAI=IIIIZ
+CCCCC.CCCCCCCCCCCCCC..C..C......C.C.C..................++.......+++..+.....+.+.++.+++++++++++++++++++++++++++
+BBBBB'BBBBBBBBBBBBBB''B''B''''''B'B'B''''''''''''''''''CC'''''''CCC''C'''''C'C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHXHHHHHHHHHHHHHHXXHXXHXXXXXXHXHXHXXXXXXXXXXXXXXXXXX  XXXXXXX   XX XXXXX X X  X
+XXXXXCXXXXXXXXXXXXXXCCXCCXCCCCCCXCXCXCCCCCCCCCCCCCCCCCC  CCCCCCC   CC CCCCC C C  C
 """""--""""""""""-"""---""-"--"""-"--------------------------""--"""-""----"-"-""-"""""""""""""""""""""""""""+Z+1XX=I=IIIIII==1=AAAX
+CCCCC..CCCCCCCCCC.CCC...CC.C..CCC.C..........................++..+++.++....+.+.++.+++++++++++++++++++++++++++C
+BBBBB''BBBBBBBBBB'BBB'''BB'B''BBB'B''''''''''''''''''''''''''CC''CCC'CC''''C'C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHXXHHHHHHHHHHXHHHXXXHHXHXXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXX  XX   X  XXXX X X  X
+XXXXXCCXXXXXXXXXXCXXXCCCXXCXCCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCC  CC   C  CCCC C C  C
 "#""""""#-"""""""""-""--""""----"---"----------------"-----"-----"--------""-""-"""""-""""""""-"""""""""""""""+Z--II=IIAAI=AI==IAA=A
+CXCCCCCCX.CCCCCCCCC.CC..CCCC....C...C................+.....+.....+........++.++.+++++.++++++++.+++++++++++++++C
+B$BBBBBB$'BBBBBBBBB'BB''BBBB''''B'''B''''''''''''''''C'''''C'''''C''''''''CC'CC'CCCCC'CCCCCCCC'CCCCCCCCCCCCCCC
+H_HHHHHH_XHHHHHHHHHXHHXXHHHHXXXXHXXXHXXXXXXXXXXXXXXXX XXXXX XXXXX XXXXXXXX  X  X     X        X
+X&XXXXXX&CXXXXXXXXXCXXCCXXXXCCCCXCCCXCCCCCCCCCCCCCCCC CCCCC CCCCC CCCCCCCC  C  C     C        C
 ""-""-""""--""""""""-"""""----"--------------------------"--"""-""--"-""""""""""""""""""""""""""""""""""""""""""X -=I=IIAAIXA==IIIAX
+CC.CC.CCCC..CCCCCCCC.CCCCC....C..........................+..+++.++..+.++++++++++++++++++++++++++++++++++++++++++
+BB'BB'BBBB''BBBBBBBB'BBBBB''''B''''''''''''''''''''''''''C''CCC'CC''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHXHHXHHHHXXHHHHHHHHXHHHHHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXX XX   X  XX X
+XXCXXCXXXXCCXXXXXXXXCXXXXXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC CC   C  CC C
 """"""""""-""""""""---"""""-"------"---------------"-------""---"-----""-""-""--""--""""""""""""""""""-""""""""""X1+I==IAXZ-ZA+===AX
+CCCCCCCCCC.CCCCCCCC...CCCC+.C......C...............+.......++...+.....++.++.++..++..++++++++++++++++++.++++++++++          C
+BBBBBBBBBB'BBBBBBBB'''BBBBC'B''''''B'''''''''''''''C'''''''CC'''C'''''CC'CC'CC''CC''CCCCCCCCCCCCCCCCCC'CCCCCCCCCC
+HHHHHHHHHHXHHHHHHHHXXXHHHH XHXXXXXXHXXXXXXXXXXXXXXX XXXXXXX  XXX XXXXX  X  X  XX  XX                  X
+XXXXXXXXXXCXXXXXXXXCCCXXXX CXCCCCCCXCCCCCCCCCCCCCCC CCCCCCC  CCC CCCCC  C  C  CC  CC                  C
 """""""""""""""""""-""""""---"-"------------------"----"--"""---"-""--"-""""--""""-""-"""""""""""""""""""""""""""+-I=IIAAIZZZ-X==IIA
+CCCCCCCCCCCCCCCCCCC.CCCCCC...C.C..................+....+..+++...+.++..+.++++..++++.++.+++++++++++++++++++++++++++CC          C
+BBBBBBBBBBBBBBBBBBB'BBBBBB'''B'B''''''''''''''''''C''''C''CCC'''C'CC''C'CCCC''CCCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHXHHHHHHXXXHXHXXXXXXXXXXXXXXXXXX XXXX XX   XXX X  XX X    XX    X  X
+XXXXXXXXXXXXXXXXXXXCXXXXXXCCCXCXCCCCCCCCCCCCCCCCCC CCCC CC   CCC C  CC C    CC    C  C
 """""#"""""""""""""""""-""""""-"-----------------------"----"-----"""--"""""-""""-"-""-"""""--"""""""""""""""""""""=AAIII=IX=AZI=+II
+CCCCCXCCCCCCCCCCCCCCCCC.CCCCCC.C.......................+....+.....+++..+++++.++++.+.++.+++++..+++++++++++++++++++++C
+BBBBB$BBBBBBBBBBBBBBBBB'BBBBBB'B'''''''''''''''''''''''C''''C'''''CCC''CCCCC'CCCC'C'CC'CCCCC''CCCCCCCCCCCCCCCCCCCCC
+HHHHH_HHHHHHHHHHHHHHHHHXHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXX XXXX XXXXX   XX     X    X X  X     XX
+XXXXX&XXXXXXXXXXXXXXXXXCXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCCC   CC     C    C C  C     CC
 """""""-""""""""""-"--"---"-----------------------------"------"-"-"""-""-"""""""""-"-"""""""""""""""""""""""""""""++XA===1AA=IIA+-+
+CCCCCCC.CCCCCCCCCC.C..C...C.............................+......+.+.+++.++.+++++++++.+.+++++++++++++++++++++++++++++CC
+BBBBBBB'BBBBBBBBBB'B''B'''B'''''''''''''''''''''''''''''C''''''C'C'CCC'CC'CCCCCCCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHXHHHHHHHHHHXHXXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXX X X   X  X         X X
+XXXXXXXCXXXXXXXXXXCXCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC C C   C  C         C C
 """""""""-"""""""""-""""--""-"-"----------------"---------""""--""""""-""""-"""""""""""-"""""""""""""""""""""""""""""+X=I===IXAAAA==
+CCCCCCCCC.CCCCCCCCC.CCCC..CC.C.C................+.........++++..++++++.++++.+++++++++++.+++++++++++++++++++++++++++++C
+BBBBBBBBB'BBBBBBBBB'BBBB''BB'B'B''''''''''''''''C'''''''''CCCC''CCCCCC'CCCC'CCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHXHHHHHHHHHXHHHHXXHHXHXHXXXXXXXXXXXXXXXX XXXXXXXXX    XX      X    X           X
+XXXXXXXXXCXXXXXXXXXCXXXXCCXXCXCXCCCCCCCCCCCCCCCC CCCCCCCCC    CC      C    C           C
 """""""""""""""""""-""""--"--"--"---------------------------""--"""""""-""-"-"""""""""""""""""""""""""""""""""""""""""+ZI==1=IXAAAAA
+CCCCCCCCCCCCCCCCCCC.CCCC..C..C..C...........................++..+++++++.++.+.+++++++++++++++++++++++++++++++++++++++++C
+BBBBBBBBBBBBBBBBBBB'BBBB''B''B''B'''''''''''''''''''''''''''CC''CCCCCCC'CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHXHHHHXXHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXX  XX       X  X X
+XXXXXXXXXXXXXXXXXXXCXXXXCCXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC       C  C C
 ""#""#""""""""""""""""""""-"-"-""""-------------""----------"-"--""""------""-"-""""""""""""-""""""""""""""""""+"""""""+-==1+IAXXXAX
+CCXCCXCCCCCCCCCCCCCCCCCCCC.C.C.CCCC.............++..........+.+..++++......++.+.++++++++++++.++++++++++++++++++C+++++++CC
+BB$BB$BBBBBBBBBBBBBBBBBBBB'B'B'BBBB'''''''''''''CC''''''''''C'C''CCCC''''''CC'C'CCCCCCCCCCCC'CCCCCCCCCCCCCCCCCC CCCCCCC
+HH_HH_HHHHHHHHHHHHHHHHHHHHXHXHXHHHHXXXXXXXXXXXXX  XXXXXXXXXX X XX    XXXXXX  X X            X
+XX&XX&XXXXXXXXXXXXXXXXXXXXCXCXCXXXXCCCCCCCCCCCCC  CCCCCCCCCC C CC    CCCCCC  C C            C
 """"""-""""-"""-""-"-"="""----"-"--------------"--"------"--"""-"""""""""-"""""""""""""""""""""""""""""""""""""""""""""""M=+1=XXXAXX
+CCCCCC.CCCC.CCC.CC.C.CCCCC....C.C..............+..+......+..+++.+++++++++.+++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBB'BBBB'BBB'BB'B'B BBB''''B'B''''''''''''''C''C''''''C''CCC'CCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHXHHHHXHHHXHHXHXH HHHXXXXHXHXXXXXXXXXXXXXX XX XXXXXX XX   X         X
+XXXXXXCXXXXCXXXCXXCXCX XXXCCCCXCXCCCCCCCCCCCCCC CC CCCCCC CC   C         C
 """""""""""""""""""""""""------"""-"--"-----------------"----""-"-""""""""""""""""""""""""""""""""""""""+"""""""""+"""""""-=+1X-XXXZ
+CCCCCCCCCCCCCCCCCCCCCCCCC......CCC.C..C.................+....++.+.++++++++++++++++++++++++++++++++++++++C+++++++++C+++++++C    C
+BBBBBBBBBBBBBBBBBBBBBBBBB''''''BBB'B''B'''''''''''''''''C''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC CCCCCCC
+HHHHHHHHHHHHHHHHHHHHHHHHHXXXXXXHHHXHXXHXXXXXXXXXXXXXXXXX XXXX  X X
+XXXXXXXXXXXXXXXXXXXXXXXXXCCCCCCXXXCXCCXCCCCCCCCCCCCCCCCC CCCC  C C
 """""""""""""""""""-"""""-"----"-----------------------------"""--""""""""""""""""""""""""""""""""""""""""""""""""""""""""+Z=11AAAAX
+CCCCCCCCCCCCCCCCCCC.CCCCC.C....C.............................+++..++++++++++++++++++++++++++++++++++++++++++++++++++++++++C
+BBBBBBBBBBBBBBBBBBB'BBBBB'B''''B'''''''''''''''''''''''''''''CCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHXHHHHHXHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   XX
+XXXXXXXXXXXXXXXXXXXCXXXXXCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CC
 "#"""""""""""""""""-"""""""-"---""-"----------------------"--"-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+Z+-=AI+X
+CXCCCCCCCCCCCCCCCCC.CCCCCCC.C...C+.C......................+..+.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C
+B$BBBBBBBBBBBBBBBBB'BBBBBBB'B'''BC'B''''''''''''''''''''''C''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+H_HHHHHHHHHHHHHHHHHXHHHHHHHXHXXXH XHXXXXXXXXXXXXXXXXXXXXXX XX X
+X&XXXXXXXXXXXXXXXXXCXXXXXXXCXCCCX CXCCCCCCCCCCCCCCCCCCCCCC CC C
 "#""""#""""""""""""-""""----""-""----"-------------"-------"--"-""-"""""--""--"""""-""""""""-"""""""""""""""""+"""""""""""""+I--IZIX
+CXCCCCXCCCCCCCCCCCC.CCCC....CC.CC....C.............+.......+..+.++.+++++..++..+++++.++++++++.+++++++++++++++++C+++++++++++++C
+B$BBBB$BBBBBBBBBBBB'BBBB''''BB'BB''''B'''''''''''''C'''''''C''C'CC'CCCCC''CC''CCCCC'CCCCCCCC'CCCCCCCCCCCCCCCCC CCCCCCCCCCCCC
+H_HHHH_HHHHHHHHHHHHXHHHHXXXXHHXHHXXXXHXXXXXXXXXXXXX XXXXXXX XX X  X     XX  XX     X        X
+X&XXXX&XXXXXXXXXXXXCXXXXCCCCXXCXXCCCCXCCCCCCCCCCCCC CCCCCCC CC C  C     CC  CC     C        C
 """""""#"""""""""""-""--"""--""---""-------------------"------"---"--"""-""-""""""-""""""""""""""""""""""""+"""""""""""""""""+I--IAX
+CCCCCCCXCCCCCCCCCCC.CC..CCC..CC...CC...................+......+...+..+++.++.++++++.++++++++++++++++++++++++C+++++++++++++++++C
+BBBBBBB$BBBBBBBBBBB'BB''BBB''BB'''BB'''''''''''''''''''C''''''C'''C''CCC'CC'CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCC
+HHHHHHH_HHHHHHHHHHHXHHXXHHHXXHHXXXHHXXXXXXXXXXXXXXXXXXX XXXXXX XXX XX   X  X      X
+XXXXXXX&XXXXXXXXXXXCXXCCXXXCCXXCCCXXCCCCCCCCCCCCCCCCCCC CCCCCC CCC CC   C  C      C
 """""""""""""""""""-""-""--"-"""---"-----------"----"---------"""-""--""""""""""""""""""""""""""""""""""""""""""""""""""""""""+X111I
+CCCCCCCCCCCCCCCCCCC.CC.CC..C.CCC...C...........+....+.........+++.++..++++++++++++++++++++++++++++++++++++++++++++++++++++++++C
+BBBBBBBBBBBBBBBBBBB'BB'BB''B'BBB'''B'''''''''''C''''C'''''''''CCC'CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHXHHXHHXXHXHHHXXXHXXXXXXXXXXX XXXX XXXXXXXXX   X  XX
+XXXXXXXXXXXXXXXXXXXCXXCXXCCXCXXXCCCXCCCCCCCCCCC CCCC CCCCCCCCC   C  CC
 "##""#"""""""""""""-""""""--"---------------------""-----"-----"---""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"+-+1+
+CXXCCXCCCCCCCCCCCCC.CCCCCC..C.....................++.....+.....+...++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+CC
+B$$BB$BBBBBBBBBBBBB'BBBBBB''B'''''''''''''''''''''CC'''''C'''''C'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+H__HH_HHHHHHHHHHHHHXHHHHHHXXHXXXXXXXXXXXXXXXXXXXXX  XXXXX XXXXX XXX
+X&&XX&XXXXXXXXXXXXXCXXXXXXCCXCCCCCCCCCCCCCCCCCCCCC  CCCCC CCCCC CCC
 "#"""-""#-"""-""""""-""-"""""""-------------------"----------"-""-"-"""""-""""""""""""""""""""""""""""""""""""+"++""""""""+""""""==+
+CXCCC.CCX.CCC.CCCCCC.CC.CCCCCCC...................+..........+.++.+.+++++.++++++++++++++++++++++++++++++++++++C+CC++++++++C++++++C
+B$BBB'BB$'BBB'BBBBBB'BB'BBBBBBB'''''''''''''''''''C''''''''''C'CC'C'CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CCCCCCCC CCCCCC
+H_HHHXHH_XHHHXHHHHHHXHHXHHHHHHHXXXXXXXXXXXXXXXXXXX XXXXXXXXXX X  X X     X
+X&XXXCXX&CXXXCXXXXXXCXXCXXXXXXXCCCCCCCCCCCCCCCCCCC CCCCCCCCCC C  C C     C
 """"""""""-""-""""""-""--"--"""--""--"-----------"-------""-----------"-"-"""""--""-""""""""""""""""""""""""""""""""""""""""""""""=A
+CCCCCCCCCC.CC.CCCCCC.CC..C..CCC..CC..C...........+.......++...........+.+.+++++..++.++++++++++++++++++++++++++++++++++++++++++++++C
+BBBBBBBBBB'BB'BBBBBB'BB''B''BBB''BB''B'''''''''''C'''''''CC'''''''''''C'C'CCCCC''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHXHHXHHHHHHXHHXXHXXHHHXXHHXXHXXXXXXXXXXX XXXXXXX  XXXXXXXXXXX X X     XX  X
+XXXXXXXXXXCXXCXXXXXXCXXCCXCCXXXCCXXCCXCCCCCCCCCCC CCCCCCC  CCCCCCCCCCC C C     CC  C
 """""#"-""-"""""""-"-"-"-"----"---------------"-"--"------"-----------"-"-"""""""""""""""""""""""""""""""""""""""""""""""""+"++""""+
+CCCCCXC.CC.CCCCCCC.C.C.C.C....C...............+.+..+......+...........+.+.+++++++++++++++++++++++++++++++++++++++++++++++++C+CC++++C
+BBBBB$B'BB'BBBBBBB'B'B'B'B''''B'''''''''''''''C'C''C''''''C'''''''''''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CCCC
+HHHHH_HXHHXHHHHHHHXHXHXHXHXXXXHXXXXXXXXXXXXXXX X XX XXXXXX XXXXXXXXXXX X X
+XXXXX&XCXXCXXXXXXXCXCXCXCXCCCCXCCCCCCCCCCCCCCC C CC CCCCCC CCCCCCCCCCC C C
 """""""""""""""""--""""--"--"""-----------"-""-"---------""---------"-"""""""""""""-""""""""""""""""""""""""""""""""""""""""""+"""""
+CCCCCCCCCCCCCCCCC..CCCC..C..CCC...........+.++.+.........++.........+.+++++++++++++.++++++++++++++++++++++++++++++++++++++++++C+++++
+BBBBBBBBBBBBBBBBB''BBBB''B''BBB'''''''''''C'CC'C'''''''''CC'''''''''C'CCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC
+HHHHHHHHHHHHHHHHHXXHHHHXXHXXHHHXXXXXXXXXXX X  X XXXXXXXXX  XXXXXXXXX X             X
+XXXXXXXXXXXXXXXXXCCXXXXCCXCCXXXCCCCCCCCCCC C  C CCCCCCCCC  CCCCCCCCC C             C
 ""#""-""""#"-""""""-""-""-"------"""-----------""""-----"-""---"-""""""""-"""-""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCXCC.CCCCXC.CCCCCC.CC.CC.C......C+C...........++++.....+.++...+.++++++++.+++.++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BB$BB'BBBB$B'BBBBBB'BB'BB'B''''''BCB'''''''''''CCCC'''''C'CC'''C'CCCCCCCC'CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH_HHXHHHH_HXHHHHHHXHHXHHXHXXXXXXH HXXXXXXXXXXX    XXXXX X  XXX X        X   X
+XX&XXCXXXX&XCXXXXXXCXXCXXCXCCCCCCX XCCCCCCCCCCC    CCCCC C  CCC C        C   C
 "##""""""""""-"""-"""-""-"""---"---"------"----------"----------"-"--"-""""-"-""""-"""-""""""""""""""-"""""""""""+""""""""""""""""""
+CXXCCCCCCCCCC.CCC.CCC.CC.CCC...C...C......+..........+..........+.+..+.++++.+.++++.+++.++++++++++++++.+++++++++++C++++++++++++++++++
+B$$BBBBBBBBBB'BBB'BBB'BB'BBB'''B'''B''''''C''''''''''C''''''''''C'C''C'CCCC'C'CCCC'CCC'CCCCCCCCCCCCCC'CCCCCCCCCCC CCCCCCCCCCCCCCCCCC
+H__HHHHHHHHHHXHHHXHHHXHHXHHHXXXHXXXHXXXXXX XXXXXXXXXX XXXXXXXXXX X XX X    X X    X   X              X
+X&&XXXXXXXXXXCXXXCXXXCXXCXXXCCCXCCCXCCCCCC CCCCCCCCCC CCCCCCCCCC C CC C    C C    C   C              C
 """#"""""""""""""-"""--"-"----"-----------------------------"-------""-"""""""""""-""""""""""""""""""""""""""""""+""+"""""""""""""""
+CCCXCCCCCCCCCCCCC.CCC..C.C....C.............................+.......++.+++++++++++.++++++++++++++++++++++++++++++C++C+++++++++++++++
+BBB$BBBBBBBBBBBBB'BBB''B'B''''B'''''''''''''''''''''''''''''C'''''''CC'CCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCCCCCCCC
+HHH_HHHHHHHHHHHHHXHHHXXHXHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX  X           X
+XXX&XXXXXXXXXXXXXCXXXCCXCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC  C           C
 ###"""""""""""""""""""""""--"----"------------------------"---"-----""-""""--"""""-"-"""""""""""""""""""""""""""""""""""""""""""""""
+XXXCCCCCCCCCCCCCCCCCCCCCCC..C....C........................+...+.....++.++++..+++++.+.+++++++++++++++++++++++++++++++++++++++++++++++
+$$$BBBBBBBBBBBBBBBBBBBBBBB''B''''B''''''''''''''''''''''''C'''C'''''CC'CCCC''CCCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+___HHHHHHHHHHHHHHHHHHHHHHHXXHXXXXHXXXXXXXXXXXXXXXXXXXXXXXX XXX XXXXX  X    XX     X X
+&&&XXXXXXXXXXXXXXXXXXXXXXXCCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCCC  C    CC     C C
 """"""#"""""""-""-""--"""--""---"----------------"--------""------"-"-""""-"-""""""""""""""""""""""""""+""""""""""""""""""""""""""""
+CCCCCCXCCCCCCC.CC.CC..CCC..C+...+................+........++......+.+.++++.+.++++++++++++++++++++++++++C++++++++++++++++++++++++++++
+BBBBBB$BBBBBBB'BB'BB''BBB''BC'''C''''''''''''''''C''''''''CC''''''C'C'CCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHH_HHHHHHHXHHXHHXXHHHXXH XXX XXXXXXXXXXXXXXXX XXXXXXXX  XXXXXX X X    X X
+XXXXXX&XXXXXXXCXXCXXCCXXXCCX CCC CCCCCCCCCCCCCCCC CCCCCCCC  CCCCCC C C    C C
 """"""""""""""""-""""-""-""-"-------------------"--------"-"----"---"--"--""""---"""""-"""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCC.CCCC.CC.CC.C...................+........+.+....+...+..+..++++...+++++.+++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBBBBBBBBB'BBBB'BB'BB'B'''''''''''''''''''C''''''''C'C''''C'''C''C''CCCC'''CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHXHHHHXHHXHHXHXXXXXXXXXXXXXXXXXXX XXXXXXXX X XXXX XXX XX XX    XXX     X
+XXXXXXXXXXXXXXXXCXXXXCXXCXXCXCCCCCCCCCCCCCCCCCCC CCCCCCCC C CCCC CCC CC CC    CCC     C
 ""#"""""""""""""-"""--"-""----""------------------"------+"""----""-"--"""""""-""""""""-""""""""""""""""""""""""""""""""""""""""""""
+CCXCCCCCCCCCCCCC.CCC..C.CC....CC..................+......C+++....++.+..+++++++.++++++++.++++++++++++++++++++++++++++++++++++++++++++
+BB$BBBBBBBBBBBBB'BBB''B'BB''''BB''''''''''''''''''C'''''' CCC''''CC'C''CCCCCCC'CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH_HHHHHHHHHHHHHXHHHXXHXHHXXXXHHXXXXXXXXXXXXXXXXXX XXXXXX    XXXX  X XX       X        X
+XX&XXXXXXXXXXXXXCXXXCCXCXXCCCCXXCCCCCCCCCCCCCCCCCC CCCCCC    CCCC  C CC       C        C
 ""#"""""""""""""""""""--""-----------------------------"----"----"--"--"-"-"-"-"""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCXCCCCCCCCCCCCCCCCCCC..CC.............................+....+....+..+..+.+.+.+.+++++++++++++++++++++++++++++++++++++++++++++++++++++
+BB$BBBBBBBBBBBBBBBBBBB''BB'''''''''''''''''''''''''''''C''''C''''C''C''C'C'C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH_HHHHHHHHHHHHHHHHHHHXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX XXXX XX XX X X X X
+XX&XXXXXXXXXXXXXXXXXXXCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCC CC CC C C C C
 """""""-"-""""""--------""-----"----"--------------"----------"""-"--"-""""-"-""--""""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCC.C.CCCCCC........CC.....C....C..............+..........+++.+..+.++++.+.++..++++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBB'B'BBBBBB''''''''BB'''''B''''B''''''''''''''C''''''''''CCC'C''C'CCCC'C'CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHXHXHHHHHHXXXXXXXXHHXXXXXHXXXXHXXXXXXXXXXXXXX XXXXXXXXXX   X XX X    X X  XX
+XXXXXXXCXCXXXXXXCCCCCCCCXXCCCCCXCCCCXCCCCCCCCCCCCCC CCCCCCCCCC   C CC C    C C  CC
 """""""""""""""""""-""---"""-----------------------------------"----"""--"""-""-""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCC.CC...CCC...................................+....+++..+++.++.++++++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBBBBBBBBBBBB'BB'''BBB'''''''''''''''''''''''''''''''''''C''''CCC''CCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHXHHXXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX   XX   X  X
+XXXXXXXXXXXXXXXXXXXCXXCCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC   CC   C  C
 ""#""""""""""""""-"""--""--"----------------------------"-""-"""""-"""""""""""""""""-"""""""""""""""""""""""""""""""""""""""""""""""
+CCXCCCCCCCCCCCCCC.CCC..CC..C............................+.++.+++++.+++++++++++++++++.+++++++++++++++++++++++++++++++++++++++++++++++
+BB$BBBBBBBBBBBBBB'BBB''BB''B''''''''''''''''''''''''''''C'CC'CCCCC'CCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HH_HHHHHHHHHHHHHHXHHHXXHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X  X     X                 X
+XX&XXXXXXXXXXXXXXCXXXCCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  C     C                 C
 """""""""""""""-"""-"-"-"--"--------------=-------------"-""-""""--"""""""""""""""--""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCC.C+C.C.C.C..C..............C.............+.++.++++..+++++++++++++++..++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBBBBBBBB'BCB'B'B'B''B'''''''''''''' '''''''''''''C'CC'CCCC''CCCCCCCCCCCCCCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHXH HXHXHXHXXHXXXXXXXXXXXXXX XXXXXXXXXXXXX X  X    XX               XX
+XXXXXXXXXXXXXXXCX XCXCXCXCCXCCCCCCCCCCCCCC CCCCCCCCCCCCC C  C    CC               CC
 """"#-""""""-"""-""-""""""------------------"-------"--"--"-"-"-"-"""""""""""""-""""""""""""""""""""""""""""""""""""""+""""""""""+"+
+CCCCX.CCCCCC.CCC.CC.CCCCCC..................+.......+..+..+.+.+.+.+++++++++++++.++++++++++++++++++++++++++++++++++++++C++++++++++C+C
+BBBB$'BBBBBB'BBB'BB'BBBBBB''''''''''''''''''C'''''''C''C''C'C'C'C'CCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC C
+HHHH_XHHHHHHXHHHXHHXHHHHHHXXXXXXXXXXXXXXXXXX XXXXXXX XX XX X X X X             X
+XXXX&CXXXXXXCXXXCXXCXXXXXXCCCCCCCCCCCCCCCCCC CCCCCCC CC CC C C C C             C
 """""""""-""""""""--""""""----------------"--------------"---"-"--"---""-"""""""""-"""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCC.CCCCCCCC..CCCCCC................+..............+...+.+..+...++.+++++++++.+++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBB'BBBBBBBB''BBBBBB''''''''''''''''C''''''''''''''C'''C'C''C'''CC'CCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHXHHHHHHHHXXHHHHHHXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX XXX X XX XXX  X         X
+XXXXXXXXXCXXXXXXXXCCXXXXXXCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC CCC C CC CCC  C         C
 """""""""""""""""""""""""--""--------------"-"-----------"--""-""-"--"""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""
+CCCCCCCCCCCCCCCCCCCCCCCCC..CC..............+.+...........+..++.++.+..+++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++
+BBBBBBBBBBBBBBBBBBBBBBBBB''BB''''''''''''''C'C'''''''''''C''CC'CC'C''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC
+HHHHHHHHHHHHHHHHHHHHHHHHHXXHHXXXXXXXXXXXXXX X XXXXXXXXXXX XX  X  X XX   X
+XXXXXXXXXXXXXXXXXXXXXXXXXCCXXCCCCCCCCCCCCCC C CCCCCCCCCCC CC  C  C CC   C
 """"""""""""""""""""-"""---"----"-----------------"------"------"""-"""-"""""""-"""""""""""""""""""""""""""""""""""""""""""""""""+""
+CCCCCCCCCCCCCCCCCCCC.CCC...C....C.................+......+......+++.+++.+++++++.+++++++++++++++++++++++++++++++++++++++++++++++++C++
+BBBBBBBBBBBBBBBBBBBB'BBB'''B''''B'''''''''''''''''C''''''C''''''CCC'CCC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC
+HHHHHHHHHHHHHHHHHHHHXHHHXXXHXXXXHXXXXXXXXXXXXXXXXX XXXXXX XXXXXX   X   X       X
+XXXXXXXXXXXXXXXXXXXXCXXXCCCXCCCCXCCCCCCCCCCCCCCCCC CCCCCC CCCCCC   C   C       C
 "#"""-""#-""-""""""""""--------------------------------------"""-""-"-"""""--"""""""-""""""""""""""""""""""""""""""""""""+""""""""""
+CXCCC.CCX.CC.CCCCCCCCCC......................................+++.++.+.+++++..+++++++.++++++++++++++++++++++++++++++++++++C++++++++++
+B$BBB'BB$'BB'BBBBBBBBBB''''''''''''''''''''''''''''''''''''''CCC'CC'C'CCCCC''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC
+H_HHHXHH_XHHXHHHHHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   X  X X     XX       X
+X&XXXCXX&CXXCXXXXXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   C  C C     CC       C
 """""""""""""""""-""""-"---"--------------------------"---"-""-"""--""""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCC.CCCC.C...C..........................+...+.++.+++..++++++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBBBBBBBBBB'BBBB'B'''B''''''''''''''''''''''''''C'''C'CC'CCC''CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHXHHHHXHXXXHXXXXXXXXXXXXXXXXXXXXXXXXXX XXX X  X   XX        X
+XXXXXXXXXXXXXXXXXCXXXXCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCC CCC C  C   CC        C
 """"""""""""""""""""""""-"------------------------------""-"""-""--"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCC.C..............................++.+++.++..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BBBBBBBBBBBBBBBBBBBBBBBB'B''''''''''''''''''''''''''''''CC'CCC'CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHHHHHHHHHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X   X  XX
+XXXXXXXXXXXXXXXXXXXXXXXXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C   C  CC
 """"""""""""""""-"-""----"--"-------------------"---"---""""""-""-""""""""""""""""""""""""""""""""""""""""+"""""""""""""""""""""""""
+CCCCCCCCCCCCCCCC.C.CC....C..C...................+...+...++++++.++.++++++++++++++++++++++++++++++++++++++++C+++++++++++++++++++++++++
+BBBBBBBBBBBBBBBB'B'BB''''B''B'''''''''''''''''''C'''C'''CCCCCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCC
+HHHHHHHHHHHHHHHHXHXHHXXXXHXXHXXXXXXXXXXXXXXXXXXX XXX XXX      X  X
+XXXXXXXXXXXXXXXXCXCXXCCCCXCCXCCCCCCCCCCCCCCCCCCC CCC CCC      C  C
 """"""""#-"""-"-"""""""-""-----------------"-"---"-"---""-"-""""""-+""""""""""""""""""""""""""""""""""""""+"""""""""""""""""+""""++"
+CCCCCCCCX.CCC.C.CCCC+CC.CC.................+.+...+.+...++.+.++++++.C++++++++++++++++++++++++++++++++++++++C+++++++++++++++++C++++CC+
+BBBBBBBB$'BBB'B'BBBBCBB'BB'''''''''''''''''C'C'''C'C'''CC'C'CCCCCC' CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCC CCCC  C
+HHHHHHHH_XHHHXHXHHHH HHXHHXXXXXXXXXXXXXXXXX X XXX X XXX  X X      X
+XXXXXXXX&CXXXCXCXXXX XXCXXCCCCCCCCCCCCCCCCC C CCC C CCC  C C      C
 ""#"""""""""""""-""-"""-""---------------------"--"--"-""""--""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""
+CCXCCCCCCCCCCCCC.CC.CCC.CC.....................+..+..+.++++..++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++
+BB$BBBBBBBBBBBBB'BB'BBB'BB'''''''''''''''''''''C''C''C'CCCC''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC
+HH_HHHHHHHHHHHHHXHHXHHHXHHXXXXXXXXXXXXXXXXXXXXX XX XX X    XX  X
+XX&XXXXXXXXXXXXXCXXCXXXCXXCCCCCCCCCCCCCCCCCCCCC CC CC C    CC  C
 """"""""""""""""""""""--"""--------------------"-"---"---""--"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""++
+CCCCCCCCCCCCCCCCCCCCCC..CCC....................+.+...+...++..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++CC
+BBBBBBBBBBBBBBBBBBBBBB''BBB''''''''''''''''''''C'C'''C'''CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC
+HHHHHHHHHHHHHHHHHHHHHHXXHHHXXXXXXXXXXXXXXXXXXXX X XXX XXX  XX
+XXXXXXXXXXXXXXXXXXXXXXCCXXXCCCCCCCCCCCCCCCCCCCC C CCC CCC  CC
 """"""""""""""""""""""--"--"-------------------"-"-------""-""-"""""""-""""""""""""""""""""""""""""""""""""""""+"+""""+""""""+""""""
+CCCCCCCCCCCCCCCCCCCCCC..C..C...................+.+.......++.++.+++++++.++++++++++++++++++++++++++++++++++++++++C+C++++C++++++C++++++
+BBBBBBBBBBBBBBBBBBBBBB''B''B'''''''''''''''''''C'C'''''''CC'CC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCC CCCCCC CCCCCC
+HHHHHHHHHHHHHHHHHHHHHHXXHXXHXXXXXXXXXXXXXXXXXXX X XXXXXXX  X  X       X
+XXXXXXXXXXXXXXXXXXXXXXCCXCCXCCCCCCCCCCCCCCCCCCC C CCCCCCC  C  C       C
 ""#""-""-"--"""-""""----""--"----------------"""---""-""-"---""-""""""""""""""""""""""""""""""""""""""""""""""""+""""+"""+""""""""""
+CCXCC.CC.C..CCC.CCCC....CC..C................+++...++.++.+...++.++++++++++++++++++++++++++++++++++++++++++++++++C++++C+++C++++++++++
+BB$BB'BB'B''BBB'BBBB''''BB''B''''''''''''''''CCC'''CC'CC'C'''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCC CCCCCCCCCC
+HH_HHXHHXHXXHHHXHHHHXXXXHHXXHXXXXXXXXXXXXXXXX   XXX  X  X XXX  X
+XX&XXCXXCXCCXXXCXXXXCCCCXXCCXCCCCCCCCCCCCCCCC   CCC  C  C CCC  C
 -"""""""""""""-""""""""-""--------------------------""-"-""-"-""""-"--"""""""""""""""""""""""""""""""""""""""""""""""""""""""+""""""
+.CCCCCCCCCCCCC.CCCCCCCC.CC..........................++.+.++.+.++++.+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++C++++++
+'BBBBBBBBBBBBB'BBBBBBBB'BB''''''''''''''''''''''''''CC'C'CC'C'CCCC'C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC
+XHHHHHHHHHHHHHXHHHHHHHHXHHXXXXXXXXXXXXXXXXXXXXXXXXXX  X X  X X    X XX
+CXXXXXXXXXXXXXCXXXXXXXXCXXCCCCCCCCCCCCCCCCCCCCCCCCCC  C C  C C    C CC
 -""""""""""""""""-""""--"------------------------"--"-"--"""-""-""-""-""""""""""""""""""""""""""""""""+"""""""""""""+"""""""+""""""+
+.CCCCCCCCCCCCCCCC.CCCC..C........................+..+.+..+++.++.++.++.++++++++++++++++++++++++++++++++C+++++++++++++C+++++++C++++++C
+'BBBBBBBBBBBBBBBB'BBBB''B''''''''''''''''''''''''C''C'C''CCC'CC'CC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC CCCCCCC CCCCCC
+XHHHHHHHHHHHHHHHHXHHHHXXHXXXXXXXXXXXXXXXXXXXXXXXX XX X XX   X  X  X  X
+CXXXXXXXXXXXXXXXXCXXXXCCXCCCCCCCCCCCCCCCCCCCCCCCC CC C CC   C  C  C  C
 -""""""""""""""""-""""--"-------------------"----"-----"---"--"""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""++""""""+
+.CCCCCCCCCCCCCCCC.CCCC..C...................+....+.....+...+..+++++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++CC++++++C
+'BBBBBBBBBBBBBBBB'BBBB''B'''''''''''''''''''C''''C'''''C'''C''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCC
+XHHHHHHHHHHHHHHHHXHHHHXXHXXXXXXXXXXXXXXXXXXX XXXX XXXXX XXX XX       X
+CXXXXXXXXXXXXXXXXCXXXXCCXCCCCCCCCCCCCCCCCCCC CCCC CCCCC CCC CC       C
 --"""""""""""""""-"""-"-------------------------"----"-"--""-"""""""-"""""""""""""""""""""""""""+"""+""""+"""""""""""+"""++""++"""+"
+..CCCCCCCCCCCCCCC.CCC.C.........................+....+.+..++.+++++++.+++++++++++++++++++++++++++C+++C++++C+++++++++++C+++CC++CC+++C+
+''BBBBBBBBBBBBBBB'BBB'B'''''''''''''''''''''''''C''''C'C''CC'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCC CCCCCCCCCCC CCC  CC  CCC C
+XXHHHHHHHHHHHHHHHXHHHXHXXXXXXXXXXXXXXXXXXXXXXXXX XXXX X XX  X       X
+CCXXXXXXXXXXXXXXXCXXXCXCCCCCCCCCCCCCCCCCCCCCCCCC CCCC C CC  C       C
 --"""""""""#""""""-"-----------"------------"""""------""-"""-""-""""""""""""""""""""""""""""""""""""""""+"""""""+""""+""""""""+""++
+..CCCCCCCCCXCCCCCC.C...........+............+++++......++.+++.++.++++++++++++++++++++++++++++++++++++++++C+++++++C++++C++++++++C++CC
+''BBBBBBBBB$BBBBBB'B'''''''''''C''''''''''''CCCCC''''''CC'CCC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC CCCC CCCCCCCC CC
+XXHHHHHHHHH_HHHHHHXHXXXXXXXXXXX XXXXXXXXXXXX     XXXXXX  X   X  X
+CCXXXXXXXXX&XXXXXXCXCCCCCCCCCCC CCCCCCCCCCCC     CCCCCC  C   C  C
 --""""""""""""""""-"-"---"-----"------------"----------"-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"+""""""""""++
+..CCCCCCCCCCCCCCCC.C.C...C.....+............+..........+.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+C++++++++++CC
+''BBBBBBBBBBBBBBBB'B'B'''B'''''C''''''''''''C''''''''''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCCCCCCC
+XXHHHHHHHHHHHHHHHHXHXHXXXHXXXXX XXXXXXXXXXXX XXXXXXXXXX X
+CCXXXXXXXXXXXXXXXXCXCXCCCXCCCCC CCCCCCCCCCCC CCCCCCCCCC C
 "-""""""""""-""""-"""----"---"----------------"""-----"""""-"-""""-"""""""""""""""""""""""""""""""+""""+"""""""""""""""+"""""+"+""+"
+C.CCCCCCCCCC.CCCC.CCC....C...+................+++.....+++++.+.++++.+++++++++++++++++++++++++++++++C++++C+++++++++++++++C+++++C+C++C+
+B'BBBBBBBBBB'BBBB'BBB''''B'''C''''''''''''''''CCC'''''CCCCC'C'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCCCCCCCCCCCCC CCCCC C CC C
+HXHHHHHHHHHHXHHHHXHHHXXXXHXXX XXXXXXXXXXXXXXXX   XXXXX     X X    X
+XCXXXXXXXXXXCXXXXCXXXCCCCXCCC CCCCCCCCCCCCCCCC   CCCCC     C C    C
 "-"""-"""""----"--"-"----"--------------="-"""---""----""""""""""""""""""""""""""""""""""""""+""""+"""""+"+"+"+++"+"++"++"+++++"++++
+C.+CC.CCCCC....C..C.C....C..............C+.+++...++....++++++++++++++++++++++++++++++++++++++C++++C+++++C+C+C+CCC+C+CC+CC+CCCCC+CCCC
+B'CBB'BBBBB''''B''B'B''''B'''''''''''''' C'CCC'''CC''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC CCCCC C C C   C C  C  C     C
+HX HHXHHHHHXXXXHXXHXHXXXXHXXXXXXXXXXXXXX  X   XXX  XXXX
+XC XXCXXXXXCCCCXCCXCXCCCCXCCCCCCCCCCCCCC  C   CCC  CCCC
 ""-""-""""""""""-"""-----"------"-------"------"--"----""--""-""-""""""""""""""""""""""""""""""""""""+""""""""""""""""""+"+"""+"""""
+CC.CC.CCCCCCCCCC.CCC.....C......C.......+......+..+....++..++.++.++++++++++++++++++++++++++++++++++++C++++++++++++++++++C+C+++C+++++
+BB'BB'BBBBBBBBBB'BBB'''''B''''''B'''''''C''''''C''C''''CC''CC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC C CCC CCCCC
+HHXHHXHHHHHHHHHHXHHHXXXXXHXXXXXXHXXXXXXX XXXXXX XX XXXX  XX  X  X
+XXCXXCXXXXXXXXXXCXXXCCCCCXCCCCCCXCCCCCCC CCCCCC CC CCCC  CC  C  C
 """""-"""-"""""-"""-""--"--------------------"----------"-"""--"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"+"+"
+CCCCC.CCC.CCCCC.CCC.CC..C....................+..........+.+++..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+C+C+
+BBBBB'BBB'BBBBB'BBB'BB''B''''''''''''''''''''C''''''''''C'CCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C C
+HHHHHXHHHXHHHHHXHHHXHHXXHXXXXXXXXXXXXXXXXXXXX XXXXXXXXXX X   XX
+XXXXXCXXXCXXXXXCXXXCXXCCXCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC C   CC
 """""""""""""-""""""""-""--------------------""----"------""""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""+""+"""+""
+CCCCCCCCCCCCC.CCCCCCCC.+C....................++....+......++++++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++C++C+++C++
+BBBBBBBBBBBBB'BBBBBBBB'CB''''''''''''''''''''CC''''C''''''CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC CC
+HHHHHHHHHHHHHXHHHHHHHHX HXXXXXXXXXXXXXXXXXXXX  XXXX XXXXXX        X
+XXXXXXXXXXXXXCXXXXXXXXC XCCCCCCCCCCCCCCCCCCCC  CCCC CCCCCC        C
 -""-""-#"""""""""-""-----"-""-----------"--"---"------""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""++"+++++++"+++++++
+.CC.CC.XCCCCCCCCC.CC.....+.CC...........+..+...+......++++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++CC+CCCCCCC+CCCCCCC
+'BB'BB'$BBBBBBBBB'BB'''''C'BB'''''''''''C''C'''C''''''CCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C       C
+XHHXHHX_HHHHHHHHHXHHXXXXX XHHXXXXXXXXXXX XX XXX XXXXXX      X
+CXXCXXC&XXXXXXXXXCXXCCCCC CXXCCCCCCCCCCC CC CCC CCCCCC      C
 """--"-""-""""""-""-""-"---"--------------"-----""-------"---""-"""""""""""""""""""""""""""""""""""""""""""""""""""""++"""+"""+"""++
+CCC..C.CC.CCCCCC.CC.CC.C...C..............+.....++.......+...++.+++++++++++++++++++++++++++++++++++++++++++++++++++++CC+++C+++C+++CC
+BBB''B'BB'BBBBBB'BB'BB'B'''B''''''''''''''C'''''CC'''''''C'''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCC CCC CCC
+HHHXXHXHHXHHHHHHXHHXHHXHXXXHXXXXXXXXXXXXXX XXXXX  XXXXXXX XXX  X
+XXXCCXCXXCXXXXXXCXXCXXCXCCCXCCCCCCCCCCCCCC CCCCC  CCCCCCC CCC  C
 """--""""--""""""""""-"------""----------------------"-"""""""""""""""""""""""+"""""""""""""""""""""""""""""""""""""""+"""++""++++""
+CCC..CCCC..CCCCCCCCCC.C......C+......................+.+++++++++++++++++++++++C+++++++++++++++++++++++++++++++++++++++C+++CC++CCCC++
+BBB''BBBB''BBBBBBBBBB'B''''''BC''''''''''''''''''''''C'CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC  CC    CC
+HHHXXHHHHXXHHHHHHHHHHXHXXXXXXH XXXXXXXXXXXXXXXXXXXXXX X
+XXXCCXXXXCCXXXXXXXXXXCXCCCCCCX CCCCCCCCCCCCCCCCCCCCCC C
 """---""""--"-""""""--"----"-----"-------------------"""-"""""""""""""""""""""+"""""""""""""""""""""""""""""""""""""""""""+"+"+++"""
+CCC...CCCC..C.CCCCCC..C....+.....C...................+++.+++++++++++++++++++++C+++++++++++++++++++++++++++++++++++++++++++C+C+CCC+++
+BBB'''BBBB''B'BBBBBB''B''''C'''''B'''''''''''''''''''CCC'CCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C   CCC
+HHHXXXHHHHXXHXHHHHHHXXHXXXX XXXXXHXXXXXXXXXXXXXXXXXXX   X
+XXXCCCXXXXCCXCXXXXXXCCXCCCC CCCCCXCCCCCCCCCCCCCCCCCCC   C
 """"---"----""""-""---"-------"-----------"---"-"----"""""""-""""""""""""""""""""""""""""""""""""""""""""+"+""""++"""+"++""++"++++++
+CCCC...C....CCCC.CC...C.......+...........+...+.+....+++++++.++++++++++++++++++++++++++++++++++++++++++++C+C++++CC+++C+CC++CC+CCCCCC
+BBBB'''B''''BBBB'BB'''B'''''''C'''''''''''C'''C'C''''CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCC  CCC C  CC  C
+HHHHXXXHXXXXHHHHXHHXXXHXXXXXXX XXXXXXXXXXX XXX X XXXX       X
+XXXXCCCXCCCCXXXXCXXCCCXCCCCCCC CCCCCCCCCCC CCC C CCCC       C
 """-"-""""""-"-"""-"""-""-------------------"--------"---"""-""""""""""""""""""""""""""""""""""""""""""""""""""""+""+"""+"""+""+""+"
+CCC.C.CCCCCC.C.CCC.CCC.CC...................+........+...+++.++++++++++++++++++++++++++++++++++++++++++++++++++++C++C+++C+++C++C++C+
+BBB'B'BBBBBB'B'BBB'BBB'BB'''''''''''''''''''C''''''''C'''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCC CCC CC CC C
+HHHXHXHHHHHHXHXHHHXHHHXHHXXXXXXXXXXXXXXXXXXX XXXXXXXX XXX   X
+XXXCXCXXXXXXCXCXXXCXXXCXXCCCCCCCCCCCCCCCCCCC CCCCCCCC CCC   C
 """-"-"-"--"---"""-"---"---"---------"--------------""--"-""""""""""""""""""""""""""""""""""""""""""""""""""+""""""+++"""++""+"+"""+
+CCC.C.C.C..C...CCC.C...C...+.........+..............++..+.++++++++++++++++++++++++++++++++++++++++++++++++++C++++++CCC+++CC++C+C+++C
+BBB'B'B'B''B'''BBB'B'''B'''C'''''''''C''''''''''''''CC''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCC   CCC  CC C CCC
+HHHXHXHXHXXHXXXHHHXHXXXHXXX XXXXXXXXX XXXXXXXXXXXXXX  XX X
+XXXCXCXCXCCXCCCXXXCXCCCXCCC CCCCCCCCC CCCCCCCCCCCCCC  CC C
 """""--"-"""--""""""---------------------------------"-""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+""++""+""+"+""
+CCCCC..C.CCC..CCCCCC.................................+.++.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C++CC++C++C+C++
+BBBBB''B'BBB''BBBBBB'''''''''''''''''''''''''''''''''C'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC  CC CC C CC
+HHHHHXXHXHHHXXHHHHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X  X
+XXXXXCCXCXXXCCXXXXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  C
 ""#"--""-"""""-"""""""--"-"-------------"----"--"----"--""""""""""""""""""""""""""""""""""""""""""""""""+M"""""""+"+"++"""+""+""+++"
+CCXC..CC.CCCCC.CCCCCCC..C.C.............+....+..+....+..++++++++++++++++++++++++++++++++++++++++++++++++C +++++++C+C+CC+++C++C++CCC+
+BB$B''BB'BBBBB'BBBBBBB''B'B'''''''''''''C''''C''C''''C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCCC C C  CCC CC CC   C
+HH_HXXHHXHHHHHXHHHHHHHXXHXHXXXXXXXXXXXXX XXXX XX XXXX XX
+XX&XCCXXCXXXXXCXXXXXXXCCXCXCCCCCCCCCCCCC CCCC CC CCCC CC
 """"--"-""-"""-""""""-""--------------"------------"""""--""""""+""""""""""""""""""""""""""""""""""""""""""""""""+""""++""++"+""++++
+CCCC..C.CC.CCC.CCCCCC.CC..............+............+++++..++++++C++++++++++++++++++++++++++++++++++++++++++++++++C++++CC++CC+C++CCCC
+BBBB''B'BB'BBB'BBBBBB'BB''''''''''''''C''''''''''''CCCCC''CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  CC  C CC
+HHHHXXHXHHXHHHXHHHHHHXHHXXXXXXXXXXXXXX XXXXXXXXXXXX     XX
+XXXXCCXCXXCXXXCXXXXXXCXXCCCCCCCCCCCCCC CCCCCCCCCCCC     CC
 """"---""""""--""""--"--------------"-------------------""--""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""++"++""++""+""
+CCCC...CCCCCC..CCCC..C..............+...................++..++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++CC+CC++CC++C++
+BBBB'''BBBBBB''BBBB''B''''''''''''''C'''''''''''''''''''CC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC  C  CC  CC CC
+HHHHXXXHHHHHHXXHHHHXXHXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX  XX
+XXXXCCCXXXXXXCCXXXXCCXCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCC  CC
 """""--""""""""-"""----"------------------"---------"-------""--""""""""""""""""""""""=""""""""""""""""""""""""+""""""+""++"""+""+""
+CCCCC..CCCCCCCC.CCC....C..................+.........+.......++..++++++++++++++++++++++C++++++++++++++++++++++++C++++++C++CC+++C++C++
+BBBBB''BBBBBBBB'BBB''''B''''''''''''''''''C'''''''''C'''''''CC''CCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCC CCCCCC CC  CCC CC CC
+HHHHHXXHHHHHHHHXHHHXXXXHXXXXXXXXXXXXXXXXXX XXXXXXXXX XXXXXXX  XX
+XXXXXCCXXXXXXXXCXXXCCCCXCCCCCCCCCCCCCCCCCC CCCCCCCCC CCCCCCC  CC
 """"--"-"""-""""""""-"-"---"----------------------""-----"-""""""""-"""""""""""""""""""""""""""""""""""+"""""+"+""""+"+"+"""""+""""+
+CCCC..C.CCC.+CCCCCCC.C.C...C......................++.....+.++++++++.+++++++++++++++++++++++++++++++++++C+++++C+C++++C+C+C+++++C++++C
+BBBB''B'BBB'CBBBBBBB'B'B'''B''''''''''''''''''''''CC'''''C'CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC C CCCC C C CCCCC CCCC
+HHHHXXHXHHHX HHHHHHHXHXHXXXHXXXXXXXXXXXXXXXXXXXXXX  XXXXX X        X
+XXXXCCXCXXXC XXXXXXXCXCXCCCXCCCCCCCCCCCCCCCCCCCCCC  CCCCC C        C
 """""""""-""""""---""------------------------------"""------"""""""""""""""""""""""""""""""""""""""""""""""""""""++""++"+++"""""+"++
+CCCCCCCCC.CCCCCC...CC..............................+++......+++++++++++++++++++++++++++++++++++++++++++++++++++++CC++CC+CCC+++++C+CC
+BBBBBBBBB'BBBBBB'''BB''''''''''''''''''''''''''''''CCC''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CC  C   CCCCC C
+HHHHHHHHHXHHHHHHXXXHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX   XXXXXX
+XXXXXXXXXCXXXXXXCCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CCCCCC
 """"--"""""""-"""-"""----------------------------"-""----"""-""-""-""""""""""""""""""""""""""""""""""""""""""+"+"""""+++"""""""""+""
+CCCC..CCCCCCC.CCC.CCC............................+.++....+++.++.++.++++++++++++++++++++++++++++++++++++++++++C+C+++++CCC+++++++++C++
+BBBB''BBBBBBB'BBB'BBB''''''''''''''''''''''''''''C'CC''''CCC'CC'CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCC   CCCCCCCCC CC
+HHHHXXHHHHHHHXHHHXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX X  XXXX   X  X  X
+XXXXCCXXXXXXXCXXXCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CCCC   C  C  C
 """"-""""""""""-""""""-""------"-"----------"-----"-"-----"--""--""""""""-""""""""""""""""""""""""""""""""""+"""""+"+++""""""+""""""
+CCCC.CCCCCCCCCC.CCCCCC.CC......+.C..........+.....+.+.....+..++..++++++++.++++++++++++++++++++++++++++++++++C+++++C+CCC++++++C++++++
+BBBB'BBBBBBBBBB'BBBBBB'BB''''''C'B''''''''''C'''''C'C'''''C''CC''CCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC C   CCCCCC CCCCCC
+HHHHXHHHHHHHHHHXHHHHHHXHHXXXXXX XHXXXXXXXXXX XXXXX X XXXXX XX  XX        X
+XXXXCXXXXXXXXXXCXXXXXXCXXCCCCCC CXCCCCCCCCCC CCCCC C CCCCC CC  CC        C
 """""""""""-"""-"""""---"-----"---"---------"---------"--""-""""""""""""""""""""""""""""+""+"""""""""+"+"""++""++++"+++"+++++"+"++++
+CCCCCCCCCCC.CCC.CCCCC...C.....+...+.........+.........+..++.++++++++++++++++++++++++++++C++C+++++++++C+C+++CC++CCCC+CCC+CCCCC+C+CCCC
+BBBBBBBBBBB'BBB'BBBBB'''B'''''C'''C'''''''''C'''''''''C''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCC C CCC  CC    C   C     C C
+HHHHHHHHHHHXHHHXHHHHHXXXHXXXXX XXX XXXXXXXXX XXXXXXXXX XX  X
+XXXXXXXXXXXCXXXCXXXXXCCCXCCCCC CCC CCCCCCCCC CCCCCCCCC CC  C
 """"-""""""-"""-""------------"------------------"-"-""""-""""""""""""""""""""""""""""""""+""""""""""""""""+""""+"+++"+""+++"++++++"
+CCCC.CCCCCC.CCC.CC............+..................+.+.++++.++++++++++++++++++++++++++++++++C++++++++++++++++C++++C+CCC+C++CCC+CCCCCC+
+BBBB'BBBBBB'BBB'BB''''''''''''C''''''''''''''''''C'C'CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCC CCCC C   C CC   C      C
+HHHHXHHHHHHXHHHXHHXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX X X    X
+XXXXCXXXXXXCXXXCXXCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC C C    C
 """"-""""""""""-"""-""------------------------"-----"---"""""""""""""""""""""""""""""""""""""""""""""""""""""""++"++++++++"""+"++++"
+CCCC.CCCCCCCCCC.CCC.CC........................+.....+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++CC+CCCCCCCC+++C+CCCC+
+BBBB'BBBBBBBBBB'BBB'BB''''''''''''''''''''''''C'''''C'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C        CCC C    C
+HHHHXHHHHHHHHHHXHHHXHHXXXXXXXXXXXXXXXXXXXXXXXX XXXXX XXX
+XXXXCXXXXXXXXXXCXXXCXXCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CCC
 """"-""""--""-"-"""-------------"------------"---"--"----""""""""""""""""""""""""""""""""""""""""""""""""""""""""+++++"+"++""+"+"+++
+CCCC.CCCC..CC.C.CCC.............+............+...+..+....++++++++++++++++++++++++++++++++++++++++++++++++++++++++CCCCC+C+CC++C+C+CCC
+BBBB'BBBB''BB'B'BBB'''''''''''''C''''''''''''C'''C''C''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC     C C  CC C C
+HHHHXHHHHXXHHXHXHHHXXXXXXXXXXXXX XXXXXXXXXXXX XXX XX XXXX
+XXXXCXXXXCCXXCXCXXXCCCCCCCCCCCCC CCCCCCCCCCCC CCC CC CCCC
 """---"-"""""---"-----"----------------------"--"----"""-"""""-""""""""""""""""""""""""""""""""""""""""""""""+""""++""+"+++++"+"+"++
+CCC...C.CCCCC...C.....C......................+..+....+++.+++++.++++++++++++++++++++++++++++++++++++++++++++++C++++CC++C+CCCCC+C+C+CC
+BBB'''B'BBBBB'''B'''''B''''''''''''''''''''''C''C''''CCC'CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  CC C     C C C
+HHHXXXHXHHHHHXXXHXXXXXHXXXXXXXXXXXXXXXXXXXXXX XX XXXX   X     X
+XXXCCCXCXXXXXCCCXCCCCCXCCCCCCCCCCCCCCCCCCCCCC CC CCCC   C     C
 """""""""""""""-""--"---"----"---------"-------"--"----""""""""""""""""""""""""""""""""""""""""""""""""+"+"+"""""+++++++++++"+++""++
+CCCCCCCCCCCCCCC.CC..C...C....C.........+.......+..+....++++++++++++++++++++++++++++++++++++++++++++++++C+C+C+++++CCCCCCCCCCC+CCC++CC
+BBBBBBBBBBBBBBB'BB''B'''B''''B'''''''''C'''''''C''C''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C CCCCC           C   CC
+HHHHHHHHHHHHHHHXHHXXHXXXHXXXXHXXXXXXXXX XXXXXXX XX XXXX
+XXXXXXXXXXXXXXXCXXCCXCCCXCCCCXCCCCCCCCC CCCCCCC CC CCCC
 """""""-"""-"""-""--"--------------------------"----"-"""""""-""""""""""""""""""""""""""""""""""""""""""""+"""++"+++++""+++"+"++++++
+CCCCCCC.CCC.CCC.CC..C..........................+....+.+++++++.++++++++++++++++++++++++++++++++++++++++++++C+++CC+CCCCC++CCC+C+CCCCCC
+BBBBBBB'BBB'BBB'BB''B''''''''''''''''''''''''''C''''C'CCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC  C     CC   C C
+HHHHHHHXHHHXHHHXHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX XXXX X       X
+XXXXXXXCXXXCXXXCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC C       C
 """""""""""""-"--"-----------------------"---""--""---"""""""""""""""""""""""""""""""""""""""""""""""""""""""+""""++"+"++++"+"++++"+
+CCCCCCCCCCCCC.C..C.......................+...++..++...+++++++++++++++++++++++++++++++++++++++++++++++++++++++C++++CC+C+CCCC+C+CCCC+C
+BBBBBBBBBBBBB'B''B'''''''''''''''''''''''C'''CC''CC'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC  C C    C C    C
+HHHHHHHHHHHHHXHXXHXXXXXXXXXXXXXXXXXXXXXXX XXX  XX  XXX
+XXXXXXXXXXXXXCXCCXCCCCCCCCCCCCCCCCCCCCCCC CCC  CC  CCC
 ""-"""-""""--""""-"""---------------------"--+-""""-"-""""""""""""""""""""""""""""""""""""""""""""++"+"""+"""+++++++"+++++++"+++++++
+CC.CCC.CCCC..CCCC.CCC.....................+..C.++++.+.++++++++++++++++++++++++++++++++++++++++++++CC+C+++C+++CCCCCCC+CCCCCCC+CCCCCCC
+BB'BBB'BBBB''BBBB'BBB'''''''''''''''''''''C'' 'CCCC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C CCC CCC       C       C
+HHXHHHXHHHHXXHHHHXHHHXXXXXXXXXXXXXXXXXXXXX XX X    X X
+XXCXXXCXXXXCCXXXXCXXXCCCCCCCCCCCCCCCCCCCCC CC C    C C
 """""""-""""""-"""---"-----------------------"-"---""-"""-""""""""""""""""""""""""""""""""""""""+"""""""""""""""+""+++++++++++++""++
+CCCCCCC.CCCCCC.CCC...C.......................+.+...++.+++.++++++++++++++++++++++++++++++++++++++C+++++++++++++++C++CCCCCCCCCCCCC++CC
+BBBBBBB'BBBBBB'BBB'''B'''''''''''''''''''''''C'C'''CC'CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC CC             CC
+HHHHHHHXHHHHHHXHHHXXXHXXXXXXXXXXXXXXXXXXXXXXX X XXX  X   X
+XXXXXXXCXXXXXXCXXXCCCXCCCCCCCCCCCCCCCCCCCCCCC C CCC  C   C
 """""--"-"""""-"-""--"----------------------"------"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""++++"""++++++++++"++
+CCCCC..C.CCCCC.C.CC..C......................+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++CCCC+++CCCCCCCCCC+CC
+BBBBB''B'BBBBB'B'BB''B''''''''''''''''''''''C''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC    CCC          C
+HHHHHXXHXHHHHHXHXHHXXHXXXXXXXXXXXXXXXXXXXXXX XXXXXX
+XXXXXCCXCXXXXXCXCXXCCXCCCCCCCCCCCCCCCCCCCCCC CCCCCC
 "-""""""-"""""--"------"-----------------"--"-"---"""-"""""""""""""""""""""""""""""""""+"""""""""""""""+"""""++"+++""""++++"+++++"++
+C.CCCCCC.CCCCC..C......C.................+..+.+...+++.+++++++++++++++++++++++++++++++++C+++++++++++++++C+++++CC+CCC++++CCCC+CCCCC+CC
+B'BBBBBB'BBBBB''B''''''B'''''''''''''''''C''C'C'''CCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC CCCCC  C   CCCC    C     C
+HXHHHHHHXHHHHHXXHXXXXXXHXXXXXXXXXXXXXXXXX XX X XXX   X
+XCXXXXXXCXXXXXCCXCCCCCCXCCCCCCCCCCCCCCCCC CC C CCC   C
 --""""""-"""""---"------"--"------------"-""-"-"-""-"-"""""""""""""""""""""""""""""""""""""""""""""""+"+"""+"""+"++++++++++++++++"++
+..CCCCCC.CCCCC...C......C..+............+.++.+.+.++.+.+++++++++++++++++++++++++++++++++++++++++++++++C+C+++C+++C+CCCCCCCCCCCCCCCC+CC
+''BBBBBB'BBBBB'''B''''''B''C''''''''''''C'CC'C'C'CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCC CCC C                C
+XXHHHHHHXHHHHHXXXHXXXXXXHXX XXXXXXXXXXXX X  X X X  X X
+CCXXXXXXCXXXXXCCCXCCCCCCXCC CCCCCCCCCCCC C  C C C  C C
 """""""""-""--""----"-------------------------""""-""""""""""""""""""""""""""""""""+""""""""""""""""""""""""+""""++++"++++++++++++++
+CCCCCCCCC.CC..CC....C.........................++++.++++++++++++++++++++++++++++++++C++++++++++++++++++++++++C++++CCCC+CCCCCCCCCCCCCC
+BBBBBBBBB'BB''BB''''B'''''''''''''''''''''''''CCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCC CCCC    C
+HHHHHHHHHXHHXXHHXXXXHXXXXXXXXXXXXXXXXXXXXXXXXX    X
+XXXXXXXXXCXXCCXXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCC    C
 """""-""--"""--"--"-----------------------"--"--""-"""""""""""""""""""""""""""""""""""""""""""""""""""+"""""+"""+++++"++++++++++++++
+CCCCC.CC..CCC..C..C.......................+..+..++.+++++++++++++++++++++++++++++++++++++++++++++++++++C+++++C+++CCCCC+CCCCCCCCCCCCCC
+BBBBB'BB''BBB''B''B'''''''''''''''''''''''C''C''CC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC CCC     C
+HHHHHXHHXXHHHXXHXXHXXXXXXXXXXXXXXXXXXXXXXX XX XX  X
+XXXXXCXXCCXXXCCXCCXCCCCCCCCCCCCCCCCCCCCCCC CC CC  C
 """""--""--""----""-----------------------"--"""-"-"-"""""""""""""""""""""""""""""""""""""""""""""""""+""+"+"+"""+++"++"++++++++++++
+CCCCC..CC..CC....CC.......................+..+++.+.+.+++++++++++++++++++++++++++++++++++++++++++++++++C++C+C+C+++CCC+CC+CCCCCCCCCCCC
+BBBBB''BB''BB''''BB'''''''''''''''''''''''C''CCC'C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC C C CCC   C  C
+HHHHHXXHHXXHHXXXXHHXXXXXXXXXXXXXXXXXXXXXXX XX   X X X
+XXXXXCCXXCCXXCCCCXXCCCCCCCCCCCCCCCCCCCCCCC CC   C C C
 """""""---"-"-"""--"--"---"---------+-----""-"""-""-"-""""-""""""""""""""""""""""+"""""""""""+""+""+"++"+++"+"+++++"+"++++++++++++++
+CCCCCCC...C.C.CCC..C..C...+.........C.....++.+++.++.+.++++.++++++++++++++++++++++C+++++++++++C++C++C+CC+CCC+C+CCCCC+C+CCCCCCCCCCCCCC
+BBBBBBB'''B'B'BBB''B''B'''C''''''''' '''''CC'CCC'CC'C'CCCC'CCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC CC CC C  C   C C     C C
+HHHHHHHXXXHXHXHHHXXHXXHXXX XXXXXXXXX XXXXX  X   X  X X    X
+XXXXXXXCCCXCXCXXXCCXCCXCCC CCCCCCCCC CCCCC  C   C  C C    C
 ""-""""-""""-""--"-"----------------------------""-"-""""""""""""""""""""""""""+""""""""""""""""""""""""""+++++++++++""++++++++++++"
+CC.CCCC.CCCC.CC..C.C............................++.+.++++++++++++++++++++++++++C++++++++++++++++++++++++++CCCCCCCCCCC++CCCCCCCCCCCC+
+BB'BBBB'BBBB'BB''B'B''''''''''''''''''''''''''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCC           CC            C
+HHXHHHHXHHHHXHHXXHXHXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X X
+XXCXXXXCXXXXCXXCCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C C
 "-"""--""-"""-"-----------------------"----------"""""""""""""""""""""""""""""""+""""""""""""""++"""""+""""+++++++++++++++++++++++++
+C.CCC..CC.CCC.C.......................+..........+++++++++++++++++++++++++++++++C++++++++++++++CC+++++C++++CCCCCCCCCCCCCCCCCCCCCCCCC
+B'BBB''BB'BBB'B'''''''''''''''''''''''C''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC  CCCCC CCCC
+HXHHHXXHHXHHHXHXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXX
+XCXXXCCXXCXXXCXCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC
 """""-----"--""""----"--------"-----------"---"---""""""""""""""""""""""""""""""""""""""""""""+""+""""""+""""++"+++++++"++++++++++++
+CCCCC.....C..CCCC....C........+...........+...+...++++++++++++++++++++++++++++++++++++++++++++C++C++++++C++++CC+CCCCCCC+CCCCCCCCCCCC
+BBBBB'''''B''BBBB''''B''''''''C'''''''''''C'''C'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCC CCCC  C       C
+HHHHHXXXXXHXXHHHHXXXXHXXXXXXXX XXXXXXXXXXX XXX XXX
+XXXXXCCCCCXCCXXXXCCCCXCCCCCCCC CCCCCCCCCCC CCC CCC
 -""""---""-"-----------"-------------------------""""""""""""""""""""""""""""""""""""""""+++"+""++"""+"++""+""+"+"+"+++++++"+++"++++
+.CCCC...CC.C...........C.........................++++++++++++++++++++++++++++++++++++++++CCC+C++CC+++C+CC++C++C+C+C+CCCCCCC+CCC+CCCC
+'BBBB'''BB'B'''''''''''B'''''''''''''''''''''''''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   C CC  CCC C  CC CC C C C       C   C
+XHHHHXXXHHXHXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXX
+CXXXXCCCXXCXCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCC
 ---""--""---"-"--"---"---"------------------"---"---"""-"""""""""+""""""""""""""""""""""""""""+"++""+++"+""+++++++++"+""+"++"++++"++
+...CC..CC...C.C..C...C...C..................+...+...+++.+++++++++C++++++++++++++++++++++++++++C+CC++CCC+C++CCCCCCCCC+C++C+CC+CCCC+CC
+'''BB''BB'''B'B''B'''B'''B''''''''''''''''''C'''C'''CCC'CCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCC C  CC   C CC         C CC C  C    C
+XXXHHXXHHXXXHXHXXHXXXHXXXHXXXXXXXXXXXXXXXXXX XXX XXX   X
+CCCXXCCXXCCCXCXCCXCCCXCCCXCCCCCCCCCCCCCCCCCC CCC CCC   C
 ---"""--"""--------------------------------------""-"-""""""""""""""""""""""""""""""""""""""""""""+++""++"+"+++++++++++"+"++++++++++
+...CCC..CCC......................................++.+.++++++++++++++++++++++++++++++++++++++++++++CCC++CC+C+CCCCCCCCCCC+C+CCCCCCCCCC
+'''BBB''BBB''''''''''''''''''''''''''''''''''''''CC'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CC  C C           C C
+XXXHHHXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X X
+CCCXXXCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  C C
 "--"--"--""--"--------------------------"-"---"-"-"""""""""""""""""""""""""""""""""""""""""""""+"++++""+""+"++"+++++++++++++++++++++
+C..C..C..CC..C..........................+.+...+.+.+++++++++++++++++++++++++++++++++++++++++++++C+CCCC++C++C+CC+CCCCCCCCCCCCCCCCCCCCC
+B''B''B''BB''B''''''''''''''''''''''''''C'C'''C'C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C    CC CC C  C
+HXXHXXHXXHHXXHXXXXXXXXXXXXXXXXXXXXXXXXXX X XXX X X
+XCCXCCXCCXXCCXCCCCCCCCCCCCCCCCCCCCCCCCCC C CCC C C
 ""-""--"""----""---------------------"----"---"--"""""""""""""""""""""""""""""+"""""""+"+""""+""+"+++++"+++++++++="+++++++++++++"+++
+CC.CC..CCC....CC.....................+....+...+..+++++++++++++++++++++++++++++C+++++++C+C++++C++C+CCCCC+CCCCCCCCCC+CCCCCCCCCCCCC+CCC
+BB'BB''BBB''''BB'''''''''''''''''''''C''''C'''C''CCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC C CCCC CC C     C          C             C
+HHXHHXXHHHXXXXHHXXXXXXXXXXXXXXXXXXXXX XXXX XXX XX
+XXCXXCCXXXCCCCXXCCCCCCCCCCCCCCCCCCCCC CCCC CCC CC
 ""-""""-""""--"-------------"----------"+++"""""-"""""""""""""""""""""""""+"""""""""""""+"""""++""+++""++"+"++"+++++++++++++++++++++
+CC.CC+C.CCCC..C.............+..........+CCC+++++.+++++++++++++++++++++++++C+++++++++++++C+++++CC++CCC++CC+C+CC+CCCCCCCCCCCCCCCCCCCCC
+BB'BBCB'BBBB''B'''''''''''''C''''''''''C   CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC CCCCC  CC   CC  C C  C
+HHXHH HXHHHHXXHXXXXXXXXXXXXX XXXXXXXXXX         X
+XXCXX XCXXXXCCXCCCCCCCCCCCCC CCCCCCCCCC         C
 "-"""--"-"-""--------------"--"--"---------"-""""""""""""""""""""""""""""""""""""""""""""""+""""+"+++++"++"+++++++++++++++++++++++++
+C.CCC..C.C.CC..............+..+..+.........+.++++++++++++++++++++++++++++++++++++++++++++++C++++C+CCCCC+CC+CCCCCCCCCCCCCCCCCCCCCCCCC
+B'BBB''B'B'BB''''''''''''''C''C''C'''''''''C'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC C     C  C
+HXHHHXXHXHXHHXXXXXXXXXXXXXX XX XX XXXXXXXXX X
+XCXXXCCXCXCXXCCCCCCCCCCCCCC CC CC CCCCCCCCC C
 -""""-""-"-""--------------"-----------------"-"""""-""""""""""""""""+"""""""""""""""+""""""+"""""+++"+"+"+"++++++++++++++++++++++++
+.CCCC.CC.C.CC..............+.................+.+++++.++++++++++++++++C+++++++++++++++C++++++C+++++CCC+C+C+C+CCCCCCCCCCCCCCCCCCCCCCCC
+'BBBB'BB'B'BB''''''''''''''C'''''''''''''''''C'CCCCC'CCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC CCCCCC CCCCC   C C C C
+XHHHHXHHXHXHHXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXX X     X
+CXXXXCXXCXCXXCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCC C     C
 """""----""-----"-"-"----"-------"---"----""-"""-""""""""-""""""""""""""+""""""""""""+++""+"""""++"+++"+"+"+++++++++++++++++++++++++
+CCCCC....CC.....C.C.C....+.......+...+....++.+++.++++++++.++++++++++++++C++++++++++++CCC++C+++++CC+CCC+C+C+CCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBB''''BB'''''B'B'B''''C'''''''C'''C''''CC'CCC'CCCCCCCC'CCCCCCCCCCCCCC CCCCCCCCCCCC   CC CCCCC  C   C C C
+HHHHHXXXXHHXXXXXHXHXHXXXX XXXXXXX XXX XXXX  X   X        X
+XXXXXCCCCXXCCCCCXCXCXCCCC CCCCCCC CCC CCCC  C   C        C
 "--"""""""---"-----""---""----""-----------"--"-""""""""""""""""""""+"""""""+"""+""""""""""+"""""""++++"+"+++""+++++++++++++++++++++
+C..CCCCCCC...C.....CC...++....++...........+..+.++++++++++++++++++++C+++++++C+++C++++++++++C+++++++CCCC+C+CCC++CCCCCCCCCCCCCCCCCCCCC
+B''BBBBBBB'''B'''''BB'''CC''''CC'''''''''''C''C'CCCCCCCCCCCCCCCCCCCC CCCCCCC CCC CCCCCCCCCC CCCCCCC    C C   CC
+HXXHHHHHHHXXXHXXXXXHHXXX  XXXX  XXXXXXXXXXX XX X
+XCCXXXXXXXCCCXCCCCCXXCCC  CCCC  CCCCCCCCCCC CC C
 -""""-""------"-------------------------""-"--"""""""-""""""""""""""+""+""""+"""""""+""""""+++++"+""+++++"++++++++++++++++++++++++++
+.CCCC.CC......C.........................++.+..+++++++.++++++++++++++C++C++++C+++++++C++++++CCCCC+C++CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCC
+'BBBB'BB''''''B'''''''''''''''''''''''''CC'C''CCCCCCC'CCCCCCCCCCCCCC CC CCCC CCCCCCC CCCCCC     C CC     C
+XHHHHXHHXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXX  X XX       X
+CXXXXCXXCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCC  C CC       C
 "-"""-"---"-----"-------------"-----""------"""""""""""""""""""""""+""""""""++"""""+"""""+"""+++"+++++++++++++++++++++++++++++++++++
+C.CCC.C...C.....C.............+.....++......+++++++++++++++++++++++C++++++++CC+++++C+++++C+++CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+B'BBB'B'''B'''''B'''''''''''''C'''''CC''''''CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC  CCCCC CCCCC CCC   C
+HXHHHXHXXXHXXXXXHXXXXXXXXXXXXX XXXXX  XXXXXX
+XCXXXCXCCCXCCCCCXCCCCCCCCCCCCC CCCCC  CCCCCC
 --"""-"--"---""-----------"------"----"""-""-""""""""""""""+""""""""""+"""""+"++"+"""+"+""+""++++++""+++++++++++++++++++++++++++++++
+..CCC.C..C...CC...........+......+....+++.++.++++++++++++++C++++++++++C+++++C+CC+C+++C+C++C++CCCCCC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+''BBB'B''B'''BB'''''''''''C''''''C''''CCC'CC'CCCCCCCCCCCCCC CCCCCCCCCC CCCCC C  C CCC C CC CC      CC
+XXHHHXHXXHXXXHHXXXXXXXXXXX XXXXXX XXXX   X  X
+CCXXXCXCCXCCCXXCCCCCCCCCCC CCCCCC CCCC   C  C
 -""""--"---"--"--"--------------------"-----""-""""""""""""""""""""+"""+"""""""+""+"""+"+++"""++++++""++"+++++++++++++++++++++++++++
+.CCCC..C...C..C..C....................+.....++.++++++++++++++++++++C+++C+++++++C++C+++C+CCC+++CCCCCC++CC+CCCCCCCCCCCCCCCCCCCCCCCCCCC
+'BBBB''B'''B''B''B''''''''''''''''''''C'''''CC'CCCCCCCCCCCCCCCCCCCC CCC CCCCCCC CC CCC C   CCC      CC  C
+XHHHHXXHXXXHXXHXXHXXXXXXXXXXXXXXXXXXXX XXXXX  X
+CXXXXCCXCCCXCCXCCXCCCCCCCCCCCCCCCCCCCC CCCCC  C
 """""--"--"---"------"---------"---"---""""""""""""""""""""""""""""""""""""""""+""+""""""""""""+"+++"+++++++++++++++++++++++++++++++
+CCCCC..C..C...C......+.........+...+...++++++++++++++++++++++++++++++++++++++++C++C++++++++++++C+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+BBBBB''B''B'''B''''''C'''''''''C'''C'''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCCCCC C   C
+HHHHHXXHXXHXXXHXXXXXX XXXXXXXXX XXX XXX
+XXXXXCCXCCXCCCXCCCCCC CCCCCCCCC CCC CCC
 "--"--"""-----+----------------"-----""--"-"""""""""""""""""""""""""+"""+"""""""""""""""+""""+++++++++"+++++++++++++++++++++++++++++
+C..C..CCC.....C................+.....++..+.+++++++++++++++++++++++++C+++C+++++++++++++++C++++CCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+B''B''BBB''''' ''''''''''''''''C'''''CC''C'CCCCCCCCCCCCCCCCCCCCCCCCC CCC CCCCCCCCCCCCCCC CCCC         C
+HXXHXXHHHXXXXX XXXXXXXXXXXXXXXX XXXXX  XX X
+XCCXCCXXXCCCCC CCCCCCCCCCCCCCCC CCCCC  CC C
 "-"-----"""-"-----------"-----"""--"-"-"""""""+""""""""""""+""+""""+""""""""++++"=+++"++""++++++++""++++++++++++++++++++++++++++++++
+C.C.....CCC.C...........+.....+++..+.+.+++++++C++++++++++++C++C++++C++++++++CCCC+CCCC+CC++CCCCCCCC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+B'B'''''BBB'B'''''''''''C'''''CCC''C'C'CCCCCCC CCCCCCCCCCCC CC CCCC CCCCCCCC    C    C  CC        CC
+HXHXXXXXHHHXHXXXXXXXXXXX XXXXX   XX X X
+XCXCCCCCXXXCXCCCCCCCCCCC CCCCC   CC C C
 -""---"--""--"---------"--"-----""""-"-"--"""""""""""""""""""+""++"""+"""""++"+""++++++"++++++++++++++++++++++++++++++++++++++++++++
+.CC...C..CC..C.........+..+.....++++.+.+..+++++++++++++++++++C++CC+++C+++++CC+C++CCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+'BB'''B''BB''B'''''''''C''C'''''CCCC'C'C''CCCCCCCCCCCCCCCCCCC CC  CCC CCCCC  C CC      C
+XHHXXXHXXHHXXHXXXXXXXXX XX XXXXX    X X XX
+CXXCCCXCCXXCCXCCCCCCCCC CC CCCCC    C C CC
1
-
0                                            PRINCETON UNIVERSITY COMPUTER CENTER CLINIC
-
-
-
-
-
                                                            +------------+
                                                            +            +
                                                            + COMPUTER   +
                                                            +            +
                                                            +    PICTURE +
                                                            +            +
                                                            +------------+
-
-
-
-                                                              THE MOON
-                                                   COMPUTER TRANSCRIPTION PROCESS
0                                                                 BY
0                                                         SAMUEL P. HARBISON
0                                                       COMPUTER CENTER CLINIC
                                                         PRINCETON UNIVERSITY
                                                           87 PROSPECT ST.
                                                     PRINCETON, NEW JERSEY 08540
-                                                  COPYRIGHT 1973 BY S. P. HARBISON
-                                                       SHEET  2 OF  5 SHEETS
-                         THE COMPLETE PICTURE IS CONSTRUCTED BY TAPING THE SHEETS TOGETHER SO THAT THE
                          LAST CHARACTER ON THE FIRST SHEET MEETS THE FIRST CHARACTER ON THE NEXT SHEET
                          WITH NO WHITE SPACE BETWEEN THEM.  THIS WILL REQUIRE TRIMMING THE SHEETS WITH
                          SCISSORS.  DO NOT PUT TAPE ON THE PRINTED SIDE OF THE PAPER; TAPE FROM BEHIND.
-
-
-
-
-
-
0
 -------------------------------MM------M---M-MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM=MM=MMMM=M==MM=M==MMMM=
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCC CCC C                                                                C  C    C CC  C CC    C
 =====================================================================================================================+===+=+========
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++=+=++++++++===+========+================================+==++===++++=======+++==================================+==+==++=+==+=+===
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +=++++++++++=+=+++=+===++++===+===============++==+++=+++=+==+++==+++++=+==+=++++==============================+==++++=+++=+=++=+===
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++=+=+==+=====+===++====++=====+======================++=+++==+==+============+=================+=========++=+===+=+++++=======+===
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++=++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++=++++++++++++=+++++++++++++++++++++++==++++++++++++++++++++++++++++++++++++++++=+++++=+++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++=+++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCC
+                                                                                                                             C
 ++++++++++++++++++++++++++++++++=M++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+ C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++"+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C
+                                                                                                                                  C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+          C
 +++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++
+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+     C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++"++++++++"++++
+CCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCC+CCCCCCCC+CCCC
+       C                                                                                                          C   C        C
 ++"+++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CC+CCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+  C       C
 ++"++"+++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CC+CC+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+  C  C     C
 ++++++++++""++"+"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCC++CC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+          CC  C C
 +++++"+++++++++++++++++++++++++++++"++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++++
+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCC
+     C                             C          C                                                                           C
 "+++++""++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+"++++++++++++
++CCCCC++CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+CCCCCCCCCCCC
+C     CC    C                                                                                                        C C
 ++++"+""""++""+++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++
+CCCC+C++++CC++CCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCC
+    C CCCC  CC       C                                                                                               C
 "+"+"""+""++"+"++++"++""++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++"++++++++++++
++C+C+++C++CC+C+CCCC+CC++CCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCC
+C C CCC CC  C C    C  CC                  C                                       C                                    C
 +++"++++"+++++"+++++++++++++++++++++++++++++++=++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++MM-ZXAIIA
+CCC+CCCC+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC  C
+   C    C     C                                      C                                                                  C
 +""+++++"+++++++++"+++"++++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++==M-ZZXA=+=I=+  +
+C++CCCCC+CCCCCCCCC+CCC+CCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+ CC     C         C   C              C
 +"""+""+++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=M-ZZZAI======+1-1--
+C+++C++CCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+ CCC CC           C
 +"+"+""+""+"++++"+++++""+"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++====M-XAAXXZZAI===+--
+C+C+C++C++C+CCCC+CCCCC++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+ C C CC CC C    C     CC C
 ++""+""+++++"++""""++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++"+++++++++M-ZZXXXAXXXII==+----    -
+CC++C++CCCCC+CC++++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCCCCCCCC C
+  CC CC     C  CCCC                                                              C     C
 "+"++"""++"+++"+"+"+++++"+++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++=M-ZZXZXAIAXXAI=----   --  ---     -
++C+CC+++CC+CCC+C+C+CCCCC+CCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+C C  CCC  C   C C C     C                   C
 +++"++++++""+""""+++++++"++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++=M-ZZZZZXAIIXAI=1--  --- -11--11  --
+CCC+CCCCCC++C++++CCCCCCC+CCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+   C      CC CCCC       C            C
 ++""++"++++"+""""++++++++++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++=M-ZZAXXXXZXA=+=II=1++++--1----+++=1--1---   --
+CC++CC+CCCC+C++++CCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+  CC  C    C CCCC                          C
 +"++"+"""++++++"++++++++++++++++++++++++"+++++++++++++++++++++"++++++++"+++++++++++=M-ZXXAXXIA=111+===I==+++- ----  1---  1---   -1-
+C+CC+C+++CCCCCC+CCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCC+CCCCCCCC+CCCCCCCCCCCC C
+ C  C CCC      C                        C                     C        C
 """+++"++++""+++""++"+"""++++++++++++++++"++++++++++"++++++"+++"+++++++""+"++"++=M-XXXXXA=+==II==+==+==111-- -1-    -1-11-----
++++CCC+CCCC++CCC++CC+C+++CCCCCCCCCCCCCCCC+CCCCCCCCCC+CCCCCC+CCC+CCCCCCC++C+CC+CCC C
+CCC   C    CC   CC  C CCC                C          C      C   C       CC C  C
 """"++++"+++++++""++++++"+++++++++++++++++"++++++++++++++++++++++++++++"++++"+=-XXIIIIAXA+-++===+11++==1----11--   ----11- --
+++++CCCC+CCCCCCC++CCCCCC+CCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCC+CCC
+CCCC    C       CC      C                 C                            C    C
 "+++++++"+++++""+"+"+++++++++++++++++++"++++++++++++++++++++"++++++++"+++++++MZAAAIAAAAII+11--1111-11+11--11+111-  11--11---     -
++CCCCCCC+CCCCC++C+C+CCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCC+CCCCCCCC+CCCCCCC
+C       C     CC C C                   C                    C        C
 """"+""++++++++++++++++++"++++++++++++++++++++++++++++++++++++++"+"++++++=M-XAAAIAIII=+1111---11+11111-   +==++1- -1--1+1--     - -
+++++C++CCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+CCCCCCC C
+CCCC CC                  C                                      C C
 ++"++++"++++++++++++++++++++"++++++++"++"+++++++++++++++"+++++++"+++=M-Z---ZAIIII=++++++1---111+- -1---- -+++111+1-----1--        -
+CC+CCCC+CCCCCCCCCCCCCCCCCCCC+CCCCCCCC+CC+CCCCCCCCCCCCCCC+CCCCCCC+CCCC C CCC
+  C    C                    C        C  C               C       C
 ++"+++"++++++"+++++++++++++"++++++++""+++++++++++++++++++++"++++++==MZXZ--ZXAI=+++11--1-----11+1- -111111++1111-1 ---11----     --1-
+CC+CCC+CCCCCC+CCCCCCCCCCCCC+CCCCCCCC++CCCCCCCCCCCCCCCCCCCCC+CCCCCCCC    CC
+  C   C      C             C        CC                     C
 +""+++"++++"+++++++++++++"++++++"++++++++++++++++++"+"++""+"++++---ZXZ---ZXI==1-----    -1+11-1-- --111+1+1--111-   -11---      -11-
+C++CCC+CCCC+CCCCCCCCCCCCC+CCCCCC+CCCCCCCCCCCCCCCCCC+C+CC++C+CCCCCCC   CCC
+ CC   C    C             C      C                  C C  CC C
 ++"+"+++++"+++"++++++++++++"++++++++++++++"+++++++++++++++++++M-ZAAIIAZZZAA=1  -       ---1---     --111-+1 -1-++1-  ---       ---
+CC+C+CCCCC+CCC+CCCCCCCCCCCC+CCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCC C
+  C C     C   C            C              C
 ""+"++++++++++++++++++++++++++++++"+++++"+++++++""++++++++=M--ZXIIIII=AAI++1--1-  - -11- ----      -1+11+1--111+++--          ---11+
+++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCCCCCC++CCCCCCCCC CC
+CC C                              C     C       CC
 +"""+++++++++++++++++++++++++++++++++++++++++++++++++++MMM--ZZIIIII=1111--111---- - -1-  -1--  -1-1-111-1--1++1+=+11-         -1-1+1
+C+++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   CC
+ CCC
 +""++++++++++++"+++++++++++++++++++++++"++++++++++++=M---ZZZA=+=I==1--  -++1-  -- --111----- --11-1  ----1+++++1+1111-   -     - -+1
+C++CCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCC CCC
+ CC            C                       C
 +""++++++++++++++"+++++++++++++++++++++++++++++++++=-ZAAXAXA=1+=++1-1   1+-  --- ----1++1-   -1----    -1++=+1111111+1- -1-    --111
+C++CCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+ CC              C
 "+"++++++++++++++++"+++"++++++++++++++++++++++++=--ZZA=IAAI=+111-- 1--  --   - ------------111---------1+++++---++11+1- 1++1+1-1+++=
++C+CCCCCCCCCCCCCCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCC
+C C                C   C
 """+++++++++++++++++"++"+++++++++++++"+++++++++M-XXAA===II=1------ 1- -     ------1-1--11---1--1111----111111-11=++11--1+==+11-1++++
++++CCCCCCCCCCCCCCCCC+CC+CCCCCCCCCCCCC+CCCCCCCCC C
+CCC                 C  C             C
 """++"++++++++++++++"++"+++++++++++"+"+"++++++MZXI=+1-1++1-  --    -       -11-----1111++1-11---1111---1  --1+===+1---1=+++1   1-11+
++++CC+CCCCCCCCCCCCCC+CC+CCCCCCCCCCC+C+C+CCCCCC
+CCC  C              C  C           C C C
 +"++++++++"++++"+++++++++"+++++++++"+"+++++++-X==111+++1+--1-   -       -   -1-1-- --1111-1++-----1- 11-   -+=+1111- -1+---     ---1
+C+CCCCCCCC+CCCC+CCCCCCCCC+CCCCCCCCC+C+CCCCCCCC
+ C        C    C         C         C C
 +"++++++++++"++""++++"++++"+++++"+++++++++=ZZXI+11===II+1 --   1-- -- -----  ---------11---+++---11-111    -+==+1-11-11-    --     -
+C+CCCCCCCCCC+CC++CCCC+CCCC+CCCCC+CCCCCCCCCC
+ C          C  CC    C    C     C
 +"+"+"++++"""+++++"++"++++"+++++"++++++++-I+A=+-+IAIII=+-----11+11-1+------  -11--111111-11111 -1- --11-1- -++==1 11+1-     -
+C+C+C+CCCC+++CCCCC+CC+CCCC+CCCCC+CCCCCCCCC
+ C C C    CCC     C  C    C     C
 +"++++++++"""+++"++++++++++++++++"+++=M-A=- 11+=IAAIA==+111-111+1++++-- --- -1++11111=+11+1+++++1 ---1111  -111+11+++11--  -
+C+CCCCCCCC+++CCC+CCCCCCCCCCCCCCCC+CCCC C
+ C        CCC   C                C
 +"++++++++"++++""+"++"++++"+""+++++=M-XI1- -1+=++===I=+1-111- -1+11----11---1+11+111++===111+++++1--   -1---111+1111+=++1- -1--
+C+CCCCCCCC+CCCC++C+CC+CCCC+C++CCCCCC C
+ C        C    CC C  C    C CC
 +++""""++"++++++"+"++++++++"+++++=-ZXA=+111=IA=+===+++11111  --1-+1111111----1+111- 1=II=++1++++-      --111111-- 11--1++111--1
+CCC++++CC+CCCCCC+C+CCCCCCCC+CCCCCCC
+   CCCC  C      C C        C
 ++""""""""++++++"++"++++++"+++=M=MZA=+-1++==AA====+1-1--1++111111=+==+1+1----1+++++1-1==+11++1--       --111111+1-11  -1-+1+111-   -
+CC++++++++CCCCCC+CC+CCCCCC+CCCC C
+  CCCCCCCC      C  C      C
 "++"""+"""++"""+"++"++++"""+===MZI+-  1====+==+++=+11+1-++++++++11+++++=111--11++++1  -+1111+11-   -1--111111-1=+111----+11++=I=1=11
++CC+++C+++CC+++C+CC+CCCC+++CCCC
+C  CCC CCC  CCC C  C    CCC
 "+"+"++"++"+++"++++++++++++===ZI+-   1+III=111++++1++++++++=+1+---++1++--11111-1- 1+11-11+++111---111111111--1+===+=++1+=+==IIAA=I1+
++C+C+CC+CC+CCC+CCCCCCCCCCCCCCC
+C C C  C  C   C
 """""""+++"""+""+++""+"++++=-X=+1  1===II=+-1=+1-++1+1+=++11--1- 111+111+++++++1--+======++++1--1+1+11-- - - -+===+++1+II==+++=I=+11
++++++++CCC+++C++CCC++C+CCCCCC
+CCCCCCC   CCC CC   CC C
 """"+"++++"+""""+++"++++MMMXII=11++1=II==++1+=1--+=++1=++11+1++- -+++++1+1+1+==+++1++====+==+11--111111----  -1====IIIII=+I=+1+===1+
+++++C+CCCC+C++++CCC+CCCC
+CCCC C    C CCCC   C
 "+""""""++++"""+"++"++MXXZXXZZ+ 1==+=I=++111=I++=+++1++1+--11=1 -+I==I+111--++1+==+1+====+==+11--1+1-1---11--11+===IIIII=======+=I==
++C++++++CCCC+++C+CC+CC
+C CCCCCC    CCC C  C
 ++++++"++++"++"+"++=-Z=IAZ-===  +1+I=1--+=11==+IAIII+111-- -+=1 -=AII=+1-11 ---1+=111++====1-11  1111---1+---1--1===IIAI====AI==IIII
+CCCCCC+CCCC+CC+C+CCCC     CCC
+      C    C  C C
 ++""""""+++++++++=M-X+-IZM=Z= -1=+=+----11+=I=IAAII=1-1+++++-+--+II=++1-11  --1+++11+++++111- ------  11+1111+111+++=III+++=I==IIII=
+CC++++++CCCCCCCCCC C      C
+  CCCCCC
 """""""+++++++++=-ZI+1=XZXI+1111=++1-- 11+I=AII===+11--1+=+=++1+=I=111--    ---11---1++++11++-----    ----------111+=======+++=+==++
++++++++CCCCCCCCCCC
+CCCCCCC
 """""""+"+"++++-XX=1=ZMZ=1+===+==++1111-==IIIAI+11---+=1+==I=++===+1111    --  -1111++==+++=+1111-    ----- --11==+++11+=I==+===+=++
++++++++C+C+CCCCC
+CCCCCCC C C
 "+""""++"++++=-AI==ZMMZI +==IA==++==+=++=III=+===-  -+1 ++===+++++1---- --1-----1+11+1++=+====++11--1+1-    -+==III=++====++1+=====+
++C++++CC+CCCCCC
+C CCCC  C
 """"""""""++MZXIAZ===MX=II=AAAI==+=I=======++IIII++1-1--1-1===++1111-- --- 111+====+1-1+--=====+1111+++---111+==AAAII=IIII11===+=+++
+++++++++++CC      CCC
+CCCCCCCCCC
 """"+""""+=-Z-ZZM==+++ZAZXXZAI=++1+++====+1+IAIIII=111-1-  11------   ---  ---+=+11----- -1++1111--11++1--111++=III=IIII=+=II==+++=+
+++++C++++CCC C   CCCCC
+CCCC CCCC
 ""+++"""+-XX-MMM--===-XXZXXA==11+==+II+=I+=AXAIII++1++1- -           -1--  -- -11------- -1++1----1++++++++II====+1++===++II===+=III
+++CCC+++CC  C   CCCCCC
+CC   CCC
 "+"++++=XIXZZM-XX=MXIIAZ-ZAXI  =I=+II=IAIIAXXAI==--1-----          ----        -1  -1-----11+111+=+=I==III=IAII==111---+=++++=+1+1++
++C+CCCCC      C  C      C
+C C
 """"++MX=AAZ---M++X++A-=-AAI--+I=11IAAII==IXAII=1-11--    -      ---   -    -11-   --1111111+++===+==+-1==III===+1111++==+1- ----1-
+++++CC      CCC CC    CCC
+CCCC
 """"+MZX=IIXZM+"+A11=Z-ZA==+1+==I==III+=++=III==+1--1-   --      --    -  -11111--111++++=+===+==+-1+1 -+=III=+++   -1111
+++++C         C+C     C
+CCCC           C
 +""+=M-IAZXZM""=A -=IAAI+++=+1++=+==+======II=II1- ---   -       --  --1--1+-1---111-1+++++==++=++11++11+++++=-1-           -     -
+C++CC C      ++C
+ CC          CC
 ""+===XI-=-MM+MI+=IXZZZI=+++ -+1--1++IAII==I=II+- - -----     -1111---1+++111-   -----1++11++111++111++1++1  - 1    ---  - ---1++++=
+++CCCC  CCC  C
+CC
 ++=++-XM=-ZZZA==IXZZ-ZA=+1-  11-  -+=AAAI+111+1-----1--   ----111++11111+==+--    --11+++1111-1+=====++==1    11--1++++111+++1=AAIII
+CCCCCC  CC          C
 ==+"MZM=-I+I=-1=XZAAXZ=--   11-   1+=II=+-  -    --11    11----11++1-11++==1-    ---+++11-  -----+====II+1111+=====+++==11+++1==I=I=
+CCC+   CC
+   C
 =""MXZ--I+IZ1-+=III+=A--   -1--  -1++==+1- -1--   --   -1+=----1+1111++++++11----1--+1111-- 1=++11++III=++==IIIAAAIIIIII++I=++++===+
+C++   CC
+ CC
 ""-+IAMA1Z=AII=-=I111    ----   1=====++++++--1 ----  -11-111-1- -----1+1+=++---1+--1+111+=+=AIA=+=IAA==+1++=IIAAXIAII==IAIII=AXXXAA
+++C       C
+CC
 +Z==I--+Z+ZAXZX+I1       --    +III===1+=+1+++--11-  --    -------- ---1+111-  -++11+++==+11+=+=IIAAXI=++++++==AIIIIAAIAXAAXZZZZXXXX
+C    CC  C
 A+==X-I=ZXXXA==+-     -- -11--+IIIII==++1+===1-------11   -11-- --  11---11----1++11+=+===11+=++=IIAA======IIIIAIAAXXXZXZXXZZXAI===I
+     C
 =AXXMXIAIIA=+1+-     -11-1=1+=+=IIII=IA=1+=+111------1-  ---    -1111+1-11---1111---+==++======I=I+AAII=+=AAIIIIIAAAAXXZZXXZXAAI=AII
 =ZZMM-AI+11111      1+++=++1+=+=I=IAIAXI+11-111         --  -1---111--11--- --- - -1++=+1+II=====IIII==+++I===IIIXXA===AXAXXAZZXIAAA
+     C
 Z-Z-MXA+11+1+- -   -1+=A=1++=++AAAXAIIAI+-- --          --  +1------- --         --+===+++==I==IAI=IAAAII====II=IXXAXA==AAI=IAXXI=A=
+ C C
 -I=AI=I+1--1+1+1++1+1=AAI==I=+IAAAIAAI=+1-            ---1-----                  1+==II==+===+++====IAIIAIAAAXAAAAAIXXXAI=+1=AXAI=+1
+C
 I11++==++-1+=II++===+IAAIIIIIAXIIIIX=1---        1111-11111--11----    -     11-+=++=IIII======+++=I=IAXAAXXXXXXAI==IAA==+11IAAII+ -
 1=1-1II+=I==IIIIIIIIIIII=IAIIXAI=II=-   -       -+++=++++=III=+11--    -----1+++=++1-1=I==++=+111++IIAXA==AIAI===++=I++++1111=====-1
 ==1++IIIIIIAAAIIAAAAIII=IAAIAX=1-++1   1-     --++-1====IIIIII=+=1+1-  11++====I=======I=+++++1+++=IXZZA=-=I==+---=AX1IXI=======++11
 1+==+IIAI=IXI==AAAAA=IAIAXA=II11+++111--      --+=11++=IIIIII=+==++11-1++=====I==IIIAIIA======++1+=AXXXAI++=+-    +=I==A=II=+++=++++
 ===+1+=AA=XAIIIAXXAAIAAXXA+1==I=++++++--11-   -1+=+==+==II=I==+==+++=+===IIIIIIAAAAAAAII=++=++111+=AA+=AI=++-    -1+++1+++==+11+1111
 A=1111II=AZZXXXZZZAXIAIAA=11+=I=++11111++1   -1++=========II=++=++==IIAAAAXAAAAXAAAAII++1------1-11==--II+1---1--1+++------=+1=++11
 I==I=+I=AXZZ-Z-ZXAAXAXXII==+==+11+11-1-1=+   -++1=======+=AI=+1-1==IAAAAAAA==+=AAII=I=+11-  -11--1+=I+1II==++11  1++1-11+1-11-1++-
+            C C
 =+IA=+=+AAZZZ-ZXAXAZXXXIAAAII+-1+1-  - -=1  -1+1-+++++==1=I=+1-11==IIIIAIII+-1+IAIIIAI=+1- --1+1--1+====I=++11-  -1-111++111--11+--1
+             C
 ==III=+=XXZZ--ZZZZZZZZAAXXAA=11++-  -- +=- 1-++1--- -11+++=+=+1--=I=I=IAIII==I=AAAAI===+111111++- 11-+++=++1-1     11111+++++===+11+
+            CC
 IAIIA++AXZZ-MZZZZ---M-AXAXA=+11+1---- 1=1+1+-+=11-     -==+1=+111====II==IAAAAAAAIII++I+++11111-   1+=I==+++1-     11++1++=XAI=111==
+           C     CCC C
 IAXXI+IXIZ---ZZZ---MMZXZZAI=+-+1--1--1+=-=++++1--- -1+-++1-1++11+==III=+IXAAAI===I=++===111    --- +==+++1+1-1------+==++1+II+1+1+==
+          CCC   CCC
 AZZX=IXAAZ-ZZZZZM--MMZZZA=+++111-1+1+++=1-111- ----111-111111----1=IAA=IAII======I+1+11-- - --11-- -11++1-111+++=+=======+++++IAI==+
+          C      CC
 XXZXAXAIA--XX---MZ-ZZXXXI=+-+11+1===++===11-1--------  ---1-----11=IAXAAI=1+=I+11111-    -1------    ------1+1+==IIAAI=====+=IAXA=1-
+         CC  CCC  C
 ZZXAXXXAZZZZ--M=MXAAZZA==1-1======+=1==I=+++1-           ----11-++=AAAAAI+1+=1--   -     -- -     ---1  -11==++IAXXZA=====AAAIII=1-1
+            CC C
 XXXXZZXZZ----MMM----X==+==+==III=+++-1===1+1-------       -1-111+==AIIAI+1--11--             - ------- -+=II==+IAXZX=1+=IAAII====11
+         CCCC   CCCC
 ZM=ZZ---Z--M--X---ZXI+=+===+IIAI+--1+==I++==+++++11--    -11++11+=+=++=+1-----              -+11- -----1+++1--1+III==+IXZII=11+111-
+  C  CCC CC CC CCC
 X=+ZX--ZX-MMZZX--ZI=++======III=--1=I=II==III===++11-   -111+1--1++++++++1111 --1-     ---11+111--1===1 --  -+11+==II=IAI=+1--1 1-
+ CC  CC  C     CC
 A--XZMXX-MMMMM---X===IIII+=IIA=1-=IAII=II===I==I=111---1++--111+++++=+1++111--1+1-----11++======1+III=- -  +II=+=IAAI=I+++1-==+--
+ CC     C     CCC
 XIA-MMXZMMM-M---X=1=IIIII=IXA1-+AAAAAI====-+IIII=++11++++++1-===+-1111+++1+++++1-11-11-1++======1===+1-----+=+I===IAIIA1-111===1-
+   C       C CCC
 XIXM-ZZZM-----AII==I=IIAIAAXI+=XXAXAXXI+I=1+I=I=I+11++=++==11++1-111--+==II+++=11+1111 1++==+1+++1+1--   -1IAI=====IAIAI=1--111-
+    C    CCCCC
 AAAXIIXZ-ZZZ--=====I==AZZXAAIIAAIAAIIA==II=++1+I=111+======1- ---1-1--+IIAA++======+=++IIIII++===+1--   -==I===AA=IAX===+1--1--   -
+        C   CC
 A++-1AZZZZ---ZA==11++AZ--AIAZAI-+A+=AA==AI1--- +++=+=====+-     --1+IIIAXXXIIII===I=II+=AIIIIAI+1+----11+11+1+IAAAAIA+--   11-1111
+          CCC          CC
 =++1+A-Z-ZZZXI++++++I--ZZXZZAI=-=AXXZAIAI++=+11++=IAI+=+--     11=IIAXXXAXAAAIIIII==II++=I=+===I+++1++==11++++IIAAA=+-  -  -11=+-
+      C C            CC
 ===IAZ--ZXA=+11==I=IZM-ZZ--ZAA=IXZZZZAAAI====+======+++1+11+11====AIAXAAA===II=III==III===+-+IIAIII===I=++==11=AAI=- - -111+=+---111
+      CC              C  CC
 A=XAAXXAI==+1=++=IIZM----M-ZZZXZZXXAIAAI====++++==111+==I=IIIIAIIIAAAA==A=++I=+==+1+=AI==+===IIII===+==+====11+I=1 --1+++++==1 1-===
+                     CCCC C
 XAXAI+++===1=AA=+IZM--MMMM-Z-ZZXIXXAAXAI=+++-+=++111==III=IAAIXAIIII====II=+==+=+- 1===I=IAAIII===+1++11===+--11-  -===++---++ 11+=I
+                    CC    C C
 ZAXI=IIAAA++AXXIAZMM-Z-ZMM-ZXZZXAAIII=III=+++++++=IIII=+AAXXAIIIAAIIIAAII=======I=1++IAA1+=I=I=+=I+-1+I===1   -1----++111-- -11+1=IX
+                    C C   C
 XAXAAXAXA=+AXAXIZ-MM-ZXXZZZAAXZII==AAIAII=11+1+=IIAAAIIIAXXXA=++AXXI=IAI=+1++=AI==+==AXA=+=++++=AI+-1=I=1-    -- ---   -  --====+=AX
+                 C  C
 AAAIAIIII=AXXAA=ZMM-ZZAIIXXXXAAII=IAAAI=+=++++=IIIAAXXXAXZX=I==+AXXI+=I+- 1+==IIIIIIIAAAA=====++=++++=I+--      ---      --1=I===IAI
+                   C
 IIIII=====AAXAAIZ-XAXA==IXXAAIIIIIIAIII==I==++IIIIAXZAAAAZX=I===AAA=1++++-1===IIAIIIIIIII+=III=1+=1===++-1-    1 +111-   1+==+++IAA=
+                 C
 =I=II=++=IIXAIAXAIAAII=IAAAIAAIAIAIIIII=III=+IAA=IAXX==AIII==1=II===+++=I====IIII=+==AAI=1++=I=--11+++11-  -1--+-+1=1-  -+AAI++=II=I
 +=II=+=XXAAX=IAA==II=IIAXIAAI=AAXAIAAII=III==IAAIIAAAIAAII===+II=+=I=+====1-1+==1-11+II+++==I=I11+11        --+++=11111+==AXA=1=II=I
 ==A==AZZZXXA=AA=I=AXAAAZXXZXI=IIXIAAI===IIII=IAIAXAAXIIAAIIII=II++II=+=+1+111+=- -+++11 1=IIIIA=+++-         1+-1++1=+=IAIAAAAA=IAAX
 +==+A-M-ZZX==XIIIIXAAAXXXZXIIAAIA=IIA===I==AIIAIXXAIA=IAA==III====II===+++==+11 +1-11  -+I=+1=I=1-     -1    1+--11+IIAII==IAI=AAZZZ
+     C C
 1=IIXZZXXA=+XXAAIAAAIIAAXZZAIA=1===IAI=IAAA=IIXZXAIIIAAAIIIIA=IIIIIII=+====+1-+1=----11===+IIA=-     -11-   1+1--1+III=11IXAIIAAZ-ZZ
+                                                                                                                                 C
 =AAAAAAAI+-=XXAAAAXXIAZZZ--ZAAI=III==AIIAAAI==AXXAAXAIAAIIAAI=IXI=IIA=+=II=+-==+1--1===IIIAAAI+11-1-1--1-11+=+--1++===++=IAAAXXZZXAX
+                         CC
 AIIAAIII1-+AAAAXXZZZXZZZ----ZXXZXI===IAAIIIII=IAZXZXAIIAAXZAIAIAAIIAAIAI+++I+==+=IIAAI=IIAAAII+1++11   -+==I=+1-+++=====1IIIAXXXAAAX
+                        CCCC
 =II==I+- 1IIXXXAXZXZZX-ZZZZZZZXAI=AI===I=++==+=AXZZAIAAZZZXAXAIAA+IIIXIIIII=++=IAAIAAAXAIA===I=++--     1+==+=1-++1+IA=+=IIAAXXAIAAX
+                      C
 AX+11-   1==IAXAXAXZXXZZZZZXXZA==XXAAI=1  --1+=IAXXXAAAXXXI=IIAXA==IAXIIII===IAAI==AXZZZAI1-+I=+1---    -=+++=1  1+==I==AAAAXAI==IAX
 XZ=-1    1++-IIXZZZZZZXAAAAAAAI==IAXAII1  --+==IIAXZZXIAXAII=IAA==AXXXI++===IAAAIIAXXZ-ZX=1=II111---  -11++==1-  1+=I==IIIIII==1+=AA
+                                                                                      C
 I=++-    +===IAZZZZZXAI==IAIIII=+=IA=+I+--1=I=+-+AAXZI++AIIAAAII=IXAAXAIIXI=+IAXAAZZXZZAA11AI+- -- -  ++11==+---1+==IIIAAAII==I+=1=I
 XI=1-  -+====IX--XXXAI=-1AXA=====I+IAAAI++=III+1=AAAA++===IIIIIAA=IIIAXIAXAA===IAXZZZZX===II+-       1+====++11-1=I++AAIII===I=I1=--
+               CC
 XI+   --+IA=IXZZXIIAIA=+AZXX==AA==AXZXA+==IAAII===IAI=III+=IIAAAAII=IXXAXZXXAI11IAXZZZA1=I=1       -++III11+=I=+1+===XX=1 +==+=I11--
 A=- -1++=AI=AXZZIIXXAAAIXZXX==II=AXZXAA==IAXXAIIIIXXA=IIX==AAAAAAAIIAAXAZZXXXA=1=IAZZXI+=++      -1+=IAI=+-+=II=1 1AXXA=--+IIII=111+
 =-111+++=I=1IAXAAAZZAZXIIAXXI=IAAAZXXAAIIAAXXXAAXXZZAAAAZAIIIAXIAAXXXXXXXXXZZXI==AZZXAI1-+1     -++1+==II=1====+===AXA====IXA=++-  -
 1 1++=+I=+=1+=IXXZZZX-AIZZX===AXXXZZXA++==XZXAIXXZZZXXAAXIIIIIAAAAAAXZXIAZXZZXAAAXXAII+        -+1----+I=1+=+==IZZAXZA+IAAIAI=+-
+                     C
 ==+==I=I=++=++IZZZ-ZZZXZZXA+IIIXXAX-ZA=IXXZZAIAXAXXAAAIIAI=IXXAAXAAZZZXIIAAXZXXZZXIIII1-    1+11   -- =III==-+IXZZZXZAAA++IAI1-  ---
+                  C                C
 =+=I=II=+11====IAXZZ-ZZZXII=AAAXXAX-ZXAXZZXXXXXZXAAAAAAAI++IXAAIAAZ-ZXXXXAAIIAAXA=++==+1--+=I=11-  -1+=II=I=+IIAAXZXAAXI--=I+-- -11-
+                    C              C                               C
 +===IAI=+ -1IA==IAZZ--Z-ZXIIAXZAIIIZZZXXZXXX-ZXAAAAAXXXAI=IAXIIIXZZ-XAXXXXAIII==+1+1+I++1=AAA=1++11++=II++==++AAAAAAA=+1- -+-    ---
+                    CC C                    C                      C
 -==+IAI+-1=+II==IXXZM---ZZXAAZ-ZXIIXXZZXX=AX-ZXAAAXXXZXA=AZZXAAAXXZZXAIXXXAAA=11-1+11-1IIXXAA==IIIAAII=I+1=1-1AAXI=IA=1+- -+1---  -=
+                     CCC      C             C
 1AI+II==1==+=IXXAXXXZZZ---ZXZ---ZXAAXZXZZ=IXZIAXAXXZZXX=+XZ-XIAXZAAXXAAXIAAA=1--11+-  1IAXXAIIIIAXXXIAAAI==+=IXAI-+I=II=1-=+1111+===
+                       CCC   CCC                           C
 +AAXI==IIAAIA=AZAAXXAXXXXZZXZM--ZZXXXAA--XAIAAAXZZZZXAA=IAX-XXXXZXZXA=II=AI=+- -1-----+IIAXXI=IAAXZXAAXXI===IAII=1+=1I==++=+-11+===+
+                              CC       CC                  C
 1AXZI==IIXAIXIIZZXXXZZZXXAAZ-M=-ZXX-ZZZ-MM-ZXXXZ-XXIAAAXIAX--Z-XZZZXI-1+II=11  -   11+IAAAAXI=AXAAXAIAZAI==+IAAA==+1++-++==11-+=I=++
+                            C CC   C   C  C     C          CC C
 +AAI+IAIAXZZZZXZZXZZZZ-ZX=AZ-M=MZAZMM-----XZAXZZXA=+IAXZAXX--Z-IZ-ZZI===++--      1IIAIAAIII=AXAAZZXZXX==IAIXAII=+1=I1- -++=+++++===
+                      C     C C      CCCCC                 CC C  C
 =IXA=IAAAXZ-MMXXXAX--MM-ZXA--M==MZ-M=----ZAAAZZZXAAAAXZ---ZZ--MM--ZXAXA=11---  --1=AXAXAXAIIAXZZX-ZZZZA=AAI=I++==--=+++  -=====++=I+
+           C       CC  C   CC CC  C CCCCC              CCC  CC  CC                               C
 IIXXAIAIXXIZM-ZAIAXMMMMZ--XZZ-=++==+MZZXXXZZ--ZZXZXAAX-MM---MM=MZ-ZZZXI+11-----11+IXXAXZAXXAXAAZXZZZXAIIXXI+1-+=1 1+11-  -II=11==II=
+             C          CC   CCCCCCC        CC        C  CCC  C  C
 ==AXXAAIZXAXXZZXAXZMMMM--ZIAZM=+"""+=MZAXXMM==-XXZZXZ-M=MMMM==M----ZA=+1+-- --=I=1=ZZAXZZZXX=AAAXZXXA==AXXA=1-+=-1++1   -+==+-+IAI++
+                       CC     CC+++CC       CCC      C C    CC CCCC
+                                CCC
 1=XXXAAAZZZIAAZZZZZZZM-XXZAX-==="""++=MMMM-==M-IXZZZM=+=+=M==MM-M-XAI--1-----1II+ =X--ZXXXZA=AXIAXAAI1+AZZAI1 - 1=1-    11+--1=IA=+-
+                      C     CCCC+++CCC    CCC C      CCCCC CC  C C                  CC
+                                CCC
 1=ZXZAAXXZX1IXZZMMXZ-M-ZXZ=I-=+""+++++++=ZA-=M-ZZZ-M=+++++====M-ZXII=--1-1+++=I=1+A-M--MZZXZXXA==AAIAI=AXXAI1+1 1+-1---1-+=1++IIIA=I
+                    C C     CCC++CCCCCCCC  CC C   C CCCCCCCCCC C                   C CC
+                               CC
 1=AX-XAXXAX=IZZ-=+ZZ--ZXXXAXZ-="-"====++=--M+=M--ZZM==++++===M-ZXI==1----1==I=I=IIAZZ--MMMZAAZAIIXXIAIAIAII=+I=1-+++111+1+=+==III=+=
+    C          CCC  CC       CC+.+CCCCCCCCC CC CC   CCCCCCCCC C                      CC
+                               C'C
+                                X
+                                C
 +AXZMZXXAIAAX---=+-XAZ-AZXXZ-=+""=-MM-=M====+=--ZZZ==++M=+===-ZZXI+-  -1=IAI==AAXXZXXZZMMM-AX-XAXXA=I==II=++I=++1+11++==+==1++=III==
+             CCCCCC   C     CCC++CC  CC CCCCCCCC   CCCC CCCCCC                            C  C
+                               CC
 =AAZMZXIAIXXZM-Z=+MXXX-ZZ--Z-+""=ZM==MMM=++++MMZZZ-==+=MM=-=MM-ZX=    1=AXAAAXAXZZ-ZXXX-ZZZIZ-ZAAI=II=++1=I=III==+--+1=I+=+1--++=IA=
+              C CC    C  CC CC++C  CC   CCCCC     CCCCC  CCC  C                   C    C     C
+                              CC
 AIZ==-XAAAXZZZ-M=MM-XZ==+++++"""+Z-=MMZ-=++++MM--MM=+""=+===M=M-A+- -++IXZIXZ--XZZX-ZXX---ZAAZZXAXXA==+=A=I+==II=1-1=+I==+1-++====II
+   CCC        C C  C  CCCCCCC+++C CC   CCCCCC  CC  CC++CCCCC C C             CC    C   CCC
+                             CCC                     CC
 -A-==ZAAXXXXZ-M=MZ-MXZM==++---""+-MMZXXXZ=+===M-M=+++""++M--MM-XI111+IIAXXAAAZ-ZZZXZXXXZZZXAXXXZZZXXA+1=I=I1+-+II+=+=I=+=++1====+=I=
+C CCC        C C  C    CCCC...++CC       CCCCC C CCCC++CC CC  C               C
+                           '''CC                     CC
+                           XXX
+                           CCC
 -X--=-ZXXZXZ-M=+=---ZZ--=""-""-+MMMMZIXAXM=-M=MM=M+"+""+=-ZZXXAI+===AXAAAXZXAXZ--ZZXAI=AI+IXXAZ--ZIXI++=I+=+1 +=IIIIII=======++=IAAA
+C CCCC      C CCCCCC  CCC++.CC.C          CC C  C C+C++CCC                     CC              CC
+                         CC'BB'                    C CC
+                           XHHX
+                           CXXC
 XXXZ=M-ZZ--X-=++MM=M-ZZ-"--"-"-+M+M--=IZ--ZXZZ-MM==+++++=ZZZAAIIIXAAXZXZXXZ-ZXXZMZZZAI==IIIZZAZ--XIIIIAAA=11--+IXAIA=++II==I=IIAAAXX
+    C C  CC CCCC  C C  C+..C.C.C C CC   CC    C  CCCCCCCC                  C                   CC
+                        C''B'B'
+                         XXHXHX
+                         CCXCXC
 =AAZ-ZMMM=MXM-"=XAZ-ZX-=""---"-+==M-A=X--ZXIAX-M++=M=M==M-AAII=IXZXXZ-ZZZZ-Z-XZ-Z-MXZXAIAXX-ZAXAA=AIAXXAAI+-+==AXAAI++=II=I==A=IXZXX
+    C    C   .+C   C  CC++...+.CCC C   CC     C CCC C CC C           C    C C  C C         C
+             'C         CC'''C'
+             X            XXX X
+             C            CCC C
 --ZZZXM-M=M==""=XIXZXA-+""""+=+=ZZZZA==AXXXA==Z+++++==+=M-AIIIIAXXXXX---Z-ZXZZ-M-M-XAXA=IXZZZXXA=IIIAXXAXI++=IAXXAAA=AAAA===III=IAAA
+CC     C C CC++C      CC++++CCCC               CCCCCCCCC C           CCC C    C C C
+             CC         CCCC
 ++MX-M==M++++"+-XX--ZIZ=+"==+--ZXI====IAA-ZA1=-=++"+++++MAAXAAAXXAAIA-ZZ--XXZZ-Z--ZXAXA==XZZXAZZIXIIAZAAA==AAAXZXAAAIIAAI-+=AAAII=IZ
+CC  C CC CCCC+CC  CC   CC+CCCCC          C    CCCC+CCCCC             C  CC    C CC
+             C           C                        C
 "+ZAZ="""""""=MXXM++-ZZ=+++""=XMXI++===AZ+=X==ZMM======+Z==IAXAXAAIAXZ---XXZZZ-XAZZZAAI=AZXZAAZZAZIAXX=+III=IXAAXI=IAIXA=-+=XXXAA=AX
++C   C+++++++C    CCC  CCCC++C           CC      CCCCCCC              CCC     C
+C     CCCCCCC              CC
 =-XAX=++-+--"MX+XM""MM-M+="-""M==-A=AIIXM""-A=AZX==M=--Z=  IZZAAZZAZ--ZZ-ZXAXZ-ZXXZX=-=AAZ-ZXZZZXXAAAI==AAA=IAAA=+IIAXAAI==IXXXAAIIA
+CC   CCC.C..+     ++  C CC+.++ CCC       ++C     CC CCC             CC  C     C           C
+        ' ''C     CC      C'CC           CC
+        X XX               X
+        C CC               C
 ZXXIAM+"-""""MA+XZ+=MMM-=+"""""=++M--II-==+=ZXAAA--Z-XA=+1=AZ-ZIZXXZXZZAZZXAZ--ZZZZZI-IXXZZZ-ZXZZXAAI===+I=IXZXA1+IIXZXAIIIIAXXXXAII
+      C+.++++     CC   CCC+++++CCC CC  CCCCC     CC C        C               CC             C
+       C'CCCC             CCCCC
+        X
+        C
 XA=AX-=++=++"+Z=IZ--==MMM++=++++"+++-+A===++MM-XAZZXZI+IAIIX-ZXA-ZZ-ZXXXIAZAZMZX-MZZ=+A--ZZ-MZA-ZZAAI==I==IX--ZA=IAAXXXIIIIAAXXXXXAI
+  C  CCCCCCC+C    CCCC   CCCCCCC+CCCC  CCCCC  C             C   C  C            C      CC  C   C            CC
+            C                   C
 ZZMI-ZZM-M"--"=XIAZ-MM===M--=-="=M""MIZ===+++++MMMZXA+IZMZXXZAXXZZZZZAX=1AXAZXXXXZAXIAXM-X-M-AA--XI===IAIAXZ--ZZX=AXAXAI==IAXXXXXXI=
+    C   C +..+C    C  CCC CCCCC+C ++   CCCCCCCC                                         C C C  CC           CC
+          C''C                 C  CC
+           XX
+           CC
 ZIAX-AAAZ+--"--M-X-=M-==M-ZZ-ZZ+""-""=MM===+""-""+MZAAZ=+MZXZ-ZZ---XXAAI+IAIXIIXXXAAXAX--ZZ-XIXZZXI-+IAIIXZ-ZZZZXI=AXXXI=IAXXZZAXAI+
+    C    C..+.. C CC CCC C  C  C++.++C  CCCC++.++C     CC    C  CCC                    CC  C               C
+          ''C''                 CC'CC       CC'CC
+          XX XX                   X           X
+          CC CC                   C           C
 =-Z-ZI+ZXM"-"--+=--M--M-ZXXZZXM"""""++MMM==+"-"""++M---M=M-X-MZZM=MZZXXAI=====AXZXIIAAXZ-ZZ-ZZXZZAA =II=IAZ-ZZXXX-ZAAAXAIIAXXXXAX=I-
+CC C      +.+..CCCC CC C       +++++CC   CCC+.+++CC CCC C C C    C                      C  C               C     C
+          C'C''                CCCCC        C'CCC
+           X XX                              X
+           C CC                              C
 -"+MAAI-ZZ++M=+-=+MM-ZM-X=IAAA-+"""++==MM-==+"+"+=+===MMM=MM==Z-MM-ZXXXAI++1+IAAII==AAXZZZ-ZZZAXZX==AIIAAXZZZZXXX--XAAXAAAIIXA=AXI=
+.+C    C  CC CCCCC  C  C      CC+++CCCC  CCCC+C+CCCCCC   C  CC C  C                       C                      CC
+'C                              CCC          C C
+X
+C
 -"+AAXIAZ-=-Z==X+-+MAX-ZI+I==AM=++=-M-MMM-MMI-++=+++===MZ-M=+MXXZ-ZAAAII+1-1+II=====IIAZAZ-XXZXXZZ=IIIIZM-ZXAXZXX--MZXZZX+ -I=1IXXI=
+.+C      CCC CC C.C   C        CCCCC C   C   CCCCCCCCCC  C CC    C                        C              C       CC
+'C               '
+X                X
+C                C
 -"=M=-ZA-Z-XZ-A-"-+ZIXZXA+==+=-==+MZ---=MMM-1XMM=++++==MXX-M=XAIXXXAI===+- +1++==IIII=IAAZZAXXXZXAIIXAAZM--ZZZA=IXZZXAAXXA1=AAAAIAAA
+.+C CC  C C  C C+.C           CCCC  CCCC   C    CCCCCCC   C C                                            CC
+'C              C'
+X                X
+C                C
 "-Z-Z==XZZXXXZZ"-""+XA=IA++1-+ZMMMM---M-M--MZZ-M=++++MM--Z--=-ZZXZXXA===11+I11+=IAAAI=I=IAXXXXAXXAIXAAXXZZZZZZAAXAXZA=IAIAIIIAXI+III
++C C CC        +.++C               CCC C CC   C CCCCC  CC CCCC
+C              C'CC
+                X
+                C
 -XM+-M+ZZXXZ-M-+---+X1+==--  1I-=-Z------ZZMM--M=MM==MM==M==+=M-ZZZZXI==+1+I-+==IAAAA=IAAAXZXXXXAXIAIIZZZXXXXZXZZAXXI+IIIAAXXAAAIAA=
+C  CC C     C CC...C           CCC CCCCCC    CC C  CC  CC CCCC C
+                '''
+                XXX
+                CCC
 X==+MZ=ZIXXXM+"""-"ZA=+11--  +AZM-Z--ZZZAAM=MMM-MZZMM==+==++=MMMM---ZXI=+1++--IIIAIII=AXXXXXAAAIIXAAAZ---XZXZ-XZ-ZXAII===XAZZXXXXXA=
+ CCC  C      C+++.+              C CC      C   C     CCCCCCCC    CCC                                  CCC    C  C
+              CCC'C
+                 X
+                 C
 Z=+=Z--X+AIAZZ"----+XAII+    +IZ-ZZZZZZXAX-M--=M-ZX--==++=+=+=MM--MMMXA=---1==IIAXAI==IAAAII==IIAAXAX-M--ZZXAAAAXXXXXAI==AAX-ZXZZXAI
+ CCC CC       +....C            C         C CCC C  CCCCCCCCCCC  CC                                   C CC                   C
+              C''''
+               XXXX
+               CCCC
 MMMZZZZA+XZXIX=----"=ZAI+1   -=Z-ZZXXXAAXXZ---M-ZZ---M==++++++==M--M-XI1  1+AAAIAAA=+==III=I=IAAAAAAX---ZXXA=+====ZXAAAAAAAXZ-ZZZAXX
+              C....+C           C          CCC C  CCC CCCCCCCCCC CC C                                CCC                     C
+               ''''C
+               XXXX
+               CCCC
 +=-ZZXXA==AA+X+-"===-III=+    1A--XII==XZAZ-MMM-ZM=--M==+""++====--ZZXI+1++=AXAII===+I+==IIAAAAXAXXXZX--XAAXAI=1+=XZAXXAXAZXXZZZXXXZ
+CCC           C.+CCCC           CC         C   C  CCC CCC++CCCCCCCC                                   CC
+               'C                                        CC
+               X
+               C
 +=-ZAIA=II+AIX="=-MX=AA==+-  1==XMX=++=AXAXZZZZZZM++==+++""+=====MZAAXA=+==IAAI+==++1111+=IAAAAAXZXXZZZ-ZAXXXI=I=XZAAZZXZ--ZZZXXAXXX
+CCC           C+CC                                CCCCCCC++CCCCCC                                      C                 CC
+               C                                         CC
 =M-ZAAA=AXA-ZAXXIIXX+=AIII=1+AIXXXIIIIAXXXXXXXXZZ-M===+++"""+++===-XAXXIIIIAA+==II=+--  1+=IAI=+IXXXXXXXXAAXA==AAXZX=XXZZ--ZXXAXXZXA
+C C        C                                     C CCCCCC+++CCCCCCC                                                      CC
+                                                         CCC
 XX--IIAIXM-MZXAI=-+I11=I=AX=1==XZAI==IAXXZZZZZ-MM----M+"++++-"+=MM--ZXAIAAAAI=AAAI=1-   1+II=I=IXIXZXXXXAXAI=IAXXAXA=IXXZZXIIIIIXZXI
+  CC      C                                   C  CCCC C+CCCC.+CC  CC
+                                                       C    'C
+                                                            X
+                                                            C
 AZMX=AXX===MZXII=+=I11=I+II1  =XXXAIAZZZXZZ--M==M-----=+=+++""+M==MM-ZZZAIXXAXZXA==-    +=I===IIAAXZZXXXXAI+==IAI=I==IAAXXI+=I=AZXXX
+        CCC                                CC CC CCCCCCCCCCC++C CC  C
+                                                            CC
 -M=I+XXX++"+A1==IAAAI++==IX1  IAAXXXZZZZZZ-=++++==---=+==+++=""MM==M-Z-MZIAZ---ZAI+-   11=I==IIAIIIZZXZAAA=I=I=+11++=AXXXXAXXXIAXZZZ
+C C     CC+C                              CCCCCCCCCCCCCCCCCCC++  CC C C     CCC
+          C                                                  CC
 ==MAIAZZ="-=1=ZA=IAXI1=++IZ=+XXXAAAAXZZXZZ-==+=+=-ZX-==++==MM=M---MM-M==ZXXXXZZZXAI=1--1+=====IXAIAXAXXXAAAXII=11++ +IAXXZZXZ-XIAXZZ
+CC      C+.C                              CCCCCCCC  CCCCCCC  C CCC  C CC                                                     C
+         C'
+          X
+          C
 M=-AAXMZZ==Z+X=Z=XXXAIII=IZXI--ZXAXXAZXAAX----MMZXXX-MM++=MM-MZ--ZXZ-MM-XXZX=IXZZXAI+11====I+=IXAIAAIAXXIIAAAAI+++1-+=IAAZZZ-ZAAAXZX
+ CC      CC   C              CC           CCCC      C  CCC  C  CC   C  C                                                    C
 AZZXAX=ZXXXAIA-AAM=MXXX==+=ZAZM----ZXZ-ZAZ----=MZAA--MM++==-Z--MZXXZMMZ--ZZXIIXXZZZA=++IIII==IAAAAAIIAAA==IIAII1111+==I=IAXZXXXAAZXA
+      C       C   C            CCCC   C   CCCCC    CC  CCCCC CC        CC
 XXAA+=ZXX-ZZXI1IZ+"=Z-ZA=A=-ZZ-MM==--XZZXAZMMMMMZXAZZM===M=Z-ZM-ZXZ-MZMMMZZZAXXAAZZAI++IAAXAIIAIIXI1==+=I==IAI+    +=IAAIIZZXXX=II=I
+         C       C+C C     C  C  CCCC                 CCC C C  C   C
+                  C
 MX==1=AXM+XAIX=I=+M-AXZZIA+XM++==+=M-ZXZZZZ-----ZXAAXZ-M=--M-ZZZZX-M-MMMA=AXAZZIAAAAA=+IAZAAIIAIIXA==-1IAII===1   -=IIAXAXXAAIII====
+         C      CC C         CCCCCC C      CCCCC      C CCC C     C C
 =Z==++=XM+X1=AAIMMXXI==AII=X=-""+MM=-ZXXZ--ZZXXZXXIIIAZ-ZZZ-ZZXZ--==-M=-A-1=AXZAAAAAIA=IAXXAA=I1=+==I+=III=-+=+   -+II1=AXA=IIIXII=I
+C        C                  C.++C  CC    CC            C   C    CCCCC CC
+                             'CC
+                             X
+                             C
 +M+-+IA=M=A-+=AAXZZAA=+11=AIXM=++ZAM--ZZZMMZZZ--XX=IAAAXZZXXI+=-==++M==M-I++IXZAAXA====IIXXII== + -=IIAAAAI =AI-   +AXIAXAIIA+=AAIAA
+C        C                    CCC   CC        CC               CCCCC CC C
 +"= =AI=M==A1I=+AXZZI===1=A=I-ZZZXIXZ-M-XX-ZZ---M=ZZ==-XIIZI- =M"""+-=M==MZXIIIIAZZI==II=IAAAI= 1  =AIIAAXA=AIA=1 1IXZ-ZZXAII=I=IAAA
+C+       CC   CC             C       C C  C  CCC C  CCC         +++CCC CC                                             C
+ C                                                              CCC
 =+=IXXIZ++=+-A++XZXX=I+==+=AX-ZZZIIAXXM=-ZZMMM+=+=MM+++=Z+=1 1ZM"""+ZMMMMM-XA=-=A-ZXXI=IAIAIII+-+11=AAAXXXXAIIAAA+1AZM----ZAII=A--ZZ
+CCC     CCCCC CC             C         CC     CCCC  CCCC        +++C      C      C                                    CCCC      CC
+                                                                CCC
 M==ZZ-ZX+"=++A-ZAAII==1+=+AXZXIZZX-XZZ-MM---M===M-===++=-X+--=M++="=M--Z--ZXAI=AZM---ZIXA====A1-=I+IAXXZZZZA++IXAI=IX-ZZ---ZAIIZZ---
+ CC  C  C+CCC C                   C   C  CCC CCC CCCCCCCC      CCC+C CC CC        CCC                                C  CCC      CCC
+         C                                                        C
 Z-=-Z-XA=++++==-M=--=11+II=AXZAZZZ--M+=X-Z-Z-=+=--M==+===-X+=Z+++=+=MM-XZ--XXXXAZ--=M-XZZA1++++=I=+IAXZ-Z--X=IAXZXA=XZZZ--XAAAXZ--ZZ
+ CCC C  CCCCCCCC                  CC CC C C CCCCCC CCCCCCC    CCCCCC  C  CC      CCC C                 C CC             CC      CC
 AZ=-ZZAXZZXAX-+"++  1 1+AI+IAXXZ-ZZ-=+MAZ-MM-=+===--MMM=-M-ZAM=++"""M==-ZMMM---Z-MM--ZXXZZI+-1==I=IXAAZZXZXX=IAAXXIAZ-ZZ--A+XXXZZAIA
+  CC         CC+C               C  CCC   C  CCCCCCCC   CC C   CCC+++ CCC    CCC C  CC                                C  CC
+               C                                                 CCC
 IX--ZI1+=-1++=X=+Z+---+IXAIAAAAZM-ZZ=MXIAZ--M=ZZM-Z-ZZ-M-Z--Z-MM===+M=M-M==-MZ-MM+=M--ZXXZXXI=====IAI=XAIXIX=IAXXZXXZ-ZZXXA=II=+=+II
+  CC           CC                C  C     CC C   C C  C C CC C  CCCC C C CCC  C  CC CC                               C
 =AZZZI=A++XZA==Z=-I1+1+=AIIIIIIZ--ZMMZA+1IXZ--XXZXXXXZZZ-ZZXXZ-M=MM==+=MMMM-M-MM=+++MM-ZXZZZXIII====IIIXAIAXIIAIAXXXZZZXXXAI=+=IIIAI
+                CC              CC          CC          C     C C  CCCC    C C  CCCC  C
 =AZ-ZXZZ++-MZZX=-A===1+II=+1+=IZ-ZXMMXX1-=AX-ZZZZXXAXZ---ZXAXXZ-MM=+++=M---Z-+++====M--M-MMM-XXI=I===IIA=IAIIAI=XXXZZ--AAAI=++++=AXI
+   C      C     C               C           C         CCC      C  CCCCC CCC CCCCCCCC CC C   C                        CC
 =AXM-Z-M= +ZAI1AZ=+++=ZXX=1 -=AXIXZ-MXZIIIAXZXZ-X=AAX--MMZXIIZ-M--==+++=MM---++"+==MM--M=MMM=MZIAA=++IAA+=AIIAAXXIXX--XIII==IAI+=AXA
+    C C                            C           C     CC       C CCCCCCCC  CCCCC+CCC  CC C   C                       CC
+                                                                               C
 IAZ---MZX-    -X==1-IM-==A- 1=IXAAAXAIIXZZZ--X--XXXIX--ZMZAIXZZZ-=MM===M=MMM=++++==M-ZM=+=M=MZXXXII=====1+======IAAAXZZAAAIAXXI=AIAI
+   CCC                CCC                  CC CC     CC         CC  CCC C   CCCCCCC C  CCC C
 AAZZZ--A=XA1-1IXAAI=Z++="Z  1IAXAI==+==XZZZ-M--MMZIIZ--XZ-XXZZZXZ=MM=MM-=MM-M==MMMMM-Z-M++=MZAXZXI++++--1+==+111+IAXXZZXAIII=I=II+==
+     CC              CCC+                  C CC      CC  C       C  C  CC  C CC     C C CCC
+                        C
 -X-Z-Z-A+AX=IXX-==MM=++=+X1-+AZXXII--+=AAXX--M===-XAZ--XX-ZZZZZXXMMMM-M-M---MM---MMMZZZ-=M==-AXZXA=+1-----1+11++=AAXZ-ZXI=AAIII==++=
+C C C C        CCC  CCCCC                  CC CCCC   CC  C           C C CCC  CCC      CC CCC                        C
 =MZZ--ZAAXZAXZX=++-"+=++=X==AAAXAA=- -+=XXAZZM=MM---X---ZZZZX-MZZM==---ZZZZ-==--ZX---ZZM=M--AAI=AAI=+     -+1+=IAIAXX-ZXAIIXAAA=IIII
+C   CC         CCCC+CCCCC                     C  CCC CCC     C    CCCCC    CCCCC  CCC   C CC                         C
+                   C
 M-AAX--ZZXZZXZZM=+-=ZZ+=XI=IAXAAII11 -==AAXXX=M=-AZ-ZZ-M-Z---M=M--=MM-ZXXZ-M==M-M-XZ----=MZXAXA+===I+      1+=IIIAIAAZXAXZZZZXX+=AAA
+ C   CC         CCCC  CC                     C CC  C  C C CCC C CCC  C    C CC C C  CCCCC
 =ZI=Z---XXZZI=XM=++=XAXI==IAZZXXXA=+++==IAAAZMZMM--ZZZZ-ZXZ-MMM=M-ZMZZXIAZ-===+++=ZX--Z-==-AZZZAAI==1-    -1=IIAI===IAXAIAXZZXI===IA
+C    CCC        CCCC                             CC    C   C   C C        CCCCCCCC  CC CCCC
 -X==Z--ZAAXXXIA=""++=-ZAIIAZZ-XZ-XI+===IXXXXXZ-MM-ZZZ-ZZXXX-M===----ZZXIXZXM=+"++=-Z-ZA-==ZZZZZXAI=++-   -1=AAAAIII==IIXAAAXZAI=IAAA
+C    CC        C++CCCC       C  C             C  C   C     C CCCCCCC        CC+CCCC C  CCC
+                CC                                                            C
 MZIAX-ZX==AZXZ-=++M-++==ZXXAZ--M=ZI +IXXZXZZ-ZX-Z--ZZ-ZXZ-XZM==MZMMMZXIAZZA-M++++=MMM-M-Z=ZZZXXA=+=+=+  -1++AXXAIIAA=1-+AAIXZAII=AXI
+     C        CCCC CCCCC     CC C           C  C CC  C   C   CC            C CCCCC   C C C
 -ZAXZ--ZAAZMZM=MMMMZM++"+-ZXZ=M-=MZAIXZAAAZZ---MMMMM--Z--ZXZ-MM---Z--XXXZ-X--=++==M==+"=+-XXZXI= 1++II1---1==XXAIAAIAI=1AAI=IAIAI+=I
+C    CC       C      CC+CC   C CC           CCC     CC CC   C  CCC CC    C CCCCCCC CCC+C C
+                       C                                                              C
 --ZZXXZZZZZ-Z-=M-=M-++"""=MM=MMM=MMZXZZZI+XX---M=---XAZZAZXX-M-Z-XIAZXZ--=MM-M=+=M==M=MZ=X==AAI=1==IA=+++11+IZXXAXIAZZA+=IIIIAAAI--+
+CC         C CC CC CCC+++C  C   C           CCC CCCC        C C C      CCC  C CCC CC C
+                      CCC
 MM--XIZ-ZXZ=+AM=-XZX=+"""=M+=M===M=MZ--ZXXZZ-ZM=MZZX+AZA=XZXZM-X-X11AZZ--M-MMM-M==MZ-XZ=AZAIIII====AA======IIAAX=IAAZXAI++IAAI=I=1++
+  CC   C       CC   CC+++C CC CCC C  CC     C  C              C C      CC C   C CC  C
+                      CCC
 M-Z-ZIZZZXA=IXX--+=Z=+""+MM-=++==MMM-M==M=-XXMM=M=ZXXXZA=IAX-ZAA-ZA=XZ-ZZZ-M==ZXMM--ZX=1AXXA=I==I==IA===IAXXZXA=+XAZZXAAI+II=A=1--++
+ C C           CC   CC++C  CCCCCC   C CC CC    C C          C   C     C   C CC    CC
+                      CC
 M---XAX-ZXZXAXXZZ==-M-+++ZMM=MMZMMM-==MM==MZAM=M=MXXZZZZXI=X-X+=Z-ZI=X--XZZ--MX+=X--XI1+=AAIIII=++=II=I+=IXZZZX==XZ-ZZZ=IIAI++=+=+11
+ CCC   C           C CCCC   C      CCC  CC    C C           C    C    CC   CC     CC                               C
 ---ZXAXZZXZXAXXXA11X==AAXA-MM-XZ-M=M=MMM=++M-MMAZM-Z-ZXZZIIXZXAAAZZAAX-MZ-Z-Z-A--IXZ=11IA=AAAII=111===AIIAXZZXA=AZZZXZXIIIAI=+==I=++
+CCC                       C  C  C C C   CCC C     C C                 C  C C C
 X-ZXXAXXXZXAAXXZXI1A11+=IIZMMZIZM-M--M=MM=+MMM==X=M-ZZAXX+AA-------ZZ-MM-ZXZZZA-1===+==AA=XAAII=+-- 1=AAAXZ-ZXA+AZX==AXAAAXA=+1==++=
+ C                               C CC C  CC   C  C C        CCCCCCC  C  C                                  C
 ZXZAXAAAAZZXXAAX-M--+=====Z=ZZ--Z--ZX=+=-MM==M-MM--Z----MAZZ-+++++==+++=MZZAXMMZ=+++=IAAAAAAXIA=+1  -IXXZZ-ZZXXAXZX -I==IIIII=1==+1+
+                C CC       C  CC CC  CCCC  CC C  CC CCCC    CCCCCCCCCCCC                                  C
 ZXZAAXAAIAXAXZXZM=M=ZA==1=ZMMZAZZMMMM==M-ZX-MZXZ-XXZ-Z-MM--ZX=++++"+"++MMZZZXA-=M====AAIIAXXXIXAIAI+IAZZAAXXXXAXXXXA=AI=IIIAI=II=+11
+                 C C                 CC C  C    C   C C  CC  CCCCC+C+CC       CC
+                                                                  C C
 ---ZAXXXAAXXZZX--M=+=MA==X-=MXAXZ-M=---M-ZZZZ-ZX-Z-MMZXXXZXIA-++++"""+=XMMMMZI-++AI==AZA=AZXAAAXXXAIAAXXI==IAIIXXXXXAII==1=AAAI==11-
+CCC            CC CCC     CC     C CCCC C    C  C C          CCCCC+++CC       CCC
+                                                                  CCC
 M--ZIIXXIXXXZZZM--==++ZIZMM-ZZZZZ-MMXXZZZZMZ-M-Z-==+MXZIZZ+1IM"+""""+++-M==M-Z=+=X=+IIAAIAXZXAAAXZIIIIAXAAIIIIAXXAXZXAII==1=II=I=+11
+ CC             CCCCCC     C     C          C C CCCC          +C++++CCCC CC C CCC
+                                                              C CCCC
 MM-ZIIXZXXXXZZZZ--==+"-XX-M-X-MM-=M-MAXZM-=-==MZZ==+M=IAZ-A=I=++"+""+++MMM=MZ-==-A+=AIAIIAZMXAIXXZZXIAXIXXIIIIAAZZZZX=-+II===I=I=II+
+  C             CCCCC+C  C C C  CC C     CCCCC   CCC     C   CCC+C++CCC   C  CCCC
+                     C                                          C CC
 =M-ZAAXZZZZZZZZ-ZZ-M++-ZM+"=ZM=-M=-XZ==XZMMM==MMMMM=-AIZZXXII++++++++++MM-Z-AX=MZ11AXA===AM+M-ZAAIXZA=AIXAAIXZZZZZZXA  +IXAAI=AIAAA=
+C C            C  C CCC  C+C  CC CC         CC     CC        CCCCCCCCCC  C C  C            C C
+                          C
 ===-AAX-ZZZZZZZZZ--M=++=++M-X-MM=M-IXAA-MMIXZ--MM-Z-ZZAZXAZ=I++++++++=MMMMM-=I-MZ+I-=MZA+A-==-Z==++A==AAXXXAAZZ-ZXXA=I=IIIIAIIIXXXXA
+CCCC   C         CC CCCCCC C C  C C    C     CC  C C         CCCCCCCCC     C  C    CC     CCCC                 C
 ===-AAZ--ZXXXXXXX-===+""+MAXAZZMM=-AZAXMMZIXXX-MMMZZXAAXZ--AX=M+==+==---M==Z+A-=-ZM=MM=ZX-MM=MXI++++AXIXM-Z-A=XZZXXA+AIAI==++IAXXXXA
+CCCC   CC        CCCCC++C        CC           C          CC  C CCCCCCCCC CC   CCC  C  C  C  C            C C
+                      CC
 ===-A=X1XXAAZ--ZZ-+M=++"+ZAI+Z---=--XXAXAAXIIX--==ZXX===AXAXAMM===M-ZZMM-==ZXZM=-M=M=X+M===M++MX=XI=--XZ""=ZA1XZXAAI+==II=++==I==II+
+CCCC         CC  CC CCC+C     CCCCCC          CCCC             CCC C    CCC    CC C   C CCC CC      CC  ++C
+                       C                                                                                CC
 ===MZ1XX--ZZ------M-M+++-IA==-ZXZ=MMMZXZZXAIIXZ-ZZA==++-=ZXA-==+==MZAZMMM==-ZZ-=--==M=+===-M++==M==M=MZ=+++MX+XZXZZXAI+=IAZAI=II===1
+CCC     CC  CCCCCC C CCCC    C   C             C            CCCCCC       CCC  CCCCCC CCCCCC CCCC CC C  CCCC
 =M=M-XZZMMZXZ--MM-MM=MMMA===I-ZX-M-M-Z---XAI+IAX===-   -X=+M===+=MMAIZM--MMZ-ZMM-XM==++===-M=++=++=M-Z-+=MZ-XAZZZZZ-ZI=I=AXA=III=++-
+C C C        CC  C  C        C  C C C CCC                CC CCCCC      CC   C   C  CCCCCCCC CCCCCCC C CCC  C       C
 ====ZZXZM=ZZ-MZ-M-M===MZI++==Z=ZIAAAAZ-Z-ZAI==I==I=-   1Z=+=+====ZMAI--ZXM-Z--MMZX-======M-Z+"+M==MXAAZ=MA1XXAAAZZXZXZXXXAA=IAI=++1-
+CCCC     C  C  C C CCC        C       C C                CCCCCCCC    CC   C CC    CCCCCCC C C+C CC     C
+                                                                                             C
 ====XXXZZ=M==MZ-====+=-ZA+--MI-A-+=XAXZXXZZXXAI+IA=1+--1=--=+M===Z-XX--ZX-ZZZ-M--XXZ-====M=M="+=MMZ=IXAXZAIAZI==ZZIZXZZXXX==AI+11+1-
+CCCC     C CC  CCCCCCCC    C  C                          CCCC CCC C  CC  C   C CC   CCCCC C C+CC
+                                                                                             C
 M===-ZZZZ--MM-ZM=++++=X=A+++"M-XI==XMM-AXXZ-=X=111-==+=Z-MM++=MZMMMZX---Z-ZZZM-Z--AXZM=+===++++==MX=AXZAAAX--A+AZXZX=AXZXIXXI====+1-
+ CCCC    CC  C  CCCCCC     C+ C       C    CC           C  CCC       CCC C    C CC    CCCCCCCCCCC          CC
+                            C
 M====--ZZZZMMMZ==+=+"+I+II+-"+==+MIM="=XX-M++MI- -=I=+=="+=====-MMMZZ-M---Z-------XAZ-M==M=++====MZ=IAZAAAXM=AIAXXXZ=XZ--AZZAAIII+--
+ CCCCCC        CCCCC+C     C+CCCC   C+C  C CC          C+CCCCCCC     C CCC CCCCCCC   C CC CCCCCCC           C          CC
+                    C       C        C                  C
 MMM===-ZZZZ-++=+++=+""I=ZMA-+-""-+Z++"-X-+"+=Z1-+===+11-+++=+==MMMM-ZZ--MMMMMM-MMZZXZZ--M-M=+M-=+=MZZZZ==IA-=-X+1+IZXZZZ-XXXAI==+- -
+   CCCC    CCCCCCCCC++     CC.++.C CC+C CC+CC          CCCCCCCC    C  CC      C       CC C CC CCCC         CCC          C
+                    CC       'CC'    C    C
+                             X  X
+                             C  C
 XMMM==MZXZ--=+""++M-++--M=X---Z"-"-=++=="""+-1 1+++1- -A=++==M--Z--MM----MMMM=M=-ZZXAZMMMMM=+MZ=+=====-AIAAX-ZI   1M=M-XZ--ZXI====+-
+    CC    CCCC++CC CCCCC C CCC +.+CCCCCC+++CC           CCCCC CC CC  CCCC    C CC          CC  CCCCCCCC     C       C C  CC
+              CC               C'C      CCC
+                                X
+                                C
 -MMM==MZZZ---="""+MXA===XIX=Z=I""+=M+++""+==M+1+=III- -I=+=MM--AIX-MZMZZ--=MM==M--ZZX-==M=+===-M+=====M-ZXIZM-Z   +-MMZXZZZZZZZXAI+-
+C   CC    CCCC+++C   CCC   C   ++CC CCC++CCC            CCC  CC   C     CCC  CC CC   CCC CCCCCC CCCCCC C     C     C
+              CCC              CC      CC
 -M====MZ-Z--Z="""=-ZX===I+Z++XZ"+++++"++++MMMXAXZM--A11AM++=M-Z==IXZMM-Z-M==M==M---ZZ-========--=+=====M-I=X-MMX==AZ--ZZ-ZZ---ZZXI1
+C CCCC  C CC C+++CC  CCC   CC  +CCCCC+CCCC        CC     CCC C        C C CC CC CCC  CCCCCCCCCCCCCCCCCC C   C       CC  C  CCC
+              CCC              C     C
 =M==M=---ZZZZ+""=----MMMXX=+"=M+=+"+""+==MM==M=M=+=M-AAM=M+=M-ZI=IXXM=M--M==M=+=M-MM--=+======Z-M=M-==MMMXXAZ-M=+MZAZM--Z=AZZZIAI1-1
+C CC CCCC    C++CCCCC     CC+C CCC+C++CCC  CC C CCC C   C CC C       C CC CC CCC C  CCCCCCCCCC C C CCC       C CC     CC
+              CC            C     C CC
 =ZMM-M---XZX-=++MXZXXAI-Z-+++=MM++++=M=M--===+M==+=M-XAMM--ZZZZXAX--=M---M-M-==+=M===MM==M==MMM--MMM==M--M=MM==++=-XZ-ZMZIIZXX111+==
+C   C CCC   CCCC       C CCCCC  CCCCC C CCCCCC CCCC C    CC       CCC CCC C CCCCC CCC  CC CC   CC   CC CC C  CCCCCC  C
 +XM=MM--M-XXZ-=+MXII+=ZMMX-=+=-="+++=--M-ZMMMMM+=M=M-ZAAAZ-IXZZ---MMM--MMM-Z--M+======M=====MM-M--M=MM--MMM=====-XZZZZXZ--XXAAXA===A
+C  C  CC C   CCC          CCCCCC+CCCCCC C      CC C C     C    CCC   CC   C CC CCCCCCC CCCCC  C CC C  CC   CCCCCC       CC
+                                C
 +=MMMM-M==ZXZ-==MXIA=ZZ-M-M===M+"""++M-MZXZZZX-M--MMMM-AX--ZZZZ===MM--M=M--Z-X-===+=+====M---ZZ--Z----AXMMMMM-M-I+-ZZZAXZXAXXZZA+==A
+CC    C CC   CCC       C C CCC C+++CC C       C CC    C  CC    CCC  CC C CC C CCCCCCCCCCC CCC  CC CCCC       C C  C
+                                CCC
 ++=-MMM+++MZZM==-ZZXZZAZM--=+==+=+++==-XAXXXXXX-Z--=+M-ZXM----XM==M=M-==MMM--X-M==++=M=MMMZ-ZXXX-Z----IAMMMMM-MMAXX-ZXAAXAAXXXX=+IXA
+CCCC   CCC    CCC        CCCCCCCCCCCCCC        C CCCC C   CCCC  CC C CCC   CC C CCCCC C    C    C CCCC       C     C
 +"+MMM=+"+-ZZ+++=ZZZMZI-M-M=+M+MM+++=M-XAAAAZX=ZX-MMMM--Z--Z-M-=M-ZM-ZMM===--ZZ-M=++====MMZZZXIAZ---Z-ZZ-===M-=++MZXAAZ-XXAXAIA=IZZX
+C+C   CC+CC  CCCC      C C CC C  CCCC C          C    CC CC C CC C  C   CCCCC  C CCCCCCC         CCC C  CCCC CCCC      C
+ C      C
 ++MMZ-=++=ZZ-++"+MMZ-ZI----+=IM=M==++--ZIIAZ-A=ZZZMM=M-XXZZ-MM--M------M===MMZ---=+++===--ZXZXIXZXXXZ---Z-M===-Z=MZ-ZAXZXIAAIII=X-ZI
+CC   CCCCC  CCC+C   C  CCCCCC  C CCCCCC     C       C C    C  CC CCCCCC CCC   CCCCCCCCCCCC           CCC C CCCC C  C             C
+               C
 ++MMMMM+=MZZM++"+MMZ-MZZ-M==MXMMM=-MM--ZAAAZZZXZXZM+=-XXXXAM=====M--MMM=+++==-ZZ-M=++=MM-ZZXXAAZXXAAXZ----M==-ZX-ZZM-ZXXAAIAAI++IZZI
+CC     CC    CC+C   C   C CC     CC  CC            CCC      CCCCC CC   CCCCCCC  C CCCC  C             CCCC CCC  C   C
+               C
 ++=+++M==ZAXZMM=MMZ-----======M-M=M--MMXXXAXZ-ZZAXM+MZZ--ZAM+++==--MMM==+=++=-ZZ-MM===M-XXXXAAXXA==IZ-M--M==MAX--Z-MM-AIAXAIXA-1=XAI
+CCCCCC CC      C   CCCCCCCCCCC C C CC        C     C   CC   CCCCCCC   CCCCCCCC  C  CCC C             C CC CC   CC C  C
 +=++++=--XAIIIZZZZAXZ--M=====++MM+=M=--AXAIAAXXXX-===ZA-MM-=++==--MMM-=======-ZZ-Z-M=MZAAAAAAAZZI++=AZ--Z-M=MMM-ZZZZ-ZZXXAXIXA==II+X
+CCCCCCCCC            CC CCCCCCC  CC CCC          CCCC  C  CCCCCCCC   CCCCCCCCC  C C C                 CC C C   C    C
 =M==++=MZ==+1+IAXZZZAX-==+===++M===+=MZXXAI=AZZ-Z=+=MM-MMM=++=MM--MMMMMM+++=+=-ZZ--ZM-XAIAAAIAZZA=+=A-M-MMMM==+=ZZZXXX-ZZXXXX==IIAXZ
+C CCCCC               CCCCCCCCC CCCCC          C CCC  C   CCCC  CC      CCCCCCC  CC  C               C C    CCCC      C
 ==M-=+=MX++I==+A--ZXIIZMM==MM+MXM=M==MZZXII+AZZZ-=+==+====MMM--Z-Z-M========+=--Z----XIIIAXAAXZZXZXXZMMMMM-MM=++-XXAAIXXZX=II-1=AAXZ
+CC CCCC         CC       CC  C   C CC           CCCCCCCCCC   CC C C CCCCCCCCCCCC CCCC                     C  CCCC
 ===-===MZ1-A-X+=XAXXAIZ--M=-M+=ZZM===-ZXAII=AXXA-++===M==MMMMMMMM-ZMMMMM=M==+==M----ZX=IXXZXXZZ----ZMMMMMMMMM=+"MX-XXAAAXI++=1+=AXXX
+CCCCCCC     C          CC CC CC   CCCC          CCCCCC CC        C      C CCCCC CCCC           CCCC          CC+  C
+                                                                                                               C
 =MZZMMM+M+ AZ-Z++=ZZZZ-M==+==+=MZM=MMM-ZAXAIXZZA-=+=++MM==MMMMMMMZ---ZZ-=====M==M-ZZXIIIAXXXZZZ-----MMMMMMM===Z=+=MXXXIAI=+===++=AXA
+C      C     C        C CCCCCCC   C   C         CCCCCC  CC        CCC  CCCCCC CC C             CCCCC       CCC CCC
 -=--MMM+=I1IIXZ-AX-MMMM======+-AA-MMMMMZZZXXZ--ZM====MM=-MMMMMM=MZ-ZZZ-M===MM==--ZXAAI==AXAA--Z-MMM-MMMMMM==+=M=+++ZXXAXZX=IAAI==IAX
+CCCC   CC      C  C    CCCCCCCC  C           CC  CCCC  CC      C  C   C CCC  CCCC           CC C   C      CCCC CCCC
 Z=MM=+=+=ZAIIIX=MM=MMMM==M==Z-I-=-==MM-Z--ZZXZXZM==M-ZZM-MMMMM==MZ--Z--MMMMZ-MM-Z-ZXXA==AXAX--Z-MMMMMM-MM==++++MMM+=-AAZZZIIAAAA==IX
+ C  CCCCC      C  C    CC CC C   CCC  C CC       CC C   C     CC  CC CC     C  C C          CC C      C  CCCCCC   CCC
 AZ=M=+++=MMZM--=====M----==-II+-X=+M==M-M-ZZXZXZMMMMZZZZ-MM======-MM-M---Z-X-MM--MM-XA=IIAXZ----MMMM==M=M+=++++-M-MMZ=AXXXXXZXII=1IX
+  C CCCCC    CCCCCCC CCCCCCC     CC CC C C              C  CCCCCCC  C CCC C C  CC  C        CCCC    CC C CCCCCCC C
 ZXMM="++M=++"+=++=M---XAI-=Z=1++AM=M+=-MMM--XZZZ-Z--ZZXZ-MZM===MM-MMMMM--Z-X-MMM===M-XIAAAXZ---Z-M-M==MM===+++=MMMMZXII=XX-=+=ZZ+1IA
+    C+CC CCC+CCCCC CCC   CC       C CCC   CC    C CC    C   CCC  C     CC C C   CCC C       CCC C C CC  CCCCCCC           CCCC
+     C      C
 M--ZX""++""--""+"=-ZXXAAIMZ+ -=1=Z-MMM-MMMMZZZZZ-----ZZZ----MMM-M-M=MMM----XZ-MM=MMMM-ZXXAA-------MMMMMM=+++++=Z-MMXXZ=+IIX""+=X===A
+ CC  ++CC++..++C+CC               C   C         CCCCC   CCCC   C C C   CCCC  C  C    C     CCCCCCC      CCCCCCC C          ++CC
+     CC  CC''CC C                                                                                                          CC
+           XX
+           CC
 -ZZXZ++++""---"""+-ZZZZ=+I+ -==1AZZM----MM---ZZZ--Z----Z-Z----ZX-M=M-ZM-Z-MX---MMM--M=M--ZX-MMM---MM---M=++=+=--ZZ-X-ZI+=XZM++Z++==X
+C    CCCC++...+++CC                 CCCC  CCC   CC CCCC C CCCC  C C C  C C  CCC   CC C CC  C   CCC  CCC CCCCCCCC  C C       CC
+         CC'''CCC
+           XXX
+           CCC
 ZXZXM=+++""""-"""++==M-+-11 IZ+AXZA-----MM--MM----ZZZZ-ZZZMM--XX--MM--MM-M-Z--MMMMMM==----Z-==MM---M-MZZM=+=+=-MMM-AAA=IAIZAAZ1+11=X
+     CCCC++++.+++CCCC C            CCCCC  CC  CCCC    C     CC  CC  CC  C C CC      CCCCCC CCC  CCC C    CCCCCC   C
+         CCCC'CCC
+             X
+             C
 ZZ-ZXMZM+""""""++M=M=MZ+-1+=-M=+X-ZZ-Z--MM-MMM-Z--ZXZZ-------MM---MMM-MMM-ZZ-M-ZXZ-MM=-XX---MMMM-ZZ-----ZZ-==+==+==-AA++A=+++=1IZA=Z
+  C     C++++++CC C C       C    C  C CC  C   C CC    CCCCCCC  CCC   C   C  C C   C  CC  CCC    C  CCCCC  CCCCCCCCCC
+         CCCCCC
 XXXZXXI=XMM+"++M-ZZXAXXI1  IM=-XZ----ZZZMM=MMMMZ--ZXXZ-MMMMMMMM--XMMM=MM-----ZXXXAZZ--ZZ-MMMMMMM--ZZZZ--Z--M=++++===+MI+++++- -=M+ZA
+           C+CC C            CC  CCCC     C     CC    C        CC    C  CCCCC       CC  C       CC    CC CC CCCCCCCCC            C
+            C
 IAXAXIA=IAX--ZZMM-XXAAXXA- =-+=M-ZZ-MZX1X=+=M--Z-ZZXZZZMMMM----M--MMM=M-M--XAAXAX=IAXXX--=M=MMM-M-ZZXZZ-Z--==++++=ZZ==MA=+1+11-+="=A
+           CC    C          CCC C  C     CCC CC C          CCCC CC   C C CC            CCC C   C C     C CCCCCCCCC  CC          C+C
+                                                                                                                                 C
 AXXZXXXAAAAAXAZ==MAXXIXXX1 1AM=MM-Z--ZZ+AM+=MM--M--Z--MMZMM----MM==MMMM-M-XAZZXXI 1AAAAXZM-MM----ZZXIAZ---M++++++MZZ=++=AI+11=+=I-==
+               CC             C  C CC     CC  CC CC CC     CCCC  CC    C C                C  CCCC      CCC CCCCCC   CCCC         CCC
 --ZAXIXIIIII=XXM++-II=AXAI===-M---=XZZ---M-==--MMM==MM-=-MMZ--MMMM=MM=M-MXIZ--XXI++IAXAAZ-MMMM---ZX=+=Z-M-M++=M=MMM===+++Z-  +=IIAXM
+CC              CCC          C CCC    CCC CCCCC   CC  CCC   CC    C  C C    CC           C    CCC      C C CCC C   CCCCCC
 XZZXAAAI==II=XX-++ZAX-=MX-=MX--MZXI1IZZMM=MMMM-MMM====MMM==---M=====M=M-MA+XZZXAIIAAXXZZ-MM==M-MM-XAAIZ-M==++++=ZMM=+==+++Z++-=IIAAX
+               CCC   CC  CC  CC          C    C   CCCC   CCCCC CCCCC C C                C  CC C  C     C CCCCCCC   CCCCCCC
 IXXXAXXII=I=IX-Z==X-+"""==++=M--XI=1AZZ-M=M--M--MM====M=====MMM==MMMMM-ZZZIAZZXXAAXXXZZ--M-MMMMMM-XXXXMMM=+++==MMM+++=XXZ-ZII-IAAAXA
+              C CC CC+++CCCCC CC       C C CC CC  CCCC CCCCC   CC     C                CC C      C       CCCCCC   CCCC   C
+                     CCC
 XZZXXXX=AAAXX---MZX+"""+"==+==M-ZZA=XZ--MMMMM-Z-M-===MM===M==MMMM-MM-ZZZXXXX-MZZZZX-----MM-MMMMMMZMM--MMM=+++=MZ-M++++=1++- =AXXIA-M
+             CCC   C+++C+CCCCC C      CC     C C CCCC  CCC CC    C  C       C      CCCCC  C         CC   CCCCC  C CCCC            C
+                    CCC C
 ZXAXAXZXAA=AA-M--XAZ-XZ-++=+====AX-ZZZZZ--MMMZX---MMMMMMMMMZM-AZ-Z-ZAAZXXXAZ-M---Z-------MMM=MZA-M==MM====+"+=-A=XM++MI=+11IZ--+11=-
+             C CC   C  CCCCCCCCC  C     CC     CCC           C  C C         C CCC CCCCCCC   C   C CC  CCCCC+CCC    CC        CC    C
+                                                                                                           C
 AAZ-XAXAXAIAXM=MM-XXII==X-M++==+MIZZ---Z-Z----Z-Z---MMMMMMM-MMZ-ZZAIIAZXAIIZM=MMM----ZZ---MMM=M--M===M==+++"M==MAIXXZZ-IZ-M=M-=ZXI+I
+   C          C  C       C CCCCC    CCC C CCCC C CCC       C   C             C   CCCC  CCC   C CC CCC CCCCC+ CC       C  C C CC
+                                                                                                           C
 XXX-ZAA=AXAAXZMMM-ZZXA=+A-=++M=MMZ-----Z-ZXXAZZZZZZ--MMMMMMMMMM-ZZI1IXXAAAAZMM-Z--MM----M--Z-MMM--MMM====+++MM=-A+=X-M-AZ++"=M==ZAII
+   C             C       CCCC C   CCCCC C          CC          C              C CC  CCCC CC C   CC   CCCCCCC  CC    C C  CC+C CC
+                                                                                                                           C
 -ZZ-ZA=1=XXXAAXM-ZX-ZXAAAXZXZXA+=Z-ZZZZZZZXXXXXZZZZZMMMMMM=MM=M---X=IZZXXZZ-M--XZ-M=MMMMM----MM-Z-M-MMM===+++=MMA++AZZXZZ=+"+=M=-XZ-
+C  C            C  C              C                       C  C CCC         C CC  C C     CCCC  C C C   CCCCCCC           CC+CC CC  C
+                                                                                                                           C
 ZAXZXA==1=XX==IZM-AZ-M--XZZXII++1==++AZ-M-ZZZXAAIAXXZ-MMMMMMM=M--MZXAZ-MZ---==-ZZ-MMMMM-----MMMMZZ--MM====MIZMZAI===AIXI=AZMZZ-ZAM++
+                 C  C CC               C C           C       C CC     C  CCCCCC  C     CCCCC      CC  CCCC                    C   CC
 XZXZAI=I=+=AII==XXAXM===MZXIXXI==I= -AM=MM--ZXXI=IIAXZMM--M===M--=-ZZ-M=M-M-=M-ZZ-Z---M-MMMMMM--XZ--M===M=Z+XMAXAXXZAIAX++1I==I+X=++
+                     CCC               C  CC            CC CCC CCCC  C C C CC C  C CCC C      CC  CC CCC C                       CCC
 ZM-ZZXAI=+-=II=-=AZ-M===M-XAZXZ+IAI+IIX=M=M--ZZAI=IXZ-MMZ-M==+==M==---M==M=MMMMZAZZ-MM----M--ZAIIXXZ-MM=M-=+AIIXA-XZX=1A+111- --IZ=+
+  C                C CCC C             C C CC        C   C CCCCC CCCCC CC C        C  CCCC CC       C  C C       C                CC
 MMZMMZ=IA= =I==1-AZ-M+===MZX-X-AZZX=XMIA==M--ZXAIAAA-MMMZ-MM=+++M==MM--=MM===MM-AZ-ZMM-ZZ---ZA1- -=AZ----A+-===IAXIA====1-      -IX-
+                   C CCCC   C C         CC CC       C    C  CCCC CC  CCC  CCC  C  C   C  CCC         CCCC                          C
 Z--===ZAII+=AI=+-+A-=MMMZZZ-MZ-=--XA+=1X+=M-XXXAI+IZZM==MZ--====-M===M-MXZ=-==M-Z--Z--ZXZZ-ZXI-    1=XXZ-I1-+1 1====AIAI+       ++IM
+ CCCCC             CC      C  CCCC      CC C          CC  CCCCCCC CCC C   CCCC C CC CC    C             C
 ----MMMZXAI+=AI=1-XM=-=--XMMM--ZMM-ZX=+Z++=-AIIII=AZ-=+=M-Z-M=M====M====MM=MM=M---ZZZAXXZZZ-X=--  -+IXMXI1-  --AAAXZZIII=-        =Z
+CCCC                CCCCC    CC   C     CCCC        CCCC C C C CCCC CCCC  C  C CCC         C
 --ZZMMMZ--X==XAI+-=AZ-M+=MMM-ZAI-M---ZA-"+=-XIIIAAXZ-===MMZZ-Z-===MMMM========MZZ-ZXA=AXZZ-M-ZA==-+AZ-MMZ=1+=IZ-AIZM=MMM-I1  -++1 -+
+CC      CC           C CC   C   C CCC  C+CCC        CCCC    C CCCC    CCCCCCCC   C        C C        C         C    C   C
+                                        C
 ZZZZ-M=M-M-Z=AAI=++IZ=Z====---XA---MMM-="+M-ZAIIAAZ---==M=-ZZZZ-M==MZM=MM=++++=ZZZXAIIAXZZ-M---ZZZZZ-M==XXZMMM-ZI1XM+=+++MZA=AZM--ZI
+    C C C C          C CCCCCCC  CCC   CC+C C       CCCCC CC    C CC   C  CCCCCC           C CCC     C CC      C     CCCCC       CC
+                                        C
 XZXXXZ--A-M=ZA==+=++IZ-M==MZ-----M-MM-ZZM+=M-ZXXZXZ--ZM==MMZX-ZZZ==ZZ-=M-M++=Z=M-XAIAXXZZZZZ-MMMMMM=M==A-=++=-ZZAXM==MMM+=M-XX-MMMM-
+      CC C C          C CC  CCCCC C  C   CC C      CC  CC    C   CC  CC C CCC C C           C      C CC CCCCCC     CC   CC C  C    C
 ZZXXZZZZIIIM=XI=++==+ZM-MM--Z-Z-M-ZZ-ZXXXM==MM-ZZZZZ--M=M-M-ZZZZIZM--M-Z-=+++M==MXAAZZZZXZXZZ-MMM===++==+++=-XZ-ZZ-M---M=---XZ-M-ZZZ
+            C          C  CC C C C  C     CC  C     CC C C C       CC C CCCCC CC             C   CCCCCCCCCCCC  C  C CCC CCCC  C C
 ZZZZXXXXI11AM-I=+-++ =XZ-M-Z----MM---ZXXAAMM====M-Z--MMMM--MM-ZX=A-MMMZZM=+++++=MZXZZ-Z+1AAXZZMMM=====++==MM-ZZ-ZZZ-ZXIZ-ZXAIXZ-ZZZZ
+             C          C C CCCC  CCC       CCCC C CC    CC  C    C      CCCCCCC     C           CCCCCCCCC  C  C   C    C      C
 AXZZZXAIA1 +X-X=- +   -=XZ--ZMM-MM---ZIII=IA=+=++=M=MMM==---MM-XAAAM=-AZM=++=+===-ZZ--ZAIXXXX-M==M==MMMMMMM---ZZZZZZXXIXZZXAIXXZ---Z
+             C            CC   C  CCC       CCCCCC C   CCCCC  C     CC   CCCCCCCCC  CC       C CC CC       CCC                  CCC
 AXXZZZIII1-++XA+- 1-   -+=X-ZMMMMM---ZIIIA=A=+++""+-=====Z-MMMMZZAX-M=III="==+++MMM----MM---ZMM==M=M----MMM-Z--ZXXXXXAIXAXXAAXAXZ-M-
+                           C      CCC       CCCC++CCCCCCC C        C     C+CCCCC   CCCC  CCC   CC C CCCC   C CC                  C C
+                                                CC                        C
 AAAXXXIIA+1++==--  -1-1- 1=AX---M=MZZ-ZIIZZM+M=""-+M---M--M==Z=IAXZXZ=AZ=Z++M--=MMMMMMMMMMMM-MMM--M----MMMM----ZXXAXIAIAAAX=AXXAXZZZ
+                             CCC C   C      C C++.C CCC CC CC             CC CCC            C   CC CCCC    CCCC
+                                               CC'
+                                                 X
+                                                 C
 II=AAAAAAA=AX+=11-11=I=1--11+IXZZMM----IZ++++-=""-++-XAM====+==1=ZZXX=+1=X==--ZZ-MMM=MMMMM=MMM--ZZ---------M---ZAAII=IIAIAA==XZXAAZZ
+                                   CCCC  CCCCCC++.CCC   CCCCCC            CCCC  C   C     C   CC  CCCCCCCCC CCC
+                                               CC'
+                                                 X
+                                                 C
 AIIAXZ--Z-Z-ZI==II=+=AI+1-++=+++IZ--MM--=""++MM=""++MXZ-=+++""=XAZXXAI=1IX-MMX++Z-MMM=MMMM=M-ZZXAXZ-----Z--M-ZZZAAI+=IIAIAI==XZXXZ--
+      CC C C                      CC  CCC++CC  C++CC   CCCCC++C           C      C   C    C C      CCCCC CC C                     CC
+                                         CC     CC          CC
 IIIAX-M=M-MZXIXAAAI==AA==-+==1I=++IX+=="--"+++++""++=M--ZM=+++-AAAAII+===AIII++=AZ-MM=M-M---ZXZXIAZ-MMM----ZZZZXXAA==IIIII==IAXXZ--Z
+     C C C                          CCC+..+CCCCC++CCC CC  CCCCC                   C  C C CCC       C   CCCC                      CC
+                                       C''C     CC
+                                        XX
+                                        CC
 IIAAX-ZMMZ-AXAXXAII==AX=+++===A==++=XZZ=""+++++++===+=M-ZZM===MAAXAII=-+IAIAXXAAAAXZ=MMMMM--ZZZA=IZ--M=--Z-ZXZZXXXAI===II=11IAAXZ---
+     C    C                            C++CCCCCCCCCCCC C   CCC                      C     CC       CC CCC C                      CCC
+                                        CC
 IAAAZZIZZXAAXXXAII=+IXZ=-IIIIIAII==+==IZ=+++++++==+=+=M-Z--=""+AXXAI=A1+==XZZ=ZM-AZX=MM-M--ZXZZXXXZ-MMM--Z-ZXZZZZXAI====I+11IAXZZ--Z
+                                        CCCCCCCCCCCCCC C CCC++C                 C   C  C CC        C   CC C                      CC
+                                                            CC
 AXAXZZXXXIA--ZIIIAA+AXXI=AXAXIAXXXII===XMMM---MZZM====MMZZZM+""ZXXA=IA=1+-ZZ+AZM=---=M----ZXXZZZ---MMMM-ZZ--ZZZZXXXI=IIII=1+AXZZ---Z
+           CC                              CCC    CCCC      C++                 CCCCC CCCC      CCC    C  CC                    CCC
+                                                             CC
 AAAXXXAAIAZ=M=-ZAXXAX-XAIIZ-ZXX-ZXXAII=IAXA -IXI=AZZ-++=MZZ-Z-MZ-XA=I=1==-XZI-IAZM=++--M-ZZZZZZ-M-Z-----ZZZZXZX=XAI=IIIAII1+AXZZZZM-
+           C CC      C     C   C                    CCCC   C C  C            C    CCCCC C      C C CCCCC                           C
 AAAIII=AAX-M=+MMZAX-Z--AZ-XZZXAZ-ZXXIAIIIA=  =AAIZXM++++MZZXAZXX-ZZ=+==IAA= 1M=-+"=+=ZZM-ZZZ-ZZZ-ZZ-ZZ-----ZZXZXXIIII=II=1 +AZ-ZZ---
+          C CC     C CC  C      C                   CCCC        C             CCC+CCC   C   C   C  C  CCCCC                   C  CCC
+                                                                                 C
 AI===I=AXXMM="+ZIZZZAZ-ZZ----AAX-ZAXZZXXXZI11IAAAM=+++""+=MZAZXXZZX=+I=IXXZ+=M----+M-ZZ---ZZ-ZZZXXZ---M-----ZZZZAIAAI=III1-=AZ----MM
+            C+C       C  CCCC   C                 CCCC++CC                    ....C C  CCC  C      CCC CCCCC                  CCCC
+             C                                        CC                      ''''
+                                                                              XXXX
+                                                                              CCCC
 I===II=IAXM=+"+M=XXAAZXZ-==Z-ZXXZ--ZM+=M==Z+ 1+=X=++"""""=M-ZZAXZXXAAXAIIA-II="++""MM--M-XZZZZXXAX--MM--Z------ZAAAAIII==11AXZ--MMMM
+           CC+C         CCC C    CC  CC CC       CCC+++++C C              C  C+CC++  CC C         CC  CC CCCCCC               CC
+             C                                      CCCCC                     C  CC
 +=++A=IIXZZ=+"=MXXAI=Z-Z-=-Z--XIXZXX=MM=MM-- 11+X="""----+M-ZZAAAAZA=AII=Z-Z=M+X+-+=MMMM-ZZZZZXXAZ--MMMM-----Z-ZAXXXAAI==-=AXZ-MMM-M
+           CC+C       C CCC CC      C  C  C      C+++....C C              C   C  CCC    C         CC    CCCCC C               C   C
+             C                                    CCC''''
+                                                     XXXX
+                                                     CCCC
 ++==AAI=AZM+++M----AIM-M=+ZM==MZAXZM=-XM==MX+1+=A-=+"----+MMZZ-XA=I===IXZA=++XMZ=1Z===MMM-ZXAZXXXZZ-MMMMM----ZZXXXXXAAAI+1AXXZ-MMM--
+           CCC CCCC   C CC  CC      CC  CC       CCC+....C    C                    CCC   C         C     CCCC                 C   CC
+                                                    C''''
+                                                     XXXX
+                                                     CCCC
 ===IIAA=I-===+=MZZM-X-X==+MZMM=MXXZ+"+Z-M+=MAIIAXZ-="""--+=MM-MM-Z==XXXZ-I- 1ZZ-Z=X===M==-ZZXZZZXZZ--M-M---ZZ-XAXXXXXXXA++AZZZ------
+         CCCCCC    C C CCC    C    C+C C CC       CC+++..CC  C  C       C      C   CCC CCC         CC C CCC  C                CCCCCC
+                                    C               CCC''
+                                                       XX
+                                                       CC
 =IIXAXXIA-=+=-X--ZM-XZZ====ZZ-=MZXMM--=ZM==MZAIZZX-=+=M+""=M-XX-M-XAAZZZZ==1=ZXZM-M====M=-ZZZZXZZZ--MM-Z--ZZZZAAXXXXAXAA+=AZZXZZ--M-
+         CCCCC CC  C   CCCC  CC     ..C  CC       CCCC C++C C  C C               C CCCC CC        CC  C CC                      CC C
+                                    ''                  CC
+                                    XX
+                                    CC
 =IAZZIAXAZ="+Z---"=MZAZM-M==XZZZZZ-=--"+=-Z-ZXAX-XZ==-X==++MZXIZZZZZAXZ=-AAIXZAAXM====M==M--ZZZZZZZ------ZZAXXAXXAXAAZZI+AZZZZZZ----
+          C+C CCC+C     C CC      CC..+CCC C    C  CCC CCCC            CC         CCCC CC CC       CCCCCC                       CCCC
+           C     C                  ''C
+                                    XX
+                                    CC
 IAXZZXXZXA-==ZA-=""M-Z==Z===M--MMMM=-----MZXZZXZMZXZ-XAZMM=ZXXZZ-XXXXX--ZZXZZAAI=ZM===M=++M-ZZXXZZZZZ-----ZXXXAIAAAAAXZI=AX---ZZ---Z
+          CCC  CC++ C CC CCC CC    C.....           C     C     C     CC           CCC CCC C         CCCCC                 CCC  CCC
+                 CC                 '''''
+                                    XXXXX
+                                    CCCCC
 XAXZI--ZX+=-=-ZA-+-M-Z==M++==--=MM-="-""-+-AAX-M=-XAAAAXZZZZZXZZXXXZZZZXA-ZXZXAAAAX-==M=++=-ZXXZZXXZZZXZZ-ZXAAI===IIAAXIIAXZZZZZZ--Z
+     CC    CCC  CC. C CC CCCCCCC  CC+.++.CC   C CC                       C         CCC CCCCC             C                       CC
+                  '                 C'CC'
+                  X                  X  X
+                  C                  C  C
 ZXXZXM-ZI- Z--MXX"-MZI="+++++M-M---+--M-MM-IAZZ-M-XIAAIAXZZXXAIAAXZ-ZXAZZM-XXXAXA=IX++=M===-ZZXXXAAXZZXZZ-ZXXAI===IAAAAIAXXZZXXZZZ-X
+      C     CC   +.   C+CCCCC C CCCC.. C  C    C C                 C      C         CCC CCCC             C                        C
+                 C'    C            ''
+                  X                 XX
+                  C                 CC
 ZZAIZ-I=++1AI=+-A-----+-+===M-M-MM="--++XZZXXZZZZZZI=XIIAZAII=++IIX-X 1ZM==XXAIAAAAZM+=M=MMZZZZXXAIXZZXAZZZXAAI===IAAIAIXZZZZXAXXXZX
+     C       CCC ...CCC.CCCC C C  C+..CC                           C     CC          CC C
+                 '''   '           C''
+                 XXX   X            XX
+                 CCC   C            CC
 Z--I1AA+=IIIAMM=""-+==+M-+++=M--=+"-""="=ZXZ-M-XZZ-ZXXAIAAAII=1-1IAXI  IZ-ZAI=IIAAXXI======M-ZZZZXAZ-ZXXXZXXAIIIIIIAA=AIXZZZZZXAXXXX
+ CC            C+C.CCCC CCCCC CCCC+.C+C+C   C C   C                      C           CCCCCC C       C
+                CB'               C'BC C
+                 HX                XH
+                 XC                CX
 A==A-=-XXXZZXM-M--MX--+M=""++=MM-+---=+++-ZX---ZZZ-ZZZAA=IAII+1-1=I=++1+=AXIAII1IAXZZ======MM-ZZXAIXZZXXXXXXXIIIIAAAXXXAAXZZZ-ZZXAIX
+ CC   C       C ..  CCC C++CCC  CC...CCCCC  CCC   C                                  CCCCCC  C                               C
+                ''       CC       '''
+                XX                XXX
+                CC                CCC
 =Z=ZAA-MMM--Z---""ZXXA="+"-+++M=MM==+="-M-ZXXXXAXXXXXXII=IAII----+I=1++=+=AIA-XA=Z-MMMM======M-ZXAIXZZ-ZXXXXXII==AXXXZAAXXZZZXXXXAAA
+  C   C   CC CCC++    C+C+.CCC C  CCCC+C C                                   C    C    CCCCCC C       C
+                CC     C C'           C
+                          X
+                          C
 XXM-=-++MX-Z-MM-""="=Z--M="+=M-M+=--ZZX-ZMMZ-XXXXXAIAIIIIA=== -  -=====11=IAX-ZX-""++=M++++=+==-ZZXXZ---XAAAXAI++AXAXXI=AXZ-XAI+IAXZ
+   CCCCC  C C  C++C+C CC C+CC C CCCC   C    C                                C  C++CCC CCCCCCCCC     CCC                   C
+                CC C      C                                                      CC
 ZZ=M=MM+-X---==M=+M+=-=-Z-M+=M--=""MZXX-ZMM-"=XXXXAXAAAXXXA=++1  1+11==11==IXZXZ+"""++++"++=++=M-ZZZZ-ZZZXXAI=+1+AXAXA==XZZ-XXA=IAXX
+  C C  CC CCCCC CC CCCCC C CC CCC++    C   C+C                                  C+++CCCC+CCCCCC C    C                     C
+                                 CC         C                                    CCC    C
 -ZM-ZX-"MMMMZMM-M=MZXZZZ-ZZ-=M--M+++-ZXXM-M=+=XZZZZXZZZZZXXI1++1++1+111+=I=+=IAI="-"+"+"""++++==MZZ-ZZZZZZZAI+-1IAXAXXAAXZ-ZZZXAAAXZ
+C  C  C+       C C      C  CC CC CCCC    C CCC                                  C+.+C+C+++CCCCCC   C                      C
+       C                                                                         C'C C CCC
+                                                                                  X
+                                                                                  C
 M---Z-++MMMMM=M-M=-ZA----ZZ-=----MMZZ--ZMMZM==-ZXZ-ZZZ-ZZZXA=+=+++1+++1-+====IIIAM+"+++"""+++==+==--ZZZ-ZZZAI++=IXAAAXXZZ----ZXXXXZZ
+ CCC CCC     C C CC  CCCC  CCCCCC    CC     CCC   C   C                           C+CCC+++CCCCCCCCCC   C                 CCCC
+                                                                                   C   CCC
 ==---M++=--M"---"=--AZMZ----=M--XZZZX---==-MM-MMXZ-ZZ---ZZXAA=IA+1+==1-1+==++=AIIIAZ-X+""+"""++====MZZXZXXXAAI==IXAXXXAZ-MM--ZXZZXZ-
+CCCCC CCCCC +...+CCC    CCCCC CC     CCCCCC  C    C  CCC                            C C++C+++CCCCCC                     C  CC      C
+            C'''C                                                                      CC CCC
+             XXX
+             CCC
 ZXAXX-M-MX-="""--+MZXZ---ZZ-MM--XAXAA---==MM--ZZZZ-----ZAXIAXAIAI====1-111=XAI=+IAXAXXM+""""++======M-XAXXXXXI==IIXAXAXZ-MM--ZZ----M
+     C C  CC+++..C    CCC  C  CC     CCCCC  CC    CCCCC                                C++++CCCCCCCC C                  C  CC  CCCC
+            CCC''                                                                       CCCC
+               XX
+               CC
 ZAII+AZZZX-M++Z+""=MXZ---XI-M+MZX==-1XZ-M=M-Z--ZZZZZ--ZXXXAXXXAIAZ===1++===XXAI=IAZAXX-==+"+++==M=MMMZAAAXXAAAII==IAAAZZ--M--Z-M--MM
+          C CC C++C   CCC  C C         C C C CC     CC                                CCCC+CCCCC C                      CC CC C CC
+                CC                                                                        C
 ZI+II=AXZXXM+=ZM=++=-Z-MZZIZ--ZXA++ -XZZ-MZA--M-XXZZZ-ZXAZZXXXAAZMAI=++==IIXXXAAAA-ZZZXMM-+"++=MMM=MMZXXAAAIIAI==+=AA=ZZ--M-Z-MMMMMM
+            CC  CCCCC C     CC          C   CC C     C                            C      CC+CCC   C                     CC C C
+                                                                                           C
 XA=IA=+XXZZZM=+=Z=MM-AI-X-Z--XII=+-1+XXAAZZIZZ---Z-XXZ-ZXXZZZXXAIXA=I=+=IAXXXXZXZIXZ--AMM=M+++=MM===M-ZZAAXAIII=++=IAAZZ-----M-M---M
+             CCC C  C  C C CC                 CCC C   C                             CC   C CCCC  CCC C                  CCCCC C CCC
 XAAI=IIAZXXXXM==Z-ZZ-XZ-Z----ZXA=+1+IXAAIXZXXAAXZZXZXZ-ZZZXXXXZXAIAI==+=IIAAXZ-XIIAIIAA--M--+=+====MM-ZXI=XAIIAI++==AXZZ--Z-M=M=M--M
+              CC C  C  C CCCC                         C                       C        CC CCCCCCCCC  C                  CC C C C CC
 ZXAA==XXZXAXXZM+MZI+X------M-XAI===IAXAXAXZZXZI=AAIAXZ-ZZZXXXXXXA=AIAI==IAIAXXAXIXA=IAXZ-XAX-M======MM-ZAIAIIAII++==AXXZZZZ--MMMMM-M
+               C     CCCCCC C                         C                                 C   C CCCCCC  C                    CC     C
 ZIAAI=AAZZ--XXZ-M-I =ZMZX-MM-IAAI=IAXXAAAXZ-ZZX+AXXAAZ--XXXXXXXZIIZZXIIA=XAAIAIXAZX=AA11I=1=AXZ-=====MM-ZAXXIAI==+==AXXZZZZZZ----M--
+          CC   C C       C  C              C          CC                                       CCCCCC  C                     CCCC CC
 XAZI=IXIAXZZZZXXZZAI=AZ-XZ--ZAAXAIAXZXXAAAAZZ-A=AAAXAXZZXXZXXAXXAIZMZXIAIAAAA--XX=IAI=   --1=+IXM=====M--ZZZZXIII===AAXZ-XAXZZZZ-ZZZ
+                       C  CC                 C                               CC                  CCCCC CC               C       C
 XAXXZZ=ZAAXAIMZXXAAXAXX-ZZZZXAAXAAX---ZAII=XXXXII==ZXXXZZXXXZAAAAAAXZ-ZXIAXXZ-MMA=+II  -----++=IAM====MM-----Z=II=+=IAZ--ZZZ-ZZZ--ZZ
+      C                C           CCC                               C       C                    CCCC  CCCCC          CC   C   CC
 XXAX-M+-ZZXAX-ZXAAAXXXX-ZZZZXAXXZZZ=MZZA-+IXZZZZXIAZZXXXXXXXXXXAZXXIAAXXX-M--XZZZXXA= --==1- -+==X=====MM----ZAI=IIAXXZZZ-ZZ--ZAXXZZ
+    C CC     C         C           C                                     C CC                     CCCCC  CCCC            C  CC
 --XZZA-M=Z--ZXIZXX+IAZZ--ZXXXAZZ--Z==AXX1-=XZZZZZZ-M-ZZXAAXXXM-XZXAIAAAXZ++++-M-ZZXXA-- +=11 -+AXI=++=MMMM----ZA=AXXXZZZXZZXXXXAX---
+CC    C C CC           CC       CC CC             C C         C          CCCCC C                  CCCC    CCCC                   CCC
 =+M--X=-=-ZM-X=XZX+IAAXXZZAAIXZ-Z--MM-Z-X=+IAXXZX--MZ--XXXXXAZ=-ZXXIXXAZZ==M+++++M-ZI+-11+=+1+=ZZIM++===-MM--XZXXZZZX--ZZAAAAXZZ-MM-
+CC CC  CCC  C                  C CC  C C         CC  CC       CC         CC CCCCC C                CCCCCC  CC        CC         C  C
 MMMMM-M-M=ZZZZXZZZAIAAXXXXXAIAAZZ-M---XXXIIIIXXXZ-MM-ZXAAZZAAXZM=ZAXXXZZIAX--==++++-ZI111++==AZ-ZA=+=M+=M==MMZIXZZ-ZZZ-ZZZXAAAZZZ---
+     C C C                       C CCC           C  C           C          CCCCCCCCC           C  CCC CC CC       C   C          CCC
 AX--MMM=M=MZZ-Z---ZXAIAAXXAAAXXXZZ-Z-ZAAXXAIIAIX--MMMM-XIZ-ZZZZZZZ-MZAZ-IIXZZZ-M+++M-XI==-+==AXXZ-+=Z-====+=MZ--ZXZ-M-ZZZZXAAAXZZZ--
+  CC   C C   C CCC                C C           CC    C   C       C    C      C CCC C            CCC CCCCCCC  CC   C C            CC
 I=AZM=M+=--Z-ZZ---ZXAII=XZXIAAXZ-AZZ-Z----ZXAAXZ-MM==--ZIX-Z-M---XZZMXX--ZMZM=+++"=M-ZXXA+1==XZZ-="=Z-=+=+++=----Z==+M-ZXXAAXAAX--Z-
+     C CCCC C  CCC              C   C CCCC      C  CCCC   C C CCC      CC    CCCC+C C           CC+C CCCCCCCCCCCC CCC C         CC C
+                                                                                 C                C
 IAAX-=M-==--ZZXZZXXAXAAAXZAI+IXXXXXXX-Z-M-MZXXZAA--M=ZXA=AZZ=+M+"M-M="MI+--""----""++--==Z-+=X--+++"""+""""+=M-XZM==ZA=1+++=AXZZM=MM
+    CC CCCCC                         C C C       CC C       CC C+ C C+  C..++....++CCCCCC     CCCCC+++C++++CC C   CC             C
+                                                                C    C   ''CC''''CC                CCC CCCC
+                                                                         XX  XXXX
+                                                                         CC  CCCC
 IXXAAZM-Z-----XXZXXAIIXXAZXI=IXXIXZZZZ-ZZ-ZZ-ZXZZ----ZZAIIZZM+++-""-"-"X=--+=-"--""++==+"+ZAAI=Z=+++""=M+++++++MZZ-MAI====IAIAZMMMM=
+       C CCCCC                        C  C  C    CCCC        CCC.++.+.+ C..CC.C..++CCCCC+C      CCCC++C CCCCCCC   C                C
+                                                                'CC'C'C  ''  'B''CC     C           CC
+                                                                X  X X   XX  XHXX
+                                                                C  C C   CC  CXCC
 AZZAIXZMM-----ZXXXAXAI===IXXXXXAIXZZZ--Z--ZX--ZXXZ-ZZ-ZXIIXXX-+"--""-""Z-+"-M---"--""=M=""=-ZXAZM+++""=M"""+++=MXIIXI=I=IIZZZAI-MMM=
+         CCCCC                       CC CC  CC    C  C       CC+..CC.++ CC+C ...+..++C C++CC     CCC++C +++CCCC                C   C
+                                                               C''BB'CC   C  '''C''CC   CC          CC  CCC
+                                                                XXHHX        XXX XX
+                                                                CCXXC        CCC CC
 XZ-ZAXAXZZ--ZXZAAXIIAI+11+=AZM-XXZZZZ-X-ZAMMZZZIXX--ZXZZXAZXXZ-+"-----"+=M=M"""-----"+++++-AZZ--MMM=+"++""""+MMMX==II==IAA-MM-A-===+
+  C       CC                  C      C C          CC          CC+.....+CC C +++.....+CCCCCC   CC   CC+CC++++C             C  C CCCCC
+                                                                C'''''C     CCC'''''C                C  CCCC
+                                                                 XXXXX         XXXXX
+                                                                 CCCCC         CCCCC
 XA-=-AA==XXZZZXAIIA=A+-1111+AZMZMMMZZZZZ---=MXAI-M--ZXXXX-MZZZZ-="--"+"-""-----"----"""+=MZ==ZZMM-M=M++"+""+MZM=Z-+=II=IAIIZZZXAX--Z
+  CCC                                   CCCC    C CC     C     CC+..+C+.++.....C....+++CC   C    C C CC+C++C   C                 CC
+                                                                 C''C C'CC'''''B''''CCC                C CC
+                                                                  XX   X  XXXXXHXXXX
+                                                                  CC   C  CCCCCXCCCC
 XXZ--AXZXXXZXZZXXXI=I+1+11-1=AZ-MZ--XZ-M=+=+MZZZM=-M-XXXZZ-XXIAZ-="""++-"-"-+------++"""+==ZXXMMM-=+"++++++-XZM+MZZZAXAAAAXXZXZI+=IA
+   CC                          C  CC  C CCCC     CC C     C     CC+++CC.C.C.C......CC+++CCC      CCC+CCCCCCC   C
+                                                                  CCC  'B'B' ''''''  CCC            C
+                                                                       XHXHX XXXXXX
+                                                                       CXCXC CCCCCC
 XXXZZXA--ZZZXXZZXZXAZA===+1+=AAZ-ZXZXXZM+"+=MZ-Z-ZZ--XI===XZZZZXZ-M++==+"-----------""++"""+MMMMM-=+"++=MZXZZIX=++"+MM-ZXXAAXXXA+===
+       CC                       C       C+CC  C C  CC            C CCCCC+...........++CC+++C     CCC+CCC       CCC+C  C
+                                         C                              C'''''''''''CC  CCC         C             C
+                                                                         XXXXXXXXXXX
+                                                                         CCCCCCCCCCC
 IZXZ-ZXZZMZ-ZZXZX-ZZZZXII+1+IAAX--ZAAAAZ-M==MZ--MZA-M-AI=+XMMMMXXZZ--=M-Z+"--"-"----""""--""+==MZXM++=+=XXXXZAAM++"""++"+-XAAAAAAIII
+    C      C     C              CC      C CC  CC   C C             CCC C C+..+.C....++++..++CCC    CCCCC        CC+++CC+CC
+                                                                          C''C'B''''CCCC''CC                      CCC  C
+                                                                           XX XHXXXX    XX
+                                                                           CC CXCCCC    CC
 ZZZZ-ZZZ-=MAZZZ-AIX--XAII++IAIIX---ZXXX-X---Z--X-ZMM=MZXXZ-+++MMMMMZZ-=-XMM+"---"----"""""+""+++ZXM++==M-MZZZ--=+"""""""+MXAAIAAAAII
+    C   CC     C   CC           CCC    C CCC CC C   C     CCCC       CCC   C+...C....+++++C++CCC   CCCC C    CCCC+++++++C
+                                                                            C'''B''''CCCCC CC                    CCCCCCC
+                                                                             XXXHXXXX
+                                                                             CCCXCCCC
 ZZZ---ZXZ=+=MXZZZAAZZZAXI++=AIAZZ-M-=XZ-ZZM=MZ-XXAMM-M==Z+="""+=+=M=--Z=A==="-------"--+++==-Z=+=ZM==M=M=MMMMMM=+++=""++"=-II==+IIII
+   CCC   CCC                     C C   C   C  C     C CC CC+++CCCC CCC   CCC+.......+..CCCCCC CCC  CC C C      CCCCC++CC+CC
+                                                           CCC              C'''''''C''                             CC  C
+                                                                             XXXXXXX XX
+                                                                             CCCCCCC CC
 XXXZ-MMZZM==MMM-XXXZZZXAA=1+==AZZZZZAAXZZX-M=--ZAZZ---="=++"-+++-XZ----IA-M=""-----""""+-ZAXAX--ZXXZXZ--M--MMMM==MM+"+++=-ZZZXXIAIAA
+    C     CC   C                          C CCC    CCCC+CCC+.CCCC  CCCC  C C++.....++++CC     CC      CC CC    CC  C+CCCCC
+                                                       C   C'               CC'''''CCCC                             C
+                                                            X                 XXXXX
+                                                            C                 CCCCC
 AXXZZ-----MMM-M-AXXZ--ZXXX1 1+AXZZXAXXZZXZXX-Z-M-M--MM=+M=M++"==MXXZZM=-ZM=="""------"-"=ZAAXM-IIIIXX-M==--MM====MM++++++++==M-ZZXXX
+     CCCCC   C C    CC                      C C C CC  CC C CC+CC      CC  CC+++......+.+C     C      C CCCC  CCCC  CCCCCCCCCC C
+                                                             C              CCC''''''C'C
+                                                                               XXXXXX X
+                                                                               CCCCCC C
 +AIZZXZ----ZXZ-MMXAXZ---XAI- 1AAAZXZXAAAXXZZ---M-===--M+M====+=MMMZZ--=MMZZZM-"---------+ZZZZZAA=IXXZ+++==MMM==+=M-===+""+"++-XXZXAI
+       CCCC   C      CCC                    CCC CCCCCC C CCCCCC     CCC      .+.........C            CCCCC   CCCC CCCCC++C+CCC
+                                                                             'C'''''''''                               CC C
+                                                                             X XXXXXXXXX
+                                                                             C CCCCCCCCC
 +=+IAXAXZ--XXXXZM-ZZXZ--XXXA=+=I=AXXXAAAAXZMMMMMM==M-+"M-=+MM=MMM==MM===-ZXZ+----"++---++=MM-ZXXXAXZ-=M+==MMZZM+=M+++++"+++"+ZZ-MXII
+         CC      C    CC                         CC CC+ CCC  C   CC  CCCC   C....+CC...CCC  C       CC CCC     CC CCCCC+CCC+C  C
+                                                      C                      ''''C  '''                                C   C
+                                                                             XXXX   XXX
+                                                                             CCCC   CCC
 X=+=IIIAAXZXAXXXZ-Z--ZZ-ZXAZI1=IIIAXZAAXXZ-==MM-M=MZ-="+-M=MMM=MMMM++++==-XZ=+"""M-M=""=MMMM-IXXZZXZ--M===MZZXZ===++=+"+M=+====+=Z=I
+                 C CC  C                  CCC  C C  CC+CC C   C    CCCCCCC  CC+++ C C++C    C       CC CCC     CCCCCCC+C CCCCCCCC
+                                                      C                       CCC    CC                               C
 +MI==+=I==IXAAXZZZ--MZXZZZAXA==Z-XXXXZXXXZ-M=M-Z-=+M---M-Z--XMMMM=MMMM=-M-XZ-=++MZXXXZMMM-MZZ+AXZ-ZZZMMMM-MZXXX-M=+++++"=++M="--"=XA
+C                 CC            C         C C C CCC CCC C CC     C    CC C  CCCC         C       C       C     C CCCCCC+CCC C+..+C
+                                                                                                                       C     C''C
+                                                                                                                              XX
+                                                                                                                              CC
 ""+I=II==++==XAAZZZX--ZXXXA=IA=Z-MXXXXAAXZ--MMMZMM="+-ZXAAZ-Z-MM-==ZZZ-ZMZAZZZM-Z=M-Z=ZMZ--ZZ=++X-XXZMZMM-MZIIXX-M=+"++""++M-=+-"MXZ
+++C                 CC          C         CC      C+CC     C C  CCC   C        C C C     CC      C       C      C CC+CC++CC CCC.+
+CC                                                 C                                                                C  CC      'C
+                                                                                                                               X
+                                                                                                                               C
 """=ZII=I===+=+=AZZZ-MZZ-ZX==IIAZMMZXZZXAXZZZM=M=+=++=MZAXX-MXXZ-M==MM--MXIZZXZZM+++=ZZMM-MZZZZXAZZXXZAAAXZI+AZZ--ZM=+=M-M=MZZ-+=-ZX
++++C                C   C                     C CCCCCC     C    C CC  CC         CCCC    C                      CC  CCC C C   CCCC
+CCC
 """"+MA==AII==I=+AXZ-ZXXZ-ZAIAXAZ-=+-XZ-ZXAXXZ=++"""+==-Z-X-MZAZ-ZM=+=MMZXXZZZZZ=--MMM-MMZ-ZZZZZZZXXXAA=+-==+XZMZZZ-=+M-ZZ-Z-----ZZZ
+++++C               C    C       CCCC  C      CCC+++CCCC C C    C  CCC          CCC   C   C                        CCC C  C CCCCC
+CCCC                                             CCC
 """"++=A=IIIAAII+-=AXZXXAXZXXZ-ZZZZ==-ZZ-Z++AXZ=++""""+=M-ZZZ-I--XMM+++=--MM===M=-Z-ZZXZXXZZAXZ---ZZXXXAA=+1I--MX=X-MMM-ZZA+AZZAXZZZ
+++++CCC                       C    CCC  C      CCC++++CC C   C CC   CCCCCC  CCC CC C           CCC           CC    C   C
+CCCC                                              CCCC
 """""""+Z+==IXII+1=+IXZAAXIX--M--XIZ-MMAXZXIAAZXZ-M=M+++MMZZZX-=MM==+=+++=M===MM==M-ZXXZXAXZXXXZZXZXI+I-MZ=-1=XXZXXM==+==--XXZZXZZZX
++++++++C                    CC CC   C            C C CCC      CC  CCCCCCCC CCC  CC C                   C            CCCCCCC
+CCCCCCC
 """"""""+Z+++=IXI+++==IAIXZXZ-MM--A=AMMMM-X=AZX+IZM=M-==MMZM-ZZ-M===+==+++===+=M=----ZXZ---Z=AZX=AXZXI==AA==IXM==++==++++++=MMMM--ZZ
+++++++++C                    C  CC       C         C CCC    C  C CCCCCCCCCCCCCC CCCCC   CCC                    CCCCCCCCCCCCC    CC
+CCCCCCCC
 """""""""+=X=+1=AI==II===+A-Z-M=-ZZXA-=++==-ZZ-ZZ-MZ---=+MMMM-Z-M=M=====+++==+++MM--MMM-MMM=-Z-ZXAX--ZZI=AZZMMM==+++===+++=++M--ZXXX
++++++++++CC                C C CC    CCCCCCC  C  C  CCCCC    C C C CCCCCCCCCCCCC  CC   C   CC C    CC          CCCCCCCCCCCCCC CC
+CCCCCCCCC
 """""""""+"+-I++==I+=AAIA=+XZXZ+"=MMXX="+=+"MXZ-ZMMZXMM-===-M---MMMMMM==========MMM-MM-ZZ==++=M--ZXM-M-X==I-MMZ--ZMMM=====M++MZZZXXX
++++++++++C+CC                  C+C    C+CCC+   C       CCCCC CCC      CCCCCCCCCC   C  C  CCCCC CC   C C    C   CC    CCCCC CC
+CCCCCCCCC C                     C      C   C
 """""""""""""+X+===+-IXAZZX=AXI-"----XZ===++"M--AXX-ZZZX=+=MMM--ZZX-ZZ-M=MZZM=M=-Z-M--=M-MM--MMM=MZ=MM-XA==-==ZXI==AX-="======ZZZZZZ
++++++++++++++C                 C+...C  CCCCC+ CC   C    CCC   CC   C  C C    C CC C CCC C  CC   C  C  C    CCC       CC+CCCCCC
+CCCCCCCCCCCCC                   C'''        C                                                                          C
+                                 XXX
+                                 CCC
 """"""""""""""+-I=IIIIXZXZZXAAAZ-=-"+-XX-MMM=+==MMMMM=-Z=====MMM-ZAAZZZ---Z-MMM--ZZM=-==-ZZMMZ===+MM-X-XAIAZ-=MZAXXAX-M"=++"+"=MMM--
+++++++++++++++CC                CC.CCC  C   CCCC     CC CCCCC   C      CCC C   CC   CCCCC     CCCC  C C     CC       C +CCC+C+C   CC
+CCCCCCCCCCCCCC                    'B                                                                                   C   C C
+                                  XH
+                                  CX
 """""""""""""""+=XIAAAXXXXAIAAX-==--"=-AZ-M==""+==+++==++===M----A=+ZMMMM-ZZM-MM--ZZMZMMMXAZZ-MZ-M==MZXXXAZZM=+M-----M=+==+++++---ZZ
++++++++++++++++CC              CCC..+CC  C CC++CCCCCCCCCCCCC CCCC        C   C  CC           C  C CC         CC CCCCC CCCCCCCCCCCC
+CCCCCCCCCCCCCCC                   ''C        CC
+                                  XX
+                                  CC
 ""+""""+""""""""++MAIAAAXXXAAIAZ-MM+=MMZXZM==+---"+==MM+"+=M-M-ZIAXAZ-==M-AAZZ---ZXZ-MMM-AIXX-ZAX-MM-XIAIAZM==+++==++++===+"=MM-M-ZX
+++C++++C++++++++CC              C  CC      CCC...+CCC  C+CC C C      CCC C    CCC   C   C    C   C  C       CCCCCCCCCCCCCCC+C  C C
+CC CCCC CCCCCCCC                              '''C      C                                                                  C
+                                              XXX
+                                              CCC
 +"""++"++"+"""""++"=XAIIXZZZXAAIXXZ-MMMXAAX-MM"-----+-X-++=-Z-M-A-+IXZ-MMZ1I=-XX-XAA--====I=AXXXZ=M-MZXIIIZ-=+++++==++=M-M==M-----ZZ
+C+++CC+CC+C+++++CC+C               C       C  +.....CC CCCCC C C      C     CC  C   CC           C C       CCCCCCCCCCCC C CC CCCCC
+ CCC  C  C CCCCC  C                           C'''''
+                                               XXXXX
+                                               CCCCC
 ""+"""++"""+"""""++"+-A=AA---ZA=AXZZA-ZZXA=AX-=+++"""=Z-M===-----ZXIIIXMMZ+I--XXZZXA-M++A+=ZZAAXM=-ZXAI=+=X-M+++=M=M=+=-Z-X--XZ--M-Z
+++C+++CC+++C+++++CC+CC    CCC        C       CCCCC+++C C CCCCCCCC           CC      C            CC        C CCCC C CCCC C CC  CC C
+CC CCC  CCC CCCCC  C                              CCC
 """"""++"+"+++"""""+"+=ZAAX---ZAIZZ-XZAXZZIIAZZZZ-M="+MM==MM---Z-ZZ= +IZM-AIXZAAXZZXA-Z=AZM====Z-ZXZA=+=AAZ-M++=++MMMMZAZ-ZZZZZ==MMZ
+++++++CC+C+CCC+++++C+CC    CCC     C             C C+C  CC  CCC C        C           C     CC   C          C CCCCC       C     CC
+CCCCCC  C C   CCCCC C                               C
 ""+""""+++"++"++"+"+""++=ZIAZZ-ZAZXZZZXXXMMX=IXZZZZZM=+=+++++M-M--ZI --IXXAI=AZ-Z=AXIXZZXAAAA++XZAAZZ==IXZZM====++=++=ZZ-M--Z-ZMM-M+
+++C++++CCC+CC+CC+C+C++CCC     C                      CCCCCCCC C CC             C                            CCCCCCCCCC  C CC C   C C
+CC CCCC   C  C  C C CC
 """+"+"""""++""""+"+"+++++=AAAZZZ--ZZZZZZXZZX=IXX--XZAZ-Z="""++++=-ZXZA==AAAXI=AZX==IAAXZXAA=IAAZ-ZXZI=AXZ-M+=MA-+"==ZIZM=+=ZZZZ-M=+
++++C+C+++++CC++++C+C+CCCCCC      CC              CC    C C+++CCCCCC                              C        C CC  CC+CC    CCC    C CC
+CCC C CCCCC  CCCC C C                                     CCC                                                     C
 "+""+"+"++++"++""++""+"+""++ZAAAXX---ZZIZ--XXIAAI--Z-M-XX-=+"""++=ZXXZZZAIAIIXXAAIAAIIIXZIAXAIIIX--ZAIIAXZM=+++=+"=MZAAZ-=++MM-MMMM+
++C++C+C+CCCC+CC++CC++C+C++CC      CCC    CC      CC C C  CCC+++CCC                               CC        CCCCCC+C     CCCC  C    C
+C CC C C    C  CC  CC C CC                                  CCC                                                  C
 "++"+"""+++++"+""""""""+""+"+=ZAIAZZXXZZZ--ZZZXIAX-XZZZXXAZ-+++++=MZXXZZXI==AXXXXAZZAX=AXAAAAIAAIAZZAIAAX-M==MMMMM-ZI=XZZZ===+++=Z-+
++CC+C+++CCCCC+C++++++++C++C+CC           CC       C        CCCCCCC                                       C CC     C       CCCCCCC CC
+C  C CCC     C CCCCCCCC CC C
 "++"""""+"""++""""""""+"++"+""++MXIAZ----MMZZ--XAXZZAX--ZXAIXM==+=-ZXZXXZZXIIAAAAXXXXZAIAAAI=IAAAAXXAAAAZZ=++=M-AAXXAZ-MMM===++++M++
++CC+++++C+++CC++++++++C+CC+C++CC     CCCC    CC       CC      CCCCC                                       CCCC C      C   CCCCCCC CC
+C  CCCCC CCC  CCCCCCCC C  C CC
 "++"+"+"+"++"++"++""+""+""++"+++++-=+XZ-MM--ZMMZZAAI1=X=MZ-ZIAIAZ-ZXIX-XZ--ZAAAIAZXIIAIIAIA=+IA=AAIIIXXIAZ-M=++MXXXZM===++=MMZ==++++
++CC+C+C+C+CC+CC+CC++C++C++CC+CCCCCC    C  CC           C  C      C    C  CC                               C CCC      CCCCCC   CCCCCC
+C  C C C C  C  C  CC CC CC  C
 """+++"+++"""++"++"""+"+++""+""+"++=ZAIAZ-Z----Z-ZAIIIIZM-M==ZI=I-M-MZXXAAAXA-XIAXAAAAIIAAAA===IAZZIAZ=ZZXAA-=+=M===+=-=+=======++=M
++++CCC+CCC+++CC+CC+++C+CCC++C++C+CCC     C CCCC C        C CC    C C         C                        C     CCCC CCCCCCCCCCCCCCCCCC
+CCC   C   CCC  C  CCC C   CC CC C
 "+"+++""+"""+++"++++"+++++++"+"""+"++=-AAAXZZ----ZZI===IXZMMM-X==IAA--XZAAAZZMMZAIIXXIIAAIAIIAIAXXXIZMMZXZA-=+=MM==+++====++++====M-
++C+CCC++C+++CCC+CCCC+CCCCCCC+C+++C+CCCC      CCCC            C      CC                                     CCCC  CCCCCCCCCCCCCCCCC C
+C C   CC CCC   C    C       C CCC C
 "+++++""""+"++++"+"+++"+++++++++"++++++=-XAIAXZ--M-XI+==IA-M-XAAIAI+=IAAI=+=A-MMX1=AZX==AXXAAAI=XI=IZ--MXZZM++=-MMM======MM=+++=MMMM
++CCCCC++++C+CCCC+C+CCC+CCCCCCCCC+CCCCCCCC      CC C       C C                C                       CC     CCCC   CCCCCC  CCCCC
+C     CCCC C    C C   C         C
 "+""""""+"+++"""+++"+"++++"+"+"+++++++"+++=XIIIAAZ--ZX+==IXZZ-XXZXA1+11+I=I=+=+AX=IIAAA==AIXXI+1IAIAX-MAXM-M=========+=MM-==-MM-MMMM
++C++++++C+CCC+++CCC+C+CCCC+C+C+CCCCCCC+CCCC       CC         C                                       C    C CCCCCCCCCCC  CCCC  C
+C CCCCCC C   CCC   C C    C C C       C
 """+"+"""+++"+"+"++""++++"+++"+"++""++"""+++=XI==IX--MZA+=AXXZAXXAA11IZ-==MXI=--=AAX-II=+AXAAXXI++AXZM==-=====+++++++====+++=--M=MM=
++++C+C+++CCC+C+C+CC++CCCC+CCC+C+CC++CC+++CCCC      CC                  CCC          C                 CCCCCCCCCCCCCCCCCCCCCCCCC C  C
+CCC C CCC   C C C  CC    C   C C  CC  CCC
 """++""+++++"++++""+++++"+"+++++++++++"+"+++++=ZXIAXZM--A===IAXXXAI+1=ZM+"""=ZI1-+AZ=Z=1+AIIIAZ-A+=XZM+MZMM===+++""++++==++=MMM+++++
++++CC++CCCCC+CCCC++CCCCC+C+CCCCCCCCCCC+C+CCCCCC       CC                C+++C       C          C      C    CCCCCC++CCCCCCCCC   CCCCC
+CCC  CC     C    CC     C C           C C                                CCC                                     CC
 """+"""++""++++"+"""++"++++++++++++++""++"""+++++M-AAZM-MZA=I==XZZXI=IIAZ=+""+MX1 1+AX=+1++===AZXA=AX-MMXMMMZZ-=+"+"++++++=====+++++
++++C+++CC++CCCC+C+++CC+CCCCCCCCCCCCCC++CC+++CCCCC C    C                 CC++C                       C        CCC+C+CCCCCCCCCCCCCCCC
+CCC CCC  CC    C CCC  C              CC  CCC                               CC                                    C C
 "+++++++++"+++"++"""+++"++"+++++++""++++"+++++++""++MMM---ZZAXXAAAZZ=I=IIZM=+++=X--111-1--1+=+1=AI=IAAAXIZ++-IIIX=+++++"""+++++""+==
++CCCCCCCCC+CCC+CC+++CCC+CC+CCCCCCC++CCCC+CCCCCCC++CC   CCC                 CCCCC                          CCC    CCCCCC+++CCCCC++CCC
+C         C   C  CCC   C  C       CC    C       CC                                                                     CCC     CC
 ""++++""++++"++++""+"+++++++++++++++++++"++++"+++"++++++"+=M-ZZZZZAA==IAXI=AXZ--X=++1+=1 1-+1- 1===++=AAAX==MZZXAXZM==+++++""+++"+++
+++CCCC++CCCC+CCCC++C+CCCCCCCCCCCCCCCCCCC+CCCC+CCC+CCCCCC+CC C                 CC                          CC        CCCCCCC++CCC+CCC
+CC    CC    C    CC C                   C    C   C      C                                                                  CC   C
 ""+++"+""++""""+++"+"+++++"+++++"++"++++"+""+"+"+"++""++"---+MZX-ZZ-ZZAAAAIIAIIII=+111++1+-- -  1=+1-1=I==AXZZ--XZZXZZZZ-MM++=+=--+"
+++CCC+C++CC++++CCC+C+CCCCC+CCCCC+CC+CCCC+C++C+C+C+CC++CC+...C   C  C                                          CC        C  CCCCCCCC+
+CC   C CC  CCCC   C C     C     C  C    C CC C C C  CC  C'''                                                                       C
+                                                         XXX
+                                                         CCC
 +++++++"+++++""+++"+++"+++++++++"++++++++++++"+"++++"++"++""--"+-XZZMM--ZI++IAXIIIA+-++11=11-11 -11- -11+1++IX--Z-M-MM--M--MM=MM--=+
+CCCCCCC+CCCCC++CCC+CCC+CCCCCCCCC+CCCCCCCCCCCC+C+CCCC+CC+CC++..+CC     CC                                      CC C C  CC CC  C  CCCC
+       C     CC   C   C         C            C C    C  C  CC''C
+                                                            XX
+                                                            CC
 +++++++++++++++++++++++++++++++++++++++++++"+++++++++++++"+++++--+XIAX-Z-XXXIIIXXAXZAX=1+====1-   --1 +I+-+1-1AXXZ-M-M-M-Z-X----MMM-
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCC+CCCCC..C    C C                                         C C C C C CCCC   C
+                                           C             C     ''
+                                                               XX
+                                                               CC
 +""++""+"+++++"+++++++++++++++++++++++"++"++++++"+"+"+++""+""++=+-"-AIXZZ-MMZAA=I====IX=+-+1+==1      -++1++11=+IAZZXXZZ-M-ZZZZZZXXZ
+C++CC++C+CCCCC+CCCCCCCCCCCCCCCCCCCCCCC+CC+CCCCCC+C+C+CCC++C++CCCC.+C     C                                              C C
+ CC  CC C     C                       C  C      C C C   CC CC    'C
+                                                                 X
+                                                                 C
 "+"+"+"""+++++++++++"+++++++++++++++++++++++++++++++++++++++++"+++++=ZAIAAXX-ZZZXI===+==+-1+11-11-     -11++11IAAI=IIXXXZZZXZZZXXXAX
++C+C+C+++CCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCC       C
+C C C CCC           C                                         C
 ++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=MXI===I==X---ZAII==111-++-++1       -111==I=+=IXXAAAAXXXAAAAAI
+CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC          CCC
+        C
 +++++++"+++"+++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++=MA+===1=IAXXZZIAI==+ 1+=+==I=1-    ---111+=I==IAI=IAXXIIAAA=
+CCCCCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+       C   C
 ++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=ZIAIII=II=III=II=1+==+1+=AAAI---111---++=+1+==IAXAAA+I===
+CCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+      C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=MXXI+++=++===II++1+1- -1+II=-   ---  -111+=IIIAAXXXXAAA
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=MZI1--  11====1+++11--1++--   -=IIAAIIIIAXXZZZZZZZ-Z
+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                                                  C
+ C
 +"""++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++=-I-  -1- - -1+=+   -      1=AZZZXZZAAAAAXXXXZ--M
+C+++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCC                                            CC
+ CCC                                                      C
 +++"+++"++++++++++++++++++"+++"+"++++++++++++++++++++++++++++++++++++++++"++"+++++++++MZ=-      111+- -       1+=IAAAAA=IIIXZIAZMM-Z
+CCC+CCC+CCCCCCCCCCCCCCCCCC+CCC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+CCCCCCCCC                                            C
+   C   C                  C   C C                                        C  C
 ++"++++"+++++++++++"++"++++"++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++MZA=1               111+==III====IXZXXZ-ZZZ
+CC+CCCC+CCCCCCCCCCC+CC+CCCC+CCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC                                       C
+  C    C           C  C    C                        C
 "+"+"++++++++"+++++"++"++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++==MXA+           -11==II=I++===IIAXZZZZZ
++C+C+CCCCCCCC+CCCCC+CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C C C        C     C  C                              C
 ""+++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++MA+-          -+==++=IIIIIIIAAAXZX
+++CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CC   C                                                       C
 +"+"+"+"+++""++"+++++++"+++++++++++++"+"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++==M-I111+1  --11+++==II=IAAAAAA
+C+C+C+C+CCC++CC+CCCCCCC+CCCCCCCCCCCCC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+ C C C C   CC  C       C             C C
 +"+++"+""++++++"""+"+++""++"+++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++=M==MA++11-+++====++==I=II
+C+CCC+C++CCCCCC+++C+CCC++CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC
+ C   C CC      CCC C   CC  C
 "++++""""+"+++++++++++++"++++++++++++++"+++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++=M-ZZXXAAI==++++===A
++CCCC++++C+CCCCCCCCCCCCC+CCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+C    CCCC C             C              C                 C
 ++++++++++++++"+++++++"+++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++==M-I++==+=
+CCCCCCCCCCCCCC+CCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C
+              C       C                           C
 ++++++++++++++++++++++++++""++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++==MMM-Z
+CCCCCCCCCCCCCCCCCCCCCCCCCC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC   C
+                          CC                                  C
 +++++++""++++++++++++++++++"++++++++=+++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCC++CCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+       CC                  C              C
 "+"+"+++""+""+++++++++++++++++"+++++++++++"++++++++++"++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++C+C+CCC++C++CCCCCCCCCCCCCCCCC+CCCCCCCCCCC+CCCCCCCCCC+CCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C C C   CC CC                 C           C          C      C
 +++++++++++++++++++++++++++++++++"+"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                 C C
 "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C
 +++"++++"++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCC+CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+   C    C                                          C
 """"++++++++++++++++++"++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++CCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CCCC                  C                            C
 ++++++"+"++++++++++"++++++++++++++++++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCC+C+CCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+      C C          C                                  C
 ++++++"+++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+      C   C
 "++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C        C
 +++++++"+++++++++++++++++++++++++++++++"+++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+       C                               C                       C
 "++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C  C                                                                   C
 +"+"+++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++
+C+C+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+ C C     C
 "++++++++++""++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++CCCCCCCCCC++CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C          CC  C
 ++++++++""++"++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCC++CC+CC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+        CC  C  C
 ++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+        C
 +++++"++""+++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCC+CC++CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+     C  CC   C
 "+++++++"++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++CCCCCCC+CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C       C    C
 "++"+""+++"++++++++++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++
++CC+C++CCC+CCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C  C CC   C                          C
 +++"+""+"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCC+C++C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+   C CC C
 +++"++++""++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCC+CCCC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+   C    CC
 +++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+         C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++"+"+++++"+++++++++++++++++++++++++++++++++++++++++"+++++++++++++++++++=+++++++++=++++++++++++++++++++++++++++++++++++++++++++++++
+CCC+C+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+   C C     C                                         C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++==+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++""++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCC++CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+   CC    C
 +++++++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+         C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++==+++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++=+++++++=+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++=++++++=Z=+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++==++++++++++++++++++++++=++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++==++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++=++++++++=++++++++++++++++=++++++++++++++++++++++++++++=++++++++++++++++==+++++++++=++++++=++==++++=+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++=++++++++++==++=++++==Z=+++++++=+++++==++++===+++=+=+=++=++++=++++++++=++=+++++++++++++++++=++==+=++++==+++=+++++=+=+=++=++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
1
-
0                                            PRINCETON UNIVERSITY COMPUTER CENTER CLINIC
-
-
-
-
-
                                                            +------------+
                                                            +            +
                                                            + COMPUTER   +
                                                            +            +
                                                            +    PICTURE +
                                                            +            +
                                                            +------------+
-
-
-
-                                                              THE MOON
-                                                   COMPUTER TRANSCRIPTION PROCESS
0                                                                 BY
0                                                         SAMUEL P. HARBISON
0                                                       COMPUTER CENTER CLINIC
                                                         PRINCETON UNIVERSITY
                                                           87 PROSPECT ST.
                                                     PRINCETON, NEW JERSEY 08540
-                                                  COPYRIGHT 1973 BY S. P. HARBISON
-                                                       SHEET  3 OF  5 SHEETS
-                         THE COMPLETE PICTURE IS CONSTRUCTED BY TAPING THE SHEETS TOGETHER SO THAT THE
                          LAST CHARACTER ON THE FIRST SHEET MEETS THE FIRST CHARACTER ON THE NEXT SHEET
                          WITH NO WHITE SPACE BETWEEN THEM.  THIS WILL REQUIRE TRIMMING THE SHEETS WITH
                          SCISSORS.  DO NOT PUT TAPE ON THE PRINTED SIDE OF THE PAPER; TAPE FROM BEHIND.
-
-
-
-
-
-
0
 ======MM==M===============M====M=================================+===++=+=+=M=======+++=++++++++=++=++++=+++++++++++=++++=++++++"+++
+CCCCCC  CC CCCCCCCCCCCCCCC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCC
+                                                                                                                                C
 ===========+==++==========+=============+=========+++++++=+++++++++++++++=====+++++++++++++++++++++++++++++++++++++++++""+""+"=""""+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++C++C+C++++C
+                                                                                                                       CC CC C CCCC
 ==++====++++=++++====++=++====+=+==+===+==+====++++=+++++++++++++++++++=+=====+++++++++++++++++++++++++++++++++""+++++""""+"""+"""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++CCCCC++++C+++C+++++
+                                                                                                               CC     CCCC CCC CCCCC
 ==+==M+=++++++=++====+++=+======+==++=+++======+==+++=+++++++++++++++++==++++++++=++++++++++++++++++++++++++++++"++++++""+"+""""""""
+CCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCC++C+C++++++++
+                                                                                                                C      CC C CCCCCCCC
 ==+===++++++++++=++==+++==++++==+++=+======++M==+=++++++++++++++++++++++==++++++++++++++++=+++++++=++++++"+++++"+++"+"""""+"""+"""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCC+C+++++C+++C+++++
+                                                                                                         C     C   C CCCCC CCC CCCCC
 ++++=+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++==+++++"+"""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+++++++++++++++++++++++++++
+                                                                                                       C CCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+"""""""+"""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+++++++C+++++++++++++++++++
+                                                                                                       C CCCCCCC CCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++""+""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++C++++++++++++++++++++++++++++
+                                                                                                     CC CCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++"+"+"++"""++"+""""+""""""""+"""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+C+CC+++CC+C++++C++++++++C+++++
+                                                                                                   C C C  CCC  C CCCC CCCCCCCC CCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++++++++++++++++++++++++++
+                                                                                                        CCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C++++++++++++++++++++++++++++
+                                                                                                      C CCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++""+"+""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++C+C++++++++++++++++++++++++++++
+                                                                                                   CC C CCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++""+"""""""""""""""""""+"""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCC++C+++++++++++++++++++C+++++++
+                                                                                              C       CC CCCCCCCCCCCCCCCCCCC CCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""+++""""""""""""""""""""+""+""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++CCC++++++++++++++++++++C++C++++
+                                                                                                   CC   CCCCCCCCCCCCCCCCCCCC CC CCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++"+""+""""""""""""""""""""""+""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C++C++++++++++++++++++++++C++++
+                                                                                                    C CC CCCCCCCCCCCCCCCCCCCCCC CCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++"+"+""+""""""+""+"""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCC+C+C++C++++++C++C+++++++++++++++
+                                                                                            C       C C CC CCCCCC CC CCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++=++++==++++++++++++++++++++++++++++++++++++++++"++"""""""""""++"""""""""""""+""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+++++++++++CC+++++++++++++C++
+                                                                                                    C  CCCCCCCCCCC  CCCCCCCCCCCCC CC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++"+"+""+"+"""""""""""+"""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+C++C+C+++++++++++C+++++++++++++++++
+                                                                                              C C CC C CCCCCCCCCCC CCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""""+"""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++C+++++++++++++++++++++++++++++
+                                                                                                  CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""""""""""""""""+""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++++++++++++++C++++++++++++++++
+                                                                                                   CCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++++++++++++"+++"+++++++++++++++++""+++"""""+""""""""""""""""""+""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCC+CCCCCCCCCCCCCCCCC++CCC+++++C++++++++++++++++++C++
+                             C                                                C   C                 CC   CCCCC CCCCCCCCCCCCCCCCCC CC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""+"""+""""""""""""""+""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++C+++C++++++++++++++C++++
+                                                                                                          CC CCC CCCCCCCCCCCCCC CCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"""""""""""""""""""""+""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+++++++++++++++++++++C++++
+                                                                                                          CCCCCCCCCCCCCCCCCCCCC CCCC
 ++++++++++++++++++++++++++++++++"+"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++++++++++++++++++++++++
+                                C C                                                                       CCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+""""+"+"""""""""+"""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C++++C+C+++++++++C+++++++++
+                                                                                                        C CCCC C CCCCCCCCC CCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""""+"""+"""""""""+"""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++C+++C+++++++++C+++++++++
+                                                                                                        CCCC CCC CCCCCCCCC CCCCCCCCC
 ++++++++++++++++++++++++++"+++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"""""+""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+++++C++++++++++++++++++++++
+                          C     C                                                                       CCCCC CCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++"+++++"++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"""+++++++""""""""+""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+++CCCCCCC++++++++C++++++++++++++++++++++
+                          C     C                                                          CCC       CCCCCCCC CCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++"""++++++++""""""+"""""""""""""""""""""""-
+CCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+++CCCCCCCC++++++C+++++++++++++++++++++++.
+                         C                                                             C  CCC        CCCCCC CCCCCCCCCCCCCCCCCCCCCCC'
+                                                                                                                                   X
+                                                                                                                                   C
 +++++++++++++++++++"+++"++"++++++"++++"+++++++++++++++++++++++++++++++++++++++++++"++""+"+""""++"+"+""""""""""""""""""""""""-"""""""
+CCCCCCCCCCCCCCCCCCC+CCC+CC+CCCCCC+CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC++C+C++++CC+C+C++++++++++++++++++++++++.+++++++
+                   C   C  C      C    C                                           C  CC C CCCC  C C CCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCC
+                                                                                                                            X
+                                                                                                                            C
 +++++++++++++++++++++++"++++++++++++"+++++++++++++++++++++++++++++++++++++++++++++"++""+""+"""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC++C++C+++++++++++++++++++++++++++++++++++++++++
+                       C            C                                             C  CC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++"+++++"+++"++++++++++++++++++++++++++++++++++++++++++++++++++++""++""+"+""""""""""""""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCC+CCCCC+CCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++CC++C+C++++++++++++++++++++++++++++++++++++++++++
+                  C     C   C                                                    CC  CC C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++++++++++++++++"""""""""""""""""""""""""""""""""""""""""""""-""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+++++++++++++++++++++++++++++++++++++++++++++.++++
+                                           C                                      CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCC
+                                                                                                                               X
+                                                                                                                               C
 +++++++++++"+++++"+++"++"""+"++++++++++++++"+++++++"+++++++++++++++"+"++"++++++++"""""""""""""""""""""""""""""""""""+""""-""""""""""
+CCCCCCCCCCC+CCCCC+CCC+CC+++C+CCCCCCCCCCCCCC+CCCCCCC+CCCCCCCCCCCCCCC+C+CC+CCCCCCCC+++++++++++++++++++++++++++++++++++C++++.++++++++++
+           C     C   C  CCC C              C       C               C C  C        CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC'CCCCCCCCCC
+                                                                                                                         X
+                                                                                                                         C
 +++++++++++"+++++"+"+++""""++"+++++"+++""+++++++++++++++++++++"+++++++++++++++++"+""""""+"""""""""""+""""""""""""""""""""-""""""""""
+CCCCCCCCCCC+CCCCC+C+CCC++++CC+CCCCC+CCC++CCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCC+C++++++C+++++++++++C++++++++++++++++++++.++++++++++
+           C     C C   CCCC  C     C   CC                     C                 C CCCCCC CCCCCCCCCCC CCCCCCCCCCCCCCCCCCCC'CCCCCCCCCC
+                                                                                                                         X
+                                                                                                                         C
 ++++++++++++"++++++"++++"+""+"""+++"""++""++++++++++++++++++++++++++++++++++"++""+""""""""""""""""""""""""""""""""""""""""-""""""-""
+CCCCCCCCCCCC+CCCCCC+CCCC+C++C+++CCC+++CC++CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC++C++++++++++++++++++++++++++++++++++++++++.++++++.++
+            C      C    C CC CCC   CCC  CC                                  C  CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCC'CC
+                                                                                                                          X      X
+                                                                                                                          C      C
 ++"++"+++"++++++++"+"++"++"""+"++"+"+++"""++"++++++"+++++++++++++++++++++++""+"+""+""+""""""""""""""""""""""""""""""""""-"-"""""""""
+CC+CC+CCC+CCCCCCCC+C+CC+CC+++C+CC+C+CCC+++CC+CCCCCC+CCCCCCCCCCCCCCCCCCCCCCC++C+C++C++C++++++++++++++++++++++++++++++++++.+.+++++++++
+  C  C   C        C C  C  CCC C  C C   CCC  C      C                       CC C CC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'C'CCCCCCCCC
+                                                                                                                        X X
+                                                                                                                        C C
 +""++"+"+++++"""+"++++++++++++++"+++++++"+++++++++++++++++"++++++++++"++""""""+++""+""+"""""""""""""""""""""""""""""""""""""--""""""
+C++CC+C+CCCCC+++C+CCCCCCCCCCCCCC+CCCCCCC+CCCCCCCCCCCCCCCCC+CCCCCCCCCC+CC++++++CCC++C++C+++++++++++++++++++++++++++++++++++++..++++++
+ CC  C C     CCC C              C       C                 C          C  CCCCCC   CC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CCCCCC
+                                                                                                                            XX
+                                                                                                                            CC
 +++++++++"++++++++++++""++++""++""+++++""++"+"+++++++"+++++"+++++++++""""""++"++""+"+""""""""""""""""""++""""""""""""""""""""-""""""
+CCCCCCCCC+CCCCCCCCCCCC++CCCC++CC++CCCCC++CC+C+CCCCCCC+CCCCC+CCCCCCCCC++++++CC+CC++C+C++++++++++++++++++CC++++++++++++++++++++.++++++
+         C            CC    CC  CC     CC  C C       C     C         CCCCCC  C  CC C CCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCC'CCCCCC
+                                                                                                                             X
+                                                                                                                             C
 +++++++++"+++++++++++++"++"++""++"+"+++"+++"+"++++++""+"+++"++""++++++"+++"+"+++++""+"""""""""+"+""+"++++""""""""""""""""""""-"""---
+CCCCCCCCC+CCCCCCCCCCCCC+CC+CC++CC+C+CCC+CCC+C+CCCCCC++C+CCC+CC++CCCCCC+CCC+C+CCCCC++C+++++++++C+C++C+CCCC++++++++++++++++++++.+++...
+         C             C  C  CC  C C   C   C C      CC C   C  CC      C   C C     CC CCCCCCCCC C CC C    CCCCCCCCCCCCCCCCCCCC'CCC'''
+                                                                                                                             X   XXX
+                                                                                                                             C   CCC
 +""+++++++++++++++++++"+++++++++++++++++++"+++++=+"+"+"""""+++++"+++++"++""++"+""""""""""""""""""+""+"""+""""-"""""""""""""""-""---"
+C++CCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCC+CCCCCCC+C+C+++++CCCCC+CCCCC+CC++CC+C++++++++++++++++++C++C+++C++++.+++++++++++++++.++...+
+ CC                   C                   C       C C CCCCC     C     C  CC  C CCCCCCCCCCCCCCCCCC CC CCC CCCC'CCCCCCCCCCCCCCC'CC'''C
+                                                                                                             X               X  XXX
+                                                                                                             C               C  CCC
 "++++++++++++++++++++++"+"+""+==+++++++++++++++""""""++""+""""""+""""""""++"""""""""""""""""""""""""""""""""""-"""""""""""""""""-"--
++CCCCCCCCCCCCCCCCCCCCCC+C+C++CCCCCCCCCCCCCCCCCC++++++CC++C++++++C++++++++CC+++++++++++++++++++++++++++++++++++.+++++++++++++++++.+..
+C                      C C CC                  CCCCCC  CC CCCCCC CCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCC'C''
+                                                                                                              X                 X XX
+                                                                                                              C                 C CC
 +++++++=MM==MM====MMMM--M+=+M---M=MMMMMMM=====++++++++++++""++++""""+"""""+"""+""""""""""""""""""""""""""""""""""""""""""-"""--"-"-"
+CCCCCCCC  CC  CCCC    CC CCC CCC C       CCCCCCCCCCCCCCCCC++CCCC++++C+++++C+++C++++++++++++++++++++++++++++++++++++++++++.+++..+.+.+
+                                                          CC    CCCC CCCCC CCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCC''C'C'C
+                                                                                                                         X   XX X X
+                                                                                                                         C   CC C C
 ==+MZA=I=IAI==IIAI++=II=IAXZZXXXX-XZXXZZZZM==M++MM+==MMM==M++++++""""""""""+""""""""""""""""""""""""""""""""""""""""""""""-""""""---
+CCC                              C         CC CC  CCC   CC CCCCCC++++++++++C++++++++++++++++++++++++++++++++++++++++++++++.++++++...
+                                                                 CCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCC'''
+                                                                                                                          X      XXX
+                                                                                                                          C      CCC
 ++II+1-1-=II=1=IIZAII+1+11+=AI===I==IIA-MXAXI+=Z-Z=+MZI=-=M++MA=IX+"-"""++++"+"+""""""""""""""+""""""""""""""""""""""""""""-""-""""-
+                                       C        C CC    CC CC     C+.+++CCCC+C+C++++++++++++++C++++++++++++++++++++++++++++.++.++++.
+                                                                   C'CCC    C C CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCC'CC'CCCC'
+                                                                    X                                                      X  X    X
+                                                                    C                                                      C  C    C
 1++1 -++ -1--  +=AIIXXXI1--11+=+1--+111++1=AAIAA=+1II=1 +++=X---A==A-M-M=""""++++"""""""""""""""""""""""""""""""""""""""-""-"""-"-""
+                                                             CCC    C C C++++CCCC+++++++++++++++++++++++++++++++++++++++.++.+++.+.++
+                                                                         CCCC    CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CC'CCC'C'CC
+                                                                                                                        X  X   X X
+                                                                                                                        C  C   C C
             -  -1IAAIII=1      -==11-+IAI11=++1-----1-++1+++=III==+-1+==IIAZMMMM====="""""""+"""""""""""""""""""""""""""""----"-"""-
+                                                                                CCCCC+++++++C+++++++++++++++++++++++++++++....+.+++.
+                                                                                     CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC''''C'CCC'
+                                                                                                                          XXXX X   X
+                                                                                                                          CCCC C   C
           -----   -=IAAXA=+--   +==1 -IAXAIA=++        +1=1 +++I=++-   1- - =XMZ--M==+""+MM=+""""""""""""""""""""""""""-""--"--"""--
+                                                                                CC CCC++C  CC++++++++++++++++++++++++++.++..+..+++..
+                                                                                      CC     CCCCCCCCCCCCCCCCCCCCCCCCCC'CC''C''CCC''
+                                                                                                                       X  XX XX   XX
+                                                                                                                       C  CC CC   CC
           ---1++1-  -11-++-  1- +===-1=IZXXAAAAA=----    -----   -  111       =+=I==XM=++"=+-AX=+"""""""-""""""""-""""---"--"""---"-
+                                                                                      CCC+CCC  CC+++++++.++++++++.++++...+..+++...+.
+                                                                                         C       CCCCCCC'CCCCCCCC'CCCC'''C''CCC'''C'
+                                                                                                        X        X    XXX XX   XXX X
+                                                                                                        C        C    CCC CC   CCC C
           ---=+====++11-111- -1+1+1-1111=ZZXAXXIA=1--1==11--   1+-11----       1+AIX+-1IZ---=++=ZM=+++"""""""""""""""""""""""""-"---
+                                                                                         CCCCCCC  CCCC+++++++++++++++++++++++++.+...
+                                                                                                      CCCCCCCCCCCCCCCCCCCCCCCCC'C'''
+                                                                                                                               X XXX
+                                                                                                                               C CCC
         ---11+1=II=II+++1+1+1-1+1---1+1-=I===AXXI=+111+=+11----+++11 -1+111 -    -1==II1=AIXX-MMMM=+==MM+"""""""""""""""""""--""""--
+                                                                                             C    CCCC  C+++++++++++++++++++..++++..
+                                                                                                         CCCCCCCCCCCCCCCCCCC''CCCC''
+                                                                                                                            XX    XX
+                                                                                                                            CC    CC
 --1- ----+11++11++++=+++--1+1-1++-   -11=I+11=+=+=++1-=+++1+I=1--1=+1+ 1+--  1--  1+111+=XI=IIAIXZZZMM=M-=+""""""""""""-"-""-"""----
+                                                                                                      C CCC++++++++++++.+.++.+++....
+                                                                                                           CCCCCCCCCCCC'C'CC'CCC''''
+                                                                                                                       X X  X   XXXX
+                                                                                                                       C C  C   CCCC
 --  --11-11-11--11--++1-1    1+11 1      1=++++++++11 -++-++=+=+--11-- -=I1-    1I +111-- -=I-I+1=IXIZ-"+MMZZ""""""""""-"-""""""-""-
+                                                                                                      C+C    ++++++++++.+.++++++.++.
+                                                                                                       C     CCCCCCCCCC'C'CCCCCC'CC'
+                                                                                                                       X X      X  X
+                                                                                                                       C C      C  C
     --1+1++1++11--    ---     --  -        -+===+1111  -1+++==I=++11++---11+-    ---11=- 1----====+1-1=AXXX-ZAX=+"""--""---"--"----"
+                                                                                                           C   CC+++..++...+..+....+
+                                                                                                                 CCC''CC'''C''C''''C
+                                                                                                                    XX  XXX XX XXXX
+                                                                                                                    CC  CCC CC CCCC
 --  --11-+++++++111                         -111+1-  -11111+=+11-1111+111-  - -   -  1----1+111 1=+++++=I+=IXZAAXZ=+-"-"""---"-""-"-
+                                                                                                                  CC.+.+++...+.++.+.
+                                                                                                                    'C'CCC'''C'CC'C'
+                                                                                                                    X X   XXX X  X X
+                                                                                                                    C C   CCC C  C C
 ------11--1+==++11+11-- --1--                1111--  -1111- +1-   -+++++11--        -1--+1-==-=1--1+---1++II+IZ-==XX-+-""+-""""""""-
+                                                                                                               C    CC.++C.++++++++.
+                                                                                                                      'CC 'CCCCCCCC'
+                                                                                                                      X   X        X
+                                                                                                                      C   C        C
 -11-1--   --111+1111+-   -11+-               -+++-- --- -- ------111++1+1++1      +1 -- --++IAX=1+1- -1--+-1--+=X1=I-II="-"""--"-"--
+                                                                                                                    C  CC.+++..+.+..
+                                                                                                                        B'CCC''C'C''
+                                                                                                                        HX   XX X XX
+                                                                                                                        XC   CC C CC
  111+----- ----1+11  -      ---               11- -  -+1 ---- --+1+-+=++1+1-     -1==-     1+IX= --111---=+1++===-1IIA+=Z+-""-"--"--
+                                                                                                                         C.++.+..+..
+                                                                                                                          'CC'C''C''
+                                                                                                                          X  X XX XX
+                                                                                                                          C  C CC CC
 -11+11--  --1--1I+1  -11                       1--- -11-  -----1+++1+++=+11- -- -11+=11      ++++   -+++--+==IAAAI==I=XI-I-ZM="-""--
+                                                                                                                          C  C+.++..
+                                                                                                                              C'CC''
+                                                                                                                               X  XX
+                                                                                                                               C  CC
 111----- 1-  -1+A+1-1-1+1                      -1---1++--    ---+11111+++  --1+-1++1+11-- --   1+11-  -=+++1+1IIAA+IAIAAA===I+=Z+-""
+                                                                                                                             CC C.++
+                                                                                                                                 'CC
+                                                                                                                                 X
+                                                                                                                                 C
  --111- -11-- -1++111--11-           ---        -++-1+=+1=  -11  - ++II=+-    -+===++++1+1-11-  - -1+111=11-1+==1=AIIAXA--XI- I+MI-"
+                                                                                                                        CC     C  .C
+                                                                                                                                  'B
+                                                                                                                                  XH
+                                                                                                                                  CX
 +++1+11+++++1-1-1--11111-11          -          -+=11+=+1+++---     1+==++1-    1+II===+1+11-1-    --------    1+11AXAII=AXXA=I=XM-=
+                                                                                                                                  CC
 1++111==+11++111- -1++11-111-                    -1+++I===I=+111+- -1++=+1   1111=+11=I=1=+1   -    ---          -11===I=XXIIIAAA=XI
 11111+I==1 =+1-+1-1++=+=+1++1-                     1++I++=++1- 1===++1-=+-   1+=+++=+==++++1+-     -------    -   -11-=====A=IAAA===
 1+=======+++++++++++++=II==+=11--          ----    -1+1- +1-=+1-==AI+=A=-1   +======+++=+ 11  -    --1+= 11-- --1-- ---======IIIAZZA
 +1===++==+1+==+==11+++=+==+1+==+1- -        -1-     -1+1 -1+=++==+=I+==--    +=IIIII=I==II==1  ---1-1++I1=++==+--1+1+11-1++I=+1=IIAX
 +11+1-+I==++=I=II++====+=++1+=++=- -    1-++11      -+++--1+111AIAI=+==11-  -=======II=++==I1+==111+II==1+I==IX=+-1-11+111+===-1+IAI
 +111  +III===I=III=======+-1+==11  - -1-+===11-     -1+=11++---AAA====+11-  +==IIIAII==11==++++===-1=II=+1=IIAXAI=I=1+1++1 -+I=-+1IA
 =++++ 1==II++IAAAAII===II=+==+=+1   1=+ 1+-  -+-     -++1++=1+1IAI=I===+1-  1=IXAAI1+II==+1II==-II1-+++AII1==AAIZZAX=--I-=-  =I1=1-
 1=====+===I=1=AAAAAAAAI===I+=+111-  1+1- +1+1-++      11 1+1++=IXIIAI===-  -1=====I=+II=I+-=I1==I=== -1+IA=A=IAZZ-ZI=AA=+II+- I+--1
+                                                                                                                 C
  -1++=++==II=+==1+IIIAI=+++++++1--   1+1-1==+=+1-     1111+1--==IAAAXIA=-  -1+1=+++==II1+1-==+++==I+111-1+=AAIAZZ--XXZXXXIII1 1=1
+                                                                                                                 CC
   -+==++===II++=--111=I==+==1--  1++111111+=+=+--     1-11--  ++IIIIXII=1  1+=+==1++=II+I=1I+-==I==- 1+1+ -1+==1AX-XXAAXZZI=1+-1+--
+                                                                                                                  C
   -+==++==++++=I==++1-11++I==-   1=I==I=+++==AI+     --11 1+ -1+II++1=++-  1=====+I====1++I=-1 1II++ 11-+ -1++=++XXX-AIZZXZX++1- +--
+                                                                                                                    C
    111===+111=======I=11=1+I=+--  =I=IAIII+++=AI+-    ----11+++IAII=+-+-  -1=+IA=IAIIIA====+1++===+1==A=I++=1-+=1=XZZ-ZXX===A+11-1+1
+                                                                                                                     C
 -  -111==11+=====++1=I=111-===+1-1IXAI=IAI=+11=I+-   -- ---1++=AIIII=11   1++III=III=II=III=+=++III1II=IA=II=1--111=A-MZXAI+IAI=-+==
+                                                                                                                     C
 ++++1--1--11+=II=+--1++=++1+=II11IAXAI+=IAA=--1=+11- -1-----==IA===+=++   11+II===I=IA=IAAI++II=AI=+1=I==+IA=+I=1  -+IZMXXA==IIA=I-+
 =II=+1++1 -++=IIII=1111AII+==1=I=+AXII=1-==I+1111-+1  1+---1==++=I1=+1   -++111=II=IIAI=III+=II+1=-A=+==XIIXX+=III1 -+-AXI=1==++IIA1
 +++I=====+1+111+====+==IAI+++1++==IA+-I=1-+===1-+1+-  --  11======-==1-   +=++1IA=+X=AIIAAI==+A==++I==I+=IIAI+=II==+1-1==II=1=I+=AAA
 ==+==II==1111++=IIIIIII+11-1=11-1====+==1--1+=1 -11   -1   -++++==11-    -=++++=+=IAII====I=+-=1I===++=IIAIIA===I=+AI===I====AA=====
 ===+=I+++- -+++1+=IIAAA=1--+=+1++==11+1=11---11  --   ---   11-1I=1-     -1-1+==+-1I=II=+=IAA=I+==I+111==I+==AA==I=AIIA=+II==XXAII=1
 II=1+=+-1111- -  -++==II++-+==+++1+--=1+11- -  1         -- 1- -++1-     --11+++1  =III===AAAII++1+=++++1+===+=I==AIAAXAIII=+A-ZAZ-A
+                                                                                                                              C   C
 =I+-++++1--     -11-----+=1-++==1-+1II=1++- -11---       -  -1-11+1      11=II++11-+=I==IAAAAIAI1+++11-1++===+=IIAAIAXXXAAI+===XZZZI
 ++11+++11-      +===1---+===+11+=+=+AII===11-1- --           -- +++      1=III===I=+11===AIIA==I=+=====1+1===+IIIIIIAAIIIII11-==IXXI
 1++++=+----     -IXXAI=IIAII==++I==+IIIII=11--                 11----1- -1=AAIIAAXI++++IIAI==1++III+==I=+111+=AXAA+==I=+II=111=+III=
 +++1111- -----    +IXAIIIAIA==1+==+-1+==I=+11                  1----   -1+=IAIIIX=1+I+1+==+I++=++++=II=I+- -++=IXI=11=++==== +===XA=
 ++111111  ---- - 1IAXAXXAI===+==+==+111===++11--      1        - 11     +IIAAXA=AAIA+=+I=IA=+==IIA==AA=-1-1--+++IIII1===AAA=-1=I=A=I
 +=11-+++11- ----  +=IAXXXI====1++11----1111--- -      +-    -    ---    =AAAAAIIAII==IIAIAI+ =IAAAAII=- -11+1--1+==IAI==IZXI+1++=1=A
 I=+1111+=++11--      -=II=+1-1--     --1+----  -  -    -    1    - -   1=AXXAI=AIIA===AI=I==+=IXAAAI=-  -+-=+11++++=IAI=AIAI+==++1+I
 1++1++1-1---            - -   -1    ---------  -       -  --1  1  11   1IXXI=II=1===A=+11+=+AA=IIAI+11 =II=+111=--1+=1+11A=I+1=-1++1
  --    --      -1--            --    ------      -       ----- -  --    1+11=+=IIII=++=II=IIAIIIIIII+=+++I=AII-+++===I=11==-- -  --=
   -            ---                     --- -- ----       -------       --  -1-++==+111+==II==AIXXAII=1I==+IAII+=++1++=I=--1 11+11+-1
   -  --      - -                         - -11-- --11111-1-1-111      -    1---1++1-1-+==I+=AXXAZA=I=+I===II==++I1-11-1+111--++ 11-1
 +1- -      -=+1111-- -1  1-111-1=+1-      --1++1111++===++1 -11--11       11--1=II===11+==+1+==-ZXA+--1++===+I=I++- - 1 1+1-11111++1
 =+-  ------1==++1+1---1+-11+==--+1--        -1++====III+=I==1+1---       1- --1==+=+-  =+==+1I=1AAIA==++==IIIII+1+-  -1-1+--+ 1-+111
 =+1-11+==11--11++++11-1111+11+1---- ------ --1======II==I==I=++11-- -    -- -11+1++--- +=+I+1+=1IIIAIII===I1+III===1- -1111+-  ---11
 ==+11+=XA+--111+111-111++===+1111-    -----1+1+===III=========II=++--   -++- 1+++++=1- ++1II++=+===I=IAI===+1====+===1-1111--  - ---
 I=+1+IAXI1-1111- -++++=+-1++1+---   -    1--+11=I+II=+---1- -1IAI+11- - -++ -1+=-=++++=I++-+===-1=II=I=I=-++==1+++++++1- --     1++-
 AI=+1+==++=+++1+--11+1+11+=++++1---     ---1+++===AI+-         1==+11-1- -1----==I++=I=AAI+IIII+--=+===++1++11+11=1++11+--1-    --1-
 II==+1=AIIIIII=I=11--1+IAAAII==+---1   ----1+===III=1           1=AI=++----    +=+1++==IIA=++=AI+1===+=+++1-  -1++---1-11 ---  -  -+
 II++=++1=+=II==+++=+11=IIII=I+1    --  -111+1=IIAAI=-            IIII=+111---11++1++==IXXI=I+=AA===+++1=+1-1- -+11+ 1=+1 -   11-   1
 AIIII==1-+==111-IAAI-++++==1+1-  +--   - -11-=I=IAAA1            IAI==+11--11-- 11===IIIA+=I+==++++1+1 11+-1-1+++-++11++1 --  +11---
 ====IAI++1++=++=I==I+1++11-      +1   ----1--1===IIA+           1=I===+11-11-++11=++1==III1+++++11++=AAAII=1 -1=====++==11-- -+11+==
 +=++===+1 -11+++=+==+1++==1---- -11-- -  ----1+11+II+          -=II==+111111-111======+=++-++===IAAIA=-X--ZI11+1+II++++===+1-1++++1+
+                                                                                                     CC CC
 ++-  --1+---1+++1+++1+++11-1+1-  1--     -    11+==I=1-      -1=I=I+111---1--111-1==I+=I+=1+=IIIXZMZXZXZ=++=-XI+I-M-AI=AAIAI==+++1-
+                                                                                                        CCCCC    C C
 1  --11-1--  -1-1++11+++----               - ---1+=+I===-++--=I==+=1+-     --++++1++=++I=I==IIAAA-=M-AIA=M+M=ZZZM=M+XZAAIIII==+--+=
+                                                                                                 CC C     C C    C C
 -   --  -1++-1=1+++1++111-++1-  -            - -11++I=+I==I=IAI==+++11-   --1-1++===1I11-1=I=I==AAXI++-+IAXXX=ZIZM=+Z=A=-=I+1111- 11
+                                                                                                             C    CC
 +1     -1++===++==+-+==+=1+=-  --              --1++=++======II+=+11111-   -11--- II=I=11--+++++AAI++1- +==+IZZ1=AAXZIII++=1---+1-++
 1-    ----+==+==++11+IX=1+11-- -               -11+111+=+1++==++11 -- --- -  -111-=IIIAII=1==A=+=====1+1+I+ =+======III==+=  111++1=
 --      -1++IA=+11+1+=++11----11               1111111+==++1++-1-   --1---+-  -=11+I=AXAIAIIAZ-A++++1 -II=+1 =-1====1=+1++====1+=1AM
+                                                                                              C
       11+=++I=+===11-11+- -1-1+11-              -11111++=+11-     ----11+---+  -1+1=IXXAAAAIXXA=+=+=+1-1IA=I+IX++==+1 -111IIII=1+1=Z
 1-     1===+11==++1- - ---1+1++111                1--1=+1+1--     -    1=- 1=+   +=IIAI=I+I==II11+=III==+==III=======1--+-+1+==+=+=A
 +11    -1-----111--  -  --11+----1-    --         - -1+1-++--     -     1+11++1-   1II1+=+I=++++1  1=I===1==1I+XXAXA+==+1+1111 -1+=I
 ==+    1+-  -     - -- --- -+11----    ---- --- -   +1----1- -      -     1=+I=+-   -=+I+1I=11+=1+- 111IX=+++1=IAX=+X+++=I1-11- ----
+                                                                                                                  CC
 ++1  --1-  1-      -+1--11--+--11--- ----  1+1-   - ------          --111  -+=II+-   -1=II=-+1AZI+=11-1=A-==11=11=A-M-A+=1+++ 1I=1--
+                                                                                                                   C C
 11-    1          ---+-1==1--1-1-1111-     --    -1-----            -+1-----11=AI= -  -1=AAIIIAZX+++++-==+++=-+- 11=A-MZ=+AAIXZMZ=++
+                                                                                                                     C
 1+-   -        --1++111II+1--1111+=++1------     1--11-   1         1I+--=-1+--=II==1   +=IIIAIAAI=IAIII1I===-1+--  -+A-IXZZAM=MZI+-
+                                                                                                                       C      C
 - -- --      -111 --11=+=1--1++11-I=++1-- 1    -  ----1 -  ---  11---1I==I11=-  -1+=-1   -+AI=AAI+1=+-=IIAXXI+ =ZZX-  -++1X-ZM==-MX=
+                                                                                                                           C  CCC
   -+-      --1+1-111+++1+11-1===+=I++I+-  - -  -- - -  --- -1- --1-1-+=IA==++1    1+1-    -+==IIII=1I+=AZXAZXI+XMM-X=   -1I--XMZZZM=
+                                                                                                                  C        CC      C
      -+1-11111+1111+==1++==III==+==++=1-- -11-  - --+------ 1-  -----+==II=I11 -1--++ -     11=I===+IIIXXI=IAXXX-M=MM++=IXXZZIAX=II-
+                                                                                                                C C                C
     -++++=++1+1-++1=I1 1++=AII+==II+1----  1----  1IA++- ---111-1-- ---I====11-11+- ---        ===+11+IIAA==ZZ--ZMM-ZI=+=1+XZZAX=+=
+                                                                                                              CC   C
    -+11+=1--1--=I+II+11+1--+=I++=II+1+- --  --- --1IXI+-111-1+11-1--+1111=I+I=+III==  +  -      ---   +=1==AZMM=MZ==++==-=AZZMMZXAI=
+                                                                                                               C
    -++11+ --- +==I+1=II--1+I==+=AI==I=1-+1  --- -11+II11=+111+111-+1=X=+1=I--==IZA=I+---         -1-  +-1=IXXXZ-MM-Z-XAZZ=I--MMM-ZMM
+                                                                                                               C  C C      CC   C
      ++11-1--1+1==1IZX=1==IIII+=IIIAA=+11-  ---- --1++1+++1-+I++- +++XA=+=I+-1-=XXIIA=1 -1        - --+1+=AXZXZMMMMM-ZZZZ-A--MMM-Z-X
+                                                                                                                    C    C CC   C C
     -1++=+++-  -+1IAXI==AIAXAI==IAXXA=I+1   -1---- -+-+=+111+I=I1-1==XA=IIAI1-1==AAXIA=- -          1+===AXZZZ--ZZ-Z-Z--Z-ZM--MMM--Z
+                                                                                                              CC  C C CC C  CC   CC
    +=IIIAIA=1-11- ++=====IIAAAI=AXXI++==   -1-  --11-1++1--+I=IA+11+=IA==AI=+11=1+IAAI1=-  1-       11 I=A---M==AI-AA-ZZZ-ZZ-AIMMXXM
+                                                                                                          CCC CC  C  C   C  C
  -=IAI==AAI1-+11--1+==+++++=IAIXXX==1++1     -   -- -+1=11-=I==A++111+=+===I==1+1 -1=+--- -- 1         -=IXX-M-MZ=II11II++=IAZ-MMZMZ
+                                                                                                            C C               C
 +IXIAI++AA+===+--11+++=+++-1+IXZAXAI111          --+-+-++=++==1+11-1+1==++1AIA=++-1+I=+111-  1+1-       -1=IA==XI=++--+1   -I-M=MM=M
+                                                                                                                             C C  C
 AAA==I=IA=IXII=111111+=I+11==A-AAAI1 -- --      --++++1+=A=+1111-  11-+II=1=II+=+++=IAI=I=+  --=+        +==I=IX=I1==+=+1+==Z-M==M+-
+                              C                                                                                              C CC CC
 I==IIIAAI++=AXA=+I1+1+AA+1===ZI+==-----++1     1++=11+-+=+1-- 1  1-+===II+1-111-++=1++IAAXA+-            1===AXZ=AIII=11+I==Z==M=M-I
+                                                                                                                             CC C C
 AAIIIXAA++++I==AAAAIIAZII===IZXI==111+++1-- 111==+I==I-1+111-1--1+1+++=+I1-1=AZIAI1-1+IXAZZZA1  +1+       ++=AAXAAAI=IXZ==+++===-M-A
+                                                                                                                          CCCCCCC C
 I=II=XXI===+=+AZXAAA===+IIIAXM-I=++11+=+1--1=1=XII====11-+1=11-1==+1=I+I=+II-++=X-A -1=A==+Z-A=--+AII1-   ---AZXIII=+IM+=X-==M-MMZIA
+                              C                                             CCCC C          C                          CC CCC C
 1IAAAXA+I==+++IAIII=++=+IAIIAMX=+11+-1+1--+II+IX=++=+=+=1I1+=11=I==1=AII++Z-M+==--MI+++1-- +AXAI+=IXXA+ -  --IZZ-ZZ=+=M+"M-XII=IAII+
+                                                                           C CCCCC                              C      C+ C
+                                                                                                                        C
 =AX-XI=+II===+-11==++=I=AAI==A+111=+--111+IXI=I===1=+=+=+A+11++=IA=+++XI++Z-===-Z--MZZ+AXI=+AXXXIAI=XZZ=-1---  IXM=ZXIAXXM=+AMZ1=IAI
+   C                                                                       CCCCC CC                               C       C
 IAZZX=+==AAII=+===I=+++IAI=+++++1AA+ -+=ZAZXIII===I+==1++A+1+11IIAI==I==1+Z-M--Z+ZZZX-IXZAA+AXXZXXX1IX-XA=- 1  =ZZ=++-Z-=+=I-+MZ+IXX
+                                                                           C CC      C                C           CCCC CCCC CC
 AAAA=++IAXXIAAAAAIA=+=+=I=+-1=+1+AI=+1+IX--ZXZAI=1I===-+=II==+=I=AI++=++11+AZAZ-XAXIA==IAAI-+IXZZXZI1A-ZZZ===  +Z-M=+=++=++ZXM-X+IXX
+                                         CC                                    C                      C          C CCCCCCCC   C
 XAI=1+=IZXAAAXXXXIA=+=+=I=+1IA+11=++===XZZ-==+ZA++III=+=I=III=I=+I====+++=+IAXX-ZZX=1+A==+11+IZ-ZZZXI=Z--AAAI- --M=++=++M-++-I=1+=IX
+                                          CCCC                                 C               C       CC       C CCCCCC CCCC
 ZZI+=AIAA+=IAZAXI=II=IIII==IAI1-- -++XAAXXAXXZX=+I==II==+1AIII=11===I+I=1==-+=AAZZI1-=--XI==IZZ---XZXAIA-Z-A==--I-M=++=+=A=+-+M=1--=
+                                                                                      CC       CCC      C C      C CCCCCC CC.C
+                                                                                                                            '
+                                                                                                                            X
+                                                                                                                            C
 XXIIAAXZXIII=====+IIIXAIIII=I1----1-IIII=III===1=I+-=I++=1AXXXI==I==IAZA+AZ-+-+III1+II=AZZIAA--------ZZAA-Z-ZI=-1IZMM=ZM+MXM""+MI---
+                                                                                             CCCCCCCC    C C         C  C   ++C
+                                                                                                                            CC
 AAIAZXXAXAAI==I==+==IXX=I=++--1=+11=A=IAIII==+++II=1+I=II=XZZZXZMXI=AXM-==+==AZZM-AAXXIIZZZXXZZX-==M=Z-XAZ-Z-ZI=+-+-M=+=++M"++=I=+
+                                                                       C         C              CCC C C   C C      C CCCCC +CCC
+                                                                                                                           C
 AIAAAAIAXAI=+=A==II=+IA+11+1 -=I=11+====IXIII==AI=II=I=+1AZZZ-M=+ZA=AA--X=1IAZ-MMMZZ-ZZ--ZM-X-ZXM==+--MZAXZ-MZZXII-AM-+=++"+"=ZXA=+
+                                                             C CC     CC      C     C  CC  C C   CCCCC     C         CCCCC+C+C
+                                                                                                                          C C
 X=+==IAAI==11AIAZZA====1-----1+1=+1+111+IZIAXI+==1-=AXAXA=ZXX++++A==IX--MZ-ZM-MM=MMMMZ--MM=MZ-MMM==+=--MMXA--ZZ-ZI==ZM-===++++Z=+Z1=
+                                                             CCCC     CC  C  C  C     CC  C  C   CCCCCC    CC  C      CCCCCCCC CC
 A==IIIAA=1+=AZX-ZZIII++-11-1==1++++1--++===AAI=+=1-I--ZXAIZZZ=+++Z=IXZM====-MM===M--ZZMMMM==M-ZZ-==MMM--M-XAAMZ-ZZ+=AZ--M+++"+--M=XM
+               C                                    CC       CCCC      CCCCC  CCC CC      CC C  CCC   CC C     C      CC CCC+CCC
+                                                                                                                            C
 =IIIAI=I=+=IZZ--ZA=X=111+++1XA+++=++11111+=XAXXI=+1ZZ--XXX-MM=+M+M-----M==MZ--====--X-===M==M-ZZ-MMMMMM-MMM-AZ--ZII+1=XX-==+===-=M-=
+              CC                                     CC   C  CC C CCCCC CC  CCCCCCCC CCCC CC C  C      C   C  CC        CCCCCCCCC CC
 +=II=++===IXZ-M-ZX=+1+++==++XA+-+A++==++++=AZZXII=1ZZZZXZZM=+++++M==MMM==MMZZZ=M===X--M=====MZXZZZZ-MM--MM+M-XAMMXII=-+IX-XX-++++--=
+             C C                                           CCCCCC CC   CC     C CCC CC CCCCC       C  CC  C C            C  CCCCCCCC
 +===1-=II=AX-ZZ--A=1=I=++=+1II1 +I++=++1=IZZ-ZI++==IXZZXXZMM++++++MMZ=M-Z---ZXMMMM=MMMM=MMMMMZZZXAZ-ZM=MM=+MMM-AZ-ZA=1- =1IA-=+++-=M
+            C  CC                           C               CCCCCC   C C CCC      C    C           C  C  CC   C  C          CCCCCCC
 ==--1=AIIAIAZIZ-ZXA===+ 1I+1+1 =I+11+++=II-Z-X+I=II=AZXZAA--M==+M==--++MMMZXZX-=M=M=M--MMM----ZZZZZZZM++M==+MMMZZ--ZX=1  1=ZZM=+"M+=
+               C                          C C             CC CCC CCCCCC       CC C C CC   CCCC        CC CCC     CC           CC+ CC
+                                                                                                                                C
 =-  1=IIAAIIIAZZZZXAAII=II==+1-=I1-1=++AXZZ-XAAXAIA=IIIZAAZ-=-====MMM++=MMXA--Z+==M==-ZM-M-ZZZ--X-MZZ-MMM-MM=M-M-Z--ZAI=1 =Z--=++=+-
+                                           C               CCCCCCC   CCC    CC CCC CCC  C C   CC C   C   C  C C C CC        CCCCCCCC
 - -11+==III+IZ---ZXXAAAXXIA=+ 1+- -+==IXZ---ZXXZXAAAA=+XA+X-MZM==MM=-++MZ---MM-=++=+=MZ--MMM----ZZMMMMM-ZZ-Z--A-MI=M-ZXI=+=AZ-M==+=-
+              CCC                        CCC               C   CC  CCCC  CCC  CCCCCCC  CC   CCCC       C  C CC C    C        C CCCCC
  -1 -11+=I1-=ZZ--ZXZXXZZAAX=1--1--1IIAAXAZMMZZZZXA=I1I=I==A--ZM=MMMMM==ZZMM--M-=++=+++=-----MMZ-ZZZMM===MZMZ---Z-I -MZZAI==AAZMMMMMM
+               CC                                          CC  C     CC    CC CCCCCCCCCCCCCC   C     CCC    CCC C  C
 1+1   11=I=1A-Z--ZXXXX-XXXA+-- -=I=+IXAAI-MMZXXZZXIA=IIIZ==+X-M=MM==M=-ZZ=M-M-MM==+"+"+=MMMMZXII==MMMM=+=-ZZZZZ---+AMM-X=IA+AXMM=MM-
+             C CC     C                  C               CCC C C  CC CC  C C C  CCC+C+CC              CCCC     CCC    C         C  C
+                                                                                   C C
 -1-   11+=I=AZZZZZZZZZZXXA=1---1++=+IXAAA---ZZXAIXXAII=IZ+++MXM=M-M=M-ZZMMMMM-MM=M+"++++-Z--A+1I==--M=MM-MM-ZZ-=MZXIXMM-XIA==ZZ-M=--
+                                         CCC             CCC   C C C C       C  C C+CCCCC CC      CC C  C  C  CC       C       C CCC
+                                                                                   C
 11-1--==+=AIXZZXZXZXXXXAAI=++1-11-==+AAAZ----ZXI=AXIAA=AZ==-=M-++MMMM-ZZ=M-MM-ZMM==+++++-AZ-X1 XAXXXZ--MZ-+MZ-MMMZAZI-MMZXAIIAXZMZMZ
+                                         CCCC            CCCC CCC    C  C C  C   CCCCCCCC  C         CC  CC  C       C
 =11==++==AXXZXXXXXIZXIAIII==+---======IA--ZZZXZ=+XAI=AAXZZMZ+=XZ=----ZZMM=MMM-Z-Z-M=+====ZM=-=-=I+XAI--Z-X-MZZZZZZ=XAX-M=XAI1=XZ-ZX-
+                                        CC                  CC  CCCCC    C   C C C CCCCCC  CC        CC C C           C C       C  C
 ++=I=++=IXZZXXXAXXAZAXAA=+==11+1==IAI=IAZ-XXAXA+=XAA+IIZAAZXMXZ=MMZXZZXX=++++M---Z-====-=M-ZZ-I=1XZ==IZM---ZXX-XXX1=--=Z--ZI=IIAIII+
+                                         C                     C        CCCCC CCC CCCCCCC C  C          CCC   C         CC
 ===1--+IAXZZZXA=AAXXAXA=1=I+-+I=+IAAIAAZ-M-XAA=+AXXIIIAXAXAAII-MM=XI=XXZ++=+==MM-XAZ-MMMMM-AZ--ZXZI==IIZ--MZZZ-ZZI+11 -1I--A=IIAA==+
+                                        C C                   C  C      CCCCCC  C   C     C  CC         CC    C          CC
 II=- 1IIIIZXZXXXXXZZZXA++===1=I==AAAIAA-M-XAAXI+XI=+==AXXXII==AZZXA= =ZM==M=++=--I=+Z-Z----ZZ---ZZXI=I=X----ZZZZX==+  -  =ZZXA=AXI+=
+                                       C C                              CC CCCCCC    C CCCC  CCC        CCCC
 II===IXX=IXXX-ZZZ--XAAAAA++AI===IXI-IXAZ-ZA=IX=-+=AII-AXZXXI==IXI=AA+AXA-M==+=MM-XAXXXZZZZZZZZM-Z-ZA=1XZZ---ZXZZZA++  1  1IZAXXAAA=I
+             C   CC                     C                               C CCCC  C              C C       CCC
 =I=+IZ-ZAIXZZ-ZXXXXAIAAAA==AAA+1+I==IAIAXXXXXXI1+IAAI1=IAXZXI=AXZXAAXXZZM===+"+=M-ZZZXZZXXXAXZM-MMMXXXXZZ-M-Z----X=A=1- -==XMXZ-I===
+      C      C                                                           CCCC+CC C             C         C C CCCC              C
+                                                                             C
 =IA=AZZXIIXXZZXXIAXA=IXAA=IAIA11=++AIAAZZZAZXXAIAAAAA+11 IAI=IAXZZZXZZ---===++=-M-MZZXZAX--ZX---M--ZZZZZZ-ZZZ--MMMZAAI+ =AXZMMZZM=++
+                                                                      CCCCCCCCCC C       CC  CCC CC      C   CC
 =XXXXXAAXAAXXXIAAAZZIAXAAAA=AI-1IIIXXXXXZZXXZZXZAAAAI1 - IXAIIIAXXXZ----M=+==MZAZ-MAA=A1AM=M---ZMM---ZXXXZ-ZZZMMMMM-M-XAXZ-M-++XZ=-=
+                                                                    CCCC CCCC    C        C CCC   CCC     C        C C    C CCC
 IAAXZAIXXXAZXAAIIXAIAAXAXXX=I+-=AAZXZXXXXXZZXZXZXAIX+ +1IXZZAI+IAIX-MMM-+"++-ZXIXZM=-AA1+-=MMZ--ZM-XXZXIAAX-ZZZM-MM=M--ZZZ-=M=+A- 1=
+                                                                   C   CC+CCC            CC   CC  C        C    C  C CC   CC CC
+                                                                         C
 AIAXXAAXAXAXAAAXAII++AZZXXAAA==IIIAXXXZ-ZZXAXXAI=AXXA+==AZXXAAAAI=IZ-MMM==++=ZXIXAZ-AAIXXM-MM-Z--ZZIZ-Z1X---M-Z-MMMMMZZ-M--M-ZZZI1
+                                       C                            C   CCCCC      C      C  C CC    C   CCC C C       C CC C
 AAAXAXXXAXZXXXXXI=+1+AZXXXIXXIAA==AZZXZZZZXXAAI=+IAXI+==IXXXXAA=+1=AZXZMM+"+M-ZXAZZ-ZA-M=+MM-ZX-ZAXAZ--IX-=M---M-=-MMZI=M-MZ--XA-Z1
+                                                                         C+C C     C  C CC  C  C     CC  CC CCC CCC    C C  CC  C
+                                                                          C
 AAAAAZZZXZ-ZXXAAI=1+=IXAAXXZAIXI=IXXXZXXZZZXII+=+IAX+++IAAAXAII=+==AXIZ-=+++-ZXXAXZ-M==+++=MZ-XZXAAAX-ZAAZM=Z-M-MMZ-MMX=---ZZZZ=+ZA1
+          C                                                            CCCCCC      C CCCCCC  C       C     C C C   C   CCCC
 AXIIAZZZZ--ZXZIII+1=IIXAIAXZIXX=XIXXXXXAZZZXII+==IIA++1IAII===AA==IAIAZM+++=-ZXZZZZ-=+=+++=--XXX-AAX-M-M-AZM----MMMMMM===-Z=XZZI I++
+         CC                                                             CCCCC      CCCCCCCCCC   C   C C C   CCCC      CCCC
 +=IAXZZXZZZXXZA=1-1=IIAAI+=IIAI=XXXZZZZAZZXXIA++==II===IA====+AI==++==Z=+"+=ZZXXZZZX-+=+=+=MZZZZXA=X-MM--II-=Z-M--MMMM-M==-I=I=-=1--
+                                                                       CC+CC        CCCCCCC         C  CC  C  C CC    C CCC
+                                                                         C
 1=AXXZ-ZZ-ZZZXI1-1===I=II+ 1=I+=AAAXAZZXXII==I======II=AAIII++II1--1+=A=++=MXIZAXXZZZMMMZ-M-XXXXXXZZ-=M--+=ZX---M----Z-M==MZ=1- -111
+      C  C                                                             CCCC              C C        CC CC    CCC CCCC C CC
 AAXZXZ-Z--ZZZXI1+++====II=-1+++=IXAA+AXI=+I=1=I==II+=IIXZAXA=1=A1+1+=IX-++M=-IZXXZZ-ZXM-AXZZZXAXXZZIXZ-ZX11X-M-M-ZZZZXM-M=MZ=    =1A
+      C CC                                                             CCC CC      C   C              C     C C C      C C
 AAXAAXZ-XZZZXI=1- -+=IIAI===I==III=AAAI=++=11=+++=I+=IAAXXZZI=I=+1==+ZMM+====MM-ZXXX-Z-ZXAXZXXAIAAA=AZ=IX+IZM=MM-Z-ZZMMMMM-ZI   --11
+       C                                                                CCCCC  C    C C                      C  C C       C
 XAZZZXZZZZAAI++- -++IAI=+++==IIIIIAAIIA=+1++++11+I=1+IAAIXXX===+-1-IA--=+===M=MMM-ZXZZXXZXX-ZAAAAAXXXZA--MM--++M---ZZ-M==M-XI--
+                                                                     CCCCCCC C   C         C           CC  CCCC CCC  C CC C
 XAZ-ZXZZZ-XA=+1  -11+==11--1+=I==III=XXI++===1=+=I+1+IAAXZXXIII+1=A-=M=+++==MMMMMMMAAXZAZZZ-ZXXXXXZMM-Z=M==MAM=--MM-ZM=+=M-A+
+   C     C                                                         CC CCCCCC               C         C C CC   CCC  C  CCC C
 XAX--ZZ-Z-XAI++1+++-11--    1==++II=IZXA===I===I==+++I==XZ-Z==I+=ZZ====+++=M---M---XIXZ--MZMMZXXX-==MM-=M=-Z=AX--MMM-M=++=M==   ---+
+   CC  C C                                                C        CCCCCCCC CCC CCC    CC        CCC  CC CC    CC   C CCCC
 ZXZ-Z-XXXXZX=+=+I=+---        ++==+=IZZAAI==++===11-+I=IXZZ-X=I=XXIM===+=MMM--ZM----XZ==MM--M-ZXX===MM-MMMMAZAI--ZXAM==++"=X=-  1 +=
+   C C                                                     C        CCCCC   CC  CCCC  CC  CC C   CCC  C        CC    CCCC+C
+                                                                                                                         C
 ZZ-ZZZAI=AXX======1 1    -     - =+IIXXAAAA=1+=A++11==IIAXZAAIIX=MXZ-A-MM=M-X--------M++=M=-M---Z+=++=Z==MMZZAIXXZAZMM+++++-X+    +1
+  C                                                             C   C C  C C CCCCCCCC CCC CC CCC CCCCC CC             CCCCCC
 ZZ-ZXA=I==AAIII++1 -+- -1+-      =+IIAAAAAI=+1+X=++=I1==AXXIIIIZ=MXXX1IX---ZXXZZZZX-ZM==M=MM---X-==+=-ZM==MZAAZAIXXAIA-MZ++MZI  --=1
+  C                                                             C       CCC        C  CC C  CCC CCCCCC  CC            C  CC
 IXZXII+=++++=II==++II++1++--1+ 1-1-=IIAAAA=====AI===I1+IXIX===ZXZMXXA+AAXZZXIIAAAAXZ-==+M=MZZ--Z--A-M--MMMMZIAIIAXAZA+=ZXMXZA=  -II+
+                                                                                    CCCC C   CC CC C CC
 ++==+==11=  1==++=IAII++=-  +I=I+=+IIIXAI1++=AIII=II1++=XAA1=+Z=ZZ==A=--AZ=1-+IIIAZZM=++=-MM-M---+1=M--==MMA===+IAIII11-=XX-A   1AZA
+                                                               C      CC             CCCCC  C CCC    CCCC              CC  C
    =III=1+11+=--1==I=III+- -==AAI==AIAXAXI==I=IIXXII++1+=I==IA-=-X1 ==IZZZ+  +=I1=XZM==++-MM-M--Z+A-++++=Z1====++=MX==-A==MZX+1==XZM
+                                                              CCC                    CCCCC  C CC   CCCCCC           CCC CC
    -III==+1+=I111+1I=I=++11+IIIII=1+IXA=AI++==I=XX==1--+IIIIII--=Z=1+IIAXZ+  +II-=XX-M=++-MMZ-ZXI=ZM++++MA==1==++-====M+M=M-ZZAZ--ZM
+                                                              CCC                   C CCCC   C      CCCC         CCCCC   C C    CC
 ---1====++=III====II====+-+=III=I=++=IAIAA=====+AXI=1  +=AIIIAZ==MZXAAX+=A1  +IIXZZZMM=+MI-=-X-I 1=M==++=ZII=+1=IM=MMMMZ-M=M----M===
+                                                               CC                     CC  CCC C     CCCCC         C     C C CCCC CCC
 =++==+++-=IXI==IIIAII=I=+-=AAAA++-1===XXXAAA==I=AXI=+--=III==I-++=MM---====+11=XZ---M=+=ZAMAMZ-=  IMM--+=A==I+IX-==--M-Z--MM--=M=++=
+                                                              CCCC  CCC          CCC CCC      C      CCCC       CCCCC C CC  CCC CCCC
 ==IAI=+++=IAIAAA==AIIIII+=IAAII=++=I=AXXXA==+IIA=Z==1====AI==X===MM=M--ZZXXAXIIXZZ-M==MZ-MMX+I+  1=ZMM-M==-=A--M-=M=MM-Z-M----MMM=++
+                                                C             CCC  C CC           C CC  C             C CCC  CC CC C  C C CCCC   CCC
 AAXXI=++=IAAAAAA++I==II=====II===IAXAIAXXA=+====ZAII==I=IMX1==M=MM==MZ--ZZXAXXIXXX-MM=MXM---I=1  1+I-M=---MAX=MMIZMM=MM-Z--MMX-MM===
+                                                               C  CC  CC          C  C   CCC        C CCCC   C      C  C CC   C  CCC
 I=AA++==IIXXAIAA=1IA=I=+++1++=+++IAAA==XII=1+==II====+IIX=A-==AX-==M-=IIIIAXZAAAAX-=M=MM+=M+M+1+-11A-XM-ZI--ZMMZZZMM+=M-ZMMMMZ-M=MMM
+                                                         C      CCC C             CC C  CC C        C  C  CC        CC C      C C
 I+-=++=IAXXAAI=XXAIXI==++----++- +I=+=AZXII+=IIX===+-=IIAAI+===X==-ZI1+++=AXX+II=ZMM==-MM-=+Z+==+ 11==I-ZZMMZM-Z-Z=MMZ-XZ-M-MZ-MM-Z=
+                                                                CCC                 CCC  CCC           C      C C C   C  C C  C  C C
 A++II=+IIAXAIIIZZXXXAI++1--11-+1-1+11AZZXIA+-+++A===++=IIII+11=Z=MXI=1+1-=++=1=XXXXM-ZXX--ZMZIA=+11++==AZ-M-AZZZ-=MMMZ--Z--XM--M---M
+                                                                C                   C   CC               C C    CC    CC CC  CC CCC
 XIIAIIIAAXXA=IAZXXXXA=++++++1-+1+11+1AXZI=I+--1=-A=+11==I=+- -=XMZI=11+1-I+ +IAZXZX=ZI-1XZ-Z-AA=I=1-1=+IIXM-IXXZ--MM---ZZMZZ----Z-MM
+                                                C                                  C      C C              C    CC  CCC     CCCC C
 XAAA++IXAXXAAXXZAIIXI=+++===+=+----++=AXXI=+1-1+II=1-1++==1111=XXI====I=AI=-+AZZ-=-M-I 1AZZ-MAIIIX+--++I=ZMM-AAZM-MM-Z---MZZMZZZZZ-M
+                                                                                CCC C      C                C    C  C CCC         C
 ZZX==I+AAAXXXZZXI=II+=I+=AAIII+--- 1+=IAII=++-++ ---   +I=1+=+I1I=I===AA+=1 =XZZM=-X--XAXXZZMA==1++++XIIAZ-ZZ=AZZMM--ZZZZ=-Z-Z-Z=ZZ-
+                                                                                 CC CC                    C        CC     C C C    C
 AX+==AAAXXXZZXAA==+==IAAIIAAAI=I==11+==IA=+++-+1- ---  1==1+=+=1=+II===AA===+1X-M-===-Z-XXZZ--II1+IIIXXIA==AZ=AXAMM-MMZ-Z=--ZZ---X-Z
+                                                                               C CCCCC C    CC                     C   C  CC  CCC C
 IX+I=AZIAXZZXXAAI1==IIAXXAAXAIIXI=+ 1=I=I=1111++1+++1111-11++++++1==IIAZMA=11-A-MZMMM-M-ZZZ-MM--=IIA===III=IIIIXZZ-=MMZZZX-Z-M--MX-Z
+                                                                               C     C C   C  CC                  CC      C C CC  C
 AAII=IXIAXXXXXIA=-1IIAXXZXAIAAIXI=1 1II==++11+==+II==II=11--1++11-1=IAAA=-=1+ZMM-MM-=-M-X+X=M==M1-X===+=A1I=11==X---MMZZZ--ZZMZZ-A-Z
+                                                                        CC      C  CCC C   C CC  C               CCC     CC     C C
 XXIAIIAIZZZZAXA=11=IAZXXZZZI=I==+1-1-+===11I====I=IIIIAAI11 11   -+I=AIAMM=+ZM=MMM-Z-M--XX-====+AMXA====II=+- I+1IZ-MMZAZ--ZAZ--ZA-M
+                                                                              C   C C CC  CCCCCC                   C     CC   CC  C
 XZXAAAIXZXAI=AI--=+IAXZXZ-ZAAXAA===++=IA=++IIIIIIIAXIAIII+1 --   -=I==IIIAAX-M=+=M-ZZMMA-Z-M++MMA=A=X=+--1 1=+1IA-AZZMZXZ--ZZXZ-ZXZM
+                         C                                                  C CCC C     C C CC     C                     CC    C
 AZZXAAAAIIA=+==-1==AAZZXZM-ZZZXXA==++IAIIIIIAAAI=IIAAAAII=1-111  1IIIIIAI=M=-Z++=--ZZZZXZXZM+===MZZMZ11    -+=1=A-==IA-XAZZXXXX-ZXXM
+                          C                                                CC CCCCC         CCCC                      C        C
 Z-ZXXXI===I===II=++IIIXZ---ZXXXA+==+=AA1XAXAAAAXIAAIAXXA==++-++ -++II==AAIXMM-=+MZMZXZXZZ-M=+===+==MX+=+ - -1I+=Z11==+XAIIAI1+=-ZAZM
+ C                      CCC                                                  CCC         C CCCCCCCC                            C
 Z-M-ZXIII=+=A====1+==1IZZZXA=AA=+III=IA+ZAXAAXXAIXXAIAXIIAI=+==---+==I=I=XAZ+==ZZZZXZ-AZX=+"+++==+=AZ+X= 1+ -AZ+I+-====X+XA=1-1Z=A-M
+ C C                                                                        CCC      C   CC+CCCCCCC                             C C
+                                                                                           C
 AZ-ZAI11IAI=II==+-+I==IIAIII=A=+1IA====1IAXXXXXAIIAIAAXXIAI====1- 1+=A+=IIAIA-+MZM-A--XZZM+""=Z-Z==Z=1II++-  ++--1 --+1AZZAI=-I-=X--
+  C                                                                          CC   C CC    C++C C CC                            CC CC
+                                                                                           CC
 IIAAAI=+IXAIII1++-+I==+=IAAA=II-1IX=II11IAZZXXXA=IIIIIZXAA==+=+11-=+IXI=I=A=1ZM-Z-X+ZZZXZZ=+"+M-XZZZ=+++-1-+=A=+ ----1+I--ZA+1=IXZZZ
+                                                                               C C        CC+C C                        CC
+                                                                                            C
 I=AXZAI=IXXAA=11-1+=I=+=I=II++I1=AAI=I-+AXXZZXA1=IIIIIIAXZI++++1+-+II=AIIAAA=ZXXIXI=AIXXX-M=++=MAAXAA1I=-+==I=I=---1-++=ZZZA+++IZZZZ
+                                                                                         C CCCC
 X=AXXAA==AAAA++---+1I=+=IXI11AA+IXAIII==XAAXXXI=II=IAA==AA+-+1=====AI =I=IXAIIXXIX=+11IZA-M=+=+MZXZII1=I=I=II=I=11++1+==IZZ====ZMZZZ
+                                                                                         C CCCC
 ZA=I==AI=+===1 --11-111=IA==IA=+IAA=+==+AXZZXX=IIIIIII=+=+1-+++===I==IAXIIAIIX-AAI1++1=XX-MM-MMMXZZ-X+IIIII=====+1=+1+=I=XA1++XZ--A-
+                                                                              C          C  C      C                            CC C
 ZXI==II=+-11--  -++-1- -==+=I=-1=II- ++=IXZXAAAIIII==++1+1--1+1+=+==IAAAI====AXAAI- ++IAXZZZX-ZXXZXZA=I=IA=A====+-=+1=AAIA=1 1AIX-Z-
+                                                                                             C                                   C C
 ZXAI==+1-  -     1=11+1 1++II=11+II11++IIAXIII=I=II=+11-1111++++1-IIIAI===++=AII==+-11=XXXZX--X=XMMMMMXIIIAA===I=+=+1=AAAZ11-+I--MM-
+                                                                                            CC                                 CC  C
 1A==++-          -+11=+ +=+=I==--XA1+==IXXA+==++++=+=+11+++=1+1+++IIIAI==+--+=1I=1A==1IIZZAXXAX=-+=++MMA+=AAXAI=+-+=+==AIZ++-+IZMM==
+                                                                                                CCCCC                             CC
 II===+1-         1==+1 1=AI=++1==AA=-I=IAZXAXAA=+-11++-+=+1+1-1++==IIII==+1-111A++11==IA-XZXZZ-XXM==-Z-I++IAAXA=+-====+I====1 -AX---
+                                                                                        C     C   CCC C                          CCC
 I=+1+11         1+++=+1+=I+=+11+=I==1===AXZZZXA==+1--- 1++++--=I===1=II+-+1 -- 1---1==++=AA-M-MZXA-M-AX=++=IAI===+=+1==IXXAA+ -11ZZZ
+                                                                                           C C    C C
 ==+11 -         ++=+=+11+=1+1-1+===IAI=IAIAAXAIII=-     +==+11+IIA=1=II=1+- --     1+11-1=IX-Z-XI=-=A1==1-+AIA1==II+=I=X--ZX=IAIA-XZ
+                                                                                            C C   CC                    CC       C
 I=1++1--  --    -1==++11+11++++II=IAI==AI-IAXI++AI1--   1++111+=IAAI===I+1   11 -   -  1+=X-M--MIA-MX11=+ -=AII=I==+AIA-=M-ZZXZ-M-AZ
+                                                                                           C CC   C                    CC C    C C
 =I===++1111--1 --1IAI==+++-1+=IAAAAAIIIAI=AXAAI+==11-   11 -1+IAAIIAIII=+1- -1         1===IX--ZIA-=MA1+=11=IAA=II==IX--=-M==MZMM-A-
+                                                                                             CC   CC                  CCCC CC    C C
 II=+===+1++11+- -1==III==+--+=IZAXII==IX=IXAAA=1+I=+---+1  1++=II==II====+1+I=-         -11==A=AZXXMMZ=+=1AI=IA+=AIII-M--M===-X---Z-
+                                                                                                                     C CC CCCC CCC C
 I==+====+==11++-1+++=IIII=-1=AIAAAAI==IA=AZAII+==AI=+11==111+1+=++++====IA11=+1   -     -1+=+I+=M-XI-XXXZAAAIIAA=IIIIX-ZX==MM-AXXZMM
+                                                                                                 C  C                 C  CC  C
 I=++=III==+1++=+1==+=IIIIA=++IIIAXA+-=IA+AX=+===II=I++11+++=++1----11+=AIA+--1--   ---  -+=+=1IZZZZAIAZXZ-XI=1IA=III=X-XI==-M-AZXZMZ
+                                                                                                         C            C  CCC C
 I===AAZAAAIII==- ++==I=III=++=IA=XXI+=XA=AA==III=II+=+1111+AI++1-   11+IAI+-++-1    +=+IAXA=+1IAAZZZ==XX--1XA1==IIIIAZZZX-++=MXZZ--Z
+                                                                                                        CC               CCCC    CC
 IIIIAAXZXXAAX=I=1=+===+==I=+==IAIAAA1=ZXAXA+IAII====++++1+=AI=+1-   -++=I==1==+=+11+IXAXX=-==+1=1ZM-ZAZZ-MI=A+1+IAI=IZZZ--++=MZZM-ZX
+                                                                                         CC        C    C               CCCCC    C
 II==IAXXIIAZZII====II+=1-+1=IAXXXIIX=IXIXXXIIIIIIIAI=+1++==II=1-    -++IIIA-IXXI=I=IZAZMXZZXI==AIX---ZXZ--X+A=I=IXI=+X---==+--Z=AZXZ
+                                                                                                  CCC   CC            CCCCCCCC
 I====I+=IAXZXAI--IAAAII+ -+=AAXZXXIII=AIXAAAA==II=AIA==I=I=I=+---   -=+XZZZAXM=XXAA=-ZZ-ZXX-XIIZZM--A1+XZZ-XAIXI=AI=IXXAZ=++M-Z+I-IZ
+                                                                              C     C  C   C      CC      C              CCC C   C
 =I=+--1=IAXXXII==AAII=+--++1=IAAXAAIIII=XXZZXAI===IIAIIA=AI=+++-111=++=----ZZ----ZAIIXM=MM=ZAZXMZA-IX+1IAZ-Z=IIIIAI1=+IIAZM=MMX+II1A
+                                                                       CCCC  CCCC      C  C               C                C
 =I==--+IAIAXXIAI=I+++111==1-=+IAAAA=IAXAAAZZZAAA=III=IAA=II==II=I=====A--ZMZZ-IZZZXX-ZM=+MMMZMZ--X=XZXA-ZZZZ==I=II=11==+IA---MX==+-I
+                                                                       CC    C      C  CC      CC      C                  CCC
 =++=++=AAAAXXAII++   -1+=++1I=IAAAAIAXXXIXXXZAAAIAI==IAI-1+1=IIA=IAIIAXXAZZZXXZ-ZX-ZM--ZZM-=-M-ZM+==M--MMZXIIAAAI=+=====AXX-MMZII=++
+                                                                               C  C  CC   CCC C  CCC CC                    C
 ==+===AAAAXAA=I=+1  11-1++11==+=AA==XXIXAXZXXZAXZM-AAZAI+1---==AI=IIIII==II=AI+IAAZZ-MMMZZMZ-=MXMM==M-AZZX-AXAX=I1=AI=+1+=XX-ZX=AI+1
+                                                  C                                 C       CC    CC C    C                 C
 +=====IXXXAIII=11--1++++======II=AAIXXAXZXX-XAXZ-MMZZMZIIII+=I=AII1A===1I+++IXIAXM-M--M-XZZIAZ==ZZZM=---ZZ-MIIXI=+XI=111-1=IXZXA+=+-
+                                           C    C                                 C CC C      CC    CCCC  C
 =++++=IAAAXAI=+++ -+=++=III=+=I=IXXAXXXXZZZZXAIZ-MZZ-MMXZZXI=I=IXA===1+ =+-+=AZ-XZXMM-M-IZ--Z-MM-XZZ-MZMMMM+MMZI==XXA=-  1+=XXZZ=-1-
+                                                C   C                          C     C C  CC C  C   C      C
 =+1==AIAAIIA=+11++1=+====I====+1+XI=AAAZ--ZZXAIXXXZ-==+-M=MZXI=IIA===111+--++=IZXAZ==MZZXZM=M--===MMZ--Z-M-Z-=ZI+IIIX=-    =IAAZ=1-1
+                                        CC         CCCCC C                         CC      C CCCCC   CC C C CC
 ==+=IAAIII=I+1+++=+===II=+=II+11+I==AAXXXZZZXIAMM====+====MMZXI==AA=XAXA===+IXZAIXA==MXZZ-XMMM-ZX===+---ZZM-I--IIX=II=1 111IAI=A1-1-
+                                                 CCCCCCCCC                         CC    C    C  CCCCCCC   C CC
 +++===IAIIII+-+==I=+I+IA++==+==1+==1=AXAXXZXAIZ====M-====ZM-ZAIAXAXXA-ZXXIA+=Z-M--AAZZZ-Z-ZZ=MM-ZAM===M=M=--=-ZIXXAAAI+1=1==XA==1---
+                                               CCCC CCCCC  C         C        C CC     C C  C  C   CCC C CCCCC
 1+==1+=II=+I+1+++===I=IA++II===+==+-1AAIXXZZZZ-MM=MM-====MMAAI=X--XXAZXAIAZAIXXM=ZAX-XM==---=MM-M-ZMM=MM=M--+=-ZXZZAXIXAIZZ=A=I++1 -
+                                              C  C  CCCCC       CC              C   C  CCCCCC  C C   C  C CCCCC
 11++11+=I====+=11+==III=++AIII=+==++=AA=IA---Z---MMM-=====+XAI+IZ=-IAI=AAXM=M--ZZXX-M=+==MMMMZZZM=M--M+M="+MM++=Z=ZZAZM--M-XII=11+=-
+                                          CCC CCC   CCCCCCC      CC        C CC    C CCCC        C CC C C+C  CCC       CC C
+                                                                                                         C
 --1-- -+==I=+=+==++===I+++=AIX=++=A+=AI==A--ZZXZZ-MM==++=+"-A=++AMA=ZAIIIZ+===M-ZZXZMM-==+MZAAI--=--ZAZMM"-=M=++XZ=XAZMMMMZAXZ==+I=1
+                                          CC     C  CCCCCC+C              CCCC C      CCCC      CCCC     +.C CCC
+                                                          C                                              C'
+                                                                                                          X
+                                                                                                          C
 +1-- - -11==+====+1==II=+++=II==IIM-A-MM-XM+MMIIX-MMM==M=-MZXII=-++M-ZAAXZMMZXZZ---ZZI-+ZMMMA =AA-ZZZAAZ-=""+MM+MZAIIAZ-=+AZXX=====+
+                                   C C  C  C     C   CC CC      CCC C           CCC   CC         C      CC++C  C       CCC
+                                                                                                          CC
 ==1- --11-1++===1-++====1+++====AIZ--=+""++"""I+ZMMMMMM-==MXXXXX=++=--ZZAA-MI=X-==-ZX-==--+=-XXZZXZ-MZXAX-++"+M+=-XXI=ZXZMAMZA===I=I
+                                   CCCC++CC+++         CCC      CCCCCC    C    CCCC  CCCCCCCC      C     CCC+C CCC
+                                       CC  CCC                                                              C
 =++1- -   -++==++1+1++=1+=IIA=+=IIAXX=""""""""XIZMMMM---MMMAIX-ZM==MMM==ZAZ-A=I-==-XZ-MM-M==MMZXIAZMMZZXZZ-M-+=""MZX=A-ZX--+=XZX==IZ
+                                     C++++++++       CCC      C  CC   CC   C   CCCC  C  C CC              C CCC++     C  CCCC
+                                      CCCCCCCC                                                                 CC
 11--- -   -1+++1+=++11+=IIAAAI=+=I==A+""""""""-ZXZM=-ZZXZM==I-A+M==Z-=-=-AAMMZ=MM++MZM-MMZ===M-I=IAZZZXIZZ-M++"++=-XXZM=ZIZ="M=-XAX=
+                                     C++++++++C    CC     C  C C CC CCCCC        CC   C   CCC C           C CC+CCCC    C   C+ CC   C
+                                      CCCCCCCC                                                                C             C
 -- -- -- -1++1=++===- 1=I=I==II==A=++=""""""""MZ--M-AXZ--ZA+XM="="+M-M-ZZZX-MZZM=+---ZZZZXX--MX+IIAAXXXAAZ-MM"-++=--MX-=MZX=+MM-ZZZ-
+                                     C++++++++  CC C   CC     C+C+C C C    C    CCCCC      CC             C  +CCCCCC  CC   CC  C   C
+                                      CCCCCCCC                 C C                                           C
 1       -11+11+1+=I=1 1=====IAA=III==="""""""+=Z-M-MXIAZ-XI=XZZ++"+++=MXX-MZ=MM==+MZZM-ZZAAAZZZZII-M=M-M-==+==--MMMMMXX-ZZZ+=ZM-M-=M
+                                     C+++++++CC C C     C      CC+CCCC   C  C  CCC    C           C C C CCCCCCCC       C   CC  C CC
+                                      CCCCCCC                    C
 1 --   --- -1-++=III===I=I=IAAA=IAAIIM"""""""++--=-ZI=IXM-AXZZ-+MM=""++-XZ-Z++==MM++=+===MXZZZZMMM+"++M==+++"+MZXXZM=-IXXZ-++--ZMM=Z
+                                      +++++++CCCCCC      C    CC  C++CCC  C CCCC  CCCCCCC         C+CC CCCCC+C      CC    CCCCC   C
+                                      CCCCCCC                      CC                              C        C
 -1-    -1 ----1+=II+==I=II=AIIII=IAXXZMM-===="MAAXIAAAXX=XIIAZ-Z--M++=-XZ-Z-++==++"-"M==++=-XZ-M==MMZ++-=+"+-"=XX=+X-MZ+MX-==ZZZM-MM
+                                        CCCCC+          C     C CC CCCC  C CCCCCCC+.+ CCCCCC  C CC   CCCCC+C.+C     C  C  CCC    C
+                                             C                                    C'C                     C 'C
+                                                                                   X                        X
+                                                                                   C                        C
 --       1--++1-+I=IA=IIAXIIAAA=IIAXXXX=IAXZAAXIAXAZZA-XM-IAIIZ-MM==M=XAX-ZAM=M==+""-+MMMM--ZIXM++"++==----=+-"-AIAI+Z-+=ZMMMXIX-Z-Z
+                                                      C  C     C  CC C   C   C CCC++.C    CC    CC+CCCCCC..CC.+C      CCC       C C
+                                                                                  CC'             C      ''  'C
+                                                                                    X                    XX  X
+                                                                                    C                    CC  C
 -        - -1++11+IAZII=AAIIXAI=IIAAAZAI=AA=11IIXXAAA=XZZA=II+AXZMM-ZXZAAZZZZ-MZ-""--"+==-ZXAAZ-=+"++==++"-"="-"+MMZXX-+=M=---IZ-ZAA
+                                                                   C         C  C++..+CCCC     CCC+CCCCCCC.+C+.+C     CCC CCCC  C
+                                                                                 CC''C            C      B'C C'C
+                                                                                   XX                    HX   X
+                                                                                   CC                    XC   C
 -   ---    -+++=1+IAAAAAI+IXXAA==A==IXAAAI=+  ==AAI=+1+AII=II=AZZ--Z-ZXAXZZZAA+M=""-"+++==MZAZ-M-M++++M=M""""-+"=M=-ZXZ--M=M--XMZZA=
+                                                                 CC C         C C++.+CCCCC    C C CCCC C +CCC.C+C CC   CC C CC
+                                                                                 CC'C                    CBBB' C
+                                                                                   X                      HHHX
+                                                                                   C                      XXXC
 1 -111-     1++=++=IIAZAAIAAIIA=+--1-AZXAAI1-1-1AXXII1+1==+I==IXXZXXXZZZ-ZZAZ+"=""""+"++=-XA--MZZXAM+M=+MX"""-++=-XZZZZX-====-Z=--AX
+                                                                        C    C+C++++C+CCCC  CC      C CC  +C+.CCCC      CCCCCC CCC
+                                                                              C CCCC C                    CBC'
+                                                                                                           H X
+                                                                                                           X C
 1111-1-     -1++=+1IAAAXXXAAAI=+1  - =AIIXAII+1+AXZXX====+1=IIIAAXXXXZXAZMMAAM=++"+==+""==ZA-MMM==ZAZ-XX-XZ"""+MM-XZ-ZM+"MM-M==MMZZZ
+                                                                              CCC+CCCC++CC  C   CC   C  C  +++C  C  C  C+  C CC
+                                                                                 C    CC                   CCC          C
 1+=1+-1--  --1+1++ 1IAXAAII==+1-    -=AAIXZXX=1+XZ-XA=IXIA==I=I=IAZA+IIIA----==M===-Z=++"=M-Z-MMM=MZAXAXXXXZZM-ZXXXXZZM++MMZ-====---
+                                                  C                      CCCCCC CCCC CCC+C C C   C            C        CC   CCCCCCCC
+                                                                                        C
 ==I== -1-    -+-+1--1IAI=+11--     -1IXXZZ-MZA+1AZMMZIIX=A=+==AIIXXXIIIXXZ-Z-+==-M-+I-M+""M-ZZMM-Z-ZIXZ---M-X-Z-XXAXZ-M==M=====MMZZ-
+                                          C                               C CCCCC C  C C++ C    C C    CCC C C C     C CC CCCCC    C
+                                                                                        CC
 =++I=  1-   ---1=====II=+I+1-      -11IIAM=-XI=-=AZZ-AA=I+1 ++=++=XXAA=IX-MM-MMMZ-M=M-=="=M-Z-ZZ-AAXXZ--=-Z-ZZZXZXXXX-M--=++---ZXXZZ
+                                          CC        C                    C  C    C C CCC+C C C  C     CCCC C         C CCCCCCCC
+                                                                                        C
 AA==+1---++1+--+1=IAI=XXXAI+1--    1===+A-MZ==++==AIX=II111--++- 1IAIIIXZ---MMMMZM=+=M-M+MXXXZ-MMAXZM++===M-ZZ-ZZXAXXM==MMXII=+==AAA
+                                         C                               CCC      CCC C C     C      CCCCC C  C       CC
 ====+++=1=AA=11==11=A---ZAI==+=-  -==IIAAAI=======AAXAA=+1-  -1+=IAA=IA-M=M--Z-MXXM--ZXAXXXAAXZ--XZX-=""++=M-X-XXXXA-==+MMZ-++-=+1++
+                     CCC                                               C C CC C    CC          CC   CC++CCC C C     CCCC
+                                                                                                      CC
 IIII=+=I+=IAI=+IA=+A-=MMZXA=+AA+11=I=IIAI+IAX++=I=IAXAI=+-   11+IAAI=AX-=====Z-==ZZXZ=MZXZM-ZXXXZXAXZ-=M--ZAAXXZXXZZZM---MA+1- ---
+                    CC                                                 CCCCCC CCC    C     C         CC CC            CCC
 =+AIA=AA==III=IZXX=++=MM-MZ==AAA====IAA=11=I=+1--+=IXA++-1++-111IAAAAIZXZM-M-ZMM=-MM+"==XXZ---AAAAAZMM--ZAAAI=IAIZZXXX-A+I111-
+                  CCCC  C                                                 C C   CC  C+CC   CCC        CC              C
+                                                                                     C
  1AXXAAAAIIAAAXXX="-+-M--M-ZM-XA==I==IA=IA=1-1+ +=AAAAAAIAA=1+==+AAZ-Z-ZXZZ-Z-+++"-"===-ZMZZ-ZAIIAAIIXXAAXZXAIAIAIAIXAI+--1-
+                 C+.CC CC C  C                                      C C    C CCCC+.+CCCC    C
+                  C'                                                             C'C
+                   X                                                              X
+                   C                                                              C
  1=AXZAZZZXAXXXXA-+M--ZZZ-Z--XAAI==++=A==++-   +=+AIXXXXXXA======AAZZXXZAIXXZM=++++=M-==+=-MMMZXAI+==I==IXZXZAAAAXZXXXA+-     ---
+                 CC CC   C CC                                                 CCCCCC CCCCCC
 ===IAZX---ZAZZZXAZAIIXZ-Z-MMZA=AXAIIIAA==1I1 - +=1=AXZXXXXAI=++II=IA=IAAII=A--++=++MMMM-===M=M-XAI==IIAI=AAZZZAXXZ---ZA+-  -  -1-
+       CCC             C C                                                  CCCCCCC    CCCC C C                   CCC
 AA=XZ--Z-M-ZZZZXXXAAIIAZX---AAIAXXZZXXAA==I+1- 1+-=AXZAAAIIAI+- =IXZXZ-ZZAAZXM"++"++=+==MM-ZZXX-AXAIAAXA+IXXZ-MZ-MZXAZXA+  -  ---
+     CC C C              CCC                                          C       +CC+CCCCCC  C    C             C  C
+                                                                              C  C
 ZXIXZX--M==M--ZZXXX--XXXZZXI=II=XZZZ-XAAAIAI+  +==IAAAX==IAXII+-+IZ-M=++=XZMM+"""-""+++M-ZA=IXXA=IAX-ZXZXAAAXZZXXXXX--ZXI1-     1---
+      CC CC CC     CC               C                              C CCCC    C+++.++CCC C           C               CC
+                                                                              CCC'CC
+                                                                                 X
+                                                                                 C
 XXAIIAZM=++==++=Z-Z--XAXZXZA+IXAZZ-Z-XIXZXXXI-+===AAIII-+AAI=XAAIAX-=+++==++=+""""""+M---XZXXXXXIAXXZAXXZXXAIAAAIXZ-ZZ--AI+    -++++
+        CCCCCCCC C CC             C C                              CCCCCCCCCCC++++++C CCC                          C  CC
+                                                                              CCCCCC
 XAA=+=X-+====""=MMMM-----ZZZXIAA-MM-ZZXXZZXXI==I=1IXAAIIIZZXIXXZXAAIM+""++"+++"""""++M--ZXXXAA=I====AZAXXXAXXAA=IXZ-XX-ZZXI11 -1=+1=
+       CCCCCC++C    CCCCC       C  C                                 C++CC+CCC+++++CC CC                           C  C
+             CC                                                       CC  C   CCCCC
 AI=+11I-==-M===-Z--M-=MM--ZAZZXAZ++-ZZZZAAZXAIIA=+AZXAAAIX-XAIAZZXZM==+"+++==+"++"+++M-ZXXXXI=I=++++=XAAAAAAAXXAXXZZAII-ZXA+11+1==-1
+       CCCC CCCC CC CC  CC       CCC                      C         CCC+CCCCCC+CC+CCC C                                C
+                                                                       C      C  C
 AII+1+=IZM-MMMM-Z=MMZM====M--ZZ-=++++-ZZZ-XXXAII==AXAAX--Z--ZM--MZ=+""-+M+=====+++=MMMM+-MM--ZZXXAI+IAXAZM-XI=AAAAXI=++AX=++-+=+1===
+          C    C C    CCCC CC  CCCCCCC   C             CC CC  CC  CC++.C CCCCCCCCCC    CC  CC             C
+                                                                    CC'
+                                                                      X
+                                                                      C
 A==11+1IAXMMM-M-Z=+=+==+"++=MMMM=MM+"+--XXXAAAII==IAA-----MMM======+"-"+====M=M=M----M==-MMZ-ZXAXXX==IIIX-ZAX=XIAAXA=+=I==1===I+-AXI
+             C C CCCCCCC+CCC    C  C+CCC             CCCCC   CCCCCCC+.+CCCCC C C CCCC CCC   C            C
+                        C           C                               C'C
+                                                                     X
+                                                                     C
 II+1-I-=Z-MM--M--==+"-"--""+++=MM-Z-+"++-ZXAXAXXZ--X---MZM==++++++""-"+MM--M=MMMMM===MM=--M--ZXAAAI==+IAZZZAXAXAXAAI=IA==++=II=1 1==
+      CC C  CC CCCCC+.+..++CCCC  C CC+CCC        CC CCC   CCCCCCCC++.+C  CC C     CCC  CCC CC
+                    C'C''CC          C                            CC'C
+                     X XX                                           X
+                     C CC                                           C
 AI=++++-"==MM=MMM=+""""-----"+==MM--=""""+=-M======MZ--M--===-="+"-""=MMMM=+==MM-MMZM==MMM--XAAIAI==+=IZZXI==IIIII==+II=I=1+IA=- --1
+      C.+CC  C   CC++++.....+CCC  CCC++++CCC CCCCCC  CC CCCCCCC+C+.++C    CCCC  C    CC   CC
+       'C          CCCC'''''C        CCCC                      C C'CC
+       X               XXXXX                                      X
+       C               CCCCC                                      C
 XAAIA=Z--+=MM+++M=+"-""-----""++=MMM++""""++++=++++"ZM=MZZXX-=++="--+===-M====+++=MMM--ZZMZXXAAII=AAIIXAI==I=IIII+AAII=IAI+1===--  1
+       ..CC  CCC CC+.++.....++CCC   CC++++CCCCCCCCC+  C     CCCCC+..CCCCC CCCCCCCC   CC
+       ''          C'CC'''''CC        CCCC         C             C''
+       XX           X  XXXXX                                      XX
+       CC           C  CCCCC                                      CC
 XXXIIAIM=="===M==+""--------"""+====+"+"""++"+++=+"+Z-MM--X-="+"""-"+=-=--M++=""+=M--ZZZZ-XAXAIIXXXXIAXII==+===I==AIIIIIAI-1+1=1++1+
+        CC+CCC CCC++........+++CCCCCC+C+++CC+CCCCC+C C  CC CC+C+++.+CCCCCC CCC++CC CC    C
+          C       CC''''''''CCC      C CCC  C     C          C CCC'C          CC
+                    XXXXXXXX                                      X
+                    CCCCCCCC                                      C
 ZZZAIAXZM+-+++MM=M+++"---""+""""+===+++++++++=+++"-"-==-M==+=+"--+-""+MMM==+++"++=M-Z-ZZZXZZXIIII=AI=IAI=+==IIXA==IIIII==+--11====I=
+         C.CCC  C CCC+...++C++++CCCCCCCCCCCCCCCCC+.+CCCC CCCCC+..C.++C   CCCCC+CCC C C
+          '          C'''CC CCCC                 C'C          C'' 'CC         C
+          X           XXX                         X            XX X
+          C           CCC                         C            CC C
 Z-ZZXXZXM+--"+MZZ-MMM="---"+"+""++MM==+=M=====+M+"-"+++--Z=++""--"---"++M=+M=++++===MMMZAAZZIZXII-=-AIAX=+=AAXZZA=I=+=I==11111==ZA1=
+ C       C..+C   C   C+...+C+C++CC  CCCC CCCCCC C+.+CCCCC CCC++..+...+CC CC CCCCCCCC             CCC
+          ''C         C'''C C CC                 C'C         CC''C'''C
+          XX           XXX                        X            XX XXX
+          CC           CCC                        C            CC CCC
 XM=-M+=M=+"--+=-ZZ-=M++""-"+++++++=M========++++=="""MMZ-M=""-"""""+--"+==M++==+++==MM-ZXZ-ZX+=AZ-=MX===I==AXZZXIXXIIIZIXXAI1=IX-X=I
+  CC CC CC+..CCC  CC CC++.+CCCCCCCC CCCCCCCCCCCCCC+++   C C++.+++++C..+CCC CCCCCCCCC  C   C      CC                             C
+          C''          CC'C                       CCC      CC'CCCCC ''C
+           XX            X                                   X      XX
+           CC            C                                   C      CC
 X+=A-+"="++""==MXX-=MM=++"""++++++=M=M========+=MMM+++ZAZM=++""++"++++++M=+++=========MX-==-I=++AAXZI==AI=IAAAAAIXAAAIAIXXAA=1AXAXI=
+ CC CC+C+CC++CC   CC  CCC+++CCCCCCC C CCCCCCCCCC   CCC    CCC++CC+CCCCCC CCCCCCCCCCCCC  CCCC
+      C C  CC            CCC                                 CC  C
 -"=Z=++-""+=MZ==XAZ=M-==+"""+++++++=M===M==MMM==+M-===ZAAZ-M+=+=MM+"++=XA="""+MM==M=++=M=++MXI+=1AZXZ=+==IAII++==XIXAI+=AAX=I==ZIAAA
+C+C CCCC++CC  CC   C CCCC+++CCCCCCCC CCC CC   CCC CCCC    C CCCC  C+CCC  C+++C  CC CCCC CCC
+ C      CC               CCC                                       C      CCC
 M---++-Z++=MZIZ-ZXM=M====+++++++++++===M-MM--ZZ-M--M=M==ZZZX="-"+=++""M++-M=+"++"""+"+=M=+=-XXX=+ZX+=1-=IA+=AI++=+=AA==AAAXAZAIA+=-Z
+ CCCCCC CCC    C   C CCCCCCCCCCCCCCCCCC C  CC  C CC C CC    C+.+CCCC++   C CC+CC+++C+CC CCCC                                      C
+                                                             C'C    CC       C  CCC C
+                                                              X
+                                                              C
 XXZ-=M=MMMZMM---ZM=+++++=Z==+==++++++=M-ZXZZXXZ-M====-++=ZXZ=++++==M+=-ZAXZ--""""""""+=======XZ+1-XXA11+++=IXI+=1-1====XXXZXAXXA=AZ-
+   CC C      CCC  CCCCCCC CCCCCCCCCCCC C       C CCCCCCCC   CCCCCCC CCC    CC++++++++CCCCCCCC                                      C
+                                                                             CCCCCCCC
 IAZ-+=MZ-ZAAX=-=-==++++++-+==MM====+==MZAZZ-ZZ--+++=+Z-==-ZZMMMMMMZAZ-ZZZXAZ="-""++"+==+===MMMXAIIZX=--1++AXA=I+-11==I=ZXZZIIZZ-AZM+
+   CCC  C    CCCCCCCCCCCCCCCC  CCCCCCC     C  CCCCCCC CCCC           C      C+.++CC+CCCCCCC                                    C   C
+                                                                             C'CC  C
+                                                                              X
+                                                                              C
 IIX=++MZXXA==XAZAIAZM+++++====MM=++===M-X--MM---+"+==ZAMZ--XIZ-M-ZX=IAX-XZZZ=+"==++==MM=ZZXIAXI--XZA=++==AII=IA+11-1IA+AAZZIIZM==="=
+   CCC               CCCCCCCCC  CCCCCC C CC  CCCC+CCC    CC   C C      C    CC+CCCCCC  C       CC                              CCC+C
+                                                 C                            C                                                   C
 =AI-+++MAAII==+=1  -=M=-+=+===MMM=MMM=MMMMMM=MM-=+"+M-"==-ZXAX---M-ZZXIX--MZZ===+-AXAZI+=+I=+-AXZAX=XAXXAIA+II-++ -IXXAX-MX+I-=+=+++
+   CCCC               CCCCCCCC   C   C      C  CCC+C .+CCC    CCC C     CC   CCCCC                                      C    CCCCCCC
+                                                  C  'C
+                                                     X
+                                                     C
 XXZ-=""+MMZ===1      =Z-M-M=+==++==M=+MMM==M===M+++"""+XMZXXAAA--Z---I-IAXZX-ZXZZAIAI=-+==I=XXZZX==XAXXZXXIIX=+I+-=AXZX--M-AZZ=+===Z
+   CC++C               C C CCCCCCCC CC   CC CCC CCC+++C        CC CCC       C                                          CC C   CCCCC
+     CC                                            CCC
 XXM+"""""+MI11-      -IXZM++++++M=====M======+==+=+""+-AAXA=AAAXXZ--ZAIXXAAXXI+AAZA=IIXZZ--ZXXZZX=XZ-ZXXAA=++=XXI-AZZ-ZMZMM-ZZ-=M=MX
+   C+++++C                CCCCCC CCCCC CCCCCCCCCCCC++CC           CC                     CC         C                C     C  CC C
+    CCCCC                                          CC
 -ZM+"""""=Z=1--      1IZ-M=++""+=+++==M+++++++====++++MZXXAAAXXZXZ--XZZZAXXXAI+++ZXZM---Z-ZXXZZXIAZZZXZZI1+==X-ZI+AXZZ--M=-XXM--ZMMZ
+C  C+++++C              C CCC++CCCCCCC CCCCCCCCCCCCCCC            CC                 CCC C                    C       CC CC   CC
+    CCCCC                    CC
 ++ZZ-===MZA=++-    -III--M=++++++""++==++++++MM=++MAZZMAAIXAAXZXXZ--ZZZ-XA1+II =I-=++=MMM--AZ--X-Z-XAXXZI1=ZZZ-Z=AIXXXAXMM-IIMMM-=MM
+CC  CCCC               CC CCCCCCC++CCCCCCCCCC  CCC                CC   C         CCCCC   CC  CC C C           C           C     CC
+                                 CC
 =M-AXAIXX==AX=I+=++1IXZZXXZ-M--++++++=M=+++===Z-=MZXZ=--IAA=++=IAZXZXAXXI=1111=+-=+"+==M---AIZ-Z--ZZZ-XZXIX--ZZXIIAZ-Z=ZMMX+Z=+==+MM
+C C                        C CCCCCCCCC CCCCCCC CC    CCC                        CCC+CCC CCC   C CC   C     CC       C        CCCCC
+                                                                                   C
 MX-MM-X==+1=ZXAZZZXIAZ-MIAX-M--MM++MM-AM=MM==MZ-MZXZZM=+AII1-11=IXAZXAA=11+1-  =MM+==++=--ZIIZ--MMM-MMZXZX-MM-XII=A--ZX---XIZ=+M=+=-
+  C  C                C    C CC  CC  C  C  CC  C      CC                          CCCCCCCC    CC   C      C  C     CC  CCC   CC CCCC
 -XM=++=-XI=AXZ-MMM-=AZM=Z=IZZAZMM=+Z-XIXZXZMMMAAXXXXAXXZXXA11+++AAAXXXI11=XXZI=XZ-=="++=-ZAIXZMM=-=M==XZZZM=-AXIXIX--XZ=MMAIZM====MX
+C  CCCCC      C   C    C         CC C                                            CCC+CCCC       CCC CC     CC      CC  C      CCCC
+                                                                                    C
 Z=AXZ-M+M--MZIXM++MZA-M=MZZXZ-----MAXI=I++I-=+---AAXAXIXZZI=+III=AZXA==+1I-====--==+""++ZAI+IZMMMM=M--Z=-ZMMZXZXX=AMMAZ=MM+=--M-Z=MZ
+     C C CC     CC   C C     CCCCC         CCCCCC                         CCCCCCCCCC++CC          C CC CC              C    CC C C
+                                                                                    CC
 MMXIIZ-+=M=-AIIA-==M--=====ZZ-ZAXXZXX===+AX-=+==MA===AXZZXI=IXXAIAAII=II=M+""+M++++"""==AIIIIZ-X-X+=ZZ===Z-ZZZZZAIZMMX-=M-=X=MMI =-M
+      CCC CC    CCC CCCCCCC  C             CCCCC                          C++C CCCC+++CC      C C CC  CCC C           CC C  C     C
+                                                                           CC      CCC
 A-MZA-MZ-IAIIZA=A-=-+++++--XX-XXI=A--I++IAXZ-==M-AXA=IIAAAI=IXZZXXA+IA1XM+++++""+""-"+=ZAAXX---X=++MZMM==ZZ---ZZIIMMM-Z--ZIZ==I   X=
+ C   C  C        CCCCCCCCCC  C     CC       CCC C                        CCCCC++C++.+CC     CCC CCC    CC  CCC       C CC   CC     C
+                                                                              CC CC'C
+                                                                                   X
+                                                                                   C
 +IZZXXA=====AXXXXIA+M="""XA+AM-A+IZ=+-A==AXX-M===ZAIIIIAXXIAAZ--ZIIIXZX=++ZX+""++""""MZX--ZM==MM===ZZ=--ZX--MM-AIX-M=Z-Z--=X=MA  -I=
+                     C+++     C    CCC      C CCC             CC       CCC  C++CC++++   CC  CC  CCC  CCC  CC  C   C C C CC  C      C
+                      CCC                                                    CC  CCCC
 A+ +  -++=IAAAX=A=AIAM+M=AI=XM+MZ=""="M-A+=IXZZ=+-XI=XI+XXXIAX-ZI==XXX+++++=+""+"""+MIA+=Z-+===MZZ-ZZ-XZ--=-=M-XA=-M-M=X--+Z+--ZZXXM
+                      C C     C  C++C+ C       CCC            C       CCCCCCC++C+++C   CC CCCCC   C  C  CCCCC C   C C C CC  CCC
+                                  CC C                                       CC CCC
 -X=+     -+AI=111=XXXAXAIIAX=+""M+++++""-I+IAIAA=XXXAIIIIAAIAXXI1-XMZ="+++""""++"""=XA==ZZ==M=MMZZ-M--MMMMM----ZA=XM-+MZZZ=XMMM=MXA=
+C                           CC++ CCCCC++C       C                    C+CCC++++CC+++C  CC  CC C    C CC     CCCC     CC         C   C
+                              CC      CC                              C   CCCC  CCC
 ZXXXI+1 - +=II=I=IZ--ZAZXZM=+=M-XAXXZZ=+MXI====IXXXAXIIAIIAAAIII=+X++""+++""++++""=-XM--XZ=MZM=MZ-M=MMMMM-MMMZZZA=I-==Z-ZA+I-MM=-IZ-
+                   CC      CCC C      CC                           CC++CCC++CCCC++CC  CC  C   C  C C     C         CCC C    C  CC  C
+                                                                     CC   CC    CC
 -Z-ZZ-ZXA+11=XZ--X--ZZX===""""=ZAIII==I--ZX==I=1+=AAXA=IIAIAAA==1==+""-""+""++"""=MZM+=-Z-MMZZMMXXM=MMM-MMM=MZZXXIIA-ZZMZAI=Z+=M-AM-
+C C  C         CC CC   CCC++++C        CC                         CC++.++C++CC+++C   CCC C         C   C   C        C        CC C  C
+                          CCCC                                      CC'CC CC  CCC
+                                                                      X
+                                                                      C
 ---ZZMMMZZXX=XAZZM-=IAXM+"=-+"+--ZIAIAIIZZ-A=I=+=II++=+1III+-- IZ+==M=""""-"+""-"=MMMM==-=M=MM--X-MM-=ZZZMM=Z-ZZZA=III--XA1-Z==-Z-M=
+CCC               C     C+CCC+CCC         C                      CCC C++++.+C++.+C    CCCC C  CC C  CC     C C        CC     CCC C C
+                         C   C                                        CCCC'C CC'C
+                                                                          X    X
+                                                                          C    C
 -----MMMM-=1AZMMMM=MMAAZ--ZXZ-ZZMM-XZXAXA=--=+11=II+=1===+-=A=IZ-M==-"+""""+"""""++=+++=++++=M-ZZM==-M-MMM=MZ-ZZZZ=XXZZZAXI=Z=+=-==+
+CCCCC    C        C     CC   C    C       CC                    C CC.+C++++C+++++CCCCCCCCCCCC C   CCC C   C  C               CCCCCCC
+                                                                    'C CCCC CCCCC
+                                                                    X
+                                                                    C
 Z----MMMMMX1XZ-=++++=+1Z-ZXZXZ-ZZAZZZXXXAIIX=1--+=+=I++11=XZXAXXAX=M"""""""""-""+==+"++""+++==--MM==-=M===+==---MZAXMMMM-ZXXZM++-MM=
+ CCCC         CCCCCCC   C     C                                   C +++++++++.++CCCC+CC++CCCCCCC  CCCC CCCCCCCCC        C     CCC  C
+                                                                    CCCCCCCCC'CC    C  CC
+                                                                             X
+                                                                             C
 ZZZZ--M---MZAA-=++"++I=-=-Z--Z==-XZZXZ-AAA=I=1- 1- 1+++ +IA+IAI=+AAAM+"-"""---"++++++++""+=+=M-ZM===M=MM==++==-MMAAZ=M-=M-XZZX-=-MMM
+    CC CCC    CCCC+CC  CCC CC CCC     C                              C+.+++...+CCCCCCCC++CCCC C  CCC C  CCCCCCC     C CC C    CCC
+                  C                                                   C'CCC'''C        CC
+                                                                       X   XXX
+                                                                       C   CCC
 Z-Z-ZZX-Z---I=-M+="+++MM==M++=-=+MZZXZZZXAIAI+1    --1++1=+11+===ZXZ+M=-+"""""+M+++++M+""+==M---MMM=M=--M=M++=MM-XXZ---=+M-M-Z-M=A-M
+ C C   C CCC  C CC+CCC  CC CCCCCC                                   C C.C+++++C CCCCC C++CCC CCC   C CCC C CCC  C   CCCCC C C C C C
+                  C                                                    ' CCCCC         CC
+                                                                       X
+                                                                       C
 ZMZZZZXZZZZZAZMM=+++""+""=M===Z=+=-ZZXAAXAIIA==1 +- 1-++1=-++=IAIXM""++MX-===MZM+"+++++"++==M-M-M=--ZMMMZ====M-=MXXZZ-=++=+=-XZ==XXM
+                CCCC++C++C CCC CCCC                                ++CC  CCCC   C+CCCCC+CCCC C C CCC     CCCC CC     CCCCCCCC  CC
+                    CC CC                                          CC            C     C
 XZZXZZXXXXZ-Z-MMM=+="+=""+MM=M-=M--ZAIIXXIIAI=I+-++  -==+I=IXAAXAIX---ZAAAAAXAZM+"""++""++==--M-M=ZZZM=--M===MM=-XAZMM++""+M-XA++M-M
+           C C   CCC+CC++C  C CC CC                                CCC          C+++CC++CCCCCC C C    CCC CCC  CC     CC++C C  CC C
+                    C  CC                                                        CCC  CC                                CC
 X-ZXXZZZXX-M----===+++M""+-=++M-MZXZA+IAAAI===+ -++  =XA1IIAAAII=AA=III==11=I=XM=+""""""++M---MM=M-MMM=M==M=M==M-XA-==++""+=MXZ++===
+ C        C CCCCCCCCCC ++CCCCC C                                                CC++++++CC CCC  C C   C CC C CC C  CCCCC++CC   CCCCC
+                       CC                                                         CCCCCC                                CC
 Z-ZZZ---ZZ-M==MMM===++Z++"=++=+M-ZAXAAAAXIII=I=-1=   =AMXI+AI=AX=IXAAAA=++=A=IAAZZ-XM+"++=-M-M--MMMMMM==M-MM=-=MZX=AM=+"""+=MZMZZM="
+ C   CCC  C CC   CCCCC CC+CCCCC C                                                 C  C+CCCC C CC      CC C  CCC      CC+++CC      C+
+                         C                                                            C                                CCC         C
 ZZXZZ----ZM=MM=MM===++=+"-=""==MM-AIIII=IIIAAA1===--=AXXZIIII=ZZZZZZAAX==I+IAAXX-ZXXZM"++MMMMM-----M-M-ZZ-MM=MMZ-X=XMM+++++=MMMZ-=+"
+     CCCC  C  C  CCCCCCC+.C++CC  C                                              C     +CC     CCCCC C C  C  C   C     CCCCCC    CCC+
+                        C' CC                                                         C                                            C
+                         X
+                         C
 M-Z--Z-Z-MM=MMMMM=M=====+""""=--MZXI+++1=IAIAIII11+AZZXIXAXIXAZXZZXZXAII=I=IAXIAZAA-Z-M==++MM-ZZZZZZZ-ZX---MZ-M--A+X-=+++++========+
+ C CC C C  C     C CCCCCC++++CCC                                                   C C CCCC  C       C  CCC  C CC   CCCCCCCCCCCCCCCC
+                         CCCC
 M---ZZZZZM=MMMMMM=======+"""+=ZM-MZA+-  1==+=IAI=IAAM=-AIXZZ--MZZXXZAXI==XA=AXAIA=AAAZ-=-+++MZXXZXXAAXIX-M-M-MMM-AAZ-=+X+"++=M=++MM=
+ CCC      C      CCCCCCCC+++CC  C                    CC     CC                        CCCCCC            C C C   C   CCC C+CCC CCC  C
+                         CCC                                                                                             C
 MXXXXZZZ-M=MM=MM-MMMMMM=+"-"=AMM--ZX-1  +=+1-1=IAXIA-"+Z=AZ-M---ZIAAIIAAXZAI=AII=A=IIA--Z++=-ZXAAAI==+1=AZ-ZM---ZIZ-M=+M+++=MM====-M
+        C C  C  C      CC+.+C   CC                  C+C    C CCC                      CC CCCC             C  CCC   C CC CCCC  CCCCC
+                         C'C                         C
+                          X
+                          C
 ZZXXZZZ-MMM==MM--MM==MZ==+""=AXAZZZXIA+=+===--IZXXAXAM="-===MIZZXII+1AAIAZ-ZXXZZAIIAIAZ-ZZ=M-XAA1=1---  +ZMZ==--ZZ-MM==+=+"M=MMMM==M
+       C   CC  CC  CC  CCC++C                         C+CCCC              C            C  C C               CCCC  C  CCCCC+ C    CC
+                          CC                           C                                                                  C
 ZXZZ-Z---M======MMM==MM=+++==Z===AXXXZII+IX=A=+=AA--MZA==""=-AXXXZZXIAI+IZZXZXXAAAAIIAAZZ-=M-ZAI=+--- --AZ--==MMZZ-M=+=++""=+=M--===
+    C CCC CCCCCC   CC  CCCCCC                CCC  CC   CC++CC                            CC C             CCCC    C CCCCC++CCC CCCCC
+                                                         CC                                                              CC
 XZ----M---===+=MMM=MMM=++++M-X+  +IZMZXAAAXA-=+++-++M-XX=++MZZZZXZZXXXA=IZAAAXIIXXAIIIAXZ==MMZI==+---  =ZM-ZMMMM-X-M=+=++"+=+=-Z-=+=
+  CCCC CCCCCCCC   C   CCCCC C               CCCC CCC C  CCC                              CC               C     C C CCCCC+CCCCC CCCC
+                                                                                                                         C
 X-MM-MM--X-=+=MM------M=++++=ZX=AAZ-MZXXX=1IZ+++ZM="=MM-=MMMZ-ZZAZZXXZX=+XXAA==XXAXIA-Z1--M--XAI===+=IAX----M=M-XX=-M====++==MZ--=+=
+ C  C  CC CCCC  CCCCCC CCCCCC      C         CCC  C+C  CC    C                       C   C CC           CCCC C C  CC CCCCCCCC  CCCCC
+                                                   C
 X-MMMMMM-XZ-----Z--MMM=M=+++MXZ-AX-MZXXA=X--++==MM-"++M-MM=MMM=MZ--ZZ-ZXIIIXXXZZZXZ-MZXZ-A==ZZXAXXXXZ---M-MM=M=-ZXXZM=======M-M-MMM=
+ C      C  CCCCC CC   C CCCC   C  C       CCCCCC  C+CC C  C   C  CC  C             C    C CC         CCC C  C CC     CCCCCCC C C   C
+                                                   C
 ZZ------ZZXZZZ-ZZZ-MMM=M=+==ZXZZA-M-ZAA=+IX"=ZZM-Z-++++M=+++==+=MM-ZZM-XXAXIIXZZZXXAZX-="++MZ-Z--ZXZZMMMMMM=MMM-ZAIA-=M==MMM==M-ZZMM
+  CCCCCC      C   C   C CCCC     C C       +C   C CCCCC CCCCCCCC  C   C               CC+CC  C CC          C   C    CC CC   CC C
+                                           C                                            C
 XZZZZ----ZAZZZZZZZ-MM-MM==MZXX-ZZZZXXI- - ==Z=A-M-ZMM==+++"+==+=++ZZZMMZ-ZZAAZ=+AAXA-=++++=Z---M-ZZ--MM==++M==MZ-I1=M=++==M===MXAZMM
+     CCCC         C  C  CC    C            C   C C   CCCCC+CCCCCCC      C           CCCCCCC CCC C  CC  CCCC CC  C    CCCCC CCC
+                                                          C
 X-ZZ----Z--ZZZZZZXZ---M==+M-AXIXAXIIX-- =1ZXI=IAZZZ---+++=++=M=+"MZAM=MM==MZZZ++XZZ-+=++++=M--MM-X-M-M-M+=-===MMMI+-=+"+++====MZXM=-
+ C  CCCC CC        CCC CCC C                       CCCCCCCCCC CC+    C  CC         CCCCCCCC CC  C C C C CCCCCC     CCC+CCCCCCC    CC
+                                                                C                                                     C
 Z--MM-ZZ--MZ-ZZZZZZ---M=+"+M-IAIXX+III++I==IAI==IIIZ--M=+M++MM=+=MZ-M-X-MMM----MM====++++++=MMMM=ZM=-MMM======MMMZAM==+++++M=--ZMMMM
+ CC  C  CC  C      CCC CC+C C                       CC CC CC  CCC  C C C   CCCC  CCCCCCCCCCC    C  CC   CCCCCC      CCCCCCC CCC
+                         C
 Z-MMMM--Z--XZ--ZXZZ---M=====-ZX+=+X-ZA+-+XXZXA+1+1+IAAXXZM=M-M=+==-ZZZZMMZZZZM=++++=+++++++=M-MMMZMM--M===+==M==MZZM-=====MMMX--M==+
+ C    CC CC  CC    CCC CCCCCC      C                      C C CCCCC           CCCCCCCCCCCCCC C      CC CCCCCC CC    CCCCCC    CC CCC
 Z---MMMM---ZZZXAXXXXZXZ====+M=-ZZZMMXA IZ++MZA=1=I===IAIAX---M=+=MMMMM=MMMX=A-+""++++++++++=M==M-XMM-MMMMM+==M==M--MM=MM=MMMM-MM=+++
+ CCC    CCC            CCCCC CC          CC               CCC CCC     C      CC++CCCCCCCCCCC CC C   C     CCC CC CC  C  C    C  CCCC
+                                                                               CC
 Z-ZMMMMMMM-ZZX=-XXAIAX-=++=+M=====Z-XIAZM"+-ZXAAXAIIAXAZZZ+MM-=MZXXM--Z----+IZ=++=+=+++"=MMMM===--MMMM-M-===M=+=-=====-M-M===M=M=+=+
+ C        C           CCCCCC CCCCC C     +CC              C  CC     CC CCCC   CCCCCCCCC+C    CCCCC    C CCCC CCCCCCCCCC C CCC C CCCC
+                                         C                                             C
 Z--MM=MMMMZZZZXAZZXAAIZM=++++MZ-ZM-MM-MM-=M-XIAZZXIIA=Z--Z-ZZZ-XAIZM-Z-M--MIAM++=-Z=""=====M--MM-ZM--M-MMMM=M===-==MM======M=M===+++
+ CC  C                  CCCCC  C  C  C  CC C           CC C   C     C C CC    CCCC C++CCCCC CC  C  CC C    C CCCCCC  CCCCCC C CCCCCC
+                                                                                    CC
 ZZ-M-MMMMMMZZZZZZZZXXXZ-=M+""+=M=++MZZM+==--ZAAZXXXAXZ--ZXAAXAXXXAZMMMMMM-X=Z++++ZZM+=M++++=-Z-M-Z---MMMMM-==MMMM==M+=+++++====M===+
+  C C                  CC C++CC CCC    CCCCC          CC                 C   CCCC   CC CCCCCC C C CCC     CCC    CC CCCCCCCCCCC CCCC
+                           CC
 --MMMM=MMMM-Z-----ZZZXXM=M+""++=++++MM++++=M-XXXXZZAIXZZXXXXXAAZZZ-=MM-MZAIAZ=+++=+M=+=++++=M--MZZ-M-M-MMMMMM=MMM==+++++++=MMM=====+
+CC    C    C CCCCC      C C++CCCCCCC  CCCCC C                     CC  C      CCCCCC CCCCCCCC CC   C C C      C   CCCCCCCCCC   CCCCCC
+                           CC
 --M=MMM-==-ZZMM--Z---ZA-M+=++===+++=+M===++---XAXXAXA=+ZZZXXXZX---ZXIAIAAAZMM+""+=MM++""=====---ZZ-M-ZZMMZZ=MM--XM=+++++=+=---M+=+=+
+CC C   CCCC    CC CCC  C CCCCCCCCCCCC CCCCCCCC                 CCC           C++CC  CC++CCCCCCCC  C C      C  CC  CCCCCCCCCCCC CCCCC
+                                                                              CC      CC
 MMMMMM=MM--ZMMM--M-Z-ZX-==++==MM+++=++++"=M-Z-ZAA=IZZI+XZXXXX-MM=-Z-M-XX-=+=++=++====+++=++==MM--MM==MM==+==MAZZZZ-+++++=====MM++=++
+      C  CC    CC C C  CCCCCCC  CCCCCCCC+C C C               C  CC C C  CCCCCCCCCCCCCCCCCCCCC  CC  CC  CCCCC      CCCCCCCCCCC  CCCCC
+                                        C
 ====MMMM--ZMMMMMM=M-XXI-==+-Z=+==--++"++++M---ZXAIIAAIIXXAXZ-MZ=++=+=-===++++++++M=+=+==+++M--==MM=++M===+=M-=Z-M--==++====M=-==++++
+CCCC    CC       C C   CCCCC CCCCCCCC+CCCC CCC              C  CCCCCCCCCCCCCCCCCC CCCCCCCCC CCCC  CCC CCCCC C  C CCCCCCCCCC CCCCCCCC
+                                     C
 ===MMM-----MMM====M-Z-XZM=+MZ=+=Z=I=++"+===M-ZZZZXZXZZXZXXXZM=M++"="M-+++""+++++=MM==+M++++=MM++==+++==M==MM---M=MMM=+====M-=-=+=+=+
+CCC   CCCCC   CCCC C C   CC  CCC   CCC+CCCC C                C CC+C+ CCCC++CCCCCC  CCC CCCCC  CCCCCCCCC CC  CCC C   CCCCCC CCCCCCCCC
+                                      C                          C C     CC
 MMM--MMMZZZM+++++==-M-X=++""+""-I=Z+=++"+====--Z---Z--ZMMZZMM++==++=++""=++=++++MMM==MM=++=MM=+M==+++M--MMMMMM--MM=XM+++=====M=++==+
+   CC       CCCCCCCC C CCC++C++C   CCCC+CCCCCCC CCC CC       CCCCCCCCC++CCCCCCCC   CC  CCCC  CC CCCCC CC      CC  C  CCCCCCCC CCCCCC
+                          CC CC        C                              CC
 MMM-MM----=+++++++=M==M+"=M+""+=Z+X+===+=======MMM-ZXZ-===========M+++"+"++""++++++++=MMM==++====++=MM--==MMMMMMMZ=-=++++M=M====-M==
+   C  CCCCCCCCCCCCC CC C+C C++CC   CCCCCCCCCCCC   C   CCCCCCCCCCCC CCC+C+CC++CCCCCCCCC   CCCCCCCCCCC  CCCC        CCCCCCC C CCCCC CC
+                        C   CC                                        C C  CC
 -M-------=+++++++==+===++-I-M+X1=+-+M=======+""+=MM-ZZZMM-===+====M=+=+""+==+++++++++=--M-M++====+==MM---M-Z-M==MM=M===+=M========+=
+C CCCCCCCCCCCCCCCCCCCCCCCC C C    CC CCCCCCCC++CC  C     CCCCCCCCC CCCC++CCCCCCCCCCCCCCC C CCCCCCCCC  CCC C C CC  C CCCCC CCCCCCCCCC
+                                             CC                        CC
 Z-------==+==+==+======+-IA-XMZ+IIMMZM====""+""+=+=ZXXAXZZMM=+++==M=+++""XIM-++++++==MMM======MM-MMM-M-ZMM-ZZM==M====MM===M==++=+===
+ CCCCCCCCCCCCCCCCCCCCCCCC  C          CCCC++C++CCCC         CCCCCC CCCC++   CCCCCCCCC   CCCCCC  C   C C   C   CC CCCC  CCC CCCCCCCCC
+                                          CC CC                        CC
 -----Z-M==MM=++++=++++M+MIAXIZ-Z-XM-Z="+="-----"MM-AZ-Z-X-M-M=+MMM-=+""++Z1AAMM=+"++++==M==MM-M-ZMMZZ-Z-MM---==M=MMMM=+MMMMM++==+++M
+CCCCC C CC  CCCCCCCCCC C      C C  C C+CC+.....+  C  C C C C CC   CCC++CC      CC+CCCCCC CC  C C     C C  CCCCC C    CC     CCCCCCC
+                                      C  C'''''C                     CC          C
+                                          XXXXX
+                                          CCCCC
 ZZZZ----M=MM===++++++=++---AAAM-ZM=MM""""----""+-ZIXZXAZI-M-ZZM=MM-=++"""M1+ZMMMM+++""==M====MMMMMM--MMMMM---MM==MMX===ZMMM==++++++=
+    CCCC C  CCCCCCCCCCCCCCC    C  C  ++++....++CC        C C   C  CCCC+++        CCC++CC CCCC      CC     CCC  CC   CCC    CCCCCCCCC
+                                     CCCC''''CC                       CCC           CC
+                                         XXXX
+                                         CCCC
 ZXZZZZZ-MMMMM-="++""+=+"=--I=I-===ZM+""""""-"+"+=MXZAZXI+ZMMMM-=-=M=++"""-+M=MM===============MMM==M-M==MM--M=M==M-Z=+=MM-M====++++=
+       C     CC+CC++CCC+CCC   CCCC  C++++++.+C+CC             CCCC CCC+++C  C  CCCCCCCCCCCCCCC   CC C CC  CC C CC C CCC  C CCCCCCCCC
+               C  CC   C             CCCCCC'C C                       CCC
+                                           X
+                                           C
 ZZZZXXXZ-MMMM--=+=+""+++=ZI++=IZ+=X+---"+++++"""++MX===IZ=++==-M-MM==++++XX+==MM+++MMM=M++M==MMM-MMMMM=MM======M=-MM++++==M====+++++
+        C    CCCCCC++CCCC       CC C...+CCCCC+++CC       CCCCCC C  CCCCCC  CCC  CCC   C CC CC   C     C  CCCCCC CC  CCCCCC CCCCCCCCC
+                   CC               '''C     CCC
+                                    XXX
+                                    CCC
 -ZZZZ-Z-ZZ-M-ZZ-MM=""""=-++-+=AZ-AA=+++=="""---"+-"-ZXXAZ+"MMMM=MM-M==++=ZZ===M===+===MM==M-MM--M---M=+M=+==+++=--=++="=M-ZM==+++++"
+C    C C  C C  C  C++++CC       C  CCCCCC+++...+C.+C     C+    C  C CCCCC  CCC CCCCCCC  CC C  CC CCC CC CCCCCCCCCCCCCC+C C  CCCCCCC+
+                   CCCC                  CCC'''C 'C       C                                                           C            C
+                                            XXX  X
+                                            CCC  C
 -Z-Z-------MMZZ-MM=+"+=X1--11+==IAZ++""++""""-++"--+ZZZM=="+M-=MMM==+++++=M-M=M--M===MMMMMM--M-----ZZ=MM===++=+MM=""""+=MZZM=-++++""
+C C CCCCCCC    C  CC+CC            CC++CC++++.CC+..C    CC+C CC   CCCCCCCC C C CC CCC      CC CCCCC  C  CCCCCCC  C++++CC    CCCCCC++
+                    C                CC  CCCC'  C''       C                                                       CCCC            CC
+                                             X   XX
+                                             C   CC
 ----MM==M-MM=--=+"""""+-I1 -11+++1MMMM==+"-"+==+---"=M+++=++===M--M==+++==+Z=++=M=MMMMMMM--ZZ-ZM-M=----M==+++=-M=""++++=MM=+==++++""
+CCCC  CC C  CCCCC+++++CC              CCC+.+CCCC...+C CCCCCCCCC CC CCCCCCCC CCCC C       CC  C  C CCCCC CCCCCCC C++CCCCC  CCCCCCCC++
+                 CCCCC                   C'C    '''C                                                             CC               CC
+                                          X     XXX
+                                          C     CCC
 Z-===+===M==+===""--""++ZI+    +=I-M--M++""++=+-"-"""+"""++++==MMM---==+=+M-M++++==-===MMMMMMM--M=M-MMM===+++=-=+"""+++M==++=+++++""
+ CCCCCCCC CCCCCC++..++CC          C CC CC++CCCC.C.+++C+++CCCCCC   CCCCCCCC C CCCCCCCCCC       CC C C   CCCCCCCCCC+++CCC CCCCCCCCCC++
+                CC''CC                   CC    'B'CCC CCC                                                        CCC              CC
+                  XX                           XHX
+                  CC                           CXC
 M==++++====+=++M++""++==XAAI+ +=IAZ-Z-M+""+=+="-"-"+"""++"+=M=-MM-XX-MM-===MM===+++=M=MMMMM=+=-ZMMMMM====+++++++++++++=M==+==++++"""
+ CCCCCCCCCCCCCC CC++CCCC           C C C++CCCC+.C.+C+++CC+CC CC  C  C  CCCC  CCCCCCC C     CCCC      CCCCCCCCCCCCCCCCCC CCCCCCCCC+++
+                  CC                    CC    C'B'C CCC  C                                                                       CCC
+                                               XHX
+                                               CXC
 +++==+"+=++++"+=+++=MX-XA+==IAAZXAA-MMX-=M-==+"---"=+++===MMM-----ZXX-==M=+=--M=+====++==M==---ZM==M-====+""""+++++MM--Z-MMM===+""""
+CCCCCC+CCCCCC+CCCCCC  C            C   CC CCCC+...+CCCCCCC   CCCCC   CCC CCCCC CCCCCCCCCC CCCCC  CC CCCCCC++++CCCCC  CC C   CCCC++++
+      C      C                                C'''C                                                       CCCC                  CCCC
+                                               XXX
+                                               CCC
 ""+=+""+=""""-"=MM=MXIIIIAA+IIAAA=AM=Z+II--M=Z=--"+=M++M+M---ZZIAZZM-XZ=M=====M==+=++""+++==M-Z-===MZ+++=++"""++++=Z--XX-M---X-=+""+
+++CCC++CC++++.+C  C                 C    CC C C..+CC CC C CCC       C  C CCCCC CCCCCC++CCCCC C CCCC  CCCCCC+++CCCCC CC  C CCC CCC++C
+CC   CC  CCCC'C                                ''C                                   CC                    CCC                   CC
+             X                                 XX
+             C                                 CC
 +++"+--+M""-"++=-M+=Z=+==AAI==IA=-=Z=-AAX-MM+=""""+M-==-==-ZAZAAIZ-MM-MM=MM===-=+++++"""+++M=M-XMM==-=+====+""+=++=M=XA-MMM---==+++"
+CCC+C..C ++.+CCCC CC                CC   C  CC++++C CCCCCCC       C  C  C  CCCCCCCCCC+++CCC C C   CCCCCCCCCC++CCCCC C  C   CCCCCCCC+
+   C ''  CC'C                                 CCCC                                   CCC                    CC                     C
+     XX    X
+     CC    C
 M=++M"""=""+=+++=++Z+=1++AAA==I==+=M==MMMM-M="""+"=-M=MZZMZXXZZXZZ-=MM--MMM-==M++"""++""++++++MX==+==+"+++=+++=M=+=MM--MMM=M-=++=+++
+ CCC +++C++CCCCCCCC                 CC    C C+++C+CC C            CC  CC   CCC CC+++CC++CCCCCC  CCCCCC+CCCCCCCC CCC  CC   C CCCCCCCC
+     CCC CC                                  CCC C                               CCC  CC              C
 XAXII==M=++++++M-==ZI=11=XXXXA=1IIZ=+====+M=+=++"+M-+==--M-ZZZZZZ-MM=MMM-MM=+++"""""++++++++++=M=++M=++++==+""+==MMM===+===MM===M+"+
+     CC CCCCCCC CCC                CCCCCCC CCCCC+C CCCCCC C      C  C   C  CCCC+++++CCCCCCCCCCC CCC CCCCCCCC++CCC   CCCCCCC  CCC C+C
+                                                C                              CCCCC                        CC                    C
 =++I+IIIIA-+MZ-AIAXI1II=IAXZXA+-IAXMMMMM+==M+=+++=--=+=M==M-MZZ---M-M==+=MM+"++++""+++"+"""++=MM+++=+++=M=+""+=====+=+++=======++++=
+          CC  C                         CCC CCCCCCCCCCC CC C   CCC C CCCC  C+CCCC++CCC+C+++CCC  CCCCCCCC CC++CCCCCCCCCCCCCCCCCCCCCCC
+                                                                            C    CC   C CCC                CC
 I==I=++11+=AIIAII====III+A=+X++ 1XMMM-M-=M-ZM-M=MMM==+==+====-M+=M=M=++""+"""+="""+"M=""""""+=MMM===+++===M==++++M-==+++=====++++++=
+                                     C CC C  C C   CCCCCCCCCCC CC C CCC++C+++CC+++C+ C++++++CC   CCCCCCCCC CCCCCC CCCCCCCCCCCCCCCCCC
+                                                                       CC CCC  CCC C  CCCCCC
 IIAAII=+==+I=AI===1=IIXI I+== 1=X==M-ZM-XAXZZ-M+=MMM=+=++MMMMAM-"==++==+""-""++""""+++++""""+MM==M-=+==+==MZM++++=====+++++++++""+MM
+                                 CC C  C     C CC   CCCCC      .+CCCCCCC++.++CC++++CCCCC++++C  CC CCCCCCCC   CCCCCCCCCCCCCCCCCC++C
+                                                               'C       CC'CC  CCCC     CCCC                                   CC
+                                                               X          X
+                                                               C          C
 A=IAIII=I=+IXAAAXAII=+== -+=I+XA-+MMM==ZA+=+=Z-M===+=++===+=AZM"+"=++-==+""++"++"""""++++"+++MM===ZM====MMM--M=++++==+==+=+"++""+==I
+                                CC   CC       C CCCCCCCCCCCC   +C+CCCCCCC++CC+CC+++++CCCC+CCC  CCC  CCCC   CC CCCCCCCCCCCCC+CC++CCC
+                                                               C C       CC  C  CCCCC    C                                 C  CC
 AIIIAII====A-MM=M=MZ=-1+=AXIAIIA==--=+=ZX=I+1XM-MMM==+++"++==MM==++=-===+++"++""""""++++=+=+===++=MMMMM--M---M==+++++=+++=+++"""+===
+            C  C C              CCCCCCC        C   CCCCC+CCCC  CCCCCCCCCCCC+CC++++++CCCCCCCCCCCCCC     CC CCC CCCCCCCCCCCCCCC+++CCCC
+                                                        C                  C  CCCCCC                                         CCC
 XIIAI=I=IIIAAXZMM=MMX+-+AXXAIA=--ZXZZMMMZAAXZ--I-MM+=+++"++=+=++"++=X====++""+"""""+++++Z+=M=+++++==MMMZZ---MM=+++=+++=+++++=""++===
+                 C             CC            CC C  CCCCC+CCCCCCC+CCC CCCCCC++C+++++CCCCC CC CCCCCCCC     CCC  CCCCCCCCCCCCCCC++CCCCC
+                                                        C       C          CC CCCCC                                          CC
 AXXXA=IA=II==IZZXMMZI1+=IAAI+==ZAAIAAZZZ--ZXMM----M--=++=+""+=+"+"="+"-"+++++""+++-X++++M+Z-M+=++==MM--ZX-----M=====++==+"""""+++=++
+                                        CC    CCCC CCCCCCC++CCC+C+C+C+.+CCCCC++CCCC CCCC C C CCCCCC  CC  CCCCC CCCCCCCCCC+++++CCCCCC
+                                                          CC   C C C C'C     CC                                          CCCCC
+                                                                      X
+                                                                      C
 XZ-MZAIAIAIIAAZZXXZA+=AA=+AAIAXXIII1-IAZ-MAX-=-MM-XXI-I-="""+=""+"+++""-""+++++""AA=++"+++M==+=+=+==MZZXZ-ZZZZZ----M=++++""""+++++++
+  C                                     C   CCC  C     CC+++CC++C+CCC++.++CCCCC++  CCC+CCC CCCCCCCCC     C     CCCC CCCCC++++CCCCCCC
+                                                         CCC  CC C   CC'CC     CC     C                                  CCCC
+                                                                       X
+                                                                       C
 AZZ-XAAXZZAAXX-ZIIAAIIAXIIAM-=-XAIA=+IIA-MZAX=MM=-+I=I+AM+"""+""""+++"+"""+++"++-"++=+"""+M===+=MMMMMMM---ZZZZZZXZMM=+++"++"++M++=++
+   C          C             CCC         C    C  CC       C+++C++++CCC+C+++CCC+CC.+CCCC+++C CCCCC       CCC          CCCC+CC+CC CCCCC
+                                                          CCC CCCC   C CCC   C  'C    CCC                               C  C
+                                                                                X
+                                                                                C
 AAXZXAAZ-ZXAXXXXAIXIAA--X=AMMMM-ZXXZXAAAXXA+=-MMM-IIXXA-A+""""++++==+"+""-""=++---"+=+""+===M===MM----MMM-Z-ZZZZXZMM===+"+++--A=++==
+        C             CC       C             C   C       C++++CCCCCCC+C++.++CCC...+CCC++CCCC CCC  CCCC   C C        CCCC+CCCCC CCCCC
+                                                          CCCC       C CC'CC   '''C   CC                                C
+                                                                         X     XXX
+                                                                         C     CCC
 ZXIXZZXXZZXXX-ZXZZAAAAZZX+1I-X-MZXXZZ++IAZZIXX-ZXXX-Z-I++=+""+"+""+=++++""""+++"+"""==+""+=MMMMM-ZZZMM=MM-ZZZXZZZZZZZ=+"+"=XAAAZ-"""
+             C              C C               C    C C   CC++C+C++CCCCCC++++CCC+C+++CCC++CC     C     C  C           CC+C+C     C+++
+                                                           CC C CC      CCCC   C CCC   CC                              C C       CCC
 XXAAXZXXZXXAZZXAXXA=1=A=AAI+ZZ-ZXXAZAAXXAXZZZXAZXXZZMMIA==I-++"""++=+++=+++""+++""=--==++=MZ--MMMZA--MMM-ZZAXAXZ----MM==+=ZA AX++-++
+                              C                            CCC+++CCCCCCCCCC++CCC++CCCCCCCC  CC     CC   C       CCCC  CCCC       CCC
+                                                              CCC          CC   CC
 ZZXIIXZ-ZXI+==AXXIAA=AZAAXXXM=M-MMXXAAZ-IA--XZIXXZZ-==M=ZAAI-="""+=M=+===++++===+=I =M=+==MM-Z-MM-MZA--ZXZZXAXXZZ--M===++MXAXZXIA-M-
+       C                     C C       C  CC       CCC C    CC+++CC CCCCCCCCCCCCCC    CCCC  C C  C   CC          CC CCCCC        C C
+                                                              CCC
 AXXAIAZ-X=+=+==+=IAAAIXZZM====M--ZZXZ-MMA+XZXZI+IZZZMMMMZI=-X-+-"+===+++MM====+===MX-==+=ZZ--ZZ--MM---XXXZZXXXX---M===++=MZ=+-ZZZ--Z
+       C                  CCCC CC    C                     C CC.+CCCCCCC  CCCCCCCC  CCCCC  CC  CC  CCC         CCC CCCCCC  CCC   CC
+                                                               'C
+                                                               X
+                                                               C
 IAXZZZZZ=+=I=II--AXAXZXX-=+=Z-Z--ZZZ-XZXXIX+II1 +ZZZZ-==XIIZ-X+--"+==+====-Z==+=M-MMM++++MI1= ZZ-M-ZZXZAAXAI+==+=X=+++-ZXIIZZIAZMMXZ
+                        CCCC C CC   C                CCC    C C..+CCCCCCCCC CCCC C   CCCC       C C               CCCCC
+                                                               ''C
+                                                               XX
+                                                               CC
 AAXXZZXZA=IAII=+1=IXAZXXZZZ--ZAXZZZXXAXAA-XAI=A=XMZZXZM-ZMAX-+"""++-Z==MM-MMM==M====M==M==-= -++AZZZZZZX=+- 11++X-+++=-X==IXZ---=-ZM
+                           CC            C             C    CC+++CCC CC  C   CC CCCC CC CCC                      CCCCCC      CCCCC
+                                                              CCC
 XXXXXXXZXAII+1--+AXXIZI==IA-MZMMMM-XAAZX-ZZXIAZ-ZZX-AZ--Z-XAXM==Z-MZX-M---M======MMMM--IX=-IIMMX11IXZZZAI+AZZ-===MM=MZXAAAXM----MM-M
+                           C      C     C      C   C  CC C    CC C   C CCC CCCCCC    CC  CC                  CCCC  C        CCCC  C
 AAAXXAXAM--I=+==IIXZX-AIIIXXXZ-==M-ZZZZ-MXZXIAZ-AXZ-AAZ-A+1-IA+1 IXZ-ZMMMM=+++==M-XZZZ--=+M--M--  I---ZZZZ--M=+=ZZZXZAZZZXZ-ZZZ---M-
+         CC          C        CCC C    C       C   C   C            C     CCCCCC C    CCCC CC C    CCC    CC CCC           C   CCC C
 AAA==XAIZ--AXAAXM--=MMZIIII+=XZ--ZM=Z-ZZXZZXXXZXIAX-XAAXXA111=AIA1=+IZZ-ZZ--X-MMMM-XA+AM==M-==Z==XMX-M==M++MMMX---ZZZI ZZ-ZZZZXXX-MM
+         CC      CCC           CC  C C             C                   C  CC C    C     CC CCC      C CC CC    CCC       C       C
 XZ-I1AIIXZ-M--------MMMZXA11+AXZXZZ-=M-Z-AZXAXA+IA=ZZAAA-ZIIXIXI=1  ==++=====+++AXXAIAAXZ-ZZZZZ=AZM---M+++ZZZXXZZ-M--XX-XXZZZAAZ--Z-
+  C       C CCCCCCCC               CC C C         C     C                                C         CCC CCC       C CC  C        CC C
 XZZIAAAIAX-MZZMM---ZZ-M-XAI==AAIIXXZXZ-ZZXAAXAIAI=XXZZXX-=IIIZMZA=+1II++==1+1- ++1===++IAIAIAIZXZX---M==-AIXAAXXZ-M=-XAXXXZZZZZX--XZ
+          C     CCC  C C              C                 C                                         CCC CCC        C CC           CC
 ZZXAAZZXXXXZZZ-ZZXZZZZ-ZXAIIAZXIIZXXXXXAZZZ--XAI==XZZXAIXI==+=-MAZ-ZMZZZZZI=+- 1AZ--ZXI 1+IAIAAXXXZZXZZIXIII=AAZMMMM-XZXXXZ-ZZ-XZZIX
+              C       C                    CC                 C   C               CC                                C      C  C
 IZZZXZZZZZAAXZ-ZZXZZZZXAZZIAZXXZZZ--ZZAAZZAIIXXAXAAXZXI=AA+=+-1ZA-ZAZZAXX-AI=-A+"++=MMZ- -+==++ +=-+==AZZ=+=XZ-=MXA-X-MM--ZIZZXXZXII
+              C                   CC                             C       C     C+CCC                          CC   C C  CC
+                                                                                C
 XZXZZ-XAXZZ---MZZXXAX-ZZZZAAXZZ-ZX---ZAIAAIIIIAX=IAAXA1++1IIAAA=AZ-II==AAII=+M""-""+++-+ 11I1++-=I=XAAAIXXI-====Z-XZZ--Z-M-IXXAXAAZM
+     C     CCC       C         C  CCC                             C           ++.++CCCC                    CCCCC C   CC C C
+                                                                              CC'CC
+                                                                                X
+                                                                                C
 -MMMMMZAXZZZZZXI=+IAXZZ--ZZXXZXAAIXZZZ-ZX===IIII=IAAA=+-1==AIAAAX--=+++I=I=1A+"---"""=A-+AI=++-  -+++IX=IX-"-+MMI---MX--ZZX+1ZXXXM+"
+C                      CC             C                          CC          C+...+++C                    C+.C   CCC  CC          C+
+                                                                              C'''CCC                      C'                      C
+                                                                               XXX                          X
+                                                                               CCC                          C
 ++=MMZMXZXZIIII111+IIXZ--ZXXXZXI+=XZIAMMMXI1++=IIAI=AAA==II=1I==AAXXA===A=1=I++"""+=-X==IA=- -   -+1+--+IZ=+-XAXAM+==M-Z-ZX==-M=+="-
+CCC                    CC                                                    CC+++CCC                     CCC     CCC C C    C CCC+.
+                                                                               CCC                                                C'
+                                                                                                                                   X
+                                                                                                                                   C
 ++MMMAZ--X=XAIAI==+--A-MM-----ZXI+AXAAX-=M-=II+=IZXIIXZX==- -+=A=X=-ZXXAIII=1AX-M-I1+I=AAI+---=I+1=+--1=-==AI+AZM++=++---ZXXM"--==--
+CC     CC             C  CCCCC         CC C                       CC           C C                      CCC      CCCCCCCC    +..CC..
+                                                                                                                             C''  ''
+                                                                                                                              XX  XX
+                                                                                                                              CC  CC
 "==M=--ZZX=IXXAI==IIIX--Z-MM=MMMI-++IAZ---XXXAI1I-MM-MMZI+1 -1++=XZ-MMZAZAXXI=+=++1IAAAAI=++AMMMAXZZ==AM=-=-M==+==M==M-=MZ-M++==M""+
++CC CCC               CC C  C          CCC       C  C              C                                    CCCC CCCCC CC CC  C CCCC ++C
+C                                                                                                                                CC
 ++++=M-XZ-ZIXXXZXIAZXZM=MMM===M-A1IX----M-XXAII=ZM=+M+"=AAA+1-=AZZX-Z---ZAXAI==IIIIAIAAI+=XZM=++==+==-XXZXMM=M="+=-M-Z-MZXZM-MMZZ-=M
+CCCCC C  C             C   CCC C    CCCC C        CC C+C           C CCC                     CCCCCCCCC      C C+CCC C C     C    CC
+                                                      C                                                        C
 +++++MZX-MMZ-AAZXIAZMM=+=====M---Z---M=MM--AAAAZ=++++++MIXXI11IAZXXXXZ-XXIXXIIII1=II====IZM=+=+++++MX=IA-=++==MM+MZMM-ZX+AM-ZXAXX-MM
+CCCCC   C   C         CCCCCCC CCC CCC C  CC     CCCCCCC               C                    CCCCCCCC     CCCCCC  C    C     C     C
 =+==M=MZ--++=Z-ZA-MM=+=MMZZMMZ-ZMMMMM-M---ZXXZZZM==MXZXZXZAA=IAXZZAAIXAXIAA==IIIAIAII=AZ-MMM+=+==MMZMZM=++""=-IZ---MMM-XX-+=-AXZ==MZ
+CCCC C  CCCCC C  C  CCC       C      C CCC       CC                                     C   CCCCC      CCC++CC  CCC   C  CCCC   CC
+                                                                                                          CC
 M=--M=M=+++MMMM=---MMM=-ZZXZZXXAZ-MMMZZZZZZ---XZM==MMM--ZZA==IIIIAAAAAAI=I=-=IAAI=IXZMM=MMM=++=-----M-M-MM=M-XA-MMMM-M-A-++=-Z-=M-XZ
+ CCC C CCCC    CCCC   CC         C         CCC   CC   CC                               C   CCCCCCCCC C C  C C  C    C C CCCCC CC C
 MMMMMM--===--MMMMZ-MMM-ZZZXAXA=XZZXXZZXXZXAXZZX-===MZ-==MMZZXZXAXXA==AXAIAI+IAAXAAZM==MM-MM++=MZZM--Z-=M---M--MM=M=MMMXI=+"+M=+MAAZZ
+      CCCCCCC     C   C                        CCCC  CCC                            CC  C  CCC    CC CC CCC CC  C C     CC+C CC
+                                                                                                                          C
 MMM=MM-MMM-Z-M-ZZZ-MM-ZZZZXZZA=IAAAAAAIXZZAAZZZ-MMM-ZZ---XZM--MM=MMMM----ZXXZZX--MM-MMZ-Z-MM==-M-Z--Z-=M-ZZM--=M=M+==M=+"+++M---AZ-Z
+   C  C   C C C   C  C                         C   C  CCC   CC  C    CCCC      CC  C   C C  CCC C CC CC C   CCC C CCC CC+CCC CCC  C
+                                                                                                                        C
 -MMM=M-M==--===AX---ZZAAIXXZZZII=IAA=I=AXZ=IXAZ-ZZ-Z-Z--Z-MZ=XM=M==++=++++M--MMZAZ---MZXX-ZZMM-Z-ZZ-MM=-Z-M==+=--++"++"=M-M=---AZM=-
+C   C C CCCCCCC  CCC                           C  C C CC C  C  C CCCCCCCCC CC     CCC    C    C C  C  CC C CCCCCCCC+CC+C C CCCC   CC
+                                                                                                                   C  C
 M=+=M-M=++M==MMM-MM-AAAXZXAAZZXXI==++IAIX----ZXZ-----M----MZ-ZMMM=+===++++M---MZ-ZZXZ-ZXAZZZ-MZ--Z-=+==MM=M==-ZM====-==-=M+=-ZZXMM-Z
+ CCC C CCC CC   C  C                     CCCC   CCCCC CCCC  C    CCCCCCCCC CCC  C    C      C  CC CCCCC  C CCC  CCCCCCCCC CCC     C
 =+++==M-M--M==MMMMMMXXZZ-XXAXZZXA=+==AAXXZ-MMZZMMM-MMM-ZZ-M-Z---M========MZZ--ZZ--ZZX-ZXXXZM--AMMM=+++++++M--XM====-====M-+ZXXZZ--ZA
+CCCCCC C CC CC          C                 C       C   C  C C CCC CCCCCCCC   CC  CC   C      CC    CCCCCCCC CC  CCCCCCCCC .C     CC
+                                                                                                                         '
+                                                                                                                         X
+                                                                                                                         C
 =+++M=M==ZX-======+=M-ZXZ--ZZMMM-ZAIAZ--ZAAZ-Z-+=+++==M-XMMMMM-M==+++"+=M-Z--ZZ-M-MZZ-ZXZZ-M-M-=+====+"="+-ZM==+=--MMM==MMZZXZZXZXA=
+CCCC C CC  CCCCCCCCC C   CC     C     CC    C CCCCCCCC C      C CCCCC+CC C CC  C C   C    C C CCCCCCCC+C+CC  CCCCCC   CC
+                                                                     C                                C C
 ++++===++++++"++"+++AXXXZZM======M-XXZ---ZZM-=M---M-Z==MZM+======++++"+=MZZ-ZZM-Z-X-ZZZAZ--++==++=-XX=Z=+M-=MMM-M-=MMM-M-ZXXXZ-ZI=-1
+CCCCCCCCCCCCC+CC+CCC       CCCCCC C   CCC   CC CCC C CC   CCCCCCCCCCC+CC   C   C C C     CCCCCCCCCC  C CC CC   C CC   C C     C
+             C  C                                                    C
 +++"+===M=+++++"++=MM=MMM-Z-=MMMMMM-XXXXZZZ---M=I--XZ-MM--MMMZ---M++++=MXIIA-M-AXZZM=--ZM====M-M""=XIXZM--ZZ-----MMMMMMZXAXXXZA+1111
+CCC+CCCC CCCCCC+CCC  C   C CC      C       CCC   CC  C  CC    CCC CCCCC     C C     CCC  CCCC C ++C     CC  CCCCC
+   C           C                                                                                CC
 +==+++==Z==MM-M===MM====---MM-ZZ-MM-ZXZ--ZZZAAZZ-MZZZ--MMMM=M-=M==+--ZAA===AZ-XA-MM==MM-==MMZXZ-M=ZXZXZZ--ZZZ-ZZ---ZZXZAZXAAA==1 1 -
+CCCCCCCC CC  C CCC  CCCCCCC  C  C  C   CC       C    CC    C CC CCCCC        C  C  CC  CCC     C C      CC   C  CCC
 +==+=+++===-ZXZ-===M==M-XIZM--Z---MMM--MM--ZAIZ-==-Z=M=M=-M+MZMMZ-MZXXAIAIXXXXAZZ+=M==M++=MXXXZZZZZZXXAZXAXZZZZZXXXXA=AAAI=I+--  - -
+CCCCCCCCCCCC   CCCC CC C    CC CCC   CC  CC    CCCC C C CC C     C               CC CC CCC
 -MM==M=-XXM=-=X-MMMMM-Z---MMMM-M=M--M-ZAXZMMZZZXII-M===Z-+==MIZXAXAAXAIXAZM=-X-AZMM=MM+==MXZZZ--M-XIAZZAAXXAZZXIAIII==I=11=1--- - +M
+C  CC CC   CC  C     C CCC    C C CC C            C CCC CCCC               CC      C  CCC     CC C
 ZXXXXZZZZZ--ZAZMMM--M=M---M=MMM=++=MZ----Z-MZ-MZXAXZM-ZZ-M-XI+AIXZZZAAAXXMMM----ZZZ-M++=MZZZZ-MM-ZZZXXXZAZZZXXXXAAI=I=+1-11   -=Z=+"
+          CC      CC C CCC C   CCCC  CCCC C  C       C  C C                 CCCC   C CCC     C  C                                CC+
+                                                                                                                                   C
 AAXAAX-MM-Z------MMMM=MMMM--XZ--===M-ZZZZXXZ---ZXZZXXXZ--AAXXIZZZZZA-IZXZ--ZZZMMZAAZ-MZZZZ-MMM-XXXXAXXXXXZXAAIAAAII===-    -+AM++"++
+      C  C CCCCCC    C    CC  CCCCC C       CCC        CC                CC         C     C   C                                CC+CC
+                                                                                                                                 C
 IAAXXXXZZZZ-----MMMMM-MMMM-XXZZZZ-M-ZXZZXIIZZZ--M---XXXZZXXAA=AXXAAI1AZAZZZZ-Z-ZIIXXAAIXXXM=-XXIXAAAAXZXAAIIIAIAI==I=+  -+XM=++++"""
+           CCCCC     C    C      C C          CC CCC                        C C            CC                               CCCCC+++
+                                                                                                                                 CCC
 1IIAAAZXAZAX--M---MMMZ----AAII=AAXXXZ-MZA=IXXZZXZZ--MZXAXXA=AIAXXXZ==AXAZZAZXXAII=AAAIIAI=+=ZXXIIIIIXIAAAXXAAII==+=1  - Z++++++++"+=
+            CC CCC    CCCC           C            CC                                                                     CCCCCCCC+CC
+                                                                                                                                 C
 IIAZXZZZZZZ--M=M-----ZZ-ZZZ--A+=Z--XA---M-XZMZXZXXXXXAAAI==+====AAA=AXAAAXXXAIII==++=IIII==IIXIIXZXZZZZZXAAIIAI=++1+I-=+"""""++"""""
+           CC C CCCCC  C   CC    CC  CCC C                                                                           CCC+++++CC+++++
+                                                                                                                        CCCCC  CCCCC
 AXXZXZ---ZZZX--ZZZ---MM-ZZZZ-ZXIX--M---MMM-Z-Z--ZXAXAA=++=--===1=IIIIA=AAXII=II=======I=I==IAXXZXXZMM-ZXA=====+1=IZ=++++""""""""""""
+      CCC    CC   CCC  C    C    CC CCC   C C CC                                                     C             CCCCC++++++++++++
+                                                                                                                        CCCCCCCCCCCC
 ZZZ-XXXZ-AAXXXXZ-ZZZZ----ZZZZ-ZXAXMM=M=M--ZXZXZZXXAAAA=+++1+=++1+IA==A=AI===++11+=+=+++IIII=AI===+AXXII=++==+=Z-=+++++++"+"""""++"""
+   C    C       C    CCCC    C      C C CC                                                                     CCCCCCCCC+C+++++CC+++
+                                                                                                                        C CCCCC  CCC
 M=-ZZ-ZZ-XAZZZXIAXAXZZZZZZZZ--ZXXAX--M=MM-XXXAAIAXXII===++-11+++++1-1+1+=1--1--11==+1+1+IAA==I==+=+1++===I=XM++++++++"++"""""++"++""
+ CC  C  C                   CC     CC C  C                                                                   CCCCCCCC+CC+++++CC+CC++
+                                                                                                                     C  CCCCC  C  CC
 -MM-MMM-ZXXZ----XZZXXZZZ---ZZXZZX-ZZXXXZ--AIAXAXAI=I==I===111--------1+=+1111-1+1+++IAAAAI==I++111111==IZM++"+"+++"""""""""""+""""++
+C  C   C    CCCC        CCC      C      CC                                                                CC+C+CCC+++++++++++C++++CC
+                                                                                                            C C   CCCCCCCCCCC CCCC
 Z---MMMZZXII=XXZZZZZ-----ZZZZZZZZZZZZZXXZZXXAAAAI==11-- ----       -1+=====++++++++=====++111---+IIXZM=+"++"+"""++""+""""""""""+""+"
+ CCC                CCCCC                                                                             CC+CC+C+++CC++C++++++++++C++C+
+                                                                                                        C  C CCC  CC CCCCCCCCCC CC C
 ZXZ-Z---ZXXAAXXZZZZXXZZZZXXXAAIAAXXXXXXAAAIIIII=++11--        --      --+I=I=+++++++=+++==+- -=X-M=+++++""""++""+"+"+"""""+""""+""""
+   C CCC                                                                                        C CCCCCC++++CC++C+C+C+++++C++++C++++
+                                                                                                        CCCC  CC C C CCCCC CCCC CCCC
 XAX--ZZZXXAXZXZ-ZZXXXAAAAI=I=I=IXX-ZZXIAAI===+11-1---       -       ----1--1+1+++1+=II==+-1A-=+++"+++++"++"""""++"+++"""""""""""""""
+   CC          C                  C                                                         CCCCC+CCCCC+CC+++++CC+CCC+++++++++++++++
+                                                                                                 C     C  CCCCC  C   CCCCCCCCCCCCCCC
 AXAXAAAAXAAZZZXZZZZZZXXIAAXXXZXXZZZXZAXAAII==11---               -1-1+111-1+1--+--+==+=XM++++++"+++"+"+""""++""+++"++""""""""""""+""
+                                                                                         CCCCCC+CCC+C+C++++CC++CCC+CC++++++++++++C++
+                                                                                               C   C C CCCC  CC   C  CCCCCCCCCCCC CC
 AAAA=IAAXIAX-ZZ-M---ZZZXXAXZZXXXAAAAAAAI=====-1----   - 1111111-+=+++=I====IIIAAAAZ==+++++++"++"++""+"+"+"+++""""""""""""""""+"""+""
+            C  C CCC                                                               CCCCCCCCC+CC+CC++C+C+C+CCC++++++++++++++++C+++C++
+                                                                                            C  C  CC C C C   CCCCCCCCCCCCCCCC CCC CC
 IIAIIIII+=IIAAXAXXZZXXXXXAAXAAXAIIII=I========+1-1-- -1111=I=I==+=1+++=XZ---M===+++++++++"++++""+"""""""""+"+"+"""""""+"""+"""""""""
+                                                                         CCC CCCCCCCCCCCC+CCCC++C+++++++++C+C+C+++++++C+++C+++++++++
+                                                                                         C    CC CCCCCCCCC C C CCCCCCC CCC CCCCCCCCC
 =I=I==++=II===I=IAXXAXXAI==IIAAAI=I=II======111--------+=AAIIIAIAXZ-==+++==+++++++++++++"+++"+"+++""+""+""+""++"+++""++"++"+""+""+""
+                                                                   CCCCCCCCCCCCCCCCCCCCC+CCC+C+CCC++C++C++C++CC+CCC++CC+CC+C++C++C++
+                                                                                        C   C C   CC CC CC CC  C   CC  C  C CC CC CC
 ZXIAII=I=+===IIIAIAII=II====IIII=+=+++++1+1++++==IIAAX-MM=====+++++++++++++++++++++++++++++++""""+"""+"""++"""+"""""""""++""""""""""
+                                                      C  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++++C+++C+++CC+++C+++++++++CC++++++++++
+                                                                                             CCCC CCC CCC  CCC CCCCCCCCC  CCCCCCCCCC
 ++====MM--------ZZZZZXXXAAAAAAAAAAAAAAAAXXXZ-MM==++++++++++++++++++++++++++++++++++++++++++++"++"+""++"""++"""+""+""++"+++"+""""""""
+CCCCCC  CCCCCCCC                            C  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+C++CC+++CC+++C++C++CC+CCC+C++++++++
+                                                                                             C  C CC  CCC  CCC CC CC  C   C CCCCCCCC
 ++++++++++++++++++++++=+===========++++++++++++++++++++++++++++++++++++++++++++++++++++++"+"+""++""+"""""+"+""""""+"""""+"++++""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+C++CC++C+++++C+C++++++C+++++C+CCCC++++++
+                                                                                         C C CC  CC CCCCC C CCCCCC CCCCC C    CCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++""+++"+"++++++"+""+++++++""++++"+""+"+"+"+++""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++CCC+C+CCCCCC+C++CCCCCCC++CCCC+C++C+C+C+CCC++++
+                                                                                    CC   C C      C CC       CC    C CC C C C   CCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++++"++"++++++"+"+"""+++++++++""+"""""""+""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCC+CC+CCCCCC+C+C+++CCCCCCCCC++C+++++++C++
+                                                                                   C         C  C      C C CCC         CC CCCCCCC CC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++"++++++++++"+"+""""+"+""++""+""+""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCC+CCCCCCCCCC+C+C++++C+C++CC++C++C++++++++
+                                                                                       C    C          C C CCCC C CC  CC CC CCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++"+++++"++++"+"++""+++""++""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCC+CCCCC+CCCC+C+CC++CCC++CC++++++++++++++
+                                                                                       C     C     C    C C  CC   CC  CCCCCCCCCCCCCC
 ++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""+"+++++++"+++"+++++""++++""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++C+CCCCCCC+CCC+CCCCC++CCCC++++
+                                                                                                     CC C       C   C     CC    CCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++++++++++++"+"+""+"+"++"++"""+"+"""+"""+"""+"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCC+C+C++C+C+CC+CC+++C+C+++C+++C+++C+
+                                                                                C                 C C CC C C  C  CCC C CCC CCC CCC C
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++"""+"++++"+++"+""+++"+""+"""+"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCC+++C+CCCC+CCC+C++CCC+C++C+++C+
+                                                                                             C        CCC C    C   C CC   C CC CCC C
 +++++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++"++++++++"+"+""+"""+"++""+"""++""+"""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCC+CCCCCCCC+C+C++C+++C+CC++C+++CC++C+++++
+                                                                                    C        C        C C CC CCC C  CC CCC  CC CCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++"++++"+"+++++++++++""+"++"++++"+"++"+++++"""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCC+C+CCCCCCCCCCC++C+CC+CCCC+C+CC+CCCCC+++
+                                                                                        C    C C           CC C  C    C C  C     CCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+"+"+++"""""+""+++""+""""""+""++"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+C+CCC+++++C++CCC++C++++++C++CC+
+                                                                                                  C C C   CCCCC CC   CC CCCCCC CC  C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++"++""+""+++"""+""""+"+""""+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCC+CC++C++CCC+++C++++C+C++++C
+                                                                                                  C      C  CC CC   CCC CCCC C CCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++"+++++++++"++++++++++""+++++++"+"""""+""+"""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCC+CCCCCCCCC+CCCCCCCCCC++CCCCCCC+C+++++C++C+++++
+                                                                              C       C         C          CC       C CCCCC CC CCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++++"++"++++++++++++++++"++++++""++"+++"+"+++"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+CCCCCCCCCCCCCCCC+CCCCCC++CC+CCC+C+CCC+
+                                                                                          C  C                C      CC  C   C C   C
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++"+"+++++"++"+++""+++++"+"""+++""""""++"+++"+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C+CCCCC+CC+CCC++CCCCC+C+++CCC++++++CC+CCC+C
+                                                                                        C C     C  C   CC     C CCC   CCCCCC  C   C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++++++++++++"++++""+++++"++"""++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCC++CCCCC+CC+++CC
+                                                                                                                C    CC     C  CCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++"+""++++"+++++++"+"""""+++"++++""++"+"+""""+++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCC+C++CCCC+CCCCCCC+C+++++CCC+CCCC++CC+C+C++++CCC
+                                                                           C          C CC    C       C CCCCC   C    CC  C C CCCC
 ++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++++++++++++"+""++++++++++++""+"++"++""+"++""+++"++"++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C++CCCCCCCCCCCC++C+CC+CC++C+CC++CCC+CC+CC
+                                                                                          C CC            CC C  C  CC C  CC   C  C
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++"+""+++++++++"+++++"++++++""+"+"++"++++++""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+C++CCCCCCCCC+CCCCC+CCCCCC++C+C+CC+CCCCCC++++++
+                                                                                     C CC         C     C      CC C C  C      CCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++"++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCC+CCCC
+                                                                                                            C                  C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++"++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCC+CCCCCCCCCC
+                                                                                                              C          C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++"+++++++++"+++++++++++++++++++"""""+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCC+CCCCCCCCCCCCCCCCCCC+++++C
+                                                                                                C         C                   CCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++"++"++++++"+++"+""++++++++++"+++"+++++"+"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CC+CC+CCCCCC+CCC+C++CCCCCCCCCC+CCC+CCCCC+C+
+                                                                                        C  C  C      C   C CC          C   C     C C
 +++++++++=+++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++""+++++++++"++++++++++""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC++CCCCCCCCC+CCCCCCCCCC++
+                                                                                                            CC         C          CC
 ++++=+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"++++++++++++++++++++++++"+++++++++"++"+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCC+CC+C
+                                                                                            C                        C         C  C
 +++++++++++++++++++++++++++++++++++=++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"""+++"+++"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+++CCC+CCC+
+                                                                                                                         CCC   C   C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++"+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCC+C
+                                                                                                                              C   C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=++++"+++++++++++"++++++++++"+""+"+++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCC+CCCCCCCCCC+C++C+CCC
+                                                                                                    C           C          C CC C
 +++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"+++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCC
+                                                                                                                            C
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+
+                                                                                                                                   C
 ++++++++++++++++++++++++++++++++++++++++++++++==+++++++++++++++++++++++++++++++++++++++++++++++++"+++++++++++++++++"+++++++++++=+++"
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCC+
+                                                                                                 C                 C               C
 Z=+++++++++++++++++++++++++++=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 =+++++++++++++++++++++++++=+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++=+++++++++++++++++=++++++++=++++++++++++++++++++++++++++++++++++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++=+=+====+==+=+++=+++=ZIM++++++===++++++++++=+=+=++++=+==++++++++=++++==+=+=++++=+++==++++++++++=+++++++++++++=++=+++=+==+==+++++++
+CCCCCCCCCCCCCCCCCCCCCCC   CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++=++==+=+=+=+=+++++=M=+++++++++++++=+++=++++=++++++=++==+++++++++++==+=+++++++++++++++++++++++++++++++++++=++++++=+++++++++++++++
+CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
1
-
0                                            PRINCETON UNIVERSITY COMPUTER CENTER CLINIC
-
-
-
-
-
                                                            +------------+
                                                            +            +
                                                            + COMPUTER   +
                                                            +            +
                                                            +    PICTURE +
                                                            +            +
                                                            +------------+
-
-
-
-                                                              THE MOON
-                                                   COMPUTER TRANSCRIPTION PROCESS
0                                                                 BY
0                                                         SAMUEL P. HARBISON
0                                                       COMPUTER CENTER CLINIC
                                                         PRINCETON UNIVERSITY
                                                           87 PROSPECT ST.
                                                     PRINCETON, NEW JERSEY 08540
-                                                  COPYRIGHT 1973 BY S. P. HARBISON
-                                                       SHEET  4 OF  5 SHEETS
-                         THE COMPLETE PICTURE IS CONSTRUCTED BY TAPING THE SHEETS TOGETHER SO THAT THE
                          LAST CHARACTER ON THE FIRST SHEET MEETS THE FIRST CHARACTER ON THE NEXT SHEET
                          WITH NO WHITE SPACE BETWEEN THEM.  THIS WILL REQUIRE TRIMMING THE SHEETS WITH
                          SCISSORS.  DO NOT PUT TAPE ON THE PRINTED SIDE OF THE PAPER; TAPE FROM BEHIND.
-
-
-
-
-
-
0
 ++"+"+++"+M"+""""""++"""+"""+""+""+"""""""""""--"--"----""""-"-""--""--"--"""-"--------""----------"--"------------------""----"--"-
+CC+C+CCC+C +C++++++CC+++C+++C++C++C+++++++++++..+..+....++++.+.++..++..+..+++.+........++..........+..+..................C+....+..C.
+  C C   C  C CCCCCC  CCC CCC CC CC CCCCCCCCCCC''C''C''''CCCC'C'CC''CC''C''CCC'C''''''''CC''''''''''C''C''''''''''''''''''BC''''C''B'
+                                              XX XX XXXX    X X  XX  XX XX   X XXXXXXXX  XXXXXXXXXX XX XXXXXXXXXXXXXXXXXXH XXXX XXHX
+                                              CC CC CCCC    C C  CC  CC CC   C CCCCCCCC  CCCCCCCCCC CC CCCCCCCCCCCCCCCCCCX CCCC CCXC
 +""+"""""="""""""""""""""""+""-"""""-""-"""""--"---"--"------"----"------------"---------------"------------------------------"-----
+C++C+++++C+++++++++++++++++C++.+++++.++.+++++..+...+..+......+....+............+...............C..............................+.....
+ CC CCCCC CCCCCCCCCCCCCCCCC CC'CCCCC'CC'CCCCC''C'''C''C''''''C''''C''''''''''''C'''''''''''''''B''''''''''''''''''''''''''''''C'''''
+                              X     X  X     XX XXX XX XXXXXX XXXX XXXXXXXXXXXX XXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX
+                              C     C  C     CC CCC CC CCCCCC CCCC CCCCCCCCCCCC CCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC
 """""""""""""""""""""""""""""--""""-"--"""-----"--"---"-------"-----------------------"--------"-----------------------""-----""----
++++++++++++++++++++++++++++++..++++.+..+++.....+..+...+.......+.......................+........C.......................CC.....+C....
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CCCC'C''CCC'''''C''C'''C'''''''C'''''''''''''''''''''''C''''''''B'''''''''''''''''''''''BB'''''CB''''
+                             XX    X XX   XXXXX XX XXX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXHHXXXXX HXXXX
+                             CC    C CC   CCCCC CC CCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCXXCCCCC XCCCC
 """""""""""""""""""""""--""""---"""---"---------------------"-----------------------------------"-------------"-"-"-"-----"-""-----"
++++++++++++++++++++++++..++++...+++...+.....................+...................................C.............C.C.C.C.....C.CC.....C
+CCCCCCCCCCCCCCCCCCCCCCC''CCCC'''CCC'''C'''''''''''''''''''''C'''''''''''''''''''''''''''''''''''B'''''''''''''B'B'B'B'''''B'BB'''''B
+                       XX    XXX   XXX XXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXHXHXHXHXXXXXHXHHXXXXXH
+                       CC    CCC   CCC CCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCXCXCXCCCCCXCXXCCCCCX
 """"""""""""""-"""""""""""-""-"--""-""------------------"----"--"----------------------------------------------------"-"------"-----
+++++++++++++++.+++++++++++.++.+..++.++..................+....+..+....................................................C.C......C.....
+CCCCCCCCCCCCCC'CCCCCCCCCCC'CC'C''CC'CC''''''''''''''''''C''''C''C''''''''''''''''''''''''''''''''''''''''''''''''''''B'B''''''B'''''
+              X           X  X XX  X  XXXXXXXXXXXXXXXXXX XXXX XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHXXXXXXHXXXXX
+              C           C  C CC  C  CCCCCCCCCCCCCCCCCC CCCC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXCCCCCCXCCCCC
 """"""""""""""""---"-""--"--""-----------------------------------"-------------"----"--"--"-"-"""---------"--"--"-""-----""------"-"
+++++++++++++++++...+.++..+..++...................................C.............C....C..C..C.C.CCC.........C..C..C.CC.....CC......C.C
+CCCCCCCCCCCCCCCC'''C'CC''C''CC'''''''''''''''''''''''''''''''''''B'''''''''''''B''''B''B''B'B'BBB'''''''''B''B''B'BB'''''BB''''''B'B
+                XXX X  XX XX  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXHXXXXHXXHXXHXHXHHHXXXXXXXXXHXXHXXHXHHXXXXXHHXXXXXXHXH
+                CCC C  CC CC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCCXCCXCCXCXCXXXCCCCCCCCCXCCXCCXCXXCCCCCXXCCCCCCXCX
 """""""""""""""-"-"-"""----"""----------------------------------"------"---------------""---"-""""----------"""-"""---"--"""---"-"--
++++++++++++++++.+.+.+++....+++..................................C......+...............CC...C.CCCC..........CCC.CCC...C..CCC...C.C..
+CCCCCCCCCCCCCCC'C'C'CCC''''CCC''''''''''''''''''''''''''''''''''B''''''C'''''''''''''''BB'''B'BBBB''''''''''BBB'BBB'''B''BBB'''B'B''
+               X X X   XXXX   XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXX XXXXXXXXXXXXXXXHHXXXHXHHHHXXXXXXXXXXHHHXHHHXXXHXXHHHXXXHXHXX
+               C C C   CCCC   CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCC CCCCCCCCCCCCCCCXXCCCXCXXXXCCCCCCCCCCXXXCXXXCCCXCCXXXCCCXCXCC
 """""-""""""-"-----""""---"-"---"-------------------------------"--------"----------"----""-"--"""""--"---"-"-"""-""----""-""--""-""
++++++.++++++.+.....++++...+.+...+...............................C........+..........C....CC.C..CCCCC..C...C.C.CCC.CC....CC.CC..CC.C+
+CCCCC'CCCCCC'C'''''CCCC'''C'C'''C'''''''''''''''''''''''''''''''B''''''''C''''''''''B''''BB'B''BBBBB''B'''B'B'BBB'BB''''BB'BB''BB'BC
+     X      X XXXXX    XXX X XXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXX XXXXXXXXXXHXXXXHHXHXXHHHHHXXHXXXHXHXHHHXHHXXXXHHXHHXXHHXH
+     C      C CCCCC    CCC C CCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCC CCCCCCCCCCXCCCCXXCXCCXXXXXCCXCCCXCXCXXXCXXCCCCXXCXXCCXXCX
 """""""""""""""""-"-"""""-""-"--"""-"----------------"----------"---""----------M------"---""--------------"----""--"--"""--"""-"---
++++++++++++++++++.+.+++++.++.+..+++.+................C..........C...CC.......... ......+...CC..............C....CC..C..CCC..CCC.C...
+CCCCCCCCCCCCCCCCC'C'CCCCC'CC'C''CCC'C''''''''''''''''B''''''''''B'''BB'''''''''' ''''''C'''BB''''''''''''''B''''BB''B''BBB''BBB'B'''
+                 X X     X  X XX   X XXXXXXXXXXXXXXXXHXXXXXXXXXXHXXXHHXXXXXXXXXX XXXXXX XXXHHXXXXXXXXXXXXXXHXXXXHHXXHXXHHHXXHHHXHXXX
+                 C C     C  C CC   C CCCCCCCCCCCCCCCCXCCCCCCCCCCXCCCXXCCCCCCCCCC CCCCCC CCCXXCCCCCCCCCCCCCCXCCCCXXCCXCCXXXCCXXXCXCCC
 """"""""""""--"-"--"--"-"-""----"---"--"---------------------------------------"---""------""--"-"-"-----"-"---"""-"-"-"--""""""----
+++++++++++++..+.+..+..+.+.++....+...+..+.......................................C...CC......CC..C.C.C.....C.C...C+C.C.C.C..CCCCCC....
+CCCCCCCCCCCC''C'C''C''C'C'CC''''C'''C''C'''''''''''''''''''''''''''''''''''''''B'''BB''''''BB''B'B'B'''''B'B'''BCB'B'B'B''BBBBBB''''
+            XX X XX XX X X  XXXX XXX XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHHXXXXXXHHXXHXHXHXXXXXHXHXXXH HXHXHXHXXHHHHHHXXXX
+            CC C CC CC C C  CCCC CCC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXXCCCCCCXXCCXCXCXCCCCCXCXCCCX XCXCXCXCCXXXXXXCCCC
 """"""""""-"-"---"-""-"---""----"---""--------"----------------"----"---------"---""----"--""--"""---"--""-"-""---"--"""""""""""---"
+++++++++++.+.+...+.++.+...++....+...++........+................C....C.........C...CC....C..CC..CCC...C..CC.C.CC...C..CCCCCCCCCCC...C
+CCCCCCCCCC'C'C'''C'CC'C'''CC''''C'''CC''''''''C''''''''''''''''B''''B'''''''''B'''BB''''B''BB''BBB'''B''BB'B'BB'''B''BBBBBBBBBBB'''B
+          X X XXX X  X XXX  XXXX XXX  XXXXXXXX XXXXXXXXXXXXXXXXHXXXXHXXXXXXXXXHXXXHHXXXXHXXHHXXHHHXXXHXXHHXHXHHXXXHXXHHHHHHHHHHHXXXH
+          C C CCC C  C CCC  CCCC CCC  CCCCCCCC CCCCCCCCCCCCCCCCXCCCCXCCCCCCCCCXCCCXXCCCCXCCXXCCXXXCCCXCCXXCXCXXCCCXCCXXXXXXXXXXXCCCX
 """""""""""""""---""-"------------"-"-------"----------------------""--------""-"-"----""-------""-"""--"---"""-"----"-""-----""--""
++++++++++++++++...++.+............+.+.......+......................CC........CC.+.C....CC.......CC.CCC..C...CCC.C....C.CC.....CC..CC
+CCCCCCCCCCCCCCC'''CC'C''''''''''''C'C'''''''C''''''''''''''''''''''BB''''''''BB'C'B''''BB'''''''BB'BBB''B'''BBB'B''''B'BB'''''BB''BB
+               XXX  X XXXXXXXXXXXX X XXXXXXX XXXXXXXXXXXXXXXXXXXXXXHHXXXXXXXXHHX XHXXXXHHXXXXXXXHHXHHHXXHXXXHHHXHXXXXHXHHXXXXXHHXXHH
+               CCC  C CCCCCCCCCCCC C CCCCCCC CCCCCCCCCCCCCCCCCCCCCCXXCCCCCCCCXXC CXCCCCXXCCCCCCCXXCXXXCCXCCCXXXCXCCCCXCXXCCCCCXXCCXX
 """"""""""""""-"""""""-----"---"-"----------"--"------------"--"---"+"-----"---"---"""--------"-"-""-""-"---""""""""""""-"-"-"--"---
+++++++++++++++.+++++++.....+...+.+..........+..+............C..C...CCC.....C...C...CCC........C.C.CC.C+.C...CCCCCCCCCCCC.C.C.C..C...
+CCCCCCCCCCCCCC'CCCCCCC'''''C'''C'C''''''''''C''C''''''''''''B''B'''B B'''''B'''B'''BBB''''''''B'B'BB'BC'B'''BBBBBBBBBBBB'B'B'B''B'''
+              X       XXXXX XXX X XXXXXXXXXX XX XXXXXXXXXXXXHXXHXXXH HXXXXXHXXXHXXXHHHXXXXXXXXHXHXHHXH XHXXXHHHHHHHHHHHHXHXHXHXXHXXX
+              C       CCCCC CCC C CCCCCCCCCC CC CCCCCCCCCCCCXCCXCCCX XCCCCCXCCCXCCCXXXCCCCCCCCXCXCXXCX CXCCCXXXXXXXXXXXXCXCXCXCCXCCC
 -"""""""""-""-""-"-""---""-""--"----"-"-----------------------------"-------"---"---------"--""----""----"-""-""--"--""""-"""----"-"
+.+++++++++.++.++.+.++...++.++..+....+.+.............................C.......C...C.........C..CC....CC....C.CC.CC..C..CCCC.CCC....C.C
+'CCCCCCCCC'CC'CC'C'CC'''CC'CC''C''''C'C'''''''''''''''''''''''''''''B'''''''B'''B'''''''''B''BB''''BB''''B'BB'BB''B''BBBB'BBB''''B'B
+X         X  X  X X  XXX  X  XX XXXX X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXHXXXHXXXXXXXXXHXXHHXXXXHHXXXXHXHHXHHXXHXXHHHHXHHHXXXXHXH
+C         C  C  C C  CCC  C  CC CCCC C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCXCCCXCCCCCCCCCXCCXXCCCCXXCCCCXCXXCXXCCXCCXXXXCXXXCCCCXCX
 """"""""""-"""""--"""-""--""-------"""------------------------------""----"--------"------""""---"-"-"""""-"-"-"-""""-"--"-""--""--"
+++++++++++.+++++..+++.++..++.......+++..............................CC....C........C......CCCC...C.C.CCCCC.C.C.C.CCCC.C..C.CC..CC..C
+CCCCCCCCCC'CCCCC''CCC'CC''CC'''''''CCC''''''''''''''''''''''''''''''BB''''B''''''''B''''''BBBB'''B'B'BBBBB'B'B'B'BBBB'B''B'BB''BB''B
+          X     XX   X  XX  XXXXXXX   XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXXXHXXXXXXXXHXXXXXXHHHHXXXHXHXHHHHHXHXHXHXHHHHXHXXHXHHXXHHXXH
+          C     CC   C  CC  CCCCCCC   CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCCCXCCCCCCCCXCCCCCCXXXXCCCXCXCXXXXXCXCXCXCXXXXCXCCXCXXCCXXCCX
 """"""""""-"-"-"-----"-"---"------""""-""-----------------"---------"-"-"----------"---"--""-"-"--"--"-""""""-""--"""-"""--""-"+"--"
+++++++++++.+.+.+.....+.+...+......++++.++.................C.........C.C.C..........C...C..CC.C.C..C..C.CCCCCC.CC..CCC.CCC..CC.CCC..C
+CCCCCCCCCC'C'C'C'''''C'C'''C''''''CCCC'CC'''''''''''''''''B'''''''''B'B'B''''''''''B'''B''BB'B'B''B''B'BBBBBB'BB''BBB'BBB''BB'B B''B
+          X X X XXXXX X XXX XXXXXX    X  XXXXXXXXXXXXXXXXXHXXXXXXXXXHXHXHXXXXXXXXXXHXXXHXXHHXHXHXXHXXHXHHHHHHXHHXXHHHXHHHXXHHXH HXXH
+          C C C CCCCC C CCC CCCCCC    C  CCCCCCCCCCCCCCCCCXCCCCCCCCCXCXCXCCCCCCCCCCXCCCXCCXXCXCXCCXCCXCXXXXXXCXXCCXXXCXXXCCXXCX XCCX
 """+"+"""""-""""""-""--"--------""""+""""---"----"-----------"-----------------""---"-""------"---"--"------"""-""----"-""---""---""
++++C+C+++++.++++++.++..+........++++C++++...+....+...........+.................CC...C.CC......C...C..C......CCC.CC....C.CC...CC...CC
+CCC C CCCCC'CCCCCC'CC''C''''''''CCCC CCCC'''C''''C'''''''''''C'''''''''''''''''BB'''B'BB''''''B'''B''B''''''BBB'BB''''B'BB'''BB'''BB
+           X      X  XX XXXXXXXX         XXX XXXX XXXXXXXXXXX XXXXXXXXXXXXXXXXXHHXXXHXHHXXXXXXHXXXHXXHXXXXXXHHHXHHXXXXHXHHXXXHHXXXHH
+           C      C  CC CCCCCCCC         CCC CCCC CCCCCCCCCCC CCCCCCCCCCCCCCCCCXXCCCXCXXCCCCCCXCCCXCCXCCCCCCXXXCXXCCCCXCXXCCCXXCCCXX
 """""""""""""-"---"------------"+""""""---"----------------------""---""----"""-"-----"-""""-"""--"-"-""--""-"-"--"--"""-"-""-"--"--
++++++++++++++.+...+............+C++++++...+......................+C...CC....CCC.C.....C.CCCC.CCC..C.C.CC..CC.C.C..C..CCC.C.CC.C..C..
+CCCCCCCCCCCCC'C'''C''''''''''''C CCCCCC'''C''''''''''''''''''''''CB'''BB''''BBB'B'''''B'BBBB'BBB''B'B'BB''BB'B'B''B''BBB'B'BB'B''B''
+             X XXX XXXXXXXXXXXX        XXX XXXXXXXXXXXXXXXXXXXXXX HXXXHHXXXXHHHXHXXXXXHXHHHHXHHHXXHXHXHHXXHHXHXHXXHXXHHHXHXHHXHXXHXX
+             C CCC CCCCCCCCCCCC        CCC CCCCCCCCCCCCCCCCCCCCCC XCCCXXCCCCXXXCXCCCCCXCXXXXCXXXCCXCXCXXCCXXCXCXCCXCCXXXCXCXXCXCCXCC
 """""""""""""-""--""-"-""-----"""""-"""--------------------------"-------------------"--""--""-""---"--""""-"-""""-"""""""""""-"-"""
++++++++++++++.++..++.+.++.....+++++.+++..........................+...................C..CC..CC.CC...C..CCCC.C.CCCC.CCCCCCCCCCC.C.CCC
+CCCCCCCCCCCCC'CC''CC'C'CC'''''CCCCC'CCC''''''''''''''''''''''''''C'''''''''''''''''''B''BB''BB'BB'''B''BBBB'B'BBBB'BBBBBBBBBBB'B'BBB
+             X  XX  X X  XXXXX     X   XXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXHXXHHXXHHXHHXXXHXXHHHHXHXHHHHXHHHHHHHHHHHXHXHHH
+             C  CC  C C  CCCCC     C   CCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCXCCXXCCXXCXXCCCXCCXXXXCXCXXXXCXXXXXXXXXXXCXCXXX
 """"""""""""-""-+--""-"--------""""-----------------------"-----"-------"-"-"---""-"---"--""-"""-""--"-"""""""""-------"""""""-"""""
+++++++++++++.++.C..++.+........++++.......................C.....C.......C.C.C...CC.C...C..CC.CCC.CC..C.CCCCCCCCC.......CCCCCCC.CCCCC
+CCCCCCCCCCCC'CC' ''CC'C''''''''CCCC'''''''''''''''''''''''B'''''B'''''''B'B'B'''BB'B'''B''BB'BBB'BB''B'BBBBBBBBB'''''''BBBBBBB'BBBBB
+            X  X XX  X XXXXXXXX    XXXXXXXXXXXXXXXXXXXXXXXHXXXXXHXXXXXXXHXHXHXXXHHXHXXXHXXHHXHHHXHHXXHXHHHHHHHHHXXXXXXXHHHHHHHXHHHHH
+            C  C CC  C CCCCCCCC    CCCCCCCCCCCCCCCCCCCCCCCXCCCCCXCCCCCCCXCXCXCCCXXCXCCCXCCXXCXXXCXXCCXCXXXXXXXXXCCCCCCCXXXXXXXCXXXXX
 """"""""---"-"-"---"--"--------"""""""------------------"-----"----"-"--"-"-""--"-""""""""-----"""-""-"""-"""-"""-"--"--"""""""""""-
+++++++++...+.+.+...+..+........+++++++..................C.....C....C.C..C.C.CC..C.CCCCCCCC.....CCC.CC.CCC.CCC.CCC.C..C..CCCCCCCCCCC.
+CCCCCCCC'''C'C'C'''C''C''''''''CCCCCCC''''''''''''''''''B'''''B''''B'B''B'B'BB''B'BBBBBBBB'''''BBB'BB'BBB'BBB'BBB'B''B''BBBBBBBBBBB'
+        XXX X X XXX XX XXXXXXXX       XXXXXXXXXXXXXXXXXXHXXXXXHXXXXHXHXXHXHXHHXXHXHHHHHHHHXXXXXHHHXHHXHHHXHHHXHHHXHXXHXXHHHHHHHHHHHX
+        CCC C C CCC CC CCCCCCCC       CCCCCCCCCCCCCCCCCCXCCCCCXCCCCXCXCCXCXCXXCCXCXXXXXXXXCCCCCXXXCXXCXXXCXXXCXXXCXCCXCCXXXXXXXXXXXC
 """"""-"-"-------"---"-"---------""""----"-----------------"-------"---"---"--"-""--"--"-"--"""-""--""--"""-""--"---"--"--"""--"-"-"
+++++++.+.+.......+...+.+.........++++....+.................C.......C...C...C..C.CC..C..C.C..CCC.CC..CC..CCC.CC..C...C..C..CCC..C.C.C
+CCCCCC'C'C'''''''C'''C'C'''''''''CCCC''''C'''''''''''''''''B'''''''B'''B'''B''B'BB''B''B'B''BBB'BB''BB''BBB'BB''B'''B''B''BBB''B'B'B
+      X X XXXXXXX XXX X XXXXXXXXX    XXXX XXXXXXXXXXXXXXXXXHXXXXXXXHXXXHXXXHXXHXHHXXHXXHXHXXHHHXHHXXHHXXHHHXHHXXHXXXHXXHXXHHHXXHXHXH
+      C C CCCCCCC CCC C CCCCCCCCC    CCCC CCCCCCCCCCCCCCCCCXCCCCCCCXCCCXCCCXCCXCXXCCXCCXCXCCXXXCXXCCXXCCXXXCXXCCXCCCXCCXCCXXXCCXCXCX
 """"""-"-"---"---""--"""-------"-""""----"--------------------"-------------------"--""--""-"""------"""""---"--"------""""""-""""-"
+++++++.+.+...+...++..+++.......+.++++....+....................C...................C..CC..CC.CCC......CCCCC...C..C......CCCCCC.CCCC.C
+CCCCCC'C'C'''C'''CC''CCC'''''''C'CCCC''''C''''''''''''''''''''B'''''''''''''''''''B''BB''BB'BBB''''''BBBBB'''B''B''''''BBBBBB'BBBB'B
+      X X XXX XXX  XX   XXXXXXX X    XXXX XXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXHXXHHXXHHXHHHXXXXXXHHHHHXXXHXXHXXXXXXHHHHHHXHHHHXH
+      C C CCC CCC  CC   CCCCCCC C    CCCC CCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCXCCXXCCXXCXXXCCCCCCXXXXXCCCXCCXCCCCCCXXXXXXCXXXXCX
 """"""-"--"---"--"--"------------"""""------------------------""----"""---"--"-"--"-""-"""-""--"-----"--"""""-"-""-""""""""""""""-""
+++++++.+..+...+..+..+............+++++........................CC....CCC...C..C.C..C.CC.CCC.CC..C.....C..CCCCC.C.CC.CCCCCCCCCCCCCC.CC
+CCCCCC'C''C'''C''C''C''''''''''''CCCCC''''''''''''''''''''''''BB''''BBB'''B''B'B''B'BB'BBB'BB''B'''''B''BBBBB'B'BB'BBBBBBBBBBBBBB'BB
+      X XX XXX XX XX XXXXXXXXXXXX     XXXXXXXXXXXXXXXXXXXXXXXXHHXXXXHHHXXXHXXHXHXXHXHHXHHHXHHXXHXXXXXHXXHHHHHXHXHHXHHHHHHHHHHHHHHXHH
+      C CC CCC CC CC CCCCCCCCCCCC     CCCCCCCCCCCCCCCCCCCCCCCCXXCCCCXXXCCCXCCXCXCCXCXXCXXXCXXCCXCCCCCXCCXXXXXCXCXXCXXXXXXXXXXXXXXCXX
 """"""-"""-"""-"----""""---"---""""""------------------------------"---"-"--------"-----"--""-""""--"-""------"--"--""-""--"--""-"""
+++++++.+++.+++.+....++++...+...++++++..............................C...C.C........C.....C..CC.CCCC..C.CC......C..C..CC.CC..C..CC.CCC
+CCCCCC'CCC'CCC'C''''CCCC'''C'''CCCCCC''''''''''''''''''''''''''''''B'''B'B''''''''B'''''B''BB'BBBB''B'BB''''''B''B''BB'BB''B''BB'BBB
+      X   X   X XXXX    XXX XXX      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHXHXXXXXXXXHXXXXXHXXHHXHHHHXXHXHHXXXXXXHXXHXXHHXHHXXHXXHHXHHH
+      C   C   C CCCC    CCC CCC      CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXCXCCCCCCCCXCCCCCXCCXXCXXXXCCXCXXCCCCCCXCCXCCXXCXXCCXCCXXCXXX
 """-"""""""-----"-------------"-"""-----------------------------------"--"-"-""------"--""---""-"-"--"---"--""---""""""--"-"-"------
++++.+++++++.....+.............+.+++...................................C..C.C.CC......C..CC...CC.C.C..C...C..CC...CCCCCC..C.C.C......
+CCC'CCCCCCC'''''C'''''''''''''C'CCC'''''''''''''''''''''''''''''''''''B''B'B'BB''''''B''BB'''BB'B'B''B'''B''BB'''BBBBBB''B'B'B''''''
+   X       XXXXX XXXXXXXXXXXXX X   XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXHXHXHHXXXXXXHXXHHXXXHHXHXHXXHXXXHXXHHXXXHHHHHHXXHXHXHXXXXXX
+   C       CCCCC CCCCCCCCCCCCC C   CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCXCXXCCCCCCXCCXXCCCXXCXCXCCXCCCXCCXXCCCXXXXXXCCXCXCXCCCCCC
 """"""""-"""-""-""---------------"-----------------------------------"---"----"--"-------"----"""""---""-"-------"-""""-""""-""""-""
+++++++++.+++.++.++...............+...................................C...C....C..C.......C....CCCCC...CC.C.......C.CCCC.CCCC.CCCC.CC
+CCCCCCCC'CCC'CC'CC'''''''''''''''C'''''''''''''''''''''''''''''''''''B'''B''''B''B'''''''B''''BBBBB'''BB'B'''''''B'BBBB'BBBB'BBBB'BB
+        X   X  X  XXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHXXXXHXXHXXXXXXXHXXXXHHHHHXXXHHXHXXXXXXXHXHHHHXHHHHXHHHHXHH
+        C   C  C  CCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXCCCCXCCXCCCCCCCXCCCCXXXXXCCCXXCXCCCCCCCXCXXXXCXXXXCXXXXCXX
 """-""""""""-"""-"------------"-------"-----------------------------"-""""-----"-"-"-""-"-"""--""-----"""""-"--"-"""""""-""-""""-"-"
++++.++++++++.+++.+............+.......+.............................C.CCCC.....C.C.C.+C.C.CCC..CC.....CCCCC.C..+.CCCCCCC.CC.CCCC.C.C
+CCC'CCCCCCCC'CCC'C''''''''''''C'''''''C'''''''''''''''''''''''''''''B'BBBB'''''B'B'B'CB'B'BBB''BB'''''BBBBB'B''C'BBBBBBB'BB'BBBB'B'B
+   X        X   X XXXXXXXXXXXX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHHHHXXXXXHXHXHX HXHXHHHXXHHXXXXXHHHHHXHXX XHHHHHHHXHHXHHHHXHXH
+   C        C   C CCCCCCCCCCCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXXXXCCCCCXCXCXC XCXCXXXCCXXCCCCCXXXXXCXCC CXXXXXXXCXXCXXXXCXCX
 """"-"-"""-"""""""--"---"------""-"---------------------------"--"----"------"-"--"-"--"-------"--"-----------------"--""""-""--"--"
+++++.+.+++.+++++++..+...+......++.+...........................C..C....C......C.C..C.C..C.......C..C.................C..CCCC.CC..C..C
+CCCC'C'CCC'CCCCCCC''C'''C''''''CC'C'''''''''''''''''''''''''''B''B''''B''''''B'B''B'B''B'''''''B''B'''''''''''''''''B''BBBB'BB''B''B
+    X X   X       XX XXX XXXXXX  X XXXXXXXXXXXXXXXXXXXXXXXXXXXHXXHXXXXHXXXXXXHXHXXHXHXXHXXXXXXXHXXHXXXXXXXXXXXXXXXXXHXXHHHHXHHXXHXXH
+    C C   C       CC CCC CCCCCC  C CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCCCCXCCCCCCXCXCCXCXCCXCCCCCCCXCCXCCCCCCCCCCCCCCCCCXCCXXXXCXXCCXCCX
 ""-"""--"-"""""---"-"----------------------------------------------""-----"""------"-""-"-"--"-------"""-""""""----"-"""""""""""""""
+++.+++..+.+++++...+.+..............................................CC.....CCC......C.CC.C.C..C.......CCC.CCCCCC....C.CCCCCCCCCCCCCCC
+CC'CCC''C'CCCCC'''C'C''''''''''''''''''''''''''''''''''''''''''''''BB'''''BBB''''''B'BB'B'B''B'''''''BBB'BBBBBB''''B'BBBBBBBBBBBBBBB
+  X   XX X     XXX X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXXXXHHHXXXXXXHXHHXHXHXXHXXXXXXXHHHXHHHHHHXXXXHXHHHHHHHHHHHHHHH
+  C   CC C     CCC C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCCCCXXXCCCCCCXCXXCXCXCCXCCCCCCCXXXCXXXXXXCCCCXCXXXXXXXXXXXXXXX
 """-""""""""""--"---"-"----------"------+-------------------------"----"------"-""----"---"--""-""""-----""""-""---"""""""""""-"-"""
++++.++++++++++..+...+.+..........+......C.........................C....C......C.CC....C...C..CC.CCCC.....CCCC.CC...CCCCCCCCCCC.C.CCC
+CCC'CCCCCCCCCC''C'''C'C''''''''''C'''''' '''''''''''''''''''''''''B''''B''''''B'BB''''B'''B''BB'BBBB'''''BBBB'BB'''BBBBBBBBBBB'B'BBB
+   X          XX XXX X XXXXXXXXXX XXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHXXXXXXHXHHXXXXHXXXHXXHHXHHHHXXXXXHHHHXHHXXXHHHHHHHHHHHXHXHHH
+   C          CC CCC C CCCCCCCCCC CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXCCCCCCXCXXCCCCXCCCXCCXXCXXXXCCCCCXXXXCXXCCCXXXXXXXXXXXCXCXXX
 """""""--"-""---"-"------------"---"----"---------------------"---"""----"----"-"""-"---"-"----"""-----"-"""""""---"--"-""""""""-"-"
++++++++..+.++...+.+............+...+....+.....................C...CC+....C....C.CCC.C...C.C....CCC.....C.CCCCCCC...C..C.CCCCCCCC.C.C
+CCCCCCC''C'CC'''C'C''''''''''''C'''C''''C'''''''''''''''''''''B'''BBC''''B''''B'BBB'B'''B'B''''BBB'''''B'BBBBBBB'''B''B'BBBBBBBB'B'B
+       XX X  XXX X XXXXXXXXXXXX XXX XXXX XXXXXXXXXXXXXXXXXXXXXHXXXHH XXXXHXXXXHXHHHXHXXXHXHXXXXHHHXXXXXHXHHHHHHHXXXHXXHXHHHHHHHHXHXH
+       CC C  CCC C CCCCCCCCCCCC CCC CCCC CCCCCCCCCCCCCCCCCCCCCXCCCXX CCCCXCCCCXCXXXCXCCCXCXCCCCXXXCCCCCXCXXXXXXXCCCXCCXCXXXXXXXXCXCX
 "-""""-"-""-"-""--"--"-------------------"--"----"------------"------"--"-------------"""--""-------"-------"---"""-"""""""--"""--"-
++.++++.+.++.+.++..+..+...................+..+....C............C......+..C.............CC+..+C.......C.......C...CCC.CCCCCCC..CCC..C.
+C'CCCC'C'CC'C'CC''C''C'''''''''''''''''''C''C''''B''''''''''''B''''''C''B'''''''''''''BBC''CB'''''''B'''''''B'''BBB'BBBBBBB''BBB''B'
+ X    X X  X X  XX XX XXXXXXXXXXXXXXXXXXX XX XXXXHXXXXXXXXXXXXHXXXXXX XXHXXXXXXXXXXXXXHH XX HXXXXXXXHXXXXXXXHXXXHHHXHHHHHHHXXHHHXXHX
+ C    C C  C C  CC CC CCCCCCCCCCCCCCCCCCC CC CCCCXCCCCCCCCCCCCXCCCCCC CCXCCCCCCCCCCCCCXX CC XCCCCCCCXCCCCCCCXCCCXXXCXXXXXXXCCXXXCCXC
 """""""------"--""--"--------------"-----------------"""--"-----------"-----------""-""--"""-"-"-----"""-"""-"""""-"""-"""""""""""""
++++++++......+..++..+..............+.................CC+..C...........+...........CC.CC..CCC.C.C.....CCC.CCC.CCCCC.CCC.CCCCCCCCCCCCC
+CCCCCCC''''''C''CC''C''''''''''''''C'''''''''''''''''BBC''B'''''''''''C'''''''''''BB'BB''BBB'B'B'''''BBB'BBB'BBBBB'BBB'BBBBBBBBBBBBB
+       XXXXXX XX  XX XXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXHH XXHXXXXXXXXXXX XXXXXXXXXXXHHXHHXXHHHXHXHXXXXXHHHXHHHXHHHHHXHHHXHHHHHHHHHHHHH
+       CCCCCC CC  CC CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCXX CCXCCCCCCCCCCC CCCCCCCCCCCXXCXXCCXXXCXCXCCCCCXXXCXXXCXXXXXCXXXCXXXXXXXXXXXXX
 """""""----"-----"--"--------------"------------------------------"----------"-"--"-"""""----""""---""""""""-"""""-"""-""""""--"""""
++++++++....+.....+..+..............+..............................C..........C.C..C.CCCCC....CCCC...CCCCCCCC.CCCCC.CCC.CCCCCC..CCCCC
+CCCCCCC''''C'''''C''C''''''''''''''C''''''''''''''''''''''''''''''B''''''''''B'B''B'BBBBB''''BBBB'''BBBBBBBB'BBBBB'BBB'BBBBBB''BBBBB
+       XXXX XXXXX XX XXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXHXHXXHXHHHHHXXXXHHHHXXXHHHHHHHHXHHHHHXHHHXHHHHHHXXHHHHH
+       CCCC CCCCC CC CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCXCXCCXCXXXXXCCCCXXXXCCCXXXXXXXXCXXXXXCXXXCXXXXXXCCXXXXX
 ""-""----"-----------------------------------------"--------------"-"-------""-"--"--"-"------""-""""-"-""-"-"""-"""--"""""""""-""""
+++.++....+.........................................C..............C.C.......CC.C..C..C.C......CC.CCCC.C.CC.C.CCC.CCC..CCCCCCCCC.CCCC
+CC'CC''''C'''''''''''''''''''''''''''''''''''''''''B''''''''''''''B'B'''''''BB'B''B''B'B''''''BB'BBBB'B'BB'B'BBB'BBB''BBBBBBBBB'BBBB
+  X  XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXHXHXXXXXXXHHXHXXHXXHXHXXXXXXHHXHHHHXHXHHXHXHHHXHHHXXHHHHHHHHHXHHHH
+  C  CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCXCXCCCCCCCXXCXCCXCCXCXCCCCCCXXCXXXXCXCXXCXCXXXCXXXCCXXXXXXXXXCXXXX
 ""-""-"--"-----------------------------------------"---------"-"---"---"-""-""-"-"-"--"----""---""""""--"-""-"""""--""""-""--"""-"""
+++.++.+..+.........................................C.........C.C...C...C.CC.CC.C.C.C..C....CC...CCCCCC..C.CC.CCCCC..CCCC.CC..CCC.CCC
+CC'CC'C''C'''''''''''''''''''''''''''''''''''''''''B'''''''''B'B'''B'''B'BB'BB'B'B'B''B''''BB'''BBBBBB''B'BB'BBBBB''BBBB'BB''BBB'BBB
+  X  X XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXHXHXXXHXXXHXHHXHHXHXHXHXXHXXXXHHXXXHHHHHHXXHXHHXHHHHHXXHHHHXHHXXHHHXHHH
+  C  C CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXCXCCCXCCCXCXXCXXCXCXCXCCXCCCCXXCCCXXXXXXCCXCXXCXXXXXCCXXXXCXXCCXXXCXXX
 --""""----------------------------------------------------"---------"-""-""-""-""------"---""-"""""-""-"""""-""""""-"""-"-""""""""""
+..++++....................................................C.........C.CC.CC.CC.CC......C...CC.CCCCC.CC.CCCCC.CCCCCC.CCC.C.CCCCCCCCCC
+''CCCC''''''''''''''''''''''''''''''''''''''''''''''''''''B'''''''''B'BB'BB'BB'BB''''''B'''BB'BBBBB'BB'BBBBB'BBBBBB'BBB'B'BBBBBBBBBB
+XX    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXHXHHXHHXHHXHHXXXXXXHXXXHHXHHHHHXHHXHHHHHXHHHHHHXHHHXHXHHHHHHHHHH
+CC    CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXCXXCXXCXXCXXCCCCCCXCCCXXCXXXXXCXXCXXXXXCXXXXXXCXXXCXCXXXXXXXXXX
 "-""--"--"-----------------------------------------"---"--"--------"-"""""-""-""-----"-""--"--""""--"""""""""""""-""""""""""""""""""
++.++..+..+.........................................C...C..C........C.CCCCC.CC.CC.....C.CC..C..CCCC..CCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCC
+C'CC''C''C'''''''''''''''''''''''''''''''''''''''''B'''B''B''''''''B'BBBBB'BB'BB'''''B'BB''B''BBBB''BBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB
+ X  XX XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHXXHXXXXXXXXHXHHHHHXHHXHHXXXXXHXHHXXHXXHHHHXXHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHH
+ C  CC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXCCXCCCCCCCCXCXXXXXCXXCXXCCCCCXCXXCCXCCXXXXCCXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXX
 """-"--"-"--""--------------------------------------"--------------"---"--"""--"-""-""-+---""""-"----"-""""""""-""""""""""""-"-"""""
++++.+..+.+..++......................................C..............C...C..CCC..C.CC.CC.C...CCCC.C....C.CCCCCCCC.CCCCCCCC+CCC.C.CCCCC
+CCC'C''C'C''CC''''''''''''''''''''''''''''''''''''''B''''''''''''''B'''B''BBB''B'BB'BB' '''BBBB'B''''B'BBBBBBBB'BBBBBBBBCBBB'B'BBBBB
+   X XX X XX  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXHXXXHXXHHHXXHXHHXHHX XXXHHHHXHXXXXHXHHHHHHHHXHHHHHHHH HHHXHXHHHHH
+   C CC C CC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCXCCCXCCXXXCCXCXXCXXC CCCXXXXCXCCCCXCXXXXXXXXCXXXXXXXX XXXCXCXXXXX
 "-"-"""-"---"--------"--------------------"----------------"-"-----"-"--"""---""-"-------"-"-""-"-""""-"-""""-""""--"""""--""""-"""-
++.+.+++.+...+........+....................C................C.C.....C.C..CCC...CC.C.......C.C.CC.C.CCCC.C.CCCC.+CCC..CCCC+..CCCC.CCC.
+C'C'CCC'C'''C''''''''C''''''''''''''''''''B''''''''''''''''B'B'''''B'B''BBB'''BB'B'''''''B'B'BB'B'BBBB'B'BBBB'CBBB''BBBBC''BBBB'BBB'
+ X X   X XXX XXXXXXXX XXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXHXHXXXXXHXHXXHHHXXXHHXHXXXXXXXHXHXHHXHXHHHHXHXHHHHX HHHXXHHHH XXHHHHXHHHX
+ C C   C CCC CCCCCCCC CCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCXCXCCCCCXCXCCXXXCCCXXCXCCCCCCCXCXCXXCXCXXXXCXCXXXXC XXXCCXXXX CCXXXXCXXXC
 -----"--+----------------------------------------------""""-"----"""""--"-"""""--"""-"""""""""""""-"--""""""""-""""-""""""""""""""""
+.....+..C..............................................CCCC.C....CCCCC..C.CCCCC..CCC.CCCCCCCCCCCCC.C..CCCCCCCC.CCCC.CCCCCCCCCCCCCCCC
+'''''C'' ''''''''''''''''''''''''''''''''''''''''''''''BBBB'B''''BBBBB''B'BBBBB''BBB'BBBBBBBBBBBBB'B''BBBBBBBB'BBBB'BBBBBBBBBBBBBBBB
+XXXXX XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHHHXHXXXXHHHHHXXHXHHHHHXXHHHXHHHHHHHHHHHHHXHXXHHHHHHHHXHHHHXHHHHHHHHHHHHHHHH
+CCCCC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXXXCXCCCCXXXXXCCXCXXXXXCCXXXCXXXXXXXXXXXXXCXCCXXXXXXXXCXXXXCXXXXXXXXXXXXXXXX
 -----"---------------------------------------------------"---------"""-""-"-"--"--"""-""""""-""""""""-""-"""""-""""""""""""""""""-""
+.....+...................................................C.........CCC.CC.C.C..C..CCC.CCCCCC.CCCCCCCC.CC.CCCCC.CCCCCCCCCCCCCCCCCC.CC
+'''''C'''''''''''''''''''''''''''''''''''''''''''''''''''B'''''''''BBB'BB'B'B''B''BBB'BBBBBB'BBBBBBBB'BB'BBBBB'BBBBBBBBBBBBBBBBBB'BB
+XXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXHHHXHHXHXHXXHXXHHHXHHHHHHXHHHHHHHHXHHXHHHHHXHHHHHHHHHHHHHHHHHHXHH
+CCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXXXCXXCXCXCCXCCXXXCXXXXXXCXXXXXXXXCXXCXXXXXCXXXXXXXXXXXXXXXXXXCXX
 ----"--"-----"------------------------------------"---"--"-------"--""-"-"----""-"-----""""--""-"""""""--"-"""""""""""""""""""""""""
+....+..+.....+....................................C...C..C.......C..CC.C.C....CC.C.....CCCC..CC.CCCCCCC..C.CCCCCCCCCCCCCCCCCCCCCCCCC
+''''C''C'''''C''''''''''''''''''''''''''''''''''''B'''B''B'''''''B''BB'B'B''''BB'B'''''BBBB''BB'BBBBBBB''B'BBBBBBBBBBBBBBBBBBBBBBBBB
+XXXX XX XXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHXXHXXXXXXXHXXHHXHXHXXXXHHXHXXXXXHHHHXXHHXHHHHHHHXXHXHHHHHHHHHHHHHHHHHHHHHHHHH
+CCCC CC CCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXCCXCCCCCCCXCCXXCXCXCCCCXXCXCCCCCXXXXCCXXCXXXXXXXCCXCXXXXXXXXXXXXXXXXXXXXXXXXX
 "-""---"-----------------"---------"-----------------+------------"---"""-"----""---"-"---""""+---"-"""""--""--"-""""""-""#""-""""""
++.++...+.................+.........+.................C............C...CCC.C....CC...C.C...CCCCC...C.CCCCC..CC..C.CCCCCC.CCXCC.CCCCCC
+C'CC'''C'''''''''''''''''C'''''''''C''''''''''''''''' ''''''''''''B'''BBB'B''''BB'''B'B'''BBBB '''B'BBBBB''BB''B'BBBBBB'BB$BB'BBBBBB
+ X  XXX XXXXXXXXXXXXXXXXX XXXXXXXXX XXXXXXXXXXXXXXXXX XXXXXXXXXXXXHXXXHHHXHXXXXHHXXXHXHXXXHHHH XXXHXHHHHHXXHHXXHXHHHHHHXHH_HHXHHHHHH
+ C  CCC CCCCCCCCCCCCCCCCC CCCCCCCCC CCCCCCCCCCCCCCCCC CCCCCCCCCCCCXCCCXXXCXCCCCXXCCCXCXCCCXXXX CCCXCXXXXXCCXXCCXCXXXXXXCXX&XXCXXXXXX
 -""-"----------------------------------"---------"-------------------"-"""----"""""-"--""-"""""-"""""""-"--"""""""""""""""""""""-"""
+.++.+..................................C.........C...................C.CCC....CCCCC.C..CC.CCCCC.CCCCCCC.C..CCCCCCCCCCCCCCCCCCCCC.CCC
+'CC'C''''''''''''''''''''''''''''''''''B'''''''''B'''''''''''''''''''B'BBB''''BBBBB'B''BB'BBBBB'BBBBBBB'B''BBBBBBBBBBBBBBBBBBBBB'BBB
+X  X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXHXXXXXXXXXXXXXXXXXXXHXHHHXXXXHHHHHXHXXHHXHHHHHXHHHHHHHXHXXHHHHHHHHHHHHHHHHHHHHHXHHH
+C  C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXCCCCCCCCCCCCCCCCCCCXCXXXCCCCXXXXXCXCCXXCXXXXXCXXXXXXXCXCCXXXXXXXXXXXXXXXXXXXXXCXXX
 -"""----"---"---------"----------------------"----------------"---"--"---"--""""-""-"""--""-"""""""""""---""""""""""""""""""-"""""""
+.+++....+...+.........+......................C................C...C..C...C..CCCC.CC.CCC..CC.CCCCCCCCCCC...CCCCCCCCCCCCCCCCCC.CCCCCCC
+'CCC''''C'''C'''''''''C''''''''''''''''''''''B''''''''''''''''B'''B''B'''B''BBBB'BB'BBB''BB'BBBBBBBBBBB'''BBBBBBBBBBBBBBBBBB'BBBBBBB
+X   XXXX XXX XXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXHXXXHXXHXXXHXXHHHHXHHXHHHXXHHXHHHHHHHHHHHXXXHHHHHHHHHHHHHHHHHHXHHHHHHH
+C   CCCC CCC CCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCXCCCXCCXCCCXCCXXXXCXXCXXXCCXXCXXXXXXXXXXXCCCXXXXXXXXXXXXXXXXXXCXXXXXXX
 ---"-"--"--------------------------------------------"-------------"---"""---"""-""--"""-"""-"""""-""""--""""""""""-""""""""""""""""
+...+.+..+............................................C.............C...CCC...CCC.CC..CCC.CCC.CCCCC.CCCC..CCCCCCCCCC.CCCCCCCCCCCCCCCC
+'''C'C''C''''''''''''''''''''''''''''''''''''''''''''B'''''''''''''B'''BBB'''BBB'BB''BBB'BBB'BBBBB'BBBB''BBBBBBBBBB'BBBBBBBBBBBBBBBB
+XXX X XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXHXXXHHHXXXHHHXHHXXHHHXHHHXHHHHHXHHHHXXHHHHHHHHHHXHHHHHHHHHHHHHHHH
+CCC C CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCXXXCCCXXXCXXCCXXXCXXXCXXXXXCXXXXCCXXXXXXXXXXCXXXXXXXXXXXXXXXX
 -"---""--"----------"----------------------"-"---"---"---"--"--------""-"""--"-"---"-"""""""""-"""""""""""-""""""""""""""""""""-""""
+.+...++..+..........+......................C.C...C...C...C..C........CC.CCC..C.C...C.CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCC.CCCC
+'C'''CC''C''''''''''C''''''''''''''''''''''B'B'''B'''B'''B''B''''''''BB'BBB''B'B'''B'BBBBBBBBB'BBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBB'BBBB
+X XXX  XX XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXHXHXXXHXXXHXXXHXXHXXXXXXXXHHXHHHXXHXHXXXHXHHHHHHHHHXHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHXHHHH
+C CCC  CC CCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCXCXCCCXCCCXCCCXCCXCCCCCCCCXXCXXXCCXCXCCCXCXXXXXXXXXCXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXCXXXX
 "--"-------"---------------------------------"----"-"----"-""""---"--""-"-""-"-"-""--"""""""""""""-""""""""""""""-""""""""""""""""""
++..+.......+.................................C....C.C....C.CCCC...C..CC.C.CC.C.C.CC..CCCCCCCCCCCCC.CCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCC
+C''C'''''''C'''''''''''''''''''''''''''''''''B''''B'B''''B'BBBB'''B''BB'B'BB'B'B'BB''BBBBBBBBBBBBB'BBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB
+ XX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHXHXXXXHXHHHHXXXHXXHHXHXHHXHXHXHHXXHHHHHHHHHHHHHXHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHH
+ CC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXCXCCCCXCXXXXCCCXCCXXCXCXXCXCXCXXCCXXXXXXXXXXXXXCXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXX
 --""--"------------------------------------"------"-------"-"----"--"""----"""-"-"""""-""""""--""""""""-"-""""""""""""""""""""""""""
+..++..+....................................C......C.......C.C....C..CCC....CCC.C.CCCCC.CCCCCC..CCCCCCCC.C.CCCCCCCCCCCCCCCCCCCCCCCCCC
+''CC''C''''''''''''''''''''''''''''''''''''B''''''B'''''''B'B''''B''BBB''''BBB'B'BBBBB'BBBBBB''BBBBBBBB'B'BBBBBBBBBBBBBBBBBBBBBBBBBB
+XX  XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXHXXXXXXXHXHXXXXHXXHHHXXXXHHHXHXHHHHHXHHHHHHXXHHHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHHHHHH
+CC  CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCXCCCCCCCXCXCCCCXCCXXXCCCCXXXCXCXXXXXCXXXXXXCCXXXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXXXXXX
 -"-"--"--"----------------------------"---------------"-"----"----""-"--"---""""""-""""""""""-""""""""""""-"""""""""""""""""""""""""
+.+.+..+..+............................C...............C.C....C....CC.C..C...CCCCCC.CCCCCCCCCC.CCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCC
+'C'C''C''C''''''''''''''''''''''''''''B'''''''''''''''B'B''''B''''BB'B''B'''BBBBBB'BBBBBBBBBB'BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB
+X X XX XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXHXHXXXXHXXXXHHXHXXHXXXHHHHHHXHHHHHHHHHHXHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH
+C C CC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCXCXCCCCXCCCCXXCXCCXCCCXXXXXXCXXXXXXXXXXCXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX
 -"-------"---------------------------------------"-------""--"----""-"""""-""-""--""-"""--""""-""""---""""-"""""-"""""""""""""""""""
+.+.......+.......................................C.......CC..C....CC.CCCCC.CC.CC..CC.CCC..CCCC.CCCC...CCCC.CCCCC.CCCCCCCCCCCCCCCCCCC
+'C'''''''C'''''''''''''''''''''''''''''''''''''''B'''''''BB''B''''BB'BBBBB'BB'BB''BB'BBB''BBBB'BBBB'''BBBB'BBBBB'BBBBBBBBBBBBBBBBBBB
+X XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXHHXXHXXXXHHXHHHHHXHHXHHXXHHXHHHXXHHHHXHHHHXXXHHHHXHHHHHXHHHHHHHHHHHHHHHHHHH
+C CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCXXCCXCCCCXXCXXXXXCXXCXXCCXXCXXXCCXXXXCXXXXCCCXXXXCXXXXXCXXXXXXXXXXXXXXXXXXX
 ""----------"------------------------------""-----"-""-"-"---"-""""""""--"""""""""-"-"""""""""""""""""""""""""""""""""""""""""""""""
+++..........+..............................CC.....C.CC.C.C...C.CCCCCCCC..CCCCCCCCC.C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+CC''''''''''C''''''''''''''''''''''''''''''BB'''''B'BB'B'B'''B'BBBBBBBB''BBBBBBBBB'B'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+  XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXXXXHXHHXHXHXXXHXHHHHHHHHXXHHHHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+  CCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCCCCXCXXCXCXCCCXCXXXXXXXXCCXXXXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 -""--------------------------------------------"---"""-------"---"""-""""-""--""""-""""""""-""""""""""""""""-"""""""""""""""""""""""
+.++............................................C...CCC.......C...CCC.CCCC.CC..CCCC.CCCCCCCC.CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCC
+'CC''''''''''''''''''''''''''''''''''''''''''''B'''BBB'''''''B'''BBB'BBBB'BB''BBBB'BBBBBBBB'BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB
+X  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXHHHXXXXXXXHXXXHHHXHHHHXHHXXHHHHXHHHHHHHHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHH
+C  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXXXCCCCCCCXCCCXXXCXXXXCXXCCXXXXCXXXXXXXXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXX
 "-"-----------------------------------------------"---------"--"----"--""---""""""""""-""-"--""""""""""""""""""""-""""""""""""""""-"
++.+...............................................C.........C..C....C..CC...CCCCCCCCCC.CC.C..CCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCC.C
+C'C'''''''''''''''''''''''''''''''''''''''''''''''B'''''''''B''B''''B''BB'''BBBBBBBBBB'BB'B''BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBB'B
+ X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXHXXHXXXXHXXHHXXXHHHHHHHHHHXHHXHXXHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHXH
+ C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXCCXCCCCXCCXXCCCXXXXXXXXXXCXXCXCCXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXCX
 --"---------------------------------------------"-"-"-"------""""-""-"""-"--""-""--""-""""-"+"""""-"""""""""""-""""""""""-""""""""""
+..+.............................................C.C.C.C......CCCC.CC.CCC.C..CC.CC..CC.CCCC.CCCCCCC.CCCCCCCCCCC.CCCCCCCCCC.CCCCCCCCCC
+''C'''''''''''''''''''''''''''''''''''''''''''''B'B'B'B''''''BBBB'BB'BBB'B''BB'BB''BB'BBBB'B BBBBB'BBBBBBBBBBB'BBBBBBBBBB'BBBBBBBBBB
+XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHXHXHXXXXXXHHHHXHHXHHHXHXXHHXHHXXHHXHHHHXH HHHHHXHHHHHHHHHHHXHHHHHHHHHHXHHHHHHHHHH
+CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXCXCXCCCCCCXXXXCXXCXXXCXCCXXCXXCCXXCXXXXCX XXXXXCXXXXXXXXXXXCXXXXXXXXXXCXXXXXXXXXX
 "-------"----------------------"------"---------------------"------"-""-""--"""-"""""""""""""-""""""-"-""""""""""-"""""""""-"""""""-
++.......+......................+......+.....................C......C.CC.CC..CCC.CCCCCCCCCCCCC.CCCCCC.C.CCCCCCCCCC.CCCCCCCCC.CCCCCCC.
+C'''''''C''''''''''''''''''''''C''''''C'''''''''''''''''''''B''''''B'BB'BB''BBB'BBBBBBBBBBBBB'BBBBBB'B'BBBBBBBBBB'BBBBBBBBB'BBBBBBB'
+ XXXXXXX XXXXXXXXXXXXXXXXXXXXXX XXXXXX XXXXXXXXXXXXXXXXXXXXXHXXXXXXHXHHXHHXXHHHXHHHHHHHHHHHHHXHHHHHHXHXHHHHHHHHHHXHHHHHHHHHXHHHHHHHX
+ CCCCCCC CCCCCCCCCCCCCCCCCCCCCC CCCCCC CCCCCCCCCCCCCCCCCCCCCXCCCCCCXCXXCXXCCXXXCXXXXXXXXXXXXXCXXXXXXCXCXXXXXXXXXXCXXXXXXXXXCXXXXXXXC
 --"-----"----------------------""----------------"----"--"-"-"-"--""--"-"---"""""""--"""""""""""""""""-"""""""""""""""""""""""""""""
+..+.....+......................++................+....C..C.C.C.+..CC..C.C...CCCCCCC..CCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+''C'''''C''''''''''''''''''''''CC''''''''''''''''C''''B''B'B'B'C''BB''B'B'''BBBBBBB''BBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+XX XXXXX XXXXXXXXXXXXXXXXXXXXXX  XXXXXXXXXXXXXXXX XXXXHXXHXHXHX XXHHXXHXHXXXHHHHHHHXXHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+CC CCCCC CCCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCC CCCCXCCXCXCXC CCXXCCXCXCCCXXXXXXXCCXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 "----------+-+------------"---------"--------"--"---""""""---""---""--"""-"-""""""""-"""""""""""""""""""""""""""""""""""""""""""""""
++..........C.C............+.........+........C..C...CCCCCC...CC...CC..CCC.C.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+C'''''''''' ' ''''''''''''C'''''''''C''''''''B''B'''BBBBBB'''BB'''BB''BBB'B'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+ XXXXXXXXXX X XXXXXXXXXXXX XXXXXXXXX XXXXXXXXHXXHXXXHHHHHHXXXHHXXXHHXXHHHXHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+ CCCCCCCCCC C CCCCCCCCCCCC CCCCCCCCC CCCCCCCCXCCXCCCXXXXXXCCCXXCCCXXCCXXXCXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 """-"------------------------"----------"--""--""----"-"-----""----"--"-"""-"""""""""--""""-"""-""""""""""""""""-"""""""""""""""-"""
++++.+........................C..........+..CC..CC....C.C.....CC....C..C.CCC.CCCCCCCCC..CCCC.CCC.CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCC.CCC
+CCC'C''''''''''''''''''''''''B''''''''''C''BB''BB''''B'B'''''BB''''B''B'BBB'BBBBBBBBB''BBBB'BBB'BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBB'BBB
+   X XXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXX XXHHXXHHXXXXHXHXXXXXHHXXXXHXXHXHHHXHHHHHHHHHXXHHHHXHHHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHXHHH
+   C CCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCC CCXXCCXXCCCCXCXCCCCCXXCCCCXCCXCXXXCXXXXXXXXXCCXXXXCXXXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXCXXX
 +----------------------------------------------""-"---"-""-"---"-"-""-""""-"-"-""-"-"--""-""--"-""""""-"""""""""""""""""""""""""""""
+C..............................................CC.C...C.CC.C...C.C.CC.CCCC.C.C.CC.C.C..CC.CC..C.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+ ''''''''''''''''''''''''''''''''''''''''''''''BB'B'''B'BB'B'''B'B'BB'BBBB'B'B'BB'B'B''BB'BB''B'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXHXXXHXHHXHXXXHXHXHHXHHHHXHXHXHHXHXHXXHHXHHXXHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+ CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCXCCCXCXXCXCCCXCXCXXCXXXXCXCXCXXCXCXCCXXCXXCCXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ZM+"-"---------------------------------"--------"-"----"""--""---"""-"-"""---""""""-""-""""""""""-"""""""""""""""""""""""-""""""""-"
+  C+.C.................................C........C.C....CCC..CC...CCC.C.CCC...CCCCCC.CC.CCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCC.C
+   C'B'''''''''''''''''''''''''''''''''B''''''''B'B''''BBB''BB'''BBB'B'BBB'''BBBBBB'BB'BBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBB'B
+    XHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXHXHXXXXHHHXXHHXXXHHHXHXHHHXXXHHHHHHXHHXHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHXH
+    CXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCXCXCCCCXXXCCXXCCCXXXCXCXXXCCCXXXXXXCXXCXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXCX
 AZ=Z-+----"---------"-------"------------""--------""--""-"----"""--"""-""""""--"-"""""""""""-"""""""-""""""""""""""""""""""""""""""
+  C CC....+.........C.......C............CC........CC..CC.C....CCC..CCC.CCCCCC..C.CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+      ''''C'''''''''B'''''''B''''''''''''BB''''''''BB''BB'B''''BBB''BBB'BBBBBB''B'BBBBBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+      XXXX XXXXXXXXXHXXXXXXXHXXXXXXXXXXXXHHXXXXXXXXHHXXHHXHXXXXHHHXXHHHXHHHHHHXXHXHHHHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+      CCCC CCCCCCCCCXCCCCCCCXCCCCCCCCCCCCXXCCCCCCCCXXCCXXCXCCCCXXXCCXXXCXXXXXXCCXCXXXXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 X==Z+=-=--"----"----------"----------------------"--"--"""--------"""-"-"-""--"-"""""-""""""-""""""""""""""""""""""""""""""""""""-"-
+    CCCC..+....C..........C......................C..C..CCC........CCC.C.C.CC..C.CCCCC.CCCCCC.CCCCCCCCCC+CCCCCCCCCCCCCCCCCCCCCCCCC.C.
+        ''C''''B''''''''''B''''''''''''''''''''''B''B''BBB''''''''BBB'B'B'BB''B'BBBBB'BBBBBB'BBBBBBBBBBCBBBBBBBBBBBBBBBBBBBBBBBBB'B'
+        XX XXXXHXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXHXXHXXHHHXXXXXXXXHHHXHXHXHHXXHXHHHHHXHHHHHHXHHHHHHHHHH HHHHHHHHHHHHHHHHHHHHHHHHHXHX
+        CC CCCCXCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCXCCXCCXXXCCCCCCCCXXXCXCXCXXCCXCXXXXXCXXXXXXCXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXCXC
 AAAA=AZZ=+-"----------"---------------"--"---"---"-""--"-"-""-""---"""""-"""""""""""""""""""""""-"""-"""""""""""""""""""""""""""""-"
+        CC.+..........C...............C..C...C...C.CC..C.C.CC.CC...CCCCC.CCCCCCCCCCCCCCCCCCCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C
+          'C''''''''''B'''''''''''''''B''B'''B'''B'BB''B'B'BB'BB'''BBBBB'BBBBBBBBBBBBBBBBBBBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B
+          X XXXXXXXXXXHXXXXXXXXXXXXXXXHXXHXXXHXXXHXHHXXHXHXHHXHHXXXHHHHHXHHHHHHHHHHHHHHHHHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXH
+          C CCCCCCCCCCXCCCCCCCCCCCCCCCXCCXCCCXCCCXCXXCCXCXCXXCXXCCCXXXXXCXXXXXXXXXXXXXXXXXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCX
 II=IIII+=Z++"------------------------------"----------""""-""""-""""""""--"""""""""""""""""""""-"""--""""""""""""""""""""-""""""""""
+          CC+..............................C..........CCCC.CCCC.CCCCCCCC..CCCCCCCCCCCCCCCCCCCCC.CCC..CCCCCCCCCCCCCCCCCCCC.CCCCCCCCCC
+            C''''''''''''''''''''''''''''''B''''''''''BBBB'BBBB'BBBBBBBB''BBBBBBBBBBBBBBBBBBBBB'BBB''BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB
+             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXHHHHXHHHHXHHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHXHHHXXHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHH
+             CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCXXXXCXXXXCXXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXCXXXCCXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXX
 =I1I++AI++=A"="------------------"--------"-""-""-----""---"--""-"-"-"""""""-"""""-""""""-"-"""""""-"""""-"""""""""-""""""""""#"""""
+            +C+..................C........C.CC.CC.....CC...C..CC.C.C.CCCCCCC.CCCCC.CCCCCC.C.CCCCCCC.CCCCC.CCCCCCCCC.CCCCCCCCCCXCCCCC
+            C C''''''''''''''''''B''''''''B'BB'BB'''''BB'''B''BB'B'B'BBBBBBB'BBBBB'BBBBBB'B'BBBBBBB'BBBBB'BBBBBBBBB'BBBBBBBBBB$BBBBB
+               XXXXXXXXXXXXXXXXXXHXXXXXXXXHXHHXHHXXXXXHHXXXHXXHHXHXHXHHHHHHHXHHHHHXHHHHHHXHXHHHHHHHXHHHHHXHHHHHHHHHXHHHHHHHHHH_HHHHH
+               CCCCCCCCCCCCCCCCCCXCCCCCCCCXCXXCXXCCCCCXXCCCXCCXXCXCXCXXXXXXXCXXXXXCXXXXXXCXCXXXXXXXCXXXXXCXXXXXXXXXCXXXXXXXXXX&XXXXX
 =AAIAZAI=AAI=ZM------------------------"---"----"---"----""-----"-"""-""""""-""-""-"""""""""--"-"""""""-"""-""-""""--"""""""-"""""-"
+               C.......................C...C....C...C....CC.....C.CCC.CCCCCC.CC.+C.CCCCCCCCC..C.CCCCCCC.CCC.CC.CCCC..CCCCCCC.CCCCC.C
+                '''''''''''''''''''''''B'''B''''B'''B''''BB'''''B'BBB'BBBBBB'BB'CB'BBBBBBBBB''B'BBBBBBB'BBB'BB'BBBB''BBBBBBB'BBBBB'B
+                XXXXXXXXXXXXXXXXXXXXXXXHXXXHXXXXHXXXHXXXXHHXXXXXHXHHHXHHHHHHXHHX HXHHHHHHHHHXXHXHHHHHHHXHHHXHHXHHHHXXHHHHHHHXHHHHHXH
+                CCCCCCCCCCCCCCCCCCCCCCCXCCCXCCCCXCCCXCCCCXXCCCCCXCXXXCXXXXXXCXXC XCXXXXXXXXXCCXCXXXXXXXCXXXCXXCXXXXCCXXXXXXXCXXXXXCX
   ==AXZZZXAAIXZIZ=""--------""-------------"-----""---"----"-"--"-"""-"""-""-"""-"""""""""""""""""""""""""""""""""""""""""""""""""""
+                 C++........CC.............C.....CC...C....C.C..C.CCC.CCC.CC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                  CC''''''''BB'''''''''''''B'''''BB'''B''''B'B''B'BBB'BBB'BB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                    XXXXXXXXHHXXXXXXXXXXXXXHXXXXXHHXXXHXXXXHXHXXHXHHHXHHHXHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                    CCCCCCCCXXCCCCCCCCCCCCCXCCCCCXXCCCXCCCCXCXCCXCXXXCXXXCXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 -- -+==AXAZZAZAAAIZ-+"---------------------"---"------""-"-""-"---"""-""""--""-"""""""""--"""""""""""""""""""""""""""""""""""-""""""
+                   CC+.....................C...C......CC.C.CC.C...CCC.CCCC..CC.CCCCCCCCC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCC
+                     C'''''''''''''''''''''B'''B''''''BB'B'BB'B'''BBB'BBBB''BB'BBBBBBBBB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB
+                      XXXXXXXXXXXXXXXXXXXXXHXXXHXXXXXXHHXHXHHXHXXXHHHXHHHHXXHHXHHHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH
+                      CCCCCCCCCCCCCCCCCCCCCXCCCXCCCCCCXXCXCXXCXCCCXXXCXXXXCCXXCXXXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX
    --1=IIIAAZX-=A=AIZ-=-------------------"-----"--"--"--"-"-"---"""-"""--"-"""""""""""-"-""""""""""""""""""""""""-"-"""""""""""""""
+              C      CC...................C.....C..C..C..C.C.C...CCC.CCC..C.CCCCCCCCCCC.C.CCCCCCCCCCCCCCCCCCCCCCCC.C.CCCCCCCCCCCCCCC
+                       '''''''''''''''''''B'''''B''B''B''B'B'B'''BBB'BBB''B'BBBBBBBBBBB'B'BBBBBBBBBBBBBBBBBBBBBBBB'B'BBBBBBBBBBBBBBB
+                       XXXXXXXXXXXXXXXXXXXHXXXXXHXXHXXHXXHXHXHXXXHHHXHHHXXHXHHHHHHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHHHHXHXHHHHHHHHHHHHHHH
+                       CCCCCCCCCCCCCCCCCCCXCCCCCXCCXCCXCCXCXCXCCCXXXCXXXCCXCXXXXXXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXXXXCXCXXXXXXXXXXXXXXX
 -    ---==IX+IIZAXXXX+IZ+--------------"--------""--"--"---"-"--"-"--"""""""--""-""#""""""""""""""-"--"-"-"""""""""""""""""-"--"""""
+                        C..............+........CC..C..C...C.C..C.C..CCCCCCC..CC.CCXCCCCCCCCCCCCCC.C..C.C.CCCCCCCCCCCCCCCCC.C..CCCCC
+                         ''''''''''''''C''''''''BB''B''B'''B'B''B'B''BBBBBBB''BB'BB$BBBBBBBBBBBBBB'B''B'B'BBBBBBBBBBBBBBBBB'B''BBBBB
+                         XXXXXXXXXXXXXX XXXXXXXXHHXXHXXHXXXHXHXXHXHXXHHHHHHHXXHHXHH_HHHHHHHHHHHHHHXHXXHXHXHHHHHHHHHHHHHHHHHXHXXHHHHH
+                         CCCCCCCCCCCCCC CCCCCCCCXXCCXCCXCCCXCXCCXCXCCXXXXXXXCCXXCXX&XXXXXXXXXXXXXXCXCCXCXCXXXXXXXXXXXXXXXXXCXCCXXXXX
 1+1    - =XXXIIAZXXAA1 ==Z"-"---------"------"------"----------""----"-"""""""-"-"-""""-"""""""""-""""-""""""""-""""""""#"""-"""""""
+                          +.C.........+......C......C..........CC....C.CCCCCCC.C.C.CCCC.CCCCCCCCC.CCCC.CCCCCCCC.CCCCCCCCXCCC.CCCCCCC
+                          C'B'''''''''C''''''B''''''B''''''''''BB''''B'BBBBBBB'B'B'BBBB'BBBBBBBBB'BBBB'BBBBBBBB'BBBBBBBB$BBB'BBBBBBB
+                           XHXXXXXXXXX XXXXXXHXXXXXXHXXXXXXXXXXHHXXXXHXHHHHHHHXHXHXHHHHXHHHHHHHHHXHHHHXHHHHHHHHXHHHHHHHH_HHHXHHHHHHH
+                           CXCCCCCCCCC CCCCCCXCCCCCCXCCCCCCCCCCXXCCCCXCXXXXXXXCXCXCXXXXCXXXXXXXXXCXXXXCXXXXXXXXCXXXXXXXX&XXXCXXXXXXX
 +===++==1=XXAIIXXAX+A+1=XIXM+------------------"----""---""------""""""""""""--""""""""""""""""""-""""""""""""""""""""""""""""""""""
+                            C..................C....CC...CC......CCCCCCCCCCCC..CCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                             ''''''''''''''''''B''''BB'''BB''''''BBBBBBBBBBBB''BBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                             XXXXXXXXXXXXXXXXXXHXXXXHHXXXHHXXXXXXHHHHHHHHHHHHXXHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                             CCCCCCCCCCCCCCCCCCXCCCCXXCCCXXCCCCCCXXXXXXXXXXXXCCXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 =++1IAAII+IAAI=AXAXAI1=1+IZIIZ"---------""-"--"""-"""""---"-"--""""--"""""""""-"-"-""""""""""""""""""""--"""""""""""""""""""""""""""
+                              +.........CC.C..CCC.CCCCC...C.C..CCCC..CCCCCCCCC.C.C.CCCCCCCCCCCCCCCCCCCC..CCCCCCCCCCCCCCCCCCCCCCCCCCC
+                              C'''''''''BB'B''BBB'BBBBB'''B'B''BBBB''BBBBBBBBB'B'B'BBBBBBBBBBBBBBBBBBBB''BBBBBBBBBBBBBBBBBBBBBBBBBBB
+                               XXXXXXXXXHHXHXXHHHXHHHHHXXXHXHXXHHHHXXHHHHHHHHHXHXHXHHHHHHHHHHHHHHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                               CCCCCCCCCXXCXCCXXXCXXXXXCCCXCXCCXXXXCCXXXXXXXXXCXCXCXXXXXXXXXXXXXXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +11I=1IA=+=XXAAI=AAAAI1Z= 1XX+++-------"---"-""--"-----"--""------""-""""-"""""#-"""""""-"""-"--""-""""""""-""""""--""""""""""""""""
+                               C.......+...C.CC..C.....C..CC......CC.CCCC.CCCCCX.CCCCCCC.CCC.C..CC.CCCCCCCC.CCCCCC..CCCCCCCCCCCCCCCC
+                                '''''''C'''B'BB''B'''''B''BB''''''BB'BBBB'BBBBB$'BBBBBBB'BBB'B''BB'BBBBBBBB'BBBBBB''BBBBBBBBBBBBBBBB
+                                XXXXXXX XXXHXHHXXHXXXXXHXXHHXXXXXXHHXHHHHXHHHHH_XHHHHHHHXHHHXHXXHHXHHHHHHHHXHHHHHHXXHHHHHHHHHHHHHHHH
+                                CCCCCCC CCCXCXXCCXCCCCCXCCXXCCCCCCXXCXXXXCXXXXX&CXXXXXXXCXXXCXCCXXCXXXXXXXXCXXXXXXCCXXXXXXXXXXXXXXXX
 AXI==A==111===AI==A=IA=IAA+-=I+AZ"------"----"-""-""--""""--"----""""""-""-"-""""-""""""""""-""-"""-""#"""""""""""""""""""""-"""#"""
+                                 +......C....C.CC.CC..CCCC..C....CCCCCC.CC.C.CCCC.CCCCCCCCCC.CC.CCC.CCXCCCCCCCCCCCCCCCCCCCCC.CCCXCCC
+                                 C''''''B''''B'BB'BB''BBBB''B''''BBBBBB'BB'B'BBBB'BBBBBBBBBB'BB'BBB'BB$BBBBBBBBBBBBBBBBBBBBB'BBB$BBB
+                                  XXXXXXHXXXXHXHHXHHXXHHHHXXHXXXXHHHHHHXHHXHXHHHHXHHHHHHHHHHXHHXHHHXHH_HHHHHHHHHHHHHHHHHHHHHXHHH_HHH
+                                  CCCCCCXCCCCXCXXCXXCCXXXXCCXCCCCXXXXXXCXXCXCXXXXCXXXXXXXXXXCXXCXXXCXX&XXXXXXXXXXXXXXXXXXXXXCXXX&XXX
 IIXI==II===+=++-+II=I====AA=- 11=XM+----"---""----"""-"----"-------"""-"""""""-"""""""-"""""""""""""""""""""""""""""""""""""""""""""
+                                   C....C...CC....CCC.C....C.......CCC.CCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                    ''''B'''BB''''BBB'B''''B'''''''BBB'BBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                    XXXXHXXXHHXXXXHHHXHXXXXHXXXXXXXHHHXHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                    CCCCXCCCXXCCCCXXXCXCCCCXCCCCCCCXXXCXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 =II=I+11+1=I+-1-+II+11+II=IAI-  ==AZ""-"--"-"---"-"-"""""-""""""-"-"-"-"""""""-""-""""""""""""""-"""-"""""""""""""""""""""""""""""""
+                                    +C.C..C.C...C.C.CCCCC.CCCCCC.C.C.C.CCCCCCC.CC.CCCCCCCCCCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                    CB'B''B'B'''B'B'BBBBB'BBBBBB'B'B'B'BBBBBBB'BB'BBBBBBBBBBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                     HXHXXHXHXXXHXHXHHHHHXHHHHHHXHXHXHXHHHHHHHXHHXHHHHHHHHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                     XCXCCXCXCCCXCXCXXXXXCXXXXXXCXCXCXCXXXXXXXCXXCXXXXXXXXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  AIAI=---11=111 -=A +--=AIAI+X+ -IA+I""+--------"--"-""--""-"-""--"-""-"""-"--"""""""""-""""""-""""""""""""""""#""-""""""""#""""""""
+                                     +CC........C..C.CC..CC.C.CC..C.CC.CCC.C..CCCCCCCCC.CCCCCC.CCCCCCCCCCCCCCCCXCC.CCCCCCCCXCCCCCCCC
+                                     CB ''''''''B''B'BB''BB'B'BB''B'BB'BBB'B''BBBBBBBBB'BBBBBB'BBBBBBBBBBBBBBBB$BB'BBBBBBBB$BBBBBBBB
+                                      H XXXXXXXXHXXHXHHXXHHXHXHHXXHXHHXHHHXHXXHHHHHHHHHXHHHHHHXHHHHHHHHHHHHHHHH_HHXHHHHHHHH_HHHHHHHH
+                                      X CCCCCCCCXCCXCXXCCXXCXCXXCCXCXXCXXXCXCCXXXXXXXXXCXXXXXXCXXXXXXXXXXXXXXXX&XXCXXXXXXXX&XXXXXXXX
 A==AII+11+===++ --+I+I+1==III11--+==II="Z+----""-"-"---"""-"-""""""-""""""""""-""""""""""""-"-""""""""""""""""""-"""""""""""""""""""
+                                      C+ C....CC.C.C...CCC.C.CCCCCC.CCCCCCCCCC.CCCCCCCCCCCC.C.CCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCC
+                                       C  ''''BB'B'B'''BBB'B'BBBBBB'BBBBBBBBBB'BBBBBBBBBBBB'B'BBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBB
+                                          XXXXHHXHXHXXXHHHXHXHHHHHHXHHHHHHHHHHXHHHHHHHHHHHHXHXHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHH
+                                          CCCCXXCXCXCCCXXXCXCXXXXXXCXXXXXXXXXXCXXXXXXXXXXXXCXCXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXX
 I=+I+I==11===+=+ -++=1+-+1+IA=+++- +=I=XZ--"--------"-"-"""""""-""-""""""-""""--"-""""""""""""""""""""""""""""""""""""""""""""""""""
+                                         C.+........C.C.CCCCCCC.CC.CCCCCC.CCCC..C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                          'C''''''''B'B'BBBBBBB'BB'BBBBBB'BBBB''B'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                          X XXXXXXXXHXHXHHHHHHHXHHXHHHHHHXHHHHXXHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                          C CCCCCCCCXCXCXXXXXXXCXXCXXXXXXCXXXXCCXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ==+1++++1-+-MAI+1+1X=11111-I==+A==++1+++1=Z+------"-"-""----"---"--""""---"""-"""-""""""""""""""""""""""""""""""""""""""#""""""""""#
+           C                               C......C.C.CC....C...C..CCCC...CCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCX
+                                            ''''''B'B'BB''''B'''B''BBBB'''BBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBB$
+                                            XXXXXXHXHXHHXXXXHXXXHXXHHHHXXXHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHH_
+                                            CCCCCCXCXCXXCCCCXCCCXCCXXXXCCCXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXX&
 ==A11++11--===I=II=AII=+ ++-=-==Z ==+--1- I=MM"-----"--""--""-"-"--"-""-""--""""""""""""""""""""""""""""""""""""-""""""""""""""--"""
+            CC                                C.....C..CC..CC.C.C..C.CC.CC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCC..CCC
+                                              B'''''B''BB''BB'B'B''B'BB'BB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBB''BBB
+                                              HXXXXXHXXHHXXHHXHXHXXHXHHXHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHXXHHH
+                                              XCCCCCXCCXXCCXXCXCXCCXCXXCXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXCCXXX
 ==I==1+++- 1A+=I=+1+=IAAI--++1+1+111=+11 --+ZZ=--"-"-""-"--""--"-""""""""""""""""""""-""""-""""""""-""""""""""""""""""""""""""""""""
+             CC                               C..C.C.CC.C..CC..C.CCCCCCCCCCCCCCCCCCCC.CCCC.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                               ''B'B'BB'B''BB''B'BBBBBBBBBBBBBBBBBBBB'BBBB'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                               XXHXHXHHXHXXHHXXHXHHHHHHHHHHHHHHHHHHHHXHHHHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                               CCXCXCXXCXCCXXCCXCXXXXXXXXXXXXXXXXXXXXCXXXXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 I=IIII=1+1-+=Z=Z=++++===XX+++++  111-++1 1--+AX++--"----"---"----"-""""""""-""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+              C                                CC..C....C...C....C.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                 ''B''''B'''B''''B'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                 XXHXXXXHXXXHXXXXHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                 CCXCCCCXCCCXCCCCXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 I=IIA==+=+++1+=ZXI==I==IA-Z=1+=1     -1+11+11++-I----"-"--"-""-"-""""""-"""-"""-""""""""""""""""""""""""""""""""""""""""""""""""""""
+                         C                     C ....C.C..C.CC.C.CCCCCC.CCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                 ''''B'B''B'BB'B'BBBBBB'BBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                 XXXXHXHXXHXHHXHXHHHHHHXHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                 CCCCXCXCCXCXXCXCXXXXXXCXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 IAIAAI=+=+==+1++==1IA=IZMM+MI 11-    -1-==+--I IZ+"#--"-"---""--""-""""#""""""-"""""""""""""""""""""""""""""""""""#"""""#"""""""""""
+                          C                       +X..C.C...CC..CC.CCCCXCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCXCCCCCCCCCCC
+                                                  C$''B'B'''BB''BB'BBBB$BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBB$BBBBBBBBBBB
+                                                   _XXHXHXXXHHXXHHXHHHH_HHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHH_HHHHHHHHHHH
+                                                   &CCXCXCCCXXCCXXCXXXX&XXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXX&XXXXXXXXXXX
 ++==I==+1=I=I=- + 1-=IZM+==++=+=+-11  -1111=-11 -XZ=""----"-"---"-"""""---""""""-""""""""""""""""""""""""""""""""""""""""""""""""#""
+                        CCCCC                      C+C....C.C...C.CCCCC...CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC
+                                                    CB''''B'B'''B'BBBBB'''BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BB
+                                                     HXXXXHXHXXXHXHHHHHXXXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HH
+                                                     XCCCCXCXCCCXCXXXXXCCCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XX
 =I====I+=+=+====+111IIAZ=++""ZI+I==+1--------- -=-1ZM+"--"""""--""""-""--"-"""""""""""""""-"""""""""""""""""""""""""""""""""""""""""
+                        CCC++                        CC..CCCCC..CCCC.CC..C.CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                           CC                         B''BBBBB''BBBB'BB''B'BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                      HXXHHHHHXXHHHHXHHXXHXHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                      XCCXXXXXCCXXXXCXXCCXCXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +I==IXXAAA=++=XAI=+++=IX-="=++==III==+++1- --1 -111-A+="-"-""""-""-""-""""""-""""""""""""-""-"""""""""""""""""""""""""""""""""""""""
+                        CC+CCCC                      CCC.C.CCCC.CC.CC.CCCCCC.CCCCCCCCCCCC.CC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                          C                            B'B'BBBB'BB'BB'BBBBBB'BBBBBBBBBBBB'BB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                       HXHXHHHHXHHXHHXHHHHHHXHHHHHHHHHHHHXHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                       XCXCXXXXCXXCXXCXXXXXXCXXXXXXXXXXXXCXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ++1=IAXZ=A=I===AI=+-- =AAA+A"++-===1+1+ 1+1  +1  1 IIX"=#----"-""""""--"--"""""""""""-""--"""#""""""""""""""""""""""""""""""""""""""
+                            +CCC                      + X....C.CCCCCC..C..CCCCCCCCCCC.CC..CCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                            C                         C $''''B'BBBBBB''B''BBBBBBBBBBB'BB''BBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                        _XXXXHXHHHHHHXXHXXHHHHHHHHHHHXHHXXHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                        &CCCCXCXXXXXXCCXCCXXXXXXXXXXXCXXCCXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 1 1+++=AI==+1+===+1111+=AIIIXM-A1==-1- - 1+- - -+-+1===ZZ""--"-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+                              C                          CC..C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                         BB''B'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                         HHXXHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                         XXCCXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 1111+11=++1- +1-++1--1=+=AIAAXXAI==I1-   1-=1-  =+1=-1=1IX""-"""""""-"-""""""""-"""""""-""""""""""""""""""""""""""""""""""""""""""""
+                                                          +C.CCCCCCC.C.CCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                          CB'BBBBBBB'B'BBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                           HXHHHHHHHXHXHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                           XCXXXXXXXCXCXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  ---1+-+11- --- 1111- =1===1XZXIAA+=++-- +=A1+- 1-+--  =AM=-"-"-"-""""-"""""""""""""""""""""""""-"""""""""""""""""""""#"""""""""""""
+                                                           .C.C.C.+CCC.CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCXCCCCCCCCC+CCC
+                                                           'B'B'B'CBBB'BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBCBBB
+                                                           XHXHXHX HHHXHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHH HHH
+                                                           CXCXCXC XXXCXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXX XXX
 -- -- 1=-+=+----1 =-1--I= =1=1-=XAXI+1+1-11=++Z+ 1 1--  ++=I=--""-"""-""-"-"-"""""""""-"""""""""""""""""""""""""""#""""""""""#""""""
+                                                          C C..+C.CCC.CC.C.C.CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCXCCCCCC
+                                                             ''CB'BBB'BB'B'B'BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBB$BBBBBB
+                                                             XX HXHHHXHHXHXHXHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHH_HHHHHH
+                                                             CC XCXXXCXXCXCXCXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXX&XXXXXX
 11-1-11+1+111  -- +=1++++1I=+++=+AZX+ ==+1-+++ZM+= +1  +=1+X-++--"-""""--"""--""-""""""-""""""""""""""""""""""""""""""""""""""""""""
+                                                            CCC..C.CCCC..CCC..CC.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                               ''B'BBBB''BBB''BB'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                               XXHXHHHHXXHHHXXHHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                               CCXCXXXXCCXXXCCXXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 1111111++++-+++-+++11==++=I===IX=I=IA=I=--- --1XXIIAI1- +11I++X=---""""-""""""-""""""""""""""""""""""""""""""-""""""""""""""""""""""
+                                                             C C...CCCC.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCC
+                                                                '''BBBB'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBB
+                                                                XXXHHHHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHH
+                                                                CCCXXXXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXX
 ++-==I++==+1+II=1===+IA++===11XAAAIAXAA=+==  - +=AXIA-+  -+1A++X+--"""""-""""""""""""""""""""""""""""""""""""-""""""""""""""""""""""
+                                                              C C..CCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCC
+                                                                 ''BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBB
+                                                                 XXHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHH
+                                                                 CCXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXX
 ++1I=+++==III==1--=AAI==IIAAAAM-XAZZXAZI=+A=      AI=I=1-  =-I1=+"-"----"""-""""""-"""""""""""""""""""""""""""""""""""""""""""""""#"
+                               C                               CC+.C....CCC.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXC
+                                                                 C'B''''BBB'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$B
+                                                                  XHXXXXHHHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_H
+                                                                  CXCCCCXXXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&X
 =1-I====I=IMXXAI+--AAAIIAZAAIMM=-=AXA-=AI=I11    11=AXIX=- -+=+MZ++""-"""-""-"---""""""""-""""""""""""""""-"-""""""#"""""""""""""#""
+                               CC    C                           CCCC.CCC.CC.C...CCCCCCCC.CCCCCCCCCCCCCCCC.C.CCCCCCXCCCCCCCCCCCCCXCC
+                                                                   BB'BBB'BB'B'''BBBBBBBB'BBBBBBBBBBBBBBBB'B'BBBBBB$BBBBBBBBBBBBB$BB
+                                                                   HHXHHHXHHXHXXXHHHHHHHHXHHHHHHHHHHHHHHHHXHXHHHHHH_HHHHHHHHHHHHH_HH
+                                                                   XXCXXXCXXCXCCCXXXXXXXXCXXXXXXXXXXXXXXXXCXCXXXXXX&XXXXXXXXXXXXX&XX
 ++11-III++=XXIAXXI+=IAI=IIZ11IM+-+=A=-=--A-+1=-  -I1ZXAIAA==--1A-=M=-"""""""-"""-"""""""""""""""""""""""""""""""""""""""""""""""""""
+                               CC    CCC                        CC C.CCCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                    'BBBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                    XHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                    CXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ==+- =AXA+1=--ZAAX==I+=II=MX1==AAI+=IAZX-+I1+=11  +AA-XA=AXX1--11Z"=+"""""""""""""-"""-"""""""""""""""""""""""""""""""""""""#"""""""
+            CC                                       C            +CCCCCCCCCCCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCC
+                                                                  C  BBBBBBBBBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBB
+                                                                     HHHHHHHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHH
+                                                                     XXXXXXXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXX
 1++1+=AAIIAXX=+MMMM-Z+=AZ+=MA=I=11=+I==1I+A==I+=--1-IZX===IA--+1  1--+-"--"""-"""""-""""-""""""""""""""""""""""""-""""""""""""""""#"
+             CC    C     CC                                        C.C.C..CCC.CCCCC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCXC
+                                                                    ' 'B''BBB'BBBBB'BBBB'BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBB$B
+                                                                    X XHXXHHHXHHHHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHH_H
+                                                                    C CXCCXXXCXXXXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXX&X
 -1=- +IIAXM=M+="==ZZ-X=IXMI===II- 1=+II====1=1=11-+- -1==I-+Z+11+  =M"-"""""-""""-""""""-"""""""""""""""""""""""""""""""""""""""#"""
+           C CC+CC  C                                                +.CCCCC.CCCC.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC
+               C                                                     C'BBBBB'BBBB'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB
+                                                                      XHHHHHXHHHHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHH
+                                                                      CXXXXXCXXXXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXX
 -+==1===I==ZAM+""===ZMX==-AI==I+1 -====I=AA==+==1-11   =++=+=+1++1--=-="--""-"-""""""""""-""""""""""""""""""""""""""""""""""""""""""
+              C++CCC     C                                           CC+..CC.C.CCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+               CC                                                      C''BB'B'BBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                        XXHHXHXHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                        CCXXCXCXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +-+==I======IZ==+==+-MZZ=-X+=1I++- 1=A===++++1+=I+++--=A=1+I+=+1-=--1II--"""""--"""""""-"""""""""""""""""""""""""""""""#"""#""""""""
+              CCCCCCC    C                                             CCCCCCC..CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCXCCCCCCCC
+                                                                         BBBBB''BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB$BBBBBBBB
+                                                                         HHHHHXXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHH_HHHHHHHH
+                                                                         XXXXXCCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXX&XXXXXXXX
 -++--+=A+II=1=M=+++==++-I=ZAI=I+II=-I+1=I=+A+I=+1I1=+XIZA=-+I=+=1 =1+=+AXM-"-"""""""""A""""-""""-""""""-""""""""""""""""-"""""""""#"
+C              CCCCCCCCC C                                                .C.CCCCCCCCC CCCC.CCCC.CCCCCC.CCCCCCCCCCCCCCCC.CCCCCCCCCXC
+                                                                          'B'BBBBBBBBB BBBB'BBBB'BBBBBB'BBBBBBBBBBBBBBBB'BBBBBBBBB$B
+                                                                          XHXHHHHHHHHH HHHHXHHHHXHHHHHHXHHHHHHHHHHHHHHHHXHHHHHHHHH_H
+                                                                          CXCXXXXXXXXX XXXXCXXXXCXXXXXXCXXXXXXXXXXXXXXXXCXXXXXXXXX&X
 =ZI=-1+IIAIA=X -===+===MMM+-IIA+=I=A=I=+AI=II=A==IAZX+AIIAI1==+++1+==1=+=Z=""""""""""""""""""""-"-""""""""""""-""""""""##"""""""""""
+C              CCCCCCCC   CC                                            C CCCCCCCCCCCCCCCCCCCCC.C.CCCCCCCCCCCC.CCCCCCCCXXCCCCCCCCCCC
+                                                                           BBBBBBBBBBBBBBBBBBBB'B'BBBBBBBBBBBB'BBBBBBBB$$BBBBBBBBBBB
+                                                                           HHHHHHHHHHHHHHHHHHHHXHXHHHHHHHHHHHHXHHHHHHHH__HHHHHHHHHHH
+                                                                           XXXXXXXXXXXXXXXXXXXXCXCXXXXXXXXXXXXCXXXXXXXX&&XXXXXXXXXXX
 ZXXZA++IZIAAAI1-=MM===MM-MMMA=AAXXAZAIA==XA==IIIII-===I=AIX=+=+I+1++=AI1I=X+-"""""""""-"""""-"""""""""""""""""""""""""""""""""""""""
+               CC  CCC  C                         CCCC                   C C.CCCCCCCCC.CCCCC.CCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                            'BBBBBBBBB'BBBBB'BBBBCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                            XHHHHHHHHHXHHHHHXHHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                            CXXXXXXXXXCXXXXXCXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 XA==X+==XAIZXXX-MZAXMMM-=-=-X11XZZXXZIAAIAAAIXX=IXA"""Z1+IZI1I++A=+1==XI+X=I""""""""""""""""""""-"""""""""""""""""""""""""""""""""""
+               C       CCCCC                       ++C                    C +CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                   CCB                      CBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                     H                       HHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                     X                       XXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 AX++=IAZ===AZ-XAXI1=+XZAZ-MXAIIIII=AX-XAA+IIIZXA==AXZA=1==AZAII1+=IAI1AAXA+"I--"""""""""--""""-"""""""""""""""""""""""""""""""""""""
+             C           C                            C                    + ..CCCCCCCCC..CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                           C ''BBBBBBBBB''BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                             XXHHHHHHHHHXXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                             CCXXXXXXXXXCCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +1+11++11+-==I+11-1I1 XZAA--X++=IIAXA=====AI=IAI=II+=+I++=+=AXZ1+A=IAI=XXAXX+X-"""""""""""""""""""""-"""""""""""""""""""""""""-"""""
+                          CC                                                C .CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCC
+                                                                              'BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBB
+                                                                              XHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHH
+                                                                              CXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXX
 11+1-111-=++1+=1-+I===ZXZX-MZ+I=1=A=+-+=11====II=I=I=IXA=I-==IAXI+=I=I++A-XAM=--""""-"""""""""""""""-"""""""""""""""""""#"""""""""""
+                          C                                              C   CC.CCCC.CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCXCCCCCCCCCCC
+                                                                               'BBBB'BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBB$BBBBBBBBBBB
+                                                                               XHHHHXHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHH
+                                                                               CXXXXCXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXX
 11-1-1-11Z=11+==+==A+IXZXAAXZ-=I +++-  11--=+1IIII1III=XXX=I++=XII==+=1+AI=XAM=+""""""""""""-"""""""""""""""""""""""""""""#"""""""""
+                             CC                                               CC+CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCC
+                                                                                CBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBB
+                                                                                 HHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHH
+                                                                                 XXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXX
 +++ ----+AZA1+=I=+XAX II++1AMXAZ-=+==    -=1- 1=+X=+Z+AAXXA+=-+=AI=+I++1+=IIAXI---"""-"""""-"""""""""-""-""""""""#"""""""#""""""""""
+                                                                               CC.CCC.CCCCC.CCCCCCCCC.CC.CCCCCCCCXCCCCCCCXCCCCCCCCCC
+                                                                                 'BBB'BBBBB'BBBBBBBBB'BB'BBBBBBBB$BBBBBBB$BBBBBBBBBB
+                                                                                 XHHHXHHHHHXHHHHHHHHHXHHXHHHHHHHH_HHHHHHH_HHHHHHHHHH
+                                                                                 CXXXCXXXXXCXXXXXXXXXCXXCXXXXXXXX&XXXXXXX&XXXXXXXXXX
 X  -111++=-MXXIXZXZZZXIIA-1AAI=I++11+-  ----   ++II+1IAXXZX=1-11IIIAXA+=1+=+AZ+Z+=""""""""-"""""""-"""""""""""""""""""""""""""""""""
+          C                                                                     CCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                  BBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                  HHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                  XXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 == --+1==+IZ=MZXZX=XXXXAIIAXAAI===+11-11-1-  --1-+1IAAI=IIZZIA+++II=AXI11==+I=I=IM+"""""""-"""""""""""""""""""""""""""""""""""""""""
+C           C                                                                     CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                   BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                   HHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                   XXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 M-X1-1++=++AZ-AZZI=XXX=AIIAAZI=+11= =1++-1+   --1+AI=IAAXXAXXXA1-1A+II-X-==1I==AAA++---"""-""""""""""""""""""""""""""""""-""""""""""
+ C           C                                                        C           CC...CCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCC
+                                                                                    '''BBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB
+                                                                                    XXXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHH
+                                                                                    CCCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXX
 M--1+11+==+AZMAA-=MMZZZAAIIA-1==+X1+=++==11-- +11=IAI= ZZZAAIZI== =====-A+=I -+=A+X==""""""""-"-"-""--""""--"""""""""""""""""#"##"#"
+ CC             CC             C                                       C           CCCCCCCCCC.C.C.CC..CCCC..CCCCCCCCCCCCCCCCCXCXXCXC
+                                                                                     BBBBBBBB'B'B'BB''BBBB''BBBBBBBBBBBBBBBBB$B$$B$B
+                                                                                     HHHHHHHHXHXHXHHXXHHHHXXHHHHHHHHHHHHHHHHH_H__H_H
+                                                                                     XXXXXXXXCXCXCXXCCXXXXCCXXXXXXXXXXXXXXXXX&X&&X&X
 MM=111+ 1-=AX-ZXZM-MM-XX++AAIIM-AXI=====1+1+X-+Z1-=II+AIM-XZI=ZXA==+-I+=AAIXX=+=1I=-Z"-"""""""""-""""""""""""""""""""-"""""""""""#""
+             C    C  C         C             C           C                         C +.CCCCCCCCC.CCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCXCC
+                                                                                     C'BBBBBBBBB'BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB$BB
+                                                                                      XHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHH_HH
+                                                                                      CXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXX&XX
 IAMX+-11+=1XMM-XZZZ=ZZXM-X=XZM="+-I=+II+++++=ZI==111=IXAZ-XZZI1X==AI+1+=IIA-Z-II==IIZ=="""""""""-""-""""-"""""""""""""""""""""""""""
+              C    C    C     C+CC                       C                 C C       CCCCCCCCCCC.CC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCC
+                               C                                                       BBBBBBBBB'BB'BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                       HHHHHHHHHXHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                       XXXXXXXXXCXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXX
 1-+ZX--+=A=XZ=ZIZXA+M-Z=++AXZ+-M+MX=I1=I+I1+-==XI=1 1IXZXXA=-X+I+AIXA1=1=+X-IZA==+1A+-"-""""""""""""""""""""""""""""""""""""""""#"""
+             C     C C CCC   CC C                           C              C         C+.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC
+                                                                                      C'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB
+                                                                                       XHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHH
+                                                                                       CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXX
 I--1=I=1+=IAA-Z++1X=+--==+=ZMZ=--ZI++11IM=+1I =+1I=1 1-+AI-+IX+=-=AXAZA+1-X1XI-I+I--++A""""""""""""""""""""""""""""""""-""""""""""""
+             C      CCCCCC    CCC        C                                    C        CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCC
+                                                                                       BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBB
+                                                                                       HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHH
+                                                                                       XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXX
 =- -- 1++-=AXX-A++A1-===M==AI=IXZ--=  1=+I=-AI1==+=I1 1=+A+1AXIAAIAAAZAA1+I+-1+==+=1 ==---"-"""""-"-""-""-""""""""""""""""""""""""""
+              C     CCCC CC      CC        C                                           C..C.CCCCC.C.CC.CC.CCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                        ''B'BBBBB'B'BB'BB'BBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                        XXHXHHHHHXHXHHXHHXHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                        CCXCXXXXXCXCXXCXXCXXXXXXXXXXXXXXXXXXXXXXXXXX
 =  - -+=+--=XZM-IXXZ+ZMMM==-A==IIAZA-1=+IAI=+Z1=IIAXA--1++==IIIAAAZZ=AIX++=Z1+11I1+-1=IAZ"-"""""""""""""""""""""""""""""""""""""#"""
+               C         CCC               CC                                            +.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC
+                                                                                         C'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB
+                                                                                          XHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHH
+                                                                                          CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXX
 =1 - 1=ZI--+-ZIXX-MMX=-MM===ZA111+=ZII==IZXAXZI+I=IAZA-1+-+A=A+IIXZZXII==1++=-1=+1-11-AXA+-"""""""""""""""""""""""""""""""""""""""""
+            C    C    C  CCC                                                             C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                          'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                          XHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                          CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +-1-  =I-==1XXIXZ-MMMZZZMM==+MAI1 1+ZZZAXAXXX+=+==+II=++ -1AXAZA=1=XZIX===-  -1=111--++AAA""""""""-"""""""""""""-""""""#"""""#"""""#
+                 C        CCC                CCC     C                                    C+CCCCCC.CCCCCCCCCCCCC.CCCCCCXCCCCCXCCCCCX
+                                                                                          BCBBBBBB'BBBBBBBBBBBBB'BBBBBB$BBBBB$BBBBB$
+                                                                                          H HHHHHHXHHHHHHHHHHHHHXHHHHHH_HHHHH_HHHHH_
+                                                                                          X XXXXXXCXXXXXXXXXXXXXCXXXXXX&XXXXX&XXXXX&
 +1+1+-1IZIXZZZAXZM-ZXXXZ-MM+==-II1=A-++-AIA-AIZ=-I-=I=Z+11=+IAXXXX+I+I=AI1-- -- -11 -=+ZZX=-""""""""""""#"""""""""""""""""""""""""""
+                  C     C  CCCC     CCCC   C   CC                                         C.CCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                           'BBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                           XHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                           CXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXX
 =+++==+IXIX-ZXXXX--ZZAXXAZ-==M-ZIIIZZM"+MZAX-IZ-=X1I1=X=-+II=IIAAA=I+=+A==+---1-1-- 1=I+ZIZ+-""""""-""""""""""""""""""""""""""""""""
+           C     CC       CCC C       +C    C  CC                                          C.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                      C                                                     'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                            XHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                            CXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 +11=1==+IA-ZZXXAZ-ZM-ZZXXXZ=M-ZZXXAZZ-=++=AI==M+""X+=+I=-+AI==+AIII=-==IAAI-1-1 -- -1+11XMXZ+-""""""""""-"""""""""""""#"""""""""""""
+          C      C  C      C C       CCCCC      ++                                          C.CCCCCCCCCC.CCCCCCCCCCCCCXCCCCCCCCCCCCC
+                                                CC                                           'BBBBBBBBBB'BBBBBBBBBBBBB$BBBBBBBBBBBBB
+                                                                                             XHHHHHHHHHHXHHHHHHHHHHHHH_HHHHHHHHHHHHH
+                                                                                             CXXXXXXXXXXCXXXXXXXXXXXXX&XXXXXXXXXXXXX
 11-X+1-1-=ZZXXXXXZ--XXXZZ--M-XXZZZXXXZ-+-+===XIA+--+MIX=IIAAAI1 II==-1IXI++-=-  -++- +11-=XZI++"--""""""""""""""""-"""""""#"""""""""
+                  CC     CC C         CC.CC     C.CC                                         CCC..CCCCCCCCCCCCCCCC.CCCCCCCXCCCCCCCCC
+                                        '        '                                             B''BBBBBBBBBBBBBBBB'BBBBBBB$BBBBBBBBB
+                                        X        X                                             HXXHHHHHHHHHHHHHHHHXHHHHHHH_HHHHHHHHH
+                                        C        C                                             XCCXXXXXXXXXXXXXXXXCXXXXXXX&XXXXXXXXX
 I+1-Z 1--==-AXAAZ-ZM-ZZZZZ--ZX-ZXZAXZXXXM+"ZMAXXZM=+++AXAXAXIIA-I==111=+=++=--- --- --++=1-ZZA+"""""""""-"""""""-"""""""""""""""""""
+   C             C  C     CC  C          C+       CCCC                                    C   CCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCC
+                                          C                                                    BBBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBB
+                                                                                               HHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHH
+                                                                                               XXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXX
 XAIXX==-IA1-1AXX-ZZ------ZZZXXM--ZZAXZIXZ-"++-ZX==Z=""+MX=AXAIXA=+A+++1+AIAA+--  -+---AI+=+AMX-"""""""""-"""""""""""""""""""""""""""
+                C  CCCCCC      CC        C+CCC     C+CC                                       .+CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                          C         CB                                        'CBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                     H                                        X HHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                     X                                        C XXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ZZA-X==1AZI-1IXAZ--Z--ZM----------ZIAXXXZZ=+-"Z- 1=I-"+-ZAXXZIAI++=+I=-1=+1IA-11  1=1-+X+I++=Z-+-"""""""""""""""""""""""""""""""""""
+   C             CC CC  CCCCCCCCCC        CC.+ C    C+C.                                      CC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                            'C       C '                                        'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                            X          X                                        XHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                            C          C                                        CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 A----I+1IZXI =AXXZ--XZZ--MM=I--==M-XXAZZZXX-M=Z-X-+==XZ+-Z-ZIAA=-1I==I  =I1--11-1--- ---ZI+ XA-M-"""-""""""""""""""#""""""""#""#""""
+ CCCC             CC   CC  C CCCC C        C C C       CC C                                   C CCCC.CCCCCCCCCCCCCCXCCCCCCCCXCCXCCCC
+                                                                                                 BBB'BBBBBBBBBBBBBB$BBBBBBBB$BB$BBBB
+                                                                                                 HHHXHHHHHHHHHHHHHH_HHHHHHHH_HH_HHHH
+                                                                                                 XXXCXXXXXXXXXXXXXX&XXXXXXXX&XX&XXXX
 +IZ-MMM--XAXZXZAX-MZA1X-MMMMMM=MMMM-ZZ-Z-ZZMAZ=ZXI1=+==ZZX-ZAZAI+1=1111-1=- 1-111--11   ++--+Z-ZM""""""""""""""""""""""""""""#""#"""
+   C   CC        C     C      C    C  C C                 C                                   C  +CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCCC
+                                                                                                 CBBBBBBBBBBBBBBBBBBBBBBBBBBB$BB$BBB
+                                                                                                  HHHHHHHHHHHHHHHHHHHHHHHHHHH_HH_HHH
+                                                                                                  XXXXXXXXXXXXXXXXXXXXXXXXXXX&XX&XXX
  =XXZ=MM-ZXZZZZ-X-MM-XX-MM-MM==MM-=----ZZ--M=M+ZZI=+1=1ZXZ--XZZXI==+1-1--=I1I-- --1++-1 -=11-IX--M#"""""""""""""""""""""""""""""""""
+     C  C      C C  C  C  C  CC  CCCCCC  CC C C           CC                                   CC XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                                  $BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                  _HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                  &XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  +IAI-=M-ZZZZZM--ZMMM-Z-MM-XMMM==--XZ--Z-M-==="=-XAA===XZ-X=---ZXXAX====IIAAI=- +1++1=1  1X1- -IMX"""""""""""""""""""""""-""""""""""
+     CC C      CC    C C  C    CCCC  CC C CCCC+CC        C CCCC                               C   CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCC
+                                              C                                                   BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB
+                                                                                                  HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHH
+                                                                                                  XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXX
 AI+XX M==ZMZ--==MM--M=-M=---=MMMMMZ AZ-Z-Z--==+"M=-MZZAAXMAZAMZM-XX-XXI=11=+IA11+--I=1+111XI= 1 Z+=""""""""""""""""-""""""#""""#-"""
+       CC   CCCC  CC CC CCCCC         C C CCCCC+ CC             C  C                             CCCCCCCCCCCCCCCCCC.CCCCCCXCCCCX.CCC
+                                               C                                                   BBBBBBBBBBBBBBBB'BBBBBB$BBBB$'BBB
+                                                                                                   HHHHHHHHHHHHHHHHXHHHHHH_HHHH_XHHH
+                                                                                                   XXXXXXXXXXXXXXXXCXXXXXX&XXXX&CXXX
 =Z=ZXI-M+MMMZ-M==MM----M-MMMMM---M-XXZ---M--+++"+==-Z--ZAAIAZMMM-ZM=ZMXAI==IAAIII+==-+=-+-AX+- ++XM="""-""-"""""""""""""""""""""""""
+C     C C    C CC  CCCC C     CCC C   CCC CCCCC+CCCC CC         C  C                C              CCCC.CC.CCCCCCCCCCCCCCCCCCCCCCCCC
+                                               C                                                    BBB'BB'BBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                    HHHXHHXHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                    XXXCXXCXXXXXXXXXXXXXXXXXXXXXXXXX
 =MM=XXXMM-+MM--==MMM--M--M=M-MZ=-MM-Z--M-====="--"Z-Z--XXZIAXZ--M-M-M=--XXAX+AZAII-+IA++==I=I+ -+AX+="""""-"""""""""""""""""""""""""
+C        CC  CCCC   CC CC C C   C  C CC CCCCCC+..+ C CC       CC C C CCC                           CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCC
+                                              C''C                                                   BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB
+                                               XX                                                    HHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH
+                                               CC                                                    XXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX
 M-=-XX=AIIMMMZ1-====MM---Z-MM--A-M=M-MMM-M===+"----+MZ-A-ZAXMAZ-ZXMZZM-ZM-XXIZII==111MA=AI=I==- A+A-Z"""""""""""""#-""""""""""""""""
+ CCC           CCCCC  CCC C  CC C C C   C CCCC+...CC  C C      C      C  C                         C CCCCCCCCCCCCCX.CCCCCCCCCCCCCCCC
+                                              C'''                                                   BBBBBBBBBBBBB$'BBBBBBBBBBBBBBBB
+                                               XXX                                                   HHHHHHHHHHHHH_XHHHHHHHHHHHHHHHH
+                                               CCC                                                   XXXXXXXXXXXXX&CXXXXXXXXXXXXXXXX
 --MM-A=AXIXZZZXXM===M=Z-ZZ-M---X-M==MMZMM-M===+""+"+M-ZZZAZXMZAM-M--=M-ZM-MZAXXXA+A++XX1XI1=AIA=-AZX=-""-""""""""""""""""""""""""-""
+CC  C            CCC C C  C CCC C CC     C CCCC++C+C C          C CCC C  C                          CCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CC
+                                               CC C                                                   BB'BBBBBBBBBBBBBBBBBBBBBBBB'BB
+                                                                                                      HHXHHHHHHHHHHHHHHHHHHHHHHHHXHH
+                                                                                                      XXCXXXXXXXXXXXXXXXXXXXXXXXXCXX
 X=AM=XXI-IIA=XI-ZM=MMM---Z-MMXZZZMM=MM-MMM===+=+"+=M=ZZZAZA--MZ-XA-X=MMZ-ZMZAAZM+IXA=AXIA==+II+=+AIZA="""""""""""""""""""""""""#""""
+    C   C         C   CCC C        C  C   CCCCCC+CC C      CC  C  C C   C                            C+CCCCCCCCCCCCCCCCCCCCCCCCXCCCC
+                                                C                                                     CBBBBBBBBBBBBBBBBBBBBBBBB$BBBB
+                                                                                                       HHHHHHHHHHHHHHHHHHHHHHHH_HHHH
+                                                                                                       XXXXXXXXXXXXXXXXXXXXXXXX&XXXX
 X  M=Z---MXXAII=AZ==M-ZZZX-Z-ZZX--M-MMMM--M=+=M=M-M--AAXIXAZ---Z-ZZX=M---X-ZZ=ZIAA===+AXXAI=1AA++-IZZMZ"""""""""""""""""""""""""""""
+    C CCC         CC C    C C   CC C    CC CCC C C CC       CCC C   C CCC C                            CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                                       BBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                       HHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                       XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ZAAM-M-MXX=-ZA= +-===-IIXZZZXXZXZ--MMM-Z--M-==+=ZIZ--XIXXXXXMMMZZZXZ===MX-MZ==ZAIXX-I==XAIA=+II=1-1ZZA="""""""""""""""""""""""""""""
+    C C   CC     CCCCC           CC   C CC CCCCC   CC               CCC  C                            CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                                       BBBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                       HHHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                       XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 XZ-M=+--=-Z-+I+ -+=++M----ZZA XXZZ-MMMMMX--===++M-Z-XAAIAAI=XZZZ-IZ--MAM=MXIXIAXIAAIX== Z1++-+=1A- ZAI=+-"""""""""""""""""""#"""""""
+  C CCCCCC C      CCC C CC        C      CCCCCCC C C            C  CC   C                             CC.CCCCCCCCCCCCCCCCCCCXCCCCCCC
+                                                                                                        'BBBBBBBBBBBBBBBBBBB$BBBBBBB
+                                                                                                        XHHHHHHHHHHHHHHHHHHH_HHHHHHH
+                                                                                                        CXXXXXXXXXXXXXXXXXXX&XXXXXXX
 ZIX-==IA=ZIXI1-=A=M=--X-Z---ZAAXZX-=MM=MZ-MMM==++-MZA+-AIIIIAXZZZIM---MXZM-I-A1XAAIAAAZAXZ+A1I=1I+-II=-+""""""""""""""""""""""""""""
+   CCC  C          CCC C CCC      CC  C  C   CCCCC                 CCC    C C                         CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                                        BBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                        HHHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                        XXXXXXXXXXXXXXXXXXXXXXXXXXXX
 ZIAZZ-I=ZZIAA- 1IIA-M-=Z-----ZXZZXZ===+===-XM=M+=---X1 -==IZI-ZZX=M=-M=M--XIZZIAAAA-ZX-AIAIXAXX=1111==I=""""""""""""""""""""""""""""
+     C             C C  CCCCC      CCCCCCCC  C CCCCC         C     CC C CC         C  C                C+CCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                                                                                        CBBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                         HHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                         XXXXXXXXXXXXXXXXXXXXXXXXXXX
 XAXXZI=+AAIXA+++1A=XM=-MMM-A--Z-MMM=+++"+++M+++++Z-ZZ1 -+-+AI-Z-ZM-IXZMM-Z=AZM--XAZZX-XA=AXXZZZMI+-+1=1=="""""""""""""""""""""""""""
+                     CC   C CC C   CCCC+CCC CCCCC C          C C  C     C     CC     C                 CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+                                       C                                                                 BBBBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                         HHHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                         XXXXXXXXXXXXXXXXXXXXXXXXXXX
 X+IAZ-ZA-=1=1+=I==--M=I====MM===+==+++"""++"+++==-ZA=I+--+ ==A-M-ZZZ"ZMAMZZZX-ZMZAZAZZZ=ZZAZI=MZ-A=+1 1==-"-"""""""""""""""""""""-""
+     C  C          C   CCCC  CCCCCCCCC+++CC+CCCCCC            C C   +        C                  C      CC.C.CCCCCCCCCCCCCCCCCCCCC.CC
+                                      CCC  C                        C                                    'B'BBBBBBBBBBBBBBBBBBBBB'BB
+                                                                                                         XHXHHHHHHHHHHHHHHHHHHHHHXHH
+                                                                                                         CXCXXXXXXXXXXXXXXXXXXXXXCXX
 +-1=-==M=-1+=+I11IIX-X=A==========+"+""+"+=""+"+-AZAIXAII==AXZMM-X+-+MZZM--XZZZ---X=ZMZXZMAXI-A+-A++=+1ZZ-"""""""""""""-""#"""""""""
+    CCC             C   CCCCCCCCCCC+C++C+CC++C+CC               C  CC    CC    CCC             C.        CCCCCCCCCCCCCC.CCXCCCCCCCCC
+                                   C CC C  CC C                                                 '         BBBBBBBBBBBBB'BB$BBBBBBBBB
+                                                                                                X         HHHHHHHHHHHHHXHH_HHHHHHHHH
+                                                                                                C         XXXXXXXXXXXXXCXX&XXXXXXXXX
 11-=-M=MX=++III- -1I-XAM+Z=+==++==+"+MAZ=MZZ=="MA11=IAZXXZAAZMMMMZAZM"M--ZZZZ---=MXXZZZ-ZZZZI=A=-Z=+++1=X+-"""""""""""""""""""""""""
+    C C             C   C CCCCCCCCC+C   C   CC+                      + CC    CCCC      C       C.        C.CCCCCCCCCCCCCCCCCCCCCCCCC
+                                   C          C                      C                          '         'BBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                X         XHHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                C         CXXXXXXXXXXXXXXXXXXXXXXXXX
 -1-=ZMMM-X++IA=I+11+=+Z""=AM-M++=-+-M+A--A=IIA-IA1 1IXX=XZXXZ++=-I----Z---Z=XZZ-M-XX-X---AZXAXZZ++=A- =1XZ+"""""""""""""""""""""""""
+        C           CC ++C  C CCCCCC   CC     C              CCCC CCCC ..C     C C  C CCC       CC        CCCCCCCCCCCCCCCCCCCCCCCCCC
+                       CC                                              ''                                  BBBBBBBBBBBBBBBBBBBBBBBBB
+                                                                       XX                                  HHHHHHHHHHHHHHHHHHHHHHHHH
+                                                                       CC                                  XXXXXXXXXXXXXXXXXXXXXXXXX
 ==++X-MMZX+1+AX=-- --+="++ZZAA+==="XA1 IIII+X=I=AI AXZZAAIAA-=+-=ZI--XZ""MAX=IAMMZ-ZI--ZZXXX=X=ZXAAZ1 -11ZZ-"""""-"""""""""""""-""""
+     C              CCC+CC    CCCC+                         CCCCC  CC  +C         C  CC       C            .CCCCC.CCCCCCCCCCCCC.CCCC
+                       C          C                                    CB                                  'BBBBB'BBBBBBBBBBBBB'BBBB
+                                                                        H                                  XHHHHHXHHHHHHHHHHHHHXHHHH
+                                                                        X                                  CXXXXXCXXXXXXXXXXXXXCXXXX
 ++=+IAII++II+ =1=ZXMM=+++=-+"+=+"+=I=AI-+IAZXI1+AI=IXZZZXI+AM=-XM=Z-=-ZM-=AZXX-MMZZMIZ-+AXM=1X-MZAAIA1  1=MM""""""""""""""""""""""""
+                     CCCCC.C+CCC+CC                          CC  C CCC  .C    C       C    C  C             CCCCCCCCCCCCCCCCCCCCCCCC
+                          ' C   C                                       '                                   BBBBBBBBBBBBBBBBBBBBBBBB
+                          X                                             X                                   HHHHHHHHHHHHHHHHHHHHHHHH
+                          C                                             C                                   XXXXXXXXXXXXXXXXXXXXXXXX
 - =+=1+-1+XZX111I-+"+MM"""+-=+"=""==-A1-+1IZX=--AIXAXZ-ZZAIIZ+MA-ZX=--=-+MAXZAZZ-M--XAXAXZ-ZZX-ZZAI=Z1- -IMM+"""""""""""""""""""""""
+                 CC+C  +++CCCC+C++C                   C      C  C  CCCCCC       C CC      C   C             CCCCCCCCCCCCCCCCCCCCCCCC
+                   C   CCC    C CC                                                                           BBBBBBBBBBBBBBBBBBBBBBB
+                                                                                                             HHHHHHHHHHHHHHHHHHHHHHH
+                                                                                                             XXXXXXXXXXXXXXXXXXXXXXX
 +-+=1 1--+IAX1-+X-+++M="=ZI=AZ=+"--ZI=+XI =+=I- IXAZZX--ZXIX-++-Z-Z+MM=""MMZXZZZMMZAZXAX----ZZZMXAI1II1= +I"-"""""""""""""""""""""""
+                 CCCC C+C     CC+..                   CC    CCCC C C  C++               CCCC               +CCCCCCCCCCCCCCCCCCCCCCCC
+                       C        C''                                    CC                                  C BBBBBBBBBBBBBBBBBBBBBBB
+                                 XX                                                                          HHHHHHHHHHHHHHHHHHHHHHH
+                                 CC                                                                          XXXXXXXXXXXXXXXXXXXXXXX
 I=IA1111=-1I=++XZ=++==X+I+- IIA+-"--A=IAI= XXA=-=AAXXAZ+-XXZZM"+M=Z="-""""MXAAZMM-XZIZXA-ZM=XZXZX-X- A+==+ "=-""""-"M""--"""""""""-"
+                 CCCCC C       C.+.C                    C     +C C C+C++++       C      C  C     C         +C.CCCC.C CC..CCCCCCCCC.C
+                                'C'                           C     C CCCC                                 C 'BBBB'B BB''BBBBBBBBB'B
+                                X X                                                                          XHHHHXH HHXXHHHHHHHHHXH
+                                C C                                                                          CXXXXCX XXCCXXXXXXXXXCX
 IIAX=IZ--X++=IAZ-M===MZMM1-+=-=-"""+A==IAZZXMZA=AZI-AAXX-XXXI-+"MZ-+++---"X=XXX--XXXAX-+AIX-ZXXZ--X+1I+I=-I1"+""""""""""""#"""""""""
+       CC       C CCC          C+++C                    C    CC+  CCCC...+     CC     C    C    CC          +CCCCCCCCCCCCCXCCCCCCCCC
+                                CCC                            C      '''C                                  C BBBBBBBBBBBB$BBBBBBBBB
+                                                                      XXX                                     HHHHHHHHHHHH_HHHHHHHHH
+                                                                      CCC                                     XXXXXXXXXXXX&XXXXXXXXX
 ++IXAM=++=XX---MZX==A--Z=A--A=IA++""=Z=IIAX--ZX=ZZA=AAZAXXXXX-=ZMZ-M-"-"-=-=AXIZ-AXZXX-X1====XA--=-II=+I-1ZA==""""""""""""""""""""""
+      CCCC  CCC      CC C CC    CC++C      CC                CC   C C+.+.CC     C     C        CCCC     C   CCCCCCCCCCCCCCCCCCCCCCCC
+                                  CC                                 C'C'                                     BBBBBBBBBBBBBBBBBBBBBB
+                                                                      X X                                     HHHHHHHHHHHHHHHHHHHHHH
+                                                                      C C                                     XXXXXXXXXXXXXXXXXXXXXX
 -++=IZ="+"+MM===Z1 --=ZX-X-=A=IM-=+"-+ZXI=IAZXAAAXZ=AXAXZX-X-ZZZZAA-M="--"=ZIZAM-MAXZZAZ=+-11=AZMMZAI==-M=XXA+""""""""""""""""""""""
+      C+C+C  CCC        C CC C  CCC+.C                    C C      C C+..+C     C                            C+CCCCCCCCCCCCCCCCCCCCC
+       C C                         C'                                 C''C                                    CBBBBBBBBBBBBBBBBBBBBB
+                                    X                                  XX                                      HHHHHHHHHHHHHHHHHHHHH
+                                    C                                  CC                                      XXXXXXXXXXXXXXXXXXXXX
   -= -M=+++=+++=+-    XXX=Z+MX =+-+"--+ZII1-1-ZX=IXAZXZXXZ-XX-AIIA Z-+M=-""--==M-=IAZZI==-- -+A-XMXI1I=1+++ZZZ"-""""""""""""""""""#"
+       CCCCCCCCC         C C     CC+..C                   C  C      CC C.++CC   CC             C              +.CCCCCCCCCCCCCCCCCCXC
+                                   C''                                  'CC                                   C'BBBBBBBBBBBBBBBBBB$B
+                                    XX                                  X                                      XHHHHHHHHHHHHHHHHHH_H
+                                    CC                                  C                                      CXXXXXXXXXXXXXXXXXX&X
 1  + A-AAM=++++-I   - =AZ==+X1 1IM=+"==ZI=+ + ZXXAXZXXZAXX-AZZAIXI1ZXZA--=+"-I=IAMAZAXXI+1  1+=AXZXZIII1-1=MZX="""""""""""""""""""""
+      C   CCCCCC         CCC      CC+CC                                CCCC+C                                 CCCCCCCCCCCCCCCCCCCCCC
+                                    C                                      C                                   BBBBBBBBBBBBBBBBBBBBB
+                                                                                                               HHHHHHHHHHHHHHHHHHHHH
+                                                                                                               XXXXXXXXXXXXXXXXXXXXX
 AI-= XZZ+Z--M+=ZX=+-ZAIZZ-Z==  -=-ZX+=MX==A-- IIAIAXXAXAXIIAXI+AA==AIZ"""AZMMZ=ZXXZXAXXI+=   =+1ZXZAX=A--++IMZM"""""""""""""""""""""
+          CC CC          C C     C  CC                                +C+                                      CCCCCCCCCCCCCCCCCCCCC
+                                                                      CBC                                      BBBBBBBBBBBBBBBBBBBBB
+                                                                       H                                       HHHHHHHHHHHHHHHHHHHHH
+                                                                       X                                       XXXXXXXXXXXXXXXXXXXXX
 MZ A++IXXMM--M==ZZXA-+M--ZZ=Z+ -X+I=++-MIIA+====+IA+ZZ-IZ+AAA=+=+=IZZ-+"-AXXIXXM-++--AAA=1+-1-X1X=AXA=+-1I-+--M-#"""""""""""""""""""
+           CC CC    CC CC  C        CCC               C              CCC.       CCCCC                       CC .XCCCCCCCCCCCCCCCCCCC
+                                                                       B'                                      '$BBBBBBBBBBBBBBBBBBB
+                                                                       HX                                      X_HHHHHHHHHHHHHHHHHHH
+                                                                       XC                                      C&XXXXXXXXXXXXXXXXXXX
 + = + 1ZM==M=++++=MZM=M--Z-MI+1- -+IM+ X--A=I==11-=XX-A+ZAXXA==AAXX===Z"-XAAIXX-=""M=ZI11IX=Z-1+XX+Z=+1=1=+1IZI-+"""""""""""-"""""""
+         CC CCCCCC   C  C C             CC           C             CCC C.      CC++ C                          .CCCCCCCCCCCC.CCCCCCC
+                                                                       B'        CC                            ' BBBBBBBBBBB'BBBBBBB
+                                                                       HX                                      X HHHHHHHHHHHXHHHHHHH
+                                                                       XC                                      C XXXXXXXXXXXCXXXXXXX
 1I++I +IXM====+===++==MM-ZX-MX= X---M+-IXZ====1=AAAXIZZAZ-XZA==A-==+=M=XXAXZI1A="""=+M-X1IA-A+ +=++I===++==+=XZ"""""""""""""""""""""
+          CCCCCCCCCCCC  C  C     CCC                     C      CCCCC C        C+++CC C    C                   +CCCCCCCCCCCCCCCCCCCC
+                                                                                CCC                            CBBBBBBBBBBBBBBBBBBBB
+                                                                                                                HHHHHHHHHHHHHHHHHHHH
+                                                                                                                XXXXXXXXXXXXXXXXXXXX
 +A=ZZA1=X-M==MM=+=++M+=MM-XZZZ-ZZM+M=Z=AXA===I+IAAAIZM-ZXZZAA==II-==MZ+=X=ZMA-1A+==++==-XIAAXA+I==1+I+=I+=A1+ZA-""""""""""""""""""""
+         C CC  CCCCC CC  C    C   C C                 C          CCC  CC        CCCCCCCC                       CCCCCCCCCCCCCCCCCCCCC
+                                                                                                                BBBBBBBBBBBBBBBBBBBB
+                                                                                                                HHHHHHHHHHHHHHHHHHHH
+                                                                                                                XXXXXXXXXXXXXXXXXXXX
 =I==XZX=XXX-MMMM++++M+MM-M-ZZ-MZM=A+++M+-XI==A===AZXX-Z-XXXAX+I+=I--XZ+=+ IZ=- =Z+=+M""MXXI+ZXAIIAI1=1===IA=-IZ-++""""""""""""""""""
+           C    CCCC C  C C  C   C CCC CC            C C          CC  CC         CCC ++                        CCCCCCCCCCCCCCCCCCCCC
+                                                                                     CC                           BBBBBBBBBBBBBBBBBB
+                                                                                                                  HHHHHHHHHHHHHHHHHH
+                                                                                                                  XXXXXXXXXXXXXXXXXX
 I+--AZ-+IA=IMMM=====MM-ZZ-M-ZMMX=M===+="+=X IIA+1AZMZ-ZAXAAAAAIA1=AMAA-=M IX---1Z="M=++=-ZZX-ZXXXAI=1III=IAIIA+Z-+"""""""#"#""""""""
+      C        CCCCC  C  C C    C CCCCC+CC           C                CC         C+ CCCCC   C                   CCCCCCCCCXCXCCCCCCCC
+                                       C                                          C                               BBBBBBB$B$BBBBBBBB
+                                                                                                                  HHHHHHH_H_HHHHHHHH
+                                                                                                                  XXXXXXX&X&XXXXXXXX
 =-  --M-ZA+IZZ--MMM==MM-Z-Z-Z=1MM==-======M--X=++ZZZ-ZX=I+===AIIIAIZ-ZZM-XAI++--ZM+=+"+=+MZXZZIZXZ-X=+I=====+==AA--"""""""""""""""""
+     C C      CC   CC  C C C     CCCCCCCCC CC       C               C   C         CCC+CCC         C              ..CCCCCCCCCCCCCCCCC
+                                                                                     C                           ''BBBBBBBBBBBBBBBBB
+                                                                                                                 XXHHHHHHHHHHHHHHHHH
+                                                                                                                 CCXXXXXXXXXXXXXXXXX
 I11 -MM--X=IZZXAAZXMMM----ZX-Z=MM-ZXZX-M=M=MZ1  +AAZXZ---I==XZXIIIIIZ-M-Z-I=11A+Z-M+"""""=XZA-AZXZXX=-II+===1=+IX=""""""""""""""""""
+       CC             CCCC  C    C    C C C           CCC            C C C       C C+++++C   C                   C+CCCCCCCCCCCCCCCCC
+                                                                                    CCCCC                         CBBBBBBBBBBBBBBBBB
+                                                                                                                   HHHHHHHHHHHHHHHHH
+                                                                                                                   XXXXXXXXXXXXXXXXX
 AIAAZ==MZXIX--XII=+ZMM-Z--ZZZM--MZAXZAZM=++=Z  -1IAAA-+++=-A=X-ZXI==X---ZXI== I+XMM-+++""+AMM-ZA-AXA=-I=+===I+=AZXM#""#"""""""""""""
+     CC     CC        C CC    CC        CCCC         CCCCCC   C      CCC           CCCC++C   C  C                  XCCXCCCCCCCCCCCCC
+                                                                                       CC                          $BB$BBBBBBBBBBBBB
+                                                                                                                   _HH_HHHHHHHHHHHHH
+                                                                                                                   &XX&XXXXXXXXXXXXX
 AXX-==M=M==XXA+ZAIXZMM-MA--ZXZZZ--AXAIAAM++=-X-+1=I+XM+===MMZ=+=-====+A---X-X-+XIZ=="+--++MM+MXIZAX==1+=1=1+I+-AZZZ""""""""""""""-""
+   CCC C              C  CC     CC       CCCC         CCCC   CCCC      CCC C      CC+C..CC  C                      CCCCCCCCCCCCCC.CC
+                                                                                    C ''                           BBBBBBBBBBBBBB'BB
+                                                                                      XX                           HHHHHHHHHHHHHHXHH
+                                                                                      CC                           XXXXXXXXXXXXXXCXX
 ---M=+++=I+IX=IZXAX---M=ZMMX----MMM-ZXXZM+"++=Z=11-+1A===+=+=-===MAI=I=--MXI=---ZA-=+"--+"MMXXXXXZA+1+++11+1+=1IZ-Z+"""""""""#""""""
+CCC CCCCC          CCC C    CCCC   C     C+CCC        CCCCCCCCCCC      CC      C  CCC+..C+                       C CCCCCCCCCCXCCCCCC
+                                          C                                          C'' C                          BBBBBBBBB$BBBBBB
+                                                                                      XX                            HHHHHHHHH_HHHHHH
+                                                                                      CC                            XXXXXXXXX&XXXXXX
 ===M-++++ZAIXI+=AAXXX--MZ-MZ-M--MMM=M--MM++++M=-++1IAX-M-=++==ZMMM-XI=XZZZ--+=1AZZAZM+"+"XZ-XXZXXXI+ =I-----=+1+AZ--""""""""""""""""
+CCC CCCCC            CC  C  C CC   C CC  CCCC CC      C CCCCCC    C       C          C+C+  C                      CCCCCCCCCCCCCCCCCC
+                                                                                      C C                           BBBBBBBBBBBBBBBB
+                                                                                                                    HHHHHHHHHHHHHHHH
+                                                                                                                    XXXXXXXXXXXXXXXX
 ===AZMMZ+++MMXI1+IZ= ZZMM---XXZZM==+=MMZM++"+M+MA11X-M-MM-+++M=A-M--ZAXX-Z-XXIZAM--AXMM++MZAIXAZZXI1+==-  --=1+-=Z=X""""""""""""""""
+CCC     CCC              CCC     CCCC    CC+C C     C C  CCCC   C CC    C C      CC    CC                         C +CCCCCCCCCCCCCCC
+                                           C                                                                        CBBBBBBBBBBBBBBB
+                                                                                                                     HHHHHHHHHHHHHHH
+                                                                                                                     XXXXXXXXXXXXXXX
 =+++=M=XM"++M-XXIAAA+XZ--M-ZX=IA--===--X-+"++I=ZAZ++---M=M+==-+-ZXZ-Z-XIZ-Z---M==+XAIMX=Z=-+IXZAXXX+AAI   1 =I+11XZZ-"""""""""""""""
+CCCCC    +CC C         CC C      CCCCCC CC+CC C     CCC C CCCC C   C C   C CCC CCC     C CCC                        C+CCCCCCCCCCCCCC
+         C                                C                                                                          CBBBBBBBBBBBBBB
+                                                                                                                      HHHHHHHHHHHHHH
+                                                                                                                      XXXXXXXXXXXXXX
 ++"++IIZA=+=-ZZZAAXXAAXZZ-ZXXI+-I+-ZMM-M-==M-X-M-=MMMZM==+++=XI-ZZXX-ZZXAAXZZ-=++ZMZIAAMX=-M-AI=XII=AI--  ++="=I=-XXM"""""""""""""#"
+CC+CC    CCCC            C        C   C CCC C C CC     CCCCCC  C    C        CCCC        CC C               C+C  C   CCCCCCCCCCCCCXC
+  C                                                                                                          C       BBBBBBBBBBBBB$B
+                                                                                                                     HHHHHHHHHHHHH_H
+                                                                                                                     XXXXXXXXXXXXX&X
 ++M+=X=-Z==M-IIAIXXXAXXZZZZXXXXIZ-ZZ-MM--==++ZM+=""+=--M=MMMMX-ZZX1=XZZXZXZ--M====MMZZXMX---MAI+-IAII+1-  1Z"-"-+1IA"-""""""""""""""
+CC CC  C CC C                    C  C  CCCCCC  CC++CCCC C     C            CC CCCC       CCC    C           +.CC    +.CCCCCCCCCCCCCC
+                                                 CC                                                         C'B     C'BBBBBBBBBBBBBB
+                                                                                                             XH      XHHHHHHHHHHHHHH
+                                                                                                             CX      CXXXXXXXXXXXXXX
 =+=+==M=X==MZ=-=I=I=AXZZXXXXXAXZZ--ZM==MXM=++XXM=++==-Z-MM-MMM----ZXZZZZZZZ--MM==M-==-MMZM--ZAI=-ZZ++=---  ="-"+=+=Z++""""""""""""""
+CCCCCC C CC                      CC  CC   CCC   CCCCCC C  C   CCCC         CC  CC CCCC    CC    C          C+.CC    CCCCCCCCCCCCCCCC
+                                                                                                            C'B       BBBBBBBBBBBBBB
+                                                                                                             XH       HHHHHHHHHHHHHH
+                                                                                                             CX       XXXXXXXXXXXXXX
 =+=M====Z==MX-  AAI==AAXZAAZXZXXXA-X==M=Z=+=M=MI=MIZXZMZ---=MM-ZM=MMZX-ZZ-X-MMM=M-=-Z-M=-=M-ZZZ=Z-ZI=+ -   -"-"-A-===-"""""""""""-"-
+CCC CCCC CC                       C CC C CCC C  C       CCCC  C  C    C  C C   C CCC C CCC C     C         C+.C.    C.CCCCCCCCCCC.C.
+                                                                                                            C'B'     'BBBBBBBBBBB'B'
+                                                                                                             XHX     XHHHHHHHHHHHXHX
+                                                                                                             CXC     CXXXXXXXXXXXCXC
 =MMMM-M+M-M-Z=   1=I=AXXXXAAXXIAXX--=M+=-M+=+=I=MZZZZZ-M-M===-MMMM==-Z---ZXMMMM--===-MMZ====Z-XX-MZII=-    I+"-"M11I-"""""""""""""""
+C    C C C C                      CCC CCC CCCC        C C CCCC    CCC CCC      CCCCCC   CCCC C  C           C+.C    CCCCCCCCCCCCCCCC
+                                                                                                             C'B     BBBBBBBBBBBBBBB
+                                                                                                              XH     HHHHHHHHHHHHHHH
+                                                                                                              CX     XXXXXXXXXXXXXXX
 ====-M-MM-M-ZX   -1A-+=IIAXXXXZ=ZXZMM==-AMMM=-XZ-MZ--Z-M=M=MZM--MM===----ZXZ-MMMM===M-Z-M-M=----ZZMAIA-    ==-"-"=1==M""""""""""""""
+CCCCC C  C C                         CCC    CC  C  CC C C C   CC  CCCCCCC   C    CCC C C C CCCCC            CC+.+   C +CCCCCCCCCCCCC
+                                                                                                              C'C     CBBBBBBBBBBBBB
+                                                                                                               X       HHHHHHHHHHHHH
+                                                                                                               C       XXXXXXXXXXXXX
 M===M-Z------Z    +A1- ==AX=XZ-=Z---M--AA---M=-===-M-M-===MZ-=MMMM=M=+=--ZXZXMM===-MMMZMMZ-=+MMMZX-AII= -  ==M"""A1 -M""""""""""""""
+ CCC C CCCCCC                 C  CCC CC  CCC CCCCCC C CCCC   C    C CCCCC      CCCC       CCC     C         C +++   C +CCCCCCCCCCCCC
+                                                                                                              CCC     CBBBBBBBBBBBBB
+                                                                                                                       HHHHHHHHHHHHH
+                                                                                                                       XXXXXXXXXXXXX
 -===MMZIZ-ZZZZ   =A1==I1=IIAXZZ=IXZ-Z--Z-MM=MM-MMM-=MMMMM+--MMMZMM==+"+M-M-MAXMM-Z-M-MM=MZM++-=--ZXX-=I  - ++-=+=Z+ =+M"""""""""""""
+CCCC     C                         C CC C  C  C   CC     CCC      CCC+C C C     C C C  C   CCCCCC   C       CCCCC   CC CCCCCCCCCCCCC
+                                                                     C                                                 BBBBBBBBBBBBB
+                                                                                                                       HHHHHHHHHHHHH
+                                                                                                                       XXXXXXXXXXXXX
 ZM=+M-Z--ZZZ=+  -+=-1++-+AAXA====X-XX--Z-MMM--=IX-M=M-MZ-MZM=MM-Z-M-M++=-ZMM1=Z-M==MM==MMMM++==-A--IZAI=++1===-+=Z--ZM=-""""""""""""
+  CC C CC                         C  CC C   CC   C C C  C   C  C C C CCCC      C CC  CC    CCCCC CC         CCCCC     C.CCCCCCCCCCCC
+                                                                                                                       'BBBBBBBBBBBB
+                                                                                                                       XHHHHHHHHHHHH
+                                                                                                                       CXXXXXXXXXXXX
 Z-===M--M-ZXAI  11--11++XAXX+ =-I--ZZZZZ-MMZ--+ X-ZMM-ZX-MZ-M=--ZMMMM=MM-ZM-I1=Z-MMM-=M-MM===+=X+-MAX==A==I+-=M=+Z--X=++"""#""""""""
+ CCCC CC C                       CC     C   CC   C   C  C  C CCC     C  C  C    C   CC C  CCCCC  C          CC CC    CCCCCCXCCCCCCCC
+                                                                                                                        BBB$BBBBBBBB
+                                                                                                                        HHH_HHHHHHHH
+                                                                                                                        XXX&XXXXXXXX
 ZZ====MMMMZZII -++- - 1+XZI+I-11X--ZXZ--Z-MZ--A1ZZX--MZXZMMXMMM--M-M----ZA--ZI1ZXMMM-=-M-M=+=+=-1-=AX=1XI=+1XMMM+Z- ZZ+Z-""""""""#""
+  CCCC                           CC   CC C  CC     CC          CC C CCCC  CC        CCC C CCCCCC CC             C     C .CCCCCCCCXCC
+                                                                                                                        'BBBBBBBB$BB
+                                                                                                                        XHHHHHHHH_HH
+                                                                                                                        CXXXXXXXX&XX
 -Z=+=+=-=MMZI  1-      1=ZZIXZ+1Z--ZXZM-Z-ZZMM-X--ZZMM-MM++=-ZMZ--M-ZXXA=A-ZZZ-I+X-MMM-==M==+=+=MMA+I+-X++111Z=ZMX- MX+M#"""""""""""
+C CCCCCCC                        CC    C C    C CC    C  CCCC   CC C      C       C   CCC CCCCCC              C       C XCCCCCCCCCCC
+                                                                                                                        $BBBBBBBBBBB
+                                                                                                                        _HHHHHHHHHHH
+                                                                                                                        &XXXXXXXXXXX
 -Z==+=MM-ZZX=          1IX----X=XXZZXZZZ-ZZM-M-=ZMZ-X-=M++=MAZMIA-MMZX IIZ----Z1+---MM-X+==+==+==+=+-=IIA=+- 1MZZ=1 Z-+-""""""""""""
+C CCCC  C                 CCCC          C   C C    C CC CCC      C        CCCC   CCC  C CCCCCCCCCCCCC                CC.+CCCCCCCCCCC
+                                                                                                                       'CBBBBBBBBBBB
+                                                                                                                       X HHHHHHHHHHH
+                                                                                                                       C XXXXXXXXXXX
 --M-MM--XXXA   - -     -IXZ-MXXXAIXZXZAXZXM-ZX-+I--Z1A++++=MAZM--ZMMM-+AXZZ---X==-MZMMMM=====+++="""+AAXX=+ --XXI-- AM---"""""""""""
+CC C  CC                   C               C  C  CC   CCCCC    CC    C     CCC   C      CCCCCCCCC+++C                 ...CCCCCCCCCCC
+                                                                                                 CCC                  '''BBBBBBBBBBB
+                                                                                                                      XXXHHHHHHHHHHH
+                                                                                                                      CCCXXXXXXXXXXX
 -MMZM--ZXXI=   1+-   --1IXZMM-XZX+=ZXXZZZ1XXZZM-A+==AM++=M=MMZM-Z-MZM-XXZZZ--=XX=ZZZ-ZZM=+=M=+++="-""-I-I==+1 IA+-- X=#--""""-""""""
+C    CC                      C                 C      CCC C    C C   C     CC       C   CCC CCCCC+.++C C             CX..CCCC.CCCCCC
+                                                                                                 C'CC                 $''BBBB'BBBBBB
+                                                                                                  X                   _XXHHHHXHHHHHH
+                                                                                                  C                   &CCXXXXCXXXXXX
 =-=MM-Z-ZZI 1  --- ++++1A+ZMM=-XZ+1IXZ-X-MMM===+M1M==M++=MM=M=-AXA=-ZMZXZM-Z=1AAI=ZZZXZ===MM++=+=""""=+I==AXI 1AI-+-X=#-+"""""#"""""
+CCC  C C                     CC       C C   CCCC   CC CCC  C CC    C      C            CCC  CCCCC++++C               CX.CCCCCCXCCCCC
+                                                                                                 CCCC                 $' BBBBB$BBBBB
+                                                                                                                      _X HHHHH_HHHHH
+                                                                                                                      &C XXXXX&XXXXX
 -ZM-M---XX-IA=  II-=+=IIIIX-M=ZXA+1=XXZ-MM-=+=+=AX==M=+==IZZ==--MA--MZMZ----ZIZAA=ZZA=ZMM==M+=++++++"+I-1=AIA-===---IZ#-="""""""""""
+C  C CCC                   C C         C  CCCCCC  CC CCCC   CCCC   C    CCCC             CC CCCCCCCC+C                X.CCCCCCCCCCCC
+                                                                                                    C                 $' BBBBBBBBBBB
+                                                                                                                      _X HHHHHHHHHHH
+                                                                                                                      &C XXXXXXXXXXX
 -ZM----ZI-=X=I 1AAAI+IIXAAAZMMZZZI1+AZ-MZ==M====ZXMMMM===-MM=====MA=+M=M---Z-XZZA1=+= XM===-===M+===+=I =IAIX=+==---1I-"+"""""""""""
+C  CCCC  C                            C  CC CCCC      CCCC  CC CC  CC C CCC C           CCCCCCC CCCCCC                .+C+CCCCCCCCCC
+                                                                                                                      'C CBBBBBBBBBB
+                                                                                                                      X   HHHHHHHHHH
+                                                                                                                      C   XXXXXXXXXX
 MZM-ZAZ-Z-X++1 =X-1-1I=ZAXXZ--ZXZZ=+Z-M--==Z=+==+MMMMMM+=+=-=+1+-"""-""=---Z-ZAZAI -X1A-=MM-MM=MMMZ=+"Z=ZZXZZAI++- = X=Z+-""""""""""
+   C   C C                  CC       C CCCC CCCCC      CCCCCC  C.+++.++CCCC C          CC  C  C    CC+                C C.CCCCCCCCCC
+                                                                'CCC'CC                              C                   'BBBBBBBBBB
+                                                                X   X                                                    XHHHHHHHHHH
+                                                                C   C                                                    CXXXXXXXXXX
 -AZX=XZZ+=AI+--XXI   +XXZZAXM-ZXXXAXX--M====+++++==M-ZM===ZM  +--------+-MMMZ-ZXIX 1XXXZ--M+MZM==-ZMM++M==-Z=MX==- + =Z=M"""""""-"""
+C                            C       CC CCCCCCCCCCC C  CCC     ........CC    C          CC C   CCC   CC CCC C            CCCCCCC.CCC
+                                                               ''''''''                                                  BBBBBBB'BBB
+                                                               XXXXXXXX                                                  HHHHHHHXHHH
+                                                               CCCCCCCC                                                  XXXXXXXCXXX
 -Z-++XX-ZA+-= ZMMZA  -IXZXXXZ-XXXZZZXXM=M+++==+=+=-MMZ-MMI-Z  +"-------"-==M-ZZX---IZXZ---M==MMM-M-M=+""+=Z-=MZI=1  1IA-="""""""""""
+C C    C                     C         C CCCCCCCCCC   C   C    +.......+CCC C   CC     CCC CC   C C CC++CC CC          CC+CCCCCCCCCC
+                                                               C'''''''C                              CC                 CBBBBBBBBBB
+                                                                XXXXXXX                                                   HHHHHHHHHH
+                                                                CCCCCCC                                                   XXXXXXXXXX
 ZZMI+I----ZIA+MMMZZA1AAZZZZXZXXZZ-ZZZM===++++===+=-MZX-M-IZX  1"-------"-MMM-M-ZZX+-ZZ-ZZ--=MMM-MMM--+""+-X-M=MA11  1I===-""""""""""
+      CCCC                       C    CCCCCCCCCCCCC   C C      +.......+C   C C    C  C  CCC   C   CCC++CC C C         CCCCCCCCCCCCC
+                                                               C'''''''C                              CC                  BBBBBBBBBB
+                                                                XXXXXXX                                                   HHHHHHHHHH
+                                                                CCCCCCC                                                   XXXXXXXXXX
 Z-=-IZ---MMM-ZZZ--ZXIZX------ZXXZ-ZXXMM==++++=+=++-=MAI-ZXZ1   -----"---Z=MM-MM-M-A-Z-------M=MMMMM--M+M+X-M-=-I1---+I=-MZ"""#""""""
+ CCC  CCC   C   CC     CCCCCC    C     CCCCCCCCCCCCC   C       .....C... C  C  C C C CCCCCCC C     CC C C   CCC        C  +CCXCCCCCC
+                                                               '''''B'''                                                  CBB$BBBBBB
+                                                               XXXXXHXXX                                                   HH_HHHHHH
+                                                               CCCCCXCCC                                                   XX&XXXXXX
 MZMMAXAIZ-M-M--ZAZXXXZ---XXAXXXZ-Z-ZZ--Z==++++++=+=+=MZZMI+    -"-------M=+=Z==ZMMZZ--MZ-Z-MMMMM=ZM=M===+--MZM=1=-=+=A=+M-""""""-"""
+         C C CC       CCC       C C  CC CCCCCCCCCCCCC          .+....... CCC CC     CC  C C     C  C CCCCC               C+CCCCC.CCC
+                                                               'C'''''''                                                  CBBBBB'BBB
+                                                               X XXXXXXX                                                   HHHHHXHHH
+                                                               C CCCCCCC                                                   XXXXXCXXX
 MZ-MZ=1IIZ--ZZZXA=I=X--MMX+++AXZ---ZX-M-M++++==+==+=Z=-MI1XI1ZM-""--"-"--M=MMM-MM--Z----Z---=-M-MIM=MM==+=----+1-1+1=XA-X=+"""""""""
+  C       CC         CC         CCC  C C CCCCCCCCCCC CC        .++..+.+.C C   C  CC CCCC CCCCC C   C  CCCCCCCC           CCCCCCC+CCC
+                                                               'CC''C'C'                                                   BBBBBCBBB
+                                                               X  XX X X                                                   HHHHH HHH
+                                                               C  CC C C                                                   XXXXX XXX
 M--M=XA=AZ-X==I+=11=A--MMZ1 +AZXZ-ZXX----===+M=+===MMMM-+X-M="""-Z++====-M=M---M-M-XZZ-----MM--M-MM+=-M=++=MIM=-- --=XA1+=-"""""""""
+ CC C     C          CC          C   CCCCCCCC CCCCC    C  C C+++C CCCCCCC C CCC C C   CCCCC  CC C  CCC CCCC              C.CCCCCCCCC
+                                                             CCC                                                          'BBBBBBBBB
+                                                                                                                          XHHHHHHHHH
+                                                                                                                          CXXXXXXXXX
 =M-M+M-=AZ-XAII+=A1-A--MMZ+ =XXXZ-Z=A-Z--M===M=+==M=MMM-AM=+++""+-=+MM==M==MMMZMM-ZZ--Z-M--ZMX---MM==M+=+++=AM=-+  +IIZ+=+""""""-"#"
+C C C C   C          CC          C   C CC CCC CCCC C   C  CCCC++CCCC  CC CC      C  CC C CC   CCC  CC CCCCCC             C+CCCCC.CXC
+                                                              CC                                                          CBBBBB'B$B
+                                                                                                                           HHHHHXH_H
+                                                                                                                           XXXXXCX&X
 M---=-XA1ZZAX=AIAI- +ZMMMXA++AZXXZX=IX-ZZM=M===+=====M=MAM-+"""""=+++X=M=M=M-=MMMZ-A-----Z--ZXZ--MMM===="""+=-=+-  -++AI=M-"""""""""
+ CCCCC                                C   C CCCCCCCCC C   CC+++++CCCC C C C CC    C CCCCC CC   CC   CCCC+++CCC            .CCCCCCCCC
+                                                            CCCCC                                       CCC               'BBBBBBBBB
+                                                                                                                          XHHHHHHHHH
+                                                                                                                          CXXXXXXXXX
 -XXZ-I==1IIXZIA=A=  IZMZ--=11Z-ZZA-AXZZ-M---+++++MM====M-ZM+"""+=++++=MMMMM-MMMMMXZ-Z-X--ZZAXZ-MM++==++MM++"MXA+1-1-+==IMM""""""""""
+C   C                   CC    C   C    C CCCCCCCC  CCCC C  C+++CCCCCCC     C       C C CC     C  CCCCCC  CC+              CCCCCCCCCC
+                                                            CCC                                            C              BBBBBBBBBB
+                                                                                                                          HHHHHHHHHH
+                                                                                                                          XXXXXXXXXX
 -ZAZXXXA+++==Z--XII=ZMZIM- +-MM-ZZZ=AXAZ-MM==+++==-MM===--M=+""+===++==MM--ZMM-MM--ZZ-X-ZZZAZZZ-M=+=+=M==M=+MX=I -+ =+==--"-""""""""
+C             CC         C  C  C        C  CCCCCCCC  CCCCC CC++CCCCCCCC  CC   C  CC  C C       C CCCCC CC CC            CC+.CCCCCCCC
+                                                             CC                                                           C'BBBBBBBB
+                                                                                                                           XHHHHHHHH
+                                                                                                                           CXXXXXXXX
 -ZAXAXXZ++1+=A-MZZZZ-M+XZ-AAMMM=M-ZXAXA--MM=M==MM=M=++==MMM=+"++=M-=++=-ZM--MM-=M---Z-XZ---Z--XZM===++MM+-=M-X+I--+ ====-M"+""""""#"
+C             C     C    C     C C     CC  C CC  C CCCCC   CC+CCC CCCCCC  CC  CC CCC C  CCC CC   CCCCC  CCC C           C +CCCCCCCXC
+                                                             C                                                            C BBBBBB$B
+                                                                                                                            HHHHHH_H
+                                                                                                                            XXXXXX&X
 -Z=AA=A+1+1+XAZ-Z---=M+X-MM---M==-ZZXZZ-MMMM-++-M=-M+++==MMM=+++M=+M++M-MM-MM-MMMMM-Z-ZZ-----M----=+++MM=M+"ZZ+++ - +1I1ZM-Z""""""""
+C              C CCCC   C  CCC CCC     C    CCCC CC CCCCC   CCCC CC CC C  C  C     C C  CCCCC CCCCCCCC  C C+              . CCCCCCCC
+                                                                                                           C              ' BBBBBBBB
+                                                                                                                          X HHHHHHHH
+                                                                                                                          C XXXXXXXX
 M-IXXAA+++1=I+=+XMMIZZ-M-ZMM-M===ZZZX-M-----M==+==Z-+M=++1M=+"++-=+X=+-MMMM=MMMM-M-ZZZX-MMM=--Z=M-+++"=ZMM=++-+-=   +=AIX+"-""""""""
+ C                    C C   C CCC    C CCCCC CCCCC CC CCC  CC+CCCCC CCC    C    C C    C   CCC C CCCC+C   CCCC           CCCCCCCCCCC
+                                                             C                                       C                    B BBBBBBBB
+                                                                                                                          H HHHHHHHH
+                                                                                                                          X XXXXXXXX
 M-I=AZX=I+1=I+++=AAIZ-M-X----M--MZZXIZ-ZZZZMM-M==MZ-=MM=+I-=="+"+M=ZMM-ZMMM=MM--Z--ZZXZ-MMM=-MM=M=+++++MM--M+=A +-  ==AXI+"M""""""""
+ C                   C C CCCC CC      C      C CC  CC  CC CCC+C+C C   C    C  CC CC    C   CC  C CCCCCC  CC CC           CC CCCCCCCC
+                                                             C C                                                          B BBBBBBBB
+                                                                                                                          H HHHHHHHH
+                                                                                                                          X XXXXXXXX
 MXI=IA+XXX-=I1++-+IIAM-M--Z-MX1A-M-ZII-ZZZ-MZ-X-MMZZ-M===-===+=""+M=MMM--MM=MM---ZZXXXZ-M===-MMM=+M++++MM=-Z==--+1 -===A1="M""""""""
+                      C CC C    C C   C   C  C C    C CCCC CCCC++C C   CC  C  CCC      C CCCC   CC CCCC  CC CCC          CC CCCCCCCC
+                                                               CC                                                         B BBBBBBBB
+                                                                                                                          H HHHHHHHH
+                                                                                                                          X XXXXXXXX
 ZA1A==+ZZZ1=+1- --=AX-M-MZM=-+ +Z--AAAZX-Z-MM=IA--ZZXZ=+=MZM+++--"M====M--MMM-ZM-ZZZXXZX-===MM=MM=+++"-=--MXZZ-11=--+1=AA++=-"""""""
+                     C C   CC    CC     C C  C  CC    CCC   CCC..+ CCCC CC   C  C       CCCC  C  CCCC+.CCC    C          CCC.CCCCCCC
+                                                               ''C                                   C'                     'BBBBBBB
+                                                               XX                                     X                     XHHHHHHH
+                                                               CC                                     C                     CXXXXXXX
 Z=+XIIAXXA+==-1- -1=AIZ-ZZ-ZZX=IA--X=IIZ-ZXZ-=MAXIII1AZ==A=Z==+"-"=+++===MMM-MM-ZZZZZZXZZ=MM-MM=M==M=+"+ZM=M-ZA=++1-1+=IA++-""""""""
+                       C  C      CC     C   CC         CC   CCC+.+CCCCCCC   C  C         C  C  C CC CC+C  C C            CCCCCCCCCCC
+                                                               C'C                                    C                     BBBBBBBB
+                                                                X                                                           HHHHHHHH
+                                                                C                                                           XXXXXXXX
 I+IAIZAAX=IXI=+--+++==A==XXIAZZZZZXXXXIZ-XIAI-M-Z=I1+IAXZI MM=""""==+++===MMMM------ZXXZZ==M-M-MM=MMM""+=+=M-Z+A+-+  =+=A-"-""""""""
+                                        C    C C             C++++CCCCCCCC    CCCCCC     CC C C  C   ++CCCC C            C+CCCCCCCCC
+                                                              CCCC                                   CC                   C BBBBBBBB
+                                                                                                                            HHHHHHHH
+                                                                                                                            XXXXXXXX
 1IIIIZIAX=IAXA=+===-+I1--==+=I-ZZZXXZXXZXXZZIX==XZ-XZXIA=IAMZ+"""+++++==+++==-----ZXZXX-ZM==-M-======""+=-+=-ZIXX1 --+1ZAZ"Z"-""""""
+                              C               CC  C          C+++CCCCCCCCCCCCCCCCC     C  CCC CCCCCCC++CC.CCC             + C.CCCCCC
+                                                              CCC                                    CC  '                C B'BBBBBB
+                                                                                                         X                  HXHHHHHH
+                                                                                                         C                  XCXXXXXX
 1++==XXA=+IX-ZIII++-1II- 1=I==--ZZXAAXXAZZM===+Z1=Z=++Z=XIZZ=A"-"++++=MM++++==ZAZX-=M-XZAMMM-=-M+==M++"="--==X=AX- =1--ZXA+A""""""""
+            C                 CC           CCCC    CCC        +.+CCCCC  CCCCCC    CC C      CCC CCC CC+C+..CC             C CCCCCCCC
+                                                              C'C                                     C C''                 BBBBBBBB
+                                                               X                                         XX                 HHHHHHHH
+                                                               C                                         CC                 XXXXXXXX
 ==I+=XAZ=-IA-XIZA+=+=+I--=XXA=XX-XAXAIIAX-M==M1= 1XM==MXXAMA+X"-"++++=+=+""=MZAAZMMMMMZM-M=MM=M=+===+"-+-=MMMXXIX- 11I1IZX+X""""""""
+            C                   C        C CC       CC        +.+CCCCCCCC++C            C C  C CCCCCC+.CCC                C CCCCCCCC
+                                                              C'C        CC                          C'                     BBBBBBBB
+                                                               X                                      X                     HHHHHHHH
+                                                               C                                      C                     XXXXXXXX
 =+IIIXXZA+IAXIIZX=AIIIAAXXAXXI==AAZ-A=AZ-MM==-1-1AZ=M=MZIXZ=+Z"+=+++=+==+==MZZIX-=MM-MZ---MMM==+=MMM=+"+=M+==Z-AX  1+A-XI-Z-""""""""
+                                   C    C  CCC     C C        +CCCCCCCCCCCC     CC  C  CCC   CCCC   CC+CC CCC C          C CCCCCCCCC
+                                                              C                                       C                     BBBBBBBB
+                                                                                                                            HHHHHHHH
+                                                                                                                            XXXXXXXX
 ++I=IXXAI=AAX=AX+XI=AXXZZIXXZA==I=AIIXXZ-MM=MI+-Z---="=MZ=XIAM+=M"++=+++==M--ZIZM=M-ZM-Z--Z-MM==+=M-M+++=M==+MMXZ 1+=Z+I=+1+""""""#"
+                                        C  C     CCCC+C       CC +CCCCCCCC CC    C C  C CC C  CCCC C CCCC CCC            C CCCCCCCXC
+                                                     C           C                                                          BBBBBB$B
+                                                                                                                            HHHHHH_H
+                                                                                                                            XXXXXX&X
 =====AZI111IXAXAAXIAAZZMM-A-ZAIZXX1 =ZZZ-M=MM= XX=M-=++=MZIAAMM+I"+++=M++-M==ZA-MMMM-M-ZZZZ--M=+++M-ZM+=+M+=++=MXI+-AIAI1-="""""""""
+                         C C            C C      C CCCCC       C +CCCC CCC CC  C    C C    CC CCCC C  CCC CCCCC          C CCCCCCCCC
+                                                                 C                                                         BBBBBBBBB
+                                                                                                                           HHHHHHHHH
+                                                                                                                           XXXXXXXXX
 IIXZAXXI11I=I==Z-AXAZZM==XXZAAZZAA =+XZZMM-=MA-=+MZM=++"XXXAIM--M""++=MMM+=AMMMM=MMMMMXZ--ZZ-MM=++MM--MM+M+"++M=MZ+ AAIA+X1#-"""""-"
+                C      CC                 CC        CCC+      CC ++CCC   CC             CC  C  CCC  CC  C C+CC C           X.CCCCC.C
+                                                       C         CC                                        C               $'BBBBB'B
+                                                                                                                           _XHHHHHXH
+                                                                                                                           &CXXXXXCX
 IZZZZAX=+=A1IIZ-ZXZZZ-M==-A----XAZ=+IZZXM=---X+1 IZ+-+M=--ZMZ-AIM+-=+MM==+=MMMM==MMM--ZMM---M--M=+=MZ---="""+=-M===+A=IIAM1"""""""""
+               C     C CCC CCCC          CCCC      CCC CCC   C   C.CC  CCCC    CC   CC   CCC CC CCC  CCCC+++CCC CC         CCCCCCCCC
+                                                                  '                                      CCC               BBBBBBBBB
+                                                                  X                                                        HHHHHHHHH
+                                                                  C                                                        XXXXXXXXX
 AZZZX=A=XII==X---ZX-MMM=M-MM=MZIAZZAAA--ZZMZXA+-  A=-MZXM=--1MZ---++=M=====M=Z===MMM==ZZ----=MM-=MMMM--M==++"+IM=====+=I==++""""""""
+              CCC  C   C C  C         CC           CC    CCC   CCCCCC CCCCC C CCC   CC  CCCCC  CC    CC CCCC+C  CC       C CCCCCCCCC
+                                                                                                            C               BBBBBBBB
+                                                                                                                            HHHHHHHH
+                                                                                                                            XXXXXXXX
 IXAIAAZIIII+IZXZMZA-MMMM-==MM-AAAAZ-AXMM=-M--1 -  =ZZ+1IMZ-MAM--==-M====-M===AM=MM--MMZ--M---M===MMMZ I--M==+"++XMAXA1=IX+1+""-"""""
+                   C    CCC  C     C    CC C              C   CCCCC CCCCC CCC  C  CC   CC CCC  CC      CC CCC+CC         C CCC.CCCCC
+                                                                                                             C              BB'BBBBB
+                                                                                                                            HHXHHHHH
+                                                                                                                            XXCXXXXX
 IZI=AX-Z-II=XZZ--AZ---ZZ--M--X IZZMXXM-=MM--X---1 I--A==-IX+Z-XZZZM++==M=MZM--=MMM-Z==M----M==X++=--A +--MM++""M--AA11=IAZM"""""""""
+      C        CC  CCC  CC CC         CC  CC       CC   C  C C     CCCC C   CCC   C CC CCCC CC CCCCC   CC  CC++ CC         CCCCCCCCC
+                                                                                                             CC            BBBBBBBBB
+                                                                                                                           HHHHHHHHH
+                                                                                                                           XXXXXXXXX
 =IAIXXZX-==+IAXAIXZXXZZZZXZ--Z=AZZZZXXZM=MZAI+11+1AX-AAXAX-=ZMZZZMM+"=M=MM=MMM=--M-Z=+=--Z-M===++MZ=  +M-MM+++M=XX=1++IIIA=-""""""""
+                           CC           C           C     CC       C+C C  C   CCC C CCCCC C CC CC       C  CCC            C.CCCCCCCC
+                                                                    C                                                      'BBBBBBBB
+                                                                                                                           XHHHHHHHH
+                                                                                                                           CXXXXXXXX
 I=+=ZMAI =I+I=I=II+IAIIX=AAZ-ZAAZXZZ-Z-=M=-II==+1+=AIAAXIIZZZM=-+=-=+-M==MMMMMMZAZZ-==-ZXX-M==-++-X ++X--MM++"XIIX=+===II-"+""""""""
+                            C       C CC CC                   CCCCCCCC CC          CCCC   C CCCCCC     CC  CC+           C+CCCCCCCCC
+                                                                                                             C            C BBBBBBBB
+                                                                                                                            HHHHHHHH
+                                                                                                                            XXXXXXXX
 XI-1ZXI1-++-+=I =A-+III+IA1XZXAZ--XIM=-+-=Z=A+1+-+=AI=IA==IZMM=+=MMZZ=MM-X-M-==-ZZZXXZZZZ-MMM-=+=Z-IX-MZ-Z-=++=MAXXI+ IA=Z"--"-"""""
+                                CC   CCCCC                    CCC    C  C C CCCC         C   CCCC C  C  C CCCCC           C..C.CCCCC
+                                                                                                                          B''B'BBBBB
+                                                                                                                          HXXHXHHHHH
+                                                                                                                          XCCXCXXXXX
 AA+IXAX-   ++I=+1=+1=X==AA=AAZMZZ--I-+MM-=MAII++=+++=III===XXZZ--A+=ZM--Z-M+M==Z--==M-=M---ZZZ++-=-Z---Z-MMX+""==ZX+++IX=Z""#"""""""
+                                 CC CC  CC                     CC     CC C C CC CCCC CC CCC   CCCCC CCC C   C++CC         CCXCCCCCCC
+                                                                                                             CC           BB$BBBBBBB
+                                                                                                                          HH_HHHHHHH
+                                                                                                                          XX&XXXXXXX
 XI=IIXAI11+II=A=+AA==I=11=+IXZXAXXZXZZZZ-==AI=1111+-====+=++IIXAZX=IZZM+=MM=++++=M=M=M==-M-M-MM+X+M-M-MMMM-M"""++Z++=XIXIZ-"""""""""
+                                        CCC                            CC  CCCCCC C C CCC C C  C C C C    C +++CC         .CCCCCCCCC
+                                                                                                            CCC           'BBBBBBBBB
+                                                                                                                          XHHHHHHHHH
+                                                                                                                          CXXXXXXXXX
 XIIIA-MX=+=AZIAAA=ZXI++-1+1+=+1+AX+=AZXXXXZI+1- 1++1+II++=++=IZ=I-ZZ--="+=++""===M=MMMMM====M--=ZMM--MM-M-M=+"""+I=XZZX-ZI""""""""""
+     C                                                           C  CCC+CCCC++CCC C     CCCC CCC   CC  C C CC+++C      C  +CCCCCCCCC
+                                                                       C    CC                               CCC          CBBBBBBBBB
+                                                                                                                           HHHHHHHHH
+                                                                                                                           XXXXXXXXX
 =IAZM=-ZIAAXAIAIZZX=-  +ZZX=1==Z=+M=M-AIZ-XI++- -+++1+A-1=++AAZM+M-X--+-"++M=MM=-MM=ZXZM====M1M--=M=--MM-M=++++"+=+=ZIZ"MZ="#"""""""
+     CC                         CC C C   C                      C C CCC.+CC C  CC  C    CCCC   CCC CCC  C CCCCC+C  C   +  CCXCCCCCCC
+                                                                       'C                                      C       C   B$BBBBBBB
+                                                                       X                                                   H_HHHHHHH
+                                                                       C                                                   X&XXXXXXX
 AXX==MZX=I==1=I=AXAZ=  =XM=-XZ-+===+M+XZA-AII=1++1+1  ==I=+AX=+M+=-M-="++""==MM==MM=-==M=MMM=-+=M==MM-MMM-==+++++=-=-I-"ZZ+"""""""""
+   CC                     CC  CCCCCC C   C                   CC CCC CC+CC++CC  CC  CCCC C   CCCC CC  C   CCCCCCCCCCCC C+  CCCCCCCCCC
+                                                                      C  CC                                            C   BBBBBBBBB
+                                                                                                                           HHHHHHHHH
+                                                                                                                           XXXXXXXXX
 AXZMMXA===+++I=IXX--I1+=M=+==M==M===M=ZXZZII+===++1-  1A==1IX--MM==MM""+=""+====MM=+=+=M====+=+=M==MMM---M=A++++M-=-Z-"+Z+"""""""""-
+                  CC     CCCC CC CCC C                       CC  CC  ++CC++CCCCC  CCCCC CCCCCCCC CC   CCC C CCCC CCC C+C CCCCCCCCCC.
+                                                                     CC  CC                                           C   BBBBBBBBB'
+                                                                                                                          HHHHHHHHHX
+                                                                                                                          XXXXXXXXXC
 AXXZZI=1++1IAAIXXXMMZAZZ=+=Z=+==++-XZXAZXXII=IAAII=1  II===II=AAZXMM-==M-=+====+=MM++==MM==="+=Z=++MMM-M-M=M++++M=Z-M-+M-="""""""""-
+                        CCC CCCCCCC                                 CCC CCCCCCCCC  CCCC  CCC+CC CCC   C C C CCCC   C CC CCCCCCCCCCC.
+                                                                                            C                             BBBBBBBBB'
+                                                                                                                          HHHHHHHHHX
+                                                                                                                          XXXXXXXXXC
 ZXZX+AA+11IXIIZZZ-MM=M=+"MXZ====-MMXMZMZ-XAIAAAI===++=AII==AZAIXI-=Z-++=+=+=+==M===M==+M=+-+++Z=+++M-M---M=+++++M+-="++=M"""""""""""
+                 C  C CC+   CCCCC       C                        CC CCCCCCCCCCC CCC CCC CCCCCC CCCC C CCC CCCCCC  CC+CCC +CCCCCCCCCC
+                        C                                                                                           C    CBBBBBBBBBB
+                                                                                                                          HHHHHHHHHH
+                                                                                                                          XXXXXXXXXX
 -MMXIIA=IAXXXAXZ-MM--==MM-XZZ--Z-MM===M=+-I====I+=IA==I=IIIII--M=MMZ=+==+M==+==-MMM++++-M=="++=++++M==M-Z==M=+++=AM="=+"="""""""""""
+C               C  CCCC  C   CC C  CCC CCC                   CC C   CCCCC CCCCCC   CCCCC CC+CC CCCC CC C CC CCCCC  C+CC+C+CCCCCCCCCC
+                                                                                           C                        C  C CBBBBBBBBBB
+                                                                                                                          HHHHHHHHHH
+                                                                                                                          XXXXXXXXXX
 M+=XXAZAAXIXZZXAI-ZAZMMXAXAIAZ---MM=M-M=M-A==AZ-I+=AI+11IIAAXZMX==+++""=+MM==++=M==+M==M==+"+-Z++=+===M---MA=+++M=++"-"""=""""""""""
+ CC              C            CCC  C C C C     C                CCCCC++CC  CCCCC CCC CC CCC+CC CCCCCCC CCC  CCCC CCC+C+C+CCCCCCCCCCC
+                                                                     CC                    C                        C CBC BBBBBBBBBB
+                                                                                                                       H  HHHHHHHHHH
+                                                                                                                       X  XXXXXXXXXX
 Z--XZAZXIIIAZA=IAXAAAII==X-ZZMZ---ZZMM-+=ZX=XZMMA++II+-1=Z=MXXZ+M+"+="""=+==M=M=M+=+M==ZM=++=X==+====MM---==++==+="""-+"""""""""""""
+ CC                       C    CCC    CCC                 C      C+CC+++CCCC C C CCC CC  CCCC CCCCCCC  CCCCCCCCCCC+++CCC++CCCCCCCCCC
+                                                                  C  CCC                                          CCC  BCCBBBBBBBBBB
+                                                                                                                       H  HHHHHHHHHH
+                                                                                                                       X  XXXXXXXXXX
 ZIIAZXAII====++IAZ==+A-X=XMMZ-Z-==+ -==M-ZXA-MMAXA+AA1--=Z-MMZ-Z=+"++--"X+++M-XM==MMM-=Z-Z-==M==-===MMMMMMMM=M==M=+-MI"""-"""-"""-""
+                      C      C CCC  CCC C   C             C   C CC+CC..+ CCC C  CC   CC C CCC CCCCCC        C CC CC.  +CC.CCC.CCC.CC
+                                                                  C  ''C                                           '  CBB'BBB'BBB'BB
+                                                                     XX                                            X   HHXHHHXHHHXHH
+                                                                     CC                                            C   XXCXXXCXXXCXX
 I=AXXI+====AI==I+IIXA-MMXX=-IAXZM=MM==-M=A=XAZ-ZMXXXX==+XZ+=+=+=--+""-"+===M-=MM-----M--M-==="+M=+=+M=M-M-=MMM=+=+""M1"""""""#""""""
+                     C    CC     C  CCC C     C           CCCCCCCCC++.+CCCC CC  CCCCC CC CCCC+C CCCC C C CC   CCCC++  CCCCCCCXCCCCCC
+                                                                   CC'C                      C                    CC  BBBBBBB$BBBBBB
+                                                                     X                                                HHHHHHH_HHHHHH
+                                                                     C                                                XXXXXXX&XXXXXX
 +===+I+=I==I==1++=AA=IIZAI=Z=-IAZ--MMMM==-ZZIAX--AX-IX=+M-MM==+---MM"""X=M-ZZ====MMMM=Z--M==++++=+++M+M---M-MM===+"+++""-"""""-"""""
+                          C      CC    CCC     CC  C     C  CCCCCC  +++ C C  CCCC    C CC CCCCCCCCCC C CCC C  CCCC+CC CC.CCCCC.CCCCC
+                                                                    CCC                                           C   BB'BBBBB'BBBBB
+                                                                                                                      HHXHHHHHXHHHHH
+                                                                                                                      XXCXXXXXCXXXXX
 -1+1+==I==+=IA++++=I1+====XZA IZ--M=+++""ZXZZZZZZZZZ+I=+A--MMM=MMM--Z++-M---M==M=MM-MA-MM=++=+++=+++++=-Z-Z-===++"++==---"""""""""""
+                                CC CCCC++                CC   C   CC CCC CCC CC C  C  C  CCCCCCCCCCCCCCC C CCCCCC+CCCC...CCCCCCCCCCC
+                                       CC                                                                        C    '''BBBBBBBBBBB
+                                                                                                                      XXXHHHHHHHHHHH
+                                                                                                                      CCCXXXXXXXXXXX
 -   1+=+=1+==I=1=1+=+11+AXAZAAA-==++++M+--IXIIXXZMX-=IA+IAZMM==MMM-=-=Z-M-MZ-==M=ZMMZM==M+=++M++=+=-++=---M=+=M""-+-+---"""""-""""""
+                               CCCCCCC CCC         C         CC   CCCC C C  CCC C     CC CCCC CCCCCCCCCCCC CCC ++.C.C...CCCCC.CCCCCC
+                                                                                                               CC' ' '''BBBBB'BBBBBB
+                                                                                                                 X X XXXHHHHHXHHHHHH
+                                                                                                                 C C CCCXXXXXCXXXXXX
  - -+II+=+==AA=+11+++1 -=AAZ-M==+""++=+-MAXZIIZZZZ--ZZZIIAM=Z==ZZZM==+-XX1-Z-MM--M==M====+++"++=====M=M-A-=M-=++"""+--"-""""""""""""
+                            C CCC++CCCCC          CC       C CC    CCCC   C C  CC CC CCCCCCC+CCCCCCC C C CC CCCC+++C..C.CCCCCCCCCCCC
+                                 CC                                                         C                   CCC ''B'BBBBBBBBBBBB
+                                                                                                                    XXHXHHHHHHHHHHHH
+                                                                                                                    CCXCXXXXXXXXXXXX
  1+==AIIAIAIIAI=+1111   1IAZM==M-+++++-+MXZXXXZXZZ=XZZM-AIZ-----Z--++M-X-IXZ=M-Z--M=M===+++++++M====MM--ZM=--=++"=-+"+"-""""""""""""
+                             CC CCCCCC.C          C    C   CCCCC CCCC C C   C C CC C CCCCCCCCCC CCCC  CC  CCCCCC+C.C+CC.CCCCCCCCCCCC
+                                      '                                                                         C ' C B'BBBBBBBBBBBB
+                                      X                                                                           X   HXHHHHHHHHHHHH
+                                      C                                                                           C   XCXXXXXXXXXXXX
  -+=IXAAAXAI==1-+1+==+- +=IIAM=ZZ=+++=+"MX-=XAXXXZM-MMM=-AXMAZ-M--M+"M-X-MZ-MM-MMM++=MM=+=+"+++==M=MMMZMM=MZ-=M-"-"-""""""""-"""""""
+                              C  CCCCCC+  CC       C   CC     C CC C+ C C  C  C   CCC  CCCC+CCCCC C      C  CC .+C+.C+CCCCCC.CCCCCCC
+                                       C                            C                      C                   'C C'BCBBBBBB'BBBBBBB
+                                                                                                               X   XH HHHHHHXHHHHHHH
+                                                                                                               C   CX XXXXXXCXXXXXXX
  1=XAIIAIAII11-11-+=I+--1==1=ZMZ-+"""MM==MMAIIIZMM=M=MM=M-X---M-Z-+=++M----M--ZM-==++=M-M=+"++=+MZM-MM--M=ZZ=M+"=++---"""""""-""""""
+                                CC+++  CC         C C  C C CCC C CCCCC CCCC CC  CCCCCC C CC+CCCC   C  CC C  C C+CCC...CCCCCCC.CCCCCC
+                                  CCC                                                      C                   C   '''BBBBBBB'BBBBBB
+                                                                                                                   XXXHHHHHHHXHHHHHH
+                                                                                                                   CCCXXXXXXXCXXXXXX
 +AAAXAIII=+=1  -1-1=I=--IXI=A---M+"""++"++=MX+AM==+M-M-ZMM-ZMM-MM-=+=MMM---ZZAM-M===+M==M+""+==+MM--ZM-ZZZZ==M+"M+"=A--"""""""""""""
+                             CCC C+++CC+CCC     CCC C C   C   C  CCCC   CCC    C CCCC CC C++CCCC  CC  C    CC C+ C+C ..CCCCCCCCCCCCC
+                                  CCC  C                                                  CC                   C  C  ''BBBBBBBBBBBBB
+                                                                                                                     XXHHHHHHHHHHHHH
+                                                                                                                     CCXXXXXXXXXXXXX
 =AXXXI===I=1-   1--1I=+1AI+AAXAZMM=++M-=-ZM"M=AZM=++=Z-ZZZZXZM=-==++MMMM----ZZMMMM====-M=++====+=--Z-MMXZ-M++""M""-"A-"""""""""-""""
+                                  CCC CCC  +     CCCC C       CCCCCC    CCCC      CCCCC CCCCCCCCCCC C    C CC++ ++.+ .CCCCCCCCC.CCCC
+                                           C                                                                 CC CC'C 'BBBBBBBBB'BBBB
+                                                                                                                  X  XHHHHHHHHHXHHHH
+                                                                                                                  C  CXXXXXXXXXCXXXX
 IXZZXI+==A=111- -1 -1=+1+++IAXAX-=M==XI-===++MM--==M-ZX-ZZZAZ-+-=++=M-MMM----M=-MM--=M-MM======+=MZXMM-Z-MM=-"+M"""=M-""""""""""""""
+                                CC CC  CCCCCC  CCCC C  C     CCCCCCC C   CCCC CC  CCC C  CCCCCCCC     C C  C.+C +++C .CCCCCCCCCCCCCC
+                                                                                                            'C  CCC  'BBBBBBBBBBBBBB
+                                                                                                            X        XHHHHHHHHHHHHHH
+                                                                                                            C        CXXXXXXXXXXXXXX
 XXIXX=I==I=+111--1 -==1    1=AIIM=MMZXAM=++""++=M--IXXZ--ZXZZ-MMZM=M-MM==-=-ZMMXM=M-MZZ=-Z==M++M=MZ-M-ZM+=+"--M=+-+A-"-"-"-""""""""-
+                                 C      CCC++CCC CC    CC    C    C C  CCCCC     C C   CC CC CC C  C C  CCC+.. CC.C .C.C.C.CCCCCCCC.
+                                           CC                                                              C''   '  'B'B'B'BBBBBBBB'
+                                                                                                            XX   X  XHXHXHXHHHHHHHHX
+                                                                                                            CC   C  CXCXCXCXXXXXXXXC
 X=AAI=+=III=+1+-1--1+I=+1--1--=Z=+-XAZM=+--+"+++ZZAAZ---Z-Z--Z-M--=M--M==-M-XZX-M-=M-ZZMZM=+MZ+=MMMMM-==++++"+MM--=X-#""""""""""-"""
+                                CCC    CC..C+CCC     CCC C CC C CCC CC CCC C   C CC C     CC  CC     CCCCCCC+C  ..C .XCCCCCCCCCC.CCC
+                                         '' C                                                               C   ''  '$BBBBBBBBBB'BBB
+                                         XX                                                                     XX  X_HHHHHHHHHHXHHH
+                                         CC                                                                     CC  C&XXXXXXXXXXCXXX
 =+=IIA===AII=++1+1- 11==++=AIX=---=IIZMM""-="++=ZA-I--ZZZZA-X-MMM-=-Z-MMMMM--ZX-MMM--Z-M-M==M-=M==M=M==+"+++=Z-+--M"-#""""""""-"""""
+                              CCCC      ++.C+CCC    CC     C C   CCC C     CC  C   CC C C CC CC CC C CCC+CCCC CC.. +.XCCCCCCCC.CCCCC
+                                        CC' C                                                           C       '' C'$BBBBBBBB'BBBBB
+                                          X                                                                     XX  X_HHHHHHHHXHHHHH
+                                          C                                                                     CC  C&XXXXXXXXCXXXXX
 11-+=XZ=IZX==+1===+ 1 =AIIX--+"=AXA1==Z"""""""+MI  Z=M-ZZXZ-X=ZMMMM-M==M-M-Z-MZ--M--MZM=MMMMM-MM=+=+-+++++==-A+"--+-""-"""""""""""""
+                           CCC+C       +++++++C     C C    C       C CC C C C  CC CC   C     C  CCCCCCCCCCCCC C+..C.CC.CCCCCCCCCCCCC
+                              C        CCCCCCC                                                                 C'' 'BB'BBBBBBBBBBBBB
+                                                                                                                XX XHHXHHHHHHHHHHHHH
+                                                                                                                CC CXXCXXXXXXXXXXXXX
 -1-11Z-I=AXXI+1IIII1- 1=XIAX-==AX1   IZ="+""+++=Z1+XZ-AAXZ-ZMAXZ--Z--MM--MM=-MZZZ-ZZXM==-M-MMM=MM+=+==+"""+ZXM++"--"#""""""""-""""""
+      C                     CCC        C+C++CCCC     C    C     CC CC  CC   C    C    CCC C   C  CCCCCC+++C   CC+..CXCCCCCCCC.CCCCCC
+                                        C CC                                                           CCC      C''B$BBBBBBBB'BBBBBB
+                                                                                                                 XXH_HHHHHHHHXHHHHHH
+                                                                                                                 CCX&XXXXXXXXCXXXXXX
 -11+1IXX IAXZ==+=ZZA+1--1+AAIZMXII-=AIX-M=+=""+MA+IXXAIIXXXX-XXAA--M=MM-ZZZ=---MMZM---M==MZ-M====+==-++"=+=ZZM+++"-"#"""""""""""""""
+                                       C CCC++C             C    CC C  C    CCC    CCC CC  C CCCCCCCCCC+CCC   CCC+.CXCCCCCCCCCCCCCCC
+                                            CC                                                         C         C'B$BBBBBBBBBBBBBBB
+                                                                                                                  XH_HHHHHHHHHHHHHHH
+                                                                                                                  CX&XXXXXXXXXXXXXXX
 -1-1--1+1IZXXXA=+IIA+- - 11XXAXZAX-ZZ-MM+M===="MXXXIIAIIXXXZZZXAZ==M=-MM---ZMZM=+=M----M=MXZMM==+===M"-++==--+""-"-#""""""""""""-"""
+                                  C  C  C CCCC+                  CC CC  CCC    CCC CCCC C     CCCCCC C.CCCCCCC++.+.XCCCCCCCCCCCC.CCC
+                                              C                                                      B'       CC'C'$BBBBBBBBBBBB'BBB
+                                                                                                     HX         X X_HHHHHHHHHHHHXHHH
+                                                                                                     XC         C C&XXXXXXXXXXXXCXXX
 ==-1-- 1=A-XIZA1+I=+1    ---+==XZZZ-ZM="-""+=M+=-ZX+IAI==AXZZ=ZAZM=M=MMMMM=M=Z-=M==M--==MMZM=M==+++++""=MMMM-""-"-"#""""""""""""""""
+          C                        C  C+.++CC CCC                 C C     C C CC CC CCCC    C CCCCCCC++C    C++.+.CXCCCCCCCCCCCCCCCC
+                                       C'CC                                                          CC      CC'C'B$BBBBBBBBBBBBBBBB
+                                        X                                                                      X XH_HHHHHHHHHHHHHHHH
+                                        C                                                                      C CX&XXXXXXXXXXXXXXXX
 =---1-1=A+++I++A===+      +1=-+ZZZM--=+"+"""+++=X=IIXAXAAXXZX1III=M=-++M===+MMX===MX-=+MM--=M+===++=====+Z-Z+""-M"-"-""""""""""""--"
+                                   CCCC+C+++CCCC                 C CCCC CCCC   CCC  CCC  CCC CCCCCCCCCCCC C C++. +.C.CCCCCCCCCCCC..C
+                                       C CCC                                                                 CC' C'B'BBBBBBBBBBBB''B
+                                                                                                               X  XHXHHHHHHHHHHHHXXH
+                                                                                                               C  CXCXXXXXXXXXXXXCCX
 =ZA+ 1+IZ+==+=A-=I==1    +===+AXZ----==""""""+"=AZAXXIII-ZZZZZZ---=+M+M===-==--MM=M--==M-ZM==+===+++++M=M=MZ""""--+"""""""""""""""""
+                                 CCCCCC++++++C+C               CCCCC C CCCCCCCC  C CCCC C  CCCCCCCCCCC C C  ++++..CCCCCCCCCCCCCCCCCC
+                                       CCCCCC C                                                             CCCC'' BBBBBBBBBBBBBBBBB
+                                                                                                                XX HHHHHHHHHHHHHHHHH
+                                                                                                                CC XXXXXXXXXXXXXXXXX
 =XA+ 1++=III=AA--1+1---+++XZ+X-XIAAIZ--M=""-+++ZX-ZM-A=I=AZXX-MM=-==M=M=MZ--X--M---ZM=MMMXM==M==M+++==M=-MAM"""--+"#""""""""""""""""
+                              C      CC C++.CCC  C  C        C  CCCC C C  CC CC CCC  C     CC CC CCCCC CC   +++..C+XCCCCCCCCCCCCCCCC
+                                         CC'                                                                CCC'' C$BBBBBBBBBBBBBBBB
+                                           X                                                                   XX  _HHHHHHHHHHHHHHHH
+                                           C                                                                   CC  &XXXXXXXXXXXXXXXX
 =IAXII+==XZX==I-+=++I==IA=AAAA--ZIZXAXI=XM+"++MZ-MZM=MXXXAAXXZ-==MM=+=M=-ZZXX-M--ZZ-==M=M-M==-==+=====M=MIA=+""-"M-""""""""-"""-""""
+                              CC          C+CC  C   C         CCC  CCC CC    C CC  CCC C C CCCCCCCCCCC C   CC++.C .CCCCCCCC.CCC.CCCC
+                                           C                                                                 CC'B 'BBBBBBBB'BBB'BBBB
+                                                                                                               XH XHHHHHHHHXHHHXHHHH
+                                                                                                               CX CXXXXXXXXCXXXCXXXX
 XXIZAX+=AZZXA=++IXXXAAAA-===AZAZZX-=Z=XA=AAM=--===M==+MZAA=IIXM-=--=MMZ=--ZAX-ZZ-ZZMMZM---ZZMZM===+===-+--1M+M"""+""""""-""""""-"""-
+                        C         CC        CCCCCC CCC         CCCCC   CCC   C  C      CCC     CCCCCCCCCC   C +CCC+CCCCC.CCCCCC.CCC.
+                                                                                                              CBB CBBBBB'BBBBBB'BBB'
+                                                                                                               HH  HHHHHXHHHHHHXHHHX
+                                                                                                               XX  XXXXXCXXXXXXCXXXC
 ---ZXXA=AXXIAXA1AZZX==I++1++=AAZ-MMXXX-M-XZ--ZX--MM+MM=-ZZ==ZZZMM=-M--A-ZXXAAXZZ-Z--Z==ZZZZ-MZMM=M=+=MMMA1-="=+-="""""""""""""""""""
+CCC                             C     C C  CC  CC  C  CC         CC CC C        C CC CC    C    C CCC      C+CC.C+CCCCCCCCCCCCCCCCCC
+                                                                                                            C  ' CBBBBBBBBBBBBBBBBBB
+                                                                                                               X  HHHHHHHHHHHHHHHHHH
+                                                                                                               C  XXXXXXXXXXXXXXXXXX
 +==XXXXAIXXZXXA=X=ZMZZZXAIIA=XXAA-MM-Z++MM=-ZXXAZZZ--ZZXAI+=A-Z-MMZ--ZIZXAXIAZZZ---ZZMMMMZ--M-M===+=M-MZ=A +=+""X"""""""""""""""""""
+CCC              C               C  C CC  CC       CC        C C   CC           CCC       CC C CCCCC C     CCC++ +CCCCCCCCCCCCCCCCCC
+                                                                                                              CC CBBBBBBBBBBBBBBBBBB
+                                                                                                                  HHHHHHHHHHHHHHHHHH
+                                                                                                                  XXXXXXXXXXXXXXXXXX
 +++-ZZXXIAA-XXI=ZM-===-=M-ZX=XZA=IIZM=M"=M+=M-Z--ZZZ-ZAXII=AZX-Z-ZZXZZXAZXZXA-ZZ-XZ----MMMM-M--=++=M=M-=+ X+---+=-""""""""""""""""""
+CCCC       C      CCCCCC C           C +C CC C CC   C         C C            C  C  CCCC    C CCCCCC C C    CC..CC.CCCCCCCCCCCCCCCCCC
+                                       C                                                                     ''  'BBBBBBBBBBBBBBBBBB
+                                                                                                             XX  XHHHHHHHHHHHHHHHHHH
+                                                                                                             CC  CXXXXXXXXXXXXXXXXXX
 +"+AZ=ZI=AIIIAIX-MXMZ=+===-XA=XXXZAXAXM===+=++=M=M===M-IIIX=XZZ-XXZMXZ=AZZ-XXZAZ-ZMZ-Z-=MM-MZMM=+=M=MMI+ 1++="-A=""""""""""-"""-"""-
+C+C  C          C    CCCCCC            CCCCCCCC C CCC C        C      C   C     C   C CC  C    CCC C      CCC+. CCCCCCCCCCC.CCC.CCC.
+ C                                                                                                           C'  BBBBBBBBBB'BBB'BBB'
+                                                                                                              X  HHHHHHHHHHXHHHXHHHX
+                                                                                                              C  XXXXXXXXXXCXXXCXXXC
 Z++ZA-Z=IAXAI=I-==MZZ=-=M--XIIIZM-Z-ZMMIAXM++===+=MM==+ZXIX+IXAZAA-M-Z-ZZ-ZZZX-Z--Z-M-M==M=MZ-M---=+MZIX=-+++"+Z-"""""""""""""""""""
+ CC  C         CCC   CCC CC      C C       CCCCCCC  CCC           C C C  C    C CC C C CC C  C CCCCC     CCCC+C .CCCCCCCCCCCCCCCCCCC
+                                                                                                             C  'BBBBBBBBBBBBBBBBBBB
+                                                                                                                XHHHHHHHHHHHHHHHHHHH
+                                                                                                                CXXXXXXXXXXXXXXXXXXX
 XM+-A-ZAXXXZAAZMM-M-AZZ-ZXXA=ZZZ-MM-M=MZZXXZ-MMMM==M+==--XAIAAIXXAX-M-Z-Z-XXZXXZZZ+X-===M==MMMMZIM+MZIZ-M+"-++XM-"""""""""""""""""""
+  CC C           C C   C        C  C C      C    CC CCCCC          C C C C          CCCC CC       C    C C+CCC  .CCCCCCCCCCCCCCCCCCC
+                                                                                                          C     'BBBBBBBBBBBBBBBBBBB
+                                                                                                                XHHHHHHHHHHHHHHHHHHH
+                                                                                                                CXXXXXXXXXXXXXXXXXXX
 AZMZ-Z-X-ZAZXZMXM-M=-IA-ZXAXXAZZZ----M--M==ZXXZ--M=+"++MM-ZXIAXXAZX-M=Z-X-ZZZXAXXA=XA-MZM==M=MZZZM--AXM==="++--+""""""""""""""""-"""
+    C C C        C CC  C         CCCC CC CC    CC CC+CC  C         C C C C           C   CC C     CC   CCC+ CCCCCCCCCCCCCCCCCCCC.CCC
+                                                    C                                                     C     BBBBBBBBBBBBBBBB'BBB
+                                                                                                                HHHHHHHHHHHHHHHHXHHH
+                                                                                                                XXXXXXXXXXXXXXXXCXXX
 ZZ-AXXXZ-ZXZ---MZZ-MMAIZZZ=+AI1--=Z1MAMZ=+=+=-AA-M=+""+MM--ZAA-ZAAZ---XMZ=ZZ-I=AIAZZ---ZZ==MMZ-ZZZAXXMM=M+"+-I--"""""""""""""-"--"""
+  C     C   CCC   C            CCC      CCCCCC  C CC++C  CC   C    CCC   C  C       CCC  CC   C        C C+ C ..CCCCCCCCCCCCC.C..+CC
+                                                    CC                                                    C   ''BBBBBBBBBBBBB'B''CBB
+                                                                                                              XXHHHHHHHHHHHHHXHXX HH
+                                                                                                              CCXXXXXXXXXXXXXCXCC XX
 MXM-AIAZXZZMMZM==--M-1AAA++-II1AA-MMM-X=-M=++Z XMM="+-=MM-Z-XXZXZXZMZZZ--ZZXA1=XXAXZ-M-=-=MMX--Z-ZX--M=M+"-+1M""""-"""""""""""""""""
+   C           CCCC C            C   C  C CCC     C+CCC  C C           CC           C C CC   CC C  CC C C+C   CCCC.CCCCCCCCCCCCCCCCC
+                                                   C                                                     C    BBBB'BBBBBBBBBBBBBBBBB
+                                                                                                              HHHHXHHHHHHHHHHHHHHHHH
+                                                                                                              XXXXCXXXXXXXXXXXXXXXXX
 -ZM-X==+IAZMMM--+MM-XAXZA=++XZAI=AZ---A1ZM===X+ZMM=+MZM=M---ZAXXXXA--Z---ZZI  =AAX--M-M-M-ZZAZM-MXZ==MMM""M=-"--"""""""""""""""-""-"
+C  C          CCC  C               CCC    CCC     CC   C CCC       CC CCC         CC C C C     C   CC   ++  C+..CCCCCCCCCCCCCCC.CC.C
+                                                                                                        CC   C''BBBBBBBBBBBBBBB'BB'B
+                                                                                                              XXHHHHHHHHHHHHHHHXHHXH
+                                                                                                              CCXXXXXXXXXXXXXXXCXXCX
 MM---XI-==Z-M=M-M--XZXXZ=1==X-ZAAAXZZXA---ZM=+-=MMM=M==M+=-Z-AIIIXIZZ--ZAI1 11ZZ=XM-MM=MZZ--XZM-ZXM+"=-+""=ZM""""-""""""""""""""""""
+  CCC      C C C CC          C         CCC  CCCC   C CC CCC C        CC            C  C   CC   C   C+CCC++C  CCCC.CCCCCCCCCCCCCCCCCC
+                                                                                                    C   CC   BBBB'BBBBBBBBBBBBBBBBBB
+                                                                                                             HHHHXHHHHHHHHHHHHHHHHHH
+                                                                                                             XXXXCXXXXXXXXXXXXXXXXXX
 =M--MZZ=A=-+===M--ZAXXZ-X=IAXXAX1XAZ-Z--M--=++M+++M--M=+M=+---I===AZXZ1     Z1XZI-===MMZMM=MMMMZI-=+++M+"+-=+"-""""-"""""""-""""""-"
+C CC      CCCCC CC     C            C CC CCCCC CCC CC CC CCCCC                   CCCC     C      CCCCC C+CCCCC.CCCC.CCCCCCC.CCCCCC.C
+                                                                                                        C    B'BBBB'BBBBBBB'BBBBBB'B
+                                                                                                             HXHHHHXHHHHHHHXHHHHHHXH
+                                                                                                             XCXXXXCXXXXXXXCXXXXXXCX
 MMM-ZM-XIIZMXXIAZZMZAXZXZ=IAIAXAXXXZZ-M===-M==+++====-Z-------ZX+=AXA1    1IAAXZX-=MMM-M==M=MM-AZ=M+"+="-====""""""""""""-""-"""-"""
+   C  C                              C CCCC CCCCCCCCCC CCCCCCC                   CC   C CC C  C  C C+CC+.CCCCCCCCCCCCCCCC.CC.CCC.CCC
+                                                                                                    C  C'    BBBBBBBBBBBB'BB'BBB'BBB
+                                                                                                        X    HHHHHHHHHHHHXHHXHHHXHHH
+                                                                                                        C    XXXXXXXXXXXXCXXCXXXCXXX
 M=+MZM-ZIAAA=AAAAZZAIAZA-XX=XZX-ZIZ-ZMMMMM+=++"++=++==--ZZA--MM-I=AX-    -A11ZXX--MZ--M=====MMZ-M+=+-"+""+"=-"-"-""-"""""""-"-""""""
+ CC   C                 C      C   C      CCCC+CCCCCCCCC   CC  C                CC  CC CCCCC   C CCC.+C++CCC.C.C.CC.CCCCCCC.C.CCCCCC
+                                              C                                                     'C CC B 'B'B'BB'BBBBBBB'B'BBBBBB
+                                                                                                    X     H XHXHXHHXHHHHHHHXHXHHHHHH
+                                                                                                    C     X CXCXCXXCXXXXXXXCXCXXXXXX
 -===---MA-ZXA--MXZXA1=AAZ--MMMX-IIZ--==MMM+=+=+"++==-MZ-ZZ-ZZZZXIAXZ+    -+1ZXZM=-ZZ--M++====Z-=++=+"-"+"------"""---"""""""""""""""
+CCCCCCC  C   CC          CC    C   CCCC   CCCCC+CCCCC  C  C                     CC  CC CCCCCC CCCCCC+.+C+......CCC...CCCCCCCCCCCCCCC
+                                               C                                                    C'C C''''''BBB'''BBBBBBBBBBBBBBB
+                                                                                                     X   XXXXXXHHHXXXHHHHHHHHHHHHHHH
+                                                                                                     C   CCCCCCXXXCCCXXXXXXXXXXXXXXX
 M=+MZAXMA-MM-M=M===XI11+1Z-===MX-AMMM===M-Z==++++++ZIA=XAAZZXAIIIIZMX   - 1=MIZ=AZ-MMZ==M===-==M=+++--+A+"-"""""-"---"""--"""----"""
+ CC      C  C C CCC       CCCC  C    CCC C CCCCCCCC                               C   CC CCCCCC CCCC..C C+.CCCCC.+...CCC..CCC....CCC
+                                                                                                    ''   C'BBBBB'C'''BBB''BBB''''BBB
+                                                                                                    XX    XHHHHHX XXXHHHXXHHHXXXXHHH
+                                                                                                    CC    CXXXXXC CCCXXXCCXXXCCCCXXX
 -MZZAZAXA-M===+M==M-I+ 1=-===-MZZ=MM-=+==M==+++=M-MZAIII=IAXXAZXAAXMM=I==-=AXXMMZMM--++++++=M=MM++++"=AZ"""""----"----"""""""""-"""-
+C        C CCCC CC C     CCCCC   C  CCCCC CCCCCC C                                 CCCCCCCCC C  CCCC+C  +CCCC....C....CCCCCCCCC.CCC.
+                                                                                                    C   CBBBB''''B''''BBBBBBBBB'BBB'
+                                                                                                         HHHHXXXXHXXXXHHHHHHHHHXHHHX
+                                                                                                         XXXXCCCCXCCCCXXXXXXXXXCXXXC
 Z-+XIXI=IZM=+=+=ZMMZI+  1Z=MM-MXZMMMM=+==MMM-=+MMMZZXIAIAXZZZZZXIIA-XXIII+Z-IM-ZZ--==+=++=MM===++=++"MX=-"--"-"--"--""-"-""""-"-""""
+ C         CCCCC          C  C       CCCC   CCC                    C       C  C  CCCCCCCCC  CCCCCCCC+  C.C..C.C..C..CC.C.CCCC.C.CCCC
+                                                                                                    C   'B''B'B''B''BB'B'BBBB'B'BBBB
+                                                                                                        XHXXHXHXXHXXHHXHXHHHHXHXHHHH
+                                                                                                        CXCCXCXCCXCCXXCXCXXXXCXCXXXX
 ZZ=ZAAXIIA=+++"+M=+MX+1-ZM+MMMM--ZM==M+==MZZZZ==M--XZAA=AIZ----ZAIAI++1 +A-MX-Z--=-++"+==-=M-M="+++++ZM++""-"""--"""---"--""-"-"""-"
+          CCCC+C CC       C    CC  CC CCC     CC CC        CCCC           C  C CCCCCC+CCCCC C C+CCCCC  CCCC.CCC..CCC...C..CC.C.CCC.C
+              C                                                                      C         C         BB'BBB''BBB'''B''BB'B'BBB'B
+                                                                                                         HHXHHHXXHHHXXXHXXHHXHXHHHXH
+                                                                                                         XXCXXXCCXXXCCCXCCXXCXCXXXCX
 =MZMXA--ZA-=+"""+=+=A11X-=+MMMM=MMM-M++++----Z-Z-Z-XAIA=XAIAIZ-ZXIAI-  +AZII-ZMMM=M++="+MM++--=+"+++==""M-"""------"""--""""""""""""
+C     CC  CCC+++CCCC    CCC    C   C CCCCCCCC C C C           C             C    C CCC+C  CCCCCC+CCCCC++ .CCC......CCC..CCCCC+CCCCCC
+             CCC                                                                      C         C     CC 'BBB''''''BBB''BBBBBCBBBBBB
+                                                                                                         XHHHXXXXXXHHHXXHHHHH HHHHHH
+                                                                                                         CXXXCCCCCCXXXCCXXXXX XXXXXX
 =-ZZZ-==-ZZ=+"""+M==MAZ-M==MM===MMMXZ=++=---ZZ=MM-ZAA==IAIIXZZ-MXAII   AAAMX-ZM=M=ZM+++==++=MMM+"++=+-=-+-"""""""""---"-"---"-""""""
+CC   CCCC  CC+++C CC   C CC  CCC     CCCCCCC  C  C            C             C  C C  CCCCCCCC   C+CCCCCC.C.CCCCCCCCC...C.C...C.CCCCCC
+             CCC                                                                                C      ' 'BBBBBBBBB'''B'B'''B'BBBBBB
+                                                                                                       X XHHHHHHHHHXXXHXHXXXHXHHHHHH
+                                                                                                       C CXXXXXXXXXCCCXCXCCCXCXXXXXX
 M-ZX-=+=-MM=++++=====-XMMMMMM=+MMM=--M===--M-ZMMM-ZZAIII=AXIXZZ--XII- +IAX-M=M+=M-I--=M=+++M=+M+++++-X""""--"""---"""-""---"""""""""
+ C  CCCCC  CCCCCCCCCCC       CC   CCC CCCCC C    C             CC         C C CC C CCC CCCC CC CCCCCC ++CC..CCC...CCC.CC...CCCCCCCCC
+                                                                                                      CCBB''BBB'''BBB'BB'''BBBBBBBBB
+                                                                                                        HHXXHHHXXXHHHXHHXXXHHHHHHHHH
+                                                                                                        XXCCXXXCCCXXXCXXCCCXXXXXXXXX
 =ZZZ-=M=-M=M=====+M==----=Z-M=+=MM=====MMMMM-ZZ-M--ZAXA1AXXA---XZAAZA + AMZZ+M+MMA-ZMM==++==M+M+M=++----"-""""-"-"""--""""-""""""-""
+C   CC CC C CCCCCC CCCCCCC C CCC  CCCCC     C  C CC         CCC             C C   C   CCCCCC C C CCCCC..C.CCCC.C.CCC..C+CC.CCCCCC.CC
+                                                                                                      ''B'BBBB'B'BBB''BCBB'BBBBBB'BB
+                                                                                                      XXHXHHHHXHXHHHXXH HHXHHHHHHXHH
+                                                                                                      CCXCXXXXCXCXXXCCX XXCXXXXXXCXX
 MZZ-==XMMM-Z-=+======ZM-ZMZM=+++===-==M=MM--ZZM==ZZZ+IX+XZAM=M-ZXZZMX111ZXAZ+=IXXXXMM=+=+++==+=-MM=+Z++----"""-------+-""----""-"""-
+   CCC    C CCCCCCCCC  C    CCCCCCCCCC C  CC   CC           C C             C        CCCCCCCCCCC  CC CC....CCC.......C.CC....CC.CCC.
+                                                                                                       ''''BBB''''''' 'BB''''BB'BBB'
+                                                                                                       XXXXHHHXXXXXXX XHHXXXXHHXHHHX
+                                                                                                       CCCCXXXCCCCCCC CXXCCCCXXCXXXC
 M--M==-=+MZ-==+==++M=--M-Z-==+++=M--M---MZM-ZMMMZXX= +IXXXZ-++-X---ZXIXIAZM+=-ZX--=M=++++"++-M=M="++M---"--""""-"-"--""-"""""""--"""
+ CC CCCCC  CCCCCCCC CCC C CCCCCCC CC CCC   C               CCCC CCC        CCC  CCC CCCCC+CCC C C+CC ...C..CCCC.C.C..CC.CCCCCCC..CCC
+                                                                                         C       C   '''B''BBBB'B'B''BB'BBBBBBB''BBB
+                                                                                                     XXXHXXHHHHXHXHXXHHXHHHHHHHXXHHH
+                                                                                                     CCCXCCXXXXCXCXCCXXCXXXXXXXCCXXX
 ==M+++-M=MA-=++=M++==MM==-Z===+=M-ZZM--M-Z--MMMMM-ZII=IZ--AM==Z-M-IXZ-ZXX-MZZ=M-XZM=+++=+"+=-+=M=++"""-""""-"""---"---"""""""""-""""
+CC CCCC C  CCCCC CCCC  CCC CCCCC C   CC C CC     C      CC  CC C C   C   C   C C   CCCCCC+CCCCC CCC++C.CCCC.CCC...C...CCCCCCCCC.CCCC
+                                                                                         C         CCB'BBBB'BBB'''B'''BBBBBBBBB'BBBB
+                                                                                                     HXHHHHXHHHXXXHXXXHHHHHHHHHXHHHH
+                                                                                                     XCXXXXCXXXCCCXCCCXXXXXXXXXCXXXX
 +++"++--ZZAZM====++=======ZMMMM-M-Z---MMXZMM-M=MZ-M-XZX-MAX=--ZZZZ+AM"--MM-A1MZXZ-M=+++=++==+"+=+"---------"-"-"-"""-""-"""-"""""-""
+CCC+CCCC     CCCCCCCCCCCCC     C C CCC      C C  C C   C   CCC       +CC  C      C CCCCCCCCCC+CCC+.........C.C.C.CCC.CC.CCC.CCCCC.CC
+   C                                                                 C                       C   C'''''''''B'B'B'BBB'BB'BBB'BBBBB'BB
+                                                                                                  XXXXXXXXXHXHXHXHHHXHHXHHHXHHHHHXHH
+                                                                                                  CCCCCCCCCXCXCXCXXXCXXCXXXCXXXXXCXX
 +++"++=MZXXIZ++-M===+=ZMM=-=ZM--MMZ-Z--X-MM--=-MZZMZ-M-ZX--ZZXIAAAXA+"="++=MIAAZ-==+++++===++++=+--"---""""-"-----""---"""-"-""""""-
+CCC+CCC      CCC CCCCC   CCC  CC   C CC C  CCCC       C  CC         C+C+CCC     CCCCCCCCCCCCCCCCC..C...CCCC.C.....CC...CCC.C.CCCCCC.
+   C                                                                 C C                         ''B'''BBBB'B'''''BB'''BBB'B'BBBBBB'
+                                                                                                 XXHXXXHHHHXHXXXXXHHXXXHHHXHXHHHHHHX
+                                                                                                 CCXCCCXXXXCXCCCCCXXCCCXXXCXCXXXXXXC
 ++++==MMMZZZAM+-==+=M---M=MMZZ---X=XZAXMX-M==+M-=M- -=--MZ-AI==XXZXAZ=++"+=X=I+ZM=++=++=++++==="--""-""-"-"---"-"""-"""-""-"""""""""
+CCCCCC        CCCCCC CCC C    CCC        C CCC CC C CCCC  C          CCC+CC      CCCCCCCCCCCCCC+..CC.CC.C.C...C.CCC.CCC.CC.CCCCCCCCC
+                                                                        C                      C''BB'BB'B'B'''B'BBB'BBB'BB'BBBBBBBBB
+                                                                                                XXHHXHHXHXHXXXHXHHHXHHHXHHXHHHHHHHHH
+                                                                                                CCXXCXXCXCXCCCXCXXXCXXXCXXCXXXXXXXXX
 +-==M===MMMMAM+===MMMMMM=M-MZZZZ-A-IXA-MMM=====ZMM=IMMXZZXAA=+X-AXAIZ+--"=I=AA-====++++=+"+++"-"-""----""---"------"""-"""-"""-"""--
+CCCC CCC      CCCC      C C     C     C   CCCCC   C            C     CCC+C    CCCCCCCCCCC+CCC+.+.CC....CC...C......CCC.CCC.CCC.CCC..
+                                                                        C                C   C'C'BB''''BB'''B''''''BBB'BBB'BBB'BBB''
+                                                                                              X XHHXXXXHHXXXHXXXXXXHHHXHHHXHHHXHHHXX
+                                                                                              C CXXCCCCXXCCCXCCCCCCXXXCXXXCXXXCXXXCC
 =MM===M=--M=-M==Z====MMMZMZXZ---MZIXZZ-=MM====-Z===MMZAZ-XXXIX-ZAXXXXMZMMZX=X-M-=-==+==+="-"""M+-"-----"---"""---"""""""""-""""-"""-
+C  CCC CCC CC CC CCCC        CCC      CC  CCCCC CCC     C     C            C C CCCCCCCCCC+.+++ C.C.....C...CCC...CCCCCCCCC.CCCC.CCC.
+                                                                                         C'CCC  'B'''''B'''BBB'''BBBBBBBBB'BBBB'BBB'
+                                                                                          X     XHXXXXXHXXXHHHXXXHHHHHHHHHXHHHHXHHHX
+                                                                                          C     CXCCCCCXCCCXXXCCCXXXXXXXXXCXXXXCXXXC
 ==----MMA+-=--ZZX--==MM--=XAX-MMZ-IZ=Z-M+=M=MM=-M=--ZZXM-Z-ZZAX-AZZ-AX-=IM=-ZM=-Z-=MM==="++"--X=-"-"-""--"-"-""---"""-"-""""-""-"---
+CCCCCC    CCCC   CCCC  CCC   C      C C CC C  CC CCC    C C    C   C  CC  CC   C CC  CCC+CC+.  C.C.C.CC..C.C.CC...CCC.C.CCCC.CC.C...
+                                                                                        C  C'   'B'B'BB''B'B'BB'''BBB'B'BBBB'BB'B'''
+                                                                                            X   XHXHXHHXXHXHXHHXXXHHHXHXHHHHXHHXHXXX
+                                                                                            C   CXCXCXXCCXCXCXXCCCXXXCXCXXXXCXXCXCCC
 +MM--M=Z1+XM-X-ZX-ZM=MM-M=XZZZ-ZXXXMM=M-=++==M=M---Z-ZZ--ZZZZAXZ-M-MZX+=-MM-MZXZ---=++++"--"Z=--""---"---"-----""-------"""""""--"""
+C  CC C     C C  C  C  C C    C      C CCCCCC C CCC C  CC       C C   CCC  C    CCCCCCCC+..+  C.CC...C...C.....CC.......CCCCCCC..CCC
+                                                                                        C''C   'BB'''B'''B'''''BB'''''''BBBBBBB''BBB
+                                                                                         XX    XHHXXXHXXXHXXXXXHHXXXXXXXHHHHHHHXXHHH
+                                                                                         CC    CXXCCCXCCCXCCCCCXXCCCCCCCXXXXXXXCCXXX
 +MM---=---M=MAX-Z-ZZMM-M--XZAXZ-MZ-M-=+-M+=M=M----MAZZX--ZXXXAI-=M=M==MZ--MM-----MM+"""""""MI-+"""""---"-"---"-"-""-----"""""""----"
+C  CCCCCCC C   C C    C CC     C  C CCCC CC C CCCC     CC      CC C CC  CC  CCCCC  C+++++++  CCCCCCC...C.C...C.C.CC.....CCCCCCC....C
+                                                                                    CCCCCCC    BBBBB'''B'B'''B'B'BB'''''BBBBBBB''''B
+                                                                                               HHHHHXXXHXHXXXHXHXHHXXXXXHHHHHHHXXXXH
+                                                                                               XXXXXCCCXCXCCCXCXCXXCCCCCXXXXXXXCCCCX
 =MX--MXM=====------Z--ZMZZZZX-MM-XIMZ++M-MZMM-Z-X---ZZZZZXXXXXX-==+-MZZZ-==MZMMMM=+"+++"-=MZZ+"""--"------""---"""""-"-""-"-"""----"
+C  CC   CCCCCCCCCCC CC       C  C    CC C    C C CCC           CCCCC    CCC      CC+CCC+.C   C+CC..C......CC...CCCCC.C.CC.C.CCC....C
+                                                                                   C   C'     CBB''B''''''BB'''BBBBB'B'BB'B'BBB''''B
+                                                                                        X      HHXXHXXXXXXHHXXXHHHHHXHXHHXHXHHHXXXXH
+                                                                                        C      XXCCXCCCCCCXXCCCXXXXXCXCXXCXCXXXCCCCX
 =MMMM-IM==++=M-MX-M----XZ-M-MMZMX+=--==--II-MXZZZZZ-ZZX-XA=XZZ--MMM-MZ+-MMMZM-M===+=M+++==MM+-"""---"-------"--""-"--"-"-""""--""""-
+C    C  CCCCC C  C CCCC  C C       CCCCCC  C       C   C      CC   C   C     C CCCCC CCCCC  C.CCC...C.......C..CC.C..C.C.CCCC..CCCC.
+                                                                                             'BBB'''B'''''''B''BB'B''B'B'BBBB''BBBB'
+                                                                                             XHHHXXXHXXXXXXXHXXHHXHXXHXHXHHHHXXHHHHX
+                                                                                             CXXXCCCXCCCCCCCXCCXXCXCCXCXCXXXXCCXXXXC
 ==M-ZZXZM-M==ZZMAX-Z-ZZMZMMM--Z-AIZMMMZAZ=-ZZZXXXXZZZZZZZXAZX-M--M=MZA-===--Z-M=-M=X-=++=MM=+""-"--"-""------""---"---"-""""--""""""
+CC C     C CC     C C       CC C          C                  C CC C   CCCCCC C CC C CCCCC  CC+C.C..C.CC......CC...C...C.CCCC..CCCCCC
+                                                                                             CB'B''B'BB''''''BB'''B'''B'BBBB''BBBBBB
+                                                                                              HXHXXHXHHXXXXXXHHXXXHXXXHXHHHHXXHHHHHH
+                                                                                              XCXCCXCXXCCCCCCXXCCCXCCCXCXXXXCCXXXXXX
 M=M=----=-ZMMXX-ZZ--MZ-M--MM-Z---Z-MMMMZXXZ-ZZZZZZXZZZZZZZZ---MZ----ZZ+"=+=-ZXZ-M=-===+++=++-"--"-----"-""---"---""---"-"--"""""--""
+ C CCCCCCC     C  CC  C CC  C CCC C        C               CCC  CCCC  C+CCCC   C CC CCCCCCCC.C..C.....C.CC...C...CC...C.C..CCCCC..CC
+                                                                       C                    'B''B'''''B'BB'''B'''BB'''B'B''BBBBB''BB
+                                                                                            XHXXHXXXXXHXHHXXXHXXXHHXXXHXHXXHHHHHXXHH
+                                                                                            CXCCXCCCCCXCXXCCCXCCCXXCCCXCXCCXXXXXCCXX
 MMM--MM-M-XZ-ZZ-ZZ------M--M-------MMM=MX-Z-ZXZM-Z--Z-Z------M-Z-ZZM-M=+===MM-Z-M=ZX=+++++"""---""""------"------"--""-""---""""""""
+   CC  C C  C  C  CCCCCC CC CCCCCCC   C  C C    C CC C CCCCCC C C   C CCCCC  C C C  CCCCCC++C...CCCC......C......C..CC.CC...CCCCCCCC
+                                                                                          CCB'''BBBB''''''B''''''B''BB'BB'''BBBBBBBB
+                                                                                            HXXXHHHHXXXXXXHXXXXXXHXXHHXHHXXXHHHHHHHH
+                                                                                            XCCCXXXXCCCCCCXCCCCCCXCCXXCXXCCCXXXXXXXX
 Z-MM==MMMM-Z-Z-ZXXXZZXXXZ-Z-M--Z------M-ZZ--MZM-M-=ZZM-ZZMMMMMZZZ-=M=MM=-===MM==+=--M+++""""--"-----"-------"---"----""-"""""""-"-""
+ C  CC    C C C          C C CC CCCCCC C  CC   C CC   C          CC C  CCCCC  CCCCCC CCC+++C..C.....+.......C...C....CC.CCCCCCC.C.CC
+                                                                                        CCCB''B'''''C'''''''B'''B''''BB'BBBBBBB'B'BB
+                                                                                           HXXHXXXXX XXXXXXXHXXXHXXXXHHXHHHHHHHXHXHH
+                                                                                           XCCXCCCCC CCCCCCCXCCCXCCCCXXCXXXXXXXCXCXX
 ===M===+==-==M=MMMMM-ZXX-ZZ--ZZ-----M=-MMZM==M===MM-M-ZZZMMMMZXZM====++========+M-ZM=+++""----"""---------"-------""--""---""-"""-""
+CCC CCCCCCCCC C     C   C  CC  CCCCC CC    CC CCC  C C           CCCCCCCCCCCCCCC C  CCCC++....CCC.........C.......CC..CC...CC.CCC.CC
+                                                                                        CC''''BBB'''''''''B'''''''BB''BB'''BB'BBB'BB
+                                                                                          XXXXHHHXXXXXXXXXHXXXXXXXHHXXHHXXXHHXHHHXHH
+                                                                                          CCCCXXXCCCCCCCCCXCCCCCCCXXCCXXCCCXXCXXXCXX
 =M==+++++=M=+==MMMMM-ZAZXXZ-Z-X-ZMMM==MMM-MM+MM=M-MM--ZZ-ZMMMAX-M====++==-=M==M+M-M==+++-----"--"-"-"------""-----"-------"-""""""--
+C CCCCCCCC CCCC     C      C C C    CC   C  C  C C  CC  C      C CCCCCCCCCC CC C C CCCCC.....C..C.C.C......CC.....C.......C.CCCCCC..
+                                                                                        '''''B''B'B'B''''''BB'''''B'''''''B'BBBBBB''
+                                                                                        XXXXXHXXHXHXHXXXXXXHHXXXXXHXXXXXXXHXHHHHHHXX
+                                                                                        CCCCCXCCXCXCXCCCCCCXXCCCCCXCCCCCCCXCXXXXXXCC
 +++""+"+++=-MM--MMMM---X1Z--ZZ-MM====+=M-M=M=MM=MMM=Z--Z----MXZZMM==++==M-MMMMM-AM+++""------""--""--------"--"---"----"""-""""-"--"
+CCC++C+CCCCC  CC    CCC   CC  C  CCCCCC C C C  C   C CC CCCC      CCCCCC C     C  CCC++......CC..CC........C..C...C....CCC.CCCC.C..C
+   CC C                                                                              CC''''''BB''BB''''''''B''B'''B''''BBB'BBBB'B''B
+                                                                                       XXXXXXHHXXHHXXXXXXXXHXXHXXXHXXXXHHHXHHHHXHXXH
+                                                                                       CCCCCCXXCCXXCCCCCCCCXCCXCCCXCCCCXXXCXXXXCXCCX
 ==+"+++"+=--------MMM-ZA=Z--Z-M-=+M=+==+M+=-MM=M=---XZ-MM--Z-ZZ-=MM=+MMM=-M---XZ-=+"+""-"-----"-----"-------""---"----"---"--"--"""-
+CCC+CCC+CCCCCCCCCC   C    CC C CCC CCCC  CCC  C CCCC  C  CC C  CC  CC   CC CCC  CCC+C++.C.....C.....C.......CC...C....C...C..C..CCC.
+   C   C                                                                           C CC'B'''''B'''''B'''''''BB'''B''''B'''B''B''BBB'
+                                                                                       XHXXXXXHXXXXXHXXXXXXXHHXXXHXXXXHXXXHXXHXXHHHX
+                                                                                       CXCCCCCXCCCCCXCCCCCCCXXCCCXCCCCXCCCXCCXCCXXXC
 ++M=M=+=M----MZZZ--Z-ZZZZZZAXZZZ===++==-=+=--==M--MZXZ-MM-Z--Z--MMM=M=MMMMM-ZZZ-M"+"--""+-------------"-----------"-----""-"""""-"""
+CC C CCC CCCC    CC C           CCCCCCCCCCCCCCC CC    C  C CC CC   C C     C   C +C+..CCC.............C...........C.....CC.CCCCC.CCC
+                                                                                 C C''BB '''''''''''''B'''''''''''B'''''BB'BBBBB'BBB
+                                                                                    XXHH XXXXXXXXXXXXXHXXXXXXXXXXXHXXXXXHHXHHHHHXHHH
+                                                                                    CCXX CCCCCCCCCCCCCXCCCCCCCCCCCXCCCCCXXCXXXXXCXXX
 ++=-Z-MM=---Z-ZZZ-ZXZ--Z-ZZZZZZM=+++++---AXM===M---XXZM-ZZ--------M=M=M=M=MZZZ-MM++"-""+-------------"------------"---"----"-""""-""
+CCCC C  CCCC C   C   CC C       CCCCCCCCC   CCC CCC    C  CCCCCCCC C C C C    C  CC+.CCC.............C............C...C....C.CCCC.CC
+                                                                                   C'BB '''''''''''''B''''''''''''B'''B''''B'BBBB'BB
+                                                                                    XHH XXXXXXXXXXXXXHXXXXXXXXXXXXHXXXHXXXXHXHHHHXHH
+                                                                                    CXX CCCCCCCCCCCCCXCCCCCCCCCCCCXCCCXCCCCXCXXXXCXX
 ++=--MMMMZZZZXZX-ZZX-ZZXX-M--X=+++++++--+=Z==M---ZZIX-M---M-ZZ-X-MM---=MMM--ZMM=++"--"""--""---""-"----"-"----"---"----"----"-""""""
+CCCCC           C   C    C CC CCCCCCCCCC   CC CCC    C CCC C  C C  CCCC   CC   CCC+..CC+..CC...CC.C....C.C....C...C....C....C.CCCCCC
+                                                                                  C''BBC''BB'''BB'B''''B'B''''B'''B''''B''''B'BBBBBB
+                                                                                   XXHH XXHHXXXHHXHXXXXHXHXXXXHXXXHXXXXHXXXXHXHHHHHH
+                                                                                   CCXX CCXXCCCXXCXCCCCXCXCCCCXCCCXCCCCXCCCCXCXXXXXX
 ++=M==MMZZZZZXZZZ-Z-ZZXZZMMM-==+++==++-ZIX+=+MAXZZXIX-M--M-ZZM-XM=+M-MZ----MM===++"--""-"--------------------"------"----""-----"-"-
+CCC CC           C C        CCCCCCCCCCC   CCC        C CC C   C  CC C  CCCC  CCCCC+..CC.C....................+......C....CC.....C.C.
+                                                                                  C''BB'B''''''''''''''''''''C''''''B''''BB'''''B'B'
+                                                                                   XXHHXHXXXXXXXXXXXXXXXXXXXX XXXXXXHXXXXHHXXXXXHXHX
+                                                                                   CCXXCXCCCCCCCCCCCCCCCCCCCC CCCCCCXCCCCXXCCCCCXCXC
 =X=M===MMM--MZ----Z-A-Z-ZMMM==+=+++==XA=Z===-AIIAZAIZ---M-ZX-ZZ-=====ZZ-M-ZZ=++++"---"-----"-"--------------"-----""------"-""-"-"""
+C C CCC   CC  CCCC C C C    CCCCCCCCC    CCCC        CCC C  C  CCCCCC  C C  CCCCC+...C.....C.C..............C.....CC......+.CC.C.CCC
+                                                                                 C'''B'''''B'B''''''''''''''B'''''BB''''''C'BB'B'BBB
+                                                                                  XXXHXXXXXHXHXXXXXXXXXXXXXXHXXXXXHHXXXXXX XHHXHXHHH
+                                                                                  CCCXCCCCCXCXCCCCCCCCCCCCCCXCCCCCXXCCCCCC CXXCXCXXX
 =-=+===M-MMMM-M--M------===M==+++=+=-===ZMMZ=====AIA------ZZ-X-M==MM--Z---ZM++++"-"--------------"----------"---------------""""---"
+CCCCCCC C    C CC CCCCCCCCC CCCCCCCCC               CCCCCC  C C CC  CC CCC  CCCC+.C..............C..........C...............CCCC...C
+                                                                                C'B''''''''''''''B''''''''''B'''''''''''''''BBBB'''B
+                                                                                 XHXXXXXXXXXXXXXXHXXXXXXXXXXHXXXXXXXXXXXXXXXHHHHXXXH
+                                                                                 CXCCCCCCCCCCCCCCXCCCCCCCCCCXCCCCCCCCCCCCCCCXXXXCCCX
 ++=====MMM---MM-Z---MZ-M=++MMM=++MMIX-=+A=I==AII=I=X-M----XZZMMMMMM-ZZ-ZZX-+=+"""""""-------"----"---"-------"-----------"--""-""-""
+CCCCCCC   CCC  C CCC  C CCC   CCC    C              C CCCC         C  C   CCCC+++CCCC.......C....C...C.......C...........C..CC.CC.CC
+                                                                              CCCBBBB'''''''B''''B'''B'''''''B'''''''''''B''BB'BB'BB
+                                                                                 HHHHXXXXXXXHXXXXHXXXHXXXXXXXHXXXXXXXXXXXHXXHHXHHXHH
+                                                                                 XXXXCCCCCCCXCCCCXCCCXCCCCCCCXCCCCCCCCCCCXCCXXCXXCXX
 ==M+=M--M-ZXMMZZAZ=M=M==M+=====+=M1==Z-Z ++AI XXI11ZM--M-ZAX-MMMM-MZXZ---M=="+"---""---------"--------------------"----"--""""""-"""
+CC CC CC C        C C CC CCCCCCCC   C C              CC C   C    C    CCC CC+C+...CC.........C....................C....C..CCCCCC.CCC
+                                                                            C C'''BB'''''''''B''''''''''''''''''''B''''B''BBBBBB'BBB
+                                                                               XXXHHXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXHXXXXHXXHHHHHHXHHH
+                                                                               CCCXXCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCXCCCCXCCXXXXXXCXXX
 ==-==M-ZMM-MMMMMMM====MM=M==+=M==-M=+=+-=IIAIXZ++1--MM--ZIZ--MM==MZIIM-MM++++""---"---"-----"-----------------"""---"-----""-"-""--"
+CCCCC C   C       CCCC  C CCCC CCC CCCCC           C  CC   CC  CC     C  CCCC++...C...C.....C.................+CC...C.....CC.C.CC..C
+                                                                             CC'''B'''B'''''B'''''''''''''''''CBB'''B'''''BB'B'BB''B
+                                                                               XXXHXXXHXXXXXHXXXXXXXXXXXXXXXXX HHXXXHXXXXXHHXHXHHXXH
+                                                                               CCCXCCCXCCCCCXCCCCCCCCCCCCCCCCC XXCCCXCCCCCXXCXCXXCCX
 MM-=++===MM==M====+=+=MMM===MM=+M-M--==IZZZAZM-A=++M=--ZZX-MMMM==MZX-MM==+=+"+--------------------------------------"-""-"-""--""-""
+  CCCCCCC  CC CCCCCCCC   CCC  CC C CCCC       C     CCC   C    CC   C  CCCCC+C......................................C.CC.C.CC..CC.CC
+                                                                            C ''''''''''''''''''''''''''''''''''''''B'BB'B'BB''BB'BB
+                                                                              XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHHXHXHHXXHHXHH
+                                                                              CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXXCXCXXCCXXCXX
 M==++=++===++MM+==+=M-==M==MM++MXXZAMM=ZM=M-MZAII+I=M--ZXZMMMM===M-Z-=+M++++"---""-----------------------------"----"""--"-"""-"""""
+ CCCCCCCCCCCC  CCCCC CCC CC  CC       C  C C       C CC       CCC C CCC CCCC+...C+.............................C....CCC..C.CCC.CCCCC
+                                                                            C'''BC'''''''''''''''''''''''''''''B''''BBB''B'BBB'BBBBB
+                                                                             XXXH XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHHHXXHXHHHXHHHHH
+                                                                             CCCX CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXXXCCXCXXXCXXXXX
 =+-=M++++++=++MMM+==-ZMM=++-="- I==IZ=-X"-ZZA+1=I1++=--=MM-M=M==MM-M=+++="""--""---"--"---------"-----"------------"-"-""""""""-"-"-
+CCCC CCCCCCCCC   CCCC   CCCCC+C      CC +C        CCCCCC  C C CC  C CCCCC+++..+C...+..+.........C.....+............C.C.CCCCCCCC.C.C.
+                             C          C                                CCC''CB'''C''C'''''''''B'''''C''''''''''''B'B'BBBBBBBB'B'B'
+                                                                            XX HXXX XX XXXXXXXXXHXXXXX XXXXXXXXXXXXHXHXHHHHHHHHXHXHX
+                                                                            CC XCCC CC CCCCCCCCCXCCCCC CCCCCCCCCCCCXCXCXXXXXXXXCXCXC
 =+M=+"++++++=MMMMMM-MMMM=+++"==A=- AM=AZZMZA=+=+=M++++====M-=MM-MZZM=+=+=++---"----"--------"""---"--------------"-------"-"""----""
+CC CC+CCCCCCC      C    CCCC+CC      C            CCCCCCCC CC  C    CCCCCCC...C....C........CCC...C..............C.......C.CCC....CC
+     C                      C                                              '''B''''B''''''''BBB'''B''''''''''''''B'''''''B'BBB''''BB
+                                                                           XXXHXXXXHXXXXXXXXHHHXXXHXXXXXXXXXXXXXXHXXXXXXXHXHHHXXXXHH
+                                                                           CCCXCCCCXCCCCCCCCXXXCCCXCCCCCCCCCCCCCCXCCCCCCCXCXXXCCCCXX
 +++++++"+++MZ-MMM=MZMMM=+"""+==A+-+AZZXXZZ===+=IX+++++=MM---M----ZZ==+==++"--"-"------------------------------------"----"""-""-""""
+CCCCCCC+CCC  C   C     CC+++CCC                  CCCCCC  CCC CCCC  CCCCCCC+..C.+....................................C....CCC.CC.CCCC
+       C                 CCC                                              C''B'C''''''''''''''''''''''''''''''''''''B''''BBB'BB'BBBB
+                                                                           XXHX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHHHXHHXHHHH
+                                                                           CCXC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXXXCXXCXXXX
 ""+++=M+===ZX-M-M==Z===+"""++=ZXIX-=IAXZAIIII+IZX+"+=MMM---Z--ZXXZ==MM=++"-""---------------"--"--"-----------------------"-"-"--"-"
+++CCCC CCCC  C C CC CCCC+++CCC    C              C+CC   CCC CC    CC  CCC+.CC...............C..C..C.......................C.C.C..C.C
+CC                      CCC                       C                      C'BB'''''''''''''''B''B''B'''''''''''''''''''''''B'B'B''B'B
+                                                                          XHHXXXXXXXXXXXXXXXHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXHXHXHXXHXH
+                                                                          CXXCCCCCCCCCCCCCCCXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCXCXCXCCXCX
 ""+"+==+===MZ=+M===+"""--""==ZZ-==ZIAXZXA =+-IAAM++=MXZ-=MZ--ZAII=M-M=+++---""----------------"---------"---------"-----"----"""""-"
+++C+CCCCCCC  CC CCCC+++..++CC  CCC               CCC   CC  CC    C C CCCC...C+................+.........C.........C.....C....CCCCC.C
+CC C                CCC''CC                                              '''BC''''''''''''''''C'''''''''B'''''''''B'''''B''''BBBBB'B
+                       XX                                                XXXH XXXXXXXXXXXXXXXX XXXXXXXXXHXXXXXXXXXHXXXXXHXXXXHHHHHXH
+                       CC                                                CCCX CCCCCCCCCCCCCCCC CCCCCCCCCXCCCCCCCCCXCCCCCXCCCCXXXXXCX
 """"+"++===+"+===M""++""==M-XI=-+=ZZZ-XXXZA=++==="+=--M-M-M--XZZMM-M=+"+---""-----"------------"-"-------------"--"""-""-"-""---""-"
+++++C+CCCCCC+CCCC ++CC++CC C   CCC   C         CC+CCCC C C CC     C CC+C...CC.....C............C.C.............C..CCC.CC.C.CC...CC.C
+CCCC C      C     CC  CC                         C                    C '''BB'''''B''''''''''''B'B'''''''''''''B''BBB'BB'B'BB'''BB'B
+                                                                        XXXHHXXXXXHXXXXXXXXXXXXHXHXXXXXXXXXXXXXHXXHHHXHHXHXHHXXXHHXH
+                                                                        CCCXXCCCCCXCCCCCCCCCCCCXCXCCCCCCCCCCCCCXCCXXXCXXCXCXXCCCXXCX
 """""""+++""++""+++MMM=+MZZAA+IZ=MZIZXZA=-XI-1I-+"+MMMM-MMMZZ----ZZ=++++-=""------"---------"--------------------"----""-"---""--""-
++++++++CCC++CC++CCC   CC        C        C     CC+C    C     CCCC  CCCCC.CCC......C.........C....................C....CC.C...C+..CC.
+CCCCCCC   CC  CC                                 C                      ' BB''''''B'''''''''B''''''''''''''''''''B''''BB'B'''BC''BB'
+                                                                        X HHXXXXXXHXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXHXXXXHHXHXXXH XXHHX
+                                                                        C XXCCCCCCXCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCXCCCCXXCXCCCX CCXXC
 """""""++""""++"+=--X--=AAXAI+IM=-ZX--XX-ZZI=IM=++=MM==M-M-ZXZ--MZM="+-"+-"------------------------"-----"-"-"----"-""---"----""-"""
++++++++CC++++CC+CCCC CCC        CC  CC         CCCC  CC C C   CC   C+C.CC.C........................C.....C.C.C....C.CC...C....CC.CCC
+CCCCCCC  CCCC  C                                                    C 'B 'B''''''''''''''''''''''''B'''''B'B'B''''B'BB'''B''''BB'BBB
+                                                                      XH XHXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXHXHXHXXXXHXHHXXXHXXXXHHXHHH
+                                                                      CX CXCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCXCXCXCCCCXCXXCCCXCCCCXXCXXX
 "++""""+""""+++"M=--IZ-Z-AAIIIX==ZXZZZ-+=MX==A"-+=M=Z==M=M-ZZ--=M=M"+-"""#----"---------------"------------------"--"-"-"-"---"""-""
++CC++++C++++CCC+ CCC  C        CC     C       +.CC C CC C C  CCC C +C.CCCX....+...............C..................C..C.C.C.C...CCC.CC
+C  CCCC CCCC   C                              C'                   C 'BBB$''''C'''''''''''''''B''''''''''''''''''B''B'B'B'B'''BBB'BB
+                                               X                     XHHH_XXXX XXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXHXXHXHXHXHXXXHHHXHH
+                                               C                     CXXX&CCCC CCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCXCCXCXCXCXCCCXXXCXX
 "+""+"-"""++++++M=Z+=IZX+=+=IX-MZXZZ--ZA-ZXA++-"+=======-AXX-M=M==++"""""----------------------------"--------""-"-""--""""""""-"""-
++C++C+.+++CCCCCC C            C     CC  C    C.+CCCCCCCCC   C C CCCC+CCCC............................+........CC.C.CC..CCCCCCCC.CCC.
+C CC C'CCC                                    'C                    CBBBB''''''''''''''''''''''''''''C''''''''BB'B'BB''BBBBBBBB'BBB'
+      X                                       X                      HHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXHHXHXHHXXHHHHHHHHXHHHX
+      C                                       C                      XXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCXXCXCXXCCXXXXXXXXCXXXC
 """"+""""+==++M====-==+===1=AZZ-ZZMM-M-ZXX-=+-""++=+=+=-IXXZM=--=+=""""#-----------------------------------"-"----"---"-""--"""-""""
+++++C++++CCCCC CCCCCC          C    C C   CCC.++CCCCCCCC     CCCCCC+CCCX...................................C.C....C...C.CC..CCC.CCCC
+CCCC CCCC                                    'CC                   CBBB$'''''''''''''''''''''''''''''''''''B'B''''B'''B'BB''BBB'BBBB
+                                             X                      HHH_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHXXXXHXXXHXHHXXHHHXHHHH
+                                             C                      XXX&CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXCCCCXCCCXCXXCCXXXCXXXX
 """-"""++++-++M=====+- 111=AZZX-Z---XZZZAZ++""++++=+=--ZIZ-M==-M++"-""#------------------------""--"="-------"-""--------"-"""""""""
++++.+++CCCC.CC CCCCCCC         C CCC      CC++CCCCCCCCC   C CCC CC+.CCX........................CC..+C+.......C.CC........C.CCCCCCCCC
+CCC'CCC    '                                CC                    C'BB$''''''''''''''''''''''''BB''C C'''''''B'BB''''''''B'BBBBBBBBB
+   X       X                                                       XHH_XXXXXXXXXXXXXXXXXXXXXXXXHHXX   XXXXXXXHXHHXXXXXXXXHXHHHHHHHHH
+   C       C                                                       CXX&CCCCCCCCCCCCCCCCCCCCCCCCXXCC   CCCCCCCXCXXCCCCCCCCXCXXXXXXXXX
 ++++++++=++""===+=+==I1+-=AZ---ZXZZZZZZZX=M++M+"++MM-A-ZX-==+MM+++""""------------------------"--"----------"--------"-"--"--"--""""
+CCCCCCCCCCC++CCCCCCCC       CCC            CC C+CC  C C  CCCC  CCCCCCC........................+..C..........C........C.C..C..C..CCCC
+           CC                                  C                  BBBB''''''''''''''''''''''''C''B''''''''''B''''''''B'B''B''B''BBBB
+                                                                  HHHHXXXXXXXXXXXXXXXXXXXXXXXX XXHXXXXXXXXXXHXXXXXXXXHXHXXHXXHXXHHHH
+                                                                  XXXXCCCCCCCCCCCCCCCCCCCCCCCC CCXCCCCCCCCCCXCCCCCCCCXCXCCXCCXCCXXXX
 ++++M=====+=+==++====1=1=IZZZZZAAZXAXAIZ=AIM"""+M-Z-XZZXZM+=--+"+""""-+----------------------------"--"-------""----------"--"--""""
+CCCC CCCCCCCCCCCCCCCC                       +++C C C      CCCCC+CCCCC.C............................C..C.......CC..........C..C..CCCC
+                                            CCC                C BBBB' ''''''''''''''''''''''''''''B''B'''''''BB''''''''''B''B''BBBB
+                                                                 HHHHX XXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXHXXXXXXXHHXXXXXXXXXXHXXHXXHHHH
+                                                                 XXXXC CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCCCCCCCXXCCCCCCCCCCXCCXCCXXXX
 +=MM-MM=====++++===MX-1+=XZZXZXIAXXZX+IZAIA+++=MIAXZZZA-===M-++"-"""------------------------------------------"----------"-""-"--"-"
+CC  C  CCCCCCCCCCCC                        CCCC        CCCC CCC+.CCC..........................................C..........C.CC.C..C.C
+                                                               C'BBB''''''''''''''''''''''''''''''''''''''''''B''''''''''B'BB'B''B'B
+                                                                XHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXHXHHXHXXHXH
+                                                                CXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCXCXXCXCCXCX
 M--MZ-Z=+=M+++++-MM-- 1-IXZ-ZII=IXAZI=XZAX=+=Z+IAAXZZXZMMM-M++"--""-------------------------------------------------------""--""-"""
+ CC  C CCC CCCCCC  C       C              CCC             C CC+..C+.......................................................CC..CC.CCC
+                                                              C''BC'''''''''''''''''''''''''''''''''''''''''''''''''''''''BB''BB'BBB
+                                                               XXH XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXHHXHHH
+                                                               CCX CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCXXCXXX
 =-ZZXAA==MM=++++===A - =IZZZXI=A+XAA=AII=XX=M1-1IXZZXZ-M-MM++"--"+--"--------"--------------"-"---------"-----"-"-----"--""--"--""-"
+CC     CC  CCCCCCCC                        C          C C  CC+..CC..+........C..............C.C.........C.....C.C.....C..CC..C..CC.C
+                                                             C''B ''C''''''''B''''''''''''''B'B'''''''''B'''''B'B'''''B''BB''B''BB'B
+                                                              XXH XX XXXXXXXXHXXXXXXXXXXXXXXHXHXXXXXXXXXHXXXXXHXHXXXXXHXXHHXXHXXHHXH
+                                                              CCX CC CCCCCCCCXCCCCCCCCCCCCCCXCXCCCCCCCCCXCCCCCXCXCCCCCXCCXXCCXCCXXCX
 =-ZZXAA-M=MM=++++-Z= -1XXZZA-XXA=IIAXA+==+ZMI=-1AXXXX-MMM=+++"""+------"-------------------"-------------"----"""-----------""--"--"
+CC     C C  CCCCCC          C                        C   CCCC+CCC......+...................C.............C....CCC...........CC..C..C
+                                                             CBB ''''''C'''''''''''''''''''B'''''''''''''B''''BBB'''''''''''BB''B''B
+                                                              HH XXXXXX XXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXHXXXXHHHXXXXXXXXXXXHHXXHXXH
+                                                              XX CCCCCC CCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCCXXXCCCCCCCCCCCXXCCXCCX
 M-ZZZAXM=====++++-X-1+IZZXAI-XAAIAAAA=1IZM=X+AIAZXZXX-M-=+="-"-------------------------------------------------""""------------"---"
+ C      CCCCCCCCCC          C             C          C CCCC+.C.................................................CCCC............C...C
+                                                           C'B'''''''''''''''''''''''''''''''''''''''''''''''''BBBB''''''''''''B'''B
+                                                            XHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHHHXXXXXXXXXXXXHXXXH
+                                                            CXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXXXCCCCCCCCCCCCXCCCX
 MMZZ-ZZ-=+M++""++-+-=IAZZIAXX=AAA AIA=-Z=++XXIZ-ZZZZ-Z-="++-"-----------------------"-------"-----------------------------"-"--"""""
+    C  CCC CC++CCC                      CCC    C    C CC+CC.C.......................+.......+.............................C.C..CCCCC
+             CC                                         C  'B'''''''''''''''''''''''C'''''''C'''''''''''''''''''''''''''''B'B''BBBBB
+                                                           XHXXXXXXXXXXXXXXXXXXXXXXX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXHXXHHHHH
+                                                           CXCCCCCCCCCCCCCCCCCCCCCCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCXCCXXXXX
 =M-=MX-M=+=+="""MI1111AZAZXI==IX=-AXI -M+++ZIAZ-MZXM--++++-"+"----------------"-------------"--------------------"-----""--"-"----"-
+C CC  C CCCCC+++                        CCC    C    CCCCCC.CC+................+.............+....................C.....CC..C.C....C.
+             CCC                                          'B C''''''''''''''''C'''''''''''''C''''''''''''''''''''B'''''BB''B'B''''B'
+                                                          XH  XXXXXXXXXXXXXXXX XXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXHXXXXXHHXXHXHXXXXHX
+                                                          CX  CCCCCCCCCCCCCCCC CCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCXCCCCCXXCCXCXCCCCXC
 ++M-M--=+++++++=X+I++==IA=I1==AXXZMZZ=X=+=MZXZZ-ZX---=+++-""-"-------"------------------------------------"-----------------"----"--
+CC C CCCCCCCCCCC                       CCC     C  CCCCCCC.++.+.......+....................................C.................C....C..
+                                                         'CC'C'''''''C''''''''''''''''''''''''''''''''''''B'''''''''''''''''B''''B''
+                                                         X  X XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXHXXXXHXX
+                                                         C  C CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCXCCCCXCC
 +=M-M-Z=++++=-Z=AI=+==AI==+ AZ--=M=MZ=++=--XXAZ-X-M--++""="--"----------------------------------------------------------------""----
+CC C C CCCCCCC                CCC C  CCCCCC    C C CCCC++C+..+................................................................CC....
+                                                       CC C''C''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''BB''''
+                                                           XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXXX
+                                                           CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCCC
 "++=+=M++=MAI=+IA==I=IAA=AIMM=MM=-=MM++=-=ZXZZ=--=-M=+"+-+-"-"----------------------------------------"--------------"----"--"-"----
++CCCCC CCC                   C  CCC  CCCCC    CCCCC CC+CCC.+.+........................................C..............C....C..C.C....
+C                                                     C   'C'C''''''''''''''''''''''''''''''''''''''''B''''''''''''''B''''B''B'B''''
+                                                          X X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXHXXXXHXXHXHXXXX
+                                                          C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCXCCCCXCCXCXCCCC
 -++=++MMX1IXIXX==IIX=IIXIAM"+=M=M=M=+===+"Z-M+"==--+"-+M--------"-------------"------------------------------------------""--"----"-
+.CCCCC                     +CC C C CCCCCC+ C C+CCCCC+.C ........+.............+..........................................CC..C....C.
+'                          C             C    C     C'  ''''''''C'''''''''''''C''''''''''''''''''''''''''''''''''''''''''BB''B''''B'
+X                                                    X  XXXXXXXX XXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXHXXXXHX
+C                                                    C  CCCCCCCC CCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCXCCCCXC
 "==-ZZ=+=11=ZZAAIIIAIIMZ--==-M=M+=+++++""+=M"-++=-"---M-"----"---------------------------------------"----------------"-"-"-"-"---"-
++CCC                    CCCCC C CCCCCCC++CC +CCCCC+... .+....+.......................................C................C.C.C.C.C...C.
+C                                      CC   C     C''' 'C''''C'''''''''''''''''''''''''''''''''''''''B''''''''''''''''B'B'B'B'B'''B'
+                                                   XXX X XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXHXHXHXHXHXXXHX
+                                                   CCC C CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCXCXCXCXCXCCCXC
 =ZZZA==++1-+XXXIA===IAZMM-M-Z==++=+""-"-"=M++"++=-""+"-------------"-----------"---------------"-----"------------"----"---------"-"
+C                        C C CCCCCC++.+.+C CC+CCC.CCC+.............+...........+...............C.....C............C....C.........C.C
+                                   CC'C'C    C   'BB C'''''''''''''C'''''''''''C'''''''''''''''B'''''B''''''''''''B''''B'''''''''B'B
+                                     X X         XHH  XXXXXXXXXXXXX XXXXXXXXXXX XXXXXXXXXXXXXXXHXXXXXHXXXXXXXXXXXXHXXXXHXXXXXXXXXHXH
+                                     C C         CXX  CCCCCCCCCCCCC CCCCCCCCCCC CCCCCCCCCCCCCCCXCCCCCXCCCCCCCCCCCCXCCCCXCCCCCCCCCXCX
 -ZXXZAA+===XXAAAAAII=I-=--ZZM++==+"+"-+=MMM="++""""-"---------------"-----------------------------------"------------------"--"---""
+C                     CCCC   CCCCC+C+.CC   C+CC+CCC.+...............+...................................C..................C..C...CC
+                                  C C'      C  CBBB'C'''''''''''''''C'''''''''''''''''''''''''''''''''''B''''''''''''''''''B''B'''BB
+                                     X          HHHX XXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXHXXHXXXHH
+                                     C          XXXC CCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCXCCXCCCXX
 -ZZZZXX-IXAXXAAAI A=-ZXZXZZM=====""-"=MM-ZM=+=-""-=+-----"-"-"-"-"-"-"-----------"------------------"------"-----------"--"-------""
+C                           CCCCC++.CC  C  CCC.CC.CC.....+.+.+.+.+.+.+...........+..................C......C...........C..C.......CC
+                                 CC'B         'BB'  '''''C'C'C'C'C'C'C'''''''''''C''''''''''''''''''B''''''B'''''''''''B''B'''''''BB
+                                   XH         XHHX  XXXXX X X X X X X XXXXXXXXXXX XXXXXXXXXXXXXXXXXXHXXXXXXHXXXXXXXXXXXHXXHXXXXXXXHH
+                                   CX         CXXC  CCCCC C C C C C C CCCCCCCCCCC CCCCCCCCCCCCCCCCCCXCCCCCCXCCCCCCCCCCCXCCXCCCCCCCXX
 ---ZZAA==XAXXZX=+IXI=AAAZZ-===+M=--"MM=-ZZAM="""-"--"----"------------"------------------------"--------"------------"-------------"
+CCC                       CCCCC C..+  CC    CCCC.+..+....+............+........................+........C............C.............C
+                                 ''C         BBB'C''C''''C''''''''''''C''''''''''''''''''''''''C''''''''B''''''''''''B'''''''''''''B
+                                 XX          HHHX XX XXXX XXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXHXXXXXXXXXXXXHXXXXXXXXXXXXXH
+                                 CC          XXXC CC CCCC CCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCXCCCCCCCCCCCCXCCCCCCCCCCCCCX
 M--ZXIA+IAIIXMAAXXA=IIZZZ-M+=--==+=M--ZXXI-+"""+"---"--------"""--"----------------"------------------""----"------------""--"-"--"-
+ CC                      C CCCCCCCC CC    CCCCCC+...+........+++..+................+..................++....C............CC..C.C..C.
+                                            BBB C'''C''''''''CCC''C''''''''''''''''C''''''''''''''''''CC''''B''''''''''''BB''B'B''B'
+                                            HHH  XXX XXXXXXXX   XX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX  XXXXHXXXXXXXXXXXXHHXXHXHXXHX
+                                            XXX  CCC CCCCCCCC   CC CCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC  CCCCXCCCCCCCCCCCCXXCCXCXCCXC
 -ZXZZI==II+AM-AXXI+  X--MMM==A-=M=ZZIXXXAM"""+"""-"-""-----"-""-"------"----------------------------------------------------------"-
+C            C        CC   CC CC C        +CCC+++.+.++.....+.++.+......+..........................................................C.
+                                          CBB CCC'C'CC'''''C'CC'C''''''C''''''''''''''''''''''''''''''''''''''''''''''''''''''''''B'
+                                           HH    X X  XXXXX X  X XXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHX
+                                           XX    C C  CCCCC C  C CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXC
 ZZZXI1+AIA=AM-ZZ=1  +-ZMM-===Z-Z=-IIAA=X=---"""--+----------------------"---------------------------"-----""----------------"-"--"""
+             C       C   CCCC C CC      C...+++..C......................+...........................C.....CC................C.C..CCC
+                                         '''CCC'' ''''''''''''''''''''''C'''''''''''''''''''''''''''B'''''BB''''''''''''''''B'B''BBB
+                                         XXX   XX XXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXHHXXXXXXXXXXXXXXXXHXHXXHHH
+                                         CCC   CC CCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCXXCCCCCCCCCCCCCCCCXCXCCXXX
 XZZX=1 IIAAAAAAI11-I-ZZ-M+++ZZM-ZAIAAAZ=-"-""-""-------------------------------+------------------"--"----------------"--"----"-"--"
+                    C  C CCC   C       C.+.++.++...............................C..................C..+................C..C....C.C..C
+                                        'C'CC'CC''''''''''''''''''''''''''''''' ''''''''''''''''''B''C''''''''''''''''B''B''''B'B''B
+                                        X X  X  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXHXX XXXXXXXXXXXXXXXXHXXHXXXXHXHXXH
+                                        C C  C  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCXCC CCCCCCCCCCCCCCCCXCCXCCCCXCXCCX
 ZXAX=+==AXAXAAA==XZ---=++++=-ZXZA==AX-="+"--""""--"-------"------"--------------"------------"--------------"-----"-----------"-----
+                   CCCCCCCCCC        CC+C+..++++..+.......+......+..............+............C..............C.....C...........C.....
+                                       C C''CCCC''C'''''''C''''''C''''''''''''''C''''''''''''B''''''''''''''B'''''B'''''''''''B'''''
+                                          XX    XX XXXXXXX XXXXXX XXXXXXXXXXXXXX XXXXXXXXXXXXHXXXXXXXXXXXXXXHXXXXXHXXXXXXXXXXXHXXXXX
+                                          CC    CC CCCCCCC CCCCCC CCCCCCCCCCCCCC CCCCCCCCCCCCXCCCCCCCCCCCCCCXCCCCCXCCCCCCCCCCCXCCCCC
 XAIAX-XAZZZZXZ-Z-MM=M+=+MMM-ZXXZA=IIMM==------"-----"---"-"---"----------------"--------"-------------"-----------------------"--"-"
+     C        C C  C CCC   C          CC......+.....+...+.+...+................+........+.............C.......................C..C.C
+                                        ''''''C'''''C'''C'C'''C''''''''''''''''C''''''''C'''''''''''''B'''''''''''''''''''''''B''B'B
+                                        XXXXXX XXXXX XXX X XXX XXXXXXXXXXXXXXXX XXXXXXXX XXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXXXHXXHXH
+                                        CCCCCC CCCCC CCC C CCC CCCCCCCCCCCCCCCC CCCCCCCC CCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCXCCXCX
 II-A-M---XZ-M-=+=M++=XZXZ-ZZXXXIAIIIZZ+-"+-"-"-"-"""""""""--""-""--------------"-----------"-------------------------"------------"-
+  C C CCC  C CCCC CCC    C            C.+C.+.+.+.+++++++++..++.++..............+...........+.........................+............C.
+                                       'C 'C'C'C'CCCCCCCCC''CC'CC''''''''''''''C'''''''''''C'''''''''''''''''''''''''C''''''''''''B'
+                                       X  X X X X         XX  X  XXXXXXXXXXXXXX XXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXHX
+                                       C  C C C C         CC  C  CCCCCCCCCCCCCC CCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCXC
 --MXM-MMM==++++M==+MZ-ZXZXXZXI=IAIAZM""""-"--"----""---------"-----------------"--------------------"------"-------------"--""------
+CC   C   CCCCCC CCC  C               ++++.+..+....++.........+.................+....................+......C.............+..C+......
+                                     CCCC'C''C''''CC'''''''''C'''''''''''''''''C''''''''''''''''''''C''''''B'''''''''''''C''BC''''''
+                                         X XX XXXX  XXXXXXXXX XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX XXXXXXHXXXXXXXXXXXXX XXH XXXXXX
+                                         C CC CCCC  CCCCCCCCC CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCC CCCCCCXCCCCCCCCCCCCC CCX CCCCCC
 ++MZMM==+"""""=-=MZZ-ZXZXAIAIIIAAAZ+-"""""-"-----"----"---------------------------------------------------------"----------------""-
+CC    CCC+++++CCC   C              C.+++++.+.....+....+.........................................................C................C+.
+         CCCCC                      'CCCCC'C'''''C''''C'''''''''''''''''''''''''''''''''''''''''''''''''''''''''B''''''''''''''''BC'
+                                    X     X XXXXX XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXH X
+                                    C     C CCCCC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCX C
 "+=++=+"-""=+++M-ZZZ-ZZXXA+1+AIIAM+-""-----""--"-""-"-"-----------------------------------------------------------------"----"--""--
++CCCCCC+.++CCCC C   C             C.++.....++..+.++.+.+.................................................................C....C..CC..
+C      C'CC                        'CC'''''CC''C'CC'C'C'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''B''''B''BB''
+        X                          X  XXXXX  XX X  X X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHXXHHXX
+        C                          C  CCCCC  CC C  C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXCCXXCC
 "M+""+"--"=M-==MAX-ZZZZXIII +=IX=""""""""---""""-"""-"----------------------------------------"-"------"---------------"-"-"--------
++ C++C+..+C CCC   C             C++++++++...++++.+++.+........................................+.C......+...............C.C.C........
+C  CC C''C                       CCCCCCCC'''CCCC'CCC'C''''''''''''''''''''''''''''''''''''''''C'B''''''C'''''''''''''''B'B'B''''''''
+       XX                                XXX    X   X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XHXXXXXX XXXXXXXXXXXXXXXHXHXHXXXXXXXX
+       CC                                CCC    C   C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CXCCCCCC CCCCCCCCCCCCCCCXCXCXCCCCCCCC
 M++++"+==M=M--MZAZZAXZAIA+-+IZ-+""""""--"---"--"----------"-------------------------------------------------------""-----"-"--------
+ CCCC+CCC   CC                CC++++++..+...+..+..........+.......................................................++.....C.C........
+     C                          CCCCCC''C'''C''C''''''''''C'''''''''''''''''''''''''''''''''''''''''''''''''''''''CC'''''B'B''''''''
+                                      XX XXX XX XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXXXHXHXXXXXXXX
+                                      CC CCC CC CCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCXCXCCCCCCCC
 =M-MM=-ZZZ-M--ZXXXXI=XAXI==A-"""""""""--"----------"----"---------------------------------------------------------------"----"--"--"
+C C  CC   C CC              C+++++++++..+..........+....+...............................................................C....C..C..C
+                             CCCCCCCCC''C''''''''''C''''C'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''B''''B''B''B
+                                      XX XXXXXXXXXX XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXHXXHXXH
+                                      CC CCCCCCCCCC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXCCXCCX
 --Z-Z-ZZZXZMMZXIIXIIAXXA==M+""""""""""--"""-""--""---"--"------"---------------------------------------""-------------------------"-
+CC C C                     C++++++++++..+++.++..++...+..+......+.......................................++.........................C.
+                            CCCCCCCCCC''CCC'CC''CC'''C''C''''''C'''''''''''''''''''''''''''''''''''''''CC'''''''''''''''''''''''''B'
+                                      XX   X  XX  XXX XX XXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXXXXXXXXXXXXXXXXXXXXXXXHX
+                                      CC   C  CC  CCC CC CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCXC
 X++ZX--ZIAXZX=AIIIIXXA=AA+""""-"-"-""""--"--""-"""""------"-"-"--"----------"-"----"----------------"-------"--"--"-----------------
+     CC                  C++++.+.+.++++..+..++.+++++......+.+.+..+..........+.+....+................+.......+..+..+.................
+                          CCCC'C'C'CCCC''C''CC'CCCCC''''''C'C'C''C''''''''''C'C''''C''''''''''''''''C'''''''C''C''C'''''''''''''''''
+                              X X X    XX XX  X     XXXXXX X X XX XXXXXXXXXX X XXXX XXXXXXXXXXXXXXXX XXXXXXX XX XX XXXXXXXXXXXXXXXXX
+                              C C C    CC CC  C     CCCCCC C C CC CCCCCCCCCC C CCCC CCCCCCCCCCCCCCCC CCCCCCC CC CC CCCCCCCCCCCCCCCCC
 IZZZ-ZAXZXXXI=I=IIZXXAAM""""""-"-"""""----"-"--"""--""-----------------------------------------------------"-------"------------"---
+    C                   ++++++.+.+++++....+.+..+++..++.....................................................C.......+............C...
+                        CCCCCC'C'CCCCC''''C'C''CCC''CC'''''''''''''''''''''''''''''''''''''''''''''''''''''B'''''''C''''''''''''B'''
+                              X X     XXXX X XX   XX  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXX XXXXXXXXXXXXHXXX
+                              C C     CCCC C CC   CC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCC CCCCCCCCCCCCXCCC
 -MZXAXXXZAAAIIIII=I=ZM+"""-""""""""""""""""-""-""----"-""--------------""---"---------------------"-------------"--"----------------
+C                     C+++.++++++++++++++++.++.++....+.++..............++...+.....................+.............+..+................
+                       CCC'CCCCCCCCCCCCCCCC'CC'CC''''C'CC''''''''''''''CC'''C'''''''''''''''''''''C'''''''''''''C''C''''''''''''''''
+                          X                X  X  XXXX X  XXXXXXXXXXXXXX  XXX XXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXX XX XXXXXXXXXXXXXXXX
+                          C                C  C  CCCC C  CCCCCCCCCCCCCC  CCC CCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC CC CCCCCCCCCCCCCCCC
 -MZAIXXAII=IXII===X=+"""""""""""-""-"""""""--""""--"-"--------"----"-------------------"-------"---------------------------------"--
+C                  CC+++++++++++.++.+++++++..++++..+.+........+....+...................+.......+.................................C..
+                     CCCCCCCCCCC'CC'CCCCCCC''CCCC''C'C''''''''C''''C'''''''''''''''''''C'''''''C'''''''''''''''''''''''''''''''''B''
+                                X  X       XX    XX X XXXXXXXX XXXX XXXXXXXXXXXXXXXXXXX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXX
+                                C  C       CC    CC C CCCCCCCC CCCC CCCCCCCCCCCCCCCCCCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC
 ZZZXIAI==IAA==+=I+"""""-"""""""""""""-""""""-""-""-"----"""----"---------""------------"----------------"---------"-----"-----"-----
+                 C+++++.+++++++++++++.++++++.++.++.+....+++....+.........++............+................+.........+.....C.....C.....
+                  CCCCC'CCCCCCCCCCCCC'CCCCCC'CC'CC'C''''CCC''''C'''''''''CC''''''''''''C''''''''''''''''C'''''''''C'''''B'''''B'''''
+                       X             X      X  X  X XXXX   XXXX XXXXXXXXX  XXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXX XXXXXHXXXXXHXXXXX
+                       C             C      C  C  C CCCC   CCCC CCCCCCCCC  CCCCCCCCCCCC CCCCCCCCCCCCCCCC CCCCCCCCC CCCCCXCCCCCXCCCCC
 XZXIIIIIAAI 1=AM""""""""""""---"-""-"-"---------"--"""--"-""-""---------"---"----------------------------------""-------"------"---"
+                ++++++++++++...+.++.+.+.........+..+++..+.++.++.........+...+..................................++.......C......C...C
+                CCCCCCCCCCCC'''C'CC'C'C'''''''''C''CCC''C'CC'CC'''''''''C'''C''''''''''''''''''''''''''''''''''CC'''''''B''''''B'''B
+                            XXX X  X X XXXXXXXXX XX   XX X  X  XXXXXXXXX XXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  XXXXXXXHXXXXXXHXXXH
+                            CCC C  C C CCCCCCCCC CC   CC C  C  CCCCCCCCC CCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCCCXCCCCCCXCCCX
 IIIAI=III=+=ZM"""""""""""""----""""-"-"-""---""-----"-"----"----"----------------------------------"--------------"-----"----"--"---
+              +++++++++++++....++++.+.+.++...++.....+.+....+....+..................................+..............+.....C....C..C...
+              CCCCCCCCCCCCC''''CCCC'C'C'CC'''CC'''''C'C''''C''''C''''''''''''''''''''''''''''''''''C''''''''''''''C'''''B''''B''B'''
+                           XXXX    X X X  XXX  XXXXX X XXXX XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX XXXXXHXXXXHXXHXXX
+                           CCCC    C C C  CCC  CCCCC C CCCC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC CCCCCXCCCCXCCXCCC
 1II=++===I-=""""""""""""""""-"-"--"-"-"""-"""-"-"-""""-----"---"--------------"--"----"-----------------------"--"-----------"--"---
+          CC++++++++++++++++.+.+..+.+.+++.+++.+.+.++++.....+...+..............+..+....+.......................+..+...........C..C...
+            CCCCCCCCCCCCCCCC'C'C''C'C'CCC'CCC'C'C'CCCC'''''C'''C''''''''''''''C''C''''C'''''''''''''''''''''''C''C'''''''''''B''B'''
+                            X X XX X X   X   X X X    XXXXX XXX XXXXXXXXXXXXXX XX XXXX XXXXXXXXXXXXXXXXXXXXXXX XX XXXXXXXXXXXHXXHXXX
+                            C C CC C C   C   C C C    CCCCC CCC CCCCCCCCCCCCCC CC CCCC CCCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCCCCXCCXCCC
 1I+=1I=AX="""""""+"""""""""-""""""""""-"""---""""""-""--"-----"--"--"-""----"-""-----"----"----------"---------"""+-"----"----""----
+         C+++++++C+++++++++.++++++++++.+++...++++++.++..+.....+..+..+.++....+.++.....+....+..........+.........+++C.+....C....CC....
+          CCCCCCC CCCCCCCCC'CCCCCCCCCC'CCC'''CCCCCC'CC''C'''''C''C''C'CC''''C'CC'''''C''''C''''''''''C'''''''''CCC 'C''''B''''BB''''
+                           X          X   XXX      X  XX XXXXX XX XX X  XXXX X  XXXXX XXXX XXXXXXXXXX XXXXXXXXX    X XXXXHXXXXHHXXXX
+                           C          C   CCC      C  CC CCCCC CC CC C  CCCC C  CCCCC CCCC CCCCCCCCCC CCCCCCCCC    C CCCCXCCCCXXCCCC
 =1=+=X-+""""""""""""""""-"""-"-"""""""-"-"---""-""-""------"------""----------"---"------------------------"---"-"------------------
+      CC++++++++++++++++.+++.+.+++++++.+.+...++.++.++......+......++..........+...+........................+...+.+..................
+        CCCCCCCCCCCCCCCC'CCC'C'CCCCCCC'C'C'''CC'CC'CC''''''C''''''CC''''''''''C'''C''''''''''''''''''''''''C'''C'C''''''''''''''''''
+                        X   X X       X X XXX  X  X  XXXXXX XXXXXX  XXXXXXXXXX XXX XXXXXXXXXXXXXXXXXXXXXXXX XXX X XXXXXXXXXXXXXXXXXX
+                        C   C C       C C CCC  C  C  CCCCCC CCCCCC  CCCCCCCCCC CCC CCCCCCCCCCCCCCCCCCCCCCCC CCC C CCCCCCCCCCCCCCCCCC
 11IZ-++"""""""""""""""""""""-"-"""""""""""----""--""-"-----"-"------"-----"-------"-----------------------------------------------"-
+    CCC+++++++++++++++++++++.+.+++++++++++....++..++.+.....+.+......+.....+.......+...............................................C.
+       CCCCCCCCCCCCCCCCCCCCC'C'CCCCCCCCCCC''''CC''CC'C'''''C'C''''''C'''''C'''''''C'''''''''''''''''''''''''''''''''''''''''''''''B'
+                            X X           XXXX  XX  X XXXXX X XXXXXX XXXXX XXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHX
+                            C C           CCCC  CC  C CCCCC C CCCCCC CCCCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXC
 =-=+"""""""""""""""""""""""-""-""-""""--"-""""--""-"-"--"--"----""----------------------"--"-------------------"--------------------
+ CCC+++++++++++++++++++++++.++.++.++++..+.++++..++.+.+..+..+....++......................+..+...................+....................
+    CCCCCCCCCCCCCCCCCCCCCCC'CC'CC'CCCC''C'CCCC''CC'C'C''C''C''''CC''''''''''''''''''''''C''C'''''''''''''''''''C''''''''''''''''''''
+                           X  X  X    XX X    XX  X X XX XX XXXX  XXXXXXXXXXXXXXXXXXXXXX XX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX
+                           C  C  C    CC C    CC  C C CC CC CCCC  CCCCCCCCCCCCCCCCCCCCCC CC CCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCC
 +"+"""""""""""""+"""""+""""""""""-"""""""""""""""""-""""-"""""-"-"--"-"-"""-""""-------"-"------""-""-"----"-""---"-"-------------"-
+C+C+++++++++++++C+++++C++++++++++.+++++++++++++++++.++++.+++++.+.+..+.+.+++.++++.......+.+......++.++.+....+.++...+.+.............+.
+ C CCCCCCCCCCCCC CCCCC CCCCCCCCCC'CCCCCCCCCCCCCCCCC'CCCC'CCCCC'C'C''C'C'CCC'CCCC'''''''C'C''''''CC'CC'C''''C'CC'''C'C'''''''''''''C'
+                                 X                 X    X     X X XX X X   X    XXXXXXX X XXXXXX  X  X XXXX X  XXX X XXXXXXXXXXXXX X
+                                 C                 C    C     C C CC C C   C    CCCCCCC C CCCCCC  C  C CCCC C  CCC C CCCCCCCCCCCCC C
 """"""""""""""""""""""""""""----""""""""-"-+"------"""-"--""--"--""------------"-----"-----"-"--------------------------------------
+++++++++++++++++++++++++++++....++++++++.+.C+......+++.+..++..+..++............+.....+.....+.+......................................
+CCCCCCCCCCCCCCCCCCCCCCCCCCCC''''CCCCCCCC'C' C''''''CCC'C''CC''C''CC''''''''''''C'''''C'''''C'C''''''''''''''''''''''''''''''''''''''
+                            XXXX        X X  XXXXXX   X XX  XX XX  XXXXXXXXXXXX XXXXX XXXXX X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+                            CCCC        C C  CCCCCC   C CC  CC CC  CCCCCCCCCCCC CCCCC CCCCC C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 +""""""""+"""""""""""""""""""""""""-""-""------"--"-""""-""--"""-""---"--------"-""---"----"---"--------------------"---------------
+C++++++++C+++++++++++++++++++++++++.++.++......+..+.++++.++..+++.++...+........+.++...+....+...+....................+...............
+ CCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCC'CC'CC''''''C''C'CCCC'CC''CCC'CC'''C''''''''C'CC'''C''''C'''C''''''''''''''''''''C'''''''''''''''
+                                   X  X  XXXXXX XX X    X  XX   X  XXX XXXXXXXX X  XXX XXXX XXX XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX
+                                   C  C  CCCCCC CC C    C  CC   C  CCC CCCCCCCC C  CCC CCCC CCC CCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC
 +"""""""""""""""""""""""""""""-"""--""""""-""--""-""-""----"""-"-"------"---------"-"---"---------"------""-------------------------
+C+++++++++++++++++++++++++++++.+++..++++++.++..++.++.++....+++.+.+......+.........+.+...+.........+......++.........................
+ CCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCC''CCCCCC'CC''CC'CC'CC''''CCC'C'C''''''C'''''''''C'C'''C'''''''''C''''''CC'''''''''''''''''''''''''
+                              X   XX      X  XX  X  X  XXXX   X X XXXXXX XXXXXXXXX X XXX XXXXXXXXX XXXXXX  XXXXXXXXXXXXXXXXXXXXXXXXX
+                              C   CC      C  CC  C  C  CCCC   C C CCCCCC CCCCCCCCC C CCC CCCCCCCCC CCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCC
 """""+"""""""""""+""""""""""""-""""""""""""""-""-""""""-"""--""--""-"---""--"--"""""""-""-"----------"--"---------"---"-----"--"----
++++++C+++++++++++C++++++++++++.++++++++++++++.++.++++++.+++..++..++.+...++..+..+++++++.++.+..........+..+.........+...+.....+..+....
+CCCCC CCCCCCCCCCC CCCCCCCCCCCC'CCCCCCCCCCCCCC'CC'CCCCCC'CCC''CC''CC'C'''CC''C''CCCCCCC'CC'C''''''''''C''C'''''''''C'''C'''''C''C''''
+                              X              X  X      X   XX  XX  X XXX  XX XX       X  X XXXXXXXXXX XX XXXXXXXXX XXX XXXXX XX XXXX
+                              C              C  C      C   CC  CC  C CCC  CC CC       C  C CCCCCCCCCC CC CCCCCCCCC CCC CCCCC CC CCCC
 """"""""""""""""""""""""""""""""""-"""""""-"----"-"""""--"-""--"------"-""-----"""---"----"----"---------------------------------"--
+++++++++++++++++++++++++++++++++++.+++++++.+....+.+++++..+.++..+......+.++.....+++...+....+....+.................................C..
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCC'C''''C'CCCCC''C'CC''C''''''C'CC'''''CCC'''C''''C''''C'''''''''''''''''''''''''''''''''B''
+                                  X       X XXXX X     XX X  XX XXXXXX X  XXXXX   XXX XXXX XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXX
+                                  C       C CCCC C     CC C  CC CCCCCC C  CCCCC   CCC CCCC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC
 """""""""""""""""""""""""""""""""""""""""""""""-----"-"-"""""""-"-"-"-"-"----"--"-----------------"---------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++.....+.+.+++++++.+.+.+.+.+....+..+.................+.................................
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'''''C'C'CCCCCCC'C'C'C'C'C''''C''C'''''''''''''''''C'''''''''''''''''''''''''''''''''
+                                               XXXXX X X       X X X X X XXXX XX XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+                                               CCCCC C C       C C C C C CCCC CC CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 """"""+"""""""""""""""""""""""""-""""""""---"""-"-"""""""""""-"---"--"-"-"-"----""------""----"---"-"----"--------------------------
+++++++C+++++++++++++++++++++++++.++++++++...+++.+.+++++++++++.+...+..+.+.+.+....++......++....+...+.+....+..........................
+CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCC'''CCC'C'CCCCCCCCCCC'C'''C''C'C'C'C''''CC''''''CC''''C'''C'C''''C''''''''''''''''''''''''''
+                                X        XXX   X X           X XXX XX X X X XXXX  XXXXXX  XXXX XXX X XXXX XXXXXXXXXXXXXXXXXXXXXXXXXX
+                                C        CCC   C C           C CCC CC C C C CCCC  CCCCCC  CCCC CCC C CCCC CCCCCCCCCCCCCCCCCCCCCCCCCC
 +"""""""""""""""""""""""""""""""""""""""""""""""""-"-""""-"""""""""-"-""""-""-"-""-----"---"-------""---""""-------------""----"---"
+C+++++++++++++++++++++++++++++++++++++++++++++++++.+.++++.+++++++++.+.++++.++.+.++.....+...+.......++...++++.............++....+...+
+ CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'C'CCCC'CCCCCCCCC'C'CCCC'CC'C'CC'''''C'''C'''''''CC'''CCCC'''''''''''''CC''''C'''C
+                                                  X X    X         X X    X  X X  XXXXX XXX XXXXXXX  XXX    XXXXXXXXXXXXX  XXXX XXX
+                                                  C C    C         C C    C  C C  CCCCC CCC CCCCCCC  CCC    CCCCCCCCCCCCC  CCCC CCC
 """""""""""""""""""""""""""""""""""""""""-""""-"---"""---"-"-""--"---""""--""------------------"--""----------------------"-"-------
++++++++++++++++++++++++++++++++++++++++++.++++.+...+++...+.+.++..+...++++..++..................+..++......................+.+.......
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCC'C'''CCC'''C'C'CC''C'''CCCC''CC''''''''''''''''''C''CC''''''''''''''''''''''C'C'''''''
+                                         X    X XXX   XXX X X  XX XXX    XX  XXXXXXXXXXXXXXXXXX XX  XXXXXXXXXXXXXXXXXXXXXX X XXXXXXX
+                                         C    C CCC   CCC C C  CC CCC    CC  CCCCCCCCCCCCCCCCCC CC  CCCCCCCCCCCCCCCCCCCCCC C CCCCCCC
 """"""""""""""""""""""""""""""""""""""--"""""-""-"-""""-""--"-"--"-"""-"""-""---""-"-----------"-"----"--------"----------"---------
+++++++++++++++++++++++++++++++++++++++..+++++.++.+.++++.++..+.+..+.+++.+++.++...++.+...........+.+....+........+..........+.........
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CCCCC'CC'C'CCCC'CC''C'C''C'CCC'CCC'CC'''CC'C'''''''''''C'C''''C''''''''C''''''''''C'''''''''
+                                      XX     X  X X    X  XX X XX X   X   X  XXX  X XXXXXXXXXXX X XXXX XXXXXXXX XXXXXXXXXX XXXXXXXXX
+                                      CC     C  C C    C  CC C CC C   C   C  CCC  C CCCCCCCCCCC C CCCC CCCCCCCC CCCCCCCCCC CCCCCCCCC
 """"""""""""""""""""""""""""""""""""""-"""""--""""---"""--"-""""--------"""--"""""-"----"---""-"--------------"-------------"-------
+++++++++++++++++++++++++++++++++++++++.+++++..++++...+++..+.++++........+++..+++++.+....+...++.+..............+.............+.......
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC''CCCC'''CCC''C'CCCC''''''''CCC''CCCCC'C''''C'''CC'C''''''''''''''C'''''''''''''C'''''''
+                                      X     XX    XXX   XX X    XXXXXXXX   XX     X XXXX XXX  X XXXXXXXXXXXXXX XXXXXXXXXXXXX XXXXXXX
+                                      C     CC    CCC   CC C    CCCCCCCC   CC     C CCCC CCC  C CCCCCCCCCCCCCC CCCCCCCCCCCCC CCCCCCC
 ++++"""""""""""""+""""""""-""""""""""""-"""""""---"""-"-"-""""-"""---"--"""-------"---"---"-"-------"-"--------------"---------"-"--
+CCCC+++++++++++++C++++++++.++++++++++++.+++++++...+++.+.+.++++.+++...+..+++.......+...+...+.+.......+.+..............+.........+.+..
+    CCCCCCCCCCCCC CCCCCCCC'CCCCCCCCCCCC'CCCCCCC'''CCC'C'C'CCCC'CCC'''C''CCC'''''''C'''C'''C'C'''''''C'C''''''''''''''C'''''''''C'C''
+                          X            X       XXX   X X X    X   XXX XX   XXXXXXX XXX XXX X XXXXXXX X XXXXXXXXXXXXXX XXXXXXXXX X XX
+                          C            C       CCC   C C C    C   CCC CC   CCCCCCC CCC CCC C CCCCCCC C CCCCCCCCCCCCCC CCCCCCCCC C CC
 """"+"""""""""""""""""""""""""""-""""""""""-"""""""""""""""""""-"""--"-"-----"-"""---"-""""------""-"---"--""-------------"-"-----"-
+++++C+++++++++++++++++++++++++++.++++++++++.+++++++++++++++++++.+++..+.+.....+.+++...+.++++......++.+...+..++.............+.+.....C.
+CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCC'CCCCCCCCCCCCCCCCCCC'CCC''C'C'''''C'CCC'''C'CCCC''''''CC'C'''C''CC'''''''''''''C'C'''''B'
+                                X          X                   X   XX X XXXXX X   XXX X    XXXXXX  X XXX XX  XXXXXXXXXXXXX X XXXXXHX
+                                C          C                   C   CC C CCCCC C   CCC C    CCCCCC  C CCC CC  CCCCCCCCCCCCC C CCCCCXC
 """"+"+"""""""""""""""""""""""""""-""""""""""""""-"""-""""""""""-"""------"--"---""""""""""""-----------"---"--------------------"--
+++++C+C+++++++++++++++++++++++++++.++++++++++++++.+++.++++++++++.+++......+..+...++++++++++++...........+...+....................+..
+CCCC C CCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCC'CCC'CCCCCCCCCC'CCC''''''C''C'''CCCCCCCCCCCC'''''''''''C'''C''''''''''''''''''''C''
+                                  X              X   X          X   XXXXXX XX XXX            XXXXXXXXXXX XXX XXXXXXXXXXXXXXXXXXXX XX
+                                  C              C   C          C   CCCCCC CC CCC            CCCCCCCCCCC CCC CCCCCCCCCCCCCCCCCCCC CC
 """""""""+""""""""""+""""""""""""""""-""--""-""""""-"---"-""-"-""------"--"-"--"-"-""""-"-"-"-"-"-"-----"----------"----"-----------
++++++++++C++++++++++C++++++++++++++++.++..++.++++++.+...+.++.+.++......+..+.+..+.+.++++.+.+.+.+.+.+.....+..........+....+...........
+CCCCCCCCC CCCCCCCCCC CCCCCCCCCCCCCCCC'CC''CC'CCCCCC'C'''C'CC'C'CC''''''C''C'C''C'C'CCCC'C'C'C'C'C'C'''''C''''''''''C''''C'''''''''''
+                                     X  XX  X      X XXX X  X X  XXXXXX XX X XX X X    X X X X X X XXXXX XXXXXXXXXX XXXX XXXXXXXXXXX
+                                     C  CC  C      C CCC C  C C  CCCCCC CC C CC C C    C C C C C C CCCCC CCCCCCCCCC CCCC CCCCCCCCCCC
 """"""""""""""""""""""""""""""""""+"""--"""""-"""-"-""--"""""--"-""""-"----"--"-+"--""--"""--"------"--"--"--"---"""-""------"---"-"
+++++++++++++++++++++++++++++++++++C+++..+++++.+++.+.++..+++++..+.++++.+....+..+.C+..++..+++..+......+..+..+..+...+++.++......+...+.+
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCC''CCCCC'CCC'C'CC''CCCCC''C'CCCC'C''''C''C' C''CC''CCC''C''''''C''C''C''C'''CCC'CC''''''C'''C'C
+                                      XX     X   X X  XX     XX X    X XXXX XX X  XX  XX   XX XXXXXX XX XX XX XXX   X  XXXXXX XXX X
+                                      CC     C   C C  CC     CC C    C CCCC CC C  CC  CC   CC CCCCCC CC CC CC CCC   C  CCCCCC CCC C
 """"""""""""""""""""""""""""""""""""-""""-""""""-"--""--""-"-"""--"--"--"----""---"-""""---"---"--"--------"---"---""---------------
+++++++++++++++++++++++++++++++++++++.++++.++++++.+..++..++.+.+++..+..+..+....++...+.++++...+...+..+........+...+...++...............
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCC'CCCCCC'C''CC''CC'C'CCC''C''C''C''''CC'''C'CCCC'''C'''C''C''''''''C'''C'''CC'''''''''''''''
+                                    X    X      X XX  XX  X X   XX XX XX XXXX  XXX X    XXX XXX XX XXXXXXXX XXX XXX  XXXXXXXXXXXXXXX
+                                    C    C      C CC  CC  C C   CC CC CC CCCC  CCC C    CCC CCC CC CCCCCCCC CCC CCC  CCCCCCCCCCCCCCC
 """"+"""""""""""""""""""""""""""""""""""""""""""""-"-""-""-"-""--"---""--"---""--""""--"""""---------"+------"-------"--------------
+++++C+++++++++++++++++++++++++++++++++++++++++++++.+.++.++.+.++..+...++..+...++..++++..+++++.........+C......+.......+..............
+CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'C'CC'CC'C'CC''C'''CC''C'''CC''CCCC''CCCCC'''''''''C ''''''C'''''''C''''''''''''''
+                                                  X X  X  X X  XX XXX  XX XXX  XX    XX     XXXXXXXXX  XXXXXX XXXXXXX XXXXXXXXXXXXXX
+                                                  C C  C  C C  CC CCC  CC CCC  CC    CC     CCCCCCCCC  CCCCCC CCCCCCC CCCCCCCCCCCCCC
 """""""""""""+"""""""""""""+""""""""""""""""""--"-""""---"--""""""""-"--""--------"-"-----"--"--------"-"----"----"------"----------
++++++++++++++C+++++++++++++C++++++++++++++++++..+.++++...+..++++++++.+..++........+.+.....+..+........+.+....+....+......+..........
+CCCCCCCCCCCCC CCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC''C'CCCC'''C''CCCCCCCC'C''CC''''''''C'C'''''C''C''''''''C'C''''C''''C''''''C''''''''''
+                                              XX X    XXX XX        X XX  XXXXXXXX X XXXXX XX XXXXXXXX X XXXX XXXX XXXXXX XXXXXXXXXX
+                                              CC C    CCC CC        C CC  CCCCCCCC C CCCCC CC CCCCCCCC C CCCC CCCC CCCCCC CCCCCCCCCC
 ++""""""""=++""""""""""""""-"""""""""""+""""""""""""""""""-"-"----"-"-"---""""-""-""-"---"---""--""----"-"-"---"""----"-"-----------
+CC++++++++CCC++++++++++++++.+++++++++++C++++++++++++++++++.+.+....+.+.+...++++.++.++.+...+...++..++....+.+.+...+++....+.+...........
+  CCCCCCCC   CCCCCCCCCCCCCC'CCCCCCCCCCC CCCCCCCCCCCCCCCCCC'C'C''''C'C'C'''CCCC'CC'CC'C'''C'''CC''CC''''C'C'C'''CCC''''C'C'''''''''''
+                           X                              X X XXXX X X XXX    X  X  X XXX XXX  XX  XXXX X X XXX   XXXX X XXXXXXXXXXX
+                           C                              C C CCCC C C CCC    C  C  C CCC CCC  CC  CCCC C C CCC   CCCC C CCCCCCCCCCC
 """"""""""""""""""""""""""""""""""""""""""""+""-"""""""""-""""""""""-"--"-"-""--"-"""---""------"-"""--"------""""-"-----"-"----"---
+++++++++++++++++++++++++++++++++++++++++++++C++.+++++++++.++++++++++.+..+.+.++..+.+++...++......+.+++..+......++++.+.....+.+....+...
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CC'CCCCCCCCC'CCCCCCCCCC'C''C'C'CC''C'CCC'''CC''''''C'CCC''C''''''CCCC'C'''''C'C''''C'''
+                                               X         X          X XX X X  XX X   XXX  XXXXXX X   XX XXXXXX    X XXXXX X XXXX XXX
+                                               C         C          C CC C C  CC C   CCC  CCCCCC C   CC CCCCCC    C CCCCC C CCCC CCC
 ""+""""""""""""""""""""""""""""""""""""""""""""""""""""""""""-"""""--""""""""""-"-""-"-"""---"""--"""-----------"------------"------
+++C++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++..++++++++++.+.++.+.+++...+++..+++...........+............+......
+CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC''CCCCCCCCCC'C'CC'C'CCC'''CCC''CCC'''''''''''C''''''''''''C''''''
+                                                             X     XX          X X  X X   XXX   XX   XXXXXXXXXXX XXXXXXXXXXXX XXXXXX
+                                                             C     CC          C C  C C   CCC   CC   CCCCCCCCCCC CCCCCCCCCCCC CCCCCC
 ++""+""""""""""""""""""""""""""""""""""""""""""""""""""""-"""""-"""""""""""-"""""--"---"---"-""-""""--"-"-"-""--"-"--"-------"------
+CC++C++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++.+++++++++++.+++++..+...+...+.++.++++..+.+.+.++..+.+..+.......+......
+  CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC'CCCCCCCCCCC'CCCCC''C'''C'''C'CC'CCCC''C'C'C'CC''C'C''C'''''''C''''''
+                                                         X     X           X     XX XXX XXX X  X    XX X X X  XX X XX XXXXXXX XXXXXX
+                                                         C     C           C     CC CCC CCC C  C    CC C C C  CC C CC CCCCCCC CCCCCC
 ""+""""""""""""""""""+"""""""""""""""""""-"""""""""+"""+"--"""""""""-"-"-"""""--""""-""--""-"-"-""""""=--"-""-"""-""----""------"---
+++C++++++++++++++++++C+++++++++++++++++++.+++++++++C+++C+..+++++++++.+.+.+++++..++++.++..++.+.+.++++++C..+.++.+++.++....++......+...
+CC CCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCC'CCCCCCCCC CCC C''CCCCCCCCC'C'C'CCCCC''CCCC'CC''CC'C'C'CCCCCC ''C'CC'CCC'CC''''CC''''''C'''
+                                         X               XX         X X X     XX    X  XX  X X X       XX X  X   X  XXXX  XXXXXX XXX
+                                         C               CC         C C C     CC    C  CC  C C C       CC C  C   C  CCCC  CCCCCC CCC
 """""""""""""""""""""""""++"""""""""""""""""""""""""""""""""""-"""""""""""""""-""""-"-""""-"-"-"""------"-"-"""""-------"-----------
++++++++++++++++++++++++++CC+++++++++++++++++++++++++++++++++++.+++++++++++++++.++++.+.++++.+.+.+++......+.+.+++++.......+...........
+CCCCCCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCC'CCCC'C'CCCC'C'C'CCC''''''C'C'CCCCC'''''''C'''''''''''
+                                                              X               X    X X    X X X   XXXXXX X X     XXXXXXX XXXXXXXXXXX
+                                                              C               C    C C    C C C   CCCCCC C C     CCCCCCC CCCCCCCCCCC
 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""-""--"""-""""-"""-""""""""""""-""""""----"------------"-----
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.++..+++.++++.+++.++++++++++++.++++++....+............+.....
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CC''CCC'CCCC'CCC'CCCCCCCCCCCC'CCCCCC''''C''''''''''''C'''''
+                                                                        X  XX   X    X   X            X      XXXX XXXXXXXXXXXX XXXXX
+                                                                        C  CC   C    C   C            C      CCCC CCCCCCCCCCCC CCCCC
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""--""--"--"--"""-"--"""-"""-""""""--"-"-"--"----------+-----
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++..++..+..+..+++.+..+++.+++.++++++..+.+.+..+..........C.....
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CC''C''C''CCC'C''CCC'CCC'CCCCCC''C'C'C''C'''''''''' '''''
+                                                                         XX  XX XX XX   X XX   X   X      XX X X XX XXXXXXXXXX XXXXX
+                                                                         CC  CC CC CC   C CC   C   C      CC C C CC CCCCCCCCCC CCCCC
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+"""""""""""""""-"-"-""-"--""-""--""-"--""""""--"---""-"--"---"-"---"--
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++C+++++++++++++++.+.+.++.+..++.++..++.+..++++++..+...++.+..+...+.+...+..
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC'C'C'CC'C''CC'CC''CC'C''CCCCCC''C'''CC'C''C'''C'C'''C''
+                                                                             X X X  X XX  X  XX  X XX      XX XXX  X XX XXX X XXX XX
+                                                                             C C C  C CC  C  CC  C CC      CC CCC  C CC CCC C CCC CC
 """"""""""""""""""""""""""""""""""""""""-"""""""""""-""""""""""""-"""""""""""""-""""-""--""--""-"""-""---""""-"--""--""---""---"----
+++++++++++++++++++++++++++++++++++++++++.+++++++++++.++++++++++++.+++++++++++++.++++.++..++..++.+++.++...++++.+..++..++...++...+....
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCCC'CCCCCCCCCCCC'CCCCCCCCCCCCC'CCCC'CC''CC''CC'CCC'CC'''CCCC'C''CC''CC'''CC'''C''''
+                                        X           X            X             X    X  XX  XX  X   X  XXX    X XX  XX  XXX  XXX XXXX
+                                        C           C            C             C    C  CC  CC  C   C  CCC    C CC  CC  CCC  CCC CCCC
 """""""""""""""""""""++"""""""""""""""""""""""""""+""""""""""""""""""""""""""-""""""--"-"""-"""""-"-"""-""-""--"-"--------""---"--""
++++++++++++++++++++++CC+++++++++++++++++++++++++++C++++++++++++++++++++++++++.++++++..+.+++.+++++.+.+++.++.++..+.+........++...+..++
+CCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCC''C'CCC'CCCCC'C'CCC'CC'CC''C'C''''''''CC'''C''CC
+                                                                             X      XX X   X     X X   X  X  XX X XXXXXXXX  XXX XX
+                                                                             C      CC C   C     C C   C  C  CC C CCCCCCCC  CCC CC
 +""""+""""""""""""+""++""""""""""""""""""""""""""""""""""""""""""""""""""""""--""""""""-"""-"-""""-""""""""-"""-"-"""""""-""-"--"---
+C++++C++++++++++++C++CC++++++++++++++++++++++++++++++++++++++++++++++++++++++..++++++++.+++.+.++++.++++++++.+++.+.+++++++.++.+..+...
+ CCCC CCCCCCCCCCCC CC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CCCCCCCC'CCC'C'CCCC'CCCCCCCC'CCC'C'CCCCCCC'CC'C''C'''
+                                                                             XX        X   X X    X        X   X X       X  X XX XXX
+                                                                             CC        C   C C    C        C   C C       C  C CC CCC
 +"+""""+++""+"""""""""+"""""+""+"""""""""""+++""""""+""""""""""""""-"""""""""""""""""--"""""""-""""-""""""-""-"""""""""""---"--"---"
+C+C++++CCC++C+++++++++C+++++C++C+++++++++++CCC++++++C++++++++++++++.+++++++++++++++++..+++++++.++++.++++++.++.+++++++++++...+..+...+
+ C CCCC   CC CCCCCCCCC CCCCC CC CCCCCCCCCCC   CCCCCC CCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCC''CCCCCCC'CCCC'CCCCCC'CC'CCCCCCCCCCC'''C''C'''C
+                                                                   X                 XX       X    X      X  X           XXX XX XXX
+                                                                   C                 CC       C    C      C  C           CCC CC CCC
 """+""++""""""""""""+"""""""""""""""""""""""""""""""""""""""""""""""""""""""--"""-"-""""-""""""""-"""""-""""""-"""""-"""""-"""---"--
++++C++CC++++++++++++C+++++++++++++++++++++++++++++++++++++++++++++++++++++++..+++.+.++++.++++++++.+++++.++++++.+++++.+++++.+++...+..
+CCC CC  CCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC''CCC'C'CCCC'CCCCCCCC'CCCCC'CCCCCC'CCCCC'CCCCC'CCC'''C''
+                                                                            XX   X X    X        X     X      X     X     X   XXX XX
+                                                                            CC   C C    C        C     C      C     C     C   CCC CC
 ++""""""""""""""""""""""""""""""+"""""""""""""""""""""""""""""""""""""""""-""""""-""""+"""""""""""""""""""""-""""""""""-"---""----"-
+CC++++++++++++++++++++++++++++++C+++++++++++++++++++++++++++++++++++++++++.++++++.++++C+++++++++++++++++++++.++++++++++.+...++....+.
+  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCC'CCCC CCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCC'C'''CC''''C'
+                                                                          X      X                          X          X XXX  XXXX X
+                                                                          C      C                          C          C CCC  CCCC C
 ++""""+"""""""""""+""+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""-=""""""-"""-""""""""-""""-""""""-------"------
+CC++++C+++++++++++C++C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.C++++++.+++.++++++++.++++.++++++.......+......
+  CCCC CCCCCCCCCCC CC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC' CCCCCC'CCC'CCCCCCCC'CCCC'CCCCCC'''''''C''''''
+                                                                                     X       X   X        X    X      XXXXXXX XXXXXX
+                                                                                     C       C   C        C    C      CCCCCCC CCCCCC
 +"++"""""+""""+"""""+=""""+"""""+""""""""""++"""""""""""""""+"""""-""""""""""""""""""""""""""""""""""-"-""""""-"""""""-"----"-"-"---
+C+CC+++++C++++C+++++CC++++C+++++C++++++++++CC+++++++++++++++C+++++.++++++++++++++++++++++++++++++++++.+.++++++.+++++++.+....+.+.+...
+ C  CCCCC CCCC CCCCC  CCCC CCCCC CCCCCCCCCC  CCCCCCCCCCCCCCC CCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'C'CCCCCC'CCCCCCC'C''''C'C'C'''
+                                                                  X                                  X X      X       X XXXX X X XXX
+                                                                  C                                  C C      C       C CCCC C C CCC
 +"+"""""""""+"""""""+"+""""++""""""""""""""""""""""++""""""""""""""""""""""""""-"""""""""--"""""""""-"-""--"-""-""""-"---"-"-----"-"
+C+C+++++++++C+++++++C+C++++CC++++++++++++++++++++++CC++++++++++++++++++++++++++.+++++++++..+++++++++.+.++..+.++.++++.+...+.+.....+.+
+ C CCCCCCCCC CCCCCCC C CCCC  CCCCCCCCCCCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCC''CCCCCCCCC'C'CC''C'CC'CCCC'C'''C'C'''''C'C
+                                                                               X         XX         X X  XX X  X    X XXX X XXXXX X
+                                                                               C         CC         C C  CC C  C    C CCC C CCCCC C
 +"""""""+""++"+""""""""""+"""+"""""""""+""""""""""""="""+"""""""""""""""""""""""""""""""-"-""""""""""""""--"""""""-""-"-""""---"""--
+C+++++++C++CC+C++++++++++C+++C+++++++++C++++++++++++C+++C+++++++++++++++++++++++++++++++.+.++++++++++++++..+++++++.++.+.++++...+++..
+ CCCCCCC CC  C CCCCCCCCCC CCC CCCCCCCCC CCCCCCCCCCCC CCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'C'CCCCCCCCCCCCCC''CCCCCCC'CC'C'CCCC'''CCC''
+                                                                                        X X              XX       X  X X    XXX   XX
+                                                                                        C C              CC       C  C C    CCC   CC
 +""++++"""""++"""""""++""""+""""""""+""""""+""""""""""""""""""""""""-""""""""""-""""""""-"""-"-""""""""-"""-"--"""-"-"-"""-----"----
+C++CCCC+++++CC+++++++CC++++C++++++++C++++++C++++++++++++++++++++++++.++++++++++.++++++++.+++.+.++++++++.+++.+..+++.+.+.+++.....+....
+ CC    CCCCC  CCCCCCC  CCCC CCCCCCCC CCCCCC CCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCC'CCCCCCCC'CCC'C'CCCCCCCC'CCC'C''CCC'C'C'CCC'''''C''''
+                                                                    X          X        X   X X        X   X XX   X X X   XXXXX XXXX
+                                                                    C          C        C   C C        C   C CC   C C C   CCCCC CCCC
 +++"++"++""""""+""""+""""""++""""+"""""""""""""""""""+"""""""""""""--""""""""+""""""""""-"""-""-"""-"-"""""""-"-"-"-"-----"-"-------
+CCC+CC+CC++++++C++++C++++++CC++++C+++++++++++++++++++C+++++++++++++..++++++++C++++++++++.+++.++.+++.+.+++++++.+.+.+.+.....+.+.......
+   C  C  CCCCCC CCCC CCCCCC  CCCC CCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC''CCCCCCCC CCCCCCCCCC'CCC'CC'CCC'C'CCCCCCC'C'C'C'C'''''C'C'''''''
+                                                                   XX                   X   X  X   X X       X X X X XXXXX X XXXXXXX
+                                                                   CC                   C   C  C   C C       C C C C CCCCC C CCCCCCC
 +""""""+"+""+"""""""""""""""""""++""""""+""""""""""""""""""""""""""""""""""""+"""""""""+-""""""-""""""-"""""""--"""---"-"-----""-"--
+C++++++C+C++C+++++++++++++++++++CC++++++C++++++++++++++++++++++++++++++++++++C+++++++++C.++++++.++++++.+++++++..+++...+.+.....++.+..
+ CCCCCC C CC CCCCCCCCCCCCCCCCCCC  CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCC 'CCCCCC'CCCCCC'CCCCCCC''CCC'''C'C'''''CC'C''
+                                                                                        X      X      X       XX   XXX X XXXXX  X XX
+                                                                                        C      C      C       CC   CCC C CCCCC  C CC
 +"+""""++"""""""""""""++"""""""""""""""""""""""""""""""""""""+"""""""""""""""""""""""""""""-"""""-""""""""-""""""""--"--"""---"---"-
+C+C++++CC+++++++++++++CC+++++++++++++++++++++++++++++++++++++C+++++++++++++++++++++++++++++.+++++.++++++++.++++++++..+..+++...+...+.
+ C CCCC  CCCCCCCCCCCCC  CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC'CCCCCCCC'CCCCCCCC''C''CCC'''C'''C'
+                                                                                           X     X        X        XX XX   XXX XXX X
+                                                                                           C     C        C        CC CC   CCC CCC C
 +"++""++"""+""+"""""+""""""""""""+""""""""""""+"""+"+""+"""""+""""""""""""""""""=""""""-"""""""""""-""--"""""""-"""--"---"--"-"---""
+C+CC++CC+++C++C+++++C++++++++++++C++++++++++++C+++C+C++C+++++C++++++++++++++++++C++++++.+++++++++++.++..+++++++.+++..+...+..+.+...++
+ C  CC  CCC CC CCCCC CCCCCCCCCCCC CCCCCCCCCCCC CCC C CC CCCCC CCCCCCCCCCCCCCCCCC CCCCCC'CCCCCCCCCCC'CC''CCCCCCC'CCC''C'''C''C'C'''CC
+                                                                                       X           X  XX       X   XX XXX XX X XXX
+                                                                                       C           C  CC       C   CC CCC CC C CCC
 ++++"++"+"+"+""+""""+"+++"""""++"+"+++""""""""""""+"+"""""""""""""""""""+""""""""""-""""""""""""""""""-""""""""""""-"-""""--""------
+CCCC+CC+C+C+C++C++++C+CCC+++++CC+C+CCC++++++++++++C+C+++++++++++++++++++C++++++++++.++++++++++++++++++.++++++++++++.+.++++..++......
+    C  C C C CC CCCC C   CCCCC  C C   CCCCCCCCCCCC C CCCCCCCCCCCCCCCCCCC CCCCCCCCCC'CCCCCCCCCCCCCCCCCC'CCCCCCCCCCCC'C'CCCC''CC''''''
+                                                                                   X                  X            X X    XX  XXXXXX
+                                                                                   C                  C            C C    CC  CCCCCC
 ""++++"++""+"""""""+"""++"+"""""+"""+""""""+""""""""""""""""""+"""""""""""""""""""""""""""""""""""""""""-"""""-"""--"---"-"-"--"---"
+++CCCC+CC++C+++++++C+++CC+C+++++C+++C++++++C++++++++++++++++++C+++++++++++++++++++++++++++++++++++++++++.+++++.+++..+...+.+.+..+...+
+CC    C  CC CCCCCCC CCC  C CCCCC CCC CCCCCC CCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC'CCC''C'''C'C'C''C'''C
+                                                                                                        X     X   XX XXX X X XX XXX
+                                                                                                        C     C   CC CCC C C CC CCC
 ++"+"++"""+""+"+"""+"+"+"++"""""+"+"+"+""""""+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""-"""""--"""""""""----
+CC+C+CC+++C++C+C+++C+C+C+CC+++++C+C+C+C++++++C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++..+++++++++....
+  C C  CCC CC C CCC C C C  CCCCC C C C CCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCC''CCCCCCCCC''''
+                                                                                                               X     XX         XXXX
+                                                                                                               C     CC         CCCC
 +++++++""+"""+"""++""""+"+""""""+++"+"+""""""""""""""""""""""+""""""""""+""""""-"""""""""""""""""-""""""""""""""""""""""--"""-""-"--
+CCCCCCC++C+++C+++CC++++C+C++++++CCC+C+C++++++++++++++++++++++C++++++++++C++++++.+++++++++++++++++.++++++++++++++++++++++..+++.++.+..
+       CC CCC CCC  CCCC C CCCCCC   C C CCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCC CCCCCC'CCCCCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCC''CCC'CC'C''
+                                                                               X                 X                      XX   X  X XX
+                                                                               C                 C                      CC   C  C CC
 ++++"++++++""+"+""""+"+"""""+"""""+""+"""""""+"""+"+"+"""+""""""+""+""+""+"""""-"""-"""""""""-"-""--"""""""""""""""-""""""-""-"-"-""
+CCCC+CCCCCC++C+C++++C+C+++++C+++++C++C+++++++C+++C+C+C+++C++++++C++C++C++C+++++.+++.+++++++++.+.++..+++++++++++++++.++++++.++.+.+.++
+    C      CC C CCCC C CCCCC CCCCC CC CCCCCCC CCC C C CCC CCCCCC CC CC CC CCCCC'CCC'CCCCCCCCC'C'CC''CCCCCCCCCCCCCCC'CCCCCC'CC'C'C'CC
+                                                                               X   X         X X  XX               X      X  X X X
+                                                                               C   C         C C  CC               C      C  C C C
 ++"++"++++"+"+""""""+"""+""+""""++""++""""""+"""+"""""""+"+"""""""""""""""""""""""""""""+""""-"-""""""""""""-"""""""""""-"""""""-"-"
+CC+CC+CCCC+C+C++++++C+++C++C++++CC++CC++++++C+++C+++++++C+C+++++++++++++++++++++++++++++C++++.+.++++++++++++.+++++++++++C+++++++.+.+
+  C  C    C C CCCCCC CCC CC CCCC  CC  CCCCCC CCC CCCCCCC C CCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCC'C'CCCCCCCCCCCC'CCCCCCCCCCC CCCCCCC'C'C
+                                                                                             X X            X                   X X
+                                                                                             C C            C                   C C
 +++++++++"++"""+"+"++++""+"+""++"+++"++"+"""""""""""""""""+""""""+"""""""+"""""""""""""""""""""""-""""""""+"""""""""""""Z"""""""""""
+CCCCCCCCC+CC+++C+C+CCCC++C+C++CC+CCC+CC+C+++++++++++++++++C++++++C+++++++C+++++++++++++++++++++++.++++++++C+++++++++++++ +++++++++++
+         C  CCC C C    CC C CC  C   C  C CCCCCCCCCCCCCCCCC CCCCCC CCCCCCC CCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCC CCCCCCCCCCCCC CCCCCCCCCCC
+                                                                                                 X
+                                                                                                 C
 +++++++++""+""++"""++++""""""""+++++""++"""++""""+"""""+"""+""""""""""""+""+""""""""""""+""""""""""""""""""""""""""""-"-+"""""""""""
+CCCCCCCCC++C++CC+++CCCC++++++++CCCCC++CC+++CC++++C+++++C+++C++++++++++++C++C++++++++++++C++++++++++++++++++++++++++++.+.C+++++++++++
+         CC CC  CCC    CCCCCCCC     CC  CCC  CCCC CCCCC CCC CCCCCCCCCCCC CC CCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCC'C' CCCCCCCCCCC
+                                                                                                                     X X
+                                                                                                                     C C
 ++++++""+""+""+++"++++"+"+""+"+++"+++"""""""""""+"""++"+"""""+"""""""""""""""""""+"""""--""""""""""""""""""""""""""""""-+-"--"-""--"
+CCCCCC++C++C++CCC+CCCC+C+C++C+CCC+CCC+++++++++++C+++CC+C+++++C+++++++++++++++++++C+++++..++++++++++++++++++++++++++++++.C.+..+.++..+
+      CC CC CC   C    C C CC C   C   CCCCCCCCCCC CCC  C CCCCC CCCCCCCCCCCCCCCCCCC CCCCC''CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC' 'C''C'CC''C
+                                                                                       XX                              X X XX X  XX
+                                                                                       CC                              C C CC C  CC
 ++++++++"+++++++++++++++"++"++++++""""+"""+"""+"""""""""++""+""""""++"""""+""""""""""""""-"""""""""""""""""""""""""""""""-"""""""---
+CCCCCCCC+CCCCCCCCCCCCCCC+CC+CCCCCC++++C+++C+++C+++++++++CC++C++++++CC+++++C++++++++++++++.+++++++++++++++++++++++++++++++.+++++++...
+        C               C  C      CCCC CCC CCC CCCCCCCCC  CC CCCCCC  CCCCC CCCCCCCCCCCCCC'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCC'''
+                                                                                         X                               X       XXX
+                                                                                         C                               C       CCC
 +"+++++++++"++++"++++++"++++++"+++""+"++""+"+"+"""""+""""""+"+""++""+""""""""""""""+"""""""""""""""""""""""""""""-"""""""""""+""""""
+C+CCCCCCCCC+CCCC+CCCCCC+CCCCCC+CCC++C+CC++C+C+C+++++C++++++C+C++CC++C++++++++++++++C+++++++++++++++++++++++++++++.+++++++++++C++++++
+ C         C    C      C      C   CC C  CC C C CCCCC CCCCCC C CC  CC CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCC'CCCCCCCCCCC CCCCCC
+                                                                                                                 X
+                                                                                                                 C
 +++++++++++++++""+"+++++++++++"+++"+""++"++++++++++++++""""+""++++""""""""++"++""""""+""""+""""""""""""+"""""""""""""""""""""""""""+
+CCCCCCCCCCCCCCC++C+CCCCCCCCCCC+CCC+C++CC+CCCCCCCCCCCCCC++++C++CCCC++++++++CC+CC++++++C++++C++++++++++++C+++++++++++++++++++++++++++C
+               CC C           C   C CC  C              CCCC CC    CCCCCCCC  C  CCCCCC CCCC CCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCC
 ++++++++++++++"+++++++"++++++++++++++++""++++++++++++++""+++=""+++"++"+""""+""""""-""""+""""""""""""""++"""++"""+"+""""-""""""""""="
+CCCCCCCCCCCCCC+CCCCCCC+CCCCCCCCCCCCCCCC++CCCCCCCCCCCCCC++CCCC++CCC+CC+C++++C++++++.++++C++++++++++++++CC+++CC+++C+C++++.++++++++++C+
+              C       C                CC              CC    CC   C  C CCCC CCCCCC'CCCC CCCCCCCCCCCCCC  CCC  CCC C CCCC'CCCCCCCCCC C
+                                                                                  X                                    X
+                                                                                  C                                    C
 ++++++++++++++++++++++++++=++++++++++++"++++++++++"""+"+""""++++""+"+"+++++"""+""""""+"""""+"+"++""""+""""""""""""""""""""""""""""""
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCC+++C+C++++CCCC++C+C+CCCCC+++C++++++C+++++C+C+CC++++C++++++++++++++++++++++++++++++
+                                       C          CCC C CCCC    CC C C     CCC CCCCCC CCCCC C C  CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
1
-
0                                            PRINCETON UNIVERSITY COMPUTER CENTER CLINIC
-
-
-
-
-
                                                            +------------+
                                                            +            +
                                                            + COMPUTER   +
                                                            +            +
                                                            +    PICTURE +
                                                            +            +
                                                            +------------+
-
-
-
-                                                              THE MOON
-                                                   COMPUTER TRANSCRIPTION PROCESS
0                                                                 BY
0                                                         SAMUEL P. HARBISON
0                                                       COMPUTER CENTER CLINIC
                                                         PRINCETON UNIVERSITY
                                                           87 PROSPECT ST.
                                                     PRINCETON, NEW JERSEY 08540
-                                                  COPYRIGHT 1973 BY S. P. HARBISON
-                                                       SHEET  5 OF  5 SHEETS
-                         THE COMPLETE PICTURE IS CONSTRUCTED BY TAPING THE SHEETS TOGETHER SO THAT THE
                          LAST CHARACTER ON THE FIRST SHEET MEETS THE FIRST CHARACTER ON THE NEXT SHEET
                          WITH NO WHITE SPACE BETWEEN THEM.  THIS WILL REQUIRE TRIMMING THE SHEETS WITH
                          SCISSORS.  DO NOT PUT TAPE ON THE PRINTED SIDE OF THE PAPER; TAPE FROM BEHIND.
-
-
-
-
-
-
0
 -"--"-"-"-----"---"---"----------"-------"--"-------"--"----"------#
+.C..C.+.+.....C...+...+..........+.......C..C.......+..+....C......X
+'B''B'C'C'''''B'''C'''C''''''''''C'''''''B''B'''''''C''C''''B''''''$
+XHXXHX X XXXXXHXXX XXX XXXXXXXXXX XXXXXXXHXXHXXXXXXX XX XXXXHXXXXXX_
+CXCCXC C CCCCCXCCC CCC CCCCCCCCCC CCCCCCCXCCXCCCCCCC CC CCCCXCCCCCC&
 ---"---------------------------""-------"------"------"------------#
+...+...........................CC.......C......C......C............X
+'''C'''''''''''''''''''''''''''BB'''''''B''''''B''''''B''''''''''''$
+XXX XXXXXXXXXXXXXXXXXXXXXXXXXXXHHXXXXXXXHXXXXXXHXXXXXXHXXXXXXXXXXXX_
+CCC CCCCCCCCCCCCCCCCCCCCCCCCCCCXXCCCCCCCXCCCCCCXCCCCCCXCCCCCCCCCCCC&
 --""--"--"-----------------------------"--+----------"-------------#
+..CC..C..C.............................C..C..........C.............X
+''BB''B''B'''''''''''''''''''''''''''''B'' ''''''''''B'''''''''''''$
+XXHHXXHXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXX XXXXXXXXXXHXXXXXXXXXXXXX_
+CCXXCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC CCCCCCCCCCXCCCCCCCCCCCCC&
 """"-""--------"--------------"---"---"----------------"------"----#
+CCCC.CC........C..............C...C...C................C......+....X
+BBBB'BB''''''''B''''''''''''''B'''B'''B''''''''''''''''B''''''C''''$
+HHHHXHHXXXXXXXXHXXXXXXXXXXXXXXHXXXHXXXHXXXXXXXXXXXXXXXXHXXXXXX XXXX_
+XXXXCXXCCCCCCCCXCCCCCCCCCCCCCCXCCCXCCCXCCCCCCCCCCCCCCCCXCCCCCC CCCC&
 -"""""-------"-"-""---""-"-"-------"------"-----------"----""----"-#
+.CCCCC.......+.C.CC...C+.C.C.......C.C....+...........C....++....C.X
+'BBBBB'''''''C'B'BB'''BC'B'B'''''''B' ''''C'''''''''''B''''CC''''B'$
+XHHHHHXXXXXXX XHXHHXXXH XHXHXXXXXXXHX XXXX XXXXXXXXXXXHXXXX  XXXXHX_
+CXXXXXCCCCCCC CXCXXCCCX CXCXCCCCCCCXC CCCC CCCCCCCCCCCXCCCC  CCCCXC&
 """"""---""------"""-+--------"---"--------"""--""------"--"""-"-""#
+CCCCCC...CC......CCC.C........C...C........CCC..CC......C..CCC.C.CCX
+BBBBBB'''BB''''''BBB' ''''''''B'''B''''''''BBB''BB''''''B''BBB'B'BB$
+HHHHHHXXXHHXXXXXXHHHX XXXXXXXXHXXXHXXXXXXXXHHHXXHHXXXXXXHXXHHHXHXHH_
+XXXXXXCCCXXCCCCCCXXXC CCCCCCCCXCCCXCCCCCCCCXXXCCXXCCCCCCXCCXXXCXCXX&
 --"""---""-"--""-"--"""----------"---"----"--"--"-----------"-"---"#
+..CCC...CC.C..CC.C..CCC..........C...C....C..C..C...........C.C...CX
+''BBB'''BB'B''BB'B''BBB''''''''''B'''B''''B''B''B'''''''''''B'B'''B$
+XXHHHXXXHHXHXXHHXHXXHHHXXXXXXXXXXHXXXHXXXXHXXHXXHXXXXXXXXXXXHXHXXXH_
+CCXXXCCCXXCXCCXXCXCCXXXCCCCCCCCCCXCCCXCCCCXCCXCCXCCCCCCCCCCCXCXCCCX&
 -"""""------""-""------------""-""-""-"---"----"---------------"-""#
+.CCCCC......CC.CC............CC.CC.CC.C...C....C...............C.CCX
+'BBBBB''''''BB'BB''''''''''''BB'BB'BB'B'''B''''B'''''''''''''''B'BB$
+XHHHHHXXXXXXHHXHHXXXXXXXXXXXXHHXHHXHHXHXXXHXXXXHXXXXXXXXXXXXXXXHXHH_
+CXXXXXCCCCCCXXCXXCCCCCCCCCCCCXXCXXCXXCXCCCXCCCCXCCCCCCCCCCCCCCCXCXX&
 -""---"--"-----------"-----"--"---"-----"--""""---"-"---""-"-------#
+.CC...C..C...........C.....C..C...+.....C..+CCC...C.C...CC.C.......X
+'BB'''B''B'''''''''''B'''''B''B'''C'''''B''CBBB'''B'B'''BB'B'''''''$
+XHHXXXHXXHXXXXXXXXXXXHXXXXXHXXHXXX XXXXXHXX HHHXXXHXHXXXHHXHXXXXXXX_
+CXXCCCXCCXCCCCCCCCCCCXCCCCCXCCXCCC CCCCCXCC XXXCCCXCXCCCXXCXCCCCCCC&
 ""--""-"-------"""------""--------""--""---------"-----------"-"---#
+CC..CC.C.......CCC......CC........C+..+C.........C...........C.C...X
+BB''BB'B'''''''BBB''''''BB''''''''BC''CB'''''''''B'''''''''''B'B'''$
+HHXXHHXHXXXXXXXHHHXXXXXXHHXXXXXXXXH XX HXXXXXXXXXHXXXXXXXXXXXHXHXXX_
+XXCCXXCXCCCCCCCXXXCCCCCCXXCCCCCCCCX CC XCCCCCCCCCXCCCCCCCCCCCXCXCCC&
 """"""""-------"----"-----""-"--""""-""-""-"""--""--------"--"-----#
+CCCCCCCC.......C....C.....CC.C..CCCC.CC.CC.CCC..CC........C..C.....X
+BBBBBBBB'''''''B''''B'''''BB'B''BBBB'BB'BB'BBB''BB''''''''B''B'''''$
+HHHHHHHHXXXXXXXHXXXXHXXXXXHHXHXXHHHHXHHXHHXHHHXXHHXXXXXXXXHXXHXXXXX_
+XXXXXXXXCCCCCCCXCCCCXCCCCCXXCXCCXXXXCXXCXXCXXXCCXXCCCCCCCCXCCXCCCCC&
 """""""""-----"----"-"------""---""""""--""""----"---"---"-------""#
+CCCCCCCCC.....C....C.C......CC...CCCCCC..CCCC....C...C...C.......CCX
+BBBBBBBBB'''''B''''B'B''''''BB'''BBBBBB''BBBB''''B'''B'''B'''''''BB$
+HHHHHHHHHXXXXXHXXXXHXHXXXXXXHHXXXHHHHHHXXHHHHXXXXHXXXHXXXHXXXXXXXHH_
+XXXXXXXXXCCCCCXCCCCXCXCCCCCCXXCCCXXXXXXCCXXXXCCCCXCCCXCCCXCCCCCCCXX&
 --"--"---"--"-""---------"-----"""-"""-""--"--"-"-""-"-"--"--"--"-"#
+..C..C...C..C.CC.........C.....CCC.C+C.CC..C..C.C.CC.C.C..C..C..C.CX
+''B''B'''B''B'BB'''''''''B'''''BBB'BCB'BB''B''B'B'BB'B'B''B''B''B'B$
+XXHXXHXXXHXXHXHHXXXXXXXXXHXXXXXHHHXH HXHHXXHXXHXHXHHXHXHXXHXXHXXHXH_
+CCXCCXCCCXCCXCXXCCCCCCCCCXCCCCCXXXCX XCXXCCXCCXCXCXXCXCXCCXCCXCCXCX&
 """"""""-""--"""----"---"""""--""-"""""-""""-----"------"-"--""-"""#
+CCCCCCCC.CC..CCC....C...CCCCC..CC.CCCCC.CCCC.....C......C.C..CC.CCCX
+BBBBBBBB'BB''BBB''''B'''BBBBB''BB'BBBBB'BBBB'''''B''''''B'B''BB'BBB$
+HHHHHHHHXHHXXHHHXXXXHXXXHHHHHXXHHXHHHHHXHHHHXXXXXHXXXXXXHXHXXHHXHHH_
+XXXXXXXXCXXCCXXXCCCCXCCCXXXXXCCXXCXXXXXCXXXXCCCCCXCCCCCCXCXCCXXCXXX&
 --"""""------"""--"-"---"""-----"--""-"---"-"--------""-"--"-""-""-#
+..CCCCC......CCC..C.C...CCC.....C..CC.C...C.C........CC.C..C.CC.CC.X
+''BBBBB''''''BBB''B'B'''BBB'''''B''BB'B'''B'B''''''''BB'B''B'BB'BB'$
+XXHHHHHXXXXXXHHHXXHXHXXXHHHXXXXXHXXHHXHXXXHXHXXXXXXXXHHXHXXHXHHXHHX_
+CCXXXXXCCCCCCXXXCCXCXCCCXXXCCCCCXCCXXCXCCCXCXCCCCCCCCXXCXCCXCXXCXXC&
 --"""-"-""-"--"-"--"-------"-----"----"---""-"--"-""---""-"""----""#
+..CCC.C.CC.C..C.C..C.......C.....C....C...CC.C..C.CC...CC.CCC....CCX
+''BBB'B'BB'B''B'B''B'''''''B'''''B''''B'''BB'B''B'BB'''BB'BBB''''BB$
+XXHHHXHXHHXHXXHXHXXHXXXXXXXHXXXXXHXXXXHXXXHHXHXXHXHHXXXHHXHHHXXXXHH_
+CCXXXCXCXXCXCCXCXCCXCCCCCCCXCCCCCXCCCCXCCCXXCXCCXCXXCCCXXCXXXCCCCXX&
 --"-""-"---"---"""--""---"""----"-"-"--"""----"---------""--"-"----#
+..C.CC.C...C...CCC..CC...CCC....C.C.C..CCC....C.........CC..C.C....X
+''B'BB'B'''B'''BBB''BB'''BBB''''B'B'B''BBB''''B'''''''''BB''B'B''''$
+XXHXHHXHXXXHXXXHHHXXHHXXXHHHXXXXHXHXHXXHHHXXXXHXXXXXXXXXHHXXHXHXXXX_
+CCXCXXCXCCCXCCCXXXCCXXCCCXXXCCCCXCXCXCCXXXCCCCXCCCCCCCCCXXCCXCXCCCC&
 -"""""""-"-""""--"--"------""--"-"-"""-"--""---""--""--""-""----"--#
+.CCCCCCC.C.CCCC..C..C......CC..C.C.CCC.C..CC...CC..CC..CC.CC....C..X
+'BBBBBBB'B'BBBB''B''B''''''BB''B'B'BBB'B''BB'''BB''BB''BB'BB''''B''$
+XHHHHHHHXHXHHHHXXHXXHXXXXXXHHXXHXHXHHHXHXXHHXXXHHXXHHXXHHXHHXXXXHXX_
+CXXXXXXXCXCXXXXCCXCCXCCCCCCXXCCXCXCXXXCXCCXXCCCXXCCXXCCXXCXXCCCCXCC&
 "-""""-"-"-"""""""----"--""""""""""--"""---""-"""----"-""-"-"------#
+C.CCCC.C.C.CCCCCCC....C..CCCCCCCCCC..CCC...CC.CCC....C.CC.C.C......X
+B'BBBB'B'B'BBBBBBB''''B''BBBBBBBBBB''BBB'''BB'BBB''''B'BB'B'B''''''$
+HXHHHHXHXHXHHHHHHHXXXXHXXHHHHHHHHHHXXHHHXXXHHXHHHXXXXHXHHXHXHXXXXXX_
+XCXXXXCXCXCXXXXXXXCCCCXCCXXXXXXXXXXCCXXXCCCXXCXXXCCCCXCXXCXCXCCCCCC&
 """"-"-"--"--""""----"----"--""""-"---""--"""-"-"--""-""-""-"--"-"-#
+CCCC.C.C..C..CCCC....C....C..CCCC.C...CC..CCC.C.C..CC.CC.CC.C..C.C.X
+BBBB'B'B''B''BBBB''''B''''B''BBBB'B'''BB''BBB'B'B''BB'BB'BB'B''B'B'$
+HHHHXHXHXXHXXHHHHXXXXHXXXXHXXHHHHXHXXXHHXXHHHXHXHXXHHXHHXHHXHXXHXHX_
+XXXXCXCXCCXCCXXXXCCCCXCCCCXCCXXXXCXCCCXXCCXXXCXCXCCXXCXXCXXCXCCXCXC&
 """"""""-""-""---"""""--"-"-"--""-"""""""-"-""--"--""--"-"""---"-""#
+CCCCCCCC.CC.CC...CCCCC..C.C.C..CC.CCCCCCC.C.CC..C..CC..C.CCC...C.CCX
+BBBBBBBB'BB'BB'''BBBBB''B'B'B''BB'BBBBBBB'B'BB''B''BB''B'BBB'''B'BB$
+HHHHHHHHXHHXHHXXXHHHHHXXHXHXHXXHHXHHHHHHHXHXHHXXHXXHHXXHXHHHXXXHXHH_
+XXXXXXXXCXXCXXCCCXXXXXCCXCXCXCCXXCXXXXXXXCXCXXCCXCCXXCCXCXXXCCCXCXX&
 -"""-"""-"--"""""--""""--"""----"--"""-""""""""----"""""""""-----""#
+.CCC.CCC.C..CCCCC..CCCC..CCC....C..CCC.CCCCCCCC....CCCCCCCCC.....CCX
+'BBB'BBB'B''BBBBB''BBBB''BBB''''B''BBB'BBBBBBBB''''BBBBBBBBB'''''BB$
+XHHHXHHHXHXXHHHHHXXHHHHXXHHHXXXXHXXHHHXHHHHHHHHXXXXHHHHHHHHHXXXXXHH_
+CXXXCXXXCXCCXXXXXCCXXXXCCXXXCCCCXCCXXXCXXXXXXXXCCCCXXXXXXXXXCCCCCXX&
 """""-"-"--"-""""-""-----""""-"--""""-"--""""-"---""--"-"""-""-----#
+CCCCC.C.C..C.CCCC.CC.....CCCC.C..CCCC.C..CCCC.C...CC..C.CCC.CC.....X
+BBBBB'B'B''B'BBBB'BB'''''BBBB'B''BBBB'B''BBBB'B'''BB''B'BBB'BB'''''$
+HHHHHXHXHXXHXHHHHXHHXXXXXHHHHXHXXHHHHXHXXHHHHXHXXXHHXXHXHHHXHHXXXXX_
+XXXXXCXCXCCXCXXXXCXXCCCCCXXXXCXCCXXXXCXCCXXXXCXCCCXXCCXCXXXCXXCCCCC&
 """"""-"--"""""--"---"---""""""-""""""""""""--"""-""""""""""-""""""#
+CCCCCC.C..CCCCC..C...C...CCCCCC.CCCCCCCCCCCC..CCC.CCCCCCCCCC.CCCCCCX
+BBBBBB'B''BBBBB''B'''B'''BBBBBB'BBBBBBBBBBBB''BBB'BBBBBBBBBB'BBBBBB$
+HHHHHHXHXXHHHHHXXHXXXHXXXHHHHHHXHHHHHHHHHHHHXXHHHXHHHHHHHHHHXHHHHHH_
+XXXXXXCXCCXXXXXCCXCCCXCCCXXXXXXCXXXXXXXXXXXXCCXXXCXXXXXXXXXXCXXXXXX&
 """""--"----""--""--"-"---""--"-""-"""----"""-""""-"-"""""-""""-""-#
+CCCCC..C....CC..CC..C.C...CC..C.CC.CCC....CCC.CCCC.C.CCCCC.CCCC.CC.X
+BBBBB''B''''BB''BB''B'B'''BB''B'BB'BBB''''BBB'BBBB'B'BBBBB'BBBB'BB'$
+HHHHHXXHXXXXHHXXHHXXHXHXXXHHXXHXHHXHHHXXXXHHHXHHHHXHXHHHHHXHHHHXHHX_
+XXXXXCCXCCCCXXCCXXCCXCXCCCXXCCXCXXCXXXCCCCXXXCXXXXCXCXXXXXCXXXXCXXC&
 """""""""--"""-"""""-----""-""--"-"-"-"--""""-""-"-""--"----"---"""#
+CCCCCCCCC..CCC.CCCCC.....CC.CC..C.C.C.C..CCCC.CC.C.CC..C....C...CCCX
+BBBBBBBBB''BBB'BBBBB'''''BB'BB''B'B'B'B''BBBB'BB'B'BB''B''''B'''BBB$
+HHHHHHHHHXXHHHXHHHHHXXXXXHHXHHXXHXHXHXHXXHHHHXHHXHXHHXXHXXXXHXXXHHH_
+XXXXXXXXXCCXXXCXXXXXCCCCCXXCXXCCXCXCXCXCCXXXXCXXCXCXXCCXCCCCXCCCXXX&
 """"""""----"""""""-""-----"-"""-"""--"----""-"--"""----"--""""""--#
+CCCCCCCC....CCCCCCC.CC.....C.CCC.CCC..C....CC.C..CCC....C..CCCCCC..X
+BBBBBBBB''''BBBBBBB'BB'''''B'BBB'BBB''B''''BB'B''BBB''''B''BBBBBB''$
+HHHHHHHHXXXXHHHHHHHXHHXXXXXHXHHHXHHHXXHXXXXHHXHXXHHHXXXXHXXHHHHHHXX_
+XXXXXXXXCCCCXXXXXXXCXXCCCCCXCXXXCXXXCCXCCCCXXCXCCXXXCCCCXCCXXXXXXCC&
 """""""-"-""-""-""""-----""----""""""-""---"-"""""""-"--""""""-""""#
+CCCCCCC.C.CC.CC.CCCC.....CC....CCCCCC.CC...C.CCCCCCC.C..CCCCCC.CCCCX
+BBBBBBB'B'BB'BB'BBBB'''''BB''''BBBBBB'BB'''B'BBBBBBB'B''BBBBBB'BBBB$
+HHHHHHHXHXHHXHHXHHHHXXXXXHHXXXXHHHHHHXHHXXXHXHHHHHHHXHXXHHHHHHXHHHH_
+XXXXXXXCXCXXCXXCXXXXCCCCCXXCCCCXXXXXXCXXCCCXCXXXXXXXCXCCXXXXXXCXXXX&
 --""""----"""--"""""-""--""-"""-"""""-""""""""-"----""---"-"--"---"#
+..CCCC....CCC..CCCCC.CC..CC.CCC.CCCCC.CCCCCCCC.C....CC...C.C..C...CX
+''BBBB''''BBB''BBBBB'BB''BB'BBB'BBBBB'BBBBBBBB'B''''BB'''B'B''B'''B$
+XXHHHHXXXXHHHXXHHHHHXHHXXHHXHHHXHHHHHXHHHHHHHHXHXXXXHHXXXHXHXXHXXXH_
+CCXXXXCCCCXXXCCXXXXXCXXCCXXCXXXCXXXXXCXXXXXXXXCXCCCCXXCCCXCXCCXCCCX&
 """""""-""""-""""-"""""-""""---"---""-""-""-"""""-""""""--"""""""""#
+CCCCCCC.CCCC.CCCC.CCCCC.CCCC...C...CC.CC.CC.CCCCC.CCCCCC..CCCCCCCCCX
+BBBBBBB'BBBB'BBBB'BBBBB'BBBB'''B'''BB'BB'BB'BBBBB'BBBBBB''BBBBBBBBB$
+HHHHHHHXHHHHXHHHHXHHHHHXHHHHXXXHXXXHHXHHXHHXHHHHHXHHHHHHXXHHHHHHHHH_
+XXXXXXXCXXXXCXXXXCXXXXXCXXXXCCCXCCCXXCXXCXXCXXXXXCXXXXXXCCXXXXXXXXX&
 """""""""--"""--"-"""""--"""---"-"""""""-""""""""-""-"""""""""-""""#
+CCCCCCCCC..CCC..C.CCCCC..CCC...C.CCCCCCC.CCCCCCCC.CC.CCCCCCCCC.CCCCX
+BBBBBBBBB''BBB''B'BBBBB''BBB'''B'BBBBBBB'BBBBBBBB'BB'BBBBBBBBB'BBBB$
+HHHHHHHHHXXHHHXXHXHHHHHXXHHHXXXHXHHHHHHHXHHHHHHHHXHHXHHHHHHHHHXHHHH_
+XXXXXXXXXCCXXXCCXCXXXXXCCXXXCCCXCXXXXXXXCXXXXXXXXCXXCXXXXXXXXXCXXXX&
 """""""-"""-"--"-""-""---""""--""-""""-""""""""-""""-"""""--""""-""#
+CCCCCCC.CCC.C..C.CC.CC...CCCC..CC.CCCC.CCCCCCCC.CCCC.CCCCC..CCCC.CCX
+BBBBBBB'BBB'B''B'BB'BB'''BBBB''BB'BBBB'BBBBBBBB'BBBB'BBBBB''BBBB'BB$
+HHHHHHHXHHHXHXXHXHHXHHXXXHHHHXXHHXHHHHXHHHHHHHHXHHHHXHHHHHXXHHHHXHH_
+XXXXXXXCXXXCXCCXCXXCXXCCCXXXXCCXXCXXXXCXXXXXXXXCXXXXCXXXXXCCXXXXCXX&
 """""-"""""-"""""""-"-"---""-"-"""""""""--""""""---"-""---""---""-"#
+CCCCC.CCCCC.CCCCCCC.C.C...CC.C.CCCCCCCCC..CCCCCC...C.CC...CC...CC.CX
+BBBBB'BBBBB'BBBBBBB'B'B'''BB'B'BBBBBBBBB''BBBBBB'''B'BB'''BB'''BB'B$
+HHHHHXHHHHHXHHHHHHHXHXHXXXHHXHXHHHHHHHHHXXHHHHHHXXXHXHHXXXHHXXXHHXH_
+XXXXXCXXXXXCXXXXXXXCXCXCCCXXCXCXXXXXXXXXCCXXXXXXCCCXCXXCCCXXCCCXXCX&
 """""""-"-----"""--"-""--""""-""""""""""""""""-"""-""-"""""""--""""#
+CCCCCCC.C.....CCC..C.CC..CCCC.CCCCCCCCCC+CCCCC.CCC.CC.CCCCCCC..CCCCX
+BBBBBBB'B'''''BBB''B'BB''BBBB'BBBBBBBBBBCBBBBB'BBB'BB'BBBBBBB''BBBB$
+HHHHHHHXHXXXXXHHHXXHXHHXXHHHHXHHHHHHHHHH HHHHHXHHHXHHXHHHHHHHXXHHHH_
+XXXXXXXCXCCCCCXXXCCXCXXCCXXXXCXXXXXXXXXX XXXXXCXXXCXXCXXXXXXXCCXXXX&
 """""""""""-"--""""-"""--"""""""""""""-"""""-""--""""-"-""""--"""""#
+CCCCCCCCCCC.C..CCCC.CCC..CCCCCCCCCCCCC.CCCCC.CC..CCCC.C.CCCC..CCCCCX
+BBBBBBBBBBB'B''BBBB'BBB''BBBBBBBBBBBBB'BBBBB'BB''BBBB'B'BBBB''BBBBB$
+HHHHHHHHHHHXHXXHHHHXHHHXXHHHHHHHHHHHHHXHHHHHXHHXXHHHHXHXHHHHXXHHHHH_
+XXXXXXXXXXXCXCCXXXXCXXXCCXXXXXXXXXXXXXCXXXXXCXXCCXXXXCXCXXXXCCXXXXX&
 """""--""""-""-""""""--"-"""-""-""""""--""""""""""""""--"--""""""""#
+CCCCC..CCCC.CC.CCCCCC..C.CCC.CC.CCCCCC..CCCCCCCCCCCCCC..C..CCCCCCCCX
+BBBBB''BBBB'BB'BBBBBB''B'BBB'BB'BBBBBB''BBBBBBBBBBBBBB''B''BBBBBBBB$
+HHHHHXXHHHHXHHXHHHHHHXXHXHHHXHHXHHHHHHXXHHHHHHHHHHHHHHXXHXXHHHHHHHH_
+XXXXXCCXXXXCXXCXXXXXXCCXCXXXCXXCXXXXXXCCXXXXXXXXXXXXXXCCXCCXXXXXXXX&
 """"""-"-""""""""--""-"-""""""-"-"""""""""""""""""""""-"-""-"""""""#
+CCCCCC.C.CCCCCCCC..CC.C.CCCCCC.C.CCCCCCCCCCCCCCCCCCCCC.C.CC.CCCCCCCX
+BBBBBB'B'BBBBBBBB''BB'B'BBBBBB'B'BBBBBBBBBBBBBBBBBBBBB'B'BB'BBBBBBB$
+HHHHHHXHXHHHHHHHHXXHHXHXHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHXHXHHXHHHHHHH_
+XXXXXXCXCXXXXXXXXCCXXCXCXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXCXCXXCXXXXXXX&
 """"""""--"""-""""-"""--""""""""""""""""""""""""""""""""""-""""""""#
+CCCCCCCC..CCC.CCCC.CCC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCX
+BBBBBBBB''BBB'BBBB'BBB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBB$
+HHHHHHHHXXHHHXHHHHXHHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHH_
+XXXXXXXXCCXXXCXXXXCXXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXX&
 """"-""--"""-"""-""-"""--""""--"""""""""""""""-""""""-"""""""""""""#
+CCCC.CC..CCC.CCC.CC.CCC..CCCC..CCCCCCCCCCCCCCC.CCCCCC.CCCCCCCCCCCCCX
+BBBB'BB''BBB'BBB'BB'BBB''BBBB''BBBBBBBBBBBBBBB'BBBBBB'BBBBBBBBBBBBB$
+HHHHXHHXXHHHXHHHXHHXHHHXXHHHHXXHHHHHHHHHHHHHHHXHHHHHHXHHHHHHHHHHHHH_
+XXXXCXXCCXXXCXXXCXXCXXXCCXXXXCCXXXXXXXXXXXXXXXCXXXXXXCXXXXXXXXXXXXX&
 """""""-""""-""""""""""--"""""-""""""""""""""""-""--""-"""""""""""-#
+CCCCCCC.CCCC.CCCCCCCCCC..CCCCC.CCCCCCCCCCCCCCCC.CC..CC.CCCCCCCCCCC.X
+BBBBBBB'BBBB'BBBBBBBBBB''BBBBB'BBBBBBBBBBBBBBBB'BB''BB'BBBBBBBBBBB'$
+HHHHHHHXHHHHXHHHHHHHHHHXXHHHHHXHHHHHHHHHHHHHHHHXHHXXHHXHHHHHHHHHHHX_
+XXXXXXXCXXXXCXXXXXXXXXXCCXXXXXCXXXXXXXXXXXXXXXXCXXCCXXCXXXXXXXXXXXC&
 """"""""""-""""---"""""--"-"-""-""-""--"""""-"""-"""""""""""""--"""#
+CCCCCCCCCC.CCCC...CCCCC..C.C.CC.CC.CC..CCCCC.CCC.CCCCCCCCCCCCC..CCCX
+BBBBBBBBBB'BBBB'''BBBBB''B'B'BB'BB'BB''BBBBB'BBB'BBBBBBBBBBBBB''BBB$
+HHHHHHHHHHXHHHHXXXHHHHHXXHXHXHHXHHXHHXXHHHHHXHHHXHHHHHHHHHHHHHXXHHH_
+XXXXXXXXXXCXXXXCCCXXXXXCCXCXCXXCXXCXXCCXXXXXCXXXCXXXXXXXXXXXXXCCXXX&
 "-"""""""-""""""-""""""--"-"""--"""""""""""""""""-""""""-"""""""-""#
+C.CCCCCCC.CCCCCC.CCCCCC..C.CCC..CCCCCCCCCCCCCCCCC.CCCCCC.CCCCCCC.CCX
+B'BBBBBBB'BBBBBB'BBBBBB''B'BBB''BBBBBBBBBBBBBBBBB'BBBBBB'BBBBBBB'BB$
+HXHHHHHHHXHHHHHHXHHHHHHXXHXHHHXXHHHHHHHHHHHHHHHHHXHHHHHHXHHHHHHHXHH_
+XCXXXXXXXCXXXXXXCXXXXXXCCXCXXXCCXXXXXXXXXXXXXXXXXCXXXXXXCXXXXXXXCXX&
 """"""""""""""""""""-""-""""-"---""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCC.CC.CCCC.C...CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBB'BB'BBBB'B'''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHXHHXHHHHXHXXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXCXXCXXXXCXCCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""-"""-""-"""""""""-"""""""""""""""-"""""""""""""""""""""""-""#
+CCCCCCC.CCC.CC.CCCCCCCCC.CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCC.CCX
+BBBBBBB'BBB'BB'BBBBBBBBB'BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB'BB$
+HHHHHHHXHHHXHHXHHHHHHHHHXHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHXHH_
+XXXXXXXCXXXCXXCXXXXXXXXXCXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXCXX&
 """"""""""-"--""""-""----""-"--"""-"""-#"""-""""""""-""""""-""--"""#
+CCCCCCCCCC.C..CCCC.CC....CC.C..CCC.CCC.XCCC.CCCCCCCC.CCCCCC.CC..CCCX
+BBBBBBBBBB'B''BBBB'BB''''BB'B''BBB'BBB'$BBB'BBBBBBBB'BBBBBB'BB''BBB$
+HHHHHHHHHHXHXXHHHHXHHXXXXHHXHXXHHHXHHHX_HHHXHHHHHHHHXHHHHHHXHHXXHHH_
+XXXXXXXXXXCXCCXXXXCXXCCCCXXCXCCXXXCXXXC&XXXCXXXXXXXXCXXXXXXCXXCCXXX&
 -""""""--"""""""""""--"--""""""""""""""-""""""""""""""""""""""""-""#
+.CCCCCC..CCCCCCCCCCC..C..CCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CCX
+'BBBBBB''BBBBBBBBBBB''B''BBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB'BB$
+XHHHHHHXXHHHHHHHHHHHXXHXXHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHXHH_
+CXXXXXXCCXXXXXXXXXXXCCXCCXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXCXX&
 """""""-"""----"""--"""--""""""-"""""""""""-"""""""-"""""""""""""""#
+CCCCCCC.CCC....CCC..CCC..CCCCCC.CCCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCX
+BBBBBBB'BBB''''BBB''BBB''BBBBBB'BBBBBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBB$
+HHHHHHHXHHHXXXXHHHXXHHHXXHHHHHHXHHHHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHH_
+XXXXXXXCXXXCCCCXXXCCXXXCCXXXXXXCXXXXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXX&
 """""-"""""-"""""""""""--""""""""""""""""""-"""""""""""""""""""""""#
+CCCCC.CCCCC.CCCCCCCCCCC..CCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCX
+BBBBB'BBBBB'BBBBBBBBBBB''BBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHXHHHHHXHHHHHHHHHHHXXHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXCXXXXXCXXXXXXXXXXXCCXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXX&
 """""""-"-""""""""""-""--""""""-""""""-"""""-"""""""-""-""""""-""-"#
+CCCCCCC.C.CCCCCCCCCC.CC..CCCCCC.CCCCCC.CCCCC.CCCCCCC.CC.CCCCCC.CC.CX
+BBBBBBB'B'BBBBBBBBBB'BB''BBBBBB'BBBBBB'BBBBB'BBBBBBB'BB'BBBBBB'BB'B$
+HHHHHHHXHXHHHHHHHHHHXHHXXHHHHHHXHHHHHHXHHHHHXHHHHHHHXHHXHHHHHHXHHXH_
+XXXXXXXCXCXXXXXXXXXXCXXCCXXXXXXCXXXXXXCXXXXXCXXXXXXXCXXCXXXXXXCXXCX&
 """"""-"""""-""""""""----""""-"-"""""""""-"""""""""""""""""""""""""#
+CCCCCC.CCCCC.CCCCCCCC....CCCC.C.CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBB'BBBBB'BBBBBBBB''''BBBB'B'BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHXHHHHHXHHHHHHHHXXXXHHHHXHXHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXCXXXXXCXXXXXXXXCCCCXXXXCXCXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""---""""---"""""-"""""""-"""""-"-"""""-"-"""""#
+CCCCCCCCCCCCCCCCCCCCCC...CCCC...CCCCC.CCCCCCC.CCCCC.C.CCCCC.C.CCCCCX
+BBBBBBBBBBBBBBBBBBBBBB'''BBBB'''BBBBB'BBBBBBB'BBBBB'B'BBBBB'B'BBBBB$
+HHHHHHHHHHHHHHHHHHHHHHXXXHHHHXXXHHHHHXHHHHHHHXHHHHHXHXHHHHHXHXHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXCCCXXXXCCCXXXXXCXXXXXXXCXXXXXCXCXXXXXCXCXXXXX&
 """"""""""""""""-""""""--""""""-""""""""""""""""""""""""""""-""""""#
+CCCCCCCCCCCCCCCC.CCCCCC..CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCX
+BBBBBBBBBBBBBBBB'BBBBBB''BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$
+HHHHHHHHHHHHHHHHXHHHHHHXXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_
+XXXXXXXXXXXXXXXXCXXXXXXCCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&
 """"""""""--""""-"-"""---""""--""""""""""""""-""""""""""""""-""""-"#
+CCCCCCCCCC..+CCC.C.CCC...CCCC..CCCCCCCCCCCCCC.CCCCCCCCCCCCCC.CCCC.CX
+BBBBBBBBBB''CBBB'B'BBB'''BBBB''BBBBBBBBBBBBBB'BBBBBBBBBBBBBB'BBBB'B$
+HHHHHHHHHHXX HHHXHXHHHXXXHHHHXXHHHHHHHHHHHHHHXHHHHHHHHHHHHHHXHHHHXH_
+XXXXXXXXXXCC XXXCXCXXXCCCXXXXCCXXXXXXXXXXXXXXCXXXXXXXXXXXXXXCXXXXCX&
 """""""""""""""""-"""--"-""""""""""""""""-""""""""""""""""""-"-""""#
+CCCCCCCCCCCCCCCCC.CCC..C.CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCC.C.CCCCX
+BBBBBBBBBBBBBBBBB'BBB''B'BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB'B'BBBB$
+HHHHHHHHHHHHHHHHHXHHHXXHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHXHXHHHH_
+XXXXXXXXXXXXXXXXXCXXXCCXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXCXCXXXX&
 """""""-"""""""""""------"""""""""""""""""""""--""""""""""""""""-""#
+CCCCCCC.CCCCCCCCCCC......CCCCCCCCCCCCCCCCCCCCC..CCCCCCCCCCCCCCCC.CCX
+BBBBBBB'BBBBBBBBBBB''''''BBBBBBBBBBBBBBBBBBBBB''BBBBBBBBBBBBBBBB'BB$
+HHHHHHHXHHHHHHHHHHHXXXXXXHHHHHHHHHHHHHHHHHHHHHXXHHHHHHHHHHHHHHHHXHH_
+XXXXXXXCXXXXXXXXXXXCCCCCCXXXXXXXXXXXXXXXXXXXXXCCXXXXXXXXXXXXXXXXCXX&
 """"""""""""--"""-"""""--"""""""-""""""""""""""""-""-"""-""""""""""#
+CCCCCCCCCCCC..CCC.CCCCC..CCCCCCC.CCCCCCCCCCCCCCCC.CC.CCC.CCCCCCCCCCX
+BBBBBBBBBBBB''BBB'BBBBB''BBBBBBB'BBBBBBBBBBBBBBBB'BB'BBB'BBBBBBBBBB$
+HHHHHHHHHHHHXXHHHXHHHHHXXHHHHHHHXHHHHHHHHHHHHHHHHXHHXHHHXHHHHHHHHHH_
+XXXXXXXXXXXXCCXXXCXXXXXCCXXXXXXXCXXXXXXXXXXXXXXXXCXXCXXXCXXXXXXXXXX&
 """"""""""""-""-"-""--"--"""""""-""""""-""""""""""-""""""""""""""""#
+CCCCCCCCCCCC.CC.C.CC..C..CCCCCCC.CCCCCC.CCCCCCCCCC.CCCCCCCCCCCCCCCCX
+BBBBBBBBBBBB'BB'B'BB''B''BBBBBBB'BBBBBB'BBBBBBBBBB'BBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHXHHXHXHHXXHXXHHHHHHHXHHHHHHXHHHHHHHHHHXHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXCXXCXCXXCCXCCXXXXXXXCXXXXXXCXXXXXXXXXXCXXXXXXXXXXXXXXXX&
 """"""-"-""""""""""""""""""""--""""""""""""""""-""-""""""""""""-"-"#
+CCCCCC.C.CCCCCCCCCCCCCCCCCCCC..CCCCCCCCCCCCCCCC.CC.CCCCCCCCCCCC.C.CX
+BBBBBB'B'BBBBBBBBBBBBBBBBBBBB''BBBBBBBBBBBBBBBB'BB'BBBBBBBBBBBB'B'B$
+HHHHHHXHXHHHHHHHHHHHHHHHHHHHHXXHHHHHHHHHHHHHHHHXHHXHHHHHHHHHHHHXHXH_
+XXXXXXCXCXXXXXXXXXXXXXXXXXXXXCCXXXXXXXXXXXXXXXXCXXCXXXXXXXXXXXXCXCX&
 "-"""""-"-""""-""""""""""""""""""""""""""""""""""""""""""""""""""""#
+C.CCCCC.C.CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+B'BBBBB'B'BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HXHHHHHXHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XCXXXXXCXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""-""""-""""""""-"""-"""""""""""-""#"""""""""""""""""""""""""""#
+CCCCCC.CCCC.CCCCCCCC.CCC.CCCCCCCCCCC.CCXCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBB'BBBB'BBBBBBBB'BBB'BBBBBBBBBBB'BB$BBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHXHHHHXHHHHHHHHXHHHXHHHHHHHHHHHXHH_HHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXCXXXXCXXXXXXXXCXXXCXXXXXXXXXXXCXX&XXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""-""-""""""""-"""""-"#""---"""""""""""""""""""""""""""""---"""#
+CCCCCC.CC.CCCCCCCC.CCCCC.CXCC...CCCCCCCCCCCCCCCCCCCCCCCCCCCCC...CCCX
+BBBBBB'BB'BBBBBBBB'BBBBB'B$BB'''BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'''BBB$
+HHHHHHXHHXHHHHHHHHXHHHHHXH_HHXXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXXXHHH_
+XXXXXXCXXCXXXXXXXXCXXXXXCX&XXCCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCCCXXX&
 """""""""-"-""""-"""-"""-""""-"-""""""""""""-""""""""""""""""""""""#
+CCCCCCCCC.C.CCCC.CCC.CCC.CCCC.C.CCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBB'B'BBBB'BBB'BBB'BBBB'B'BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHXHXHHHHXHHHXHHHXHHHHXHXHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXCXCXXXXCXXXCXXXCXXXXCXCXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""-""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""--""""-"""""""""""""""""""-"""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCC..CCCC.CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBB''BBBB'BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHXXHHHHXHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXCCXXXXCXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXX&
 """"""""+"""""""""""""-"-"""-"-""""""""""""-"""-"""""-""""""-"-"--"#
+CCCCCCCCCCCCCCCCCCCCCC.C.CCC.+.CCCCCCCCCCCC.CCC.CCCCC.CCCCCC.C.C..CX
+BBBBBBBB BBBBBBBBBBBBB'B'BBB'C'BBBBBBBBBBBB'BBB'BBBBB'BBBBBB'B'B''B$
+HHHHHHHH HHHHHHHHHHHHHXHXHHHX XHHHHHHHHHHHHXHHHXHHHHHXHHHHHHXHXHXXH_
+XXXXXXXX XXXXXXXXXXXXXCXCXXXC CXXXXXXXXXXXXCXXXCXXXXXCXXXXXXCXCXCCX&
 """"""""""""""""""""""""-"""""-"-""""""""""""""""-""""""""""-""""""#
+CCCCCCCCCCCCCCCCCCCCCCCC.CCCCC.C.CCCCCCCCCCCCCCCC.CCCCCCCCCC.CCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBB'BBBBB'B'BBBBBBBBBBBBBBBB'BBBBBBBBBB'BBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHXHHHHHXHXHHHHHHHHHHHHHHHHXHHHHHHHHHHXHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXCXXXXXCXCXXXXXXXXXXXXXXXXCXXXXXXXXXXCXXXXXX&
 """"""""""""""""""""""""--""""-""""""""""""""""""""""""""""""""""-"#
+CCCCCCCCCCCCCCCCCCCCCCCC..CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CX
+BBBBBBBBBBBBBBBBBBBBBBBB''BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B$
+HHHHHHHHHHHHHHHHHHHHHHHHXXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXH_
+XXXXXXXXXXXXXXXXXXXXXXXXCCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCX&
 """"""""""-"""""""""""""-""""-""""""""-""""-"""""""""""""""""""""""#
+CCCCCCCCCC.CCCCCCCCCCCCC.CCCC.CCCCCCCC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBB'BBBBBBBBBBBBB'BBBB'BBBBBBBB'BBBB'BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHXHHHHHHHHHHHHHXHHHHXHHHHHHHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXCXXXXXXXXXXXXXCXXXXCXXXXXXXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXX&
 """""""-"-"""""""""""-""-""""""""""-"""""""#"""-"--""""""""-"""""""#
+CCCCCCC.C.CCCCCCCCCCC.CC.CCCCCCCCCC.CCCCCCCXCCC.C..CCCCCCCC.CCCCCCCX
+BBBBBBB'B'BBBBBBBBBBB'BB'BBBBBBBBBB'BBBBBBB$BBB'B''BBBBBBBB'BBBBBBB$
+HHHHHHHXHXHHHHHHHHHHHXHHXHHHHHHHHHHXHHHHHHH_HHHXHXXHHHHHHHHXHHHHHHH_
+XXXXXXXCXCXXXXXXXXXXXCXXCXXXXXXXXXXCXXXXXXX&XXXCXCCXXXXXXXXCXXXXXXX&
 """""""""""""""""""-""""-"""""-""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCC.CCCC.CCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBB'BBBB'BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHXHHHHXHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXCXXXXCXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-"-"-"""""-""""-""""""""""""""""""""""""""""-"""""""""""""#
+CCCCCCCCC.C.C.CCCCC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCX
+BBBBBBBBB'B'B'BBBBB'BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBB$
+HHHHHHHHHXHXHXHHHHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHH_
+XXXXXXXXXCXCXCXXXXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXX&
 """""""""""-"""""""""""""""""--""""#"""""""""""""""""""""""""""""""#
+CCCCCCCCCCC.CCCCCCCCCCCCCCCCC..CCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBB'BBBBBBBBBBBBBBBBB''BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHXHHHHHHHHHHHHHHHHHXXHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXCXXXXXXXXXXXXXXXXXCCXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""-""""-""""-"--"-""-""""""#"""""""-""""""""""""""""""""""#
+CCCCCCCCCCC.CCCC.CCCC.C..C.CC.CCCCCCXCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBB'BBBB'BBBB'B''B'BB'BBBBBB$BBBBBBB'BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHXHHHHXHHHHXHXXHXHHXHHHHHH_HHHHHHHXHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXCXXXXCXXXXCXCCXCXXCXXXXXX&XXXXXXXCXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""-""""""-""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCC.CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBB'BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""-"""""""""""""""""""""""""""""""""""-"""-"#
+CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCC.CX
+BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB'B$
+HHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHXH_
+XXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXCX&
 """""""#""""""""""""""""""""""--""#"""""""-""""""""""""""""""""""""#
+CCCCCCCXCCCCCCCCCCCCCCCCCCCCCC..CCXCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBB$BBBBBBBBBBBBBBBBBBBBBB''BB$BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHH_HHHHHHHHHHHHHHHHHHHHHHXXHH_HHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXX&XXXXXXXXXXXXXXXXXXXXXXCCXX&XXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXX&
 """""#""""""""-"""--"""""""""--"""""""""""""""-""""""""""""""""""""#
+CCCCCXCCCCCCCC.CCC..C+CCCCCCC..CCCCCCCCCCCCCCC.+CCCCCCCCCCCCCCCCCCCX
+BBBBB$BBBBBBBB'BBB''BCBBBBBBB''BBBBBBBBBBBBBBB'CBBBBBBBBBBBBBBBBBBB$
+HHHHH_HHHHHHHHXHHHXXH HHHHHHHXXHHHHHHHHHHHHHHHX HHHHHHHHHHHHHHHHHHH_
+XXXXX&XXXXXXXXCXXXCCX XXXXXXXCCXXXXXXXXXXXXXXXC XXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""#""""""""""""#""""""#""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCXCCCCCCXCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBB$BBBBBB$BBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHH_HHHHHH_HHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXX&XXXXXX&XXXXXXXXXX&
 """""""""""""""""""-""""-"""""""""""""""""""""""""""-""""#"""""""""#
+CCCCCCCCCCCCCCCCCCC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCXCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBB'BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBB$BBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHH_HHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXX&XXXXXXXXX&
 "-"""""""""""""""""""""-""""""""-"""""""""""""""""""""""#""""""""""#
+C.CCCCCCCCCCCCCCCCCCCCC.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCX
+B'BBBBBBBBBBBBBBBBBBBBB'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBB$
+HXHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHH_
+XCXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXX&
 """#"""""-""""""""#""-"""""#"-""""""""""#""""""""""""-""""-""-"""""#
+CCCXCCCCC.CCCCCCCCXCC.CCCCCXC.CCCCCCCCCCXCCCCCCCCCCCC.CCCC.CC.CCCCCX
+BBB$BBBBB'BBBBBBBB$BB'BBBBB$B'BBBBBBBBBB$BBBBBBBBBBBB'BBBB'BB'BBBBB$
+HHH_HHHHHXHHHHHHHH_HHXHHHHH_HXHHHHHHHHHH_HHHHHHHHHHHHXHHHHXHHXHHHHH_
+XXX&XXXXXCXXXXXXXX&XXCXXXXX&XCXXXXXXXXXX&XXXXXXXXXXXXCXXXXCXXCXXXXX&
 """""""""-"""""""""""-""""""""""""""""""""-""""""""""""""""""""""""#
+CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""-"-"""""""""""""""-"""""""""""""""""""""-"""""""""""""#
+CCCCCCCCCCCCC.C.CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCX
+BBBBBBBBBBBBB'B'BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBB$
+HHHHHHHHHHHHHXHXHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHH_
+XXXXXXXXXXXXXCXCXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXX&
 """""""-"""""--""""-"""""""""""""""""""-""""""""""""""#""""""""""-"#
+CCCCCCC.CCCCC..CCCC.CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCXCCCCCCCCCC.CX
+BBBBBBB'BBBBB''BBBB'BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBB$BBBBBBBBBB'B$
+HHHHHHHXHHHHHXXHHHHXHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHH_HHHHHHHHHHXH_
+XXXXXXXCXXXXXCCXXXXCXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXX&XXXXXXXXXXCX&
 """"""""""""""""""""-""--""""-""-"""""""""""""""-""""""""""-"-"""""#
+CCCCCCCCCCCCCCCCCCCC.CC..CCCC.CC.CCCCCCCCCCCCCCC.CCCCCCCCCC.C.CCCCCX
+BBBBBBBBBBBBBBBBBBBB'BB''BBBB'BB'BBBBBBBBBBBBBBB'BBBBBBBBBB'B'BBBBB$
+HHHHHHHHHHHHHHHHHHHHXHHXXHHHHXHHXHHHHHHHHHHHHHHHXHHHHHHHHHHXHXHHHHH_
+XXXXXXXXXXXXXXXXXXXXCXXCCXXXXCXXCXXXXXXXXXXXXXXXCXXXXXXXXXXCXCXXXXX&
 """""""""-"""""""""""""""""""""""""""""""""""""#"""""""""""""""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXX&
 """""""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""-""""""-""""""""""""""#""-""""""""""""#""""""""""""""#
+CCCCCCCCCCCCCC.CCCCCC.CCCCCCCCCCCCCCXCC.CCCCCCCCCCCCXCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBB'BBBBBB'BBBBBBBBBBBBBB$BB'BBBBBBBBBBBB$BBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHXHHHHHHXHHHHHHHHHHHHHH_HHXHHHHHHHHHHHH_HHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXCXXXXXXCXXXXXXXXXXXXXX&XXCXXXXXXXXXXXX&XXXXXXXXXXXXXX&
 "-"+#"#""""""""""""""""""""""""""""""""""""-""""""#"""""-"""#""""""#
+C.CCXCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCXCCCCC.CCCXCCCCCCX
+B'B $B$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$BBBBB'BBB$BBBBBB$
+HXH _H_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_HHHHHXHHH_HHHHHH_
+XCX &X&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&XXXXXCXXX&XXXXXX&
 #""""""""""""""""""--""""""#"""""""""""""""""""""""""""""""""""""""#
+XCCCCCCCCCCCCCCCCCC..CCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+$BBBBBBBBBBBBBBBBBB''BBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+_HHHHHHHHHHHHHHHHHHXXHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+&XXXXXXXXXXXXXXXXXXCCXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-"""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""#""""""""""""""""""""""""""""""""#""""""""""""""""""""""""""""#
+CCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"#"""""""""""""""""""""""-"""""""""""#-""""-""""""""""""""""""""#
+CCCCXCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCX.CCCC.CCCCCCCCCCCCCCCCCCCCX
+BBBB$BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB$'BBBB'BBBBBBBBBBBBBBBBBBBB$
+HHHH_HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHH_XHHHHXHHHHHHHHHHHHHHHHHHHH_
+XXXX&XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXX&CXXXXCXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""-"""#""""""""#"#"""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCXCCCCCCCCXCXCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB$BBBBBBBB$B$BBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHH_HHHHHHHH_H_HHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXX&XXXXXXXX&X&XXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""-"""""""""-"""""""""""""-"""""""""#""""-""""#
+CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCCXCCCC.CCCCX
+BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBB'BBBBBBBBBBBBB'BBBBBBBBB$BBBB'BBBB$
+HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHXHHHHHHHHHHHHHXHHHHHHHHH_HHHHXHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXCXXXXXXXXXXXXXCXXXXXXXXX&XXXXCXXXX&
 """"""""""""""""""""""""""""""--"""#""""""#"""""""""""#""#"""""""""#
+CCCCCCCCCCCCCCCC+CCCCCCCCCCCCC..CCCXCCCCCCXCCCCCCCCCCCXCCXCCCCCCCCCX
+BBBBBBBBBBBBBBBBCBBBBBBBBBBBBB''BBB$BBBBBB$BBBBBBBBBBB$BB$BBBBBBBBB$
+HHHHHHHHHHHHHHHH HHHHHHHHHHHHHXXHHH_HHHHHH_HHHHHHHHHHH_HH_HHHHHHHHH_
+XXXXXXXXXXXXXXXX XXXXXXXXXXXXXCCXXX&XXXXXX&XXXXXXXXXXX&XX&XXXXXXXXX&
 ""#"""""""""""""-"""""""""""""-""""""""""""""""--""-""#"""-""""""""#
+CCXCCCCCCCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCCCCCCCCC..CC.CCXCCC.CCCCCCCCX
+BB$BBBBBBBBBBBBB'BBBBBBBBBBBBB'BBBBBBBBBBBBBBBB''BB'BB$BBB'BBBBBBBB$
+HH_HHHHHHHHHHHHHXHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHXXHHXHH_HHHXHHHHHHHH_
+XX&XXXXXXXXXXXXXCXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXCCXXCXX&XXXCXXXXXXXX&
 """"""""""""-""""-"""""""""""-"""""""""""#""""""""""""""""""""-""""#
+CCCCCCCCCCCC.CCCC.CCCCCCCCCCC.CCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCC.CCCCX
+BBBBBBBBBBBB'BBBB'BBBBBBBBBBB'BBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBB'BBBB$
+HHHHHHHHHHHHXHHHHXHHHHHHHHHHHXHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHXHHHH_
+XXXXXXXXXXXXCXXXXCXXXXXXXXXXXCXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXCXXXX&
 """""""""""-""""""""""""""""""--"""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCC.CCCCC+CCCCCCCCCCCC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBB'BBBBBCBBBBBBBBBBBB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHXHHHHH HHHHHHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXCXXXXX XXXXXXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 #"""##"""#"""""#"""""""#"""""""""""#"""""""""""""""""""""""""""""""#
+XCCCXXCCCXCCCCCXCCCCCCCXCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+$BBB$$BBB$BBBBB$BBBBBBB$BBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+_HHH__HHH_HHHHH_HHHHHHH_HHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+&XXX&&XXX&XXXXX&XXXXXXX&XXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""-""-""""""""--"-""""-""-"""-="""""""#"#""#"""""""#""#"""-""#
+CCCCCCCC.CC.CCCCCCCC..C.CCCC.CC.CCC.CCCCCCCCXCXCCXCCCCCCCXCCXCCC.CCX
+BBBBBBBB'BB'BBBBBBBB''B'BBBB'BB'BBB' BBBBBBB$B$BB$BBBBBBB$BB$BBB'BB$
+HHHHHHHHXHHXHHHHHHHHXXHXHHHHXHHXHHHX HHHHHHH_H_HH_HHHHHHH_HH_HHHXHH_
+XXXXXXXXCXXCXXXXXXXXCCXCXXXXCXXCXXXC XXXXXXX&X&XX&XXXXXXX&XX&XXXCXX&
 """"""""""""""""""""""-"""""-""""""""""""""""""""""""""""""""-"""""#
+CCCCCCCCCCCCCCCCCCCCCC.CCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCX
+BBBBBBBBBBBBBBBBBBBBBB'BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBB$
+HHHHHHHHHHHHHHHHHHHHHHXHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXCXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 "#"""""""""""""""""""""-""""""-""""""""-""""""""""""""""""""""""#""#
+CXCCCCCCCCCCCCCCCCCCCCC.CCCCCC.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCXCCX
+B$BBBBBBBBBBBBBBBBBBBBB'BBBBBB'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB$BB$
+H_HHHHHHHHHHHHHHHHHHHHHXHHHHHHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHH_HH_
+X&XXXXXXXXXXXXXXXXXXXXXCXXXXXXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXX&XX&
 """#""""""""#"""-#"-"""""#""#"-""""""""-""""""""""-"""""""""-""""""#
+CCCXCCCCCCCCXCCC.XC.CCCCCXCCXC.CCCCCCCC.CCCCCCCCCC.CCCCCCCCC.CCCCCCX
+BBB$BBBBBBBB$BBB'$B'BBBBB$BB$B'BBBBBBBB'BBBBBBBBBB'BBBBBBBBB'BBBBBB$
+HHH_HHHHHHHH_HHHX_HXHHHHH_HH_HXHHHHHHHHXHHHHHHHHHHXHHHHHHHHHXHHHHHH_
+XXX&XXXXXXXX&XXXC&XCXXXXX&XX&XCXXXXXXXXCXXXXXXXXXXCXXXXXXXXXCXXXXXX&
 ##""#""#"""""#""""""""""""""#""""#"""""""""""""""""""""""""""""""""#
+XXCCXCCXCCCCCXCCCCCCCCCCCCCCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+$$BB$BB$BBBBB$BBBBBBBBBBBBBB$BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+__HH_HH_HHHHH_HHHHHHHHHHHHHH_HHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+&&XX&XX&XXXXX&XXXXXXXXXXXXXX&XXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""""""""""-""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""-""""""""""""""""""""""""""""""-""""""#""""""""""""""#
+CCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCXCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$BBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_HHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&XXXXXXXXXXXXXX&
 """""""""""#""""--"-""""""""""""""""""""""""-"-"""""""""""-"""-""""#
+CCCCCCCCCCCXCCCC..C.CCCCCCCCCCCCCCCCCCCCCCCC.C.CCCCCCCCCCC.CCC.CCCCX
+BBBBBBBBBBB$BBBB''B'BBBBBBBBBBBBBBBBBBBBBBBB'B'BBBBBBBBBBB'BBB'BBBB$
+HHHHHHHHHHH_HHHHXXHXHHHHHHHHHHHHHHHHHHHHHHHHXHXHHHHHHHHHHHXHHHXHHHH_
+XXXXXXXXXXX&XXXXCCXCXXXXXXXXXXXXXXXXXXXXXXXXCXCXXXXXXXXXXXCXXXCXXXX&
 """""""""""""""-""""""""""""""""""""""""""""""""""""""-""""""""""""#
+CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCX
+BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBB$
+HHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXX&
 """"#""""""""""""""""""""""""""""""""""""""""""""-"""""""""""""""""#
+CCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCX
+BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB$
+HHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHH_
+XXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXX&
 """"""#""#""""""-"""""-""""""""""""##"""""""""""""""-""""""""""""""#
+CCCCCCXCCXCCCCCC.CCCCC.CCCCCCCCCCCCXXCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCX
+BBBBBB$BB$BBBBBB'BBBBB'BBBBBBBBBBBB$$BBBBBBBBBBBBBBB'BBBBBBBBBBBBBB$
+HHHHHH_HH_HHHHHHXHHHHHXHHHHHHHHHHHH__HHHHHHHHHHHHHHHXHHHHHHHHHHHHHH_
+XXXXXX&XX&XXXXXXCXXXXXCXXXXXXXXXXXX&&XXXXXXXXXXXXXXXCXXXXXXXXXXXXXX&
 ""#""""""-""""""""-""""-"#"""-""""""""""""#""""""-+""#"""#"""""""""#
+CCXCCCCCC.CCCCCCCC.CCCC.CXCCC.CCCCCCCCCCCCXCCCCCC.CCCXCCCXCCCCCCCCCX
+BB$BBBBBB'BBBBBBBB'BBBB'B$BBB'BBBBBBBBBBBB$BBBBBB' BB$BBB$BBBBBBBBB$
+HH_HHHHHHXHHHHHHHHXHHHHXH_HHHXHHHHHHHHHHHH_HHHHHHX HH_HHH_HHHHHHHHH_
+XX&XXXXXXCXXXXXXXXCXXXXCX&XXXCXXXXXXXXXXXX&XXXXXXC XX&XXX&XXXXXXXXX&
 ""###"""""""""""""""""""""#"""""""""""""""""""""""+""""""#"""""""""#
+CCXXXCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC+CCCCCCX
+BB$$$BBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBB BBBBBB$BBCBBBBBB$
+HH___HHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHH HHHHHH_HH HHHHHH_
+XX&&&XXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXX XXXXXX&XX XXXXXX&
 ""##""""""""""""""""""""""""""""""""#"""""""""""""""""""""""""""""-#
+CCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.X
+BB$$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'$
+HH__HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHX_
+XX&&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXC&
 #"#"""""""-"""""""""""""""""""-"""""#""""""""""""""-"""""""""""""""#
+XCXCCCCCCC.CCCCCCCCCCCCCCCCCCC.CCCCCXCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCX
+$B$BBBBBBB'BBBBBBBBBBBBBBBBBBB'BBBBB$BBBBBBBBBBBBBB'BBBBBBBBBBBBBBB$
+_H_HHHHHHHXHHHHHHHHHHHHHHHHHHHXHHHHH_HHHHHHHHHHHHHHXHHHHHHHHHHHHHHH_
+&X&XXXXXXXCXXXXXXXXXXXXXXXXXXXCXXXXX&XXXXXXXXXXXXXXCXXXXXXXXXXXXXXX&
 """"#-""""-""""""""""-"""""##"""""#""""""""""-"""""""""""""""""""""#
+CCCCX.CCCC.CCCCCCCCCC.CCCCCXXCCCCCXCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCX
+BBBB$'BBBB'BBBBBBBBBB'BBBBB$$BBBBB$BBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBB$
+HHHH_XHHHHXHHHHHHHHHHXHHHHH__HHHHH_HHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHH_
+XXXX&CXXXXCXXXXXXXXXXCXXXXX&&XXXXX&XXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""""""-"""""""""""""""#"""#"""""##
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCXCCCXCCCCCXX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBB$BBB$BBBBB$$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHH_HHH_HHHHH__
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXX&XXX&XXXXX&&
 ""#""""""""""""""""""""""""""""""""""""""""""""-"""""""""""""""""""#
+CCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCX
+BB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBB$
+HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHH_
+XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXX&
 """"""#"""""""""""""""""""#"""""-""""""""""#""""""""""""""""#""""""#
+CCCCCCXCCCCCCCCCCCCCCCCCCCXCCCCC.CCCCCCCCCCXCCCCCCCCCCCCCCCCXCCCCCCX
+BBBBBB$BBBBBBBBBBBBBBBBBBB$BBBBB'BBBBBBBBBB$BBBBBBBBBBBBBBBB$BBBBBB$
+HHHHHH_HHHHHHHHHHHHHHHHHHH_HHHHHXHHHHHHHHHH_HHHHHHHHHHHHHHHH_HHHHHH_
+XXXXXX&XXXXXXXXXXXXXXXXXXX&XXXXXCXXXXXXXXXX&XXXXXXXXXXXXXXXX&XXXXXX&
 #"""""""""""""""""""""-"""-"#"--""""""""-""""""""""""""""""""""""""#
+XCCCCCCCCCCCCCCCCCCCCC.CCC.CXC..CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCX
+$BBBBBBBBBBBBBBBBBBBBB'BBB'B$B''BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB$
+_HHHHHHHHHHHHHHHHHHHHHXHHHXH_HXXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHH_
+&XXXXXXXXXXXXXXXXXXXXXCXXXCX&XCCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""#"""-""""""""""#"""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC.CCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB'BBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHXHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXCXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""-"""""""""""""""""""""""""""""""""""#""""""""""""""""""#
+CCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCC+CCCCCCCCCXCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBCBBBBBBBBB$BBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH HHHHHHHHH_HHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXX&XXXXXXXXXXXXXXXXXX&
 #""""""""""""""""""""-""""""""""""""""-"""""""""""""""""#""""""""""#
+XCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCXCCCCCCCCCCX
+$BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB$BBBBBBBBBB$
+_HHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHH_HHHHHHHHHH_
+&XXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXX&XXXXXXXXXX&
 -""""""""""""""""""""""--""""""-"""#"-""#""""""""""""""""""""""-#""#
+.CCCCCCCCCCCCCCCCCCCCCC..CCCCCC.CCCXC.CCXCCCCCCCCCCCCCCCCCCCCCC.XCCX
+'BBBBBBBBBBBBBBBBBBBBBB''BBBBBB'BBB$B'BB$BBBBBBBBBBBBBBBBBBBBBB'$BB$
+XHHHHHHHHHHHHHHHHHHHHHHXXHHHHHHXHHH_HXHH_HHHHHHHHHHHHHHHHHHHHHHX_HH_
+CXXXXXXXXXXXXXXXXXXXXXXCCXXXXXXCXXX&XCXX&XXXXXXXXXXXXXXXXXXXXXXC&XX&
 """"""""""""""""""""""""-"""""""--""""""""""""""""-"""""""""""""""##
+CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCC..CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCXX
+BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBB''BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBB$$
+HHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHXXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHH__
+XXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXCCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXX&&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""#"""""""""""""""""""""""""#"##"""""""""#"""""""""""#""""""#
+CCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCXCXXCCCCCCCCCXCCCCCCCCCCCXCCCCCCX
+BBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBB$B$$BBBBBBBBB$BBBBBBBBBBB$BBBBBB$
+HHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHH_H__HHHHHHHHH_HHHHHHHHHHH_HHHHHH_
+XXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXX&X&&XXXXXXXXX&XXXXXXXXXXX&XXXXXX&
 -"""#""""-"""""""-""-""""""#"""-"""""""""""-"""""""""-""""""""""-""#
+.CCCXCCCC.CCCCCCC.CC.CCCCCCXCCC.CCCCCCCCCCC.CCCCCCCCC.CCCCCCCCCC.CCX
+'BBB$BBBB'BBBBBBB'BB'BBBBBB$BBB'BBBBBBBBBBB'BBBBBBBBB'BBBBBBBBBB'BB$
+XHHH_HHHHXHHHHHHHXHHXHHHHHH_HHHXHHHHHHHHHHHXHHHHHHHHHXHHHHHHHHHHXHH_
+CXXX&XXXXCXXXXXXXCXXCXXXXXX&XXXCXXXXXXXXXXXCXXXXXXXXXCXXXXXXXXXXCXX&
 "#"#"#""""""""""""""""-"""""""""""""""""#"""-""""""""""""##""""""""#
+CXCXCXCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCXCCC.CCCCCCCCCCCCXXCCCCCCCCX
+B$B$B$BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB$BBB'BBBBBBBBBBBB$$BBBBBBBB$
+H_H_H_HHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHH_HHHXHHHHHHHHHHHH__HHHHHHHH_
+X&X&X&XXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXX&XXXCXXXXXXXXXXXX&&XXXXXXXX&
 #""""""""""""""""""-"""""#"""""""""""""""-""""""""""-""""""""""""""#
+XCCCCCCCCCCCCCCCCCC.CCCCCXCCCCCCCCCCCCCCC.CCCCCCCCCC.CCCCCCCCCCCCCCX
+$BBBBBBBBBBBBBBBBBB'BBBBB$BBBBBBBBBBBBBBB'BBBBBBBBBB'BBBBBBBBBBBBBB$
+_HHHHHHHHHHHHHHHHHHXHHHHH_HHHHHHHHHHHHHHHXHHHHHHHHHHXHHHHHHHHHHHHHH_
+&XXXXXXXXXXXXXXXXXXCXXXXX&XXXXXXXXXXXXXXXCXXXXXXXXXXCXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""#""#""""#""""""-"""""""""""-"""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCCCCXCCCCCC.CCCCCCCCCCC.CCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BB$BBBB$BBBBBB'BBBBBBBBBBB'BBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HH_HHHH_HHHHHHXHHHHHHHHHHHXHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XX&XXXX&XXXXXXCXXXXXXXXXXXCXXXXX&
 """"#""""""""-"""#-""""""-"#""-"""#""#""#"""""#-"--""""""""""""""""#
+CCCCXCCCCCCCC.CCCX.CCCCCC.CXCC.CCCXCCXCCXCCCCCX.C..CCCCCCCCCCCCCCCCX
+BBBB$BBBBBBBB'BBB$'BBBBBB'B$BB'BBB$BB$BB$BBBBB$'B''BBBBBBBBBBBBBBBB$
+HHHH_HHHHHHHHXHHH_XHHHHHHXH_HHXHHH_HH_HH_HHHHH_XHXXHHHHHHHHHHHHHHHH_
+XXXX&XXXXXXXXCXXX&CXXXXXXCX&XXCXXX&XX&XX&XXXXX&CXCCXXXXXXXXXXXXXXXX&
 """#""""-""""""""""""""""""""""-"""""#"""""""""""""-"""""""""""#"""#
+CCCXCCCC.CCCCCCCCCCCCCCCCCCCCCC.CCCCCXCCCCCCCCCCCCC.CCCCCCCCCCCXCCCX
+BBB$BBBB'BBBBBBBBBBBBBBBBBBBBBB'BBBBB$BBBBBBBBBBBBB'BBBBBBBBBBB$BBB$
+HHH_HHHHXHHHHHHHHHHHHHHHHHHHHHHXHHHHH_HHHHHHHHHHHHHXHHHHHHHHHHH_HHH_
+XXX&XXXXCXXXXXXXXXXXXXXXXXXXXXXCXXXXX&XXXXXXXXXXXXXCXXXXXXXXXXX&XXX&
 """""""""""""""#""""""""""""#"""""""""""""""""""""""-""""""""""""""#
+CCCCCCCCCCCCCCCXCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBB$BBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHH_HHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXX&XXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""#"""""#""""-""""""-""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCXCCCC.CCCCCC.CCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBB$BBBB'BBBBBB'BBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHH_HHHHXHHHHHHXHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXX&XXXXCXXXXXXCXXXXXXXXXXXX&
 """#""""-#--"""""""""-""""""-""""""#""""""-#"#""""""-"""-"""""""""-#
+CCCXCCCC.X..CCCCCCCCC.CCCCCC.CCCCCCXCCCCCC.XCXCCCCCC.CCC.CCCCCCCCC.X
+BBB$BBBB'$''BBBBBBBBB'BBBBBB'BBBBBB$BBBBBB'$B$BBBBBB'BBB'BBBBBBBBB'$
+HHH_HHHHX_XXHHHHHHHHHXHHHHHHXHHHHHH_HHHHHHX_H_HHHHHHXHHHXHHHHHHHHHX_
+XXX&XXXXC&CCXXXXXXXXXCXXXXXXCXXXXXX&XXXXXXC&X&XXXXXXCXXXCXXXXXXXXXC&
 """""""#""""-""""""""""""""-""""""""#""""""""#"""""""""""""""""""""#
+CCCCCCCXCCCC.CCCCCCCCCCCCCC.CCCCCCCCXCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBB$BBBB'BBBBBBBBBBBBBB'BBBBBBBB$BBBBBBBB$BBBBBBBBBBBBBBBBBBBBB$
+HHHHHHH_HHHHXHHHHHHHHHHHHHHXHHHHHHHH_HHHHHHHH_HHHHHHHHHHHHHHHHHHHHH_
+XXXXXXX&XXXXCXXXXXXXXXXXXXXCXXXXXXXX&XXXXXXXX&XXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""#""""""#"""""""""""""""""""""#"""""""""""""""""""-"-#
+CCCCCCCCCCCCCCCXCCCCCCXCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCC.C.X
+BBBBBBBBBBBBBBB$BBBBBB$BBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBB'B'$
+HHHHHHHHHHHHHHH_HHHHHH_HHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHXHX_
+XXXXXXXXXXXXXXX&XXXXXX&XXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXCXC&
 """#"""""""""""""""""""""""""""""""#"""""""""""""""""""""""""""""""#
+CCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""#-"-"""-""""""""""""""-#""""""""""""""""""#"""""""""""""""""""#
+CCCCCX.C.CCC.CCCCCCCCCCCCCC.XCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCX
+BBBBB$'B'BBB'BBBBBBBBBBBBBB'$BBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBB$
+HHHHH_XHXHHHXHHHHHHHHHHHHHHX_HHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHH_
+XXXXX&CXCXXXCXXXXXXXXXXXXXXC&XXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXX&
 "#"""#"""""""""""""""""""""""""""""""""""""""""""""""""""""""-"""""#
+CXCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCX
+B$BBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBB$
+H_HHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHH_
+X&XXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXX&
 """"""""""""-"""""""""""""""""""""""""#""""""""""""""""""""""""""""#
+CCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""-""##""""""""""""""""""""-"""""#""""""""""""#""""""""""-""""#
+CCCCCCC.CCXXCCCCCCCCCCCCCCCCCCCC.CCCCCXCCCCCCCCCCCCXCCCCCCCCCC.CCCCX
+BBBBBBB'BB$$BBBBBBBBBBBBBBBBBBBB'BBBBB$BBBBBBBBBBBB$BBBBBBBBBB'BBBB$
+HHHHHHHXHH__HHHHHHHHHHHHHHHHHHHHXHHHHH_HHHHHHHHHHHH_HHHHHHHHHHXHHHH_
+XXXXXXXCXX&&XXXXXXXXXXXXXXXXXXXXCXXXXX&XXXXXXXXXXXX&XXXXXXXXXXCXXXX&
 "###""#""""""""""""""""""""""""-""""""""""#""""""""-"""""""""-"""""#
+CXXXCCXCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCXCCCCCCCC.CCCCCCCCC.CCCCCX
+B$$$BB$BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB$BBBBBBBB'BBBBBBBBB'BBBBB$
+H___HH_HHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHH_HHHHHHHHXHHHHHHHHHXHHHHH_
+X&&&XX&XXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXX&XXXXXXXXCXXXXXXXXXCXXXXX&
 """""""#"""""""""""""""""-"#""""""""#"""""""""#"""""#""""""#"""""""#
+CCCCCCCXCCCCCCCCCCCCCCCCC.CXCCCCCCCCXCCCCCCCCCXCCCCCXCCCCCCXCCCCCCCX
+BBBBBBB$BBBBBBBBBBBBBBBBB'B$BBBBBBBB$BBBBBBBBB$BBBBB$BBBBBB$BBBBBBB$
+HHHHHHH_HHHHHHHHHHHHHHHHHXH_HHHHHHHH_HHHHHHHHH_HHHHH_HHHHHH_HHHHHHH_
+XXXXXXX&XXXXXXXXXXXXXXXXXCX&XXXXXXXX&XXXXXXXXX&XXXXX&XXXXXX&XXXXXXX&
 """#"""""""""""""""""""-""""""""""""""-"#""""""#""""""""#"-""#"""""#
+CCCXCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCC.CXCCCCCCXCCCCCCCCXC.CCXCCCCCX
+BBB$BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBB'B$BBBBBB$BBBBBBBB$B'BB$BBBBB$
+HHH_HHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHXH_HHHHHH_HHHHHHHH_HXHH_HHHHH_
+XXX&XXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXCX&XXXXXX&XXXXXXXX&XCXX&XXXXX&
 """#"""""-"""""""""""""""""""""""""""""-""""#""""""""""""""""""-"""#
+CCCXCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCXCCCCCCCCCCCCCCCCCC.CCCX
+BBB$BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBB$BBBBBBBBBBBBBBBBBB'BBB$
+HHH_HHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHH_HHHHHHHHHHHHHHHHHHXHHH_
+XXX&XXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXX&XXXXXXXXXXXXXXXXXXCXXX&
 """""""""""""""#""-"""""--""""-""-""""-""""""""""""""""""""""""""#"#
+CCCCCCCCCCCCCCCXCC.CCCCC..CCCC.CC.CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCXCX
+BBBBBBBBBBBBBBB$BB'BBBBB''BBBB'BB'BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB$B$
+HHHHHHHHHHHHHHH_HHXHHHHHXXHHHHXHHXHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHH_H_
+XXXXXXXXXXXXXXX&XXCXXXXXCCXXXXCXXCXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXX&X&
 ""#"""""""""""""#""""""""""""""-"""""""""""#"""""""""""""""="""""""#
+CCXCCCCCCCCCCCCCXCCCCCCCCCCCCCC.CCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCX
+BB$BBBBBBBBBBBBB$BBBBBBBBBBBBBB'BBBBBBBBBBB$BBBBBBBBBBBBBBB BBBBBBB$
+HH_HHHHHHHHHHHHH_HHHHHHHHHHHHHHXHHHHHHHHHHH_HHHHHHHHHHHHHHH HHHHHHH_
+XX&XXXXXXXXXXXXX&XXXXXXXXXXXXXXCXXXXXXXXXXX&XXXXXXXXXXXXXXX XXXXXXX&
 ""#""""""""""""""""-"""""""""""""""""""""""""""""""""""""""""""""""#
+CCXCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BB$BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HH_HHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XX&XXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""#""#"""""""""""""""""""""""""""""""""""""#""""""""""""#
+CCCCCCCCCCCCCXCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCX
+BBBBBBBBBBBBB$BB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBB$
+HHHHHHHHHHHHH_HH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHH_
+XXXXXXXXXXXXX&XX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXX&
 """"""""""""""""#""""""-""""""""""""""""""-"#""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCXCCCCCC.CCCCCCCCCCCCCCCCCC.CXCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBB$BBBBBB'BBBBBBBBBBBBBBBBBB'B$BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHH_HHHHHHXHHHHHHHHHHHHHHHHHHXH_HHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXX&XXXXXXCXXXXXXXXXXXXXXXXXXCX&XXXXXXXXXXXXXXXXXXXXXX&
 """"""""-""""""""""""""""""""""""""""""""""""""""#""""""#""""""""#"#
+CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCXCCCCCCCCXCX
+BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBB$BBBBBBBB$B$
+HHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHH_HHHHHHHH_H_
+XXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXX&XXXXXXXX&X&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 #""""#"""""""""""""""""""""""""""""""#"""""#"""""""""""""""""""""""#
+XCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCXCCCCCCCCCCCCCCCCCCCCCCCX
+$BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBB$BBBBBBBBBBBBBBBBBBBBBBB$
+_HHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHH_HHHHHHHHHHHHHHHHHHHHHHH_
+&XXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXX&XXXXXXXXXXXXXXXXXXXXXXX&
 "#"""""""""""""""""""-"""""""""""""""""""""""""""#"""""-"##"""""-""#
+CXCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCC.CXXCCCCC.CCX
+B$BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBB'B$$BBBBB'BB$
+H_HHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHXH__HHHHHXHH_
+X&XXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXCX&&XXXXXCXX&
 """""""""""""""""""""""-""""""""-"""""""""""""""""""""""""#""""""""#
+CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXX&
 """"""""""""""#""""""""""-""""""""""""""""#""""""""-"""""""""""""""#
+CCCCCCCCCCCCCCXCCCCCCCCCC.CCCCCCCCCCCCCCCCXCCCCCCCC.CCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBB$BBBBBBBBBB'BBBBBBBBBBBBBBBB$BBBBBBBB'BBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHH_HHHHHHHHHHXHHHHHHHHHHHHHHHH_HHHHHHHHXHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXX&XXXXXXXXXXCXXXXXXXXXXXXXXXX&XXXXXXXXCXXXXXXXXXXXXXXX&
 """"""""""""""""-"""""""""""""""""""""""""""""#""""""""""""""""""""#
+CCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXX&
 "-"""""""-"""-""""""""-""-"""""""""""#"""-""""-"""""""-""""""""""""#
+C.CCCCCCC.CCC.CCCCCCCC.CC.CCCCCCCCCCCXCCC.CCCC.CCCCCCC.CCCCCCCCCCCCX
+B'BBBBBBB'BBB'BBBBBBBB'BB'BBBBBBBBBBB$BBB'BBBB'BBBBBBB'BBBBBBBBBBBB$
+HXHHHHHHHXHHHXHHHHHHHHXHHXHHHHHHHHHHH_HHHXHHHHXHHHHHHHXHHHHHHHHHHHH_
+XCXXXXXXXCXXXCXXXXXXXXCXXCXXXXXXXXXXX&XXXCXXXXCXXXXXXXCXXXXXXXXXXXX&
 """""""""""""""""""""-"""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""-""""""""""""""""""""""""-"""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXX&
 """"""""""""""""""""""""""""#"""-"""""""""""""""""""""""""#""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC.CCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB'BBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHXHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXCXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXX&
 """""-"""""""""""#"""""""-""#"#""""""""""""""""##""""""""""#"""""""#
+CCCCC.CCCCCCCCCCCXCCCCCCC.CCXCXCCCCCCCCCCCCCCCCXXCCCCCCCCCCXCCCCCCCX
+BBBBB'BBBBBBBBBBB$BBBBBBB'BB$B$BBBBBBBBBBBBBBBB$$BBBBBBBBBB$BBBBBBB$
+HHHHHXHHHHHHHHHHH_HHHHHHHXHH_H_HHHHHHHHHHHHHHHH__HHHHHHHHHH_HHHHHHH_
+XXXXXCXXXXXXXXXXX&XXXXXXXCXX&X&XXXXXXXXXXXXXXXX&&XXXXXXXXXX&XXXXXXX&
 """"#"""""""""""""""""""""""""""""""""""""""""""""""""#"""""-"""-""#
+CCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCC.CCC.CCX
+BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBB'BBB'BB$
+HHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHXHHHXHH_
+XXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXCXXXCXX&
 """"""""""""""""""""""""""""""""""""""#""""#"""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCXCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBB$BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHH_HHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXX&XXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""-"""""#"""""""""""""#""""""""""#"""""""""#"""""""""""""""#
+CCCCCCCCCC.CCCCCXCCCCCCCCCCCCCXCCCCCCCCCCXCCCCCCCCCXCCCCCCCCCCCCCCCX
+BBBBBBBBBB'BBBBB$BBBBBBBBBBBBB$BBBBBBBBBB$BBBBBBBBB$BBBBBBBBBBBBBBB$
+HHHHHHHHHHXHHHHH_HHHHHHHHHHHHH_HHHHHHHHHH_HHHHHHHHH_HHHHHHHHHHHHHHH_
+XXXXXXXXXXCXXXXX&XXXXXXXXXXXXX&XXXXXXXXXX&XXXXXXXXX&XXXXXXXXXXXXXXX&
 ""#"""##"""""""-"""-""""""""#""""""""""""""""""""#"""""""""""#"""""#
+CCXCCCXXCCCCCCC.CCC.CCCCCCCCXCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCXCCCCCX
+BB$BBB$$BBBBBBB'BBB'BBBBBBBB$BBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBB$BBBBB$
+HH_HHH__HHHHHHHXHHHXHHHHHHHH_HHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHH_HHHHH_
+XX&XXX&&XXXXXXXCXXXCXXXXXXXX&XXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXX&XXXXX&
 """"""""""""""""""""-""""""#""""""""""#"""##""#""""#"""""""""""""""#
+CCCCCCCCCCCCCCCCCCCC.CCCCCCXCCCCCCCCCCXCCCXXCCXCCCCXCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBB'BBBBBB$BBBBBBBBBB$BBB$$BB$BBBB$BBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHXHHHHHH_HHHHHHHHHH_HHH__HH_HHHH_HHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXCXXXXXX&XXXXXXXXXX&XXX&&XX&XXXX&XXXXXXXXXXXXXXX&
 """""""""""""""#"""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCXCCCC+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBB$BBBBCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHH_HHHH HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXX&XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 #""""""""""""""""""""""""""""""""""""""#"""""""""""""#"""""""""""""#
+XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCCCCCCCCCCCX
+$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBB$BBBBBBBBBBBBB$
+_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHH_HHHHHHHHHHHHH_
+&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXX&XXXXXXXXXXXXX&
 """"""#""""""""""""""""""""""""""""#""#"""""-"""""""""#"""""""#""""#
+CCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCXCCCCC.CCCCCCCCCXCCCCCCCXCCCCX
+BBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BB$BBBBB'BBBBBBBBB$BBBBBBB$BBBB$
+HHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HH_HHHHHXHHHHHHHHH_HHHHHHH_HHHH_
+XXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XX&XXXXXCXXXXXXXXX&XXXXXXX&XXXX&
 """#""""""#""""""#""""""""""""""""-"""""""""""""""""""""""""-""""""#
+CCCXCCCCCCXCCCCCCXCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCX
+BBB$BBBBBB$BBBBBB$BBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$
+HHH_HHHHHH_HHHHHH_HHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_
+XXX&XXXXXX&XXXXXX&XXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&
 """"""""""""""""""""""""""""#""""""""""""""""""""""""""""""""""#"""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXX&
 """""""""""""""""""""-"""""""""""--"""##"#""+"#"-"""""""""""""""""##
+CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCC..CCCXXCXCCCCXC.CCCCCCCCCCCCCCCCCXX
+BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB''BBB$$B$BB B$B'BBBBBBBBBBBBBBBBB$$
+HHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHXXHHH__H_HH H_HXHHHHHHHHHHHHHHHHH__
+XXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXCCXXX&&X&XX X&XCXXXXXXXXXXXXXXXXX&&
 """"#""""-"""""""#"""""-""""#"""""""""""#"#"""""""-""""""""""""""--#
+CCCCXCCCC.CCCCCCCXCCCCC.CCCCXCCCCCCCCCCCXCXCCCCCCC.CCCCCCCCCCCCCC..X
+BBBB$BBBB'BBBBBBB$BBBBB'BBBB$BBBBBBBBBBB$B$BBBBBBB'BBBBBBBBBBBBBB''$
+HHHH_HHHHXHHHHHHH_HHHHHXHHHH_HHHHHHHHHHH_H_HHHHHHHXHHHHHHHHHHHHHHXX_
+XXXX&XXXXCXXXXXXX&XXXXXCXXXX&XXXXXXXXXXX&X&XXXXXXXCXXXXXXXXXXXXXXCC&
 """"""""-"-"""""""""#""""""""""""""""""#"""""""""""""""""""""""""""#
+CCCCCCCC.C.CCCCCCCCCXCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBB'B'BBBBBBBBB$BBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHXHHHHHHHHH_HHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXCXXXXXXXXX&XXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXX&
 "#""""""""""""""""""""-"""""""#""""""""""""""""""""""""""""""""""""#
+CXCCCCCCCCCCCCCCCCCCCC.CCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+B$BBBBBBBBBBBBBBBBBBBB'BBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+H_HHHHHHHHHHHHHHHHHHHHXHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+X&XXXXXXXXXXXXXXXXXXXXCXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""-"""""""""""""""""""-"""""""""""""""""-"""""""#
+CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCC.CCCCCCCX
+BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB'BBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHXHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXCXXXXXXX&
 """""""""""""""""""""""""""""""""-""#"""""#""""""""""""""""""-""-""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCXCCCCCXCCCCCCCCCCCCCCCCCC.CC.CCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB$BBBBB$BBBBBBBBBBBBBBBBBB'BB'BB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHH_HHHHH_HHHHHHHHHHHHHHHHHHXHHXHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXX&XXXXX&XXXXXXXXXXXXXXXXXXCXXCXX&
 """""""""""""""-""""""""""""#""-"""""""""""""""-"""""""""#"#""""#""#
+CCCCCCCCCCCCCCC.CCCCCCCCCCCCXCC.CCCCCCCCCCCCCCC.CCCCCCCCCXCXCCCCXCCX
+BBBBBBBBBBBBBBB'BBBBBBBBBBBB$BB'BBBBBBBBBBBBBBB'BBBBBBBBB$B$BBBB$BB$
+HHHHHHHHHHHHHHHXHHHHHHHHHHHH_HHXHHHHHHHHHHHHHHHXHHHHHHHHH_H_HHHH_HH_
+XXXXXXXXXXXXXXXCXXXXXXXXXXXX&XXCXXXXXXXXXXXXXXXCXXXXXXXXX&X&XXXX&XX&
 """""""""""""""""#"""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""#"""-""-""""""-"""-"""""""""""""""""""""""-"""""""-""""#""""#
+CCCCCCCXCCC.CC.CCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCC.CCCCXCCCCX
+BBBBBBB$BBB'BB'BBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBB'BBBB$BBBB$
+HHHHHHH_HHHXHHXHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHXHHHH_HHHH_
+XXXXXXX&XXXCXXCXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXCXXXX&XXXX&
 """"#"""""""""""""""-"""""""""""""""""#"""#""""""""""""""""""""""""#
+CCCCXCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCXCCCXCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBB$BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBB$BBB$BBBBBBBBBBBBBBBBBBBBBBBB$
+HHHH_HHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHH_HHH_HHHHHHHHHHHHHHHHHHHHHHHH_
+XXXX&XXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXX&XXX&XXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""#"""""""""""""#"""""""""""""#"""""#""""""""""""""""""#
+CCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCCCCCCCCCCCXCCCCCXCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBB$BBBBBBBBBBBBB$BBBBBBBBBBBBB$BBBBB$BBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHH_HHHHHHHHHHHHH_HHHHHHHHHHHHH_HHHHH_HHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXX&XXXXXXXXXXXXX&XXXXXXXXXXXXX&XXXXX&XXXXXXXXXXXXXXXXXX&
 """"""""""-"""""""""""""""""#""""""""""""""###""""""""""""""""""""-#
+CCCCCCCCCC.CCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCXXXCCCCCCCCCCCCCCCCCCCC.X
+BBBBBBBBBB'BBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBB$$$BBBBBBBBBBBBBBBBBBBB'$
+HHHHHHHHHHXHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHH___HHHHHHHHHHHHHHHHHHHHX_
+XXXXXXXXXXCXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXX&&&XXXXXXXXXXXXXXXXXXXXC&
 #""""""""""""#-""-"""-""""""-"""-"""""""##"##""""""""""""""""""""""#
+XCCCCCCCCCCC+X.CC.CCC.CCCCC+.CCC.CCCCCCCXXCXXCCCCCCCCCCCCCCCCCCCCCCX
+$BBBBBBBBBBBC$'BB'BBB'BBBBBC'BBB'BBBBBBB$$B$$BBBBBBBBBBBBBBBBBBBBBB$
+_HHHHHHHHHHH _XHHXHHHXHHHHH XHHHXHHHHHHH__H__HHHHHHHHHHHHHHHHHHHHHH_
+&XXXXXXXXXXX &CXXCXXXCXXXXX CXXXCXXXXXXX&&X&&XXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""-""""""""""""""""""""#"""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""-"""""""""""""""""-""""""""""""##""#"""""""""""""""-"""""#
+CCCCCCCCCC.CCCCCCCCCCCCCCCCC.CCCCCCCCCCCCXXCCXCCCCCCCCCCCCCCC.CCCCCX
+BBBBBBBBBB'BBBBBBBBBBBBBBBBB'BBBBBBBBBBBB$$BB$BBBBBBBBBBBBBBB'BBBBB$
+HHHHHHHHHHXHHHHHHHHHHHHHHHHHXHHHHHHHHHHHH__HH_HHHHHHHHHHHHHHHXHHHHH_
+XXXXXXXXXXCXXXXXXXXXXXXXXXXXCXXXXXXXXXXXX&&XX&XXXXXXXXXXXXXXXCXXXXX&
 -"""""""""""""""""#"""-""""#""""-"""""##""#""""""""""-"""""""""#"""#
+.CCCCCCCCCCCCCCCCCXCCC.CCCCXCCCC.CCCCCXXCCXCCCCCCCCCC.CCCCCCCCCXCCCX
+'BBBBBBBBBBBBBBBBB$BBB'BBBB$BBBB'BBBBB$$BB$BBBBBBBBBB'BBBBBBBBB$BBB$
+XHHHHHHHHHHHHHHHHH_HHHXHHHH_HHHHXHHHHH__HH_HHHHHHHHHHXHHHHHHHHH_HHH_
+CXXXXXXXXXXXXXXXXX&XXXCXXXX&XXXXCXXXXX&&XX&XXXXXXXXXXCXXXXXXXXX&XXX&
 ""#"""#""""""""#"#"""#"""""""""""-"""""""#""""""""""---""""""""""""#
+CCXCCCXCCCCCCCCXCXCCCXCCCCCCCCCCC.CCCCCCCXCCCCCCCCCC...CCCCCCCCCCCCX
+BB$BBB$BBBBBBBB$B$BBB$BBBBBBBBBBB'BBBBBBB$BBBBBBBBBB'''BBBBBBBBBBBB$
+HH_HHH_HHHHHHHH_H_HHH_HHHHHHHHHHHXHHHHHHH_HHHHHHHHHHXXXHHHHHHHHHHHH_
+XX&XXX&XXXXXXXX&X&XXX&XXXXXXXXXXXCXXXXXXX&XXXXXXXXXXCCCXXXXXXXXXXXX&
 "#""""""""""""""""""""""""""""#""""""""""-"""""""""-"""""""""""""""#
+CXCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCC.CCCCCCCCC.CCCCCCCCCCCCCCCX
+B$BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBB'BBBBBBBBB'BBBBBBBBBBBBBBB$
+H_HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHXHHHHHHHHHXHHHHHHHHHHHHHHH_
+X&XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXCXXXXXXXXXCXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""""""""""#""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""#"""""""""""#""""""""""""""""""""""""-""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCC.CCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBB'BB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHXHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXCXX&
 """"""""""""""""""""""""#""""""""""##"""""""#""""""""""""""""""#"""#
+CCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCXXCCCCCCCXCCCCCCCCCCCCCCCCCCXCCCX
+BBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBB$$BBBBBBB$BBBBBBBBBBBBBBBBBB$BBB$
+HHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHH__HHHHHHH_HHHHHHHHHHHHHHHHHH_HHH_
+XXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXX&&XXXXXXX&XXXXXXXXXXXXXXXXXX&XXX&
 """""""""""""#""#"""""""""#""""""-""#"#"""#"""#""""""""""""""""""""#
+CCCCCCCCCCCCCXCCXCCCCCCCCCXCCCCCC.CCXCXCCCXCCCXCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBB$BB$BBBBBBBBB$BBBBBB'BB$B$BBB$BBB$BBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHH_HH_HHHHHHHHH_HHHHHHXHH_H_HHH_HHH_HHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXX&XX&XXXXXXXXX&XXXXXXCXX&X&XXX&XXX&XXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-""""""""#"""""#"""#"""""""""""""#"""""""""-""""""""""""""#
+CCCCCCCCC.CCCCCCCCXCCCCCXCCCXCCCCCCCCCCCCCXCCCCCCCCC.CCCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBB$BBBBB$BBB$BBBBBBBBBBBBB$BBBBBBBBB'BBBBBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHH_HHHHH_HHH_HHHHHHHHHHHHH_HHHHHHHHHXHHHHHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXX&XXXXX&XXX&XXXXXXXXXXXXX&XXXXXXXXXCXXXXXXXXXXXXXX&
 """#"""""""""-"""#""""""""""#""""""""""""#-"""""""""""""""-"""-"""##
+CCCXCCCCCCCCC.CCCXCCCCCCCCCCXCCCCCCCCCCCCX.CCCC+CCCCCCCCCC.CCC.CCCXX
+BBB$BBBBBBBBB'BBB$BBBBBBBBBB$BBBBBBBBBBBB$'BBBBCBBBBBBBBBB'BBB'BBB$$
+HHH_HHHHHHHHHXHHH_HHHHHHHHHH_HHHHHHHHHHHH_XHHHH HHHHHHHHHHXHHHXHHH__
+XXX&XXXXXXXXXCXXX&XXXXXXXXXX&XXXXXXXXXXXX&CXXXX XXXXXXXXXXCXXXCXXX&&
 "-"""""#""#""""""""""""""""""#"""""""###"""""""""""""""""""""""""""#
+C.CCCCCXCCXCCCCCCCCCCCCCCCCCCXCCCCCCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+B'BBBBB$BB$BBBBBBBBBBBBBBBBBB$BBBBBBB$$$BBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HXHHHHH_HH_HHHHHHHHHHHHHHHHHH_HHHHHHH___HHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XCXXXXX&XX&XXXXXXXXXXXXXXXXXX&XXXXXXX&&&XXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """--""""""""""""""""""""""""""""""""""""""""""-"""""""""""-"""-"""#
+CCC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCC.CCC.CCCX
+BBB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB'BBB'BBB$
+HHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHXHHHXHHH_
+XXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXCXXXCXXX&
 """"-""""""-"""""""""""""""""""-"""""###"""""""""""""""""""""""""""#
+CCCC.CCCCCC.CCCCCCCCCCCCCCCCCCC.CCCCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBB'BBBBBB'BBBBBBBBBBBBBBBBBBB'BBBBB$$$BBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHXHHHHHHXHHHHHHHHHHHHHHHHHHHXHHHHH___HHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXCXXXXXXCXXXXXXXXXXXXXXXXXXXCXXXXX&&&XXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""#""""""""""""""""#"""""""""""""""""#"""""""""""""""""""#
+CCCCCCCCCCCCXCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBB$BBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHH_HHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXX&XXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""-"""""""-"""""""""""""""""""""""#""-""""""#"#
+CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCXCC.CCCCCCXCX
+BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB$BB'BBBBBB$B$
+HHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHH_HHXHHHHHH_H_
+XXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXX&XXCXXXXXX&X&
 """"""""""""""""""""""""""""#"""-""""#"""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCC.CCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBB'BBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHXHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXCXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """#""""""""-"""-""""""""""""#""-""""""""-"""""""""#"""""#"""""""""#
+CCCX+CCCCCCC.CCC.CCCCCCCCCCCCXCC.CCCCCCCC.CCCCCCCCCXCCCCCXCCCCCCCCCX
+BBB$CBBBBBBB'BBB'BBBBBBBBBBBB$BB'BBBBBBBB'BBBBBBBBB$BBBBB$BBBBBBBBB$
+HHH_ HHHHHHHXHHHXHHHHHHHHHHHH_HHXHHHHHHHHXHHHHHHHHH_HHHHH_HHHHHHHHH_
+XXX& XXXXXXXCXXXCXXXXXXXXXXXX&XXCXXXXXXXXCXXXXXXXXX&XXXXX&XXXXXXXXX&
 """""""-"""""""""""""""""-"#""#"""""""""#""#"""""""-""#""""-"""#"""#
+CCCCCCC.CCCCCCCCCCCCCCCCC.CXCCXCCCCCCCCCXCCXCCCCCCC.CCXCCCC.CCCXCCCX
+BBBBBBB'BBBBBBBBBBBBBBBBB'B$BB$BBBBBBBBB$BB$BBBBBBB'BB$BBBB'BBB$BBB$
+HHHHHHHXHHHHHHHHHHHHHHHHHXH_HH_HHHHHHHHH_HH_HHHHHHHXHH_HHHHXHHH_HHH_
+XXXXXXXCXXXXXXXXXXXXXXXXXCX&XX&XXXXXXXXX&XX&XXXXXXXCXX&XXXXCXXX&XXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""#"""""""""#""""""""""""#""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCXCCCCCCCCCXCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBB$BBBBBBBBB$BBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHH_HHHHHHHHH_HHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXX&XXXXXXXXX&XXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXX&
 "#"""""""""""""""""""""""""""#"""""""""""""""-"""+"""""""""""""""""#
+CXCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCX
+B$BBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBB'BBB BBBBBBBBBBBBBBBBB$
+H_HHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHXHHH HHHHHHHHHHHHHHHHH_
+X&XXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXCXXX XXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""-"""-"#"""""""""""""""""""""""""""-#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCC.CX+CCCCCCCCCCCCCCCCCCCCCCCCCC.X
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB'B$CBBBBBBBBBBBBBBBBBBBBBBBBBB'$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHXH_ HHHHHHHHHHHHHHHHHHHHHHHHHHX_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXCX& XXXXXXXXXXXXXXXXXXXXXXXXXXC&
 """""-""""""-""""""""-"""""--#""""""""""-""""""""""""""""""""""""""#
+CCCCC.CCCCCC.CCCCCCCC.CCCCC..XCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBB'BBBBBB'BBBBBBBB'BBBBB''$BBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHXHHHHHHXHHHHHHHHXHHHHHXX_HHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXCXXXXXXCXXXXXXXXCXXXXXCC&XXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""-""#""""""-""""""""""""""""""""""""-""""""""#"""-"""""""""""#"#
+CCCCC.+CXCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCXCCC.CCCCCCCCCCCXCX
+BBBBB'CB$BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBB$BBB'BBBBBBBBBBB$B$
+HHHHHX H_HHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHH_HHHXHHHHHHHHHHH_H_
+XXXXXC X&XXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXX&XXXCXXXXXXXXXXX&X&
 """""""""""""""""""""""""-""""""""-"""""""--"""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCC.CCCCCCC..CCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBB'BBBBBBB''BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHXHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXCXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-"""""""""""""""""""""""-"""#"""""""""""""""""""""""""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCC.CCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB'BBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHXHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXCXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""-"""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""-"-""""""-"""""""""""""""""-""""""""""""#"""""""""##
+CCCCCCCCCCCCCCCC.C.CCC+CC.CCCCCCCCCCCCCCCCC.CCCCCCCCCCCCXCCCCCCCCCXX
+BBBBBBBBBBBBBBBB'B'BBBCBB'BBBBBBBBBBBBBBBBB'BBBBBBBBBBBB$BBBBBBBBB$$
+HHHHHHHHHHHHHHHHXHXHHH HHXHHHHHHHHHHHHHHHHHXHHHHHHHHHHHH_HHHHHHHHH__
+XXXXXXXXXXXXXXXXCXCXXX XXCXXXXXXXXXXXXXXXXXCXXXXXXXXXXXX&XXXXXXXXX&&
 """""""#""-"""-"""-"""""""""#""""""""""""-"-"""""""""""""""""""""""#
+CCCCCCCXCC.CCC.CCC.CCCCCCCCCXCCCCCCCCCCCC.C.CCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBB$BB'BBB'BBB'BBBBBBBBB$BBBBBBBBBBBB'B'BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHH_HHXHHHXHHHXHHHHHHHHH_HHHHHHHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXX&XXCXXXCXXXCXXXXXXXXX&XXXXXXXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""#""-""""""#""""""""""""""""""""""#"""#"#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC.CCCCCCXCCCCCCCCCCCCCCCCCCCCCCXCCCXCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BB'BBBBBB$BBBBBBBBBBBBBBBBBBBBBB$BBB$B$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHXHHHHHH_HHHHHHHHHHHHHHHHHHHHHH_HHH_H_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXCXXXXXX&XXXXXXXXXXXXXXXXXXXXXX&XXX&X&
 """"""""-"-"""""""""""""""""""""-""""""""""""""""""""""""""""""""""#
+CCCCCCCC.C.CCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBB'B'BBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHXHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXCXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""-""""-""""""#""""""""""""""""""""""""""""""""""#"""""""""#"#
+CCCCCCCC.CCCC.CCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCXCX
+BBBBBBBB'BBBB'BBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBB$B$
+HHHHHHHHXHHHHXHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHH_H_
+XXXXXXXXCXXXXCXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXX&X&
 """""""""#"""""""#""""#""-"""#"""""""##""""""""""""""""""""""-"""""#
+CCCCCCCCCXCCCCCCCXCCCCXCC.CCCXCCCCCCCXXCCCCCCCCCCCCCCCCCCCCCC.CCCCCX
+BBBBBBBBB$BBBBBBB$BBBB$BB'BBB$BBBBBBB$$BBBBBBBBBBBBBBBBBBBBBB'BBBBB$
+HHHHHHHHH_HHHHHHH_HHHH_HHXHHH_HHHHHHH__HHHHHHHHHHHHHHHHHHHHHHXHHHHH_
+XXXXXXXXX&XXXXXXX&XXXX&XXCXXX&XXXXXXX&&XXXXXXXXXXXXXXXXXXXXXXCXXXXX&
 """""""""-"""""""""""""""""#""""""""-""""""""""""""""""""#""#""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCCCXCCCCCCCC.CCCCCCCCCCCCCCCCCCCCXCCXCCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBBB$BBBBBBBB'BBBBBBBBBBBBBBBBBBBB$BB$BBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHH_HHHHHHHHXHHHHHHHHHHHHHHHHHHHH_HH_HHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXX&XXXXXXXXCXXXXXXXXXXXXXXXXXXXX&XX&XXXXXX&
 """""""""""""""""""""""""-"""""""""""""""""""""""""""""""#"""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXX&
 """-""""""""""""""""-"""""""""""""-""""""""#""""""""""""""""-#"""""#
+CCC.CCCCCCCCCCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCXCCCCCCCCCCCCCCCC.XCCCCCX
+BBB'BBBBBBBBBBBBBBBB'BBBBBBBBBBBBB'BBBBBBBB$BBBBBBBBBBBBBBBB'$BBBBB$
+HHHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHXHHHHHHHH_HHHHHHHHHHHHHHHHX_HHHHH_
+XXXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXCXXXXXXXX&XXXXXXXXXXXXXXXXC&XXXXX&
 """""""""-""""""""""""""""-""""""-""""""""""""""#""""""#"""""""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCC.CCCCCC.CCCCCCCCCCCCCCXCCCCCCXCCCCCCCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBB'BBBBBB'BBBBBBBBBBBBBB$BBBBBB$BBBBBBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHXHHHHHHXHHHHHHHHHHHHHH_HHHHHH_HHHHHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXCXXXXXXCXXXXXXXXXXXXXX&XXXXXX&XXXXXXXXXXX&
 """"""""""""""""""-""""""-""""#""""""""""--"#"""""""""""""-""-"""""#
+CCCCCCCCCCCCCCCCCC.CCCCCC.CCCCXCCCCCCCCCC..CXCCCCCCCCCCCCC.CC.CCCCCX
+BBBBBBBBBBBBBBBBBB'BBBBBB'BBBB$BBBBBBBBBB''B$BBBBBBBBBBBBB'BB'BBBBB$
+HHHHHHHHHHHHHHHHHHXHHHHHHXHHHH_HHHHHHHHHHXXH_HHHHHHHHHHHHHXHHXHHHHH_
+XXXXXXXXXXXXXXXXXXCXXXXXXCXXXX&XXXXXXXXXXCCX&XXXXXXXXXXXXXCXXCXXXXX&
 """""""""""""""""""""""""""""""""""""#"""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""-#""""-"-""""""""""""""""#""""""""""""""""""#"""-""""""#
+CCCCCCCCCCCC.XCCCC.C.CCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCXCCC.CCCCCCX
+BBBBBBBBBBBB'$BBBB'B'BBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBB$BBB'BBBBBB$
+HHHHHHHHHHHHX_HHHHXHXHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHH_HHHXHHHHHH_
+XXXXXXXXXXXXC&XXXXCXCXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXX&XXXCXXXXXX&
 """"""""-""-""""""--""""-"#""""--"""""""""""#""""#"""""""""""""""""#
+CCCCCCCC.CC.CCCCCC..CCCC.CXCCCC..CCCCCCCCCCCXCCCCXCCCCCCCCCCCCCC+CCX
+BBBBBBBB'BB'BBBBBB''BBBB'B$BBBB''BBBBBBBBBBB$BBBB$BBBBBBBBBBBBBBCBB$
+HHHHHHHHXHHXHHHHHHXXHHHHXH_HHHHXXHHHHHHHHHHH_HHHH_HHHHHHHHHHHHHH HH_
+XXXXXXXXCXXCXXXXXXCCXXXXCX&XXXXCCXXXXXXXXXXX&XXXX&XXXXXXXXXXXXXX XX&
 """"""""""""""""""#"""""""""""""-"""""""""""""#""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCC.CCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBB'BBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHXHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXCXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""""""""""""""""""#""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""""""-"-"""""""#""""""#""""""""""""""#"-"#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.C.CCCCCCCXCCCCCCXCCCCCCCCCCCCCCXC.CX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'B'BBBBBBB$BBBBBB$BBBBBBBBBBBBBB$B'B$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHXHHHHHHH_HHHHHH_HHHHHHHHHHHHHH_HXH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXCXXXXXXX&XXXXXX&XXXXXXXXXXXXXX&XCX&
 """""""""---""""""""""""-"-""""--""""""""""""""""""""""-"""""-"""""#
+CCCCCCCCC...CCCCCCCCCCCC.C.CCCC..CCCCCCCCC+CCCCCCCCCCCC.CCCCC.CCCCCX
+BBBBBBBBB'''BBBBBBBBBBBB'B'BBBB''BBBBBBBBBCBBBBBBBBBBBB'BBBBB'BBBBB$
+HHHHHHHHHXXXHHHHHHHHHHHHXHXHHHHXXHHHHHHHHH HHHHHHHHHHHHXHHHHHXHHHHH_
+XXXXXXXXXCCCXXXXXXXXXXXXCXCXXXXCCXXXXXXXXX XXXXXXXXXXXXCXXXXXCXXXXX&
 "-""""""-"--""""""""""""""""""""""""""""#""""""""""""""""""""""""""#
+C.CCCCCC.C..CCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCX
+B'BBBBBB'B''BBBBBBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBBBB$
+HXHHHHHHXHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHHH_
+XCXXXXXXCXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""-"""""""""""""-"""""""""""""""""""""""""""""-""#
+CCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCX
+BBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB$
+HHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHH_
+XXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXX&
 """"-""""""""""""""""""""""""#"""""""""""-"#"""""""""""""""""""""""#
+CCCC.CCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCC.CXCCCCCCCCCCCCCCCCCCCCCCCX
+BBBB'BBBBBBBBBBBBBBBBBBBBBBBB$BBBBBBBBBBB'B$BBBBBBBBBBBBBBBBBBBBBBB$
+HHHHXHHHHHHHHHHHHHHHHHHHHHHHH_HHHHHHHHHHHXH_HHHHHHHHHHHHHHHHHHHHHHH_
+XXXXCXXXXXXXXXXXXXXXXXXXXXXXX&XXXXXXXXXXXCX&XXXXXXXXXXXXXXXXXXXXXXX&
 "-"""-""""""-""""""-""""-""""""""""-""""""-"""""""""-""""""--""""""#
+C.CCC.CCCCCC.CCCCCC.CCCC.CCCCCCCCCC.CCCCCC.CCCCCCCCC.CCCCCC..CCCCCCX
+B'BBB'BBBBBB'BBBBBB'BBBB'BBBBBBBBBB'BBBBBB'BBBBBBBBB'BBBBBB''BBBBBB$
+HXHHHXHHHHHHXHHHHHHXHHHHXHHHHHHHHHHXHHHHHHXHHHHHHHHHXHHHHHHXXHHHHHH_
+XCXXXCXXXXXXCXXXXXXCXXXXCXXXXXXXXXXCXXXXXXCXXXXXXXXXCXXXXXXCCXXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""""""""""""""""""""""""""""""""""""-""""""#""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCXCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$BBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_HHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&XXXXXXXXXX&
 """"""""-"--""""""""""""""-"""""""-"""""#"""#""""-""""""#""""""""-"#
+CCCCCCCC.C..CCCCCCCCCCCCCC.CCCCCCC.CCCCCXCCCXCCCC.CCCCCCXCCCCCCCC.CX
+BBBBBBBB'B''BBBBBBBBBBBBBB'BBBBBBB'BBBBB$BBB$BBBB'BBBBBB$BBBBBBBB'B$
+HHHHHHHHXHXXHHHHHHHHHHHHHHXHHHHHHHXHHHHH_HHH_HHHHXHHHHHH_HHHHHHHHXH_
+XXXXXXXXCXCCXXXXXXXXXXXXXXCXXXXXXXCXXXXX&XXX&XXXXCXXXXXX&XXXXXXXXCX&
 """"""""--"""""--"--"-""""""""""""-""""#""""""""""#"""""""""-""""""#
+CCCCCCCC..CCCCC..C..C.CCCCCCCCCCCC.CCCCXCCCCCCCCCCXCCCCCCCCC.CCCCCCX
+BBBBBBBB''BBBBB''B''B'BBBBBBBBBBBB'BBBB$BBBBBBBBBB$BBBBBBBBB'BBBBBB$
+HHHHHHHHXXHHHHHXXHXXHXHHHHHHHHHHHHXHHHH_HHHHHHHHHH_HHHHHHHHHXHHHHHH_
+XXXXXXXXCCXXXXXCCXCCXCXXXXXXXXXXXXCXXXX&XXXXXXXXXX&XXXXXXXXXCXXXXXX&
 """"-""""""""""""""""""""""""""""""""""""""""""""""""""""""-"""-"""#
+CCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCC.CCCX
+BBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB'BBB$
+HHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHXHHH_
+XXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXCXXX&
 """""""""-""""""""""""""""""""""""""-"""""""""""""""""""""""-""""""#
+CCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCX
+BBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBB'BBBBBB$
+HHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHXHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXCXXXXXX&
 """"""""""""""""""""""""""""""""--"""##""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC..CCCXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB''BBB$$BBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXXHHH__HHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCCXXX&&XXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""---"-"-""--"""-"""""""""""""""""#""-"-"""-"""-"""#""#""-"""""#
+CCCCCC...+.C.CC..CCC.CCCCCCCCCCCCCCCCCXCC.C.CCC.CCC.CCCXCCXCC.CCCCCX
+BBBBBB'''C'B'BB''BBB'BBBBBBBBBBBBBBBBB$BB'B'BBB'BBB'BBB$BB$BB'BBBBB$
+HHHHHHXXX XHXHHXXHHHXHHHHHHHHHHHHHHHHH_HHXHXHHHXHHHXHHH_HH_HHXHHHHH_
+XXXXXXCCC CXCXXCCXXXCXXXXXXXXXXXXXXXXX&XXCXCXXXCXXXCXXX&XX&XXCXXXXX&
 """"-""""""-"-""""""""""-"""""""""-"""#""""""""-""""""""""""-""""""#
+CCCC.CCCCCC.C.CCCCCCCCCC.CCCCCCCCC.CCCXCCCCCCCC.CCCCCCCCCCCC.CCCCCCX
+BBBB'BBBBBB'B'BBBBBBBBBB'BBBBBBBBB'BBB$BBBBBBBB'BBBBBBBBBBBB'BBBBBB$
+HHHHXHHHHHHXHXHHHHHHHHHHXHHHHHHHHHXHHH_HHHHHHHHXHHHHHHHHHHHHXHHHHHH_
+XXXXCXXXXXXCXCXXXXXXXXXXCXXXXXXXXXCXXX&XXXXXXXXCXXXXXXXXXXXXCXXXXXX&
 """""""""""""""""""""""""""""""""-"""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCC+CCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBCBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHH HHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX&
 """""""""-""""""#-"""--"""""""""""""""#""""""""-""-"""#""""""""""""#
+CCCCCCCCC.CCCCCCX.CCC..CCCCCCCCCCCCCCCXCCCCCCCC.CC.CCCXCCCCCCCCCCCCX
+BBBBBBBBB'BBBBBB$'BBB''BBBBBBBBBBBBBBB$BBBBBBBB'BB'BBB$BBBBBBBBBBBB$
+HHHHHHHHHXHHHHHH_XHHHXXHHHHHHHHHHHHHHH_HHHHHHHHXHHXHHH_HHHHHHHHHHHH_
+XXXXXXXXXCXXXXXX&CXXXCCXXXXXXXXXXXXXXX&XXXXXXXXCXXCXXX&XXXXXXXXXXXX&
 """"""""""""-""""""""-"""-""""""-"""""""-"""""""""--""""""""""""""-#
+CCCCCCCCCCCC.CCCCCCCC.CCC.CCCCCC.CCCCCCC.CCCCCCCCC..CCCCCCCCCCCCCC.X
+BBBBBBBBBBBB'BBBBBBBB'BBB'BBBBBB'BBBBBBB'BBBBBBBBB''BBBBBBBBBBBBBB'$
+HHHHHHHHHHHHXHHHHHHHHXHHHXHHHHHHXHHHHHHHXHHHHHHHHHXXHHHHHHHHHHHHHHX_
+XXXXXXXXXXXXCXXXXXXXXCXXXCXXXXXXCXXXXXXXCXXXXXXXXXCCXXXXXXXXXXXXXXC&
 """"""""-""""-""-"--"""""-"""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCC.CCCC.CC.C..CCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBB'BBBB'BB'B''BBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHHHHXHHXHXXHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXXXXCXXCXCCXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""-""""""-""-"""-"""""-"--"""""""""""""""""""""""""""""-"""#
+CCCCCCCCCC.CCCCCC.CC.CCC.CCCCC.C..CCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCX
+BBBBBBBBBB'BBBBBB'BB'BBB'BBBBB'B''BBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBB$
+HHHHHHHHHHXHHHHHHXHHXHHHXHHHHHXHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHH_
+XXXXXXXXXXCXXXXXXCXXCXXXCXXXXXCXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXX&
 """"-"""-""""-"-""""-"""--""""""-""""""""""""""""""""""-"""""""""-"#
+CCCC.CCC.CCCC.C.CCCC.CCC..CCCCCC.CCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCC.CX
+BBBB'BBB'BBBB'B'BBBB'BBB''BBBBBB'BBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBB'B$
+HHHHXHHHXHHHHXHXHHHHXHHHXXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHXH_
+XXXXCXXXCXXXXCXCXXXXCXXXCCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXCX&
 """""""--""-""""""-""""""-"""""""""""#"-""""""""""""""""-""-"""#"""#
+CCCCCCC..CC.CCCCCC.CCCCCC.CCCCCCCCCCCXC.CCCCCCCCCCCCCCCC.CC.CCCXCCCX
+BBBBBBB''BB'BBBBBB'BBBBBB'BBBBBBBBBBB$B'BBBBBBBBBBBBBBBB'BB'BBB$BBB$
+HHHHHHHXXHHXHHHHHHXHHHHHHXHHHHHHHHHHH_HXHHHHHHHHHHHHHHHHXHHXHHH_HHH_
+XXXXXXXCCXXCXXXXXXCXXXXXXCXXXXXXXXXXX&XCXXXXXXXXXXXXXXXXCXXCXXX&XXX&
 """""--"--""""""""""""""""""""""""""""""""""""""""""""""-""""""""""#
+CCCCC..C..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCX
+BBBBB''B''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB$
+HHHHHXXHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHH_
+XXXXXCCXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXX&
 """""-"""--"""-"""-"-""""""""""""""""""""""""""""""""""""""""""""""#
+CCCCC.CCC..CCC.CCC.C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBB'BBB''BBB'BBB'B'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHXHHHXXHHHXHHHXHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXCXXXCCXXXCXXXCXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""--""-"""-"""-"-""""""""-""""""""""""""""""""""""""""""""-""#
+CCCCCCCC..CC.CCC.CCC.C.CCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCX
+BBBBBBBB''BB'BBB'BBB'B'BBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BB$
+HHHHHHHHXXHHXHHHXHHHXHXHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHH_
+XXXXXXXXCCXXCXXXCXXXCXCXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXX&
 "-"""-""""-""""""""""""-"--"""--"-""""""""""""""""""""""""""""""""-#
+C.CCC.CCCC.CCCCCCCCCCCC.C..CCC..C.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.X
+B'BBB'BBBB'BBBBBBBBBBBB'B''BBB''B'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'$
+HXHHHXHHHHXHHHHHHHHHHHHXHXXHHHXXHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHX_
+XCXXXCXXXXCXXXXXXXXXXXXCXCCXXXCCXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXC&
 ""-"""""""""""""""""""""""""""--""""""-""""""""""""""""""""""""""""#
+CC.CCCCCCCCCCCCCCCCCCCCCCCCCCC..CCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BB'BBBBBBBBBBBBBBBBBBBBBBBBBBB''BBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHXHHHHHHHHHHHHHHHHHHHHHHHHHHHXXHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXCXXXXXXXXXXXXXXXXXXXXXXXXXXXCCXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""-"""""""""""""-"""""""""""""""-""""""""""""""""""""""""""#
+CCCCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBB'BBBBBBBBBBBBB'BBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHXHHHHHHHHHHHHHXHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXCXXXXXXXXXXXXXCXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""""""""""-"""""""""""#"-"""""""""""""-"""""""-#
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCXC.CCCCCCCCCCCCC.CCCCCCC.X
+BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB$B'BBBBBBBBBBBBB'BBBBBBB'$
+HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHH_HXHHHHHHHHHHHHHXHHHHHHHX_
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXX&XCXXXXXXXXXXXXXCXXXXXXXC&
 """"""""-"""-""+"""""""-""-"""""-"""""""""""""""""""-""""-"-"-""""-#
+CCCCCCCC.CCC.C+CCCCCCCC.CC.CCCCC.CCCCCCCCCCCCCCCCCCC.CCCC.C.C.CCCC.X
+BBBBBBBB'BBB'BC BBBBBBB'BB'BBBBB'BBBBBBBBBBBBBBBBBBB'BBBB'B'B'BBBB'$
+HHHHHHHHXHHHXH  HHHHHHHXHHXHHHHHXHHHHHHHHHHHHHHHHHHHXHHHHXHXHXHHHHX_
+XXXXXXXXCXXXCX  XXXXXXXCXXCXXXXXCXXXXXXXXXXXXXXXXXXXCXXXXCXCXCXXXXC&
 """"""""-"""""""""""""-""""""""""""""""""""""""""""""""""""""""""""#
+CCCCCCCC.CCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBB'BBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""""""""-"""-"""-"""""""-""""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCC.CCC.CCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBB'BBB'BBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHXHHHXHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXCXXXCXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""-""""""-"""""""-""""""""--"""""""""""""""""""""""""""""""""#
+CCCCCCCC.CCCCCC.CCCCCCC.CCCCCCCC..CCCCCCCCCCCCCCCCC+CCCCCCCCCCCCCCCX
+BBBBBBBB'BBBBBB'BBBBBBB'BBBBBBBB''BBBBBBBBBBBBBBBBBCBBBBBBBBBBBBBBB$
+HHHHHHHHXHHHHHHXHHHHHHHXHHHHHHHHXXHHHHHHHHHHHHHHHHH HHHHHHHHHHHHHHH_
+XXXXXXXXCXXXXXXCXXXXXXXCXXXXXXXXCCXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX&
 """"""-"""-"""""""-""""""""""""""""""""""-"""""""""""""""""""--""""#
+CCCCCC.CCC.CCCCCCC.CCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCC..CCCCX
+BBBBBB'BBB'BBBBBBB'BBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBB''BBBB$
+HHHHHHXHHHXHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHXXHHHH_
+XXXXXXCXXXCXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXCCXXXX&
 """"""""-""""""""""""""""-"""-""""""""""""""""""-""""""""""""""""""#
+CCCCCCCC.CCCCCCCCCCCCCCCC.CCC.CCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCX
+BBBBBBBB'BBBBBBBBBBBBBBBB'BBB'BBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHHHHHHHHHHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXXXXXXXXXXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXX&
 """"""""--"""""""""""""--""""""""-"""""""""""""""""""--""""""""""""#
+CCCCCCCC..CCCCCCCCCCCCC..CCCCCCCC.C+CCCCCCCCCCCCCCCCC..CCCCCCCCCCCCX
+BBBBBBBB''BBBBBBBBBBBBB''BBBBBBBB'BCBBBBBBBBBBBBBBBBB''BBBBBBBBBBBB$
+HHHHHHHHXXHHHHHHHHHHHHHXXHHHHHHHHXH HHHHHHHHHHHHHHHHHXXHHHHHHHHHHHH_
+XXXXXXXXCCXXXXXXXXXXXXXCCXXXXXXXXCX XXXXXXXXXXXXXXXXXCCXXXXXXXXXXXX&
 """"""""-"-""""""""""""""-""""""""""#""""""""""""""""""""""""-"""""#
+CCCCCCCC.C.CCCCCCCCCCCCCC.CCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCX
+BBBBBBBB'B'BBBBBBBBBBBBBB'BBBBBBBBBB$BBBBBBBBBBBBBBBBBBBBBBBB'BBBBB$
+HHHHHHHHXHXHHHHHHHHHHHHHHXHHHHHHHHHH_HHHHHHHHHHHHHHHHHHHHHHHHXHHHHH_
+XXXXXXXXCXCXXXXXXXXXXXXXXCXXXXXXXXXX&XXXXXXXXXXXXXXXXXXXXXXXXCXXXXX&
 """""""""---""""""""""-"""""""""-""""""-""""""""-"""""""""""-""-"""#
+CCCCCCCCC...CCCCCCCCCC.CCCCCCCCC.CCCCCC.CCCCCCCC.CCCCCCCCCCC.CC.CCCX
+BBBBBBBBB'''BBBBBBBBBB'BBBBBBBBB'BBBBBB'BBBBBBBB'BBBBBBBBBBB'BB'BBB$
+HHHHHHHHHXXXHHHHHHHHHHXHHHHHHHHHXHHHHHHXHHHHHHHHXHHHHHHHHHHHXHHXHHH_
+XXXXXXXXXCCCXXXXXXXXXXCXXXXXXXXXCXXXXXXCXXXXXXXXCXXXXXXXXXXXCXXCXXX&
 """"""""-""-"-""-"""-""""""""""""""""""-""""-""""""""""""""""""""""#
+CCCCCCCC.CC.C.CC.CCC.CCCCCCCCCCCCCCCCCC.CCCC.CCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBB'BB'B'BB'BBB'BBBBBBBBBBBBBBBBBB'BBBB'BBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHXHHXHXHHXHHHXHHHHHHHHHHHHHHHHHHXHHHHXHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXCXXCXCXXCXXXCXXXXXXXXXXXXXXXXXXCXXXXCXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-"""""""""""-""""""""""""""""""""""""""-""""""""""-"""""""#
+CCCCCCCCC.CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCC.CCCCCCCX
+BBBBBBBBB'BBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBB'BBBBBBB$
+HHHHHHHHHXHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHXHHHHHHH_
+XXXXXXXXXCXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXCXXXXXXX&
 """"""""""""""""""-"""-"""""""""""-""""""""""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCC.CCC.CCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBB'BBB'BBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHXHHHXHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXCXXXCXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""--"""""""""""""""""""""""-#"""""""""""-""""-""""-"""-"""#
+CCCCCCCCCCC..CCCCCCCCCCCCCCCCCCCCCCC.XCCCCCCCCCCC.CCCC.CCCC.CCC.CCCX
+BBBBBBBBBBB''BBBBBBBBBBBBBBBBBBBBBBB'$BBBBBBBBBBB'BBBB'BBBB'BBB'BBB$
+HHHHHHHHHHHXXHHHHHHHHHHHHHHHHHHHHHHHX_HHHHHHHHHHHXHHHHXHHHHXHHHXHHH_
+XXXXXXXXXXXCCXXXXXXXXXXXXXXXXXXXXXXXC&XXXXXXXXXXXCXXXXCXXXXCXXXCXXX&
 "-""""""""""""""""""""""""""-"-""-"""""""""""""-"""-""""""""-""-"""#
+C.CCCCCCCCCCCCCCCCCCCCCCCCCC.C.CC.CCCCCCCCCCCCC.CCC.CCCCCCCC.CC.CCCX
+B'BBBBBBBBBBBBBBBBBBBBBBBBBB'B'BB'BBBBBBBBBBBBB'BBB'BBBBBBBB'BB'BBB$
+HXHHHHHHHHHHHHHHHHHHHHHHHHHHXHXHHXHHHHHHHHHHHHHXHHHXHHHHHHHHXHHXHHH_
+XCXXXXXXXXXXXXXXXXXXXXXXXXXXCXCXXCXXXXXXXXXXXXXCXXXCXXXXXXXXCXXCXXX&
 """"""""""-"""""""--"""""""""""""""""""-"""""""""""""""""""""""""""#
+CCCCCCCCCC.CCCCCCC..CCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBB'BBBBBBB''BBBBBBBBBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHXHHHHHHHXXHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXCXXXXXXXCCXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""-"""""""""""---"-"""""""""-"""""-""""""""-"""""""""""#""-"#
+CCCCCCCCC.CCCCCCCCCCC...C.CCCCCCCCC.CCCCC.CCCCCCCC.CCCCCCCCCCCXCC.CX
+BBBBBBBBB'BBBBBBBBBBB'''B'BBBBBBBBB'BBBBB'BBBBBBBB'BBBBBBBBBBB$BB'B$
+HHHHHHHHHXHHHHHHHHHHHXXXHXHHHHHHHHHXHHHHHXHHHHHHHHXHHHHHHHHHHH_HHXH_
+XXXXXXXXXCXXXXXXXXXXXCCCXCXXXXXXXXXCXXXXXCXXXXXXXXCXXXXXXXXXXX&XXCX&
 "-""""""""--""""""""""-"--"--""""-""""""""-""""#"-"""""""""""""""""#
+C.CCCCCCCC..CCCCCCCCCC.C..C..CCCC.CCCCCCCC.CCCCXC.CCCCCCCCCCCCCCCCCX
+B'BBBBBBBB''BBBBBBBBBB'B''B''BBBB'BBBBBBBB'BBBB$B'BBBBBBBBBBBBBBBBB$
+HXHHHHHHHHXXHHHHHHHHHHXHXXHXXHHHHXHHHHHHHHXHHHH_HXHHHHHHHHHHHHHHHHH_
+XCXXXXXXXXCCXXXXXXXXXXCXCCXCCXXXXCXXXXXXXXCXXXX&XCXXXXXXXXXXXXXXXXX&
 """"""""""""""""""""""-""""-""-""""""#""""-""""""""""""""""""""""""#
+CCCCCCCCCCCCCCCCCCCCCC.CCCC.CC.CCCCCCXCCCC.CCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBBBBBBBBBBBBBB'BBBB'BB'BBBBBB$BBBB'BBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHHHHHHXHHHHXHHXHHHHHH_HHHHXHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXXXXXXCXXXXCXXCXXXXXX&XXXXCXXXXXXXXXXXXXXXXXXXXXXXX&
 """""""""""""""-"--"""""""""""-""-"""""""""""""""""""""""-"""""""""#
+CCCCCCCCCCCCCCC.C..CCCCCCCCCCC.CC.CCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCX
+BBBBBBBBBBBBBBB'B''BBBBBBBBBBB'BB'BBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBB$
+HHHHHHHHHHHHHHHXHXXHHHHHHHHHHHXHHXHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHH_
+XXXXXXXXXXXXXXXCXCCXXXXXXXXXXXCXXCXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXX&
 """""""""""""""""-""""""""""""-""""""""""""""""""""""""-"""""""""""#
+CCCCCCCCCCCCCCCCC.CCCCCCCCCCCC.CCCCCCCCCCCCCCCCCCCCCCCC.CCCCCCCCCCCX
+BBBBBBBBBBBBBBBBB'BBBBBBBBBBBB'BBBBBBBBBBBBBBBBBBBBBBBB'BBBBBBBBBBB$
+HHHHHHHHHHHHHHHHHXHHHHHHHHHHHHXHHHHHHHHHHHHHHHHHHHHHHHHXHHHHHHHHHHH_
+XXXXXXXXXXXXXXXXXCXXXXXXXXXXXXCXXXXXXXXXXXXXXXXXXXXXXXXCXXXXXXXXXXX&
 "-"""""""""---""""""""-"-"-"""-"-""""""""""""-"""""""""""--""""""-"#
+C.CCCCCCCCC...CCCCCCCC.C.C.CCC.C.CCCCCCCCCCCC.CCCCCCCCCCC..CCCCCC.CX
+B'BBBBBBBBB'''BBBBBBBB'B'B'BBB'B'BBBBBBBBBBBB'BBBBBBBBBBB''BBBBBB'B$
+HXHHHHHHHHHXXXHHHHHHHHXHXHXHHHXHXHHHHHHHHHHHHXHHHHHHHHHHHXXHHHHHHXH_
+XCXXXXXXXXXCCCXXXXXXXXCXCXCXXXCXCXXXXXXXXXXXXCXXXXXXXXXXXCCXXXXXXCX&
 """""""""""""""""-"""-""-"""""-""-""""""""""""""""-"""""""""""-""""#
+CCCCCCCCCCCCCCCCC.CCC.CC.CCCCC.CC.CCCCCCCCCCCCCCCC.CCCCCCCCCCC.CCCCX
+BBBBBBBBBBBBBBBBB'BBB'BB'BBBBB'BB'BBBBBBBBBBBBBBBB'BBBBBBBBBBB'BBBB$
+HHHHHHHHHHHHHHHHHXHHHXHHXHHHHHXHHXHHHHHHHHHHHHHHHHXHHHHHHHHHHHXHHHH_
+XXXXXXXXXXXXXXXXXCXXXCXXCXXXXXCXXCXXXXXXXXXXXXXXXXCXXXXXXXXXXXCXXXX&
 -""""-""""""""""-""-"-""-"""""""""-"""""""""-"""""-""""-"""""""""""#
+.CCCC.CCCCCCCCCC.CC.C.CC.CCCCCCCCC.CCCCCCCCC.CCCCC.CCCC.CCCCCCCCCCCX
+'BBBB'BBBBBBBBBB'BB'B'BB'BBBBBBBBB'BBBBBBBBB'BBBBB'BBBB'BBBBBBBBBBB$
+XHHHHXHHHHHHHHHHXHHXHXHHXHHHHHHHHHXHHHHHHHHHXHHHHHXHHHHXHHHHHHHHHHH_
+CXXXXCXXXXXXXXXXCXXCXCXXCXXXXXXXXXCXXXXXXXXXCXXXXXCXXXXCXXXXXXXXXXX&
 """"""-""-""""--""""--""-"""""""""-""""""""-"""""""""""-"""""""""""#
+CCCCCC.CC.CCCC..CCCC..CC.CCCCCCCCC.CCCCCCCC.CCCCCCCCCCC.CCCCCCCCCCCX
+BBBBBB'BB'BBBB''BBBB''BB'BBBBBBBBB'BBBBBBBB'BBBBBBBBBBB'BBBBBBBBBBB$
+HHHHHHXHHXHHHHXXHHHHXXHHXHHHHHHHHHXHHHHHHHHXHHHHHHHHHHHXHHHHHHHHHHH_
+XXXXXXCXXCXXXXCCXXXXCCXXCXXXXXXXXXCXXXXXXXXCXXXXXXXXXXXCXXXXXXXXXXX&
 -"""""""""--"""-#-""""-"-""""-""""-"-""""""""""-"-"""""""""""""""""#
+.CCCCCCCCC..CCC.X.CCCC.C.CCCC.CCCC.C.CCCCCCCCCC.C.CCCCCCCCCCCCCCCCCX
+'BBBBBBBBB''BBB'$'BBBB'B'BBBB'BBBB'B'BBBBBBBBBB'B'BBBBBBBBBBBBBBBBB$
+XHHHHHHHHHXXHHHX_XHHHHXHXHHHHXHHHHXHXHHHHHHHHHHXHXHHHHHHHHHHHHHHHHH_
+CXXXXXXXXXCCXXXC&CXXXXCXCXXXXCXXXXCXCXXXXXXXXXXCXCXXXXXXXXXXXXXXXXX&
 """"""""""-""-""-"""""""-"""""""-"""-"""""""""""""""""""""""""-"-"-#
+CCCCCCCCCC.CC.CC.CCCCCCC.CCCCCCC.CCC.CCCCCCCCCCCCCCCCCCCCCCCCC.C.C.X
+BBBBBBBBBB'BB'BB'BBBBBBB'BBBBBBB'BBB'BBBBBBBBBBBBBBBBBBBBBBBBB'B'B'$
+HHHHHHHHHHXHHXHHXHHHHHHHXHHHHHHHXHHHXHHHHHHHHHHHHHHHHHHHHHHHHHXHXHX_
+XXXXXXXXXXCXXCXXCXXXXXXXCXXXXXXXCXXXCXXXXXXXXXXXXXXXXXXXXXXXXXCXCXC&
 """"""""""-"-"""""""""-"""-"""""--"""""""""""""""""""""""""""""""""#
+CCCCCCCCCC.C.CCCCCCCCC.CCC.CCCCC..CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCX
+BBBBBBBBBB'B'BBBBBBBBB'BBB'BBBBB''BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB$
+HHHHHHHHHHXHXHHHHHHHHHXHHHXHHHHHXXHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH_
+XXXXXXXXXXCXCXXXXXXXXXCXXXCXXXXXCCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&
 """"""""""--"""-""""""""""-""""""--"""-"""-"""""-"""""-""-"""""""""#
+CCCCCCCCCC..CCC.CCCCCCCCCC.CCCCCC..CCC.CCC.CCCCC.CCCCC.CC.CCCCC+CCCX
+BBBBBBBBBB''BBB'BBBBBBBBBB'BBBBBB''BBB'BBB'BBBBB'BBBBB'BB'BBBBBCBBB$
+HHHHHHHHHHXXHHHXHHHHHHHHHHXHHHHHHXXHHHXHHHXHHHHHXHHHHHXHHXHHHHH HHH_
+XXXXXXXXXXCCXXXCXXXXXXXXXXCXXXXXXCCXXXCXXXCXXXXXCXXXXXCXXCXXXXX XXX&
 """""-"""-"-"-"""""---"""--""""--""-"""--""""""""""-""-""-"""""-""-#
+CCCCC.CCC.C.C.CCCCC...CCC..CCCC..CC.CCC..CCCCCCCCCC.CC.CC.CCCCC.CC.X
+BBBBB'BBB'B'B'BBBBB'''BBB''BBBB''BB'BBB''BBBBBBBBBB'BB'BB'BBBBB'BB'$
+HHHHHXHHHXHXHXHHHHHXXXHHHXXHHHHXXHHXHHHXXHHHHHHHHHHXHHXHHXHHHHHXHHX_
+XXXXXCXXXCXCXCXXXXXCCCXXXCCXXXXCCXXCXXXCCXXXXXXXXXXCXXCXXCXXXXXCXXC&
 "-"""""--""-""""-""-"""""--"""""""--"""-"-"-"-"""""""-""-""""""--"-#
+C.CCCCC..CC.CCCC.CC.CCCCC..CCCCCCC..CCC.C.C.C.CCCCCCC.CC.CCCCCC..C.X
+B'BBBBB''BB'BBBB'BB'BBBBB''BBBBBBB''BBB'B'B'B'BBBBBBB'BB'BBBBBB''B'$
+HXHHHHHXXHHXHHHHXHHXHHHHHXXHHHHHHHXXHHHXHXHXHXHHHHHHHXHHXHHHHHHXXHX_
+XCXXXXXCCXXCXXXXCXXCXXXXXCCXXXXXXXCCXXXCXCXCXCXXXXXXXCXXCXXXXXXCCXC&
 """-""""""""""""""-"""""-"-""""""--""""""""-""""""""-"""--"""""-"""#
+CCC.CCCCCCCCCCCCCC.CCCCC.C.CCCCCC..CCCCCCCC.CCCCCCCC.CCC..CCCCC.CCCX
+BBB'BBBBBBBBBBBBBB'BBBBB'B'BBBBBB''BBBBBBBB'BBBBBBBB'BBB''BBBBB'BBB$
+HHHXHHHHHHHHHHHHHHXHHHHHXHXHHHHHHXXHHHHHHHHXHHHHHHHHXHHHXXHHHHHXHHH_
+XXXCXXXXXXXXXXXXXXCXXXXXCXCXXXXXXCCXXXXXXXXCXXXXXXXXCXXXCCXXXXXCXXX&
 """"""""""-"--""""""""""""-"""""""-""""""""""""""""-""-"""""""""""-#
+CCCCCCCCCC.C..CCCCCCCCCCCC.CCCCCCC.CCCCCCCCCCCCCCCC.CC.CCCCCCCCCCC.X
+BBBBBBBBBB'B''BBBBBBBBBBBB'BBBBBBB'BBBBBBBBBBBBBBBB'BB'BBBBBBBBBBB'$
+HHHHHHHHHHXHXXHHHHHHHHHHHHXHHHHHHHXHHHHHHHHHHHHHHHHXHHXHHHHHHHHHHHX_
+XXXXXXXXXXCXCCXXXXXXXXXXXXCXXXXXXXCXXXXXXXXXXXXXXXXCXXCXXXXXXXXXXXC&
 "-""-""""-"-"-""""-"-""-"-"""""-"--"""""""""""""""="-"-""""""""""""#
+C.CC.CCCC.C.C.CCCC.C.C+.C.CCCCC.C..CCCCCCCCCCCCCCCCC.C.CCCCCCCCCCCCX
+B'BB'BBBB'B'B'BBBB'B'BC'B'BBBBB'B''BBBBBBBBBBBBBBB B'B'BBBBBBBBBBBB$
+HXHHXHHHHXHXHXHHHHXHXH XHXHHHHHXHXXHHHHHHHHHHHHHHH HXHXHHHHHHHHHHHH_
+XCXXCXXXXCXCXCXXXXCXCX CXCXXXXXCXCCXXXXXXXXXXXXXXX XCXCXXXXXXXXXXXX&
 ""-""""""-"""-""""-"-"-"""-"#"------""""""""""-"""-""---"""-""-"-""#
+CC.CCCCCC.+CC.CCCC.C.C.CCC.CXC......CCCCCCCCCC.CCC.CC...CCC.CC.C.CCX
+BB'BBBBBB'CBB'BBBB'B'B'BBB'B$B''''''BBBBBBBBBB'BBB'BB'''BBB'BB'B'BB$
+HHXHHHHHHX HHXHHHHXHXHXHHHXH_HXXXXXXHHHHHHHHHHXHHHXHHXXXHHHXHHXHXHH_
+XXCXXXXXXC XXCXXXXCXCXCXXXCX&XCCCCCCXXXXXXXXXXCXXXCXXCCCXXXCXXCXCXX&
 """"""""-"""-""-""""-"""----"-""---"""""-"""""---""-"--""""""""--"-#
+CCCCCCCC.CCC.CC.CCCC.CCC....C.CC...CCCCC.CCCCC...CC.C..CCCCCCCC..C.X
+BBBBBBBB'BBB'BB'BBBB'BBB''''B'BB'''BBBBB'BBBBB'''BB'B''BBBBBBBB''B'$
+HHHHHHHHXHHHXHHXHHHHXHHHXXXXHXHHXXXHHHHHXHHHHHXXXHHXHXXHHHHHHHHXXHX_
+XXXXXXXXCXXXCXXCXXXXCXXXCCCCXCXXCCCXXXXXCXXXXXCCCXXCXCCXXXXXXXXCCXC&
 ---"-""""""----"""-"--"""--"""""---""""""""-"""-""-"-"""""---""--"-#
+...C.CCCCCC....CCC.C..CCC..CCCCC...CCCCCCCC.CCC.CC.C.CCCCC...CC..C.X
+'''B'BBBBBB''''BBB'B''BBB''BBBBB'''BBBBBBBB'BBB'BB'B'BBBBB'''BB''B'$
+XXXHXHHHHHHXXXXHHHXHXXHHHXXHHHHHXXXHHHHHHHHXHHHXHHXHXHHHHHXXXHHXXHX_
+CCCXCXXXXXXCCCCXXXCXCCXXXCCXXXXXCCCXXXXXXXXCXXXCXXCXCXXXXXCCCXXCCXC&
 -""""""-"----""""---""""""--""#"""---"""--""-""""""-""""-""-""""--"#
+.CCCCCC.C....CCCC...CCCCCC..CCXCCC...CCC..CC.CCCCCC.CCCC.CC.CCCC..CX
+'BBBBBB'B''''BBBB'''BBBBBB''BB$BBB'''BBB''BB'BBBBBB'BBBB'BB'BBBB''B$
+XHHHHHHXHXXXXHHHHXXXHHHHHHXXHH_HHHXXXHHHXXHHXHHHHHHXHHHHXHHXHHHHXXH_
+CXXXXXXCXCCCCXXXXCCCXXXXXXCCXX&XXXCCCXXXCCXXCXXXXXXCXXXXCXXCXXXXCCX&
 ----"""""""---"-"""-""""-"-"""""-"--"""""""""""""""-""""""""""-""""#
+....CCCCCCC...C.CCC.CCCC.C.CCCCC.C..CCCCCCCCCCCCCCC.CCCCCCCCCC.CCCCX
+''''BBBBBBB'''B'BBB'BBBB'B'BBBBB'B''BBBBBBBBBBBBBBB'BBBBBBBBBB'BBBB$
+XXXXHHHHHHHXXXHXHHHXHHHHXHXHHHHHXHXXHHHHHHHHHHHHHHHXHHHHHHHHHHXHHHH_
+CCCCXXXXXXXCCCXCXXXCXXXXCXCXXXXXCXCCXXXXXXXXXXXXXXXCXXXXXXXXXXCXXXX&
 """"""-""""---""""-""""""-""""""--""""""""""""""-""-"""""""""-"""""#
+CCCCCC.CCCC...CCCC.CCCCCC.CCCCCC..CCCCCCCCCCCCCC.CC.CCCCCCCCC.CCCCCX
+BBBBBB'BBBB'''BBBB'BBBBBB'BBBBBB''BBBBBBBBBBBBBB'BB'BBBBBBBBB'BBBBB$
+HHHHHHXHHHHXXXHHHHXHHHHHHXHHHHHHXXHHHHHHHHHHHHHHXHHXHHHHHHHHHXHHHHH_
+XXXXXXCXXXXCCCXXXXCXXXXXXCXXXXXXCCXXXXXXXXXXXXXXCXXCXXXXXXXXXCXXXXX&
 "-"""""""""""-""""-""""---"""""-----""""""-"-""--"""""""""""-"-""""#
+C.CCCCCCCCCCC.CCCC.CCCC...CCCCC.....CCCCCC.C.CC..CCCCCCCCCCC.C.CCCCX
+B'BBBBBBBBBBB'BBBB'BBBB'''BBBBB'''''BBBBBB'B'BB''BBBBBBBBBBB'B'BBBB$
+HXHHHHHHHHHHHXHHHHXHHHHXXXHHHHHXXXXXHHHHHHXHXHHXXHHHHHHHHHHHXHXHHHH_
+XCXXXXXXXXXXXCXXXXCXXXXCCCXXXXXCCCCCXXXXXXCXCXXCCXXXXXXXXXXXCXCXXXX&
 "--"-""--"--"-""""""""---"--"""""---""-""-"""""-----"-"""-"-"-"-"""#
+C..C.CC..C..C.CCCCCCCC...C..CCCCC...CC.CC.CCCCC.....C.CCC.C.C.C.CCCX
+B''B'BB''B''B'BBBBBBBB'''B''BBBBB'''BB'BB'BBBBB'''''B'BBB'B'B'B'BBB$
+HXXHXHHXXHXXHXHHHHHHHHXXXHXXHHHHHXXXHHXHHXHHHHHXXXXXHXHHHXHXHXHXHHH_
+XCCXCXXCCXCCXCXXXXXXXXCCCXCCXXXXXCCCXXCXXCXXXXXCCCCCXCXXXCXCXCXCXXX&
 """""""""""-"""-""-"""-"---""""-"-"-""""""""""-"""""""-"""""-"""-"-#
+CCCCCCCCCCC.CCC.CC.CCC.C...CCCC.C.C.CCCCCCCCCC.CCCCCCC.CCCCC.CCC.C.X
+BBBBBBBBBBB'BBB'BB'BBB'B'''BBBB'B'B'BBBBBBBBBB'BBBBBBB'BBBBB'BBB'B'$
+HHHHHHHHHHHXHHHXHHXHHHXHXXXHHHHXHXHXHHHHHHHHHHXHHHHHHHXHHHHHXHHHXHX_
+XXXXXXXXXXXCXXXCXXCXXXCXCCCXXXXCXCXCXXXXXXXXXXCXXXXXXXCXXXXXCXXXCXC&
 """""""""---""--"--"-"-"-"-"""""--""-""-"""-"""-""-"""-""-""-"""""-#
+CCCCCCCCC...CC..C..C.C.C.C.CCCCC..CC.CC.CCC.CCC.CC.CCC.CC.CC.CCCCC.X
+BBBBBBBBB'''BB''B''B'B'B'B'BBBBB''BB'BB'BBB'BBB'BB'BBB'BB'BB'BBBBB'$
+HHHHHHHHHXXXHHXXHXXHXHXHXHXHHHHHXXHHXHHXHHHXHHHXHHXHHHXHHXHHXHHHHHX_
+XXXXXXXXXCCCXXCCXCCXCXCXCXCXXXXXCCXXCXXCXXXCXXXCXXCXXXCXXCXXCXXXXXC&
 "-""""""""""-"-""""""""--"-"""-"---"--""""""""---""""--"""-"--""""-#
+C.CCCCCCCCCC.C.CCCCCCCC..C.CCC.C...C..CCCCCCCC...CCCC..CCC.C..CCCC.X
+B'BBBBBBBBBB'B'BBBBBBBB''B'BBB'B'''B''BBBBBBBB'''BBBB''BBB'B''BBBB'$
+HXHHHHHHHHHHXHXHHHHHHHHXXHXHHHXHXXXHXXHHHHHHHHXXXHHHHXXHHHXHXXHHHHX_
+XCXXXXXXXXXXCXCXXXXXXXXCCXCXXXCXCCCXCCXXXXXXXXCCCXXXXCCXXXCXCCXXXXC&
 """-"--"-""---"--""""--""""--"""----""-"""-"-"-""""""-"-"-"""""--"-#
+CCC.C..C.CC...C..CCCC..CCCC..CC+....CC.CCC.C.C.CCCCCC.C.C.CCCCC..C.X
+BBB'B''B'BB'''B''BBBB''BBBB''BBC''''BB'BBB'B'B'BBBBBB'B'B'BBBBB''B'$
+HHHXHXXHXHHXXXHXXHHHHXXHHHHXXHH XXXXHHXHHHXHXHXHHHHHHXHXHXHHHHHXXHX_
+XXXCXCCXCXXCCCXCCXXXXCCXXXXCCXX CCCCXXCXXXCXCXCXXXXXXCXCXCXXXXXCCXC&
 """"""""""-"-"""""-"""+"""""""""-"--""""""-"""-"""""----"-"""""-"""#
+CCCCCCCCCC.C.CCCCC.CCCCCCCCCCCCC.C..CCCCCC.CCC.CCCCC....C.CCCCC.CCCX
+BBBBBBBBBB'B'BBBBB'BBB BBBBBBBBB'B''BBBBBB'BBB'BBBBB''''B'BBBBB'BBB$
+HHHHHHHHHHXHXHHHHHXHHH HHHHHHHHHXHXXHHHHHHXHHHXHHHHHXXXXHXHHHHHXHHH_
+XXXXXXXXXXCXCXXXXXCXXX XXXXXXXXXCXCCXXXXXXCXXXCXXXXXCCCCXCXXXXXCXXX&
 """"-"""""""--"""""""""""--"""-"----""""""-"""-"""-"-""-"""""---"--#
+CCCC.CCCCCCC..CCCCCCCCCCC..CCC.C....CCCCCC.CCC.CCC.C.CC.CCCCC...C..X
+BBBB'BBBBBBB''BBBBBBBBBBB''BBB'B''''BBBBBB'BBB'BBB'B'BB'BBBBB'''B''$
+HHHHXHHHHHHHXXHHHHHHHHHHHXXHHHXHXXXXHHHHHHXHHHXHHHXHXHHXHHHHHXXXHXX_
+XXXXCXXXXXXXCCXXXXXXXXXXXCCXXXCXCCCCXXXXXXCXXXCXXXCXCXXCXXXXXCCCXCC&
 """"""""""""-"-"-""""""-""-""""---"--"""""""""-""--"""-""""-"----"-#
+CCCCCCCCCCCC.C.C.CCCCCC.CC.CCCC...C..CCCCCCCCC.CC..CCC.CCCC.C....C.X
+BBBBBBBBBBBB'B'B'BBBBBB'BB'BBBB'''B''BBBBBBBBB'BB''BBB'BBBB'B''''B'$
+HHHHHHHHHHHHXHXHXHHHHHHXHHXHHHHXXXHXXHHHHHHHHHXHHXXHHHXHHHHXHXXXXHX_
+XXXXXXXXXXXXCXCXCXXXXXXCXXCXXXXCCCXCCXXXXXXXXXCXXCCXXXCXXXXCXCCCCXC&
 """"-""-"""--""""-""---""--""""---"-"""---"-""""-"-"-----"-"""-"""-#
+CCCC.CC.CCC..CCCC.CC...CC..CCCC...C.CCC...C.CCCC.C.C.....C.CCC.CCC.X
+BBBB'BB'BBB''BBBB'BB'''BB''BBBB'''B'BBB'''B'BBBB'B'B'''''B'BBB'BBB'$
+HHHHXHHXHHHXXHHHHXHHXXXHHXXHHHHXXXHXHHHXXXHXHHHHXHXHXXXXXHXHHHXHHHX_
+XXXXCXXCXXXCCXXXXCXXCCCXXCCXXXXCCCXCXXXCCCXCXXXXCXCXCCCCCXCXXXCXXXC&
 """""""""-"--"-"""-""-""----""-----"""""""-""""""-""""-"""-"""--"--#
+CCCCCCCCC.C..C.CCC.CC.CC....CC.....CCCCCCC.CCCCCC.CCCC.CCC.CCC..C..X
+BBBBBBBBB'B''B'BBB'BB'BB''''BB'''''BBBBBBB'BBBBBB'BBBB'BBB'BBB''B''$
+HHHHHHHHHXHXXHXHHHXHHXHHXXXXHHXXXXXHHHHHHHXHHHHHHXHHHHXHHHXHHHXXHXX_
+XXXXXXXXXCXCCXCXXXCXXCXXCCCCXXCCCCCXXXXXXXCXXXXXXCXXXXCXXXCXXXCCXCC&
 """"""-"""-"""-"----""-"---""""------""""-""-"""""--"-"""-""--""-""#
+CCCCCC.CCC.CCC.C....CC.C...CCCC......CCCC.CC.CCCCC..C.CCC.CC..CC.CCX
+BBBBBB'BBB'BBB'B''''BB'B'''BBBB''''''BBBB'BB'BBBBB''B'BBB'BB''BB'BB$
+HHHHHHXHHHXHHHXHXXXXHHXHXXXHHHHXXXXXXHHHHXHHXHHHHHXXHXHHHXHHXXHHXHH_
+XXXXXXCXXXCXXXCXCCCCXXCXCCCXXXXCCCCCCXXXXCXXCXXXXXCCXCXXXCXXCCXXCXX&
 """"""""---"-"""-""-""-"---"""""""-""""""-"--"--""-""""""--"-""--""#
+CCCCCCCC...C.CCC.CC.CC.C...CCCCCCC.CCCCCC.C..C..CC.CCCCCC..C.CC..CCX
+BBBBBBBB'''B'BBB'BB'BB'B'''BBBBBBB'BBBBBB'B''B''BB'BBBBBB''B'BB''BB$
+HHHHHHHHXXXHXHHHXHHXHHXHXXXHHHHHHHXHHHHHHXHXXHXXHHXHHHHHHXXHXHHXXHH_
+XXXXXXXXCCCXCXXXCXXCXXCXCCCXXXXXXXCXXXXXXCXCCXCCXXCXXXXXXCCXCXXCCXX&
 ""-"""--"-""-"--""--""-"----"""---"--""-"---"-"-"--"""-----"-"-""""#
+CC.CCC..C.CC.C..CC..CC.C....CCC...C..CC.C...C.C.C..CCC.....C.C.CCCCX
+BB'BBB''B'BB'B''BB''BB'B''''BBB'''B''BB'B'''B'B'B''BBB'''''B'B'BBBB$
+HHXHHHXXHXHHXHXXHHXXHHXHXXXXHHHXXXHXXHHXHXXXHXHXHXXHHHXXXXXHXHXHHHH_
+XXCXXXCCXCXXCXCCXXCCXXCXCCCCXXXCCCXCCXXCXCCCXCXCXCCXXXCCCCCXCXCXXXX&
 ""-"""""------""-""-""-"""-"""--"----"""""-"--""---"""---""""""-"""#
+CC.CCCCC......CC.CC.CC.CCC.CCC..C....CCCCC.C..CC...CCC...CCCCCC.CCCX
+BB'BBBBB''''''BB'BB'BB'BBB'BBB''B''''BBBBB'B''BB'''BBB'''BBBBBB'BBB$
+HHXHHHHHXXXXXXHHXHHXHHXHHHXHHHXXHXXXXHHHHHXHXXHHXXXHHHXXXHHHHHHXHHH_
+XXCXXXXXCCCCCCXXCXXCXXCXXXCXXXCCXCCCCXXXXXCXCCXXCCCXXXCCCXXXXXXCXXX&
 """"""""--"""---""-------"--""-"--""+""""-"--"-""""-""-""""""""-"""#
+CCCCCCCC..CCC...CC.......C..CC.C..CCCCCCC.C..C.CCCC.CC.CCCCCCCC.CCCX
+BBBBBBBB''BBB'''BB'''''''B''BB'B''BB BBBB'B''B'BBBB'BB'BBBBBBBB'BBB$
+HHHHHHHHXXHHHXXXHHXXXXXXXHXXHHXHXXHH HHHHXHXXHXHHHHXHHXHHHHHHHHXHHH_
+XXXXXXXXCCXXXCCCXXCCCCCCCXCCXXCXCCXX XXXXCXCCXCXXXXCXXCXXXXXXXXCXXX&
 ""-"""""-""---"--""-----""-""""--"--"""""--"""--""-""""""--""-"-"""#
+CC.CCCCC.CC...C..CC.....CC.CCCC..C..+CCCC..CCC..CC.CCCCCC..CC.C.CCCX
+BB'BBBBB'BB'''B''BB'''''BB'BBBB''B''CBBBB''BBB''BB'BBBBBB''BB'B'BBB$
+HHXHHHHHXHHXXXHXXHHXXXXXHHXHHHHXXHXX HHHHXXHHHXXHHXHHHHHHXXHHXHXHHH_
+XXCXXXXXCXXCCCXCCXXCCCCCXXCXXXXCCXCC XXXXCCXXXCCXXCXXXXXXCCXXCXCXXX&
 "-""""---"""-"""-"-"-""-------"-"----""""""-"-"-""---"-"-----"""-""#
+C.CCCC...CCC.CCC.C.+.CC.......C.C....CCCCCC.C.C.CC...C.C.....CCC.CCX
+B'BBBB'''BBB'BBB'B'C'BB'''''''B'B''''BBBBBB'B'B'BB'''B'B'''''BBB'BB$
+HXHHHHXXXHHHXHHHXHX XHHXXXXXXXHXHXXXXHHHHHHXHXHXHHXXXHXHXXXXXHHHXHH_
+XCXXXXCCCXXXCXXXCXC CXXCCCCCCCXCXCCCCXXXXXXCXCXCXXCCCXCXCCCCCXXXCXX&
 ""-"""""-"""-"-""-""-"""-"-"""---------""""""-"----"--""-"--""--"-"#
+CC.CCCCC.CCC.C.CC.CC.CCC.C.CCC.........CCCCCC.C....C..CC.C..CC..C.+X
+BB'BBBBB'BBB'B'BB'BB'BBB'B'BBB'''''''''BBBBBB'B''''B''BB'B''BB''B'C$
+HHXHHHHHXHHHXHXHHXHHXHHHXHXHHHXXXXXXXXXHHHHHHXHXXXXHXXHHXHXXHHXXHX _
+XXCXXXXXCXXXCXCXXCXXCXXXCXCXXXCCCCCCCCCXXXXXXCXCCCCXCCXXCXCCXXCCXC &
 ""-"""""""""-"""-""----"-"--""-"-"--"""""--""-"-"""---""--"-"""-""-#
+CC.CCCCCCCCC.CCC.CC....C.C..CC.C.C..CCCCC..CC.C.CCC...CC..C.CCC.CC.X
+BB'BBBBBBBBB'BBB'BB''''B'B''BB'B'B''BBBBB''BB'B'BBB'''BB''B'BBB'BB'$
+HHXHHHHHHHHHXHHHXHHXXXXHXHXXHHXHXHXXHHHHHXXHHXHXHHHXXXHHXXHXHHHXHHX_
+XXCXXXXXXXXXCXXXCXXCCCCXCXCCXXCXCXCCXXXXXCCXXCXCXXXCCCXXCCXCXXXCXXC&
 ""-"""""--""-----""--"-"""---"-"-"----"-"-"---""-"-"--""--"""--"--"#
+CC.CCCCC..CC.....CC..C.CCC...C.C.C....C.C.C...CC.C.C..CC..CCC..C..CX
+BB'BBBBB''BB'''''BB''B'BBB'''B'B'B''''B'B'B'''BB'B'B''BB''BBB''B''B$
+HHXHHHHHXXHHXXXXXHHXXHXHHHXXXHXHXHXXXXHXHXHXXXHHXHXHXXHHXXHHHXXHXXH_
+XXCXXXXXCCXXCCCCCXXCCXCXXXCCCXCXCXCCCCXCXCXCCCXXCXCXCCXXCCXXXCCXCCX&
 "-"-""""-""""-"-"--"--"--"--"""---"--""""""-""---"---""----"""-""--#
+C.C.CCCC.CCCC.C.C..C..C..C..CCC...C..CCCCCC.CC...C...CC....C+C.CC..X
+B'B'BBBB'BBBB'B'B''B''B''B''BBB'''B''BBBBBB'BB'''B'''BB''''BCB'BB''$
+HXHXHHHHXHHHHXHXHXXHXXHXXHXXHHHXXXHXXHHHHHHXHHXXXHXXXHHXXXXH HXHHXX_
+XCXCXXXXCXXXXCXCXCCXCCXCCXCCXXXCCCXCCXXXXXXCXXCCCXCCCXXCCCCX XCXXCC&
 -"""""""""--"""-"-"""""----"-"--""-"-"""""""""-"----"""-""--"--"-""#
+.CCCCCCCCC..CCC.C.CCCCC....C.C..CC.C.CCCCCCCCC.C....CCC.CC..C..C.CCX
+'BBBBBBBBB''BBB'B'BBBBB''''B'B''BB'B'BBBBBBBBB'B''''BBB'BB''B''B'BB$
+XHHHHHHHHHXXHHHXHXHHHHHXXXXHXHXXHHXHXHHHHHHHHHXHXXXXHHHXHHXXHXXHXHH_
+CXXXXXXXXXCCXXXCXCXXXXXCCCCXCXCCXXCXCXXXXXXXXXCXCCCCXXXCXXCCXCCXCXX&
 """-""""--"-"""""""--"-"---""""-""---""""--"""----"-"--"""""--""-""#
+CCC.CCCC..C.CCCCCCC..C.C...CCCC.CC...CCCC..CCC....C.C..CCCCC..CC.CCX
+BBB'BBBB''B'BBBBBBB''B'B'''BBBB'BB'''BBBB''BBB''''B'B''BBBBB''BB'BB$
+HHHXHHHHXXHXHHHHHHHXXHXHXXXHHHHXHHXXXHHHHXXHHHXXXXHXHXXHHHHHXXHHXHH_
+XXXCXXXXCCXCXXXXXXXCCXCXCCCXXXXCXXCCCXXXXCCXXXCCCCXCXCCXXXXXCCXXCXX&
 ""-"""""------"""--""-""----"""""----""""-""""---"-"""-"""""-""-""-#
+CC.CCCCC......CCC..CC.CC....CCCCC....CCCC.CCCC...C.CCC.CCCCC.CC.CC.X
+BB'BBBBB''''''BBB''BB'BB''''BBBBB''''BBBB'BBBB'''B'BBB'BBBBB'BB'BB'$
+HHXHHHHHXXXXXXHHHXXHHXHHXXXXHHHHHXXXXHHHHXHHHHXXXHXHHHXHHHHHXHHXHHX_
+XXCXXXXXCCCCCCXXXCCXXCXXCCCCXXXXXCCCCXXXXCXXXXCCCXCXXXCXXXXXCXXCXXC&
 """"""-"""-"-"----"-""--"""""""-----"""""--"-------"-"-"""-"-""-"--#
+CCCCCC.CCC.C.C....C.CC..CCCCCCC.....CCCCC..C.......C.C.CCC.C.CC.C..X
+BBBBBB'BBB'B'B''''B'BB''BBBBBBB'''''BBBBB''B'''''''B'B'BBB'B'BB'B''$
+HHHHHHXHHHXHXHXXXXHXHHXXHHHHHHHXXXXXHHHHHXXHXXXXXXXHXHXHHHXHXHHXHXX_
+XXXXXXCXXXCXCXCCCCXCXXCCXXXXXXXCCCCCXXXXXCCXCCCCCCCXCXCXXXCXCXXCXCC&
 """-""-"""""""""-""--""""---""------"""""--""-"--""""-"-""""-""-"-"#
+CCC.CC.CCCCCCCCC.CC..CCCC...CC......CCCCC..CC.C..CCCC.C.CCCC.CC.C.CX
+BBB'BB'BBBBBBBBB'BB''BBBB'''BB''''''BBBBB''BB'B''BBBB'B'BBBB'BB'B'B$
+HHHXHHXHHHHHHHHHXHHXXHHHHXXXHHXXXXXXHHHHHXXHHXHXXHHHHXHXHHHHXHHXHXH_
+XXXCXXCXXXXXXXXXCXXCCXXXXCCCXXCCCCCCXXXXXCCXXCXCCXXXXCXCXXXXCXXCXCX&
 """""-""--"""-"-"""""--""---"+-"----"""""""-"-""-""--"--"-""-"--"""#
+CCCCC.CC..CCC.C.CCCCC..CC...CC.C....CCCCCCC.C.CC.CC..C..C.CC.C..CCCX
+BBBBB'BB''BBB'B'BBBBB''BB'''B 'B''''BBBBBBB'B'BB'BB''B''B'BB'B''BBB$
+HHHHHXHHXXHHHXHXHHHHHXXHHXXXH XHXXXXHHHHHHHXHXHHXHHXXHXXHXHHXHXXHHH_
+XXXXXCXXCCXXXCXCXXXXXCCXXCCCX CXCCCCXXXXXXXCXCXXCXXCCXCCXCXXCXCCXXX&
 -"""""""---"--"-----"-"""-"----"----""""--""""""""""""""-"""""""-""#
+.CCCCCCC...C..C.....C.CCC.C....C....CCCC..CCCCCCCCCCCCCC.CCCCCCC.CCX
+'BBBBBBB'''B''B'''''B'BBB'B''''B''''BBBB''BBBBBBBBBBBBBB'BBBBBBB'BB$
+XHHHHHHHXXXHXXHXXXXXHXHHHXHXXXXHXXXXHHHHXXHHHHHHHHHHHHHHXHHHHHHHXHH_
+CXXXXXXXCCCXCCXCCCCCXCXXXCXCCCCXCCCCXXXXCCXXXXXXXXXXXXXXCXXXXXXXCXX&
 """"""""----""""---""-"""-"-""---"-"--"-""----"""-"-""-"--"-""""--"#
+CC+CCCCC....CCCC...CC.CCC.C.CC...C.C..C.CC....CCC.C.CC.C..C.CCCC..+X
+BBCBBBBB''''BBBB'''BB'BBB'B'BB'''B'B''B'BB''''BBB'B'BB'B''B'BBBB''C$
+HH HHHHHXXXXHHHHXXXHHXHHHXHXHHXXXHXHXXHXHHXXXXHHHXHXHHXHXXHXHHHHXX _
+XX XXXXXCCCCXXXXCCCXXCXXXCXCXXCCCXCXCCXCXXCCCCXXXCXCXXCXCCXCXXXXCC &
 """"-"""""---""""-"--"---"--"--"-----""-"""""-"""---"""-"--"----""-#
+CCCC.CCCCC...CCCC.C..C...C..C..C.....CC.CCCCC.CCC...CCC.C..C....CC.X
+BBBB'BBBBB'''BBBB'B''B'''B''B''B'''''BB'BBBBB'BBB'''BBB'B''B''''BB'$
+HHHHXHHHHHXXXHHHHXHXXHXXXHXXHXXHXXXXXHHXHHHHHXHHHXXXHHHXHXXHXXXXHHX_
+XXXXCXXXXXCCCXXXXCXCCXCCCXCCXCCXCCCCCXXCXXXXXCXXXCCCXXXCXCCXCCCCXXC&
 -"-"-"""-"-"-""-""---""--"---"""---"--"""-""-"-"--"--"-"--"-"-""""-#
+.C.C.CCC.C.C.CC.CC...CC..C...CCC...C..CCC.CC.C.C..C..C.C..C.C.CCCC.X
+'B'B'BBB'B'B'BB'BB'''BB''B'''BBB'''B''BBB'BB'B'B''B''B'B''B'B'BBBB'$
+XHXHXHHHXHXHXHHXHHXXXHHXXHXXXHHHXXXHXXHHHXHHXHXHXXHXXHXHXXHXHXHHHHX_
+CXCXCXXXCXCXCXXCXXCCCXXCCXCCCXXXCCCXCCXXXCXXCXCXCCXCCXCXCCXCXCXXXXC&
 -"""""-"-""-"""""""""-"--"--""-"-"-""""""----"""-""""""""""-"-""---#
+.CCCCC.C.+C.CCCCCCCCC.C..C..CC.C.C.CCCCCC....CCC.CCCCCCCCCC.C.CC...X
+'BBBBB'B'CB'BBBBBBBBB'B''B''BB'B'B'BBBBBB''''BBB'BBBBBBBBBB'B'BB'''$
+XHHHHHXHX HXHHHHHHHHHXHXXHXXHHXHXHXHHHHHHXXXXHHHXHHHHHHHHHHXHXHHXXX_
+CXXXXXCXC XCXXXXXXXXXCXCCXCCXXCXCXCXXXXXXCCCCXXXCXXXXXXXXXXCXCXXCCC&
 "--"""-""-"--"---"-"---"--"-"-"--"----""""-"-"""----"""---""--""""-#
+C..CCC.CC.C..C...C.C...C..+.C.C..C....CCCC.C.CCC....CCC...CC..CCCC.X
+B''BBB'BB'B''B'''B'B'''B''C'B'B''B''''BBBB'B'BBB''''BBB'''BB''BBBB'$
+HXXHHHXHHXHXXHXXXHXHXXXHXX XHXHXXHXXXXHHHHXHXHHHXXXXHHHXXXHHXXHHHHX_
+XCCXXXCXXCXCCXCCCXCXCCCXCC CXCXCCXCCCCXXXXCXCXXXCCCCXXXCCCXXCCXXXXC&
 ""-"""""---"---"-""-"----"-""""-""--""""---""-""----"-"-""""--""-""#
+CC.CCCCC...C...C.CC.C....C.CCCC.CC..CCCC...CC.CC....C.C.CCCC..CC.CCX
+BB'BBBBB'''B'''B'BB'B''''B'BBBB'BB''BBBB'''BB'BB''''B'B'BBBB''BB'BB$
+HHXHHHHHXXXHXXXHXHHXHXXXXHXHHHHXHHXXHHHHXXXHHXHHXXXXHXHXHHHHXXHHXHH_
+XXCXXXXXCCCXCCCXCXXCXCCCCXCXXXXCXXCCXXXXCCCXXCXXCCCCXCXCXXXXCCXXCXX&
 """"-""-"-"-"--""-"""-----------"--"-"""""---"-"----""-"--"--"""---#
+CCCC.CC.C.C.C..CC.CCC...........C..C.CCCCC...C.C....CC.C..C..CCC...X
+BBBB'BB'B'B'B''BB'BBB'''''''''''B''B'BBBBB'''B'B''''BB'B''B''BBB'''$
+HHHHXHHXHXHXHXXHHXHHHXXXXXXXXXXXHXXHXHHHHHXXXHXHXXXXHHXHXXHXXHHHXXX_
+XXXXCXXCXCXCXCCXXCXXXCCCCCCCCCCCXCCXCXXXXXCCCXCXCCCCXXCXCCXCCXXXCCC&
 """""-"---"-""""---""""----""--------"""""---"-"-"--""-""-"-""-"--"#
+CCCCC.C...C.CCCC...CCCC....CC........CCCCC...C.C.C..CC.CC.C.CC.C..CX
+BBBBB'B'''B'BBBB'''BBBB''''BB''''''''BBBBB'''B'B'B''BB'BB'B'BB'B''B$
+HHHHHXHXXXHXHHHHXXXHHHHXXXXHHXXXXXXXXHHHHHXXXHXHXHXXHHXHHXHXHHXHXXH_
+XXXXXCXCCCXCXXXXCCCXXXXCCCCXXCCCCCCCCXXXXXCCCXCXCXCCXXCXXCXCXXCXCCX&
 -""""-"----""-"""-"""-"""----""---"-""""-"-""--"""--"--"-"""-"-----#
+.CCCC.C....CC.CCC.CCC.CCC....CC...C.CCCC.C.CC..CCC..C..C.CCC.C.....X
+'BBBB'B''''BB'BBB'BBB'BBB''''BB'''B'BBBB'B'BB''BBB''B''B'BBB'B'''''$
+XHHHHXHXXXXHHXHHHXHHHXHHHXXXXHHXXXHXHHHHXHXHHXXHHHXXHXXHXHHHXHXXXXX_
+CXXXXCXCCCCXXCXXXCXXXCXXXCCCCXXCCCXCXXXXCXCXXCCXXXCCXCCXCXXXCXCCCCC&
 """-""-----"-"""-""-"--"-"-""""-----""""--"--""""-"-"-""""-""---"--#
+CCC.CC.....C.CCC.CC.C..C.C.CCCC.....CCCC..C..CCCC.C.C.CCCC.CC...C..X
+BBB'BB'''''B'BBB'BB'B''B'B'BBBB'''''BBBB''B''BBBB'B'B'BBBB'BB'''B''$
+HHHXHHXXXXXHXHHHXHHXHXXHXHXHHHHXXXXXHHHHXXHXXHHHHXHXHXHHHHXHHXXXHXX_
+XXXCXXCCCCCXCXXXCXXCXCCXCXCXXXXCCCCCXXXXCCXCCXXXXCXCXCXXXXCXXCCCXCC&
 """""""---"----"-"----""-----"-------"""-""-"-"""-"-"--"-"--"-"""-"#
+CCCCCCC...C....C.C....CC.....C.......CCC.CC.C.CCC.C.C..C.C..C.CCC.CX
+BBBBBBB'''B''''B'B''''BB'''''B'''''''BBB'BB'B'BBB'B'B''B'B''B'BBB'B$
+HHHHHHHXXXHXXXXHXHXXXXHHXXXXXHXXXXXXXHHHXHHXHXHHHXHXHXXHXHXXHXHHHXH_
+XXXXXXXCCCXCCCCXCXCCCCXXCCCCCXCCCCCCCXXXCXXCXCXXXCXCXCCXCXCCXCXXXCX&
 -""""""----"""--""-""-"---"-""------""-""""-""""--"""----""--"-""-"#
+.CCCCCC....CCC..CC.CC.C...+.CC......CC.CCCC.CCCC..CCC....CC..C.CC.CX
+'BBBBBB''''BBB''BB'BB'B'''C'BB''''''BB'BBBB'BBBB''BBB''''BB''B'BB'B$
+XHHHHHHXXXXHHHXXHHXHHXHXXX XHHXXXXXXHHXHHHHXHHHHXXHHHXXXXHHXXHXHHXH_
+CXXXXXXCCCCXXXCCXXCXXCXCCC CXXCCCCCCXXCXXXXCXXXXCCXXXCCCCXXCCXCXXCX&
 "----""-"------"---"""-""-""""-"----"-""-"-"--""-"--""--""""--"----#
+C....CC.C......+...CCC.CC.C+CC.C....C.CC.C.C..CC.C..CC..CCCC..C....X
+B''''BB'B''''''C'''BBB'BB'BCBB'B''''B'BB'B'B''BB'B''BB''BBBB''B''''$
+HXXXXHHXHXXXXXX XXXHHHXHHXH HHXHXXXXHXHHXHXHXXHHXHXXHHXXHHHHXXHXXXX_
+XCCCCXXCXCCCCCC CCCXXXCXXCX XXCXCCCCXCXXCXCXCCXXCXCCXXCCXXXXCCXCCCC&
 """-""----------"--""-"-"--""""---"-"""-"--"""""---"--""---"""--"--#
+CCC.CC..........C..CC.C.C..CCCC...C.CCC.C..C+CCC...C..CC...CCC..C..X
+BBB'BB''''''''''B''BB'B'B''BBBB'''B'BBB'B''BCBBB'''B''BB'''BBB''B''$
+HHHXHHXXXXXXXXXXHXXHHXHXHXXHHHHXXXHXHHHXHXXH HHHXXXHXXHHXXXHHHXXHXX_
+XXXCXXCCCCCCCCCCXCCXXCXCXCCXXXXCCCXCXXXCXCCX XXXCCCXCCXXCCCXXXCCXCC&
 --""""-----""----------""---"-----"--"""--"-""----"--"---"--"--"--"#
+..CCCC.....CC..........CC...C.....C..CCC..C.CC....C..C...C..C..C..CX
+''BBBB'''''BB''''''''''BB'''B'''''B''BBB''B'BB''''B''B'''B''B''B''B$
+XXHHHHXXXXXHHXXXXXXXXXXHHXXXHXXXXXHXXHHHXXHXHHXXXXHXXHXXXHXXHXXHXXH_
+CCXXXXCCCCCXXCCCCCCCCCCXXCCCXCCCCCXCCXXXCCXCXXCCCCXCCXCCCXCCXCCXCCX&
 "-"--""--"-"----""--""-""----""---""--""-"""-"-""""-"---"---"--""--#
+C.C..CC..C.C....CC..CC.CC....CC...CC..CC.CCC.C.CCCC.+...C...C..CC..X
+B'B''BB''B'B''''BB''BB'BB''''BB'''BB''BB'BBB'B'BBBB'C'''B'''B''BB''$
+HXHXXHHXXHXHXXXXHHXXHHXHHXXXXHHXXXHHXXHHXHHHXHXHHHHX XXXHXXXHXXHHXX_
+XCXCCXXCCXCXCCCCXXCCXXCXXCCCCXXCCCXXCCXXCXXXCXCXXXXC CCCXCCCXCCXXCC&
 "-"-"--"----""""--"--"---"-""--"------"--------""-"--"-"-""-"-"----#
+C.C.C..C....CCCC..C..+...C.CC..C......C........CC.C..C.C.CC.C.C....X
+B'B'B''B''''BBBB''B''C'''B'BB''B''''''B''''''''BB'B''B'B'BB'B'B''''$
+HXHXHXXHXXXXHHHHXXHXX XXXHXHHXXHXXXXXXHXXXXXXXXHHXHXXHXHXHHXHXHXXXX_
+XCXCXCCXCCCCXXXXCCXCC CCCXCXXCCXCCCCCCXCCCCCCCCXXCXCCXCXCXXCXCXCCCC&
 """"--""---"----""--"-"----"--"------"-"-"-""""-""--"---"""-""---""#
+CCCC..CC...C....+C..C.C....C..C......C.C.C.CCCC.CC..C...CCC.CC...CCX
+BBBB''BB'''B''''CB''B'B''''B''B''''''B'B'B'BBBB'BB''B'''BBB'BB'''BB$
+HHHHXXHHXXXHXXXX HXXHXHXXXXHXXHXXXXXXHXHXHXHHHHXHHXXHXXXHHHXHHXXXHH_
+XXXXCCXXCCCXCCCC XCCXCXCCCCXCCXCCCCCCXCXCXCXXXXCXXCCXCCCXXXCXXCCCXX&
 -"""""---"--""--"-----"----+-"-----"""-"---"--"""-----"-"""--"----"#
+.CCCCC...C..CC..C.....C....C.C.....CCC.C...C..CCC.....C.CCC..C....CX
+'BBBBB'''B''BB''B'''''B'''' 'B'''''BBB'B'''B''BBB'''''B'BBB''B''''B$
+XHHHHHXXXHXXHHXXHXXXXXHXXXX XHXXXXXHHHXHXXXHXXHHHXXXXXHXHHHXXHXXXXH_
+CXXXXXCCCXCCXXCCXCCCCCXCCCC CXCCCCCXXXCXCCCXCCXXXCCCCCXCXXXCCXCCCCX&
 -"""""-"-----""------"-"---""""------"""---"-"""-""-----"""--"-"--"#
+.CCCCC.C.....CC......C.C...+CCC......CCC...C.CCC.CC.....CCC..C.C..CX
+'BBBBB'B'''''BB''''''B'B'''CBBB''''''BBB'''B'BBB'BB'''''BBB''B'B''B$
+XHHHHHXHXXXXXHHXXXXXXHXHXXX HHHXXXXXXHHHXXXHXHHHXHHXXXXXHHHXXHXHXXH_
+CXXXXXCXCCCCCXXCCCCCCXCXCCC XXXCCCCCCXXXCCCXCXXXCXXCCCCCXXXCCXCXCCX&
 ---"-""-""-"-"-"""-""---"----"""---""-""-"----"-----"-"--"--"-"----#
+...C.CC.CC.C.C.CCC.CC...C....CCC...CC.CC.+....C.....C.C..C..C.C....X
+'''B'BB'BB'B'B'BBB'BB'''B''''BBB'''BB'BB'C''''B'''''B'B''B''B'B''''$
+XXXHXHHXHHXHXHXHHHXHHXXXHXXXXHHHXXXHHXHHX XXXXHXXXXXHXHXXHXXHXHXXXX_
+CCCXCXXCXXCXCXCXXXCXXCCCXCCCCXXXCCCXXCXXC CCCCXCCCCCXCXCCXCCXCXCCCC&
 ""---""-----"--"--""""-""--""-""-"-""""--""---------""--"-"--"--"--#
+CC...CC.....C..C..CCCC.CC..+C.CC.C.CCCC..CC.........CC..C.C..C..C..X
+BB'''BB'''''B''B''BBBB'BB''CB'BB'B'BBBB''BB'''''''''BB''B'B''B''B''$
+HHXXXHHXXXXXHXXHXXHHHHXHHXX HXHHXHXHHHHXXHHXXXXXXXXXHHXXHXHXXHXXHXX_
+XXCCCXXCCCCCXCCXCCXXXXCXXCC XCXXCXCXXXXCCXXCCCCCCCCCXXCCXCXCCXCCXCC&
 "--"-"-"---""-----""""---""-""""-"---""---"""""--"-----"--"-"""--"-#
+C..C.C.C...CC.....CCCC...CC.CCCC.C...CC...CCCCC..C.....C..C.CCC..C.X
+B''B'B'B'''BB'''''BBBB'''BB'BBBB'B'''BB'''BBBBB''B'''''B''B'BBB''B'$
+HXXHXHXHXXXHHXXXXXHHHHXXXHHXHHHHXHXXXHHXXXHHHHHXXHXXXXXHXXHXHHHXXHX_
+XCCXCXCXCCCXXCCCCCXXXXCCCXXCXXXXCXCCCXXCCCXXXXXCCXCCCCCXCCXCXXXCCXC&
 ----""--"------"-""-"--"--"-"""----""""""-"--""-----""-""---"---""-#
+....CC..C......C.CC.C..C..C.CCC....CCCCCC.C..CC.....CC.CC...C...CC.X
+''''BB''B''''''B'BB'B''B''B'BBB''''BBBBBB'B''BB'''''BB'BB'''B'''BB'$
+XXXXHHXXHXXXXXXHXHHXHXXHXXHXHHHXXXXHHHHHHXHXXHHXXXXXHHXHHXXXHXXXHHX_
+CCCCXXCCXCCCCCCXCXXCXCCXCCXCXXXCCCCXXXXXXCXCCXXCCCCCXXCXXCCCXCCCXXC&
 --"""-"""-"----"---""--------"-------""""--"-"--"---"-"--""----""-"#
+..CCC.CCC.C....C...CC........C.......CCCC..C.C..C...C.C..CC....CC.CX
+''BBB'BBB'B''''B'''BB''''''''B'''''''BBBB''B'B''B'''B'B''BB''''BB'B$
+XXHHHXHHHXHXXXXHXXXHHXXXXXXXXHXXXXXXXHHHHXXHXHXXHXXXHXHXXHHXXXXHHXH_
+CCXXXCXXXCXCCCCXCCCXXCCCCCCCCXCCCCCCCXXXXCCXCXCCXCCCXCXCCXXCCCCXXCX&
 """"------------"----------""--------""""""-"-""-"-------"""----"""#
+CCCC............C..........CC........CCCCCC.C.CC.C.......CCC....CCCX
+BBBB''''''''''''B''''''''''BB''''''''BBBBBB'B'BB'B'''''''BBB''''BBB$
+HHHHXXXXXXXXXXXXHXXXXXXXXXXHHXXXXXXXXHHHHHHXHXHHXHXXXXXXXHHHXXXXHHH_
+XXXXCCCCCCCCCCCCXCCCCCCCCCCXXCCCCCCCCXXXXXXCXCXXCXCCCCCCCXXXCCCCXXX&
 -"-"----""----------""------"""------""---"---"""-"---"--"---""----#
+.C.C....+C..........+C......CCC......CC...C...CCC.C...C..C...CC....X
+'B'B''''CB''''''''''CB''''''BBB''''''BB'''B'''BBB'B'''B''B'''BB''''$
+XHXHXXXX HXXXXXXXXXX HXXXXXXHHHXXXXXXHHXXXHXXXHHHXHXXXHXXHXXXHHXXXX_
+CXCXCCCC XCCCCCCCCCC XCCCCCCXXXCCCCCCXXCCCXCCCXXXCXCCCXCCXCCCXXCCCC&
 -""----"-"--"--"-----"-"-"--"""-----"-""-""---"--"---"""""-"--"---"#
+.CC....C.C..C..+.....C.C.C..CCC.....C.CC.CC...C..C...CCCCC.C..C...CX
+'BB''''B'B''B''C'''''B'B'B''BBB'''''B'BB'BB'''B''B'''BBBBB'B''B'''B$
+XHHXXXXHXHXXHXX XXXXXHXHXHXXHHHXXXXXHXHHXHHXXXHXXHXXXHHHHHXHXXHXXXH_
+CXXCCCCXCXCCXCC CCCCCXCXCXCCXXXCCCCCXCXXCXXCCCXCCXCCCXXXXXCXCCXCCCX&
 -""-"-""---"-"---"--"-"---""-"--------"-"--"""--"-"-------""-------#
+.CC.C.CC...C.C...C..+.C...CC.C........C.C..CCC..C.C.......CC.......X
+'BB'B'BB'''B'B'''B''C'B'''BB'B''''''''B'B''BBB''B'B'''''''BB'''''''$
+XHHXHXHHXXXHXHXXXHXX XHXXXHHXHXXXXXXXXHXHXXHHHXXHXHXXXXXXXHHXXXXXXX_
+CXXCXCXXCCCXCXCCCXCC CXCCCXXCXCCCCCCCCXCXCCXXXCCXCXCCCCCCCXXCCCCCCC&
 -"-""----"----------------"---"-----""-"-""--"-"----"""""--------"-#
+.C.CC....C................C...C.....CC.C.CC..C.C....CCCCC........C.X
+'B'BB''''B''''''''''''''''B'''B'''''BB'B'BB''B'B''''BBBBB''''''''B'$
+XHXHHXXXXHXXXXXXXXXXXXXXXXHXXXHXXXXXHHXHXHHXXHXHXXXXHHHHHXXXXXXXXHX_
+CXCXXCCCCXCCCCCCCCCCCCCCCCXCCCXCCCCCXXCXCXXCCXCXCCCCXXXXXCCCCCCCCXC&
 ---"-"-"--""--------"""---"--""-----""""-------"-"--"--"--"----"---#
+...C.C.C..CC........CCC...C..CC.....CCCC.......C.C..C..C..C....C...X
+'''B'B'B''BB''''''''BBB'''B''BB'''''BBBB'''''''B'B''B''B''B''''B'''$
+XXXHXHXHXXHHXXXXXXXXHHHXXXHXXHHXXXXXHHHHXXXXXXXHXHXXHXXHXXHXXXXHXXX_
+CCCXCXCXCCXXCCCCCCCCXXXCCCXCCXXCCCCCXXXXCCCCCCCXCXCCXCCXCCXCCCCXCCC&
 -""----""---"-"""""-""---"--""------"-""---"-""--""-""""----"------#
+.CC....CC...C.CC+CC.CC...C..CC......C.CC...C.CC..CC.CCCC....C......X
+'BB''''BB'''B'BBCBB'BB'''B''BB''''''B'BB'''B'BB''BB'BBBB''''B''''''$
+XHHXXXXHHXXXHXHH HHXHHXXXHXXHHXXXXXXHXHHXXXHXHHXXHHXHHHHXXXXHXXXXXX_
+CXXCCCCXXCCCXCXX XXCXXCCCXCCXXCCCCCCXCXXCCCXCXXCCXXCXXXXCCCCXCCCCCC&
 """--------"-----------""-----"-----+"""-""""--"-"----""----"""-"""#
+CCC........C...........CC.....C.....CCCC.CCCC..C.C....CC....CCC.CCCX
+BBB''''''''B'''''''''''BB'''''B''''' BBB'BBBB''B'B''''BB''''BBB'BBB$
+HHHXXXXXXXXHXXXXXXXXXXXHHXXXXXHXXXXX HHHXHHHHXXHXHXXXXHHXXXXHHHXHHH_
+XXXCCCCCCCCXCCCCCCCCCCCXXCCCCCXCCCCC XXXCXXXXCCXCXCCCCXXCCCCXXXCXXX&
 "--"-"----------"-"---"-"-----""--"-"-""-""--""--"-"""----"-"-----"#
+C..C.C..........C.C...C.C.....CC..C.C.CC.+C..CC..C.CCC....C.C.....CX
+B''B'B''''''''''B'B'''B'B'''''BB''B'B'BB'CB''BB''B'BBB''''B'B'''''B$
+HXXHXHXXXXXXXXXXHXHXXXHXHXXXXXHHXXHXHXHHX HXXHHXXHXHHHXXXXHXHXXXXXH_
+XCCXCXCCCCCCCCCCXCXCCCXCXCCCCCXXCCXCXCXXC XCCXXCCXCXXXCCCCXCXCCCCCX&
 -"-""--------"---"""-""------"------"-"""-"-""--------""---"""--"--#
+.C.CC........C...CCC.+C......C......C.CCC.C.CC........CC...CCC..C..X
+'B'BB''''''''B'''BBB'CB''''''B''''''B'BBB'B'BB''''''''BB'''BBB''B''$
+XHXHHXXXXXXXXHXXXHHHX HXXXXXXHXXXXXXHXHHHXHXHHXXXXXXXXHHXXXHHHXXHXX_
+CXCXXCCCCCCCCXCCCXXXC XCCCCCCXCCCCCCXCXXXCXCXXCCCCCCCCXXCCCXXXCCXCC&
 -------"-----------"--"----""""-----"""""-"""---""---""-"---""-----#
+.......C...........C..C....CCCC.....CCCCC.CCC...CC...CC.C...CC.....X
+'''''''B'''''''''''B''B''''BBBB'''''BBBBB'BBB'''BB'''BB'B'''BB'''''$
+XXXXXXXHXXXXXXXXXXXHXXHXXXXHHHHXXXXXHHHHHXHHHXXXHHXXXHHXHXXXHHXXXXX_
+CCCCCCCXCCCCCCCCCCCXCCXCCCCXXXXCCCCCXXXXXCXXXCCCXXCCCXXCXCCCXXCCCCC&
 -""-"-"-"--------"-=-----""""-"---"--"--""-"----"----""-"""---""---#
+.CC.C.C.C........C.C.....+CCC.C...+..C..CC.C....C....CC.CCC...CC...X
+'BB'B'B'B''''''''B' '''''CBBB'B'''C''B''BB'B''''B''''BB'BBB'''BB'''$
+XHHXHXHXHXXXXXXXXHX XXXXX HHHXHXXX XXHXXHHXHXXXXHXXXXHHXHHHXXXHHXXX_
+CXXCXCXCXCCCCCCCCXC CCCCC XXXCXCCC CCXCCXXCXCCCCXCCCCXXCXXXCCCXXCCC&
 ---"""-----------------------""------"-""-""--"---""""""""-"---"-"-#
+...CCC.......................CC......C.CC.CC..C...CCCCCCCC.C...C.C.X
+'''BBB'''''''''''''''''''''''BB''''''B'BB'BB''B'''BBBBBBBB'B'''B'B'$
+XXXHHHXXXXXXXXXXXXXXXXXXXXXXXHHXXXXXXHXHHXHHXXHXXXHHHHHHHHXHXXXHXHX_
+CCCXXXCCCCCCCCCCCCCCCCCCCCCCCXXCCCCCCXCXXCXXCCXCCCXXXXXXXXCXCCCXCXC&
 -----"-----------------"--"-"-"------"-"----""----------"-----""-"-#
+.....C.................+..C.C.C......C.C....CC..........C.....CC.C.X
+'''''B'''''''''''''''''C''B'B'B''''''B'B''''BB''''''''''B'''''BB'B'$
+XXXXXHXXXXXXXXXXXXXXXXX XXHXHXHXXXXXXHXHXXXXHHXXXXXXXXXXHXXXXXHHXHX_
+CCCCCXCCCCCCCCCCCCCCCCC CCXCXCXCCCCCCXCXCCCCXXCCCCCCCCCCXCCCCCXXCXC&
 -"-"---------""--""-"-"-"---"---------"-"----"--"-------""---"""-""#
+.C.C.........CC..CC.C.C.C...C.........C.C....C..C.......CC...CCC.CCX
+'B'B'''''''''BB''BB'B'B'B'''B'''''''''B'B''''B''B'''''''BB'''BBB'BB$
+XHXHXXXXXXXXXHHXXHHXHXHXHXXXHXXXXXXXXXHXHXXXXHXXHXXXXXXXHHXXXHHHXHH_
+CXCXCCCCCCCCCXXCCXXCXCXCXCCCXCCCCCCCCCXCXCCCCXCCXCCCCCCCXXCCCXXXCXX&
 -----"------"-----"-"----"-----"---"""""-"-"""--"-""---"---"---"""-#
+.....C......C.....+.C....+.....C...CCCCC.+.CCC..C.CC...C...C...CCC.X
+'''''B''''''B'''''C'B''''C'''''B'''BBBBB'C'BBB''B'BB'''B'''B'''BBB'$
+XXXXXHXXXXXXHXXXXX XHXXXX XXXXXHXXXHHHHHX XHHHXXHXHHXXXHXXXHXXXHHHX_
+CCCCCXCCCCCCXCCCCC CXCCCC CCCCCXCCCXXXXXC CXXXCCXCXXCCCXCCCXCCCXXXC&
 ------------------"------"-----------""-""""---"-----"-"--""-"""---#
+..................C......C...........CC.CCCC...C.....C.C..CC.CCC...X
+''''''''''''''''''B''''''B'''''''''''BB'BBBB'''B'''''B'B''BB'BBB'''$
+XXXXXXXXXXXXXXXXXXHXXXXXXHXXXXXXXXXXXHHXHHHHXXXHXXXXXHXHXXHHXHHHXXX_
+CCCCCCCCCCCCCCCCCCXCCCCCCXCCCCCCCCCCCXXCXXXXCCCXCCCCCXCXCCXXCXXXCCC&
 "---"----"------------------"--"----"-"""""--"-"---------""--"""-""#
+C...C....+..................C..C....C.CCCCC..C.C.........CC..CCC.CCX
+B'''B''''C''''''''''''''''''B''B''''B'BBBBB''B'B'''''''''BB''BBB'BB$
+HXXXHXXXX XXXXXXXXXXXXXXXXXXHXXHXXXXHXHHHHHXXHXHXXXXXXXXXHHXXHHHXHH_
+XCCCXCCCC CCCCCCCCCCCCCCCCCCXCCXCCCCXCXXXXXCCXCXCCCCCCCCCXXCCXXXCXX&
 ---"-"----"----"---------"-""---"-----"""-""-"-"---------"--""-"--"#
+...C.C....+....C.........+.CC...C.....CCC.CC.C.C.........C..CC.C..CX
+'''B'B''''C''''B'''''''''C'BB'''B'''''BBB'BB'B'B'''''''''B''BB'B''B$
+XXXHXHXXXX XXXXHXXXXXXXXX XHHXXXHXXXXXHHHXHHXHXHXXXXXXXXXHXXHHXHXXH_
+CCCXCXCCCC CCCCXCCCCCCCCC CXXCCCXCCCCCXXXCXXCXCXCCCCCCCCCXCCXXCXCCX&
 "-"------"---------"--------""--"----"-"--"-""--"---"-----"-"----"-#
+C.C......+.........C........CC..C....C.C..C.CC..+...C.....C.C....C.X
+B'B''''''C'''''''''B''''''''BB''B''''B'B''B'BB''C'''B'''''B'B''''B'$
+HXHXXXXXX XXXXXXXXXHXXXXXXXXHHXXHXXXXHXHXXHXHHXX XXXHXXXXXHXHXXXXHX_
+XCXCCCCCC CCCCCCCCCXCCCCCCCCXXCCXCCCCXCXCCXCXXCC CCCXCCCCCXCXCCCCXC&
 --"-"-"--"------"-------"-"--"---"-----""---------"-"------"--""---#
+..C.C.C..+......+.......C.+..C...+.....CC.........C.C......C..CC...X
+''B'B'B''C''''''C'''''''B'C''B'''C'''''BB'''''''''B'B''''''B''BB'''$
+XXHXHXHXX XXXXXX XXXXXXXHX XXHXXX XXXXXHHXXXXXXXXXHXHXXXXXXHXXHHXXX_
+CCXCXCXCC CCCCCC CCCCCCCXC CCXCCC CCCCCXXCCCCCCCCCXCXCCCCCCXCCXXCCC&
 ---"""---------------------------------""""--"---"--"""-------"---"#
+...CCC.................................CCCC..C...C..CCC.......C...CX
+'''BBB'''''''''''''''''''''''''''''''''BBBB''B'''B''BBB'''''''B'''B$
+XXXHHHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHHHHXXHXXXHXXHHHXXXXXXXHXXXH_
+CCCXXXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXXXXCCXCCCXCCXXXCCCCCCCXCCCX&
 --------"------------"-------""--------"""--""------""--""---------#
+........C............C.......CC........CCC..CC......CC..CC.........X
+''''''''B''''''''''''B'''''''BB''''''''BBB''BB''''''BB''BB'''''''''$
+XXXXXXXXHXXXXXXXXXXXXHXXXXXXXHHXXXXXXXXHHHXXHHXXXXXXHHXXHHXXXXXXXXX_
+CCCCCCCCXCCCCCCCCCCCCXCCCCCCCXXCCCCCCCCXXXCCXXCCCCCCXXCCXXCCCCCCCCC&
 ----"-----------"-----------"-----------"----------"--"-"--"-------#
+....C...........+...........C...........C..........C..C.C..C.......X
+''''B'''''''''''C'''''''''''B'''''''''''B''''''''''B''B'B''B'''''''$
+XXXXHXXXXXXXXXXX XXXXXXXXXXXHXXXXXXXXXXXHXXXXXXXXXXHXXHXHXXHXXXXXXX_
+CCCCXCCCCCCCCCCC CCCCCCCCCCCXCCCCCCCCCCCXCCCCCCCCCCXCCXCXCCXCCCCCCC&
 -----------------""-----------------"-"""------"------"---"""------#
+.................CC.................C.CCC......C......C...CCC......X
+'''''''''''''''''BB'''''''''''''''''B'BBB''''''B''''''B'''BBB''''''$
+XXXXXXXXXXXXXXXXXHHXXXXXXXXXXXXXXXXXHXHHHXXXXXXHXXXXXXHXXXHHHXXXXXX_
+CCCCCCCCCCCCCCCCCXXCCCCCCCCCCCCCCCCCXCXXXCCCCCCXCCCCCCXCCCXXXCCCCCC&
 ---"----------------"-----------------"---"------------"-----"-----#
+...+................+.................C...C............C.....C.....X
+'''C''''''''''''''''C'''''''''''''''''B'''B''''''''''''B'''''B'''''$
+XXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXHXXXHXXXXXXXXXXXXHXXXXXHXXXXX_
+CCC CCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCXCCCXCCCCCCCCCCCCXCCCCCXCCCCC&
 ------+----"------------------------------"------"--""----"--"---"-#
+......C....C..............................C......C..CC....C..C...+.X
+'''''' ''''B''''''''''''''''''''''''''''''B''''''B''BB''''B''B'''C'$
+XXXXXX XXXXHXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXHXXHHXXXXHXXHXXX X_
+CCCCCC CCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCXCCXXCCCCXCCXCCC C&
 ---"--""--""--------"--------"-------"--"-"-"--------"--"----"-----#
+...C..C+..++........+........C.......C..+.C.C........C..+....C.....X
+'''B''BC''CC''''''''C''''''''B'''''''B''C'B'B''''''''B''C''''B'''''$
+XXXHXXH XX  XXXXXXXX XXXXXXXXHXXXXXXXHXX XHXHXXXXXXXXHXX XXXXHXXXXX_
+CCCXCCX CC  CCCCCCCC CCCCCCCCXCCCCCCCXCC CXCXCCCCCCCCXCC CCCCXCCCCC&
 ---------------------"------""----------"--"--"--------------"----"#
+.....................+......CC..........C..C..C..............C....CX
+'''''''''''''''''''''C''''''BB''''''''''B''B''B''''''''''''''B''''B$
+XXXXXXXXXXXXXXXXXXXXX XXXXXXHHXXXXXXXXXXHXXHXXHXXXXXXXXXXXXXXHXXXXH_
+CCCCCCCCCCCCCCCCCCCCC CCCCCCXXCCCCCCCCCCXCCXCCXCCCCCCCCCCCCCCXCCCCX&
 ---"-------------------------"--------------"----------------"-----#
+...C.........................C..............C................C.....X
+'''B'''''''''''''''''''''''''B''''''''''''''B''''''''''''''''B'''''$
+XXXHXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXHXXXXX_
+CCCXCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCXCCCCC&
 -----------------------------"---------------"--------"------------#
+.............................C...............C........C............X
+'''''''''''''''''''''''''''''B'''''''''''''''B''''''''B''''''''''''$
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXXXHXXXXXXXXHXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCCCXCCCCCCCCXCCCCCCCCCCCC&
 ---"----------------"--------""-------"-"-""-""-----------"--"-----#
+...C................+........CC.......C.C.++.C+...........C..+.....X
+'''B''''''''''''''''C''''''''BB'''''''B'B'CC'BC'''''''''''B''C'''''$
+XXXHXXXXXXXXXXXXXXXX XXXXXXXXHHXXXXXXXHXHX  XH XXXXXXXXXXXHXX XXXXX_
+CCCXCCCCCCCCCCCCCCCC CCCCCCCCXXCCCCCCCXCXC  CX CCCCCCCCCCCXCC CCCCC&
 ---------"---"-------------"-"-------------"---------------------"-#
+.........C...C.............C.C.............C.....................C.X
+'''''''''B'''B'''''''''''''B'B'''''''''''''B'''''''''''''''''''''B'$
+XXXXXXXXXHXXXHXXXXXXXXXXXXXHXHXXXXXXXXXXXXXHXXXXXXXXXXXXXXXXXXXXXHX_
+CCCCCCCCCXCCCXCCCCCCCCCCCCCXCXCCCCCCCCCCCCCXCCCCCCCCCCCCCCCCCCCCCXC&
 -----------------------"------------------"--"---------------------#
+.......................+..................+..C.....................X
+'''''''''''''''''''''''C''''''''''''''''''C''B'''''''''''''''''''''$
+XXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX XXHXXXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCC CCXCCCCCCCCCCCCCCCCCCCCC&
 -------"-----------"-----"-------------------------------"-"-------#
+.......+...........+.....+...............................+.+.......X
+'''''''C'''''''''''C'''''C'''''''''''''''''''''''''''''''C'C'''''''$
+XXXXXXX XXXXXXXXXXX XXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X XXXXXXX_
+CCCCCCC CCCCCCCCCCC CCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CCCCCCC&
 -"---------------------"--------------------------"---+--""----"+--#
+.C.....................+..........................+...C..CC....CC..X
+'B'''''''''''''''''''''C''''''''''''''''''''''''''C''' ''BB''''B ''$
+XHXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXX XXX XXHHXXXXH XX_
+CXCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCC CCC CCXXCCCCX CC&
 -----------------------+--------"-"-----------"--------"----"+-----#
+.......................C........+.+...........C........+....CC.....X
+''''''''''''''''''''''' ''''''''C'C'''''''''''B''''''''C''''B '''''$
+XXXXXXXXXXXXXXXXXXXXXXX XXXXXXXX X XXXXXXXXXXXHXXXXXXXX XXXXH XXXXX_
+CCCCCCCCCCCCCCCCCCCCCCC CCCCCCCC C CCCCCCCCCCCXCCCCCCCC CCCCX CCCCC&
 ------"------"------------------"---------"-"---------------"------#
+......+......+..................+.........+.C...............C......X
+''''''C''''''C''''''''''''''''''C'''''''''C'B'''''''''''''''B''''''$
+XXXXXX XXXXXX XXXXXXXXXXXXXXXXXX XXXXXXXXX XHXXXXXXXXXXXXXXXHXXXXXX_
+CCCCCC CCCCCC CCCCCCCCCCCCCCCCCC CCCCCCCCC CXCCCCCCCCCCCCCCCXCCCCCC&
 -------------------------------------------------------------------#
+...................................................................X
+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''$
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&
 ---------------------------------"-----""---------"--"------------"#
+.................................+.....++.........+..C............CX
+'''''''''''''''''''''''''''''''''C'''''CC'''''''''C''B''''''''''''B$
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXX  XXXXXXXXX XXHXXXXXXXXXXXXH_
+CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCC  CCCCCCCCC CCXCCCCCCCCCCCCX&
 ---"--------------"--------"--""-----------------------------------#
+...C..............+........+..C+...................................X
+'''B''''''''''''''C''''''''C''BC'''''''''''''''''''''''''''''''''''$
+XXXHXXXXXXXXXXXXXX XXXXXXXX XXH XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_
+CCCXCCCCCCCCCCCCCC CCCCCCCC CCX CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&
 -"-----------------------------"-----------"----------"------------#
+.+.............................+...........+..........C............X
+'C'''''''''''''''''''''''''''''C'''''''''''C''''''''''B''''''''''''$
+X XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX XXXXXXXXXXHXXXXXXXXXXXX_
+C CCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCC CCCCCCCCCCXCCCCCCCCCCCC&
 -"----------------"------------"------"---"-----"-"----""--"-----""#
+.+................+............+......C...C.....+.C....CC..+.....CCX
+'C''''''''''''''''C''''''''''''C''''''B'''B'''''C'B''''BB''C'''''BB$
+X XXXXXXXXXXXXXXXX XXXXXXXXXXXX XXXXXXHXXXHXXXXX XHXXXXHHXX XXXXXHH_
+C CCCCCCCCCCCCCCCC CCCCCCCCCCCC CCCCCCXCCCXCCCCC CXCCCCXXCC CCCCCXX&
 ""------------------"-----------------"-----------"--"---"---------#
+++..................+.................C...........C..+...+.........X
+CC''''''''''''''''''C'''''''''''''''''B'''''''''''B''C'''C'''''''''$
+  XXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXHXXXXXXXXXXXHXX XXX XXXXXXXXX_
+  CCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCXCCCCCCCCCCCXCC CCC CCCCCCCCC&
 ---------------------------"-------------------------"--"+---------#
+...........................+.........................C..CC.........X
+'''''''''''''''''''''''''''C'''''''''''''''''''''''''B''B '''''''''$
+XXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXHXXH XXXXXXXXX_
+CCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCXCCX CCCCCCCCC&
 -------------"-----------------"------------------------"----------#
+.............+.................+........................C..........X
+'''''''''''''C'''''''''''''''''C''''''''''''''''''''''''B''''''''''$
+XXXXXXXXXXXXX XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXX_
+CCCCCCCCCCCCC CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCC&
 --------------"-----------------------------"-------------"-""-----#
+..............+.............................C.............C.CC.....X
+''''''''''''''C'''''''''''''''''''''''''''''B'''''''''''''B'BB'''''$
+XXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXXXXXXXXXXXXXHXHHXXXXX_
+CCCCCCCCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCCCCCCCCCCCCCXCXXCCCCC&
 ------------------"-"---"-----"-"-------------""-------------------#
+..................+.+...+.....C.+.............CC...................X
+''''''''''''''''''C'C'''C'''''B'C'''''''''''''BB'''''''''''''''''''$
+XXXXXXXXXXXXXXXXXX X XXX XXXXXHX XXXXXXXXXXXXXHHXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCCC C CCC CCCCCXC CCCCCCCCCCCCCXXCCCCCCCCCCCCCCCCCCC&
 -----------------""-----"--------"---------------------------------#
+.................++.....+........+.................................X
+'''''''''''''''''CC'''''C''''''''C'''''''''''''''''''''''''''''''''$
+XXXXXXXXXXXXXXXXX  XXXXX XXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCC  CCCCC CCCCCCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&
 -----------------+--------------""---------------"----"------------#
+.................C..............++...............+....+............X
+''''''''''''''''' ''''''''''''''CC'''''''''''''''C''''C''''''''''''$
+XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXX  XXXXXXXXXXXXXXX XXXX XXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCC CCCCCCCCCCCCCC  CCCCCCCCCCCCCCC CCCC CCCCCCCCCCCC&
 ---------"----------------""----"-----------"---"----------"-------#
+.........+................++....+...........+...+..........C.......X
+'''''''''C''''''''''''''''CC''''C'''''''''''C'''C''''''''''B'''''''$
+XXXXXXXXX XXXXXXXXXXXXXXXX  XXXX XXXXXXXXXXX XXX XXXXXXXXXXHXXXXXXX_
+CCCCCCCCC CCCCCCCCCCCCCCCC  CCCC CCCCCCCCCCC CCC CCCCCCCCCCXCCCCCCC&
 ------"----""---"--"------"""---"---""-------"--"-"----"-----"--"--#
+......C....++...+..+......+++...+...C+.......+..+.+....C.....C..C..X
+''''''B''''CC'''C''C''''''CCC'''C'''BC'''''''C''C'C''''B'''''B''B''$
+XXXXXXHXXXX  XXX XX XXXXXX   XXX XXXH XXXXXXX XX X XXXXHXXXXXHXXHXX_
+CCCCCCXCCCC  CCC CC CCCCCC   CCC CCCX CCCCCCC CC C CCCCXCCCCCXCCXCC&
 -----------"-----------"-"-"----"-------------------------------"--#
+...........+...........+.+.+....+...............................C..X
+'''''''''''C'''''''''''C'C'C''''C'''''''''''''''''''''''''''''''B''$
+XXXXXXXXXXX XXXXXXXXXXX X X XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXHXX_
+CCCCCCCCCCC CCCCCCCCCCC C C CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCXCC&
 ---------"---------------"-----"--"----"---------------------------#
+.........+...............+.....+..+....+...........................X
+'''''''''C'''''''''''''''C'''''C''C''''C'''''''''''''''''''''''''''$
+XXXXXXXXX XXXXXXXXXXXXXXX XXXXX XX XXXX XXXXXXXXXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCC CCCCCCCCCCCCCCC CCCCC CC CCCC CCCCCCCCCCCCCCCCCCCCCCCCCCC&
 ----------"-"---"--------"-----"----""-----------------"-----------#
+..........+.+...+........+.....+....++.................+...........X
+''''''''''C'C'''C''''''''C'''''C''''CC'''''''''''''''''C'''''''''''$
+XXXXXXXXXX X XXX XXXXXXXX XXXXX XXXX  XXXXXXXXXXXXXXXXX XXXXXXXXXXX_
+CCCCCCCCCC C CCC CCCCCCCC CCCCC CCCC  CCCCCCCCCCCCCCCCC CCCCCCCCCCC&
 --"-"---"-"""-""----"-"-+--"""""-------"-"--------------"----------#
+..+.+...+.+++.++....+.+.C..+++++.......+.+..............+..........X
+''C'C'''C'CCC'CC''''C'C' ''CCCCC'''''''C'C''''''''''''''C''''''''''$
+XX X XXX X   X  XXXX X X XX     XXXXXXX X XXXXXXXXXXXXXX XXXXXXXXXX_
+CC C CCC C   C  CCCC C C CC     CCCCCCC C CCCCCCCCCCCCCC CCCCCCCCCC&
 ------"------"""---"""-----""--"-----"-----------"---"--"----------#
+......+......+++...+++.....++..+.....+...........+...+..C..........X
+''''''C''''''CCC'''CCC'''''CC''C'''''C'''''''''''C'''C''B''''''''''$
+XXXXXX XXXXXX   XXX   XXXXX  XX XXXXX XXXXXXXXXXX XXX XXHXXXXXXXXXX_
+CCCCCC CCCCCC   CCC   CCCCC  CC CCCCC CCCCCCCCCCC CCC CCXCCCCCCCCCC&
 ---------"-----"--"------"--"--"-"-"-----"-------"-------------"---#
+.........+.....+..+......+..+..+.+.+.....+.......+.............C...X
+'''''''''C'''''C''C''''''C''C''C'C'C'''''C'''''''C'''''''''''''B'''$
+XXXXXXXXX XXXXX XX XXXXXX XX XX X X XXXXX XXXXXXX XXXXXXXXXXXXXHXXX_
+CCCCCCCCC CCCCC CC CCCCCC CC CC C C CCCCC CCCCCCC CCCCCCCCCCCCCXCCC&
 -----"---"-------"-----"-----------"---"----"---"------------------#
+.....+...+.......+.....+...........+...+....+...+..................X
+'''''C'''C'''''''C'''''C'''''''''''C'''C''''C'''C''''''''''''''''''$
+XXXXX XXX XXXXXXX XXXXX XXXXXXXXXXX XXX XXXX XXX XXXXXXXXXXXXXXXXXX_
+CCCCC CCC CCCCCCC CCCCC CCCCCCCCCCC CCC CCCC CCC CCCCCCCCCCCCCCCCCC&
 -"--"-"-"-"+---""--"-------""-------"-------------+"----------"----#
+.+..+.+.+.+C...++..+.......++.......+.............C+..........+....X
+'C''C'C'C'C '''CC''C'''''''CC'''''''C''''''''''''' C''''''''''C''''$
+X XX X X X  XXX  XX XXXXXXX  XXXXXXX XXXXXXXXXXXXX  XXXXXXXXXX XXXX_
+C CC C C C  CCC  CC CCCCCCC  CCCCCCC CCCCCCCCCCCCC  CCCCCCCCCC CCCC&
 -----------"----"--"------------------------"---------------"----"-#
+...........+....+..+........................+...............+....+.X
+'''''''''''C''''C''C''''''''''''''''''''''''C'''''''''''''''C''''C'$
+XXXXXXXXXXX XXXX XX XXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX XXXX X_
+CCCCCCCCCCC CCCC CC CCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCCCC CCCC C&
 --------"--""---"-"--"---"-""-"--"-"""""----"--------"-------------#
+........+..++...+.+..+...+.++.+..+.+++++....+........+.............X
+''''''''C''CC'''C'C''C'''C'CC'C''C'CCCCC''''C''''''''C'''''''''''''$
+XXXXXXXX XX  XXX X XX XXX X  X XX X     XXXX XXXXXXXX XXXXXXXXXXXXX_
+CCCCCCCC CC  CCC C CC CCC C  C CC C     CCCC CCCCCCCC CCCCCCCCCCCCC&
 ----------------------""---"----"----"""---------------------------#
+......................++...+....+....+++...........................X
+''''''''''''''''''''''CC'''C''''C''''CCC'''''''''''''''''''''''''''$
+XXXXXXXXXXXXXXXXXXXXXX  XXX XXXX XXXX   XXXXXXXXXXXXXXXXXXXXXXXXXXX_
+CCCCCCCCCCCCCCCCCCCCCC  CCC CCCC CCCC   CCCCCCCCCCCCCCCCCCCCCCCCCCC&
 -------""-----"-"---"-"--"""-"-----"-----"-------------------"----"#
+.......++.....+.+...+.+..+++.+.....+.....+...................+....+X
+'''''''CC'''''C'C'''C'C''CCC'C'''''C'''''C'''''''''''''''''''C''''C$
+XXXXXXX  XXXXX X XXX X XX   X XXXXX XXXXX XXXXXXXXXXXXXXXXXXX XXXX _
+CCCCCCC  CCCCC C CCC C CC   C CCCCC CCCCC CCCCCCCCCCCCCCCCCCC CCCC &
 -----"-------"-"""-----""----"--"-----"""--------------------"-----#
+.....+.......+.+++.....++....+..+.....+++....................+.....X
+'''''C'''''''C'CCC'''''CC''''C''C'''''CCC''''''''''''''''''''C'''''$
+XXXXX XXXXXXX X   XXXXX  XXXX XX XXXXX   XXXXXXXXXXXXXXXXXXXX XXXXX_
+CCCCC CCCCCCC C   CCCCC  CCCC CC CCCCC   CCCCCCCCCCCCCCCCCCCC CCCCC&
 -----"-""--""-"----"--------"-------"""---"------------------"-----#
+.....+.++..++.+....+........+.......+++...+..................+.....X
+'''''C'CC''CC'C''''C''''''''C'''''''CCC'''C''''''''''''''''''C'''''$
+XXXXX X  XX  X XXXX XXXXXXXX XXXXXXX   XXX XXXXXXXXXXXXXXXXXX XXXXX_
+CCCCC C  CC  C CCCC CCCCCCCC CCCCCCC   CCC CCCCCCCCCCCCCCCCCC CCCCC&
 ----"----""-----"--"-""---"""-----"-----"-----------------"------"-#
+....+....++.....+..+.++...+++.....+.....+.................+......+.X
+''''C''''CC'''''C''C'CC'''CCC'''''C'''''C'''''''''''''''''C''''''C'$
+XXXX XXXX  XXXXX XX X  XXX   XXXXX XXXXX XXXXXXXXXXXXXXXXX XXXXXX X_
+CCCC CCCC  CCCCC CC C  CCC   CCCCC CCCCC CCCCCCCCCCCCCCCCC CCCCCC C&
 -""-"""---"-""-""-"---"-""-"--"--------""-"---"---------"----------#
+.++.+++...+.++.++.+...+.++.+..+........++.+...+.........+..........X
+'CC'CCC'''C'CC'CC'C'''C'CC'C''C''''''''CC'C'''C'''''''''C''''''''''$
+X  X   XXX X  X  X XXX X  X XX XXXXXXXX  X XXX XXXXXXXXX XXXXXXXXXX_
+C  C   CCC C  C  C CCC C  C CC CCCCCCCC  C CCC CCCCCCCCC CCCCCCCCCC&
 "----"--""-"---""-"-"--""-""---""--"""-""-"-----------------"------#
++....+..++.+...++.+.+..++.++...++..+++.++.+.................+......X
+C''''C''CC'C'''CC'C'C''CC'CC'''CC''CCC'CC'C'''''''''''''''''C''''''$
+ XXXX XX  X XXX  X X XX  X  XXX  XX   X  X XXXXXXXXXXXXXXXXX XXXXXX_
+ CCCC CC  C CCC  C C CC  C  CCC  CC   C  C CCCCCCCCCCCCCCCCC CCCCCC&
 -"--"---""""----"-"""--""-""-"-""-""----"-------=-""-----------"---#
+.+..+...++++....+.+++..++.++.+.++.++....+.......C.++...........+...X
+'C''C'''CCCC''''C'CCC''CC'CC'C'CC'CC''''C''''''' 'CC'''''''''''C'''$
+X XX XXX    XXXX X   XX  X  X X  X  XXXX XXXXXXX X  XXXXXXXXXXX XXX_
+C CC CCC    CCCC C   CC  C  C C  C  CCCC CCCCCCC C  CCCCCCCCCCC CCC&
 -"----"-"--"-"-"-""""--"--""""---"-""-----"----"+"----------"---"--#
+.+....+.+..+.+.+.++++..+..++++...+.++.....+....+C+..........+...+..X
+'C''''C'C''C'C'C'CCCC''C''CCCC'''C'CC'''''C''''C C''''''''''C'''C''$
+X XXXX X XX X X X    XX XX    XXX X  XXXXX XXXX   XXXXXXXXXX XXX XX_
+C CCCC C CC C C C    CC CC    CCC C  CCCCC CCCC   CCCCCCCCCC CCC CC&
 -"--"---"-"""-"--"""--"-"--"""--"---""-----------"---"""----------"#
+.+..+...+.+++.+..+++..+.+..+++..+...++...........+...+++..........+X
+'C''C'''C'CCC'C''CCC''C'C''CCC''C'''CC'''''''''''C'''CCC''''''''''C$
+X XX XXX X   X XX   XX X XX   XX XXX  XXXXXXXXXXX XXX   XXXXXXXXXX _
+C CC CCC C   C CC   CC C CC   CC CCC  CCCCCCCCCCC CCC   CCCCCCCCCC &
 "---"-""--"--"""-+""--"--""""----"-"-"""--------""""---"-""--------#
++...+.++..+..+++.C++..+..++++....+.+.+++........++++...+.++........X
+C'''C'CC''C''CCC' CC''C''CCCC''''C'C'CCC''''''''CCCC'''C'CC''''''''$
+ XXX X  XX XX   X   XX XX    XXXX X X   XXXXXXXX    XXX X  XXXXXXXX_
+ CCC C  CC CC   C   CC CC    CCCC C C   CCCCCCCC    CCC C  CCCCCCCC&
 "---""---""--""--"""--"-"-"""--"----"-"----"-""""-"""--"-"------"--#
++...++...++..++..+++..+.+.+++..+....+.+....+.++++.+++..+.+......+..X
+C'''CC'''CC''CC''CCC''C'C'CCC''C''''C'C''''C'CCCC'CCC''C'C''''''C''$
+ XXX  XXX  XX  XX   XX X X   XX XXXX X XXXX X    X   XX X XXXXXX XX_
+ CCC  CCC  CC  CC   CC C C   CC CCCC C CCCC C    C   CC C CCCCCC CC&
 ----"----"""-"--"--"-""-"""""--"-""""-""-------""-""""-"-"-----"--"#
+....+....+++.+..+..+.++.+++++..+.++++.++.......++.++++.+.+.....+..+X
+''''C''''CCC'C''C''C'CC'CCCCC''C'CCCC'CC'''''''CC'CCCC'C'C'''''C''C$
+XXXX XXXX   X XX XX X  X     XX X    X  XXXXXXX  X    X X XXXXX XX _
+CCCC CCCC   C CC CC C  C     CC C    C  CCCCCCC  C    C C CCCCC CC &
 -"""--"""--"""-"-""--"""""""""-"--""""---""-"""-""-"""""-"-"""----"#
+.+++..+++..+++.+.++..+++++++++.+..++++...++.+++.++.+++++.+.++C....+X
+'CCC''CCC''CCC'C'CC''CCCCCCCCC'C''CCCC'''CC'CCC'CC'CCCCC'C'CCB''''C$
+X   XX   XX   X X  XX         X XX    XXX  X   X  X     X X  HXXXX _
+C   CC   CC   C C  CC         C CC    CCC  C   C  C     C C  XCCCC &
 "-""-"-"-"+"""--""-""""+"""""-"""""-""---"-""-"-"""-"-"""------""-"#
++.++.+.+.+C+++..++.++++C+++++.+++++.++...+.++.+.+++.+.+++......++.+X
+C'CC'C'C'C CCC''CC'CCCC CCCCC'CCCCC'CC'''C'CC'C'CCC'C'CCC''''''CC'C$
+ X  X X X     XX  X          X     X  XXX X  X X   X X   XXXXXX  X _
+ C  C C C     CC  C          C     C  CCC C  C C   C C   CCCCCC  C &
 "-""""-"""-""""----""-"""""""-""-""-""--"""""""-""""""--"---"----""#
++.++++.+++.++++....++.+++++++.++.++.++..+++++++.++++++..+...+....++X
+C'CCCC'CCC'CCCC''''CC'CCCCCCC'CC'CC'CC''CCCCCCC'CCCCCC''C'''C''''CC$
+ X    X   X    XXXX  X       X  X  X  XX       X      XX XXX XXXX  _
+ C    C   C    CCCC  C       C  C  C  CC       C      CC CCC CCCC  &
 """""-""-"--""-----""""-"--"""-"--"-"-"-"""""""""-"""-""-""-""-"-"-#
++++++.++.+..++.....++++.+..+++.+..+.+.+.+++++++++.+++.++.++.++.+.+.X
+CCCCC'CC'C''CC'''''CCCC'C''CCC'C''C'C'C'CCCCCCCCC'CCC'CC'CC'CC'C'C'$
+     X  X XX  XXXXX    X XX   X XX X X X         X   X  X  X  X X X_
+     C  C CC  CCCCC    C CC   C CC C C C         C   C  C  C  C C C&
 -""""""""""""""--"""""-"""-"-"""""""""+""""--""---""""""--"-"-"--"-#
+.++++++++++++++..+++++.+++.+.+++++++++C++++..++...++++++..+.+.+..+.X
+'CCCCCCCCCCCCCC''CCCCC'CCC'C'CCCCCCCCC CCCC''CC'''CCCCCC''C'C'C''C'$
+X              XX     X   X X              XX  XXX      XX X X XX X_
+C              CC     C   C C              CC  CCC      CC C C CC C&
 "-""-""""""""-""""""""""+"""""-"=="""""""""-"--"-"""""""-"--"---"--#
++.++.++++++++.++++++++++C+++++.+CC+++++++++.+..+.+++++++.+..+...+..X
+C'CC'CCCCCCCC'CCCCCCCCCC CCCCC'C  CCCCCCCCC'C''C'CCCCCCC'C''C'''C''$
+ X  X        X                X            X XX X       X XX XXX XX_
