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