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