254
167
14
95
250
254
188
22
10
180
253
255
255
93
13
8
165
251
254
98
13
62
247
254
255
101
12
7
7
29
231
253
255
230
56
10
129
251
254
150
11
167
252
254
96
12
84
251
254
255
90
18
235
253
206
47
11
160
250
254
200
41
9
91
249
254
231
64
11
173
251
254
188
30
118
250
254
163
12
174
251
251
79
10
8
203
253
170
15
40
241
253
254
106
11
147
250
253
221
62
66
249
252
84
10
11
218
252
253
99
10
115
249
253
232
68
10
192
251
253
133
9
5
175
250
244
74
9
97
249
253
101
10
166
248
253
221
63
236
252
253
135
8
5
148
248
251
83
8
5
186
207
50
10
208
251
252
251
85
118
248
252
213
53
8
73
247
251
139
7
4
167
249
252
176
18
37
238
251
252
129
16
231
251
199
39
6
3
155
108
3
3
141
247
252
252
168
13
180
249
251
197
37
109
247
250
88
4
3
104
111
3
3
157
247
251
251
132
7
167
248
251
225
64
8
92
247
251
95
3
3
175
248
199
39
6
172
248
251
205
47
159
249
251
139
7
3
167
246
211
51
7
49
242
250
177
18
144
246
250
170
13
129
246
185
26
5
5
211
249
198
38
5
122
246
250
225
64
7
195
248
251
98
7
3
201
250
165
11
3
166
247
215
55
6
180
249
250
155
7
3
181
248
240
75
7
83
245
246
82
7
159
246
249
95
3
166
247
173
15
4
162
246
249
90
7
2
182
248
249
92
7
35
234
248
242
76
6
98
245
250
118
6
60
244
249
133
5
2
183
248
249
97
6
73
245
249
142
5
3
195
248
195
35
4
128
245
248
97
7
158
245
131
5
2
165
246
249
106
6
1
169
246
230
71
6
39
234
248
164
10
3
157
245
221
62
5
102
245
249
100
6
2
205
248
175
18
3
161
245
246
85
7
2
199
248
179
19
3
121
245
197
41
6
166
245
165
12
3
117
245
247
111
6
1
177
246
197
39
4
62
242
249
157
7
2
166
247
178
21
3
162
246
196
38
4
96
246
248
116
6
2
179
247
207
50
5
42
227
248
139
5
2
164
244
158
9
7
167
245
189
44
7
125
243
204
70
6
55
208
247
161
9
2
85
246
248
130
5
23
177
241
139
7
44
176
236
142
7
8
153
244
185
41
4
84
243
247
151
6
3
144
244
211
74
6
62
183
218
133
20
45
140
213
169
72
52
130
216
183
76
10
87
210
234
147
13
7
112
222
192
93
25
89
182
198
128
47
79
157
194
147
65
72
137
189
151
57
41
110
205
198
120
25
58
144
216
181
91
41
91
166
187
133
59
77
134
178
147
76
69
120
185
170
100
49
91
166
197
145
58
60
120
191
172
101
51
89
153
178
140
81
88
129
157
136
90
97
138
170
146
84
69
107
161
171
130
74
85
126
167
154
103
76
104
151
168
136
85
88
122
156
145
101
88
118
158
154
105
72
100
151
175
141
81
77
115
164
161
119
80
99
135
155
135
97
99
124
147
138
104
97
119
146
143
111
93
112
141
150
128
93
98
124
153
147
114
90
105
130
147
136
108
104
122
140
135
107
99
120
147
148
117
89
103
131
153
137
98
93
119
149
148
118
92
106
132
149
136
107
103
120
134
132
114
108
119
133
135
118
104
113
132
142
132
109
105
119
135
140
124
104
110
125
136
130
111
108
121
135
135
116
105
117
135
139
122
103
111
130
142
132
104
101
119
139
141
122
102
110
125
137
129
111
113
130
141
123
96
106
132
154
139
98
91
120
157
151
105
78
105
151
166
132
80
88
127
163
145
95
85
116
157
158
123
84
93
119
148
149
128
99
98
117
144
150
124
88
98
132
164
148
102
86
113
145
142
104
97
129
161
139
82
83
126
169
149
94
88
131
170
144
78
73
119
172
159
103
75
107
151
158
123
86
98
126
153
152
132
99
86
102
136
164
145
94
85
118
157
149
101
85
122
166
152
98
84
120
158
141
81
81
133
183
156
87
72
113
159
150
101
91
131
171
148
83
72
109
155
160
129
95
103
122
138
139
128
110
100
108
133
159
144
97
81
110
152
157
117
81
107
154
163
123
81
103
146
160
118
72
97
152
176
138
74
76
117
162
154
113
97
124
153
139
92
87
119
158
153
112
86
108
139
149
122
92
105
134
156
144
117
104
109
116
125
133
135
124
109
112
125
134
124
104
113
138
150
129
98
108
141
158
125
75
90
136
173
148
89
77
113
155
151
110
93
121
156
150
110
90
113
143
145
114
95
113
137
143
124
99
106
123
136
139
133
124
114
115
123
133
135
120
104
113
130
139
124
102
111
130
139
123
101
115
149
158
127
85
94
127
160
148
104
88
114
143
144
112
93
114
146
152
127
102
114
134
141
123
103
114
133
140
122
100
106
120
129
131
125
122
123
123
122
129
137
134
118
111
121
132
133
117
110
121
131
123
104
108
130
150
138
103
98
123
151
146
113
96
116
145
148
119
95
108
129
140
128
108
115
132
137
121
107
117
133
142
133
115
112
119
125
127
126
122
115
115
120
128
132
124
114
118
131
137
125
111
116
133
142
126
104
111
132
145
131
100
101
123
147
143
115
97
110
129
142
132
111
109
122
134
136
125
113
117
129
136
130
114
109
121
135
137
117
101
113
131
142
129
105
111
133
149
136
107
105
123
142
139
115
105
118
132
132
112
104
118
137
141
124
106
114
133
147
140
119
108
117
129
137
130
113
109
116
123
122
116
113
121
133
136
128
118
121
134
142
134
114
111
124
136
135
114
98
108
124
136
131
110
106
123
145
145
127
111
120
137
141
123
104
115
135
143
123
92
97
119
143
144
121
104
115
134
145
133
115
115
128
137
134
120
113
119
127
126
117
110
116
128
138
131
111
108
121
139
144
128
108
114
132
144
135
112
106
119
131
130
116
110
119
132
134
120
107
116
134
147
141
121
109
119
134
140
127
106
109
123
136
132
111
104
116
131
136
126
117
125
136
135
119
114
126
138
134
116
111
122
130
128
115
113
124
131
125
114
120
133
138
127
113
118
132
134
123
116
126
135
129
107
108
127
142
132
106
108
131
150
138
104
101
125
147
141
112
103
121
138
134
111
109
127
141
134
110
110
129
141
131
110
114
130
139
128
109
115
130
135
125
113
121
136
137
120
110
121
133
133
117
110
122
133
131
114
111
125
137
135
118
113
128
142
138
118
107
117
128
133
124
114
118
126
130
124
116
119
130
137
134
124
120
126
133
129
116
112
121
130
131
117
107
116
128
133
128
119
122
133
136
128
120
125
133
131
118
112
120
127
125
116
114
121
127
124
120
125
138
141
130
118
122
132
135
123
114
122
129
124
109
106
118
130
131
121
119
133
144
136
116
113
130
146
139
116
107
116
126
125
114
111
120
130
131
123
118
126
137
138
131
124
124
127
128
125
123
121
118
116
118
121
122
121
122
125
132
132
126
122
125
133
137
130
121
120
125
124
116
114
119
129
135
126
113
114
124
134
135
127
123
128
133
130
120
117
123
130
130
123
118
120
123
125
123
122
124
126
127
125
124
123
124
127
129
129
125
122
125
127
126
122
123
128
129
122
113
119
130
134
124
113
119
133
138
123
111
123
143
143
118
103
120
143
141
110
98
122
148
144
104
92
120
153
149
113
98
125
156
146
106
99
128
156
143
100
96
126
151
136
97
102
133
155
135
97
106
139
157
135
102
110
134
146
125
102
116
135
138
116
107
126
145
133
101
107
139
161
141
98
98
129
156
143
101
94
121
153
151
116
90
106
133
154
143
114
102
118
142
151
131
99
104
127
150
145
112
97
117
142
144
116
100
119
147
149
119
99
117
141
146
122
103
117
138
144
125
106
112
124
133
134
130
125
120
119
127
136
132
109
105
127
160
152
104
76
105
155
173
136
80
94
141
174
145
84
84
128
173
157
102
82
113
153
154
114
91
116
153
156
123
92
108
135
150
136
111
111
126
135
131
117
116
125
130
132
129
125
121
119
126
137
136
115
104
120
148
153
120
85
104
143
166
138
87
92
134
172
150
94
84
121
166
157
105
83
116
160
157
113
82
109
150
159
129
95
108
136
151
135
106
109
127
139
136
122
116
123
126
127
126
124
121
121
129
139
136
114
105
120
143
147
124
101
112
137
150
132
101
105
127
149
144
116
103
119
138
142
126
108
117
136
142
126
104
111
133
149
136
105
106
131
152
142
107
101
126
151
142
106
101
128
154
141
99
98
129
158
144
104
101
131
156
138
99
106
134
150
125
93
112
152
158
120
86
109
146
157
129
101
118
143
141
112
109
133
146
119
90
116
163
161
107
72
108
170
175
118
68
102
162
173
121
70
101
160
172
124
73
97
142
165
139
103
112
133
139
124
116
132
142
123
99
115
143
147
117
99
120
149
143
106
102
136
165
142
91
95
137
171
141
76
81
131
182
159
90
70
115
174
170
119
80
110
160
168
124
76
97
139
170
148
98
86
110
138
152
139
116
111
123
136
144
135
112
106
121
143
149
128
97
104
129
149
137
103
105
133
159
142
98
98
134
168
153
104
87
118
156
154
112
88
113
147
152
115
88
110
148
164
140
101
101
125
152
151
129
104
108
124
141
141
117
96
106
131
156
147
114
99
119
150
153
124
101
118
146
149
115
89
110
145
155
128
95
109
141
156
134
102
113
144
156
132
96
103
128
147
136
105
104
124
145
144
123
108
118
135
146
143
126
108
110
121
135
143
127
102
106
126
147
143
119
108
126
151
148
118
101
118
144
151
124
94
106
130
144
131
106
113
140
155
137
107
110
133
152
140
108
107
129
145
134
99
98
121
150
149
120
101
115
137
149
138
118
117
128
133
129
123
122
124
125
126
129
130
119
111
119
136
146
134
110
111
128
142
134
114
116
134
146
135
109
112
129
141
132
113
115
127
134
121
108
120
141
148
131
108
114
133
147
140
123
119
127
132
125
114
115
122
126
126
124
124
123
123
127
134
140
137
124
119
128
137
136
125
116
120
124
122
114
114
124
133
138
130
119
121
129
136
136
134
135
136
131
118
111
115
123
127
125
118
116
123
130
130
125
125
134
143
140
127
121
128
135
132
120
112
116
121
121
119
122
130
135
130
121
120
129
140
140
134
130
129
126
117
113
116
125
132
130
124
121
120
122
124
129
136
142
136
125
121
125
128
124
121
121
128
131
124
115
115
124
134
137
130
122
125
131
133
130
127
127
130
129
122
117
120
125
129
130
125
120
121
124
127
130
132
132
131
130
127
123
122
125
129
133
130
121
117
119
123
127
128
127
128
132
132
125
120
123
131
137
135
126
121
124
125
124
122
123
128
131
129
122
120
124
129
133
131
126
125
128
130
128
124
122
125
130
130
124
118
119
127
134
135
126
120
124
130
132
128
124
127
132
133
124
117
119
125
130
132
128
124
123
123
124
128
130
130
129
128
129
127
123
120
124
132
134
128
120
121
127
130
128
123
127
135
135
125
117
121
131
136
131
118
118
126
132
130
122
120
127
134
133
123
118
122
130
136
134
125
118
121
127
130
129
123
122
128
133
132
123
118
122
130
136
134
124
119
121
126
129
129
127
125
126
128
129
128
123
123
129
134
131
123
120
125
130
128
120
120
129
136
129
117
118
131
140
134
117
117
131
141
133
113
114
129
140
133
112
112
127
139
137
124
119
127
133
129
121
125
135
135
123
116
122
129
127
119
120
131
139
130
116
121
134
138
125
115
125
142
142
117
104
119
139
143
122
108
122
142
143
117
106
124
146
146
122
107
120
138
141
123
111
123
135
135
123
118
127
134
129
119
121
133
137
126
118
124
133
133
121
119
130
139
132
114
119
134
142
128
107
115
134
147
133
107
113
133
145
132
110
116
136
149
135
108
110
128
141
137
117
112
124
135
134
123
119
125
129
129
130
132
133
126
119
123
132
136
126
114
121
133
137
124
111
120
136
142
127
109
119
139
146
131
109
115
134
144
132
110
115
133
142
130
109
113
131
143
134
114
115
131
141
134
117
116
128
137
134
123
120
126
128
123
123
131
137
132
118
118
130
139
131
115
118
134
143
130
109
113
132
145
134
110
114
134
149
136
110
109
129
146
139
113
109
126
140
134
113
111
128
143
138
119
115
129
141
136
120
119
129
135
129
117
122
132
132
117
115
130
144
136
112
111
131
152
141
108
103
127
151
143
110
102
124
148
143
110
101
125
152
148
118
105
122
141
143
123
112
125
140
138
119
114
125
133
130
123
124
131
132
121
117
129
139
131
116
121
138
144
125
105
116
142
152
128
97
109
137
154
136
102
106
131
152
140
110
109
132
151
141
113
107
123
140
141
123
112
121
132
134
125
118
122
131
138
137
128
119
119
126
132
136
130
120
121
128
132
125
115
120
133
145
139
116
109
123
140
144
128
111
117
133
142
131
109
112
130
144
139
117
111
123
139
142
127
114
123
135
138
124
114
121
134
141
132
117
116
125
132
132
129
127
127
127
125
124
124
127
130
131
131
129
124
121
126
133
135
127
120
125
132
134
123
112
119
134
142
131
110
114
130
145
140
119
113
129
147
143
116
105
120
139
145
129
106
110
127
141
138
124
118
126
137
139
130
120
121
128
133
132
124
117
116
122
130
134
129
121
125
133
136
131
123
125
134
138
130
115
116
126
130
126
118
119
127
135
136
126
119
126
136
142
137
124
115
119
128
135
131
116
112
122
135
138
125
112
121
142
151
135
111
114
130
143
136
114
109
124
138
138
120
110
121
136
142
135
122
120
129
135
132
122
120
125
130
129
123
118
120
128
135
136
129
121
122
127
136
141
133
115
112
125
139
140
121
106
118
138
148
130
105
114
139
151
133
107
115
139
150
129
97
108
137
154
136
102
109
133
148
136
112
116
135
144
129
113
123
138
137
115
113
131
143
131
109
118
140
145
119
101
123
157
154
112
90
118
158
158
116
89
115
154
157
121
93
115
148
150
115
99
125
156
149
109
97
121
148
149
123
109
124
139
134
112
117
137
145
126
108
121
141
143
122
110
125
145
142
115
109
129
147
135
105
109
135
153
136
99
103
132
160
148
110
100
123
147
145
118
110
128
146
140
111
104
122
144
147
127
109
117
131
138
134
125
123
126
129
132
133
129
121
118
125
135
139
128
113
117
131
137
128
115
123
138
143
127
108
118
140
151
135
106
109
128
143
137
116
114
127
138
132
114
115
131
145
140
122
117
127
135
132
122
120
126
132
133
129
122
120
122
125
133
140
137
123
115
124
135
137
127
118
124
135
136
122
110
119
135
142
130
111
116
131
142
136
118
115
128
140
140
127
116
123
132
135
127
119
122
127
129
128
125
126
129
131
128
123
124
130
135
137
133
125
119
119
126
133
132
124
120
125
132
132
123
116
124
137
143
133
117
119
131
137
130
117
118
129
138
134
118
112
121
134
138
133
124
123
128
131
133
131
127
126
127
129
128
125
124
125
127
128
127
123
123
129
134
132
125
124
131
134
129
121
121
127
133
133
124
119
123
129
130
124
122
128
137
138
128
119
121
130
138
137
126
118
123
131
133
128
120
119
126
132
134
127
119
122
131
136
132
125
123
128
131
131
126
123
126
130
129
124
120
124
129
131
130
126
126
128
129
130
128
128
129
130
128
124
122
125
128
130
129
126
123
125
132
135
131
123
123
131
137
134
122
114
120
131
136
129
117
119
129
136
133
123
121
129
137
136
127
120
125
132
132
124
119
124
129
129
126
124
127
130
131
129
127
129
131
130
127
126
129
130
126
121
122
125
127
126
127
129
129
125
124
127
133
137
132
123
122
130
136
130
118
118
128
135
132
120
117
125
134
136
128
120
125
134
136
129
122
125
131
131
127
123
124
125
125
126
128
129
128
125
123
128
135
137
130
123
126
131
131
125
123
128
131
126
120
121
128
132
129
121
123
133
142
135
119
118
131
141
134
118
117
128
135
130
116
115
126
136
135
122
119
129
138
136
125
124
133
135
126
118
125
133
133
121
115
123
133
134
125
119
127
138
138
125
121
130
137
131
119
122
131
134
123
113
121
133
138
126
114
122
138
142
128
115
125
141
142
123
111
122
134
136
123
116
125
135
134
121
117
128
138
135
122
121
133
141
131
115
119
132
138
129
117
122
132
134
125
117
124
134
135
124
118
129
139
135
119
118
132
142
134
115
116
131
140
132
115
116
130
141
133
115
116
132
143
134
116
119
133
140
130
117
122
133
136
126
116
122
134
137
126
116
123
135
137
126
118
127
136
133
122
120
129
136
130
120
122
132
137
129
117
121
132
139
130
117
121
133
137
127
117
123
135
138
128
118
122
131
134
129
122
124
130
131
125
121
126
131
130
125
126
131
134
129
124
125
130
130
127
127
128
129
126
121
123
128
132
129
121
122
131
137
132
122
122
130
135
132
124
121
126
132
133
126
118
121
128
133
133
127
124
127
132
134
131
125
123
127
133
134
128
122
121
124
126
128
128
127
125
126
129
131
129
126
127
131
135
133
124
120
125
132
133
125
118
123
132
134
125
119
125
134
138
131
123
125
131
134
128
122
124
129
132
127
122
124
127
128
128
129
130
127
125
128
134
134
126
119
123
133
137
129
117
120
132
139
132
114
116
131
143
137
119
116
128
138
136
120
116
125
136
137
126
117
122
130
134
130
126
126
129
130
129
129
127
125
124
128
131
130
124
122
126
131
131
125
122
127
136
138
128
118
122
132
136
128
118
121
130
135
130
120
120
128
136
136
126
121
128
135
135
124
118
123
130
134
130
121
120
126
133
134
128
122
125
131
135
131
123
123
128
132
129
123
121
126
133
135
128
121
124
131
135
131
125
124
127
130
129
125
123
125
130
132
128
123
124
129
132
130
126
125
128
132
131
124
120
124
132
134
129
121
124
133
135
128
119
123
132
137
132
120
118
128
135
133
121
118
126
135
135
127
122
126
130
131
127
125
127
129
130
128
126
125
127
128
127
128
129
131
129
127
127
126
126
129
131
130
123
123
129
134
130
121
120
128
135
135
124
116
122
132
138
132
120
120
128
134
135
130
125
124
125
129
133
131
122
117
125
134
137
128
118
121
131
138
135
123
121
129
134
131
124
125
129
126
120
123
132
136
127
117
124
138
143
127
111
120
140
148
132
107
113
131
143
134
113
116
131
139
130
116
123
137
140
128
116
124
137
139
126
114
122
133
135
125
120
127
134
129
120
125
136
138
125
115
125
139
140
124
113
124
139
140
119
107
123
145
146
121
102
118
143
151
133
107
114
134
149
142
117
111
125
138
136
118
113
125
137
137
123
115
125
137
141
132
120
121
130
137
134
124
120
123
126
127
127
126
125
124
129
134
133
125
122
129
138
136
122
117
127
140
141
122
105
116
137
147
133
108
112
132
148
139
113
111
129
146
143
122
112
124
140
142
124
110
118
132
138
132
119
117
125
132
137
133
124
122
129
139
140
129
118
119
128
134
131
119
116
125
135
133
119
115
126
141
143
130
118
124
136
142
132
116
116
127
137
135
120
113
121
132
136
131
121
121
130
139
139
129
119
124
133
137
128
116
118
126
134
134
123
116
122
133
138
133
123
124
133
137
132
123
122
128
132
129
122
119
124
130
133
127
122
125
132
136
132
125
123
126
132
134
130
122
120
125
130
132
127
121
124
129
135
134
126
122
128
136
136
126
118
124
133
136
127
117
120
128
134
132
123
121
128
134
133
124
123
129
134
131
124
124
128
131
129
125
123
126
130
131
129
127
127
128
128
129
130
130
126
125
127
130
129
125
123
127
129
128
126
125
129
132
131
125
123
127
133
133
127
123
126
131
129
125
124
128
131
131
127
124
125
128
130
129
125
126
129
130
129
126
126
127
129
132
133
129
124
125
128
130
128
123
124
126
128
128
126
125
128
132
133
127
125
128
134
134
129
125
125
127
128
126
124
124
126
129
130
127
125
127
131
132
132
129
128
128
131
131
128
122
122
128
130
128
123
121
125
129
132
130
126
126
130
134
132
127
126
129
132
130
126
124
125
127
127
125
123
126
130
132
128
125
127
132
133
129
125
127
131
132
128
122
122
127
131
130
123
121
126
132
133
129
126
126
129
132
131
129
126
127
129
128
127
126
126
125
127
130
131
128
124
125
129
130
128
127
128
130
130
128
125
125
128
130
129
126
127
130
129
126
124
128
132
132
128
124
125
129
131
130
126
123
127
131
130
126
125
128
129
130
128
127
127
127
129
129
128
127
127
126
125
126
128
129
128
128
129
129
128
126
128
131
131
130
127
126
127
128
128
125
125
129
131
127
123
125
130
133
131
126
125
128
131
130
125
123
128
133
130
124
122
126
130
130
127
127
129
131
129
127
127
129
131
130
126
124
126
129
127
125
127
129
129
127
126
128
129
129
129
129
129
130
129
127
126
128
130
127
124
125
128
130
127
126
127
129
131
129
126
126
129
132
130
126
125
128
129
127
125
127
129
129
128
128
128
128
127
128
129
130
130
128
126
126
128
129
127
126
129
130
127
124
126
130
131
129
126
127
130
131
128
124
125
130
132
128
123
125
130
131
127
124
127
131
130
127
126
128
131
130
126
125
129
130
127
123
126
132
133
126
120
125
132
134
129
124
126
131
132
127
122
125
132
133
127
121
125
130
130
127
125
128
130
130
128
125
127
130
130
128
127
129
129
126
124
126
130
130
127
126
128
129
128
127
126
129
132
131
127
124
128
132
131
127
126
128
129
128
126
125
126
128
129
128
125
125
128
130
130
129
129
129
129
130
129
126
125
128
130
129
124
123
126
128
129
129
126
128
131
133
130
125
127
131
134
129
123
124
126
128
128
124
124
127
130
129
125
126
130
133
132
128
128
129
127
125
126
129
130
129
125
123
125
128
128
125
127
131
134
129
124
126
130
132
129
125
127
130
132
127
120
123
129
133
128
122
124
130
132
129
125
126
130
133
131
126
126
130
132
128
125
125
127
127
126
127
127
129
129
128
128
127
128
131
132
131
128
127
127
128
129
126
123
124
129
131
129
123
123
128
132
133
130
126
128
131
132
127
123
127
130
130
126
125
126
126
127
127
128
129
130
130
128
128
130
130
128
127
129
130
127
125
126
128
127
125
124
126
129
131
128
125
127
132
134
130
124
126
132
133
129
123
122
128
130
129
122
122
129
133
132
124
122
128
133
134
129
125
127
131
132
126
121
124
130
132
129
125
124
127
129
131
128
124
125
130
133
132
127
123
124
128
133
131
125
123
129
134
132
124
121
125
132
134
129
123
124
130
134
130
123
123
129
133
133
129
125
124
127
130
130
125
123
126
131
134
131
121
120
129
139
136
119
115
128
142
142
121
108
119
137
147
133
111
115
132
144
136
116
113
126
139
139
127
116
121
131
137
134
126
123
125
129
135
135
126
116
120
131
139
134
118
114
124
137
142
128
116
123
136
140
127
116
124
136
140
126
112
119
134
142
131
112
116
133
145
138
118
113
126
141
142
126
112
120
134
140
129
113
117
129
140
138
123
115
123
135
141
134
122
119
126
133
136
133
120
116
122
132
137
130
120
121
131
139
135
121
119
131
141
135
115
115
129
139
134
115
112
127
142
140
120
113
129
144
142
121
114
128
141
139
120
112
124
136
139
126
115
122
131
134
131
128
129
126
124
127
134
137
128
116
120
132
140
133
114
116
131
141
133
115
116
131
141
136
119
117
131
141
137
120
117
130
138
133
119
118
129
135
132
119
119
131
140
136
120
118
129
139
138
125
117
122
129
132
129
123
122
126
129
129
131
131
129
126
127
134
136
132
122
120
127
134
132
120
116
125
135
135
123
118
128
140
141
128
117
124
136
139
127
115
122
131
132
122
117
123
133
136
129
122
127
138
140
130
120
124
132
134
130
124
122
123
124
126
128
129
128
125
126
132
138
134
123
122
131
137
134
123
119
126
132
131
121
117
126
135
135
125
121
126
135
136
130
124
125
131
133
128
124
126
130
128
123
123
126
130
132
130
126
124
127
130
131
130
128
126
126
130
133
130
122
120
126
133
135
130
122
123
129
134
130
123
125
131
134
129
120
121
127
134
134
127
122
125
131
133
128
126
127
130
130
128
125
124
127
130
128
126
126
128
131
130
128
126
127
131
133
129
123
122
126
131
131
128
123
123
128
131
130
127
128
131
132
130
126
125
127
130
131
127
123
124
128
129
128
125
126
129
133
134
129
124
126
130
131
128
126
126
127
127
127
124
124
128
133
133
127
124
127
131
135
133
127
122
125
130
130
126
123
124
127
130
130
126
124
128
133
133
129
125
127
130
132
129
123
124
128
130
128
123
123
127
130
132
132
128
127
128
130
129
128
129
129
128
127
124
123
125
128
130
128
126
127
129
131
132
130
126
127
131
132
129
125
125
127
128
127
125
126
127
130
129
127
127
130
132
130
128
127
127
128
130
129
127
125
125
126
127
129
128
126
126
129
131
128
126
127
129
130
129
127
126
129
131
128
124
125
129
131
128
126
125
128
129
128
127
127
131
131
128
125
127
132
131
128
125
127
129
129
128
125
126
129
129
127
127
128
129
128
127
128
129
129
128
128
128
129
129
126
125
129
132
128
124
125
129
132
129
125
124
128
132
132
127
124
128
131
129
125
125
128
132
131
126
123
126
130
131
127
126
128
130
129
128
127
127
127
128
129
128
128
127
127
128
130
129
126
126
129
131
130
126
125
127
130
130
126
123
126
131
132
128
126
127
129
131
129
126
127
130
131
127
123
125
128
129
128
127
127
128
130
129
127
127
130
131
129
127
128
128
127
126
126
127
130
129
127
126
128
130
129
127
128
131
131
128
125
125
127
130
129
125
124
128
131
129
125
125
129
132
131
127
125
129
132
130
124
124
129
131
129
125
125
129
131
130
126
125
129
131
128
125
127
131
130
127
125
127
129
130
127
126
128
132
130
124
124
129
132
130
125
124
128
131
130
124
123
130
134
132
125
125
130
131
129
125
126
131
132
128
122
124
130
131
126
124
127
131
131
128
125
128
132
131
127
125
128
131
129
123
124
128
130
128
124
124
129
133
131
125
125
131
133
130
124
125
130
132
130
125
123
127
130
128
125
126
129
130
129
128
127
129
130
129
127
128
130
129
126
125
128
129
128
126
126
129
130
129
125
125
130
133
131
125
124
129
131
130
125
124
128
133
132
125
122
127
131
130
126
125
128
131
131
127
124
127
130
131
128
128
128
128
127
128
130
129
127
125
126
130
130
127
123
125
132
133
127
122
126
133
135
130
123
124
132
135
128
120
123
131
135
130
122
121
127
133
133
127
124
127
132
132
128
125
125
128
132
132
127
121
122
127
132
133
126
121
124
133
138
131
121
123
131
137
133
122
119
126
134
132
123
120
126
133
132
126
122
126
133
136
130
123
125
130
133
130
125
123
125
129
131
128
125
125
129
132
131
127
123
126
133
136
130
119
120
129
135
133
122
118
125
136
138
128
118
122
132
137
133
123
120
127
134
132
123
120
126
132
134
129
122
124
130
136
134
126
123
127
131
132
129
125
124
127
130
128
125
125
128
131
131
128
125
126
131
134
129
123
123
129
133
131
123
119
125
134
135
126
119
126
136
137
126
116
123
137
142
130
112
117
133
143
135
115
114
129
141
139
120
113
126
139
140
126
116
122
131
136
132
124
122
126
129
130
131
129
123
120
128
138
137
122
113
123
139
143
127
110
120
141
146
126
105
119
143
150
128
102
114
141
153
131
100
112
140
155
135
103
110
135
154
140
108
108
130
149
141
115
112
125
137
136
125
121
126
130
127
126
133
136
126
115
125
142
143
123
108
121
143
147
123
102
118
145
151
125
99
116
145
156
131
101
113
140
156
135
101
110
135
152
137
106
109
130
148
140
113
111
129
146
142
122
115
125
136
138
128
119
123
129
130
128
127
128
125
124
129
136
134
123
119
127
138
139
123
110
121
138
144
127
108
118
136
147
135
111
114
132
148
141
116
112
127
140
139
121
114
124
137
139
125
115
122
134
138
131
123
123
129
133
133
127
123
125
129
132
130
125
121
123
131
134
130
121
121
131
137
135
123
118
128
140
140
124
114
123
134
138
129
116
118
129
138
134
120
118
127
136
137
128
120
124
133
137
131
119
120
128
133
132
124
120
125
131
133
128
123
126
133
136
131
125
124
129
133
131
125
122
126
131
131
126
122
123
130
135
133
125
122
127
133
134
129
124
124
129
133
130
123
122
127
131
131
127
123
125
130
133
132
125
125
129
131
131
128
124
125
130
132
127
121
123
129
132
130
125
123
129
135
134
124
121
128
135
135
127
120
124
130
133
129
121
123
129
133
131
127
127
129
132
132
129
126
126
128
129
129
128
124
122
124
129
131
128
124
126
131
135
132
124
123
131
137
134
123
120
126
131
131
124
120
125
132
133
127
121
126
132
135
132
127
127
130
133
130
125
125
128
128
126
125
126
127
127
127
128
128
128
128
129
131
133
131
126
126
130
131
127
123
123
128
132
129
122
120
128
135
134
126
123
129
135
134
127
121
126
132
133
126
121
124
129
130
127
124
126
131
132
129
126
127
131
131
128
127
128
128
126
126
128
128
127
126
126
130
131
129
123
125
131
134
130
124
124
130
134
131
123
121
129
135
133
124
121
127
132
132
126
122
126
132
133
127
123
126
131
131
127
125
127
131
131
128
126
127
129
128
125
127
129
130
128
127
128
129
128
126
125
130
134
132
125
123
129
132
129
122
123
129
135
133
123
120
127
135
134
124
122
128
134
133
125
122
125
132
132
126
124
127
131
130
126
126
129
130
128
125
126
129
130
127
124
126
130
130
126
126
129
132
131
127
125
127
131
130
125
124
128
131
128
123
124
128
132
131
126
125
129
135
132
124
123
128
133
131
126
123
125
129
130
127
125
127
130
129
127
127
129
130
129
128
128
129
130
128
126
126
129
129
126
126
127
129
129
127
127
127
130
130
128
126
128
130
129
127
127
129
129
128
125
126
129
131
128
124
126
130
131
129
126
126
128
130
129
126
126
128
130
127
126
127
130
129
127
127
127
129
129
128
126
127
130
130
127
126
128
130
129
128
127
127
129
130
128
126
127
129
128
127
128
129
128
126
127
128
130
130
127
125
126
129
130
127
126
127
129
129
128
127
126
129
131
129
127
127
129
129
128
128
127
128
128
128
127
127
128
129
128
128
129
129
127
126
127
129
129
129
128
127
127
128
127
127
128
130
129
127
126
127
129
130
128
127
126
129
131
128
125
126
129
130
128
126
125
127
130
130
127
126
129
130
129
127
127
128
128
129
128
127
127
126
127
127
129
130
128
126
127
130
130
128
127
128
130
130
127
125
126
130
131
127
125
127
129
129
126
125
127
131
132
127
123
126
130
130
128
126
128
129
128
127
126
127
129
129
128
128
129
128
126
127
130
131
129
126
126
128
130
129
125
125
129
132
129
124
125
129
131
130
127
126
128
130
129
125
126
129
131
128
125
126
129
129
128
126
126
130
131
128
125
127
131
131
127
126
127
130
129
126
124
126
131
131
125
123
127
131
131
127
126
128
132
132
128
124
127
131
131
126
124
127
129
128
126
125
127
130
129
128
127
130
131
128
125
128
132
131
126
123
126
130
132
126
122
125
132
133
126
122
127
135
136
128
121
124
132
134
127
120
125
132
132
127
122
126
131
132
129
125
128
132
132
127
124
128
131
128
124
125
128
129
126
124
127
132
133
125
121
128
136
136
125
120
127
134
134
123
118
125
134
135
124
117
125
135
136
127
120
126
134
135
128
120
125
132
133
126
122
127
132
130
125
124
129
133
131
125
124
129
132
128
123
126
132
132
126
123
127
132
133
127
121
126
133
133
125
120
126
133
132
125
122
127
133
134
128
122
126
133
134
127
122
126
129
130
127
125
126
128
129
127
127
129
131
129
126
128
131
130
126
124
127
131
131
126
120
124
132
135
130
122
124
131
136
134
124
121
127
134
135
126
119
123
130
133
130
124
122
127
133
133
129
124
125
129
132
133
129
123
123
128
132
131
127
121
122
128
133
132
124
123
130
137
135
126
121
127
135
136
125
116
122
132
135
125
115
121
131
139
134
122
121
133
143
138
121
117
128
137
137
121
111
118
130
139
133
118
118
128
141
142
131
119
121
133
141
136
120
115
122
131
134
125
116
120
132
141
136
122
119
129
139
139
128
118
123
132
136
128
116
118
128
134
133
125
122
128
136
137
127
118
125
135
140
131
115
117
127
138
137
120
113
124
139
142
129
114
119
133
143
136
118
116
128
138
136
121
116
124
134
138
130
118
121
130
137
133
123
121
126
133
134
129
122
124
131
134
129
123
124
131
135
133
124
119
125
133
135
125
117
122
133
139
133
120
117
127
138
139
128
118
124
134
137
129
118
119
128
136
135
122
117
124
133
137
131
123
123
130
137
135
125
121
126
132
133
127
121
123
129
133
129
122
123
131
136
133
123
122
128
136
137
126
117
122
132
137
130
120
120
128
135
134
124
119
126
136
138
130
120
122
129
134
134
126
121
124
131
134
129
122
123
127
132
134
128
121
123
130
134
130
124
125
129
134
132
125
123
127
134
134
125
121
125
131
132
127
122
124
130
134
130
124
125
131
134
130
124
124
127
131
131
126
122
124
129
131
129
126
125
128
132
134
132
126
124
129
131
131
127
122
125
128
130
127
123
124
129
133
131
127
127
129
132
132
128
125
126
129
129
126
125
126
126
126
127
127
128
129
130
130
129
129
130
130
129
127
127
126
127
129
127
124
123
126
129
130
129
127
126
130
133
132
128
126
130
132
130
126
124
124
127
129
128
124
123
127
130
131
130
127
128
130
132
132
128
126
128
129
128
126
126
125
126
127
127
127
129
130
130
127
128
130
131
130
128
128
128
127
127
126
126
127
127
127
128
129
129
128
128
131
131
129
126
127
129
130
129
126
123
126
130
130
126
124
127
131
131
130
127
126
128
130
129
127
127
128
128
127
127
127
128
128
129
130
129
127
128
129
130
129
127
126
126
129
129
126
125
126
130
129
127
127
128
130
132
129
125
126
130
131
128
124
125
128
130
129
126
124
126
130
132
130
128
128
129
130
129
129
127
126
128
129
128
125
124
126
127
130
129
125
125
129
133
132
127
126
128
131
131
127
124
125
129
131
126
123
125
130
131
128
126
127
130
133
131
125
125
129
131
129
126
126
126
127
128
128
127
127
128
130
129
128
128
127
128
130
132
129
124
126
130
132
128
124
124
128
132
130
124
122
127
131
131
126
125
128
131
131
129
126
127
130
131
128
125
127
129
128
127
126
127
127
128
128
128
128
128
128
128
128
129
129
127
128
131
130
127
125
127
129
129
127
125
126
130
131
127
124
125
130
133
131
127
126
129
131
131
127
124
127
130
130
125
124
126
128
128
128
127
127
130
131
129
128
129
130
129
128
128
128
128
126
127
127
127
126
127
127
128
130
129
128
128
131
131
128
126
128
131
131
127
124
124
128
130
128
124
125
130
132
129
126
126
130
132
131
127
125
128
131
130
125
124
127
129
129
127
126
127
129
130
128
126
127
129
130
128
127
127
127
129
129
128
127
127
130
130
129
128
127
127
127
129
129
127
126
127
129
129
127
125
126
128
131
130
126
125
129
132
131
126
124
127
130
131
128
125
126
130
132
128
125
126
129
131
129
127
126
128
130
130
127
125
127
130
130
128
127
127
128
129
129
127
126
127
129
129
127
127
127
128
130
130
128
126
128
131
131
128
126
127
128
129
129
126
125
126
129
129
127
126
127
128
130
131
129
128
128
130
130
127
125
127
128
129
127
125
125
128
130
129
126
127
130
132
131
128
127
129
131
130
125
124
126
128
128
125
125
127
129
130
129
129
129
131
131
130
128
128
129
127
125
126
128
127
124
125
127
130
130
128
127
129
133
133
128
126
129
132
129
123
124
127
129
128
124
124
128
132
131
124
124
131
135
132
124
124
130
133
130
123
122
128
133
130
122
122
129
134
130
124
125
131
134
130
124
125
131
134
128
122
125
131
131
125
123
127
131
131
126
124
128
133
132
126
124
129
134
130
123
124
130
133
128
122
123
130
133
129
122
124
132
136
129
122
124
132
135
129
122
124
130
132
128
123
124
130
133
128
124
126
130
131
128
126
127
129
128
127
126
127
129
128
127
127
130
130
127
126
128
131
130
127
126
127
130
130
126
124
127
132
132
126
124
128
132
131
127
125
126
129
131
128
125
127
130
130
126
125
128
130
129
127
126
128
129
129
127
125
128
131
128
126
127
130
131
129
126
126
128
131
130
126
124
127
131
129
126
125
128
129
129
129
128
128
129
130
129
128
128
128
127
127
129
129
126
125
126
130
132
129
125
124
129
134
132
125
122
127
133
132
125
121
125
132
134
129
121
123
132
136
131
122
123
130
135
131
124
121
126
132
132
127
123
125
130
131
130
127
125
128
131
134
130
123
123
127
133
134
126
118
121
132
139
132
118
118
130
139
136
123
117
125
136
138
126
116
122
133
137
130
120
121
129
136
134
125
120
125
134
136
131
122
121
127
133
135
128
120
123
130
135
131
122
122
129
136
135
124
118
125
135
138
127
116
121
131
137
132
120
117
127
138
139
126
117
125
135
139
130
119
120
129
137
132
120
118
127
136
135
125
119
125
134
138
133
122
121
129
134
133
124
120
123
129
133
131
123
121
127
134
135
128
121
125
133
137
132
119
119
128
137
135
121
117
125
135
137
128
119
123
134
139
131
120
122
131
137
132
122
120
126
133
134
126
119
123
130
135
132
124
122
126
134
137
130
121
122
130
136
132
123
119
126
133
134
126
119
124
133
138
132
122
122
130
136
135
125
119
124
132
134
127
119
122
129
133
131
125
123
128
134
135
129
123
127
132
134
129
122
122
126
132
132
124
121
125
132
134
130
125
124
130
135
134
126
121
126
132
133
126
120
122
129
133
131
123
121
128
136
135
127
122
126
133
135
131
122
122
128
132
130
123
122
127
131
131
127
123
126
131
135
131
124
124
129
133
132
126
123
125
130
133
129
122
122
128
132
131
126
124
127
132
134
129
123
125
130
134
129
124
123
127
132
132
127
123
125
131
133
130
125
125
130
133
131
126
123
126
131
132
127
122
125
130
132
129
124
124
129
133
133
127
123
127
132
132
128
124
125
128
130
130
125
124
128
131
132
128
125
126
129
132
131
126
123
127
131
130
125
123
125
130
132
130
125
125
129
134
132
126
125
128
131
131
127
124
124
128
131
129
125
124
128
131
132
130
126
126
130
132
130
124
124
128
130
130
126
123
125
129
132
130
125
125
130
133
131
126
126
128
130
130
127
124
126
128
129
128
125
126
127
129
130
129
127
126
130
132
130
127
126
128
130
131
128
124
124
129
131
128
124
125
129
132
130
127
125
128
132
132
127
124
127
131
130
126
125
125
128
129
129
126
126
129
131
130
128
128
128
129
130
130
127
125
126
129
129
127
125
126
128
129
130
128
126
128
132
132
128
125
127
129
131
129
125
123
127
131
129
125
124
127
132
132
128
125
126
131
132
129
125
125
130
131
128
125
125
128
130
130
128
125
127
130
131
129
127
127
129
129
129
128
126
126
128
129
128
126
126
127
129
131
129
125
125
130
132
129
125
125
128
131
131
127
124
126
131
132
128
125
126
130
130
128
126
126
128
130
130
126
126
128
130
129
127
128
128
129
130
130
128
126
127
129
129
127
126
126
128
129
130
127
125
129
131
131
127
126
128
130
130
128
125
125
128
130
128
126
126
129
130
129
128
128
128
128
129
129
127
128
128
128
128
128
128
126
127
130
130
127
126
127
130
129
128
126
126
129
130
129
125
126
129
130
128
125
127
130
130
129
126
126
129
131
129
126
126
129
130
127
126
127
129
129
128
127
128
129
130
127
126
128
131
129
126
127
130
130
128
126
127
129
130
129
125
126
129
130
127
125
126
129
130
128
126
127
130
131
128
126
127
130
131
127
125
127
129
128
126
126
127
129
130
128
127
129
131
130
127
127
129
130
127
125
126
127
128
127
127
127
128
130
128
128
129
131
131
128
127
128
128
128
127
126
126
127
129
127
126
128
130
130
128
128
130
130
130
129
128
127
128
128
127
125
127
128
127
126
127
129
129
128
128
129
129
131
130
128
127
128
129
127
125
126
127
128
127
126
126
128
130
130
127
127
130
132
129
126
127
129
129
127
126
126
127
129
128
127
127
129
130
128
128
129
129
128
128
128
128
129
128
127
126
128
130
128
126
127
129
131
128
127
127
128
130
129
126
126
128
130
128
125
126
129
130
128
126
126
128
130
129
127
126
129
130
129
127
127
129
128
129
129
128
128
126
127
128
128
129
127
126
128
130
130
127
125
128
131
131
128
125
126
129
131
129
125
125
128
130
128
126
127
130
130
130
127
126
128
130
130
127
126
128
128
128
127
127
127
127
129
130
128
127
127
128
129
130
129
127
126
129
130
128
125
125
128
131
129
126
124
127
131
132
128
124
127
132
131
128
126
127
130
131
128
125
125
129
129
127
125
127
129
129
129
128
128
129
130
130
129
128
127
127
127
128
129
126
125
126
129
129
127
126
127
130
133
131
126
125
129
133
130
124
123
127
131
129
125
124
126
130
130
127
126
129
132
131
128
128
129
130
128
126
126
127
128
128
126
126
129
129
127
127
130
132
129
126
128
131
131
127
124
125
129
131
127
121
123
130
133
129
125
126
130
134
131
126
125
129
132
129
125
125
128
128
125
125
128
129
128
126
127
130
133
131
126
125
130
134
130
124
124
128
131
128
125
124
127
130
129
125
126
130
133
129
126
127
130
131
128
126
127
128
129
127
124
126
130
129
127
126
128
130
130
128
127
128
131
130
128
126
128
131
128
125
125
128
131
129
126
125
127
131
132
128
125
126
131
131
128
126
126
128
129
128
126
126
128
130
129
127
128
129
129
128
128
129
128
127
127
127
129
129
127
125
127
131
131
127
125
128
131
131
128
126
127
130
130
127
125
127
131
131
126
124
127
131
131
129
126
126
129
130
129
125
127
129
129
126
125
128
129
129
128
128
128
128
129
128
128
129
130
128
126
128
130
128
126
126
127
130
130
127
125
127
130
130
128
127
129
131
129
126
126
129
130
130
126
124
127
130
131
127
125
128
130
130
128
127
128
129
130
129
127
127
128
129
129
128
127
126
126
128
130
128
125
126
129
131
130
128
125
126
130
131
128
126
127
130
129
128
126
126
129
130
130
127
125
128
130
130
127
127
128
128
129
129
126
126
128
130
129
127
127
127
128
129
129
126
126
129
131
130
126
125
127
129
131
129
126
125
127
131
130
128
126
126
129
129
130
127
126
128
131
131
127
125
127
129
130
128
125
126
129
130
128
125
126
129
130
129
127
127
128
130
130
128
126
128
130
129
127
126
127
128
128
129
127
126
127
129
130
129
129
128
127
129
130
129
127
126
128
129
128
126
125
126
128
130
128
126
127
130
131
129
127
127
129
130
130
127
124
127
129
129
127
126
128
129
129
129
128
128
130
130
129
127
127
129
128
127
126
126
126
127
127
128
128
128
129
128
129
130
130
129
127
129
130
128
127
126
127
128
127
127
125
127
129
130
127
126
129
131
130
129
128
128
129
130
128
126
126
128
128
126
126
127
128
127
127
128
129
129
130
129
128
130
130
129
126
127
128
128
127
125
125
127
129
128
127
127
129
130
129
128
129
130
129
128
128
128
128
127
126
126
127
128
128
126
127
129
130
129
128
128
129
129
129
127
127
128
129
128
126
127
129
128
127
127
128
129
129
128
127
127
129
130
128
126
127
129
129
128
128
128
127
128
128
128
128
128
128
126
128
130
130
128
126
129
131
129
128
127
128
129
129
128
125
126
128
129
127
126
128
129
129
129
129
128
129
130
128
127
128
129
128
125
126
127
128
128
127
127
128
129
129
128
128
129
130
129
128
129
129
127
127
126
127
128
128
127
126
127
129
129
127
126
129
130
130
128
127
127
128
129
128
126
126
128
128
127
127
128
128
129
128
129
128
129
130
129
128
128
129
128
127
128
128
127
127
128
129
128
128
128
128
129
130
129
127
127
128
128
127
126
127
128
128
128
128
127
128
129
130
128
128
129
128
128
128
128
127
127
128
127
127
127
128
128
128
129
129
128
128
129
129
128
128
128
128
128
127
126
126
127
129
129
127
127
129
130
128
128
128
129
129
128
128
126
126
128
127
127
127
128
128
128
129
129
129
129
130
129
128
128
128
127
127
128
127
126
127
129
128
127
127
129
130
130
129
128
128
129
130
128
125
127
128
129
127
126
127
128
129
129
128
128
128
129
129
128
128
128
127
127
128
128
127
127
128
129
129
129
128
127
128
130
130
127
126
128
129
128
127
126
127
128
130
128
126
128
130
130
128
127
129
130
130
128
126
126
128
130
128
125
126
128
129
128
128
128
128
129
129
128
127
127
129
129
128
128
128
127
127
129
129
128
127
128
130
130
129
127
126
128
130
130
127
125
127
128
129
128
127
127
129
131
129
127
127
130
130
128
126
126
127
128
127
127
126
127
129
129
127
127
129
130
129
130
129
128
128
129
128
127
127
127
127
127
128
127
125
126
130
131
130
128
128
130
131
130
127
126
128
130
128
124
124
126
128
128
126
127
128
130
131
129
128
130
132
131
128
127
128
127
127
126
126
126
127
128
127
128
130
130
128
129
131
131
129
127
128
128
128
127
125
125
127
129
128
125
127
130
131
129
127
129
130
131
130
127
127
128
130
127
124
126
128
129
128
127
127
128
129
130
128
127
129
130
129
127
127
127
127
127
128
127
127
128
128
128
128
129
129
128
128
129
130
128
127
128
128
129
128
126
127
128
130
129
126
127
129
130
128
127
127
128
129
129
127
125
127
129
129
127
127
129
130
129
129
128
128
129
129
128
127
128
128
126
127
128
129
128
128
129
129
129
129
128
128
128
129
128
126
127
128
128
126
126
128
129
129
129
128
128
130
131
129
126
127
129
129
127
127
126
127
128
128
126
126
129
131
129
128
128
129
130
129
129
128
127
128
128
126
126
127
128
127
127
128
128
127
127
129
130
130
129
128
128
130
131
128
126
126
129
129
127
125
125
128
129
129
127
126
129
132
130
128
127
130
131
129
127
125
126
129
129
126
125
126
128
128
127
128
129
129
129
129
129
128
128
129
128
128
128
127
126
126
128
128
127
127
128
130
130
130
128
126
128
130
129
127
126
127
128
127
127
126
127
129
130
128
127
128
130
130
128
127
128
128
129
128
126
126
128
129
127
126
128
129
129
129
128
128
128
130
130
127
126
128
130
128
127
127
127
128
128
128
128
128
129
128
127
128
129
129
127
128
129
129
127
127
127
128
129
127
126
126
128
130
128
126
127
129
131
129
128
127
129
130
129
126
126
129
130
127
125
127
129
130
128
127
126
128
130
129
127
127
129
129
127
127
128
128
128
128
127
128
129
129
127
127
129
131
129
127
128
129
128
126
126
127
128
129
129
126
126
129
130
128
127
129
130
129
127
127
127
128
128
127
126
126
129
129
127
127
128
130
129
129
129
128
129
129
129
128
127
128
127
126
127
128
128
127
128
129
128
128
129
129
129
130
129
127
126
128
128
127
126
127
128
127
127
128
128
128
130
130
128
128
129
130
128
128
127
127
128
128
127
125
126
128
129
128
128
128
129
130
130
129
128
128
129
129
127
126
126
126
127
128
128
126
127
129
129
129
129
130
129
128
129
129
128
126
127
128
127
127
127
126
128
129
129
127
128
130
130
128
128
129
129
129
128
127
126
127
128
127
126
127
128
129
128
127
128
128
129
130
129
128
128
129
129
127
128
127
126
127
128
129
127
126
128
129
130
129
128
127
128
130
129
126
126
128
128
128
126
126
127
128
129
128
127
129
130
130
129
128
129
128
128
127
127
127
126
128
128
127
128
128
128
128
129
130
128
128
129
129
128
127
127
126
127
128
128
126
127
129
130
128
127
128
130
130
129
128
127
129
129
128
126
126
128
128
128
128
128
128
127
128
129
129
129
129
128
128
129
129
127
126
128
128
128
127
127
127
128
129
128
127
128
130
130
128
128
129
129
127
127
127
127
128
127
126
127
129
130
128
127
128
130
130
128
128
128
128
128
128
127
127
129
128
127
127
129
130
128
127
128
129
129
128
127
126
127
129
128
126
127
129
129
127
128
129
129
130
129
128
127
128
129
127
125
127
128
128
126
127
128
129
129
129
128
128
130
130
129
127
128
129
127
126
126
127
128
128
127
127
127
130
130
128
128
130
131
129
128
128
127
128
127
127
126
127
128
127
126
127
129
129
129
129
129
129
129
129
128
127
128
128
127
126
127
128
127
127
127
128
128
129
130
129
128
130
130
128
127
128
128
127
128
128
126
127
128
128
127
127
129
129
128
128
128
128
128
129
128
128
128
128
128
127
128
128
128
127
127
129
128
128
129
128
128
128
129
128
127
129
129
128
127
128
128
128
128
128
127
128
129
129
127
127
128
128
128
127
128
128
128
128
127
127
127
129
129
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
127
128
129
128
128
128
128
128
128
129
128
127
127
129
128
127
128
128
128
128
129
128
128
129
129
129
128
128
128
127
128
128
128
128
128
128
128
128
129
128
127
128
129
129
128
127
128
128
128
128
127
127
128
129
128
127
128
129
129
128
127
128
128
128
129
127
127
128
128
128
127
128
129
128
128
129
129
128
128
129
129
128
128
127
127
127
128
128
126
127
128
129
128
128
129
129
129
129
129
127
127
128
127
127
127
127
127
127
129
128
128
128
130
129
128
128
129
129
129
128
127
126
127
128
127
127
127
128
128
128
130
129
127
128
129
129
128
127
127
127
127
128
127
126
127
129
129
128
128
129
129
129
130
128
127
128
129
128
126
126
127
128
127
127
127
127
129
130
130
128
128
129
130
129
128
127
127
127
128
127
125
127
128
129
128
128
129
128
129
130
129
128
128
129
129
127
127
126
126
127
128
128
126
127
129
130
129
128
128
128
130
130
128
126
126
129
129
127
126
126
129
129
129
128
127
129
131
130
128
127
129
129
129
128
127
127
127
128
128
127
128
128
128
129
129
128
126
127
130
130
128
127
127
128
129
129
127
126
128
131
130
126
125
128
130
129
128
126
127
130
130
128
126
127
130
130
128
128
127
128
128
129
127
125
126
128
127
128
128
128
128
128
130
130
128
127
129
130
130
128
126
126
128
129
127
125
127
129
130
128
127
128
129
131
130
128
127
128
129
127
126
127
127
127
127
127
128
127
129
129
129
128
129
129
129
128
128
128
126
127
129
127
126
126
128
129
129
129
127
128
130
130
128
126
128
130
129
127
125
126
128
128
128
127
126
128
130
129
128
128
130
129
129
129
128
127
127
128
127
126
127
127
127
129
129
127
128
129
131
130
127
127
128
130
130
128
126
125
128
130
127
125
126
129
131
129
127
126
128
131
131
128
125
127
129
129
127
126
126
127
130
129
127
126
127
130
130
129
128
128
128
129
129
128
126
128
129
129
127
126
126
127
129
130
127
126
128
131
130
127
126
127
129
131
129
125
125
128
130
129
125
126
128
130
130
128
126
127
130
131
128
125
126
128
129
128
128
126
126
129
130
129
128
128
129
130
130
128
126
126
129
130
128
124
125
128
129
128
126
125
128
132
132
128
124
127
131
131
127
125
126
128
129
128
125
126
129
131
129
126
128
129
129
129
129
128
127
127
127
128
128
128
126
126
129
130
128
125
127
130
131
129
126
126
128
131
129
125
124
129
132
129
125
124
128
131
130
127
125
127
131
131
127
126
128
130
129
127
126
128
128
128
127
127
127
129
128
127
128
129
129
127
127
130
130
127
127
127
129
129
128
126
126
129
131
128
126
127
130
131
129
126
126
128
130
129
126
125
127
129
128
127
127
129
129
129
129
129
128
128
128
127
128
129
127
126
127
129
128
127
127
128
129
129
128
128
128
130
130
128
126
127
129
128
127
127
128
128
129
128
127
127
129
130
128
127
128
129
128
128
128
128
127
128
129
128
128
128
128
128
129
130
128
127
128
129
129
128
127
128
128
129
128
127
126
127
129
129
127
127
129
129
129
128
128
128
129
129
128
127
128
128
128
127
127
128
127
128
129
128
127
128
128
129
128
128
128
128
128
129
128
127
126
128
129
129
128
127
127
129
130
128
127
128
129
129
127
127
127
128
128
128
128
126
128
129
129
128
128
129
129
128
129
128
128
128
128
127
127
128
128
127
128
129
129
128
128
129
129
128
128
128
128
129
129
127
126
127
129
129
127
127
128
129
129
128
128
127
128
130
128
127
127
129
129
128
128
127
127
128
128
128
127
128
129
128
128
128
129
128
128
128
128
128
128
128
127
127
128
129
128
127
128
129
128
128
128
128
128
128
128
127
127
128
128
127
127
128
128
127
128
128
128
129
129
128
127
128
129
128
127
127
128
128
127
127
128
128
128
129
128
128
129
129
128
127
128
130
129
128
127
127
127
128
128
127
127
128
128
128
128
128
129
129
129
129
128
128
128
128
128
127
127
127
126
127
128
127
127
128
130
129
128
129
129
128
129
128
128
127
128
128
127
127
127
128
128
128
129
129
129
129
129
128
128
129
128
127
127
128
127
126
127
128
129
128
128
128
128
129
129
128
127
128
129
128
126
127
128
128
128
128
128
128
129
129
128
128
129
129
128
128
128
128
128
127
127
127
127
128
128
127
127
129
129
128
128
129
129
128
128
129
129
128
128
128
128
128
128
127
126
128
129
128
127
128
129
128
129
129
128
128
129
129
128
127
128
128
128
127
127
128
127
128
129
128
128
129
130
128
128
128
129
128
128
128
127
127
127
127
127
127
128
128
128
129
129
129
128
128
129
129
128
128
127
127
127
129
127
126
127
129
129
127
128
128
129
129
129
128
127
128
129
127
127
127
128
128
127
127
127
128
129
129
128
128
130
130
128
128
129
129
128
127
127
127
127
127
127
127
128
129
128
128
129
130
130
128
128
129
129
128
127
127
126
128
128
126
126
127
129
129
128
129
129
130
129
129
129
128
129
128
127
127
127
127
126
126
127
128
128
128
129
128
128
129
130
128
128
129
129
128
128
128
127
127
128
128
127
127
128
128
129
128
129
128
128
129
129
128
128
129
129
127
127
128
127
127
127
128
127
127
128
128
128
128
129
129
128
129
129
129
127
128
128
127
128
128
127
127
128
129
127
127
129
129
129
128
128
128
129
129
128
127
127
128
129
127
126
127
128
128
128
128
128
128
129
129
128
128
130
129
128
128
128
128
127
127
128
127
127
127
128
128
129
130
128
128
129
130
129
127
127
128
128
128
127
126
126
128
129
127
126
128
130
130
128
128
128
129
129
128
127
126
129
128
127
126
127
129
128
128
129
128
128
129
129
128
127
128
128
127
127
128
128
127
127
129
129
128
128
128
129
129
129
127
126
128
129
128
126
126
127
129
128
128
127
128
130
130
129
127
128
129
128
127
127
127
128
128
128
127
127
128
129
129
128
129
129
128
129
129
128
127
128
128
127
127
127
127
127
128
129
128
127
128
130
130
128
128
128
128
129
128
126
126
128
129
127
126
127
128
129
128
129
128
129
129
129
128
128
128
128
128
127
128
127
126
127
128
128
128
127
128
129
129
129
127
128
129
130
129
126
127
128
128
128
126
127
128
130
130
127
126
128
130
129
127
127
128
129
128
127
126
127
128
129
128
127
128
129
129
129
129
127
128
128
129
128
127
128
127
128
128
128
128
127
128
130
129
128
127
128
129
128
128
126
127
128
129
127
126
127
129
129
128
128
128
128
130
129
128
127
128
129
127
126
127
128
128
127
128
128
127
129
129
129
129
129
129
128
128
129
128
126
127
128
128
127
127
127
127
128
129
128
127
129
130
129
127
128
129
128
128
128
127
127
128
128
127
127
128
129
129
128
128
129
129
128
128
128
128
128
128
127
127
128
128
127
127
129
129
128
128
128
128
129
129
128
127
128
129
129
127
128
129
128
128
127
128
129
129
129
127
127
128
130
128
126
127
129
129
128
127
127
128
129
129
127
126
128
130
128
127
127
128
128
128
129
128
128
128
128
128
128
129
129
126
127
129
130
128
126
127
128
129
128
127
126
128
130
129
126
127
129
130
128
127
128
128
128
128
127
126
127
129
127
126
127
129
129
128
128
128
129
129
129
128
128
129
129
127
127
128
128
126
126
128
129
128
128
128
127
129
130
129
127
128
129
129
127
127
128
128
128
127
127
127
128
129
128
127
129
130
129
127
128
129
129
128
127
127
128
128
129
127
126
127
128
128
127
128
128
128
129
129
129
128
128
129
128
128
128
128
127
127
128
128
127
127
128
129
128
129
128
128
129
130
129
128
128
129
128
128
127
127
127
127
128
128
127
128
129
128
127
128
129
129
129
129
128
127
128
129
128
127
127
128
128
129
129
128
128
128
129
129
128
128
128
128
128
128
128
127
127
129
129
128
128
128
128
128
128
128
127
127
128
128
127
127
128
128
128
128
128
128
128
129
129
127
127
130
129
128
127
127
128
128
129
128
126
128
129
129
128
128
129
128
128
129
128
127
127
128
128
127
127
127
127
127
129
128
127
128
129
130
128
128
129
128
129
129
128
127
127
128
127
126
127
128
128
128
129
129
128
128
130
130
128
128
129
129
128
127
127
126
127
128
128
127
126
128
129
129
129
128
128
129
130
129
127
127
128
128
128
126
127
127
127
129
128
127
128
129
129
128
129
129
128
128
128
129
128
127
128
128
128
128
128
127
127
128
128
128
127
129
129
128
128
128
128
128
128
129
128
128
129
129
128
127
128
128
128
128
127
127
127
129
128
127
127
129
129
128
128
128
127
128
128
128
127
127
128
127
127
127
128
128
127
129
129
128
128
128
128
128
128
129
127
127
128
128
127
127
128
128
128
128
129
128
129
129
129
127
127
128
128
126
126
127
128
128
127
128
128
128
130
129
128
128
129
130
128
128
128
127
128
127
127
127
127
128
128
128
128
129
129
128
129
129
128
128
129
129
127
127
128
127
127
127
128
127
127
129
129
129
128
128
129
129
129
128
128
128
128
129
126
126
128
128
128
128
128
128
127
129
129
128
128
129
129
128
128
128
127
128
128
128
127
126
127
128
128
128
128
128
128
129
128
128
128
129
129
127
128
128
128
127
128
128
127
127
128
128
128
128
129
129
128
129
129
128
127
128
128
127
127
127
127
127
128
128
127
127
128
129
128
128
129
129
129
128
128
128
127
128
128
127
127
128
128
128
128
128
128
128
129
129
128
128
128
128
128
127
128
128
127
128
128
127
127
128
129
128
128
128
128
128
128
129
128
127
129
128
128
127
128
128
128
128
128
128
128
129
129
128
127
129
129
128
128
128
128
128
128
128
127
127
128
128
128
128
129
129
128
128
129
128
128
128
128
128
127
128
127
127
128
128
128
127
128
130
129
128
128
128
129
129
128
127
127
128
128
127
127
128
128
128
128
128
128
128
129
129
128
128
128
129
128
127
129
128
127
128
128
128
127
128
128
128
128
129
128
127
128
129
128
127
127
128
128
128
128
128
128
129
129
128
127
129
129
128
127
128
128
127
128
128
127
128
128
128
128
128
129
129
128
128
129
128
127
128
128
127
127
127
128
127
127
128
128
128
129
129
128
128
129
129
129
128
128
128
127
129
128
127
127
128
129
127
127
128
129
128
128
129
128
128
129
129
128
127
128
128
127
127
128
127
127
128
129
128
128
128
129
128
129
129
128
128
129
129
128
126
128
129
128
127
127
127
128
129
129
127
127
129
129
128
127
128
128
128
129
128
127
127
128
129
128
127
129
128
128
128
129
128
127
128
128
128
128
127
126
127
129
129
128
126
128
130
129
128
127
128
129
129
128
126
127
128
129
127
127
128
129
128
128
129
128
128
129
129
128
128
129
128
127
127
128
127
127
127
128
128
128
129
128
128
129
128
128
128
129
130
128
127
127
128
128
128
128
127
127
128
129
128
127
128
129
128
128
128
128
128
128
128
128
127
128
128
127
127
127
128
128
128
129
128
128
129
129
129
128
128
128
128
128
128
127
127
128
129
128
127
128
129
129
128
128
128
128
129
129
127
127
128
128
127
127
128
128
128
128
129
128
128
129
129
128
127
128
128
127
128
128
127
127
128
129
127
127
129
129
128
128
128
128
128
128
128
127
127
128
128
127
127
128
128
127
128
129
128
128
128
128
129
129
129
127
127
128
129
128
126
127
128
128
128
127
127
127
129
129
127
127
129
130
128
127
128
128
129
128
128
127
128
129
128
127
127
128
129
128
128
128
128
128
128
129
128
128
128
128
128
128
129
128
127
128
129
128
127
127
128
129
128
128
127
127
129
129
128
127
128
129
129
127
128
128
128
129
128
127
127
128
129
128
127
128
128
128
128
129
128
128
129
128
128
127
128
128
127
127
128
128
127
128
129
128
127
128
129
128
128
129
128
128
128
129
129
127
128
128
127
129
128
127
126
128
129
128
127
128
129
129
128
128
129
128
129
129
128
127
128
128
128
127
127
127
127
127
128
128
128
129
129
128
128
129
129
128
128
128
128
127
127
127
127
128
127
127
127
128
129
128
128
129
130
129
128
128
129
128
128
128
127
127
128
128
127
127
128
129
128
128
128
128
129
128
129
128
128
129
128
127
127
128
128
127
127
128
128
128
128
128
128
129
129
128
128
128
129
128
127
127
129
128
127
127
127
128
128
128
127
127
129
130
128
127
128
129
129
128
128
128
128
129
128
128
127
128
129
127
127
128
128
127
127
128
128
127
128
128
128
128
129
128
127
128
129
129
127
127
128
129
129
127
127
127
128
129
127
127
128
129
129
127
128
128
129
129
128
127
127
128
128
127
126
128
128
128
127
128
128
128
128
129
129
128
129
128
128
128
129
128
126
127
128
128
128
127
127
128
128
129
128
127
128
130
129
127
127
128
128
128
127
127
128
128
129
127
126
128
129
128
127
128
129
128
128
129
128
127
129
129
128
128
128
128
127
127
128
127
127
127
129
128
127
128
128
128
128
129
128
127
128
129
128
127
127
128
128
128
128
127
127
127
129
128
127
128
129
128
128
129
129
128
128
129
129
128
127
128
128
128
128
127
127
127
129
128
127
128
129
129
128
128
128
128
128
129
127
127
127
128
127
127
127
127
128
128
129
128
128
128
129
129
128
129
128
127
128
128
128
127
127
129
128
127
128
128
128
128
129
128
127
128
129
129
128
127
128
128
128
128
127
127
127
128
128
127
127
128
128
128
129
128
128
129
129
129
127
128
128
128
128
127
128
127
127
129
129
128
128
128
129
129
129
128
127
128
129
128
127
126
128
128
128
128
127
127
128
129
129
128
128
129
129
128
128
127
128
128
128
128
127
127
129
128
128
128
128
128
128
129
128
127
128
129
129
127
127
128
128
128
128
128
127
128
128
128
127
127
128
127
128
128
128
128
128
129
129
128
129
128
128
128
128
128
127
127
128
128
127
126
127
128
128
129
129
128
128
129
129
128
128
129
128
127
128
128
127
127
128
128
127
127
129
128
128
128
129
129
129
129
129
128
128
128
128
127
128
128
128
127
127
128
128
128
129
128
128
129
129
128
128
129
129
128
127
127
128
127
127
127
127
128
129
128
127
127
130
129
128
128
129
129
128
128
127
127
128
128
128
127
127
129
129
128
128
129
129
128
128
128
127
128
129
128
126
128
129
128
127
128
129
128
128
129
128
128
128
128
127
127
129
128
127
127
128
129
128
128
129
128
128
129
128
127
127
129
128
127
126
128
128
128
128
129
129
129
130
129
127
129
129
128
126
126
128
127
126
126
126
128
128
129
128
128
130
130
129
128
129
129
128
128
127
127
127
127
127
126
127
128
129
128
128
129
130
130
129
128
129
128
129
128
126
127
127
127
126
126
128
128
128
129
129
129
129
130
129
129
129
129
128
127
127
127
126
126
127
127
127
128
129
129
128
129
130
129
129
129
128
127
127
127
128
126
127
127
126
128
128
129
128
128
130
130
129
129
129
128
128
128
128
126
126
127
127
126
127
128
128
128
129
129
129
129
129
129
128
128
128
127
126
127
127
127
127
128
128
127
128
129
128
129
129
130
129
128
128
128
128
127
127
127
127
127
127
127
128
129
129
128
129
129
129
128
128
129
128
128
128
127
127
127
128
128
127
129
128
128
128
128
129
128
128
129
128
128
128
128
128
127
128
128
128
127
128
128
128
128
128
128
128
128
129
128
128
128
128
128
128
128
128
128
128
128
127
128
129
128
127
128
129
128
128
128
129
128
128
129
129
128
127
128
128
128
128
128
127
128
129
128
127
127
128
129
128
128
128
128
129
129
129
127
127
129
128
127
127
128
128
127
128
128
127
128
129
129
128
129
129
128
128
128
129
128
127
128
128
127
127
128
127
127
129
128
128
128
129
130
128
128
128
128
128
128
128
127
127
129
128
127
127
128
128
128
128
128
128
128
129
129
128
128
129
129
128
128
128
127
128
128
128
127
127
128
128
128
129
129
128
128
128
129
128
127
128
128
128
128
128
127
127
129
129
128
127
128
129
128
128
128
127
128
129
128
126
127
128
129
128
128
128
128
129
129
129
128
127
129
129
127
127
127
128
128
128
128
127
128
129
129
128
128
129
129
127
128
129
128
127
127
128
127
128
128
127
127
128
129
128
127
128
129
128
128
128
128
128
128
128
127
126
128
128
127
127
128
129
128
128
129
129
129
129
128
127
127
129
128
126
127
128
128
127
128
128
128
128
129
129
128
128
129
128
128
128
128
128
127
128
128
128
127
128
128
128
129
129
128
128
129
129
128
128
128
128
127
128
128
128
127
128
129
128
128
129
129
128
128
128
128
128
128
129
127
127
128
128
128
127
128
128
128
129
128
128
128
128
128
127
128
128
128
128
128
128
128
128
128
128
128
128
128
128
127
128
129
128
127
129
129
128
128
128
128
128
128
129
127
127
128
128
127
127
128
128
128
128
128
128
128
129
129
128
128
128
128
127
127
128
128
127
128
128
128
128
128
128
128
128
129
128
127
128
129
128
127
127
128
127
127
129
127
127
128
129
129
128
129
129
128
128
128
128
128
128
128
127
127
128
128
127
127
128
128
127
128
129
128
128
129
129
128
128
128
128
127
128
128
127
128
127
128
127
128
129
128
127
129
130
129
128
128
129
128
128
128
127
127
128
128
127
127
128
128
128
128
129
128
128
128
129
129
128
128
128
127
127
127
128
127
127
129
128
128
128
129
129
129
129
129
128
129
129
128
127
127
128
128
127
127
127
127
128
129
128
128
129
129
128
128
128
128
128
128
129
128
127
128
128
128
127
127
128
127
128
129
128
128
128
129
129
128
128
128
128
128
128
128
127
128
129
128
127
127
128
128
128
128
128
127
128
129
128
127
128
128
128
128
128
128
127
128
129
128
127
127
129
128
128
129
127
127
128
129
128
127
128
129
128
128
128
128
128
128
129
128
127
128
129
128
128
128
128
127
128
129
128
127
128
129
129
128
128
128
127
128
129
128
127
128
129
128
127
127
128
128
128
129
128
127
128
129
129
127
128
128
128
128
128
128
127
128
129
128
128
128
128
128
128
129
128
128
128
128
128
127
127
128
128
128
128
128
127
128
129
128
128
128
129
128
128
128
127
127
127
129
128
127
128
128
128
128
128
129
128
129
129
128
128
128
129
128
127
128
127
127
127
128
128
127
128
129
128
128
128
129
128
129
129
128
127
127
128
128
127
127
127
128
127
128
128
127
129
130
129
128
128
130
128
128
128
128
127
127
128
127
126
128
129
128
128
129
129
128
129
129
129
128
128
128
127
127
127
127
126
127
129
128
127
127
129
130
129
129
128
128
129
129
128
127
127
129
128
127
127
128
128
128
128
128
128
129
129
128
128
128
129
128
128
128
127
127
128
128
128
128
128
128
128
128
129
128
128
128
129
128
128
128
128
127
128
128
128
127
128
129
128
127
128
129
129
128
129
129
128
128
128
127
127
128
128
127
127
127
128
128
128
129
128
129
129
129
128
127
129
128
127
127
128
128
127
127
128
128
128
128
129
128
129
130
129
128
128
129
128
127
127
127
128
127
127
127
127
128
129
128
128
129
130
129
128
128
128
128
127
128
127
127
128
128
127
127
128
129
128
128
129
128
129
129
129
127
127
129
128
127
127
128
128
127
127
128
128
128
129
129
128
128
129
129
128
128
129
128
127
128
128
128
128
128
127
127
129
129
128
127
128
129
128
127
128
128
129
129
128
127
127
128
129
127
127
128
129
128
128
128
128
128
128
128
128
129
129
129
127
128
129
128
127
128
128
128
127
128
128
127
128
129
128
128
128
129
129
128
128
128
128
128
128
127
127
128
128
127
127
128
128
128
128
129
129
128
128
129
128
128
128
128
127
127
129
127
127
127
128
128
127
129
129
128
128
129
129
128
128
128
128
128
128
127
127
127
129
128
127
127
129
129
128
128
128
128
128
129
129
127
128
129
128
127
127
128
128
128
128
128
127
128
129
128
127
127
128
128
128
128
129
128
128
128
128
128
128
128
127
128
128
128
127
127
128
129
128
128
128
128
129
129
129
127
128
129
129
127
127
128
128
127
128
128
127
128
129
128
127
128
130
129
128
128
129
128
128
128
128
127
127
128
127
127
128
129
128
128
129
129
128
129
128
128
128
128
128
127
127
128
128
127
127
128
128
128
128
129
128
128
129
128
128
128
129
128
127
127
128
128
128
128
128
127
128
130
128
127
128
129
129
128
128
128
127
128
128
128
127
127
129
128
127
128
129
128
128
129
128
128
128
128
128
127
128
127
127
127
128
128
127
128
129
129
128
128
128
128
128
129
128
126
127
129
128
127
127
128
128
128
128
128
128
128
129
128
127
128
128
128
127
127
128
127
128
128
128
128
129
129
129
128
128
129
127
128
128
127
127
127
128
128
127
129
128
128
129
130
129
128
128
129
128
127
127
127
127
127
127
127
127
127
129
128
128
129
129
129
129
130
129
127
128
128
127
126
127
128
127
127
128
128
128
128
130
130
129
130
129
128
128
128
127
126
127
127
127
126
126
127
128
128
128
129
129
129
130
129
128
128
129
128
127
127
127
127
127
127
127
127
128
129
128
128
129
129
129
128
129
129
127
128
128
127
127
127
128
127
127
128
128
128
129
129
128
128
129
129
128
128
129
128
127
127
128
128
127
127
128
127
129
129
129
128
128
130
129
128
128
129
128
128
128
128
127
128
128
128
127
128
128
128
128
128
128
128
128
129
128
128
128
128
128
127
129
128
127
128
128
129
127
128
129
128
128
128
128
128
128
129
128
127
127
128
128
128
128
128
128
128
128
128
127
127
129
128
128
128
128
128
128
128
128
128
128
129
128
127
128
128
128
128
128
129
127
128
129
129
128
128
128
128
128
128
128
127
127
129
128
127
127
128
128
128
128
129
128
129
129
129
128
128
129
127
127
128
128
127
126
128
128
127
128
128
128
128
129
129
128
128
129
129
128
127
128
128
127
127
127
127
127
128
128
127
127
129
129
128
129
129
128
129
129
128
127
127
129
128
127
127
127
128
127
128
128
128
128
129
129
128
128
129
128
128
128
128
127
127
128
127
127
128
128
127
127
129
128
127
128
129
129
128
128
129
128
128
128
128
127
127
129
128
127
127
128
128
128
128
128
128
129
129
129
128
128
129
128
128
128
128
127
127
128
128
127
127
128
128
128
128
129
128
128
129
129
128
128
128
128
128
128
128
127
127
129
128
127
127
128
129
128
127
128
128
128
129
128
127
128
129
129
127
127
128
128
127
128
128
128
127
128
128
128
129
128
128
128
129
129
128
127
128
128
128
128
128
127
128
129
129
127
127
129
129
128
128
128
128
128
128
128
128
128
128
128
127
128
129
128
127
128
129
129
128
128
128
128
128
128
128
127
128
129
128
127
128
128
128
128
128
128
128
129
128
128
128
128
128
127
127
128
128
127
127
128
128
128
128
128
128
128
129
128
127
128
128
129
127
128
128
128
128
128
128
128
128
129
128
127
128
129
128
127
128
129
128
127
128
128
128
128
128
128
127
128
129
127
127
129
129
128
128
128
128
128
129
128
128
128
128
128
127
128
129
128
128
128
128
128
128
128
128
128
128
128
128
127
128
129
128
127
128
129
128
128
128
128
128
128
129
127
127
128
128
128
127
128
128
128
129
128
127
128
129
129
127
127
128
128
128
128
128
128
127
129
129
128
128
128
128
128
128
129
128
127
128
129
127
128
128
128
128
128
129
128
128
128
128
128
128
129
128
127
128
128
128
127
128
128
127
128
129
129
128
128
129
128
128
128
129
128
128
128
128
127
127
127
128
127
128
128
128
128
129
129
128
129
129
128
128
129
128
128
127
127
128
127
127
128
128
127
128
129
129
129
129
129
128
128
129
128
127
127
127
127
127
128
127
127
128
129
129
128
129
129
129
129
129
129
128
128
128
127
127
127
127
127
127
127
128
128
128
129
129
128
129
130
129
128
128
128
127
127
128
127
127
127
128
128
127
128
128
129
129
129
129
128
128
129
129
128
127
128
127
127
128
127
127
127
128
128
128
128
129
128
128
129
129
128
128
128
128
127
127
128
127
127
128
128
128
128
129
129
128
129
129
128
128
129
129
128
128
128
128
127
127
128
128
127
128
128
128
128
129
128
128
128
129
128
128
128
128
128
128
128
128
128
128
129
128
127
128
128
128
128
129
129
128
128
128
128
128
128
129
128
127
128
129
128
127
128
128
127
128
128
128
127
129
129
128
128
129
129
128
128
129
128
128
128
128
127
127
129
128
127
128
128
128
127
128
129
129
128
128
128
128
128
129
128
127
128
128
128
127
128
128
128
128
129
128
128
129
129
128
128
128
129
128
128
128
128
128
128
128
128
128
129
128
128
128
129
129
127
128
128
128
127
128
128
128
128
128
128
127
128
129
128
128
128
129
128
128
129
128
127
128
128
128
127
127
129
128
127
128
129
129
128
129
128
128
129
128
127
127
128
128
127
127
128
127
127
128
128
128
128
129
129
128
128
129
128
128
128
128
128
127
128
127
127
128
128
128
127
128
129
129
129
128
128
129
128
128
128
127
128
128
127
126
127
128
128
127
128
128
128
129
129
128
128
128
129
128
128
128
128
127
127
128
128
127
128
128
128
128
129
129
128
128
129
129
128
128
129
128
128
128
128
127
128
128
128
127
127
128
128
127
128
129
128
128
129
129
128
128
129
128
127
129
128
127
127
128
128
127
127
128
128
128
129
129
128
128
129
128
128
128
128
128
127
127
128
127
127
128
128
127
128
129
129
128
128
129
128
128
128
128
128
127
128
128
127
128
128
128
128
128
129
128
128
129
128
128
128
128
128
127
128
128
127
128
128
128
128
128
128
128
128
128
128
127
128
128
128
128
128
128
128
128
128
128
128
128
129
129
128
128
128
128
127
128
128
127
127
128
128
127
127
128
128
128
128
129
128
128
128
128
128
128
128
128
127
127
128
127
127
128
128
127
128
129
128
128
128
129
129
128
129
128
127
128
128
128
127
127
129
128
127
128
128
128
128
128
128
128
128
129
50
1
24115
0
0
0
0
0
0
0
0
0
0
0
0
0
