SCALA PHILOSOphoru philosophica
1998


;'''++##@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@###@#@@@@@@
;''+++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@
;''+++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@
;''+++###@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###
'''+++##@@@@@@@@@#@@@@#@@@@@@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@
'''+++##@@@@@@@@@@@##@#@@@@@@@@@##@@@@@@#@@@@@@@#@@@@@@@@@@@#@@#@#@@@@@@@@@@@@@@@@@@@@##@@@@@@##@@@@
'''+++##@@@@@@@@@#@@@@@@@@@@@@#@@#@@@@@@@@@@@@@@@@@@@@@@@#@@@@@##@@##@@@#####@@@@@@#@#@@@@@@@###@@@@
'''+++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@##@@###
'''+++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###
'''+++###@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
'''+++##@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@#@@#@@@@#@@##@@@@@@@@@@@@@@@@#@##@#
'''+++##@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@@##@@@@##@##@@@@@@###@@@@@@@##@@#@@
'''+++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@##
'''+++###@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@@#@@@#@@##
'''+++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@##@##
'''+++###@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#######
'''++####@@@@@@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@########
'''++####@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@##@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@##@####
''+++####@@@@@@@@@@@@@@@@#@@@@@@@####@@#@#@############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@####
''+++####@@@@@@@@@@@@@@@@@@@@@@@@#@##@@#@########@#@##@@#@@@@@@@#####@@@#@@@@@@@@@#@#@@@@#@#@@#@####
'''++####@@@@@@@@@@@@@@@@@@@@@##@#@@#@@#@@@@@##@@@#@@@@@@@@@@@@@@#@##@@@#@@@@@@@@@##@@@@@###@#######
'''++####@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@#@@###@#@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@##@###@
'''++###@@@@@@@@#@@@@@#@#@@@@@@@@@@##@#@#@@:'@#@@#@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@#@######
''+++###@@@@@@@@#@@@@@##@@@@@@##@@@##@@##@@`##@@@@'@@@@###@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@######
''+++####@@@@@@#@###@@##@@#@@@@######@#@#@' '@@@@;'#@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@###@###
'''++####@@@@@@####@#@@#@#@@@#@#@###@@@#@#`` :+',:@#@####@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@####@##@
'''++####@@@@#@@@#@@###@+@@@@#@@#@#@##@@#:` ` .:+@@#@##@@##@###@##@@@@@@###@@@@@@#@@@@@@@@@@@#@#####
'''++####@@@@@@@@@@@###@`@@@@@@@':@#@@+,` `.:'#@@@@@@#@@@@#########@@@####@@@@@@@##@@@#@@@@@@@@#@##@
'''++####@@@@@@;.,;###@.,#@####@+ '#+:, `:+@@@@@@@@@@#@@##@##@###@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@###
'''++#####@@@#@:.  `..` ;@@@@@##@``::``.+@@@@#@#@@@@@#@@@@@##@#@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@#@#####
''+++#####@@@#@@@:    ` :@#####@#'``` :@@#@@@@#@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@########
''+++###@@@@@##:.````.   :@#@@@#@@` `:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@########
''+++###@@@@@@#':``.;:,`` '@@###@@.``@#@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#####
''+++###@@@@@@#@, .#@@':` `###@##@.`;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@####
''+++###@@@@@@@# `+@##@+;``,@####+  #@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#####
''+++###@@#@@@#;,#@#@@#@+; `####@; `@+@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@#@#@###
''+++###@@#@@@##@@@@####@;' ,@##@, ,@,@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@#@@@###
''+++###@@#@@@#@@#@#@####@:: ;@#+` ;@`###@@@#@@@@@@@@@#@#@@#@###@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@######
''++####@@@@@@@@###@@#@##@@;, '@;  '# ##@@#######@@@@@#@##@###@##@@@@@@@@@######@#@@@@@@@#@@@@######
''+++###@@@@@@@@#@@@@@@@@@##'` +,  +:`#@@@@@#@@@@@@@@@@@#@@@@#@#####@@@@#@#@#@@@@@@@@@@@@@@#@#@#####
''++####@@#@@@@@@@@@@@@@@#@@'; `` `,`.##@@@@@#@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@#@@@@@@@@#@#@#####
''++####@@@@@@@@@@@@@@@#@''@@'     . ,@#@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@###@@@@@@@@@@@@@@@@@@@#@#####
''++####@@@@@@@@@@@@@@@@#@`+@:,   ``.:@@@@@@@@@@@@@#@@@@@@@#@@@#@@@@#@@####@@@@@@@@@@@@@@@@@@@#@##@#
''++####@@@@@@@@@@@@@@@@@@' +;:   ```.'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@###@@@@@@@@@@@@@@@@@#@##@@#
''++####@@@@@@@@@@@@@@@#@@@: . ,  ` ```+@#@@@@@#@@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@@#@@@@###@@##
''++####@@@@@@##@@@@###@@#@+.  ,    ```'@#@@@@@@#@@@@@@@@@#@##@@@@@@@@@#####@@@@@@@@@@#@@@@@###@#@##
''++####@@@@@@##@#@@#######@;`:,```` `:`##@@###@@@#@@#@#@@#@###@@@@@@@@#####@@##@@@@@@@@@@@@@#@#####
''++####@@@@@@##@@@@@@@@#@####+:      +::@#####@######@@@####@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#####
''++####@@@@@@@@@@@#@@@@#######; `` `::';:@##@##@##@##@#@####@@####@@@@@@@@@@@@@@@@@@@@@@@@#@##@####
''++####@@@@@@@@@@@@@@@@#######+```,.;;';;;#@#########@@######@#######@@@#@@@@@@@@@@@@@@@@@@@##@#@##
''++####@@@@@@@@@@@@@@@@########;, :.:.++`.;+###############@#########@#@#@@@@@#@@@@@@@@@@@@@#######
''++####@@@@@@@@@@@@@@@@@#######+;,.:,';',,.`:'+#@#######@#++##########@@@@@@@@@@@@@@@@@@@@@@#@#@###
''++###@@@@@@@@@@@@#@@@@@########;:.+:+;,;:,:..;.'##@##@#':.:'@##########@#@@@@@@#@@@@@@@@@@@#@#@###
''++####@@@@@@@@@@@@@@##@########;:`'':;:;'.::.``,.:;';:,. `.,'@########@@@@@#@##@@@#@@#@@@@@###@###
''++####@#@@@@@@@@@@@##@@#########;:'';;+:,,:.+`.,.,.`.`:``` . #######@###@@#@#@#@@@#@@@@@@@@#@#@###
''++####@@@@@@@@@@@@@@@@#@#####@##;;''':;,:..,`.,:,`. .`   .: `:@#@###@@#@@@@@@@@@@@@@@@@@@@@#@#@###
''++###@@@@@@@@@@@@@@#@@#@@###@###@,;''+;' :``....` `  ```.,` . '@@+'###@#@@@@@@@@@@@#@@@@#@@#@@#@@@
''++####@@@@@@@#@@@@@@@@@@###@@####;;;;;,,::;` +`..`.` , .``  ,`.'.` `+@####@#@@#@@@@@@@@@#@@#@@#@##
''++####@@@@@@@#@@@@@@@@@@@###@#####,;,;`:.',:`.;. ...,,``..`..`,  ` ` +###@@@@@#@##@@@@@@@@@@@#@@##
''++####@@@@@@@#@@@@@@@@@#@#@@#####@.::.,.:`;.,',`,.` . ..`.,  `...    .##@@@@@@@@#####@#@@@#@@##@##
'+++####@@@@@@@@@@@@@##@@@@##@@####@,,;,. ;`:.,`:;,:.,..`,```,` .`@+,   #####@@@@#@####@#@#@#@@##@##
'+++####@@@@@@###@#@#@#@#@###@######;.,:`,..:.::`,;,,`:`` `. ,, ``##@: `,@@##@@@@@#@#@@@#@@@@##@@###
'+++###@@@@@@@#@###@#@#@###@#@#######'......`:,':`.`. `.  ``,,,,``:##@, `###@@@@@@#@#@@@@@@@@##@@###
'+++###@@@@@@@@@@@@@@@@@@#@@#@@@#####',,` ..` ;.,.;,,.,`  ``,:,:,:.####` :@@@@@@@@@@@@@@@@@@@##@#@##
'++#####@@@@@@@@@@@@@#@@@@@@@@@@#####` :.` ```.:+.,;,; ` `..`...`;`'#@#'` @@@@@@#@@#@@@@@@@@@@#@@###
'+++####@@@@@@@@@@@@@@#@@@@@@@@@@@##'     `;.:.` ;;.,,``.` . `` .,.'###@, `#@@@@@@@@@@@@#@@@#@@@@@##
'+++####@@@@@@@@@@@@@@@@@@@@@@@@###@`  :  +#';:;..`,`..+; ,``..`. ;#####@, `+++@@@@@@@@@#@#@@@##@###
'+++####@@@@@@@@@@@@@@@@@@@@@@@@#@@:  +, ,@#@@'.,:,:,;##+`,`,;..` #######@',`.+@@@@@@@@@#@#@@#######
'+++####@@@@@@@@@@@@@@#@##@@@@@@###` :#  #######++++#####: `.;..`.,@#####@@@@@@@@@@@@@@@#@#@@#######
'+++####@@@@@@@@@@@@@#####@#@###@#:`.@, :############@###:.:.', `: ;@###@@#@#@@@@@@@@@@@@@#@@#@#####
'+++###@@@@@@@@@@@@@@@@#@@##@####@  ##  #################;;',::  '' +###@@@@@@@@@@@@@@@###@@@@@@@@##
'+++###@@@@@@@@@@@@#@@@@@@@@@@@@#; ;@, ;##@#@############''.,:`  ;@,`###@@@@@@#@@@@@@@@@###@@@@@@@##
'+++###@@@@@@@@@@@@##@#@@@@@@@@@@. @+  ####@@@@##########;,:,,   ;##.###@@@@##@@@@@@@@@@@##@@@######
'++####@@@@@@@@@@@@@@#@@@@@@#@@#@ .@` ;#@####@@##########::;'..` ;@##@##@@@@@#@@@@@@@@@@###@@@######
'+++###@@@@@@@@@@@@@@@@@@@@@@#@## ,:`:+@#####@#@########+::;,.   ;############@@@@@@@@@@#@#@@#######
'+++###@@@@@@@@@@@@@@@#@@@@@@@##'``;;@;##@#@###@###@@###+:,.`, ` ;############@@@@@@@@@@#@@@@@##@##@
'+++###@@@@@@@@#@@@@@@#@@@#@@@#@;@.#@@:@@#@######@#@@###+,;`., .`,#############@#@@@@@@@##@@@@@####@
'+++###@@@@@@@#####@@@@####@@##@'@;##@:@#########@#@####;::::. ,. ;#################@@@@@@@@#@@#####
'+++##@@@@@@@@##@#@##@@@#@@#@#@@'@;@@#;##@#@#@@####@##@@;::..` .``..############@###@@@@@@@@@#@@@##@
'+++##@@@@@@#@@@@@@@#@@@@@@#@@@@'@'@##+#@#@##@@@@#@@@@#@;+,,`. `. ` .#####@@###@@##@@@@@@@@@@@@##@@#
'+++##@@@@@@@@@@@@@##@@@@@@#@@#@'@'#;'##@@##@@@@@@#@@@#@;:`,.,` ,,`.`.:@#@@#@##@@####@@#@@@@@@@#####
'++###@@@@@@@@@@@@@#@@@@@@@#@##@'';+';+#@@#@@#@@@@@@@@##+,.:,.;. ``..``,@@@@@@@@@####@@@@@@@@#@@###@
'+++##@@@@@@@@@@@@@@@@@@@@@@@##@;;;#+#;@@@###@@@@@@@@@@##;`',:,+:``.``...'+'#@#@@@##@@@@@@@@@#@@@###
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@'#@@@@@@@@@@@@@@@@@@'::,`,;##.... :::;#'@@@@@##@@@@@@@#@@@@@###
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@''''+@@@@@@@@@@@@@@@@@###:,;.:,###;:.. ,:'###@@@@@@@@@#@@@#@@@@@###
+++###@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#@@@@@@@@@@@@@@@@@@@@@##'.,`';###@#,:,';@@+@#@@@@#@@##@@@@@@@####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@###@@#@@#@@@@@@@@@@@@@@#@@#::','@###@@+,.'#@+@@@@@@@@@#@@@@@#@#####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@#@@@##@@@@@@@@@@@@@####,,.+#@#@#@#@::@@+#@@@@@@@#@#@@@@#@@####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@#@@#@@@@@@@@@@@@@@@##@+.:,'@@@@#@#@+@+#@@@@@@@@@#@@@@@@@@####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@##@;,'`@@@@@@@@+@+##@#@@@@@@#@@@@@@@@####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@@@@@@@@@@@@@@@@@@@@###@;:,+@@@@@@@+@'@@@@@@@@@@#@@@@@@@@####
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+:'.@@#@@#@'@'@#@@@@@@@@@@#@@@@@@@###
'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@##@',,'@@@@@@+@'@#@@@@@@@@@@#@@@@@@@###
+++###@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@###:'#+@@#@@#@'@@@@@@@@@@@@#@@@@@@@###
'++###@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@###@##@:+@'@@@@##@'@#@@@@@@@@@@#@@@@@@@#@#
'++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@##@@@##@+@@@@@@;+@@@@@@@@@@@@@@@@@@@@@@@
'++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@###@'@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@#
+++##@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@###@@@#@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@##@@@@+@@+@@@@@@@@@@@@@@@@@@@@@@@@#@@####
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@#@@#@@+@+###@@@@@@@@@@@@@@@@@@@@@@#@@####
++###@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@'@@@@@@@@@@@@@@@@@@@@@@@@@@@#@###
++###@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@'@'#@@@@@@@@@@@@@@@@@@@@@@@@@@#@###
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@#####
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@###
++###@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;#@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@###
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@#@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@###
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@##
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@###
++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@
++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
++##@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@
++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@
++##@@@@@@@@#@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
++##@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@
++##@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@
++##@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
++##@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@
++##@@@@@@@@#@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#
++##@@@@@@@@@@@@@@@#@@+@@@@@@@@@+#@@@@@@@@@@@@'@+#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
++##@@@@@@@@@@@@@@@@@@+@@@@@@@@@+@@@@@@@@@@@@@##+@@@@@@@@@@@++@@@@@@@@@@@@@@@@+#@+@##@@@@@@@@@@@@@@#
+###@@@@@@@@@@@@@@@@@@+@@@@@@@@@#@@#@@@@@@@@@@##@@@@@@@@@@@##@#@@@@@@@@@@@@@@@##@+@##@@@@@@@@@@@@@@@
+###@@@@@@@@@@@@@@@@@@+@@@@@@@@@#@@+@@@@@@@@@@+@@@@@@@@@@@@+@@#@@@@@@@@@@@@@@@#+#+#@@@@@@@@@@@@@@#@@
+##@@@@@@@@@@@@@@@@@@@+@@@@@@@@##@+@@@@@@@@@@@+@@@@@@@@@@@@#@@#@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@#@#
+##@@@@@@@@@@@@@@@@@@@+@#@@@@@###@#@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@#@#
+###@@@@@@@@@@@@@@@##+#@#@@@@@@#@+@@@@@@@@@@@##@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@##
+##@@@@@@@@@@@@@@@@@##@@#@@@@@@@'#@@@@@@@@@@@#@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@#@@@#
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@###
+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###
< | >