LEONARDO


    .XXXXXXXX++XXXXXXXXX+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    .XXXXXXXX+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX..XXXXXXXXXXXXXXXXXXXXXXXXXXX
    .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    .XXX+XXXXXXXXXXXXX+XXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX++XXX+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
    .XXX++XXXXX+XXXXXXXXXXXXXXXXXXXXXXXXXX+XXXXXXXXXXX+XXXXXXXXXX+++XX+XXX+XXXXXXXXXXXXXXX++XXXXXXXXXXX.
    .XXX+X++++XXXX+++XXX+++XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX+XX+XX+++XXXXXXXXXXXXXX++++XXXXXXXXXXX
    .X++X++++++++++++++++XXXXXXXXXXXXXXX++XXXXXX+++X++X+++XX+XXXX++X++++++X+XXX++++XX+X++++++XXXXX++XXXX
    .XXXX++++X++++++++++XXXXXXXXX+XXXXXX++XXXXXX++++++++++++++XXXXX+++++++++XX+++++X+XX++++++++XXX+XXXXX
    .X+X++++++X+++++++++++++X++X+XXXXXX++++++++++++++++++++++++++X+++++++++X++++X+X++X+++++++X+++XXXXXXX
    X++X+++++++++++++++++++++++++++++++++X++++++++++++++++++++++++++++++++++++++++++++X++++X+++++XXX++X.
    XXX++++++++++++++++++++++++++++X++++++++++++++++++.++.++++++++++++++++++X+++X++++++++++++++++XXXX+XX
    X+++++++++++++++++++++++++++++++++X+++++++++.++XXXXXX+++++++++++++++++++X++++++++++++++++++++XXXXXXX
    X++++...+++.++++++++++++++++++++++++++++++.+X%%???????%.X++++++++++++++++X+++++++++++++++++++XX++XXX
    XX++++..+++++++++++++++.+++++++++++++.++...?#??####???????.++++++++++++++++++++++++++++++++++++X++XX
    X+++++.++++++.+++++++++...++++++++++++.+X%##?.?#######????#?.+++++++++++++++++++++++++++++.+++++++XX
    X++++++++++...++++++++..++.++++.+++..+.X?#??%.????######???##%..++.+++++++++++++..+++++++++++++++++X
    X+++++++++....+++.++....+++++++++++...X?#%%?.%????##?#####??##%..++.++++++++.++...+++++++++++++++++X
    X++..++..........+........+++..+.++..+?#???%.%???###??#########..+....++++++++++.++.+++++++++++++++X
    .++..............+........+++........%#??%.X+X..%%?##?#######?##....+.++++++++++.+....+.+++++++++++X
    X++............+...........++..+...*X#?.++.....++X.%???##########+.++....++++++......++..++++++++++X
    .+++.......................+.......+??.+.******.++X.%%?##########?........++..........+++++++++++++X
    X+++................................#%+.*::*::***.+X.%%?##########..................+.....+++++++++X
    X+++..+.....................+.....+?#X.*:**:::***..+.%%??#########?........................+++++++++
    X+...+.+...****................**.%#?X.****::*****.+X.%???#########X*.............+.........++++++++
    +..**.....*******.*...........***+?#%+.**********..+X.%%?#??#######%...+......................++++++
    ++..*.....**********........+.**.X%#%+.**********.++X..%???########?++++..+++..+..............++++++
    X++....++..**********....*....*.X%?#.+.*********..++XXX..%?#########.XX+++X++.++.............+++++.+
    .X+.++XXX..****.+****....*...**+.%#?X+..*********.++++XXX%?#?#######%XXXXXXX..+.++.+...........+++++
    %XXX.+X.X+..*.+++..**....*.****+%?#?X+.**********...+++XX%?#########%X.....X++++X+.............+X+++
    .XX..XXXXX+++++++X+*.*********.X%?#?X.*********.++...++X.%?#########?.%....XXX++XX...........++XX++X
    %.....XXXXX+XX++XXXXX+****.***..%?##X..+X.****X....XXXX..%?#########?.?%.XXX.XXX.X++......**.++XXX..
    ?%%%..XXXXXXX.XX.X..X.X.*..**.+%%?##.X.....*.X%?%XX%%%%?%%?#########?%%%...X.XXX.XX+.....***..+++X..
    ??%.%.X..XX.........XX.+*****.X%%%???#%.%%.*..??.X%??##?%%?##########%%%%%.X..X.%XX+.........++++.XX
    ??%.....XX..........+X.+**.*.+X%??#?%?X%#%X*.%%..X##%%%XX.%?#?#######%%%%%.....%%..+........++++X.++
    ?%%.....X.....X%%...X%X*....+.+%?%#?XX++..+*.%%+..+X.X..+.%##########%%%%%%%%%.%%%.+.......++++X.XXX
    ?%...X..XX...XX%%...X%.++..%.+X%??#?..+XX+.*...++++XX+..X.?##########?%%%%%.%%%%...X+......++++X..XX
    ?%%%.........%%%..%%.%%.X%..?..%??#?.*****.*.XX.******.+X.?##########?%%%%...%%%%%..+....++++++XXXX.
    ?%%.%%....%%%.%%%.%?%%?%%%.%?%%%?##?+..**..*.XX.*****.+X.%?##########?%%%%%%%%%??%%%X....++++++XXXX.
    %%?%%%%%..%%..%%%%%%%%%%%%.%?%%%??##X.***..*.XX..***..X..%###########?%........%%%%..X++++++++XXXX.%
    ??#?%%??%%%%..%%%%%???%%%%%????????#.**.*..*.XX+..*..+X.%?###########?%%.XXXXXXXXXXXXX+++++XX.X.XX..
    ????%%%%%%%%...%%%%??%%%??????????##%.**.+**+XX+....+X..%?############????%%%%....XXXXX++X...%%XX.%%
    ????%%%%%%%%%%..%%%%%%%%%%???###??##%X...X.*..%X**.++X.%%?#############??????%????%%......%.%??%%??#
    ?????%%%?%%%%?%%..%%%%%??%???#??#?##?X++*.X%###.*.++X..%???#############??????%??%??%%%%%%%.%%??????
    ?#???%%%%%%%%%??..%%%%%%?%??????####?.XX.:*%#?%X.+XXX..%%?#############????????????%%???%%%%%%??%???
    ?#????%%%%%?%%??%%%%%%%%??????###??##.XXX+*...XX..XXX..%%?############??????%%??????????%%%%%%%??#??
    ?????%%%%%?%%%%%%%%%%?%%???????##??##%++.%XX.%%?%X++X..%??############????????%???????%%...%%%??????
    ????%%%%%%%%%%%%%???%?????????????###?X++..++.%.X++XX.%%??#############????????????%%%%%.%%%???????#
    ??#?%%%??%%%%%%?????????????%?????####%X+*.X...XXXXX.%%%??############???????????????%%%%%??????????
    ????%??%???????????????%??%?%%????#####%X+.+XXXX.XX.%%????############?%??????????????????????%%????
    #??????%%%%????????%%%%%%%%%%%?%?###?###%+*::*+XXX.%%?????############?%%????%%%%???%??????%%%%%???#
    #???#???%%%%????????%%%%%%%%%%%???????###%.**.+X..%%??%??#############??%%?%%%%%????%%%%%%%%%????#??
    #??????#?%%%??????????????%?%%????????####%++XX.%??????################??%%%%%%%?%%?%%%????%?????#??
    #????%?#?%%%%%?????????%%%%...????#########?%%%??????###??#############????????%?%%?%?%%???%??%%???#
    ##??????#?%?????????%%%%%%%...%#??##?###########??####????#?############??????????????????????%%%??#
    #????#????%%%%%%%%%%%.%.......%??##??########??######????????###########?????%%%%????%?#???????????#
    ##??##?%?#?%%%%%%%%%%%........%?############?..%??#?????%%%??#######?###??%???%%%???????????????#???
    ??#??#??#??%?%%%%%............%%?#??#?#######XX..%???%%%..%%?#######?##??????%%??%??%%???%%??%?##???
    ???#??##?%%?%.........%.......%%?#?##########.+X..%%%%%....%??##########??%%.X.%..%%%%%%%..XX.%??%??
    #???????%%??%%%%%%%%...%...%.%?%??#?#########%++XX..........???####??###???%%%%..%...%%......%%%????
    #???%%%%%%%..%%%%%???..%%%..%%??#############%X++XX....XXX..%???###??##########?%..%%%XXX..%?%.%?##?
    ??%%%%%%.......%??%%##?%%??%#??############?%.X+++XXXXXXX+X..?#???#??########??#?%?##%XXX.X%%.%??###
    #?%%%%%%.%%%..%???%.?##??##?##?###########%.++X++++++++++++X.????????########??#?####?%X...%%%.%?###
    #?%%%%??%%%..%??%%%.%#?##?#?############?..+.....+++++..++++X%???????######?###???%??%.XX.?%%%.%###?
    ##?%.%???%%.%%??%%?%?######??######?###%XXX...*..........+++X%???%%??######???%%...XXXXXX%%%%%%?###?
    #???%???%%.%%%??%%%%##??###?##########%X++.*..*....****...+X.????%%??#######??%%.X+++X...%.%%%?#????
    #?????#?%%%%%%%....%##?%###?#########?X+..**********.**...++.???%%??###?####?????X+XX....%%%%%%%%?##
    ??%???#?%%%%%%..X.%?##?%?##???###?#??%+..*****:********...++X%%%?%??###?#??###???.XXXXXXXX..%.X.%%##
    ????%%??..%.%%.%.%???????#????#####?%..*..**************..++X%%%?%??#####??###???%....X.XX...XX.%???
    #???%.%?%.......%%?%???%?????####???%X.****::**********.*.++.%?%?%?#####?%???###?%%.%....?%.X%%%?%?#
    #?%?%%???X+X..X..%%?%?%%????#####?%%.+.*****************..+X.?%%?%?####?.%%???##??%..X.XX..X......%#
    ????%%???..X+XX..X%%%%%%%??#####?%....****::*:*********...+X..%%?%?##??%%%%%??####?%%%.XXXXX+++++X.?
    ?????%?#???%X+XX...%??%%?#######?.XX+*****:************...+X..%?????%..%..%%%??####?????.X...XX+XX.%
    #???%????%?#?%XX...%%%%%########%XX+.**********:*********.++.%%??%.....XXX..%%?######?#??%%%?%%%%?%%
    ?%%%%%%%%%?#??%.XX..%%%########?.++.********:*::********..+X.%%%%..%XX+XXX.%%?#########?##?????%%%%%
    ??%%%..?%%???%?..%%XXX?########?.+..:*********::::******..+X...%%..X++X%%????##########?#####?.X.X.%
    #?%%%%%?%%%%??%%%%?.+X#########?%+*:*********::::::**:***.+XX.%%X++X%??################??#####?%X++.
    ???????%%%%??%%%%..XX?########?%?..:**:*****:::::::::::**.++.%.XX%?##???################?###??##?..%
    ??????%%%...%.XXXXX.?#####??#??%%%.+*:::*.**::::::::::***.XX...%?##????##################???###??##?
    #?%%%...XX.%..XXX.%?######?##??%.%.%.X..+**::::::*::****+X..%??###??#####################?????#???##
    #?%%......%%.%%%%%?######??#???%%%..%%%%.+.*:::::::****+.%..?#????#######################???%%?????#
    #??%.%.X%%%..%%%%%#######?##?%%%%%%%..%%%%%.XX+..***..X%%%%%????######?#?#################?%%%?????#
    #?%%%%%..%%%...%%?##########?%%%%%??%%%.%.%%%%%.%...X%%.%?%???#####??%?#?#################?????##??#
    ##?%%%%%.....X.X.##?#######???%?%??%%?%%%%%%....%%%%%%.%??%?######??%%#??####################?###???
    ###%%%......X.X+X?#########?%%?%?#?%??%%.%%%%%%%%%%%%.?#??########??%?#?#####################?####?#
    ###???%%%.....%%%##########?%??%????#?%%%%%%%%%%%?%%%%???#######??#%%#??##???#??###########??#???###
    ###??%%%%%%%%?%%?##########??#??#??#??%%%%%%%%%%??%%%??########??????#?#?%%%?????##########??????###
    ####??%?%%%?%%%%%##########??#??#?????%%%%%%%????%???##########?????#???%.%??????###########%%%%?###
    ###?????%??%%%%%?##########??#?##???#?%?%%??????%%??###########??###???%%%%?#????###########?%%%####
    ###?%%%..%%%%%?############?##?##?###??#???????%?????###############????%%?%%%?#####################
    ###%.%.......X%??###############??##??###???##??????################???%%%%%?%?################?####
    ##?........XX..%################??###########??#?%#################????%%%%%?################????###
    ##%..XXXXX.XX.%#################?######?####?????##################????%%?%?###########??####?%???##
    #?........XXXX?#################?###########????##################?????%%??##################????%##
    ?%.......XX...##################?##########????##################??????%%?####################%??%?#
    ??%?%%%%%..%%?#############################???###################??%????######################??????
    ##?????%??%?#######??############?########?##?####################??################################
    ##????%%????########??######################?####################??#################################
    #????%%%???#######?????#####################??###################??#################################
    #????%%%??########??????######################??##################?#################################
    #????%%?#########????????##################?##?##################?##############################??##
    #?????###########????????###################?#######################################################
    #????#########?????%%%?#??################???#######################################################
    #????#####?##????##?#?????###############???####################################################?###
    #???#########??####??#?#################??#######################################################?##
    #??##?##?###############################?########################################################?##
    #######??################?###################################################??##################?##
    ######?######?????%%?#########################################################?##################?##
    ##########?#%%%.%????%%#############################################################################
    #########????%.?##?%?%?#############################################################################
    #########??%?%%#?X.?????#?##########################################################################
    #########????%?.+.?%.%%%.%###?%%??##################################################################
    #########???.%.+.#?.%%%..#%.+**..+.?################################################################
    #########??%...%#?X%?%%.?.X.****...+X.?#############################################################
    ###########%%.%#%+%#%%%#%X+******.....+..?##########################################################
    ###########?.%?%.%#%%??#.X..****.....+++..X%########################################################
    ##########?%%#?.%#????#?%X............+++..+%#######################################################
    ##########???#%.???#%??%%.++..++.......+++++X..?####################################################
    ###########?##%%#???%??%?.+++++++........++++.+X.?##################################################
    ##############??#??????%?%XXXXXXX+++.........*.++X%?################################################
    ###########??#??#??#??#%??%.....XX++++..+......*.+.%?###########?%%%%??#?###########################
    #####################?#??#?%%%%.XXX+++++++..XX+.**+%?%???..%%?#?%..%%%%%%??#########################
    ###################?####???###%.XXX+++++X+++X%%X.*.X.....XX....%?%%.%??????#########################
    ###################?########?...XXXXXX+XXX+.+.##.+++X%%%%%XX%?%.%%%%.%??##??########################
    ##########################%XX+X%.X.XXXXXXXX++.X##?.XX.%%%??%%?%%??%%%.%?????########################
    ########################.X+X+.+.%...XXXXXX%.+..X?##%...%..%?%%?%%????%%?????########################
    ######################?X+X..+.+X.%%....X++.?%X+.X%##?%..%%%??%%?%%??##???????#######################
    ######################XX.%%X++++X%?%....X+.X#%X++X%???%..%%???%%%%%??##?##?#??######################
    #####################?.%%%X+XX.+XX%?%.%%%X+.X#?.XX.?#?#?%??????#?%%?#?#??###########################
    #####################?.%%X+..+.+XX.??%.%?%.+.X#?..X.?#?##??#???##?%?#??#?###########################
    #####################?.%.+.%.+++XX.%??%.%??.+..#?%.X.?#????##??###??###??###########################
    #####################%%%X.%%XX++X..%%??%.%#?.X.%##%%XX?#??###?##########?###########################
    #####################%%%.%?.XX+X.%%%??##?%%??%%%%?#?...##?##########################################
    #####################?%%%%%..+X.%%????###????##?%%?#?%.?############################################
    ####################?#??%%..+X%???#####??########??###?#############################################
    #######################??%%XX%?###???????????????###################################################
    ########################??.X%??#?????#????#?????####################################################
    ##########################%.??###?##################################################################
    ##########################?%??###?##################################################################
    ##########################?%???#########?###########################################################
    ###########################??#########???###########################################################
    ###########################??#######################################################################
    ####################################################################################################
    ##########################?#########################################################################
    ####################################################################################################

    

    .%%X++.**..*.+*.**::**..**:**********:::***:::***********...*************::*.**..***...****+XXXX++++
    %%%.X.*.*...X..*:::********************************************.*********::*********..*****.++XX+XX+
    ?.X.X**.***+.+....*************************..***********:******.*********::***:*****..**.+...+X+++XX
    .++++....**.+**X...***********:***************::********:****************::**::*****....+++++++....+
    ..*.*.++..*:**..*********::**::*******:::::::::::::::::::**************:::::*:*******....+.+++++.++.
    %+*.**.+...*************:::**:*********::::::::::::::::::::::*******:::::::::*****:***.**..+..+X++..
    %X..***.....****.*******:::****.********::::::::::::::::::::::::****:*:::::::***::*******...**+X+...
    ?.+*:*..*.+.******:*****:::***.+***::::*:::::::::::::::::::::::,*******:::::::*******..**.***.++++++
    XX+**.++.+.*****:::********::**.**:****:**:::::::::::::::::::::::***.*::*:::**********..****....XX++
    ++.***....*:*.**:::::*******************::::::::::::::::::::::::::******:::::***************....+X+X
    ++.***...*:**.****:::*******************:::::::::::::::::::::::::::*******::::***************....+++
    ..**************::::*****************:::*:::::::::::::::::::::::::::**..****::***************.....++
    ..*****:****:::::::**********...****::::***::::::::::::::::::::::::::**...***:*******.******...++++X
    ...*****:***:**::::***********..****::::**::::::::::::::::::::::::::::**********************....++XX
    ****:**:::*::**:::********..******:::*:::::::::::::::::::::::::::::::::**********************.....++
    *..*:**:****::::**********..*:::*:::***::::::***:::::::::::::::::::::::::****:****..***.********....
    ..******:**::::::::******...******::::**::::::::::::::::::::::**::::::::::****::******......***.+...
    ..******:::::::::::****....*****::::::::::::::::::::::::::::::**::::::::::*****:********.....**.....
    ...***:*:::::::**:****...******:::::::::::::::::::::::::::::::::**::::::::**************.**..**....+
    ...**::::::::::*****:*..*******::::**:::::::::::::::::::::::::::*:::::::::::*******************...++
    ..***:::::::::::***::*.*******:,*****:::::::::::::::::::::::::::::::::::::::::*****:***:*******...++
    ..***::::::::::*:***:********:::**::::::::::::::::::::::::::::::::::::::::::::::.*****::*:*******...
    .***::::::::::******.*:**::::::*:::::::::::::::::::::::,::::::::::::::::::::::::*****::********.*...
    .***:::::::::**.***.+*:**::::::*:::::::::::::::::::::::,::::::::**:::::::::::::*:******.*******.....
    .****:::::::::***...::************::::::*::**:::,,,:::,,::::::::****:::::::,:***::*****:*******...++
    .***::::::::::**:*..*:***:::****::::::::****::::::::::::::::::::::**:::::::,::*:*:**************..++
    .**::::::::::*****..**::*******:::::**::****::::::::::::,,,,,:::::::::::,,:::**:*:********:*::****..
    ..**::::*::::***.********..**:::::::::::*..*::*:,::::::::::,:::::::::::*,::::****::::*******::**..+.
    .****:::*:::***:*****...**.**::*:**:::**+++*:::::::::,,::::::::::::::**.**:::****:::::******::*.....
    .****:::::::******::***********:******.+++.*::::**::,,,::::::::::::::::*:**:***:*:::::::::***:*..*.+
    .***::::::::****.**:***:******::::****.+.********:::,,,:::::::::::::,,,::::****:**::**:::::****..+XX
    .**:::::::::****..**********::::::**..++.**..*:::,,,,:,,::::::::::**:::::::::*********::*:::****.+.X
    ..**::::::::**:***::****:::::*::::**.++++.***::*:::*:::*:::::*:::,*..:,::::::*.*:*****::::::::*.+.+X
    .***::::::::******::*******::::,::***++++.**:::::::::::::::::*:**:*..*::,::::***:***:***::::::*..+++
    ****::::*:::***.::::::***:*:::::::***.+.+.*::**::::,,::*:::::*:*::*::::,,::::**::**:::**::::::******
    ***:::::*::::***::*::::*::::::*:::*.++...*::**:,,:::::::*::::*::::*:,::*:::::***:**::::**::::::::::*
    ***:::::::**:**:::*::::*::*:::*:***.X+*.***::,,,*****....*******::*::::*...**..*::*:::::::::::::*:**
    ***:::::::*:**::::*::::*****::*:***.+.:..**:,:.X+.****.....***:**::*..::*..*..**:::::**:::::::::*..*
    ****::::::::*.*::**::::*****::*:::..****...**.X.:::::*****.*:::***.+.X.****..*::**:::**:::::::::*++.
    .***::::::::*.*::**::::*****::*:::.+*++:...+XX.:::**...+*.X+*:,:.+X.??.X+XXXX+**+.:::*::::*::::::.++
    ****::::*::***:**:::::::,**:**:::****+X.:.+...:*++XX.XX%%%X.+,::::X?%??????%%%XX.+++.:*::::::::*...+
    *****:::*:::*:::*::::::::**:**:::*.++..::..+++..%?%.%?%X%.+X..*:,*.?...%%%%%..XX***.*:::::::*::*****
    *****::*:::::::::::*::::*******:*..+X+..*...X%?%?%X+X..%.+.X.X*::*X%.%%%...X+..**::*::::::::*::*****
    ******:*::::::::::::::::*******:....++..*.+X%?%+.X+XX.*X**.+X+::::*+......+.*:*..*::::::::::*::*:***
    *****:::*::::**:::::::::*:*.****.*::*.X++X.%%%..*.+X.+:,::....:::,:..**..X.*:,*+*:***::::::::::****:
    *****:::**:::*****:::**:::*.****:***:.X+%%%%X.++*******:::****:,,,,*+.**.***:,:**:::::::::,::::***::
    *****:::**:::***:*::***:::*.**:*:..++..*+X++*:*.+.**:,:.:***:*:,,,,:X.++*:***:,*.*::::::::::::::::::
    *****::***:::**:::::*.*::::***:**.*.X+::.....:,:**:::..*****::*,,:,,.XXX+**::,,*+**::::,*:::::::::::
    .****:::****::::*:::*.*:*::***::*..**..+X+**..*.*:*+...:****:**:,,,:::*..*,,::::+***:::::::::::::::*
    .*****::::**::::::*::**:*::***::*+.*****++...*:*+.%XX.:*++.*::*:,,,:******::::,:+*:*::::::::::::::**
    ***::*:::::::::::::::**:********:...*********:,,*++***:.....*::::,,:**:,:****:,:.*:**:::::::::::::**
    ***::***:::::::::::::**:********:....+..*::*****:::::**:::**::,::,,::::,:::**:::.*****::::::::::*:**
    **:::****:::::**:::::**:********:**..X+*::::::**:,,:::,,,,,,,,,:::,,:::,,,,:::,*+******:::::::::*::*
    ***::****::::***::**:*..********:*...++.*:::::::,:,,:,,:,,,,:::::,,,:*:,:::::::.+**::**:::::::::*:::
    ***::*:::::::*******:*..***::***:*...+X+.:::**::::,,:,,,,:::**:,:,,,:**:,:::**.+.**::***::::::::**:*
    ******::**::::::*::*:******::****:*.+..X+.**:::::,,,,,:,:**::.*:,::,,:*.::,,********:***::::::::****
    .**:**:::*:::::*::****::*.*::***:,*.X%?.X.+**::::,,:,,,:XX*::*.:,,:,,:*..*::::*.**:*.*::******::***.
    ..**::::*:::****:***::::.*******::*+X%?%%%X+.::::,,:,,::+XX.***:,,,:,:..****::*******:::**::::::**.+
    ..**::::*:**.******:::::.**.*:::::*.X%?%%X++.::::::,:::*:+XX+..***:::*+*,:*::::*.....*:***::::::::*+
    ****:::*:*..***.**::***:*:***:::::*+.%%?%+++.::::::,:**::.X...X.*.*::*.:,:*::::..++...*****:::**::*.
    *******::*.***..*:::***:::**:**:,*.X...%%+++.*:::::::**::.+.%%%X*:*.***::::**:*+.++...*****:::**:::*
    .*****::*****..:***::::*:**::**::..X.X+.X++.***:::::**:,:*+X.%%.X.++.*,::,:*.*.+*++...****::::::*::*
    .*::***:.***..*::***:::*::::***:*.*+.X+.XX+**.*:::::*::::.+X..%%%X+.*:,*:::*..***.+++******:::::****
    **:::***.**.+.*:****::::::,:**::*.*..X+%+.X**+.**::**::::**+XX%..X*::::*.::*++.***.+.::*...**:**:***
    .*::::**.*.+.*:*****:::::::*:::**+**..+.++X+..*::***:::::*...++.++*::::,****...***:*+.::**.*::**:***
    .***::****.+.*::**::::::::**::**..*.X+.XXXX+...*,***,,,:.++..+XX++..Xw.X*,..::+X**...+.**...*::******
    *****::***+X.****::::*::***::***...XX..+++.**.++...*:::**+XX.%XX.%X++X%%+.***..+...++.******::****:*
    *****:****++****::::**::**::**::**.XX.+++.*:*.++XX.***.X..X+X+*:***:,:.X.X+.**...*....***:::::::****
    ****:***:*+.*:*.::*:::::*::**::****...X+.*::*..*.+.***X%X.::******:*...**X%+**+.**..*:*.**::::::*...
    ***::**.:*..*******::::*::*.*::.*...*.+*:::*...*****.+XX**::****XX+.++.**+.%+...****:::*..*::::*:*..
    *.**:****..*:*.****:::**::***:***+.....::***.*****..+XX***..*.+..%.X++X++X..X++.**::**::..*::::*:::*
    ...*:***...*:*..***:::**::::::::*+...*:::****::::*+++X+**.X+.+X*+X+X++++...X..+.*.**.*:.***:::::*::*
    .*..***::.+:****.::*::****::,:*......***.**::**:**.+++.:........+....**XX.X+.**..***...*:****::*:***
    ***.****:.+::***.::*::**:*::::*.**...*****::::**::*..+.*.....*********.X+X+.*::*..******:**::::*****
    ******.+*.+***...::*::**:**:::*.**..*::**::::***:::*..**.....***:*.*:*....++..**..*****::**::*******
    .**::*.X.*..**.****:::**:**:::*****.*::*::::**:::::*.*::*...**:***..*****.+++..*..*****:***:*::*****
    ****:*.++.****.****:::**:*:::******.*,:::::**:::::***:::**..******...****....*.....*****.****::*****
    :***....X+..*..****::***::::**.*:**..::::::**:,:****:::*::******::*..::*....*****..**..******::*****
    *........X.......**::***:*:***++:*:..::::::**::****::::*:::*:::::::**::***..*****..*...*******:*****
    .+.*.+..+X...**...*::***:*****++**:..,::::***::****::*::*:::::::**::*************..*.+.**..*:*::****
    X+****...+.*****..:**::****......****::*::**::*******:::::::::::****.**:****::***.....+.****::******
    ......*..+..****..*:*****:*.....+.***::::***::**::****:::::::::::***.*******::**:.*...++.**:::******
    *.++...*.++.*****.*:******.+....+**.*::*:*.*,:**:**::*:::::::::::*:********::**.*.....++.**:********
    .+++.+++.X+.****:.*::***:.++...*+++***:::.+*,:*:*.**:*:::::::::::*::**:***:::**.*.....XX************
    .+...+++.+.*****:**:***.*.++..++.X..:..::+X+::::*..*:*:,::::::::**::**::******..***...XX..**********
    ****.++..+.*****:**:****.**..*+.+.+X**.*:.X+*::*******::::::::::**::*:::*******.****..++X.*********.
    X+.++...++.*****:**:*.**.::.**.XX..XX***:*..*::*:*****:::::::::::*:::::*********.*:*....X.:*******..
    X.*......+.*...*:**::****:***...++**X+**.**.*::::::**:::,::::::*:::::::******::*.*:*..**+*:*****...*
    ..**..++**..*..****::::***:*..*.X*+*..+**....::..::::::::::::**:::**:::***:****:.*****************.*
    ....+++...***..*****:::*.::..:*++.+.*.+:*....*:*.::*::*::::::*:::**::::::::*****.*******.**...*.**+X
    ..*.++.**.**..*:**********::**....+X.++.***.+*::****::::::::::::*:::::::::::********:***..**..***:.X
    ..******:**..+****:::***::::.+.*.*X.+*X..**.+.::*..*::::::::::**:::::*::::::::***.**:***..**..*:***.
    ..***:*****....*:::******,:++**.*.XX.*...**.++.:*..*****::::::**:::::::::::*::***.**:***:..*.+.:**..
    *...******.....*::*****::*.X.**.*..X**+......++*:*.*****::::::****::::::::**:***********:*.*.++****.
    ...*******....*:******:::.X.*..*+.*+.........++*:..*****::::::*****::::::::::*********::::*..++*.**.
    .***..*:****..**..****::....*...+...+++.*..**++::..****::::::::****::::::::::*****:**:::*::**..:***.
    ..**..*.+******+**.*:::*.***.*..***...+X+.+.*++*:..****:::*:::::**::::::::::*******::::::**...+*****
    .***.**.**..*.+X++.*:*.+**...***.**.:*+..+.**++::..****:::*:::::*:::::::::::*******::::::*:*...***..
    .**.+.*.*.X+*+X.+......*..++.*****..:***..*:*X+::*.****:::**::::*:::::::::::::*****::::::*:***.****.
    .*.XXX++*+X+.++****+++.*.+X++.**********.*:*.+*:****:*::::**::::*::,::::::::::****:::::::*::********
    ..++++XX*++..+**.*:...+.++X++...+..****..**..**:****:::::::::::::::,:::::::::::***:::::::***..******
    .+XX..++*.+.+.:..*:***..++++....+...**.*:*..******:::::::::::::::::::::::::::::***:::::::**:..******
    ++%%++++.++...*+.:******++...+...*.+.**:*..***::*:::::::::::::::::::::::::::::::*::*:::*:**:.+:*****
    ++.%+.+++++...+X.:*.*.**++...X+.**...**:..::..:**::::::*::::::::::::::::::::::::*::*:::***::.+:*.***
    X+.+++.%.*.....+X*:*.*:...+.+X*.*******:.*:*.**.*:::::*:::,,::::::::::::::::::*::::***::.*:*.*.****.
    X+.++XX+**......+*******..+.+.**************.****:::::::::,,::::::::::::::::::::***********..******.
    .+.X.+X+.*.*.++X..*******.+.+..::****************:::::::::::::::::::::::::::::::********:.*..*****..
    *.?.*.+++****.+.++.*:****.+.+..::******.:********:::::::::::::::::::::::::::::::::*******.**..*****.
    .*...++..****..+..**::*..*..+X+********.:***********::::::::::::::::::::::::::::::******..**..**.***
    .*.++++.*..**.*:**::::*..*...++.****::*.******:*****::::::**:::::::::::::::**:::***...**...**.*.***.
    ..*++.++***::**::::::::****...++*****:*..***..:*****:::::***:::::::::::::::**:::*****....*..***.**..
    ++*++.XX+.+.****::**::::::*.*.++*****:**+***..******:::::***::::::::::::::::*:::******...*+.***.**..
    +:+X+XX.+..+.****::::::::*::**.+*.*:**::.+.**.**.****::::***::::***:::::::::**::*******:+.:.+...+.*.
    X*+X+XX.**.+++***::::::::*****.+*..****:.++*****.****::::***::::***::::::::***::********..**........
    ++..XX..***..++.**:::::::*****.+**..***::.+.***..****::*:****:::***:::::*::***::*******.****....*..*
    ....++.*..**.+++**::*:::******.+:*.*****:*..***...******:****::::::*:::::::**::*:*.*:******..**.*..*
    +*...+.*:*.+++.***:**::*******.+:******.**...***...*****:::*:::::::*:::*:::**:**:**::****::*.**...**
    +*....***.+++.*:**:***********..:.*:***.:*...***...****::::::::::::***:*:::*****************..*.+.*.
    +**+*:.:....***:*****::**:******:*::***.***..*******:**:::::::::::::***:*::****************:*.*.+...
    .+*X+:.*.*::*********::**:*****:::::****.**..**:***:::**:::::*::::::***:.******************:***.....
    .*..+.:.*******.*****::::*.****::::*****.*****::**:::::::::::::*::***::*+.******:*****::*******+.***
    +.*.+.*.*******.****:::::*.*:**::::****.:::***::**:::::::::::::::::*****.*:***:********::******.....
    +.+.....**:****.***::::::***::*:::******::***:::***::::::::::::::::****:*::**:::**::****:*****...**.
    ++X+**..*******.***::::*:***::*::***:::::****:::***::::::::::::::::****::::**::::*******:****..****.
    .++.*.+.***********::::::*****::****:*:::***::**:*:::::::::::::::::::::::**:::**:************..*....
    .++.**..********..**::::::****::***:***:*:::::::::::::::::::::::::::::::***::****************..*....
    +X+.**..*****:::**.**:::*****:::******:***::::::**::::::::::::::::::::::::::************.*******.**.
    .X.*.********:::************::::*.***::*::*::*****:::::*::::::::*::::*::::::************.*::****....
    +XX.*..****.**:::*************::*****::*:**::*****::::::::*:::::::::::::::::::::****************.*++
    +++....*******:::******:*******:*****::::**::*****::::::::::::::::::::::::::::::**...***********..X.
    +.....*********:::*****:*::::***:****::::***::**:::::::::::::::*:::::::::::*********************..XX
    +..+.***:******::::****:*::::**:*:***::::***:::***:::::::::::::*::::::::::::*********************.++
    X..+.**********:::::****::::::::*:****:::***:::****::::::::::::*:::::::::::::********************.+.
    X.....**********::::::**::::::::*::***:*::***:::****:::::::::::::::::::::::::***...*************..+.
    +.**..********::::::::*.:::::::::::*:::**::**:::::**::::::::::::::::::::*::::***....************..+.
    ...*..*******:::::::::*.::::::**:::::::**::***::::::::::::::::::::::::::***:****...***********...++X
    ++...*********::::::::::**:::***::::::::*:::**:::::::::::::::::::::::***:::*****.************...++++
    ++...********:::::::::::*::::::::::::::::::::**::::::::::::::::::::****:::*******************...+...
    ++...**********::::::::::::::::::::::::::::::**::::::::*::::::::::******************.***.......++.+.
    ++....*********:::::::::::::::::::::::::**:::::::::::::::::::::::*******************...**.......++++
    ++.....*********::::::::::::::::::::::::**:::::*::::***::::::::::********************...**......+++.
    ++.....*********:::::::::::::::*::::::::::::::**:::****:::::::***********************..*****....++X+
    ++.+++..*********::::::::::::::*::::::::::::::****..****:::::*****::*****************..*****.....X.X
    +..+++..**********::::::::::::::::::::::*::::::*..+.**:*:::::****:::**************.**.******.+...XX+

    

    :.:*::*:*:****:::,:::::,,:::::,:::::::,,,,,:,:*:,:,,,::::,,:,,,,,:,:,,,,,,,,,,,,,,,,,:::,,,,,,:,:::*
    ..**.:.*:*:.::::::::+*:.,,:*::::+.::*,,:,,:,,,,,,::,:::::,:::,,:::::::,:,,,,,,,,,,:,:::::,:*,,::::::
    ..***:*:**.X****::::X:.:::::*.****:*:*::::*.::,::+:::::,.,:::::,:X:::,:,,,,,,,,,,:,,,,,,,,,:,,,:::::
    X****:*:***..%%%.+::.:X,:::*:,:::.::.:*,,::::::::::*::X*::XX:*::...:,...X,,X*:*.:X::,::::+,,,,,,,,,,
    :::::::****+:*::::::.::,:::*::+*:::::*:::::,::,::,:,,.::::.:*:::::::::,,,:,,,:,*:::*+*:::*,,,,,,,,,,
    ,.***:::***X:.++*:.X...:+..+*X:..*:::::,::::*::,,:::,,+..::.::::::,,::,X:::,:,,:,,:,*+::::,,@,,@,,,,
    ,:**::*:::.*:*+.*::::,.:::*.X:::+:::*XX,*:*:*::,::,,:**.::+.*++.:.X:*.,*+::,*.::,::::X:.++,,,,,,@,@@
    ,,*:::::****:*::*::::,,:::X*::+:::::::::*,+:::X.:,,::*:::,::,:,,::,,::,,::::+.:.:::++%**..,,,,,,,,,,
    :::::*:::*:**...*:.X.+XX.+*X..X+..*:.++.::X.XX...:X:.::,,:.*:::::*:*:::,,:::+,,:,:,:::::::,,,,,,,,,,
    X+*:***:****.::*:::X:::X:::.::+:+::::,:X+:.:.:::+,::::+:,:*:*:::*..:..+.*...*:+...:::*:+::,,,,,,,,,,
    .:****:*::**...::*X.+X:*::*+::..X:*::,,X**:*:::*:::::,:*::,:*:::::::*:,:,,,,,:::*.:::*::,:,,,,,,,,,,
    *:*******::++..%.+**:+*.+++.++.:....*+.+.*:*:*X::*:**:X*X.X.X+..X:*:**.,:,,,:X:::*,,:::,:,,,,,,,,,:,
    ******:**::.**:.:++.*:.*X****::*+X***:::::*X*::::::*::::*X:::X.,X:::*:+:***:........X:.+*,,,,,,,,,,:
    ::*::::**::X..*..%+.X:..*.X:+%.X...+::X:::,:,,,,,,,,,,,,,,,,,:.,:*.::+:+,,,::.:,,,,,:::::,,,,,,,,,:,
    :::*:::::::.***::*::*::*:XX:+X.::::+:,::,,,,,,,:,,,,,,,,,:,,,:,::++.+:..*+XX:.,,,**:X*:,.,,,,,,,,,:,
    ,,:::::::*:X.*X.**X.*::+......XXX*::,,::::,:,,,,,,,,,:,,,,,,:,,,,,:,:::,,::::.,,,:::::::+,,,,,,,,,,,
    ,:::::::::*.*:*::::+:::*::*.::+:::::,::::,:,,,,,,,,,,,,,,,,,,,,,,,,,:,*,,:,:,,,:,,:,,:::,,,,,,,,,,,,
    ::*::::::::::::::::+::*::::.+:::::::*:::,,,*,,,,,,,,,,,,,,,:,,,,,,,,,,,,*,+*X+++*::::.:X,,:,,,,,,,,,
    ,:*:::::*::::::::::*::::::X*:::::::::*:,:::,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,:.:,*::.:::,,,,,,,,,,,
    ,::::::**:*:::::::*:::**:::::::::::::,:,:,:,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,,*,,,,,,,,:*,,,:,,,,,,,,,,
    ,:::::::::::*::***:*:**X*:*::::::,::,,,,:,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,:::,,,,,,,,,,,,,
    ::::*::*::**:*:*.*:**.*::::::::::,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,:,,,,,,,,,,.,,,:::,,,:,,,:,,,:,,,
    ,::*::**:*:::::::**:.*:::::::::,,::,,,,,:::,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,,,,::,,,::,,:,,,,,,,,,,,
    :*:::::::*::::***.*+*::::::::::,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,::,,,,::,,,,,,:,,,,,,
    :,::::*:::::::,:::X*:::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,,,,,,,,,
    ,::::::::,:::,:::X:,:::,,,,,:,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,:,,,,,,,
    ,::::::::::::,::+::,:,,,,,,:,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,::,:,,,,,:,::,,,,
    ,,,:::::,,:,:,:X::,:,:,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,,,,,:,,:,
    ,::::::,,,,:..+.+++...::****.*.*:::,::::::::*::.....**::**:*:::::::,,:::::::::::::::,::::,,,,,,,,,,:
    ,::::::,,:::::.+...+..:,,::,,:,,,,,,,,,,,,,,,:+:,:.,:,:::,:,,,,,,,,,,,,,,,,,,,,,::X*:,.**:,,,,,,,,,,
    ,::,:::,,:::**+..X.*X.::,,,,,,,,,,,,,,,:,,:::...+++:+*+:,,,,,,,,,,,,,,,,,,,,,:,:*+*..:*.::,,,,,,,,,,
    ,,*::*:::::..*+X..::X+*:*,::,,:,,,,,,,,,::*:....:,,,*.+X*,,,,,,,,,,,,,,,,,,,,,,:,,X.X%.::::,,,:,,,,,
    ,,:::::::::+:::.*XX:,:**:::::,,:::,,,,::,.*+%+..:,::,X:.:::,,,,,,,,,,,,,,,,,::X,*,.+:+:::,:,,,,,,,,,
    ::,:::.::*:*:::*..X.:.:,.+:**:,,::,,,,,:,:*X+%%.X...+.+*+:,,,,,,,,,,,,,,,:,*:,,:..,.*::,:*,:,,,,,,,:
    ,::,,::::*..*::***.+**:::,:::*::,:,,::,::,:*..%::.,*,%X*.:,,,,,,,,,,,,,*:,,:,,,,::.,,,,,:::::,,:,,,,
    ,,:*:**.:.****::**.*..*:::*,,,:*,*,::,,,,:*X%%%%*%.*:X%*:,:,,,,,,,,,,+,,,,,,,,:X::,,::,,,,:,,,,,,,,,
    :*::*:.::*:*:,::::.****+,,::,,,,*:,:,,::::*+%%%*...:*%...,,,,,,,,,,:.,,,,,,,,.,,,,,,,,,,:,,:,:,,,,,:
    *.:*:.*:*.:*::*::::*:**..*::,,,,:,,+:,:,:::*%%.%X:::.%+.,,,,,,:,:.,,,,,,,,,*,:,,,,,,,,,,,,,,,,,:,,,,
    **.*****.*:*:::::*:*****:*+:::,,::,,,,:****..%%.%...%..X,,::+:**,,,,,,,,,,.,,,,,,,,,,,,,,,,,::,,,,,,
    *::.***.**::..**::::*:*:*:**+X::,,,,,,,:,:::+%%%:X::+.X::X,,,.,,,,,,,,,X:,,,,,,,,,,,,,,,,,,,,,,,,,,,
    ***::.*.*:::+%*...**...:::::::::*.,*,,,,,,,,X.:.,X:,:::,,,,@,,,,,*,,*::,,,,,,,,,,,:::*,::,,,,:,,,,,:
    .::::**+:::*..%.:.*++.+*..:::::*::::,,.,*:,,:X++X+X+.X+:,,,+,,+:*..*,::*:,*,,::*:::X.*:::,::::::,,,:
    :*::*:..:::*..X%%.:***::,,,,,,:X+,,,,X,,,,,,,,,,,,,,,,:,,@,.,,,X.:::X+,,,,,,,::::*,:.::**:::,,::,,,,
    ,:::::::*:*..%%%.%*.***:,,,,,,,:,,,,,,,,.:,,:,,,,,,@,,,:,,*+:,,,,,,,,:,,,,,,,,,,,X+.::*+:,,,,,:,,:,:
    ,,:::*:::::**.X..+*.X..:,,,,,,,,,::,,,,,,:,,,,,@,,@,,,,,,,,.,,,,,,,*,,,,,,,,,,,,,*,:::..:,,,,,:,,,::
    ,::::.:*:::::::::**::.**.+**X.X*:::::,.*,**,,,,,,@,@@,@,,,,X,:*,X*:*X,@,,,,,X:::,::::::,:,,,,,:,,,,,
    ,::,::.***:::,,:,::,:::*::,::::,,:,,,::::+.X,,@,,@,,,,,,,::,,,+:,,::,,,,:,,,,,,,,,,,,,,,::,,,::*:,,,
    :::**.*.**::,,,,,,,::::,:,::,,,,,,,,,,,:::*.*,@,,,,*:,,,+.:,,,,,,,,,,,,,,,::,,,,,,,,,,,,,,,,,,,,,,,:
    ,:::+*:*:::*:,,:,,::,,,,,,,,,,,,,,,,,,,,,,XX.:,,+*,,.X*+,X:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,::,,,
    ,:*:.***:::::,,,,:,,,:,,,,,,,,,,,,,,,,,,,::,,,,,,,:,,,,,,.:,,,,,,,,,,,,,,,,,@,:,,,,,,,,,,,,,,:,,::::
    ,*:*.****:::,,,,,:,,,:,,,,,,,,,,,,,,,,,,::,,,,,,,,,,,,,,,+*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,::,,:
    ::::*:*.::::,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*@,@@,,,,,,,,,*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,X,::
    :*::**.**::::,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,,,,::.:,,
    ::**.***::::::,,,,,,,,,,,,,,,,,,,@,,,,,,,::,@,,,,,,,@,,,.:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::,:
    ::***:**:::*:,,,,,,,,,,,,,,,,,,,,,,,,::,,,,::,,,,,,,@,,,:::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,::,:,,:
    **:+***.:**::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,:,,::,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,:,,,,,,,,,,:
    .::X*::*::::,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,.,,,,,:,,*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,:,:,:::
    :*:X****:::*:,,,,,,,,,,,,,,,,,,,,,,,,,,,:::,,@@,,,:,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,::
    ::*.**::*:::,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,::,::,,,
    ::*X*:***:*::,,,,,:,,,,,,,,,,,,,,,,,,:,:,,,,,,,,,,:,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,:,,,,,,,,,,
    ::*X***:::*:::,,:,,,,:,,,,,,,,,,,,,,,,,,,::.,,,,,,,,@,,,*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,:
    ::*X*:*::::::,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,:,+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,::::
    .*:.***::**:*::::,,,,,,,,,,,,,,,,,,,,,,,,::,@,,,@,,,,,,,*:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,:::
    :::**:****:::,,,:,,,,,,,,,,,,,,,,,,,,,@,,,:,,,,,@@@,,,,,*::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,::
    ::*****:::::,,,,,,,,,,,,,,,,,,,@,,,,,,@,,,.,,,,,,,,,,:,,,.,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,:::::
    :::**::*::**,,,,,,:,,,,,,,,,,,,,,@,,,@,,,::@@@@,:,.,:,@@,X,,,,,,@,,,,,,,,,,@,@,,,,,,,,,,,,,,,,,,.:::
    :::*.****::::,,,,,,,,,,,,,,,,,,@@,@,,,,,,+,,,@@,,,*,*,,,,,:,,,,,,@@,,,,,,,,,,,,,,,,,,,,,,,,,,,,:+:::
    ,:::+**.*:::,,,,,,,,,,,,,,,,,,,,,@,,,,,,,,,,,,,,,*:*,,,,,,.:,,,@,,,,,,@@,,,,,,,,,,,,,,,,,,,,,,,:*,,,
    ,:,,X:.*::*::,,,,,,,,,,,,,,,,,,@@@,,,,,@,,@@@@@@@*,*,,@@:@,,,@@,,,,@,,,@@,,,@@@,,,@,,,,,,,,,,,,,,:,:
    ,::*+*::::::,,,,,,,,,,,,,,@,,,,@,,,,,@@,@@,@@@@@.,,*@@@@*@,.,,,@,@@@,@,@,,,,@,,,@,,,,,,,,,,,,,,,::::
    :,::*:*:::::::,,,,,,,@@@,,@@@@,@,@,,,@,*@@,@@@@,,,:*@@,@*@@@,@@@@@@@@@@@@@,,@,,@,,,,@,,,,,,,,,,*,,,,
    ::::.+**:::::,:,,,,,,@@,,@,,@@@@@@,,,@,,@@,@@@,,@@@,,,@@:@@@::@@,@@@@@@@@,,@@,@,@,,,,,,,,,,,,,,:,,,,
    ,::**.:*:::,:,,,,,,,@@,@@@@@@@@@@,@,,,,@@@,@@@*@@@@,:@@@:@@@.,,@@@@@@@@@@@@@@@@@,@,,,,,,,,,,,,,::,::
    ::*:**::::*:,,,,,,,,@,@,@@,@@@@@@@@@@,:@@@@@@,@@@@@@,@@@:@@@@,@@@@@@@@@@@@@@@,@@,,,,,,,,,,,,,,,,,::,
    :::::::*::::,,,,,,@,,@,@,@@@@@@@@,,@,,,@@@@,:@@@@,@@@:@@:@@@@:,,@@@@@@@,@@@@,@@@@,,,,,,,,,,,,,.,,,,,
    ::*:*:.:::::,,,,,,,,,@@@@@@@@@@@@,@@,,@@@@@*@@@@@+@@@@@@:@,,@:,@,,@@@@@@@@@@,@@,,@,,,,,,,,,,:,,,,,,,
    ::*:*:**:::*,,,,,@,,,@@,,@@,@@@@@,,,,:@@@@@@@@@@,+@@@@@,,@@@,*@,,@@@@,,@,,@@,,@,,@,,,,,,,,:,::,,,:::
    :*.:*:**:*::::,,,,,,,,@@@@@@@@@@@@,,,.,@@@.@@@@@*.@@,@@,@@@@@.,,,@,@@@@@,,,@,,@,@,,,,,,,,,,,,:,:,:,,
    :**:.:*.:::*:,,,,,,@@,,@@,,@@@,,,,,,.,@@@@,:@@@@+*@@@@@,*,@@@,,,,,@@,@@,,@,,@,,,,,,,,,,,,,,,,,,,,,,:
    :::*::*,::::,,,,,,,,,@@@@,@,@@@@@,:*,@@@,,,*@@,,*:@:@@@.:,,@@@,,@,@@@@@,@,@@@@,,,,,,,,,,,,,,.,,:,,,,
    ::***:::X:::,,,,,,,,,@,@@@,@@@@@,,,,,,@,.,,,@@@,,,@@@@@:,.,@@@,,,@@@@,@,,@,,,@,,,,,,,,,,,,,,,:,,,,,:
    :**:::::::,:,,,,,,,,,,,,,@,,@@,@@,:,@,,:,,,,,,@@:,@@@@@,,,,:,,,,,@@,@@,,,,,,@@@,,,,,,,,,,,,:,,,,,:::
    **:::.::*+::,,,,,,,,,,,,@,,,@@,,,.,@,,.,,,@,,,@@.:,,@@:,,,,,,,,:,,,,@,,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,
    :::::::::::::,,,,,,,,,,,,,,,,,,:*@,@@.,,,,,,,,@,::@:@,*,,,:,@:,X,,,,@,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,:
    ,::::::::***,,:,,,,,,,,,,,,,,,,*,,,,,,,,,,,+,,@,,,,,,,,,,,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,,,*,,,,,,,:,,
    ::::*::::::+,,:,,,,,,,,,,,,,::*:,,,,:,:,,,,*,,,+:.,,,,+,,,,*,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,::,
    ::*::::**::::,:,,,,,,,,,,,,,,,*:,,,,*:*:,,,:,:,*,.:,,,*:,,,:,,,,,.,,,,,,,,,,,,,,,,,,,,,,.,,,::,,:,::
    :::.:::*:::::::,,,,,,,,,,,:,:*X,,,,,:,,,,,::,,:,:,@,:,*,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,X,,,,,,,,,:,:
    :*:.****::*::.,,,:,,,,,,:,,::::,,,:+::,,,,,,,,,,,,,,,*,,,,,::@,,,,+,,,,,,,,,,,,,,,,,,,::,,,,,,,:::::
    :**.*:***::*::+,,,,,,,,:,*,,:::,,,,*,,,,::.,,,,,,,,,,.,,,,,,*,,,,@,:,,,,,,,,,,,,,,,,,::,,,,,,,,:,:::
    *.**.::*:*:::::*,,,,,,,,,,,:*+,,,:*,,,,:,,+,,,,,:,,,,:,,,,,,,*,@,,,:,,,,,,,,,,,,,,,,,,,,:,,,,,,,:,::
    *****::****:::,,:,,,,,,,:**:::,,,.:,,,,,,:.,,@,.*,,@,,,,,,,,,,.,,,,.:,,,,,,,,,,,,,,,,,,,,,,,,,,:,:::
    :*:*::::::*+:::,::,,,,:,,::..:,,,.:,,,,,,,+,,@,**,,,,,,,,,@,,,:,,,,,:,,,,,,,,,,,,,,,,,,:,,,,,,,,,:,,
    :**:::::**::*,,:,::,,:,::*,::,,,:::,,,,,,,.,,,,::,,,,,,@,,,,,,,::,,,::,,,,,,,,,,,,:,,,,,,,::,,,:,:::
    ,*:,*::::**:,::,,,,:,::*::,,:,,+:,,,,,,,,,,,,,,+,,,,,,:,,,,,,,,,,,,,.:,,,,,,,,,,,:,,,,,,:::,,,::::::
    ,:*:**:::::*::,:,,:,.,,,,:,:+,,:,:,,,,,,,,,:,,,.,*,,,@::,,,@,,,,,,,,,,:,,,,,,,,,,,,,,,,,,:,,,,,,,:::
    ,::.**::,::::,,,:,,,,.:::,::,,,:,,,,,,,,,,,X:,,.,:*,,,,:,,,@,,,,,.,,,.:,,,,,,,:,,,,,,,,,,,,,,,:,,:::
    ::**::::::,:,,,,,,,,,,::.+*:,::,,,,,,,,,,:::,,,,,:*,@,,@,,,,,@,,:,+,,,.*:.+:,:,,,,,,,,,,,,,,,,,,,:::
    ::::::,:::::,,,,,,,,,,,,..:,,,.,,,,,,,,,,,,:,,,,,::,@,,,,@,,,,,,,,,:,,,,,:,:,,,,,,,,,,,,,:,,,,,,,:::
    ::::::::::::,,,,,,,,,,,,,,:.+*,,,,,,,,,,,,,,+,,,,:,,,,,,,,,@,,,,,,,.,,,,,:.,,,,,,,,,,,:,,,,,,,,,,:,:
    ,::::::,::::,,,,,,,,,,,,,,,:,,:::,,,,,@@,,::::,,,,*,,,,,,,,,,,,,,,,:,,,X+,,,,,,,,,,,,,,,,,,,,,,,::,:
    :,:::,::,::*,,,,,,,,,,,:,,,,,:*:,:,,@,,,,,,,:.,@.,,,,@*,,,,,,,,,,,,:,,+,,,,,,,,,,,,,,:,,:,,,:,,,,,::
    :,:::::,,,:::,,,:,,,,,,,,,,,,,,,:,,,,,,,,,,:,.,,,,,:,,::,,,@@,,,,,,,*,,,,,,,,,,,,,,,,,::,::,,,,:,,::
    :::,:::,::::,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,::.,,,:::,,,,.:,,,,,,,*,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,:::
    *::,:::::,:,,,,:,,,,,,,,,,,,:,,,,,,,,:,,,,,,,:,,,*.,,,,,,*+.,:*,,,,,,,,,,,,,,,,,,,,,,,,,::,,,,:,::::
    ::::::::::,:,,,:,,,,,,,,,,,,,,,:,,,,,,,,,X.*:X.::*+,,,,,,,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,:,,::,:
    :::::::*::**+++++..++.+..+..**:::*,,,:::::.*.X:X*+X+:,,,,*:,,,,,,,,,,,,,,,,,,,,,,,,,,:::::,,:::,::::
    ::::,::::*:::::,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,:,,::::,:,:,::::
    ,:,::::::::::::::,,,,,:,,,,,,,,,,,,,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,:::::::*
    :::::::::*::::::::::,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,,,,,,,:,,:::::::
    :::::*:,:::::::::,:,,,,,:,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,+,:,,,,,,,+,,:+X::,,::::,::*
    ,::::*::::*:X+++.*.**+:::::::,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,:::::::::
    ,::::::::*::*+::.::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,@,,,,,,,,,,,,,,,,,,,,,,,,,.X.X,,+*,:,::::::*
    ,,::::::::*:*::::,,,,,,,,:,,,,,,,,,,,,+,:,,*,,:*,,@,,,,,,,*,,,:,:,,,,,,,,,,,,,,,,,:,,,,,,,:,:::::::*
    ,::.:::,,::,::,,,,,,,,,,,,,,,,,,,,,,*+.+:.:.:,,::,,,:,,:,,:,,,::,X:,,:,,,,,,,,,,,:,,,,,,,,,,,,::::::
    ,::*:::::,,,,,,,,,,,,,,,,,,,,,,,,,,,...:,,,,,,,,:,:,,,,,,,,,+,,,,,,,,,,,,,,,,,,,,,,,,:,,,::,,:,:::::
    ,::,::,,,,:::,::,,,,,,,:,,,,,,*,,,,,,,,,,,,,,,,,,,,:,,.,,,,,,,.,,,,:,,,,:,,,,,,,X,,,:,,:::,:::::::::
    ,::,,,::,::,:,*,:*:,,,,:,:,.,*:,:*,,,,::,,,.**,,,,,,,,,,,,,,::,,,,,,:::,:,,,,,+,,,,,:::::+::,:::::*:
    ,,:::,::,,::.**.X:*:.XX.:*+:X*:++,,+..:.,+*+++*...:,*,::*+:**+,*X.,..:*,:+.:.*X,X.:+*:*,:X::::::*:::
    ,,,,,,,,,,,*:::,,,,,,,,,,,,.,*,,,,,,,,,,,**::,,,,,:,,,,,,:,,,,,,,,,,,,,,,.,,,:+,,,,,,.,,,,,::,::::**
    ,::::,,,,::,.**,::,,,+*:,,,+,,,*,,,,:,:,,,:,,,,,.,,,:,,,,:,,,,,,,,*,,,*X,,,,,,,,,,:*:**..*,:::::::**
    ,:::::,,:,,:...X+,X.+XX:X.*:*,XX,X**,*,,+,,,,,,,,,,,,,,::*,,,,*:,**,:,,,:,*+*,,,:,,+,,,::::,::,:::*+
    ,*::,,,,,,,,X,,,+::::,:,,,,*,,:.,,,::,,,,,,,,,,,@@,,,,,,,,:,*:,****:,:,,:,.,.,.,,,.,,:*:::::::::::*+
    ,:+.:,,,,,,*.::::,*,,,+*:,:,,,,,,,,,,,,,,,,,,:,,,,,,,,@@,,:,,,,,.:X:*+X,++X:+.X.:X:+...,,*::::*::***
    ,:**,,:,,,,:.,:,*::,:.X*::,,:,,,,,,,*:,,,,,,,,,:,,,,,,,@,,,,,,,,.,*,,,,,,,,,,,,,,,,,*,,,*:::::::****
    :,:,::::::,,+::,:,,:,:X,,,,,,,:*.:*,:,,,,,,,,,,,*:.,,+::,,,,,*,@.,*,,.,,:::,,:::*:,+*:+*.::::::::***
    ,:::::::,:::::*:,:++:+:.:,:.X.*+...,,+.:.,..+.,,+*:,,*.,:+,..:,,.X,::,,,,,,,,,,,,.,,,,*,:,::::::***.
    ,::*:::::,::*,:,,,:,,,,:,,,,,:,,,,,,,+,,,,*,,*,,,,,,,,,,,,*,,,,,,,,,,,,,,,,XX,,,,.,::,::,::::::***:.
    :::*:::::,::,,:*::,.:,+*,:,::::,,:,,,,,,,,,,,+,,,,,,,::,,,,,,*.:,.,,:,.++,*.*::+**,X.,*+,:::::***+*.
    *::**::::::X*X..*:X*::....:X:.,+X+X+**,X+,.,:*,,,,:,.,*,:,:,,,,,,,,,:,,,,,,,,,,,,@,,,,,::::::::**:*.
    *::***::::::::::,,:,:,::.*:,::,,*,,,,:,:,,.,,,,*,,,,,,,,,,,,,,:,*,,,,,:,,:,,,,:,*:.:*:.X.:::::***.*X
    *:*::::::::X.:::X::::,:*:*,,**:,:.*::*:::+:,,:**+.::X+X.X+*:XX,+::.*++*,:,.,,,,,,,X:::::::::::***.+.
    ::**:***::::.XX+++*:+*.X:.::..+::+.+::X**:,:::::::,,,,.,,,::,,,,,::,,,,,,,,,,,,:*:::,*:::::**:**...+
    :*::*:*::::::*:*:*::::*::::::+:,:,::,,++X:,:::.:*::X:.,*::,::*:,,,*:::,:,:,::*X:XX:::X:X%::::**...+.
    :::::**::**:::*...::::::::,::*::X:*..X.*.+++X::+*:X*X:*X...:,.:,.*.:*:***X:,,:,:+,:::X::.::***...++X
    :*:.***::.***X.X*.:.+++*XX*.::,:X:,:::+,,,,,,X,,:,::,:::,*:,,:,,:::,,:::,X,,,,,::,::::X:.:*:*+..+++X
    *:::::*:*:.*::..::::+:.,:,:*,,:::,,,.,.,,,,:,::,,:*.:,.,.,:,,:+:*X*:.::*::,::::*+:::**...*:**.*+..+.
    **:::**:::*.::**::*:::*+::::::::*:*.**.:++.X:::X+X+,::.,.X+.*:X:*..*X.*::::::,:,.:::*..*X:****...++.
    :::::.:,::.X.X+*X.++X**.*::*:::,,,:::,::,,:+,,,,,,,,::+,,,,,,,,,,,,:::,,:,:,:,:,::::*.*X+*.***.+X++.
    :::::**:::*:***::::::,:::::,:,..:,*:,,,:+,,,:::,,,.:,,*:*,,,,,::,,+::,:,,,X::::.:*.**%..X*....XX.+XX
    :::*..+::*:*:.*:,:**::::::X:::***::X*.XX::::+,:X.+.+::X*+*+,,,.,***+*,:*:,+,::,::,::::::***.X..++XX.
    ::**..*::***::X:X:X::::*:,::,+,::,,**::,:,:,::+%.::,,,,,,,.,,,,:,,,,,,,,,,,,,,,,,,,:*:*****.%%.?.%%?
    ::*...::.:::::,,::,,::*,,,:,,.:,,,,::,,,,,,,:.%%%.:.:,,,,,,,,,,,,,,,,,,,,,,,,:,,,:::::::***...++XXXX
    :::.*..:*::,::,,*::,::,,,,,,,,,,,,,,,,,,,,,,:.%XX%:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::**.++.XXXX.
    
Process finished with exit code 0

Creative Coding
JS, Python, PHP, HTML & CSS

State of the art web design
tutorials, lessons, development

      'Why Leonardo?'_

    
      'Leonardo was an Italian polymath of the Renaissance whose areas of interest included:
      invention, drawing, painting, sculpture, architecture, science, music, mathematics,
      engineering, literature, anatomy, geology, astronomy, botany, paleontology
      and cartography.'

      'He is widely considered one of the greatest painters of all time,
      despite perhaps only 15 of his paintings having survived.'

      - All this multiple scientific intrests reminds us
      of our research regarding technology, art and computing,
      so we decided to name our project after the painter.

    
 'In Gioconda we trust' 

Data analytics & research