35
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
35
37
43
45
39
39
39
39
39
39
38
37
37
36
36
36
36
37
37
37
36
35
35
35
36
36
36
37
37
37
37
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
36
36
36
36
36
36
36
36
37
37
37
37
37
37
38
38
38
38
37
37
36
36
37
36
36
35
34
34
34
33
33
34
34
34
34
36
37
37
37
33
35
36
36
36
36
36
35
35
38
38
38
35
34
36
36
35
36
37
37
37
37
38
38
38
38
38
39
39
39
39
39
39
38
38
38
38
38
38
39
39
39
40
40
41
42
42
43
43
44
45
45
45
45
45
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
47
48
48
49
49
50
51
53
54
56
57
58
60
62
63
64
64
65
66
67
69
70
71
72
72
71
71
71
71
71
71
70
70
70
70
70
70
70
70
73
74
74
75
75
76
76
76
75
75
75
75
75
76
76
77
77
77
76
73
71
71
71
71
71
71
71
71
71
72
72
75
76
76
77
77
78
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
78
78
78
78
78
78
78
78
78
78
78
78
77
77
75
75
74
73
71
69
67
66
66
66
66
66
66
66
66
66
66
66
67
67
67
68
69
69
69
69
69
70
71
71
72
72
72
72
72
72
72
72
73
73
74
75
75
76
76
76
77
77
77
77
77
77
77
77
77
77
77
77
78
78
79
79
79
78
78
78
78
78
78
79
79
79
79
79
79
80
80
80
80
80
80
79
79
79
79
79
79
80
81
81
81
81
82
82
82
82
83
83
83
83
83
83
82
82
81
81
81
82
82
83
83
83
83
82
82
82
82
82
82
82
82
82
81
81
81
81
81
81
81
81
81
81
80
80
80
79
79
79
79
80
80
80
80
80
80
80
79
78
77
77
77
77
77
77
77
77
78
78
78
78
78
77
75
74
74
73
73
73
73
72
72
72
72
72
72
72
72
72
72
72
72
72
72
71
71
72
73
74
74
74
74
74
74
74
73
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
72
72
72
72
71
70
70
70
70
70
70
70
70
70
71
72
72
72
74
74
74
73
73
73
74
75
75
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
74
74
74
74
74
74
74
74
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
76
76
77
80
80
79
79
79
79
79
79
79
79
79
79
79
79
82
82
83
83
84
84
84
84
84
84
84
84
84
84
84
84
85
85
85
85
85
85
85
85
85
85
85
86
86
86
86
86
86
87
87
87
87
87
87
87
88
88
88
88
90
90
90
91
91
91
91
91
91
91
91
92
94
94
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
96
96
96
97
97
98
98
98
98
98
98
98
98
98
98
98
98
99
99
99
99
99
100
100
100
101
101
101
102
103
104
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
99
99
98
97
97
96
96
96
96
96
96
96
96
96
96
96
96
94
94
94
94
94
94
94
94
94
94
92
92
92
92
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
92
92
92
92
92
91
91
91
91
91
91
93
93
93
94
94
95
95
96
96
96
96
96
96
85
85
77
76
73
72
70
69
69
67
66
66
65
65
65
65
65
65
64
64
64
64
64
64
63
63
62
62
62
62
62
62
62
62
62
63
63
63
62
61
61
61
62
65
66
72
73
70
64
62
61
58
58
58
58
58
58
58
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
56
56
56
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
60
61
61
61
60
60
59
59
59
59
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
60
60
60
62
65
65
65
65
65
65
65
65
65
64
64
64
67
67
67
67
67
67
67
68
68
68
69
69
69
69
69
70
72
74
76
78
78
82
89
89
90
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
92
93
95
95
96
96
96
95
95
95
95
95
95
95
95
95
95
98
99
99
99
96
94
94
97
97
99
99
99
99
99
99
99
99
99
100
100
103
106
106
106
106
106
106
106
106
107
107
108
108
109
109
109
109
110
111
111
111
111
111
111
112
112
112
112
112
114
114
114
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
118
118
118
117
117
117
117
117
117
116
115
115
115
115
114
114
114
114
115
115
116
116
116
116
116
119
119
119
118
118
118
118
118
118
116
115
115
115
115
115
115
115
115
115
115
116
116
116
119
120
120
120
121
122
124
125
127
127
128
128
128
128
128
130
130
131
132
133
133
134
134
135
135
135
135
143
145
145
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
147
147
147
148
151
151
151
151
151
151
151
151
151
151
153
154
154
155
155
156
156
156
156
156
157
158
158
159
159
159
161
162
162
163
163
163
163
163
164
164
165
165
166
166
167
167
167
167
167
167
167
167
167
168
168
168
168
168
168
169
169
169
169
169
169
169
168
168
168
165
165
164
164
163
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
162
163
163
164
164
165
165
165
165
165
165
163
162
161
159
156
156
155
155
153
153
152
151
150
145
143
141
140
145
145
147
150
151
153
153
153
153
153
153
153
152
152
152
152
152
152
152
152
156
157
158
158
159
160
162
166
167
168
168
168
168
169
169
170
171
171
171
171
171
172
172
172
172
171
171
171
171
171
171
171
171
171
171
172
172
174
174
175
175
175
175
175
175
175
175
176
177
178
178
178
178
179
179
180
180
180
180
182
182
183
183
184
185
185
186
188
188
189
189
189
189
189
189
189
189
189
189
189
188
188
188
188
188
188
188
188
187
187
187
187
187
187
187
187
187
188
188
188
189
189
189
189
190
190
190
191
191
191
191
191
191
192
192
192
193
194
196
200
201
201
202
203
206
207
208
209
209
209
209
210
205
203
203
203
203
203
203
203
203
203
203
203
203
202
202
202
202
202
202
202
202
202
202
202
202
202
202
202
198
198
198
199
199
200
200
201
202
204
205
206
206
207
207
208
209
209
209
210
210
211
211
211
212
212
213
214
216
216
216
216
216
216
212
210
209
207
206
205
204
202
201
199
199
198
197
193
192
191
188
186
184
183
181
180
179
178
177
174
172
172
174
174
174
175
175
175
177
177
178
178
179
179
179
179
180
180
182
183
184
184
184
185
186
186
186
186
190
191
191
194
194
194
195
196
197
197
200
200
200
200
200
200
200
200
200
200
200
202
202
203
203
203
203
204
204
206
210
211
212
215
217
219
220
220
220
220
220
221
222
223
224
225
225
225
226
227
228
230
230
231
231
231
234
236
236
236
237
238
240
240
240
241
242
242
243
243
243
244
244
244
245
246
247
247
247
248
248
248
249
249
249
250
250
250
250
250
251
252
254
254
256
256
256
256
256
257
257
257
257
257
257
258
259
259
259
259
259
260
260
260
260
260
260
260
260
257
255
254
250
248
245
241
237
234
230
230
230
230
230
230
230
229
228
228
226
225
223
220
221
223
224
225
229
232
234
235
236
238
242
243
244
247
248
247
246
245
245
245
245
246
247
247
246
246
245
244
243
241
241
240
240
241
241
241
241
242
242
243
243
244
244
235
235
234
234
236
236
237
239
240
241
242
243
243
245
246
246
247
247
248
249
249
249
249
250
251
251
252
252
254
255
258
259
258
257
257
259
260
262
263
265
265
265
265
265
264
264
264
264
264
264
264
264
266
267
270
271
272
275
276
277
278
279
279
279
279
279
279
278
277
277
277
277
276
276
276
276
276
276
276
276
276
276
276
276
276
277
277
277
277
284
285
287
287
285
282
276
276
275
274
274
274
274
275
275
277
277
277
277
277
277
278
279
285
291
295
300
294
296
299
301
302
303
303
304
304
305
312
319
319
320
322
330
331
334
345
346
347
347
349
350
350
350
350
350
350
350
350
350
350
350
350
350
351
351
352
351
343
337
337
336
336
354
370
384
385
397
400
405
406
407
426
427
428
428
429
430
430
428
428
427
424
419
418
418
418
417
417
417
417
416
416
418
418
418
418
418
418
418
418
418
418
418
417
417
417
417
417
417
416
416
416
416
416
415
415
414
415
417
419
421
423
424
424
428
428
430
430
431
431
432
433
435
435
435
435
435
435
439
443
448
451
452
453
454
468
473
478
487
492
495
502
530
537
565
568
568
569
570
570
570
570
570
571
571
571
571
571
571
573
578
573
569
554
552
552
552
552
552
551
551
551
551
551
550
550
549
549
549
549
549
548
547
548
549
550
550
549
548
541
540
539
539
539
538
532
531
530
530
529
529
529
529
530
531
531
531
531
530
528
527
526
525
523
517
522
522
522
522
521
521
520
520
520
520
519
518
516
517
518
518
520
521
521
522
522
523
523
523
522
522
522
523
526
528
529
531
531
531
531
531
531
530
529
528
528
527
526
526
526
526
526
526
526
528
529
532
533
535
534
532
529
530
530
531
531
531
530
530
529
528
526
524
523
522
521
521
521
522
528
530
531
530
528
525
523
519
519
521
522
524
524
524
524
524
524
524
524
523
520
511
505
501
502
504
511
519
518
516
516
514
519
521
523
524
519
513
513
514
516
517
518
516
515
514
512
509
508
505
504
504
506
508
512
513
514
512
512
509
509
510
510
510
510
511
511
511
512
512
512
512
511
511
504
514
517
519
521
524
523
522
520
520
524
528
540
542
543
545
545
545
536
534
534
534
535
535
535
535
538
539
540
542
543
541
538
536
538
539
540
539
535
535
535
534
534
535
536
538
540
541
538
536
534
532
531
534
534
535
536
537
539
539
546
546
538
538
538
538
538
538
538
538
538
538
539
540
544
546
548
549
550
552
559
560
560
561
562
562
562
562
562
562
561
561
561
561
560
560
560
560
559
559
559
557
556
556
555
554
554
555
556
556
556
555
555
554
553
553
552
549
547
545
543
543
544
544
543
543
542
545
545
546
546
547
547
549
550
550
550
549
548
547
546
543
542
541
540
536
533
528
528
527
527
526
525
521
519
518
516
515
513
512
512
512
512
512
512
512
513
514
515
519
521
523
526
529
533
534
534
538
539
541
543
544
545
545
546
547
549
552
554
554
554
554
554
554
554
555
556
556
558
558
559
561
561
563
566
568
569
569
569
570
570
569
562
560
556
553
551
550
549
546
529
525
517
515
515
510
508
508
506
504
503
502
500
497
495
489
488
488
488
488
489
489
489
489
489
490
490
491
494
495
496
498
498
498
498
498
498
500
501
502
502
503
503
505
506
507
507
507
508
508
509
509
509
509
509
508
507
506
504
503
502
501
500
499
499
499
499
499
498
498
498
496
492
490
490
490
482
483
484
484
484
484
479
476
476
476
476
476
472
470
470
471
471
471
468
467
466
465
464
462
461
460
460
460
459
459
461
464
466
469
474
474
472
464
459
458
458
458
458
458
458
458
458
458
458
458
457
455
454
452
451
450
449
448
447
447
446
444
443
442
441
441
441
442
442
443
445
447
448
449
446
443
440
428
427
425
424
423
423
422
421
421
423
426
428
428
428
427
427
427
427
427
427
428
430
431
431
430
429
429
431
434
435
435
435
435
437
439
439
443
446
447
448
449
449
449
450
452
453
454
456
457
458
459
460
460
460
460
460
460
460
460
460
460
460
461
462
463
464
465
465
465
465
465
464
464
463
463
464
465
465
465
467
472
485
491
489
486
486
494
498
498
495
489
487
486
484
483
482
481
479
478
477
477
477
477
479
476
468
466
465
465
465
462
461
461
461
462
462
462
462
462
462
463
463
463
463
463
463
464
466
466
466
470
470
471
472
474
475
475
475
473
473
463
456
454
452
451
449
448
448
448
447
447
446
445
444
444
444
444
443
446
448
450
451
451
449
447
444
440
437
436
435
435
433
433
436
437
439
440
437
434
431
431
431
431
432
432
434
435
435
435
435
435
435
435
435
435
435
436
436
438
436
433
432
430
429
428
424
422
421
419
418
407
407
408
408
409
409
410
410
410
410
410
410
410
410
410
410
411
411
411
411
411
411
410
410
409
409
409
409
409
410
411
411
412
412
412
412
412
412
413
414
417
420
421
421
417
414
412
411
411
411
410
407
407
406
406
405
405
405
410
415
418
415
413
405
399
392
388
391
392
396
397
398
398
398
397
397
397
397
397
397
397
397
397
398
398
398
398
399
399
399
399
400
400
400
399
398
398
398
396
396
398
401
404
402
396
385
382
383
383
383
383
381
378
378
377
375
375
375
375
375
375
375
375
376
377
379
381
382
383
383
384
385
386
386
386
387
387
388
389
390
391
396
400
398
395
398
404
404
404
404
404
404
404
402
401
400
399
398
397
396
396
396
397
397
398
399
399
398
397
397
402
418
418
418
418
415
412
410
410
410
409
409
409
409
409
411
411
412
412
412
412
412
415
416
417
418
418
418
416
416
416
416
416
416
416
424
429
430
433
432
434
435
438
438
439
437
437
446
446
446
447
457
459
462
468
469
472
479
482
485
489
489
488
487
487
485
483
482
480
479
477
475
472
469
468
468
467
466
464
463
463
463
463
463
462
462
461
461
460
459
458
457
455
454
454
454
454
454
454
454
454
455
451
449
447
448
449
450
450
447
446
444
444
443
441
440
438
437
437
438
438
438
438
438
435
433
432
431
431
431
431
431
431
431
431
436
438
438
436
435
435
431
429
426
423
422
420
418
418
418
418
418
418
418
416
417
418
418
417
417
417
416
416
415
415
415
414
414
413
413
413
412
412
412
411
411
411
410
410
410
410
409
406
405
405
404
404
404
404
404
404
404
405
394
395
395
396
396
398
396
394
394
394
394
395
398
398
397
394
390
387
385
383
382
381
380
380
380
380
380
380
380
380
380
380
380
380
380
375
374
374
374
373
372
372
372
372
371
371
371
371
371
371
373
374
375
376
376
377
379
380
382
383
384
385
387
389
389
389
389
388
386
384
376
372
368
366
366
367
368
372
374
369
369
369
367
367
364
362
363
363
363
364
364
364
364
364
364
365
366
366
365
365
364
363
362
362
362
361
360
359
359
358
358
358
358
357
356
355
353
353
353
353
353
353
353
353
352
352
352
352
357
359
360
361
361
361
362
363
365
366
367
368
369
370
371
374
377
382
385
385
386
387
392
394
394
395
403
409
416
420
423
426
435
438
441
444
448
450
452
454
454
464
469
478
480
483
487
489
499
501
505
507
508
509
511
512
513
514
514
516
518
518
519
519
520
522
524
525
527
528
530
532
534
534
536
537
544
548
551
557
555
553
549
547
546
542
542
542
542
542
542
542
546
547
549
550
553
553
553
552
552
551
551
550
549
548
548
547
546
545
544
545
545
546
547
548
548
548
548
547
546
550
550
552
552
553
555
555
555
555
555
556
556
556
556
556
556
556
557
557
558
559
560
561
562
563
565
567
568
569
571
571
572
571
569
568
567
566
565
563
562
561
560
560
559
559
559
559
559
557
554
552
550
548
546
547
547
548
549
549
548
545
544
542
541
542
544
547
548
549
546
546
546
545
542
540
540
537
537
536
536
535
534
534
534
532
532
532
531
531
531
531
530
529
528
528
529
529
529
529
529
531
534
535
536
536
535
534
534
534
534
535
535
537
541
541
542
543
544
545
548
548
544
540
537
537
537
537
538
538
537
535
530
515
507
503
503
503
503
503
503
503
505
505
507
509
510
511
512
512
512
512
508
504
503
501
501
501
501
502
502
502
502
500
499
498
498
498
498
498
497
494
493
491
490
488
487
487
487
487
488
488
488
488
486
485
483
481
476
476
476
476
476
476
475
472
471
471
470
469
466
465
466
466
466
467
467
466
461
455
453
453
452
451
448
448
447
440
437
436
431
430
427
427
425
424
422
421
420
416
409
409
407
404
396
392
392
386
386
386
386
386
386
386
387
387
387
386
384
383
382
381
381
381
380
380
379
379
374
373
372
370
368
368
368
373
373
374
370
367
368
362
361
361
361
360
359
358
353
349
345
342
339
332
330
328
327
326
326
325
324
324
324
324
321
320
319
317
315
312
311
310
309
309
305
305
304
304
304
303
303
303
301
301
301
301
301
301
302
302
302
303
303
304
304
305
305
305
305
306
316
320
321
322
324
329
336
337
338
339
339
339
340
340
340
340
340
340
340
340
340
342
344
346
356
360
362
362
363
363
364
364
365
366
368
374
374
375
377
377
378
380
381
381
392
395
398
400
399
399
394
389
381
380
383
390
392
394
394
396
396
397
400
402
403
410
410
409
409
408
405
396
393
391
387
385
383
382
382
381
380
378
378
378
376
375
374
372
372
371
370
369
368
368
368
368
368
368
368
369
367
366
353
349
349
349
348
348
343
341
343
343
343
343
343
342
342
342
342
342
341
341
341
341
341
342
342
343
344
346
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347