You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hawq.apache.org by in...@apache.org on 2018/03/30 02:20:27 UTC

[1/4] incubator-hawq git commit: HAWQ-1598. Vectorized Scan Node Framework initialization

Repository: incubator-hawq
Updated Branches:
  refs/heads/master d56aa1041 -> 30b30449a


http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/test/feature/vexecutor/test_vexecutor.cpp
----------------------------------------------------------------------
diff --git a/src/test/feature/vexecutor/test_vexecutor.cpp b/src/test/feature/vexecutor/test_vexecutor.cpp
index fe6e012..08c4300 100644
--- a/src/test/feature/vexecutor/test_vexecutor.cpp
+++ b/src/test/feature/vexecutor/test_vexecutor.cpp
@@ -22,11 +22,11 @@
 
 using std::string;
 
-class TestVexecutor: public ::testing::Test
+class TestVexecutor : public ::testing::Test
 {
-	public:
-		TestVexecutor() {};
-		~TestVexecutor() {};
+  public:
+	TestVexecutor(){};
+	~TestVexecutor(){};
 };
 
 //#define TEST_F_FILE(TestName, basePath, testcase)	\
@@ -45,7 +45,6 @@ class TestVexecutor: public ::testing::Test
 //TEST_F_FILE_TYPE(vadt)
 //TEST_F_FILE_TYPE(drop_type)
 
-
 TEST_F(TestVexecutor, vadt)
 {
 	// preprocess source files to get sql/ans files
@@ -60,11 +59,47 @@ TEST_F(TestVexecutor, vadt)
 
 	// run sql file to get ans file and then diff it with out file
 	util.execSQLFile("vexecutor/sql/create_type.sql",
-	                 "vexecutor/ans/create_type.ans");
+					 "vexecutor/ans/create_type.ans");
 
 	util.execSQLFile("vexecutor/sql/vadt.sql",
-	                 "vexecutor/ans/vadt.ans");
+					 "vexecutor/ans/vadt.ans");
 
 	util.execSQLFile("vexecutor/sql/drop_type.sql",
-	                 "vexecutor/ans/drop_type.ans");
+					 "vexecutor/ans/drop_type.ans");
 }
+
+TEST_F(TestVexecutor, scanframework)
+{
+	hawq::test::SQLUtility util;
+
+	util.execute("drop table if exists test1");
+	util.execute("create table test1 ("
+				 "	unique1		int4,"
+				 "	unique2		int4,"
+				 "	two			int4,"
+				 "	four		int4,"
+				 "	ten			int4,"
+				 "	twenty		int4,"
+				 "	hundred		int4,"
+				 "	thousand	int4,"
+				 "	twothousand	int4,"
+				 "	fivethous	int4,"
+				 "	tenthous	int4,"
+				 "	odd			int4,"
+				 "	even		int4,"
+				 "	stringu1	name,"
+				 "	stringu2	name,"
+				 "	string4		name) WITH (appendonly = true, orientation = PARQUET, pagesize = 1048576, rowgroupsize = 8388608, compresstype = SNAPPY) DISTRIBUTED RANDOMLY;");
+
+  std::string pwd = util.getTestRootPath();
+  std::string cmd = "COPY test1 FROM '" + pwd + "/vexecutor/data/tenk.data'";
+  std::cout << cmd << std::endl;
+  util.execute(cmd);
+  util.execute("select unique1 from test1");
+  util.execute("SET vectorized_executor_enable to on");
+
+  util.execSQLFile("vexecutor/sql/scan1.sql",
+					"vexecutor/ans/scan1.ans");
+
+  util.execute("drop table test1");
+}
\ No newline at end of file


[3/4] incubator-hawq git commit: HAWQ-1598. Vectorized Scan Node Framework initialization

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

<TRUNCATED>


[2/4] incubator-hawq git commit: HAWQ-1598. Vectorized Scan Node Framework initialization

Posted by in...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/test/feature/vexecutor/data/tenk.data
----------------------------------------------------------------------
diff --git a/src/test/feature/vexecutor/data/tenk.data b/src/test/feature/vexecutor/data/tenk.data
new file mode 100755
index 0000000..c9064c9
--- /dev/null
+++ b/src/test/feature/vexecutor/data/tenk.data
@@ -0,0 +1,10000 @@
+8800	0	0	0	0	0	0	800	800	3800	8800	0	1	MAAAAA	AAAAAA	AAAAxx
+1891	1	1	3	1	11	91	891	1891	1891	1891	182	183	TUAAAA	BAAAAA	HHHHxx
+3420	2	0	0	0	0	20	420	1420	3420	3420	40	41	OBAAAA	CAAAAA	OOOOxx
+9850	3	0	2	0	10	50	850	1850	4850	9850	100	101	WOAAAA	DAAAAA	VVVVxx
+7164	4	0	0	4	4	64	164	1164	2164	7164	128	129	OPAAAA	EAAAAA	AAAAxx
+8009	5	1	1	9	9	9	9	9	3009	8009	18	19	BWAAAA	FAAAAA	HHHHxx
+5057	6	1	1	7	17	57	57	1057	57	5057	114	115	NMAAAA	GAAAAA	OOOOxx
+6701	7	1	1	1	1	1	701	701	1701	6701	2	3	TXAAAA	HAAAAA	VVVVxx
+4321	8	1	1	1	1	21	321	321	4321	4321	42	43	FKAAAA	IAAAAA	AAAAxx
+3043	9	1	3	3	3	43	43	1043	3043	3043	86	87	BNAAAA	JAAAAA	HHHHxx
+1314	10	0	2	4	14	14	314	1314	1314	1314	28	29	OYAAAA	KAAAAA	OOOOxx
+1504	11	0	0	4	4	4	504	1504	1504	1504	8	9	WFAAAA	LAAAAA	VVVVxx
+5222	12	0	2	2	2	22	222	1222	222	5222	44	45	WSAAAA	MAAAAA	AAAAxx
+6243	13	1	3	3	3	43	243	243	1243	6243	86	87	DGAAAA	NAAAAA	HHHHxx
+5471	14	1	3	1	11	71	471	1471	471	5471	142	143	LCAAAA	OAAAAA	OOOOxx
+5006	15	0	2	6	6	6	6	1006	6	5006	12	13	OKAAAA	PAAAAA	VVVVxx
+5387	16	1	3	7	7	87	387	1387	387	5387	174	175	FZAAAA	QAAAAA	AAAAxx
+5785	17	1	1	5	5	85	785	1785	785	5785	170	171	NOAAAA	RAAAAA	HHHHxx
+6621	18	1	1	1	1	21	621	621	1621	6621	42	43	RUAAAA	SAAAAA	OOOOxx
+6969	19	1	1	9	9	69	969	969	1969	6969	138	139	BIAAAA	TAAAAA	VVVVxx
+9460	20	0	0	0	0	60	460	1460	4460	9460	120	121	WZAAAA	UAAAAA	AAAAxx
+59	21	1	3	9	19	59	59	59	59	59	118	119	HCAAAA	VAAAAA	HHHHxx
+8020	22	0	0	0	0	20	20	20	3020	8020	40	41	MWAAAA	WAAAAA	OOOOxx
+7695	23	1	3	5	15	95	695	1695	2695	7695	190	191	ZJAAAA	XAAAAA	VVVVxx
+3442	24	0	2	2	2	42	442	1442	3442	3442	84	85	KCAAAA	YAAAAA	AAAAxx
+5119	25	1	3	9	19	19	119	1119	119	5119	38	39	XOAAAA	ZAAAAA	HHHHxx
+646	26	0	2	6	6	46	646	646	646	646	92	93	WYAAAA	ABAAAA	OOOOxx
+9605	27	1	1	5	5	5	605	1605	4605	9605	10	11	LFAAAA	BBAAAA	VVVVxx
+263	28	1	3	3	3	63	263	263	263	263	126	127	DKAAAA	CBAAAA	AAAAxx
+3269	29	1	1	9	9	69	269	1269	3269	3269	138	139	TVAAAA	DBAAAA	HHHHxx
+1839	30	1	3	9	19	39	839	1839	1839	1839	78	79	TSAAAA	EBAAAA	OOOOxx
+9144	31	0	0	4	4	44	144	1144	4144	9144	88	89	SNAAAA	FBAAAA	VVVVxx
+2513	32	1	1	3	13	13	513	513	2513	2513	26	27	RSAAAA	GBAAAA	AAAAxx
+8850	33	0	2	0	10	50	850	850	3850	8850	100	101	KCAAAA	HBAAAA	HHHHxx
+236	34	0	0	6	16	36	236	236	236	236	72	73	CJAAAA	IBAAAA	OOOOxx
+3162	35	0	2	2	2	62	162	1162	3162	3162	124	125	QRAAAA	JBAAAA	VVVVxx
+4380	36	0	0	0	0	80	380	380	4380	4380	160	161	MMAAAA	KBAAAA	AAAAxx
+8095	37	1	3	5	15	95	95	95	3095	8095	190	191	JZAAAA	LBAAAA	HHHHxx
+209	38	1	1	9	9	9	209	209	209	209	18	19	BIAAAA	MBAAAA	OOOOxx
+3055	39	1	3	5	15	55	55	1055	3055	3055	110	111	NNAAAA	NBAAAA	VVVVxx
+6921	40	1	1	1	1	21	921	921	1921	6921	42	43	FGAAAA	OBAAAA	AAAAxx
+7046	41	0	2	6	6	46	46	1046	2046	7046	92	93	ALAAAA	PBAAAA	HHHHxx
+7912	42	0	0	2	12	12	912	1912	2912	7912	24	25	ISAAAA	QBAAAA	OOOOxx
+7267	43	1	3	7	7	67	267	1267	2267	7267	134	135	NTAAAA	RBAAAA	VVVVxx
+3599	44	1	3	9	19	99	599	1599	3599	3599	198	199	LIAAAA	SBAAAA	AAAAxx
+923	45	1	3	3	3	23	923	923	923	923	46	47	NJAAAA	TBAAAA	HHHHxx
+1437	46	1	1	7	17	37	437	1437	1437	1437	74	75	HDAAAA	UBAAAA	OOOOxx
+6439	47	1	3	9	19	39	439	439	1439	6439	78	79	RNAAAA	VBAAAA	VVVVxx
+6989	48	1	1	9	9	89	989	989	1989	6989	178	179	VIAAAA	WBAAAA	AAAAxx
+8798	49	0	2	8	18	98	798	798	3798	8798	196	197	KAAAAA	XBAAAA	HHHHxx
+5960	50	0	0	0	0	60	960	1960	960	5960	120	121	GVAAAA	YBAAAA	OOOOxx
+5832	51	0	0	2	12	32	832	1832	832	5832	64	65	IQAAAA	ZBAAAA	VVVVxx
+6066	52	0	2	6	6	66	66	66	1066	6066	132	133	IZAAAA	ACAAAA	AAAAxx
+322	53	0	2	2	2	22	322	322	322	322	44	45	KMAAAA	BCAAAA	HHHHxx
+8321	54	1	1	1	1	21	321	321	3321	8321	42	43	BIAAAA	CCAAAA	OOOOxx
+734	55	0	2	4	14	34	734	734	734	734	68	69	GCAAAA	DCAAAA	VVVVxx
+688	56	0	0	8	8	88	688	688	688	688	176	177	MAAAAA	ECAAAA	AAAAxx
+4212	57	0	0	2	12	12	212	212	4212	4212	24	25	AGAAAA	FCAAAA	HHHHxx
+9653	58	1	1	3	13	53	653	1653	4653	9653	106	107	HHAAAA	GCAAAA	OOOOxx
+2677	59	1	1	7	17	77	677	677	2677	2677	154	155	ZYAAAA	HCAAAA	VVVVxx
+5423	60	1	3	3	3	23	423	1423	423	5423	46	47	PAAAAA	ICAAAA	AAAAxx
+2592	61	0	0	2	12	92	592	592	2592	2592	184	185	SVAAAA	JCAAAA	HHHHxx
+3233	62	1	1	3	13	33	233	1233	3233	3233	66	67	JUAAAA	KCAAAA	OOOOxx
+5032	63	0	0	2	12	32	32	1032	32	5032	64	65	OLAAAA	LCAAAA	VVVVxx
+2525	64	1	1	5	5	25	525	525	2525	2525	50	51	DTAAAA	MCAAAA	AAAAxx
+4450	65	0	2	0	10	50	450	450	4450	4450	100	101	EPAAAA	NCAAAA	HHHHxx
+5778	66	0	2	8	18	78	778	1778	778	5778	156	157	GOAAAA	OCAAAA	OOOOxx
+5852	67	0	0	2	12	52	852	1852	852	5852	104	105	CRAAAA	PCAAAA	VVVVxx
+5404	68	0	0	4	4	4	404	1404	404	5404	8	9	WZAAAA	QCAAAA	AAAAxx
+6223	69	1	3	3	3	23	223	223	1223	6223	46	47	JFAAAA	RCAAAA	HHHHxx
+6133	70	1	1	3	13	33	133	133	1133	6133	66	67	XBAAAA	SCAAAA	OOOOxx
+9112	71	0	0	2	12	12	112	1112	4112	9112	24	25	MMAAAA	TCAAAA	VVVVxx
+7575	72	1	3	5	15	75	575	1575	2575	7575	150	151	JFAAAA	UCAAAA	AAAAxx
+7414	73	0	2	4	14	14	414	1414	2414	7414	28	29	EZAAAA	VCAAAA	HHHHxx
+9741	74	1	1	1	1	41	741	1741	4741	9741	82	83	RKAAAA	WCAAAA	OOOOxx
+3767	75	1	3	7	7	67	767	1767	3767	3767	134	135	XOAAAA	XCAAAA	VVVVxx
+9372	76	0	0	2	12	72	372	1372	4372	9372	144	145	MWAAAA	YCAAAA	AAAAxx
+8976	77	0	0	6	16	76	976	976	3976	8976	152	153	GHAAAA	ZCAAAA	HHHHxx
+4071	78	1	3	1	11	71	71	71	4071	4071	142	143	PAAAAA	ADAAAA	OOOOxx
+1311	79	1	3	1	11	11	311	1311	1311	1311	22	23	LYAAAA	BDAAAA	VVVVxx
+2604	80	0	0	4	4	4	604	604	2604	2604	8	9	EWAAAA	CDAAAA	AAAAxx
+8840	81	0	0	0	0	40	840	840	3840	8840	80	81	ACAAAA	DDAAAA	HHHHxx
+567	82	1	3	7	7	67	567	567	567	567	134	135	VVAAAA	EDAAAA	OOOOxx
+5215	83	1	3	5	15	15	215	1215	215	5215	30	31	PSAAAA	FDAAAA	VVVVxx
+5474	84	0	2	4	14	74	474	1474	474	5474	148	149	OCAAAA	GDAAAA	AAAAxx
+3906	85	0	2	6	6	6	906	1906	3906	3906	12	13	GUAAAA	HDAAAA	HHHHxx
+1769	86	1	1	9	9	69	769	1769	1769	1769	138	139	BQAAAA	IDAAAA	OOOOxx
+1454	87	0	2	4	14	54	454	1454	1454	1454	108	109	YDAAAA	JDAAAA	VVVVxx
+6877	88	1	1	7	17	77	877	877	1877	6877	154	155	NEAAAA	KDAAAA	AAAAxx
+6501	89	1	1	1	1	1	501	501	1501	6501	2	3	BQAAAA	LDAAAA	HHHHxx
+934	90	0	2	4	14	34	934	934	934	934	68	69	YJAAAA	MDAAAA	OOOOxx
+4075	91	1	3	5	15	75	75	75	4075	4075	150	151	TAAAAA	NDAAAA	VVVVxx
+3180	92	0	0	0	0	80	180	1180	3180	3180	160	161	ISAAAA	ODAAAA	AAAAxx
+7787	93	1	3	7	7	87	787	1787	2787	7787	174	175	NNAAAA	PDAAAA	HHHHxx
+6401	94	1	1	1	1	1	401	401	1401	6401	2	3	FMAAAA	QDAAAA	OOOOxx
+4244	95	0	0	4	4	44	244	244	4244	4244	88	89	GHAAAA	RDAAAA	VVVVxx
+4591	96	1	3	1	11	91	591	591	4591	4591	182	183	PUAAAA	SDAAAA	AAAAxx
+4113	97	1	1	3	13	13	113	113	4113	4113	26	27	FCAAAA	TDAAAA	HHHHxx
+5925	98	1	1	5	5	25	925	1925	925	5925	50	51	XTAAAA	UDAAAA	OOOOxx
+1987	99	1	3	7	7	87	987	1987	1987	1987	174	175	LYAAAA	VDAAAA	VVVVxx
+8248	100	0	0	8	8	48	248	248	3248	8248	96	97	GFAAAA	WDAAAA	AAAAxx
+4151	101	1	3	1	11	51	151	151	4151	4151	102	103	RDAAAA	XDAAAA	HHHHxx
+8670	102	0	2	0	10	70	670	670	3670	8670	140	141	MVAAAA	YDAAAA	OOOOxx
+6194	103	0	2	4	14	94	194	194	1194	6194	188	189	GEAAAA	ZDAAAA	VVVVxx
+88	104	0	0	8	8	88	88	88	88	88	176	177	KDAAAA	AEAAAA	AAAAxx
+4058	105	0	2	8	18	58	58	58	4058	4058	116	117	CAAAAA	BEAAAA	HHHHxx
+2742	106	0	2	2	2	42	742	742	2742	2742	84	85	MBAAAA	CEAAAA	OOOOxx
+8275	107	1	3	5	15	75	275	275	3275	8275	150	151	HGAAAA	DEAAAA	VVVVxx
+4258	108	0	2	8	18	58	258	258	4258	4258	116	117	UHAAAA	EEAAAA	AAAAxx
+6129	109	1	1	9	9	29	129	129	1129	6129	58	59	TBAAAA	FEAAAA	HHHHxx
+7243	110	1	3	3	3	43	243	1243	2243	7243	86	87	PSAAAA	GEAAAA	OOOOxx
+2392	111	0	0	2	12	92	392	392	2392	2392	184	185	AOAAAA	HEAAAA	VVVVxx
+9853	112	1	1	3	13	53	853	1853	4853	9853	106	107	ZOAAAA	IEAAAA	AAAAxx
+6064	113	0	0	4	4	64	64	64	1064	6064	128	129	GZAAAA	JEAAAA	HHHHxx
+4391	114	1	3	1	11	91	391	391	4391	4391	182	183	XMAAAA	KEAAAA	OOOOxx
+726	115	0	2	6	6	26	726	726	726	726	52	53	YBAAAA	LEAAAA	VVVVxx
+6957	116	1	1	7	17	57	957	957	1957	6957	114	115	PHAAAA	MEAAAA	AAAAxx
+3853	117	1	1	3	13	53	853	1853	3853	3853	106	107	FSAAAA	NEAAAA	HHHHxx
+4524	118	0	0	4	4	24	524	524	4524	4524	48	49	ASAAAA	OEAAAA	OOOOxx
+5330	119	0	2	0	10	30	330	1330	330	5330	60	61	AXAAAA	PEAAAA	VVVVxx
+6671	120	1	3	1	11	71	671	671	1671	6671	142	143	PWAAAA	QEAAAA	AAAAxx
+5314	121	0	2	4	14	14	314	1314	314	5314	28	29	KWAAAA	REAAAA	HHHHxx
+9202	122	0	2	2	2	2	202	1202	4202	9202	4	5	YPAAAA	SEAAAA	OOOOxx
+4596	123	0	0	6	16	96	596	596	4596	4596	192	193	UUAAAA	TEAAAA	VVVVxx
+8951	124	1	3	1	11	51	951	951	3951	8951	102	103	HGAAAA	UEAAAA	AAAAxx
+9902	125	0	2	2	2	2	902	1902	4902	9902	4	5	WQAAAA	VEAAAA	HHHHxx
+1440	126	0	0	0	0	40	440	1440	1440	1440	80	81	KDAAAA	WEAAAA	OOOOxx
+5339	127	1	3	9	19	39	339	1339	339	5339	78	79	JXAAAA	XEAAAA	VVVVxx
+3371	128	1	3	1	11	71	371	1371	3371	3371	142	143	RZAAAA	YEAAAA	AAAAxx
+4467	129	1	3	7	7	67	467	467	4467	4467	134	135	VPAAAA	ZEAAAA	HHHHxx
+6216	130	0	0	6	16	16	216	216	1216	6216	32	33	CFAAAA	AFAAAA	OOOOxx
+5364	131	0	0	4	4	64	364	1364	364	5364	128	129	IYAAAA	BFAAAA	VVVVxx
+7547	132	1	3	7	7	47	547	1547	2547	7547	94	95	HEAAAA	CFAAAA	AAAAxx
+4338	133	0	2	8	18	38	338	338	4338	4338	76	77	WKAAAA	DFAAAA	HHHHxx
+3481	134	1	1	1	1	81	481	1481	3481	3481	162	163	XDAAAA	EFAAAA	OOOOxx
+826	135	0	2	6	6	26	826	826	826	826	52	53	UFAAAA	FFAAAA	VVVVxx
+3647	136	1	3	7	7	47	647	1647	3647	3647	94	95	HKAAAA	GFAAAA	AAAAxx
+3337	137	1	1	7	17	37	337	1337	3337	3337	74	75	JYAAAA	HFAAAA	HHHHxx
+3591	138	1	3	1	11	91	591	1591	3591	3591	182	183	DIAAAA	IFAAAA	OOOOxx
+7192	139	0	0	2	12	92	192	1192	2192	7192	184	185	QQAAAA	JFAAAA	VVVVxx
+1078	140	0	2	8	18	78	78	1078	1078	1078	156	157	MPAAAA	KFAAAA	AAAAxx
+1310	141	0	2	0	10	10	310	1310	1310	1310	20	21	KYAAAA	LFAAAA	HHHHxx
+9642	142	0	2	2	2	42	642	1642	4642	9642	84	85	WGAAAA	MFAAAA	OOOOxx
+39	143	1	3	9	19	39	39	39	39	39	78	79	NBAAAA	NFAAAA	VVVVxx
+8682	144	0	2	2	2	82	682	682	3682	8682	164	165	YVAAAA	OFAAAA	AAAAxx
+1794	145	0	2	4	14	94	794	1794	1794	1794	188	189	ARAAAA	PFAAAA	HHHHxx
+5630	146	0	2	0	10	30	630	1630	630	5630	60	61	OIAAAA	QFAAAA	OOOOxx
+6748	147	0	0	8	8	48	748	748	1748	6748	96	97	OZAAAA	RFAAAA	VVVVxx
+3766	148	0	2	6	6	66	766	1766	3766	3766	132	133	WOAAAA	SFAAAA	AAAAxx
+6403	149	1	3	3	3	3	403	403	1403	6403	6	7	HMAAAA	TFAAAA	HHHHxx
+175	150	1	3	5	15	75	175	175	175	175	150	151	TGAAAA	UFAAAA	OOOOxx
+2179	151	1	3	9	19	79	179	179	2179	2179	158	159	VFAAAA	VFAAAA	VVVVxx
+7897	152	1	1	7	17	97	897	1897	2897	7897	194	195	TRAAAA	WFAAAA	AAAAxx
+2760	153	0	0	0	0	60	760	760	2760	2760	120	121	ECAAAA	XFAAAA	HHHHxx
+1675	154	1	3	5	15	75	675	1675	1675	1675	150	151	LMAAAA	YFAAAA	OOOOxx
+2564	155	0	0	4	4	64	564	564	2564	2564	128	129	QUAAAA	ZFAAAA	VVVVxx
+157	156	1	1	7	17	57	157	157	157	157	114	115	BGAAAA	AGAAAA	AAAAxx
+8779	157	1	3	9	19	79	779	779	3779	8779	158	159	RZAAAA	BGAAAA	HHHHxx
+9591	158	1	3	1	11	91	591	1591	4591	9591	182	183	XEAAAA	CGAAAA	OOOOxx
+8732	159	0	0	2	12	32	732	732	3732	8732	64	65	WXAAAA	DGAAAA	VVVVxx
+139	160	1	3	9	19	39	139	139	139	139	78	79	JFAAAA	EGAAAA	AAAAxx
+5372	161	0	0	2	12	72	372	1372	372	5372	144	145	QYAAAA	FGAAAA	HHHHxx
+1278	162	0	2	8	18	78	278	1278	1278	1278	156	157	EXAAAA	GGAAAA	OOOOxx
+4697	163	1	1	7	17	97	697	697	4697	4697	194	195	RYAAAA	HGAAAA	VVVVxx
+8610	164	0	2	0	10	10	610	610	3610	8610	20	21	ETAAAA	IGAAAA	AAAAxx
+8180	165	0	0	0	0	80	180	180	3180	8180	160	161	QCAAAA	JGAAAA	HHHHxx
+2399	166	1	3	9	19	99	399	399	2399	2399	198	199	HOAAAA	KGAAAA	OOOOxx
+615	167	1	3	5	15	15	615	615	615	615	30	31	RXAAAA	LGAAAA	VVVVxx
+7629	168	1	1	9	9	29	629	1629	2629	7629	58	59	LHAAAA	MGAAAA	AAAAxx
+7628	169	0	0	8	8	28	628	1628	2628	7628	56	57	KHAAAA	NGAAAA	HHHHxx
+4659	170	1	3	9	19	59	659	659	4659	4659	118	119	FXAAAA	OGAAAA	OOOOxx
+5865	171	1	1	5	5	65	865	1865	865	5865	130	131	PRAAAA	PGAAAA	VVVVxx
+3973	172	1	1	3	13	73	973	1973	3973	3973	146	147	VWAAAA	QGAAAA	AAAAxx
+552	173	0	0	2	12	52	552	552	552	552	104	105	GVAAAA	RGAAAA	HHHHxx
+708	174	0	0	8	8	8	708	708	708	708	16	17	GBAAAA	SGAAAA	OOOOxx
+3550	175	0	2	0	10	50	550	1550	3550	3550	100	101	OGAAAA	TGAAAA	VVVVxx
+5547	176	1	3	7	7	47	547	1547	547	5547	94	95	JFAAAA	UGAAAA	AAAAxx
+489	177	1	1	9	9	89	489	489	489	489	178	179	VSAAAA	VGAAAA	HHHHxx
+3794	178	0	2	4	14	94	794	1794	3794	3794	188	189	YPAAAA	WGAAAA	OOOOxx
+9479	179	1	3	9	19	79	479	1479	4479	9479	158	159	PAAAAA	XGAAAA	VVVVxx
+6435	180	1	3	5	15	35	435	435	1435	6435	70	71	NNAAAA	YGAAAA	AAAAxx
+5120	181	0	0	0	0	20	120	1120	120	5120	40	41	YOAAAA	ZGAAAA	HHHHxx
+3615	182	1	3	5	15	15	615	1615	3615	3615	30	31	BJAAAA	AHAAAA	OOOOxx
+8399	183	1	3	9	19	99	399	399	3399	8399	198	199	BLAAAA	BHAAAA	VVVVxx
+2155	184	1	3	5	15	55	155	155	2155	2155	110	111	XEAAAA	CHAAAA	AAAAxx
+6690	185	0	2	0	10	90	690	690	1690	6690	180	181	IXAAAA	DHAAAA	HHHHxx
+1683	186	1	3	3	3	83	683	1683	1683	1683	166	167	TMAAAA	EHAAAA	OOOOxx
+6302	187	0	2	2	2	2	302	302	1302	6302	4	5	KIAAAA	FHAAAA	VVVVxx
+516	188	0	0	6	16	16	516	516	516	516	32	33	WTAAAA	GHAAAA	AAAAxx
+3901	189	1	1	1	1	1	901	1901	3901	3901	2	3	BUAAAA	HHAAAA	HHHHxx
+6938	190	0	2	8	18	38	938	938	1938	6938	76	77	WGAAAA	IHAAAA	OOOOxx
+7484	191	0	0	4	4	84	484	1484	2484	7484	168	169	WBAAAA	JHAAAA	VVVVxx
+7424	192	0	0	4	4	24	424	1424	2424	7424	48	49	OZAAAA	KHAAAA	AAAAxx
+9410	193	0	2	0	10	10	410	1410	4410	9410	20	21	YXAAAA	LHAAAA	HHHHxx
+1714	194	0	2	4	14	14	714	1714	1714	1714	28	29	YNAAAA	MHAAAA	OOOOxx
+8278	195	0	2	8	18	78	278	278	3278	8278	156	157	KGAAAA	NHAAAA	VVVVxx
+3158	196	0	2	8	18	58	158	1158	3158	3158	116	117	MRAAAA	OHAAAA	AAAAxx
+2511	197	1	3	1	11	11	511	511	2511	2511	22	23	PSAAAA	PHAAAA	HHHHxx
+2912	198	0	0	2	12	12	912	912	2912	2912	24	25	AIAAAA	QHAAAA	OOOOxx
+2648	199	0	0	8	8	48	648	648	2648	2648	96	97	WXAAAA	RHAAAA	VVVVxx
+9385	200	1	1	5	5	85	385	1385	4385	9385	170	171	ZWAAAA	SHAAAA	AAAAxx
+7545	201	1	1	5	5	45	545	1545	2545	7545	90	91	FEAAAA	THAAAA	HHHHxx
+8407	202	1	3	7	7	7	407	407	3407	8407	14	15	JLAAAA	UHAAAA	OOOOxx
+5893	203	1	1	3	13	93	893	1893	893	5893	186	187	RSAAAA	VHAAAA	VVVVxx
+7049	204	1	1	9	9	49	49	1049	2049	7049	98	99	DLAAAA	WHAAAA	AAAAxx
+6812	205	0	0	2	12	12	812	812	1812	6812	24	25	ACAAAA	XHAAAA	HHHHxx
+3649	206	1	1	9	9	49	649	1649	3649	3649	98	99	JKAAAA	YHAAAA	OOOOxx
+9275	207	1	3	5	15	75	275	1275	4275	9275	150	151	TSAAAA	ZHAAAA	VVVVxx
+1179	208	1	3	9	19	79	179	1179	1179	1179	158	159	JTAAAA	AIAAAA	AAAAxx
+969	209	1	1	9	9	69	969	969	969	969	138	139	HLAAAA	BIAAAA	HHHHxx
+7920	210	0	0	0	0	20	920	1920	2920	7920	40	41	QSAAAA	CIAAAA	OOOOxx
+998	211	0	2	8	18	98	998	998	998	998	196	197	KMAAAA	DIAAAA	VVVVxx
+3958	212	0	2	8	18	58	958	1958	3958	3958	116	117	GWAAAA	EIAAAA	AAAAxx
+6052	213	0	0	2	12	52	52	52	1052	6052	104	105	UYAAAA	FIAAAA	HHHHxx
+8791	214	1	3	1	11	91	791	791	3791	8791	182	183	DAAAAA	GIAAAA	OOOOxx
+5191	215	1	3	1	11	91	191	1191	191	5191	182	183	RRAAAA	HIAAAA	VVVVxx
+4267	216	1	3	7	7	67	267	267	4267	4267	134	135	DIAAAA	IIAAAA	AAAAxx
+2829	217	1	1	9	9	29	829	829	2829	2829	58	59	VEAAAA	JIAAAA	HHHHxx
+6396	218	0	0	6	16	96	396	396	1396	6396	192	193	AMAAAA	KIAAAA	OOOOxx
+9413	219	1	1	3	13	13	413	1413	4413	9413	26	27	BYAAAA	LIAAAA	VVVVxx
+614	220	0	2	4	14	14	614	614	614	614	28	29	QXAAAA	MIAAAA	AAAAxx
+4660	221	0	0	0	0	60	660	660	4660	4660	120	121	GXAAAA	NIAAAA	HHHHxx
+8834	222	0	2	4	14	34	834	834	3834	8834	68	69	UBAAAA	OIAAAA	OOOOxx
+2767	223	1	3	7	7	67	767	767	2767	2767	134	135	LCAAAA	PIAAAA	VVVVxx
+2444	224	0	0	4	4	44	444	444	2444	2444	88	89	AQAAAA	QIAAAA	AAAAxx
+4129	225	1	1	9	9	29	129	129	4129	4129	58	59	VCAAAA	RIAAAA	HHHHxx
+3394	226	0	2	4	14	94	394	1394	3394	3394	188	189	OAAAAA	SIAAAA	OOOOxx
+2705	227	1	1	5	5	5	705	705	2705	2705	10	11	BAAAAA	TIAAAA	VVVVxx
+8499	228	1	3	9	19	99	499	499	3499	8499	198	199	XOAAAA	UIAAAA	AAAAxx
+8852	229	0	0	2	12	52	852	852	3852	8852	104	105	MCAAAA	VIAAAA	HHHHxx
+6174	230	0	2	4	14	74	174	174	1174	6174	148	149	MDAAAA	WIAAAA	OOOOxx
+750	231	0	2	0	10	50	750	750	750	750	100	101	WCAAAA	XIAAAA	VVVVxx
+8164	232	0	0	4	4	64	164	164	3164	8164	128	129	ACAAAA	YIAAAA	AAAAxx
+4930	233	0	2	0	10	30	930	930	4930	4930	60	61	QHAAAA	ZIAAAA	HHHHxx
+9904	234	0	0	4	4	4	904	1904	4904	9904	8	9	YQAAAA	AJAAAA	OOOOxx
+7378	235	0	2	8	18	78	378	1378	2378	7378	156	157	UXAAAA	BJAAAA	VVVVxx
+2927	236	1	3	7	7	27	927	927	2927	2927	54	55	PIAAAA	CJAAAA	AAAAxx
+7155	237	1	3	5	15	55	155	1155	2155	7155	110	111	FPAAAA	DJAAAA	HHHHxx
+1302	238	0	2	2	2	2	302	1302	1302	1302	4	5	CYAAAA	EJAAAA	OOOOxx
+5904	239	0	0	4	4	4	904	1904	904	5904	8	9	CTAAAA	FJAAAA	VVVVxx
+9687	240	1	3	7	7	87	687	1687	4687	9687	174	175	PIAAAA	GJAAAA	AAAAxx
+3553	241	1	1	3	13	53	553	1553	3553	3553	106	107	RGAAAA	HJAAAA	HHHHxx
+4447	242	1	3	7	7	47	447	447	4447	4447	94	95	BPAAAA	IJAAAA	OOOOxx
+6878	243	0	2	8	18	78	878	878	1878	6878	156	157	OEAAAA	JJAAAA	VVVVxx
+9470	244	0	2	0	10	70	470	1470	4470	9470	140	141	GAAAAA	KJAAAA	AAAAxx
+9735	245	1	3	5	15	35	735	1735	4735	9735	70	71	LKAAAA	LJAAAA	HHHHxx
+5967	246	1	3	7	7	67	967	1967	967	5967	134	135	NVAAAA	MJAAAA	OOOOxx
+6601	247	1	1	1	1	1	601	601	1601	6601	2	3	XTAAAA	NJAAAA	VVVVxx
+7631	248	1	3	1	11	31	631	1631	2631	7631	62	63	NHAAAA	OJAAAA	AAAAxx
+3559	249	1	3	9	19	59	559	1559	3559	3559	118	119	XGAAAA	PJAAAA	HHHHxx
+2247	250	1	3	7	7	47	247	247	2247	2247	94	95	LIAAAA	QJAAAA	OOOOxx
+9649	251	1	1	9	9	49	649	1649	4649	9649	98	99	DHAAAA	RJAAAA	VVVVxx
+808	252	0	0	8	8	8	808	808	808	808	16	17	CFAAAA	SJAAAA	AAAAxx
+240	253	0	0	0	0	40	240	240	240	240	80	81	GJAAAA	TJAAAA	HHHHxx
+5031	254	1	3	1	11	31	31	1031	31	5031	62	63	NLAAAA	UJAAAA	OOOOxx
+9563	255	1	3	3	3	63	563	1563	4563	9563	126	127	VDAAAA	VJAAAA	VVVVxx
+5656	256	0	0	6	16	56	656	1656	656	5656	112	113	OJAAAA	WJAAAA	AAAAxx
+3886	257	0	2	6	6	86	886	1886	3886	3886	172	173	MTAAAA	XJAAAA	HHHHxx
+2431	258	1	3	1	11	31	431	431	2431	2431	62	63	NPAAAA	YJAAAA	OOOOxx
+5560	259	0	0	0	0	60	560	1560	560	5560	120	121	WFAAAA	ZJAAAA	VVVVxx
+9065	260	1	1	5	5	65	65	1065	4065	9065	130	131	RKAAAA	AKAAAA	AAAAxx
+8130	261	0	2	0	10	30	130	130	3130	8130	60	61	SAAAAA	BKAAAA	HHHHxx
+4054	262	0	2	4	14	54	54	54	4054	4054	108	109	YZAAAA	CKAAAA	OOOOxx
+873	263	1	1	3	13	73	873	873	873	873	146	147	PHAAAA	DKAAAA	VVVVxx
+3092	264	0	0	2	12	92	92	1092	3092	3092	184	185	YOAAAA	EKAAAA	AAAAxx
+6697	265	1	1	7	17	97	697	697	1697	6697	194	195	PXAAAA	FKAAAA	HHHHxx
+2452	266	0	0	2	12	52	452	452	2452	2452	104	105	IQAAAA	GKAAAA	OOOOxx
+7867	267	1	3	7	7	67	867	1867	2867	7867	134	135	PQAAAA	HKAAAA	VVVVxx
+3753	268	1	1	3	13	53	753	1753	3753	3753	106	107	JOAAAA	IKAAAA	AAAAxx
+7834	269	0	2	4	14	34	834	1834	2834	7834	68	69	IPAAAA	JKAAAA	HHHHxx
+5846	270	0	2	6	6	46	846	1846	846	5846	92	93	WQAAAA	KKAAAA	OOOOxx
+7604	271	0	0	4	4	4	604	1604	2604	7604	8	9	MGAAAA	LKAAAA	VVVVxx
+3452	272	0	0	2	12	52	452	1452	3452	3452	104	105	UCAAAA	MKAAAA	AAAAxx
+4788	273	0	0	8	8	88	788	788	4788	4788	176	177	ECAAAA	NKAAAA	HHHHxx
+8600	274	0	0	0	0	0	600	600	3600	8600	0	1	USAAAA	OKAAAA	OOOOxx
+8511	275	1	3	1	11	11	511	511	3511	8511	22	23	JPAAAA	PKAAAA	VVVVxx
+4452	276	0	0	2	12	52	452	452	4452	4452	104	105	GPAAAA	QKAAAA	AAAAxx
+1709	277	1	1	9	9	9	709	1709	1709	1709	18	19	TNAAAA	RKAAAA	HHHHxx
+3440	278	0	0	0	0	40	440	1440	3440	3440	80	81	ICAAAA	SKAAAA	OOOOxx
+9188	279	0	0	8	8	88	188	1188	4188	9188	176	177	KPAAAA	TKAAAA	VVVVxx
+3058	280	0	2	8	18	58	58	1058	3058	3058	116	117	QNAAAA	UKAAAA	AAAAxx
+5821	281	1	1	1	1	21	821	1821	821	5821	42	43	XPAAAA	VKAAAA	HHHHxx
+3428	282	0	0	8	8	28	428	1428	3428	3428	56	57	WBAAAA	WKAAAA	OOOOxx
+3581	283	1	1	1	1	81	581	1581	3581	3581	162	163	THAAAA	XKAAAA	VVVVxx
+7523	284	1	3	3	3	23	523	1523	2523	7523	46	47	JDAAAA	YKAAAA	AAAAxx
+3131	285	1	3	1	11	31	131	1131	3131	3131	62	63	LQAAAA	ZKAAAA	HHHHxx
+2404	286	0	0	4	4	4	404	404	2404	2404	8	9	MOAAAA	ALAAAA	OOOOxx
+5453	287	1	1	3	13	53	453	1453	453	5453	106	107	TBAAAA	BLAAAA	VVVVxx
+1599	288	1	3	9	19	99	599	1599	1599	1599	198	199	NJAAAA	CLAAAA	AAAAxx
+7081	289	1	1	1	1	81	81	1081	2081	7081	162	163	JMAAAA	DLAAAA	HHHHxx
+1750	290	0	2	0	10	50	750	1750	1750	1750	100	101	IPAAAA	ELAAAA	OOOOxx
+5085	291	1	1	5	5	85	85	1085	85	5085	170	171	PNAAAA	FLAAAA	VVVVxx
+9777	292	1	1	7	17	77	777	1777	4777	9777	154	155	BMAAAA	GLAAAA	AAAAxx
+574	293	0	2	4	14	74	574	574	574	574	148	149	CWAAAA	HLAAAA	HHHHxx
+5984	294	0	0	4	4	84	984	1984	984	5984	168	169	EWAAAA	ILAAAA	OOOOxx
+7039	295	1	3	9	19	39	39	1039	2039	7039	78	79	TKAAAA	JLAAAA	VVVVxx
+7143	296	1	3	3	3	43	143	1143	2143	7143	86	87	TOAAAA	KLAAAA	AAAAxx
+5702	297	0	2	2	2	2	702	1702	702	5702	4	5	ILAAAA	LLAAAA	HHHHxx
+362	298	0	2	2	2	62	362	362	362	362	124	125	YNAAAA	MLAAAA	OOOOxx
+6997	299	1	1	7	17	97	997	997	1997	6997	194	195	DJAAAA	NLAAAA	VVVVxx
+2529	300	1	1	9	9	29	529	529	2529	2529	58	59	HTAAAA	OLAAAA	AAAAxx
+6319	301	1	3	9	19	19	319	319	1319	6319	38	39	BJAAAA	PLAAAA	HHHHxx
+954	302	0	2	4	14	54	954	954	954	954	108	109	SKAAAA	QLAAAA	OOOOxx
+3413	303	1	1	3	13	13	413	1413	3413	3413	26	27	HBAAAA	RLAAAA	VVVVxx
+9081	304	1	1	1	1	81	81	1081	4081	9081	162	163	HLAAAA	SLAAAA	AAAAxx
+5599	305	1	3	9	19	99	599	1599	599	5599	198	199	JHAAAA	TLAAAA	HHHHxx
+4772	306	0	0	2	12	72	772	772	4772	4772	144	145	OBAAAA	ULAAAA	OOOOxx
+1124	307	0	0	4	4	24	124	1124	1124	1124	48	49	GRAAAA	VLAAAA	VVVVxx
+7793	308	1	1	3	13	93	793	1793	2793	7793	186	187	TNAAAA	WLAAAA	AAAAxx
+4201	309	1	1	1	1	1	201	201	4201	4201	2	3	PFAAAA	XLAAAA	HHHHxx
+7015	310	1	3	5	15	15	15	1015	2015	7015	30	31	VJAAAA	YLAAAA	OOOOxx
+5936	311	0	0	6	16	36	936	1936	936	5936	72	73	IUAAAA	ZLAAAA	VVVVxx
+4625	312	1	1	5	5	25	625	625	4625	4625	50	51	XVAAAA	AMAAAA	AAAAxx
+4989	313	1	1	9	9	89	989	989	4989	4989	178	179	XJAAAA	BMAAAA	HHHHxx
+4949	314	1	1	9	9	49	949	949	4949	4949	98	99	JIAAAA	CMAAAA	OOOOxx
+6273	315	1	1	3	13	73	273	273	1273	6273	146	147	HHAAAA	DMAAAA	VVVVxx
+4478	316	0	2	8	18	78	478	478	4478	4478	156	157	GQAAAA	EMAAAA	AAAAxx
+8854	317	0	2	4	14	54	854	854	3854	8854	108	109	OCAAAA	FMAAAA	HHHHxx
+2105	318	1	1	5	5	5	105	105	2105	2105	10	11	ZCAAAA	GMAAAA	OOOOxx
+8345	319	1	1	5	5	45	345	345	3345	8345	90	91	ZIAAAA	HMAAAA	VVVVxx
+1941	320	1	1	1	1	41	941	1941	1941	1941	82	83	RWAAAA	IMAAAA	AAAAxx
+1765	321	1	1	5	5	65	765	1765	1765	1765	130	131	XPAAAA	JMAAAA	HHHHxx
+9592	322	0	0	2	12	92	592	1592	4592	9592	184	185	YEAAAA	KMAAAA	OOOOxx
+1694	323	0	2	4	14	94	694	1694	1694	1694	188	189	ENAAAA	LMAAAA	VVVVxx
+8940	324	0	0	0	0	40	940	940	3940	8940	80	81	WFAAAA	MMAAAA	AAAAxx
+7264	325	0	0	4	4	64	264	1264	2264	7264	128	129	KTAAAA	NMAAAA	HHHHxx
+4699	326	1	3	9	19	99	699	699	4699	4699	198	199	TYAAAA	OMAAAA	OOOOxx
+4541	327	1	1	1	1	41	541	541	4541	4541	82	83	RSAAAA	PMAAAA	VVVVxx
+5768	328	0	0	8	8	68	768	1768	768	5768	136	137	WNAAAA	QMAAAA	AAAAxx
+6183	329	1	3	3	3	83	183	183	1183	6183	166	167	VDAAAA	RMAAAA	HHHHxx
+7457	330	1	1	7	17	57	457	1457	2457	7457	114	115	VAAAAA	SMAAAA	OOOOxx
+7317	331	1	1	7	17	17	317	1317	2317	7317	34	35	LVAAAA	TMAAAA	VVVVxx
+1944	332	0	0	4	4	44	944	1944	1944	1944	88	89	UWAAAA	UMAAAA	AAAAxx
+665	333	1	1	5	5	65	665	665	665	665	130	131	PZAAAA	VMAAAA	HHHHxx
+5974	334	0	2	4	14	74	974	1974	974	5974	148	149	UVAAAA	WMAAAA	OOOOxx
+7370	335	0	2	0	10	70	370	1370	2370	7370	140	141	MXAAAA	XMAAAA	VVVVxx
+9196	336	0	0	6	16	96	196	1196	4196	9196	192	193	SPAAAA	YMAAAA	AAAAxx
+6796	337	0	0	6	16	96	796	796	1796	6796	192	193	KBAAAA	ZMAAAA	HHHHxx
+6180	338	0	0	0	0	80	180	180	1180	6180	160	161	SDAAAA	ANAAAA	OOOOxx
+8557	339	1	1	7	17	57	557	557	3557	8557	114	115	DRAAAA	BNAAAA	VVVVxx
+928	340	0	0	8	8	28	928	928	928	928	56	57	SJAAAA	CNAAAA	AAAAxx
+6275	341	1	3	5	15	75	275	275	1275	6275	150	151	JHAAAA	DNAAAA	HHHHxx
+409	342	1	1	9	9	9	409	409	409	409	18	19	TPAAAA	ENAAAA	OOOOxx
+6442	343	0	2	2	2	42	442	442	1442	6442	84	85	UNAAAA	FNAAAA	VVVVxx
+5889	344	1	1	9	9	89	889	1889	889	5889	178	179	NSAAAA	GNAAAA	AAAAxx
+5180	345	0	0	0	0	80	180	1180	180	5180	160	161	GRAAAA	HNAAAA	HHHHxx
+1629	346	1	1	9	9	29	629	1629	1629	1629	58	59	RKAAAA	INAAAA	OOOOxx
+6088	347	0	0	8	8	88	88	88	1088	6088	176	177	EAAAAA	JNAAAA	VVVVxx
+5598	348	0	2	8	18	98	598	1598	598	5598	196	197	IHAAAA	KNAAAA	AAAAxx
+1803	349	1	3	3	3	3	803	1803	1803	1803	6	7	JRAAAA	LNAAAA	HHHHxx
+2330	350	0	2	0	10	30	330	330	2330	2330	60	61	QLAAAA	MNAAAA	OOOOxx
+5901	351	1	1	1	1	1	901	1901	901	5901	2	3	ZSAAAA	NNAAAA	VVVVxx
+780	352	0	0	0	0	80	780	780	780	780	160	161	AEAAAA	ONAAAA	AAAAxx
+7171	353	1	3	1	11	71	171	1171	2171	7171	142	143	VPAAAA	PNAAAA	HHHHxx
+8778	354	0	2	8	18	78	778	778	3778	8778	156	157	QZAAAA	QNAAAA	OOOOxx
+6622	355	0	2	2	2	22	622	622	1622	6622	44	45	SUAAAA	RNAAAA	VVVVxx
+9938	356	0	2	8	18	38	938	1938	4938	9938	76	77	GSAAAA	SNAAAA	AAAAxx
+8254	357	0	2	4	14	54	254	254	3254	8254	108	109	MFAAAA	TNAAAA	HHHHxx
+1951	358	1	3	1	11	51	951	1951	1951	1951	102	103	BXAAAA	UNAAAA	OOOOxx
+1434	359	0	2	4	14	34	434	1434	1434	1434	68	69	EDAAAA	VNAAAA	VVVVxx
+7539	360	1	3	9	19	39	539	1539	2539	7539	78	79	ZDAAAA	WNAAAA	AAAAxx
+600	361	0	0	0	0	0	600	600	600	600	0	1	CXAAAA	XNAAAA	HHHHxx
+3122	362	0	2	2	2	22	122	1122	3122	3122	44	45	CQAAAA	YNAAAA	OOOOxx
+5704	363	0	0	4	4	4	704	1704	704	5704	8	9	KLAAAA	ZNAAAA	VVVVxx
+6300	364	0	0	0	0	0	300	300	1300	6300	0	1	IIAAAA	AOAAAA	AAAAxx
+4585	365	1	1	5	5	85	585	585	4585	4585	170	171	JUAAAA	BOAAAA	HHHHxx
+6313	366	1	1	3	13	13	313	313	1313	6313	26	27	VIAAAA	COAAAA	OOOOxx
+3154	367	0	2	4	14	54	154	1154	3154	3154	108	109	IRAAAA	DOAAAA	VVVVxx
+642	368	0	2	2	2	42	642	642	642	642	84	85	SYAAAA	EOAAAA	AAAAxx
+7736	369	0	0	6	16	36	736	1736	2736	7736	72	73	OLAAAA	FOAAAA	HHHHxx
+5087	370	1	3	7	7	87	87	1087	87	5087	174	175	RNAAAA	GOAAAA	OOOOxx
+5708	371	0	0	8	8	8	708	1708	708	5708	16	17	OLAAAA	HOAAAA	VVVVxx
+8169	372	1	1	9	9	69	169	169	3169	8169	138	139	FCAAAA	IOAAAA	AAAAxx
+9768	373	0	0	8	8	68	768	1768	4768	9768	136	137	SLAAAA	JOAAAA	HHHHxx
+3874	374	0	2	4	14	74	874	1874	3874	3874	148	149	ATAAAA	KOAAAA	OOOOxx
+6831	375	1	3	1	11	31	831	831	1831	6831	62	63	TCAAAA	LOAAAA	VVVVxx
+18	376	0	2	8	18	18	18	18	18	18	36	37	SAAAAA	MOAAAA	AAAAxx
+6375	377	1	3	5	15	75	375	375	1375	6375	150	151	FLAAAA	NOAAAA	HHHHxx
+7106	378	0	2	6	6	6	106	1106	2106	7106	12	13	INAAAA	OOAAAA	OOOOxx
+5926	379	0	2	6	6	26	926	1926	926	5926	52	53	YTAAAA	POAAAA	VVVVxx
+4956	380	0	0	6	16	56	956	956	4956	4956	112	113	QIAAAA	QOAAAA	AAAAxx
+7042	381	0	2	2	2	42	42	1042	2042	7042	84	85	WKAAAA	ROAAAA	HHHHxx
+6043	382	1	3	3	3	43	43	43	1043	6043	86	87	LYAAAA	SOAAAA	OOOOxx
+2084	383	0	0	4	4	84	84	84	2084	2084	168	169	ECAAAA	TOAAAA	VVVVxx
+6038	384	0	2	8	18	38	38	38	1038	6038	76	77	GYAAAA	UOAAAA	AAAAxx
+7253	385	1	1	3	13	53	253	1253	2253	7253	106	107	ZSAAAA	VOAAAA	HHHHxx
+2061	386	1	1	1	1	61	61	61	2061	2061	122	123	HBAAAA	WOAAAA	OOOOxx
+7800	387	0	0	0	0	0	800	1800	2800	7800	0	1	AOAAAA	XOAAAA	VVVVxx
+4970	388	0	2	0	10	70	970	970	4970	4970	140	141	EJAAAA	YOAAAA	AAAAxx
+8580	389	0	0	0	0	80	580	580	3580	8580	160	161	ASAAAA	ZOAAAA	HHHHxx
+9173	390	1	1	3	13	73	173	1173	4173	9173	146	147	VOAAAA	APAAAA	OOOOxx
+8558	391	0	2	8	18	58	558	558	3558	8558	116	117	ERAAAA	BPAAAA	VVVVxx
+3897	392	1	1	7	17	97	897	1897	3897	3897	194	195	XTAAAA	CPAAAA	AAAAxx
+5069	393	1	1	9	9	69	69	1069	69	5069	138	139	ZMAAAA	DPAAAA	HHHHxx
+2301	394	1	1	1	1	1	301	301	2301	2301	2	3	NKAAAA	EPAAAA	OOOOxx
+9863	395	1	3	3	3	63	863	1863	4863	9863	126	127	JPAAAA	FPAAAA	VVVVxx
+5733	396	1	1	3	13	33	733	1733	733	5733	66	67	NMAAAA	GPAAAA	AAAAxx
+2338	397	0	2	8	18	38	338	338	2338	2338	76	77	YLAAAA	HPAAAA	HHHHxx
+9639	398	1	3	9	19	39	639	1639	4639	9639	78	79	TGAAAA	IPAAAA	OOOOxx
+1139	399	1	3	9	19	39	139	1139	1139	1139	78	79	VRAAAA	JPAAAA	VVVVxx
+2293	400	1	1	3	13	93	293	293	2293	2293	186	187	FKAAAA	KPAAAA	AAAAxx
+6125	401	1	1	5	5	25	125	125	1125	6125	50	51	PBAAAA	LPAAAA	HHHHxx
+5374	402	0	2	4	14	74	374	1374	374	5374	148	149	SYAAAA	MPAAAA	OOOOxx
+7216	403	0	0	6	16	16	216	1216	2216	7216	32	33	ORAAAA	NPAAAA	VVVVxx
+2285	404	1	1	5	5	85	285	285	2285	2285	170	171	XJAAAA	OPAAAA	AAAAxx
+2387	405	1	3	7	7	87	387	387	2387	2387	174	175	VNAAAA	PPAAAA	HHHHxx
+5015	406	1	3	5	15	15	15	1015	15	5015	30	31	XKAAAA	QPAAAA	OOOOxx
+2087	407	1	3	7	7	87	87	87	2087	2087	174	175	HCAAAA	RPAAAA	VVVVxx
+4938	408	0	2	8	18	38	938	938	4938	4938	76	77	YHAAAA	SPAAAA	AAAAxx
+3635	409	1	3	5	15	35	635	1635	3635	3635	70	71	VJAAAA	TPAAAA	HHHHxx
+7737	410	1	1	7	17	37	737	1737	2737	7737	74	75	PLAAAA	UPAAAA	OOOOxx
+8056	411	0	0	6	16	56	56	56	3056	8056	112	113	WXAAAA	VPAAAA	VVVVxx
+4502	412	0	2	2	2	2	502	502	4502	4502	4	5	ERAAAA	WPAAAA	AAAAxx
+54	413	0	2	4	14	54	54	54	54	54	108	109	CCAAAA	XPAAAA	HHHHxx
+3182	414	0	2	2	2	82	182	1182	3182	3182	164	165	KSAAAA	YPAAAA	OOOOxx
+3718	415	0	2	8	18	18	718	1718	3718	3718	36	37	ANAAAA	ZPAAAA	VVVVxx
+3989	416	1	1	9	9	89	989	1989	3989	3989	178	179	LXAAAA	AQAAAA	AAAAxx
+8028	417	0	0	8	8	28	28	28	3028	8028	56	57	UWAAAA	BQAAAA	HHHHxx
+1426	418	0	2	6	6	26	426	1426	1426	1426	52	53	WCAAAA	CQAAAA	OOOOxx
+3801	419	1	1	1	1	1	801	1801	3801	3801	2	3	FQAAAA	DQAAAA	VVVVxx
+241	420	1	1	1	1	41	241	241	241	241	82	83	HJAAAA	EQAAAA	AAAAxx
+8000	421	0	0	0	0	0	0	0	3000	8000	0	1	SVAAAA	FQAAAA	HHHHxx
+8357	422	1	1	7	17	57	357	357	3357	8357	114	115	LJAAAA	GQAAAA	OOOOxx
+7548	423	0	0	8	8	48	548	1548	2548	7548	96	97	IEAAAA	HQAAAA	VVVVxx
+7307	424	1	3	7	7	7	307	1307	2307	7307	14	15	BVAAAA	IQAAAA	AAAAxx
+2275	425	1	3	5	15	75	275	275	2275	2275	150	151	NJAAAA	JQAAAA	HHHHxx
+2718	426	0	2	8	18	18	718	718	2718	2718	36	37	OAAAAA	KQAAAA	OOOOxx
+7068	427	0	0	8	8	68	68	1068	2068	7068	136	137	WLAAAA	LQAAAA	VVVVxx
+3181	428	1	1	1	1	81	181	1181	3181	3181	162	163	JSAAAA	MQAAAA	AAAAxx
+749	429	1	1	9	9	49	749	749	749	749	98	99	VCAAAA	NQAAAA	HHHHxx
+5195	430	1	3	5	15	95	195	1195	195	5195	190	191	VRAAAA	OQAAAA	OOOOxx
+6136	431	0	0	6	16	36	136	136	1136	6136	72	73	ACAAAA	PQAAAA	VVVVxx
+8012	432	0	0	2	12	12	12	12	3012	8012	24	25	EWAAAA	QQAAAA	AAAAxx
+3957	433	1	1	7	17	57	957	1957	3957	3957	114	115	FWAAAA	RQAAAA	HHHHxx
+3083	434	1	3	3	3	83	83	1083	3083	3083	166	167	POAAAA	SQAAAA	OOOOxx
+9997	435	1	1	7	17	97	997	1997	4997	9997	194	195	NUAAAA	TQAAAA	VVVVxx
+3299	436	1	3	9	19	99	299	1299	3299	3299	198	199	XWAAAA	UQAAAA	AAAAxx
+846	437	0	2	6	6	46	846	846	846	846	92	93	OGAAAA	VQAAAA	HHHHxx
+2985	438	1	1	5	5	85	985	985	2985	2985	170	171	VKAAAA	WQAAAA	OOOOxx
+9238	439	0	2	8	18	38	238	1238	4238	9238	76	77	IRAAAA	XQAAAA	VVVVxx
+1403	440	1	3	3	3	3	403	1403	1403	1403	6	7	ZBAAAA	YQAAAA	AAAAxx
+5563	441	1	3	3	3	63	563	1563	563	5563	126	127	ZFAAAA	ZQAAAA	HHHHxx
+7965	442	1	1	5	5	65	965	1965	2965	7965	130	131	JUAAAA	ARAAAA	OOOOxx
+4512	443	0	0	2	12	12	512	512	4512	4512	24	25	ORAAAA	BRAAAA	VVVVxx
+9730	444	0	2	0	10	30	730	1730	4730	9730	60	61	GKAAAA	CRAAAA	AAAAxx
+1129	445	1	1	9	9	29	129	1129	1129	1129	58	59	LRAAAA	DRAAAA	HHHHxx
+2624	446	0	0	4	4	24	624	624	2624	2624	48	49	YWAAAA	ERAAAA	OOOOxx
+8178	447	0	2	8	18	78	178	178	3178	8178	156	157	OCAAAA	FRAAAA	VVVVxx
+6468	448	0	0	8	8	68	468	468	1468	6468	136	137	UOAAAA	GRAAAA	AAAAxx
+3027	449	1	3	7	7	27	27	1027	3027	3027	54	55	LMAAAA	HRAAAA	HHHHxx
+3845	450	1	1	5	5	45	845	1845	3845	3845	90	91	XRAAAA	IRAAAA	OOOOxx
+786	451	0	2	6	6	86	786	786	786	786	172	173	GEAAAA	JRAAAA	VVVVxx
+4971	452	1	3	1	11	71	971	971	4971	4971	142	143	FJAAAA	KRAAAA	AAAAxx
+1542	453	0	2	2	2	42	542	1542	1542	1542	84	85	IHAAAA	LRAAAA	HHHHxx
+7967	454	1	3	7	7	67	967	1967	2967	7967	134	135	LUAAAA	MRAAAA	OOOOxx
+443	455	1	3	3	3	43	443	443	443	443	86	87	BRAAAA	NRAAAA	VVVVxx
+7318	456	0	2	8	18	18	318	1318	2318	7318	36	37	MVAAAA	ORAAAA	AAAAxx
+4913	457	1	1	3	13	13	913	913	4913	4913	26	27	ZGAAAA	PRAAAA	HHHHxx
+9466	458	0	2	6	6	66	466	1466	4466	9466	132	133	CAAAAA	QRAAAA	OOOOxx
+7866	459	0	2	6	6	66	866	1866	2866	7866	132	133	OQAAAA	RRAAAA	VVVVxx
+784	460	0	0	4	4	84	784	784	784	784	168	169	EEAAAA	SRAAAA	AAAAxx
+9040	461	0	0	0	0	40	40	1040	4040	9040	80	81	SJAAAA	TRAAAA	HHHHxx
+3954	462	0	2	4	14	54	954	1954	3954	3954	108	109	CWAAAA	URAAAA	OOOOxx
+4183	463	1	3	3	3	83	183	183	4183	4183	166	167	XEAAAA	VRAAAA	VVVVxx
+3608	464	0	0	8	8	8	608	1608	3608	3608	16	17	UIAAAA	WRAAAA	AAAAxx
+7630	465	0	2	0	10	30	630	1630	2630	7630	60	61	MHAAAA	XRAAAA	HHHHxx
+590	466	0	2	0	10	90	590	590	590	590	180	181	SWAAAA	YRAAAA	OOOOxx
+3453	467	1	1	3	13	53	453	1453	3453	3453	106	107	VCAAAA	ZRAAAA	VVVVxx
+7757	468	1	1	7	17	57	757	1757	2757	7757	114	115	JMAAAA	ASAAAA	AAAAxx
+7394	469	0	2	4	14	94	394	1394	2394	7394	188	189	KYAAAA	BSAAAA	HHHHxx
+396	470	0	0	6	16	96	396	396	396	396	192	193	GPAAAA	CSAAAA	OOOOxx
+7873	471	1	1	3	13	73	873	1873	2873	7873	146	147	VQAAAA	DSAAAA	VVVVxx
+1553	472	1	1	3	13	53	553	1553	1553	1553	106	107	THAAAA	ESAAAA	AAAAxx
+598	473	0	2	8	18	98	598	598	598	598	196	197	AXAAAA	FSAAAA	HHHHxx
+7191	474	1	3	1	11	91	191	1191	2191	7191	182	183	PQAAAA	GSAAAA	OOOOxx
+8116	475	0	0	6	16	16	116	116	3116	8116	32	33	EAAAAA	HSAAAA	VVVVxx
+2516	476	0	0	6	16	16	516	516	2516	2516	32	33	USAAAA	ISAAAA	AAAAxx
+7750	477	0	2	0	10	50	750	1750	2750	7750	100	101	CMAAAA	JSAAAA	HHHHxx
+6625	478	1	1	5	5	25	625	625	1625	6625	50	51	VUAAAA	KSAAAA	OOOOxx
+8838	479	0	2	8	18	38	838	838	3838	8838	76	77	YBAAAA	LSAAAA	VVVVxx
+4636	480	0	0	6	16	36	636	636	4636	4636	72	73	IWAAAA	MSAAAA	AAAAxx
+7627	481	1	3	7	7	27	627	1627	2627	7627	54	55	JHAAAA	NSAAAA	HHHHxx
+1690	482	0	2	0	10	90	690	1690	1690	1690	180	181	ANAAAA	OSAAAA	OOOOxx
+7071	483	1	3	1	11	71	71	1071	2071	7071	142	143	ZLAAAA	PSAAAA	VVVVxx
+2081	484	1	1	1	1	81	81	81	2081	2081	162	163	BCAAAA	QSAAAA	AAAAxx
+7138	485	0	2	8	18	38	138	1138	2138	7138	76	77	OOAAAA	RSAAAA	HHHHxx
+864	486	0	0	4	4	64	864	864	864	864	128	129	GHAAAA	SSAAAA	OOOOxx
+6392	487	0	0	2	12	92	392	392	1392	6392	184	185	WLAAAA	TSAAAA	VVVVxx
+7544	488	0	0	4	4	44	544	1544	2544	7544	88	89	EEAAAA	USAAAA	AAAAxx
+5438	489	0	2	8	18	38	438	1438	438	5438	76	77	EBAAAA	VSAAAA	HHHHxx
+7099	490	1	3	9	19	99	99	1099	2099	7099	198	199	BNAAAA	WSAAAA	OOOOxx
+5157	491	1	1	7	17	57	157	1157	157	5157	114	115	JQAAAA	XSAAAA	VVVVxx
+3391	492	1	3	1	11	91	391	1391	3391	3391	182	183	LAAAAA	YSAAAA	AAAAxx
+3805	493	1	1	5	5	5	805	1805	3805	3805	10	11	JQAAAA	ZSAAAA	HHHHxx
+2110	494	0	2	0	10	10	110	110	2110	2110	20	21	EDAAAA	ATAAAA	OOOOxx
+3176	495	0	0	6	16	76	176	1176	3176	3176	152	153	ESAAAA	BTAAAA	VVVVxx
+5918	496	0	2	8	18	18	918	1918	918	5918	36	37	QTAAAA	CTAAAA	AAAAxx
+1218	497	0	2	8	18	18	218	1218	1218	1218	36	37	WUAAAA	DTAAAA	HHHHxx
+6683	498	1	3	3	3	83	683	683	1683	6683	166	167	BXAAAA	ETAAAA	OOOOxx
+914	499	0	2	4	14	14	914	914	914	914	28	29	EJAAAA	FTAAAA	VVVVxx
+4737	500	1	1	7	17	37	737	737	4737	4737	74	75	FAAAAA	GTAAAA	AAAAxx
+7286	501	0	2	6	6	86	286	1286	2286	7286	172	173	GUAAAA	HTAAAA	HHHHxx
+9975	502	1	3	5	15	75	975	1975	4975	9975	150	151	RTAAAA	ITAAAA	OOOOxx
+8030	503	0	2	0	10	30	30	30	3030	8030	60	61	WWAAAA	JTAAAA	VVVVxx
+7364	504	0	0	4	4	64	364	1364	2364	7364	128	129	GXAAAA	KTAAAA	AAAAxx
+1389	505	1	1	9	9	89	389	1389	1389	1389	178	179	LBAAAA	LTAAAA	HHHHxx
+4025	506	1	1	5	5	25	25	25	4025	4025	50	51	VYAAAA	MTAAAA	OOOOxx
+4835	507	1	3	5	15	35	835	835	4835	4835	70	71	ZDAAAA	NTAAAA	VVVVxx
+8045	508	1	1	5	5	45	45	45	3045	8045	90	91	LXAAAA	OTAAAA	AAAAxx
+1864	509	0	0	4	4	64	864	1864	1864	1864	128	129	STAAAA	PTAAAA	HHHHxx
+3313	510	1	1	3	13	13	313	1313	3313	3313	26	27	LXAAAA	QTAAAA	OOOOxx
+2384	511	0	0	4	4	84	384	384	2384	2384	168	169	SNAAAA	RTAAAA	VVVVxx
+6115	512	1	3	5	15	15	115	115	1115	6115	30	31	FBAAAA	STAAAA	AAAAxx
+5705	513	1	1	5	5	5	705	1705	705	5705	10	11	LLAAAA	TTAAAA	HHHHxx
+9269	514	1	1	9	9	69	269	1269	4269	9269	138	139	NSAAAA	UTAAAA	OOOOxx
+3379	515	1	3	9	19	79	379	1379	3379	3379	158	159	ZZAAAA	VTAAAA	VVVVxx
+8205	516	1	1	5	5	5	205	205	3205	8205	10	11	PDAAAA	WTAAAA	AAAAxx
+6575	517	1	3	5	15	75	575	575	1575	6575	150	151	XSAAAA	XTAAAA	HHHHxx
+486	518	0	2	6	6	86	486	486	486	486	172	173	SSAAAA	YTAAAA	OOOOxx
+4894	519	0	2	4	14	94	894	894	4894	4894	188	189	GGAAAA	ZTAAAA	VVVVxx
+3090	520	0	2	0	10	90	90	1090	3090	3090	180	181	WOAAAA	AUAAAA	AAAAxx
+759	521	1	3	9	19	59	759	759	759	759	118	119	FDAAAA	BUAAAA	HHHHxx
+4864	522	0	0	4	4	64	864	864	4864	4864	128	129	CFAAAA	CUAAAA	OOOOxx
+4083	523	1	3	3	3	83	83	83	4083	4083	166	167	BBAAAA	DUAAAA	VVVVxx
+6918	524	0	2	8	18	18	918	918	1918	6918	36	37	CGAAAA	EUAAAA	AAAAxx
+8146	525	0	2	6	6	46	146	146	3146	8146	92	93	IBAAAA	FUAAAA	HHHHxx
+1523	526	1	3	3	3	23	523	1523	1523	1523	46	47	PGAAAA	GUAAAA	OOOOxx
+1591	527	1	3	1	11	91	591	1591	1591	1591	182	183	FJAAAA	HUAAAA	VVVVxx
+3343	528	1	3	3	3	43	343	1343	3343	3343	86	87	PYAAAA	IUAAAA	AAAAxx
+1391	529	1	3	1	11	91	391	1391	1391	1391	182	183	NBAAAA	JUAAAA	HHHHxx
+9963	530	1	3	3	3	63	963	1963	4963	9963	126	127	FTAAAA	KUAAAA	OOOOxx
+2423	531	1	3	3	3	23	423	423	2423	2423	46	47	FPAAAA	LUAAAA	VVVVxx
+1822	532	0	2	2	2	22	822	1822	1822	1822	44	45	CSAAAA	MUAAAA	AAAAxx
+8706	533	0	2	6	6	6	706	706	3706	8706	12	13	WWAAAA	NUAAAA	HHHHxx
+3001	534	1	1	1	1	1	1	1001	3001	3001	2	3	LLAAAA	OUAAAA	OOOOxx
+6707	535	1	3	7	7	7	707	707	1707	6707	14	15	ZXAAAA	PUAAAA	VVVVxx
+2121	536	1	1	1	1	21	121	121	2121	2121	42	43	PDAAAA	QUAAAA	AAAAxx
+5814	537	0	2	4	14	14	814	1814	814	5814	28	29	QPAAAA	RUAAAA	HHHHxx
+2659	538	1	3	9	19	59	659	659	2659	2659	118	119	HYAAAA	SUAAAA	OOOOxx
+2016	539	0	0	6	16	16	16	16	2016	2016	32	33	OZAAAA	TUAAAA	VVVVxx
+4286	540	0	2	6	6	86	286	286	4286	4286	172	173	WIAAAA	UUAAAA	AAAAxx
+9205	541	1	1	5	5	5	205	1205	4205	9205	10	11	BQAAAA	VUAAAA	HHHHxx
+3496	542	0	0	6	16	96	496	1496	3496	3496	192	193	MEAAAA	WUAAAA	OOOOxx
+5333	543	1	1	3	13	33	333	1333	333	5333	66	67	DXAAAA	XUAAAA	VVVVxx
+5571	544	1	3	1	11	71	571	1571	571	5571	142	143	HGAAAA	YUAAAA	AAAAxx
+1696	545	0	0	6	16	96	696	1696	1696	1696	192	193	GNAAAA	ZUAAAA	HHHHxx
+4871	546	1	3	1	11	71	871	871	4871	4871	142	143	JFAAAA	AVAAAA	OOOOxx
+4852	547	0	0	2	12	52	852	852	4852	4852	104	105	QEAAAA	BVAAAA	VVVVxx
+8483	548	1	3	3	3	83	483	483	3483	8483	166	167	HOAAAA	CVAAAA	AAAAxx
+1376	549	0	0	6	16	76	376	1376	1376	1376	152	153	YAAAAA	DVAAAA	HHHHxx
+5456	550	0	0	6	16	56	456	1456	456	5456	112	113	WBAAAA	EVAAAA	OOOOxx
+499	551	1	3	9	19	99	499	499	499	499	198	199	FTAAAA	FVAAAA	VVVVxx
+3463	552	1	3	3	3	63	463	1463	3463	3463	126	127	FDAAAA	GVAAAA	AAAAxx
+7426	553	0	2	6	6	26	426	1426	2426	7426	52	53	QZAAAA	HVAAAA	HHHHxx
+5341	554	1	1	1	1	41	341	1341	341	5341	82	83	LXAAAA	IVAAAA	OOOOxx
+9309	555	1	1	9	9	9	309	1309	4309	9309	18	19	BUAAAA	JVAAAA	VVVVxx
+2055	556	1	3	5	15	55	55	55	2055	2055	110	111	BBAAAA	KVAAAA	AAAAxx
+2199	557	1	3	9	19	99	199	199	2199	2199	198	199	PGAAAA	LVAAAA	HHHHxx
+7235	558	1	3	5	15	35	235	1235	2235	7235	70	71	HSAAAA	MVAAAA	OOOOxx
+8661	559	1	1	1	1	61	661	661	3661	8661	122	123	DVAAAA	NVAAAA	VVVVxx
+9494	560	0	2	4	14	94	494	1494	4494	9494	188	189	EBAAAA	OVAAAA	AAAAxx
+935	561	1	3	5	15	35	935	935	935	935	70	71	ZJAAAA	PVAAAA	HHHHxx
+7044	562	0	0	4	4	44	44	1044	2044	7044	88	89	YKAAAA	QVAAAA	OOOOxx
+1974	563	0	2	4	14	74	974	1974	1974	1974	148	149	YXAAAA	RVAAAA	VVVVxx
+9679	564	1	3	9	19	79	679	1679	4679	9679	158	159	HIAAAA	SVAAAA	AAAAxx
+9822	565	0	2	2	2	22	822	1822	4822	9822	44	45	UNAAAA	TVAAAA	HHHHxx
+4088	566	0	0	8	8	88	88	88	4088	4088	176	177	GBAAAA	UVAAAA	OOOOxx
+1749	567	1	1	9	9	49	749	1749	1749	1749	98	99	HPAAAA	VVAAAA	VVVVxx
+2116	568	0	0	6	16	16	116	116	2116	2116	32	33	KDAAAA	WVAAAA	AAAAxx
+976	569	0	0	6	16	76	976	976	976	976	152	153	OLAAAA	XVAAAA	HHHHxx
+8689	570	1	1	9	9	89	689	689	3689	8689	178	179	FWAAAA	YVAAAA	OOOOxx
+2563	571	1	3	3	3	63	563	563	2563	2563	126	127	PUAAAA	ZVAAAA	VVVVxx
+7195	572	1	3	5	15	95	195	1195	2195	7195	190	191	TQAAAA	AWAAAA	AAAAxx
+9985	573	1	1	5	5	85	985	1985	4985	9985	170	171	BUAAAA	BWAAAA	HHHHxx
+7699	574	1	3	9	19	99	699	1699	2699	7699	198	199	DKAAAA	CWAAAA	OOOOxx
+5311	575	1	3	1	11	11	311	1311	311	5311	22	23	HWAAAA	DWAAAA	VVVVxx
+295	576	1	3	5	15	95	295	295	295	295	190	191	JLAAAA	EWAAAA	AAAAxx
+8214	577	0	2	4	14	14	214	214	3214	8214	28	29	YDAAAA	FWAAAA	HHHHxx
+3275	578	1	3	5	15	75	275	1275	3275	3275	150	151	ZVAAAA	GWAAAA	OOOOxx
+9646	579	0	2	6	6	46	646	1646	4646	9646	92	93	AHAAAA	HWAAAA	VVVVxx
+1908	580	0	0	8	8	8	908	1908	1908	1908	16	17	KVAAAA	IWAAAA	AAAAxx
+3858	581	0	2	8	18	58	858	1858	3858	3858	116	117	KSAAAA	JWAAAA	HHHHxx
+9362	582	0	2	2	2	62	362	1362	4362	9362	124	125	CWAAAA	KWAAAA	OOOOxx
+9307	583	1	3	7	7	7	307	1307	4307	9307	14	15	ZTAAAA	LWAAAA	VVVVxx
+6124	584	0	0	4	4	24	124	124	1124	6124	48	49	OBAAAA	MWAAAA	AAAAxx
+2405	585	1	1	5	5	5	405	405	2405	2405	10	11	NOAAAA	NWAAAA	HHHHxx
+8422	586	0	2	2	2	22	422	422	3422	8422	44	45	YLAAAA	OWAAAA	OOOOxx
+393	587	1	1	3	13	93	393	393	393	393	186	187	DPAAAA	PWAAAA	VVVVxx
+8973	588	1	1	3	13	73	973	973	3973	8973	146	147	DHAAAA	QWAAAA	AAAAxx
+5171	589	1	3	1	11	71	171	1171	171	5171	142	143	XQAAAA	RWAAAA	HHHHxx
+4929	590	1	1	9	9	29	929	929	4929	4929	58	59	PHAAAA	SWAAAA	OOOOxx
+6935	591	1	3	5	15	35	935	935	1935	6935	70	71	TGAAAA	TWAAAA	VVVVxx
+8584	592	0	0	4	4	84	584	584	3584	8584	168	169	ESAAAA	UWAAAA	AAAAxx
+1035	593	1	3	5	15	35	35	1035	1035	1035	70	71	VNAAAA	VWAAAA	HHHHxx
+3734	594	0	2	4	14	34	734	1734	3734	3734	68	69	QNAAAA	WWAAAA	OOOOxx
+1458	595	0	2	8	18	58	458	1458	1458	1458	116	117	CEAAAA	XWAAAA	VVVVxx
+8746	596	0	2	6	6	46	746	746	3746	8746	92	93	KYAAAA	YWAAAA	AAAAxx
+1677	597	1	1	7	17	77	677	1677	1677	1677	154	155	NMAAAA	ZWAAAA	HHHHxx
+8502	598	0	2	2	2	2	502	502	3502	8502	4	5	APAAAA	AXAAAA	OOOOxx
+7752	599	0	0	2	12	52	752	1752	2752	7752	104	105	EMAAAA	BXAAAA	VVVVxx
+2556	600	0	0	6	16	56	556	556	2556	2556	112	113	IUAAAA	CXAAAA	AAAAxx
+6426	601	0	2	6	6	26	426	426	1426	6426	52	53	ENAAAA	DXAAAA	HHHHxx
+8420	602	0	0	0	0	20	420	420	3420	8420	40	41	WLAAAA	EXAAAA	OOOOxx
+4462	603	0	2	2	2	62	462	462	4462	4462	124	125	QPAAAA	FXAAAA	VVVVxx
+1378	604	0	2	8	18	78	378	1378	1378	1378	156	157	ABAAAA	GXAAAA	AAAAxx
+1387	605	1	3	7	7	87	387	1387	1387	1387	174	175	JBAAAA	HXAAAA	HHHHxx
+8094	606	0	2	4	14	94	94	94	3094	8094	188	189	IZAAAA	IXAAAA	OOOOxx
+7247	607	1	3	7	7	47	247	1247	2247	7247	94	95	TSAAAA	JXAAAA	VVVVxx
+4261	608	1	1	1	1	61	261	261	4261	4261	122	123	XHAAAA	KXAAAA	AAAAxx
+5029	609	1	1	9	9	29	29	1029	29	5029	58	59	LLAAAA	LXAAAA	HHHHxx
+3625	610	1	1	5	5	25	625	1625	3625	3625	50	51	LJAAAA	MXAAAA	OOOOxx
+8068	611	0	0	8	8	68	68	68	3068	8068	136	137	IYAAAA	NXAAAA	VVVVxx
+102	612	0	2	2	2	2	102	102	102	102	4	5	YDAAAA	OXAAAA	AAAAxx
+5596	613	0	0	6	16	96	596	1596	596	5596	192	193	GHAAAA	PXAAAA	HHHHxx
+5872	614	0	0	2	12	72	872	1872	872	5872	144	145	WRAAAA	QXAAAA	OOOOxx
+4742	615	0	2	2	2	42	742	742	4742	4742	84	85	KAAAAA	RXAAAA	VVVVxx
+2117	616	1	1	7	17	17	117	117	2117	2117	34	35	LDAAAA	SXAAAA	AAAAxx
+3945	617	1	1	5	5	45	945	1945	3945	3945	90	91	TVAAAA	TXAAAA	HHHHxx
+7483	618	1	3	3	3	83	483	1483	2483	7483	166	167	VBAAAA	UXAAAA	OOOOxx
+4455	619	1	3	5	15	55	455	455	4455	4455	110	111	JPAAAA	VXAAAA	VVVVxx
+609	620	1	1	9	9	9	609	609	609	609	18	19	LXAAAA	WXAAAA	AAAAxx
+9829	621	1	1	9	9	29	829	1829	4829	9829	58	59	BOAAAA	XXAAAA	HHHHxx
+4857	622	1	1	7	17	57	857	857	4857	4857	114	115	VEAAAA	YXAAAA	OOOOxx
+3314	623	0	2	4	14	14	314	1314	3314	3314	28	29	MXAAAA	ZXAAAA	VVVVxx
+5353	624	1	1	3	13	53	353	1353	353	5353	106	107	XXAAAA	AYAAAA	AAAAxx
+4909	625	1	1	9	9	9	909	909	4909	4909	18	19	VGAAAA	BYAAAA	HHHHxx
+7597	626	1	1	7	17	97	597	1597	2597	7597	194	195	FGAAAA	CYAAAA	OOOOxx
+2683	627	1	3	3	3	83	683	683	2683	2683	166	167	FZAAAA	DYAAAA	VVVVxx
+3223	628	1	3	3	3	23	223	1223	3223	3223	46	47	ZTAAAA	EYAAAA	AAAAxx
+5363	629	1	3	3	3	63	363	1363	363	5363	126	127	HYAAAA	FYAAAA	HHHHxx
+4578	630	0	2	8	18	78	578	578	4578	4578	156	157	CUAAAA	GYAAAA	OOOOxx
+5544	631	0	0	4	4	44	544	1544	544	5544	88	89	GFAAAA	HYAAAA	VVVVxx
+1589	632	1	1	9	9	89	589	1589	1589	1589	178	179	DJAAAA	IYAAAA	AAAAxx
+7412	633	0	0	2	12	12	412	1412	2412	7412	24	25	CZAAAA	JYAAAA	HHHHxx
+3803	634	1	3	3	3	3	803	1803	3803	3803	6	7	HQAAAA	KYAAAA	OOOOxx
+6179	635	1	3	9	19	79	179	179	1179	6179	158	159	RDAAAA	LYAAAA	VVVVxx
+5588	636	0	0	8	8	88	588	1588	588	5588	176	177	YGAAAA	MYAAAA	AAAAxx
+2134	637	0	2	4	14	34	134	134	2134	2134	68	69	CEAAAA	NYAAAA	HHHHxx
+4383	638	1	3	3	3	83	383	383	4383	4383	166	167	PMAAAA	OYAAAA	OOOOxx
+6995	639	1	3	5	15	95	995	995	1995	6995	190	191	BJAAAA	PYAAAA	VVVVxx
+6598	640	0	2	8	18	98	598	598	1598	6598	196	197	UTAAAA	QYAAAA	AAAAxx
+8731	641	1	3	1	11	31	731	731	3731	8731	62	63	VXAAAA	RYAAAA	HHHHxx
+7177	642	1	1	7	17	77	177	1177	2177	7177	154	155	BQAAAA	SYAAAA	OOOOxx
+6578	643	0	2	8	18	78	578	578	1578	6578	156	157	ATAAAA	TYAAAA	VVVVxx
+9393	644	1	1	3	13	93	393	1393	4393	9393	186	187	HXAAAA	UYAAAA	AAAAxx
+1276	645	0	0	6	16	76	276	1276	1276	1276	152	153	CXAAAA	VYAAAA	HHHHxx
+8766	646	0	2	6	6	66	766	766	3766	8766	132	133	EZAAAA	WYAAAA	OOOOxx
+1015	647	1	3	5	15	15	15	1015	1015	1015	30	31	BNAAAA	XYAAAA	VVVVxx
+4396	648	0	0	6	16	96	396	396	4396	4396	192	193	CNAAAA	YYAAAA	AAAAxx
+5564	649	0	0	4	4	64	564	1564	564	5564	128	129	AGAAAA	ZYAAAA	HHHHxx
+927	650	1	3	7	7	27	927	927	927	927	54	55	RJAAAA	AZAAAA	OOOOxx
+3306	651	0	2	6	6	6	306	1306	3306	3306	12	13	EXAAAA	BZAAAA	VVVVxx
+1615	652	1	3	5	15	15	615	1615	1615	1615	30	31	DKAAAA	CZAAAA	AAAAxx
+4550	653	0	2	0	10	50	550	550	4550	4550	100	101	ATAAAA	DZAAAA	HHHHxx
+2468	654	0	0	8	8	68	468	468	2468	2468	136	137	YQAAAA	EZAAAA	OOOOxx
+5336	655	0	0	6	16	36	336	1336	336	5336	72	73	GXAAAA	FZAAAA	VVVVxx
+4471	656	1	3	1	11	71	471	471	4471	4471	142	143	ZPAAAA	GZAAAA	AAAAxx
+8085	657	1	1	5	5	85	85	85	3085	8085	170	171	ZYAAAA	HZAAAA	HHHHxx
+540	658	0	0	0	0	40	540	540	540	540	80	81	UUAAAA	IZAAAA	OOOOxx
+5108	659	0	0	8	8	8	108	1108	108	5108	16	17	MOAAAA	JZAAAA	VVVVxx
+8015	660	1	3	5	15	15	15	15	3015	8015	30	31	HWAAAA	KZAAAA	AAAAxx
+2857	661	1	1	7	17	57	857	857	2857	2857	114	115	XFAAAA	LZAAAA	HHHHxx
+9472	662	0	0	2	12	72	472	1472	4472	9472	144	145	IAAAAA	MZAAAA	OOOOxx
+5666	663	0	2	6	6	66	666	1666	666	5666	132	133	YJAAAA	NZAAAA	VVVVxx
+3555	664	1	3	5	15	55	555	1555	3555	3555	110	111	TGAAAA	OZAAAA	AAAAxx
+378	665	0	2	8	18	78	378	378	378	378	156	157	OOAAAA	PZAAAA	HHHHxx
+4466	666	0	2	6	6	66	466	466	4466	4466	132	133	UPAAAA	QZAAAA	OOOOxx
+3247	667	1	3	7	7	47	247	1247	3247	3247	94	95	XUAAAA	RZAAAA	VVVVxx
+6570	668	0	2	0	10	70	570	570	1570	6570	140	141	SSAAAA	SZAAAA	AAAAxx
+5655	669	1	3	5	15	55	655	1655	655	5655	110	111	NJAAAA	TZAAAA	HHHHxx
+917	670	1	1	7	17	17	917	917	917	917	34	35	HJAAAA	UZAAAA	OOOOxx
+3637	671	1	1	7	17	37	637	1637	3637	3637	74	75	XJAAAA	VZAAAA	VVVVxx
+3668	672	0	0	8	8	68	668	1668	3668	3668	136	137	CLAAAA	WZAAAA	AAAAxx
+5644	673	0	0	4	4	44	644	1644	644	5644	88	89	CJAAAA	XZAAAA	HHHHxx
+8286	674	0	2	6	6	86	286	286	3286	8286	172	173	SGAAAA	YZAAAA	OOOOxx
+6896	675	0	0	6	16	96	896	896	1896	6896	192	193	GFAAAA	ZZAAAA	VVVVxx
+2870	676	0	2	0	10	70	870	870	2870	2870	140	141	KGAAAA	AABAAA	AAAAxx
+8041	677	1	1	1	1	41	41	41	3041	8041	82	83	HXAAAA	BABAAA	HHHHxx
+8137	678	1	1	7	17	37	137	137	3137	8137	74	75	ZAAAAA	CABAAA	OOOOxx
+4823	679	1	3	3	3	23	823	823	4823	4823	46	47	NDAAAA	DABAAA	VVVVxx
+2438	680	0	2	8	18	38	438	438	2438	2438	76	77	UPAAAA	EABAAA	AAAAxx
+6329	681	1	1	9	9	29	329	329	1329	6329	58	59	LJAAAA	FABAAA	HHHHxx
+623	682	1	3	3	3	23	623	623	623	623	46	47	ZXAAAA	GABAAA	OOOOxx
+1360	683	0	0	0	0	60	360	1360	1360	1360	120	121	IAAAAA	HABAAA	VVVVxx
+7987	684	1	3	7	7	87	987	1987	2987	7987	174	175	FVAAAA	IABAAA	AAAAxx
+9788	685	0	0	8	8	88	788	1788	4788	9788	176	177	MMAAAA	JABAAA	HHHHxx
+3212	686	0	0	2	12	12	212	1212	3212	3212	24	25	OTAAAA	KABAAA	OOOOxx
+2725	687	1	1	5	5	25	725	725	2725	2725	50	51	VAAAAA	LABAAA	VVVVxx
+7837	688	1	1	7	17	37	837	1837	2837	7837	74	75	LPAAAA	MABAAA	AAAAxx
+4746	689	0	2	6	6	46	746	746	4746	4746	92	93	OAAAAA	NABAAA	HHHHxx
+3986	690	0	2	6	6	86	986	1986	3986	3986	172	173	IXAAAA	OABAAA	OOOOxx
+9128	691	0	0	8	8	28	128	1128	4128	9128	56	57	CNAAAA	PABAAA	VVVVxx
+5044	692	0	0	4	4	44	44	1044	44	5044	88	89	AMAAAA	QABAAA	AAAAxx
+8132	693	0	0	2	12	32	132	132	3132	8132	64	65	UAAAAA	RABAAA	HHHHxx
+9992	694	0	0	2	12	92	992	1992	4992	9992	184	185	IUAAAA	SABAAA	OOOOxx
+8468	695	0	0	8	8	68	468	468	3468	8468	136	137	SNAAAA	TABAAA	VVVVxx
+6876	696	0	0	6	16	76	876	876	1876	6876	152	153	MEAAAA	UABAAA	AAAAxx
+3532	697	0	0	2	12	32	532	1532	3532	3532	64	65	WFAAAA	VABAAA	HHHHxx
+2140	698	0	0	0	0	40	140	140	2140	2140	80	81	IEAAAA	WABAAA	OOOOxx
+2183	699	1	3	3	3	83	183	183	2183	2183	166	167	ZFAAAA	XABAAA	VVVVxx
+9766	700	0	2	6	6	66	766	1766	4766	9766	132	133	QLAAAA	YABAAA	AAAAxx
+7943	701	1	3	3	3	43	943	1943	2943	7943	86	87	NTAAAA	ZABAAA	HHHHxx
+9243	702	1	3	3	3	43	243	1243	4243	9243	86	87	NRAAAA	ABBAAA	OOOOxx
+6241	703	1	1	1	1	41	241	241	1241	6241	82	83	BGAAAA	BBBAAA	VVVVxx
+9540	704	0	0	0	0	40	540	1540	4540	9540	80	81	YCAAAA	CBBAAA	AAAAxx
+7418	705	0	2	8	18	18	418	1418	2418	7418	36	37	IZAAAA	DBBAAA	HHHHxx
+1603	706	1	3	3	3	3	603	1603	1603	1603	6	7	RJAAAA	EBBAAA	OOOOxx
+8950	707	0	2	0	10	50	950	950	3950	8950	100	101	GGAAAA	FBBAAA	VVVVxx
+6933	708	1	1	3	13	33	933	933	1933	6933	66	67	RGAAAA	GBBAAA	AAAAxx
+2646	709	0	2	6	6	46	646	646	2646	2646	92	93	UXAAAA	HBBAAA	HHHHxx
+3447	710	1	3	7	7	47	447	1447	3447	3447	94	95	PCAAAA	IBBAAA	OOOOxx
+9957	711	1	1	7	17	57	957	1957	4957	9957	114	115	ZSAAAA	JBBAAA	VVVVxx
+4623	712	1	3	3	3	23	623	623	4623	4623	46	47	VVAAAA	KBBAAA	AAAAxx
+9058	713	0	2	8	18	58	58	1058	4058	9058	116	117	KKAAAA	LBBAAA	HHHHxx
+7361	714	1	1	1	1	61	361	1361	2361	7361	122	123	DXAAAA	MBBAAA	OOOOxx
+2489	715	1	1	9	9	89	489	489	2489	2489	178	179	TRAAAA	NBBAAA	VVVVxx
+7643	716	1	3	3	3	43	643	1643	2643	7643	86	87	ZHAAAA	OBBAAA	AAAAxx
+9166	717	0	2	6	6	66	166	1166	4166	9166	132	133	OOAAAA	PBBAAA	HHHHxx
+7789	718	1	1	9	9	89	789	1789	2789	7789	178	179	PNAAAA	QBBAAA	OOOOxx
+2332	719	0	0	2	12	32	332	332	2332	2332	64	65	SLAAAA	RBBAAA	VVVVxx
+1832	720	0	0	2	12	32	832	1832	1832	1832	64	65	MSAAAA	SBBAAA	AAAAxx
+8375	721	1	3	5	15	75	375	375	3375	8375	150	151	DKAAAA	TBBAAA	HHHHxx
+948	722	0	0	8	8	48	948	948	948	948	96	97	MKAAAA	UBBAAA	OOOOxx
+5613	723	1	1	3	13	13	613	1613	613	5613	26	27	XHAAAA	VBBAAA	VVVVxx
+6310	724	0	2	0	10	10	310	310	1310	6310	20	21	SIAAAA	WBBAAA	AAAAxx
+4254	725	0	2	4	14	54	254	254	4254	4254	108	109	QHAAAA	XBBAAA	HHHHxx
+4260	726	0	0	0	0	60	260	260	4260	4260	120	121	WHAAAA	YBBAAA	OOOOxx
+2060	727	0	0	0	0	60	60	60	2060	2060	120	121	GBAAAA	ZBBAAA	VVVVxx
+4831	728	1	3	1	11	31	831	831	4831	4831	62	63	VDAAAA	ACBAAA	AAAAxx
+6176	729	0	0	6	16	76	176	176	1176	6176	152	153	ODAAAA	BCBAAA	HHHHxx
+6688	730	0	0	8	8	88	688	688	1688	6688	176	177	GXAAAA	CCBAAA	OOOOxx
+5752	731	0	0	2	12	52	752	1752	752	5752	104	105	GNAAAA	DCBAAA	VVVVxx
+8714	732	0	2	4	14	14	714	714	3714	8714	28	29	EXAAAA	ECBAAA	AAAAxx
+6739	733	1	3	9	19	39	739	739	1739	6739	78	79	FZAAAA	FCBAAA	HHHHxx
+7066	734	0	2	6	6	66	66	1066	2066	7066	132	133	ULAAAA	GCBAAA	OOOOxx
+7250	735	0	2	0	10	50	250	1250	2250	7250	100	101	WSAAAA	HCBAAA	VVVVxx
+3161	736	1	1	1	1	61	161	1161	3161	3161	122	123	PRAAAA	ICBAAA	AAAAxx
+1411	737	1	3	1	11	11	411	1411	1411	1411	22	23	HCAAAA	JCBAAA	HHHHxx
+9301	738	1	1	1	1	1	301	1301	4301	9301	2	3	TTAAAA	KCBAAA	OOOOxx
+8324	739	0	0	4	4	24	324	324	3324	8324	48	49	EIAAAA	LCBAAA	VVVVxx
+9641	740	1	1	1	1	41	641	1641	4641	9641	82	83	VGAAAA	MCBAAA	AAAAxx
+7077	741	1	1	7	17	77	77	1077	2077	7077	154	155	FMAAAA	NCBAAA	HHHHxx
+9888	742	0	0	8	8	88	888	1888	4888	9888	176	177	IQAAAA	OCBAAA	OOOOxx
+9909	743	1	1	9	9	9	909	1909	4909	9909	18	19	DRAAAA	PCBAAA	VVVVxx
+2209	744	1	1	9	9	9	209	209	2209	2209	18	19	ZGAAAA	QCBAAA	AAAAxx
+6904	745	0	0	4	4	4	904	904	1904	6904	8	9	OFAAAA	RCBAAA	HHHHxx
+6608	746	0	0	8	8	8	608	608	1608	6608	16	17	EUAAAA	SCBAAA	OOOOxx
+8400	747	0	0	0	0	0	400	400	3400	8400	0	1	CLAAAA	TCBAAA	VVVVxx
+5124	748	0	0	4	4	24	124	1124	124	5124	48	49	CPAAAA	UCBAAA	AAAAxx
+5484	749	0	0	4	4	84	484	1484	484	5484	168	169	YCAAAA	VCBAAA	HHHHxx
+3575	750	1	3	5	15	75	575	1575	3575	3575	150	151	NHAAAA	WCBAAA	OOOOxx
+9723	751	1	3	3	3	23	723	1723	4723	9723	46	47	ZJAAAA	XCBAAA	VVVVxx
+360	752	0	0	0	0	60	360	360	360	360	120	121	WNAAAA	YCBAAA	AAAAxx
+1059	753	1	3	9	19	59	59	1059	1059	1059	118	119	TOAAAA	ZCBAAA	HHHHxx
+4941	754	1	1	1	1	41	941	941	4941	4941	82	83	BIAAAA	ADBAAA	OOOOxx
+2535	755	1	3	5	15	35	535	535	2535	2535	70	71	NTAAAA	BDBAAA	VVVVxx
+4119	756	1	3	9	19	19	119	119	4119	4119	38	39	LCAAAA	CDBAAA	AAAAxx
+3725	757	1	1	5	5	25	725	1725	3725	3725	50	51	HNAAAA	DDBAAA	HHHHxx
+4758	758	0	2	8	18	58	758	758	4758	4758	116	117	ABAAAA	EDBAAA	OOOOxx
+9593	759	1	1	3	13	93	593	1593	4593	9593	186	187	ZEAAAA	FDBAAA	VVVVxx
+4663	760	1	3	3	3	63	663	663	4663	4663	126	127	JXAAAA	GDBAAA	AAAAxx
+7734	761	0	2	4	14	34	734	1734	2734	7734	68	69	MLAAAA	HDBAAA	HHHHxx
+9156	762	0	0	6	16	56	156	1156	4156	9156	112	113	EOAAAA	IDBAAA	OOOOxx
+8120	763	0	0	0	0	20	120	120	3120	8120	40	41	IAAAAA	JDBAAA	VVVVxx
+4385	764	1	1	5	5	85	385	385	4385	4385	170	171	RMAAAA	KDBAAA	AAAAxx
+2926	765	0	2	6	6	26	926	926	2926	2926	52	53	OIAAAA	LDBAAA	HHHHxx
+4186	766	0	2	6	6	86	186	186	4186	4186	172	173	AFAAAA	MDBAAA	OOOOxx
+2508	767	0	0	8	8	8	508	508	2508	2508	16	17	MSAAAA	NDBAAA	VVVVxx
+4012	768	0	0	2	12	12	12	12	4012	4012	24	25	IYAAAA	ODBAAA	AAAAxx
+6266	769	0	2	6	6	66	266	266	1266	6266	132	133	AHAAAA	PDBAAA	HHHHxx
+3709	770	1	1	9	9	9	709	1709	3709	3709	18	19	RMAAAA	QDBAAA	OOOOxx
+7289	771	1	1	9	9	89	289	1289	2289	7289	178	179	JUAAAA	RDBAAA	VVVVxx
+8875	772	1	3	5	15	75	875	875	3875	8875	150	151	JDAAAA	SDBAAA	AAAAxx
+4412	773	0	0	2	12	12	412	412	4412	4412	24	25	SNAAAA	TDBAAA	HHHHxx
+3033	774	1	1	3	13	33	33	1033	3033	3033	66	67	RMAAAA	UDBAAA	OOOOxx
+1645	775	1	1	5	5	45	645	1645	1645	1645	90	91	HLAAAA	VDBAAA	VVVVxx
+3557	776	1	1	7	17	57	557	1557	3557	3557	114	115	VGAAAA	WDBAAA	AAAAxx
+6316	777	0	0	6	16	16	316	316	1316	6316	32	33	YIAAAA	XDBAAA	HHHHxx
+2054	778	0	2	4	14	54	54	54	2054	2054	108	109	ABAAAA	YDBAAA	OOOOxx
+7031	779	1	3	1	11	31	31	1031	2031	7031	62	63	LKAAAA	ZDBAAA	VVVVxx
+3405	780	1	1	5	5	5	405	1405	3405	3405	10	11	ZAAAAA	AEBAAA	AAAAxx
+5343	781	1	3	3	3	43	343	1343	343	5343	86	87	NXAAAA	BEBAAA	HHHHxx
+5240	782	0	0	0	0	40	240	1240	240	5240	80	81	OTAAAA	CEBAAA	OOOOxx
+9650	783	0	2	0	10	50	650	1650	4650	9650	100	101	EHAAAA	DEBAAA	VVVVxx
+3777	784	1	1	7	17	77	777	1777	3777	3777	154	155	HPAAAA	EEBAAA	AAAAxx
+9041	785	1	1	1	1	41	41	1041	4041	9041	82	83	TJAAAA	FEBAAA	HHHHxx
+6923	786	1	3	3	3	23	923	923	1923	6923	46	47	HGAAAA	GEBAAA	OOOOxx
+2977	787	1	1	7	17	77	977	977	2977	2977	154	155	NKAAAA	HEBAAA	VVVVxx
+5500	788	0	0	0	0	0	500	1500	500	5500	0	1	ODAAAA	IEBAAA	AAAAxx
+1044	789	0	0	4	4	44	44	1044	1044	1044	88	89	EOAAAA	JEBAAA	HHHHxx
+434	790	0	2	4	14	34	434	434	434	434	68	69	SQAAAA	KEBAAA	OOOOxx
+611	791	1	3	1	11	11	611	611	611	611	22	23	NXAAAA	LEBAAA	VVVVxx
+5760	792	0	0	0	0	60	760	1760	760	5760	120	121	ONAAAA	MEBAAA	AAAAxx
+2445	793	1	1	5	5	45	445	445	2445	2445	90	91	BQAAAA	NEBAAA	HHHHxx
+7098	794	0	2	8	18	98	98	1098	2098	7098	196	197	ANAAAA	OEBAAA	OOOOxx
+2188	795	0	0	8	8	88	188	188	2188	2188	176	177	EGAAAA	PEBAAA	VVVVxx
+4597	796	1	1	7	17	97	597	597	4597	4597	194	195	VUAAAA	QEBAAA	AAAAxx
+1913	797	1	1	3	13	13	913	1913	1913	1913	26	27	PVAAAA	REBAAA	HHHHxx
+8696	798	0	0	6	16	96	696	696	3696	8696	192	193	MWAAAA	SEBAAA	OOOOxx
+3332	799	0	0	2	12	32	332	1332	3332	3332	64	65	EYAAAA	TEBAAA	VVVVxx
+8760	800	0	0	0	0	60	760	760	3760	8760	120	121	YYAAAA	UEBAAA	AAAAxx
+3215	801	1	3	5	15	15	215	1215	3215	3215	30	31	RTAAAA	VEBAAA	HHHHxx
+1625	802	1	1	5	5	25	625	1625	1625	1625	50	51	NKAAAA	WEBAAA	OOOOxx
+4219	803	1	3	9	19	19	219	219	4219	4219	38	39	HGAAAA	XEBAAA	VVVVxx
+415	804	1	3	5	15	15	415	415	415	415	30	31	ZPAAAA	YEBAAA	AAAAxx
+4242	805	0	2	2	2	42	242	242	4242	4242	84	85	EHAAAA	ZEBAAA	HHHHxx
+8660	806	0	0	0	0	60	660	660	3660	8660	120	121	CVAAAA	AFBAAA	OOOOxx
+6525	807	1	1	5	5	25	525	525	1525	6525	50	51	ZQAAAA	BFBAAA	VVVVxx
+2141	808	1	1	1	1	41	141	141	2141	2141	82	83	JEAAAA	CFBAAA	AAAAxx
+5152	809	0	0	2	12	52	152	1152	152	5152	104	105	EQAAAA	DFBAAA	HHHHxx
+8560	810	0	0	0	0	60	560	560	3560	8560	120	121	GRAAAA	EFBAAA	OOOOxx
+9835	811	1	3	5	15	35	835	1835	4835	9835	70	71	HOAAAA	FFBAAA	VVVVxx
+2657	812	1	1	7	17	57	657	657	2657	2657	114	115	FYAAAA	GFBAAA	AAAAxx
+6085	813	1	1	5	5	85	85	85	1085	6085	170	171	BAAAAA	HFBAAA	HHHHxx
+6698	814	0	2	8	18	98	698	698	1698	6698	196	197	QXAAAA	IFBAAA	OOOOxx
+5421	815	1	1	1	1	21	421	1421	421	5421	42	43	NAAAAA	JFBAAA	VVVVxx
+6661	816	1	1	1	1	61	661	661	1661	6661	122	123	FWAAAA	KFBAAA	AAAAxx
+5645	817	1	1	5	5	45	645	1645	645	5645	90	91	DJAAAA	LFBAAA	HHHHxx
+1248	818	0	0	8	8	48	248	1248	1248	1248	96	97	AWAAAA	MFBAAA	OOOOxx
+5690	819	0	2	0	10	90	690	1690	690	5690	180	181	WKAAAA	NFBAAA	VVVVxx
+4762	820	0	2	2	2	62	762	762	4762	4762	124	125	EBAAAA	OFBAAA	AAAAxx
+1455	821	1	3	5	15	55	455	1455	1455	1455	110	111	ZDAAAA	PFBAAA	HHHHxx
+9846	822	0	2	6	6	46	846	1846	4846	9846	92	93	SOAAAA	QFBAAA	OOOOxx
+5295	823	1	3	5	15	95	295	1295	295	5295	190	191	RVAAAA	RFBAAA	VVVVxx
+2826	824	0	2	6	6	26	826	826	2826	2826	52	53	SEAAAA	SFBAAA	AAAAxx
+7496	825	0	0	6	16	96	496	1496	2496	7496	192	193	ICAAAA	TFBAAA	HHHHxx
+3024	826	0	0	4	4	24	24	1024	3024	3024	48	49	IMAAAA	UFBAAA	OOOOxx
+4945	827	1	1	5	5	45	945	945	4945	4945	90	91	FIAAAA	VFBAAA	VVVVxx
+4404	828	0	0	4	4	4	404	404	4404	4404	8	9	KNAAAA	WFBAAA	AAAAxx
+9302	829	0	2	2	2	2	302	1302	4302	9302	4	5	UTAAAA	XFBAAA	HHHHxx
+1286	830	0	2	6	6	86	286	1286	1286	1286	172	173	MXAAAA	YFBAAA	OOOOxx
+8435	831	1	3	5	15	35	435	435	3435	8435	70	71	LMAAAA	ZFBAAA	VVVVxx
+8969	832	1	1	9	9	69	969	969	3969	8969	138	139	ZGAAAA	AGBAAA	AAAAxx
+3302	833	0	2	2	2	2	302	1302	3302	3302	4	5	AXAAAA	BGBAAA	HHHHxx
+9753	834	1	1	3	13	53	753	1753	4753	9753	106	107	DLAAAA	CGBAAA	OOOOxx
+9374	835	0	2	4	14	74	374	1374	4374	9374	148	149	OWAAAA	DGBAAA	VVVVxx
+4907	836	1	3	7	7	7	907	907	4907	4907	14	15	TGAAAA	EGBAAA	AAAAxx
+1659	837	1	3	9	19	59	659	1659	1659	1659	118	119	VLAAAA	FGBAAA	HHHHxx
+5095	838	1	3	5	15	95	95	1095	95	5095	190	191	ZNAAAA	GGBAAA	OOOOxx
+9446	839	0	2	6	6	46	446	1446	4446	9446	92	93	IZAAAA	HGBAAA	VVVVxx
+8528	840	0	0	8	8	28	528	528	3528	8528	56	57	AQAAAA	IGBAAA	AAAAxx
+4890	841	0	2	0	10	90	890	890	4890	4890	180	181	CGAAAA	JGBAAA	HHHHxx
+1221	842	1	1	1	1	21	221	1221	1221	1221	42	43	ZUAAAA	KGBAAA	OOOOxx
+5583	843	1	3	3	3	83	583	1583	583	5583	166	167	TGAAAA	LGBAAA	VVVVxx
+7303	844	1	3	3	3	3	303	1303	2303	7303	6	7	XUAAAA	MGBAAA	AAAAxx
+406	845	0	2	6	6	6	406	406	406	406	12	13	QPAAAA	NGBAAA	HHHHxx
+7542	846	0	2	2	2	42	542	1542	2542	7542	84	85	CEAAAA	OGBAAA	OOOOxx
+9507	847	1	3	7	7	7	507	1507	4507	9507	14	15	RBAAAA	PGBAAA	VVVVxx
+9511	848	1	3	1	11	11	511	1511	4511	9511	22	23	VBAAAA	QGBAAA	AAAAxx
+1373	849	1	1	3	13	73	373	1373	1373	1373	146	147	VAAAAA	RGBAAA	HHHHxx
+6556	850	0	0	6	16	56	556	556	1556	6556	112	113	ESAAAA	SGBAAA	OOOOxx
+4117	851	1	1	7	17	17	117	117	4117	4117	34	35	JCAAAA	TGBAAA	VVVVxx
+7794	852	0	2	4	14	94	794	1794	2794	7794	188	189	UNAAAA	UGBAAA	AAAAxx
+7170	853	0	2	0	10	70	170	1170	2170	7170	140	141	UPAAAA	VGBAAA	HHHHxx
+5809	854	1	1	9	9	9	809	1809	809	5809	18	19	LPAAAA	WGBAAA	OOOOxx
+7828	855	0	0	8	8	28	828	1828	2828	7828	56	57	CPAAAA	XGBAAA	VVVVxx
+8046	856	0	2	6	6	46	46	46	3046	8046	92	93	MXAAAA	YGBAAA	AAAAxx
+4833	857	1	1	3	13	33	833	833	4833	4833	66	67	XDAAAA	ZGBAAA	HHHHxx
+2107	858	1	3	7	7	7	107	107	2107	2107	14	15	BDAAAA	AHBAAA	OOOOxx
+4276	859	0	0	6	16	76	276	276	4276	4276	152	153	MIAAAA	BHBAAA	VVVVxx
+9536	860	0	0	6	16	36	536	1536	4536	9536	72	73	UCAAAA	CHBAAA	AAAAxx
+5549	861	1	1	9	9	49	549	1549	549	5549	98	99	LFAAAA	DHBAAA	HHHHxx
+6427	862	1	3	7	7	27	427	427	1427	6427	54	55	FNAAAA	EHBAAA	OOOOxx
+1382	863	0	2	2	2	82	382	1382	1382	1382	164	165	EBAAAA	FHBAAA	VVVVxx
+3256	864	0	0	6	16	56	256	1256	3256	3256	112	113	GVAAAA	GHBAAA	AAAAxx
+3270	865	0	2	0	10	70	270	1270	3270	3270	140	141	UVAAAA	HHBAAA	HHHHxx
+4808	866	0	0	8	8	8	808	808	4808	4808	16	17	YCAAAA	IHBAAA	OOOOxx
+7938	867	0	2	8	18	38	938	1938	2938	7938	76	77	ITAAAA	JHBAAA	VVVVxx
+4405	868	1	1	5	5	5	405	405	4405	4405	10	11	LNAAAA	KHBAAA	AAAAxx
+2264	869	0	0	4	4	64	264	264	2264	2264	128	129	CJAAAA	LHBAAA	HHHHxx
+80	870	0	0	0	0	80	80	80	80	80	160	161	CDAAAA	MHBAAA	OOOOxx
+320	871	0	0	0	0	20	320	320	320	320	40	41	IMAAAA	NHBAAA	VVVVxx
+2383	872	1	3	3	3	83	383	383	2383	2383	166	167	RNAAAA	OHBAAA	AAAAxx
+3146	873	0	2	6	6	46	146	1146	3146	3146	92	93	ARAAAA	PHBAAA	HHHHxx
+6911	874	1	3	1	11	11	911	911	1911	6911	22	23	VFAAAA	QHBAAA	OOOOxx
+7377	875	1	1	7	17	77	377	1377	2377	7377	154	155	TXAAAA	RHBAAA	VVVVxx
+9965	876	1	1	5	5	65	965	1965	4965	9965	130	131	HTAAAA	SHBAAA	AAAAxx
+8361	877	1	1	1	1	61	361	361	3361	8361	122	123	PJAAAA	THBAAA	HHHHxx
+9417	878	1	1	7	17	17	417	1417	4417	9417	34	35	FYAAAA	UHBAAA	OOOOxx
+2483	879	1	3	3	3	83	483	483	2483	2483	166	167	NRAAAA	VHBAAA	VVVVxx
+9843	880	1	3	3	3	43	843	1843	4843	9843	86	87	POAAAA	WHBAAA	AAAAxx
+6395	881	1	3	5	15	95	395	395	1395	6395	190	191	ZLAAAA	XHBAAA	HHHHxx
+6444	882	0	0	4	4	44	444	444	1444	6444	88	89	WNAAAA	YHBAAA	OOOOxx
+1820	883	0	0	0	0	20	820	1820	1820	1820	40	41	ASAAAA	ZHBAAA	VVVVxx
+2768	884	0	0	8	8	68	768	768	2768	2768	136	137	MCAAAA	AIBAAA	AAAAxx
+5413	885	1	1	3	13	13	413	1413	413	5413	26	27	FAAAAA	BIBAAA	HHHHxx
+2923	886	1	3	3	3	23	923	923	2923	2923	46	47	LIAAAA	CIBAAA	OOOOxx
+5286	887	0	2	6	6	86	286	1286	286	5286	172	173	IVAAAA	DIBAAA	VVVVxx
+6126	888	0	2	6	6	26	126	126	1126	6126	52	53	QBAAAA	EIBAAA	AAAAxx
+8343	889	1	3	3	3	43	343	343	3343	8343	86	87	XIAAAA	FIBAAA	HHHHxx
+6010	890	0	2	0	10	10	10	10	1010	6010	20	21	EXAAAA	GIBAAA	OOOOxx
+4177	891	1	1	7	17	77	177	177	4177	4177	154	155	REAAAA	HIBAAA	VVVVxx
+5808	892	0	0	8	8	8	808	1808	808	5808	16	17	KPAAAA	IIBAAA	AAAAxx
+4859	893	1	3	9	19	59	859	859	4859	4859	118	119	XEAAAA	JIBAAA	HHHHxx
+9252	894	0	0	2	12	52	252	1252	4252	9252	104	105	WRAAAA	KIBAAA	OOOOxx
+2941	895	1	1	1	1	41	941	941	2941	2941	82	83	DJAAAA	LIBAAA	VVVVxx
+8693	896	1	1	3	13	93	693	693	3693	8693	186	187	JWAAAA	MIBAAA	AAAAxx
+4432	897	0	0	2	12	32	432	432	4432	4432	64	65	MOAAAA	NIBAAA	HHHHxx
+2371	898	1	3	1	11	71	371	371	2371	2371	142	143	FNAAAA	OIBAAA	OOOOxx
+7546	899	0	2	6	6	46	546	1546	2546	7546	92	93	GEAAAA	PIBAAA	VVVVxx
+1369	900	1	1	9	9	69	369	1369	1369	1369	138	139	RAAAAA	QIBAAA	AAAAxx
+4687	901	1	3	7	7	87	687	687	4687	4687	174	175	HYAAAA	RIBAAA	HHHHxx
+8941	902	1	1	1	1	41	941	941	3941	8941	82	83	XFAAAA	SIBAAA	OOOOxx
+226	903	0	2	6	6	26	226	226	226	226	52	53	SIAAAA	TIBAAA	VVVVxx
+3493	904	1	1	3	13	93	493	1493	3493	3493	186	187	JEAAAA	UIBAAA	AAAAxx
+6433	905	1	1	3	13	33	433	433	1433	6433	66	67	LNAAAA	VIBAAA	HHHHxx
+9189	906	1	1	9	9	89	189	1189	4189	9189	178	179	LPAAAA	WIBAAA	OOOOxx
+6027	907	1	3	7	7	27	27	27	1027	6027	54	55	VXAAAA	XIBAAA	VVVVxx
+4615	908	1	3	5	15	15	615	615	4615	4615	30	31	NVAAAA	YIBAAA	AAAAxx
+5320	909	0	0	0	0	20	320	1320	320	5320	40	41	QWAAAA	ZIBAAA	HHHHxx
+7002	910	0	2	2	2	2	2	1002	2002	7002	4	5	IJAAAA	AJBAAA	OOOOxx
+7367	911	1	3	7	7	67	367	1367	2367	7367	134	135	JXAAAA	BJBAAA	VVVVxx
+289	912	1	1	9	9	89	289	289	289	289	178	179	DLAAAA	CJBAAA	AAAAxx
+407	913	1	3	7	7	7	407	407	407	407	14	15	RPAAAA	DJBAAA	HHHHxx
+504	914	0	0	4	4	4	504	504	504	504	8	9	KTAAAA	EJBAAA	OOOOxx
+8301	915	1	1	1	1	1	301	301	3301	8301	2	3	HHAAAA	FJBAAA	VVVVxx
+1396	916	0	0	6	16	96	396	1396	1396	1396	192	193	SBAAAA	GJBAAA	AAAAxx
+4794	917	0	2	4	14	94	794	794	4794	4794	188	189	KCAAAA	HJBAAA	HHHHxx
+6400	918	0	0	0	0	0	400	400	1400	6400	0	1	EMAAAA	IJBAAA	OOOOxx
+1275	919	1	3	5	15	75	275	1275	1275	1275	150	151	BXAAAA	JJBAAA	VVVVxx
+5797	920	1	1	7	17	97	797	1797	797	5797	194	195	ZOAAAA	KJBAAA	AAAAxx
+2221	921	1	1	1	1	21	221	221	2221	2221	42	43	LHAAAA	LJBAAA	HHHHxx
+2504	922	0	0	4	4	4	504	504	2504	2504	8	9	ISAAAA	MJBAAA	OOOOxx
+2143	923	1	3	3	3	43	143	143	2143	2143	86	87	LEAAAA	NJBAAA	VVVVxx
+1083	924	1	3	3	3	83	83	1083	1083	1083	166	167	RPAAAA	OJBAAA	AAAAxx
+6148	925	0	0	8	8	48	148	148	1148	6148	96	97	MCAAAA	PJBAAA	HHHHxx
+3612	926	0	0	2	12	12	612	1612	3612	3612	24	25	YIAAAA	QJBAAA	OOOOxx
+9499	927	1	3	9	19	99	499	1499	4499	9499	198	199	JBAAAA	RJBAAA	VVVVxx
+5773	928	1	1	3	13	73	773	1773	773	5773	146	147	BOAAAA	SJBAAA	AAAAxx
+1014	929	0	2	4	14	14	14	1014	1014	1014	28	29	ANAAAA	TJBAAA	HHHHxx
+1427	930	1	3	7	7	27	427	1427	1427	1427	54	55	XCAAAA	UJBAAA	OOOOxx
+6770	931	0	2	0	10	70	770	770	1770	6770	140	141	KAAAAA	VJBAAA	VVVVxx
+9042	932	0	2	2	2	42	42	1042	4042	9042	84	85	UJAAAA	WJBAAA	AAAAxx
+9892	933	0	0	2	12	92	892	1892	4892	9892	184	185	MQAAAA	XJBAAA	HHHHxx
+1771	934	1	3	1	11	71	771	1771	1771	1771	142	143	DQAAAA	YJBAAA	OOOOxx
+7392	935	0	0	2	12	92	392	1392	2392	7392	184	185	IYAAAA	ZJBAAA	VVVVxx
+4465	936	1	1	5	5	65	465	465	4465	4465	130	131	TPAAAA	AKBAAA	AAAAxx
+278	937	0	2	8	18	78	278	278	278	278	156	157	SKAAAA	BKBAAA	HHHHxx
+7776	938	0	0	6	16	76	776	1776	2776	7776	152	153	CNAAAA	CKBAAA	OOOOxx
+3763	939	1	3	3	3	63	763	1763	3763	3763	126	127	TOAAAA	DKBAAA	VVVVxx
+7503	940	1	3	3	3	3	503	1503	2503	7503	6	7	PCAAAA	EKBAAA	AAAAxx
+3793	941	1	1	3	13	93	793	1793	3793	3793	186	187	XPAAAA	FKBAAA	HHHHxx
+6510	942	0	2	0	10	10	510	510	1510	6510	20	21	KQAAAA	GKBAAA	OOOOxx
+7641	943	1	1	1	1	41	641	1641	2641	7641	82	83	XHAAAA	HKBAAA	VVVVxx
+3228	944	0	0	8	8	28	228	1228	3228	3228	56	57	EUAAAA	IKBAAA	AAAAxx
+194	945	0	2	4	14	94	194	194	194	194	188	189	MHAAAA	JKBAAA	HHHHxx
+8555	946	1	3	5	15	55	555	555	3555	8555	110	111	BRAAAA	KKBAAA	OOOOxx
+4997	947	1	1	7	17	97	997	997	4997	4997	194	195	FKAAAA	LKBAAA	VVVVxx
+8687	948	1	3	7	7	87	687	687	3687	8687	174	175	DWAAAA	MKBAAA	AAAAxx
+6632	949	0	0	2	12	32	632	632	1632	6632	64	65	CVAAAA	NKBAAA	HHHHxx
+9607	950	1	3	7	7	7	607	1607	4607	9607	14	15	NFAAAA	OKBAAA	OOOOxx
+6201	951	1	1	1	1	1	201	201	1201	6201	2	3	NEAAAA	PKBAAA	VVVVxx
+857	952	1	1	7	17	57	857	857	857	857	114	115	ZGAAAA	QKBAAA	AAAAxx
+5623	953	1	3	3	3	23	623	1623	623	5623	46	47	HIAAAA	RKBAAA	HHHHxx
+5979	954	1	3	9	19	79	979	1979	979	5979	158	159	ZVAAAA	SKBAAA	OOOOxx
+2201	955	1	1	1	1	1	201	201	2201	2201	2	3	RGAAAA	TKBAAA	VVVVxx
+3166	956	0	2	6	6	66	166	1166	3166	3166	132	133	URAAAA	UKBAAA	AAAAxx
+6249	957	1	1	9	9	49	249	249	1249	6249	98	99	JGAAAA	VKBAAA	HHHHxx
+3271	958	1	3	1	11	71	271	1271	3271	3271	142	143	VVAAAA	WKBAAA	OOOOxx
+7777	959	1	1	7	17	77	777	1777	2777	7777	154	155	DNAAAA	XKBAAA	VVVVxx
+6732	960	0	0	2	12	32	732	732	1732	6732	64	65	YYAAAA	YKBAAA	AAAAxx
+6297	961	1	1	7	17	97	297	297	1297	6297	194	195	FIAAAA	ZKBAAA	HHHHxx
+5685	962	1	1	5	5	85	685	1685	685	5685	170	171	RKAAAA	ALBAAA	OOOOxx
+9931	963	1	3	1	11	31	931	1931	4931	9931	62	63	ZRAAAA	BLBAAA	VVVVxx
+7485	964	1	1	5	5	85	485	1485	2485	7485	170	171	XBAAAA	CLBAAA	AAAAxx
+386	965	0	2	6	6	86	386	386	386	386	172	173	WOAAAA	DLBAAA	HHHHxx
+8204	966	0	0	4	4	4	204	204	3204	8204	8	9	ODAAAA	ELBAAA	OOOOxx
+3606	967	0	2	6	6	6	606	1606	3606	3606	12	13	SIAAAA	FLBAAA	VVVVxx
+1692	968	0	0	2	12	92	692	1692	1692	1692	184	185	CNAAAA	GLBAAA	AAAAxx
+3002	969	0	2	2	2	2	2	1002	3002	3002	4	5	MLAAAA	HLBAAA	HHHHxx
+9676	970	0	0	6	16	76	676	1676	4676	9676	152	153	EIAAAA	ILBAAA	OOOOxx
+915	971	1	3	5	15	15	915	915	915	915	30	31	FJAAAA	JLBAAA	VVVVxx
+7706	972	0	2	6	6	6	706	1706	2706	7706	12	13	KKAAAA	KLBAAA	AAAAxx
+6080	973	0	0	0	0	80	80	80	1080	6080	160	161	WZAAAA	LLBAAA	HHHHxx
+1860	974	0	0	0	0	60	860	1860	1860	1860	120	121	OTAAAA	MLBAAA	OOOOxx
+1444	975	0	0	4	4	44	444	1444	1444	1444	88	89	ODAAAA	NLBAAA	VVVVxx
+7208	976	0	0	8	8	8	208	1208	2208	7208	16	17	GRAAAA	OLBAAA	AAAAxx
+8554	977	0	2	4	14	54	554	554	3554	8554	108	109	ARAAAA	PLBAAA	HHHHxx
+2028	978	0	0	8	8	28	28	28	2028	2028	56	57	AAAAAA	QLBAAA	OOOOxx
+9893	979	1	1	3	13	93	893	1893	4893	9893	186	187	NQAAAA	RLBAAA	VVVVxx
+4740	980	0	0	0	0	40	740	740	4740	4740	80	81	IAAAAA	SLBAAA	AAAAxx
+6186	981	0	2	6	6	86	186	186	1186	6186	172	173	YDAAAA	TLBAAA	HHHHxx
+6357	982	1	1	7	17	57	357	357	1357	6357	114	115	NKAAAA	ULBAAA	OOOOxx
+3699	983	1	3	9	19	99	699	1699	3699	3699	198	199	HMAAAA	VLBAAA	VVVVxx
+7620	984	0	0	0	0	20	620	1620	2620	7620	40	41	CHAAAA	WLBAAA	AAAAxx
+921	985	1	1	1	1	21	921	921	921	921	42	43	LJAAAA	XLBAAA	HHHHxx
+5506	986	0	2	6	6	6	506	1506	506	5506	12	13	UDAAAA	YLBAAA	OOOOxx
+8851	987	1	3	1	11	51	851	851	3851	8851	102	103	LCAAAA	ZLBAAA	VVVVxx
+3205	988	1	1	5	5	5	205	1205	3205	3205	10	11	HTAAAA	AMBAAA	AAAAxx
+1956	989	0	0	6	16	56	956	1956	1956	1956	112	113	GXAAAA	BMBAAA	HHHHxx
+6272	990	0	0	2	12	72	272	272	1272	6272	144	145	GHAAAA	CMBAAA	OOOOxx
+1509	991	1	1	9	9	9	509	1509	1509	1509	18	19	BGAAAA	DMBAAA	VVVVxx
+53	992	1	1	3	13	53	53	53	53	53	106	107	BCAAAA	EMBAAA	AAAAxx
+213	993	1	1	3	13	13	213	213	213	213	26	27	FIAAAA	FMBAAA	HHHHxx
+4924	994	0	0	4	4	24	924	924	4924	4924	48	49	KHAAAA	GMBAAA	OOOOxx
+2097	995	1	1	7	17	97	97	97	2097	2097	194	195	RCAAAA	HMBAAA	VVVVxx
+4607	996	1	3	7	7	7	607	607	4607	4607	14	15	FVAAAA	IMBAAA	AAAAxx
+1582	997	0	2	2	2	82	582	1582	1582	1582	164	165	WIAAAA	JMBAAA	HHHHxx
+6643	998	1	3	3	3	43	643	643	1643	6643	86	87	NVAAAA	KMBAAA	OOOOxx
+2238	999	0	2	8	18	38	238	238	2238	2238	76	77	CIAAAA	LMBAAA	VVVVxx
+2942	1000	0	2	2	2	42	942	942	2942	2942	84	85	EJAAAA	MMBAAA	AAAAxx
+1655	1001	1	3	5	15	55	655	1655	1655	1655	110	111	RLAAAA	NMBAAA	HHHHxx
+3226	1002	0	2	6	6	26	226	1226	3226	3226	52	53	CUAAAA	OMBAAA	OOOOxx
+4263	1003	1	3	3	3	63	263	263	4263	4263	126	127	ZHAAAA	PMBAAA	VVVVxx
+960	1004	0	0	0	0	60	960	960	960	960	120	121	YKAAAA	QMBAAA	AAAAxx
+1213	1005	1	1	3	13	13	213	1213	1213	1213	26	27	RUAAAA	RMBAAA	HHHHxx
+1845	1006	1	1	5	5	45	845	1845	1845	1845	90	91	ZSAAAA	SMBAAA	OOOOxx
+6944	1007	0	0	4	4	44	944	944	1944	6944	88	89	CHAAAA	TMBAAA	VVVVxx
+5284	1008	0	0	4	4	84	284	1284	284	5284	168	169	GVAAAA	UMBAAA	AAAAxx
+188	1009	0	0	8	8	88	188	188	188	188	176	177	GHAAAA	VMBAAA	HHHHxx
+748	1010	0	0	8	8	48	748	748	748	748	96	97	UCAAAA	WMBAAA	OOOOxx
+2226	1011	0	2	6	6	26	226	226	2226	2226	52	53	QHAAAA	XMBAAA	VVVVxx
+7342	1012	0	2	2	2	42	342	1342	2342	7342	84	85	KWAAAA	YMBAAA	AAAAxx
+6120	1013	0	0	0	0	20	120	120	1120	6120	40	41	KBAAAA	ZMBAAA	HHHHxx
+536	1014	0	0	6	16	36	536	536	536	536	72	73	QUAAAA	ANBAAA	OOOOxx
+3239	1015	1	3	9	19	39	239	1239	3239	3239	78	79	PUAAAA	BNBAAA	VVVVxx
+2832	1016	0	0	2	12	32	832	832	2832	2832	64	65	YEAAAA	CNBAAA	AAAAxx
+5296	1017	0	0	6	16	96	296	1296	296	5296	192	193	SVAAAA	DNBAAA	HHHHxx
+5795	1018	1	3	5	15	95	795	1795	795	5795	190	191	XOAAAA	ENBAAA	OOOOxx
+6290	1019	0	2	0	10	90	290	290	1290	6290	180	181	YHAAAA	FNBAAA	VVVVxx
+4916	1020	0	0	6	16	16	916	916	4916	4916	32	33	CHAAAA	GNBAAA	AAAAxx
+8366	1021	0	2	6	6	66	366	366	3366	8366	132	133	UJAAAA	HNBAAA	HHHHxx
+4248	1022	0	0	8	8	48	248	248	4248	4248	96	97	KHAAAA	INBAAA	OOOOxx
+6460	1023	0	0	0	0	60	460	460	1460	6460	120	121	MOAAAA	JNBAAA	VVVVxx
+9296	1024	0	0	6	16	96	296	1296	4296	9296	192	193	OTAAAA	KNBAAA	AAAAxx
+3486	1025	0	2	6	6	86	486	1486	3486	3486	172	173	CEAAAA	LNBAAA	HHHHxx
+5664	1026	0	0	4	4	64	664	1664	664	5664	128	129	WJAAAA	MNBAAA	OOOOxx
+7624	1027	0	0	4	4	24	624	1624	2624	7624	48	49	GHAAAA	NNBAAA	VVVVxx
+2790	1028	0	2	0	10	90	790	790	2790	2790	180	181	IDAAAA	ONBAAA	AAAAxx
+682	1029	0	2	2	2	82	682	682	682	682	164	165	GAAAAA	PNBAAA	HHHHxx
+6412	1030	0	0	2	12	12	412	412	1412	6412	24	25	QMAAAA	QNBAAA	OOOOxx
+6882	1031	0	2	2	2	82	882	882	1882	6882	164	165	SEAAAA	RNBAAA	VVVVxx
+1332	1032	0	0	2	12	32	332	1332	1332	1332	64	65	GZAAAA	SNBAAA	AAAAxx
+4911	1033	1	3	1	11	11	911	911	4911	4911	22	23	XGAAAA	TNBAAA	HHHHxx
+3528	1034	0	0	8	8	28	528	1528	3528	3528	56	57	SFAAAA	UNBAAA	OOOOxx
+271	1035	1	3	1	11	71	271	271	271	271	142	143	LKAAAA	VNBAAA	VVVVxx
+7007	1036	1	3	7	7	7	7	1007	2007	7007	14	15	NJAAAA	WNBAAA	AAAAxx
+2198	1037	0	2	8	18	98	198	198	2198	2198	196	197	OGAAAA	XNBAAA	HHHHxx
+4266	1038	0	2	6	6	66	266	266	4266	4266	132	133	CIAAAA	YNBAAA	OOOOxx
+9867	1039	1	3	7	7	67	867	1867	4867	9867	134	135	NPAAAA	ZNBAAA	VVVVxx
+7602	1040	0	2	2	2	2	602	1602	2602	7602	4	5	KGAAAA	AOBAAA	AAAAxx
+7521	1041	1	1	1	1	21	521	1521	2521	7521	42	43	HDAAAA	BOBAAA	HHHHxx
+7200	1042	0	0	0	0	0	200	1200	2200	7200	0	1	YQAAAA	COBAAA	OOOOxx
+4816	1043	0	0	6	16	16	816	816	4816	4816	32	33	GDAAAA	DOBAAA	VVVVxx
+1669	1044	1	1	9	9	69	669	1669	1669	1669	138	139	FMAAAA	EOBAAA	AAAAxx
+4764	1045	0	0	4	4	64	764	764	4764	4764	128	129	GBAAAA	FOBAAA	HHHHxx
+7393	1046	1	1	3	13	93	393	1393	2393	7393	186	187	JYAAAA	GOBAAA	OOOOxx
+7434	1047	0	2	4	14	34	434	1434	2434	7434	68	69	YZAAAA	HOBAAA	VVVVxx
+9079	1048	1	3	9	19	79	79	1079	4079	9079	158	159	FLAAAA	IOBAAA	AAAAxx
+9668	1049	0	0	8	8	68	668	1668	4668	9668	136	137	WHAAAA	JOBAAA	HHHHxx
+7184	1050	0	0	4	4	84	184	1184	2184	7184	168	169	IQAAAA	KOBAAA	OOOOxx
+7347	1051	1	3	7	7	47	347	1347	2347	7347	94	95	PWAAAA	LOBAAA	VVVVxx
+951	1052	1	3	1	11	51	951	951	951	951	102	103	PKAAAA	MOBAAA	AAAAxx
+4513	1053	1	1	3	13	13	513	513	4513	4513	26	27	PRAAAA	NOBAAA	HHHHxx
+2692	1054	0	0	2	12	92	692	692	2692	2692	184	185	OZAAAA	OOBAAA	OOOOxx
+9930	1055	0	2	0	10	30	930	1930	4930	9930	60	61	YRAAAA	POBAAA	VVVVxx
+4516	1056	0	0	6	16	16	516	516	4516	4516	32	33	SRAAAA	QOBAAA	AAAAxx
+1592	1057	0	0	2	12	92	592	1592	1592	1592	184	185	GJAAAA	ROBAAA	HHHHxx
+6312	1058	0	0	2	12	12	312	312	1312	6312	24	25	UIAAAA	SOBAAA	OOOOxx
+185	1059	1	1	5	5	85	185	185	185	185	170	171	DHAAAA	TOBAAA	VVVVxx
+1848	1060	0	0	8	8	48	848	1848	1848	1848	96	97	CTAAAA	UOBAAA	AAAAxx
+5844	1061	0	0	4	4	44	844	1844	844	5844	88	89	UQAAAA	VOBAAA	HHHHxx
+1666	1062	0	2	6	6	66	666	1666	1666	1666	132	133	CMAAAA	WOBAAA	OOOOxx
+5864	1063	0	0	4	4	64	864	1864	864	5864	128	129	ORAAAA	XOBAAA	VVVVxx
+1004	1064	0	0	4	4	4	4	1004	1004	1004	8	9	QMAAAA	YOBAAA	AAAAxx
+1758	1065	0	2	8	18	58	758	1758	1758	1758	116	117	QPAAAA	ZOBAAA	HHHHxx
+8823	1066	1	3	3	3	23	823	823	3823	8823	46	47	JBAAAA	APBAAA	OOOOxx
+129	1067	1	1	9	9	29	129	129	129	129	58	59	ZEAAAA	BPBAAA	VVVVxx
+5703	1068	1	3	3	3	3	703	1703	703	5703	6	7	JLAAAA	CPBAAA	AAAAxx
+3331	1069	1	3	1	11	31	331	1331	3331	3331	62	63	DYAAAA	DPBAAA	HHHHxx
+5791	1070	1	3	1	11	91	791	1791	791	5791	182	183	TOAAAA	EPBAAA	OOOOxx
+4421	1071	1	1	1	1	21	421	421	4421	4421	42	43	BOAAAA	FPBAAA	VVVVxx
+9740	1072	0	0	0	0	40	740	1740	4740	9740	80	81	QKAAAA	GPBAAA	AAAAxx
+798	1073	0	2	8	18	98	798	798	798	798	196	197	SEAAAA	HPBAAA	HHHHxx
+571	1074	1	3	1	11	71	571	571	571	571	142	143	ZVAAAA	IPBAAA	OOOOxx
+7084	1075	0	0	4	4	84	84	1084	2084	7084	168	169	MMAAAA	JPBAAA	VVVVxx
+650	1076	0	2	0	10	50	650	650	650	650	100	101	AZAAAA	KPBAAA	AAAAxx
+1467	1077	1	3	7	7	67	467	1467	1467	1467	134	135	LEAAAA	LPBAAA	HHHHxx
+5446	1078	0	2	6	6	46	446	1446	446	5446	92	93	MBAAAA	MPBAAA	OOOOxx
+830	1079	0	2	0	10	30	830	830	830	830	60	61	YFAAAA	NPBAAA	VVVVxx
+5516	1080	0	0	6	16	16	516	1516	516	5516	32	33	EEAAAA	OPBAAA	AAAAxx
+8520	1081	0	0	0	0	20	520	520	3520	8520	40	41	SPAAAA	PPBAAA	HHHHxx
+1152	1082	0	0	2	12	52	152	1152	1152	1152	104	105	ISAAAA	QPBAAA	OOOOxx
+862	1083	0	2	2	2	62	862	862	862	862	124	125	EHAAAA	RPBAAA	VVVVxx
+454	1084	0	2	4	14	54	454	454	454	454	108	109	MRAAAA	SPBAAA	AAAAxx
+9956	1085	0	0	6	16	56	956	1956	4956	9956	112	113	YSAAAA	TPBAAA	HHHHxx
+1654	1086	0	2	4	14	54	654	1654	1654	1654	108	109	QLAAAA	UPBAAA	OOOOxx
+257	1087	1	1	7	17	57	257	257	257	257	114	115	XJAAAA	VPBAAA	VVVVxx
+5469	1088	1	1	9	9	69	469	1469	469	5469	138	139	JCAAAA	WPBAAA	AAAAxx
+9075	1089	1	3	5	15	75	75	1075	4075	9075	150	151	BLAAAA	XPBAAA	HHHHxx
+7799	1090	1	3	9	19	99	799	1799	2799	7799	198	199	ZNAAAA	YPBAAA	OOOOxx
+2001	1091	1	1	1	1	1	1	1	2001	2001	2	3	ZYAAAA	ZPBAAA	VVVVxx
+9786	1092	0	2	6	6	86	786	1786	4786	9786	172	173	KMAAAA	AQBAAA	AAAAxx
+7281	1093	1	1	1	1	81	281	1281	2281	7281	162	163	BUAAAA	BQBAAA	HHHHxx
+5137	1094	1	1	7	17	37	137	1137	137	5137	74	75	PPAAAA	CQBAAA	OOOOxx
+4053	1095	1	1	3	13	53	53	53	4053	4053	106	107	XZAAAA	DQBAAA	VVVVxx
+7911	1096	1	3	1	11	11	911	1911	2911	7911	22	23	HSAAAA	EQBAAA	AAAAxx
+4298	1097	0	2	8	18	98	298	298	4298	4298	196	197	IJAAAA	FQBAAA	HHHHxx
+4805	1098	1	1	5	5	5	805	805	4805	4805	10	11	VCAAAA	GQBAAA	OOOOxx
+9038	1099	0	2	8	18	38	38	1038	4038	9038	76	77	QJAAAA	HQBAAA	VVVVxx
+8023	1100	1	3	3	3	23	23	23	3023	8023	46	47	PWAAAA	IQBAAA	AAAAxx
+6595	1101	1	3	5	15	95	595	595	1595	6595	190	191	RTAAAA	JQBAAA	HHHHxx
+9831	1102	1	3	1	11	31	831	1831	4831	9831	62	63	DOAAAA	KQBAAA	OOOOxx
+788	1103	0	0	8	8	88	788	788	788	788	176	177	IEAAAA	LQBAAA	VVVVxx
+902	1104	0	2	2	2	2	902	902	902	902	4	5	SIAAAA	MQBAAA	AAAAxx
+9137	1105	1	1	7	17	37	137	1137	4137	9137	74	75	LNAAAA	NQBAAA	HHHHxx
+1744	1106	0	0	4	4	44	744	1744	1744	1744	88	89	CPAAAA	OQBAAA	OOOOxx
+7285	1107	1	1	5	5	85	285	1285	2285	7285	170	171	FUAAAA	PQBAAA	VVVVxx
+7006	1108	0	2	6	6	6	6	1006	2006	7006	12	13	MJAAAA	QQBAAA	AAAAxx
+9236	1109	0	0	6	16	36	236	1236	4236	9236	72	73	GRAAAA	RQBAAA	HHHHxx
+5472	1110	0	0	2	12	72	472	1472	472	5472	144	145	MCAAAA	SQBAAA	OOOOxx
+7975	1111	1	3	5	15	75	975	1975	2975	7975	150	151	TUAAAA	TQBAAA	VVVVxx
+4181	1112	1	1	1	1	81	181	181	4181	4181	162	163	VEAAAA	UQBAAA	AAAAxx
+7677	1113	1	1	7	17	77	677	1677	2677	7677	154	155	HJAAAA	VQBAAA	HHHHxx
+35	1114	1	3	5	15	35	35	35	35	35	70	71	JBAAAA	WQBAAA	OOOOxx
+6813	1115	1	1	3	13	13	813	813	1813	6813	26	27	BCAAAA	XQBAAA	VVVVxx
+6618	1116	0	2	8	18	18	618	618	1618	6618	36	37	OUAAAA	YQBAAA	AAAAxx
+8069	1117	1	1	9	9	69	69	69	3069	8069	138	139	JYAAAA	ZQBAAA	HHHHxx
+3071	1118	1	3	1	11	71	71	1071	3071	3071	142	143	DOAAAA	ARBAAA	OOOOxx
+4390	1119	0	2	0	10	90	390	390	4390	4390	180	181	WMAAAA	BRBAAA	VVVVxx
+7764	1120	0	0	4	4	64	764	1764	2764	7764	128	129	QMAAAA	CRBAAA	AAAAxx
+8163	1121	1	3	3	3	63	163	163	3163	8163	126	127	ZBAAAA	DRBAAA	HHHHxx
+1961	1122	1	1	1	1	61	961	1961	1961	1961	122	123	LXAAAA	ERBAAA	OOOOxx
+1103	1123	1	3	3	3	3	103	1103	1103	1103	6	7	LQAAAA	FRBAAA	VVVVxx
+5486	1124	0	2	6	6	86	486	1486	486	5486	172	173	ADAAAA	GRBAAA	AAAAxx
+9513	1125	1	1	3	13	13	513	1513	4513	9513	26	27	XBAAAA	HRBAAA	HHHHxx
+7311	1126	1	3	1	11	11	311	1311	2311	7311	22	23	FVAAAA	IRBAAA	OOOOxx
+4144	1127	0	0	4	4	44	144	144	4144	4144	88	89	KDAAAA	JRBAAA	VVVVxx
+7901	1128	1	1	1	1	1	901	1901	2901	7901	2	3	XRAAAA	KRBAAA	AAAAxx
+4629	1129	1	1	9	9	29	629	629	4629	4629	58	59	BWAAAA	LRBAAA	HHHHxx
+6858	1130	0	2	8	18	58	858	858	1858	6858	116	117	UDAAAA	MRBAAA	OOOOxx
+125	1131	1	1	5	5	25	125	125	125	125	50	51	VEAAAA	NRBAAA	VVVVxx
+3834	1132	0	2	4	14	34	834	1834	3834	3834	68	69	MRAAAA	ORBAAA	AAAAxx
+8155	1133	1	3	5	15	55	155	155	3155	8155	110	111	RBAAAA	PRBAAA	HHHHxx
+8230	1134	0	2	0	10	30	230	230	3230	8230	60	61	OEAAAA	QRBAAA	OOOOxx
+744	1135	0	0	4	4	44	744	744	744	744	88	89	QCAAAA	RRBAAA	VVVVxx
+357	1136	1	1	7	17	57	357	357	357	357	114	115	TNAAAA	SRBAAA	AAAAxx
+2159	1137	1	3	9	19	59	159	159	2159	2159	118	119	BFAAAA	TRBAAA	HHHHxx
+8559	1138	1	3	9	19	59	559	559	3559	8559	118	119	FRAAAA	URBAAA	OOOOxx
+6866	1139	0	2	6	6	66	866	866	1866	6866	132	133	CEAAAA	VRBAAA	VVVVxx
+3863	1140	1	3	3	3	63	863	1863	3863	3863	126	127	PSAAAA	WRBAAA	AAAAxx
+4193	1141	1	1	3	13	93	193	193	4193	4193	186	187	HFAAAA	XRBAAA	HHHHxx
+3277	1142	1	1	7	17	77	277	1277	3277	3277	154	155	BWAAAA	YRBAAA	OOOOxx
+5577	1143	1	1	7	17	77	577	1577	577	5577	154	155	NGAAAA	ZRBAAA	VVVVxx
+9503	1144	1	3	3	3	3	503	1503	4503	9503	6	7	NBAAAA	ASBAAA	AAAAxx
+7642	1145	0	2	2	2	42	642	1642	2642	7642	84	85	YHAAAA	BSBAAA	HHHHxx
+6197	1146	1	1	7	17	97	197	197	1197	6197	194	195	JEAAAA	CSBAAA	OOOOxx
+8995	1147	1	3	5	15	95	995	995	3995	8995	190	191	ZHAAAA	DSBAAA	VVVVxx
+440	1148	0	0	0	0	40	440	440	440	440	80	81	YQAAAA	ESBAAA	AAAAxx
+8418	1149	0	2	8	18	18	418	418	3418	8418	36	37	ULAAAA	FSBAAA	HHHHxx
+8531	1150	1	3	1	11	31	531	531	3531	8531	62	63	DQAAAA	GSBAAA	OOOOxx
+3790	1151	0	2	0	10	90	790	1790	3790	3790	180	181	UPAAAA	HSBAAA	VVVVxx
+7610	1152	0	2	0	10	10	610	1610	2610	7610	20	21	SGAAAA	ISBAAA	AAAAxx
+1252	1153	0	0	2	12	52	252	1252	1252	1252	104	105	EWAAAA	JSBAAA	HHHHxx
+7559	1154	1	3	9	19	59	559	1559	2559	7559	118	119	TEAAAA	KSBAAA	OOOOxx
+9945	1155	1	1	5	5	45	945	1945	4945	9945	90	91	NSAAAA	LSBAAA	VVVVxx
+9023	1156	1	3	3	3	23	23	1023	4023	9023	46	47	BJAAAA	MSBAAA	AAAAxx
+3516	1157	0	0	6	16	16	516	1516	3516	3516	32	33	GFAAAA	NSBAAA	HHHHxx
+4671	1158	1	3	1	11	71	671	671	4671	4671	142	143	RXAAAA	OSBAAA	OOOOxx
+1465	1159	1	1	5	5	65	465	1465	1465	1465	130	131	JEAAAA	PSBAAA	VVVVxx
+9515	1160	1	3	5	15	15	515	1515	4515	9515	30	31	ZBAAAA	QSBAAA	AAAAxx
+3242	1161	0	2	2	2	42	242	1242	3242	3242	84	85	SUAAAA	RSBAAA	HHHHxx
+1732	1162	0	0	2	12	32	732	1732	1732	1732	64	65	QOAAAA	SSBAAA	OOOOxx
+1678	1163	0	2	8	18	78	678	1678	1678	1678	156	157	OMAAAA	TSBAAA	VVVVxx
+1464	1164	0	0	4	4	64	464	1464	1464	1464	128	129	IEAAAA	USBAAA	AAAAxx
+6546	1165	0	2	6	6	46	546	546	1546	6546	92	93	URAAAA	VSBAAA	HHHHxx
+4448	1166	0	0	8	8	48	448	448	4448	4448	96	97	CPAAAA	WSBAAA	OOOOxx
+9847	1167	1	3	7	7	47	847	1847	4847	9847	94	95	TOAAAA	XSBAAA	VVVVxx
+8264	1168	0	0	4	4	64	264	264	3264	8264	128	129	WFAAAA	YSBAAA	AAAAxx
+1620	1169	0	0	0	0	20	620	1620	1620	1620	40	41	IKAAAA	ZSBAAA	HHHHxx
+9388	1170	0	0	8	8	88	388	1388	4388	9388	176	177	CXAAAA	ATBAAA	OOOOxx
+6445	1171	1	1	5	5	45	445	445	1445	6445	90	91	XNAAAA	BTBAAA	VVVVxx
+4789	1172	1	1	9	9	89	789	789	4789	4789	178	179	FCAAAA	CTBAAA	AAAAxx
+1562	1173	0	2	2	2	62	562	1562	1562	1562	124	125	CIAAAA	DTBAAA	HHHHxx
+7305	1174	1	1	5	5	5	305	1305	2305	7305	10	11	ZUAAAA	ETBAAA	OOOOxx
+6344	1175	0	0	4	4	44	344	344	1344	6344	88	89	AKAAAA	FTBAAA	VVVVxx
+5130	1176	0	2	0	10	30	130	1130	130	5130	60	61	IPAAAA	GTBAAA	AAAAxx
+3284	1177	0	0	4	4	84	284	1284	3284	3284	168	169	IWAAAA	HTBAAA	HHHHxx
+6346	1178	0	2	6	6	46	346	346	1346	6346	92	93	CKAAAA	ITBAAA	OOOOxx
+1061	1179	1	1	1	1	61	61	1061	1061	1061	122	123	VOAAAA	JTBAAA	VVVVxx
+872	1180	0	0	2	12	72	872	872	872	872	144	145	OHAAAA	KTBAAA	AAAAxx
+123	1181	1	3	3	3	23	123	123	123	123	46	47	TEAAAA	LTBAAA	HHHHxx
+7903	1182	1	3	3	3	3	903	1903	2903	7903	6	7	ZRAAAA	MTBAAA	OOOOxx
+560	1183	0	0	0	0	60	560	560	560	560	120	121	OVAAAA	NTBAAA	VVVVxx
+4446	1184	0	2	6	6	46	446	446	4446	4446	92	93	APAAAA	OTBAAA	AAAAxx
+3909	1185	1	1	9	9	9	909	1909	3909	3909	18	19	JUAAAA	PTBAAA	HHHHxx
+669	1186	1	1	9	9	69	669	669	669	669	138	139	TZAAAA	QTBAAA	OOOOxx
+7843	1187	1	3	3	3	43	843	1843	2843	7843	86	87	RPAAAA	RTBAAA	VVVVxx
+2546	1188	0	2	6	6	46	546	546	2546	2546	92	93	YTAAAA	STBAAA	AAAAxx
+6757	1189	1	1	7	17	57	757	757	1757	6757	114	115	XZAAAA	TTBAAA	HHHHxx
+466	1190	0	2	6	6	66	466	466	466	466	132	133	YRAAAA	UTBAAA	OOOOxx
+5556	1191	0	0	6	16	56	556	1556	556	5556	112	113	SFAAAA	VTBAAA	VVVVxx
+7196	1192	0	0	6	16	96	196	1196	2196	7196	192	193	UQAAAA	WTBAAA	AAAAxx
+2947	1193	1	3	7	7	47	947	947	2947	2947	94	95	JJAAAA	XTBAAA	HHHHxx
+6493	1194	1	1	3	13	93	493	493	1493	6493	186	187	TPAAAA	YTBAAA	OOOOxx
+7203	1195	1	3	3	3	3	203	1203	2203	7203	6	7	BRAAAA	ZTBAAA	VVVVxx
+3716	1196	0	0	6	16	16	716	1716	3716	3716	32	33	YMAAAA	AUBAAA	AAAAxx
+8058	1197	0	2	8	18	58	58	58	3058	8058	116	117	YXAAAA	BUBAAA	HHHHxx
+433	1198	1	1	3	13	33	433	433	433	433	66	67	RQAAAA	CUBAAA	OOOOxx
+7649	1199	1	1	9	9	49	649	1649	2649	7649	98	99	FIAAAA	DUBAAA	VVVVxx
+6966	1200	0	2	6	6	66	966	966	1966	6966	132	133	YHAAAA	EUBAAA	AAAAxx
+553	1201	1	1	3	13	53	553	553	553	553	106	107	HVAAAA	FUBAAA	HHHHxx
+3677	1202	1	1	7	17	77	677	1677	3677	3677	154	155	LLAAAA	GUBAAA	OOOOxx
+2344	1203	0	0	4	4	44	344	344	2344	2344	88	89	EMAAAA	HUBAAA	VVVVxx
+7439	1204	1	3	9	19	39	439	1439	2439	7439	78	79	DAAAAA	IUBAAA	AAAAxx
+3910	1205	0	2	0	10	10	910	1910	3910	3910	20	21	KUAAAA	JUBAAA	HHHHxx
+3638	1206	0	2	8	18	38	638	1638	3638	3638	76	77	YJAAAA	KUBAAA	OOOOxx
+6637	1207	1	1	7	17	37	637	637	1637	6637	74	75	HVAAAA	LUBAAA	VVVVxx
+4438	1208	0	2	8	18	38	438	438	4438	4438	76	77	SOAAAA	MUBAAA	AAAAxx
+171	1209	1	3	1	11	71	171	171	171	171	142	143	PGAAAA	NUBAAA	HHHHxx
+310	1210	0	2	0	10	10	310	310	310	310	20	21	YLAAAA	OUBAAA	OOOOxx
+2714	1211	0	2	4	14	14	714	714	2714	2714	28	29	KAAAAA	PUBAAA	VVVVxx
+5199	1212	1	3	9	19	99	199	1199	199	5199	198	199	ZRAAAA	QUBAAA	AAAAxx
+8005	1213	1	1	5	5	5	5	5	3005	8005	10	11	XVAAAA	RUBAAA	HHHHxx
+3188	1214	0	0	8	8	88	188	1188	3188	3188	176	177	QSAAAA	SUBAAA	OOOOxx
+1518	1215	0	2	8	18	18	518	1518	1518	1518	36	37	KGAAAA	TUBAAA	VVVVxx
+6760	1216	0	0	0	0	60	760	760	1760	6760	120	121	AAAAAA	UUBAAA	AAAAxx
+9373	1217	1	1	3	13	73	373	1373	4373	9373	146	147	NWAAAA	VUBAAA	HHHHxx
+1938	1218	0	2	8	18	38	938	1938	1938	1938	76	77	OWAAAA	WUBAAA	OOOOxx
+2865	1219	1	1	5	5	65	865	865	2865	2865	130	131	FGAAAA	XUBAAA	VVVVxx
+3203	1220	1	3	3	3	3	203	1203	3203	3203	6	7	FTAAAA	YUBAAA	AAAAxx
+6025	1221	1	1	5	5	25	25	25	1025	6025	50	51	TXAAAA	ZUBAAA	HHHHxx
+8684	1222	0	0	4	4	84	684	684	3684	8684	168	169	AWAAAA	AVBAAA	OOOOxx
+7732	1223	0	0	2	12	32	732	1732	2732	7732	64	65	KLAAAA	BVBAAA	VVVVxx
+3218	1224	0	2	8	18	18	218	1218	3218	3218	36	37	UTAAAA	CVBAAA	AAAAxx
+525	1225	1	1	5	5	25	525	525	525	525	50	51	FUAAAA	DVBAAA	HHHHxx
+601	1226	1	1	1	1	1	601	601	601	601	2	3	DXAAAA	EVBAAA	OOOOxx
+6091	1227	1	3	1	11	91	91	91	1091	6091	182	183	HAAAAA	FVBAAA	VVVVxx
+4498	1228	0	2	8	18	98	498	498	4498	4498	196	197	ARAAAA	GVBAAA	AAAAxx
+8192	1229	0	0	2	12	92	192	192	3192	8192	184	185	CDAAAA	HVBAAA	HHHHxx
+8006	1230	0	2	6	6	6	6	6	3006	8006	12	13	YVAAAA	IVBAAA	OOOOxx
+6157	1231	1	1	7	17	57	157	157	1157	6157	114	115	VCAAAA	JVBAAA	VVVVxx
+312	1232	0	0	2	12	12	312	312	312	312	24	25	AMAAAA	KVBAAA	AAAAxx
+8652	1233	0	0	2	12	52	652	652	3652	8652	104	105	UUAAAA	LVBAAA	HHHHxx
+2787	1234	1	3	7	7	87	787	787	2787	2787	174	175	FDAAAA	MVBAAA	OOOOxx
+1782	1235	0	2	2	2	82	782	1782	1782	1782	164	165	OQAAAA	NVBAAA	VVVVxx
+23	1236	1	3	3	3	23	23	23	23	23	46	47	XAAAAA	OVBAAA	AAAAxx
+1206	1237	0	2	6	6	6	206	1206	1206	1206	12	13	KUAAAA	PVBAAA	HHHHxx
+1076	1238	0	0	6	16	76	76	1076	1076	1076	152	153	KPAAAA	QVBAAA	OOOOxx
+5379	1239	1	3	9	19	79	379	1379	379	5379	158	159	XYAAAA	RVBAAA	VVVVxx
+2047	1240	1	3	7	7	47	47	47	2047	2047	94	95	TAAAAA	SVBAAA	AAAAxx
+6262	1241	0	2	2	2	62	262	262	1262	6262	124	125	WGAAAA	TVBAAA	HHHHxx
+1840	1242	0	0	0	0	40	840	1840	1840	1840	80	81	USAAAA	UVBAAA	OOOOxx
+2106	1243	0	2	6	6	6	106	106	2106	2106	12	13	ADAAAA	VVBAAA	VVVVxx
+1307	1244	1	3	7	7	7	307	1307	1307	1307	14	15	HYAAAA	WVBAAA	AAAAxx
+735	1245	1	3	5	15	35	735	735	735	735	70	71	HCAAAA	XVBAAA	HHHHxx
+3657	1246	1	1	7	17	57	657	1657	3657	3657	114	115	RKAAAA	YVBAAA	OOOOxx
+3006	1247	0	2	6	6	6	6	1006	3006	3006	12	13	QLAAAA	ZVBAAA	VVVVxx
+1538	1248	0	2	8	18	38	538	1538	1538	1538	76	77	EHAAAA	AWBAAA	AAAAxx
+6098	1249	0	2	8	18	98	98	98	1098	6098	196	197	OAAAAA	BWBAAA	HHHHxx
+5267	1250	1	3	7	7	67	267	1267	267	5267	134	135	PUAAAA	CWBAAA	OOOOxx
+9757	1251	1	1	7	17	57	757	1757	4757	9757	114	115	HLAAAA	DWBAAA	VVVVxx
+1236	1252	0	0	6	16	36	236	1236	1236	1236	72	73	OVAAAA	EWBAAA	AAAAxx
+83	1253	1	3	3	3	83	83	83	83	83	166	167	FDAAAA	FWBAAA	HHHHxx
+9227	1254	1	3	7	7	27	227	1227	4227	9227	54	55	XQAAAA	GWBAAA	OOOOxx
+8772	1255	0	0	2	12	72	772	772	3772	8772	144	145	KZAAAA	HWBAAA	VVVVxx
+8822	1256	0	2	2	2	22	822	822	3822	8822	44	45	IBAAAA	IWBAAA	AAAAxx
+7167	1257	1	3	7	7	67	167	1167	2167	7167	134	135	RPAAAA	JWBAAA	HHHHxx
+6909	1258	1	1	9	9	9	909	909	1909	6909	18	19	TFAAAA	KWBAAA	OOOOxx
+1439	1259	1	3	9	19	39	439	1439	1439	1439	78	79	JDAAAA	LWBAAA	VVVVxx
+2370	1260	0	2	0	10	70	370	370	2370	2370	140	141	ENAAAA	MWBAAA	AAAAxx
+4577	1261	1	1	7	17	77	577	577	4577	4577	154	155	BUAAAA	NWBAAA	HHHHxx
+2575	1262	1	3	5	15	75	575	575	2575	2575	150	151	BVAAAA	OWBAAA	OOOOxx
+2795	1263	1	3	5	15	95	795	795	2795	2795	190	191	NDAAAA	PWBAAA	VVVVxx
+5520	1264	0	0	0	0	20	520	1520	520	5520	40	41	IEAAAA	QWBAAA	AAAAxx
+382	1265	0	2	2	2	82	382	382	382	382	164	165	SOAAAA	RWBAAA	HHHHxx
+6335	1266	1	3	5	15	35	335	335	1335	6335	70	71	RJAAAA	SWBAAA	OOOOxx
+8430	1267	0	2	0	10	30	430	430	3430	8430	60	61	GMAAAA	TWBAAA	VVVVxx
+4131	1268	1	3	1	11	31	131	131	4131	4131	62	63	XCAAAA	UWBAAA	AAAAxx
+9332	1269	0	0	2	12	32	332	1332	4332	9332	64	65	YUAAAA	VWBAAA	HHHHxx
+293	1270	1	1	3	13	93	293	293	293	293	186	187	HLAAAA	WWBAAA	OOOOxx
+2276	1271	0	0	6	16	76	276	276	2276	2276	152	153	OJAAAA	XWBAAA	VVVVxx
+5687	1272	1	3	7	7	87	687	1687	687	5687	174	175	TKAAAA	YWBAAA	AAAAxx
+5862	1273	0	2	2	2	62	862	1862	862	5862	124	125	MRAAAA	ZWBAAA	HHHHxx
+5073	1274	1	1	3	13	73	73	1073	73	5073	146	147	DNAAAA	AXBAAA	OOOOxx
+4170	1275	0	2	0	10	70	170	170	4170	4170	140	141	KEAAAA	BXBAAA	VVVVxx
+5039	1276	1	3	9	19	39	39	1039	39	5039	78	79	VLAAAA	CXBAAA	AAAAxx
+3294	1277	0	2	4	14	94	294	1294	3294	3294	188	189	SWAAAA	DXBAAA	HHHHxx
+6015	1278	1	3	5	15	15	15	15	1015	6015	30	31	JXAAAA	EXBAAA	OOOOxx
+9015	1279	1	3	5	15	15	15	1015	4015	9015	30	31	TIAAAA	FXBAAA	VVVVxx
+9785	1280	1	1	5	5	85	785	1785	4785	9785	170	171	JMAAAA	GXBAAA	AAAAxx
+4312	1281	0	0	2	12	12	312	312	4312	4312	24	25	WJAAAA	HXBAAA	HHHHxx
+6343	1282	1	3	3	3	43	343	343	1343	6343	86	87	ZJAAAA	IXBAAA	OOOOxx
+2161	1283	1	1	1	1	61	161	161	2161	2161	122	123	DFAAAA	JXBAAA	VVVVxx
+4490	1284	0	2	0	10	90	490	490	4490	4490	180	181	SQAAAA	KXBAAA	AAAAxx
+4454	1285	0	2	4	14	54	454	454	4454	4454	108	109	IPAAAA	LXBAAA	HHHHxx
+7647	1286	1	3	7	7	47	647	1647	2647	7647	94	95	DIAAAA	MXBAAA	OOOOxx
+1028	1287	0	0	8	8	28	28	1028	1028	1028	56	57	ONAAAA	NXBAAA	VVVVxx
+2965	1288	1	1	5	5	65	965	965	2965	2965	130	131	BKAAAA	OXBAAA	AAAAxx
+9900	1289	0	0	0	0	0	900	1900	4900	9900	0	1	UQAAAA	PXBAAA	HHHHxx
+5509	1290	1	1	9	9	9	509	1509	509	5509	18	19	XDAAAA	QXBAAA	OOOOxx
+7751	1291	1	3	1	11	51	751	1751	2751	7751	102	103	DMAAAA	RXBAAA	VVVVxx
+9594	1292	0	2	4	14	94	594	1594	4594	9594	188	189	AFAAAA	SXBAAA	AAAAxx
+7632	1293	0	0	2	12	32	632	1632	2632	7632	64	65	OHAAAA	TXBAAA	HHHHxx
+6528	1294	0	0	8	8	28	528	528	1528	6528	56	57	CRAAAA	UXBAAA	OOOOxx
+1041	1295	1	1	1	1	41	41	1041	1041	1041	82	83	BOAAAA	VXBAAA	VVVVxx
+1534	1296	0	2	4	14	34	534	1534	1534	1534	68	69	AHAAAA	WXBAAA	AAAAxx
+4229	1297	1	1	9	9	29	229	229	4229	4229	58	59	RGAAAA	XXBAAA	HHHHxx
+84	1298	0	0	4	4	84	84	84	84	84	168	169	GDAAAA	YXBAAA	OOOOxx
+2189	1299	1	1	9	9	89	189	189	2189	2189	178	179	FGAAAA	ZXBAAA	VVVVxx
+7566	1300	0	2	6	6	66	566	1566	2566	7566	132	133	AFAAAA	AYBAAA	AAAAxx
+707	1301	1	3	7	7	7	707	707	707	707	14	15	FBAAAA	BYBAAA	HHHHxx
+581	1302	1	1	1	1	81	581	581	581	581	162	163	JWAAAA	CYBAAA	OOOOxx
+6753	1303	1	1	3	13	53	753	753	1753	6753	106	107	TZAAAA	DYBAAA	VVVVxx
+8604	1304	0	0	4	4	4	604	604	3604	8604	8	9	YSAAAA	EYBAAA	AAAAxx
+373	1305	1	1	3	13	73	373	373	373	373	146	147	JOAAAA	FYBAAA	HHHHxx
+9635	1306	1	3	5	15	35	635	1635	4635	9635	70	71	PGAAAA	GYBAAA	OOOOxx
+9277	1307	1	1	7	17	77	277	1277	4277	9277	154	155	VSAAAA	HYBAAA	VVVVxx
+7117	1308	1	1	7	17	17	117	1117	2117	7117	34	35	TNAAAA	IYBAAA	AAAAxx
+8564	1309	0	0	4	4	64	564	564	3564	8564	128	129	KRAAAA	JYBAAA	HHHHxx
+1697	1310	1	1	7	17	97	697	1697	1697	1697	194	195	HNAAAA	KYBAAA	OOOOxx
+7840	1311	0	0	0	0	40	840	1840	2840	7840	80	81	OPAAAA	LYBAAA	VVVVxx
+3646	1312	0	2	6	6	46	646	1646	3646	3646	92	93	GKAAAA	MYBAAA	AAAAxx
+368	1313	0	0	8	8	68	368	368	368	368	136	137	EOAAAA	NYBAAA	HHHHxx
+4797	1314	1	1	7	17	97	797	797	4797	4797	194	195	NCAAAA	OYBAAA	OOOOxx
+5300	1315	0	0	0	0	0	300	1300	300	5300	0	1	WVAAAA	PYBAAA	VVVVxx
+7664	1316	0	0	4	4	64	664	1664	2664	7664	128	129	UIAAAA	QYBAAA	AAAAxx
+1466	1317	0	2	6	6	66	466	1466	1466	1466	132	133	KEAAAA	RYBAAA	HHHHxx
+2477	1318	1	1	7	17	77	477	477	2477	2477	154	155	HRAAAA	SYBAAA	OOOOxx
+2036	1319	0	0	6	16	36	36	36	2036	2036	72	73	IAAAAA	TYBAAA	VVVVxx
+3624	1320	0	0	4	4	24	624	1624	3624	3624	48	49	KJAAAA	UYBAAA	AAAAxx
+5099	1321	1	3	9	19	99	99	1099	99	5099	198	199	DOAAAA	VYBAAA	HHHHxx
+1308	1322	0	0	8	8	8	308	1308	1308	1308	16

<TRUNCATED>
http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/test/feature/vexecutor/sql/scan1.sql
----------------------------------------------------------------------
diff --git a/src/test/feature/vexecutor/sql/scan1.sql b/src/test/feature/vexecutor/sql/scan1.sql
new file mode 100644
index 0000000..338be40
--- /dev/null
+++ b/src/test/feature/vexecutor/sql/scan1.sql
@@ -0,0 +1 @@
+select unique1 from test1;
\ No newline at end of file



[4/4] incubator-hawq git commit: HAWQ-1598. Vectorized Scan Node Framework initialization

Posted by in...@apache.org.
HAWQ-1598. Vectorized Scan Node Framework initialization


Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq/commit/30b30449
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq/tree/30b30449
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq/diff/30b30449

Branch: refs/heads/master
Commit: 30b30449a83f600492e803c3f306d7c0135581b8
Parents: d56aa10
Author: Weinan Wang <we...@pivotal.io>
Authored: Mon Mar 26 18:07:21 2018 +0800
Committer: interma <in...@outlook.com>
Committed: Fri Mar 30 10:19:47 2018 +0800

----------------------------------------------------------------------
 contrib/vexecutor/Makefile                    |     2 +-
 contrib/vexecutor/clean_type.sql              |     7 +
 contrib/vexecutor/execVScan.c                 |   167 +
 contrib/vexecutor/execVScan.h                 |    27 +
 contrib/vexecutor/tuplebatch.c                |     3 -
 contrib/vexecutor/vadt.c                      |    13 +-
 contrib/vexecutor/vexecutor.c                 |   130 +-
 src/backend/executor/execProcnode.c           |    42 +-
 src/backend/executor/execQual.c               |    11 +-
 src/backend/executor/execUtils.c              |     5 +-
 src/include/executor/executor.h               |     3 +-
 src/include/executor/tuptable.h               |     2 +
 src/test/feature/vexe_test.txt                |     5 +
 src/test/feature/vexecutor/ans/scan1.ans      | 10004 +++++++++++++++++++
 src/test/feature/vexecutor/data/tenk.data     | 10000 ++++++++++++++++++
 src/test/feature/vexecutor/sql/scan1.sql      |     1 +
 src/test/feature/vexecutor/test_vexecutor.cpp |    51 +-
 17 files changed, 20425 insertions(+), 48 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/Makefile
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/Makefile b/contrib/vexecutor/Makefile
index 5c15297..805485f 100644
--- a/contrib/vexecutor/Makefile
+++ b/contrib/vexecutor/Makefile
@@ -17,7 +17,7 @@
 
 
 MODULE_big = vexecutor
-OBJS    = vexecutor.o vadt.o vcheck.o tuplebatch.o
+OBJS    = vexecutor.o vadt.o vcheck.o tuplebatch.o execVScan.o
 
 PG_CXXFLAGS = -Wall -O0 -g -std=c++11
 PG_LIBS = $(libpq_pgport) 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/clean_type.sql
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/clean_type.sql b/contrib/vexecutor/clean_type.sql
new file mode 100644
index 0000000..dfaf755
--- /dev/null
+++ b/contrib/vexecutor/clean_type.sql
@@ -0,0 +1,7 @@
+
+drop type vint2 cascade;
+drop type vint4 cascade;
+drop type vint8 cascade;
+drop type vfloat8 cascade;
+drop type vfloat4 cascade;
+drop type vbool cascade;

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/execVScan.c
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/execVScan.c b/contrib/vexecutor/execVScan.c
new file mode 100644
index 0000000..b0fbd11
--- /dev/null
+++ b/contrib/vexecutor/execVScan.c
@@ -0,0 +1,167 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#include "execVScan.h"
+#include "miscadmin.h"
+
+static TupleTableSlot*
+ExecVScan(ScanState *node, ExecScanAccessMtd accessMtd);
+
+static const ScanMethod *
+getVScanMethod(int tableType)
+{
+    static const ScanMethod scanMethods[] =
+            {
+                    //HEAPSCAN
+                    {
+                    },
+                    //APPENDONLYSCAN
+                    {
+                            &AppendOnlyScanNext, &BeginScanAppendOnlyRelation, &EndScanAppendOnlyRelation,
+                            &ReScanAppendOnlyRelation, &MarkRestrNotAllowed, &MarkRestrNotAllowed
+                    },
+                    //PARQUETSCAN
+                    {
+                            &ParquetScanNext, &BeginScanParquetRelation, &EndScanParquetRelation,
+                            &ReScanParquetRelation, &MarkRestrNotAllowed, &MarkRestrNotAllowed
+                    }
+            };
+
+    COMPILE_ASSERT(ARRAY_SIZE(scanMethods) == TableTypeInvalid);
+
+    if (tableType < 0 && tableType >= TableTypeInvalid)
+    {
+        return NULL;
+    }
+
+    return &scanMethods[tableType];
+}
+
+TupleTableSlot *ExecTableVScan(ScanState *scanState)
+{
+    if (scanState->scan_state == SCAN_INIT ||
+        scanState->scan_state == SCAN_DONE)
+    {
+        getVScanMethod(scanState->tableType)->beginScanMethod(scanState);
+    }
+
+    TupleTableSlot *slot = ExecVScan(scanState,getVScanMethod(scanState->tableType)->accessMethod);
+
+    if (TupIsNull(slot) && !scanState->ps.delayEagerFree)
+    {
+        getVScanMethod(scanState->tableType)->endScanMethod(scanState);
+    }
+
+    return slot;
+
+}
+
+TupleTableSlot*
+ExecVScan(ScanState *node, ExecScanAccessMtd accessMtd)
+{
+    ExprContext *econtext;
+    List	   *qual;
+    ProjectionInfo *projInfo;
+
+    /*
+     * Fetch data from node
+     */
+    qual = node->ps.qual;
+    projInfo = node->ps.ps_ProjInfo;
+
+    /*
+     * If we have neither a qual to check nor a projection to do, just skip
+     * all the overhead and return the raw scan tuple.
+     */
+    if (!qual && !projInfo)
+        return (*accessMtd) (node);
+
+    /*
+     * Reset per-tuple memory context to free any expression evaluation
+     * storage allocated in the previous tuple cycle.
+     */
+    econtext = node->ps.ps_ExprContext;
+    ResetExprContext(econtext);
+
+    /*
+     * get a tuple from the access method loop until we obtain a tuple which
+     * passes the qualification.
+     */
+    for (;;)
+    {
+        TupleTableSlot *slot;
+
+        CHECK_FOR_INTERRUPTS();
+
+        slot = (*accessMtd) (node);
+
+        /*
+         * if the slot returned by the accessMtd contains NULL, then it means
+         * there is nothing more to scan so we just return an empty slot,
+         * being careful to use the projection result slot so it has correct
+         * tupleDesc.
+         */
+        if (TupIsNull(slot))
+        {
+            if (projInfo)
+                return ExecClearTuple(projInfo->pi_slot);
+            else
+                return slot;
+        }
+
+        /*
+         * place the current tuple into the expr context
+         */
+        econtext->ecxt_scantuple = slot;
+
+        /*
+         * check that the current tuple satisfies the qual-clause
+         *
+         * check for non-nil qual here to avoid a function call to ExecQual()
+         * when the qual is nil ... saves only a few cycles, but they add up
+         * ...
+         */
+        if (!qual || ExecQual(qual, econtext, false))
+        {
+            /*
+             * Found a satisfactory scan tuple.
+             */
+            if (projInfo)
+            {
+                /*
+                 * Form a projection tuple, store it in the result tuple slot
+                 * and return it.
+                 */
+                return ExecProject(projInfo, NULL);
+            }
+            else
+            {
+                /*
+                 * Here, we aren't projecting, so just return scan tuple.
+                 */
+                return slot;
+            }
+        }
+
+        /*
+         * Tuple fails qual, so free per-tuple memory and try again.
+         */
+        ResetExprContext(econtext);
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/execVScan.h
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/execVScan.h b/contrib/vexecutor/execVScan.h
new file mode 100644
index 0000000..22eee5b
--- /dev/null
+++ b/contrib/vexecutor/execVScan.h
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+#ifndef __EXECVSCAN_H__
+#define __EXECVSCAN_H__
+
+
+#include "postgres.h"
+#include "executor/executor.h"
+
+TupleTableSlot *ExecTableVScan(ScanState *scanState);
+#endif

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/tuplebatch.c
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/tuplebatch.c b/contrib/vexecutor/tuplebatch.c
index 5a6544f..3cec6ec 100644
--- a/contrib/vexecutor/tuplebatch.c
+++ b/contrib/vexecutor/tuplebatch.c
@@ -22,9 +22,6 @@
 static size_t vtypeSize(vheader *vh);
 static size_t tbSerializationSize(TupleBatch tb);
 
-#define TBGETVALUEPTR(tb,type,colid,rowid) (&(((type *)tb->datagroup[colid])->data[rowid]))
-#define TBGETISNULLPTR(tb,colid,rowid) (&((tb->datagroup[colid])->isnull[rowid]))
-
 TupleBatch tbGenerate(int colnum,int batchsize)
 {
     Assert(colnum > 0 && batchsize > 0);

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/vadt.c
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/vadt.c b/contrib/vexecutor/vadt.c
index 186962a..eaccc33 100644
--- a/contrib/vexecutor/vadt.c
+++ b/contrib/vexecutor/vadt.c
@@ -31,7 +31,7 @@
 size_t v##type##Size(vheader *vh) \
 {\
 	size_t len = offsetof(vheader,isnull);\
-	return  len + vh->dim * sizeof(bool) + vh->dim * sizeof(type);\
+	return  len + vh->dim * sizeof(bool) + vh->dim * sizeof(type) + sizeof(Datum);\
 }
 
 /* Build the vectorized data */
@@ -39,10 +39,10 @@ size_t v##type##Size(vheader *vh) \
 vheader* buildv##type(int n) \
 { \
 	vheader* result; \
-	result = (vheader*) palloc0(offsetof(v##type,values) + n * sizeof(type)); \
+	result = (vheader*) palloc0(offsetof(v##type,values) + n * sizeof(type)) + sizeof(Datum); \
 	result->dim = n; \
 	result->elemtype = typeoid; \
-	result->isnull = palloc(sizeof(bool) * n); \
+	result->isnull = palloc0(sizeof(bool) * n); \
 	SET_VARSIZE(result,v##type##Size(result)); \
 	return result; \
 }
@@ -52,9 +52,8 @@ vheader* buildv##type(int n) \
 void destoryv##type(v##header **header) \
 { \
 	v##type** ptr = (v##type**) header; \
-	free((*header)->isnull); \
-	free((*ptr)->values); \
-	free(*ptr); \
+	pfree((*header)->isnull); \
+	pfree(*ptr); \
 	*ptr = NULL; \
 }
 
@@ -183,7 +182,6 @@ v##type1##v##type2##opstr(PG_FUNCTION_ARGS) \
     v##type1 *arg1 = PG_GETARG_POINTER(0); \
     v##type2 *arg2 = PG_GETARG_POINTER(1); \
     v##type1 *res = NULL; \
-    Assert((arg1)->header._vl_len == (arg2)->header._vl_len); \
     Assert((arg1)->header.dim == (arg2)->header.dim); \
     size = (arg1)->header.dim; \
     if(sizeof(type1) > sizeof(type2)) \
@@ -251,7 +249,6 @@ v##type1##v##type2##cmpstr(PG_FUNCTION_ARGS) \
     v##type1 *arg1 = PG_GETARG_POINTER(0); \
     v##type2 *arg2 = PG_GETARG_POINTER(1); \
     vbool *res = NULL; \
-    Assert((arg1)->header._vl_len == (arg2)->header._vl_len); \
     size = (arg1)->header.dim; \
     res = palloc0(offsetof(vbool, values) + (size) * sizeof(bool)); \
     SET_VARSIZE(res, (offsetof(vbool, values) + (size) * sizeof(bool)));  \

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/contrib/vexecutor/vexecutor.c
----------------------------------------------------------------------
diff --git a/contrib/vexecutor/vexecutor.c b/contrib/vexecutor/vexecutor.c
index 1425838..51cf0f7 100644
--- a/contrib/vexecutor/vexecutor.c
+++ b/contrib/vexecutor/vexecutor.c
@@ -21,15 +21,25 @@
 #include "vexecutor.h"
 #include "utils/guc.h"
 #include "vcheck.h"
+#include "miscadmin.h"
+#include "tuplebatch.h"
+#include "executor/nodeTableScan.h"
+#include "catalog/catquery.h"
+#include "cdb/cdbvars.h"
+#include "execVScan.h"
 
 PG_MODULE_MAGIC;
-
+int BATCHSIZE = 1024;
+static int MINBATCHSIZE = 1;
+static int MAXBATCHSIZE = 4096;
 /*
  * hook function
  */
-static PlanState* VExecInitNode(PlanState *node,EState *eState,int eflags);
+static PlanState* VExecInitNode(PlanState *node,EState *eState,int eflags,MemoryAccount* ptr);
 static TupleTableSlot* VExecProcNode(PlanState *node);
 static bool VExecEndNode(PlanState *node);
+static Oid GetNType(Oid vtype);
+extern int currentSliceId;
 
 /*
  * _PG_init is called when the module is loaded. In this function we save the
@@ -44,12 +54,21 @@ _PG_init(void)
 	vmthd.ExecInitNode_Hook = VExecInitNode;
 	vmthd.ExecProcNode_Hook = VExecProcNode;
 	vmthd.ExecEndNode_Hook = VExecEndNode;
+	vmthd.GetNType = GetNType;
 	DefineCustomBoolVariable("vectorized_executor_enable",
 	                         gettext_noop("enable vectorized executor"),
 	                         NULL,
 	                         &vmthd.vectorized_executor_enable,
 	                         PGC_USERSET,
 	                         NULL,NULL);
+
+    DefineCustomIntVariable("vectorized_batch_size",
+							gettext_noop("set vectorized execution batch size"),
+                            NULL,
+                            &BATCHSIZE,
+                            MINBATCHSIZE,MAXBATCHSIZE,
+							PGC_USERSET,
+							NULL,NULL);
 }
 
 /*
@@ -66,12 +85,53 @@ _PG_fini(void)
 	vmthd.ExecEndNode_Hook = NULL;
 }
 
-static PlanState* VExecInitNode(PlanState *node,EState *eState,int eflags)
+/*
+ *
+ * backportTupleDescriptor
+ *			Backport the TupleDesc information to normal type. Due to Vectorized type unrecognizable in normal execution node,
+ *			the TupleDesc structure should backport metadata to normal type before we do V->N result pop up.
+ */
+static void backportTupleDescriptor(PlanState* ps,TupleDesc td)
+{
+	cqContext *pcqCtx;
+	HeapTuple tuple;
+	Oid oidtypeid;
+	Form_pg_type  typeForm;
+	for(int i = 0;i < td->natts; ++i)
+	{
+		oidtypeid = GetVFunc(td->attrs[i]->atttypid)->ntype;
+
+		pcqCtx = caql_beginscan(
+				NULL,
+				cql("SELECT * FROM pg_type "
+							" WHERE oid = :1 ",
+					ObjectIdGetDatum(oidtypeid)));
+		tuple = caql_getnext(pcqCtx);
+
+		if (!HeapTupleIsValid(tuple))
+			elog(ERROR, "cache lookup failed for type %u", oidtypeid);
+		typeForm = (Form_pg_type) GETSTRUCT(tuple);
+
+		td->attrs[i]->atttypid = oidtypeid;
+		td->attrs[i]->attlen = typeForm->typlen;
+		td->attrs[i]->attbyval = typeForm->typbyval;
+		td->attrs[i]->attalign = typeForm->typalign;
+		td->attrs[i]->attstorage = typeForm->typstorage;
+
+		caql_endscan(pcqCtx);
+	}
+
+	ExecAssignResultType(ps,td);
+}
+
+static PlanState* VExecInitNode(PlanState *node,EState *eState,int eflags,MemoryAccount* curMemoryAccount)
 {
 	Plan *plan = node->plan;
 	PlanState *subState = NULL;
 	VectorizedState *vstate = (VectorizedState*)palloc0(sizeof(VectorizedState));
 
+	elog(DEBUG3, "PG VEXECINIT NODE");
+
 	if(NULL == node)
 		return node;
 
@@ -96,20 +156,70 @@ static PlanState* VExecInitNode(PlanState *node,EState *eState,int eflags)
 		((VectorizedState*)(subState->vectorized))->parent = node;
 	}
 
-	//***TODO:process the vectorized execution operators here
+	if(Gp_role != GP_ROLE_DISPATCH)
+	{
+		switch (nodeTag(node) )
+		{
+			case T_AppendOnlyScan:
+			case T_ParquetScan:
+			case T_TableScanState:
+				START_MEMORY_ACCOUNT(curMemoryAccount);
+					{
+						TupleDesc td = ((TableScanState *)node)->ss.ss_ScanTupleSlot->tts_tupleDescriptor;
+						((TableScanState *)node)->ss.ss_ScanTupleSlot->PRIVATE_tb = PointerGetDatum(tbGenerate(td->natts,BATCHSIZE));
+						node->ps_ResultTupleSlot->PRIVATE_tb = PointerGetDatum(tbGenerate(td->natts,BATCHSIZE));
+						/* if V->N */
+						backportTupleDescriptor(node,node->ps_ResultTupleSlot->tts_tupleDescriptor);
+					}
+						END_MEMORY_ACCOUNT();
+				break;
+			default:
+				((VectorizedState *)node->vectorized)->vectorized = false;
+				break;
+		}
+	}
 
-	elog(DEBUG3, "PG VEXEC INIT NODE");
 	return node;
 }
 static TupleTableSlot* VExecProcNode(PlanState *node)
 {
-	return NULL;
+    TupleTableSlot* result = NULL;
+    switch(nodeTag(node))
+    {
+        case T_ParquetScanState:
+        case T_AppendOnlyScanState:
+        case T_TableScanState:
+            result = ExecTableVScan((TableScanState*)node);
+            break;
+        default:
+            break;
+    }
+    return result;
 }
 
 static bool VExecEndNode(PlanState *node)
 {
+    if(Gp_role == GP_ROLE_DISPATCH)
+		return false;
+
 	elog(DEBUG3, "PG VEXEC END NODE");
-	return false;
+	bool ret = false;
+	switch (nodeTag(node))
+	{
+		case T_AppendOnlyScanState:
+		case T_ParquetScanState:
+            tbDestroy((TupleBatch *) (&node->ps_ResultTupleSlot->PRIVATE_tb));
+            tbDestroy((TupleBatch *) (&((TableScanState *) node)->ss.ss_ScanTupleSlot->PRIVATE_tb));
+			ret = true;
+			break;
+		case T_TableScanState:
+			ExecEndTableScan((TableScanState *)node);
+			ret = true;
+			break;
+		default:
+			break;
+	}
+	return ret;
 }
 
 /* check if there is an vectorized execution operator */
@@ -131,3 +241,9 @@ HasVecExecOprator(NodeTag tag)
 
 	return result;
 }
+
+static Oid GetNType(Oid vtype)
+{
+	const vFuncMap* vf = GetVFunc(vtype);
+	return vf == NULL ? InvalidOid : vf->ntype;
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/backend/executor/execProcnode.c
----------------------------------------------------------------------
diff --git a/src/backend/executor/execProcnode.c b/src/backend/executor/execProcnode.c
index 8c01c0c..7ee99c6 100644
--- a/src/backend/executor/execProcnode.c
+++ b/src/backend/executor/execProcnode.c
@@ -750,22 +750,20 @@ ExecInitNode(Plan *node, EState *estate, int eflags)
 	if (estate->es_instrument && result != NULL) {
 		result->instrument = InstrAlloc(1);
 	}
+
 	if (result != NULL)
 	{
+		/*
+        * If the plan node can be vectorized and vectorized is enable, enter the
+        * vectorized execution operators.
+        */
+		if(vmthd.vectorized_executor_enable
+		   && vmthd.ExecInitNode_Hook)
+			result = vmthd.ExecInitNode_Hook(result,estate,eflags,curMemoryAccount);
+
 		SAVE_EXECUTOR_MEMORY_ACCOUNT(result, curMemoryAccount);
 	}
 
-	/*
-	* If the plan node can be vectorized and vectorized is enable, enter the
-	* vectorized execution operators.
-	*/
-	if(vmthd.vectorized_executor_enable
-		&& vmthd.ExecInitNode_Hook
-		&& (result = vmthd.ExecInitNode_Hook(result,estate,eflags)))
-	{
-		/* New vectorized Plan node is got. */
-		return result;
-	}
 
 	return result;
 }
@@ -822,10 +820,6 @@ TupleTableSlot *
 ExecProcNode(PlanState *node)
 {
 	TupleTableSlot *result = NULL;
-    if(vmthd.vectorized_executor_enable && vmthd.ExecProcNode_Hook
-	   && (result = vmthd.ExecProcNode_Hook(node)))
-		return result;
-
 
 	START_MEMORY_ACCOUNT(node->plan->memoryAccount);
 	{
@@ -903,6 +897,13 @@ ExecProcNode(PlanState *node)
 		CheckSendPlanStateGpmonPkt(node);
 
 	Assert(nodeTag(node) >= T_PlanState_Start && nodeTag(node) < T_PlanState_End);
+
+	if(vmthd.vectorized_executor_enable
+	   && node->vectorized
+	   && vmthd.ExecProcNode_Hook
+	   && (result = vmthd.ExecProcNode_Hook(node)))
+		goto Exec_Jmp_Done;
+
 	goto *ExecJmpTbl[nodeTag(node) - T_PlanState_Start];
 
 Exec_Jmp_Result:
@@ -1588,6 +1589,17 @@ ExecEndNode(PlanState *node)
         node->cdbexplainbuf = NULL;
     }
 
+	if(vmthd.vectorized_executor_enable
+	   && node->vectorized
+	   && vmthd.ExecEndNode_Hook
+	   && vmthd.ExecEndNode_Hook(node))
+	{
+		estate->currentSliceIdInPlan = origSliceIdInPlan;
+		estate->currentExecutingSliceId = origExecutingSliceId;
+
+		return ;
+	}
+
     switch (nodeTag(node))
 	{
 			/*

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/backend/executor/execQual.c
----------------------------------------------------------------------
diff --git a/src/backend/executor/execQual.c b/src/backend/executor/execQual.c
index dc9f527..b49b7ec 100644
--- a/src/backend/executor/execQual.c
+++ b/src/backend/executor/execQual.c
@@ -653,12 +653,15 @@ ExecEvalVar(ExprState *exprstate, ExprContext *econtext,
 			/* can't check type if dropped, since atttypid is probably 0 */
 			if (!attr->attisdropped)
 			{
-				if (variable->vartype != attr->atttypid)
+				bool cond = vmthd.GetNType == NULL ?
+							variable->vartype != attr->atttypid :
+							(variable->vartype != attr->atttypid && vmthd.GetNType(variable->vartype) != attr->atttypid);
+				if (cond)
 					ereport(ERROR,
 							(errmsg("attribute %d has wrong type", attnum),
-							 errdetail("Table has type %s, but query expects %s.",
-									   format_type_be(attr->atttypid),
-									   format_type_be(variable->vartype))));
+									errdetail("Table has type %s, but query expects %s.",
+											  format_type_be(attr->atttypid),
+											  format_type_be(variable->vartype))));
 			}
 		}
 

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/backend/executor/execUtils.c
----------------------------------------------------------------------
diff --git a/src/backend/executor/execUtils.c b/src/backend/executor/execUtils.c
index 780fa72..0f2de46 100644
--- a/src/backend/executor/execUtils.c
+++ b/src/backend/executor/execUtils.c
@@ -755,7 +755,10 @@ ExecBuildProjectionInfo(List *targetList,
 			break;
 		}
 		attr = inputDesc->attrs[variable->varattno - 1];
-		if (attr->attisdropped || variable->vartype != attr->atttypid)
+		bool cond = vmthd.GetNType == NULL ?
+					variable->vartype != attr->atttypid :
+					(variable->vartype != attr->atttypid && vmthd.GetNType(variable->vartype) != attr->atttypid);
+		if (attr->attisdropped || cond)
 		{
 			isVarList = false;
 			break;

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/include/executor/executor.h
----------------------------------------------------------------------
diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h
index fae940d..8484d66 100644
--- a/src/include/executor/executor.h
+++ b/src/include/executor/executor.h
@@ -44,9 +44,10 @@
 typedef struct vectorexe_t {
 	bool vectorized_executor_enable;
 	Plan* (*CheckPlanVectorized_Hook)(PlannerInfo *node, Plan *plan);
-	PlanState* (*ExecInitNode_Hook)(PlanState *node,EState *eState,int eflags);
+	PlanState* (*ExecInitNode_Hook)(PlanState *node,EState *eState,int eflags,MemoryAccount* ptr);
 	TupleTableSlot* (*ExecProcNode_Hook)(PlanState *node);
 	bool (*ExecEndNode_Hook)(PlanState *node);
+	Oid (*GetNType)(Oid vtype);
 } VectorExecMthd;
 
 extern PGDLLIMPORT VectorExecMthd vmthd;

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/include/executor/tuptable.h
----------------------------------------------------------------------
diff --git a/src/include/executor/tuptable.h b/src/include/executor/tuptable.h
index c608f87..4e7dc36 100644
--- a/src/include/executor/tuptable.h
+++ b/src/include/executor/tuptable.h
@@ -133,6 +133,8 @@ typedef struct TupleTableSlot
 	Datum 	*PRIVATE_tts_values;		/* virtual tuple values */
 	bool 	*PRIVATE_tts_isnull;		/* virtual tuple nulls */
 
+	Datum 	PRIVATE_tb;             /* Vectorized Execution TupleBatch */
+
 	TupleDesc	tts_tupleDescriptor;	/* slot's tuple descriptor */
 	MemTupleBinding *tts_mt_bind;		/* mem tuple's binding */ 
 	MemoryContext 	tts_mcxt;		/* slot itself is in this context */

http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/30b30449/src/test/feature/vexe_test.txt
----------------------------------------------------------------------
diff --git a/src/test/feature/vexe_test.txt b/src/test/feature/vexe_test.txt
new file mode 100644
index 0000000..352eedb
--- /dev/null
+++ b/src/test/feature/vexe_test.txt
@@ -0,0 +1,5 @@
+#PARALLEL=* are the parallel tests to run, optional but should not be empty
+#SERIAL=* are the serial tests to run, optional but should not be empty
+#you can have several PARALLEL or SRRIAL
+
+SERIAL=TestVexecutor.*