0
0
0
0
0
0
0
0
0
0
0
2811
18752
20000
18784
18325
17471
17104
16574
16135
15865
15731
15385
15033
14828
14573
14305
14370
14140
13956
13916
13708
13588
13349
13305
13050
12985
12676
12806
12621
12553
12398
12404
12148
12050
12066
12100
11784
11822
11865
11471
11469
11390
11342
11355
11282
11073
11113
11034
10732
10789
10704
10632
10555
10650
10522
10130
10330
10345
10127
10151
9951
10098
10102
9774
9697
9887
9736
9705
9777
9560
9526
9495
9350
9389
9345
9289
9056
9028
9159
9242
8782
8971
9147
9186
8908
8636
8758
8747
8593
8523
8505
8603
8410
8393
8319
8462
8359
8218
8035
8169
8283
7937
7980
7993
7865
7822
7871
7891
7863
7758
7798
7741
7608
7598
7681
7555
7434
7489
7378
7339
7359
7313
7226
7287
7310
7365
7125
7208
7112
7052
7019
7025
6926
7011
6966
6779
6805
6788
6732
6767
6803
6572
6654
6575
6364
6714
6610
6620
6496
6237
6317
6377
6142
6389
6174
6210
6161
6242
6099
6141
6103
6107
5935
6011
6105
5928
5935
5940
5953
5844
5698
5823
5837
5781
5735
5659
5733
5559
5625
5447
5707
5539
5517
5441
5443
5464
5439
5365
5464
5363
5284
5521
5157
5317
5193
5203
5143
5009
5112
5083
5115
5011
4971
5051
5021
5032
4926
5091
4822
4949
4825
4837
4792
4785
4844
4861
4739
4737
4695
4608
4655
4534
4553
4468
4521
4608
4566
4542
4702
4430
4378
4576
4431
4366
4389
4328
4359
4399
4459
4264
4159
4240
4218
4255
4204
4233
4204
4111
4316
4228
4079
4080
4081
4082
4040
3989
4066
3943
3966
3918
3918
3821
3965
3760
3827
3903
3881
3888
3777
3826
3725
3733
3772
3669
3609
3665
3698
3685
3716
3547
3523
3558
3644
3590
3503
3500
3590
3481
3510
3474
3538
3426
3422
3392
3354
3377
3346
3417
3388
3409
3382
3350
3242
3337
3339
3332
3232
3325
3201
3262
3222
3162
3115
3158
3208
3115
3068
3157
3138
3122
3112
3079
3033
3036
3036
3020
3056
2961
3064
3099
2964
2987
2937
2899
2874
2917
2981
2852
2970
2822
2847
2948
2906
2831
2838
2805
2865
2832
2729
2820
2774
2833
2700
2740
2814
2688
2721
2676
2609
2633
2624
2682
2585
2679
2593
2627
2581
2611
2582
2640
2560
2461
2544
2541
2549
2464
2405
2506
2457
2393
2368
2454
2429
2395
2384
2421
2402
2424
2367
2328
2369
2353
2449
2323
2345
2340
2330
2243
2363
2257
2176
2310
2116
2252
2257
2246
2240
2344
2232
2244
2056
2237
2206
2189
2196
2184
2145
2130
2093
2141
2104
2131
2162
2128
2020
2033
2108
2144
2098
2053
2067
2029
2036
2067
1997
1991
1930
1978
2014
2023
1954
1977
1945
2019
1912
1894
1918
1844
1979
1925
1843
1871
1843
1804
1897
1832
1952
1856
1824
1790
1913
1846
1832
1811
1778
1678
1795
1790
1701
1748
1747
1804
1709
1820
1743
1779
1805
1790
1758
1645
1592
1737
1635
1755
1706
1742
1608
1679
1667
1684
1641
1516
1666
1594
1631
1621
1710
1640
1571
1668
1559
1587
1563
1555
1622
1543
1553
1568
1538
1477
1482
1589
1607
1486
1565
1454
1570
1504
1472
1472
1514
1499
1530
1562
1439
1460
1479
1426
1414
1490
1469
1481
1431
1413
1470
1468
1415
1341
1384
1422
1419
1381
1374
1348
1335
1296
1362
1335
1283
1323
1346
1316
1324
1314
1318
1338
1289
1376
1309
1271
1277
1331
1348
1327
1288
1257
1251
1315
1247
1254
1240
1264
1377
1186
1293
1224
1265
1170
1243
1276
1179
1204
1292
1269
1124
1189
1152
1273
1186
1220
1206
1162
1185
1177
1234
1179
1098
1179
1181
1117
1117
1112
1118
1142
1137
1113
1115
1116
1163
1105
1124
1110
1164
1038
1126
1061
1022
1105
1108
1049
1082
1097
1052
1046
1005
1083
1091
1070
991
1082
1065
1044
992
973
1039
1026
967
1022
1015
998
1017
953
1009
937
938
1024
948
1019
989
969
1012
972
1016
1000
964
942
953
951
918
922
971
973
959
937
886
973
943
940
905
966
933
923
897
932
950
885
924
891
887
860
889
870
892
858
914
878
831
849
870
912
872
853
825
829
943
861
862
858
851
886
787
867
834
833
827
840
801
844
817
804
820
796
773
857
761
833
807
739
808
821
806
748
764
763
810
786
772
735
767
748
745
799
749
754
788
747
754
764
769
771
756
741
758
775
702
727
735
725
729
746
692
677
677
725
710
719
679
714
757
663
674
690
721
700
727
714
656
676
671
654
658
734
690
649
695
681
631
681
626
637
646
688
641
666
615
643
643
629
638
604
630
663
613
618
662
637
633
632
599
616
639
669
628
635
656
607
620
615
628
617
586
600
648
614
581
586
585
565
605
552
609
589
586
573
584
558
590
563
593
575
562
560
596
524
577
547
542
531
531
545
558
556
587
565
589
587
516
553
593
498
536
578
566
485
545
526
548
494
534
513
517
509
538
523
505
504
532
529
499
495
491
522
499
499
476
481
491
489
503
500
479
471
492
502
501
480
468
467
510
457
502
517
458
476
445
472
471
481
491
457
468
473
463
480
475
497
434
453
438
431
442
447
442
466
462
437
399
453
430
445
489
426
430
463
471
447
430
403
411
443
451
454
433
444
412
416
405
406
384
432
393
403
418
432
454
424
444
421
408
421
416
405
394
422
417
408
406
404
432
349
405
419
383
420
378
400
374
396
369
385
369
370
382
399
402
393
390
380
352
393
374
381
369
384
347
387
372
360
397
364
396
345
375
373
400
324
371
357
355
378
365
375
362
373
365
352
349
358
365
347
344
350
374
333
362
370
331
363
351
353
336
324
331
305
300
328
316
336
336
323
343
310
328
318
339
343
337
300
340
349
316
327
324
336
338
305
313
358
299
309
315
316
338
324
300
327
307
347
305
307
309
347
307
321
271
324
308
310
316
330
330
314
316
292
292
314
325
278
280
295
290
293
249
271
302
276
312
300
300
302
271
302
291
309
261
289
299
242
295
252
294
250
267
267
256
255
278
278
287
286
277
272
253
266
270
279
278
283
255
265
275
276
266
245
262
290
270
249
279
251
258
239
252
265
258
260
252
251
237
240
259
245
234
242
243
246
293
241
252
256
261
249
236
246
267
259
243
220
256
229
226
238
243
232
226
243
249
235
220
228
233
230
236
237
246
227
236
252
253
217
233
226
223
220
216
223
260
204
241
225
219
201
217
225
220
215
214
232
220
217
193
221
187
202
192
212
224
229
241
205
223
230
209
205
215
200
253
224
197
210
221
229
206
170
222
225
205
206
212
215
203
218
218
205
209
201
200
216
195
210
185
187
201
186
204
200
200
188
188
191
214
198
205
185
191
211
165
185
176
189
202
205
195
201
211
194
195
178
192
170
171
166
199
150
179
162
187
176
188
209
192
190
194
208
173
188
179
192
184
184
175
185
182
180
188
158
187
165
180
168
192
171
164
172
184
197
173
191
192
193
180
164
154
157
188
151
159
177
163
182
171
171
161
159
141
153
186
162
175
155
180
170
179
165
188
184
185
152
160
158
144
154
167
151
187
154
176
171
151
185
149
166
171
138
140
164
152
160
165
160
170
149
157
154
161
165
158
142
162
172
147
162
172
155
141
151
161
166
136
132
144
158
133
144
157
143
143
154
139
136
164
138
118
155
129
147
169
134
154
137
126
143
140
125
132
139
139
141
148
151
148
134
121
147
148
140
127
139
129
152
138
147
128
150
126
125
127
141
134
147
124
136
146
160
134
137
131
128
117
142
124
135
137
133
136
143
119
129
107
123
148
137
124
123
153
159
123
110
121
127
122
116
124
114
121
127
113
118
146
116
134
117
116
132
121
136
109
142
110
112
104
106
119
134
109
124
117
137
118
102
115
137
99
127
127
117
133
126
108
129
111
98
119
105
91
111
113
108
123
103
118
112
99
115
123
108
128
114
116
117
129
108
122
101
131
91
111
102
110
122
104
126
103
113
116
116
119
104
110
98
98
123
111
101
110
103
121
125
110
102
87
102
83
94
103
108
107
95
103
85
110
107
96
113
93
100
98
92
104
96
88
118
82
120
108
102
97
95
89
107
96
108
99
107
97
118
108
101
102
115
81
87
114
99
92
99
100
102
104
96
106
84
108
102
107
109
91
111
74
90
104
95
122
94
78
88
113
89
76
96
84
91
86
80
107
82
95
109
91
82
94
88
97
98
90
93
80
87
72
80
108
82
88
82
91
85
106
76
76
100
87
93
104
85
79
84
86
79
84
92
87
84
84
89
81
85
66
74
83
104
86
88
75
91
72
94
87
82
91
74
84
85
89
87
74
85
82
79
82
91
94
77
91
75
70
87
76
77
90
90
66
80
74
80
84
82
80
67
84
73
87
73
83
60
72
71
74
79
78
84
77
69
79
71
69
83
89
91
84
83
76
63
78
79
78
85
81
76
69
64
74
77
56
61
64
69
66
78
79
80
78
64
73
65
74
68
77
62
57
76
76
58
51
61
69
94
74
74
70
70
66
60
76
64
74
71
81
64
66
81
63
86
81
83
71
54
87
71
64
75
75
66
69
62
68
62
62
63
67
69
78
79
69
51
65
74
62
78
77
57
63
68
67
72
71
62
47
58
58
67
63
59
68
51
73
64
59
68
69
71
69
85
62
69
72
76
66
56
48
70
52
64
53
44
61
71
61
61
65
65
57
65
54
56
69
70
63
47
61
50
49
57
63
74
56
65
62
53
52
68
50
61
48
65
67
74
68
44
55
63
61
68
49
60
50
56
70
60
45
69
74
55
49
44
44
54
51
55
53
50
55
61
44
63
62
66
60
53
47
54
57
51
55
43
62
52
54
55
71
45
44
55
49
57
60
47
53
51
53
53
60
56
53
44
69
53
42
50
47
58
50
50
62
49
46
66
48
36
45
68
52
39
61
51
46
48
49
68
51
57
55
43
59
56
54
50
51
54
47
51
43
58
37
53
54
64
41
40
55
43
45
54
41
63
47
45
45
62
38
50
50
46
52
43
41
42
55
45
57
47
32
43
35
63
50
51
56
47
42
55
35
37
47
44
46
50
51
56
54
46
43
59
48
44
45
40
31
38
50
41
53
56
51
43
51
48
48
38
37
43
42
54
38
47
34
52
41
51
45
41
42
57
41
55
38
34
40
37
44
64
41
40
39
40
38
43
38
44
35
46
54
47
41
46
42
44
39
33
34
41
45
39
53
37
52
45
45
46
48
37
30
43
44
48
28
27
39
40
44
48
33
37
43
29
39
41
40
45
45
44
30
38
41
40
47
38
40
39
39
35
28
39
40
36
43
33
37
36
37
48
36
29
45
25
38
36
37
34
41
35
44
38
45
34
44
52
59
35
37
42
32
38
37
30
42
42
45
41
32
35
43
40
37
36
33
34
46
37
40
33
49
28
42
42
47
46
41
35
36
44
36
38
30
43
33
40
30
20
45
37
46
26
32
44
32
38
47
38
41
40
40
30
39
35
31
33
38
32
37
42
28
34
45
28
33
31
32
25
29
40
36
29
51
34
33
38
39
40
28
35
41
41
33
24
24
29
34
45
31
34
24
33
39
30
37
31
22
28
34
33
30
35
38
33
29
29
38
28
43
27
36
27
24
28
31
35
32
36
23
36
30
25
30
34
26
30
35
30
27
30
29
32
25
28
20
26
29
23
31
27
32
38
28
37
43
29
46
33
29
29
31
28
34
31
41
31
31
28
36
27
37
24
20
19
38
24
30
25
29
22
24
24
31
30
26
34
36
34
33
32
26
30
19
27
30
36
21
26
30
33
33
30
32
29
31
27
32
30
31
24
27
36
26
34
29
29
29
25
29
28
19
29
25
30
38
22
25
30
26
24
31
27
34
41
27
22
33
27
27
32
34
24
25
25
22
37
23
25
17
33
22
32
29
20
43
30
28
24
31
20
25
18
26
25
22
32
29
31
21
19
29
35
33
21
21
22
26
25
33
36
25
22
32
30
28
36
23
28
23
24
22
24
17
21
30
27
27
33
35
26
25
17
34
27
25
29
26
33
26
22
28
24
24
22
25
27
22
21
23
32
29
21
22
29
25
25
27
29
25
40
23
30
29
27
20
21
30
25
24
27
26
30
24
37
18
27
19
23
21
24
20
32
28
29
36
24
24
17
26
23
26
31
17
24
24
22
21
18
26
22
13
31
18
38
28
28
21
23
16
19
29
27
28
26
18
19
25
21
28
17
25
22
22
20
21
13
17
24
30
23
25
24
21
17
21
25
20
20
25
22
19
29
29
22
38
24
16
11
24
34
24
24
26
30
19
17
23
12
15
19
36
19
20
19
16
26
16
23
27
17
21
20
16
27
15
11
18
22
15
15
19
23
28
23
18
21
17
22
18
20
16
16
17
23
26
23
24
20
22
19
17
19
22
16
17
18
19
20
22
26
19
16
26
20
19
12
19
19
22
24
18
12
23
16
23
18
18
22
20
19
28
20
20
21
17
19
26
25
15
29
25
30
16
20
17
24
23
22
18
15
22
14
15
18
17
19
19
13
19
22
19
16
23
19
18
17
17
30
24
15
14
19
20
26
13
23
19
15
17
14
19
16
19
11
19
14
14
18
21
19
15
29
17
24
25
22
22
26
18
20
21
16
12
14
18
20
12
17
17
13
14
20
20
10
11
16
14
21
15
18
18
17
17
19
21
15
23
12
14
15
17
12
17
13
18
14
17
23
14
19
17
19
22
17
16
18
14
20
17
14
16
12
15
20
17
18
13
23
14
19
17
14
19
21
18
14
16
12
13
25
18
18
19
17
10
21
24
12
22
14
18
19
17
20
21
15
14
16
18
15
15
6
12
17
14
17
11
17
24
15
28
21
14
29
16
14
26
13
21
16
15
12
13
10
18
20
17
20
14
22
13
19
13
10
19
8
22
13
11
18
23
20
21
12
16
22
17
15
14
16
9
20
10
11
19
13
18
10
11
13
12
14
22
18
13
15
22
13
11
17
13
12
13
21
13
15
18
13
18
13
23
10
18
16
15
17
24
17
14
9
16
16
19
14
10
22
16
17
13
14
13
10
13
15
15
17
11
17
22
14
13
9
19
17
19
15
17
16
16
12
9
9
13
10
14
21
12
12
21
14
21
11
8
9
15
20
18
19
17
16
19
10
12
18
11
19
19
11
10
19
14
13
12
17
13
9
11
6
19
12
11
12
18
21
12
15
21
15
12
16
13
9
17
12
10
15
10
16
15
11
7
13
16
14
13
11
14
15
16
11
15
14
18
14
9
8
6
17
18
15
13
21
14
17
17
10
16
17
12
11
13
12
13
13
11
17
12
12
11
14
5
14
19
12
9
10
13
22
12
17
11
12
14
11
8
10
17
9
15
7
14
12
13
7
15
14
13
8
19
9
14
6
15
8
17
16
10
12
16
14
15
21
12
10
16
13
5
10
7
9
12
13
13
14
9
11
14
12
9
12
12
17
12
14
12
11
14
12
12
9
5
8
10
13
17
11
8
20
12
10
7
12
8
11
10
19
5
9
14
16
11
12
11
9
19
10
15
4
17
9
19
10
11
10
7
10
11
6
7
14
14
17
19
14
10
9
16
10
17
16
14
11
9
8
10
25
13
11
10
11
15
10
15
10
5
19
15
17
12
19
11
4
9
13
22
19
13
20
10
12
9
13
13
15
16
16
7
13
4
13
6
13
9
12
13
15
10
17
9
16
10
7
10
16
7
15
8
11
9
11
7
12
12
2
10
13
10
9
15
15
12
13
9
8
10
11
6
18
9
8
11
12
7
7
6
11
6
11
13
4
5
7
6
14
10
11
12
14
9
16
10
9
8
17
16
6
12
10
5
10
16
13
11
3
12
9
5
7
15
12
18
9
12
14
16
10
14
16
9
10
15
10
8
10
10
5
10
11
10
10
7
14
15
10
10
10
9
5
15
11
12
9
11
5
10
7
4
11
8
14
9
14
8
16
17
3
9
11
10
15
11
13
4
15
7
10
7
10
15
10
11
9
5
10
5
11
9
10
11
10
9
10
10
6
16
14
8
11
10
7
7
14
5
11
6
11
11
9
15
2
4
16
7
14
13
8
12
7
11
5
7
7
8
12
4
9
9
8
11
16
11
6
7
16
5
8
10
8
9
6
12
9
12
8
12
6
14
9
9
6
14
5
12
10
17
8
12
8
4
8
13
8
8
7
9
6
8
10
17
11
12
8
6
13
17
7
7
13
8
10
7
10
7
10
6
9
6
11
10
11
14
6
15
7
8
12
8
4
6
7
9
10
11
10
12
11
15
16
8
6
5
9
11
9
5
11
11
8
5
11
6
8
6
8
13
13
10
9
10
9
10
5
3
6
14
1
6
5
5
8
10
11
12
6
10
15
9
4
15
9
6
5
13
6
3
12
9
6
6
8
9
7
10
7
8
12
7
4
11
11
9
7
9
7
5
4
6
8
8
7
10
8
6
7
4
8
3
4
8
4
8
7
10
7
10
10
7
7
9
14
6
6
15
4
9
11
3
9
5
12
10
12
15
10
8
3
4
8
8
8
6
11
5
10
7
5
7
7
4
4
3
12
11
13
7
6
8
9
7
11
7
9
11
4
8
7
6
10
7
8
4
5
12
8
9
9
8
13
10
10
7
5
10
8
6
9
9
15
10
5
10
9
3
12
7
6
9
15
13
5
8
12
11
6
13
7
10
11
8
11
7
4
8
4
5
6
5
7
4
11
9
7
5
14
6
5
10
8
4
10
8
8
5
8
9
4
9
5
13
11
9
7
4
5
7
5
7
4
9
7
7
7
5
7
12
4
7
6
8
5
7
10
8
4
12
8
10
4
4
11
3
7
11
8
10
10
9
8
4
9
5
5
10
9
6
7
15
6
7
8
6
4
11
5
6
7
7
9
5
8
6
12
11
9
6
9
8
6
7
8
9
4
8
8
11
5
3
9
4
9
8
5
8
7
10
5
6
10
5
10
7
11
5
9
9
8
7
2
8
4
9
9
5
3
7
6
5
6
5
7
8
11
6
6
7
9
8
7
5
7
6
9
6
8
5
4
8
8
1
5
8
10
6
12
7
11
4
7
3
5
9
10
7
9
7
6
8
8
4
3
7
9
6
5
5
8
7
13
6
13
5
3
7
5
1
7
11
10
2
8
3
6
7
9
9
8
5
4
2
8
6
8
7
12
9
8
14
7
3
7
2
7
7
10
7
10
10
8
8
7
6
11
3
6
6
10
9
9
5
10
7
10
10
2
4
12
6
9
5
6
7
6
7
10
4
7
9
5
7
3
3
9
3
7
2
4
7
10
3
7
4
4
8
7
6
7
6
5
6
6
7
6
7
3
6
9
11
3
8
6
7
10
9
7
5
2
7
8
7
8
11
8
3
2
5
8
9
6
10
7
8
4
2
7
9
4
4
10
5
6
2
6
9
4
7
4
3
6
3
7
3
3
8
3
5
5
5
3
6
4
12
8
3
5
3
8
5
4
6
6
2
1
3
6
3
6
5
9
6
5
7
9
3
3
7
4
4
6
4
3
4
7
8
9
6
5
6
5
3
5
3
5
10
5
4
2
1
6
11
10
7
4
7
8
8
4
5
7
7
5
3
11
4
8
13
6
7
6
5
6
3
6
6
7
6
4
8
10
7
6
7
2
1
8
4
6
5
10
2
4
6
5
4
7
2
5
5
4
6
8
4
4
9
14
1
4
2
6
4
7
8
4
7
2
6
7
4
8
4
5
1
1
12
5
7
9
8
8
5
5
4
8
4
5
2
7
4
8
9
3
5
8
4
3
4
4
4
5
4
3
4
3
3
5
3
8
4
7
6
4
7
5
10
9
0
5
6
4
1
7
10
6
8
5
4
7
7
9
6
4
4
4
4
7
3
5
3
2
3
6
8
4
10
7
8
2
4
5
6
5
6
3
1
2
6
6
3
6
2
7
4
4
4
4
9
5
8
5
6
5
4
3
4
5
8
8
4
12
3
5
6
4
6
6
5
4
2
6
7
4
9
5
2
2
5
2
5
4
5
6
3
0
10
11
5
3
5
6
4
5
3
10
5
2
1
4
4
8
5
4
7
5
7
1
3
4
4
4
7
2
7
6
1
8
4
4
4
1
4
4
5
5
3
4
8
4
7
5
5
5
10
4
3
3
2
4
2
3
5
7
3
5
6
6
0
5
5
4
4
2
7
1
5
5
3
4
4
8
4
9
2
6
5
5
4
9
5
6
6
3
7
14
4
6
2
3
8
3
6
6
3
4
5
7
4
7
7
7
10
1
5
3
4
4
2
5
4
2
6
3
4
9
2
8
5
6
6
6
3
6
9
6
7
6
7
3
7
7
2
6
3
10
5
8
3
5
4
6
6
4
3
6
1
5
6
4
2
5
3
4
8
4
4
8
4
5
4
4
8
6
1
9
0
5
3
5
5
1
7
4
5
7
3
4
7
1
2
3
5
4
3
3
2
6
2
1
2
3
5
6
10
4
5
6
5
4
3
5
5
3
3
6
4
3
5
8
4
2
3
2
3
4
7
5
5
3
2
7
3
5
3
3
3
5
7
8
6
5
4
8
9
1
6
7
6
6
1
2
6
2
3
6
5
4
5
3
5
2
3
3
4
6
5
6
3
3
4
0
9
3
0
5
6
5
5
5
4
4
1
1
4
7
4
7
5
5
3
3
3
3
2
6
4
3
10
4
2
2
8
3
4
6
4
3
4
0
7
2
5
4
4
3
1
2
4
4
3
1
4
3
5
4
7
2
4
4
3
3
4
3
1
4
4
7
7
6
5
1
3
4
2
5
4
5
2
2
3
1
0
4
1
1
4
3
4
6
2
4
3
3
7
6
1
3
7
5
4
2
4
5
2
4
2
5
6
3
6
6
4
4
5
4
5
0
3
3
3
3
6
1
4
5
4
3
5
3
4
4
1
6
1
6
2
1
5
6
1
3
3
6
7
4
2
3
3
4
4
5
4
5
8
3
4
4
2
3
3
4
4
2
4
4
2
1
2
3
4
8
3
8
4
3
2
4
1
2
7
1
7
2
5
2
4
3
2
4
5
6
3
2
2
5
5
4
7
7
2
3
3
2
7
6
5
4
4
1
2
3
3
3
7
3
3
2
5
2
3
2
4
6
4
1
0
2
3
6
5
2
2
2
2
3
1
3
2
3
4
6
3
5
3
3
2
4
6
6
4
2
4
7
3
1
2
4
3
3
5
4
7
3
5
6
4
3
1
2
4
4
2
5
6
2
1
3
3
6
4
4
4
7
4
0
3
3
2
4
4
4
2
3
4
5
3
4
3
7
2
1
2
6
4
5
4
1
8
2
5
2
4
2
4
4
5
2
4
1
3
6
6
2
4
4
2
4
2
2
4
3
3
1
4
2
1
3
6
4
2
6
4
2
4
3
3
4
1
4
6
3
2
0
2
4
6
4
1
3
3
2
1
6
3
6
4
3
5
5
4
4
3
2
4
3
1
2
3
4
2
2
1
2
0
4
2
8
2
3
4
2
3
3
4
3
4
2
2
0
2
3
2
3
2
4
1
2
7
3
3
5
3
1
3
7
4
3
0
1
0
6
3
2
0
0
7
5
4
3
3
5
4
5
4
1
3
2
7
7
2
3
2
4
0
4
4
1
5
6
2
1
3
8
5
3
5
6
2
6
3
1
2
0
1
4
4
1
2
5
2
2
5
2
2
4
2
2
1
4
5
3
6
0
4
7
2
1
3
2
3
4
2
3
2
5
1
7
7
0
5
6
4
1
1
5
3
2
4
3
8
6
0
2
1
3
2
4
1
1
0
0
3
4
2
4
4
4
4
5
4
4
4
5
3
6
3
2
2
7
2
6
2
0
3
3
1
5
2
3
3
5
1
3
1
3
2
1
2
5
7
2
5
5
3
3
0
3
5
0
4
2
2
6
2
3
3
1
3
4
2
4
3
2
6
5
4
2
3
1
3
2
1
1
0
0
2
4
2
2
2
3
8
4
1
1
3
3
0
2
4
3
1
1
4
0
1
4
3
0
3
6
3
5
7
1
0
2
3
2
4
3
5
4
4
1
2
5
2
2
2
4
4
3
0
6
2
1
4
2
5
2
2
1
5
2
2
0
4
3
6
3
7
4
2
2
1
2
2
2
2
1
4
0
4
2
0
1
1
2
5
3
1
1
4
1
4
4
3
5
1
5
2
0
3
3
2
3
3
2
1
7
4
2
2
4
5
2
2
1
2
6
7
4
3
3
2
5
4
2
3
5
2
4
3
4
0
3
1
4
1
0
2
1
1
4
4
2
2
2
1
2
5
4
5
4
2
1
1
2
3
0
2
1
3
1
0
0
6
7
5
3
3
1
4
2
1
0
2
1
2
2
5
3
4
3
1
1
4
2
1
2
3
5
1
3
4
0
1
2
5
2
2
5
1
1
3
4
0
2
1
2
2
0
2
2
1
2
0
1
1
4
1
1
2
3
0
0
2
3
3
1
4
0
1
1
1
4
4
1
1
1
4
2
1
4
0
5
2
1
2
3
4
0
5
5
4
3
6
1
3
4
1
3
1
1
3
0
0
2
4
2
3
3
0
3
3
3
0
4
2
7
6
2
3
1
3
3
4
6
3
3
1
7
1
1
1
2
5
2
5
1
3
1
3
0
3
3
3
4
2
1
4
1
1
3
3
6
7
6
0
2
2
5
0
4
4
3
2
1
4
1
1
2
3
4
0
1
3
1
3
2
1
2
2
1
3
6
0
2
4
0
6
0
4
3
5
2
3
0
1
2
0
4
1
4
0
1
3
2
1
5
4
0
0
3
7
3
5
4
1
1
2
5
2
1
2
2
2
4
1
1
2
1
0
3
2
3
3
1
3
1
5
5
1
1
0
1
3
2
1
1
5
2
1
3
6
5
1
1
2
2
7
1
3
3
3
3
6
2
2
2
1
2
3
3
1
2
3
2
3
1
2
2
7
4
1
4
2
3
2
2
0
1
0
3
2
1
2
2
1
1
1
7
2
1
2
1
1
0
2
3
2
4
5
3
0
4
1
1
2
4
3
2
3
1
4
2
4
0
3
1
4
3
4
1
1
2
2
1
1
1
0
2
2
3
2
2
2
1
2
0
0
3
4
2
5
2
1
1
4
4
1
5
1
3
1
1
3
1
1
2
0
1
2
2
5
1
4
2
1
3
4
2
2
3
3
1
2
2
1
0
3
1
2
3
0
3
0
2
1
3
3
1
4
1
2
1
1
2
5
1
3
2
3
0
2
2
1
0
2
2
0
5
1
3
3
3
1
4
2
1
4
1
3
2
2
3
0
1
2
3
4
2
2
4
1
2
3
3
1
4
3
2
2
2
5
2
2
3
2
1
0
0
3
0
2
2
2
2
3
2
1
1
2
3
3
0
2
4
0
1
0
2
2
0
1
1
6
2
3
3
3
1
2
2
2
1
2
2
0
0
3
3
2
1
4
5
1
2
4
3
2
1
2
1
2
2
0
2
1
2
2
3
0
2
4
5
0
4
2
3
4
3
2
0
1
2
2
0
2
3
3
0
1
0
0
4
3
5
3
0
3
3
1
4
1
2
3
6
2
1
2
8
1
2
4
2
2
1
6
2
2
1
2
1
1
3
1
6
1
0
3
0
3
2
3
3
0
1
1
1
3
2
2
2
1
2
1
3
1
2
1
3
2
1
1
2
0
5
3
2
3
3
2
0
1
2
1
2
3
5
1
1
0
3
3
2
2
3
0
4
3
3
1
2
2
3
2
4
3
3
2
0
1
0
2
1
1
2
3
3
2
1
0
3
1
2
2
3
3
4
0
4
2
2
0
2
2
3
3
4
4
2
0
3
2
3
1
1
0
1
4
1
4
1
3
2
4
0
2
1
6
1
3
5
1
2
2
1
5
2
1
1
2
5
4
1
1
1
2
1
1
2
2
2
4
0
2
1
1
3
1
2
3
1
0
1
2
2
2
2
3
1
2
1
0
1
3
3
1
1
1
0
3
2
2
2
2
4
4
1
0
0
3
3
0
0
4
1
1
3
0
1
0
3
2
2
1
0
1
1
2
3
1
6
4
0
1
0
2
2
2
1
2
2
1
0
5
5
2
5
3
0
0
1
2
3
1
1
3
2
3
1
0
3
2
1
1
3
2
3
2
1
2
2
2
0
1
4
1
1
1
2
3
2
0
3
1
3
4
1
4
3
2
3
2
5
2
1
0
3
1
2
4
3
1
2
3
1
0
2
5
2
1
0
1
0
1
0
2
1
3
2
3
3
1
1
2
3
3
1
4
3
2
2
1
1
2
3
1
3
1
5
2
2
1
1
2
1
1
1
2
1
1
0
3
2
5
0
1
0
2
1
1
0
2
3
0
2
0
2
3
3
2
3
4
2
3
3
3
1
1
0
0
2
2
2
2
2
4
0
1
2
1
1
4
1
1
3
2
2
3
2
1
0
3
2
1
0
0
1
4
3
2
4
2
2
5
4
1
1
0
0
2
0
2
2
1
2
1
2
4
1
2
0
1
2
1
2
2
2
1
3
2
8
3
3
3
2
1
0
1
3
0
2
0
2
4
5
0
2
4
1
1
4
0
0
3
2
7
0
0
2
4
3
0
1
1
0
1
4
2
3
2
1
1
2
1
4
3
0
1
0
4
1
2
1
1
0
1
2
2
2
3
1
0
1
1
0
2
0
2
1
1
2
2
2
1
2
3
2
1
1
0
0
0
0
2
1
1
3
0
4
4
1
4
1
0
1
1
0
5
2
4
0
1
2
1
4
0
1
1
1
0
1
1
0
0
2
1
2
0
0
1
2
0
3
0
2
3
2
3
3
2
2
2
1
1
0
0
0
2
1
1
1
2
2
0
0
3
0
0
1
2
2
1
2
1
2
0
0
0
2
0
4
2
0
0
3
0
2
0
0
0
0
1
1
0
3
0
1
0
2
1
1
3
1
0
0
1
2
1
0
0
0
1
1
1
0
2
1
2
3
0
1
0
2
1
1
0
2
4
0
2
1
2
1
1
2
3
0
1
2
3
3
2
1
1
2
1
1
0
2
1
1
1
1
0
1
1
1
2
3
3
1
3
2
4
1
1
1
1
0
1
1
3
2
2
0
0
0
1
0
1
1
0
1
1
5
0
2
2
0
1
2
1
2
0
2
3
0
1
2
0
1
3
3
1
4
1
1
2
2
2
0
2
0
1
1
1
1
4
0
2
2
0
1
0
1
0
1
1
1
0
2
3
2
5
1
2
1
4
0
3
1
2
0
3
2
1
1
4
1
3
0
0
1
5
1
0
2
0
1
1
2
2
1
1
3
1
0
0
4
2
1
4
0
2
0
4
1
0
1
2
0
2
2
0
1
3
5
1
1
2
1
1
2
1
1
1
2
1
2
0
3
2
1
1
0
2
2
1
2
2
2
1
1
1
0
3
0
4
1
2
2
5
1
0
0
2
2
1
0
1
3
1
2
1
2
3
4
1
0
2
1
1
4
1
2
0
3
1
4
1
1
0
2
2
1
2
1
0
1
1
2
1
1
2
3
2
1
2
0
2
0
0
2
1
1
1
1
0
0
1
0
4
4
0
0
0
0
0
1
4
0
4
1
1
0
2
1
1
2
3
0
3
1
1
0
1
1
2
3
0
3
2
2
2
0
2
1
0
0
1
1
3
0
2
2
0
2
3
1
0
2
2
0
3
2
3
1
0
1
2
2
1
4
1
2
1
0
2
3
1
3
0
1
3
0
4
1
2
5
0
1
4
3
1
2
1
2
0
0
2
0
3
3
1
1
1
1
4
1
1
0
1
3
1
2
0
1
3
1
2
1
2
2
0
1
0
0
2
0
2
1
3
1
2
2
0
1
1
1
1
0
0
2
1
2
1
1
2
0
2
4
1
1
1
2
1
1
1
0
4
1
0
1
1
2
2
2
3
1
1
4
0
2
1
1
1
2
1
2
2
0
0
1
5
1
0
2
2
2
2
1
0
1
3
3
2
3
0
2
1
2
2
1
1
0
1
2
1
3
1
0
2
3
0
0
2
1
2
1
2
1
1
0
1
2
1
1
1
3
1
0
2
0
1
2
2
3
3
0
0
1
3
1
1
4
1
2
3
2
0
1
1
1
0
0
0
1
1
0
3
0
0
2
1
4
0
1
2
1
1
1
2
2
1
1
3
1
0
2
1
2
1
0
1
2
2
0
2
1
0
3
0
2
0
3
2
3
2
0
1
0
1
1
0
2
1
1
0
1
1
2
0
2
4
0
1
1
1
2
1
5
1
1
3
1
3
0
2
1
0
1
1
1
0
4
1
0
2
2
1
1
2
4
1
2
0
0
3
0
3
1
1
1
0
0
0
0
0
2
1
1
1
1
1
1
0
0
1
1
2
2
1
2
3
4
0
1
1
2
1
1
1
1
1
3
2
2
1
2
4
1
1
0
1
1
2
1
2
4
1
1
1
0
0
4
2
4
0
1
1
1
2
0
0
0
2
3
2
0
0
2
2
1
1
2
0
1
0
1
1
0
0
4
1
1
0
0
1
2
1
1
2
0
2
0
1
1
1
4
0
2
1
1
2
1
0
1
1
1
1
1
0
0
0
2
3
2
2
2
1
0
1
1
1
1
2
0
4
1
0
2
1
3
2
2
2
0
2
0
0
3
0
0
1
0
1
3
1
0
0
0
1
2
3
1
1
0
1
1
1
2
1
2
2
1
3
3
1
0
1
2
0
2
0
1
0
0
1
0
1
2
2
0
2
2
1
3
0
1
1
0
2
0
1
0
1
2
1
0
0
1
0
2
2
1
2
0
0
0
2
1
0
3
0
1
3
1
1
1
1
2
2
0
1
2
1
1
0
0
1
1
1
0
0
3
3
2
1
2
2
0
0
0
0
0
2
0
1
1
0
1
1
0
1
1
1
1
2
2
0
1
0
3
4
0
2
1
0
1
3
0
3
0
0
1
1
3
1
1
1
5
0
0
2
1
3
1
1
2
1
2
0
1
1
1
2
0
1
0
1
1
2
0
0
1
1
2
0
3
0
2
1
1
1
0
2
1
4
2
0
1
0
0
0
0
1
2
0
2
0
1
3
0
0
0
1
2
2
1
2
2
0
4
1
1
1
1
3
0
0
0
2
1
0
1
0
0
1
3
3
0
0
0
1
0
2
1
1
2
0
1
0
3
1
0
3
2
0
2
2
1
0
1
1
0
1
1
0
1
2
0
0
1
2
2
1
0
2
3
1
2
2
1
0
1
1
3
0
2
3
2
1
2
0
0
2
1
1
1
1
2
1
0
0
1
4
1
2
0
0
1
2
2
0
2
3
1
1
4
0
0
0
0
2
1
2
0
3
3
0
0
1
0
0
1
1
0
0
1
2
2
1
0
1
1
1
1
2
1
0
0
1
1
0
1
2
0
0
0
0
1
0
1
2
1
1
0
2
1
0
1
0
0
1
2
1
2
0
1
1
1
1
0
0
2
2
2
1
1
1
1
2
3
1
1
4
0
2
1
1
1
0
0
1
0
3
1
0
3
0
0
0
2
1
0
0
0
1
1
1
2
0
2
1
1
1
0
2
0
0
0
1
0
1
2
0
2
1
0
0
1
1
0
0
2
1
1
0
0
0
4
2
3
0
3
1
1
2
2
2
1
1
0
0
1
3
0
1
1
1
2
2
1
0
2
3
2
0
2
2
2
1
1
2
1
2
2
0
0
2
1
2
1
2
1
0
4
1
0
0
0
1
0
0
1
3
1
2
1
1
0
0
0
0
1
4
3
0
1
2
1
0
1
1
2
0
1
1
0
1
3
0
1
1
0
0
3
1
0
3
2
2
1
1
1
3
0
0
2
0
0
1
4
1
2
1
2
2
1
1
0
1
2
0
1
1
0
1
1
4
1
0
0
2
1
0
0
0
1
1
0
1
0
2
0
2
3
0
2
3
1
1
1
1
1
3
2
1
3
2
0
4
1
0
0
0
1
3
3
0
2
2
1
0
3
1
1
0
3
2
0
0
1
1
1
2
2
1
0
3
1
1
2
0
0
0
0
1
1
1
2
1
3
2
1
2
0
2
2
2
1
2
2
1
0
0
0
2
0
0
1
2
0
0
0
0
0
1
3
0
0
1
0
0
0
0
2
2
2
0
0
2
2
0
3
1
1
1
0
3
2
1
2
0
0
2
0
0
0
1
1
1
1
1
5
1
1
1
0
1
1
0
2
1
0
2
0
2
0
2
0
1
0
2
3
0
0
1
1
1
1
3
0
0
1
1
1
2
3
0
2
0
0
0
0
1
1
0
1
2
1
0
0
0
3
0
1
2
0
1
0
1
1
1
3
1
0
2
1
0
1
1
1
1
0
0
0
0
0
1
2
1
1
1
0
1
1
1
2
2
0
0
3
0
1
1
2
0
2
0
3
1
1
0
1
1
1
1
2
3
0
1
0
3
1
2
0
0
1
1
0
0
1
1
0
2
0
1
2
1
1
0
0
1
0
1
2
1
2
2
2
0
1
0
1
0
0
0
0
1
0
0
2
2
1
2
1
1
1
2
1
3
0
0
0
1
1
1
0
2
0
2
1
3
1
0
1
0
0
1
0
1
0
0
0
0
0
0
1
1
0
1
1
1
2
1
1
0
0
2
1
0
1
0
1
0
0
0
0
2
0
0
0
0
0
3
2
2
3
1
2
1
2
0
0
0
1
0
3
0
1
2
0
3
0
1
2
3
0
0
2
2
0
1
0
1
2
0
3
0
0
0
1
1
2
1
3
1
1
0
1
1
0
0
1
0
2
2
1
2
0
1
1
0
3
0
1
0
1
0
2
1
3
1
0
2
1
0
2
2
2
1
1
0
0
2
2
1
0
1
0
2
1
1
0
1
3
0
0
1
0
0
0
0
1
2
0
0
1
0
2
0
0
3
2
2
1
2
2
0
0
1
1
2
1
0
1
0
0
0
0
0
1
0
1
1
0
0
0
1
1
1
0
2
1
3
2
0
0
0
0
2
1
1
2
1
0
1
1
1
0
1
1
0
2
1
1
1
1
0
0
1
1
0
0
0
1
4
2
1
1
0
1
0
2
1
2
1
0
0
2
2
0
0
0
0
1
0
0
1
0
1
1
2
1
2
1
0
3
0
0
0
1
0
2
1
0
0
0
1
1
0
0
1
1
2
2
0
1
0
2
1
0
0
1
1
1
0
1
0
2
1
1
0
0
1
0
2
1
0
1
1
0
1
1
0
1
1
3
0
2
0
0
0
0
1
1
1
2
1
0
1
1
2
0
1
0
1
1
0
1
1
0
0
1
1
1
0
0
1
2
0
1
0
1
3
0
2
1
3
1
0
1
0
0
2
1
0
1
0
0
1
0
0
1
1
0
3
0
1
0
0
3
2
1
1
1
1
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
4
1
2
0
0
0
1
2
4
0
0
0
0
1
1
0
1
0
1
2
2
0
1
1
1
0
1
0
1
1
2
1
2
0
3
1
0
0
0
1
1
2
1
0
2
2
2
0
2
3
1
0
2
1
0
2
1
1
0
0
1
3
1
1
3
0
1
1
2
1
0
0
2
1
0
0
2
1
0
1
0
2
0
1
1
0
0
0
1
0
0
3
0
0
0
3
1
0
2
1
1
0
2
1
3
0
0
0
2
0
0
2
2
1
1
0
1
1
2
1
1
1
0
2
1
3
0
1
0
1
2
0
0
1
0
0
2
1
1
0
0
1
0
1
0
0
1
2
1
0
2
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
1
1
0
1
1
1
0
1
0
0
1
1
0
3
0
1
0
1
1
0
0
2
0
0
0
0
0
0
2
2
0
0
2
0
0
0
1
2
1
0
1
1
0
0
1
1
2
1
1
2
0
0
1
0
2
1
0
0
0
0
1
0
3
0
0
1
0
0
1
1
2
2
0
1
0
2
0
0
0
0
0
1
3
1
1
0
0
1
2
1
1
2
0
1
2
0
1
0
3
1
0
2
0
0
0
2
0
0
1
2
1
0
1
1
0
0
1
1
2
2
0
1
1
1
0
1
0
1
1
1
0
0
0
1
1
0
0
1
0
0
0
0
1
0
0
3
2
2
4
1
1
0
1
1
0
3
0
0
0
0
2
0
1
0
2
0
1
1
3
0
0
2
0
0
1
0
1
2
0
1
2
0
0
0
0
0
0
0
1
0
2
0
1
1
0
0
0
2
0
2
1
0
0
0
1
0
1
0
0
2
0
1
0
0
2
0
1
0
1
0
0
0
0
1
3
0
0
2
2
1
0
2
0
0
1
2
0
0
0
0
1
1
1
0
0
1
0
1
0
0
3
1
0
0
1
0
1
1
2
0
1
0
1
0
0
0
0
0
0
2
1
2
1
2
0
0
0
0
0
0
0
2
1
0
1
1
0
2
1
1
2
1
2
0
0
1
0
1
0
1
1
2
1
0
2
0
0
3
1
0
1
0
0
0
2
0
0
1
2
1
0
1
0
2
0
0
0
0
1
0
1
0
1
1
0
0
0
2
3
0
1
1
1
0
0
0
0
0
2
0
2
0
1
0
0
2
0
2
2
0
3
0
0
0
0
0
0
1
1
0
3
0
0
1
2
1
0
1
0
0
0
1
1
1
0
0
1
0
1
1
1
3
1
0
0
0
0
0
0
1
2
1
0
1
0
0
0
2
0
0
3
1
1
0
1
0
0
1
0
1
1
2
1
2
1
0
1
0
0
0
0
0
3
0
0
0
0
0
0
0
1
0
1
0
2
1
0
0
0
1
1
1
1
0
0
1
1
0
0
1
0
5
0
0
0
0
0
1
1
0
1
1
1
1
0
0
2
1
3
2
0
3
3
0
0
0
2
0
2
0
2
1
0
1
1
1
0
1
0
0
0
2
1
0
0
1
0
2
0
1
1
0
0
1
0
1
0
1
0
2
0
0
0
3
0
0
1
0
0
0
0
0
0
1
1
0
1
1
1
1
1
2
0
2
1
2
4
1
1
1
1
0
1
0
3
0
1
0
2
0
0
1
0
1
1
0
1
0
0
0
0
2
2
1
2
1
2
0
1
1
0
1
1
1
2
0
0
0
1
0
1
0
1
0
2
0
1
2
0
0
0
0
1
1
0
0
3
1
0
0
1
0
0
1
0
0
0
0
1
0
2
1
0
0
0
0
1
0
2
0
0
1
1
1
0
0
0
0
0
0
1
0
0
1
0
1
2
0
1
1
1
1
1
2
0
0
0
0
0
0
0
2
0
0
0
0
0
3
1
1
0
2
3
0
1
0
2
1
2
0
0
0
1
0
0
3
0
0
0
0
1
1
1
2
0
0
1
2
1
0
0
0
0
0
1
0
0
1
1
1
0
1
0
2
0
2
1
0
3
0
1
1
1
2
0
3
0
0
0
1
0
1
1
0
1
1
1
1
2
1
1
1
1
1
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
2
0
0
3
0
0
1
0
0
0
0
0
0
0
1
1
0
2
2
0
0
0
0
3
1
1
0
0
1
0
3
5
0
1
1
0
0
1
0
0
0
1
0
1
0
0
0
1
1
2
0
1
1
0
0
1
0
1
0
1
2
2
0
1
0
1
1
0
0
0
3
1
1
1
1
2
0
0
0
0
0
0
0
2
1
0
1
2
1
1
1
0
0
1
0
2
0
0
2
1
0
0
1
1
0
1
0
2
2
5
1
0
0
0
0
0
0
0
2
1
0
1
1
0
1
0
3
0
0
1
1
1
0
0
3
0
0
0
0
0
1
0
0
0
2
1
0
1
0
1
0
1
1
0
0
1
0
0
0
0
0
2
1
1
2
1
0
1
1
0
0
0
0
1
2
0
1
0
1
2
0
0
0
0
1
0
0
1
2
0
0
1
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
1
1
2
0
1
2
0
0
0
2
2
0
1
1
0
0
0
0
3
2
2
1
0
0
0
0
1
2
0
0
0
0
1
1
0
1
1
1
1
0
1
0
3
0
0
0
1
0
1
0
1
1
1
0
1
0
0
1
0
1
2
0
0
0
0
3
0
0
0
0
2
1
3
0
1
1
0
1
2
0
1
0
0
1
0
0
1
0
3
2
1
0
0
0
1
1
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
0
1
0
1
0
2
1
0
2
0
1
0
0
0
1
0
1
0
0
1
3
0
1
1
0
0
0
1
1
1
0
0
0
0
0
1
2
1
0
1
1
0
0
0
2
0
0
1
0
1
1
0
0
0
0
2
1
1
0
0
0
0
1
0
0
1
0
1
0
1
1
0
0
0
2
1
0
0
0
0
0
1
0
1
0
0
0
0
1
2
0
0
0
0
0
0
1
0
1
2
0
1
0
0
0
0
1
4
1
1
0
0
0
0
1
0
0
1
0
0
1
0
1
2
1
0
0
0
0
0
1
1
0
1
0
0
1
1
0
0
1
0
1
1
0
0
0
0
0
0
0
0
1
2
1
1
0
1
0
2
0
1
1
0
0
0
0
1
2
0
1
0
0
0
1
0
0
1
0
1
1
2
2
0
0
1
1
1
2
0
0
0
1
1
0
0
1
1
1
1
1
1
0
1
1
5
0
1
0
1
1
0
0
0
0
0
0
0
1
0
2
1
0
1
0
0
0
0
0
0
2
0
0
1
1
0
0
0
1
2
1
1
2
0
0
0
0
2
0
0
0
0
0
0
0
1
1
1
2
0
1
1
1
0
2
0
1
1
0
1
0
1
1
1
0
0
0
1
0
1
0
0
2
1
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
1
1
1
1
0
0
1
0
0
2
0
1
3
0
1
1
3
0
2
2
0
2
0
0
0
0
1
1
0
1
1
0
0
0
0
2
0
0
0
1
1
1
0
1
1
0
0
2
0
1
0
0
1
1
1
0
0
0
0
1
1
2
0
1
0
0
0
0
0
0
1
0
2
0
0
0
0
1
0
1
0
3
1
0
2
0
0
1
2
0
0
0
1
0
0
1
1
1
0
0
1
0
0
0
1
1
0
1
0
0
0
2
2
0
2
0
1
1
2
0
2
1
0
0
0
0
1
0
1
0
0
0
0
0
2
0
2
0
0
0
1
0
1
0
2
0
0
1
2
0
0
1
3
0
2
2
0
0
1
1
0
1
1
0
1
0
0
0
1
0
0
0
0
0
1
0
0
1
1
0
1
1
2
0
0
0
1
0
0
1
1
1
0
0
1
1
1
0
0
0
0
0
0
0
1
0
1
0
0
1
0
1
2
2
1
0
0
0
2
1
2
1
1
1
1
1
2
0
0
4
0
1
2
0
1
0
0
0
1
0
1
1
0
1
1
2
0
1
0
0
1
1
1
0
0
1
0
1
0
0
3
0
0
2
0
0
1
0
0
1
1
2
0
1
0
0
0
2
1
2
0
2
1
1
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
2
2
0
0
1
0
2
0
1
1
1
0
1
0
1
0
1
2
1
1
2
0
0
1
0
0
1
1
0
1
0
2
1
1
0
2
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
2
1
1
0
2
0
0
1
0
0
1
1
1
2
0
0
2
4
0
0
0
0
0
0
0
1
0
0
1
0
0
1
3
0
1
0
0
2
0
1
0
0
0
2
0
0
2
0
1
0
0
1
1
0
0
2
0
0
1
1
1
0
1
1
0
0
1
0
0
1
0
0
0
1
1
0
1
1
1
0
1
1
0
0
1
1
1
0
1
1
1
0
1
1
0
1
1
0
1
1
0
0
1
2
2
1
0
0
0
0
2
1
0
0
0
0
0
2
1
1
2
0
0
0
0
1
0
2
0
1
0
2
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
2
1
0
0
0
1
2
0
0
2
1
0
2
1
0
2
2
0
1
1
1
1
1
1
1
0
1
1
0
0
0
0
1
0
0
1
1
0
0
2
1
0
1
2
0
1
1
1
1
0
1
0
0
3
2
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
3
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
1
0
0
0
2
0
0
0
2
0
0
2
0
0
0
0
0
0
3
0
1
2
0
1
0
1
0
1
0
0
3
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
2
4
0
1
0
0
1
0
0
1
1
0
0
0
2
0
0
0
0
1
0
0
0
1
0
1
0
2
1
0
0
2
3
0
0
1
0
0
2
0
0
1
1
1
0
0
0
0
0
1
0
1
0
1
0
2
0
0
1
1
1
0
0
2
1
0
1
0
1
1
1
0
0
0
1
0
0
0
0
1
0
2
2
0
1
0
0
0
0
1
1
1
1
1
1
0
0
0
0
2
1
1
0
0
1
0
0
0
0
0
1
0
2
0
0
0
0
2
1
0
2
0
0
0
0
0
1
0
0
0
2
1
0
2
1
0
0
1
0
0
0
0
1
1
1
0
0
1
0
0
2
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
2
1
0
0
0
1
0
1
1
1
0
0
1
1
0
2
1
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
2
0
0
1
0
0
1
0
0
1
1
1
1
0
0
1
1
0
0
1
0
1
0
1
0
0
0
0
0
0
0
2
0
0
1
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
2
0
0
1
0
1
0
0
0
1
0
1
1
0
0
2
1
0
0
1
2
0
0
0
2
0
1
0
1
0
0
0
0
0
1
3
1
1
2
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
2
0
0
2
1
0
0
1
2
0
0
0
0
0
0
1
0
1
1
1
0
0
0
1
1
1
1
0
0
2
1
0
0
0
2
1
0
2
0
0
0
1
0
0
0
1
0
1
1
0
0
0
0
0
0
2
0
0
0
0
0
0
2
1
1
0
0
0
0
0
1
1
1
1
0
1
1
1
0
0
0
1
0
0
2
0
0
0
0
1
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
0
1
0
0
0
1
2
0
0
1
0
0
0
0
0
0
1
1
0
1
0
0
0
0
1
1
0
3
0
2
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
2
1
1
0
0
0
0
1
1
1
0
0
2
0
2
0
0
1
0
0
0
0
0
1
0
1
2
0
0
1
0
1
0
0
0
0
0
0
0
3
0
1
1
0
1
0
1
0
1
1
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
2
1
0
0
0
0
0
1
0
0
0
0
1
2
0
1
0
2
0
0
0
0
0
0
0
2
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
2
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
1
1
0
1
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
2
0
0
1
0
1
1
0
1
0
1
2
0
1
2
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
1
0
0
1
0
2
0
0
0
0
0
0
2
0
0
0
1
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
2
0
0
0
0
0
1
1
0
1
0
0
1
0
0
1
1
1
0
0
1
0
1
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
2
0
1
1
0
0
0
0
1
0
1
1
0
0
0
0
2
0
1
0
1
0
1
0
0
1
1
0
1
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
1
1
2
0
1
1
2
1
0
0
0
0
0
0
1
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
1
1
2
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
1
2
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
1
0
1
0
0
0
2
0
1
0
0
0
2
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
2
0
0
0
0
1
0
0
1
1
1
0
0
0
0
0
1
0
1
0
0
1
0
0
1
3
0
1
0
0
2
0
0
0
0
0
0
0
2
0
1
2
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
1
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
2
0
1
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
1
2
0
0
1
1
0
1
1
0
0
0
2
0
0
0
0
0
1
0
0
2
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
1
1
1
0
0
0
0
1
0
1
1
0
2
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
1
0
0
0
1
1
1
0
1
0
2
0
2
1
2
2
1
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
2
1
0
2
0
0
1
0
0
2
0
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
2
2
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
2
0
0
0
0
0
2
1
1
0
1
0
1
0
0
1
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
1
0
2
0
1
0
1
0
0
0
1
0
1
2
0
2
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
2
0
1
0
0
0
0
0
1
1
1
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
2
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
0
0
1
0
0
1
0
2
1
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
2
1
0
1
0
0
1
0
2
1
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
1
0
1
0
0
2
0
0
1
0
1
0
0
0
0
0
0
0
1
1
1
1
0
1
0
0
1
0
1
0
1
0
1
0
0
1
0
1
0
0
1
1
0
2
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
1
1
0
1
1
1
1
0
1
1
0
1
0
2
0
0
0
0
1
0
1
0
2
1
0
0
0
0
1
0
1
2
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
2
0
0
1
1
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
0
0
1
0
0
0
0
1
2
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
2
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
1
0
1
1
0
0
2
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
1
2
1
0
0
0
0
0
1
1
0
0
2
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
2
0
2
0
0
1
0
0
0
0
2
1
0
0
0
0
0
0
0
0
1
0
1
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
1
0
0
1
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
1
1
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
1
0
3
0
2
1
1
0
1
1
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
2
0
1
1
1
0
1
1
1
0
0
0
0
0
0
1
0
0
2
3
0
1
0
0
0
0
0
2
0
1
1
0
0
0
0
0
0
1
0
0
0
1
2
0
1
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
2
0
0
1
0
2
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
2
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
1
0
2
1
1
0
0
2
0
1
0
0
1
0
0
0
0
0
0
1
0
1
0
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
1
2
0
0
0
1
1
0
0
2
1
0
1
0
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
1
0
0
1
0
2
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
1
2
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
1
0
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
0
1
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
2
0
0
0
0
1
0
0
0
1
0
0
0
2
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
3
1
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
1
0
1
1
0
0
2
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
2
0
0
1
0
0
0
0
1
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
2
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
2
0
0
0
1
2
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
1
1
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
1
0
1
2
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
2
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
3
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
0
2
1
1
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
2
1
1
0
0
1
1
0
0
0
0
0
0
1
0
1
0
1
2
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
2
0
0
0
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
1
0
2
1
1
0
0
0
1
2
0
0
0
0
0
0
0
1
0
1
1
2
1
0
1
0
1
0
0
0
0
0
0
0
1
0
0
1
2
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
2
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
2
0
0
1
0
1
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
2
0
0
0
1
0
1
0
0
0
0
1
1
0
2
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
2
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
0
1
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
1
1
1
0
1
0
0
1
0
1
2
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
3
2
0
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
1
0
2
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
2
0
1
1
1
0
1
0
2
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
3
0
1
0
0
0
0
0
1
0
1
1
0
1
0
0
0
1
0
0
0
1
0
1
0
0
2
0
0
0
0
0
0
0
0
1
0
2
0
0
0
1
0
1
0
0
0
0
0
0
0
0
2
1
0
1
0
1
1
0
0
0
0
1
0
1
0
1
1
0
2
0
3
0
0
0
1
0
1
1
0
1
0
1
3
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
1
1
1
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
3
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
2
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
2
1
1
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
0
0
0
0
0
2
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
2
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
2
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
0
1
1
1
0
1
0
2
1
0
0
0
1
1
0
0
2
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
1
0
0
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
2
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
2
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
2
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
2
0
1
0
0
0
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
3
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
1
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
1
0
1
0
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
1
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
2
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
1
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
2
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
1
1
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
2
0
0
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
2
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
2
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
1
0
2
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
2
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
1
0
0
2
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
2
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
2
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
0
2
1
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
