Programare Orientată Obiect (curs) - Seria C: Diferență între versiuni
Cbira (discuție | contribuții) |
Cbira (discuție | contribuții) |
||
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
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@+@#'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#+#@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#:+#@@@@@@@@+@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@@@@@;@+@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@#@@@@@@@@@+@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@+@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@'@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@#@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@,@@@@'@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@'@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@+@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@#@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@#@@@#@@@@@@@@@#@@@@@@@@#@@@@@@@@#@@@@@@+@@#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@'@@@'@@@@@@@@@@@@@@@@@@+@@@@@@@@+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@+@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@'@@@@@+@@@;@@@@@@@@@#@@@@@@@@+@@@@@@@@#@@@@'#@@;@@@@@@@@@@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@;@@@@@'@@@;@@@@@@@@@+@@@@@@@@+@@@@@@@@@@@@@#'@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@'#@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@'@@@+@@@@@@@@@#@@#@@@@@@@@@@@@@#@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@@@@@@@'+@@@@@@@@@@@@@#@@#@##@@'@@@@@@@@@#@@@@@@@@@@@@@@@@#@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@'@@@@@@@@@@@@@@@@@#@@+@#+@#@@@@#':,,;:@@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@@@@@@@#@@@@@@@@@@@#@@@@+@@@@@@@@@@+@@@@@@@@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@#@+##@@@@@@@@@@@;@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#@@@@@#@@@@@@@@@@@@@+@@@@@@@'@@'@@#@#@@@@@@@@@#@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:##@@@@@#@@@#@@@@@@@@@@@@@@@@@#@@#+@@@++@@@@@@@@'@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@#@@@#@@@@@@@@@@#@@@@@@@@@@+#@@#@@@@@@@@+@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@+@@@@@@#@@@+@@@#@@@@##@@@@@@#@@@#@#@#+@@@@@@@@#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@@@@#@@@'##@#@@@@#@#@@@@@@@@@:@@@,@#@@@@@@;@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@+@@@#@@#@@@###@#@@@@+@##@@@@@#@@##@'#@;@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#'@@@@@@@@@@@@#;:;#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@#@@@#@@+@@@@+@@#@@@##@@+#@#@@@@'@#@+@@:@@@@@'@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@#;,@@@#:'@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@#@@@@@@##@+#:@@#@#@:++@@+#;#+@@:@+#',`;@##@#@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@#`+#@@@@@@:#@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@#@@@@@##'@#@@#@#@:@@@@@#@@@@@@#+,#@+;@@+@#@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@;#:@@@@@@@@@++@@@@@@@@@';@@@@@@@@@@@@@@@@@##@@@@@;#::'@@@@@@+@@@@@#@#@@;@#:#@#@@@#@+@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@#@@+@@@@@@@@@@#'@@@@@@@@;@@@@@@#@@@@@@@@@@@##@@@@@;@'+'@@+@@@#@@@@##@#@@'@,###@@@@:@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@#@##,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@#@@@@@@@@@@@@;@@@@@@@@#+@@@@'@@@@@@@@@@@##@@+@@+';+'@@+#@@#@@@##@@@@@@:@+:@@@@@#+@@@'@@@@@@@#@@@@@@@@@@@@@@@@##'` ,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@'@@@@@@@;+@@@@+@@@@@@@@@@@##@@+@@#+'@,@@@;@+#@@#@+@#@@;##@@#@@@@:@@@@#@@@@@@@#@@@@@@@@@@@@@@@@##`` `..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@#@@@+@@@@@@:@#@@@#@@@@@@@@@@@#@@@#@@#;;@@@@@:@'@@@+@#@#@@#;@#+@@@@@'+@@@#@@@@@@@#@@@@@@#@@@@@@@@#'` `.`.,`;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@##@@@@@#@;@@@@@@@@@@@@@@@#@@@#@@#+'@@:@@#@'@@@;##@@@#+#@#'@@@@#@@@@#@@@@@@@+@@@@@@#@@#@@@@@@'` `..+;:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@+@'@@@@@@+'@+@@@@@@@@@@@@#@@@@@@@##:@@#@+@##@@#++@#@@:'@##@#`@@;#@@@@@@@@@@#@@@@@@@@@#@@@@@@'``````':;.:,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@@:@@@@@:@@'@@#@@@@@@@@@#@@@@@@#+#:@@@+#@@#@@#+;+#@@'@@'+@@#@@#@@@@@@@@@@#@@@#@@@@@#@@@@@@+ ```,.,,``.;;,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@+@@'@@@@'@'+@##@@@@@@@@@#@##@@@@:#;#@;'+@@#@@'#:####@;#@@@@'#@@@@@@@@@@@@@#@@@@@@@@@@@@#`````:.``...;.;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@#@##@@@@#+#@#@@@#@@@@@#+@##@@@@;#'#@:@##;###;+;#@@;#@@;@@+@@:@@@@@@@@@@#@@@#@@@@@@@@@@@@:.``.`:......,,,,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@'@@@@'@@@@@@@+@@@@@#+@#@@@#@;#'#@:@+#'@@@+'+#+@;#@++@@+@;#@@@@@@@@@#@@@#@@@@@@@@@@@@@``:`.......,,:;+,:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@;#@@;@@#@#@@@#@#@@@+@#@@@##;#+##;@##+@@@+:+#@:+#@'@@#'@#@#@@@@@@@#@@@@@@@@@@@@@@@@@@.`.....,..,,:;;':;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@#@@##@@'@;@+@@@+@+@@@#@+@@@#@'++'@+@###@@'@:+##@@+@@;@:@@@@@@@@@@#@@@+@@@@@@@@@@@@@#,,.,..:.:,.;:;;+;:.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@+#@@+#:@;@@@@@;@@@#@#@@@#@'@+,@#@#@#@@+@'#++'#@+#@'+##@#@@@@@@@+@@@@@@@@@@@@@@@@@@+,,,:,,:,,,:;;;:;:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@#@@'#@@#:@;@@@@@'@@@@@#@@@#@+:+'@@@@##@#++':@:#'@:@@@+'@@@@@@@@@##@@@@@+@@@@@@@@@@##`::,:,,::,,:';;'+;':'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@@@@@@@@#@;+#+@@@@@@#'@@#@@@@@+@+;;'@@@@+@#'+:;'#'#'++@@@'##@#@@@@#@'@@@@@+@@@@@@@@@@#;``,:,::::::';;+++:;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;,:'#@+@@@@@@@@@'@:@+;#'@@@@@@;@'#@@@@#@';;#@@#@'@#;';;#';'#;#@@##@@@@@@@@@@#@@@@#@@@@@@@@@##.```.,;::::;;;+'+++';;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,:+@@@#;:;+@@@+#@@@@+#@,##+@@@@'@'#@@@@#@+;+#+@##'#@;##;+#'+@@@'##@@@@@@@#'@@@@##@@@@@@@##'`````,,:::;:;;++++##;#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::@@@@@@@#@+;;#@@'#@@@#@##@'+#'#@@@+'#@@#@@#@#;##'@##+@##+++##+@##@#@@@@@@@@#+@@@+@+@@@@@###+. ```..`,,::;':;;'+++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;+@@@@@@@@@#@@;+;@@#+#@@'@@+@:'@+@@#@#@#@#@'#@#:+##@+;+###';;;'#+'+@@;##@@##@@@@#@@#@'@@@@@##:`````.``..,:;;;;'#'+++####'+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.'#@@@@@@@@@@@@@@#';@@@+@@@@@##'#@;@@#++@@@'++#@#,#+##+++#'#'#++#++######@@#@@@@#+@@@@+@@@@##, ``.`.```.,,;:;;'+++####@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+##@@@@@@@@@@@@@@@@#:'#@@+@@;++:+'+#@@###@+@##++@#,#+##+##'+,++'+:;;#;@'+'#@##@##++@@#+@@@@#'`` ```````,,,:';';++++####+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@';@@+@@@@@@@@@@@@@@@@@@@;##@#'@@#@###+#+@#@##+@@#++#',##;+##+;'+++#'+.;+@#@#@'#+@@@@##@@@#.```,.``,.``,,.::;';;;+'++'+++#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@@;@@@@@@@@@@@@@@@@@@@#@;###@#@+@#'#+#,@@@+'#@@@#'##,:++:+##:+##+#;;+@###+@'##@##@@#@#` `.,` `.`.`..`::::;+'+#++++#+#@@+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;+@@@:@@@@@@@@@@@@@@@@@@#@@#@;##@@+@###+#+;.+@@'#@@@+###,;'+#.++'+'+##'+#;#'#+,....'@@###@@@+` :..``.,,.,.`..;;::;'+#'+'+++#####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@#@@@@@@@@@@@@@@@@@@@##@:#@@+;+#@'#.#;##@+#@#+####,;##`'+::;++';+:;+#,;,;'@+,+@#,;#+@@@#+`,` ```,`..:,..,:;::;++###+##@###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@#+';+@@#@';@';+;+,###;####:'+#+#:;+:'+;#'##,;@#'#;@##@+#.@@@@@',```..```.,,,,,;;';;+++'++##'+#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#';##:;;+'+###,##'+:+'+++;;+;++':##,:+@@#:#'#@#@+@,#@@+#.`````.,...,'::;;;'+'++'+++'##+####@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@'+;#@:,#+,,:;#'#+#;:##'#;';;++:'.;+,#;;#';++#@#:+'@@@#+#@#,@++'#`.``...,.,;::::;;+'++##++'+#+'+##+#@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@##@+@#;:#,#:'+;#+#'++#'#::++'+,'+++':##@;'#@##+#@@@#@.;@##`....,,,::,::;:;++++#+++++#+'+++#@@@@@@@@@@@@@@@#'#@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@;#@@##+##@+'++;@;':#++;::++:+;+;'+':#:'':#@+#@+#@#'##@#@'#;###;`..,,::::::;'+++;+#+++'#+#+#++#@@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#,#@'@+'+@@':'+#';+#:+'#':';;++:#+;';,:';+;:.+#'#+@@'@#@@#@;@@+;+@#..,,.:::;:';;;++;++##+##.;+#+++#@@@@@@@@@@@@++#@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@#@@#;#'@@'@+;#,#:;+,'+##;';;;+,#':';;,:'#;:;;;':#+##@:@+@@;###:,+@#...,::;:;;:+;#;#++###+#'..'+#+'@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;##+'###+#+#+;.:':'+#+:+'::+:':,';++;,+'#+'+;#'+#+;@'#+#+@#+###`.::,;;++##+###@@#,.,#@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;,'##+#+#+';#:#,',+,+:::,';#;;;:;',;+',';':+:##;+';'+#+#++#@@#:;#'.::,,;;;;+++###+#@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#;.;#'+';#';;;+,::+::':+'+':;':;;'+::;++'::#,#+###+#@#++#####:::;';';'++'#+'####@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#@##+;##++:#:;'#::;':,:::,;';+'+;;;,.:+;+;#'#;#+;#'+@'##:##@@'@#@.;;';;++#++##'@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@#'+##;+';+:'+#:::':.;:+;;';:,:';::';+,;;+::###+:+#+@@@+@@##';';:::,,,,:++#+@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#+;#;;,+:+;:++,:+#;;;';:;:;,::,'::',;,':;++#;:##;#'##@@@@@@#@+`;'+'++###,:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###'+#,',+++'+;;+;+::;';:;:;:.:,::;;';':':,'++++#+:+#+'@@@@#+'#@+;#++'#+++##+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,++;+:'+;:+:,.+,,;;:;:;,,,:,:;;;;';+,#++'++#+:#++'@@@#'#+@@@@.''+'+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###;++;+,;+,',,'+',;';:;;:'::::;:,:,';;,,+':++#+:##+#@@'+@#@+@@@@:++'++#@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@#++#@@@@;@##:'#';':#;;;;;::;.:;,:::;:,:::';,:+;::,:+;::,;,:##++@#;@+@#@@@#;;#,;'+'+#+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@@#,'#@@#+;;@@;##@++';:':':;;:,.;:,,:;::::,::::';;+';::+;.,;++'##+'##;@+@#@@#'###+'''+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@.#@@@@@@@#@#,#+'+@'++:;;+';,::'+'.,:;;.:,,:::;:,:;:;:+'.;.#'+##+;+@+#+++@#'@'#+@@#,'+;'+++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@@'@@#;+#'#+,'+;,':.;,;';,.::;,..,::,;::,;::.;;#;++.+;@+@'@'@@@+#@@@;+'++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@'+@@@@@@@@@:@@@++#;,;,;:;:':,,:::::,:.,.,.,:;;:,;::;+.,,,:#'+#'#+#@:+@#@#@##'##+'.'+';#####'::#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@'@@@@;#,+;;;;;;;::.:,:::,.,.,,,:;;::;:,;::,',#:+:'#'##+#@###@####+@#;'#@@@@@@@@@+,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@'#@@@@@@@@#::+##;:+@#:;:';';'::;:,;.,.,..:..`,:;:;::':,,,'.'+';++;++#@##@@+'+###:.#@@#@+@@@@@@@@@@@@:#@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@,'@@@@@@@;+@@@@@@@+'+;+';:;;:;'::::.:.,..,..,,,:;,,:;::;'.:':;;+;;#';@@+##'+@#';+#@@@@@@@@'@@#@@@@@@@@@##@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@@@@@@@@@@:@@@@@#.@@@@@@@@@#+#+#+':,;;,,:',:,,.,......,,::.::,,;,.;+';';+:+,+##+++#'+:+'#@@@@@@@@@@#@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@#+';:'#@@@@@@@@@@@@@:@@@@@ @@@@@@@@+,++#+';#;;,.,::.,:,..`..`.....,,,.;;:;,;;;+#;+++#+;'+++'##:@@@@@@@@@#@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@#+':'#@@@@@@##'#@@@@@@@@@+@@@@@`@@@@@@@;#@@@##+#;:,.,,,,,,...``.....,,,:,,::,:';',':#++'+;:;:+++#+@@#:;+@#@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@#;#@@@@@@@@@@@@@@#++@@@@@@@@@@@@.@@@@@@'#@@@@@#;'##:;:,...,,,....```...,,:.,,,,;';;:;;,,::;#:;:;#++@+:#@###+#+#@@@#@@;@#@@@@@@#########+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@##@@@@@@@@@:@@@@@@:@##@@@+;+##+,;...`....````````....,,..:;.:,;;;;;;;':::###@'@#@@@#@@#+#;@#############@@@@##@###++#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##@@@@@@'@@@@@,@@@+'#@@@+#+:#:;,..``..````````......`:;:;::+:;;';;,,+#'::##';';;';'+##'+@@@+@@'#@@@@;#@@@@@@@@@@@@@@@@@@#+#@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@+@@@@@+@@@@@@##@;,+:..:``.``````````.,.`.:.:;;:,:;;:;:'+'+;;::+'###'+;###@#:;###@@@@+@+#@@@@@@@@@@@@@@@@@@@@@@@@@@#;'#@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@,@@@@@@@@@'##'.,,'.,.``````````````.`.,.;,,,...:;:;:;;:,;:#;;++:'##@@@@@@#,;+;;;,@@@@@@@@@@@@@@#'++++#######@@@@@#;;@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@'@@@@@@@@+#;#++;`;,,..`````` ```````,.,,,,::;.:.:;',:::'+';'#+########@@@@@@@+:@@@+@@@@###@@@@@@@@@@@@@@@@@@@@@@@@@@@#:+@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@+##:,``:`..```` `````.....::..,,,.,';:..:;;,;'++'++##';;#@@@#+##+#'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@,'#+#:;'+``:``.```` ````````...,,,:::::.:.,:;,,++#@####+#####+;:#@@@@,@+@#'@#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@`.##..`,;.````..` ` ```.`...,,:,,,::.;,:,::,',+###':+###+@@@@@#@@#'+@@+:#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#``;#````;,..:```` ````````..,,,:,,:;;'+';;';#++;::+###+++'#@+,+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@+.`.'````::,.;.```` ``````....,,,::;:,;.`,:;;'+';;';##@#+;##+';;+#@##';#####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@#,@@@+,`.'.``.::',.,``.` `````...,,:,,,:::::,:'++'+;##+'@@@@@#;+#####+,;+#;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##.#@@#:..,:...:;::;:.``` `````..,,,::,::,:+;+';,'+;######@@@@#:######+++##;#######++++#'@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###`.##'@;,.,+...,;:;;;.``` ```..`..,.,:,:.,+'+;#'#+#+;+';++#@@@@@@:@@#'#@##@@@+#@@@@@@@@@@@+:#@@@@@#@@@@@@@@@@@@@@@@@@@#@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+.` '.:#'+,,;,:+;',.,.`` ``````.,,,,:,:;;;,;''#'##+;#####++#####:;#@@@#@##@@#:####+++###@@#;@@@:#@@@@@@@@@@@@@@@@@@@:@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##,` ``..,'#:+:;####+;,;;;``` ``````..::,,:,;;;;:;'###,+++##@@@@#+:++@@@########@+;@@@@@@@@@+;;++:@@@@@@@@@@@@@@@@@@@@@,@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@###:`` `.,.,;;###@####+',;``.`` `````.``.,,:;':,::,,+####+#####@'#####@@@#'###+#@@@@@@#;+#@@@@@@@@#+@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.:` ```.,;;'##@####+#+;.',:..`` ````..,:,::,::,::,;:'++;;;+'#+#@@#########@@#++@@@@#+#@@:@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@##',` ```.: ;;###@@######+',;,;..``` ```````..`.::,,::;,,::'+######';'@@@########@@#####+#@@@#@##;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@##':`` `::+,#+'#+######'++:.,::,````` ````````.,:,.,:,:,,:;::'#.+++##+####@@@@@+#+#@@@@@@@@@+;#@@#@@'##+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@##;', ```.,##+#@@@@@##'#::,`':,..`.``````..``.,.,:;,,,:;;:;+:;;:'++';'+##+##+#+'@@+@#++@@@@@@@@@'##+#@#'@@#++@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@##.`.` ..`,+@@@@@@@@##;;`';:.``.````````,.`..,::,:,.;::::;:;;;;'++#@+'++++'###+;##@@@+'#@@@#@@@'#@#++:#@@@@#'#@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@##.`` `` `:@#@@@@@@@#:+#+:.;;:,...```````....,,,;;':::,;,::;:,+:##,'++;@@#;++,+;'#@@@@@@@@'+@'@@@@@'#@@@;++#@@@@+'#@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##:+` `` ```` `:;;@#@@@@@@#,'#;'+,;+';....``..``.`,.,:::.';+;,;;;;.;'::;'#+#'+#'#@@+@@@####@@@@@@@@#;@@@@@@@;@@@'+#+;#@@@@++@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##+`` ````.;'``@@@@@@#:+#@##+:';,....`..```..,,;:::.;';':;:';',;:',;,+##'#@#'@@@@@@@#+@@@@@@@#@@@@@@@@@++@@++@@#'+@@@@#;@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##;.,` ```````.;;:';:@++#@@++###@###,;';:,,.`.`.`..,,.,:,::;:;';';;:,:';::+,'++##'+@@;@@@@@@@@#+@@@#@@@@@@@@@@@@;#@++@@@@@@@@@'#@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###,`.` ```````,;..:;,:;@@#@@#++@@###+++:::,,...:,``,.:.,,::;:;:+'+';++;+:+;+;;:'+++#;#@;#@@@@@@@@#+#@@@@@@@@@@@@@@#+@#+@@@@@'+@@@@@'+@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###;:`` ` `.``.`,:;:.;+:;+#@##@,'#@###;',++;::,:,:`...,`.,;,;;,;'::':#+#+;;;+#;;:+#;.'+###:##'@@@@@@@@@@@'@@@@@@@@@@@@@@:@#+@@@@@@:#@@@@@++@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###.`.` `.`.. ;`'.+:.:.+,':##'##;'#@+##+;'#+;;,.,.:..,``..,.:,;:,,+;.;;+'#++;#;#,#::#+++;#+++;@@@@@@@@@@@@'@@@@@@@@@@@@@;@'@@@@@@@#;@@@@@@.@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@###':;`` `` `.`.``..'::';;;:';;++#'@++@++;';##:;..:,,.,.;,,;..::,::,::':;;#;;##:#.#@#+'+++#,#+#@@@@@@@@@@@@++@@@@@@@@@@@+#:@@@@@@@@#@@@@@@++,#@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@###+,```` ` `,`.`.,:;':+++':;:'.`,;+:+@###'#++#@#+;,:.,:...,,`.,:,,:,:::;'+,':';+#'#+,#'+;+#@@#:#++'###@@@@@@@@@@@++@@@@@@@@@@#+:@@@@@@@@@@@@@@@@@,###@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@####,.``` ` `.``,``..,,;':#+'+,'.+:...,+@@@@+##:+#@#::;::,:.,.:,,:.::,::;.,';':#:+#;##:+:##,;+##@@'##@#;##@##@@@@@@@@@@@#+@@@@@@@@@#'#@@@@@@@@@@@@@@@@@:@@@##+#@@# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@###;,``` .``:``:..,;:'##;','`'`,,,.:.#@@@:#@#@###;:;:;;:,,:;,.,,':;,;;:;':+;,':+#+##:+###;:#+##@#'#@@'+#@@#+@@@@@@@@@@@++@@@@@@@@@:@@@@@@@@@@@@@@@@@@:@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@###'.`., ``.``,``'.,::'++';',',;.`..,:::;@@@'#;##@###;:;:';.,.,,,::.;,::;+;:;+;;+';';':+@##'++#'#@+###@'##@#++@@@#+@@@@@@@@@@@'#@@@@@@@@:@@@@@@@@@@@@@@@@@@;@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@+###,,`` .``:``+.,':;++;;;,;,,``.,....+'@@#@#++@#@++++;,;:':..::;,:,,,.;,,:;,#:#:+'++';'##@:####'##@#+@+#++@##'#+@@@#+@@@@@@@@@@@;@@@@@@@###@@@@@@@@@@@@@@@@@;@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@#+#,```` ` `.`:`.'.;+;;++,';;':..``..:;:+::.@++;+@@@@++'+;:::,;,,;.;::;,'::+;;#;#,::',##+###@:##+@@'@@;#;@@@:@#+@@@@'@@@@#@#@@@#+@@@@@@'@@#@@@@@@@@@@@@@@@@+@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@#####,.,,` `. `,`,..'.'+'+'+,+:,.,`.,.,':..,;+####'@@#@##'+'+++;',;,,:',,;,:;;:+,+#;++++#+;+';`+@@##@@'+@@+@@#+,@@@:#@##@@@#'@@@@@@@#@@;@@@@@#@@@##@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@####.+``` .````.:`+.;+;#'+,:.,```..`.;:;'+'+'+@:##++;'+;'+#;';:,:::;.:';',:++;'#;;'+;#+;';'#####+#@#'@@##@@+,##@;@#@+@@@@+#@@@@@#@#;#+@@@@+@@@@+@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@###+..`;` ```,``'`+.:;;#'+:,.,..`.,;,::,::;':+#+#'@@@#'+#+':+;+':;;;:':,;;';:;+,++#,+'#:++,+,;@@;@###@@;#@@'@@@,@@@;@@##'@@@@'#@@@@@@#++;@@@@@@@@@@+@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@####'.``.`` `.`.` ;.;:;+,,.+:',..:....`..:;;;#'+#'##++@@@@#@+'##'::+:+,:::;:,::,;;;,;;+;#'+;++:#;;#@####+@@##@@:@@@'#@#'@@@##+@@@@;@@@@@@@#'+#@@#@@@@@@@#@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@###'.'`` ` ` `.``` ;`';,',:.+::,.,````..::;;'#+#+@@#+:@@@@#@++++;++;+'+':;.,:':'.,';.;;+;,+@',++#+;#::@';+@@+##@@@#+#@,@@@#;@@;@@@@#'##@@'+#@@@@@@#'+@#@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@###'```:. ```````.;`'+::,;.':,:.:.,`.,.,:.,++;@+##@@@#@#@#@@@@#+'+'+';+';;'+::,:`;;+;;';+'+'#+#',;+#:#;@';,+@#+@@@@@'##@+@@@;@@;@#@@@++@#@@@@@@@@@#:@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@#::.```` .``````.,,:+;;,;';;.;.:..```.;+';++'##@#@@@+;#@@@######++;+;;;;;:';;;;::::';#;#;',#:#;:###+';#+#+'###@@@@@+####+@@+:,;@@@@@@;#@##:@@@@@@@@@:+@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@#+'#,,``` ```.``...;:+;;:;;:'.'...``.,,,;::;++##@@@@@@@@+@@@@@#'##++:#;;,:+:;:;;#;';#':'#::+;#+;##+@#'#+'##'#+@@;@@@@@#+#;@@@@@@#:@@@@@@#'@@#'@@@@@@@@@;@##@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@##+,'+..` `.`,`..,:';+;;;;;:'`'.:.`....,;;++'##@@@@@@@+;@#@@@@@#,##++:#;,::+::::;;;',:;+:#;+;+'#:+#;::+:+@:@##;+#:##@#,#@@@@@'@+#@@@@@@;#@@@@@@'#@@##@@@@@@@@;@@+@@@@@@@@@@@@@@@@@@@ @@@#+#++;;:;.;:`` `` ,`,`.:,:';';;;;',+`',,,``.,;;;;,##@@@@@@@@@+@@@@@#@+@'@#;'+':::#:+;+#';;::::#';'#:#:,;'#'#'+###@@;#;'@'##@@##@@@@@'@#'@@@@@#+;@@@#@#+#+@@##@@@@@@@'#@@+#@@@@@@@@@@@@@@@@
- ,'+##';';.`. ` ` ``.`. `'.:;';';',+`;:..`.,...:++++#@+@@@@@@@+#@@@#@@+##@'@##+:':#:';#',+::+,#'#'++';:'@,######@@,+'+@@@#@@@+@@@@@;@@'@@@@@##+#@@@##@'#+@@@+@@@@@@.@@@@+#@@@@@@@@@@@@@@
,.##+#';';...`. ` ```` ```,`..#`+:.+++#;'`+`,:`.``,,;::#+##@@@+@@@@@@@+:@@@@@@@+@+#@#';#+;+'#:#',#';';:'#';##:+.'#++++#;@+:@@##+'+@#@:@@@;@@@@@'@@@@@@@@'@@@@@@@+@'@##@@@+@@@@@#@@@@@'#@@@@@@@@@@@@ .:.:#';:...`.`` ` ` `````..`,`'`'.:####+'.#`,;....,.;;.,++#@@@@#@@@@@@#@#@@@@+@@:@+@#+':#+;+++;#;:,,,::.;#;#'#+@#:'#'#;+:@#+#@@:@+++@@@+#@@'@@#+@'@@@@@@@@,@@@@@@@@#+@@+@@@#+@@@.@@@@@@@'@@@@@@@@@@@ `.#;:,..... `. ` . . `````:`;:.;+####++:+.::``.`..:+#+@@@@@@#@@@@@@++@@@@@@@@'@+@#;';;##;'#':++++#;':+;'#;##;#:;+#';#'#@@##@@'@'+@@@@@#@@+@@@+@'@@@@@@@@+@@@@@@@@@#+@@+@@@#+@##@@@@@@@#+@@@@@@@@@ ..'` ...`.`. . `````````.:,:,;#++++;',+,.....,:::::'+'@@@@@@@#@@@@@@@'@@@@@@@@#@'+'+;'#+;+':'#+:+#:#;:.#';+#:.#;#+###+##@'@#@#@@'+@@@@@#@@##@;@@+#@@@@@@#@@@@@@@@@@@;@@##@@@##,@@@@@@@@@+#@@@@@@@ .`.``.....```` ` ` ,`:```,.`.:+:'++':;,;:.,....`.;:;+#+#@@@@@@@@@@@@@'@+@@@@@@@@+@;@'#';##';++###;'#'#++;:;:#;+;++'#'+#+'#####:@@#@@@@++@@@@@#@@@+@#@@+@@@@@@@;@@@@@@@@@@@;#@@##@@@##@@@@@@@@@@'#@@@@@ .::``....`. . `` `. ,``.'```:;#+;:;,',..`...:;;+'##@@@@@@@@@@@@@#@#@@@@@@@@+#+#;#:'+',:+######,##@#:++@#'####:;######'#+@#@#@@@#';@@@@@#@@@+,@@@@@@@@@@@;@@@@@@@@@@@'#@@@+@@@,+@@@@@@@@@@',#@@@
.,``....`.`. `. ``.`.:;,..;+;:';::,;:.,...,,,..'#+#@@@@@@@@@@@@@@@+@@@@@@@@@@@+'@@;@';+;+'#@####'##;,:'#;;'@:,';;++'#++;'#@#@#@@@;@@@@@#@@@;@#@@@@@@@@@##@@@@@@@@@@@+#+@@##@#@#+@@@@@@@@@@+,+@
.`,``......`,` ```.```,`,,:+;++;';;:,;:.,,..,:'+:+'+#@@@@@@@@@@@@@@@@:@@@@@@@@@##+#'@+@+';##+#@##+;;#;;#'+';+:##++###++;@#;'#+#;;@@+@#@@@';;@@@@@#@@@@#@@@@@@@@@@:@@@@@@@@@@@@+###@@+@;@@#+@@@@@@@@@@#; ...`...`,,,,,.```````..`:':+;;;:;::::`:..,:..:;+##@@@@@@@@@@@@@@@@@@@@@@@@@##@#+###@':;#+++###+;,#;+++#;,.:+#;;#@@;#@@+'+++:@@@'@#@@@++.@@@@@+@@@'@@@@@@@@@@@:@@@@@@@@@@@@##@##@##@@@@+#@@@@@@@@@@ ..`...`.,,,,.,`.`.`,,,.'+:+';::;:;::;:.;,..::;;'##+#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@#'@;##+;:#'#+##';@+###;',;:+#+';@@@,:+@#@;@;@@@@+@+@@####@@@@@+@@+@@@@@@@@@@@##@@@@@@@@@@@@##@@+@@'@@@@@'@@@@@@@@@ ...``.,,:,,:.;...`+;;';':+;;;;'::::.,.,:,,:;;'@@#@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@;:;+#+':#+';@'+##+@++##.+:'+++#@@@+++#@##@@@':@@@@+#++@;#@@@@@'@@@@@@@@@@@@@@,@@@@@@@@@@@@@#+@@#+###@@@@#+@@@@@@@ ..`.,:;:::;;:;:.:;;'#,;;+:'+#;:',:;:.,`.,,,'+#+++@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@'@#@##';##;:@+'@#@##;;'+#::,;'+;'#@@#:;@###,@@++'@@@@+#'@@;'@@#@@@@#+@@@@@@@@@@@@@;@@@@@@@@@@@@@#+@@@##@'@@@@++:;#@@# `,,;+;:;;;+.;.++;';++'+;',;;;,,.,::;,,;'++@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@#@@@+###@@#';##'#@#'@+';#+;#+++;#++#+':#@#';;@@#@'##:`#@@@#'#'@@#;@@@@@@+@@@@@@@@@@@@@@+@@@@@@@@@@@@@@@+@@@#'@##@;@@@@@+;@ ,;#;;';;'+###+'+#+'+'##;:',';;...:..,++++#:@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@+@@+@@#',+#+#+;;'+':@#'##;;:+.,+,...'#:;'##@:@#';###@@@@##'@##@@@#@@:@@@@@@@@@@@@@@@:@@@@@@@@@@@@@@##@@@@##@:@@@@@@#@@
- #'+'+;:'@@@@@++`;##'###';',;;;::,,;;;,,;+@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@##@@'@@#'#+###;@#;,@++@@'+,.'#+#+@@'##'#;##@++##@@@@@@@@'@;'@@@#@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@;@+@@@@@@@@
+++###'#+@@@@@#@+++;######;',;;:.,,..,';;'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@;@##'#++#@@+;@;+'@;+####+;#@:;@@@#;+;##+#@+#;@@@@@@@@@'@#'@@@#@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@@@##@@@@@#+##@@@@@@ +@#####@@@@@@@@@#++';###++;.:;;,,,;;;::';:'+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@#@@@@;@##'++##@@#:@#++#;#'+@,:::;:'+;#@@@+:@#@+@+@@'@'+@@@@@@@@'+##@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@'#;#@@@@ +##@#@@@@@@@@@@+@+++###++;.:;,:,.`,;;:;#++'@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'#@@@;@##'####@@@:@@'+';@;#@++;,'#;'@##@@:#@@;###+@:#@@#@@@@@@@@#'+##+@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@'@@@@@@@#@+@@@@ +@@@@@@@@@@@@@@#@#####++'.:':,..;;:;::;'##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@+@@@:@@+'#+++@@@;@@'#:;#;@@##+:##:;@:;+@'@+@#+@@'#:#@+@@@@@@@@@@##;@'###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@#@+#@@ @@@@@@++@@@@@@@@@@#+#++',:;;,,.:,,:;'++###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#@#@+@##'#+@+@@@'@@+#,'@+@'@:';##+;#;+@@+#:#@'@##+'@#@+@@@@@@@@@#'@#+@@##@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@;@@@@@@@@@#'@ @@@@#`'@#@@@@@@@#@###+',;',,,,:,:':,'+###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@##+#@@#@@@+@@##:+@##+:,'@@+#@##@@#+@@#'++#@@@+#@@@@@@@@@@#++@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@@@@@@' @@@:#@@@@@@@@@@@@@@##',:;;;,.;,:;+';+#++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#++@@#@@@+@@##@@;#+####;+@';@@#@@#@'@#@+@@@@@@@@@@@@@'@;@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@ ;#@@@@#@@@@@@@@#@##+':,,,::,;;,.'#+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@+#'+@@+@@@+@@#:+#@@'#'#;'+#+';#;'#@#@;@#+;##@+@@@+#@@@@@@@@@@:@#@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@@@ ++@@@@@@@+@@@@@@@@@@++;;,,,,,;++##+'@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@+#+###+@@+#@@@;#;@@+#+@;::'@#;#'#'@@@;@#@+#++:@@@@+@@@@@@@@@@##'@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@#@@@@@@@
- @@@@+#@.+@@@@@@@@#@+'+::,:;;,.,;,'##@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@'#+#@#;@@'@@@@'#,#@@@@@'+'+#+#':@@@@@@#@;##++@@@#'@@@@@@@@@@;#;@@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:#@@@@@@@
@#@@@@@;@@@@@@@@@@@@#;,:;+';'##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:#+##'++@#@@@@#@;#@@#@@###+##+#+#:@@@@#@@@@'@+#@@@@@#@@@@@@@@@@##@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@;@@@@@@@@@@@@+@;;..,;,:'@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@'#+##@#@@@@#@@#@++@@'@#@:;++##'#':@@@@:@@+@#+:#'@#@@+@@@@@@@@@@;+;@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@ @@@@@@@@@@+@@@@@@@@@@@+'+++##+'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#++#@#@@@@#@@###;@@+@'@:',;##++;:#@@@'@@@@@#++#@@@@#+@@@@@@@@@@#+#@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@ @@@@@@@@@##+@@#@@@@@'@+'+::,.####+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@#@@+#+#@@##@@@#@@#+@:@@@@@@'#+:@@:##+'@@@@@@@+@@@##;@@@##@@@@@@@@@@;#;@@@@@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@@ @@@@@@@@#@@@@@@@@@@@#@@+++;++###+@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@+@@+#'#@@##@@@#@@#:@,@@@+@@#@#;;#,++;:@@@@+@@@#@@@'##@@#@'@@@@@@@@@@#@'##@@@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@ @@@@@@@@@@@@+@@@@@@@@'@+++'+++@#@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@+++#@@##@@@#@@#,@:@@@;@#@#':+++@@@@:@@@+@@@@'+@@#@@@@@@@@@@@@'@+@@+'#@@'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'@@@@ @@@@@@@@@@@#@@@@@@@@@@@@++#'#@##@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@+#++##@#@@@#@@@:';#@@+@+@#'#'++'@'@#@@@+@'@@#@@@@++@#@@;@@@@@@@@@@#@:@@@@#@@+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@ @@@@@@@@@@@+@@@#@@@@@@#@###@##;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@+###@#@#@@@+@@@'+@@@@#@@+@+##,@'#:@@@@@@@@+@@@@#+@#@@@@@@@#@@@@@;@@+@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@ @@@@@@@@@@@#@@@@@@@@@@@#@#@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+@@@@@@@@####@#@#@@@'#@@#'+:@@@##@##@#@##;;@@@@#@+@@+@@@@#+#@@@'@@@@@@@@@@#@;+@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@ @@@@@@@#@@+@@;#@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@#@@@@@@@@+###@'@@@@@'#@@###:@@@;@@###@+@;'@;#@@@@;@@@@#@@@@#+#@@@@#@@@@@@@@@;@@#@@#@@@@:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@ @#@@@@@@@@#@#:@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###+@@@@@@@;#@@###'#@@'@@#@'@'@@,@'@@@'@@@@@'@@@@+'@@@@+@@@@@@@@@#@@:'@@#@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@
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)
- https://www.edx.org/course/subject/computer-science/java
- https://www.coursera.org/specializations/java-programming
- https://www.coursera.org/learn/object-oriented-java
- http://programmingbydoing.com/
Altele
http://www.tiobe.com/tiobe-index/