152
152
152
152
152
152
152
152
152
152
152
152
152
152
153
153
154
154
154
155
156
156
156
157
158
158
159
160
160
160
158
158
157
157
157
157
157
158
161
162
162
162
163
163
163
163
161
159
158
156
155
155
153
150
149
147
147
147
146
146
148
155
157
158
157
157
156
154
160
160
160
157
157
160
155
154
153
154
156
157
157
157
156
154
153
153
152
151
151
150
146
145
145
145
145
145
145
145
145
145
146
155
154
156
156
156
156
156
156
156
156
157
158
160
160
161
161
161
162
162
164
166
172
175
179
179
180
169
174
171
179
179
179
177
177
178
177
175
177
174
175
177
179
179
182
182
181
181
180
186
193
191
187
185
186
186
185
184
184
183
182
182
183
186
189
190
196
197
198
201
193
193
194
195
196
198
199
200
201
199
198
201
202
199
199
201
204
206
208
211
213
215
221
231
229
229
228
219
218
216
215
214
214
224
225
226
226
226
226
224
222
221
218
219
219
219
218
218
217
216
215
215
215
217
223
226
225
223
222
222
222
223
223
223
223
223
225
225
226
233
235
237
237
237
236
236
236
239
241
242
246
249
247
245
244
242
240
234
234
232
234
235
236
238
240
242
244
243
243
243
243
243
243
243
244
243
240
238
237
237
237
239
239
244
244
244
244
239
238
238
239
239
240
241
244
253
253
253
251
249
249
248
248
246
245
244
247
247
248
250
251
255
257
258
259
259
258
258
261
277
272
268
274
279
283
283
282
280
276
273
270
271
271
271
274
276
279
282
280
278
275
273
272
272
272
273
281
281
282
285
295
297
301
307
306
306
302
300
289
287
291
293
293
293
293
293
293
295
296
297
298
298
298
298
299
299
299
299
299
299
300
300
301
302
307
311
314
316
322
324
323
322
322
323
323
319
320
321
322
322
322
325
331
331
332
334
335
334
334
331
330
328
326
325
325
326
327
328
329
335
338
343
342
347
351
352
353
352
351
349
351
352
353
352
351
351
351
351
350
350
349
349
350
350
351
352
350
349
348
346
344
344
344
344
344
344
344
346
347
347
347
345
344
347
349
352
358
363
363
363
362
356
357
360
361
362
362
360
359
358
356
355
356
356
363
368
368
368
369
370
371
372
372
370
368
364
366
382
380
376
377
381
384
382
379
377
378
378
377
380
382
384
385
385
384
385
388
388
388
388
389
389
391
393
394
397
400
403
404
410
418
420
423
430
435
435
436
437
439
444
451
453
454
456
461
462
473
483
483
483
483
483
485
491
493
502
506
505
499
498
491
495
497
504
511
515
521
523
527
530
535
537
539
541
542
545
547
549
549
549
549
549
548
548
547
544
545
546
546
547
547
547
548
549
550
551
551
551
552
552
553
555
563
566
567
570
576
577
577
577
578
578
580
581
583
590
592
594
595
595
597
598
600
602
604
610
612
614
615
616
619
619
619
620
620
621
623
629
631
631
631
631
629
626
624
621
619
618
616
614
611
611
609
608
608
608
608
608
608
608
610
610
608
604
605
607
612
614
616
616
617
617
617
617
617
616
615
614
613
612
612
612
611
610
608
607
606
606
607
608
609
611
609
605
603
602
599
596
593
591
588
587
585
584
582
581
579
578
577
576
574
573
571
572
575
577
577
577
577
577
577
577
577
577
577
577
576
576
576
576
575
575
574
574
573
573
572
571
569
567
566
565
563
558
557
553
552
551
550
548
548
548
548
548
547
546
543
542
541
540
540
540
540
540
540
540
541
541
541
540
539
538
538
538
537
537
536
536
536
536
536
536
536
536
532
527
524
520
518
515
512
507
496
486
481
471
465
462
460
456
455
453
452
451
450
450
450
450
450
450
450
450
449
442
440
438
438
439
440
440
441
441
439
438
436
435
434
434
432
431
430
430
428
425
423
415
414
413
413
414
415
416
417
419
420
418
411
409
407
406
405
404
404
403
401
400
399
398
397
396
395
393
390
384
382
379
375
370
365
362
365
367
369
371
357
349
353
356
358
359
361
362
359
357
356
352
351
349
348
347
344
343
342
341
339
339
338
337
336
335
336
337
337
339
342
342
334
331
328
326
323
322
320
320
322
326
332
337
334
327
325
323
322
323
318
313
309
308
306
304
304
304
304
304
304
304
304
303
303
303
305
308
303
300
298
295
293
292
291
292
295
299
302
306
305
304
304
303
303
303
302
301
299
297
292
291
290
289
288
290
291
295
296
297
291
287
284
281
277
278
281
283
286
287
283
280
278
275
275
276
276
276
277
279
287
284
281
277
274
270
269
270
271
272
273
273
273
273
273
273
272
269
268
266
264
262
259
255
252
251
251
251
250
250
250
249
249
249
250
251
249
247
245
243
241
239
238
238
239
241
247
247
248
249
249
249
248
246
251
251
245
243
242
240
239
238
244
248
253
257
257
252
246
241
243
245
245
245
248
250
251
251
250
249
249
249
249
249
246
243
239
238
235
232
230
229
227
226
226
230
234
230
228
225
222
221
221
220
219
222
224
222
220
223
214
212
211
211
213
217
217
217
218
220
220
220
219
219
219
219
221
216
214
212
211
211
212
212
212
213
215
217
218
218
218
218
217
216
214
214
214
215
215
216
216
216
216
215
215
214
211
204
202
201
199
197
198
199
200
201
201
201
201
202
202
203
203
202
202
201
200
199
198
197
195
193
191
188
187
185
183
183
183
182
181
181
180
179
178
178
178
177
174
174
174
174
175
175
175
175
176
178
179
180
180
182
183
179
179
184
187
187
186
184
181
176
172
170
170
171
171
172
174
174
175
176
176
178
178
178
176
176
178
179
180
178
177
175
169
167
167
167
166
166
166
166
167
170
171
171
171
172
172
173
176
177
175
173
173
173
172
171
169
166
166
166
166
166
168
169
171
172
175
176
177
179
180
182
185
192
192
192
192
192
192
194
195
197
198
199
201
203
203
204
204
206
208
211
214
216
217
224
224
224
224
224
225
229
230
230
235
236
241
243
246
247
248
249
251
251
250
249
248
249
250
253
258
261
268
273
278
281
283
291
293
295
299
307
312
312
316
321
322
323
325
325
328
328
327
326
326
326
326
326
326
326
329
333
335
344
345
347
347
348
349
351
353
354
355
359
360
362
364
376
378
379
382
384
385
386
390
391
397
401
402
403
406
407
409
412
413
417
419
420
421
423
427
430
432
435
438
440
441
445
448
452
453
456
457
460
460
461
461
461
461
461
460
460
459
462
464
465
466
467
467
468
469
471
473
480
488
492
496
499
501
503
504
508
506
506
505
504
502
502
504
506
507
511
513
515
517
517
517
517
517
517
517
520
523
523
523
524
524
525
525
525
525
525
535
538
540
539
538
538
538
538
534
532
529
527
526
526
528
529
530
532
532
530
530
528
528
525
523
523
519
518
519
521
522
524
524
525
525
526
526
527
527
529
529
531
535
537
539
539
540
540
541
542
542
551
555
562
564
567
569
576
578
578
578
579
579
580
582
582
583
583
582
581
580
579
575
571
570
568
563
557
552
550
546
544
543
538
536
531
530
529
525
523
523
523
523
522
522
522
522
521
520
520
519
519
519
518
517
514
512
511
511
511
510
510
510
509
508
506
506
504
502
495
494
493
491
491
491
491
490
490
490
490
490
490
490
490
490
490
491
493
494
494
496
497
498
499
500
500
501
501
501
501
502
503
504
514
517
517
525
533
536
548
552
557
556
556
555
555
557
559
562
563
566
567
569
570
571
574
576
579
583
586
591
593
607
612
614
614
614
614
614
614
615
616
616
617
620
621
621
622
622
623
623
624
625
649
653
652
650
650
651
653
654
655
658
660
661
663
664
666
669
670
671
672
674
678
679
679
679
679
679
679
679
679
678
677
677
677
678
679
681
682
684
685
686
691
692
694
699
700
695
692
691
689
686
684
683
681
677
676
674
678
682
689
695
701
706
710
712
712
713
715
715
716
717
717
716
717
717
718
723
726
727
730
732
733
733
732
731
729
722
717
712
707
706
705
702
699
697
695
690
686
684
684
677
676
664
658
638
637
634
627
621
618
616
616
615
610
609
609
612
614
615
624
625
624
617
620
622
625
622
608
605
601
599
600
600
600
601
601
600
591
574
567
563
566
566
567
575
576
576
575
570
581
593
595
583
590
595
605
611
618
619
619
622
624
625
628
633
635
635
649
666
686
707
713
720
731
730
724
724
723
723
726
728
728
728
728
729
734
739
739
739
739
739
739
739
736
730
728
727
724
719
712
709
704
702
701
699
698
697
694
694
692
690
688
684
684
686
688
689
689
688
685
684
683
682
681
680
676
675
670
668
663
655
653
649
648
646
646
645
644
641
640
639
638
637
636
635
640
642
640
637
637
637
639
640
641
641
642
642
640
636
635
633
633
627
625
621
618
615
609
585
575
571
569
563
561
558
558
561
565
565
563
562
560
559
565
565
565
565
566
566
565
560
558
552
544
535
531
523
515
509
507
502
495
487
485
479
478
478
478
477
477
477
475
465
452
433
417
417
415
409
410
410
409
407
405
405
401
397
386
381
377
376
375
373
370
369
368
354
355
355
355
355
355
355
350
346
342
341
337
333
331
328
326
323
322
322
320
318
316
315
313
310
303
304
305
307
309
308
307
303
302
301
298
288
278
272
268
262
255
253
252
250
249
249
249
249
253
254
254
255
255
250
249
253
254
252
249
248
245
245
244
243
242
235
234
234
233
233
233
233
233
232
230
227
226
226
226
227
227
227
227
227
226
226
222
222
223
220
218
216
218
220
218
215
212
212
212
212
213
215
216
215
214
215
216
216
215
214
213
211
210
208
210
212
213
219
222
223
223
221
221
220
215
211
207
205
204
201
199
198
197
195
194
194
194
194
194
194
194
194
194
196
202
204
204
203
201
194
191
188
185
182
182
183
183
183
183
183
180
174
174
173
173
173
171
170
169
169
170
173
173
172
172
173
173
173
172
172
171
171
171
169
167
167
167
163
162
162
162
161
160
158
158
158
158
158
158
158
158
158
157