74
83
61
59
50
47
119
69
66
75
42
90
102
105
54
96
58
70
62
50
65
71
75
72
91
68
50
134
58
101
53
112
140
59
45
56
104
50
88
141
72
36
49
69
93
83
47
69
72
59
104
141
114
122
66
58
94
101
47
78
90
89
130
69
124
80
86
67
56
44
90
97
58
66
88
117
96
117
92
56
86
88
92
105
97
72
88
62
65
76
46
65
83
65
82
61
59
56
52
53
69
108
119
52
71
60
42
70
69
105
116
131
101
41
85
96
49
73
64
80
63
50
103
80
82
83
48
94
84
36
69
82
61
116
125
71
43
80
79
66
35
51
105
69
56
140
74
115
66
75
56
40
104
69
74
66
104
77
64
110
39
83
54
56
115
79
70
157
37
59
36
116
84
38
70
78
82
27
66
112
100
93
47
70
110
98
103
74
89
81
107
118
41
114
108
128
68
70
71
68
68
67
82
128
71
121
114
101
42
52
95
62
75
76
108
66
113
44
58
46
103
49
54
30
88
182
57
79
109
112
64
64
94
59
107
232
71
50
93
87
76
50
86
57
106
89
60
81
48
72
74
96
44
76
70
80
80
95
72
74
98
62
51
60
71
91
55
64
108
76
51
52
88
77
100
38
134
69
63
40
77
116
61
98
65
91
48
78
46
43
40
89
49
88
74
109
109
60
49
72
73
91
57
85
44
53
48
68
81
61
62
70
85
77
105
90
34
64
65
51
90
100
75
66
57
51
59
84
34
68
59
91
64
54
86
91
82
65
88
102
95
58
55
78
73
58
52
65
55
32
115
76
97
77
57
103
69
140
81
43
76
115
60
96
80
81
47
84
58
64
58
75
135
85
97
89
86
39
46
57
80
104
73
110
87
76
74
40
133
46
41
115
92
25
65
59
76
64
106
93
73
82
82
91
40
65
53
84
137
57
53
149
55
77
75
79
103
58
109
44
58
55
82
53
79
108
98
105
72
55
121
64
68
124
51
81
116
72
74
65
112
61
36
82
100
145
102
53
84
42
79
59
72
60
124
79
97
63
73
37
50
70
33
56
104
71
121
46
51
58
77
104
63
39
74
51
73
67
98
48
76
75
32
65
90
62
89
69
89
80
78
91
58
112
82
36
49
67
81
57
64
59
63
72
119
122
97
49
63
135
104
58
64
113
96
82
38
101
90
73
108
78
89
72
85
99
63
43
78
40
91
71
69
82
129
46
49
64
70
98
96
133
105
78
91
69
74
35
39
60
45
71
126
58
88
104
75
24
82
95
60
80
101
63
85
72
49
52
111
91
85
53
64
117
154
101
87
58
49
56
40
106
90
70
129
67
65
104
45
52
36
49
78
86
51
145
105
80
94
119
36
42
26
55
68
103
89
63
84
89
76
87
49
45
66
87
42
70
82
82
89
83
147
34
53
53
66
54
116
56
89
120
51
92
77
89
110
77
88
110
43
71
70
59
34
78
92
50
73
104
112
78
77
83
88
94
71
42
109
87
81
73
55
97
67
89
62
103
104
80
87
72
128
78
39
81
83
94
55
65
40
86
106
111
52
49
131
51
108
74
115
98
113
95
57
70
124
87
131
79
95
84
73
88
98
103
80
44
79
82
88
70
48
93
61
72
90
84
68
85
64
92
50
108
85
43
46
48
70
41
95
28
44
87
82
45
77
77
52
61
88
50
69
56
93
30
119
87
101
84
76
53
75
69
97
73
54
81
61
82
67
75
75
63
40
62
115
40
81
53
121
86
78
57
134
94
45
91
81
74
119
59
55
60
45
79
51
59
81
83
106
73
61
82
129
71
78
44
85
87
75
84
98
99
91
56
88
82
66
84
85
71
87
77
93
80
79
73
77
127
53
93
52
108
57
68
59
92
59
88
43
119
49
47
95
69
76
53
114
41
68
54
66
47
87
76
96
113
75
42
119
98
73
72
97
65
46
91
90
101
92
61
107
99
69
58
113
45
75
51
112
53
91
69
97
119
88
137
93
94
89
52
47
49
74
87
101
83
123
106
46
60
59
74
50
88
97
99
57
88
70
64
58
62
46
69
127
40
122
48
104
106
144
67
55
69
85
54
82
138
65
69
76
66
76
103
100
101
80
79
70
39
53
48
72
77
48
61
71
43
93
56
68
89
100
106
68
85
75
77
100
86
112
89
48
63
75
72
79
76
71
53
89
106
55
58
74
95
71
90
85
91
142
85
75
63
98
74
135
71
64
76
89
126
101
97
57
122
72
85
133
77
90
65
98
43
55
48
76
47
94
78
66
92
55
99
96
80
79
78
54
100
55
63
62
62
81
54
68
44
115
69
94
113
127
103
77
69
47
68
88
80
57
86
73
106
71
55
75
97
64
118
86
52
31
110
49
80
68
62
115
75
63
79
54
62
132
51
142
120
113
121
123
38
49
98
94
58
52
97
120
116
78
96
97
57
51
128
81
83
66
81
70
67
61
99
46
50
67
89
73
89
69
60
115
114
59
78
98
94
44
84
53
66
56
85
76
85
47
75
42
53
65
84
100
80
113
45
67
53
80
79
86
90
86
60
61
81
38
72
77
71
81
56
80
145
40
76
96
43
71
88
30
97
116
67
41
90
109
80
111
65
73
55
74
63
54
68
82
73
78
102
61
138
88
34
95
122
52
70
72
51
75
81
112
84
52
71
104
94
88
62
65
73
65
102
72
35
50
108
77
54
88
68
82
63
100
31
97
121
39
88
68
102
74
75
64
91
85
99
121
51
67
93
66
79
85
45
70
59
73
90
100
67
97
131
57
54
61
44
77
77
64
91
60
116
90
55
190
63
64
81
27
115
127
105
70
65
90
67
72
110
60
109
59
111
81
115
58
71
153
37
102
51
156
75
56
47
78
93
64
93
95
43
124
67
67
55
85
55
71
78
102
82
65
87
101
90
81
110
76
66
30
53
56
49
79
80
36
74
68
72
90
50
100
118
82
136
81
61
69
88
73
59
111
92
66
47
51
43
64
53
59
97
62
81
112
108
49
88
133
89
174
104
99
64
61
94
61
61
88
73
61
59
91
79
67
70
117
90
86
74
111
72
72
60
78
53
83
129
60
33
102
63
36
50
100
101
62
93
94
108
81
66
80
53
50
85
46
73
84
66
42
40
66
68
43
27
27
76
35
41
84
80
85
118
84
43
110
91
45
75
61
84
72
104
55
67
79
136
70
72
61
76
101
89
143
56
98
64
59
66
124
56
79
52
47
64
143
31
50
67
74
78
57
87
126
68
128
78
63
48
80
38
138
38
101
90
65
52
95
98
95
108
49
83
74
88
58
68
96
76
36
94
80
98
57
79
75
58
83
55
104
84
69
64
76
58
58
46
88
76
62
62
97
55
120
60
94
83
68
32
52
77
72
116
58
99
67
100
63
109
56
49
84
56
74
61
65
80
70
73
49
50
117
33
64
73
93
49
90
66
69
125
73
54
67
115
70
45
43
84
35
84
57
83
119
89
58
107
59
85
83
49
69
83
104
66
92
122
114
88
106
110
90
59
88
40
105
98
71
69
119
152
54
123
73
66
105
52
116
91
171
104
45
74
96
69
134
123
72
49
98
68
97
63
44
66
88
59
63
88
80
169
64
64
81
108
73
78
134
107
54
63
93
87
57
130
96
111
117
78
75
154
101
83
65
95
61
103
82
75
77
74
73
75
25
67
121
93
59
84
49
114
85
62
88
56
141
103
67
76
82
92
51
84
71
135
97
60
76
106
39
76
70
64
74
64
75
102
62
140
110
89
98
89
63
63
96
91
114
67
86
56
92
66
121
66
101
68
150
54
46
79
76
105
106
75
80
51
114
69
99
84
61
107
63
59
74
55
76
69
37
59
91
121
66
122
58
66
120
88
65
114
58
143
99
58
59
122
71
93
99
112
58
75
92
63
92
85
69
87
101
135
84
50
52
81
75
96
117
57
94
97
88
47
92
52
73
55
104
130
137
93
67
68
58
50
122
74
29
155
33
49
85
63
71
52
53
104
81
82
54
95
75
80
85
102
84
169
58
112
93
69
50
88
78
74
110
73
76
49
73
104
41
67
47
45
96
98
76
85
90
69
104
56
37
87
52
72
70
135
56
98
99
132
93
119
77
78
103
93
59
55
78
93
29
87
101
44
106
149
46
67
108
139
130
111
101
149
61
65
86
56
81
116
23
55
66
104
48
66
72
80
63
66
85
62
66
80
90
80
70
117
75
102
86
89
44
146
61
128
61
51
76
99
48
44
74
80
104
55
68
89
58
89
67
52
137
72
46
44
96
49
77
89
98
86
41
95
56
163
118
63
57
55
31
68
44
52
111
73
82
40
80
100
30
81
62
71
80
78
42
65
62
72
57
57
104
33
64
72
75
84
71
61
54
116
75
79
82
62
60
93
108
34
78
41
68
69
82
60
69
77
67
75
108
57
67
85
82
104
51
106
59
101
99
98
68
66
62
76
46
64
90
92
60
51
66
49
61
42
109
70
126
106
78
81
98
65
58
101
51
66
86
82
79
71
47
90
62
108
98
82
127
63
67
99
87
49
77
99
95
63
39
74
103
70
96
112
84
70
90
63
99
47
41
135
41
99
62
71
113
104
50
69
65
107
79
62
95
68
63
92
29
41
61
32
42
105
48
60
81
135
58
66
62
113
129
87
69
96
36
67
100
52
102
132
76
48
97
81
49
62
110
62
122
96
110
63
107
115
113
120
80
64
77
72
69
72
102
50
76
113
40
76
92
77
86
49
57
53
79
81
62
110
57
114
78
47
63
33
59
44
64
130
80
73
54
96
70
89
88
85
103
55
79
86
57
68
90
91
134
41
50
64
89
65
90
82
28
89
66
91
70
65
135
78
53
79
53
52
77
67
112
51
67
97
63
99
90
47
91
58
96
80
113
85
93
87
44
49
74
75
37
48
95
100
87
83
62
65
34
47
84
37
92
79
57
40
91
58
148
71
108
94
71
70
60
63
107
54
143
51
48
72
68
62
110
77
74
128
105
84
57
86
98
79
101
73
65
113
105
64
93
101
73
73
84
58
74
44
94
89
73
73
116
54
97
123
61
63
76
48
86
146
39
123
84
102
71
61
69
87
63
59
54
29
84
53
95
48
66
45
130
104
77
57
116
67
60
60
83
106
40
68
87
50
80
85
81
90
61
74
134
108
82
125
57
65
58
107
72
86
39
102
64
52
75
55
75
63
125
112
79
105
56
66
87
77
75
74
101
57
90
104
90
107
75
63
49
113
92
73
49
83
51
87
88
52
83
74
50
54
54
72
95
64
88
103
84
46
72
104
101
61
64
27
45
110
94
59
54
32
95
56
85
102
50
117
93
63
52
82
55
29
91
67
82
34
85
81
47
75
53
73
74
73
72
96
66
72
130
137
65
72
79
95
48
63
69
83
87
53
69
63
64
72
50
57
89
61
85
72
65
33
52
51
45
107
94
72
49
93
71
65
99
122
106
39
89
52
159
87
109
91
113
39
122
155
83
125
44
92
132
88
91
58
56
65
93
93
57
100
125
85
47
50
97
68
89
49
76
102
50
95
99
50
57
49
110
73
57
78
54
125
85
62
102
99
68
99
35
70
47
79
56
31
129
94
124
87
33
58
81
97
98
124
72
46
127
74
55
96
75
73
88
103
82
93
51
75
87
66
55
158
102
80
52
100
49
79
71
140
93
45
54
67
74
45
90
71
110
59
66
150
55
70
88
98
78
106
64
50
66
48
64
64
67
68
76
108
82
82
72
75
90
52
96
75
135
81
50
62
112
99
109
61
39
73
55
83
55
62
59
83
73
82
114
65
62
103
84
38
116
140
97
29
68
94
91
55
86
48
55
59
47
28
94
112
99
148
74
100
133
87
64
50
40
96
57
66
47
54
65
84
79
76
73
130
129
43
70
99
111
53
82
50
64
83
82
59
114
74
88
114
105
120
112
91
102
80
99
110
109
78
95
123
62
144
55
65
60
57
90
126
69
62
83
130
106
118
109
76
86
76
55
89
105
48
55
70
105
102
73
64
104
52
115
64
57
44
39
52
107
42
107
47
100
228
88
95
135
69
153
91
35
94
58
72
53
76
44
84
101
53
123
42
109
60
77
92
54
87
115
78
51
78
53
126
92
97
81
67
104
104
69
83
46
69
80
64
79
69
101
79
73
51
55
76
72
66
57
49
110
78
70
92
97
35
68
76
97
52
73
86
99
108
45
80
97
61
68
79
55
54
68
127
40
109
91
141
84
58
62
92
65
129
46
40
91
108
47
59
68
73
56
75
68
75
75
90
91
51
79
52
51
85
104
82
41
72
62
87
57
59
100
116
45
62
88
79
59
108
58
60
85
107
62
92
94
35
88
53
128
83
57
88
56
105
67
96
57
65
85
55
40
109
89
102
82
63
87
79
119
65
103
116
65
127
57
94
82
81
70
61
108
58
89
82
53
70
117
70
94
92
57
121
68
123
75
81
93
57
65
107
79
75
82
107
70
67
39
84
84
73
70
83
58
57
103
52
81
75
97
123
109
86
63
67
101
69
76
49
55
58
97
22
46
64
145
78
55
134
42
97
25
93
103
48
70
73
77
71
59
91
53
73
115
96
107
91
98
88
78
81
86
59
73
83
136
92
42
69
95
103
75
50
98
68
74
90
65
42
84
108
69
102
68
42
107
91
76
93
68
84
41
83
68
83
35
63
58
111
119
74
67
84
29
46
66
123
56
110
65
68
109
126
77
70
36
69
66
37
66
49
65
118
98
100
74
92
97
98
69
92
57
77
86
105
73
84
41
71
78
61
82
25
86
65
83
93
68
90
74
93
57
89
58
126
61
72
63
115
80
81
73
91
82
180
53
46
74
106
83
71
90
92
71
124
52
36
144
60
79
85
63
88
39
47
76
57
38
88
104
95
77
64
65
81
28
121
61
70
75
89
83
52
75
84
102
70
104
72
38
56
95
93
113
91
120
70
52
92
52
75
85
37
47
81
108
93
55
50
49
56
97
76
98
43
89
71
108
87
72
107
95
69
69
115
61
75
67
83
85
84
45
73
104
102
63
56
57
69
72
109
73
74
123
76
70
76
52
88
133
88
79
95
52
57
91
62
77
89
78
96
83
82
71
77
81
66
87
88
102
105
104
71
101
56
92
75
74
57
85
88
108
88
81
60
81
77
87
86
82
71
78
63
102
83
71
128
103
125
54
67
84
52
131
203
53
82
65
84
119
79
63
90
60
59
62
90
58
79
99
84
82
50
110
82
114
99
55
84
76
116
107
57
88
60
77
107
70
84
96
106
64
85
47
73
46
36
66
81
77
62
58
79
76
56
137
142
48
54
91
51
106
98
60
67
104
34
80
101
55
85
60
87
111
50
62
77
72
100
95
69
37
77
101
82
53
121
100
60
111
86
44
65
105
37
71
94
95
66
61
51
91
87
69
88
69
61
95
81
44
51
107
56
58
84
45
80
35
46
43
62
127
122
91
89
65
27
59
56
74
93
49
129
72
51
56
64
76
39
63
90
80
99
55
77
50
110
84
98
62
107
103
89
57
107
101
41
80
71
74
86
100
167
64
141
99
86
155
71
92
103
52
68
77
88
95
84
95
54
83
72
76
85
52
74
41
77
91
138
106
65
83
67
63
44
107
63
111
67
98
113
70
60
69
98
76
82
55
98
116
62
64
73
95
62
78
131
66
87
54
81
74
54
69
77
110
74
143
136
138
102
65
85
81
79
60
80
92
60
52
60
65
105
73
58
87
97
50
55
54
31
99
127
70
66
146
69
52
106
44
67
149
115
88
95
87
47
81
78
70
107
151
97
71
121
92
76
97
80
85
73
108
72
80
125
45
49
137
106
73
79
59
99
140
76
86
102
62
84
103
35
70
96
47
123
126
82
97
85
70
57
88
52
103
65
68
62
107
74
51
95
81
76
46
87
57
59
124
66
105
44
95
114
87
127
85
76
85
98
69
63
80
69
84
53
75
85
91
89
94
110
67
82
58
59
71
99
44
61
67
81
49
87
95
82
83
96
93
49
119
75
73
95
91
48
47
81
93
46
70
102
73
99
99
101
62
71
106
103
45
79
41
51
50
121
53
67
92
85
87
73
101
129
98
83
73
79
57
88
88
76
52
34
62
75
82
98
36
92
40
63
56
35
114
90
62
74
54
82
70
82
80
77
55
77
61
77
87
91
82
108
82
65
69
98
87
52
77
86
40
54
73
101
120
61
88
95
59
102
56
72
54
57
38
67
92
121
94
63
54
68
57
66
78
101
131
101
79
81
73
67
102
49
56
53
102
84
82
56
87
98
50
64
63
115
68
76
113
72
96
57
112
86
68
117
51
81
62
94
74
52
97
84
55
76
52
60
49
31
42
61
41
92
147
61
72
115
55
112
39
48
81
54
97
66
72
52
135
82
34
60
110
59
68
117
67
60
97
65
77
70
100
68
157
77
98
50
70
82
38
43
56
31
141
69
63
54
119
77
64
113
50
75
114
56
55
73
92
85
90
78
73
75
69
89
76
87
42
47
191
103
119
76
61
109
70
77
51
127
56
92
78
75
122
35
130
42
138
145
62
50
99
79
81
68
93
49
85
82
52
63
62
91
63
62
98
158
88
101
83
67
48
86
65
115
72
92
50
77
101
46
65
77
115
77
141
56
84
85
74
96
81
72
96
74
117
49
99
94
50
98
66
70
62
75
64
73
54
65
72
71
67
36
85
64
59
94
52
127
91
68
82
51
66
97
109
108
45
118
43
29
64
99
70
109
82
76
74
85
96
62
69
43
49
93
103
57
85
50
84
67
67
81
48
60
123
66
93
82
74
78
111
91
52
91
58
81
104
92
98
91
51
40
101
72
56
57
105
82
46
67
82
73
66
79
130
111
90
55
99
111
97
55
112
61
93
67
107
85
57
85
43
99
71
75
86
34
72
44
76
101
67
55
79
103
39
55
41
97
45
66
58
110
103
72
70
58
125
104
50
78
119
148
137
65
73
75
73
86
68
72
70
80
56
53
105
80
135
93
77
70
60
72
81
103
70
63
145
52
141
51
61
84
50
50
80
72
63
76
81
102
95
70
57
95
108
110
149
111
114
100
53
74
83
87
53
62
82
85
75
95
52
144
84
73
89
108
81
82
105
106
79
105
59
81
82
96
77
102
75
53
59
111
63
103
66
109
74
89
64
105
83
48
94
90
63
44
112
92
54
86
43
101
76
61
88
146
81
114
45
60
102
87
83
76
89
59
92
72
60
58
119
38
49
95
84
93
70
53
55
51
56
63
57
87
52
59
90
88
53
111
64
37
67
23
93
88
85
64
64
85
67
58
62
64
89
61
42
46
103
73
124
54
64
68
70
79
78
76
108
103
109
56
98
80
40
58
94
54
62
69
97
105
52
56
40
76
68
73
57
87
96
61
86
50
77
83
73
59
57
112
52
54
64
94
106
145
166
48
118
77
56
58
128
75
74
96
64
77
78
92
82
28
59
78
138
62
81
57
47
68
131
45
65
126
111
112
96
101
78
121
75
33
93
66
95
56
70
73
62
69
67
96
69
84
68
47
118
107
75
63
61
68
83
76
50
104
89
39
65
97
67
88
75
96
99
62
33
63
101
69
73
77
28
70
98
87
115
106
111
114
114
59
102
58
57
124
61
60
53
79
104
86
93
87
104
94
91
59
90
60
78
55
58
108
131
62
94
85
47
48
73
86
70
92
94
82
75
67
90
80
40
126
72
59
58
51
67
73
112
120
57
76
73
79
47
90
76
184
97
57
93
56
58
92
81
73
76
52
70
86
48
215
68
102
50
92
99
67
44
105
66
94
65
63
71
58
128
116
33
82
81
91
56
42
51
53
83
62
64
78
60
41
75
58
48
82
90
120
104
77
75
79
70
102
88
42
88
84
53
49
94
121
67
133
73
58
83
115
93
81
71
82
68
69
90
91
91
124
44
56
45
100
62
94
72
115
95
79
61
67
64
47
90
58
92
60
64
111
72
52
64
114
94
95
97
58
86
84
106
95
40
72
99
85
93
32
74
46
109
87
70
145
72
97
45
55
96
63
94
100
68
27
90
62
108
61
48
81
59
57
34
43
114
68
90
172
81
109
46
82
40
87
127
40
70
92
77
88
90
75
73
62
57
102
68
147
59
90
47
59
77
30
45
66
62
86
85
118
117
83
82
76
58
137
104
78
58
67
57
54
134
75
76
89
41
96
73
70
113
46
91
84
100
42
69
69
73
54
50
135
78
81
55
107
50
63
52
50
40
109
66
88
71
81
87
88
56
86
100
57
130
61
56
115
52
86
96
64
61
99
103
95
70
162
93
64
54
127
78
68
50
69
123
93
49
94
68
84
126
79
84
81
64
46
44
77
76
44
105
51
105
66
62
46
85
44
69
100
96
65
36
56
84
96
89
38
69
105
47
132
56
68
123
115
53
85
54
58
74
45
60
53
103
156
96
72
79
91
57
61
52
44
93
97
78
63
49
88
47
102
76
75
103
80
75
109
40
67
77
66
101
87
48
53
69
60
94
45
49
104
72
68
89
153
68
56
96
71
77
117
79
104
107
52
77
113
77
71
87
130
78
98
62
101
48
50
66
121
42
51
45
136
53
93
88
64
99
105
71
97
120
56
134
132
81
83
91
154
42
61
57
60
120
58
101
74
40
93
71
71
92
66
89
55
66
76
74
70
103
80
90
53
59
101
58
77
73
106
47
57
52
54
74
56
111
90
89
98
81
144
51
47
77
57
62
74
60
75
83
92
69
62
153
93
55
81
62
53
87
139
84
51
127
84
94
71
54
58
72
101
88
48
119
62
51
87
72
75
53
90
122
91
99
95
82
93
65
44
107
102
75
76
49
80
56
55
43
49
53
74
56
64
49
73
47
92
115
85
52
91
44
55
70
69
76
47
59
86
103
58
44
54
50
46
68
70
62
52
70
86
86
57
53
60
67
52
84
75
63
38
49
94
41
77
39
102
35
57
69
116
77
104
43
41
61
65
106
81
85
105
50
122
76
68
90
58
61
79
145
81
31
81
101
37
149
64
59
47
85
52
40
55
67
69
46
115
56
184
122
66
83
85
120
96
91
72
131
48
72
81
127
58
48
67
103
67
100
73
68
126
109
85
92
54
109
65
88
45
86
75
64
81
57
64
40
84
101
37
76
66
32
72
74
76
118
121
135
90
53
61
87
53
34
54
72
47
99
119
74
81
42
52
64
122
74
109
101
63
112
57
104
77
67
120
69
39
55
102
61
83
78
112
59
88
42
108
90
52
81
68
61
54
64
62
53
108
49
83
82
79
71
75
102
77
99
84
79
116
87
63
78
70
60
38
101
50
98
82
84
49
48
53
43
100
103
36
56
90
40
79
70
70
64
139
92
78
74
67
72
81
62
104
67
52
28
205
58
87
81
61
64
56
84
75
114
67
148
85
67
99
78
59
89
91
129
96
126
76
57
78
122
109
58
101
115
51
100
118
59
66
88
96
46
47
88
115
100
74
79
63
47
53
85
95
86
112
69
74
72
45
67
87
40
53
77
79
99
72
57
82
98
65
43
162
67
94
42
87
52
85
33
178
96
37
23
56
64
90
123
46
57
46
84
50
68
70
96
92
62
66
71
108
65
67
95
120
81
44
71
56
110
73
90
81
65
65
55
43
61
65
77
81
65
33
71
68
86
37
54
94
77
61
40
115
50
92
30
67
112
110
84
69
91
129
85
97
77
42
53
77
84
68
79
52
121
57
95
113
130
40
91
59
64
70
93
79
89
85
70
101
93
84
93
57
53
130
83
92
106
75
82
97
88
116
35
50
68
134
137
64
87
71
110
58
71
108
79
71
80
91
84
62
83
80
84
30
65
73
66
52
73
118
67
87
37
54
59
108
72
59
41
129
45
78
63
101
86
89
75
110
52
107
38
64
91
81
60
104
94
58
101
106
97
59
144
115
59
68
126
94
82
49
71
82
72
85
37
79
84
63
69
78
43
50
87
64
44
115
58
90
81
105
55
29
102
92
81
65
73
106
57
98
87
79
53
50
62
99
71
81
83
112
91
52
62
149
56
73
107
48
46
99
79
96
89
102
95
63
63
55
158
45
61
55
64
48
111
110
87
99
56
43
74
99
47
49
114
77
88
62
87
50
74
69
72
69
74
91
76
70
109
100
56
67
71
82
76
89
88
46
81
42
60
52
73
128
69
65
79
66
58
95
65
47
76
88
70
50
115
47
80
83
100
47
81
100
94
53
116
53
116
66
58
75
93
116
74
63
53
47
81
82
50
64
53
103
97
67
93
68
86
75
80
82
95
69
42
93
42
47
66
153
86
80
84
108
53
75
69
79
112
89
41
144
59
35
89
45
54
116
80
100
68
49
73
71
71
47
63
57
156
70
43
119
61
76
101
86
95
56
56
77
61
52
60
76
40
101
71
99
76
76
51
117
73
91
151
130
119
92
64
39
101
63
87
94
51
58
63
55
67
63
104
64
98
122
88
128
58
43
107
46
86
62
96
57
99
75
105
73
67
76
80
54
158
39
58
27
76
71
67
78
101
78
110
56
48
57
99
63
99
73
30
54
101
61
82
96
54
48
90
55
89
36
36
91
71
70
67
88
85
62
43
91
101
56
140
76
91
62
98
54
59
132
101
80
77
55
79
60
105
66
73
126
79
59
109
32
110
88
122
48
111
99
62
102
97
64
50
100
130
49
88
40
94
82
57
109
44
107
33
80
90
75
61
87
90
85
67
59
82
64
41
50
102
105
51
133
38
64
130
43
70
59
86
79
92
97
84
36
80
66
94
98
96
62
157
69
59
50
83
87
67
71
89
177
104
114
64
67
94
47
108
88
44
54
72
44
75
41
127
97
84
41
75
61
54
64
112
74
64
79
70
37
45
151
54
101
55
58
46
107
118
97
120
82
100
94
61
119
74
82
57
72
107
52
108
49
178
55
101
74
83
55
72
65
72
109
84
80
112
78
65
70
66
73
114
66
102
75
85
36
47
54
101
48
101
85
93
45
110
81
63
92
90
117
43
89
85
112
76
44
89
96
83
134
74
63
64
56
89
108
75
55
93
66
73
83
76
91
102
115
60
67
133
64
69
64
65
81
49
43
75
60
68
98
104
118
88
81
129
70
86
54
78
87
48
90
86
88
88
76
51
75
97
50
115
127
54
92
75
72
130
96
101
71
143
125
103
94
57
52
89
94
77
76
59
78
83
77
71
67
47
84
59
80
104
93
92
54
101
114
107
57
80
98
58
41
107
35
53
75
67
129
46
44
24
60
64
95
61
53
67
145
60
56
56
69
81
91
45
67
57
90
47
35
70
56
53
92
91
58
46
87
56
45
92
128
56
55
64
144
44
60
85
61
63
81
53
90
106
33
55
80
59
91
77
83
73
59
71
77
91
118
61
81
84
82
82
66
52
97
90
61
82
51
175
86
80
115
64
52
66
116
126
84
129
67
60
67
46
64
110
70
108
100
49
96
106
71
27
82
53
109
92
66
100
91
59
50
63
113
148
112
82
41
49
52
44
85
60
68
65
49
83
77
105
124
72
80
89
75
54
71
75
117
78
130
73
159
117
96
95
109
119
62
68
95
64
73
48
88
62
65
67
79
128
109
113
57
73
93
70
64
50
110
94
90
49
98
68
108
51
78
66
145
70
114
98
122
121
66
116
71
47
69
91
105
59
42
76
93
71
82
76
78
92
88
90
102
84
45
76
47
71
107
71
43
92
40
97
38
94
67
55
108
88
59
88
70
56
92
79
103
124
71
83
60
53
80
67
70
96
94
73
69
97
89
64
100
51
94
65
45
79
46
118
66
64
73
36
74
82
145
35
95
92
79
57
96
60
104
59
63
91
66
99
52
73
91
42
81
75
53
88
126
44
51
68
100
140
52
96
84
67
63
54
84
91
87
71
94
53
39
83
44
99
78
91
75
123
51
48
84
130
57
71
63
109
35
155
97
90
82
65
64
46
43
85
156
71
80
66
57
57
63
92
80
60
87
73
102
59
51
84
127
75
66
105
67
124
44
61
114
69
56
115
141
117
44
72
107
39
104
115
74
164
104
87
36
79
68
128
76
66
83
101
52
115
39
151
99
77
78
113
80
72
77
101
54
58
59
122
68
91
72
67
60
136
82
86
74
102
87
120
128
102
67
40
87
100
66
89
72
125
71
52
53
111
60
120
30
122
100
74
94
105
89
49
94
68
66
88
50
47
57
78
86
91
75
68
114
70
103
57
26
74
82
50
68
95
75
50
83
131
73
69
50
91
51
169
98
106
45
104
53
45
82
78
87
45
64
88
127
39
95
83
71
64
107
47
110
75
95
131
67
85
117
67
87
41
48
77
51
75
76
44
105
98
82
75
120
73
119
98
109
83
75
84
80
117
29
63
87
62
109
96
79
58
91
89
104
50
86
47
84
51
55
59
74
119
54
70
86
75
57
60
93
127
76
57
55
79
93
80
121
45
111
71
48
85
76
63
63
66
75
68
94
42
60
53
67
70
73
101
69
71
33
69
55
64
90
36
90
69
45
122
123
76
84
54
80
81
73
92
95
96
63
69
67
62
48
52
74
81
62
83
70
57
46
83
108
51
77
42
118
90
79
78
63
90
123
60
111
38
94
70
51
45
74
52
107
86
88
80
70
98
74
101
56
55
109
84
83
76
70
47
99
127
87
109
49
73
88
65
68
66
90
89
70
88
76
54
84
66
81
58
65
124
73
69
78
103
77
164
79
86
67
55
56
81
69
79
41
89
77
103
109
98
89
79
80
90
79
80
112
98
99
141
92
84
46
31
105
118
99
70
103
45
83
81
101
94
42
100
49
61
58
78
104
79
29
62
66
74
89
47
87
48
92
93
96
106
102
58
134
99
113
50
90
66
70
90
50
78
64
98
52
69
94
57
77
45
96
121
35
44
64
91
74
110
158
78
30
96
110
125
36
71
57
104
101
112
116
99
73
61
71
61
93
123
105
82
119
83
87
89
77
76
87
56
106
59
48
81
68
93
81
114
79
43
58
73
54
65
146
67
131
91
58
108
67
42
49
102
100
61
72
123
103
82
34
60
111
52
38
53
94
101
79
60
41
77
108
58
41
100
64
72
37
106
62
47
87
117
43
100
70
87
54
86
63
85
49
77
77
81
59
55
89
49
62
73
87
61
103
196
85
117
63
34
44
37
96
40
108
81
88
88
37
48
69
49
57
56
53
40
59
67
62
130
53
109
74
52
44
128
115
70
89
59
48
64
55
58
41
67
83
56
71
57
35
97
95
74
42
103
74
88
76
45
56
27
53
48
91
61
117
114
45
39
45
94
69
56
79
57
91
72
114
67
90
74
96
73
59
71
40
71
61
80
49
105
44
95
81
67
91
71
66
93
67
28
63
77
72
132
88
124
48
85
58
89
85
107
69
96
73
62
113
84
47
98
51
66
101
115
75
93
57
83
60
40
65
77
64
65
130
65
114
62
78
105
63
62
66
56
112
78
69
56
57
132
77
75
70
36
156
39
69
109
109
74
42
94
74
73
49
61
105
28
103
54
72
68
64
66
78
50
80
64
64
76
66
110
123
81
89
48
47
84
43
79
71
100
61
118
73
102
91
142
33
47
99
127
59
93
89
84
45
53
79
63
91
85
41
50
51
88
131
133
119
106
98
79
55
66
39
82
70
57
57
66
73
53
74
57
77
76
88
45
89
90
41
39
80
90
57
43
54
70
85
92
55
94
85
38
65
29
103
59
100
66
71
106
90
71
121
85
69
110
81
63
78
45
56
82
116
64
62
68
103
66
42
92
113
20
91
49
70
72
86
91
142
119
43
53
73
43
82
76
110
65
32
69
84
82
97
150
109
78
75
55
38
69
77
78
80
46
83
88
123
58
67
95
57
79
80
118
100
67
64
30
93
95
52
105
125
39
74
190
112
59
51
55
91
72
60
84
55
30
56
46
49
58
67
26
93
72
85
98
72
66
101
69
52
118
72
86
99
46
81
92
61
62
41
56
82
98
80
45
79
70
101
57
82
42
52
73
98
94
83
58
81
60
102
84
115
64
147
52
74
57
72
82
122
69
118
111
96
40
76
64
48
69
79
65
102
197
98
117
111
49
93
85
58
49
115
85
59
65
45
50
109
96
56
83
64
82
46
115
97
109
28
115
67
71
155
56
77
45
62
55
69
40
76
113
55
55
69
103
111
59
93
79
56
38
87
82
44
101
84
42
43
93
117
58
53
89
88
123
55
38
100
53
68
102
107
115
64
81
60
72
54
45
67
56
40
46
105
99
48
44
87
33
74
104
45
58
66
97
96
105
68
62
93
70
83
120
62
70
91
51
111
55
91
108
65
101
142
82
131
95
32
39
69
83
77
51
51
91
85
146
69
90
106
111
55
86
86
76
55
139
27
75
52
94
84
46
75
116
85
72
81
77
117
139
148
57
66
101
104
109
56
49
50
89
74
66
57
72
114
54
70
80
82
55
97
78
102
125
98
64
82
96
83
55
57
74
66
77
78
99
108
55
48
39
73
142
64
57
101
50
65
44
48
40
80
120
130
73
119
74
44
102
72
73
80
86
47
80
75
144
96
74
121
39
79
80
42
87
63
68
110
59
83
100
86
70
46
36
59
85
54
45
54
79
84
31
95
77
94
96
76
50
87
40
91
79
74
88
62
63
57
78
75
76
54
65
118
88
57
70
158
51
89
133
92
129
117
91
60
43
76
64
123
64
98
52
106
66
82
48
61
86
69
76
79
67
98
88
79
54
79
86
54
135
66
88
47
114
74
58
116
48
42
63
72
70
95
62
81
171
63
66
81
53
70
76
59
80
48
77
66
66
85
73
98
65
64
67
74
90
53
88
73
56
92
54
111
73
63
99
51
88
95
95
109
86
83
70
65
77
91
59
37
96
49
104
88
135
63
70
116
79
80
109
102
84
53
95
75
86
70
50
68
42
44
56
96
102
79
62
42
81
41
87
64
65
70
121
139
74
96
54
61
71
60
64
110
82
51
116
67
94
85
127
41
69
61
89
50
69
37
76
61
107
90
126
96
82
115
93
132
125
96
47
74
96
57
105
93
66
65
79
61
41
86
56
69
41
85
69
61
48
94
125
70
43
112
84
75
95
104
136
76
96
59
75
66
133
62
64
110
78
36
66
105
112
187
95
50
79
65
93
32
83
77
93
53
79
52
66
50
73
82
56
45
58
86
96
84
52
56
90
83
65
78
96
113
54
44
90
52
102
41
37
89
62
41
129
62
126
84
113
97
63
36
93
64
81
60
70
96
87
80
122
69
65
58
48
103
53
75
76
50
57
76
88
83
65
93
68
71
66
59
77
101
73
54
71
55
46
75
65
63
55
54
69
108
94
57
77
81
111
55
88
71
84
52
74
77
86
87
63
73
117
67
106
86
52
60
76
74
102
100
94
97
92
81
92
81
62
107
83
63
93
114
73
112
114
36
93
98
47
136
83
73
59
141
58
69
58
78
83
45
78
82
124
91
62
50
88
81
98
26
84
84
104
88
117
99
85
60
83
100
79
98
68
41
95
78
106
105
55
43
135
52
31
65
77
75
97
67
109
85
56
76
44
84
65
74
76
121
92
64
52
104
90
68
125
84
53
63
64
48
95
72
84
91
77
67
21
68
157
83
37
49
113
55
98
76
115
70
93
102
48
43
107
116
54
88
83
80
47
90
58
71
56
62
108
66
117
62
65
46
91
87
104
60
53
72
55
68
88
73
92
114
149
96
78
111
51
82
75
129
99
43
48
149
55
60
66
70
85
84
83
112
133
90
91
75
74
121
58
60
100
73
56
93
24
70
116
76
60
24
118
75
121
81
61
58
99
41
71
83
52
37
64
112
81
98
112
118
81
76
78
32
62
137
80
73
66
34
64
100
79
43
106
79
45
126
68
92
48
62
74
57
58
70
73
53
122
77
39
85
22
52
68
71
90
42
60
65
81
79
46
51
86
75
55
68
57
60
93
83
49
63
54
77
82
45
94
73
104
37
82
65
101
61
78
68
74
104
136
54
31
66
72
46
52
93
86
63
55
79
56
79
99
93
85
72
57
134
59
60
65
83
93
118
63
89
66
52
54
92
87
43
73
56
57
102
54
47
55
55
70
91
113
55
74
148
52
68
40
45
77
71
114
65
38
55
37
74
62
70
92
59
102
95
93
112
92
89
65
36
57
97
47
95
65
50
70
89
54
84
105
47
69
94
54
89
62
37
88
83
69
47
52
88
87
83
79
73
72
36
44
60
90
86
52
77
120
97
88
85
81
28
45
93
66
98
67
169
95
55
83
84
115
59
44
116
52
119
48
102
99
52
95
85
62
107
72
104
67
66
36
61
55
65
104
111
67
97
113
62
61
89
89
70
46
96
43
62
57
105
80
39
89
90
115
75
35
61
185
91
107
100
66
63
45
98
124
68
64
48
80
83
47
90
108
86
85
47
85
70
38
56
103
76
86
75
83
92
57
95
57
86
58
88
95
71
75
88
117
58
124
60
95
70
86
79
189
56
108
69
111
81
97
148
88
99
125
36
49
83
63
86
78
68
106
64
75
88
62
116
65
73
109
58
69
66
62
46
97
120
60
62
53
53
138
87
67
83
91
89
94
32
85
47
102
48
99
85
38
77
75
55
66
103
65
108
87
63
90
106
58
32
86
102
52
55
40
85
77
116
75
48
44
112
63
46
29
74
88
83
174
127
39
75
72
70
66
92
80
63
55
89
62
100
62
82
70
77
83
76
56
49
76
66
50
87
67
78
95
69
72
89
73
46
76
92
90
113
129
62
92
81
108
67
69
59
58
117
99
88
71
74
59
96
51
123
54
81
100
65
118
81
55
73
59
76
70
58
80
58
38
55
66
92
60
118
128
72
50
53
52
72
82
71
35
62
94
80
93
103
106
80
90
36
91
83
67
103
67
75
86
67
50
137
90
76
64
96
56
77
50
120
67
132
123
68
72
57
50
77
35
144
58
66
49
64
119
57
33
113
80
83
87
75
91
50
94
77
66
68
69
56
73
122
99
83
75
78
85
75
70
44
119
30
30
91
87
56
56
38
74
75
119
98
76
92
58
55
73
51
108
81
86
31
58
76
53
91
66
98
92
69
103
80
68
55
67
119
52
86
50
117
126
64
108
95
64
95
97
91
57
84
99
49
93
153
75
66
112
71
53
75
68
103
74
79
104
70
110
116
93
60
64
95
81
93
85
134
105
76
51
114
56
63
81
85
102
48
72
97
77
78
107
83
43
114
38
19
100
97
103
144
36
56
94
67
70
70
89
58
96
99
67
89
68
70
57
103
47
57
78
39
59
124
83
34
90
52
91
86
111
79
97
78
43
50
43
81
99
66
67
68
92
33
43
89
119
58
53
61
96
85
79
70
41
54
76
80
115
73
68
54
58
91
32
74
86
95
44
76
99
103
84
95
69
67
83
64
60
96
51
71
71
130
76
74
88
52
82
86
71
81
93
118
81
90
96
26
80
57
93
47
105
58
73
105
107
49
97
87
76
123
91
75
48
59
92
85
103
63
156
66
74
63
82
97
80
95
138
82
111
67
136
83
103
56
61
53
93
51
73
98
62
84
77
66
64
51
63
79
100
43
61
51
103
77
44
26
84
59
102
52
104
66
58
80
93
46
89
78
63
85
51
54
74
63
130
54
72
50
112
86
78
45
74
96
75
91
59
38
42
50
100
138
44
104
28
47
75
102
70
80
38
82
63
62
44
69
62
74
46
56
53
122
48
71
115
87
82
109
79
69
55
75
59
45
64
80
58
72
67
59
147
88
47
62
98
81
92
74
85
48
98
82
54
113
50
71
111
55
86
56
54
124
55
70
69
106
100
73
98
82
68
79
68
73
63
66
69
71
98
64
73
57
134
83
67
100
61
36
45
90
74
107
41
49
67
139
101
50
23
54
80
83
81
136
49
85
55
92
62
113
105
50
77
99
93
114
26
91
55
55
111
87
107
90
88
103
54
81
119
90
57
101
72
53
50
94
63
80
45
94
62
100
83
78
130
125
83
47
70
69
86
66
54
65
145
102
76
85
144
67
157
54
74
102
99
64
65
64
95
63
65
59
73
83
122
81
45
38
92
55
126
88
98
87
94
47
81
82
102
103
88
108
78
52
78
74
60
69
81
95
83
49
60
47
47
80
62
32
63
40
65
81
81
43
76
99
87
85
85
72
42
169
45
72
80
48
97
108
104
124
118
172
94
83
83
71
55
53
80
106
133
67
95
131
104
63
42
140
84
83
68
72
75
44
67
83
87
90
76
54
47
49
63
124
49
68
52
135
42
66
143
88
63
44
65
106
117
145
86
89
94
72
54
38
77
94
74
88
51
43
111
89
34
108
98
95
85
77
71
75
59
67
97
77
105
44
78
77
58
72
52
45
71
92
69
83
94
86
109
70
93
53
81
75
82
40
82
91
62
87
85
55
103
61
41
47
57
42
92
113
84
89
31
62
74
56
78
99
93
98
71
65
85
49
50
77
90
65
65
96
77
42
86
51
54
70
79
63
53
61
77
79
99
81
70
103
53
100
81
65
94
87
64
69
82
105
57
58
58
85
65
50
88
76
93
65
30
95
115
53
118
104
99
104
134
58
63
50
52
95
59
90
104
116
84
54
88
90
85
69
69
87
76
99
66
76
65
92
44
141
64
38
127
73
96
103
75
80
83
77
55
65
42
49
57
100
50
62
59
78
96
80
46
88
72
61
92
90
78
53
104
63
157
77
66
113
91
53
66
37
66
93
90
57
51
93
42
51
70
56
51
81
107
44
74
61
50
68
52
85
100
92
65
77
59
55
92
60
72
64
95
60
74
75
89
50
75
92
74
106
34
83
78
47
68
46
67
73
83
51
62
83
110
55
105
68
26
109
53
76
86
92
86
49
71
61
60
86
78
45
56
56
71
86
79
189
87
61
99
60
96
91
85
66
59
61
57
166
77
57
83
90
79
54
52
49
61
62
65
66
74
60
64
54
97
50
111
36
57
49
126
79
78
36
82
51
57
111
68
60
79
114
53
104
54
63
59
136
68
65
69
134
141
61
97
54
52
85
90
29
77
69
49
54
70
55
80
53
68
101
105
79
36
96
62
57
83
53
150
70
86
68
71
48
78
73
60
29
68
77
48
50
137
106
92
35
45
90
68
96
130
40
38
35
81
109
71
78
93
95
104
94
72
81
90
66
117
46
67
62
67
90
77
101
32
48
34
63
140
135
90
82
57
54
83
57
114
56
135
52
47
90
64
56
93
44
124
73
66
73
66
85
72
79
81
64
74
54
45
90
59
91
70
44
39
101
40
50
76
49
85
118
78
92
146
105
115
117
59
52
105
74
111
34
85
65
57
55
50
104
59
78
37
74
79
96
62
40
56
59
72
97
91
70
143
89
66
94
52
57
110
118
62
125
144
76
90
62
64
79
50
53
99
71
90
116
75
54
73
103
114
89
92
63
77
47
77
124
90
68
71
88
67
70
77
79
100
72
38
92
79
137
55
67
40
95
85
89
54
143
81
65
70
118
87
55
126
53
79
80
39
59
64
118
52
60
68
52
60
58
80
112
62
39
69
37
57
82
57
74
63
89
47
75
75
65
85
136
129
84
71
63
75
107
43
93
61
28
79
137
65
50
80
57
76
46
68
76
24
70
80
36
82
71
134
95
79
64
58
62
98
67
96
73
42
71
54
87
75
132
70
83
62
102
84
65
67
116
79
45
79
135
49
58
62
77
54
49
77
60
63
102
68
107
107
60
89
75
64
95
87
42
73
80
51
56
132
76
88
44
45
78
107
147
47
53
50
114
113
72
55
82
61
95
65
100
103
51
76
78
101
73
74
120
73
58
94
128
34
58
68
72
85
77
87
61
78
88
100
97
70
76
74
75
64
60
102
73
93
102
58
108
96
60
75
74
73
96
81
51
63
67
62
82
119
79
96
63
51
110
82
107
122
64
70
45
81
67
50
78
101
64
90
61
84
112
99
41
57
164
116
101
73
70
64
94
65
47
77
113
156
107
64
56
49
52
84
83
71
59
89
74
79
62
68
94
75
58
92
70
121
65
87
80
82
150
45
54
42
112
59
49
99
66
77
94
80
86
108
136
75
66
65
88
84
70
56
40
36
89
86
97
78
61
80
92
65
104
75
78
84
55
121
85
146
96
84
62
124
79
184
121
154
32
148
69
184
101
60
91
90
90
72
101
97
71
67
116
77
125
73
62
149
87
78
118
65
79
66
80
79
73
64
108
85
103
102
74
77
110
72
80
77
74
60
92
92
46
61
95
85
44
73
91
67
56
68
61
85
59
57
65
94
113
79
92
53
42
51
48
96
98
164
77
87
101
103
65
66
104
62
121
41
91
97
83
73
60
61
47
79
112
65
56
64
45
104
90
54
58
51
45
99
85
91
100
32
51
62
102
90
116
92
66
68
116
73
125
59
67
70
54
95
66
66
90
35
68
67
89
86
84
60
73
86
88
73
34
85
49
81
70
84
58
84
51
106
102
55
53
81
71
65
67
55
93
64
88
60
85
88
95
104
42
45
63
84
94
77
96
90
102
61
70
78
95
54
56
109
52
67
86
57
97
81
60
85
52
70
69
50
94
173
35
101
70
120
138
51
73
64
41
70
90
135
75
93
98
93
54
95
79
57
75
29
118
64
57
87
81
119
72
47
94
93
128
95
50
72
70
92
117
60
67
81
37
55
58
40
60
95
96
100
119
74
79
58
55
101
64
168
107
195
82
40
72
137
67
58
91
66
101
29
45
70
76
133
65
88
58
95
80
81
40
44
37
88
38
89
63
80
87
80
84
90
105
40
81
62
102
67
88
86
86
67
85
84
60
87
100
89
55
50
89
90
64
67
79
57
47
26
199
84
112
92
60
74
76
101
66
94
60
65
53
106
91
51
71
114
59
90
90
51
64
65
108
80
63
114
84
121
107
62
43
85
55
72
59
56
44
67
68
53
72
47
83
68
122
81
48
57
80
95
59
60
69
74
96
95
41
116
115
102
83
71
46
28
88
87
90
86
71
63
78
90
64
71
65
53
84
84
50
64
47
62
118
64
97
73
100
104
121
58
94
83
93
56
60
57
81
67
64
83
75
55
64
118
63
86
75
50
83
49
91
72
35
91
141
59
125
138
102
71
100
69
63
67
68
118
76
76
75
115
85
65
109
120
99
58
80
82
42
67
64
72
45
57
33
37
53
80
121
99
41
92
116
102
59
78
53
55
51
96
84
53
75
100
44
67
59
35
47
97
42
56
95
98
83
86
62
81
73
109
79
99
54
86
71
124
81
90
31
70
95
78
103
66
124
73
69
35
89
117
103
55
54
115
52
84
91
48
76
47
82
106
93
62
108
115
123
107
110
104
68
71
87
76
77
86
72
71
72
119
97
84
105
66
131
44
79
56
65
58
92
97
50
83
98
56
81
36
39
103
70
111
80
178
114
52
135
104
95
114
78
75
65
89
41
51
98
58
103
61
88
82
89
47
85
94
99
103
116
84
30
47
61
66
69
77
91
75
63
68
20
71
67
85
146
71
65
49
92
84
105
70
57
63
78
37
101
105
57
50
85
91
62
87
62
96
108
51
33
64
95
81
74
83
61
56
71
111
75
60
49
56
72
74
67
86
63
87
130
82
59
99
111
58
94
64
70
33
31
73
101
54
29
106
89
134
44
89
89
62
92
123
75
38
39
72
80
80
124
64
53
131
75
51
107
77
113
67
73
71
60
103
79
72
107
47
48
60
31
58
94
59
88
112
78
68
62
46
143
46
47
88
56
59
73
48
88
100
86
130
82
69
55
51
120
94
98
78
68
88
89
82
90
39
52
81
99
41
37
75
69
129
57
48
115
41
73
53
62
113
51
74
116
125
141
109
94
78
96
134
61
42
68
104
61
135
87
84
88
148
69
60
100
64
101
78
232
70
140
108
67
49
99
74
74
79
98
59
109
96
70
67
75
80
83
44
88
135
68
126
79
112
89
119
73
95
102
46
48
65
82
216
84
92
79
69
79
174
95
81
50
126
63
48
56
81
74
163
82
97
61
59
87
66
59
89
95
122
103
134
85
43
72
24
61
85
49
94
37
62
75
71
96
94
37
101
91
51
127
73
101
68
68
67
63
89
103
85
88
141
46
130
92
87
69
81
86
104
93
115
106
147
65
116
81
67
88
68
63
86
37
121
88
122
52
73
50
76
68
55
131
59
89
109
59
77
59
71
84
78
63
117
83
41
121
67
56
82
92
117
72
44
68
91
68
80
82
64
68
102
62
54
83
61
78
100
66
97
67
47
50
66
51
79
90
53
80
73
58
65
71
107
172
123
110
55
88
185
83
68
39
95
80
102
86
75
45
44
96
57
103
62
98
77
70
46
101
81
79
52
26
55
63
76
66
130
93
57
58
71
58
124
90
56
120
71
68
88
89
55
73
73
72
96
73
136
55
65
146
68
102
87
40
82
149
107
87
46
103
59
65
66
76
97
69
55
56
86
101
70
115
55
63
106
36
140
55
42
67
93
63
37
40
86
70
69
115
57
73
56
74
117
88
62
55
131
66
97
73
81
60
66
49
97
92
169
83
40
60
56
94
100
48
44
39
45
90
82
42
78
96
79
55
97
70
50
89
66
95
66
156
67
66
56
92
81
131
73
42
99
115
83
91
71
53
87
67
66
130
86
82
42
113
112
85
43
87
68
125
71
64
91
74
54
93
81
157
52
50
65
76
80
60
105
45
94
93
110
64
78
87
44
74
99
82
88
90
99
75
73
78
57
54
93
85
85
71
93
95
83
82
92
30
76
53
118
69
62
73
102
73
78
83
59
76
89
84
89
53
84
67
63
78
85
68
53
54
63
110
60
115
69
42
46
44
26
92
87
107
93
94
100
28
158
123
95
96
54
63
63
52
49
92
91
61
102
62
108
48
81
62
49
77
61
103
124
96
90
107
78
75
37
96
33
50
104
98
106
55
64
40
84
70
73
66
150
49
74
72
59
79
101
38
60
57
116
57
100
65
102
92
47
81
90
106
84
91
53
76
86
65
91
88
102
68
45
64
95
34
62
49
128
53
68
50
65
72
67
64
104
56
69
141
113
73
58
112
69
67
117
115
69
178
55
74
82
63
76
99
138
71
72
79
78
75
63
44
70
91
34
64
47
95
47
57
105
53
36
78
81
106
70
62
71
124
89
100
100
112
116
124
53
64
75
79
81
75
44
54
54
69
91
107
49
79
80
68
62
111
94
59
41
61
90
56
59
68
103
50
75
92
87
45
163
59
74
94
51
81
60
95
80
116
93
111
102
74
103
93
63
79
89
71
83
37
34
130
83
65
80
64
108
115
87
82
110
73
74
95
61
48
58
118
70
114
63
100
130
111
39
89
41
63
71
47
108
107
90
73
154
62
144
78
74
101
84
66
67
78
40
55
62
75
32
112
111
66
56
67
48
66
93
78
58
113
99
69
95
51
130
111
49
124
58
100
67
62
51
85
69
89
87
92
76
98
68
68
80
102
80
104
76
37
125
37
83
50
87
115
58
117
49
93
124
90
64
71
49
54
60
56
120
141
79
58
56
88
76
66
46
91
90
61
75
46
45
91
85
64
71
64
102
90
102
66
47
121
106
83
49
91
67
75
39
87
89
100
96
69
54
131
83
62
87
93
70
95
96
108
72
67
75
68
96
78
42
93
101
69
86
82
73
74
60
125
122
58
71
64
76
109
154
110
55
60
79
77
67
73
117
85
69
31
70
108
59
124
76
77
75
105
62
61
101
30
41
81
59
86
56
127
58
96
58
50
58
74
54
77
55
59
40
72
67
43
85
39
55
69
76
92
81
72
99
46
86
49
50
90
106
95
110
41
41
136
116
71
85
88
61
69
92
109
68
79
64
85
45
63
86
69
126
86
113
53
89
47
76
137
101
73
122
57
74
90
77
82
51
89
93
98
99
110
74
82
101
47
100
54
103
114
66
78
72
167
73
81
87
64
63
68
101
83
94
77
87
119
109
55
63
74
74
128
68
55
67
98
90
76
31
74
103
68
79
91
106
62
87
70
59
85
74
64
104
68
92
69
105
81
89
72
139
57
114
31
67
73
80
78
110
42
82
50
58
92
64
69
118
73
95
157
56
102
37
73
72
65
44
87
121
76
25
69
75
93
80
48
109
109
64
80
38
121
74
96
76
95
126
118
89
96
73
78
33
85
89
141
66
81
60
67
128
63
94
57
70
86
128
55
86
93
81
96
81
109
84
73
63
55
86
128
60
54
81
68
41
84
54
89
56
86
64
64
109
101
68
120
74
131
66
97
88
79
121
80
144
76
58
160
91
75
60
54
100
58
49
115
65
54
35
82
61
79
112
68
51
64
60
106
71
30
55
99
75
85
121
25
56
53
58
43
69
42
78
112
47
48
53
62
66
35
90
65
59
103
112
74
52
95
93
45
43
55
68
104
93
61
56
99
91
79
70
94
71
85
62
66
109
76
83
39
62
104
51
94
74
89
40
74
62
47
24
64
40
47
116
77
86
62
79
69
63
108
45
51
63
100
129
57
81
114
45
84
82
64
103
49
81
75
68
66
32
55
90
153
87
77
61
95
67
59
84
70
45
118
128
115
76
107
52
44
81
86
28
41
95
72
63
100
134
70
102
88
117
70
69
45
70
86
77
99
77
76
69
62
70
119
110
112
117
35
64
60
118
59
193
48
66
97
108
83
122
106
86
96
135
87
52
86
62
93
50
126
79
93
72
85
73
80
69
85
119
44
90
129
49
43
64
101
83
86
40
71
84
100
63
45
92
103
94
55
56
106
84
38
53
124
94
71
72
90
60
56
95
54
103
86
66
104
86
67
103
76
71
45
90
103
62
89
54
70
56
57
107
37
75
73
85
92
44
72
118
70
82
99
85
44
73
104
118
36
72
55
43
92
75
81
50
80
71
80
79
86
59
111
54
117
54
81
77
85
30
156
107
74
124
87
98
66
93
104
75
93
57
101
47
36
37
68
41
112
71
56
68
67
65
100
86
71
62
61
72
79
59
61
37
77
74
110
114
71
75
74
101
90
46
82
60
60
40
78
79
81
85
81
87
61
55
85
130
97
82
43
89
79
61
122
70
34
85
54
120
79
81
58
102
72
57
50
70
89
45
54
114
151
94
72
159
79
61
69
88
76
150
88
81
27
63
64
111
41
106
63
86
96
82
103
48
39
72
72
99
64
52
68
70
108
94
91
135
49
73
124
56
92
45
70
65
120
78
72
76
112
51
73
34
92
61
51
54
58
51
87
64
132
105
100
49
55
73
61
71
58
86
68
55
57
36
90
49
67
86
66
70
43
57
45
46
64
84
63
143
50
34
81
115
97
45
23
57
72
73
92
58
82
99
61
85
84
47
77
50
52
63
101
66
97
49
47
80
68
56
46
60
61
31
64
61
64
82
66
55
54
74
73
90
71
92
64
51
137
36
56
66
88
48
48
64
40
62
59
50
85
106
60
48
53
106
55
67
71
82
129
72
97
59
118
57
85
62
219
84
114
127
35
113
75
69
77
79
40
118
49
40
90
106
66
55
50
104
57
53
56
113
78
63
69
90
62
70
76
100
110
107
102
66
68
102
64
30
78
34
63
165
98
56
94
143
71
87
63
64
76
93
69
42
85
56
48
78
85
66
80
78
89
76
108
78
51
84
88
63
124
77
56
50
101
58
93
83
112
108
47
85
78
106
49
74
60
85
81
97
77
109
113
41
97
102
93
107
65
27
58
121
88
45
74
56
52
88
69
58
74
77
90
104
74
108
106
84
95
80
110
83
86
83
49
86
101
62
62
81
88
41
135
71
69
105
62
48
140
73
46
107
61
99
83
75
107
73
101
83
54
99
43
119
81
50
64
92
83
106
58
28
65
78
55
41
105
129
60
117
76
87
93
77
71
128
102
63
95
60
73
47
113
72
24
57
54
75
116
138
40
90
107
97
62
113
90
108
56
104
25
68
66
66
66
62
58
102
59
52
88
91
98
49
107
105
69
111
93
48
39
72
108
70
57
61
110
91
70
76
78
82
94
72
104
68
99
52
33
43
60
119
66
85
57
85
78
59
82
91
76
44
56
66
67
115
107
78
135
70
80
129
90
83
57
66
82
93
103
89
87
83
72
117
60
46
68
100
84
55
91
84
87
81
32
56
74
59
113
91
87
80
111
80
106
105
91
94
64
54
59
92
40
99
88
67
105
85
37
75
68
102
51
100
35
37
45
66
102
97
68
59
69
75
84
96
71
73
84
41
109
68
51
84
67
62
84
36
75
100
65
77
65
55
42
86
71
49
92
59
90
33
75
38
96
42
57
47
62
80
116
61
87
56
75
53
56
55
28
99
117
90
101
46
80
91
44
51
106
55
69
77
141
61
79
100
60
44
128
54
91
81
78
103
76
98
55
40
152
60
85
83
71
68
64
61
130
92
77
58
67
62
61
66
57
37
98
91
95
57
115
44
74
88
50
86
104
93
82
104
145
38
109
41
108
85
115
73
69
84
53
106
53
74
76
44
102
95
63
38
57
92
96
57
130
71
152
47
61
67
48
83
55
108
84
72
87
71
97
82
58
118
72
80
57
109
67
55
63
41
112
65
51
91
75
64
35
65
80
54
65
92
71
124
107
47
122
51
77
62
71
84
42
52
60
49
67
95
87
55
82
77
88
44
50
56
134
40
40
34
95
113
38
75
49
65
68
74
81
93
93
75
84
65
86
67
70
58
99
81
71
57
39
62
85
64
42
64
86
80
98
86
70
107
98
88
93
50
51
89
40
60
146
125
45
85
65
96
67
61
56
58
105
64
77
87
38
111
64
88
101
156
57
118
108
76
47
77
106
93
45
55
49
103
114
163
68
66
70
90
62
70
73
62
94
60
53
78
56
48
70
36
87
74
66
114
75
105
66
69
92
53
48
68
72
58
75
138
79
71
98
55
70
147
80
69
54
55
78
52
96
51
100
101
71
85
43
64
94
127
62
43
96
122
76
71
41
87
79
57
83
65
29
88
113
95
53
59
104
65
49
72
44
97
60
67
64
74
82
44
82
64
69
72
47
58
69
64
60
50
80
119
73
51
58
58
43
60
107
42
80
41
70
59
76
150
98
53
116
43
46
99
55
61
147
62
38
119
51
105
73
78
63
122
59
111
76
74
34
68
70
81
87
97
89
34
78
72
84
60
76
84
92
55
84
42
99
68
111
97
46
57
53
65
93
143
107
92
58
84
58
65
63
133
65
53
133
63
84
72
94
171
78
78
74
38
67
44
37
60
46
51
96
105
104
45
87
57
55
71
103
68
73
67
116
118
72
62
71
94
95
61
99
61
121
139
60
74
65
50
48
60
99
60
58
46
106
40
64
75
107
71
169
60
91
66
90
63
60
99
92
97
92
66
61
113
96
110
110
119
102
65
59
49
108
39
66
49
71
86
88
74
41
51
96
52
141
54
42
134
91
99
113
45
126
111
61
53
59
56
49
72
97
106
69
84
67
91
72
115
38
102
51
147
109
142
65
43
67
80
99
86
84
59
101
92
48
49
86
80
81
52
55
71
101
66
58
62
75
65
46
74
60
55
75
54
139
134
58
124
75
137
81
118
73
76
61
92
65
52
79
58
41
176
109
49
50
77
78
113
101
94
66
126
71
59
33
88
100
55
66
120
136
75
85
66
109
95
64
74
56
56
55
95
57
65
90
84
46
85
134
81
50
60
51
107
133
83
74
89
56
62
80
83
109
71
80
80
102
51
84
103
85
85
91
72
55
140
38
74
130
95
53
61
37
76
68
96
72
65
78
102
56
74
76
70
67
46
76
56
115
47
143
65
67
74
117
46
82
123
99
75
89
44
89
52
86
94
75
91
81
82
136
70
47
71
119
117
53
98
101
86
98
67
59
60
123
118
107
58
53
64
73
105
63
67
86
77
57
80
166
79
73
144
60
48
91
76
120
78
74
93
148
64
97
133
83
87
74
133
100
77
117
120
49
69
97
78
71
86
59
72
55
56
51
79
93
54
62
80
77
102
104
92
60
107
76
87
112
72
60
68
50
96
69
71
95
55
55
72
108
52
55
105
77
31
56
64
76
57
48
77
93
110
46
127
140
67
93
39
83
65
84
58
75
78
86
87
64
94
87
59
78
61
67
103
54
132
87
120
66
77
113
60
67
73
113
64
89
75
40
157
124
53
77
80
124
90
90
88
94
69
63
102
80
93
101
88
119
68
64
69
55
49
72
139
83
65
50
99
51
66
82
47
74
81
43
93
70
71
92
35
79
85
72
59
74
163
85
78
117
65
61
41
53
75
42
118
60
58
65
86
118
133
107
70
45
173
38
64
103
75
37
43
42
65
106
114
51
87
54
54
106
28
48
57
86
66
69
39
49
54
53
93
45
58
92
83
46
98
75
102
55
64
76
84
61
92
75
140
61
54
55
124
43
94
80
57
55
107
58
82
61
48
68
64
61
44
98
185
47
100
123
55
89
167
102
69
71
43
79
122
98
65
125
90
56
56
50
67
103
75
60
83
57
88
93
60
77
57
54
44
87
86
33
101
99
103
97
43
71
92
54
92
73
83
40
77
48
139
62
77
65
53
73
35
94
62
90
97
69
88
70
87
80
103
83
72
58
129
83
117
81
87
31
107
40
56
84
56
82
49
82
40
89
90
84
75
92
122
56
89
38
104
95
101
87
100
95
86
96
109
107
95
68
89
34
57
57
72
69
72
104
64
113
92
107
52
44
70
73
89
71
98
76
99
88
77
48
85
71
45
114
53
72
80
57
89
80
45
61
102
139
105
101
76
108
58
95
42
78
73
68
79
76
67
68
41
75
67
81
69
82
68
54
139
77
85
61
102
136
72
93
50
48
63
46
107
59
97
84
109
65
61
57
65
77
98
48
59
41
96
70
64
57
115
90
55
35
71
78
100
70
69
52
84
64
48
74
78
93
45
54
149
82
87
51
126
70
45
71
67
56
128
80
95
62
70
58
56
58
52
59
65
83
35
42
61
45
106
121
128
53
83
64
74
111
53
57
97
42
77
71
68
27
82
123
119
76
58
106
103
90
144
94
136
69
48
120
91
39
57
80
76
68
66
82
68
85
93
55
85
138
133
104
82
48
103
59
141
51
83
105
106
95
86
60
92
69
78
92
49
97
88
127
83
89
111
110
106
85
75
81
79
75
70
83
44
40
70
73
70
107
86
78
62
139
115
106
106
86
81
100
92
68
67
97
72
77
48
98
56
90
81
58
58
67
89
59
71
61
81
58
87
54
54
38
73
62
80
102
64
86
49
64
79
90
92
121
31
67
102
54
111
99
32
64
54
90
57
67
89
29
95
70
46
78
60
41
97
26
85
40
101
59
72
76
81
87
71
78
111
41
88
78
52
54
72
42
57
102
63
129
59
109
67
53
59
85
59
66
79
41
120
138
72
81
83
82
87
28
69
92
69
59
36
76
104
120
69
63
75
38
62
80
62
81
95
84
76
118
82
48
62
63
125
157
102
55
56
106
50
92
67
68
57
102
68
106
98
98
88
74
47
83
96
67
116
84
57
43
63
47
72
83
66
37
88
42
104
119
76
106
75
41
56
65
62
84
98
83
85
104
88
86
83
52
68
54
108
57
84
70
86
62
107
41
65
109
71
74
64
90
83
70
94
55
76
108
82
106
97
80
38
37
93
50
118
98
56
68
73
88
50
125
88
70
75
87
81
160
108
144
145
67
92
50
132
41
132
74
59
87
53
116
83
68
63
66
69
91
55
130
79
38
39
40
100
103
63
67
53
61
55
71
163
57
79
75
76
89
61
57
105
117
113
112
58
82
46
75
58
31
90
56
106
96
111
47
129
57
145
79
74
31
77
51
48
96
40
80
70
70
63
84
143
111
52
38
59
53
108
47
72
75
103
87
78
61
55
119
78
66
50
73
89
33
52
45
128
80
71
97
71
120
80
69
99
67
101
71
57
72
87
71
61
57
83
65
95
83
48
52
100
64
74
67
70
67
129
31
62
85
95
110
80
40
55
89
69
83
60
73
78
77
59
93
42
75
71
67
51
104
54
62
52
123
79
114
74
69
45
68
118
91
99
66
52
50
128
85
48
28
38
43
142
61
69
128
132
162
123
95
119
71
90
72
62
96
93
80
87
105
107
65
83
104
45
61
87
125
89
61
71
42
50
63
48
93
66
84
77
79
52
61
53
59
93
84
59
79
116
65
55
68
101
39
66
77
90
70
88
59
73
81
48
71
106
100
78
89
54
82
65
67
83
93
96
84
50
57
81
43
109
101
39
42
83
106
72
73
64
87
74
100
82
112
100
60
55
77
56
63
67
61
112
100
62
65
73
45
66
105
79
66
39
96
111
67
87
70
84
63
105
73
42
101
120
59
63
73
91
56
58
82
43
90
74
104
80
61
91
122
50
46
78
106
119
102
75
98
47
46
89
42
73
112
50
78
168
110
77
47
93
94
60
28
73
89
73
46
73
82
46
112
35
58
55
23
75
77
47
79
77
90
45
104
73
72
59
80
103
115
89
95
55
79
59
135
115
83
87
102
80
59
180
62
63
65
100
55
54
43
119
108
59
45
77
107
112
99
71
88
31
93
96
46
101
99
88
97
95
91
53
126
51
62
60
83
88
77
80
94
101
50
61
92
76
56
51
70
35
91
102
77
51
42
66
88
72
49
77
33
65
47
94
80
89
100
27
58
43
75
79
84
84
80
44
77
71
53
49
66
79
91
71
73
105
49
43
105
98
52
103
70
92
94
38
94
70
73
65
58
83
53
58
47
72
65
91
54
91
127
59
53
97
58
75
55
96
86
78
91
68
171
60
52
83
95
91
77
74
124
105
42
85
87
94
92
44
104
76
92
127
70
55
76
96
74
69
68
68
103
52
97
107
108
83
71
44
78
61
110
68
111
66
65
96
85
114
67
43
65
46
84
68
145
89
97
73
48
73
53
116
69
113
64
73
62
76
130
72
75
47
75
54
49
128
67
48
55
80
56
101
99
52
94
94
67
81
134
58
34
77
77
66
89
60
97
74
46
105
147
87
93
104
53
54
38
123
86
102
86
48
86
85
97
71
62
36
69
110
42
32
95
56
84
57
71
102
56
31
109
106
91
75
74
107
89
63
49
81
87
38
66
94
43
37
94
64
70
84
44
36
79
37
112
86
62
53
41
72
57
72
125
66
51
76
80
65
55
78
72
83
59
43
72
71
47
49
50
75
60
76
40
74
135
69
83
94
46
50
106
113
58
81
73
114
94
64
84
71
66
148
94
79
60
76
126
59
113
68
54
127
45
59
109
61
85
66
87
49
74
73
70
81
105
73
78
74
67
94
96
34
103
54
76
55
64
60
65
109
47
48
38
107
70
90
69
58
50
55
54
64
142
109
46
107
82
71
92
97
50
63
90
106
88
93
123
49
84
81
57
72
64
99
141
73
73
84
47
115
118
84
135
50
71
58
111
69
94
61
63
88
63
84
107
53
60
65
56
82
118
44
112
168
88
132
108
43
93
82
98
101
42
53
63
82
107
56
130
70
69
91
44
69
79
84
77
38
69
64
89
118
85
85
44
85
102
99
63
50
103
65
83
57
104
69
46
106
54
107
91
89
48
48
101
73
84
87
103
148
116
95
37
50
32
88
83
84
73
52
96
76
66
97
86
49
90
83
65
139
105
74
89
96
64
57
104
55
124
76
71
59
94
56
71
125
85
96
85
89
64
83
69
76
43
103
115
63
71
40
55
44
53
72
157
87
57
101
76
67
86
106
83
91
98
75
58
86
92
76
73
78
104
69
94
90
51
119
65
120
62
89
103
76
63
71
92
83
77
56
56
157
71
83
81
75
86
76
95
52
101
93
77
62
54
97
63
123
73
131
65
59
59
43
128
86
107
107
98
123
150
128
50
52
98
86
64
104
91
64
71
85
160
167
52
68
91
74
91
48
69
123
109
81
65
94
143
57
97
45
62
54
60
128
55
135
157
118
94
105
159
99
81
86
100
50
71
111
87
96
95
57
99
117
64
123
87
73
114
78
69
70
66
66
100
95
53
39
54
70
125
39
85
88
93
84
56
59
70
102
62
93
54
97
41
118
66
98
78
93
124
58
71
78
103
69
123
71
73
82
73
77
69
103
86
86
101
58
119
100
143
91
47
48
147
79
129
87
73
110
89
48
72
53
95
70
60
65
46
107
50
89
72
93
101
89
79
53
41
85
73
57
97
64
50
47
88
77
57
66
87
97
80
75
105
84
112
49
46
80
63
90
86
57
77
69
62
131
49
52
160
47
32
134
77
90
73
62
44
90
78
86
50
63
70
98
55
62
70
143
66
87
79
104
63
86
83
66
73
131
55
71
71
63
102
89
58
61
96
69
71
74
60
99
41
101
52
34
75
103
46
118
65
43
60
82
93
93
96
61
88
46
67
82
94
60
53
152
46
84
103
45
83
157
62
53
73
96
65
49
63
62
83
60
65
57
84
77
115
130
84
86
116
70
105
69
67
59
49
62
106
83
73
60
47
66
38
73
88
72
95
64
78
97
62
121
64
40
69
46
91
117
66
79
72
93
57
107
75
89
64
83
77
58
36
91
93
65
70
105
55
117
96
36
67
70
60
94
48
60
90
38
95
77
57
103
86
148
83
71
81
93
62
30
37
73
104
25
156
90
80
55
76
119
63
93
94
82
112
114
56
65
62
73
94
99
74
46
63
110
125
111
52
60
93
29
50
66
84
121
64
53
118
73
96
48
105
117
76
119
60
48
48
74
91
76
57
72
90
54
63
117
71
74
69
94
80
90
64
82
78
46
87
56
107
121
89
68
166
60
93
55
32
81
87
80
76
99
49
87
105
71
114
60
50
39
130
57
77
57
71
51
78
47
47
72
58
76
60
72
62
47
58
55
47
112
101
96
61
61
63
103
49
51
85
92
76
103
124
63
102
104
119
80
65
60
95
71
91
152
67
101
69
97
64
59
62
68
57
79
111
65
36
55
71
82
77
102
116
95
41
68
133
39
77
27
72
78
106
76
75
58
95
58
58
66
70
98
82
70
109
73
77
94
58
88
95
71
75
111
59
54
79
85
53
101
83
82
111
31
114
91
78
46
84
81
65
46
54
68
48
78
49
68
54
138
59
35
45
37
69
100
111
75
110
78
61
99
86
41
73
95
93
115
79
102
83
38
83
58
87
83
109
95
59
82
60
57
70
88
73
68
96
69
99
66
60
80
55
93
69
123
58
65
88
113
60
111
60
52
48
147
76
117
107
106
66
57
101
80
61
49
82
54
124
72
44
66
56
134
78
78
92
64
82
65
86
63
134
70
62
99
60
117
68
105
74
75
57
84
76
60
103
66
83
110
95
77
82
64
102
146
33
81
47
93
170
127
108
52
76
90
56
109
61
64
67
87
78
66
116
41
117
64
36
85
79
82
70
98
122
76
55
62
68
83
87
81
55
73
72
53
78
81
59
56
121
85
93
23
99
63
104
55
116
70
71
74
108
97
64
75
97
56
42
79
103
54
77
71
70
100
120
130
94
58
105
97
104
99
112
96
84
73
98
96
42
89
71
61
57
78
54
104
81
93
56
108
107
145
72
50
35
43
67
139
63
48
76
65
28
53
88
97
73
34
130
63
61
106
44
104
58
67
38
75
181
90
103
76
69
84
45
135
77
55
94
112
121
42
36
65
85
71
111
75
92
67
143
107
59
77
62
70
130
100
81
49
71
68
76
95
77
65
53
70
91
61
58
66
62
50
98
92
72
108
83
37
86
93
66
75
52
76
116
69
30
74
57
66
56
64
76
86
78
38
67
72
55
58
95
76
132
128
87
106
49
71
58
102
70
79
123
76
46
62
48
52
82
57
46
80
65
95
114
110
98
68
68
60
79
70
97
89
77
105
92
78
111
58
93
72
42
46
97
108
110
56
76
94
100
46
100
113
54
73
119
68
82
55
112
100
63
77
44
61
80
69
47
81
64
88
59
62
88
27
101
33
63
91
72
58
66
62
58
59
70
62
64
81
77
111
38
73
35
49
65
78
44
91
83
31
50
109
69
55
82
50
49
76
28
80
100
58
89
53
87
32
74
112
72
97
70
52
77
57
56
64
55
123
134
111
104
127
72
60
98
78
69
58
67
121
44
114
61
106
46
55
92
35
148
106
94
95
25
94
68
75
83
120
87
91
106
69
73
73
88
80
132
98
58
58
66
103
105
62
72
113
81
94
44
93
91
43
103
101
99
93
77
78
42
47
62
88
41
110
68
60
89
67
110
57
67
58
67
92
60
30
91
46
84
90
73
55
64
87
47
94
79
65
89
50
44
131
36
80
60
118
103
72
114
112
82
94
32
63
57
81
61
75
38
50
124
56
90
56
129
64
66
90
68
107
57
43
82
78
77
84
80
53
82
95
104
116
71
79
71
88
69
52
87
65
40
82
40
102
61
62
85
107
70
107
85
78
68
102
58
112
89
55
59
76
119
78
92
46
80
122
44
123
56
69
47
78
42
89
78
58
72
80
57
117
54
147
65
96
99
76
104
61
86
95
96
54
172
78
83
124
74
70
84
88
68
111
68
65
85
77
78
53
115
60
97
97
85
78
48
69
110
55
115
109
57
97
93
78
52
87
56
37
68
71
77
65
58
91
38
55
38
97
35
85
42
56
139
62
62
56
70
133
84
76
55
81
88
92
101
129
71
94
100
31
114
28
58
106
127
77
72
80
66
69
44
88
102
44
76
77
92
70
124
69
88
120
102
31
112
65
101
52
126
100
34
71
86
62
56
65
80
64
58
56
89
64
42
42
95
116
44
98
130
37
54
111
42
79
36
82
128
51
103
63
53
120
55
69
62
66
97
73
88
49
69
56
47
74
94
75
48
140
110
54
53
46
89
69
55
98
98
45
76
89
83
86
101
70
55
49
77
97
113
82
48
48
87
83
87
43
97
56
84
84
56
80
49
86
88
40
94
96
95
83
84
77
105
55
44
103
42
83
89
63
97
87
107
87
103
199
86
126
79
98
109
57
62
72
74
90
68
108
48
35
109
79
39
88
44
84
73
79
98
77
55
104
36
105
54
66
63
61
82
54
69
37
47
94
86
40
39
47
51
47
74
63
33
91
65
96
73
37
78
40
78
79
64
87
47
67
87
37
92
77
83
79
82
54
60
89
86
53
68
55
74
82
94
72
35
48
82
96
86
83
113
73
96
96
105
98
103
38
92
38
113
139
36
53
88
73
90
71
81
79
39
53
20
89
43
52
73
109
66
57
105
73
72
108
131
92
50
72
99
69
109
78
91
89
120
74
99
80
88
50
74
115
68
76
57
48
79
79
75
114
58
78
54
105
59
78
50
87
156
147
77
130
64
57
100
90
80
113
67
37
100
62
88
69
72
58
79
48
88
45
88
64
51
53
118
57
71
51
76
102
77
54
78
118
88
53
66
49
96
73
50
51
63
77
107
51
125
77
93
127
63
116
89
77
65
65
156
49
95
81
57
96
62
111
101
39
42
83
84
111
91
52
68
46
58
90
68
68
48
99
61
71
81
90
84
65
39
95
62
99
62
74
109
68
130
103
105
65
156
49
40
147
52
40
64
81
83
59
52
82
111
50
77
85
46
35
53
105
105
102
136
76
70
83
86
84
97
59
88
101
102
67
56
69
40
70
35
80
103
127
49
92
114
104
82
88
68
47
38
93
63
95
51
80
27
97
65
85
40
84
46
70
50
62
209
130
27
52
23
37
62
108
110
51
77
94
71
110
41
47
59
51
78
87
68
46
51
56
115
53
99
70
53
54
91
69
73
34
33
38
109
60
63
97
115
108
60
44
119
73
91
81
53
116
97
100
33
45
96
86
46
49
54
98
77
75
73
35
113
74
51
106
98
85
111
98
45
68
84
54
43
90
61
93
65
82
106
86
61
82
60
78
81
51
58
81
53
52
50
67
66
104
71
70
71
34
87
104
148
81
84
84
62
89
133
82
44
99
45
139
67
86
39
98
36
93
116
120
52
97
121
174
57
66
56
130
63
123
146
47
75
87
67
98
115
36
56
44
70
104
75
143
74
74
80
91
65
73
50
83
79
77
31
74
60
99
68
59
71
82
88
75
57
58
87
72
79
84
93
87
87
77
45
55
89
106
72
82
102
84
76
73
53
49
89
39
133
138
52
121
59
91
90
60
85
88
142
89
91
70
48
68
69
103
88
92
99
89
67
151
83
57
68
45
45
116
62
73
75
75
68
50
78
134
107
63
42
80
67
58
44
54
90
43
46
96
135
67
59
123
100
52
114
137
132
63
72
62
66
85
64
89
96
109
75
48
71
83
104
70
82
76
87
43
59
71
69
103
54
87
30
57
72
51
75
69
43
107
53
125
50
55
63
107
58
115
33
117
74
102
66
107
84
90
92
87
59
67
53
83
46
80
68
73
80
51
50
66
71
95
62
75
68
80
123
32
54
101
55
133
80
134
101
91
69
77
91
64
48
62
114
48
85
52
44
103
87
90
115
43
47
77
68
68
124
56
79
127
59
87
119
136
51
81
82
61
106
83
60
66
76
82
115
68
65
55
81
77
129
59
92
51
89
49
64
126
80
102
46
71
44
118
54
117
60
89
66
82
59
68
113
56
83
54
66
76
50
51
61
72
78
83
83
64
82
136
100
110
84
55
83
83
101
86
79
49
41
43
89
76
126
84
72
105
61
76
113
64
77
91
49
125
87
73
92
86
70
55
108
47
88
65
108
60
88
41
59
84
56
118
127
75
112
106
135
49
50
66
80
32
47
127
56
46
64
73
31
129
56
58
39
87
57
23
126
59
172
75
61
154
84
72
106
94
86
30
57
92
80
54
88
99
92
56
111
113
35
77
70
112
88
113
72
56
57
101
70
63
113
77
102
75
43
86
84
109
96
92
154
51
114
39
71
119
81
104
87
71
97
62
46
62
103
51
131
79
42
76
101
75
118
43
58
63
103
60
62
54
78
56
57
107
140
76
60
63
95
60
98
144
67
53
91
118
42
76
91
101
66
82
48
51
48
67
78
67
56
73
43
97
69
96
64
52
89
60
69
160
55
38
93
56
69
60
52
77
99
61
103
62
76
103
55
100
106
99
63
28
72
112
85
111
92
73
94
49
85
92
82
80
63
83
52
64
60
50
95
73
75
88
48
78
55
76
73
73
86
51
95
46
50
58
38
38
98
31
125
74
90
98
50
86
82
32
71
68
65
74
53
91
55
75
59
65
75
116
102
119
58
97
58
80
68
65
116
100
75
73
96
97
114
71
59
52
115
44
102
77
65
65
60
82
66
153
74
49
99
74
74
63
61
112
71
86
46
72
74
80
93
82
51
86
92
69
103
81
41
98
91
113
82
112
58
96
99
68
75
52
102
98
97
72
149
52
83
116
65
52
132
84
75
50
34
52
70
95
67
62
81
58
86
75
45
116
83
50
62
80
80
39
89
155
42
84
75
107
79
75
53
127
70
84
66
93
79
78
74
98
63
69
59
99
81
61
50
69
69
94
50
131
99
72
73
62
60
73
126
61
74
80
105
102
87
112
145
110
93
66
47
36
84
61
101
51
85
82
78
129
107
46
99
64
54
71
98
67
104
60
71
65
93
100
73
45
61
56
54
98
71
83
57
65
52
29
69
108
89
105
108
55
138
58
59
52
107
56
95
94
75
109
68
97
85
73
134
110
114
53
47
62
116
90
91
127
69
70
109
47
93
68
61
54
105
84
38
67
54
130
83
32
133
69
68
75
69
53
104
97
29
77
86
52
87
45
85
98
73
51
33
87
101
50
115
43
85
62
59
138
111
103
70
72
82
68
74
97
57
64
99
93
91
50
63
84
115
41
48
58
94
61
111
98
41
74
58
85
52
80
62
64
69
58
136
63
85
55
124
89
88
59
98
53
82
93
50
35
95
103
55
53
52
86
68
132
89
79
104
108
75
62
58
78
144
60
85
89
49
53
45
91
67
95
113
73
86
49
73
94
82
55
51
72
68
92
61
76
88
52
68
97
158
82
64
83
58
85
96
60
42
86
97
123
57
41
88
118
76
90
91
80
81
119
99
70
84
77
77
65
72
47
68
99
79
49
97
67
80
88
63
154
62
105
48
107
84
78
91
44
45
70
82
98
87
92
60
97
57
47
72
98
92
71
106
97
80
82
96
80
61
72
108
70
61
112
87
97
108
108
109
74
58
118
90
114
95
65
79
96
88
47
73
136
73
91
66
77
33
77
79
77
46
118
47
48
71
122
67
98
102
51
48
110
57
75
77
72
66
78
49
98
56
89
104
68
102
85
92
55
95
71
77
45
62
44
49
117
114
120
91
66
95
72
75
83
86
69
87
97
73
127
78
87
60
134
91
58
39
50
61
83
76
79
98
50
58
31
37
98
149
127
100
35
124
109
37
74
109
85
74
129
84
53
57
39
63
54
58
90
134
86
59
63
141
55
55
58
83
71
73
63
56
63
72
111
76
114
84
88
62
58
97
136
98
122
106
97
108
118
75
95
111
67
101
87
95
80
28
70
104
61
95
108
76
69
106
138
61
115
28
72
50
89
72
66
51
28
63
94
63
125
85
93
24
86
82
45
61
75
104
62
48
64
97
71
40
109
76
51
73
75
102
58
84
60
36
51
44
37
90
83
45
91
103
91
89
98
60
52
67
87
87
76
104
53
66
78
95
54
67
87
97
103
81
100
60
66
63
96
80
87
36
60
118
71
80
82
75
64
68
86
57
40
106
53
113
77
62
56
57
48
83
100
138
54
68
126
93
82
109
88
86
49
62
66
147
75
112
72
56
89
102
77
145
108
91
92
54
63
76
63
39
62
43
43
81
65
85
96
53
93
43
40
46
119
77
51
34
83
69
60
52
83
53
139
79
93
97
38
102
79
74
66
133
67
114
94
105
93
44
61
124
117
51
50
121
49
88
60
52
56
71
95
67
44
89
29
73
45
59
81
120
84
84
86
92
96
67
88
43
112
104
73
53
97
61
65
56
114
92
115
126
106
104
45
56
71
62
87
44
88
59
74
97
106
69
55
99
87
187
49
41
63
66
80
96
73
73
67
59
112
78
55
96
73
51
64
63
66
88
91
82
94
59
110
95
101
95
87
117
57
56
36
69
94
70
71
74
107
64
74
74
88
142
118
69
55
78
154
43
52
51
86
75
57
88
119
87
108
92
75
37
116
113
113
34
70
59
31
80
78
67
73
66
54
87
84
115
88
89
91
48
26
39
66
51
71
106
85
114
67
151
92
72
60
111
110
72
86
81
85
76
95
75
90
118
77
52
80
86
93
90
186
43
88
67
53
58
60
55
70
97
57
49
69
68
85
97
82
55
82
51
116
86
104
127
76
76
63
73
92
60
72
40
73
84
82
52
70
80
88
46
128
79
40
89
53
52
73
58
87
81
57
83
67
50
88
97
63
49
55
92
92
48
55
109
95
126
49
39
51
39
74
88
102
91
88
89
71
56
77
61
60
65
94
102
82
49
104
86
141
51
71
49
73
90
49
75
97
87
126
51
81
35
72
39
57
44
68
62
98
39
71
55
92
119
58
77
76
62
86
82
109
62
47
93
89
176
68
39
51
74
88
106
81
83
131
78
63
35
123
87
79
65
85
79
100
80
41
76
95
80
62
36
58
103
57
94
79
62
118
87
86
115
125
58
34
80
66
83
62
27
114
64
72
51
141
136
70
63
45
46
34
66
76
67
66
43
44
53
65
79
80
59
79
48
98
68
121
108
66
59
96
66
79
70
122
38
49
101
55
45
77
70
95
76
100
48
80
91
57
102
47
57
110
74
62
47
101
57
101
67
76
115
89
48
48
84
66
83
79
58
91
80
93
57
95
99
83
59
65
75
54
64
100
66
65
85
62
101
31
119
76
93
46
81
38
67
81
108
43
52
73
73
90
83
92
76
79
39
103
59
53
82
49
48
86
64
74
51
119
60
115
83
44
80
53
50
74
58
62
49
66
95
78
62
84
86
84
87
79
81
70
65
77
27
49
66
154
71
51
78
52
110
75
89
92
59
70
91
49
86
21
108
158
55
74
120
85
119
66
89
54
75
92
92
59
85
75
60
68
51
57
49
82
75
104
43
88
85
56
53
91
71
51
79
57
55
47
85
58
74
61
61
88
67
81
71
50
89
77
76
81
87
82
120
95
59
45
79
64
106
41
78
56
62
80
51
36
130
57
80
81
98
54
72
75
88
83
66
80
66
59
74
88
40
75
63
85
30
97
48
84
68
102
62
60
90
46
82
94
118
50
78
100
78
37
79
72
62
75
124
69
105
60
87
60
64
71
74
64
52
60
120
47
107
45
103
99
69
104
104
50
89
61
63
72
134
103
145
81
62
64
93
58
83
66
84
60
89
116
53
56
64
100
75
53
96
49
71
112
54
87
65
85
102
72
76
77
71
69
90
86
89
57
92
86
53
121
50
61
65
60
100
113
62
51
65
80
110
80
140
80
48
70
85
90
37
35
127
68
76
113
106
82
41
76
89
65
50
103
37
54
51
125
147
82
87
63
64
99
96
52
81
93
82
89
57
68
121
67
108
114
79
49
40
69
50
77
77
51
58
69
128
82
68
59
59
90
65
76
114
92
94
68
115
53
76
74
49
61
66
41
96
92
68
105
63
39
99
117
62
51
58
67
41
73
76
81
57
67
71
112
51
67
113
94
99
98
87
164
90
93
102
67
75
95
86
54
76
100
95
50
47
78
97
58
77
61
104
70
74
150
129
78
103
60
93
78
81
85
85
57
58
92
123
67
73
69
68
156
38
63
74
85
75
86
89
89
50
128
87
100
85
88
70
51
150
138
60
111
58
68
49
127
46
82
89
73
73
57
99
111
107
72
111
82
56
81
81
42
86
77
68
58
88
78
76
63
78
60
71
75
87
78
58
63
65
89
67
64
72
103
105
77
98
70
104
88
50
81
64
62
54
48
63
85
73
83
107
109
71
90
64
57
71
41
38
77
77
118
64
57
36
94
60
90
79
44
74
91
43
95
45
61
102
100
107
87
40
132
57
88
75
69
71
61
69
70
84
92
112
68
91
122
116
81
137
83
109
45
66
94
41
48
92
82
45
113
60
87
52
60
116
47
91
45
182
91
121
83
59
80
50
31
75
96
115
124
99
90
58
143
121
71
79
76
75
56
120
42
69
52
67
70
92
56
78
53
43
56
52
49
107
39
41
49
42
51
82
61
72
92
137
61
72
48
78
46
46
97
78
70
69
74
44
63
86
40
84
68
48
77
79
57
71
42
76
74
52
133
60
93
72
75
81
90
45
57
86
51
45
107
103
66
88
78
76
43
50
60
71
37
56
96
38
69
92
60
65
64
58
67
83
76
48
81
80
77
72
71
72
98
88
119
50
111
82
56
99
78
65
48
65
40
58
100
98
90
94
88
55
64
71
54
87
100
87
87
77
72
63
80
68
51
96
98
116
68
67
97
69
109
35
77
76
65
70
92
89
129
85
111
75
60
98
103
61
85
67
89
101
74
94
81
80
63
78
78
138
113
27
79
50
52
33
38
87
54
110
63
39
103
82
122
57
56
51
62
92
71
68
86
91
92
71
96
70
57
61
81
58
80
104
26
82
105
32
61
64
31
112
111
104
75
65
62
63
95
89
71
93
55
78
72
61
81
51
65
41
78
124
78
50
117
90
49
77
65
77
90
47
57
68
33
62
68
122
64
50
48
70
120
85
49
66
104
80
86
94
77
95
41
37
59
82
122
58
92
50
80
79
66
72
133
66
41
73
65
84
53
59
88
123
125
58
59
85
88
84
128
96
61
59
53
62
97
70
85
54
61
70
98
109
61
99
68
77
155
84
70
182
50
142
74
74
75
102
61
105
121
85
83
55
79
88
104
90
64
82
54
84
65
59
60
76
87
107
82
42
49
73
37
109
57
75
87
60
44
65
105
51
111
109
59
139
131
86
86
66
83
99
86
94
53
122
58
115
35
55
42
32
60
117
98
68
88
108
55
68
82
59
63
48
38
75
66
33
128
74
43
51
37
94
69
38
106
102
74
62
61
88
108
40
42
78
60
114
109
65
109
110
94
61
125
74
141
68
112
64
126
100
91
127
57
55
109
53
49
60
64
78
86
81
61
46
72
67
52
50
64
68
108
109
86
47
29
82
53
80
49
56
84
30
103
75
30
91
66
97
117
77
57
71
70
39
44
50
117
85
58
83
78
66
63
71
89
77
155
94
34
72
83
70
80
87
98
80
65
66
52
70
54
81
94
91
35
74
114
108
78
88
51
70
61
84
45
52
89
53
88
63
145
93
92
47
57
75
84
54
37
97
95
100
62
48
67
77
71
44
75
134
45
44
91
88
137
97
72
46
158
63
72
92
90
55
65
69
90
63
108
46
66
66
57
68
30
50
125
115
111
84
62
113
63
73
95
53
78
99
25
121
73
73
131
109
84
85
52
99
94
101
71
73
110
49
103
80
45
76
79
43
61
62
43
65
135
54
47
121
70
54
135
44
105
121
69
33
134
75
116
93
56
48
60
100
97
33
67
52
50
97
66
59
111
69
92
78
51
95
43
84
66
71
82
71
62
66
52
99
49
94
45
66
74
100
176
84
73
111
67
47
67
86
95
66
125
94
108
117
77
86
98
106
85
73
64
77
67
109
69
39
67
94
36
66
84
84
149
43
76
106
98
56
120
114
88
101
52
81
75
82
61
88
70
46
79
87
90
62
71
150
89
49
98
53
104
62
81
78
67
70
64
51
29
91
158
54
93
45
105
46
43
102
88
106
78
75
91
69
55
58
91
81
80
90
77
75
53
80
69
119
103
72
80
104
48
89
73
87
105
75
105
47
95
69
76
56
73
85
87
50
52
78
57
62
133
60
86
45
98
104
77
80
61
75
96
53
108
134
51
68
134
64
84
102
93
56
41
68
70
151
46
33
142
82
157
58
69
70
92
95
48
48
87
95
96
40
66
115
84
82
75
38
65
51
59
53
73
119
39
59
75
110
28
79
88
40
55
90
70
73
47
55
88
96
93
78
75
96
108
92
56
53
56
51
48
68
64
41
58
67
79
60
93
78
80
62
106
51
56
76
63
77
86
47
62
73
98
77
107
106
74
63
80
104
54
135
103
62
65
74
64
50
73
62
71
126
56
95
96
57
50
80
90
77
96
84
72
84
55
98
75
48
88
91
63
66
129
51
96
119
46
65
109
98
72
89
77
81
119
64
103
89
62
84
75
72
65
111
75
72
69
69
147
123
84
89
41
54
79
104
75
55
73
37
97
63
46
39
103
106
74
66
94
94
39
88
71
57
89
52
63
76
72
140
87
45
50
94
87
117
82
60
74
56
73
45
51
41
126
55
104
70
53
69
75
31
57
90
58
118
104
68
73
94
73
73
81
94
55
79
110
80
80
39
109
58
71
94
81
60
50
63
51
129
80
97
94
112
33
91
96
63
83
46
48
90
108
83
49
87
87
105
67
76
76
80
84
94
64
87
54
63
61
99
76
70
120
73
79
89
64
63
117
84
77
77
41
98
129
114
114
51
43
31
108
56
91
76
118
109
101
82
89
71
124
79
68
163
70
57
56
54
52
102
76
75
60
77
76
43
97
105
62
76
73
83
53
111
156
99
59
92
115
35
90
66
40
103
79
36
80
66
114
212
66
49
115
56
49
70
61
62
78
77
20
59
56
50
87
94
83
58
49
69
48
102
86
34
49
41
82
116
106
29
52
111
130
74
73
87
52
62
92
75
88
56
66
53
90
59
104
63
53
106
85
45
52
97
33
123
65
63
151
86
74
86
55
73
98
50
45
54
52
79
112
117
47
67
55
168
111
140
80
45
65
66
43
73
73
92
128
61
112
84
143
76
82
118
80
111
50
81
67
93
53
54
114
48
88
81
79
103
52
66
83
84
99
60
76
82
86
38
91
63
61
135
100
33
103
78
69
73
39
99
67
87
35
69
43
69
97
99
119
56
84
103
67
80
66
70
102
39
100
80
63
100
86
116
101
70
103
67
92
65
92
43
91
88
63
80
107
55
52
79
69
112
119
56
69
74
93
72
114
69
79
105
136
92
106
142
79
45
122
53
96
93
76
65
60
57
98
98
71
74
62
73
48
79
73
74
70
122
91
75
92
58
66
77
59
63
44
58
129
66
97
90
87
95
82
60
68
74
128
78
95
108
114
117
80
58
61
56
119
47
89
37
120
49
105
38
85
84
42
111
73
125
37
80
60
28
49
71
106
48
48
61
110
51
77
43
87
66
87
82
93
103
90
90
110
89
62
70
59
38
54
129
103
38
132
81
73
68
67
56
89
91
59
85
125
112
55
44
49
97
53
79
91
78
45
68
104
53
54
95
43
61
99
99
125
77
74
107
128
91
64
80
155
87
78
72
126
56
57
36
60
27
128
121
81
82
53
106
63
84
58
78
104
62
82
78
86
70
96
92
90
45
67
76
84
119
44
125
61
43
65
66
128
66
111
95
46
74
69
108
59
127
131
91
110
135
40
97
100
56
65
65
107
104
61
98
96
77
146
85
59
77
73
37
56
85
84
87
99
131
75
74
93
63
62
90
50
83
40
107
46
71
128
55
66
71
51
86
59
66
125
85
37
88
131
81
76
73
98
102
73
92
129
53
80
34
56
63
93
61
39
83
92
66
133
97
62
86
83
40
43
47
91
80
197
85
51
89
106
54
109
93
86
76
74
93
51
103
52
108
126
93
65
94
91
64
104
52
101
60
111
160
91
72
87
176
80
60
89
39
48
121
84
65
70
75
131
73
60
83
60
94
89
63
80
82
89
74
108
86
80
101
80
42
80
84
44
93
78
108
43
97
80
55
72
97
88
90
94
87
67
37
80
59
63
55
75
44
61
106
52
86
49
66
50
104
75
44
17
121
76
66
45
96
79
62
50
39
109
51
67
76
49
86
49
109
79
78
73
74
98
122
92
90
85
37
29
64
49
85
72
109
74
109
76
67
94
90
103
70
27
45
50
98
65
94
125
69
25
62
79
49
80
55
68
48
76
67
91
210
84
75
65
89
76
58
67
93
60
106
42
115
101
151
75
96
47
54
91
74
99
79
80
82
111
71
90
78
75
67
67
94
91
100
68
82
58
46
74
78
93
76
51
51
60
60
107
115
80
54
90
60
114
69
107
66
58
79
92
58
86
99
63
83
103
67
57
85
99
44
98
62
74
67
61
74
47
73
57
97
136
43
112
108
62
74
80
53
87
84
79
103
65
91
73
65
95
76
75
70
81
61
59
62
92
26
95
88
70
115
52
47
124
91
59
65
25
57
46
84
75
60
85
66
62
62
80
66
56
85
56
105
75
59
133
44
74
67
92
117
50
68
45
54
58
94
94
43
137
89
56
48
60
86
44
118
122
98
45
60
89
88
125
83
116
76
74
117
65
130
77
91
75
72
69
96
83
90
35
35
47
156
62
94
108
64
140
80
54
51
43
159
62
61
57
60
58
110
55
103
86
108
109
91
117
80
87
78
114
64
36
52
96
86
123
69
72
62
68
114
105
149
89
97
104
39
100
66
78
55
53
72
108
89
47
87
19
85
40
160
93
46
101
49
64
61
50
34
141
47
71
84
39
44
108
51
161
59
109
102
96
43
84
92
95
69
89
107
83
59
92
83
56
61
63
119
79
94
49
101
61
105
52
78
59
36
65
41
76
63
109
57
59
37
91
98
39
82
44
64
86
51
72
96
120
89
102
135
96
57
74
63
90
62
95
52
112
101
69
90
94
112
90
83
131
125
57
80
22
67
74
75
65
147
61
77
65
87
47
80
30
75
81
58
49
62
111
95
83
60
100
106
112
89
108
88
57
85
81
81
133
40
86
117
89
67
59
113
49
96
53
112
89
93
76
92
81
96
62
80
94
80
39
111
73
110
56
118
94
50
94
57
47
150
64
49
70
104
49
101
103
90
65
72
54
47
89
57
76
80
78
54
149
97
85
125
57
89
93
80
57
96
77
90
69
56
101
74
73
69
80
35
64
100
42
58
113
59
65
75
57
77
47
80
67
77
131
69
95
150
63
74
34
111
53
76
75
71
57
133
68
98
80
82
82
98
137
72
85
99
49
116
52
50
182
41
53
83
99
103
82
103
86
85
62
70
81
113
83
113
61
59
63
66
77
106
47
51
85
60
65
86
106
84
118
102
77
49
61
86
68
58
67
130
90
92
107
64
73
58
92
87
117
82
68
159
81
44
88
139
56
61
49
124
126
81
93
90
63
73
85
88
124
72
96
81
83
102
64
150
55
42
86
118
64
29
106
67
66
68
118
78
61
45
90
92
70
65
82
64
79
110
70
53
51
87
94
62
55
87
53
91
105
64
43
69
73
46
71
41
140
82
77
105
93
50
91
49
92
73
125
89
101
52
77
99
62
61
77
126
123
81
86
84
73
54
54
67
80
124
104
51
79
75
71
176
67
59
75
80
42
100
82
79
82
46
85
86
83
78
75
128
60
71
78
90
61
101
45
34
67
74
130
83
104
111
101
91
61
96
114
97
96
82
71
81
88
46
98
62
175
90
91
94
162
57
71
96
73
128
69
67
76
52
74
69
84
90
91
46
49
120
71
72
82
73
105
71
67
118
89
77
101
103
95
106
62
74
140
114
104
39
86
36
57
54
64
54
77
124
78
100
81
30
85
51
127
68
77
49
69
115
57
74
88
85
69
57
77
106
93
59
65
90
61
57
62
91
59
79
81
117
98
60
57
63
47
104
74
116
53
80
102
85
48
53
82
41
146
90
90
44
44
46
119
87
88
118
84
77
68
86
73
110
94
32
56
62
95
96
73
38
100
74
50
48
61
99
83
79
69
46
87
63
46
79
93
67
116
97
75
130
76
107
78
99
82
75
63
68
71
74
56
83
80
73
115
105
80
51
92
46
72
54
75
46
69
58
78
80
67
104
73
61
133
76
88
81
121
92
70
89
121
135
137
103
73
56
52
37
73
45
77
88
61
140
119
79
90
65
84
93
153
66
47
48
63
73
78
101
108
77
35
108
109
118
57
69
36
68
78
77
76
67
97
72
47
62
57
99
85
78
69
27
87
97
104
70
32
38
92
56
61
92
84
55
120
47
64
100
100
67
69
89
129
108
69
102
116
138
107
91
46
82
92
79
135
55
72
82
84
53
97
73
79
58
78
36
78
77
64
104
64
54
74
59
45
98
99
67
100
110
116
75
79
49
55
88
57
94
120
71
65
81
54
74
77
111
60
119
81
36
62
114
85
90
153
50
85
105
90
97
87
67
35
84
54
52
121
70
70
74
51
102
92
109
50
51
105
57
48
78
85
111
79
88
68
66
63
70
76
113
72
179
84
65
72
81
61
73
86
88
90
63
53
104
42
109
112
30
61
53
52
87
55
41
112
43
96
108
58
68
73
75
93
57
49
71
62
76
84
50
109
124
64
89
73
85
150
61
79
44
169
69
58
40
89
56
89
86
56
74
105
93
66
58
128
60
106
73
72
102
48
64
57
79
75
90
82
83
73
71
78
65
100
38
90
100
118
57
71
142
118
70
53
53
77
71
117
44
61
103
64
78
82
94
53
55
107
121
92
64
126
83
141
82
91
73
39
63
68
77
68
81
46
147
87
96
107
114
83
81
79
57
104
85
78
138
92
93
48
118
88
97
57
72
108
80
83
41
136
109
92
83
78
81
56
44
86
87
99
96
46
49
62
66
91
60
67
78
125
89
41
145
99
55
95
69
72
98
73
56
69
110
56
84
97
93
113
102
88
61
99
68
96
69
77
67
179
96
69
30
140
155
50
54
68
66
73
110
44
63
85
106
105
62
59
101
63
67
52
75
82
46
59
79
67
60
40
83
48
73
105
54
42
124
82
67
68
91
70
79
95
70
83
38
32
54
129
76
87
86
74
100
87
118
66
56
39
43
73
64
90
75
73
62
93
37
36
69
74
68
72
62
95
97
91
135
87
98
52
87
47
85
113
108
68
54
104
50
53
72
75
78
68
47
79
61
48
68
97
74
37
118
74
85
113
83
95
49
104
105
139
63
28
115
87
54
50
71
93
97
61
80
31
69
105
81
72
47
74
57
87
86
61
60
41
66
140
79
112
109
87
69
60
102
122
43
48
67
74
52
62
48
156
81
70
31
48
83
62
134
95
61
46
37
80
147
58
70
98
81
55
120
100
90
136
89
70
67
85
68
88
91
64
83
102
79
66
98
34
81
97
77
104
62
109
90
121
95
59
79
114
44
80
76
52
74
87
59
136
130
56
84
76
111
72
101
56
65
130
66
67
71
40
104
168
58
70
121
47
91
55
92
86
68
79
90
68
85
62
96
51
49
150
128
71
77
80
71
53
22
76
55
61
63
83
120
74
119
36
85
54
94
73
61
129
96
83
44
118
33
76
53
77
101
51
55
77
98
94
65
63
124
52
60
63
109
37
65
61
126
99
58
73
58
66
43
160
61
63
62
100
63
119
56
64
81
86
49
95
90
68
86
64
118
60
113
47
49
66
82
70
100
56
77
84
41
94
73
99
145
97
81
57
50
69
109
115
51
134
56
102
149
149
98
122
71
87
114
56
58
99
74
111
64
59
72
86
45
93
129
78
59
67
47
74
113
76
65
74
102
75
92
56
48
63
49
88
66
78
64
72
146
74
110
68
71
52
117
98
42
77
104
48
122
88
90
114
58
32
129
84
47
45
53
55
99
125
53
77
101
54
76
90
90
78
51
30
81
90
68
62
45
69
61
46
82
135
61
82
44
90
71
58
86
57
75
92
118
77
104
71
83
101
110
67
92
74
53
29
115
57
84
93
74
44
63
31
83
60
95
85
129
96
62
86
82
105
103
81
113
97
90
43
89
96
61
116
52
66
75
101
88
86
118
153
62
51
64
90
100
61
99
89
50
67
105
72
43
45
91
90
95
98
69
115
31
61
98
41
98
59
71
96
50
45
100
62
97
82
106
58
59
93
73
83
41
108
108
109
98
70
44
105
63
46
85
125
90
64
95
67
87
95
69
99
118
82
129
101
93
54
76
94
68
97
94
45
90
112
82
51
48
137
111
54
67
100
46
38
99
140
96
47
115
91
81
57
101
81
87
100
58
80
66
165
22
42
67
56
97
36
37
131
82
63
78
37
67
61
84
99
102
84
83
96
82
83
126
117
73
92
108
73
103
60
88
86
49
73
97
58
57
69
55
39
71
103
87
54
52
66
44
86
66
69
181
75
77
81
74
56
96
107
97
68
70
87
88
82
100
43
34
55
72
75
95
108
61
53
70
70
67
50
64
131
95
56
69
86
103
53
90
104
44
98
59
74
127
104
86
130
62
113
52
81
97
67
61
53
51
85
55
83
88
118
84
59
61
58
64
84
92
82
72
96
34
23
38
109
53
88
66
62
73
50
71
70
69
94
143
74
70
107
62
89
76
40
59
64
40
82
101
88
60
102
52
106
82
42
64
67
91
90
74
61
91
97
85
40
164
44
109
47
74
67
68
81
113
61
84
79
44
122
72
96
39
145
103
78
57
82
36
53
63
76
84
63
112
62
51
39
108
103
55
53
114
101
26
94
37
64
47
92
39
88
58
97
143
101
65
74
78
67
67
106
41
69
93
58
94
35
68
96
60
50
121
100
41
91
79
88
131
79
53
62
93
71
50
68
75
75
139
130
49
43
57
105
85
99
68
62
79
63
62
155
80
52
106
74
48
39
103
71
71
94
84
58
75
105
63
85
84
85
63
73
64
82
111
66
85
153
86
101
85
64
77
76
48
87
83
73
128
59
79
65
99
69
89
72
65
112
102
40
44
92
85
66
88
101
67
78
146
65
62
70
39
64
108
54
55
45
115
114
93
107
79
97
40
71
60
97
50
106
78
102
91
69
82
101
79
99
125
51
53
79
85
37
135
94
47
62
34
36
24
88
73
87
74
63
105
168
99
65
92
76
107
95
69
43
78
96
89
59
75
63
52
61
72
91
99
78
257
62
120
85
62
68
67
71
89
70
94
58
51
79
79
53
72
41
81
76
120
52
70
67
51
75
97
79
88
99
66
73
69
142
66
68
53
69
82
78
149
95
89
100
29
64
100
48
65
86
96
109
120
63
101
70
115
61
69
62
72
65
86
59
76
75
104
67
89
74
69
62
60
70
77
49
75
85
79
81
74
73
86
84
64
92
54
37
63
53
60
98
29
89
74
68
102
82
80
68
86
79
164
68
83
51
80
46
103
51
65
76
48
57
122
76
98
50
104
94
62
50
94
86
99
52
88
110
93
98
92
96
70
125
40
57
62
100
80
91
123
120
44
43
52
85
88
70
71
45
26
37
94
91
64
91
85
92
90
102
86
79
118
121
63
37
92
60
76
103
82
80
80
37
59
41
37
61
63
74
66
78
103
112
74
71
77
78
88
63
66
76
32
78
54
65
95
119
115
44
106
115
88
95
49
103
71
92
55
55
50
67
85
58
69
87
71
59
114
119
73
106
93
53
99
79
104
101
64
128
84
88
87
114
77
58
82
94
81
89
75
44
93
94
128
130
57
78
94
52
72
123
97
87
64
78
84
67
72
66
96
109
54
94
50
95
90
84
77
82
84
102
65
81
151
75
36
69
87
98
81
51
35
124
99
71
75
74
67
98
68
71
51
62
91
41
47
62
60
45
45
64
67
66
91
39
63
58
60
88
51
65
119
65
33
86
85
134
50
98
58
111
107
66
122
91
45
82
73
107
115
95
93
96
118
44
117
53
56
74
86
89
83
67
71
85
78
78
92
99
77
62
89
86
75
49
96
31
80
74
93
73
91
112
100
69
55
100
100
103
104
138
62
156
93
45
45
56
58
46
47
89
46
65
97
88
77
39
91
103
78
42
105
52
64
89
114
151
93
74
55
57
54
67
67
44
99
112
141
55
71
61
71
132
60
74
37
100
100
76
57
82
83
119
104
114
43
103
77
74
117
74
26
52
84
75
85
80
78
56
76
66
123
61
60
85
59
65
29
75
61
89
98
72
61
84
56
58
110
107
55
84
86
73
79
70
102
132
50
168
98
62
101
54
36
89
76
48
97
50
91
50
55
47
123
56
102
83
101
91
64
52
71
98
107
122
103
86
109
55
75
54
49
81
84
116
53
85
91
79
69
68
88
69
101
41
67
139
93
52
38
55
111
83
65
86
92
101
108
81
73
80
78
90
61
56
84
97
55
45
45
71
57
73
106
59
58
129
196
72
75
82
76
86
75
96
75
113
92
114
112
75
53
84
74
48
67
130
57
69
63
42
73
84
132
58
46
82
90
94
103
34
52
68
107
62
84
94
76
58
88
78
73
57
42
66
104
108
79
53
61
72
96
98
64
118
70
70
104
38
65
67
37
90
143
68
59
84
70
63
50
52
94
98
69
92
40
59
70
76
54
59
82
64
51
44
92
71
82
115
94
106
77
104
42
54
65
115
68
100
53
82
80
48
85
125
81
64
85
98
75
114
59
87
80
117
86
44
78
74
80
72
132
97
123
130
106
60
87
78
107
39
63
58
86
165
47
137
75
67
76
73
65
93
46
94
52
83
74
69
108
123
84
76
70
118
75
69
56
65
101
69
68
57
71
111
69
61
48
111
37
92
82
45
92
91
80
76
44
78
100
66
67
71
111
43
63
115
94
30
92
46
44
67
111
77
64
83
81
45
97
50
50
85
62
73
92
76
99
106
72
58
93
57
78
33
60
91
118
122
76
109
63
73
113
76
86
73
108
62
50
99
54
106
68
65
108
91
113
114
118
67
48
76
75
51
57
89
100
106
49
72
88
70
42
72
65
80
55
91
127
35
115
62
57
79
66
68
85
113
116
70
40
81
152
87
66
43
67
65
84
42
64
62
87
93
92
101
115
88
85
150
47
87
87
70
86
74
103
50
55
125
93
66
92
88
87
64
106
72
83
60
66
89
103
63
62
65
96
74
51
65
73
86
57
68
55
54
60
92
124
44
79
66
45
50
81
78
64
115
58
56
83
86
69
122
104
56
77
75
86
79
64
53
81
124
74
78
68
41
97
118
95
104
74
43
74
90
111
101
63
59
61
55
97
121
118
78
90
55
70
45
60
75
86
85
83
77
47
121
40
58
92
49
93
152
110
94
42
89
108
87
83
81
54
78
91
67
105
82
109
91
46
137
50
109
56
56
88
65
103
63
64
88
45
51
101
111
62
94
111
93
75
98
43
115
59
119
62
51
69
126
60
63
139
83
108
74
86
47
73
84
48
45
83
75
93
99
62
102
83
120
37
77
72
53
64
61
113
55
45
43
84
89
56
126
64
98
120
105
107
113
89
67
77
55
107
72
85
140
74
101
148
77
45
55
70
69
83
101
59
40
60
92
45
153
70
36
79
73
119
54
33
81
72
97
113
51
74
86
139
69
75
96
35
98
62
119
100
76
106
70
81
73
90
87
34
75
59
58
134
91
66
154
108
105
80
46
77
103
101
115
114
65
69
59
93
54
68
95
55
39
75
57
90
68
67
44
126
107
38
77
32
61
72
72
68
72
68
44
81
64
72
53
79
92
63
83
94
44
46
73
51
65
85
92
85
70
102
62
75
49
96
80
127
85
92
81
56
78
66
34
72
46
43
48
118
49
101
52
72
81
51
48
77
88
71
58
91
71
47
92
73
78
82
70
135
98
70
70
74
131
42
56
83
97
48
81
79
72
118
59
48
52
71
80
120
118
51
66
70
98
79
98
85
69
71
64
83
93
42
81
143
73
65
87
102
132
100
77
76
62
139
130
111
55
61
130
87
95
130
125
84
41
57
67
62
67
119
63
60
74
47
82
86
53
109
71
42
74
61
73
59
91
53
63
55
82
103
66
87
69
56
72
39
103
88
51
72
107
27
60
69
63
103
38
59
54
56
118
83
59
59
61
93
42
72
77
60
53
90
93
90
81
75
42
66
83
81
134
75
67
137
76
85
90
62
78
55
97
86
96
85
79
95
50
94
118
45
44
58
67
97
109
72
46
143
61
101
61
64
91
88
56
98
90
99
115
95
188
106
93
82
66
64
70
54
37
102
100
176
88
109
42
63
62
44
71
102
88
76
92
71
101
70
98
36
165
50
79
41
43
43
121
82
103
43
62
84
74
69
37
90
141
75
51
97
39
87
87
82
60
66
53
65
78
57
47
30
65
81
98
32
94
73
55
74
81
77
90
166
102
91
52
66
56
28
94
74
115
103
117
87
61
109
96
42
117
85
58
77
36
97
131
55
29
90
52
114
77
107
69
40
64
116
80
106
118
117
44
99
85
96
129
98
119
53
103
109
138
61
91
76
58
77
99
38
87
89
74
49
58
77
68
99
98
101
70
61
110
41
130
61
155
73
89
41
64
47
113
37
40
46
63
58
109
58
93
163
44
44
92
70
52
130
63
60
68
69
96
86
93
69
72
43
102
108
35
60
79
93
37
147
83
60
103
55
81
79
52
86
108
54
61
82
81
98
96
105
86
136
81
89
89
47
86
118
67
66
80
65
64
92
52
79
73
59
102
80
75
63
36
78
84
58
80
56
109
56
58
54
77
132
73
115
70
55
34
57
93
77
85
101
70
143
77
94
82
73
44
66
48
95
74
53
59
73
108
65
61
47
82
41
71
87
85
102
111
30
62
66
45
52
59
66
75
80
93
50
59
75
91
92
101
87
62
56
105
84
65
113
48
82
93
45
107
92
49
69
96
61
53
82
138
95
64
68
78
67
89
83
124
63
67
55
84
73
80
80
80
74
60
68
63
97
37
88
76
41
45
49
48
63
107
128
94
41
85
73
63
64
90
61
51
58
60
87
70
38
72
68
70
60
86
57
84
111
46
58
73
106
43
90
124
79
87
98
115
72
116
67
106
87
62
96
55
53
82
80
65
106
102
77
58
83
65
117
116
46
74
87
87
89
76
95
70
68
100
49
99
26
89
81
74
42
124
57
49
137
105
73
93
70
67
96
94
60
88
98
77
74
100
54
93
72
96
104
99
58
75
30
94
132
76
89
74
90
74
143
53
172
122
50
45
85
70
87
70
82
124
74
65
78
105
103
63
70
82
69
29
63
88
69
77
92
49
113
103
72
82
39
83
105
111
34
58
59
102
100
93
61
116
28
93
141
117
114
90
90
68
66
45
84
74
139
70
85
54
58
51
59
82
84
73
96
96
90
68
62
95
92
103
86
91
89
29
118
45
109
59
77
70
115
82
78
76
80
40
90
98
74
56
115
43
93
123
129
55
117
47
60
96
85
109
71
50
63
120
86
75
73
71
63
88
67
41
83
66
143
73
65
81
75
91
73
52
131
92
61
65
71
119
80
62
55
109
84
63
55
53
40
90
49
57
88
84
76
57
52
91
99
63
55
116
70
79
43
67
96
85
56
68
87
100
41
67
65
121
73
55
56
58
79
111
93
98
95
36
52
112
87
67
54
72
66
77
82
94
73
76
87
86
62
76
139
113
48
85
118
72
73
50
84
46
50
53
43
39
79
89
101
91
58
88
58
87
65
98
115
106
108
82
82
64
101
65
72
112
69
61
115
70
85
96
53
81
81
102
73
81
47
75
114
63
91
94
125
64
103
69
60
86
114
102
102
85
128
97
49
69
59
62
101
100
88
69
38
94
74
54
86
71
58
75
100
54
76
103
103
61
60
72
67
134
94
38
69
68
89
33
123
107
63
56
100
55
114
78
51
63
115
86
76
46
164
68
70
67
40
70
86
123
92
48
62
56
103
80
42
31
55
55
58
122
63
80
79
65
57
80
86
89
114
56
97
77
120
88
60
64
103
79
60
92
73
64
94
58
109
47
75
83
64
87
75
62
103
83
62
137
85
104
59
112
86
59
112
105
79
87
32
79
78
80
78
101
98
75
85
80
28
39
32
141
105
57
76
45
24
108
39
69
55
88
89
78
36
74
55
94
31
104
88
101
70
97
65
73
81
86
85
72
41
68
76
77
57
76
68
63
62
50
65
91
44
30
91
59
82
63
83
59
129
53
69
53
89
182
91
77
54
173
61
61
98
62
81
84
133
76
49
86
72
68
43
84
67
115
85
53
68
136
64
90
136
64
47
78
62
41
94
89
78
89
51
139
82
42
52
83
73
41
55
40
71
54
49
86
85
49
67
97
65
52
50
75
55
77
92
61
69
64
130
72
89
106
98
150
58
98
62
52
90
73
69
65
99
48
80
82
88
101
70
55
76
132
108
86
75
115
86
60
95
72
79
107
86
80
48
57
63
53
104
61
92
82
77
143
53
81
54
99
58
53
81
96
118
45
103
103
67
96
108
73
57
103
125
98
54
98
59
39
44
56
65
89
68
86
51
83
69
60
46
90
58
61
63
115
84
82
104
71
68
44
91
34
94
85
75
84
33
144
60
71
124
103
50
110
88
124
48
47
80
56
30
108
109
61
88
67
43
84
73
118
78
88
81
108
104
90
40
87
63
85
106
147
44
152
67
105
88
83
47
84
50
106
97
112
69
79
72
71
113
63
51
99
70
98
103
38
110
107
112
58
100
88
95
109
46
63
79
43
60
96
93
94
50
78
57
95
82
69
64
53
92
109
165
42
67
63
64
97
61
31
65
47
93
67
84
102
64
79
74
36
85
94
124
131
52
103
31
34
81
70
96
85
65
64
72
46
91
77
72
75
60
112
96
97
61
48
94
112
95
87
75
114
61
85
41
64
105
40
93
79
74
86
75
93
79
68
75
65
71
129
48
69
86
91
85
93
62
58
46
72
73
44
91
62
71
102
75
124
134
75
119
46
54
98
69
75
94
145
109
96
109
87
104
75
78
91
68
54
62
77
68
77
43
72
74
76
76
63
86
99
52
82
66
102
90
89
141
38
89
68
126
77
64
76
32
123
69
94
83
61
83
65
112
92
173
51
78
82
63
137
101
85
58
53
72
84
149
77
33
91
86
60
78
73
50
76
49
66
103
121
82
90
71
95
130
152
69
64
146
78
90
99
62
78
96
144
75
34
58
114
116
70
72
73
46
53
57
89
82
73
159
36
117
46
46
81
62
69
96
97
61
68
145
128
62
50
62
86
99
91
55
98
109
59
102
172
64
97
65
83
53
121
52
48
78
78
106
56
82
79
70
69
165
124
98
77
48
121
94
47
53
44
78
83
85
46
91
58
93
71
69
143
80
89
55
65
31
41
76
58
119
99
133
36
75
130
107
141
47
89
81
100
56
111
93
46
96
46
37
96
72
95
65
50
83
75
101
75
55
77
56
90
80
48
64
55
100
72
106
53
124
29
30
95
63
105
97
65
71
53
58
70
83
72
32
160
82
63
75
62
56
76
62
80
37
115
111
90
59
84
61
89
61
28
79
40
78
75
58
65
105
110
57
51
63
45
106
57
65
50
60
100
112
42
95
56
101
126
76
86
100
77
71
65
65
54
69
82
71
72
70
89
82
40
73
77
80
86
63
106
85
121
67
110
59
115
72
113
63
60
102
45
73
55
42
139
136
59
49
71
57
94
73
44
70
34
37
112
76
83
117
94
77
105
96
131
74
32
133
86
85
145
81
82
78
51
41
95
141
112
84
49
73
84
59
72
69
71
74
102
72
68
51
67
71
58
75
56
87
59
74
82
107
58
61
57
141
63
74
88
69
76
107
64
75
83
69
48
90
90
97
70
93
81
75
172
59
90
66
62
63
99
84
84
68
77
78
108
75
75
81
57
60
65
109
64
106
96
96
63
35
94
99
72
88
80
89
51
79
77
77
49
78
74
69
73
61
151
94
47
61
69
90
66
68
45
47
103
50
57
53
104
57
122
77
90
105
81
96
98
84
123
93
73
46
64
43
92
104
58
83
55
67
125
87
50
75
98
50
84
78
92
81
122
112
56
37
52
38
114
80
51
79
67
109
100
45
61
53
63
70
79
124
95
34
59
123
66
84
48
36
88
86
82
70
33
103
102
67
86
88
61
59
136
88
68
72
121
51
79
74
111
71
127
59
81
91
80
85
74
82
96
65
80
112
84
59
87
68
80
104
72
66
139
91
46
91
44
91
130
115
68
92
84
53
50
74
61
93
46
88
49
83
74
101
46
109
79
57
50
75
56
66
82
98
81
69
75
72
89
79
52
99
66
70
134
93
63
86
79
97
71
82
49
69
65
26
97
87
62
83
80
88
80
43
61
90
116
44
55
55
49
55
62
63
71
105
70
87
101
51
63
62
65
61
89
83
54
66
44
72
71
72
55
60
115
33
112
58
69
115
54
86
75
62
72
101
201
90
82
59
44
86
100
94
68
88
87
90
156
83
45
45
107
72
74
51
96
94
67
66
95
75
68
65
97
83
84
53
38
84
92
54
82
52
94
58
115
60
107
91
134
55
128
94
59
111
72
94
87
94
94
108
132
56
50
86
103
58
84
100
101
67
59
90
96
97
103
81
56
62
50
88
53
98
134
93
96
75
111
86
108
72
104
65
39
59
100
86
109
132
84
78
96
117
114
89
107
100
66
96
75
69
61
73
52
66
106
62
101
104
63
94
42
83
100
42
89
42
142
65
108
70
58
62
43
156
59
87
67
91
60
71
44
74
50
63
40
41
93
128
32
43
80
50
97
159
97
125
69
116
59
78
80
27
102
60
56
95
57
54
42
82
48
109
38
49
77
53
111
43
50
126
79
46
93
67
53
63
50
60
47
69
70
90
67
52
84
85
59
56
42
77
81
54
126
79
47
88
108
78
82
47
60
96
64
94
59
106
84
42
62
93
32
61
63
58
40
46
131
85
64
113
79
64
47
36
27
49
65
82
64
78
37
122
90
76
90
52
70
50
87
107
88
62
113
90
119
108
74
56
58
69
108
40
107
77
55
46
98
33
93
74
57
58
75
64
74
91
106
139
66
105
82
58
33
40
93
82
68
105
64
72
102
89
42
65
102
93
86
63
65
79
101
71
84
59
123
99
96
103
51
66
57
112
65
80
116
61
114
66
71
83
57
113
51
54
81
92
54
73
73
47
98
85
77
123
39
136
67
55
70
74
122
95
88
71
69
94
75
81
72
105
75
79
43
94
77
120
74
45
51
50
79
65
41
40
47
67
41
79
106
87
52
72
78
56
115
86
82
100
88
68
73
75
31
116
41
60
93
86
109
167
94
57
82
117
71
102
96
52
121
51
55
140
61
67
130
82
110
67
85
53
98
64
91
62
109
81
67
77
69
64
98
87
51
85
75
88
89
83
94
81
87
39
96
78
123
56
91
76
67
120
92
103
72
79
58
91
83
53
113
79
115
67
115
74
48
66
72
50
71
78
52
63
106
84
109
95
85
97
39
81
45
86
102
129
47
80
98
90
72
42
132
89
94
49
100
62
88
53
40
56
77
107
33
87
137
49
86
87
53
80
89
87
79
82
43
93
46
120
43
28
109
60
42
87
66
85
100
79
113
63
136
101
77
82
54
100
149
46
67
48
90
86
55
73
81
39
55
47
69
50
85
67
56
43
94
75
98
117
128
54
30
64
83
53
85
74
53
104
54
86
85
94
67
91
101
61
60
92
74
80
73
75
83
90
120
86
57
70
88
26
76
75
75
78
94
98
47
92
125
76
72
64
113
72
45
87
102
86
48
36
89
70
51
72
79
98
49
64
79
53
55
90
68
71
82
61
61
76
75
73
64
38
151
91
69
76
68
44
94
83
120
86
98
73
97
52
70
65
114
75
58
78
76
49
42
66
99
87
83
112
69
58
63
95
61
93
60
66
95
61
114
85
87
41
53
74
89
49
59
97
69
88
53
93
101
65
68
114
76
98
60
76
81
42
99
53
83
98
71
96
84
66
100
82
47
68
45
46
59
79
57
33
102
91
90
84
31
88
111
100
61
71
67
87
84
121
96
60
112
65
66
60
102
68
60
52
116
163
104
38
34
59
72
99
42
122
112
81
38
117
82
86
105
80
51
61
65
91
50
74
107
60
117
87
95
55
83
87
88
39
86
45
111
106
70
96
56
105
137
177
58
43
100
67
76
77
98
87
90
75
84
86
116
71
92
98
72
56
80
97
80
83
92
38
112
44
48
112
79
90
68
95
105
34
79
72
110
90
66
98
63
85
89
59
96
42
69
95
68
116
48
51
71
63
76
47
60
65
83
117
95
92
48
74
79
49
61
41
126
52
85
76
37
59
67
83
50
62
114
151
93
79
69
96
73
72
75
100
68
122
83
49
81
45
74
78
164
99
58
53
63
85
118
64
55
54
42
48
113
46
52
55
47
107
61
72
51
89
67
99
65
67
126
113
90
27
78
42
65
118
83
57
88
103
90
96
68
101
64
103
64
78
136
84
46
93
67
59
68
92
44
111
94
83
54
48
59
52
67
72
62
102
114
78
84
89
117
72
91
39
56
118
72
99
78
63
49
111
56
53
153
53
69
59
40
57
69
56
33
115
95
112
70
120
52
33
48
53
45
78
86
72
45
87
79
154
36
61
90
100
46
73
77
60
114
115
37
58
72
97
64
72
76
49
49
86
74
106
104
76
83
105
106
30
88
99
90
80
113
75
62
67
82
47
42
58
129
62
108
104
51
51
117
105
73
78
75
44
98
76
70
95
120
108
35
81
75
65
52
73
78
74
77
56
92
88
80
96
71
71
114
76
116
106
60
83
93
52
49
80
135
88
45
75
96
158
74
78
42
90
65
54
42
57
85
80
64
116
68
128
81
62
101
72
66
75
109
46
93
53
70
97
105
47
98
74
63
109
87
73
63
43
119
42
91
102
54
81
51
81
68
61
56
29
50
63
130
73
109
60
85
110
84
100
30
99
49
80
70
119
64
99
89
106
88
90
48
96
52
48
59
107
62
66
68
61
62
67
31
59
73
76
55
89
98
34
88
60
108
60
91
47
90
51
112
46
68
94
127
42
59
66
50
57
108
76
99
52
60
120
81
50
93
58
91
117
61
70
78
172
88
51
79
61
74
89
84
101
52
59
88
95
54
106
60
78
86
72
60
70
54
76
50
62
85
46
75
135
65
47
72
102
107
75
83
64
24
72
57
50
69
97
84
91
102
89
61
64
44
118
84
97
78
73
70
40
69
169
105
47
83
63
116
89
36
94
109
109
47
111
33
81
62
75
94
79
74
69
86
113
107
88
129
90
129
90
105
117
47
85
28
70
46
145
48
84
88
107
50
55
77
132
34
145
59
65
54
41
69
110
61
120
50
59
95
114
107
110
80
91
72
91
100
126
90
83
74
72
92
55
85
56
68
61
95
62
68
98
71
104
76
97
102
113
52
71
53
79
51
57
77
73
71
54
82
85
49
95
48
103
74
90
36
89
41
59
106
58
94
137
94
119
83
94
57
43
75
76
110
36
73
75
48
84
73
62
67
100
78
64
110
39
68
71
69
57
84
68
46
82
87
53
61
39
129
46
45
73
61
104
101
68
77
73
67
62
76
47
84
61
92
55
80
140
48
84
95
110
48
101
108
99
82
45
69
65
70
53
80
92
82
89
63
80
86
102
99
62
111
156
100
138
66
77
134
94
48
81
65
32
92
135
118
84
32
71
112
66
94
60
35
59
83
106
58
127
91
67
65
104
72
80
67
72
26
58
65
47
94
77
50
72
122
44
46
34
129
48
112
40
98
112
84
63
70
43
44
100
37
58
76
54
50
69
63
92
77
116
59
49
124
53
94
67
60
140
43
51
62
39
91
92
73
88
69
62
100
68
44
61
66
73
83
73
74
72
64
67
100
59
124
94
90
100
78
96
96
43
127
94
103
63
47
151
145
72
137
83
87
60
39
55
53
48
24
84
78
66
106
143
24
78
64
88
43
103
89
151
110
49
84
79
50
90
98
82
88
58
77
83
59
93
98
78
51
88
91
107
84
94
61
67
69
89
87
79
96
85
92
86
92
77
56
58
39
61
70
94
139
88
71
94
94
97
74
88
124
80
61
69
67
96
57
89
97
55
102
40
52
114
51
52
112
54
75
52
86
60
92
73
76
54
84
93
46
69
69
66
111
75
174
86
68
75
45
120
61
82
83
89
44
68
55
69
54
97
118
74
112
58
42
74
70
32
122
103
102
104
74
78
54
79
51
65
174
93
47
110
115
210
62
104
89
117
87
72
79
96
67
71
74
66
94
152
75
63
88
73
105
49
51
86
44
88
120
91
97
115
69
65
76
100
94
68
118
49
82
41
72
82
74
64
61
64
51
91
97
52
88
77
45
55
56
92
72
120
92
65
85
123
105
41
57
38
53
69
74
91
92
39
69
91
77
93
93
56
54
126
90
52
49
58
50
93
37
54
70
99
72
109
99
70
70
65
61
52
97
107
47
44
184
123
72
52
73
56
71
46
53
79
118
92
100
86
144
95
74
65
70
49
51
109
58
61
88
102
72
106
67
116
46
76
79
59
66
71
81
56
156
68
104
97
57
84
52
43
51
65
69
100
53
85
56
106
128
98
29
41
103
112
56
84
95
83
95
108
179
60
92
49
58
146
121
53
73
88
48
92
82
66
51
127
98
93
39
60
133
56
137
84
78
55
79
90
66
82
125
39
62
50
109
108
89
48
127
56
64
70
62
77
62
72
74
70
94
91
51
66
71
77
57
37
75
82
88
87
102
63
63
71
97
107
49
58
94
69
99
93
117
127
97
76
49
83
92
87
105
89
75
71
77
87
115
100
73
97
78
68
82
92
74
145
90
67
51
147
106
89
75
39
53
61
74
53
58
72
56
111
49
73
68
88
88
67
59
129
44
73
66
63
48
71
70
101
72
121
66
87
61
42
40
61
81
42
40
85
42
53
57
40
95
58
41
117
111
67
51
110
91
101
95
113
74
74
76
37
43
64
94
67
78
70
62
49
73
88
69
61
108
55
94
81
80
77
86
98
121
81
60
65
91
77
64
70
85
68
132
28
112
72
95
54
123
55
90
71
63
51
63
67
152
114
74
46
59
102
47
142
62
45
104
66
106
111
87
113
52
117
54
86
29
109
88
109
69
42
60
61
84
54
60
32
46
57
106
73
75
76
110
111
52
104
51
23
54
80
71
28
72
79
63
76
88
67
82
60
61
128
42
67
94
79
71
68
113
29
86
100
92
68
27
83
116
114
76
68
58
119
89
84
85
80
110
72
58
73
91
54
80
92
87
87
58
86
79
69
104
88
88
99
71
76
97
155
41
55
61
58
96
65
68
33
98
98
68
86
56
67
127
83
85
57
57
145
69
39
46
107
121
51
55
89
107
43
53
107
55
46
49
104
65
85
150
55
76
52
65
93
94
66
69
83
76
84
63
71
92
59
79
101
59
82
47
106
151
92
48
54
88
73
92
117
67
65
34
77
69
81
68
140
58
80
109
63
65
67
30
76
45
71
66
56
88
56
81
96
76
72
115
70
97
64
78
58
49
94
74
55
87
69
81
78
34
151
115
99
79
80
105
48
73
59
63
100
103
48
70
117
79
48
65
88
108
91
109
78
80
77
59
75
134
77
65
112
52
112
50
40
68
65
100
140
42
79
55
64
47
55
46
71
76
78
101
71
54
135
54
72
119
63
38
106
62
104
45
116
116
60
70
42
63
91
47
86
78
54
70
36
75
80
59
72
43
57
88
50
80
46
29
111
165
98
59
71
81
81
60
103
65
71
61
66
85
86
67
73
99
72
77
104
69
106
57
64
83
82
100
80
93
46
120
60
53
49
95
49
104
86
94
57
51
26
76
52
46
60
47
47
134
76
89
59
98
71
75
51
100
58
92
92
45
87
87
68
67
82
66
93
98
58
67
144
58
114
95
42
83
61
70
71
72
60
81
43
81
64
90
87
66
63
78
48
71
77
86
52
61
112
71
71
65
84
42
36
34
86
55
54
74
80
49
59
65
74
98
86
63
91
80
56
99
74
70
119
74
70
89
73
99
26
67
59
88
67
96
117
106
76
38
73
74
80
58
55
87
72
87
123
79
31
60
44
61
86
47
126
77
77
104
132
61
53
48
86
127
67
73
80
94
104
106
55
77
92
61
45
71
42
88
65
100
66
80
100
89
92
60
88
72
109
54
133
74
29
51
69
75
94
44
60
78
111
48
61
74
74
62
61
91
77
86
89
102
107
80
80
109
45
77
66
76
36
69
56
78
38
122
76
37
94
82
47
47
65
49
64
53
84
59
72
69
75
102
64
93
49
90
47
101
68
46
88
92
91
75
70
51
67
68
98
60
77
69
78
57
53
43
33
135
126
57
85
41
88
40
150
89
156
50
122
46
44
36
47
55
106
105
88
48
113
97
87
85
67
48
77
63
62
142
72
51
45
77
87
81
72
80
78
118
61
70
96
74
97
27
48
76
51
50
142
62
99
59
91
67
103
61
32
68
67
71
87
80
79
63
71
81
66
60
86
44
76
46
73
75
119
64
51
88
129
46
44
28
59
110
114
73
91
75
68
42
79
49
63
65
72
125
88
78
56
77
79
92
99
93
122
48
63
56
79
100
101
80
96
49
74
61
78
83
40
77
99
66
84
71
72
95
105
113
62
101
51
122
41
25
110
44
67
67
48
69
28
78
78
77
75
55
129
36
132
43
85
70
93
63
99
82
60
76
70
74
80
78
104
134
73
48
96
57
71
52
72
121
135
67
91
108
66
46
77
78
62
75
60
107
78
109
56
108
85
56
96
58
59
81
24
77
97
100
71
92
88
85
39
107
137
43
103
91
69
43
82
106
77
78
64
63
67
94
120
84
63
60
79
88
72
56
64
67
131
63
86
48
37
48
66
100
80
92
133
72
70
56
66
66
109
68
65
110
89
57
73
149
84
103
48
33
51
60
91
59
99
76
98
68
68
37
72
86
55
47
82
47
40
77
69
46
44
91
101
84
82
65
101
60
52
126
91
52
62
50
29
57
87
54
78
76
66
30
113
59
44
81
83
64
78
95
94
72
60
66
62
84
67
91
91
86
75
87
129
90
41
55
71
99
73
60
69
59
93
85
57
137
85
68
53
58
76
75
97
66
123
104
105
126
84
101
122
78
62
75
133
74
63
128
140
54
66
94
54
40
94
75
92
83
60
103
86
158
87
58
106
121
60
101
77
63
82
86
63
32
99
69
62
75
73
103
94
71
114
48
63
108
129
105
75
98
103
82
51
76
83
64
110
110
98
61
45
95
51
68
68
75
43
82
57
63
90
115
48
56
61
64
58
74
61
60
49
60
80
79
101
49
54
93
109
48
96
74
71
93
55
82
97
65
70
61
55
53
54
58
84
31
52
90
42
61
112
109
74
112
55
95
82
73
82
84
30
106
46
81
77
115
105
82
88
45
111
86
82
69
109
174
70
117
64
72
76
78
90
89
75
91
70
58
51
84
54
111
83
63
123
67
87
84
48
60
79
60
93
73
103
38
57
88
66
52
68
95
88
72
87
59
70
56
116
34
54
111
60
82
102
123
101
60
113
52
62
30
37
108
120
52
47
71
46
65
82
76
50
87
94
65
85
79
71
60
115
120
74
49
146
119
83
50
60
66
67
116
89
112
66
86
53
89
55
89
40
95
104
84
85
90
71
108
63
91
65
91
51
67
50
133
51
74
81
80
89
108
66
81
63
62
103
87
87
51
70
79
65
80
63
61
84
98
106
52
66
86
114
66
65
30
70
113
40
92
108
109
84
108
101
83
123
87
132
60
72
73
32
95
48
45
65
79
90
54
160
94
54
98
64
88
59
107
93
105
78
81
60
50
66
51
83
66
115
80
73
59
108
71
33
103
124
88
60
99
98
79
123
101
76
96
91
84
52
70
66
114
102
71
63
62
85
99
81
116
50
78
56
108
54
100
82
132
75
94
87
49
93
75
109
95
52
71
94
52
74
88
69
61
97
78
85
75
82
128
46
60
74
58
132
88
54
53
88
81
64
66
64
94
88
147
99
76
42
78
105
134
89
57
80
52
116
80
38
78
86
80
77
74
34
81
69
55
115
48
124
68
73
46
72
69
73
68
82
64
143
56
76
94
90
89
89
118
60
48
102
116
46
68
70
64
84
152
98
75
80
61
92
42
123
101
61
55
74
122
61
121
87
49
54
95
86
31
89
48
70
73
99
59
69
67
114
96
116
33
83
107
75
80
110
60
150
114
72
127
85
113
98
57
81
55
71
103
33
73
113
58
71
83
164
50
60
142
112
35
76
39
104
70
100
84
80
107
47
76
66
98
52
92
53
86
55
82
68
89
41
84
69
69
80
187
60
158
120
67
67
50
84
51
130
88
116
31
85
66
90
96
107
70
40
71
139
73
76
85
65
64
57
80
85
69
97
92
63
112
47
120
34
111
63
87
96
69
69
55
72
93
61
83
60
179
73
118
85
81
46
119
138
95
115
84
30
56
62
64
90
99
110
40
55
72
82
63
59
115
58
81
77
85
48
51
50
49
65
116
91
53
106
65
53
45
93
109
78
78
96
106
97
94
52
68
42
77
62
82
60
63
103
74
53
99
73
39
76
80
85
62
72
54
76
70
117
96
65
79
65
86
79
71
48
50
86
66
95
48
111
111
49
82
78
71
74
125
72
104
98
87
65
102
81
95
52
117
55
45
63
91
112
136
124
91
89
49
37
101
65
84
86
53
124
40
93
84
50
73
75
93
82
107
73
55
85
55
121
56
95
52
98
93
95
68
41
70
102
107
87
81
38
63
80
92
43
56
53
100
94
81
72
58
46
84
66
77
70
66
115
33
50
48
156
87
106
70
89
78
66
99
59
53
104
78
86
59
99
93
51
48
92
67
77
94
59
79
63
90
43
101
93
76
69
52
99
68
55
81
65
135
101
43
100
71
77
117
60
90
83
86
40
75
90
92
105
68
27
102
38
108
137
103
100
28
70
81
88
60
100
98
79
115
63
32
44
61
78
73
93
111
42
104
125
96
73
66
65
23
87
68
95
68
74
106
53
65
79
64
88
71
52
64
48
62
50
27
102
96
78
95
64
72
65
104
101
116
76
65
60
51
58
95
81
60
59
32
76
115
90
117
58
63
43
90
65
103
71
65
136
40
68
90
45
82
152
63
58
29
53
100
69
162
73
99
55
101
84
139
67
62
64
49
62
57
84
99
104
111
83
83
51
61
80
66
59
82
65
120
129
102
82
73
96
20
99
47
104
69
49
99
53
46
85
97
47
87
103
54
34
66
80
47
72
58
80
85
98
114
101
102
62
54
77
80
53
90
64
109
63
75
109
58
90
66
94
100
35
58
79
77
106
61
86
51
57
53
103
68
84
77
63
94
77
61
92
93
85
82
95
83
55
81
51
103
88
43
78
63
61
74
85
45
28
54
32
74
74
105
63
80
70
122
104
66
75
110
64
73
67
79
98
58
73
46
68
55
46
72
80
101
102
76
57
75
55
52
110
101
82
81
111
53
107
84
68
70
139
87
47
108
39
59
64
75
72
98
53
82
80
94
112
44
101
66
116
52
109
103
51
96
134
90
65
65
68
63
109
82
97
55
69
88
76
60
113
89
77
83
66
85
132
83
73
91
85
94
69
39
123
69
101
71
76
98
63
70
58
106
81
61
60
86
59
58
87
55
76
57
76
114
106
76
74
101
57
87
24
48
65
104
59
58
61
60
115
60
87
42
128
85
125
97
70
78
116
80
32
71
39
89
85
76
46
88
75
72
80
54
104
90
92
50
102
35
55
58
61
128
59
131
57
45
58
55
63
91
67
69
71
77
90
91
91
85
60
83
103
78
97
72
51
122
54
50
77
103
77
70
65
54
39
33
104
117
64
55
76
85
80
50
83
84
101
82
51
132
86
92
71
112
94
78
84
49
87
58
72
104
52
76
93
71
60
47
80
55
70
101
110
82
48
104
89
68
67
84
71
94
82
108
103
101
130
69
89
65
64
62
97
62
74
46
51
94
123
62
84
64
146
40
64
82
98
93
67
68
47
47
78
28
62
79
50
73
28
105
63
56
99
99
58
48
38
105
39
88
67
64
109
73
47
86
55
96
62
61
158
92
61
118
69
58
44
61
59
57
116
84
56
109
108
101
77
127
74
94
63
79
73
68
83
85
116
60
70
67
64
57
57
140
106
54
50
78
70
63
114
59
83
89
34
81
132
97
118
138
112
116
90
125
67
52
63
86
86
77
69
77
39
90
89
99
79
91
69
101
55
56
39
44
24
65
63
40
55
57
53
89
115
97
82
61
114
49
72
51
73
41
92
45
47
52
75
66
96
56
42
52
95
111
139
54
62
60
78
78
78
67
82
87
97
81
67
48
76
84
75
88
76
128
89
84
94
155
50
65
54
108
90
121
74
122
60
130
70
85
56
88
89
50
122
87
70
49
53
49
103
120
114
118
79
120
90
82
73
74
81
65
105
62
35
64
71
58
109
70
54
52
84
115
102
79
44
56
41
62
124
91
73
87
84
56
79
138
49
66
69
84
56
65
55
77
78
84
94
70
56
110
70
85
54
113
108
113
57
77
85
56
77
66
73
99
107
136
75
249
46
42
115
104
85
81
49
69
75
99
106
118
42
77
95
64
64
57
88
37
54
53
83
93
34
79
51
80
71
70
61
54
67
76
69
106
83
110
42
98
91
81
69
71
52
69
77
76
55
118
115
94
89
101
60
98
75
87
106
78
85
57
92
72
50
32
66
89
60
70
113
142
74
74
54
48
77
66
64
52
33
59
32
55
44
74
176
37
82
60
63
133
73
62
67
76
88
104
33
89
112
75
70
75
76
54
99
56
65
102
56
91
69
76
102
52
106
75
90
80
70
41
80
57
60
59
103
66
83
67
97
63
53
90
67
57
54
76
51
91
59
72
80
60
77
91
36
58
98
107
79
53
56
62
121
55
98
57
102
122
58
56
70
67
86
53
106
58
68
62
70
65
53
65
67
87
112
74
79
56
100
80
144
76
78
48
75
58
81
105
72
100
61
55
55
67
48
65
115
65
74
81
74
70
48
60
88
51
55
61
116
38
67
53
120
108
71
78
86
100
97
71
96
140
79
82
76
45
67
66
33
75
67
76
74
86
71
127
90
70
30
182
87
27
99
82
79
101
112
78
184
92
60
85
73
41
94
58
91
85
87
44
77
55
68
83
74
37
111
105
65
66
98
98
82
115
82
66
110
74
75
74
111
129
57
68
60
81
95
87
63
91
45
70
41
166
73
70
72
77
53
98
54
83
63
42
121
75
92
78
64
52
73
77
94
56
52
73
38
121
49
62
101
112
58
91
72
87
79
108
61
72
83
86
76
73
84
97
110
50
61
154
83
88
51
117
61
67
83
55
68
115
92
54
50
42
95
117
69
103
71
47
62
94
62
61
134
57
112
119
54
61
97
64
65
82
71
57
124
71
63
61
113
44
81
50
80
58
139
123
66
52
72
79
92
34
60
91
44
74
95
74
54
69
114
59
88
107
80
72
64
118
94
69
100
51
69
91
63
46
100
77
82
92
80
66
106
81
68
70
95
77
72
113
71
81
97
84
64
56
80
93
79
69
41
64
70
51
55
77
51
46
110
76
88
117
70
71
66
51
68
94
48
112
52
40
72
51
147
61
95
94
77
97
116
56
78
48
59
104
74
57
56
60
91
60
79
76
88
61
92
42
64
45
87
75
74
60
62
86
89
101
123
115
56
48
92
68
100
89
67
57
65
54
133
76
133
84
70
67
101
114
108
126
106
68
55
59
70
70
138
58
69
56
52
99
53
70
117
90
63
59
88
53
86
51
130
99
128
68
92
104
77
91
84
90
66
34
54
78
63
62
104
58
121
100
95
35
89
87
69
67
56
114
98
101
71
82
33
38
92
72
81
95
114
59
60
114
61
72
52
92
106
84
35
95
144
100
72
53
60
89
124
24
46
122
50
97
79
85
88
61
67
54
61
85
72
91
85
95
103
40
101
79
95
69
92
30
104
88
97
69
55
82
50
114
125
134
94
76
77
57
93
59
88
56
72
97
42
44
54
146
89
94
93
42
84
60
97
85
53
54
112
93
67
74
83
37
47
39
78
84
89
78
58
51
60
93
73
97
47
61
70
49
58
124
78
80
112
84
82
74
77
81
89
147
57
36
75
52
37
90
54
109
103
62
44
60
73
51
61
98
77
67
91
101
56
54
43
49
88
59
94
89
73
58
67
34
117
138
60
80
72
70
107
75
109
69
136
45
90
79
81
51
85
36
41
54
79
43
40
49
95
102
74
40
64
73
79
100
87
152
88
109
64
64
114
64
72
87
46
66
86
83
90
66
70
177
76
66
116
119
120
67
53
57
108
91
81
108
30
80
102
58
92
83
45
57
116
105
93
91
93
89
46
84
85
106
80
27
76
87
106
65
137
34
49
206
108
110
86
55
75
81
111
132
95
67
112
100
69
84
72
59
75
102
96
43
81
131
74
53
72
76
100
67
136
74
99
86
83
71
120
79
78
61
62
57
59
87
59
109
58
79
84
62
44
87
84
111
62
128
71
103
66
55
71
85
71
54
83
77
75
64
59
137
92
101
58
83
81
59
64
62
137
63
61
47
59
86
115
66
84
98
80
94
77
76
98
49
59
104
89
53
68
45
68
72
87
85
85
118
66
78
47
97
112
75
74
46
100
68
67
65
77
101
91
105
59
59
78
68
61
36
79
83
76
65
64
30
54
52
102
100
71
50
80
67
40
112
50
24
115
78
88
88
68
104
75
113
49
51
54
99
50
83
69
55
132
87
111
97
65
47
70
58
68
109
123
108
70
96
63
44
63
120
74
56
102
54
67
81
82
45
69
63
106
102
59
72
80
99
95
41
117
61
77
85
61
62
122
44
39
74
33
80
125
91
50
54
71
83
89
72
68
114
38
40
76
52
113
57
79
68
63
70
94
93
41
105
63
105
58
81
65
79
109
77
78
95
72
68
63
75
81
72
78
66
101
65
131
42
58
57
105
79
95
118
88
88
84
99
46
100
72
67
117
46
76
78
79
78
56
106
63
74
70
101
71
75
48
45
108
84
51
81
88
68
57
60
62
52
87
114
54
60
86
103
34
89
73
91
88
91
86
66
63
96
53
66
77
53
101
86
52
87
83
100
100
65
85
86
67
62
86
66
89
87
95
101
123
99
124
53
98
62
92
30
41
102
60
41
99
66
85
80
101
77
98
99
70
47
53
95
105
83
68
69
43
66
79
52
139
102
81
55
83
86
70
143
56
50
48
53
67
41
49
101
84
81
68
109
64
82
129
81
71
92
73
60
108
128
38
82
76
55
90
58
106
92
116
54
81
87
91
86
62
108
127
83
105
87
120
70
65
33
81
94
78
55
73
54
98
105
83
108
93
163
94
69
45
71
125
88
85
64
55
109
86
55
109
98
56
40
66
98
41
38
82
91
74
66
129
61
29
149
89
101
64
74
36
93
71
65
41
94
63
56
70
34
59
72
61
47
79
120
54
50
62
32
73
119
76
87
72
93
40
54
56
98
73
67
93
41
71
71
66
89
106
95
96
132
33
52
63
77
55
83
49
72
76
93
58
63
126
81
166
75
58
62
66
88
113
78
128
65
46
39
53
83
57
64
89
92
112
64
40
46
65
82
77
56
58
80
63
62
49
115
61
74
96
87
60
72
83
77
81
152
28
111
125
83
42
68
43
81
93
88
44
118
123
47
40
53
82
52
62
117
60
72
71
107
42
87
89
84
81
89
89
55
71
45
67
59
88
73
63
61
131
87
89
94
51
56
100
62
68
191
96
69
78
68
86
47
111
68
77
82
81
83
107
55
101
82
78
105
75
57
95
67
26
95
90
110
46
90
59
72
64
99
89
72
61
68
81
48
59
88
63
61
58
26
47
92
42
151
77
82
104
41
43
89
36
46
75
71
74
91
71
66
123
54
50
121
89
111
81
59
123
103
80
67
69
82
67
104
59
72
139
51
77
97
65
64
39
106
64
57
54
106
57
79
50
91
77
102
114
54
64
57
60
66
83
128
53
75
89
60
29
70
78
68
115
83
84
48
54
51
101
129
94
59
73
48
120
135
97
93
55
67
70
109
63
74
60
60
93
122
57
48
45
61
60
62
127
83
84
107
128
103
79
68
92
96
66
80
86
81
93
185
108
41
82
104
90
52
64
115
60
47
66
34
91
84
98
116
50
66
78
81
65
71
73
57
36
68
70
99
82
64
68
83
92
64
83
107
118
59
66
111
81
59
69
76
109
78
68
93
41
64
87
74
48
93
84
65
83
97
53
99
91
64
69
58
73
54
52
55
82
71
150
70
45
93
62
77
83
50
79
44
69
81
36
76
84
35
83
51
54
64
49
77
80
89
52
62
85
90
89
64
89
63
68
101
34
100
92
136
102
78
107
89
100
78
51
69
74
73
74
106
53
96
46
91
54
85
66
68
96
69
59
120
69
110
81
90
71
114
59
62
76
95
79
120
78
75
75
89
116
97
59
54
100
44
58
73
67
81
74
66
68
87
112
36
77
73
56
95
128
60
119
76
49
99
103
103
95
54
41
81
64
83
68
78
70
60
73
94
47
88
95
85
51
78
75
105
59
66
47
64
107
49
118
115
26
163
47
66
61
66
59
77
116
76
55
88
112
47
107
76
37
60
48
67
101
81
59
90
54
87
99
109
54
72
81
137
89
123
68
95
56
68
70
71
127
50
92
73
82
107
59
51
83
97
97
57
47
74
41
62
87
64
79
84
65
69
67
56
76
133
68
77
47
60
62
30
126
78
114
66
54
62
67
100
93
94
31
86
66
59
91
83
48
66
75
84
77
50
99
77
98
71
62
84
121
63
39
73
124
93
42
82
71
78
105
62
84
90
136
75
28
54
78
144
89
79
79
50
44
105
49
45
53
56
113
83
74
78
105
124
108
78
57
72
123
88
83
40
106
41
96
97
54
108
94
90
82
72
94
61
91
57
75
120
46
43
107
90
83
94
90
86
62
54
95
34
105
45
88
82
122
41
95
142
49
62
64
48
83
71
87
98
58
104
107
55
44
84
39
59
50
76
40
36
69
77
104
61
136
68
96
33
24
59
58
65
36
68
135
48
58
87
70
75
68
93
203
78
101
58
82
95
55
71
68
99
56
89
48
93
45
91
98
40
132
102
44
108
132
86
29
96
43
119
56
57
84
88
75
54
106
83
88
77
70
66
52
68
165
79
57
93
64
57
74
89
71
91
63
68
62
48
94
88
58
119
60
111
149
65
56
91
89
87
60
63
48
86
65
83
84
81
71
91
50
87
88
72
75
49
92
73
101
70
68
74
92
107
99
61
121
78
71
115
119
80
95
105
92
81
41
60
49
65
68
67
109
75
101
113
43
67
51
85
55
54
54
41
77
99
91
63
76
72
87
132
85
65
53
66
64
48
75
89
76
88
49
127
34
56
94
85
85
74
122
51
127
72
59
84
78
66
52
128
95
83
60
112
118
62
86
168
80
126
58
29
82
104
79
86
66
94
81
78
52
95
41
51
58
87
59
96
96
62
66
44
49
67
116
60
88
68
107
68
86
59
86
79
81
54
108
106
77
103
55
56
57
81
97
54
68
78
52
85
65
113
104
52
88
110
90
67
75
60
112
51
124
76
67
93
90
81
135
77
96
41
121
77
45
97
114
54
77
73
79
77
41
63
85
120
34
96
51
44
68
131
49
90
59
65
47
95
88
58
78
85
163
63
56
112
141
47
49
55
82
53
77
101
83
106
82
55
79
58
133
115
51
53
87
73
53
85
54
65
152
44
131
50
90
73
108
66
96
71
88
88
44
56
74
123
74
80
72
84
81
84
105
60
46
73
101
78
78
49
117
66
75
74
27
99
123
72
77
57
79
60
53
78
78
84
50
74
121
55
66
64
82
65
59
42
83
75
69
59
44
98
118
122
135
65
73
48
61
57
47
93
68
99
67
79
109
97
70
76
100
81
46
28
74
67
84
48
37
70
50
104
84
66
61
124
71
56
91
96
82
64
74
98
159
79
117
57
111
45
107
112
49
69
58
60
91
116
54
93
61
84
76
89
34
77
45
90
110
47
53
62
39
114
62
53
63
87
58
82
56
56
39
81
104
102
60
60
44
69
137
71
60
56
52
105
48
73
57
60
95
137
80
70
81
90
97
119
94
72
84
30
71
84
64
120
96
47
105
135
97
90
84
48
105
65
83
64
74
103
50
84
108
72
63
127
74
83
124
75
36
92
72
90
57
96
47
50
85
40
87
77
79
102
91
164
66
118
74
87
82
112
61
111
61
67
105
56
63
34
60
73
119
131
93
58
76
80
79
46
78
94
40
115
99
99
43
78
164
107
81
73
100
75
57
83
73
46
72
108
87
53
94
128
41
85
40
69
92
69
50
61
75
68
75
73
98
43
122
76
83
93
53
105
104
104
43
129
84
85
56
111
67
63
90
35
65
78
104
98
191
40
96
108
69
62
96
64
76
68
78
67
118
82
56
46
80
87
99
82
53
93
82
80
61
86
119
78
49
46
89
100
64
73
56
67
46
113
58
85
126
78
113
97
20
107
52
85
91
40
81
55
126
103
103
57
115
46
87
77
166
86
105
56
132
85
78
66
66
73
88
87
106
113
56
98
50
101
61
87
183
87
114
69
67
72
54
86
110
64
91
86
72
50
87
70
57
47
103
63
114
87
52
79
63
98
87
43
92
63
49
75
135
81
100
61
62
111
56
82
62
64
71
56
86
108
70
73
46
86
73
83
57
69
86
39
51
53
72
131
92
68
71
46
92
82
82
201
61
82
83
106
55
123
93
107
86
93
56
42
135
86
81
83
74
51
138
60
109
90
66
57
87
76
80
69
121
92
111
46
78
48
68
70
86
67
114
106
65
90
59
71
106
81
87
67
62
64
83
53
68
95
89
108
85
64
52
111
89
53
116
90
82
78
85
60
96
80
119
101
89
111
45
81
109
52
137
43
77
66
102
76
92
41
88
96
44
56
89
86
56
95
122
63
47
89
78
93
117
100
113
74
66
59
86
76
113
34
49
66
105
77
68
71
77
78
124
86
42
147
82
69
82
114
71
115
96
50
50
75
61
128
108
65
113
60
35
75
57
44
92
86
64
80
133
51
90
54
99
119
62
48
104
125
97
100
56
139
48
59
94
54
57
78
99
76
52
77
41
139
51
73
66
78
87
127
112
62
64
60
61
41
70
55
88
73
60
56
62
58
41
63
118
67
87
70
52
130
84
85
72
50
93
83
65
91
81
68
76
80
68
73
93
55
102
70
33
101
42
61
42
54
52
67
75
117
51
99
36
68
135
64
71
83
75
85
53
98
70
63
63
112
91
47
82
104
48
110
72
102
93
76
90
135
68
61
66
75
74
68
62
111
147
46
67
95
115
62
58
68
85
86
84
61
80
66
72
66
75
103
44
89
79
41
40
34
119
46
93
101
87
103
78
83
68
52
41
97
105
99
66
72
74
118
54
97
123
42
74
83
97
87
52
47
71
63
76
113
108
42
87
84
104
34
106
44
96
106
94
93
98
74
70
70
59
46
51
95
83
74
96
80
82
69
95
63
125
113
79
40
141
131
45
128
103
81
64
37
72
71
89
59
53
92
86
71
68
53
80
73
54
100
126
102
53
89
127
109
111
62
72
45
115
49
93
68
46
125
62
33
82
62
76
82
124
108
58
55
57
113
77
76
64
85
46
98
97
82
104
58
96
60
66
81
48
36
61
123
144
82
77
98
87
152
91
66
83
116
89
67
64
70
108
77
112
91
50
63
167
66
78
68
108
94
108
108
34
65
68
70
95
41
28
48
47
86
101
83
57
67
97
101
80
87
55
63
119
76
72
69
42
102
80
50
69
63
46
117
73
68
128
106
71
90
98
60
47
60
82
67
79
86
92
58
75
108
38
73
169
103
117
50
82
101
71
85
83
60
61
72
99
54
58
70
109
93
42
57
41
104
75
104
68
47
75
44
87
69
96
158
91
73
99
78
77
63
91
66
131
82
94
103
63
94
65
81
68
71
79
88
50
57
85
125
71
79
72
78
74
94
72
21
92
89
102
99
158
83
57
46
94
74
48
91
77
58
62
81
118
112
79
93
80
104
58
70
64
46
49
81
106
79
105
115
55
57
100
114
95
72
56
80
113
56
89
62
123
77
105
91
114
59
57
44
149
68
42
73
57
67
98
91
113
99
102
39
85
72
65
72
66
93
63
118
76
128
114
130
79
84
52
96
43
57
85
44
107
52
57
99
105
78
64
93
112
61
116
53
83
49
93
45
43
84
75
96
75
76
73
78
63
56
118
53
96
49
62
83
92
44
114
58
93
78
59
125
84
58
57
29
63
60
35
37
143
60
99
57
70
53
31
40
91
120
68
67
111
87
73
57
61
63
65
73
56
49
57
82
75
93
69
83
73
133
92
50
51
35
83
82
98
87
103
56
107
52
112
45
121
71
76
68
72
73
87
109
128
103
99
61
118
49
106
78
84
85
123
82
100
69
97
69
74
94
85
48
63
69
68
94
105
107
86
67
71
78
77
82
58
112
86
46
51
121
61
56
111
111
116
79
88
57
108
67
108
44
70
81
87
59
53
42
96
69
95
102
52
40
52
87
83
78
84
112
72
107
62
84
72
57
88
96
88
90
80
82
51
67
86
50
53
85
116
49
108
59
95
78
63
59
92
68
76
81
67
72
71
55
57
52
63
101
104
53
73
63
78
91
105
80
72
106
82
73
98
59
66
89
49
92
127
66
59
59
91
51
90
69
63
129
94
64
34
108
111
81
59
64
80
62
99
73
61
82
106
77
95
100
56
70
104
92
62
42
48
81
107
71
132
36
97
56
103
78
70
83
83
89
83
60
83
78
73
75
50
82
80
69
69
62
63
89
41
37
73
88
119
65
125
66
30
87
103
104
94
105
72
50
128
98
57
48
136
86
111
75
50
32
63
77
91
83
104
43
57
147
59
74
89
95
51
71
61
67
103
71
59
80
103
121
52
115
91
125
83
50
72
124
61
60
99
58
42
79
100
95
114
76
51
41
33
48
50
48
50
90
91
109
98
162
72
71
77
91
76
145
97
80
79
76
90
69
79
101
56
88
99
118
57
64
88
67
77
45
124
73
67
59
74
80
116
103
104
56
94
127
115
130
71
91
135
69
117
77
79
85
65
67
66
88
89
79
58
108
86
82
46
88
40
39
66
46
53
69
51
92
72
71
118
104
87
82
68
93
99
63
61
94
84
37
62
69
78
95
46
63
68
80
97
85
46
66
134
94
71
90
43
74
77
48
70
89
115
106
40
64
93
125
71
71
86
102
76
80
50
61
64
70
56
117
49
145
45
77
108
68
69
119
64
61
65
114
89
50
71
145
86
112
89
84
110
119
74
76
44
56
67
65
105
51
78
36
36
63
89
98
118
31
55
80
75
72
57
101
98
99
82
113
69
125
46
96
54
77
43
78
139
76
45
99
97
77
41
68
96
50
163
143
58
86
85
78
92
64
46
59
95
116
63
87
88
74
53
65
50
61
50
83
89
64
41
35
53
122
77
28
100
96
65
122
119
114
57
29
134
86
78
93
78
37
99
79
83
75
59
74
78
112
54
36
102
69
105
48
63
59
41
61
70
99
64
93
112
66
45
88
91
49
81
42
111
131
46
123
101
71
68
85
53
94
54
171
79
67
111
81
113
60
103
96
73
92
95
60
34
115
122
48
118
48
62
101
129
58
58
65
54
86
89
94
99
96
63
52
72
53
59
59
62
86
89
79
61
78
74
72
75
74
40
73
112
69
69
66
100
100
57
59
57
43
55
52
43
94
89
117
55
41
75
54
77
74
42
72
78
94
48
61
74
73
137
39
70
79
86
72
40
86
57
50
103
71
86
61
81
175
109
55
88
78
84
42
85
72
51
80
100
49
82
66
87
76
113
83
52
55
65
72
108
69
67
122
104
109
46
81
36
83
71
105
78
51
82
56
72
46
76
63
97
44
48
30
75
39
62
71
64
95
59
83
46
94
57
83
76
52
50
53
100
105
62
77
72
69
61
103
64
107
114
86
57
34
72
66
59
66
94
37
54
71
75
85
44
126
95
43
65
66
164
63
52
59
62
120
91
53
78
85
107
103
50
61
86
50
102
64
48
95
75
102
79
130
124
103
86
46
86
85
83
57
82
87
75
107
66
70
34
44
57
66
73
54
72
60
92
46
53
77
85
81
70
48
55
92
93
73
49
86
89
95
63
87
84
52
75
99
100
53
53
108
108
67
83
83
64
59
75
82
90
86
95
83
79
61
89
132
60
80
57
136
83
55
101
50
62
109
47
51
81
55
106
113
88
69
69
43
90
105
62
81
90
86
59
52
49
44
96
61
116
44
65
83
67
128
51
44
81
32
55
49
80
88
76
80
54
50
44
78
96
58
42
92
61
121
142
96
109
87
101
97
60
88
69
83
119
35
101
59
46
81
72
59
59
59
75
71
56
66
77
45
126
76
41
48
117
110
111
48
117
77
52
52
95
178
72
74
76
60
96
74
92
62
90
65
42
68
55
119
107
61
62
80
42
135
42
89
50
65
87
83
56
48
94
84
110
108
70
92
92
97
86
59
71
76
97
78
88
101
80
40
78
63
91
89
77
83
72
38
49
55
90
69
96
65
44
78
51
100
94
93
81
71
46
73
34
97
78
74
82
58
131
129
52
113
43
41
130
96
89
41
64
50
129
78
67
41
85
75
65
99
54
104
64
59
55
127
65
91
52
80
108
69
116
112
80
74
61
69
49
110
93
48
78
119
84
92
42
70
104
90
64
49
67
101
99
73
35
63
148
84
90
68
113
84
66
110
102
61
118
115
76
69
49
50
83
91
57
88
120
85
71
126
63
100
68
108
56
118
110
47
92
88
67
65
85
54
44
120
67
44
95
59
45
58
61
57
55
115
72
106
63
66
47
118
62
58
83
58
87
67
48
51
60
72
57
109
67
112
84
44
43
92
46
54
43
140
77
60
43
72
88
55
128
89
94
91
116
96
57
60
78
54
124
103
76
61
45
79
84
93
57
46
64
45
87
69
50
62
58
95
117
98
72
67
57
112
65
80
42
70
43
79
78
59
52
79
122
101
39
80
85
88
81
82
83
95
102
80
83
77
99
39
74
49
44
83
57
82
88
51
84
67
88
75
57
64
101
71
114
97
50
32
53
107
87
37
50
87
57
82
103
61
73
78
55
91
103
89
49
50
63
67
117
85
42
75
84
44
55
73
76
65
58
93
80
52
79
74
106
63
85
106
93
133
41
92
80
55
93
88
54
59
62
50
103
66
86
71
61
58
65
102
67
35
76
150
78
109
57
73
106
64
59
163
57
50
119
109
64
52
62
61
61
70
156
52
110
97
44
109
131
126
63
38
111
39
70
65
68
102
65
51
56
85
79
66
81
52
72
89
82
50
82
74
41
83
73
193
40
73
31
81
125
98
77
87
61
75
74
88
84
53
130
137
79
68
71
90
121
60
106
82
88
29
97
58
70
89
64
82
40
53
76
113
65
78
84
80
69
37
42
113
63
87
93
52
43
118
53
81
78
138
39
82
65
64
36
69
62
61
93
72
59
40
84
44
80
38
89
74
33
173
67
55
119
62
99
162
58
106
68
78
52
41
78
130
118
112
80
97
73
65
62
92
60
94
101
88
94
54
78
71
81
58
91
74
40
121
78
77
64
81
103
67
141
47
68
87
57
42
76
87
67
89
80
43
86
89
66
30
105
68
75
76
119
55
75
68
81
50
84
82
72
32
71
64
77
77
79
59
81
87
117
75
90
53
67
38
90
61
60
108
71
130
81
45
106
71
81
63
54
108
47
107
106
91
74
112
93
72
135
55
96
71
34
92
64
75
94
88
89
93
72
129
59
73
91
71
56
63
80
82
59
71
85
42
45
75
83
76
46
83
90
69
54
72
51
55
85
32
63
108
51
96
73
108
67
105
53
95
84
92
74
78
65
64
178
66
48
68
98
48
103
121
43
67
80
81
79
66
71
135
97
55
62
93
84
94
80
142
100
87
144
70
100
101
81
56
117
104
120
103
92
60
41
76
104
50
42
95
102
70
67
69
67
81
76
89
132
73
77
114
83
90
124
70
63
74
52
74
97
87
68
62
97
89
91
58
73
75
113
94
77
47
72
52
60
64
50
84
54
129
70
60
98
62
48
106
48
76
88
81
78
88
83
100
100
105
81
103
182
75
108
89
58
79
70
132
61
55
69
48
80
58
95
99
91
55
53
79
81
83
65
95
93
41
62
81
83
111
99
81
47
75
58
49
77
93
69
72
197
79
97
66
48
47
59
107
59
74
51
43
51
86
82
67
89
82
26
69
88
40
74
41
66
49
29
84
93
48
86
80
111
52
84
47
111
60
61
53
91
93
50
85
120
94
83
45
55
74
61
124
83
80
67
90
61
44
53
42
48
65
107
40
75
61
76
58
100
79
66
80
81
68
50
67
69
53
96
87
56
89
66
64
29
55
66
81
98
112
90
31
77
42
124
27
36
105
135
70
92
49
85
59
65
76
78
66
85
110
98
107
82
58
87
75
94
72
48
60
59
89
50
91
130
44
78
48
97
58
51
69
70
43
66
73
81
88
62
79
106
86
43
102
59
83
56
68
75
58
95
110
94
35
65
55
88
63
69
102
76
28
53
63
99
100
75
93
130
65
67
42
51
90
91
49
83
64
50
109
47
68
95
88
73
64
64
84
80
113
78
53
93
80
94
54
46
37
120
80
59
66
50
123
55
60
102
39
56
49
109
70
46
49
51
74
95
63
74
63
109
54
57
58
76
47
63
73
147
66
60
59
37
88
112
85
51
130
97
71
100
73
138
131
85
102
91
48
100
57
60
50
61
68
70
125
46
140
79
60
81
88
64
43
81
102
90
78
105
127
74
72
94
106
67
102
74
102
73
55
71
35
89
50
70
101
61
87
94
38
90
177
31
47
79
98
51
74
43
93
125
100
69
111
112
67
88
69
64
53
63
87
56
53
65
157
121
101
53
56
69
116
54
54
68
103
37
134
91
113
65
53
65
87
69
69
90
128
91
108
116
123
75
155
91
84
72
68
73
45
74
81
54
91
92
113
65
117
57
64
108
79
54
47
121
76
108
97
80
75
75
88
33
91
67
109
74
88
95
59
67
92
84
103
118
98
49
97
77
90
63
73
57
75
98
87
80
84
153
49
73
90
84
88
67
86
136
43
93
142
87
65
44
47
93
92
59
61
134
109
87
46
112
54
46
107
115
106
64
109
94
58
68
80
139
64
58
67
62
82
62
63
47
128
80
89
49
77
74
100
71
102
86
39
96
87
52
56
130
54
164
68
60
34
46
77
70
69
91
35
61
36
50
99
70
100
81
106
78
69
66
107
56
72
48
85
49
131
82
64
97
69
81
61
66
96
48
59
67
59
38
88
97
36
88
134
88
124
46
76
111
78
51
71
67
47
60
45
69
106
127
73
42
96
95
108
82
65
110
103
91
57
78
131
104
78
57
75
67
146
45
119
54
124
80
57
72
64
119
90
67
68
93
58
57
83
51
68
101
85
70
62
76
58
65
34
42
68
52
48
66
106
52
84
72
62
113
66
57
81
68
94
73
87
102
99
74
86
74
85
47
87
38
41
82
78
122
61
70
94
57
100
79
65
96
94
57
77
120
56
123
51
59
115
72
63
54
17
58
106
39
47
48
91
108
80
51
88
67
116
75
88
78
70
101
75
102
97
105
123
75
54
92
78
78
63
187
47
102
94
106
135
49
73
176
100
82
57
79
52
68
66
61
37
66
58
51
65
51
36
83
37
58
54
66
85
76
79
85
84
107
40
86
78
76
65
96
63
111
88
119
44
105
67
80
66
71
37
60
56
91
77
68
99
50
105
52
69
48
64
83
91
57
97
65
63
74
56
67
55
80
98
57
90
69
73
36
71
103
68
108
156
91
52
95
85
110
80
41
61
51
69
75
69
76
71
67
89
70
73
134
110
58
39
29
120
104
68
93
101
73
74
63
50
50
81
47
60
85
61
128
47
81
61
96
32
58
57
65
56
74
64
99
57
49
100
162
33
66
55
53
66
46
60
71
32
94
87
99
109
101
62
86
105
36
107
120
97
109
88
98
70
101
97
60
87
82
92
53
76
48
91
78
32
110
89
89
82
67
88
74
70
57
67
55
109
224
74
63
95
101
90
70
56
62
74
60
81
85
60
64
40
122
50
49
106
91
89
67
66
68
101
78
93
104
92
106
63
31
47
72
58
69
60
53
59
95
88
104
76
85
53
61
59
120
30
79
51
77
69
71
71
85
37
94
92
98
79
66
53
61
70
126
55
117
70
61
47
91
44
65
80
99
128
96
79
82
74
119
79
95
95
42
47
50
65
84
67
75
61
98
71
62
124
77
108
114
107
40
66
46
73
88
108
35
42
39
38
66
104
100
111
42
52
118
61
77
119
79
58
83
96
33
85
38
52
120
80
68
81
114
118
135
65
113
43
75
71
166
99
61
93
86
112
95
66
118
77
63
56
55
48
94
77
98
120
137
78
93
61
58
59
66
91
60
127
63
61
64
75
49
57
43
91
61
78
76
112
78
122
61
103
92
95
66
42
110
43
102
87
81
38
53
51
89
42
96
57
84
103
88
77
94
81
62
100
76
81
145
95
64
57
103
75
70
57
77
100
45
60
102
76
45
55
91
64
37
95
29
48
54
88
69
76
74
52
61
119
40
74
50
97
63
103
103
58
171
39
67
44
42
94
78
126
82
142
72
113
50
46
100
43
55
111
94
63
108
110
145
71
55
102
71
105
115
77
55
68
74
109
68
56
49
79
44
98
112
51
103
57
62
74
79
95
31
76
30
46
101
102
81
89
49
95
71
65
111
83
87
100
64
87
60
110
112
71
86
46
126
94
46
54
134
63
188
53
91
87
99
51
77
100
49
80
77
56
84
77
65
100
77
89
90
60
88
47
68
95
74
69
50
82
90
52
88
81
78
120
98
89
50
84
78
94
33
81
109
81
98
80
75
80
66
53
39
51
92
78
68
105
91
90
64
86
58
90
48
76
82
75
77
54
94
59
116
63
87
108
103
94
76
79
83
71
61
95
55
57
70
109
74
94
76
65
73
90
84
75
101
67
93
56
56
78
49
93
70
110
117
110
64
41
41
92
84
79
99
147
98
60
50
84
58
39
69
82
107
34
77
64
58
72
113
111
98
57
106
58
127
90
86
69
72
83
49
89
118
53
72
76
35
95
52
63
71
29
96
99
130
64
64
82
87
82
77
34
67
101
73
77
45
65
45
43
129
84
54
103
39
61
100
38
63
86
118
52
140
101
99
50
89
93
80
101
93
109
55
109
54
58
139
108
56
98
103
58
53
76
45
78
100
98
51
106
95
74
60
68
75
61
91
68
150
36
59
101
108
59
110
97
61
39
139
79
70
87
50
56
72
97
117
81
92
94
116
118
90
95
85
96
87
79
82
93
55
87
59
100
107
97
73
92
55
72
77
82
62
150
51
100
67
49
67
53
94
90
105
62
42
53
60
101
76
94
55
148
55
121
51
91
68
44
51
62
48
36
60
108
81
75
149
73
70
65
134
139
75
67
59
62
85
80
67
106
74
78
89
108
55
61
54
108
101
75
36
70
69
51
35
66
109
96
78
52
68
60
103
86
120
74
28
114
84
83
69
88
125
76
111
67
57
89
58
125
113
60
53
77
80
73
79
64
54
51
65
68
67
43
80
92
96
86
59
51
149
81
80
53
99
43
107
100
56
68
81
95
57
28
64
93
54
66
69
108
62
107
46
103
71
119
71
75
53
69
58
56
70
79
97
50
102
83
43
48
82
97
76
96
41
59
56
111
87
103
61
124
123
50
42
88
78
69
51
86
117
104
70
107
109
46
65
44
88
101
60
63
169
89
46
55
66
30
43
106
86
72
76
43
111
118
57
57
67
84
116
87
100
38
75
110
96
75
115
73
130
72
78
71
36
93
114
121
61
49
128
66
110
53
87
108
65
49
172
62
74
47
103
84
97
88
87
95
59
81
87
99
83
48
124
70
65
56
62
117
98
64
34
109
75
131
65
70
103
102
114
69
60
87
99
125
88
75
55
31
78
69
62
135
97
63
61
80
95
109
98
75
47
82
80
113
106
71
82
42
52
76
38
101
119
53
51
75
37
174
70
81
80
81
72
64
73
82
59
91
87
96
147
87
85
55
89
32
111
87
73
167
93
103
103
76
81
38
107
118
109
124
92
91
87
83
74
106
49
106
44
58
87
78
77
172
84
112
72
91
39
93
57
105
47
50
56
75
98
130
44
119
75
69
72
78
74
64
79
83
53
72
68
74
59
49
70
114
111
120
96
89
72
72
38
26
51
81
49
56
82
104
55
73
116
60
56
67
64
64
54
43
75
58
79
104
122
72
52
65
87
68
86
105
64
57
86
61
46
50
64
60
78
87
92
56
71
54
103
44
62
44
70
68
69
42
76
190
85
55
123
77
54
66
47
66
67
90
96
59
58
95
43
103
88
62
82
106
96
70
55
74
69
90
68
89
97
105
47
54
127
50
88
76
144
86
63
103
74
65
43
106
100
30
90
51
74
52
87
52
72
101
46
76
90
96
68
101
80
73
79
131
155
89
79
58
94
43
63
66
88
128
52
79
75
76
90
80
88
95
97
69
111
57
90
49
48
92
64
105
85
70
61
66
127
84
56
79
44
112
75
70
56
63
85
52
113
61
86
60
51
41
76
96
136
58
93
80
103
117
120
83
55
80
75
99
41
76
93
83
63
68
50
48
106
37
53
102
69
73
82
75
84
65
39
82
64
80
72
86
50
109
85
117
114
79
60
52
126
102
50
69
103
102
72
57
70
75
65
72
100
57
84
55
100
110
110
154
87
63
45
77
123
78
69
75
59
92
103
72
54
68
64
74
132
45
54
38
67
69
66
61
62
62
54
95
115
69
50
102
86
45
64
65
53
60
120
90
48
106
52
72
86
84
144
81
63
72
89
62
89
86
103
55
42
93
43
69
79
45
124
53
89
62
68
131
80
69
78
65
64
111
95
101
71
100
65
34
123
78
74
83
88
55
79
59
68
83
48
69
80
74
74
102
62
76
72
57
96
112
133
81
132
49
79
90
143
77
70
81
134
68
74
121
113
88
70
92
98
96
32
104
120
67
97
57
94
100
78
57
63
51
95
73
84
94
95
94
113
40
57
90
83
75
72
79
54
104
77
91
34
75
94
92
83
114
60
68
53
54
88
67
97
105
64
86
81
46
64
134
65
61
109
91
114
99
77
60
75
57
117
100
69
103
147
60
50
57
112
103
72
76
84
58
80
43
141
54
48
121
57
121
48
103
73
67
68
92
61
84
48
75
75
73
56
64
45
81
145
74
88
91
118
69
101
73
70
69
68
79
61
65
90
68
57
80
95
78
108
103
31
98
107
84
90
58
68
99
40
88
137
86
84
83
78
66
13
25
43
86
56
78
63
83
66
95
35
86
73
69
67
58
18
28
83
75
96
76
64
119
42
63
58
30
95
86
80
103
35
49
110
115
64
121
113
72
65
78
82
75
93
78
67
64
104
55
48
161
67
45
114
111
76
78
76
77
122
35
90
134
116
78
75
99
151
103
83
41
52
60
43
108
47
68
55
62
141
68
51
49
126
58
64
52
82
96
49
52
74
101
82
90
81
77
79
78
89
60
97
41
57
89
104
99
81
124
91
98
69
50
56
27
57
59
105
99
80
91
75
48
55
70
106
68
64
50
65
66
51
72
116
55
72
94
83
151
77
43
110
49
46
54
77
73
52
76
78
83
58
70
112
78
43
61
106
64
67
68
97
75
78
85
106
80
71
65
54
79
46
118
111
121
82
90
167
117
120
63
74
110
65
79
77
83
106
66
71
81
70
70
47
62
23
32
68
46
120
53
81
62
78
71
90
104
46
83
54
74
89
58
75
137
89
78
70
84
123
94
60
78
37
121
71
77
47
74
90
38
66
77
75
79
95
57
90
83
35
94
39
65
60
118
95
93
57
96
100
63
86
191
59
106
94
73
49
47
106
72
96
64
77
58
38
78
94
79
70
74
58
95
61
61
91
73
105
68
96
31
83
83
65
75
126
48
90
153
69
90
49
92
75
95
92
85
84
59
111
56
57
63
49
89
90
96
91
72
63
45
89
111
96
97
59
119
82
63
56
80
48
73
83
103
95
78
113
45
109
73
114
80
99
86
71
87
92
53
75
61
74
52
126
116
59
53
56
57
67
57
114
86
71
73
103
49
59
117
127
63
71
75
39
90
79
65
76
102
57
81
82
74
47
43
68
127
70
59
116
63
76
32
54
96
58
39
87
56
92
86
60
48
58
75
64
104
55
70
91
45
97
39
69
46
36
125
85
51
73
92
96
109
56
43
102
103
160
58
100
93
86
83
51
89
84
83
86
54
79
88
79
88
106
86
98
77
60
85
65
53
57
73
81
110
56
88
76
67
107
72
47
39
99
121
74
98
84
64
53
80
62
87
98
61
46
102
35
108
129
64
108
51
75
56
33
95
88
87
34
89
67
91
72
100
53
62
117
90
91
52
113
75
66
98
55
100
81
110
46
81
98
58
78
85
92
122
52
60
51
98
51
80
59
83
61
84
114
69
44
70
70
109
62
86
55
81
83
65
78
74
83
101
64
44
98
77
58
77
81
91
98
69
102
69
69
71
31
89
98
105
33
71
135
146
121
90
59
119
78
47
61
120
126
57
48
65
68
93
137
93
89
125
79
72
59
88
56
64
50
47
57
119
112
101
74
77
46
67
55
68
90
63
71
81
68
92
60
62
103
103
104
92
74
56
73
79
81
106
90
65
85
83
98
53
43
86
113
83
81
49
115
68
51
56
71
43
46
92
69
63
131
109
99
45
74
83
119
76
102
85
99
150
83
131
67
74
98
60
82
63
84
95
108
113
85
42
65
77
136
99
135
52
70
77
90
66
43
66
76
63
105
59
97
108
67
84
113
79
133
106
72
39
67
63
110
95
52
74
99
52
73
84
63
77
129
109
81
56
67
87
88
72
72
51
89
65
91
74
60
57
73
121
71
88
51
74
112
73
93
64
55
91
98
46
56
89
89
78
165
41
110
92
62
79
102
71
75
43
61
66
58
83
89
74
76
92
60
68
35
96
64
111
70
83
63
88
43
51
130
45
61
74
73
57
67
71
86
98
128
97
77
37
76
123
39
52
163
52
82
95
80
48
95
79
52
67
113
51
64
71
35
161
117
79
99
85
140
98
92
62
115
46
54
63
90
75
55
109
87
59
87
117
123
130
95
85
41
92
97
46
69
57
109
61
72
82
101
143
37
80
62
91
47
56
70
130
134
90
63
83
77
98
89
53
102
108
90
73
71
74
135
62
84
88
60
128
68
103
70
85
97
81
41
96
34
60
73
86
78
92
45
53
51
98
78
109
59
30
105
95
118
71
67
59
169
91
98
74
81
87
65
39
54
72
45
81
67
30
124
66
43
62
112
94
110
64
69
43
52
86
66
120
61
74
96
82
73
88
58
108
79
58
71
110
94
48
40
65
110
52
65
114
192
67
80
45
56
74
70
62
94
70
45
107
34
74
55
73
74
34
74
57
47
83
41
108
125
47
65
61
87
106
48
65
97
60
82
65
112
62
87
69
82
59
62
132
74
131
99
77
45
102
92
85
109
122
176
72
59
92
102
95
78
113
72
29
82
93
78
90
82
92
55
134
86
76
59
56
75
123
175
64
103
94
72
55
58
80
66
84
107
47
50
112
88
92
71
96
34
96
55
56
74
55
52
88
135
67
54
55
57
49
72
81
138
117
74
63
120
80
62
36
83
60
60
48
146
44
78
90
106
65
94
116
89
70
69
94
48
53
70
63
63
62
54
81
83
70
43
70
93
101
60
58
63
94
57
77
42
85
159
53
53
43
162
70
80
69
64
119
84
102
68
30
62
135
55
102
76
95
97
34
105
36
101
49
73
61
96
130
44
74
88
71
80
51
60
65
98
86
106
59
86
98
104
42
38
97
61
63
52
67
43
66
57
77
66
77
54
87
77
96
102
59
56
53
156
86
74
69
67
50
58
69
51
50
75
108
71
58
68
96
40
84
63
111
48
63
90
79
40
57
88
89
126
79
67
61
78
55
83
50
47
67
90
100
45
90
55
49
61
55
83
64
79
91
66
61
57
85
82
49
98
76
66
71
68
62
68
58
68
61
61
80
57
52
122
50
92
71
62
81
65
68
74
72
83
49
86
99
70
61
94
67
68
72
123
70
82
57
52
64
62
118
110
113
142
82
104
100
83
50
82
64
77
61
32
60
94
114
70
60
89
87
108
90
108
96
71
89
84
85
131
58
47
93
62
73
117
86
120
90
45
81
79
66
86
66
74
124
68
58
110
84
106
100
74
97
127
123
136
68
87
73
55
43
39
55
69
54
99
86
95
87
66
82
91
78
129
105
84
54
104
53
99
75
69
120
57
93
141
65
67
90
80
50
58
149
78
115
74
97
78
55
76
58
84
67
85
51
89
71
55
93
98
94
69
41
102
143
69
70
89
67
47
43
125
56
87
76
70
43
64
57
103
63
98
101
75
70
97
41
50
67
41
71
70
68
143
134
94
71
47
111
49
101
66
89
42
86
81
82
90
70
92
51
69
44
78
78
58
55
94
203
87
64
133
90
57
89
45
91
94
99
135
81
91
120
57
77
133
92
48
73
49
62
125
94
75
84
68
77
101
72
49
61
49
81
85
90
41
54
56
69
96
67
83
45
58
44
106
74
78
67
77
50
61
79
64
83
62
53
94
100
117
90
82
98
70
108
68
57
48
106
62
109
67
90
101
64
88
74
47
70
119
57
54
99
66
105
69
88
73
46
76
82
140
74
92
81
124
139
81
94
141
52
104
39
59
90
69
79
46
46
100
58
59
65
32
54
52
68
109
51
48
87
52
107
41
49
52
111
64
73
40
134
58
80
53
76
96
52
77
106
54
47
55
107
58
75
84
80
57
86
26
37
47
129
61
74
79
73
67
87
82
72
127
77
62
73
47
120
44
71
47
78
51
88
105
61
111
50
75
67
111
94
62
88
58
90
80
79
75
93
156
71
78
76
83
61
87
109
53
118
110
64
46
91
90
68
126
70
82
75
92
107
90
92
86
37
79
61
70
38
85
73
46
61
79
70
53
79
112
77
83
57
53
71
39
62
60
133
35
82
49
88
44
59
102
41
54
108
53
74
93
80
91
60
69
90
63
100
69
65
45
109
62
98
34
91
127
108
68
57
141
72
63
64
75
88
52
70
40
76
83
56
52
33
88
120
88
89
104
54
80
45
94
100
90
67
85
70
129
63
117
122
83
42
49
74
68
69
71
49
95
98
75
54
64
64
66
43
57
78
107
68
35
52
78
88
87
98
31
59
32
96
79
93
87
82
80
78
46
64
48
58
76
76
93
59
113
87
65
65
103
114
94
67
72
121
76
88
55
64
69
110
33
69
95
85
67
100
96
81
74
96
76
106
136
120
37
59
60
74
83
103
80
52
77
48
111
59
75
77
60
102
89
87
39
27
79
84
51
67
107
133
146
135
81
97
80
61
91
100
68
64
63
99
55
39
66
43
108
138
36
62
51
164
94
78
41
62
96
109
76
166
47
46
156
60
85
65
86
100
71
95
92
96
73
61
78
104
58
90
64
56
115
63
78
107
97
73
61
60
128
87
106
115
65
103
74
62
89
50
105
48
43
71
101
60
64
60
108
88
68
92
80
120
42
106
71
84
80
56
73
89
104
97
82
77
75
91
49
54
51
87
71
49
67
60
52
60
93
104
74
50
94
115
87
81
77
85
100
84
49
54
80
78
64
59
127
55
79
67
78
39
115
79
51
89
107
82
45
84
97
69
69
59
40
43
61
59
93
27
64
80
61
96
105
57
59
50
92
51
78
69
59
90
45
107
81
95
56
75
62
92
73
76
138
61
73
85
72
128
76
61
88
70
56
75
103
85
33
112
88
77
47
79
102
91
59
81
85
83
98
38
99
122
117
77
57
93
78
83
85
56
103
89
69
86
49
34
85
79
97
85
101
56
71
35
78
93
83
91
56
63
91
36
96
54
97
54
53
43
38
113
115
47
76
56
85
75
151
41
73
57
93
92
112
103
67
134
62
54
94
43
34
110
142
94
70
71
35
92
102
42
149
68
146
104
92
26
115
99
53
78
61
79
81
61
59
84
56
37
167
46
90
61
45
88
114
69
93
52
58
54
40
51
82
47
76
64
75
64
58
89
57
51
50
96
104
57
78
77
64
79
66
55
57
80
67
37
78
103
93
69
72
87
53
55
85
69
84
78
91
91
140
132
82
101
66
57
40
68
96
68
56
82
87
64
77
74
66
61
52
91
120
131
100
104
101
115
46
73
91
75
88
73
128
83
79
59
89
63
112
65
126
73
76
52
75
68
112
62
91
52
80
102
117
132
86
89
58
63
66
80
39
36
122
90
54
94
109
53
65
79
81
93
94
82
141
72
85
47
67
46
75
117
59
66
121
46
93
87
60
36
40
51
60
70
61
107
59
55
44
93
69
55
69
94
72
66
70
89
81
76
69
41
72
76
98
95
84
64
83
61
82
28
100
90
63
47
85
67
65
98
93
139
66
83
119
86
74
103
70
82
90
118
54
111
108
108
93
87
72
84
114
57
77
61
105
60
41
58
106
52
126
77
73
51
75
109
48
55
126
112
63
86
107
75
63
84
85
47
69
39
32
66
59
170
65
61
105
86
79
73
50
54
86
47
75
74
99
70
119
71
99
68
107
66
65
43
62
64
95
115
101
89
51
63
39
95
56
42
76
118
50
95
86
58
95
50
52
60
51
82
65
71
111
82
36
74
48
49
76
78
71
103
92
106
114
117
38
53
85
119
58
53
57
72
63
50
53
120
70
135
71
46
43
105
89
85
58
110
37
103
109
63
130
67
62
56
54
148
45
86
60
89
75
102
87
62
129
92
65
51
49
94
47
42
68
84
83
71
116
108
49
63
66
89
28
85
93
112
64
80
76
68
54
46
53
52
51
78
77
106
95
108
87
54
43
79
30
82
61
61
60
127
49
124
71
96
54
101
51
55
81
80
70
48
93
110
70
42
92
59
77
50
94
87
91
58
55
33
44
65
93
80
94
91
66
123
76
104
108
69
57
73
65
55
94
109
78
42
56
53
107
80
70
75
60
50
89
82
77
71
45
101
117
69
93
113
69
80
74
101
91
72
115
55
55
42
83
112
71
121
123
44
57
68
123
94
119
77
68
114
78
110
104
63
79
146
75
51
109
91
71
100
96
86
67
58
58
77
48
94
37
55
145
59
86
77
132
40
57
85
80
101
69
57
45
69
44
91
104
40
79
75
36
83
60
52
64
115
70
65
64
54
65
66
56
114
46
77
78
66
81
79
74
53
67
58
70
115
135
95
83
102
80
70
88
66
26
53
67
89
91
116
106
95
47
81
64
121
70
77
72
81
91
67
86
102
96
79
88
78
91
88
57
79
64
80
63
72
38
68
75
47
84
62
48
99
116
86
95
117
71
47
82
94
50
157
77
92
91
65
59
37
111
99
49
42
89
57
92
45
65
100
67
92
97
72
72
86
116
86
89
86
94
43
95
98
31
88
86
80
82
126
60
120
65
112
52
94
65
87
67
74
88
83
132
58
103
96
92
77
101
45
67
78
56
87
123
82
79
86
78
87
68
107
50
73
69
75
52
38
54
94
93
81
83
70
117
99
42
66
93
88
90
77
54
68
41
49
74
54
98
84
99
142
85
83
121
82
98
112
56
90
74
69
83
110
54
64
91
35
80
74
74
55
85
82
97
36
127
128
92
120
62
94
71
86
80
68
68
75
119
40
52
87
42
29
109
78
71
87
76
48
93
53
139
67
54
72
110
78
79
102
124
129
92
79
73
50
81
53
94
61
101
51
71
93
117
67
87
85
89
92
50
73
111
63
109
102
71
56
53
56
30
92
102
76
57
64
85
108
65
99
101
100
97
71
74
99
77
62
87
40
80
124
65
122
58
61
51
55
75
36
77
46
82
91
36
61
94
76
105
50
55
65
75
57
146
56
103
45
61
77
70
80
50
71
59
51
88
139
107
69
59
50
76
67
83
91
40
79
72
43
105
72
77
94
50
82
91
61
55
45
46
104
69
89
107
60
89
55
47
92
56
50
52
47
68
60
39
118
46
89
64
51
78
57
59
44
82
96
92
105
56
68
86
65
80
94
81
112
95
68
100
98
66
88
57
69
91
61
84
97
117
64
77
61
104
62
71
59
54
143
127
112
61
55
82
97
57
60
34
111
69
69
97
76
52
142
97
90
65
78
102
62
143
60
39
74
67
77
82
81
98
52
86
69
93
85
86
76
83
43
68
61
84
58
84
74
59
89
108
67
77
70
97
52
90
55
80
51
55
92
67
84
82
73
88
64
76
103
55
58
90
65
79
76
61
39
104
92
80
87
65
152
137
46
99
43
112
60
75
74
93
90
81
71
45
75
71
39
137
55
152
65
92
76
60
43
87
133
42
30
61
24
59
88
56
95
57
95
143
81
76
99
78
94
170
68
59
109
62
89
80
110
102
43
93
126
73
96
58
76
55
86
92
68
63
33
68
69
93
56
96
68
83
102
72
95
80
65
85
52
75
134
64
54
92
94
83
53
89
97
35
115
65
94
82
85
74
121
74
77
129
70
75
62
118
81
111
56
79
72
61
99
77
85
117
43
96
50
131
97
68
75
96
111
76
65
113
65
44
107
127
64
61
94
83
119
126
100
79
38
60
81
76
83
82
59
84
78
73
100
42
48
90
43
119
51
96
87
79
76
69
42
88
54
59
65
60
90
75
82
56
89
55
75
46
33
93
46
128
70
42
74
46
103
56
51
71
71
43
87
68
67
75
119
55
97
58
52
112
52
93
73
105
54
56
69
119
71
109
37
106
57
56
92
61
100
122
72
75
85
80
91
94
76
111
53
96
83
46
58
76
90
109
112
62
69
145
67
69
55
74
62
52
52
92
69
48
113
116
55
50
58
45
86
65
65
79
98
85
70
57
51
74
94
84
48
90
57
55
109
93
70
43
98
58
76
76
59
65
114
80
105
90
62
114
43
51
63
60
77
58
40
91
64
128
97
98
106
83
102
83
41
68
94
123
70
80
30
90
54
36
108
104
121
99
48
67
55
43
31
60
96
41
68
69
110
39
33
56
66
68
111
78
115
65
118
96
106
92
92
95
83
86
65
59
70
65
89
94
55
28
82
75
62
109
59
52
76
137
55
51
65
70
112
111
67
52
123
73
96
90
135
61
162
92
66
109
88
61
59
45
57
34
48
38
48
76
58
78
96
77
37
70
63
77
67
74
58
94
70
55
41
101
86
77
62
101
53
55
103
67
88
70
139
127
47
78
88
32
54
68
66
94
63
69
61
67
66
73
140
38
94
113
96
60
74
38
25
98
81
85
106
88
94
97
86
68
44
124
63
54
40
98
68
39
108
56
92
67
42
62
85
93
61
92
82
103
39
93
71
59
99
86
97
91
91
60
82
44
72
45
118
36
78
93
64
75
92
99
59
77
47
106
57
75
61
70
98
71
102
74
100
144
65
60
73
114
82
128
60
81
46
87
97
44
141
66
81
56
38
97
69
112
92
64
59
49
142
72
97
58
66
39
77
108
88
54
95
70
76
56
53
46
93
96
76
106
83
63
69
94
114
90
79
64
73
74
45
108
87
51
109
74
79
60
85
72
74
86
115
33
158
128
124
49
95
35
34
28
126
50
92
121
31
69
80
82
82
53
62
93
64
92
58
114
88
55
81
100
63
36
94
101
44
86
104
70
101
78
132
51
104
73
81
53
109
59
43
84
95
63
57
40
76
56
153
73
75
125
92
79
106
125
36
41
102
82
81
70
74
68
115
90
86
69
97
96
75
32
59
44
58
75
80
51
50
114
98
55
56
48
43
94
75
63
69
85
76
66
116
79
84
79
81
109
60
58
75
77
85
97
107
112
54
54
58
83
62
46
51
71
90
40
113
76
63
52
81
98
82
78
44
66
92
43
53
113
98
68
110
109
41
49
95
102
38
77
64
140
41
53
93
114
77
61
62
150
59
47
58
110
31
86
33
39
82
34
89
69
82
98
68
112
66
76
81
67
102
60
59
99
53
58
73
68
66
54
63
45
86
82
62
54
38
24
56
129
97
77
56
53
100
46
55
122
85
125
62
63
83
87
75
104
117
50
93
48
75
149
68
77
144
25
96
110
66
81
86
45
42
56
66
40
49
84
77
68
70
90
86
73
77
61
63
40
92
72
134
105
59
78
94
82
107
53
44
114
128
38
92
95
78
81
57
104
76
126
50
86
55
49
67
47
134
92
100
134
54
69
56
56
112
123
44
67
76
73
47
109
60
109
76
48
94
78
91
66
50
85
80
70
92
95
148
60
45
116
89
47
55
94
88
49
60
98
128
62
116
60
104
50
75
156
86
46
100
65
81
69
113
98
68
90
58
92
92
49
62
71
68
108
89
38
83
123
88
65
107
77
83
69
73
50
121
165
69
144
98
129
95
60
93
78
82
85
112
47
91
50
90
119
67
55
113
143
131
54
73
64
82
121
69
71
67
84
46
82
78
112
73
104
86
43
122
73
85
94
36
82
98
130
38
87
77
85
119
149
71
73
75
54
89
84
111
65
122
65
33
72
111
97
109
123
68
80
96
65
101
95
68
115
61
112
38
91
88
99
52
47
66
37
31
57
77
60
59
67
87
116
61
60
80
74
49
54
41
89
51
168
46
81
158
76
68
64
47
103
64
65
58
37
85
88
80
80
59
41
46
78
132
87
80
124
102
72
86
72
85
95
32
87
46
39
150
109
65
59
91
80
105
92
45
87
67
56
74
64
94
45
78
64
117
95
76
116
70
93
57
79
115
38
75
58
142
97
48
73
49
66
133
83
51
76
31
64
55
95
82
74
60
49
39
58
83
72
116
56
92
93
71
71
70
90
74
86
108
66
49
57
96
87
115
71
50
60
70
77
107
42
65
87
78
56
109
81
62
56
104
79
78
62
83
74
37
79
64
41
51
68
78
45
59
88
79
69
54
72
79
68
49
95
155
54
60
122
139
90
95
91
61
51
48
81
95
70
57
58
93
73
105
34
108
106
48
123
114
101
88
69
58
61
100
54
76
69
98
133
33
93
68
69
91
84
77
60
52
111
58
60
44
113
77
52
106
80
112
86
55
81
103
113
89
89
95
67
67
119
105
58
68
40
114
81
40
67
86
101
70
52
46
46
70
82
73
69
42
114
49
81
64
61
63
51
46
96
85
88
81
56
58
61
92
118
108
124
38
71
59
60
67
81
59
69
59
110
51
121
88
102
100
92
94
86
60
95
41
92
67
118
68
102
61
68
194
54
49
110
73
91
82
50
54
66
121
45
98
78
83
41
79
61
79
53
76
57
82
65
71
80
70
92
48
98
50
76
53
70
34
27
67
70
77
92
57
107
139
96
38
96
84
72
47
57
70
64
84
95
56
87
84
118
38
111
73
56
113
76
36
74
96
89
59
77
96
39
82
52
53
95
90
104
71
91
46
91
86
79
64
92
107
96
112
83
112
83
111
75
92
77
54
36
58
103
61
46
83
92
76
95
41
78
89
67
48
61
40
55
56
96
95
59
114
126
49
86
55
80
101
79
74
69
79
42
117
71
71
71
83
66
51
69
58
141
68
64
62
97
78
101
57
57
78
137
103
91
122
79
68
43
71
66
72
57
85
69
88
73
117
105
68
82
50
54
62
61
109
123
44
72
43
85
84
84
64
62
77
65
171
74
50
81
89
61
30
130
66
76
63
47
53
48
95
59
92
70
76
79
104
75
81
68
82
32
59
86
43
45
84
44
70
137
139
73
35
32
93
49
73
76
131
75
59
76
124
80
125
41
77
54
74
91
56
74
137
92
117
107
69
80
66
62
115
90
106
69
95
86
112
51
131
49
71
87
101
64
156
47
97
110
52
99
80
65
51
114
86
104
43
84
54
78
122
108
134
117
54
61
110
124
89
34
78
52
45
103
47
89
45
61
105
87
119
39
51
117
66
88
85
112
52
78
55
108
79
83
42
96
100
46
86
63
66
95
48
109
123
92
97
115
73
86
66
69
114
46
93
40
70
98
64
103
82
141
62
69
68
75
74
88
65
91
46
93
77
81
71
30
72
71
101
76
48
110
118
108
106
44
39
89
119
114
65
56
116
76
79
71
99
91
112
60
95
70
50
82
49
83
34
69
75
97
59
99
64
79
76
43
76
93
63
36
63
67
88
81
59
92
62
63
181
108
66
85
39
66
73
85
48
79
51
66
97
73
65
71
46
70
73
69
96
67
107
67
145
63
103
130
148
46
77
39
69
98
38
90
66
55
74
82
136
80
83
36
52
100
108
102
51
106
90
89
90
78
133
64
150
92
72
87
153
37
76
63
45
112
88
48
77
83
82
66
130
48
81
78
46
112
79
66
27
45
88
51
63
86
72
73
67
81
90
56
56
126
71
85
75
67
98
64
70
111
100
67
76
80
36
76
106
83
98
72
105
42
90
65
89
66
62
63
51
90
134
67
110
32
71
60
45
91
85
63
56
46
92
141
64
94
90
40
86
59
95
68
117
75
80
71
47
106
75
66
60
82
111
83
33
77
144
53
46
64
108
28
106
100
76
78
139
78
80
38
79
58
84
77
69
98
104
82
69
121
71
60
53
119
68
68
50
69
165
53
61
57
42
65
70
70
70
74
114
89
45
120
74
88
80
92
117
134
45
125
45
75
131
77
97
72
71
102
73
33
67
64
38
78
76
59
108
70
86
62
106
54
83
128
78
77
54
71
78
72
110
69
36
29
156
137
86
56
150
70
79
57
107
94
102
87
105
48
91
78
52
44
79
66
117
58
89
68
64
111
64
75
69
95
64
39
51
76
102
37
111
51
70
89
55
90
150
88
65
73
74
40
78
54
74
75
169
83
75
46
67
119
66
63
48
70
126
77
50
78
75
142
76
52
85
42
65
77
80
91
112
95
81
65
40
90
93
53
54
60
109
60
69
99
45
47
46
50
72
84
62
87
89
94
77
49
93
49
75
85
135
57
44
62
50
112
53
117
56
78
83
44
61
64
117
68
128
72
48
44
76
69
89
57
53
105
93
45
59
63
69
88
77
56
102
108
41
70
86
75
55
75
162
55
101
112
69
44
97
58
106
78
53
121
84
46
104
71
107
100
88
58
101
60
51
43
91
94
60
24
90
94
55
60
102
81
33
41
43
66
88
76
90
53
87
54
63
70
72
88
95
60
59
79
31
59
58
57
54
91
70
97
80
52
74
59
85
69
51
139
70
71
72
52
63
46
63
98
128
95
40
42
55
93
52
44
51
73
105
71
109
55
67
108
46
89
78
60
69
88
99
70
75
98
78
97
31
47
37
50
86
104
106
96
74
80
67
73
116
42
79
61
56
94
56
126
116
89
71
72
159
73
52
60
144
57
49
86
122
126
69
87
56
38
109
62
81
83
121
37
90
78
91
63
72
80
73
85
71
59
71
96
62
86
94
47
50
27
85
74
88
110
75
49
76
85
96
62
52
75
126
87
64
62
79
69
91
47
56
47
72
186
42
57
75
113
43
107
60
47
75
63
63
81
34
91
138
82
57
65
53
66
94
97
127
67
78
81
92
74
60
85
149
90
82
79
70
42
90
84
159
63
167
71
56
87
72
79
134
98
61
86
82
90
76
66
126
58
58
59
102
115
80
103
67
54
49
65
32
95
100
42
77
61
61
46
49
71
56
78
81
119
89
95
79
80
91
97
110
52
101
90
73
38
96
80
63
39
47
72
78
78
78
52
92
76
52
80
68
87
185
97
96
85
32
59
92
63
88
133
116
53
49
67
47
71
41
46
58
97
54
102
54
87
65
76
35
67
47
76
32
112
60
115
102
84
73
82
114
79
51
122
52
144
59
64
90
77
71
51
77
46
78
119
89
84
126
44
88
98
47
81
61
47
115
90
55
59
86
88
63
115
75
137
76
97
85
66
53
50
114
51
79
99
113
85
97
75
69
57
71
99
115
102
52
113
62
99
65
86
39
98
103
64
82
92
53
126
30
89
81
64
96
150
64
63
69
58
75
75
65
48
90
111
67
50
48
67
178
83
68
57
84
39
48
61
95
72
84
46
105
92
119
110
116
119
61
54
90
101
56
58
62
99
41
96
85
60
78
99
92
73
55
132
81
83
71
60
68
60
51
96
97
96
85
136
50
75
135
51
67
68
95
84
95
76
87
158
64
77
65
80
85
60
99
67
101
75
45
42
96
54
59
110
95
79
71
53
97
55
99
76
84
34
52
168
40
78
49
101
93
122
142
82
75
136
45
87
75
103
36
100
88
89
83
49
33
42
63
133
37
61
117
49
87
41
72
30
39
70
84
88
110
59
119
132
63
81
81
75
100
35
63
69
84
123
74
96
58
101
65
76
77
55
42
83
34
66
104
43
80
96
128
76
64
105
92
69
58
90
43
64
142
115
86
63
68
75
78
81
76
82
134
89
63
119
47
46
98
85
81
153
90
85
59
48
46
80
82
118
107
72
63
79
65
102
78
95
82
72
65
62
115
61
68
86
164
87
61
125
101
70
137
115
101
143
74
104
78
79
98
69
72
81
51
66
116
128
201
47
51
166
63
119
93
81
59
135
130
94
77
75
53
127
127
36
176
89
33
110
117
67
66
86
70
61
30
74
80
94
86
54
73
83
43
66
78
73
33
44
62
61
68
55
52
70
66
92
76
41
82
153
61
107
58
80
75
62
84
65
89
101
39
58
41
79
78
52
119
46
68
31
49
51
78
117
57
79
66
34
56
51
39
83
51
52
88
106
79
73
122
72
115
71
45
72
76
52
75
95
93
56
79
47
44
86
50
40
106
53
122
69
189
46
123
52
86
94
59
74
76
78
71
52
110
84
90
41
74
60
75
122
38
84
76
53
85
67
132
98
78
74
83
99
88
75
118
67
82
87
133
86
55
56
143
103
87
95
93
140
50
97
68
54
50
70
89
55
44
68
60
72
32
58
87
46
34
74
54
58
82
86
56
46
65
74
53
63
105
65
48
86
76
93
60
120
82
27
52
130
47
54
165
63
66
59
60
51
54
83
47
55
116
69
90
99
74
87
43
94
56
115
90
88
79
58
106
108
65
53
75
93
93
64
65
67
79
82
49
98
157
111
73
100
83
120
69
53
94
48
61
93
70
46
119
96
65
57
57
59
50
57
102
113
67
40
82
56
108
75
90
93
32
57
34
54
52
67
50
74
141
74
117
69
78
62
90
97
74
122
79
96
49
66
128
46
65
111
66
93
85
62
78
25
77
53
55
71
22
85
59
69
113
72
83
40
63
30
97
121
82
45
105
104
73
72
70
82
62
70
136
73
85
86
51
48
54
79
26
73
45
62
90
110
66
86
75
65
99
36
46
115
98
59
62
98
44
57
64
102
96
48
66
66
70
43
52
55
109
74
77
81
40
42
77
114
58
78
92
128
92
80
42
44
50
107
64
47
31
67
84
70
42
57
76
52
110
68
92
70
65
62
145
73
94
55
120
85
69
50
80
87
61
114
48
54
54
71
67
75
60
34
82
107
76
66
111
105
58
95
137
86
61
71
88
58
73
104
95
58
38
72
86
58
57
109
111
87
80
63
84
97
60
109
55
45
83
57
102
59
58
68
87
83
60
77
115
115
74
81
44
97
83
62
94
70
43
82
81
72
84
53
117
45
75
57
64
58
79
45
157
79
76
111
109
59
60
124
94
116
86
66
81
71
101
96
89
57
53
83
59
52
91
101
52
99
82
81
62
62
59
77
95
54
68
101
41
100
70
100
93
62
77
74
49
50
125
86
93
75
59
65
75
48
64
98
49
101
94
88
101
91
86
72
98
25
48
32
91
102
48
56
67
63
73
50
51
108
71
138
82
70
72
127
79
42
97
86
76
90
78
118
70
70
92
65
85
118
68
103
68
134
71
70
93
42
59
63
46
88
66
56
86
89
63
96
124
98
108
66
48
52
69
77
61
40
74
83
94
85
127
98
49
93
100
118
63
75
73
84
43
43
85
83
93
58
87
100
56
125
48
42
34
97
72
59
42
71
37
109
106
64
59
106
88
164
72
69
67
89
100
54
84
91
84
85
74
96
84
94
54
96
97
95
120
69
84
87
124
65
94
79
74
100
55
30
84
80
132
71
37
97
53
111
55
54
95
73
60
86
130
132
71
95
90
63
57
149
194
95
67
52
56
90
59
81
46
42
96
123
52
82
74
34
127
99
59
69
53
105
62
103
141
92
81
89
142
32
135
40
68
111
67
45
91
108
76
87
74
36
37
137
52
99
62
92
63
79
85
77
95
92
73
71
60
147
50
46
91
107
47
114
68
107
80
106
65
96
85
72
103
56
67
91
50
109
55
68
71
113
84
68
95
40
62
115
71
69
84
90
108
77
28
90
116
114
77
66
103
115
83
56
61
47
48
66
56
65
94
80
108
92
79
96
98
44
41
142
49
64
56
89
89
72
59
29
78
44
60
83
106
77
71
65
95
52
104
47
68
60
64
111
73
70
124
45
73
80
91
119
89
60
106
103
97
92
47
109
83
73
68
62
71
87
74
85
79
50
153
70
118
78
64
52
80
46
101
61
75
102
140
52
142
64
81
96
102
60
111
86
96
107
58
103
63
49
79
81
70
83
65
74
87
71
62
132
53
76
81
56
67
48
101
72
82
80
74
87
106
96
73
87
66
65
71
58
59
45
87
120
55
71
65
111
107
71
129
30
86
70
23
71
94
123
117
79
62
56
81
61
79
47
102
89
79
75
37
68
87
98
45
87
109
43
91
66
48
119
79
123
120
88
84
68
88
44
45
85
72
57
50
55
82
65
72
47
48
76
58
68
97
76
58
48
37
79
94
63
69
87
79
147
54
40
83
84
67
57
44
74
50
96
101
104
85
122
92
63
81
99
60
37
114
130
71
46
92
64
47
86
51
88
64
117
114
35
57
135
102
58
138
61
62
96
101
135
66
59
75
87
74
76
60
110
97
94
70
88
85
86
74
92
72
37
63
81
55
95
63
58
77
94
154
75
94
79
70
64
49
77
86
76
95
71
98
101
71
79
100
107
98
99
43
116
71
98
59
75
49
83
66
67
71
86
93
90
59
98
118
88
84
83
158
137
79
79
91
88
63
83
113
64
65
75
93
72
52
64
80
72
43
74
63
59
169
77
79
63
87
105
69
70
78
81
68
75
82
105
67
89
61
77
83
107
96
86
86
86
113
108
139
49
60
55
88
88
212
72
73
82
103
82
55
61
80
83
53
59
58
105
69
132
71
66
51
60
79
78
157
84
78
99
69
77
56
58
49
176
64
127
88
50
55
103
121
50
87
71
39
49
102
68
150
97
46
93
67
31
101
99
53
52
53
77
100
69
62
38
64
35
57
87
72
119
96
84
87
103
61
97
73
94
75
108
93
94
84
100
72
115
78
67
34
80
30
43
67
72
87
81
40
88
50
63
77
67
88
104
83
60
85
76
103
27
63
39
84
84
52
107
92
39
37
104
52
65
77
106
68
98
49
68
101
101
50
83
45
74
92
52
59
62
41
31
91
44
78
82
132
112
49
74
54
67
84
101
69
38
95
76
44
40
91
108
81
76
64
38
35
89
69
89
56
63
65
75
71
100
86
94
81
51
39
90
84
83
38
50
71
66
92
92
66
115
100
123
85
84
122
63
65
68
65
88
56
88
45
74
60
104
77
100
73
85
75
38
158
101
65
46
31
72
72
59
45
106
97
71
109
77
77
70
101
63
58
104
82
52
35
58
51
53
110
130
114
86
124
99
66
88
82
64
116
75
96
57
76
60
90
68
128
80
102
99
53
49
84
60
64
36
72
85
45
126
85
115
71
62
113
57
54
78
51
70
84
40
130
90
65
56
60
100
122
53
69
58
61
111
72
65
80
55
43
95
65
105
71
87
84
84
121
121
51
59
56
80
69
97
98
63
91
44
70
78
67
78
51
63
76
30
72
57
75
62
69
90
49
70
120
75
80
47
27
103
48
97
96
81
50
78
92
151
111
51
82
67
78
60
64
71
53
60
48
104
97
32
114
99
91
80
86
66
88
48
55
54
130
59
82
91
71
62
74
78
101
37
44
82
44
125
45
127
41
87
73
83
83
42
35
53
91
58
46
64
66
56
118
25
47
35
121
85
84
113
114
91
86
97
122
111
53
64
89
113
109
81
68
73
89
105
173
69
74
160
83
52
85
102
56
75
133
78
66
56
67
70
88
96
74
43
121
87
109
71
39
103
70
41
90
49
50
57
52
40
108
110
43
77
59
62
115
74
126
115
63
35
103
126
85
65
51
77
51
59
74
63
51
74
72
82
54
127
61
81
46
95
87
60
118
48
80
119
69
79
54
115
89
60
37
47
45
39
95
55
140
107
94
83
24
122
81
90
48
63
73
58
82
97
51
75
83
66
70
45
68
92
56
36
99
67
48
61
90
80
53
69
129
116
73
48
83
70
58
90
52
58
114
141
68
77
119
100
52
111
100
83
88
93
42
68
55
64
73
72
37
67
131
94
94
57
94
70
45
112
39
82
69
96
89
123
58
60
69
60
59
62
100
113
35
49
86
76
76
53
39
104
76
74
108
107
56
112
142
65
82
51
80
91
88
62
26
73
60
122
49
102
92
58
114
45
45
80
46
57
77
90
75
81
90
106
47
65
70
111
80
70
32
99
96
38
84
68
95
104
84
128
102
78
88
89
104
46
51
71
101
63
75
35
85
56
51
104
64
67
85
59
78
93
93
110
99
74
37
102
67
47
48
51
64
68
110
35
49
116
70
69
100
30
69
73
77
67
82
67
68
99
72
84
122
89
45
62
58
72
56
85
77
50
68
77
64
103
78
53
86
62
69
89
85
65
87
59
60
87
124
67
147
55
106
84
99
52
115
66
58
68
70
84
85
64
94
50
78
106
55
51
97
28
90
99
36
83
71
71
55
100
48
47
59
49
117
65
53
62
77
92
84
70
82
42
63
49
48
80
111
80
75
77
97
101
104
68
97
44
46
104
108
74
74
77
69
53
93
76
103
119
84
94
77
72
79
83
77
53
101
123
50
56
113
69
55
66
44
78
51
65
34
85
74
91
59
59
71
49
60
92
54
63
70
35
80
63
88
79
74
113
96
47
82
71
149
98
90
96
70
85
90
58
114
39
149
55
34
106
87
71
70
66
73
76
68
66
77
97
38
61
67
114
86
117
73
66
70
57
85
82
99
126
83
123
76
177
99
86
43
61
78
77
73
68
88
40
66
86
85
83
46
77
85
63
96
70
151
92
109
73
91
83
91
94
32
109
66
85
79
87
138
122
150
56
98
78
52
96
164
62
73
93
69
123
124
64
70
75
98
72
80
49
52
74
78
112
93
48
41
84
76
61
90
80
78
48
65
94
97
75
63
103
83
78
72
99
69
60
59
51
73
102
72
72
91
128
95
27
114
88
80
107
96
45
46
86
108
46
101
101
61
76
95
67
91
73
67
93
103
49
71
65
136
68
76
44
67
93
103
63
102
58
107
72
117
56
51
134
64
117
88
127
106
61
68
98
80
63
93
71
116
75
93
80
74
64
86
80
69
81
67
46
42
64
121
92
111
51
53
110
95
124
75
133
92
48
53
66
87
119
76
59
87
54
49
102
119
54
93
55
74
115
62
108
91
83
76
79
76
73
118
70
98
61
100
68
105
43
70
84
61
86
143
72
56
75
40
81
95
103
48
62
100
58
58
122
71
69
51
80
90
66
65
88
79
52
68
84
79
102
54
76
71
49
78
84
110
59
73
81
52
107
54
114
86
52
114
48
67
49
61
58
107
64
89
52
46
88
100
38
75
63
62
82
111
48
56
53
32
88
66
60
68
50
110
61
125
104
74
82
91
101
67
79
74
59
107
136
65
102
64
78
79
58
80
92
98
113
155
94
38
76
50
77
71
126
87
92
97
76
116
64
143
103
69
109
60
155
61
92
128
78
91
91
55
100
69
114
40
101
62
110
64
83
72
50
90
91
93
88
119
59
63
52
65
79
81
59
123
90
78
47
59
39
55
37
74
41
109
27
45
63
81
77
146
52
86
77
118
110
42
61
115
69
170
103
68
91
80
52
60
72
86
65
78
107
100
73
80
63
69
90
57
64
27
45
72
76
127
75
91
118
105
91
118
75
58
86
58
74
65
93
38
106
107
28
42
58
85
60
76
63
70
75
79
42
52
76
70
59
101
69
100
88
77
38
84
31
57
50
70
67
93
71
73
58
81
110
68
77
133
66
69
46
68
82
83
134
78
48
78
27
93
104
83
67
68
97
95
107
63
48
102
65
131
81
50
70
81
57
58
128
84
64
82
59
55
65
99
124
87
99
64
144
71
106
122
55
68
64
84
87
67
63
67
104
46
47
107
58
44
82
85
46
79
86
89
62
79
69
104
85
59
68
99
62
37
61
75
51
87
35
93
79
48
72
43
98
82
83
91
105
51
63
85
125
77
97
54
55
61
78
68
85
35
84
36
77
84
87
76
50
100
74
58
88
86
44
74
53
56
118
42
81
107
101
64
79
110
43
83
81
104
88
66
102
62
62
89
76
36
68
64
56
40
39
80
142
81
43
47
93
94
93
59
82
98
76
131
80
118
31
47
81
42
78
63
90
63
81
77
48
80
97
91
97
93
97
97
83
88
66
51
34
72
67
82
139
109
120
143
73
48
53
61
91
62
93
63
97
75
107
56
48
66
93
78
109
78
46
81
33
97
61
71
143
81
53
39
64
93
114
56
105
127
83
45
89
74
85
127
102
77
73
113
72
85
104
70
71
94
55
52
51
39
53
76
86
85
65
43
70
77
34
111
62
70
61
95
79
76
59
48
81
52
57
73
29
62
80
143
98
139
92
45
94
118
61
28
55
117
58
54
104
52
57
85
61
92
54
103
76
37
86
86
68
115
42
85
92
94
68
71
93
75
81
63
67
40
63
41
43
129
36
85
56
107
33
99
72
109
104
55
53
41
67
51
54
79
40
93
71
68
114
35
62
72
63
88
101
95
55
82
84
97
123
64
86
86
104
93
79
72
88
55
149
39
66
97
78
185
85
49
51
59
115
72
93
70
47
82
97
45
88
92
75
93
111
78
55
90
64
92
93
68
55
81
94
107
68
53
58
66
50
61
117
46
120
76
59
101
53
107
65
55
94
71
54
103
77
80
60
110
66
101
89
123
64
115
78
34
34
72
55
113
51
86
89
94
71
111
53
54
84
74
117
83
76
77
128
55
99
89
131
75
62
134
65
89
78
47
50
44
66
89
63
74
84
130
75
76
64
38
71
72
49
51
115
73
71
70
67
98
49
54
113
63
123
82
78
68
105
40
41
80
83
96
87
156
83
57
107
79
98
55
165
106
71
82
37
91
81
78
63
65
97
47
75
37
98
50
98
82
91
80
63
70
63
112
56
110
109
69
69
108
44
49
86
78
97
68
73
76
63
117
69
100
45
30
131
89
53
71
80
68
42
100
33
124
86
59
61
60
91
99
39
54
70
88
37
76
71
56
76
105
96
91
81
84
82
53
56
102
85
73
175
192
78
68
91
106
82
146
73
89
77
68
106
31
49
54
38
93
74
58
93
106
88
45
64
67
64
85
58
67
49
80
78
46
74
78
96
46
90
59
156
93
111
75
132
86
59
75
98
64
89
55
78
75
91
58
85
67
61
93
91
51
47
63
104
68
82
80
86
74
95
82
106
64
47
64
53
76
45
88
104
80
84
101
77
84
35
88
67
80
63
81
86
43
83
70
67
55
76
63
44
51
67
105
50
63
31
64
107
68
58
99
39
109
136
69
60
86
55
125
90
93
85
95
71
83
114
65
57
92
50
171
76
97
72
74
122
57
92
87
91
54
96
50
68
93
51
54
88
45
66
73
126
79
76
57
74
72
88
66
79
75
111
59
99
46
38
59
60
117
85
74
94
71
83
54
82
71
126
25
57
58
70
71
84
74
62
116
85
56
77
139
114
50
79
121
70
26
72
100
46
64
84
81
43
63
39
85
84
73
62
67
62
91
76
52
122
83
65
204
108
111
107
49
58
83
82
51
68
107
86
86
37
159
78
72
62
82
55
90
39
92
31
63
69
105
64
28
68
77
41
126
89
111
94
80
60
73
29
97
70
93
64
120
47
58
66
54
75
72
43
89
42
63
86
73
62
91
84
32
99
101
74
97
121
58
119
66
83
85
113
72
73
57
62
60
62
76
46
117
68
99
87
115
61
56
128
51
96
71
64
165
54
102
81
52
87
91
77
86
114
85
96
75
50
77
40
99
118
82
143
67
70
61
84
39
93
49
55
113
42
71
96
106
116
78
42
86
81
104
87
42
85
62
56
70
102
93
85
68
76
88
60
65
75
55
84
69
90
47
59
80
84
84
66
86
114
81
48
104
79
101
84
42
49
96
48
67
123
75
47
80
68
79
63
92
73
119
81
101
84
50
95
76
81
60
119
81
48
83
97
62
88
68
69
81
94
66
108
156
98
37
136
87
88
56
61
97
87
81
71
45
119
98
51
93
45
60
63
104
83
105
78
83
90
75
82
73
95
100
88
85
45
67
59
78
93
105
58
37
73
76
79
73
101
120
27
37
75
79
83
107
93
110
48
89
108
77
87
35
84
63
113
69
68
63
87
26
53
88
82
54
37
59
50
82
102
55
72
91
68
53
47
51
54
95
76
92
55
70
85
48
94
103
57
76
60
88
44
81
70
73
11
65
59
34
99
83
85
97
91
100
69
50
65
41
128
52
177
73
60
80
54
80
56
52
70
81
70
91
61
122
47
79
75
106
83
101
127
74
82
112
64
80
79
81
95
68
80
80
102
69
74
87
81
66
78
50
82
59
100
130
69
108
90
90
54
86
113
33
113
79
99
143
68
39
62
40
87
72
114
74
90
68
69
57
73
84
82
78
68
57
48
75
54
53
74
128
53
85
93
66
125
91
56
55
57
43
30
52
54
80
83
95
66
88
90
124
91
72
96
95
60
92
50
151
52
71
40
73
73
87
73
84
65
89
128
58
65
79
68
63
66
77
76
95
59
123
98
49
121
101
43
64
97
81
93
66
75
56
74
69
74
65
35
105
79
54
87
58
63
51
84
63
60
95
87
59
121
73
50
53
48
78
63
58
99
58
60
67
72
82
64
59
77
51
114
91
81
47
34
55
75
98
72
133
51
83
39
63
53
105
81
107
35
73
58
52
86
57
65
59
123
66
76
50
51
62
112
148
72
27
68
78
50
103
44
66
97
73
47
119
63
58
87
85
67
74
111
77
94
88
116
53
65
57
88
70
86
102
116
48
104
46
103
37
53
55
93
60
90
99
80
99
67
94
70
57
107
48
64
58
65
83
54
45
69
75
61
93
54
82
59
107
74
128
114
79
82
83
106
49
44
58
64
136
98
134
58
63
77
104
34
40
106
89
125
46
76
99
73
75
104
48
65
98
74
78
100
98
83
84
37
85
84
96
79
92
59
66
55
55
49
52
52
78
74
38
39
93
76
113
74
81
82
38
45
85
84
53
60
110
27
101
47
66
104
109
61
128
98
39
75
80
54
81
104
82
68
66
109
73
45
67
95
75
59
102
52
118
62
83
38
97
108
72
114
96
47
40
43
49
86
99
80
45
112
114
63
100
76
100
112
72
97
81
72
86
76
68
89
64
78
104
81
124
31
121
86
81
63
66
44
68
61
156
63
96
88
90
51
177
81
73
112
47
67
73
79
87
40
106
94
77
73
78
58
50
83
58
94
62
93
65
76
47
66
58
36
109
78
59
63
69
98
103
81
86
63
58
90
106
88
148
54
108
81
92
63
96
109
77
60
75
52
81
100
62
86
62
80
54
35
95
77
61
66
77
49
61
52
63
57
127
85
36
59
56
47
81
53
79
85
113
80
83
55
87
53
53
96
95
77
147
57
70
74
92
36
45
105
50
48
90
48
105
63
116
90
60
119
42
101
49
106
73
59
71
106
71
103
101
48
108
114
98
62
78
96
53
106
39
59
92
102
54
57
93
47
31
68
91
91
37
65
90
127
86
134
111
65
69
57
67
47
82
87
85
123
79
116
63
66
70
87
87
119
102
59
71
81
63
87
71
49
115
45
93
121
50
92
88
135
62
96
66
83
63
96
153
108
80
109
97
86
83
71
71
85
76
82
69
65
104
52
112
108
61
31
63
77
60
111
39
92
119
81
91
53
82
74
49
59
77
45
55
83
86
75
31
78
95
141
66
57
64
47
104
42
103
110
82
63
77
43
93
48
84
64
84
125
51
77
82
45
109
59
162
70
65
74
34
131
44
153
119
127
54
69
67
84
89
74
139
58
77
61
72
63
81
35
73
70
81
120
68
87
59
94
102
44
50
66
60
92
71
122
77
63
49
87
79
113
90
43
59
62
118
135
86
72
53
90
42
76
78
82
37
90
67
36
72
49
59
51
75
74
53
79
92
94
54
60
85
63
53
70
67
78
101
86
74
68
121
99
57
51
82
58
133
50
101
36
55
44
77
54
60
69
48
66
93
83
53
77
68
47
62
81
97
87
95
110
50
92
79
69
97
68
66
107
72
45
83
108
83
66
85
75
108
56
63
83
57
91
186
103
61
131
77
81
38
86
55
88
87
108
55
69
79
79
130
85
65
51
39
63
95
83
90
110
63
116
76
39
94
91
103
62
59
53
87
66
123
69
102
93
89
94
114
89
46
30
88
80
85
112
41
67
129
93
60
101
54
59
124
98
122
48
55
35
59
46
88
169
117
60
47
58
71
53
106
67
57
72
95
98
83
64
78
80
67
55
55
123
131
82
97
99
42
65
63
80
102
55
94
63
38
97
53
107
83
142
71
58
85
43
37
71
81
89
88
35
70
85
68
48
57
89
45
91
74
87
70
117
77
69
39
84
98
129
115
93
108
56
78
60
88
50
88
78
44
35
78
104
108
54
103
66
85
97
59
50
75
114
102
93
55
70
61
51
33
76
93
102
42
64
56
86
85
67
57
42
88
80
42
43
89
90
108
68
67
72
92
62
149
55
55
68
100
146
102
108
77
106
93
57
72
55
61
79
129
58
78
68
71
78
83
78
64
107
72
34
44
93
95
64
81
86
66
66
52
59
68
91
59
96
83
76
97
47
63
84
116
112
45
55
45
62
50
72
66
82
103
39
49
56
62
97
78
71
110
58
105
40
96
102
72
70
51
104
89
118
91
62
105
83
43
61
109
66
74
76
92
75
96
64
78
81
81
55
71
88
97
36
112
63
62
53
62
30
85
69
58
56
105
60
58
64
81
135
67
32
50
56
54
47
107
81
121
101
93
101
101
70
89
72
42
68
75
125
105
86
85
112
38
101
73
68
91
63
122
52
47
137
62
232
76
72
110
134
93
118
76
71
82
78
152
57
84
107
59
57
85
60
163
60
90
124
90
99
51
84
108
109
72
101
64
70
130
53
55
39
77
70
56
39
125
89
89
86
61
39
106
81
60
57
54
85
63
130
74
52
72
65
83
72
80
83
40
113
72
118
74
58
130
99
60
50
135
72
107
38
49
119
76
65
110
40
87
136
61
49
95
120
107
116
83
44
73
120
118
71
94
79
169
100
61
106
104
66
79
113
64
108
70
54
78
121
55
78
46
75
74
68
59
87
128
83
82
100
56
96
44
51
69
39
92
68
91
71
68
101
124
71
43
38
44
139
61
69
90
44
143
83
73
44
127
141
101
75
141
106
59
57
39
53
88
46
72
34
114
52
84
49
65
44
55
141
105
74
62
70
85
81
130
112
119
54
117
114
100
87
98
58
84
74
98
125
48
47
73
90
75
67
27
83
108
82
43
69
99
103
42
71
120
63
87
81
105
63
61
94
54
108
75
97
50
61
57
99
113
106
67
57
77
91
39
77
104
40
80
67
63
98
64
47
58
72
64
86
86
67
61
102
87
80
55
35
50
65
55
50
60
105
86
85
54
58
87
143
64
148
98
65
62
59
60
57
51
69
44
66
176
86
117
59
87
81
42
108
78
94
62
105
110
96
116
106
111
59
80
85
125
102
73
95
75
123
87
52
113
100
135
110
71
117
46
64
109
55
99
67
57
37
73
45
110
70
68
71
87
61
60
85
59
80
82
50
79
99
115
109
72
80
66
44
95
113
75
58
116
51
76
72
36
66
59
92
49
81
64
44
58
103
110
49
74
57
75
106
44
121
50
31
97
55
79
100
54
105
68
47
79
74
98
78
52
77
66
62
98
86
118
71
65
72
87
73
51
87
56
92
77
63
63
54
89
81
85
113
61
86
85
92
73
104
70
116
42
40
70
75
74
89
91
65
59
69
93
44
53
104
38
69
77
69
72
54
83
109
47
47
59
83
89
102
68
84
108
142
61
61
92
100
67
45
77
111
45
70
38
119
95
80
59
80
94
66
92
122
78
131
69
87
44
54
97
128
71
111
72
85
100
36
101
66
93
107
48
56
53
78
111
45
72
66
81
103
33
55
74
82
50
98
72
76
83
77
53
137
78
73
67
66
69
88
136
47
75
97
34
59
77
81
92
81
67
72
97
71
57
82
68
100
69
145
125
88
42
85
95
93
46
86
83
88
99
65
64
63
71
69
85
44
91
66
72
51
43
38
94
91
45
86
48
44
80
51
76
86
54
70
82
75
28
71
61
64
61
42
87
109
59
76
68
92
77
55
73
45
84
60
136
142
89
55
62
99
77
48
43
100
54
55
89
73
69
79
74
62
41
95
108
99
59
118
104
56
90
91
117
75
59
49
70
75
50
92
45
90
86
48
75
66
73
83
85
156
72
53
70
74
80
92
81
72
101
117
51
92
76
48
97
108
45
108
108
95
39
88
56
91
63
53
61
93
50
76
53
80
106
66
44
42
106
86
176
72
76
74
94
95
36
67
108
56
52
95
82
35
97
143
72
78
45
66
84
76
68
75
47
35
41
47
52
74
51
116
94
52
72
68
88
88
44
60
94
135
85
55
73
82
85
33
34
110
86
74
66
143
140
74
98
87
88
81
43
111
95
55
88
128
119
108
83
63
90
102
75
154
143
40
72
77
68
79
133
79
74
65
37
56
75
46
141
49
81
64
40
81
77
61
57
112
59
107
107
81
94
53
90
90
71
76
37
71
76
27
73
89
104
78
120
78
48
105
48
39
77
102
67
103
97
47
76
87
79
56
56
92
56
173
93
80
84
105
75
53
77
85
47
92
98
68
60
89
91
71
122
85
56
137
55
101
76
100
53
78
79
69
66
105
69
110
50
62
81
103
71
77
88
85
92
66
62
92
58
59
72
125
71
83
93
70
128
143
63
113
49
108
115
74
102
119
50
106
68
93
78
125
73
73
55
61
76
84
62
67
48
71
106
40
86
107
232
90
49
58
95
43
49
50
55
66
42
89
90
97
72
81
62
93
24
65
32
77
91
70
96
75
123
92
67
77
46
74
92
63
90
73
49
40
85
62
50
75
73
76
68
102
72
47
86
71
60
60
37
31
106
85
70
80
83
121
94
68
76
56
78
100
70
72
68
74
67
43
42
56
77
80
64
44
151
64
73
54
135
49
55
53
72
126
44
56
55
111
110
27
101
97
94
81
84
58
66
82
74
34
55
92
56
67
68
79
51
85
37
100
31
59
151
55
112
57
101
82
55
64
70
46
65
69
66
67
176
104
64
96
99
57
81
59
64
73
71
63
64
102
100
56
47
58
74
64
45
107
35
56
71
100
143
43
62
53
90
41
100
60
48
63
33
111
55
93
72
90
79
56
116
80
89
117
62
87
81
53
77
81
28
82
38
41
93
93
48
52
71
89
68
93
75
69
64
93
90
122
54
121
57
66
75
79
59
90
69
87
83
60
73
81
64
68
47
86
33
72
52
87
57
65
52
62
53
82
68
102
67
59
89
77
67
83
40
148
66
89
53
56
79
62
31
48
46
50
119
66
94
73
48
51
89
94
126
45
92
90
83
62
71
95
78
95
93
74
49
73
97
70
94
95
67
56
106
79
119
62
76
93
72
58
38
49
59
117
60
39
87
124
89
93
75
138
103
155
111
89
56
51
70
86
119
132
77
84
56
71
76
55
47
47
64
68
105
122
69
94
44
74
78
109
48
71
51
66
70
98
51
79
59
101
115
55
57
70
104
88
68
95
47
79
62
75
106
58
111
101
80
53
64
67
77
64
77
86
70
72
92
60
68
111
80
65
48
81
50
121
55
106
57
67
92
100
70
40
41
72
44
45
73
65
98
87
88
57
42
66
54
134
75
80
108
87
77
61
92
89
64
88
68
111
90
176
79
119
109
53
109
76
40
60
52
61
78
117
98
75
90
88
52
69
66
72
59
63
51
52
51
105
117
33
87
78
103
78
96
64
88
90
102
115
55
86
96
49
100
56
55
98
81
91
142
43
67
36
77
108
134
74
92
51
96
77
87
138
94
67
103
79
65
70
81
56
104
62
74
78
50
52
136
110
87
97
101
64
47
132
57
103
62
73
59
48
74
92
98
78
95
49
120
60
105
103
174
79
73
65
49
79
82
134
81
104
112
93
55
92
84
95
34
129
66
87
64
112
83
84
83
41
86
59
56
98
30
142
62
44
190
74
42
122
82
110
121
63
105
82
48
74
116
65
74
74
83
46
115
70
98
43
45
84
87
79
50
55
91
74
68
64
82
111
42
51
86
44
72
58
46
109
70
65
51
84
32
77
60
98
61
49
83
129
66
22
80
97
89
91
43
64
106
94
111
55
45
74
75
49
87
84
123
73
120
129
49
91
130
87
62
72
127
51
125
49
77
99
70
87
77
113
63
97
53
114
82
83
69
71
92
66
105
69
67
88
77
67
77
50
72
68
121
83
69
56
72
50
117
68
71
80
60
49
81
50
58
74
60
77
41
42
74
61
65
60
148
155
110
64
73
75
52
58
52
60
93
75
79
52
91
101
63
70
61
70
43
78
86
84
78
119
43
107
93
49
65
83
71
50
105
99
68
53
33
68
54
71
63
65
95
79
96
79
45
62
87
81
77
62
53
33
76
104
90
69
80
61
95
60
49
89
81
80
75
83
143
67
81
98
41
81
46
47
92
105
95
105
74
55
58
37
61
102
48
95
36
65
86
65
68
50
103
82
46
46
81
64
50
107
59
91
60
153
102
90
62
105
63
55
75
62
89
91
90
140
53
107
102
54
105
63
92
92
71
54
132
95
153
46
172
31
78
78
69
97
116
74
62
190
30
44
43
94
55
94
54
79
66
55
116
69
63
49
46
74
71
130
103
83
65
70
84
82
58
111
46
62
48
101
106
88
95
49
80
48
97
101
63
123
100
89
63
62
81
84
92
60
103
87
59
91
56
52
109
90
33
66
54
109
95
75
90
133
96
59
88
61
75
84
79
101
89
155
120
67
96
56
39
87
57
52
65
77
73
92
116
76
97
31
134
109
74
107
73
61
84
108
76
67
62
71
70
75
73
87
101
53
109
135
50
62
72
86
63
53
100
99
102
41
55
43
80
52
86
76
79
76
49
60
82
59
99
62
93
60
38
59
72
57
80
65
92
100
162
41
92
41
120
70
85
97
76
60
69
67
73
84
91
87
102
62
91
97
86
81
42
95
82
66
105
83
72
94
35
141
71
45
99
80
43
78
89
53
119
62
85
60
70
65
63
87
58
57
61
88
120
144
94
64
58
164
52
82
91
48
50
42
71
58
85
85
116
67
87
86
71
58
46
106
100
95
92
40
60
63
98
133
39
52
73
76
105
69
106
72
62
74
62
42
45
101
121
105
73
47
110
52
86
97
125
107
77
71
48
115
65
93
135
95
103
94
84
64
107
70
57
77
38
63
114
57
71
57
56
96
92
54
59
103
109
90
43
70
96
82
69
175
46
78
72
37
102
52
85
79
73
103
76
55
111
77
56
51
85
78
51
98
51
54
40
80
31
73
69
39
77
84
95
96
87
110
74
87
96
69
82
96
106
110
91
104
80
87
116
55
160
60
70
136
62
154
148
116
143
68
71
72
84
59
70
85
101
64
79
73
68
89
76
62
72
86
104
93
99
74
42
75
61
41
108
77
38
104
68
110
73
81
68
51
55
65
177
83
160
91
48
106
43
74
70
124
82
96
76
84
70
93
77
96
65
89
92
74
67
91
73
71
91
65
88
59
95
66
51
120
71
73
52
63
96
82
56
103
72
103
56
74
73
48
87
61
77
62
133
157
102
50
103
107
65
43
82
64
92
48
78
81
61
57
80
74
140
92
108
79
136
95
53
75
89
79
80
47
88
61
40
88
86
63
69
104
67
72
87
101
175
98
95
80
82
59
65
155
144
84
106
83
100
67
55
84
104
91
56
72
44
95
131
61
87
57
105
99
81
58
123
72
65
86
37
79
82
117
67
88
97
99
71
82
105
124
69
85
108
120
97
97
96
74
58
35
73
83
73
84
96
51
88
92
104
107
114
66
61
137
107
54
54
95
90
90
39
67
79
72
81
114
88
67
68
78
45
63
74
67
76
66
51
38
65
89
131
57
77
164
129
72
88
49
125
68
91
75
37
61
56
90
31
74
57
97
79
106
103
130
83
62
70
68
85
123
38
72
73
106
88
58
85
57
77
59
55
37
119
151
42
38
61
78
46
73
50
56
88
61
44
60
87
43
67
33
80
117
85
63
110
57
75
101
42
67
32
37
77
65
52
80
60
58
92
44
43
40
90
75
38
68
79
45
58
65
84
78
91
72
100
124
80
84
82
37
55
75
72
73
54
88
58
78
106
31
56
81
44
112
72
66
44
71
79
108
93
58
82
45
55
44
63
90
58
46
58
50
91
78
49
63
60
71
74
78
108
51
56
148
70
23
118
85
104
135
71
49
129
80
130
42
88
121
58
67
62
97
118
83
88
108
90
87
117
72
73
75
80
106
99
97
70
70
135
59
83
105
89
56
85
105
67
101
84
66
60
83
63
83
71
72
42
54
134
129
51
44
62
61
53
93
56
42
67
47
97
99
58
87
61
39
125
80
65
41
51
57
82
77
107
70
71
73
91
96
93
64
45
67
90
66
98
70
107
68
70
61
92
76
50
55
105
90
66
68
57
95
88
104
60
76
61
112
64
63
64
130
72
77
132
145
73
76
60
80
79
83
102
54
54
71
89
77
79
67
39
65
96
78
86
56
137
74
43
117
84
101
38
64
63
110
56
110
114
89
80
59
52
86
52
67
98
41
80
59
103
88
72
102
31
99
56
61
80
118
62
44
57
59
92
107
80
89
83
61
110
56
39
62
73
47
84
73
81
63
59
110
131
55
59
135
57
40
77
55
83
70
60
56
129
127
114
83
132
58
37
79
114
101
91
46
49
86
76
117
93
82
87
77
26
52
90
71
74
90
52
114
121
49
71
109
55
66
58
119
50
38
67
102
66
111
75
91
83
59
64
54
71
78
97
88
114
72
123
55
52
74
49
71
75
113
39
97
77
131
78
79
80
41
73
60
103
55
67
49
83
78
45
65
66
93
41
67
83
70
96
106
81
145
33
51
56
55
50
63
76
56
85
93
83
91
101
71
77
84
161
53
92
62
95
81
54
46
111
74
65
63
83
139
71
72
69
81
75
56
102
70
69
98
95
61
46
150
70
64
56
61
36
72
78
108
63
56
57
52
65
76
65
95
85
47
78
102
73
111
127
94
96
101
86
62
90
112
78
58
69
70
77
100
108
54
57
72
74
72
63
90
50
51
99
76
89
47
66
89
90
116
74
93
88
100
49
72
53
71
39
86
89
66
94
86
93
63
37
52
77
67
68
53
102
88
86
101
64
83
94
90
77
57
172
96
105
56
59
173
64
112
71
62
94
99
71
113
133
107
71
84
47
105
56
65
100
118
54
63
76
114
37
76
66
98
93
53
100
64
82
73
105
57
128
43
82
66
93
89
37
106
71
56
55
70
53
51
72
95
76
56
61
58
90
86
58
53
84
101
59
46
68
55
104
92
43
78
109
76
78
102
57
93
71
85
62
38
92
115
68
120
79
70
72
46
61
75
88
127
39
77
136
46
71
63
44
102
90
69
75
91
121
58
68
89
59
79
49
87
71
78
68
71
70
75
54
86
47
85
92
80
56
32
86
88
83
46
104
60
58
91
128
74
75
75
71
81
49
64
110
50
91
65
115
99
54
82
71
73
75
76
31
60
98
65
53
153
86
72
82
48
87
108
88
101
87
95
102
32
104
133
84
72
98
89
53
43
69
49
73
49
46
38
51
86
142
39
113
54
47
91
68
97
109
109
61
107
56
66
43
51
99
105
59
61
105
116
108
86
98
87
85
86
66
40
101
119
86
70
70
73
118
140
46
86
50
76
82
67
36
95
46
92
105
59
85
62
36
81
57
48
132
77
62
23
40
88
76
68
57
38
73
100
90
59
112
69
111
92
53
66
80
47
64
129
144
36
74
106
86
91
50
57
70
55
98
52
88
82
87
76
53
79
46
77
108
140
47
93
61
73
52
86
84
90
71
62
36
87
65
108
64
76
105
102
55
49
122
103
76
115
93
80
93
78
41
80
113
60
90
44
98
39
64
53
55
101
42
101
78
94
88
46
108
99
69
68
115
70
105
46
45
62
80
48
69
111
64
33
85
60
122
49
86
128
102
103
46
118
62
84
64
68
109
69
64
91
23
78
71
66
38
93
83
102
77
126
101
82
64
79
99
80
91
98
88
142
68
109
75
54
63
63
90
51
102
82
94
113
78
114
80
87
72
104
76
101
96
83
136
61
68
75
68
108
93
71
81
135
70
77
40
95
78
83
98
89
67
130
97
98
45
67
76
68
65
80
58
99
33
94
60
56
70
109
28
36
39
99
76
61
109
53
92
107
35
77
90
53
39
72
129
103
100
83
85
54
44
50
33
79
114
116
88
111
67
108
50
73
120
58
129
127
80
91
51
137
58
77
77
54
104
88
36
79
86
81
76
49
48
72
144
116
52
114
76
74
124
68
116
100
77
55
86
94
61
109
91
131
56
90
44
60
51
56
82
48
72
75
71
81
44
87
97
96
75
86
69
56
71
97
94
101
54
43
119
165
89
81
108
57
95
45
95
87
81
68
84
99
135
91
82
61
58
79
101
76
60
89
90
94
51
86
79
107
61
89
97
71
91
71
30
64
61
77
62
89
98
57
81
81
119
38
52
65
65
73
81
85
76
106
53
150
89
81
39
90
56
77
95
119
110
99
84
62
64
82
73
51
69
64
87
68
82
120
54
75
58
81
69
112
64
53
52
116
109
87
118
78
106
64
46
94
68
69
60
112
62
32
97
101
120
106
88
54
100
35
84
46
84
41
98
76
82
96
86
63
52
49
42
133
39
62
82
99
76
116
53
94
75
75
86
125
76
113
80
102
79
59
94
33
65
96
83
38
70
75
72
30
79
64
51
58
59
62
79
94
53
86
61
111
87
85
68
133
25
103
58
109
57
75
43
44
76
87
67
76
98
52
106
99
82
78
51
80
57
130
62
67
76
91
76
80
113
65
80
77
86
42
67
69
98
64
65
89
94
110
82
26
54
96
81
42
51
53
74
72
59
71
97
59
62
68
51
73
72
52
144
66
78
50
36
119
134
79
126
104
68
109
81
98
104
81
68
182
90
86
35
63
59
36
72
70
57
75
85
103
111
33
147
133
79
84
88
74
99
93
125
48
124
36
126
52
63
49
93
98
79
133
82
91
123
28
61
147
85
42
84
80
96
73
94
67
80
95
55
83
75
75
116
129
36
135
103
82
78
62
73
114
75
36
81
129
70
100
89
90
75
41
67
100
48
60
81
64
97
93
87
83
77
44
134
79
123
83
106
108
149
121
80
90
77
56
48
44
55
59
63
64
44
87
73
105
82
75
73
83
94
81
37
48
79
51
85
68
112
96
59
62
54
134
80
81
73
70
89
91
61
81
109
84
54
58
72
96
75
55
56
103
83
103
91
150
117
114
83
68
112
80
95
89
64
81
104
54
43
64
93
128
72
107
108
54
41
47
97
38
71
75
55
94
75
71
83
63
71
88
49
78
60
52
57
36
50
36
75
97
46
69
98
63
53
81
60
57
91
98
85
71
64
67
77
86
118
89
88
125
87
102
117
137
111
64
90
152
80
142
84
66
56
81
86
76
36
130
86
99
65
74
112
62
113
55
65
75
108
120
79
82
91
134
71
39
90
57
47
63
103
35
89
72
60
108
120
81
71
88
63
51
124
57
93
70
82
44
27
80
78
82
100
89
118
81
48
80
67
106
104
51
69
76
95
49
91
70
54
84
46
46
79
98
54
78
90
98
64
86
68
128
60
90
51
90
75
73
44
62
113
59
76
100
97
125
72
100
112
95
91
58
26
28
46
78
97
58
36
69
77
68
83
82
106
72
71
103
50
110
81
143
53
61
52
102
96
38
76
39
33
41
47
83
91
110
56
134
90
86
105
74
73
39
83
106
77
80
55
113
38
121
69
103
126
64
83
82
71
74
107
78
71
49
59
98
106
79
65
99
56
46
130
92
80
40
115
155
70
75
43
44
98
73
58
76
36
66
70
55
62
46
45
78
75
135
56
110
70
90
62
98
87
83
73
61
87
79
85
49
77
126
96
86
62
101
71
86
67
65
93
110
76
50
49
66
56
82
127
75
55
57
82
123
47
66
68
89
111
89
62
115
61
71
78
33
55
33
102
70
84
104
79
75
79
77
73
101
77
65
113
47
90
42
89
95
142
93
76
66
107
81
84
59
69
71
64
79
36
94
68
48
106
94
87
46
101
110
64
42
103
40
83
98
63
143
43
96
67
31
61
68
89
106
39
67
40
69
58
102
78
95
85
65
80
56
122
43
117
93
74
85
84
24
113
81
67
77
90
148
79
81
72
77
119
39
125
125
56
100
114
88
116
48
88
114
96
63
65
95
69
90
56
33
62
64
130
62
59
80
67
50
54
81
125
53
166
58
72
90
49
79
43
111
53
89
41
73
39
61
183
90
90
112
40
79
46
124
64
53
94
43
84
56
102
75
82
46
52
39
82
57
133
55
69
50
90
61
103
94
90
36
102
100
75
89
86
80
129
66
79
45
83
64
95
42
97
107
75
60
56
51
64
53
114
59
145
40
65
108
84
133
65
90
116
86
84
46
106
75
112
63
76
74
124
117
94
62
66
47
136
95
47
45
97
72
82
35
77
70
79
69
83
71
117
86
46
86
85
50
58
99
86
66
82
41
50
150
80
69
96
72
67
59
83
96
89
94
98
94
53
79
68
95
136
47
32
98
130
60
41
86
73
98
69
75
79
88
88
68
75
94
40
47
56
53
93
81
64
115
72
71
72
87
105
59
91
69
30
97
95
103
55
61
84
81
93
62
79
64
69
94
105
81
52
62
77
76
60
83
44
73
83
100
59
74
141
98
146
49
77
75
60
85
63
103
95
108
76
56
35
17
108
49
93
53
94
111
80
100
31
62
89
48
95
79
80
82
85
163
96
52
78
74
113
104
80
121
43
61
74
78
49
61
53
81
109
75
57
46
62
158
53
91
61
178
80
113
80
53
69
85
115
88
119
63
84
87
62
72
49
62
53
109
67
34
68
102
65
120
72
68
76
104
52
66
55
88
70
120
62
92
74
93
80
115
66
43
65
131
68
61
63
57
74
52
34
79
93
72
56
118
75
58
73
154
121
56
108
59
76
105
73
48
72
102
42
84
53
105
81
68
73
54
39
78
117
65
70
50
66
100
55
77
67
79
67
95
29
34
109
121
61
108
52
107
75
46
62
33
109
45
76
64
53
73
66
71
71
54
43
52
67
61
71
114
60
128
110
112
92
37
131
120
101
81
66
94
98
109
77
59
85
106
79
47
55
103
80
38
64
41
74
79
87
76
66
133
64
42
49
141
115
97
38
72
85
53
97
78
81
56
57
55
107
75
86
27
68
111
108
73
76
90
53
55
55
59
80
109
84
81
42
88
78
68
108
75
84
143
37
33
116
58
122
81
63
65
62
138
82
71
80
78
68
127
75
38
104
103
35
63
86
99
122
170
88
111
104
97
143
66
64
157
59
108
128
153
60
56
58
69
76
55
50
97
68
46
64
95
86
57
84
47
85
113
87
62
124
54
79
53
71
70
52
68
160
89
100
86
77
115
80
144
26
98
56
105
72
54
156
87
77
50
105
79
87
107
83
52
140
67
128
72
82
97
74
63
80
61
87
100
85
136
68
49
54
64
31
56
79
91
66
86
119
117
89
65
144
78
61
170
44
123
78
68
108
125
58
79
68
137
46
130
87
70
116
100
73
47
83
99
62
70
93
49
109
102
63
95
75
51
85
100
104
138
53
84
92
80
60
81
92
62
87
56
56
55
123
51
118
72
59
78
86
65
54
46
45
56
108
81
87
119
103
39
113
58
83
120
71
97
66
60
64
84
33
82
124
80
85
96
60
117
49
78
98
105
106
96
108
81
68
89
61
64
71
136
92
72
101
164
84
88
89
79
77
111
108
73
77
64
44
98
86
119
86
98
81
71
62
82
68
74
135
37
59
70
151
96
54
81
80
102
101
53
47
88
114
71
136
84
66
105
83
80
106
116
73
78
100
146
52
87
84
109
84
76
38
55
96
45
66
65
129
77
108
98
43
37
57
56
78
112
115
64
104
80
76
72
73
31
48
61
29
70
35
111
131
117
58
86
57
50
87
60
36
97
117
72
55
71
86
82
90
75
106
68
66
65
75
39
51
114
134
71
68
45
66
94
81
97
51
37
78
62
51
66
82
62
119
49
40
57
69
99
94
65
87
51
55
83
81
96
67
84
71
75
57
112
109
30
79
56
84
71
75
56
83
54
60
50
40
80
83
30
87
106
70
76
67
87
88
71
41
110
96
66
107
96
89
49
85
114
45
56
71
78
117
63
77
63
43
77
54
95
78
156
91
45
78
94
96
39
53
70
138
95
79
106
65
132
107
50
93
74
81
70
120
109
72
73
87
67
68
56
84
50
92
97
58
186
69
31
112
55
66
125
105
105
95
91
54
55
77
62
56
127
61
28
69
84
77
66
112
109
125
59
40
86
72
71
105
52
96
68
86
91
34
94
60
73
71
51
60
52
122
33
70
49
113
74
59
98
50
77
110
100
77
69
50
88
86
90
80
70
86
33
52
84
66
101
74
130
67
80
76
44
113
62
57
53
108
87
42
83
59
29
123
72
58
58
83
120
87
64
137
127
120
58
48
93
52
69
77
58
75
86
110
39
67
49
69
63
71
66
125
83
50
111
45
62
64
88
62
98
65
37
60
128
102
70
89
86
56
67
94
67
124
96
63
107
68
65
73
61
84
66
49
82
82
87
50
44
95
80
29
118
64
59
54
97
37
63
75
119
66
115
75
52
77
165
89
61
115
104
71
75
95
52
61
51
77
63
97
61
110
67
60
66
48
47
74
89
58
90
128
29
86
28
76
69
69
62
37
80
38
52
88
92
119
101
96
58
78
77
111
87
73
73
149
86
45
106
108
122
76
37
75
70
73
85
60
62
98
94
117
77
83
54
75
71
97
77
61
155
38
50
71
88
70
68
37
102
93
110
71
129
39
82
51
43
102
84
158
106
39
174
55
70
56
108
91
70
42
101
70
106
45
50
94
56
58
49
82
108
89
76
65
71
63
74
57
68
62
126
101
83
144
108
56
60
108
59
77
90
135
82
34
89
64
62
41
86
89
92
49
81
86
102
34
126
83
82
84
85
84
96
42
80
59
85
87
89
81
65
67
53
88
68
80
80
52
84
99
98
158
39
159
66
60
67
86
84
98
104
55
62
91
74
73
77
44
46
121
47
47
101
87
96
102
84
85
91
45
64
88
85
48
89
85
37
41
39
85
60
76
137
65
125
76
76
47
64
51
90
88
134
57
79
168
65
89
43
66
111
71
43
66
71
83
88
83
112
83
58
89
73
87
84
48
94
82
59
35
73
45
78
97
129
91
113
89
108
106
60
68
40
108
38
94
73
75
45
110
75
84
103
150
106
92
60
73
91
137
60
49
93
58
127
64
84
90
63
84
81
99
86
89
93
62
91
81
95
98
72
77
65
118
89
68
47
40
103
57
69
93
74
77
83
73
42
52
49
114
66
50
73
111
62
115
99
64
64
102
76
105
77
101
91
66
101
87
58
39
82
81
59
38
110
65
122
74
35
60
52
59
79
140
73
75
100
114
117
108
90
64
71
92
108
48
90
65
79
93
70
39
102
78
48
71
42
83
42
49
53
63
64
25
99
49
69
80
68
29
90
71
57
73
93
109
48
59
63
66
61
82
70
99
38
83
109
59
60
91
48
99
75
137
120
79
54
100
56
69
119
50
66
141
67
48
52
64
54
71
67
74
72
51
62
70
87
33
88
94
101
181
28
72
82
62
97
54
51
77
48
50
99
66
108
85
63
56
58
48
74
52
91
68
89
71
79
108
69
80
91
50
82
106
146
38
79
93
82
109
66
65
85
122
67
85
33
33
34
94
47
95
65
79
121
114
56
62
79
58
40
94
116
96
77
73
45
88
61
83
119
68
71
143
36
129
77
74
62
63
60
110
72
48
52
68
68
65
61
93
73
60
82
74
92
55
55
90
39
98
51
87
84
71
79
62
73
90
50
94
94
68
74
62
84
95
87
102
105
102
96
98
74
87
83
46
84
62
91
29
75
68
82
79
25
65
82
102
64
169
118
118
78
85
74
65
82
80
69
92
98
74
59
50
154
90
124
111
81
101
34
79
106
109
91
44
71
82
82
48
141
91
88
139
35
101
39
88
96
47
48
89
73
106
74
32
112
71
99
138
51
67
63
52
158
52
53
59
95
110
85
68
29
54
83
50
74
110
114
54
80
86
52
44
97
77
65
58
116
114
52
84
127
54
47
87
81
49
66
56
45
79
88
71
56
65
50
69
105
140
96
107
54
93
74
57
83
36
71
63
48
69
101
68
134
82
72
121
90
70
93
97
87
55
105
40
73
84
131
31
94
95
68
99
36
69
64
96
55
125
48
78
90
93
75
48
52
64
118
78
112
94
70
79
93
71
89
59
97
79
70
92
79
94
91
105
81
49
104
96
87
64
85
81
115
63
135
48
104
88
100
64
54
55
96
67
48
76
99
108
92
45
43
103
79
73
49
124
77
96
87
65
95
46
88
94
70
83
67
106
84
96
79
45
56
76
73
97
90
58
69
112
105
71
89
33
127
53
105
74
87
88
72
86
37
41
117
145
65
83
28
110
105
86
74
72
71
79
86
51
84
51
71
62
79
64
58
90
55
97
95
38
58
82
78
126
85
44
77
48
75
54
115
33
98
107
75
124
81
81
54
68
70
39
86
54
78
97
47
100
56
67
70
73
83
65
33
34
69
73
86
124
93
138
95
70
80
75
77
65
98
106
60
131
105
99
108
48
119
106
70
87
44
52
94
52
44
52
57
84
87
77
52
59
73
69
55
79
81
101
88
55
65
42
112
73
53
93
53
69
18
86
53
53
66
75
66
52
91
91
56
42
88
97
95
83
90
52
126
109
87
65
67
111
35
52
59
52
67
68
51
90
62
75
66
86
79
71
71
57
57
79
65
42
101
115
132
107
58
85
59
131
60
77
89
69
115
91
81
84
106
124
64
50
91
52
115
82
46
65
45
63
85
74
62
102
73
55
95
51
29
37
82
92
68
30
85
51
50
80
67
60
62
48
108
69
58
66
59
59
62
86
80
95
88
77
50
45
72
73
96
52
62
102
96
59
72
60
98
91
40
98
69
53
39
57
84
60
48
42
96
104
73
93
48
99
44
70
45
100
96
77
69
124
48
67
62
86
79
137
86
77
106
91
80
140
68
78
103
93
75
55
83
56
163
64
42
111
53
53
101
108
75
71
70
83
59
74
85
79
86
43
80
60
59
128
76
87
75
67
90
42
103
97
101
81
98
83
112
116
90
131
63
108
59
51
99
58
62
60
68
80
125
60
73
98
72
78
81
70
46
82
87
72
72
102
51
61
66
133
53
81
99
68
61
43
43
91
66
106
64
49
63
41
58
41
168
101
86
59
108
67
82
48
36
92
54
47
105
88
85
59
63
42
35
97
81
51
109
88
76
84
50
94
58
42
73
45
83
67
77
96
89
78
149
65
67
33
58
152
90
56
102
100
101
48
57
105
61
94
67
52
58
48
69
36
66
91
87
62
126
68
159
68
103
61
96
72
83
108
64
111
70
47
32
50
90
154
65
54
62
99
71
88
53
65
88
86
62
108
84
65
64
49
74
55
79
81
49
56
58
70
42
85
38
53
74
118
56
62
87
107
45
64
58
78
84
68
78
87
87
73
103
75
105
85
117
41
89
54
68
71
66
84
77
72
87
67
33
101
73
62
58
60
82
70
51
91
62
75
66
52
72
67
129
104
114
76
118
113
92
46
70
135
81
118
56
45
110
69
74
77
87
69
93
89
54
63
67
106
165
60
83
54
86
58
79
111
112
73
111
79
69
69
87
63
36
50
57
61
80
67
63
93
57
87
52
50
136
79
72
116
72
44
57
64
29
45
77
46
67
37
62
117
99
59
50
90
60
113
55
107
56
117
85
77
86
107
59
75
45
52
75
55
88
116
71
68
70
99
58
156
59
82
72
84
77
65
105
89
80
63
64
76
75
65
65
68
78
84
90
68
96
91
64
104
71
67
78
59
60
56
77
53
125
75
82
93
72
72
99
79
76
50
47
73
85
42
67
75
37
61
80
138
96
39
148
79
92
68
108
45
53
84
59
164
100
85
65
61
73
81
106
104
62
75
51
88
100
80
126
120
104
63
33
57
58
99
70
37
57
129
97
45
86
36
82
55
77
70
99
55
105
93
97
110
124
96
62
55
48
103
73
141
115
76
114
84
58
162
115
106
70
40
37
48
86
101
52
76
103
152
73
91
68
120
125
89
67
48
89
48
91
115
63
101
71
68
84
70
69
105
81
114
77
52
48
72
62
88
121
71
111
92
80
60
125
69
38
37
70
128
71
64
89
74
57
82
44
58
53
58
27
77
101
63
66
62
92
70
46
94
95
52
83
38
85
62
105
99
191
66
119
39
89
107
90
77
54
52
51
78
60
89
100
59
80
98
74
41
91
70
56
62
100
92
72
84
54
80
135
90
99
50
73
107
59
105
99
100
99
61
79
95
99
85
137
58
104
70
105
102
44
56
49
37
63
104
91
70
79
43
59
57
80
24
74
51
95
72
129
97
110
76
51
49
63
151
103
50
89
103
80
113
88
81
73
55
61
83
78
73
77
124
70
70
79
125
118
92
32
78
84
85
86
91
124
44
77
129
40
70
81
80
88
38
61
97
67
67
68
90
45
74
103
87
69
56
76
162
71
75
102
79
77
65
96
78
74
81
41
55
100
57
127
74
85
116
72
25
104
85
119
61
83
67
110
63
118
54
101
79
43
85
70
128
70
77
83
87
92
65
78
74
66
22
54
75
103
92
53
66
91
49
79
107
115
37
86
62
95
66
57
94
64
53
75
57
88
80
65
80
89
55
75
106
33
81
93
117
50
53
74
134
37
128
63
89
66
22
57
60
69
72
80
77
80
79
87
100
99
104
56
85
77
30
65
61
107
76
76
95
99
45
69
87
83
63
138
39
46
29
73
91
83
102
88
91
112
109
26
85
57
42
133
96
101
46
106
49
40
66
61
61
85
45
119
95
88
89
98
83
53
79
44
67
48
120
58
137
118
89
58
77
79
51
71
90
51
95
60
53
38
42
141
72
96
52
67
75
75
51
76
67
67
56
105
106
102
54
95
53
63
83
66
39
54
114
52
45
110
59
62
104
79
64
89
89
57
65
118
80
78
60
76
122
57
87
59
50
39
99
64
89
81
107
75
38
76
74
52
80
54
75
88
41
41
91
91
38
46
34
68
82
62
66
143
108
66
91
68
57
79
69
43
99
51
66
122
77
67
66
66
53
97
49
91
45
110
120
43
107
114
109
63
59
120
100
122
100
81
66
103
54
39
104
80
47
102
30
71
66
84
83
117
60
55
90
68
97
99
108
50
82
44
97
62
53
53
74
42
104
73
80
79
96
83
54
80
62
83
63
48
72
47
80
164
157
85
22
74
78
131
78
70
54
82
109
75
100
65
110
65
81
54
94
124
92
52
63
63
50
75
42
69
93
103
113
67
86
91
68
146
98
52
83
91
46
119
69
54
56
92
70
74
110
62
39
111
83
73
78
128
61
74
61
67
103
92
90
64
82
105
68
85
54
59
123
134
99
79
86
41
57
52
59
75
84
84
77
45
65
75
65
56
90
89
73
82
80
82
21
79
84
122
44
61
78
63
97
78
51
49
81
77
76
96
119
68
90
95
73
86
66
127
68
87
98
84
96
82
104
65
79
55
106
63
64
95
33
67
74
87
84
65
60
57
81
66
84
62
95
121
73
43
69
101
78
117
52
60
71
71
103
125
92
135
113
71
72
64
130
108
71
52
91
81
54
85
61
93
89
97
44
75
100
88
78
90
102
46
77
100
73
51
64
75
54
57
49
58
63
102
104
59
66
120
82
98
113
72
25
94
58
89
85
67
90
65
78
40
92
87
64
62
65
141
88
44
90
76
65
84
80
59
91
61
58
61
78
93
62
120
50
74
60
55
24
102
90
72
63
43
125
118
124
79
78
59
65
97
90
114
108
41
64
81
79
55
71
71
104
104
75
57
72
80
48
90
55
109
74
79
87
94
69
72
46
82
80
71
83
71
94
116
60
46
52
51
87
74
103
70
63
111
70
61
86
68
81
107
80
79
95
67
110
65
65
73
95
103
76
54
73
51
144
52
107
39
38
57
51
94
86
107
50
104
115
58
98
162
86
48
54
86
79
87
132
56
52
100
68
82
76
44
46
87
66
59
65
47
58
45
51
59
111
60
82
80
85
91
55
132
56
88
62
112
107
93
92
79
56
66
66
63
75
131
83
117
46
65
103
51
78
40
103
91
106
113
104
59
73
74
122
87
61
98
64
97
94
86
54
106
89
73
72
131
44
92
38
71
62
105
75
46
56
42
54
115
66
54
81
60
159
67
49
63
78
72
75
71
43
86
62
122
50
45
66
47
112
111
67
144
92
94
44
48
66
75
56
60
48
37
61
56
58
99
73
49
57
136
144
103
82
55
94
99
43
106
56
98
35
114
77
62
111
59
96
74
93
58
70
62
67
109
59
64
99
57
111
63
47
66
41
71
78
139
76
94
60
43
85
79
124
77
65
101
84
29
63
90
48
50
59
82
55
95
80
48
114
108
130
58
55
57
93
81
101
103
77
113
76
59
96
60
56
84
118
64
72
96
88
110
132
64
55
61
86
103
61
53
94
48
98
125
97
76
53
52
83
78
41
66
94
92
70
82
103
123
119
55
75
105
76
79
57
100
72
120
65
54
129
66
106
83
98
53
94
107
81
49
130
59
82
100
58
89
126
96
64
50
38
80
94
84
78
50
103
52
94
71
79
92
100
79
113
150
73
82
71
101
56
75
67
97
81
104
90
80
62
74
71
119
39
47
70
68
63
144
92
91
66
89
73
125
90
56
44
124
65
95
82
95
75
95
47
76
60
58
59
61
87
90
100
105
90
94
53
79
80
80
61
63
53
84
86
125
65
124
106
54
76
104
81
109
51
57
70
71
49
32
43
113
118
32
80
60
51
96
73
83
90
62
85
111
89
66
59
71
50
58
83
112
74
103
88
67
115
61
66
117
83
111
92
97
68
89
106
75
50
29
127
93
68
69
41
47
107
84
45
109
79
47
61
114
80
103
75
105
64
62
79
98
86
54
68
50
45
71
53
70
73
42
59
96
57
49
63
89
84
64
111
89
74
81
53
62
85
66
46
75
96
94
74
90
69
70
86
75
62
84
66
56
61
67
58
47
160
71
48
58
74
61
116
38
109
76
84
66
53
98
74
102
50
54
59
116
102
92
56
101
62
42
73
104
114
92
75
96
70
80
45
44
102
56
104
55
60
89
84
148
77
85
124
43
109
67
71
93
105
76
67
57
94
106
58
61
67
27
129
48
59
57
90
102
64
108
70
114
131
87
56
66
53
60
94
53
105
76
67
80
72
69
75
93
51
75
57
100
62
111
70
44
128
50
95
89
116
109
73
55
86
43
73
59
44
103
43
65
116
51
84
74
64
79
99
62
88
54
64
45
53
61
73
70
81
79
55
52
80
73
49
57
22
89
87
55
186
64
74
63
74
55
97
55
77
62
67
102
86
86
104
107
66
109
61
80
84
40
85
77
69
69
59
81
128
63
73
42
108
60
99
74
77
52
49
129
151
90
72
100
97
65
103
68
105
67
58
33
66
106
111
61
107
77
68
138
123
107
64
103
103
87
44
26
112
97
73
71
119
47
109
194
115
50
71
135
82
65
54
48
58
67
70
65
53
36
67
133
121
81
66
59
127
74
103
50
102
57
93
60
59
82
106
64
80
81
93
65
115
142
93
112
38
98
105
26
30
67
84
75
78
66
70
58
84
87
105
86
61
61
106
135
67
85
111
30
42
131
84
74
71
38
103
59
80
108
142
80
96
120
60
67
110
50
59
72
54
66
99
98
84
91
77
104
73
44
53
107
46
160
58
50
139
70
104
124
40
86
67
64
140
76
77
97
133
144
75
49
163
90
69
64
63
62
70
69
34
45
52
71
56
92
110
46
88
60
70
102
94
69
68
51
39
57
43
52
81
83
100
49
48
65
77
95
83
131
74
83
66
66
56
99
46
73
108
61
63
46
53
78
89
97
58
38
61
70
61
34
52
91
51
88
64
65
51
89
86
32
128
54
111
60
81
48
101
73
83
64
78
141
94
89
82
168
54
53
100
55
86
75
75
81
64
85
98
118
72
88
74
86
62
38
67
69
38
55
56
56
87
136
67
66
61
80
18
81
107
56
112
83
87
73
68
46
108
91
63
70
93
75
70
82
106
65
66
46
79
75
90
64
106
110
67
79
68
32
48
59
69
63
67
68
92
39
43
60
39
88
71
64
66
98
73
66
40
47
110
132
143
81
75
67
72
74
77
97
55
90
68
47
70
65
59
78
99
118
79
50
98
59
77
129
86
28
87
88
60
47
79
67
83
118
60
80
104
85
86
121
85
107
76
84
73
59
43
68
81
85
66
122
98
161
111
75
82
44
79
57
92
54
134
72
52
77
51
70
184
58
65
64
73
54
82
90
69
105
79
48
83
127
59
73
40
84
108
74
79
49
38
108
94
94
53
133
34
56
98
89
99
67
44
74
73
92
70
92
41
71
100
87
96
64
68
68
119
106
46
106
67
70
77
66
92
127
69
121
79
108
104
72
75
102
150
66
74
64
63
89
124
103
83
66
84
51
81
73
70
75
68
75
30
50
81
77
133
69
55
83
109
46
139
57
96
63
51
67
88
118
96
38
95
74
88
70
92
119
88
72
115
72
81
63
107
72
43
80
43
105
55
34
48
82
65
82
65
65
81
66
61
106
50
95
89
61
66
117
85
72
70
94
137
58
105
52
62
46
88
96
120
82
93
88
66
64
59
56
45
99
83
98
65
73
78
72
100
53
137
62
75
54
101
54
73
45
91
73
96
147
44
84
49
78
83
86
74
170
97
74
40
71
49
60
81
67
91
59
47
50
79
136
44
95
79
75
64
62
116
89
56
129
136
65
48
53
65
130
48
35
49
72
103
77
62
31
122
112
90
49
71
56
64
54
66
84
141
77
30
71
83
29
92
57
78
88
63
38
89
44
86
55
61
40
88
40
95
59
64
59
89
110
73
49
83
81
78
53
117
113
101
62
84
76
95
98
56
81
103
98
89
77
98
67
104
88
75
56
67
99
134
64
89
42
82
75
70
101
100
70
45
75
113
67
44
87
47
80
39
87
105
87
97
61
64
84
63
29
75
103
59
76
78
58
66
59
82
116
80
74
91
60
48
111
78
74
61
49
52
74
87
87
43
108
57
79
88
69
79
88
63
96
85
55
70
44
63
45
104
95
141
43
102
102
95
101
117
87
82
62
133
158
70
74
88
79
80
87
23
96
135
63
62
75
63
102
68
106
42
76
106
69
76
73
51
63
69
102
45
86
120
58
75
94
82
129
77
61
92
144
54
112
49
57
49
87
50
71
91
70
78
85
68
136
48
95
89
58
81
69
87
48
67
115
109
56
90
73
75
34
72
60
45
50
136
52
34
48
106
53
61
70
105
62
68
99
89
38
92
90
94
107
105
89
92
64
110
51
62
58
55
55
102
41
169
85
90
120
43
83
112
49
55
106
93
54
95
73
73
72
82
88
60
49
88
101
64
71
81
77
75
96
99
91
52
106
81
26
76
54
58
77
79
96
94
93
55
88
107
78
82
72
104
52
53
135
69
60
88
94
99
35
90
58
85
33
57
119
83
86
85
87
86
66
55
84
50
66
65
82
87
85
91
58
64
91
91
73
102
50
69
79
94
101
53
77
113
73
119
66
101
100
63
107
52
73
67
68
66
57
107
75
56
81
72
93
73
97
107
94
47
84
39
82
47
137
118
133
85
85
80
60
74
105
83
51
127
93
52
82
49
96
52
84
57
34
49
76
74
87
72
83
78
76
55
97
72
88
138
66
89
123
67
75
44
74
75
65
120
125
81
77
94
53
57
67
131
39
90
95
105
124
25
68
51
101
77
85
136
115
93
42
76
34
97
95
62
76
34
113
61
101
68
106
96
73
99
91
73
93
98
124
74
94
63
74
74
111
66
103
108
50
103
73
101
81
115
42
90
67
79
83
128
93
67
76
68
99
52
68
95
81
122
85
118
75
99
123
80
98
54
63
68
41
97
76
49
125
66
76
140
108
96
50
89
119
82
65
68
58
39
74
80
82
56
97
120
107
59
75
93
97
81
60
78
48
85
55
52
90
71
96
103
59
97
62
91
94
132
89
85
110
35
79
27
73
119
48
93
96
56
76
71
123
81
49
96
70
100
81
51
90
138
96
75
58
99
78
96
65
59
106
77
95
60
36
148
113
91
99
61
44
69
76
108
86
42
120
71
100
68
70
87
102
116
53
118
88
69
75
98
91
93
72
76
67
75
87
62
62
119
59
92
96
65
56
79
46
48
88
131
74
109
103
57
95
68
65
87
77
83
81
75
122
85
99
78
55
90
84
72
86
56
39
88
58
83
37
59
92
61
111
75
70
82
82
77
98
86
28
102
127
117
120
51
113
49
122
95
50
83
101
108
41
93
109
82
92
109
71
47
112
57
59
61
81
83
76
81
91
55
38
38
79
118
103
106
73
91
77
135
76
82
58
101
122
104
50
80
40
50
75
64
111
81
112
48
97
44
61
95
54
72
130
65
68
91
68
75
85
32
61
53
57
72
116
88
70
75
65
72
80
53
78
55
99
110
74
74
112
99
82
76
68
59
46
152
53
109
75
56
37
65
88
63
132
97
67
107
48
45
90
91
42
114
73
62
101
95
103
135
29
78
84
92
73
122
48
92
93
90
99
67
81
101
45
64
112
103
60
130
97
111
93
97
91
76
69
95
119
94
53
64
56
55
70
80
80
101
81
94
100
106
76
107
86
75
79
105
90
116
99
78
48
103
44
79
143
120
79
69
75
85
103
53
66
78
86
81
106
53
44
95
44
125
93
63
46
44
72
74
129
78
66
67
87
91
72
113
118
69
98
74
118
80
32
110
95
67
91
109
57
42
82
129
90
80
37
119
100
47
45
44
47
101
67
73
101
89
74
60
86
55
86
58
79
81
87
99
56
89
59
57
64
51
125
54
67
122
88
102
128
38
60
65
39
119
65
79
69
86
61
85
35
116
92
47
50
113
46
73
79
51
51
56
52
57
73
87
68
71
76
40
97
73
51
69
172
67
66
63
79
84
74
60
101
64
54
87
130
73
112
88
71
103
75
64
81
84
101
131
76
133
38
107
148
92
88
25
132
64
55
70
131
41
102
135
72
64
80
48
85
102
102
52
83
34
102
85
92
30
81
41
38
67
79
71
75
47
100
64
105
72
109
81
92
46
70
108
76
79
81
48
105
69
102
46
88
58
98
51
57
54
66
107
100
66
71
41
48
85
54
53
48
60
36
110
51
32
81
52
86
75
108
59
209
62
48
57
100
111
59
63
34
82
67
53
79
57
60
67
99
122
84
82
65
85
66
42
127
47
73
73
99
139
67
98
56
72
33
87
95
60
48
74
118
58
46
67
60
77
73
52
140
87
111
34
41
88
50
41
117
60
82
78
63
70
122
53
65
72
55
70
95
55
102
101
66
63
74
64
63
31
83
73
55
84
33
85
61
60
53
65
51
66
85
59
40
84
81
97
95
75
34
79
97
42
78
79
80
78
41
58
69
42
85
84
101
76
81
99
109
64
49
76
49
84
61
57
61
81
79
47
55
96
103
40
99
84
107
67
82
61
86
46
44
79
92
46
67
142
92
87
149
117
106
106
89
62
106
99
58
76
87
94
43
50
59
99
49
59
56
58
61
72
58
135
43
115
65
87
56
78
79
68
145
55
90
84
56
98
96
74
68
137
126
59
29
111
79
85
83
79
46
104
91
118
80
56
132
108
69
84
52
49
97
83
82
102
47
84
125
77
74
46
49
105
84
108
73
69
32
56
94
80
122
73
119
63
34
48
45
66
73
84
99
122
81
79
77
57
51
72
97
57
57
94
69
89
66
66
51
96
83
86
108
91
43
54
80
92
87
82
85
83
57
64
84
82
94
64
76
95
39
83
57
65
53
77
87
70
85
91
184
104
36
118
54
88
96
72
97
50
37
116
61
54
101
55
98
46
78
149
59
67
27
82
139
95
91
78
62
59
67
99
56
99
82
63
51
52
45
52
31
78
53
74
52
48
65
63
62
66
64
81
79
48
102
32
63
44
47
53
37
57
83
75
53
103
75
109
44
61
86
60
104
87
76
89
90
68
73
76
76
56
71
42
80
111
86
73
98
89
103
59
84
56
81
78
83
61
38
104
47
68
61
70
106
72
73
56
69
55
57
99
60
92
93
55
46
115
58
39
77
86
105
61
111
88
44
67
43
82
88
140
46
115
120
51
78
66
36
105
87
68
87
104
68
57
105
74
74
58
71
55
73
94
92
95
83
44
62
102
93
94
116
64
110
62
56
92
81
58
56
36
75
48
64
52
139
52
169
51
54
103
90
50
62
35
99
81
55
85
27
64
51
142
99
62
69
60
130
47
56
95
140
54
48
77
100
82
57
68
31
51
100
85
94
102
70
87
87
109
114
88
90
63
88
96
73
58
50
75
84
35
88
71
96
72
123
75
96
48
69
75
66
106
70
86
104
82
58
43
104
92
95
81
63
49
88
59
74
66
76
93
89
100
98
59
78
42
95
72
63
80
69
75
50
157
59
55
102
76
52
62
76
105
44
73
45
64
66
93
82
74
141
80
65
59
53
45
62
64
62
43
82
128
89
72
95
67
74
59
101
45
90
83
87
61
80
142
84
67
84
113
70
81
80
114
84
63
105
115
111
127
75
66
96
100
122
61
33
69
83
79
102
36
122
101
39
84
69
49
51
72
159
107
103
58
138
85
49
74
131
40
67
79
28
55
65
69
97
123
61
52
60
106
111
70
76
75
67
104
68
38
62
80
96
84
36
90
101
47
92
77
38
95
79
55
27
122
58
70
57
82
75
76
74
58
42
64
90
89
82
74
97
78
58
43
83
70
57
92
85
89
88
123
82
65
41
93
55
82
97
87
120
63
128
77
73
125
32
107
70
102
56
111
98
52
103
95
82
70
43
77
80
85
94
88
72
72
42
80
53
92
67
47
135
81
80
53
129
76
86
77
85
77
28
98
75
93
83
71
68
74
99
73
81
93
95
114
70
50
122
25
37
72
86
114
82
93
84
46
78
61
89
69
47
61
88
103
72
64
101
75
45
77
102
67
75
78
109
56
77
86
24
118
146
106
104
33
51
101
99
64
106
63
101
80
65
35
57
39
155
66
70
77
71
65
52
89
72
92
97
74
50
78
56
86
112
52
58
90
71
52
65
64
58
54
54
52
62
76
186
70
47
57
51
42
78
117
39
131
79
47
87
67
74
123
66
42
113
56
118
63
121
40
104
81
76
68
64
87
53
67
68
111
106
59
51
75
70
68
74
85
55
53
79
74
56
57
86
80
78
67
62
94
78
129
90
66
95
102
67
65
100
102
66
91
71
70
97
55
62
49
61
90
73
54
106
36
54
46
57
74
95
169
38
114
40
61
51
58
74
79
40
23
59
101
96
106
55
73
78
53
64
106
67
101
30
65
67
111
62
48
77
33
76
88
60
59
79
42
45
65
81
84
108
52
35
56
49
66
108
85
54
142
38
95
80
115
99
44
56
66
70
84
84
57
87
95
50
94
63
92
121
86
102
60
79
60
67
106
51
43
80
83
44
66
64
66
43
82
108
74
91
121
69
73
59
121
82
50
71
52
44
82
49
55
75
97
79
107
62
60
53
128
105
116
112
106
83
78
54
81
64
63
106
87
102
71
75
84
89
99
25
50
72
40
83
64
54
67
130
87
77
78
85
54
109
144
135
71
85
63
179
90
124
69
35
83
39
56
68
84
112
61
86
107
52
67
81
90
59
69
103
72
88
58
89
71
63
70
52
61
59
85
58
85
77
102
76
55
96
100
76
71
49
125
111
49
92
53
63
121
73
46
69
65
97
90
81
81
77
46
93
76
78
100
88
53
87
66
79
65
71
80
83
40
46
56
65
94
86
56
75
77
114
135
46
124
50
98
53
75
42
52
77
69
105
124
124
67
76
69
59
77
119
76
75
129
92
70
137
79
62
49
63
52
85
57
83
89
195
40
94
83
60
103
40
86
92
73
43
86
64
53
65
56
79
75
65
106
68
80
62
81
76
68
82
89
51
58
63
63
80
71
61
84
104
73
67
79
61
59
75
73
58
105
89
100
54
66
96
78
89
62
172
53
66
71
74
80
83
86
97
77
140
69
32
69
49
113
54
86
69
46
84
62
66
52
88
94
71
93
38
84
78
88
69
60
89
68
87
56
108
54
52
62
97
63
90
55
72
39
97
79
62
62
73
114
91
69
41
64
85
64
63
99
84
39
62
81
140
81
70
84
49
61
131
85
91
71
68
47
90
100
49
92
57
76
100
120
115
127
95
89
86
63
82
136
47
67
116
85
58
60
145
110
97
91
69
77
91
82
96
100
36
121
44
74
99
108
82
55
51
75
83
147
146
69
77
57
65
61
46
98
91
49
107
57
96
86
86
46
55
114
59
76
63
99
36
52
75
75
62
82
76
69
49
71
79
61
55
68
82
125
110
113
51
80
72
71
91
61
73
101
52
125
64
49
78
86
112
47
64
74
63
94
98
45
37
100
56
114
86
64
68
39
88
84
95
92
64
47
78
67
124
45
65
101
121
104
99
94
64
102
53
59
123
123
55
65
34
90
73
101
118
44
48
56
72
94
81
41
103
97
86
96
47
69
106
120
75
84
105
98
161
113
159
49
67
46
94
129
69
61
45
47
61
100
61
79
73
58
40
50
74
82
68
62
126
53
99
96
97
91
66
104
41
105
123
71
80
51
89
75
93
71
92
118
110
80
59
67
81
74
45
66
48
75
75
59
81
46
97
43
84
49
72
62
97
90
77
74
72
110
95
54
69
57
89
96
84
106
66
61
70
70
57
66
93
110
81
118
60
83
77
132
71
77
75
45
53
67
65
56
73
78
35
87
72
81
72
46
85
116
82
56
100
85
86
68
94
84
59
105
73
61
64
92
80
79
42
54
50
99
87
120
83
52
73
71
72
97
99
47
107
127
119
81
68
117
66
96
99
66
59
71
87
37
64
72
97
105
80
83
81
89
67
84
87
161
63
86
88
55
79
67
37
74
82
91
70
78
63
62
53
57
68
110
103
73
80
72
63
114
139
62
63
66
118
111
92
70
55
96
64
92
80
82
96
72
79
96
102
136
94
90
118
108
113
143
64
28
47
38
79
59
44
51
56
58
102
77
72
131
90
95
89
58
73
41
111
81
89
93
58
82
92
147
87
44
57
60
70
123
64
76
75
75
81
68
72
135
106
123
55
94
84
87
60
51
54
73
41
67
64
69
96
107
64
91
101
77
64
46
57
53
74
88
101
60
67
96
76
28
85
88
40
119
90
53
93
75
82
100
52
44
77
60
58
75
92
47
41
111
91
60
52
85
55
84
68
31
47
39
37
44
64
141
47
83
81
95
32
76
61
55
94
66
97
101
50
29
49
75
102
47
119
57
91
79
39
125
58
84
66
81
83
90
71
72
73
56
104
46
100
95
62
59
86
49
111
115
113
57
88
76
42
42
71
49
64
78
68
81
63
94
25
107
72
86
59
32
59
63
83
56
39
134
93
63
125
117
91
42
105
28
98
75
88
85
84
96
78
89
74
58
77
97
75
38
86
43
35
84
58
105
70
90
79
80
31
49
86
86
129
50
113
75
94
80
69
50
53
62
95
117
59
64
70
95
78
47
44
40
68
59
70
96
96
59
58
54
75
109
90
57
77
108
47
103
98
100
92
80
101
84
74
143
128
95
114
109
72
66
117
61
58
103
72
114
47
64
31
46
60
61
68
75
101
70
96
92
54
30
109
79
54
58
54
84
101
42
117
43
68
85
64
66
90
91
82
114
67
116
130
94
142
76
76
57
47
85
80
89
70
90
66
69
58
46
63
98
105
62
94
58
67
51
69
135
65
160
91
75
95
64
53
81
57
56
145
69
58
107
75
66
106
69
41
48
69
67
120
93
63
48
62
110
65
58
61
50
28
71
77
87
72
54
39
54
40
56
59
99
87
124
80
100
57
82
89
48
62
65
106
27
46
65
63
67
70
94
77
94
75
52
93
51
73
102
89
63
54
65
43
54
94
81
51
56
67
107
79
33
78
110
27
72
61
123
93
60
75
65
117
58
75
52
70
97
140
74
69
80
76
51
58
74
70
108
123
76
67
53
77
68
71
66
55
77
111
82
102
72
65
68
84
45
75
111
105
95
51
98
47
82
89
100
64
89
66
68
62
79
43
75
77
153
76
103
69
28
107
93
61
91
128
79
70
101
91
75
54
75
54
106
95
97
119
105
68
112
80
104
88
80
99
44
95
66
64
94
92
103
84
125
62
87
79
45
74
78
71
54
131
130
46
84
37
158
67
85
106
127
85
62
72
136
94
65
51
68
94
78
77
105
104
58
109
69
55
79
47
44
147
85
81
65
108
91
83
76
64
76
84
36
102
71
76
69
144
73
100
60
46
64
101
71
89
39
45
79
66
59
94
126
48
76
32
143
99
53
77
153
98
104
72
102
103
83
82
121
56
71
63
78
95
127
62
59
53
58
84
41
117
74
44
35
64
76
80
64
36
86
98
63
50
134
110
71
64
39
120
55
83
56
78
112
39
38
55
66
47
81
82
41
102
126
77
97
68
129
67
88
85
63
124
101
56
54
71
70
84
90
76
90
47
89
79
129
74
93
66
71
56
89
127
51
83
73
66
112
79
74
82
76
92
94
72
79
60
65
82
166
63
85
62
103
115
50
88
57
118
47
76
102
68
52
65
79
58
74
101
51
108
92
81
114
158
80
52
99
65
45
75
83
79
74
65
76
65
102
94
63
64
55
95
94
76
58
164
66
96
92
70
70
54
89
95
108
51
74
64
89
85
92
50
128
82
48
79
59
89
57
87
51
118
80
91
76
86
71
47
81
65
125
69
108
81
77
114
77
119
54
81
49
86
87
76
44
58
67
69
99
106
78
86
153
103
77
61
61
73
52
64
78
43
71
74
89
63
87
108
54
62
62
55
83
80
120
44
77
108
127
49
55
63
43
68
78
93
75
36
67
60
82
93
33
52
115
59
121
90
58
104
90
62
94
89
65
84
68
101
88
117
73
68
44
79
81
75
49
75
68
48
50
65
81
65
103
45
80
54
64
87
96
111
89
97
80
58
83
68
41
49
61
46
109
70
44
91
89
117
83
99
82
60
71
61
46
66
56
60
69
71
77
82
89
77
128
67
57
26
77
49
112
79
89
93
78
121
93
131
126
63
87
55
76
56
59
69
83
65
77
77
65
74
111
43
96
69
79
110
50
46
97
69
36
90
63
59
106
119
39
76
84
45
73
42
84
64
80
48
83
78
86
99
87
68
55
43
61
83
100
163
132
85
50
88
84
34
42
69
97
124
87
33
80
55
99
126
71
61
54
100
69
48
92
50
100
68
51
38
176
40
53
135
86
108
95
72
89
113
84
62
66
74
64
74
56
54
74
78
78
53
63
58
45
66
80
69
50
106
37
73
112
59
94
53
114
81
59
104
58
64
102
94
57
67
62
68
91
63
88
85
90
45
76
111
103
119
115
61
57
75
66
67
90
76
71
142
86
127
69
80
80
91
95
71
122
68
96
94
63
42
91
97
55
68
66
111
82
87
71
31
83
125
51
91
56
102
66
61
45
94
93
61
110
117
95
64
96
48
93
54
84
65
84
51
96
79
76
60
49
89
63
80
39
89
67
104
61
92
123
82
70
101
89
40
38
111
55
86
55
44
47
62
55
68
40
72
28
98
66
72
92
45
49
54
90
64
83
58
123
45
76
37
61
114
54
74
108
45
86
91
85
50
38
59
93
62
77
130
103
47
71
102
46
96
96
93
49
75
110
48
63
61
62
48
29
78
62
34
31
91
102
129
125
47
49
108
56
123
109
91
66
100
52
76
141
84
50
83
122
64
69
39
82
61
109
95
99
56
63
102
59
37
117
48
50
86
60
70
88
59
97
62
67
74
80
65
104
71
116
72
61
75
76
86
100
113
91
82
73
75
94
77
64
68
91
53
60
79
53
88
53
33
123
60
71
90
137
98
63
59
36
98
142
120
67
97
145
104
57
113
78
73
69
96
84
52
50
133
98
73
71
56
82
117
60
38
49
74
70
35
86
146
70
88
41
57
147
62
60
90
76
56
91
112
71
75
108
114
75
118
93
63
53
42
133
53
42
56
76
86
81
69
85
84
149
52
53
79
135
80
90
65
88
56
71
71
113
65
71
86
123
87
82
87
94
82
61
69
79
84
97
58
52
63
55
61
97
99
77
124
122
90
61
49
37
74
51
97
113
55
119
68
82
76
73
83
106
36
62
48
91
48
56
66
71
65
61
64
86
90
86
122
81
99
64
122
65
105
88
98
76
113
86
39
77
52
88
73
96
139
49
70
66
61
61
44
80
78
78
67
74
44
106
60
44
94
87
65
98
64
85
67
40
63
95
66
69
86
85
145
74
44
114
79
65
100
36
79
90
84
63
79
58
83
62
59
87
98
54
139
64
87
50
47
76
119
66
74
73
108
33
78
65
34
82
67
52
69
94
67
40
59
58
53
49
65
92
45
129
58
43
88
95
139
58
57
40
98
74
65
48
66
56
69
86
75
57
75
50
47
111
42
161
100
109
120
106
56
85
92
100
60
123
84
70
95
98
70
89
73
60
71
96
80
49
160
97
96
51
56
76
90
54
108
77
68
87
64
97
80
52
109
56
50
74
98
145
92
87
29
79
68
101
123
124
73
75
73
56
85
72
86
94
36
94
44
55
39
28
120
53
106
121
71
47
128
55
118
44
41
43
31
185
72
68
52
78
109
81
44
55
64
35
29
92
87
54
69
28
93
76
65
70
80
80
48
96
84
66
66
94
42
77
91
77
50
71
92
87
57
50
102
43
98
45
47
85
75
56
69
115
100
65
249
22
65
82
46
80
135
84
36
68
64
131
75
90
160
65
56
58
91
101
131
51
70
66
54
64
84
94
115
57
105
111
60
76
48
82
107
123
69
52
92
79
55
77
58
57
46
103
33
41
58
113
62
84
106
79
60
36
67
107
82
91
56
57
72
73
79
92
64
96
77
62
52
132
99
70
102
58
42
107
70
102
81
125
62
40
69
53
90
50
68
79
123
33
147
70
37
97
68
69
81
117
110
78
47
59
62
60
104
88
74
43
64
88
104
90
92
54
81
71
88
60
64
71
86
32
82
91
136
82
104
55
150
73
90
118
129
51
36
104
92
108
45
99
86
90
156
57
56
78
52
51
146
76
60
68
53
86
63
57
72
49
84
72
87
108
51
85
90
58
77
77
69
82
99
18
113
37
97
92
30
105
54
31
124
113
91
87
57
61
47
93
70
61
48
77
83
117
62
60
98
57
57
80
76
124
65
39
104
55
81
65
47
96
57
72
44
57
74
110
47
87
83
81
86
92
60
63
87
48
84
67
54
85
56
75
67
72
54
46
83
114
70
100
110
99
59
81
70
134
46
73
43
98
73
79
79
43
75
95
46
98
57
132
71
98
54
91
24
36
82
90
90
119
50
116
142
132
58
63
72
87
63
69
121
71
108
66
78
74
73
87
43
80
72
74
77
56
59
44
53
62
46
51
152
95
102
39
92
68
60
118
69
129
97
66
55
37
61
92
87
73
49
154
71
70
79
96
61
99
73
102
90
85
68
72
84
111
89
68
92
61
50
76
65
83
53
126
59
60
41
50
67
55
97
85
49
102
55
81
77
42
40
79
89
60
53
67
144
55
50
105
138
79
81
72
69
59
80
96
67
84
99
55
44
165
73
70
43
57
120
67
102
47
105
44
40
71
76
95
55
96
58
62
100
84
55
55
119
57
116
74
89
32
72
50
102
65
76
61
113
55
61
92
107
60
51
63
70
104
57
97
75
58
54
77
57
122
73
126
109
52
52
69
46
49
65
55
101
59
49
95
84
140
86
105
58
57
62
106
89
68
47
102
103
124
60
99
72
87
68
100
89
70
84
50
63
80
104
163
64
64
78
58
39
77
70
113
124
116
123
101
71
98
84
57
79
91
75
89
117
66
43
38
83
76
50
95
103
52
98
86
72
78
34
49
69
40
80
79
111
57
59
75
71
70
29
80
69
133
78
31
93
84
74
74
71
55
88
115
46
56
52
116
85
131
68
100
63
59
54
37
89
100
73
77
141
61
77
30
71
80
53
44
46
92
49
83
114
98
102
97
82
38
62
52
57
41
64
67
81
69
108
92
69
55
35
68
75
87
58
93
72
76
78
67
111
39
68
61
97
55
88
98
80
91
114
121
54
70
73
82
59
60
163
95
100
68
92
114
56
49
113
63
127
75
89
63
133
77
41
75
63
100
81
60
63
82
94
82
81
45
53
53
119
80
76
28
58
114
101
135
61
72
76
76
96
68
45
114
117
79
85
89
89
80
80
74
43
126
47
41
51
81
76
129
109
78
88
78
85
125
83
78
59
57
77
84
115
44
49
72
53
89
88
84
100
85
81
61
138
158
56
47
42
93
45
103
78
125
100
74
69
68
98
99
55
49
107
105
54
58
56
78
86
33
171
112
100
77
71
86
31
55
105
85
54
69
48
117
63
72
42
65
42
63
40
68
80
85
49
33
114
46
91
23
37
121
42
38
84
64
56
101
54
95
83
89
70
98
44
68
58
47
50
100
68
158
80
88
75
59
81
62
36
76
102
103
82
71
71
114
59
56
142
86
79
99
113
88
47
58
76
105
88
90
45
65
42
81
75
90
85
67
50
105
123
78
119
172
49
131
71
81
55
88
46
51
92
67
44
108
76
87
74
89
90
123
87
59
77
66
106
63
94
63
36
70
65
69
59
89
105
74
64
189
28
73
97
64
81
83
78
54
132
80
82
115
72
77
55
73
91
70
84
75
121
95
130
86
89
103
106
75
59
111
69
80
129
118
75
64
110
82
84
77
112
83
90
78
55
43
87
75
66
38
66
89
93
130
105
87
55
83
54
54
81
39
51
48
81
116
100
42
53
55
54
71
79
62
76
85
73
35
66
66
89
106
53
74
93
71
59
49
103
92
37
112
61
70
114
69
68
57
82
74
53
89
69
69
66
140
57
106
82
66
82
78
118
82
56
53
94
52
84
89
96
55
71
125
114
88
77
88
120
77
43
66
37
91
82
84
76
76
57
65
113
68
41
111
52
81
88
33
48
99
44
73
70
64
49
72
54
78
63
67
78
75
54
66
39
48
83
116
49
60
97
90
123
41
50
78
98
151
102
95
84
83
52
136
57
79
59
85
67
80
134
82
49
87
42
99
50
73
105
98
63
54
140
128
66
78
33
98
41
96
79
116
90
169
83
36
114
69
55
65
69
86
107
47
96
115
82
54
50
143
74
113
60
86
83
66
45
55
70
57
89
80
82
56
67
31
124
59
87
77
103
54
93
83
118
85
81
79
38
65
66
143
102
35
39
100
95
73
31
54
37
62
72
75
76
96
100
75
59
84
78
77
46
75
89
49
104
53
118
83
78
66
84
35
77
109
64
94
56
111
81
114
75
72
92
69
90
83
75
54
78
90
50
68
51
100
109
48
77
48
71
103
120
71
41
105
96
79
68
53
41
44
83
97
80
98
53
57
69
119
90
75
115
50
50
38
103
84
116
89
64
61
75
42
65
104
84
60
52
97
73
56
118
84
68
91
58
75
70
64
66
55
56
76
79
74
66
139
85
57
93
34
119
108
78
69
84
94
84
62
71
81
120
57
44
50
56
76
84
70
93
42
47
48
56
86
94
57
117
102
80
73
89
90
64
76
62
48
30
110
75
127
62
44
84
72
114
62
56
75
61
95
42
52
51
60
80
99
115
65
62
105
40
94
81
61
92
87
79
94
126
39
62
67
87
99
60
63
69
102
38
88
68
72
139
96
92
67
54
77
143
116
89
90
53
22
95
80
61
91
59
66
28
84
75
46
118
52
71
59
32
59
134
106
52
98
134
73
94
79
59
44
84
45
95
137
54
66
141
116
60
139
143
79
50
79
65
68
70
116
68
38
55
48
65
108
75
78
59
82
82
49
80
39
53
81
49
92
80
49
112
60
86
65
107
114
83
98
94
137
89
59
76
62
67
93
65
43
79
66
79
74
101
46
47
65
94
67
71
91
69
52
34
74
96
104
73
52
120
69
56
118
102
98
69
66
122
125
82
132
96
97
48
68
75
132
36
64
72
63
163
47
99
91
38
47
53
70
80
92
83
107
85
94
91
95
89
126
49
66
108
70
81
82
82
115
112
90
57
90
64
75
73
105
76
89
89
61
114
65
55
66
49
90
78
47
59
104
78
70
79
53
90
67
71
90
74
114
84
83
69
97
72
67
41
88
67
97
57
68
53
60
130
100
60
39
97
60
115
76
75
98
75
50
95
116
34
103
95
91
69
82
110
158
126
108
74
100
74
100
91
63
36
58
63
50
126
54
106
32
121
55
41
46
109
122
63
66
58
62
67
75
78
52
52
110
92
81
131
89
80
45
80
92
25
73
60
64
70
70
70
85
90
100
67
93
89
83
90
115
43
66
73
76
67
71
48
105
48
108
68
49
50
82
62
65
75
69
72
145
89
43
92
73
114
110
64
97
64
99
89
63
120
99
100
114
47
118
37
71
84
73
48
66
51
38
43
54
102
52
83
80
65
86
104
57
77
72
94
101
107
56
90
43
77
97
139
89
63
38
51
48
79
124
68
105
90
73
45
104
86
78
101
72
65
101
89
56
88
47
56
45
188
78
81
59
52
80
98
62
40
95
53
73
85
108
50
69
57
55
118
78
62
119
53
80
97
76
104
92
81
45
114
78
40
107
76
50
92
90
84
77
127
90
117
107
88
98
72
77
75
75
119
66
61
49
91
93
35
89
104
103
63
76
70
91
59
78
77
59
84
88
124
58
67
70
106
49
51
51
112
71
144
46
67
53
77
99
47
86
35
119
97
80
87
53
35
81
66
119
42
79
156
80
71
72
92
63
36
83
55
83
53
103
134
92
133
109
112
99
105
42
54
113
75
69
65
120
97
94
88
56
102
33
58
50
70
82
35
85
52
106
64
45
82
50
96
42
85
68
37
61
139
138
139
107
116
104
80
70
74
73
64
63
53
69
56
84
135
65
97
103
67
57
113
60
103
58
75
100
76
68
101
58
107
64
103
48
63
37
51
73
94
71
95
46
66
112
40
113
92
31
77
105
83
119
83
100
97
45
55
52
66
111
59
72
65
90
78
106
80
70
113
80
64
88
104
65
115
89
92
88
88
93
50
68
62
31
97
110
80
98
104
99
104
56
72
58
39
172
76
90
112
85
64
84
52
101
64
91
72
69
60
57
128
82
71
82
59
70
79
97
124
64
184
113
91
89
71
73
51
61
111
48
63
58
56
68
82
95
45
115
75
60
61
103
141
80
59
107
82
83
100
59
59
51
61
98
71
46
58
61
36
125
74
85
68
43
69
82
46
76
113
42
94
74
53
87
98
76
63
135
104
151
63
75
97
41
40
95
56
43
62
54
102
116
93
52
93
111
63
93
54
87
86
69
41
102
51
62
73
65
80
50
104
52
103
38
80
34
92
115
129
107
56
77
83
62
53
75
109
87
82
67
95
33
99
90
88
85
125
41
42
77
72
59
58
86
37
121
37
95
55
87
78
65
70
106
93
43
65
65
54
28
85
84
67
41
47
100
93
93
63
130
54
63
103
86
55
177
92
69
46
53
76
101
108
109
100
146
60
104
58
47
63
103
95
83
116
80
102
51
75
67
47
90
72
76
61
89
98
133
89
84
59
76
52
93
103
70
237
44
82
50
51
81
148
150
89
91
53
69
91
51
76
80
70
101
72
110
61
59
78
99
49
81
94
63
78
126
35
53
99
102
61
55
136
68
72
43
49
82
91
52
89
46
58
61
62
89
56
75
61
50
112
105
50
106
134
74
74
85
92
78
67
68
70
74
96
159
37
51
98
68
72
63
50
81
95
45
53
84
60
116
70
69
69
54
62
79
41
45
64
116
104
99
109
33
109
54
100
95
42
94
53
116
57
86
67
75
74
59
89
83
48
91
73
48
58
81
98
84
83
46
79
73
77
64
76
57
66
92
79
71
79
65
70
59
46
143
86
73
37
71
84
54
78
96
65
75
59
88
92
82
88
120
119
56
98
133
101
54
102
102
97
70
53
82
69
79
76
96
83
96
54
48
76
85
98
96
95
100
79
47
42
89
124
64
60
79
45
55
86
82
86
76
94
79
81
31
44
65
81
71
87
87
89
74
57
77
93
70
21
94
118
121
88
55
85
89
67
52
84
25
75
129
100
52
111
54
51
93
47
57
74
46
136
50
112
76
100
116
51
96
95
80
55
118
98
51
179
90
75
56
67
31
42
137
64
100
162
108
29
65
63
68
127
82
54
75
116
81
82
90
101
101
75
82
56
90
79
114
74
150
62
70
70
53
67
51
44
80
99
74
92
94
56
59
55
57
111
97
71
60
118
45
80
66
139
123
63
98
83
53
51
64
44
63
56
97
73
65
82
62
85
46
69
120
68
58
52
67
117
50
66
137
54
70
51
56
95
79
40
53
67
62
64
72
77
54
70
64
87
137
131
77
82
73
109
98
107
31
106
117
96
76
87
35
75
86
106
107
117
44
34
99
120
55
87
84
52
73
92
79
90
37
70
100
60
86
32
82
98
38
97
53
68
64
91
89
80
75
70
77
94
38
88
105
91
57
59
70
34
110
71
76
68
89
75
32
72
89
71
95
107
88
94
111
103
49
84
91
141
88
90
54
74
38
56
85
107
95
67
36
75
24
42
79
49
107
62
54
87
93
52
86
26
84
84
49
83
119
106
163
91
81
77
72
83
82
69
111
62
49
56
75
139
89
79
72
97
54
45
116
112
79
74
74
81
39
66
51
126
65
57
59
42
48
97
90
96
71
52
37
103
58
47
72
54
57
68
87
108
46
88
64
73
102
138
92
90
37
74
61
70
78
54
55
101
95
53
100
100
91
41
141
129
109
76
97
123
81
62
69
72
69
84
68
43
110
99
56
88
136
73
118
85
66
96
78
60
94
66
101
97
99
58
82
104
38
91
76
101
112
107
108
68
93
119
128
91
69
59
65
70
78
69
36
104
68
41
57
74
26
60
46
106
122
86
39
83
116
107
101
75
72
82
84
103
45
119
96
59
115
103
103
74
78
82
75
109
59
56
91
61
96
72
92
115
57
82
90
74
68
102
108
48
132
126
87
50
91
180
104
85
61
77
127
89
73
51
67
18
116
105
153
61
85
72
41
63
79
82
65
59
96
44
119
107
68
143
75
64
91
113
95
68
93
73
43
53
111
67
76
58
107
55
89
74
71
92
65
66
38
50
61
53
110
67
70
111
40
108
59
99
78
63
73
64
57
28
79
86
131
88
96
70
68
80
75
85
116
65
74
64
129
43
106
61
53
71
80
101
56
80
65
99
110
82
63
85
87
75
87
81
66
58
70
81
35
54
97
73
69
92
74
106
35
97
48
77
67
64
50
109
78
65
70
109
57
63
136
107
78
60
95
61
69
53
60
86
99
105
89
72
43
72
156
88
77
79
74
67
48
42
117
56
108
103
116
32
50
109
98
60
93
75
68
73
80
83
77
68
82
99
61
69
42
85
75
111
68
77
52
52
95
68
66
68
103
102
80
38
89
104
58
78
113
41
62
52
33
93
49
73
91
67
51
47
37
118
57
96
69
85
88
58
86
55
91
58
130
42
70
91
81
84
48
97
86
59
101
61
47
92
88
79
50
65
102
48
59
97
52
51
73
81
52
74
68
82
79
61
32
61
81
76
91
73
50
71
101
45
79
78
52
124
74
56
65
126
60
94
55
78
82
73
96
95
52
74
96
90
88
91
58
61
68
66
74
77
104
70
77
81
83
87
101
48
52
99
58
95
49
84
64
51
74
87
75
84
77
79
95
107
57
56
65
77
99
62
101
69
93
60
109
128
100
50
61
66
92
55
80
64
99
109
54
85
35
80
78
126
110
77
51
94
92
59
114
110
65
53
35
82
64
58
81
104
73
96
105
78
104
73
104
61
58
66
156
55
118
81
46
66
107
91
75
67
83
128
63
118
104
51
42
64
107
91
109
64
94
80
41
81
73
40
60
50
121
66
56
77
68
115
32
76
71
49
89
72
42
42
59
101
83
84
79
48
70
76
84
76
103
84
88
83
64
112
72
53
85
123
54
94
62
83
43
81
85
79
61
44
115
120
99
123
71
52
36
65
50
106
66
71
87
80
89
97
52
124
55
30
107
70
66
72
64
77
94
38
68
94
31
64
75
73
54
79
102
91
98
75
70
54
110
61
38
100
83
62
64
93
109
64
133
83
114
66
87
68
57
60
54
67
81
109
76
33
98
44
39
93
62
74
34
88
81
93
105
67
39
74
60
118
81
70
59
75
53
68
49
65
148
45
42
32
85
85
56
86
64
56
70
68
75
59
68
60
113
88
84
77
53
68
86
89
42
74
152
59
92
46
76
102
84
105
87
65
59
73
91
43
98
111
50
116
78
51
65
64
55
97
43
99
83
106
39
79
63
72
93
93
51
104
82
121
78
109
63
49
53
74
92
63
93
73
84
122
105
93
96
81
81
77
90
67
50
149
88
97
78
75
70
57
68
63
103
67
63
63
94
105
85
97
109
105
68
98
27
88
137
126
67
88
88
67
98
84
56
100
45
62
76
53
88
95
32
78
63
74
118
83
70
87
95
66
72
62
72
57
64
36
92
64
113
123
48
94
71
81
106
51
72
69
110
106
57
51
89
72
61
91
71
51
82
49
84
54
63
85
98
100
122
97
99
62
116
105
103
72
99
38
105
135
56
81
59
72
145
50
103
37
54
73
128
80
105
84
83
90
56
67
101
38
36
79
138
56
60
114
53
77
72
84
102
110
64
59
91
59
57
68
142
80
73
44
107
58
73
83
69
47
44
124
67
74
50
90
53
74
82
66
112
32
90
93
64
89
77
71
52
152
76
70
92
59
37
112
73
68
53
78
47
63
42
116
60
67
94
112
58
81
99
83
69
55
65
65
58
105
110
84
73
48
89
25
104
48
106
44
67
66
79
90
51
87
71
59
74
76
86
61
109
76
115
68
80
63
59
94
92
88
106
102
100
65
41
33
112
81
60
51
76
37
63
91
83
32
89
56
86
65
92
79
57
49
97
124
49
95
103
87
56
64
87
49
134
61
44
76
44
119
85
102
92
69
70
93
85
68
109
101
47
69
74
78
70
65
44
47
110
52
90
65
99
79
92
45
81
97
72
50
59
67
77
151
49
91
81
65
66
61
58
70
89
56
63
90
62
73
93
66
71
113
112
100
82
113
54
48
54
62
89
121
47
67
134
114
67
60
87
79
82
115
87
98
57
110
88
98
94
68
71
49
81
85
85
86
158
70
58
75
121
66
59
83
123
74
68
66
74
100
107
63
54
106
62
88
110
95
62
43
73
39
54
34
68
62
69
76
45
108
78
70
115
79
112
88
56
105
81
92
65
68
58
66
66
153
50
122
85
76
64
82
42
95
56
77
84
101
47
59
52
118
110
79
60
121
55
111
59
71
76
76
69
59
68
101
75
119
104
52
59
86
34
112
85
86
114
92
113
51
48
100
55
64
50
52
36
68
109
69
99
73
56
35
38
120
59
112
97
63
60
94
101
94
76
68
61
63
74
95
43
60
96
88
51
84
54
64
106
73
47
93
115
98
58
65
50
64
69
121
80
70
71
108
51
79
77
119
117
84
69
48
150
83
43
91
42
73
97
102
54
61
81
50
92
66
114
90
128
102
128
82
81
44
55
84
83
70
95
48
88
76
123
52
94
72
76
80
76
92
101
35
104
121
75
66
57
113
29
99
85
102
60
73
61
100
72
72
104
97
102
66
88
141
50
129
59
93
74
94
85
101
130
76
104
27
108
99
55
80
92
52
95
75
98
81
81
70
58
116
63
82
55
46
67
87
106
67
62
101
58
62
65
86
85
48
105
58
95
88
102
100
132
123
107
66
88
112
96
75
110
97
65
80
79
103
43
62
44
32
29
57
73
63
110
88
96
89
77
74
92
114
104
101
101
42
135
51
73
109
59
98
60
45
127
89
35
78
173
81
55
61
57
82
75
72
119
68
38
88
90
70
85
85
66
105
46
77
110
93
77
69
85
86
115
106
66
76
89
83
72
84
58
42
97
61
49
78
91
138
72
68
95
46
67
75
55
97
70
83
49
70
49
55
72
65
77
88
67
65
59
54
123
70
51
46
85
97
65
78
48
56
66
64
70
109
76
62
69
54
75
113
40
74
49
57
53
79
83
55
48
51
72
29
77
74
51
113
99
96
70
110
89
58
49
91
86
77
72
115
74
103
97
89
67
71
87
69
114
66
76
88
95
88
61
92
60
68
100
67
49
55
71
99
106
87
87
77
55
62
137
69
40
64
52
110
58
54
73
90
44
58
89
76
109
71
35
116
85
133
83
53
69
56
116
66
70
40
88
83
74
78
64
89
35
52
82
40
82
79
45
56
47
110
37
69
49
88
41
110
73
70
41
82
70
124
100
39
88
137
81
103
65
81
91
79
52
76
91
94
44
66
112
72
85
61
87
75
89
87
124
112
80
89
45
66
103
63
93
73
88
79
66
77
65
111
78
90
85
119
85
54
100
53
27
71
81
57
62
100
95
84
67
100
45
85
32
83
99
90
94
54
59
76
98
65
39
59
39
84
105
47
118
54
76
96
62
126
78
66
81
79
100
39
88
54
93
76
80
65
39
103
111
97
87
61
69
99
91
78
77
31
56
79
57
68
100
103
41
127
91
114
232
80
55
116
150
88
157
90
57
94
62
83
85
110
91
83
87
49
64
51
109
76
123
97
67
92
97
83
124
109
38
67
79
69
148
77
91
123
104
93
63
96
62
62
66
60
69
58
79
58
98
26
52
74
93
89
108
91
109
76
66
83
90
90
66
32
84
63
83
107
54
126
79
64
73
52
145
124
50
69
83
108
72
95
98
51
49
102
95
64
85
72
55
45
69
61
96
107
100
46
62
104
72
44
67
93
45
90
107
87
75
30
48
69
90
68
57
66
114
53
108
43
68
58
42
81
152
51
66
69
98
67
82
66
87
72
117
97
93
113
118
130
44
108
69
88
55
100
69
49
109
81
75
107
44
119
101
67
80
91
77
32
43
71
92
75
74
45
70
74
96
47
67
91
80
87
84
94
98
153
82
125
99
78
65
112
121
80
65
68
70
64
117
105
109
87
102
113
100
75
76
44
120
46
66
95
84
97
57
62
85
33
65
50
75
80
75
66
78
34
46
57
106
85
90
64
60
96
102
90
101
87
72
104
83
72
56
112
62
122
45
83
93
129
65
55
89
92
48
85
88
62
73
68
79
113
111
114
33
114
103
56
58
109
60
51
92
77
69
50
67
46
50
110
49
84
86
88
64
93
101
92
78
60
81
83
37
47
75
85
59
79
83
66
61
78
83
73
84
72
61
111
83
65
51
76
51
76
65
80
114
67
57
56
152
42
71
49
151
144
119
68
85
75
57
74
50
85
121
94
98
53
73
118
83
61
50
78
38
77
48
81
104
77
139
96
82
77
62
88
73
71
92
100
41
54
66
58
66
104
90
45
153
88
59
49
96
91
87
117
88
123
101
89
41
84
54
45
92
74
119
45
42
93
29
64
114
67
105
91
61
84
86
55
60
92
103
55
51
70
89
59
68
74
92
75
70
79
95
137
65
58
129
85
94
66
92
58
64
40
37
73
61
100
47
69
80
78
82
83
102
71
33
76
79
72
69
41
89
56
47
86
64
96
72
40
125
91
65
58
54
62
93
62
87
74
31
105
85
94
80
87
72
66
124
45
68
84
44
87
78
54
109
55
83
74
73
46
108
76
96
62
51
55
81
74
44
50
34
63
89
89
38
29
90
73
73
56
68
63
108
49
82
36
41
42
59
43
66
140
75
57
67
96
93
33
74
53
87
58
85
71
93
84
49
79
50
64
52
58
85
77
96
161
38
53
50
50
65
114
72
84
87
75
72
57
45
103
107
82
84
102
74
82
112
84
185
105
87
78
54
69
105
105
100
44
56
65
74
78
65
46
81
47
99
56
137
54
60
136
100
92
66
94
84
65
60
122
84
119
58
66
62
53
58
58
66
75
41
60
49
71
84
75
97
54
40
41
57
74
73
80
67
127
98
45
87
80
82
48
50
79
105
59
160
36
118
49
53
71
67
141
91
79
46
59
93
110
63
59
98
43
67
193
127
48
40
25
56
55
90
99
93
112
116
43
59
94
61
64
61
61
43
131
95
58
62
87
90
88
85
68
114
130
78
95
106
113
46
61
77
47
28
72
52
103
96
70
83
45
121
51
108
89
115
68
93
69
66
98
117
92
78
63
68
49
24
56
69
75
95
58
101
76
97
46
76
84
67
53
102
92
81
72
99
71
117
73
55
100
77
90
117
83
89
64
73
60
104
137
66
92
83
59
82
118
66
129
125
69
69
83
45
68
71
60
107
32
110
81
85
48
54
47
90
95
109
126
104
58
75
99
149
66
95
99
137
79
60
73
57
36
39
64
60
110
75
47
74
54
121
112
99
77
59
72
41
78
78
92
102
61
96
83
72
120
107
106
169
39
102
66
102
105
30
58
56
60
60
61
81
89
107
80
73
79
94
59
75
74
91
58
90
44
110
104
62
65
89
58
91
78
87
72
88
70
68
93
91
79
93
107
83
74
100
69
93
78
116
47
75
74
95
100
83
50
95
59
84
55
56
50
132
81
43
140
99
81
75
112
79
72
104
33
58
39
74
119
107
70
63
91
64
62
63
47
93
94
110
125
131
78
86
114
80
95
96
107
54
76
71
86
70
101
114
59
85
44
73
55
96
74
134
92
120
95
91
54
66
103
80
63
101
63
96
97
122
63
61
40
111
65
48
118
117
81
60
88
96
85
67
68
95
97
46
45
103
120
64
93
83
80
58
99
72
108
53
69
92
79
88
66
72
123
89
67
75
62
100
88
55
112
107
47
67
87
70
36
98
75
88
57
89
69
144
52
86
94
58
74
62
97
78
94
58
37
68
61
54
57
96
42
39
64
104
79
69
105
93
51
66
53
52
61
77
88
48
64
73
79
109
112
48
71
101
114
62
119
68
117
68
88
99
122
47
88
51
46
30
100
119
107
132
78
103
92
49
100
69
133
77
96
75
50
52
49
74
156
30
85
54
117
84
98
66
62
57
43
58
83
123
71
100
85
64
87
99
71
33
71
72
111
104
88
60
109
80
62
77
122
86
33
51
27
101
73
60
44
143
75
42
101
90
53
40
74
109
121
79
59
66
104
47
61
45
67
133
85
92
53
47
42
154
69
72
52
68
57
65
83
117
45
128
94
40
69
59
66
62
37
80
61
76
47
61
86
40
42
63
72
97
67
85
82
87
77
101
37
102
64
74
58
123
27
94
61
79
88
96
58
61
98
90
35
86
52
48
95
54
68
48
62
32
72
81
103
119
80
69
93
53
43
101
110
112
156
94
68
67
63
59
86
97
79
66
82
133
97
74
87
101
75
56
93
78
41
68
91
93
93
66
105
144
51
74
68
47
91
43
68
28
129
48
97
57
113
88
51
97
95
124
65
87
51
100
60
43
81
80
49
93
126
74
39
44
34
83
105
63
66
33
67
49
112
79
137
115
77
72
63
68
70
64
62
30
50
94
100
55
56
59
127
64
61
90
102
54
47
93
122
119
108
82
100
84
109
71
66
90
82
74
59
35
115
49
58
74
50
58
54
62
80
84
59
78
35
63
119
66
40
84
69
78
90
88
45
70
52
85
102
73
65
88
84
54
69
48
95
97
110
76
113
56
88
73
121
72
74
56
79
84
92
89
128
162
108
151
45
110
106
76
85
70
53
105
75
57
72
53
77
57
107
100
74
89
71
79
50
115
121
67
85
113
42
94
104
128
82
77
98
65
84
89
77
88
80
85
53
96
55
77
69
99
81
68
103
99
92
44
77
70
83
64
120
79
78
57
61
70
75
64
35
47
57
31
89
57
100
89
66
75
81
79
35
54
95
41
60
114
94
73
75
59
67
100
74
104
64
80
97
98
63
107
87
67
95
60
63
43
72
28
105
64
62
83
40
73
41
80
84
97
62
76
96
94
111
65
38
51
61
90
86
80
141
106
97
101
92
40
67
54
60
109
102
113
73
39
64
121
110
67
85
108
109
89
123
103
49
42
93
92
57
74
39
58
114
106
85
124
69
104
49
63
36
40
96
74
53
64
93
75
69
69
62
81
70
49
86
51
58
88
71
76
81
92
28
100
60
50
64
75
95
76
41
56
68
111
95
76
61
48
43
79
55
98
72
58
49
64
88
112
95
88
112
73
67
83
94
82
62
84
68
100
139
72
95
61
109
55
132
67
73
73
73
62
76
92
79
70
100
97
103
86
82
68
78
74
100
93
65
105
57
121
80
108
79
72
39
52
86
99
56
86
124
63
63
63
64
79
101
99
136
78
78
54
96
75
58
61
118
61
74
58
50
69
86
57
77
40
101
72
52
67
62
56
38
110
78
51
95
82
74
114
67
80
46
104
125
176
67
69
102
100
72
79
127
96
67
49
57
105
63
104
76
42
43
114
92
73
57
44
85
78
59
86
36
120
115
68
54
69
80
29
98
80
73
103
38
48
87
91
62
46
68
70
154
75
64
47
64
49
62
100
76
59
63
47
41
73
84
53
67
66
166
75
141
75
78
83
116
114
84
109
63
63
35
58
63
46
97
81
65
79
45
76
115
31
65
87
101
99
79
81
84
43
42
104
73
26
88
84
22
80
83
52
58
86
95
103
79
50
111
64
93
120
69
63
98
78
27
68
87
48
75
41
81
55
65
86
48
60
105
121
96
58
97
80
70
51
69
95
105
94
73
84
85
89
88
55
51
55
76
116
81
44
121
89
77
79
66
47
94
117
73
121
89
47
53
70
63
76
67
88
87
58
66
92
88
102
101
73
87
40
56
59
36
73
57
60
56
63
81
63
61
75
81
89
76
73
72
32
62
79
85
87
91
38
54
41
139
88
118
94
78
107
90
79
111
72
97
107
74
100
61
46
103
131
98
72
117
62
87
119
84
58
96
69
119
63
80
136
93
43
52
82
93
77
126
58
137
90
82
85
85
84
103
55
54
69
37
102
38
112
53
80
75
67
70
77
71
76
36
129
67
90
77
72
71
75
37
108
59
64
93
80
91
44
81
62
26
52
65
74
35
107
81
125
58
59
72
76
97
78
92
101
112
53
64
85
55
88
67
51
56
116
61
113
59
92
41
116
57
46
92
79
58
70
73
129
72
165
82
46
85
76
102
87
194
97
87
83
117
76
79
70
45
92
38
73
120
70
105
74
82
66
37
79
67
113
74
73
112
154
48
82
63
49
72
58
69
74
73
40
98
68
79
111
158
113
59
76
166
48
76
40
109
92
55
55
53
42
88
74
72
61
21
79
77
86
118
90
72
129
61
45
88
139
56
68
63
101
103
62
62
78
67
40
67
45
60
94
50
83
60
67
95
68
76
108
99
102
39
131
92
50
78
93
87
51
50
61
123
77
31
86
144
48
88
101
108
117
82
149
56
61
82
96
78
82
93
98
66
74
114
55
114
94
91
108
122
48
100
73
96
45
39
95
75
96
45
57
107
78
39
111
25
68
125
103
109
52
67
119
65
96
107
73
22
75
46
72
73
52
109
94
54
68
55
56
76
79
96
51
113
54
62
54
71
80
74
69
136
61
81
63
82
120
47
83
104
77
81
60
103
106
47
84
96
97
72
54
73
57
85
77
99
49
71
50
66
83
96
103
84
121
98
88
99
50
63
84
107
75
33
69
101
49
81
86
52
105
105
46
54
79
93
57
40
72
89
89
111
68
63
69
58
85
149
66
83
106
63
81
66
39
43
82
90
81
105
93
42
53
87
106
86
61
42
143
105
80
50
88
89
79
93
106
57
72
98
84
33
84
31
71
109
165
94
66
68
86
110
39
128
80
107
75
61
50
55
85
51
113
102
58
90
73
49
82
83
99
75
26
124
120
61
130
79
83
121
38
80
53
46
57
93
51
83
81
69
64
113
93
88
96
44
113
80
51
64
83
110
62
79
52
63
59
45
78
31
72
94
57
81
74
107
68
22
109
62
65
117
98
42
46
86
104
91
98
81
37
85
151
91
56
62
55
83
95
35
65
63
88
90
71
77
82
69
125
58
60
105
120
84
123
52
70
135
84
152
65
33
57
61
97
83
54
86
99
51
84
79
79
60
102
86
79
72
87
74
64
65
60
38
102
60
89
82
93
72
99
57
72
67
89
64
48
44
68
89
115
49
46
29
58
74
90
63
85
40
85
93
58
76
58
81
119
94
49
35
73
88
81
104
71
104
50
54
80
91
77
81
60
69
82
79
99
88
85
33
118
62
90
64
84
130
76
76
47
65
69
139
77
108
53
81
114
67
76
106
105
52
95
80
83
106
73
86
77
67
92
61
58
112
106
63
81
83
74
54
66
63
52
126
46
89
59
68
46
70
86
91
65
97
65
123
110
57
71
57
106
60
44
88
38
113
97
87
54
127
87
27
153
75
91
107
84
92
100
82
62
44
87
104
74
122
66
51
84
119
105
105
41
67
83
69
78
71
42
79
82
74
173
125
60
55
106
66
113
69
125
37
100
92
77
98
102
84
44
70
70
69
134
90
66
131
62
92
73
99
68
110
46
48
31
78
42
75
73
56
102
69
56
86
105
59
57
124
62
126
45
101
41
40
47
51
144
77
33
87
83
79
47
70
75
121
71
58
90
118
44
31
63
74
127
32
82
92
77
104
75
85
55
110
59
121
103
71
57
103
67
72
44
96
88
111
84
63
75
78
86
92
89
46
79
106
132
72
109
61
61
80
140
99
76
73
91
116
105
40
92
86
79
69
107
52
39
85
88
98
115
114
169
53
61
77
50
71
130
56
85
78
81
122
91
64
106
94
85
99
82
81
53
73
85
94
80
71
82
94
73
97
113
43
129
53
49
59
64
50
86
46
84
52
76
86
54
70
55
46
111
77
56
66
67
86
77
75
24
98
74
48
77
54
53
76
55
69
58
52
59
95
52
66
62
84
64
92
104
43
91
34
110
69
42
52
67
104
72
61
36
107
114
114
60
104
85
66
70
59
74
124
60
45
94
63
98
104
98
70
70
61
70
64
103
40
88
63
41
99
112
76
98
60
89
55
80
96
67
63
72
48
63
103
109
95
62
62
82
46
68
102
78
91
40
37
71
124
62
91
71
54
54
73
70
76
124
61
48
105
89
92
77
71
72
30
82
91
110
101
152
100
106
79
106
89
45
79
112
86
93
109
89
72
83
90
90
67
42
107
61
76
123
41
95
58
95
89
60
31
137
110
53
94
122
91
123
108
60
65
93
54
67
138
99
49
87
43
112
122
51
74
85
98
82
46
74
32
36
52
61
52
98
96
80
127
117
83
110
95
69
78
69
33
123
75
70
59
73
86
85
120
50
51
110
79
67
50
35
66
77
45
54
109
57
55
55
82
81
112
85
107
98
109
63
95
76
62
52
78
62
65
43
113
117
73
42
74
50
93
63
65
41
50
58
59
69
70
54
105
29
92
107
60
80
86
46
80
83
89
76
66
79
69
76
64
50
46
31
61
95
57
70
72
71
91
55
33
58
97
80
67
62
63
76
45
85
66
72
82
39
84
92
44
47
99
63
70
70
103
72
54
100
83
60
70
68
81
85
51
64
67
77
108
95
52
71
84
40
77
70
107
72
80
43
126
70
69
66
72
110
58
62
120
75
116
113
40
73
41
87
95
122
138
67
61
65
93
61
61
33
90
70
100
47
70
116
54
82
51
98
85
75
42
97
74
53
118
48
90
57
84
80
63
66
76
65
101
92
123
75
132
64
131
56
86
88
121
64
63
73
49
49
64
82
53
80
94
55
126
90
108
48
121
66
51
59
68
98
79
90
44
85
76
68
110
103
66
48
75
47
102
81
79
119
73
79
88
88
83
69
58
60
72
69
48
130
80
56
76
65
76
36
68
75
56
50
90
85
67
79
102
43
38
55
66
39
97
97
71
89
38
108
77
62
90
131
106
100
36
60
68
61
85
53
78
61
104
83
64
90
64
68
62
51
90
71
89
132
101
54
64
92
76
52
90
57
89
88
67
91
59
94
119
101
101
103
38
86
61
108
66
87
113
83
65
64
113
76
39
134
92
62
49
59
111
58
28
57
107
91
51
54
36
64
78
55
101
65
44
57
100
109
57
69
78
32
63
67
101
71
35
119
76
78
79
72
51
64
89
54
93
56
57
60
88
193
56
138
119
45
83
71
83
55
110
78
79
136
77
80
64
70
70
83
66
72
65
69
58
49
72
70
110
56
66
80
83
93
78
116
60
67
111
118
104
90
63
79
62
78
35
71
111
76
184
60
98
117
89
58
99
88
109
42
76
87
48
91
154
95
98
82
111
71
65
47
61
104
84
82
99
75
68
80
97
97
127
99
60
61
79
80
44
56
111
83
81
84
40
190
109
55
56
80
61
51
65
129
56
52
64
121
149
68
66
73
110
108
60
103
91
83
96
79
98
56
69
51
49
118
71
104
105
78
85
98
82
72
103
127
75
57
75
78
68
41
69
79
56
60
170
43
101
73
86
84
57
93
82
60
71
82
103
78
48
55
38
77
97
48
64
54
95
74
61
72
113
36
30
52
52
91
77
88
74
61
42
59
70
74
86
73
78
47
49
66
69
67
51
58
102
124
41
83
76
73
58
30
126
92
27
56
46
69
79
70
80
91
97
102
47
106
54
67
74
80
60
44
61
82
71
106
108
73
103
77
68
56
60
60
75
67
59
70
64
55
60
50
64
83
102
45
45
114
89
132
64
67
75
73
90
91
97
118
52
43
56
85
53
141
64
73
67
144
90
48
92
39
72
42
47
108
82
86
124
52
75
67
84
45
64
56
61
91
57
121
97
55
82
75
51
120
44
54
27
156
73
45
55
129
75
80
88
80
106
80
98
86
99
46
92
135
83
90
94
67
116
37
92
23
78
101
142
71
88
52
87
82
79
91
91
77
53
111
95
64
80
62
62
34
56
120
87
61
60
62
70
45
73
79
31
91
78
107
82
73
71
54
76
87
106
113
126
127
79
68
41
69
41
71
61
45
125
116
56
59
67
68
46
52
92
103
101
51
49
29
79
84
71
146
79
36
101
34
99
68
77
133
49
132
59
67
44
91
46
51
85
86
37
32
99
63
69
95
62
76
82
82
47
63
88
113
113
64
73
81
73
62
65
105
78
61
106
60
83
52
73
65
73
68
54
51
52
119
64
45
79
73
85
94
59
105
46
83
118
61
84
127
69
78
74
56
75
70
53
97
34
42
100
74
77
57
128
91
82
82
119
47
110
63
56
55
46
89
87
84
72
109
63
54
68
44
89
113
56
80
68
56
51
118
77
25
68
59
78
74
81
83
81
93
67
64
133
84
76
140
108
93
58
92
43
81
86
90
78
57
100
59
74
72
84
60
90
81
42
90
67
51
48
100
112
90
111
96
105
108
57
69
89
82
133
86
66
36
72
89
104
68
96
120
55
84
57
117
109
97
44
55
117
85
33
63
101
101
102
80
78
64
98
79
145
73
88
103
56
47
91
95
79
70
98
50
62
31
68
40
80
47
57
86
77
76
54
91
75
79
88
72
78
43
48
47
77
81
73
94
80
152
23
124
42
87
97
50
76
126
111
84
129
91
101
113
72
42
62
64
55
72
52
71
89
69
78
46
89
76
79
90
63
97
54
64
79
69
54
73
50
34
64
62
73
69
52
62
161
87
57
44
118
108
91
66
43
80
77
68
87
66
110
71
69
126
103
48
66
108
64
105
106
108
61
121
99
52
109
78
119
76
73
67
72
45
94
81
91
47
54
73
79
88
52
103
90
106
77
93
75
53
49
79
69
75
47
87
66
73
65
61
54
81
55
64
107
92
76
98
73
58
85
53
55
81
36
134
54
99
59
84
127
53
46
93
82
75
120
73
46
94
110
69
45
69
108
90
63
90
137
78
83
70
104
99
128
108
110
82
41
51
82
38
82
89
56
77
91
62
52
59
104
85
53
61
83
90
70
83
104
71
84
56
140
52
67
108
45
101
78
76
85
47
93
41
70
115
120
107
63
120
99
62
79
61
56
80
60
101
56
78
75
68
91
47
84
65
50
104
67
105
87
109
50
69
42
104
94
103
85
83
116
105
100
90
59
100
64
100
96
68
71
35
55
106
83
69
79
105
62
106
72
149
69
79
59
73
87
71
66
67
104
32
64
46
57
104
67
89
91
77
52
63
93
52
96
73
80
107
73
71
90
75
57
77
30
83
61
94
136
112
46
88
96
89
68
149
129
49
116
87
82
57
60
73
69
74
101
62
111
60
66
83
123
47
119
74
36
47
40
56
120
90
55
74
112
106
123
58
71
75
75
62
52
78
63
82
76
63
77
33
102
59
72
50
71
64
76
38
59
123
58
59
75
112
67
91
97
51
116
98
64
53
56
79
142
180
51
58
64
131
29
65
61
75
57
40
94
89
93
98
61
82
111
59
46
67
77
181
104
50
55
91
81
40
91
85
53
95
90
67
90
70
98
95
64
46
33
62
66
119
81
58
89
62
82
77
60
81
75
42
145
80
62
77
68
77
75
83
117
129
51
71
55
78
39
86
52
94
71
82
99
72
131
60
111
55
94
57
91
86
63
102
74
29
79
49
55
56
81
127
77
80
66
68
121
84
56
46
65
63
83
77
39
122
56
60
44
56
140
59
59
110
69
91
100
69
73
128
53
76
81
51
63
61
71
103
65
73
61
42
122
67
81
61
104
68
63
69
124
116
96
86
85
75
64
139
34
70
101
63
132
92
64
73
70
84
54
63
68
109
67
95
57
40
118
55
79
82
70
115
92
157
97
35
81
81
46
68
76
92
125
76
25
44
45
80
65
105
37
96
83
59
64
103
66
112
93
71
66
88
94
148
109
88
62
55
98
64
104
108
98
93
85
104
47
75
81
80
80
95
64
51
48
125
86
88
74
76
88
103
76
83
54
183
58
42
67
85
94
49
75
68
38
123
83
104
108
103
57
68
66
122
92
38
127
116
99
101
82
42
59
77
50
60
65
76
93
56
77
56
65
98
72
70
94
91
77
75
85
36
82
83
74
57
39
94
113
99
60
71
41
66
60
96
86
29
86
106
131
84
39
78
107
39
96
79
46
80
71
44
50
105
75
102
81
70
122
57
51
54
76
125
73
48
85
116
119
82
75
51
49
84
60
25
145
77
93
74
184
56
38
73
85
83
60
48
98
91
83
53
150
90
53
86
29
72
82
76
84
53
69
121
75
102
65
65
117
67
154
64
89
50
83
33
81
45
68
85
79
63
77
110
73
101
89
81
119
125
101
82
114
106
67
57
105
76
76
118
107
63
106
82
74
98
108
46
65
63
108
39
76
87
40
107
77
100
71
79
57
72
75
81
58
86
73
85
81
86
85
99
89
135
97
61
40
90
81
75
106
92
33
88
108
52
144
49
73
35
65
62
49
66
47
42
61
86
51
105
78
108
73
37
54
72
77
103
99
68
105
109
67
65
53
46
111
92
103
55
76
72
72
79
75
39
26
47
144
66
30
119
67
71
58
82
80
66
114
43
55
78
86
49
76
61
54
47
68
123
34
103
73
109
52
78
76
64
110
94
75
53
69
135
108
79
87
53
90
69
65
134
91
56
59
99
90
64
136
42
64
95
79
61
64
71
70
86
112
54
60
52
64
111
94
30
61
73
81
45
95
77
51
54
74
97
104
99
62
77
60
97
53
86
56
101
48
58
61
40
88
62
51
46
79
81
68
79
83
105
83
112
65
76
39
51
84
161
145
64
84
91
60
61
103
101
61
82
39
75
84
102
77
45
89
114
114
85
92
90
44
137
96
73
75
63
73
66
89
66
32
89
80
69
90
89
95
105
85
66
164
87
32
120
85
88
65
108
43
53
63
78
122
129
98
96
98
99
76
59
54
77
91
119
40
61
73
61
56
152
93
85
85
43
78
73
90
88
77
98
101
96
104
87
64
103
61
71
67
32
105
74
23
103
115
55
52
136
73
82
47
80
74
99
66
97
73
72
55
66
66
66
111
99
99
57
108
65
132
67
69
81
84
77
41
60
69
105
126
85
60
75
72
90
115
73
79
85
33
100
91
74
72
95
91
71
70
89
40
83
82
99
101
78
81
84
99
59
83
41
69
110
94
86
31
57
71
96
81
117
48
47
111
76
48
62
66
115
52
69
56
59
85
61
40
85
80
133
74
81
147
109
105
80
68
93
81
71
63
72
47
51
135
55
86
83
81
89
80
63
57
113
91
91
109
65
62
60
54
55
43
69
65
37
55
68
101
65
57
91
110
134
94
111
50
59
56
99
95
71
68
107
104
51
63
32
97
100
62
67
90
67
122
84
88
65
85
69
44
44
97
97
71
58
60
70
39
64
60
60
143
95
118
85
83
87
93
32
123
127
56
57
90
102
194
127
44
136
71
96
66
85
43
88
43
68
69
99
41
30
65
100
37
57
48
67
81
51
79
81
85
52
100
86
69
49
81
123
63
71
117
116
83
125
45
60
50
54
84
91
154
86
63
31
68
74
85
46
89
96
50
92
105
107
47
54
83
95
81
56
80
92
89
81
105
93
29
84
89
99
42
48
50
59
58
105
96
106
53
75
51
82
50
59
100
82
113
78
68
95
107
68
96
99
61
103
82
62
62
80
103
42
84
80
118
74
66
102
54
54
91
79
72
52
105
85
96
63
81
40
73
73
71
105
97
72
66
91
55
73
67
92
92
63
93
92
86
96
75
64
99
95
30
128
89
71
54
77
63
77
74
120
155
121
102
125
58
66
66
66
70
66
34
91
74
52
39
99
90
42
70
76
93
47
102
57
49
118
51
54
133
131
106
85
60
94
134
71
93
84
86
83
116
65
30
77
103
83
74
91
74
98
119
82
84
159
68
91
75
79
72
70
88
72
52
93
65
86
113
127
86
105
95
55
58
107
92
103
93
86
88
87
63
64
48
53
37
39
37
92
74
49
104
71
96
100
60
74
54
25
69
61
69
97
113
111
68
59
80
44
101
46
131
48
130
50
53
101
80
62
79
148
54
75
114
163
36
76
59
74
85
152
48
99
56
46
47
31
109
88
57
33
36
95
100
130
39
67
114
105
105
55
137
59
72
67
67
55
124
57
75
74
99
102
36
76
71
72
74
91
57
72
39
88
125
65
71
132
66
84
87
83
103
79
109
74
74
73
80
105
71
128
81
60
49
99
95
63
78
67
51
95
113
88
78
112
113
89
45
116
58
79
88
101
81
81
110
108
111
75
81
123
55
67
85
105
65
116
58
95
60
123
46
41
53
92
124
88
54
43
45
68
62
69
57
50
44
46
58
61
69
48
112
75
165
109
61
75
126
109
66
78
104
95
46
136
59
63
85
81
67
80
72
62
103
52
74
53
97
106
108
73
71
114
65
105
128
46
59
56
56
99
51
78
121
125
64
71
50
106
82
64
65
157
105
119
54
46
76
99
50
92
81
62
60
96
103
66
78
65
101
51
64
74
49
44
111
55
81
100
116
58
102
40
52
66
93
86
99
79
94
77
89
45
141
26
46
83
94
51
48
90
72
113
68
66
70
79
90
86
66
58
160
42
106
65
100
64
89
59
118
92
68
53
73
63
68
131
70
101
119
65
72
118
87
100
66
40
74
64
91
53
54
66
88
87
38
50
76
126
55
96
109
96
81
72
86
81
124
93
87
70
101
66
74
45
43
68
25
102
69
51
108
116
55
65
83
95
75
90
53
83
68
100
74
97
80
47
123
79
109
123
79
96
72
59
55
59
65
107
85
108
136
102
77
60
45
81
76
94
68
81
60
52
32
66
81
102
110
51
52
86
53
81
142
97
70
57
74
56
86
62
89
93
59
56
83
97
35
59
38
37
77
121
60
71
99
44
57
59
51
63
59
31
86
62
103
121
112
80
79
76
96
85
54
78
50
70
100
75
97
165
150
32
38
112
52
93
77
71
75
104
86
110
117
49
67
73
126
53
73
46
50
79
85
101
117
49
57
82
71
75
54
76
155
59
58
93
93
125
55
32
97
61
53
117
61
52
117
78
42
74
65
39
58
79
106
127
74
78
37
31
59
113
105
102
72
48
104
52
139
127
107
78
88
76
72
161
71
44
91
45
83
93
66
32
59
105
91
84
93
92
38
52
128
76
129
56
78
74
79
75
88
62
111
49
54
86
74
102
75
126
108
87
80
57
108
44
125
94
118
84
111
52
100
126
96
98
110
78
106
34
64
132
75
53
48
96
78
131
84
99
128
53
53
59
58
80
74
69
77
83
63
138
69
80
137
69
70
82
35
70
113
58
46
63
61
108
111
70
63
97
105
42
92
89
75
110
122
53
115
69
34
83
80
101
47
53
52
116
171
89
54
98
50
83
65
60
84
57
35
120
80
69
112
111
50
36
73
70
62
95
111
140
96
118
91
75
112
112
89
113
89
80
43
70
103
65
100
118
69
92
36
113
54
78
124
89
78
77
100
34
65
76
48
66
98
88
81
58
59
79
112
58
51
84
66
66
95
73
37
107
69
82
79
116
47
87
81
78
72
97
52
68
58
105
58
77
77
86
112
37
133
59
46
58
114
47
109
66
75
122
68
87
60
88
109
90
124
57
82
118
75
93
104
104
89
102
79
109
85
56
69
66
75
86
88
100
89
66
105
122
39
72
90
112
92
102
66
81
126
69
100
124
87
48
63
95
53
88
88
85
150
144
60
69
79
34
50
43
93
44
60
78
53
97
82
73
103
67
59
90
138
58
134
87
57
87
127
103
58
82
94
70
74
65
81
79
92
41
86
97
64
65
94
82
101
108
80
61
117
54
69
127
118
56
75
119
90
77
75
84
58
133
45
23
59
74
109
62
78
67
52
70
132
126
136
81
45
75
60
99
79
82
58
102
113
62
119
97
80
62
80
72
85
74
42
101
75
82
50
90
91
67
54
69
52
67
100
39
125
58
61
72
67
106
110
97
72
57
105
104
109
61
84
84
56
79
91
48
81
56
72
67
106
118
58
120
102
79
86
43
49
88
89
61
126
57
52
65
71
90
95
61
77
87
69
71
75
58
72
102
96
66
94
69
93
100
172
96
79
84
32
98
89
68
95
139
75
68
130
79
86
114
68
37
88
76
60
85
87
71
68
70
63
65
72
61
50
33
103
64
102
45
45
42
70
71
95
130
57
58
61
57
89
81
87
58
114
83
109
67
150
85
53
71
70
80
58
74
72
91
113
86
99
67
124
48
68
95
87
81
92
82
91
67
102
90
109
73
57
42
79
75
75
68
61
82
77
99
82
59
71
27
72
58
62
43
96
94
85
72
85
94
72
61
113
132
62
105
130
106
48
91
75
81
61
73
38
44
114
88
101
70
52
85
70
95
120
62
79
136
92
98
69
76
125
106
56
99
122
84
119
99
86
87
113
90
102
85
56
71
103
66
50
45
69
90
63
61
108
179
74
43
122
65
66
34
74
62
79
71
51
53
90
43
69
68
52
81
61
46
37
91
76
61
153
81
53
89
66
81
45
79
80
81
68
76
90
123
90
49
141
46
78
61
79
96
91
59
100
79
93
38
56
101
83
67
70
57
73
38
97
70
60
86
54
89
79
76
110
43
69
79
86
63
76
70
88
95
94
66
59
79
70
94
145
80
52
90
81
107
100
99
50
87
137
48
139
121
43
102
50
80
98
113
71
62
51
80
81
38
160
64
105
88
67
89
95
52
35
56
98
87
62
68
86
45
110
54
122
112
84
76
65
54
70
89
103
77
93
89
59
70
70
71
60
99
54
71
89
96
71
87
88
116
63
54
88
78
84
67
57
62
45
53
78
57
104
56
64
117
79
111
55
45
74
161
62
50
72
101
55
57
35
64
74
54
36
81
76
91
73
86
104
47
50
67
76
180
98
37
98
54
55
65
140
63
49
65
55
54
87
77
178
84
57
47
99
110
88
84
108
66
115
31
72
85
66
110
122
82
51
59
79
61
60
116
48
107
91
98
53
90
69
105
101
76
77
109
38
61
91
76
98
88
60
87
100
82
50
133
85
90
84
70
73
75
103
44
75
63
41
127
99
95
62
93
100
56
35
67
75
116
178
118
65
101
85
123
49
121
84
32
71
113
77
95
73
138
82
47
48
62
64
72
111
63
97
89
95
107
45
46
70
60
32
92
67
61
69
131
57
59
72
45
56
59
55
82
94
56
68
67
63
70
75
94
55
120
99
50
62
117
83
84
52
67
83
115
90
79
78
62
68
86
126
43
84
73
113
76
116
98
64
55
89
67
75
49
116
81
34
104
74
121
124
44
118
47
79
95
72
72
54
94
72
75
54
54
70
89
77
32
58
86
72
54
84
43
72
57
50
83
51
63
87
92
85
136
100
107
68
76
70
49
120
106
45
73
59
53
78
70
65
100
59
141
67
65
52
79
57
107
46
80
76
41
91
68
116
93
101
81
75
70
69
102
54
74
68
38
95
62
90
96
86
40
100
101
71
86
96
76
82
58
54
80
67
74
62
87
41
116
63
96
85
90
46
78
61
125
95
73
97
106
73
96
112
67
82
92
130
93
70
57
99
62
67
91
61
57
72
87
68
85
61
59
47
88
118
28
99
91
97
56
104
67
95
54
88
112
114
59
56
43
67
99
38
84
127
79
47
107
74
91
100
43
141
67
59
72
111
79
69
37
54
72
87
107
31
127
72
63
128
100
31
87
87
40
88
119
84
64
147
72
103
54
69
59
50
102
46
53
98
88
76
98
52
67
82
101
128
67
74
98
50
86
62
63
70
85
74
109
66
97
61
67
61
76
54
60
74
92
48
84
28
74
30
92
64
45
64
65
87
58
63
74
78
73
127
66
78
100
81
66
50
104
51
92
73
33
36
109
97
86
74
87
64
119
96
53
83
63
105
62
67
89
48
47
71
77
76
74
82
79
58
134
132
43
56
102
72
139
113
75
64
64
72
150
54
97
67
125
102
107
95
125
93
97
96
47
39
42
69
82
84
90
98
79
77
69
69
85
131
107
76
118
69
51
60
54
41
61
57
78
56
52
67
67
72
71
38
85
130
91
29
148
82
69
89
61
83
61
88
54
73
43
51
74
76
121
73
98
100
76
77
65
48
74
115
102
89
47
82
98
102
50
93
88
104
45
52
60
61
69
58
56
56
92
93
96
67
59
68
57
56
56
73
48
124
69
61
105
81
44
99
56
73
48
143
103
55
49
72
56
134
81
46
101
47
117
87
82
70
94
59
85
80
116
69
52
108
80
62
66
72
86
85
104
86
71
138
48
57
83
68
82
73
57
65
52
77
57
55
109
79
75
78
40
33
125
48
49
110
75
78
103
63
60
68
44
72
104
49
46
47
59
49
72
54
49
91
63
42
79
41
61
66
85
56
49
76
66
84
75
97
43
74
74
153
52
55
70
58
69
55
76
67
50
23
57
63
102
44
49
49
48
87
107
58
68
56
104
47
91
76
78
99
118
104
67
61
67
91
53
70
65
114
84
67
97
170
59
70
88
57
79
97
68
56
61
77
65
27
59
54
69
108
69
103
102
97
82
78
129
59
50
66
59
81
91
63
99
93
46
50
97
79
85
97
98
76
98
64
57
87
95
92
69
78
102
89
67
53
139
96
127
101
72
87
67
67
87
66
38
87
86
66
91
96
62
113
71
63
87
88
83
53
35
57
88
80
83
58
92
111
127
47
81
75
63
96
79
72
77
67
67
112
100
75
144
50
60
69
64
143
117
60
50
94
42
78
23
77
69
53
65
66
91
83
96
78
126
48
81
87
163
100
72
53
116
84
64
109
106
88
51
71
55
105
66
131
89
72
75
76
102
76
95
83
66
98
66
65
99
128
59
54
80
71
50
92
73
69
44
56
65
89
87
51
95
62
91
99
58
37
69
55
64
90
59
76
71
73
62
105
62
48
83
132
62
96
74
95
93
82
74
38
90
53
63
45
41
81
44
130
69
73
33
86
79
101
83
82
70
44
71
132
93
96
80
114
56
74
52
71
53
101
81
78
43
92
75
110
88
33
64
76
92
60
112
116
79
80
85
79
74
154
104
34
56
100
78
46
53
51
55
76
84
111
93
103
145
91
100
50
84
83
61
78
97
104
78
57
122
128
66
41
62
58
55
95
57
50
90
59
93
56
70
42
77
62
69
88
56
103
55
68
110
68
120
85
64
71
65
71
33
89
98
159
117
72
59
52
47
80
90
58
129
68
135
50
47
44
94
47
77
94
131
12
97
78
30
42
63
74
40
101
101
64
129
93
40
87
65
56
77
38
98
101
73
83
90
77
102
39
64
106
74
71
56
67
83
96
107
50
45
106
91
52
123
94
41
32
76
48
95
70
95
62
66
55
49
73
69
32
92
31
53
67
56
68
30
69
29
62
121
80
107
74
84
50
51
98
83
61
102
111
83
142
57
124
100
111
82
84
66
73
112
189
94
39
59
130
53
66
89
58
54
99
84
109
59
62
48
93
122
67
128
68
78
79
96
68
117
68
103
98
77
99
58
42
41
66
114
118
81
121
82
61
44
122
44
87
55
88
58
79
130
77
105
43
67
97
65
75
60
109
45
97
68
62
64
73
100
137
85
56
54
69
75
80
125
59
81
68
54
65
107
44
79
50
82
54
55
86
79
82
49
74
45
68
88
62
65
67
70
135
62
32
57
75
68
108
63
66
65
86
66
121
105
45
71
67
60
112
84
60
84
114
78
54
71
36
39
59
84
102
56
92
65
58
65
53
81
80
54
66
62
91
66
42
61
68
42
39
126
54
84
111
47
91
69
75
61
59
61
124
126
81
63
81
89
69
70
64
48
64
91
85
33
63
110
45
68
67
91
62
97
99
42
61
94
68
77
48
95
47
69
30
42
107
68
103
61
93
101
56
55
29
75
47
132
71
69
79
88
71
52
79
60
72
35
55
61
96
66
56
104
35
110
65
43
69
57
42
73
54
79
76
62
150
97
85
51
57
38
47
78
147
91
158
175
68
48
78
55
85
72
44
60
56
62
55
117
77
97
97
25
62
64
71
70
51
78
93
103
67
63
101
83
80
94
105
38
95
117
54
98
67
57
88
118
41
80
76
63
54
69
49
79
85
36
129
92
70
84
71
70
100
47
117
65
85
60
44
95
94
107
108
103
90
66
107
79
50
114
68
60
68
82
84
81
71
106
85
129
60
94
105
68
81
71
60
86
108
71
65
118
118
129
69
43
96
68
101
115
74
77
122
60
127
87
98
74
82
43
78
58
101
53
63
69
49
81
68
81
76
107
81
58
81
56
69
62
130
57
61
86
116
76
96
106
96
98
55
91
27
81
74
71
61
86
95
37
76
99
90
87
40
56
67
73
100
133
70
103
63
108
91
109
135
68
76
104
28
69
76
82
104
84
137
111
79
76
59
60
99
64
67
80
69
171
56
99
59
64
52
88
125
87
48
63
49
62
148
45
49
81
49
63
29
134
107
92
65
125
89
85
108
73
106
50
84
42
33
47
69
55
72
96
74
87
50
57
66
94
124
81
76
114
91
65
63
114
129
75
73
72
80
104
49
48
113
80
63
53
60
55
80
84
65
45
56
62
105
45
86
79
71
77
77
95
70
45
78
101
98
95
68
68
63
90
105
91
43
57
67
115
78
56
87
85
85
45
68
119
100
75
53
58
65
65
83
84
92
94
88
78
69
85
68
79
87
75
116
81
119
104
103
31
58
82
99
86
88
44
59
93
81
42
91
85
134
100
37
35
81
39
119
85
85
101
90
88
50
100
104
81
62
63
68
59
47
74
94
130
122
62
60
100
75
69
42
134
142
83
40
65
80
62
62
66
88
112
61
60
98
74
108
102
96
106
75
58
81
113
89
55
34
45
72
65
75
91
103
55
99
70
33
53
70
70
30
60
42
49
48
58
76
62
44
86
116
105
65
42
57
81
77
60
84
74
98
50
131
58
92
80
78
68
100
68
61
103
98
88
66
66
94
97
69
79
79
45
95
74
101
107
68
41
96
78
37
109
107
101
90
41
55
78
46
81
76
82
56
50
75
96
107
46
64
102
66
55
92
101
100
119
91
89
72
67
123
56
89
100
126
99
92
84
93
73
35
56
93
110
65
106
60
117
72
69
45
127
60
38
138
47
63
77
47
53
37
56
78
76
60
69
111
80
45
112
65
54
36
101
90
157
57
91
61
56
39
57
84
94
98
98
34
94
71
52
85
79
68
72
54
87
45
102
94
66
92
87
72
87
100
101
50
74
55
99
101
66
65
87
60
104
35
93
73
72
107
87
84
63
32
77
43
99
84
50
132
47
84
133
58
47
85
61
63
75
106
85
53
77
78
77
90
40
125
84
53
93
58
103
108
103
74
107
77
113
72
90
45
61
84
70
93
49
81
59
65
89
64
109
49
54
87
82
75
99
88
101
135
75
66
70
86
61
42
105
105
96
99
87
91
89
73
79
54
101
80
108
73
87
62
94
85
83
58
63
53
61
87
84
65
55
75
74
96
82
87
120
68
128
60
88
58
133
33
53
67
78
85
41
57
106
62
80
111
78
86
71
62
68
81
67
28
49
81
114
82
43
73
49
52
72
49
105
99
78
75
97
115
105
91
80
58
137
59
69
38
95
75
67
64
33
136
100
94
82
114
62
72
64
60
86
80
139
82
66
69
51
54
85
102
106
62
58
47
46
81
75
50
32
69
59
106
81
56
55
119
89
44
71
109
128
70
60
70
51
112
142
46
74
70
104
45
82
105
74
94
123
68
63
48
77
53
84
123
63
77
36
31
121
66
49
74
134
49
101
125
45
118
26
56
73
72
73
63
67
137
70
50
70
71
94
101
65
115
109
54
137
93
55
69
56
62
119
74
40
44
80
76
82
30
91
71
72
43
63
54
72
90
64
76
61
56
112
92
99
95
89
76
53
58
66
65
101
103
79
48
49
112
83
108
82
48
87
70
87
85
51
44
123
65
68
65
81
36
37
97
120
114
65
95
122
101
92
52
90
99
103
48
94
65
64
88
82
93
121
108
66
78
96
50
51
98
37
72
51
72
119
63
72
62
39
78
114
82
109
93
109
71
63
58
104
97
58
70
87
123
86
137
142
120
66
51
47
75
41
181
47
174
94
58
93
76
113
84
114
61
73
79
45
79
76
110
72
74
62
93
87
65
83
48
92
81
83
127
67
92
63
116
108
62
72
64
49
78
82
102
47
47
57
89
74
99
60
106
43
90
42
152
58
97
66
26
80
59
85
181
110
54
59
52
110
70
80
55
29
65
56
61
70
49
86
62
153
117
83
54
99
135
48
52
76
87
98
64
67
64
80
60
51
122
71
77
71
87
65
51
103
77
66
50
64
74
50
52
71
122
66
75
64
53
68
69
55
107
78
80
42
68
78
51
58
69
62
56
107
78
78
118
84
64
50
46
96
79
55
119
74
55
67
68
65
120
50
64
79
101
71
89
58
22
25
59
95
87
113
47
52
67
91
93
99
78
69
61
125
91
61
95
62
79
62
81
110
44
59
139
65
63
60
65
75
71
134
57
62
84
57
70
113
84
103
80
54
80
79
74
48
100
101
87
97
101
78
67
59
59
57
75
70
83
88
91
39
68
74
116
73
90
52
87
87
118
109
35
65
49
88
64
33
31
73
37
68
43
64
101
68
82
86
147
80
106
89
82
84
70
55
74
69
64
45
69
61
86
55
44
64
128
92
55
61
31
105
59
79
104
101
114
58
31
70
80
61
66
38
77
123
78
135
66
43
80
151
75
51
61
83
88
69
92
104
76
47
62
42
89
79
79
75
95
71
101
39
71
157
50
75
75
59
144
128
82
119
78
83
68
96
94
103
75
76
106
62
69
92
73
68
112
95
97
116
78
71
109
18
86
65
60
82
62
97
72
76
102
49
91
69
98
100
77
148
63
94
93
107
82
108
78
105
95
112
67
96
99
76
103
80
48
99
57
87
43
82
70
108
124
105
101
41
102
85
52
48
76
83
58
75
80
96
75
96
146
121
98
107
53
56
64
45
72
53
96
74
87
82
69
69
87
129
64
63
111
65
96
102
93
72
28
56
108
53
65
79
68
70
109
52
89
98
88
81
112
69
101
86
130
36
83
63
81
67
104
65
48
65
64
113
36
92
103
97
98
75
40
88
65
32
105
86
63
85
80
47
41
65
68
95
88
106
95
88
61
55
53
53
60
63
63
85
60
72
91
102
86
63
71
104
102
41
45
87
91
121
75
130
47
80
98
70
73
60
82
44
44
73
71
71
132
72
53
29
101
107
70
74
78
80
67
95
79
48
76
91
116
112
80
79
64
57
79
72
55
62
73
59
64
81
84
56
81
37
78
78
70
84
74
94
108
65
69
60
84
67
88
71
69
81
35
95
55
106
56
72
67
68
80
83
68
112
83
69
101
38
68
75
80
78
111
104
83
77
62
36
83
70
70
59
75
137
92
65
128
89
93
129
77
65
86
67
108
95
67
96
62
85
68
38
85
64
44
57
36
98
67
83
102
41
93
87
60
74
91
74
82
101
32
130
66
65
94
40
71
49
104
71
117
76
58
91
58
76
58
82
45
38
104
57
100
95
63
43
78
54
49
43
50
64
86
71
80
93
48
108
47
52
42
62
72
68
65
71
53
67
93
75
79
62
88
67
71
58
77
66
92
54
58
123
51
83
87
76
83
54
100
56
87
75
38
68
109
89
58
117
55
54
129
83
43
75
92
55
70
55
48
86
59
77
99
118
123
62
70
98
125
52
38
79
58
145
67
101
78
57
94
179
48
80
58
118
111
72
89
70
82
45
35
66
89
103
113
81
62
61
38
99
113
66
125
50
96
175
90
52
77
82
90
101
106
68
97
55
59
92
74
77
83
63
85
91
71
80
95
107
59
124
55
87
106
96
77
99
90
43
89
46
70
84
124
102
63
58
106
46
68
68
82
67
82
70
131
66
96
102
90
71
98
78
93
47
95
48
91
49
72
69
105
67
81
73
69
42
94
102
79
65
80
37
103
40
64
67
83
53
41
40
111
48
66
71
53
54
48
112
93
94
94
88
63
67
92
30
108
92
32
79
66
67
92
78
71
102
60
101
38
101
92
73
61
76
124
86
28
88
73
92
85
89
41
82
98
83
80
85
93
72
98
72
52
154
79
95
76
126
110
35
93
72
66
82
72
80
105
68
81
75
80
104
32
100
106
48
125
86
69
107
45
91
49
65
63
100
77
106
62
107
51
54
141
71
42
41
100
119
91
94
52
55
63
125
112
82
107
75
104
86
82
34
108
59
125
56
69
81
42
106
127
84
101
74
109
56
49
34
97
73
100
81
80
97
64
83
107
69
67
99
75
54
49
136
78
68
147
63
79
65
86
64
75
36
62
38
90
45
78
68
62
29
46
43
79
107
124
69
58
143
59
66
52
99
82
65
78
126
48
69
108
70
57
70
64
86
79
79
90
76
66
89
64
93
76
72
136
55
62
68
125
74
52
87
44
56
78
59
94
70
73
84
92
91
105
54
52
73
69
53
82
147
65
58
49
82
70
97
68
34
51
80
27
145
61
51
44
53
60
89
69
63
33
83
60
50
109
130
65
121
101
87
48
94
56
66
91
72
69
101
112
45
56
32
73
110
58
143
60
92
72
97
47
83
81
65
79
74
62
49
139
107
85
74
59
100
68
53
197
94
87
124
92
93
76
81
78
79
89
88
104
98
95
65
68
61
69
94
133
62
90
131
56
151
133
75
53
68
89
82
66
48
91
52
124
55
103
61
84
139
82
51
98
70
59
67
98
71
66
50
41
62
76
61
80
56
62
58
82
72
38
49
54
86
63
104
69
68
54
131
114
70
115
91
98
48
98
112
68
28
140
44
66
134
84
79
143
82
113
49
63
58
78
111
51
48
36
69
71
53
89
80
67
99
69
74
69
73
91
59
40
64
69
73
103
76
106
74
113
97
126
76
80
92
111
68
99
108
79
37
66
84
51
94
32
118
67
54
55
82
80
48
137
61
81
62
55
36
64
71
106
84
111
142
101
136
80
96
105
54
87
114
47
57
55
82
90
63
124
54
82
86
70
103
104
60
93
39
102
69
111
86
81
53
39
110
112
73
95
53
57
77
95
71
22
54
54
81
76
58
82
36
58
76
94
119
69
25
62
35
105
64
68
81
84
52
100
92
81
87
91
48
121
82
80
58
133
79
47
137
60
88
84
64
57
66
99
49
47
66
104
48
104
62
70
62
59
54
115
52
48
103
85
80
144
87
70
54
87
99
49
63
85
64
79
50
76
90
63
96
58
88
116
63
64
70
77
100
59
105
55
62
61
84
29
53
94
105
128
55
86
103
114
107
51
80
77
46
88
60
103
100
83
41
119
77
79
60
29
52
77
97
57
101
91
69
79
62
59
75
65
100
63
68
116
118
62
96
84
83
49
55
124
72
72
67
41
69
47
96
56
137
64
75
101
88
105
51
67
76
74
89
77
81
48
52
65
51
107
83
99
64
62
112
64
58
60
67
61
83
52
83
98
50
77
57
88
69
82
81
95
82
78
72
46
96
56
78
60
73
92
92
101
64
54
89
71
44
20
54
92
68
110
122
55
93
114
56
40
56
111
94
86
40
66
62
61
79
75
52
71
64
87
83
91
130
82
101
69
114
104
42
32
71
81
112
57
97
92
64
55
62
50
100
75
64
77
72
76
100
43
72
92
72
68
68
100
86
35
104
61
68
59
77
74
102
71
63
63
77
88
127
120
92
85
38
67
47
33
36
56
57
60
58
49
54
62
82
77
89
123
56
118
87
70
40
105
62
31
121
86
41
69
98
42
50
51
79
72
99
59
119
51
111
81
114
108
54
82
68
53
69
91
65
81
101
64
44
36
93
52
67
75
72
130
101
73
71
66
56
44
79
86
79
49
111
173
77
55
40
76
95
75
123
118
101
64
68
50
41
113
95
58
47
134
80
147
79
75
72
71
53
100
82
84
73
34
111
66
54
62
84
95
92
34
76
39
74
81
66
63
93
118
99
66
113
87
222
63
89
99
87
43
92
67
87
100
52
85
89
202
86
114
58
123
79
64
97
83
88
29
94
93
45
71
160
99
105
85
74
62
47
91
89
92
66
90
39
89
103
89
77
29
29
31
54
119
94
75
96
80
59
102
139
41
69
44
106
135
149
61
56
158
72
98
41
65
58
92
98
55
65
61
75
60
54
54
77
84
54
86
83
91
85
128
121
53
73
65
131
63
80
105
65
89
52
57
37
88
74
93
49
53
53
49
95
65
71
87
116
95
56
46
57
104
89
71
80
80
122
84
85
83
72
92
43
89
112
78
77
93
37
83
65
92
63
114
87
83
86
107
64
66
151
61
72
150
95
93
111
57
78
52
79
70
67
55
102
108
67
95
73
70
35
128
77
99
69
120
95
131
67
48
71
53
61
59
74
117
80
89
48
86
121
87
116
88
57
76
51
100
88
56
59
64
62
93
74
40
90
73
76
104
35
99
95
89
100
83
60
33
83
116
85
58
98
86
45
73
75
97
65
102
72
76
112
105
39
97
68
59
104
86
101
74
78
113
111
45
39
58
70
105
112
145
63
148
92
55
71
40
61
65
49
109
38
81
67
39
78
59
143
96
65
96
81
66
97
94
59
75
94
83
83
35
54
47
90
58
102
64
92
67
100
67
136
117
87
47
48
156
123
45
54
109
72
71
102
77
40
184
50
88
56
80
97
65
79
54
73
112
146
113
67
52
48
103
63
105
67
49
68
101
68
60
77
67
68
122
130
104
76
80
183
69
84
78
93
87
96
148
79
103
129
70
85
54
82
49
71
89
90
55
70
63
48
73
77
26
52
57
74
80
100
126
93
53
93
110
89
72
69
57
78
66
43
86
94
89
77
65
91
66
102
58
59
105
82
75
66
69
101
76
133
75
79
111
52
47
65
123
54
72
89
60
66
66
75
81
89
62
89
86
41
93
70
39
53
89
60
84
42
109
62
64
38
52
75
98
56
97
105
69
97
106
61
92
84
105
106
69
72
78
106
60
103
53
47
37
68
53
79
115
92
109
76
63
113
93
58
46
42
47
49
103
27
85
76
53
92
106
77
98
85
52
109
77
117
102
125
76
59
38
93
99
84
115
70
92
87
66
83
78
42
76
129
91
55
77
98
118
103
90
82
65
59
82
72
81
93
97
44
89
67
73
60
111
59
105
76
89
96
137
80
90
43
85
79
101
59
77
112
42
109
79
97
82
120
46
75
87
58
85
62
95
29
87
50
84
80
83
119
61
36
101
95
83
42
93
65
79
131
27
47
90
81
119
72
48
100
132
98
48
87
67
68
152
198
86
103
78
65
54
123
92
70
106
78
44
40
52
86
95
65
82
29
64
135
64
78
49
99
67
76
126
116
95
89
86
56
72
97
60
108
52
42
53
83
82
76
68
90
33
76
111
78
59
51
117
70
109
63
95
101
63
64
75
102
48
71
42
59
52
67
71
46
61
69
77
47
41
151
62
82
62
84
58
81
54
68
122
77
60
79
98
112
89
85
73
84
58
72
100
95
92
55
122
72
97
41
69
88
99
51
40
133
32
89
47
35
48
96
74
49
53
138
85
72
95
64
104
115
73
39
91
110
52
40
82
60
48
73
89
81
68
86
68
56
72
74
85
83
77
63
57
82
63
43
67
48
61
55
78
142
104
92
99
77
149
76
98
64
89
85
47
73
51
81
92
80
98
58
101
92
82
84
88
129
68
146
74
90
115
68
70
31
68
75
56
96
52
71
82
134
82
62
43
119
64
129
71
69
35
150
85
57
69
87
81
62
65
77
99
38
61
82
67
85
79
72
64
100
131
72
79
64
95
98
55
89
73
84
55
121
24
79
55
88
64
94
90
63
137
108
69
68
74
77
53
63
80
143
81
81
78
40
63
100
77
83
59
112
94
123
107
71
111
90
79
53
79
111
108
96
117
68
48
57
83
73
78
59
69
82
52
81
98
95
144
55
52
114
64
113
43
97
51
54
65
69
91
108
71
66
174
75
90
64
58
100
77
110
75
46
100
71
93
81
68
88
64
67
76
82
96
97
98
59
100
95
71
79
59
76
69
108
51
85
95
83
68
110
54
67
57
39
93
59
67
52
74
83
48
81
101
122
53
66
69
69
55
108
59
60
52
169
59
73
61
62
53
164
34
77
67
60
76
41
60
99
99
65
82
67
99
72
49
100
85
64
81
79
57
66
97
78
63
85
57
75
93
137
28
66
60
85
61
73
56
92
108
83
62
50
42
78
70
40
111
73
72
86
45
37
141
77
58
74
43
116
59
65
83
77
93
83
53
70
69
67
95
42
50
140
52
89
91
76
58
48
93
52
77
86
55
66
103
62
97
38
68
56
57
64
104
90
50
128
100
111
85
75
71
74
63
99
128
84
71
57
114
71
119
94
69
44
68
92
54
36
55
66
85
87
48
116
84
133
41
67
67
101
89
52
61
115
86
64
66
83
81
37
116
64
80
87
63
85
68
34
75
57
93
79
54
106
141
40
65
55
72
87
97
98
63
59
44
100
67
91
45
81
89
81
105
101
40
30
98
121
67
47
78
55
83
104
100
91
83
32
57
79
49
127
181
115
90
67
81
64
99
122
107
49
76
80
116
37
55
86
96
65
112
61
76
76
179
73
42
69
41
44
127
75
79
79
36
58
79
48
86
74
75
59
101
56
78
77
148
102
72
49
69
61
41
79
60
75
58
71
84
62
54
61
65
118
76
131
111
84
107
68
51
50
75
48
67
60
78
51
67
68
74
107
75
59
73
95
54
63
54
62
49
91
78
57
78
39
89
79
83
107
95
50
80
133
45
78
122
65
102
91
97
100
70
94
48
82
121
39
76
137
76
106
111
62
42
48
80
67
52
57
71
73
60
48
73
82
67
86
97
141
112
68
55
55
79
130
87
130
92
72
95
77
98
50
98
42
95
59
48
70
71
101
76
58
196
54
93
75
83
88
97
119
95
165
86
79
112
100
77
62
42
55
63
123
72
92
82
74
56
79
40
121
81
95
63
60
62
71
75
47
60
108
133
69
99
106
100
108
75
54
115
73
101
62
114
85
50
132
68
85
73
96
92
93
58
70
87
35
70
63
52
57
102
46
46
72
115
100
48
64
135
73
85
114
85
146
92
66
88
83
70
112
47
87
41
124
117
47
75
90
61
115
57
49
56
58
106
108
42
90
52
108
91
103
66
76
67
107
88
131
78
56
57
56
78
71
128
87
59
52
72
79
29
95
79
40
51
30
51
92
109
65
66
47
85
58
53
50
99
63
79
121
67
85
70
100
86
85
69
91
45
61
45
54
103
65
108
68
59
85
55
75
66
52
46
113
94
62
111
28
49
65
79
80
71
73
103
73
42
67
98
67
93
66
62
69
38
105
109
58
74
77
60
81
96
71
103
100
87
70
122
53
99
92
49
88
74
53
55
63
52
86
75
60
55
80
101
156
68
66
97
73
49
83
58
50
104
51
70
51
89
63
78
82
125
57
89
85
76
36
78
94
88
76
86
130
67
44
46
165
100
70
126
68
88
84
46
76
99
85
62
47
70
26
81
96
35
68
91
90
70
47
107
65
68
64
62
186
85
55
65
80
92
94
61
134
78
92
36
61
102
110
82
65
63
116
63
134
91
31
94
73
74
50
97
81
61
101
81
56
71
90
55
126
99
85
61
79
94
57
65
108
100
101
46
81
52
38
76
70
42
78
62
79
101
64
98
51
58
44
54
53
40
72
48
53
80
97
61
49
105
58
110
74
74
66
112
79
47
67
99
66
112
53
79
108
53
138
68
85
56
96
62
101
103
72
44
80
49
81
32
93
105
86
50
77
122
94
57
103
72
79
48
84
45
112
119
85
68
88
85
72
63
54
68
52
66
132
105
113
62
69
173
108
106
78
101
55
99
46
67
40
93
30
57
60
52
69
36
96
61
95
98
54
94
91
23
71
88
38
79
57
103
81
90
94
100
117
95
99
75
70
70
74
90
46
69
43
84
70
89
102
113
53
92
85
90
82
90
57
57
85
46
75
112
55
67
69
85
101
83
80
43
81
111
73
47
53
132
93
61
108
45
42
83
104
68
67
47
67
31
84
98
127
98
93
43
70
85
79
96
102
86
64
63
74
61
135
51
66
66
125
64
95
65
44
94
52
80
44
87
74
105
81
85
58
104
38
62
71
46
59
126
85
147
120
86
55
58
109
72
71
85
46
44
101
74
121
97
78
60
72
39
69
52
72
39
68
110
85
65
58
76
89
79
96
55
54
88
66
107
131
43
74
82
65
64
201
91
45
111
62
65
50
87
37
58
69
116
60
100
96
116
117
97
73
52
55
133
69
96
53
46
104
62
79
92
42
80
63
54
81
97
75
58
79
53
117
77
81
130
92
87
104
56
108
65
102
75
53
78
92
60
61
96
86
98
51
78
99
111
88
50
91
36
83
41
48
49
67
81
42
37
72
62
70
84
134
42
64
89
46
111
85
133
66
124
159
99
97
46
101
41
65
95
146
112
68
114
71
76
106
86
77
78
101
66
97
50
74
88
62
92
62
72
52
50
77
104
61
115
98
64
75
99
82
74
46
95
42
59
59
44
66
111
77
75
75
73
101
60
66
98
71
106
65
67
76
43
73
40
76
99
59
82
80
44
71
96
83
38
84
114
109
35
89
56
52
110
72
99
47
58
73
109
100
131
88
111
82
97
63
93
79
66
69
39
47
69
68
54
135
180
168
93
113
54
73
78
95
90
102
110
100
59
86
82
71
116
57
75
95
98
54
74
63
85
29
118
84
103
68
90
72
50
81
65
71
49
74
40
93
97
119
55
71
76
85
81
66
49
52
40
84
86
78
106
134
105
115
81
121
68
57
49
79
70
50
79
89
88
35
65
76
107
125
74
50
69
176
78
100
102
96
90
75
54
92
96
95
111
29
113
88
81
79
87
68
43
54
99
94
58
87
52
112
67
105
108
37
78
64
63
56
75
55
68
62
74
66
93
59
105
74
57
69
57
48
57
81
94
56
80
45
83
52
66
62
93
134
92
38
63
57
82
74
89
100
133
76
49
114
54
113
111
100
95
64
63
67
48
63
49
111
111
52
149
78
66
69
100
58
108
71
86
41
113
91
75
75
41
97
45
92
72
64
54
120
67
44
65
65
82
72
107
61
75
52
106
57
46
97
83
45
61
109
96
48
87
54
50
65
51
57
134
43
53
112
102
90
100
64
79
76
85
64
70
100
63
40
65
53
101
62
80
43
51
82
46
101
82
140
42
100
90
76
125
85
55
53
93
60
64
71
79
90
81
88
98
84
111
106
80
39
75
76
77
157
72
118
128
63
81
72
76
85
101
52
59
76
90
152
81
75
68
94
55
91
46
46
48
149
111
61
47
89
48
62
32
41
62
35
108
48
60
103
116
105
121
55
43
119
71
30
68
61
66
72
80
120
61
83
94
72
89
75
95
121
69
46
50
84
93
98
62
79
70
62
94
68
80
105
103
81
55
101
104
112
78
53
69
64
44
120
50
67
91
60
36
84
72
55
53
55
65
89
53
63
108
40
125
109
83
35
114
90
39
57
44
56
128
81
80
91
87
96
88
78
104
89
15
107
56
63
75
141
138
47
51
66
134
37
60
69
72
71
63
53
66
129
100
97
38
99
143
61
61
103
89
64
56
49
72
103
99
89
40
63
55
42
82
79
59
81
78
77
116
53
96
93
65
81
53
90
136
83
60
73
68
65
51
39
63
98
71
76
81
86
43
38
84
77
134
58
95
75
46
73
49
26
66
73
81
58
45
50
61
40
126
80
34
66
67
68
89
95
56
35
90
58
130
61
92
32
112
61
94
118
109
97
53
79
42
89
76
107
58
100
98
53
61
122
81
44
73
45
95
86
66
74
91
127
41
89
76
50
83
88
107
88
82
84
45
87
91
74
96
97
48
101
60
32
64
39
91
96
93
111
66
60
79
88
76
53
59
46
132
91
62
99
55
131
32
107
67
74
100
79
135
111
84
67
107
98
100
75
37
77
86
128
119
108
64
72
114
49
56
132
55
90
97
83
61
64
58
53
33
62
76
104
61
79
55
75
93
95
83
96
155
79
68
68
114
66
119
59
113
94
93
64
106
75
71
94
54
83
96
91
73
71
104
51
84
62
82
99
70
103
93
78
49
61
43
61
51
72
105
85
96
74
47
104
84
121
73
56
83
87
52
163
82
101
32
98
112
57
70
115
90
67
69
53
80
87
80
100
93
114
70
30
54
97
58
86
69
52
61
41
107
42
89
89
83
71
50
48
67
50
64
82
64
95
47
109
79
51
57
64
67
80
116
72
45
83
109
73
64
111
75
84
44
115
94
61
38
117
44
98
75
53
37
54
44
132
81
93
125
84
108
89
95
103
98
90
61
61
70
111
46
66
56
100
68
39
64
74
117
100
91
65
118
62
37
70
62
95
95
64
63
57
82
81
81
48
40
78
147
86
63
89
42
155
58
59
85
87
126
42
49
113
83
71
47
70
48
74
87
72
74
104
90
71
57
65
60
116
97
76
57
76
92
62
70
50
54
100
47
59
100
53
60
83
64
93
126
118
77
50
71
93
105
92
77
30
46
87
55
62
74
121
144
89
101
92
48
24
92
103
59
111
85
56
39
45
65
51
123
75
48
76
68
87
88
89
105
60
53
68
97
94
51
75
89
73
66
77
47
50
68
63
75
83
90
88
41
99
125
59
38
75
66
106
88
71
40
43
87
108
118
55
67
41
130
90
91
101
105
102
54
90
66
96
85
31
71
68
67
49
95
63
47
118
70
84
63
56
54
76
142
42
106
95
60
144
107
85
88
117
24
66
61
119
100
63
80
104
99
134
103
100
73
41
85
110
58
66
45
91
100
40
76
91
57
30
94
121
126
67
68
42
76
87
111
130
73
112
79
45
100
66
96
67
70
96
74
33
72
74
53
69
108
67
94
115
94
45
54
80
38
73
113
110
64
71
54
65
104
93
99
48
77
78
73
38
90
47
99
111
114
102
86
69
77
80
47
83
69
89
65
78
114
98
71
92
47
94
68
72
25
74
99
36
92
100
71
99
67
89
63
147
59
74
112
49
84
65
115
47
102
63
41
75
64
111
52
52
53
77
61
67
81
127
75
130
100
89
75
70
75
83
101
38
69
74
104
68
72
59
83
64
129
126
73
91
95
58
35
59
41
72
68
64
82
86
88
47
82
36
78
103
57
115
95
58
71
47
82
63
80
123
84
63
76
56
68
67
42
82
93
72
127
45
80
112
64
66
86
77
67
33
118
135
76
62
74
64
52
84
87
72
64
88
93
61
79
55
56
80
100
56
150
89
67
96
46
90
62
131
102
41
63
43
103
117
111
89
46
80
120
41
82
35
42
100
53
89
96
100
46
67
50
69
79
114
99
100
71
33
145
45
93
72
106
60
96
117
51
133
83
115
75
75
72
68
49
65
114
63
38
105
84
79
90
114
91
93
41
77
38
89
94
68
63
65
31
62
78
51
94
80
109
132
126
100
69
102
86
83
127
61
54
70
28
63
62
39
68
51
80
102
74
96
113
91
80
65
49
53
81
99
78
109
40
88
61
50
74
66
117
73
89
82
61
63
32
86
61
105
76
96
73
69
136
64
79
62
117
121
106
75
61
92
43
59
118
138
90
66
76
89
81
139
64
38
39
48
107
73
69
86
55
58
68
94
60
71
48
69
80
77
100
93
59
81
75
81
96
86
44
83
104
63
85
76
109
67
105
71
64
43
97
68
69
72
91
98
145
65
59
112
104
92
101
53
53
91
101
79
49
54
98
90
61
120
57
44
75
68
110
87
70
52
93
48
34
73
77
45
117
87
40
82
74
86
54
52
47
94
118
155
51
115
65
73
64
55
63
66
75
71
94
66
75
147
92
93
105
87
91
75
59
85
71
152
103
70
74
77
79
61
58
67
71
71
85
69
78
82
83
106
78
59
120
97
78
47
74
49
77
51
44
113
77
59
85
75
66
98
89
91
44
98
70
73
108
91
46
74
92
58
51
66
69
117
93
58
94
58
70
96
96
102
86
79
101
83
120
63
77
62
60
88
78
88
84
103
124
87
87
55
64
71
56
79
107
125
40
89
77
60
50
90
51
121
59
86
48
77
74
92
89
88
124
38
42
63
109
68
37
73
73
82
141
54
97
65
66
48
80
93
77
62
54
38
47
156
69
124
85
63
104
71
86
121
93
146
68
35
61
86
35
32
67
94
56
73
93
33
79
84
119
99
47
41
54
112
56
106
73
84
68
114
88
41
62
121
47
91
78
98
85
41
59
37
93
70
70
38
119
98
65
72
66
97
109
64
62
98
91
47
94
112
65
119
49
102
45
67
103
73
109
67
33
27
86
58
110
104
90
88
83
72
74
82
70
69
56
135
73
64
75
63
64
99
70
87
138
98
57
121
91
52
91
84
126
77
60
86
83
113
72
86
48
125
142
100
64
80
76
73
122
76
85
115
74
86
64
73
62
79
114
91
49
91
103
66
89
66
63
54
52
43
82
156
62
84
64
63
96
132
89
63
76
59
127
86
79
73
69
115
101
121
70
99
89
96
46
86
132
76
59
89
50
45
47
81
61
115
108
70
82
88
143
94
57
70
83
99
90
75
134
95
74
43
81
46
75
53
39
103
93
93
95
31
79
77
102
46
83
121
53
77
106
64
37
55
55
74
66
114
98
97
74
124
68
47
76
99
95
137
50
189
97
101
80
70
80
84
96
56
55
69
75
55
45
132
75
88
163
54
37
53
69
86
55
69
47
87
48
80
42
75
84
131
72
66
77
40
95
91
71
94
91
84
33
93
107
79
103
61
69
49
136
66
103
46
103
86
48
42
43
85
78
89
57
92
97
85
95
84
96
71
42
48
76
55
101
63
57
40
69
100
88
69
48
33
80
77
63
75
52
93
121
68
78
90
78
78
110
38
98
60
63
103
70
82
66
79
85
74
46
95
107
100
68
95
106
59
32
86
58
75
63
49
77
79
47
143
66
109
80
99
64
88
74
71
62
61
82
57
141
73
76
92
81
48
60
69
75
40
74
110
83
88
119
81
26
139
108
64
53
89
128
62
72
68
59
83
102
61
111
119
52
63
45
71
98
82
133
55
53
43
28
70
56
80
91
66
56
62
78
95
69
52
77
59
65
126
56
90
56
134
76
106
70
128
126
46
80
72
60
73
76
70
37
42
93
101
52
84
140
63
80
60
71
61
74
78
158
73
81
60
68
99
114
72
82
80
66
76
76
108
95
70
48
48
39
72
71
53
81
88
89
79
82
79
91
99
62
123
107
48
78
61
71
55
73
98
36
130
54
63
74
141
150
72
116
39
63
59
123
60
153
55
103
99
84
142
65
94
84
45
100
72
67
104
68
71
106
89
69
124
37
50
47
64
88
85
102
115
85
91
86
107
111
67
84
76
80
90
88
94
24
41
63
51
50
130
117
50
72
82
106
55
126
81
83
47
56
79
101
107
68
61
36
99
44
85
69
136
160
63
101
66
65
120
71
65
85
76
73
82
72
76
75
132
72
40
101
74
64
117
47
157
66
71
72
79
63
85
69
44
53
95
107
57
69
77
86
98
100
94
182
129
43
81
78
30
116
45
111
39
59
68
68
151
57
89
46
52
93
116
78
73
91
91
76
79
73
60
90
149
112
84
54
82
51
87
73
99
111
59
61
87
56
63
76
36
107
57
164
61
95
93
67
92
108
60
92
102
65
60
37
126
107
73
93
48
97
94
63
60
113
47
53
77
85
108
81
86
86
97
62
113
57
35
46
89
94
53
59
63
67
190
106
51
40
66
71
56
90
96
69
115
65
96
72
85
68
62
55
110
63
94
88
75
41
75
51
58
76
41
76
104
110
82
87
55
45
55
68
63
96
83
79
41
66
75
65
82
98
44
135
110
73
83
80
107
54
44
106
76
86
111
59
77
81
74
47
97
89
61
137
86
91
83
116
66
106
107
48
31
80
58
94
59
88
75
79
74
73
55
84
73
90
73
86
62
51
160
58
55
81
93
98
48
116
89
55
70
81
73
132
45
78
79
87
104
84
123
80
84
83
50
78
70
86
110
90
94
100
86
80
84
63
31
63
91
129
64
76
92
89
69
104
68
66
48
62
51
109
88
55
78
53
121
77
34
66
82
74
51
93
76
94
78
93
42
87
115
91
75
121
120
57
129
106
96
115
48
88
83
44
99
84
79
73
59
47
85
77
63
131
81
98
89
64
62
105
47
55
74
69
81
59
81
43
71
63
79
96
77
86
51
120
53
78
98
59
168
78
102
44
79
82
116
79
116
64
121
73
71
84
79
101
30
101
111
103
126
58
61
78
85
71
106
59
38
92
79
100
59
104
129
113
99
80
92
75
70
85
59
58
64
104
30
61
59
65
122
127
120
101
41
62
101
115
75
79
90
69
36
78
66
85
70
80
82
69
58
83
53
68
71
67
75
98
57
71
85
47
71
90
83
60
58
93
88
61
51
59
107
58
80
62
73
109
117
82
84
85
44
55
68
65
91
64
81
62
61
45
43
88
45
87
79
81
78
80
81
73
41
95
66
82
131
82
57
63
67
74
82
123
78
62
51
90
58
86
98
100
51
65
82
44
65
23
73
94
45
112
72
54
116
99
116
113
81
98
69
90
56
77
114
55
81
75
38
67
55
84
104
66
67
52
80
89
58
37
77
53
73
69
78
59
84
88
124
102
92
86
116
125
72
72
87
77
105
56
62
65
49
61
79
28
70
81
98
40
61
84
124
69
90
147
42
127
62
86
65
45
110
91
78
37
112
91
141
129
77
31
74
154
64
65
94
62
68
85
40
56
72
55
85
26
116
74
27
85
98
74
83
56
77
53
50
84
91
114
87
108
56
63
27
55
59
114
66
50
104
113
117
44
52
95
107
60
86
81
94
50
66
99
64
72
91
76
53
62
76
61
78
96
82
124
153
125
95
96
47
58
51
53
73
51
86
128
70
42
59
73
93
41
91
81
57
50
27
122
75
96
59
89
48
75
113
101
86
58
96
103
76
99
160
87
69
70
66
89
53
112
56
92
102
92
113
50
85
95
113
51
50
55
90
93
32
74
87
113
65
95
63
37
59
99
55
87
73
82
65
42
106
96
96
97
86
77
73
77
79
51
43
115
72
86
67
82
84
88
61
88
89
89
84
80
65
52
55
72
77
35
43
37
92
58
95
69
73
84
125
70
71
65
81
103
64
44
78
63
130
32
62
71
55
112
86
56
78
60
64
75
78
77
70
74
109
48
55
54
53
55
53
73
67
71
101
74
79
86
57
136
92
83
88
95
82
57
100
41
74
77
94
77
85
73
115
91
60
36
128
85
52
65
63
82
86
69
83
81
65
101
102
122
64
60
85
66
87
70
92
61
82
51
109
89
73
129
119
47
94
86
58
98
92
72
65
43
45
117
47
55
55
87
88
126
84
112
80
59
46
82
92
105
33
77
57
75
78
29
70
76
59
101
98
106
57
73
96
82
57
76
174
85
85
88
50
100
136
91
52
93
56
73
24
54
65
54
59
74
84
64
94
73
69
91
80
145
47
74
84
42
80
80
106
78
53
63
90
56
87
63
59
67
44
137
121
62
51
61
101
124
66
57
81
94
61
43
69
62
113
60
57
82
76
104
81
92
55
131
42
45
74
121
60
85
42
66
43
90
58
80
70
104
56
102
57
73
66
87
61
100
92
55
107
80
40
46
112
122
32
87
79
77
64
37
89
73
85
97
90
89
68
39
100
120
77
77
103
109
162
89
94
80
61
57
76
77
48
67
48
85
56
95
113
65
118
110
78
74
29
105
70
63
59
37
62
102
66
79
85
123
53
61
138
152
48
57
58
51
59
61
61
94
93
50
51
66
69
91
101
87
81
62
63
73
67
62
30
136
47
115
52
99
83
66
52
96
109
77
80
57
79
82
44
73
174
94
83
61
68
55
81
96
70
71
85
138
115
78
115
74
101
87
70
56
64
50
105
55
62
77
89
44
114
46
117
74
71
133
64
94
77
120
66
121
75
44
144
64
45
50
87
82
75
92
66
86
51
58
137
64
82
81
63
61
61
52
50
122
85
50
66
77
56
93
84
53
88
134
75
69
72
85
82
63
51
60
61
68
73
99
87
61
74
83
144
64
93
56
69
77
57
106
68
70
84
67
26
55
65
80
71
86
61
84
47
81
48
89
45
76
81
112
63
59
83
39
79
140
126
94
78
58
69
96
70
48
86
59
104
66
80
72
98
92
43
104
56
70
62
75
128
66
38
78
67
59
113
108
65
40
50
54
42
94
102
85
91
45
135
66
76
75
82
50
94
109
77
59
98
48
94
50
87
97
91
75
79
53
59
127
92
74
50
142
116
58
75
100
59
71
78
74
56
71
90
68
73
130
71
73
81
78
49
58
48
46
109
58
104
90
60
95
55
73
75
87
86
76
55
89
69
56
88
72
115
133
89
42
112
81
89
76
52
76
60
45
72
63
102
37
91
105
84
66
63
65
85
51
96
55
134
49
125
34
84
119
69
91
65
31
95
125
75
122
75
49
69
118
74
107
102
51
44
50
47
60
117
61
34
82
56
60
42
82
152
71
58
55
73
87
67
69
72
109
92
90
119
92
76
91
53
73
62
56
69
116
50
85
139
86
51
71
67
156
152
43
46
55
118
61
94
98
153
70
107
70
71
92
54
93
53
80
87
43
77
48
64
94
75
92
97
120
106
60
39
62
48
94
59
57
128
93
62
78
77
82
40
91
108
111
81
51
105
108
114
62
111
81
75
56
70
76
63
106
107
53
99
79
92
62
105
53
101
82
58
87
54
96
42
62
86
75
67
170
57
98
93
100
89
60
77
51
35
56
64
83
98
67
51
96
64
73
36
69
73
36
89
95
90
103
102
129
41
153
56
54
90
84
77
60
92
70
57
50
81
95
97
87
48
58
118
42
54
72
84
80
68
44
62
76
125
52
83
70
53
132
83
70
95
69
91
60
54
75
60
64
102
79
101
63
82
130
78
98
49
86
104
77
107
53
110
70
73
86
89
91
57
92
75
95
74
87
66
110
41
89
55
82
82
80
62
82
45
97
66
118
41
82
64
78
128
115
64
67
66
93
87
48
43
80
32
76
67
68
45
42
75
147
65
92
103
51
45
85
55
92
58
76
67
94
90
69
88
76
57
62
66
36
73
53
74
40
59
55
71
108
79
84
53
76
100
78
80
87
80
174
56
58
124
156
92
40
125
85
108
69
78
66
115
69
52
130
103
94
123
131
88
77
75
112
45
58
63
39
43
60
46
57
62
48
106
76
111
60
86
49
95
57
52
92
79
61
77
95
142
71
136
105
79
150
51
74
41
49
91
81
93
70
78
89
75
66
62
70
106
74
125
86
113
108
86
94
65
86
61
75
90
85
50
35
88
90
46
64
81
99
83
50
121
54
62
76
55
77
45
103
115
96
78
60
97
113
127
65
45
92
38
105
43
73
140
71
86
105
41
113
96
128
33
96
61
47
75
54
91
55
154
75
98
71
52
69
118
34
85
56
58
79
107
69
95
79
118
87
75
73
92
58
87
72
91
99
83
38
95
89
98
85
50
74
47
37
49
113
91
121
91
70
137
79
85
55
64
84
84
80
124
82
41
72
62
86
69
44
99
68
85
85
58
112
81
54
64
105
67
60
49
67
70
72
109
54
72
101
42
60
88
53
127
80
99
107
106
110
49
59
89
60
38
60
131
163
51
77
53
54
51
103
52
88
91
77
64
74
61
85
67
78
90
78
76
162
81
68
34
107
30
101
72
67
131
78
105
104
102
42
116
111
65
70
78
92
84
107
54
119
62
106
65
49
70
57
71
114
113
113
80
75
113
49
74
101
42
70
50
62
64
77
45
40
80
37
62
70
65
94
47
88
98
73
96
58
46
79
82
61
81
56
81
42
66
54
80
58
102
46
107
71
56
106
55
51
83
57
105
73
109
39
103
33
123
91
88
52
71
46
43
101
102
87
54
98
81
92
95
79
60
52
126
64
87
48
82
79
54
64
109
46
51
42
130
86
92
74
79
83
53
107
85
50
72
49
71
73
107
54
62
65
84
109
70
130
94
84
18
66
113
36
72
121
94
81
70
100
49
72
78
107
65
66
66
88
76
88
86
78
49
78
81
116
93
87
61
79
48
100
87
66
85
65
161
82
85
65
46
73
78
35
58
82
88
62
80
78
81
64
34
50
81
81
62
70
118
70
29
104
111
102
113
29
89
95
58
114
135
126
64
69
80
82
125
71
85
69
44
76
60
99
64
124
61
83
62
83
66
62
66
108
43
88
55
66
101
88
102
100
56
61
57
35
52
91
56
94
55
75
63
41
72
140
73
123
66
77
68
77
86
31
70
104
149
72
107
79
27
67
63
77
43
68
90
153
97
97
137
42
94
106
96
52
72
62
59
60
58
68
57
21
41
115
57
60
49
104
102
107
77
69
71
93
73
72
128
56
70
50
73
71
66
73
77
68
115
65
70
77
78
52
119
73
96
114
48
120
49
90
66
38
70
134
88
63
87
54
94
75
55
101
65
76
39
91
71
42
114
81
72
51
83
44
71
114
152
109
72
52
71
95
98
62
46
71
69
64
118
63
54
64
93
62
115
146
55
77
100
79
48
43
85
47
94
77
58
86
88
65
70
69
81
110
90
68
60
45
48
66
60
74
153
68
63
81
75
80
55
103
52
59
61
59
37
136
57
112
89
131
101
124
62
118
77
101
53
45
59
88
75
95
44
104
103
42
59
64
81
120
89
100
53
84
45
75
77
118
63
65
97
63
70
47
44
56
91
39
88
94
82
44
72
56
52
85
94
77
89
99
66
102
104
52
85
75
89
56
74
64
47
97
67
80
47
108
105
39
73
63
99
34
54
71
58
97
69
75
63
78
66
75
42
68
32
94
71
62
75
49
63
85
75
112
89
65
37
55
99
79
125
67
60
95
89
65
74
91
61
62
134
45
100
74
85
89
40
88
73
96
65
56
62
53
51
79
79
90
60
60
63
53
70
78
49
121
47
51
61
65
74
69
49
56
52
147
79
96
74
114
75
75
129
40
39
67
72
54
135
126
64
48
86
109
109
70
77
145
59
80
42
95
123
58
65
130
61
100
74
52
70
83
147
196
73
67
116
65
55
81
102
62
48
104
93
94
33
58
74
50
68
74
46
99
65
87
49
55
74
98
117
100
121
76
70
79
74
128
71
103
119
91
67
109
60
48
78
60
60
61
42
65
91
117
88
100
126
45
58
98
105
57
45
72
47
113
123
114
76
53
67
67
76
68
56
51
66
75
54
74
83
74
102
122
77
52
62
94
135
87
70
62
51
70
112
81
72
96
75
72
95
76
102
80
34
83
64
100
119
88
61
78
85
75
75
61
65
59
78
118
128
86
48
104
103
77
96
57
37
124
61
76
61
102
112
107
114
102
70
73
115
133
116
116
116
43
32
80
88
67
107
50
92
91
90
87
112
52
93
52
171
92
123
104
56
76
86
150
30
59
105
62
111
67
53
44
40
84
54
67
78
67
97
85
97
78
57
116
58
82
89
55
78
76
112
55
60
77
70
66
122
121
111
58
73
72
88
130
44
85
65
58
55
83
79
89
72
100
46
56
79
83
85
71
127
114
90
55
81
59
98
50
40
95
77
139
59
68
61
92
33
56
80
60
89
67
118
37
87
80
62
59
103
56
34
98
56
33
81
67
58
129
76
81
35
75
40
85
87
90
23
75
107
90
90
89
56
50
98
73
48
42
44
76
74
83
75
83
91
81
39
60
54
76
52
97
49
77
63
75
116
39
85
71
108
73
90
64
58
35
53
66
52
46
97
90
63
134
108
39
88
134
126
40
60
66
117
120
89
47
86
68
45
50
95
83
73
95
52
46
101
104
49
103
103
94
44
64
99
53
76
87
66
47
36
63
85
47
52
72
101
70
58
92
70
80
83
151
47
102
98
133
80
100
62
263
94
49
51
213
62
87
90
76
55
55
60
60
101
83
86
44
75
106
112
109
108
78
39
131
84
54
77
80
92
80
113
62
96
59
110
65
71
53
96
41
145
30
50
59
46
52
88
49
92
83
115
69
42
100
76
95
104
82
58
77
48
75
80
64
111
78
110
95
125
57
90
81
126
74
70
71
101
61
67
99
76
86
50
102
85
115
52
123
46
73
47
45
140
81
71
64
79
67
83
59
55
90
93
36
60
84
40
32
94
117
32
81
74
76
110
68
50
60
57
86
63
112
91
81
47
72
122
90
61
123
75
68
58
105
89
81
74
110
88
109
60
67
125
64
54
97
62
66
70
74
81
43
57
118
58
77
54
60
42
102
61
91
81
63
67
79
41
69
83
70
68
73
54
44
88
48
55
51
79
64
49
123
83
105
110
79
109
69
39
53
45
66
95
53
105
79
61
67
84
112
48
50
61
111
72
50
42
115
63
87
69
91
95
54
73
120
40
61
55
92
49
77
74
68
75
86
52
57
128
110
58
79
68
57
126
39
79
72
89
46
87
65
79
79
85
71
60
79
91
55
69
99
42
98
56
63
116
48
69
66
86
70
96
49
49
67
117
67
58
89
81
90
77
83
89
93
80
59
45
71
76
102
59
52
89
86
64
89
52
84
111
47
88
82
73
63
75
112
74
113
109
66
56
68
102
93
118
84
81
111
87
33
77
71
83
107
69
74
63
91
80
78
82
77
79
94
62
62
97
107
57
94
93
100
119
78
104
75
65
73
46
69
82
65
103
71
91
56
49
81
31
84
77
56
93
72
64
107
144
42
97
111
93
86
98
72
43
91
125
62
80
86
99
44
97
142
108
77
52
52
63
30
105
78
78
77
81
113
52
83
47
82
91
126
87
127
81
71
50
66
67
106
94
69
89
69
92
109
97
93
104
74
89
86
29
86
83
112
67
84
92
91
52
91
65
99
61
59
93
81
62
80
57
83
65
60
78
102
55
85
58
117
59
36
73
58
75
158
60
91
42
118
60
56
80
69
90
76
64
84
73
99
72
72
55
66
89
53
94
54
103
71
75
96
123
81
88
85
65
65
51
107
72
69
46
65
111
99
125
52
57
77
65
102
73
97
113
55
42
74
79
59
48
50
51
97
70
60
89
108
88
64
65
108
86
109
101
92
115
137
70
107
68
112
59
63
67
53
40
157
95
102
62
62
109
39
108
76
82
86
24
60
55
69
73
75
95
67
194
79
66
76
66
131
39
116
116
66
53
44
40
83
58
99
106
87
75
43
107
83
79
46
162
87
83
39
47
79
87
107
89
73
109
67
69
63
70
85
43
128
51
66
91
152
76
62
69
75
51
69
75
57
32
75
83
86
95
81
95
120
103
84
102
114
64
68
85
107
96
87
50
83
63
56
110
66
56
85
133
69
116
92
52
95
75
67
98
82
38
85
68
77
50
109
51
62
99
90
57
42
70
97
62
91
90
75
112
52
81
57
50
58
141
37
95
83
147
63
61
81
151
53
115
57
72
82
65
97
103
47
70
86
105
98
99
79
98
64
81
63
77
148
122
86
95
74
85
110
57
43
87
107
33
58
108
49
73
64
46
52
100
61
58
45
59
58
62
51
119
64
103
56
81
45
93
67
53
69
72
58
118
86
50
81
60
60
69
66
54
109
64
58
74
72
71
76
109
55
125
86
94
66
112
101
86
93
90
93
56
63
83
53
99
57
67
53
35
54
53
122
59
41
65
100
83
71
74
81
77
70
88
75
65
46
62
76
118
38
79
151
48
56
82
67
95
49
121
88
124
41
81
67
50
120
57
128
55
97
38
103
101
105
119
92
61
101
61
58
66
56
67
118
97
54
69
94
110
78
174
101
45
46
101
62
38
32
45
96
77
78
82
126
55
65
97
41
94
105
58
63
51
114
88
120
75
83
131
59
155
69
63
65
57
110
85
61
91
60
74
58
81
92
55
65
59
44
142
89
79
94
61
105
62
110
101
82
69
110
62
113
64
92
43
93
102
27
64
78
49
49
66
108
82
81
142
81
50
52
53
53
70
87
67
86
133
58
121
92
81
60
89
75
81
79
119
67
92
77
50
88
72
131
54
90
126
78
71
66
32
85
99
74
51
137
62
52
49
69
124
77
75
93
80
84
85
48
44
53
80
74
73
73
76
76
41
87
42
51
107
133
64
83
102
126
102
102
90
62
61
51
97
71
71
80
34
53
137
75
120
88
97
104
73
76
108
78
66
64
116
63
54
45
35
101
57
64
112
54
48
84
33
68
105
36
174
114
84
62
65
95
55
110
59
121
51
89
63
83
88
59
101
46
42
81
58
83
56
113
89
115
128
56
104
109
68
82
61
45
83
35
44
85
61
48
97
69
71
97
87
56
60
53
49
63
126
54
79
92
144
108
73
73
54
68
83
64
62
63
36
88
61
48
106
73
136
76
87
69
70
64
83
64
49
79
81
98
93
73
96
47
58
96
79
63
47
45
88
79
79
57
84
64
61
76
84
87
64
84
76
64
29
52
72
41
79
81
73
131
48
89
114
85
89
87
95
67
41
95
43
117
49
41
35
78
88
33
53
73
65
113
89
64
77
106
68
58
53
85
45
87
104
106
53
76
64
60
58
49
46
96
83
39
156
72
76
64
117
130
67
79
50
49
58
103
43
65
67
101
104
58
36
148
31
65
87
115
108
74
63
97
46
125
58
121
69
44
44
100
102
32
47
72
87
49
118
59
87
98
61
34
103
55
71
80
119
98
90
57
55
91
43
81
73
70
94
61
60
95
72
79
73
79
95
73
96
49
33
63
51
52
34
154
111
61
58
65
71
41
84
47
76
79
55
69
68
66
105
80
104
75
54
124
53
87
78
58
58
93
72
65
87
65
71
127
105
85
94
64
96
102
51
49
101
92
39
73
56
95
91
81
181
57
65
85
64
63
94
42
94
106
71
118
146
100
80
83
112
78
67
79
72
96
70
41
52
75
91
94
69
78
50
85
56
84
76
89
101
54
57
60
124
65
63
74
52
107
74
60
44
84
81
69
57
65
97
42
92
69
61
117
54
96
47
89
71
61
49
68
108
86
97
104
63
75
79
69
127
61
83
131
91
69
123
131
70
43
118
37
77
86
57
99
143
85
78
59
61
167
90
66
167
89
69
40
108
51
59
66
110
132
86
81
62
53
86
95
114
69
89
105
96
75
75
161
38
56
90
94
89
83
124
77
90
77
98
83
86
61
62
67
69
58
100
91
111
89
124
110
81
54
79
82
99
46
90
66
105
82
91
60
115
129
116
85
85
88
122
103
67
54
84
45
99
84
134
71
78
84
153
102
66
69
76
69
63
54
77
81
70
66
125
104
100
59
43
111
68
40
75
115
57
77
83
140
98
87
83
60
100
44
73
144
92
62
57
106
89
95
76
71
89
146
133
127
113
81
53
52
67
50
63
78
52
59
74
111
32
59
71
64
78
72
53
63
97
118
83
51
45
55
84
100
77
64
55
74
85
78
128
85
72
93
110
109
78
64
85
95
46
39
88
56
81
106
49
97
38
81
72
76
54
93
61
91
51
87
72
68
53
90
61
74
50
89
62
98
48
51
76
57
91
60
79
77
37
50
50
65
85
102
73
69
38
85
89
38
67
98
81
62
68
52
81
58
42
69
91
47
60
74
38
83
91
96
78
116
91
67
60
56
29
99
98
104
62
136
131
71
103
51
45
66
75
45
48
76
43
83
106
81
69
111
107
49
83
78
132
84
80
29
73
89
80
55
53
58
76
45
71
64
86
81
102
82
93
165
67
95
76
75
65
76
111
95
124
78
99
99
61
57
82
42
91
98
88
48
71
63
48
100
73
26
93
88
63
47
75
62
98
181
81
56
53
54
70
62
91
60
58
30
76
45
77
66
146
47
60
70
91
108
88
73
64
101
65
63
83
66
130
60
66
67
44
111
58
115
70
42
45
50
50
148
97
43
64
59
81
50
84
76
77
60
71
82
80
59
130
147
68
71
136
60
66
94
61
70
63
94
64
103
89
41
119
99
68
88
51
74
38
93
79
83
49
69
47
70
121
95
155
103
73
68
63
80
58
80
75
87
91
113
66
49
63
92
84
72
100
51
132
74
78
124
37
101
91
121
77
81
85
103
57
78
82
60
89
60
80
97
92
82
138
62
69
77
69
94
75
36
56
90
36
58
62
60
50
73
81
64
54
59
89
64
40
58
82
76
111
42
76
53
83
54
69
40
69
39
95
96
57
65
69
61
57
79
91
115
86
93
50
97
85
84
86
110
92
56
61
74
67
50
96
51
111
69
62
65
117
82
71
61
91
82
103
63
114
58
76
98
59
62
83
89
57
51
103
50
41
81
61
83
47
58
58
85
48
39
70
50
86
57
51
85
97
69
109
100
84
77
67
97
74
81
110
54
87
65
70
92
78
90
43
81
77
105
67
82
90
60
79
80
61
85
101
72
74
127
73
91
88
53
90
73
102
90
70
68
65
76
84
75
75
59
73
68
46
142
116
66
92
67
60
59
101
81
106
80
87
54
93
56
48
82
76
89
94
120
79
68
160
85
73
75
103
93
87
125
83
89
35
65
87
35
60
87
56
91
48
110
75
90
158
50
66
70
56
50
76
66
86
54
106
61
44
64
78
105
84
99
89
96
86
75
59
115
48
113
99
86
50
143
88
99
83
67
78
128
76
37
101
59
68
65
47
98
100
92
57
56
88
80
70
110
43
54
99
86
53
93
135
43
73
74
72
75
39
74
66
100
129
37
159
57
72
91
90
69
69
79
26
58
68
77
24
113
109
84
51
78
41
51
70
84
67
67
56
92
84
84
72
54
66
136
69
98
107
135
70
116
72
79
114
87
73
60
42
114
103
106
98
74
71
52
58
134
55
125
112
57
37
97
101
42
54
64
53
49
41
77
93
32
83
112
77
113
80
121
71
67
129
133
34
91
60
58
127
106
87
52
98
104
56
44
57
117
95
54
56
69
84
97
90
98
54
58
77
57
46
53
173
82
108
85
108
95
72
74
59
42
57
43
136
62
100
77
41
88
105
46
75
83
93
42
56
74
95
96
85
36
116
64
64
82
64
70
28
119
95
105
71
103
56
112
94
72
91
71
68
55
79
98
52
102
61
96
52
104
79
90
95
42
69
81
107
87
48
91
105
47
55
72
115
76
64
69
80
105
55
82
96
93
105
65
83
49
86
112
70
67
26
90
68
66
96
75
59
56
149
117
91
87
98
77
104
90
59
82
113
45
52
99
59
69
105
57
72
65
91
54
70
84
74
51
32
75
91
111
79
34
103
97
77
35
77
45
119
99
37
127
108
60
91
55
63
92
81
68
56
73
79
52
88
68
80
101
40
62
49
73
69
73
64
61
72
33
99
89
59
50
88
69
45
87
68
109
45
110
52
70
174
64
35
120
89
68
51
88
81
109
59
128
89
108
81
70
99
87
56
67
67
49
99
59
84
46
106
55
125
49
73
103
63
54
95
96
81
83
72
58
113
89
72
108
43
76
62
95
68
85
91
50
76
62
50
85
62
99
81
64
41
98
70
103
62
99
65
91
102
156
83
62
68
93
83
72
84
67
57
47
42
62
179
97
67
105
79
79
67
170
83
85
46
54
72
48
67
75
81
120
79
87
54
90
45
111
82
50
68
50
86
72
86
33
50
82
112
110
65
72
47
52
99
71
147
79
30
77
90
83
56
48
102
66
63
83
85
40
71
57
107
80
63
60
71
71
132
70
60
96
108
86
111
93
60
127
73
59
62
80
75
50
88
78
118
63
104
106
111
113
83
73
65
62
88
101
101
78
119
57
75
50
34
106
39
87
41
120
81
56
97
82
109
80
120
119
63
89
158
100
66
82
78
118
43
73
56
69
55
85
66
63
55
108
78
64
108
67
47
82
110
105
111
140
120
43
75
47
86
48
71
61
110
31
86
58
78
69
36
56
75
118
53
36
88
115
43
103
131
80
104
45
70
105
69
52
85
92
56
112
87
81
58
64
72
85
54
86
99
149
110
46
67
62
99
86
42
87
50
73
94
97
76
48
81
82
32
78
78
62
66
93
46
62
63
109
101
78
67
105
92
96
52
36
50
63
103
153
57
81
55
25
126
104
68
103
70
71
112
51
52
89
73
62
44
26
96
67
70
56
55
38
69
91
132
91
107
46
125
48
34
89
77
52
55
70
87
82
82
119
103
89
77
116
40
80
40
71
80
69
48
63
111
102
136
83
92
47
98
94
141
71
85
91
63
78
81
86
54
50
48
69
77
93
116
66
67
87
95
109
45
102
74
74
106
53
108
58
62
67
41
117
80
50
96
134
60
100
74
99
71
66
93
97
63
73
115
68
217
40
83
141
141
30
107
103
79
64
51
67
93
109
99
109
46
89
49
57
102
82
112
62
69
106
101
71
97
56
70
109
74
43
41
73
69
75
41
75
97
82
85
88
77
117
76
67
77
69
120
56
74
124
150
129
77
82
71
69
50
36
73
137
82
64
76
60
32
60
51
103
39
94
80
59
106
76
115
60
43
66
67
40
72
68
61
87
53
56
60
78
59
55
60
98
45
71
81
88
50
62
72
128
77
77
84
79
32
93
81
74
33
105
104
86
107
51
79
66
71
75
58
108
36
98
69
129
75
41
81
103
89
81
72
61
126
76
127
58
69
65
57
51
53
89
68
76
104
51
127
103
115
74
50
61
86
36
70
76
86
64
80
84
87
72
70
103
89
74
145
64
108
81
103
97
82
92
75
68
58
77
80
56
66
74
80
77
111
67
36
129
78
125
51
48
72
124
71
133
56
92
47
105
66
66
43
61
76
164
100
57
102
119
94
53
124
76
148
103
57
54
114
66
74
59
89
74
50
106
54
67
64
69
48
125
102
120
110
108
99
91
75
57
68
86
63
56
46
68
47
119
90
86
62
59
83
82
87
57
95
94
68
84
73
75
66
93
86
45
89
50
49
56
50
52
98
65
69
100
151
116
85
63
49
49
69
60
40
56
95
94
94
77
50
56
91
128
83
37
77
43
89
79
65
77
123
83
76
70
52
72
87
96
83
76
57
111
57
44
82
93
62
47
36
130
37
31
82
65
42
86
88
93
41
84
70
151
89
67
75
59
70
41
103
64
49
59
110
97
43
92
66
116
82
76
60
61
101
85
73
43
55
113
43
86
78
54
130
87
87
58
80
81
100
82
123
132
69
84
83
56
64
148
72
105
103
81
67
23
57
82
87
89
83
126
101
62
49
74
38
70
47
52
58
75
75
110
46
80
82
75
92
63
57
115
79
84
68
62
55
41
35
56
43
175
84
122
112
74
133
88
100
92
74
71
99
67
80
102
76
80
49
174
126
95
72
86
131
53
49
72
62
85
54
113
64
76
106
98
88
67
57
108
79
99
60
33
49
129
48
111
81
107
78
68
73
100
70
61
96
88
66
89
129
101
80
64
63
135
82
74
33
72
86
59
42
105
95
73
83
91
78
57
94
61
96
91
73
81
118
103
120
90
35
68
121
51
80
35
106
52
100
123
85
53
65
128
123
117
97
62
45
65
88
88
90
84
31
54
110
120
96
36
49
64
61
79
74
160
63
73
100
70
63
75
64
69
73
71
85
82
36
64
114
101
62
41
46
70
47
87
77
106
89
117
62
82
56
94
63
81
166
83
85
77
39
109
127
103
63
63
124
78
45
94
54
75
41
38
65
63
73
94
77
86
92
87
78
76
39
94
69
74
86
60
104
83
76
49
40
71
71
73
48
71
68
47
67
82
59
78
55
67
94
73
70
135
111
77
53
107
73
77
59
103
69
73
86
120
87
59
89
87
54
32
62
67
84
117
47
93
45
89
117
56
52
103
75
69
102
90
67
71
69
51
69
97
86
131
104
89
88
100
89
74
59
81
48
69
44
100
69
183
74
38
71
85
47
106
65
59
70
116
100
44
69
63
53
83
126
66
88
86
90
30
70
72
68
49
101
59
51
60
70
94
44
81
84
66
82
71
92
45
78
106
30
58
45
47
112
80
76
93
59
64
64
97
95
79
83
39
117
99
87
55
64
65
73
97
55
109
65
111
33
65
98
81
58
86
68
65
63
141
68
57
62
52
120
71
114
51
84
40
46
82
39
90
74
77
65
34
123
95
82
116
49
121
71
48
95
102
75
104
83
68
29
59
64
77
86
75
54
121
41
71
42
68
104
76
90
41
78
59
35
88
48
63
84
84
71
50
55
142
61
36
128
92
79
110
110
127
79
96
67
83
50
76
54
181
83
55
68
84
70
38
116
104
75
70
83
69
38
109
54
92
70
68
99
65
84
69
84
116
100
93
96
73
36
82
58
83
35
135
100
99
124
116
79
79
57
92
80
115
42
91
135
87
119
52
71
79
68
57
50
89
101
55
60
46
72
63
52
93
58
106
98
115
76
72
41
97
103
107
53
73
76
89
65
54
78
105
74
102
66
65
88
49
104
98
98
79
55
106
93
75
69
83
69
84
61
61
104
53
51
34
46
54
65
82
58
113
60
125
83
54
101
79
112
39
53
66
68
70
56
91
63
95
70
83
50
82
54
56
66
51
80
53
84
89
79
87
52
108
88
72
37
58
91
69
115
49
59
134
78
43
79
74
92
118
82
64
49
57
70
84
156
67
95
86
49
142
63
84
71
28
97
44
81
102
74
87
80
43
100
62
115
48
77
69
56
132
63
81
41
52
71
74
51
72
84
53
133
54
123
36
97
65
78
98
83
68
74
50
74
89
100
75
112
70
84
101
68
63
43
101
71
122
65
97
105
53
85
90
90
133
71
82
48
77
51
65
49
52
86
112
107
87
96
56
74
74
78
58
90
90
76
126
36
65
118
46
90
41
108
106
90
53
64
83
56
57
78
129
91
97
95
92
46
97
93
45
73
115
38
68
85
126
101
52
69
77
124
85
38
59
35
63
92
81
34
89
60
56
90
41
94
74
61
50
144
81
103
69
108
91
78
50
117
124
92
50
101
100
75
39
54
45
84
98
71
87
97
46
86
108
88
95
33
59
47
82
90
123
85
63
67
69
86
84
48
72
77
63
108
48
94
33
97
115
62
50
58
43
58
55
82
58
58
76
91
75
90
41
92
65
82
107
131
82
52
52
28
64
127
61
85
65
80
87
94
73
79
90
123
90
58
53
43
86
53
119
93
120
46
68
79
42
126
90
71
54
82
115
106
60
79
49
72
64
108
89
73
96
60
66
65
33
87
68
57
68
70
120
29
139
44
86
68
101
48
90
52
39
104
61
74
58
55
64
78
69
104
111
60
63
113
97
85
115
121
67
65
54
77
106
86
47
63
72
54
79
35
108
52
42
95
93
97
74
59
93
77
57
107
92
101
85
40
85
42
102
55
68
60
40
43
82
102
73
83
69
69
60
99
53
53
49
70
136
142
59
55
61
79
59
81
140
101
138
72
63
35
38
94
96
28
57
55
57
84
67
128
41
79
62
87
83
85
122
73
54
86
85
55
39
49
53
86
57
98
61
101
71
107
75
70
92
38
57
79
81
61
47
123
170
88
64
109
62
88
79
84
66
79
58
69
42
40
145
86
108
62
33
107
81
118
97
65
95
76
89
58
135
76
106
96
116
63
46
54
57
38
43
104
72
77
54
79
66
96
108
111
52
47
65
83
44
68
34
40
45
88
111
65
113
72
92
76
79
89
89
76
113
50
123
96
71
97
63
88
84
105
121
39
73
149
98
99
65
80
115
33
82
145
70
83
52
77
108
70
134
169
137
63
51
48
82
55
95
100
36
61
82
48
89
34
72
103
107
75
83
150
38
44
96
71
66
78
60
121
106
47
78
59
39
88
74
55
101
122
111
138
109
44
88
59
71
81
103
120
91
40
63
64
98
100
125
48
68
52
57
59
100
60
70
95
100
94
104
99
71
103
83
77
44
94
61
90
84
63
94
70
62
70
103
52
129
64
80
105
60
39
55
139
77
84
68
81
115
81
53
88
69
86
85
55
45
104
97
37
56
115
88
61
160
113
95
55
35
84
61
52
68
91
84
82
113
145
101
76
65
90
47
69
73
105
115
50
82
52
46
36
54
32
105
83
46
86
69
71
56
59
81
102
46
84
86
45
78
90
69
102
44
72
44
117
83
72
98
99
81
94
108
68
40
65
50
52
91
124
102
82
55
77
61
98
108
53
52
112
87
35
66
95
66
58
87
80
47
109
94
64
88
65
49
41
64
68
88
69
64
56
74
54
68
60
41
106
69
115
84
58
68
105
78
32
76
91
75
91
128
57
76
108
80
107
54
83
96
70
96
77
45
49
161
79
40
54
85
70
79
56
85
98
86
66
105
79
144
56
47
66
68
124
62
64
77
48
54
97
101
50
43
90
68
99
48
83
62
81
67
47
86
53
59
66
47
67
97
62
89
58
44
124
102
66
85
78
64
78
74
72
71
88
65
76
70
114
54
120
43
76
100
100
60
122
59
72
41
98
70
84
91
74
80
132
63
54
112
95
42
62
62
90
79
58
57
83
66
87
82
54
53
79
29
141
73
49
61
37
42
83
80
92
57
74
70
69
70
41
96
65
81
106
159
90
98
58
59
75
80
44
126
113
68
100
65
97
59
108
80
143
88
58
48
84
106
88
75
200
75
123
28
62
70
111
71
62
66
97
81
64
60
85
99
87
36
107
74
40
66
62
59
89
94
59
84
44
49
87
51
63
56
60
106
68
96
139
67
91
69
43
67
121
91
69
85
93
78
69
101
62
59
48
39
94
62
91
50
126
68
89
70
52
84
79
81
85
109
118
61
47
101
95
68
61
76
74
60
54
118
73
50
58
43
80
80
60
59
103
68
71
38
72
67
89
150
88
80
93
89
74
51
82
73
84
97
68
71
126
105
95
69
124
56
102
77
57
83
53
91
101
44
60
80
111
69
43
55
68
124
83
159
60
75
68
80
126
86
73
94
61
78
106
88
58
106
72
41
64
59
83
68
125
72
55
83
53
42
29
123
123
62
97
53
61
55
97
92
45
62
86
76
103
141
79
92
86
93
73
90
99
92
53
60
97
45
57
88
90
79
77
39
94
101
54
62
56
39
32
53
86
107
144
49
118
52
51
66
85
60
34
59
41
89
77
93
47
59
125
104
38
107
78
80
46
88
200
71
60
52
53
62
151
132
71
79
116
111
92
146
128
103
38
61
66
76
84
58
72
46
77
78
60
106
50
83
63
71
42
169
37
116
77
54
139
86
42
63
66
103
54
27
50
98
83
106
62
40
80
109
84
91
96
71
91
50
97
81
89
88
55
82
91
61
90
60
97
61
117
51
33
30
110
107
51
60
90
96
62
83
55
83
91
62
54
73
84
61
184
128
69
54
46
45
154
77
88
80
94
91
131
96
79
103
63
150
41
52
66
26
55
54
71
69
40
101
84
62
98
92
44
102
81
44
89
82
76
43
72
154
62
107
77
95
83
48
65
66
120
89
50
59
48
86
87
88
62
48
130
61
94
91
108
38
62
39
65
103
90
60
51
107
49
71
85
60
90
107
115
78
94
89
153
28
82
73
147
80
54
76
114
65
102
119
83
71
64
127
92
60
70
53
88
145
106
145
52
64
48
96
77
88
106
60
49
54
48
67
58
83
62
59
115
55
57
49
121
84
94
78
70
36
115
93
56
40
89
76
93
73
56
65
69
97
47
62
110
145
66
72
51
156
79
80
43
108
88
48
70
31
92
78
112
65
75
102
88
125
69
101
56
95
64
38
61
46
94
67
95
101
38
39
52
80
91
131
49
82
74
48
53
49
72
55
62
65
76
64
98
47
89
126
133
62
92
71
80
75
84
70
76
39
29
54
92
57
69
62
88
88
95
57
79
139
53
47
105
60
110
88
90
58
62
63
81
91
49
113
65
74
93
94
144
63
109
88
51
105
74
103
80
71
65
81
140
101
149
84
63
92
73
84
85
83
108
66
76
125
92
61
100
152
75
88
61
81
36
78
85
72
92
89
63
90
112
82
94
72
80
98
68
80
51
104
83
85
78
43
99
39
87
92
53
36
95
103
40
176
87
111
55
86
40
66
70
107
108
59
94
60
32
75
125
74
66
56
116
149
113
56
70
87
44
80
94
94
74
71
61
90
82
51
81
93
92
107
44
69
128
64
59
27
81
130
63
116
78
81
109
96
70
34
75
82
111
61
91
56
110
92
137
88
72
90
118
82
51
41
63
56
134
104
54
108
66
65
63
71
87
89
121
75
45
122
54
83
69
37
131
57
41
68
50
55
41
57
73
75
91
96
74
85
91
101
102
69
41
50
66
72
91
82
43
96
107
38
62
88
51
46
76
69
114
55
83
63
75
81
44
89
26
85
87
62
48
70
78
75
91
86
82
46
58
78
67
100
86
61
68
63
69
46
39
108
104
46
65
68
41
91
74
96
88
54
51
93
80
46
49
108
35
81
75
80
84
84
39
110
83
72
57
64
105
69
103
89
98
61
87
56
49
73
42
79
75
38
71
67
59
85
66
68
122
158
116
94
56
89
73
35
95
68
97
64
115
57
79
63
82
70
45
68
77
128
66
82
62
73
64
100
95
62
90
83
46
37
42
95
130
113
52
65
58
72
92
56
70
81
43
63
45
61
65
54
117
69
97
88
67
106
84
79
107
74
62
36
89
65
94
54
75
80
63
65
72
64
49
55
34
51
103
67
112
41
87
63
145
82
121
95
96
55
115
63
94
90
94
44
57
99
82
74
82
33
68
63
89
95
79
157
67
147
68
83
28
135
100
105
81
64
77
34
58
85
52
60
83
88
53
73
110
128
60
72
100
87
67
53
100
68
129
58
82
65
34
101
63
49
70
110
125
91
87
69
104
60
89
72
41
54
40
69
56
106
51
45
81
101
49
74
120
88
52
64
99
87
65
71
86
107
94
55
66
82
104
77
50
66
84
92
56
48
156
102
126
86
93
43
63
78
43
103
61
61
58
73
99
87
67
51
64
74
48
90
92
109
60
70
60
96
67
72
78
60
110
39
91
97
73
147
51
77
92
71
113
62
49
56
65
76
60
78
61
83
71
48
50
87
113
55
69
87
58
99
108
78
143
81
65
48
75
80
62
78
29
103
82
102
103
83
127
69
34
55
60
66
92
103
68
97
76
122
81
62
86
123
134
78
82
97
67
46
97
54
103
13
79
79
24
81
65
78
117
45
127
57
35
79
49
52
40
103
88
56
60
56
101
49
77
52
66
89
86
90
115
41
78
50
49
70
54
130
88
70
74
71
41
91
93
111
63
33
64
86
112
53
57
77
38
84
61
76
76
117
67
129
63
179
66
57
61
70
63
84
75
49
105
67
72
118
77
47
79
56
70
56
103
78
72
39
38
122
119
60
73
40
79
70
88
92
90
92
21
63
31
108
109
89
52
66
40
45
48
49
32
49
74
83
59
54
92
107
78
55
102
64
68
77
113
90
85
57
113
80
71
87
81
50
63
81
45
68
69
53
117
79
84
80
85
67
129
76
114
54
83
72
90
56
80
63
74
43
87
99
41
170
51
63
70
75
67
66
58
71
61
127
61
103
90
106
70
126
68
73
62
70
63
117
50
47
73
129
92
129
68
62
53
46
90
71
60
51
126
99
59
78
57
100
79
101
105
66
76
70
88
50
97
28
72
96
73
39
54
65
55
83
118
46
74
83
56
68
58
164
66
82
42
94
56
85
79
134
54
91
87
76
66
70
113
97
85
101
92
53
95
97
61
42
86
147
54
79
31
52
90
71
65
54
43
128
53
60
115
46
91
49
68
90
100
116
100
72
88
62
87
72
73
41
78
49
69
68
110
78
84
75
85
56
40
114
80
94
84
101
99
108
107
86
62
81
40
65
68
56
59
30
78
74
98
129
77
62
110
92
51
55
37
64
97
92
93
78
41
86
119
63
90
80
71
58
64
106
65
97
78
53
67
60
40
72
37
105
133
128
92
58
40
55
78
98
109
103
91
57
33
45
131
57
80
89
42
59
82
106
56
64
98
62
56
95
132
73
67
103
82
48
82
69
69
98
78
81
52
47
69
70
148
93
96
69
69
93
101
87
96
26
53
56
44
84
56
99
76
98
84
105
53
66
63
83
51
90
71
117
40
109
55
52
102
113
90
48
38
117
76
86
81
37
115
98
119
98
81
68
77
70
144
29
68
59
86
63
75
48
77
94
69
50
85
71
37
91
109
53
44
74
100
100
74
82
43
77
66
57
131
123
61
71
72
108
83
91
74
74
111
39
67
80
96
123
81
48
95
136
65
92
99
82
88
69
49
58
91
88
94
98
100
97
71
96
103
50
56
75
64
154
86
52
69
76
70
54
69
89
85
84
68
102
83
67
71
96
76
91
102
86
108
49
124
86
83
61
49
59
114
68
61
69
75
64
74
60
61
57
58
46
66
91
145
55
116
79
109
95
67
129
145
101
86
72
88
63
99
82
96
68
74
68
88
62
57
53
48
75
88
76
79
93
104
47
82
70
37
66
68
84
43
45
82
83
91
121
59
99
84
53
68
64
64
73
73
39
73
70
61
65
62
86
94
82
79
76
78
32
64
51
105
111
81
100
62
74
61
42
61
71
65
48
57
47
127
109
58
89
111
107
70
81
73
55
69
53
42
55
89
119
82
82
92
86
107
151
53
64
88
87
83
83
48
66
69
43
58
82
59
85
86
50
74
62
123
82
70
141
42
89
75
82
143
75
56
42
42
34
78
80
54
103
69
70
60
93
52
56
76
37
73
82
82
86
105
51
97
71
95
81
56
103
94
100
48
54
44
48
86
115
35
76
84
118
52
84
76
66
104
107
84
91
60
86
57
91
68
40
41
60
91
86
76
82
74
81
60
82
74
113
49
71
119
48
53
89
45
51
83
58
83
39
71
109
86
73
75
90
70
30
90
60
72
73
126
66
44
112
56
54
84
94
87
141
89
54
67
97
65
52
115
108
91
67
63
76
108
56
46
87
41
125
92
72
124
91
62
50
125
64
94
136
79
34
85
80
77
108
45
39
139
118
82
77
82
94
91
35
23
75
82
62
105
60
26
82
46
75
111
88
68
93
52
110
119
55
90
54
107
64
47
71
66
55
71
82
90
78
50
77
56
74
46
91
59
66
53
45
130
35
90
72
47
96
68
103
33
127
103
73
95
87
87
81
76
96
120
66
56
40
111
99
56
73
75
95
98
63
60
112
54
75
76
105
72
70
60
44
47
118
91
118
66
26
72
110
63
99
88
70
51
129
66
44
84
82
110
70
56
78
86
134
111
80
67
121
84
63
71
61
68
76
54
77
72
38
90
58
81
53
82
86
94
82
67
134
59
66
57
45
85
88
151
105
47
73
71
69
127
104
95
91
85
73
111
61
112
59
57
77
32
67
79
31
56
118
107
73
99
86
117
63
36
60
39
76
108
79
73
37
80
77
53
111
81
59
95
86
55
40
90
79
65
85
43
69
55
83
60
37
90
54
104
59
106
91
98
81
110
87
75
75
38
90
51
116
107
80
55
64
65
79
61
120
83
55
33
62
61
56
72
72
112
61
53
53
71
49
69
94
52
92
64
59
109
95
98
121
64
96
116
76
126
56
89
46
68
89
79
42
127
109
91
77
114
42
146
130
47
81
87
89
91
85
50
86
71
126
113
74
101
85
40
79
60
56
69
60
123
71
55
122
101
107
82
89
65
48
53
124
80
44
123
71
62
105
121
67
49
57
86
96
49
93
85
63
39
50
79
93
129
118
62
82
117
68
83
98
80
72
156
72
87
76
61
108
92
46
122
48
80
97
69
78
78
93
86
90
62
79
96
45
136
83
61
74
106
77
75
90
117
49
81
137
92
74
67
67
123
61
73
108
37
85
64
36
58
59
72
90
131
68
45
44
90
45
54
76
53
51
84
79
75
52
105
98
57
62
76
97
111
100
109
109
89
40
48
66
90
71
186
82
134
88
65
147
94
117
81
79
66
38
77
37
96
33
134
55
118
66
122
81
69
54
86
93
52
83
93
95
90
39
99
137
103
70
68
49
55
92
60
96
51
73
77
94
62
59
119
85
56
79
108
92
112
63
78
79
34
70
65
117
87
85
105
30
65
144
61
103
45
73
62
72
104
105
70
102
84
70
85
68
69
58
121
94
98
111
33
75
64
82
49
71
87
117
96
63
79
70
108
43
71
67
71
71
42
66
94
45
97
30
47
89
107
33
37
105
82
47
75
56
111
84
114
65
123
48
51
87
102
77
91
47
69
75
63
117
54
136
73
132
59
85
107
94
77
42
79
76
61
41
49
132
55
94
90
91
89
52
124
50
101
52
53
62
70
58
66
47
76
39
87
40
103
69
54
86
145
110
68
44
140
114
65
56
79
97
116
57
104
85
91
34
94
88
68
83
43
166
73
98
62
64
80
83
60
74
74
71
58
105
122
137
46
73
93
87
101
66
54
57
121
94
127
70
116
60
115
67
72
73
32
34
95
113
33
120
56
180
134
141
72
92
70
38
75
121
69
60
96
99
107
71
55
47
73
45
76
83
62
87
81
98
83
105
105
33
56
73
105
74
55
58
48
53
38
79
89
80
66
101
85
82
76
48
40
49
60
43
87
56
135
98
81
81
56
97
102
117
57
64
67
95
66
125
40
78
71
83
84
136
53
75
52
75
88
51
84
122
65
62
75
90
93
76
98
90
56
88
72
122
60
91
32
56
80
49
53
68
96
32
66
52
71
118
101
40
57
79
91
56
56
74
77
81
92
65
44
69
60
81
88
141
61
113
60
104
95
75
116
60
52
108
85
65
55
69
82
110
89
87
50
62
94
64
76
107
75
62
110
80
143
118
80
68
97
83
78
107
42
111
106
64
98
109
68
48
71
89
71
140
72
96
84
102
92
63
68
74
95
32
56
76
59
65
73
63
46
107
49
98
55
171
113
57
76
43
62
84
97
113
59
58
54
78
45
159
51
111
110
78
38
67
125
54
31
99
110
72
90
80
126
70
38
77
90
54
75
61
130
63
94
50
62
43
71
86
76
91
39
83
94
117
114
77
132
71
42
155
94
86
70
85
73
41
86
69
90
62
107
83
64
112
112
67
99
162
92
101
62
89
110
88
91
64
85
57
70
50
34
91
51
68
67
78
31
76
98
73
109
67
45
95
91
52
39
50
79
87
73
103
70
46
80
89
115
74
65
48
77
24
72
81
58
52
98
58
111
53
113
85
82
122
37
40
69
57
122
84
75
130
93
103
69
57
65
121
84
74
98
87
79
119
111
84
84
66
110
128
75
107
86
92
56
63
82
82
89
80
69
89
36
86
57
34
32
83
83
36
61
101
62
41
92
71
120
107
62
118
142
40
76
63
63
83
84
98
76
81
79
49
64
81
81
59
68
86
92
67
117
81
53
73
104
45
141
41
85
50
81
69
78
90
86
52
43
90
28
41
74
114
50
143
71
47
61
27
123
32
48
103
74
52
114
106
94
48
61
72
68
92
98
74
56
63
91
82
54
87
76
73
103
48
139
80
114
56
41
81
69
60
35
68
68
61
41
73
49
68
76
84
114
83
55
62
143
107
62
89
38
87
63
120
89
129
79
85
58
35
76
73
109
55
43
65
97
90
64
108
52
58
72
67
87
97
108
88
29
62
57
30
73
100
76
92
55
60
82
113
50
60
49
119
67
82
66
62
68
71
70
78
82
75
58
111
71
77
77
68
107
92
107
85
106
98
71
82
76
106
52
65
52
84
132
50
140
34
185
82
81
60
73
49
45
100
48
92
112
113
92
49
63
80
100
62
79
38
125
81
106
113
130
100
48
96
98
61
94
45
88
114
119
135
51
75
78
71
44
30
75
67
88
59
146
81
93
105
46
79
122
135
92
46
42
72
93
81
73
60
95
86
64
76
50
52
51
53
49
117
65
142
72
109
108
92
39
77
105
49
88
53
65
65
104
69
61
60
84
50
85
118
65
63
114
84
87
70
64
103
50
140
59
57
60
80
66
75
52
91
85
58
64
76
60
106
92
56
111
91
56
63
85
65
64
35
143
115
94
62
32
41
104
44
75
39
95
57
61
41
45
67
110
95
50
52
57
131
47
53
62
56
73
55
117
76
84
80
130
59
84
63
94
64
95
80
80
45
122
74
55
80
63
149
67
63
73
89
100
41
44
105
62
77
64
40
78
85
95
58
76
107
69
51
123
81
26
85
93
76
77
48
45
107
76
116
92
62
47
55
69
146
119
156
97
49
69
97
87
56
106
56
72
44
97
50
58
95
25
70
72
84
90
74
80
72
68
138
55
51
62
152
63
57
48
59
41
40
61
46
46
107
78
82
75
38
42
67
62
33
123
57
84
81
53
115
49
43
91
122
117
54
128
117
80
72
101
97
107
63
65
72
84
74
102
121
113
56
121
71
59
73
75
81
56
133
59
95
54
76
78
85
60
63
70
73
49
99
69
86
82
52
114
47
91
72
96
74
105
71
74
65
93
95
41
94
61
138
137
90
129
146
73
113
80
78
102
41
68
46
88
68
69
107
85
45
47
73
88
81
84
104
67
76
136
79
79
52
59
110
75
140
90
85
29
109
45
110
75
82
69
118
56
63
99
91
77
116
86
75
69
66
105
45
97
54
39
117
84
90
100
141
40
50
63
80
69
73
76
45
66
47
88
78
45
58
108
94
128
71
52
71
36
93
110
69
56
111
90
70
75
94
48
119
88
132
88
85
101
81
109
54
103
72
65
116
45
99
45
55
198
71
102
51
104
74
98
79
115
37
97
97
59
89
98
44
58
43
67
92
91
56
53
53
99
41
61
94
65
105
52
69
79
70
124
72
95
45
79
76
61
100
121
54
58
67
91
55
70
85
72
79
53
40
72
55
95
84
93
56
69
127
40
78
71
77
38
64
106
46
55
109
76
38
76
57
83
141
72
109
99
58
74
119
33
107
86
32
74
44
44
120
71
76
55
84
148
46
51
53
112
85
101
104
87
58
63
53
96
73
54
52
41
115
146
82
49
61
106
109
91
85
67
50
39
95
73
91
88
78
40
62
83
53
69
68
155
79
79
148
96
88
57
126
105
69
74
83
60
69
40
59
57
69
105
51
79
41
86
86
85
85
44
77
92
60
98
38
81
50
51
38
104
53
76
98
30
51
48
85
65
89
117
74
141
98
55
97
86
81
76
88
84
91
76
58
65
52
80
81
94
49
71
67
52
60
62
67
104
46
94
52
85
91
37
56
62
72
47
83
79
65
89
89
49
117
103
90
94
62
60
65
54
85
70
76
66
96
124
30
67
62
71
82
69
109
81
54
38
60
92
93
71
41
108
102
63
54
79
71
70
91
65
83
66
73
104
101
51
74
87
62
94
80
66
72
85
78
91
63
45
63
50
97
82
94
84
73
132
48
82
57
101
89
75
46
93
85
72
134
49
75
54
104
57
75
100
86
75
84
73
75
80
82
42
95
78
190
123
59
83
54
60
41
148
152
43
38
65
50
34
40
45
38
74
62
59
66
40
56
90
62
91
81
74
52
63
65
95
59
103
66
61
61
78
78
84
91
107
72
61
43
89
101
148
52
114
46
94
78
95
105
73
105
58
47
58
61
101
97
97
56
57
101
90
152
50
83
79
64
108
78
50
60
60
43
81
41
70
60
69
135
60
75
131
55
42
41
133
91
56
76
104
71
73
76
108
64
65
80
103
89
61
90
99
74
101
58
31
50
74
122
45
118
77
86
104
120
67
45
62
77
97
91
88
60
135
63
60
79
87
104
52
110
67
120
58
83
98
83
68
68
44
85
99
76
57
44
38
86
95
90
74
62
83
78
68
53
89
70
71
108
61
49
83
142
83
44
109
123
77
100
91
96
79
94
91
118
69
63
70
86
149
60
88
92
71
53
84
40
113
151
62
48
74
34
51
74
86
58
76
74
83
75
85
75
112
53
66
32
91
93
94
111
81
62
82
65
55
94
105
94
60
82
60
71
76
73
52
79
80
133
41
52
113
67
74
91
92
98
59
113
89
86
55
91
77
71
109
123
106
111
40
54
38
181
79
37
97
40
78
56
34
57
120
62
108
70
77
43
76
82
80
138
49
61
89
73
93
106
51
78
65
73
98
97
58
82
86
43
129
95
43
75
123
61
71
88
92
64
64
96
55
147
81
69
36
83
47
137
87
145
41
103
48
98
41
67
55
75
53
60
118
73
74
77
74
63
61
104
75
133
36
51
63
40
120
46
98
97
41
54
110
57
71
62
118
84
114
82
137
96
81
86
95
84
98
76
98
53
110
73
62
70
102
65
76
44
100
39
45
58
51
63
99
52
75
107
63
54
59
70
47
106
43
112
48
104
61
126
61
96
64
56
72
42
71
85
95
34
106
68
82
65
68
63
40
75
103
48
65
103
137
57
121
83
125
118
80
60
116
52
75
83
96
61
111
108
88
51
123
46
76
56
86
74
110
67
86
73
77
100
75
117
82
55
60
38
65
76
66
100
72
58
116
81
84
42
49
62
64
36
118
93
55
123
37
94
140
90
55
88
64
69
62
57
73
106
115
68
105
104
73
65
44
60
72
76
63
88
129
60
36
66
73
90
56
61
59
54
48
99
126
59
86
87
61
83
56
91
134
72
89
74
62
66
105
75
121
204
79
80
78
48
84
74
84
104
86
141
78
71
69
81
95
57
57
86
106
113
102
61
152
55
54
54
80
85
48
87
39
104
55
97
92
95
118
105
163
93
97
81
108
113
64
31
85
74
87
102
82
112
87
84
78
51
89
101
103
103
97
67
96
75
53
108
55
90
106
54
126
55
55
69
46
100
36
77
119
72
51
56
35
79
64
91
50
70
66
77
63
82
94
108
64
82
111
85
106
141
93
70
97
129
114
91
58
132
116
108
88
61
87
98
93
44
76
62
109
79
31
43
75
68
133
58
82
127
55
85
104
55
60
69
68
106
89
81
60
109
79
139
75
69
69
73
87
59
83
92
97
77
48
89
115
77
49
85
95
58
73
58
52
48
65
44
89
115
61
84
85
65
64
60
150
60
109
45
64
109
89
99
109
76
79
64
85
50
48
68
77
117
121
60
53
36
128
89
60
85
49
107
68
49
152
53
55
95
65
121
54
77
99
65
73
66
124
131
81
79
65
85
79
80
31
106
34
58
113
143
78
38
34
132
56
63
84
82
51
88
71
60
96
53
63
71
65
77
55
59
107
73
122
53
49
61
118
105
106
69
104
95
118
71
201
51
81
85
106
72
103
50
52
69
53
50
128
68
83
84
77
87
51
30
78
96
86
93
71
69
52
104
102
92
44
92
109
59
102
68
109
90
83
63
81
81
129
103
55
91
107
75
40
125
85
69
91
88
79
42
84
59
89
114
88
106
74
79
34
100
29
62
59
53
80
91
92
89
84
98
92
67
59
55
43
56
162
126
93
88
74
49
87
47
108
71
114
99
50
71
100
93
120
66
107
55
105
52
84
61
94
114
69
156
51
52
90
90
80
70
115
34
101
93
80
64
62
73
108
89
113
109
68
56
88
96
108
100
111
90
50
80
115
99
68
76
76
71
93
82
68
86
68
81
62
70
77
79
84
79
42
60
104
108
94
113
84
73
43
127
87
33
99
100
61
67
80
109
90
73
83
67
79
93
102
83
62
80
104
110
54
86
79
68
52
46
100
50
32
50
50
88
66
53
119
99
53
120
70
74
44
95
61
64
82
86
92
42
109
80
101
96
48
60
66
100
83
77
63
62
112
81
76
108
48
76
82
63
93
96
56
84
116
93
69
54
59
95
39
57
90
30
109
36
28
96
71
82
81
85
103
59
127
53
82
60
132
51
50
76
72
146
108
46
110
68
37
111
63
67
67
49
39
77
101
60
94
94
65
119
83
108
46
89
99
49
37
88
71
108
109
117
48
44
39
82
91
123
56
79
67
72
62
57
64
53
80
94
90
76
96
55
91
79
85
85
84
53
120
75
64
61
61
68
108
70
47
44
102
68
115
107
72
60
24
80
117
56
75
115
69
64
58
126
77
64
45
84
96
92
72
71
79
58
73
59
65
38
73
47
97
83
95
92
98
58
114
83
76
55
98
53
35
74
92
66
49
59
86
88
69
87
85
51
40
51
92
55
74
65
56
155
89
68
66
57
53
47
43
43
67
147
98
80
60
40
81
88
36
66
53
57
62
52
90
26
64
42
76
89
88
46
43
56
40
64
66
94
66
102
115
49
63
56
92
119
29
71
51
70
65
81
73
56
133
83
65
108
45
86
57
85
73
35
59
95
40
117
119
124
117
69
70
105
76
66
88
126
57
59
74
45
56
73
112
53
35
78
47
47
59
83
102
73
99
70
100
99
66
50
89
44
69
85
71
45
76
52
80
116
59
59
60
42
76
84
75
62
86
35
86
59
51
48
149
56
96
68
62
100
194
54
61
60
52
103
89
59
70
65
62
120
68
61
44
81
90
61
90
100
91
59
103
98
58
95
90
78
62
64
71
72
135
100
69
52
69
75
73
50
111
123
79
79
81
113
81
89
62
69
28
49
52
78
59
78
89
57
73
96
50
119
91
56
91
122
125
83
85
123
136
50
108
82
64
102
101
88
74
64
53
70
89
39
64
31
111
63
105
74
112
70
109
56
81
64
46
185
87
63
72
88
64
63
67
88
46
22
27
74
81
36
91
73
125
93
85
87
74
91
56
72
53
91
77
79
86
171
48
101
138
67
73
73
100
71
66
86
63
52
34
55
120
59
58
63
71
69
125
89
80
62
70
36
66
93
86
67
106
86
71
92
58
42
44
70
91
31
53
71
77
67
66
48
41
84
112
79
89
63
96
67
70
94
67
33
92
46
104
73
70
93
103
81
93
69
67
156
56
78
88
81
64
91
58
87
103
98
64
85
68
47
90
56
74
90
95
62
56
57
101
71
56
70
102
45
55
72
67
66
79
73
67
72
95
100
68
99
109
42
79
51
60
109
48
93
73
98
91
145
58
39
56
111
139
153
67
103
104
135
59
104
123
110
74
46
85
117
48
97
47
206
56
49
118
71
54
134
73
52
69
93
93
71
65
37
183
68
129
113
105
70
76
38
108
93
64
67
78
82
72
127
94
86
38
86
90
77
90
99
91
89
68
77
72
97
77
132
137
87
85
89
88
132
73
107
70
52
74
76
89
90
76
63
61
54
52
77
89
103
84
57
76
77
99
80
42
56
37
108
108
62
47
98
102
66
100
130
65
61
87
47
75
111
100
107
48
71
75
107
96
64
82
106
86
51
87
66
74
88
98
74
87
51
79
44
35
34
84
52
97
83
88
55
86
51
66
61
113
96
91
74
86
78
118
82
83
31
153
61
75
68
67
147
46
59
72
37
76
114
84
54
88
71
69
52
112
88
49
75
111
107
88
51
87
54
109
118
115
60
94
79
85
63
76
93
65
78
66
129
78
131
54
50
74
79
66
50
63
62
74
76
75
121
166
78
57
64
39
136
74
72
96
110
114
66
51
74
91
55
102
92
106
67
57
134
73
68
99
62
125
100
52
49
66
40
90
55
73
56
94
57
39
121
53
68
61
87
36
76
39
86
74
85
90
85
83
63
91
128
53
45
61
34
68
60
65
70
68
71
63
143
61
76
75
73
59
81
105
77
107
61
92
80
114
64
113
91
46
37
77
66
101
40
57
206
44
71
56
66
98
62
58
71
97
63
88
118
47
74
116
80
39
97
75
72
110
76
101
69
56
121
72
126
46
67
107
67
127
63
104
97
52
28
64
68
66
57
46
86
85
71
67
73
67
91
66
79
51
59
65
36
76
81
69
63
133
30
83
87
86
101
111
59
103
58
46
64
89
78
53
72
82
115
70
81
90
89
122
66
84
112
42
61
92
108
40
59
30
85
51
74
39
70
78
54
94
83
67
72
90
92
103
85
61
76
44
59
41
57
84
113
90
43
133
81
60
78
81
52
74
94
94
89
63
66
75
68
35
74
112
59
58
68
71
103
75
85
32
168
45
48
99
77
60
89
75
63
53
58
95
78
86
81
37
116
87
82
28
59
95
93
127
106
94
130
101
83
54
56
93
144
94
126
55
73
90
45
118
82
69
148
57
170
109
84
64
83
76
53
93
105
42
70
36
57
71
70
128
113
53
119
52
97
73
80
51
79
62
88
114
90
69
39
134
83
45
70
67
91
78
106
108
87
95
82
71
65
60
91
53
88
92
92
53
69
85
109
84
129
44
60
81
58
49
94
50
56
112
90
111
59
54
52
93
75
48
97
51
85
56
74
78
29
93
74
74
89
76
71
55
115
61
75
88
60
84
74
100
85
116
65
67
76
99
66
74
94
130
80
76
78
86
63
69
54
73
90
93
71
103
56
98
108
79
129
41
62
101
44
64
57
89
89
115
61
59
131
74
61
60
53
112
77
84
65
68
73
98
68
78
55
99
118
91
40
84
54
145
66
70
82
94
49
79
144
52
77
110
75
81
55
63
113
91
81
131
94
53
89
84
106
89
39
41
77
51
61
90
35
60
74
127
103
88
106
76
54
76
83
85
138
92
60
49
38
68
64
60
69
66
60
61
55
63
52
97
85
77
70
45
67
74
80
38
69
111
81
50
71
86
70
107
78
57
129
63
66
51
120
119
89
51
69
115
103
88
119
94
108
52
101
59
50
60
52
84
64
89
66
64
42
138
95
152
74
28
123
97
103
58
90
83
86
88
99
65
75
150
99
78
59
56
75
97
34
76
86
66
96
58
93
69
91
67
151
77
35
78
25
64
44
43
73
60
125
59
120
74
84
65
147
57
55
103
83
104
62
85
52
126
70
56
50
34
89
51
96
62
66
76
84
53
52
93
89
60
71
73
114
65
180
81
47
76
99
72
56
55
113
52
83
76
65
79
76
94
72
64
46
63
78
93
71
72
58
76
73
72
46
51
88
77
53
61
63
100
125
72
61
61
78
86
78
86
51
73
61
69
82
124
172
68
54
95
106
90
99
119
135
67
88
62
53
87
102
79
76
40
82
86
104
79
88
102
50
81
70
91
72
40
101
80
85
81
61
88
55
52
88
51
124
78
41
85
93
61
63
82
49
38
32
76
49
67
107
48
81
86
75
53
90
60
103
54
87
32
98
56
90
61
62
76
85
63
41
74
103
111
91
66
86
97
116
91
74
101
139
55
120
56
70
81
86
88
47
51
66
73
45
61
69
140
70
112
52
95
104
79
52
73
89
73
68
116
90
57
94
83
81
74
69
107
88
89
76
77
57
69
74
85
92
107
41
83
67
80
43
99
39
71
97
60
70
99
49
115
71
97
39
57
62
49
45
48
64
56
76
93
101
80
75
59
62
60
71
74
102
64
59
120
75
106
68
109
71
50
97
77
71
125
53
97
74
89
79
44
55
73
85
56
65
69
38
71
114
103
90
28
77
59
66
123
45
42
56
93
81
102
90
102
53
92
186
110
116
69
81
122
111
110
111
74
62
87
62
76
27
74
58
76
115
59
91
63
78
84
96
102
86
74
98
57
75
63
79
112
104
44
54
34
125
70
70
51
80
82
203
107
54
107
69
75
86
49
96
72
88
83
81
100
106
64
45
53
37
108
68
77
72
105
134
51
82
98
60
51
90
80
89
151
63
80
72
77
69
119
66
99
85
101
50
114
83
79
113
71
75
109
92
75
110
70
71
55
114
42
83
52
73
88
59
90
76
58
105
44
88
57
42
50
53
22
60
77
148
93
78
57
49
39
41
55
34
92
40
42
104
104
102
76
56
67
76
84
71
134
61
157
50
92
125
105
44
198
51
45
48
39
67
89
53
125
66
101
46
43
106
38
55
86
48
97
69
67
105
55
65
111
65
68
38
86
102
72
76
101
83
78
66
117
55
60
109
90
98
42
104
85
60
102
57
69
56
45
85
90
65
81
100
112
60
50
106
105
58
51
66
50
47
64
47
68
65
102
70
113
87
65
108
61
98
86
92
97
52
54
90
86
70
80
94
50
62
36
54
67
93
61
85
102
88
122
50
70
71
98
48
73
123
99
89
75
99
50
58
74
106
83
132
102
42
76
44
65
84
83
95
60
68
64
104
51
102
85
75
104
34
50
73
67
81
62
80
35
111
46
38
177
72
71
75
114
65
70
52
62
43
63
68
43
93
81
82
51
66
59
147
96
90
68
66
55
79
123
126
91
56
84
81
75
91
72
123
57
42
80
68
85
84
91
84
60
82
40
70
62
74
68
81
77
74
98
76
76
80
75
63
59
86
83
47
98
84
54
76
88
68
40
71
145
103
69
113
86
85
85
79
125
122
107
107
55
75
62
126
71
98
60
100
70
66
69
53
74
106
75
83
61
97
83
100
60
133
86
74
108
85
117
75
91
66
66
69
54
84
118
49
98
120
52
109
55
107
29
101
82
83
95
73
82
73
68
96
81
81
75
73
45
96
33
76
96
44
116
69
58
54
113
36
72
46
56
60
121
69
86
72
100
59
98
94
121
94
65
90
79
93
105
34
61
67
41
107
56
70
105
73
103
87
102
92
89
103
52
49
76
65
61
59
110
99
68
66
86
98
55
73
62
41
41
61
110
58
67
104
109
94
78
94
56
82
69
122
76
45
69
68
70
40
60
78
64
108
67
75
107
94
36
93
42
96
50
101
60
118
105
56
67
74
61
64
141
109
101
85
104
51
77
73
44
87
90
108
69
73
44
76
72
77
99
101
53
86
79
54
85
79
72
69
31
66
125
37
44
89
79
51
64
24
110
122
58
80
97
70
76
80
55
78
98
74
78
122
62
77
82
70
79
118
95
57
50
96
61
60
115
50
116
95
71
71
65
80
68
71
81
120
59
54
72
74
103
95
75
80
95
68
76
75
64
93
43
52
75
44
80
152
64
79
62
48
118
82
108
61
86
77
72
80
57
51
60
64
91
60
62
89
89
115
61
55
56
94
78
95
44
42
71
77
47
62
48
91
113
45
58
94
74
38
51
154
110
50
130
91
74
59
64
62
66
97
101
50
76
96
103
73
73
64
93
53
55
105
88
82
59
102
62
110
110
66
57
58
75
50
55
74
113
62
74
49
69
111
87
116
76
56
93
61
65
65
104
65
54
44
56
50
46
93
66
72
86
53
86
84
69
53
81
97
47
56
42
72
71
58
106
97
114
63
76
94
51
78
90
61
84
37
69
59
84
49
76
111
53
53
112
105
57
60
59
94
76
50
29
77
63
70
65
40
55
80
97
103
105
83
60
61
129
66
92
63
44
73
98
111
126
138
89
49
66
93
66
50
90
59
67
32
74
120
56
75
93
59
80
49
87
105
103
109
43
94
110
102
56
86
84
150
67
92
93
50
64
135
69
42
70
64
124
51
155
156
75
94
128
83
111
103
64
30
46
46
74
106
86
121
66
59
115
45
99
65
73
27
58
53
104
45
136
97
83
76
46
101
91
72
89
62
61
77
48
61
113
52
70
86
53
67
55
93
42
59
59
90
98
110
61
42
76
72
46
66
72
82
70
79
60
109
101
50
114
78
62
108
75
108
95
83
97
82
48
38
66
40
97
47
63
120
57
73
98
61
81
57
75
51
61
82
46
71
72
58
81
90
93
102
61
93
101
39
109
64
108
79
76
84
95
81
73
53
78
56
66
120
109
75
100
74
112
60
60
93
53
86
76
67
36
96
85
90
68
62
65
105
85
56
48
74
35
133
65
90
63
70
57
78
60
139
65
97
68
106
49
50
139
102
101
87
60
120
117
36
75
102
30
74
113
62
121
74
99
54
73
131
49
91
68
32
67
25
84
74
117
84
133
52
88
99
78
76
97
142
89
92
49
98
58
105
55
150
63
67
88
30
46
68
64
88
74
77
61
104
51
100
49
69
110
105
82
69
100
74
79
94
58
114
50
81
51
81
133
145
84
104
128
71
106
97
87
75
90
104
116
51
66
71
49
38
75
68
70
64
70
99
34
68
67
67
73
77
81
65
47
130
93
53
76
109
70
70
70
130
92
72
54
108
60
103
82
99
96
97
61
43
158
91
79
90
83
61
98
68
59
83
94
88
41
119
139
79
70
81
87
71
115
57
56
82
106
93
51
112
172
88
64
101
69
132
89
86
88
63
89
53
64
43
59
100
92
82
81
108
59
41
43
47
46
60
32
143
65
77
100
86
59
115
44
103
52
68
67
77
76
68
53
145
101
71
48
71
99
75
46
102
93
51
84
71
102
45
111
59
82
69
49
63
124
64
100
97
85
129
86
62
59
66
107
84
62
117
177
68
71
97
137
105
64
66
55
102
114
137
82
34
74
95
55
118
63
91
104
65
55
39
122
77
100
110
61
94
52
46
78
42
32
69
149
60
52
96
69
107
114
122
62
73
81
129
66
73
82
116
81
102
87
54
65
62
87
84
50
64
57
99
107
106
58
68
125
141
58
102
131
90
71
48
77
71
40
76
80
51
89
104
85
50
104
101
77
66
128
168
61
99
31
90
72
75
66
62
34
92
48
68
124
26
109
115
79
86
69
71
70
60
66
70
85
73
109
79
45
57
110
67
52
71
84
130
40
66
66
53
94
104
79
95
144
87
44
52
64
89
81
65
65
97
55
68
100
62
60
87
106
98
64
100
41
66
69
69
68
59
133
55
113
66
85
44
67
118
47
124
46
71
60
26
59
119
74
47
67
99
81
40
73
68
52
88
66
65
86
61
69
53
83
69
67
83
67
103
88
88
43
74
69
79
53
89
87
129
47
57
50
65
105
81
61
54
67
83
82
89
92
60
77
75
146
88
43
49
135
78
50
81
49
93
85
83
52
81
89
116
145
41
120
62
73
47
94
67
50
84
89
75
85
56
101
65
95
80
162
93
59
59
56
43
68
103
78
49
71
51
35
74
72
100
90
107
90
70
94
101
134
54
83
52
111
46
92
124
45
40
86
124
44
100
73
45
144
122
65
94
43
72
56
85
111
77
29
66
92
68
63
98
77
39
106
105
96
72
94
57
99
83
54
94
93
38
141
56
91
89
91
83
101
77
61
83
145
57
83
45
67
48
92
105
75
130
99
78
114
95
59
61
117
62
56
92
70
83
68
103
65
83
55
66
51
65
65
77
52
69
65
66
36
53
52
74
56
41
79
28
60
79
62
133
114
56
54
139
84
90
65
76
68
79
36
46
67
56
72
65
95
90
111
93
87
56
97
83
77
68
107
58
94
54
65
86
83
71
88
57
39
36
71
68
86
139
65
74
115
67
36
102
80
66
66
78
47
54
103
86
66
88
76
33
69
73
90
63
60
99
95
67
53
44
46
64
90
73
60
92
74
103
69
63
102
99
127
105
88
102
43
89
81
62
82
60
75
69
75
83
115
60
87
105
61
53
82
63
81
62
65
49
127
33
34
88
69
115
95
56
136
89
96
70
96
92
49
100
116
55
78
57
50
57
52
90
87
119
53
65
90
88
96
66
92
86
66
31
36
77
89
89
105
79
55
112
57
121
107
76
83
79
108
79
82
100
86
74
96
105
73
104
99
79
104
62
43
88
46
98
71
43
55
46
84
63
93
53
83
80
82
38
53
78
57
90
84
125
73
58
74
116
122
95
104
72
32
92
68
53
92
66
41
83
90
74
90
107
77
46
126
60
96
60
53
68
69
52
57
58
40
57
71
60
116
58
111
90
88
68
68
121
125
83
76
66
86
47
107
70
56
44
90
106
85
59
41
78
105
78
94
37
72
86
76
69
84
76
71
56
112
56
108
65
68
124
99
43
101
121
52
68
63
113
117
112
92
57
86
76
60
84
52
59
108
97
129
87
72
92
82
32
106
45
77
81
107
65
97
70
91
77
52
98
88
112
74
41
106
54
62
77
66
86
94
78
71
102
67
109
74
48
62
67
75
77
86
113
86
83
47
51
63
103
76
94
75
43
57
79
56
85
57
51
76
94
111
111
67
78
87
57
78
53
60
98
50
101
77
56
64
146
102
85
76
75
62
56
71
122
85
93
33
71
65
119
50
92
108
77
68
95
115
73
66
24
82
35
110
83
86
77
82
91
79
50
124
60
71
92
74
114
65
73
122
59
100
39
81
32
56
66
53
65
57
67
64
97
93
61
94
98
93
172
80
80
62
84
90
96
103
77
117
100
100
110
93
68
63
80
77
81
94
62
66
48
62
76
79
72
69
92
76
61
61
69
70
70
95
75
41
87
45
59
87
95
110
61
108
44
102
60
66
39
64
78
87
47
115
63
183
93
83
90
49
54
54
93
48
50
61
98
46
72
116
89
171
47
59
34
66
80
94
83
109
87
86
37
93
102
65
83
118
33
63
109
119
100
87
31
55
73
57
73
75
32
83
76
58
39
50
53
85
96
114
103
55
59
56
66
90
74
67
40
143
102
47
88
66
54
143
94
57
86
76
96
80
87
93
106
48
97
42
120
84
82
121
62
53
71
104
119
103
82
60
73
56
74
50
50
91
66
65
46
58
85
75
56
59
76
81
62
72
81
86
69
73
57
143
95
83
86
46
98
62
56
57
96
42
77
70
81
93
86
85
79
84
97
59
60
74
90
73
72
74
70
60
66
75
47
83
116
162
47
86
69
98
59
58
85
95
84
104
106
68
63
70
71
59
86
90
126
76
72
95
98
72
69
74
39
57
101
91
80
93
73
67
83
77
65
87
69
76
75
74
136
91
105
63
73
63
103
105
47
107
103
88
95
101
49
100
75
70
83
90
43
68
47
54
41
102
69
77
94
95
110
68
106
94
89
104
134
122
42
62
88
45
64
48
81
64
104
66
112
78
66
45
65
69
74
57
66
67
74
71
72
87
54
57
67
59
84
102
155
42
33
41
35
60
65
107
52
77
42
46
139
84
108
101
52
94
79
81
49
62
88
101
82
57
100
62
102
98
73
77
84
124
50
102
96
70
74
113
41
74
50
51
84
140
109
44
61
115
61
159
71
71
106
57
75
69
56
64
78
28
78
36
42
98
57
80
120
106
56
39
30
48
74
83
53
77
54
57
64
39
55
65
76
79
94
78
128
87
57
53
94
71
94
102
81
92
47
65
94
50
29
117
102
68
61
109
103
108
96
111
88
80
53
59
99
85
114
125
110
64
78
89
68
99
74
90
51
100
41
46
47
77
87
54
58
66
38
68
75
40
76
48
71
90
52
72
82
67
124
114
109
107
63
53
90
64
52
36
59
71
107
69
65
29
78
50
99
58
125
84
67
86
100
85
53
31
111
53
102
93
54
181
43
80
95
105
64
60
54
44
93
91
93
54
62
76
54
94
85
72
112
85
56
110
62
113
94
63
72
63
84
75
62
61
57
85
68
85
67
106
56
77
58
51
52
45
69
73
86
49
34
54
78
59
113
56
110
81
44
104
70
102
143
99
107
70
133
99
104
59
115
50
84
77
109
81
68
110
60
140
74
84
113
130
64
47
125
97
85
93
75
99
80
60
53
47
106
77
81
112
56
72
72
83
85
118
92
91
69
74
75
84
68
91
76
133
76
123
94
74
76
112
72
63
38
56
93
66
80
118
69
68
63
97
54
63
65
63
112
82
74
91
45
57
72
55
69
72
110
77
82
75
87
90
95
73
57
56
64
98
136
80
88
85
66
57
92
43
55
80
98
83
86
46
53
81
48
92
54
83
139
49
43
45
60
71
42
89
37
88
77
97
65
69
58
89
59
63
78
51
38
148
70
46
44
93
73
53
73
54
90
72
69
54
95
92
115
78
62
49
82
99
74
31
70
98
58
55
42
107
99
78
75
84
108
92
78
35
113
76
104
44
53
34
83
44
137
44
46
113
67
90
90
60
55
140
86
107
67
99
95
68
93
130
70
102
92
80
66
62
40
98
76
78
117
81
61
47
74
63
74
60
73
113
47
100
95
34
79
56
62
104
114
80
83
58
77
38
97
41
77
71
101
39
52
46
66
53
115
95
85
83
119
101
80
59
108
57
44
98
53
88
73
76
96
73
38
94
32
80
73
77
79
79
91
46
90
50
66
69
79
59
93
64
43
117
39
93
77
109
52
57
56
50
34
84
90
74
78
100
56
65
85
53
47
94
88
99
91
55
100
101
43
64
105
109
63
53
72
83
45
31
64
80
65
56
84
120
76
45
69
73
83
92
86
68
92
43
83
108
63
82
52
96
76
95
84
83
145
85
57
111
57
91
101
82
78
62
39
68
55
124
99
66
69
86
99
69
38
114
73
57
106
90
65
67
55
88
47
49
36
66
74
82
66
57
76
45
39
51
60
40
98
100
87
49
104
69
67
54
64
56
96
57
47
84
93
66
52
45
100
89
92
80
117
65
56
60
90
90
98
91
96
89
128
109
85
23
50
68
70
49
76
73
80
75
49
97
78
106
48
158
88
69
109
88
63
116
56
39
86
73
75
107
80
89
46
47
92
36
114
54
100
69
97
65
105
37
81
41
90
36
71
62
78
62
68
100
69
157
88
77
56
91
29
67
94
67
59
74
113
122
54
138
50
57
70
101
141
90
75
103
49
42
45
44
64
92
39
114
75
56
110
63
75
56
125
61
96
64
66
55
41
96
32
92
106
67
59
71
65
71
93
91
61
69
59
104
53
115
90
51
64
66
77
128
92
56
57
66
123
73
79
81
82
41
77
89
49
41
69
53
85
72
95
64
74
94
66
58
151
27
54
112
54
59
88
88
131
69
95
107
92
67
54
77
103
53
47
79
64
59
69
76
59
141
81
108
39
76
97
97
76
99
79
96
41
66
67
53
118
76
79
113
71
114
57
70
124
67
105
55
69
106
104
57
125
83
47
88
119
50
59
53
106
75
97
61
45
56
83
74
106
64
79
74
56
90
49
94
74
79
80
94
102
68
39
64
78
74
104
66
116
58
55
47
32
87
77
89
44
70
70
51
76
145
92
104
65
77
74
51
71
82
76
99
109
108
77
79
91
99
51
94
51
89
99
72
98
60
56
138
58
49
40
78
112
76
75
102
72
82
133
81
80
96
46
45
111
63
86
38
57
110
97
101
44
75
52
82
66
92
54
85
84
89
94
44
117
123
88
37
53
72
106
99
38
85
48
71
79
80
102
83
56
52
74
84
68
114
58
64
59
68
45
100
68
70
104
71
108
53
136
86
122
51
98
120
107
90
53
65
74
47
54
72
95
86
42
100
88
89
125
90
76
76
91
56
47
53
86
93
103
114
70
86
40
60
72
163
49
103
92
92
104
67
55
64
68
68
117
77
84
95
76
90
59
139
73
80
46
110
130
81
100
65
81
80
131
67
156
95
60
51
75
60
57
98
88
102
74
80
69
74
46
68
31
123
91
77
102
75
61
59
87
86
111
89
50
111
70
69
59
74
53
56
64
67
61
79
83
84
105
49
97
42
77
134
93
57
33
68
82
102
122
116
54
30
88
83
59
59
101
94
74
62
69
46
34
51
63
118
135
186
82
54
53
51
80
67
91
89
44
105
82
76
106
69
66
89
78
75
89
104
86
84
111
110
100
60
79
112
75
79
67
62
124
125
78
74
85
122
96
87
63
137
33
73
125
74
98
126
68
125
89
72
43
99
131
76
34
57
105
104
70
98
48
57
63
105
50
60
110
78
63
74
84
52
145
44
64
35
51
37
51
120
140
65
46
126
106
70
46
81
52
61
55
69
91
82
92
53
70
27
53
73
81
95
58
91
116
82
69
76
97
59
18
82
49
76
70
65
124
84
83
64
41
44
122
53
55
59
66
65
95
87
106
77
54
42
102
108
89
48
69
53
83
114
73
52
83
51
89
65
95
76
46
89
133
101
82
54
110
51
31
91
123
60
54
116
103
68
58
100
60
36
56
57
62
45
67
70
71
119
87
53
93
71
67
52
124
84
70
80
88
102
52
62
29
85
140
92
58
83
51
50
44
102
57
59
65
55
42
110
47
115
120
44
52
75
86
56
114
61
68
92
81
38
56
51
76
122
66
71
102
66
67
51
60
76
84
85
74
113
81
72
106
73
95
70
63
107
69
29
70
80
79
119
57
70
68
64
62
80
96
32
131
59
75
114
40
78
25
105
78
48
64
52
74
108
80
90
131
88
60
64
74
80
79
39
55
78
61
88
118
60
75
41
67
54
129
99
120
66
55
152
33
83
59
95
61
82
52
65
65
50
101
54
40
105
70
144
90
111
77
80
87
91
73
86
84
66
100
49
130
49
60
55
59
53
88
74
66
36
66
86
72
126
53
46
71
37
71
36
62
56
89
93
65
71
49
71
80
75
105
79
56
74
77
56
86
108
54
103
70
85
30
78
74
128
87
82
91
59
65
67
73
68
62
37
73
