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