111
111
111
111
111
111
111
111
111
111
111
112
112
112
113
113
113
113
113
113
114
114
116
117
117
118
119
120
121
122
123
126
127
126
124
124
124
123
123
122
122
123
123
123
123
123
124
123
123
123
123
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
124
126
126
126
122
123
123
123
123
129
132
133
133
130
130
127
126
126
126
126
126
126
127
127
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
131
132
132
132
132
132
132
131
131
130
130
130
130
130
130
130
130
130
130
130
130
130
130
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
134
134
136
136
137
138
139
140
140
140
140
141
141
141
141
136
137
138
138
138
139
141
141
141
142
142
143
143
143
143
143
143
143
142
142
142
141
141
141
141
141
142
142
142
142
142
142
142
141
141
141
141
141
141
140
140
140
140
140
142
143
144
145
145
146
146
146
147
147
147
149
149
150
149
149
148
148
148
149
150
150
150
149
150
150
150
156
156
157
157
157
157
157
157
157
157
157
157
154
154
154
153
153
153
152
152
151
151
151
151
150
150
150
150
150
152
152
153
153
153
152
152
152
152
151
151
151
150
150
150
150
150
150
150
150
150
149
151
152
152
152
152
152
152
150
149
149
150
152
152
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
151
150
150
150
150
149
149
149
149
149
149
149
149
149
149
149
149
150
151
151
152
152
151
151
151
151
149
149
149
149
149
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
151
151
151
151
152
152
152
152
152
154
155
155
155
156
156
157
157
157
157
158
158
159
159
159
159
159
158
158
158
158
158
157
157
157
157
156
153
152
151
151
151
151
151
151
151
151
151
151
152
152
152
152
152
153
153
153
153
153
153
153
153
153
153
153
153
154
155
156
157
158
159
160
161
162
161
161
161
160
159
158
157
156
155
155
154
154
151
150
149
149
149
149
149
149
149
149
151
151
152
152
153
153
153
153
153
153
153
153
152
152
152
152
152
152
152
152
155
158
159
159
160
161
162
161
154
151
152
151
151
151
151
151
151
151
152
152
152
152
151
151
151
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
151
150
150
150
150
150
150
150
150
150
149
149
149
149
149
149
149
148
148
148
148
148
148
149
150
151
151
152
155
155
154
154
153
153
153
152
151
151
152
152
152
151
150
150
150
150
147
148
149
148
148
147
146
146
146
146
146
146
146
146
146
145
145
145
145
145
144
147
144
144
144
144
144
143
143
143
143
144
144
144
145
145
145
144
142
141
143
143
143
142
141
141
141
141
140
140
139
139
139
139
139
139
139
138
137
137
137
137
137
137
137
137
137
137
137
137
137
137
136
136
135
135
135
135
135
135
135
135
135
135
135
134
135
135
133
133
136
134
133
130
129
129
129
129
128
128
128
127
127
127
127
127
127
127
126
126
126
125
123
123
121
121
120
120
120
120
120
120
120
120
120
119
117
117
117
117
117
116
116
114
114
114
113
113
112
112
110
110
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
114
114
115
115
116
116
116
116
115
112
111
110
110
110
110
110
110
110
110
110
110
110
110
109
109
109
109
109
109
109
111
111
111
111
111
110
110
110
110
110
110
110
109
109
109
109
109
109
109
109
109
108
108
108
109
110
109
109
110
110
110
111
112
112
114
114
116
116
116
115
115
114
113
113
113
112
112
112
112
112
112
111
111
110
110
110
111
111
111
111
111
111
111
111
111
111
112
113
113
113
113
112
112
114
114
113
113
111
112
112
111
112
112
112
112
112
112
112
112
112
114
115
114
114
113
113
113
113
114
115
114
114
114
114
114
114
113
113
113
113
114
115
115
115
115
115
115
114
114
114
114
114
114
114
114
115
115
115
115
116
116
116
116
116
116
117
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
116
116
116
116
116
116
116
117
117
117
117
117
117
116
115
114
114
114
114
114
114
114
114
119
119
121
124
124
123
122
119
117
117
117
116
114
114
114
114
114
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
117
117
118
118
118
118
118
119
119
120
120
120
120
120
120
119
119
119
119
119
119
119
119
118
118
117
117
118
118
118
118
120
120
120
120
120
120
119
118
116
116
116
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
118
118
119
119
120
120
120
119
119
118
118
118
118
118
117
117
117
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
117
117
117
117
117
117
117
118
118
118
118
118
118
118
117
116
115
115
115
115
115
115
115
115
115
115
114
114
113
114
117
117
117
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
116
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
117
118
118
118
118
118
118
118
118
118
118
118
118
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
118
118
118
118
119
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
117
117
117
117
117
117
117
116
116
116
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
116
116
115
115
115
115
115
115
115
115
115
115
115
115
116
117
117
117
117
117
117
117
117
117
117
118
118
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
115
115
115
115
115
114
113
113
113
113
113
113
113
113
113
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
114
114
114
114
113
113
113
113
112
111
112
112
113
113
114
113
113
113
113
114
114
114
114
114
114
114
114
114
114
115
115
115
115
115
115
115
114
114
112
111
110
110
111
111
111
111
111
111
110
110
111
111
112
112
112
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
109
109
109
109
109
109
109
110
110
110
111
112
112
112
112
112
112
111
109
109
109
109
110
110
110
110
110
109
108
110
111
111
111
111
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
109
110
110
110
110
110
111
111
111
111
110
110
110
109
108
109
110
110
110
109
109
109
109
109
109
109
108
108
108
108
108
108
108
108
110
111
111
111
111
111
111
111
111
111
111
111
111
110
110
109
109
109
109
110
110
111
111
111
112
112
112
112
112
112
112
112
112
112
112
112
111
111
110
110
110
110
110
109
108
108
108
109
109
109
108
108
108
107
107
107
108
108
108
108
108
107
107
106
106
105
105
105
105
105
105
106
106
106
106
109
110
111
111
110
109
109
109
110
110
111
111
111
110
110
110
110
110
110
111
112
113
113
113
113
113
113
113
113
111
110
110
110
110
110
111
112
113
114
114
114
114
114
114
113
112
112
111
111
111
110
109
109
109
110
110
111
111
111
111
110
110
110
110
110
110
110
110
110
110
110
111
111
112
112
111
109
108
108
108
108
108
108
108
108
109
109
109
109
109
110
110
110
111
111
112
112
112
112
112
112
112
111
110
110
110
110
110
110
110
110
110
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
106
105
105
105
105
105
108
108
108
108
106
107
111
109
108
107
107
107
107
107
107
107
107
107
106
106
106
105
105
105
105
105
105
105
105
106
107
107
107
107
107
107
107
107
106
106
105
105
105
104
104
104
104
104
104
104
104
104
104
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
104
104
104
104
108
108
108
108
108
108
107
104
104
104
103
103
104
104
106
106
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
107
106
106
106
106
106
106
106
106
105
105
105
104
104
104
104
104
104
104
104
104
104
104
104
105
105
105
105
105
106
106
106
106
107
106
106
106
106
107
107
107
107
107
107
107
107
106
106
106
106
105
105
105
104
104
104
104
104
104
104
105
106
106
106
106
106
107
108
108
108
108
108
108
108
107
105
103
103
102
102
102
103
103
104
105
105
105
105
105
105
105
105
106
106
106
106
107
107
107
107
107
106
106
106
106
107
108
111
111
107
105
104
104
104
103
103
104
105
105
105
105
105
105
105
105
105
105
104
104
104
103
103
103
103
103
103
103
103
103
103
103
104
104
104
104
101
101
101
101
100
100
100
100
100
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
104
104
105
105
105
108
108
108
108
108
108
108
108
108
108
108
108
108
107
107
107
107
107
106
106
106
105
105
105
104
104
104
104
104
104
104
105
105
105
105
105
105
105
105
105
105
105
106
106
107
107
107
107
107
107
107
107
107
105
105
105
104
105
106
108
109
109
111
110
109
108
107
107
107
107
108
109
110
110
110
110
110
110
108
108
108
107
107
107
107
107
107
108
108
108
109
109
108
108
108
107
106
105
104
103
102
104
105
103
102
102
102
102
102
102
102
102
102
102
102
101
101
101
101
101
101
101
101
101
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
104
104
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
105
105
105
106
106
106
106
106
106
107
107
107
107
107
107
107
107
107
107
106
106
102
102
102
102
102
102
102
102
102
102
103
103
104
104
104
104
103
103
103
101
101
101
101
101
101
101
102
102
102
103
103
103
103
103
103
103
103
103
103
104
104
104
103
101
101
101
101
101
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
101
102
102
103
104
103
103
102
100
99
98
98
97
98
98
98
99
99
99
100
100
101
101
101
101
101
101
101
101
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
99
99
99
99
99
99
99
99
99
99
99
99
99
100
100
100
100
100
101
101
101
100
100
100
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
99
99
99
99
99
99
99
99
99
99
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
99
100
100
100
100
100
100
100
100
99
99
99
99
98
98
98
98
98
98
98
98
98
99
99
99
99
101
101
101
102
102
103
105
105
105
105
105
105
104
104
104
104
103
103
102
102
100
100
99
99
98
98
98
99
99
100
100
100
99
99
99
101
101
101
101
101
101
102
102
102
102
100
100
98
98
96
96
96
96
96
96
96
96
96
97
97
97
97
97
98
98
98
98
98
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
100
100
100
100
101
101
101
101
101
101
102
102
103
103
103
103
104
104
104
104
104
104
104
103
102
101
101
100
99
99
99
98
98
96
96
96
96
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
95
96
96
96
96
96
97
97
97
97
97
98
98
98
98
99
99
99
99
100
100
100
100
100
101
101
101
102
102
102
102
100
100
99
99
95
95
95
95
95
95
95
95
95
95
95
95
96
96
98
98
98
99
100
101
101
101
101
101
101
101
101
101
101
99
99
99
95
96
96
96
99
99
99
99
99
100
100
99
99
99
99
98
98
97
96
95
95
95
95
95
95
95
95
95
94
94
94
94
92
92
93
94
94
96
96
96
97
97
97
97
98
98
98
98
98
99
99
100
100
100
101
101
102
101
101
100
99
99
96
96
95
95
95
95
95
95
96
96
96
96
96
96
98
98
98
98
97
96
96
95
96
96
96
96
97
97
97
97
96
96
95
94
94
94
94
94
94
94
94
93
93
93
93
93
93
93
93
93
93
94
93
95
94
94
93
93
93
93
93
94
94
94
94
94
94
94
95
95
94
94
94
94
94
94
94
94
95
95
95
95
94
94
94
94
95
95
95
95
95
95
95
95
95
97
97
97
97
97
96
96
96
96
96
96
97
98
98
98
98
99
99
99
100
96
96
96
96
96
96
97
96
96
95
95
95
95
96
96
97
97
97
97
97
97
97
97
97
97
97
97
97
98
98
98
98
98
98
98
98
99
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
102
102
103
103
104
106
108
111
112
112
112
112
113
114
116
116
117
118
119
120
120
119
118
118
118
117
117
116
115
114
113
110
110
107
106
106
106
106
106
105
105
105
104
104
104
104
103
103
103
102
101
101
100
100
99
98
98
98
98
98
98
98
98
97
97
97
97
97
96
96
96
96
96
95
95
95
95
95
95
95
96
96
97
98
98
99
99
99
100
100
100
99
99
99
98
98
98
98
99
99
99
100
103
103
102
102
102
105
107
107
108
109
111
112
112
113
118
117
116
114
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
115
115
116
116
116
116
116
117
117
117
115
114
114
112
108
105
103
103
98
105
110
107
106
102
100
100
101
103
105
108
111
112
113
110
116
118
118
117
115
112
112
107
101
99
99
99
99
99
99
98
98
98
99
99
100
100
101
102
102
102
103
103
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
108
107
107
107
106
106
105
104
102
100
99
98
98
98
98
98
97
99
98
98
98
98
98
98
98
98
98
103
108
109
112
115
117
119
122
124
124
124
119
112
114
115
116
119
119
119
120
120
120
114
113
111
108
108
108
107
107
106
104
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
100
99
99
99
99
99
99
100
100
100
100
100
100
104
104
104
106
108
109
110
111
115
116
117
119
120
122
123
124
125
126
128
126
121
118
116
115
114
114
113
113
112
111
111
108
106
105
102
101
100
99
99
98
95
95
95
96
96
96
96
96
96
96
96
95
95
95
95
94
94
94
94
94
94
94
94
93
93
92
92
92
92
92
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
92
92
91
91
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
92
92
92
92
92
92
93
93
94
94
94
94
94
94
94
94
94
95
95
95
94
94
94
93
93
93
93
93
93
93
93
93
93
93
93
93
92
92
92
92
91
92
92
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
92
92
93
94
94
94
97
97
97
98
98
98
98
98
98
98
98
98
98
97
97
97
97
97
97
98
97
95
95
95
95
95
97
97
97
97
97
96
96
96
96
96
96
96
96
96
96
96
96
96
96
95
94
94
93
93
93
93
92
93
93
94
94
94
95
95
96
96
96
96
96
96
96
96
96
97
97
97
97
97
97
97
97
97
96
96
96
95
94
94
94
94
94
95
95
95
95
94
93
92
92
93
93
94
95
94
96
97
93
93
93
93
93
93
93
93
93
93
93
93
93
93
92
91
91
91
91
91
91
91
91
91
92
92
92
92
92
92
93
93
96
96
96
96
96
96
96
93
92
92
92
92
92
92
92
92
91
92
91
91
91
92
92
92
92
92
92
92
92
93
93
93
93
92
91
91
91
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
95
93
92
92
93
93
94
96
96
96
96
96
97
97
97
98
98
98
98
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
98
98
98
98
100
102
102
101
105
106
107
107
107
107
107
106
106
106
106
106
106
106
106
106
106
106
106
106
105
105
107
108
107
105
105
105
105
106
107
107
107
107
107
107
107
107
107
108
108
107
107
107
106
106
105
104
104
104
104
104
104
104
104
103
103
103
106
106
106
106
108
112
114
118
118
118
119
120
120
120
120
120
120
120
121
121
121
121
121
122
123
125
125
127
128
129
129
129
130
130
130
130
130
131
131
131
132
133
137
139
141
145
145
146
146
149
149
148
148
148
148
147
146
147
149
149
148
148
147
146
140
137
135
135
135
136
137
132
129
129
129
129
128
128
127
127
127
127
127
127
127
126
126
126
125
125
125
125
125
123
123
123
123
123
122
122
120
120
119
116
116
116
116
116
116
116
116
116
116
116
116
116
116
114
114
114
113
113
113
113
113
113
113
113
112
112
111
111
111
111
111
112
113
113
113
113
113
113
112
112
112
112
112
112
112
112
112
112
113
113
113
113
114
114
115
115
115
115
115
115
115
115
115
114
113
113
113
113
114
114
115
115
115
115
116
116
116
117
117
117
118
118
118
118
118
116
115
113
112
112
111
111
111
111
111
111
111
111
111
111
111
111
111
110