├── .gitignore ├── LICENSE ├── README.md ├── data ├── T_train.csv ├── X.csv ├── X_test.csv ├── X_train.csv └── Y.csv ├── doc ├── HW1.pdf ├── bayes-2d.png ├── bayes-3d-d-100.png ├── bayes-3d-d-1600.png ├── bayes-3d-d-25.png ├── bayes-3d-d-400.png ├── bayes-3d-d-9.png ├── bayes-3d.png ├── map-2d.png ├── map-3d.png ├── ml-2d.png ├── ml-3d.png └── report.pdf ├── log ├── bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.25.log ├── bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.5.log └── ml-m0--s0--beta--grid-0.25.log ├── main.py ├── misc ├── kmeans.py └── plot_hist.py ├── model ├── bayes │ ├── bayes-mean.npy │ ├── bayes-sigma.npy │ └── bayes.npy ├── map │ ├── map-mean.npy │ ├── map-sigma.npy │ └── map.npy └── ml │ ├── ml-mean.npy │ ├── ml-sigma.npy │ └── ml.npy ├── model_np.py ├── model_tf.py ├── plot.py ├── plot_bayes.sh ├── plot_map.sh ├── plot_ml.sh ├── preprocess.py ├── result ├── Bayesian.csv ├── MAP.csv └── ML.csv ├── run_bayes.sh ├── run_map.sh ├── run_ml.sh ├── score.py ├── test_bayes.sh ├── test_map.sh ├── test_ml.sh ├── train_bayes.sh ├── train_bayes_cross_validation.sh ├── train_map.sh ├── train_map_cross_validation.sh ├── train_ml.sh ├── train_ml_cross_validation.sh └── util.py /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.sw* 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 zhang 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Introduction 2 | Python Tensorflow implementation for three kinds of linear regression algorithm. (Maximum Likelihood, Maximum a posterior, Bayesian). This project aims to predict height map of south Taiwan and study the difference of these three kinds of linear regression algorithms. (Implementation detail mentioned in doc/report.pdf) 3 | 4 | # Results 5 | Minimumn Mean-square error (MSE) of three approaches 6 | 7 | | ML | MAP | Bayesian | 8 | | ------------- |:-------------:| -----:| 9 | | 64.525 | 48.585709 | 39.591061| 10 | 11 | # Visualization 12 | ## Maximum Likelihood 13 | | 3D | 2D | 14 | | ------------- |:------------:| 15 | |![ml-3d](/doc/ml-3d.png)|![ml-2d](/doc/ml-2d.png)| 16 | 17 | ## Maximum a Posterior 18 | | 3D | 2D | 19 | | ------------- |:------------:| 20 | |![map-3d](/doc/map-3d.png)|![map-2d](/doc/map-2d.png)| 21 | 22 | ## Bayesian 23 | | 3D | 2D | 24 | | ------------- |:------------:| 25 | |![bayes-3d](/doc/bayes-3d.png)|![bayes-2d](/doc/bayes-2d.png)| 26 | 27 | 28 | # Dependencies 29 | - numpy 30 | - Tensorflow 31 | - Scipy (kmeans) 32 | - Scikit-learn (k-fold) 33 | 34 | # To run pre-trained model 35 | ``` 36 | ./test_bayes.sh {X} model/bayes/bayes.npy model/bayes/bayes-mean.npy model/bayes/bayes-sigma.npy {Y} 37 | ./test_ml.sh {X} model/ml/ml.npy model/ml/ml-mean.npy model/ml/ml-sigma.npy {Y} 38 | ./test_map.sh {X} model/map/map.npy model/map/map-mean.npy model/map/map-sigma.npy {Y} 39 | 40 | ``` 41 | Prediction results would be saved at {Y} (output path) 42 | 43 | # To score the predictions 44 | ``` 45 | python score.py {predictions}.csv {ground truth}.csv 46 | ``` 47 | 48 | # To train the model 49 | ``` 50 | ./train_bayes.sh {Fraction of training data} 51 | ./train_ml.sh {Fraction of training data} 52 | ./train_map.sh {Fraction of training data} 53 | 54 | All hyperparameters in the scripts are set to optimal settings. 55 | 56 | ``` 57 | 58 | # To train with cross validation 59 | ``` 60 | ./train_bayes_cross_validation.sh "{list of m0}" "{list of s0}" "{list of beta}" "{list of d}" 61 | ./train_ml_cross_validation.sh "{list of epoch}" "{list of batch size}" "{list of learning rate}" "{list of d}" 62 | ./train_map_cross_validation.sh "{list of epoch}" "{list of batch size}" "{list of learning rate}" "{list of d}" "{list of alpha}" 63 | 64 | NOTE: parameter 'd' depends on the pre-preprocessing method defined in script. 65 | pre=grid: grid cell size 66 | pre=kmeans: number of cluster 67 | 68 | e.g. ./train_bayes_cross_validation.sh "0.0" "2.0" "25.0 12.5" "1024 2048" 69 | ``` 70 | The result of cross validation will be saved at log/{model description} 71 | 72 | # To test the model 73 | ``` 74 | ./test_bayes.sh {input data X} {model path} {model mean path} {model sigma path} {output path} 75 | ./test_ml.sh {input data X} {model path} {model mean path} {model sigma path} {output path} 76 | ./test_map.sh {input data X} {model path} {model mean path} {model sigma path} {output path} 77 | 78 | e.g. ./test_bayes.sh X_test.csv model/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.015.npy model/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.015-mean.npy model/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.015-sigma.npy 79 | ``` 80 | -------------------------------------------------------------------------------- /data/X.csv: -------------------------------------------------------------------------------- 1 | 1.000000 2 | 2.000000 3 | 3.000000 4 | 4.000000 5 | 5.000000 6 | 6.000000 7 | 7.000000 8 | 8.000000 9 | 9.000000 10 | 10.000000 11 | 11.000000 12 | 12.000000 13 | 13.000000 14 | 14.000000 15 | 15.000000 16 | 16.000000 17 | 17.000000 18 | 18.000000 19 | 19.000000 20 | 20.000000 21 | 21.000000 22 | 22.000000 23 | 23.000000 24 | 24.000000 25 | 25.000000 26 | 26.000000 27 | 27.000000 28 | 28.000000 29 | 29.000000 30 | 30.000000 31 | 31.000000 32 | 32.000000 33 | 33.000000 34 | 34.000000 35 | 35.000000 36 | 36.000000 37 | 37.000000 38 | 38.000000 39 | 39.000000 40 | 40.000000 41 | 41.000000 42 | 42.000000 43 | 43.000000 44 | 44.000000 45 | 45.000000 46 | 46.000000 47 | 47.000000 48 | 48.000000 49 | 49.000000 50 | 50.000000 51 | 51.000000 52 | 52.000000 53 | 53.000000 54 | 54.000000 55 | 55.000000 56 | 56.000000 57 | 57.000000 58 | 58.000000 59 | 59.000000 60 | 60.000000 61 | 61.000000 62 | 62.000000 63 | 63.000000 64 | 64.000000 65 | 65.000000 66 | 66.000000 67 | 67.000000 68 | 68.000000 69 | 69.000000 70 | 70.000000 71 | 71.000000 72 | 72.000000 73 | 73.000000 74 | 74.000000 75 | 75.000000 76 | 76.000000 77 | 77.000000 78 | 78.000000 79 | 79.000000 80 | 80.000000 81 | 81.000000 82 | 82.000000 83 | 83.000000 84 | 84.000000 85 | 85.000000 86 | 86.000000 87 | 87.000000 88 | 88.000000 89 | 89.000000 90 | 90.000000 91 | 91.000000 92 | 92.000000 93 | 93.000000 94 | 94.000000 95 | 95.000000 96 | 96.000000 97 | 97.000000 98 | 98.000000 99 | 99.000000 100 | 100.000000 101 | -------------------------------------------------------------------------------- /data/X_test.csv: -------------------------------------------------------------------------------- 1 | 853,602 2 | 123,594 3 | 271,333 4 | 503,367 5 | 261,242 6 | 510,531 7 | 865,582 8 | 682,1064 9 | 464,914 10 | 277,152 11 | 750,253 12 | 267,545 13 | 8,307 14 | 396,529 15 | 904,706 16 | 857,355 17 | 977,942 18 | 444,1 19 | 779,535 20 | 341,414 21 | 709,828 22 | 606,677 23 | 706,656 24 | 332,709 25 | 273,461 26 | 420,476 27 | 262,666 28 | 431,1060 29 | 336,370 30 | 545,1019 31 | 920,707 32 | 242,801 33 | 753,1015 34 | 620,1039 35 | 465,532 36 | 269,423 37 | 478,508 38 | 387,322 39 | 705,205 40 | 490,308 41 | 330,454 42 | 587,776 43 | 705,1060 44 | 817,681 45 | 571,541 46 | 710,490 47 | 396,1055 48 | 462,1003 49 | 802,588 50 | 799,155 51 | 869,734 52 | 887,596 53 | 301,731 54 | 610,987 55 | 955,947 56 | 965,894 57 | 564,456 58 | 424,873 59 | 879,653 60 | 252,214 61 | 708,624 62 | 925,837 63 | 371,367 64 | 342,360 65 | 826,407 66 | 457,362 67 | 663,1049 68 | 336,294 69 | 525,612 70 | 728,202 71 | 326,609 72 | 232,576 73 | 345,914 74 | 489,683 75 | 822,905 76 | 472,578 77 | 951,582 78 | 177,681 79 | 968,701 80 | 995,910 81 | 709,708 82 | 712,691 83 | 303,1007 84 | 848,200 85 | 870,561 86 | 949,650 87 | 316,779 88 | 509,1043 89 | 650,459 90 | 557,378 91 | 937,803 92 | 464,970 93 | 819,668 94 | 954,709 95 | 824,1073 96 | 421,593 97 | 408,399 98 | 130,571 99 | 681,302 100 | 564,578 101 | 290,754 102 | 449,546 103 | 410,944 104 | 704,810 105 | 550,573 106 | 248,636 107 | 14,189 108 | 25,93 109 | 694,458 110 | 676,967 111 | 478,330 112 | 433,289 113 | 528,529 114 | 472,892 115 | 299,314 116 | 322,241 117 | 289,1005 118 | 856,665 119 | 463,505 120 | 956,722 121 | 537,1006 122 | 461,963 123 | 969,615 124 | 602,465 125 | 569,976 126 | 747,546 127 | 844,475 128 | 755,837 129 | 187,710 130 | 389,128 131 | 132,547 132 | 383,452 133 | 735,900 134 | 723,428 135 | 905,754 136 | 578,711 137 | 258,969 138 | 937,658 139 | 383,179 140 | 967,853 141 | 731,546 142 | 573,459 143 | 443,1054 144 | 375,895 145 | 794,756 146 | 443,604 147 | 1031,880 148 | 645,355 149 | 525,1065 150 | 725,387 151 | 322,834 152 | 371,818 153 | 667,994 154 | 569,424 155 | 803,632 156 | 414,673 157 | 889,990 158 | 270,423 159 | 483,1063 160 | 873,861 161 | 221,582 162 | 307,534 163 | 355,289 164 | 502,996 165 | 220,619 166 | 699,931 167 | 902,931 168 | 562,1054 169 | 867,475 170 | 220,828 171 | 995,1064 172 | 744,1059 173 | 487,1005 174 | 44,177 175 | 797,1045 176 | 527,592 177 | 914,903 178 | 612,880 179 | 412,658 180 | 320,772 181 | 282,389 182 | 199,156 183 | 305,337 184 | 254,587 185 | 543,282 186 | 546,1 187 | 839,768 188 | 898,668 189 | 461,476 190 | 593,979 191 | 161,600 192 | 757,675 193 | 432,527 194 | 749,682 195 | 316,938 196 | 948,607 197 | 481,689 198 | 335,571 199 | 801,440 200 | 742,578 201 | 858,1074 202 | 362,484 203 | 297,471 204 | 803,935 205 | 996,690 206 | 257,849 207 | 662,639 208 | 686,795 209 | 710,1081 210 | 848,637 211 | 266,251 212 | 822,1062 213 | 683,809 214 | 389,433 215 | 689,211 216 | 686,691 217 | 420,622 218 | 32,100 219 | 348,231 220 | 950,845 221 | 279,691 222 | 636,980 223 | 787,472 224 | 669,204 225 | 497,893 226 | 573,692 227 | 210,823 228 | 119,75 229 | 376,894 230 | 560,504 231 | 883,1080 232 | 897,1066 233 | 797,112 234 | 631,867 235 | 239,651 236 | 339,217 237 | 826,532 238 | 27,1058 239 | 352,1029 240 | 516,854 241 | 580,470 242 | 877,727 243 | 802,850 244 | 313,486 245 | 991,691 246 | 272,1017 247 | 788,758 248 | 524,1005 249 | 821,748 250 | 612,681 251 | 671,931 252 | 998,983 253 | 556,325 254 | 362,965 255 | 780,800 256 | 840,799 257 | 760,678 258 | 628,699 259 | 318,376 260 | 324,793 261 | 745,135 262 | 864,668 263 | 520,764 264 | 312,336 265 | 811,976 266 | 839,71 267 | 412,951 268 | 225,352 269 | 376,956 270 | 108,131 271 | 736,787 272 | 604,453 273 | 411,834 274 | 251,1035 275 | 301,222 276 | 677,814 277 | 609,818 278 | 694,998 279 | 386,796 280 | 624,886 281 | 264,2 282 | 824,670 283 | 364,816 284 | 24,236 285 | 620,533 286 | 842,738 287 | 422,911 288 | 460,230 289 | 639,928 290 | 779,741 291 | 829,50 292 | 320,767 293 | 381,922 294 | 601,523 295 | 189,689 296 | 809,650 297 | 458,689 298 | 307,236 299 | 193,482 300 | 832,648 301 | 935,969 302 | 621,347 303 | 321,90 304 | 336,864 305 | 550,381 306 | 14,513 307 | 921,661 308 | 384,1052 309 | 1009,952 310 | 340,444 311 | 661,344 312 | 934,777 313 | 639,1052 314 | 472,1033 315 | 800,463 316 | 687,428 317 | 464,707 318 | 882,483 319 | 776,169 320 | 369,383 321 | 386,770 322 | 665,356 323 | 864,750 324 | 426,435 325 | 183,568 326 | 716,320 327 | 155,33 328 | 938,1069 329 | 254,250 330 | 833,929 331 | 836,550 332 | 645,633 333 | 774,700 334 | 738,186 335 | 184,830 336 | 670,513 337 | 208,643 338 | 945,86 339 | 491,416 340 | 114,607 341 | 578,195 342 | 572,946 343 | 527,1025 344 | 671,364 345 | 409,533 346 | 686,1063 347 | 535,628 348 | 881,232 349 | 735,391 350 | 437,874 351 | 530,916 352 | 43,23 353 | 600,1071 354 | 357,852 355 | 974,753 356 | 619,290 357 | 907,666 358 | 322,1027 359 | 631,1047 360 | 835,755 361 | 349,744 362 | 667,569 363 | 775,789 364 | 450,607 365 | 884,558 366 | 981,565 367 | 258,402 368 | 858,769 369 | 366,811 370 | 332,315 371 | 774,1008 372 | 384,486 373 | 591,281 374 | 913,638 375 | 857,688 376 | 295,1078 377 | 163,180 378 | 63,350 379 | 471,627 380 | 417,306 381 | 738,1009 382 | 793,841 383 | 314,939 384 | 495,443 385 | 787,683 386 | 639,606 387 | 636,464 388 | 728,285 389 | 593,575 390 | 711,519 391 | 375,331 392 | 857,810 393 | 923,1071 394 | 470,707 395 | 420,769 396 | 296,231 397 | 1040,672 398 | 446,451 399 | 865,762 400 | 665,625 401 | 616,241 402 | 484,1056 403 | 366,387 404 | 540,948 405 | 269,811 406 | 348,359 407 | 802,1051 408 | 411,429 409 | 349,678 410 | 824,563 411 | 308,991 412 | 401,398 413 | 366,743 414 | 520,935 415 | 550,900 416 | 464,421 417 | 293,760 418 | 875,922 419 | 277,395 420 | 889,605 421 | 877,1026 422 | 982,153 423 | 626,289 424 | 708,894 425 | 970,922 426 | 431,606 427 | 786,365 428 | 338,947 429 | 546,614 430 | 712,230 431 | 58,269 432 | 647,288 433 | 416,599 434 | 743,407 435 | 421,1076 436 | 765,427 437 | 263,420 438 | 716,433 439 | 568,519 440 | 404,916 441 | 1070,45 442 | 425,277 443 | 577,289 444 | 841,1041 445 | 993,582 446 | 144,383 447 | 276,633 448 | 173,636 449 | 366,446 450 | 105,170 451 | 859,529 452 | 877,976 453 | 245,232 454 | 361,935 455 | 831,150 456 | 644,798 457 | 293,684 458 | 698,741 459 | 562,424 460 | 311,462 461 | 258,407 462 | 51,424 463 | 828,726 464 | 648,920 465 | 612,608 466 | 482,689 467 | 251,1075 468 | 551,953 469 | 462,596 470 | 783,225 471 | 1059,51 472 | 671,823 473 | 843,1065 474 | 610,257 475 | 345,630 476 | 712,958 477 | 292,666 478 | 335,975 479 | 282,587 480 | 765,978 481 | 152,652 482 | 1041,473 483 | 165,619 484 | 238,278 485 | 897,897 486 | 862,1038 487 | 468,644 488 | 295,523 489 | 432,473 490 | 632,936 491 | 460,1081 492 | 256,448 493 | 1021,310 494 | 272,1077 495 | 559,914 496 | 763,152 497 | 896,741 498 | 750,291 499 | 289,444 500 | 478,878 501 | 303,74 502 | 844,851 503 | 355,809 504 | 603,559 505 | 953,1059 506 | 83,1044 507 | 401,919 508 | 250,582 509 | 958,974 510 | 783,712 511 | 453,925 512 | 659,505 513 | 492,890 514 | 544,677 515 | 314,695 516 | 226,730 517 | 401,1003 518 | 448,440 519 | 250,325 520 | 266,219 521 | 814,151 522 | 730,390 523 | 547,898 524 | 340,1020 525 | 1072,1081 526 | 325,777 527 | 714,420 528 | 700,220 529 | 878,575 530 | 578,295 531 | 659,51 532 | 653,1081 533 | 734,246 534 | 193,593 535 | 661,377 536 | 679,765 537 | 255,1065 538 | 450,244 539 | 754,856 540 | 225,286 541 | 693,175 542 | 221,305 543 | 948,619 544 | 785,177 545 | 144,1080 546 | 904,970 547 | 396,212 548 | 758,361 549 | 280,274 550 | 626,539 551 | 594,365 552 | 890,661 553 | 225,845 554 | 284,314 555 | 393,1033 556 | 936,963 557 | 496,855 558 | 1080,513 559 | 543,669 560 | 486,1049 561 | 259,339 562 | 716,683 563 | 863,766 564 | 763,218 565 | 882,801 566 | 903,601 567 | 291,359 568 | 473,311 569 | 533,484 570 | 559,350 571 | 343,749 572 | 559,805 573 | 677,940 574 | 165,100 575 | 714,896 576 | 608,750 577 | 666,590 578 | 623,736 579 | 416,1025 580 | 280,459 581 | 444,657 582 | 521,511 583 | 331,830 584 | 579,681 585 | 552,1016 586 | 197,728 587 | 675,370 588 | 427,808 589 | 549,514 590 | 226,679 591 | 296,453 592 | 465,465 593 | 798,465 594 | 309,184 595 | 567,404 596 | 590,446 597 | 774,821 598 | 579,514 599 | 476,536 600 | 219,841 601 | 245,810 602 | 226,480 603 | 143,721 604 | 431,339 605 | 572,916 606 | 276,980 607 | 803,851 608 | 655,604 609 | 583,1010 610 | 802,498 611 | 285,382 612 | 658,984 613 | 937,728 614 | 901,552 615 | 584,691 616 | 652,414 617 | 611,367 618 | 782,1044 619 | 589,577 620 | 709,1071 621 | 709,790 622 | 910,1080 623 | 841,121 624 | 700,860 625 | 677,559 626 | 988,443 627 | 457,734 628 | 736,733 629 | 894,793 630 | 533,625 631 | 697,260 632 | 751,538 633 | 1079,679 634 | 469,426 635 | 564,80 636 | 157,595 637 | 752,526 638 | 676,896 639 | 984,323 640 | 824,1002 641 | 707,237 642 | 732,496 643 | 589,869 644 | 817,213 645 | 282,637 646 | 452,102 647 | 1065,253 648 | 341,1005 649 | 623,639 650 | 637,1075 651 | 566,541 652 | 252,847 653 | 463,785 654 | 334,708 655 | 924,774 656 | 241,296 657 | 437,828 658 | 550,1028 659 | 548,397 660 | 228,1045 661 | 299,395 662 | 701,901 663 | 625,391 664 | 567,585 665 | 746,236 666 | 85,375 667 | 263,931 668 | 727,162 669 | 702,299 670 | 717,186 671 | 406,479 672 | 458,940 673 | 228,982 674 | 621,541 675 | 624,927 676 | 389,483 677 | 195,710 678 | 744,232 679 | 650,602 680 | 192,314 681 | 718,702 682 | 800,804 683 | 267,542 684 | 628,528 685 | 247,778 686 | 246,405 687 | 568,569 688 | 943,618 689 | 258,612 690 | 703,348 691 | 256,1061 692 | 346,1014 693 | 734,707 694 | 206,134 695 | 658,382 696 | 270,999 697 | 852,777 698 | 97,230 699 | 629,1020 700 | 679,302 701 | 696,728 702 | 404,447 703 | 244,930 704 | 422,1033 705 | 901,511 706 | 578,375 707 | 187,724 708 | 695,678 709 | 784,121 710 | 327,472 711 | 713,325 712 | 726,857 713 | 367,458 714 | 297,564 715 | 67,710 716 | 593,353 717 | 569,397 718 | 713,894 719 | 354,43 720 | 824,72 721 | 924,587 722 | 262,249 723 | 326,380 724 | 671,1075 725 | 615,922 726 | 880,663 727 | 706,611 728 | 546,393 729 | 386,274 730 | 869,999 731 | 711,927 732 | 738,196 733 | 816,846 734 | 351,897 735 | 757,794 736 | 715,267 737 | 189,564 738 | 371,590 739 | 789,937 740 | 559,827 741 | 294,602 742 | 699,1072 743 | 233,1051 744 | 632,538 745 | 265,724 746 | 373,1041 747 | 762,923 748 | 535,654 749 | 355,629 750 | 459,973 751 | 631,800 752 | 843,886 753 | 381,829 754 | 796,955 755 | 755,485 756 | 815,700 757 | 795,771 758 | 567,722 759 | 455,580 760 | 699,254 761 | 445,395 762 | 740,817 763 | 636,420 764 | 659,788 765 | 186,633 766 | 717,721 767 | 529,381 768 | 678,319 769 | 652,205 770 | 741,855 771 | 575,582 772 | 328,578 773 | 264,761 774 | 527,857 775 | 709,587 776 | 842,458 777 | 846,1074 778 | 312,976 779 | 965,622 780 | 175,591 781 | 225,820 782 | 657,501 783 | 480,519 784 | 952,694 785 | 152,875 786 | 541,876 787 | 737,908 788 | 363,984 789 | 745,435 790 | 200,189 791 | 721,1044 792 | 374,253 793 | 897,895 794 | 925,801 795 | 580,547 796 | 924,823 797 | 784,530 798 | 609,1008 799 | 725,361 800 | 922,694 801 | 587,652 802 | 692,386 803 | 556,427 804 | 236,591 805 | 600,613 806 | 475,1043 807 | 708,264 808 | 941,632 809 | 56,943 810 | 239,530 811 | 782,382 812 | 735,359 813 | 547,868 814 | 939,896 815 | 241,434 816 | 717,701 817 | 554,321 818 | 215,651 819 | 262,230 820 | 851,909 821 | 909,508 822 | 350,422 823 | 461,390 824 | 312,586 825 | 648,217 826 | 85,1064 827 | 304,707 828 | 689,426 829 | 495,950 830 | 221,795 831 | 876,526 832 | 313,838 833 | 669,55 834 | 248,713 835 | 239,759 836 | 698,817 837 | 314,198 838 | 670,1075 839 | 925,1001 840 | 841,50 841 | 323,277 842 | 629,932 843 | 944,767 844 | 339,214 845 | 587,752 846 | 357,652 847 | 771,237 848 | 786,616 849 | 947,371 850 | 400,911 851 | 457,464 852 | 651,591 853 | 695,355 854 | 359,634 855 | 802,1012 856 | 227,23 857 | 590,271 858 | 257,692 859 | 798,25 860 | 440,415 861 | 1,609 862 | 775,797 863 | 620,695 864 | 404,486 865 | 831,981 866 | 689,398 867 | 458,235 868 | 848,1047 869 | 386,457 870 | 771,737 871 | 727,372 872 | 615,420 873 | 481,355 874 | 182,250 875 | 756,605 876 | 927,574 877 | 518,1009 878 | 742,405 879 | 240,628 880 | 273,490 881 | 641,424 882 | 793,440 883 | 110,610 884 | 313,485 885 | 420,814 886 | 843,980 887 | 744,808 888 | 464,447 889 | 635,1045 890 | 225,680 891 | 409,906 892 | 354,658 893 | 572,577 894 | 844,95 895 | 559,427 896 | 193,254 897 | 577,288 898 | 869,659 899 | 116,389 900 | 467,138 901 | 908,547 902 | 782,939 903 | 614,263 904 | 272,508 905 | 456,501 906 | 336,172 907 | 211,666 908 | 463,357 909 | 801,1002 910 | 371,565 911 | 983,655 912 | 257,994 913 | 794,660 914 | 959,990 915 | 735,756 916 | 444,656 917 | 277,578 918 | 528,960 919 | 911,729 920 | 580,1012 921 | 1004,959 922 | 34,556 923 | 733,1001 924 | 195,652 925 | 511,968 926 | 568,931 927 | 531,1013 928 | 923,692 929 | 726,750 930 | 322,567 931 | 315,467 932 | 578,717 933 | 526,733 934 | 623,893 935 | 195,534 936 | 255,827 937 | 579,731 938 | 952,710 939 | 319,589 940 | 293,487 941 | 324,557 942 | 229,658 943 | 299,158 944 | 602,607 945 | 430,838 946 | 629,799 947 | 276,547 948 | 795,65 949 | 577,791 950 | 316,242 951 | 498,710 952 | 797,170 953 | 900,1072 954 | 730,231 955 | 283,520 956 | 199,680 957 | 833,576 958 | 450,309 959 | 196,665 960 | 948,682 961 | 960,889 962 | 322,533 963 | 256,765 964 | 807,701 965 | 429,500 966 | 929,154 967 | 539,531 968 | 511,535 969 | 285,239 970 | 733,449 971 | 526,452 972 | 356,926 973 | 732,446 974 | 442,438 975 | 1010,774 976 | 239,219 977 | 633,553 978 | 732,532 979 | 503,621 980 | 667,527 981 | 718,375 982 | 461,470 983 | 334,1069 984 | 689,842 985 | 335,938 986 | 358,292 987 | 744,467 988 | 373,488 989 | 662,760 990 | 39,475 991 | 965,888 992 | 1073,860 993 | 453,284 994 | 587,539 995 | 149,903 996 | 665,661 997 | 864,510 998 | 774,521 999 | 562,318 1000 | 481,495 1001 | 496,649 1002 | 576,851 1003 | 905,1053 1004 | 401,793 1005 | 246,264 1006 | 409,827 1007 | 1081,1049 1008 | 309,536 1009 | 341,801 1010 | 1003,296 1011 | 275,924 1012 | 827,513 1013 | 446,898 1014 | 565,868 1015 | 951,619 1016 | 658,523 1017 | 317,406 1018 | 701,994 1019 | 848,478 1020 | 825,730 1021 | 328,67 1022 | 285,417 1023 | 201,686 1024 | 222,742 1025 | 798,137 1026 | 378,782 1027 | 843,774 1028 | 409,640 1029 | 736,1043 1030 | 936,913 1031 | 884,917 1032 | 445,808 1033 | 731,974 1034 | 641,828 1035 | 611,352 1036 | 771,995 1037 | 175,555 1038 | 508,888 1039 | 772,1011 1040 | 599,364 1041 | 177,648 1042 | 802,67 1043 | 388,944 1044 | 597,676 1045 | 410,704 1046 | 715,1042 1047 | 463,606 1048 | 183,833 1049 | 124,410 1050 | 680,275 1051 | 282,480 1052 | 521,438 1053 | 686,448 1054 | 837,707 1055 | 738,925 1056 | 836,915 1057 | 309,1 1058 | 324,341 1059 | 730,866 1060 | 387,863 1061 | 640,340 1062 | 621,908 1063 | 710,350 1064 | 342,743 1065 | 811,87 1066 | 294,567 1067 | 238,610 1068 | 762,500 1069 | 535,649 1070 | 770,405 1071 | 678,448 1072 | 656,243 1073 | 526,1071 1074 | 893,993 1075 | 638,513 1076 | 891,788 1077 | 952,711 1078 | 539,671 1079 | 602,844 1080 | 384,794 1081 | 631,1016 1082 | 607,1021 1083 | 712,494 1084 | 812,506 1085 | 175,676 1086 | 401,1061 1087 | 184,619 1088 | 999,932 1089 | 811,77 1090 | 636,219 1091 | 506,514 1092 | 9,841 1093 | 882,542 1094 | 197,713 1095 | 365,461 1096 | 782,739 1097 | 725,716 1098 | 959,766 1099 | 1011,568 1100 | 833,515 1101 | 875,781 1102 | 973,930 1103 | 953,591 1104 | 759,776 1105 | 345,508 1106 | 388,1055 1107 | 577,197 1108 | 329,186 1109 | 1033,948 1110 | 474,800 1111 | 301,633 1112 | 749,1021 1113 | 570,324 1114 | 437,698 1115 | 738,450 1116 | 301,482 1117 | 740,247 1118 | 633,609 1119 | 967,803 1120 | 447,594 1121 | 500,599 1122 | 681,439 1123 | 303,186 1124 | 730,424 1125 | 677,520 1126 | 362,18 1127 | 750,323 1128 | 645,995 1129 | 258,359 1130 | 395,393 1131 | 306,369 1132 | 538,1002 1133 | 355,550 1134 | 828,1017 1135 | 522,550 1136 | 756,1029 1137 | 404,334 1138 | 738,649 1139 | 975,413 1140 | 764,925 1141 | 620,505 1142 | 857,858 1143 | 598,516 1144 | 715,771 1145 | 660,205 1146 | 323,937 1147 | 768,508 1148 | 815,734 1149 | 770,1000 1150 | 612,294 1151 | 504,648 1152 | 957,1065 1153 | 815,571 1154 | 852,854 1155 | 387,766 1156 | 798,54 1157 | 726,257 1158 | 329,143 1159 | 780,646 1160 | 954,708 1161 | 845,830 1162 | 924,921 1163 | 896,975 1164 | 745,695 1165 | 681,523 1166 | 526,664 1167 | 692,852 1168 | 652,884 1169 | 701,855 1170 | 773,512 1171 | 521,766 1172 | 590,673 1173 | 362,724 1174 | 578,995 1175 | 623,935 1176 | 849,1047 1177 | 150,621 1178 | 306,449 1179 | 890,682 1180 | 863,518 1181 | 836,116 1182 | 846,855 1183 | 600,867 1184 | 428,734 1185 | 587,545 1186 | 956,84 1187 | 369,849 1188 | 645,555 1189 | 1047,744 1190 | 532,428 1191 | 869,635 1192 | 637,1038 1193 | 706,375 1194 | 230,676 1195 | 253,912 1196 | 687,253 1197 | 717,508 1198 | 796,363 1199 | 227,287 1200 | 512,844 1201 | 289,691 1202 | 735,655 1203 | 709,861 1204 | 969,885 1205 | 313,343 1206 | 576,261 1207 | 592,831 1208 | 663,474 1209 | 625,407 1210 | 168,582 1211 | 491,761 1212 | 436,785 1213 | 839,106 1214 | 609,653 1215 | 460,429 1216 | 915,1010 1217 | 477,650 1218 | 325,319 1219 | 923,643 1220 | 724,419 1221 | 828,480 1222 | 667,309 1223 | 527,461 1224 | 894,1070 1225 | 612,411 1226 | 742,813 1227 | 952,706 1228 | 348,944 1229 | 256,531 1230 | 475,61 1231 | 527,597 1232 | 727,1074 1233 | 621,800 1234 | 597,511 1235 | 794,124 1236 | 377,282 1237 | 493,745 1238 | 568,795 1239 | 337,1007 1240 | 355,1010 1241 | 297,908 1242 | 71,433 1243 | 846,750 1244 | 283,777 1245 | 274,819 1246 | 627,943 1247 | 576,726 1248 | 561,482 1249 | 642,133 1250 | 468,811 1251 | 460,370 1252 | 303,413 1253 | 661,322 1254 | 722,970 1255 | 642,932 1256 | 518,842 1257 | 684,412 1258 | 991,961 1259 | 770,1002 1260 | 855,1007 1261 | 1015,679 1262 | 669,227 1263 | 362,1002 1264 | 830,833 1265 | 274,479 1266 | 267,564 1267 | 40,32 1268 | 827,631 1269 | 422,316 1270 | 373,535 1271 | 797,771 1272 | 880,709 1273 | 771,1077 1274 | 346,802 1275 | 268,1019 1276 | 550,1066 1277 | 541,1024 1278 | 522,929 1279 | 1061,630 1280 | 842,945 1281 | 480,588 1282 | 474,1045 1283 | 683,400 1284 | 784,880 1285 | 576,466 1286 | 345,402 1287 | 128,905 1288 | 288,726 1289 | 476,1017 1290 | 885,610 1291 | 104,506 1292 | 680,797 1293 | 798,480 1294 | 551,813 1295 | 778,301 1296 | 782,394 1297 | 917,609 1298 | 338,204 1299 | 754,821 1300 | 721,779 1301 | 568,1069 1302 | 341,986 1303 | 372,497 1304 | 229,792 1305 | 657,374 1306 | 576,1025 1307 | 700,868 1308 | 864,746 1309 | 445,727 1310 | 848,1030 1311 | 302,1051 1312 | 632,923 1313 | 779,751 1314 | 438,562 1315 | 545,432 1316 | 614,874 1317 | 493,652 1318 | 814,999 1319 | 389,1081 1320 | 965,973 1321 | 926,806 1322 | 263,668 1323 | 298,460 1324 | 382,790 1325 | 668,802 1326 | 865,789 1327 | 523,423 1328 | 364,348 1329 | 645,531 1330 | 327,890 1331 | 117,135 1332 | 622,976 1333 | 757,400 1334 | 780,539 1335 | 167,576 1336 | 894,638 1337 | 477,366 1338 | 489,1053 1339 | 856,754 1340 | 749,1077 1341 | 425,756 1342 | 559,432 1343 | 881,260 1344 | 617,997 1345 | 699,644 1346 | 799,55 1347 | 281,633 1348 | 946,236 1349 | 706,837 1350 | 725,488 1351 | 231,208 1352 | 697,223 1353 | 816,69 1354 | 655,1020 1355 | 672,1008 1356 | 226,757 1357 | 798,773 1358 | 443,1045 1359 | 605,800 1360 | 369,1001 1361 | 439,1070 1362 | 807,1054 1363 | 439,981 1364 | 550,264 1365 | 356,474 1366 | 768,153 1367 | 887,797 1368 | 885,737 1369 | 820,886 1370 | 316,299 1371 | 406,430 1372 | 740,688 1373 | 311,823 1374 | 831,855 1375 | 721,733 1376 | 393,775 1377 | 789,664 1378 | 616,708 1379 | 884,822 1380 | 153,838 1381 | 714,856 1382 | 349,1055 1383 | 172,611 1384 | 338,288 1385 | 1004,954 1386 | 733,847 1387 | 947,1032 1388 | 325,782 1389 | 252,774 1390 | 868,857 1391 | 719,508 1392 | 657,605 1393 | 520,547 1394 | 940,852 1395 | 274,835 1396 | 892,951 1397 | 213,578 1398 | 470,425 1399 | 320,181 1400 | 750,272 1401 | 262,635 1402 | 900,878 1403 | 324,143 1404 | 824,1065 1405 | 282,446 1406 | 493,387 1407 | 489,925 1408 | 165,363 1409 | 677,305 1410 | 602,469 1411 | 431,538 1412 | 495,830 1413 | 201,596 1414 | 262,911 1415 | 623,990 1416 | 418,726 1417 | 236,1066 1418 | 521,556 1419 | 78,312 1420 | 238,448 1421 | 718,479 1422 | 466,403 1423 | 445,690 1424 | 766,113 1425 | 48,893 1426 | 780,546 1427 | 579,997 1428 | 363,494 1429 | 243,542 1430 | 691,377 1431 | 849,911 1432 | 39,683 1433 | 647,562 1434 | 241,507 1435 | 922,827 1436 | 224,495 1437 | 992,789 1438 | 563,734 1439 | 294,776 1440 | 680,240 1441 | 317,249 1442 | 1024,864 1443 | 737,471 1444 | 734,340 1445 | 241,795 1446 | 625,728 1447 | 650,970 1448 | 556,878 1449 | 647,335 1450 | 596,120 1451 | 444,756 1452 | 683,719 1453 | 776,584 1454 | 816,167 1455 | 137,926 1456 | 348,894 1457 | 602,509 1458 | 341,196 1459 | 700,486 1460 | 408,423 1461 | 47,9 1462 | 973,796 1463 | 679,922 1464 | 559,758 1465 | 419,479 1466 | 868,736 1467 | 435,607 1468 | 561,668 1469 | 203,839 1470 | 415,266 1471 | 296,767 1472 | 597,513 1473 | 331,964 1474 | 388,414 1475 | 570,255 1476 | 272,866 1477 | 558,815 1478 | 781,362 1479 | 619,712 1480 | 815,457 1481 | 832,152 1482 | 731,345 1483 | 649,321 1484 | 607,928 1485 | 204,646 1486 | 726,867 1487 | 406,840 1488 | 965,866 1489 | 131,955 1490 | 657,924 1491 | 439,278 1492 | 386,452 1493 | 293,333 1494 | 430,751 1495 | 461,785 1496 | 236,577 1497 | 353,376 1498 | 936,673 1499 | 949,798 1500 | 277,807 1501 | 741,687 1502 | 788,509 1503 | 591,681 1504 | 129,362 1505 | 715,860 1506 | 497,1074 1507 | 902,39 1508 | 572,925 1509 | 189,604 1510 | 766,611 1511 | 343,800 1512 | 661,204 1513 | 628,583 1514 | 620,988 1515 | 331,893 1516 | 562,254 1517 | 207,671 1518 | 517,364 1519 | 940,730 1520 | 349,500 1521 | 766,575 1522 | 964,1025 1523 | 808,654 1524 | 821,794 1525 | 527,898 1526 | 551,353 1527 | 834,790 1528 | 108,714 1529 | 551,668 1530 | 928,1077 1531 | 785,410 1532 | 281,658 1533 | 606,343 1534 | 489,521 1535 | 979,974 1536 | 970,736 1537 | 426,325 1538 | 221,672 1539 | 635,270 1540 | 808,682 1541 | 86,1015 1542 | 238,690 1543 | 805,503 1544 | 697,1059 1545 | 359,806 1546 | 925,673 1547 | 295,428 1548 | 445,744 1549 | 683,684 1550 | 933,5 1551 | 865,537 1552 | 679,562 1553 | 178,667 1554 | 381,633 1555 | 786,1059 1556 | 880,647 1557 | 192,1031 1558 | 659,262 1559 | 908,539 1560 | 629,307 1561 | 44,63 1562 | 537,1030 1563 | 62,389 1564 | 747,244 1565 | 158,563 1566 | 898,918 1567 | 323,793 1568 | 708,689 1569 | 673,870 1570 | 948,774 1571 | 667,793 1572 | 143,841 1573 | 642,790 1574 | 291,535 1575 | 872,1022 1576 | 322,286 1577 | 283,190 1578 | 707,945 1579 | 341,714 1580 | 474,452 1581 | 462,414 1582 | 741,443 1583 | 284,978 1584 | 350,159 1585 | 818,636 1586 | 368,627 1587 | 761,857 1588 | 1067,996 1589 | 362,400 1590 | 837,759 1591 | 580,112 1592 | 469,308 1593 | 498,380 1594 | 539,266 1595 | 829,1056 1596 | 775,359 1597 | 675,376 1598 | 759,408 1599 | 465,824 1600 | 941,925 1601 | 698,331 1602 | 744,557 1603 | 551,23 1604 | 720,219 1605 | 276,536 1606 | 614,1027 1607 | 829,659 1608 | 487,320 1609 | 374,654 1610 | 368,668 1611 | 395,1001 1612 | 627,564 1613 | 625,1040 1614 | 284,285 1615 | 323,757 1616 | 813,628 1617 | 329,85 1618 | 672,474 1619 | 119,781 1620 | 275,578 1621 | 945,734 1622 | 755,943 1623 | 722,356 1624 | 308,320 1625 | 818,663 1626 | 355,836 1627 | 278,732 1628 | 288,209 1629 | 713,505 1630 | 601,466 1631 | 644,304 1632 | 703,435 1633 | 844,835 1634 | 889,1034 1635 | 537,512 1636 | 641,531 1637 | 899,563 1638 | 709,799 1639 | 744,243 1640 | 258,211 1641 | 259,249 1642 | 863,78 1643 | 866,981 1644 | 642,839 1645 | 601,1043 1646 | 661,340 1647 | 473,1076 1648 | 554,416 1649 | 839,537 1650 | 822,745 1651 | 911,655 1652 | 832,975 1653 | 599,990 1654 | 661,380 1655 | 994,16 1656 | 895,1076 1657 | 205,870 1658 | 937,644 1659 | 592,260 1660 | 447,1048 1661 | 645,1023 1662 | 708,474 1663 | 417,786 1664 | 294,605 1665 | 803,469 1666 | 979,1073 1667 | 265,973 1668 | 526,481 1669 | 299,921 1670 | 646,649 1671 | 718,285 1672 | 795,126 1673 | 803,970 1674 | 244,490 1675 | 648,10 1676 | 414,379 1677 | 112,775 1678 | 547,456 1679 | 813,597 1680 | 691,954 1681 | 476,415 1682 | 548,777 1683 | 430,1078 1684 | 848,112 1685 | 503,1043 1686 | 472,976 1687 | 964,968 1688 | 784,471 1689 | 672,742 1690 | 443,551 1691 | 767,122 1692 | 302,166 1693 | 701,823 1694 | 830,95 1695 | 360,518 1696 | 956,748 1697 | 253,570 1698 | 453,859 1699 | 337,956 1700 | 847,883 1701 | 295,564 1702 | 620,667 1703 | 740,938 1704 | 963,848 1705 | 748,946 1706 | 600,316 1707 | 447,606 1708 | 617,653 1709 | 290,1055 1710 | 543,617 1711 | 275,667 1712 | 642,556 1713 | 459,896 1714 | 358,930 1715 | 436,316 1716 | 904,801 1717 | 523,340 1718 | 778,964 1719 | 699,213 1720 | 254,1008 1721 | 543,259 1722 | 517,565 1723 | 765,343 1724 | 743,955 1725 | 922,782 1726 | 535,283 1727 | 621,1013 1728 | 1036,54 1729 | 595,708 1730 | 530,331 1731 | 621,557 1732 | 295,764 1733 | 741,221 1734 | 873,698 1735 | 412,847 1736 | 545,640 1737 | 1017,135 1738 | 433,378 1739 | 430,399 1740 | 769,357 1741 | 681,461 1742 | 954,962 1743 | 882,1034 1744 | 285,30 1745 | 109,158 1746 | 443,916 1747 | 583,943 1748 | 663,792 1749 | 774,570 1750 | 949,14 1751 | 416,927 1752 | 934,763 1753 | 644,326 1754 | 597,717 1755 | 89,84 1756 | 922,975 1757 | 656,992 1758 | 693,1017 1759 | 698,891 1760 | 545,619 1761 | 1019,945 1762 | 982,794 1763 | 461,922 1764 | 762,1054 1765 | 373,350 1766 | 322,656 1767 | 753,589 1768 | 285,739 1769 | 588,1009 1770 | 932,898 1771 | 788,645 1772 | 765,103 1773 | 903,985 1774 | 699,538 1775 | 397,1078 1776 | 286,925 1777 | 40,1039 1778 | 343,591 1779 | 370,893 1780 | 819,916 1781 | 750,819 1782 | 369,465 1783 | 763,325 1784 | 686,767 1785 | 920,760 1786 | 691,694 1787 | 420,717 1788 | 342,717 1789 | 888,215 1790 | 793,959 1791 | 947,724 1792 | 739,560 1793 | 327,984 1794 | 230,232 1795 | 303,247 1796 | 675,283 1797 | 297,449 1798 | 827,916 1799 | 472,307 1800 | 734,1066 1801 | 301,264 1802 | 279,421 1803 | 478,390 1804 | 647,576 1805 | 389,1036 1806 | 960,849 1807 | 854,591 1808 | 661,929 1809 | 783,1045 1810 | 501,834 1811 | 370,327 1812 | 765,529 1813 | 314,459 1814 | 358,595 1815 | 292,772 1816 | 449,547 1817 | 964,752 1818 | 545,289 1819 | 319,703 1820 | 207,825 1821 | 693,525 1822 | 898,589 1823 | 632,308 1824 | 921,589 1825 | 358,929 1826 | 678,518 1827 | 623,407 1828 | 404,1031 1829 | 179,15 1830 | 863,1058 1831 | 491,442 1832 | 386,181 1833 | 132,769 1834 | 164,680 1835 | 272,666 1836 | 777,671 1837 | 265,729 1838 | 161,1058 1839 | 452,798 1840 | 415,653 1841 | 343,853 1842 | 588,1052 1843 | 93,735 1844 | 501,847 1845 | 331,1022 1846 | 693,100 1847 | 92,385 1848 | 554,1008 1849 | 834,694 1850 | 401,659 1851 | 461,669 1852 | 501,968 1853 | 722,342 1854 | 262,380 1855 | 564,729 1856 | 602,372 1857 | 1050,1001 1858 | 996,1023 1859 | 292,1041 1860 | 740,659 1861 | 933,725 1862 | 904,512 1863 | 810,918 1864 | 363,860 1865 | 611,585 1866 | 818,578 1867 | 167,673 1868 | 154,569 1869 | 484,26 1870 | 841,872 1871 | 677,881 1872 | 1000,205 1873 | 481,407 1874 | 596,1026 1875 | 332,430 1876 | 754,1061 1877 | 535,717 1878 | 159,170 1879 | 248,557 1880 | 353,945 1881 | 946,808 1882 | 472,1052 1883 | 869,1022 1884 | 319,444 1885 | 418,471 1886 | 378,397 1887 | 333,1003 1888 | 372,748 1889 | 742,802 1890 | 628,696 1891 | 640,499 1892 | 525,1013 1893 | 416,953 1894 | 801,1070 1895 | 896,1015 1896 | 792,906 1897 | 322,478 1898 | 333,434 1899 | 431,929 1900 | 440,466 1901 | 427,519 1902 | 644,462 1903 | 750,443 1904 | 59,352 1905 | 701,208 1906 | 392,868 1907 | 838,648 1908 | 693,483 1909 | 460,953 1910 | 767,298 1911 | 318,478 1912 | 509,447 1913 | 445,557 1914 | 307,170 1915 | 1062,387 1916 | 771,804 1917 | 560,1079 1918 | 737,656 1919 | 707,546 1920 | 976,916 1921 | 372,505 1922 | 908,581 1923 | 504,719 1924 | 227,440 1925 | 123,806 1926 | 675,705 1927 | 903,703 1928 | 668,348 1929 | 780,735 1930 | 1025,97 1931 | 371,600 1932 | 568,797 1933 | 273,688 1934 | 536,941 1935 | 274,523 1936 | 426,1037 1937 | 722,192 1938 | 592,252 1939 | 760,880 1940 | 578,502 1941 | 494,707 1942 | 246,450 1943 | 500,836 1944 | 755,816 1945 | 772,516 1946 | 834,613 1947 | 340,157 1948 | 996,970 1949 | 224,575 1950 | 692,871 1951 | 245,436 1952 | 279,680 1953 | 648,634 1954 | 960,672 1955 | 657,407 1956 | 720,1029 1957 | 248,581 1958 | 912,1046 1959 | 897,799 1960 | 53,467 1961 | 769,514 1962 | 395,890 1963 | 726,562 1964 | 547,571 1965 | 568,729 1966 | 670,1001 1967 | 918,187 1968 | 268,1042 1969 | 697,548 1970 | 1043,588 1971 | 544,326 1972 | 773,254 1973 | 887,851 1974 | 712,757 1975 | 729,1013 1976 | 767,415 1977 | 974,861 1978 | 825,747 1979 | 47,899 1980 | 295,685 1981 | 816,858 1982 | 740,295 1983 | 641,1071 1984 | 729,518 1985 | 910,912 1986 | 539,853 1987 | 595,237 1988 | 747,395 1989 | 801,558 1990 | 650,1020 1991 | 402,561 1992 | 305,650 1993 | 712,287 1994 | 662,686 1995 | 268,960 1996 | 829,66 1997 | 794,184 1998 | 506,317 1999 | 664,599 2000 | 570,703 2001 | 490,354 2002 | 417,839 2003 | 913,833 2004 | 490,154 2005 | 900,600 2006 | 450,1034 2007 | 558,1038 2008 | 889,660 2009 | 542,850 2010 | 668,587 2011 | 974,950 2012 | 841,935 2013 | 532,573 2014 | 733,803 2015 | 277,357 2016 | 302,244 2017 | 469,579 2018 | 412,1049 2019 | 248,895 2020 | 822,734 2021 | 592,290 2022 | 370,400 2023 | 684,614 2024 | 1004,203 2025 | 328,173 2026 | 592,1007 2027 | 717,691 2028 | 622,503 2029 | 321,633 2030 | 668,903 2031 | 934,605 2032 | 903,943 2033 | 257,708 2034 | 675,372 2035 | 410,981 2036 | 399,988 2037 | 657,291 2038 | 288,353 2039 | 778,591 2040 | 272,443 2041 | 355,1003 2042 | 742,893 2043 | 254,622 2044 | 750,656 2045 | 466,478 2046 | 212,649 2047 | 888,582 2048 | 274,955 2049 | 638,518 2050 | 373,928 2051 | 787,144 2052 | 773,949 2053 | 332,181 2054 | 671,1001 2055 | 351,198 2056 | 395,1021 2057 | 607,901 2058 | 806,209 2059 | 263,332 2060 | 481,767 2061 | 295,750 2062 | 547,913 2063 | 337,207 2064 | 427,767 2065 | 376,708 2066 | 930,765 2067 | 552,735 2068 | 793,728 2069 | 627,865 2070 | 274,312 2071 | 734,688 2072 | 666,901 2073 | 701,1070 2074 | 54,897 2075 | 614,252 2076 | 680,738 2077 | 269,84 2078 | 942,1026 2079 | 626,716 2080 | 815,1028 2081 | 812,550 2082 | 349,96 2083 | 422,1037 2084 | 597,490 2085 | 430,1048 2086 | 762,751 2087 | 71,841 2088 | 740,332 2089 | 612,277 2090 | 825,44 2091 | 884,702 2092 | 196,612 2093 | 679,1042 2094 | 190,510 2095 | 371,688 2096 | 260,484 2097 | 780,239 2098 | 204,867 2099 | 893,742 2100 | 489,991 2101 | 253,802 2102 | 828,854 2103 | 231,664 2104 | 756,934 2105 | 647,270 2106 | 384,904 2107 | 820,70 2108 | 565,983 2109 | 721,517 2110 | 278,580 2111 | 297,714 2112 | 279,889 2113 | 790,182 2114 | 972,928 2115 | 403,751 2116 | 365,928 2117 | 432,566 2118 | 657,292 2119 | 974,829 2120 | 959,523 2121 | 909,655 2122 | 632,219 2123 | 697,985 2124 | 552,676 2125 | 200,677 2126 | 778,820 2127 | 531,662 2128 | 391,879 2129 | 820,787 2130 | 719,964 2131 | 485,820 2132 | 488,860 2133 | 288,247 2134 | 199,483 2135 | 295,794 2136 | 526,247 2137 | 319,208 2138 | 158,431 2139 | 209,101 2140 | 326,672 2141 | 806,624 2142 | 715,693 2143 | 353,603 2144 | 309,449 2145 | 509,460 2146 | 466,901 2147 | 879,822 2148 | 938,1077 2149 | 527,820 2150 | 613,654 2151 | 941,614 2152 | 765,585 2153 | 536,301 2154 | 623,475 2155 | 441,641 2156 | 255,619 2157 | 700,266 2158 | 330,222 2159 | 501,813 2160 | 857,994 2161 | 881,662 2162 | 334,1017 2163 | 782,784 2164 | 562,939 2165 | 831,719 2166 | 925,880 2167 | 74,830 2168 | 416,799 2169 | 349,919 2170 | 769,693 2171 | 960,191 2172 | 827,498 2173 | 242,637 2174 | 839,299 2175 | 339,371 2176 | 874,1019 2177 | 915,575 2178 | 639,553 2179 | 621,531 2180 | 933,770 2181 | 180,760 2182 | 942,897 2183 | 957,352 2184 | 640,1028 2185 | 526,332 2186 | 449,832 2187 | 981,714 2188 | 502,786 2189 | 849,111 2190 | 839,881 2191 | 583,513 2192 | 383,455 2193 | 261,229 2194 | 327,228 2195 | 825,586 2196 | 429,507 2197 | 832,92 2198 | 798,193 2199 | 663,228 2200 | 752,192 2201 | 548,834 2202 | 374,594 2203 | 362,721 2204 | 509,790 2205 | 661,306 2206 | 985,914 2207 | 830,736 2208 | 732,780 2209 | 576,1079 2210 | 1010,335 2211 | 271,358 2212 | 322,502 2213 | 724,440 2214 | 610,321 2215 | 679,863 2216 | 329,825 2217 | 337,940 2218 | 678,452 2219 | 743,667 2220 | 307,240 2221 | 466,310 2222 | 276,270 2223 | 884,912 2224 | 602,275 2225 | 330,930 2226 | 820,708 2227 | 695,746 2228 | 671,366 2229 | 681,393 2230 | 825,679 2231 | 505,744 2232 | 896,791 2233 | 181,515 2234 | 695,901 2235 | 373,450 2236 | 473,773 2237 | 581,288 2238 | 27,194 2239 | 343,492 2240 | 716,519 2241 | 825,872 2242 | 486,163 2243 | 721,172 2244 | 303,512 2245 | 699,499 2246 | 579,373 2247 | 420,733 2248 | 668,964 2249 | 378,374 2250 | 371,803 2251 | 365,808 2252 | 287,125 2253 | 890,1073 2254 | 571,345 2255 | 497,1008 2256 | 482,841 2257 | 360,733 2258 | 771,889 2259 | 831,647 2260 | 605,799 2261 | 582,362 2262 | 358,281 2263 | 636,756 2264 | 399,531 2265 | 658,543 2266 | 479,960 2267 | 509,549 2268 | 626,952 2269 | 969,234 2270 | 126,1071 2271 | 248,401 2272 | 240,315 2273 | 517,958 2274 | 621,971 2275 | 665,866 2276 | 370,356 2277 | 786,1008 2278 | 651,811 2279 | 378,106 2280 | 819,421 2281 | 909,889 2282 | 727,1051 2283 | 479,1061 2284 | 775,976 2285 | 21,749 2286 | 580,440 2287 | 933,948 2288 | 333,547 2289 | 593,1056 2290 | 708,491 2291 | 719,1024 2292 | 230,481 2293 | 156,643 2294 | 327,448 2295 | 954,723 2296 | 929,471 2297 | 277,315 2298 | 714,568 2299 | 326,793 2300 | 741,307 2301 | 722,411 2302 | 877,380 2303 | 432,985 2304 | 702,708 2305 | 270,306 2306 | 444,319 2307 | 306,1077 2308 | 958,646 2309 | 479,644 2310 | 886,645 2311 | 584,912 2312 | 898,395 2313 | 344,871 2314 | 923,622 2315 | 183,506 2316 | 490,393 2317 | 797,1067 2318 | 370,981 2319 | 1012,124 2320 | 508,480 2321 | 356,843 2322 | 711,934 2323 | 574,922 2324 | 264,591 2325 | 457,451 2326 | 541,662 2327 | 369,908 2328 | 945,1027 2329 | 419,866 2330 | 794,457 2331 | 160,556 2332 | 329,50 2333 | 460,405 2334 | 726,167 2335 | 271,1028 2336 | 313,992 2337 | 710,286 2338 | 378,927 2339 | 147,852 2340 | 910,783 2341 | 12,149 2342 | 669,642 2343 | 770,322 2344 | 600,434 2345 | 801,843 2346 | 146,587 2347 | 609,1061 2348 | 761,779 2349 | 357,833 2350 | 169,534 2351 | 692,836 2352 | 464,776 2353 | 870,470 2354 | 365,548 2355 | 337,703 2356 | 300,228 2357 | 738,505 2358 | 271,398 2359 | 169,621 2360 | 547,258 2361 | 199,1034 2362 | 556,412 2363 | 829,693 2364 | 289,339 2365 | 496,819 2366 | 102,978 2367 | 944,454 2368 | 357,788 2369 | 926,568 2370 | 652,381 2371 | 596,524 2372 | 378,632 2373 | 922,854 2374 | 947,573 2375 | 518,558 2376 | 792,117 2377 | 627,321 2378 | 716,1068 2379 | 962,840 2380 | 705,185 2381 | 437,457 2382 | 768,868 2383 | 350,508 2384 | 613,796 2385 | 559,988 2386 | 279,163 2387 | 105,568 2388 | 229,479 2389 | 822,892 2390 | 581,567 2391 | 387,447 2392 | 280,720 2393 | 409,667 2394 | 419,765 2395 | 838,124 2396 | 422,419 2397 | 986,256 2398 | 253,585 2399 | 624,278 2400 | 880,708 2401 | 795,444 2402 | 638,340 2403 | 597,780 2404 | 304,1057 2405 | 931,1026 2406 | 592,709 2407 | 378,988 2408 | 434,728 2409 | 102,852 2410 | 745,330 2411 | 639,273 2412 | 798,776 2413 | 396,410 2414 | 353,288 2415 | 475,351 2416 | 937,180 2417 | 638,678 2418 | 1013,548 2419 | 459,698 2420 | 788,742 2421 | 611,763 2422 | 477,863 2423 | 801,688 2424 | 332,352 2425 | 634,608 2426 | 324,732 2427 | 65,205 2428 | 479,790 2429 | 638,915 2430 | 228,1046 2431 | 248,386 2432 | 376,604 2433 | 829,826 2434 | 415,967 2435 | 212,1016 2436 | 867,969 2437 | 239,514 2438 | 798,838 2439 | 810,437 2440 | 617,1024 2441 | 237,835 2442 | 413,797 2443 | 560,955 2444 | 453,347 2445 | 606,269 2446 | 249,897 2447 | 576,318 2448 | 624,710 2449 | 935,728 2450 | 855,712 2451 | 488,923 2452 | 730,182 2453 | 948,217 2454 | 465,826 2455 | 923,342 2456 | 251,599 2457 | 388,1012 2458 | 802,133 2459 | 293,860 2460 | 718,815 2461 | 68,186 2462 | 657,1053 2463 | 437,895 2464 | 755,675 2465 | 429,483 2466 | 566,284 2467 | 952,707 2468 | 533,722 2469 | 398,744 2470 | 655,507 2471 | 380,1021 2472 | 214,540 2473 | 717,922 2474 | 684,812 2475 | 1022,237 2476 | 773,237 2477 | 618,756 2478 | 636,967 2479 | 948,815 2480 | 771,665 2481 | 765,721 2482 | 770,410 2483 | 313,266 2484 | 85,589 2485 | 466,942 2486 | 924,679 2487 | 366,452 2488 | 776,612 2489 | 526,760 2490 | 913,789 2491 | 417,682 2492 | 563,542 2493 | 866,935 2494 | 543,304 2495 | 512,907 2496 | 607,818 2497 | 598,542 2498 | 1026,95 2499 | 460,973 2500 | 712,262 2501 | 199,591 2502 | 957,692 2503 | 193,569 2504 | 753,816 2505 | 286,520 2506 | 966,1058 2507 | 476,711 2508 | 299,787 2509 | 794,469 2510 | 463,482 2511 | 216,790 2512 | 701,1008 2513 | 524,478 2514 | 578,426 2515 | 284,956 2516 | 515,667 2517 | 350,892 2518 | 651,690 2519 | 847,802 2520 | 715,984 2521 | 451,607 2522 | 273,910 2523 | 524,648 2524 | 644,812 2525 | 449,542 2526 | 492,832 2527 | 607,558 2528 | 320,854 2529 | 1051,1045 2530 | 345,1053 2531 | 1076,515 2532 | 397,954 2533 | 428,670 2534 | 188,583 2535 | 341,377 2536 | 827,1028 2537 | 364,623 2538 | 514,883 2539 | 670,258 2540 | 830,91 2541 | 144,400 2542 | 304,582 2543 | 950,750 2544 | 889,858 2545 | 675,786 2546 | 922,688 2547 | 360,366 2548 | 755,492 2549 | 881,784 2550 | 773,160 2551 | 929,666 2552 | 768,1049 2553 | 458,762 2554 | 251,323 2555 | 646,734 2556 | 971,905 2557 | 536,771 2558 | 504,433 2559 | 351,219 2560 | 405,606 2561 | 72,34 2562 | 739,220 2563 | 745,421 2564 | 301,145 2565 | 433,924 2566 | 321,324 2567 | 841,241 2568 | 361,963 2569 | 738,389 2570 | 436,370 2571 | 174,595 2572 | 54,755 2573 | 290,307 2574 | 580,296 2575 | 525,284 2576 | 22,702 2577 | 936,144 2578 | 329,1028 2579 | 436,666 2580 | 733,942 2581 | 218,537 2582 | 617,772 2583 | 251,369 2584 | 286,388 2585 | 642,349 2586 | 165,32 2587 | 1026,456 2588 | 904,907 2589 | 364,759 2590 | 265,703 2591 | 961,837 2592 | 658,208 2593 | 527,274 2594 | 548,378 2595 | 471,672 2596 | 373,240 2597 | 507,336 2598 | 826,244 2599 | 685,556 2600 | 761,482 2601 | 374,703 2602 | 625,890 2603 | 305,75 2604 | 844,922 2605 | 336,928 2606 | 462,792 2607 | 371,379 2608 | 291,613 2609 | 933,597 2610 | 562,771 2611 | 385,954 2612 | 242,777 2613 | 827,494 2614 | 866,767 2615 | 540,954 2616 | 306,875 2617 | 23,1060 2618 | 622,706 2619 | 593,499 2620 | 670,995 2621 | 477,1013 2622 | 134,520 2623 | 395,957 2624 | 496,745 2625 | 679,693 2626 | 458,882 2627 | 504,522 2628 | 381,703 2629 | 732,438 2630 | 624,697 2631 | 356,708 2632 | 484,710 2633 | 587,621 2634 | 224,425 2635 | 1048,299 2636 | 381,610 2637 | 496,671 2638 | 843,497 2639 | 696,754 2640 | 905,1019 2641 | 304,187 2642 | 902,870 2643 | 101,934 2644 | 859,696 2645 | 694,692 2646 | 542,587 2647 | 670,432 2648 | 296,952 2649 | 870,918 2650 | 892,748 2651 | 780,940 2652 | 902,620 2653 | 687,350 2654 | 288,807 2655 | 911,601 2656 | 722,866 2657 | 453,553 2658 | 404,984 2659 | 704,222 2660 | 751,274 2661 | 670,568 2662 | 728,444 2663 | 270,571 2664 | 521,1069 2665 | 752,125 2666 | 882,1067 2667 | 527,528 2668 | 961,824 2669 | 762,592 2670 | 788,182 2671 | 216,545 2672 | 626,858 2673 | 274,202 2674 | 424,516 2675 | 858,817 2676 | 457,465 2677 | 925,1070 2678 | 584,671 2679 | 544,580 2680 | 271,343 2681 | 371,804 2682 | 461,820 2683 | 643,810 2684 | 372,874 2685 | 548,1025 2686 | 610,1046 2687 | 361,1003 2688 | 896,691 2689 | 668,691 2690 | 934,164 2691 | 93,576 2692 | 657,709 2693 | 316,290 2694 | 644,885 2695 | 275,687 2696 | 695,286 2697 | 448,928 2698 | 815,341 2699 | 697,667 2700 | 849,269 2701 | 499,911 2702 | 983,678 2703 | 347,825 2704 | 938,723 2705 | 586,981 2706 | 375,351 2707 | 239,418 2708 | 832,133 2709 | 702,309 2710 | 803,891 2711 | 435,925 2712 | 931,1068 2713 | 364,392 2714 | 368,870 2715 | 967,1009 2716 | 892,1058 2717 | 624,491 2718 | 867,1012 2719 | 510,653 2720 | 488,335 2721 | 331,866 2722 | 590,393 2723 | 964,861 2724 | 146,410 2725 | 782,629 2726 | 636,298 2727 | 394,520 2728 | 624,659 2729 | 307,973 2730 | 720,549 2731 | 456,639 2732 | 632,1053 2733 | 575,747 2734 | 633,287 2735 | 698,1003 2736 | 531,629 2737 | 188,546 2738 | 425,940 2739 | 595,42 2740 | 553,703 2741 | 433,540 2742 | 763,622 2743 | 848,164 2744 | 1056,210 2745 | 404,852 2746 | 871,711 2747 | 219,26 2748 | 584,905 2749 | 48,883 2750 | 661,715 2751 | 403,1078 2752 | 423,745 2753 | 929,944 2754 | 400,748 2755 | 516,320 2756 | 684,405 2757 | 884,188 2758 | 438,626 2759 | 1020,436 2760 | 472,453 2761 | 806,590 2762 | 850,629 2763 | 774,857 2764 | 855,660 2765 | 992,924 2766 | 979,632 2767 | 219,569 2768 | 362,623 2769 | 372,731 2770 | 647,425 2771 | 827,123 2772 | 821,878 2773 | 306,215 2774 | 697,719 2775 | 773,178 2776 | 891,143 2777 | 374,857 2778 | 53,115 2779 | 520,619 2780 | 890,1069 2781 | 527,724 2782 | 1059,913 2783 | 352,1061 2784 | 556,300 2785 | 203,846 2786 | 545,867 2787 | 467,565 2788 | 566,920 2789 | 428,822 2790 | 843,238 2791 | 596,915 2792 | 264,822 2793 | 527,256 2794 | 222,871 2795 | 208,580 2796 | 900,722 2797 | 599,602 2798 | 775,957 2799 | 400,283 2800 | 491,687 2801 | 602,792 2802 | 417,962 2803 | 336,367 2804 | 668,600 2805 | 802,667 2806 | 720,946 2807 | 756,365 2808 | 848,651 2809 | 517,343 2810 | 464,767 2811 | 402,1031 2812 | 650,865 2813 | 316,322 2814 | 277,835 2815 | 935,600 2816 | 395,813 2817 | 615,947 2818 | 302,798 2819 | 625,724 2820 | 785,1073 2821 | 782,625 2822 | 360,648 2823 | 497,458 2824 | 416,733 2825 | 776,552 2826 | 297,849 2827 | 798,516 2828 | 353,1081 2829 | 390,361 2830 | 815,701 2831 | 382,1011 2832 | 327,670 2833 | 262,455 2834 | 1001,653 2835 | 511,269 2836 | 673,796 2837 | 332,711 2838 | 628,1038 2839 | 601,593 2840 | 28,344 2841 | 323,165 2842 | 584,282 2843 | 214,871 2844 | 688,438 2845 | 365,606 2846 | 742,781 2847 | 895,652 2848 | 639,455 2849 | 1,1054 2850 | 590,831 2851 | 293,278 2852 | 446,575 2853 | 193,750 2854 | 835,993 2855 | 576,253 2856 | 299,904 2857 | 647,725 2858 | 687,279 2859 | 353,477 2860 | 99,397 2861 | 940,795 2862 | 1014,78 2863 | 678,805 2864 | 729,132 2865 | 266,601 2866 | 550,965 2867 | 723,782 2868 | 730,562 2869 | 457,782 2870 | 879,579 2871 | 826,741 2872 | 357,176 2873 | 342,174 2874 | 474,912 2875 | 1059,17 2876 | 358,261 2877 | 921,935 2878 | 976,429 2879 | 862,880 2880 | 309,502 2881 | 280,633 2882 | 917,638 2883 | 294,833 2884 | 807,813 2885 | 684,616 2886 | 354,372 2887 | 361,275 2888 | 991,594 2889 | 51,951 2890 | 323,590 2891 | 310,682 2892 | 253,432 2893 | 401,314 2894 | 554,725 2895 | 408,524 2896 | 463,341 2897 | 669,216 2898 | 483,372 2899 | 649,554 2900 | 788,614 2901 | 841,1003 2902 | 308,225 2903 | 639,235 2904 | 796,503 2905 | 280,740 2906 | 752,645 2907 | 398,450 2908 | 282,336 2909 | 950,804 2910 | 690,233 2911 | 426,928 2912 | 285,1028 2913 | 744,466 2914 | 507,617 2915 | 420,561 2916 | 490,814 2917 | 704,700 2918 | 242,473 2919 | 399,491 2920 | 723,252 2921 | 492,511 2922 | 837,513 2923 | 371,762 2924 | 835,737 2925 | 274,815 2926 | 543,542 2927 | 212,619 2928 | 498,367 2929 | 757,869 2930 | 285,238 2931 | 619,1025 2932 | 1055,871 2933 | 881,1060 2934 | 930,771 2935 | 501,769 2936 | 245,794 2937 | 146,59 2938 | 563,998 2939 | 765,213 2940 | 731,553 2941 | 165,533 2942 | 552,1060 2943 | 757,328 2944 | 646,634 2945 | 1013,815 2946 | 790,215 2947 | 270,307 2948 | 738,452 2949 | 549,956 2950 | 625,718 2951 | 444,734 2952 | 599,806 2953 | 334,589 2954 | 349,1006 2955 | 285,268 2956 | 485,850 2957 | 188,533 2958 | 647,682 2959 | 574,1068 2960 | 791,727 2961 | 599,529 2962 | 433,450 2963 | 751,812 2964 | 307,1033 2965 | 391,648 2966 | 858,997 2967 | 470,731 2968 | 271,841 2969 | 888,654 2970 | 647,381 2971 | 576,423 2972 | 515,1081 2973 | 899,520 2974 | 257,882 2975 | 421,719 2976 | 717,193 2977 | 543,868 2978 | 843,515 2979 | 95,214 2980 | 698,397 2981 | 289,680 2982 | 117,681 2983 | 226,255 2984 | 741,1042 2985 | 698,237 2986 | 836,478 2987 | 630,318 2988 | 841,35 2989 | 921,789 2990 | 581,954 2991 | 927,914 2992 | 271,554 2993 | 251,414 2994 | 971,853 2995 | 920,971 2996 | 740,727 2997 | 296,485 2998 | 331,992 2999 | 906,499 3000 | 879,647 3001 | 438,979 3002 | 678,782 3003 | 841,460 3004 | 746,341 3005 | 412,839 3006 | 432,514 3007 | 675,683 3008 | 165,451 3009 | 641,862 3010 | 583,870 3011 | 143,174 3012 | 975,338 3013 | 415,1013 3014 | 425,353 3015 | 593,549 3016 | 668,1078 3017 | 530,575 3018 | 411,892 3019 | 405,321 3020 | 300,856 3021 | 428,1064 3022 | 924,732 3023 | 809,1063 3024 | 477,959 3025 | 964,700 3026 | 271,215 3027 | 553,1044 3028 | 853,792 3029 | 730,103 3030 | 336,921 3031 | 46,506 3032 | 604,238 3033 | 281,360 3034 | 386,616 3035 | 658,747 3036 | 425,582 3037 | 561,902 3038 | 648,612 3039 | 21,790 3040 | 550,252 3041 | 657,251 3042 | 451,855 3043 | 740,1056 3044 | 492,741 3045 | 502,494 3046 | 160,559 3047 | 406,571 3048 | 30,409 3049 | 486,543 3050 | 813,685 3051 | 496,350 3052 | 269,986 3053 | 303,1045 3054 | 585,585 3055 | 806,671 3056 | 765,469 3057 | 685,1003 3058 | 305,469 3059 | 258,283 3060 | 738,808 3061 | 655,555 3062 | 893,737 3063 | 337,813 3064 | 742,550 3065 | 801,459 3066 | 588,579 3067 | 967,997 3068 | 451,805 3069 | 707,687 3070 | 517,1021 3071 | 629,297 3072 | 293,490 3073 | 726,946 3074 | 290,995 3075 | 683,392 3076 | 523,763 3077 | 498,413 3078 | 77,342 3079 | 500,284 3080 | 497,545 3081 | 769,1065 3082 | 371,286 3083 | 489,847 3084 | 472,1080 3085 | 861,39 3086 | 954,735 3087 | 892,902 3088 | 300,954 3089 | 779,816 3090 | 662,574 3091 | 521,858 3092 | 548,820 3093 | 286,130 3094 | 590,1045 3095 | 676,801 3096 | 415,400 3097 | 553,304 3098 | 565,720 3099 | 739,472 3100 | 732,264 3101 | 682,330 3102 | 319,993 3103 | 801,731 3104 | 561,1067 3105 | 51,609 3106 | 382,757 3107 | 575,979 3108 | 426,382 3109 | 775,407 3110 | 820,976 3111 | 177,714 3112 | 790,725 3113 | 589,684 3114 | 350,1026 3115 | 529,872 3116 | 734,1030 3117 | 326,449 3118 | 295,785 3119 | 290,474 3120 | 541,493 3121 | 734,452 3122 | 869,563 3123 | 775,194 3124 | 681,694 3125 | 623,485 3126 | 563,1079 3127 | 343,239 3128 | 482,960 3129 | 676,1064 3130 | 508,677 3131 | 178,895 3132 | 851,485 3133 | 576,612 3134 | 790,303 3135 | 796,575 3136 | 366,627 3137 | 483,527 3138 | 629,354 3139 | 633,461 3140 | 214,155 3141 | 239,735 3142 | 482,966 3143 | 99,707 3144 | 727,685 3145 | 330,425 3146 | 357,349 3147 | 794,461 3148 | 406,406 3149 | 623,791 3150 | 974,298 3151 | 209,710 3152 | 790,164 3153 | 302,170 3154 | 783,867 3155 | 887,137 3156 | 917,689 3157 | 595,337 3158 | 272,164 3159 | 300,772 3160 | 666,979 3161 | 355,307 3162 | 813,467 3163 | 351,744 3164 | 803,621 3165 | 713,747 3166 | 213,873 3167 | 498,1066 3168 | 580,643 3169 | 666,666 3170 | 362,189 3171 | 596,501 3172 | 911,664 3173 | 116,899 3174 | 725,209 3175 | 318,195 3176 | 347,387 3177 | 603,519 3178 | 594,599 3179 | 741,413 3180 | 497,624 3181 | 314,332 3182 | 322,596 3183 | 920,794 3184 | 963,740 3185 | 742,460 3186 | 829,571 3187 | 244,701 3188 | 1025,151 3189 | 452,981 3190 | 284,384 3191 | 350,491 3192 | 836,546 3193 | 577,802 3194 | 865,195 3195 | 494,708 3196 | 435,873 3197 | 277,579 3198 | 793,1034 3199 | 402,920 3200 | 857,1027 3201 | 948,600 3202 | 740,582 3203 | 334,258 3204 | 195,322 3205 | 999,951 3206 | 706,744 3207 | 408,575 3208 | 929,879 3209 | 851,738 3210 | 651,1062 3211 | 436,995 3212 | 673,326 3213 | 1026,638 3214 | 613,471 3215 | 190,604 3216 | 238,631 3217 | 261,667 3218 | 469,575 3219 | 642,865 3220 | 376,1050 3221 | 437,719 3222 | 683,376 3223 | 542,769 3224 | 487,1008 3225 | 600,1012 3226 | 314,540 3227 | 732,463 3228 | 523,498 3229 | 517,651 3230 | 856,405 3231 | 637,501 3232 | 409,967 3233 | 205,684 3234 | 768,510 3235 | 439,365 3236 | 601,576 3237 | 719,546 3238 | 813,57 3239 | 516,845 3240 | 971,926 3241 | 973,989 3242 | 268,848 3243 | 642,830 3244 | 795,594 3245 | 292,434 3246 | 468,621 3247 | 714,204 3248 | 611,750 3249 | 655,865 3250 | 805,30 3251 | 325,1074 3252 | 319,401 3253 | 962,512 3254 | 1042,397 3255 | 686,847 3256 | 733,586 3257 | 866,584 3258 | 833,903 3259 | 469,296 3260 | 743,874 3261 | 818,74 3262 | 306,570 3263 | 621,366 3264 | 387,219 3265 | 307,134 3266 | 496,297 3267 | 499,1019 3268 | 802,92 3269 | 471,642 3270 | 888,686 3271 | 286,269 3272 | 571,824 3273 | 308,197 3274 | 1017,51 3275 | 985,703 3276 | 1072,563 3277 | 157,22 3278 | 520,1066 3279 | 819,594 3280 | 301,182 3281 | 625,236 3282 | 819,585 3283 | 614,811 3284 | 661,241 3285 | 476,510 3286 | 27,405 3287 | 242,201 3288 | 178,495 3289 | 912,642 3290 | 802,877 3291 | 366,301 3292 | 640,657 3293 | 554,939 3294 | 922,768 3295 | 590,979 3296 | 878,694 3297 | 392,114 3298 | 300,701 3299 | 770,447 3300 | 247,237 3301 | 366,670 3302 | 886,542 3303 | 258,462 3304 | 1054,760 3305 | 389,1006 3306 | 370,414 3307 | 387,277 3308 | 488,993 3309 | 668,4 3310 | 770,971 3311 | 398,651 3312 | 444,753 3313 | 648,368 3314 | 1032,96 3315 | 540,962 3316 | 366,1015 3317 | 476,599 3318 | 970,923 3319 | 421,702 3320 | 852,727 3321 | 353,1008 3322 | 575,1068 3323 | 516,891 3324 | 336,639 3325 | 707,836 3326 | 723,314 3327 | 684,851 3328 | 982,791 3329 | 305,566 3330 | 711,186 3331 | 272,458 3332 | 704,407 3333 | 329,281 3334 | 234,587 3335 | 411,815 3336 | 429,933 3337 | 694,101 3338 | 566,731 3339 | 651,325 3340 | 950,584 3341 | 498,955 3342 | 824,469 3343 | 591,1064 3344 | 401,452 3345 | 726,733 3346 | 152,660 3347 | 891,886 3348 | 274,630 3349 | 935,715 3350 | 906,595 3351 | 823,827 3352 | 233,525 3353 | 790,744 3354 | 478,422 3355 | 737,404 3356 | 749,272 3357 | 494,426 3358 | 132,717 3359 | 1051,229 3360 | 529,886 3361 | 752,318 3362 | 342,752 3363 | 934,669 3364 | 304,193 3365 | 291,325 3366 | 847,335 3367 | 785,1028 3368 | 647,609 3369 | 670,640 3370 | 461,848 3371 | 954,1020 3372 | 674,83 3373 | 971,679 3374 | 316,566 3375 | 360,447 3376 | 421,412 3377 | 415,1045 3378 | 352,384 3379 | 531,443 3380 | 172,725 3381 | 855,777 3382 | 929,850 3383 | 287,167 3384 | 614,897 3385 | 806,733 3386 | 420,587 3387 | 156,634 3388 | 132,802 3389 | 568,570 3390 | 692,864 3391 | 135,210 3392 | 700,884 3393 | 731,688 3394 | 665,687 3395 | 1031,347 3396 | 491,886 3397 | 288,302 3398 | 528,361 3399 | 866,576 3400 | 558,246 3401 | 329,765 3402 | 190,373 3403 | 549,336 3404 | 886,683 3405 | 698,496 3406 | 417,316 3407 | 719,1048 3408 | 830,84 3409 | 466,928 3410 | 178,557 3411 | 891,530 3412 | 588,792 3413 | 217,93 3414 | 296,1051 3415 | 260,829 3416 | 811,131 3417 | 69,540 3418 | 847,726 3419 | 905,526 3420 | 392,905 3421 | 1018,1062 3422 | 869,919 3423 | 297,671 3424 | 531,508 3425 | 252,639 3426 | 557,969 3427 | 857,646 3428 | 568,656 3429 | 481,1014 3430 | 555,648 3431 | 924,705 3432 | 358,402 3433 | 476,428 3434 | 744,1001 3435 | 794,859 3436 | 266,441 3437 | 248,245 3438 | 732,223 3439 | 503,446 3440 | 570,833 3441 | 440,514 3442 | 313,849 3443 | 673,336 3444 | 552,746 3445 | 881,482 3446 | 403,484 3447 | 816,757 3448 | 218,100 3449 | 559,918 3450 | 27,758 3451 | 417,666 3452 | 313,974 3453 | 655,1052 3454 | 174,697 3455 | 711,1006 3456 | 525,822 3457 | 122,242 3458 | 181,178 3459 | 325,532 3460 | 95,380 3461 | 136,37 3462 | 424,770 3463 | 780,386 3464 | 748,161 3465 | 8,277 3466 | 525,831 3467 | 350,132 3468 | 692,398 3469 | 627,534 3470 | 556,679 3471 | 311,477 3472 | 664,899 3473 | 392,609 3474 | 905,774 3475 | 232,845 3476 | 329,526 3477 | 259,917 3478 | 728,843 3479 | 901,1050 3480 | 679,833 3481 | 243,284 3482 | 460,919 3483 | 303,398 3484 | 785,224 3485 | 263,953 3486 | 971,660 3487 | 765,551 3488 | 667,392 3489 | 329,966 3490 | 367,755 3491 | 939,752 3492 | 860,879 3493 | 452,457 3494 | 568,532 3495 | 413,412 3496 | 404,555 3497 | 604,891 3498 | 744,984 3499 | 859,512 3500 | 213,744 3501 | 474,375 3502 | 737,239 3503 | 543,245 3504 | 257,769 3505 | 936,965 3506 | 808,800 3507 | 684,459 3508 | 632,703 3509 | 305,550 3510 | 367,630 3511 | 233,880 3512 | 644,209 3513 | 955,955 3514 | 839,1063 3515 | 723,558 3516 | 707,736 3517 | 207,692 3518 | 391,532 3519 | 420,933 3520 | 555,303 3521 | 958,716 3522 | 534,416 3523 | 725,548 3524 | 479,958 3525 | 243,262 3526 | 620,829 3527 | 716,804 3528 | 268,886 3529 | 808,468 3530 | 627,1035 3531 | 670,405 3532 | 207,687 3533 | 428,916 3534 | 872,905 3535 | 616,730 3536 | 564,1063 3537 | 236,374 3538 | 912,954 3539 | 546,985 3540 | 747,683 3541 | 458,729 3542 | 700,816 3543 | 268,974 3544 | 317,412 3545 | 313,466 3546 | 637,614 3547 | 777,425 3548 | 373,850 3549 | 632,989 3550 | 574,306 3551 | 610,227 3552 | 916,703 3553 | 602,678 3554 | 141,702 3555 | 963,726 3556 | 789,1043 3557 | 274,1015 3558 | 193,32 3559 | 552,450 3560 | 644,237 3561 | 456,568 3562 | 733,465 3563 | 119,584 3564 | 953,584 3565 | 368,186 3566 | 904,993 3567 | 646,632 3568 | 800,173 3569 | 492,899 3570 | 686,405 3571 | 838,1057 3572 | 628,869 3573 | 832,587 3574 | 990,697 3575 | 316,718 3576 | 664,623 3577 | 623,737 3578 | 793,149 3579 | 367,362 3580 | 596,680 3581 | 290,420 3582 | 470,956 3583 | 373,620 3584 | 412,424 3585 | 835,870 3586 | 702,898 3587 | 603,510 3588 | 472,399 3589 | 271,731 3590 | 688,667 3591 | 463,874 3592 | 207,531 3593 | 475,48 3594 | 396,278 3595 | 176,751 3596 | 375,23 3597 | 173,925 3598 | 440,526 3599 | 306,146 3600 | 144,762 3601 | 639,459 3602 | 160,613 3603 | 635,970 3604 | 304,166 3605 | 658,396 3606 | 639,510 3607 | 779,919 3608 | 1024,854 3609 | 714,878 3610 | 294,783 3611 | 1080,216 3612 | 924,669 3613 | 895,870 3614 | 566,632 3615 | 718,593 3616 | 742,412 3617 | 89,776 3618 | 384,952 3619 | 229,630 3620 | 649,418 3621 | 414,345 3622 | 703,256 3623 | 462,491 3624 | 309,667 3625 | 939,895 3626 | 872,507 3627 | 611,535 3628 | 958,327 3629 | 669,269 3630 | 772,242 3631 | 579,842 3632 | 531,884 3633 | 560,1074 3634 | 888,596 3635 | 546,1013 3636 | 838,1023 3637 | 480,85 3638 | 567,689 3639 | 445,452 3640 | 954,966 3641 | 813,14 3642 | 687,728 3643 | 377,813 3644 | 433,698 3645 | 516,325 3646 | 581,983 3647 | 472,990 3648 | 784,701 3649 | 569,664 3650 | 1000,439 3651 | 729,436 3652 | 939,1040 3653 | 785,1020 3654 | 362,575 3655 | 880,553 3656 | 553,1060 3657 | 353,449 3658 | 109,474 3659 | 619,805 3660 | 650,315 3661 | 497,709 3662 | 614,744 3663 | 173,554 3664 | 494,337 3665 | 853,509 3666 | 991,637 3667 | 223,567 3668 | 761,797 3669 | 691,255 3670 | 962,780 3671 | 278,387 3672 | 703,360 3673 | 319,346 3674 | 845,1020 3675 | 762,821 3676 | 214,603 3677 | 862,1018 3678 | 512,906 3679 | 867,844 3680 | 656,796 3681 | 716,1020 3682 | 325,596 3683 | 505,627 3684 | 460,610 3685 | 770,1046 3686 | 488,622 3687 | 354,965 3688 | 342,340 3689 | 848,965 3690 | 636,397 3691 | 673,968 3692 | 27,1037 3693 | 637,792 3694 | 258,657 3695 | 928,583 3696 | 430,422 3697 | 890,664 3698 | 467,540 3699 | 522,1012 3700 | 552,460 3701 | 463,1047 3702 | 366,179 3703 | 709,604 3704 | 380,1054 3705 | 66,455 3706 | 309,980 3707 | 527,398 3708 | 654,667 3709 | 356,424 3710 | 161,609 3711 | 270,776 3712 | 548,643 3713 | 261,643 3714 | 700,219 3715 | 418,1017 3716 | 766,392 3717 | 461,318 3718 | 887,635 3719 | 221,1060 3720 | 554,341 3721 | 792,448 3722 | 185,617 3723 | 314,571 3724 | 475,391 3725 | 584,1011 3726 | 651,889 3727 | 342,777 3728 | 864,881 3729 | 779,834 3730 | 410,388 3731 | 216,786 3732 | 647,484 3733 | 435,728 3734 | 829,34 3735 | 875,290 3736 | 639,438 3737 | 926,1075 3738 | 748,524 3739 | 304,848 3740 | 278,522 3741 | 585,1026 3742 | 586,930 3743 | 535,783 3744 | 401,684 3745 | 752,629 3746 | 825,769 3747 | 537,767 3748 | 760,269 3749 | 302,1001 3750 | 754,256 3751 | 980,641 3752 | 385,463 3753 | 580,247 3754 | 669,1076 3755 | 289,290 3756 | 163,564 3757 | 410,765 3758 | 492,430 3759 | 524,1027 3760 | 276,767 3761 | 313,1026 3762 | 861,845 3763 | 432,564 3764 | 258,766 3765 | 683,516 3766 | 269,486 3767 | 658,267 3768 | 189,699 3769 | 327,548 3770 | 456,689 3771 | 362,167 3772 | 602,270 3773 | 405,531 3774 | 874,993 3775 | 983,151 3776 | 725,746 3777 | 620,839 3778 | 384,96 3779 | 688,459 3780 | 583,296 3781 | 525,902 3782 | 700,316 3783 | 839,1042 3784 | 315,550 3785 | 248,475 3786 | 939,969 3787 | 243,64 3788 | 724,614 3789 | 746,1040 3790 | 489,426 3791 | 484,771 3792 | 340,351 3793 | 499,908 3794 | 213,831 3795 | 400,524 3796 | 96,865 3797 | 1037,916 3798 | 307,665 3799 | 457,416 3800 | 579,697 3801 | 192,510 3802 | 334,560 3803 | 471,711 3804 | 357,192 3805 | 461,976 3806 | 580,275 3807 | 948,612 3808 | 714,917 3809 | 632,1044 3810 | 585,829 3811 | 212,733 3812 | 332,873 3813 | 921,636 3814 | 239,610 3815 | 338,295 3816 | 525,498 3817 | 605,898 3818 | 853,768 3819 | 437,329 3820 | 857,1014 3821 | 759,1020 3822 | 639,555 3823 | 56,1038 3824 | 316,475 3825 | 350,475 3826 | 904,513 3827 | 645,358 3828 | 233,230 3829 | 835,39 3830 | 850,474 3831 | 965,903 3832 | 561,1020 3833 | 771,1019 3834 | 251,701 3835 | 301,809 3836 | 910,1017 3837 | 446,1004 3838 | 895,858 3839 | 877,510 3840 | 678,984 3841 | 362,638 3842 | 933,1012 3843 | 610,679 3844 | 463,764 3845 | 260,700 3846 | 317,431 3847 | 315,753 3848 | 519,356 3849 | 85,150 3850 | 960,791 3851 | 532,897 3852 | 416,943 3853 | 326,913 3854 | 485,531 3855 | 921,660 3856 | 93,305 3857 | 452,732 3858 | 586,965 3859 | 491,884 3860 | 707,659 3861 | 367,908 3862 | 747,292 3863 | 528,673 3864 | 695,1045 3865 | 715,492 3866 | 1005,731 3867 | 417,463 3868 | 352,866 3869 | 719,541 3870 | 384,1028 3871 | 518,437 3872 | 804,543 3873 | 9,201 3874 | 622,713 3875 | 505,833 3876 | 756,1032 3877 | 995,527 3878 | 698,296 3879 | 698,557 3880 | 542,809 3881 | 806,833 3882 | 413,929 3883 | 672,1065 3884 | 435,563 3885 | 868,985 3886 | 691,811 3887 | 545,267 3888 | 442,928 3889 | 746,405 3890 | 575,425 3891 | 923,983 3892 | 588,371 3893 | 632,902 3894 | 884,849 3895 | 414,795 3896 | 289,540 3897 | 634,331 3898 | 601,515 3899 | 98,176 3900 | 843,31 3901 | 715,1044 3902 | 711,1078 3903 | 395,203 3904 | 316,1019 3905 | 739,962 3906 | 955,30 3907 | 271,171 3908 | 790,1036 3909 | 370,1068 3910 | 359,545 3911 | 339,578 3912 | 299,490 3913 | 858,695 3914 | 816,1011 3915 | 552,821 3916 | 309,315 3917 | 22,461 3918 | 412,892 3919 | 556,397 3920 | 690,625 3921 | 301,208 3922 | 872,914 3923 | 346,613 3924 | 1025,559 3925 | 273,781 3926 | 629,895 3927 | 253,964 3928 | 238,1072 3929 | 428,557 3930 | 540,283 3931 | 681,247 3932 | 445,1018 3933 | 785,687 3934 | 832,222 3935 | 322,218 3936 | 230,432 3937 | 777,209 3938 | 567,398 3939 | 227,675 3940 | 396,785 3941 | 619,278 3942 | 773,734 3943 | 553,845 3944 | 773,1000 3945 | 381,616 3946 | 354,302 3947 | 743,241 3948 | 970,557 3949 | 301,192 3950 | 1033,200 3951 | 225,557 3952 | 270,293 3953 | 475,804 3954 | 149,776 3955 | 227,1025 3956 | 502,857 3957 | 766,1073 3958 | 476,675 3959 | 311,347 3960 | 320,890 3961 | 152,576 3962 | 527,634 3963 | 535,618 3964 | 1054,719 3965 | 267,913 3966 | 439,972 3967 | 376,944 3968 | 970,956 3969 | 666,406 3970 | 525,941 3971 | 545,885 3972 | 625,173 3973 | 574,414 3974 | 737,632 3975 | 622,794 3976 | 734,670 3977 | 622,399 3978 | 608,303 3979 | 312,193 3980 | 526,454 3981 | 447,314 3982 | 726,617 3983 | 760,612 3984 | 566,886 3985 | 415,428 3986 | 714,979 3987 | 863,124 3988 | 802,681 3989 | 998,379 3990 | 212,816 3991 | 384,849 3992 | 576,397 3993 | 173,744 3994 | 389,935 3995 | 344,797 3996 | 561,883 3997 | 158,6 3998 | 331,769 3999 | 597,956 4000 | 991,964 4001 | 797,737 4002 | 583,342 4003 | 828,832 4004 | 416,1058 4005 | 423,402 4006 | 296,342 4007 | 345,535 4008 | 396,166 4009 | 864,1012 4010 | 533,718 4011 | 854,692 4012 | 408,368 4013 | 733,836 4014 | 379,509 4015 | 564,844 4016 | 552,646 4017 | 818,896 4018 | 924,579 4019 | 196,736 4020 | 479,984 4021 | 387,992 4022 | 359,669 4023 | 532,430 4024 | 870,1028 4025 | 501,572 4026 | 826,789 4027 | 190,257 4028 | 739,428 4029 | 837,752 4030 | 742,764 4031 | 629,838 4032 | 520,412 4033 | 204,557 4034 | 483,729 4035 | 523,960 4036 | 259,964 4037 | 861,829 4038 | 502,1057 4039 | 883,919 4040 | 620,723 4041 | 650,553 4042 | 908,710 4043 | 167,532 4044 | 651,567 4045 | 1017,592 4046 | 740,298 4047 | 387,1009 4048 | 470,373 4049 | 272,954 4050 | 911,840 4051 | 351,454 4052 | 281,346 4053 | 454,319 4054 | 419,977 4055 | 402,655 4056 | 404,389 4057 | 407,383 4058 | 608,521 4059 | 900,532 4060 | 711,601 4061 | 382,802 4062 | 706,214 4063 | 412,552 4064 | 339,228 4065 | 270,958 4066 | 872,726 4067 | 862,654 4068 | 340,410 4069 | 692,653 4070 | 539,523 4071 | 501,492 4072 | 946,694 4073 | 480,205 4074 | 185,595 4075 | 377,536 4076 | 459,500 4077 | 768,871 4078 | 453,848 4079 | 213,817 4080 | 519,900 4081 | 282,593 4082 | 564,724 4083 | 248,795 4084 | 251,209 4085 | 535,800 4086 | 716,273 4087 | 371,722 4088 | 247,436 4089 | 476,403 4090 | 693,1052 4091 | 339,334 4092 | 708,524 4093 | 475,500 4094 | 787,686 4095 | 252,287 4096 | 793,970 4097 | 318,322 4098 | 208,593 4099 | 831,465 4100 | 503,503 4101 | 891,973 4102 | 1048,95 4103 | 657,1021 4104 | 334,203 4105 | 374,919 4106 | 436,950 4107 | 268,265 4108 | 989,193 4109 | 366,729 4110 | 641,288 4111 | 978,924 4112 | 194,599 4113 | 968,168 4114 | 688,753 4115 | 76,199 4116 | 476,370 4117 | 715,536 4118 | 472,683 4119 | 897,973 4120 | 934,771 4121 | 703,590 4122 | 745,177 4123 | 327,705 4124 | 704,827 4125 | 599,759 4126 | 241,516 4127 | 258,730 4128 | 504,771 4129 | 689,567 4130 | 439,1023 4131 | 371,500 4132 | 921,793 4133 | 221,568 4134 | 789,791 4135 | 645,210 4136 | 759,526 4137 | 658,521 4138 | 301,235 4139 | 433,388 4140 | 351,643 4141 | 716,555 4142 | 861,991 4143 | 328,903 4144 | 626,487 4145 | 429,363 4146 | 523,371 4147 | 816,84 4148 | 654,777 4149 | 314,823 4150 | 226,768 4151 | 283,678 4152 | 894,813 4153 | 286,508 4154 | 356,234 4155 | 466,322 4156 | 982,761 4157 | 621,1043 4158 | 644,872 4159 | 710,984 4160 | 728,819 4161 | 396,547 4162 | 435,517 4163 | 783,481 4164 | 899,725 4165 | 935,549 4166 | 711,801 4167 | 378,354 4168 | 703,1012 4169 | 234,434 4170 | 641,701 4171 | 618,764 4172 | 187,621 4173 | 349,594 4174 | 242,897 4175 | 877,782 4176 | 265,490 4177 | 73,115 4178 | 780,172 4179 | 802,873 4180 | 255,699 4181 | 386,1043 4182 | 684,261 4183 | 955,668 4184 | 285,595 4185 | 451,1080 4186 | 455,518 4187 | 505,629 4188 | 598,285 4189 | 922,554 4190 | 260,316 4191 | 437,829 4192 | 120,530 4193 | 612,1074 4194 | 306,783 4195 | 822,101 4196 | 278,337 4197 | 714,330 4198 | 810,1006 4199 | 632,517 4200 | 737,806 4201 | 307,255 4202 | 931,928 4203 | 169,617 4204 | 571,384 4205 | 783,420 4206 | 728,252 4207 | 294,483 4208 | 366,965 4209 | 810,701 4210 | 818,43 4211 | 483,556 4212 | 459,412 4213 | 601,496 4214 | 454,486 4215 | 404,730 4216 | 369,655 4217 | 659,1003 4218 | 486,354 4219 | 815,736 4220 | 549,138 4221 | 378,805 4222 | 323,900 4223 | 280,288 4224 | 440,720 4225 | 664,257 4226 | 302,141 4227 | 276,696 4228 | 371,755 4229 | 287,319 4230 | 657,1055 4231 | 396,639 4232 | 534,376 4233 | 280,855 4234 | 847,847 4235 | 519,825 4236 | 442,830 4237 | 404,24 4238 | 810,1072 4239 | 865,950 4240 | 448,915 4241 | 428,531 4242 | 428,562 4243 | 895,837 4244 | 247,656 4245 | 149,997 4246 | 547,572 4247 | 913,562 4248 | 964,1021 4249 | 857,82 4250 | 361,456 4251 | 320,472 4252 | 454,81 4253 | 375,724 4254 | 96,223 4255 | 323,994 4256 | 928,962 4257 | 336,229 4258 | 317,137 4259 | 532,540 4260 | 398,185 4261 | 585,454 4262 | 897,919 4263 | 667,243 4264 | 564,601 4265 | 1047,67 4266 | 221,1059 4267 | 467,913 4268 | 433,564 4269 | 627,244 4270 | 542,345 4271 | 91,576 4272 | 388,122 4273 | 907,612 4274 | 950,528 4275 | 760,1081 4276 | 150,584 4277 | 580,699 4278 | 535,350 4279 | 525,386 4280 | 751,994 4281 | 751,454 4282 | 715,792 4283 | 73,142 4284 | 412,727 4285 | 378,509 4286 | 863,882 4287 | 79,795 4288 | 792,1071 4289 | 1076,611 4290 | 275,183 4291 | 159,210 4292 | 918,882 4293 | 183,693 4294 | 389,731 4295 | 688,672 4296 | 499,523 4297 | 342,412 4298 | 413,660 4299 | 799,54 4300 | 850,784 4301 | 246,266 4302 | 519,756 4303 | 457,968 4304 | 414,369 4305 | 580,443 4306 | 643,917 4307 | 598,854 4308 | 651,738 4309 | 254,960 4310 | 769,328 4311 | 350,1041 4312 | 337,229 4313 | 183,454 4314 | 679,340 4315 | 750,1000 4316 | 512,872 4317 | 448,469 4318 | 503,751 4319 | 800,270 4320 | 251,101 4321 | 647,478 4322 | 699,975 4323 | 405,642 4324 | 754,218 4325 | 884,920 4326 | 964,622 4327 | 260,488 4328 | 311,159 4329 | 336,329 4330 | 475,289 4331 | 1051,492 4332 | 717,907 4333 | 789,589 4334 | 670,551 4335 | 573,1010 4336 | 363,613 4337 | 305,918 4338 | 173,512 4339 | 7,623 4340 | 353,531 4341 | 741,575 4342 | 772,493 4343 | 631,351 4344 | 722,639 4345 | 701,359 4346 | 403,905 4347 | 617,352 4348 | 634,853 4349 | 684,705 4350 | 869,499 4351 | 300,182 4352 | 851,845 4353 | 59,189 4354 | 724,482 4355 | 209,681 4356 | 283,590 4357 | 525,895 4358 | 699,796 4359 | 367,317 4360 | 751,169 4361 | 567,579 4362 | 234,596 4363 | 905,1006 4364 | 319,497 4365 | 820,830 4366 | 779,512 4367 | 736,983 4368 | 817,576 4369 | 438,635 4370 | 207,633 4371 | 925,624 4372 | 537,735 4373 | 588,339 4374 | 947,1023 4375 | 341,629 4376 | 624,448 4377 | 851,549 4378 | 431,817 4379 | 958,441 4380 | 952,742 4381 | 1065,664 4382 | 473,428 4383 | 844,105 4384 | 732,864 4385 | 878,684 4386 | 887,685 4387 | 328,914 4388 | 597,502 4389 | 433,534 4390 | 371,867 4391 | 365,909 4392 | 595,830 4393 | 754,445 4394 | 321,920 4395 | 614,418 4396 | 850,987 4397 | 734,383 4398 | 696,844 4399 | 822,577 4400 | 459,384 4401 | 314,153 4402 | 381,986 4403 | 279,710 4404 | 339,440 4405 | 722,954 4406 | 476,371 4407 | 467,595 4408 | 919,1059 4409 | 356,428 4410 | 785,226 4411 | 823,835 4412 | 303,807 4413 | 491,645 4414 | 352,458 4415 | 522,523 4416 | 756,865 4417 | 702,362 4418 | 522,834 4419 | 456,790 4420 | 936,1061 4421 | 470,857 4422 | 803,134 4423 | 521,714 4424 | 312,562 4425 | 540,830 4426 | 642,694 4427 | 882,576 4428 | 443,519 4429 | 568,300 4430 | 255,499 4431 | 311,934 4432 | 343,191 4433 | 133,613 4434 | 342,889 4435 | 527,121 4436 | 461,483 4437 | 635,342 4438 | 527,902 4439 | 543,977 4440 | 482,587 4441 | 501,507 4442 | 867,800 4443 | 338,630 4444 | 704,818 4445 | 745,999 4446 | 694,514 4447 | 624,439 4448 | 434,1013 4449 | 738,619 4450 | 79,898 4451 | 541,968 4452 | 687,541 4453 | 264,668 4454 | 920,921 4455 | 682,974 4456 | 800,848 4457 | 33,497 4458 | 249,689 4459 | 245,271 4460 | 464,988 4461 | 478,577 4462 | 373,256 4463 | 188,648 4464 | 792,852 4465 | 483,404 4466 | 903,661 4467 | 377,203 4468 | 1026,782 4469 | 611,1018 4470 | 590,985 4471 | 962,65 4472 | 928,830 4473 | 505,570 4474 | 948,755 4475 | 224,55 4476 | 928,932 4477 | 539,712 4478 | 579,590 4479 | 751,620 4480 | 1072,689 4481 | 802,891 4482 | 629,1022 4483 | 155,936 4484 | 898,639 4485 | 328,648 4486 | 788,436 4487 | 776,564 4488 | 85,96 4489 | 295,644 4490 | 976,702 4491 | 219,742 4492 | 318,157 4493 | 725,493 4494 | 791,25 4495 | 716,408 4496 | 270,204 4497 | 665,682 4498 | 1063,771 4499 | 762,673 4500 | 760,319 4501 | 484,856 4502 | 329,258 4503 | 316,372 4504 | 418,776 4505 | 544,315 4506 | 552,705 4507 | 48,21 4508 | 549,378 4509 | 534,309 4510 | 783,698 4511 | 962,911 4512 | 237,538 4513 | 591,436 4514 | 543,792 4515 | 756,587 4516 | 758,364 4517 | 561,581 4518 | 770,681 4519 | 310,170 4520 | 714,927 4521 | 861,844 4522 | 734,833 4523 | 440,695 4524 | 317,614 4525 | 496,363 4526 | 915,673 4527 | 413,59 4528 | 924,805 4529 | 637,420 4530 | 445,546 4531 | 516,363 4532 | 970,944 4533 | 253,277 4534 | 637,318 4535 | 830,1013 4536 | 687,429 4537 | 151,377 4538 | 714,1006 4539 | 306,653 4540 | 759,887 4541 | 374,235 4542 | 638,707 4543 | 426,350 4544 | 531,309 4545 | 646,460 4546 | 389,773 4547 | 298,436 4548 | 445,633 4549 | 834,605 4550 | 195,846 4551 | 422,867 4552 | 329,402 4553 | 986,902 4554 | 367,778 4555 | 582,364 4556 | 477,66 4557 | 451,833 4558 | 424,956 4559 | 973,766 4560 | 732,505 4561 | 290,950 4562 | 757,474 4563 | 286,968 4564 | 681,992 4565 | 261,686 4566 | 855,1017 4567 | 354,853 4568 | 146,146 4569 | 492,276 4570 | 324,849 4571 | 294,462 4572 | 1036,239 4573 | 191,485 4574 | 577,747 4575 | 475,678 4576 | 574,628 4577 | 165,378 4578 | 302,743 4579 | 791,889 4580 | 657,520 4581 | 329,882 4582 | 946,504 4583 | 531,895 4584 | 728,709 4585 | 619,427 4586 | 275,484 4587 | 285,812 4588 | 490,512 4589 | 703,792 4590 | 846,459 4591 | 366,1032 4592 | 125,639 4593 | 415,906 4594 | 458,774 4595 | 925,648 4596 | 848,811 4597 | 795,521 4598 | 368,410 4599 | 682,290 4600 | 378,435 4601 | 829,950 4602 | 431,431 4603 | 319,697 4604 | 350,609 4605 | 256,652 4606 | 436,911 4607 | 778,834 4608 | 252,985 4609 | 624,1021 4610 | 949,896 4611 | 609,571 4612 | 542,522 4613 | 289,390 4614 | 934,603 4615 | 250,1049 4616 | 365,818 4617 | 756,272 4618 | 535,475 4619 | 599,235 4620 | 266,498 4621 | 866,634 4622 | 588,930 4623 | 736,326 4624 | 808,70 4625 | 1018,960 4626 | 610,522 4627 | 766,614 4628 | 670,463 4629 | 437,977 4630 | 344,514 4631 | 595,885 4632 | 824,811 4633 | 711,431 4634 | 888,1056 4635 | 201,553 4636 | 262,731 4637 | 519,265 4638 | 584,864 4639 | 640,681 4640 | 381,504 4641 | 784,791 4642 | 332,985 4643 | 298,1008 4644 | 443,506 4645 | 854,959 4646 | 649,1012 4647 | 974,987 4648 | 562,631 4649 | 736,454 4650 | 764,921 4651 | 537,434 4652 | 712,837 4653 | 720,677 4654 | 1022,874 4655 | 391,661 4656 | 329,411 4657 | 943,131 4658 | 308,978 4659 | 527,354 4660 | 542,801 4661 | 617,967 4662 | 372,215 4663 | 175,582 4664 | 18,947 4665 | 621,859 4666 | 478,484 4667 | 731,715 4668 | 1003,967 4669 | 367,283 4670 | 808,705 4671 | 584,682 4672 | 743,935 4673 | 280,529 4674 | 582,297 4675 | 448,455 4676 | 317,1023 4677 | 320,515 4678 | 591,580 4679 | 373,699 4680 | 555,884 4681 | 582,517 4682 | 711,788 4683 | 209,116 4684 | 811,745 4685 | 37,1036 4686 | 845,603 4687 | 734,936 4688 | 768,791 4689 | 762,1028 4690 | 296,676 4691 | 944,1024 4692 | 803,98 4693 | 534,923 4694 | 300,502 4695 | 376,227 4696 | 795,60 4697 | 477,303 4698 | 290,666 4699 | 400,749 4700 | 287,447 4701 | 906,178 4702 | 572,477 4703 | 812,677 4704 | 427,653 4705 | 702,806 4706 | 838,803 4707 | 78,273 4708 | 865,720 4709 | 738,223 4710 | 232,883 4711 | 798,455 4712 | 898,838 4713 | 413,1023 4714 | 329,1017 4715 | 365,322 4716 | 720,854 4717 | 961,677 4718 | 522,1076 4719 | 764,1021 4720 | 403,34 4721 | 255,218 4722 | 286,447 4723 | 285,426 4724 | 676,538 4725 | 796,687 4726 | 361,1021 4727 | 725,199 4728 | 231,499 4729 | 767,217 4730 | 418,424 4731 | 920,594 4732 | 1075,395 4733 | 953,622 4734 | 859,958 4735 | 496,782 4736 | 401,667 4737 | 943,781 4738 | 996,647 4739 | 274,784 4740 | 556,274 4741 | 233,834 4742 | 934,59 4743 | 323,421 4744 | 673,382 4745 | 880,901 4746 | 627,506 4747 | 745,766 4748 | 667,850 4749 | 882,979 4750 | 799,657 4751 | 703,685 4752 | 940,608 4753 | 349,335 4754 | 643,1001 4755 | 433,417 4756 | 706,497 4757 | 923,1040 4758 | 393,957 4759 | 479,528 4760 | 708,1033 4761 | 346,990 4762 | 604,526 4763 | 359,247 4764 | 782,998 4765 | 292,1080 4766 | 810,653 4767 | 606,604 4768 | 434,922 4769 | 316,858 4770 | 940,507 4771 | 623,841 4772 | 575,1036 4773 | 681,520 4774 | 496,1019 4775 | 766,1065 4776 | 236,544 4777 | 346,734 4778 | 504,912 4779 | 308,153 4780 | 834,591 4781 | 509,618 4782 | 428,10 4783 | 652,399 4784 | 494,464 4785 | 285,1026 4786 | 553,772 4787 | 524,314 4788 | 871,910 4789 | 424,981 4790 | 354,445 4791 | 270,798 4792 | 855,835 4793 | 654,355 4794 | 230,628 4795 | 258,989 4796 | 277,716 4797 | 325,409 4798 | 640,203 4799 | 708,327 4800 | 395,1080 4801 | 239,671 4802 | 482,1071 4803 | 464,355 4804 | 608,916 4805 | 250,1050 4806 | 760,773 4807 | 622,916 4808 | 503,835 4809 | 540,425 4810 | 55,723 4811 | 510,315 4812 | 165,244 4813 | 805,147 4814 | 759,835 4815 | 609,842 4816 | 738,1023 4817 | 566,304 4818 | 678,915 4819 | 793,786 4820 | 622,536 4821 | 282,293 4822 | 553,1051 4823 | 479,848 4824 | 834,120 4825 | 66,939 4826 | 747,772 4827 | 806,927 4828 | 341,312 4829 | 761,1024 4830 | 189,143 4831 | 945,1073 4832 | 558,750 4833 | 493,413 4834 | 580,314 4835 | 403,1065 4836 | 434,320 4837 | 392,754 4838 | 522,816 4839 | 378,732 4840 | 389,941 4841 | 230,878 4842 | 454,432 4843 | 546,924 4844 | 853,826 4845 | 508,505 4846 | 802,187 4847 | 602,728 4848 | 909,990 4849 | 286,794 4850 | 475,514 4851 | 709,427 4852 | 722,349 4853 | 360,936 4854 | 883,799 4855 | 829,958 4856 | 1035,707 4857 | 338,706 4858 | 483,324 4859 | 550,597 4860 | 358,379 4861 | 932,691 4862 | 635,468 4863 | 307,932 4864 | 750,741 4865 | 352,955 4866 | 1079,647 4867 | 973,727 4868 | 425,637 4869 | 677,1009 4870 | 407,772 4871 | 571,583 4872 | 684,942 4873 | 390,890 4874 | 744,344 4875 | 328,269 4876 | 282,303 4877 | 632,104 4878 | 594,1071 4879 | 594,541 4880 | 470,616 4881 | 229,643 4882 | 288,147 4883 | 302,617 4884 | 599,603 4885 | 249,881 4886 | 849,568 4887 | 559,608 4888 | 331,899 4889 | 322,195 4890 | 349,785 4891 | 875,885 4892 | 546,505 4893 | 780,992 4894 | 575,665 4895 | 919,787 4896 | 269,1019 4897 | 207,533 4898 | 246,843 4899 | 830,986 4900 | 257,330 4901 | 601,550 4902 | 673,1073 4903 | 788,946 4904 | 581,611 4905 | 911,749 4906 | 453,805 4907 | 405,593 4908 | 536,856 4909 | 764,722 4910 | 898,24 4911 | 879,1066 4912 | 327,867 4913 | 530,829 4914 | 757,900 4915 | 285,935 4916 | 623,510 4917 | 842,954 4918 | 702,755 4919 | 329,671 4920 | 447,984 4921 | 653,1011 4922 | 363,743 4923 | 997,923 4924 | 512,885 4925 | 670,891 4926 | 664,762 4927 | 582,878 4928 | 828,1001 4929 | 966,691 4930 | 482,366 4931 | 589,823 4932 | 781,469 4933 | 129,419 4934 | 469,980 4935 | 159,583 4936 | 598,573 4937 | 623,758 4938 | 354,433 4939 | 863,917 4940 | 86,683 4941 | 254,935 4942 | 421,1047 4943 | 372,804 4944 | 296,803 4945 | 453,435 4946 | 573,962 4947 | 260,722 4948 | 334,1043 4949 | 646,301 4950 | 911,751 4951 | 521,978 4952 | 276,866 4953 | 643,848 4954 | 425,346 4955 | 411,977 4956 | 343,552 4957 | 450,930 4958 | 773,562 4959 | 691,423 4960 | 459,1051 4961 | 703,933 4962 | 274,424 4963 | 379,544 4964 | 265,941 4965 | 706,347 4966 | 468,812 4967 | 447,932 4968 | 653,1072 4969 | 516,577 4970 | 707,1081 4971 | 653,523 4972 | 1023,368 4973 | 544,16 4974 | 306,552 4975 | 845,928 4976 | 534,996 4977 | 303,259 4978 | 783,422 4979 | 740,228 4980 | 937,543 4981 | 313,641 4982 | 258,611 4983 | 919,952 4984 | 371,478 4985 | 229,1039 4986 | 232,481 4987 | 631,945 4988 | 770,566 4989 | 519,1044 4990 | 858,757 4991 | 848,815 4992 | 335,285 4993 | 407,618 4994 | 429,763 4995 | 708,600 4996 | 546,641 4997 | 986,964 4998 | 1072,142 4999 | 801,153 5000 | 867,968 5001 | 795,1069 5002 | 409,678 5003 | 441,652 5004 | 359,210 5005 | 852,118 5006 | 591,285 5007 | 343,387 5008 | 952,301 5009 | 1004,209 5010 | 723,914 5011 | 697,701 5012 | 516,418 5013 | 990,134 5014 | 557,839 5015 | 515,997 5016 | 539,546 5017 | 681,939 5018 | 766,676 5019 | 289,32 5020 | 409,536 5021 | 326,970 5022 | 691,547 5023 | 203,819 5024 | 486,547 5025 | 275,675 5026 | 972,943 5027 | 468,675 5028 | 765,157 5029 | 912,520 5030 | 571,275 5031 | 446,792 5032 | 177,578 5033 | 599,371 5034 | 524,547 5035 | 459,837 5036 | 877,695 5037 | 618,599 5038 | 1066,297 5039 | 283,565 5040 | 438,605 5041 | 372,797 5042 | 421,897 5043 | 371,502 5044 | 494,439 5045 | 598,706 5046 | 660,768 5047 | 951,940 5048 | 929,768 5049 | 713,783 5050 | 376,707 5051 | 437,753 5052 | 445,970 5053 | 695,840 5054 | 741,722 5055 | 404,968 5056 | 188,506 5057 | 610,377 5058 | 503,466 5059 | 233,796 5060 | 315,633 5061 | 598,564 5062 | 636,761 5063 | 351,272 5064 | 808,1001 5065 | 248,805 5066 | 518,491 5067 | 730,323 5068 | 25,906 5069 | 950,339 5070 | 403,977 5071 | 1007,694 5072 | 539,398 5073 | 227,520 5074 | 852,353 5075 | 157,519 5076 | 346,169 5077 | 906,971 5078 | 736,445 5079 | 1067,250 5080 | 568,531 5081 | 342,965 5082 | 416,845 5083 | 737,958 5084 | 212,983 5085 | 830,644 5086 | 258,875 5087 | 440,550 5088 | 345,792 5089 | 287,454 5090 | 271,1067 5091 | 928,802 5092 | 514,1020 5093 | 512,502 5094 | 570,266 5095 | 359,495 5096 | 488,931 5097 | 287,538 5098 | 203,546 5099 | 423,635 5100 | 668,842 5101 | 841,804 5102 | 973,334 5103 | 602,489 5104 | 913,528 5105 | 216,190 5106 | 615,43 5107 | 931,811 5108 | 398,881 5109 | 290,454 5110 | 398,228 5111 | 755,451 5112 | 497,310 5113 | 426,684 5114 | 529,745 5115 | 465,943 5116 | 324,600 5117 | 595,952 5118 | 494,295 5119 | 177,1031 5120 | 885,648 5121 | 470,1018 5122 | 181,519 5123 | 675,816 5124 | 939,974 5125 | 413,454 5126 | 627,633 5127 | 790,958 5128 | 618,879 5129 | 737,356 5130 | 437,741 5131 | 227,876 5132 | 1035,991 5133 | 942,682 5134 | 691,930 5135 | 462,441 5136 | 644,349 5137 | 679,298 5138 | 608,499 5139 | 478,734 5140 | 638,1077 5141 | 741,709 5142 | 686,442 5143 | 348,531 5144 | 572,739 5145 | 703,273 5146 | 520,740 5147 | 719,1059 5148 | 989,905 5149 | 748,227 5150 | 750,419 5151 | 639,247 5152 | 447,672 5153 | 427,671 5154 | 439,1047 5155 | 355,473 5156 | 630,343 5157 | 293,238 5158 | 553,681 5159 | 850,531 5160 | 673,285 5161 | 306,867 5162 | 723,211 5163 | 826,853 5164 | 306,1040 5165 | 346,903 5166 | 665,207 5167 | 17,189 5168 | 1080,167 5169 | 85,774 5170 | 559,343 5171 | 277,885 5172 | 251,415 5173 | 484,365 5174 | 320,269 5175 | 968,622 5176 | 870,54 5177 | 606,381 5178 | 717,183 5179 | 636,555 5180 | 878,514 5181 | 58,63 5182 | 361,618 5183 | 327,831 5184 | 585,291 5185 | 304,900 5186 | 620,670 5187 | 778,643 5188 | 317,875 5189 | 838,49 5190 | 819,849 5191 | 694,629 5192 | 664,868 5193 | 671,218 5194 | 361,529 5195 | 794,850 5196 | 271,766 5197 | 686,648 5198 | 279,563 5199 | 896,514 5200 | 354,626 5201 | 83,427 5202 | 745,660 5203 | 381,305 5204 | 839,717 5205 | 865,18 5206 | 932,591 5207 | 778,398 5208 | 457,961 5209 | 662,796 5210 | 952,1063 5211 | 630,796 5212 | 730,290 5213 | 690,695 5214 | 273,729 5215 | 652,814 5216 | 514,305 5217 | 753,613 5218 | 354,434 5219 | 668,486 5220 | 815,1061 5221 | 748,532 5222 | 839,777 5223 | 760,241 5224 | 663,904 5225 | 782,1001 5226 | 6,846 5227 | 142,546 5228 | 628,800 5229 | 934,866 5230 | 602,778 5231 | 1066,118 5232 | 497,823 5233 | 987,792 5234 | 1043,97 5235 | 493,417 5236 | 247,600 5237 | 493,909 5238 | 558,1034 5239 | 935,631 5240 | 531,785 5241 | 188,598 5242 | 565,1010 5243 | 496,322 5244 | 689,346 5245 | 703,531 5246 | 692,271 5247 | 201,588 5248 | 212,193 5249 | 496,898 5250 | 23,126 5251 | 126,662 5252 | 818,1011 5253 | 251,531 5254 | 320,97 5255 | 483,797 5256 | 737,159 5257 | 705,1003 5258 | 590,1052 5259 | 729,333 5260 | 598,653 5261 | 1070,103 5262 | 191,482 5263 | 468,450 5264 | 772,349 5265 | 675,1037 5266 | 452,1068 5267 | 770,531 5268 | 571,578 5269 | 390,514 5270 | 824,847 5271 | 319,565 5272 | 271,466 5273 | 485,303 5274 | 812,499 5275 | 187,555 5276 | 671,211 5277 | 701,927 5278 | 389,890 5279 | 437,803 5280 | 481,736 5281 | 324,859 5282 | 240,731 5283 | 588,1050 5284 | 480,605 5285 | 896,386 5286 | 871,1005 5287 | 464,944 5288 | 347,433 5289 | 822,800 5290 | 227,696 5291 | 246,444 5292 | 850,1056 5293 | 256,939 5294 | 848,835 5295 | 504,968 5296 | 627,901 5297 | 555,610 5298 | 514,915 5299 | 456,466 5300 | 915,764 5301 | 880,1061 5302 | 796,530 5303 | 627,1036 5304 | 666,476 5305 | 377,981 5306 | 896,655 5307 | 366,534 5308 | 877,1064 5309 | 350,929 5310 | 711,1037 5311 | 981,531 5312 | 465,971 5313 | 267,727 5314 | 840,614 5315 | 835,669 5316 | 566,1009 5317 | 559,1031 5318 | 515,638 5319 | 467,658 5320 | 447,497 5321 | 647,275 5322 | 850,589 5323 | 260,215 5324 | 1022,875 5325 | 620,374 5326 | 642,719 5327 | 403,344 5328 | 468,357 5329 | 558,962 5330 | 503,51 5331 | 268,648 5332 | 811,92 5333 | 526,798 5334 | 1021,152 5335 | 1035,811 5336 | 884,699 5337 | 613,430 5338 | 979,714 5339 | 308,368 5340 | 263,544 5341 | 1065,711 5342 | 615,928 5343 | 453,1076 5344 | 230,800 5345 | 967,787 5346 | 830,1019 5347 | 666,411 5348 | 797,607 5349 | 846,531 5350 | 370,587 5351 | 655,799 5352 | 428,667 5353 | 692,370 5354 | 657,955 5355 | 72,1020 5356 | 736,827 5357 | 776,451 5358 | 938,578 5359 | 751,393 5360 | 828,686 5361 | 938,587 5362 | 281,673 5363 | 764,708 5364 | 628,553 5365 | 434,712 5366 | 119,657 5367 | 749,327 5368 | 794,973 5369 | 303,813 5370 | 367,926 5371 | 55,243 5372 | 431,353 5373 | 785,826 5374 | 450,394 5375 | 647,392 5376 | 579,469 5377 | 416,45 5378 | 360,266 5379 | 260,415 5380 | 753,665 5381 | 840,934 5382 | 615,505 5383 | 995,135 5384 | 178,543 5385 | 620,1010 5386 | 779,683 5387 | 788,651 5388 | 506,560 5389 | 971,687 5390 | 978,753 5391 | 943,610 5392 | 588,381 5393 | 784,602 5394 | 363,622 5395 | 273,603 5396 | 275,398 5397 | 252,24 5398 | 781,457 5399 | 216,853 5400 | 737,620 5401 | 497,421 5402 | 951,806 5403 | 931,672 5404 | 939,142 5405 | 762,513 5406 | 630,1002 5407 | 317,591 5408 | 282,982 5409 | 421,668 5410 | 392,274 5411 | 306,226 5412 | 345,507 5413 | 464,590 5414 | 294,217 5415 | 958,692 5416 | 366,470 5417 | 748,224 5418 | 871,679 5419 | 883,879 5420 | 3,356 5421 | 515,963 5422 | 299,767 5423 | 393,1021 5424 | 610,487 5425 | 838,482 5426 | 349,758 5427 | 226,696 5428 | 446,415 5429 | 359,44 5430 | 944,941 5431 | 849,544 5432 | 681,796 5433 | 614,1076 5434 | 475,538 5435 | 924,919 5436 | 594,810 5437 | 881,505 5438 | 849,726 5439 | 742,837 5440 | 563,784 5441 | 596,376 5442 | 283,361 5443 | 663,955 5444 | 20,942 5445 | 815,577 5446 | 655,846 5447 | 439,601 5448 | 343,999 5449 | 847,62 5450 | 614,400 5451 | 468,680 5452 | 925,765 5453 | 703,274 5454 | 591,874 5455 | 303,510 5456 | 328,617 5457 | 361,1064 5458 | 607,614 5459 | 525,896 5460 | 723,716 5461 | 235,1050 5462 | 702,399 5463 | 707,605 5464 | 763,215 5465 | 891,902 5466 | 296,662 5467 | 231,367 5468 | 518,562 5469 | 504,594 5470 | 805,899 5471 | 732,727 5472 | 503,1014 5473 | 460,864 5474 | 640,524 5475 | 839,905 5476 | 604,735 5477 | 376,207 5478 | 332,300 5479 | 545,684 5480 | 734,428 5481 | 645,330 5482 | 591,759 5483 | 420,428 5484 | 913,634 5485 | 503,413 5486 | 933,765 5487 | 368,1009 5488 | 292,979 5489 | 311,767 5490 | 428,506 5491 | 563,680 5492 | 1008,504 5493 | 898,997 5494 | 307,725 5495 | 342,597 5496 | 1039,225 5497 | 282,692 5498 | 301,924 5499 | 496,910 5500 | 474,273 5501 | 339,645 5502 | 76,1006 5503 | 697,410 5504 | 335,145 5505 | 865,473 5506 | 881,523 5507 | 701,683 5508 | 324,429 5509 | 314,561 5510 | 863,482 5511 | 738,459 5512 | 317,731 5513 | 982,908 5514 | 813,959 5515 | 278,212 5516 | 372,413 5517 | 431,700 5518 | 864,988 5519 | 649,1069 5520 | 749,809 5521 | 763,807 5522 | 288,1008 5523 | 927,659 5524 | 400,889 5525 | 806,952 5526 | 670,495 5527 | 604,434 5528 | 471,784 5529 | 545,1040 5530 | 405,371 5531 | 666,840 5532 | 375,514 5533 | 285,594 5534 | 259,805 5535 | 661,956 5536 | 451,646 5537 | 947,1081 5538 | 266,1033 5539 | 862,826 5540 | 619,912 5541 | 653,820 5542 | 556,424 5543 | 753,274 5544 | 277,784 5545 | 363,885 5546 | 657,830 5547 | 276,793 5548 | 199,663 5549 | 913,696 5550 | 650,418 5551 | 285,476 5552 | 625,769 5553 | 191,646 5554 | 782,184 5555 | 583,269 5556 | 712,21 5557 | 998,640 5558 | 622,858 5559 | 584,472 5560 | 307,818 5561 | 971,619 5562 | 268,947 5563 | 156,648 5564 | 876,702 5565 | 405,478 5566 | 274,207 5567 | 602,914 5568 | 763,602 5569 | 812,868 5570 | 423,741 5571 | 260,387 5572 | 478,382 5573 | 666,946 5574 | 641,317 5575 | 909,721 5576 | 514,625 5577 | 596,800 5578 | 598,742 5579 | 763,72 5580 | 826,1041 5581 | 536,15 5582 | 363,60 5583 | 846,1055 5584 | 550,550 5585 | 247,510 5586 | 421,891 5587 | 809,144 5588 | 389,663 5589 | 922,754 5590 | 797,983 5591 | 311,819 5592 | 568,743 5593 | 800,605 5594 | 847,1049 5595 | 717,694 5596 | 821,972 5597 | 1066,376 5598 | 941,698 5599 | 586,971 5600 | 275,725 5601 | 413,801 5602 | 347,266 5603 | 191,614 5604 | 256,722 5605 | 465,473 5606 | 754,666 5607 | 467,728 5608 | 388,726 5609 | 200,636 5610 | 726,683 5611 | 396,1044 5612 | 718,760 5613 | 194,587 5614 | 298,557 5615 | 842,615 5616 | 210,861 5617 | 846,627 5618 | 169,694 5619 | 647,473 5620 | 264,439 5621 | 366,572 5622 | 699,715 5623 | 385,964 5624 | 386,658 5625 | 176,772 5626 | 481,285 5627 | 473,1045 5628 | 446,844 5629 | 792,543 5630 | 238,2 5631 | 364,474 5632 | 362,358 5633 | 378,399 5634 | 869,993 5635 | 191,490 5636 | 711,393 5637 | 348,516 5638 | 371,809 5639 | 641,951 5640 | 564,554 5641 | 282,444 5642 | 552,896 5643 | 316,631 5644 | 371,765 5645 | 489,722 5646 | 556,500 5647 | 766,175 5648 | 284,1065 5649 | 793,459 5650 | 763,288 5651 | 759,940 5652 | 551,1050 5653 | 898,499 5654 | 738,640 5655 | 541,653 5656 | 649,845 5657 | 264,826 5658 | 616,363 5659 | 864,815 5660 | 616,242 5661 | 1047,278 5662 | 90,31 5663 | 968,922 5664 | 730,801 5665 | 560,931 5666 | 603,472 5667 | 412,835 5668 | 174,566 5669 | 644,405 5670 | 638,487 5671 | 372,662 5672 | 736,1006 5673 | 272,621 5674 | 240,997 5675 | 592,1030 5676 | 745,301 5677 | 835,744 5678 | 830,732 5679 | 300,1006 5680 | 708,200 5681 | 326,1012 5682 | 649,947 5683 | 903,920 5684 | 532,389 5685 | 597,253 5686 | 498,291 5687 | 780,203 5688 | 6,1008 5689 | 865,1007 5690 | 666,890 5691 | 845,1076 5692 | 445,540 5693 | 349,275 5694 | 501,845 5695 | 709,359 5696 | 426,363 5697 | 215,6 5698 | 299,469 5699 | 250,386 5700 | 856,1051 5701 | 880,929 5702 | 771,562 5703 | 750,470 5704 | 142,573 5705 | 795,202 5706 | 287,37 5707 | 817,1077 5708 | 192,626 5709 | 689,1018 5710 | 340,612 5711 | 197,858 5712 | 930,977 5713 | 639,745 5714 | 643,347 5715 | 407,994 5716 | 329,647 5717 | 718,1003 5718 | 810,1036 5719 | 684,945 5720 | 473,557 5721 | 772,878 5722 | 383,343 5723 | 677,282 5724 | 917,553 5725 | 349,692 5726 | 95,1032 5727 | 977,893 5728 | 558,257 5729 | 755,298 5730 | 974,712 5731 | 810,943 5732 | 502,702 5733 | 511,765 5734 | 873,971 5735 | 11,214 5736 | 855,759 5737 | 758,462 5738 | 377,647 5739 | 267,570 5740 | 729,873 5741 | 543,369 5742 | 579,825 5743 | 735,483 5744 | 821,1008 5745 | 702,609 5746 | 333,711 5747 | 802,611 5748 | 356,641 5749 | 36,80 5750 | 280,441 5751 | 796,895 5752 | 280,997 5753 | 710,880 5754 | 910,1058 5755 | 828,367 5756 | 363,1056 5757 | 515,926 5758 | 746,579 5759 | 455,936 5760 | 533,365 5761 | 11,1060 5762 | 652,404 5763 | 398,317 5764 | 878,987 5765 | 708,588 5766 | 689,746 5767 | 593,382 5768 | 962,698 5769 | 227,863 5770 | 439,301 5771 | 719,899 5772 | 383,1022 5773 | 464,972 5774 | 431,1003 5775 | 277,318 5776 | 847,785 5777 | 414,2 5778 | 130,626 5779 | 214,534 5780 | 300,311 5781 | 739,867 5782 | 276,1045 5783 | 275,1010 5784 | 516,766 5785 | 675,379 5786 | 323,204 5787 | 334,442 5788 | 267,722 5789 | 742,312 5790 | 905,725 5791 | 394,993 5792 | 294,857 5793 | 386,445 5794 | 550,408 5795 | 678,948 5796 | 780,472 5797 | 313,316 5798 | 499,833 5799 | 692,208 5800 | 531,393 5801 | 365,431 5802 | 660,650 5803 | 467,1079 5804 | 716,934 5805 | 234,1023 5806 | 928,844 5807 | 780,235 5808 | 283,233 5809 | 588,454 5810 | 868,988 5811 | 623,933 5812 | 18,185 5813 | 593,525 5814 | 747,220 5815 | 251,554 5816 | 651,794 5817 | 646,469 5818 | 632,529 5819 | 446,667 5820 | 645,685 5821 | 684,230 5822 | 881,704 5823 | 416,623 5824 | 952,1043 5825 | 533,586 5826 | 413,270 5827 | 373,711 5828 | 296,472 5829 | 732,518 5830 | 503,970 5831 | 694,775 5832 | 309,822 5833 | 676,504 5834 | 257,339 5835 | 439,418 5836 | 833,831 5837 | 1072,747 5838 | 632,992 5839 | 525,565 5840 | 274,364 5841 | 530,1048 5842 | 539,808 5843 | 582,319 5844 | 52,580 5845 | 787,682 5846 | 673,762 5847 | 164,633 5848 | 756,577 5849 | 713,845 5850 | 251,501 5851 | 530,877 5852 | 585,621 5853 | 594,603 5854 | 336,259 5855 | 947,835 5856 | 638,477 5857 | 393,864 5858 | 279,254 5859 | 617,561 5860 | 296,751 5861 | 390,1021 5862 | 770,579 5863 | 907,505 5864 | 896,956 5865 | 288,1003 5866 | 735,791 5867 | 347,296 5868 | 247,954 5869 | 562,818 5870 | 733,1033 5871 | 775,737 5872 | 557,466 5873 | 765,566 5874 | 196,568 5875 | 909,579 5876 | 970,962 5877 | 868,947 5878 | 253,873 5879 | 567,592 5880 | 754,314 5881 | 683,305 5882 | 774,325 5883 | 840,803 5884 | 635,330 5885 | 561,410 5886 | 564,368 5887 | 441,425 5888 | 642,400 5889 | 726,653 5890 | 601,679 5891 | 967,650 5892 | 1025,768 5893 | 778,411 5894 | 473,479 5895 | 295,987 5896 | 126,111 5897 | 882,1049 5898 | 8,493 5899 | 556,789 5900 | 314,140 5901 | 774,648 5902 | 343,973 5903 | 765,641 5904 | 402,432 5905 | 487,744 5906 | 245,230 5907 | 362,665 5908 | 158,627 5909 | 789,853 5910 | 403,463 5911 | 369,647 5912 | 880,910 5913 | 322,197 5914 | 688,513 5915 | 638,948 5916 | 953,721 5917 | 510,850 5918 | 405,613 5919 | 214,496 5920 | 754,707 5921 | 390,530 5922 | 465,767 5923 | 553,118 5924 | 440,976 5925 | 545,747 5926 | 172,516 5927 | 891,795 5928 | 866,574 5929 | 668,616 5930 | 682,225 5931 | 515,417 5932 | 610,734 5933 | 902,636 5934 | 460,83 5935 | 557,671 5936 | 753,219 5937 | 764,1068 5938 | 688,321 5939 | 951,1058 5940 | 440,767 5941 | 238,1038 5942 | 932,883 5943 | 314,256 5944 | 732,855 5945 | 360,275 5946 | 364,975 5947 | 393,421 5948 | 409,569 5949 | 772,1042 5950 | 695,414 5951 | 374,570 5952 | 473,75 5953 | 637,716 5954 | 836,565 5955 | 573,768 5956 | 785,664 5957 | 279,780 5958 | 492,725 5959 | 278,416 5960 | 844,341 5961 | 471,670 5962 | 387,984 5963 | 203,863 5964 | 587,878 5965 | 712,446 5966 | 259,806 5967 | 792,600 5968 | 673,392 5969 | 555,549 5970 | 82,790 5971 | 712,690 5972 | 292,648 5973 | 277,408 5974 | 248,35 5975 | 431,920 5976 | 497,357 5977 | 53,955 5978 | 489,105 5979 | 668,1038 5980 | 871,670 5981 | 765,668 5982 | 736,748 5983 | 501,355 5984 | 436,479 5985 | 273,959 5986 | 262,1003 5987 | 395,683 5988 | 395,873 5989 | 476,997 5990 | 612,671 5991 | 780,980 5992 | 259,47 5993 | 711,1005 5994 | 284,676 5995 | 391,1047 5996 | 897,644 5997 | 367,667 5998 | 746,167 5999 | 841,672 6000 | 573,1001 6001 | 972,921 6002 | 480,350 6003 | 475,828 6004 | 677,957 6005 | 418,885 6006 | 568,684 6007 | 423,59 6008 | 192,722 6009 | 554,270 6010 | 327,872 6011 | 539,921 6012 | 429,972 6013 | 421,530 6014 | 711,772 6015 | 353,495 6016 | 445,680 6017 | 456,312 6018 | 19,35 6019 | 836,37 6020 | 937,588 6021 | 781,835 6022 | 211,622 6023 | 627,977 6024 | 345,556 6025 | 279,867 6026 | 413,500 6027 | 892,481 6028 | 718,1028 6029 | 916,946 6030 | 787,834 6031 | 489,363 6032 | 937,609 6033 | 439,1034 6034 | 820,1067 6035 | 469,243 6036 | 185,663 6037 | 727,508 6038 | 850,557 6039 | 785,773 6040 | 11,319 6041 | 595,319 6042 | 379,712 6043 | 875,902 6044 | 504,728 6045 | 846,105 6046 | 762,741 6047 | 741,920 6048 | 656,498 6049 | 606,456 6050 | 693,304 6051 | 252,306 6052 | 277,664 6053 | 433,539 6054 | 762,1057 6055 | 828,311 6056 | 1018,959 6057 | 832,1032 6058 | 907,713 6059 | 726,604 6060 | 415,738 6061 | 952,823 6062 | 981,575 6063 | 656,938 6064 | 922,247 6065 | 324,264 6066 | 940,903 6067 | 753,532 6068 | 527,429 6069 | 799,513 6070 | 275,791 6071 | 279,253 6072 | 751,1021 6073 | 421,639 6074 | 887,714 6075 | 778,594 6076 | 543,502 6077 | 904,604 6078 | 604,823 6079 | 722,809 6080 | 331,968 6081 | 837,799 6082 | 380,818 6083 | 698,1009 6084 | 343,64 6085 | 807,539 6086 | 192,741 6087 | 596,284 6088 | 1030,74 6089 | 423,360 6090 | 253,774 6091 | 559,1016 6092 | 1000,957 6093 | 771,238 6094 | 702,1056 6095 | 419,960 6096 | 463,684 6097 | 377,770 6098 | 518,685 6099 | 926,242 6100 | 278,169 6101 | 642,627 6102 | 691,890 6103 | 445,923 6104 | 560,578 6105 | 268,168 6106 | 756,269 6107 | 911,574 6108 | 764,574 6109 | 882,491 6110 | 656,748 6111 | 256,556 6112 | 714,688 6113 | 99,665 6114 | 422,983 6115 | 503,473 6116 | 909,719 6117 | 319,641 6118 | 663,1069 6119 | 231,662 6120 | 803,1056 6121 | 611,442 6122 | 549,891 6123 | 568,846 6124 | 514,764 6125 | 361,1061 6126 | 771,164 6127 | 658,958 6128 | 579,529 6129 | 978,12 6130 | 781,878 6131 | 106,1020 6132 | 360,458 6133 | 349,375 6134 | 575,370 6135 | 821,332 6136 | 397,366 6137 | 422,931 6138 | 287,1032 6139 | 688,313 6140 | 169,97 6141 | 442,965 6142 | 257,844 6143 | 786,1064 6144 | 748,912 6145 | 915,948 6146 | 936,872 6147 | 964,828 6148 | 369,241 6149 | 588,1075 6150 | 412,1079 6151 | 182,636 6152 | 463,568 6153 | 831,808 6154 | 892,815 6155 | 214,1075 6156 | 285,577 6157 | 488,414 6158 | 658,1021 6159 | 522,745 6160 | 243,744 6161 | 216,598 6162 | 667,772 6163 | 659,955 6164 | 831,856 6165 | 806,673 6166 | 797,962 6167 | 494,966 6168 | 490,303 6169 | 566,366 6170 | 680,766 6171 | 783,879 6172 | 905,887 6173 | 474,1016 6174 | 932,1016 6175 | 285,409 6176 | 684,813 6177 | 676,447 6178 | 778,895 6179 | 187,709 6180 | 141,1071 6181 | 901,725 6182 | 630,978 6183 | 205,742 6184 | 659,672 6185 | 713,336 6186 | 799,439 6187 | 422,884 6188 | 433,953 6189 | 398,1001 6190 | 409,465 6191 | 823,806 6192 | 918,897 6193 | 1010,469 6194 | 707,929 6195 | 302,597 6196 | 727,332 6197 | 862,1054 6198 | 948,777 6199 | 686,1064 6200 | 718,698 6201 | 12,260 6202 | 984,691 6203 | 390,721 6204 | 448,656 6205 | 833,974 6206 | 920,817 6207 | 822,871 6208 | 708,1078 6209 | 483,833 6210 | 1002,823 6211 | 27,354 6212 | 761,789 6213 | 785,383 6214 | 366,371 6215 | 546,589 6216 | 260,811 6217 | 932,952 6218 | 549,499 6219 | 366,561 6220 | 420,384 6221 | 584,993 6222 | 549,424 6223 | 593,558 6224 | 448,846 6225 | 376,812 6226 | 419,94 6227 | 328,582 6228 | 482,713 6229 | 896,661 6230 | 887,881 6231 | 833,816 6232 | 604,720 6233 | 398,666 6234 | 564,320 6235 | 295,741 6236 | 308,715 6237 | 411,869 6238 | 293,212 6239 | 178,561 6240 | 452,716 6241 | 670,993 6242 | 450,314 6243 | 757,747 6244 | 172,583 6245 | 423,894 6246 | 552,626 6247 | 262,914 6248 | 955,786 6249 | 579,402 6250 | 360,452 6251 | 257,916 6252 | 845,535 6253 | 416,751 6254 | 412,614 6255 | 539,337 6256 | 421,777 6257 | 1013,351 6258 | 240,860 6259 | 253,502 6260 | 345,480 6261 | 217,798 6262 | 450,503 6263 | 951,981 6264 | 989,677 6265 | 550,686 6266 | 431,1033 6267 | 371,327 6268 | 748,599 6269 | 268,594 6270 | 784,482 6271 | 327,435 6272 | 19,756 6273 | 697,406 6274 | 464,961 6275 | 921,1026 6276 | 844,956 6277 | 590,356 6278 | 629,335 6279 | 652,715 6280 | 729,221 6281 | 621,687 6282 | 845,1003 6283 | 458,463 6284 | 615,861 6285 | 970,667 6286 | 854,687 6287 | 737,515 6288 | 657,335 6289 | 145,569 6290 | 319,349 6291 | 557,676 6292 | 488,783 6293 | 950,586 6294 | 973,742 6295 | 745,336 6296 | 74,165 6297 | 588,158 6298 | 749,755 6299 | 183,1041 6300 | 421,876 6301 | 546,993 6302 | 629,1080 6303 | 331,621 6304 | 630,1044 6305 | 744,553 6306 | 629,935 6307 | 668,900 6308 | 486,738 6309 | 714,926 6310 | 453,900 6311 | 751,517 6312 | 757,1015 6313 | 686,623 6314 | 212,541 6315 | 625,708 6316 | 705,428 6317 | 663,737 6318 | 889,1040 6319 | 280,704 6320 | 397,671 6321 | 400,518 6322 | 502,644 6323 | 285,771 6324 | 152,552 6325 | 932,736 6326 | 828,471 6327 | 91,1054 6328 | 704,208 6329 | 966,913 6330 | 133,624 6331 | 796,763 6332 | 881,558 6333 | 358,1015 6334 | 1013,271 6335 | 867,665 6336 | 771,937 6337 | 306,654 6338 | 617,643 6339 | 729,350 6340 | 746,429 6341 | 329,184 6342 | 378,706 6343 | 552,1031 6344 | 974,577 6345 | 779,932 6346 | 380,736 6347 | 219,551 6348 | 884,26 6349 | 613,541 6350 | 311,433 6351 | 578,606 6352 | 624,435 6353 | 515,942 6354 | 417,456 6355 | 664,588 6356 | 858,1041 6357 | 320,313 6358 | 223,590 6359 | 672,658 6360 | 718,943 6361 | 737,631 6362 | 332,221 6363 | 477,1038 6364 | 453,938 6365 | 729,486 6366 | 681,1065 6367 | 177,407 6368 | 779,222 6369 | 406,832 6370 | 711,875 6371 | 938,551 6372 | 793,71 6373 | 99,390 6374 | 374,774 6375 | 276,240 6376 | 651,999 6377 | 770,323 6378 | 925,859 6379 | 660,250 6380 | 458,459 6381 | 715,827 6382 | 902,830 6383 | 470,877 6384 | 907,517 6385 | 354,766 6386 | 134,718 6387 | 713,624 6388 | 908,587 6389 | 392,1055 6390 | 815,900 6391 | 376,709 6392 | 343,780 6393 | 806,1001 6394 | 341,548 6395 | 255,767 6396 | 227,95 6397 | 313,381 6398 | 806,692 6399 | 402,817 6400 | 136,617 6401 | 847,461 6402 | 342,1072 6403 | 378,630 6404 | 963,990 6405 | 267,511 6406 | 280,1049 6407 | 783,145 6408 | 726,722 6409 | 982,773 6410 | 442,147 6411 | 778,977 6412 | 344,854 6413 | 325,658 6414 | 306,491 6415 | 960,683 6416 | 949,458 6417 | 416,280 6418 | 198,706 6419 | 382,703 6420 | 897,900 6421 | 339,458 6422 | 617,718 6423 | 961,200 6424 | 870,871 6425 | 705,303 6426 | 604,335 6427 | 736,828 6428 | 945,906 6429 | 580,763 6430 | 497,793 6431 | 901,1062 6432 | 593,820 6433 | 529,336 6434 | 868,742 6435 | 932,654 6436 | 176,603 6437 | 736,956 6438 | 656,939 6439 | 521,715 6440 | 737,256 6441 | 588,817 6442 | 113,220 6443 | 815,91 6444 | 825,871 6445 | 322,588 6446 | 545,577 6447 | 883,483 6448 | 250,71 6449 | 396,1070 6450 | 492,818 6451 | 341,1003 6452 | 971,223 6453 | 459,873 6454 | 344,845 6455 | 340,980 6456 | 344,935 6457 | 538,360 6458 | 394,544 6459 | 1044,254 6460 | 413,467 6461 | 953,908 6462 | 405,747 6463 | 572,424 6464 | 985,142 6465 | 404,316 6466 | 641,1001 6467 | 681,769 6468 | 387,560 6469 | 464,457 6470 | 638,365 6471 | 526,500 6472 | 689,882 6473 | 643,107 6474 | 267,358 6475 | 284,382 6476 | 988,308 6477 | 367,901 6478 | 675,953 6479 | 232,718 6480 | 682,384 6481 | 294,461 6482 | 756,1013 6483 | 805,663 6484 | 660,943 6485 | 1070,334 6486 | 799,908 6487 | 278,1048 6488 | 609,715 6489 | 498,905 6490 | 183,701 6491 | 276,407 6492 | 435,615 6493 | 231,512 6494 | 357,991 6495 | 319,165 6496 | 621,1046 6497 | 343,412 6498 | 839,90 6499 | 370,851 6500 | 622,660 6501 | 287,514 6502 | 878,643 6503 | 496,830 6504 | 565,888 6505 | 586,547 6506 | 1064,856 6507 | 588,815 6508 | 923,1009 6509 | 931,606 6510 | 842,222 6511 | 871,490 6512 | 620,396 6513 | 417,918 6514 | 446,619 6515 | 567,480 6516 | 606,977 6517 | 957,812 6518 | 724,1030 6519 | 735,550 6520 | 383,334 6521 | 324,499 6522 | 322,481 6523 | 578,703 6524 | 589,784 6525 | 738,667 6526 | 250,674 6527 | 565,634 6528 | 232,1074 6529 | 778,888 6530 | 557,569 6531 | 504,399 6532 | 406,387 6533 | 427,520 6534 | 736,350 6535 | 722,427 6536 | 951,635 6537 | 875,912 6538 | 691,986 6539 | 548,803 6540 | 219,539 6541 | 734,444 6542 | 272,486 6543 | 919,846 6544 | 379,927 6545 | 645,749 6546 | 671,628 6547 | 334,808 6548 | 355,380 6549 | 786,681 6550 | 241,290 6551 | 529,868 6552 | 636,249 6553 | 957,1074 6554 | 910,654 6555 | 514,524 6556 | 150,641 6557 | 829,125 6558 | 670,786 6559 | 509,452 6560 | 578,895 6561 | 467,329 6562 | 457,664 6563 | 486,645 6564 | 519,419 6565 | 702,794 6566 | 765,203 6567 | 751,1074 6568 | 641,798 6569 | 366,688 6570 | 331,470 6571 | 1062,145 6572 | 702,783 6573 | 622,476 6574 | 637,1037 6575 | 587,965 6576 | 372,356 6577 | 984,952 6578 | 496,612 6579 | 183,572 6580 | 592,913 6581 | 886,1064 6582 | 565,754 6583 | 584,663 6584 | 251,459 6585 | 721,1048 6586 | 872,684 6587 | 895,748 6588 | 853,539 6589 | 582,3 6590 | 122,753 6591 | 493,757 6592 | 350,374 6593 | 220,621 6594 | 448,731 6595 | 230,732 6596 | 953,569 6597 | 368,198 6598 | 402,982 6599 | 819,674 6600 | 376,639 6601 | 866,1055 6602 | 377,810 6603 | 540,1045 6604 | 605,412 6605 | 859,975 6606 | 1059,615 6607 | 364,262 6608 | 733,888 6609 | 409,997 6610 | 597,469 6611 | 757,424 6612 | 955,987 6613 | 613,434 6614 | 257,487 6615 | 257,1066 6616 | 321,756 6617 | 547,692 6618 | 724,348 6619 | 491,919 6620 | 444,497 6621 | 524,835 6622 | 781,352 6623 | 741,949 6624 | 274,185 6625 | 345,302 6626 | 857,779 6627 | 374,369 6628 | 676,521 6629 | 332,777 6630 | 131,122 6631 | 541,1003 6632 | 587,319 6633 | 229,97 6634 | 587,1036 6635 | 832,704 6636 | 720,439 6637 | 298,466 6638 | 276,219 6639 | 371,275 6640 | 949,790 6641 | 620,343 6642 | 399,503 6643 | 898,707 6644 | 699,961 6645 | 501,343 6646 | 352,432 6647 | 305,504 6648 | 487,363 6649 | 335,1054 6650 | 307,834 6651 | 680,802 6652 | 240,440 6653 | 582,587 6654 | 624,1047 6655 | 937,552 6656 | 874,970 6657 | 563,1014 6658 | 1010,333 6659 | 713,596 6660 | 316,676 6661 | 881,908 6662 | 189,170 6663 | 682,833 6664 | 907,791 6665 | 934,845 6666 | 330,987 6667 | 231,764 6668 | 32,419 6669 | 796,931 6670 | 259,285 6671 | 363,541 6672 | 293,263 6673 | 741,693 6674 | 869,720 6675 | 531,759 6676 | 651,707 6677 | 945,1052 6678 | 889,757 6679 | 633,782 6680 | 973,768 6681 | 791,431 6682 | 718,892 6683 | 1031,285 6684 | 259,494 6685 | 385,883 6686 | 350,956 6687 | 832,1069 6688 | 701,774 6689 | 545,591 6690 | 270,629 6691 | 266,361 6692 | 783,500 6693 | 657,467 6694 | 750,908 6695 | 655,944 6696 | 738,734 6697 | 349,989 6698 | 148,1063 6699 | 279,211 6700 | 330,561 6701 | 638,1046 6702 | 1000,59 6703 | 532,392 6704 | 904,540 6705 | 293,714 6706 | 740,928 6707 | 192,492 6708 | 890,674 6709 | 859,528 6710 | 650,827 6711 | 815,1031 6712 | 733,292 6713 | 511,283 6714 | 538,124 6715 | 761,639 6716 | 350,650 6717 | 487,490 6718 | 961,785 6719 | 421,805 6720 | 285,139 6721 | 918,634 6722 | 291,794 6723 | 865,785 6724 | 67,605 6725 | 906,821 6726 | 513,352 6727 | 223,526 6728 | 261,719 6729 | 747,964 6730 | 670,1 6731 | 660,470 6732 | 544,763 6733 | 190,591 6734 | 703,417 6735 | 220,694 6736 | 66,22 6737 | 338,907 6738 | 274,1074 6739 | 658,203 6740 | 819,456 6741 | 402,976 6742 | 810,614 6743 | 871,847 6744 | 880,747 6745 | 458,673 6746 | 175,641 6747 | 484,154 6748 | 489,354 6749 | 283,249 6750 | 835,838 6751 | 538,766 6752 | 980,911 6753 | 302,953 6754 | 331,798 6755 | 308,378 6756 | 387,738 6757 | 748,333 6758 | 263,943 6759 | 414,325 6760 | 403,90 6761 | 809,805 6762 | 807,488 6763 | 925,755 6764 | 427,1044 6765 | 663,235 6766 | 777,848 6767 | 497,767 6768 | 796,112 6769 | 1016,844 6770 | 311,1024 6771 | 631,1035 6772 | 688,439 6773 | 629,405 6774 | 627,343 6775 | 939,859 6776 | 675,326 6777 | 571,855 6778 | 912,513 6779 | 863,849 6780 | 892,826 6781 | 789,189 6782 | 275,703 6783 | 291,713 6784 | 308,849 6785 | 377,631 6786 | 301,69 6787 | 704,710 6788 | 593,774 6789 | 979,756 6790 | 363,560 6791 | 270,633 6792 | 936,796 6793 | 387,423 6794 | 244,992 6795 | 263,227 6796 | 224,820 6797 | 438,698 6798 | 673,510 6799 | 432,956 6800 | 9,188 6801 | 989,895 6802 | 835,1062 6803 | 311,216 6804 | 923,897 6805 | 753,504 6806 | 640,853 6807 | 1077,248 6808 | 473,875 6809 | 644,156 6810 | 175,369 6811 | 744,229 6812 | 726,456 6813 | 804,588 6814 | 811,79 6815 | 254,309 6816 | 390,946 6817 | 327,354 6818 | 74,520 6819 | 536,486 6820 | 539,370 6821 | 916,586 6822 | 763,125 6823 | 585,901 6824 | 899,547 6825 | 820,985 6826 | 504,837 6827 | 584,415 6828 | 959,777 6829 | 247,482 6830 | 592,604 6831 | 527,740 6832 | 560,374 6833 | 635,341 6834 | 862,832 6835 | 759,214 6836 | 378,542 6837 | 825,542 6838 | 389,685 6839 | 476,631 6840 | 418,423 6841 | 1003,532 6842 | 710,587 6843 | 278,649 6844 | 787,391 6845 | 16,293 6846 | 631,768 6847 | 939,685 6848 | 742,624 6849 | 742,602 6850 | 564,976 6851 | 759,881 6852 | 249,525 6853 | 657,216 6854 | 201,973 6855 | 573,619 6856 | 829,974 6857 | 957,742 6858 | 586,253 6859 | 450,796 6860 | 767,328 6861 | 632,734 6862 | 854,609 6863 | 194,867 6864 | 166,486 6865 | 932,985 6866 | 861,743 6867 | 537,343 6868 | 658,1015 6869 | 644,739 6870 | 324,304 6871 | 338,433 6872 | 849,798 6873 | 351,883 6874 | 297,408 6875 | 397,957 6876 | 655,249 6877 | 621,457 6878 | 460,613 6879 | 721,976 6880 | 230,658 6881 | 545,709 6882 | 824,973 6883 | 737,241 6884 | 446,479 6885 | 807,777 6886 | 461,331 6887 | 750,779 6888 | 704,803 6889 | 431,957 6890 | 748,256 6891 | 571,609 6892 | 234,619 6893 | 216,552 6894 | 135,602 6895 | 460,1003 6896 | 619,509 6897 | 551,424 6898 | 438,498 6899 | 528,1014 6900 | 756,463 6901 | 542,632 6902 | 870,713 6903 | 399,703 6904 | 674,290 6905 | 612,850 6906 | 334,953 6907 | 880,832 6908 | 578,1023 6909 | 652,747 6910 | 975,948 6911 | 755,386 6912 | 651,228 6913 | 356,827 6914 | 423,706 6915 | 476,1067 6916 | 793,447 6917 | 385,693 6918 | 374,676 6919 | 364,433 6920 | 505,917 6921 | 689,272 6922 | 869,440 6923 | 772,1041 6924 | 865,906 6925 | 728,155 6926 | 471,421 6927 | 124,253 6928 | 784,783 6929 | 185,733 6930 | 794,572 6931 | 569,757 6932 | 332,540 6933 | 676,613 6934 | 621,421 6935 | 524,834 6936 | 635,530 6937 | 750,973 6938 | 566,862 6939 | 316,349 6940 | 315,785 6941 | 457,731 6942 | 536,793 6943 | 429,983 6944 | 648,477 6945 | 336,850 6946 | 764,775 6947 | 926,739 6948 | 538,327 6949 | 884,805 6950 | 425,868 6951 | 945,931 6952 | 642,591 6953 | 720,273 6954 | 786,288 6955 | 592,546 6956 | 310,567 6957 | 911,992 6958 | 168,592 6959 | 426,639 6960 | 429,508 6961 | 499,467 6962 | 697,841 6963 | 765,1011 6964 | 868,22 6965 | 992,464 6966 | 356,765 6967 | 140,638 6968 | 541,1044 6969 | 407,686 6970 | 898,650 6971 | 347,948 6972 | 561,472 6973 | 314,231 6974 | 508,938 6975 | 914,817 6976 | 401,706 6977 | 200,583 6978 | 562,329 6979 | 727,777 6980 | 536,588 6981 | 633,642 6982 | 680,247 6983 | 44,1045 6984 | 579,259 6985 | 193,15 6986 | 935,941 6987 | 976,707 6988 | 664,660 6989 | 676,556 6990 | 469,1026 6991 | 728,869 6992 | 285,339 6993 | 183,539 6994 | 380,714 6995 | 507,596 6996 | 951,681 6997 | 960,581 6998 | 463,383 6999 | 465,510 7000 | 256,479 7001 | 902,721 7002 | 619,1020 7003 | 264,337 7004 | 657,642 7005 | 433,1065 7006 | 631,326 7007 | 277,771 7008 | 617,419 7009 | 683,344 7010 | 328,810 7011 | 837,805 7012 | 865,183 7013 | 954,716 7014 | 778,549 7015 | 348,274 7016 | 739,480 7017 | 773,141 7018 | 872,1075 7019 | 759,1013 7020 | 220,552 7021 | 414,500 7022 | 354,559 7023 | 853,1049 7024 | 544,527 7025 | 278,298 7026 | 270,801 7027 | 279,557 7028 | 500,188 7029 | 442,187 7030 | 610,762 7031 | 177,682 7032 | 249,233 7033 | 411,525 7034 | 683,202 7035 | 712,299 7036 | 133,602 7037 | 584,618 7038 | 809,76 7039 | 664,372 7040 | 773,239 7041 | 817,932 7042 | 298,658 7043 | 581,908 7044 | 735,732 7045 | 544,819 7046 | 858,578 7047 | 266,179 7048 | 829,499 7049 | 647,279 7050 | 107,691 7051 | 280,386 7052 | 944,1058 7053 | 250,374 7054 | 861,534 7055 | 893,990 7056 | 395,400 7057 | 365,383 7058 | 144,575 7059 | 636,720 7060 | 752,266 7061 | 453,444 7062 | 313,507 7063 | 282,212 7064 | 833,673 7065 | 744,376 7066 | 167,561 7067 | 693,399 7068 | 40,267 7069 | 814,1004 7070 | 394,658 7071 | 777,911 7072 | 787,756 7073 | 615,165 7074 | 782,975 7075 | 340,882 7076 | 704,669 7077 | 683,604 7078 | 331,337 7079 | 331,223 7080 | 402,702 7081 | 1079,297 7082 | 540,403 7083 | 859,891 7084 | 599,226 7085 | 399,799 7086 | 678,761 7087 | 447,918 7088 | 431,666 7089 | 817,1023 7090 | 390,594 7091 | 486,338 7092 | 596,1071 7093 | 672,300 7094 | 417,861 7095 | 713,1028 7096 | 793,716 7097 | 885,381 7098 | 887,1042 7099 | 1025,944 7100 | 931,1010 7101 | 843,1048 7102 | 795,425 7103 | 292,969 7104 | 556,831 7105 | 763,512 7106 | 5,515 7107 | 872,546 7108 | 280,177 7109 | 336,183 7110 | 824,90 7111 | 177,546 7112 | 219,838 7113 | 972,668 7114 | 786,1037 7115 | 267,939 7116 | 756,761 7117 | 833,85 7118 | 686,389 7119 | 916,917 7120 | 499,811 7121 | 909,1066 7122 | 860,932 7123 | 243,103 7124 | 265,46 7125 | 274,674 7126 | 443,965 7127 | 187,606 7128 | 1036,837 7129 | 609,782 7130 | 310,147 7131 | 549,511 7132 | 909,820 7133 | 790,196 7134 | 630,691 7135 | 830,799 7136 | 430,525 7137 | 299,847 7138 | 170,573 7139 | 968,801 7140 | 582,877 7141 | 475,352 7142 | 522,675 7143 | 167,134 7144 | 275,942 7145 | 600,492 7146 | 271,518 7147 | 483,480 7148 | 793,116 7149 | 264,382 7150 | 223,824 7151 | 187,629 7152 | 940,780 7153 | 416,740 7154 | 747,1025 7155 | 336,1054 7156 | 321,1081 7157 | 321,1030 7158 | 378,1078 7159 | 621,698 7160 | 351,941 7161 | 762,267 7162 | 869,628 7163 | 822,172 7164 | 302,592 7165 | 310,496 7166 | 213,805 7167 | 638,789 7168 | 563,370 7169 | 570,662 7170 | 759,469 7171 | 806,90 7172 | 380,853 7173 | 454,1079 7174 | 93,703 7175 | 939,989 7176 | 108,52 7177 | 443,788 7178 | 726,468 7179 | 454,721 7180 | 881,875 7181 | 303,841 7182 | 880,964 7183 | 498,618 7184 | 575,719 7185 | 670,524 7186 | 358,401 7187 | 588,867 7188 | 712,268 7189 | 187,73 7190 | 744,426 7191 | 275,310 7192 | 7,907 7193 | 439,502 7194 | 290,240 7195 | 297,879 7196 | 666,258 7197 | 238,207 7198 | 445,870 7199 | 703,298 7200 | 917,947 7201 | 644,823 7202 | 306,404 7203 | 419,379 7204 | 316,402 7205 | 333,182 7206 | 388,636 7207 | 883,559 7208 | 524,639 7209 | 885,782 7210 | 667,795 7211 | 281,229 7212 | 918,646 7213 | 328,43 7214 | 500,556 7215 | 715,1052 7216 | 838,951 7217 | 783,490 7218 | 786,456 7219 | 355,582 7220 | 408,1002 7221 | 667,862 7222 | 496,463 7223 | 838,81 7224 | 608,649 7225 | 589,232 7226 | 1069,743 7227 | 820,95 7228 | 287,816 7229 | 292,438 7230 | 654,640 7231 | 598,449 7232 | 242,633 7233 | 598,763 7234 | 611,580 7235 | 744,957 7236 | 266,990 7237 | 674,328 7238 | 652,693 7239 | 706,450 7240 | 581,447 7241 | 356,176 7242 | 829,984 7243 | 258,889 7244 | 116,980 7245 | 149,393 7246 | 567,432 7247 | 660,182 7248 | 733,93 7249 | 327,1032 7250 | 825,853 7251 | 922,927 7252 | 617,866 7253 | 731,237 7254 | 386,344 7255 | 611,401 7256 | 300,1058 7257 | 660,567 7258 | 484,696 7259 | 254,980 7260 | 560,524 7261 | 535,1067 7262 | 325,190 7263 | 278,404 7264 | 242,740 7265 | 518,769 7266 | 892,1001 7267 | 238,575 7268 | 232,691 7269 | 747,611 7270 | 844,848 7271 | 875,625 7272 | 323,957 7273 | 312,194 7274 | 264,739 7275 | 722,678 7276 | 683,745 7277 | 240,808 7278 | 321,733 7279 | 893,842 7280 | 444,225 7281 | 747,487 7282 | 728,1081 7283 | 692,321 7284 | 655,597 7285 | 616,890 7286 | 813,86 7287 | 259,628 7288 | 988,948 7289 | 546,901 7290 | 481,891 7291 | 852,509 7292 | 241,446 7293 | 651,295 7294 | 452,582 7295 | 285,829 7296 | 550,599 7297 | 835,689 7298 | 903,556 7299 | 33,366 7300 | 619,1022 7301 | 303,768 7302 | 421,435 7303 | 546,913 7304 | 415,457 7305 | 236,683 7306 | 198,179 7307 | 661,979 7308 | 751,811 7309 | 548,551 7310 | 548,546 7311 | 654,403 7312 | 818,991 7313 | 978,733 7314 | 618,959 7315 | 539,818 7316 | 842,710 7317 | 371,671 7318 | 461,1075 7319 | 208,758 7320 | 606,746 7321 | 869,926 7322 | 428,698 7323 | 521,825 7324 | 383,1034 7325 | 667,998 7326 | 586,750 7327 | 679,959 7328 | 747,377 7329 | 767,1034 7330 | 580,594 7331 | 533,696 7332 | 610,759 7333 | 906,397 7334 | 467,719 7335 | 12,70 7336 | 667,478 7337 | 725,397 7338 | 462,494 7339 | 576,834 7340 | 836,1070 7341 | 884,561 7342 | 247,225 7343 | 98,888 7344 | 353,237 7345 | 848,707 7346 | 482,1042 7347 | 712,294 7348 | 337,669 7349 | 660,300 7350 | 815,494 7351 | 530,939 7352 | 226,556 7353 | 266,306 7354 | 411,846 7355 | 612,849 7356 | 571,354 7357 | 846,741 7358 | 648,616 7359 | 723,277 7360 | 454,722 7361 | 690,1032 7362 | 303,913 7363 | 207,406 7364 | 908,591 7365 | 372,478 7366 | 747,1074 7367 | 334,744 7368 | 701,679 7369 | 289,1068 7370 | 567,252 7371 | 687,405 7372 | 706,884 7373 | 532,868 7374 | 980,653 7375 | 315,725 7376 | 233,861 7377 | 706,995 7378 | 318,391 7379 | 568,981 7380 | 170,53 7381 | 329,826 7382 | 162,655 7383 | 554,1054 7384 | 360,704 7385 | 361,233 7386 | 936,764 7387 | 960,70 7388 | 733,562 7389 | 294,789 7390 | 400,458 7391 | 595,700 7392 | 672,1025 7393 | 919,894 7394 | 516,257 7395 | 796,551 7396 | 61,802 7397 | 290,775 7398 | 598,924 7399 | 688,614 7400 | 390,470 7401 | 462,425 7402 | 392,687 7403 | 434,679 7404 | 712,224 7405 | 993,68 7406 | 906,652 7407 | 390,822 7408 | 134,677 7409 | 432,1026 7410 | 782,188 7411 | 397,511 7412 | 429,803 7413 | 783,720 7414 | 54,856 7415 | 607,684 7416 | 265,603 7417 | 742,742 7418 | 429,985 7419 | 253,997 7420 | 817,541 7421 | 495,743 7422 | 351,771 7423 | 430,627 7424 | 227,731 7425 | 448,615 7426 | 413,628 7427 | 271,714 7428 | 565,306 7429 | 677,589 7430 | 673,674 7431 | 365,984 7432 | 773,1055 7433 | 1010,19 7434 | 881,871 7435 | 758,793 7436 | 949,792 7437 | 695,650 7438 | 472,214 7439 | 365,569 7440 | 910,955 7441 | 481,843 7442 | 756,690 7443 | 683,935 7444 | 796,470 7445 | 761,591 7446 | 823,797 7447 | 940,579 7448 | 326,731 7449 | 452,1043 7450 | 521,894 7451 | 506,553 7452 | 390,652 7453 | 436,1074 7454 | 378,543 7455 | 1069,556 7456 | 750,141 7457 | 253,320 7458 | 610,619 7459 | 965,967 7460 | 773,161 7461 | 474,435 7462 | 695,577 7463 | 451,989 7464 | 704,766 7465 | 573,959 7466 | 297,142 7467 | 688,881 7468 | 487,380 7469 | 791,141 7470 | 726,264 7471 | 661,523 7472 | 827,266 7473 | 798,184 7474 | 687,524 7475 | 694,465 7476 | 334,417 7477 | 223,21 7478 | 556,872 7479 | 251,849 7480 | 573,973 7481 | 58,1070 7482 | 218,879 7483 | 367,1059 7484 | 217,848 7485 | 107,133 7486 | 950,563 7487 | 721,1007 7488 | 486,523 7489 | 537,381 7490 | 565,385 7491 | 440,697 7492 | 280,792 7493 | 259,264 7494 | 468,579 7495 | 89,729 7496 | 845,70 7497 | 440,712 7498 | 376,798 7499 | 405,625 7500 | 1033,655 7501 | 310,376 7502 | 473,537 7503 | 214,615 7504 | 132,155 7505 | 850,253 7506 | 957,1004 7507 | 384,600 7508 | 672,762 7509 | 617,762 7510 | 408,1041 7511 | 544,349 7512 | 504,505 7513 | 602,634 7514 | 853,998 7515 | 789,507 7516 | 343,920 7517 | 967,1066 7518 | 805,894 7519 | 339,283 7520 | 631,630 7521 | 276,285 7522 | 497,627 7523 | 277,1044 7524 | 219,650 7525 | 799,158 7526 | 479,397 7527 | 728,789 7528 | 611,762 7529 | 874,486 7530 | 968,972 7531 | 806,1025 7532 | 348,553 7533 | 980,271 7534 | 779,534 7535 | 763,270 7536 | 278,909 7537 | 343,1027 7538 | 195,564 7539 | 564,804 7540 | 602,938 7541 | 931,74 7542 | 570,925 7543 | 653,568 7544 | 197,717 7545 | 455,921 7546 | 724,246 7547 | 295,141 7548 | 750,947 7549 | 729,962 7550 | 570,1073 7551 | 900,894 7552 | 870,1030 7553 | 330,314 7554 | 1062,350 7555 | 854,321 7556 | 461,351 7557 | 158,332 7558 | 726,976 7559 | 837,1045 7560 | 488,459 7561 | 717,244 7562 | 598,660 7563 | 747,571 7564 | 172,26 7565 | 605,285 7566 | 1042,189 7567 | 348,726 7568 | 730,845 7569 | 819,770 7570 | 198,539 7571 | 430,791 7572 | 653,346 7573 | 671,205 7574 | 63,539 7575 | 885,569 7576 | 275,239 7577 | 577,790 7578 | 929,637 7579 | 871,798 7580 | 354,964 7581 | 649,210 7582 | 802,27 7583 | 810,314 7584 | 216,695 7585 | 724,683 7586 | 882,862 7587 | 743,711 7588 | 716,443 7589 | 483,989 7590 | 637,216 7591 | 670,674 7592 | 796,316 7593 | 672,500 7594 | 89,267 7595 | 437,680 7596 | 189,581 7597 | 415,311 7598 | 618,629 7599 | 32,273 7600 | 688,931 7601 | 1059,310 7602 | 354,439 7603 | 656,781 7604 | 335,648 7605 | 547,627 7606 | 183,509 7607 | 547,256 7608 | 1065,1017 7609 | 281,273 7610 | 690,25 7611 | 510,550 7612 | 999,636 7613 | 518,476 7614 | 576,464 7615 | 208,1012 7616 | 623,654 7617 | 357,448 7618 | 538,1043 7619 | 300,485 7620 | 842,530 7621 | 499,416 7622 | 665,972 7623 | 832,1060 7624 | 259,922 7625 | 533,773 7626 | 594,232 7627 | 540,1035 7628 | 164,558 7629 | 446,564 7630 | 636,1024 7631 | 722,237 7632 | 668,897 7633 | 658,1062 7634 | 602,550 7635 | 922,932 7636 | 234,823 7637 | 817,1034 7638 | 948,348 7639 | 434,873 7640 | 906,738 7641 | 593,679 7642 | 834,43 7643 | 133,622 7644 | 333,228 7645 | 311,676 7646 | 911,1000 7647 | 626,439 7648 | 340,374 7649 | 385,1080 7650 | 787,950 7651 | 344,189 7652 | 757,633 7653 | 284,781 7654 | 893,713 7655 | 287,648 7656 | 790,878 7657 | 1000,638 7658 | 546,748 7659 | 498,572 7660 | 864,549 7661 | 704,675 7662 | 308,913 7663 | 587,322 7664 | 476,919 7665 | 837,1002 7666 | 597,813 7667 | 515,697 7668 | 718,171 7669 | 457,1031 7670 | 376,642 7671 | 911,503 7672 | 1081,67 7673 | 269,1001 7674 | 517,520 7675 | 242,891 7676 | 796,19 7677 | 328,853 7678 | 551,512 7679 | 521,208 7680 | 510,709 7681 | 80,1080 7682 | 216,335 7683 | 455,979 7684 | 466,988 7685 | 585,273 7686 | 869,514 7687 | 571,594 7688 | 583,615 7689 | 424,863 7690 | 209,296 7691 | 706,84 7692 | 963,713 7693 | 754,465 7694 | 692,35 7695 | 788,190 7696 | 848,1056 7697 | 728,559 7698 | 236,570 7699 | 711,359 7700 | 984,766 7701 | 816,1013 7702 | 861,853 7703 | 458,804 7704 | 895,612 7705 | 851,1050 7706 | 872,122 7707 | 468,970 7708 | 533,312 7709 | 732,164 7710 | 684,507 7711 | 867,885 7712 | 492,999 7713 | 661,254 7714 | 1033,1072 7715 | 953,814 7716 | 580,612 7717 | 670,749 7718 | 558,15 7719 | 854,657 7720 | 331,552 7721 | 510,483 7722 | 752,131 7723 | 517,697 7724 | 717,878 7725 | 652,20 7726 | 805,482 7727 | 909,850 7728 | 454,485 7729 | 357,341 7730 | 245,215 7731 | 680,349 7732 | 1019,511 7733 | 782,545 7734 | 690,891 7735 | 237,1006 7736 | 244,529 7737 | 565,292 7738 | 852,648 7739 | 449,514 7740 | 551,735 7741 | 462,503 7742 | 657,383 7743 | 542,752 7744 | 10,793 7745 | 376,273 7746 | 377,288 7747 | 184,612 7748 | 607,254 7749 | 316,423 7750 | 544,267 7751 | 375,1064 7752 | 466,390 7753 | 307,720 7754 | 184,631 7755 | 872,588 7756 | 810,1011 7757 | 631,25 7758 | 560,972 7759 | 586,940 7760 | 710,747 7761 | 921,939 7762 | 534,1038 7763 | 268,213 7764 | 438,325 7765 | 465,926 7766 | 150,208 7767 | 648,388 7768 | 677,780 7769 | 698,673 7770 | 727,834 7771 | 146,298 7772 | 320,263 7773 | 981,653 7774 | 733,687 7775 | 244,434 7776 | 784,529 7777 | 240,685 7778 | 816,658 7779 | 459,221 7780 | 882,647 7781 | 439,994 7782 | 731,714 7783 | 305,903 7784 | 366,855 7785 | 509,961 7786 | 851,609 7787 | 840,3 7788 | 545,811 7789 | 182,143 7790 | 371,132 7791 | 360,57 7792 | 307,539 7793 | 941,837 7794 | 560,458 7795 | 653,893 7796 | 725,817 7797 | 915,433 7798 | 986,900 7799 | 544,553 7800 | 868,938 7801 | 488,286 7802 | 993,680 7803 | 705,755 7804 | 562,572 7805 | 514,946 7806 | 321,437 7807 | 818,1020 7808 | 807,535 7809 | 588,733 7810 | 508,1003 7811 | 905,1052 7812 | 979,788 7813 | 952,298 7814 | 864,1020 7815 | 244,1022 7816 | 624,958 7817 | 432,830 7818 | 658,921 7819 | 301,724 7820 | 655,201 7821 | 864,515 7822 | 343,932 7823 | 615,352 7824 | 777,531 7825 | 464,836 7826 | 870,899 7827 | 701,738 7828 | 430,799 7829 | 227,627 7830 | 743,842 7831 | 654,825 7832 | 778,525 7833 | 419,351 7834 | 218,579 7835 | 338,707 7836 | 855,322 7837 | 594,476 7838 | 263,581 7839 | 587,300 7840 | 776,1073 7841 | 746,166 7842 | 391,965 7843 | 764,97 7844 | 300,963 7845 | 547,712 7846 | 11,145 7847 | 329,889 7848 | 889,817 7849 | 376,800 7850 | 293,143 7851 | 629,808 7852 | 675,365 7853 | 724,547 7854 | 498,509 7855 | 761,693 7856 | 483,1015 7857 | 349,435 7858 | 730,508 7859 | 174,730 7860 | 616,642 7861 | 759,434 7862 | 757,1049 7863 | 293,362 7864 | 974,706 7865 | 784,749 7866 | 207,76 7867 | 503,464 7868 | 434,620 7869 | 680,970 7870 | 448,1012 7871 | 589,896 7872 | 893,1021 7873 | 232,442 7874 | 307,982 7875 | 321,794 7876 | 657,813 7877 | 539,585 7878 | 525,973 7879 | 776,242 7880 | 405,463 7881 | 234,276 7882 | 291,633 7883 | 490,301 7884 | 906,891 7885 | 924,886 7886 | 905,589 7887 | 360,178 7888 | 276,263 7889 | 696,961 7890 | 744,895 7891 | 300,436 7892 | 938,878 7893 | 736,898 7894 | 927,690 7895 | 74,139 7896 | 711,689 7897 | 596,276 7898 | 736,245 7899 | 972,626 7900 | 301,898 7901 | 879,546 7902 | 561,944 7903 | 753,293 7904 | 691,1013 7905 | 505,604 7906 | 661,271 7907 | 664,834 7908 | 770,577 7909 | 477,688 7910 | 866,444 7911 | 546,926 7912 | 804,41 7913 | 765,821 7914 | 816,789 7915 | 618,581 7916 | 249,215 7917 | 702,929 7918 | 754,171 7919 | 773,1022 7920 | 970,651 7921 | 916,793 7922 | 793,736 7923 | 331,745 7924 | 308,172 7925 | 405,796 7926 | 240,463 7927 | 666,975 7928 | 435,1062 7929 | 780,311 7930 | 153,733 7931 | 917,818 7932 | 339,375 7933 | 827,943 7934 | 148,497 7935 | 477,342 7936 | 768,1058 7937 | 764,822 7938 | 452,755 7939 | 813,709 7940 | 280,470 7941 | 907,788 7942 | 309,804 7943 | 262,658 7944 | 609,509 7945 | 507,518 7946 | 463,414 7947 | 900,976 7948 | 337,324 7949 | 577,448 7950 | 258,873 7951 | 87,677 7952 | 300,829 7953 | 299,617 7954 | 760,924 7955 | 511,686 7956 | 319,574 7957 | 214,638 7958 | 266,432 7959 | 895,937 7960 | 908,419 7961 | 896,822 7962 | 725,153 7963 | 44,674 7964 | 914,591 7965 | 900,1049 7966 | 824,758 7967 | 622,873 7968 | 911,980 7969 | 383,514 7970 | 860,55 7971 | 714,529 7972 | 204,748 7973 | 335,675 7974 | 903,863 7975 | 360,583 7976 | 665,636 7977 | 838,892 7978 | 3,402 7979 | 696,710 7980 | 827,818 7981 | 318,526 7982 | 450,949 7983 | 759,11 7984 | 280,489 7985 | 635,966 7986 | 440,915 7987 | 768,1005 7988 | 774,193 7989 | 648,723 7990 | 750,713 7991 | 761,322 7992 | 505,978 7993 | 485,453 7994 | 925,874 7995 | 782,669 7996 | 565,277 7997 | 824,52 7998 | 772,732 7999 | 850,644 8000 | 974,983 8001 | 505,128 8002 | 520,902 8003 | 448,501 8004 | 669,397 8005 | 883,962 8006 | 614,713 8007 | 285,237 8008 | 477,842 8009 | 380,329 8010 | 719,531 8011 | 170,694 8012 | 867,629 8013 | 389,925 8014 | 893,996 8015 | 490,460 8016 | 387,871 8017 | 254,636 8018 | 393,596 8019 | 768,971 8020 | 734,369 8021 | 944,791 8022 | 498,349 8023 | 699,568 8024 | 567,741 8025 | 499,568 8026 | 895,225 8027 | 767,680 8028 | 297,806 8029 | 315,484 8030 | 556,1028 8031 | 429,476 8032 | 329,252 8033 | 752,996 8034 | 683,435 8035 | 938,910 8036 | 460,1052 8037 | 538,184 8038 | 499,787 8039 | 651,976 8040 | 970,852 8041 | 880,686 8042 | 821,887 8043 | 155,644 8044 | 885,520 8045 | 454,671 8046 | 412,603 8047 | 93,1028 8048 | 350,942 8049 | 342,605 8050 | 722,912 8051 | 877,915 8052 | 405,958 8053 | 390,792 8054 | 465,562 8055 | 436,329 8056 | 196,727 8057 | 763,638 8058 | 243,546 8059 | 709,711 8060 | 558,931 8061 | 624,340 8062 | 764,694 8063 | 416,462 8064 | 250,327 8065 | 955,1045 8066 | 840,999 8067 | 868,796 8068 | 540,577 8069 | 323,911 8070 | 52,1053 8071 | 501,571 8072 | 579,1040 8073 | 292,177 8074 | 744,705 8075 | 252,784 8076 | 380,784 8077 | 677,718 8078 | 615,654 8079 | 540,107 8080 | 415,377 8081 | 958,1020 8082 | 827,613 8083 | 603,652 8084 | 195,749 8085 | 786,115 8086 | 861,655 8087 | 584,747 8088 | 191,936 8089 | 616,546 8090 | 307,802 8091 | 46,879 8092 | 5,577 8093 | 136,581 8094 | 230,792 8095 | 639,309 8096 | 149,148 8097 | 334,275 8098 | 719,928 8099 | 254,551 8100 | 770,1023 8101 | 724,341 8102 | 734,926 8103 | 588,1000 8104 | 284,903 8105 | 343,489 8106 | 664,706 8107 | 200,706 8108 | 710,707 8109 | 728,626 8110 | 598,788 8111 | 1017,1046 8112 | 288,522 8113 | 371,280 8114 | 878,708 8115 | 799,100 8116 | 369,1037 8117 | 812,673 8118 | 273,608 8119 | 679,784 8120 | 365,493 8121 | 917,710 8122 | 901,570 8123 | 432,586 8124 | 656,1081 8125 | 596,466 8126 | 162,554 8127 | 200,577 8128 | 574,985 8129 | 259,656 8130 | 702,693 8131 | 761,468 8132 | 591,433 8133 | 371,147 8134 | 341,947 8135 | 866,43 8136 | 932,721 8137 | 955,923 8138 | 285,460 8139 | 403,663 8140 | 680,956 8141 | 171,533 8142 | 536,776 8143 | 48,563 8144 | 460,511 8145 | 198,1052 8146 | 218,488 8147 | 829,122 8148 | 914,552 8149 | 523,691 8150 | 695,775 8151 | 252,501 8152 | 787,982 8153 | 387,891 8154 | 979,754 8155 | 653,1005 8156 | 343,411 8157 | 779,188 8158 | 953,1072 8159 | 304,762 8160 | 485,944 8161 | 331,907 8162 | 103,973 8163 | 676,816 8164 | 848,1051 8165 | 347,608 8166 | 746,804 8167 | 955,460 8168 | 429,598 8169 | 173,726 8170 | 886,628 8171 | 905,408 8172 | 421,669 8173 | 990,695 8174 | 944,805 8175 | 361,887 8176 | 373,658 8177 | 47,1000 8178 | 741,333 8179 | 803,912 8180 | 925,857 8181 | 543,556 8182 | 815,950 8183 | 787,1049 8184 | 721,290 8185 | 427,586 8186 | 678,705 8187 | 507,958 8188 | 789,882 8189 | 176,640 8190 | 512,576 8191 | 785,484 8192 | 554,1016 8193 | 430,879 8194 | 422,933 8195 | 372,366 8196 | 930,1016 8197 | 203,585 8198 | 829,54 8199 | 836,753 8200 | 47,195 8201 | 784,687 8202 | 492,943 8203 | 364,136 8204 | 719,635 8205 | 770,625 8206 | 841,66 8207 | 366,929 8208 | 536,1011 8209 | 811,596 8210 | 31,735 8211 | 550,820 8212 | 791,170 8213 | 844,1077 8214 | 490,382 8215 | 337,468 8216 | 778,739 8217 | 423,1024 8218 | 673,614 8219 | 752,254 8220 | 609,248 8221 | 374,988 8222 | 702,223 8223 | 826,1028 8224 | 86,691 8225 | 680,1024 8226 | 439,562 8227 | 635,1016 8228 | 505,560 8229 | 1054,775 8230 | 711,852 8231 | 613,668 8232 | 389,314 8233 | 845,1046 8234 | 660,1032 8235 | 419,773 8236 | 297,257 8237 | 755,544 8238 | 955,647 8239 | 298,428 8240 | 210,209 8241 | 476,722 8242 | 458,332 8243 | 506,306 8244 | 449,995 8245 | 751,740 8246 | 458,817 8247 | 262,912 8248 | 48,206 8249 | 53,756 8250 | 840,1012 8251 | 977,820 8252 | 319,272 8253 | 84,714 8254 | 683,830 8255 | 357,195 8256 | 346,257 8257 | 511,613 8258 | 180,711 8259 | 710,896 8260 | 390,433 8261 | 807,945 8262 | 445,821 8263 | 177,604 8264 | 738,377 8265 | 355,53 8266 | 524,973 8267 | 681,907 8268 | 823,938 8269 | 815,909 8270 | 828,895 8271 | 338,1052 8272 | 546,721 8273 | 552,951 8274 | 472,527 8275 | 720,944 8276 | 932,919 8277 | 755,302 8278 | 919,873 8279 | 1074,1064 8280 | 649,912 8281 | 113,475 8282 | 872,982 8283 | 303,866 8284 | 519,294 8285 | 479,562 8286 | 284,811 8287 | 596,626 8288 | 390,686 8289 | 521,519 8290 | 796,568 8291 | 421,620 8292 | 301,577 8293 | 681,320 8294 | 308,469 8295 | 671,1003 8296 | 219,819 8297 | 291,362 8298 | 115,1047 8299 | 678,434 8300 | 175,463 8301 | 20,728 8302 | 791,576 8303 | 926,628 8304 | 276,530 8305 | 981,946 8306 | 294,1055 8307 | 1034,530 8308 | 331,601 8309 | 537,1060 8310 | 627,954 8311 | 495,585 8312 | 691,492 8313 | 800,776 8314 | 821,922 8315 | 727,556 8316 | 666,756 8317 | 356,671 8318 | 452,1005 8319 | 793,822 8320 | 977,970 8321 | 307,392 8322 | 945,573 8323 | 344,811 8324 | 372,352 8325 | 231,602 8326 | 641,978 8327 | 574,359 8328 | 111,821 8329 | 255,1001 8330 | 887,719 8331 | 823,726 8332 | 814,997 8333 | 326,404 8334 | 101,577 8335 | 146,816 8336 | 490,511 8337 | 369,519 8338 | 300,261 8339 | 540,455 8340 | 458,371 8341 | 645,517 8342 | 422,385 8343 | 646,210 8344 | 903,732 8345 | 571,747 8346 | 937,906 8347 | 869,860 8348 | 275,818 8349 | 651,523 8350 | 229,557 8351 | 266,283 8352 | 126,950 8353 | 895,982 8354 | 981,979 8355 | 774,957 8356 | 221,590 8357 | 772,949 8358 | 596,830 8359 | 519,1038 8360 | 525,981 8361 | 663,123 8362 | 827,729 8363 | 701,369 8364 | 530,392 8365 | 840,569 8366 | 533,779 8367 | 669,452 8368 | 593,253 8369 | 940,1004 8370 | 968,880 8371 | 925,1029 8372 | 848,807 8373 | 513,504 8374 | 667,833 8375 | 918,1044 8376 | 240,199 8377 | 368,148 8378 | 301,365 8379 | 923,496 8380 | 141,597 8381 | 969,962 8382 | 739,923 8383 | 961,653 8384 | 746,316 8385 | 338,239 8386 | 947,627 8387 | 939,975 8388 | 965,754 8389 | 336,493 8390 | 832,494 8391 | 389,807 8392 | 108,28 8393 | 901,254 8394 | 756,633 8395 | 53,452 8396 | 823,284 8397 | 909,373 8398 | 397,831 8399 | 547,399 8400 | 116,802 8401 | 850,1022 8402 | 265,804 8403 | 281,786 8404 | 377,762 8405 | 443,651 8406 | 480,503 8407 | 929,965 8408 | 767,214 8409 | 634,887 8410 | 671,728 8411 | 809,774 8412 | 714,336 8413 | 391,329 8414 | 394,691 8415 | 514,582 8416 | 915,601 8417 | 923,621 8418 | 396,709 8419 | 115,823 8420 | 791,457 8421 | 957,639 8422 | 547,927 8423 | 322,183 8424 | 199,778 8425 | 930,816 8426 | 285,1064 8427 | 321,740 8428 | 756,180 8429 | 223,553 8430 | 713,187 8431 | 847,957 8432 | 891,817 8433 | 496,848 8434 | 428,898 8435 | 808,573 8436 | 697,291 8437 | 501,457 8438 | 803,916 8439 | 628,907 8440 | 509,897 8441 | 570,615 8442 | 437,822 8443 | 491,371 8444 | 738,18 8445 | 502,944 8446 | 372,236 8447 | 613,978 8448 | 919,958 8449 | 464,562 8450 | 787,137 8451 | 17,949 8452 | 242,885 8453 | 662,902 8454 | 750,1048 8455 | 427,813 8456 | 547,705 8457 | 820,525 8458 | 529,452 8459 | 401,860 8460 | 256,265 8461 | 629,682 8462 | 330,767 8463 | 752,103 8464 | 642,269 8465 | 488,749 8466 | 550,624 8467 | 415,546 8468 | 734,780 8469 | 565,483 8470 | 773,420 8471 | 878,1078 8472 | 974,813 8473 | 775,972 8474 | 381,963 8475 | 659,1009 8476 | 399,383 8477 | 973,700 8478 | 652,897 8479 | 750,664 8480 | 835,564 8481 | 710,503 8482 | 320,685 8483 | 549,977 8484 | 665,681 8485 | 490,581 8486 | 750,960 8487 | 859,951 8488 | 661,298 8489 | 246,863 8490 | 260,338 8491 | 204,863 8492 | 570,465 8493 | 650,361 8494 | 665,649 8495 | 870,601 8496 | 382,264 8497 | 784,137 8498 | 703,439 8499 | 925,864 8500 | 808,661 8501 | 779,438 8502 | 897,786 8503 | 777,649 8504 | 251,611 8505 | 160,645 8506 | 181,517 8507 | 873,304 8508 | 760,244 8509 | 619,471 8510 | 512,959 8511 | 967,923 8512 | 685,823 8513 | 467,510 8514 | 379,272 8515 | 746,354 8516 | 822,140 8517 | 546,1055 8518 | 256,82 8519 | 743,598 8520 | 605,704 8521 | 807,543 8522 | 603,711 8523 | 715,382 8524 | 533,581 8525 | 646,149 8526 | 891,726 8527 | 731,960 8528 | 784,943 8529 | 438,362 8530 | 164,724 8531 | 693,1042 8532 | 787,223 8533 | 339,523 8534 | 687,379 8535 | 638,695 8536 | 331,152 8537 | 556,639 8538 | 782,400 8539 | 603,279 8540 | 726,299 8541 | 900,1015 8542 | 294,1017 8543 | 388,938 8544 | 556,445 8545 | 703,895 8546 | 761,721 8547 | 442,909 8548 | 651,915 8549 | 965,825 8550 | 208,669 8551 | 537,995 8552 | 697,939 8553 | 263,446 8554 | 660,485 8555 | 665,1057 8556 | 988,921 8557 | 498,426 8558 | 462,333 8559 | 629,1053 8560 | 761,366 8561 | 193,648 8562 | 681,521 8563 | 528,520 8564 | 939,446 8565 | 560,246 8566 | 951,594 8567 | 854,998 8568 | 664,603 8569 | 687,817 8570 | 613,752 8571 | 549,664 8572 | 349,292 8573 | 983,946 8574 | 661,612 8575 | 435,883 8576 | 475,1013 8577 | 418,1033 8578 | 246,312 8579 | 653,783 8580 | 360,1003 8581 | 790,582 8582 | 546,627 8583 | 363,266 8584 | 386,1034 8585 | 736,779 8586 | 598,892 8587 | 234,583 8588 | 203,520 8589 | 136,1032 8590 | 286,823 8591 | 381,889 8592 | 379,911 8593 | 334,922 8594 | 369,431 8595 | 356,920 8596 | 238,642 8597 | 347,504 8598 | 505,390 8599 | 775,441 8600 | 390,267 8601 | 1033,1077 8602 | 598,849 8603 | 886,940 8604 | 671,678 8605 | 941,861 8606 | 170,641 8607 | 723,364 8608 | 772,592 8609 | 809,868 8610 | 721,235 8611 | 869,994 8612 | 627,590 8613 | 849,779 8614 | 927,607 8615 | 718,1011 8616 | 756,357 8617 | 741,637 8618 | 831,720 8619 | 446,568 8620 | 394,684 8621 | 227,470 8622 | 990,949 8623 | 676,909 8624 | 421,596 8625 | 628,256 8626 | 602,306 8627 | 740,175 8628 | 598,640 8629 | 963,830 8630 | 339,391 8631 | 734,934 8632 | 327,325 8633 | 292,224 8634 | 955,1034 8635 | 114,981 8636 | 682,521 8637 | 593,760 8638 | 323,398 8639 | 328,551 8640 | 185,650 8641 | 872,517 8642 | 503,896 8643 | 491,1025 8644 | 525,654 8645 | 267,997 8646 | 492,674 8647 | 340,806 8648 | 250,503 8649 | 272,835 8650 | 321,838 8651 | 702,300 8652 | 443,111 8653 | 406,787 8654 | 382,577 8655 | 694,705 8656 | 780,926 8657 | 308,286 8658 | 200,202 8659 | 1047,337 8660 | 568,805 8661 | 959,937 8662 | 290,987 8663 | 432,1052 8664 | 852,386 8665 | 646,550 8666 | 463,337 8667 | 778,160 8668 | 773,597 8669 | 777,661 8670 | 596,404 8671 | 803,579 8672 | 363,156 8673 | 291,844 8674 | 516,283 8675 | 859,968 8676 | 973,743 8677 | 753,311 8678 | 705,181 8679 | 637,995 8680 | 704,593 8681 | 308,834 8682 | 812,370 8683 | 790,787 8684 | 684,446 8685 | 513,596 8686 | 1063,51 8687 | 388,706 8688 | 618,1044 8689 | 1019,709 8690 | 609,939 8691 | 245,253 8692 | 1079,596 8693 | 762,398 8694 | 714,944 8695 | 653,598 8696 | 311,667 8697 | 697,729 8698 | 776,727 8699 | 771,903 8700 | 454,461 8701 | 742,1035 8702 | 754,317 8703 | 645,981 8704 | 303,574 8705 | 332,175 8706 | 862,726 8707 | 577,819 8708 | 656,733 8709 | 823,299 8710 | 743,726 8711 | 209,226 8712 | 419,670 8713 | 576,391 8714 | 309,195 8715 | 582,394 8716 | 461,941 8717 | 520,594 8718 | 290,477 8719 | 715,476 8720 | 734,101 8721 | 475,838 8722 | 845,566 8723 | 247,754 8724 | 853,849 8725 | 375,553 8726 | 650,480 8727 | 681,735 8728 | 593,884 8729 | 511,1078 8730 | 343,687 8731 | 917,704 8732 | 19,882 8733 | 266,977 8734 | 970,156 8735 | 721,110 8736 | 835,898 8737 | 545,659 8738 | 757,759 8739 | 390,323 8740 | 1072,430 8741 | 896,512 8742 | 852,898 8743 | 301,166 8744 | 557,250 8745 | 456,997 8746 | 279,549 8747 | 228,838 8748 | 862,5 8749 | 204,630 8750 | 944,1059 8751 | 651,1006 8752 | 606,285 8753 | 684,543 8754 | 872,995 8755 | 856,872 8756 | 712,466 8757 | 721,466 8758 | 344,504 8759 | 721,753 8760 | 662,730 8761 | 436,662 8762 | 619,116 8763 | 646,673 8764 | 202,561 8765 | 423,657 8766 | 327,562 8767 | 656,864 8768 | 698,427 8769 | 761,225 8770 | 471,584 8771 | 802,962 8772 | 645,914 8773 | 376,397 8774 | 568,974 8775 | 263,611 8776 | 574,851 8777 | 727,917 8778 | 721,670 8779 | 668,352 8780 | 544,761 8781 | 599,854 8782 | 393,619 8783 | 549,420 8784 | 935,882 8785 | 1018,516 8786 | 811,640 8787 | 900,716 8788 | 766,232 8789 | 817,896 8790 | 272,397 8791 | 178,542 8792 | 112,76 8793 | 322,531 8794 | 556,494 8795 | 765,329 8796 | 725,169 8797 | 369,348 8798 | 722,880 8799 | 360,207 8800 | 667,954 8801 | 261,479 8802 | 902,959 8803 | 774,514 8804 | 528,1030 8805 | 319,695 8806 | 559,1046 8807 | 490,951 8808 | 409,325 8809 | 390,1074 8810 | 663,397 8811 | 542,716 8812 | 227,683 8813 | 394,686 8814 | 310,1013 8815 | 150,657 8816 | 802,967 8817 | 678,639 8818 | 545,340 8819 | 895,725 8820 | 117,57 8821 | 790,653 8822 | 767,202 8823 | 837,1028 8824 | 314,832 8825 | 462,674 8826 | 569,436 8827 | 383,1008 8828 | 749,996 8829 | 608,908 8830 | 925,749 8831 | 447,336 8832 | 920,580 8833 | 341,259 8834 | 287,634 8835 | 265,682 8836 | 294,434 8837 | 510,1080 8838 | 759,840 8839 | 697,951 8840 | 558,367 8841 | 285,374 8842 | 345,855 8843 | 354,465 8844 | 744,46 8845 | 349,574 8846 | 387,455 8847 | 860,659 8848 | 914,761 8849 | 529,975 8850 | 781,360 8851 | 222,668 8852 | 734,389 8853 | 613,395 8854 | 811,693 8855 | 849,85 8856 | 772,221 8857 | 1041,462 8858 | 382,1044 8859 | 277,169 8860 | 748,157 8861 | 700,286 8862 | 271,751 8863 | 648,418 8864 | 610,423 8865 | 331,468 8866 | 316,199 8867 | 692,658 8868 | 472,1065 8869 | 680,219 8870 | 672,842 8871 | 932,47 8872 | 83,19 8873 | 666,998 8874 | 299,325 8875 | 878,924 8876 | 148,655 8877 | 901,496 8878 | 897,966 8879 | 639,667 8880 | 942,893 8881 | 797,10 8882 | 885,815 8883 | 913,745 8884 | 750,867 8885 | 511,759 8886 | 753,372 8887 | 281,877 8888 | 502,475 8889 | 545,345 8890 | 273,645 8891 | 280,342 8892 | 779,490 8893 | 761,1023 8894 | 662,461 8895 | 11,371 8896 | 746,893 8897 | 620,898 8898 | 593,821 8899 | 350,485 8900 | 249,659 8901 | 920,730 8902 | 548,590 8903 | 791,951 8904 | 237,751 8905 | 305,934 8906 | 416,579 8907 | 347,148 8908 | 967,1078 8909 | 1007,1074 8910 | 952,1011 8911 | 813,751 8912 | 560,528 8913 | 435,823 8914 | 289,296 8915 | 444,446 8916 | 681,898 8917 | 447,944 8918 | 601,899 8919 | 569,489 8920 | 644,442 8921 | 167,960 8922 | 224,815 8923 | 327,1047 8924 | 771,1024 8925 | 648,261 8926 | 477,951 8927 | 492,866 8928 | 668,645 8929 | 653,443 8930 | 926,710 8931 | 957,1037 8932 | 677,318 8933 | 568,504 8934 | 659,705 8935 | 639,993 8936 | 860,997 8937 | 680,1068 8938 | 420,1064 8939 | 657,460 8940 | 334,870 8941 | 548,183 8942 | 591,912 8943 | 669,1013 8944 | 831,97 8945 | 338,842 8946 | 148,584 8947 | 194,691 8948 | 673,1072 8949 | 269,889 8950 | 883,845 8951 | 755,192 8952 | 566,676 8953 | 282,506 8954 | 86,915 8955 | 980,957 8956 | 388,1031 8957 | 656,277 8958 | 508,476 8959 | 471,64 8960 | 725,896 8961 | 334,397 8962 | 907,569 8963 | 723,701 8964 | 210,738 8965 | 804,778 8966 | 288,245 8967 | 392,338 8968 | 288,1048 8969 | 307,358 8970 | 905,874 8971 | 330,843 8972 | 211,489 8973 | 714,881 8974 | 349,300 8975 | 835,904 8976 | 821,792 8977 | 828,503 8978 | 491,524 8979 | 976,901 8980 | 370,561 8981 | 272,565 8982 | 903,684 8983 | 959,601 8984 | 618,437 8985 | 312,892 8986 | 85,417 8987 | 944,732 8988 | 873,838 8989 | 557,472 8990 | 881,708 8991 | 461,1071 8992 | 561,617 8993 | 386,573 8994 | 529,460 8995 | 400,860 8996 | 735,464 8997 | 372,549 8998 | 378,469 8999 | 959,698 9000 | 539,813 9001 | 658,872 9002 | 270,419 9003 | 403,649 9004 | 901,821 9005 | 687,991 9006 | 323,965 9007 | 304,463 9008 | 325,657 9009 | 528,482 9010 | 461,864 9011 | 790,960 9012 | 983,594 9013 | 374,351 9014 | 570,488 9015 | 234,671 9016 | 388,923 9017 | 710,594 9018 | 635,903 9019 | 737,955 9020 | 221,860 9021 | 84,267 9022 | 404,898 9023 | 512,535 9024 | 468,540 9025 | 889,964 9026 | 278,275 9027 | 782,690 9028 | 219,719 9029 | 994,655 9030 | 203,511 9031 | 370,336 9032 | 677,260 9033 | 761,858 9034 | 301,262 9035 | 365,1021 9036 | 541,776 9037 | 253,337 9038 | 253,992 9039 | 94,989 9040 | 643,645 9041 | 829,73 9042 | 814,558 9043 | 291,718 9044 | 665,817 9045 | 536,410 9046 | 315,203 9047 | 718,771 9048 | 266,992 9049 | 324,722 9050 | 255,1076 9051 | 877,627 9052 | 707,576 9053 | 308,1069 9054 | 902,551 9055 | 681,739 9056 | 1031,166 9057 | 623,521 9058 | 890,634 9059 | 934,922 9060 | 168,42 9061 | 1057,866 9062 | 928,887 9063 | 1003,950 9064 | 813,1048 9065 | 222,814 9066 | 771,240 9067 | 741,797 9068 | 923,479 9069 | 876,490 9070 | 499,774 9071 | 881,996 9072 | 681,629 9073 | 944,667 9074 | 616,405 9075 | 576,949 9076 | 20,1026 9077 | 491,947 9078 | 652,424 9079 | 916,840 9080 | 782,825 9081 | 753,887 9082 | 703,742 9083 | 393,694 9084 | 413,497 9085 | 949,995 9086 | 699,888 9087 | 306,696 9088 | 900,636 9089 | 715,226 9090 | 390,718 9091 | 690,782 9092 | 720,658 9093 | 646,906 9094 | 429,436 9095 | 384,402 9096 | 898,1066 9097 | 512,1006 9098 | 931,1035 9099 | 101,988 9100 | 471,1011 9101 | 591,325 9102 | 453,652 9103 | 394,965 9104 | 197,226 9105 | 787,879 9106 | 870,526 9107 | 898,881 9108 | 302,918 9109 | 1061,941 9110 | 546,432 9111 | 636,1045 9112 | 301,812 9113 | 405,391 9114 | 602,357 9115 | 254,502 9116 | 678,330 9117 | 667,476 9118 | 239,638 9119 | 649,735 9120 | 652,510 9121 | 543,636 9122 | 354,994 9123 | 768,657 9124 | 1048,968 9125 | 523,985 9126 | 252,430 9127 | 294,431 9128 | 653,877 9129 | 741,812 9130 | 331,346 9131 | 362,557 9132 | 225,512 9133 | 266,972 9134 | 714,646 9135 | 599,330 9136 | 279,411 9137 | 876,1022 9138 | 358,801 9139 | 515,379 9140 | 286,403 9141 | 957,883 9142 | 624,776 9143 | 483,924 9144 | 835,545 9145 | 471,702 9146 | 1030,557 9147 | 626,372 9148 | 931,701 9149 | 401,324 9150 | 553,385 9151 | 837,460 9152 | 807,579 9153 | 330,140 9154 | 676,399 9155 | 178,581 9156 | 316,459 9157 | 929,1048 9158 | 550,188 9159 | 279,349 9160 | 288,835 9161 | 302,973 9162 | 308,399 9163 | 540,1014 9164 | 829,944 9165 | 732,439 9166 | 171,377 9167 | 912,1039 9168 | 626,1054 9169 | 542,312 9170 | 642,982 9171 | 365,1012 9172 | 984,907 9173 | 907,899 9174 | 914,712 9175 | 380,810 9176 | 596,961 9177 | 953,604 9178 | 866,431 9179 | 833,768 9180 | 860,802 9181 | 791,868 9182 | 372,408 9183 | 367,443 9184 | 248,263 9185 | 224,813 9186 | 658,869 9187 | 565,623 9188 | 177,524 9189 | 611,570 9190 | 966,804 9191 | 871,1077 9192 | 1081,372 9193 | 304,1069 9194 | 260,913 9195 | 490,824 9196 | 475,958 9197 | 725,661 9198 | 396,864 9199 | 950,1041 9200 | 447,998 9201 | 940,764 9202 | 353,892 9203 | 979,785 9204 | 438,452 9205 | 933,579 9206 | 792,785 9207 | 291,1052 9208 | 651,214 9209 | 1025,134 9210 | 799,482 9211 | 806,895 9212 | 300,150 9213 | 674,329 9214 | 505,321 9215 | 187,607 9216 | 255,555 9217 | 513,271 9218 | 819,926 9219 | 597,675 9220 | 407,610 9221 | 690,342 9222 | 234,758 9223 | 660,251 9224 | 327,423 9225 | 521,776 9226 | 432,318 9227 | 777,622 9228 | 973,960 9229 | 566,396 9230 | 282,226 9231 | 628,54 9232 | 913,883 9233 | 214,343 9234 | 483,717 9235 | 852,1069 9236 | 468,1060 9237 | 257,775 9238 | 522,672 9239 | 760,734 9240 | 563,331 9241 | 938,584 9242 | 448,616 9243 | 592,264 9244 | 747,625 9245 | 841,129 9246 | 614,458 9247 | 761,782 9248 | 748,849 9249 | 931,563 9250 | 982,484 9251 | 592,1011 9252 | 689,671 9253 | 337,951 9254 | 488,156 9255 | 780,969 9256 | 401,514 9257 | 376,687 9258 | 1030,226 9259 | 785,829 9260 | 470,204 9261 | 252,9 9262 | 505,871 9263 | 322,471 9264 | 689,931 9265 | 937,899 9266 | 773,445 9267 | 663,1072 9268 | 385,1060 9269 | 700,274 9270 | 630,261 9271 | 851,802 9272 | 601,247 9273 | 321,460 9274 | 300,524 9275 | 178,586 9276 | 712,756 9277 | 461,397 9278 | 366,315 9279 | 804,457 9280 | 450,991 9281 | 696,357 9282 | 523,1066 9283 | 949,1058 9284 | 408,489 9285 | 777,1036 9286 | 52,834 9287 | 868,971 9288 | 380,226 9289 | 497,742 9290 | 689,699 9291 | 469,656 9292 | 669,994 9293 | 342,697 9294 | 693,763 9295 | 601,541 9296 | 641,991 9297 | 877,730 9298 | 632,306 9299 | 830,866 9300 | 673,717 9301 | 560,932 9302 | 258,486 9303 | 313,863 9304 | 758,947 9305 | 707,862 9306 | 782,766 9307 | 640,686 9308 | 419,564 9309 | 625,843 9310 | 264,272 9311 | 225,859 9312 | 269,777 9313 | 972,934 9314 | 342,309 9315 | 185,614 9316 | 128,208 9317 | 864,1005 9318 | 797,61 9319 | 421,907 9320 | 653,992 9321 | 566,451 9322 | 916,535 9323 | 616,333 9324 | 812,817 9325 | 216,789 9326 | 666,426 9327 | 778,555 9328 | 706,644 9329 | 455,889 9330 | 720,859 9331 | 924,426 9332 | 776,683 9333 | 1055,927 9334 | 960,745 9335 | 290,332 9336 | 467,894 9337 | 362,548 9338 | 190,727 9339 | 432,590 9340 | 535,533 9341 | 747,597 9342 | 899,638 9343 | 561,458 9344 | 1051,143 9345 | 830,21 9346 | 217,809 9347 | 1069,1066 9348 | 305,729 9349 | 852,827 9350 | 1010,419 9351 | 622,984 9352 | 345,823 9353 | 951,446 9354 | 12,231 9355 | 150,352 9356 | 95,812 9357 | 526,982 9358 | 581,462 9359 | 283,916 9360 | 463,469 9361 | 186,625 9362 | 759,246 9363 | 752,388 9364 | 351,743 9365 | 342,369 9366 | 226,491 9367 | 379,1078 9368 | 400,390 9369 | 925,124 9370 | 846,588 9371 | 385,977 9372 | 929,681 9373 | 137,624 9374 | 636,686 9375 | 777,398 9376 | 930,998 9377 | 281,307 9378 | 470,1076 9379 | 622,757 9380 | 781,687 9381 | 482,977 9382 | 44,887 9383 | 773,437 9384 | 233,844 9385 | 765,399 9386 | 584,383 9387 | 710,225 9388 | 979,944 9389 | 340,899 9390 | 738,85 9391 | 623,391 9392 | 866,607 9393 | 765,160 9394 | 790,633 9395 | 655,363 9396 | 368,509 9397 | 628,662 9398 | 812,705 9399 | 687,218 9400 | 647,884 9401 | 368,660 9402 | 554,650 9403 | 616,352 9404 | 500,764 9405 | 352,551 9406 | 685,510 9407 | 779,870 9408 | 497,413 9409 | 1023,475 9410 | 733,306 9411 | 373,720 9412 | 20,158 9413 | 1041,6 9414 | 584,964 9415 | 363,223 9416 | 488,427 9417 | 496,592 9418 | 515,688 9419 | 527,535 9420 | 299,785 9421 | 722,325 9422 | 660,570 9423 | 689,460 9424 | 567,594 9425 | 782,565 9426 | 696,316 9427 | 482,764 9428 | 987,653 9429 | 228,624 9430 | 262,718 9431 | 543,947 9432 | 262,1038 9433 | 638,912 9434 | 898,541 9435 | 220,561 9436 | 384,963 9437 | 358,228 9438 | 670,279 9439 | 357,1018 9440 | 581,761 9441 | 561,289 9442 | 830,936 9443 | 296,305 9444 | 687,21 9445 | 358,1013 9446 | 442,367 9447 | 598,878 9448 | 276,246 9449 | 654,633 9450 | 200,602 9451 | 606,996 9452 | 927,827 9453 | 712,804 9454 | 860,737 9455 | 497,961 9456 | 927,220 9457 | 208,173 9458 | 214,1015 9459 | 460,822 9460 | 226,598 9461 | 586,1034 9462 | 644,857 9463 | 642,1028 9464 | 819,885 9465 | 749,747 9466 | 673,238 9467 | 371,207 9468 | 536,729 9469 | 730,268 9470 | 287,1044 9471 | 417,373 9472 | 971,729 9473 | 438,435 9474 | 431,445 9475 | 737,171 9476 | 764,746 9477 | 761,195 9478 | 376,288 9479 | 453,660 9480 | 684,256 9481 | 322,398 9482 | 609,476 9483 | 461,559 9484 | 729,169 9485 | 248,754 9486 | 307,917 9487 | 555,878 9488 | 279,649 9489 | 276,1060 9490 | 405,281 9491 | 845,838 9492 | 466,407 9493 | 193,548 9494 | 841,38 9495 | 805,184 9496 | 930,749 9497 | 695,504 9498 | 657,492 9499 | 390,917 9500 | 910,257 9501 | 275,200 9502 | 706,519 9503 | 901,889 9504 | 696,339 9505 | 284,620 9506 | 850,336 9507 | 289,1076 9508 | 769,175 9509 | 328,434 9510 | 943,985 9511 | 277,795 9512 | 201,562 9513 | 850,90 9514 | 583,990 9515 | 840,833 9516 | 298,545 9517 | 462,1041 9518 | 926,826 9519 | 886,974 9520 | 929,1035 9521 | 44,47 9522 | 682,1065 9523 | 436,550 9524 | 927,576 9525 | 759,488 9526 | 589,248 9527 | 755,337 9528 | 615,1038 9529 | 827,88 9530 | 852,1014 9531 | 277,977 9532 | 722,941 9533 | 537,244 9534 | 297,950 9535 | 608,404 9536 | 636,533 9537 | 356,336 9538 | 629,849 9539 | 709,235 9540 | 389,775 9541 | 705,237 9542 | 1038,68 9543 | 275,733 9544 | 437,571 9545 | 298,579 9546 | 650,809 9547 | 223,457 9548 | 428,953 9549 | 399,990 9550 | 278,971 9551 | 434,811 9552 | 367,777 9553 | 392,276 9554 | 489,201 9555 | 601,298 9556 | 928,810 9557 | 197,221 9558 | 307,155 9559 | 210,542 9560 | 545,819 9561 | 801,805 9562 | 295,661 9563 | 509,927 9564 | 576,793 9565 | 337,540 9566 | 479,914 9567 | 576,703 9568 | 453,345 9569 | 852,231 9570 | 608,852 9571 | 316,702 9572 | 389,1072 9573 | 384,734 9574 | 88,1040 9575 | 842,1073 9576 | 304,965 9577 | 744,965 9578 | 808,902 9579 | 273,508 9580 | 568,788 9581 | 343,811 9582 | 850,503 9583 | 328,783 9584 | 775,430 9585 | 543,725 9586 | 741,828 9587 | 360,1019 9588 | 680,280 9589 | 252,475 9590 | 355,439 9591 | 622,236 9592 | 769,281 9593 | 614,375 9594 | 647,320 9595 | 306,324 9596 | 746,186 9597 | 384,718 9598 | 441,1015 9599 | 986,677 9600 | 519,456 9601 | 639,977 9602 | 536,513 9603 | 84,739 9604 | 759,590 9605 | 247,568 9606 | 544,256 9607 | 243,759 9608 | 757,920 9609 | 507,1018 9610 | 827,891 9611 | 256,342 9612 | 925,975 9613 | 1023,330 9614 | 994,723 9615 | 244,798 9616 | 440,627 9617 | 627,951 9618 | 966,686 9619 | 192,864 9620 | 743,1007 9621 | 589,762 9622 | 442,984 9623 | 711,370 9624 | 421,641 9625 | 894,780 9626 | 820,609 9627 | 452,527 9628 | 830,69 9629 | 983,553 9630 | 868,573 9631 | 646,380 9632 | 18,835 9633 | 565,913 9634 | 897,864 9635 | 727,959 9636 | 347,1066 9637 | 813,630 9638 | 603,610 9639 | 184,698 9640 | 790,924 9641 | 848,605 9642 | 263,555 9643 | 662,790 9644 | 739,973 9645 | 648,211 9646 | 540,955 9647 | 487,960 9648 | 881,761 9649 | 877,711 9650 | 815,40 9651 | 764,221 9652 | 604,172 9653 | 611,1000 9654 | 766,468 9655 | 819,8 9656 | 615,543 9657 | 529,625 9658 | 484,665 9659 | 598,454 9660 | 237,235 9661 | 584,1042 9662 | 970,724 9663 | 702,438 9664 | 243,504 9665 | 724,267 9666 | 734,927 9667 | 553,927 9668 | 717,884 9669 | 602,362 9670 | 970,639 9671 | 514,679 9672 | 86,681 9673 | 389,481 9674 | 317,159 9675 | 305,861 9676 | 236,776 9677 | 491,666 9678 | 291,411 9679 | 585,858 9680 | 404,659 9681 | 428,449 9682 | 550,257 9683 | 397,1050 9684 | 480,438 9685 | 864,478 9686 | 650,1066 9687 | 455,443 9688 | 466,1006 9689 | 826,142 9690 | 954,965 9691 | 538,959 9692 | 724,423 9693 | 273,777 9694 | 289,520 9695 | 1056,865 9696 | 375,323 9697 | 800,516 9698 | 772,1002 9699 | 381,266 9700 | 805,642 9701 | 532,406 9702 | 317,657 9703 | 339,1035 9704 | 283,734 9705 | 355,1067 9706 | 281,62 9707 | 716,941 9708 | 383,995 9709 | 665,1072 9710 | 822,808 9711 | 797,543 9712 | 946,612 9713 | 378,1064 9714 | 214,877 9715 | 460,816 9716 | 861,699 9717 | 764,240 9718 | 409,570 9719 | 362,605 9720 | 477,388 9721 | 334,301 9722 | 260,293 9723 | 509,388 9724 | 941,966 9725 | 421,292 9726 | 886,719 9727 | 506,102 9728 | 153,687 9729 | 484,885 9730 | 890,819 9731 | 509,1013 9732 | 685,715 9733 | 262,542 9734 | 429,720 9735 | 465,505 9736 | 629,694 9737 | 534,121 9738 | 633,988 9739 | 718,339 9740 | 965,899 9741 | 291,580 9742 | 466,480 9743 | 515,893 9744 | 504,676 9745 | 515,735 9746 | 334,1076 9747 | 666,1080 9748 | 668,638 9749 | 668,942 9750 | 104,955 9751 | 890,899 9752 | 940,604 9753 | 653,567 9754 | 230,430 9755 | 308,248 9756 | 225,341 9757 | 228,100 9758 | 284,539 9759 | 575,784 9760 | 616,415 9761 | 843,962 9762 | 531,766 9763 | 868,1065 9764 | 897,779 9765 | 168,599 9766 | 430,714 9767 | 326,953 9768 | 790,1054 9769 | 296,646 9770 | 969,631 9771 | 1047,548 9772 | 608,408 9773 | 553,666 9774 | 835,926 9775 | 524,333 9776 | 447,573 9777 | 554,636 9778 | 798,627 9779 | 749,517 9780 | 500,949 9781 | 892,851 9782 | 290,953 9783 | 593,1043 9784 | 859,200 9785 | 337,337 9786 | 415,856 9787 | 859,836 9788 | 407,682 9789 | 259,547 9790 | 948,699 9791 | 967,966 9792 | 929,1065 9793 | 704,259 9794 | 543,563 9795 | 430,1035 9796 | 793,717 9797 | 367,720 9798 | 666,593 9799 | 613,267 9800 | 473,352 9801 | 568,756 9802 | 925,781 9803 | 538,688 9804 | 918,1035 9805 | 325,855 9806 | 428,409 9807 | 251,630 9808 | 511,1079 9809 | 674,784 9810 | 745,707 9811 | 540,450 9812 | 899,967 9813 | 118,720 9814 | 842,132 9815 | 716,189 9816 | 258,456 9817 | 556,1057 9818 | 772,839 9819 | 856,719 9820 | 392,421 9821 | 467,461 9822 | 245,786 9823 | 774,944 9824 | 791,1037 9825 | 454,333 9826 | 608,665 9827 | 740,846 9828 | 238,419 9829 | 789,814 9830 | 753,885 9831 | 898,952 9832 | 769,289 9833 | 146,591 9834 | 520,885 9835 | 890,623 9836 | 681,316 9837 | 337,701 9838 | 884,856 9839 | 656,303 9840 | 465,540 9841 | 514,399 9842 | 648,152 9843 | 881,550 9844 | 643,849 9845 | 236,498 9846 | 294,1039 9847 | 317,721 9848 | 380,77 9849 | 271,355 9850 | 657,736 9851 | 532,528 9852 | 749,225 9853 | 296,359 9854 | 227,455 9855 | 428,337 9856 | 937,21 9857 | 595,455 9858 | 259,875 9859 | 686,973 9860 | 800,766 9861 | 479,290 9862 | 531,909 9863 | 305,846 9864 | 244,348 9865 | 849,1051 9866 | 245,542 9867 | 263,616 9868 | 38,673 9869 | 707,951 9870 | 609,855 9871 | 516,538 9872 | 299,65 9873 | 669,920 9874 | 755,368 9875 | 444,435 9876 | 834,520 9877 | 560,958 9878 | 502,806 9879 | 327,678 9880 | 690,761 9881 | 226,449 9882 | 803,747 9883 | 685,650 9884 | 647,689 9885 | 330,408 9886 | 510,798 9887 | 322,350 9888 | 855,475 9889 | 443,495 9890 | 802,476 9891 | 957,935 9892 | 884,977 9893 | 552,1020 9894 | 381,765 9895 | 690,590 9896 | 436,341 9897 | 732,376 9898 | 5,35 9899 | 259,684 9900 | 517,459 9901 | 243,382 9902 | 326,507 9903 | 470,683 9904 | 816,871 9905 | 366,1 9906 | 1012,648 9907 | 506,484 9908 | 328,442 9909 | 609,418 9910 | 674,1046 9911 | 626,603 9912 | 790,664 9913 | 210,522 9914 | 551,673 9915 | 365,580 9916 | 566,535 9917 | 947,268 9918 | 685,741 9919 | 282,255 9920 | 696,210 9921 | 548,470 9922 | 412,335 9923 | 626,225 9924 | 240,723 9925 | 359,900 9926 | 795,442 9927 | 248,829 9928 | 780,510 9929 | 1066,129 9930 | 816,911 9931 | 522,327 9932 | 317,563 9933 | 542,246 9934 | 401,973 9935 | 698,178 9936 | 929,901 9937 | 846,950 9938 | 307,69 9939 | 424,375 9940 | 264,778 9941 | 814,727 9942 | 387,670 9943 | 559,852 9944 | 683,522 9945 | 726,898 9946 | 560,771 9947 | 870,793 9948 | 740,261 9949 | 534,755 9950 | 427,575 9951 | 11,697 9952 | 881,914 9953 | 610,323 9954 | 576,346 9955 | 749,1052 9956 | 273,407 9957 | 584,628 9958 | 642,494 9959 | 307,712 9960 | 675,914 9961 | 298,958 9962 | 917,872 9963 | 623,293 9964 | 440,987 9965 | 382,59 9966 | 611,938 9967 | 587,562 9968 | 542,582 9969 | 376,972 9970 | 632,760 9971 | 663,898 9972 | 666,252 9973 | 258,311 9974 | 191,663 9975 | 933,712 9976 | 909,549 9977 | 587,990 9978 | 515,332 9979 | 324,993 9980 | 358,507 9981 | 247,770 9982 | 826,774 9983 | 400,601 9984 | 359,334 9985 | 269,1025 9986 | 657,685 9987 | 107,76 9988 | 540,386 9989 | 507,993 9990 | 313,1066 9991 | 427,317 9992 | 750,436 9993 | 75,378 9994 | 623,230 9995 | 932,885 9996 | 279,692 9997 | 439,866 9998 | 467,453 9999 | 1077,226 10000 | 825,62 10001 | -------------------------------------------------------------------------------- /data/Y.csv: -------------------------------------------------------------------------------- 1 | 1044.685091 2 | 1102.418830 3 | 1082.689528 4 | 937.188026 5 | 979.146775 6 | 971.755924 7 | 1022.895711 8 | 1007.356788 9 | 1129.026037 10 | 1179.333451 11 | 1134.441447 12 | 1110.269129 13 | 1164.907660 14 | 1117.542970 15 | 1129.140651 16 | 1111.923261 17 | 1139.118598 18 | 1222.752500 19 | 1274.808831 20 | 1252.131864 21 | 1131.144460 22 | 1138.967961 23 | 1211.822815 24 | 1239.401956 25 | 1267.328155 26 | 1271.869568 27 | 1232.874454 28 | 1362.960353 29 | 1218.988768 30 | 1376.378078 31 | 1242.253070 32 | 1256.715120 33 | 1309.025854 34 | 1347.080857 35 | 1318.936729 36 | 1288.376818 37 | 1306.194084 38 | 1436.547487 39 | 1302.515110 40 | 1436.620007 41 | 1393.514686 42 | 1498.111394 43 | 1464.212862 44 | 1450.696090 45 | 1530.528830 46 | 1536.152485 47 | 1363.334339 48 | 1555.213052 49 | 1565.742192 50 | 1481.957529 51 | 1473.443927 52 | 1430.971985 53 | 1578.040108 54 | 1611.177319 55 | 1486.040011 56 | 1588.066780 57 | 1523.063430 58 | 1591.434467 59 | 1666.057724 60 | 1497.404717 61 | 1609.709552 62 | 1697.252559 63 | 1612.381883 64 | 1613.623990 65 | 1695.960546 66 | 1636.908065 67 | 1713.748734 68 | 1682.883141 69 | 1736.282827 70 | 1604.896279 71 | 1706.682835 72 | 1703.018245 73 | 1627.929459 74 | 1828.971575 75 | 1746.680139 76 | 1831.576557 77 | 1859.552992 78 | 1759.059495 79 | 1876.513168 80 | 1775.624076 81 | 1711.181052 82 | 1802.062269 83 | 1727.614259 84 | 1802.954335 85 | 1757.441838 86 | 1826.935358 87 | 1884.053561 88 | 1872.620875 89 | 1789.450695 90 | 1933.839071 91 | 1856.031324 92 | 1873.613761 93 | 1983.611026 94 | 1921.878884 95 | 1932.019940 96 | 1892.040149 97 | 2004.192715 98 | 1936.891924 99 | 1969.561561 100 | 1975.440463 101 | -------------------------------------------------------------------------------- /doc/HW1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/HW1.pdf -------------------------------------------------------------------------------- /doc/bayes-2d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-2d.png -------------------------------------------------------------------------------- /doc/bayes-3d-d-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d-d-100.png -------------------------------------------------------------------------------- /doc/bayes-3d-d-1600.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d-d-1600.png -------------------------------------------------------------------------------- /doc/bayes-3d-d-25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d-d-25.png -------------------------------------------------------------------------------- /doc/bayes-3d-d-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d-d-400.png -------------------------------------------------------------------------------- /doc/bayes-3d-d-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d-d-9.png -------------------------------------------------------------------------------- /doc/bayes-3d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/bayes-3d.png -------------------------------------------------------------------------------- /doc/map-2d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/map-2d.png -------------------------------------------------------------------------------- /doc/map-3d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/map-3d.png -------------------------------------------------------------------------------- /doc/ml-2d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/ml-2d.png -------------------------------------------------------------------------------- /doc/ml-3d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/ml-3d.png -------------------------------------------------------------------------------- /doc/report.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/doc/report.pdf -------------------------------------------------------------------------------- /log/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.25.log: -------------------------------------------------------------------------------- 1 | log/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.25.log 3199.23547363 2 | -------------------------------------------------------------------------------- /log/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.5.log: -------------------------------------------------------------------------------- 1 | log/bayes-m0-0.0-s0-2.0-beta-25.0-grid-0.5.log 4360.03442383 2 | -------------------------------------------------------------------------------- /log/ml-m0--s0--beta--grid-0.25.log: -------------------------------------------------------------------------------- 1 | log/ml-m0--s0--beta--grid-0.25.log 3528.12180572 2 | -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- 1 | from model_np import LinearModel 2 | from model_np import RidgeLinearModel 3 | from model_tf import BayesianLinearModel 4 | 5 | from preprocess import Preprocessor 6 | 7 | from util import load_dataset_csv, load_data, load_test_dataset_csv 8 | from plot import plot_3d, plot_2d_map 9 | 10 | import numpy as np 11 | import tensorflow as tf 12 | import random 13 | import os, sys, csv, argparse 14 | 15 | from sklearn.model_selection import KFold 16 | 17 | import logging 18 | 19 | def load_data(x_path, y_path, shuffle=True): 20 | xs, ys = load_dataset_csv(x_path, y_path) 21 | 22 | n = len(xs) 23 | shuffle_indices = range(n) 24 | np.random.shuffle(shuffle_indices) 25 | 26 | return xs, ys, n 27 | 28 | ''' 29 | Filter noise data 30 | ''' 31 | def filter_data(x): 32 | xs_normalize_filtered = x 33 | xs_normalize_filtered = xs_normalize_filtered[xs_normalize_filtered[:, 0] > 0.23774283] 34 | xs_normalize_filtered = xs_normalize_filtered[xs_normalize_filtered[:, 0] < 0.89] 35 | xs_normalize_filtered = xs_normalize_filtered[xs_normalize_filtered[:, 1] > 0.120027752] 36 | return xs_normalize_filtered 37 | 38 | ''' 39 | Place additional gaussian basis 40 | ''' 41 | def crafted_gaussian_feature(means, sigmas): 42 | means = np.vstack((means, [0.13876, 0.508788159], [0.46253469, 0.092506938], [0.6475, 0.185])) 43 | sigmas = np.vstack((sigmas, [0.285, 0.3], [0.5, 0.285], [0.2, 0.1])) 44 | return means, sigmas 45 | 46 | def get_model(args, shape): 47 | if args.model == 'ml': 48 | return LinearModel(shape, optimizer=args.optimizer, lr=args.lr) 49 | elif args.model == 'map': 50 | logging.info('MAP hyperparameters [alpha: %f]' % args.alpha) 51 | return RidgeLinearModel(shape, optimizer=args.optimizer, lr=args.lr, alpha=args.alpha) 52 | elif args.model == 'bayes': 53 | logging.info('Bayes hyperparameters [m0: %f, s0: %f]' % (args.m0, args.s0)) 54 | return BayesianLinearModel(shape, optimizer=args.optimizer, m0=args.m0, s0=args.s0, beta=args.beta) 55 | 56 | def get_means_sigmas(args, x): 57 | if args.pre == 'kmeans': 58 | return Preprocessor().compute_gaussian_basis(x, deg=int(args.d), scale=args.scale) 59 | elif args.pre == 'grid': 60 | return Preprocessor().grid2d_means(np.min(x[:,0]), np.max(x[:,0]) , np.min(x[:,1]), np.max(x[:,1]), step=args.gsize, scale=args.scale) 61 | 62 | def train(args, sess, model, phi_xs_train, ys_train): 63 | sess.run(tf.global_variables_initializer()) 64 | model.fit(sess, phi_xs_train, ys_train, epoch=args.epoch, batch_size=args.batch_size) 65 | loss = model.eval(sess, phi_xs_train, ys_train) 66 | return loss 67 | 68 | def train_cross_validation(args, sess, model, phi_xs_train, ys_train): 69 | kf = KFold(n_splits=args.K) 70 | 71 | w_best = None 72 | validation_loss = 0 73 | 74 | for train_index, validation_index in kf.split(phi_xs_train): 75 | sess.run(tf.global_variables_initializer()) 76 | 77 | model.fit(sess, phi_xs_train[train_index], ys_train[train_index], epoch=args.epoch, batch_size=args.batch_size) 78 | loss = model.eval(sess, phi_xs_train[validation_index], ys_train[validation_index]) 79 | 80 | logging.info('Validation loss = %f' % (loss)) 81 | validation_loss += loss 82 | 83 | model.reset(sess) 84 | 85 | return validation_loss / float(args.K) 86 | 87 | def test_model(args): 88 | logging.basicConfig(format='[%(asctime)s] %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p', level=logging.INFO) 89 | logging.info('Loading data...') 90 | 91 | # Load test dataset 92 | xs, n = load_test_dataset_csv(args.X) 93 | 94 | # Data preprocessing 95 | preprocessor = Preprocessor() 96 | rng = abs(args.max - args.min) 97 | xs_n = preprocessor.normalize(xs, rng) 98 | 99 | # Load means and sigmas 100 | logging.info('Loading mean data from %s' % (args.mean)) 101 | means = np.load(args.mean) 102 | 103 | logging.info('Loading sigma data from %s' % (args.sigma)) 104 | sigmas = np.load(args.sigma) 105 | 106 | # Setup preprocessing function 107 | def phi(x): 108 | pre = Preprocessor() 109 | return pre.gaussian(pre.normalize(x, rng), means, sigmas) 110 | 111 | logging.info('Preprocessing (d = %d)' % (len(means) + 1)) 112 | phi_xs = phi(xs) 113 | phi_dim = len(phi_xs[0]) 114 | model = get_model(args, (phi_dim,)) 115 | logging.info('Using model %s' % (args.model)) 116 | 117 | def f(x): 118 | return np.round(np.clip(model.test(sess, x), args.min, args.max)) 119 | 120 | with tf.Session() as sess: 121 | assert args.output is not None 122 | 123 | logging.info('Loading model from %s' % (args.load)) 124 | sess.run(tf.global_variables_initializer()) 125 | 126 | model.load_from_file(sess, args.load) 127 | preds = f(phi_xs) 128 | 129 | logging.info('Save predictions at %s' % args.output) 130 | with open(args.output, 'w') as file: 131 | for pred in preds: 132 | file.write('%f\n' % pred) 133 | 134 | def train_model(args): 135 | logging.basicConfig(format='[%(asctime)s] %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p', level=logging.INFO) 136 | logging.info('Train model') 137 | logging.info('Loading data...') 138 | 139 | # Split data into training set and test set 140 | xs, ys, n = load_data(args.X, args.Y, shuffle=True) 141 | n_train = int(args.frac * n) 142 | 143 | # Data preprocessing 144 | preprocessor = Preprocessor() 145 | rng = abs(args.max - args.min) 146 | xs_n = preprocessor.normalize(xs, rng) 147 | xs_n_filtered = xs_n 148 | 149 | if args.craft: 150 | xs_n_filtered = filter_data(xs_n_filtered) 151 | 152 | # Feature extraction 153 | logging.info('Computing means and sigmas (%s)...' % args.pre) 154 | means, sigmas = get_means_sigmas(args, xs_n_filtered) 155 | 156 | if args.craft: 157 | means, sigmas = crafted_gaussian_feature(means, sigmas) 158 | 159 | def phi(x): 160 | pre = Preprocessor() 161 | return pre.gaussian(pre.normalize(x, rng), means, sigmas) 162 | 163 | logging.info('Preprocessing... (d = %d; craft-feature %d)' % (means.shape[0], args.craft)) 164 | phi_xs = phi(xs) 165 | phi_xs_train, ys_train = phi_xs[:n_train], ys[:n_train] 166 | phi_xs_test, ys_test = phi_xs[n_train:], ys[n_train:] 167 | 168 | phi_dim = len(phi_xs_train[0]) 169 | model = get_model(args, (phi_dim,)) 170 | logging.info('Using model %s (plot = %s)' % (args.model, args.plot)) 171 | 172 | def f(x): 173 | return np.round(np.clip(model.test(sess, x), args.min, args.max)) 174 | 175 | with tf.Session() as sess: 176 | logging.info('Training... (optimizer = %s)' % args.optimizer) 177 | if args.K <= 1: 178 | train_loss = train(args, sess, model, phi_xs_train, ys_train) 179 | logging.info('Training loss = %f' % train_loss) 180 | 181 | if n_train < n: 182 | test_loss = model.eval(sess, phi_xs_test, ys_test) 183 | logging.info('Testing loss = %f' % test_loss) 184 | 185 | if args.output is not None: 186 | logging.info('Save model at %s' % args.output) 187 | model.save_to_file(sess, args.output) 188 | np.save(args.output + '-mean', means) 189 | np.save(args.output + '-sigma', sigmas) 190 | 191 | if args.plot is not None: 192 | logging.info('Plotting... (output = %s)' % args.fig) 193 | if args.plot == '3d': 194 | plot_3d(f, phi, args.min, args.max, args.min, args.max, 0, 1081, args.fig) 195 | elif args.plot == '2d': 196 | plot_2d_map(f, phi, args.min, args.max, args.min, args.max) 197 | 198 | else: 199 | validation_loss = train_cross_validation(args, sess, model, phi_xs_train, ys_train) 200 | log_filename = args.log 201 | with open(log_filename, 'w') as log_file: 202 | log_file.write('%s\t%s\n' % (log_filename, validation_loss)) 203 | 204 | 205 | if __name__ == '__main__': 206 | parser = argparse.ArgumentParser() 207 | parser.add_argument('--task', help='train/test task', 208 | choices=['train', 'test'], required=True, type=str, default='train') 209 | parser.add_argument('--X', help='data', required=True, type=str) 210 | parser.add_argument('--Y', help='ground truth', type=str) 211 | parser.add_argument('--K', help='k-fold', type=int, default=3) 212 | parser.add_argument('--epoch', help='epoch', type=int, default=50) 213 | parser.add_argument('--batch_size', help='batch size', type=int, default=128) 214 | parser.add_argument('--lr', help='learning rate', type=float, default=0.5) 215 | parser.add_argument('--d', help='dimension of feature', type=float, default=512) 216 | parser.add_argument('--gsize', help='grid size', type=float, default=0.1) 217 | parser.add_argument('--scale', help='sigma scale', type=float, default=2.5) 218 | parser.add_argument('--min', help='minimum value of input space', type=float, default=0) 219 | parser.add_argument('--max', help='maximum value of input space', type=float, default=1081) 220 | parser.add_argument('--frac', help='fraction of training', type=float, default=0.8) 221 | parser.add_argument('--alpha', help='l2 penalty scale for map', type=float, default=0.01) 222 | parser.add_argument('--beta', help='beta (noise variance) for bayesian', type=float, default=1.0 / 0.2**2) 223 | parser.add_argument('--m0', help='m0 (mean) for bayesian', type=float, default=0.0) 224 | parser.add_argument('--s0', help='s0 (variance) for bayesian', type=float, default=2.0) 225 | parser.add_argument('--model', help='model', 226 | choices=['ml', 'map', 'bayes'], default='ml') 227 | parser.add_argument('--pre', help='preprocess approach', 228 | choices=['kmeans', 'grid'], default='grid') 229 | parser.add_argument('--optimizer', help='optimzier', 230 | choices=['ls', 'seq'], default='ls') 231 | parser.add_argument('--plot', help='enable plot', type=str, default=None) 232 | parser.add_argument('--craft', help='enable crafted features', type=bool, default=False) 233 | parser.add_argument('--fig', help='figure output', type=str, default=None) 234 | parser.add_argument('--log', help='log output', type=str, default='log.log') 235 | parser.add_argument('--output', help='output data, model or predictions', type=str, default=None) 236 | parser.add_argument('--load', help='model load', type=str, default=None) 237 | parser.add_argument('--mean', help='mean load', type=str, default=None) 238 | parser.add_argument('--sigma', help='sigma load', type=str, default=None) 239 | 240 | args = parser.parse_args() 241 | 242 | if args.task == 'train': 243 | train_model(args) 244 | else: 245 | test_model(args) 246 | -------------------------------------------------------------------------------- /misc/kmeans.py: -------------------------------------------------------------------------------- 1 | from pylab import plot,show 2 | from numpy import vstack,array 3 | from numpy.random import rand 4 | from scipy.cluster.vq import kmeans,vq 5 | 6 | import os,sys,inspect 7 | currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) 8 | parentdir = os.path.dirname(currentdir) 9 | sys.path.insert(0,parentdir) 10 | 11 | 12 | from util import load_csv 13 | from preprocess import Preprocessor 14 | import sys 15 | import numpy as np 16 | 17 | # data generation 18 | #data = vstack((rand(150,2) + array([.5,.5]),rand(150,2))) 19 | data = load_csv(sys.argv[1]) 20 | data = np.asarray(data) 21 | # computing K-Means with K = 2 (2 clusters) 22 | K = 128 23 | print data.shape 24 | data_ = data 25 | data_ = data_[data_[:, 0] > 350] 26 | data_ = data_[data_[:, 1] > 300] 27 | x = data_ 28 | 29 | print data.shape 30 | #centroids,_ = kmeans(data_, K) 31 | centroids,_ = Preprocessor().grid2d_means(np.min(x[:,0]), np.max(x[:,0]) , np.min(x[:,1]), np.max(x[:,1]), step=100.81, scale=1.0) 32 | # assign each sample to a cluster 33 | idx,_ = vq(data,centroids) 34 | K = len(centroids) 35 | from matplotlib.pyplot import cm 36 | color = iter(cm.rainbow(np.linspace(0,1,K))) 37 | for i in xrange(K): 38 | c = next(color) 39 | plot(data[idx==i,0],data[idx==i,1], c=c) 40 | 41 | plot(centroids[:,0],centroids[:,1],'s',markersize=8) 42 | show() 43 | -------------------------------------------------------------------------------- /misc/plot_hist.py: -------------------------------------------------------------------------------- 1 | from matplotlib.colors import LogNorm 2 | import matplotlib.pyplot as plt 3 | import numpy as np 4 | 5 | # normal distribution center at x=0 and y=5 6 | #x = np.random.randn(100000) 7 | #y = np.random.randn(100000) + 5 8 | 9 | import os,sys,inspect 10 | currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) 11 | parentdir = os.path.dirname(currentdir) 12 | sys.path.insert(0,parentdir) 13 | 14 | from util import load_csv 15 | 16 | data = load_csv(sys.argv[1]) 17 | x = data[:,0] 18 | y = data[:,1] 19 | 20 | plt.hist2d(x, y, bins=40, norm=LogNorm()) 21 | plt.colorbar() 22 | plt.show() 23 | -------------------------------------------------------------------------------- /model/bayes/bayes-mean.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/bayes/bayes-mean.npy -------------------------------------------------------------------------------- /model/bayes/bayes-sigma.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/bayes/bayes-sigma.npy -------------------------------------------------------------------------------- /model/bayes/bayes.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/bayes/bayes.npy -------------------------------------------------------------------------------- /model/map/map-mean.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/map/map-mean.npy -------------------------------------------------------------------------------- /model/map/map-sigma.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/map/map-sigma.npy -------------------------------------------------------------------------------- /model/map/map.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/map/map.npy -------------------------------------------------------------------------------- /model/ml/ml-mean.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/ml/ml-mean.npy -------------------------------------------------------------------------------- /model/ml/ml-sigma.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/ml/ml-sigma.npy -------------------------------------------------------------------------------- /model/ml/ml.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/williamd4112/simple-linear-regression/873020c4213ba4a0be499b13c5d9f4d8bc022199/model/ml/ml.npy -------------------------------------------------------------------------------- /model_np.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import logging 3 | 4 | from tqdm import * 5 | 6 | class LinearModel(object): 7 | def __init__(self, shape, optimizer='seq', lr=0.01, clip_min=0, clip_max=1081, is_round=True): 8 | ''' 9 | param shape: phi_x shape 10 | ''' 11 | self.optimizer = optimizer 12 | self.lr = lr 13 | self.shape = shape 14 | self.learning_rate_decay = 0.99 15 | 16 | # w is Mx1 column vector 17 | self.w = np.asmatrix(self._init_weight(shape + (1,))) 18 | 19 | # Setup model 20 | self._setup_model() 21 | 22 | # Setup optimizer (vary from models) 23 | self._setup_optimizer() 24 | 25 | def get_weight(self, sess): 26 | return self.w 27 | 28 | def set_weight(self, sess, w): 29 | self.w = w 30 | 31 | def save(sess): 32 | self.w_save = self.get_weight(sess) 33 | 34 | def save_to_file(self, sess, filename): 35 | np.save(filename, self.get_weight(sess)) 36 | 37 | def load(sess): 38 | self.set_weight(sess, self.w_save) 39 | 40 | def load_from_file(self, sess, filename): 41 | w = np.load(filename) 42 | self.set_weight(sess, w) 43 | 44 | def fit(self, sess, x_, t_, epoch=10, batch_size=1): 45 | lr = self.lr 46 | if self.optimizer == 'seq': 47 | batch_indices = range(len(x_)) 48 | for epoch in xrange(epoch): 49 | np.random.shuffle(batch_indices) 50 | for i in tqdm(range(0, len(x_), batch_size)): 51 | i_ = min(i + batch_size, len(x_)) 52 | self._optimize(sess, x_[batch_indices[i:i_]], t_[batch_indices[i:i_]], lr=lr) 53 | loss = self.eval(sess, x_, t_) 54 | 55 | if epoch % 1 == 0: 56 | logging.info('Epoch %d: training loss = %f (lr = %f)' % (epoch, loss, lr)) 57 | lr = lr * self.learning_rate_decay 58 | else: 59 | self._optimize(sess, x_, t_) 60 | 61 | def eval(self, sess, x_, t_): 62 | return np.sum(np.asarray(t_ - self.test(sess, x_))**2) / (2 * len(x_)) 63 | 64 | def test(self, sess, x_): 65 | return np.asmatrix(x_) * self.w 66 | 67 | def reset(self, sess): 68 | self.set_weight(sess, np.asmatrix(self._init_weight(self.shape + (1,)))) 69 | 70 | def _init_weight(self, shape): 71 | return np.zeros(shape) 72 | 73 | def _setup_model(self): 74 | ''' 75 | Linear model doesn't need extra setup 76 | ''' 77 | 78 | def _setup_optimizer(self): 79 | ''' 80 | Numpy do not need 81 | ''' 82 | 83 | def _optimize(self, sess, x_, t_, lr=None): 84 | if lr == None: 85 | lr = self.lr 86 | self.w = self.w - lr * x_.T * (self.test(sess, x_) - t_) / (2 * len(x_)) 87 | 88 | class RidgeLinearModel(LinearModel): 89 | def __init__(self, shape, optimizer='seq', alpha=0.01, mean=0.0, var=0.8, lr=0.01, clip_min=0, clip_max=1081, is_round=True): 90 | self.alpha = alpha 91 | self.mean = mean 92 | self.var = var 93 | super(RidgeLinearModel, self).__init__(shape, optimizer, lr, clip_min, clip_max, is_round) 94 | 95 | def _optimize(self, sess, x_, t_, lr=None): 96 | if lr == None: 97 | lr = self.lr 98 | self.w = self.w - lr * (x_.T * (self.test(sess, x_) - t_) / (2 * len(x_))) - self.alpha * np.sum(self.w) / (2 * len(x_)) 99 | 100 | 101 | -------------------------------------------------------------------------------- /model_tf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import tensorflow as tf 3 | 4 | from tqdm import * 5 | 6 | from sklearn.model_selection import KFold 7 | import logging 8 | 9 | class LinearModel(object): 10 | def __init__(self, shape, optimizer='seq', lr=0.01, clip_min=0, clip_max=1081, is_round=True): 11 | ''' 12 | param shape: phi_x shape 13 | ''' 14 | self.optimizer = optimizer 15 | self.lr = lr 16 | self.shape = shape 17 | 18 | # x is NxM matrix 19 | self.x = tf.placeholder(tf.float32, shape=(None,) + shape) 20 | 21 | # t is Nx1 column vector 22 | self.t = tf.placeholder(tf.float32, shape=(None,) + (1,)) 23 | 24 | # w is Mx1 column vector 25 | self.w_assign = tf.placeholder(tf.float32, shape=shape + (1,)) 26 | self.w = tf.Variable(self._init_weight(shape + (1,)), dtype=tf.float32) 27 | self.w_assign_op = tf.assign(self.w, self.w_assign) 28 | 29 | # y is Nx1 column vector 30 | self.y = tf.matmul(self.x, self.w) 31 | 32 | # MSE evaluation 33 | self.loss = tf.reduce_mean(tf.pow(self.y - self.t, 2)) / 2.0 34 | 35 | # Setup model 36 | self._setup_model() 37 | 38 | # Setup optimizer (vary from models) 39 | self._setup_optimizer() 40 | 41 | def get_weight(self, sess): 42 | return sess.run(self.w) 43 | 44 | def set_weight(self, sess, w): 45 | sess.run(self.w_assign_op, feed_dict={self.w_assign: w}) 46 | 47 | def save(sess): 48 | self.w_save = self.get_weight(sess) 49 | 50 | def save_to_file(self, sess, filename): 51 | np.save(filename, self.get_weight(sess)) 52 | 53 | def load(sess): 54 | self.set_weight(sess, self.w_save) 55 | 56 | def load_from_file(self, sess, filename): 57 | w = np.load(filename) 58 | self.set_weight(sess, w) 59 | 60 | def fit(self, sess, x_, t_, epoch=10, batch_size=1): 61 | if self.optimizer == 'seq': 62 | batch_indices = range(len(x_)) 63 | for epoch in xrange(epoch): 64 | np.random.shuffle(batch_indices) 65 | for i in tqdm(range(0, len(x_), batch_size)): 66 | i_ = min(i + batch_size, len(x_)) 67 | self._optimize(sess, x_[batch_indices[i:i_]], t_[batch_indices[i:i_]]) 68 | loss = self.eval(sess, x_, t_) 69 | 70 | if epoch % 1 == 0: 71 | logging.info('Epoch %d: training loss = %f' % (epoch, loss)) 72 | else: 73 | self._optimize(sess, x_, t_) 74 | 75 | def eval(self, sess, x_, t_): 76 | return sess.run(self.loss, feed_dict={self.x: x_, 77 | self.t: t_}) 78 | def test(self, sess, x_): 79 | return sess.run(self.y, feed_dict={self.x: x_}) 80 | 81 | def reset(self, sess): 82 | self.set_weight(sess, self._init_weight(self.shape + (1,)),) 83 | 84 | def _init_weight(self, shape): 85 | return np.zeros(shape) 86 | 87 | def _setup_model(self): 88 | ''' 89 | Linear model doesn't need extra setup 90 | ''' 91 | 92 | def _setup_optimizer(self): 93 | if self.optimizer == 'seq': 94 | self.optimize_op = tf.train.GradientDescentOptimizer(self.lr).minimize(self.loss) 95 | else: 96 | # W_ml is calculated with solving normal equation 97 | xt = tf.transpose(self.x) 98 | x_xt = tf.matmul(xt, self.x) 99 | x_xt_inv = tf.matrix_inverse(x_xt) 100 | x_xt_inv_xt = tf.matmul(x_xt_inv, xt) 101 | 102 | self.w_ml = tf.matmul(x_xt_inv_xt, self.t) 103 | self.optimize_op = tf.assign(self.w, self.w_ml) 104 | 105 | def _optimize(self, sess, x_, t_): 106 | sess.run(self.optimize_op, feed_dict={self.x: x_, 107 | self.t: t_}) 108 | 109 | 110 | class RidgeLinearModel(LinearModel): 111 | def __init__(self, shape, optimizer='seq', alpha=0.01, mean=0.0, var=0.8, lr=0.01, clip_min=0, clip_max=1081, is_round=True): 112 | self.alpha = alpha 113 | self.mean = mean 114 | self.var = var 115 | super(RidgeLinearModel, self).__init__(shape, optimizer, lr, clip_min, clip_max, is_round) 116 | 117 | def _init_weight(self, shape): 118 | return np.random.normal(self.mean, self.var, shape) 119 | 120 | def _setup_optimizer(self): 121 | self.ridge_loss = tf.reduce_mean(tf.pow(self.y - self.t, 2) + self.alpha * tf.reduce_sum(tf.square(self.w))) / 2.0 122 | self.optimize_op = tf.train.AdamOptimizer(self.lr).minimize(self.ridge_loss) 123 | 124 | class BayesianLinearModel(LinearModel): 125 | def __init__(self, shape, m0, s0, beta, optimizer='ls', clip_min=0, clip_max=1081, is_round=True): 126 | # Setup mean vector 127 | if np.isscalar(m0): 128 | self.m0 = tf.ones(shape + (1,), dtype=tf.float32) * m0 129 | else: 130 | self.m0 = m0 131 | 132 | # Setup covariance matrix 133 | if np.isscalar(s0): 134 | self.s0 = 1.0 / s0 * tf.identity(np.identity(shape[0], dtype=np.float32)) 135 | else: 136 | self.s0 = s0 137 | 138 | # Setup variance of noise gaussian distribution 139 | self.beta = beta 140 | 141 | super(BayesianLinearModel, self).__init__(shape, optimizer, 0.0, clip_min, clip_max, is_round) 142 | 143 | def _setup_model(self): 144 | # Setup mn, sn 145 | xt = tf.transpose(self.x) 146 | self.sn = tf.matrix_inverse(tf.matrix_inverse(self.s0) + (self.beta * tf.matmul(xt, self.x))) 147 | self.mn = tf.matmul(self.sn, tf.matmul(tf.matrix_inverse(self.s0), self.m0) + self.beta * tf.matmul(xt, self.t)) 148 | 149 | def _setup_optimizer(self): 150 | self.optimize_op = tf.assign(self.w, self.mn) 151 | 152 | 153 | -------------------------------------------------------------------------------- /plot.py: -------------------------------------------------------------------------------- 1 | from matplotlib.colors import LogNorm 2 | 3 | import matplotlib.pyplot as plt 4 | 5 | from mpl_toolkits.mplot3d import axes3d 6 | import matplotlib.pyplot as plt 7 | from matplotlib import cm 8 | from matplotlib.ticker import LinearLocator, FormatStrFormatter 9 | 10 | 11 | import numpy as np 12 | 13 | def plot_1d(x, y, t): 14 | plt.plot(x[:], t, "x") 15 | plt.plot(x[:], y, "r-") 16 | plt.show() 17 | 18 | def plot_2d_hist(x1, x2, bins=10): 19 | plt.hist2d(x1, x2, bins=10, norm=LogNorm()) 20 | plt.colorbar() 21 | plt.show() 22 | 23 | def plot_2d_map(model, phi, x_min, x_max, y_min, y_max): 24 | X = np.arange(x_min, x_max, 5) 25 | Y = np.arange(y_min, y_max, 5) 26 | X, Y = np.meshgrid(X, Y) 27 | 28 | X_flat, Y_flat = np.reshape(X.T, len(X)**2), np.reshape(Y.T, len(Y)**2) 29 | Z = model(np.matrix(phi(np.array([X_flat, Y_flat], dtype=np.float32).T))) 30 | 31 | Z = np.reshape(Z, [len(X), len(X)]) 32 | Z = np.rot90(Z) 33 | 34 | plt.imshow(Z, extent=(x_min, x_max, y_min, y_max), aspect = 'auto') 35 | plt.colorbar() 36 | plt.show() 37 | 38 | def plot_3d(model, phi, x_min, x_max, y_min, y_max, z_min, z_max, filename=None): 39 | fig = plt.figure() 40 | ax = fig.gca(projection='3d') 41 | 42 | X = np.arange(x_min, x_max, 5) 43 | Y = np.arange(y_min, y_max, 5) 44 | X, Y = np.meshgrid(X, Y) 45 | 46 | x, y = np.reshape(X, len(X)**2), np.reshape(Y, len(Y)**2) 47 | Z = model(np.matrix(phi(np.array([x, y], dtype=np.float32).T))) 48 | 49 | Z = np.reshape(Z, [len(X), len(X)]) 50 | 51 | # Plot the surface. 52 | surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm, 53 | linewidth=0, antialiased=False, shade=True) 54 | 55 | # Customize the z axis. 56 | ax.set_zlim(z_min, z_max) 57 | ax.zaxis.set_major_locator(LinearLocator(10)) 58 | ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f')) 59 | 60 | # Add a color bar which maps values to colors. 61 | fig.colorbar(surf, shrink=0.5, aspect=5) 62 | 63 | plt.show() 64 | 65 | -------------------------------------------------------------------------------- /plot_bayes.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | MODEL=bayes 3 | 4 | LOAD=$1 5 | MEAN=$2 6 | SIGMA=$3 7 | PLOT_TYPE=$4 8 | 9 | python main.py --task plot --model $MODEL --pre $PRE --load $LOAD --mean $MEAN --sigma $SIGMA --plot $PLOT_TYPE 10 | 11 | -------------------------------------------------------------------------------- /plot_map.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | MODEL=map 3 | 4 | LOAD=$1 5 | MEAN=$2 6 | SIGMA=$3 7 | PLOT_TYPE=$4 8 | 9 | python main.py --task plot --model $MODEL --pre $PRE --load $LOAD --mean $MEAN --sigma $SIGMA --plot $PLOT_TYPE 10 | 11 | -------------------------------------------------------------------------------- /plot_ml.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | MODEL=ml 3 | 4 | LOAD=$1 5 | MEAN=$2 6 | SIGMA=$3 7 | PLOT_TYPE=$4 8 | 9 | python main.py --task plot --model $MODEL --pre $PRE --load $LOAD --mean $MEAN --sigma $SIGMA --plot $PLOT_TYPE 10 | 11 | -------------------------------------------------------------------------------- /preprocess.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import numpy.matlib 3 | import csv 4 | from tqdm import * 5 | 6 | from numpy import vstack,array 7 | from numpy.random import rand 8 | from scipy.cluster.vq import kmeans as _kmeans 9 | from scipy.cluster.vq import vq, whiten 10 | from sklearn.preprocessing import PolynomialFeatures 11 | 12 | def kmeans(x, k): 13 | centroids, dist = _kmeans(x, k) 14 | idx, _ = vq(x,centroids) 15 | return idx, centroids, dist 16 | 17 | class Preprocessor(object): 18 | def polynomial(self, X, deg=1): 19 | return PolynomialFeatures(deg).fit_transform(X) 20 | 21 | def normalize(self, X, rng): 22 | return X / rng 23 | 24 | def grid2d_means(self, x_min, x_max, y_min, y_max, step=0.1, deg=4, scale=2.5): 25 | X = np.arange(x_min, x_max, step) 26 | Y = np.arange(y_min, y_max, step) 27 | X, Y = np.meshgrid(X, Y) 28 | 29 | X, Y = X.flatten(), Y.flatten() 30 | means = np.array([X, Y], dtype=np.float32).T 31 | sigmas = np.ones([len(means), 2]) * (step * scale) 32 | return means, sigmas 33 | 34 | def compute_gaussian_basis(self, xs_normalize, deg=4, scale=2.5): 35 | xs_normalize_filtered = xs_normalize 36 | idx, means, dist = kmeans(xs_normalize_filtered, deg) 37 | sigmas = np.ones([len(means), len(xs_normalize[0])]) * (dist * scale) 38 | 39 | return means, sigmas 40 | 41 | def gaussian(self, X, means, sigmas): 42 | n = len(X) 43 | m = len(means) 44 | phi_x = np.zeros([n, m]) 45 | 46 | for i in tqdm(range(m)): 47 | mean = np.matlib.repmat(means[i], n, 1) 48 | sigma = np.matlib.repmat(sigmas[i], n, 1) 49 | 50 | phi_x[:, i] = np.exp(-np.sum((np.square(X - mean) / (2 * np.square(sigma))), axis=1)) 51 | 52 | return np.hstack((np.ones([n, 1]), phi_x)) 53 | 54 | if __name__ == '__main__': 55 | means, sigmas = Preprocessor().grid2d_means(0, 1081, 0, 1081, step=25) 56 | print means.shape, sigmas.shape 57 | 58 | -------------------------------------------------------------------------------- /run_bayes.sh: -------------------------------------------------------------------------------- 1 | python main.py --X data/X_train.csv --Y data/T_train.csv --K 2 --model bayes --pre grid --gsize 0.01 --optimizer ls --scale 1 --plot 2d --frac 0.8 --craft True 2 | -------------------------------------------------------------------------------- /run_map.sh: -------------------------------------------------------------------------------- 1 | python main.py --X data/X_train.csv --Y data/T_train.csv --K 2 --model map --pre grid --optimizer ls --gsize 0.03 --scale 1 --epoch 10 --batch_size 256 --lr 0.8 --alpha 0.001 2 | -------------------------------------------------------------------------------- /run_ml.sh: -------------------------------------------------------------------------------- 1 | python main.py --X data/X_train.csv --Y data/T_train.csv --K 3 --model ml --pre grid --optimizer seq --gsize 0.03 --scale 1 --epoch 10 --batch_size 256 --lr 0.5 2 | -------------------------------------------------------------------------------- /score.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | from util import load_csv 3 | 4 | import sys 5 | 6 | y = load_csv(sys.argv[1]) 7 | t = load_csv(sys.argv[2]) 8 | 9 | assert len(y) == len(t) 10 | 11 | mse = np.sum((y - t)**2) / (2 *(len(y))) 12 | 13 | print mse 14 | -------------------------------------------------------------------------------- /test_bayes.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | K=1 3 | OPTIMIZER=ls 4 | SCALE=1.0 5 | FRAC=0.8 6 | MODEL=bayes 7 | D=0.15 8 | 9 | m0=0.0 10 | s0=2.0 11 | beta=25.0 12 | 13 | #OUTPUT="${MODEL}-m0-${m0}-s0-${s0}-beta-${beta}-${PRE}-${D}.csv" 14 | 15 | 16 | X=$1 17 | LOAD=$2 18 | MEAN=$3 19 | SIGMA=$4 20 | Y=$5 21 | 22 | python main.py --task test --X $X --model $MODEL --pre $PRE --m0 $m0 --s0 $s0 --beta $beta --output $Y --load $LOAD --mean $MEAN --sigma $SIGMA 23 | 24 | -------------------------------------------------------------------------------- /test_map.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | OPTIMIZER=ls 3 | MODEL=ml 4 | 5 | X=$1 6 | LOAD=$2 7 | MEAN=$3 8 | SIGMA=$4 9 | Y=$5 10 | 11 | python main.py --task test --X $X --model $MODEL --pre $PRE --output $Y --load $LOAD --mean $MEAN --sigma $SIGMA 12 | 13 | -------------------------------------------------------------------------------- /test_ml.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | OPTIMIZER=ls 3 | MODEL=ml 4 | 5 | epoch=5 6 | batch_size=128 7 | lr=0.8 8 | 9 | 10 | X=$1 11 | LOAD=$2 12 | MEAN=$3 13 | SIGMA=$4 14 | Y=$5 15 | 16 | python main.py --task test --X $X --model $MODEL --pre $PRE --epoch $epoch --batch_size $batch_size --lr $lr --output $Y --load $LOAD --mean $MEAN --sigma $SIGMA 17 | 18 | -------------------------------------------------------------------------------- /train_bayes.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | X=data/X_train.csv 3 | Y=data/T_train.csv 4 | K=1 5 | OPTIMIZER=ls 6 | SCALE=0.75 7 | MODEL=bayes 8 | D=0.012 9 | 10 | m0=0.0 11 | s0=2.0 12 | beta=75.0 13 | 14 | OUTPUT="model/${MODEL}-m0-${m0}-s0-${s0}-beta-${beta}-${PRE}-${D}" 15 | 16 | FRAC=$1 17 | 18 | python main.py --task train --X $X --Y $Y --K $K --model $MODEL --pre $PRE --gsize $D --d $D --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --m0 $m0 --s0 $s0 --beta $beta --output $OUTPUT --plot 2d 19 | 20 | -------------------------------------------------------------------------------- /train_bayes_cross_validation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PRE=grid 4 | X=data/X_train.csv 5 | Y=data/T_train.csv 6 | K=2 7 | OPTIMIZER=ls 8 | SCALE=1.0 9 | FRAC=0.8 10 | MODEL=bayes 11 | 12 | for m0 in $1 13 | do 14 | for s0 in $2 15 | do 16 | for beta in $3 17 | do 18 | # kmeans: number of cluster; grid: gsize 19 | for d in $4 20 | do 21 | log_name="log/${MODEL}-m0-${m0}-s0-${s0}-beta-${beta}-${PRE}-${d}.log" 22 | python main.py --task train --X $X --Y $Y --K $K --model bayes --pre $PRE --d $d --gsize $d --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --m0 $m0 --s0 $s0 --beta $beta --log $log_name 23 | done 24 | done 25 | done 26 | done 27 | -------------------------------------------------------------------------------- /train_map.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | X=data/X_train.csv 3 | Y=data/T_train.csv 4 | K=1 5 | OPTIMIZER=seq 6 | SCALE=0.75 7 | MODEL=map 8 | D=0.012 9 | 10 | epoch=50 11 | batch_size=1 12 | lr=0.05 13 | alpha=0.0001 14 | 15 | OUTPUT="model/${MODEL}-epoch-${epoch}-${batch_size}-lr-${lr}-${PRE}-${D}" 16 | 17 | FRAC=$1 18 | 19 | python main.py --task train --X $X --Y $Y --K $K --model $MODEL --pre $PRE --gsize $D --d $D --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --epoch $epoch --batch_size $batch_size --lr $lr --alpha $alpha --output $OUTPUT --plot 2d 20 | 21 | -------------------------------------------------------------------------------- /train_map_cross_validation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PRE=grid 4 | X=data/X_train.csv 5 | Y=data/T_train.csv 6 | K=2 7 | OPTIMIZER=seq 8 | SCALE=1.0 9 | FRAC=0.8 10 | MODEL=map 11 | 12 | for epoch in $1 13 | do 14 | for batch_size in $2 15 | do 16 | for lr in $3 17 | do 18 | # kmeans: number of cluster; grid: gsize 19 | for d in $4 20 | do 21 | for alpha in $5 22 | do 23 | log_name="log/${MODEL}-m0-${m0}-s0-${s0}-beta-${beta}-${PRE}-${d}.log" 24 | python main.py --task train --X $X --Y $Y --K $K --model ml --pre $PRE --d $d --gsize $d --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --epoch $epoch --batch_size $batch_size --lr $lr --log $log_name 25 | done 26 | done 27 | done 28 | done 29 | done 30 | -------------------------------------------------------------------------------- /train_ml.sh: -------------------------------------------------------------------------------- 1 | PRE=grid 2 | X=data/X_train.csv 3 | Y=data/T_train.csv 4 | K=1 5 | OPTIMIZER=seq 6 | SCALE=1.0 7 | MODEL=ml 8 | D=0.012 9 | 10 | epoch=50 11 | batch_size=1 12 | lr=0.05 13 | 14 | OUTPUT="model/${MODEL}-epoch-${epoch}-${batch_size}-lr-${lr}-${PRE}-${D}" 15 | 16 | FRAC=$1 17 | 18 | python main.py --task train --X $X --Y $Y --K $K --model $MODEL --pre $PRE --gsize $D --d $D --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --epoch $epoch --batch_size $batch_size --lr $lr --output $OUTPUT 19 | 20 | -------------------------------------------------------------------------------- /train_ml_cross_validation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PRE=grid 4 | X=data/X_train.csv 5 | Y=data/T_train.csv 6 | K=2 7 | OPTIMIZER=seq 8 | SCALE=1.0 9 | FRAC=0.8 10 | MODEL=ml 11 | 12 | for epoch in $1 13 | do 14 | for batch_size in $2 15 | do 16 | for lr in $3 17 | do 18 | # kmeans: number of cluster; grid: gsize 19 | for d in $4 20 | do 21 | log_name="log/${MODEL}-m0-${m0}-s0-${s0}-beta-${beta}-${PRE}-${d}.log" 22 | python main.py --task train --X $X --Y $Y --K $K --model ml --pre $PRE --d $d --gsize $d --optimizer $OPTIMIZER --scale $SCALE --frac $FRAC --epoch $epoch --batch_size $batch_size --lr $lr --log $log_name 23 | done 24 | done 25 | done 26 | done 27 | -------------------------------------------------------------------------------- /util.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | import numpy as np 3 | import random 4 | import csv 5 | 6 | 7 | def generate_1d_dataset(N, variance=100): 8 | X = np.matrix(range(N)).T + 1 9 | Y = np.matrix([random.random() * variance + i * 10 + 900 for i in range(len(X))]).T 10 | return X, Y 11 | 12 | def load_csv(x_path): 13 | x_file = open(x_path, 'rb') 14 | 15 | x_csv_reader = csv.reader(x_file, delimiter=',') 16 | 17 | xs = np.array([x for x in x_csv_reader], dtype=np.float32) 18 | 19 | return xs 20 | 21 | def load_test_dataset_csv(x_path): 22 | x_file = open(x_path, 'rb') 23 | 24 | x_csv_reader = csv.reader(x_file, delimiter=',') 25 | 26 | xs = np.array([x for x in x_csv_reader], dtype=np.float32) 27 | 28 | return xs, len(xs) 29 | 30 | def load_data(x_path, y_path, shuffle=True): 31 | xs, ys = load_dataset_csv(x_path, y_path) 32 | 33 | n = len(xs) 34 | shuffle_indices = range(n) 35 | np.random.shuffle(shuffle_indices) 36 | 37 | return xs, ys, n 38 | 39 | def load_dataset_csv(x_path, y_path): 40 | x_file = open(x_path, 'rb') 41 | y_file = open(y_path, 'rb') 42 | 43 | x_csv_reader = csv.reader(x_file, delimiter=',') 44 | y_csv_reader = csv.reader(y_file, delimiter=',') 45 | 46 | xs = np.array([x for x in x_csv_reader], dtype=np.float32) 47 | ys = np.array([y for y in y_csv_reader], dtype=np.float32) 48 | 49 | return xs, ys 50 | 51 | --------------------------------------------------------------------------------