Diferență între revizuiri ale paginii „Programare Orientată Obiect (curs) - Seria C”

De la WikiLabs
Jump to navigationJump to search
Linia 2: Linia 2:
  
 
'''4c 61 20 6d 75 6c 74 69 20 61 6e 69 20 21'''
 
'''4c 61 20 6d 75 6c 74 69 20 61 6e 69 20 21'''
 +
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@+@#'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#+#@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#:+#@@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@;@+@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@#@@@@@@@@@+@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@+@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@'@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@,@@@@'@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@+@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@#@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@@@@@@@#@@@@@@@@#@@@@@@@@#@@@@@@+@@#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@'@@@'@@@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@+@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@'@@@@@+@@@;@@@@@@@@@#@@@@@@@@+@@@@@@@@#@@@@'#@@;@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@;@@@@@'@@@;@@@@@@@@@+@@@@@@@@+@@@@@@@@@@@@@#'@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@'#@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@'@@@+@@@@@@@@@#@@#@@@@@@@@@@@@@#@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@@@@@@@'+@@@@@@@@@@@@@#@@#@##@@'@@@@@@@@@#@@@@@@@@@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@'@@@@@@@@@@@@@@@@@#@@+@#+@#@@@@#':,,;:@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@#@@@@+@@@@@@@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@+##@@@@@@@@@@@;@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#@@@@@#@@@@@@@@@@@@@+@@@@@@@'@@'@@#@#@@@@@@@@@#@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:##@@@@@#@@@#@@@@@@@@@@@@@@@@@#@@#+@@@++@@@@@@@@'@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@#@@@#@@@@@@@@@@#@@@@@@@@@@+#@@#@@@@@@@@+@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@+@@@@@@#@@@+@@@#@@@@##@@@@@@#@@@#@#@#+@@@@@@@@#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@@@@#@@@'##@#@@@@#@#@@@@@@@@@:@@@,@#@@@@@@;@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@+@@@#@@#@@@###@#@@@@+@##@@@@@#@@##@'#@;@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'@@@@@@@@@@@@#;:;#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@#@@@#@@+@@@@+@@#@@@##@@+#@#@@@@'@#@+@@:@@@@@'@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#;,@@@#:'@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@@##@+#:@@#@#@:++@@+#;#+@@:@+#',`;@##@#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@#`+#@@@@@@:#@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@#@@@@@##'@#@@#@#@:@@@@@#@@@@@@#+,#@+;@@+@#@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@;#:@@@@@@@@@++@@@@@@@@@';@@@@@@@@@@@@@@@@@##@@@@@;#::'@@@@@@+@@@@@#@#@@;@#:#@#@@@#@+@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@#@@+@@@@@@@@@@#'@@@@@@@@;@@@@@@#@@@@@@@@@@@##@@@@@;@'+'@@+@@@#@@@@##@#@@'@,###@@@@:@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@##,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@#@@@@@@@@@@@@;@@@@@@@@#+@@@@'@@@@@@@@@@@##@@+@@+';+'@@+#@@#@@@##@@@@@@:@+:@@@@@#+@@@'@@@@@@@#@@@@@@@@@@@@@@@@##'`  ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@'@@@@@@@;+@@@@+@@@@@@@@@@@##@@+@@#+'@,@@@;@+#@@#@+@#@@;##@@#@@@@:@@@@#@@@@@@@#@@@@@@@@@@@@@@@@##``  `..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@+@@@@@@:@#@@@#@@@@@@@@@@@#@@@#@@#;;@@@@@:@'@@@+@#@#@@#;@#+@@@@@'+@@@#@@@@@@@#@@@@@@#@@@@@@@@#'` `.`.,`;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@##@@@@@#@;@@@@@@@@@@@@@@@#@@@#@@#+'@@:@@#@'@@@;##@@@#+#@#'@@@@#@@@@#@@@@@@@+@@@@@@#@@#@@@@@@'`  `..+;:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@+@'@@@@@@+'@+@@@@@@@@@@@@#@@@@@@@##:@@#@+@##@@#++@#@@:'@##@#`@@;#@@@@@@@@@@#@@@@@@@@@#@@@@@@'``````':;.:,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@@:@@@@@:@@'@@#@@@@@@@@@#@@@@@@#+#:@@@+#@@#@@#+;+#@@'@@'+@@#@@#@@@@@@@@@@#@@@#@@@@@#@@@@@@+ ```,.,,``.;;,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@+@@'@@@@'@'+@##@@@@@@@@@#@##@@@@:#;#@;'+@@#@@'#:###''#@;#@@@@'#@@@@@@@@@@@@@#@@@@@@@@@@@@#`````:.``...;.;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@##@@@@#+#@#@@@#@@@@@#+@##@@@@;#'#@:@##;###;+;#@@;#@@;@@+@@:@@@@@@@@@@#@@@#@@@@@@@@@@@@:.``.`:......,,,,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@'@@@@'@@@@@@@+@@@@@#+@#@@@#@;#'#@:@+#'@@@+'+#+@;#@++@@+@;#@@@@@@@@@#@@@#@@@@@@@@@@@@@``:`.......,,:;+,:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@;#@@;@@#@#@@@#@#@@@+@#@@@##;#+##;@##+@@@+:+#@:+#@'@@#'@#@#@@@@@@@#@@@@@@@@@@@@@@@@@@.`.....,..,,:;;':;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@##@@'@;@+@@@+@+@@@#@+@@@#@'++'@+@###@@'@:+#''#@@+@@;@:@@@@@@@@@@#@@@+@@@@@@@@@@@@@#,,.,..:.:,.;:;;+;:.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@+#@@+#:@;@@@@@;@@@#@#@@@#@'@+,@#@#@#@@+@'#++'#@+#@'+##@#@@@@@@@+@@@@@@@@@@@@@@@@@@+,,,:,,:,,,:;;;'':;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@'#@@#:@;@@@@@'@@@@@#@@@#@+:+'@@@@##@#++':@:#'@:@@@+'@@@@@@@@@##@@@@@+@@@@@@@@@@##`::,:,,::,,:';;'+;':'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@#@;+#+@@@@@@#'@@#@@@@@+@+;;'@@@@+@#'+:;'#'#'++@@@'##@#@@@@#@'@@@@@+@@@@@@@@@@#;``,:,::::::';;''+++:;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;,:'#@+@@@@@@@@@'@:@+;#'@@@@@@;@'#@@@@#@';;#@@#@'@#;';;#';'#;#@@##@@@@@@@@@@#@@@@#@@@@@@@@@##.```.,;::::;;;''+'+++';;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,:+@@@#;:;+@@@+#@@@@+#@,#''#+@@@@'@'#@@@@#@+;+#+@##'#@;##;+''#'+@@@'##@@@@@@@#'@@@@##@@@@@@@##'`````,,:::;:''';;++++##;#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::@@@@@@@#@+;;#@@'#@@@#@##@'+#'#@@@+'#@@#@@#@#;##'@##+@##++''+##+@##@#@@@@@@@@#+@@@+@+@@@@@###+. ```..`,,::;':;'';'+++###''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;+@@@@@@@@@#@@;+;@@#+#@@'@@+@:'@+@@#@#@#@#@'#@#:+##@+;+###';;;'#+'+@@;##@@##@@@@#@@#@'@@@@@##:`````.``..,:;;;;'#'+''++####'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.'#@@@@@@@@@@@@@@#';@@@+@@@@@##'#@;@@#++@@@'++#@#,#+##+++#'#'#++#++######@@#@@@@#+@@@@+@@@@##,  ``.`.```.,,;:;;'++'''''+####@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+##@@@@@@@@@@@@@@@@#:'#@@+@@;++:+'+#@@###@+@##++@#,#+##+##'+,++'+:;;#;@'+'#@##@##++@@#+@@@@#'``  ```````,,,:';';'''+'''+++####+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@';@@+@@@@@@@@@@@@@@@@@@@;##@#'@@#@###+#+@#@##+@@#++#',''##;+##+;'+''++#'+.;+@#@#@'#+@@@@##@@@#.```,.``,.``,,.::;';;;+'++'+++#####''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@@;@@@@@@@@@@@@@@@@@@@#@;###@#@+@#'#+#,@@@+'#@@@#'##,:++'':+##:''+##+#;'';+@###+@'##@##@@#@#` `.,` `.`.`..`::::;+'+#''++++#+#@@+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+@@@:@@@@@@@@@@@@@@@@@@#@@#@;##@@+@###+#+;.+@@'#@@@+###,;'+#.''++'+'+##'+#;#'#+,....'@@###@@@+` :..``.,,.,.`..;;::;'+#'''+'+++#####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@#@@@@@@@@@@@@@@@@@@@#''#@:#@@+;+#@'#.#;##@+#@#+####,;##`'+::;++';+:;+#,;,;'@+,+@#,;#+@@@#+`,` ```,`..:,..,:;::''';++''###+##@###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''@@@@@:@@@@@@@@@@@@@@@@@@@@@@@#+';+@@#''@';@';+;+,###;####:'+#''+#:;+:'+;#'##,;@#'#;@##@+#.@@@@@',```..```.,,,,,;;';;''+++'++##'+#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@;''@#';#''#:;;+'+###,##'+:''+'+++;;+;++':##,:+@@#:#'#@#@+@,#@@+#.`````.,...,'::;;;'''+'++'+++'##+####@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+;#@:,#+,,:;#'#+#;:##'#;';;++:'.;+,#;;#';++#@#:+'@@@#+#@#,@++'#`.``...,.,;::::;;+'++##++'+#+'+##+#@@@@@@@@@@@@@@@@@#''@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@##@+@#;:#,#:'+;#+#'++#'#:'':++'+,'''+''++':##@;'#@##+#@@@#@.;@##`....,,,::,::;:;''++++#+++++#+'+++#@@@@@@@@@@@@@@@#'#@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@;#@@##+##@''+'++'';@;':#++;::++:+;+;'+':#:'''':#@+#@+#@#'##@#@'#;###;`..,,:::::'':;'+++;+#+++'#+#+#++#@@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@'@+'+@@':'+#';+#:+'#':';;++'':#+;';,:';+;:.+#'#+@@'@#@@#@;@@+;+@#..,,.:::;:';;;++;++##+##.;+#+++#@@@@@@@@@@@@++#@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@#@@#;#'@@'''@+;#,#:;+,'+##;';;;+,#':';;'',:'#;:;;;':#+##@:@+@@;###:,+@#...,::;:;;:+;#;#++###+#'..'+#+'@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;##+'###+#+#+;''.:':'+#+:+'::+'':':,';+'''+;,+'#+'+;#'+#+;@'#+#+@#+###`.::,'';;''+'''+##+###@@#,.,#@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;,'##+#+#+';#:#,',+,+::'':,';#;;;:;',;+',';':+:##;+';'+#+#++#@@#:;#'.::,,;;;'';+''++###+#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#;.;#'+';#'''';;'';+,::+::':+'+':;':;;'+''::;++'::#,#+###+#@#++#####:::;';';'++'#+'####@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@##+;##++:#:;'#::;':,:::,;';+'+;;;,''.:+;+;#'#;''#+;#'+@'##:##@@'@#@.;;';;''+''+#++##'@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@#'+''##;+';+'':'+#:::':.;:+;;';:,'':';::';+,;;+::#''##+:+#+@@@+@@##';';:::,,,,:++#+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#+;#;;,+:+;:++,:+#;;;';:;:;,::,'::','';''',':;++#;:##;#'##@@@@@@#@+`;'+''''++###,:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'+#,',+++'+;;+;+::;';:;:;:.:,::;;';':':'','++''++#+:+#+'@@@@#+'#@+;#'''++'#+++##+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,++;+:'+;:+:,.+,,'';;:;:;,,,:,:;;;;';''+,#++'++#+:#++'@@@#'#+@@@@.''''+'+''###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###;++;+,;+,',,'+',;';:;;:'::::;:,:,';;,,''+':++#+:##+#@@'+@#@+@@@@:''+'''+'++#@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#++#@@@@;@##:'#';':#;;;;;::;.:;,:::;:,:::';,:+;::,:+;::,;,:##++@#;@+@#@@@#;;#,'';'+'+#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@#,'#@@#+;;@@;##@++';:':':;;:,.;:,,:;::::,::::';;+';::+;.,;++'##+'##;@+@#@@#'###+''''''''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@.#@@@@@@@#@#,#+'+@'++:;;+';,::'+'.,:;;.:,,:::;:,:;:;:+'.;.#'+##+;+@+#+++@#'@'#+@@#,'+;'+++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@@'@@#;+#'#+,'+;,':.;,;';,.::;,..,::,;:'':,;::.;;#;++.+;'''@+@'@'@@@+#@@@;'''+'++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@'':@@@++#;,;,;:;:':,,:::::,:.,.,.,:;;:,;::;+.,,,:#'+''#'#+#@:+@#@#@##'##+'.'+';#####'::#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@'@@@@;#,+;'';;;;;;::.:,:::,.,.,,,:;;::;:,;::,',#:+:'#'##+#@###@###''#+@#;'#@@@@@@@@@+,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@'#@@@@@@@@#::+##;:+@#:;:';';'::;:,;.,.,..:..`,:;:;::':,,,'.'+';++;''++#@##@@+'+###:.#@@#@+@@@@@@@@@@@@:#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@,'@@@@@@@;+@@@@@@@+'+;+';:;;:;'::::.:.,..,..,,,:;,,:;::;'.:':;;+;;#';@@+##'+@#';+#@@@@@@@@'@@#@@@@@@@@@##@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@:@@@@@#.@@@@@@@@@#+#+#+':,;;,,:',:,,.,......,,::.::,,;,.;+';';+:+,+##+++#'+:+'#@@@@@@@@@@#@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@#+';:'#@@@@@@@@@@@@@:@@@@@ @@@@@@@@+,++#+';#;;,.,::.,:,..`..`.....,,,.;;:;,;;;+#;+++''#+;'+++'##:@@@@@@@@@#@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@#+':'#@@@@@@##'#@@@@@@@@@+@@@@@`@@@@@@@;#@@@##+#'';:,.,,,,,,...``.....,,,:,,::,:';''',':#++'+;:;:+++#+@@#:;+@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@#;#@@@@@@@@@@@@@@#++@@@@@@@@@@@@.@@@@@@'#@@@@@#;'##:;:,...,,,....```...,,:.,,,,;';;:;;,,::;#:;:;#++@+:#@###+#+#@@@#@@;@#@@@@@@#########+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@##@@@@@@@@@:@@@@@@:@##@@@+;+##+,;...`....````````....,,..:;.:,;;;;;;;':::''##''#@'@#@@@#@@#+#;@#############@@@@##@###+''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##@@@@@@'@@@@@,@@@+'#@@@+#+:#:;,..``..````````......`:;:;::+:;;';;,,+#'::##';';;';'+##'+@@@+@@'#@@@@;#@@@@@@@@@@@@@@@@@@#+''#@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@+@@@@@@##@;,+''':..:``.``````````.,.`.:.:;;:,:;;:;:'+'+;;::+'###'+;###@#:;###@@@@+@+#@@@@@@@@@@@@@@@@@@@@@@@@@@#;'#@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@,@@@@@@@@@'##'.,,'.,.``````````````.`.,.;,,,...:;:;:;;:,;:#;;+''+:'##@@@@@@#,;+;;;,@@@@@@@@@@@@@@#'++++#######@@@@@#;;@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@'@@@@@@@@+#;#++;`;,,..``````  ```````,.,,,,::;.:.:;',:::'+';'#+########@@@@@@@+:@@@+@@@@###@@@@@@@@@@@@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@+##'':,``:`..````    `````.....::..,,,.,';:..:;;,'';'++'++##';;#@@@#+#''#+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@,'#+#:;'+``:``.````    ````````...,,,:::::.:.,:;,,++''#@####+#####+;:#@@@@,@+@#'@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@`.##..`,;.````..` `      ```.`...,,:,,,::.;,:,::,',+###':+###''+@@@@@#''@@#'+@@+:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#``;#````;,..:````        ````````..,,,:,,:;;'+';;';'''''#++;::''+###+'''++'#@+,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@+.`.'````::,.;.````        ``````....,,,::;:,;.`,:;;'+';;';##@#+;##+';;+#@##';#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#,@@@+,`.'.``.::',.,``.`          `````...,,:,,,:::::,:'++'+;##+'@@@@@#;+#####+,;+#;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##.#@@#:..,:...:;::;:.```          `````..,,,::,::,:+'';+';,'+;######@@@@#:######+++##;#######++++#'@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###`.##'@;,.,+...,;:;;;.```          ```..`..,.,:,:.,+'+;#'#+#+;+';++#@@@@@@:@@#'#@##@@@+#@@@@@@@@@@@+:#@@@@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+.` '.:#'+,,;,:''+;',.,.``          ``````.,,,,:,:;;;,;''''#'##+;#####++#####:;#@@@#@##@@#:####+++###@@#;@@@:#@@@@@@@@@@@@@@@@@@@:@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##,` ``..,'#:+:;####+;,;;;```          ``````..::,,:,;;'';;:;'''###,+++##@@@@#+:++@@@########@+;@@@@@@@@@+;;++:@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@###:`` `.,.,;;###@####+','';``.``      `````.``.,,:;':,::,,+####+#####@'####'''#@@@#'###+#@@@@@@#;+''#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.:` ```.,;;'##@####+#+;.',:..``        ````..,:,::,::,::,;:'++;;;+'#+''#@@#########@@#++@@@@#+#@@:@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@##',` ```.: ;;###@@######+',;,;..```  ```````..`.::,,::;,,:''':'+######';'@@@########@@#####+#@@@#@##;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@##':``    `::+,#+'#+######'++:.,::,````` ````````.,:,.,:,:,,:;::'#.++''+##+####@@@@@+#+#@@@@@@@@@+;#@@#@@'##+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@##;',      ```.,##+#@@@@@##'#::,`':,..`.``````..``.,.,:;,,,:;;:;+:;;:'++';'+##+##+#+'@@+@#++@@@@@@@@@'##+#@#'@@#++@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@##.`.`      ..`,+@@@@@@@@##''';;`';:.``.````````,.`..,::,:,.;::::;:;;;;'++#@+'++++'###+;##@@@+'#@@@#@@@'#@#++:#@@@@#'#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##.``        `` `:@#@@@@@@@#:+#+:.;;:,...```````....,,,;;':::,;,::;:,+:##,'++;@@#;++,+;'#@@@@@@@@'+@'@@@@@'#@@@;++#@@@@+'#@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##:+`    `` ```` `:;;@#@@@@@@#,'#;'+,;+';....``..``.`,.,:::.';+;,;;;;.;'::;'#+#'+#'#@@+@@@####@@@@@@@@#;@@@@@@@;@@@'+#+;#@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+``      ````.;'``''@@@@@@#:+#@##+:''';,....`..```..,,;:::.;';':;:';',;:',;,+##'#@#'@@@@@@@#+@@@@@@@#@@@@@@@@@++@@++@@#'+@@@@#;@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.,`    ```````.;;:';:@++#@@++###@###,;''';:,,.`.`.`..,,.,:,::;:;';';;:,:';::+,'++##'+@@;@@@@@@@@#+@@@#@@@@@@@@@@@@;#@++@@@@''@@@@@'#@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,`.`    ```````,;..:;,:;@@#@@#++@@###+++'':::,,...:,``,.:.,,::;:;:+'+';++;+:+;+;;:'+++#;#@;#@@@@@@@@#+#@@@@@@@@@@@@@@#+@#+@@@@@'+@@@@@'+@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###;:``  ` `.``.`,:'';:.;+:;+#@##@,'#@###;',++;::,:,:`...,`.,;,;;,;'::':#+#+;;;+#;;:+#;.'+###:##'@@@@@@@@@@@'@@@@@@@@@@@@@@:@#+@@@@@@:#@@@@@++@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###.`.`    `.`.. ;`'.+:.:.+,':##'##;'#@+##+;'#+;;,.,.:..,``..,.:,;:,,+;.;;+'#++;#;#,#::#++''+;#+++;@@@@@@@@@@@@'@@@@@@@@@@@@@;@'@@@@@@@#;@@@@@@.@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@###':;``  `` `.`.``..':'':';;;:';;++#'@++@++;';##'':;..:,,.,.;,,;..::,::'',::':;;#'';;##:#.#@#+'+++#,#+#@@@@@@@@@@@@++@@@@@@@@@@@+#:@@@@@@@@#@@@@@@++,#@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@###+,````  ` `,`.`.,:;':+++':;:'.`,;+:+@###'#++#@#+;,:.,:...,,`.,:,,:,:::;'+,':';+#'''#+,#'+;+#@@#'':#++'###@@@@@@@@@@@++@@@@@@@@@@#+:@@@@@@@@@@@@@@@@@,###@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@####,.``` ` `.``,``..,,;':#+'+,'.+:...,+@@@@+##:+#@#''::;::,:.,.:,,:.::,::;.,''';':#:+#;##:+:##,;+##@@'##@#;##@##@@@@@@@@@@@#+@@@@@@@@@#'#@@@@@@@@@@@@@@@@@:@@@##+#@@#
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@###;,```    .``:``:..,;:'##;','`'`,,,.:.#@@@:#@#''@###;:;:;;:,,:;,.,,':;,;;:;''':+;,':+#+##:+###;:#+##@#'#@@'+#@@#+@@@@@@@@@@@++@@@@@@@@@:@@@@@@@@@@@@@@@@@@:@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###'.`.,    ``.``,``'.,::'++';',',;.`..,:::;@@@'#;##@###'';:;:';.,.,,,::.;,::;+;:;+;;+';';':+@##'++#'#@+###@'##@#++@@@#+@@@@@@@@@@@'#@@@@@@@@:@@@@@@@@@@@@@@@@@@;@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+###,,``      .``:``+.,':;++;;;,;,,``.,....+'@@#@#++@#@++++;,;:':..::;,:,,,.;,,:;,#:#:+'++';'##@:####'##@#+@+#++@##'#+@@@#+@@@@@@@@@@@;@@@@@@@###@@@@@@@@@@@@@@@@@;@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#,````    ` `.`:`.'.;+;;++,';;':..``..:;:+::.@++;+@@@@++'+;:'''::,;,,;.;::;,'::+;;#;#,::'''',##+###@:##+@@'@@;#;@@@:@#+@@@@'@@@@#@#@@@#+@@@@@@'@@#@@@@@@@@@@@@@@@@+@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@@#####,.,,`    `. `,`,..'.'+'+'+,+'':,.,`.,.,':..,;+####'@@#@##'+'+++;',;,,:',,;,:'';;:+,+#;++++#+;+';`+@@##@@'+@@+@@#+,@@@:#@##@@@#'@@@@@@@#@@;@@@@@#@@@##@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@@@####.+```      .````.:`+.;+'';#'+,:.,```..`.;''':;'+'+'+@:##++;'+;'+#'';';:,:::;.:';',:++;'#;;'+;#+;';'#####+#@#'@@##@@+,##@;@#@+@@@@+#@@@@@#@#;#+@@@@+@@@@+@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@@@@###+..`;`        ```,``'`+.'':;;#'+:,.,..`.,;,::,::;':+#+#'@@@#'+#+':+'';+':;;;'':':,;;';:;+,++#,+'#:++,+,;@@;@###@@;#@@'@@@,@@@;@@##'@@@@'#@@@@@@#++;@@@@@@@@@@+@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@@####'.``.``        `.`.` ;.;:;+,,.+:',..:....`..:;;;#'+#'##++@@@@#@+'##'::+:+'',:::;:,::,;;;,;;+;#'+;+''+'':#;;#@####+@@##@@:@@@'#@#'@@@##+@@@@;@@@@@@@#'+#@@#@@@@@@@#@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@@@###'.'`` `      ` `.``` ;`';,',:.+::,.,````..::;'';'#+#+@@#+:@@@@#@++++;++;+'+':;.,:':'.,';.;;+;,+@',++#+;#::@';+@@+##@@@#+#@,@@@#;@@;@@@@#'##@@'+#@@@@@@#'+@#@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@@###'```:.        ```````.;`'+::,;.':,:.:.,`.,.,:.,++;@+##@@@#@#@#@@@@#+'+'+';+';;'+::'',:`;;+;;';+'+'#+#',;+#:#;@';,+@#+@@@@@'##@+@@@;@@;@#@@@++@#@''@@@@@@@@#:@@@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@@@@#::.````          .``````.,,:+;;,;';;.;.:..```.;+';++'##@#@@@+;#@@@######++;+;;;;;:';;;;::::';#;#;''',''#:#;:###+';#+#+'###@@@@@+####+@@+:,;@@@@@@;#@##:@@@@@@@@@:+@@@@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@@@#+'#,,```          ```.``...;:+;;:;;:'.'...``.,,,;::;++##@@@@@@@@+@@@@@#'##++:#;;,:+:;:;;#'';';#':'#::+;#+;##+''@#'#+'##'#+@@;@@@@@#+#;@@@@@@#:@@@@@@#'@@#'@@@@@@@@@;@##@@@@@@@@@@@@@@@@@@@@
 +
@@@@@@@@@##+,'+..`            `.`,`..,:';+;;;;;:'`'.:.`....,;;++'##@@@@@@@+;@#@@@@@#,##++:#;,::+::::;;;',:;+:#;+;+'#:+#;::+:+@:@##;+#:##@#,#@@@@@'@+#@@@@@@;#@@@@@@'#@@##@@@@@@@@;@@+@@@@@@@@@@@@@@@@@@@
 +
@@@#+#++;;:;.;:``          `` ,`,`.:,:';';;;;',+`',,,``.,;;;;,''##@@@@@@@@@+@@@@@#@+@'@#;'+':::#:+;+#';;::::#';'#:#:,;'#'#'+###@@;#;'@'##@@##@@@@@'@#'@@@@@#+;@@@#@#+#+@@##@@@@@@@'#@@+#@@@@@@@@@@@@@@@@
 +
#:#,'+##';';.`. `    `    ``.`. `'.'':;';';',+`;:..`.,...:++++#@+@@@@@@@+#@@@#@@+##@'@#''#+:':#:'''';#',+::+,#'#'++';:'@,######@@,+'+@@@#@@@+@@@@@;@@'@@@@@##+#@@@##@'#+@@@+@@@@@@.@@@@+#@@@@@@@@@@@@@@
 +
,.##+#';';...`. `    ```` ```,`..#`+:.+++#;'`+`,:`.``,,;::#+##@@@+@@@@@@@+:@@@@@@@+@+#@#';#+;+'#:''#',#';';:'#';##:+.'#++++#;@+:@@##+'+@#@:@@@;@@@@@'@@@@@@@@'@@@@@@@+@'@##@@@+@@@@@#@@@@@'#@@@@@@@@@@@@
 +
.:.:#';:...`.`` ` ` `````..`,`'`'.'':####+'.#`,;....,.;;.,++#@@@@#@@@@@@#@#@@@@+@@:@+@#+':#+;+++;#;'':,,,::.;#;#'#+@#:'#'#;+:@#+#@@:@+++@@@+#@@'@@#+@'@@@@@@@@,@@@@@@@@#+@@+@@@#+@@@.@@@@@@@'@@@@@@@@@@@
 +
`.#;:,..... `.  `  . . `````:`;:.;+####++:+.::``.`..:''+#+@@@@@@#@@@@@@++@@@@@@@@'@+@#;';'';##;'#':++++#;':+;'#;##;#:;+#';#'#@@##@@'@'+@@@@@#@@+@@@+@'@@@@@@@@+@@@@@@@@@#+@@+@@@#+@##@@@@@@@#+@@@@@@@@@
 +
..'` ...`.`. .    `````````.:,:,;#++++;',+,.....,:::::'+'@@@@@@@#@@@@@@@'@@@@@@@@#@'+'+;'#+;+':'#+:+#:#''';:.#';+#:.#;#+###+##@'@#@#@@'+@@@@@#@@##@;@@+#@@@@@@#@@@@@@@@@@@;@@##@@@##,@@@@@@@@@+#@@@@@@@
 +
.`.``.....```` `  ` ,`:```,.`.:+:'++':;,;:.,....`.;:;+#+#@@@@@@@@@@@@@'@+@@@@@@@@+@;@'#';##';++###;'#'#++;:;:#;+;++'#'+#+'#####:@@#@@@@++@@@@@#@@@+@#@@+@@@@@@@;@@@@@@@@@@@;#@@##@@@##@@@@@@@@@@'#@@@@@
 +
.::``....`. .  ``  `. ,``.'```'':;#+;:;,',..`...:;;'''+'##@@@@@@@@@@@@@#@#@@@@@@@@+#+#;#:'+',:+######,##@#'':++@#'####:;######'#+@#@#@@@#';@@@@@#@@@+,@@@@@@@@@@@;@@@@@@@@@@@'#@@@+@@@,+@@@@@@@@@@',#@@@
 +
.,``....`.`. `.  ``.`.:;,..;+;:''';::,;:.,...,,,..'#+#@@@@@@@@@@@@@@@+@@@@@@@@@@@+'@@;@';+;+'#@####'#''#'';,:'#;;'@:,';;++'#++;'#@#@#@@@'';@@@@@#@@@;@#@@@@@@@@@##@@@@@@@@@@@+#+@@##@#@#+@@@@@@@@@@+,+@
 +
.`,``......`,`  ```.```,`,,:+;++;';;:,;:.,,..,:'+:+'+#@@@@@@@@@@@@@@@@:@@@@@@@@@##+#'@+@+';##+#@##+;;#;;#'+';+:##++###++;@#;'#+#;;@@+@#@@@';;@@@@@#@@@@#@@@@@@@@@@:@@@@@@@@@@@@+###@@+@;@@#+@@@@@@@@@@#;
 +
...`...`,,,,,.```````..`:':+'';;;:;::::`:..,:..:;''+##@@@@@@@@@@@@@@@@@@@@@@@@@##@#+###@':;#+++###+;,#;+++#;,.:+#;;#@@'';#@@+'+++:@@@'@#@@@++.@@@@@+@@@'@@@@@@@@@@@:@@@@@@@@@@@@##@##@##@@@@+#@@@@@@@@@@
 +
..`...`.,,,,.,`.`.`,,,.'+:+';::;:;::;:.;,..::;;'##+#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#'@;##+;:#'''#+##';@+###;',;:+#+';@@@,:+@#@;@'';@@@@+@+@@####@@@@@+@@+@@@@@@@@@@@##@@@@@@@@@@@@##@@+@@'@@@@@'@@@@@@@@@
 +
...``.,,:,,:.;...`+;;';':+;'';;;'::::.,.,:,,:;;'''@@#@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@;:;+#+':#+';@'+##+@++##''.+:'+++#@@@+++#@##@@@':@@@@+#++@'';#@@@@@'@@@@@@@@@@@@@@,@@@@@@@@@@@@@#+@@#+###@@@@#+@@@@@@@
 +
..`.,:;:::;;:;:.:;;'#,;;+:'+#;:',:;:.,`.,,,'+#+++@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@#@##';##;:@+'@#@##;;'+#::,;'+;'#@@#:;@###,@@++'@@@@+#'@@;'@@#@@@@#+@@@@@@@@@@@@@;@@@@@@@@@@@@@#+@@@##@'@@@@++:;#@@#
 +
`,,;+'';:;;;+.'';.++;';''++'+;',;;;,,.,::;,,;'++@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@@@+###@@#';##'#@#'@+';#+;#+++;#++#+':#@#';;@@#@'##:`#@@@#'#'@@#;@@@@@@+@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@+@@@#'@##@;@@@@@+;@
 +
,;''#;;';;'+###+'''+#+'+'##;:',';;...:..,++++#:@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@+@@+@@#',+#+#+;;'+':@#'##;;:+.,+,...'#:;'##@:@#';###@@@@##'@##@@@#@@:@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@##@@@@##@:@@@@@@#@@
 +
:''#'+'+;:'@@@@@++`;##'###';',;;;::,,;;;,,;''+@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@##@@'@@#'#+###'';@#;,@++@@'+'',.'#+#+@@'##'#;##@++##@@@@@@@@'@;'@@@#@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@;@+@@@@@@@@
 +
+++###'#+@@@@@#@+++;######;',;;:.,,..,';;'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@;@##'#++#@@+;@;+'@;+####+''';#@:;@@@#;+;##+#@+#;@@@@@@@@@'@#'@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@##@@@@@#+##@@@@@@
 +
+@#####@@@@@@@@@#++';###++;.:;;,,,;;;::';:'+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@@;@##'++##@@#:@#++#;#'+@,:::;:'+;#@@@+:@#@+@+@@'@'+@@@@@@@@'+##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@'#;#@@@@
 +
+##@#@@@@@@@@@@+@+++###++;.:;,:,.`,;;:;#++'@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'#@@@;@##'####@@@:@@'+';@;#@++;,'#;'@##@@:#@@;###+@:#@@#@@@@@@@@#'+##+@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@'@@@@@@@#@+@@@@
 +
+@@@@@@@@@@@@@@#@#####++'.:':,..;;:;::;'##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@:@@+'#+++@@@;@@'#:;#;@@##+:##:;@:;+@'@+@#+@@'#:#@+@@@@@@@@@@##;@'###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@#@+#@@
 +
@@@@@@++@@@@@@@@@@#+#++',:;;,,.:,,:;'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#@+@##'#+@+@@@'@@+#,'@+@'@:';##+;#;+@@+#:#@'@##+'@#@+@@@@@@@@@#'@#+@@##@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@;@@@@@@@@@#'@
 +
@@@@#`'@#@@@@@@@#@###+',;',,,,:,:':,'+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@##+#@@#@@@+@@##:+@##+'':,'@@+#@##@@#+@@#'++#@@@+#@@@@@@@@@@#++@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@'
 +
@@@:#@@@@@@@@@@@@@@##',:;;;,.;,:;+';+#++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#++@@#@@@+@@#''#@@;#+##''##;+@';@@#@@#@'@#@+@@@''@@@@@@@@@@'@;@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@
 +
'';#@@@@#@@@@@@@@#@##+':,,,::,;;,.'''#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+#'+@@+@@@+@@#:+#@@'#'#;'+#+';#;'#@#@;@#+;##@+@@@+#@@@@@@@@@@:@#@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@
 +
++@@@@@@@+@@@@@@@@@@++;;,,,,,;+''+##+'@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@+#+###+@@+#@@@;#;@@+#+@;::'@#;#'#'@@@;@#@+#++:@@@@+@@@@@@@@@@##'@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#@@@@@@@
 +
#@@@@+#@.+@@@@@@@@#@+'+::,:;;,.,;,'##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@'#+#@#;@@'@@@@'#,#@@@@@'+'+#''+#':@@@@@@#@;##++@@@#'@@@@@@@@@@;#;@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@@@
 +
@#@@@@@;@@@@@@@@@@@@#;'',:;+';'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:#+##'++@#@@@@#@;#@@#@@###+##+#+#:@@@@#@@@@'@+#@@@@@#@@@@@@@@@@##@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
 +
@@@@@@;@@@@@@@@@@@@+@''';;..,;,:'@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'#+##@#@@@@#@@#@++@@'@#@:;++##'#':@@@@:@@+@#+:#'@#@@+@@@@@@@@@@;+;@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@
 +
@@@@@@@@@@+@@@@@@@@@@@''+'+''++##+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#++#@#@@@@#@@###;@@+@'@:',;##++;:#@@@'@@@@@#++#@@@@#+@@@@@@@@@@#+#@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@
 +
@@@@@@@@@##+@@#@@@@@'@+'+::,.####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#+#@@##@@@#@@#+@:@@@@@@'#+:@@:##+'@@@@@@@+@@@##;@@@##@@@@@@@@@@;#;@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@
 +
@@@@@@@@#@@@@@@@@@@@#@@+++;++###+@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@+#'#@@##@@@#@@#:@,@@@+@@#@#;;#,++;:@@@@+@@@#@@@'##@@#@'@@@@@@@@@@#@'##@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@
 +
@@@@@@@@@@@@+@@@@@@@@'@+++'+++@#@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@+++#@@##@@@#@@#,@:@@@;@#@#':++''+''@@@@:@@@+@@@@'+@@#@@@@@@@@@@@@'@+@@+'#@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@
 +
@@@@@@@@@@@#@@@@@@@@@@@@++#'#@##@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@+#++##@#@@@#@@@:';#@@+@+@#'#'++'@'@#@@@+@'@@#@@@@++@#@@;@@@@@@@@@@#@:@@@@#@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@
 +
@@@@@@@@@@@+@@@#@@@@@@#@###@##;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@+###@#@#@@@+@@@'+''@@@@#@@+@+##,@'#:@@@@@@@@+@@@@#+@#@@@@@@@#@@@@@;@@+@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@
 +
@@@@@@@@@@@#@@@@@@@@@@@#@#@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@####@#@#@@@'#@@#'+:@@@##@##@#@#''#;;@@@@#@+@@+@@@@#+#@@@'@@@@@@@@@@#@;+@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@
 +
@@@@@@@#@@+@@;#@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@+###@'@@@@@'#@@###:@@@;@@###@+@;'@;#@@@@;@@@@#@@@@#+#@@@@#@@@@@@@@@;@@#@@#@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@
 +
@#@@@@@@@@#@#:@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###+@@@@@@@;#@@###'#@@'@@#@'@'@''@,@'@@@'@@@@@'@@@@+'@@@@+@@@@@@@@@#@@:'@@#@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@
  
 
== Prerequisites ==
 
== Prerequisites ==

Versiunea de la data 28 decembrie 2016 22:43

ANUNTURI

4c 61 20 6d 75 6c 74 69 20 61 6e 69 20 21

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@+@#'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#+#@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#:+#@@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@;@+@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@#@@@@@@@@@+@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@+@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@'@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@,@@@@'@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@+@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@#@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@@@@@@@#@@@@@@@@#@@@@@@@@#@@@@@@+@@#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@'@@@'@@@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@+@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@'@@@@@+@@@;@@@@@@@@@#@@@@@@@@+@@@@@@@@#@@@@'#@@;@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@;@@@@@'@@@;@@@@@@@@@+@@@@@@@@+@@@@@@@@@@@@@#'@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@'#@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@'@@@+@@@@@@@@@#@@#@@@@@@@@@@@@@#@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@@@@@@@'+@@@@@@@@@@@@@#@@#@##@@'@@@@@@@@@#@@@@@@@@@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@'@@@@@@@@@@@@@@@@@#@@+@#+@#@@@@#':,,;:@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@#@@@@+@@@@@@@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@+##@@@@@@@@@@@;@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#@@@@@#@@@@@@@@@@@@@+@@@@@@@'@@'@@#@#@@@@@@@@@#@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:##@@@@@#@@@#@@@@@@@@@@@@@@@@@#@@#+@@@++@@@@@@@@'@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@#@@@#@@@@@@@@@@#@@@@@@@@@@+#@@#@@@@@@@@+@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@+@@@@@@#@@@+@@@#@@@@##@@@@@@#@@@#@#@#+@@@@@@@@#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@@@@#@@@'##@#@@@@#@#@@@@@@@@@:@@@,@#@@@@@@;@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@+@@@#@@#@@@###@#@@@@+@##@@@@@#@@##@'#@;@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'@@@@@@@@@@@@#;:;#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@#@@@#@@+@@@@+@@#@@@##@@+#@#@@@@'@#@+@@:@@@@@'@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#;,@@@#:'@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@@##@+#:@@#@#@:++@@+#;#+@@:@+#',`;@##@#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@#`+#@@@@@@:#@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@#@@@@@##'@#@@#@#@:@@@@@#@@@@@@#+,#@+;@@+@#@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@;#:@@@@@@@@@++@@@@@@@@@';@@@@@@@@@@@@@@@@@##@@@@@;#::'@@@@@@+@@@@@#@#@@;@#:#@#@@@#@+@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@#@@+@@@@@@@@@@#'@@@@@@@@;@@@@@@#@@@@@@@@@@@##@@@@@;@'+'@@+@@@#@@@@##@#@@'@,###@@@@:@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@##,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@#@@@@@@@@@@@@;@@@@@@@@#+@@@@'@@@@@@@@@@@##@@+@@+';+'@@+#@@#@@@##@@@@@@:@+:@@@@@#+@@@'@@@@@@@#@@@@@@@@@@@@@@@@##'` ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@'@@@@@@@;+@@@@+@@@@@@@@@@@##@@+@@#+'@,@@@;@+#@@#@+@#@@;##@@#@@@@:@@@@#@@@@@@@#@@@@@@@@@@@@@@@@##`` `..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@+@@@@@@:@#@@@#@@@@@@@@@@@#@@@#@@#;;@@@@@:@'@@@+@#@#@@#;@#+@@@@@'+@@@#@@@@@@@#@@@@@@#@@@@@@@@#'` `.`.,`;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@##@@@@@#@;@@@@@@@@@@@@@@@#@@@#@@#+'@@:@@#@'@@@;##@@@#+#@#'@@@@#@@@@#@@@@@@@+@@@@@@#@@#@@@@@@'` `..+;:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@+@'@@@@@@+'@+@@@@@@@@@@@@#@@@@@@@##:@@#@+@##@@#++@#@@:'@##@#`@@;#@@@@@@@@@@#@@@@@@@@@#@@@@@@'``````':;.:,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@@:@@@@@:@@'@@#@@@@@@@@@#@@@@@@#+#:@@@+#@@#@@#+;+#@@'@@'+@@#@@#@@@@@@@@@@#@@@#@@@@@#@@@@@@+ ```,.,,``.;;,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@+@@'@@@@'@'+@##@@@@@@@@@#@##@@@@:#;#@;'+@@#@@'#:####@;#@@@@'#@@@@@@@@@@@@@#@@@@@@@@@@@@#`````:.``...;.;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@##@@@@#+#@#@@@#@@@@@#+@##@@@@;#'#@:@##;###;+;#@@;#@@;@@+@@:@@@@@@@@@@#@@@#@@@@@@@@@@@@:.``.`:......,,,,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@'@@@@'@@@@@@@+@@@@@#+@#@@@#@;#'#@:@+#'@@@+'+#+@;#@++@@+@;#@@@@@@@@@#@@@#@@@@@@@@@@@@@``:`.......,,:;+,:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@;#@@;@@#@#@@@#@#@@@+@#@@@##;#+##;@##+@@@+:+#@:+#@'@@#'@#@#@@@@@@@#@@@@@@@@@@@@@@@@@@.`.....,..,,:;;':;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@##@@'@;@+@@@+@+@@@#@+@@@#@'++'@+@###@@'@:+##@@+@@;@:@@@@@@@@@@#@@@+@@@@@@@@@@@@@#,,.,..:.:,.;:;;+;:.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@+#@@+#:@;@@@@@;@@@#@#@@@#@'@+,@#@#@#@@+@'#++'#@+#@'+##@#@@@@@@@+@@@@@@@@@@@@@@@@@@+,,,:,,:,,,:;;;:;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@'#@@#:@;@@@@@'@@@@@#@@@#@+:+'@@@@##@#++':@:#'@:@@@+'@@@@@@@@@##@@@@@+@@@@@@@@@@##`::,:,,::,,:';;'+;':'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@#@;+#+@@@@@@#'@@#@@@@@+@+;;'@@@@+@#'+:;'#'#'++@@@'##@#@@@@#@'@@@@@+@@@@@@@@@@#;``,:,::::::';;+++:;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;,:'#@+@@@@@@@@@'@:@+;#'@@@@@@;@'#@@@@#@';;#@@#@'@#;';;#';'#;#@@##@@@@@@@@@@#@@@@#@@@@@@@@@##.```.,;::::;;;+'+++';;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,:+@@@#;:;+@@@+#@@@@+#@,##+@@@@'@'#@@@@#@+;+#+@##'#@;##;+#'+@@@'##@@@@@@@#'@@@@##@@@@@@@##'`````,,:::;:;;++++##;#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::@@@@@@@#@+;;#@@'#@@@#@##@'+#'#@@@+'#@@#@@#@#;##'@##+@##+++##+@##@#@@@@@@@@#+@@@+@+@@@@@###+. ```..`,,::;':;;'+++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;+@@@@@@@@@#@@;+;@@#+#@@'@@+@:'@+@@#@#@#@#@'#@#:+##@+;+###';;;'#+'+@@;##@@##@@@@#@@#@'@@@@@##:`````.``..,:;;;;'#'+++####'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.'#@@@@@@@@@@@@@@#';@@@+@@@@@##'#@;@@#++@@@'++#@#,#+##+++#'#'#++#++######@@#@@@@#+@@@@+@@@@##, ``.`.```.,,;:;;'+++####@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+##@@@@@@@@@@@@@@@@#:'#@@+@@;++:+'+#@@###@+@##++@#,#+##+##'+,++'+:;;#;@'+'#@##@##++@@#+@@@@#'`` ```````,,,:';';++++####+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@';@@+@@@@@@@@@@@@@@@@@@@;##@#'@@#@###+#+@#@##+@@#++#',##;+##+;'+++#'+.;+@#@#@'#+@@@@##@@@#.```,.``,.``,,.::;';;;+'++'+++#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@@;@@@@@@@@@@@@@@@@@@@#@;###@#@+@#'#+#,@@@+'#@@@#'##,:++:+##:+##+#;;+@###+@'##@##@@#@#` `.,` `.`.`..`::::;+'+#++++#+#@@+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+@@@:@@@@@@@@@@@@@@@@@@#@@#@;##@@+@###+#+;.+@@'#@@@+###,;'+#.++'+'+##'+#;#'#+,....'@@###@@@+` :..``.,,.,.`..;;::;'+#'+'+++#####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@#@@@@@@@@@@@@@@@@@@@##@:#@@+;+#@'#.#;##@+#@#+####,;##`'+::;++';+:;+#,;,;'@+,+@#,;#+@@@#+`,` ```,`..:,..,:;::;++###+##@###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@#+';+@@#@';@';+;+,###;####:'+#+#:;+:'+;#'##,;@#'#;@##@+#.@@@@@',```..```.,,,,,;;';;+++'++##'+#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#';##:;;+'+###,##'+:+'+++;;+;++':##,:+@@#:#'#@#@+@,#@@+#.`````.,...,'::;;;'+'++'+++'##+####@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+;#@:,#+,,:;#'#+#;:##'#;';;++:'.;+,#;;#';++#@#:+'@@@#+#@#,@++'#`.``...,.,;::::;;+'++##++'+#+'+##+#@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@##@+@#;:#,#:'+;#+#'++#'#::++'+,'+++':##@;'#@##+#@@@#@.;@##`....,,,::,::;:;++++#+++++#+'+++#@@@@@@@@@@@@@@@#'#@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@;#@@##+##@+'++;@;':#++;::++:+;+;'+':#:'':#@+#@+#@#'##@#@'#;###;`..,,::::::;'+++;+#+++'#+#+#++#@@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@'@+'+@@':'+#';+#:+'#':';;++:#+;';,:';+;:.+#'#+@@'@#@@#@;@@+;+@#..,,.:::;:';;;++;++##+##.;+#+++#@@@@@@@@@@@@++#@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@#@@#;#'@@'@+;#,#:;+,'+##;';;;+,#':';;,:'#;:;;;':#+##@:@+@@;###:,+@#...,::;:;;:+;#;#++###+#'..'+#+'@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;##+'###+#+#+;.:':'+#+:+'::+:':,';++;,+'#+'+;#'+#+;@'#+#+@#+###`.::,;;++##+###@@#,.,#@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;,'##+#+#+';#:#,',+,+:::,';#;;;:;',;+',';':+:##;+';'+#+#++#@@#:;#'.::,,;;;;+++###+#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#;.;#'+';#';;;+,::+::':+'+':;':;;'+::;++'::#,#+###+#@#++#####:::;';';'++'#+'####@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@##+;##++:#:;'#::;':,:::,;';+'+;;;,.:+;+;#'#;#+;#'+@'##:##@@'@#@.;;';;++#++##'@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@#'+##;+';+:'+#:::':.;:+;;';:,:';::';+,;;+::###+:+#+@@@+@@##';';:::,,,,:++#+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#+;#;;,+:+;:++,:+#;;;';:;:;,::,'::',;,':;++#;:##;#'##@@@@@@#@+`;'+'++###,:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'+#,',+++'+;;+;+::;';:;:;:.:,::;;';':':,'++++#+:+#+'@@@@#+'#@+;#++'#+++##+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,++;+:'+;:+:,.+,,;;:;:;,,,:,:;;;;';+,#++'++#+:#++'@@@#'#+@@@@.''+'+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###;++;+,;+,',,'+',;';:;;:'::::;:,:,';;,,+':++#+:##+#@@'+@#@+@@@@:++'++#@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#++#@@@@;@##:'#';':#;;;;;::;.:;,:::;:,:::';,:+;::,:+;::,;,:##++@#;@+@#@@@#;;#,;'+'+#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@#,'#@@#+;;@@;##@++';:':':;;:,.;:,,:;::::,::::';;+';::+;.,;++'##+'##;@+@#@@#'###+'''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@.#@@@@@@@#@#,#+'+@'++:;;+';,::'+'.,:;;.:,,:::;:,:;:;:+'.;.#'+##+;+@+#+++@#'@'#+@@#,'+;'+++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@@'@@#;+#'#+,'+;,':.;,;';,.::;,..,::,;::,;::.;;#;++.+;@+@'@'@@@+#@@@;+'++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@:@@@++#;,;,;:;:':,,:::::,:.,.,.,:;;:,;::;+.,,,:#'+#'#+#@:+@#@#@##'##+'.'+';#####'::#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@'@@@@;#,+;;;;;;;::.:,:::,.,.,,,:;;::;:,;::,',#:+:'#'##+#@###@####+@#;'#@@@@@@@@@+,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@'#@@@@@@@@#::+##;:+@#:;:';';'::;:,;.,.,..:..`,:;:;::':,,,'.'+';++;++#@##@@+'+###:.#@@#@+@@@@@@@@@@@@:#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@,'@@@@@@@;+@@@@@@@+'+;+';:;;:;'::::.:.,..,..,,,:;,,:;::;'.:':;;+;;#';@@+##'+@#';+#@@@@@@@@'@@#@@@@@@@@@##@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@:@@@@@#.@@@@@@@@@#+#+#+':,;;,,:',:,,.,......,,::.::,,;,.;+';';+:+,+##+++#'+:+'#@@@@@@@@@@#@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@#+';:'#@@@@@@@@@@@@@:@@@@@ @@@@@@@@+,++#+';#;;,.,::.,:,..`..`.....,,,.;;:;,;;;+#;+++#+;'+++'##:@@@@@@@@@#@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@#+':'#@@@@@@##'#@@@@@@@@@+@@@@@`@@@@@@@;#@@@##+#;:,.,,,,,,...``.....,,,:,,::,:';',':#++'+;:;:+++#+@@#:;+@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@#;#@@@@@@@@@@@@@@#++@@@@@@@@@@@@.@@@@@@'#@@@@@#;'##:;:,...,,,....```...,,:.,,,,;';;:;;,,::;#:;:;#++@+:#@###+#+#@@@#@@;@#@@@@@@#########+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@##@@@@@@@@@:@@@@@@:@##@@@+;+##+,;...`....````````....,,..:;.:,;;;;;;;':::###@'@#@@@#@@#+#;@#############@@@@##@###++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##@@@@@@'@@@@@,@@@+'#@@@+#+:#:;,..``..````````......`:;:;::+:;;';;,,+#'::##';';;';'+##'+@@@+@@'#@@@@;#@@@@@@@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@+@@@@@@##@;,+:..:``.``````````.,.`.:.:;;:,:;;:;:'+'+;;::+'###'+;###@#:;###@@@@+@+#@@@@@@@@@@@@@@@@@@@@@@@@@@#;'#@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@,@@@@@@@@@'##'.,,'.,.``````````````.`.,.;,,,...:;:;:;;:,;:#;;++:'##@@@@@@#,;+;;;,@@@@@@@@@@@@@@#'++++#######@@@@@#;;@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@'@@@@@@@@+#;#++;`;,,..`````` ```````,.,,,,::;.:.:;',:::'+';'#+########@@@@@@@+:@@@+@@@@###@@@@@@@@@@@@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@+##:,``:`..```` `````.....::..,,,.,';:..:;;,;'++'++##';;#@@@#+##+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@,'#+#:;'+``:``.```` ````````...,,,:::::.:.,:;,,++#@####+#####+;:#@@@@,@+@#'@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@`.##..`,;.````..` ` ```.`...,,:,,,::.;,:,::,',+###':+###+@@@@@#@@#'+@@+:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#``;#````;,..:```` ````````..,,,:,,:;;'+';;';#++;::+###+++'#@+,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@+.`.'````::,.;.```` ``````....,,,::;:,;.`,:;;'+';;';##@#+;##+';;+#@##';#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#,@@@+,`.'.``.::',.,``.` `````...,,:,,,:::::,:'++'+;##+'@@@@@#;+#####+,;+#;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##.#@@#:..,:...:;::;:.``` `````..,,,::,::,:+;+';,'+;######@@@@#:######+++##;#######++++#'@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###`.##'@;,.,+...,;:;;;.``` ```..`..,.,:,:.,+'+;#'#+#+;+';++#@@@@@@:@@#'#@##@@@+#@@@@@@@@@@@+:#@@@@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+.` '.:#'+,,;,:+;',.,.`` ``````.,,,,:,:;;;,;''#'##+;#####++#####:;#@@@#@##@@#:####+++###@@#;@@@:#@@@@@@@@@@@@@@@@@@@:@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##,` ``..,'#:+:;####+;,;;;``` ``````..::,,:,;;;;:;'###,+++##@@@@#+:++@@@########@+;@@@@@@@@@+;;++:@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@###:`` `.,.,;;###@####+',;``.`` `````.``.,,:;':,::,,+####+#####@'#####@@@#'###+#@@@@@@#;+#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.:` ```.,;;'##@####+#+;.',:..`` ````..,:,::,::,::,;:'++;;;+'#+#@@#########@@#++@@@@#+#@@:@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@##',` ```.: ;;###@@######+',;,;..``` ```````..`.::,,::;,,::'+######';'@@@########@@#####+#@@@#@##;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@##':`` `::+,#+'#+######'++:.,::,````` ````````.,:,.,:,:,,:;::'#.+++##+####@@@@@+#+#@@@@@@@@@+;#@@#@@'##+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@##;', ```.,##+#@@@@@##'#::,`':,..`.``````..``.,.,:;,,,:;;:;+:;;:'++';'+##+##+#+'@@+@#++@@@@@@@@@'##+#@#'@@#++@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@##.`.` ..`,+@@@@@@@@##;;`';:.``.````````,.`..,::,:,.;::::;:;;;;'++#@+'++++'###+;##@@@+'#@@@#@@@'#@#++:#@@@@#'#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##.`` `` `:@#@@@@@@@#:+#+:.;;:,...```````....,,,;;':::,;,::;:,+:##,'++;@@#;++,+;'#@@@@@@@@'+@'@@@@@'#@@@;++#@@@@+'#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##:+` `` ```` `:;;@#@@@@@@#,'#;'+,;+';....``..``.`,.,:::.';+;,;;;;.;'::;'#+#'+#'#@@+@@@####@@@@@@@@#;@@@@@@@;@@@'+#+;#@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+`` ````.;'``@@@@@@#:+#@##+:';,....`..```..,,;:::.;';':;:';',;:',;,+##'#@#'@@@@@@@#+@@@@@@@#@@@@@@@@@++@@++@@#'+@@@@#;@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.,` ```````.;;:';:@++#@@++###@###,;';:,,.`.`.`..,,.,:,::;:;';';;:,:';::+,'++##'+@@;@@@@@@@@#+@@@#@@@@@@@@@@@@;#@++@@@@@@@@@'#@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,`.` ```````,;..:;,:;@@#@@#++@@###+++:::,,...:,``,.:.,,::;:;:+'+';++;+:+;+;;:'+++#;#@;#@@@@@@@@#+#@@@@@@@@@@@@@@#+@#+@@@@@'+@@@@@'+@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###;:`` ` `.``.`,:;:.;+:;+#@##@,'#@###;',++;::,:,:`...,`.,;,;;,;'::':#+#+;;;+#;;:+#;.'+###:##'@@@@@@@@@@@'@@@@@@@@@@@@@@:@#+@@@@@@:#@@@@@++@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###.`.` `.`.. ;`'.+:.:.+,':##'##;'#@+##+;'#+;;,.,.:..,``..,.:,;:,,+;.;;+'#++;#;#,#::#+++;#+++;@@@@@@@@@@@@'@@@@@@@@@@@@@;@'@@@@@@@#;@@@@@@.@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@###':;`` `` `.`.``..'::';;;:';;++#'@++@++;';##:;..:,,.,.;,,;..::,::,::':;;#;;##:#.#@#+'+++#,#+#@@@@@@@@@@@@++@@@@@@@@@@@+#:@@@@@@@@#@@@@@@++,#@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@###+,```` ` `,`.`.,:;':+++':;:'.`,;+:+@###'#++#@#+;,:.,:...,,`.,:,,:,:::;'+,':';+#'#+,#'+;+#@@#:#++'###@@@@@@@@@@@++@@@@@@@@@@#+:@@@@@@@@@@@@@@@@@,###@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@####,.``` ` `.``,``..,,;':#+'+,'.+:...,+@@@@+##:+#@#::;::,:.,.:,,:.::,::;.,';':#:+#;##:+:##,;+##@@'##@#;##@##@@@@@@@@@@@#+@@@@@@@@@#'#@@@@@@@@@@@@@@@@@:@@@##+#@@# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@###;,``` .``:``:..,;:'##;','`'`,,,.:.#@@@:#@#@###;:;:;;:,,:;,.,,':;,;;:;':+;,':+#+##:+###;:#+##@#'#@@'+#@@#+@@@@@@@@@@@++@@@@@@@@@:@@@@@@@@@@@@@@@@@@:@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###'.`., ``.``,``'.,::'++';',',;.`..,:::;@@@'#;##@###;:;:';.,.,,,::.;,::;+;:;+;;+';';':+@##'++#'#@+###@'##@#++@@@#+@@@@@@@@@@@'#@@@@@@@@:@@@@@@@@@@@@@@@@@@;@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+###,,`` .``:``+.,':;++;;;,;,,``.,....+'@@#@#++@#@++++;,;:':..::;,:,,,.;,,:;,#:#:+'++';'##@:####'##@#+@+#++@##'#+@@@#+@@@@@@@@@@@;@@@@@@@###@@@@@@@@@@@@@@@@@;@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#,```` ` `.`:`.'.;+;;++,';;':..``..:;:+::.@++;+@@@@++'+;:::,;,,;.;::;,'::+;;#;#,::',##+###@:##+@@'@@;#;@@@:@#+@@@@'@@@@#@#@@@#+@@@@@@'@@#@@@@@@@@@@@@@@@@+@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@#####,.,,` `. `,`,..'.'+'+'+,+:,.,`.,.,':..,;+####'@@#@##'+'+++;',;,,:',,;,:;;:+,+#;++++#+;+';`+@@##@@'+@@+@@#+,@@@:#@##@@@#'@@@@@@@#@@;@@@@@#@@@##@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@####.+``` .````.:`+.;+;#'+,:.,```..`.;:;'+'+'+@:##++;'+;'+#;';:,:::;.:';',:++;'#;;'+;#+;';'#####+#@#'@@##@@+,##@;@#@+@@@@+#@@@@@#@#;#+@@@@+@@@@+@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@###+..`;` ```,``'`+.:;;#'+:,.,..`.,;,::,::;':+#+#'@@@#'+#+':+;+':;;;:':,;;';:;+,++#,+'#:++,+,;@@;@###@@;#@@'@@@,@@@;@@##'@@@@'#@@@@@@#++;@@@@@@@@@@+@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@####'.``.`` `.`.` ;.;:;+,,.+:',..:....`..:;;;#'+#'##++@@@@#@+'##'::+:+,:::;:,::,;;;,;;+;#'+;++:#;;#@####+@@##@@:@@@'#@#'@@@##+@@@@;@@@@@@@#'+#@@#@@@@@@@#@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@###'.'`` ` ` `.``` ;`';,',:.+::,.,````..::;;'#+#+@@#+:@@@@#@++++;++;+'+':;.,:':'.,';.;;+;,+@',++#+;#::@';+@@+##@@@#+#@,@@@#;@@;@@@@#'##@@'+#@@@@@@#'+@#@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@###'```:. ```````.;`'+::,;.':,:.:.,`.,.,:.,++;@+##@@@#@#@#@@@@#+'+'+';+';;'+::,:`;;+;;';+'+'#+#',;+#:#;@';,+@#+@@@@@'##@+@@@;@@;@#@@@++@#@@@@@@@@@#:@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@#::.```` .``````.,,:+;;,;';;.;.:..```.;+';++'##@#@@@+;#@@@######++;+;;;;;:';;;;::::';#;#;',#:#;:###+';#+#+'###@@@@@+####+@@+:,;@@@@@@;#@##:@@@@@@@@@:+@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@#+'#,,``` ```.``...;:+;;:;;:'.'...``.,,,;::;++##@@@@@@@@+@@@@@#'##++:#;;,:+:;:;;#;';#':'#::+;#+;##+@#'#+'##'#+@@;@@@@@#+#;@@@@@@#:@@@@@@#'@@#'@@@@@@@@@;@##@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@##+,'+..` `.`,`..,:';+;;;;;:'`'.:.`....,;;++'##@@@@@@@+;@#@@@@@#,##++:#;,::+::::;;;',:;+:#;+;+'#:+#;::+:+@:@##;+#:##@#,#@@@@@'@+#@@@@@@;#@@@@@@'#@@##@@@@@@@@;@@+@@@@@@@@@@@@@@@@@@@ @@@#+#++;;:;.;:`` `` ,`,`.:,:';';;;;',+`',,,``.,;;;;,##@@@@@@@@@+@@@@@#@+@'@#;'+':::#:+;+#';;::::#';'#:#:,;'#'#'+###@@;#;'@'##@@##@@@@@'@#'@@@@@#+;@@@#@#+#+@@##@@@@@@@'#@@+#@@@@@@@@@@@@@@@@

    1. ,'+##';';.`. ` ` ``.`. `'.:;';';',+`;:..`.,...:++++#@+@@@@@@@+#@@@#@@+##@'@##+:':#:';#',+::+,#'#'++';:'@,######@@,+'+@@@#@@@+@@@@@;@@'@@@@@##+#@@@##@'#+@@@+@@@@@@.@@@@+#@@@@@@@@@@@@@@

,.##+#';';...`. ` ```` ```,`..#`+:.+++#;'`+`,:`.``,,;::#+##@@@+@@@@@@@+:@@@@@@@+@+#@#';#+;+'#:#',#';';:'#';##:+.'#++++#;@+:@@##+'+@#@:@@@;@@@@@'@@@@@@@@'@@@@@@@+@'@##@@@+@@@@@#@@@@@'#@@@@@@@@@@@@ .:.:#';:...`.`` ` ` `````..`,`'`'.:####+'.#`,;....,.;;.,++#@@@@#@@@@@@#@#@@@@+@@:@+@#+':#+;+++;#;:,,,::.;#;#'#+@#:'#'#;+:@#+#@@:@+++@@@+#@@'@@#+@'@@@@@@@@,@@@@@@@@#+@@+@@@#+@@@.@@@@@@@'@@@@@@@@@@@ `.#;:,..... `. ` . . `````:`;:.;+####++:+.::``.`..:+#+@@@@@@#@@@@@@++@@@@@@@@'@+@#;';;##;'#':++++#;':+;'#;##;#:;+#';#'#@@##@@'@'+@@@@@#@@+@@@+@'@@@@@@@@+@@@@@@@@@#+@@+@@@#+@##@@@@@@@#+@@@@@@@@@ ..'` ...`.`. . `````````.:,:,;#++++;',+,.....,:::::'+'@@@@@@@#@@@@@@@'@@@@@@@@#@'+'+;'#+;+':'#+:+#:#;:.#';+#:.#;#+###+##@'@#@#@@'+@@@@@#@@##@;@@+#@@@@@@#@@@@@@@@@@@;@@##@@@##,@@@@@@@@@+#@@@@@@@ .`.``.....```` ` ` ,`:```,.`.:+:'++':;,;:.,....`.;:;+#+#@@@@@@@@@@@@@'@+@@@@@@@@+@;@'#';##';++###;'#'#++;:;:#;+;++'#'+#+'#####:@@#@@@@++@@@@@#@@@+@#@@+@@@@@@@;@@@@@@@@@@@;#@@##@@@##@@@@@@@@@@'#@@@@@ .::``....`. . `` `. ,``.'```:;#+;:;,',..`...:;;+'##@@@@@@@@@@@@@#@#@@@@@@@@+#+#;#:'+',:+######,##@#:++@#'####:;######'#+@#@#@@@#';@@@@@#@@@+,@@@@@@@@@@@;@@@@@@@@@@@'#@@@+@@@,+@@@@@@@@@@',#@@@

.,``....`.`. `.  ``.`.:;,..;+;:';::,;:.,...,,,..'#+#@@@@@@@@@@@@@@@+@@@@@@@@@@@+'@@;@';+;+'#@####'##;,:'#;;'@:,';;++'#++;'#@#@#@@@;@@@@@#@@@;@#@@@@@@@@@##@@@@@@@@@@@+#+@@##@#@#+@@@@@@@@@@+,+@

.`,``......`,` ```.```,`,,:+;++;';;:,;:.,,..,:'+:+'+#@@@@@@@@@@@@@@@@:@@@@@@@@@##+#'@+@+';##+#@##+;;#;;#'+';+:##++###++;@#;'#+#;;@@+@#@@@';;@@@@@#@@@@#@@@@@@@@@@:@@@@@@@@@@@@+###@@+@;@@#+@@@@@@@@@@#; ...`...`,,,,,.```````..`:':+;;;:;::::`:..,:..:;+##@@@@@@@@@@@@@@@@@@@@@@@@@##@#+###@':;#+++###+;,#;+++#;,.:+#;;#@@;#@@+'+++:@@@'@#@@@++.@@@@@+@@@'@@@@@@@@@@@:@@@@@@@@@@@@##@##@##@@@@+#@@@@@@@@@@ ..`...`.,,,,.,`.`.`,,,.'+:+';::;:;::;:.;,..::;;'##+#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#'@;##+;:#'#+##';@+###;',;:+#+';@@@,:+@#@;@;@@@@+@+@@####@@@@@+@@+@@@@@@@@@@@##@@@@@@@@@@@@##@@+@@'@@@@@'@@@@@@@@@ ...``.,,:,,:.;...`+;;';':+;;;;'::::.,.,:,,:;;'@@#@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@;:;+#+':#+';@'+##+@++##.+:'+++#@@@+++#@##@@@':@@@@+#++@;#@@@@@'@@@@@@@@@@@@@@,@@@@@@@@@@@@@#+@@#+###@@@@#+@@@@@@@ ..`.,:;:::;;:;:.:;;'#,;;+:'+#;:',:;:.,`.,,,'+#+++@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@#@##';##;:@+'@#@##;;'+#::,;'+;'#@@#:;@###,@@++'@@@@+#'@@;'@@#@@@@#+@@@@@@@@@@@@@;@@@@@@@@@@@@@#+@@@##@'@@@@++:;#@@# `,,;+;:;;;+.;.++;';++'+;',;;;,,.,::;,,;'++@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@@@+###@@#';##'#@#'@+';#+;#+++;#++#+':#@#';;@@#@'##:`#@@@#'#'@@#;@@@@@@+@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@+@@@#'@##@;@@@@@+;@ ,;#;;';;'+###+'+#+'+'##;:',';;...:..,++++#:@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@+@@+@@#',+#+#+;;'+':@#'##;;:+.,+,...'#:;'##@:@#';###@@@@##'@##@@@#@@:@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@##@@@@##@:@@@@@@#@@

#'+'+;:'@@@@@++`;##'###';',;;;::,,;;;,,;+@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@##@@'@@#'#+###;@#;,@++@@'+,.'#+#+@@'##'#;##@++##@@@@@@@@'@;'@@@#@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@;@+@@@@@@@@

+++###'#+@@@@@#@+++;######;',;;:.,,..,';;'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@;@##'#++#@@+;@;+'@;+####+;#@:;@@@#;+;##+#@+#;@@@@@@@@@'@#'@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@##@@@@@#+##@@@@@@ +@#####@@@@@@@@@#++';###++;.:;;,,,;;;::';:'+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@@;@##'++##@@#:@#++#;#'+@,:::;:'+;#@@@+:@#@+@+@@'@'+@@@@@@@@'+##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@'#;#@@@@ +##@#@@@@@@@@@@+@+++###++;.:;,:,.`,;;:;#++'@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'#@@@;@##'####@@@:@@'+';@;#@++;,'#;'@##@@:#@@;###+@:#@@#@@@@@@@@#'+##+@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@'@@@@@@@#@+@@@@ +@@@@@@@@@@@@@@#@#####++'.:':,..;;:;::;'##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@:@@+'#+++@@@;@@'#:;#;@@##+:##:;@:;+@'@+@#+@@'#:#@+@@@@@@@@@@##;@'###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@#@+#@@ @@@@@@++@@@@@@@@@@#+#++',:;;,,.:,,:;'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#@+@##'#+@+@@@'@@+#,'@+@'@:';##+;#;+@@+#:#@'@##+'@#@+@@@@@@@@@#'@#+@@##@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@;@@@@@@@@@#'@ @@@@#`'@#@@@@@@@#@###+',;',,,,:,:':,'+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@##+#@@#@@@+@@##:+@##+:,'@@+#@##@@#+@@#'++#@@@+#@@@@@@@@@@#++@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@' @@@:#@@@@@@@@@@@@@@##',:;;;,.;,:;+';+#++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#++@@#@@@+@@##@@;#+####;+@';@@#@@#@'@#@+@@@@@@@@@@@@@'@;@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@ ;#@@@@#@@@@@@@@#@##+':,,,::,;;,.'#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+#'+@@+@@@+@@#:+#@@'#'#;'+#+';#;'#@#@;@#+;##@+@@@+#@@@@@@@@@@:@#@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@ ++@@@@@@@+@@@@@@@@@@++;;,,,,,;++##+'@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@+#+###+@@+#@@@;#;@@+#+@;::'@#;#'#'@@@;@#@+#++:@@@@+@@@@@@@@@@##'@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#@@@@@@@

  1. @@@@+#@.+@@@@@@@@#@+'+::,:;;,.,;,'##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@'#+#@#;@@'@@@@'#,#@@@@@'+'+#+#':@@@@@@#@;##++@@@#'@@@@@@@@@@;#;@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@@@

@#@@@@@;@@@@@@@@@@@@#;,:;+';'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:#+##'++@#@@@@#@;#@@#@@###+##+#+#:@@@@#@@@@'@+#@@@@@#@@@@@@@@@@##@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@;@@@@@@@@@@@@+@;;..,;,:'@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'#+##@#@@@@#@@#@++@@'@#@:;++##'#':@@@@:@@+@#+:#'@#@@+@@@@@@@@@@;+;@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@+@@@@@@@@@@@+'+++##+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#++#@#@@@@#@@###;@@+@'@:',;##++;:#@@@'@@@@@#++#@@@@#+@@@@@@@@@@#+#@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@ @@@@@@@@@##+@@#@@@@@'@+'+::,.####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#+#@@##@@@#@@#+@:@@@@@@'#+:@@:##+'@@@@@@@+@@@##;@@@##@@@@@@@@@@;#;@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@ @@@@@@@@#@@@@@@@@@@@#@@+++;++###+@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@+#'#@@##@@@#@@#:@,@@@+@@#@#;;#,++;:@@@@+@@@#@@@'##@@#@'@@@@@@@@@@#@'##@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@ @@@@@@@@@@@@+@@@@@@@@'@+++'+++@#@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@+++#@@##@@@#@@#,@:@@@;@#@#':+++@@@@:@@@+@@@@'+@@#@@@@@@@@@@@@'@+@@+'#@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@ @@@@@@@@@@@#@@@@@@@@@@@@++#'#@##@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@+#++##@#@@@#@@@:';#@@+@+@#'#'++'@'@#@@@+@'@@#@@@@++@#@@;@@@@@@@@@@#@:@@@@#@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@ @@@@@@@@@@@+@@@#@@@@@@#@###@##;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@+###@#@#@@@+@@@'+@@@@#@@+@+##,@'#:@@@@@@@@+@@@@#+@#@@@@@@@#@@@@@;@@+@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@ @@@@@@@@@@@#@@@@@@@@@@@#@#@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@####@#@#@@@'#@@#'+:@@@##@##@#@##;;@@@@#@+@@+@@@@#+#@@@'@@@@@@@@@@#@;+@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@ @@@@@@@#@@+@@;#@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@+###@'@@@@@'#@@###:@@@;@@###@+@;'@;#@@@@;@@@@#@@@@#+#@@@@#@@@@@@@@@;@@#@@#@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@ @#@@@@@@@@#@#:@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###+@@@@@@@;#@@###'#@@'@@#@'@'@@,@'@@@'@@@@@'@@@@+'@@@@+@@@@@@@@@#@@:'@@#@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@

Prerequisites

Cunoasterea unui limbaj de programare (cu citire/scriere la consola) si a unor algoritmi de baza.

Concepte: tip de date, variabile, asignare, operatii aritmetice, operatii logice, structuri repetitive, consola, biblioteci

Materii care asigura aceste cunostinte: PC - Programarea Calculatoarelor SDA - Structuri de Date si Algoritmi


Rezultate test incipient, din total studenti prezenti (~ 70% din cei inscrisi in seria C):

3% ar fi luat nota 10: si-au organizat codul, datele, stiu sa citeasca dintr-un fisier si au scris un algoritm care ar merge

15% au propus un algoritm care ar merge

15% stiu sa citeasca din fisiere

35% stiu: ori sa citeasca din fisiere, ori sa isi organizeze datele ori sa scrie algoritmul corect. Daca se tin de treaba, acesti studenti pot trece un examen de programare fara eforturi intense, doar cu seriozitatea de care ar trebui sa se bucure orice materie din facultate

25% au fost foarte slabi: nu pot scrie nici macar 2 linii de cod. Acesti studenti nu vor trece un exemen de programare, fara a lua masuri radicale

65% nu au facut niciuna din cele 3: nici organizare de date, nici algoritm corect, nici nu stiu sa citeasca din fisiere. Acesti studenti nu au sanse reale sa treaca un examen de programare, fara a se stradui intens.

Repartizarea punctelor

Punctajul maxim este de 100 de puncte, corespunzător notei 10. Acest punctaj este repartizat în felul următor:

Laborator 50p: 25p colocviu + 5 x 5p lucrari de laborator

Curs 50p: 30p grila finala (saptamana 14, vineri orele 17-21, A414) si 20p (lucrari sau teme de casa 10 x 2p sau 5 x 4p)

BONUS maxim 10 puncte pentru activitate excepțională în timpul semestrului. Punctajul bonus este exclusiv la latitudinea titularului de curs.

Frauda la teme / laborator / punctaj pe parcurs => se aduna opusul notei. Frauda la coloviu / test final curs => raport la decan cu recomandarea de exmatriculare.

Note: https://drive.google.com/open?id=1F_h8d1gADG79twoNwWs5iaCwNkG43JcEvtcD8sHw5jc

Studentii: Mitrana Gabriela, Toader Andrei-Calin, Totu Tiberiu, Buga Roxana, Tabac Adreina, Ristea Nicolae-Catalin s-au voluntarizat pentru corectarea lucrarilor de curs si/sau consiliere pentru ceilalti colegi.

Li se acorda: 1 punct bonus per sarbatoare de curs (a seriei), si 0.5 puncte bonus pentru 1 saptamana de consiliere (daca rezultatul se vede in notele studentului/studentilor consiliati)

Condiții de promovare

Condițiile minime de promovare sunt:

  • cel mult o absență în laborator;
  • minim 25 de puncte din punctajul de laborator;
  • minim 50 puncte în total.

Programa cursului

Curs1. Introducere: computer, CPU, I/O, limbaje de programare, Java, JVM, compilare Java, HelloWorld, output, tipuri de date (boolean, int, double, String), variabile, atribuire, operatori =, +, - , * , /, ordinea operatiilor, concatenare de String, bucle, if, while, for, initializare array, String array, clase, obiecte, campuri, metode

Curs2. Clase, obiecte, campuri, metode, constructor, constructor implicit, instante, access la campuri, acces la metode, referinta vs valoare, primitive, obiecte, == , equals, metoda statica, camp static, control acces: public, private, domeniu de definitie, this, pachete, package, import, java.lang.String, java.lang.System, exceptii, throw, throws, mostenire

Curs3. Recapitulare: mostenire / derivare, extends, @Override, javadoc, static, final, exceptii, throw, throws, try, catch, finally

Curs4. Java I/O, flux de date, clasa abstracta, interfata, property file, equals

Curs5. Recapitulare: citire din fisiere. Exemplu: afisati cele mai mari 3 medii (si studentii carora le apartin) din fisierul cu formatul de linie: Nume Prenume Nota1 Nota2.

https://drive.google.com/open?id=0B5TtS-S1KZFGTEZHMjRQUTJHOGs

Curs6. Socket, System.in, serializare: serialVersionUID, ObjectOutputStream, ObjectInputStream, readObject, writeObject, java.lang.ClassNotFoundException

Cod demo: https://drive.google.com/open?id=0B5TtS-S1KZFGQ2dNUWs3dE95VWc

https://en.wikipedia.org/wiki/OSI_model, https://docs.oracle.com/javase/tutorial/networking/sockets/ , https://docs.oracle.com/javase/tutorial/networking/urls/index.html, http://wiki.dcae.pub.ro/index.php/Serializarea_obiectelor

Curs7. Procese si Thread-uri; start, run, join, interrupt, synchronized, mutex, barrier, semaphore, thread pool, starvation, deadlock

http://docs.oracle.com/javase/tutorial/essential/concurrency/

Cod: https://drive.google.com/open?id=0B5TtS-S1KZFGTjFJQ1RTZ010czA


Curs8 ArrayList.... https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html

Curs9 -

Curs1O. GUI: Java AWT, Java Swing, Layout, Component, Container, Frame/JFrame, Button/JButton, Label, LookAndFeelInfo, ActionListener

request-by-student: redir System.out to JTextArea, inner class

Cod: https://drive.google.com/open?id=0B5TtS-S1KZFGbmxuVkNZUU9LUVU

Curs11. Aplicatii. java.awt.Graphics -setColor, drawLine, drawRect, drawChars, drawArc. Generics, java.util.HashMap, java.util.ArrayList, Properties, property files, Comparable interface.

https://drive.google.com/open?id=0B5TtS-S1KZFGd1pDZW5hVVVURGc

Curs12. Aplicatii.

Pentru primele cursuri, suportul de curs a fost MIT 6.092 (https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-092-introduction-to-programming-in-java-january-iap-2010/lecture-notes/)

Suplimentar vedeti specificatia de limbaj java de la Oracle:

https://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html

http://docs.oracle.com/javase/tutorial/essential/exceptions/index.html

http://docs.oracle.com/javase/tutorial/essential/io/index.html

 Limbajul Java este unul singur, pe orice OS, orice arhitectura, si in orice curs. 
Important este sa stiti ce inseamna si cum sa folositi conceptele enumerate mai sus

Resurse Externe

Pentru incepatorii care nu stiu programare DELOC: puteti incepe cu: https://www.udemy.com/java-tutorial/

Pentru cursuri interactive vedeti site-urile dedicate (eg. Edx, Coursera, Udacity)

Altele

https://www.ericsson.com/res/docs/2015/consumerlab/ericsson-consumerlab-communication-in-the-world-of-apps.pdf

http://www.tiobe.com/tiobe-index/

https://docs.nvidia.com/cuda/cuda-c-programming-guide/

http://www.nvidia.com/object/gpu-applications-domain.html