1 // generated by Fast Light User Interface Designer (fluid) version 1.00
5 Fl_Double_Window
*gf1_window
=(Fl_Double_Window
*)0;
7 static void cb_gf1_window(Fl_Double_Window
*, void*) {
8 interrupt_computer
= 1;
12 Fl_Menu_Bar
*menubar
=(Fl_Menu_Bar
*)0;
14 Fl_Menu_Item menu_menubar
[] = {
15 {"File", 0, 0, 0, 64, 0, 1, 14, 0},
16 {"New game", 0, 0, 0, 0, 0, 0, 14, 0},
17 {"Load game", 0, 0, 0, 0, 0, 0, 14, 0},
18 {"Save game", 0, 0, 0, 0, 0, 0, 14, 0},
19 {"Save log", 0, 0, 0, 0, 0, 0, 14, 0},
20 {"Setup", 0, 0, 0, 128, 0, 0, 14, 0},
21 {"Exit", 0, 0, 0, 0, 0, 0, 14, 0},
23 {"Edit", 0, 0, 0, 64, 0, 1, 14, 0},
24 {"Edit board", 0, 0, 0, 128, 0, 0, 14, 0},
25 {"Start game", 0, 0, 0, 0, 0, 0, 14, 0},
26 {"Computer move", 0, 0, 0, 128, 0, 0, 14, 0},
27 {"Clear board", 0, 0, 0, 0, 0, 0, 14, 0},
28 {"Restore board", 0, 0, 0, 128, 0, 0, 14, 0},
29 {"Load board", 0, 0, 0, 0, 0, 0, 14, 0},
30 {"Save board", 0, 0, 0, 128, 0, 0, 14, 0},
31 {"Make drawing", 0, 0, 0, 0, 0, 0, 14, 0},
33 {"UNDO", 0, 0, 0, 0, 0, 1, 14, 0},
34 {"Help", 0, 0, 0, 64, 0, 1, 14, 0},
35 {"Help", 0, 0, 0, 128, 0, 0, 14, 0},
36 {"About", 0, 0, 0, 0, 0, 0, 14, 0},
41 fl_board
*gameboard
=(fl_board
*)0;
43 Fl_Output
*whitename
=(Fl_Output
*)0;
45 Fl_Output
*whitetimer
=(Fl_Output
*)0;
47 Fl_Output
*lostwhite
=(Fl_Output
*)0;
49 Fl_Output
*whitepieces
=(Fl_Output
*)0;
51 fl_pile
*drawwhite
=(fl_pile
*)0;
53 Fl_Output
*blackname
=(Fl_Output
*)0;
55 Fl_Output
*blacktimer
=(Fl_Output
*)0;
57 Fl_Output
*lostblack
=(Fl_Output
*)0;
59 Fl_Output
*blackpieces
=(Fl_Output
*)0;
61 fl_pile
*drawblack
=(fl_pile
*)0;
63 Fl_Browser
*logbrowser
=(Fl_Browser
*)0;
65 Fl_Group
*interfacegroup1
=(Fl_Group
*)0;
67 Fl_Counter
*count_lostwhite
=(Fl_Counter
*)0;
69 Fl_Counter
*count_lostblack
=(Fl_Counter
*)0;
71 Fl_Output
*text_to
=(Fl_Output
*)0;
73 Fl_Output
*text_from
=(Fl_Output
*)0;
75 Fl_Group
*interfacegroup2
=(Fl_Group
*)0;
77 Fl_Return_Button
*button_execute
=(Fl_Return_Button
*)0;
79 Fl_Choice
*choice_piecetype
=(Fl_Choice
*)0;
81 Fl_Menu_Item menu_choice_piecetype
[] = {
82 {"White piece", 0, 0, 0, 0, 0, 0, 14, 0},
83 {"White gipf", 0, 0, 0, 128, 0, 0, 14, 0},
84 {"Black piece", 0, 0, 0, 0, 0, 0, 14, 0},
85 {"Black gipf", 0, 0, 0, 0, 0, 0, 14, 0},
89 #include <FL/Fl_Pixmap.H>
90 static unsigned char *image_gipflogo_small5
[] = {
142 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
143 ,,,,,,,,,,,,,,,,,,,,,,,",
145 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
146 ,,,,,,,,,,,,,,,,,,,,,,,",
148 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
149 ,,,,,,,,,,,,,,,,,,,,,,,",
151 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
152 ,,,,,,,,,,,,,,,,,,,,,,,",
154 ",,,,,,,,,,!~!!=,,,,,,,,,,,,,,=!~!!=,,,,,,,,,,,,,,\'!~!)=,,,,,,,,,,,,,,=~!~)=,\
155 ,,,,,,,,,,,,,,,,,,,,,,,,",
157 ",,,,,,,)]^]]]^^]\',,,,,,,,,,)^]^{]^^]\',,,,,,,,,,!]]]]]^^{\',,,,,,,,,,~]^]{]^\
158 ^{\',,,,,,,,,,,,,,,,,,,,,,,",
160 ",,,,,,{^{@@@@@@]^{,,,,,,,,{^{@@@@@@]^~,,,,,,,,]^{@@@@@)]^!,,,,,,,\'{^~@@@@@)]\
161 ^!,,,,,,,,,,,,,,,,,,,,,,",
163 ",\',,,{^!=@)!!!)@!^{,,\',,,]^)@=====@@~^~,,\',,,]])@====@@@~/!,\',,,,]])@====\
164 @@@~^!,\',,,\',,,\',,,\',,,,,,,",
166 ",,,,!^@@~^^]{{]^~!^\',,,,!^@@=@]//)@=@~^\',,,,~^@)^/^]]^^])~^=,,,,{]@)^/^]{]^\
167 /^{],,,,,,,,,,,,,,,,\',,,,",
169 ",,,,^{@{//@@@@@^/@{],,,,^{=@=@~(/=@=@@{],,,=]~@@](]@@@{(/~]{,,,=^!@@](]@@@@~/\
170 @]{,,,,,,,,,,,,,,,,,,,,",
172 ",,,=^@\'/(~@===@)]@\'^=,,=^@@=@=~(/@=@=@)]=,,)]@=@^(]@==@/(]!],,,!]@=@](]@==@\
173 @))!],,,,,,,,,,,,,,,,,,,,",
175 ",,,~]@](/@=@@=@@@@@]~,,{]=@=@@~(/)=@=@@^!,,]]@=@](]=@=@/(]@^),,]{@=@](^=@=@{@\
176 @)^\',,,,,,,,,,,,,,,,,,,",
178 ",,,{{@^(^@==@=@===@{~,,{{@=@=@~(/@@=@=@]!,,]~@=@](]@=!^/^@=]),,]!@=@](^]^]/^@\
179 =@]=,,,,,,,,,,,,,,,,,,,",
181 ",,,{{@^(^=@=@~^((]@]~,,{{@=@=@~(/\'@=@=@]!,,]~@=@^(^]{]{@=@@]),,]!@=@](^@){]^\
182 @=@^\',\',,,\',,,,,,,,,,,,,",
184 ",,,~]@^(/@=@=@~//)@]~,,{]@=@=@~(/@=@=@=^!,,]{@=@](]@@@@=@==^),,]{@=@](]@@@@!@\
185 =)]=,,,,,,,,,\',,,,\',,,,",
187 ",,,=^@~//~=@=@!(/)@^=,,\']@=@=@~(/)=@=@@]=,,)]@=@](]==@=@=@)],,,~]@=@](^===@=\
188 @@!^,,,,,,,,,,,,,,,,,,,,",
190 ",,,,^~@](^@=@=~(/){],,,,^~@=@=~(/@@=@=]],,,=^!@=^(]@=@=@=@]{,,,=^)@=](]@@=@=@\
191 =]{,,,,,,,,,,,,,,,,,,,,",
193 ",,,,!^\'@{//{!{//{!^),,,,~^@=@@](({@=@~^\',,,,~^@!/(/~@=@=@~^\',,,,{^@~/(/!@=\
194 @=@{^,,,,,,,,,,,,,\'&.,,,,,",
196 ",,,,,{^)@@~{{{~@)^{,,,,,,]^\'@=~~!!@=!^~,,,,,,]^)~~~!@=@=~^!,,,,,,]]!~~!)@=@=\
197 ~^!,,,,\',,,,,,,,...,,,,,",
199 ",,,,,)]^{@@@@@@{^{,,,,,,,!]^{@@@@=@{^~,,,,,,,!]^~@@@=@)]^~,,,,,,,~]]~@@@=@)]^\
200 !,,,,,,,,,,,,,&&&&,\',,,",
202 ",,,,,,,)^]^{{^^]\',,,,,,,,,,!]^]{]^^]\',,,,,,,,,=~]^]{]]^{\',,,,,,,,,=~^]]{]]\
203 ^{=,,,,,,,,,,&,,,&&&,&&,,,",
205 ",,,,,,,,==~{{!=,,,,,,,,,,,,,==~{{!=,,,,,,,,,,,,,==~{{!=,,,,,,,,,,,,,==~{~!=,,\
206 ,,,,,,&&\'&.&,\'.&&&.,,,,",
208 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
209 ,,,,,,.&&&..&&....&,,,,",
211 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,\
212 ,,&&.&&&.&&\'&..&\'&&&,,,,,",
214 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,*\'&&&\',,,,,,,,,,,,,,,,,\
215 ,&&&..&&..&,&.&,,,,,,,,,,",
217 ",,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,~....&,,\',,,,,,,,,,,,,,\
218 ,\'&,,\'&,&..,,,&,,,,,,,,,,,",
220 ",,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,\'*....&&,,,,,,,,,,,&,,,,,,,\
221 &.&,&&,\'.&,,,,,,,,,,,,,,,",
223 ",\',,,,,,,,,\',,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,)!&*.....&*\',,,,,,\',,,,).!),,\
224 ,,,&....&,,&,,,,,,,,,\',,,,,,",
226 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,.......*&&,,,,,,,,,,,,,...*\'\',,\
227 ,&...&,,,,,,,,,,,,,,,,,,,,",
229 ",,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'\'~&.*&\'\'&,,,,\'&,,,&.~!&&&.,&\
230 &,,,,&&,,,,,,,,,,,,,,,,,,,,,,",
232 ",,,,,,,,,,,,,,\',,,,,,,,\',,,,,,,,,,,,,,,,\',,,,,,,,&*.*~...&,,&\'...,,\'.*&\
233 \',,,,,,,,,,,,,,,,,,,,,,,\',,,,",
235 ",,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,......&&,,&&,*!&,,&..*,,,\'\
236 ,,,,,,,,\',,,\',,,,,,,,,,,,",
238 ",,,,,,,,\',,,,,,,,,,\',,,,,,,,,,,,,,,,\',,,,,,,,,,,,&..!&&,,,,.*,\'~&\',*.&,,\
239 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
241 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,*.,,,,,,\'.....,,,,,,,,,,,\
242 ,,\',,,,,,,,,,,\',,,,,,,,,,",
244 ",,\',,,,,,,,,,,,\',,,,,,,,,,,,,,,,\',,,,,,,,,,,,\',,,,!.\',,,,,,....\',,,,,,,\
245 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
247 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,&.&,,,,,,,&&,,,,,,,,,,,,,,,\
248 ,,,,,,,,,,,,,,,,,,,,,,,",
250 ",,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..&,,,,,,,,,,,,,,,,,,,,,,,\
251 ,,,,\',,,,,,,,,,,\',,,,,,,",
253 ",,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,\'..&,,,,,,,,,,,,,,,,,,,,,\
254 ,,,,,,,,,,,,,,,,,,,,\',,,,,",
256 ",,,,,,,,,,,,,,,,,,,,,\',,,\',,,,,,,,,,,,,,,,,,,,,,,&..&,,,,,,,,,,,,,,,,\',,,\
257 \',,,,,,,,,,\',,,,,,,,,,,,,,,",
259 ",,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,&..&,,,,,,,,,,,,,,,,,,,,,,\
260 ,,,,,,,,,,,,,,,,,,,,,,,,,",
262 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,&..\',,,,,,,,,,,\',,,,,,,,,\
263 ,,\',,,,,,,,,,,,,,,,,,,,,,,",
265 ",,,,,,,,,\',,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,\'..,,,,\',,,,,,,,,,,,,,,,\
266 ,,,,,,,,,,,,,\',,,,,,,,,,,,,",
268 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,&&,,,,,,,,\',,,,,,,,,,,,,,\
269 ,,,,,\',,,,,,,,,,,,,,,,,,,",
271 ",,,\',,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
272 ,,,,,,,,,,,,,\',,,,,\',,,,,",
274 ",,,,,,,,,,,,,,,\',,,,\',,,,,,,,,,\',,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,\',,,\
275 ,,,,,,,,,,,,,,,,,,,\',,,,,,,,",
277 ",,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,\',,,,,,\',,\
278 ,,,,,,,,,,,,,,,,,,,,,,,,,,,",
280 ",,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,,,,,,,,,,,,,,,,,\
281 \',,,,,,,,,,,,,,,,,,,,,,,,,"
283 static Fl_Pixmap
pixmap_gipflogo_small5(image_gipflogo_small5
);
285 Fl_Menu_Button
*menu_piecetype
=(Fl_Menu_Button
*)0;
287 Fl_Menu_Item menu_menu_piecetype
[] = {
288 {"White piece", 0, 0, 0, 0, 0, 0, 14, 0},
289 {"White gipf", 0, 0, 0, 128, 0, 0, 14, 0},
290 {"Black piece", 0, 0, 0, 0, 0, 0, 14, 0},
291 {"Black gipf", 0, 0, 0, 0, 0, 0, 14, 0},
295 Fl_Double_Window
* create_mainwindow() {
297 { Fl_Double_Window
* o
= gf1_window
= new Fl_Double_Window(620, 420, "Gipf for One");
300 o
->callback((Fl_Callback
*)cb_gf1_window
);
301 { Fl_Menu_Bar
* o
= menubar
= new Fl_Menu_Bar(0, -2, 620, 32);
302 o
->menu(menu_menubar
);
304 { fl_board
* o
= gameboard
= new fl_board(80, 40, 300, 320, "the gameboard");
305 o
->box(FL_BORDER_FRAME
);
308 { Fl_Group
* o
= new Fl_Group(10, 40, 70, 320, "white");
309 o
->box(FL_BORDER_BOX
);
310 o
->align(FL_ALIGN_TOP
|FL_ALIGN_INSIDE
);
311 { Fl_Output
* o
= whitename
= new Fl_Output(10, 40, 70, 20);
313 o
->selection_color(47);
316 { Fl_Output
* o
= whitetimer
= new Fl_Output(10, 60, 70, 20);
317 o
->box(FL_BORDER_BOX
);
320 { Fl_Output
* o
= lostwhite
= new Fl_Output(10, 340, 70, 20);
321 o
->box(FL_BORDER_BOX
);
322 o
->selection_color(47);
324 { Fl_Output
* o
= whitepieces
= new Fl_Output(30, 310, 30, 20);
326 o
->align(FL_ALIGN_CENTER
);
328 { fl_pile
* o
= drawwhite
= new fl_pile(10, 80, 70, 230, "white pieces");
329 o
->align(FL_ALIGN_WRAP
);
330 Fl_Group::current()->resizable(o
);
334 { Fl_Group
* o
= new Fl_Group(380, 40, 70, 320, "black");
335 o
->box(FL_BORDER_BOX
);
336 o
->align(FL_ALIGN_TOP
|FL_ALIGN_INSIDE
);
337 { Fl_Output
* o
= blackname
= new Fl_Output(380, 40, 70, 20);
339 o
->selection_color(47);
342 { Fl_Output
* o
= blacktimer
= new Fl_Output(380, 60, 70, 20);
343 o
->box(FL_BORDER_BOX
);
346 { Fl_Output
* o
= lostblack
= new Fl_Output(380, 340, 70, 20);
347 o
->box(FL_BORDER_BOX
);
348 o
->selection_color(47);
350 { Fl_Output
* o
= blackpieces
= new Fl_Output(400, 310, 30, 20);
352 o
->align(FL_ALIGN_CENTER
);
354 { fl_pile
* o
= drawblack
= new fl_pile(380, 80, 70, 230, "black pieces");
355 o
->align(FL_ALIGN_WRAP
);
356 Fl_Group::current()->resizable(o
);
360 { Fl_Browser
* o
= logbrowser
= new Fl_Browser(460, 50, 150, 300, "move log");
362 o
->align(FL_ALIGN_TOP
);
364 { Fl_Group
* o
= interfacegroup1
= new Fl_Group(10, 370, 230, 40);
365 { Fl_Counter
* o
= count_lostwhite
= new Fl_Counter(160, 370, 70, 20, "Lost white:");
372 { Fl_Counter
* o
= count_lostblack
= new Fl_Counter(160, 390, 70, 20, "Lost black:");
379 { Fl_Output
* o
= text_to
= new Fl_Output(190, 380, 30, 20, "to:");
382 { Fl_Output
* o
= text_from
= new Fl_Output(130, 380, 30, 20, "from:");
385 { Fl_Box
* o
= new Fl_Box(10, 370, 10, 40);
386 Fl_Group::current()->resizable(o
);
390 { Fl_Group
* o
= interfacegroup2
= new Fl_Group(240, 370, 210, 40);
391 { Fl_Box
* o
= new Fl_Box(440, 370, 10, 40);
392 Fl_Group::current()->resizable(o
);
394 { Fl_Return_Button
* o
= button_execute
= new Fl_Return_Button(240, 370, 120, 40, "Execute move");
395 o
->align(FL_ALIGN_WRAP
);
397 { Fl_Choice
* o
= choice_piecetype
= new Fl_Choice(240, 380, 120, 30, "Piece type:");
400 o
->align(FL_ALIGN_TOP
);
401 o
->menu(menu_choice_piecetype
);
405 { Fl_Box
* o
= new Fl_Box(490, 360, 100, 50);
406 o
->box(FL_THIN_UP_BOX
);
407 pixmap_gipflogo_small5
.label(o
);
409 { Fl_Menu_Button
* o
= menu_piecetype
= new Fl_Menu_Button(80, 40, 300, 320);
411 Fl_Group::current()->resizable(o
);
412 o
->menu(menu_menu_piecetype
);
419 Fl_Check_Button
*radio_basic
=(Fl_Check_Button
*)0;
421 Fl_Check_Button
*radio_standard
=(Fl_Check_Button
*)0;
423 Fl_Check_Button
*radio_tournament
=(Fl_Check_Button
*)0;
425 Fl_Check_Button
*radio_whuman
=(Fl_Check_Button
*)0;
427 Fl_Check_Button
*radio_wcompu
=(Fl_Check_Button
*)0;
429 Fl_Input
*whiteplayername
=(Fl_Input
*)0;
431 Fl_Counter
*whitetime
=(Fl_Counter
*)0;
433 Fl_Check_Button
*radio_bhuman
=(Fl_Check_Button
*)0;
435 Fl_Check_Button
*radio_bcompu
=(Fl_Check_Button
*)0;
437 Fl_Input
*blackplayername
=(Fl_Input
*)0;
439 Fl_Counter
*blacktime
=(Fl_Counter
*)0;
441 Fl_Return_Button
*new_ok
=(Fl_Return_Button
*)0;
443 Fl_Button
*new_cancel
=(Fl_Button
*)0;
445 Fl_Check_Button
*toggle_timedgame
=(Fl_Check_Button
*)0;
447 Fl_Window
* make_newwindow() {
449 { Fl_Window
* o
= new Fl_Window(479, 374, "New game");
451 { Fl_Box
* o
= new Fl_Box(160, 10, 160, 40, "New game");
452 o
->box(FL_ROUND_DOWN_BOX
);
455 { Fl_Group
* o
= new Fl_Group(100, 60, 130, 70, "Game type:");
457 o
->align(FL_ALIGN_LEFT
);
458 { Fl_Check_Button
* o
= radio_basic
= new Fl_Check_Button(110, 60, 80, 30, "Basic");
460 o
->down_box(FL_DIAMOND_DOWN_BOX
);
462 { Fl_Check_Button
* o
= radio_standard
= new Fl_Check_Button(110, 80, 90, 30, "Standard");
464 o
->down_box(FL_DIAMOND_DOWN_BOX
);
466 { Fl_Check_Button
* o
= radio_tournament
= new Fl_Check_Button(110, 100, 120, 30, "Tournament");
468 o
->down_box(FL_DIAMOND_DOWN_BOX
);
472 { Fl_Group
* o
= new Fl_Group(10, 160, 220, 140, "White:");
473 o
->box(FL_THIN_DOWN_BOX
);
475 o
->align(FL_ALIGN_TOP_LEFT
);
476 { Fl_Check_Button
* o
= radio_whuman
= new Fl_Check_Button(20, 170, 100, 30, "Human");
478 o
->down_box(FL_DIAMOND_DOWN_BOX
);
480 { Fl_Check_Button
* o
= radio_wcompu
= new Fl_Check_Button(110, 170, 100, 30, "Computer");
482 o
->down_box(FL_DIAMOND_DOWN_BOX
);
484 { Fl_Input
* o
= whiteplayername
= new Fl_Input(120, 210, 90, 30, "Player name:");
487 { Fl_Counter
* o
= whitetime
= new Fl_Counter(60, 256, 150, 24, "time:");
492 o
->align(FL_ALIGN_LEFT
);
497 { Fl_Group
* o
= new Fl_Group(250, 160, 220, 140, "Black:");
498 o
->box(FL_THIN_DOWN_BOX
);
500 o
->align(FL_ALIGN_TOP_LEFT
);
501 { Fl_Check_Button
* o
= radio_bhuman
= new Fl_Check_Button(260, 170, 90, 30, "Human");
503 o
->down_box(FL_DIAMOND_DOWN_BOX
);
505 { Fl_Check_Button
* o
= radio_bcompu
= new Fl_Check_Button(350, 170, 90, 30, "Computer");
507 o
->down_box(FL_DIAMOND_DOWN_BOX
);
509 { Fl_Input
* o
= blackplayername
= new Fl_Input(360, 210, 90, 30, "Player name:");
512 { Fl_Counter
* o
= blacktime
= new Fl_Counter(300, 256, 150, 24, "time:");
517 o
->align(FL_ALIGN_LEFT
);
522 new_ok
= new Fl_Return_Button(120, 324, 100, 36, "OK");
523 new_cancel
= new Fl_Button(260, 324, 100, 36, "Cancel");
524 { Fl_Check_Button
* o
= toggle_timedgame
= new Fl_Check_Button(380, 80, 30, 30, "Timed game:");
525 o
->down_box(FL_ROUND_DOWN_BOX
);
527 o
->align(FL_ALIGN_LEFT
);
535 static unsigned char *image_question
[] = {
587 "//////////////////////////////////////////////////////",
589 "//////////////////////////////////////////////////////",
591 "//////////////////////////////////////////////////////",
593 "//////////////////////////////////////////////////////",
595 "//////////////////////////////////////////////////////",
597 "//////////////////////////////////////////////////////",
599 "//////////////////////////////////////////////////////",
601 "//////////////////////////////////////////////////////",
603 "//////////////////////////////////////////////////////",
605 "//////////////////////////////////////////////////////",
607 "///////////////^{~!),,,,,,,,,)!~{/////////////////////",
609 "////////////^~\',,,,,,,,,,,,,,,,,,,)~//////////////////",
611 "////////////~,,,,,,,,,,,,,,,,,,,,,,,,~^///////////////",
613 "////////////\',,,,,,,,,,,,,,,,,,,,,,,,,,~//////////////",
615 "///////////{,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'^////////////",
617 "///////////!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{///////////",
619 "///////////,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{//////////",
621 "//////////~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'^/////////",
623 "//////////),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)/////////",
625 "/////////^,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~////////",
627 "/////////~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'////////",
629 "/////////),,,\'!{^////]~\',,,,,,,,,,,,,,,,,,,,,,{///////",
631 "////////],,){///////////~,,,,,,,,,,,,,,,,,,,,,!///////",
633 "////////~)]//////////////^\',,,,,,,,,,,,,,,,,,,,///////",
635 "////////^/////////////////^\',,,,,,,,,,,,,,,,,,,]//////",
637 "///////////////////////////],,,,,,,,,,,,,,,,,,,{//////",
639 "////////////////////////////~,,,,,,,,,,,,,,,,,,!//////",
641 "////////////////////////////^,,,,,,,,,,,,,,,,,,!//////",
643 "/////////////////////////////),,,,,,,,,,,,,,,,,!//////",
645 "/////////////////////////////!,,,,,,,,,,,,,,,,,!//////",
647 "/////////////////////////////!,,,,,,,,,,,,,,,,,{//////",
649 "/////////////////////////////),,,,,,,,,,,,,,,,,]//////",
651 "////////////////////////////^,,,,,,,,,,,,,,,,,\'///////",
653 "////////////////////////////~,,,,,,,,,,,,,,,,,~///////",
655 "///////////////////////////^\',,,,,,,,,,,,,,,,,^///////",
657 "///////////////////////////!,,,,,,,,,,,,,,,,,~////////",
659 "//////////////////////////{,,,,,,,,,,,,,,,,,,^////////",
661 "/////////////////////////^,,,,,,,,,,,,,,,,,,~/////////",
663 "////////////////////////^\',,,,,,,,,,,,,,,,,!//////////",
665 "///////////////////////{\',,,,,,,,,,,,,,,,,\'^//////////",
667 "//////////////////////~,,,,,,,,,,,,,,,,,,\'^///////////",
669 "/////////////////////!,,,,,,,,,,,,,,,,,,\'^////////////",
671 "////////////////////~,,,,,,,,,,,,,,,,,,!^/////////////",
673 "///////////////////{,,,,,,,,,,,,,,,,,,~///////////////",
675 "///////////////////\',,,,,,,,,,,,,,,,\'{////////////////",
677 "//////////////////~,,,,,,,,,,,,,,,,)^/////////////////",
679 "//////////////////\',,,,,,,,,,,,,,,~///////////////////",
681 "/////////////////],,,,,,,,,,,,,,,{////////////////////",
683 "/////////////////{,,,,,,,,,,,,,,{/////////////////////",
685 "/////////////////!,,,,,,,,,,,,,{//////////////////////",
687 "/////////////////!,,,,,,,,,,,,\'///////////////////////",
689 "/////////////////!,,,,,,,,,,,,~///////////////////////",
691 "/////////////////!,,,,,,,,,,,,{///////////////////////",
693 "/////////////////!,,,,,,,,,,,,{///////////////////////",
695 "/////////////////),,,,,,,,,,,,!///////////////////////",
697 "//////////////////////////////////////////////////////",
699 "//////////////////////////////////////////////////////",
701 "/////////////////////^{!!!~]//////////////////////////",
703 "///////////////////^),,,,,,,,~^///////////////////////",
705 "//////////////////],,,,,,,,,,,\']//////////////////////",
707 "/////////////////],,,,,,,,,,,,,,^/////////////////////",
709 "/////////////////\',,,,,,,,,,,,,,\'/////////////////////",
711 "////////////////~,,,,,,,,,,,,,,,,~////////////////////",
713 "////////////////),,,,,,,,,,,,,,,,\'////////////////////",
715 "////////////////,,,,,,,,,,,,,,,,,,]///////////////////",
717 "///////////////],,,,,,,,,,,,,,,,,,{///////////////////",
719 "///////////////{,,,,,,,,,,,,,,,,,,~///////////////////",
721 "///////////////],,,,,,,,,,,,,,,,,,!///////////////////",
723 "////////////////,,,,,,,,,,,,,,,,,,{///////////////////",
725 "////////////////),,,,,,,,,,,,,,,,,{///////////////////",
727 "////////////////~,,,,,,,,,,,,,,,,,////////////////////",
729 "/////////////////\',,,,,,,,,,,,,,,~////////////////////",
731 "/////////////////{,,,,,,,,,,,,,,\'^////////////////////",
733 "//////////////////!,,,,,,,,,,,,,]/////////////////////",
735 "///////////////////~,,,,,,,,,,\']//////////////////////",
737 "////////////////////^~\',,,,,\'{////////////////////////",
739 "////////////////////////{]{///////////////////////////",
741 "//////////////////////////////////////////////////////",
743 "//////////////////////////////////////////////////////",
745 "//////////////////////////////////////////////////////",
747 "//////////////////////////////////////////////////////",
749 "//////////////////////////////////////////////////////",
751 "//////////////////////////////////////////////////////",
753 "//////////////////////////////////////////////////////",
755 "//////////////////////////////////////////////////////"
757 static Fl_Pixmap
pixmap_question(image_question
);
759 Fl_Button
*button_qyes
=(Fl_Button
*)0;
761 Fl_Button
*button_qno
=(Fl_Button
*)0;
763 Fl_Box
*qtext1
=(Fl_Box
*)0;
765 Fl_Box
*qtext2
=(Fl_Box
*)0;
767 Fl_Window
* make_questionwindow() {
769 { Fl_Window
* o
= new Fl_Window(460, 90, "Question?");
771 { Fl_Box
* o
= new Fl_Box(0, 0, 60, 90);
772 pixmap_question
.label(o
);
774 { Fl_Button
* o
= button_qyes
= new Fl_Button(140, 50, 90, 30, "&Yes");
777 button_qno
= new Fl_Button(300, 50, 90, 30, "&No");
778 { Fl_Box
* o
= qtext1
= new Fl_Box(80, 0, 370, 20, "Player xxxxx, do you want to remove");
781 { Fl_Box
* o
= qtext2
= new Fl_Box(80, 20, 370, 20, "the row from xx to xx ?");
790 Fl_Window
*setupwindow
=(Fl_Window
*)0;
792 Fl_Check_Button
*level2
=(Fl_Check_Button
*)0;
794 Fl_Check_Button
*level3
=(Fl_Check_Button
*)0;
796 Fl_Check_Button
*level5
=(Fl_Check_Button
*)0;
798 Fl_Check_Button
*level4
=(Fl_Check_Button
*)0;
800 Fl_Check_Button
*level6
=(Fl_Check_Button
*)0;
802 Fl_Check_Button
*level1
=(Fl_Check_Button
*)0;
804 Fl_Check_Button
*level7
=(Fl_Check_Button
*)0;
806 Fl_Check_Button
*level8
=(Fl_Check_Button
*)0;
808 Fl_Check_Button
*ani_none
=(Fl_Check_Button
*)0;
810 Fl_Check_Button
*ani_slow
=(Fl_Check_Button
*)0;
812 Fl_Check_Button
*ani_medium
=(Fl_Check_Button
*)0;
814 Fl_Check_Button
*ani_fast
=(Fl_Check_Button
*)0;
816 Fl_Value_Slider
*slider_computer
=(Fl_Value_Slider
*)0;
818 Fl_Value_Slider
*slider_remove
=(Fl_Value_Slider
*)0;
820 Fl_Return_Button
*setup_ok
=(Fl_Return_Button
*)0;
822 Fl_Button
*setup_cancel
=(Fl_Button
*)0;
824 Fl_Round_Button
*check_posname
=(Fl_Round_Button
*)0;
826 Fl_Window
* make_setupwindow() {
828 { Fl_Window
* o
= setupwindow
= new Fl_Window(370, 400, "Setup");
830 { Fl_Group
* o
= new Fl_Group(160, 70, 200, 90, "Computer strength:");
831 o
->box(FL_THIN_DOWN_BOX
);
833 o
->align(FL_ALIGN_LEFT
);
834 { Fl_Check_Button
* o
= level2
= new Fl_Check_Button(170, 90, 90, 30, "level 2");
836 o
->down_box(FL_DIAMOND_DOWN_BOX
);
838 { Fl_Check_Button
* o
= level3
= new Fl_Check_Button(170, 110, 90, 30, "level 3");
840 o
->down_box(FL_DIAMOND_DOWN_BOX
);
842 { Fl_Check_Button
* o
= level5
= new Fl_Check_Button(270, 70, 80, 30, "level 5");
844 o
->down_box(FL_DIAMOND_DOWN_BOX
);
846 { Fl_Check_Button
* o
= level4
= new Fl_Check_Button(170, 130, 80, 30, "level 4");
848 o
->down_box(FL_DIAMOND_DOWN_BOX
);
850 { Fl_Check_Button
* o
= level6
= new Fl_Check_Button(270, 90, 80, 30, "level 6");
852 o
->down_box(FL_DIAMOND_DOWN_BOX
);
854 { Fl_Check_Button
* o
= level1
= new Fl_Check_Button(170, 70, 100, 30, "level 1");
856 o
->down_box(FL_DIAMOND_DOWN_BOX
);
858 { Fl_Check_Button
* o
= level7
= new Fl_Check_Button(270, 110, 80, 30, "level 7");
860 o
->down_box(FL_DIAMOND_DOWN_BOX
);
862 { Fl_Check_Button
* o
= level8
= new Fl_Check_Button(270, 130, 80, 30, "level 8");
864 o
->down_box(FL_DIAMOND_DOWN_BOX
);
868 { Fl_Group
* o
= new Fl_Group(160, 170, 200, 50, "Move animation:");
869 o
->box(FL_THIN_DOWN_BOX
);
871 o
->align(FL_ALIGN_LEFT
);
872 { Fl_Check_Button
* o
= ani_none
= new Fl_Check_Button(170, 170, 100, 30, " None");
874 o
->down_box(FL_DIAMOND_DOWN_BOX
);
876 { Fl_Check_Button
* o
= ani_slow
= new Fl_Check_Button(170, 190, 90, 30, " Slow");
878 o
->down_box(FL_DIAMOND_DOWN_BOX
);
880 { Fl_Check_Button
* o
= ani_medium
= new Fl_Check_Button(270, 170, 80, 30, " Medium");
882 o
->down_box(FL_DIAMOND_DOWN_BOX
);
884 { Fl_Check_Button
* o
= ani_fast
= new Fl_Check_Button(270, 190, 80, 30, " Fast");
886 o
->down_box(FL_DIAMOND_DOWN_BOX
);
890 { Fl_Value_Slider
* o
= slider_computer
= new Fl_Value_Slider(220, 237, 140, 23, "Wait before computer move (seconds):");
898 { Fl_Value_Slider
* o
= slider_remove
= new Fl_Value_Slider(220, 277, 140, 23, "Wait before removing a row/gipf (seconds):");
906 setup_ok
= new Fl_Return_Button(60, 350, 110, 40, "OK");
907 setup_cancel
= new Fl_Button(210, 350, 110, 40, "Cancel");
908 { Fl_Box
* o
= new Fl_Box(110, 10, 160, 40, "Setup");
909 o
->box(FL_ROUND_DOWN_BOX
);
912 { Fl_Round_Button
* o
= check_posname
= new Fl_Round_Button(330, 310, 30, 30, "Show position names");
913 o
->down_box(FL_ROUND_DOWN_BOX
);
915 o
->align(FL_ALIGN_LEFT
);
923 static unsigned char *image_thinking2
[] = {
951 ".............................................................................\
954 ".....................................................................+.......\
957 ".............................................................................\
960 "........................+...+...+........................+...+...............\
963 ".......................................+...+........+...........+............\
966 ".................+@###.............+.........................................\
969 "................$%%@&@@........................+.......................+.....\
972 "...+..........+*=*%&++@@+.........................................+........+.\
975 "..............-;;;;%...&-@+.............++++.................................\
978 ".............@;;;;;%@+++-&$$$+........+&*%--@.......+...+....................\
981 ".............%=$%%*=&&##$$&@@-%-&@&$&$%*=%-=%$...............................\
984 "....+.......#=&#$==%&$-@%*-$+@@%%*=%--=&&&&-%%&+...........+.................\
987 "............#-$@@@*&$%;%-*%%&+@;=&;&%%@+&--%;*;;@....................+.......\
990 "............#@&$+#&&%*=;--*=@@@;;%&--$#.@&-%%%*;=&............+..............\
993 "............#@-*;*$@;**%=&*;-$+=;%%-%-..#&-%--%**%@+.........................\
996 ".....+......#%;*%;=;;@%*;--;;%#-$%&;;=&&#$---&&&-%-&...................+.....\
999 "............$;*@-%===-@#*-%;;=@$*#%;;;--@$==$@$#$--;-#+..........+...........\
1002 ".............#-@$;;*;;;*$$*;;;;=-+=;===-$*;*=&###***==@......................\
1005 "..............@-;;*-;;;;**;;;;;*&@;;-;=*;;==;;-++&%;;;;$..+..................\
1008 "................-=&=;;;;;;;;;;;=&@;-**==;;=;;;=*--$=;=;;@..............+.....\
1011 "................@;=%=;;;;;;;=;;;-@;%*=;;;;;;;;;;;&.$-;=*=&....+..............\
1014 ".................*=%-;;;;;%&--;;*$;;;;;;;;;;;;;;;*@.@%=-**$..................\
1017 ".....+...........@&*==;;;*+..-;;*-;;;;;;;;;;;;;;;;=&.&=&*%=#......+..........\
1020 "...................%=%%%%%+.#=;;*-;;;;*;=;;;;;;;;;==&$&-%==-.................\
1023 "..................$;*#&@$%;-*;;;=$;;;;%=%;;;;;;;;;;;=&$#%;==+................\
1026 ".................#%-**=;;;;;;;;;=+;;==*=*;;;;;;;;;;;;;*@@=*%#.......+........\
1029 ".................&&%*;;;;;;**;;;;.*;*--*=;;;;;;;;;;;;;;;$-&%-+...........+...\
1032 "................@--=;;;;;%=;;;;;=#-;=-%=*;;;;;;;;;;;;;;;;=&=*&...............\
1035 ".....+....+.....$&-$=;%@...*=;;;%#---===;;;;;;;;;;;;;;;;;;;;;%$..............\
1038 "...............@+-=#*&.....#*;;=$+&-=;;;;;;;;;;;;;;;;;;;;;;;;==+.............\
1041 "...............+%@;%@-......=;;%$.&=;;;;;;;;;;;;;;;;;;;;;=;;;;;%.....+.......\
1044 "................$=;;@-&.....;;;%+.$**=;;;;;;;;;;;;;;;;;;;;=;=;==@............\
1047 ".................%;=%+--...+=;;$%+@%=*=;;;;;;;;;;;;;;;;;;;;;====&.......+....\
1050 "....+............+==-@+*-..#;;*$%.$-**;;;;;;;;;;;;;;;;;;;;;=*==;%+...........\
1053 "..........+.......@*%&@@;@.#%;*@%.-$-*;;;;;;;;;;;;;;;;;;;;;%%=*;;@...........\
1056 "...................-*&*@$;$$%;-@*+-$--#$=;;;;;;;;;;;;;;;;;=;=;;;;-...........\
1059 "...................@;=%*#@=;;=@$-#-&$&..&;;;;;;;;;;;;;;;;;;;=;;=;-+..........\
1062 "....................%;*==&$==-@+&#&$-#...%;;;;;;;;;;;;;;;;;;;;;;;-#....+.....\
1065 "....................#;;;;;*&&$&%-&&-%....+-;;;;;;;;;;;;;;;;;;=*;*&&..........\
1068 "...+......+..........$;;;=$+-;==*$$*&.....+&;;;;;;;;;;;;;;**=**=%-*..........\
1071 "......................-;;@.$=;=;=%&;#.......+*;;;;;;==;;;;=*-&-*-;;#......+..\
1074 ".......................%%.$=;;;*%;%*+.........@=;;=;=;;;*-@++++-%;;&.........\
1077 "......+...............$*#$-;;;;*;;%-+@@&###....+=;=;=;;=$....#@$=;;*.........\
1080 "....................#&&.+%;;;;;;;;==;%%%--&&--%%*%*=;=%%...####&;;;;........+\
1083 ".............+....#@$#.+%;;;;;;;;;;==%&$@@@++@#&&&$--&&$#++$#@$==;;;+.+......\
1086 "................+-&$..@=;;;;;;;;*;;*&$+........#&@#.$-*%==;=;;=%*;;;+........\
1089 "...............+$-@++@=;;;;;;;;;;;=$@$&%$&@@++@-*=*--=;;;;;;==-$&;;;.........\
1092 "......+.......+*$$@--;;;;;;;;;;;;;==;;;=;===%&=;;;;;;;;;;;*&##.+-;;;+........\
1095 "..............$*$-;=;;;;;;;;;;;;;;;=;;;;;;;;;;;;;;;;;;;;;%#...#*;;;;+........\
1098 "..............-%&;;;;=%*;;;;;;;;;;;;;;=;;;;;;;;;;;;;;;;;;-@@#@%;;;;%.........\
1101 "..............&;;;;--@.*;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;=;;;;;;;%....+....\
1104 "..............-**;=@&&$=;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*.........\
1107 ".......+......-*=;;%$*;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-.........\
1110 "..............$;;;&*==;;;;;-&%*=;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;%&&&&&$...\
1113 "..............@;;;-&;%=;;=;=*#@&*;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;=**;=--&..\
1116 "...............*;;;*==;;;*;;;;&+@%=;;;;;;;;;;;;;;=*;;;;;;;;==;;;*=*==;;;=%-@.\
1119 "...+...........#;;;;;=;;;;;=;;;;%$$-;;;;;;;;;;;;;=====;;==*&&$&-*;;=;=;====*+\
1122 "................&*=;;;*;;;==;;=;%=@@&%=;;;;;====&===;*;;===*;=-*;;=*=*;==%*=@\
1125 "...................##@$*;%*=;;;-=;=+#-%@&-;**===;;*%%-%-$--%-%=%***%;**;-&%=$\
1128 "........................%*-%==;%+*;%@$==@$;;;==**--&---=*%$@-&&&&&&&&$%&%-*=-\
1131 "......+..................#*-;;%;*@==-&%=%$*;-&-%-&-&-*===-=%-%-&@&@%*&$@-%*&-\
1134 "..........................#=*;;;;=-;%+-;%-&;%@$*=&$$=;;=%*;*$$$$$&@$$&#@#%-%-\
1137 "...........................@*;;;;;;%;-@%=;@;;;=;;;;;;===%-*--&--#-@@$%*&--$;%\
1140 "............................$%=;;;;;;=*$=;-*;;;;;;==*====$%%--*=-@$%&$-%&&&=%\
1143 ".............................#-;;;;;;;;=-=;;;==;;;;;;=*=%%-*%%%%&&%&&-%%-&%;%\
1146 "...............................@=-=;;;;;=-;;;;*=;;;%-=%%%=;*--%-*=$-$&*-**&=-\
1149 "..+...+.........................#=*;;=&=;=%;;;;;;;;;;&-**=*;=%--=;--&&-=-*%=*\
1152 "..................+..............+-%;;=$%=;;;;;;;;;;;;*==*=*%==%*;=%==%*%-;;;\
1155 "...................................#%;;;*&%=;;;;;;;;=;;;;;;;=*=;==*;==--;;;;=\
1158 ".....................................%;;;;=#-;;;;;=;;;=;***=;;;%;==;=%=%%;;;;\
1161 ".........+............+...............-;=;;=-;;;;=-=;=*;;;=*%=;;*==;=*;=**=;;\
1164 ".......................................%;;=;;=;;;;*&==%=;;;=;*%%=%***=$=-;;=*\
1167 ".............+...+......................%;;=;;=;;;;%%*%=;;;;;;;=*;*=*%**--;;=\
1170 "...+...................+................#=;;;;-;;;;%**=*-=*;;;;;;=;*---%;=;;;\
1173 "...........................+.............&;;;;*%;;;;*%;;*-%%=%*;;*%%&--*=;;==\
1176 ".........................................@;;;;;;;;;;*&&=;***-&%=%--@-%*=;;;*%\
1179 ".........................................@;=;;;;;;;;=--;;=*%%%%=;=*=%*%=;=*-$\
1182 ".........................................#=%-;;;;;;;;*=;;=;==**-%*;;%%%%*=-%%\
1185 "....+.............+...........+..........+*--;;;;;;;;;;;;$==*;--@-%***-$%-%%%\
1188 "............+.............................==;;;;;;;;;;*;*-=;=;*&--@----%=*;;-\
1191 ".....................+...+...............+;;;;;;;;;;;;;%--&-%%*-%%--&$%%*=-=*\
1194 "................................+........@=&-==;;;;;;;*--*=*%-&-&*==%-&+@&%**\
1197 ".........................................=&&=&;;;*;;=-;=&*;====-$$*===&-&$--&\
1200 "....+........+.........................+%=$&%=;;;;;=--*&%@---*;**&%%---*%-&&&\
1203 ".......................................$-&&-%;;;-;;=$---&$&$-=*-&&%$$----@&-@\
1206 ".........................+......+.....@%=;;;;===;;=*&-&-*=-%&&&&@--@-&-$&&-&&\
1209 "...............+...+..................&=;;**%=*;;;*%$-@@---**&#$@$-$+$$@&-&&%\
1212 ".....+................................&;=*-**&*=*%;&-$&@&&;;%-@@@$-$&$&-%&*%-\
1215 "............................+.........+;;***%&-%-%$&&--@-%%%%&&&-&&%*%+---%-&\
1218 "......................................+=;*;%*&%**&$--@=-*=%$*%&**&&=*==-*-&*-\
1221 static Fl_Pixmap
pixmap_thinking2(image_thinking2
);
1223 Fl_Window
* make_thinkwindow() {
1225 { Fl_Window
* o
= new Fl_Window(110, 160, "Stop thinking");
1227 { Fl_Box
* o
= new Fl_Box(10, 10, 90, 90);
1228 o
->box(FL_UP_FRAME
);
1229 pixmap_thinking2
.label(o
);
1231 { Fl_Button
* o
= new Fl_Button(10, 110, 90, 40, "Stop thinking");
1233 o
->callback((Fl_Callback
*)stop_thinking
);
1234 o
->align(FL_ALIGN_WRAP
);
1242 static void cb_Close(Fl_Return_Button
* o
, void*) {
1243 o
->window()->hide();
1246 Fl_Browser
*browser_help
=(Fl_Browser
*)0;
1248 Fl_Browser
*browser_sections
=(Fl_Browser
*)0;
1250 static void cb_browser_sections(Fl_Browser
*, void*) {
1254 Fl_Double_Window
* make_helpwindow() {
1255 Fl_Double_Window
* w
;
1256 { Fl_Double_Window
* o
= new Fl_Double_Window(550, 420, "GF1 help");
1258 { Fl_Group
* o
= new Fl_Group(10, 370, 530, 50);
1259 { Fl_Return_Button
* o
= new Fl_Return_Button(10, 380, 110, 30, "Close");
1260 o
->callback((Fl_Callback
*)cb_Close
);
1262 { Fl_Box
* o
= new Fl_Box(440, 370, 100, 50);
1263 o
->box(FL_THIN_UP_BOX
);
1264 pixmap_gipflogo_small5
.label(o
);
1266 { Fl_Box
* o
= new Fl_Box(200, 370, 30, 50, "label");
1267 o
->labeltype(FL_NO_LABEL
);
1268 Fl_Group::current()->resizable(o
);
1272 { Fl_Tile
* o
= new Fl_Tile(10, 10, 530, 360);
1273 browser_help
= new Fl_Browser(10, 100, 530, 270);
1274 { Fl_Browser
* o
= browser_sections
= new Fl_Browser(10, 10, 530, 90);
1276 o
->callback((Fl_Callback
*)cb_browser_sections
);
1280 Fl_Group::current()->resizable(o
);
1287 Fl_Check_Button
*radio_white
=(Fl_Check_Button
*)0;
1289 Fl_Check_Button
*radio_black
=(Fl_Check_Button
*)0;
1291 Fl_Check_Button
*radio_s_whuman
=(Fl_Check_Button
*)0;
1293 Fl_Check_Button
*radio_s_wcompu
=(Fl_Check_Button
*)0;
1295 Fl_Input
*s_whiteplayername
=(Fl_Input
*)0;
1297 Fl_Round_Button
*toggle_s_whitegipf
=(Fl_Round_Button
*)0;
1299 Fl_Check_Button
*radio_s_bhuman
=(Fl_Check_Button
*)0;
1301 Fl_Check_Button
*radio_s_bcompu
=(Fl_Check_Button
*)0;
1303 Fl_Input
*s_blackplayername
=(Fl_Input
*)0;
1305 Fl_Round_Button
*toggle_s_blackgipf
=(Fl_Round_Button
*)0;
1307 Fl_Return_Button
*start_ok
=(Fl_Return_Button
*)0;
1309 Fl_Button
*start_cancel
=(Fl_Button
*)0;
1311 Fl_Window
* make_startwindow() {
1313 { Fl_Window
* o
= new Fl_Window(480, 340, "Start game from an edited gameboard");
1315 { Fl_Box
* o
= new Fl_Box(100, 10, 280, 40, "Start game from an edited gameboard");
1316 o
->box(FL_ROUND_DOWN_BOX
);
1319 { Fl_Group
* o
= new Fl_Group(230, 60, 130, 50, "First player:");
1321 o
->align(FL_ALIGN_LEFT
);
1322 { Fl_Check_Button
* o
= radio_white
= new Fl_Check_Button(240, 60, 80, 30, "White");
1324 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1326 { Fl_Check_Button
* o
= radio_black
= new Fl_Check_Button(240, 80, 90, 30, "Black");
1328 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1332 { Fl_Group
* o
= new Fl_Group(10, 140, 220, 130, "White:");
1333 o
->box(FL_THIN_DOWN_BOX
);
1335 o
->align(FL_ALIGN_TOP_LEFT
);
1336 { Fl_Check_Button
* o
= radio_s_whuman
= new Fl_Check_Button(20, 150, 100, 30, "Human");
1338 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1340 { Fl_Check_Button
* o
= radio_s_wcompu
= new Fl_Check_Button(110, 150, 100, 30, "Computer");
1342 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1344 { Fl_Input
* o
= s_whiteplayername
= new Fl_Input(120, 190, 90, 30, "Player name:");
1347 { Fl_Round_Button
* o
= toggle_s_whitegipf
= new Fl_Round_Button(180, 230, 30, 30, "Add GIPF possible:");
1348 o
->down_box(FL_ROUND_DOWN_BOX
);
1349 o
->align(FL_ALIGN_LEFT
);
1353 { Fl_Group
* o
= new Fl_Group(250, 140, 220, 130, "Black:");
1354 o
->box(FL_THIN_DOWN_BOX
);
1356 o
->align(FL_ALIGN_TOP_LEFT
);
1357 { Fl_Check_Button
* o
= radio_s_bhuman
= new Fl_Check_Button(260, 150, 90, 30, "Human");
1359 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1361 { Fl_Check_Button
* o
= radio_s_bcompu
= new Fl_Check_Button(350, 150, 90, 30, "Computer");
1363 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1365 { Fl_Input
* o
= s_blackplayername
= new Fl_Input(360, 190, 90, 30, "Player name:");
1368 { Fl_Round_Button
* o
= toggle_s_blackgipf
= new Fl_Round_Button(420, 230, 30, 30, "Add GIPF possible:");
1369 o
->down_box(FL_ROUND_DOWN_BOX
);
1370 o
->align(FL_ALIGN_LEFT
);
1374 start_ok
= new Fl_Return_Button(120, 294, 100, 36, "OK");
1375 start_cancel
= new Fl_Button(260, 294, 100, 36, "Cancel");
1381 Fl_Check_Button
*radio_c_white
=(Fl_Check_Button
*)0;
1383 Fl_Check_Button
*radio_c_black
=(Fl_Check_Button
*)0;
1385 Fl_Check_Button
*c_level1
=(Fl_Check_Button
*)0;
1387 Fl_Check_Button
*c_level2
=(Fl_Check_Button
*)0;
1389 Fl_Check_Button
*c_level3
=(Fl_Check_Button
*)0;
1391 Fl_Check_Button
*c_level4
=(Fl_Check_Button
*)0;
1393 Fl_Check_Button
*c_level5
=(Fl_Check_Button
*)0;
1395 Fl_Check_Button
*c_level6
=(Fl_Check_Button
*)0;
1397 Fl_Check_Button
*c_level7
=(Fl_Check_Button
*)0;
1399 Fl_Check_Button
*c_level8
=(Fl_Check_Button
*)0;
1401 Fl_Return_Button
*one_ok
=(Fl_Return_Button
*)0;
1403 Fl_Button
*one_cancel
=(Fl_Button
*)0;
1405 Fl_Window
* make_onemovewindow() {
1407 { Fl_Window
* o
= new Fl_Window(320, 310, "Computer move");
1409 { Fl_Box
* o
= new Fl_Box(90, 10, 140, 40, "Computer move");
1410 o
->box(FL_ROUND_DOWN_BOX
);
1412 { Fl_Group
* o
= new Fl_Group(30, 80, 90, 50, "Player:");
1413 o
->box(FL_THIN_DOWN_FRAME
);
1415 o
->align(FL_ALIGN_TOP_LEFT
);
1416 { Fl_Check_Button
* o
= radio_c_white
= new Fl_Check_Button(40, 80, 70, 30, "White");
1418 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1420 { Fl_Check_Button
* o
= radio_c_black
= new Fl_Check_Button(40, 100, 70, 30, "Black");
1422 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1426 { Fl_Group
* o
= new Fl_Group(190, 80, 100, 170, "Strength:");
1427 o
->box(FL_THIN_DOWN_FRAME
);
1429 o
->align(FL_ALIGN_TOP_LEFT
);
1430 { Fl_Check_Button
* o
= c_level1
= new Fl_Check_Button(200, 80, 80, 30, "level 1");
1432 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1434 { Fl_Check_Button
* o
= c_level2
= new Fl_Check_Button(200, 100, 80, 30, "level 2");
1436 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1438 { Fl_Check_Button
* o
= c_level3
= new Fl_Check_Button(200, 120, 80, 30, "level 3");
1440 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1442 { Fl_Check_Button
* o
= c_level4
= new Fl_Check_Button(200, 140, 80, 30, "level 4");
1444 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1446 { Fl_Check_Button
* o
= c_level5
= new Fl_Check_Button(200, 160, 80, 30, "level 5");
1448 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1450 { Fl_Check_Button
* o
= c_level6
= new Fl_Check_Button(200, 180, 80, 30, "level 6");
1452 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1454 { Fl_Check_Button
* o
= c_level7
= new Fl_Check_Button(200, 200, 80, 30, "level 7");
1456 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1458 { Fl_Check_Button
* o
= c_level8
= new Fl_Check_Button(200, 220, 80, 30, "level 8");
1460 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1464 one_ok
= new Fl_Return_Button(40, 264, 100, 36, "OK");
1465 one_cancel
= new Fl_Button(180, 264, 100, 36, "Cancel");
1471 Fl_Input
*gif_filename
=(Fl_Input
*)0;
1473 Fl_Button
*gif_choose
=(Fl_Button
*)0;
1475 Fl_Value_Slider
*gif_size
=(Fl_Value_Slider
*)0;
1477 Fl_Input
*gif_extratext
=(Fl_Input
*)0;
1479 Fl_Return_Button
*gif_ok
=(Fl_Return_Button
*)0;
1481 Fl_Button
*gif_cancel
=(Fl_Button
*)0;
1483 Fl_Check_Button
*gif_colour
=(Fl_Check_Button
*)0;
1485 Fl_Check_Button
*gif_bw
=(Fl_Check_Button
*)0;
1487 Fl_Window
* make_gifwindow() {
1489 { Fl_Window
* o
= new Fl_Window(361, 341, "Make drawing");
1491 { Fl_Box
* o
= new Fl_Box(100, 10, 160, 40, "Make drawing");
1492 o
->box(FL_ROUND_DOWN_BOX
);
1494 { Fl_Input
* o
= gif_filename
= new Fl_Input(90, 70, 160, 30, "Filename:");
1497 { Fl_Button
* o
= gif_choose
= new Fl_Button(260, 70, 80, 30, "Choose ...");
1500 { Fl_Value_Slider
* o
= gif_size
= new Fl_Value_Slider(60, 120, 280, 30, "Size:");
1507 o
->align(FL_ALIGN_LEFT
);
1509 { Fl_Input
* o
= gif_extratext
= new Fl_Input(20, 220, 320, 60, "Extra text:");
1512 o
->align(FL_ALIGN_TOP_LEFT
);
1514 gif_ok
= new Fl_Return_Button(40, 290, 110, 40, "OK");
1515 gif_cancel
= new Fl_Button(210, 290, 110, 40, "Cancel");
1516 { Fl_Group
* o
= new Fl_Group(20, 160, 320, 30);
1517 o
->box(FL_THIN_DOWN_FRAME
);
1518 { Fl_Check_Button
* o
= gif_colour
= new Fl_Check_Button(30, 160, 30, 30, "Colour");
1520 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1523 { Fl_Check_Button
* o
= gif_bw
= new Fl_Check_Button(170, 160, 30, 30, "Black/White");
1525 o
->down_box(FL_DIAMOND_DOWN_BOX
);
1535 Fl_Button
*button_qsyes
=(Fl_Button
*)0;
1537 Fl_Button
*button_qsno
=(Fl_Button
*)0;
1539 Fl_Box
*qstext1
=(Fl_Box
*)0;
1541 Fl_Box
*qstext2
=(Fl_Box
*)0;
1543 Fl_Button
*button_qssave
=(Fl_Button
*)0;
1545 Fl_Window
* make_questionsavewindow() {
1547 { Fl_Window
* o
= new Fl_Window(460, 90, "QuestionSave?");
1549 { Fl_Box
* o
= new Fl_Box(0, 0, 60, 90);
1550 pixmap_question
.label(o
);
1552 { Fl_Button
* o
= button_qsyes
= new Fl_Button(70, 50, 90, 30, "&Yes");
1555 button_qsno
= new Fl_Button(170, 50, 90, 30, "&No");
1556 { Fl_Box
* o
= qstext1
= new Fl_Box(80, 0, 370, 20, "Player xxxxx, do you want to remove");
1559 { Fl_Box
* o
= qstext2
= new Fl_Box(80, 20, 370, 20, "the row from xx to xx ?");
1562 { Fl_Button
* o
= button_qssave
= new Fl_Button(360, 50, 90, 30, "&Save game");
1571 Fl_Button
*about_hiddenbutton
=(Fl_Button
*)0;
1573 static void cb_about_hiddenbutton(Fl_Button
* o
, void*) {
1574 remove_about ((void *) o
->parent());
1577 Fl_Tabs
*tabs
=(Fl_Tabs
*)0;
1579 Fl_Group
*tab_image
=(Fl_Group
*)0;
1581 static unsigned char *image_splash2
[] = {
1633 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1634 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1635 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1636 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1637 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1639 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1640 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1641 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1642 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1643 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1645 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1646 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1647 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1648 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1649 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1651 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1652 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1653 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1654 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1655 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1657 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1658 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1659 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1660 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1661 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1663 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1664 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1665 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1666 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1667 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1669 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1670 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1671 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1672 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1673 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1675 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1676 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1677 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1678 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1679 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1681 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1682 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1683 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1684 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1685 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1687 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1688 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1689 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1690 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1691 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1693 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1694 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1695 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1696 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1697 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1699 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1700 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1701 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1702 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1703 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1705 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1706 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1707 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1708 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1709 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1711 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1712 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1713 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1714 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1715 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1717 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1718 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1719 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1720 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1721 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1723 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1724 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1725 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1726 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1727 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1729 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1730 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1731 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1732 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1733 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1735 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1736 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1737 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1738 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1739 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1741 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1742 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1743 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1744 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1745 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1747 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1748 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1749 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1750 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1751 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1753 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1754 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1755 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1756 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1757 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1759 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1760 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1761 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1762 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1763 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1765 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1766 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1767 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1768 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1769 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1771 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1772 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1773 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1774 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1775 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1777 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1778 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1779 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1780 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1781 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1783 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1784 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1785 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1786 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1787 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1789 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1790 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1791 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1792 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1793 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1795 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1796 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1797 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1798 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1799 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1801 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1802 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1803 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1804 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1805 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1807 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1808 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1809 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1810 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1811 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1813 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1814 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1815 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1816 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1817 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1819 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1820 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1821 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1822 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1823 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1825 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1826 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1827 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1828 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1829 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1831 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1832 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1833 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1834 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1835 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1837 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1838 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1839 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1840 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1841 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1843 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1844 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1845 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1846 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1847 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1849 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1850 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1851 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1852 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1853 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1855 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1856 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1857 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1858 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1859 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1861 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1862 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1863 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1864 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1865 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1867 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1868 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1869 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1870 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1871 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1873 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1874 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1875 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1876 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1877 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1879 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1880 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1881 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1882 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1883 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1885 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1886 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1887 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1888 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1889 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1891 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1892 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1893 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1894 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1895 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1897 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1898 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1899 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1900 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1901 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1903 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1904 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1905 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1906 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1907 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1909 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1910 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1911 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\',,,,\
1912 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1913 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1915 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1916 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1917 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'\'!~^^^],,\
1918 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1919 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1921 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1922 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1923 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\')~]^^^^^^^^^^\'\
1924 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1925 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1927 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1928 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1929 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)!{^^^^^^^^/^^^^^^^^),\
1930 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1931 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1933 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,==========,,,,,,,,,,,,,,,,,,,,\
1934 ,,,,,,,,,,,,,,,,,,,,==========,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,========\
1935 ==,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,==========~]^^^^^^^^^^^^^^^^/^^^^^^!\
1936 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1937 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1939 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,===!~~{~~{~~!===,,,,,,,,,,,,,,,,,\
1940 ,,,,,,,,,,,,,,,,,===!~~{~~{~~!===,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,===!~~{~~{~\
1941 ~!===,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,===!~~{~~{~~!===^]^]^^^^^^^^^^^^^^^^^^^\
1942 ~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1943 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1945 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!~~~]]~~{~~{]{~{~!=,,,,,,,,,,,,,,,\
1946 ,,,,,,,,,,,,,,,=!~~~]]~~{~~{]{~{~!=,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!~~~]]~~{~~{\
1947 ]{~{~!=,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!~~~]]~~{~~{]{~{~!=^]^]]^^^^^^^^^^^^^/^^\
1948 /{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1949 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1951 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!~]]{~~!======){~~]]~!=,,,,,,,,,,,,,\
1952 ,,,,,,,,,,,,,=!~]]{~~!======){~~]]~!=,,,,,,,,,,,,,,,,,,,,,,,,,,=!~]]{~~!======\
1953 ){~~]]~!=,,,,,,,,,,,,,,,,,,,,,,,,\')=!~]]{~~!======){~~]]~!=]^]]]^]^^^^^^^^^^^\
1954 ^^/]\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1955 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1957 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!{]~)==============)~]])=,,,,,,,,,,,,\
1958 ,,,,,,,,,,,,=!{]~)==============)~]])=,,,,,,,,,,,,,,,,,,,,,,,,=!{]~)==========\
1959 ====)~]])=,,,,,,,,,,,,,,,,,\'\'!{^^^=!{]~)==============)~]])=]]^]]^]^^^^^^^^^\
1960 ^^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1961 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1963 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!~]]!==================)]]~!=,,,,,,,,,,\
1964 ,,,,,,,,,,=!~]]!==================)]]~!=,,,,,,,,,,,,,,,,,,,,=!~]]!============\
1965 ======)]]~!=,,,,,,,,,,\')~]^^/^^^=!~]]!==================)]]~!=]]]]^]]^^^^^^^^\
1966 ^^^^/^!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1967 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1969 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!{]~)====================){]{!=,,,,,,,,,\
1970 ,,,,,,,,,=!{]~)====================){]{!=,,,,,,,,,,,,,,,,,,=!{]~)=============\
1971 =======){]{!=,,,\'\'!{]^^^^^^^^^^=!]{~)====================){]])=]]]]]^]^^^^^^\
1972 ^^^^^^^^~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1973 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1975 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!{]!========================)]]!=,,,,,,,,\
1976 ,,,,,,,,=!{]!========================)]]!=,,,,,,,,,,,,,,,,=!{]!===============\
1977 =========)]]!=~]]]]]^^^^^^^^/^=!{]!========================)]]!={{]]]]^]^^^^^^\
1978 ^/^^^^^{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1979 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1981 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!]])==========================)]{!,,,,,,,,\
1982 ,,,,,,,,!]])==========================)]{!,,,,,,,,,,,,,,,,!]])================\
1983 ==========)]]){{]]]]]]^^^^^^^^!]])==========================)]{!{{{]]]]]^^^^^^\
1984 ^^^/^^^/]\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1985 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1987 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~{!=========)!]^/{]{]{{!=======)]~=,,,,,,,\
1988 ,,,,,,,=~{!============================)]~=,,,,,,,,,,,,,,=~{!=================\
1989 ===========)]{={{{]]]]]^^^^^^=~{!============================)]~={{{{]]]]]^^^^\
1990 ^^^^^^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1991 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1993 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!]~========~^//{)======~^/]~=====~]!=,,,,,,\
1994 ,,,,,,=!]~==========\'{/////^\'===========~]!=,,,,,,,,,,,,=!]~====={//////////\
1995 //////]~\'=====~])={{{{]]]]^^^^=!]~=====!/////^]{]{]{]{///////\'=={]!={{{{]]]]\
1996 ^]^^^^^^/^^^^/^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
1997 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
1999 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!{]!======)^//^==========={//^~===!{]!,,,,,,\
2000 ,,,,,,!{]!============^////!============!{]!,,,,,,,,,,,,!{]!======)////^======\
2001 =\'~]///]\'===)]]!~~{{]]]]]]^^!{]!======~////{==========~^///{==)]{!~~{{{]]]]^\
2002 ^^^^^^^/^^^^/^~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2003 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2005 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~])======{///{=============!///!===)]~=,,,,,\
2006 ,,,,,=~])=============!//(/!=============)]~=,,,,,,,,,,=~])========////!======\
2007 ====]////!===)]~=~~{{{]]^]^=~])========^(//]============){/]===!]~=~~{{{]]]]]^\
2008 ^^^^^^^^^^^^^{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2009 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2011 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!]~======!////===============]//=====~]!,,,,,\
2012 ,,,,,!]~==============!////!==============~]!,,,,,,,,,,!]~=========(///!======\
2013 =====]////!===~]!~~~{{{]]]]!]~=========]///{=============={/====~]!~~~~{{]]]^]\
2014 ^^^^^^^/^^^^^^]\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2015 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2017 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~]!=====)////)================({=====!{~=,,,,\
2018 ,,,,=~]!==============!////!==============!{~=,,,,\')!{=~]!=========////!=====\
2019 ======)/////===!{~=~~~{{{]]=~]!========={//({===============!!===!{~=~~~{{{]]]\
2020 ^^^^^^/^^^/^^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2021 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2023 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~~======^///]================={!======~{=,,,,\
2024 ,,,,=~~===============!////!===============~{=\'!~{{{]]=~~==========////!=====\
2025 =======(////!==={~=!!~~{{{]=~~==========]///]====================={~=!!~~~{{]]\
2026 ]]^^^^^^^^^/^/^^^^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2027 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2029 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,={~=====~//(/!=================)=======~~=,,,,\
2030 ,,,,={~===============!////!===============~~=!!!~~{{]={~==========/(//!======\
2031 ======///(/!===~{=!!~~~{{]={~=========={///{=====================~{=!!~~~{{{]]\
2032 ^]^^^^^/^^^^^^/^/^~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2033 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2035 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=)]{=====^////==========================~]!=,,,\
2036 ,,,=)]{===============!////!===============~]!=!!~~~{=)]{==========////!======\
2037 ======/////)===~]!=!!~~~{=)]{==========]///]=====================~]!=!!~~{{{]]\
2038 ]^^^^^^^^^^/^^^^^^^{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2039 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2041 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~])====)////]==========================!]~=,,,\
2042 ,,,=~])===============!////!===============!]~=!!~~~{=~])==========////!======\
2043 =====)////]====!{~=!!!~~{=~])=========={(//{===========\'{========!{~=)!!~~{{{\
2044 ]]]^^^^^^/^^^^/^^^/^^],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2045 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2047 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~~=====~(///{===========================~~=,,,\
2048 ,,,=~~================!(///!================~~=))!~~{=~~===========////!======\
2049 =====^///^\'====={~=)!!~~~=~~==========={///]==========={{=========~{=))!!~~{{\
2050 ]]]]^^^^^^^/^^^/^^^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2051 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2053 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,={~====={////!==========================={~=,,,\
2054 ,,,={~================!////!================{~=)!!!!~={~===========////!======\
2055 ===\']//(]\'======~{=))!!~~={~===========]///{=========!^/]=========~{=)!!!~~{\
2056 {{]]^^^^^^/^^^^^^^/^/^^^^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2057 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2059 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~{=====(////!===========================~{=,,,\
2060 ,,,=~{================!////!================~{=)))!~~=~{===========(///!======\
2061 =){^//])========~~=)))!!~=~{==========={/(//////////////{=========~~=)))!!~~{{\
2062 ]]]^^^^^^^^/^/^^^^^^/^/^!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2063 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2065 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~~=====/////!===========){]///////^!====~~=,,,\
2066 ,,,=~~================!////!================~~=)))!!~=~~===========//////]]{]{\
2067 ]{{~!==========={~=)))!!~=~~===========]///]======!!~]//]========={~=))!!!~~{{\
2068 ]]]]^^^^^/^^^^^/^^/^^^^/^{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2069 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2071 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~{=====/(///!==============!/////{======~{=,,,\
2072 \'\')=~{================!////!================{~=))))!~=~{===========////!====\
2073 ==================~{=)))!!!=~{==========={///]==========\'^{=========~{=\'))!!\
2074 ~~~{{]]^^^^^^^/^^/^^^^^^^^^^^^],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2075 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2077 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~{=====^////!==============={/(//!======~{=\')\
2078 ))!~=~~================!////!================~{=)))!)\'=~~===========/(//!====\
2079 ==================~~=))))!~=~~===========]///{===========\'{=========~~=))))!!\
2080 ~{{{]]]^^^^^^^/^^^/^/^/^/^^/^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2081 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2083 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~]!====]////~===============!////!=====!]~=)))\
2084 )!!=~]!===============!(///!===============!]~=\'))!)\'=~]!==========////!====\
2085 =================!]~=\')))!!=~]!==========]///]============\'========!]~=\')))\
2086 !!~~{{]]]^^^/^^^^/^^^^^^^^^^^^^^^^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2087 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2089 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=!{~====!///(]===============!////!=====~])=\')\
2090 ))!!=!]~===============!////!===============~])=\')))!)=!]~==========////!====\
2091 =================~]!=\')))))=!]~=========={/(/{=====================~]!=\')))!\
2092 !~!))))~]^^^^/^^^/^/^/^/^/^/^/^^^/!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2093 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2095 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~{=====^////\'==============!////!====={~=\'\
2096 \')))!!!=~~===============!////!===============~{=\'\'\'))!!!=~~==========////\
2097 !=====================~~=\'\'\'))!!\'=~~==========]///]=====================~~\
2098 =\'\'\')))!!,,,,,,\'^^^^^/^^^^^^^^^^^^^^^/^^^^~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2099 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2101 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~~=====~////{==============!////!=====~{=\'\'\
2102 ))))!!={~===============!////!===============~~=\')\')))!!={~==========/(//!==\
2103 ==================={~=\')\')))))={~=========={///{====================={~=\')\
2104 \'))!!!\',,,,,)]^^^^^/^/^/^/^/^/^/^^^^/^/^],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2105 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2107 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~]!====={(///\'=============!(///!====!]~=\'\
2108 \'\'))!!!=~]!==============!////!==============!]{=\'\')))!!!=~]!=========////\
2109 !====================)]{=\')\')\')!!=~]!=========]///]====================)]{=\
2110 \'\'\'))!!!)!!!~~]^^^/^^^^^^^^^^^^^^^/^/^^^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2111 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2113 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!]~=====\'^///]=============!////!====~]!\'\'\
2114 )\')))!!~!{~==============!////!==============~])\'\'\')\'))!!~!{{=========///\
2115 /!====================~])\'\'\'\'\'))!!~)]~========={(//]====================~\
2116 ])\'\')\'))))!~~{{]^^^^^^^/^/^/^/^/^/^^^^^^/^/^^^^^\',,,,,,,,,,,,,,,,,,,,,,,,,\
2117 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2119 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,=~]!=====\'^///]============{////!===)]~=\'\'\
2120 \')))!!!~=~]!============={(///!=============)]~=\'\'\')))!!!~=~]!=======\'///\
2121 /~===================!]~=\'\'\'\'))!!!~=~]!========^///]===================!]~\
2122 =\'\')\')\'))~~{{]]]]^^^^^^/^^^^^^^^^^/^/^^^^^^/^^/^!,,,,,,,,,,,,,,,,,,,,,,,,,\
2123 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2125 ",,,,,,,,,,,,,,,,,,,,,,,,,,\')!{^^^!{]!======{///{\'=========!////~===!]])\'\'\
2126 \'\')))!!!~~!]{!============^////~============!]]!\'\'\'\'))))!!~~!{])======{/\
2127 //(^\'=================!{]!\'\'\'\'))))!!~~!{]!======~/////==================!\
2128 {]!\'\'\'\'\'\')!!!~{{{]^^^^^/^^^/^/^/^/^/^^^]]^^/^^^^^^/^~,,,,,,,,,,,,,,,,,,,\
2129 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2131 ",,,,,,,,,,,,,,,,,,,,\'\'!{]//////^^=)]~========]//^~======={/(/{=====~{!=\'\'\
2132 )\'\'))!!~~~=)]~===========~/////^)===========~])=\'\'\'\'\'))!!!~~=)]{=====!/\
2133 /////]\'================~])=\'\')\'\'))!!!~~=)]~=====!//(///{\'===============\
2134 =~])=\'\'\'\'\'))!!~~{{]]]^^^^^/^/^^^/^^^^^/]>...^^^^/^^^^^^{,,,,,,,,,,,,,,,,,\
2135 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2137 ",,,,,,,,,,,,,,,\')~{^////^/^/^^/^^^=~]!========\'~{/^]!!~{//{~======!]~=\'\'\
2138 \'\'))))!!~~~{=~]!=========){]]{]{{]==========!]~=\'\'\'\'\')))))!!!!=~]!===!{\
2139 ]]{]{]{]~==============!]~=\')\'))\'))!!~~~{=~]!===~{]{{]]{{]===============!]\
2140 ~=\'\'\'\'\')))!!~~{{]]]^^^^^^^^/^^^/^/^^{.....]^/^^^^^^^^/]\',,,,,,,,,,,,,,,,\
2141 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2143 ",,,,,,,,,,,,,,\'^/////^///////^/^^^]!{]!============!)!!!=========!{]!\'\'\'\
2144 \'\'\')))!!~~~{{!{]!==========================){]!\'\'\'\')\')))!!~~{{{!{]!===\
2145 =======================!{]!\'\'\')\')))))!!!!~!!{]!==========================!\
2146 {]!\'\',\')\'))!!!~~{{]]]^^^^/^]]{^^/^/^^^......^^^^^^^^^^^^^^\',,,,,,,,,,,,,,\
2147 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2149 ",,,,,,,,,,,,,,,!///^///^/^///^/^^^^=!{])========================!]])=\'\'\'))\
2150 )))!!~~~{{{=)]{!========================!]])=\'\'\'\'\')))!!~~~{{{=!{])=======\
2151 =================!{])=\')\'))\')!!~~{]]]^=!{])========================!]{)=,\'\
2152 \'\'\'\')\')!!~~{{]]^]^^^{),,,,)]^^/^~{^{..{^^^^^^^^^^^^^/^),,,,,,,,,,,,,,,,,,\
2153 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2155 ",,,,,,,,,,,,,,,,^////^////^/////^^^]=)]]~!====================!~]{!=\'\'\'\'\
2156 \'\')))!!~~{{{{{=)]]~!====================!~]{!=\'\'\'\')\')))!!~~~{{~{=)]]~!=\
2157 ===================!~]]!=\'\'\')\'))!!~~{]]]^^^=)]]~!====================!~{]!\
2158 =\',\'\'\'\'))))!!!~~{~{{]{]{),,,,,,)^^^{.^^^..{^^^^^^^^^^^^^^^/~,,,,,,,,,,,,,\
2159 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2161 ",,,,,,,,,,,,,,,,)//////^///^/^^/^^^^]=!~]]!==================!{]~)=\'\'\'\')\
2162 \')))!!~~~{{]]]{=)~]])==================!{]~!=\',\'\'\'))))!!!~~{~~]^^=){]])==\
2163 ================!{]~)=\')\'\'))))!~~{{]]^^^^^=){]])==================!]]~)=\'\
2164 \'\'\'\')\'))!!~~{{{]]^^^^^/^)\',,\')~/^].^^^].]^^^]^]^^^^^^^^^^^^{,,,,,,,,,,,\
2165 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2167 ",,,,,,,,,,,,,,,,,]//^///^///////^^^^]]{=){]~!==============!~]]!=\'\'\'\'\'\'\
2168 \'))))!!~~{{{{]]]]{=)]]~!==============!~]])=\'\'\'\'\'\')\'))!!!~~~~]^//^^^=)\
2169 ]]~!==============!~]]!=\'\'\'\'\'\'\')!!!~~{]]^^^^{{]]=)]]~!==============!~]\
2170 {!=\'\')\')\'\'\')))!!~~{{]]]]^^/^]~]^]]]^/^^]./^^.>]]^^]]{]]]^^^^^^^^^/]\',,,\
2171 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2173 ",,,,,,,,,,,,,,,,,\'///////^/^/^/^/^^^]]]{=!~]]~{~!======!~~~]]~)=\'\'\'\'\')\
2174 \')))!!!~~~{]]]]]]{]{=){]{~{~!======!~{~]]~!=\'\'\'\'\'\'\'\')))!!~!~]^/^///^^\
2175 ^=){]]~~{)======!~~~]]~)=\')\')))\'\'))!~~{{]]^^^{]^^^^=){]]~{~!======!~~{{]~!\
2176 =\'\'\')\')))\'))!!!~~{{]]^^^^^{{^^/^/^^^^/.]^]{]]^^]^]~{]^]]^^^^^^/^^^^\',,,,\
2177 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2179 ",,,,,,,,,,,,,,,,,,{/^/^////////^/^^^^]]{{{=!~~~]]{~~{~~]]{~~!=\'\'\'\'\'\'\')\
2180 \'))))!!~{{{{]]]]]]]{{~=){~~]]{~{~{~]]~~~)=\'\'\'\'\'\'\'\'\'\')))!!!{]^^/////\
2181 /^^^{=)~{~]]~{~{~~]]{~~!=\'\'\')\')\')))\'\'\'\'\')!~]]{]^///^^]]=)~~~]]~{~{~~\
2182 ]]{~~)=\')\')\')\'))))))!!~~{{]]]]^^{~]]{]^^/^/^^^..{.]^^^]^]~{]]]^]^]^^^^^^^^\
2183 /^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2186 ",,,,,,,,,,,,,,,,,,\'///////^/^///^/^^^^]]{{~~===)~~{~~{~~)===\'\'\'\'\'\')\')\
2187 \')))!!~~~{{]]]]^]^]]{{{!\'===)~~~~~~~~!===\'\'\'\'\'\')\')))\')!))~]]^^//////\
2188 //^]{{{===){~~~~{~~)===\')\')\')\'))\'\',,,,,,,,,,)~/(////^^]{{===)~~~~~{~~)==\
2189 =)\'\')\')\'))))!!!))~~~{{]]^]{~]^^...]^^^^^^^../^^^]^]]..{]]]]]^]^^^^^^/^^//!\
2190 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2192 ",,,,,,,,,,,,,,,,,,,!///^//////^///^^^^]]{{{~~~!==========\'\'\'\'\'\'\')\'\')\
2193 ))))!!!~~~{{]]]^^]^]]]]{~,,,,==========\'\'\'\'\'\'\'\'\'\'\'\'\')\'\'\'!~~{~]\
2194 ]^^/////^^]]]{{~~==========)\')\')\')))))\',,,,,,,,,,,,,,!/((///^^]]{{~=======\
2195 ===\')\')\')\'))))))!!!~~!!~{{]]{.!{^^^~....]^/^^^^..{]]]]].~..]]]]]]]^]^^^^^^\
2196 ^^^^/{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2199 ",,,,,,,,,,,,,,,,,,,\'^////^//^///^/^^^^^]]{{~~~!!!)))))))\')\')\')\')\'))\'))\
2200 )!!!~~{{]]]^]^^^^^]]]{{!)\'\'\'\')!))))\')\'\'\'\'\')\'))))))))!)~{{]]^^^^^^^^\
2201 ^]]{]^]{{~~~!!!)))))\'\'\'\')\'\'\')\'\',,,,,,,,,,,,,,,\'{((///^^]]{{~~~!)))))\
2202 \')))\'))))))))!!!!~~{{~!{]]{..~^^^{.....]^^^^^{...........]]]]]]]]^^^^^^^/^/^\
2203 ^^/],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2206 ",,,,,,,,,,,,,,,,,,,,)/////////^////^^^^^]]{{{~~!!!!))))))\'))\')\'))))))!!!!~\
2207 ~~{{]]]^^^^^^^^]]]]{~~~!))!))))\'))))))\'))\'))))!~~~!{]^^//((((((((/^^^]]{{~~\
2208 ~!!!)!))))))))))))\',,,,,,,,,,,,,,,,!{^]^{]{{~~~~!!!))\'\'\')\'))))\')))))!!!~\
2209 ~~{{]]~~{{!...^^]~......]^^]]]..........{]]{]]]]]]]^^^^^^^^/^^^^^\',,,,,,,,,,,\
2210 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2212 ",,,,,,,,,,,,,,,,,,,,,]//^///^///^/^/^^^^]]]{{~~~~!!!)))))))))))))))!!!!~~~{{{\
2213 ]]]^^^^^^^^^^]]]{{~~~))!!)))))))\')))))))))~~{{{~~^^//(((((_(((//]^^^]]{~~~!~!\
2214 !!)))))!)!!!!),,,,,,,,,,,,,,,)/((((//^^^]{{{~~)))))))))))))\'))))))!~{~~~~{!)&\
2215 ...{]]~.{.....]]^{.^{........{]{]]{]]]]]^]^^^^^^^^/^/^/^),,,,,,,,,,,,,,,,,,,,,\
2216 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2218 ",,,,,,,,,,,,,,,,,,,,,)///^/////////^/^^^^^]]]{{~~~!!!!)!)))))))))!!!!!~~~{{{]\
2219 ]]]^^^^^^^^^^^]]]{{{~~))!!!!))))))))))))~~~{{]]]{{^//(((_(_(((((/]{]]]]{{{~!!!\
2220 !!!!!!!!!!!~~!\',,,,,,,,,,,\')^(__((((//^^^]{{!!~!!)!!!!)!!!!!!~~~~~{{]]^]{{]!\
2221 ...{]]]]]].....~~.!{{).....&&{]{]{]{]]]]]^^^^^/^/^^^^/^^/!,,,,,,,,,,,,,,,,,,,,\
2222 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2224 ",,,,,,,,,,,,,,,,,,,,,,{//////^///^//^/^^^]]]]{{{~~~~~!!!!!!!!!!!!!!!~~~~{{{]]\
2225 ]^^^^^///^^^^^]]]]{{{{~)!!!!!!!!!!!))!~~{{{{]]^^]{]((((__(__(((^{]^^]{{]{{~!!~\
2226 !~~!~!!~~~~~~~!!)\'\',,,,,\'!](__(_(_(((//^^]~~~{{~~!)!!~!~!~~~~~~~...~]]~~]/^\
2227 ....^^{]^^^........^]]]&&.&&)){]{]{]{]]]^]]^^^^^^^/^/^^/^/^{,,,,,,,,,,,,,,,,,,\
2228 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2230 ",,,,,,,,,,,,,,,,,,,,,,\'///^///^//////^/^^^^^]]]]{{~~~~~~!!!!!!!!!~~~~~{{{]]]\
2231 ]^^^^^/^^/^/^^^^^^]]{{{~~~{~~~~!!!))!~{~{{{]]]^^^/^{^/(/((_(__/]]/(///^^]]]]~!\
2232 ~~~~~~~~~~~~~~!{]^]^]]^^/]](_(__(__((((//]~{]]]]{{~!!~~~~~~~{~~{]~.......^/^..\
2233 ..]]]]]^^]......{]]]~~{~{~{]{{{{{{]{]]]]^^^^^^^^^^/^^^/^^^],,,,,,,,,,,,,,,,,,,\
2234 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2236 ",,,,,,,,,,,,,,,,,,,,,,,~/////////^/^//^/^^^^]]]{]{{{~~~~~~~~~~~~~~~{{{{{]]]^{\
2237 {{]//^//^/^/^^^^]^]]{]]]]]]{{{{{{~~{{{{]]]]^^^///]!)\'\'\',\'!~]]](((((///^^^]\
2238 ]]~!~{{{{{~.~~~!{]]]^^^///(((]^(__(__(_(((^{]^/^^]]]]{{!!~{{{{{{~~{]......{/((\
2239 >....~]]^]^]]~....{]]~~{]]]]{]{]{]{{{]{]]]^]^^^^/^/^^^/^^^/^/^^\',,,,,,,,,,,,,\
2240 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2242 ",,,,,,,,,,,,,,,,,,,,,,,\'^/////^/////^//^/^^^^^]]]]]{{{{{~~~~~~~~{{{{{{]]]{),\
2243 ,,,,!////////^/^^^^]]//^^^]]]]]{]{]{{{]]]^^^^///{),,,,,,,,,,,){(_((((////^^^]{\
2244 ~!{{{~....!{]]]^^^///(((((/{^__/(_//(/]]/////^^]^]]]]~~{{{]{~~]^^{...>.^///{..\
2245 ....]^]]]]{....{{!~{{]{]{]{{{{{{]{{]]]]]]^^^^^^/^/^^/^/^^^/^^),,,,,,,,,,,,,,,,\
2246 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2248 ",,,,,,,,,,,,,,,,,,,,,,,,!///^/////////^/^/^^^^^^]]]]{{{{{{{{{{{{{{{]]]]^^)\',\
2249 ,,,,\'~{{]]{]]]]]]]]]/////^^^^]^]]]]]]]]^^^^////~,,,,,,,,,,,,,,\'{_((((((///^^\
2250 ^.{{&......~]]^^^^///((((((/(_(______((]^((((////^^^^]]]~~]]]{.^^^]~.{]]^//(/{\
2251 .....{{]]]]]{{.~]~!{{]{{{{]{{]{{{{{]{{]]]^]^^^^^^^^/^^^^^/^^^/^/!,,,,,,,,,,,,,\
2252 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2254 ",,,,,,,,,,,,,,,,,,,,,,,,,^////////^///////^/^^^^^]]^]]]]]]{]{]{]]]]]]]]^^{\',\
2255 ,,,\'~///^/^^^^^^]]]^(((//////^^^^^^^]{{^{{]{]]~\',,,,,,,,,,,,,,,)/__((((/(///\
2256 ]..........]]^^^^/////(((//____________((//((((/////^/^^]{{]/.~^]{{/^//(.//(/{\
2257 .....]~{]]{]]]]~!~]{{{{]{{]{{{{]{{{]{]]]]]^^^^^/^/^^//^/^/^/^^^^/~,,,,,,,,,,,,\
2258 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2260 ",,,,,,,,,,,,,,,,,,,,,,,,,)/////^/////^/^//^/^^^^^^^]^]]]]]]]]]]]]]]^^^^^^/]]{\
2261 {~]//////////^//^^^(((((/////////^^]^/////(//~,,,,,,,,,,,,,,,,)]^^]^]^(]]{....\
2262 .......~{]]]^^^^//(((^/_______________(/((((((////////^{{~.{{{]///(/^{//(/]...\
2263 .]/]~~]{]{{!!{{{{{{{{{{{]{]{{]{{]{]]]^]^^^^^^^^/^^^/^^^^^/^/^^^],,,,,,,,,,,,,,\
2264 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2266 ",,,,,,,,,,,,,,,,,,,,,,,,,,]/////////////^//////^^^^^^^^^]^]]^]]^]^]^^^^^^/^//\
2267 /]{^//^///^///^//^^/(((((((///////^////(((((_^\',,,,,,,,,,,,,,\'^______(/^....\
2268 ........{]]]]]]]]]]^]^]](_(______________^^/^^/^///^/^///^{...]///(/(^{.///(/.\
2269 ...^//]~~{{~!~]{]{]{{{{{]{{{{]{{]{]]]]]^]^^^^^/^/^^/^^^//^/^^^^/^^^\',,,,,,,,,\
2270 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2272 ",,,,,,,,,,,,,,,,,,,,,,,,,,\'/////^/////////^/^^//^^^^^^^^^^^^^^^^^^^^^^/^/^/^\
2273 //^{{^///^///^//^//^^]/((((((((/////(((((((_(_(^),,,,,,,,,,,\')^(__(_(^.......\
2274 .....~{{^/^/^/////(/(((/(_____________^/(^/(//^/^^^^^]^{]]~...{]{^{]{~.]^{^{^.\
2275 ..{^]]]]~!!~{{{{{{{{{{{{]]]]]{]]]{)\'\'\')~^^^^^^^^^/^/^/^^^^/^//^^/^^^),,,,,,\
2276 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2278 ",,,,,,,,,,,,,,,,,,,,,,,,,,,~///////^//////////^///^/^^^^^^^^^^^^^^^^^/^/^///^\
2279 //^{]////^///////^]](((/((((/^]^(((((((((_(___/]{~)\',,,,\'\'!^(__/(/]........\
2280 ....{{^^{]^^/^^////((((_(/_(_________(/.^//_(__(_((((((((/]~.....^]/]...^///^/\
2281 ^.~]]]{]{)))~~~~~~~~]{{~~!~~~~{~{~\',,,,,,!^^^/^/^/^^^^/^/^/^^^^/^^/^/^!,,,,,,\
2282 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2284 ",,,,,,,,,,,,,,,,,,,,,,,,,,,\'^////^////^/////////^////^/^^^^^^^/^////^/^//^//\
2285 /^//{{^/////^///]{^(____(___(_(]]((_(____(_(_/]^(___(/////^^_/^]>.............\
2286 ]///^^]{{^^/^/////(((((((^(________(..^((__(__(__(((_(^{^{...........^/////^//\
2287 ^^^^^{~]]~~{{]{{]{{]{]{]{]]]{]]]!,,,,,,\']^^^^/^^//^/^^/^^/^/^^/^^^^/^~,,,,,,,\
2288 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2290 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,!////////////^//^////^/^//////////^/^^^///////^//\
2291 ////{{^/^////^{^((______(__(__(^^((_(_(___(]^(________/]]]~.................//\
2292 ////^^]{]^^^^////(((_((]^/(//((((/]...{]^((_(_((__(/]](({..........{////^//^/^\
2293 /^]~{]^^]~~{]]{]]]{]]]]]]]]]]]]]))\'\')!]^/^/^^/^^/^^/^^/^^/^/^^/^/^/^/{,,,,,,\
2294 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2296 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,^///////////////////////^^]{{~]^//////^/^/^/////\
2297 ^///^{]////^]](______________(_/]/______/^](_________]..................{^^.(/\
2298 /^^^^^^{~]^^^///((((/]](______(__/.......](_(_(_((]]((_(].........{^/^/^/^^/^^\
2299 ^~~]^^^^^]~~{]]]]]]]]]]]]]^^^]~~]^^^^^/^^^^/^/^^/^/^/^^/^^^/^/^^/^^^//]\',,,,,\
2300 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2302 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,)///////^///////^///////{)\',,,,!///////////////\
2303 ///^//]~^/^]](__________________(/]/(__(^](__________(({...............{(//>{^\
2304 /^/^^^]^]{{]^^^///(/^]/_(_________^......./((_(//^]^(__(__.........^//^/^^/^^^\
2305 ]~]^^^^^^^^^{~{]]]]]]]]]]^]^]]~{^^^^^^^^^/^/^^^/^^/^^/^/^/^/^^^/^^^/^^^/^\',,,\
2306 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2308 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]///^////////////^//^/^),,,,,,,~]{{]]]]]]]]]]^^\
2309 ^^^^^/{~]]/______________________^^(_^]/______________(]...........~{^^//^.]^^\
2310 ^^^^^]^]]{~^^^///^{^((_((_______(^......{/((((]{^((_(__(_/]....~{//^^^^/^^^^~{\
2311 ^/^/^^/^///^{~]]^]^]^^^^^^]~~^^^^^^^/^/^^^/^/^/^/^/^^^/^^^/^/^^/^/^/^^^/^!,,,,\
2312 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2314 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)///////^//^///////////~\',,,\'){////^/^/^/^^^]\
2315 ^]^]]]]]!)~^^^^^^_^]^^^^^/]/^/^///(^{{]^(_(_(_____________/^.~.....~{^/////^.]\
2316 ^^^^]]]]]^]]{~^^/^{](((/(^.]/_((^((^]^^~..^(((/{~/((((_(___(((^^(/{{^^/^^^^^{~\
2317 ]^/^///^/^/////{{]]{]]]]^^^{~]^^^^^/^^^^^//^/^/^^/^^^//^/^/^/^^/^^/^^^/^/^^/~,\
2318 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2320 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{//////////////////////]{{{^^/////////////////\
2321 ////{{^]](___________(_(_(((((/(/^~{]^/^^^^^]^]^]^^^^]^^^^/]^]~~{/]^^^^^^{.]]]\
2322 ]]]]]]]{]~..{^{{^(((//(....]{>{((//((^.~/(/]~.//((((_((_(__(((//^{{]^^^^{~]^//\
2323 //^///////(/^~\'\',\',\'\'\'!~~{^/^^/^^^/^/^/^^^/^^/^^/^/^^^^/^^^/^/^/^^/^/^^/\
2324 ^^/{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2326 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'//////////////////////////////^/////////////\
2327 ///]~^///{](____________________/]/(/](__________________((((/{{{]^^]]]{{{~.~{\
2328 ~~~~{~~~....~!!{]^]^{{//......./((/((((.~]^{].{(/(((((_(_(_(((((//^{{]]]~{]^^/\
2329 ^/////////(/~),)!~{{{{~),\'!^^/^/^/^^/^^/^/^/^/^/^/^^//^/^/^/^/^^/^/^^^/^^/^^/\
2330 ]\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2332 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~/////////^//^///////////////////^//^///////^\
2333 ]~^/////^{^__________________/]^____^^(___________________(]]//]{^/^^]{{{..]~.\
2334 {.........{~{{]///^]///{...../]^]]^]^{..!)...^{]]]^]/^/^//////^/^^]~{~~]^^^/^/\
2335 ///(/(((/({,\'~]{)\'\',\'!]{),\'^^^/^/^/^/^/^/^/^/^^^/^/^^/^^/^^^/^/^^/^/^^/^^\
2336 /^^/^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2338 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^/////////////////////////////////////^//^]{\
2339 ]////////]{/_______________(]^______(^^_________________(^]/(((/]{^^{.........\
2340 .........!{^^]{^/^{/((({>.]^^(_(((((/~...~..]^^/^/^//////^/^^]]]{]{~)!~~{~]~]{\
2341 ]]]]]]]^^]),!]~,,,,,,,\'~]),)^/^/^/^/^/^/^/^^~)\'\'\'!^//^/^^//^^^/^/^^/^/^/^^\
2342 /^^^/),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2344 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!////////////////////////////^//////^///]~^/\
2345 //^///////{](____________(^^(________/]/______________(^]/((((//^{{^..........\
2346 .......~~]^^/^]{^.](((((^(_/]/(((((({......~]//////(/((((((((((//^{~]{{]^/^///\
2347 ///(/(///^),)]~\',,,,,,,!]~,\'~^{{{{{{{]{]{]]\',,,,,,\']^/^/^^^//^^^/^/^^/^^/^\
2348 ^/^^//!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2350 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]//^//////////^/////////^//////^/////]{]///\
2351 ////^/////^{^(_((_(____(^](___________^^/____________/^^(_(((((//^{]{.........\
2352 ......!{^^^^//^]~.]((((((((^{((((//~~......~{^^^////((((_(_(((//]~]^^]{{^////(\
2353 ((((((((_(],\'!]~\',,,,,){]!,)^/^//^/^/^^^^^^~\',,,,,,~^^/^//^^/^/^/^^/^^/^^/^\
2354 ^/^^^/{,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2356 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)////////////////^/////////////////]{]/////\
2357 ///////////^^(__(_(/(/^](______________^^(_((((____(]^(___(_((/(/^]~..........\
2358 ..~~~{]^]^^/^//]..{((_(_(((.^/((/]{^].....]]{]^^^///((((((_(((^{{/^/^/^{{^//((\
2359 (((_(__(__(]\',){]{~{~{]~),\'{^/^^/^/^/^/^/^//{)\'\'\')~^/^/^^^/^^/^^/^/^/^/^/\
2360 ^/^^/^/^/],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2362 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/////^//////////^////////^]]]^]{]////^//\
2363 ^///^//^//___________(/((_____________(])\'),\'\')){^^](___(__((((////]~~.....\
2364 {.{]{!~]]]^^^^/^//]...^((((((].^(/]{]//^]..{]^^]~]^/^///(((_((((]{//////^/^{{/\
2365 /((((_(_(__(___^!\'\'\')!!))\',\'!]//^//^/^/^/^/^/^/^/^^^^/^/^^//^/^/^/^^/^^^/\
2366 ^^/^^/^/^^^^/^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2368 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'////////////////////////]!),,,,)////////\
2369 ///////^^________________/___________/~\',,,,,,,,,,,!^_____(_(((((//^^]]^]..^]\
2370 ]{~!]]]]]]^]^^^/^.....^^//^..>/^{]////////^^/^^{{]^^////(((_(/]^((((///////]]/\
2371 ((_(________(]~]/]{~!!!!~~]//^/^^/^/^/^/^/^/^/^^/^/^/^/^/^^/^/^^/^/^/^/^/^^/^/\
2372 ^^//^/^/^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2374 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~//////////////////////^),,,,,,,~^^]^^^^^\
2375 ^^/^//^_________________((_________^\',,,,,,,,,,,,,,,^_______((((^^////^/{.>^^\
2376 ]]{{]]]]]]^^^^/^~......>....]]~^//////////^/^^]{~]^^^^(^/(/]]((((((((/(((//]](\
2377 ((_(_(_(__/{{^/^///^/^//]~]^//^/^/^^/^/^^/^^/^/^/^/^/^/^/^^/^/^/^^/^/^^^/^/^^/\
2378 ^^/^^^^//!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2380 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'^//////////////////////),,,,,\')^^^^]^]\
2381 ]]]]]{{{/_________________/^///(/(((^),,,,,,,,,,,,,,,,)(___(_(_((^/(/////^>..^\
2382 ^]]]]{]]]]^]^^^^]...........{^/^^^^/////////^^^]^^^^^^^//(/{^((_((((((((((((/{\
2383 ~{~!~~{^((]{^///^/^/^/^^//]{{^/^/^//^/^//^/^/^/^/^/^^/^^/^/^^/^^/^/^^/^/^/^^/^\
2384 /^^/^//^^//~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2386 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(////////////////////(^~))!~]//////////\
2387 /////^(_________________^((/(//^//~\',,,,,,,,,,,,,,,,)]/]/^/^//]/(((/(//^{..^^\
2388 ^]]]{]]]]]^^^^^^...........^////^^^/^//////^]^^^]{]]]]]]^(((/((_(_(((((((({!\'\
2389 ,\'!)!!\'\'\')!^/^/^/^/^/^//^//^{]^/^/^/^/^^/^/^/^/^/^/^/^/^/^/^/^//^^/^/^/^^/\
2390 ^/^^^/^/^^^/^^^/]\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2392 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^///////////////^//////////////////////\
2393 /////^/________________/(_________]\',,,,,,,,,,,,,,,,{((_(((/(/^/(((((((/...>^\
2394 ^]]]~!~~~{~{{{{/]........{//^/^^^]/^///////]^/]{{^^/////]^((_/(__(__((_(/!\'\'\
2395 !]]{~~{]]~\',)^//^/^/^/^/^/^^/^~{///^/^//^/^/^/^/^/^/^/^/^/^/^/^^^/^/^^/^/^/^^\
2396 //^^^/^/^^/^/^^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2398 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(/////////////////////////////////////\
2399 //////^/(____________(((__________(~,,,,,,,,,,,,,,\'!(_______(_((__(((((/....^\
2400 ^^]]{]]]]]]]]^]^/]......>^/^/^^^^~{{{~]{{]{]/^{{^^////(((]^(_/((_(_(_(_(~,\'{]\
2401 !\',,,,,!{{),)^///^//^/^/^//^/^{{{{]^/^/^/^/^/^^/^/^/^/^^/^^/^/^/^^/^/^/^^/^/^\
2402 ^/^/^^/^/^/^^/^^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2404 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(////////////////////////////////////\
2405 ///////{{/((_____(((((_____________({\',,,,,,,,,,,)]___________(/(__((((/...~^\
2406 ^^]{{]]]]^^^^^]///^]>{^//^^^^^^^]]^///////^^//]{////(((((^](_/{^^]^]^](])\')^{\
2407 ,,,,,,,,)]{\',!^^^/^/^//^/^^//{\',,,\'\'{//^/^/^//^/^^/^^/^/^/^/^/^/^/^/^^/^/^\
2408 /^/^/^^/^/^^^/^/^/^/!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2410 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'////////////////////////////////////\
2411 //////{{^///^^/^//]{^_______________^]/^~!\'\'\'\'))!/(______________(^(__((>.\
2412 ...]^]]]]]]]]^^^//^^////////^//^^^^]]^/^/////(/^//^]]^////(/^]/((/(________(!,\
2413 \'{{),,,,,,,)]]),!]{{{{{{{{{{{{{{\',,,,,,,{//^/^/^^/^/^/^/^/^/^/^/^/^/^^/^/^/^\
2414 ^^/^/^/^/^^//^^/^^^/^/~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2416 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(///////////////////////////////////\
2417 ///{{]////////////]]/____________/]/_____(((__/^/_____________((]]///(/.....{^\
2418 ^]^]^]^^^^/^///^]///////^^^^]]]^^^///(((/(///(/]]]^^^^^^/(_//________(_/\',)]{\
2419 !\',,,\'){]!,\'{/////^/^/^//^//{,,,,,,\'~/^/^/^/^/^/^/^/^/^/^/^/^/^//^/^/^^//^\
2420 ^/^^/^/^/^^/^^//^^^/^],,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2422 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,/////////////////////////^//////////\
2423 ^]{^///////////////{]/_(((/(___/]^_____________/]/___________(^^(__(_((.....~]\
2424 ^^]^]^]^^^////^{^/^^/^^^]]{{]^^^^^////((((((^{/(/////(((_(/(____________/)\'\'\
2425 ~{]]{{]]{)\'\'~^//^/^//^/^/^/^//]~)\'\'~{/^/^/^/^/^/^/^/^/^/^/^^/^/^^^/^/^/^^/\
2426 ^/^/^/^^/^^/^/^^^//^^/^^\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2428 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(/////////////////////////////////]\
2429 {]///////////////^//(______((/]^(______________(^^/(__((((_(/{/_______^.....~{\
2430 ]^^^]^^^/////{]/((((///^^^{~{^^^/^///(((((/]{///^^///(/^](_______________/!)\'\
2431 \'\')\')\',,\'!]//^/^/^/^//^/^/^/^^^/^///^//^/^/^/^/^/^/^/^/^/^/^^///^/^/^//^^\
2432 /^^/^^/^^/^/^/^/^^^/^^/^^),,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2434 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^//////////////////////////^{~~~{{]\
2435 ///////^///////^/(____________(((_____________((((_(_(_(_(/]/________(^.....]{\
2436 {]^^^^^^^//]{^(((((((////^^{~]^^^///(/(((^{^((((_(((_(_/]^_____________(]~^/^{\
2437 {~~!{{~{^//^/^/^//^/^///^/^///^//^/^/^/^/^/^/^/^/^/^/^^/^//^^^/^^/^/^^//^/^/^/\
2438 ^/^/^^/^/^/^/^/^/^/^!,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2440 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(///////////////////////^)\',\',,,\
2441 {(/////////////^^/________________((__________(/__(//^((^//(_(((_______(>.....\
2442 ]^{{]^^^^/^^{^((((((((////^/^^{~]////(/((/]]((_(_(_(__(___/]^___________/{{///\
2443 ///^//^/^{{^/^///^/^/^/^^/^//^^/^/^/^/^//^//^/^/^/^/^/^//^/^//^/^/^/^/^/^^/^/^\
2444 /^/^/^/^^^/^/^/^^^/^^//~,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2446 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](//////////////////////!,,,,,,,\'\
2447 {]]]]]^]^^^^^/^/_________________((_________/(__/^/(_(_((^^(__(/_______......]\
2448 ^]{{]^^^]{]^((_(_(_((((/////^^{{]///(((^{/(__(__(__(______/]^________({{^/^/^/\
2449 ^/^//^/^^{{^/^/^/^/^///^//^///^/^/^/^/^^/^/^//^/^/^/^/^^/^/^^/^/^/^^/^/^/^/^/^\
2450 ^/^^/^/^/^/^^^//^^/^^^/{,,,,,,,,,,,,,,,,,,,,,,,,,,",
2452 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'//////////////////////({\',,,,,\
2453 \'{/^^^^^^^]]]]]{{(_________________(]^/^///(/(/_(/^/________/^(_((______/....\
2454 ..//^]~]]]{{^/((((_(_(_((((///^//^{]^(/(/{^(__(__(__(___(_____/]/_____(^{]^^//\
2455 ^////^/^//^/^{{^//^///^/^//^/^^/^//^/^/^//^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/\
2456 ^^/^/^/^/^/^^/^/^^/^/^/^/^/^\',,,,,,,,,,,,,,,,,,,,,,,,",
2458 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(//////////////////////{!)!~{^(/\
2459 /////////////^(_________________(/((((/(^/^/__^^(_______(/^/_(]^]^^^/^......]^\
2460 ^]{~{~]^///((((__(_(((((//////^{]/(]{/(_(__________________/]/___/{{^///^//^/^\
2461 ////^/^/^^{{^//^/^/^/^/^///^/^//^//^/^/^/^/^//^/^/^/^/^/^/^/^/^/^/^/^/^^/^/^/^\
2462 /^/^^/^/^/^/^/^/^^/^^/^^^\',,,,,,,,,,,,,,,,,,,,,,,",
2464 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'///////////////////////////////\
2465 //////////////^/________________(/_________((_((^(_______(^^__(/_(_(((]......]\
2466 ]{]!\')~{{]{/]]^]^]]^]^]^^^^^^^^/]{{{^(((__(__(______________(^]/_^{]//^//^/^/\
2467 /^/^^///^///^{{]^^^///^/^/^^/^/^/^/^/^/^//^//^^//^//^/^/^/^/^/^/^/^/^/^/^/^/^/\
2468 ^/^^/^/^^/^/^/^^^/^/^/^^/^//),,,,,,,,,,,,,,,,,,,,,,",
2470 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(//////////////////////////////\
2471 //////////////^((____________(((___________(__(/^^((_((/^/(_(/_______^....../^\
2472 ]~{]~{^^//(((((_(_(((//^/^^^^^^]~!{]^]]^]^]]^]^]^]^/]/^//^(/(^{~~^^/^/^///^/^/\
2473 ///^//////]!\'\',,){///^////^//^//^//^//^/^/^//^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^\
2474 /^/^/^/^/^^^/^/^/^/^/^/^/^^//~,,,,,,,,,,,,,,,,,,,,,",
2476 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^(/////////////////////////////\
2477 ///////////////{~/((_______(((_____________(((__(//^^^//(__(((______(/.....]/{\
2478 ~]]]]~{^//(((__________((((((/^]//]/__________(__(_(((((/(///~)!{]{{{{{{{~]{^{\
2479 ~{{{{{]{]{\',,,,,,,~///^^/^/^/^/^/^/^/^/^/^/^/^/^/^//^//^/^/^/^/^/^/^/^/^/^/^/\
2480 ^/^/^/^///^^/^/^^/^^/^^/^/^^/{,,,,,,,,,,,,,,,,,,,,",
2482 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(//(//////////////////////////\
2483 /////////////]{]//^/^////^{](_______________/{/((____(_((/(__________/.....~{{\
2484 ^^]^]]~]//((_((__(__(_(___((/]](((^]/(_____________________/~]^{{^//////////^/\
2485 ////^^^^^^!,,,,,,,!^^/////^///^/^//^/^//^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^^/^\
2486 /^/^/^^^/^/^/^/^^/^/^/^^/^/^/]\',,,,,,,,,,,,,,,,,,",
2488 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](////////////////(///////////\
2489 ///////////^{{////////////^{/_____________/]^(_((((((((/^/___________/.....~^^\
2490 ^]^]]^{{]/(((__(_______(_((]]/____(^^/___________________(]{^//^{{^/^/^/^/^//^\
2491 /^/////////~\',,\'\'!]//^^^/^/^/^//^/^//^/^//^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^\
2492 /^/^^/^/^/^/^/^/^/^/^^/^/^/^^/^/^^\',,,,,,,,,,,,,,,,,",
2494 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(////(///////////////////////\
2495 ////////(^{{///////////////]{(_((_(_____/^^(____________^]/___________]....^/^\
2496 ^]]^]^^{{//(((__________(^{/_(_(___(^](_________________/{{^////^{{^///^///^//\
2497 /^/^^/^^/^//^]]]^/^///////^//^/^//^/^/^/^//^///^/^/^/^/^//^/^/^/^/^/^/^/^/^/^/\
2498 ^/^/^/^/^/^/^^/^/^/^^/^/^/^^/^//),,,,,,,,,,,,,,,,",
2500 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/////(////(////////////////\
2501 //////(^{{^////////////////^~!)))))!{///](_______________^^(((((((___(]...~^/^\
2502 ^^]]]^^^{]/(__(________/]^(_________(^^(______________({{]//^/^//^{{^///^/^/^/\
2503 //^//^///^/^////^//^^/^^/^/^///^/^//^//^/^/^/^//^//^/^//^/^/^/^/^/^/^/^/^/^/^/\
2504 ^/^/^/^/^^/^/^/^/^/^/^^/^/^/^/^//!,,,,,,,,,,,,,,,",
2506 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/(/////(//////////(//(/////\
2507 (/^^^/^]{^////////////////]!,,,,,,,,,,,\'{/______________((//((___(((//]]{..]/\
2508 ^^]^]^]^^^^{]((__(_____(^](____________(]^(____________^~]////////^/^{{^//////\
2509 ^/^/////^/^///^/^//^//^///^///^^//^/^/^/^/^//^/^/^/^//^/^/^//^/^/^/^/^/^/^/^/^\
2510 /^/^/^/^^/^/^/^/^/^/^/^/^/^^/^^^/^^/{,,,,,,,,,,,,,,",
2512 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(///////////(//////////(//{\
2513 !\'\',\'\']/////////////////!,,,,,,,,,,,,,,\')(____________(((___________/^(/{\
2514 {^//^^]^]^^^//^]^(______(^]/_______________/^^__________/{{^^//^/^/^////^{{^/^\
2515 ///^//^/^////^/^//^/^//^//^/^/^^///^///^///^//^/^/^/^/^/^/^/^/^/^//^//^/^/^/^/\
2516 ^/^/^/^/^/^/^/^^/^/^/^^/^^/^^/^/^/^^/^//]\',,,,,,,,,,,,",
2518 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'^(/////////////////////(^!\
2519 ,,,,,,,~////(///////////~,,,,,,,,,,,,,,,,,~___________/(______________((/(////\
2520 ^^]^]^^^///^]^_(___(]^((________________/]^_______(^~]///^//////^/^/^^{{///^//\
2521 //^//^/^//^//^///^//^/^/////^/^/^^//^^//^/^//^///^/^//^/^/^/^/^/^/^/^/^/^/^/^/\
2522 ^/^/^/^/^/^/^/^^/^/^/^/^/^/^/^//^/^^^^\',,,,,,,,,,,",
2524 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(//////(////////////////),\
2525 ,,,,,,)]]{{{{]{{{{{{]{~,,,,,,,,,,,,,,,,,,)/_________/(________________(//(///^\
2526 ^^^^^^///(/^]/__(^](____________________/]/_____/{{^/////^/^/////////]{{//^/^/\
2527 ^//^///^//^//^/^//^///^/^/^//^///^///^/^//^/^/^//^/^//^//^/^/^/^/^/^/^/^/^/^/^\
2528 /^/^/^/^/^/^/^/^/^/^/^/^^/^^/^^^/^/^/^),,,,,,,,,,",
2530 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^(/(////////(//(///////({\
2531 \',,,\'\'~^///////////////~\',,,,,,,,,,,,,,,,,){]]{]]]]]^^_________________((/\
2532 (////^^]^^^///(((]^(/{^_______________________/]/__(]{]//^/^//////^/^/^/^//]~]\
2533 //////^///^//^///^///^//^/^//^//^//^/^/^/^//^/^//^/^/^//^/^/^//^/^/^/^/^/^/^/^\
2534 /^/^/^/^/^/^/^/^^/^/^/^/^/^/^/^/^^/^/^/^/^//!,,,,,,,,,",
2536 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(//////(/////////(/////(^\
2537 ]{{]^/////////////////]\',,,,,,,,,,,,,,,,\']///////^/^/__________________/{{^{\
2538 ~{~~{~{~{]{^]^^~~~/(/(((((_(_(_____________(^^//{]^///////^/^////////////]{~{{\
2539 ]^//^/^////^/^/^/^/^///^/^//^/^//^//^//^/^/^/^//^/^/^/^//^/^//^/^//^//^//^//^/\
2540 ^/^/^/^/^/^//^/^/^/^/^/^/^/^//^/^/^^/^/^//!,,,,,,,,",
2542 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/(/////////////////////\
2543 /(/(///////////////////~,,,,,,,,,,,,,,,\'{//////////^/_________________(^^^^]^\
2544 ]]]{]]]]]]]^^~!!{^]]]]^{]{{]{]{{]{]]]]]^]^/]{!~]]^]^^^^^/^/^/^/^/^//^//]),,,,\
2545 \')^////^/^//////////^^////^////^//^/^/^///^//^/^//^//^/^/^/^/^//^/^/^/^/^/^/^\
2546 /^/^/^/^/^/^/^/^/^^/^^/^^/^/^^^/^/^///^{!\',,,,,,,,,,",
2548 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'(////////(/////////////\
2549 ///////////////////////(/~\',,,,,,,,,,,\'!]////////////^/_______________(/^^^^\
2550 ^^]]^]]]]^^^^]~{/]~]//////////^//^///^/^/^^/^{~~~]^]]]{]{{]{]{{{{{{{{{{{{!,,,,\
2551 ,,,\'^/^///^/^/^/^/^////^^//^/^/^/^///^//^/^/^//^/^//^/^/^//^//^/^/^/^/^/^/^/^\
2552 /^/^/^/^/^/^/^/^/^/^/^/^/^/^/^///^/^{)\',,,,,,,,,,,,,,",
2554 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(/(//(///////(////(////\
2555 ///////////////////////]{{]!\'\'\',\',\'\'~]///////////////^//____________(/^/\
2556 //^^^^^]]^]^^^^{{]///{{^//^///////////////////^{{^^{{////////^/^///////^//^/{\
2557 \',,,,,,)]///^////^//^//^/^//^/^//^///^/^//^/^////^///^/^//^//^/^/^/^//^//^/^/\
2558 ^/^/^/^/^/^/^/^/^/^/^/^/^/^/^/^^//^^{)\',,,,,,,,,,,,,,,,,,",
2560 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/////////(//////(/////\
2561 ////(//(////////////(/^{{/////^^^^^/{{////////////////]~]//((___((//^//^/^/^^^\
2562 ^^^^^^^^{~{/////^{{^///^///^///^///////^]~]///^~]//////////^/^/^////////{)\',,\
2563 \'){//^//^/^//^//^/////////^//^//^//^///^/^^/^/^/^//^//^/^/^//^/^/^/^//^/^/^//\
2564 ^//^/^/^/^/^/^/^/^/^/^/^//^~)\',,,,,,,,,,,,,,,,,,,,,,",
2566 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!((///////(//////////(/\
2567 ////////(//(///////^{{^////////////^{]/////////////^~]^////^//^//]{]//////^/^^\
2568 ^]^^^]~{^/^/^///^{{^///^///////^//^//^{{//////]~]//^/^/^///////^/^/^////^^]]//\
2569 /////^///^//^//^^/^/^/^/^/^/^//^//^/^////^/^///^/^/^///^/^//^/^//^/^///^/^/^/^\
2570 /^//^/^/^/^/^/^////^~)\',,,,,,,,,,,,,,,,,,,,,,,,,,",
2572 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^(//(///////(/////(///\
2573 //////////////(/(/]~^/(/////////////]{^//////////^{{^////////////^{{^//^/^/^^^\
2574 /^^^{~]^/^///////^{{//////^////////^{~^////^///]~]//////^//^////////^////////^\
2575 //^///^///^///////^//^//////^//^/^///^/^///^/^/^//^/^/^//^/^//^/^/^/^^/^/^/^/^\
2576 //^/^/^/^/^////]~\'\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2578 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)((///////////////////\
2579 /(/////////(////]{]/////////////////^{{^////////]{]///////////////^{{///////^/\
2580 ^/]~{^/^//^/^/////]{]//////^//^///]{]^//^///////]{]//////^///^/^/^///^/^//^///\
2581 ^//^///^////^/^/^//^//^/^/^//^///^/^//^//^/^/^//^//^//^/^//^/^/^//^///^///^/^/\
2582 ^^/^//^////]~\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2584 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](//(//(////(////////\
2585 /////(////^/^/^{{////////////////////^{]//////^~{//////////////////]{]///^////\
2586 ^~{^////^//////////{{]//////////^{{^///////^//^/^{{^/^/////////////^////^///^/\
2587 //^//^//^/^///^//^//////^//^//^/^//^/^/^/////^/^/^//^//^/^/^///^/^/^^//^^/^//^\
2588 //^////]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2590 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'(//////(////(//(//(\
2591 ///(////^~)\'\'\')~///////////////////////]{^^^/^{{^////////////////////{{]///\
2592 //^]~]^/^/^///^///^/////{{^////////]{]^/////^////////^{{^////^/^//^/^////^///^\
2593 ///^///^//^/////^/////^/^/^//^///^////^/////^/^/^////^/^/^//^///^/^//^///^//^/\
2594 /^////^]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2596 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(//////////////////\
2597 ////(/~,,,,,,,)/(///(///(//////////(/^{\'\'\'\'))^(//////////////////////{{^^^\
2598 /^~{^////^//////////////^{{^/////^{{^////^/////^//////^{{^/^/////////^/////^//\
2599 /^///^/////^/^///^/^//^///^///^/^//^/^/^/^^/^//^/^/^/^///^/^/^^/^//^/^/^/^/^//\
2600 //^{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2602 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/((////(//////////\
2603 ///////),,,,,,,\']/(//////////////////^!,,,,,,,~(/////////////////////^~\'\'\'\
2604 ,\'!^///^////^/////////////^{]^^^^]~]/////////^/////^////^{{/////^//^///^/^///\
2605 /^///^///^/^///^/^////^///^///^/////^////^/////^////^///^^//^/////^/^//^/^////\
2606 ^{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2608 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(//(////(//(//(//(\
2609 ////((]\',,,,,\'~///////////(///(////(]\',,,,,,,)/////////////////////]\',,,,,\
2610 ,\']/////^//////^///^/////])\',\'\')~//////^//////^/////^///]{{^^^///////////^\
2611 /////^///^/////^////^/^//^/^//^//^/^^//^/^//^/^/^/^/^//^////^//^^/^/^//^////^{\
2612 !\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2614 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^(////////////////\
2615 /(/////]~)!~{^/(/////(//////////////(~,,,,,\'\']////////////////////({\',,,,,,\
2616 ,!/////////////////////]),,,,,,\'](/^/////^/////^///////]!\'\',\'!]///^/^////^\
2617 /^/////////^///^/^//////////^//^////^////^///^////^/^/^/^/^/^////^/////^{)\',,\
2618 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2620 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(/(/(//(///(/////\
2621 ////////////(/////////////////////////]!))~]^(//////////////////////!,,,,,,)]/\
2622 ////////^///////////~,,,,,,,,~//////////^/////^////{\',,,,,,\']//////^/////^/^\
2623 /^/^///^/////^/^/^/^/^//^//^/^//^/^//^///^/^///^///^///^/^////^~)\',,,,,,,,,,,\
2624 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2626 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](//////(////(/(/\
2627 ////////(////////(/////(////(////////////(///////////////////////////{!)!~]^//\
2628 ///////////////^///(/!,,,,,,)]////^///////^////////{,,,,,,,,!///^/////^///////\
2629 ///^////^//////////////^/////^///^//^/^//^/^///^/^/^////^~),,,,,,,,,,,,,,,,,,,\
2630 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2632 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(//(////////////\
2633 (//(////////(//(//////////(////(///////(//////////////////////////////////////\
2634 ///////////^//////////{!))~{^///////^////////^//////!\',,,,,\'{/////^/////^//^\
2635 /^/^///^///^/^/^/^/^/^/^//^/^///^///^////^////^^//////]~),,,,,,,,,,,,,,,,,,,,,\
2636 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2638 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/////(/(//////\
2639 /////(///(/////////(//////////////(///////////////////////////////////////////\
2640 //////////////////////////////////////^////////^/////{!)!!{^///////^/^////////\
2641 ///^//^///////^////////////^//^/^//^/^//^/^/////]~),,,,,,,,,,,,,,,,,,,,,,,,,,,\
2642 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2644 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/(/(//////(/(/\
2645 /(/////////////////////(//////////////////////////////////////////////////////\
2646 ////////////////^///////////////^/////////^////////////////////^/^//////^/^///\
2647 ^///////^/^/^////^/^/^/^/^///^///^//^//^/////]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2648 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2650 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(/////////////\
2651 /(///(///////(//(//(//////////////////////////////////////////////////////////\
2652 ////^/////////////////////////////^////////^////////////^//^////////^/////^///\
2653 ^/^/^////////^/^/////^///^///^///^//////]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2654 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2656 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/(/(/(/(////(\
2657 ////(///(//(/////////////(//(//////(///(///(///(//////////////////////////////\
2658 /////////////////////////////////////^////////^//^//^/^//////////^/^////^/////\
2659 //////^/^//^//////^/^///^//^///^////^]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2660 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2662 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(///////(////\
2663 /////////////////////(////////(///////////////////////////////////////////////\
2664 //////^//////////^///////////^/////////^////////////////^////^//////^/////^/^/\
2665 /^//////^///^//^/////^////^////^{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2666 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2668 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^(////(/////(\
2669 //(//(//(//(//(//(//////////(/////////////////////////////////////////////////\
2670 //////////^//////////////^////////////////^///^///////////^////////////^//////\
2671 ///^//////^//^///^////^////^{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2672 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2674 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(((/////(///\
2675 //////////////////////(//(//////(//(///(///(///(//////////////////////////////\
2676 ////////////////////^//////////^///^//////////////^//^///////^//^///^///^//^//\
2677 ^////^/^//////^///^////^{)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2678 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2680 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]//(///////(\
2681 ///(//(//(//(//(///(//////////////////////////////(///////////////////////////\
2682 //////////////////////////////////////^////^///////////^//^///////^///////////\
2683 //^//////^/^///////^~)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2684 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2686 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'(//(/(/(//\
2687 /(///////////////(////////////(///////////////////////////////////////////////\
2688 //////////////////////////^///////////////////^//^/////////////^/////^///^//^/\
2689 ^///^//^////////^~)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2690 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2692 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/////////\
2693 //(///(//(//////////(//(//(////(//(/(///(///////////(/////////////////////////\
2694 /////////////////////////////^//////////^//////////^///////^////^/////^///////\
2695 ///////////]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2696 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2698 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/((//(/(/\
2699 (///(//////(/(////(///////////////////(/////(//(//////////(///////////////////\
2700 ///////////////^////////////////^//^/////////////////^//^////////////////^////\
2701 ^/^/////]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2702 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2704 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!(////////\
2705 /////(////////(/////(///(///(////////////////////(////(/////(/////////////////\
2706 ////////////////////^////////////////^////////^//////////////^///^////////^///\
2707 ///]~\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2708 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2710 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,^((//(///\
2711 (/(////(///(/////(///(///(/////(////////(/////////////////////////////////////\
2712 //////////////////////////////////////////^//////////////^////////^/^////////]\
2713 ~\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2714 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2716 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(/(///(/\
2717 ////(////(////(//////////////////(//(/////(///////////////////(///////////////\
2718 ////////////////////////////////////////////////^///^//^//////^//////////]!\',\
2719 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2720 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2722 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](//////\
2723 /(////(////(/////(///(////(/(///////////////(//(///(/////(//////(/////////////\
2724 /////////////////////////////////////^//////^/////////////^////////(^{!\',,,,,\
2725 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2726 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2728 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(/(/(/(\
2729 ///(////(////(/////(///(//////(//////(///////////////(////////////////////////\
2730 ////////////////////////^///////////////////////////////////////^{)\',,,,,,,,,\
2731 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2732 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2734 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,{(/////\
2735 /////(////(////(///////////////(//(///(//(/////////////////(//////////////////\
2736 ////////////////////////////////////////////////^///////////^{)\'\',,,,,,,,,,,\
2737 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2738 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2740 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/(/(/\
2741 (/(/////(////(////(///(//(/(/(//////////////(//(//(///////////////(///////////\
2742 //////////////////////////////^//////////^//////////^////^{)\',,,,,,,,,,,,,,,,\
2743 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2744 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2746 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(////\
2747 //(/(////(////(///(////////////(//(////////////////(///(//////(////(//////////\
2748 ///////////////////////////////^////////////^/////(/^~)\',,,,,,,,,,,,,,,,,,,,,\
2749 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2750 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2752 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'^(/(\
2753 ///////(////(////////(//(////////////(/(//////////////(///////////////////////\
2754 /////////////////////////////////////////////////^~),,,,,,,,,,,,,,,,,,,,,,,,,,\
2755 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2756 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2758 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!((/(\
2759 /(/(////(///(//(/(///////(//(//(///////(/(//(//(//////////(/////////(//(//////\
2760 //////////////////////////////////^/////////]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2761 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2762 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2764 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](//\
2765 ////(//////////////(/(///////////(///////////////(/////(//////////////////(///\
2766 ////////////////////////////////////////]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2767 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2768 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2770 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)(/(\
2771 /(///(/(/(/(/(//(/////(//(//(//////(/////(//(/////(/////////(//(//////////////\
2772 ////////////////////////////////////]~\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2773 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2774 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2776 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,](/\
2777 //(///////////////(///////////(//////(////////(/////(///(/////////////////////\
2778 //////////////////////////////(/]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2779 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2780 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2782 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'/\
2783 (///(/(/(/(//(/(/(////(/(/(/(///(//(////(//(//////////////(/////(//(///(////(/\
2784 /(///////////////////////////{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2785 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2786 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2788 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,~(\
2789 (/////////(///////(//////////(//////////////(///(//////////(/////////////(////\
2790 //////////////////////(^{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2791 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2792 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2794 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\'\
2795 /(/(//(/(/////(/(///(///(//(/////(/(/(///(////(/////(/(////////////(//////////\
2796 /////(/////////////(^{)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2797 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2798 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2800 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,!\
2801 ((///////(/(////(////(//////(/////////(/////////(///////(///(//(/////(////////\
2802 /(//////////(/(^{)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2803 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2804 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2806 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2807 ^(/(/(/(/////(///(/(///(/(////(/(//(/////(///(//////(//////////////////////(//\
2808 ///////(/((^~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2809 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2810 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2812 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2813 )(///////(/(/////////(/////(/////////(/////(////(/////(///(//////(/////(//////\
2814 ///(/(/^~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2815 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2816 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2818 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2819 ,]((/(/(//////(/(/(/////(///(///(/(///(/(////(////(////(//////(/////(///////(/\
2820 ((/]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2821 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2822 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2824 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2825 ,\'(//////(/(////////(/(///////(///////////(/////////(/////(///////(/////(/(//\
2826 ]!),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2827 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2828 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2830 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2831 ,,{(((/(////(/(/(/(////(/(/(//////(/(//(//////(/(//////(////(////////(/(/]!\',\
2832 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2833 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2834 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2836 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2837 ,,\'/////(/(/////////(////////(/(/////////(//(/////////////(///(/(/((/]!\',,,,\
2838 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2839 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2840 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2842 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2843 ,,,~(((/////(/(/(/(////(/(/(/////(//(/(//////////(/(//(/////(//(/{)\',,,,,,,,,\
2844 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2845 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2846 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2848 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2849 ,,,,^(/(/(//////////(////////(/(////////(/(/(/(/////////(/(//{!,,,,,,,,,,,,,,,\
2850 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2851 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2852 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2854 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2855 ,,,,)((///(/(/(/(/(//(/(/(/(//////(//(/////////(//(/(/((^{)\',,,,,,,,,,,,,,,,,\
2856 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2857 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2858 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2860 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2861 ,,,,,](/(////////////////////(/(///////(///(////(/(/^{),,,,,,,,,,,,,,,,,,,,,,,\
2862 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2863 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2864 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2866 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2867 ,,,,,)((/(/(/(/(/(/(/(/(/(/(////(/(/(////(///((/^~)\',,,,,,,,,,,,,,,,,,,,,,,,,\
2868 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2869 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2870 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2872 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2873 ,,,,,,{(///(///(/////////////(///////(/(/((/^~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2874 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2875 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2876 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2878 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2879 ,,,,,,\'/((///(//(/(/(/(/(/(///(/(/(/(/(/]~),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2880 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2881 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2882 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2884 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2885 ,,,,,,,~(/(///////(////////(////(/(/]!),,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2886 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2887 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2888 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2890 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2891 ,,,,,,,\'^(/(/(/(///(/(/(/(//(((/]!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2892 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2893 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2894 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2896 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2897 ,,,,,,,,!(/(///(/(/////(/((/{!\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2898 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2899 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2900 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2902 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2903 ,,,,,,,,,^((/(/////((((^])\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2904 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2905 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2906 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2908 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2909 ,,,,,,,,,)(///(((((^{)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2910 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2911 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2912 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2914 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2915 ,,,,,,,,,,{(((/^{)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2916 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2917 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2918 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2920 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2921 ,,,,,,,,,,\'^~)\',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2922 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2923 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2924 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2926 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2927 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2928 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2929 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2930 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2932 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2933 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2934 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2935 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2936 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2938 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2939 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2940 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2941 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2942 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2944 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2945 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2946 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2947 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2948 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2950 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2951 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2952 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2953 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2954 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2956 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2957 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2958 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2959 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2960 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2962 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2963 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2964 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2965 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2966 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2968 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2969 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2970 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2971 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2972 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2974 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2975 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2976 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2977 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2978 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2980 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2981 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2982 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2983 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2984 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2986 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2987 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2988 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2989 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2990 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2992 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2993 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2994 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2995 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2996 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
2998 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
2999 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3000 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3001 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3002 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
3004 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3005 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3006 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3007 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3008 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
3010 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3011 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3012 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3013 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3014 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
3016 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3017 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3018 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3019 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3020 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
3022 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3023 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3024 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3025 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3026 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,",
3028 ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3029 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3030 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3031 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,\
3032 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
3034 static Fl_Pixmap
pixmap_splash2(image_splash2
);
3036 Fl_Box
*box_versiontext
=(Fl_Box
*)0;
3038 Fl_Group
*tab_license
=(Fl_Group
*)0;
3040 Fl_Group
*tab_postcard
=(Fl_Group
*)0;
3042 Fl_Window
* make_aboutwindow() {
3044 { Fl_Window
* o
= new Fl_Window(400, 380, "Gipf for One");
3047 { Fl_Button
* o
= about_hiddenbutton
= new Fl_Button(0, 0, 400, 380);
3049 o
->shortcut(0xff0d);
3050 o
->callback((Fl_Callback
*)cb_about_hiddenbutton
);
3052 { Fl_Tabs
* o
= tabs
= new Fl_Tabs(10, 10, 380, 360);
3053 { Fl_Group
* o
= tab_image
= new Fl_Group(10, 30, 380, 340, "Gipf for One");
3055 { Fl_Box
* o
= new Fl_Box(20, 35, 360, 235);
3056 pixmap_splash2
.label(o
);
3058 { Fl_Box
* o
= box_versiontext
= new Fl_Box(20, 280, 360, 30, "Gipf for one v x.xx");
3059 o
->box(FL_THIN_DOWN_FRAME
);
3060 o
->labeltype(FL_EMBOSSED_LABEL
);
3063 { Fl_Box
* o
= new Fl_Box(20, 320, 360, 20, "(c) 1998-2000, Kurt Van den Branden");
3066 { Fl_Box
* o
= new Fl_Box(20, 340, 360, 20, "kurtvdb@village.uunet.be");
3067 o
->box(FL_FLAT_BOX
);
3072 { Fl_Group
* o
= tab_license
= new Fl_Group(10, 30, 380, 340, "License");
3074 { Fl_Box
* o
= new Fl_Box(20, 90, 350, 20, "Public License as published by the Free Software");
3075 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3077 { Fl_Box
* o
= new Fl_Box(20, 110, 350, 20, "Foudation; either version 2 of the License, or (at your");
3078 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3080 { Fl_Box
* o
= new Fl_Box(20, 130, 350, 20, "option) any later version.");
3081 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3083 { Fl_Box
* o
= new Fl_Box(20, 320, 350, 20, "for details, see the COPYING.txt file.");
3085 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3087 { Fl_Box
* o
= new Fl_Box(20, 50, 350, 20, "This program is free software; you can redistribute it");
3088 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3090 { Fl_Box
* o
= new Fl_Box(20, 70, 350, 20, "and/or modify it under the terms of the GNU General");
3091 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3093 { Fl_Box
* o
= new Fl_Box(20, 170, 350, 20, "This program is distributed in the hope that it will be");
3094 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3096 { Fl_Box
* o
= new Fl_Box(20, 190, 350, 20, "useful, but WITHOUT ANY WARRANTY: without even");
3097 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3099 { Fl_Box
* o
= new Fl_Box(20, 210, 350, 20, "the implied warranty of MERCHANTABILITY or");
3100 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3102 { Fl_Box
* o
= new Fl_Box(20, 230, 350, 20, "FITNESS FOR A PARTICULAR PURPOSE. See the");
3103 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3105 { Fl_Box
* o
= new Fl_Box(20, 250, 350, 20, "GNU General Public License for more details.");
3106 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3110 { Fl_Group
* o
= new Fl_Group(10, 30, 380, 340, "Acknowledgements");
3112 { Fl_Box
* o
= new Fl_Box(20, 40, 360, 30, "This program wouldn\'t have been possible without");
3113 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3115 { Fl_Box
* o
= new Fl_Box(20, 60, 350, 30, "these other pieces of fine software.");
3116 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3118 { Fl_Box
* o
= new Fl_Box(30, 90, 330, 30, "- The FLTK GUI library");
3120 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3122 { Fl_Box
* o
= new Fl_Box(30, 130, 330, 30, "- the GD image creation library");
3124 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3126 { Fl_Box
* o
= new Fl_Box(30, 170, 330, 30, "- libpng");
3128 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3130 { Fl_Box
* o
= new Fl_Box(30, 210, 330, 30, "- zlib");
3132 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3134 { Fl_Box
* o
= new Fl_Box(30, 250, 330, 30, "- the FileChooser widget");
3136 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3138 { Fl_Box
* o
= new Fl_Box(70, 110, 240, 20, "(c) Bill Spitzak and others");
3139 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3141 { Fl_Box
* o
= new Fl_Box(70, 150, 240, 20, "(c) Thomas Boutell and others");
3142 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3144 { Fl_Box
* o
= new Fl_Box(70, 190, 250, 20, "(c) the png-group");
3145 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3147 { Fl_Box
* o
= new Fl_Box(70, 230, 250, 20, "(c) Jean-loup Gailly and Mark Adler");
3148 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3150 { Fl_Box
* o
= new Fl_Box(70, 270, 250, 20, "(c) Michael Sweet");
3151 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3155 { Fl_Group
* o
= tab_postcard
= new Fl_Group(10, 30, 380, 340, "Send me a postcard");
3158 { Fl_Box
* o
= new Fl_Box(20, 40, 360, 30, "Please send me a (paper) postcard if you like GF1.");
3160 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3162 { Fl_Box
* o
= new Fl_Box(20, 80, 360, 30, "This will show to me that people appreciate the work I");
3163 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3165 { Fl_Group
* o
= new Fl_Group(110, 160, 180, 90);
3169 { Fl_Box
* o
= new Fl_Box(120, 160, 170, 30, "Kurt Van den Branden");
3170 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3172 { Fl_Box
* o
= new Fl_Box(120, 180, 170, 30, "Heiveldstraat 72");
3173 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3175 { Fl_Box
* o
= new Fl_Box(120, 200, 170, 30, "B-9120 Beveren");
3176 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3178 { Fl_Box
* o
= new Fl_Box(120, 220, 170, 30, "Belgium");
3179 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3183 { Fl_Box
* o
= new Fl_Box(30, 310, 340, 30, "PS: If you really like GF1,");
3185 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3187 { Fl_Box
* o
= new Fl_Box(30, 330, 340, 30, " you can also send me money ;-)");
3189 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3191 { Fl_Box
* o
= new Fl_Box(20, 100, 350, 30, "put into it.");
3192 o
->align(FL_ALIGN_LEFT
|FL_ALIGN_INSIDE
);
3196 o
->value (tab_image
);