When I was four years old, I wanted to be a wizard.

As I grew up, I decided to become the closest possible thing: A Programmer.
With computers we can create amazing things that were deemed impossible a few years ago. I love making things that stem straight from the imagination.

If you have a project that combines media and code, or that requires clever thinking, I'm your man!

Here are some things I've been working on during my spare time

                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                                                                                                                        
                                                                                                        ``..,,,,,.``                                                                                    
                                                                                                ```..,:;'''''''''++';:,.`                                                                               
                                                                                            `.,;;''+''+'+'++++++++++++##+;.`                                                                            
                                                                                        `,:;;'''+'+'+#+#++++#+###+#+#####++;,`                                                                          
                                                                                    ``,:;'''+++'++++#+'##'+#################++;:.`                                                                      
                                                                                  .,;'''+''+++++++++#++#################+##+#+++++:`                                                                    
                                                                                .;'''''+++++++++#+#############################++++',`                                                                  
                                                                              .;'''++'++++++++++++###############################++++;.`                                                                
                                                                            .;''''+++++++++++##+###++###############################+++',`                                                              
                                                                          `,;++++++++++##+##+##++++++++##############################++++'.                                                             
                                                                         ,''+''+'+++++++#++#+#+++##++++++++++++#+#####################+++++,`                                                           
                                                                       `;'+++'+++++++++##++++#++#++#+#++##++##############################++',                                                          
                                                                      .'+''''++++#++#++++++#++++##########################################++++;`                                                        
                                                                    `:''++''++++#++++++##+##++#+#+##########################################+##'.                                                       
                                                                   `;''+''++'++++#+##++#######+#++###########################################+#++.                                                      
                                                                  .;'+''++++++++###+#++##########################################################'.                                                     
                                                                 .;+''+'+##++####+##++##+#####+###################################################+.                                                    
                                                                `;''++'+#++''##+#+###+#############################################################+:                                                   
                                                               `:''++++++++++##########+#+############@######@######################################+;`                                                 
                                                              `:''+'+++++##+#+##+##############################@#####################################+'`                                                
                                                              ,;'''++++++++#####+####################@###########@@@#######################@###########'.                                               
                                                            `,''''+++'++++#+#+++#################################@#########################@####+#######+;.                                             
                                                         `.:;;''++'++++++###+#############################################################################'.                                            
                                                       .:'+''''++++##++###+#+##+###########################################################################;`                                           
                                                      .'+#+''''+++++##+#+##+##+############################################################################+;`                                          
                                                     `'++#''''+'++++###+#####+#######################################################@######################+,                                          
                                                     ;++#+''''+++++###++#####+###############################################################################'`                                         
                                                    :'++#+''+'+++++#+#####+####################################################################@#############+:                                         
                                                   .'+###+''''+++#++####+#####+#################################################################@#############+.                                        
                                                  `;'++##''''+'+#+#+###+###################################################@###############@##@################;                                        
                                                  ,;'+###+'++'+#+#+###+#######################################################################@################+`                                       
                                                 `;''+###+++++#+++##+#####################################################@#@#################@#################:                                       
                                                `:'''####++++#+#+##+#####+################################################@#########@########@@@################+`                                      
                                                ,'''++###++++++##++#####################################################@@@##################@@##################.                                      
                                               `;''+'+####++++##+++###########################################@#######@####@###@#############@@@#################,                                      
                                               ,'+''++####++++#+#+##########+#################@########################@##@#@@@##############@@@#################;                                      
                                              .'''''++#####++##+######################################################@#@#####@@######@######@@@##@##############+`                                     
                                              :'++'+++#####+###+##################@##########@####@###############@@#@#@#@###@##@#@@##@#######@@#@################,                                     
                                             .'''+'+++######+++##+#######################################@####@#@#####@##@@@@####@###########@@#@#@@@#############;                                     
                                            `;''+'+'#++#########################################@#######@#@##@#@####@#####@@@@##@##@#########@@@@@################'`                                    
                                            .''+'++++++#######################################@@####@####@##@###@##@####@@#@@#@@##############@@@@@@##############+`                                    
                                            ,'+'++'++++########++################################@#@####@#@######@@#@#@###@@@@#@@###@########@@@@@#@##############+`                                    
                                            :'';+++#''++##########################@##########@####@#@######@@###@@@@#@##@@##@@@@##@#@@######@#@#@@@@@#############+.                                    
                                            :+'++'#+'#++#########################################@###@@##@@@##@#@#@#@@#@#@@@@#@@@@#@@@#######@@@#@@###############+.                                    
                                            ;'++'+#'++'++##################################@####@####@@###@@#@#@###@@#@#@@@#@#@@####@#@#######@@@@@@@@############+,                                    
                                            :++'+#++#+'+##################################@#########@#####@#@#@@#@#####@@@@#@@#@####@###@@######@@#@##############+:                                    
                                            :+'+##++#++##+####@#########@################@####@##@@#@####@#@#@@#@#@#@####@#@@#@@@#@@@##@######@@@##@##############+:                                    
                                            :#++#++#+'+#++########@##################@##@#######@@@###@@@@@#@@@#@@@#@#@#@#@@@#@#@@#@@@#@@###@@@#@##@##############+;                                    
                                            :'+++'#+'+++'+#############################@@#########@#@##@@@####@#@@@@#@@@@@@#@@@@#@@###@@@@#@###@###################;                                    
                                            .'+++##++##++########@####@##########@##############@@#@@#@#@#@@###@@@@#@@@@@@@##@@#@@@#@@#@#@###@#@@@@@###############;                                    
                                            `'#++#++'#+'+##++###@####################@#####@#@#####@#@####@#@@#@##@@@@@#@@@@@@@#@##@###@@###@@#@@#@################;                                    
                                             ''+##++##++###+##############################@####@###@@@@@@@@#@####@#@#@@@@@#@@@@##@@#@@#@@@@#@@#@@@@################;`                                   
                                             :'+#'+##+++##++#######################@########@#@####@@@@#@@#@##@#@#@@@##@#@@@@@#@#@##@@@@####@##@@@@#####@#@########'`                                   
                                             .'#+++##++##++#############################@####@@#@##@#@##@#@##@@@#@@@@#@@@@@@##@#@@@@@@@@@@@#@#@@@@#@####@###@######'`                                   
                                              ;+'+##++###+###+##############@###############@@#@@@@#@#@@##@#@#@@@@@@##@@#@@@@@@#@@@@@@#@@##@##@@@@@@###@###########'`                                   
                                              `'++#++####+###+##################@@####@####@@#@@@@@@@@@#@@#@@@##@@@@#@#@@@@##@@@#@#@@@@@@#@@@@@#@@@@###@@@@########'`                                   
                                               .'++++##+#####+##########@############@##@#@@@##@@##@@@@#@@@@@@@@@@@@@#@@@@@#@@@@#@@#@@@@@@@@@##@@@@####@###########'.                                   
                                                '+++###+##################@@#######@@@####@####@##@#@@@@@@@@@@@@@@#@@@@@@@@#@#@@#@@@@@#@@@#@@@@@@@######@@@########+.                                   
                                                ;+####+#################@@@########@@#@#@@@#@@#@@###@@@@#@@@@#@@@@@@@@#@@@@@@@#@@#@@#@#@@#@@@@@@@@@#@@@#@##########+.                                   
                                                `'+#####################@@@########@##@#@@#@#@@#@##@##@#@#@@@@@@@@@@@@@@@@@@#@@@@##@@#@@@@@@@@@@##@#@##@#@#########+.                                   
                                                `;+#######################@@@@####@@######@@@@@###@@#@#@@@@#@@@@@@#@@@@@@#@@@#@@@@@@##@@@@@@@@@#@#@@###############+,                                   
                                                `,##+#####################@@@###@#@####@#@@@@@#@#@####@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@#@@@@#@#@@@@@###@###########,                                   
                                               `,:;++#######################@####@###@@#@@#@@#@#@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@#@@@@@@@@@@@@@@#@@#@@#@#############.                                   
                                              `.:;:,+#########################@@@####@#@@#@@@##@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@###@@@@@@#@@@@@#@#@@@@@###############.                                   
                                              .:;;'.'##+#######################@@###@@####@##@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@#@##@@#@###########.                                   
                                            `.:;;''::+#+#######################@##@#@@@@@@##@@@@#@@#@@@####@@@@@@@@@@@@@@##@@@@@@@@#@@#@@@@@#@@@##@#################.                                   
                                           `.:;;;;';.,;############@######@#######@@@@#@@@##@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@@#@@@@@#####################+`                                   
                                          `,:;;;;;;;,,:+##########################@@@@#@@#@@@@@@@##@#@#@@@@@@@#@#@#@@@@@@@@@@@@@@@@@@@#@@@@@@#@#####@###@##########'                                    
                                        `.,:;;;;;;;;;.,;##+#############@##########@@@@@@@@@@@###@@#@@@@@@@@@@#@@@@@@@@@@@@@@#@@@#@@@@@#@#@@##@##@@#@##############:                                    
                                       .,,:;;;;;;;;;;:,,:'##@#########@#####@#######@@@@@@#@@#@#@@@#@#@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@#@@@@@@###@##@##############.                                    
                                      .,::;;;;;;;:;:;;,,:;+###########@##############@@#@#@@@@@@@@#@@@@#@@@@@@@@@@@#@@@#@@@@#@@@@@@@@@@#@@####@#@############@####+`                                    
                                     .,:;;;;;;;;;;:::,::,:;################@##########@#@@@@@@@@@#@@@@@@@@@@@@@@@@#@##@#@@@#@@@@@@@@@@@@#@##@@@#@#####@##@@#######'                                     
                                    `,:;;;;';;;;;;:,,,,;:::;'+#########################@@@@#@@@@@@#@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@##@##################:                                     
                                    .::;;''';;;;;;:,.,.::,::;+###########@@####@@########@@@@@@@@@#@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#@@@@#@@@####@###########,                                     
                                    ,:;;;'''';;;;;:.`.`,,:,:;'##+#######@#####@#####@#####@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@#@#@@@@@@@###@@@#@@####@@##########+.                                     
                                    ,;;'''''';;;;:,.```.,:,,:;''+#######@@####@#####@######@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@#@#@#@#@####@###@####@#####'`                                     
                                    .;;;;;;;;;;;;:,.````.,,,::;'+#######@#########@@@#####@#@@@@@@@#@@@@@@@#@@@@@@@@#@@@@@@@@@@@@#@@@#@@@@####@@#@#@############+:                                      
                                     ,;;;;;;;;;;;:,``````..,,:;''##+##############@###@@#####@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@###@##@##@#@###@#####+.                                      
                                      ,::::;;;;;;,.`````...,,::;'''+########@####@@##@@@########@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@##@##@@##@###########'`                                      
                                       .,::;;''';,`````....,,::;;''+############@#@##@@@####@#@#@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@#@@@@@@@#@@##@##@#@@@###########:                                       
                                        .:;;'''';.`````....,,::;;'''#################@@#####@#####@@@@@@@@#@@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@@#@@##@#@##@#########+.                                       
                                         .;''''';``````...,,,::;;;''''+########@##@@@@@###@@@###@#@#@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@@@@@@@@#@#@@##@@#@@@#@#######:                                        
                                          `:'''''`````....,,:::;;;''''++######@@####@@####@#@##@#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@##@##@#######+`                                        
                                            :''+;`````...,,,::;;;''''''+#####@@###@@@###@@@###@#@@#####@@@@@@@@@@@@@@@@@@#@@@@@@#@#@@@@@@##@@@#@@###@#########;                                         
                                             ,;':````...,,,,::;;;''''''''+#########@##@@@@@@@#@@@##@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@##@@@@@@@##@######@#######,                                         
                                             ....````...,,,:::;;;;'''''''+############@@@@@@@@@##@@@@@###@@@@@@@@@@@@@@@@@@@@@@@@#@###@@@#@@##@##@##@@##@####+`                                         
                                             ....```...,,:::::;;;'''''''''+#####@###@@@@##@@@@@#@@@@@#@#@@#@@@#@@@@@@@@@@@@@@@@@#@@###@##@@@#@#@@@##@########'                                          
                                            `....``...,,:::::;;;''''''''''+++###@####@@@#@@@@@@#@@@@@#@#@@###@@@@@@@@@@@@#@@@#@@@@@##@##@@#@@@@@@@@##########;                                          
                                           `.....`..,,,::,:::;;;'''''''''''++###@####@#####@@###@@@@#@@@@#@#@#@@@@@@@@@@@@@@@#@@@@@@@@@#@@@#@@@@@@#@@#@######:                                          
                                           `...``...,,,:::::;;;;'''''''''''+++###########@@@####@@@@#@@@@#@@#@#####@@@@@@@@@@@@@#@@@@@@@#@@@@@#@@##@#########:                                          
                                           `....`..,,::::;;;;;;;''''''''''++++######@####@@##@@@@#@@@@@@@@@@@#######@@@@@@@@@#@@@@@@@@@@@@@@@@@@#@###########:                                          
                                           `....`..,:::;:;;;;''''''''''''+++++##+###@####@@#@@@@@@@@@@@#@@@@@@@@@@##@#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@####@###,                                          
                                            ....`..,::;;;;'''''''''''''''+++++#############@@@@@@@@@@@@@@@@@@@@@@@@@@###@##@@@@@@@@@@@@@@@@@@@@@@###@@@#####+.                                          
                                           `....`..,::;;;;'''''''''''''''+++++##############@@@#@@@@@@@@@@@@@@@@@#@@@@##########@@@@@@@@@@@@@@@@@@@#@#######+`                                          
                                           ``,,....,::;;;'''''''''''''''++++++#############@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@##@#######@@@@@@@@@@@@@###########;                                           
                                            ``,,..,,:;;;;'''''''''''''+'++++++############@@#@@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@###@############@###############.                                           
                                           ``.,:...,:;;'''''''''++'''+++''+++++###########@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@###@##########################;                                            
                                           .,,,,..,,:;;''''''''++''++++++'+++++#######+###@@@@#@@@#@#@@@@@@@@@@@@@@@@@@@#@@@##@@@@@@@###########@##########`                                            
                                           `,::,,.,,:;;'''''''''++'++++++'+++++######+++######@@@@#@@@@@@@@@@@@@@@@#@@@@#@@@#@@@@#@@@@#@@@##@##############`                                            
                                            .,::,,,,:;;'''''''''++'+++++++'+++++#####+++++##@@@@@@@@@@@#@@@@@@@@@@@@@@@#@@#@@@@#@#@@###@######@############,                                            
                                             ,:::.,,:;;;'''''''++++'+++++++'''+++####++'''####@@@#@@@@@@#@@@@@@@@@@@@@@#@@@@@@##@#@#@#@@#@@@##@@#@#########;                                            
                                             .,,:,,,:;;'''''''''++'''+'+++++'++++++++++''+######@@@@@#@@@@##@@@@@@@@@@@@@@@@@#@@#@@#@@@@@@@##@@##@########+'`                                           
                                             `,,:.,,:;''''''''''''+'+'++++++++++++++++++''+####@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@@#@###@##########+`                                           
                                             ..,,,,,:;''''''''''+''++++++++++++++++++++++'''''##@@@@@@##@@@@@@@@@@@@@@@###@@@#@#@#@@@@#@@#@#@#@@###@####+#++.                                           
                                           `,`..,,,,:;''''''''''''+''+++++++++++++++++++++'';'++##@@@@@@###@@@@@##@@@@@@@@@@@@#@##@@@@#####@######@######+#+,                                           
                                         `:;.``.,,,,:;''''''''''''+''+++++++++++++++++++++';''+++#@##@@@@#@@@@@@@@#@@@@@@@@@##@@@@@@#@#@@##@#@@########+####,                                           
                                        ,'':`...,,,,:;'''''''''''''+''++++++++++++++++++++;;;''+++###@@@###@@@@@@@@@@@@@@@@@@@@#@#@@@#@#@@@#@@#############+:                                           
                                       :+'',....,,,,:;'''''''''''''''''+++++++++++++++++++';;''++++++#@@@@@@@@@@@@@@@@@#@@#@#@####@@#####@#@####@###########+`                                          
                                      `++''.....,,,:::;'''''''''''''''++++++++++++++++++++'';''+++'++###@@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@@@@@#@#@#####@########'`                                         
                                      :+'''..,...,::::;;''''''''''''''+++++++++++++++++++++'''++++++++####@@@@@@@@@@@##@@#@@@@@#@@@#@@#@@@#@#@#@####@########++`                                        
                                     .+''''.,,,,,,::::;;;'''''''''''++++++++++++++++++++++++'++++++++++#####@@@@@@@@##@@@@@@@##@@@@@@@@@@@@##################++'`                                       
                                    `'+''+;.,,::,:,;;:;;;;''''''''++++++++++++++++++++++++++++++++++++++####@@@@@###@##@@@@@@@#@@@@@@@@@@@@@#######@###########+:                                       
                                    :+'''+',,,::::,;;;;;;;;''''''''+++++++++++++++++++++++++++++++++++++###@@@@@@#@@############@@##@@@@@@######################+.                                      
                                   .++''++',,:;::::;;;';;;;''''''''++++++++++++++++++++++++++++++++++++++####@@###@#############@###@@@@#########################+`                                     
                                  `'#+''+++:::;;;:;;;;';;;';''''''++++++++++++++++++++++++++++++++++++++++######################@##@@@#@@#########################,                                     
                                  ,+#''++++'::;';'';;;''';;;'''''''++++++++++++++++++++++++++++++++++++++++####################@###@@@@###########################'                                     
                                 `'#+''+++++:;;';'''';'''';;;'''+++++++++++++++++++++++++++++++++++++++++++####################@#@@@@@############################+`                                    
                                 :+#+''++++#+;:'''''''+'''''''''++++++++++++++++++++++++++++++++++++++++++++###################@#@@@###############################,                                    
                                `'++''+++++#+''';'+++++++''''''+++++++++++++++++++++++++++++++++++++++++++++#####################@@@@##############################;                                    
                                ,+#+''+++####+'';'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++################@#@@@@###############################'                                    
                                ;+#''++++######+'++++++#++++++++++++++++++++++++++++++++++++++++++++++++++++++++###############@@@@################################'                                    
                               `'++'++++########++++++###+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++########@##@@@########@########################+`                                   
                               .+#+++++###################+##+++++++++#+#####++##++++++++++++++++++++++++++++++++++#########@@@@@@##################################.                                   
                               ;+#''+++#########################++##++++++++++++++++++++++++++++++++++++++++++++++###########@@@####################################'`                                  
                              `+##+++++##+######################+###+'+###+++++++++++++++++++++++++++++++++++++++++#########@@#######################################'`                                 
                              ,+#++++++#+######################+####+'###@#'++++++++++++++++++++++++++++++++++++++++########@#########################################'`                                
                              '+#++++++###+###################+#####+'###@+'#+'+++++++++++++++++++++++++++++++++++++########@##########################################'`                               
                             `+##++++########################+'+''++'+@@@#++###;+++++++++++++++++++++++++++++++++++###############@#####################################'`                              
                             .+##++++####+###################+;''+#+'+##@#'+####;'++++++++++++++++++++++++++++++++#######################################################+.                             
                             :+#+++++####+##################++;'++++#+++@#'+#####;'++++++++++++++++++++++++++++#################@#########################################+,                            
                             ;+#++++#####++################+++;'++#######++#######;'++++++++++++++++++++++++++######################################@#####################++:                           
                            `'##++++#####++###############+##';'+++########++###@#+''+++++++++++++++++++++++++################@@#############################################'`                         
                            `+##++++####+++#######@#########+'''+++############@#@@;'+++++++++++++++++++++++######################################@###########################+,                        
                            ,+##++++#####++#######@#####+###';''+++#################;'++++++++++++++++++++++#####################################@@@###########################+:`                      
                            ;###+++######++############+###+';''+'#+################+;++++++++++++++++++++################@@#####################@@@#############################;`                     
                            '###++######++########@@@######'';;''+##+################++++++++++++++++++++###############@########################@@###############################+,                    
                            '####++######+################+'';'''+++++####+###################+++++++++#########################################@@@################################+:`                  
                            '####++#####+++################'''''++++++###+####+#####+########++++++++++++#######################################@@###################################'.                 
                           `'###+++#####++#######@##+#####+'''+'+++#########++#++#############+++++++##########################################@@@####################################+,                
                           `+###++######+++#####@@#+###@##'''++++++++#++#+#+++++###++++++++++++++++######+########@#####@#@###@@##############@@@@####################################++:`              
                           `+###++######+++#####@#+###@###+'++++++#######++#+#+###+++++++++++++########+###############@######@#@#############@@@#######################################+'.             
                           `+####++#####++#######+###@####+'++##############+#+##++++++++++++#######+++++####@#@####@#######@@@#@###########@@@@##########################################+,            
                           `+###++######+++#####+###@@#####'+#################+####+++#+#########+++++#######@####@@@@#@#@@#######@########@@@@@@##########################################+;`          
                           `+####+######+++#####+###########'###+'++##########################++''+++###############@#@##@@#####@####@#####@@@@@@##########################################++'.         
                            ;#@##+#######+#####+############+##+''+'++++####@@##########@#++''++++#######@########@@@@@@##@###############@@@@@@#############################################++:`       
                            ,##@#+######++####+###@#########+'#'''+'++++++#+##########+'''+'+'++#######@####@##@@@#@@@@@#################@@@@@#@##############################################++;`      
                            .####+######++###+###@###########++'''+'''''+++++++++++'''''++++++#+#######@####@@@#@@@#@@@#@######@##@##@@#@@@@@@#@###############################################++'.     
                            `+###+######++##++###############+'''''''+'+''+++''+'+'+''+++###+####@@@@##+###@@@@#@@@#@@@##@@@######@##@@@#@@@@@##################################################++'`    
                             +###+#######+#++###############++''''''++''''+++'+++'+#++++##########@@@##@@@@@@@@@@@@@@@#@######@#####@#@@@@@@@@@#@###############################################+++;`   
                             '###+######++#+################+';;;;''''++'+++++#+++###+#+#######@#@#@####@@@@@@@#@@@@@@@@@@@####@###@@@##@@@@@@####################################################++:   
                             :##++######+#+################++'';''''''++'+++++++++###########@@@@##+##@#@@@@@@@@@@@@@@@@@@@#@##@@######@@@@@@######################################################++,  
                             .##+#######+++################++;';''+'++++##+++#+#########@@@@@@@##++#@@#@@@@@@@@@@@@@@@@@@@@#@@@@######@@@@@@@###################################################++++++, 
                             `##+#######++#################+';''''#++++++############@@@@@@@@###++@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@####@@@@@@@@#####################################################++++'.
                             `+#+#######+#################++'''+++####+#########@#@@@@@@@@#####+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@#####################@###############################+++++'
                              '#+######++#################++;'+++###########@@##@@@@@#@####+##+##@@@@@@@@@@@@@@@@@@@@@@@@@@#@@##@@@#@@@@@@@#@#####################@###############################++++++
                              ;++######+##################++''+######@#@##@@@@@@@@@############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@##@@@@@@@#########################################################++++
                              :#+#####+###################++'+###########@##@###############+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@#@#######################################################++++
                              .#+####++#####################++#++++++++#+##########+#########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@##@######################################################+#+++
                              `#+####+#####################+++#+''++++++++++++##+##########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@##########################################################++
                              `++###+#####################++++++'''+#++####+##+#+#####@###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@####@@@@@@@@#@@####################@##################################+##++
                               '+###+#####################++++++'+++##############@######@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@##############################################################++
                               :+##+#######################++++++'+########@######@@###@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@#############################################################++
                               ,+#++######################++++##+++######@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#############################################################++
                               .+++########################+++++++#++####@@@@@##@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@######################@#####################################+++
                               .+++#######################+++++####+++####@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@##@@@@@@@@@@@@@@@#@#######################@#####################################++
                               .++#######################++++++####++++################@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@#@###################@@######################################++
                               .+########################++++++####+'++##############@#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@#####################@###################################++++
                               :+#######################++#+++###@#+++################@###@####@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@@@###@#####################@#@####################################+++
                              `'#########################+#+++#####'++##################@@#@@#@@@@@@@@@@@#@@@##@#@@@@@@@@@@@@@@@@@@#@@@@########@#############@######################################+++
                              ,##########################+++++#####'++################@###@@@#@@@@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@#@@#####@@@################@@#####################################+#+
                             `+#########################++++######+'+##################@########@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@###@@@##########################################################+++
                             This ASCII-style portrait photo of me looks best when seen in a graphical browser, where it is zoomed out a little.