60000
824
486
978
500
727
738
647
28
317
658
211
290
510
173
300
465
620
901
20
591
435
451
797
281
139
933
719
286
33
446
795
99
391
425
12
636
564
24
60
24
810
349
196
755
165
968
147
202
546
818
815
289
769
34
166
750
120
471
146
355
565
961
249
513
934
179
570
624
50
688
876
304
72
663
422
784
341
386
966
598
515
409
177
202
299
126
580
901
238
80
559
907
548
157
228
725
401
240
827
356
577
871
280
15
521
259
417
859
676
697
721
952
151
944
179
569
823
326
808
358
54
611
929
616
512
629
377
65
586
42
787
690
417
761
788
98
875
843
78
413
614
165
177
872
665
26
889
709
349
139
27
775
869
481
444
578
958
409
616
846
947
776
713
534
363
419
539
719
338
456
429
707
874
563
34
214
371
310
370
40
662
195
880
827
111
229
228
429
742
572
327
462
151
195
455
964
179
166
673
612
230
386
48
168
802
20
138
344
753
214
696
312
939
735
262
826
81
933
159
427
119
170
416
889
379
399
484
483
537
887
684
101
824
383
654
246
65
506
638
353
344
798
682
192
378
271
500
208
548
581
332
499
160
898
811
605
865
732
500
436
21
709
374
845
796
294
637
583
855
399
482
696
481
907
976
78
898
516
214
77
91
537
860
601
22
38
220
130
147
54
918
826
916
461
42
157
927
341
186
120
528
30
552
892
911
666
439
188
976
742
860
544
107
804
895
421
294
307
446
178
936
877
666
311
733
348
441
496
271
126
776
747
612
496
549
132
703
616
906
852
460
371
570
687
760
647
597
282
880
950
294
560
640
579
814
515
675
233
378
748
513
277
755
10
716
803
565
964
218
448
688
762
12
701
617
880
657
481
304
168
938
336
569
72
177
539
581
324
42
264
502
151
755
599
637
899
528
642
376
770
606
136
424
306
455
475
49
357
584
129
248
365
203
75
710
846
404
761
740
973
292
921
323
174
16
309
807
111
93
312
19
102
118
572
249
854
625
118
610
335
576
841
655
602
897
156
686
665
267
864
742
354
34
235
859
76
191
475
922
898
429
844
522
890
385
681
323
874
752
41
208
173
978
345
671
221
111
74
558
742
830
480
931
429
883
229
51
740
75
204
510
382
910
195
298
562
936
174
299
441
32
571
474
630
581
859
828
430
544
737
124
400
281
342
208
831
978
30
554
91
355
475
830
346
948
203
441
216
532
811
15
160
676
233
607
172
476
748
382
579
591
204
452
374
75
92
110
837
189
199
913
470
326
745
86
433
505
558
600
953
482
608
892
165
164
617
80
430
574
309
445
259
902
478
559
504
677
810
895
488
129
584
455
642
700
975
430
98
376
291
886
155
497
305
935
347
99
554
274
97
628
263
968
570
695
412
160
501
255
928
641
221
268
188
322
396
23
780
956
27
776
328
358
683
455
955
718
643
839
772
853
161
70
98
251
527
780
207
575
291
132
644
699
452
859
699
115
935
937
794
976
320
282
411
106
659
570
808
875
727
672
138
711
637
508
241
512
88
396
798
388
903
134
681
15
331
492
306
271
372
99
396
121
87
76
131
530
505
889
93
59
845
92
794
492
599
229
242
179
670
249
142
24
30
786
52
12
891
734
297
751
800
152
726
443
853
576
548
419
293
517
278
224
308
767
649
746
465
363
962
524
31
829
913
145
875
533
417
470
543
622
95
617
642
208
236
489
880
820
92
393
126
503
376
947
583
623
236
419
494
270
848
113
448
339
664
88
177
737
11
649
979
543
180
931
646
966
570
249
498
645
787
956
159
64
65
760
572
467
344
596
454
809
172
498
575
949
106
690
270
968
406
551
293
471
823
549
945
585
328
322
548
487
535
73
93
174
785
254
968
314
585
941
962
104
52
575
418
837
192
566
604
380
290
926
576
272
781
936
220
81
941
480
566
797
206
958
873
722
671
235
221
795
447
472
58
460
244
375
323
276
686
953
769
512
897
354
859
73
447
550
369
151
249
979
512
86
240
263
592
168
299
275
207
958
561
655
823
205
649
217
676
524
366
851
774
507
350
759
147
52
296
480
425
819
611
494
661
732
961
439
32
565
420
49
312
12
745
264
973
979
328
871
766
603
771
396
431
905
523
281
353
150
273
476
612
960
640
235
53
790
942
825
104
14
977
753
177
608
977
258
35
243
727
120
217
672
140
284
938
638
555
242
264
704
713
435
354
411
399
288
625
608
124
69
645
736
78
246
544
320
754
528
975
817
511
475
198
270
100
832
565
444
647
559
944
650
367
15
887
608
489
649
76
131
803
688
278
865
206
68
313
339
534
237
184
874
502
760
192
246
670
257
706
736
623
587
240
171
713
146
948
954
841
107
435
155
598
76
627
474
804
960
584
110
182
937
976
844
176
922
279
906
446
11
849
322
726
776
389
547
586
727
276
563
234
599
161
697
365
776
363
780
816
225
712
185
859
847
387
969
900
707
715
931
206
597
835
687
505
718
73
358
903
138
79
678
968
521
174
221
848
973
687
904
319
18
490
975
682
701
767
909
221
308
696
883
357
814
213
868
198
888
442
243
730
907
54
383
173
785
662
378
106
763
858
515
785
648
639
522
104
464
917
125
576
385
358
256
199
699
786
722
770
574
59
862
197
510
251
387
301
509
949
511
659
641
885
504
340
463
858
492
64
391
568
752
803
58
507
868
932
236
682
467
805
511
802
131
244
938
487
364
445
506
627
533
302
616
266
241
784
963
538
822
581
532
466
513
513
350
457
612
289
358
251
872
46
682
972
469
360
551
677
712
122
877
84
15
258
714
98
280
282
457
46
576
62
48
923
359
966
260
773
249
708
347
801
200
446
200
921
772
616
950
357
598
409
231
714
761
66
16
366
24
783
132
433
914
837
386
412
296
743
801
564
288
512
380
882
323
923
936
446
345
683
961
264
576
944
715
848
188
368
390
424
169
296
374
861
371
811
525
327
366
170
233
434
282
417
942
458
261
20
504
882
745
393
86
792
336
263
920
507
841
565
64
726
659
884
68
98
171
438
852
649
135
397
873
740
633
458
202
695
696
287
43
36
867
874
178
869
898
904
82
740
267
564
407
524
107
62
358
731
637
612
180
231
491
835
977
917
532
213
461
40
614
476
797
910
632
195
442
620
175
294
443
763
301
931
372
777
591
21
144
414
664
598
918
305
735
263
274
288
895
684
800
255
317
291
468
174
198
843
682
708
42
257
587
533
159
953
335
524
876
944
583
37
643
458
338
885
418
607
320
549
429
649
470
15
725
553
284
723
172
583
636
529
60
779
691
41
433
332
822
578
659
635
726
960
80
171
549
159
160
328
610
338
533
645
701
101
526
435
939
644
375
970
813
737
925
105
690
164
373
405
977
49
918
569
889
145
398
16
486
875
374
490
371
683
854
402
365
14
916
755
916
37
828
599
533
733
137
648
236
123
856
963
781
26
552
454
28
262
525
33
654
664
678
227
647
649
752
323
824
920
213
469
597
748
658
761
73
68
350
952
10
690
90
676
872
472
213
342
685
168
282
316
64
617
44
336
827
490
23
170
970
592
912
626
786
701
777
660
501
104
799
279
838
459
456
579
264
643
308
765
868
521
751
784
333
426
956
823
739
512
71
756
247
919
529
711
21
759
514
966
428
782
944
798
463
241
586
576
135
975
197
949
552
149
205
453
866
26
488
610
850
465
251
735
945
478
707
27
361
254
356
692
769
241
245
296
33
251
938
391
497
436
514
539
189
130
357
693
443
383
37
786
834
691
22
960
954
654
774
222
538
118
868
592
190
557
890
297
686
862
76
181
305
87
835
839
927
484
77
120
926
768
898
679
375
140
375
956
258
913
149
847
372
868
222
747
856
72
742
112
31
829
100
104
19
823
491
479
955
682
520
233
653
388
105
954
796
209
226
319
831
684
432
886
18
694
402
704
473
240
347
769
708
142
198
310
813
694
428
263
451
383
857
501
892
67
185
110
153
228
685
341
775
575
47
584
451
705
408
379
519
214
675
877
229
707
378
507
749
853
129
943
166
811
126
99
773
797
837
687
430
913
346
503
539
850
683
194
746
482
707
891
889
803
418
50
670
168
223
701
124
784
578
442
850
509
463
644
515
179
126
208
131
224
491
961
105
413
647
411
111
658
889
338
319
347
856
612
168
451
473
427
178
877
696
836
767
97
561
242
498
802
539
306
119
669
822
528
261
78
429
626
316
372
774
590
754
605
457
920
258
136
710
22
376
759
744
791
100
149
685
356
101
422
482
140
546
564
925
758
32
652
869
628
170
152
109
460
681
788
384
431
811
661
760
192
875
185
662
919
285
104
531
258
511
868
704
179
799
547
908
474
243
371
192
142
258
548
835
869
826
580
135
99
950
323
843
122
138
859
942
583
612
590
898
736
830
494
346
529
489
284
163
522
250
49
42
82
820
598
476
959
691
292
323
952
929
858
315
196
227
819
306
44
933
483
142
951
170
448
292
296
688
506
854
243
445
329
252
258
125
745
523
467
501
767
903
868
263
335
396
424
436
977
395
697
933
573
125
563
116
248
953
190
544
536
131
970
722
742
886
555
195
348
335
25
438
509
606
479
658
477
936
737
314
347
540
138
151
702
898
864
189
89
360
726
400
800
164
761
924
925
672
495
95
295
919
768
946
360
872
591
525
216
581
606
191
227
38
539
91
246
694
70
182
481
846
95
339
865
460
804
551
640
933
727
788
660
60
306
645
653
451
904
127
829
72
587
757
643
785
541
31
537
701
260
799
149
646
907
199
878
142
639
907
912
592
573
254
933
276
17
103
325
114
236
312
824
285
28
238
937
71
933
289
173
196
238
540
155
361
871
203
804
159
164
362
42
973
325
768
263
519
167
865
397
917
272
692
248
159
581
957
889
727
344
581
945
276
700
950
877
335
873
232
149
730
178
701
393
510
776
639
174
640
708
624
443
428
593
250
569
738
860
559
475
717
101
708
27
565
218
165
501
787
235
925
697
771
260
366
674
662
643
845
431
87
709
205
484
267
817
293
562
458
930
866
921
588
911
432
915
524
848
594
507
594
831
646
32
326
844
690
444
770
279
978
275
168
61
815
592
47
789
580
131
176
817
421
980
416
229
935
977
225
426
566
615
80
777
415
186
385
459
368
584
425
436
41
625
187
327
179
80
721
55
702
666
367
120
268
548
286
20
729
693
550
111
542
797
433
60
867
237
233
698
461
207
564
365
271
304
469
675
830
153
455
126
154
633
877
558
20
33
836
100
476
645
908
700
119
792
841
38
637
870
639
781
687
469
124
914
717
705
563
113
622
658
60
143
166
277
172
343
535
176
750
901
280
115
516
560
164
348
506
258
155
219
626
533
691
750
434
201
357
811
399
736
777
685
325
317
446
936
363
306
118
824
518
401
436
336
186
279
65
298
301
581
458
272
766
794
110
299
338
949
723
70
393
309
756
175
492
142
836
231
49
576
498
826
906
703
237
861
247
465
272
720
408
576
526
436
326
134
356
376
756
650
145
414
454
177
655
257
220
496
496
793
132
44
365
266
878
340
29
658
532
155
621
394
256
653
482
492
625
81
834
134
657
270
417
787
366
834
483
273
451
880
772
243
438
386
491
17
342
616
84
478
350
399
382
250
289
660
599
562
582
35
719
243
771
114
450
902
147
360
525
588
197
882
14
477
115
590
857
395
656
577
818
880
887
968
452
77
668
112
82
290
877
123
360
494
625
637
299
950
694
670
287
396
157
36
567
368
148
234
878
82
925
352
438
419
537
630
661
547
934
530
634
775
209
13
594
716
563
491
408
917
255
51
579
843
828
11
286
605
850
633
98
748
527
33
176
971
145
633
427
786
709
799
51
88
34
872
247
641
180
973
628
564
123
731
531
358
594
433
726
94
955
117
295
137
923
522
436
378
876
382
117
756
663
788
748
363
473
629
846
232
196
401
552
129
570
664
901
320
469
119
84
406
898
119
494
862
514
406
688
714
188
371
604
374
850
925
128
260
579
912
964
838
245
751
798
372
926
784
486
960
436
249
299
362
518
449
318
305
176
767
873
376
587
239
210
493
531
215
202
712
107
270
173
911
739
67
729
268
65
425
693
242
240
326
310
538
269
681
33
373
368
443
783
382
949
531
574
374
939
428
61
43
355
630
953
478
534
215
484
770
149
549
777
151
496
755
608
754
158
632
897
295
571
746
261
76
796
668
438
969
208
170
664
771
273
464
456
355
224
973
497
702
525
969
557
598
832
947
706
88
358
143
636
903
713
201
165
453
444
328
866
88
278
517
38
490
68
243
831
676
269
310
643
636
593
680
747
704
17
500
530
656
812
840
826
563
677
160
358
420
900
435
602
206
742
879
210
195
196
878
352
613
73
642
817
338
692
640
959
76
898
782
656
131
869
766
340
938
274
801
329
57
737
532
885
893
320
463
660
471
492
833
773
916
592
68
594
663
99
322
570
553
655
334
628
153
554
212
700
908
298
757
971
67
49
644
605
736
139
617
814
627
557
423
395
168
698
635
214
18
347
766
780
87
228
40
761
757
157
245
760
906
926
765
661
327
143
832
587
664
178
950
961
887
145
572
54
62
961
419
581
764
205
76
530
445
292
123
556
746
851
92
581
649
177
410
340
764
120
659
979
108
260
478
72
744
915
379
489
147
63
920
276
104
920
675
808
346
80
731
662
534
821
640
232
555
212
747
719
526
234
264
384
861
762
622
146
148
59
941
549
222
29
967
596
813
359
177
979
337
527
504
845
839
107
647
944
159
579
547
289
514
939
55
116
694
681
28
121
932
839
855
745
873
462
342
921
431
719
817
341
321
392
115
826
624
67
564
616
964
422
908
607
184
827
670
826
736
743
237
883
831
632
445
944
471
164
417
798
878
373
315
812
175
330
570
643
882
75
49
372
443
386
755
824
604
480
541
28
110
695
382
214
387
889
491
255
851
744
153
158
794
715
590
670
65
332
790
843
899
328
691
202
182
946
120
46
384
406
514
121
407
723
519
200
481
700
194
260
295
259
771
262
875
500
680
960
155
316
881
15
373
432
731
95
140
199
567
648
711
815
587
327
748
741
455
279
665
958
969
614
560
875
343
202
120
693
120
876
319
81
41
275
139
550
702
261
484
953
50
371
958
17
570
798
74
114
543
681
521
768
573
889
62
418
589
849
70
109
629
311
559
712
912
616
166
877
300
697
487
31
635
49
507
912
87
417
977
422
94
614
973
335
677
521
839
185
664
591
104
495
642
333
493
65
762
705
860
403
924
960
381
741
479
256
669
844
792
321
200
644
325
378
265
917
252
381
390
639
416
926
205
195
849
256
438
959
141
21
850
421
488
757
345
808
809
679
854
671
57
772
972
392
978
569
579
383
850
421
681
532
74
300
850
739
350
714
196
270
901
233
809
687
781
440
460
96
634
177
588
119
17
74
162
130
418
680
155
178
334
293
383
547
911
315
49
922
685
699
215
956
32
254
97
97
358
34
924
164
629
548
927
592
235
741
294
790
523
320
31
762
222
91
642
394
396
385
598
970
260
884
44
828
685
629
883
732
252
967
958
507
862
835
511
468
662
601
775
977
138
257
333
198
439
21
101
568
526
37
155
523
264
248
165
59
620
976
333
748
571
55
308
836
574
568
212
458
420
270
27
786
735
404
608
846
91
221
762
802
86
174
849
133
403
498
552
583
607
526
815
79
832
529
180
707
826
807
757
638
212
111
40
440
946
371
367
588
551
456
110
55
86
368
77
171
226
416
384
402
861
55
780
874
171
861
343
612
45
719
918
754
189
574
490
317
255
96
308
282
26
76
776
323
372
108
403
282
765
340
577
958
357
68
191
700
851
614
855
16
764
256
197
276
76
735
816
613
529
769
228
90
727
507
695
618
495
923
849
422
144
393
837
351
71
141
268
870
356
907
199
223
673
34
44
108
123
817
492
207
918
919
606
504
72
583
271
286
379
967
604
225
268
581
518
471
765
188
227
81
625
822
806
59
88
877
757
373
176
972
605
907
539
734
592
632
729
831
592
584
628
588
176
615
319
154
242
188
10
743
783
113
860
703
155
175
273
978
495
350
47
416
741
596
881
407
750
908
501
894
833
56
755
589
885
396
700
152
231
805
933
646
277
826
474
117
735
315
43
979
775
28
465
482
867
623
304
341
876
601
608
292
878
442
950
518
321
264
266
158
398
517
307
91
513
157
642
474
228
482
967
743
449
754
318
926
88
446
163
916
168
605
202
343
347
801
631
103
960
257
465
234
675
719
150
958
12
267
319
362
68
780
680
196
909
306
672
616
490
916
721
260
767
954
71
582
552
220
566
263
669
298
905
920
376
907
941
795
35
225
73
797
359
414
871
276
474
762
121
136
523
780
358
357
488
656
771
623
385
93
78
473
877
436
546
976
447
956
494
366
638
492
418
841
658
800
893
737
629
610
790
409
423
443
789
236
27
268
409
668
408
100
394
605
594
117
673
320
531
740
836
626
377
241
43
351
814
14
282
816
643
866
752
314
788
602
815
186
211
109
317
839
930
497
23
866
36
26
553
232
671
438
572
291
952
121
25
114
228
310
103
243
137
497
126
19
855
762
136
566
84
823
638
777
651
248
96
780
165
98
36
198
865
515
557
370
562
349
475
818
70
693
649
923
275
709
381
830
713
655
451
831
404
379
533
548
776
845
440
243
685
830
663
116
48
465
855
380
629
659
136
276
734
800
819
484
186
880
685
344
122
174
53
207
537
164
182
694
952
618
783
422
751
318
173
348
551
233
240
249
664
641
569
205
413
354
70
107
729
857
353
97
33
712
449
198
347
477
865
949
543
116
658
595
573
634
284
294
597
244
703
482
37
624
82
776
748
66
937
648
299
328
131
133
129
276
447
384
941
617
863
357
253
785
779
314
152
616
98
70
618
757
37
961
166
331
653
769
704
495
739
511
808
109
282
334
431
605
357
444
924
177
32
348
752
629
626
936
474
198
311
179
504
853
723
241
152
370
889
682
59
701
907
757
883
108
917
372
351
842
537
971
552
454
506
601
671
183
489
682
864
318
254
851
260
260
808
194
637
914
334
48
735
862
366
366
837
28
327
134
671
683
404
303
968
459
922
737
870
544
741
154
200
570
408
786
631
912
785
517
321
366
837
259
717
682
818
254
635
309
975
648
682
928
327
316
276
855
959
207
608
328
894
439
498
908
313
568
360
446
706
369
300
815
282
619
547
546
296
270
789
742
873
703
389
79
882
473
407
651
962
52
150
233
318
960
617
434
971
688
351
399
358
289
181
905
293
843
980
818
669
222
33
941
256
772
270
213
376
67
575
526
928
701
640
72
88
409
722
839
22
943
473
703
816
591
666
376
381
731
289
336
636
651
292
645
182
406
615
579
269
32
842
242
12
387
780
694
297
411
82
21
871
954
701
977
525
105
13
587
211
232
44
933
484
289
405
900
531
930
888
282
451
325
135
271
776
653
810
699
416
564
836
575
519
314
726
461
351
331
13
458
645
876
528
651
837
576
979
383
475
500
94
610
688
187
359
321
155
112
157
757
813
930
524
185
516
220
637
628
432
446
149
452
138
883
707
376
87
908
879
654
227
609
496
73
395
105
734
453
855
89
525
13
203
933
122
796
859
322
476
800
589
956
685
357
805
829
414
33
656
729
377
196
597
510
29
951
230
380
510
137
690
181
809
176
772
778
22
579
727
704
422
686
353
473
945
222
654
646
713
331
489
361
81
259
713
652
148
364
711
203
801
433
319
531
259
952
752
545
840
372
707
796
326
68
182
541
225
345
764
66
673
956
437
15
918
648
954
926
231
269
21
334
179
224
673
47
510
852
822
19
618
821
316
744
890
564
328
350
279
693
196
139
61
390
86
443
677
217
833
252
85
328
67
82
230
269
623
546
336
49
565
686
803
456
901
970
627
548
554
238
681
328
519
819
705
204
202
484
207
107
896
736
583
87
601
308
489
79
193
353
777
150
943
884
222
166
29
512
637
720
668
978
54
444
138
540
765
548
203
546
656
94
595
627
589
542
63
828
588
774
139
288
773
281
795
404
80
845
41
489
638
273
108
140
779
654
621
359
235
442
209
867
46
561
474
379
871
647
732
36
755
323
64
412
211
223
423
418
383
489
862
303
629
486
427
478
42
353
782
601
271
703
387
491
767
972
920
111
750
233
519
636
967
34
279
378
121
754
85
201
475
755
657
571
75
717
772
44
463
401
939
109
728
63
605
922
490
203
147
858
707
857
919
862
426
172
549
207
30
896
890
159
850
493
615
952
349
118
114
795
977
798
937
582
440
925
81
896
837
392
554
885
971
564
973
412
348
541
584
542
563
17
654
686
362
467
277
672
925
141
424
510
295
733
668
971
624
616
614
884
38
119
708
170
716
402
704
73
877
629
680
428
737
859
679
288
979
397
640
785
188
216
260
15
549
697
672
369
837
780
307
97
973
421
189
834
204
491
47
186
238
565
463
565
283
861
966
454
645
55
889
105
126
383
423
282
453
743
158
533
350
483
296
638
217
888
502
372
329
515
774
507
421
971
274
733
235
513
773
100
123
132
543
707
41
119
281
967
708
836
83
460
835
204
422
277
604
725
824
668
120
831
153
139
144
100
422
311
884
24
644
443
310
628
846
146
512
919
22
341
245
716
733
446
910
17
71
809
904
520
493
62
791
503
707
847
963
559
536
930
697
930
590
489
47
577
14
767
92
189
682
965
169
920
643
322
296
713
179
896
704
841
778
568
483
329
857
775
146
144
708
365
882
769
431
833
59
248
822
235
195
807
396
407
344
126
347
60
666
701
101
865
269
574
465
353
223
599
534
447
297
840
429
360
162
217
262
24
229
893
275
666
493
613
285
900
477
836
687
123
264
449
350
756
253
839
205
539
220
115
465
74
127
305
24
19
938
836
566
230
724
118
672
913
246
693
832
954
826
10
603
634
18
879
141
414
376
95
964
473
894
219
944
733
97
210
434
511
375
26
519
44
123
842
838
630
249
235
658
715
837
513
194
949
589
80
736
128
317
506
939
627
337
477
891
194
118
324
979
517
388
938
383
961
310
197
362
643
257
270
594
967
865
872
27
830
547
703
864
162
504
136
951
333
733
457
417
361
140
441
326
436
613
435
161
616
490
669
29
910
697
170
777
759
780
724
44
433
107
358
624
677
238
733
424
213
973
150
445
508
97
157
852
102
588
848
505
501
392
40
337
279
558
314
349
140
291
646
550
425
130
66
360
775
630
932
149
891
61
750
469
333
482
858
535
428
571
133
289
113
511
444
474
594
898
782
44
226
68
914
488
892
874
973
97
772
752
630
825
253
197
271
135
98
12
546
746
757
74
977
898
661
190
249
925
893
936
597
705
473
205
948
851
557
654
412
26
239
268
651
885
130
482
553
912
111
745
843
188
910
187
584
682
584
531
843
106
970
279
959
846
85
462
71
469
94
931
616
789
705
768
370
452
361
245
72
947
839
658
715
809
489
587
862
878
847
622
645
518
816
929
28
16
758
143
414
769
661
699
156
99
699
577
735
967
761
622
490
772
891
435
565
115
611
939
355
978
675
582
831
469
900
303
944
307
222
491
762
971
271
656
239
340
331
941
79
118
262
267
49
365
671
867
76
232
780
952
578
951
40
908
971
602
729
193
160
375
789
847
372
532
372
200
625
374
286
264
843
768
279
861
895
552
265
206
152
382
523
848
582
438
442
53
936
38
432
733
92
509
489
755
860
130
883
806
389
36
952
32
330
761
167
218
515
303
963
30
974
303
673
473
412
69
966
601
609
831
113
887
59
433
679
525
540
112
749
599
513
888
169
489
378
956
33
293
136
734
577
635
677
251
682
61
535
202
214
970
862
139
297
394
245
58
925
876
320
314
805
571
344
485
312
513
111
40
426
672
457
934
627
90
250
135
675
833
171
264
479
662
62
300
131
391
826
188
272
365
129
919
925
358
84
341
568
745
624
30
256
140
24
589
962
236
364
221
387
217
24
846
458
599
933
410
481
521
892
818
713
538
595
391
629
279
345
814
14
56
155
936
680
585
122
606
33
957
730
594
325
975
99
487
963
921
518
543
391
547
488
532
343
131
516
471
873
421
596
494
675
463
80
863
279
242
556
923
57
394
739
801
269
717
811
634
527
868
359
553
344
173
238
74
115
124
208
592
801
834
124
156
756
975
236
704
549
79
469
912
252
73
561
699
921
735
947
246
362
641
538
120
165
300
187
674
863
949
598
641
792
906
397
701
142
180
319
870
81
533
970
377
550
783
503
284
19
976
832
444
939
35
38
336
943
63
894
556
955
653
914
643
727
181
344
533
165
101
499
287
439
799
56
657
538
137
367
611
553
747
253
250
438
857
16
21
43
30
280
95
851
965
835
391
759
66
708
720
264
700
686
854
864
140
268
340
534
281
229
120
222
549
884
899
149
101
699
470
742
965
636
13
800
577
839
923
191
368
806
685
979
345
172
478
47
92
44
350
317
670
268
315
151
698
843
619
770
592
299
654
362
889
396
762
317
676
675
878
859
452
271
157
723
225
542
65
583
746
797
286
954
622
770
937
766
420
343
293
773
195
651
171
413
703
29
677
843
492
731
927
148
500
29
85
750
250
503
440
331
967
439
609
95
878
282
533
69
952
62
590
432
445
310
878
951
849
770
377
246
743
162
200
547
190
179
974
138
43
577
720
567
38
316
868
689
615
12
712
102
418
362
620
195
49
822
715
337
153
973
224
65
332
681
223
892
681
437
872
220
218
730
797
436
46
145
427
890
322
749
249
451
187
482
260
457
437
612
701
74
943
387
661
556
135
687
185
857
73
564
659
639
146
847
415
507
647
957
433
263
903
631
785
554
244
476
504
942
407
275
550
742
248
96
917
674
742
952
436
53
862
245
781
498
362
365
867
300
621
606
493
462
498
663
299
877
452
38
347
801
829
124
938
855
195
744
759
11
712
197
603
428
702
167
882
601
220
321
745
115
282
823
76
194
125
177
401
921
196
291
358
494
689
765
273
87
827
789
721
519
138
380
912
919
625
737
906
112
857
729
193
664
708
755
20
257
586
483
468
897
199
941
957
740
55
709
713
163
418
325
944
968
749
831
723
472
183
669
821
301
508
802
701
764
100
619
413
239
441
810
182
910
650
25
124
895
548
617
803
771
348
68
935
727
692
216
79
402
535
697
741
427
521
401
654
678
244
21
730
733
17
631
935
704
85
973
719
65
664
558
414
228
868
592
685
938
279
35
337
16
558
653
328
927
815
502
266
288
279
442
204
931
605
320
180
322
278
796
285
523
14
577
931
482
953
423
211
845
598
525
368
345
627
265
845
901
453
192
487
485
839
943
736
253
560
962
447
534
408
693
504
723
177
553
172
215
366
894
978
185
697
494
444
850
455
625
766
56
112
830
227
430
644
42
667
333
820
214
139
185
435
89
613
436
361
83
892
346
704
682
729
110
803
740
842
950
70
147
862
252
415
600
732
416
553
393
619
100
911
452
388
194
959
887
298
315
301
86
86
545
886
827
376
886
143
913
863
529
480
926
511
791
651
619
904
484
606
316
202
371
591
115
48
667
953
841
436
391
88
175
912
960
404
948
173
23
798
228
384
582
527
558
240
415
100
593
413
748
65
704
78
193
46
894
747
839
356
957
756
957
185
64
123
290
270
68
178
213
516
170
481
612
301
68
907
511
82
764
337
438
847
147
88
367
394
140
574
266
591
597
93
126
489
37
424
960
742
757
171
632
556
726
390
341
837
586
468
41
907
913
927
62
430
973
592
875
272
164
26
209
286
969
821
462
401
258
391
535
336
747
184
826
577
453
173
224
669
907
449
302
833
328
357
670
563
784
19
272
637
701
98
73
968
115
453
97
79
75
781
258
685
535
957
485
57
519
562
693
36
683
742
701
374
535
555
726
113
113
688
58
842
864
797
497
924
290
172
45
445
713
711
513
877
216
808
282
275
292
163
530
932
62
915
564
690
945
489
726
428
863
605
442
420
446
421
438
827
178
604
700
777
847
265
744
946
170
108
744
160
29
532
480
816
715
118
849
463
606
608
119
404
701
319
284
259
396
385
257
950
563
922
757
610
793
352
129
722
888
808
441
104
101
484
600
885
554
138
430
532
641
540
274
428
617
894
77
211
863
814
612
930
645
829
644
407
205
353
884
152
199
10
288
143
108
687
319
834
568
844
564
805
445
783
160
26
409
34
414
165
967
818
575
434
111
698
740
631
268
570
655
496
374
905
165
655
191
350
687
305
398
274
319
615
806
91
154
567
221
877
425
777
202
463
307
438
356
576
326
375
54
541
126
228
580
177
409
65
798
112
706
269
150
267
408
682
293
457
928
767
608
344
456
966
591
805
469
274
324
502
110
630
35
36
620
661
979
301
134
575
715
665
156
345
896
639
393
232
825
741
859
371
943
736
510
777
215
442
588
151
422
336
268
157
492
910
673
451
692
671
724
352
921
639
189
218
532
235
362
675
834
636
139
549
643
460
970
568
327
577
943
171
423
959
402
883
750
821
193
426
943
928
163
645
552
336
576
934
41
505
517
442
10
303
897
914
267
515
913
840
554
434
636
83
583
387
761
277
839
750
842
20
969
904
928
250
16
964
321
880
810
372
656
595
573
91
764
64
705
805
704
232
574
537
175
495
313
124
841
752
226
646
656
910
642
668
907
585
639
182
207
626
622
823
582
842
614
659
414
761
232
462
634
948
746
519
598
158
266
552
160
491
265
781
930
490
834
955
931
573
503
248
333
377
728
172
871
215
860
639
504
788
822
712
771
830
62
20
810
817
360
356
797
416
273
955
100
781
126
141
133
564
462
454
719
829
193
234
269
272
665
312
536
682
713
817
415
207
469
618
709
15
532
554
807
54
720
546
572
582
477
305
68
845
977
906
476
34
163
337
313
296
409
95
978
13
242
313
189
267
963
93
884
646
747
600
324
480
40
280
756
573
614
344
261
300
293
742
796
111
851
707
503
375
235
44
696
678
784
371
514
500
121
502
481
294
530
495
872
380
181
883
339
917
24
95
787
524
686
525
265
291
569
497
958
93
410
651
900
926
556
54
188
109
485
601
602
410
144
856
637
262
546
619
20
805
743
878
648
846
335
310
858
315
293
911
226
261
310
766
631
26
171
108
671
611
832
221
748
715
450
663
884
259
107
963
46
827
694
928
431
940
647
413
504
777
185
311
856
244
417
166
509
455
527
186
866
824
93
278
33
116
238
269
587
234
643
72
794
46
98
619
183
783
645
835
158
815
191
651
686
89
298
425
277
579
192
152
895
619
459
939
743
183
645
957
74
16
602
674
632
799
345
672
99
232
807
38
118
653
306
239
353
244
478
275
545
505
617
279
802
273
243
884
513
563
656
169
380
405
692
588
277
69
125
642
122
604
297
104
474
881
414
15
656
869
372
794
303
195
307
796
255
121
852
620
363
678
735
764
249
457
353
58
614
127
656
865
399
64
653
464
701
752
358
160
218
186
950
334
112
104
958
140
370
497
208
843
662
456
795
574
873
380
767
173
358
72
639
856
861
901
978
528
883
779
442
207
305
447
643
269
81
200
540
114
202
517
935
142
412
333
888
840
931
964
757
187
408
46
242
533
793
611
774
550
971
453
653
332
337
31
952
792
602
137
688
359
552
692
348
362
765
949
686
350
273
84
783
800
461
752
186
636
907
93
797
724
17
134
555
359
59
763
272
155
78
913
772
70
528
66
106
618
963
310
842
518
787
862
676
874
272
240
95
366
339
785
41
487
376
731
215
223
719
845
886
933
441
711
579
798
304
37
758
356
467
669
160
503
607
784
346
927
367
722
615
529
692
666
401
338
644
704
702
276
794
945
743
321
16
948
436
978
217
665
554
135
297
404
229
153
48
469
400
170
131
325
151
294
463
276
341
770
518
296
122
583
357
877
241
250
753
229
885
88
588
112
342
652
874
49
263
688
853
214
892
255
106
404
379
772
50
563
257
869
764
210
872
614
33
960
941
41
685
43
90
897
267
670
297
573
201
344
35
577
813
27
492
373
151
487
546
189
811
330
76
327
450
23
524
966
325
97
622
515
13
60
153
673
737
907
672
172
323
367
573
958
103
565
399
882
242
875
396
959
595
748
596
976
237
134
541
66
648
211
148
591
866
585
952
873
328
510
850
956
132
856
18
483
347
717
436
548
384
414
621
163
61
465
816
180
701
283
522
673
385
32
717
116
637
472
722
344
628
158
299
814
53
492
519
428
965
491
342
847
907
566
185
690
948
915
692
182
221
414
495
775
831
165
634
752
177
87
320
642
313
106
727
287
21
302
467
200
816
160
158
919
843
598
594
126
838
411
179
304
951
49
295
835
178
288
135
484
125
683
579
690
354
142
442
551
110
474
189
125
880
898
112
664
52
151
346
205
950
543
188
360
99
389
427
293
611
14
145
624
74
814
320
399
738
765
268
761
511
390
320
357
879
723
32
288
601
331
226
699
716
716
265
666
687
608
914
495
137
597
224
435
70
843
972
422
29
452
836
653
776
202
607
891
492
516
135
310
101
153
973
663
469
164
699
35
312
356
606
122
162
522
10
773
541
179
634
61
860
408
397
475
560
894
627
486
191
596
630
919
620
24
876
211
843
260
93
178
200
207
110
785
596
422
11
616
875
763
966
30
880
761
647
10
486
899
749
227
548
751
897
637
659
73
677
788
587
488
732
32
941
229
126
235
252
798
538
51
629
160
308
392
958
424
257
933
694
975
111
621
342
670
601
634
955
641
868
538
94
407
824
583
492
465
597
245
529
173
517
275
323
484
82
88
754
342
559
65
111
323
514
871
143
127
433
958
52
843
881
778
970
317
348
740
266
357
531
278
111
76
575
898
475
422
242
689
106
63
443
832
697
38
881
430
970
561
742
339
211
93
49
145
734
821
510
182
657
437
751
96
759
354
857
897
376
733
848
769
220
121
472
216
223
722
423
875
39
50
853
230
519
865
296
544
592
970
434
515
29
320
449
573
829
189
709
884
929
146
180
673
277
386
680
813
331
27
171
256
692
531
210
378
956
229
233
913
21
611
922
614
974
695
426
311
847
134
126
625
298
852
815
182
864
590
941
300
145
771
978
195
330
94
494
21
71
64
214
849
745
268
329
14
432
849
339
446
517
77
26
945
304
873
853
560
328
280
848
153
190
264
749
86
170
346
734
661
118
263
448
450
542
535
441
807
914
881
849
655
690
439
671
619
725
816
441
520
586
516
964
968
419
621
344
256
508
443
372
241
140
119
894
234
362
754
570
849
931
956
528
216
782
649
868
300
192
946
786
46
77
860
534
602
119
936
18
603
220
322
650
377
133
386
108
142
93
358
423
423
247
541
893
879
250
872
18
632
779
691
677
295
336
870
274
781
107
831
698
130
399
25
454
243
900
707
383
196
970
789
132
125
936
175
926
776
184
296
377
212
377
296
795
869
226
971
419
386
525
520
739
250
607
587
770
878
956
443
696
301
165
609
70
830
790
975
938
921
815
31
81
519
74
345
412
463
945
692
745
53
871
923
729
929
725
691
579
735
374
635
695
825
895
204
516
129
47
924
971
553
80
874
430
236
117
628
104
391
872
321
168
239
531
943
593
458
928
327
373
698
828
721
123
45
976
162
355
973
271
379
957
714
955
226
579
351
936
467
190
786
940
332
234
183
810
141
766
866
662
165
242
699
435
296
77
89
133
918
279
704
684
103
691
811
650
735
546
311
910
281
127
125
722
524
694
149
258
804
623
427
870
509
27
213
954
609
787
73
962
230
767
119
99
334
125
810
674
874
948
131
320
200
512
590
260
583
375
890
350
969
453
766
283
462
877
711
52
893
102
201
511
542
264
381
549
564
20
140
444
883
906
21
569
834
976
932
212
464
44
388
415
752
974
210
412
653
270
59
765
561
155
931
856
152
688
685
387
733
732
955
407
633
828
355
429
799
882
672
674
171
558
691
795
630
915
890
602
579
33
546
897
845
897
850
736
571
60
390
735
251
725
193
887
47
589
408
845
33
370
554
585
123
297
618
632
589
148
776
656
34
822
794
162
617
291
245
306
436
685
264
760
619
780
111
285
747
448
864
477
443
44
358
836
536
303
728
536
113
608
684
370
109
242
18
784
115
907
312
12
642
637
915
572
575
286
274
382
604
679
15
493
640
637
833
238
423
79
355
610
883
587
119
553
909
481
221
715
144
768
225
249
365
799
476
444
46
419
764
145
528
606
356
869
837
233
216
640
846
911
795
192
678
437
469
876
323
547
145
934
912
445
219
736
782
980
952
416
954
556
555
890
295
447
19
682
77
814
112
542
733
477
793
516
827
452
553
164
219
775
247
32
580
446
726
434
886
556
665
236
580
148
455
386
776
778
696
953
343
825
67
779
273
466
634
61
220
974
54
282
920
559
961
782
754
60
705
306
263
52
838
222
368
277
33
766
773
183
139
918
199
743
766
642
421
609
931
467
969
569
533
86
67
30
396
16
460
551
10
437
775
832
726
808
20
97
207
55
527
478
446
501
48
224
585
758
582
255
592
562
396
468
613
43
857
402
515
51
53
744
714
834
601
57
352
88
914
340
815
294
369
725
582
188
942
457
140
127
968
101
185
775
738
388
858
591
876
138
755
620
813
73
886
212
746
743
711
134
535
553
921
624
95
221
354
492
817
745
449
728
438
685
31
184
542
768
463
291
741
53
390
441
781
818
910
218
358
565
900
324
384
146
833
663
540
226
510
522
629
539
897
396
496
868
808
740
20
436
825
306
673
950
154
122
575
801
969
937
853
371
952
963
729
74
77
574
557
678
913
379
364
658
813
664
875
830
199
66
686
224
494
380
553
849
813
657
142
845
346
721
332
963
505
115
775
107
780
397
353
112
77
249
153
18
236
646
656
602
935
931
707
885
454
123
718
641
323
774
794
706
618
964
677
657
220
857
674
643
670
708
803
50
881
720
43
865
606
367
928
271
508
376
125
755
938
976
586
387
73
205
188
608
231
164
577
412
50
486
594
343
411
656
35
69
81
844
568
884
761
781
419
55
42
952
312
494
429
939
537
583
386
268
636
578
648
842
613
980
406
459
84
441
470
388
641
662
658
621
728
667
476
251
533
429
277
444
132
835
921
882
184
55
301
975
620
929
42
383
497
736
457
727
768
218
150
185
264
423
779
506
967
453
663
329
826
866
301
921
247
870
182
148
672
136
206
205
27
764
100
680
316
973
164
473
839
574
344
410
628
882
916
591
12
783
404
828
901
105
705
631
545
91
216
43
704
852
381
59
60
173
478
958
173
670
753
432
208
506
37
610
412
417
356
980
666
782
232
185
81
355
450
45
752
534
932
525
481
255
842
729
120
74
803
540
90
941
705
468
414
195
699
790
677
648
555
457
528
480
247
977
334
747
949
868
802
789
202
726
683
660
693
379
323
814
682
703
404
871
332
313
38
213
948
455
417
732
147
202
312
617
629
81
400
293
76
25
754
638
948
59
142
856
391
249
729
665
600
296
60
632
798
541
872
683
332
403
973
132
121
219
713
284
892
669
438
532
674
898
445
329
263
197
812
871
483
789
333
498
512
825
454
786
571
634
661
726
664
582
123
210
53
119
910
528
430
286
463
345
569
470
339
687
804
526
629
421
574
577
807
700
802
611
98
524
780
827
509
716
169
321
449
486
303
424
363
113
592
637
676
751
816
266
344
448
602
841
316
772
682
22
569
159
837
442
23
94
319
957
611
853
508
70
689
445
471
844
191
303
811
751
40
306
305
447
723
71
207
286
237
136
931
686
545
88
732
620
855
635
725
811
850
633
378
81
179
272
741
863
212
361
341
608
886
613
917
727
691
949
675
862
404
466
501
318
935
154
244
482
812
642
427
273
862
84
661
96
386
905
573
853
443
514
476
192
179
414
775
793
643
474
256
257
547
320
171
588
831
320
28
744
931
454
518
456
555
146
352
843
273
352
566
374
364
527
166
374
283
571
974
224
946
93
671
156
763
660
106
694
542
202
139
459
364
479
618
590
451
808
886
609
774
562
65
850
579
765
298
177
564
410
680
652
278
721
353
329
593
36
469
578
911
781
74
881
873
32
593
925
963
449
829
221
951
247
267
623
259
961
840
851
668
613
518
411
110
950
473
364
349
550
340
497
938
539
920
269
780
599
70
786
300
192
346
663
730
797
73
207
667
287
793
135
556
58
502
556
261
63
171
853
83
820
78
128
314
749
466
285
197
249
694
167
399
641
476
278
22
92
325
644
146
457
357
359
278
72
626
43
899
419
959
462
131
798
537
13
421
892
314
381
910
78
768
97
30
80
817
266
919
50
241
952
700
449
899
573
764
20
115
448
525
338
611
846
377
295
330
454
613
427
429
407
452
751
396
724
677
351
238
823
700
298
672
511
355
818
142
21
757
101
816
266
754
636
114
120
661
720
751
860
744
533
180
577
512
783
536
187
43
278
115
712
878
346
276
497
650
611
885
733
889
35
265
713
803
236
743
622
743
895
397
392
645
217
581
110
606
820
850
458
278
79
776
662
738
445
282
414
481
827
280
119
443
465
77
58
316
325
564
757
502
500
30
43
27
328
232
482
469
452
844
688
664
818
653
612
308
593
776
82
352
874
148
482
264
143
525
180
13
814
167
39
952
376
810
310
558
947
589
948
95
293
535
455
715
807
881
555
689
178
542
568
842
754
257
811
414
914
555
374
577
591
319
604
244
91
490
868
672
860
317
575
922
742
964
149
393
837
173
447
963
947
221
335
508
373
822
695
186
172
567
592
941
442
271
404
276
830
483
171
771
684
19
207
26
326
467
934
88
785
604
913
855
137
499
503
850
107
100
277
859
104
693
289
841
299
336
335
127
820
82
145
197
646
530
529
864
949
864
888
135
944
792
67
155
402
498
670
589
749
703
628
305
218
965
635
326
842
107
952
346
477
815
267
56
216
412
390
750
855
882
386
259
103
486
293
670
737
326
534
699
737
627
959
926
624
817
201
585
933
689
816
492
563
142
143
95
407
664
877
138
69
510
945
748
156
398
344
834
610
52
362
673
944
220
343
153
128
747
234
126
116
118
496
184
818
973
678
325
722
571
561
560
842
856
99
250
787
423
681
865
322
624
934
287
251
29
348
181
261
362
11
256
235
613
772
845
423
250
84
102
968
420
176
253
896
810
749
322
31
729
246
594
747
128
784
952
337
381
256
739
145
436
759
927
114
237
283
867
361
758
453
959
289
653
216
845
459
558
831
637
749
809
24
570
665
933
706
712
946
885
438
489
398
317
101
226
335
63
273
321
636
771
277
117
951
890
961
683
965
275
933
143
479
223
454
660
71
526
483
818
76
652
415
19
613
775
908
152
616
849
329
817
690
287
529
209
753
665
304
302
272
225
12
170
805
388
282
201
733
127
692
574
509
684
518
608
620
871
458
384
755
233
78
642
36
745
231
32
711
338
816
581
128
873
935
278
978
584
858
511
846
580
537
129
178
883
814
469
536
931
568
131
402
250
395
360
640
488
509
676
292
562
637
623
835
150
210
386
119
105
835
816
433
510
555
882
283
618
317
388
682
238
692
458
711
699
40
669
431
554
425
962
102
46
805
694
886
420
847
395
35
690
856
132
255
17
318
927
917
199
544
702
917
574
170
698
462
725
470
475
415
603
282
447
951
800
902
664
416
50
417
560
628
511
845
887
786
610
82
860
681
21
489
141
748
383
221
600
320
44
154
879
978
640
499
306
288
866
499
727
181
615
505
923
535
924
672
879
951
884
113
43
766
524
831
496
133
686
821
534
251
678
227
626
468
327
15
279
323
140
925
243
773
438
626
540
461
867
834
215
932
775
33
732
757
144
806
731
924
128
358
365
820
765
643
222
363
980
911
556
934
249
224
224
884
873
828
929
362
631
185
722
227
577
849
837
661
389
977
88
583
884
479
908
934
405
612
973
140
665
114
964
403
557
174
15
829
143
578
58
824
284
803
934
68
849
419
432
541
306
102
828
688
557
894
601
975
26
569
552
849
591
101
791
142
169
353
602
919
291
978
456
745
714
295
353
148
193
950
206
450
60
740
76
942
497
856
650
302
219
258
389
663
448
339
129
150
444
297
742
566
517
64
714
331
401
490
210
525
363
818
326
122
175
360
520
244
378
577
356
695
527
878
436
660
758
917
334
89
778
546
632
377
211
868
654
151
300
215
251
97
181
351
539
578
90
868
557
380
581
583
243
279
443
770
871
531
961
811
400
44
512
756
305
474
263
853
10
559
321
671
614
768
169
136
798
514
413
781
221
40
381
574
552
343
913
516
605
566
117
967
29
306
736
378
26
576
961
882
666
692
483
407
435
793
776
454
270
113
963
779
728
656
686
783
65
488
225
531
727
179
693
583
390
199
702
168
42
60
436
536
713
700
418
926
363
320
628
452
233
374
71
558
211
212
292
403
839
179
498
565
367
719
895
552
149
381
273
61
431
132
910
83
63
75
630
360
303
786
953
141
10
265
895
745
288
576
911
78
613
231
506
950
617
721
397
807
476
368
242
217
234
110
945
417
89
788
852
14
805
837
201
915
297
302
792
445
743
286
235
168
625
43
32
859
696
942
799
548
682
807
405
767
353
58
903
536
311
364
915
900
704
917
444
145
472
316
608
504
557
757
863
645
14
365
206
178
428
587
886
423
46
458
411
79
889
723
630
504
787
517
98
978
934
402
526
163
937
923
331
139
526
527
922
338
378
220
71
283
377
121
782
432
92
787
728
206
697
111
79
802
891
215
210
713
454
753
325
419
58
166
333
780
22
434
308
902
967
932
19
879
725
501
888
791
717
119
343
549
752
296
552
103
692
226
704
820
549
653
466
357
373
748
353
511
213
280
825
546
771
477
49
57
943
671
826
272
248
246
608
687
135
212
683
101
917
887
175
81
401
118
124
292
839
639
479
869
819
36
289
670
456
355
419
502
322
234
473
305
631
151
378
742
707
819
522
260
390
873
408
247
770
790
155
53
466
594
30
169
39
546
205
858
979
137
548
753
718
20
808
757
604
586
475
658
243
593
129
514
641
583
201
504
257
721
475
579
940
980
592
677
243
304
870
698
60
663
100
694
132
424
791
476
453
951
866
224
681
499
20
150
585
283
526
160
225
416
745
219
558
473
611
388
515
310
145
927
225
39
823
118
752
699
499
356
526
690
926
843
27
105
787
511
767
623
88
217
169
187
218
610
980
663
59
710
947
451
194
425
636
678
576
457
772
33
416
59
731
454
233
830
412
431
799
603
674
755
755
524
131
720
447
271
88
807
628
705
238
260
807
509
238
319
363
427
901
454
807
797
812
801
413
192
404
280
367
257
207
161
405
858
328
855
81
797
481
445
700
414
849
19
766
469
461
345
594
170
865
306
927
720
523
451
345
631
269
663
396
581
545
501
169
95
396
579
185
567
847
190
734
142
344
589
585
946
507
406
232
782
541
280
372
686
460
180
568
932
830
185
448
77
856
299
507
515
494
699
341
683
248
616
976
584
946
37
542
652
756
738
933
714
106
715
966
498
166
863
456
31
347
558
917
286
239
822
523
168
618
944
917
663
51
300
938
677
81
585
364
53
19
351
796
80
744
735
346
587
764
965
410
908
579
121
110
166
706
37
763
110
149
83
305
136
270
887
622
38
369
455
675
918
184
28
62
967
860
350
306
640
855
341
121
123
857
79
84
68
613
262
523
346
644
478
892
793
565
108
793
196
778
698
235
227
152
108
963
527
962
182
200
501
558
538
187
882
499
490
386
375
760
369
468
756
613
518
833
19
343
333
409
933
841
387
960
244
275
465
691
883
213
711
204
381
737
232
496
22
46
712
589
636
963
199
10
785
858
584
308
54
152
704
857
867
890
593
724
800
518
382
883
467
681
568
315
830
18
178
137
41
223
215
757
752
654
841
817
291
59
244
251
878
190
676
785
560
139
395
271
34
198
722
690
160
517
354
790
511
912
901
854
514
418
891
923
24
389
825
806
291
278
260
546
116
935
520
450
117
408
793
915
562
917
180
925
794
613
887
928
702
313
169
533
887
298
361
487
879
496
957
608
164
262
10
261
459
500
555
725
671
409
543
123
640
596
974
688
639
685
283
674
617
247
680
834
287
647
632
166
489
72
843
321
456
898
413
312
656
121
418
970
293
636
87
349
494
131
13
613
756
803
597
73
100
416
368
664
239
48
888
841
733
243
516
230
823
133
22
671
242
875
847
752
189
860
963
597
622
767
935
186
567
471
943
399
641
182
404
621
946
688
836
687
530
141
244
878
627
141
261
102
802
592
824
672
675
595
531
59
279
42
328
900
132
871
364
316
321
76
248
944
597
711
159
934
637
775
911
775
682
447
291
171
927
114
79
467
67
371
607
648
15
791
311
437
938
128
350
216
67
157
748
91
826
459
687
436
391
662
514
827
53
451
159
390
60
143
516
619
400
67
973
962
432
792
488
153
644
966
134
58
565
470
921
261
743
433
474
374
860
272
192
970
619
907
850
171
826
31
476
535
28
548
856
310
915
968
139
218
528
71
116
756
237
965
415
141
427
674
458
903
26
904
800
888
583
221
890
414
692
336
519
337
595
341
860
611
221
441
473
98
314
34
945
904
845
708
837
525
949
156
864
169
239
576
480
531
898
152
899
370
41
773
911
224
853
647
625
801
35
499
674
710
677
792
733
634
392
708
917
268
765
168
456
490
697
770
659
277
709
821
362
58
295
604
267
196
856
472
948
918
288
203
239
662
878
22
469
513
634
782
398
420
206
625
244
125
477
50
254
813
959
485
39
183
646
212
217
196
660
535
472
786
491
52
608
689
804
824
133
94
801
379
60
489
31
464
701
820
95
61
861
355
505
457
623
635
685
731
413
908
600
513
786
390
65
511
639
535
884
758
965
52
273
249
256
829
479
507
25
498
590
90
253
274
195
620
102
489
166
704
143
143
487
368
307
693
703
63
189
630
209
577
341
489
449
89
381
370
18
624
847
396
558
906
835
529
852
603
473
950
391
652
621
728
843
689
468
275
638
955
842
923
619
385
197
735
247
174
37
80
374
469
600
285
742
507
257
203
392
793
940
162
936
62
85
266
929
748
967
834
359
112
470
251
913
870
693
757
540
537
851
323
41
42
858
952
600
455
131
963
501
936
567
806
780
955
623
599
184
478
521
540
103
221
782
586
451
199
865
939
673
621
478
948
730
195
728
169
47
178
806
102
313
100
597
310
790
805
632
312
216
11
893
818
37
274
13
903
475
80
471
701
700
195
921
132
742
62
111
124
449
260
903
636
704
643
973
680
572
530
264
828
926
335
503
398
422
446
942
417
954
702
773
90
48
138
453
419
531
71
166
475
420
549
82
182
242
673
832
580
635
957
468
46
197
636
913
362
134
584
582
41
448
951
665
193
858
284
660
457
42
290
278
550
185
52
943
889
311
454
541
635
631
142
479
406
105
529
888
673
496
844
71
28
526
855
649
264
375
797
583
838
832
674
77
881
193
512
537
499
238
178
499
916
718
702
455
621
63
295
78
130
46
689
15
713
14
26
438
151
310
569
26
380
85
753
157
201
669
646
121
373
874
404
606
358
16
384
72
30
344
61
763
319
225
761
582
456
406
165
20
14
972
913
769
947
826
362
702
244
936
707
374
176
794
588
576
776
499
576
586
96
705
370
18
106
614
806
364
367
11
854
653
626
887
735
601
609
249
505
540
308
962
429
353
498
810
548
382
18
582
101
286
553
289
725
427
785
202
870
270
124
239
78
730
286
198
112
85
251
35
831
57
358
160
367
169
379
450
519
646
108
691
458
654
877
534
590
617
651
894
606
857
216
490
712
437
396
858
68
154
947
700
807
762
188
879
346
526
392
299
377
873
438
316
671
480
519
300
812
707
841
71
558
192
881
537
324
294
894
909
746
918
387
352
160
438
794
409
553
675
555
634
138
164
827
776
705
113
233
137
975
335
664
15
848
699
448
356
304
968
536
694
437
417
185
967
629
796
32
950
259
669
950
32
539
70
194
245
91
611
693
786
288
593
391
162
875
739
326
353
916
864
198
123
569
498
677
501
730
771
454
778
755
826
575
980
32
658
618
970
603
855
597
372
323
407
949
205
511
569
69
844
223
307
92
86
209
596
193
621
638
669
423
576
623
804
654
226
175
86
622
718
120
307
697
143
943
744
809
821
798
764
472
975
123
817
45
305
389
737
250
611
66
325
614
668
959
159
952
284
949
532
521
514
678
295
936
38
372
972
50
771
960
459
642
48
563
788
952
186
389
412
655
921
180
962
164
517
934
575
448
505
628
861
206
224
849
481
355
544
970
597
739
862
627
42
111
72
92
281
466
818
762
29
269
364
278
139
164
796
863
749
866
824
939
292
441
120
866
25
295
425
420
576
339
914
565
66
461
767
925
547
643
32
568
420
91
451
138
171
345
974
406
962
424
814
95
934
117
851
49
188
351
639
866
707
949
748
872
537
823
640
264
649
598
965
747
523
866
654
24
899
931
333
602
339
151
279
909
866
132
870
97
194
47
484
175
580
373
466
30
710
467
106
72
879
330
423
569
890
194
649
888
70
963
553
296
879
29
391
677
624
873
721
455
71
686
504
637
410
519
652
38
368
333
62
168
77
16
891
143
98
833
869
529
637
693
408
591
717
319
552
17
553
125
461
857
657
648
298
923
615
626
651
918
596
353
536
429
921
660
531
549
911
597
963
66
146
597
198
433
890
282
970
254
844
352
138
217
502
143
676
700
821
863
232
367
23
642
433
725
399
868
261
330
219
83
833
398
739
322
701
437
521
643
700
640
155
57
523
773
239
260
749
236
172
891
176
478
442
239
462
344
619
62
305
269
707
668
272
442
153
365
521
121
229
980
548
533
112
847
418
441
167
131
393
245
154
467
967
869
25
422
554
671
915
354
41
244
532
715
172
415
245
934
800
477
435
658
222
268
377
93
323
53
795
565
187
816
362
650
877
139
397
608
517
670
548
824
205
108
232
321
478
612
500
796
825
963
67
977
54
488
235
805
253
737
628
100
715
744
788
595
843
741
875
935
456
469
625
432
804
358
690
260
320
306
619
149
393
339
608
556
691
819
788
369
159
328
548
949
465
144
440
505
493
920
615
783
372
475
739
249
758
350
232
629
941
787
194
951
902
943
425
607
928
413
408
527
403
10
653
24
547
140
430
50
252
426
22
958
299
241
568
211
125
757
807
505
278
959
863
349
976
626
133
735
393
213
926
78
434
67
496
787
661
132
624
342
794
145
966
184
918
851
697
298
856
526
628
439
53
913
104
215
701
866
823
55
547
710
882
909
268
645
961
405
774
925
58
754
348
921
441
128
772
542
815
644
125
885
147
678
639
299
718
236
546
284
859
379
617
282
456
637
711
817
770
88
364
815
437
433
451
383
42
775
188
279
818
50
385
514
622
375
695
546
568
102
630
797
841
69
222
931
488
652
782
106
550
489
273
107
208
630
622
86
521
675
731
300
931
375
830
489
245
889
47
307
102
521
569
581
830
53
979
123
706
811
662
891
345
941
603
624
293
246
480
940
196
481
966
16
413
275
801
819
407
284
876
767
509
384
282
584
637
381
226
451
851
792
808
563
974
741
378
127
867
880
763
321
551
638
208
935
705
44
779
82
470
623
977
349
127
635
201
70
248
284
74
228
623
558
481
534
392
675
345
433
951
440
657
445
643
808
167
34
448
78
759
872
102
565
172
505
411
379
627
372
113
41
606
198
780
598
573
645
705
939
944
697
649
183
135
710
674
622
862
284
903
568
810
84
478
800
955
785
814
306
117
555
682
26
837
781
274
956
950
891
815
469
450
227
366
334
586
519
334
879
791
791
240
644
769
436
924
943
652
802
182
565
373
259
384
661
309
873
738
217
398
910
286
470
686
223
506
563
298
619
80
657
139
952
438
714
376
738
286
556
716
361
313
849
413
812
924
521
804
439
708
764
182
553
607
771
895
115
650
478
831
336
517
319
333
466
716
630
23
805
967
523
343
555
386
701
944
569
826
498
225
858
721
828
119
310
262
908
719
233
355
331
864
333
562
644
544
478
180
669
904
303
692
198
421
209
599
351
396
562
81
800
188
296
794
968
806
726
924
162
961
85
452
932
641
111
481
944
427
949
657
790
398
355
291
917
447
774
248
134
540
488
426
570
788
568
560
357
499
180
401
652
121
482
235
740
80
876
923
712
27
386
971
403
531
69
911
944
643
263
628
629
861
377
78
812
733
66
826
707
340
246
29
695
85
56
751
475
863
864
715
33
768
309
521
856
554
169
755
89
618
350
798
267
355
789
853
943
768
147
302
509
574
162
966
23
658
593
447
573
729
79
586
43
489
36
707
11
99
550
497
427
324
405
569
547
69
708
125
400
11
960
759
687
270
606
844
133
938
382
950
419
32
145
445
777
574
95
769
875
266
546
447
649
757
931
602
553
949
579
304
500
958
388
168
61
835
20
477
420
27
470
261
221
965
746
674
653
874
751
778
394
282
255
249
155
857
135
480
47
58
422
326
641
150
847
454
462
667
83
182
194
110
502
732
796
226
176
798
444
426
796
893
373
862
41
642
14
492
886
810
894
802
397
176
159
765
44
121
676
547
873
208
842
735
412
160
829
763
198
274
624
172
662
245
606
545
143
27
906
128
687
487
99
958
748
739
705
624
700
249
59
38
432
769
718
180
654
770
879
410
271
491
66
972
620
150
220
728
736
49
601
613
666
294
30
852
255
602
458
789
308
960
613
768
100
648
897
391
88
852
644
392
298
94
118
46
748
184
730
21
556
451
818
22
185
599
329
321
575
425
735
535
807
424
163
71
548
833
315
280
466
167
666
610
363
393
869
701
203
35
310
926
515
94
721
640
11
61
511
617
893
213
101
508
819
32
95
807
412
308
17
893
251
279
808
789
389
198
317
778
883
527
756
283
959
857
29
773
87
583
618
17
862
887
554
365
349
392
360
59
35
436
505
358
46
596
521
174
592
92
374
140
151
391
812
393
901
706
322
355
915
174
614
224
185
581
171
580
648
711
865
648
895
17
107
400
437
456
889
551
513
628
244
130
728
462
820
870
812
795
571
395
147
795
136
303
513
881
70
204
617
964
719
565
890
309
311
310
813
949
720
838
764
474
249
71
746
843
941
169
117
369
636
630
331
195
965
65
398
959
38
449
811
234
279
140
867
869
70
705
355
573
547
914
492
522
20
389
213
610
854
797
241
559
623
150
52
915
183
307
30
951
706
408
426
903
208
65
262
886
408
769
248
444
620
540
700
841
13
684
565
831
399
340
204
583
508
595
746
888
826
623
542
491
404
20
81
136
920
631
96
558
253
544
766
951
573
585
23
169
697
538
678
591
187
149
70
873
461
573
158
611
209
654
173
249
764
698
874
910
550
852
200
307
853
870
802
396
451
377
89
265
542
539
108
741
387
268
454
921
833
397
753
966
714
702
582
449
845
306
128
726
502
905
670
432
498
804
724
263
102
408
412
287
708
462
632
605
259
889
232
44
752
429
367
749
819
141
959
398
301
331
789
887
930
463
110
939
791
596
42
618
906
426
466
686
132
746
813
317
74
898
693
698
118
498
281
884
847
957
344
582
284
295
65
923
166
471
859
380
547
210
258
622
720
643
39
841
178
704
827
626
640
633
964
900
126
321
789
693
28
542
313
611
40
555
683
161
818
653
723
408
595
207
241
395
122
297
930
866
858
152
174
63
897
510
409
271
889
829
892
895
923
12
767
353
746
535
349
709
795
105
376
930
255
184
873
508
388
930
220
338
729
52
854
22
914
923
135
250
604
194
361
848
657
220
45
755
590
40
925
45
265
805
297
864
887
809
834
94
274
506
395
960
845
301
32
729
505
497
604
507
886
536
880
689
869
365
501
174
133
187
229
272
182
894
136
682
592
749
253
636
707
432
775
782
835
838
954
59
128
481
119
403
976
894
950
947
67
399
521
845
959
884
690
573
676
182
615
103
150
342
202
820
435
859
383
629
777
830
389
96
320
548
355
186
319
668
568
841
334
281
542
932
204
25
669
428
886
374
153
150
471
967
118
145
694
733
495
381
406
149
120
711
57
732
482
661
336
637
209
670
362
202
495
626
36
330
239
113
23
913
151
745
225
194
839
290
341
609
427
563
599
573
258
277
434
81
18
566
414
139
860
471
431
127
483
220
76
551
277
268
181
568
210
504
609
389
614
759
876
318
691
502
497
29
130
235
165
846
824
26
391
143
456
303
165
101
331
560
689
453
393
113
93
760
751
143
210
85
936
18
303
546
160
39
38
24
327
195
391
315
639
489
127
87
232
436
58
665
898
618
944
684
252
685
841
877
638
592
79
912
640
306
761
261
703
464
391
544
588
351
432
42
898
918
92
392
875
312
759
464
974
218
947
291
584
954
51
392
971
752
736
227
309
191
836
55
405
339
566
822
166
589
503
477
575
105
521
683
338
683
382
765
475
763
931
479
511
706
49
854
577
244
35
368
745
942
754
376
66
217
83
464
317
833
695
649
365
38
846
336
882
818
306
592
588
635
305
296
289
170
919
948
244
687
766
486
495
868
110
893
963
527
893
12
728
755
708
632
436
306
451
198
712
32
780
420
695
261
193
383
379
765
520
326
148
199
834
173
19
952
888
399
389
563
220
376
88
951
582
452
166
814
671
26
925
168
525
413
624
204
887
360
437
512
699
289
770
891
710
678
855
624
933
145
355
824
24
449
816
101
227
204
803
644
808
810
576
565
86
148
595
253
929
904
92
737
587
543
98
810
272
769
167
340
550
283
933
874
430
670
409
31
103
722
116
557
903
477
912
198
892
793
779
576
193
895
479
578
216
144
189
54
294
742
360
670
691
670
267
696
957
647
337
635
389
412
682
74
854
729
685
807
606
317
551
205
454
917
218
155
411
555
362
99
476
568
573
545
366
521
403
957
161
397
176
45
688
299
549
569
909
654
531
830
449
121
787
887
171
71
899
370
635
451
840
679
426
927
283
294
648
149
207
117
390
674
814
303
881
502
948
840
550
93
129
964
787
946
931
522
709
70
150
427
782
261
189
624
519
162
971
686
627
529
60
375
453
788
117
34
896
434
551
664
299
151
377
158
888
201
514
461
449
149
716
259
482
572
434
705
141
150
919
340
960
184
84
915
526
890
566
801
876
730
977
145
435
616
867
804
709
292
494
561
199
766
305
562
902
232
585
858
510
468
310
489
625
579
317
885
113
397
231
267
875
68
360
121
203
30
740
233
861
681
275
833
553
247
726
607
448
161
406
219
335
140
905
14
729
284
51
477
140
101
781
207
741
192
936
647
538
219
722
515
315
922
531
977
123
103
582
937
199
61
485
463
748
945
11
386
654
952
633
246
742
415
180
97
937
958
34
493
475
861
610
822
36
636
976
726
299
980
406
594
155
463
369
111
160
461
209
668
680
62
800
96
293
963
26
589
355
775
556
837
603
852
576
881
609
402
886
766
538
466
242
226
826
481
16
696
350
854
960
315
923
449
476
639
392
865
888
491
246
963
721
120
681
395
109
10
958
124
911
253
944
868
247
505
478
944
684
539
807
206
381
658
948
738
471
518
962
903
269
564
725
550
740
866
780
589
206
255
314
449
976
525
846
57
73
836
757
793
128
759
532
301
491
488
200
200
737
727
151
805
440
273
352
489
909
178
256
164
629
167
944
369
546
628
306
467
65
508
643
444
214
510
814
918
249
441
431
11
53
426
267
505
731
963
703
956
926
940
93
714
944
801
388
176
531
252
799
486
875
95
548
29
911
659
148
963
11
392
570
717
315
301
881
307
133
817
382
820
489
457
387
775
817
670
838
767
439
478
604
14
427
773
290
110
713
142
57
847
125
622
775
696
340
682
609
47
764
741
41
46
302
754
67
512
732
389
565
961
202
685
185
76
867
349
57
400
460
902
312
342
505
136
424
357
442
24
496
524
791
926
411
456
670
697
344
253
486
544
589
776
108
738
55
713
552
280
310
885
657
51
389
667
530
123
149
717
782
635
172
599
472
821
363
864
424
671
271
497
792
287
453
689
909
608
124
133
776
945
261
638
672
426
834
109
592
68
299
201
61
329
819
121
293
179
687
704
241
390
323
190
935
808
139
739
853
239
716
251
977
281
607
552
918
899
41
707
858
605
218
828
605
302
41
363
759
694
478
76
21
316
32
452
928
19
950
296
558
120
299
696
379
869
342
21
598
352
152
267
590
846
348
463
442
734
380
958
669
502
815
296
206
572
556
148
907
122
51
582
242
57
544
740
475
483
363
431
312
500
64
670
71
60
306
226
846
731
286
183
129
842
618
460
10
274
720
209
590
604
149
444
134
35
957
435
834
835
463
44
64
522
123
525
651
506
393
723
799
145
41
315
248
117
210
870
88
360
829
902
184
391
37
661
261
702
734
372
962
376
288
613
909
723
823
420
228
43
972
921
612
87
344
899
354
977
612
335
896
126
655
12
174
943
696
64
923
390
892
870
517
30
942
949
931
535
179
240
414
835
110
965
185
447
824
188
171
689
432
397
18
943
547
68
504
452
788
214
454
961
44
432
214
771
890
781
754
514
580
289
40
349
198
357
447
895
854
745
243
391
814
647
183
537
173
894
780
376
161
245
808
488
432
188
405
513
893
344
798
459
683
62
559
470
243
397
822
936
598
552
377
772
783
688
622
768
952
173
22
190
814
269
51
924
380
641
262
311
43
885
560
110
180
552
136
495
946
744
807
823
691
357
305
314
55
716
170
286
38
661
211
728
540
916
201
515
138
972
138
693
271
725
847
976
31
931
88
957
542
404
475
223
389
978
606
415
96
900
75
542
877
262
553
890
452
58
352
521
726
786
735
187
465
297
101
591
961
843
197
892
286
781
406
631
508
674
50
771
822
23
307
91
110
149
966
899
189
35
649
157
62
678
702
443
532
711
35
595
118
530
958
192
225
873
498
182
238
299
31
285
16
230
419
583
616
927
503
33
840
236
207
238
103
852
32
921
43
843
431
699
128
346
186
812
774
967
439
592
200
264
157
553
82
495
418
312
356
129
681
634
54
433
548
442
749
143
10
225
271
626
580
227
748
817
16
285
403
165
461
825
473
846
31
240
263
181
768
300
789
905
477
921
68
74
923
98
16
750
931
224
254
374
612
745
253
45
196
229
206
441
202
34
69
427
765
343
68
851
852
926
349
564
946
291
67
224
148
252
489
339
780
431
361
252
170
401
324
337
132
417
601
785
48
213
796
652
339
913
824
276
411
613
253
767
769
106
768
406
443
158
142
333
855
863
29
394
654
714
241
237
704
669
80
839
139
308
189
505
251
899
183
31
508
970
862
210
854
383
958
254
827
294
110
838
326
616
388
329
44
705
14
860
273
605
79
316
181
710
477
619
179
158
124
752
556
377
398
181
678
913
899
600
165
775
246
68
902
427
716
331
844
371
377
191
924
669
744
498
293
364
625
515
524
686
936
846
77
674
913
253
157
42
733
220
520
801
432
640
285
549
245
740
561
403
273
911
823
879
626
292
870
577
572
137
644
221
215
550
943
30
390
282
580
202
212
389
391
958
409
545
231
310
117
723
612
228
771
438
479
798
208
378
849
427
80
929
577
857
670
391
722
420
291
704
446
770
904
469
362
434
196
406
676
918
462
60
346
398
631
242
544
209
803
139
102
820
441
12
742
618
980
975
912
862
569
872
489
946
290
199
896
707
50
346
399
683
530
870
808
479
716
231
498
581
74
644
976
305
880
399
769
264
216
242
868
127
846
252
877
34
852
165
371
191
540
162
67
383
113
95
609
566
785
899
240
815
60
177
173
264
465
661
135
508
385
678
478
19
933
487
391
141
904
126
323
460
644
721
237
127
927
204
512
332
637
35
175
808
425
442
119
272
273
538
79
354
517
739
898
192
316
425
523
913
391
29
345
346
200
442
817
726
165
391
811
939
458
253
942
346
369
483
883
124
290
397
780
31
445
168
385
378
231
905
767
971
427
468
515
633
266
823
515
233
202
291
516
130
877
841
812
258
782
309
618
433
354
776
199
736
772
562
273
760
287
670
528
146
141
382
295
329
487
616
24
805
959
850
306
873
76
360
145
628
907
171
830
694
384
58
344
688
152
304
639
109
686
299
830
894
770
134
760
322
621
929
82
101
396
519
883
56
697
60
862
604
634
395
315
355
326
787
953
632
382
82
516
220
565
263
967
298
948
413
83
886
140
672
918
914
684
16
294
711
869
108
72
491
408
430
28
486
96
43
589
586
742
168
381
476
406
886
785
762
40
931
915
975
824
328
386
27
113
27
854
894
687
62
225
205
850
625
851
348
812
486
476
527
409
293
830
895
587
970
339
957
724
109
696
716
926
698
263
788
421
861
234
788
802
974
814
812
356
218
717
458
375
188
692
748
485
847
172
415
181
769
958
211
16
319
709
433
865
371
21
951
294
908
599
689
859
394
825
535
226
658
380
886
349
280
383
564
309
10
576
199
687
938
840
705
975
698
179
69
268
243
563
162
674
210
36
221
922
603
342
373
637
111
14
899
914
323
499
228
933
310
251
860
191
401
844
95
829
667
919
872
564
544
881
924
79
722
372
925
582
15
111
932
461
249
554
658
741
641
476
376
909
289
128
206
703
232
404
240
534
911
410
520
431
80
344
195
63
323
737
924
216
631
212
948
767
906
686
51
376
937
621
271
784
368
404
325
286
120
689
879
212
262
457
228
98
947
550
720
970
945
49
196
272
100
283
893
879
383
958
764
971
331
715
560
673
550
956
786
705
843
723
532
564
431
513
864
488
816
878
734
731
231
45
949
360
728
70
887
412
637
517
841
372
327
116
292
88
586
284
410
927
915
309
552
245
805
96
326
869
156
580
938
691
972
640
456
492
235
837
869
308
904
114
54
751
844
90
229
264
647
494
715
873
203
634
976
800
727
975
841
594
884
863
637
484
591
475
49
693
294
140
961
814
702
857
452
336
784
85
811
933
310
751
485
597
618
618
685
536
608
669
404
933
166
43
649
846
349
359
198
129
317
196
136
431
236
186
883
884
871
536
277
553
72
248
827
102
605
571
171
725
501
428
687
241
554
205
385
482
772
848
628
360
259
436
888
841
83
391
438
607
815
932
558
847
86
26
739
266
273
786
881
709
336
163
874
793
294
54
973
693
443
493
721
683
690
516
671
124
40
566
192
660
834
139
686
120
897
897
130
948
963
897
198
921
353
145
896
822
499
361
518
394
893
398
614
492
182
343
620
976
50
910
225
900
364
519
14
367
389
259
545
724
880
723
117
914
779
201
219
449
148
321
879
746
725
54
279
806
680
205
57
304
415
345
766
548
917
330
917
730
694
826
667
770
567
697
918
364
672
723
700
770
153
776
823
297
828
755
733
673
924
84
766
215
887
142
222
476
160
12
909
63
477
268
124
943
828
655
401
473
440
357
289
600
974
351
881
977
529
298
328
832
892
330
785
693
112
312
918
130
458
943
561
211
852
478
462
793
133
394
679
912
475
397
825
157
347
641
227
130
471
410
522
295
835
888
746
754
20
169
578
187
245
367
196
448
935
725
472
153
268
105
765
612
134
427
666
976
460
177
124
10
627
938
599
721
395
715
196
129
664
624
919
75
693
943
813
469
784
970
149
502
172
630
250
716
111
495
253
376
817
582
715
631
551
507
129
193
54
810
48
46
583
848
684
261
761
401
887
375
673
711
596
296
109
758
419
727
12
813
322
573
268
69
150
367
350
591
689
256
220
131
655
321
175
507
27
63
176
143
651
695
271
476
11
824
855
276
623
63
749
68
149
117
422
781
901
210
255
14
463
950
414
148
557
962
184
960
191
274
342
902
183
921
727
937
976
598
180
606
52
954
215
635
912
489
291
125
405
430
957
590
639
108
647
147
194
208
600
255
925
354
157
175
530
747
269
850
362
645
444
458
304
559
972
183
399
15
703
68
762
117
878
633
236
407
188
763
523
287
560
142
259
563
238
207
843
244
151
138
721
977
662
749
979
486
609
283
553
918
286
504
191
763
409
543
817
558
198
102
782
548
262
418
645
332
634
533
706
350
698
67
486
445
10
308
888
700
762
687
747
247
446
32
208
749
119
328
88
185
884
950
364
681
341
552
500
175
473
738
547
523
899
380
924
215
432
976
575
914
217
194
123
491
914
514
618
752
202
402
101
870
13
358
76
868
674
706
232
385
889
705
177
735
88
772
299
931
589
978
640
104
968
779
968
269
277
62
210
846
227
139
617
239
415
727
739
664
316
236
673
168
539
54
538
578
754
163
755
701
377
719
941
305
584
196
41
752
139
499
316
333
781
682
468
413
810
282
379
224
778
322
95
660
808
582
858
526
630
905
14
465
472
64
162
395
309
439
285
633
324
908
555
686
132
175
425
840
478
593
923
138
339
545
105
297
289
762
151
62
557
481
158
629
511
921
435
814
951
698
281
171
720
494
566
791
903
726
431
493
109
861
492
412
974
743
75
864
441
597
542
201
677
177
512
181
82
877
235
158
227
786
756
923
851
70
887
824
178
852
929
432
204
648
870
149
307
137
503
888
970
772
807
327
275
461
37
793
580
527
26
40
80
121
703
640
34
851
905
849
729
849
680
407
244
894
27
43
499
816
555
306
221
212
911
858
129
189
468
81
78
532
573
440
162
423
871
817
487
909
690
388
360
637
153
707
245
853
591
695
61
889
164
166
901
545
955
219
656
119
12
456
884
40
205
177
381
69
525
315
13
233
346
678
304
224
69
224
721
691
457
186
221
603
237
863
35
20
469
346
552
298
963
554
583
665
820
158
234
87
562
836
970
727
680
103
613
319
663
131
114
66
943
641
88
829
50
580
401
426
168
944
118
43
774
147
19
843
219
896
58
776
950
878
474
11
43
521
185
115
418
834
680
210
318
560
164
109
509
145
20
858
528
197
98
547
587
93
838
688
932
393
615
853
356
380
77
888
432
635
349
96
295
68
28
483
578
459
783
146
959
51
263
539
348
74
263
656
263
109
609
751
856
514
86
558
402
511
172
691
339
253
423
350
596
652
712
333
966
702
209
150
545
894
655
826
639
937
528
227
810
674
107
568
958
265
649
685
153
173
911
951
762
734
61
35
149
445
329
671
110
885
251
620
851
417
316
823
94
889
85
147
914
10
352
283
735
138
296
777
549
298
514
376
541
573
408
671
917
447
920
507
921
168
150
591
345
273
863
777
38
490
564
853
614
845
768
399
293
446
789
197
380
323
46
263
102
220
343
501
174
903
774
75
677
853
753
865
136
430
878
775
897
536
688
615
952
93
618
568
66
328
144
29
364
317
22
724
657
346
751
832
506
125
842
825
198
26
410
173
639
768
851
32
101
785
464
48
566
161
442
871
935
173
205
448
107
73
603
334
208
956
771
768
97
768
605
398
98
110
519
656
122
299
560
199
108
814
894
26
928
468
616
40
744
555
636
898
118
922
465
312
148
891
683
919
779
845
187
555
912
161
312
923
468
75
333
44
434
611
801
699
428
518
181
834
199
451
651
923
707
525
286
58
444
81
223
544
449
53
615
771
785
911
673
580
768
85
886
896
137
247
264
111
383
343
357
113
923
258
452
977
154
823
611
131
28
639
291
566
280
733
554
557
179
424
918
70
837
601
544
795
126
966
480
378
90
151
814
482
153
770
662
52
112
222
505
711
622
340
131
967
442
742
435
928
92
119
545
127
800
220
563
775
339
835
325
278
820
951
216
206
653
976
369
925
49
483
442
616
384
677
393
236
447
355
34
601
93
316
44
401
766
24
812
132
103
712
801
737
408
273
328
305
475
959
491
420
615
304
734
745
851
21
978
573
499
260
754
388
726
92
748
135
905
62
367
359
438
221
525
651
936
919
632
969
160
499
169
548
934
656
199
52
320
194
756
910
676
75
721
610
904
797
186
531
258
687
534
330
600
953
335
895
812
106
271
162
41
575
727
776
73
623
393
202
285
674
462
109
632
297
655
735
208
744
975
627
718
924
51
280
314
862
792
917
792
62
484
489
233
785
454
414
193
550
494
518
708
662
694
253
199
845
769
215
500
20
387
398
349
320
843
780
435
750
319
762
546
830
641
768
241
53
748
461
495
708
231
113
278
230
536
614
749
144
592
250
911
258
565
71
844
966
499
844
702
249
607
722
886
13
858
813
810
441
429
537
514
582
73
511
585
533
822
257
914
177
169
221
955
45
627
189
794
52
30
602
823
598
394
340
642
535
339
720
819
121
591
282
358
787
463
676
659
131
326
99
104
614
703
28
436
561
808
879
174
717
737
752
52
859
528
15
812
850
644
313
750
125
27
688
896
568
243
71
256
279
321
973
806
256
928
334
761
137
478
425
722
155
271
757
386
796
698
128
163
12
672
84
541
924
47
470
439
709
723
617
271
123
829
429
804
606
917
397
720
368
38
24
89
918
559
754
772
841
88
811
542
729
236
297
418
268
222
101
459
685
488
285
566
143
574
351
91
873
543
259
466
915
634
946
128
215
585
945
863
147
397
401
513
570
226
490
664
876
538
950
382
246
176
212
553
449
659
102
189
684
95
161
233
169
211
100
643
475
433
778
571
460
731
69
781
628
500
759
286
695
26
52
276
924
566
117
624
436
388
718
220
57
14
731
115
352
172
13
942
308
251
629
787
187
941
917
360
468
733
65
344
508
705
699
357
130
676
719
565
324
588
838
607
719
470
902
478
459
141
269
945
58
287
316
959
779
447
88
153
82
443
674
304
404
959
256
166
834
50
713
56
972
767
168
45
712
361
533
838
443
164
712
513
30
495
447
574
979
624
884
738
368
379
930
154
778
607
779
727
812
602
379
216
847
364
784
621
327
400
445
481
94
732
873
640
135
891
480
618
956
692
735
803
846
978
712
56
258
506
894
638
536
126
594
81
260
121
656
480
132
598
766
845
945
765
836
525
568
442
38
924
28
392
450
54
79
388
768
440
101
804
198
806
920
339
331
562
58
63
616
618
656
637
281
912
188
520
517
233
428
342
272
302
624
350
267
801
228
199
214
178
976
784
436
286
19
125
472
554
328
905
925
919
71
880
768
549
70
650
654
908
116
309
581
410
813
588
892
214
547
774
942
613
298
175
409
283
460
282
971
670
914
62
22
812
851
977
778
732
352
653
387
23
455
77
668
400
470
825
969
893
577
294
13
539
255
628
294
400
858
348
784
551
670
465
410
657
277
170
934
853
714
604
818
485
702
360
334
784
724
866
659
677
15
464
29
287
508
263
881
557
745
257
401
930
208
366
260
304
322
61
429
478
521
754
130
854
803
733
582
958
468
798
520
520
85
945
618
827
119
697
915
750
821
685
319
970
577
406
596
779
88
631
977
333
386
95
658
872
17
479
768
294
675
753
885
760
747
977
877
385
480
744
890
544
900
311
784
422
803
90
547
81
221
649
448
78
952
681
749
729
753
18
33
833
331
665
894
647
420
69
471
402
294
254
580
59
507
935
436
913
124
615
834
13
456
100
893
622
49
181
19
644
612
927
643
952
808
47
872
336
488
521
51
390
567
176
57
305
67
272
39
570
641
99
99
481
264
642
913
516
869
289
586
275
65
98
106
26
414
98
514
465
783
67
181
558
832
222
468
419
788
874
634
122
576
162
730
157
123
373
458
116
373
971
805
464
404
304
892
782
410
604
789
428
680
245
376
939
205
262
233
40
456
238
701
620
447
696
572
599
417
365
616
965
730
732
925
417
597
445
159
540
475
83
827
326
173
163
564
222
662
769
622
713
904
800
892
45
41
751
689
807
745
137
239
379
705
266
216
228
609
214
547
663
900
507
969
305
865
198
660
120
273
144
375
792
59
719
569
691
923
882
54
881
827
479
913
264
228
343
274
845
46
828
828
433
582
843
502
966
759
603
782
254
526
820
490
95
465
371
53
753
339
674
295
243
242
501
197
192
889
831
759
759
706
313
211
525
627
255
126
87
352
891
163
696
825
620
235
451
694
506
235
856
148
260
630
487
202
888
626
489
450
85
158
163
388
866
626
780
552
705
46
775
524
144
382
859
60
222
733
674
812
832
123
976
698
120
832
102
246
110
422
592
825
600
598
166
103
70
716
200
12
590
794
848
308
445
14
85
852
189
914
688
196
811
979
748
740
505
965
516
372
186
669
766
102
530
398
910
924
336
826
590
109
55
722
252
631
343
402
949
567
601
837
110
651
744
746
106
610
612
199
672
202
669
224
29
526
406
878
619
886
757
731
865
718
169
435
326
379
452
122
638
398
455
466
760
53
562
116
560
417
621
251
354
200
913
76
620
846
56
340
90
603
601
727
408
434
185
415
719
966
485
742
797
355
391
470
808
645
905
825
387
626
232
80
277
219
798
725
526
683
457
505
192
454
40
768
440
767
19
137
13
82
758
754
969
614
353
726
502
716
395
316
152
302
377
266
897
707
204
505
295
306
821
948
367
869
123
755
100
861
605
357
306
904
339
179
795
455
563
476
679
821
541
127
732
712
38
914
678
385
41
312
716
653
309
663
714
568
840
908
624
113
875
375
200
39
393
627
596
256
71
791
845
813
294
627
93
964
249
819
697
819
161
306
404
268
433
707
401
256
204
544
329
398
564
354
630
917
168
155
678
624
307
464
222
31
880
656
647
700
901
683
341
142
872
16
868
230
252
817
632
950
294
146
862
140
549
580
91
565
147
932
328
291
945
28
813
286
456
854
977
692
132
47
554
551
122
626
923
337
383
585
732
557
652
118
326
585
95
36
350
466
19
663
117
323
876
279
752
202
28
690
707
911
775
687
304
886
97
444
493
149
210
398
677
348
42
886
815
694
704
21
868
514
950
471
538
642
788
753
720
446
951
462
30
307
416
275
876
59
368
758
684
341
930
950
177
964
333
811
131
208
58
416
611
837
403
190
96
557
95
587
880
396
971
203
846
14
767
980
357
607
715
631
860
927
131
471
723
489
847
643
125
414
359
144
595
262
408
42
777
66
569
228
34
945
802
119
525
97
397
491
424
450
785
307
849
332
369
335
797
851
227
741
899
439
970
170
722
368
230
151
390
286
326
750
811
737
698
25
142
796
840
893
198
668
452
350
212
661
498
608
974
516
43
547
120
516
656
855
368
564
82
363
757
941
872
708
62
116
770
370
848
876
260
210
515
647
602
233
574
361
451
218
586
437
749
874
220
360
115
315
531
890
48
522
935
863
527
256
233
658
965
221
904
474
961
283
560
515
806
470
937
636
499
572
364
463
807
946
329
169
159
572
170
447
101
151
899
951
179
316
703
654
65
670
665
317
702
17
322
275
773
631
162
181
564
319
310
203
240
48
448
426
167
415
819
311
232
763
450
746
551
864
932
122
227
390
572
140
873
969
193
572
254
745
223
42
94
823
736
138
903
873
471
940
923
103
851
904
159
632
308
629
212
254
136
923
762
243
437
976
100
469
378
50
624
810
227
210
59
616
592
331
859
380
935
113
27
449
43
808
301
811
857
582
727
255
558
924
319
223
931
882
850
220
21
920
98
666
119
804
285
120
629
279
420
377
468
87
95
731
813
99
940
637
581
635
742
501
344
487
487
619
184
352
539
261
448
534
213
740
752
548
965
298
257
430
231
221
638
236
420
350
203
738
742
350
440
905
271
681
871
771
170
690
859
27
974
288
146
317
719
365
468
538
292
379
970
385
107
415
136
198
463
536
354
833
953
835
887
611
345
145
469
398
30
481
253
784
317
975
433
46
451
454
930
642
426
806
275
47
203
871
727
428
593
123
77
43
905
706
293
203
952
84
410
210
903
666
849
598
613
310
893
50
309
64
28
921
657
379
224
757
349
915
373
487
597
272
695
432
369
107
921
295
301
490
102
24
143
805
448
115
208
380
614
534
536
567
297
294
789
799
936
550
17
683
141
435
968
190
25
86
810
867
908
254
398
760
46
979
891
537
840
891
601
248
491
500
48
572
69
261
430
960
387
559
621
213
837
173
723
124
172
361
642
55
314
348
593
506
397
424
587
419
867
173
901
831
578
702
511
426
93
893
637
815
655
269
551
296
114
980
224
918
402
80
430
631
39
70
729
113
172
626
402
863
201
121
682
391
341
773
282
551
173
560
317
735
299
871
303
154
446
106
484
388
763
830
400
10
534
926
378
492
217
759
800
252
501
290
369
387
805
270
599
610
132
250
457
44
882
260
813
328
521
124
778
38
939
148
504
122
416
690
689
739
28
196
668
228
74
746
73
151
511
174
563
901
32
323
685
617
20
366
127
889
626
663
391
515
883
947
604
802
571
546
678
305
307
464
721
416
313
125
551
957
495
287
495
923
559
910
186
196
445
230
599
147
353
642
850
769
842
640
340
27
51
236
67
497
782
939
200
491
535
725
656
835
662
313
209
879
663
211
655
68
894
597
567
559
649
389
598
919
590
244
102
443
243
846
548
16
416
797
876
196
141
328
255
800
908
928
572
465
477
802
95
727
923
408
279
472
755
545
454
209
639
622
686
501
295
244
431
943
163
251
620
736
294
228
401
809
920
37
809
703
12
659
410
924
154
397
634
872
311
912
821
120
436
10
220
689
195
76
600
183
833
401
975
926
924
272
930
442
563
395
461
917
824
79
866
194
513
413
860
680
240
37
867
306
220
407
79
431
86
120
833
341
804
198
195
234
97
716
143
792
824
366
20
763
181
34
911
382
751
527
159
764
192
579
810
858
151
344
712
951
98
452
239
812
153
479
343
97
885
592
896
417
642
508
370
937
143
329
318
167
75
390
588
236
653
910
483
772
18
111
342
187
181
27
627
978
815
689
559
137
315
853
637
266
458
95
441
29
423
464
388
609
700
351
543
909
163
27
306
954
723
831
947
173
413
290
112
735
495
419
680
850
126
610
830
747
370
857
501
656
967
952
343
51
831
525
679
810
924
592
968
454
214
123
145
67
945
651
333
189
972
698
159
214
766
449
662
419
306
937
901
373
429
458
373
818
459
120
128
87
911
184
556
105
322
462
532
848
508
923
526
760
737
84
229
454
531
577
939
456
286
967
937
370
11
557
208
327
308
795
450
959
398
236
173
593
175
84
303
283
371
722
806
223
588
457
268
178
273
524
593
577
70
103
623
16
28
126
216
205
334
217
820
390
211
110
863
750
491
57
157
628
619
954
464
684
257
635
160
416
197
965
253
658
634
718
395
615
792
146
171
43
80
101
134
523
38
763
345
291
762
931
476
189
544
440
54
78
247
666
453
145
954
223
581
731
270
174
202
640
498
493
241
916
270
264
290
801
792
518
405
541
128
34
535
153
550
641
422
370
356
841
288
843
177
690
74
841
202
809
179
424
934
388
748
675
720
795
134
407
346
645
405
209
723
84
359
609
216
295
612
823
930
660
143
104
104
573
253
499
969
750
277
882
494
109
587
423
361
731
671
745
131
304
484
561
241
53
959
902
618
720
578
767
831
366
372
335
931
251
589
506
287
251
687
53
975
868
622
224
632
288
951
134
878
383
600
191
322
743
209
334
738
238
112
66
25
475
796
545
899
949
30
695
153
753
269
632
686
237
30
435
429
253
777
598
118
889
910
418
57
929
676
624
94
576
839
279
838
485
541
313
14
384
806
553
889
277
34
236
677
190
727
763
108
751
419
483
565
258
379
452
333
679
559
901
13
477
774
473
716
432
727
27
163
130
452
504
926
937
653
445
243
461
908
820
686
631
695
752
893
246
531
158
98
313
819
411
908
815
325
979
728
667
452
258
899
645
813
249
539
104
648
180
457
620
894
943
862
129
259
447
725
761
531
123
341
137
382
271
269
754
452
614
776
715
275
562
910
61
177
649
826
795
265
660
15
449
763
106
11
904
15
431
560
769
763
284
143
189
871
303
458
799
618
216
765
701
403
596
795
179
578
873
376
273
750
788
295
635
108
73
567
331
139
814
759
192
156
659
79
640
819
792
309
442
205
772
208
743
199
436
291
888
514
814
705
491
379
553
150
494
416
743
479
735
262
840
816
492
928
736
695
432
328
175
810
621
124
745
805
336
290
980
861
952
326
897
504
784
457
25
146
244
142
687
107
579
132
85
666
390
151
111
925
872
537
738
710
57
841
10
190
193
596
289
573
60
232
862
439
461
803
523
107
640
11
203
101
290
62
422
339
533
978
120
869
130
936
939
547
704
758
462
877
271
186
956
442
465
368
678
554
660
893
438
280
78
869
960
852
499
752
260
474
421
50
907
748
253
11
247
833
944
73
809
658
840
969
268
891
361
928
51
945
251
667
533
896
60
713
653
205
39
975
783
751
296
765
636
925
509
683
633
603
887
211
615
329
455
85
693
378
470
818
399
186
461
180
297
825
531
250
653
642
474
566
588
750
715
657
698
347
636
284
507
400
965
201
781
169
872
899
946
944
776
410
633
833
737
27
191
440
612
559
333
13
791
263
325
111
784
406
934
965
522
159
129
278
937
528
429
209
485
831
525
293
635
77
172
656
731
164
217
409
430
386
64
226
549
120
311
484
586
584
439
210
771
606
303
817
848
760
284
655
494
592
210
932
971
16
488
351
139
128
89
155
333
905
97
702
633
72
778
434
768
172
57
916
938
59
788
440
307
822
89
263
880
287
718
819
974
34
335
358
689
391
546
54
186
920
765
574
361
571
948
666
894
612
404
467
980
138
85
230
814
566
167
878
195
963
283
878
329
23
121
387
204
692
975
885
399
438
188
360
141
185
464
465
865
126
776
448
152
519
853
919
272
517
599
912
486
398
561
273
104
639
322
977
450
310
395
503
228
133
635
347
556
301
593
801
254
852
546
297
757
421
189
456
364
140
313
548
668
52
312
619
686
40
424
708
832
314
484
126
213
130
248
154
770
99
565
20
283
399
39
57
970
246
209
607
657
133
769
770
588
206
395
169
237
48
293
862
320
23
776
691
368
819
687
134
326
706
386
222
278
356
374
82
625
478
247
962
400
456
611
837
672
430
160
567
571
779
370
748
770
821
201
582
757
274
916
196
203
562
723
466
367
22
869
598
184
836
434
751
466
208
297
75
956
356
251
508
665
454
622
609
680
312
820
348
809
395
139
425
922
172
579
242
936
523
384
839
953
893
425
644
549
82
308
967
291
19
570
960
421
888
784
879
942
316
872
759
810
628
215
293
870
508
959
449
923
804
625
547
741
84
116
507
181
668
72
844
386
294
355
684
882
623
583
592
700
665
905
671
441
863
860
26
137
471
254
545
299
306
598
115
929
535
690
385
52
420
812
304
604
674
689
893
885
50
557
67
898
592
723
241
402
908
169
574
637
369
710
184
276
682
33
114
776
935
345
340
728
547
810
99
374
363
124
531
663
827
613
204
547
961
234
507
737
82
413
938
439
370
287
874
751
695
155
646
344
228
493
609
363
580
548
561
219
86
527
797
557
963
392
945
187
766
635
630
484
43
713
138
792
861
800
641
293
140
162
109
563
778
68
788
851
117
545
951
902
674
529
498
648
528
60
107
341
499
562
65
585
514
279
457
363
151
529
466
500
204
189
352
513
217
744
748
49
180
941
266
606
436
973
683
633
912
628
276
265
88
341
586
240
970
658
332
180
675
751
26
426
634
579
417
952
27
66
605
288
715
439
344
147
317
283
60
66
36
711
179
615
283
172
850
509
425
388
488
180
480
850
368
484
92
745
845
411
837
550
841
665
641
51
644
728
201
924
531
80
167
206
647
833
174
368
76
439
264
346
737
633
543
456
603
153
543
19
379
375
495
323
411
154
973
175
953
603
104
658
362
561
98
361
309
718
697
272
72
261
502
874
97
498
627
764
480
419
971
33
823
549
699
172
841
300
50
834
634
918
584
256
710
120
590
739
227
155
736
204
672
923
430
265
939
289
936
729
750
202
144
409
901
731
880
359
551
378
659
717
855
949
529
949
700
111
121
277
804
118
922
930
264
326
280
143
60
138
243
554
41
845
364
829
420
414
508
289
792
552
153
448
139
895
538
259
657
937
422
214
902
162
784
419
706
405
848
820
724
878
156
563
361
476
719
851
403
45
406
195
189
63
116
700
116
134
950
812
966
311
297
429
244
259
687
644
778
498
662
64
835
63
539
207
635
577
892
781
195
563
883
699
899
470
919
613
388
424
907
578
290
643
461
215
739
965
65
121
499
207
310
476
718
132
656
542
375
358
334
347
370
706
321
720
931
920
161
517
145
557
409
788
281
385
818
951
844
775
899
306
729
593
45
479
592
115
504
522
903
249
482
377
564
139
698
215
893
178
967
389
256
127
25
696
640
542
804
456
946
837
707
598
334
288
53
643
119
370
424
264
651
455
302
645
328
355
962
466
931
32
220
154
69
539
738
822
94
644
655
962
789
186
84
752
288
915
939
296
98
152
106
675
103
972
350
37
731
517
209
621
221
123
177
826
303
354
688
276
272
716
566
887
870
899
205
526
675
801
622
45
73
936
614
857
976
896
488
608
428
68
727
720
858
613
971
679
299
943
308
80
569
964
123
101
481
636
491
494
265
269
648
100
61
621
27
885
880
512
793
611
544
631
751
552
225
229
642
602
84
578
557
893
705
731
423
688
467
100
932
627
953
542
363
774
627
92
868
789
527
498
977
741
461
486
386
463
690
809
386
404
901
94
244
281
33
732
967
887
944
602
511
183
794
419
553
549
154
410
197
453
53
554
638
120
378
298
964
232
824
616
928
304
364
428
449
910
65
884
20
83
210
723
226
596
521
573
680
126
120
368
182
475
300
78
141
553
773
959
884
62
720
303
846
121
430
31
78
215
485
846
130
388
672
348
52
442
44
116
73
745
829
784
707
487
371
705
602
914
687
355
44
747
977
325
549
53
136
922
706
477
528
682
390
918
545
323
135
951
554
682
796
119
461
683
474
481
106
872
440
520
967
739
848
511
928
792
30
797
673
921
738
21
799
840
426
189
248
214
628
738
488
357
415
353
607
587
733
671
810
261
649
797
772
723
39
733
561
512
575
385
84
524
825
98
813
476
401
404
160
247
634
605
488
969
843
267
375
85
586
247
387
665
156
948
659
402
850
422
623
507
579
345
614
695
99
965
831
166
346
32
783
360
537
391
305
807
257
81
504
965
488
383
188
122
368
422
173
482
707
690
968
570
308
243
138
572
130
975
610
450
18
283
407
617
680
707
702
51
254
801
702
886
274
74
906
604
667
931
483
552
732
755
536
675
564
159
740
758
978
331
406
219
672
734
923
677
501
623
515
22
441
721
545
90
649
960
926
132
684
577
783
700
46
36
737
816
694
308
332
60
146
426
760
29
526
490
87
831
911
441
311
635
471
152
931
317
38
103
457
725
154
932
676
196
932
706
167
123
954
159
433
512
769
875
863
515
499
540
186
254
962
388
719
708
673
571
27
739
35
535
802
496
633
346
454
384
691
828
710
892
935
503
155
566
499
220
867
835
236
742
433
939
856
97
214
783
151
630
909
506
860
976
876
858
55
379
595
303
24
750
409
789
240
288
172
618
910
386
309
742
776
477
203
911
225
682
864
494
666
16
849
244
282
933
795
527
392
99
154
446
182
97
966
589
114
272
12
526
518
330
458
738
517
935
830
687
130
822
601
369
388
918
701
715
544
428
853
198
818
445
487
417
248
406
798
339
583
486
137
738
194
412
563
635
821
176
252
265
463
700
749
150
572
25
839
22
14
809
797
934
647
603
262
832
327
196
324
231
16
242
181
341
176
717
177
517
728
927
244
57
847
742
237
789
653
612
402
790
469
239
323
225
516
696
492
98
497
361
491
129
662
287
641
414
289
568
444
351
683
922
689
502
369
712
205
359
469
495
123
728
940
917
512
766
889
617
944
667
189
632
239
418
955
651
564
549
404
231
813
227
613
128
874
399
73
143
788
741
340
798
126
498
975
466
318
902
25
256
112
326
113
637
718
530
36
511
283
724
771
735
629
305
915
800
339
201
744
29
948
549
617
299
344
77
101
488
805
821
788
545
286
437
752
863
586
325
603
264
263
288
845
227
103
247
574
794
807
188
171
811
840
282
931
843
194
472
381
733
561
972
164
53
346
43
921
276
459
344
607
725
495
490
68
252
150
755
649
184
911
957
273
290
965
263
752
833
116
343
890
485
250
292
729
356
63
99
646
91
571
931
936
265
401
258
409
974
59
961
31
517
521
609
670
490
571
710
149
140
161
142
149
794
42
485
494
682
71
683
238
220
694
102
951
544
24
106
67
72
550
831
451
347
884
587
498
773
217
605
641
579
676
721
779
802
896
723
513
663
74
229
74
387
124
554
527
94
802
460
375
502
161
155
71
396
590
879
747
602
460
844
81
357
119
554
167
254
620
920
14
74
886
43
49
244
248
812
947
741
928
647
683
79
318
25
924
892
269
126
326
152
807
506
594
700
710
99
70
534
270
446
179
554
858
575
23
506
741
632
784
980
452
756
228
807
396
122
743
811
306
362
381
384
312
427
696
247
780
714
723
747
445
184
892
869
847
625
586
148
951
213
386
445
127
674
730
820
968
277
719
656
539
677
530
420
449
621
814
795
258
969
117
152
641
10
892
626
107
709
439
213
806
667
960
503
718
256
851
364
654
90
850
386
71
143
967
663
309
145
954
529
333
633
537
682
227
331
881
816
133
672
221
156
443
978
180
575
891
430
129
686
334
951
914
38
121
634
931
886
207
649
800
364
451
201
672
272
441
966
55
417
252
904
208
401
818
702
709
810
867
729
942
601
178
245
663
176
971
920
259
601
195
792
959
967
910
20
563
833
675
485
695
633
365
116
809
949
815
575
551
392
835
313
852
808
874
887
279
650
192
208
790
412
136
968
879
224
875
860
444
969
10
676
779
441
839
533
78
478
134
315
447
420
749
564
128
286
628
615
215
867
253
621
856
726
574
715
622
673
600
602
24
455
389
569
308
347
730
626
888
951
532
869
883
660
860
298
37
825
838
366
670
884
257
920
964
451
411
509
121
578
860
352
414
63
212
157
564
103
550
211
128
526
329
879
624
928
127
844
168
754
476
316
603
64
105
218
741
579
904
681
535
758
587
100
353
393
878
538
247
645
162
45
276
104
565
102
218
191
662
950
162
747
182
223
280
825
968
618
598
349
421
255
55
854
50
245
87
130
752
12
121
142
851
963
215
909
599
960
372
289
368
955
869
341
748
96
90
531
457
398
432
402
828
172
845
666
479
728
804
545
662
383
657
465
870
553
856
448
952
613
822
909
289
621
449
865
407
190
599
59
621
955
893
886
253
252
501
837
556
750
24
169
450
755
506
703
870
774
93
186
184
344
759
25
774
413
570
680
295
769
760
623
787
513
122
860
520
667
113
609
177
42
48
270
32
196
231
245
298
805
394
206
436
332
776
387
960
753
59
218
495
486
296
280
240
53
575
106
598
388
768
207
421
335
200
240
970
785
859
108
914
109
767
958
534
835
743
406
35
240
196
673
675
468
596
219
72
74
795
714
308
848
893
960
330
807
797
601
377
951
551
145
243
737
564
81
566
719
142
70
431
671
841
78
345
485
248
963
112
95
878
69
309
284
339
318
871
212
63
629
43
454
53
322
609
905
119
216
803
261
776
67
663
555
642
580
115
544
204
965
185
822
408
724
390
409
30
491
876
713
373
132
63
514
249
558
492
911
926
510
906
366
195
151
860
340
771
423
711
450
329
111
706
745
945
523
322
883
545
727
291
898
313
966
590
949
105
874
178
257
598
972
697
941
448
818
249
607
246
146
661
75
483
615
74
688
772
512
608
954
264
749
418
266
584
553
739
418
95
902
504
295
306
61
231
681
952
106
153
307
48
731
846
389
239
518
695
809
741
305
427
743
470
778
381
837
646
787
614
267
318
641
808
338
389
898
731
590
142
93
806
608
155
159
248
135
877
891
124
88
43
425
769
781
489
773
134
698
228
679
55
806
548
525
891
773
811
538
191
356
133
926
419
103
673
246
334
372
374
641
665
923
554
302
281
876
199
895
421
276
931
648
752
796
831
343
883
265
331
241
689
714
54
518
582
383
638
792
891
627
664
106
353
576
517
776
54
657
355
460
255
783
690
900
467
379
29
712
469
851
218
749
404
253
422
118
228
536
226
617
938
690
77
942
554
394
364
266
137
542
363
293
73
882
147
136
38
619
449
475
745
795
525
395
77
170
471
460
822
934
916
398
504
350
318
396
454
49
915
124
38
777
379
521
746
312
751
536
421
379
35
457
818
543
253
625
957
670
841
480
253
663
337
365
301
507
38
793
589
663
572
315
475
75
927
398
443
841
935
136
900
408
499
163
910
318
703
284
635
624
231
863
631
641
24
961
975
570
928
430
608
335
832
728
429
293
632
879
556
160
801
188
391
436
957
126
704
838
98
445
135
399
622
138
605
949
723
294
849
589
223
256
332
317
866
834
509
274
530
39
879
480
682
534
873
791
132
59
764
409
183
570
108
719
618
542
339
265
455
184
640
168
59
151
403
592
804
778
286
399
727
467
850
729
709
456
690
839
181
846
499
724
477
334
720
713
803
818
509
717
314
117
702
853
729
473
943
727
647
226
216
253
494
825
516
83
923
842
689
348
160
790
799
473
270
181
102
913
702
644
483
15
804
779
863
304
706
582
963
70
145
116
827
468
828
332
604
263
495
456
758
771
404
521
576
906
245
478
351
578
856
848
237
574
457
460
974
711
179
780
88
506
393
269
749
705
620
528
135
195
257
570
510
314
872
443
668
877
536
424
820
931
967
70
621
735
395
229
763
959
579
70
569
625
936
691
789
396
785
660
975
504
934
698
53
825
53
861
663
497
756
818
739
968
551
610
171
815
65
515
384
909
159
464
248
821
766
688
607
243
652
968
657
164
20
203
283
857
335
675
14
940
674
692
691
325
407
643
600
326
627
274
139
273
78
680
647
911
535
290
439
540
792
805
795
203
750
522
364
478
955
750
355
719
225
498
977
419
80
206
901
269
642
741
154
318
233
798
61
398
550
699
325
107
150
255
744
905
835
815
157
634
10
115
774
31
261
116
15
196
832
781
595
880
656
411
189
274
119
338
572
192
170
822
220
294
17
157
881
621
935
601
173
848
364
811
732
598
150
290
181
495
786
26
734
23
90
925
553
459
346
685
878
145
198
695
347
270
680
490
751
975
933
67
66
826
806
815
256
741
455
31
402
776
689
101
645
773
255
876
402
133
498
206
798
858
740
908
107
268
898
130
958
300
100
813
229
763
384
455
765
157
886
403
359
670
894
449
738
696
609
799
782
871
257
547
688
22
110
291
82
325
525
414
390
16
95
371
449
940
228
242
244
90
549
61
887
805
93
130
936
39
378
937
695
349
558
850
958
195
546
618
802
554
956
12
535
479
634
49
507
88
543
869
864
547
581
733
218
466
470
150
531
152
163
452
845
856
728
569
318
635
617
740
939
715
45
170
30
47
188
553
51
114
528
620
384
280
211
949
238
893
792
24
539
299
396
899
266
178
213
775
294
181
848
466
133
218
233
519
100
500
806
829
223
496
376
51
794
693
694
578
808
891
183
494
782
45
205
883
547
709
241
741
760
212
509
767
735
692
473
915
266
505
604
229
602
213
315
432
310
300
532
581
701
776
537
258
520
931
709
274
546
578
793
534
487
83
301
700
598
418
226
731
177
254
966
53
662
660
722
914
308
864
668
441
943
836
84
824
305
474
939
450
226
558
763
449
947
745
388
611
864
68
645
217
426
638
844
881
609
252
504
194
364
796
977
841
700
623
804
194
940
68
44
745
748
49
376
257
786
343
803
238
978
127
884
62
415
529
223
895
774
655
115
216
531
473
375
139
189
39
465
458
61
733
213
491
500
823
465
508
25
388
214
342
708
755
23
904
410
772
208
407
61
165
696
308
830
310
395
171
268
189
673
326
491
638
135
703
952
870
331
625
290
195
439
529
576
137
445
916
741
624
666
747
507
468
137
929
127
926
233
539
128
61
110
792
269
57
668
927
645
399
560
40
478
419
352
319
928
143
776
835
398
750
190
320
718
91
837
293
864
512
861
229
338
257
95
134
124
672
961
765
34
392
163
593
141
544
705
419
254
228
182
287
551
717
695
576
757
628
46
660
188
709
170
438
67
652
12
792
80
158
215
111
478
338
352
94
379
695
67
33
615
545
700
108
79
350
975
967
222
95
910
853
116
754
738
801
66
972
255
903
695
588
417
322
776
291
434
163
582
35
281
423
88
741
642
914
325
603
731
238
281
274
262
868
898
932
558
23
332
228
151
769
793
182
812
66
426
249
54
561
853
621
480
558
964
447
168
624
38
883
489
95
237
212
808
295
429
412
327
181
522
625
558
22
79
21
785
596
678
526
513
823
959
426
819
951
132
607
294
835
385
361
731
340
702
939
357
673
327
976
955
235
708
716
160
641
387
500
470
537
793
806
47
624
893
370
765
414
556
715
193
654
316
73
670
851
90
732
240
931
323
98
120
753
693
350
978
98
897
430
834
106
382
717
150
125
973
187
335
558
767
505
947
228
423
135
260
254
823
781
656
233
98
897
577
848
306
223
596
76
842
575
212
576
290
167
914
280
36
667
857
301
301
240
236
37
952
774
745
866
258
948
681
166
515
724
227
140
477
937
900
312
201
458
207
771
642
569
661
703
850
469
137
663
814
644
58
692
473
443
617
753
40
61
121
42
912
735
422
475
249
422
348
74
311
411
399
86
55
375
634
791
397
920
18
28
545
853
757
818
813
414
358
401
801
445
685
225
613
101
190
628
246
946
689
259
639
158
314
740
777
69
46
525
849
564
334
786
210
181
930
178
499
62
349
661
335
257
34
924
25
969
393
753
832
693
283
717
936
75
531
401
854
566
95
110
760
128
294
161
543
793
427
671
261
628
148
783
597
741
979
21
797
896
109
482
106
779
784
149
283
811
324
467
491
672
561
914
205
978
115
249
197
425
216
834
319
262
374
963
493
98
890
352
603
184
716
697
704
268
47
320
740
219
922
832
223
886
804
34
882
727
242
272
970
788
567
98
714
641
974
439
905
897
957
83
89
601
352
393
447
796
573
399
339
648
222
729
721
822
758
287
283
782
15
444
765
545
726
744
244
688
512
915
497
260
965
712
60
246
302
798
505
722
37
861
357
837
792
76
498
944
141
459
560
82
940
810
773
968
967
773
73
135
604
843
577
757
594
12
113
515
843
156
851
675
275
599
23
659
964
932
645
171
330
659
109
805
417
729
470
26
686
694
575
760
875
361
843
693
623
807
502
682
80
149
130
480
915
94
731
940
882
883
899
573
366
120
807
312
744
376
237
224
618
102
760
930
841
45
879
246
260
246
767
189
695
875
309
23
20
547
488
312
835
702
359
451
768
52
47
813
536
910
567
546
607
813
898
496
706
657
492
783
410
753
703
632
254
54
103
195
454
629
754
651
944
441
542
798
834
155
353
705
681
936
847
419
641
838
15
304
304
336
153
420
145
715
121
559
129
25
460
160
183
759
607
71
696
37
340
39
600
924
172
203
182
541
579
422
573
602
411
428
489
658
459
282
495
151
837
599
787
411
394
283
207
377
883
839
450
911
562
890
430
911
762
606
940
758
103
820
429
676
702
914
778
669
966
332
85
911
752
869
782
141
909
606
350
747
745
653
965
579
526
526
389
248
804
475
428
245
130
339
107
925
338
682
954
275
432
12
391
666
847
413
551
850
417
129
766
197
353
313
496
642
473
440
117
826
424
568
422
943
279
388
517
343
346
414
749
30
616
427
374
770
520
934
538
209
11
539
840
172
662
259
477
98
766
638
421
279
176
912
744
737
760
630
607
858
716
383
643
979
471
362
121
541
673
440
465
962
963
268
907
653
889
724
448
216
215
206
616
899
526
246
978
855
525
290
155
256
953
359
815
262
459
598
297
625
692
263
505
178
601
528
335
31
606
262
669
340
562
379
454
171
199
146
812
297
401
740
22
383
438
822
570
435
629
861
973
274
208
750
795
506
808
35
47
941
337
897
915
523
651
417
469
655
729
201
234
302
845
845
416
475
149
965
911
562
793
769
623
970
25
693
45
530
834
641
146
402
745
592
283
119
834
648
44
364
701
513
590
755
614
825
815
871
424
485
17
902
896
264
915
134
876
477
74
142
591
553
879
917
344
85
137
757
192
654
91
324
19
343
311
604
330
752
913
797
465
435
457
386
866
47
234
597
764
538
650
71
473
414
864
539
333
550
899
740
724
327
882
953
129
762
152
397
331
497
897
526
867
580
37
589
337
283
402
15
391
101
793
172
562
353
975
129
150
966
701
314
375
137
817
935
57
866
256
628
417
833
958
356
957
822
126
146
756
563
369
298
325
40
961
111
883
632
562
695
309
494
290
587
951
214
252
731
961
861
826
486
241
301
529
132
687
558
416
462
97
98
360
586
408
920
515
26
781
417
186
916
930
842
907
343
164
454
200
721
278
934
375
546
251
417
646
692
688
467
769
808
533
880
466
723
856
151
778
737
683
156
324
209
299
601
146
301
357
171
841
481
49
369
241
299
52
650
549
89
487
687
882
613
385
361
223
895
479
97
419
439
924
859
398
695
258
31
360
642
97
799
84
341
763
67
67
408
474
828
352
796
789
898
688
370
168
281
458
524
751
261
608
607
499
620
240
657
11
756
278
130
808
724
834
785
153
90
766
224
713
714
550
785
579
63
708
276
554
534
673
527
930
182
624
672
453
464
958
875
169
434
875
134
830
298
927
622
178
738
144
675
10
231
532
473
162
945
268
647
136
923
256
81
966
120
449
82
757
975
898
805
486
237
395
270
223
381
110
907
171
277
899
887
242
854
560
575
809
803
247
969
484
652
574
754
865
150
401
907
942
220
662
551
245
658
734
877
683
494
441
253
541
900
855
632
593
414
955
157
510
138
137
846
89
868
547
566
629
59
958
279
710
696
349
268
644
826
273
841
585
445
452
930
34
214
826
787
249
781
621
973
607
239
381
374
311
414
400
789
527
963
238
595
554
828
307
116
232
404
329
900
950
791
486
640
611
662
621
780
89
806
145
636
32
341
142
440
129
829
920
277
817
884
689
805
307
678
12
643
130
567
651
672
897
583
185
650
696
690
735
32
491
244
355
439
718
106
475
621
627
361
714
716
369
303
258
299
775
612
463
900
715
912
565
63
154
308
699
326
796
829
714
621
749
477
224
390
534
354
160
56
379
152
381
83
714
428
279
828
32
877
197
225
823
758
789
627
452
256
96
135
836
187
958
977
973
437
516
444
867
559
774
584
195
903
544
972
738
754
844
615
821
481
56
233
226
436
363
110
530
29
384
931
553
227
763
757
740
807
898
510
830
473
547
674
149
955
248
85
751
532
592
645
771
823
190
199
259
225
268
45
77
227
125
720
573
308
700
41
260
238
636
762
248
310
690
574
381
882
395
347
609
774
384
698
495
409
238
905
847
41
943
390
869
11
188
721
856
488
405
64
38
631
151
209
612
66
660
305
492
252
399
496
226
873
355
898
910
440
575
35
228
184
280
758
679
42
446
962
893
28
803
759
100
27
320
252
418
470
804
263
749
377
646
34
461
402
675
342
575
134
245
423
694
141
432
103
699
849
234
506
947
935
157
10
579
651
776
949
792
587
120
514
723
234
539
327
546
23
221
954
811
212
807
630
937
819
208
838
140
762
95
974
554
11
723
941
598
975
478
540
707
304
69
50
782
310
168
499
112
772
972
702
146
299
261
96
519
282
27
650
660
20
47
805
560
377
257
970
280
961
962
181
728
108
379
160
557
966
862
110
204
428
33
913
880
717
175
452
104
806
939
170
429
242
98
864
223
452
107
858
385
671
210
812
670
578
592
199
187
463
675
271
435
365
577
617
599
861
357
679
547
977
854
426
121
568
963
228
940
135
190
744
834
615
633
752
63
796
508
764
283
539
326
461
11
183
126
106
805
763
491
444
435
61
266
677
329
349
38
517
443
182
332
849
635
968
316
702
810
90
688
727
709
893
163
497
759
110
747
511
940
625
686
423
306
215
396
123
138
33
960
439
265
692
354
134
698
579
897
969
351
238
168
366
320
869
65
170
578
460
181
77
149
756
813
395
807
309
725
29
891
343
60
745
334
88
181
449
320
79
693
534
553
263
369
134
693
327
22
578
767
754
943
965
341
973
355
526
820
432
632
820
236
486
407
598
224
951
31
615
535
183
940
931
685
334
856
183
200
214
964
649
570
92
713
537
454
465
82
61
943
422
977
10
945
801
242
627
618
864
857
817
27
387
190
263
342
189
217
952
963
386
132
302
886
332
574
645
87
94
661
843
694
240
375
472
530
803
231
538
953
335
466
905
286
35
499
518
859
926
956
479
875
874
226
196
75
218
61
510
315
553
32
127
548
831
886
686
11
538
558
33
507
923
227
912
818
332
284
613
759
467
667
732
425
466
238
659
681
30
356
476
234
605
815
471
298
562
679
841
457
892
977
909
732
184
75
602
623
523
63
166
392
205
636
553
52
709
13
603
561
11
307
579
846
139
925
365
124
12
60
256
947
890
517
964
841
828
615
474
839
536
345
263
515
699
560
219
348
536
48
945
780
307
384
528
104
203
763
143
562
208
961
911
764
17
410
393
41
229
648
277
28
350
783
95
773
630
692
503
933
282
901
508
724
516
864
634
584
793
898
536
157
627
352
873
103
168
150
234
328
106
677
329
695
104
878
432
848
748
495
619
351
487
887
715
88
589
387
284
314
53
903
801
506
940
105
262
954
664
715
75
184
676
522
274
728
489
315
868
89
793
46
944
327
338
735
62
318
925
541
667
979
109
977
239
587
691
718
771
870
28
829
679
480
541
827
242
326
728
214
485
781
69
591
355
243
388
195
377
364
251
932
884
598
583
369
649
876
786
341
390
636
807
27
824
273
322
762
152
553
693
40
517
311
157
975
810
938
594
91
151
278
165
172
785
685
615
414
690
367
393
262
492
951
34
567
260
252
665
895
922
242
760
859
30
284
839
728
409
313
866
716
71
203
76
144
94
431
261
535
558
261
173
272
61
219
234
311
807
338
376
177
907
932
733
463
242
446
486
351
951
69
419
578
295
513
874
509
135
388
915
36
128
179
710
714
564
590
752
159
176
493
96
966
131
448
206
313
938
255
505
261
978
656
930
459
506
639
549
813
661
931
746
686
63
794
219
613
419
15
744
102
427
586
464
454
669
518
878
781
309
657
789
483
749
770
363
512
287
839
528
970
614
221
776
486
97
966
58
340
228
537
925
598
17
316
879
228
574
746
626
10
271
201
542
587
192
525
48
764
485
182
808
195
448
142
457
743
309
476
152
736
712
363
825
360
329
194
410
646
559
412
658
571
355
972
130
437
516
743
861
216
619
441
59
563
411
57
33
239
753
242
35
411
588
754
748
300
250
121
153
586
37
404
719
68
233
181
297
219
843
144
132
956
642
770
139
464
543
279
429
884
682
573
328
150
318
326
633
335
975
538
873
979
447
123
87
124
429
835
963
585
69
712
274
250
615
922
854
783
506
441
116
366
400
42
852
394
297
311
818
919
246
797
912
277
497
792
24
207
488
669
465
162
701
838
633
530
328
286
177
611
948
137
363
788
227
60
561
917
816
743
564
567
531
168
458
764
312
32
30
140
735
267
15
370
605
309
883
546
883
743
447
14
153
444
664
762
541
111
194
139
847
663
504
206
583
939
696
339
543
214
813
570
394
425
63
64
716
854
938
170
650
592
922
324
538
267
50
21
587
951
909
910
154
152
27
72
627
896
828
551
515
678
680
511
870
751
304
733
61
805
400
234
386
341
207
673
391
54
136
236
281
511
512
967
955
861
916
63
964
350
747
624
797
209
515
212
844
898
175
338
187
304
562
837
664
949
456
87
918
757
762
977
787
816
673
751
536
386
12
923
810
434
472
260
260
786
780
266
600
544
111
430
332
834
288
392
397
110
648
594
46
918
966
540
640
488
595
258
408
403
886
475
63
410
711
915
650
555
629
635
442
720
554
47
153
77
530
694
284
381
938
813
80
887
806
294
519
91
715
656
425
706
782
503
584
500
397
416
301
583
702
416
103
529
241
250
643
98
694
902
173
176
299
291
119
218
519
122
292
879
499
652
668
935
553
630
781
350
792
196
684
241
891
907
564
536
867
392
320
315
857
786
323
823
911
263
585
837
775
810
165
675
421
328
179
377
107
375
908
440
17
964
749
936
474
335
860
644
794
759
578
571
106
240
252
872
608
47
756
786
500
198
262
64
645
395
193
462
193
450
473
628
577
354
276
626
583
386
263
958
662
128
227
796
581
617
966
482
171
871
463
725
17
193
164
479
769
918
882
32
153
566
869
207
934
809
752
828
122
817
934
421
809
793
521
829
578
625
447
618
54
884
807
451
470
839
19
781
686
543
761
342
85
700
352
140
141
972
863
59
71
834
719
976
428
721
737
677
388
289
564
810
225
815
22
867
516
967
522
883
961
691
132
293
400
380
365
717
707
898
901
944
38
930
431
346
751
876
675
671
949
284
362
203
197
971
390
316
89
144
389
393
533
349
176
893
569
598
552
193
421
192
295
697
242
102
508
614
882
516
48
63
807
423
243
382
434
314
610
32
614
835
407
300
262
685
394
218
146
506
844
700
273
560
251
557
958
966
811
950
158
962
449
462
118
569
213
393
307
483
930
58
63
33
571
408
266
427
760
829
720
544
830
898
948
259
900
182
429
928
693
969
103
618
264
270
680
353
73
159
972
697
318
302
568
32
548
442
577
68
497
491
483
712
33
143
907
338
708
526
167
452
927
461
91
420
333
941
201
490
189
97
341
273
486
139
217
635
137
681
934
575
172
245
70
36
571
781
152
550
815
762
23
636
85
458
243
868
114
321
802
552
433
648
881
867
538
844
894
239
578
588
613
712
939
907
713
451
280
824
735
376
541
375
212
741
528
25
305
504
558
186
301
193
627
957
533
250
800
861
734
859
941
912
964
821
113
858
936
61
423
93
566
746
514
924
505
946
731
666
738
607
324
131
229
903
885
803
505
450
606
971
931
202
916
743
837
590
743
323
567
314
153
138
843
496
240
180
560
138
34
462
850
96
646
544
857
899
151
275
136
332
765
802
360
840
408
703
893
276
26
640
10
201
784
963
767
33
481
161
451
865
44
933
357
889
978
375
127
476
310
282
867
378
816
812
525
488
160
659
925
759
38
288
156
731
58
37
160
69
817
916
616
610
492
28
73
130
897
39
970
894
489
908
267
641
805
41
41
803
467
956
226
887
792
596
239
265
192
193
826
671
332
550
828
641
835
474
807
958
113
741
91
340
189
916
692
197
79
562
162
631
959
218
516
74
784
547
496
580
626
964
742
375
69
813
910
681
339
26
391
227
483
500
918
611
101
182
618
835
144
847
570
935
804
360
225
124
397
929
707
172
426
725
114
128
199
30
695
611
338
541
956
639
200
914
313
787
426
901
774
802
347
730
592
492
339
751
656
603
325
980
506
884
96
880
854
23
424
630
772
11
187
855
827
967
657
62
188
557
516
643
579
567
189
774
712
686
245
263
891
661
617
955
339
712
338
296
940
389
270
519
903
355
530
252
141
98
439
240
767
916
843
828
633
255
209
312
339
804
752
514
757
234
667
718
611
692
350
596
196
125
17
276
447
289
302
933
406
686
461
544
120
396
614
215
199
929
512
353
539
825
199
742
483
549
475
767
240
614
765
217
691
28
43
640
471
164
291
759
657
294
219
182
633
352
582
524
600
356
561
977
575
874
310
490
125
476
296
281
683
36
117
605
539
408
735
646
185
531
371
370
196
26
300
330
470
342
610
150
597
434
867
600
320
220
80
271
847
310
263
828
725
287
477
496
867
128
976
863
632
262
826
666
923
463
577
810
717
841
296
818
566
289
236
104
901
148
366
629
623
491
763
160
690
504
564
599
764
136
514
147
814
106
161
850
278
79
263
917
31
691
801
788
963
682
121
695
21
209
212
935
902
212
954
430
914
957
587
874
369
900
963
512
64
613
723
633
863
18
271
216
867
380
157
233
46
530
580
584
670
634
423
289
621
68
909
723
620
695
572
407
10
916
53
496
936
943
433
953
561
209
752
570
180
534
780
371
902
698
627
843
159
219
298
63
151
660
934
55
622
474
503
293
181
729
816
262
253
325
334
254
294
437
455
721
59
16
498
323
815
970
955
190
842
375
631
100
257
143
793
414
463
680
565
902
726
890
825
505
23
925
956
88
540
826
137
354
804
887
837
377
398
676
82
52
514
563
600
638
542
835
820
813
558
301
502
899
380
582
830
638
519
370
903
29
571
951
922
118
891
869
640
869
943
867
895
443
83
731
352
292
509
282
845
523
557
786
916
946
781
407
57
755
744
694
736
805
99
231
316
210
38
447
774
238
636
704
497
423
898
615
119
157
486
110
274
80
163
835
863
821
857
780
351
980
841
777
586
485
649
99
245
722
295
181
403
935
753
967
345
117
152
430
600
311
160
288
509
376
574
810
107
111
117
554
470
46
270
536
96
747
689
133
169
397
796
909
443
680
69
797
650
966
412
419
937
494
102
953
323
215
866
333
807
636
390
103
303
907
957
815
65
978
406
22
194
62
140
619
572
561
370
595
690
923
222
492
420
218
338
30
355
835
242
831
777
496
345
400
449
696
353
68
337
156
223
911
948
376
778
495
877
174
230
67
889
586
735
798
100
374
287
601
572
907
105
536
825
184
733
641
899
781
219
679
975
855
635
141
603
322
130
88
192
692
781
795
228
287
153
34
442
491
358
253
832
29
934
695
534
963
200
152
533
556
71
467
968
604
781
580
780
79
74
272
361
362
435
324
309
64
572
63
400
622
957
303
504
135
521
265
417
125
563
294
796
500
221
197
279
87
704
442
731
574
325
714
181
406
579
886
807
936
435
409
266
372
550
815
33
728
758
249
306
784
124
243
812
202
445
312
380
739
283
573
105
749
609
577
141
68
595
902
80
453
656
522
216
638
259
106
633
658
48
583
790
174
172
616
314
964
280
88
11
873
570
554
814
970
875
542
916
84
542
466
732
286
702
367
426
808
835
872
482
77
583
16
540
77
218
781
951
500
384
808
873
116
507
902
783
273
798
114
963
836
692
181
731
420
406
556
567
279
649
491
623
114
799
601
194
63
951
847
638
13
112
554
365
886
703
240
665
869
529
381
141
55
603
184
183
162
679
927
202
568
630
319
621
278
773
38
376
931
856
317
140
118
315
391
474
124
967
909
92
230
969
514
155
261
907
960
763
318
712
795
450
590
639
953
744
86
791
405
149
321
526
854
575
30
933
249
902
251
643
156
249
865
738
602
760
954
635
271
584
650
262
498
418
540
976
192
241
872
966
713
635
789
308
512
913
707
239
237
178
72
629
796
335
546
69
707
547
880
842
416
483
870
667
694
781
905
583
717
598
35
499
631
886
581
838
807
172
880
324
880
817
378
508
897
679
441
185
404
531
864
272
205
701
528
904
688
620
74
637
399
339
572
250
274
109
122
883
150
848
238
916
515
233
568
594
447
805
292
680
483
651
770
906
594
816
239
745
659
742
925
448
869
838
80
71
595
579
410
640
345
157
203
709
852
292
746
583
522
433
215
245
839
788
549
130
426
941
919
12
270
965
38
897
630
361
766
864
329
619
611
71
810
609
491
574
675
67
366
976
336
383
558
953
503
966
590
252
336
180
398
147
965
500
678
738
511
146
64
179
643
394
633
390
638
870
858
161
703
772
395
905
59
923
277
748
81
952
367
225
357
144
423
678
455
90
81
840
811
523
636
464
583
720
875
400
59
457
489
809
842
524
937
294
764
838
435
926
98
474
33
583
281
172
250
86
45
387
283
690
809
612
585
734
257
448
215
950
709
821
573
112
373
182
820
841
746
611
543
758
825
367
138
92
721
911
478
863
130
117
38
792
785
515
456
833
105
228
702
277
802
572
859
85
45
349
250
900
513
220
894
976
601
746
602
956
739
747
807
324
784
717
430
479
120
728
489
668
822
919
831
598
471
830
596
299
448
737
366
453
87
453
684
644
16
482
476
503
348
286
352
71
41
281
815
423
660
639
607
428
565
749
43
836
240
703
602
206
348
441
126
18
946
71
117
626
182
505
236
818
934
338
714
890
724
628
628
308
863
317
963
473
884
718
316
696
900
628
709
537
897
125
162
610
19
820
485
880
943
737
933
31
366
544
136
535
861
267
862
593
869
680
596
836
405
269
505
247
839
26
490
265
639
490
936
658
184
241
352
739
565
114
582
719
923
903
519
671
247
311
183
469
811
643
48
854
447
328
174
173
89
690
515
355
735
619
434
274
222
901
702
377
574
88
275
681
673
365
928
552
727
879
930
71
110
476
329
46
628
621
913
107
959
768
167
344
661
598
670
761
306
34
492
305
41
687
155
47
143
711
337
88
620
343
174
66
133
211
27
475
656
808
247
162
619
475
85
715
930
373
396
289
976
974
635
844
532
310
508
616
249
428
328
886
411
484
51
549
70
507
162
90
209
845
324
438
736
443
59
77
851
284
405
232
94
639
494
950
890
640
469
754
957
721
803
585
347
126
415
526
27
784
619
192
56
115
561
241
453
851
927
263
462
166
712
935
102
500
940
390
41
457
962
83
470
441
828
160
644
699
444
633
239
332
584
550
189
330
180
919
359
189
669
783
838
742
771
502
204
893
894
577
39
82
758
630
217
726
521
814
154
789
206
221
608
466
348
489
682
793
950
480
290
832
442
612
351
844
415
34
518
965
34
45
581
676
329
68
327
245
120
463
157
889
904
929
172
733
214
739
222
751
180
37
283
729
137
470
672
653
208
244
469
666
963
91
407
311
480
962
958
55
178
445
824
77
745
531
177
946
406
778
318
80
48
871
617
586
893
390
142
542
969
424
879
929
158
679
690
422
680
750
906
387
721
636
85
195
630
74
721
195
81
299
543
297
235
874
883
924
277
948
89
353
838
481
104
211
715
951
66
791
515
469
19
522
684
538
864
720
261
534
139
531
935
688
199
205
170
351
412
927
775
258
936
475
394
313
473
694
911
739
937
408
25
880
57
573
913
614
386
453
778
651
512
767
222
178
345
592
286
244
50
506
190
804
129
977
442
871
659
595
970
207
886
547
45
657
700
221
552
25
274
13
119
968
878
251
507
25
358
752
827
529
617
141
736
948
80
777
881
753
205
414
675
474
346
689
444
390
446
780
798
479
868
237
426
134
663
797
805
491
358
868
566
475
693
546
87
422
411
269
944
198
916
399
702
12
717
242
351
820
65
737
150
511
390
290
50
800
934
65
625
283
428
866
389
421
593
120
87
562
70
673
413
24
266
77
960
493
165
913
133
349
942
871
965
595
104
616
666
300
655
736
226
290
474
73
961
917
973
711
613
501
948
737
578
612
161
554
121
162
698
685
54
465
314
806
862
26
582
746
103
684
598
906
522
941
289
882
236
612
135
505
381
603
150
460
771
59
965
514
911
724
432
321
433
845
187
965
136
617
123
181
631
684
953
917
446
965
403
28
733
951
811
559
959
844
141
521
565
74
625
676
401
844
413
316
676
756
54
755
26
644
809
72
534
546
425
733
920
979
299
26
940
604
824
257
286
931
696
944
64
363
473
520
726
510
138
920
458
142
478
507
91
637
477
336
415
751
253
677
412
202
489
380
783
529
275
44
802
736
108
101
969
684
942
97
857
223
458
212
902
393
685
354
84
155
826
396
810
725
525
21
458
835
373
736
477
554
798
730
567
287
175
308
449
941
510
835
373
915
754
640
410
190
553
610
530
588
509
604
477
158
255
399
668
338
533
190
132
668
959
667
979
648
740
365
382
646
333
735
571
216
169
674
101
804
823
815
322
259
554
353
778
485
258
975
24
779
492
291
100
516
897
577
674
275
632
353
926
93
405
917
341
846
319
646
417
419
398
795
510
32
627
105
878
949
747
673
500
771
494
245
509
91
363
193
396
710
882
544
397
311
640
145
97
635
438
269
605
228
505
310
23
559
376
749
144
889
54
601
766
973
592
283
47
739
774
148
396
234
803
673
779
627
360
966
936
356
485
455
310
812
853
679
172
704
249
304
776
121
133
114
257
161
142
40
660
549
629
827
401
352
407
451
476
545
507
251
462
918
507
367
723
480
777
860
793
308
548
210
150
635
926
976
524
805
293
508
859
651
781
79
228
10
328
401
304
629
400
413
915
613
682
110
93
291
381
612
442
410
170
600
412
513
111
821
938
545
368
192
623
415
936
517
388
485
963
540
385
67
296
366
652
949
979
950
250
583
536
396
135
269
469
102
261
146
751
241
150
305
440
488
913
197
210
111
92
962
817
131
521
245
792
810
183
645
161
696
454
381
494
546
521
648
536
839
798
57
247
863
414
960
315
821
567
246
973
896
436
233
718
22
670
832
577
569
745
773
322
673
240
443
524
217
682
235
65
873
501
577
431
676
563
431
700
879
768
360
287
254
900
414
693
962
438
831
944
461
553
126
932
679
194
203
156
324
451
847
724
643
81
719
389
287
812
306
678
937
463
708
966
231
140
562
858
458
977
817
152
126
44
979
24
115
814
861
324
580
312
772
72
864
369
160
821
773
366
680
50
238
604
884
371
585
917
557
439
247
629
193
175
606
252
305
97
807
834
272
201
621
469
753
679
699
80
706
937
255
970
521
56
724
463
878
253
125
903
358
279
592
47
961
653
702
432
682
689
752
354
434
715
791
667
885
442
163
373
263
403
201
261
281
707
506
499
790
423
30
723
253
827
883
559
44
850
581
751
164
642
405
253
362
969
238
477
803
581
870
446
160
356
413
896
958
208
545
30
529
86
888
629
347
445
22
413
81
518
53
862
647
473
691
321
234
723
933
499
701
880
481
767
284
931
482
94
429
375
802
73
805
325
233
60
155
355
816
129
422
69
875
695
551
840
556
867
831
239
660
328
513
457
931
335
290
64
884
896
403
433
809
671
792
211
567
898
327
752
606
713
653
194
228
375
767
222
813
510
744
257
417
920
626
248
113
760
920
595
286
74
11
903
177
221
838
150
463
608
772
901
604
940
542
14
352
758
161
611
832
472
206
674
382
674
318
440
178
211
943
279
463
591
216
844
940
136
501
177
700
329
216
622
764
611
116
646
149
696
322
624
154
52
468
778
738
930
963
348
870
218
382
94
931
530
542
937
532
766
637
21
363
910
945
724
808
524
137
332
214
130
101
405
932
155
19
65
285
557
439
980
547
314
140
462
769
163
919
580
729
570
648
38
375
773
606
587
944
540
426
850
819
947
395
50
654
184
135
760
296
839
736
35
89
970
810
86
221
815
562
527
34
589
820
871
782
75
870
317
672
199
253
241
237
184
422
248
894
708
925
946
896
358
65
891
399
621
832
765
753
158
660
311
63
414
146
231
932
16
176
133
476
140
887
323
348
793
770
529
363
715
803
519
789
645
152
701
853
513
882
317
636
547
327
657
851
87
57
166
888
107
543
151
556
448
696
757
240
335
679
484
916
528
527
155
347
906
732
719
643
435
409
409
490
632
231
459
874
210
586
42
114
569
819
301
277
613
753
627
683
223
484
530
176
23
362
507
807
376
472
199
65
863
667
842
500
349
614
603
906
298
583
695
846
736
208
569
750
128
80
277
912
643
510
548
879
731
738
100
219
500
120
816
478
945
764
71
677
631
30
200
254
831
573
916
761
459
824
282
657
318
581
977
16
599
954
667
236
442
512
539
733
120
184
978
390
961
753
251
567
456
205
595
854
424
972
910
822
461
739
644
647
675
361
604
552
499
48
433
199
383
777
168
20
785
431
43
502
524
852
164
56
598
912
892
974
878
976
860
343
850
571
916
378
269
915
903
893
373
215
474
735
211
609
852
65
170
848
845
124
212
647
430
307
508
549
433
611
30
419
901
589
407
745
750
607
471
268
264
444
130
129
286
324
76
404
399
712
802
974
208
843
659
490
797
785
793
904
168
307
609
475
620
225
828
898
199
978
896
92
199
299
499
853
27
353
695
461
589
633
17
134
485
400
955
58
35
434
606
922
337
184
119
122
964
514
122
672
156
906
61
929
577
517
147
980
777
801
327
442
527
285
633
64
695
116
826
317
627
370
226
263
906
37
351
416
872
782
453
533
700
531
228
907
614
200
447
804
216
513
672
659
782
411
899
616
705
360
761
829
29
687
307
210
232
661
795
103
479
254
47
456
964
624
709
312
117
594
169
128
407
675
402
144
837
346
662
27
417
88
841
275
870
535
179
186
965
150
630
95
558
235
503
172
700
787
49
72
502
736
19
272
57
86
621
348
198
228
353
968
385
580
581
722
332
33
935
543
804
121
288
150
227
143
611
493
89
31
223
254
707
936
176
595
778
618
141
507
523
878
143
49
421
835
538
490
382
705
473
459
879
327
291
474
619
406
957
902
368
829
888
713
494
855
186
415
352
604
967
61
326
280
181
213
539
854
208
755
98
300
237
43
713
750
316
410
114
708
551
622
626
818
172
361
637
165
583
763
345
785
242
773
278
191
452
552
103
805
108
573
825
796
790
455
896
658
701
561
351
480
215
902
594
809
808
247
614
562
623
464
145
627
609
595
558
801
402
412
280
856
195
231
943
871
379
933
505
790
238
503
423
786
393
842
881
73
99
39
163
318
966
204
529
648
787
456
349
59
277
263
392
13
483
463
395
970
241
453
313
528
646
409
643
470
335
112
602
956
201
204
252
211
955
112
68
718
820
520
186
441
355
121
433
167
282
567
798
122
595
979
223
919
728
405
859
660
290
456
171
885
970
905
96
975
800
236
557
82
68
417
499
279
874
473
673
712
572
690
511
748
341
262
762
317
564
330
397
961
43
163
68
545
675
970
166
681
687
190
707
976
825
126
842
216
257
101
231
748
765
659
953
549
439
615
167
760
546
479
100
196
513
67
897
795
63
71
638
894
20
31
822
505
913
890
637
344
242
38
287
39
256
355
119
833
684
44
670
626
400
505
191
803
710
274
380
166
184
546
169
218
154
22
861
607
556
812
399
709
806
952
362
88
844
741
840
113
413
138
406
256
357
801
263
931
892
664
301
292
142
944
688
84
924
974
588
579
685
521
202
961
951
34
760
290
670
533
640
312
107
934
596
908
104
166
423
94
696
385
474
593
943
961
670
507
957
429
899
690
775
719
92
139
235
495
88
770
12
722
743
713
484
323
113
686
866
793
637
857
915
757
795
506
477
586
362
825
769
326
25
367
382
806
185
240
77
905
602
562
653
47
200
429
135
342
302
640
127
50
285
960
615
421
42
743
240
327
774
104
935
410
503
980
524
420
219
374
722
917
96
262
654
959
656
28
277
691
827
866
157
980
825
978
675
868
660
789
819
671
555
151
789
220
311
318
604
543
651
943
390
483
270
798
836
722
429
197
387
561
230
748
74
768
683
192
449
456
459
499
768
776
760
788
658
749
686
755
574
63
843
849
474
878
173
20
901
288
757
782
822
676
237
815
681
931
833
698
554
108
429
272
516
634
225
25
396
424
485
179
704
935
121
502
924
465
639
502
88
342
556
882
871
374
81
633
432
135
263
321
596
171
479
382
290
620
180
652
538
400
152
239
244
778
527
205
61
237
832
460
158
862
456
281
769
956
225
853
457
68
929
475
843
665
431
676
677
94
669
206
317
362
662
714
586
914
241
652
715
212
446
167
825
866
501
909
805
224
276
612
568
859
169
38
689
299
437
792
404
494
409
567
926
718
777
137
964
805
142
321
88
32
815
680
272
460
219
620
967
66
65
920
524
246
458
653
246
246
135
538
172
409
242
265
267
344
271
925
334
551
752
55
635
127
148
910
453
681
469
745
525
608
173
230
340
531
235
409
145
377
791
654
432
970
112
847
889
604
307
465
66
566
518
633
682
555
443
38
215
869
478
334
140
848
928
693
681
390
57
624
647
926
303
976
751
239
50
900
941
716
217
590
377
21
568
946
37
840
269
740
765
167
765
411
296
911
527
570
208
93
600
665
313
638
465
595
410
378
809
350
795
893
281
173
733
36
339
806
924
598
979
830
479
270
685
649
230
943
105
782
832
275
685
51
688
404
662
727
608
518
894
85
750
488
19
953
315
342
180
550
200
730
420
317
53
741
851
410
753
897
53
238
224
74
458
926
888
146
796
60
682
394
925
169
175
320
949
428
284
68
382
559
930
203
208
478
28
298
697
852
799
818
958
921
920
473
16
737
374
581
792
331
223
735
742
275
845
239
641
962
454
311
137
452
310
339
733
210
390
114
585
187
815
434
901
843
864
307
846
316
428
446
316
851
675
259
491
586
798
863
714
250
45
958
801
488
834
376
625
161
526
920
944
185
896
292
934
316
87
304
785
222
181
623
647
931
177
760
133
717
708
391
314
938
952
850
932
747
284
945
357
591
193
929
789
896
144
530
290
265
414
795
133
61
67
193
283
312
441
657
55
602
948
142
443
684
648
256
368
797
913
268
109
610
87
169
954
595
921
841
694
728
100
914
980
670
960
862
337
553
227
372
204
489
234
323
163
546
78
221
595
220
520
391
406
689
810
853
170
959
703
744
249
201
819
413
456
89
218
347
676
291
375
554
588
664
185
19
154
686
278
590
807
817
751
767
943
340
836
581
697
582
685
257
600
34
630
416
265
941
464
241
600
822
578
148
489
178
743
416
513
283
28
141
277
110
820
222
173
314
405
886
506
884
891
238
427
207
843
303
116
38
960
257
355
401
681
829
551
399
623
577
231
604
378
336
436
401
93
278
595
694
829
902
129
302
411
448
628
565
537
916
666
482
739
975
818
64
19
532
668
756
700
133
725
684
346
746
396
605
727
523
625
359
378
635
15
305
774
132
364
687
146
683
93
139
251
721
877
197
797
137
695
520
114
914
350
157
200
827
433
272
604
61
200
346
401
568
441
540
273
89
557
959
645
155
124
398
335
216
402
669
288
256
617
376
342
159
512
108
824
480
891
423
12
639
537
12
34
67
127
796
441
527
933
618
942
471
631
60
580
88
236
569
896
181
28
572
865
934
749
81
872
166
121
507
203
424
768
516
849
323
715
486
139
396
977
488
428
612
681
728
696
183
792
184
549
273
282
854
130
416
674
370
665
950
690
135
32
804
505
601
978
945
382
835
31
454
681
368
643
461
724
657
666
781
317
910
469
377
183
472
667
12
734
882
871
703
924
794
486
949
746
854
638
681
787
708
669
453
29
773
457
755
516
686
594
176
255
794
309
137
153
750
939
199
387
464
79
862
807
614
667
323
474
128
258
128
287
187
413
163
944
352
880
554
625
265
67
607
347
449
795
286
589
89
261
648
397
310
346
798
245
462
481
362
136
739
430
244
267
409
63
167
649
663
759
62
464
680
162
145
140
365
528
710
473
929
164
451
977
719
785
662
271
779
573
579
398
485
457
920
949
339
678
80
492
413
577
377
698
754
916
507
173
520
118
131
98
868
134
156
373
753
552
145
553
471
432
834
817
572
486
820
278
34
207
126
669
958
259
227
247
979
809
12
587
775
245
662
314
516
102
837
106
538
221
877
624
434
772
414
25
825
843
272
588
562
978
21
748
965
230
620
60
621
349
780
193
330
101
701
705
561
975
122
659
794
393
346
78
668
240
216
435
13
855
946
626
533
193
950
925
402
118
568
363
451
592
504
802
809
18
579
776
556
835
273
559
369
328
221
935
352
507
193
610
773
303
242
171
402
390
801
591
147
685
884
154
813
946
580
370
794
186
654
347
469
775
775
428
343
126
297
318
688
665
421
718
94
525
283
684
190
714
221
946
93
526
976
307
250
254
945
526
428
757
762
580
840
966
248
867
918
968
471
51
349
679
972
10
276
827
163
953
868
878
47
266
351
127
877
242
163
864
194
328
790
585
330
382
976
138
297
813
142
539
642
434
227
842
332
437
948
137
740
89
482
221
627
781
245
540
319
648
598
500
977
480
888
645
601
336
469
576
769
50
815
296
771
250
472
101
10
226
360
265
964
334
16
895
305
344
554
736
877
464
545
654
608
180
830
532
82
367
74
826
768
283
365
351
684
228
30
523
497
300
193
294
391
205
96
929
788
637
879
325
753
319
373
817
534
21
469
40
602
562
229
860
77
872
166
194
486
272
559
938
222
690
383
505
434
165
842
825
285
961
87
244
253
190
312
102
734
465
543
191
293
16
556
771
13
456
765
163
377
475
816
976
903
597
328
466
544
413
147
921
950
428
409
950
612
234
131
385
565
658
464
590
160
292
554
765
909
251
246
240
876
342
453
244
120
77
441
13
21
727
205
544
146
613
87
920
261
167
86
942
123
73
257
481
133
608
802
323
173
422
13
876
916
110
115
374
48
493
682
824
535
264
618
447
68
478
642
506
801
22
829
787
711
553
444
706
158
678
408
672
389
544
807
524
213
140
933
456
534
505
238
96
269
580
754
889
238
575
858
386
204
551
66
472
960
805
510
677
309
978
492
633
121
609
821
129
757
40
957
463
836
379
110
755
676
125
198
661
118
207
15
144
19
952
948
500
534
154
710
780
373
377
621
316
771
908
518
485
311
960
863
514
264
305
233
281
454
712
293
346
544
158
690
382
924
50
169
647
637
950
29
804
937
789
276
727
13
211
909
469
366
153
462
183
564
419
33
206
187
45
348
274
836
284
36
266
897
271
947
92
967
265
586
802
168
765
584
613
797
397
953
314
373
414
799
30
890
788
284
767
785
717
835
612
739
576
640
398
252
196
424
774
934
58
50
165
576
82
372
827
887
510
824
337
291
261
868
719
772
101
33
462
830
65
23
327
340
30
566
442
503
14
477
698
426
918
139
215
749
960
143
927
299
434
246
641
391
918
276
99
577
727
746
730
891
876
957
250
697
821
920
355
469
118
961
60
806
758
440
31
374
197
490
561
344
900
498
271
308
775
969
610
638
377
35
978
59
234
905
682
826
549
708
892
405
327
966
907
282
773
830
770
171
614
142
604
218
84
305
597
419
15
639
879
86
398
727
117
39
875
73
510
913
945
40
827
268
972
27
192
867
491
335
589
866
149
50
446
84
395
854
262
296
41
619
162
295
395
852
685
971
366
125
455
726
518
685
805
914
164
551
135
16
160
969
798
207
14
572
165
99
142
399
157
427
486
581
128
19
856
517
603
661
126
127
170
516
866
52
252
90
615
496
620
97
331
797
546
171
234
620
459
258
140
692
860
741
69
638
50
85
568
333
49
695
607
54
613
222
699
866
491
679
698
454
456
349
351
952
791
179
965
802
197
614
135
459
184
807
746
151
135
177
365
228
291
465
23
27
533
369
727
880
230
487
807
170
363
847
437
60
931
597
736
80
724
797
66
259
195
718
333
465
584
19
555
20
10
279
308
245
239
873
317
634
143
267
472
290
168
774
363
798
67
551
549
16
529
674
478
690
897
206
788
735
419
322
317
929
529
292
265
560
766
95
301
356
769
611
196
411
666
610
514
962
593
396
720
384
678
851
696
684
541
674
375
12
655
196
543
149
934
657
506
16
893
86
255
914
481
435
119
698
794
762
306
815
846
799
794
884
801
65
629
148
247
841
70
343
702
977
979
328
911
877
349
73
307
61
491
510
162
96
459
477
506
130
720
395
562
76
618
656
652
799
388
366
184
219
236
89
746
173
238
819
466
579
76
699
507
88
623
26
559
501
818
671
518
496
77
440
971
658
759
179
285
491
277
615
766
890
760
253
123
351
335
427
142
210
902
962
452
443
963
527
578
522
396
277
871
120
884
585
412
924
360
933
869
609
936
555
664
372
540
333
339
100
876
305
636
823
693
768
300
363
34
870
223
293
150
272
315
597
675
625
437
915
711
260
145
774
136
572
277
572
808
592
245
604
143
84
514
705
309
838
933
93
605
670
98
250
669
212
575
648
924
908
979
257
697
900
757
622
441
677
42
471
46
654
713
843
184
395
332
103
153
359
896
445
357
479
63
125
573
65
374
932
191
819
89
280
732
279
31
132
146
307
210
944
161
173
315
534
480
29
940
87
240
625
959
387
53
711
549
313
615
128
751
900
460
300
304
694
75
725
809
464
208
458
515
150
366
237
426
881
386
271
938
392
615
710
827
261
410
458
333
934
374
789
460
882
784
487
28
455
389
184
391
327
838
337
455
882
79
179
266
682
205
331
241
765
816
825
590
765
690
427
415
629
350
698
580
447
77
779
613
368
144
218
658
473
887
784
849
843
106
606
764
615
459
70
867
752
961
601
184
918
572
731
593
524
485
263
68
779
586
134
54
129
924
483
471
126
355
17
426
564
846
792
159
249
592
912
468
368
732
398
369
835
81
338
78
448
612
738
913
122
854
963
849
323
979
550
966
493
536
785
824
627
189
509
339
147
656
326
968
799
411
447
600
119
785
428
13
785
192
134
174
205
210
104
100
190
279
726
585
150
925
578
893
530
762
513
84
801
129
506
572
129
676
139
672
330
434
261
509
758
704
482
876
327
292
956
61
675
696
828
10
688
340
927
585
64
235
923
304
541
941
380
677
683
837
534
791
582
910
195
44
763
468
726
341
681
478
475
612
50
477
310
288
240
170
322
336
683
206
903
929
462
822
560
98
834
416
609
581
937
332
160
286
497
290
454
335
119
596
258
327
82
84
199
855
36
708
398
612
293
187
857
257
624
496
149
462
602
252
228
587
592
818
520
513
211
179
942
326
965
611
194
556
222
390
273
18
242
539
542
891
294
397
451
457
390
749
710
652
550
768
393
88
604
755
757
933
392
714
269
980
776
749
493
760
928
79
498
908
292
490
622
201
720
377
891
146
901
656
500
836
415
765
77
357
944
202
219
946
803
598
770
429
437
709
152
37
857
242
366
188
89
607
143
85
825
305
283
332
528
632
920
647
649
773
316
105
459
560
703
365
211
833
639
371
29
811
264
790
177
899
548
734
686
947
885
222
902
156
56
855
932
194
237
64
752
786
674
316
208
19
393
229
702
636
455
169
203
651
592
334
955
650
594
541
746
139
208
598
765
838
770
558
280
640
722
720
460
563
554
804
856
226
886
680
195
706
437
336
665
615
972
569
483
794
565
595
651
314
709
588
787
257
357
25
367
748
526
473
94
855
54
837
879
560
956
589
492
184
789
454
749
526
697
31
938
760
457
685
138
441
480
893
313
214
73
699
242
366
975
441
722
859
873
564
542
328
674
81
141
178
852
264
234
494
748
927
270
244
412
297
363
849
703
709
317
846
357
884
736
21
861
414
812
457
797
127
111
797
93
945
359
350
816
592
543
176
227
650
897
868
303
257
344
725
747
493
344
70
534
212
40
312
239
170
323
687
132
570
389
279
590
941
296
278
20
133
804
454
177
203
339
969
948
754
716
582
236
110
362
467
732
803
128
576
909
163
879
563
936
59
784
893
881
930
902
262
480
794
642
421
384
138
826
835
606
732
540
19
355
774
113
781
506
699
314
300
398
910
663
652
216
779
550
288
399
686
386
338
775
768
972
222
776
817
837
728
127
422
844
950
858
738
162
18
655
379
465
564
631
555
766
576
222
790
211
39
225
478
272
434
673
136
65
577
827
432
937
49
589
409
267
119
427
513
825
550
528
310
760
119
362
930
791
212
621
392
139
180
726
606
235
88
841
358
692
300
408
560
861
473
237
239
64
492
64
17
149
393
585
209
275
505
327
662
560
62
483
34
250
973
297
331
841
143
252
622
759
217
762
883
722
315
403
784
858
257
691
782
113
14
802
366
778
146
513
66
117
510
135
869
775
147
873
151
219
75
234
200
534
324
694
157
195
567
471
444
751
902
73
474
638
774
804
806
591
401
338
177
936
499
823
318
815
646
664
705
619
704
874
444
798
465
978
171
486
308
872
415
405
374
371
349
62
784
91
582
545
776
236
156
134
670
807
68
638
933
828
747
796
174
419
372
292
549
644
27
325
292
340
689
656
147
663
354
106
863
203
828
936
863
464
710
931
736
466
204
434
114
329
764
89
235
367
87
484
332
589
344
602
566
857
688
959
542
434
207
782
541
359
42
485
908
523
55
416
591
168
743
936
39
652
486
811
521
962
923
548
153
401
469
50
523
290
185
917
336
481
332
145
739
345
374
962
449
595
315
224
147
599
721
730
820
585
87
253
621
713
658
892
215
490
555
258
203
491
139
491
260
512
725
321
52
365
462
54
910
669
331
477
105
403
677
536
490
333
711
737
770
910
221
421
200
972
904
944
322
97
769
542
428
588
546
121
763
303
722
416
373
84
362
386
234
220
193
773
923
16
461
727
738
157
177
399
91
448
272
964
84
496
884
888
269
287
772
807
536
64
674
900
107
876
962
528
871
499
22
602
723
914
87
145
890
303
299
144
428
626
629
226
99
49
749
96
462
767
77
698
238
570
755
695
872
747
879
646
882
956
451
420
656
202
120
883
620
233
278
578
130
565
349
426
251
194
332
660
423
402
950
817
467
758
97
771
317
802
13
960
539
641
520
574
102
665
599
871
634
526
92
603
946
407
665
681
168
670
804
926
245
568
659
594
294
225
316
809
659
761
701
658
562
322
435
610
115
500
62
207
389
456
889
784
509
967
828
769
134
474
728
473
38
262
829
785
157
73
512
836
682
464
971
441
390
454
300
841
40
712
591
398
100
14
133
552
924
94
197
617
670
174
295
856
482
707
615
604
432
175
396
20
509
196
278
664
463
856
572
592
872
137
890
96
158
659
260
802
20
109
453
278
856
901
271
455
323
132
615
584
785
169
939
773
920
149
240
14
935
547
583
358
345
393
464
117
74
609
228
215
704
618
838
176
746
370
605
578
798
537
938
530
324
595
788
756
331
635
373
105
896
255
533
427
687
905
350
95
704
933
653
549
978
247
379
807
854
186
902
59
186
447
451
381
299
106
672
40
240
399
860
78
781
758
866
556
213
470
950
742
337
379
756
482
84
484
935
711
699
48
282
672
730
249
85
301
749
402
119
723
379
319
261
206
716
25
587
577
180
837
693
559
761
883
602
958
40
866
705
585
621
673
310
853
491
324
682
77
547
524
883
190
244
964
577
395
614
50
560
661
434
701
263
906
817
838
793
86
263
694
584
286
595
977
283
347
448
818
693
873
155
416
314
490
77
252
674
126
498
58
562
861
739
609
572
884
372
150
976
272
20
227
897
574
203
200
965
206
841
276
43
474
857
632
330
253
883
31
369
258
608
468
157
751
126
185
626
582
597
271
566
699
451
394
52
801
177
572
367
199
859
322
897
861
281
441
944
837
738
674
67
513
117
72
525
919
98
170
872
775
743
388
380
359
890
657
915
460
809
635
878
307
876
702
947
657
58
924
803
905
965
485
207
464
437
517
566
199
762
954
806
25
477
111
29
349
711
413
725
766
57
538
177
35
629
528
357
804
359
966
495
735
411
399
765
776
665
469
305
461
22
553
764
635
272
644
519
391
881
736
823
227
625
612
503
528
363
561
328
550
646
781
428
345
520
205
795
433
266
133
508
240
608
688
418
518
309
650
927
128
584
953
971
298
921
948
558
616
851
272
409
176
663
781
240
748
447
861
798
974
959
546
192
464
84
705
709
594
849
151
574
675
132
559
43
16
955
374
24
817
584
347
766
900
951
609
220
359
604
31
167
735
572
266
321
207
72
241
596
398
709
398
233
152
561
862
436
942
648
180
744
76
682
472
603
784
839
417
375
146
206
255
180
103
898
720
194
648
119
218
52
787
57
589
550
186
436
844
115
601
220
626
144
868
49
788
898
269
271
782
157
919
421
351
837
787
924
208
483
77
474
319
929
599
970
740
124
634
547
387
479
667
168
383
54
857
128
462
71
289
797
587
456
89
853
158
764
753
465
847
775
636
477
191
165
892
529
467
241
558
918
116
240
275
632
54
472
877
97
259
682
703
427
949
882
228
241
576
359
478
252
247
881
249
54
92
920
421
653
797
770
57
539
420
456
484
157
852
495
41
21
257
186
632
531
141
208
926
444
860
742
630
722
804
599
492
890
285
580
654
332
977
915
346
758
764
437
281
938
16
841
249
727
42
440
274
127
887
781
169
569
545
469
601
704
167
90
846
163
58
241
307
405
967
329
108
89
758
652
642
240
425
868
492
932
275
775
270
205
889
330
508
806
294
915
379
432
459
723
506
621
747
245
847
37
235
406
640
321
617
576
269
234
946
895
427
679
815
579
455
256
743
257
717
683
599
255
504
560
963
965
310
453
817
621
910
251
782
668
977
281
672
395
811
298
155
840
118
194
931
156
869
531
570
126
844
723
377
53
273
531
342
17
862
541
522
147
78
305
822
325
696
825
51
263
73
476
738
227
636
523
304
76
37
561
92
779
148
138
534
772
231
662
556
96
49
545
311
835
205
226
31
851
327
213
508
282
250
373
932
175
806
188
556
184
949
359
14
864
257
772
224
259
425
178
639
139
74
530
285
580
606
19
899
975
315
912
392
243
831
204
643
228
191
62
165
203
629
190
706
955
796
145
577
198
108
61
268
560
662
687
509
758
763
564
827
520
235
373
481
638
506
124
169
769
840
898
320
389
169
698
629
548
301
89
86
929
864
668
747
58
301
292
581
189
918
657
941
669
812
127
940
126
645
359
852
279
667
944
115
582
919
323
369
12
605
142
909
877
741
589
627
573
736
751
558
643
94
834
713
165
614
496
395
444
480
303
306
215
188
255
455
948
910
924
305
366
277
460
791
402
846
809
190
166
743
295
422
316
449
553
710
443
899
647
594
704
19
574
302
417
74
147
449
380
359
853
527
398
641
635
819
514
254
777
545
476
829
110
601
427
344
118
800
521
902
951
658
583
700
658
137
410
930
392
60
848
863
285
591
662
261
702
577
256
928
566
487
449
431
886
589
232
420
690
21
242
520
865
490
312
875
739
263
881
816
943
585
331
563
906
948
362
629
134
46
575
306
423
271
866
281
534
266
757
689
897
39
608
342
803
764
213
611
234
888
198
688
763
291
361
612
687
192
225
71
55
46
403
605
862
241
93
863
796
523
368
596
249
210
57
874
863
691
251
772
662
941
95
753
135
424
28
646
490
72
567
439
799
877
776
419
795
790
908
883
980
33
262
295
192
895
976
551
765
819
671
797
37
261
952
147
153
568
817
374
900
360
693
199
162
303
59
684
442
206
967
790
711
773
909
975
80
613
732
435
796
597
444
19
81
531
22
600
484
475
396
873
400
642
913
422
759
548
794
915
169
239
900
389
810
610
881
476
295
813
904
585
13
970
297
45
727
491
455
443
459
98
877
280
858
885
962
482
421
873
97
510
145
975
720
512
736
96
278
48
106
785
740
81
27
365
338
329
435
421
89
609
544
484
341
964
353
362
875
561
869
835
649
198
176
790
422
856
876
408
280
451
321
751
369
792
811
763
442
23
346
340
416
213
563
650
891
516
784
203
153
635
310
22
186
365
419
324
942
942
655
740
741
778
771
203
89
408
814
785
639
865
506
282
63
767
379
281
230
704
433
943
234
273
914
685
271
551
103
95
412
793
301
862
913
713
949
670
372
648
731
764
456
227
938
644
937
205
425
612
613
801
661
555
184
392
62
190
535
256
970
750
276
192
212
262
547
627
719
711
50
538
35
364
811
612
379
766
429
758
536
277
19
976
566
577
720
829
316
256
331
318
280
522
889
560
149
795
959
553
154
342
407
260
206
27
473
617
363
573
948
439
503
111
685
450
177
156
78
485
56
405
397
893
945
695
167
249
455
476
441
62
422
630
373
607
10
27
854
121
752
795
645
596
133
522
674
203
240
417
227
481
921
378
506
711
316
260
46
79
308
562
396
940
251
342
113
388
126
884
663
665
85
28
692
292
864
370
468
447
263
532
734
801
660
211
349
687
387
421
475
507
472
350
930
521
104
144
819
18
497
407
733
798
952
477
113
854
527
156
350
394
282
771
341
649
458
263
928
680
54
918
51
481
698
887
39
689
566
942
350
956
287
275
256
696
854
528
493
739
579
342
540
645
395
89
669
412
700
108
758
103
94
856
85
299
696
365
88
530
818
245
285
443
831
475
720
141
413
191
685
548
944
810
865
812
242
605
119
506
468
201
386
113
702
606
440
414
259
247
151
571
73
364
245
346
644
664
403
901
599
735
19
802
151
230
459
594
284
322
587
462
330
22
251
262
559
206
577
392
582
219
974
614
360
778
557
370
584
975
626
650
292
216
283
401
297
941
213
158
891
459
547
132
523
750
935
553
913
792
179
455
168
359
831
736
337
211
416
99
409
330
211
524
325
587
270
10
266
924
673
822
824
770
549
945
834
16
586
710
961
670
374
469
690
707
234
772
192
259
136
578
622
323
953
928
658
72
351
401
144
426
229
349
393
536
818
546
148
499
440
951
109
871
218
516
648
686
402
488
388
256
723
614
310
291
616
185
611
792
173
187
812
14
216
733
526
864
801
313
628
81
875
125
788
326
36
185
799
580
810
908
676
869
381
124
171
172
923
842
12
748
872
197
259
809
833
329
514
914
588
953
243
100
327
950
691
549
355
290
397
599
221
691
576
684
410
90
601
867
967
374
242
791
537
457
90
188
840
566
384
877
857
185
855
889
829
980
936
531
818
512
671
879
742
397
863
819
594
414
424
90
342
664
974
229
489
721
124
813
186
276
612
805
802
266
824
258
473
112
455
926
975
871
897
538
167
755
197
591
330
647
16
769
57
269
591
310
18
401
584
979
839
38
954
855
200
823
508
730
299
669
412
115
961
860
276
294
15
826
609
188
72
854
257
24
303
977
555
90
580
134
717
643
173
631
349
17
438
265
282
505
385
162
305
772
43
518
264
278
789
940
962
16
91
171
941
272
304
747
499
25
138
551
907
175
932
778
565
862
475
725
171
941
249
528
795
339
813
340
875
677
853
680
430
152
655
65
657
540
297
905
750
729
39
833
284
773
578
403
653
309
103
899
138
262
944
67
658
465
750
686
540
113
174
144
329
273
115
147
298
427
914
868
428
94
399
387
966
693
665
741
779
840
296
440
915
355
426
398
142
918
722
365
373
185
486
593
302
979
243
514
405
558
882
501
214
515
313
578
847
754
279
446
821
428
294
254
332
362
797
133
326
344
721
609
47
655
343
440
566
811
578
376
446
898
724
487
835
769
306
519
389
811
498
96
519
524
148
27
116
616
893
211
566
347
691
314
915
950
609
875
705
515
71
640
348
29
853
91
216
86
147
197
701
619
813
275
968
720
970
882
887
311
800
391
710
398
656
842
327
592
454
241
391
840
940
17
434
423
166
117
345
822
758
330
441
33
398
371
587
430
719
366
956
879
72
553
392
428
611
387
398
214
551
597
905
704
356
908
156
890
60
840
694
842
531
783
413
343
824
948
70
63
961
677
823
823
938
636
800
294
441
950
391
785
131
708
526
69
603
308
198
356
296
663
595
653
52
704
594
71
578
438
529
599
249
132
410
689
232
295
606
263
85
102
384
833
896
232
291
57
527
267
355
941
161
205
85
636
52
238
193
362
810
543
484
543
374
611
304
411
429
24
349
564
455
241
302
373
340
252
901
762
186
666
912
943
615
943
408
358
32
787
262
188
685
498
776
723
943
413
423
474
779
306
445
308
363
847
108
576
703
531
435
490
864
672
520
583
391
547
304
67
234
20
300
941
921
468
209
841
190
677
339
590
237
868
446
197
867
104
391
614
31
853
354
632
730
307
177
406
921
880
567
220
374
111
162
549
561
723
478
887
255
202
221
707
806
774
971
259
539
171
902
718
167
583
321
437
566
552
699
963
511
95
35
806
260
887
626
634
284
662
258
753
104
960
530
771
949
736
672
361
694
413
931
345
101
298
270
466
900
821
510
706
264
606
903
479
408
654
232
943
220
920
183
779
793
569
281
651
221
159
773
260
648
951
84
726
889
305
877
506
750
939
786
256
106
274
456
484
531
429
597
129
853
679
789
386
649
923
509
146
631
250
131
238
853
914
321
862
820
363
75
451
97
793
192
928
207
96
231
516
702
333
734
896
534
559
100
614
325
573
289
900
487
142
598
763
425
319
825
675
453
551
657
269
778
311
593
291
978
916
323
838
68
524
675
407
362
599
11
851
535
937
62
168
23
279
23
205
298
528
23
449
568
836
225
225
679
776
905
329
57
387
20
426
522
755
310
783
425
85
146
495
734
114
578
584
312
488
852
139
291
377
809
645
502
742
940
420
129
16
667
462
135
816
926
166
216
346
815
859
588
179
311
824
81
969
960
376
207
966
223
30
34
44
759
758
589
957
894
302
625
388
480
585
728
161
807
854
355
226
645
768
855
465
452
46
974
44
874
975
352
833
942
577
261
761
323
375
391
307
326
659
621
694
931
102
717
294
516
208
465
855
131
85
352
621
48
909
486
487
273
818
582
159
156
160
881
311
347
920
148
54
916
503
534
81
780
975
120
198
206
220
886
402
397
425
923
501
634
561
828
45
730
971
686
403
190
280
443
234
823
882
645
90
570
871
608
880
609
908
202
204
680
825
786
125
89
363
59
105
248
894
345
568
920
546
99
564
448
33
679
100
733
240
200
316
881
92
242
809
397
92
710
642
914
810
685
27
476
831
503
489
222
707
483
160
415
244
422
231
54
601
643
394
119
317
813
893
717
614
864
612
56
86
303
289
589
803
743
614
573
482
773
307
673
603
888
199
912
573
99
123
904
206
102
321
459
799
461
228
575
298
268
168
320
664
926
611
285
333
267
180
785
495
243
971
291
390
932
289
716
516
711
401
679
722
513
276
466
446
446
746
55
32
397
356
135
388
665
778
295
429
889
121
794
714
666
367
150
833
48
858
82
852
825
910
56
576
557
873
235
960
138
130
235
79
35
557
924
567
340
850
430
509
148
695
884
316
426
375
621
10
434
388
154
868
545
324
278
482
204
95
335
729
554
774
291
943
322
201
174
469
336
558
973
189
885
830
253
390
707
318
713
65
242
690
424
182
757
747
852
325
303
516
183
854
768
392
719
706
118
519
449
640
596
738
605
383
193
559
257
316
126
299
448
816
809
588
676
62
172
722
944
274
970
968
288
57
825
373
228
143
498
665
961
930
462
867
664
675
731
416
291
62
552
756
521
176
939
38
464
380
246
888
783
971
155
54
60
756
885
641
758
448
543
761
836
134
285
640
459
621
939
363
928
444
950
864
672
80
238
263
186
256
142
716
940
564
150
231
13
694
556
888
634
871
611
288
207
147
299
938
334
857
63
724
107
486
676
789
18
607
141
174
854
240
560
918
109
370
977
811
483
717
218
289
616
267
293
356
672
620
38
863
851
335
92
372
574
75
301
512
303
268
116
761
523
153
686
462
228
687
111
473
543
665
624
943
914
916
256
422
670
439
366
275
195
117
617
591
914
412
112
707
282
635
246
838
640
795
824
27
229
640
490
291
112
862
860
286
78
188
855
12
501
794
242
456
51
61
194
742
426
395
729
595
650
209
892
348
59
406
40
311
317
99
905
623
450
669
301
254
229
949
750
312
70
130
544
959
566
859
273
165
554
299
686
789
823
622
965
721
852
975
44
471
602
973
910
331
485
345
656
281
418
947
198
349
757
445
306
713
252
107
554
738
951
695
613
768
626
562
33
494
358
488
453
979
617
64
61
478
29
39
841
838
760
902
71
492
914
327
893
822
745
438
36
152
323
203
560
508
748
78
115
531
351
209
885
331
847
822
193
205
20
476
793
530
523
204
648
299
32
704
824
78
147
578
19
307
817
919
601
491
338
163
682
417
51
914
580
299
437
771
649
289
546
790
930
887
181
700
227
180
531
527
127
524
521
78
166
269
128
93
607
750
909
605
661
95
433
854
727
697
944
26
818
378
311
630
13
510
683
352
735
838
752
682
472
947
525
882
220
118
230
798
741
541
185
942
47
475
851
634
820
571
206
617
909
911
75
693
907
300
312
378
816
545
517
660
678
65
949
792
273
247
428
705
720
224
785
164
296
726
754
711
943
171
575
644
309
576
815
840
450
178
584
649
957
779
34
678
112
813
588
587
355
742
34
745
75
358
491
165
150
456
420
223
418
973
193
744
916
818
164
280
438
857
369
740
338
548
971
891
234
775
934
784
207
23
612
512
685
580
963
176
774
599
261
384
539
857
539
692
51
161
405
510
115
871
576
749
507
316
246
889
802
99
304
777
297
673
246
320
216
535
468
943
354
267
418
327
250
271
728
172
79
180
180
571
365
421
541
250
593
857
743
49
163
864
18
312
621
969
943
407
402
907
527
410
718
502
880
423
96
241
852
959
585
616
244
107
159
699
930
506
174
721
823
826
578
821
917
456
593
372
428
299
59
136
860
632
765
660
603
174
273
316
147
495
948
823
565
339
663
219
351
173
379
217
488
934
938
554
54
173
829
929
672
640
174
869
70
772
797
759
28
292
643
257
887
396
222
340
601
715
716
494
527
713
852
443
689
918
125
55
393
368
294
768
594
205
524
179
828
95
939
601
268
840
635
179
794
947
817
972
897
322
711
137
401
833
895
635
780
817
206
157
32
250
86
973
849
939
116
627
678
925
733
188
394
639
248
504
782
507
208
163
537
186
493
732
197
559
136
327
50
611
540
742
745
360
597
512
654
497
525
510
907
128
790
543
748
298
74
649
70
735
411
437
382
276
273
189
240
742
841
765
23
648
502
536
960
228
310
940
508
99
272
200
351
396
95
265
937
507
217
780
49
250
876
944
545
95
777
494
941
733
695
176
862
892
462
607
278
955
150
478
548
739
303
772
270
271
881
705
711
54
331
520
970
124
252
672
462
913
188
338
227
438
605
449
890
116
569
753
231
976
175
591
583
414
477
412
421
861
564
59
698
790
33
667
111
469
661
102
511
434
21
462
811
193
570
116
32
471
782
219
269
601
10
195
11
92
495
408
891
176
757
563
319
644
741
469
409
623
265
104
604
543
203
365
189
12
564
301
106
972
416
425
549
595
244
242
445
748
584
121
424
717
273
955
490
404
181
740
735
639
248
583
19
810
176
501
933
440
513
32
340
236
524
636
239
63
55
56
265
239
734
46
733
164
975
311
72
235
452
96
889
203
825
841
601
291
274
536
752
106
713
251
773
390
967
536
332
514
626
745
689
687
303
502
758
671
635
88
80
379
50
32
970
78
958
655
867
105
72
272
896
832
489
800
217
964
195
451
904
108
672
324
610
758
230
419
842
588
461
358
272
830
913
262
405
358
710
932
976
687
889
734
336
915
745
900
472
750
856
671
850
933
786
774
930
435
444
821
238
777
671
774
767
167
326
500
458
926
692
416
699
744
725
886
427
670
60
877
430
403
778
963
518
976
874
707
162
863
34
461
404
183
135
632
928
665
146
327
158
648
572
741
526
897
903
149
736
109
126
110
513
627
117
261
88
281
582
629
671
150
513
473
415
244
407
112
546
516
187
943
231
908
871
573
753
602
823
823
908
756
522
377
216
432
842
465
823
51
824
156
189
594
962
836
103
379
201
428
927
113
152
427
861
362
409
89
380
893
227
603
392
855
78
86
290
24
269
737
176
174
521
886
112
510
936
14
965
952
27
21
41
184
742
580
665
944
780
429
814
932
459
254
866
794
229
673
165
421
541
154
90
244
874
747
191
87
356
798
226
847
914
873
358
612
788
92
582
575
367
379
559
196
338
176
714
320
819
327
767
515
283
658
708
32
312
679
192
643
621
447
449
543
401
859
642
430
521
129
601
145
229
957
220
284
119
887
151
800
651
707
248
53
47
78
776
896
79
558
905
452
451
91
530
834
289
686
166
872
421
821
548
561
785
812
714
627
178
906
558
696
804
821
289
731
205
14
631
10
110
696
942
193
175
289
428
492
218
356
32
804
775
848
77
172
147
134
559
931
465
870
525
911
527
828
445
967
662
59
547
139
584
318
748
478
741
141
425
521
822
869
501
217
779
244
875
370
384
467
979
909
279
519
748
412
691
736
554
971
364
323
136
86
661
437
950
472
202
867
539
975
597
937
70
70
196
436
565
23
821
916
834
132
435
463
161
804
575
396
176
875
837
382
539
914
964
579
578
381
77
917
285
770
959
235
151
674
720
585
157
498
334
847
961
528
39
559
953
137
240
838
316
598
646
627
922
724
342
14
465
560
967
352
356
651
380
106
879
813
337
815
956
271
23
124
52
690
228
555
751
227
779
617
180
186
137
656
675
651
370
844
58
396
267
262
178
280
148
868
441
639
655
61
656
795
25
484
702
475
494
49
171
951
215
304
736
225
770
353
146
830
212
195
426
919
883
569
113
220
923
797
693
527
418
891
493
140
664
606
385
310
512
475
364
193
815
226
885
515
827
597
622
153
231
275
848
175
408
437
292
552
19
214
671
432
288
195
100
271
61
872
533
85
721
378
730
454
690
816
715
716
384
958
431
617
932
816
104
378
913
425
535
93
115
324
76
144
476
352
636
629
931
828
969
962
977
735
568
913
47
464
180
820
372
906
316
401
274
845
940
268
326
946
322
448
728
156
828
126
868
885
345
177
912
147
481
286
809
107
712
725
790
627
664
219
952
761
748
123
164
642
128
756
382
794
274
358
11
756
663
650
911
14
971
378
624
345
205
556
812
516
617
780
496
403
411
232
817
538
736
667
578
731
698
10
422
157
613
494
98
288
146
314
592
818
347
550
406
328
826
46
971
546
612
363
319
871
63
927
485
140
306
552
802
646
910
197
21
23
324
693
968
804
412
667
562
35
825
542
175
45
61
714
372
652
956
336
29
243
272
948
350
941
412
165
762
671
423
411
379
601
226
296
321
519
718
290
110
241
218
493
48
524
913
128
597
844
247
592
599
30
602
324
415
272
956
29
950
145
789
249
39
359
598
860
21
634
724
966
64
511
230
800
70
37
801
44
108
489
806
581
400
899
41
548
146
172
728
331
99
735
192
52
44
879
46
794
142
834
795
876
388
701
930
289
373
567
336
458
196
457
503
707
860
338
398
96
800
828
218
469
523
504
756
670
416
373
51
127
143
122
262
511
651
547
942
823
939
283
758
195
175
368
652
876
353
349
421
385
764
452
238
573
434
510
602
274
973
978
560
658
836
114
980
860
950
155
138
754
527
717
685
652
177
516
705
578
616
441
449
713
833
294
421
40
714
454
813
681
579
475
562
951
586
161
970
228
680
678
50
306
637
432
44
660
536
534
728
698
899
14
548
226
428
714
178
975
208
248
108
599
628
230
262
84
383
769
385
501
950
321
152
741
350
598
368
520
772
752
99
228
864
375
597
189
168
430
449
958
310
441
307
969
240
246
644
60
254
174
433
818
16
851
526
929
636
872
54
278
903
273
527
511
43
36
422
515
350
383
511
15
398
676
505
923
397
378
74
89
923
934
837
125
124
185
591
67
65
733
748
570
568
905
883
194
765
646
589
30
567
786
94
911
99
279
880
297
515
242
248
406
381
605
783
604
872
288
798
94
620
112
333
34
832
598
360
944
354
332
639
673
587
650
975
803
884
399
948
129
675
438
307
714
481
516
633
712
223
615
617
614
609
311
608
349
414
948
691
922
472
894
800
666
673
460
816
752
478
898
723
418
437
556
494
967
438
86
865
64
567
680
459
904
833
69
727
563
686
951
306
122
181
612
268
501
754
825
862
397
253
893
956
863
780
436
64
609
729
576
755
531
463
708
600
53
948
610
653
520
522
579
928
190
450
165
86
842
611
865
204
100
442
469
127
154
551
64
25
254
394
82
250
610
932
745
877
269
324
787
493
199
123
243
199
535
925
115
789
587
39
662
341
762
701
327
555
644
823
435
647
737
908
23
681
172
179
833
861
368
412
174
967
84
177
786
838
355
867
346
290
845
437
647
65
546
90
930
374
758
40
379
788
83
800
50
729
102
742
634
420
725
972
457
311
358
884
793
712
749
153
724
163
91
711
742
159
346
654
103
106
643
197
319
210
335
363
148
280
867
769
803
449
789
563
428
553
655
246
677
748
918
467
101
146
267
518
389
675
919
634
488
25
835
782
722
672
589
267
207
350
375
581
213
388
394
929
430
279
251
723
59
381
634
961
692
834
376
216
596
102
782
35
382
496
898
743
569
424
950
310
417
232
92
641
735
348
164
828
183
185
893
88
789
131
186
308
792
227
673
969
637
776
290
880
942
601
336
83
664
685
907
583
245
144
114
836
930
832
152
970
815
359
173
324
683
506
468
867
924
949
583
44
528
241
155
168
397
745
68
961
322
908
559
847
190
595
51
235
137
301
249
334
968
404
925
569
768
751
588
763
106
191
749
816
877
822
740
414
953
602
98
382
752
819
600
203
374
253
732
515
369
472
826
930
910
791
230
875
534
18
612
325
494
819
867
647
64
318
579
291
937
160
493
90
598
173
658
343
931
861
129
15
314
18
462
344
925
223
488
535
889
118
652
255
715
124
717
263
716
192
734
898
369
840
238
617
810
522
759
65
972
378
549
938
528
845
359
440
505
260
820
676
66
326
723
804
245
821
154
147
538
88
851
266
373
230
190
493
215
959
610
455
396
743
144
886
120
101
542
823
126
733
673
722
823
215
482
359
647
82
758
283
860
495
458
794
606
756
782
244
946
248
586
402
606
558
841
168
196
851
321
286
37
173
785
209
48
888
803
424
791
922
125
359
214
82
732
467
283
716
612
256
803
872
838
827
343
844
952
826
532
171
89
295
259
92
243
334
223
252
276
81
82
421
546
525
820
974
598
893
892
36
290
911
469
880
138
21
629
410
703
956
116
881
32
455
153
755
567
280
504
222
127
402
124
676
885
396
551
879
686
272
33
449
937
920
315
169
239
196
810
204
617
314
508
556
438
730
209
974
701
593
922
937
47
486
793
23
494
460
277
511
789
395
139
116
912
283
880
218
647
394
717
455
176
501
441
264
454
486
926
187
484
817
467
967
393
255
102
330
537
820
980
323
921
394
243
577
966
326
179
182
488
448
716
464
606
703
925
609
213
224
137
515
305
33
431
512
776
86
748
910
275
437
314
232
537
471
917
581
288
846
280
621
382
708
790
117
237
309
762
425
36
506
195
540
764
826
535
674
734
536
686
688
830
775
502
806
665
364
260
909
617
42
508
447
307
924
579
646
389
386
898
549
918
138
159
159
931
865
291
337
520
306
961
979
976
586
147
225
286
549
902
521
394
519
854
193
727
431
290
718
679
632
469
969
419
593
783
953
59
790
50
751
535
299
513
512
712
853
322
842
107
687
595
731
954
218
319
953
78
539
619
379
966
97
27
155
647
687
452
140
578
149
564
335
257
413
66
667
930
353
642
558
785
423
361
740
163
756
803
707
753
255
630
656
570
727
922
447
80
604
449
366
282
728
73
851
602
267
785
770
507
346
199
503
755
311
661
861
815
486
227
407
193
631
861
473
535
635
620
319
15
488
277
402
612
429
963
54
291
559
658
673
320
500
763
848
349
664
774
698
835
875
327
34
938
77
51
876
137
533
82
209
774
402
47
885
464
370
12
616
219
632
902
525
319
141
135
481
666
237
260
546
224
891
498
448
325
845
795
222
971
805
35
770
342
65
351
221
48
189
556
289
554
599
455
348
427
257
329
627
127
530
34
271
537
767
304
961
786
461
797
719
443
773
202
253
921
231
130
646
740
565
439
231
881
750
219
979
39
742
741
806
740
836
801
492
545
249
832
471
29
237
278
88
534
608
812
159
579
761
39
286
285
356
955
341
905
112
724
874
208
231
44
606
34
597
893
793
785
743
375
263
93
700
687
563
119
823
396
57
945
318
478
905
16
923
546
248
512
77
586
374
571
285
578
289
31
143
84
64
43
956
295
189
972
431
355
359
133
832
961
153
403
470
390
478
733
171
815
922
636
375
353
261
590
646
677
265
529
419
153
906
267
525
420
927
737
693
790
322
506
911
694
507
700
302
33
887
12
715
32
149
532
708
319
518
310
839
777
728
172
481
805
698
884
101
594
630
331
793
788
97
204
385
926
547
600
801
767
910
170
319
862
106
955
818
642
452
720
780
531
125
604
211
56
357
507
271
950
605
433
687
695
200
872
78
377
62
99
109
561
797
450
259
103
825
609
658
427
701
724
77
639
721
155
22
27
333
435
410
798
296
839
315
630
685
107
189
651
957
644
209
917
86
931
71
911
516
735
833
132
502
817
478
520
642
299
209
637
28
87
199
743
638
778
709
642
866
448
208
118
637
405
148
946
104
414
17
381
666
881
145
907
247
231
784
170
230
424
200
636
59
308
152
281
971
876
104
72
553
763
957
224
312
574
233
602
329
656
133
533
786
579
50
549
227
946
890
810
91
12
231
727
47
311
302
799
166
664
825
202
90
257
84
314
735
972
125
677
50
556
634
886
657
477
936
701
108
717
330
798
214
452
688
125
462
311
374
453
430
709
667
283
921
974
907
161
821
567
276
775
832
81
154
207
82
562
640
483
540
664
825
832
209
95
93
396
639
447
823
367
791
504
883
144
921
739
645
842
789
493
24
698
975
457
163
641
615
570
704
679
748
338
448
662
597
511
281
812
318
454
40
947
833
902
258
544
624
910
585
197
656
552
691
456
656
180
656
978
650
617
389
888
234
134
307
445
525
935
23
585
95
325
503
311
891
456
977
79
356
555
575
270
724
572
660
583
614
680
911
365
206
779
362
281
160
626
799
393
283
199
459
66
533
564
745
252
938
141
52
378
11
521
582
538
612
648
940
422
615
67
582
832
756
144
64
201
717
413
333
140
164
329
565
484
444
290
305
599
410
555
676
524
830
611
20
393
769
197
209
150
637
371
285
350
231
671
856
590
224
443
723
822
431
194
657
320
382
178
297
551
29
358
969
865
826
82
665
601
546
828
187
284
518
209
480
131
617
33
672
835
226
28
504
383
531
461
414
545
395
839
488
120
278
142
977
515
95
939
581
544
312
238
484
883
761
270
142
142
150
509
435
963
232
727
428
51
142
785
176
143
568
218
705
277
79
912
657
800
542
112
455
322
928
143
140
585
666
26
126
728
963
778
319
877
478
666
583
953
363
140
416
850
707
911
714
751
12
33
745
83
349
930
342
652
595
125
730
289
127
145
659
947
253
226
268
60
364
525
397
952
738
579
845
230
301
70
187
383
720
618
756
502
678
806
630
81
505
976
71
530
835
408
585
742
102
546
271
711
40
476
554
905
510
763
229
370
129
481
734
419
804
229
162
929
574
285
629
914
421
506
853
118
510
957
291
95
719
861
213
187
345
286
976
761
580
457
683
563
68
12
410
398
861
913
10
187
561
577
898
508
812
523
38
393
440
61
322
104
963
105
45
633
736
297
501
821
660
519
592
308
744
582
340
364
819
799
829
305
420
712
748
617
655
513
242
859
512
951
769
719
21
802
419
451
288
164
700
346
359
188
737
574
212
434
866
243
307
635
661
780
379
440
791
255
598
718
852
96
356
519
106
346
78
569
36
780
605
112
145
260
682
591
897
76
946
95
822
442
348
48
213
846
694
767
24
800
59
355
94
854
585
886
691
614
801
100
830
511
928
37
678
668
627
417
938
533
849
595
643
618
885
642
633
101
805
410
972
467
78
19
682
33
669
656
839
831
550
619
148
566
954
627
664
375
451
630
716
137
916
84
811
663
235
688
387
409
250
583
299
541
497
941
664
251
592
628
339
611
419
977
573
960
593
122
58
814
781
409
902
764
342
879
835
196
214
794
481
116
946
742
879
370
524
435
690
485
425
462
433
269
341
351
178
530
12
605
832
833
611
89
158
372
303
586
641
635
267
437
607
597
960
821
72
975
371
959
90
456
926
881
327
215
951
698
439
617
754
348
890
691
486
522
156
614
229
696
172
916
907
122
633
936
408
378
211
939
148
320
514
770
272
923
774
848
863
465
493
836
438
661
696
884
763
51
93
569
638
118
436
702
152
351
207
29
186
940
643
224
566
788
815
856
287
190
961
54
75
799
360
65
437
933
415
270
742
571
572
847
639
211
358
514
748
393
531
835
705
62
784
736
299
204
154
278
302
26
326
429
727
596
831
502
669
924
471
675
543
432
787
491
239
433
961
586
290
664
588
175
24
692
175
382
467
139
556
433
362
917
171
432
475
598
463
128
452
621
641
222
429
938
959
330
482
835
593
538
932
382
283
888
213
973
611
28
932
293
757
799
12
674
908
756
875
412
555
845
693
674
829
856
680
634
916
816
374
767
339
136
448
581
651
682
87
411
180
933
537
221
253
775
410
441
252
827
848
45
219
591
676
832
651
335
78
980
448
236
154
520
159
604
852
945
184
732
967
122
887
935
145
284
582
72
384
775
957
439
757
180
720
18
932
29
454
124
952
645
586
875
110
20
331
777
892
152
972
872
767
315
743
315
111
292
599
675
21
186
751
246
707
308
225
503
335
83
720
483
98
432
21
458
212
496
260
867
488
594
255
544
111
245
91
43
596
716
197
951
865
820
907
396
797
941
444
32
445
267
877
648
703
527
614
581
812
427
415
646
264
831
315
770
99
72
915
918
675
134
954
883
160
36
353
193
933
363
480
18
485
845
71
97
475
382
604
67
944
931
500
518
167
625
962
366
212
172
937
467
549
934
822
961
722
853
87
188
837
359
964
713
815
70
304
177
397
976
960
400
535
271
329
543
955
686
785
551
142
634
469
152
147
333
637
576
311
334
159
339
274
333
719
402
844
847
798
841
667
783
853
596
692
851
705
784
860
87
820
659
534
927
474
488
12
446
766
892
452
618
190
232
609
370
907
177
614
126
619
17
547
638
458
197
374
541
570
588
346
575
728
271
608
330
604
683
565
950
852
567
172
58
617
935
219
19
610
482
556
487
370
431
306
92
352
872
185
89
861
155
577
338
216
474
615
445
568
841
663
395
116
496
853
246
650
685
785
40
734
558
224
154
610
297
258
541
220
932
804
366
576
750
516
158
421
827
809
165
612
612
244
337
975
26
694
314
838
31
448
750
299
43
838
111
477
591
303
407
247
545
802
365
430
898
505
825
481
314
844
347
44
257
830
831
959
67
138
962
398
720
896
865
259
755
86
360
435
495
803
326
978
784
215
976
692
788
980
630
847
916
693
726
498
531
148
225
361
351
596
440
756
893
278
254
813
29
146
82
582
26
17
833
797
729
145
483
287
755
155
97
99
396
586
242
708
758
726
468
879
549
25
729
206
352
952
77
823
639
960
406
820
775
834
366
498
615
861
396
582
703
507
940
271
44
689
554
78
240
720
640
393
455
283
60
942
275
883
325
607
774
772
965
256
960
394
962
410
603
750
834
809
574
87
872
947
148
200
350
796
690
181
127
17
226
893
227
688
643
18
468
750
631
336
769
397
451
68
81
292
117
557
545
517
973
476
46
834
776
561
675
345
820
17
519
886
719
314
380
365
625
627
500
68
936
739
549
358
207
376
301
896
962
638
465
880
485
121
718
128
741
86
529
30
27
109
886
135
455
867
775
178
868
238
585
846
925
269
487
621
433
287
858
623
349
685
917
24
592
24
361
762
777
553
273
652
267
48
827
331
419
337
507
481
36
369
443
579
726
80
637
439
775
302
517
909
748
759
740
389
441
679
347
48
426
527
290
441
374
320
345
61
37
75
889
616
299
879
169
483
769
581
736
198
155
613
106
918
752
726
86
288
235
681
110
824
296
222
497
409
529
618
813
389
234
612
904
522
104
424
205
369
858
420
228
980
410
765
718
200
49
196
405
658
675
474
169
208
667
410
272
408
610
139
370
621
745
264
936
793
201
168
771
381
162
790
250
295
119
32
805
253
656
559
884
137
246
925
166
355
929
718
75
250
466
38
400
357
610
360
492
110
98
819
337
337
838
954
165
807
926
71
970
662
738
189
509
645
90
397
242
589
40
255
186
367
825
952
815
235
820
244
329
509
276
931
467
522
755
971
642
867
530
351
929
422
876
282
715
221
824
765
823
258
377
634
505
19
954
865
113
325
831
70
892
583
715
578
220
235
502
708
164
933
838
55
639
435
879
112
349
753
835
93
747
871
577
206
654
906
393
449
413
85
194
678
807
649
587
306
801
111
63
968
588
222
800
815
819
819
251
853
732
524
422
218
924
748
348
129
619
896
101
775
268
832
325
79
918
528
514
628
545
66
957
386
765
428
390
472
134
388
426
530
344
163
709
400
781
499
252
563
922
764
933
927
880
634
87
124
809
286
952
159
730
885
512
682
83
418
661
676
863
817
259
736
884
337
934
678
677
284
687
525
850
561
954
837
138
295
77
249
615
201
778
751
282
935
235
354
642
238
392
253
168
615
627
208
362
768
707
361
854
450
895
333
683
856
824
159
818
225
703
36
475
624
490
937
637
931
932
880
212
770
145
176
199
765
671
402
23
313
705
798
138
844
409
212
612
400
197
562
639
806
490
781
850
470
740
251
824
545
733
850
544
893
619
12
440
753
567
684
212
420
152
284
793
214
650
311
510
917
555
775
684
937
836
125
476
299
365
329
134
545
690
767
513
949
707
668
38
119
729
24
361
158
337
316
479
435
433
77
854
170
552
660
889
825
726
112
259
436
731
688
845
94
254
446
255
967
849
300
92
951
862
733
567
654
258
218
892
827
890
299
520
612
308
194
713
517
136
286
702
873
706
228
177
622
84
881
967
438
820
120
547
163
362
58
178
160
478
710
363
61
969
175
481
564
335
264
359
577
913
861
308
934
441
656
420
232
973
279
138
612
832
330
20
723
785
931
820
765
437
384
270
559
640
88
654
589
694
380
298
882
211
141
163
194
170
615
310
429
542
654
244
566
773
474
635
332
77
365
368
197
843
318
24
978
343
962
719
554
927
630
573
350
212
975
432
905
197
592
458
266
738
807
927
729
32
122
192
251
394
833
153
477
646
613
200
77
867
634
619
207
712
203
305
75
17
532
491
923
244
899
316
660
915
910
543
935
824
689
687
246
236
363
619
696
979
185
851
844
583
221
197
322
678
430
48
354
247
417
51
332
44
119
953
655
905
222
22
538
11
681
792
164
32
23
389
200
859
673
792
559
896
175
530
373
244
674
710
674
61
225
377
835
725
644
339
445
528
855
519
323
628
903
482
73
539
653
652
747
348
809
299
373
66
713
168
349
656
371
980
177
525
524
281
459
880
178
217
399
549
820
350
292
578
442
175
312
517
280
777
659
652
642
860
831
186
476
364
590
980
958
512
576
54
226
123
900
307
860
65
349
395
621
870
740
931
900
183
413
760
602
716
714
45
197
257
900
540
490
542
266
877
412
635
662
947
73
272
268
702
347
109
786
428
486
281
259
905
973
823
800
895
865
309
578
940
358
660
117
380
458
439
924
924
795
367
600
411
677
909
863
685
237
266
852
494
483
769
715
466
154
576
391
502
229
269
779
275
650
12
31
112
558
207
931
546
348
327
647
450
843
533
78
38
526
428
217
592
528
806
552
418
475
760
39
535
409
554
799
802
233
863
491
216
156
965
386
651
863
564
287
728
96
560
519
236
116
486
880
548
501
300
839
702
20
243
652
941
619
115
698
796
398
532
605
824
752
685
902
289
518
341
127
363
669
692
127
490
635
535
481
170
667
747
460
48
350
267
66
220
464
905
593
855
100
390
354
231
971
799
156
265
223
966
516
33
713
241
485
899
479
599
146
272
179
146
699
906
181
617
273
929
812
700
658
765
681
49
333
470
173
699
667
399
704
124
164
754
22
617
667
702
590
645
966
462
105
754
408
195
175
945
884
356
684
384
816
652
378
334
407
539
384
213
59
911
192
536
306
286
980
689
27
882
287
686
438
696
387
523
613
347
576
263
222
192
609
554
231
945
698
892
280
666
273
79
177
66
176
430
274
499
241
940
200
782
281
399
494
951
254
131
726
367
952
849
211
102
726
292
611
301
268
582
508
303
480
344
442
601
144
536
510
967
919
816
62
433
378
57
353
732
498
556
381
178
425
425
286
812
15
95
110
531
884
36
241
954
920
775
152
770
333
35
264
75
14
592
56
619
407
572
741
501
649
101
409
636
80
230
500
361
409
840
512
96
198
596
214
202
794
514
713
908
896
341
16
865
802
74
457
681
51
526
785
356
722
718
46
28
154
163
727
131
552
790
327
788
956
465
495
668
903
56
67
692
299
531
767
852
249
775
29
598
727
405
860
665
372
743
730
797
766
360
894
195
289
618
650
14
46
856
498
498
203
891
770
315
923
830
719
833
955
621
606
54
546
837
688
629
825
130
883
402
90
583
561
357
684
587
283
113
107
266
624
876
345
956
17
194
350
30
141
297
779
340
737
944
750
657
732
120
120
718
160
461
222
406
435
766
346
510
344
854
899
823
806
960
872
721
897
396
923
452
214
169
318
218
846
380
78
597
927
59
679
663
483
956
437
209
797
453
207
85
302
154
897
71
849
620
477
290
521
612
238
454
20
439
29
787
157
19
431
499
932
201
460
114
445
816
46
914
955
214
630
30
693
421
793
221
47
795
905
762
667
963
647
721
35
122
128
664
37
76
79
436
822
104
82
589
927
252
605
222
315
167
210
304
897
18
976
364
145
755
710
199
399
901
692
75
570
168
524
212
581
558
892
601
360
826
902
760
211
481
457
326
579
379
304
454
790
482
427
64
224
225
968
556
652
509
291
582
318
631
446
51
507
698
958
866
259
610
599
690
178
31
976
377
335
101
352
973
838
763
825
613
748
64
492
972
885
809
749
171
79
226
384
546
876
798
936
313
945
486
167
725
853
399
319
364
18
501
487
83
898
93
204
78
249
460
577
738
168
872
684
854
957
16
297
869
66
353
687
85
363
559
823
663
152
625
858
666
331
582
732
41
405
752
951
585
702
45
168
71
979
216
553
126
554
375
300
485
851
385
900
566
915
536
535
801
334
852
898
439
743
69
876
754
466
976
726
669
255
457
218
448
781
533
581
209
93
530
978
89
394
733
678
91
860
27
658
800
130
611
946
42
490
149
733
311
509
123
274
469
837
219
257
243
595
255
965
300
282
667
609
564
106
180
919
389
951
543
529
416
683
750
886
617
580
225
935
303
327
277
50
313
278
619
630
141
601
263
863
768
958
205
496
280
454
265
735
614
977
637
794
655
823
630
478
492
718
556
248
72
933
815
864
955
677
136
313
682
815
51
705
213
644
656
545
216
576
703
756
94
777
479
73
150
567
525
360
616
901
651
552
965
192
556
386
935
741
883
89
852
919
622
121
297
493
138
765
474
322
911
150
130
195
555
849
23
297
98
761
106
865
680
131
975
483
462
157
152
25
55
792
228
68
702
327
905
764
486
202
486
249
777
588
199
379
798
64
392
884
96
923
182
281
290
859
949
717
894
390
371
322
831
160
529
292
866
191
398
878
940
449
979
395
949
781
736
791
351
147
636
55
692
590
175
560
906
282
339
238
794
859
173
218
312
884
715
808
930
372
849
76
921
457
761
264
808
794
663
849
29
479
615
966
583
286
29
217
819
28
663
131
289
247
515
548
440
39
232
805
17
343
63
864
42
291
298
391
824
405
857
895
767
223
583
397
581
79
630
257
735
873
629
895
48
738
588
804
890
240
106
873
458
98
965
765
382
747
50
323
672
644
342
486
80
142
148
783
308
632
233
161
305
258
719
707
889
65
485
196
756
912
345
864
250
669
57
580
227
389
497
195
322
314
251
241
525
677
849
25
322
35
51
519
359
849
817
57
578
562
36
89
793
195
769
434
713
412
285
246
865
528
403
689
175
761
910
314
612
346
273
273
15
429
425
57
668
468
875
882
477
371
560
354
559
911
433
801
707
569
760
43
422
285
439
645
667
832
823
198
600
341
496
258
142
672
369
826
317
831
459
48
729
893
755
114
559
158
553
300
824
606
728
544
771
46
770
868
510
357
822
22
545
285
472
258
355
678
923
955
137
697
258
457
769
839
735
628
182
289
523
251
405
959
233
103
423
949
376
923
252
223
751
466
20
72
546
307
175
818
845
539
321
808
739
136
94
421
781
812
140
577
742
451
585
562
129
980
848
212
286
969
335
174
198
481
420
647
803
648
377
141
826
530
424
524
719
971
509
286
261
617
822
818
575
952
820
218
72
437
833
411
944
283
286
841
843
596
949
494
512
582
279
161
682
761
821
45
880
325
433
935
21
828
51
928
904
813
556
948
444
366
18
572
110
339
851
879
787
572
814
506
276
333
390
653
881
493
278
316
355
615
32
859
747
722
532
720
442
419
280
281
736
809
207
292
404
913
93
777
456
977
636
781
466
272
568
398
277
578
421
679
612
766
618
823
228
671
235
824
48
475
395
123
289
471
745
586
91
582
61
317
94
938
704
920
955
920
476
79
144
560
605
841
365
499
98
274
254
226
312
679
366
383
646
260
152
799
318
878
346
661
178
615
946
430
312
859
810
642
939
383
350
740
337
613
316
589
770
219
139
830
540
591
305
171
143
665
874
578
245
808
637
632
641
80
42
790
95
525
152
263
846
449
715
568
316
137
914
284
774
207
756
246
298
431
246
792
978
344
396
979
545
627
209
276
423
812
901
586
152
400
165
483
457
102
293
960
725
957
417
45
201
725
918
603
419
126
80
908
706
784
263
596
561
878
316
796
197
302
515
753
661
901
174
98
273
526
963
571
580
239
958
219
840
492
721
271
186
147
894
465
606
744
23
316
97
900
619
824
130
305
25
607
269
189
225
612
585
637
468
586
386
198
514
369
721
466
144
596
196
65
650
727
163
522
167
794
146
553
722
926
253
265
177
897
148
710
108
655
275
551
247
711
957
261
219
638
930
208
885
976
595
257
732
230
379
731
82
889
785
924
25
283
519
764
348
901
608
171
511
391
497
821
145
890
576
771
653
893
584
920
411
413
727
37
838
524
615
755
29
804
328
771
614
365
443
66
798
439
384
884
541
461
954
678
818
743
961
879
826
622
229
501
634
274
873
596
534
717
874
448
487
903
761
194
615
275
631
775
831
111
606
950
774
570
978
119
98
688
347
384
641
535
856
283
379
122
43
331
795
589
954
76
749
123
743
648
136
300
134
270
409
744
356
283
818
540
602
157
182
374
482
265
387
762
481
92
893
318
415
899
257
10
691
534
453
453
919
753
265
239
481
636
696
217
563
853
652
648
89
197
262
55
770
636
114
850
33
623
947
920
611
922
115
743
812
368
947
430
907
359
263
683
294
925
316
121
195
60
291
142
903
11
879
722
853
295
117
470
267
35
861
356
825
860
670
837
55
588
758
86
185
718
364
932
136
433
813
278
53
890
588
582
603
349
125
40
358
628
296
917
814
309
598
959
514
89
889
376
22
526
232
367
438
303
334
208
309
775
433
102
601
419
232
776
771
655
882
763
447
641
537
929
840
428
170
929
159
531
137
581
517
186
751
538
506
911
511
475
880
169
923
498
544
457
817
838
390
709
295
794
350
327
369
283
653
694
184
67
771
51
655
460
483
816
845
446
538
618
636
326
844
95
632
362
629
164
501
618
320
766
826
71
579
756
439
311
427
827
203
489
890
845
589
785
703
316
124
386
691
39
88
176
854
529
782
151
65
45
472
775
462
91
702
658
511
27
302
59
491
148
891
784
641
43
771
175
243
779
654
343
205
697
434
521
971
405
286
885
892
663
10
568
172
896
437
835
598
697
881
494
948
549
693
689
424
280
396
615
465
793
953
733
144
951
335
780
580
979
100
546
862
604
18
345
499
590
434
652
17
72
469
581
783
225
775
196
917
143
178
402
922
227
252
416
742
451
155
500
258
424
207
305
152
944
28
588
619
381
228
519
292
423
826
119
439
881
77
584
297
424
136
924
968
897
782
148
141
384
108
71
450
974
274
166
942
606
751
932
189
669
176
675
731
796
685
611
862
814
607
121
183
767
831
441
968
423
798
302
445
960
957
563
311
171
966
411
494
624
344
688
197
134
196
930
184
936
581
564
364
350
855
830
898
785
320
110
30
40
883
428
174
912
530
822
668
152
469
173
634
731
188
423
691
546
373
409
873
644
98
151
903
375
608
916
30
508
743
387
650
87
71
804
608
405
443
582
764
835
138
921
877
511
854
162
295
519
112
868
190
785
809
53
972
969
709
769
82
418
130
710
344
607
928
675
620
722
397
919
630
782
691
717
457
437
243
633
848
414
75
875
334
572
519
753
350
467
889
951
594
970
560
51
692
215
261
849
932
578
575
531
914
109
600
15
782
613
539
285
544
664
451
640
112
777
553
881
195
743
365
433
745
328
756
80
619
118
814
753
235
232
242
636
683
388
370
625
392
593
688
495
884
914
448
568
669
842
426
550
661
116
143
405
420
976
102
253
584
498
434
822
198
763
342
296
839
575
101
18
407
181
384
22
500
616
351
722
576
444
218
473
711
170
665
818
615
523
588
164
730
492
721
71
919
514
295
853
295
381
23
336
141
745
703
138
631
240
774
324
140
332
68
389
455
621
696
802
214
386
860
383
42
180
23
916
444
948
256
961
326
222
897
48
30
68
434
615
699
611
174
429
651
353
844
240
152
235
194
801
724
169
375
948
922
79
464
948
800
880
961
587
737
750
667
179
591
706
759
814
358
294
917
650
508
829
824
378
249
690
940
37
958
912
638
177
138
814
593
26
306
886
487
409
977
105
524
108
715
746
629
911
583
129
923
318
800
437
857
901
501
865
824
633
571
473
597
893
38
226
927
663
524
626
726
641
905
811
261
783
164
584
329
536
80
280
432
192
423
604
742
792
938
345
784
789
223
362
749
707
216
550
436
256
570
474
607
339
315
752
480
233
357
942
613
868
489
163
201
446
314
294
161
239
69
349
101
303
621
850
855
32
150
590
419
492
904
229
83
135
812
676
589
885
165
16
850
250
191
407
950
462
93
168
161
28
256
845
695
502
271
813
182
29
848
339
384
603
567
500
155
869
818
730
164
90
412
162
559
465
830
104
838
614
707
190
153
395
453
108
309
383
668
843
593
418
589
668
644
535
223
114
481
335
104
250
45
596
797
565
510
882
854
268
203
413
610
850
521
439
256
169
185
81
380
939
95
286
366
498
395
398
151
430
667
746
484
170
515
212
387
577
71
485
756
646
600
887
919
85
269
645
250
271
545
833
899
790
856
218
505
410
729
69
929
969
324
581
577
829
245
513
442
547
811
368
903
622
615
381
572
86
710
119
611
956
860
831
877
488
452
588
110
733
125
798
581
22
224
419
312
210
500
12
787
60
796
268
326
205
812
250
471
331
803
844
965
103
703
762
333
368
21
786
563
85
699
468
504
448
380
829
494
127
464
685
439
795
358
483
685
459
711
315
486
322
429
39
851
481
968
417
481
663
852
808
936
275
232
527
182
466
457
641
639
712
630
438
408
435
332
265
869
639
868
246
469
664
539
943
867
692
483
895
712
927
462
610
50
198
107
898
206
50
883
856
455
772
576
617
51
49
417
523
41
311
580
566
837
869
499
241
760
466
498
271
367
466
56
295
89
397
613
412
909
500
631
650
130
645
631
235
516
72
111
128
960
748
81
459
37
379
196
709
161
590
625
132
459
373
746
940
442
214
292
260
323
966
556
935
33
417
39
347
192
652
946
526
545
904
144
695
269
24
416
66
632
551
249
70
194
408
55
424
681
680
403
760
207
631
651
733
456
467
128
894
622
368
599
388
286
514
756
679
765
408
30
247
874
112
267
464
693
74
70
158
618
751
838
871
790
355
391
93
616
192
539
579
393
430
151
105
37
377
558
777
939
262
204
816
758
412
723
566
508
687
569
322
797
654
579
283
484
405
79
352
811
379
236
674
446
829
226
860
356
573
575
906
394
142
188
973
297
292
700
369
681
131
323
636
53
909
812
422
506
767
868
790
344
796
839
689
843
717
716
282
465
431
541
489
383
639
899
592
927
948
641
803
592
545
409
678
956
759
776
680
305
563
292
921
703
716
676
141
641
554
754
300
11
662
71
402
793
464
691
824
210
636
691
425
504
127
896
160
626
536
702
594
401
946
709
598
847
248
731
126
422
550
796
754
855
777
610
130
133
102
400
82
917
367
859
933
259
808
174
478
466
255
543
125
172
899
343
870
404
448
876
816
908
201
914
59
794
317
108
96
794
760
335
426
371
566
266
834
153
165
352
136
62
771
391
155
43
315
28
368
470
390
763
264
342
147
266
903
663
253
844
965
161
166
306
62
343
46
940
575
884
113
921
888
818
129
485
203
677
774
839
736
762
86
234
724
322
364
851
874
644
780
529
955
271
461
941
319
307
428
501
410
189
812
499
561
853
267
281
589
750
660
516
475
346
222
601
397
444
580
12
86
515
447
568
883
359
545
979
954
784
380
684
585
269
405
283
545
948
752
692
230
223
637
596
98
72
733
917
940
326
819
139
941
401
440
46
438
292
896
67
767
13
812
516
704
614
440
134
754
471
434
706
720
500
264
721
321
526
698
726
298
855
952
132
682
793
731
953
514
313
89
669
500
345
606
250
213
241
968
932
275
328
280
146
81
907
448
397
332
624
831
149
104
493
35
547
623
917
727
583
950
321
311
192
282
332
281
235
235
620
107
406
768
927
806
884
645
187
673
133
54
975
438
491
557
188
283
770
549
900
261
940
720
710
493
813
525
524
184
150
551
700
127
326
659
363
55
376
953
927
69
392
718
218
752
495
296
921
390
615
429
673
751
62
815
572
443
54
927
778
150
43
800
143
343
360
289
142
402
506
684
364
946
282
207
828
259
221
735
313
661
179
459
167
637
700
523
427
396
821
195
887
625
769
420
955
533
230
786
462
809
25
390
358
50
697
635
808
690
314
410
348
60
55
430
277
599
867
842
455
58
59
435
929
290
547
682
968
480
205
565
432
565
111
545
723
223
912
591
521
202
642
819
219
382
432
194
772
396
112
462
212
12
370
727
695
640
726
875
288
208
469
659
94
520
47
558
39
927
475
125
776
727
851
534
719
806
387
526
197
748
594
310
591
423
702
634
371
519
816
381
155
225
856
541
871
251
269
910
952
183
737
939
789
869
356
213
487
894
127
25
978
190
758
294
554
690
252
125
66
714
383
47
89
400
341
199
952
155
849
464
318
765
457
777
410
162
467
724
898
13
150
528
670
980
660
424
705
468
602
811
420
92
143
383
492
502
563
744
522
403
443
44
689
116
646
128
913
387
404
37
671
627
477
63
623
380
575
167
278
409
969
605
20
595
26
380
347
724
453
148
475
418
153
585
917
782
591
116
401
260
495
525
608
597
126
175
925
716
156
722
938
789
55
945
792
823
819
925
372
570
809
781
472
689
913
287
808
830
369
366
699
803
882
420
415
457
620
786
400
659
663
507
786
696
633
494
439
573
243
348
878
604
892
959
442
827
862
404
399
912
198
831
559
901
749
299
37
563
799
352
13
848
412
208
429
269
734
612
187
469
662
920
966
511
204
245
397
104
392
791
459
627
378
472
427
536
54
69
852
216
976
260
412
897
781
907
739
364
388
211
155
878
316
669
725
413
159
509
894
241
701
461
623
30
220
462
430
244
138
96
437
511
342
740
692
690
742
332
810
63
559
158
871
637
147
224
139
841
907
54
149
508
23
530
346
400
914
952
712
344
799
27
700
817
766
122
642
886
289
107
427
735
37
909
865
13
468
745
822
789
514
179
220
334
832
18
516
781
667
663
528
512
921
304
447
215
11
396
819
207
413
702
722
400
237
279
341
12
473
861
669
188
901
313
36
651
68
156
269
244
723
851
713
859
286
796
445
539
875
924
283
110
554
935
390
951
856
488
362
57
263
457
881
101
622
849
415
405
711
927
771
512
952
439
966
107
667
654
398
926
345
174
868
415
415
874
155
771
871
177
554
525
723
212
980
618
930
122
733
583
697
959
625
519
209
244
707
569
864
236
878
299
798
588
776
977
103
687
879
734
840
45
501
380
169
187
948
287
476
220
624
432
938
960
912
220
87
512
625
205
311
842
95
60
293
298
630
752
566
647
964
690
610
392
435
709
318
873
19
888
920
23
308
766
650
468
630
466
682
635
143
202
58
856
625
210
183
583
206
728
560
904
150
41
378
773
587
859
626
232
534
88
250
365
663
947
562
506
122
424
673
72
714
513
517
241
762
147
681
293
117
154
185
174
302
572
96
430
918
483
717
688
360
536
61
101
940
901
412
901
445
849
940
170
832
94
266
644
236
939
523
380
887
169
838
398
767
372
75
488
662
478
699
220
404
683
362
554
592
152
798
925
681
501
631
417
193
226
258
398
474
821
221
897
60
651
611
73
545
799
766
853
420
831
103
176
492
761
603
201
753
459
680
67
564
970
531
49
407
484
731
461
822
288
840
777
834
890
19
479
179
271
670
133
432
744
893
705
507
504
537
970
718
301
533
120
800
501
435
708
62
958
406
282
322
230
768
532
808
484
273
69
128
205
704
412
98
326
252
693
779
315
140
380
191
753
950
551
641
542
141
104
672
93
964
260
724
591
970
199
55
686
412
187
117
623
424
311
653
931
462
311
918
712
554
166
710
508
946
649
727
769
824
329
893
636
146
535
196
516
394
635
590
337
917
482
33
789
746
766
571
212
31
233
654
271
820
781
899
200
73
334
237
845
84
349
840
462
142
218
637
420
253
270
505
901
806
250
826
371
744
164
260
478
273
686
444
456
405
412
459
21
186
730
14
770
606
280
626
531
530
877
609
251
533
424
469
303
35
21
56
895
273
744
175
453
113
371
519
458
897
122
647
51
741
398
686
777
72
230
130
229
794
650
955
159
934
718
38
235
336
127
602
730
959
778
395
626
376
902
335
187
887
217
683
492
470
443
237
122
220
465
545
27
598
961
805
686
282
179
829
615
454
724
908
554
397
288
558
625
798
533
865
30
196
700
602
854
509
79
889
862
313
761
443
581
75
87
119
617
805
235
135
46
559
685
329
807
72
318
911
411
948
597
40
339
410
837
727
857
76
460
41
831
778
627
953
169
819
261
873
640
637
811
228
444
132
383
691
638
711
96
907
871
648
382
771
145
248
366
240
391
770
513
907
263
91
116
163
696
819
931
369
377
623
147
661
880
979
773
659
596
966
699
402
309
258
552
70
548
653
273
565
442
823
252
771
349
718
876
373
650
549
859
918
629
58
953
34
506
658
456
414
127
768
909
786
152
693
822
924
502
371
217
329
552
859
57
381
905
734
736
800
74
587
619
125
237
147
789
208
965
555
849
815
864
83
64
576
815
74
141
954
900
101
656
619
449
344
59
789
962
731
413
11
719
279
454
42
968
664
961
904
444
485
258
187
554
35
177
208
115
202
835
697
806
626
486
568
546
230
910
502
102
724
901
363
164
974
257
640
177
186
530
113
311
497
924
641
658
255
658
522
255
623
429
286
13
813
776
272
28
120
514
556
404
209
380
432
570
651
74
844
155
252
285
510
644
644
899
196
714
333
234
29
715
720
932
918
915
242
843
91
975
565
38
376
218
722
544
816
36
387
682
267
154
394
202
903
732
870
192
524
30
800
696
662
321
520
855
788
817
543
665
326
710
123
66
837
151
636
333
771
903
395
453
714
208
22
197
821
787
884
851
262
673
939
627
604
264
879
903
177
705
160
601
38
976
406
819
861
368
190
173
255
111
519
333
632
758
510
680
938
56
608
573
677
695
480
718
41
734
470
553
217
978
863
339
450
673
536
936
259
538
703
113
795
838
850
542
284
83
967
727
614
838
196
204
284
648
174
501
937
188
319
730
866
714
835
814
709
450
490
888
936
728
355
920
789
500
274
692
891
951
648
324
352
307
237
733
421
892
317
530
251
611
201
946
756
516
752
166
630
155
292
946
815
550
345
113
890
73
442
195
40
679
27
251
541
842
192
246
435
126
453
551
444
349
81
651
168
248
739
114
342
551
70
814
124
543
660
760
390
850
443
615
492
905
53
137
729
304
976
712
297
449
211
555
422
914
559
653
319
869
39
472
464
229
899
473
635
257
935
118
267
766
892
228
943
562
808
659
844
815
286
618
464
151
424
575
912
828
579
86
592
363
909
30
30
339
707
222
861
924
806
955
42
563
672
122
269
757
268
212
792
100
254
875
683
382
667
429
335
904
185
16
527
660
240
619
435
886
506
874
659
492
413
227
284
624
304
962
504
201
618
317
659
262
537
32
570
285
325
386
942
883
342
756
175
291
344
301
43
67
96
496
487
222
865
194
572
884
642
745
480
941
550
932
611
377
960
108
28
573
658
915
944
517
776
724
498
492
12
788
696
502
930
47
695
755
836
405
307
63
857
731
763
807
98
404
739
709
123
21
415
423
771
975
710
319
447
646
96
718
657
804
938
99
464
595
914
200
164
422
658
951
613
330
560
963
491
554
782
97
370
435
660
278
489
372
243
96
509
969
614
534
52
587
139
862
427
393
40
478
195
869
222
140
896
512
873
465
520
795
215
498
253
150
476
733
348
435
453
732
47
774
55
917
462
471
323
764
542
183
304
308
124
752
730
902
301
865
319
225
687
136
955
584
266
115
336
776
571
237
206
190
115
748
669
755
214
957
453
549
125
42
386
697
135
801
643
935
122
769
93
350
853
140
642
267
248
536
962
287
188
862
516
143
250
695
373
903
965
209
896
275
661
355
849
659
226
214
291
308
764
896
49
43
243
665
931
398
323
552
811
57
71
43
39
534
425
757
160
413
479
218
184
416
429
153
597
70
888
73
394
922
516
646
408
321
616
830
426
348
243
122
742
276
49
174
782
80
393
459
215
393
423
863
515
682
267
605
902
806
873
459
68
418
389
753
152
81
47
935
720
506
339
453
207
222
272
653
238
224
183
737
731
594
423
862
723
629
508
180
361
209
299
424
509
621
957
49
967
255
567
426
89
598
21
912
849
416
547
31
41
183
772
255
307
434
639
967
658
29
693
467
88
793
294
819
322
472
111
115
69
572
422
839
856
303
693
499
419
235
834
825
73
521
508
272
968
515
897
438
607
301
527
171
321
162
444
601
226
964
383
786
267
695
269
92
282
692
44
225
887
130
679
313
187
847
806
775
561
442
973
171
213
230
520
207
945
167
294
135
236
510
128
808
592
715
24
357
373
844
730
356
906
887
122
185
590
472
383
540
173
858
881
693
915
392
581
455
762
139
349
138
458
812
182
457
828
911
832
195
955
374
378
144
813
716
799
476
621
131
694
319
398
848
445
391
223
30
257
759
180
949
595
51
373
308
645
542
731
967
484
828
795
732
214
667
403
576
882
512
858
451
741
740
467
304
461
332
68
95
752
202
79
58
716
140
593
174
95
710
656
609
873
418
245
344
433
608
157
555
651
771
889
739
510
926
285
127
513
175
411
568
865
662
532
631
487
97
125
729
176
373
161
506
638
269
36
240
364
622
428
263
321
516
586
614
488
712
64
191
407
937
667
518
605
28
646
193
360
593
350
441
471
903
239
978
752
144
407
241
659
729
580
844
325
248
176
554
939
254
279
484
846
977
779
333
838
799
176
893
811
581
11
232
257
375
784
292
845
529
203
643
356
556
284
773
220
648
779
265
970
164
512
928
911
71
582
235
441
240
525
692
129
863
502
561
749
224
633
202
140
475
277
84
678
188
760
871
666
626
73
972
585
383
288
806
217
384
239
24
502
878
886
668
422
139
778
262
128
113
600
421
294
843
414
410
654
527
185
593
918
50
870
612
810
842
519
763
188
734
20
917
803
70
663
423
481
170
471
639
370
793
39
64
908
599
877
786
471
629
667
655
846
417
784
148
634
509
32
724
539
249
318
847
801
798
529
193
448
919
532
126
30
782
474
32
436
302
850
715
791
918
744
648
410
797
15
381
221
119
518
551
126
616
698
772
221
679
68
343
453
374
75
698
642
584
639
406
788
299
541
657
226
975
651
326
28
339
575
916
769
504
583
350
681
401
626
921
780
870
563
586
92
689
910
829
110
941
502
400
549
312
785
514
135
708
335
768
234
767
297
457
778
549
36
484
410
106
400
836
728
938
66
108
737
530
298
684
626
655
703
378
19
580
856
828
34
85
958
163
124
966
648
606
420
825
107
144
114
64
910
280
827
52
401
877
371
869
479
326
706
836
32
832
609
277
250
59
170
736
159
157
447
504
837
425
420
620
317
461
76
688
887
964
540
488
581
340
591
57
283
517
49
773
700
566
37
923
511
182
158
339
664
706
248
339
804
88
201
697
404
247
876
963
143
126
48
924
912
548
136
260
896
514
683
792
611
955
495
340
517
201
569
752
812
848
456
271
519
928
383
908
822
113
256
255
780
708
908
769
246
383
377
927
613
278
11
945
974
35
46
794
557
739
121
887
325
59
774
936
758
175
370
554
145
772
660
237
668
287
310
158
571
294
447
108
733
817
200
276
937
102
955
123
399
545
783
674
77
853
435
610
19
529
192
947
481
893
742
575
639
706
913
28
886
125
519
706
907
933
621
770
490
884
20
72
300
11
827
449
409
330
980
790
231
832
936
269
822
289
149
326
433
953
719
861
135
282
678
731
291
925
589
254
597
34
200
834
976
873
941
317
85
847
356
906
675
608
155
870
106
25
719
79
352
88
614
833
26
107
421
513
228
134
422
937
51
515
887
201
133
394
623
816
252
568
640
508
489
397
476
576
255
117
163
226
390
294
89
744
963
900
966
532
38
149
670
204
730
696
333
940
315
962
238
550
27
94
627
467
701
419
517
131
439
767
169
866
653
398
735
319
40
767
153
621
666
289
402
658
123
644
669
11
716
43
345
705
346
630
146
457
75
65
544
372
599
560
24
313
978
106
444
953
406
777
106
409
542
880
290
535
325
553
539
160
538
760
689
29
556
842
580
202
831
818
769
627
727
263
294
274
19
845
523
52
314
387
36
939
629
254
40
961
590
855
887
608
799
283
165
17
230
426
613
683
157
18
789
183
556
376
795
425
358
92
948
725
107
456
510
596
462
435
695
235
886
447
785
808
979
440
863
729
693
784
914
33
877
866
399
145
419
907
423
771
40
924
116
734
593
696
948
481
453
116
400
130
970
324
59
459
719
225
946
797
914
962
637
296
929
610
234
436
352
208
505
731
441
829
274
341
767
392
316
584
152
276
631
621
848
815
878
583
358
857
803
306
145
505
349
789
320
55
971
854
78
893
585
214
411
465
887
967
845
384
472
713
454
379
978
518
498
318
751
779
905
664
745
770
248
239
836
272
561
760
372
608
29
341
181
322
770
416
552
670
17
962
811
570
739
762
554
342
542
34
311
637
301
937
437
439
787
572
931
873
35
729
304
500
570
747
841
324
577
353
460
42
327
765
701
80
546
770
726
546
339
689
285
631
710
491
165
276
755
450
524
142
592
632
972
172
663
432
911
183
947
148
964
825
622
244
106
11
930
227
536
51
831
681
300
270
56
170
515
192
240
276
828
239
771
100
804
980
183
702
22
691
321
610
913
96
265
531
234
929
62
517
880
48
742
190
341
17
718
628
293
631
115
154
494
715
761
116
391
939
505
763
21
570
918
410
905
943
66
243
767
483
384
244
244
169
111
676
196
977
538
895
620
56
23
388
128
683
292
426
448
474
147
65
559
63
720
164
172
76
666
345
824
620
219
698
553
250
861
629
449
309
823
387
205
81
670
282
454
774
449
450
843
465
607
619
811
42
632
966
221
510
895
876
894
678
845
389
850
524
945
455
709
50
648
750
21
459
774
885
835
324
888
202
482
736
60
104
197
863
614
398
362
512
318
918
851
770
854
776
138
759
795
293
566
149
497
508
490
158
131
586
567
84
646
677
220
67
608
757
216
831
647
113
292
854
417
291
374
704
622
684
893
873
486
811
415
964
945
840
105
270
211
31
927
916
439
142
234
580
56
114
477
388
610
526
403
325
170
292
251
45
417
35
671
237
832
964
645
548
63
12
859
608
263
931
110
825
59
896
78
848
294
660
656
304
12
580
972
394
568
458
216
698
930
673
976
695
584
494
768
589
522
86
655
905
910
621
754
727
933
185
818
645
892
440
386
720
244
135
521
112
332
261
557
710
542
481
46
340
551
58
636
460
580
660
485
893
591
709
69
185
972
541
807
297
408
132
661
93
886
196
814
671
607
181
400
583
806
241
68
547
560
807
438
714
870
431
387
185
54
253
422
293
203
721
163
95
240
934
913
449
797
298
610
437
843
272
260
43
211
919
802
511
655
171
957
461
139
11
789
110
536
369
684
590
870
639
533
949
243
237
794
663
238
679
139
822
442
648
839
603
577
703
180
844
112
259
217
10
371
685
128
274
426
243
776
84
380
17
73
651
833
634
28
802
582
353
535
840
157
534
880
597
538
902
968
260
151
337
46
641
542
608
977
691
733
131
111
828
736
373
519
456
683
163
242
76
285
955
561
608
886
549
872
312
699
879
279
62
476
146
10
45
88
580
717
148
111
621
670
526
747
260
774
944
887
14
391
696
62
903
163
302
489
917
551
718
768
238
651
389
554
426
759
416
837
762
149
282
56
16
788
246
608
549
966
227
647
515
293
175
786
411
348
675
830
702
510
486
859
260
238
644
731
106
715
689
319
514
669
377
193
206
641
727
68
970
419
792
463
521
903
929
539
573
744
235
17
615
441
689
895
947
832
549
723
550
82
280
226
378
532
818
23
508
621
596
768
71
712
32
598
331
817
81
708
651
797
917
486
744
474
246
832
367
804
274
402
935
975
958
131
483
26
217
52
333
235
229
83
537
275
148
159
772
573
284
921
474
575
574
534
964
273
230
363
800
97
400
474
873
244
574
679
534
445
853
890
69
161
880
184
959
59
524
354
284
938
258
314
886
528
899
505
727
600
956
51
520
498
783
310
505
901
511
459
698
330
293
627
90
302
762
601
237
234
938
713
334
588
195
637
664
126
165
491
549
705
952
467
759
590
784
773
507
199
154
764
519
928
677
669
628
181
751
679
269
110
523
790
727
504
599
32
404
621
573
797
885
898
639
713
120
497
569
775
760
978
643
694
41
589
41
940
827
916
296
645
830
228
78
877
685
870
570
20
860
842
267
528
882
256
454
283
205
414
287
168
116
569
701
820
248
669
869
189
405
43
41
116
419
70
764
408
227
483
190
275
327
525
352
243
464
263
114
447
24
872
409
182
215
125
415
171
566
205
353
191
973
404
736
438
181
277
652
605
544
59
317
688
594
466
128
532
814
812
892
961
431
56
161
898
33
677
412
966
955
778
462
95
912
899
650
826
367
511
522
448
146
150
594
544
235
317
853
217
582
953
873
951
115
192
77
921
100
617
304
886
605
930
971
85
936
137
831
304
844
542
678
741
42
322
165
194
484
127
605
694
603
911
479
459
964
116
863
964
782
791
431
308
46
462
449
507
323
399
321
358
578
387
927
327
795
586
893
94
955
701
99
602
372
236
540
930
678
152
777
640
273
338
963
527
821
305
527
870
69
349
592
62
970
312
664
644
308
367
356
855
328
961
387
507
447
921
69
471
812
291
177
723
643
582
35
429
463
372
648
381
321
277
962
199
523
522
817
760
829
762
251
363
18
260
119
678
189
671
681
460
59
178
602
14
56
25
626
31
929
708
12
963
325
13
896
179
411
434
942
644
801
890
235
686
884
486
493
943
450
479
934
394
741
583
725
283
83
155
614
118
635
122
764
261
89
807
703
384
299
681
934
969
609
740
769
138
11
108
482
715
354
370
15
602
599
300
197
674
506
257
56
484
112
310
38
188
617
787
319
430
298
944
96
42
573
485
508
256
880
799
57
781
874
333
198
556
103
350
312
962
619
251
756
345
138
793
343
427
939
384
962
517
13
406
445
772
417
394
649
408
605
673
511
576
232
573
496
955
648
690
845
86
90
326
446
938
406
710
445
821
100
157
643
328
283
462
170
956
45
594
687
848
165
286
260
86
418
977
753
497
413
532
940
290
613
585
268
174
55
406
612
237
336
156
84
604
81
357
73
857
814
71
124
347
771
947
940
293
438
603
874
494
832
365
953
65
330
667
282
187
437
749
315
442
816
255
77
878
198
856
589
170
513
513
160
617
77
931
757
110
57
550
643
571
306
449
496
938
357
933
143
425
110
962
762
305
141
654
912
755
736
814
975
899
274
970
570
548
272
570
311
540
675
855
425
478
57
380
550
555
628
552
30
292
12
711
434
879
441
712
403
855
449
521
296
196
780
393
231
819
970
913
35
127
542
861
896
859
823
315
964
353
659
749
841
229
350
717
957
873
264
701
688
361
305
836
328
406
442
786
731
553
620
429
977
181
523
345
492
434
715
153
491
576
67
368
845
52
262
953
126
708
560
557
164
974
234
659
306
146
36
908
965
955
978
175
270
603
26
391
300
813
678
367
114
71
446
163
484
220
721
47
384
394
157
608
293
808
314
527
613
480
651
539
191
500
710
666
923
800
510
509
646
669
247
906
980
547
24
349
489
652
342
744
471
221
432
490
180
605
603
258
959
956
675
200
539
575
20
612
499
591
975
976
858
371
37
46
780
759
892
975
895
277
585
523
810
579
214
614
31
628
139
547
769
638
367
276
299
384
904
109
822
873
605
868
112
841
264
339
300
801
183
22
949
156
655
780
748
375
72
200
870
238
239
177
204
330
515
825
89
896
564
564
497
53
454
463
665
655
897
203
979
867
98
61
739
896
950
817
30
389
381
745
912
223
126
709
505
869
293
511
923
28
437
637
198
758
667
486
662
329
935
756
175
16
236
636
952
533
447
298
628
903
751
477
951
796
773
489
82
525
249
880
139
356
873
98
973
169
565
554
510
438
596
160
852
955
296
915
397
703
289
946
348
364
626
613
566
402
181
215
897
207
41
223
95
209
432
179
269
641
751
141
254
308
340
792
138
299
367
765
682
731
123
627
788
83
301
90
774
60
44
240
669
412
217
101
538
177
177
714
94
694
387
272
389
26
281
673
754
609
862
812
706
962
759
222
358
741
264
904
147
262
843
938
273
109
69
261
281
394
335
917
301
980
24
527
429
515
232
151
242
632
233
969
88
169
713
167
216
706
774
294
429
696
307
310
109
557
713
693
546
773
584
946
688
461
618
812
30
975
832
486
939
791
955
40
16
763
659
388
179
717
529
294
292
420
21
350
923
488
595
32
457
777
54
794
641
19
148
90
546
911
313
398
549
416
305
134
879
707
313
721
141
420
967
12
415
392
842
904
957
652
114
286
499
265
759
153
145
440
546
247
21
531
779
843
796
217
910
304
692
50
553
54
438
569
578
274
300
503
782
842
285
168
388
167
253
268
688
551
199
519
506
947
430
941
441
49
681
308
18
639
170
45
924
513
960
578
782
46
673
262
360
676
895
406
813
801
46
220
428
153
835
977
800
396
160
980
214
678
244
490
772
244
655
184
395
518
75
35
280
83
770
738
324
487
289
194
652
840
636
185
475
837
519
669
346
296
967
627
702
418
671
747
643
446
594
221
925
187
670
618
190
410
720
341
168
815
395
471
148
546
345
227
763
873
327
950
501
260
725
602
41
491
929
89
295
131
165
598
460
479
670
892
960
139
479
60
813
974
980
521
436
835
302
133
116
72
576
546
214
195
863
391
831
58
204
54
328
770
822
64
602
367
632
473
835
130
912
780
499
971
419
331
526
953
136
823
468
311
260
330
156
252
182
223
419
810
636
195
648
889
414
370
639
13
66
820
315
601
237
51
511
606
902
92
211
377
300
958
330
307
708
700
540
224
713
10
476
556
110
513
206
648
552
169
200
502
199
46
562
608
115
490
383
165
460
342
494
304
383
405
93
274
173
904
454
613
465
751
319
639
191
36
865
502
686
615
542
313
201
659
937
654
385
448
693
749
188
162
389
105
513
731
978
487
630
763
349
604
576
146
844
824
936
840
132
514
646
515
979
20
400
892
340
965
27
885
580
168
247
877
769
88
481
554
687
540
421
425
404
348
668
185
450
28
136
558
124
318
696
646
259
959
192
189
899
914
452
389
113
830
67
346
853
951
321
35
366
740
613
209
97
120
947
217
672
75
540
651
120
63
446
437
274
585
48
369
396
517
483
870
891
940
902
247
513
512
151
943
381
182
40
940
495
501
773
872
599
811
207
807
765
234
271
930
766
573
220
518
946
852
153
840
664
682
933
856
672
218
796
189
638
678
426
960
115
748
584
450
652
98
243
384
496
942
677
943
401
528
934
183
126
937
175
650
126
931
551
972
271
654
878
677
218
159
931
495
276
596
173
556
373
865
43
512
688
260
573
941
224
633
934
399
763
780
93
734
545
548
487
148
596
467
73
674
153
506
480
775
254
58
950
548
48
647
133
796
70
32
677
790
716
284
138
530
658
146
810
79
507
439
97
39
81
373
185
640
84
420
508
573
355
440
832
503
399
979
27
69
156
756
803
284
457
839
120
207
612
664
331
312
72
677
166
78
859
623
555
56
587
842
192
539
610
422
692
286
714
79
648
825
677
853
216
74
67
663
656
732
852
549
207
729
730
392
747
475
157
222
405
360
377
239
666
304
825
322
10
152
282
966
103
758
418
455
23
486
773
174
616
41
66
877
177
857
379
112
798
135
895
238
850
303
34
648
315
729
435
161
743
690
706
843
389
824
219
808
419
270
442
850
831
771
525
820
163
297
706
705
173
765
888
350
455
704
212
22
843
41
701
114
241
429
410
25
667
96
238
441
209
548
966
898
169
407
762
290
125
44
595
81
127
92
374
140
804
489
617
593
898
750
106
628
547
317
417
215
75
520
849
232
464
828
672
977
693
27
323
834
558
596
921
42
888
430
766
499
56
512
435
183
370
181
528
869
386
840
436
689
602
566
45
12
424
855
871
471
61
154
552
531
181
745
841
642
304
441
856
864
248
233
105
510
343
850
966
768
814
47
756
518
635
250
486
817
12
905
889
194
425
11
266
976
836
567
514
420
790
454
576
812
214
862
945
196
875
306
603
969
33
723
604
262
920
738
679
481
774
585
847
368
511
113
814
438
775
588
579
212
87
80
90
944
913
789
886
109
479
591
872
379
169
19
359
483
402
949
56
16
587
151
18
687
719
168
905
597
297
709
183
506
915
524
734
529
29
974
295
403
552
657
354
477
713
251
229
807
570
456
405
405
836
644
250
869
367
389
130
699
269
32
889
495
31
566
934
227
592
963
406
310
130
619
154
60
365
563
959
890
50
732
775
164
47
114
254
58
978
860
272
773
366
736
859
856
847
473
209
64
108
703
375
680
522
244
176
660
636
482
902
857
350
202
129
691
368
873
844
667
453
382
316
692
546
11
964
605
702
672
267
75
382
141
671
25
43
211
587
754
910
689
593
912
969
927
602
317
565
961
522
423
557
545
476
83
699
716
566
463
492
878
470
239
137
804
264
242
298
608
458
423
478
703
490
427
596
651
400
91
907
232
346
953
152
673
323
895
154
872
610
182
869
510
608
671
918
121
189
510
661
933
222
122
67
518
96
933
429
979
924
885
135
927
726
198
831
243
492
84
883
577
617
938
377
293
797
607
19
674
748
614
898
76
481
895
541
474
34
793
108
267
198
835
607
978
467
724
79
224
795
406
661
261
740
255
766
913
439
327
391
342
914
962
84
127
328
460
340
887
314
692
762
539
861
569
44
186
912
957
804
364
52
324
407
301
253
15
402
71
601
687
937
770
186
350
399
715
884
198
722
869
127
212
873
747
463
19
386
76
72
288
356
173
614
52
513
768
685
870
321
367
569
672
294
670
107
50
626
717
683
934
361
88
541
18
173
921
794
155
658
215
659
979
887
18
590
398
137
514
472
614
157
741
438
84
427
699
50
791
645
789
166
740
608
331
339
801
406
28
675
774
66
372
525
826
108
342
980
659
892
278
572
658
185
34
723
842
548
315
105
189
716
446
801
910
26
537
788
273
639
741
173
36
105
82
183
379
867
470
946
690
27
169
626
468
967
525
447
637
228
743
861
482
455
717
420
295
273
107
259
363
722
792
790
277
218
776
469
396
723
861
762
161
520
749
539
483
111
931
979
664
879
369
975
135
692
757
804
551
269
809
641
54
795
355
520
316
543
775
627
68
414
337
683
229
100
871
471
78
23
905
300
437
866
96
965
788
775
314
631
507
907
249
522
939
832
681
539
314
852
102
680
312
559
21
844
364
196
235
507
954
581
680
180
877
893
112
516
557
911
596
887
701
170
52
88
635
939
481
866
159
339
232
258
630
694
352
688
853
391
972
387
876
437
43
920
481
871
355
458
626
517
787
293
102
167
294
462
462
289
22
918
336
878
580
258
75
507
577
314
585
382
489
590
347
483
450
116
950
568
521
581
358
355
324
39
971
249
975
612
437
639
724
774
868
609
427
138
512
768
50
690
363
951
749
111
564
824
541
388
963
602
873
593
638
911
167
214
515
546
301
472
489
777
632
534
333
72
813
492
113
428
272
342
580
325
727
697
10
479
482
850
355
806
95
344
183
575
738
288
540
91
682
141
333
714
935
268
432
896
795
756
192
843
304
323
218
547
475
291
268
88
65
42
181
861
194
720
54
561
682
111
858
586
32
19
929
762
980
483
640
640
977
11
24
391
488
795
736
230
505
616
927
680
877
799
552
367
91
522
538
794
785
113
467
648
370
717
158
531
838
35
366
666
14
615
355
403
894
874
784
156
46
19
924
760
335
825
763
502
567
307
499
863
391
395
10
688
205
293
229
662
958
425
551
530
168
884
954
568
189
341
415
793
571
540
865
843
286
293
337
50
314
261
97
15
87
462
977
464
521
839
808
42
726
236
928
979
569
685
512
585
453
367
943
296
388
776
454
358
319
145
144
441
71
584
559
255
471
387
724
418
661
628
206
819
299
518
130
814
648
688
110
408
22
844
697
730
389
928
215
219
358
353
477
576
919
191
289
554
383
45
265
304
417
398
111
680
20
158
343
133
155
923
253
426
831
597
771
665
879
973
654
665
868
728
886
405
782
934
841
553
67
516
21
652
154
16
551
823
446
14
197
20
878
721
921
410
765
322
869
510
549
613
292
196
917
313
892
174
774
819
462
34
838
178
541
71
273
793
667
43
242
182
323
299
577
709
957
794
341
980
601
766
463
871
296
77
934
76
109
621
912
726
226
36
652
194
939
149
366
482
923
204
16
230
603
945
71
828
563
800
42
775
848
828
208
879
744
39
616
239
318
706
58
740
295
420
45
905
130
911
511
953
130
659
416
644
691
265
362
55
15
968
372
553
904
716
557
295
133
181
468
48
757
948
880
39
112
913
879
17
371
33
109
562
283
120
639
376
541
313
32
267
803
795
283
623
844
51
448
869
492
35
393
952
480
955
612
171
65
541
157
21
905
119
955
413
250
60
59
816
547
87
727
234
755
46
609
294
357
648
569
825
860
331
154
379
507
154
247
340
928
929
305
566
573
900
669
832
712
187
814
404
69
529
234
677
772
271
84
58
448
161
88
761
777
578
592
778
412
676
63
495
419
277
938
125
621
444
628
634
120
775
484
75
942
242
720
907
816
703
932
24
407
51
376
143
26
389
392
120
650
924
488
917
398
177
822
506
181
832
835
66
348
548
161
388
345
107
749
68
128
445
978
377
115
954
141
143
534
618
516
383
547
174
187
186
311
905
433
611
798
205
400
193
151
162
210
346
158
56
436
717
790
52
937
540
930
503
941
418
517
115
799
174
241
98
33
692
331
746
726
204
396
406
689
951
64
567
257
953
857
60
50
218
884
724
246
406
862
285
369
212
56
561
623
949
216
862
823
43
643
91
898
121
283
865
176
895
146
194
148
536
344
319
483
138
193
572
309
131
428
927
642
74
911
473
752
956
681
445
85
721
112
775
345
783
919
952
495
949
663
641
241
465
974
254
738
162
827
582
894
600
842
328
312
505
446
201
798
517
243
714
972
639
252
316
286
559
939
802
799
936
895
241
332
927
320
932
182
860
777
80
79
187
904
218
626
137
909
34
883
793
124
558
482
361
880
342
512
188
710
474
318
649
899
83
236
161
970
652
775
316
17
434
676
584
766
296
499
238
452
439
895
657
837
249
780
757
464
496
633
841
304
46
51
139
433
131
821
67
45
507
216
638
345
381
217
840
375
547
672
858
548
629
665
760
891
70
856
476
56
721
184
285
608
614
316
666
936
72
752
313
425
302
80
908
772
582
131
364
612
766
135
284
330
767
139
731
338
387
474
319
12
832
873
767
292
381
71
948
792
953
181
352
312
53
617
943
508
639
413
280
633
339
92
632
944
690
424
590
278
656
450
175
698
860
308
711
853
666
367
703
876
438
526
844
410
338
840
257
251
743
234
123
526
808
659
973
622
527
728
743
619
551
741
562
781
246
675
844
296
240
721
603
204
199
845
453
887
214
79
13
255
692
27
471
828
740
913
639
243
645
118
926
571
953
176
602
949
490
132
252
473
760
157
923
719
353
411
460
46
216
786
926
687
708
930
541
29
254
321
69
340
462
436
45
277
80
232
742
736
635
760
751
810
295
150
638
577
792
276
545
402
770
59
505
768
949
135
676
288
900
569
408
665
110
803
122
279
424
220
767
481
318
824
652
218
910
957
354
575
657
947
615
383
200
894
569
768
247
833
464
623
75
535
218
655
597
630
147
312
258
272
94
664
909
776
955
14
728
223
769
839
841
470
328
608
870
729
701
745
179
469
354
603
307
683
630
807
565
884
414
495
296
67
683
281
582
395
80
581
293
616
845
280
204
365
952
703
967
456
808
330
688
643
305
184
46
534
849
782
46
616
101
60
50
370
657
903
925
96
28
624
634
516
561
157
251
98
790
497
850
465
664
393
559
68
827
825
759
473
221
804
946
152
262
626
616
625
238
348
407
158
302
531
395
852
69
511
575
16
28
202
752
709
204
437
820
509
155
728
836
441
665
471
491
536
20
742
331
304
630
402
319
193
692
397
105
960
207
705
449
190
662
115
38
102
181
200
979
242
97
410
236
270
957
603
916
922
90
304
436
618
101
280
464
233
214
97
54
713
538
973
505
772
473
625
837
743
659
846
631
299
287
264
255
883
232
973
663
691
95
804
734
282
913
901
49
602
65
297
69
10
47
223
397
818
569
45
521
389
84
235
684
747
263
278
501
977
152
980
68
98
77
418
879
822
735
195
57
600
822
959
321
258
694
910
40
538
801
878
131
846
429
427
141
608
118
609
525
865
555
299
909
447
124
456
38
442
102
914
191
133
67
642
949
963
644
100
583
838
326
210
294
747
796
742
818
34
493
367
519
808
842
178
907
485
916
853
627
189
669
828
328
434
928
334
499
845
883
406
384
378
364
701
909
806
277
680
837
447
750
870
257
894
506
409
553
256
174
601
127
238
933
501
957
566
740
836
449
890
768
186
377
803
668
275
394
464
37
900
749
544
356
846
424
85
831
376
948
772
145
632
881
605
479
649
206
297
390
658
211
754
703
750
931
839
255
552
954
629
950
353
779
228
582
920
772
909
690
293
61
852
566
114
354
32
650
479
965
259
718
852
531
824
242
478
525
490
537
426
235
250
548
160
224
700
678
252
154
471
849
502
480
908
446
745
28
265
256
158
201
758
133
725
532
772
748
22
945
711
616
285
308
901
46
899
577
815
683
695
117
177
300
212
236
459
763
202
184
239
959
579
445
862
825
599
505
870
265
894
846
798
270
317
817
395
197
435
685
554
974
980
414
711
240
698
878
300
690
209
726
400
520
382
781
342
431
252
232
902
14
175
73
613
143
821
217
821
547
139
628
673
369
527
747
777
972
694
227
751
360
188
116
559
527
532
474
519
705
225
861
932
415
621
837
973
217
712
611
672
677
906
648
549
859
155
303
497
556
684
475
666
300
470
907
873
36
541
28
459
536
809
304
618
578
948
269
964
282
698
562
625
337
859
125
899
289
256
423
765
310
441
277
601
855
427
739
773
441
322
96
130
555
554
22
11
396
137
663
478
381
760
101
347
344
927
354
139
887
833
747
613
175
537
432
384
166
740
53
614
291
833
855
569
494
890
73
233
165
383
463
88
422
340
737
286
546
416
252
515
332
13
141
138
72
667
11
886
955
381
287
391
341
682
858
476
63
668
266
185
533
326
365
368
91
951
176
654
310
20
967
442
114
539
289
688
316
404
169
222
217
401
797
86
355
177
758
826
254
33
523
745
782
559
67
368
311
101
185
166
947
221
470
858
798
507
728
504
974
920
892
713
130
123
879
550
852
242
722
275
684
55
261
217
269
834
810
441
386
456
181
689
960
274
401
820
781
971
540
679
868
151
637
906
756
48
242
420
192
694
592
627
324
703
205
642
129
934
651
644
159
10
605
298
29
345
514
162
116
204
398
204
662
124
626
240
960
683
827
328
135
241
49
384
862
685
861
577
257
843
33
357
743
461
518
917
948
386
348
656
174
777
161
718
650
762
793
676
625
342
640
980
124
310
885
741
728
823
92
66
455
894
281
528
192
622
816
969
58
531
332
742
439
436
163
524
661
479
743
290
138
299
950
164
59
646
383
914
737
243
780
762
547
471
236
705
71
944
888
58
302
845
505
248
78
29
900
540
336
652
111
496
700
45
662
267
160
335
318
843
532
595
573
837
89
412
772
609
441
672
815
598
942
868
35
614
645
644
561
361
552
783
933
478
847
204
629
520
262
40
420
843
84
653
161
101
578
433
21
310
151
429
694
582
469
11
113
56
779
333
61
448
897
422
204
230
442
359
280
546
740
881
58
286
236
776
809
188
870
84
95
548
158
904
884
572
766
642
234
955
407
363
524
585
388
182
180
75
220
844
773
797
158
137
453
441
759
155
671
444
91
721
945
554
573
320
102
473
389
519
42
620
531
211
378
190
479
960
925
92
472
614
808
362
515
514
825
446
384
156
26
343
976
180
763
554
416
671
212
300
130
860
176
571
266
615
377
528
655
99
274
686
758
264
613
727
511
683
781
616
89
249
228
971
425
745
673
408
979
943
566
943
655
362
286
220
750
542
925
784
490
239
345
902
516
191
418
201
304
786
155
262
515
621
451
653
306
771
257
734
353
511
491
392
663
957
72
393
846
540
77
606
790
284
592
70
305
384
977
732
937
622
974
796
125
55
289
767
498
565
603
711
120
549
713
619
307
315
575
239
638
549
157
85
977
766
488
361
799
567
160
706
372
45
224
753
840
117
157
932
445
559
732
917
430
171
202
705
455
861
102
173
761
196
492
616
426
434
597
662
463
135
842
34
22
228
204
195
537
90
740
79
404
60
712
670
44
695
644
286
624
512
947
800
935
152
505
971
468
255
962
788
871
430
827
225
883
946
926
408
468
172
703
285
861
717
269
353
220
637
833
274
828
22
834
608
454
171
66
201
376
302
456
871
114
329
542
537
275
211
556
669
345
561
63
626
241
154
396
322
544
971
691
37
133
192
816
262
564
225
357
208
48
893
278
955
773
639
265
279
80
79
430
791
947
338
909
648
871
34
341
266
844
432
776
146
289
127
491
776
670
684
792
804
12
709
730
578
336
69
85
121
270
277
381
91
301
371
780
621
434
762
118
382
234
585
421
39
321
302
832
99
428
112
413
565
444
521
225
305
730
588
563
123
438
389
263
824
779
850
52
474
735
533
11
759
198
231
78
648
406
479
590
974
695
104
527
253
678
245
230
418
859
825
244
917
308
250
545
720
593
972
547
855
122
821
670
388
465
88
942
729
633
400
566
207
23
844
784
516
948
673
527
639
292
980
744
798
512
229
340
153
888
574
425
122
188
201
668
494
329
455
482
773
196
541
705
76
181
31
774
223
764
104
246
853
897
968
137
545
417
741
128
241
848
14
129
569
742
19
625
837
587
738
708
391
464
413
770
586
818
498
792
590
509
826
529
690
577
683
149
279
845
163
221
364
34
518
245
836
741
689
325
842
958
710
17
732
314
455
855
495
54
952
498
165
353
759
539
682
21
202
375
430
21
146
860
165
711
520
13
681
544
533
421
123
336
867
577
975
524
164
770
436
880
973
12
680
418
440
821
172
257
461
666
649
707
324
158
163
173
88
656
527
586
681
336
57
679
604
898
157
54
61
217
547
847
898
44
613
759
936
92
592
79
414
539
177
17
644
19
980
741
737
100
110
310
606
164
291
511
102
558
205
206
22
768
797
264
421
833
601
935
582
268
279
832
807
886
502
504
470
766
399
509
707
271
134
817
661
669
977
124
832
919
521
456
634
178
311
430
269
491
374
355
579
500
97
605
705
645
890
127
356
138
347
856
879
444
443
729
530
30
442
745
131
817
512
774
86
212
424
875
935
967
710
238
734
122
319
696
921
813
524
126
117
591
545
563
693
746
700
809
263
819
639
556
383
487
799
700
645
371
328
836
89
38
47
178
362
275
136
325
587
651
455
408
553
803
390
537
158
74
255
65
491
224
888
453
297
70
652
967
190
307
251
713
437
51
605
132
714
483
591
692
481
400
33
292
760
941
506
60
317
700
784
356
166
834
900
177
816
390
200
901
387
655
102
303
931
83
829
487
29
148
601
65
685
257
197
708
211
47
966
68
294
600
353
477
599
361
697
745
521
277
467
353
978
754
852
484
34
389
24
911
499
471
818
337
357
384
131
221
549
17
81
122
959
144
666
757
610
635
348
905
413
281
407
210
386
706
777
293
597
103
235
666
148
824
825
465
286
252
784
932
108
666
241
457
281
417
486
411
941
643
389
78
610
12
643
810
212
727
511
932
301
253
883
457
183
255
281
665
590
233
542
673
645
270
865
206
911
170
518
319
440
308
313
687
422
503
92
619
619
978
655
409
54
704
457
207
576
241
973
383
227
744
298
88
661
28
527
234
750
902
19
743
652
591
629
932
219
769
824
632
22
401
890
332
539
127
330
735
825
720
246
577
713
939
957
776
127
572
82
363
456
734
240
515
394
181
233
242
625
744
419
165
585
929
22
638
606
341
518
555
654
176
456
472
922
966
739
664
363
825
622
589
796
812
452
596
300
971
667
445
509
177
914
348
722
710
170
157
30
875
341
358
235
948
457
537
562
789
759
675
592
900
11
325
730
212
544
92
702
183
30
118
258
937
967
305
98
246
902
427
331
11
806
329
386
341
794
420
472
153
153
842
726
784
270
571
643
421
279
116
744
597
233
916
209
681
325
811
797
784
884
220
434
867
807
703
617
40
620
637
357
481
58
486
248
514
806
832
367
299
703
852
510
393
687
732
837
687
641
479
756
912
798
965
104
830
483
963
622
692
144
541
629
678
557
852
457
41
78
371
822
20
964
163
42
561
797
401
800
971
485
802
680
845
800
533
26
847
815
379
948
585
406
940
76
137
406
96
75
524
453
630
559
735
285
295
184
668
801
907
777
810
165
339
385
123
543
774
913
842
292
271
837
613
22
258
251
511
612
145
727
116
803
143
264
290
705
351
187
201
371
107
414
620
876
848
280
84
223
874
160
811
110
497
735
90
168
515
652
535
528
103
753
770
28
952
674
516
46
751
728
90
741
273
381
108
293
766
172
298
97
427
77
287
726
730
300
609
878
185
826
779
268
950
410
680
813
418
686
771
980
964
167
431
62
398
591
484
665
70
893
71
758
598
526
650
440
160
948
732
592
395
56
835
747
978
208
95
154
739
963
79
134
574
119
340
358
637
866
212
656
845
652
956
411
979
668
483
285
357
689
87
488
495
865
762
333
874
760
157
509
619
834
636
170
675
152
398
928
34
425
506
362
629
774
644
156
262
574
812
941
463
167
263
12
928
684
588
844
55
573
678
502
909
462
648
317
73
876
640
457
579
625
759
822
814
784
608
519
664
261
123
79
648
237
964
159
156
457
608
866
706
152
563
808
107
942
457
232
910
434
888
265
603
750
346
299
219
304
132
720
610
27
365
229
623
531
893
378
953
635
304
362
112
560
945
936
952
352
337
638
879
322
617
611
101
743
22
549
109
116
732
454
807
459
786
207
976
425
179
690
755
424
528
610
650
794
187
152
383
368
803
176
335
377
305
732
669
769
98
216
682
700
744
437
116
361
338
675
437
232
791
140
481
867
385
770
116
905
47
872
73
546
226
210
402
178
595
852
725
850
344
124
203
509
368
889
967
707
78
247
205
601
718
163
726
651
623
378
707
462
674
110
980
742
906
787
305
511
398
647
491
525
811
283
390
334
543
861
84
77
962
632
110
847
173
171
106
92
793
586
136
158
107
648
615
703
300
177
639
895
858
102
146
80
264
104
731
510
628
925
367
934
534
250
153
73
949
70
683
588
327
513
114
549
444
591
813
434
760
15
361
288
919
37
624
654
33
964
488
221
583
719
225
345
785
668
225
979
215
312
333
307
138
658
622
202
116
493
466
448
664
134
281
886
548
771
856
521
126
128
301
18
829
424
18
440
55
70
520
108
341
301
560
133
456
43
968
653
505
937
382
960
571
269
714
662
429
572
235
847
858
633
917
712
615
608
607
615
890
414
899
852
544
579
977
461
234
464
826
52
325
691
98
176
772
115
408
814
663
320
542
359
237
764
343
764
735
121
70
648
425
563
216
237
197
353
392
878
160
362
935
715
432
777
508
503
515
492
561
324
209
387
193
804
13
216
374
718
308
617
125
941
142
711
978
566
207
57
80
966
426
22
486
21
780
267
647
549
552
647
875
369
764
576
79
470
470
917
93
459
759
937
875
564
39
44
423
82
364
114
470
264
723
811
193
651
213
914
750
620
685
617
69
750
228
678
398
559
709
72
39
43
593
934
945
938
824
41
324
704
150
623
423
945
902
682
780
186
219
779
883
543
209
943
14
744
107
795
52
947
148
105
352
657
783
772
705
758
960
202
646
821
48
427
151
304
699
891
313
141
120
201
919
323
553
572
496
275
444
403
909
88
914
883
962
85
174
105
745
409
474
323
540
544
506
68
338
340
741
95
201
514
869
493
577
127
76
302
438
504
59
953
153
95
189
979
837
534
825
815
405
916
516
282
427
435
667
735
947
696
964
518
310
754
282
283
331
559
781
85
787
967
46
92
915
632
438
169
98
53
413
973
877
145
319
212
678
344
200
877
394
217
632
822
576
247
820
518
188
347
664
423
598
696
365
537
56
649
438
888
616
270
811
974
935
258
201
648
971
941
678
651
571
419
535
187
169
967
261
687
737
953
30
876
684
249
681
880
76
363
322
148
808
934
17
469
609
538
591
135
623
620
934
918
886
386
840
745
163
545
86
423
822
291
494
99
719
862
907
530
196
360
785
932
21
689
159
845
182
266
323
446
626
587
939
455
689
388
853
825
508
808
752
496
709
280
444
964
468
495
620
575
607
671
958
317
366
420
529
708
465
521
196
590
282
19
29
360
677
236
90
599
180
183
54
861
557
65
556
856
545
825
642
53
864
689
702
724
229
703
265
82
701
39
830
487
209
775
524
613
492
268
837
929
935
301
40
582
915
462
392
86
928
684
700
18
965
854
234
63
937
297
933
597
872
973
817
216
138
506
842
585
695
848
422
617
882
755
876
745
498
535
83
92
32
703
146
687
257
352
217
795
252
577
162
44
99
192
735
560
45
295
632
197
166
28
23
492
882
363
919
257
391
243
96
371
58
221
749
404
632
644
375
346
604
927
58
131
320
456
98
669
930
777
209
499
493
212
597
171
423
877
416
317
229
712
573
798
359
569
366
966
444
643
259
26
967
39
243
538
641
755
41
570
506
250
692
822
713
327
335
707
557
299
829
154
61
48
251
936
721
13
724
939
578
152
462
88
331
326
625
844
570
469
210
376
430
400
415
770
370
89
702
186
22
415
560
833
497
130
519
262
18
355
171
349
592
159
778
478
203
231
412
854
136
494
56
406
183
262
541
316
70
675
730
180
745
898
590
337
977
868
473
316
636
175
146
126
859
971
872
585
182
527
536
543
747
133
763
751
851
381
808
340
710
324
965
102
221
345
850
291
422
831
166
705
889
344
484
701
33
685
619
309
192
337
78
429
227
189
805
804
576
470
879
101
640
61
616
628
61
752
794
75
924
113
680
781
770
411
502
103
36
931
703
421
210
221
354
849
681
39
621
968
225
527
511
320
968
441
666
91
158
123
546
141
233
244
282
872
233
951
389
961
66
510
198
434
250
434
160
49
79
374
75
921
265
962
12
168
928
396
793
801
115
397
424
25
329
897
83
507
432
296
583
622
232
662
637
648
493
837
456
276
533
157
965
291
913
822
481
462
888
256
102
12
89
905
462
812
940
667
801
57
315
127
280
402
460
75
669
876
26
791
379
966
678
798
478
521
300
368
297
468
402
581
793
395
692
272
408
865
862
245
451
710
773
745
379
467
826
380
643
943
510
401
419
376
822
595
245
129
613
430
545
513
56
945
511
612
802
43
700
856
119
370
328
51
83
884
261
453
866
799
939
563
129
701
491
233
184
469
67
745
592
527
835
562
880
237
427
901
202
357
965
813
127
136
880
568
954
918
645
926
528
506
231
821
648
575
102
632
113
901
811
841
386
733
245
595
462
816
201
782
868
948
260
918
827
553
122
82
280
853
134
725
931
169
111
193
614
85
813
46
497
901
97
608
679
729
307
353
574
340
357
609
145
622
121
251
923
226
222
227
781
210
261
121
675
43
612
722
437
747
74
71
691
766
198
396
464
80
681
59
265
11
358
388
851
626
287
677
453
147
529
212
771
670
552
364
327
881
26
454
877
557
292
745
527
665
222
16
190
491
218
558
332
862
182
162
22
380
563
339
718
292
40
150
299
104
163
347
101
395
627
961
50
255
434
99
601
271
387
736
612
927
915
197
959
790
140
73
343
673
60
151
258
112
795
721
945
50
78
492
975
830
312
289
745
560
168
865
326
456
43
908
767
258
81
30
79
306
318
151
318
134
967
117
618
393
637
318
820
47
304
822
829
521
178
936
162
862
701
357
422
171
740
399
437
274
687
288
432
133
871
635
937
401
141
237
559
22
139
911
380
147
842
283
250
934
599
365
426
748
440
837
890
399
310
325
787
442
113
965
544
730
383
178
227
538
168
532
467
205
867
130
918
139
514
801
59
197
910
398
155
115
554
455
357
593
662
318
235
451
824
869
501
468
591
715
122
229
821
537
831
900
110
372
233
849
125
497
335
341
409
22
943
869
448
326
980
675
725
416
674
604
421
247
144
553
11
257
944
879
389
651
969
167
802
766
244
90
723
719
533
358
184
555
487
793
610
426
573
732
62
66
35
959
242
731
873
222
277
567
890
328
322
256
909
99
545
213
478
218
919
940
851
542
806
749
184
621
604
871
143
479
737
557
65
827
27
869
250
250
510
39
376
426
392
718
894
312
597
946
484
73
971
464
50
698
725
770
164
375
38
215
640
79
534
31
732
308
226
623
397
215
649
287
948
857
353
729
52
587
732
728
244
379
838
958
372
669
608
325
35
937
169
66
28
604
303
576
570
685
579
648
520
449
403
410
536
563
872
508
815
384
306
12
587
843
10
233
364
658
306
573
705
153
92
250
290
715
114
975
11
226
594
938
26
955
671
550
925
820
946
466
435
700
305
53
934
678
244
727
477
335
783
389
252
672
267
900
740
88
898
683
349
901
530
841
265
866
389
822
927
962
556
521
576
531
78
637
609
963
449
558
144
305
310
595
857
323
61
703
978
268
305
573
450
450
842
165
329
306
106
438
511
277
277
155
812
137
520
374
280
695
223
774
869
964
442
889
180
441
461
647
553
739
683
145
65
266
36
940
213
762
689
71
587
671
513
396
330
610
761
184
152
69
499
939
377
59
909
583
571
128
379
287
464
428
519
151
731
473
840
148
971
881
550
186
889
818
546
962
43
130
870
152
409
581
646
769
579
452
276
777
770
393
636
206
444
122
203
571
160
144
27
264
402
247
974
417
876
801
338
566
119
545
559
282
576
838
581
614
353
765
61
933
650
75
854
829
506
611
185
321
117
240
603
767
856
122
428
917
32
83
418
480
389
630
569
729
580
477
96
463
974
440
725
347
656
926
807
206
254
221
415
932
260
909
914
861
774
208
677
568
705
657
162
35
423
324
552
221
637
55
638
308
290
585
753
657
836
924
271
282
391
165
410
661
623
930
770
103
486
413
591
637
626
68
560
325
112
559
392
926
108
89
800
318
730
337
783
277
194
910
493
324
261
104
224
970
384
906
211
41
96
668
302
249
314
61
446
300
724
871
422
940
706
61
238
348
893
294
194
529
612
432
895
303
430
453
545
231
867
782
433
295
600
773
893
277
851
70
321
172
369
89
244
167
229
748
685
127
709
166
426
783
217
269
501
787
40
356
273
971
316
598
236
582
115
444
925
588
406
613
740
446
585
177
250
170
862
485
942
70
532
367
601
279
159
642
865
103
624
142
207
235
54
839
437
465
290
70
45
285
880
923
41
382
572
864
714
691
867
286
139
421
429
866
882
17
545
471
796
438
274
877
506
203
499
233
184
615
709
675
600
629
390
971
60
268
235
345
66
633
182
925
234
777
369
745
696
209
709
557
307
204
612
661
785
684
14
578
946
502
228
405
595
857
760
940
92
474
118
766
706
682
111
200
215
36
661
699
70
960
432
736
914
274
321
658
753
398
502
676
626
820
91
563
577
565
938
589
695
563
571
731
494
166
528
142
490
546
216
237
250
411
714
942
337
815
711
417
428
624
521
807
674
509
677
760
365
72
575
23
628
581
289
805
139
545
450
925
118
193
948
976
132
96
430
811
225
896
733
652
49
909
570
669
547
31
882
521
217
251
564
411
631
835
432
968
541
663
213
863
293
454
581
872
60
241
813
597
887
758
541
949
91
456
688
703
316
879
62
157
76
374
310
959
858
279
635
769
233
636
537
108
774
381
795
608
822
272
146
951
282
384
471
608
492
26
14
377
257
756
604
506
63
970
126
307
252
250
923
491
261
122
62
619
872
313
102
704
82
203
980
737
922
299
766
431
283
166
839
734
970
781
58
591
951
187
401
654
697
37
731
980
653
203
640
423
935
27
161
234
18
91
818
27
883
58
28
188
584
406
329
559
904
507
278
236
826
870
748
980
653
392
105
451
826
291
734
313
659
418
791
438
418
609
675
716
475
134
505
803
688
443
361
196
11
168
838
716
479
261
697
117
851
630
391
498
80
415
540
759
66
874
302
11
339
362
650
522
560
598
962
923
278
79
907
279
804
438
303
584
757
620
940
881
621
164
330
926
862
177
220
349
905
713
878
297
17
201
263
479
745
508
562
30
158
294
805
628
379
530
494
200
514
360
628
744
479
871
580
144
963
917
844
201
586
71
719
322
573
496
563
100
85
895
78
144
633
365
292
961
967
370
184
833
836
248
92
577
166
925
957
822
522
236
386
471
550
425
733
272
350
575
151
585
156
284
259
128
509
824
21
597
485
709
237
544
588
703
979
89
373
784
56
591
277
576
210
844
944
186
194
651
364
815
177
503
244
968
655
48
548
769
904
922
802
224
759
465
160
518
760
550
321
546
740
236
123
371
736
44
841
483
65
845
733
449
537
555
109
167
131
340
14
116
708
293
758
328
60
394
232
195
265
276
728
344
125
782
561
490
631
599
193
845
496
408
977
161
259
647
821
520
964
532
946
855
708
310
378
220
576
959
326
59
93
552
77
12
325
849
681
530
662
712
206
64
923
554
392
827
18
639
691
236
394
811
499
71
942
445
255
970
352
433
607
780
350
483
554
678
514
575
314
108
433
47
107
378
170
776
916
734
938
186
150
717
879
423
663
265
87
574
819
915
585
616
647
281
576
217
38
634
147
348
129
403
11
300
503
294
381
358
237
743
810
291
766
274
436
56
13
392
33
429
595
119
10
505
441
442
829
630
155
557
40
801
84
311
205
966
613
577
587
523
385
565
411
944
930
789
341
491
969
441
278
295
13
444
739
76
605
99
776
928
169
922
341
738
622
607
209
604
446
868
713
316
362
654
975
372
735
355
689
253
957
250
473
808
363
936
584
176
337
895
883
422
45
869
839
401
313
723
526
371
912
971
968
117
729
884
491
367
656
735
240
683
397
77
503
117
598
180
905
35
442
303
896
39
463
117
572
737
450
83
615
430
683
126
421
221
141
787
179
604
706
19
209
455
976
959
283
25
168
945
127
888
646
545
742
639
769
687
700
701
81
471
441
589
921
127
153
921
577
928
93
596
523
615
457
168
911
510
59
435
97
91
694
452
902
383
122
464
763
433
621
920
346
392
957
972
454
559
920
473
778
333
668
419
121
704
405
609
588
974
299
540
529
809
827
643
521
59
136
597
330
578
227
713
514
904
238
577
611
501
148
626
530
836
717
652
415
494
934
92
408
326
97
156
941
68
157
185
646
702
871
378
35
354
714
973
440
931
557
118
172
389
121
617
933
477
123
614
774
660
737
931
907
464
769
598
572
323
811
728
412
599
819
802
772
357
409
659
429
834
394
360
178
327
96
521
554
502
349
27
657
552
954
290
651
708
78
612
951
668
398
149
940
893
122
762
289
674
759
808
269
644
507
530
379
916
440
653
394
731
366
333
328
508
881
81
52
93
360
48
820
863
44
335
965
237
678
706
33
580
361
168
640
657
679
42
328
331
86
741
810
701
68
540
433
831
176
610
854
600
388
654
413
807
225
112
651
177
133
516
799
198
40
879
556
170
958
243
603
357
394
289
927
756
746
844
933
783
381
486
400
418
108
272
431
709
912
686
465
138
885
525
895
816
944
823
758
294
429
731
883
699
662
591
604
154
667
59
684
644
74
918
613
696
153
17
226
425
280
582
599
914
761
584
720
636
439
896
762
121
274
213
387
142
540
115
80
815
289
502
345
628
820
629
932
705
575
254
433
359
728
315
674
26
35
391
571
85
131
468
853
521
428
676
55
549
725
818
908
56
714
417
974
42
552
741
929
738
687
559
903
363
498
501
499
340
596
39
23
454
499
862
641
405
974
381
826
158
755
522
187
494
951
12
100
150
971
535
949
892
20
244
664
575
142
724
847
686
513
479
742
124
73
532
478
902
308
773
540
80
979
692
26
503
246
471
181
160
832
835
242
618
165
779
517
777
109
672
151
641
661
884
319
685
105
781
704
127
322
542
666
261
900
591
675
476
142
314
343
372
391
117
271
281
949
464
907
485
478
237
506
182
906
238
747
968
569
946
317
379
332
217
27
886
919
569
270
838
888
229
846
154
146
38
640
535
559
498
928
354
558
781
326
292
527
159
22
149
595
408
694
426
977
531
629
195
811
770
845
381
871
165
838
351
593
326
804
336
532
644
432
620
404
123
667
47
178
611
940
16
200
630
460
141
155
282
696
239
139
688
515
483
27
718
717
64
42
135
684
416
566
300
638
158
755
850
453
169
170
302
27
654
172
775
719
327
859
658
495
255
445
926
36
916
486
89
968
128
272
472
537
574
531
889
827
425
897
374
734
374
689
638
574
159
776
753
792
872
63
372
440
933
792
451
757
728
712
228
644
520
210
775
940
685
277
428
612
721
623
396
514
173
895
845
540
530
634
964
828
431
401
648
751
645
959
455
201
27
474
715
703
434
320
460
392
70
920
420
148
797
537
520
414
665
857
46
529
540
817
68
351
58
686
574
825
843
657
614
89
47
730
795
539
749
369
90
785
490
957
836
575
75
571
300
591
660
594
607
93
321
619
82
378
621
575
341
797
618
256
902
184
183
507
102
872
223
371
673
290
665
249
866
407
655
513
665
239
155
294
215
195
899
483
182
779
515
791
943
474
605
558
157
623
732
948
269
819
482
941
872
578
685
383
889
891
87
30
559
122
159
604
619
371
761
956
486
155
241
174
766
873
701
122
663
451
146
605
743
298
664
404
757
268
523
904
84
205
334
920
138
476
414
323
398
332
217
669
836
499
443
587
861
431
744
738
644
533
146
568
112
965
329
243
587
367
477
176
706
833
855
267
847
430
431
965
766
410
503
788
295
318
602
178
359
101
22
595
506
162
521
806
440
554
134
315
37
410
269
154
808
158
157
327
866
191
648
417
102
121
914
564
377
452
862
696
449
812
318
734
107
797
433
395
340
455
531
954
584
521
481
174
391
970
967
428
387
347
139
16
261
729
436
64
366
349
925
862
334
777
25
808
679
649
417
828
109
897
194
768
636
178
457
267
538
33
538
115
387
626
955
455
601
319
298
322
186
62
279
441
145
119
694
371
185
228
425
319
400
144
338
740
416
880
408
378
639
688
865
345
756
719
29
191
596
571
660
830
62
262
835
564
133
134
483
625
368
734
285
709
825
530
924
613
886
434
643
38
832
170
127
696
230
794
924
87
449
856
289
838
336
961
45
288
114
914
62
880
75
105
593
763
777
811
503
481
683
869
380
642
535
920
532
217
526
456
181
73
248
410
790
903
969
201
326
832
325
724
297
84
788
127
233
533
138
691
806
342
353
334
191
884
711
480
639
543
417
426
244
873
653
733
325
579
955
650
624
795
890
347
597
57
746
965
848
630
943
611
766
264
802
927
849
448
918
77
345
755
272
125
926
962
688
593
506
471
563
152
528
292
266
862
444
114
346
680
848
890
31
13
46
360
410
789
785
574
642
62
353
469
123
647
768
839
446
207
760
470
228
132
87
894
287
395
337
200
806
10
197
364
138
479
373
688
763
776
879
439
515
42
250
799
817
759
945
179
811
111
799
39
24
169
821
636
487
956
831
634
120
105
448
972
918
461
864
672
430
82
504
253
713
17
697
88
575
127
192
539
977
969
324
962
165
542
218
170
439
273
316
218
422
291
926
664
251
751
462
342
354
561
597
185
454
750
30
99
237
663
743
147
19
341
806
48
70
821
574
130
949
165
398
907
212
21
470
741
11
330
185
397
773
969
334
276
957
44
114
878
512
852
273
53
696
789
900
71
155
126
63
916
358
540
618
689
779
131
358
172
67
276
889
922
544
729
807
860
712
375
415
173
437
923
585
293
183
540
83
900
198
79
216
19
900
476
382
17
675
896
677
553
155
271
407
569
728
23
205
703
165
127
284
336
692
735
917
894
488
161
212
818
525
714
249
975
184
195
77
773
94
172
51
236
476
629
651
66
817
937
58
830
43
662
744
774
77
440
839
71
970
587
773
926
326
412
762
360
231
341
386
510
310
279
922
496
39
725
762
125
237
118
954
549
520
600
391
821
560
719
76
482
98
32
704
68
557
819
229
579
106
172
226
202
395
609
646
721
491
94
702
90
943
509
255
195
242
84
967
97
479
277
506
600
893
630
444
131
424
778
194
670
260
261
602
936
540
32
652
567
225
840
649
155
648
254
680
282
596
181
677
529
631
740
624
957
166
87
529
171
174
613
45
32
650
348
618
718
949
826
474
374
742
61
622
763
28
255
491
319
643
925
140
886
358
734
34
390
432
664
515
901
718
196
728
910
488
842
961
467
23
589
751
85
928
388
978
624
131
342
465
454
682
134
97
785
308
685
429
494
494
633
889
680
244
507
126
579
689
713
602
505
594
627
452
510
461
360
363
508
223
758
758
675
478
834
853
603
339
209
275
344
487
442
443
398
67
937
91
388
752
635
660
149
583
446
201
66
446
260
975
691
872
838
184
980
229
824
450
914
707
692
529
847
638
348
109
237
239
99
451
336
272
281
17
922
211
896
690
378
205
720
191
539
453
633
931
150
750
393
532
179
640
109
529
431
359
59
740
655
775
53
277
470
246
713
608
83
249
793
618
774
87
736
636
520
246
577
721
689
345
693
38
883
550
226
386
349
297
409
219
675
773
789
185
49
311
690
741
907
632
952
964
568
958
850
820
951
496
280
412
216
34
581
415
234
218
769
763
503
487
570
278
447
404
482
91
284
603
370
863
891
700
522
924
422
398
246
26
880
150
908
783
650
901
686
899
774
954
620
243
181
629
77
485
794
120
548
332
447
382
775
565
533
159
174
928
824
527
946
968
811
177
591
238
930
510
892
225
235
543
233
279
403
223
702
299
230
883
367
278
348
213
927
661
524
671
466
802
604
760
833
746
674
361
342
589
903
515
702
537
788
331
353
185
788
900
403
427
14
348
923
124
582
210
403
777
475
27
254
960
227
105
857
330
489
148
543
341
351
492
354
892
206
454
188
746
727
814
187
44
527
90
133
74
351
606
644
464
556
212
695
941
571
600
945
388
15
908
259
56
924
928
755
775
692
922
952
641
72
767
816
437
753
13
193
296
767
484
261
648
380
100
418
423
67
405
257
882
440
585
574
789
934
599
337
556
440
768
780
611
507
667
52
320
947
668
718
223
899
696
571
486
62
119
749
221
479
34
141
911
190
545
671
708
145
238
653
672
589
719
346
620
829
184
466
43
11
679
916
928
838
62
141
57
619
807
198
144
247
902
140
640
862
583
180
217
763
70
640
127
263
921
797
720
255
379
438
282
444
875
462
431
841
500
416
494
513
179
755
683
207
495
867
465
181
792
184
935
811
690
335
495
962
596
960
143
240
959
756
690
564
250
111
228
727
118
524
192
483
843
163
609
782
164
108
573
663
971
793
377
323
717
218
954
136
610
625
940
910
765
332
281
977
485
469
456
95
628
378
411
618
433
545
861
342
203
103
379
156
396
909
898
593
943
323
54
576
763
560
379
447
587
149
541
628
68
946
453
435
417
307
95
729
725
672
768
526
885
217
103
866
479
947
689
822
950
513
262
86
46
314
194
725
545
483
99
69
568
51
659
867
812
632
38
290
203
148
20
329
314
868
964
570
648
406
876
868
299
142
815
326
85
663
844
247
922
753
874
301
368
855
388
157
115
126
733
537
61
947
567
915
455
927
307
507
823
153
582
163
949
400
754
788
956
397
649
429
538
235
689
674
373
561
691
142
865
17
580
914
377
439
692
122
844
976
429
867
786
531
505
939
673
417
169
755
595
374
475
194
824
188
528
89
890
970
29
827
192
560
28
790
283
298
535
327
504
369
898
634
81
745
246
810
262
99
40
507
875
473
536
238
303
115
306
500
229
304
736
361
677
298
165
124
288
763
57
836
966
266
871
115
613
212
821
665
144
473
432
813
274
168
929
713
858
18
167
444
455
233
682
741
83
803
37
610
732
90
393
400
338
721
689
370
772
937
178
428
551
185
171
144
101
828
63
444
246
519
548
374
410
547
600
967
692
22
660
815
536
514
692
109
429
376
289
658
822
837
548
283
498
421
769
775
626
888
42
781
926
11
475
627
266
66
28
897
19
479
489
118
922
194
594
438
329
515
527
61
76
572
220
424
119
562
616
915
573
157
732
463
456
443
879
544
903
21
150
23
645
459
502
966
491
440
836
665
469
550
50
689
347
385
932
746
467
897
160
678
110
674
857
771
875
818
119
532
457
295
186
654
492
318
203
798
532
436
233
342
478
670
504
646
134
399
548
581
201
151
89
371
910
361
139
149
416
171
931
741
299
106
870
285
257
344
978
57
69
784
635
147
809
300
728
139
376
138
788
345
406
607
833
88
883
29
637
475
83
523
224
370
535
164
763
888
75
676
801
531
105
352
31
855
748
58
93
120
919
293
473
60
422
641
362
368
258
835
96
778
699
522
769
358
771
363
967
899
325
313
364
385
188
124
833
903
13
787
801
920
359
767
414
885
959
826
714
827
883
665
338
944
456
591
675
386
160
254
400
863
789
789
41
521
401
162
622
723
473
777
269
904
378
886
210
103
531
20
409
928
656
310
384
963
872
169
274
440
356
833
641
298
821
897
712
384
137
753
831
915
78
154
489
538
214
960
153
657
19
732
562
509
747
826
239
913
600
762
490
824
499
537
400
848
184
54
735
121
408
811
806
502
659
187
354
246
92
260
31
884
181
665
676
815
262
891
607
105
867
282
551
414
422
456
413
297
148
207
845
354
814
568
459
728
485
343
598
251
14
253
777
488
602
620
60
24
840
96
485
281
224
233
542
368
295
254
404
30
857
609
758
585
153
681
845
468
47
895
566
555
618
445
933
70
331
147
204
270
389
416
373
947
449
412
765
767
703
898
301
801
792
945
56
758
48
481
317
535
439
836
539
239
154
955
440
456
49
257
406
460
102
756
480
330
119
74
702
938
131
158
457
209
80
593
51
41
358
225
398
97
689
412
193
175
696
665
262
954
514
759
605
409
516
644
753
470
728
683
530
536
847
500
487
229
537
34
465
894
945
318
907
582
422
392
135
534
661
420
370
864
710
375
134
92
977
248
121
493
528
182
732
715
612
537
290
67
412
108
882
402
720
214
746
345
334
864
752
736
775
915
313
179
802
673
807
87
745
783
556
908
652
361
810
112
517
954
663
124
281
521
691
517
806
150
499
858
851
953
490
796
941
686
461
686
906
293
926
628
845
969
627
211
355
224
592
846
897
816
755
137
55
310
294
619
97
693
587
211
355
307
103
960
343
142
546
746
259
902
31
658
89
798
181
146
943
802
520
914
309
781
789
44
799
653
915
391
381
116
962
282
602
500
633
567
506
794
442
811
754
244
173
665
272
112
615
647
228
97
251
816
868
895
186
734
254
397
20
600
523
718
429
772
448
33
756
150
12
130
573
371
63
279
200
594
762
618
565
108
647
469
109
415
581
160
392
29
526
927
133
453
363
619
964
223
394
548
398
60
726
94
87
876
912
58
284
305
254
930
199
712
566
361
862
708
809
366
144
650
904
493
611
171
131
970
442
63
13
99
780
587
403
252
652
419
861
676
909
191
150
768
294
638
94
434
839
323
754
596
818
767
55
207
349
267
855
572
415
413
629
820
641
150
140
495
590
50
832
182
661
167
94
694
805
438
938
672
880
866
319
930
143
292
645
930
21
447
35
135
781
187
735
262
391
82
455
970
187
681
281
428
427
580
62
490
139
442
255
666
101
793
398
504
642
888
969
742
706
554
496
635
532
80
452
701
714
616
405
908
49
410
741
45
874
941
517
697
893
703
920
972
321
380
113
656
26
537
225
278
496
421
237
223
446
144
430
534
670
507
948
832
814
769
915
968
792
925
310
157
68
832
495
222
42
407
832
461
196
217
35
529
334
23
98
57
849
95
632
922
316
859
502
34
639
936
51
961
138
553
508
109
602
765
665
412
348
764
610
767
13
925
971
933
190
237
895
201
307
280
786
660
664
606
89
86
545
544
451
301
787
778
893
324
566
68
30
648
202
627
559
80
511
78
111
500
784
625
139
737
436
176
972
393
114
685
711
851
902
896
748
900
153
267
104
29
307
632
845
476
554
257
810
772
277
129
627
591
937
633
515
383
417
815
287
628
501
809
471
677
276
304
201
681
496
465
567
578
636
69
682
249
928
261
446
873
327
796
856
958
425
971
473
542
595
53
545
132
974
399
340
377
651
405
631
792
595
472
164
660
674
634
906
875
160
303
304
734
382
574
471
728
208
230
698
