0
0
1
2
2
2
2
2
3
4
4
5
6
7
7
8
8
8
8
8
8
8
8
9
10
11
11
12
12
13
14
14
15
15
15
16
16
17
18
18
18
18
18
20
22
22
23
26
27
30
34
37
39
42
45
49
49
52
55
60
66
72
77
80
88
96
99
116
133
148
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
170
171
172
172
172
172
172
172
172
172
173
173
173
173
173
173
173
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
175
176
176
176
176
176
176
176
177
178
178
178
178
178
178
179
179
179
179
179
179
179
179
179
179
179
179
180
180
180
181
181
181
182
182
182
182
182
183
184
184
184
184
184
184
184
184
184
184
184
185
186
186
187
187
188
188
189
189
189
189
189
189
189
189
189
189
189
189
189
189
189
189
189
190
191
191
192
193
194
194
195
195
196
197
197
198
199
199
199
200
201
201
202
203
203
203
204
205
206
207
208
208
209
210
210
210
211
211
212
213
213
213
213
214
215
216
216
216
216
216
216
216
216
216
216
217
218
219
220
221
222
222
223
224
225
226
227
228
229
229
230
231
232
233
233
233
233
233
234
235
236
237
237
237
237
237
239
239
239
239
239
239
239
239
239
239
242
242
243
245
250
250
250
250
255
255
256
257
258
258
258
259
259
259
259
261
263
263
268
270
270
273
276
277
277
282
287
287
288
289
289
290
293
296
299
302
303
304
307
307
310
313
316
316
317
318
320
320
323
326
329
334
339
339
339
344
349
354
359
363
365
370
375
376
377
382
382
385
390
391
392
393
394
398
402
405
408
408
409
412
415
419
423
427
429
434
439
443
447
456
468
480
480
486
492
492
492
494
494
505
516
527
534
546
558
570
582
594
606
618
618
626
633
643
643
643
643
643
650
662
674
684
706
721
743
763
780
792
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
812
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
814
814
814
814
814
814
814
814
814
814
814
814
814
814
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
815
816
817
817
817
817
817
817
817
817
817
818
819
819
819
819
819
819
819
819
819
820
820
820
820
820
820
821
822
822
822
822
822
822
823
824
824
824
824
824
824
824
825
825
825
825
825
826
827
827
827
827
828
829
830
830
830
830
830
830
830
831
832
832
832
832
832
832
833
834
834
835
836
836
836
837
837
838
839
840
840
841
841
841
841
841
841
841
841
842
842
842
842
843
843
843
843
843
844
844
844
844
845
846
846
846
846
847
848
849
849
849
849
849
849
850
851
852
852
852
852
852
852
852
852
852
852
852
853
854
855
855
855
855
855
855
856
857
858
858
858
858
858
859
860
860
860
861
862
862
862
863
864
865
865
865
865
865
865
865
865
865
865
865
865
865
865
865
865
865
866
867
868
869
870
871
871
871
872
872
873
873
873
873
873
873
874
875
876
877
878
879
879
880
881
882
882
883
883
884
885
885
885
886
886
886
886
886
886
886
886
886
886
887
888
889
889
890
891
891
892
893
894
895
896
897
898
898
898
898
898
898
899
900
901
902
903
904
904
905
906
906
907
908
909
910
911
911
911
911
911
911
911
912
913
914
914
915
916
916
916
916
916
916
917
918
918
918
919
920
920
920
920
920
920
921
922
922
922
922
922
922
922
923
924
924
925
926
927
927
927
927
927
927
928
929
929
929
929
929
929
929
929
930
931
931
932
933
934
934
934
934
934
935
936
936
936
936
936
936
936
936
936
936
936
936
938
938
938
938
938
938
940
940
945
950
950
951
956
961
961
961
961
961
961
961
963
967
972
972
972
972
973
975
975
977
977
979
982
982
984
984
986
987
987
987
987
989
989
989
989
992
997
997
1000
1003
1003
1006
1010
1014
1016
1019
1022
1026
1029
1033
1037
1042
1047
1047
1047
1047
1047
1047
1047
1048
1052
1056
1061
1066
1071
1071
1071
1071
1071
1076
1081
1086
1091
1091
1091
1091
1091
1096
1100
1104
1106
1111
1116
1119
1124
1129
1134
1139
1139
1143
1143
1143
1143
1143
1148
1153
1158
1163
1166
1171
1176
1181
1184
1184
1196
1208
1208
1220
1232
1244
1252
1262
1274
1286
1298
1298
1310
1322
1332
1344
1344
1356
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1366
1367
1368
1368
1368
1368
1368
1368
1368
1368
1369
1370
1370
1370
1370
1370
1370
1370
1370
1370
1371
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1372
1373
1374
1374
1374
1375
1376
1376
1376
1377
1378
1379
1379
1379
1379
1380
1381
1381
1381
1382
1383
1383
1383
1383
1384
1385
1385
1385
1385
1386
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1387
1388
1389
1390
1390
1390
1390
1390
1390
1390
1390
1390
1391
1391
1391
1391
1391
1391
1391
1391
1392
1392
1392
1393
1393
1394
1394
1394
1394
1398
1398
1398
1398
1403
1403
1408
1412
1412
1416
1421
1426
1431
1431
1436
1436
1441
1446
1451
1451
1451
1452
1453
1454
1455
