blob: 18bc674b0a50fee87c7bcd12b608473059241627 [file] [log] [blame]
jeffhao5d1ac922011-09-29 17:41:15 -07001/*
2 * Copyright (C) 2009 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17import java.util.concurrent.*;
Yevgeny Rouband3a2dfa2014-03-18 15:55:16 +070018import java.util.concurrent.atomic.AtomicLong;
jeffhao5d1ac922011-09-29 17:41:15 -070019
20/**
21 * Test for Jit regressions.
22 */
23public class Main {
buzbeee62076c2012-03-21 14:26:16 -070024 public static int const0x1234() {
25 return 0x1234;
26 }
27
28 public static long const0x123443211234() {
29 return 0x123443211234L;
30 }
31
jeffhao5d1ac922011-09-29 17:41:15 -070032 public static void main(String args[]) throws Exception {
33 b2296099Test();
34 b2302318Test();
35 b2487514Test();
buzbee9ab05de2012-01-18 15:43:48 -080036 b5884080Test();
Brian Carlstromb20d24d2014-03-27 16:54:27 -070037 b13679511Test();
Vladimir Markof418f322014-07-09 14:45:36 +010038 b16177324TestWrapper();
buzbee4922ef92012-02-24 14:32:20 -080039 largeFrameTest();
Ian Rogers513c64a2012-02-26 15:16:23 -080040 largeFrameTestFloat();
Alexei Zavjalovc17ebe82014-02-26 10:38:23 +070041 mulBy1Test();
Alexei Zavjalov9d894662014-04-21 20:45:24 +070042 constantPropagationTest();
buzbeee62076c2012-03-21 14:26:16 -070043 getterSetterTest();
44 identityTest();
45 wideGetterSetterTest();
46 wideIdentityTest();
47 returnConstantTest();
Vladimir Markoe1fced12014-04-04 14:52:53 +010048 setterTestWithReturnArgIgnoreReturn();
49 setterTestWithReturnArgUseReturn();
50 wideSetterTestWithReturnArgIgnoreReturn();
51 wideSetterTestWithReturnArgUseReturn();
Vladimir Markodb406322014-02-19 14:11:19 +000052 LVNTests.testNPE1();
53 LVNTests.testNPE2();
Elliott Hughes5a8e3d52012-07-11 11:16:24 -070054 ZeroTests.longDivTest();
55 ZeroTests.longModTest();
Vladimir Markoa1a70742014-03-03 10:28:05 +000056 MirOpSelectTests.testIfCcz();
buzbee40bbb392014-03-19 12:28:16 -070057 ManyFloatArgs();
Yevgeny Rouband3a2dfa2014-03-18 15:55:16 +070058 atomicLong();
Chao-ying Fu3d325c62014-03-27 14:17:28 -070059 LiveFlags.test();
Yevgeny Rouband3a2dfa2014-03-18 15:55:16 +070060 }
61
62 public static void atomicLong() {
63 AtomicLong atomicLong = new AtomicLong();
64 atomicLong.addAndGet(3);
65 atomicLong.addAndGet(2);
66 atomicLong.addAndGet(1);
67 long result = atomicLong.get();
68 System.out.println(result == 6L ? "atomicLong passes" :
69 ("atomicLong failes: returns " + result + ", expected 6")
70 );
buzbeee62076c2012-03-21 14:26:16 -070071 }
72
73 public static void returnConstantTest() {
74 long res = const0x1234();
75 res += const0x123443211234();
76 Foo foo = new Foo();
77 res += foo.iConst0x1234();
78 res += foo.iConst0x123443211234();
79 if (res == 40031347689680L) {
80 System.out.println("returnConstantTest passes");
81 }
82 else {
83 System.out.println("returnConstantTest fails: " + res +
84 " (expecting 40031347689680)");
85 }
86 }
87
88 static void wideIdentityTest() {
89 Foo foo = new Foo();
Ian Rogers116848d2014-02-07 21:10:37 -080090 long i = 0x200000001L;
buzbeee62076c2012-03-21 14:26:16 -070091 i += foo.wideIdent0(i);
92 i += foo.wideIdent1(0,i);
93 i += foo.wideIdent2(0,0,i);
94 i += foo.wideIdent3(0,0,0,i);
95 i += foo.wideIdent4(0,0,0,0,i);
96 i += foo.wideIdent5(0,0,0,0,0,i);
Ian Rogers116848d2014-02-07 21:10:37 -080097 if (i == 0x8000000040L) {
buzbeee62076c2012-03-21 14:26:16 -070098 System.out.println("wideIdentityTest passes");
99 }
100 else {
Ian Rogers116848d2014-02-07 21:10:37 -0800101 System.out.println("wideIdentityTest fails: 0x" + Long.toHexString(i) +
102 " (expecting 0x8000000040)");
buzbeee62076c2012-03-21 14:26:16 -0700103 }
104 }
105
106 static void wideGetterSetterTest() {
107 Foo foo = new Foo();
108 long sum = foo.wideGetBar0();
109 sum += foo.wideGetBar1(1);
110 foo.wideSetBar1(sum);
111 sum += foo.wideGetBar2(1,2);
112 foo.wideSetBar2(0,sum);
113 sum += foo.wideGetBar3(1,2,3);
114 foo.wideSetBar3(0,0,sum);
115 sum += foo.wideGetBar4(1,2,3,4);
116 foo.wideSetBar4(0,0,0,sum);
117 sum += foo.wideGetBar5(1,2,3,4,5);
118 foo.wideSetBar5(0,0,0,0,sum);
Vladimir Marko8017ef82014-02-10 09:59:43 +0000119 long result1 = foo.wideGetBar0();
120 long expected1 = 1234L << 5;
121 sum += foo.wideGetBar0();
122 foo.wideSetBar2i(0,sum);
123 sum += foo.wideGetBar0();
124 foo.wideSetBar3i(0,0,sum);
125 sum += foo.wideGetBar0();
126 foo.wideSetBar4i(0,0,0,sum);
127 sum += foo.wideGetBar0();
128 foo.wideSetBar5i(0,0,0,0,sum);
129 long result2 = foo.wideGetBar0();
130 long expected2 = 1234L << 9;
131 if (result1 == expected1 && result2 == expected2) {
buzbeee62076c2012-03-21 14:26:16 -0700132 System.out.println("wideGetterSetterTest passes");
133 }
134 else {
135 System.out.println("wideGetterSetterTest fails: " +
Vladimir Marko8017ef82014-02-10 09:59:43 +0000136 "result1: " + result1 + " (expecting " + expected1 + "), " +
137 "result2: " + result2 + " (expecting " + expected2 + ")");
buzbeee62076c2012-03-21 14:26:16 -0700138 }
139 }
140
141 static void identityTest() {
142 Foo foo = new Foo();
143 int i = 1;
144 i += foo.ident0(i);
145 i += foo.ident1(0,i);
146 i += foo.ident2(0,0,i);
147 i += foo.ident3(0,0,0,i);
148 i += foo.ident4(0,0,0,0,i);
149 i += foo.ident5(0,0,0,0,0,i);
150 if (i == 64) {
151 System.out.println("identityTest passes");
152 }
153 else {
154 System.out.println("identityTest fails: " + i +
155 " (expecting 64)");
156 }
157 }
158
159 static void getterSetterTest() {
160 Foo foo = new Foo();
161 int sum = foo.getBar0();
162 sum += foo.getBar1(1);
163 foo.setBar1(sum);
164 sum += foo.getBar2(1,2);
165 foo.setBar2(0,sum);
166 sum += foo.getBar3(1,2,3);
167 foo.setBar3(0,0,sum);
168 sum += foo.getBar4(1,2,3,4);
169 foo.setBar4(0,0,0,sum);
170 sum += foo.getBar5(1,2,3,4,5);
171 foo.setBar5(0,0,0,0,sum);
buzbee97df07f2012-03-27 16:13:20 -0700172 Foo nullFoo = null;
173 try {
174 sum += Foo.barBar(nullFoo);
175 } catch(NullPointerException npe) {
176 sum += 404;
177 }
178 foo.setBar1(sum);
179 if (foo.getBar0() == 39892) {
buzbeee62076c2012-03-21 14:26:16 -0700180 System.out.println("getterSetterTest passes");
181 }
182 else {
183 System.out.println("getterSetterTest fails: " + foo.getBar0() +
buzbee97df07f2012-03-27 16:13:20 -0700184 " (expecting 39892)");
buzbeee62076c2012-03-21 14:26:16 -0700185 }
jeffhao5d1ac922011-09-29 17:41:15 -0700186 }
187
Vladimir Markoe1fced12014-04-04 14:52:53 +0100188 static void setterTestWithReturnArgIgnoreReturn() {
189 Foo foo = new Foo();
190 int sum = foo.getBar0();
191 sum += foo.getBar0();
192 foo.setBar1ReturnThis(sum);
193 sum += foo.getBar0();
194 foo.setBar2ReturnThis(1,sum);
195 sum += foo.getBar0();
196 foo.setBar3ReturnThis(1,2,sum);
197 sum += foo.getBar0();
198 foo.setBar4ReturnThis(1,2,3,sum);
199 sum += foo.getBar0();
200 foo.setBar5ReturnThis(1,2,3,4,sum);
201 sum += foo.getBar0();
202 foo.setBar1ReturnBarArg(sum);
203 sum += foo.getBar0();
204 foo.setBar2ReturnBarArg(1,sum);
205 sum += foo.getBar0();
206 foo.setBar3ReturnBarArg(1,2,sum);
207 sum += foo.getBar0();
208 foo.setBar4ReturnBarArg(1,2,3,sum);
209 sum += foo.getBar0();
210 foo.setBar5ReturnBarArg(1,2,3,4,sum);
211 sum += foo.getBar0();
212 foo.setBar2ReturnDummyArg1(1,sum);
213 sum += foo.getBar0();
214 foo.setBar3ReturnDummyArg2(1,2,sum);
215 sum += foo.getBar0();
216 foo.setBar4ReturnDummyArg3(1,2,3,sum);
217 sum += foo.getBar0();
218 foo.setBar5ReturnDummyArg4(1,2,3,4,sum);
219 sum += foo.getBar0();
220 Foo nullFoo = Foo.getNullFoo();
221 try {
222 nullFoo.setBar1ReturnThis(sum);
223 } catch(NullPointerException npe) {
224 sum += 404;
225 }
226 try {
227 nullFoo.setBar2ReturnThis(1, sum);
228 } catch(NullPointerException npe) {
229 sum += 2 * 404;
230 }
231 try {
232 nullFoo.setBar3ReturnThis(1, 2, sum);
233 } catch(NullPointerException npe) {
234 sum += 3 * 404;
235 }
236 try {
237 nullFoo.setBar4ReturnThis(1, 2, 3, sum);
238 } catch(NullPointerException npe) {
239 sum += 4 * 404;
240 }
241 try {
242 nullFoo.setBar5ReturnThis(1, 2, 3, 4, sum);
243 } catch(NullPointerException npe) {
244 sum += 5 * 404;
245 }
246 try {
247 nullFoo.setBar1ReturnBarArg(sum);
248 } catch(NullPointerException npe) {
249 sum += 6 * 404;
250 }
251 try {
252 nullFoo.setBar2ReturnBarArg(1, sum);
253 } catch(NullPointerException npe) {
254 sum += 7 * 404;
255 }
256 try {
257 nullFoo.setBar3ReturnBarArg(1, 2, sum);
258 } catch(NullPointerException npe) {
259 sum += 8 * 404;
260 }
261 try {
262 nullFoo.setBar4ReturnBarArg(1, 2, 3, sum);
263 } catch(NullPointerException npe) {
264 sum += 9 * 404;
265 }
266 try {
267 nullFoo.setBar5ReturnBarArg(1, 2, 3, 4, sum);
268 } catch(NullPointerException npe) {
269 sum += 10 * 404;
270 }
271 try {
272 nullFoo.setBar2ReturnDummyArg1(1, sum);
273 } catch(NullPointerException npe) {
274 sum += 11 * 404;
275 }
276 try {
277 nullFoo.setBar3ReturnDummyArg2(1, 2, sum);
278 } catch(NullPointerException npe) {
279 sum += 12 * 404;
280 }
281 try {
282 nullFoo.setBar4ReturnDummyArg3(1, 2, 3, sum);
283 } catch(NullPointerException npe) {
284 sum += 13 * 404;
285 }
286 try {
287 nullFoo.setBar5ReturnDummyArg4(1, 2, 3, 4, sum);
288 } catch(NullPointerException npe) {
289 sum += 14 * 404;
290 }
291 int expected = (1234 << 15) + 404 * (15 * 14 / 2);
292 if (sum == expected) {
293 System.out.println("setterTestWithReturnArgIgnoreReturn passes");
294 }
295 else {
296 System.out.println("setterTestWithReturnArgIgnoreReturn fails: " + sum +
297 " (expecting " + expected + ")");
298 }
299 }
300
301 static void setterTestWithReturnArgUseReturn() {
302 Foo foo = new Foo();
303 int sum = foo.getBar0();
304 int sumDummy = 0;
305 sum += foo.getBar0();
306 Foo foo2 = foo.setBar1ReturnThis(sum);
307 sum += foo2.getBar0();
308 foo = foo2.setBar2ReturnThis(1,sum);
309 sum += foo.getBar0();
310 foo2 = foo.setBar3ReturnThis(1,2,sum);
311 sum += foo2.getBar0();
312 foo = foo2.setBar4ReturnThis(1,2,3,sum);
313 sum += foo.getBar0();
314 foo = foo.setBar5ReturnThis(1,2,3,4,sum);
315 sum += foo.getBar0();
316 sum += foo.setBar1ReturnBarArg(sum);
317 sum += foo.getBar0();
318 sum += foo.setBar2ReturnBarArg(1,sum);
319 sum += foo.getBar0();
320 sum += foo.setBar3ReturnBarArg(1,2,sum);
321 sum += foo.getBar0();
322 sum += foo.setBar4ReturnBarArg(1,2,3,sum);
323 sum += foo.getBar0();
324 sum += foo.setBar5ReturnBarArg(1,2,3,4,sum);
325 sum += foo.getBar0();
326 sumDummy += foo.setBar2ReturnDummyArg1(1,sum);
327 sum += foo.getBar0();
328 sumDummy += foo.setBar3ReturnDummyArg2(1,2,sum);
329 sum += foo.getBar0();
330 sumDummy += foo.setBar4ReturnDummyArg3(1,2,3,sum);
331 sum += foo.getBar0();
332 sumDummy += foo.setBar5ReturnDummyArg4(1,2,3,4,sum);
333 sum += foo.getBar0();
334 Foo nullFoo = Foo.getNullFoo();
335 try {
336 foo = nullFoo.setBar1ReturnThis(sum);
337 } catch(NullPointerException npe) {
338 sum += 404;
339 }
340 try {
341 foo = nullFoo.setBar2ReturnThis(1, sum);
342 } catch(NullPointerException npe) {
343 sum += 2 * 404;
344 }
345 try {
346 foo = nullFoo.setBar3ReturnThis(1, 2, sum);
347 } catch(NullPointerException npe) {
348 sum += 3 * 404;
349 }
350 try {
351 foo = nullFoo.setBar4ReturnThis(1, 2, 3, sum);
352 } catch(NullPointerException npe) {
353 sum += 4 * 404;
354 }
355 try {
356 foo = nullFoo.setBar5ReturnThis(1, 2, 3, 4, sum);
357 } catch(NullPointerException npe) {
358 sum += 5 * 404;
359 }
360 try {
361 sum += nullFoo.setBar1ReturnBarArg(sum);
362 } catch(NullPointerException npe) {
363 sum += 6 * 404;
364 }
365 try {
366 sum += nullFoo.setBar2ReturnBarArg(1, sum);
367 } catch(NullPointerException npe) {
368 sum += 7 * 404;
369 }
370 try {
371 sum += nullFoo.setBar3ReturnBarArg(1, 2, sum);
372 } catch(NullPointerException npe) {
373 sum += 8 * 404;
374 }
375 try {
376 sum += nullFoo.setBar4ReturnBarArg(1, 2, 3, sum);
377 } catch(NullPointerException npe) {
378 sum += 9 * 404;
379 }
380 try {
381 sum += nullFoo.setBar5ReturnBarArg(1, 2, 3, 4, sum);
382 } catch(NullPointerException npe) {
383 sum += 10 * 404;
384 }
385 try {
386 sumDummy += nullFoo.setBar2ReturnDummyArg1(1, sum);
387 } catch(NullPointerException npe) {
388 sum += 11 * 404;
389 }
390 try {
391 sumDummy += nullFoo.setBar3ReturnDummyArg2(1, 2, sum);
392 } catch(NullPointerException npe) {
393 sum += 12 * 404;
394 }
395 try {
396 sumDummy += nullFoo.setBar4ReturnDummyArg3(1, 2, 3, sum);
397 } catch(NullPointerException npe) {
398 sum += 13 * 404;
399 }
400 try {
401 sumDummy += nullFoo.setBar5ReturnDummyArg4(1, 2, 3, 4, sum);
402 } catch(NullPointerException npe) {
403 sum += 14 * 404;
404 }
405 int expected = (1234 << 10) * 3 * 3 * 3 * 3 * 3 + 404 * (15 * 14 / 2);
406 int expectedDummy = 5 * 4 / 2;
407 if (sum == expected && sumDummy == expectedDummy) {
408 System.out.println("setterTestWithReturnArgUseReturn passes");
409 }
410 else {
411 System.out.println("setterTestWithReturnArgUseReturn fails: " + sum +
412 " (expecting " + expected + "), sumDummy = " + sumDummy +
413 "(expecting " + expectedDummy + ")");
414 }
415 }
416
417 static void wideSetterTestWithReturnArgIgnoreReturn() {
418 Foo foo = new Foo();
419 long sum = foo.wideGetBar0();
420 sum += foo.wideGetBar0();
421 foo.wideSetBar1ReturnThis(sum);
422 sum += foo.wideGetBar0();
423 foo.wideSetBar2ReturnThis(1,sum);
424 sum += foo.wideGetBar0();
425 foo.wideSetBar3ReturnThis(1,2,sum);
426 sum += foo.wideGetBar0();
427 foo.wideSetBar4ReturnThis(1,2,3,sum);
428 sum += foo.wideGetBar0();
429 foo.wideSetBar5ReturnThis(1,2,3,4,sum);
430 sum += foo.wideGetBar0();
431 foo.wideSetBar1ReturnBarArg(sum);
432 sum += foo.wideGetBar0();
433 foo.wideSetBar2ReturnBarArg(1,sum);
434 sum += foo.wideGetBar0();
435 foo.wideSetBar3ReturnBarArg(1,2,sum);
436 sum += foo.wideGetBar0();
437 foo.wideSetBar4ReturnBarArg(1,2,3,sum);
438 sum += foo.wideGetBar0();
439 foo.wideSetBar5ReturnBarArg(1,2,3,4,sum);
440 sum += foo.wideGetBar0();
441 foo.wideSetBar2iReturnBarArg(1,sum);
442 sum += foo.wideGetBar0();
443 foo.wideSetBar3iReturnBarArg(1,2,sum);
444 sum += foo.wideGetBar0();
445 foo.wideSetBar4iReturnBarArg(1,2,3,sum);
446 sum += foo.wideGetBar0();
447 foo.wideSetBar5iReturnBarArg(1,2,3,4,sum);
448 sum += foo.wideGetBar0();
449 foo.wideSetBar2ReturnDummyArg1(1,sum);
450 sum += foo.wideGetBar0();
451 foo.wideSetBar3ReturnDummyArg2(1,2,sum);
452 sum += foo.wideGetBar0();
453 foo.wideSetBar4ReturnDummyArg3(1,2,3,sum);
454 sum += foo.wideGetBar0();
455 foo.wideSetBar5ReturnDummyArg4(1,2,3,4,sum);
456 sum += foo.wideGetBar0();
457 foo.wideSetBar2iReturnDummyArg1(1,sum);
458 sum += foo.wideGetBar0();
459 foo.wideSetBar3iReturnDummyArg2(1,2,sum);
460 sum += foo.wideGetBar0();
461 foo.wideSetBar4iReturnDummyArg3(1,2,3,sum);
462 sum += foo.wideGetBar0();
463 foo.wideSetBar5iReturnDummyArg4(1,2,3,4,sum);
464 sum += foo.wideGetBar0();
465 Foo nullFoo = Foo.getNullFoo();
466 try {
467 nullFoo.wideSetBar1ReturnThis(sum);
468 } catch(NullPointerException npe) {
469 sum += 404;
470 }
471 try {
472 nullFoo.wideSetBar2ReturnThis(1, sum);
473 } catch(NullPointerException npe) {
474 sum += 2 * 404;
475 }
476 try {
477 nullFoo.wideSetBar3ReturnThis(1, 2, sum);
478 } catch(NullPointerException npe) {
479 sum += 3 * 404;
480 }
481 try {
482 nullFoo.wideSetBar4ReturnThis(1, 2, 3, sum);
483 } catch(NullPointerException npe) {
484 sum += 4 * 404;
485 }
486 try {
487 nullFoo.wideSetBar5ReturnThis(1, 2, 3, 4, sum);
488 } catch(NullPointerException npe) {
489 sum += 5 * 404;
490 }
491 try {
492 nullFoo.wideSetBar1ReturnBarArg(sum);
493 } catch(NullPointerException npe) {
494 sum += 6 * 404;
495 }
496 try {
497 nullFoo.wideSetBar2ReturnBarArg(1, sum);
498 } catch(NullPointerException npe) {
499 sum += 7 * 404;
500 }
501 try {
502 nullFoo.wideSetBar3ReturnBarArg(1, 2, sum);
503 } catch(NullPointerException npe) {
504 sum += 8 * 404;
505 }
506 try {
507 nullFoo.wideSetBar4ReturnBarArg(1, 2, 3, sum);
508 } catch(NullPointerException npe) {
509 sum += 9 * 404;
510 }
511 try {
512 nullFoo.wideSetBar5ReturnBarArg(1, 2, 3, 4, sum);
513 } catch(NullPointerException npe) {
514 sum += 10 * 404;
515 }
516 try {
517 nullFoo.wideSetBar2iReturnBarArg(1, sum);
518 } catch(NullPointerException npe) {
519 sum += 11 * 404;
520 }
521 try {
522 nullFoo.wideSetBar3iReturnBarArg(1, 2, sum);
523 } catch(NullPointerException npe) {
524 sum += 12 * 404;
525 }
526 try {
527 nullFoo.wideSetBar4iReturnBarArg(1, 2, 3, sum);
528 } catch(NullPointerException npe) {
529 sum += 13 * 404;
530 }
531 try {
532 nullFoo.wideSetBar5iReturnBarArg(1, 2, 3, 4, sum);
533 } catch(NullPointerException npe) {
534 sum += 14 * 404;
535 }
536 try {
537 nullFoo.wideSetBar2ReturnDummyArg1(1, sum);
538 } catch(NullPointerException npe) {
539 sum += 15 * 404;
540 }
541 try {
542 nullFoo.wideSetBar3ReturnDummyArg2(1, 2, sum);
543 } catch(NullPointerException npe) {
544 sum += 16 * 404;
545 }
546 try {
547 nullFoo.wideSetBar4ReturnDummyArg3(1, 2, 3, sum);
548 } catch(NullPointerException npe) {
549 sum += 17 * 404;
550 }
551 try {
552 nullFoo.wideSetBar5ReturnDummyArg4(1, 2, 3, 4, sum);
553 } catch(NullPointerException npe) {
554 sum += 18 * 404;
555 }
556 try {
557 nullFoo.wideSetBar2iReturnDummyArg1(1, sum);
558 } catch(NullPointerException npe) {
559 sum += 19 * 404;
560 }
561 try {
562 nullFoo.wideSetBar3iReturnDummyArg2(1, 2, sum);
563 } catch(NullPointerException npe) {
564 sum += 20 * 404;
565 }
566 try {
567 nullFoo.wideSetBar4iReturnDummyArg3(1, 2, 3, sum);
568 } catch(NullPointerException npe) {
569 sum += 21 * 404;
570 }
571 try {
572 nullFoo.wideSetBar5iReturnDummyArg4(1, 2, 3, 4, sum);
573 } catch(NullPointerException npe) {
574 sum += 22 * 404;
575 }
576 long expected = (1234L << 23) + 404 * (23 * 22 / 2);
577 if (sum == expected) {
578 System.out.println("wideSetterTestWithReturnArgIgnoreReturn passes");
579 }
580 else {
581 System.out.println("wideSetterTestWithReturnArgIgnoreReturn fails: " + sum +
582 " (expecting " + expected + ")");
583 }
584 }
585
586 static void wideSetterTestWithReturnArgUseReturn() {
587 Foo foo = new Foo();
588 long sum = foo.wideGetBar0();
589 long sumDummy = 0;
590 sum += foo.wideGetBar0();
591 Foo foo2 = foo.wideSetBar1ReturnThis(sum);
592 sum += foo2.wideGetBar0();
593 foo = foo2.wideSetBar2ReturnThis(1,sum);
594 sum += foo.wideGetBar0();
595 foo2 = foo.wideSetBar3ReturnThis(1,2,sum);
596 sum += foo2.wideGetBar0();
597 foo = foo2.wideSetBar4ReturnThis(1,2,3,sum);
598 sum += foo.wideGetBar0();
599 foo = foo.wideSetBar5ReturnThis(1,2,3,4,sum);
600 sum += foo.wideGetBar0();
601 sum += foo.wideSetBar1ReturnBarArg(sum);
602 sum += foo.wideGetBar0();
603 sum += foo.wideSetBar2ReturnBarArg(1,sum);
604 sum += foo.wideGetBar0();
605 sum += foo.wideSetBar3ReturnBarArg(1,2,sum);
606 sum += foo.wideGetBar0();
607 sum += foo.wideSetBar4ReturnBarArg(1,2,3,sum);
608 sum += foo.wideGetBar0();
609 sum += foo.wideSetBar5ReturnBarArg(1,2,3,4,sum);
610 sum += foo.wideGetBar0();
611 sum += foo.wideSetBar2iReturnBarArg(1,sum);
612 sum += foo.wideGetBar0();
613 sum += foo.wideSetBar3iReturnBarArg(1,2,sum);
614 sum += foo.wideGetBar0();
615 sum += foo.wideSetBar4iReturnBarArg(1,2,3,sum);
616 sum += foo.wideGetBar0();
617 sum += foo.wideSetBar5iReturnBarArg(1,2,3,4,sum);
618 sum += foo.wideGetBar0();
619 sumDummy += foo.wideSetBar2ReturnDummyArg1(1,sum);
620 sum += foo.wideGetBar0();
621 sumDummy += foo.wideSetBar3ReturnDummyArg2(1,2,sum);
622 sum += foo.wideGetBar0();
623 sumDummy += foo.wideSetBar4ReturnDummyArg3(1,2,3,sum);
624 sum += foo.wideGetBar0();
625 sumDummy += foo.wideSetBar5ReturnDummyArg4(1,2,3,4,sum);
626 sum += foo.wideGetBar0();
627 sumDummy += foo.wideSetBar2iReturnDummyArg1(1,sum);
628 sum += foo.wideGetBar0();
629 sumDummy += foo.wideSetBar3iReturnDummyArg2(1,2,sum);
630 sum += foo.wideGetBar0();
631 sumDummy += foo.wideSetBar4iReturnDummyArg3(1,2,3,sum);
632 sum += foo.wideGetBar0();
633 sumDummy += foo.wideSetBar5iReturnDummyArg4(1,2,3,4,sum);
634 sum += foo.wideGetBar0();
635 Foo nullFoo = Foo.getNullFoo();
636 try {
637 foo = nullFoo.wideSetBar1ReturnThis(sum);
638 } catch(NullPointerException npe) {
639 sum += 404;
640 }
641 try {
642 foo = nullFoo.wideSetBar2ReturnThis(1, sum);
643 } catch(NullPointerException npe) {
644 sum += 2 * 404;
645 }
646 try {
647 foo = nullFoo.wideSetBar3ReturnThis(1, 2, sum);
648 } catch(NullPointerException npe) {
649 sum += 3 * 404;
650 }
651 try {
652 foo = nullFoo.wideSetBar4ReturnThis(1, 2, 3, sum);
653 } catch(NullPointerException npe) {
654 sum += 4 * 404;
655 }
656 try {
657 foo = nullFoo.wideSetBar5ReturnThis(1, 2, 3, 4, sum);
658 } catch(NullPointerException npe) {
659 sum += 5 * 404;
660 }
661 try {
662 sum += nullFoo.wideSetBar1ReturnBarArg(sum);
663 } catch(NullPointerException npe) {
664 sum += 6 * 404;
665 }
666 try {
667 sum += nullFoo.wideSetBar2ReturnBarArg(1, sum);
668 } catch(NullPointerException npe) {
669 sum += 7 * 404;
670 }
671 try {
672 sum += nullFoo.wideSetBar3ReturnBarArg(1, 2, sum);
673 } catch(NullPointerException npe) {
674 sum += 8 * 404;
675 }
676 try {
677 sum += nullFoo.wideSetBar4ReturnBarArg(1, 2, 3, sum);
678 } catch(NullPointerException npe) {
679 sum += 9 * 404;
680 }
681 try {
682 sum += nullFoo.wideSetBar5ReturnBarArg(1, 2, 3, 4, sum);
683 } catch(NullPointerException npe) {
684 sum += 10 * 404;
685 }
686 try {
687 sum += nullFoo.wideSetBar2iReturnBarArg(1, sum);
688 } catch(NullPointerException npe) {
689 sum += 11 * 404;
690 }
691 try {
692 sum += nullFoo.wideSetBar3iReturnBarArg(1, 2, sum);
693 } catch(NullPointerException npe) {
694 sum += 12 * 404;
695 }
696 try {
697 sum += nullFoo.wideSetBar4iReturnBarArg(1, 2, 3, sum);
698 } catch(NullPointerException npe) {
699 sum += 13 * 404;
700 }
701 try {
702 sum += nullFoo.wideSetBar5iReturnBarArg(1, 2, 3, 4, sum);
703 } catch(NullPointerException npe) {
704 sum += 14 * 404;
705 }
706 try {
707 sumDummy += nullFoo.wideSetBar2ReturnDummyArg1(1, sum);
708 } catch(NullPointerException npe) {
709 sum += 15 * 404;
710 }
711 try {
712 sumDummy += nullFoo.wideSetBar3ReturnDummyArg2(1, 2, sum);
713 } catch(NullPointerException npe) {
714 sum += 16 * 404;
715 }
716 try {
717 sumDummy += nullFoo.wideSetBar4ReturnDummyArg3(1, 2, 3, sum);
718 } catch(NullPointerException npe) {
719 sum += 17 * 404;
720 }
721 try {
722 sumDummy += nullFoo.wideSetBar5ReturnDummyArg4(1, 2, 3, 4, sum);
723 } catch(NullPointerException npe) {
724 sum += 18 * 404;
725 }
726 try {
727 sumDummy += nullFoo.wideSetBar2iReturnDummyArg1(1, sum);
728 } catch(NullPointerException npe) {
729 sum += 19 * 404;
730 }
731 try {
732 sumDummy += nullFoo.wideSetBar3iReturnDummyArg2(1, 2, sum);
733 } catch(NullPointerException npe) {
734 sum += 20 * 404;
735 }
736 try {
737 sumDummy += nullFoo.wideSetBar4iReturnDummyArg3(1, 2, 3, sum);
738 } catch(NullPointerException npe) {
739 sum += 21 * 404;
740 }
741 try {
742 sumDummy += nullFoo.wideSetBar5iReturnDummyArg4(1, 2, 3, 4, sum);
743 } catch(NullPointerException npe) {
744 sum += 22 * 404;
745 }
746 long expected = (1234L << 14) * 3 * 3 * 3 * 3 * 3 * 3 * 3 * 3 * 3 + 404 * (23 * 22 / 2);
747 long expectedDummy = 2 * (5 * 4 / 2);
748 if (sum == expected && sumDummy == expectedDummy) {
749 System.out.println("wideSetterTestWithReturnArgUseReturn passes");
750 }
751 else {
752 System.out.println("wideSetterTestWithReturnArgUseReturn fails: " + sum +
753 " (expecting " + expected + "), sumDummy = " + sumDummy +
754 "(expecting " + expectedDummy + ")");
755 }
756 }
757
Alexei Zavjalovc17ebe82014-02-26 10:38:23 +0700758 static void mulBy1Test() {
759 long res;
760 long j = 1;
761 res = 1 * j + j;
762 if (res == 2L) {
763 System.out.println("mulBy1Test passes");
764 }
765 else {
766 System.out.println("mulBy1Test fails: " + res +
767 " (expecting 2)");
768 }
769 }
770
Alexei Zavjalov9d894662014-04-21 20:45:24 +0700771 static void constantPropagationTest() {
772 int i = 1;
773 int t = 1;
774 float z = 1F;
775 long h = 1L;
776 int g[] = new int[1];
777 int w = 1;
778 long f = 0;
779
780 for (int a = 1; a < 100; a++) {
781 try {
782 i = (int)(z);
783 h >>= (0 % t);
784 }
785 finally {
786 w = (int)(2 * (f * 6));
787 }
788 }
789
790 if (w == 0 && h == 1 && g[0] == 0) {
791 System.out.println("constantPropagationTest passes");
792 } else {
793 System.out.println("constantPropagationTest fails");
794 }
795 }
796
jeffhao5d1ac922011-09-29 17:41:15 -0700797 static void b2296099Test() throws Exception {
798 int x = -1190771042;
799 int dist = 360530809;
800 int xl = -1190771042;
801 int distl = 360530809;
802
803 for (int i = 0; i < 100000; i++) {
804 int b = rotateLeft(x, dist);
805 if (b != 1030884493)
806 throw new RuntimeException("Unexpected value: " + b
807 + " after " + i + " iterations");
808 }
809 for (int i = 0; i < 100000; i++) {
810 long bl = rotateLeft(xl, distl);
811 if (bl != 1030884493)
812 throw new RuntimeException("Unexpected value: " + bl
813 + " after " + i + " iterations");
814 }
815 System.out.println("b2296099 passes");
816 }
817
818 static int rotateLeft(int i, int distance) {
819 return ((i << distance) | (i >>> (-distance)));
820 }
821
822 static void b2302318Test() {
Mathieu Chartier7befd0e2014-02-03 17:48:41 -0800823 Runtime.getRuntime().gc();
jeffhao5d1ac922011-09-29 17:41:15 -0700824
825 SpinThread slow = new SpinThread(Thread.MIN_PRIORITY);
826 SpinThread fast1 = new SpinThread(Thread.NORM_PRIORITY);
827 SpinThread fast2 = new SpinThread(Thread.MAX_PRIORITY);
828
829 slow.setDaemon(true);
830 fast1.setDaemon(true);
831 fast2.setDaemon(true);
832
833 fast2.start();
834 slow.start();
835 fast1.start();
836 try {
837 Thread.sleep(3000);
838 } catch (InterruptedException ie) {/*ignore */}
Mathieu Chartier7befd0e2014-02-03 17:48:41 -0800839 Runtime.getRuntime().gc();
jeffhao5d1ac922011-09-29 17:41:15 -0700840
841 System.out.println("b2302318 passes");
842 }
843
844 static void b2487514Test() {
845 PriorityBlockingQueue q = new PriorityBlockingQueue(10);
846 int catchCount = 0;
847
848 q.offer(new Integer(0));
849 /*
850 * Warm up the code cache to have toArray() compiled. The key here is
851 * to pass a compatible type so that there are no exceptions when
852 * executing the method body (ie the APUT_OBJECT bytecode).
853 */
854 for (int i = 0; i < 1000; i++) {
855 Integer[] ints = (Integer[]) q.toArray(new Integer[5]);
856 }
857
858 /* Now pass an incompatible type which is guaranteed to throw */
859 for (int i = 0; i < 1000; i++) {
860 try {
861 Object[] obj = q.toArray(new String[5]);
862 }
863 catch (ArrayStoreException success) {
864 catchCount++;
865 }
866 }
867
868 if (catchCount == 1000) {
869 System.out.println("b2487514 passes");
870 }
871 else {
872 System.out.println("b2487514 fails: catchCount is " + catchCount +
873 " (expecting 1000)");
874 }
875 }
buzbee9ab05de2012-01-18 15:43:48 -0800876
877 static void b5884080Test() {
878 int vA = 1;
879
880 int l = 0;
881 do
882 {
883 int k = 0;
884 do
885 vA += 1;
Elliott Hughesb25c3f62012-03-26 16:35:06 -0700886 while (++k < 100);
887 } while (++l < 1000);
buzbee9ab05de2012-01-18 15:43:48 -0800888 if (vA == 100001) {
889 System.out.println("b5884080 passes");
890 }
891 else {
892 System.out.println("b5884080 fails: vA is " + vA +
893 " (expecting 100001)");
894 }
895 }
buzbee4922ef92012-02-24 14:32:20 -0800896
Brian Carlstromb20d24d2014-03-27 16:54:27 -0700897 static void b13679511Test() {
898 System.out.println("b13679511Test starting");
899 int[] nn = { 1, 2, 3, 4 };
900 for (int i : nn) {
901 System.out.println(i);
902 }
903 int len = nn.length;
904 System.out.println(nn.length);
905 System.out.println(nn.length % 3);
906 System.out.println(len % 3);
907 System.out.println(4 % 3);
908 System.out.println((nn.length % 3) != 1);
909 System.out.println("b13679511Test finishing");
910 }
911
Vladimir Markof418f322014-07-09 14:45:36 +0100912 static void b16177324TestWrapper() {
913 try {
914 b16177324Test();
915 } catch (NullPointerException expected) {
916 System.out.println("b16177324TestWrapper caught NPE as expected.");
917 }
918 }
919
920 static void b16177324Test() {
921 // We need this to be a single BasicBlock. Putting it into a try block would cause it to
922 // be split at each insn that can throw. So we do the try-catch in a wrapper function.
923 int v1 = B16177324Values.values[0]; // Null-check on array element access.
924 int v2 = B16177324ValuesKiller.values[0]; // clinit<>() sets B16177324Values.values to null.
925 int v3 = B16177324Values.values[0]; // Should throw NPE.
926 // If the null-check for v3 was eliminated we should fail with SIGSEGV.
927 System.out.println("Unexpectedly retrieved all values: " + v1 + ", " + v2 + ", " + v3);
928 }
929
buzbee40bbb392014-03-19 12:28:16 -0700930 static double TooManyArgs(
931 long l00,
932 long l01,
933 long l02,
934 long l03,
935 long l04,
936 long l05,
937 long l06,
938 long l07,
939 long l08,
940 long l09,
941 long l10,
942 long l11,
943 long l12,
944 long l13,
945 long l14,
946 long l15,
947 long l16,
948 long l17,
949 long l18,
950 long l19,
951 long l20,
952 long l21,
953 long l22,
954 long l23,
955 long l24,
956 long l25,
957 long l26,
958 long l27,
959 long l28,
960 long l29,
961 long l30,
962 long l31,
963 long l32,
964 long l33,
965 long l34,
966 long l35,
967 long l36,
968 long l37,
969 long l38,
970 long l39,
971 long l40,
972 long l41,
973 long l42,
974 long l43,
975 long l44,
976 long l45,
977 long l46,
978 long l47,
979 long l48,
980 long l49,
981 long ll00,
982 long ll01,
983 long ll02,
984 long ll03,
985 long ll04,
986 long ll05,
987 long ll06,
988 long ll07,
989 long ll08,
990 long ll09,
991 long ll10,
992 long ll11,
993 long ll12,
994 long ll13,
995 long ll14,
996 long ll15,
997 long ll16,
998 long ll17,
999 long ll18,
1000 long ll19,
1001 double d01,
1002 double d02,
1003 double d03,
1004 double d04,
1005 double d05,
1006 double d06,
1007 double d07,
1008 double d08,
1009 double d09,
1010 double d10,
1011 double d11,
1012 double d12,
1013 double d13,
1014 double d14,
1015 double d15,
1016 double d16,
1017 double d17,
1018 double d18,
1019 double d19,
1020 double d20,
1021 double d21,
1022 double d22,
1023 double d23,
1024 double d24,
1025 double d25,
1026 double d26,
1027 double d27,
1028 double d28,
1029 double d29,
1030 double d30,
1031 double d31,
1032 double d32,
1033 double d33,
1034 double d34,
1035 double d35,
1036 double d36,
1037 double d37,
1038 double d38,
1039 double d39,
1040 double d40,
1041 double d41,
1042 double d42,
1043 double d43,
1044 double d44,
1045 double d45,
1046 double d46,
1047 double d47,
1048 double d48,
1049 double d49) {
1050 double res = 0.0;
1051 double t01 = d49;
1052 double t02 = 02.0 + t01;
1053 double t03 = 03.0 + t02;
1054 double t04 = 04.0 + t03;
1055 double t05 = 05.0 + t04;
1056 double t06 = 06.0 + t05;
1057 double t07 = 07.0 + t06;
1058 double t08 = 08.0 + t07;
1059 double t09 = 09.0 + t08;
1060 double t10 = 10.0 + t09;
1061 double t11 = 11.0 + t10;
1062 double t12 = 12.0 + t11;
1063 double t13 = 13.0 + t12;
1064 double t14 = 14.0 + t13;
1065 double t15 = 15.0 + t14;
1066 double t16 = 16.0 + t15;
1067 double t17 = 17.0 + t16;
1068 double t18 = 18.0 + t17;
1069 double t19 = 19.0 + t18;
1070 double t20 = 20.0 + t19;
1071 double t21 = 21.0 + t20;
1072 double t22 = 22.0 + t21;
1073 double t23 = 23.0 + t22;
1074 double t24 = 24.0 + t23;
1075 double t25 = 25.0 + t24;
1076 double t26 = 26.0 + t25;
1077 double t27 = 27.0 + t26;
1078 double t28 = 28.0 + t27;
1079 double t29 = 29.0 + t28;
1080 double t30 = 30.0 + t29;
1081 double t31 = 31.0 + t30;
1082 double t32 = 32.0 + t31;
1083 double t33 = 33.0 + t32;
1084 double t34 = 34.0 + t33;
1085 double t35 = 35.0 + t34;
1086 double t36 = 36.0 + t35;
1087 double t37 = 37.0 + t36;
1088 double t38 = 38.0 + t37;
1089 double t39 = 39.0 + t38;
1090 double t40 = 40.0 + t39;
1091 double tt02 = 02.0 + t40;
1092 double tt03 = 03.0 + tt02;
1093 double tt04 = 04.0 + tt03;
1094 double tt05 = 05.0 + tt04;
1095 double tt06 = 06.0 + tt05;
1096 double tt07 = 07.0 + tt06;
1097 double tt08 = 08.0 + tt07;
1098 double tt09 = 09.0 + tt08;
1099 double tt10 = 10.0 + tt09;
1100 double tt11 = 11.0 + tt10;
1101 double tt12 = 12.0 + tt11;
1102 double tt13 = 13.0 + tt12;
1103 double tt14 = 14.0 + tt13;
1104 double tt15 = 15.0 + tt14;
1105 double tt16 = 16.0 + tt15;
1106 double tt17 = 17.0 + tt16;
1107 double tt18 = 18.0 + tt17;
1108 double tt19 = 19.0 + tt18;
1109 double tt20 = 20.0 + tt19;
1110 double tt21 = 21.0 + tt20;
1111 double tt22 = 22.0 + tt21;
1112 double tt23 = 23.0 + tt22;
1113 double tt24 = 24.0 + tt23;
1114 double tt25 = 25.0 + tt24;
1115 double tt26 = 26.0 + tt25;
1116 double tt27 = 27.0 + tt26;
1117 double tt28 = 28.0 + tt27;
1118 double tt29 = 29.0 + tt28;
1119 double tt30 = 30.0 + tt29;
1120 double tt31 = 31.0 + tt30;
1121 double tt32 = 32.0 + tt31;
1122 double tt33 = 33.0 + tt32;
1123 double tt34 = 34.0 + tt33;
1124 double tt35 = 35.0 + tt34;
1125 double tt36 = 36.0 + tt35;
1126 double tt37 = 37.0 + tt36;
1127 double tt38 = 38.0 + tt37;
1128 double tt39 = 39.0 + tt38;
1129 double tt40 = 40.0 + tt39;
1130 double ttt02 = 02.0 + tt40;
1131 double ttt03 = 03.0 + ttt02;
1132 double ttt04 = 04.0 + ttt03;
1133 double ttt05 = 05.0 + ttt04;
1134 double ttt06 = 06.0 + ttt05;
1135 double ttt07 = 07.0 + ttt06;
1136 double ttt08 = 08.0 + ttt07;
1137 double ttt09 = 09.0 + ttt08;
1138 double ttt10 = 10.0 + ttt09;
1139 double ttt11 = 11.0 + ttt10;
1140 double ttt12 = 12.0 + ttt11;
1141 double ttt13 = 13.0 + ttt12;
1142 double ttt14 = 14.0 + ttt13;
1143 double ttt15 = 15.0 + ttt14;
1144 double ttt16 = 16.0 + ttt15;
1145 double ttt17 = 17.0 + ttt16;
1146 double ttt18 = 18.0 + ttt17;
1147 double ttt19 = 19.0 + ttt18;
1148 double ttt20 = 20.0 + ttt19;
1149 double ttt21 = 21.0 + ttt20;
1150 double ttt22 = 22.0 + ttt21;
1151 double ttt23 = 23.0 + ttt22;
1152 double ttt24 = 24.0 + ttt23;
1153 double ttt25 = 25.0 + ttt24;
1154 double ttt26 = 26.0 + ttt25;
1155 double ttt27 = 27.0 + ttt26;
1156 double ttt28 = 28.0 + ttt27;
1157 double ttt29 = 29.0 + ttt28;
1158 double ttt30 = 30.0 + ttt29;
1159 double ttt31 = 31.0 + ttt30;
1160 // Repeatedly use some doubles from the middle of the pack to trigger promotion from frame-passed args.
1161 for (int i = 0; i < 100; i++) {
1162 res += d40;
1163 res += d41;
1164 res += d42;
1165 res += d43;
1166 res += d44;
1167 res += d45;
1168 res += d46;
1169 res += d47;
1170 res += d48;
1171 }
1172 for (int i = 0; i < 100; i++) {
1173 res += d40;
1174 res += d41;
1175 res += d42;
1176 res += d43;
1177 res += d44;
1178 res += d45;
1179 res += d46;
1180 res += d47;
1181 res += d48;
1182 }
1183 for (int i = 0; i < 100; i++) {
1184 res += d40;
1185 res += d41;
1186 res += d42;
1187 res += d43;
1188 res += d44;
1189 res += d45;
1190 res += d46;
1191 res += d47;
1192 res += d48;
1193 }
1194 for (int i = 0; i < 100; i++) {
1195 res += d40;
1196 res += d41;
1197 res += d42;
1198 res += d43;
1199 res += d44;
1200 res += d45;
1201 res += d46;
1202 res += d47;
1203 res += d48;
1204 }
1205 return res + tt40;
1206 }
1207
1208 public static void ManyFloatArgs() {
1209 double res = TooManyArgs(
1210 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1211 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1212 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1213 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1214 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1215 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1216 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
1217 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0,
1218 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0, 21.0, 22.0, 23.0,
1219 24.0, 25.0, 26.0, 27.0, 28.0, 29.0, 30.0, 31.0, 32.0, 33.0, 34.0,
1220 35.0, 36.0, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49);
1221 if ((long)res == 160087) {
1222 System.out.println("ManyFloatArgs passes");
1223 } else {
buzbee6a8958d2014-03-20 07:07:53 -07001224 System.out.println("ManyFloatArgs fails, expected 160087, got: " + res);
buzbee40bbb392014-03-19 12:28:16 -07001225 }
1226 }
buzbee4922ef92012-02-24 14:32:20 -08001227 static long largeFrame() {
1228 int i0 = 0;
1229 long l0 = 0;
1230 int i1 = 1;
1231 long l1 = 1;
1232 int i2 = 2;
1233 long l2 = 2;
1234 int i3 = 3;
1235 long l3 = 3;
1236 int i4 = 4;
1237 long l4 = 4;
1238 int i5 = 5;
1239 long l5 = 5;
1240 int i6 = 6;
1241 long l6 = 6;
1242 int i7 = 7;
1243 long l7 = 7;
1244 int i8 = 8;
1245 long l8 = 8;
1246 int i9 = 9;
1247 long l9 = 9;
1248 int i10 = 10;
1249 long l10 = 10;
1250 int i11 = 11;
1251 long l11 = 11;
1252 int i12 = 12;
1253 long l12 = 12;
1254 int i13 = 13;
1255 long l13 = 13;
1256 int i14 = 14;
1257 long l14 = 14;
1258 int i15 = 15;
1259 long l15 = 15;
1260 int i16 = 16;
1261 long l16 = 16;
1262 int i17 = 17;
1263 long l17 = 17;
1264 int i18 = 18;
1265 long l18 = 18;
1266 int i19 = 19;
1267 long l19 = 19;
1268 int i20 = 20;
1269 long l20 = 20;
1270 int i21 = 21;
1271 long l21 = 21;
1272 int i22 = 22;
1273 long l22 = 22;
1274 int i23 = 23;
1275 long l23 = 23;
1276 int i24 = 24;
1277 long l24 = 24;
1278 int i25 = 25;
1279 long l25 = 25;
1280 int i26 = 26;
1281 long l26 = 26;
1282 int i27 = 27;
1283 long l27 = 27;
1284 int i28 = 28;
1285 long l28 = 28;
1286 int i29 = 29;
1287 long l29 = 29;
1288 int i30 = 30;
1289 long l30 = 30;
1290 int i31 = 31;
1291 long l31 = 31;
1292 int i32 = 32;
1293 long l32 = 32;
1294 int i33 = 33;
1295 long l33 = 33;
1296 int i34 = 34;
1297 long l34 = 34;
1298 int i35 = 35;
1299 long l35 = 35;
1300 int i36 = 36;
1301 long l36 = 36;
1302 int i37 = 37;
1303 long l37 = 37;
1304 int i38 = 38;
1305 long l38 = 38;
1306 int i39 = 39;
1307 long l39 = 39;
1308 int i40 = 40;
1309 long l40 = 40;
1310 int i41 = 41;
1311 long l41 = 41;
1312 int i42 = 42;
1313 long l42 = 42;
1314 int i43 = 43;
1315 long l43 = 43;
1316 int i44 = 44;
1317 long l44 = 44;
1318 int i45 = 45;
1319 long l45 = 45;
1320 int i46 = 46;
1321 long l46 = 46;
1322 int i47 = 47;
1323 long l47 = 47;
1324 int i48 = 48;
1325 long l48 = 48;
1326 int i49 = 49;
1327 long l49 = 49;
1328 int i50 = 50;
1329 long l50 = 50;
1330 int i51 = 51;
1331 long l51 = 51;
1332 int i52 = 52;
1333 long l52 = 52;
1334 int i53 = 53;
1335 long l53 = 53;
1336 int i54 = 54;
1337 long l54 = 54;
1338 int i55 = 55;
1339 long l55 = 55;
1340 int i56 = 56;
1341 long l56 = 56;
1342 int i57 = 57;
1343 long l57 = 57;
1344 int i58 = 58;
1345 long l58 = 58;
1346 int i59 = 59;
1347 long l59 = 59;
1348 int i60 = 60;
1349 long l60 = 60;
1350 int i61 = 61;
1351 long l61 = 61;
1352 int i62 = 62;
1353 long l62 = 62;
1354 int i63 = 63;
1355 long l63 = 63;
1356 int i64 = 64;
1357 long l64 = 64;
1358 int i65 = 65;
1359 long l65 = 65;
1360 int i66 = 66;
1361 long l66 = 66;
1362 int i67 = 67;
1363 long l67 = 67;
1364 int i68 = 68;
1365 long l68 = 68;
1366 int i69 = 69;
1367 long l69 = 69;
1368 int i70 = 70;
1369 long l70 = 70;
1370 int i71 = 71;
1371 long l71 = 71;
1372 int i72 = 72;
1373 long l72 = 72;
1374 int i73 = 73;
1375 long l73 = 73;
1376 int i74 = 74;
1377 long l74 = 74;
1378 int i75 = 75;
1379 long l75 = 75;
1380 int i76 = 76;
1381 long l76 = 76;
1382 int i77 = 77;
1383 long l77 = 77;
1384 int i78 = 78;
1385 long l78 = 78;
1386 int i79 = 79;
1387 long l79 = 79;
1388 int i80 = 80;
1389 long l80 = 80;
1390 int i81 = 81;
1391 long l81 = 81;
1392 int i82 = 82;
1393 long l82 = 82;
1394 int i83 = 83;
1395 long l83 = 83;
1396 int i84 = 84;
1397 long l84 = 84;
1398 int i85 = 85;
1399 long l85 = 85;
1400 int i86 = 86;
1401 long l86 = 86;
1402 int i87 = 87;
1403 long l87 = 87;
1404 int i88 = 88;
1405 long l88 = 88;
1406 int i89 = 89;
1407 long l89 = 89;
1408 int i90 = 90;
1409 long l90 = 90;
1410 int i91 = 91;
1411 long l91 = 91;
1412 int i92 = 92;
1413 long l92 = 92;
1414 int i93 = 93;
1415 long l93 = 93;
1416 int i94 = 94;
1417 long l94 = 94;
1418 int i95 = 95;
1419 long l95 = 95;
1420 int i96 = 96;
1421 long l96 = 96;
1422 int i97 = 97;
1423 long l97 = 97;
1424 int i98 = 98;
1425 long l98 = 98;
1426 int i99 = 99;
1427 long l99 = 99;
1428 int i100 = 100;
1429 long l100 = 100;
1430 int i101 = 101;
1431 long l101 = 101;
1432 int i102 = 102;
1433 long l102 = 102;
1434 int i103 = 103;
1435 long l103 = 103;
1436 int i104 = 104;
1437 long l104 = 104;
1438 int i105 = 105;
1439 long l105 = 105;
1440 int i106 = 106;
1441 long l106 = 106;
1442 int i107 = 107;
1443 long l107 = 107;
1444 int i108 = 108;
1445 long l108 = 108;
1446 int i109 = 109;
1447 long l109 = 109;
1448 int i110 = 110;
1449 long l110 = 110;
1450 int i111 = 111;
1451 long l111 = 111;
1452 int i112 = 112;
1453 long l112 = 112;
1454 int i113 = 113;
1455 long l113 = 113;
1456 int i114 = 114;
1457 long l114 = 114;
1458 int i115 = 115;
1459 long l115 = 115;
1460 int i116 = 116;
1461 long l116 = 116;
1462 int i117 = 117;
1463 long l117 = 117;
1464 int i118 = 118;
1465 long l118 = 118;
1466 int i119 = 119;
1467 long l119 = 119;
1468 int i120 = 120;
1469 long l120 = 120;
1470 int i121 = 121;
1471 long l121 = 121;
1472 int i122 = 122;
1473 long l122 = 122;
1474 int i123 = 123;
1475 long l123 = 123;
1476 int i124 = 124;
1477 long l124 = 124;
1478 int i125 = 125;
1479 long l125 = 125;
1480 int i126 = 126;
1481 long l126 = 126;
1482 int i127 = 127;
1483 long l127 = 127;
1484 int i128 = 128;
1485 long l128 = 128;
1486 int i129 = 129;
1487 long l129 = 129;
1488 int i130 = 130;
1489 long l130 = 130;
1490 int i131 = 131;
1491 long l131 = 131;
1492 int i132 = 132;
1493 long l132 = 132;
1494 int i133 = 133;
1495 long l133 = 133;
1496 int i134 = 134;
1497 long l134 = 134;
1498 int i135 = 135;
1499 long l135 = 135;
1500 int i136 = 136;
1501 long l136 = 136;
1502 int i137 = 137;
1503 long l137 = 137;
1504 int i138 = 138;
1505 long l138 = 138;
1506 int i139 = 139;
1507 long l139 = 139;
1508 int i140 = 140;
1509 long l140 = 140;
1510 int i141 = 141;
1511 long l141 = 141;
1512 int i142 = 142;
1513 long l142 = 142;
1514 int i143 = 143;
1515 long l143 = 143;
1516 int i144 = 144;
1517 long l144 = 144;
1518 int i145 = 145;
1519 long l145 = 145;
1520 int i146 = 146;
1521 long l146 = 146;
1522 int i147 = 147;
1523 long l147 = 147;
1524 int i148 = 148;
1525 long l148 = 148;
1526 int i149 = 149;
1527 long l149 = 149;
1528 int i150 = 150;
1529 long l150 = 150;
1530 int i151 = 151;
1531 long l151 = 151;
1532 int i152 = 152;
1533 long l152 = 152;
1534 int i153 = 153;
1535 long l153 = 153;
1536 int i154 = 154;
1537 long l154 = 154;
1538 int i155 = 155;
1539 long l155 = 155;
1540 int i156 = 156;
1541 long l156 = 156;
1542 int i157 = 157;
1543 long l157 = 157;
1544 int i158 = 158;
1545 long l158 = 158;
1546 int i159 = 159;
1547 long l159 = 159;
1548 int i160 = 160;
1549 long l160 = 160;
1550 int i161 = 161;
1551 long l161 = 161;
1552 int i162 = 162;
1553 long l162 = 162;
1554 int i163 = 163;
1555 long l163 = 163;
1556 int i164 = 164;
1557 long l164 = 164;
1558 int i165 = 165;
1559 long l165 = 165;
1560 int i166 = 166;
1561 long l166 = 166;
1562 int i167 = 167;
1563 long l167 = 167;
1564 int i168 = 168;
1565 long l168 = 168;
1566 int i169 = 169;
1567 long l169 = 169;
1568 int i170 = 170;
1569 long l170 = 170;
1570 int i171 = 171;
1571 long l171 = 171;
1572 int i172 = 172;
1573 long l172 = 172;
1574 int i173 = 173;
1575 long l173 = 173;
1576 int i174 = 174;
1577 long l174 = 174;
1578 int i175 = 175;
1579 long l175 = 175;
1580 int i176 = 176;
1581 long l176 = 176;
1582 int i177 = 177;
1583 long l177 = 177;
1584 int i178 = 178;
1585 long l178 = 178;
1586 int i179 = 179;
1587 long l179 = 179;
1588 int i180 = 180;
1589 long l180 = 180;
1590 int i181 = 181;
1591 long l181 = 181;
1592 int i182 = 182;
1593 long l182 = 182;
1594 int i183 = 183;
1595 long l183 = 183;
1596 int i184 = 184;
1597 long l184 = 184;
1598 int i185 = 185;
1599 long l185 = 185;
1600 int i186 = 186;
1601 long l186 = 186;
1602 int i187 = 187;
1603 long l187 = 187;
1604 int i188 = 188;
1605 long l188 = 188;
1606 int i189 = 189;
1607 long l189 = 189;
1608 int i190 = 190;
1609 long l190 = 190;
1610 int i191 = 191;
1611 long l191 = 191;
1612 int i192 = 192;
1613 long l192 = 192;
1614 int i193 = 193;
1615 long l193 = 193;
1616 int i194 = 194;
1617 long l194 = 194;
1618 int i195 = 195;
1619 long l195 = 195;
1620 int i196 = 196;
1621 long l196 = 196;
1622 int i197 = 197;
1623 long l197 = 197;
1624 int i198 = 198;
1625 long l198 = 198;
1626 int i199 = 199;
1627 long l199 = 199;
1628 int i200 = 200;
1629 long l200 = 200;
1630 int i201 = 201;
1631 long l201 = 201;
1632 int i202 = 202;
1633 long l202 = 202;
1634 int i203 = 203;
1635 long l203 = 203;
1636 int i204 = 204;
1637 long l204 = 204;
1638 int i205 = 205;
1639 long l205 = 205;
1640 int i206 = 206;
1641 long l206 = 206;
1642 int i207 = 207;
1643 long l207 = 207;
1644 int i208 = 208;
1645 long l208 = 208;
1646 int i209 = 209;
1647 long l209 = 209;
1648 int i210 = 210;
1649 long l210 = 210;
1650 int i211 = 211;
1651 long l211 = 211;
1652 int i212 = 212;
1653 long l212 = 212;
1654 int i213 = 213;
1655 long l213 = 213;
1656 int i214 = 214;
1657 long l214 = 214;
1658 int i215 = 215;
1659 long l215 = 215;
1660 int i216 = 216;
1661 long l216 = 216;
1662 int i217 = 217;
1663 long l217 = 217;
1664 int i218 = 218;
1665 long l218 = 218;
1666 int i219 = 219;
1667 long l219 = 219;
1668 int i220 = 220;
1669 long l220 = 220;
1670 int i221 = 221;
1671 long l221 = 221;
1672 int i222 = 222;
1673 long l222 = 222;
1674 int i223 = 223;
1675 long l223 = 223;
1676 int i224 = 224;
1677 long l224 = 224;
1678 int i225 = 225;
1679 long l225 = 225;
1680 int i226 = 226;
1681 long l226 = 226;
1682 int i227 = 227;
1683 long l227 = 227;
1684 int i228 = 228;
1685 long l228 = 228;
1686 int i229 = 229;
1687 long l229 = 229;
1688 int i230 = 230;
1689 long l230 = 230;
1690 int i231 = 231;
1691 long l231 = 231;
1692 int i232 = 232;
1693 long l232 = 232;
1694 int i233 = 233;
1695 long l233 = 233;
1696 int i234 = 234;
1697 long l234 = 234;
1698 int i235 = 235;
1699 long l235 = 235;
1700 int i236 = 236;
1701 long l236 = 236;
1702 int i237 = 237;
1703 long l237 = 237;
1704 int i238 = 238;
1705 long l238 = 238;
1706 int i239 = 239;
1707 long l239 = 239;
1708 int i240 = 240;
1709 long l240 = 240;
1710 int i241 = 241;
1711 long l241 = 241;
1712 int i242 = 242;
1713 long l242 = 242;
1714 int i243 = 243;
1715 long l243 = 243;
1716 int i244 = 244;
1717 long l244 = 244;
1718 int i245 = 245;
1719 long l245 = 245;
1720 int i246 = 246;
1721 long l246 = 246;
1722 int i247 = 247;
1723 long l247 = 247;
1724 int i248 = 248;
1725 long l248 = 248;
1726 int i249 = 249;
1727 long l249 = 249;
1728 int i250 = 250;
1729 long l250 = 250;
1730 int i251 = 251;
1731 long l251 = 251;
1732 int i252 = 252;
1733 long l252 = 252;
1734 int i253 = 253;
1735 long l253 = 253;
1736 int i254 = 254;
1737 long l254 = 254;
1738 int i255 = 255;
1739 long l255 = 255;
1740 int i256 = 256;
1741 long l256 = 256;
1742 int i257 = 257;
1743 long l257 = 257;
1744 int i258 = 258;
1745 long l258 = 258;
1746 int i259 = 259;
1747 long l259 = 259;
1748 int i260 = 260;
1749 long l260 = 260;
1750 int i261 = 261;
1751 long l261 = 261;
1752 int i262 = 262;
1753 long l262 = 262;
1754 int i263 = 263;
1755 long l263 = 263;
1756 int i264 = 264;
1757 long l264 = 264;
1758 int i265 = 265;
1759 long l265 = 265;
1760 int i266 = 266;
1761 long l266 = 266;
1762 int i267 = 267;
1763 long l267 = 267;
1764 int i268 = 268;
1765 long l268 = 268;
1766 int i269 = 269;
1767 long l269 = 269;
1768 int i270 = 270;
1769 long l270 = 270;
1770 int i271 = 271;
1771 long l271 = 271;
1772 int i272 = 272;
1773 long l272 = 272;
1774 int i273 = 273;
1775 long l273 = 273;
1776 int i274 = 274;
1777 long l274 = 274;
1778 int i275 = 275;
1779 long l275 = 275;
1780 int i276 = 276;
1781 long l276 = 276;
1782 int i277 = 277;
1783 long l277 = 277;
1784 int i278 = 278;
1785 long l278 = 278;
1786 int i279 = 279;
1787 long l279 = 279;
1788 int i280 = 280;
1789 long l280 = 280;
1790 int i281 = 281;
1791 long l281 = 281;
1792 int i282 = 282;
1793 long l282 = 282;
1794 int i283 = 283;
1795 long l283 = 283;
1796 int i284 = 284;
1797 long l284 = 284;
1798 int i285 = 285;
1799 long l285 = 285;
1800 int i286 = 286;
1801 long l286 = 286;
1802 int i287 = 287;
1803 long l287 = 287;
1804 int i288 = 288;
1805 long l288 = 288;
1806 int i289 = 289;
1807 long l289 = 289;
1808 int i290 = 290;
1809 long l290 = 290;
1810 int i291 = 291;
1811 long l291 = 291;
1812 int i292 = 292;
1813 long l292 = 292;
1814 int i293 = 293;
1815 long l293 = 293;
1816 int i294 = 294;
1817 long l294 = 294;
1818 int i295 = 295;
1819 long l295 = 295;
1820 int i296 = 296;
1821 long l296 = 296;
1822 int i297 = 297;
1823 long l297 = 297;
1824 int i298 = 298;
1825 long l298 = 298;
1826 int i299 = 299;
1827 long l299 = 299;
1828 int i300 = 300;
1829 long l300 = 300;
1830 int i301 = 301;
1831 long l301 = 301;
1832 int i302 = 302;
1833 long l302 = 302;
1834 int i303 = 303;
1835 long l303 = 303;
1836 int i304 = 304;
1837 long l304 = 304;
1838 int i305 = 305;
1839 long l305 = 305;
1840 int i306 = 306;
1841 long l306 = 306;
1842 int i307 = 307;
1843 long l307 = 307;
1844 int i308 = 308;
1845 long l308 = 308;
1846 int i309 = 309;
1847 long l309 = 309;
1848 int i310 = 310;
1849 long l310 = 310;
1850 int i311 = 311;
1851 long l311 = 311;
1852 int i312 = 312;
1853 long l312 = 312;
1854 int i313 = 313;
1855 long l313 = 313;
1856 int i314 = 314;
1857 long l314 = 314;
1858 int i315 = 315;
1859 long l315 = 315;
1860 int i316 = 316;
1861 long l316 = 316;
1862 int i317 = 317;
1863 long l317 = 317;
1864 int i318 = 318;
1865 long l318 = 318;
1866 int i319 = 319;
1867 long l319 = 319;
1868 int i320 = 320;
1869 long l320 = 320;
1870 int i321 = 321;
1871 long l321 = 321;
1872 int i322 = 322;
1873 long l322 = 322;
1874 int i323 = 323;
1875 long l323 = 323;
1876 int i324 = 324;
1877 long l324 = 324;
1878 int i325 = 325;
1879 long l325 = 325;
1880 int i326 = 326;
1881 long l326 = 326;
1882 int i327 = 327;
1883 long l327 = 327;
1884 int i328 = 328;
1885 long l328 = 328;
1886 int i329 = 329;
1887 long l329 = 329;
1888 int i330 = 330;
1889 long l330 = 330;
1890 int i331 = 331;
1891 long l331 = 331;
1892 int i332 = 332;
1893 long l332 = 332;
1894 int i333 = 333;
1895 long l333 = 333;
1896 int i334 = 334;
1897 long l334 = 334;
1898 int i335 = 335;
1899 long l335 = 335;
1900 int i336 = 336;
1901 long l336 = 336;
1902 int i337 = 337;
1903 long l337 = 337;
1904 int i338 = 338;
1905 long l338 = 338;
1906 int i339 = 339;
1907 long l339 = 339;
1908 int i340 = 340;
1909 long l340 = 340;
1910 int i341 = 341;
1911 long l341 = 341;
1912 int i342 = 342;
1913 long l342 = 342;
1914 int i343 = 343;
1915 long l343 = 343;
1916 int i344 = 344;
1917 long l344 = 344;
1918 int i345 = 345;
1919 long l345 = 345;
1920 int i346 = 346;
1921 long l346 = 346;
1922 int i347 = 347;
1923 long l347 = 347;
1924 int i348 = 348;
1925 long l348 = 348;
1926 int i349 = 349;
1927 long l349 = 349;
1928 int i350 = 350;
1929 long l350 = 350;
1930 int i351 = 351;
1931 long l351 = 351;
1932 int i352 = 352;
1933 long l352 = 352;
1934 int i353 = 353;
1935 long l353 = 353;
1936 int i354 = 354;
1937 long l354 = 354;
1938 int i355 = 355;
1939 long l355 = 355;
1940 int i356 = 356;
1941 long l356 = 356;
1942 int i357 = 357;
1943 long l357 = 357;
1944 int i358 = 358;
1945 long l358 = 358;
1946 int i359 = 359;
1947 long l359 = 359;
1948 int i360 = 360;
1949 long l360 = 360;
1950 int i361 = 361;
1951 long l361 = 361;
1952 int i362 = 362;
1953 long l362 = 362;
1954 int i363 = 363;
1955 long l363 = 363;
1956 int i364 = 364;
1957 long l364 = 364;
1958 int i365 = 365;
1959 long l365 = 365;
1960 int i366 = 366;
1961 long l366 = 366;
1962 int i367 = 367;
1963 long l367 = 367;
1964 int i368 = 368;
1965 long l368 = 368;
1966 int i369 = 369;
1967 long l369 = 369;
1968 int i370 = 370;
1969 long l370 = 370;
1970 int i371 = 371;
1971 long l371 = 371;
1972 int i372 = 372;
1973 long l372 = 372;
1974 int i373 = 373;
1975 long l373 = 373;
1976 int i374 = 374;
1977 long l374 = 374;
1978 int i375 = 375;
1979 long l375 = 375;
1980 int i376 = 376;
1981 long l376 = 376;
1982 int i377 = 377;
1983 long l377 = 377;
1984 int i378 = 378;
1985 long l378 = 378;
1986 int i379 = 379;
1987 long l379 = 379;
1988 int i380 = 380;
1989 long l380 = 380;
1990 int i381 = 381;
1991 long l381 = 381;
1992 int i382 = 382;
1993 long l382 = 382;
1994 int i383 = 383;
1995 long l383 = 383;
1996 int i384 = 384;
1997 long l384 = 384;
1998 int i385 = 385;
1999 long l385 = 385;
2000 int i386 = 386;
2001 long l386 = 386;
2002 int i387 = 387;
2003 long l387 = 387;
2004 int i388 = 388;
2005 long l388 = 388;
2006 int i389 = 389;
2007 long l389 = 389;
2008 int i390 = 390;
2009 long l390 = 390;
2010 int i391 = 391;
2011 long l391 = 391;
2012 int i392 = 392;
2013 long l392 = 392;
2014 int i393 = 393;
2015 long l393 = 393;
2016 int i394 = 394;
2017 long l394 = 394;
2018 int i395 = 395;
2019 long l395 = 395;
2020 int i396 = 396;
2021 long l396 = 396;
2022 int i397 = 397;
2023 long l397 = 397;
2024 int i398 = 398;
2025 long l398 = 398;
2026 int i399 = 399;
2027 long l399 = 399;
2028 int i400 = 400;
2029 long l400 = 400;
2030 int i401 = 401;
2031 long l401 = 401;
2032 int i402 = 402;
2033 long l402 = 402;
2034 int i403 = 403;
2035 long l403 = 403;
2036 int i404 = 404;
2037 long l404 = 404;
2038 int i405 = 405;
2039 long l405 = 405;
2040 int i406 = 406;
2041 long l406 = 406;
2042 int i407 = 407;
2043 long l407 = 407;
2044 int i408 = 408;
2045 long l408 = 408;
2046 int i409 = 409;
2047 long l409 = 409;
2048 int i410 = 410;
2049 long l410 = 410;
2050 int i411 = 411;
2051 long l411 = 411;
2052 int i412 = 412;
2053 long l412 = 412;
2054 int i413 = 413;
2055 long l413 = 413;
2056 int i414 = 414;
2057 long l414 = 414;
2058 int i415 = 415;
2059 long l415 = 415;
2060 int i416 = 416;
2061 long l416 = 416;
2062 int i417 = 417;
2063 long l417 = 417;
2064 int i418 = 418;
2065 long l418 = 418;
2066 int i419 = 419;
2067 long l419 = 419;
2068 int i420 = 420;
2069 long l420 = 420;
2070 int i421 = 421;
2071 long l421 = 421;
2072 int i422 = 422;
2073 long l422 = 422;
2074 int i423 = 423;
2075 long l423 = 423;
2076 int i424 = 424;
2077 long l424 = 424;
2078 int i425 = 425;
2079 long l425 = 425;
2080 int i426 = 426;
2081 long l426 = 426;
2082 int i427 = 427;
2083 long l427 = 427;
2084 int i428 = 428;
2085 long l428 = 428;
2086 int i429 = 429;
2087 long l429 = 429;
2088 int i430 = 430;
2089 long l430 = 430;
2090 int i431 = 431;
2091 long l431 = 431;
2092 int i432 = 432;
2093 long l432 = 432;
2094 int i433 = 433;
2095 long l433 = 433;
2096 int i434 = 434;
2097 long l434 = 434;
2098 int i435 = 435;
2099 long l435 = 435;
2100 int i436 = 436;
2101 long l436 = 436;
2102 int i437 = 437;
2103 long l437 = 437;
2104 int i438 = 438;
2105 long l438 = 438;
2106 int i439 = 439;
2107 long l439 = 439;
2108 int i440 = 440;
2109 long l440 = 440;
2110 int i441 = 441;
2111 long l441 = 441;
2112 int i442 = 442;
2113 long l442 = 442;
2114 int i443 = 443;
2115 long l443 = 443;
2116 int i444 = 444;
2117 long l444 = 444;
2118 int i445 = 445;
2119 long l445 = 445;
2120 int i446 = 446;
2121 long l446 = 446;
2122 int i447 = 447;
2123 long l447 = 447;
2124 int i448 = 448;
2125 long l448 = 448;
2126 int i449 = 449;
2127 long l449 = 449;
2128 int i450 = 450;
2129 long l450 = 450;
2130 int i451 = 451;
2131 long l451 = 451;
2132 int i452 = 452;
2133 long l452 = 452;
2134 int i453 = 453;
2135 long l453 = 453;
2136 int i454 = 454;
2137 long l454 = 454;
2138 int i455 = 455;
2139 long l455 = 455;
2140 int i456 = 456;
2141 long l456 = 456;
2142 int i457 = 457;
2143 long l457 = 457;
2144 int i458 = 458;
2145 long l458 = 458;
2146 int i459 = 459;
2147 long l459 = 459;
2148 int i460 = 460;
2149 long l460 = 460;
2150 int i461 = 461;
2151 long l461 = 461;
2152 int i462 = 462;
2153 long l462 = 462;
2154 int i463 = 463;
2155 long l463 = 463;
2156 int i464 = 464;
2157 long l464 = 464;
2158 int i465 = 465;
2159 long l465 = 465;
2160 int i466 = 466;
2161 long l466 = 466;
2162 int i467 = 467;
2163 long l467 = 467;
2164 int i468 = 468;
2165 long l468 = 468;
2166 int i469 = 469;
2167 long l469 = 469;
2168 int i470 = 470;
2169 long l470 = 470;
2170 int i471 = 471;
2171 long l471 = 471;
2172 int i472 = 472;
2173 long l472 = 472;
2174 int i473 = 473;
2175 long l473 = 473;
2176 int i474 = 474;
2177 long l474 = 474;
2178 int i475 = 475;
2179 long l475 = 475;
2180 int i476 = 476;
2181 long l476 = 476;
2182 int i477 = 477;
2183 long l477 = 477;
2184 int i478 = 478;
2185 long l478 = 478;
2186 int i479 = 479;
2187 long l479 = 479;
2188 int i480 = 480;
2189 long l480 = 480;
2190 int i481 = 481;
2191 long l481 = 481;
2192 int i482 = 482;
2193 long l482 = 482;
2194 int i483 = 483;
2195 long l483 = 483;
2196 int i484 = 484;
2197 long l484 = 484;
2198 int i485 = 485;
2199 long l485 = 485;
2200 int i486 = 486;
2201 long l486 = 486;
2202 int i487 = 487;
2203 long l487 = 487;
2204 int i488 = 488;
2205 long l488 = 488;
2206 int i489 = 489;
2207 long l489 = 489;
2208 int i490 = 490;
2209 long l490 = 490;
2210 int i491 = 491;
2211 long l491 = 491;
2212 int i492 = 492;
2213 long l492 = 492;
2214 int i493 = 493;
2215 long l493 = 493;
2216 int i494 = 494;
2217 long l494 = 494;
2218 int i495 = 495;
2219 long l495 = 495;
2220 int i496 = 496;
2221 long l496 = 496;
2222 int i497 = 497;
2223 long l497 = 497;
2224 int i498 = 498;
2225 long l498 = 498;
2226 int i499 = 499;
2227 long l499 = 499;
2228 int i500 = 500;
2229 long l500 = 500;
2230 int i501 = 501;
2231 long l501 = 501;
2232 int i502 = 502;
2233 long l502 = 502;
2234 int i503 = 503;
2235 long l503 = 503;
2236 int i504 = 504;
2237 long l504 = 504;
2238 int i505 = 505;
2239 long l505 = 505;
2240 int i506 = 506;
2241 long l506 = 506;
2242 int i507 = 507;
2243 long l507 = 507;
2244 int i508 = 508;
2245 long l508 = 508;
2246 int i509 = 509;
2247 long l509 = 509;
2248 int i510 = 510;
2249 long l510 = 510;
2250 int i511 = 511;
2251 long l511 = 511;
2252 int i512 = 512;
2253 long l512 = 512;
2254 int i513 = 513;
2255 long l513 = 513;
2256 int i514 = 514;
2257 long l514 = 514;
2258 int i515 = 515;
2259 long l515 = 515;
2260 int i516 = 516;
2261 long l516 = 516;
2262 int i517 = 517;
2263 long l517 = 517;
2264 int i518 = 518;
2265 long l518 = 518;
2266 int i519 = 519;
2267 long l519 = 519;
2268 int i520 = 520;
2269 long l520 = 520;
2270 int i521 = 521;
2271 long l521 = 521;
2272 int i522 = 522;
2273 long l522 = 522;
2274 int i523 = 523;
2275 long l523 = 523;
2276 int i524 = 524;
2277 long l524 = 524;
2278 int i525 = 525;
2279 long l525 = 525;
2280 int i526 = 526;
2281 long l526 = 526;
2282 int i527 = 527;
2283 long l527 = 527;
2284 int i528 = 528;
2285 long l528 = 528;
2286 int i529 = 529;
2287 long l529 = 529;
2288 int i530 = 530;
2289 long l530 = 530;
2290 int i531 = 531;
2291 long l531 = 531;
2292 int i532 = 532;
2293 long l532 = 532;
2294 int i533 = 533;
2295 long l533 = 533;
2296 int i534 = 534;
2297 long l534 = 534;
2298 int i535 = 535;
2299 long l535 = 535;
2300 int i536 = 536;
2301 long l536 = 536;
2302 int i537 = 537;
2303 long l537 = 537;
2304 int i538 = 538;
2305 long l538 = 538;
2306 int i539 = 539;
2307 long l539 = 539;
2308 int i540 = 540;
2309 long l540 = 540;
2310 int i541 = 541;
2311 long l541 = 541;
2312 int i542 = 542;
2313 long l542 = 542;
2314 int i543 = 543;
2315 long l543 = 543;
2316 int i544 = 544;
2317 long l544 = 544;
2318 int i545 = 545;
2319 long l545 = 545;
2320 int i546 = 546;
2321 long l546 = 546;
2322 int i547 = 547;
2323 long l547 = 547;
2324 int i548 = 548;
2325 long l548 = 548;
2326 int i549 = 549;
2327 long l549 = 549;
2328 int i550 = 550;
2329 long l550 = 550;
2330 int i551 = 551;
2331 long l551 = 551;
2332 int i552 = 552;
2333 long l552 = 552;
2334 int i553 = 553;
2335 long l553 = 553;
2336 int i554 = 554;
2337 long l554 = 554;
2338 int i555 = 555;
2339 long l555 = 555;
2340 int i556 = 556;
2341 long l556 = 556;
2342 int i557 = 557;
2343 long l557 = 557;
2344 int i558 = 558;
2345 long l558 = 558;
2346 int i559 = 559;
2347 long l559 = 559;
2348 int i560 = 560;
2349 long l560 = 560;
2350 int i561 = 561;
2351 long l561 = 561;
2352 int i562 = 562;
2353 long l562 = 562;
2354 int i563 = 563;
2355 long l563 = 563;
2356 int i564 = 564;
2357 long l564 = 564;
2358 int i565 = 565;
2359 long l565 = 565;
2360 int i566 = 566;
2361 long l566 = 566;
2362 int i567 = 567;
2363 long l567 = 567;
2364 int i568 = 568;
2365 long l568 = 568;
2366 int i569 = 569;
2367 long l569 = 569;
2368 int i570 = 570;
2369 long l570 = 570;
2370 int i571 = 571;
2371 long l571 = 571;
2372 int i572 = 572;
2373 long l572 = 572;
2374 int i573 = 573;
2375 long l573 = 573;
2376 int i574 = 574;
2377 long l574 = 574;
2378 int i575 = 575;
2379 long l575 = 575;
2380 int i576 = 576;
2381 long l576 = 576;
2382 int i577 = 577;
2383 long l577 = 577;
2384 int i578 = 578;
2385 long l578 = 578;
2386 int i579 = 579;
2387 long l579 = 579;
2388 int i580 = 580;
2389 long l580 = 580;
2390 int i581 = 581;
2391 long l581 = 581;
2392 int i582 = 582;
2393 long l582 = 582;
2394 int i583 = 583;
2395 long l583 = 583;
2396 int i584 = 584;
2397 long l584 = 584;
2398 int i585 = 585;
2399 long l585 = 585;
2400 int i586 = 586;
2401 long l586 = 586;
2402 int i587 = 587;
2403 long l587 = 587;
2404 int i588 = 588;
2405 long l588 = 588;
2406 int i589 = 589;
2407 long l589 = 589;
2408 int i590 = 590;
2409 long l590 = 590;
2410 int i591 = 591;
2411 long l591 = 591;
2412 int i592 = 592;
2413 long l592 = 592;
2414 int i593 = 593;
2415 long l593 = 593;
2416 int i594 = 594;
2417 long l594 = 594;
2418 int i595 = 595;
2419 long l595 = 595;
2420 int i596 = 596;
2421 long l596 = 596;
2422 int i597 = 597;
2423 long l597 = 597;
2424 int i598 = 598;
2425 long l598 = 598;
2426 int i599 = 599;
2427 long l599 = 599;
2428 int i600 = 600;
2429 long l600 = 600;
2430 int i601 = 601;
2431 long l601 = 601;
2432 int i602 = 602;
2433 long l602 = 602;
2434 int i603 = 603;
2435 long l603 = 603;
2436 int i604 = 604;
2437 long l604 = 604;
2438 int i605 = 605;
2439 long l605 = 605;
2440 int i606 = 606;
2441 long l606 = 606;
2442 int i607 = 607;
2443 long l607 = 607;
2444 int i608 = 608;
2445 long l608 = 608;
2446 int i609 = 609;
2447 long l609 = 609;
2448 int i610 = 610;
2449 long l610 = 610;
2450 int i611 = 611;
2451 long l611 = 611;
2452 int i612 = 612;
2453 long l612 = 612;
2454 int i613 = 613;
2455 long l613 = 613;
2456 int i614 = 614;
2457 long l614 = 614;
2458 int i615 = 615;
2459 long l615 = 615;
2460 int i616 = 616;
2461 long l616 = 616;
2462 int i617 = 617;
2463 long l617 = 617;
2464 int i618 = 618;
2465 long l618 = 618;
2466 int i619 = 619;
2467 long l619 = 619;
2468 int i620 = 620;
2469 long l620 = 620;
2470 int i621 = 621;
2471 long l621 = 621;
2472 int i622 = 622;
2473 long l622 = 622;
2474 int i623 = 623;
2475 long l623 = 623;
2476 int i624 = 624;
2477 long l624 = 624;
2478 int i625 = 625;
2479 long l625 = 625;
2480 int i626 = 626;
2481 long l626 = 626;
2482 int i627 = 627;
2483 long l627 = 627;
2484 int i628 = 628;
2485 long l628 = 628;
2486 int i629 = 629;
2487 long l629 = 629;
2488 int i630 = 630;
2489 long l630 = 630;
2490 int i631 = 631;
2491 long l631 = 631;
2492 int i632 = 632;
2493 long l632 = 632;
2494 int i633 = 633;
2495 long l633 = 633;
2496 int i634 = 634;
2497 long l634 = 634;
2498 int i635 = 635;
2499 long l635 = 635;
2500 int i636 = 636;
2501 long l636 = 636;
2502 int i637 = 637;
2503 long l637 = 637;
2504 int i638 = 638;
2505 long l638 = 638;
2506 int i639 = 639;
2507 long l639 = 639;
2508 int i640 = 640;
2509 long l640 = 640;
2510 int i641 = 641;
2511 long l641 = 641;
2512 int i642 = 642;
2513 long l642 = 642;
2514 int i643 = 643;
2515 long l643 = 643;
2516 int i644 = 644;
2517 long l644 = 644;
2518 int i645 = 645;
2519 long l645 = 645;
2520 int i646 = 646;
2521 long l646 = 646;
2522 int i647 = 647;
2523 long l647 = 647;
2524 int i648 = 648;
2525 long l648 = 648;
2526 int i649 = 649;
2527 long l649 = 649;
2528 int i650 = 650;
2529 long l650 = 650;
2530 int i651 = 651;
2531 long l651 = 651;
2532 int i652 = 652;
2533 long l652 = 652;
2534 int i653 = 653;
2535 long l653 = 653;
2536 int i654 = 654;
2537 long l654 = 654;
2538 int i655 = 655;
2539 long l655 = 655;
2540 int i656 = 656;
2541 long l656 = 656;
2542 int i657 = 657;
2543 long l657 = 657;
2544 int i658 = 658;
2545 long l658 = 658;
2546 int i659 = 659;
2547 long l659 = 659;
2548 int i660 = 660;
2549 long l660 = 660;
2550 int i661 = 661;
2551 long l661 = 661;
2552 int i662 = 662;
2553 long l662 = 662;
2554 int i663 = 663;
2555 long l663 = 663;
2556 int i664 = 664;
2557 long l664 = 664;
2558 int i665 = 665;
2559 long l665 = 665;
2560 int i666 = 666;
2561 long l666 = 666;
2562 int i667 = 667;
2563 long l667 = 667;
2564 int i668 = 668;
2565 long l668 = 668;
2566 int i669 = 669;
2567 long l669 = 669;
2568 int i670 = 670;
2569 long l670 = 670;
2570 int i671 = 671;
2571 long l671 = 671;
2572 int i672 = 672;
2573 long l672 = 672;
2574 int i673 = 673;
2575 long l673 = 673;
2576 int i674 = 674;
2577 long l674 = 674;
2578 int i675 = 675;
2579 long l675 = 675;
2580 int i676 = 676;
2581 long l676 = 676;
2582 int i677 = 677;
2583 long l677 = 677;
2584 int i678 = 678;
2585 long l678 = 678;
2586 int i679 = 679;
2587 long l679 = 679;
2588 int i680 = 680;
2589 long l680 = 680;
2590 int i681 = 681;
2591 long l681 = 681;
2592 int i682 = 682;
2593 long l682 = 682;
2594 int i683 = 683;
2595 long l683 = 683;
2596 int i684 = 684;
2597 long l684 = 684;
2598 int i685 = 685;
2599 long l685 = 685;
2600 int i686 = 686;
2601 long l686 = 686;
2602 int i687 = 687;
2603 long l687 = 687;
2604 int i688 = 688;
2605 long l688 = 688;
2606 int i689 = 689;
2607 long l689 = 689;
2608 int i690 = 690;
2609 long l690 = 690;
2610 int i691 = 691;
2611 long l691 = 691;
2612 int i692 = 692;
2613 long l692 = 692;
2614 int i693 = 693;
2615 long l693 = 693;
2616 int i694 = 694;
2617 long l694 = 694;
2618 int i695 = 695;
2619 long l695 = 695;
2620 int i696 = 696;
2621 long l696 = 696;
2622 int i697 = 697;
2623 long l697 = 697;
2624 int i698 = 698;
2625 long l698 = 698;
2626 int i699 = 699;
2627 long l699 = 699;
2628 int i700 = 700;
2629 long l700 = 700;
2630 int i701 = 701;
2631 long l701 = 701;
2632 int i702 = 702;
2633 long l702 = 702;
2634 int i703 = 703;
2635 long l703 = 703;
2636 int i704 = 704;
2637 long l704 = 704;
2638 int i705 = 705;
2639 long l705 = 705;
2640 int i706 = 706;
2641 long l706 = 706;
2642 int i707 = 707;
2643 long l707 = 707;
2644 int i708 = 708;
2645 long l708 = 708;
2646 int i709 = 709;
2647 long l709 = 709;
2648 int i710 = 710;
2649 long l710 = 710;
2650 int i711 = 711;
2651 long l711 = 711;
2652 int i712 = 712;
2653 long l712 = 712;
2654 int i713 = 713;
2655 long l713 = 713;
2656 int i714 = 714;
2657 long l714 = 714;
2658 int i715 = 715;
2659 long l715 = 715;
2660 int i716 = 716;
2661 long l716 = 716;
2662 int i717 = 717;
2663 long l717 = 717;
2664 int i718 = 718;
2665 long l718 = 718;
2666 int i719 = 719;
2667 long l719 = 719;
2668 int i720 = 720;
2669 long l720 = 720;
2670 int i721 = 721;
2671 long l721 = 721;
2672 int i722 = 722;
2673 long l722 = 722;
2674 int i723 = 723;
2675 long l723 = 723;
2676 int i724 = 724;
2677 long l724 = 724;
2678 int i725 = 725;
2679 long l725 = 725;
2680 int i726 = 726;
2681 long l726 = 726;
2682 int i727 = 727;
2683 long l727 = 727;
2684 int i728 = 728;
2685 long l728 = 728;
2686 int i729 = 729;
2687 long l729 = 729;
2688 int i730 = 730;
2689 long l730 = 730;
2690 int i731 = 731;
2691 long l731 = 731;
2692 int i732 = 732;
2693 long l732 = 732;
2694 int i733 = 733;
2695 long l733 = 733;
2696 int i734 = 734;
2697 long l734 = 734;
2698 int i735 = 735;
2699 long l735 = 735;
2700 int i736 = 736;
2701 long l736 = 736;
2702 int i737 = 737;
2703 long l737 = 737;
2704 int i738 = 738;
2705 long l738 = 738;
2706 int i739 = 739;
2707 long l739 = 739;
2708 int i740 = 740;
2709 long l740 = 740;
2710 int i741 = 741;
2711 long l741 = 741;
2712 int i742 = 742;
2713 long l742 = 742;
2714 int i743 = 743;
2715 long l743 = 743;
2716 int i744 = 744;
2717 long l744 = 744;
2718 int i745 = 745;
2719 long l745 = 745;
2720 int i746 = 746;
2721 long l746 = 746;
2722 int i747 = 747;
2723 long l747 = 747;
2724 int i748 = 748;
2725 long l748 = 748;
2726 int i749 = 749;
2727 long l749 = 749;
2728 int i750 = 750;
2729 long l750 = 750;
2730 int i751 = 751;
2731 long l751 = 751;
2732 int i752 = 752;
2733 long l752 = 752;
2734 int i753 = 753;
2735 long l753 = 753;
2736 int i754 = 754;
2737 long l754 = 754;
2738 int i755 = 755;
2739 long l755 = 755;
2740 int i756 = 756;
2741 long l756 = 756;
2742 int i757 = 757;
2743 long l757 = 757;
2744 int i758 = 758;
2745 long l758 = 758;
2746 int i759 = 759;
2747 long l759 = 759;
2748 int i760 = 760;
2749 long l760 = 760;
2750 int i761 = 761;
2751 long l761 = 761;
2752 int i762 = 762;
2753 long l762 = 762;
2754 int i763 = 763;
2755 long l763 = 763;
2756 int i764 = 764;
2757 long l764 = 764;
2758 int i765 = 765;
2759 long l765 = 765;
2760 int i766 = 766;
2761 long l766 = 766;
2762 int i767 = 767;
2763 long l767 = 767;
2764 int i768 = 768;
2765 long l768 = 768;
2766 int i769 = 769;
2767 long l769 = 769;
2768 int i770 = 770;
2769 long l770 = 770;
2770 int i771 = 771;
2771 long l771 = 771;
2772 int i772 = 772;
2773 long l772 = 772;
2774 int i773 = 773;
2775 long l773 = 773;
2776 int i774 = 774;
2777 long l774 = 774;
2778 int i775 = 775;
2779 long l775 = 775;
2780 int i776 = 776;
2781 long l776 = 776;
2782 int i777 = 777;
2783 long l777 = 777;
2784 int i778 = 778;
2785 long l778 = 778;
2786 int i779 = 779;
2787 long l779 = 779;
2788 int i780 = 780;
2789 long l780 = 780;
2790 int i781 = 781;
2791 long l781 = 781;
2792 int i782 = 782;
2793 long l782 = 782;
2794 int i783 = 783;
2795 long l783 = 783;
2796 int i784 = 784;
2797 long l784 = 784;
2798 int i785 = 785;
2799 long l785 = 785;
2800 int i786 = 786;
2801 long l786 = 786;
2802 int i787 = 787;
2803 long l787 = 787;
2804 int i788 = 788;
2805 long l788 = 788;
2806 int i789 = 789;
2807 long l789 = 789;
2808 int i790 = 790;
2809 long l790 = 790;
2810 int i791 = 791;
2811 long l791 = 791;
2812 int i792 = 792;
2813 long l792 = 792;
2814 int i793 = 793;
2815 long l793 = 793;
2816 int i794 = 794;
2817 long l794 = 794;
2818 int i795 = 795;
2819 long l795 = 795;
2820 int i796 = 796;
2821 long l796 = 796;
2822 int i797 = 797;
2823 long l797 = 797;
2824 int i798 = 798;
2825 long l798 = 798;
2826 int i799 = 799;
2827 long l799 = 799;
2828 int i800 = 800;
2829 long l800 = 800;
2830 int i801 = 801;
2831 long l801 = 801;
2832 int i802 = 802;
2833 long l802 = 802;
2834 int i803 = 803;
2835 long l803 = 803;
2836 int i804 = 804;
2837 long l804 = 804;
2838 int i805 = 805;
2839 long l805 = 805;
2840 int i806 = 806;
2841 long l806 = 806;
2842 int i807 = 807;
2843 long l807 = 807;
2844 int i808 = 808;
2845 long l808 = 808;
2846 int i809 = 809;
2847 long l809 = 809;
2848 int i810 = 810;
2849 long l810 = 810;
2850 int i811 = 811;
2851 long l811 = 811;
2852 int i812 = 812;
2853 long l812 = 812;
2854 int i813 = 813;
2855 long l813 = 813;
2856 int i814 = 814;
2857 long l814 = 814;
2858 int i815 = 815;
2859 long l815 = 815;
2860 int i816 = 816;
2861 long l816 = 816;
2862 int i817 = 817;
2863 long l817 = 817;
2864 int i818 = 818;
2865 long l818 = 818;
2866 int i819 = 819;
2867 long l819 = 819;
2868 int i820 = 820;
2869 long l820 = 820;
2870 int i821 = 821;
2871 long l821 = 821;
2872 int i822 = 822;
2873 long l822 = 822;
2874 int i823 = 823;
2875 long l823 = 823;
2876 int i824 = 824;
2877 long l824 = 824;
2878 int i825 = 825;
2879 long l825 = 825;
2880 int i826 = 826;
2881 long l826 = 826;
2882 int i827 = 827;
2883 long l827 = 827;
2884 int i828 = 828;
2885 long l828 = 828;
2886 int i829 = 829;
2887 long l829 = 829;
2888 int i830 = 830;
2889 long l830 = 830;
2890 int i831 = 831;
2891 long l831 = 831;
2892 int i832 = 832;
2893 long l832 = 832;
2894 int i833 = 833;
2895 long l833 = 833;
2896 int i834 = 834;
2897 long l834 = 834;
2898 int i835 = 835;
2899 long l835 = 835;
2900 int i836 = 836;
2901 long l836 = 836;
2902 int i837 = 837;
2903 long l837 = 837;
2904 int i838 = 838;
2905 long l838 = 838;
2906 int i839 = 839;
2907 long l839 = 839;
2908 int i840 = 840;
2909 long l840 = 840;
2910 int i841 = 841;
2911 long l841 = 841;
2912 int i842 = 842;
2913 long l842 = 842;
2914 int i843 = 843;
2915 long l843 = 843;
2916 int i844 = 844;
2917 long l844 = 844;
2918 int i845 = 845;
2919 long l845 = 845;
2920 int i846 = 846;
2921 long l846 = 846;
2922 int i847 = 847;
2923 long l847 = 847;
2924 int i848 = 848;
2925 long l848 = 848;
2926 int i849 = 849;
2927 long l849 = 849;
2928 int i850 = 850;
2929 long l850 = 850;
2930 int i851 = 851;
2931 long l851 = 851;
2932 int i852 = 852;
2933 long l852 = 852;
2934 int i853 = 853;
2935 long l853 = 853;
2936 int i854 = 854;
2937 long l854 = 854;
2938 int i855 = 855;
2939 long l855 = 855;
2940 int i856 = 856;
2941 long l856 = 856;
2942 int i857 = 857;
2943 long l857 = 857;
2944 int i858 = 858;
2945 long l858 = 858;
2946 int i859 = 859;
2947 long l859 = 859;
2948 int i860 = 860;
2949 long l860 = 860;
2950 int i861 = 861;
2951 long l861 = 861;
2952 int i862 = 862;
2953 long l862 = 862;
2954 int i863 = 863;
2955 long l863 = 863;
2956 int i864 = 864;
2957 long l864 = 864;
2958 int i865 = 865;
2959 long l865 = 865;
2960 int i866 = 866;
2961 long l866 = 866;
2962 int i867 = 867;
2963 long l867 = 867;
2964 int i868 = 868;
2965 long l868 = 868;
2966 int i869 = 869;
2967 long l869 = 869;
2968 int i870 = 870;
2969 long l870 = 870;
2970 int i871 = 871;
2971 long l871 = 871;
2972 int i872 = 872;
2973 long l872 = 872;
2974 int i873 = 873;
2975 long l873 = 873;
2976 int i874 = 874;
2977 long l874 = 874;
2978 int i875 = 875;
2979 long l875 = 875;
2980 int i876 = 876;
2981 long l876 = 876;
2982 int i877 = 877;
2983 long l877 = 877;
2984 int i878 = 878;
2985 long l878 = 878;
2986 int i879 = 879;
2987 long l879 = 879;
2988 int i880 = 880;
2989 long l880 = 880;
2990 int i881 = 881;
2991 long l881 = 881;
2992 int i882 = 882;
2993 long l882 = 882;
2994 int i883 = 883;
2995 long l883 = 883;
2996 int i884 = 884;
2997 long l884 = 884;
2998 int i885 = 885;
2999 long l885 = 885;
3000 int i886 = 886;
3001 long l886 = 886;
3002 int i887 = 887;
3003 long l887 = 887;
3004 int i888 = 888;
3005 long l888 = 888;
3006 int i889 = 889;
3007 long l889 = 889;
3008 int i890 = 890;
3009 long l890 = 890;
3010 int i891 = 891;
3011 long l891 = 891;
3012 int i892 = 892;
3013 long l892 = 892;
3014 int i893 = 893;
3015 long l893 = 893;
3016 int i894 = 894;
3017 long l894 = 894;
3018 int i895 = 895;
3019 long l895 = 895;
3020 int i896 = 896;
3021 long l896 = 896;
3022 int i897 = 897;
3023 long l897 = 897;
3024 int i898 = 898;
3025 long l898 = 898;
3026 int i899 = 899;
3027 long l899 = 899;
3028 int i900 = 900;
3029 long l900 = 900;
3030 int i901 = 901;
3031 long l901 = 901;
3032 int i902 = 902;
3033 long l902 = 902;
3034 int i903 = 903;
3035 long l903 = 903;
3036 int i904 = 904;
3037 long l904 = 904;
3038 int i905 = 905;
3039 long l905 = 905;
3040 int i906 = 906;
3041 long l906 = 906;
3042 int i907 = 907;
3043 long l907 = 907;
3044 int i908 = 908;
3045 long l908 = 908;
3046 int i909 = 909;
3047 long l909 = 909;
3048 int i910 = 910;
3049 long l910 = 910;
3050 int i911 = 911;
3051 long l911 = 911;
3052 int i912 = 912;
3053 long l912 = 912;
3054 int i913 = 913;
3055 long l913 = 913;
3056 int i914 = 914;
3057 long l914 = 914;
3058 int i915 = 915;
3059 long l915 = 915;
3060 int i916 = 916;
3061 long l916 = 916;
3062 int i917 = 917;
3063 long l917 = 917;
3064 int i918 = 918;
3065 long l918 = 918;
3066 int i919 = 919;
3067 long l919 = 919;
3068 int i920 = 920;
3069 long l920 = 920;
3070 int i921 = 921;
3071 long l921 = 921;
3072 int i922 = 922;
3073 long l922 = 922;
3074 int i923 = 923;
3075 long l923 = 923;
3076 int i924 = 924;
3077 long l924 = 924;
3078 int i925 = 925;
3079 long l925 = 925;
3080 int i926 = 926;
3081 long l926 = 926;
3082 int i927 = 927;
3083 long l927 = 927;
3084 int i928 = 928;
3085 long l928 = 928;
3086 int i929 = 929;
3087 long l929 = 929;
3088 int i930 = 930;
3089 long l930 = 930;
3090 int i931 = 931;
3091 long l931 = 931;
3092 int i932 = 932;
3093 long l932 = 932;
3094 int i933 = 933;
3095 long l933 = 933;
3096 int i934 = 934;
3097 long l934 = 934;
3098 int i935 = 935;
3099 long l935 = 935;
3100 int i936 = 936;
3101 long l936 = 936;
3102 int i937 = 937;
3103 long l937 = 937;
3104 int i938 = 938;
3105 long l938 = 938;
3106 int i939 = 939;
3107 long l939 = 939;
3108 int i940 = 940;
3109 long l940 = 940;
3110 int i941 = 941;
3111 long l941 = 941;
3112 int i942 = 942;
3113 long l942 = 942;
3114 int i943 = 943;
3115 long l943 = 943;
3116 int i944 = 944;
3117 long l944 = 944;
3118 int i945 = 945;
3119 long l945 = 945;
3120 int i946 = 946;
3121 long l946 = 946;
3122 int i947 = 947;
3123 long l947 = 947;
3124 int i948 = 948;
3125 long l948 = 948;
3126 int i949 = 949;
3127 long l949 = 949;
3128 int i950 = 950;
3129 long l950 = 950;
3130 int i951 = 951;
3131 long l951 = 951;
3132 int i952 = 952;
3133 long l952 = 952;
3134 int i953 = 953;
3135 long l953 = 953;
3136 int i954 = 954;
3137 long l954 = 954;
3138 int i955 = 955;
3139 long l955 = 955;
3140 int i956 = 956;
3141 long l956 = 956;
3142 int i957 = 957;
3143 long l957 = 957;
3144 int i958 = 958;
3145 long l958 = 958;
3146 int i959 = 959;
3147 long l959 = 959;
3148 int i960 = 960;
3149 long l960 = 960;
3150 int i961 = 961;
3151 long l961 = 961;
3152 int i962 = 962;
3153 long l962 = 962;
3154 int i963 = 963;
3155 long l963 = 963;
3156 int i964 = 964;
3157 long l964 = 964;
3158 int i965 = 965;
3159 long l965 = 965;
3160 int i966 = 966;
3161 long l966 = 966;
3162 int i967 = 967;
3163 long l967 = 967;
3164 int i968 = 968;
3165 long l968 = 968;
3166 int i969 = 969;
3167 long l969 = 969;
3168 int i970 = 970;
3169 long l970 = 970;
3170 int i971 = 971;
3171 long l971 = 971;
3172 int i972 = 972;
3173 long l972 = 972;
3174 int i973 = 973;
3175 long l973 = 973;
3176 int i974 = 974;
3177 long l974 = 974;
3178 int i975 = 975;
3179 long l975 = 975;
3180 int i976 = 976;
3181 long l976 = 976;
3182 int i977 = 977;
3183 long l977 = 977;
3184 int i978 = 978;
3185 long l978 = 978;
3186 int i979 = 979;
3187 long l979 = 979;
3188 int i980 = 980;
3189 long l980 = 980;
3190 int i981 = 981;
3191 long l981 = 981;
3192 int i982 = 982;
3193 long l982 = 982;
3194 int i983 = 983;
3195 long l983 = 983;
3196 int i984 = 984;
3197 long l984 = 984;
3198 int i985 = 985;
3199 long l985 = 985;
3200 int i986 = 986;
3201 long l986 = 986;
3202 int i987 = 987;
3203 long l987 = 987;
3204 int i988 = 988;
3205 long l988 = 988;
3206 int i989 = 989;
3207 long l989 = 989;
3208 int i990 = 990;
3209 long l990 = 990;
3210 int i991 = 991;
3211 long l991 = 991;
3212 int i992 = 992;
3213 long l992 = 992;
3214 int i993 = 993;
3215 long l993 = 993;
3216 int i994 = 994;
3217 long l994 = 994;
3218 int i995 = 995;
3219 long l995 = 995;
3220 int i996 = 996;
3221 long l996 = 996;
3222 int i997 = 997;
3223 long l997 = 997;
3224 int i998 = 998;
3225 long l998 = 998;
3226 int i999 = 999;
3227 long l999 = 999;
3228 i1 += i0;
3229 l1 = l0;
3230 i2 += i1;
3231 l2 = l1;
3232 i3 += i2;
3233 l3 = l2;
3234 i4 += i3;
3235 l4 = l3;
3236 i5 += i4;
3237 l5 = l4;
3238 i6 += i5;
3239 l6 = l5;
3240 i7 += i6;
3241 l7 = l6;
3242 i8 += i7;
3243 l8 = l7;
3244 i9 += i8;
3245 l9 = l8;
3246 i10 += i9;
3247 l10 = l9;
3248 i11 += i10;
3249 l11 = l10;
3250 i12 += i11;
3251 l12 = l11;
3252 i13 += i12;
3253 l13 = l12;
3254 i14 += i13;
3255 l14 = l13;
3256 i15 += i14;
3257 l15 = l14;
3258 i16 += i15;
3259 l16 = l15;
3260 i17 += i16;
3261 l17 = l16;
3262 i18 += i17;
3263 l18 = l17;
3264 i19 += i18;
3265 l19 = l18;
3266 i20 += i19;
3267 l20 = l19;
3268 i21 += i20;
3269 l21 = l20;
3270 i22 += i21;
3271 l22 = l21;
3272 i23 += i22;
3273 l23 = l22;
3274 i24 += i23;
3275 l24 = l23;
3276 i25 += i24;
3277 l25 = l24;
3278 i26 += i25;
3279 l26 = l25;
3280 i27 += i26;
3281 l27 = l26;
3282 i28 += i27;
3283 l28 = l27;
3284 i29 += i28;
3285 l29 = l28;
3286 i30 += i29;
3287 l30 = l29;
3288 i31 += i30;
3289 l31 = l30;
3290 i32 += i31;
3291 l32 = l31;
3292 i33 += i32;
3293 l33 = l32;
3294 i34 += i33;
3295 l34 = l33;
3296 i35 += i34;
3297 l35 = l34;
3298 i36 += i35;
3299 l36 = l35;
3300 i37 += i36;
3301 l37 = l36;
3302 i38 += i37;
3303 l38 = l37;
3304 i39 += i38;
3305 l39 = l38;
3306 i40 += i39;
3307 l40 = l39;
3308 i41 += i40;
3309 l41 = l40;
3310 i42 += i41;
3311 l42 = l41;
3312 i43 += i42;
3313 l43 = l42;
3314 i44 += i43;
3315 l44 = l43;
3316 i45 += i44;
3317 l45 = l44;
3318 i46 += i45;
3319 l46 = l45;
3320 i47 += i46;
3321 l47 = l46;
3322 i48 += i47;
3323 l48 = l47;
3324 i49 += i48;
3325 l49 = l48;
3326 i50 += i49;
3327 l50 = l49;
3328 i51 += i50;
3329 l51 = l50;
3330 i52 += i51;
3331 l52 = l51;
3332 i53 += i52;
3333 l53 = l52;
3334 i54 += i53;
3335 l54 = l53;
3336 i55 += i54;
3337 l55 = l54;
3338 i56 += i55;
3339 l56 = l55;
3340 i57 += i56;
3341 l57 = l56;
3342 i58 += i57;
3343 l58 = l57;
3344 i59 += i58;
3345 l59 = l58;
3346 i60 += i59;
3347 l60 = l59;
3348 i61 += i60;
3349 l61 = l60;
3350 i62 += i61;
3351 l62 = l61;
3352 i63 += i62;
3353 l63 = l62;
3354 i64 += i63;
3355 l64 = l63;
3356 i65 += i64;
3357 l65 = l64;
3358 i66 += i65;
3359 l66 = l65;
3360 i67 += i66;
3361 l67 = l66;
3362 i68 += i67;
3363 l68 = l67;
3364 i69 += i68;
3365 l69 = l68;
3366 i70 += i69;
3367 l70 = l69;
3368 i71 += i70;
3369 l71 = l70;
3370 i72 += i71;
3371 l72 = l71;
3372 i73 += i72;
3373 l73 = l72;
3374 i74 += i73;
3375 l74 = l73;
3376 i75 += i74;
3377 l75 = l74;
3378 i76 += i75;
3379 l76 = l75;
3380 i77 += i76;
3381 l77 = l76;
3382 i78 += i77;
3383 l78 = l77;
3384 i79 += i78;
3385 l79 = l78;
3386 i80 += i79;
3387 l80 = l79;
3388 i81 += i80;
3389 l81 = l80;
3390 i82 += i81;
3391 l82 = l81;
3392 i83 += i82;
3393 l83 = l82;
3394 i84 += i83;
3395 l84 = l83;
3396 i85 += i84;
3397 l85 = l84;
3398 i86 += i85;
3399 l86 = l85;
3400 i87 += i86;
3401 l87 = l86;
3402 i88 += i87;
3403 l88 = l87;
3404 i89 += i88;
3405 l89 = l88;
3406 i90 += i89;
3407 l90 = l89;
3408 i91 += i90;
3409 l91 = l90;
3410 i92 += i91;
3411 l92 = l91;
3412 i93 += i92;
3413 l93 = l92;
3414 i94 += i93;
3415 l94 = l93;
3416 i95 += i94;
3417 l95 = l94;
3418 i96 += i95;
3419 l96 = l95;
3420 i97 += i96;
3421 l97 = l96;
3422 i98 += i97;
3423 l98 = l97;
3424 i99 += i98;
3425 l99 = l98;
3426 i100 += i99;
3427 l100 = l99;
3428 i101 += i100;
3429 l101 = l100;
3430 i102 += i101;
3431 l102 = l101;
3432 i103 += i102;
3433 l103 = l102;
3434 i104 += i103;
3435 l104 = l103;
3436 i105 += i104;
3437 l105 = l104;
3438 i106 += i105;
3439 l106 = l105;
3440 i107 += i106;
3441 l107 = l106;
3442 i108 += i107;
3443 l108 = l107;
3444 i109 += i108;
3445 l109 = l108;
3446 i110 += i109;
3447 l110 = l109;
3448 i111 += i110;
3449 l111 = l110;
3450 i112 += i111;
3451 l112 = l111;
3452 i113 += i112;
3453 l113 = l112;
3454 i114 += i113;
3455 l114 = l113;
3456 i115 += i114;
3457 l115 = l114;
3458 i116 += i115;
3459 l116 = l115;
3460 i117 += i116;
3461 l117 = l116;
3462 i118 += i117;
3463 l118 = l117;
3464 i119 += i118;
3465 l119 = l118;
3466 i120 += i119;
3467 l120 = l119;
3468 i121 += i120;
3469 l121 = l120;
3470 i122 += i121;
3471 l122 = l121;
3472 i123 += i122;
3473 l123 = l122;
3474 i124 += i123;
3475 l124 = l123;
3476 i125 += i124;
3477 l125 = l124;
3478 i126 += i125;
3479 l126 = l125;
3480 i127 += i126;
3481 l127 = l126;
3482 i128 += i127;
3483 l128 = l127;
3484 i129 += i128;
3485 l129 = l128;
3486 i130 += i129;
3487 l130 = l129;
3488 i131 += i130;
3489 l131 = l130;
3490 i132 += i131;
3491 l132 = l131;
3492 i133 += i132;
3493 l133 = l132;
3494 i134 += i133;
3495 l134 = l133;
3496 i135 += i134;
3497 l135 = l134;
3498 i136 += i135;
3499 l136 = l135;
3500 i137 += i136;
3501 l137 = l136;
3502 i138 += i137;
3503 l138 = l137;
3504 i139 += i138;
3505 l139 = l138;
3506 i140 += i139;
3507 l140 = l139;
3508 i141 += i140;
3509 l141 = l140;
3510 i142 += i141;
3511 l142 = l141;
3512 i143 += i142;
3513 l143 = l142;
3514 i144 += i143;
3515 l144 = l143;
3516 i145 += i144;
3517 l145 = l144;
3518 i146 += i145;
3519 l146 = l145;
3520 i147 += i146;
3521 l147 = l146;
3522 i148 += i147;
3523 l148 = l147;
3524 i149 += i148;
3525 l149 = l148;
3526 i150 += i149;
3527 l150 = l149;
3528 i151 += i150;
3529 l151 = l150;
3530 i152 += i151;
3531 l152 = l151;
3532 i153 += i152;
3533 l153 = l152;
3534 i154 += i153;
3535 l154 = l153;
3536 i155 += i154;
3537 l155 = l154;
3538 i156 += i155;
3539 l156 = l155;
3540 i157 += i156;
3541 l157 = l156;
3542 i158 += i157;
3543 l158 = l157;
3544 i159 += i158;
3545 l159 = l158;
3546 i160 += i159;
3547 l160 = l159;
3548 i161 += i160;
3549 l161 = l160;
3550 i162 += i161;
3551 l162 = l161;
3552 i163 += i162;
3553 l163 = l162;
3554 i164 += i163;
3555 l164 = l163;
3556 i165 += i164;
3557 l165 = l164;
3558 i166 += i165;
3559 l166 = l165;
3560 i167 += i166;
3561 l167 = l166;
3562 i168 += i167;
3563 l168 = l167;
3564 i169 += i168;
3565 l169 = l168;
3566 i170 += i169;
3567 l170 = l169;
3568 i171 += i170;
3569 l171 = l170;
3570 i172 += i171;
3571 l172 = l171;
3572 i173 += i172;
3573 l173 = l172;
3574 i174 += i173;
3575 l174 = l173;
3576 i175 += i174;
3577 l175 = l174;
3578 i176 += i175;
3579 l176 = l175;
3580 i177 += i176;
3581 l177 = l176;
3582 i178 += i177;
3583 l178 = l177;
3584 i179 += i178;
3585 l179 = l178;
3586 i180 += i179;
3587 l180 = l179;
3588 i181 += i180;
3589 l181 = l180;
3590 i182 += i181;
3591 l182 = l181;
3592 i183 += i182;
3593 l183 = l182;
3594 i184 += i183;
3595 l184 = l183;
3596 i185 += i184;
3597 l185 = l184;
3598 i186 += i185;
3599 l186 = l185;
3600 i187 += i186;
3601 l187 = l186;
3602 i188 += i187;
3603 l188 = l187;
3604 i189 += i188;
3605 l189 = l188;
3606 i190 += i189;
3607 l190 = l189;
3608 i191 += i190;
3609 l191 = l190;
3610 i192 += i191;
3611 l192 = l191;
3612 i193 += i192;
3613 l193 = l192;
3614 i194 += i193;
3615 l194 = l193;
3616 i195 += i194;
3617 l195 = l194;
3618 i196 += i195;
3619 l196 = l195;
3620 i197 += i196;
3621 l197 = l196;
3622 i198 += i197;
3623 l198 = l197;
3624 i199 += i198;
3625 l199 = l198;
3626 i200 += i199;
3627 l200 = l199;
3628 i201 += i200;
3629 l201 = l200;
3630 i202 += i201;
3631 l202 = l201;
3632 i203 += i202;
3633 l203 = l202;
3634 i204 += i203;
3635 l204 = l203;
3636 i205 += i204;
3637 l205 = l204;
3638 i206 += i205;
3639 l206 = l205;
3640 i207 += i206;
3641 l207 = l206;
3642 i208 += i207;
3643 l208 = l207;
3644 i209 += i208;
3645 l209 = l208;
3646 i210 += i209;
3647 l210 = l209;
3648 i211 += i210;
3649 l211 = l210;
3650 i212 += i211;
3651 l212 = l211;
3652 i213 += i212;
3653 l213 = l212;
3654 i214 += i213;
3655 l214 = l213;
3656 i215 += i214;
3657 l215 = l214;
3658 i216 += i215;
3659 l216 = l215;
3660 i217 += i216;
3661 l217 = l216;
3662 i218 += i217;
3663 l218 = l217;
3664 i219 += i218;
3665 l219 = l218;
3666 i220 += i219;
3667 l220 = l219;
3668 i221 += i220;
3669 l221 = l220;
3670 i222 += i221;
3671 l222 = l221;
3672 i223 += i222;
3673 l223 = l222;
3674 i224 += i223;
3675 l224 = l223;
3676 i225 += i224;
3677 l225 = l224;
3678 i226 += i225;
3679 l226 = l225;
3680 i227 += i226;
3681 l227 = l226;
3682 i228 += i227;
3683 l228 = l227;
3684 i229 += i228;
3685 l229 = l228;
3686 i230 += i229;
3687 l230 = l229;
3688 i231 += i230;
3689 l231 = l230;
3690 i232 += i231;
3691 l232 = l231;
3692 i233 += i232;
3693 l233 = l232;
3694 i234 += i233;
3695 l234 = l233;
3696 i235 += i234;
3697 l235 = l234;
3698 i236 += i235;
3699 l236 = l235;
3700 i237 += i236;
3701 l237 = l236;
3702 i238 += i237;
3703 l238 = l237;
3704 i239 += i238;
3705 l239 = l238;
3706 i240 += i239;
3707 l240 = l239;
3708 i241 += i240;
3709 l241 = l240;
3710 i242 += i241;
3711 l242 = l241;
3712 i243 += i242;
3713 l243 = l242;
3714 i244 += i243;
3715 l244 = l243;
3716 i245 += i244;
3717 l245 = l244;
3718 i246 += i245;
3719 l246 = l245;
3720 i247 += i246;
3721 l247 = l246;
3722 i248 += i247;
3723 l248 = l247;
3724 i249 += i248;
3725 l249 = l248;
3726 i250 += i249;
3727 l250 = l249;
3728 i251 += i250;
3729 l251 = l250;
3730 i252 += i251;
3731 l252 = l251;
3732 i253 += i252;
3733 l253 = l252;
3734 i254 += i253;
3735 l254 = l253;
3736 i255 += i254;
3737 l255 = l254;
3738 i256 += i255;
3739 l256 = l255;
3740 i257 += i256;
3741 l257 = l256;
3742 i258 += i257;
3743 l258 = l257;
3744 i259 += i258;
3745 l259 = l258;
3746 i260 += i259;
3747 l260 = l259;
3748 i261 += i260;
3749 l261 = l260;
3750 i262 += i261;
3751 l262 = l261;
3752 i263 += i262;
3753 l263 = l262;
3754 i264 += i263;
3755 l264 = l263;
3756 i265 += i264;
3757 l265 = l264;
3758 i266 += i265;
3759 l266 = l265;
3760 i267 += i266;
3761 l267 = l266;
3762 i268 += i267;
3763 l268 = l267;
3764 i269 += i268;
3765 l269 = l268;
3766 i270 += i269;
3767 l270 = l269;
3768 i271 += i270;
3769 l271 = l270;
3770 i272 += i271;
3771 l272 = l271;
3772 i273 += i272;
3773 l273 = l272;
3774 i274 += i273;
3775 l274 = l273;
3776 i275 += i274;
3777 l275 = l274;
3778 i276 += i275;
3779 l276 = l275;
3780 i277 += i276;
3781 l277 = l276;
3782 i278 += i277;
3783 l278 = l277;
3784 i279 += i278;
3785 l279 = l278;
3786 i280 += i279;
3787 l280 = l279;
3788 i281 += i280;
3789 l281 = l280;
3790 i282 += i281;
3791 l282 = l281;
3792 i283 += i282;
3793 l283 = l282;
3794 i284 += i283;
3795 l284 = l283;
3796 i285 += i284;
3797 l285 = l284;
3798 i286 += i285;
3799 l286 = l285;
3800 i287 += i286;
3801 l287 = l286;
3802 i288 += i287;
3803 l288 = l287;
3804 i289 += i288;
3805 l289 = l288;
3806 i290 += i289;
3807 l290 = l289;
3808 i291 += i290;
3809 l291 = l290;
3810 i292 += i291;
3811 l292 = l291;
3812 i293 += i292;
3813 l293 = l292;
3814 i294 += i293;
3815 l294 = l293;
3816 i295 += i294;
3817 l295 = l294;
3818 i296 += i295;
3819 l296 = l295;
3820 i297 += i296;
3821 l297 = l296;
3822 i298 += i297;
3823 l298 = l297;
3824 i299 += i298;
3825 l299 = l298;
3826 i300 += i299;
3827 l300 = l299;
3828 i301 += i300;
3829 l301 = l300;
3830 i302 += i301;
3831 l302 = l301;
3832 i303 += i302;
3833 l303 = l302;
3834 i304 += i303;
3835 l304 = l303;
3836 i305 += i304;
3837 l305 = l304;
3838 i306 += i305;
3839 l306 = l305;
3840 i307 += i306;
3841 l307 = l306;
3842 i308 += i307;
3843 l308 = l307;
3844 i309 += i308;
3845 l309 = l308;
3846 i310 += i309;
3847 l310 = l309;
3848 i311 += i310;
3849 l311 = l310;
3850 i312 += i311;
3851 l312 = l311;
3852 i313 += i312;
3853 l313 = l312;
3854 i314 += i313;
3855 l314 = l313;
3856 i315 += i314;
3857 l315 = l314;
3858 i316 += i315;
3859 l316 = l315;
3860 i317 += i316;
3861 l317 = l316;
3862 i318 += i317;
3863 l318 = l317;
3864 i319 += i318;
3865 l319 = l318;
3866 i320 += i319;
3867 l320 = l319;
3868 i321 += i320;
3869 l321 = l320;
3870 i322 += i321;
3871 l322 = l321;
3872 i323 += i322;
3873 l323 = l322;
3874 i324 += i323;
3875 l324 = l323;
3876 i325 += i324;
3877 l325 = l324;
3878 i326 += i325;
3879 l326 = l325;
3880 i327 += i326;
3881 l327 = l326;
3882 i328 += i327;
3883 l328 = l327;
3884 i329 += i328;
3885 l329 = l328;
3886 i330 += i329;
3887 l330 = l329;
3888 i331 += i330;
3889 l331 = l330;
3890 i332 += i331;
3891 l332 = l331;
3892 i333 += i332;
3893 l333 = l332;
3894 i334 += i333;
3895 l334 = l333;
3896 i335 += i334;
3897 l335 = l334;
3898 i336 += i335;
3899 l336 = l335;
3900 i337 += i336;
3901 l337 = l336;
3902 i338 += i337;
3903 l338 = l337;
3904 i339 += i338;
3905 l339 = l338;
3906 i340 += i339;
3907 l340 = l339;
3908 i341 += i340;
3909 l341 = l340;
3910 i342 += i341;
3911 l342 = l341;
3912 i343 += i342;
3913 l343 = l342;
3914 i344 += i343;
3915 l344 = l343;
3916 i345 += i344;
3917 l345 = l344;
3918 i346 += i345;
3919 l346 = l345;
3920 i347 += i346;
3921 l347 = l346;
3922 i348 += i347;
3923 l348 = l347;
3924 i349 += i348;
3925 l349 = l348;
3926 i350 += i349;
3927 l350 = l349;
3928 i351 += i350;
3929 l351 = l350;
3930 i352 += i351;
3931 l352 = l351;
3932 i353 += i352;
3933 l353 = l352;
3934 i354 += i353;
3935 l354 = l353;
3936 i355 += i354;
3937 l355 = l354;
3938 i356 += i355;
3939 l356 = l355;
3940 i357 += i356;
3941 l357 = l356;
3942 i358 += i357;
3943 l358 = l357;
3944 i359 += i358;
3945 l359 = l358;
3946 i360 += i359;
3947 l360 = l359;
3948 i361 += i360;
3949 l361 = l360;
3950 i362 += i361;
3951 l362 = l361;
3952 i363 += i362;
3953 l363 = l362;
3954 i364 += i363;
3955 l364 = l363;
3956 i365 += i364;
3957 l365 = l364;
3958 i366 += i365;
3959 l366 = l365;
3960 i367 += i366;
3961 l367 = l366;
3962 i368 += i367;
3963 l368 = l367;
3964 i369 += i368;
3965 l369 = l368;
3966 i370 += i369;
3967 l370 = l369;
3968 i371 += i370;
3969 l371 = l370;
3970 i372 += i371;
3971 l372 = l371;
3972 i373 += i372;
3973 l373 = l372;
3974 i374 += i373;
3975 l374 = l373;
3976 i375 += i374;
3977 l375 = l374;
3978 i376 += i375;
3979 l376 = l375;
3980 i377 += i376;
3981 l377 = l376;
3982 i378 += i377;
3983 l378 = l377;
3984 i379 += i378;
3985 l379 = l378;
3986 i380 += i379;
3987 l380 = l379;
3988 i381 += i380;
3989 l381 = l380;
3990 i382 += i381;
3991 l382 = l381;
3992 i383 += i382;
3993 l383 = l382;
3994 i384 += i383;
3995 l384 = l383;
3996 i385 += i384;
3997 l385 = l384;
3998 i386 += i385;
3999 l386 = l385;
4000 i387 += i386;
4001 l387 = l386;
4002 i388 += i387;
4003 l388 = l387;
4004 i389 += i388;
4005 l389 = l388;
4006 i390 += i389;
4007 l390 = l389;
4008 i391 += i390;
4009 l391 = l390;
4010 i392 += i391;
4011 l392 = l391;
4012 i393 += i392;
4013 l393 = l392;
4014 i394 += i393;
4015 l394 = l393;
4016 i395 += i394;
4017 l395 = l394;
4018 i396 += i395;
4019 l396 = l395;
4020 i397 += i396;
4021 l397 = l396;
4022 i398 += i397;
4023 l398 = l397;
4024 i399 += i398;
4025 l399 = l398;
4026 i400 += i399;
4027 l400 = l399;
4028 i401 += i400;
4029 l401 = l400;
4030 i402 += i401;
4031 l402 = l401;
4032 i403 += i402;
4033 l403 = l402;
4034 i404 += i403;
4035 l404 = l403;
4036 i405 += i404;
4037 l405 = l404;
4038 i406 += i405;
4039 l406 = l405;
4040 i407 += i406;
4041 l407 = l406;
4042 i408 += i407;
4043 l408 = l407;
4044 i409 += i408;
4045 l409 = l408;
4046 i410 += i409;
4047 l410 = l409;
4048 i411 += i410;
4049 l411 = l410;
4050 i412 += i411;
4051 l412 = l411;
4052 i413 += i412;
4053 l413 = l412;
4054 i414 += i413;
4055 l414 = l413;
4056 i415 += i414;
4057 l415 = l414;
4058 i416 += i415;
4059 l416 = l415;
4060 i417 += i416;
4061 l417 = l416;
4062 i418 += i417;
4063 l418 = l417;
4064 i419 += i418;
4065 l419 = l418;
4066 i420 += i419;
4067 l420 = l419;
4068 i421 += i420;
4069 l421 = l420;
4070 i422 += i421;
4071 l422 = l421;
4072 i423 += i422;
4073 l423 = l422;
4074 i424 += i423;
4075 l424 = l423;
4076 i425 += i424;
4077 l425 = l424;
4078 i426 += i425;
4079 l426 = l425;
4080 i427 += i426;
4081 l427 = l426;
4082 i428 += i427;
4083 l428 = l427;
4084 i429 += i428;
4085 l429 = l428;
4086 i430 += i429;
4087 l430 = l429;
4088 i431 += i430;
4089 l431 = l430;
4090 i432 += i431;
4091 l432 = l431;
4092 i433 += i432;
4093 l433 = l432;
4094 i434 += i433;
4095 l434 = l433;
4096 i435 += i434;
4097 l435 = l434;
4098 i436 += i435;
4099 l436 = l435;
4100 i437 += i436;
4101 l437 = l436;
4102 i438 += i437;
4103 l438 = l437;
4104 i439 += i438;
4105 l439 = l438;
4106 i440 += i439;
4107 l440 = l439;
4108 i441 += i440;
4109 l441 = l440;
4110 i442 += i441;
4111 l442 = l441;
4112 i443 += i442;
4113 l443 = l442;
4114 i444 += i443;
4115 l444 = l443;
4116 i445 += i444;
4117 l445 = l444;
4118 i446 += i445;
4119 l446 = l445;
4120 i447 += i446;
4121 l447 = l446;
4122 i448 += i447;
4123 l448 = l447;
4124 i449 += i448;
4125 l449 = l448;
4126 i450 += i449;
4127 l450 = l449;
4128 i451 += i450;
4129 l451 = l450;
4130 i452 += i451;
4131 l452 = l451;
4132 i453 += i452;
4133 l453 = l452;
4134 i454 += i453;
4135 l454 = l453;
4136 i455 += i454;
4137 l455 = l454;
4138 i456 += i455;
4139 l456 = l455;
4140 i457 += i456;
4141 l457 = l456;
4142 i458 += i457;
4143 l458 = l457;
4144 i459 += i458;
4145 l459 = l458;
4146 i460 += i459;
4147 l460 = l459;
4148 i461 += i460;
4149 l461 = l460;
4150 i462 += i461;
4151 l462 = l461;
4152 i463 += i462;
4153 l463 = l462;
4154 i464 += i463;
4155 l464 = l463;
4156 i465 += i464;
4157 l465 = l464;
4158 i466 += i465;
4159 l466 = l465;
4160 i467 += i466;
4161 l467 = l466;
4162 i468 += i467;
4163 l468 = l467;
4164 i469 += i468;
4165 l469 = l468;
4166 i470 += i469;
4167 l470 = l469;
4168 i471 += i470;
4169 l471 = l470;
4170 i472 += i471;
4171 l472 = l471;
4172 i473 += i472;
4173 l473 = l472;
4174 i474 += i473;
4175 l474 = l473;
4176 i475 += i474;
4177 l475 = l474;
4178 i476 += i475;
4179 l476 = l475;
4180 i477 += i476;
4181 l477 = l476;
4182 i478 += i477;
4183 l478 = l477;
4184 i479 += i478;
4185 l479 = l478;
4186 i480 += i479;
4187 l480 = l479;
4188 i481 += i480;
4189 l481 = l480;
4190 i482 += i481;
4191 l482 = l481;
4192 i483 += i482;
4193 l483 = l482;
4194 i484 += i483;
4195 l484 = l483;
4196 i485 += i484;
4197 l485 = l484;
4198 i486 += i485;
4199 l486 = l485;
4200 i487 += i486;
4201 l487 = l486;
4202 i488 += i487;
4203 l488 = l487;
4204 i489 += i488;
4205 l489 = l488;
4206 i490 += i489;
4207 l490 = l489;
4208 i491 += i490;
4209 l491 = l490;
4210 i492 += i491;
4211 l492 = l491;
4212 i493 += i492;
4213 l493 = l492;
4214 i494 += i493;
4215 l494 = l493;
4216 i495 += i494;
4217 l495 = l494;
4218 i496 += i495;
4219 l496 = l495;
4220 i497 += i496;
4221 l497 = l496;
4222 i498 += i497;
4223 l498 = l497;
4224 i499 += i498;
4225 l499 = l498;
4226 i500 += i499;
4227 l500 = l499;
4228 i501 += i500;
4229 l501 = l500;
4230 i502 += i501;
4231 l502 = l501;
4232 i503 += i502;
4233 l503 = l502;
4234 i504 += i503;
4235 l504 = l503;
4236 i505 += i504;
4237 l505 = l504;
4238 i506 += i505;
4239 l506 = l505;
4240 i507 += i506;
4241 l507 = l506;
4242 i508 += i507;
4243 l508 = l507;
4244 i509 += i508;
4245 l509 = l508;
4246 i510 += i509;
4247 l510 = l509;
4248 i511 += i510;
4249 l511 = l510;
4250 i512 += i511;
4251 l512 = l511;
4252 i513 += i512;
4253 l513 = l512;
4254 i514 += i513;
4255 l514 = l513;
4256 i515 += i514;
4257 l515 = l514;
4258 i516 += i515;
4259 l516 = l515;
4260 i517 += i516;
4261 l517 = l516;
4262 i518 += i517;
4263 l518 = l517;
4264 i519 += i518;
4265 l519 = l518;
4266 i520 += i519;
4267 l520 = l519;
4268 i521 += i520;
4269 l521 = l520;
4270 i522 += i521;
4271 l522 = l521;
4272 i523 += i522;
4273 l523 = l522;
4274 i524 += i523;
4275 l524 = l523;
4276 i525 += i524;
4277 l525 = l524;
4278 i526 += i525;
4279 l526 = l525;
4280 i527 += i526;
4281 l527 = l526;
4282 i528 += i527;
4283 l528 = l527;
4284 i529 += i528;
4285 l529 = l528;
4286 i530 += i529;
4287 l530 = l529;
4288 i531 += i530;
4289 l531 = l530;
4290 i532 += i531;
4291 l532 = l531;
4292 i533 += i532;
4293 l533 = l532;
4294 i534 += i533;
4295 l534 = l533;
4296 i535 += i534;
4297 l535 = l534;
4298 i536 += i535;
4299 l536 = l535;
4300 i537 += i536;
4301 l537 = l536;
4302 i538 += i537;
4303 l538 = l537;
4304 i539 += i538;
4305 l539 = l538;
4306 i540 += i539;
4307 l540 = l539;
4308 i541 += i540;
4309 l541 = l540;
4310 i542 += i541;
4311 l542 = l541;
4312 i543 += i542;
4313 l543 = l542;
4314 i544 += i543;
4315 l544 = l543;
4316 i545 += i544;
4317 l545 = l544;
4318 i546 += i545;
4319 l546 = l545;
4320 i547 += i546;
4321 l547 = l546;
4322 i548 += i547;
4323 l548 = l547;
4324 i549 += i548;
4325 l549 = l548;
4326 i550 += i549;
4327 l550 = l549;
4328 i551 += i550;
4329 l551 = l550;
4330 i552 += i551;
4331 l552 = l551;
4332 i553 += i552;
4333 l553 = l552;
4334 i554 += i553;
4335 l554 = l553;
4336 i555 += i554;
4337 l555 = l554;
4338 i556 += i555;
4339 l556 = l555;
4340 i557 += i556;
4341 l557 = l556;
4342 i558 += i557;
4343 l558 = l557;
4344 i559 += i558;
4345 l559 = l558;
4346 i560 += i559;
4347 l560 = l559;
4348 i561 += i560;
4349 l561 = l560;
4350 i562 += i561;
4351 l562 = l561;
4352 i563 += i562;
4353 l563 = l562;
4354 i564 += i563;
4355 l564 = l563;
4356 i565 += i564;
4357 l565 = l564;
4358 i566 += i565;
4359 l566 = l565;
4360 i567 += i566;
4361 l567 = l566;
4362 i568 += i567;
4363 l568 = l567;
4364 i569 += i568;
4365 l569 = l568;
4366 i570 += i569;
4367 l570 = l569;
4368 i571 += i570;
4369 l571 = l570;
4370 i572 += i571;
4371 l572 = l571;
4372 i573 += i572;
4373 l573 = l572;
4374 i574 += i573;
4375 l574 = l573;
4376 i575 += i574;
4377 l575 = l574;
4378 i576 += i575;
4379 l576 = l575;
4380 i577 += i576;
4381 l577 = l576;
4382 i578 += i577;
4383 l578 = l577;
4384 i579 += i578;
4385 l579 = l578;
4386 i580 += i579;
4387 l580 = l579;
4388 i581 += i580;
4389 l581 = l580;
4390 i582 += i581;
4391 l582 = l581;
4392 i583 += i582;
4393 l583 = l582;
4394 i584 += i583;
4395 l584 = l583;
4396 i585 += i584;
4397 l585 = l584;
4398 i586 += i585;
4399 l586 = l585;
4400 i587 += i586;
4401 l587 = l586;
4402 i588 += i587;
4403 l588 = l587;
4404 i589 += i588;
4405 l589 = l588;
4406 i590 += i589;
4407 l590 = l589;
4408 i591 += i590;
4409 l591 = l590;
4410 i592 += i591;
4411 l592 = l591;
4412 i593 += i592;
4413 l593 = l592;
4414 i594 += i593;
4415 l594 = l593;
4416 i595 += i594;
4417 l595 = l594;
4418 i596 += i595;
4419 l596 = l595;
4420 i597 += i596;
4421 l597 = l596;
4422 i598 += i597;
4423 l598 = l597;
4424 i599 += i598;
4425 l599 = l598;
4426 i600 += i599;
4427 l600 = l599;
4428 i601 += i600;
4429 l601 = l600;
4430 i602 += i601;
4431 l602 = l601;
4432 i603 += i602;
4433 l603 = l602;
4434 i604 += i603;
4435 l604 = l603;
4436 i605 += i604;
4437 l605 = l604;
4438 i606 += i605;
4439 l606 = l605;
4440 i607 += i606;
4441 l607 = l606;
4442 i608 += i607;
4443 l608 = l607;
4444 i609 += i608;
4445 l609 = l608;
4446 i610 += i609;
4447 l610 = l609;
4448 i611 += i610;
4449 l611 = l610;
4450 i612 += i611;
4451 l612 = l611;
4452 i613 += i612;
4453 l613 = l612;
4454 i614 += i613;
4455 l614 = l613;
4456 i615 += i614;
4457 l615 = l614;
4458 i616 += i615;
4459 l616 = l615;
4460 i617 += i616;
4461 l617 = l616;
4462 i618 += i617;
4463 l618 = l617;
4464 i619 += i618;
4465 l619 = l618;
4466 i620 += i619;
4467 l620 = l619;
4468 i621 += i620;
4469 l621 = l620;
4470 i622 += i621;
4471 l622 = l621;
4472 i623 += i622;
4473 l623 = l622;
4474 i624 += i623;
4475 l624 = l623;
4476 i625 += i624;
4477 l625 = l624;
4478 i626 += i625;
4479 l626 = l625;
4480 i627 += i626;
4481 l627 = l626;
4482 i628 += i627;
4483 l628 = l627;
4484 i629 += i628;
4485 l629 = l628;
4486 i630 += i629;
4487 l630 = l629;
4488 i631 += i630;
4489 l631 = l630;
4490 i632 += i631;
4491 l632 = l631;
4492 i633 += i632;
4493 l633 = l632;
4494 i634 += i633;
4495 l634 = l633;
4496 i635 += i634;
4497 l635 = l634;
4498 i636 += i635;
4499 l636 = l635;
4500 i637 += i636;
4501 l637 = l636;
4502 i638 += i637;
4503 l638 = l637;
4504 i639 += i638;
4505 l639 = l638;
4506 i640 += i639;
4507 l640 = l639;
4508 i641 += i640;
4509 l641 = l640;
4510 i642 += i641;
4511 l642 = l641;
4512 i643 += i642;
4513 l643 = l642;
4514 i644 += i643;
4515 l644 = l643;
4516 i645 += i644;
4517 l645 = l644;
4518 i646 += i645;
4519 l646 = l645;
4520 i647 += i646;
4521 l647 = l646;
4522 i648 += i647;
4523 l648 = l647;
4524 i649 += i648;
4525 l649 = l648;
4526 i650 += i649;
4527 l650 = l649;
4528 i651 += i650;
4529 l651 = l650;
4530 i652 += i651;
4531 l652 = l651;
4532 i653 += i652;
4533 l653 = l652;
4534 i654 += i653;
4535 l654 = l653;
4536 i655 += i654;
4537 l655 = l654;
4538 i656 += i655;
4539 l656 = l655;
4540 i657 += i656;
4541 l657 = l656;
4542 i658 += i657;
4543 l658 = l657;
4544 i659 += i658;
4545 l659 = l658;
4546 i660 += i659;
4547 l660 = l659;
4548 i661 += i660;
4549 l661 = l660;
4550 i662 += i661;
4551 l662 = l661;
4552 i663 += i662;
4553 l663 = l662;
4554 i664 += i663;
4555 l664 = l663;
4556 i665 += i664;
4557 l665 = l664;
4558 i666 += i665;
4559 l666 = l665;
4560 i667 += i666;
4561 l667 = l666;
4562 i668 += i667;
4563 l668 = l667;
4564 i669 += i668;
4565 l669 = l668;
4566 i670 += i669;
4567 l670 = l669;
4568 i671 += i670;
4569 l671 = l670;
4570 i672 += i671;
4571 l672 = l671;
4572 i673 += i672;
4573 l673 = l672;
4574 i674 += i673;
4575 l674 = l673;
4576 i675 += i674;
4577 l675 = l674;
4578 i676 += i675;
4579 l676 = l675;
4580 i677 += i676;
4581 l677 = l676;
4582 i678 += i677;
4583 l678 = l677;
4584 i679 += i678;
4585 l679 = l678;
4586 i680 += i679;
4587 l680 = l679;
4588 i681 += i680;
4589 l681 = l680;
4590 i682 += i681;
4591 l682 = l681;
4592 i683 += i682;
4593 l683 = l682;
4594 i684 += i683;
4595 l684 = l683;
4596 i685 += i684;
4597 l685 = l684;
4598 i686 += i685;
4599 l686 = l685;
4600 i687 += i686;
4601 l687 = l686;
4602 i688 += i687;
4603 l688 = l687;
4604 i689 += i688;
4605 l689 = l688;
4606 i690 += i689;
4607 l690 = l689;
4608 i691 += i690;
4609 l691 = l690;
4610 i692 += i691;
4611 l692 = l691;
4612 i693 += i692;
4613 l693 = l692;
4614 i694 += i693;
4615 l694 = l693;
4616 i695 += i694;
4617 l695 = l694;
4618 i696 += i695;
4619 l696 = l695;
4620 i697 += i696;
4621 l697 = l696;
4622 i698 += i697;
4623 l698 = l697;
4624 i699 += i698;
4625 l699 = l698;
4626 i700 += i699;
4627 l700 = l699;
4628 i701 += i700;
4629 l701 = l700;
4630 i702 += i701;
4631 l702 = l701;
4632 i703 += i702;
4633 l703 = l702;
4634 i704 += i703;
4635 l704 = l703;
4636 i705 += i704;
4637 l705 = l704;
4638 i706 += i705;
4639 l706 = l705;
4640 i707 += i706;
4641 l707 = l706;
4642 i708 += i707;
4643 l708 = l707;
4644 i709 += i708;
4645 l709 = l708;
4646 i710 += i709;
4647 l710 = l709;
4648 i711 += i710;
4649 l711 = l710;
4650 i712 += i711;
4651 l712 = l711;
4652 i713 += i712;
4653 l713 = l712;
4654 i714 += i713;
4655 l714 = l713;
4656 i715 += i714;
4657 l715 = l714;
4658 i716 += i715;
4659 l716 = l715;
4660 i717 += i716;
4661 l717 = l716;
4662 i718 += i717;
4663 l718 = l717;
4664 i719 += i718;
4665 l719 = l718;
4666 i720 += i719;
4667 l720 = l719;
4668 i721 += i720;
4669 l721 = l720;
4670 i722 += i721;
4671 l722 = l721;
4672 i723 += i722;
4673 l723 = l722;
4674 i724 += i723;
4675 l724 = l723;
4676 i725 += i724;
4677 l725 = l724;
4678 i726 += i725;
4679 l726 = l725;
4680 i727 += i726;
4681 l727 = l726;
4682 i728 += i727;
4683 l728 = l727;
4684 i729 += i728;
4685 l729 = l728;
4686 i730 += i729;
4687 l730 = l729;
4688 i731 += i730;
4689 l731 = l730;
4690 i732 += i731;
4691 l732 = l731;
4692 i733 += i732;
4693 l733 = l732;
4694 i734 += i733;
4695 l734 = l733;
4696 i735 += i734;
4697 l735 = l734;
4698 i736 += i735;
4699 l736 = l735;
4700 i737 += i736;
4701 l737 = l736;
4702 i738 += i737;
4703 l738 = l737;
4704 i739 += i738;
4705 l739 = l738;
4706 i740 += i739;
4707 l740 = l739;
4708 i741 += i740;
4709 l741 = l740;
4710 i742 += i741;
4711 l742 = l741;
4712 i743 += i742;
4713 l743 = l742;
4714 i744 += i743;
4715 l744 = l743;
4716 i745 += i744;
4717 l745 = l744;
4718 i746 += i745;
4719 l746 = l745;
4720 i747 += i746;
4721 l747 = l746;
4722 i748 += i747;
4723 l748 = l747;
4724 i749 += i748;
4725 l749 = l748;
4726 i750 += i749;
4727 l750 = l749;
4728 i751 += i750;
4729 l751 = l750;
4730 i752 += i751;
4731 l752 = l751;
4732 i753 += i752;
4733 l753 = l752;
4734 i754 += i753;
4735 l754 = l753;
4736 i755 += i754;
4737 l755 = l754;
4738 i756 += i755;
4739 l756 = l755;
4740 i757 += i756;
4741 l757 = l756;
4742 i758 += i757;
4743 l758 = l757;
4744 i759 += i758;
4745 l759 = l758;
4746 i760 += i759;
4747 l760 = l759;
4748 i761 += i760;
4749 l761 = l760;
4750 i762 += i761;
4751 l762 = l761;
4752 i763 += i762;
4753 l763 = l762;
4754 i764 += i763;
4755 l764 = l763;
4756 i765 += i764;
4757 l765 = l764;
4758 i766 += i765;
4759 l766 = l765;
4760 i767 += i766;
4761 l767 = l766;
4762 i768 += i767;
4763 l768 = l767;
4764 i769 += i768;
4765 l769 = l768;
4766 i770 += i769;
4767 l770 = l769;
4768 i771 += i770;
4769 l771 = l770;
4770 i772 += i771;
4771 l772 = l771;
4772 i773 += i772;
4773 l773 = l772;
4774 i774 += i773;
4775 l774 = l773;
4776 i775 += i774;
4777 l775 = l774;
4778 i776 += i775;
4779 l776 = l775;
4780 i777 += i776;
4781 l777 = l776;
4782 i778 += i777;
4783 l778 = l777;
4784 i779 += i778;
4785 l779 = l778;
4786 i780 += i779;
4787 l780 = l779;
4788 i781 += i780;
4789 l781 = l780;
4790 i782 += i781;
4791 l782 = l781;
4792 i783 += i782;
4793 l783 = l782;
4794 i784 += i783;
4795 l784 = l783;
4796 i785 += i784;
4797 l785 = l784;
4798 i786 += i785;
4799 l786 = l785;
4800 i787 += i786;
4801 l787 = l786;
4802 i788 += i787;
4803 l788 = l787;
4804 i789 += i788;
4805 l789 = l788;
4806 i790 += i789;
4807 l790 = l789;
4808 i791 += i790;
4809 l791 = l790;
4810 i792 += i791;
4811 l792 = l791;
4812 i793 += i792;
4813 l793 = l792;
4814 i794 += i793;
4815 l794 = l793;
4816 i795 += i794;
4817 l795 = l794;
4818 i796 += i795;
4819 l796 = l795;
4820 i797 += i796;
4821 l797 = l796;
4822 i798 += i797;
4823 l798 = l797;
4824 i799 += i798;
4825 l799 = l798;
4826 i800 += i799;
4827 l800 = l799;
4828 i801 += i800;
4829 l801 = l800;
4830 i802 += i801;
4831 l802 = l801;
4832 i803 += i802;
4833 l803 = l802;
4834 i804 += i803;
4835 l804 = l803;
4836 i805 += i804;
4837 l805 = l804;
4838 i806 += i805;
4839 l806 = l805;
4840 i807 += i806;
4841 l807 = l806;
4842 i808 += i807;
4843 l808 = l807;
4844 i809 += i808;
4845 l809 = l808;
4846 i810 += i809;
4847 l810 = l809;
4848 i811 += i810;
4849 l811 = l810;
4850 i812 += i811;
4851 l812 = l811;
4852 i813 += i812;
4853 l813 = l812;
4854 i814 += i813;
4855 l814 = l813;
4856 i815 += i814;
4857 l815 = l814;
4858 i816 += i815;
4859 l816 = l815;
4860 i817 += i816;
4861 l817 = l816;
4862 i818 += i817;
4863 l818 = l817;
4864 i819 += i818;
4865 l819 = l818;
4866 i820 += i819;
4867 l820 = l819;
4868 i821 += i820;
4869 l821 = l820;
4870 i822 += i821;
4871 l822 = l821;
4872 i823 += i822;
4873 l823 = l822;
4874 i824 += i823;
4875 l824 = l823;
4876 i825 += i824;
4877 l825 = l824;
4878 i826 += i825;
4879 l826 = l825;
4880 i827 += i826;
4881 l827 = l826;
4882 i828 += i827;
4883 l828 = l827;
4884 i829 += i828;
4885 l829 = l828;
4886 i830 += i829;
4887 l830 = l829;
4888 i831 += i830;
4889 l831 = l830;
4890 i832 += i831;
4891 l832 = l831;
4892 i833 += i832;
4893 l833 = l832;
4894 i834 += i833;
4895 l834 = l833;
4896 i835 += i834;
4897 l835 = l834;
4898 i836 += i835;
4899 l836 = l835;
4900 i837 += i836;
4901 l837 = l836;
4902 i838 += i837;
4903 l838 = l837;
4904 i839 += i838;
4905 l839 = l838;
4906 i840 += i839;
4907 l840 = l839;
4908 i841 += i840;
4909 l841 = l840;
4910 i842 += i841;
4911 l842 = l841;
4912 i843 += i842;
4913 l843 = l842;
4914 i844 += i843;
4915 l844 = l843;
4916 i845 += i844;
4917 l845 = l844;
4918 i846 += i845;
4919 l846 = l845;
4920 i847 += i846;
4921 l847 = l846;
4922 i848 += i847;
4923 l848 = l847;
4924 i849 += i848;
4925 l849 = l848;
4926 i850 += i849;
4927 l850 = l849;
4928 i851 += i850;
4929 l851 = l850;
4930 i852 += i851;
4931 l852 = l851;
4932 i853 += i852;
4933 l853 = l852;
4934 i854 += i853;
4935 l854 = l853;
4936 i855 += i854;
4937 l855 = l854;
4938 i856 += i855;
4939 l856 = l855;
4940 i857 += i856;
4941 l857 = l856;
4942 i858 += i857;
4943 l858 = l857;
4944 i859 += i858;
4945 l859 = l858;
4946 i860 += i859;
4947 l860 = l859;
4948 i861 += i860;
4949 l861 = l860;
4950 i862 += i861;
4951 l862 = l861;
4952 i863 += i862;
4953 l863 = l862;
4954 i864 += i863;
4955 l864 = l863;
4956 i865 += i864;
4957 l865 = l864;
4958 i866 += i865;
4959 l866 = l865;
4960 i867 += i866;
4961 l867 = l866;
4962 i868 += i867;
4963 l868 = l867;
4964 i869 += i868;
4965 l869 = l868;
4966 i870 += i869;
4967 l870 = l869;
4968 i871 += i870;
4969 l871 = l870;
4970 i872 += i871;
4971 l872 = l871;
4972 i873 += i872;
4973 l873 = l872;
4974 i874 += i873;
4975 l874 = l873;
4976 i875 += i874;
4977 l875 = l874;
4978 i876 += i875;
4979 l876 = l875;
4980 i877 += i876;
4981 l877 = l876;
4982 i878 += i877;
4983 l878 = l877;
4984 i879 += i878;
4985 l879 = l878;
4986 i880 += i879;
4987 l880 = l879;
4988 i881 += i880;
4989 l881 = l880;
4990 i882 += i881;
4991 l882 = l881;
4992 i883 += i882;
4993 l883 = l882;
4994 i884 += i883;
4995 l884 = l883;
4996 i885 += i884;
4997 l885 = l884;
4998 i886 += i885;
4999 l886 = l885;
5000 i887 += i886;
5001 l887 = l886;
5002 i888 += i887;
5003 l888 = l887;
5004 i889 += i888;
5005 l889 = l888;
5006 i890 += i889;
5007 l890 = l889;
5008 i891 += i890;
5009 l891 = l890;
5010 i892 += i891;
5011 l892 = l891;
5012 i893 += i892;
5013 l893 = l892;
5014 i894 += i893;
5015 l894 = l893;
5016 i895 += i894;
5017 l895 = l894;
5018 i896 += i895;
5019 l896 = l895;
5020 i897 += i896;
5021 l897 = l896;
5022 i898 += i897;
5023 l898 = l897;
5024 i899 += i898;
5025 l899 = l898;
5026 i900 += i899;
5027 l900 = l899;
5028 i901 += i900;
5029 l901 = l900;
5030 i902 += i901;
5031 l902 = l901;
5032 i903 += i902;
5033 l903 = l902;
5034 i904 += i903;
5035 l904 = l903;
5036 i905 += i904;
5037 l905 = l904;
5038 i906 += i905;
5039 l906 = l905;
5040 i907 += i906;
5041 l907 = l906;
5042 i908 += i907;
5043 l908 = l907;
5044 i909 += i908;
5045 l909 = l908;
5046 i910 += i909;
5047 l910 = l909;
5048 i911 += i910;
5049 l911 = l910;
5050 i912 += i911;
5051 l912 = l911;
5052 i913 += i912;
5053 l913 = l912;
5054 i914 += i913;
5055 l914 = l913;
5056 i915 += i914;
5057 l915 = l914;
5058 i916 += i915;
5059 l916 = l915;
5060 i917 += i916;
5061 l917 = l916;
5062 i918 += i917;
5063 l918 = l917;
5064 i919 += i918;
5065 l919 = l918;
5066 i920 += i919;
5067 l920 = l919;
5068 i921 += i920;
5069 l921 = l920;
5070 i922 += i921;
5071 l922 = l921;
5072 i923 += i922;
5073 l923 = l922;
5074 i924 += i923;
5075 l924 = l923;
5076 i925 += i924;
5077 l925 = l924;
5078 i926 += i925;
5079 l926 = l925;
5080 i927 += i926;
5081 l927 = l926;
5082 i928 += i927;
5083 l928 = l927;
5084 i929 += i928;
5085 l929 = l928;
5086 i930 += i929;
5087 l930 = l929;
5088 i931 += i930;
5089 l931 = l930;
5090 i932 += i931;
5091 l932 = l931;
5092 i933 += i932;
5093 l933 = l932;
5094 i934 += i933;
5095 l934 = l933;
5096 i935 += i934;
5097 l935 = l934;
5098 i936 += i935;
5099 l936 = l935;
5100 i937 += i936;
5101 l937 = l936;
5102 i938 += i937;
5103 l938 = l937;
5104 i939 += i938;
5105 l939 = l938;
5106 i940 += i939;
5107 l940 = l939;
5108 i941 += i940;
5109 l941 = l940;
5110 i942 += i941;
5111 l942 = l941;
5112 i943 += i942;
5113 l943 = l942;
5114 i944 += i943;
5115 l944 = l943;
5116 i945 += i944;
5117 l945 = l944;
5118 i946 += i945;
5119 l946 = l945;
5120 i947 += i946;
5121 l947 = l946;
5122 i948 += i947;
5123 l948 = l947;
5124 i949 += i948;
5125 l949 = l948;
5126 i950 += i949;
5127 l950 = l949;
5128 i951 += i950;
5129 l951 = l950;
5130 i952 += i951;
5131 l952 = l951;
5132 i953 += i952;
5133 l953 = l952;
5134 i954 += i953;
5135 l954 = l953;
5136 i955 += i954;
5137 l955 = l954;
5138 i956 += i955;
5139 l956 = l955;
5140 i957 += i956;
5141 l957 = l956;
5142 i958 += i957;
5143 l958 = l957;
5144 i959 += i958;
5145 l959 = l958;
5146 i960 += i959;
5147 l960 = l959;
5148 i961 += i960;
5149 l961 = l960;
5150 i962 += i961;
5151 l962 = l961;
5152 i963 += i962;
5153 l963 = l962;
5154 i964 += i963;
5155 l964 = l963;
5156 i965 += i964;
5157 l965 = l964;
5158 i966 += i965;
5159 l966 = l965;
5160 i967 += i966;
5161 l967 = l966;
5162 i968 += i967;
5163 l968 = l967;
5164 i969 += i968;
5165 l969 = l968;
5166 i970 += i969;
5167 l970 = l969;
5168 i971 += i970;
5169 l971 = l970;
5170 i972 += i971;
5171 l972 = l971;
5172 i973 += i972;
5173 l973 = l972;
5174 i974 += i973;
5175 l974 = l973;
5176 i975 += i974;
5177 l975 = l974;
5178 i976 += i975;
5179 l976 = l975;
5180 i977 += i976;
5181 l977 = l976;
5182 i978 += i977;
5183 l978 = l977;
5184 i979 += i978;
5185 l979 = l978;
5186 i980 += i979;
5187 l980 = l979;
5188 i981 += i980;
5189 l981 = l980;
5190 i982 += i981;
5191 l982 = l981;
5192 i983 += i982;
5193 l983 = l982;
5194 i984 += i983;
5195 l984 = l983;
5196 i985 += i984;
5197 l985 = l984;
5198 i986 += i985;
5199 l986 = l985;
5200 i987 += i986;
5201 l987 = l986;
5202 i988 += i987;
5203 l988 = l987;
5204 i989 += i988;
5205 l989 = l988;
5206 i990 += i989;
5207 l990 = l989;
5208 i991 += i990;
5209 l991 = l990;
5210 i992 += i991;
5211 l992 = l991;
5212 i993 += i992;
5213 l993 = l992;
5214 i994 += i993;
5215 l994 = l993;
5216 i995 += i994;
5217 l995 = l994;
5218 i996 += i995;
5219 l996 = l995;
5220 i997 += i996;
5221 l997 = l996;
5222 i998 += i997;
5223 l998 = l997;
5224 i999 += i998;
5225 l999 = l998;
5226 return i999 + l999;
5227 }
5228
Ian Rogers513c64a2012-02-26 15:16:23 -08005229 static double largeFrameFloat() {
5230 float f0 = 0;
5231 double d0 = 0;
5232 float f1 = 1;
5233 double d1 = 1;
5234 float f2 = 2;
5235 double d2 = 2;
5236 float f3 = 3;
5237 double d3 = 3;
5238 float f4 = 4;
5239 double d4 = 4;
5240 float f5 = 5;
5241 double d5 = 5;
5242 float f6 = 6;
5243 double d6 = 6;
5244 float f7 = 7;
5245 double d7 = 7;
5246 float f8 = 8;
5247 double d8 = 8;
5248 float f9 = 9;
5249 double d9 = 9;
5250 float f10 = 10;
5251 double d10 = 10;
5252 float f11 = 11;
5253 double d11 = 11;
5254 float f12 = 12;
5255 double d12 = 12;
5256 float f13 = 13;
5257 double d13 = 13;
5258 float f14 = 14;
5259 double d14 = 14;
5260 float f15 = 15;
5261 double d15 = 15;
5262 float f16 = 16;
5263 double d16 = 16;
5264 float f17 = 17;
5265 double d17 = 17;
5266 float f18 = 18;
5267 double d18 = 18;
5268 float f19 = 19;
5269 double d19 = 19;
5270 float f20 = 20;
5271 double d20 = 20;
5272 float f21 = 21;
5273 double d21 = 21;
5274 float f22 = 22;
5275 double d22 = 22;
5276 float f23 = 23;
5277 double d23 = 23;
5278 float f24 = 24;
5279 double d24 = 24;
5280 float f25 = 25;
5281 double d25 = 25;
5282 float f26 = 26;
5283 double d26 = 26;
5284 float f27 = 27;
5285 double d27 = 27;
5286 float f28 = 28;
5287 double d28 = 28;
5288 float f29 = 29;
5289 double d29 = 29;
5290 float f30 = 30;
5291 double d30 = 30;
5292 float f31 = 31;
5293 double d31 = 31;
5294 float f32 = 32;
5295 double d32 = 32;
5296 float f33 = 33;
5297 double d33 = 33;
5298 float f34 = 34;
5299 double d34 = 34;
5300 float f35 = 35;
5301 double d35 = 35;
5302 float f36 = 36;
5303 double d36 = 36;
5304 float f37 = 37;
5305 double d37 = 37;
5306 float f38 = 38;
5307 double d38 = 38;
5308 float f39 = 39;
5309 double d39 = 39;
5310 float f40 = 40;
5311 double d40 = 40;
5312 float f41 = 41;
5313 double d41 = 41;
5314 float f42 = 42;
5315 double d42 = 42;
5316 float f43 = 43;
5317 double d43 = 43;
5318 float f44 = 44;
5319 double d44 = 44;
5320 float f45 = 45;
5321 double d45 = 45;
5322 float f46 = 46;
5323 double d46 = 46;
5324 float f47 = 47;
5325 double d47 = 47;
5326 float f48 = 48;
5327 double d48 = 48;
5328 float f49 = 49;
5329 double d49 = 49;
5330 float f50 = 50;
5331 double d50 = 50;
5332 float f51 = 51;
5333 double d51 = 51;
5334 float f52 = 52;
5335 double d52 = 52;
5336 float f53 = 53;
5337 double d53 = 53;
5338 float f54 = 54;
5339 double d54 = 54;
5340 float f55 = 55;
5341 double d55 = 55;
5342 float f56 = 56;
5343 double d56 = 56;
5344 float f57 = 57;
5345 double d57 = 57;
5346 float f58 = 58;
5347 double d58 = 58;
5348 float f59 = 59;
5349 double d59 = 59;
5350 float f60 = 60;
5351 double d60 = 60;
5352 float f61 = 61;
5353 double d61 = 61;
5354 float f62 = 62;
5355 double d62 = 62;
5356 float f63 = 63;
5357 double d63 = 63;
5358 float f64 = 64;
5359 double d64 = 64;
5360 float f65 = 65;
5361 double d65 = 65;
5362 float f66 = 66;
5363 double d66 = 66;
5364 float f67 = 67;
5365 double d67 = 67;
5366 float f68 = 68;
5367 double d68 = 68;
5368 float f69 = 69;
5369 double d69 = 69;
5370 float f70 = 70;
5371 double d70 = 70;
5372 float f71 = 71;
5373 double d71 = 71;
5374 float f72 = 72;
5375 double d72 = 72;
5376 float f73 = 73;
5377 double d73 = 73;
5378 float f74 = 74;
5379 double d74 = 74;
5380 float f75 = 75;
5381 double d75 = 75;
5382 float f76 = 76;
5383 double d76 = 76;
5384 float f77 = 77;
5385 double d77 = 77;
5386 float f78 = 78;
5387 double d78 = 78;
5388 float f79 = 79;
5389 double d79 = 79;
5390 float f80 = 80;
5391 double d80 = 80;
5392 float f81 = 81;
5393 double d81 = 81;
5394 float f82 = 82;
5395 double d82 = 82;
5396 float f83 = 83;
5397 double d83 = 83;
5398 float f84 = 84;
5399 double d84 = 84;
5400 float f85 = 85;
5401 double d85 = 85;
5402 float f86 = 86;
5403 double d86 = 86;
5404 float f87 = 87;
5405 double d87 = 87;
5406 float f88 = 88;
5407 double d88 = 88;
5408 float f89 = 89;
5409 double d89 = 89;
5410 float f90 = 90;
5411 double d90 = 90;
5412 float f91 = 91;
5413 double d91 = 91;
5414 float f92 = 92;
5415 double d92 = 92;
5416 float f93 = 93;
5417 double d93 = 93;
5418 float f94 = 94;
5419 double d94 = 94;
5420 float f95 = 95;
5421 double d95 = 95;
5422 float f96 = 96;
5423 double d96 = 96;
5424 float f97 = 97;
5425 double d97 = 97;
5426 float f98 = 98;
5427 double d98 = 98;
5428 float f99 = 99;
5429 double d99 = 99;
5430 float f100 = 100;
5431 double d100 = 100;
5432 float f101 = 101;
5433 double d101 = 101;
5434 float f102 = 102;
5435 double d102 = 102;
5436 float f103 = 103;
5437 double d103 = 103;
5438 float f104 = 104;
5439 double d104 = 104;
5440 float f105 = 105;
5441 double d105 = 105;
5442 float f106 = 106;
5443 double d106 = 106;
5444 float f107 = 107;
5445 double d107 = 107;
5446 float f108 = 108;
5447 double d108 = 108;
5448 float f109 = 109;
5449 double d109 = 109;
5450 float f110 = 110;
5451 double d110 = 110;
5452 float f111 = 111;
5453 double d111 = 111;
5454 float f112 = 112;
5455 double d112 = 112;
5456 float f113 = 113;
5457 double d113 = 113;
5458 float f114 = 114;
5459 double d114 = 114;
5460 float f115 = 115;
5461 double d115 = 115;
5462 float f116 = 116;
5463 double d116 = 116;
5464 float f117 = 117;
5465 double d117 = 117;
5466 float f118 = 118;
5467 double d118 = 118;
5468 float f119 = 119;
5469 double d119 = 119;
5470 float f120 = 120;
5471 double d120 = 120;
5472 float f121 = 121;
5473 double d121 = 121;
5474 float f122 = 122;
5475 double d122 = 122;
5476 float f123 = 123;
5477 double d123 = 123;
5478 float f124 = 124;
5479 double d124 = 124;
5480 float f125 = 125;
5481 double d125 = 125;
5482 float f126 = 126;
5483 double d126 = 126;
5484 float f127 = 127;
5485 double d127 = 127;
5486 float f128 = 128;
5487 double d128 = 128;
5488 float f129 = 129;
5489 double d129 = 129;
5490 float f130 = 130;
5491 double d130 = 130;
5492 float f131 = 131;
5493 double d131 = 131;
5494 float f132 = 132;
5495 double d132 = 132;
5496 float f133 = 133;
5497 double d133 = 133;
5498 float f134 = 134;
5499 double d134 = 134;
5500 float f135 = 135;
5501 double d135 = 135;
5502 float f136 = 136;
5503 double d136 = 136;
5504 float f137 = 137;
5505 double d137 = 137;
5506 float f138 = 138;
5507 double d138 = 138;
5508 float f139 = 139;
5509 double d139 = 139;
5510 float f140 = 140;
5511 double d140 = 140;
5512 float f141 = 141;
5513 double d141 = 141;
5514 float f142 = 142;
5515 double d142 = 142;
5516 float f143 = 143;
5517 double d143 = 143;
5518 float f144 = 144;
5519 double d144 = 144;
5520 float f145 = 145;
5521 double d145 = 145;
5522 float f146 = 146;
5523 double d146 = 146;
5524 float f147 = 147;
5525 double d147 = 147;
5526 float f148 = 148;
5527 double d148 = 148;
5528 float f149 = 149;
5529 double d149 = 149;
5530 float f150 = 150;
5531 double d150 = 150;
5532 float f151 = 151;
5533 double d151 = 151;
5534 float f152 = 152;
5535 double d152 = 152;
5536 float f153 = 153;
5537 double d153 = 153;
5538 float f154 = 154;
5539 double d154 = 154;
5540 float f155 = 155;
5541 double d155 = 155;
5542 float f156 = 156;
5543 double d156 = 156;
5544 float f157 = 157;
5545 double d157 = 157;
5546 float f158 = 158;
5547 double d158 = 158;
5548 float f159 = 159;
5549 double d159 = 159;
5550 float f160 = 160;
5551 double d160 = 160;
5552 float f161 = 161;
5553 double d161 = 161;
5554 float f162 = 162;
5555 double d162 = 162;
5556 float f163 = 163;
5557 double d163 = 163;
5558 float f164 = 164;
5559 double d164 = 164;
5560 float f165 = 165;
5561 double d165 = 165;
5562 float f166 = 166;
5563 double d166 = 166;
5564 float f167 = 167;
5565 double d167 = 167;
5566 float f168 = 168;
5567 double d168 = 168;
5568 float f169 = 169;
5569 double d169 = 169;
5570 float f170 = 170;
5571 double d170 = 170;
5572 float f171 = 171;
5573 double d171 = 171;
5574 float f172 = 172;
5575 double d172 = 172;
5576 float f173 = 173;
5577 double d173 = 173;
5578 float f174 = 174;
5579 double d174 = 174;
5580 float f175 = 175;
5581 double d175 = 175;
5582 float f176 = 176;
5583 double d176 = 176;
5584 float f177 = 177;
5585 double d177 = 177;
5586 float f178 = 178;
5587 double d178 = 178;
5588 float f179 = 179;
5589 double d179 = 179;
5590 float f180 = 180;
5591 double d180 = 180;
5592 float f181 = 181;
5593 double d181 = 181;
5594 float f182 = 182;
5595 double d182 = 182;
5596 float f183 = 183;
5597 double d183 = 183;
5598 float f184 = 184;
5599 double d184 = 184;
5600 float f185 = 185;
5601 double d185 = 185;
5602 float f186 = 186;
5603 double d186 = 186;
5604 float f187 = 187;
5605 double d187 = 187;
5606 float f188 = 188;
5607 double d188 = 188;
5608 float f189 = 189;
5609 double d189 = 189;
5610 float f190 = 190;
5611 double d190 = 190;
5612 float f191 = 191;
5613 double d191 = 191;
5614 float f192 = 192;
5615 double d192 = 192;
5616 float f193 = 193;
5617 double d193 = 193;
5618 float f194 = 194;
5619 double d194 = 194;
5620 float f195 = 195;
5621 double d195 = 195;
5622 float f196 = 196;
5623 double d196 = 196;
5624 float f197 = 197;
5625 double d197 = 197;
5626 float f198 = 198;
5627 double d198 = 198;
5628 float f199 = 199;
5629 double d199 = 199;
5630 float f200 = 200;
5631 double d200 = 200;
5632 float f201 = 201;
5633 double d201 = 201;
5634 float f202 = 202;
5635 double d202 = 202;
5636 float f203 = 203;
5637 double d203 = 203;
5638 float f204 = 204;
5639 double d204 = 204;
5640 float f205 = 205;
5641 double d205 = 205;
5642 float f206 = 206;
5643 double d206 = 206;
5644 float f207 = 207;
5645 double d207 = 207;
5646 float f208 = 208;
5647 double d208 = 208;
5648 float f209 = 209;
5649 double d209 = 209;
5650 float f210 = 210;
5651 double d210 = 210;
5652 float f211 = 211;
5653 double d211 = 211;
5654 float f212 = 212;
5655 double d212 = 212;
5656 float f213 = 213;
5657 double d213 = 213;
5658 float f214 = 214;
5659 double d214 = 214;
5660 float f215 = 215;
5661 double d215 = 215;
5662 float f216 = 216;
5663 double d216 = 216;
5664 float f217 = 217;
5665 double d217 = 217;
5666 float f218 = 218;
5667 double d218 = 218;
5668 float f219 = 219;
5669 double d219 = 219;
5670 float f220 = 220;
5671 double d220 = 220;
5672 float f221 = 221;
5673 double d221 = 221;
5674 float f222 = 222;
5675 double d222 = 222;
5676 float f223 = 223;
5677 double d223 = 223;
5678 float f224 = 224;
5679 double d224 = 224;
5680 float f225 = 225;
5681 double d225 = 225;
5682 float f226 = 226;
5683 double d226 = 226;
5684 float f227 = 227;
5685 double d227 = 227;
5686 float f228 = 228;
5687 double d228 = 228;
5688 float f229 = 229;
5689 double d229 = 229;
5690 float f230 = 230;
5691 double d230 = 230;
5692 float f231 = 231;
5693 double d231 = 231;
5694 float f232 = 232;
5695 double d232 = 232;
5696 float f233 = 233;
5697 double d233 = 233;
5698 float f234 = 234;
5699 double d234 = 234;
5700 float f235 = 235;
5701 double d235 = 235;
5702 float f236 = 236;
5703 double d236 = 236;
5704 float f237 = 237;
5705 double d237 = 237;
5706 float f238 = 238;
5707 double d238 = 238;
5708 float f239 = 239;
5709 double d239 = 239;
5710 float f240 = 240;
5711 double d240 = 240;
5712 float f241 = 241;
5713 double d241 = 241;
5714 float f242 = 242;
5715 double d242 = 242;
5716 float f243 = 243;
5717 double d243 = 243;
5718 float f244 = 244;
5719 double d244 = 244;
5720 float f245 = 245;
5721 double d245 = 245;
5722 float f246 = 246;
5723 double d246 = 246;
5724 float f247 = 247;
5725 double d247 = 247;
5726 float f248 = 248;
5727 double d248 = 248;
5728 float f249 = 249;
5729 double d249 = 249;
5730 float f250 = 250;
5731 double d250 = 250;
5732 float f251 = 251;
5733 double d251 = 251;
5734 float f252 = 252;
5735 double d252 = 252;
5736 float f253 = 253;
5737 double d253 = 253;
5738 float f254 = 254;
5739 double d254 = 254;
5740 float f255 = 255;
5741 double d255 = 255;
5742 float f256 = 256;
5743 double d256 = 256;
5744 float f257 = 257;
5745 double d257 = 257;
5746 float f258 = 258;
5747 double d258 = 258;
5748 float f259 = 259;
5749 double d259 = 259;
5750 float f260 = 260;
5751 double d260 = 260;
5752 float f261 = 261;
5753 double d261 = 261;
5754 float f262 = 262;
5755 double d262 = 262;
5756 float f263 = 263;
5757 double d263 = 263;
5758 float f264 = 264;
5759 double d264 = 264;
5760 float f265 = 265;
5761 double d265 = 265;
5762 float f266 = 266;
5763 double d266 = 266;
5764 float f267 = 267;
5765 double d267 = 267;
5766 float f268 = 268;
5767 double d268 = 268;
5768 float f269 = 269;
5769 double d269 = 269;
5770 float f270 = 270;
5771 double d270 = 270;
5772 float f271 = 271;
5773 double d271 = 271;
5774 float f272 = 272;
5775 double d272 = 272;
5776 float f273 = 273;
5777 double d273 = 273;
5778 float f274 = 274;
5779 double d274 = 274;
5780 float f275 = 275;
5781 double d275 = 275;
5782 float f276 = 276;
5783 double d276 = 276;
5784 float f277 = 277;
5785 double d277 = 277;
5786 float f278 = 278;
5787 double d278 = 278;
5788 float f279 = 279;
5789 double d279 = 279;
5790 float f280 = 280;
5791 double d280 = 280;
5792 float f281 = 281;
5793 double d281 = 281;
5794 float f282 = 282;
5795 double d282 = 282;
5796 float f283 = 283;
5797 double d283 = 283;
5798 float f284 = 284;
5799 double d284 = 284;
5800 float f285 = 285;
5801 double d285 = 285;
5802 float f286 = 286;
5803 double d286 = 286;
5804 float f287 = 287;
5805 double d287 = 287;
5806 float f288 = 288;
5807 double d288 = 288;
5808 float f289 = 289;
5809 double d289 = 289;
5810 float f290 = 290;
5811 double d290 = 290;
5812 float f291 = 291;
5813 double d291 = 291;
5814 float f292 = 292;
5815 double d292 = 292;
5816 float f293 = 293;
5817 double d293 = 293;
5818 float f294 = 294;
5819 double d294 = 294;
5820 float f295 = 295;
5821 double d295 = 295;
5822 float f296 = 296;
5823 double d296 = 296;
5824 float f297 = 297;
5825 double d297 = 297;
5826 float f298 = 298;
5827 double d298 = 298;
5828 float f299 = 299;
5829 double d299 = 299;
5830 float f300 = 300;
5831 double d300 = 300;
5832 float f301 = 301;
5833 double d301 = 301;
5834 float f302 = 302;
5835 double d302 = 302;
5836 float f303 = 303;
5837 double d303 = 303;
5838 float f304 = 304;
5839 double d304 = 304;
5840 float f305 = 305;
5841 double d305 = 305;
5842 float f306 = 306;
5843 double d306 = 306;
5844 float f307 = 307;
5845 double d307 = 307;
5846 float f308 = 308;
5847 double d308 = 308;
5848 float f309 = 309;
5849 double d309 = 309;
5850 float f310 = 310;
5851 double d310 = 310;
5852 float f311 = 311;
5853 double d311 = 311;
5854 float f312 = 312;
5855 double d312 = 312;
5856 float f313 = 313;
5857 double d313 = 313;
5858 float f314 = 314;
5859 double d314 = 314;
5860 float f315 = 315;
5861 double d315 = 315;
5862 float f316 = 316;
5863 double d316 = 316;
5864 float f317 = 317;
5865 double d317 = 317;
5866 float f318 = 318;
5867 double d318 = 318;
5868 float f319 = 319;
5869 double d319 = 319;
5870 float f320 = 320;
5871 double d320 = 320;
5872 float f321 = 321;
5873 double d321 = 321;
5874 float f322 = 322;
5875 double d322 = 322;
5876 float f323 = 323;
5877 double d323 = 323;
5878 float f324 = 324;
5879 double d324 = 324;
5880 float f325 = 325;
5881 double d325 = 325;
5882 float f326 = 326;
5883 double d326 = 326;
5884 float f327 = 327;
5885 double d327 = 327;
5886 float f328 = 328;
5887 double d328 = 328;
5888 float f329 = 329;
5889 double d329 = 329;
5890 float f330 = 330;
5891 double d330 = 330;
5892 float f331 = 331;
5893 double d331 = 331;
5894 float f332 = 332;
5895 double d332 = 332;
5896 float f333 = 333;
5897 double d333 = 333;
5898 float f334 = 334;
5899 double d334 = 334;
5900 float f335 = 335;
5901 double d335 = 335;
5902 float f336 = 336;
5903 double d336 = 336;
5904 float f337 = 337;
5905 double d337 = 337;
5906 float f338 = 338;
5907 double d338 = 338;
5908 float f339 = 339;
5909 double d339 = 339;
5910 float f340 = 340;
5911 double d340 = 340;
5912 float f341 = 341;
5913 double d341 = 341;
5914 float f342 = 342;
5915 double d342 = 342;
5916 float f343 = 343;
5917 double d343 = 343;
5918 float f344 = 344;
5919 double d344 = 344;
5920 float f345 = 345;
5921 double d345 = 345;
5922 float f346 = 346;
5923 double d346 = 346;
5924 float f347 = 347;
5925 double d347 = 347;
5926 float f348 = 348;
5927 double d348 = 348;
5928 float f349 = 349;
5929 double d349 = 349;
5930 float f350 = 350;
5931 double d350 = 350;
5932 float f351 = 351;
5933 double d351 = 351;
5934 float f352 = 352;
5935 double d352 = 352;
5936 float f353 = 353;
5937 double d353 = 353;
5938 float f354 = 354;
5939 double d354 = 354;
5940 float f355 = 355;
5941 double d355 = 355;
5942 float f356 = 356;
5943 double d356 = 356;
5944 float f357 = 357;
5945 double d357 = 357;
5946 float f358 = 358;
5947 double d358 = 358;
5948 float f359 = 359;
5949 double d359 = 359;
5950 float f360 = 360;
5951 double d360 = 360;
5952 float f361 = 361;
5953 double d361 = 361;
5954 float f362 = 362;
5955 double d362 = 362;
5956 float f363 = 363;
5957 double d363 = 363;
5958 float f364 = 364;
5959 double d364 = 364;
5960 float f365 = 365;
5961 double d365 = 365;
5962 float f366 = 366;
5963 double d366 = 366;
5964 float f367 = 367;
5965 double d367 = 367;
5966 float f368 = 368;
5967 double d368 = 368;
5968 float f369 = 369;
5969 double d369 = 369;
5970 float f370 = 370;
5971 double d370 = 370;
5972 float f371 = 371;
5973 double d371 = 371;
5974 float f372 = 372;
5975 double d372 = 372;
5976 float f373 = 373;
5977 double d373 = 373;
5978 float f374 = 374;
5979 double d374 = 374;
5980 float f375 = 375;
5981 double d375 = 375;
5982 float f376 = 376;
5983 double d376 = 376;
5984 float f377 = 377;
5985 double d377 = 377;
5986 float f378 = 378;
5987 double d378 = 378;
5988 float f379 = 379;
5989 double d379 = 379;
5990 float f380 = 380;
5991 double d380 = 380;
5992 float f381 = 381;
5993 double d381 = 381;
5994 float f382 = 382;
5995 double d382 = 382;
5996 float f383 = 383;
5997 double d383 = 383;
5998 float f384 = 384;
5999 double d384 = 384;
6000 float f385 = 385;
6001 double d385 = 385;
6002 float f386 = 386;
6003 double d386 = 386;
6004 float f387 = 387;
6005 double d387 = 387;
6006 float f388 = 388;
6007 double d388 = 388;
6008 float f389 = 389;
6009 double d389 = 389;
6010 float f390 = 390;
6011 double d390 = 390;
6012 float f391 = 391;
6013 double d391 = 391;
6014 float f392 = 392;
6015 double d392 = 392;
6016 float f393 = 393;
6017 double d393 = 393;
6018 float f394 = 394;
6019 double d394 = 394;
6020 float f395 = 395;
6021 double d395 = 395;
6022 float f396 = 396;
6023 double d396 = 396;
6024 float f397 = 397;
6025 double d397 = 397;
6026 float f398 = 398;
6027 double d398 = 398;
6028 float f399 = 399;
6029 double d399 = 399;
6030 float f400 = 400;
6031 double d400 = 400;
6032 float f401 = 401;
6033 double d401 = 401;
6034 float f402 = 402;
6035 double d402 = 402;
6036 float f403 = 403;
6037 double d403 = 403;
6038 float f404 = 404;
6039 double d404 = 404;
6040 float f405 = 405;
6041 double d405 = 405;
6042 float f406 = 406;
6043 double d406 = 406;
6044 float f407 = 407;
6045 double d407 = 407;
6046 float f408 = 408;
6047 double d408 = 408;
6048 float f409 = 409;
6049 double d409 = 409;
6050 float f410 = 410;
6051 double d410 = 410;
6052 float f411 = 411;
6053 double d411 = 411;
6054 float f412 = 412;
6055 double d412 = 412;
6056 float f413 = 413;
6057 double d413 = 413;
6058 float f414 = 414;
6059 double d414 = 414;
6060 float f415 = 415;
6061 double d415 = 415;
6062 float f416 = 416;
6063 double d416 = 416;
6064 float f417 = 417;
6065 double d417 = 417;
6066 float f418 = 418;
6067 double d418 = 418;
6068 float f419 = 419;
6069 double d419 = 419;
6070 float f420 = 420;
6071 double d420 = 420;
6072 float f421 = 421;
6073 double d421 = 421;
6074 float f422 = 422;
6075 double d422 = 422;
6076 float f423 = 423;
6077 double d423 = 423;
6078 float f424 = 424;
6079 double d424 = 424;
6080 float f425 = 425;
6081 double d425 = 425;
6082 float f426 = 426;
6083 double d426 = 426;
6084 float f427 = 427;
6085 double d427 = 427;
6086 float f428 = 428;
6087 double d428 = 428;
6088 float f429 = 429;
6089 double d429 = 429;
6090 float f430 = 430;
6091 double d430 = 430;
6092 float f431 = 431;
6093 double d431 = 431;
6094 float f432 = 432;
6095 double d432 = 432;
6096 float f433 = 433;
6097 double d433 = 433;
6098 float f434 = 434;
6099 double d434 = 434;
6100 float f435 = 435;
6101 double d435 = 435;
6102 float f436 = 436;
6103 double d436 = 436;
6104 float f437 = 437;
6105 double d437 = 437;
6106 float f438 = 438;
6107 double d438 = 438;
6108 float f439 = 439;
6109 double d439 = 439;
6110 float f440 = 440;
6111 double d440 = 440;
6112 float f441 = 441;
6113 double d441 = 441;
6114 float f442 = 442;
6115 double d442 = 442;
6116 float f443 = 443;
6117 double d443 = 443;
6118 float f444 = 444;
6119 double d444 = 444;
6120 float f445 = 445;
6121 double d445 = 445;
6122 float f446 = 446;
6123 double d446 = 446;
6124 float f447 = 447;
6125 double d447 = 447;
6126 float f448 = 448;
6127 double d448 = 448;
6128 float f449 = 449;
6129 double d449 = 449;
6130 float f450 = 450;
6131 double d450 = 450;
6132 float f451 = 451;
6133 double d451 = 451;
6134 float f452 = 452;
6135 double d452 = 452;
6136 float f453 = 453;
6137 double d453 = 453;
6138 float f454 = 454;
6139 double d454 = 454;
6140 float f455 = 455;
6141 double d455 = 455;
6142 float f456 = 456;
6143 double d456 = 456;
6144 float f457 = 457;
6145 double d457 = 457;
6146 float f458 = 458;
6147 double d458 = 458;
6148 float f459 = 459;
6149 double d459 = 459;
6150 float f460 = 460;
6151 double d460 = 460;
6152 float f461 = 461;
6153 double d461 = 461;
6154 float f462 = 462;
6155 double d462 = 462;
6156 float f463 = 463;
6157 double d463 = 463;
6158 float f464 = 464;
6159 double d464 = 464;
6160 float f465 = 465;
6161 double d465 = 465;
6162 float f466 = 466;
6163 double d466 = 466;
6164 float f467 = 467;
6165 double d467 = 467;
6166 float f468 = 468;
6167 double d468 = 468;
6168 float f469 = 469;
6169 double d469 = 469;
6170 float f470 = 470;
6171 double d470 = 470;
6172 float f471 = 471;
6173 double d471 = 471;
6174 float f472 = 472;
6175 double d472 = 472;
6176 float f473 = 473;
6177 double d473 = 473;
6178 float f474 = 474;
6179 double d474 = 474;
6180 float f475 = 475;
6181 double d475 = 475;
6182 float f476 = 476;
6183 double d476 = 476;
6184 float f477 = 477;
6185 double d477 = 477;
6186 float f478 = 478;
6187 double d478 = 478;
6188 float f479 = 479;
6189 double d479 = 479;
6190 float f480 = 480;
6191 double d480 = 480;
6192 float f481 = 481;
6193 double d481 = 481;
6194 float f482 = 482;
6195 double d482 = 482;
6196 float f483 = 483;
6197 double d483 = 483;
6198 float f484 = 484;
6199 double d484 = 484;
6200 float f485 = 485;
6201 double d485 = 485;
6202 float f486 = 486;
6203 double d486 = 486;
6204 float f487 = 487;
6205 double d487 = 487;
6206 float f488 = 488;
6207 double d488 = 488;
6208 float f489 = 489;
6209 double d489 = 489;
6210 float f490 = 490;
6211 double d490 = 490;
6212 float f491 = 491;
6213 double d491 = 491;
6214 float f492 = 492;
6215 double d492 = 492;
6216 float f493 = 493;
6217 double d493 = 493;
6218 float f494 = 494;
6219 double d494 = 494;
6220 float f495 = 495;
6221 double d495 = 495;
6222 float f496 = 496;
6223 double d496 = 496;
6224 float f497 = 497;
6225 double d497 = 497;
6226 float f498 = 498;
6227 double d498 = 498;
6228 float f499 = 499;
6229 double d499 = 499;
6230 float f500 = 500;
6231 double d500 = 500;
6232 float f501 = 501;
6233 double d501 = 501;
6234 float f502 = 502;
6235 double d502 = 502;
6236 float f503 = 503;
6237 double d503 = 503;
6238 float f504 = 504;
6239 double d504 = 504;
6240 float f505 = 505;
6241 double d505 = 505;
6242 float f506 = 506;
6243 double d506 = 506;
6244 float f507 = 507;
6245 double d507 = 507;
6246 float f508 = 508;
6247 double d508 = 508;
6248 float f509 = 509;
6249 double d509 = 509;
6250 float f510 = 510;
6251 double d510 = 510;
6252 float f511 = 511;
6253 double d511 = 511;
6254 float f512 = 512;
6255 double d512 = 512;
6256 float f513 = 513;
6257 double d513 = 513;
6258 float f514 = 514;
6259 double d514 = 514;
6260 float f515 = 515;
6261 double d515 = 515;
6262 float f516 = 516;
6263 double d516 = 516;
6264 float f517 = 517;
6265 double d517 = 517;
6266 float f518 = 518;
6267 double d518 = 518;
6268 float f519 = 519;
6269 double d519 = 519;
6270 float f520 = 520;
6271 double d520 = 520;
6272 float f521 = 521;
6273 double d521 = 521;
6274 float f522 = 522;
6275 double d522 = 522;
6276 float f523 = 523;
6277 double d523 = 523;
6278 float f524 = 524;
6279 double d524 = 524;
6280 float f525 = 525;
6281 double d525 = 525;
6282 float f526 = 526;
6283 double d526 = 526;
6284 float f527 = 527;
6285 double d527 = 527;
6286 float f528 = 528;
6287 double d528 = 528;
6288 float f529 = 529;
6289 double d529 = 529;
6290 float f530 = 530;
6291 double d530 = 530;
6292 float f531 = 531;
6293 double d531 = 531;
6294 float f532 = 532;
6295 double d532 = 532;
6296 float f533 = 533;
6297 double d533 = 533;
6298 float f534 = 534;
6299 double d534 = 534;
6300 float f535 = 535;
6301 double d535 = 535;
6302 float f536 = 536;
6303 double d536 = 536;
6304 float f537 = 537;
6305 double d537 = 537;
6306 float f538 = 538;
6307 double d538 = 538;
6308 float f539 = 539;
6309 double d539 = 539;
6310 float f540 = 540;
6311 double d540 = 540;
6312 float f541 = 541;
6313 double d541 = 541;
6314 float f542 = 542;
6315 double d542 = 542;
6316 float f543 = 543;
6317 double d543 = 543;
6318 float f544 = 544;
6319 double d544 = 544;
6320 float f545 = 545;
6321 double d545 = 545;
6322 float f546 = 546;
6323 double d546 = 546;
6324 float f547 = 547;
6325 double d547 = 547;
6326 float f548 = 548;
6327 double d548 = 548;
6328 float f549 = 549;
6329 double d549 = 549;
6330 float f550 = 550;
6331 double d550 = 550;
6332 float f551 = 551;
6333 double d551 = 551;
6334 float f552 = 552;
6335 double d552 = 552;
6336 float f553 = 553;
6337 double d553 = 553;
6338 float f554 = 554;
6339 double d554 = 554;
6340 float f555 = 555;
6341 double d555 = 555;
6342 float f556 = 556;
6343 double d556 = 556;
6344 float f557 = 557;
6345 double d557 = 557;
6346 float f558 = 558;
6347 double d558 = 558;
6348 float f559 = 559;
6349 double d559 = 559;
6350 float f560 = 560;
6351 double d560 = 560;
6352 float f561 = 561;
6353 double d561 = 561;
6354 float f562 = 562;
6355 double d562 = 562;
6356 float f563 = 563;
6357 double d563 = 563;
6358 float f564 = 564;
6359 double d564 = 564;
6360 float f565 = 565;
6361 double d565 = 565;
6362 float f566 = 566;
6363 double d566 = 566;
6364 float f567 = 567;
6365 double d567 = 567;
6366 float f568 = 568;
6367 double d568 = 568;
6368 float f569 = 569;
6369 double d569 = 569;
6370 float f570 = 570;
6371 double d570 = 570;
6372 float f571 = 571;
6373 double d571 = 571;
6374 float f572 = 572;
6375 double d572 = 572;
6376 float f573 = 573;
6377 double d573 = 573;
6378 float f574 = 574;
6379 double d574 = 574;
6380 float f575 = 575;
6381 double d575 = 575;
6382 float f576 = 576;
6383 double d576 = 576;
6384 float f577 = 577;
6385 double d577 = 577;
6386 float f578 = 578;
6387 double d578 = 578;
6388 float f579 = 579;
6389 double d579 = 579;
6390 float f580 = 580;
6391 double d580 = 580;
6392 float f581 = 581;
6393 double d581 = 581;
6394 float f582 = 582;
6395 double d582 = 582;
6396 float f583 = 583;
6397 double d583 = 583;
6398 float f584 = 584;
6399 double d584 = 584;
6400 float f585 = 585;
6401 double d585 = 585;
6402 float f586 = 586;
6403 double d586 = 586;
6404 float f587 = 587;
6405 double d587 = 587;
6406 float f588 = 588;
6407 double d588 = 588;
6408 float f589 = 589;
6409 double d589 = 589;
6410 float f590 = 590;
6411 double d590 = 590;
6412 float f591 = 591;
6413 double d591 = 591;
6414 float f592 = 592;
6415 double d592 = 592;
6416 float f593 = 593;
6417 double d593 = 593;
6418 float f594 = 594;
6419 double d594 = 594;
6420 float f595 = 595;
6421 double d595 = 595;
6422 float f596 = 596;
6423 double d596 = 596;
6424 float f597 = 597;
6425 double d597 = 597;
6426 float f598 = 598;
6427 double d598 = 598;
6428 float f599 = 599;
6429 double d599 = 599;
6430 float f600 = 600;
6431 double d600 = 600;
6432 float f601 = 601;
6433 double d601 = 601;
6434 float f602 = 602;
6435 double d602 = 602;
6436 float f603 = 603;
6437 double d603 = 603;
6438 float f604 = 604;
6439 double d604 = 604;
6440 float f605 = 605;
6441 double d605 = 605;
6442 float f606 = 606;
6443 double d606 = 606;
6444 float f607 = 607;
6445 double d607 = 607;
6446 float f608 = 608;
6447 double d608 = 608;
6448 float f609 = 609;
6449 double d609 = 609;
6450 float f610 = 610;
6451 double d610 = 610;
6452 float f611 = 611;
6453 double d611 = 611;
6454 float f612 = 612;
6455 double d612 = 612;
6456 float f613 = 613;
6457 double d613 = 613;
6458 float f614 = 614;
6459 double d614 = 614;
6460 float f615 = 615;
6461 double d615 = 615;
6462 float f616 = 616;
6463 double d616 = 616;
6464 float f617 = 617;
6465 double d617 = 617;
6466 float f618 = 618;
6467 double d618 = 618;
6468 float f619 = 619;
6469 double d619 = 619;
6470 float f620 = 620;
6471 double d620 = 620;
6472 float f621 = 621;
6473 double d621 = 621;
6474 float f622 = 622;
6475 double d622 = 622;
6476 float f623 = 623;
6477 double d623 = 623;
6478 float f624 = 624;
6479 double d624 = 624;
6480 float f625 = 625;
6481 double d625 = 625;
6482 float f626 = 626;
6483 double d626 = 626;
6484 float f627 = 627;
6485 double d627 = 627;
6486 float f628 = 628;
6487 double d628 = 628;
6488 float f629 = 629;
6489 double d629 = 629;
6490 float f630 = 630;
6491 double d630 = 630;
6492 float f631 = 631;
6493 double d631 = 631;
6494 float f632 = 632;
6495 double d632 = 632;
6496 float f633 = 633;
6497 double d633 = 633;
6498 float f634 = 634;
6499 double d634 = 634;
6500 float f635 = 635;
6501 double d635 = 635;
6502 float f636 = 636;
6503 double d636 = 636;
6504 float f637 = 637;
6505 double d637 = 637;
6506 float f638 = 638;
6507 double d638 = 638;
6508 float f639 = 639;
6509 double d639 = 639;
6510 float f640 = 640;
6511 double d640 = 640;
6512 float f641 = 641;
6513 double d641 = 641;
6514 float f642 = 642;
6515 double d642 = 642;
6516 float f643 = 643;
6517 double d643 = 643;
6518 float f644 = 644;
6519 double d644 = 644;
6520 float f645 = 645;
6521 double d645 = 645;
6522 float f646 = 646;
6523 double d646 = 646;
6524 float f647 = 647;
6525 double d647 = 647;
6526 float f648 = 648;
6527 double d648 = 648;
6528 float f649 = 649;
6529 double d649 = 649;
6530 float f650 = 650;
6531 double d650 = 650;
6532 float f651 = 651;
6533 double d651 = 651;
6534 float f652 = 652;
6535 double d652 = 652;
6536 float f653 = 653;
6537 double d653 = 653;
6538 float f654 = 654;
6539 double d654 = 654;
6540 float f655 = 655;
6541 double d655 = 655;
6542 float f656 = 656;
6543 double d656 = 656;
6544 float f657 = 657;
6545 double d657 = 657;
6546 float f658 = 658;
6547 double d658 = 658;
6548 float f659 = 659;
6549 double d659 = 659;
6550 float f660 = 660;
6551 double d660 = 660;
6552 float f661 = 661;
6553 double d661 = 661;
6554 float f662 = 662;
6555 double d662 = 662;
6556 float f663 = 663;
6557 double d663 = 663;
6558 float f664 = 664;
6559 double d664 = 664;
6560 float f665 = 665;
6561 double d665 = 665;
6562 float f666 = 666;
6563 double d666 = 666;
6564 float f667 = 667;
6565 double d667 = 667;
6566 float f668 = 668;
6567 double d668 = 668;
6568 float f669 = 669;
6569 double d669 = 669;
6570 float f670 = 670;
6571 double d670 = 670;
6572 float f671 = 671;
6573 double d671 = 671;
6574 float f672 = 672;
6575 double d672 = 672;
6576 float f673 = 673;
6577 double d673 = 673;
6578 float f674 = 674;
6579 double d674 = 674;
6580 float f675 = 675;
6581 double d675 = 675;
6582 float f676 = 676;
6583 double d676 = 676;
6584 float f677 = 677;
6585 double d677 = 677;
6586 float f678 = 678;
6587 double d678 = 678;
6588 float f679 = 679;
6589 double d679 = 679;
6590 float f680 = 680;
6591 double d680 = 680;
6592 float f681 = 681;
6593 double d681 = 681;
6594 float f682 = 682;
6595 double d682 = 682;
6596 float f683 = 683;
6597 double d683 = 683;
6598 float f684 = 684;
6599 double d684 = 684;
6600 float f685 = 685;
6601 double d685 = 685;
6602 float f686 = 686;
6603 double d686 = 686;
6604 float f687 = 687;
6605 double d687 = 687;
6606 float f688 = 688;
6607 double d688 = 688;
6608 float f689 = 689;
6609 double d689 = 689;
6610 float f690 = 690;
6611 double d690 = 690;
6612 float f691 = 691;
6613 double d691 = 691;
6614 float f692 = 692;
6615 double d692 = 692;
6616 float f693 = 693;
6617 double d693 = 693;
6618 float f694 = 694;
6619 double d694 = 694;
6620 float f695 = 695;
6621 double d695 = 695;
6622 float f696 = 696;
6623 double d696 = 696;
6624 float f697 = 697;
6625 double d697 = 697;
6626 float f698 = 698;
6627 double d698 = 698;
6628 float f699 = 699;
6629 double d699 = 699;
6630 float f700 = 700;
6631 double d700 = 700;
6632 float f701 = 701;
6633 double d701 = 701;
6634 float f702 = 702;
6635 double d702 = 702;
6636 float f703 = 703;
6637 double d703 = 703;
6638 float f704 = 704;
6639 double d704 = 704;
6640 float f705 = 705;
6641 double d705 = 705;
6642 float f706 = 706;
6643 double d706 = 706;
6644 float f707 = 707;
6645 double d707 = 707;
6646 float f708 = 708;
6647 double d708 = 708;
6648 float f709 = 709;
6649 double d709 = 709;
6650 float f710 = 710;
6651 double d710 = 710;
6652 float f711 = 711;
6653 double d711 = 711;
6654 float f712 = 712;
6655 double d712 = 712;
6656 float f713 = 713;
6657 double d713 = 713;
6658 float f714 = 714;
6659 double d714 = 714;
6660 float f715 = 715;
6661 double d715 = 715;
6662 float f716 = 716;
6663 double d716 = 716;
6664 float f717 = 717;
6665 double d717 = 717;
6666 float f718 = 718;
6667 double d718 = 718;
6668 float f719 = 719;
6669 double d719 = 719;
6670 float f720 = 720;
6671 double d720 = 720;
6672 float f721 = 721;
6673 double d721 = 721;
6674 float f722 = 722;
6675 double d722 = 722;
6676 float f723 = 723;
6677 double d723 = 723;
6678 float f724 = 724;
6679 double d724 = 724;
6680 float f725 = 725;
6681 double d725 = 725;
6682 float f726 = 726;
6683 double d726 = 726;
6684 float f727 = 727;
6685 double d727 = 727;
6686 float f728 = 728;
6687 double d728 = 728;
6688 float f729 = 729;
6689 double d729 = 729;
6690 float f730 = 730;
6691 double d730 = 730;
6692 float f731 = 731;
6693 double d731 = 731;
6694 float f732 = 732;
6695 double d732 = 732;
6696 float f733 = 733;
6697 double d733 = 733;
6698 float f734 = 734;
6699 double d734 = 734;
6700 float f735 = 735;
6701 double d735 = 735;
6702 float f736 = 736;
6703 double d736 = 736;
6704 float f737 = 737;
6705 double d737 = 737;
6706 float f738 = 738;
6707 double d738 = 738;
6708 float f739 = 739;
6709 double d739 = 739;
6710 float f740 = 740;
6711 double d740 = 740;
6712 float f741 = 741;
6713 double d741 = 741;
6714 float f742 = 742;
6715 double d742 = 742;
6716 float f743 = 743;
6717 double d743 = 743;
6718 float f744 = 744;
6719 double d744 = 744;
6720 float f745 = 745;
6721 double d745 = 745;
6722 float f746 = 746;
6723 double d746 = 746;
6724 float f747 = 747;
6725 double d747 = 747;
6726 float f748 = 748;
6727 double d748 = 748;
6728 float f749 = 749;
6729 double d749 = 749;
6730 float f750 = 750;
6731 double d750 = 750;
6732 float f751 = 751;
6733 double d751 = 751;
6734 float f752 = 752;
6735 double d752 = 752;
6736 float f753 = 753;
6737 double d753 = 753;
6738 float f754 = 754;
6739 double d754 = 754;
6740 float f755 = 755;
6741 double d755 = 755;
6742 float f756 = 756;
6743 double d756 = 756;
6744 float f757 = 757;
6745 double d757 = 757;
6746 float f758 = 758;
6747 double d758 = 758;
6748 float f759 = 759;
6749 double d759 = 759;
6750 float f760 = 760;
6751 double d760 = 760;
6752 float f761 = 761;
6753 double d761 = 761;
6754 float f762 = 762;
6755 double d762 = 762;
6756 float f763 = 763;
6757 double d763 = 763;
6758 float f764 = 764;
6759 double d764 = 764;
6760 float f765 = 765;
6761 double d765 = 765;
6762 float f766 = 766;
6763 double d766 = 766;
6764 float f767 = 767;
6765 double d767 = 767;
6766 float f768 = 768;
6767 double d768 = 768;
6768 float f769 = 769;
6769 double d769 = 769;
6770 float f770 = 770;
6771 double d770 = 770;
6772 float f771 = 771;
6773 double d771 = 771;
6774 float f772 = 772;
6775 double d772 = 772;
6776 float f773 = 773;
6777 double d773 = 773;
6778 float f774 = 774;
6779 double d774 = 774;
6780 float f775 = 775;
6781 double d775 = 775;
6782 float f776 = 776;
6783 double d776 = 776;
6784 float f777 = 777;
6785 double d777 = 777;
6786 float f778 = 778;
6787 double d778 = 778;
6788 float f779 = 779;
6789 double d779 = 779;
6790 float f780 = 780;
6791 double d780 = 780;
6792 float f781 = 781;
6793 double d781 = 781;
6794 float f782 = 782;
6795 double d782 = 782;
6796 float f783 = 783;
6797 double d783 = 783;
6798 float f784 = 784;
6799 double d784 = 784;
6800 float f785 = 785;
6801 double d785 = 785;
6802 float f786 = 786;
6803 double d786 = 786;
6804 float f787 = 787;
6805 double d787 = 787;
6806 float f788 = 788;
6807 double d788 = 788;
6808 float f789 = 789;
6809 double d789 = 789;
6810 float f790 = 790;
6811 double d790 = 790;
6812 float f791 = 791;
6813 double d791 = 791;
6814 float f792 = 792;
6815 double d792 = 792;
6816 float f793 = 793;
6817 double d793 = 793;
6818 float f794 = 794;
6819 double d794 = 794;
6820 float f795 = 795;
6821 double d795 = 795;
6822 float f796 = 796;
6823 double d796 = 796;
6824 float f797 = 797;
6825 double d797 = 797;
6826 float f798 = 798;
6827 double d798 = 798;
6828 float f799 = 799;
6829 double d799 = 799;
6830 float f800 = 800;
6831 double d800 = 800;
6832 float f801 = 801;
6833 double d801 = 801;
6834 float f802 = 802;
6835 double d802 = 802;
6836 float f803 = 803;
6837 double d803 = 803;
6838 float f804 = 804;
6839 double d804 = 804;
6840 float f805 = 805;
6841 double d805 = 805;
6842 float f806 = 806;
6843 double d806 = 806;
6844 float f807 = 807;
6845 double d807 = 807;
6846 float f808 = 808;
6847 double d808 = 808;
6848 float f809 = 809;
6849 double d809 = 809;
6850 float f810 = 810;
6851 double d810 = 810;
6852 float f811 = 811;
6853 double d811 = 811;
6854 float f812 = 812;
6855 double d812 = 812;
6856 float f813 = 813;
6857 double d813 = 813;
6858 float f814 = 814;
6859 double d814 = 814;
6860 float f815 = 815;
6861 double d815 = 815;
6862 float f816 = 816;
6863 double d816 = 816;
6864 float f817 = 817;
6865 double d817 = 817;
6866 float f818 = 818;
6867 double d818 = 818;
6868 float f819 = 819;
6869 double d819 = 819;
6870 float f820 = 820;
6871 double d820 = 820;
6872 float f821 = 821;
6873 double d821 = 821;
6874 float f822 = 822;
6875 double d822 = 822;
6876 float f823 = 823;
6877 double d823 = 823;
6878 float f824 = 824;
6879 double d824 = 824;
6880 float f825 = 825;
6881 double d825 = 825;
6882 float f826 = 826;
6883 double d826 = 826;
6884 float f827 = 827;
6885 double d827 = 827;
6886 float f828 = 828;
6887 double d828 = 828;
6888 float f829 = 829;
6889 double d829 = 829;
6890 float f830 = 830;
6891 double d830 = 830;
6892 float f831 = 831;
6893 double d831 = 831;
6894 float f832 = 832;
6895 double d832 = 832;
6896 float f833 = 833;
6897 double d833 = 833;
6898 float f834 = 834;
6899 double d834 = 834;
6900 float f835 = 835;
6901 double d835 = 835;
6902 float f836 = 836;
6903 double d836 = 836;
6904 float f837 = 837;
6905 double d837 = 837;
6906 float f838 = 838;
6907 double d838 = 838;
6908 float f839 = 839;
6909 double d839 = 839;
6910 float f840 = 840;
6911 double d840 = 840;
6912 float f841 = 841;
6913 double d841 = 841;
6914 float f842 = 842;
6915 double d842 = 842;
6916 float f843 = 843;
6917 double d843 = 843;
6918 float f844 = 844;
6919 double d844 = 844;
6920 float f845 = 845;
6921 double d845 = 845;
6922 float f846 = 846;
6923 double d846 = 846;
6924 float f847 = 847;
6925 double d847 = 847;
6926 float f848 = 848;
6927 double d848 = 848;
6928 float f849 = 849;
6929 double d849 = 849;
6930 float f850 = 850;
6931 double d850 = 850;
6932 float f851 = 851;
6933 double d851 = 851;
6934 float f852 = 852;
6935 double d852 = 852;
6936 float f853 = 853;
6937 double d853 = 853;
6938 float f854 = 854;
6939 double d854 = 854;
6940 float f855 = 855;
6941 double d855 = 855;
6942 float f856 = 856;
6943 double d856 = 856;
6944 float f857 = 857;
6945 double d857 = 857;
6946 float f858 = 858;
6947 double d858 = 858;
6948 float f859 = 859;
6949 double d859 = 859;
6950 float f860 = 860;
6951 double d860 = 860;
6952 float f861 = 861;
6953 double d861 = 861;
6954 float f862 = 862;
6955 double d862 = 862;
6956 float f863 = 863;
6957 double d863 = 863;
6958 float f864 = 864;
6959 double d864 = 864;
6960 float f865 = 865;
6961 double d865 = 865;
6962 float f866 = 866;
6963 double d866 = 866;
6964 float f867 = 867;
6965 double d867 = 867;
6966 float f868 = 868;
6967 double d868 = 868;
6968 float f869 = 869;
6969 double d869 = 869;
6970 float f870 = 870;
6971 double d870 = 870;
6972 float f871 = 871;
6973 double d871 = 871;
6974 float f872 = 872;
6975 double d872 = 872;
6976 float f873 = 873;
6977 double d873 = 873;
6978 float f874 = 874;
6979 double d874 = 874;
6980 float f875 = 875;
6981 double d875 = 875;
6982 float f876 = 876;
6983 double d876 = 876;
6984 float f877 = 877;
6985 double d877 = 877;
6986 float f878 = 878;
6987 double d878 = 878;
6988 float f879 = 879;
6989 double d879 = 879;
6990 float f880 = 880;
6991 double d880 = 880;
6992 float f881 = 881;
6993 double d881 = 881;
6994 float f882 = 882;
6995 double d882 = 882;
6996 float f883 = 883;
6997 double d883 = 883;
6998 float f884 = 884;
6999 double d884 = 884;
7000 float f885 = 885;
7001 double d885 = 885;
7002 float f886 = 886;
7003 double d886 = 886;
7004 float f887 = 887;
7005 double d887 = 887;
7006 float f888 = 888;
7007 double d888 = 888;
7008 float f889 = 889;
7009 double d889 = 889;
7010 float f890 = 890;
7011 double d890 = 890;
7012 float f891 = 891;
7013 double d891 = 891;
7014 float f892 = 892;
7015 double d892 = 892;
7016 float f893 = 893;
7017 double d893 = 893;
7018 float f894 = 894;
7019 double d894 = 894;
7020 float f895 = 895;
7021 double d895 = 895;
7022 float f896 = 896;
7023 double d896 = 896;
7024 float f897 = 897;
7025 double d897 = 897;
7026 float f898 = 898;
7027 double d898 = 898;
7028 float f899 = 899;
7029 double d899 = 899;
7030 float f900 = 900;
7031 double d900 = 900;
7032 float f901 = 901;
7033 double d901 = 901;
7034 float f902 = 902;
7035 double d902 = 902;
7036 float f903 = 903;
7037 double d903 = 903;
7038 float f904 = 904;
7039 double d904 = 904;
7040 float f905 = 905;
7041 double d905 = 905;
7042 float f906 = 906;
7043 double d906 = 906;
7044 float f907 = 907;
7045 double d907 = 907;
7046 float f908 = 908;
7047 double d908 = 908;
7048 float f909 = 909;
7049 double d909 = 909;
7050 float f910 = 910;
7051 double d910 = 910;
7052 float f911 = 911;
7053 double d911 = 911;
7054 float f912 = 912;
7055 double d912 = 912;
7056 float f913 = 913;
7057 double d913 = 913;
7058 float f914 = 914;
7059 double d914 = 914;
7060 float f915 = 915;
7061 double d915 = 915;
7062 float f916 = 916;
7063 double d916 = 916;
7064 float f917 = 917;
7065 double d917 = 917;
7066 float f918 = 918;
7067 double d918 = 918;
7068 float f919 = 919;
7069 double d919 = 919;
7070 float f920 = 920;
7071 double d920 = 920;
7072 float f921 = 921;
7073 double d921 = 921;
7074 float f922 = 922;
7075 double d922 = 922;
7076 float f923 = 923;
7077 double d923 = 923;
7078 float f924 = 924;
7079 double d924 = 924;
7080 float f925 = 925;
7081 double d925 = 925;
7082 float f926 = 926;
7083 double d926 = 926;
7084 float f927 = 927;
7085 double d927 = 927;
7086 float f928 = 928;
7087 double d928 = 928;
7088 float f929 = 929;
7089 double d929 = 929;
7090 float f930 = 930;
7091 double d930 = 930;
7092 float f931 = 931;
7093 double d931 = 931;
7094 float f932 = 932;
7095 double d932 = 932;
7096 float f933 = 933;
7097 double d933 = 933;
7098 float f934 = 934;
7099 double d934 = 934;
7100 float f935 = 935;
7101 double d935 = 935;
7102 float f936 = 936;
7103 double d936 = 936;
7104 float f937 = 937;
7105 double d937 = 937;
7106 float f938 = 938;
7107 double d938 = 938;
7108 float f939 = 939;
7109 double d939 = 939;
7110 float f940 = 940;
7111 double d940 = 940;
7112 float f941 = 941;
7113 double d941 = 941;
7114 float f942 = 942;
7115 double d942 = 942;
7116 float f943 = 943;
7117 double d943 = 943;
7118 float f944 = 944;
7119 double d944 = 944;
7120 float f945 = 945;
7121 double d945 = 945;
7122 float f946 = 946;
7123 double d946 = 946;
7124 float f947 = 947;
7125 double d947 = 947;
7126 float f948 = 948;
7127 double d948 = 948;
7128 float f949 = 949;
7129 double d949 = 949;
7130 float f950 = 950;
7131 double d950 = 950;
7132 float f951 = 951;
7133 double d951 = 951;
7134 float f952 = 952;
7135 double d952 = 952;
7136 float f953 = 953;
7137 double d953 = 953;
7138 float f954 = 954;
7139 double d954 = 954;
7140 float f955 = 955;
7141 double d955 = 955;
7142 float f956 = 956;
7143 double d956 = 956;
7144 float f957 = 957;
7145 double d957 = 957;
7146 float f958 = 958;
7147 double d958 = 958;
7148 float f959 = 959;
7149 double d959 = 959;
7150 float f960 = 960;
7151 double d960 = 960;
7152 float f961 = 961;
7153 double d961 = 961;
7154 float f962 = 962;
7155 double d962 = 962;
7156 float f963 = 963;
7157 double d963 = 963;
7158 float f964 = 964;
7159 double d964 = 964;
7160 float f965 = 965;
7161 double d965 = 965;
7162 float f966 = 966;
7163 double d966 = 966;
7164 float f967 = 967;
7165 double d967 = 967;
7166 float f968 = 968;
7167 double d968 = 968;
7168 float f969 = 969;
7169 double d969 = 969;
7170 float f970 = 970;
7171 double d970 = 970;
7172 float f971 = 971;
7173 double d971 = 971;
7174 float f972 = 972;
7175 double d972 = 972;
7176 float f973 = 973;
7177 double d973 = 973;
7178 float f974 = 974;
7179 double d974 = 974;
7180 float f975 = 975;
7181 double d975 = 975;
7182 float f976 = 976;
7183 double d976 = 976;
7184 float f977 = 977;
7185 double d977 = 977;
7186 float f978 = 978;
7187 double d978 = 978;
7188 float f979 = 979;
7189 double d979 = 979;
7190 float f980 = 980;
7191 double d980 = 980;
7192 float f981 = 981;
7193 double d981 = 981;
7194 float f982 = 982;
7195 double d982 = 982;
7196 float f983 = 983;
7197 double d983 = 983;
7198 float f984 = 984;
7199 double d984 = 984;
7200 float f985 = 985;
7201 double d985 = 985;
7202 float f986 = 986;
7203 double d986 = 986;
7204 float f987 = 987;
7205 double d987 = 987;
7206 float f988 = 988;
7207 double d988 = 988;
7208 float f989 = 989;
7209 double d989 = 989;
7210 float f990 = 990;
7211 double d990 = 990;
7212 float f991 = 991;
7213 double d991 = 991;
7214 float f992 = 992;
7215 double d992 = 992;
7216 float f993 = 993;
7217 double d993 = 993;
7218 float f994 = 994;
7219 double d994 = 994;
7220 float f995 = 995;
7221 double d995 = 995;
7222 float f996 = 996;
7223 double d996 = 996;
7224 float f997 = 997;
7225 double d997 = 997;
7226 float f998 = 998;
7227 double d998 = 998;
7228 float f999 = 999;
7229 double d999 = 999;
7230 f1 += f0;
7231 d1 = d0;
7232 f2 += f1;
7233 d2 = d1;
7234 f3 += f2;
7235 d3 = d2;
7236 f4 += f3;
7237 d4 = d3;
7238 f5 += f4;
7239 d5 = d4;
7240 f6 += f5;
7241 d6 = d5;
7242 f7 += f6;
7243 d7 = d6;
7244 f8 += f7;
7245 d8 = d7;
7246 f9 += f8;
7247 d9 = d8;
7248 f10 += f9;
7249 d10 = d9;
7250 f11 += f10;
7251 d11 = d10;
7252 f12 += f11;
7253 d12 = d11;
7254 f13 += f12;
7255 d13 = d12;
7256 f14 += f13;
7257 d14 = d13;
7258 f15 += f14;
7259 d15 = d14;
7260 f16 += f15;
7261 d16 = d15;
7262 f17 += f16;
7263 d17 = d16;
7264 f18 += f17;
7265 d18 = d17;
7266 f19 += f18;
7267 d19 = d18;
7268 f20 += f19;
7269 d20 = d19;
7270 f21 += f20;
7271 d21 = d20;
7272 f22 += f21;
7273 d22 = d21;
7274 f23 += f22;
7275 d23 = d22;
7276 f24 += f23;
7277 d24 = d23;
7278 f25 += f24;
7279 d25 = d24;
7280 f26 += f25;
7281 d26 = d25;
7282 f27 += f26;
7283 d27 = d26;
7284 f28 += f27;
7285 d28 = d27;
7286 f29 += f28;
7287 d29 = d28;
7288 f30 += f29;
7289 d30 = d29;
7290 f31 += f30;
7291 d31 = d30;
7292 f32 += f31;
7293 d32 = d31;
7294 f33 += f32;
7295 d33 = d32;
7296 f34 += f33;
7297 d34 = d33;
7298 f35 += f34;
7299 d35 = d34;
7300 f36 += f35;
7301 d36 = d35;
7302 f37 += f36;
7303 d37 = d36;
7304 f38 += f37;
7305 d38 = d37;
7306 f39 += f38;
7307 d39 = d38;
7308 f40 += f39;
7309 d40 = d39;
7310 f41 += f40;
7311 d41 = d40;
7312 f42 += f41;
7313 d42 = d41;
7314 f43 += f42;
7315 d43 = d42;
7316 f44 += f43;
7317 d44 = d43;
7318 f45 += f44;
7319 d45 = d44;
7320 f46 += f45;
7321 d46 = d45;
7322 f47 += f46;
7323 d47 = d46;
7324 f48 += f47;
7325 d48 = d47;
7326 f49 += f48;
7327 d49 = d48;
7328 f50 += f49;
7329 d50 = d49;
7330 f51 += f50;
7331 d51 = d50;
7332 f52 += f51;
7333 d52 = d51;
7334 f53 += f52;
7335 d53 = d52;
7336 f54 += f53;
7337 d54 = d53;
7338 f55 += f54;
7339 d55 = d54;
7340 f56 += f55;
7341 d56 = d55;
7342 f57 += f56;
7343 d57 = d56;
7344 f58 += f57;
7345 d58 = d57;
7346 f59 += f58;
7347 d59 = d58;
7348 f60 += f59;
7349 d60 = d59;
7350 f61 += f60;
7351 d61 = d60;
7352 f62 += f61;
7353 d62 = d61;
7354 f63 += f62;
7355 d63 = d62;
7356 f64 += f63;
7357 d64 = d63;
7358 f65 += f64;
7359 d65 = d64;
7360 f66 += f65;
7361 d66 = d65;
7362 f67 += f66;
7363 d67 = d66;
7364 f68 += f67;
7365 d68 = d67;
7366 f69 += f68;
7367 d69 = d68;
7368 f70 += f69;
7369 d70 = d69;
7370 f71 += f70;
7371 d71 = d70;
7372 f72 += f71;
7373 d72 = d71;
7374 f73 += f72;
7375 d73 = d72;
7376 f74 += f73;
7377 d74 = d73;
7378 f75 += f74;
7379 d75 = d74;
7380 f76 += f75;
7381 d76 = d75;
7382 f77 += f76;
7383 d77 = d76;
7384 f78 += f77;
7385 d78 = d77;
7386 f79 += f78;
7387 d79 = d78;
7388 f80 += f79;
7389 d80 = d79;
7390 f81 += f80;
7391 d81 = d80;
7392 f82 += f81;
7393 d82 = d81;
7394 f83 += f82;
7395 d83 = d82;
7396 f84 += f83;
7397 d84 = d83;
7398 f85 += f84;
7399 d85 = d84;
7400 f86 += f85;
7401 d86 = d85;
7402 f87 += f86;
7403 d87 = d86;
7404 f88 += f87;
7405 d88 = d87;
7406 f89 += f88;
7407 d89 = d88;
7408 f90 += f89;
7409 d90 = d89;
7410 f91 += f90;
7411 d91 = d90;
7412 f92 += f91;
7413 d92 = d91;
7414 f93 += f92;
7415 d93 = d92;
7416 f94 += f93;
7417 d94 = d93;
7418 f95 += f94;
7419 d95 = d94;
7420 f96 += f95;
7421 d96 = d95;
7422 f97 += f96;
7423 d97 = d96;
7424 f98 += f97;
7425 d98 = d97;
7426 f99 += f98;
7427 d99 = d98;
7428 f100 += f99;
7429 d100 = d99;
7430 f101 += f100;
7431 d101 = d100;
7432 f102 += f101;
7433 d102 = d101;
7434 f103 += f102;
7435 d103 = d102;
7436 f104 += f103;
7437 d104 = d103;
7438 f105 += f104;
7439 d105 = d104;
7440 f106 += f105;
7441 d106 = d105;
7442 f107 += f106;
7443 d107 = d106;
7444 f108 += f107;
7445 d108 = d107;
7446 f109 += f108;
7447 d109 = d108;
7448 f110 += f109;
7449 d110 = d109;
7450 f111 += f110;
7451 d111 = d110;
7452 f112 += f111;
7453 d112 = d111;
7454 f113 += f112;
7455 d113 = d112;
7456 f114 += f113;
7457 d114 = d113;
7458 f115 += f114;
7459 d115 = d114;
7460 f116 += f115;
7461 d116 = d115;
7462 f117 += f116;
7463 d117 = d116;
7464 f118 += f117;
7465 d118 = d117;
7466 f119 += f118;
7467 d119 = d118;
7468 f120 += f119;
7469 d120 = d119;
7470 f121 += f120;
7471 d121 = d120;
7472 f122 += f121;
7473 d122 = d121;
7474 f123 += f122;
7475 d123 = d122;
7476 f124 += f123;
7477 d124 = d123;
7478 f125 += f124;
7479 d125 = d124;
7480 f126 += f125;
7481 d126 = d125;
7482 f127 += f126;
7483 d127 = d126;
7484 f128 += f127;
7485 d128 = d127;
7486 f129 += f128;
7487 d129 = d128;
7488 f130 += f129;
7489 d130 = d129;
7490 f131 += f130;
7491 d131 = d130;
7492 f132 += f131;
7493 d132 = d131;
7494 f133 += f132;
7495 d133 = d132;
7496 f134 += f133;
7497 d134 = d133;
7498 f135 += f134;
7499 d135 = d134;
7500 f136 += f135;
7501 d136 = d135;
7502 f137 += f136;
7503 d137 = d136;
7504 f138 += f137;
7505 d138 = d137;
7506 f139 += f138;
7507 d139 = d138;
7508 f140 += f139;
7509 d140 = d139;
7510 f141 += f140;
7511 d141 = d140;
7512 f142 += f141;
7513 d142 = d141;
7514 f143 += f142;
7515 d143 = d142;
7516 f144 += f143;
7517 d144 = d143;
7518 f145 += f144;
7519 d145 = d144;
7520 f146 += f145;
7521 d146 = d145;
7522 f147 += f146;
7523 d147 = d146;
7524 f148 += f147;
7525 d148 = d147;
7526 f149 += f148;
7527 d149 = d148;
7528 f150 += f149;
7529 d150 = d149;
7530 f151 += f150;
7531 d151 = d150;
7532 f152 += f151;
7533 d152 = d151;
7534 f153 += f152;
7535 d153 = d152;
7536 f154 += f153;
7537 d154 = d153;
7538 f155 += f154;
7539 d155 = d154;
7540 f156 += f155;
7541 d156 = d155;
7542 f157 += f156;
7543 d157 = d156;
7544 f158 += f157;
7545 d158 = d157;
7546 f159 += f158;
7547 d159 = d158;
7548 f160 += f159;
7549 d160 = d159;
7550 f161 += f160;
7551 d161 = d160;
7552 f162 += f161;
7553 d162 = d161;
7554 f163 += f162;
7555 d163 = d162;
7556 f164 += f163;
7557 d164 = d163;
7558 f165 += f164;
7559 d165 = d164;
7560 f166 += f165;
7561 d166 = d165;
7562 f167 += f166;
7563 d167 = d166;
7564 f168 += f167;
7565 d168 = d167;
7566 f169 += f168;
7567 d169 = d168;
7568 f170 += f169;
7569 d170 = d169;
7570 f171 += f170;
7571 d171 = d170;
7572 f172 += f171;
7573 d172 = d171;
7574 f173 += f172;
7575 d173 = d172;
7576 f174 += f173;
7577 d174 = d173;
7578 f175 += f174;
7579 d175 = d174;
7580 f176 += f175;
7581 d176 = d175;
7582 f177 += f176;
7583 d177 = d176;
7584 f178 += f177;
7585 d178 = d177;
7586 f179 += f178;
7587 d179 = d178;
7588 f180 += f179;
7589 d180 = d179;
7590 f181 += f180;
7591 d181 = d180;
7592 f182 += f181;
7593 d182 = d181;
7594 f183 += f182;
7595 d183 = d182;
7596 f184 += f183;
7597 d184 = d183;
7598 f185 += f184;
7599 d185 = d184;
7600 f186 += f185;
7601 d186 = d185;
7602 f187 += f186;
7603 d187 = d186;
7604 f188 += f187;
7605 d188 = d187;
7606 f189 += f188;
7607 d189 = d188;
7608 f190 += f189;
7609 d190 = d189;
7610 f191 += f190;
7611 d191 = d190;
7612 f192 += f191;
7613 d192 = d191;
7614 f193 += f192;
7615 d193 = d192;
7616 f194 += f193;
7617 d194 = d193;
7618 f195 += f194;
7619 d195 = d194;
7620 f196 += f195;
7621 d196 = d195;
7622 f197 += f196;
7623 d197 = d196;
7624 f198 += f197;
7625 d198 = d197;
7626 f199 += f198;
7627 d199 = d198;
7628 f200 += f199;
7629 d200 = d199;
7630 f201 += f200;
7631 d201 = d200;
7632 f202 += f201;
7633 d202 = d201;
7634 f203 += f202;
7635 d203 = d202;
7636 f204 += f203;
7637 d204 = d203;
7638 f205 += f204;
7639 d205 = d204;
7640 f206 += f205;
7641 d206 = d205;
7642 f207 += f206;
7643 d207 = d206;
7644 f208 += f207;
7645 d208 = d207;
7646 f209 += f208;
7647 d209 = d208;
7648 f210 += f209;
7649 d210 = d209;
7650 f211 += f210;
7651 d211 = d210;
7652 f212 += f211;
7653 d212 = d211;
7654 f213 += f212;
7655 d213 = d212;
7656 f214 += f213;
7657 d214 = d213;
7658 f215 += f214;
7659 d215 = d214;
7660 f216 += f215;
7661 d216 = d215;
7662 f217 += f216;
7663 d217 = d216;
7664 f218 += f217;
7665 d218 = d217;
7666 f219 += f218;
7667 d219 = d218;
7668 f220 += f219;
7669 d220 = d219;
7670 f221 += f220;
7671 d221 = d220;
7672 f222 += f221;
7673 d222 = d221;
7674 f223 += f222;
7675 d223 = d222;
7676 f224 += f223;
7677 d224 = d223;
7678 f225 += f224;
7679 d225 = d224;
7680 f226 += f225;
7681 d226 = d225;
7682 f227 += f226;
7683 d227 = d226;
7684 f228 += f227;
7685 d228 = d227;
7686 f229 += f228;
7687 d229 = d228;
7688 f230 += f229;
7689 d230 = d229;
7690 f231 += f230;
7691 d231 = d230;
7692 f232 += f231;
7693 d232 = d231;
7694 f233 += f232;
7695 d233 = d232;
7696 f234 += f233;
7697 d234 = d233;
7698 f235 += f234;
7699 d235 = d234;
7700 f236 += f235;
7701 d236 = d235;
7702 f237 += f236;
7703 d237 = d236;
7704 f238 += f237;
7705 d238 = d237;
7706 f239 += f238;
7707 d239 = d238;
7708 f240 += f239;
7709 d240 = d239;
7710 f241 += f240;
7711 d241 = d240;
7712 f242 += f241;
7713 d242 = d241;
7714 f243 += f242;
7715 d243 = d242;
7716 f244 += f243;
7717 d244 = d243;
7718 f245 += f244;
7719 d245 = d244;
7720 f246 += f245;
7721 d246 = d245;
7722 f247 += f246;
7723 d247 = d246;
7724 f248 += f247;
7725 d248 = d247;
7726 f249 += f248;
7727 d249 = d248;
7728 f250 += f249;
7729 d250 = d249;
7730 f251 += f250;
7731 d251 = d250;
7732 f252 += f251;
7733 d252 = d251;
7734 f253 += f252;
7735 d253 = d252;
7736 f254 += f253;
7737 d254 = d253;
7738 f255 += f254;
7739 d255 = d254;
7740 f256 += f255;
7741 d256 = d255;
7742 f257 += f256;
7743 d257 = d256;
7744 f258 += f257;
7745 d258 = d257;
7746 f259 += f258;
7747 d259 = d258;
7748 f260 += f259;
7749 d260 = d259;
7750 f261 += f260;
7751 d261 = d260;
7752 f262 += f261;
7753 d262 = d261;
7754 f263 += f262;
7755 d263 = d262;
7756 f264 += f263;
7757 d264 = d263;
7758 f265 += f264;
7759 d265 = d264;
7760 f266 += f265;
7761 d266 = d265;
7762 f267 += f266;
7763 d267 = d266;
7764 f268 += f267;
7765 d268 = d267;
7766 f269 += f268;
7767 d269 = d268;
7768 f270 += f269;
7769 d270 = d269;
7770 f271 += f270;
7771 d271 = d270;
7772 f272 += f271;
7773 d272 = d271;
7774 f273 += f272;
7775 d273 = d272;
7776 f274 += f273;
7777 d274 = d273;
7778 f275 += f274;
7779 d275 = d274;
7780 f276 += f275;
7781 d276 = d275;
7782 f277 += f276;
7783 d277 = d276;
7784 f278 += f277;
7785 d278 = d277;
7786 f279 += f278;
7787 d279 = d278;
7788 f280 += f279;
7789 d280 = d279;
7790 f281 += f280;
7791 d281 = d280;
7792 f282 += f281;
7793 d282 = d281;
7794 f283 += f282;
7795 d283 = d282;
7796 f284 += f283;
7797 d284 = d283;
7798 f285 += f284;
7799 d285 = d284;
7800 f286 += f285;
7801 d286 = d285;
7802 f287 += f286;
7803 d287 = d286;
7804 f288 += f287;
7805 d288 = d287;
7806 f289 += f288;
7807 d289 = d288;
7808 f290 += f289;
7809 d290 = d289;
7810 f291 += f290;
7811 d291 = d290;
7812 f292 += f291;
7813 d292 = d291;
7814 f293 += f292;
7815 d293 = d292;
7816 f294 += f293;
7817 d294 = d293;
7818 f295 += f294;
7819 d295 = d294;
7820 f296 += f295;
7821 d296 = d295;
7822 f297 += f296;
7823 d297 = d296;
7824 f298 += f297;
7825 d298 = d297;
7826 f299 += f298;
7827 d299 = d298;
7828 f300 += f299;
7829 d300 = d299;
7830 f301 += f300;
7831 d301 = d300;
7832 f302 += f301;
7833 d302 = d301;
7834 f303 += f302;
7835 d303 = d302;
7836 f304 += f303;
7837 d304 = d303;
7838 f305 += f304;
7839 d305 = d304;
7840 f306 += f305;
7841 d306 = d305;
7842 f307 += f306;
7843 d307 = d306;
7844 f308 += f307;
7845 d308 = d307;
7846 f309 += f308;
7847 d309 = d308;
7848 f310 += f309;
7849 d310 = d309;
7850 f311 += f310;
7851 d311 = d310;
7852 f312 += f311;
7853 d312 = d311;
7854 f313 += f312;
7855 d313 = d312;
7856 f314 += f313;
7857 d314 = d313;
7858 f315 += f314;
7859 d315 = d314;
7860 f316 += f315;
7861 d316 = d315;
7862 f317 += f316;
7863 d317 = d316;
7864 f318 += f317;
7865 d318 = d317;
7866 f319 += f318;
7867 d319 = d318;
7868 f320 += f319;
7869 d320 = d319;
7870 f321 += f320;
7871 d321 = d320;
7872 f322 += f321;
7873 d322 = d321;
7874 f323 += f322;
7875 d323 = d322;
7876 f324 += f323;
7877 d324 = d323;
7878 f325 += f324;
7879 d325 = d324;
7880 f326 += f325;
7881 d326 = d325;
7882 f327 += f326;
7883 d327 = d326;
7884 f328 += f327;
7885 d328 = d327;
7886 f329 += f328;
7887 d329 = d328;
7888 f330 += f329;
7889 d330 = d329;
7890 f331 += f330;
7891 d331 = d330;
7892 f332 += f331;
7893 d332 = d331;
7894 f333 += f332;
7895 d333 = d332;
7896 f334 += f333;
7897 d334 = d333;
7898 f335 += f334;
7899 d335 = d334;
7900 f336 += f335;
7901 d336 = d335;
7902 f337 += f336;
7903 d337 = d336;
7904 f338 += f337;
7905 d338 = d337;
7906 f339 += f338;
7907 d339 = d338;
7908 f340 += f339;
7909 d340 = d339;
7910 f341 += f340;
7911 d341 = d340;
7912 f342 += f341;
7913 d342 = d341;
7914 f343 += f342;
7915 d343 = d342;
7916 f344 += f343;
7917 d344 = d343;
7918 f345 += f344;
7919 d345 = d344;
7920 f346 += f345;
7921 d346 = d345;
7922 f347 += f346;
7923 d347 = d346;
7924 f348 += f347;
7925 d348 = d347;
7926 f349 += f348;
7927 d349 = d348;
7928 f350 += f349;
7929 d350 = d349;
7930 f351 += f350;
7931 d351 = d350;
7932 f352 += f351;
7933 d352 = d351;
7934 f353 += f352;
7935 d353 = d352;
7936 f354 += f353;
7937 d354 = d353;
7938 f355 += f354;
7939 d355 = d354;
7940 f356 += f355;
7941 d356 = d355;
7942 f357 += f356;
7943 d357 = d356;
7944 f358 += f357;
7945 d358 = d357;
7946 f359 += f358;
7947 d359 = d358;
7948 f360 += f359;
7949 d360 = d359;
7950 f361 += f360;
7951 d361 = d360;
7952 f362 += f361;
7953 d362 = d361;
7954 f363 += f362;
7955 d363 = d362;
7956 f364 += f363;
7957 d364 = d363;
7958 f365 += f364;
7959 d365 = d364;
7960 f366 += f365;
7961 d366 = d365;
7962 f367 += f366;
7963 d367 = d366;
7964 f368 += f367;
7965 d368 = d367;
7966 f369 += f368;
7967 d369 = d368;
7968 f370 += f369;
7969 d370 = d369;
7970 f371 += f370;
7971 d371 = d370;
7972 f372 += f371;
7973 d372 = d371;
7974 f373 += f372;
7975 d373 = d372;
7976 f374 += f373;
7977 d374 = d373;
7978 f375 += f374;
7979 d375 = d374;
7980 f376 += f375;
7981 d376 = d375;
7982 f377 += f376;
7983 d377 = d376;
7984 f378 += f377;
7985 d378 = d377;
7986 f379 += f378;
7987 d379 = d378;
7988 f380 += f379;
7989 d380 = d379;
7990 f381 += f380;
7991 d381 = d380;
7992 f382 += f381;
7993 d382 = d381;
7994 f383 += f382;
7995 d383 = d382;
7996 f384 += f383;
7997 d384 = d383;
7998 f385 += f384;
7999 d385 = d384;
8000 f386 += f385;
8001 d386 = d385;
8002 f387 += f386;
8003 d387 = d386;
8004 f388 += f387;
8005 d388 = d387;
8006 f389 += f388;
8007 d389 = d388;
8008 f390 += f389;
8009 d390 = d389;
8010 f391 += f390;
8011 d391 = d390;
8012 f392 += f391;
8013 d392 = d391;
8014 f393 += f392;
8015 d393 = d392;
8016 f394 += f393;
8017 d394 = d393;
8018 f395 += f394;
8019 d395 = d394;
8020 f396 += f395;
8021 d396 = d395;
8022 f397 += f396;
8023 d397 = d396;
8024 f398 += f397;
8025 d398 = d397;
8026 f399 += f398;
8027 d399 = d398;
8028 f400 += f399;
8029 d400 = d399;
8030 f401 += f400;
8031 d401 = d400;
8032 f402 += f401;
8033 d402 = d401;
8034 f403 += f402;
8035 d403 = d402;
8036 f404 += f403;
8037 d404 = d403;
8038 f405 += f404;
8039 d405 = d404;
8040 f406 += f405;
8041 d406 = d405;
8042 f407 += f406;
8043 d407 = d406;
8044 f408 += f407;
8045 d408 = d407;
8046 f409 += f408;
8047 d409 = d408;
8048 f410 += f409;
8049 d410 = d409;
8050 f411 += f410;
8051 d411 = d410;
8052 f412 += f411;
8053 d412 = d411;
8054 f413 += f412;
8055 d413 = d412;
8056 f414 += f413;
8057 d414 = d413;
8058 f415 += f414;
8059 d415 = d414;
8060 f416 += f415;
8061 d416 = d415;
8062 f417 += f416;
8063 d417 = d416;
8064 f418 += f417;
8065 d418 = d417;
8066 f419 += f418;
8067 d419 = d418;
8068 f420 += f419;
8069 d420 = d419;
8070 f421 += f420;
8071 d421 = d420;
8072 f422 += f421;
8073 d422 = d421;
8074 f423 += f422;
8075 d423 = d422;
8076 f424 += f423;
8077 d424 = d423;
8078 f425 += f424;
8079 d425 = d424;
8080 f426 += f425;
8081 d426 = d425;
8082 f427 += f426;
8083 d427 = d426;
8084 f428 += f427;
8085 d428 = d427;
8086 f429 += f428;
8087 d429 = d428;
8088 f430 += f429;
8089 d430 = d429;
8090 f431 += f430;
8091 d431 = d430;
8092 f432 += f431;
8093 d432 = d431;
8094 f433 += f432;
8095 d433 = d432;
8096 f434 += f433;
8097 d434 = d433;
8098 f435 += f434;
8099 d435 = d434;
8100 f436 += f435;
8101 d436 = d435;
8102 f437 += f436;
8103 d437 = d436;
8104 f438 += f437;
8105 d438 = d437;
8106 f439 += f438;
8107 d439 = d438;
8108 f440 += f439;
8109 d440 = d439;
8110 f441 += f440;
8111 d441 = d440;
8112 f442 += f441;
8113 d442 = d441;
8114 f443 += f442;
8115 d443 = d442;
8116 f444 += f443;
8117 d444 = d443;
8118 f445 += f444;
8119 d445 = d444;
8120 f446 += f445;
8121 d446 = d445;
8122 f447 += f446;
8123 d447 = d446;
8124 f448 += f447;
8125 d448 = d447;
8126 f449 += f448;
8127 d449 = d448;
8128 f450 += f449;
8129 d450 = d449;
8130 f451 += f450;
8131 d451 = d450;
8132 f452 += f451;
8133 d452 = d451;
8134 f453 += f452;
8135 d453 = d452;
8136 f454 += f453;
8137 d454 = d453;
8138 f455 += f454;
8139 d455 = d454;
8140 f456 += f455;
8141 d456 = d455;
8142 f457 += f456;
8143 d457 = d456;
8144 f458 += f457;
8145 d458 = d457;
8146 f459 += f458;
8147 d459 = d458;
8148 f460 += f459;
8149 d460 = d459;
8150 f461 += f460;
8151 d461 = d460;
8152 f462 += f461;
8153 d462 = d461;
8154 f463 += f462;
8155 d463 = d462;
8156 f464 += f463;
8157 d464 = d463;
8158 f465 += f464;
8159 d465 = d464;
8160 f466 += f465;
8161 d466 = d465;
8162 f467 += f466;
8163 d467 = d466;
8164 f468 += f467;
8165 d468 = d467;
8166 f469 += f468;
8167 d469 = d468;
8168 f470 += f469;
8169 d470 = d469;
8170 f471 += f470;
8171 d471 = d470;
8172 f472 += f471;
8173 d472 = d471;
8174 f473 += f472;
8175 d473 = d472;
8176 f474 += f473;
8177 d474 = d473;
8178 f475 += f474;
8179 d475 = d474;
8180 f476 += f475;
8181 d476 = d475;
8182 f477 += f476;
8183 d477 = d476;
8184 f478 += f477;
8185 d478 = d477;
8186 f479 += f478;
8187 d479 = d478;
8188 f480 += f479;
8189 d480 = d479;
8190 f481 += f480;
8191 d481 = d480;
8192 f482 += f481;
8193 d482 = d481;
8194 f483 += f482;
8195 d483 = d482;
8196 f484 += f483;
8197 d484 = d483;
8198 f485 += f484;
8199 d485 = d484;
8200 f486 += f485;
8201 d486 = d485;
8202 f487 += f486;
8203 d487 = d486;
8204 f488 += f487;
8205 d488 = d487;
8206 f489 += f488;
8207 d489 = d488;
8208 f490 += f489;
8209 d490 = d489;
8210 f491 += f490;
8211 d491 = d490;
8212 f492 += f491;
8213 d492 = d491;
8214 f493 += f492;
8215 d493 = d492;
8216 f494 += f493;
8217 d494 = d493;
8218 f495 += f494;
8219 d495 = d494;
8220 f496 += f495;
8221 d496 = d495;
8222 f497 += f496;
8223 d497 = d496;
8224 f498 += f497;
8225 d498 = d497;
8226 f499 += f498;
8227 d499 = d498;
8228 f500 += f499;
8229 d500 = d499;
8230 f501 += f500;
8231 d501 = d500;
8232 f502 += f501;
8233 d502 = d501;
8234 f503 += f502;
8235 d503 = d502;
8236 f504 += f503;
8237 d504 = d503;
8238 f505 += f504;
8239 d505 = d504;
8240 f506 += f505;
8241 d506 = d505;
8242 f507 += f506;
8243 d507 = d506;
8244 f508 += f507;
8245 d508 = d507;
8246 f509 += f508;
8247 d509 = d508;
8248 f510 += f509;
8249 d510 = d509;
8250 f511 += f510;
8251 d511 = d510;
8252 f512 += f511;
8253 d512 = d511;
8254 f513 += f512;
8255 d513 = d512;
8256 f514 += f513;
8257 d514 = d513;
8258 f515 += f514;
8259 d515 = d514;
8260 f516 += f515;
8261 d516 = d515;
8262 f517 += f516;
8263 d517 = d516;
8264 f518 += f517;
8265 d518 = d517;
8266 f519 += f518;
8267 d519 = d518;
8268 f520 += f519;
8269 d520 = d519;
8270 f521 += f520;
8271 d521 = d520;
8272 f522 += f521;
8273 d522 = d521;
8274 f523 += f522;
8275 d523 = d522;
8276 f524 += f523;
8277 d524 = d523;
8278 f525 += f524;
8279 d525 = d524;
8280 f526 += f525;
8281 d526 = d525;
8282 f527 += f526;
8283 d527 = d526;
8284 f528 += f527;
8285 d528 = d527;
8286 f529 += f528;
8287 d529 = d528;
8288 f530 += f529;
8289 d530 = d529;
8290 f531 += f530;
8291 d531 = d530;
8292 f532 += f531;
8293 d532 = d531;
8294 f533 += f532;
8295 d533 = d532;
8296 f534 += f533;
8297 d534 = d533;
8298 f535 += f534;
8299 d535 = d534;
8300 f536 += f535;
8301 d536 = d535;
8302 f537 += f536;
8303 d537 = d536;
8304 f538 += f537;
8305 d538 = d537;
8306 f539 += f538;
8307 d539 = d538;
8308 f540 += f539;
8309 d540 = d539;
8310 f541 += f540;
8311 d541 = d540;
8312 f542 += f541;
8313 d542 = d541;
8314 f543 += f542;
8315 d543 = d542;
8316 f544 += f543;
8317 d544 = d543;
8318 f545 += f544;
8319 d545 = d544;
8320 f546 += f545;
8321 d546 = d545;
8322 f547 += f546;
8323 d547 = d546;
8324 f548 += f547;
8325 d548 = d547;
8326 f549 += f548;
8327 d549 = d548;
8328 f550 += f549;
8329 d550 = d549;
8330 f551 += f550;
8331 d551 = d550;
8332 f552 += f551;
8333 d552 = d551;
8334 f553 += f552;
8335 d553 = d552;
8336 f554 += f553;
8337 d554 = d553;
8338 f555 += f554;
8339 d555 = d554;
8340 f556 += f555;
8341 d556 = d555;
8342 f557 += f556;
8343 d557 = d556;
8344 f558 += f557;
8345 d558 = d557;
8346 f559 += f558;
8347 d559 = d558;
8348 f560 += f559;
8349 d560 = d559;
8350 f561 += f560;
8351 d561 = d560;
8352 f562 += f561;
8353 d562 = d561;
8354 f563 += f562;
8355 d563 = d562;
8356 f564 += f563;
8357 d564 = d563;
8358 f565 += f564;
8359 d565 = d564;
8360 f566 += f565;
8361 d566 = d565;
8362 f567 += f566;
8363 d567 = d566;
8364 f568 += f567;
8365 d568 = d567;
8366 f569 += f568;
8367 d569 = d568;
8368 f570 += f569;
8369 d570 = d569;
8370 f571 += f570;
8371 d571 = d570;
8372 f572 += f571;
8373 d572 = d571;
8374 f573 += f572;
8375 d573 = d572;
8376 f574 += f573;
8377 d574 = d573;
8378 f575 += f574;
8379 d575 = d574;
8380 f576 += f575;
8381 d576 = d575;
8382 f577 += f576;
8383 d577 = d576;
8384 f578 += f577;
8385 d578 = d577;
8386 f579 += f578;
8387 d579 = d578;
8388 f580 += f579;
8389 d580 = d579;
8390 f581 += f580;
8391 d581 = d580;
8392 f582 += f581;
8393 d582 = d581;
8394 f583 += f582;
8395 d583 = d582;
8396 f584 += f583;
8397 d584 = d583;
8398 f585 += f584;
8399 d585 = d584;
8400 f586 += f585;
8401 d586 = d585;
8402 f587 += f586;
8403 d587 = d586;
8404 f588 += f587;
8405 d588 = d587;
8406 f589 += f588;
8407 d589 = d588;
8408 f590 += f589;
8409 d590 = d589;
8410 f591 += f590;
8411 d591 = d590;
8412 f592 += f591;
8413 d592 = d591;
8414 f593 += f592;
8415 d593 = d592;
8416 f594 += f593;
8417 d594 = d593;
8418 f595 += f594;
8419 d595 = d594;
8420 f596 += f595;
8421 d596 = d595;
8422 f597 += f596;
8423 d597 = d596;
8424 f598 += f597;
8425 d598 = d597;
8426 f599 += f598;
8427 d599 = d598;
8428 f600 += f599;
8429 d600 = d599;
8430 f601 += f600;
8431 d601 = d600;
8432 f602 += f601;
8433 d602 = d601;
8434 f603 += f602;
8435 d603 = d602;
8436 f604 += f603;
8437 d604 = d603;
8438 f605 += f604;
8439 d605 = d604;
8440 f606 += f605;
8441 d606 = d605;
8442 f607 += f606;
8443 d607 = d606;
8444 f608 += f607;
8445 d608 = d607;
8446 f609 += f608;
8447 d609 = d608;
8448 f610 += f609;
8449 d610 = d609;
8450 f611 += f610;
8451 d611 = d610;
8452 f612 += f611;
8453 d612 = d611;
8454 f613 += f612;
8455 d613 = d612;
8456 f614 += f613;
8457 d614 = d613;
8458 f615 += f614;
8459 d615 = d614;
8460 f616 += f615;
8461 d616 = d615;
8462 f617 += f616;
8463 d617 = d616;
8464 f618 += f617;
8465 d618 = d617;
8466 f619 += f618;
8467 d619 = d618;
8468 f620 += f619;
8469 d620 = d619;
8470 f621 += f620;
8471 d621 = d620;
8472 f622 += f621;
8473 d622 = d621;
8474 f623 += f622;
8475 d623 = d622;
8476 f624 += f623;
8477 d624 = d623;
8478 f625 += f624;
8479 d625 = d624;
8480 f626 += f625;
8481 d626 = d625;
8482 f627 += f626;
8483 d627 = d626;
8484 f628 += f627;
8485 d628 = d627;
8486 f629 += f628;
8487 d629 = d628;
8488 f630 += f629;
8489 d630 = d629;
8490 f631 += f630;
8491 d631 = d630;
8492 f632 += f631;
8493 d632 = d631;
8494 f633 += f632;
8495 d633 = d632;
8496 f634 += f633;
8497 d634 = d633;
8498 f635 += f634;
8499 d635 = d634;
8500 f636 += f635;
8501 d636 = d635;
8502 f637 += f636;
8503 d637 = d636;
8504 f638 += f637;
8505 d638 = d637;
8506 f639 += f638;
8507 d639 = d638;
8508 f640 += f639;
8509 d640 = d639;
8510 f641 += f640;
8511 d641 = d640;
8512 f642 += f641;
8513 d642 = d641;
8514 f643 += f642;
8515 d643 = d642;
8516 f644 += f643;
8517 d644 = d643;
8518 f645 += f644;
8519 d645 = d644;
8520 f646 += f645;
8521 d646 = d645;
8522 f647 += f646;
8523 d647 = d646;
8524 f648 += f647;
8525 d648 = d647;
8526 f649 += f648;
8527 d649 = d648;
8528 f650 += f649;
8529 d650 = d649;
8530 f651 += f650;
8531 d651 = d650;
8532 f652 += f651;
8533 d652 = d651;
8534 f653 += f652;
8535 d653 = d652;
8536 f654 += f653;
8537 d654 = d653;
8538 f655 += f654;
8539 d655 = d654;
8540 f656 += f655;
8541 d656 = d655;
8542 f657 += f656;
8543 d657 = d656;
8544 f658 += f657;
8545 d658 = d657;
8546 f659 += f658;
8547 d659 = d658;
8548 f660 += f659;
8549 d660 = d659;
8550 f661 += f660;
8551 d661 = d660;
8552 f662 += f661;
8553 d662 = d661;
8554 f663 += f662;
8555 d663 = d662;
8556 f664 += f663;
8557 d664 = d663;
8558 f665 += f664;
8559 d665 = d664;
8560 f666 += f665;
8561 d666 = d665;
8562 f667 += f666;
8563 d667 = d666;
8564 f668 += f667;
8565 d668 = d667;
8566 f669 += f668;
8567 d669 = d668;
8568 f670 += f669;
8569 d670 = d669;
8570 f671 += f670;
8571 d671 = d670;
8572 f672 += f671;
8573 d672 = d671;
8574 f673 += f672;
8575 d673 = d672;
8576 f674 += f673;
8577 d674 = d673;
8578 f675 += f674;
8579 d675 = d674;
8580 f676 += f675;
8581 d676 = d675;
8582 f677 += f676;
8583 d677 = d676;
8584 f678 += f677;
8585 d678 = d677;
8586 f679 += f678;
8587 d679 = d678;
8588 f680 += f679;
8589 d680 = d679;
8590 f681 += f680;
8591 d681 = d680;
8592 f682 += f681;
8593 d682 = d681;
8594 f683 += f682;
8595 d683 = d682;
8596 f684 += f683;
8597 d684 = d683;
8598 f685 += f684;
8599 d685 = d684;
8600 f686 += f685;
8601 d686 = d685;
8602 f687 += f686;
8603 d687 = d686;
8604 f688 += f687;
8605 d688 = d687;
8606 f689 += f688;
8607 d689 = d688;
8608 f690 += f689;
8609 d690 = d689;
8610 f691 += f690;
8611 d691 = d690;
8612 f692 += f691;
8613 d692 = d691;
8614 f693 += f692;
8615 d693 = d692;
8616 f694 += f693;
8617 d694 = d693;
8618 f695 += f694;
8619 d695 = d694;
8620 f696 += f695;
8621 d696 = d695;
8622 f697 += f696;
8623 d697 = d696;
8624 f698 += f697;
8625 d698 = d697;
8626 f699 += f698;
8627 d699 = d698;
8628 f700 += f699;
8629 d700 = d699;
8630 f701 += f700;
8631 d701 = d700;
8632 f702 += f701;
8633 d702 = d701;
8634 f703 += f702;
8635 d703 = d702;
8636 f704 += f703;
8637 d704 = d703;
8638 f705 += f704;
8639 d705 = d704;
8640 f706 += f705;
8641 d706 = d705;
8642 f707 += f706;
8643 d707 = d706;
8644 f708 += f707;
8645 d708 = d707;
8646 f709 += f708;
8647 d709 = d708;
8648 f710 += f709;
8649 d710 = d709;
8650 f711 += f710;
8651 d711 = d710;
8652 f712 += f711;
8653 d712 = d711;
8654 f713 += f712;
8655 d713 = d712;
8656 f714 += f713;
8657 d714 = d713;
8658 f715 += f714;
8659 d715 = d714;
8660 f716 += f715;
8661 d716 = d715;
8662 f717 += f716;
8663 d717 = d716;
8664 f718 += f717;
8665 d718 = d717;
8666 f719 += f718;
8667 d719 = d718;
8668 f720 += f719;
8669 d720 = d719;
8670 f721 += f720;
8671 d721 = d720;
8672 f722 += f721;
8673 d722 = d721;
8674 f723 += f722;
8675 d723 = d722;
8676 f724 += f723;
8677 d724 = d723;
8678 f725 += f724;
8679 d725 = d724;
8680 f726 += f725;
8681 d726 = d725;
8682 f727 += f726;
8683 d727 = d726;
8684 f728 += f727;
8685 d728 = d727;
8686 f729 += f728;
8687 d729 = d728;
8688 f730 += f729;
8689 d730 = d729;
8690 f731 += f730;
8691 d731 = d730;
8692 f732 += f731;
8693 d732 = d731;
8694 f733 += f732;
8695 d733 = d732;
8696 f734 += f733;
8697 d734 = d733;
8698 f735 += f734;
8699 d735 = d734;
8700 f736 += f735;
8701 d736 = d735;
8702 f737 += f736;
8703 d737 = d736;
8704 f738 += f737;
8705 d738 = d737;
8706 f739 += f738;
8707 d739 = d738;
8708 f740 += f739;
8709 d740 = d739;
8710 f741 += f740;
8711 d741 = d740;
8712 f742 += f741;
8713 d742 = d741;
8714 f743 += f742;
8715 d743 = d742;
8716 f744 += f743;
8717 d744 = d743;
8718 f745 += f744;
8719 d745 = d744;
8720 f746 += f745;
8721 d746 = d745;
8722 f747 += f746;
8723 d747 = d746;
8724 f748 += f747;
8725 d748 = d747;
8726 f749 += f748;
8727 d749 = d748;
8728 f750 += f749;
8729 d750 = d749;
8730 f751 += f750;
8731 d751 = d750;
8732 f752 += f751;
8733 d752 = d751;
8734 f753 += f752;
8735 d753 = d752;
8736 f754 += f753;
8737 d754 = d753;
8738 f755 += f754;
8739 d755 = d754;
8740 f756 += f755;
8741 d756 = d755;
8742 f757 += f756;
8743 d757 = d756;
8744 f758 += f757;
8745 d758 = d757;
8746 f759 += f758;
8747 d759 = d758;
8748 f760 += f759;
8749 d760 = d759;
8750 f761 += f760;
8751 d761 = d760;
8752 f762 += f761;
8753 d762 = d761;
8754 f763 += f762;
8755 d763 = d762;
8756 f764 += f763;
8757 d764 = d763;
8758 f765 += f764;
8759 d765 = d764;
8760 f766 += f765;
8761 d766 = d765;
8762 f767 += f766;
8763 d767 = d766;
8764 f768 += f767;
8765 d768 = d767;
8766 f769 += f768;
8767 d769 = d768;
8768 f770 += f769;
8769 d770 = d769;
8770 f771 += f770;
8771 d771 = d770;
8772 f772 += f771;
8773 d772 = d771;
8774 f773 += f772;
8775 d773 = d772;
8776 f774 += f773;
8777 d774 = d773;
8778 f775 += f774;
8779 d775 = d774;
8780 f776 += f775;
8781 d776 = d775;
8782 f777 += f776;
8783 d777 = d776;
8784 f778 += f777;
8785 d778 = d777;
8786 f779 += f778;
8787 d779 = d778;
8788 f780 += f779;
8789 d780 = d779;
8790 f781 += f780;
8791 d781 = d780;
8792 f782 += f781;
8793 d782 = d781;
8794 f783 += f782;
8795 d783 = d782;
8796 f784 += f783;
8797 d784 = d783;
8798 f785 += f784;
8799 d785 = d784;
8800 f786 += f785;
8801 d786 = d785;
8802 f787 += f786;
8803 d787 = d786;
8804 f788 += f787;
8805 d788 = d787;
8806 f789 += f788;
8807 d789 = d788;
8808 f790 += f789;
8809 d790 = d789;
8810 f791 += f790;
8811 d791 = d790;
8812 f792 += f791;
8813 d792 = d791;
8814 f793 += f792;
8815 d793 = d792;
8816 f794 += f793;
8817 d794 = d793;
8818 f795 += f794;
8819 d795 = d794;
8820 f796 += f795;
8821 d796 = d795;
8822 f797 += f796;
8823 d797 = d796;
8824 f798 += f797;
8825 d798 = d797;
8826 f799 += f798;
8827 d799 = d798;
8828 f800 += f799;
8829 d800 = d799;
8830 f801 += f800;
8831 d801 = d800;
8832 f802 += f801;
8833 d802 = d801;
8834 f803 += f802;
8835 d803 = d802;
8836 f804 += f803;
8837 d804 = d803;
8838 f805 += f804;
8839 d805 = d804;
8840 f806 += f805;
8841 d806 = d805;
8842 f807 += f806;
8843 d807 = d806;
8844 f808 += f807;
8845 d808 = d807;
8846 f809 += f808;
8847 d809 = d808;
8848 f810 += f809;
8849 d810 = d809;
8850 f811 += f810;
8851 d811 = d810;
8852 f812 += f811;
8853 d812 = d811;
8854 f813 += f812;
8855 d813 = d812;
8856 f814 += f813;
8857 d814 = d813;
8858 f815 += f814;
8859 d815 = d814;
8860 f816 += f815;
8861 d816 = d815;
8862 f817 += f816;
8863 d817 = d816;
8864 f818 += f817;
8865 d818 = d817;
8866 f819 += f818;
8867 d819 = d818;
8868 f820 += f819;
8869 d820 = d819;
8870 f821 += f820;
8871 d821 = d820;
8872 f822 += f821;
8873 d822 = d821;
8874 f823 += f822;
8875 d823 = d822;
8876 f824 += f823;
8877 d824 = d823;
8878 f825 += f824;
8879 d825 = d824;
8880 f826 += f825;
8881 d826 = d825;
8882 f827 += f826;
8883 d827 = d826;
8884 f828 += f827;
8885 d828 = d827;
8886 f829 += f828;
8887 d829 = d828;
8888 f830 += f829;
8889 d830 = d829;
8890 f831 += f830;
8891 d831 = d830;
8892 f832 += f831;
8893 d832 = d831;
8894 f833 += f832;
8895 d833 = d832;
8896 f834 += f833;
8897 d834 = d833;
8898 f835 += f834;
8899 d835 = d834;
8900 f836 += f835;
8901 d836 = d835;
8902 f837 += f836;
8903 d837 = d836;
8904 f838 += f837;
8905 d838 = d837;
8906 f839 += f838;
8907 d839 = d838;
8908 f840 += f839;
8909 d840 = d839;
8910 f841 += f840;
8911 d841 = d840;
8912 f842 += f841;
8913 d842 = d841;
8914 f843 += f842;
8915 d843 = d842;
8916 f844 += f843;
8917 d844 = d843;
8918 f845 += f844;
8919 d845 = d844;
8920 f846 += f845;
8921 d846 = d845;
8922 f847 += f846;
8923 d847 = d846;
8924 f848 += f847;
8925 d848 = d847;
8926 f849 += f848;
8927 d849 = d848;
8928 f850 += f849;
8929 d850 = d849;
8930 f851 += f850;
8931 d851 = d850;
8932 f852 += f851;
8933 d852 = d851;
8934 f853 += f852;
8935 d853 = d852;
8936 f854 += f853;
8937 d854 = d853;
8938 f855 += f854;
8939 d855 = d854;
8940 f856 += f855;
8941 d856 = d855;
8942 f857 += f856;
8943 d857 = d856;
8944 f858 += f857;
8945 d858 = d857;
8946 f859 += f858;
8947 d859 = d858;
8948 f860 += f859;
8949 d860 = d859;
8950 f861 += f860;
8951 d861 = d860;
8952 f862 += f861;
8953 d862 = d861;
8954 f863 += f862;
8955 d863 = d862;
8956 f864 += f863;
8957 d864 = d863;
8958 f865 += f864;
8959 d865 = d864;
8960 f866 += f865;
8961 d866 = d865;
8962 f867 += f866;
8963 d867 = d866;
8964 f868 += f867;
8965 d868 = d867;
8966 f869 += f868;
8967 d869 = d868;
8968 f870 += f869;
8969 d870 = d869;
8970 f871 += f870;
8971 d871 = d870;
8972 f872 += f871;
8973 d872 = d871;
8974 f873 += f872;
8975 d873 = d872;
8976 f874 += f873;
8977 d874 = d873;
8978 f875 += f874;
8979 d875 = d874;
8980 f876 += f875;
8981 d876 = d875;
8982 f877 += f876;
8983 d877 = d876;
8984 f878 += f877;
8985 d878 = d877;
8986 f879 += f878;
8987 d879 = d878;
8988 f880 += f879;
8989 d880 = d879;
8990 f881 += f880;
8991 d881 = d880;
8992 f882 += f881;
8993 d882 = d881;
8994 f883 += f882;
8995 d883 = d882;
8996 f884 += f883;
8997 d884 = d883;
8998 f885 += f884;
8999 d885 = d884;
9000 f886 += f885;
9001 d886 = d885;
9002 f887 += f886;
9003 d887 = d886;
9004 f888 += f887;
9005 d888 = d887;
9006 f889 += f888;
9007 d889 = d888;
9008 f890 += f889;
9009 d890 = d889;
9010 f891 += f890;
9011 d891 = d890;
9012 f892 += f891;
9013 d892 = d891;
9014 f893 += f892;
9015 d893 = d892;
9016 f894 += f893;
9017 d894 = d893;
9018 f895 += f894;
9019 d895 = d894;
9020 f896 += f895;
9021 d896 = d895;
9022 f897 += f896;
9023 d897 = d896;
9024 f898 += f897;
9025 d898 = d897;
9026 f899 += f898;
9027 d899 = d898;
9028 f900 += f899;
9029 d900 = d899;
9030 f901 += f900;
9031 d901 = d900;
9032 f902 += f901;
9033 d902 = d901;
9034 f903 += f902;
9035 d903 = d902;
9036 f904 += f903;
9037 d904 = d903;
9038 f905 += f904;
9039 d905 = d904;
9040 f906 += f905;
9041 d906 = d905;
9042 f907 += f906;
9043 d907 = d906;
9044 f908 += f907;
9045 d908 = d907;
9046 f909 += f908;
9047 d909 = d908;
9048 f910 += f909;
9049 d910 = d909;
9050 f911 += f910;
9051 d911 = d910;
9052 f912 += f911;
9053 d912 = d911;
9054 f913 += f912;
9055 d913 = d912;
9056 f914 += f913;
9057 d914 = d913;
9058 f915 += f914;
9059 d915 = d914;
9060 f916 += f915;
9061 d916 = d915;
9062 f917 += f916;
9063 d917 = d916;
9064 f918 += f917;
9065 d918 = d917;
9066 f919 += f918;
9067 d919 = d918;
9068 f920 += f919;
9069 d920 = d919;
9070 f921 += f920;
9071 d921 = d920;
9072 f922 += f921;
9073 d922 = d921;
9074 f923 += f922;
9075 d923 = d922;
9076 f924 += f923;
9077 d924 = d923;
9078 f925 += f924;
9079 d925 = d924;
9080 f926 += f925;
9081 d926 = d925;
9082 f927 += f926;
9083 d927 = d926;
9084 f928 += f927;
9085 d928 = d927;
9086 f929 += f928;
9087 d929 = d928;
9088 f930 += f929;
9089 d930 = d929;
9090 f931 += f930;
9091 d931 = d930;
9092 f932 += f931;
9093 d932 = d931;
9094 f933 += f932;
9095 d933 = d932;
9096 f934 += f933;
9097 d934 = d933;
9098 f935 += f934;
9099 d935 = d934;
9100 f936 += f935;
9101 d936 = d935;
9102 f937 += f936;
9103 d937 = d936;
9104 f938 += f937;
9105 d938 = d937;
9106 f939 += f938;
9107 d939 = d938;
9108 f940 += f939;
9109 d940 = d939;
9110 f941 += f940;
9111 d941 = d940;
9112 f942 += f941;
9113 d942 = d941;
9114 f943 += f942;
9115 d943 = d942;
9116 f944 += f943;
9117 d944 = d943;
9118 f945 += f944;
9119 d945 = d944;
9120 f946 += f945;
9121 d946 = d945;
9122 f947 += f946;
9123 d947 = d946;
9124 f948 += f947;
9125 d948 = d947;
9126 f949 += f948;
9127 d949 = d948;
9128 f950 += f949;
9129 d950 = d949;
9130 f951 += f950;
9131 d951 = d950;
9132 f952 += f951;
9133 d952 = d951;
9134 f953 += f952;
9135 d953 = d952;
9136 f954 += f953;
9137 d954 = d953;
9138 f955 += f954;
9139 d955 = d954;
9140 f956 += f955;
9141 d956 = d955;
9142 f957 += f956;
9143 d957 = d956;
9144 f958 += f957;
9145 d958 = d957;
9146 f959 += f958;
9147 d959 = d958;
9148 f960 += f959;
9149 d960 = d959;
9150 f961 += f960;
9151 d961 = d960;
9152 f962 += f961;
9153 d962 = d961;
9154 f963 += f962;
9155 d963 = d962;
9156 f964 += f963;
9157 d964 = d963;
9158 f965 += f964;
9159 d965 = d964;
9160 f966 += f965;
9161 d966 = d965;
9162 f967 += f966;
9163 d967 = d966;
9164 f968 += f967;
9165 d968 = d967;
9166 f969 += f968;
9167 d969 = d968;
9168 f970 += f969;
9169 d970 = d969;
9170 f971 += f970;
9171 d971 = d970;
9172 f972 += f971;
9173 d972 = d971;
9174 f973 += f972;
9175 d973 = d972;
9176 f974 += f973;
9177 d974 = d973;
9178 f975 += f974;
9179 d975 = d974;
9180 f976 += f975;
9181 d976 = d975;
9182 f977 += f976;
9183 d977 = d976;
9184 f978 += f977;
9185 d978 = d977;
9186 f979 += f978;
9187 d979 = d978;
9188 f980 += f979;
9189 d980 = d979;
9190 f981 += f980;
9191 d981 = d980;
9192 f982 += f981;
9193 d982 = d981;
9194 f983 += f982;
9195 d983 = d982;
9196 f984 += f983;
9197 d984 = d983;
9198 f985 += f984;
9199 d985 = d984;
9200 f986 += f985;
9201 d986 = d985;
9202 f987 += f986;
9203 d987 = d986;
9204 f988 += f987;
9205 d988 = d987;
9206 f989 += f988;
9207 d989 = d988;
9208 f990 += f989;
9209 d990 = d989;
9210 f991 += f990;
9211 d991 = d990;
9212 f992 += f991;
9213 d992 = d991;
9214 f993 += f992;
9215 d993 = d992;
9216 f994 += f993;
9217 d994 = d993;
9218 f995 += f994;
9219 d995 = d994;
9220 f996 += f995;
9221 d996 = d995;
9222 f997 += f996;
9223 d997 = d996;
9224 f998 += f997;
9225 d998 = d997;
9226 f999 += f998;
9227 d999 = d998;
9228 return f999 + d999;
9229 }
9230
buzbee4922ef92012-02-24 14:32:20 -08009231 static void largeFrameTest() {
9232 long res = largeFrame();
9233 if (res == 499500) {
9234 System.out.println("largeFrame passes");
9235 } else {
9236 System.out.println("largeFrame fails: expected 49950, got " + res);
9237 }
9238 }
Ian Rogers513c64a2012-02-26 15:16:23 -08009239
9240 static void largeFrameTestFloat() {
9241 double res = largeFrameFloat();
9242 if (res == 499500.0) {
9243 System.out.println("largeFrameFloat passes");
9244 } else {
9245 System.out.println("largeFrameFloat fails: expected 49950, got " + res);
9246 }
9247 }
jeffhao5d1ac922011-09-29 17:41:15 -07009248}
9249
9250class SpinThread extends Thread {
9251 int mPriority;
9252
9253 SpinThread(int prio) {
9254 super("Spin prio=" + prio);
9255 mPriority = prio;
9256 }
9257
9258 public void run() {
9259 setPriority(mPriority);
9260 while (true) {}
9261 }
9262}
buzbeee62076c2012-03-21 14:26:16 -07009263
9264class Foo {
9265 private int bar = 1234;
9266 private long lbar = 1234;
9267
Vladimir Markoe1fced12014-04-04 14:52:53 +01009268 public static Foo getNullFoo() {
9269 // Make this a bit complicated so that it's not inlined.
9270 Foo foo = new Foo();
9271 return (barBar(foo) != 0) ? null : foo;
9272 }
9273
buzbee97df07f2012-03-27 16:13:20 -07009274 // Looks similar to a direct method, make sure we're null checking
9275 static int barBar(Foo foo) {
9276 return foo.bar;
9277 }
9278
buzbeee62076c2012-03-21 14:26:16 -07009279 public int iConst0x1234() {
9280 return 0x1234;
9281 }
9282
9283 public long iConst0x123443211234() {
9284 return 0x123443211234L;
9285 }
9286
9287 public void setBar1(int a1) {
9288 bar = a1;
9289 }
9290 public void setBar2(int a1, int a2) {
9291 bar = a2;
9292 }
9293 public void setBar3(int a1, int a2, int a3) {
9294 bar = a3;
9295 }
9296 public void setBar4(int a1, int a2, int a3, int a4) {
9297 bar = a4;
9298 }
9299 public void setBar5(int a1, int a2, int a3, int a4, int a5) {
9300 bar = a5;
9301 }
9302 public int getBar0() {
9303 return bar;
9304 }
9305 public int getBar1(int a1) {
9306 return bar;
9307 }
9308 public int getBar2(int a1, int a2) {
9309 return bar;
9310 }
9311 public int getBar3(int a1, int a2, int a3) {
9312 return bar;
9313 }
9314 public int getBar4(int a1, int a2, int a3, int a4) {
9315 return bar;
9316 }
9317 public int getBar5(int a1, int a2, int a3, int a4, int a5) {
9318 return bar;
9319 }
9320
9321 public int ident0(int a1) {
9322 return a1;
9323 }
9324
9325 public int ident1(int a2, int a1) {
9326 return a1;
9327 }
9328
9329 public int ident2(int a3, int a2, int a1) {
9330 return a1;
9331 }
9332
9333 public int ident3(int a4, int a3, int a2, int a1) {
9334 return a1;
9335 }
9336
9337 public int ident4(int a5, int a4, int a3, int a2, int a1) {
9338 return a1;
9339 }
9340
9341 public int ident5(int a6, int a5, int a4, int a3, int a2, int a1) {
9342 return a1;
9343 }
9344
9345
9346 public void wideSetBar1(long a1) {
9347 lbar = a1;
9348 }
9349 public void wideSetBar2(long a1, long a2) {
9350 lbar = a2;
9351 }
9352 public void wideSetBar3(long a1, long a2, long a3) {
9353 lbar = a3;
9354 }
9355 public void wideSetBar4(long a1, long a2, long a3, long a4) {
9356 lbar = a4;
9357 }
9358 public void wideSetBar5(long a1, long a2, long a3, long a4, long a5) {
9359 lbar = a5;
9360 }
Vladimir Marko8017ef82014-02-10 09:59:43 +00009361 public void wideSetBar2i(int a1, long a2) {
9362 lbar = a2;
9363 }
9364 public void wideSetBar3i(int a1, int a2, long a3) {
9365 lbar = a3;
9366 }
9367 public void wideSetBar4i(int a1, int a2, int a3, long a4) {
9368 lbar = a4;
9369 }
9370 public void wideSetBar5i(int a1, int a2, int a3, int a4, long a5) {
9371 lbar = a5;
9372 }
buzbeee62076c2012-03-21 14:26:16 -07009373 public long wideGetBar0() {
9374 return lbar;
9375 }
9376 public long wideGetBar1(long a1) {
9377 return lbar;
9378 }
9379 public long wideGetBar2(long a1, long a2) {
9380 return lbar;
9381 }
9382 public long wideGetBar3(long a1, long a2, long a3) {
9383 return lbar;
9384 }
9385 public long wideGetBar4(long a1, long a2, long a3, long a4) {
9386 return lbar;
9387 }
9388 public long wideGetBar5(long a1, long a2, long a3, long a4, long a5) {
9389 return lbar;
9390 }
9391
9392 public long wideIdent0(long a1) {
9393 return a1;
9394 }
9395
9396 public long wideIdent1(int a2, long a1) {
9397 return a1;
9398 }
9399
9400 public long wideIdent2(int a3, int a2, long a1) {
9401 return a1;
9402 }
9403
9404 public long wideIdent3(int a4, int a3, int a2, long a1) {
9405 return a1;
9406 }
9407
9408 public long wideIdent4(int a5, int a4, int a3, int a2, long a1) {
9409 return a1;
9410 }
9411
9412 public long wideIdent5(int a6, int a5, int a4, int a3, int a2, long a1) {
9413 return a1;
Vladimir Markodb406322014-02-19 14:11:19 +00009414 }
Vladimir Markoe1fced12014-04-04 14:52:53 +01009415 public Foo setBar1ReturnThis(int a1) {
9416 bar = a1;
9417 return this;
9418 }
9419 public Foo setBar2ReturnThis(int a1, int a2) {
9420 bar = a2;
9421 return this;
9422 }
9423 public Foo setBar3ReturnThis(int a1, int a2, int a3) {
9424 bar = a3;
9425 return this;
9426 }
9427 public Foo setBar4ReturnThis(int a1, int a2, int a3, int a4) {
9428 bar = a4;
9429 return this;
9430 }
9431 public Foo setBar5ReturnThis(int a1, int a2, int a3, int a4, int a5) {
9432 bar = a5;
9433 return this;
9434 }
9435 public Foo wideSetBar1ReturnThis(long a1) {
9436 lbar = a1;
9437 return this;
9438 }
9439 public Foo wideSetBar2ReturnThis(long a1, long a2) {
9440 lbar = a2;
9441 return this;
9442 }
9443 public Foo wideSetBar3ReturnThis(long a1, long a2, long a3) {
9444 lbar = a3;
9445 return this;
9446 }
9447 public Foo wideSetBar4ReturnThis(long a1, long a2, long a3, long a4) {
9448 lbar = a4;
9449 return this;
9450 }
9451 public Foo wideSetBar5ReturnThis(long a1, long a2, long a3, long a4, long a5) {
9452 lbar = a5;
9453 return this;
9454 }
9455 public Foo wideSetBar2iReturnThis(int a1, long a2) {
9456 lbar = a2;
9457 return this;
9458 }
9459 public Foo wideSetBar3iReturnThis(int a1, int a2, long a3) {
9460 lbar = a3;
9461 return this;
9462 }
9463 public Foo wideSetBar4iReturnThis(int a1, int a2, int a3, long a4) {
9464 lbar = a4;
9465 return this;
9466 }
9467 public Foo wideSetBar5iReturnThis(int a1, int a2, int a3, int a4, long a5) {
9468 lbar = a5;
9469 return this;
9470 }
9471 public int setBar1ReturnBarArg(int a1) {
9472 bar = a1;
9473 return a1;
9474 }
9475 public int setBar2ReturnBarArg(int a1, int a2) {
9476 bar = a2;
9477 return a2;
9478 }
9479 public int setBar3ReturnBarArg(int a1, int a2, int a3) {
9480 bar = a3;
9481 return a3;
9482 }
9483 public int setBar4ReturnBarArg(int a1, int a2, int a3, int a4) {
9484 bar = a4;
9485 return a4;
9486 }
9487 public int setBar5ReturnBarArg(int a1, int a2, int a3, int a4, int a5) {
9488 bar = a5;
9489 return a5;
9490 }
9491 public long wideSetBar1ReturnBarArg(long a1) {
9492 lbar = a1;
9493 return a1;
9494 }
9495 public long wideSetBar2ReturnBarArg(long a1, long a2) {
9496 lbar = a2;
9497 return a2;
9498 }
9499 public long wideSetBar3ReturnBarArg(long a1, long a2, long a3) {
9500 lbar = a3;
9501 return a3;
9502 }
9503 public long wideSetBar4ReturnBarArg(long a1, long a2, long a3, long a4) {
9504 lbar = a4;
9505 return a4;
9506 }
9507 public long wideSetBar5ReturnBarArg(long a1, long a2, long a3, long a4, long a5) {
9508 lbar = a5;
9509 return a5;
9510 }
9511 public long wideSetBar2iReturnBarArg(int a1, long a2) {
9512 lbar = a2;
9513 return a2;
9514 }
9515 public long wideSetBar3iReturnBarArg(int a1, int a2, long a3) {
9516 lbar = a3;
9517 return a3;
9518 }
9519 public long wideSetBar4iReturnBarArg(int a1, int a2, int a3, long a4) {
9520 lbar = a4;
9521 return a4;
9522 }
9523 public long wideSetBar5iReturnBarArg(int a1, int a2, int a3, int a4, long a5) {
9524 lbar = a5;
9525 return a5;
9526 }
9527 public int setBar2ReturnDummyArg1(int a1, int a2) {
9528 bar = a2;
9529 return a1;
9530 }
9531 public int setBar3ReturnDummyArg2(int a1, int a2, int a3) {
9532 bar = a3;
9533 return a2;
9534 }
9535 public int setBar4ReturnDummyArg3(int a1, int a2, int a3, int a4) {
9536 bar = a4;
9537 return a3;
9538 }
9539 public int setBar5ReturnDummyArg4(int a1, int a2, int a3, int a4, int a5) {
9540 bar = a5;
9541 return a4;
9542 }
9543 public long wideSetBar2ReturnDummyArg1(long a1, long a2) {
9544 lbar = a2;
9545 return a1;
9546 }
9547 public long wideSetBar3ReturnDummyArg2(long a1, long a2, long a3) {
9548 lbar = a3;
9549 return a2;
9550 }
9551 public long wideSetBar4ReturnDummyArg3(long a1, long a2, long a3, long a4) {
9552 lbar = a4;
9553 return a3;
9554 }
9555 public long wideSetBar5ReturnDummyArg4(long a1, long a2, long a3, long a4, long a5) {
9556 lbar = a5;
9557 return a4;
9558 }
9559 public int wideSetBar2iReturnDummyArg1(int a1, long a2) {
9560 lbar = a2;
9561 return a1;
9562 }
9563 public int wideSetBar3iReturnDummyArg2(int a1, int a2, long a3) {
9564 lbar = a3;
9565 return a2;
9566 }
9567 public int wideSetBar4iReturnDummyArg3(int a1, int a2, int a3, long a4) {
9568 lbar = a4;
9569 return a3;
9570 }
9571 public int wideSetBar5iReturnDummyArg4(int a1, int a2, int a3, int a4, long a5) {
9572 lbar = a5;
9573 return a4;
9574 }
Vladimir Markodb406322014-02-19 14:11:19 +00009575}
buzbeee62076c2012-03-21 14:26:16 -07009576
Vladimir Markodb406322014-02-19 14:11:19 +00009577class LVNTests {
9578 private LVNTests link = null;
9579 private int value = 0;
9580
9581 private void setLink(LVNTests l) {
9582 link = l;
9583 }
9584
9585 private static void causeNPE1(LVNTests lhs, LVNTests rhs) {
9586 LVNTests link1 = lhs.link;
9587 rhs.link = null;
9588 LVNTests link2 = lhs.link;
9589 int value1 = link1.value;
9590 int value2 = link2.value;
9591 System.out.println("LVNTests.testNPE1 fails with " + value1 + " and " + value2);
9592 }
9593
9594 public static void testNPE1() {
9595 LVNTests t = new LVNTests();
9596 t.link = new LVNTests();
9597 try {
9598 causeNPE1(t, t);
9599 } catch (NullPointerException e) {
9600 System.out.println("LVNTests.testNPE1 passes");
9601 }
9602 }
9603
9604 private static void causeNPE2(LVNTests lhs, LVNTests rhs) {
9605 LVNTests link1 = lhs.link;
9606 rhs.setLink(null);
9607 LVNTests link2 = lhs.link;
9608 int value1 = link1.value;
9609 int value2 = link2.value;
9610 System.out.println("LVNTests.testNPE2 fails with " + value1 + " and " + value2);
9611 }
9612
9613 public static void testNPE2() {
9614 LVNTests t = new LVNTests();
9615 t.link = new LVNTests();
9616 try {
9617 causeNPE2(t, t);
9618 } catch (NullPointerException e) {
9619 System.out.println("LVNTests.testNPE2 passes");
9620 }
9621 }
buzbeee62076c2012-03-21 14:26:16 -07009622}
Vladimir Markoa1a70742014-03-03 10:28:05 +00009623
9624class MirOpSelectTests {
9625 private static int ifEqzThen0Else1(int i) { return (i == 0) ? 0 : 1; }
9626 private static int ifEqzThen0Else8(int i) { return (i == 0) ? 0 : 8; }
9627 private static int ifEqzThen1Else5(int i) { return (i == 0) ? 1 : 5; }
9628 private static int ifEqzThenMinus1Else3(int i) { return (i == 0) ? -1 : 3; }
9629 private static int ifEqzThen11Else23(int i) { return (i == 0) ? 11 : 23; }
9630 private static int ifEqzThen54321Else87654321(int i) { return (i == 0) ? 54321 : 87654321; }
9631 private static int ifNezThen0Else1(int i) { return (i != 0) ? 0 : 1; }
9632 private static int ifNezThen0Else8(int i) { return (i != 0) ? 0 : 8; }
9633 private static int ifNezThen1Else5(int i) { return (i != 0) ? 1 : 5; }
9634 private static int ifNezThenMinus1Else3(int i) { return (i != 0) ? -1 : 3; }
9635 private static int ifNezThen11Else23(int i) { return (i != 0) ? 11 : 23; }
9636 private static int ifNezThen54321Else87654321(int i) { return (i != 0) ? 54321 : 87654321; }
9637 private static int ifLtzThen3Else5(int i) { return (i < 0) ? 3 : 5; }
9638 private static int ifGezThen7Else4(int i) { return (i >= 0) ? 7 : 4; }
9639 private static int ifGtzThen2Else9(int i) { return (i > 0) ? 2 : 9; }
9640 private static int ifLezThen8Else0(int i) { return (i <= 0) ? 8 : 0; }
Andreas Gampe39c8a992014-07-12 04:26:03 -07009641 private static int ifGtzThen8Else9(int i) { return (i > 0) ? 8 : 9; }
Vladimir Markoa1a70742014-03-03 10:28:05 +00009642
9643 private static int ifEqz(int src, int thn, int els) { return (src == 0) ? thn : els; }
9644 private static int ifNez(int src, int thn, int els) { return (src != 0) ? thn : els; }
9645 private static int ifLtz(int src, int thn, int els) { return (src < 0) ? thn : els; }
9646 private static int ifGez(int src, int thn, int els) { return (src >= 0) ? thn : els; }
9647 private static int ifGtz(int src, int thn, int els) { return (src > 0) ? thn : els; }
9648 private static int ifLez(int src, int thn, int els) { return (src <= 0) ? thn : els; }
9649
9650 public static void testIfCcz() {
9651 int[] results = new int[] {
9652 ifEqzThen0Else1(-1), 1,
9653 ifEqzThen0Else1(0), 0,
9654 ifEqzThen0Else1(1), 1,
9655 ifEqzThen0Else8(-1), 8,
9656 ifEqzThen0Else8(0), 0,
9657 ifEqzThen0Else8(1), 8,
9658 ifEqzThen1Else5(-1), 5,
9659 ifEqzThen1Else5(0), 1,
9660 ifEqzThen1Else5(1), 5,
9661 ifEqzThenMinus1Else3(-1), 3,
9662 ifEqzThenMinus1Else3(0), -1,
9663 ifEqzThenMinus1Else3(1), 3,
9664 ifEqzThen11Else23(-1), 23,
9665 ifEqzThen11Else23(0), 11,
9666 ifEqzThen11Else23(1), 23,
9667 ifEqzThen54321Else87654321(-1), 87654321,
9668 ifEqzThen54321Else87654321(0), 54321,
9669 ifEqzThen54321Else87654321(1), 87654321,
9670 ifNezThen0Else1(-1), 0,
9671 ifNezThen0Else1(0), 1,
9672 ifNezThen0Else1(1), 0,
9673 ifNezThen0Else8(-1), 0,
9674 ifNezThen0Else8(0), 8,
9675 ifNezThen0Else8(1), 0,
9676 ifNezThen1Else5(-1), 1,
9677 ifNezThen1Else5(0), 5,
9678 ifNezThen1Else5(1), 1,
9679 ifNezThenMinus1Else3(-1), -1,
9680 ifNezThenMinus1Else3(0), 3,
9681 ifNezThenMinus1Else3(1), -1,
9682 ifNezThen11Else23(-1), 11,
9683 ifNezThen11Else23(0), 23,
9684 ifNezThen11Else23(1), 11,
9685 ifNezThen54321Else87654321(-1), 54321,
9686 ifNezThen54321Else87654321(0), 87654321,
9687 ifNezThen54321Else87654321(1), 54321,
9688 ifLtzThen3Else5(-1), 3,
9689 ifLtzThen3Else5(0), 5,
9690 ifLtzThen3Else5(1), 5,
9691 ifGezThen7Else4(-1), 4,
9692 ifGezThen7Else4(0), 7,
9693 ifGezThen7Else4(1), 7,
9694 ifGtzThen2Else9(-1), 9,
9695 ifGtzThen2Else9(0), 9,
9696 ifGtzThen2Else9(1), 2,
9697 ifLezThen8Else0(-1), 8,
9698 ifLezThen8Else0(0), 8,
9699 ifLezThen8Else0(1), 0,
9700 ifEqz(-1, 101, 201), 201,
9701 ifEqz(0, 102, 202), 102,
9702 ifEqz(1, 103, 203), 203,
9703 ifNez(-1, 104, 204), 104,
9704 ifNez(0, 105, 205), 205,
9705 ifNez(1, 106, 206), 106,
9706 ifLtz(-1, 107, 207), 107,
9707 ifLtz(0, 108, 208), 208,
9708 ifLtz(1, 109, 209), 209,
9709 ifGez(-1, 110, 210), 210,
9710 ifGez(0, 111, 211), 111,
9711 ifGez(1, 112, 212), 112,
9712 ifGtz(-1, 113, 213), 213,
9713 ifGtz(0, 114, 214), 214,
9714 ifGtz(1, 115, 215), 115,
9715 ifLez(-1, 116, 216), 116,
9716 ifLez(0, 117, 217), 117,
9717 ifLez(1, 118, 218), 218,
Andreas Gampe39c8a992014-07-12 04:26:03 -07009718 ifGtzThen8Else9(0), 9,
9719 ifGtzThen8Else9(1), 8
Vladimir Markoa1a70742014-03-03 10:28:05 +00009720 };
9721
9722 boolean success = true;
9723 StringBuilder fails = new StringBuilder();
9724 for (int i = 0; i != results.length; i += 2) {
9725 if (results[i] != results[i + 1]) {
9726 success = false;
9727 fails.append("\n #" + (i / 2) + ": " + results[i] + " != " + results[i + 1]);
9728 }
9729 }
9730 if (success) {
9731 System.out.println("testIfCcz passes");
9732 } else {
9733 System.out.println("testIfCcz fails for" + fails.toString());
9734 }
9735 }
9736}
Chao-ying Fu3d325c62014-03-27 14:17:28 -07009737
9738class LiveFlags {
9739 private static void show_results(double a[], double b[], int trip) {
9740 if ((a[0]+a[1]+b[0]+b[1]) == 0) {
9741 System.out.println("LiveFlags passes trip " + trip);
9742 } else {
9743 System.out.println("LiveFlags fails trip " + trip);
9744 System.out.println("a[0] = " + a[0] + " a[1] = " + a[1]);
9745 System.out.println("b[0] = " + b[0] + " b[1] = " + b[1]);
9746 }
9747 }
9748 static void test()
9749 {
9750 final double A[] = new double[2];
9751 final double B[] = new double[2];
9752 final double C[] = new double[2];
9753 B[0] = B[1] = 0.0;
9754 A[0] = A[1] = 0.0;
9755 C[0] = C[1] = 0.0;
9756 for (int i = 3; i >= 1; i--) {
9757 if ( (i & 1) == 0) {
9758 continue;
9759 }
9760 if ( (i & 2) != 0 ) {
9761 B[1] = -B[1];
9762 }
9763 show_results(A, B, i);
9764 A[0] = C[0]; A[1] = C[1];
9765 }
9766 }
9767}
Vladimir Markof418f322014-07-09 14:45:36 +01009768
9769class B16177324Values {
9770 public static int values[] = { 42 };
9771}
9772
9773class B16177324ValuesKiller {
9774 public static int values[] = { 1234 };
9775 static {
9776 B16177324Values.values = null;
9777 }
9778}