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

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