Line data Source code
1 : /* Generated automatically by the program `genextract'
2 : from the machine description file `md'. */
3 :
4 : #define IN_TARGET_CODE 1
5 : #include "config.h"
6 : #include "system.h"
7 : #include "coretypes.h"
8 : #include "tm.h"
9 : #include "rtl.h"
10 : #include "insn-config.h"
11 : #include "recog.h"
12 : #include "diagnostic-core.h"
13 :
14 : /* This variable is used as the "location" of any missing operand
15 : whose numbers are skipped by a given pattern. */
16 : static rtx junk ATTRIBUTE_UNUSED;
17 :
18 : /* The paths that locate the operands and the dups of each
19 : extraction method. A path is a sequence of steps down the
20 : pattern, one byte each: an even step S selects
21 : XVECEXP (x, 0, S / 2 - 1) and an odd step S selects
22 : XEXP (x, S / 2). A zero terminates a path, an empty path
23 : denotes the pattern itself, and 255 marks an operand number
24 : that the pattern does not use. */
25 : #define MISSING_OPERAND_STEP 255
26 :
27 : static const unsigned char extract_paths[] = {
28 : 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0, 6,
29 : 3, 1, 0, 6, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 2, 0, 2, 3, 1, 3,
30 : 0, 2, 3, 1, 1, 4, 0, 4, 1, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 3,
31 : 1, 2, 0, 4, 1, 5, 0, 2, 3, 1, 4, 0, 4, 1, 1, 0, 4, 3, 1, 1,
32 : 0, 4, 3, 1, 5, 0, 2, 3, 1, 2, 0, 4, 1, 5, 0, 2, 3, 1, 4, 0,
33 : 4, 1, 1, 0, 2, 1, 0, 2, 3, 2, 3, 0, 2, 3, 4, 0, 2, 3, 2, 1,
34 : 0, 1, 0, 3, 2, 3, 0, 3, 2, 1, 0, 2, 1, 0, 2, 3, 2, 0, 4, 3,
35 : 0, 2, 3, 4, 0, 4, 1, 0, 2, 3, 1, 2, 0, 4, 3, 3, 0, 2, 3, 3,
36 : 0, 2, 3, 1, 4, 0, 4, 1, 0, 4, 3, 1, 0, 2, 1, 0, 2, 3, 2, 0,
37 : 4, 3, 3, 0, 2, 3, 4, 0, 4, 1, 0, 4, 3, 1, 0, 2, 1, 0, 2, 3,
38 : 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0, 4, 1, 0, 2, 1, 0,
39 : 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0, 2, 3, 10, 0,
40 : 4, 1, 0, 2, 1, 0, 2, 3, 2, 0, 3, 2, 0, 3, 4, 0, 3, 6, 0, 3,
41 : 8, 0, 1, 0, 3, 1, 2, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 1, 1, 1,
42 : 2, 0, 3, 1, 1, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 3, 1, 0, 3,
43 : 1, 5, 0, 3, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 3, 1,
44 : 3, 1, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 3, 1, 0, 3, 2,
45 : 1, 1, 1, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 2, 3,
46 : 1, 0, 3, 2, 1, 1, 0, 3, 4, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0,
47 : 3, 1, 6, 0, 3, 5, 0, 3, 3, 0, 2, 3, 2, 0, 0, 2, 1, 0, 2, 3,
48 : 2, 0, 2, 3, 4, 0, 4, 3, 4, 0, 4, 3, 2, 0, 2, 1, 0, 2, 3, 2,
49 : 0, 0, 2, 2, 0, 2, 4, 0, 2, 6, 0, 2, 8, 0, 1, 0, 3, 1, 3, 1,
50 : 0, 3, 1, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 3, 1, 0, 3, 1,
51 : 1, 0, 0, 4, 1, 0, 0, 2, 1, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1,
52 : 4, 0, 3, 3, 0, 2, 1, 1, 2, 0, 4, 1, 0, 2, 1, 1, 4, 0, 2, 3,
53 : 4, 0, 2, 1, 1, 6, 0, 2, 1, 0, 2, 1, 1, 8, 0, 2, 3, 2, 0, 2,
54 : 1, 0, 4, 1, 0, 2, 3, 6, 1, 4, 0, 2, 3, 6, 1, 2, 0, 2, 3, 6,
55 : 1, 6, 0, 2, 3, 6, 0, 2, 3, 4, 0, 2, 1, 0, 2, 3, 2, 0, 4, 1,
56 : 0, 2, 3, 6, 1, 4, 0, 2, 3, 6, 1, 2, 0, 2, 3, 6, 1, 6, 0, 2,
57 : 3, 6, 0, 2, 3, 4, 0, 2, 1, 0, 4, 1, 0, 2, 3, 1, 4, 1, 2, 0,
58 : 2, 3, 1, 4, 1, 4, 0, 2, 3, 1, 8, 0, 2, 3, 1, 4, 1, 6, 0, 2,
59 : 3, 1, 4, 0, 2, 1, 0, 4, 1, 0, 2, 3, 1, 2, 0, 2, 3, 1, 4, 1,
60 : 2, 0, 2, 3, 1, 4, 1, 4, 0, 2, 3, 1, 8, 0, 2, 3, 1, 4, 1, 6,
61 : 0, 2, 3, 1, 4, 0, 2, 1, 0, 4, 1, 0, 2, 3, 4, 1, 2, 0, 2, 3,
62 : 4, 1, 4, 0, 2, 3, 8, 0, 2, 3, 4, 1, 6, 0, 2, 3, 4, 0, 2, 1,
63 : 0, 4, 1, 0, 2, 3, 2, 0, 2, 3, 4, 1, 2, 0, 2, 3, 4, 1, 4, 0,
64 : 2, 3, 8, 0, 2, 3, 4, 1, 6, 0, 2, 3, 4, 0, 1, 0, 3, 1, 2, 0,
65 : 3, 1, 4, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1,
66 : 4, 0, 3, 1, 3, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 2, 0, 3,
67 : 3, 0, 3, 5, 0, 1, 0, 3, 2, 0, 3, 6, 0, 3, 4, 0, 1, 0, 3, 2,
68 : 0, 3, 4, 0, 3, 6, 0, 1, 0, 3, 4, 0, 3, 2, 0, 1, 0, 3, 1, 2,
69 : 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 1, 4,
70 : 0, 3, 1, 2, 0, 3, 1, 6, 0, 3, 5, 0, 3, 3, 1, 0, 1, 0, 3, 1,
71 : 4, 0, 3, 1, 2, 0, 3, 1, 6, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 1,
72 : 1, 2, 0, 3, 3, 1, 2, 0, 1, 0, 3, 1, 0, 3, 3, 0, 1, 0, 3, 1,
73 : 1, 0, 3, 1, 3, 0, 3, 1, 3, 2, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3,
74 : 1, 0, 3, 3, 0, 3, 3, 2, 0, 0, 1, 0, 3, 2, 0, 3, 2, 1, 0, 3,
75 : 2, 3, 0, 1, 0, 3, 3, 1, 0, 3, 1, 1, 0, 3, 3, 3, 0, 3, 5, 1,
76 : 0, 3, 5, 3, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1, 0, 4,
77 : 1, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 3, 1, 1, 3, 1, 1, 0, 3, 1,
78 : 3, 1, 1, 1, 0, 3, 1, 3, 3, 1, 1, 0, 3, 3, 1, 1, 1, 1, 0, 3,
79 : 3, 1, 3, 1, 1, 0, 3, 3, 3, 1, 1, 1, 0, 3, 3, 3, 3, 1, 1, 0,
80 : 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 3, 1, 1, 0, 3, 3, 1, 1, 1, 0,
81 : 3, 3, 3, 1, 1, 0, 1, 0, 3, 1, 1, 1, 0, 3, 3, 1, 1, 0, 1, 0,
82 : 3, 1, 1, 1, 1, 1, 0, 3, 1, 1, 3, 1, 1, 0, 3, 3, 0, 3, 1, 3,
83 : 1, 1, 1, 0, 3, 1, 3, 3, 1, 1, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3,
84 : 1, 3, 1, 1, 0, 3, 3, 0, 4, 1, 0, 6, 1, 0, 2, 3, 2, 0, 2, 3,
85 : 4, 0, 2, 3, 6, 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6,
86 : 0, 4, 3, 6, 0, 4, 3, 4, 0, 4, 3, 2, 0, 2, 1, 0, 4, 1, 0, 2,
87 : 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 6, 3, 6, 0, 6, 3, 4, 0, 6,
88 : 3, 2, 0, 4, 3, 6, 0, 4, 3, 4, 0, 4, 3, 2, 0, 4, 1, 0, 6, 1,
89 : 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0, 2, 3, 10,
90 : 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0,
91 : 2, 3, 10, 0, 4, 3, 10, 0, 4, 3, 8, 0, 4, 3, 6, 0, 4, 3, 4, 0,
92 : 4, 3, 2, 0, 2, 1, 0, 4, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3,
93 : 6, 0, 2, 3, 8, 0, 2, 3, 10, 0, 6, 3, 10, 0, 6, 3, 8, 0, 6, 3,
94 : 6, 0, 6, 3, 4, 0, 6, 3, 2, 0, 4, 3, 10, 0, 4, 3, 8, 0, 4, 3,
95 : 6, 0, 4, 3, 4, 0, 4, 3, 2, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0,
96 : 3, 2, 3, 0, 3, 4, 1, 1, 0, 3, 4, 1, 3, 0, 3, 4, 3, 0, 3, 2,
97 : 1, 0, 3, 2, 3, 0, 3, 4, 1, 0, 3, 4, 3, 0, 1, 0, 3, 1, 1, 1,
98 : 0, 3, 1, 1, 3, 0, 3, 1, 3, 0, 3, 3, 0, 3, 3, 2, 0, 1, 0, 3,
99 : 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 3, 0, 1, 0, 3, 1, 1, 1, 1, 1,
100 : 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 1, 0, 3,
101 : 1, 1, 1, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 1, 0,
102 : 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 1, 3, 0, 3, 1, 3, 0, 3, 3,
103 : 0, 3, 3, 2, 0, 1, 0, 3, 4, 0, 3, 2, 0, 3, 6, 1, 1, 1, 0, 3,
104 : 6, 3, 0, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 1, 1, 1, 0, 3, 6,
105 : 1, 3, 0, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 1, 0, 3, 6, 1, 3,
106 : 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 4, 1, 0, 2, 3, 6, 0, 1,
107 : 0, 3, 1, 1, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 1, 1, 3, 1, 0, 3,
108 : 1, 1, 1, 3, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 1, 1, 1,
109 : 0, 3, 1, 1, 1, 1, 3, 1, 0, 3, 1, 1, 3, 0, 1, 0, 3, 1, 1, 1,
110 : 1, 1, 1, 1, 0, 3, 1, 1, 1, 1, 1, 3, 1, 0, 3, 3, 0, 3, 5, 0,
111 : 1, 0, 3, 1, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 1, 3, 1, 0, 1, 0,
112 : 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 3, 1, 1, 0, 3, 3, 1, 3, 0,
113 : 3, 1, 2, 5, 2, 0, 3, 1, 2, 5, 4, 0, 3, 3, 0, 3, 1, 2, 1, 0,
114 : 3, 1, 2, 3, 0, 3, 1, 2, 1, 0, 3, 1, 2, 5, 0, 3, 3, 0, 3, 1,
115 : 2, 3, 0, 1, 0, 3, 2, 5, 0, 3, 2, 1, 0, 3, 2, 3, 0, 1, 0, 3,
116 : 1, 2, 5, 2, 0, 3, 1, 2, 5, 4, 0, 3, 1, 2, 1, 0, 3, 1, 2, 3,
117 : 0, 1, 0, 3, 2, 5, 2, 0, 3, 2, 5, 4, 0, 3, 2, 1, 0, 3, 2, 3,
118 : 0, 1, 0, 3, 1, 1, 2, 0, 1, 0, 3, 1, 2, 1, 1, 0, 3, 1, 2, 1,
119 : 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0, 1, 0, 3, 1, 2, 1,
120 : 5, 2, 0, 3, 1, 2, 1, 5, 4, 0, 3, 1, 2, 1, 1, 0, 3, 1, 2, 1,
121 : 3, 0, 1, 0, 3, 1, 2, 1, 0, 3, 1, 2, 3, 0, 1, 0, 3, 2, 1, 5,
122 : 2, 0, 3, 2, 1, 5, 4, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0, 1, 0,
123 : 3, 1, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 1, 3, 1, 0, 3, 3, 0, 3,
124 : 5, 0, 3, 1, 1, 1, 3, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 3, 1, 1,
125 : 1, 3, 1, 0, 3, 1, 1, 3, 0, 1, 0, 3, 4, 0, 3, 6, 0, 1, 0, 3,
126 : 1, 1, 0, 3, 1, 3, 10, 0, 3, 1, 3, 12, 0, 3, 1, 3, 14, 0, 3, 1,
127 : 3, 16, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 0, 3, 3, 10, 0, 3, 3,
128 : 12, 0, 3, 3, 14, 0, 3, 3, 16, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 10,
129 : 0, 3, 1, 3, 12, 0, 3, 1, 3, 14, 0, 3, 1, 3, 16, 0, 3, 1, 3, 26,
130 : 0, 3, 1, 3, 28, 0, 3, 1, 3, 30, 0, 3, 1, 3, 32, 0, 3, 3, 0, 3,
131 : 5, 0, 1, 0, 3, 1, 0, 3, 3, 10, 0, 3, 3, 12, 0, 3, 3, 14, 0, 3,
132 : 3, 16, 0, 3, 3, 26, 0, 3, 3, 28, 0, 3, 3, 30, 0, 3, 3, 32, 0, 1,
133 : 0, 3, 1, 1, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4, 0, 3, 1, 3, 6, 0,
134 : 3, 1, 3, 8, 0, 3, 1, 3, 18, 0, 3, 1, 3, 20, 0, 3, 1, 3, 22, 0,
135 : 3, 1, 3, 24, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 0, 3, 3, 2, 0,
136 : 3, 3, 4, 0, 3, 3, 6, 0, 3, 3, 8, 0, 3, 3, 18, 0, 3, 3, 20, 0,
137 : 3, 3, 22, 0, 3, 3, 24, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 2, 0, 3,
138 : 1, 3, 4, 0, 3, 1, 3, 6, 0, 3, 1, 3, 8, 0, 3, 1, 3, 10, 0, 3,
139 : 1, 3, 12, 0, 3, 1, 3, 14, 0, 3, 1, 3, 16, 0, 3, 1, 3, 18, 0, 3,
140 : 1, 3, 20, 0, 3, 1, 3, 22, 0, 3, 1, 3, 24, 0, 3, 1, 3, 26, 0, 3,
141 : 1, 3, 28, 0, 3, 1, 3, 30, 0, 3, 1, 3, 32, 0, 3, 3, 0, 3, 5, 0,
142 : 1, 0, 3, 1, 0, 3, 3, 2, 0, 3, 3, 4, 0, 3, 3, 6, 0, 3, 3, 8,
143 : 0, 3, 3, 10, 0, 3, 3, 12, 0, 3, 3, 14, 0, 3, 3, 16, 0, 3, 3, 18,
144 : 0, 3, 3, 20, 0, 3, 3, 22, 0, 3, 3, 24, 0, 3, 3, 26, 0, 3, 3, 28,
145 : 0, 3, 3, 30, 0, 3, 3, 32, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 2, 0,
146 : 3, 1, 3, 4, 0, 3, 1, 3, 6, 0, 3, 1, 3, 8, 0, 3, 1, 3, 10, 0,
147 : 3, 1, 3, 12, 0, 3, 1, 3, 14, 0, 3, 1, 3, 16, 0, 3, 3, 0, 3, 5,
148 : 0, 1, 0, 3, 1, 0, 3, 3, 2, 0, 3, 3, 4, 0, 3, 3, 6, 0, 3, 3,
149 : 8, 0, 3, 3, 10, 0, 3, 3, 12, 0, 3, 3, 14, 0, 3, 3, 16, 0, 1, 0,
150 : 3, 1, 3, 1, 0, 3, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1,
151 : 0, 3, 1, 3, 1, 0, 3, 1, 5, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1,
152 : 0, 3, 3, 1, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 3,
153 : 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 1, 0,
154 : 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0,
155 : 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1,
156 : 0, 2, 3, 3, 0, 4, 2, 0, 1, 0, 3, 1, 0, 3, 3, 0, 3, 5, 2, 1,
157 : 0, 3, 5, 4, 0, 3, 5, 6, 0, 1, 0, 3, 1, 0, 3, 3, 0, 3, 5, 2,
158 : 0, 3, 5, 4, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 3, 1, 1, 0, 3,
159 : 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 3, 1,
160 : 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 0, 3, 5, 0, 3, 3, 0, 1,
161 : 0, 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1,
162 : 1, 3, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4, 0, 3, 3, 0, 3, 5, 0, 1,
163 : 0, 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4,
164 : 0, 3, 1, 3, 6, 0, 3, 1, 3, 8, 0, 3, 1, 3, 10, 0, 3, 1, 3, 12,
165 : 0, 3, 1, 3, 14, 0, 3, 1, 3, 16, 0, 3, 1, 3, 18, 0, 3, 1, 3, 20,
166 : 0, 3, 1, 3, 22, 0, 3, 1, 3, 24, 0, 3, 1, 3, 26, 0, 3, 1, 3, 28,
167 : 0, 3, 1, 3, 30, 0, 3, 1, 3, 32, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3,
168 : 1, 1, 0, 3, 1, 3, 0, 3, 3, 2, 0, 3, 3, 4, 0, 3, 3, 6, 0, 3,
169 : 3, 8, 0, 3, 3, 10, 0, 3, 3, 12, 0, 3, 3, 14, 0, 3, 3, 16, 0, 3,
170 : 3, 18, 0, 3, 3, 20, 0, 3, 3, 22, 0, 3, 3, 24, 0, 3, 3, 26, 0, 3,
171 : 3, 28, 0, 3, 3, 30, 0, 3, 3, 32, 0, 1, 0, 3, 2, 3, 0, 3, 2, 1,
172 : 1, 2, 0, 3, 2, 1, 1, 4, 0, 3, 4, 0, 1, 0, 3, 3, 0, 3, 1, 1,
173 : 2, 0, 3, 1, 1, 4, 0, 1, 0, 3, 2, 3, 0, 3, 2, 1, 1, 2, 0, 3,
174 : 2, 1, 1, 4, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 1, 0,
175 : 3, 2, 3, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 4, 0, 1, 0, 3,
176 : 3, 0, 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 3, 1, 3, 0, 3, 1, 5, 0,
177 : 1, 0, 3, 3, 0, 3, 1, 2, 0, 3, 1, 4, 0, 1, 0, 3, 2, 1, 1, 2,
178 : 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 1, 6, 0, 3, 2, 1, 1, 8, 0, 3,
179 : 2, 5, 0, 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1,
180 : 2, 0, 3, 1, 1, 4, 0, 3, 1, 1, 6, 0, 3, 1, 1, 8, 0, 3, 5, 0,
181 : 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 2, 0, 3, 2, 1, 1, 4,
182 : 0, 3, 2, 1, 1, 6, 0, 3, 2, 1, 1, 8, 0, 3, 2, 1, 3, 0, 3, 2,
183 : 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1,
184 : 4, 0, 3, 1, 1, 6, 0, 3, 1, 1, 8, 0, 3, 1, 3, 0, 3, 1, 5, 0,
185 : 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 0,
186 : 3, 2, 1, 8, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 2, 0, 3, 1,
187 : 4, 0, 3, 1, 6, 0, 3, 1, 8, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0,
188 : 3, 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 2, 1, 8, 0, 3, 2, 5, 0, 3,
189 : 4, 0, 3, 2, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2,
190 : 1, 6, 0, 3, 2, 1, 8, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1,
191 : 0, 3, 2, 2, 0, 3, 2, 4, 0, 3, 2, 6, 0, 3, 2, 8, 0, 3, 4, 0,
192 : 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 1, 8, 0, 3, 5,
193 : 0, 3, 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 3, 1, 0, 3, 3,
194 : 3, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 1, 8, 0,
195 : 3, 3, 0, 3, 5, 0, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 0, 3, 8, 0,
196 : 1, 0, 3, 1, 1, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4, 0, 3, 1, 3, 6,
197 : 0, 3, 1, 3, 8, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 0, 3, 1,
198 : 3, 2, 0, 3, 1, 3, 4, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 0,
199 : 3, 1, 3, 0, 3, 3, 0, 3, 3, 2, 0, 1, 0, 3, 3, 0, 3, 1, 1, 0,
200 : 1, 0, 3, 3, 1, 0, 3, 1, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3,
201 : 3, 2, 0, 3, 3, 4, 0, 3, 3, 6, 0, 3, 3, 8, 0, 1, 0, 3, 1, 1,
202 : 1, 0, 3, 1, 1, 3, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4, 0, 3, 1, 3,
203 : 6, 0, 3, 1, 3, 8, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 0,
204 : 3, 1, 1, 3, 0, 3, 1, 3, 2, 0, 3, 1, 3, 4, 0, 3, 1, 3, 6, 0,
205 : 3, 1, 3, 8, 0, 3, 1, 3, 10, 0, 3, 1, 3, 12, 0, 3, 1, 3, 14, 0,
206 : 3, 1, 3, 16, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3,
207 : 0, 3, 3, 2, 0, 3, 3, 4, 0, 3, 3, 6, 0, 3, 3, 8, 0, 3, 3, 10,
208 : 0, 3, 3, 12, 0, 3, 3, 14, 0, 3, 3, 16, 0, 1, 0, 3, 1, 1, 1, 0,
209 : 3, 3, 0, 3, 5, 0, 3, 1, 1, 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3,
210 : 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 3, 0, 3, 5, 0, 2,
211 : 1, 0, 2, 3, 5, 0, 2, 3, 1, 0, 2, 3, 3, 0, 4, 2, 0, 1, 0, 3,
212 : 5, 0, 3, 1, 0, 3, 3, 0, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 1, 1,
213 : 1, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 1, 3, 0, 3,
214 : 1, 1, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1,
215 : 5, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 1, 0, 3, 1, 5, 0, 1, 0,
216 : 3, 1, 1, 2, 0, 3, 1, 5, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 3, 1,
217 : 0, 3, 1, 5, 0, 1, 0, 3, 1, 2, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0,
218 : 3, 1, 2, 1, 1, 0, 3, 1, 4, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1,
219 : 1, 1, 0, 4, 1, 0, 1, 0, 3, 2, 1, 1, 1, 1, 1, 0, 3, 2, 3, 0,
220 : 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 1, 0, 3, 2, 1, 1, 1,
221 : 1, 0, 3, 2, 3, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 3, 3,
222 : 0, 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 3, 0,
223 : 1, 0, 3, 2, 1, 1, 0, 3, 4, 0, 1, 0, 3, 1, 2, 2, 0, 3, 1, 4,
224 : 0, 1, 0, 3, 1, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 2, 3, 0,
225 : 3, 2, 1, 1, 1, 0, 3, 4, 0, 1, 0, 3, 3, 0, 3, 1, 1, 1, 0, 1,
226 : 0, 3, 1, 2, 0, 1, 0, 3, 1, 2, 2, 1, 0, 3, 1, 4, 0, 1, 0, 3,
227 : 1, 2, 1, 0, 1, 0, 3, 2, 2, 1, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1,
228 : 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3,
229 : 1, 3, 1, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2,
230 : 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 2, 2, 0, 3, 4, 0, 1, 0,
231 : 3, 2, 1, 1, 2, 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 3, 0, 3, 2, 1,
232 : 5, 2, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1,
233 : 4, 0, 3, 1, 3, 0, 3, 1, 5, 2, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1,
234 : 2, 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 1, 6, 0, 3, 2, 1, 5, 2, 0,
235 : 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3,
236 : 1, 1, 4, 0, 3, 1, 1, 6, 0, 3, 1, 5, 2, 0, 3, 1, 3, 0, 3, 3,
237 : 0, 1, 0, 3, 2, 1, 1, 2, 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 1, 6,
238 : 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 2, 0, 3, 4, 0, 3, 2, 3, 0, 1,
239 : 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 4, 0, 3,
240 : 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 3, 1, 1, 6, 0,
241 : 3, 1, 3, 0, 3, 1, 5, 2, 0, 3, 3, 0, 1, 0, 3, 1, 2, 0, 3, 1,
242 : 4, 0, 3, 1, 6, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4,
243 : 0, 3, 2, 3, 0, 3, 2, 5, 2, 0, 3, 4, 0, 1, 0, 3, 1, 2, 0, 3,
244 : 1, 4, 0, 3, 3, 0, 3, 5, 2, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1,
245 : 4, 0, 3, 2, 1, 6, 0, 3, 2, 5, 2, 0, 3, 4, 0, 3, 2, 3, 0, 1,
246 : 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 5, 2, 0, 3, 3, 0,
247 : 1, 0, 3, 2, 0, 3, 4, 1, 0, 3, 6, 0, 1, 0, 3, 2, 1, 2, 0, 3,
248 : 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 2, 3, 0, 3, 2, 5, 2, 0, 3, 4,
249 : 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 3, 0, 3, 5,
250 : 2, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 1, 0, 3, 3,
251 : 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 1, 0, 3, 3, 0, 1,
252 : 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2,
253 : 1, 1, 3, 0, 3, 2, 1, 1, 1, 1, 0, 3, 2, 1, 1, 5, 1, 0, 3, 2,
254 : 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1,
255 : 3, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 5, 1, 0, 3, 1, 3, 0, 3, 1,
256 : 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 1, 1, 0,
257 : 3, 2, 1, 1, 5, 1, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 1, 3, 0,
258 : 3, 2, 3, 0, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1,
259 : 5, 1, 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1,
260 : 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 5, 1, 0, 3, 2, 1, 5,
261 : 0, 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 1,
262 : 0, 3, 1, 1, 3, 0, 3, 1, 1, 5, 1, 0, 3, 1, 5, 0, 3, 1, 3, 0,
263 : 3, 3, 0, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 1, 1, 0, 3, 2,
264 : 1, 1, 5, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 3,
265 : 0, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 5, 0, 3,
266 : 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2,
267 : 1, 1, 1, 1, 0, 3, 2, 1, 1, 5, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3,
268 : 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 1, 1,
269 : 0, 3, 1, 1, 5, 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3,
270 : 2, 1, 1, 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 5, 0, 3, 2,
271 : 1, 5, 0, 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1,
272 : 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 5, 0, 3, 1, 5, 0, 3, 1, 3,
273 : 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2,
274 : 1, 1, 5, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2,
275 : 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 5, 1, 0,
276 : 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3,
277 : 2, 1, 1, 3, 0, 3, 2, 1, 1, 5, 1, 0, 3, 2, 1, 5, 0, 3, 4, 0,
278 : 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 3,
279 : 0, 3, 1, 1, 5, 1, 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0,
280 : 3, 2, 1, 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 5, 1, 0, 3,
281 : 2, 1, 5, 0, 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1,
282 : 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 5, 1, 0, 3, 1, 5, 0, 3, 1,
283 : 3, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 1, 3, 0, 3,
284 : 2, 1, 1, 5, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2,
285 : 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 1, 5, 0, 3,
286 : 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2,
287 : 1, 1, 3, 0, 3, 2, 1, 1, 5, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2,
288 : 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 3, 0, 3,
289 : 1, 1, 5, 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 2, 1,
290 : 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 1, 5, 0, 3, 2, 1, 5, 0,
291 : 3, 4, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3,
292 : 1, 1, 3, 0, 3, 1, 1, 5, 0, 3, 1, 5, 0, 3, 1, 3, 0, 3, 3, 0,
293 : 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 1, 0, 3,
294 : 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5,
295 : 1, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2,
296 : 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3,
297 : 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0,
298 : 3, 2, 1, 5, 1, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 0, 3,
299 : 1, 3, 0, 3, 1, 5, 1, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2,
300 : 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1,
301 : 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3,
302 : 2, 1, 4, 0, 3, 2, 1, 6, 1, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2, 3,
303 : 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 1, 0, 3, 5, 0, 3,
304 : 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 1, 0,
305 : 3, 2, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4,
306 : 0, 3, 1, 6, 1, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3,
307 : 2, 1, 4, 0, 3, 2, 1, 6, 1, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4,
308 : 0, 1, 0, 3, 2, 2, 0, 3, 2, 4, 0, 3, 2, 6, 1, 0, 3, 4, 0, 1,
309 : 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 1, 0, 3, 3, 0, 3, 5, 0,
310 : 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 0, 1, 0, 3, 2, 1, 2, 0, 3,
311 : 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2, 3, 0,
312 : 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 5, 0, 3, 3, 0,
313 : 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 2, 5,
314 : 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1,
315 : 6, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0,
316 : 3, 2, 1, 6, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 1,
317 : 2, 0, 3, 1, 4, 0, 3, 1, 6, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 2,
318 : 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 1, 0, 3, 2, 5, 0, 3,
319 : 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5,
320 : 1, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3,
321 : 0, 3, 2, 1, 5, 1, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0,
322 : 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 1, 0, 3, 5, 0, 3, 3, 0,
323 : 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 1, 0, 3,
324 : 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3,
325 : 0, 3, 1, 5, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 2, 1, 1, 0, 3,
326 : 2, 3, 0, 3, 2, 5, 1, 0, 3, 4, 0, 1, 0, 3, 1, 1, 0, 3, 3, 0,
327 : 3, 5, 1, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1,
328 : 5, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0,
329 : 3, 1, 3, 0, 3, 1, 5, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1,
330 : 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 2, 5, 0, 3, 4, 0, 3,
331 : 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 5,
332 : 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1,
333 : 5, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1, 0,
334 : 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 2, 1, 1,
335 : 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 1, 0, 3, 2, 5, 0, 3, 4, 0, 3,
336 : 2, 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 1, 0, 3, 5,
337 : 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5,
338 : 1, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 0, 3,
339 : 1, 3, 0, 3, 1, 5, 1, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1,
340 : 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 1, 0, 3, 2, 3, 0, 3, 2, 5, 0,
341 : 3, 4, 0, 1, 0, 3, 2, 1, 0, 3, 2, 3, 0, 3, 2, 5, 1, 0, 3, 4,
342 : 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 1, 0, 3, 3, 0, 3,
343 : 5, 0, 1, 0, 3, 1, 0, 3, 3, 0, 3, 5, 1, 0, 1, 0, 3, 2, 1, 1,
344 : 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 2, 5, 0, 3, 4, 0, 3, 2,
345 : 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 5, 0, 3,
346 : 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3,
347 : 2, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0,
348 : 3, 1, 5, 0, 3, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1,
349 : 3, 0, 3, 2, 1, 5, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0,
350 : 3, 2, 1, 0, 3, 2, 3, 0, 3, 2, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1,
351 : 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 1, 1,
352 : 1, 0, 3, 1, 3, 0, 3, 3, 0, 3, 5, 0, 3, 2, 2, 1, 1, 0, 3, 2,
353 : 2, 3, 1, 0, 3, 4, 0, 3, 2, 1, 1, 0, 3, 2, 3, 1, 0, 3, 2, 1,
354 : 1, 0, 3, 2, 3, 1, 0, 3, 4, 0, 3, 1, 1, 0, 3, 3, 1, 0, 3, 2,
355 : 2, 2, 1, 0, 3, 2, 2, 4, 1, 0, 3, 4, 0, 3, 2, 2, 1, 0, 3, 2,
356 : 4, 1, 0, 3, 2, 2, 1, 0, 3, 2, 4, 1, 0, 3, 4, 0, 3, 2, 1, 0,
357 : 3, 4, 1, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6,
358 : 0, 3, 2, 3, 1, 0, 3, 4, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3,
359 : 1, 6, 0, 3, 3, 1, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3,
360 : 2, 1, 6, 0, 3, 4, 0, 1, 0, 3, 2, 1, 0, 3, 2, 3, 0, 3, 4, 0,
361 : 3, 6, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 3, 0, 2, 1, 0, 2,
362 : 3, 1, 2, 0, 2, 3, 1, 4, 0, 2, 3, 1, 6, 0, 4, 1, 0, 4, 3, 6,
363 : 0, 4, 3, 4, 0, 4, 3, 2, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3,
364 : 1, 6, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 0,
365 : 3, 2, 3, 0, 3, 4, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 1, 6,
366 : 0, 3, 3, 0, 1, 0, 3, 2, 2, 0, 3, 2, 4, 0, 3, 2, 6, 0, 3, 4,
367 : 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 0, 3, 3, 0, 1, 0, 3,
368 : 1, 0, 3, 3, 0, 3, 5, 2, 1, 1, 0, 3, 5, 4, 0, 3, 5, 6, 0, 1,
369 : 0, 3, 1, 0, 3, 3, 0, 3, 5, 1, 2, 0, 3, 5, 1, 4, 0, 3, 5, 1,
370 : 6, 0, 1, 0, 3, 2, 1, 1, 2, 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 1,
371 : 6, 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1,
372 : 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 1, 6, 0, 3, 4, 0, 3,
373 : 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1, 4, 0, 3, 1, 1, 6, 0,
374 : 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4,
375 : 0, 3, 1, 6, 0, 3, 3, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 3, 1, 1,
376 : 1, 0, 3, 1, 1, 3, 1, 0, 3, 1, 3, 1, 1, 0, 3, 1, 3, 3, 1, 0,
377 : 3, 3, 1, 3, 1, 0, 3, 3, 3, 1, 1, 0, 3, 3, 3, 3, 1, 0, 1, 0,
378 : 3, 1, 1, 1, 1, 1, 0, 3, 1, 3, 1, 1, 1, 0, 3, 1, 1, 1, 3, 1,
379 : 0, 3, 1, 1, 3, 1, 1, 0, 3, 1, 1, 3, 3, 1, 0, 3, 1, 3, 1, 3,
380 : 1, 0, 3, 1, 3, 3, 1, 1, 0, 3, 1, 3, 3, 3, 1, 0, 3, 3, 1, 1,
381 : 1, 1, 0, 3, 3, 1, 1, 3, 1, 0, 3, 3, 1, 3, 1, 1, 0, 3, 3, 1,
382 : 3, 3, 1, 0, 3, 3, 3, 1, 1, 1, 0, 3, 3, 3, 1, 3, 1, 0, 3, 3,
383 : 3, 3, 1, 1, 0, 3, 3, 3, 3, 3, 1, 0, 1, 0, 3, 1, 1, 1, 1, 0,
384 : 3, 1, 3, 1, 1, 0, 3, 1, 1, 3, 1, 0, 3, 1, 3, 3, 1, 0, 3, 3,
385 : 1, 1, 1, 0, 3, 3, 1, 3, 1, 0, 3, 3, 3, 1, 1, 0, 3, 3, 3, 3,
386 : 1, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 3, 1, 0, 3, 3, 3, 0,
387 : 1, 0, 3, 2, 1, 1, 2, 0, 3, 2, 1, 1, 4, 0, 3, 2, 1, 3, 0, 3,
388 : 2, 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2,
389 : 1, 4, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 2, 0, 3, 1, 1,
390 : 4, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 1, 2, 0, 3,
391 : 1, 4, 0, 3, 3, 0, 1, 0, 3, 1, 1, 2, 1, 0, 3, 1, 1, 4, 0, 3,
392 : 3, 0, 1, 0, 3, 2, 1, 2, 0, 3, 2, 1, 4, 0, 3, 2, 3, 0, 3, 2,
393 : 5, 0, 3, 4, 0, 1, 0, 3, 1, 2, 0, 3, 1, 4, 0, 3, 3, 0, 3, 5,
394 : 0, 1, 0, 3, 2, 2, 0, 3, 2, 4, 0, 3, 4, 0, 1, 0, 3, 1, 0, 3,
395 : 1, 1, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1, 1, 0, 3, 1, 1, 1,
396 : 0, 3, 1, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1, 0, 3, 3, 0, 3, 5, 2,
397 : 0, 3, 5, 4, 0, 3, 5, 6, 0, 1, 0, 3, 1, 1, 1, 2, 0, 3, 3, 0,
398 : 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 2, 1, 1, 1, 1, 0, 3, 2, 3,
399 : 0, 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1,
400 : 1, 0, 3, 3, 0, 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 2, 1, 1, 1,
401 : 0, 3, 2, 3, 0, 3, 4, 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 3, 0,
402 : 3, 2, 1, 3, 0, 3, 2, 1, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1, 1, 0,
403 : 3, 3, 0, 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2,
404 : 3, 0, 3, 4, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 3, 0, 3, 2, 5, 0,
405 : 3, 4, 0, 1, 0, 3, 1, 1, 0, 3, 3, 0, 3, 5, 0, 1, 0, 3, 2, 1,
406 : 0, 3, 4, 0, 1, 0, 3, 1, 1, 2, 0, 3, 3, 0, 3, 1, 3, 0, 3, 1,
407 : 5, 0, 1, 0, 3, 1, 1, 2, 0, 3, 3, 0, 1, 0, 3, 1, 2, 0, 3, 3,
408 : 0, 1, 0, 3, 2, 1, 1, 1, 0, 3, 2, 1, 1, 3, 0, 3, 2, 1, 3, 0,
409 : 3, 2, 1, 5, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3,
410 : 1, 1, 3, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 2, 1,
411 : 1, 0, 3, 2, 1, 3, 0, 3, 4, 0, 3, 2, 3, 0, 1, 0, 3, 1, 1, 0,
412 : 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 3, 0,
413 : 3, 3, 0, 1, 0, 3, 2, 1, 1, 0, 3, 2, 1, 3, 0, 3, 2, 3, 0, 3,
414 : 2, 5, 0, 3, 4, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 3, 0, 3,
415 : 5, 0, 1, 0, 3, 2, 1, 0, 3, 2, 3, 0, 3, 4, 0, 2, 1, 0, 2, 3,
416 : 1, 1, 1, 0, 2, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 0,
417 : 2, 3, 5, 0, 2, 3, 1, 1, 0, 2, 3, 1, 0, 2, 3, 1, 1, 0, 2, 3,
418 : 3, 1, 0, 2, 1, 0, 2, 3, 0, 2, 3, 1, 0, 1, 0, 3, 1, 0, 3, 5,
419 : 0, 3, 3, 0, 1, 0, 3, 3, 1, 0, 3, 1, 1, 0, 3, 5, 0, 1, 0, 3,
420 : 1, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 3, 3, 0, 1, 0, 3, 3, 0,
421 : 3, 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 1, 2, 0, 3, 3,
422 : 0, 3, 5, 1, 0, 1, 0, 3, 1, 2, 0, 3, 3, 0, 3, 5, 0, 2, 1, 0,
423 : 2, 3, 0, 4, 2, 0, 1, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 0, 1,
424 : 0, 3, 1, 1, 0, 3, 1, 3, 0, 3, 3, 2, 0, 3, 3, 4, 0, 1, 0, 3,
425 : 1, 0, 3, 3, 2, 0, 3, 3, 4, 0, 1, 0, 3, 1, 0, 3, 3, 2, 0, 3,
426 : 3, 4, 0, 3, 3, 6, 0, 3, 3, 8, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3,
427 : 2, 0, 1, 0, 3, 1, 0, 3, 3, 2, 0, 1, 0, 3, 3, 0, 3, 1, 1, 0,
428 : 3, 5, 0, 1, 0, 3, 3, 0, 3, 5, 0, 3, 1, 0, 1, 0, 3, 2, 0, 3,
429 : 4, 0, 3, 6, 1, 1, 1, 0, 3, 6, 1, 1, 3, 0, 3, 6, 1, 3, 0, 1,
430 : 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 1, 0, 3, 6, 1, 3, 0, 3, 6, 3,
431 : 0, 1, 0, 3, 0, 3, 1, 0, 3, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 3,
432 : 1, 1, 0, 1, 0, 3, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 3, 1, 0, 1,
433 : 0, 3, 1, 1, 1, 1, 0, 3, 1, 3, 1, 1, 0, 3, 3, 1, 1, 1, 0, 3,
434 : 3, 3, 1, 1, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 3, 1, 0, 1,
435 : 0, 3, 3, 0, 3, 1, 0, 1, 0, 3, 1, 1, 1, 0, 1, 0, 3, 3, 0, 3,
436 : 1, 0, 3, 5, 0, 1, 0, 3, 4, 0, 3, 2, 0, 3, 6, 0, 1, 0, 3, 1,
437 : 1, 1, 0, 3, 3, 1, 1, 0, 3, 3, 1, 3, 2, 0, 3, 3, 3, 3, 2, 0,
438 : 3, 1, 3, 1, 0, 3, 3, 3, 1, 0, 1, 0, 3, 1, 1, 0, 3, 3, 1, 0,
439 : 1, 0, 3, 1, 1, 1, 0, 3, 3, 1, 1, 0, 3, 1, 3, 1, 0, 3, 3, 3,
440 : 1, 0, 1, 0, 3, 1, 1, 0, 3, 1, 3, 2, 0, 3, 3, 3, 2, 0, 3, 3,
441 : 1, 0, 1, 0, 3, 1, 1, 1, 0, 3, 3, 1, 1, 0, 3, 1, 1, 3, 2, 0,
442 : 3, 1, 3, 3, 2, 0, 3, 3, 1, 3, 2, 0, 3, 3, 3, 3, 2, 0, 3, 1,
443 : 3, 1, 0, 3, 3, 3, 1, 0, 3, 2, 0, 3, 4, 0, 1, 1, 0, 3, 2, 0,
444 : 2, 1, 0, 4, 1, 0, 2, 3, 2, 0, 4, 1, 0, 2, 3, 3, 1, 0, 4, 3,
445 : 2, 0, 3, 2, 0, 3, 4, 0, 3, 6, 0, 2, 2, 0, 2, 0, 4, 0, 6, 0,
446 : 2, 1, 0, 4, 1, 0, 6, 1, 0, 2, 1, 0, 4, 1, 0, 1, 0, 3, 1, 2,
447 : 0, 3, 1, 4, 0, 1, 0, 5, 0, 2, 1, 0, 4, 1, 0, 4, 3, 1, 0, 2,
448 : 3, 2, 0, 2, 1, 0, 4, 1, 0, 4, 3, 0, 2, 3, 2, 0, 2, 1, 0, 2,
449 : 3, 2, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0,
450 : 2, 3, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 3,
451 : 0, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 1, 0, 3, 6, 3, 0, 1, 0, 3,
452 : 1, 1, 0, 3, 1, 3, 0, 3, 1, 5, 0, 1, 0, 3, 1, 0, 3, 3, 1, 0,
453 : 3, 5, 1, 0, 1, 0, 3, 1, 0, 3, 3, 0, 3, 5, 0, 2, 1, 0, 4, 1,
454 : 0, 2, 3, 4, 0, 2, 3, 6, 0, 2, 3, 8, 0, 2, 3, 2, 1, 0, 6, 1,
455 : 0, 8, 1, 0, 10, 1, 0, 4, 1, 0, 2, 3, 3, 1, 1, 0, 2, 3, 3, 3,
456 : 1, 0, 2, 3, 1, 1, 0, 8, 1, 0, 10, 1, 0, 12, 1, 0, 6, 1, 0, 2,
457 : 3, 1, 1, 0, 2, 3, 3, 1, 0, 4, 1, 0, 4, 1, 0, 2, 1, 0, 8, 1,
458 : 0, 4, 3, 1, 0, 4, 3, 3, 0, 10, 1, 0, 6, 1, 1, 0, 4, 1, 0, 2,
459 : 1, 0, 8, 1, 0, 4, 3, 3, 0, 4, 3, 1, 1, 0, 10, 1, 0, 6, 1, 1,
460 : 0, 4, 1, 0, 2, 1, 1, 0, 2, 3, 0, 4, 3, 1, 0, 4, 1, 0, 6, 1,
461 : 0, 2, 1, 0, 4, 3, 1, 0, 6, 3, 1, 0, 4, 3, 3, 0, 10, 1, 0, 8,
462 : 1, 1, 0, 8, 3, 1, 0, 6, 3, 3, 0, 4, 1, 0, 6, 1, 0, 2, 1, 0,
463 : 4, 3, 3, 0, 6, 3, 3, 0, 4, 3, 1, 1, 0, 10, 1, 0, 8, 1, 1, 0,
464 : 8, 3, 1, 0, 6, 3, 1, 1, 0, 4, 1, 0, 6, 1, 0, 2, 1, 1, 0, 2,
465 : 3, 1, 0, 6, 3, 1, 0, 4, 3, 1, 0, 2, 1, 0, 2, 3, 2, 0, 4, 1,
466 : 0, 6, 1, 0, 8, 1, 0, 2, 1, 0, 2, 3, 2, 0, 4, 1, 0, 6, 1, 0,
467 : 2, 1, 0, 4, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 4, 3, 4, 0, 4, 3,
468 : 2, 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 4, 1, 0, 2, 1, 0, 2,
469 : 3, 4, 0, 2, 3, 2, 0, 4, 1, 0, 2, 1, 0, 4, 1, 0, 4, 3, 2, 0,
470 : 2, 3, 0, 2, 1, 0, 4, 1, 0, 2, 3, 2, 0, 4, 3, 2, 0, 2, 1, 0,
471 : 4, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 6, 3, 4, 0, 6, 3, 2, 0, 4,
472 : 3, 4, 0, 4, 3, 2, 0, 1, 0, 3, 1, 1, 0, 3, 3, 1, 0, 3, 0, 1,
473 : 0, 3, 1, 0, 3, 3, 1, 0, 3, 0, 1, 0, 3, 1, 1, 0, 3, 3, 0, 3,
474 : 0, 2, 1, 0, 2, 3, 3, 1, 2, 0, 2, 3, 1, 2, 0, 2, 3, 1, 4, 0,
475 : 2, 1, 0, 2, 3, 3, 1, 2, 0, 2, 3, 1, 6, 0, 2, 3, 1, 2, 0, 2,
476 : 3, 1, 4, 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6, 0, 1,
477 : 0, 3, 1, 0, 3, 3, 1, 2, 0, 2, 1, 0, 2, 3, 1, 3, 0, 2, 1, 0,
478 : 2, 3, 3, 0, 2, 1, 0, 2, 3, 1, 2, 0, 2, 3, 1, 4, 0, 2, 3, 3,
479 : 1, 2, 0, 4, 1, 0, 6, 1, 0, 2, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3,
480 : 1, 1, 3, 0, 2, 3, 3, 0, 6, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2,
481 : 3, 3, 0, 6, 1, 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 4, 1, 0,
482 : 6, 1, 0, 2, 1, 0, 4, 2, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 3,
483 : 0, 2, 3, 3, 0, 6, 1, 0, 2, 1, 0, 4, 2, 0, 2, 3, 1, 1, 0, 2,
484 : 3, 3, 0, 6, 1, 0, 2, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 2, 3, 6,
485 : 0, 4, 1, 0, 6, 1, 0, 2, 3, 2, 0, 4, 1, 0, 2, 1, 0, 2, 3, 1,
486 : 1, 0, 2, 3, 3, 1, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1,
487 : 0, 2, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 3, 0, 2, 1, 0, 2, 3, 1,
488 : 0, 2, 3, 3, 0, 2, 3, 5, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1, 1,
489 : 1, 3, 0, 2, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1, 1, 1, 3, 0, 4, 1,
490 : 0, 2, 3, 1, 3, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 3, 3, 3, 0,
491 : 2, 3, 1, 3, 3, 1, 0, 2, 1, 0, 2, 3, 3, 1, 0, 2, 3, 1, 1, 0,
492 : 2, 3, 3, 3, 3, 0, 2, 3, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0,
493 : 6, 2, 0, 2, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 3,
494 : 0, 4, 1, 0, 2, 3, 1, 1, 1, 0, 6, 2, 0, 4, 3, 1, 1, 0, 4, 3,
495 : 3, 0, 2, 3, 1, 3, 0, 4, 1, 0, 2, 3, 1, 1, 1, 0, 4, 3, 1, 1,
496 : 0, 4, 3, 3, 0, 2, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3,
497 : 3, 0, 4, 1, 0, 2, 3, 1, 2, 0, 2, 3, 1, 4, 0, 2, 1, 0, 2, 3,
498 : 2, 0, 4, 2, 0, 2, 1, 0, 2, 3, 2, 0, 2, 1, 0, 2, 3, 1, 1, 3,
499 : 1, 0, 2, 1, 0, 2, 3, 1, 1, 3, 1, 1, 0, 2, 1, 0, 2, 3, 1, 3,
500 : 1, 0, 2, 1, 0, 2, 3, 1, 3, 1, 1, 0, 2, 1, 0, 2, 3, 3, 1, 0,
501 : 4, 1, 0, 2, 3, 1, 0, 4, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0,
502 : 4, 2, 0, 2, 1, 0, 2, 3, 1, 1, 1, 0, 4, 2, 0, 2, 1, 0, 2, 3,
503 : 1, 1, 1, 0, 2, 1, 0, 2, 3, 1, 0, 4, 2, 0, 4, 1, 0, 2, 3, 1,
504 : 0, 6, 2, 0, 4, 3, 1, 0, 4, 1, 0, 2, 3, 1, 0, 4, 3, 1, 0, 1,
505 : 0, 3, 2, 1, 0, 2, 1, 0, 2, 3, 2, 1, 0, 2, 1, 0, 2, 0, 4, 0,
506 : 4, 1, 0, 2, 0, 1, 0, 3, 2, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3,
507 : 3, 0, 4, 3, 3, 0, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 1, 1, 3, 0,
508 : 3, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 3, 0, 2, 1, 1, 0, 2, 3, 0,
509 : 4, 3, 3, 0, 1, 1, 1, 1, 0, 1, 1, 1, 3, 0, 3, 0, 1, 1, 1, 0,
510 : 3, 0, 2, 3, 0, 4, 1, 1, 0, 3, 0, 3, 1, 0, 3, 3, 1, 0, 3, 1,
511 : 0, 1, 0, 3, 2, 0, 3, 4, 0, 3, 6, 0, 1, 0, 3, 1, 0, 3, 3, 0,
512 : 3, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 5, 1, 1, 0, 2, 3, 5, 1, 3,
513 : 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 5, 0, 2, 1, 0, 2, 3, 1,
514 : 1, 1, 0, 2, 3, 1, 1, 3, 0, 2, 1, 0, 2, 3, 1, 1, 1, 1, 0, 2,
515 : 3, 1, 1, 1, 3, 0, 2, 1, 1, 0, 2, 3, 1, 0, 2, 3, 5, 0, 2, 1,
516 : 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 5, 0, 2, 3, 3, 0, 2, 3, 5,
517 : 0, 2, 3, 1, 0, 2, 3, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 5,
518 : 1, 1, 0, 2, 3, 1, 1, 5, 1, 3, 0, 2, 3, 3, 1, 0, 2, 3, 1, 0,
519 : 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 5, 1, 0, 2, 3, 1, 1, 5, 3, 0,
520 : 2, 3, 3, 1, 0, 2, 3, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 5,
521 : 0, 2, 3, 3, 1, 0, 3, 3, 1, 0, 3, 3, 5, 1, 1, 0, 3, 3, 5, 1,
522 : 3, 0, 3, 3, 1, 0, 3, 3, 5, 0, 2, 1, 1, 0, 2, 1, 5, 0, 2, 3,
523 : 1, 1, 0, 2, 3, 1, 5, 0, 2, 1, 1, 0, 2, 1, 5, 0, 2, 1, 0, 2,
524 : 3, 3, 0, 2, 3, 1, 1, 3, 0, 2, 1, 0, 2, 3, 1, 3, 1, 0, 2, 3,
525 : 1, 3, 3, 0, 2, 3, 3, 0, 2, 1, 0, 2, 3, 1, 3, 1, 1, 0, 2, 3,
526 : 1, 3, 1, 3, 0, 2, 3, 3, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1, 3,
527 : 0, 4, 1, 0, 2, 3, 2, 1, 0, 4, 3, 1, 0, 2, 1, 0, 2, 3, 1, 0,
528 : 2, 3, 3, 0, 6, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0,
529 : 2, 3, 3, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 3, 0, 2, 3, 3, 1,
530 : 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 1, 3, 0, 2, 3, 3, 1, 1, 0,
531 : 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1, 0, 2, 3, 1, 3, 0, 2, 3,
532 : 3, 3, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1, 0, 2, 3, 1,
533 : 3, 0, 2, 3, 3, 3, 3, 0, 2, 1, 0, 2, 3, 3, 1, 0, 2, 3, 1, 3,
534 : 0, 2, 3, 1, 1, 0, 2, 3, 3, 3, 3, 0, 2, 1, 0, 2, 3, 3, 1, 0,
535 : 2, 3, 1, 3, 0, 2, 3, 3, 3, 0, 2, 3, 1, 1, 0, 1, 0, 3, 3, 1,
536 : 0, 3, 1, 3, 0, 3, 3, 3, 0, 3, 1, 1, 0, 2, 1, 0, 2, 3, 1, 1,
537 : 0, 2, 3, 3, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 3, 1, 3, 0, 1,
538 : 0, 3, 1, 1, 0, 3, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 3, 1, 3, 0,
539 : 2, 1, 0, 2, 3, 3, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 3, 1, 3,
540 : 0, 2, 3, 1, 1, 0, 1, 0, 3, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 3,
541 : 1, 3, 0, 3, 1, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1, 1,
542 : 1, 0, 2, 3, 1, 3, 1, 0, 2, 3, 3, 1, 3, 3, 1, 0, 1, 0, 3, 1,
543 : 1, 0, 3, 3, 1, 1, 1, 0, 3, 1, 3, 1, 0, 3, 3, 1, 3, 3, 1, 0,
544 : 2, 1, 0, 2, 3, 3, 1, 1, 1, 0, 2, 3, 1, 3, 1, 0, 2, 3, 1, 1,
545 : 0, 2, 3, 3, 1, 3, 3, 1, 0, 1, 0, 3, 3, 1, 1, 1, 0, 3, 1, 3,
546 : 1, 0, 3, 1, 1, 0, 3, 3, 1, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 0,
547 : 2, 3, 3, 1, 0, 2, 3, 3, 3, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3,
548 : 1, 1, 0, 2, 3, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 4, 1, 0,
549 : 4, 1, 0, 2, 3, 2, 0, 2, 3, 4, 0, 4, 3, 1, 0, 2, 1, 1, 0, 2,
550 : 3, 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 0, 4, 1, 0, 2, 3, 2, 0, 4,
551 : 1, 0, 2, 3, 2, 0, 4, 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 4, 3,
552 : 1, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 4, 3, 1, 0, 2, 1, 1, 0, 2,
553 : 3, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 1, 0, 3, 1, 1, 0, 3, 3, 0,
554 : 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1, 1, 0,
555 : 3, 3, 1, 1, 0, 3, 3, 3, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 3, 0,
556 : 3, 3, 1, 0, 1, 0, 3, 1, 1, 0, 3, 3, 1, 0, 3, 3, 3, 0, 1, 0,
557 : 3, 1, 1, 0, 3, 1, 3, 0, 3, 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0,
558 : 2, 3, 1, 3, 0, 4, 3, 1, 1, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3, 1,
559 : 1, 1, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1, 3, 0, 2, 3, 3, 0, 4, 1,
560 : 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0,
561 : 2, 3, 3, 0, 2, 1, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3,
562 : 0, 4, 1, 1, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1,
563 : 1, 1, 0, 2, 1, 0, 2, 3, 0, 4, 3, 1, 1, 1, 1, 0, 4, 3, 1, 3,
564 : 0, 3, 1, 1, 1, 0, 3, 1, 3, 0, 1, 0, 3, 0, 3, 1, 1, 0, 3, 1,
565 : 3, 0, 3, 1, 5, 0, 3, 1, 1, 1, 1, 0, 3, 1, 3, 1, 1, 0, 3, 1,
566 : 1, 1, 0, 3, 1, 3, 1, 0, 3, 1, 1, 1, 1, 0, 3, 1, 3, 0, 3, 1,
567 : 1, 1, 0, 2, 1, 0, 2, 3, 1, 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 1,
568 : 3, 1, 0, 2, 3, 3, 1, 1, 1, 0, 2, 3, 3, 1, 1, 3, 1, 0, 1, 0,
569 : 3, 1, 1, 1, 1, 1, 0, 3, 1, 1, 1, 1, 3, 1, 0, 3, 3, 1, 1, 1,
570 : 0, 3, 3, 1, 1, 3, 1, 0, 4, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2,
571 : 3, 1, 3, 0, 6, 1, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 1, 0, 4, 1,
572 : 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 6, 1, 0, 4, 3, 1, 0, 4, 3,
573 : 3, 0, 2, 1, 0, 4, 1, 0, 2, 3, 1, 0, 2, 3, 3, 0, 6, 1, 0, 4,
574 : 3, 1, 0, 4, 3, 3, 0, 4, 1, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3,
575 : 1, 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 1, 0, 4, 1, 0, 2, 3, 1,
576 : 1, 0, 2, 3, 1, 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3,
577 : 1, 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 3, 1, 0, 4, 1, 0, 2, 1, 0,
578 : 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 1, 3, 1, 0, 4, 1, 0, 2, 1, 0,
579 : 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 4, 1, 0, 2, 1, 0, 2, 3, 1, 0,
580 : 2, 3, 3, 0, 4, 1, 0, 1, 0, 3, 1, 1, 0, 3, 3, 1, 0, 2, 1, 0,
581 : 2, 3, 1, 1, 0, 2, 3, 3, 1, 0, 2, 1, 0, 4, 1, 0, 2, 3, 1, 0,
582 : 2, 3, 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 1,
583 : 0, 2, 3, 1, 3, 1, 0, 6, 1, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 3,
584 : 3, 1, 1, 0, 2, 3, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3,
585 : 3, 0, 2, 3, 1, 3, 1, 0, 2, 1, 0, 2, 3, 1, 3, 0, 2, 3, 3, 0,
586 : 2, 3, 1, 1, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 4,
587 : 3, 1, 1, 0, 4, 3, 1, 3, 0, 2, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1,
588 : 0, 2, 3, 1, 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 3, 3, 0, 4, 1,
589 : 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 3, 0, 4, 1, 0, 2, 3,
590 : 1, 1, 0, 2, 3, 1, 3, 0, 4, 3, 1, 1, 0, 4, 3, 1, 3, 0, 2, 3,
591 : 3, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 4, 3, 1, 0, 4,
592 : 3, 3, 0, 2, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0,
593 : 2, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 0, 4, 3, 3, 0, 2, 3, 3, 1,
594 : 1, 0, 2, 3, 3, 1, 0, 4, 3, 1, 3, 0, 2, 3, 3, 3, 0, 4, 3, 1,
595 : 1, 0, 4, 3, 1, 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 3,
596 : 1, 0, 2, 3, 3, 1, 1, 0, 2, 3, 3, 1, 0, 4, 3, 1, 3, 0, 4, 3,
597 : 1, 1, 0, 4, 3, 1, 3, 1, 0, 4, 3, 3, 0, 4, 1, 0, 2, 3, 2, 0,
598 : 2, 3, 4, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 3, 0, 4, 1, 0,
599 : 2, 3, 1, 1, 0, 2, 3, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 1, 1, 0,
600 : 2, 3, 1, 3, 0, 2, 3, 1, 1, 3, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2,
601 : 3, 1, 3, 0, 2, 3, 1, 3, 1, 0, 4, 3, 1, 0, 4, 3, 3, 0, 4, 3,
602 : 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1,
603 : 1, 3, 1, 0, 2, 3, 1, 1, 3, 0, 4, 3, 1, 1, 0, 4, 3, 1, 3, 0,
604 : 4, 3, 1, 3, 1, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3,
605 : 3, 0, 2, 3, 1, 3, 1, 0, 2, 3, 1, 3, 0, 4, 1, 0, 2, 3, 1, 1,
606 : 1, 3, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1, 1, 1, 1, 1, 0, 2, 3, 3,
607 : 1, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 3, 3, 0, 4, 3, 1, 1, 0, 4,
608 : 3, 1, 1, 1, 0, 4, 3, 1, 3, 0, 4, 3, 3, 0, 2, 3, 3, 1, 1, 0,
609 : 4, 1, 0, 2, 3, 1, 1, 1, 3, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1, 1,
610 : 1, 1, 1, 0, 2, 3, 3, 1, 0, 2, 3, 1, 1, 1, 1, 0, 4, 3, 1, 1,
611 : 0, 4, 3, 1, 1, 1, 0, 4, 3, 1, 3, 0, 4, 3, 3, 0, 2, 3, 3, 1,
612 : 1, 0, 2, 3, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1, 1,
613 : 0, 2, 1, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1, 3, 0, 2, 3, 1, 1, 1,
614 : 0, 4, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1, 1, 0, 2, 3, 1, 1, 1, 0,
615 : 4, 3, 1, 0, 4, 3, 1, 1, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3, 3, 0,
616 : 2, 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1, 3, 0, 2, 3,
617 : 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 0, 4, 3, 1, 1, 0, 4, 3, 1, 1,
618 : 1, 0, 4, 3, 1, 3, 0, 4, 3, 3, 0, 2, 1, 0, 2, 3, 1, 3, 0, 2,
619 : 3, 3, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 0, 4, 1, 0, 2, 3, 1,
620 : 0, 2, 3, 3, 0, 4, 3, 1, 1, 0, 4, 3, 1, 3, 0, 2, 1, 0, 2, 3,
621 : 1, 0, 2, 3, 1, 1, 0, 2, 3, 5, 0, 2, 3, 3, 1, 0, 4, 1, 0, 2,
622 : 3, 1, 0, 2, 3, 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 4, 1, 0, 2, 3,
623 : 1, 1, 1, 1, 0, 2, 3, 3, 1, 3, 0, 2, 3, 1, 1, 3, 1, 0, 2, 3,
624 : 1, 1, 3, 0, 2, 3, 3, 1, 1, 3, 0, 2, 3, 1, 3, 0, 4, 3, 1, 1,
625 : 0, 4, 3, 1, 3, 0, 4, 3, 1, 3, 1, 0, 4, 3, 3, 0, 2, 3, 3, 1,
626 : 1, 1, 0, 2, 3, 3, 1, 1, 3, 1, 0, 4, 1, 0, 2, 3, 1, 1, 1, 1,
627 : 0, 2, 3, 1, 3, 1, 0, 2, 3, 1, 1, 3, 1, 0, 2, 3, 1, 1, 3, 0,
628 : 2, 3, 3, 1, 1, 3, 0, 4, 3, 1, 1, 0, 4, 3, 1, 3, 0, 4, 3, 1,
629 : 3, 1, 0, 4, 3, 3, 0, 2, 3, 3, 1, 1, 1, 0, 2, 3, 3, 1, 1, 3,
630 : 1, 0, 2, 3, 3, 1, 3, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 1, 1,
631 : 0, 2, 3, 3, 1, 0, 2, 1, 1, 0, 2, 3, 1, 0, 2, 3, 3, 1, 1, 0,
632 : 2, 3, 3, 1, 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 1, 0, 1, 0, 3,
633 : 1, 1, 1, 0, 3, 1, 1, 3, 0, 3, 1, 3, 0, 3, 3, 0, 1, 0, 3, 1,
634 : 1, 0, 3, 1, 3, 0, 3, 3, 0, 4, 1, 0, 2, 3, 1, 1, 3, 1, 0, 2,
635 : 3, 3, 1, 3, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3,
636 : 3, 1, 1, 1, 0, 2, 3, 1, 3, 0, 4, 3, 1, 1, 0, 4, 3, 1, 1, 1,
637 : 0, 4, 3, 1, 3, 0, 4, 3, 3, 0, 2, 3, 3, 1, 1, 1, 1, 0, 2, 3,
638 : 3, 1, 1, 3, 0, 4, 1, 0, 2, 3, 1, 1, 3, 1, 0, 2, 3, 1, 3, 1,
639 : 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 3, 1, 1, 1,
640 : 0, 4, 3, 1, 1, 0, 4, 3, 1, 1, 1, 0, 4, 3, 1, 3, 0, 4, 3, 3,
641 : 0, 2, 3, 3, 1, 1, 1, 1, 0, 2, 3, 3, 1, 1, 3, 0, 2, 3, 3, 1,
642 : 3, 0, 4, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 3, 1, 3, 0, 2, 3, 1,
643 : 3, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2, 3, 3, 1, 1, 0, 4, 1, 0, 2,
644 : 3, 1, 1, 1, 0, 2, 3, 1, 3, 1, 0, 4, 3, 1, 0, 4, 3, 3, 0, 2,
645 : 3, 3, 1, 1, 0, 2, 3, 3, 1, 3, 0, 2, 1, 1, 0, 2, 3, 1, 1, 1,
646 : 1, 0, 2, 3, 1, 3, 1, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 3, 1,
647 : 0, 2, 1, 1, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 3, 0, 2, 3, 1,
648 : 1, 1, 0, 2, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3, 3, 1, 1, 0, 2, 3,
649 : 1, 1, 0, 2, 3, 3, 1, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1, 1, 1,
650 : 0, 2, 3, 1, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 4,
651 : 1, 0, 2, 3, 1, 0, 2, 3, 3, 0, 4, 1, 0, 2, 3, 3, 0, 2, 3, 1,
652 : 1, 0, 4, 3, 1, 1, 0, 4, 3, 1, 3, 0, 4, 1, 0, 2, 3, 3, 0, 2,
653 : 3, 1, 1, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 4, 3, 1,
654 : 1, 0, 4, 3, 1, 3, 0, 4, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0,
655 : 4, 3, 1, 0, 4, 3, 3, 0, 2, 1, 1, 0, 2, 3, 1, 1, 1, 0, 2, 3,
656 : 3, 1, 1, 0, 2, 3, 1, 1, 0, 2, 3, 3, 1, 0, 2, 1, 1, 0, 2, 3,
657 : 3, 0, 2, 3, 1, 1, 1, 0, 2, 3, 1, 1, 0, 2, 1, 1, 0, 2, 3, 1,
658 : 0, 2, 3, 3, 0, 2, 1, 0, 2, 3, 1, 1, 0, 2, 3, 1, 3, 0, 1, 0,
659 : 3, 1, 1, 0, 3, 1, 3, 0, 1, 0, 3, 1, 0, 3, 3, 0, 2, 1, 0, 2,
660 : 3, 3, 1, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1, 1, 3, 0, 2, 3, 1,
661 : 3, 1, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1, 1, 1, 1, 0, 2, 3, 1,
662 : 1, 3, 0, 2, 3, 1, 3, 1, 0, 2, 1, 0, 2, 3, 3, 0, 2, 3, 1, 1,
663 : 0, 2, 1, 0, 2, 3, 1, 0, 2, 3, 3, 0, 1, 0, 2, 1, 0, 2, 3, 1,
664 : 0, 4, 1, 0, 6, 1, 0, 2, 1, 0, 2, 3, 1, 0, 4, 1, 0, 6, 1, 0,
665 : 8, 1, 0, 2, 1, 0, 2, 3, 1, 0, 4, 1, 0, 2, 1, 0, 6, 1, 0, 8,
666 : 1, 0, 2, 3, 1, 0, 4, 1, 0, 1, 0, 3, 1, 1, 1, 0, 3, 1, 1, 0,
667 : 1, 0, 3, 1, 1, 0, 2, 1, 0, 2, 3, 1, 0, 6, 1, 0, 2, 1, 0, 2,
668 : 3, 2, 0, 2, 3, 4, 0, 2, 1, 0, 2, 3, 2, 0, 4, 1, 0, 1, 0, 3,
669 : 2, 0, 3, 4, 0, 1, 0, 3, 1, 1, 0, 3, 3, 1, 0, 3, 1, 3, 0, 1,
670 : 0, 3, 1, 1, 0, 3, 3, 1, 1, 0, 3, 1, 3, 0, 1, 1, 0, 3, 1, 0,
671 : 3, 0, 1, 1, 0, 3, 1, 0, 1, 0, 3, 1, 1, 0, 3, 1, 0, 2, 1, 0,
672 : 2, 3, 1, 0, 1, 1, 0, 3, 1, 1, 0, 3, 1, 0, 2, 1, 1, 0, 2, 3,
673 : 0, 2, 1, 0, 2, 3, 0, 4, 1, 0, 4, 3, 0, 1, 0, 3, 1, 0, 1, 1,
674 : 0, 3, 0, 1, 0, 3, 2, 0, 2, 1, 0, 2, 3, 0, 1, 0, 3, 0, 3, 2,
675 : 2, 1, 0, 3, 2, 2, 3, 0, 3, 2, 1, 0, 3, 2, 3, 0, 3, 2, 0, 1,
676 : 0, 3, 2, 2, 1, 0, 3, 2, 2, 3, 0, 1, 0, 3, 2, 1, 0, 3, 2, 3,
677 : 1, 0, 1, 0, 3, 2, 1, 0, 3, 2, 3, 0, 3, 1, 1, 1, 0, 3, 3, 1,
678 : 1, 0, 3, 1, 1, 0, 3, 3, 1, 0, 3, 1, 1, 1, 0, 3, 3, 0, 3, 1,
679 : 1, 0, 3, 1, 0, 3, 3, 1, 1, 0, 3, 3, 1, 0, 3, 1, 1, 0, 3, 1,
680 : 3, 0, 3, 1, 0, 3, 3, 0, 1, 0, 3, 1, 0, 3, 3, 1, 1, 0, 3, 3,
681 : 1, 3, 0, 3, 5, 2, 0,
682 : };
683 :
684 : static const unsigned char extract_dup_num[] = {
685 : 1, 2, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0,
686 : 0, 2, 1, 6, 0, 0, 0, 2, 2, 2, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1,
687 : 1, 1, 1, 1, 1, 1, 1, 2, 3, 2, 1, 4, 3, 2, 4, 3, 2, 5, 4, 3,
688 : 2, 1, 6, 5, 4, 3, 2, 6, 5, 4, 3, 2, 0, 1, 2, 0, 1, 1, 2, 0,
689 : 2, 1, 2, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 2,
690 : 2, 2, 1, 1, 1, 1, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3,
691 : 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3,
692 : 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 1, 1, 3, 3, 1, 1,
693 : 3, 3, 1, 1, 3, 3, 1, 1, 3, 3, 1, 1, 3, 3, 1, 1, 3, 2, 1, 1,
694 : 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1,
695 : 2, 2, 2, 2, 1, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1,
696 : 1, 1, 0, 0, 0, 1, 2, 1, 2, 1, 1, 2, 1, 1, 2, 0, 2, 1, 4, 3,
697 : 4, 3, 1, 5, 3, 4, 5, 5, 3, 4, 5, 3, 2, 3, 2, 2, 3, 2, 3, 2,
698 : 0, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
699 : 1, 1, 2, 3, 0, 2, 0, 0, 3, 3, 0, 2, 0, 2, 1, 1, 1, 1, 1, 2,
700 : 1, 0, 2, 1, 2, 1, 2, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 1,
701 : 2, 1, 2, 1, 2, 2, 1, 2, 2, 2, 1, 2, 1, 1, 2, 1, 1, 1, 3, 1,
702 : 3, 2, 1, 2, 3, 1, 4, 3, 2, 5, 3, 1, 2, 3, 5, 3, 1, 2, 3, 2,
703 : 2, 3, 1, 4, 3, 1, 2, 1, 2, 2, 1, 2, 1, 5, 3, 2, 1, 3, 1, 5,
704 : 3, 2, 1, 3, 2, 5, 3, 1, 2, 3, 1, 5, 3, 1, 2, 3, 1, 2, 1, 2,
705 : 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 0,
706 : 0
707 : };
708 :
709 : struct extract_method_d {
710 : unsigned int paths;
711 : unsigned int dups;
712 : unsigned char n_operands;
713 : unsigned char n_dups;
714 : };
715 :
716 : static const struct extract_method_d extract_methods[] = {
717 : { 0, 0, 0, 0 },
718 : { 0, 0, 0, 0 },
719 : { 0, 0, 5, 3 },
720 : { 30, 3, 3, 3 },
721 : { 58, 6, 3, 3 },
722 : { 86, 9, 3, 1 },
723 : { 104, 10, 3, 1 },
724 : { 121, 11, 2, 1 },
725 : { 131, 12, 4, 1 },
726 : { 148, 13, 4, 2 },
727 : { 173, 15, 4, 2 },
728 : { 195, 17, 5, 1 },
729 : { 217, 18, 6, 1 },
730 : { 243, 19, 1, 1 },
731 : { 250, 20, 4, 0 },
732 : { 262, 20, 3, 1 },
733 : { 274, 21, 3, 0 },
734 : { 287, 21, 5, 0 },
735 : { 306, 21, 6, 0 },
736 : { 330, 21, 6, 0 },
737 : { 355, 21, 4, 0 },
738 : { 370, 21, 6, 0 },
739 : { 390, 21, 2, 0 },
740 : { 395, 21, 3, 2 },
741 : { 414, 23, 3, 0 },
742 : { 422, 23, 4, 0 },
743 : { 434, 23, 5, 0 },
744 : { 452, 23, 3, 0 },
745 : { 462, 23, 2, 0 },
746 : { 466, 23, 2, 0 },
747 : { 470, 23, 4, 0 },
748 : { 485, 23, 7, 1 },
749 : { 519, 24, 7, 0 },
750 : { 551, 24, 8, 0 },
751 : { 587, 24, 7, 0 },
752 : { 624, 24, 8, 0 },
753 : { 666, 24, 7, 0 },
754 : { 698, 24, 8, 0 },
755 : { 734, 24, 4, 1 },
756 : { 750, 25, 6, 0 },
757 : { 772, 25, 4, 0 },
758 : { 785, 25, 3, 1 },
759 : { 796, 26, 3, 1 },
760 : { 807, 27, 3, 0 },
761 : { 815, 27, 5, 1 },
762 : { 835, 28, 5, 1 },
763 : { 856, 29, 5, 1 },
764 : { 876, 30, 2, 1 },
765 : { 888, 31, 2, 1 },
766 : { 896, 32, 6, 0 },
767 : { 917, 32, 4, 0 },
768 : { 929, 32, 1, 0 },
769 : { 930, 32, 4, 0 },
770 : { 943, 32, 3, 3 },
771 : { 966, 35, 4, 0 },
772 : { 982, 35, 2, 7 },
773 : { 1040, 42, 2, 3 },
774 : { 1066, 45, 2, 1 },
775 : { 1078, 46, 4, 2 },
776 : { 1111, 48, 4, 0 },
777 : { 1128, 48, 5, 0 },
778 : { 1146, 48, 4, 3 },
779 : { 1173, 51, 5, 6 },
780 : { 1215, 57, 7, 0 },
781 : { 1241, 57, 6, 5 },
782 : { 1284, 62, 7, 10 },
783 : { 1350, 72, 3, 3 },
784 : { 1378, 75, 2, 2 },
785 : { 1394, 77, 6, 0 },
786 : { 1417, 77, 3, 0 },
787 : { 1432, 77, 4, 0 },
788 : { 1448, 77, 2, 0 },
789 : { 1457, 77, 4, 0 },
790 : { 1472, 77, 2, 0 },
791 : { 1480, 77, 6, 0 },
792 : { 1505, 77, 5, 0 },
793 : { 1523, 77, 5, 0 },
794 : { 1543, 77, 5, 0 },
795 : { 1561, 77, 5, 0 },
796 : { 1579, 77, 6, 0 },
797 : { 1611, 77, 4, 0 },
798 : { 1634, 77, 5, 0 },
799 : { 1660, 77, 3, 0 },
800 : { 1678, 77, 3, 2 },
801 : { 1700, 79, 5, 0 },
802 : { 1725, 79, 4, 0 },
803 : { 1743, 79, 4, 0 },
804 : { 1757, 79, 5, 0 },
805 : { 1781, 79, 5, 0 },
806 : { 1801, 79, 2, 0 },
807 : { 1808, 79, 3, 0 },
808 : { 1822, 79, 3, 0 },
809 : { 1834, 79, 5, 0 },
810 : { 1862, 79, 3, 0 },
811 : { 1874, 79, 5, 0 },
812 : { 1898, 79, 6, 0 },
813 : { 1928, 79, 4, 0 },
814 : { 1949, 79, 3, 0 },
815 : { 1957, 79, 8, 0 },
816 : { 1989, 79, 6, 0 },
817 : { 2010, 79, 12, 0 },
818 : { 2062, 79, 10, 0 },
819 : { 2099, 79, 12, 0 },
820 : { 2151, 79, 10, 0 },
821 : { 2188, 79, 20, 0 },
822 : { 2280, 79, 18, 0 },
823 : { 2349, 79, 12, 0 },
824 : { 2401, 79, 10, 0 },
825 : { 2438, 79, 5, 0 },
826 : { 2455, 79, 6, 0 },
827 : { 2476, 79, 4, 0 },
828 : { 2488, 79, 5, 0 },
829 : { 2508, 79, 3, 0 },
830 : { 2520, 79, 5, 0 },
831 : { 2538, 79, 4, 0 },
832 : { 2554, 79, 4, 0 },
833 : { 2568, 79, 6, 0 },
834 : { 2589, 79, 5, 0 },
835 : { 2605, 79, 5, 0 },
836 : { 2625, 79, 5, 0 },
837 : { 2647, 79, 3, 1 },
838 : { 2659, 80, 3, 0 },
839 : { 2671, 80, 7, 0 },
840 : { 2699, 80, 21, 0 },
841 : { 2797, 80, 19, 0 },
842 : { 2871, 80, 5, 0 },
843 : { 2892, 80, 4, 0 },
844 : { 2907, 80, 7, 0 },
845 : { 2938, 80, 5, 0 },
846 : { 2957, 80, 6, 0 },
847 : { 2980, 80, 4, 0 },
848 : { 2993, 80, 7, 2 },
849 : { 3035, 82, 6, 2 },
850 : { 3067, 84, 8, 1 },
851 : { 3110, 85, 7, 1 },
852 : { 3143, 86, 6, 1 },
853 : { 3172, 87, 5, 1 },
854 : { 3193, 88, 7, 1 },
855 : { 3226, 89, 8, 0 },
856 : { 3259, 89, 6, 0 },
857 : { 3280, 89, 6, 1 },
858 : { 3304, 90, 5, 0 },
859 : { 3322, 90, 7, 0 },
860 : { 3346, 90, 5, 0 },
861 : { 3360, 90, 8, 0 },
862 : { 3392, 90, 6, 0 },
863 : { 3414, 90, 5, 0 },
864 : { 3431, 90, 3, 0 },
865 : { 3440, 90, 3, 0 },
866 : { 3449, 90, 7, 0 },
867 : { 3475, 90, 9, 0 },
868 : { 3513, 90, 13, 0 },
869 : { 3571, 90, 11, 0 },
870 : { 3613, 90, 4, 1 },
871 : { 3631, 91, 2, 1 },
872 : { 3641, 92, 5, 0 },
873 : { 3659, 92, 5, 0 },
874 : { 3677, 92, 4, 0 },
875 : { 3688, 92, 6, 0 },
876 : { 3713, 92, 5, 0 },
877 : { 3731, 92, 3, 0 },
878 : { 3742, 92, 4, 0 },
879 : { 3758, 92, 3, 0 },
880 : { 3769, 92, 4, 0 },
881 : { 3785, 92, 4, 0 },
882 : { 3798, 92, 3, 0 },
883 : { 3810, 92, 4, 0 },
884 : { 3826, 92, 6, 0 },
885 : { 3853, 92, 4, 0 },
886 : { 3869, 92, 5, 0 },
887 : { 3889, 92, 3, 0 },
888 : { 3900, 92, 3, 0 },
889 : { 3910, 92, 3, 0 },
890 : { 3921, 92, 4, 0 },
891 : { 3934, 92, 4, 0 },
892 : { 3949, 92, 3, 0 },
893 : { 3959, 92, 2, 0 },
894 : { 3965, 92, 3, 0 },
895 : { 3977, 92, 2, 0 },
896 : { 3984, 92, 3, 0 },
897 : { 3994, 92, 5, 0 },
898 : { 4012, 92, 5, 0 },
899 : { 4031, 92, 5, 0 },
900 : { 4049, 92, 3, 0 },
901 : { 4058, 92, 6, 1 },
902 : { 4090, 93, 5, 1 },
903 : { 4114, 94, 6, 2 },
904 : { 4152, 96, 5, 2 },
905 : { 4181, 98, 7, 1 },
906 : { 4219, 99, 5, 1 },
907 : { 4243, 100, 6, 1 },
908 : { 4272, 101, 4, 1 },
909 : { 4289, 102, 6, 0 },
910 : { 4313, 102, 5, 0 },
911 : { 4330, 102, 6, 1 },
912 : { 4359, 103, 5, 1 },
913 : { 4380, 104, 4, 0 },
914 : { 4392, 104, 7, 0 },
915 : { 4421, 104, 6, 0 },
916 : { 4442, 104, 5, 0 },
917 : { 4461, 104, 5, 0 },
918 : { 4479, 104, 5, 0 },
919 : { 4496, 104, 7, 1 },
920 : { 4535, 105, 6, 1 },
921 : { 4565, 106, 6, 2 },
922 : { 4604, 108, 5, 2 },
923 : { 4634, 110, 6, 2 },
924 : { 4673, 112, 5, 2 },
925 : { 4703, 114, 7, 1 },
926 : { 4741, 115, 6, 1 },
927 : { 4770, 116, 6, 2 },
928 : { 4808, 118, 5, 2 },
929 : { 4837, 120, 6, 2 },
930 : { 4875, 122, 5, 2 },
931 : { 4904, 124, 7, 1 },
932 : { 4942, 125, 6, 1 },
933 : { 4971, 126, 6, 2 },
934 : { 5009, 128, 5, 2 },
935 : { 5038, 130, 6, 2 },
936 : { 5076, 132, 5, 2 },
937 : { 5105, 134, 7, 1 },
938 : { 5142, 135, 6, 1 },
939 : { 5170, 136, 6, 2 },
940 : { 5207, 138, 5, 2 },
941 : { 5235, 140, 6, 2 },
942 : { 5272, 142, 5, 2 },
943 : { 5300, 144, 5, 1 },
944 : { 5326, 145, 4, 1 },
945 : { 5345, 146, 5, 1 },
946 : { 5370, 147, 4, 1 },
947 : { 5388, 148, 5, 1 },
948 : { 5413, 149, 4, 1 },
949 : { 5431, 150, 5, 1 },
950 : { 5455, 151, 4, 1 },
951 : { 5472, 152, 6, 1 },
952 : { 5501, 153, 5, 1 },
953 : { 5522, 154, 6, 1 },
954 : { 5551, 155, 5, 1 },
955 : { 5572, 156, 7, 0 },
956 : { 5601, 156, 5, 0 },
957 : { 5619, 156, 6, 0 },
958 : { 5640, 156, 4, 0 },
959 : { 5652, 156, 6, 1 },
960 : { 5680, 157, 5, 1 },
961 : { 5700, 158, 6, 1 },
962 : { 5728, 159, 5, 1 },
963 : { 5748, 160, 7, 0 },
964 : { 5776, 160, 6, 0 },
965 : { 5796, 160, 6, 1 },
966 : { 5826, 161, 5, 1 },
967 : { 5848, 162, 6, 1 },
968 : { 5878, 163, 5, 1 },
969 : { 5900, 164, 7, 0 },
970 : { 5930, 164, 6, 0 },
971 : { 5952, 164, 5, 0 },
972 : { 5971, 164, 4, 0 },
973 : { 5984, 164, 6, 1 },
974 : { 6013, 165, 5, 1 },
975 : { 6034, 166, 6, 1 },
976 : { 6063, 167, 5, 1 },
977 : { 6084, 168, 7, 0 },
978 : { 6113, 168, 6, 0 },
979 : { 6134, 168, 6, 1 },
980 : { 6163, 169, 5, 1 },
981 : { 6184, 170, 6, 1 },
982 : { 6213, 171, 5, 1 },
983 : { 6234, 172, 7, 0 },
984 : { 6263, 172, 5, 0 },
985 : { 6281, 172, 6, 0 },
986 : { 6302, 172, 4, 0 },
987 : { 6314, 172, 6, 1 },
988 : { 6342, 173, 5, 1 },
989 : { 6362, 174, 6, 1 },
990 : { 6390, 175, 5, 1 },
991 : { 6410, 176, 7, 0 },
992 : { 6438, 176, 5, 0 },
993 : { 6455, 176, 6, 0 },
994 : { 6475, 176, 5, 0 },
995 : { 6492, 176, 3, 0 },
996 : { 6507, 176, 2, 0 },
997 : { 6517, 176, 3, 0 },
998 : { 6530, 176, 2, 0 },
999 : { 6538, 176, 3, 0 },
1000 : { 6553, 176, 2, 0 },
1001 : { 6563, 176, 3, 0 },
1002 : { 6576, 176, 2, 0 },
1003 : { 6584, 176, 6, 0 },
1004 : { 6609, 176, 5, 0 },
1005 : { 6627, 176, 5, 0 },
1006 : { 6647, 176, 5, 0 },
1007 : { 6663, 176, 4, 0 },
1008 : { 6676, 176, 5, 3 },
1009 : { 6709, 179, 4, 0 },
1010 : { 6723, 179, 6, 0 },
1011 : { 6747, 179, 5, 0 },
1012 : { 6764, 179, 5, 0 },
1013 : { 6781, 179, 4, 1 },
1014 : { 6797, 180, 6, 0 },
1015 : { 6819, 180, 6, 0 },
1016 : { 6842, 180, 7, 1 },
1017 : { 6879, 181, 5, 1 },
1018 : { 6903, 182, 6, 1 },
1019 : { 6931, 183, 4, 1 },
1020 : { 6948, 184, 3, 6 },
1021 : { 6998, 190, 3, 14 },
1022 : { 7112, 204, 3, 6 },
1023 : { 7162, 210, 3, 2 },
1024 : { 7180, 212, 6, 1 },
1025 : { 7211, 213, 4, 1 },
1026 : { 7230, 214, 5, 1 },
1027 : { 7253, 215, 3, 1 },
1028 : { 7266, 216, 3, 1 },
1029 : { 7282, 217, 6, 0 },
1030 : { 7305, 217, 5, 0 },
1031 : { 7321, 217, 4, 0 },
1032 : { 7334, 217, 5, 0 },
1033 : { 7350, 217, 5, 0 },
1034 : { 7369, 217, 6, 0 },
1035 : { 7389, 217, 5, 0 },
1036 : { 7408, 217, 6, 0 },
1037 : { 7434, 217, 5, 0 },
1038 : { 7453, 217, 4, 0 },
1039 : { 7468, 217, 6, 0 },
1040 : { 7493, 217, 5, 0 },
1041 : { 7511, 217, 4, 0 },
1042 : { 7525, 217, 5, 0 },
1043 : { 7543, 217, 4, 0 },
1044 : { 7555, 217, 3, 0 },
1045 : { 7564, 217, 5, 0 },
1046 : { 7582, 217, 3, 0 },
1047 : { 7592, 217, 3, 0 },
1048 : { 7601, 217, 6, 1 },
1049 : { 7632, 218, 5, 1 },
1050 : { 7655, 219, 4, 1 },
1051 : { 7674, 220, 3, 1 },
1052 : { 7687, 221, 3, 1 },
1053 : { 7703, 222, 6, 0 },
1054 : { 7726, 222, 5, 0 },
1055 : { 7742, 222, 4, 0 },
1056 : { 7755, 222, 3, 0 },
1057 : { 7769, 222, 5, 0 },
1058 : { 7789, 222, 3, 0 },
1059 : { 7803, 222, 3, 0 },
1060 : { 7813, 222, 3, 1 },
1061 : { 7824, 223, 3, 1 },
1062 : { 7837, 224, 5, 0 },
1063 : { 7855, 224, 5, 0 },
1064 : { 7872, 224, 4, 0 },
1065 : { 7885, 224, 4, 0 },
1066 : { 7897, 224, 3, 0 },
1067 : { 7906, 224, 3, 1 },
1068 : { 7919, 225, 5, 0 },
1069 : { 7937, 225, 4, 0 },
1070 : { 7950, 225, 6, 0 },
1071 : { 7971, 225, 3, 0 },
1072 : { 7982, 225, 3, 0 },
1073 : { 7991, 225, 4, 0 },
1074 : { 8003, 225, 4, 0 },
1075 : { 8014, 225, 6, 0 },
1076 : { 8039, 225, 6, 0 },
1077 : { 8061, 225, 4, 0 },
1078 : { 8071, 225, 3, 0 },
1079 : { 8083, 225, 3, 0 },
1080 : { 8099, 225, 3, 2 },
1081 : { 8125, 227, 3, 0 },
1082 : { 8139, 227, 3, 0 },
1083 : { 8147, 227, 2, 0 },
1084 : { 8154, 227, 4, 0 },
1085 : { 8165, 227, 4, 0 },
1086 : { 8176, 227, 5, 2 },
1087 : { 8210, 229, 2, 1 },
1088 : { 8220, 230, 3, 2 },
1089 : { 8242, 232, 4, 1 },
1090 : { 8262, 233, 7, 2 },
1091 : { 8308, 235, 2, 0 },
1092 : { 8314, 235, 2, 0 },
1093 : { 8320, 235, 3, 0 },
1094 : { 8330, 235, 2, 1 },
1095 : { 8342, 236, 3, 0 },
1096 : { 8351, 236, 1, 0 },
1097 : { 8354, 236, 3, 0 },
1098 : { 8360, 236, 3, 0 },
1099 : { 8369, 236, 2, 0 },
1100 : { 8375, 236, 3, 0 },
1101 : { 8385, 236, 2, 0 },
1102 : { 8389, 236, 4, 0 },
1103 : { 8403, 236, 4, 0 },
1104 : { 8416, 236, 3, 0 },
1105 : { 8427, 236, 3, 1 },
1106 : { 8444, 237, 3, 1 },
1107 : { 8461, 238, 5, 0 },
1108 : { 8477, 238, 4, 0 },
1109 : { 8491, 238, 4, 0 },
1110 : { 8504, 238, 4, 0 },
1111 : { 8515, 238, 6, 0 },
1112 : { 8538, 238, 7, 0 },
1113 : { 8567, 238, 7, 0 },
1114 : { 8592, 238, 5, 2 },
1115 : { 8616, 240, 5, 2 },
1116 : { 8641, 242, 3, 1 },
1117 : { 8655, 243, 6, 4 },
1118 : { 8691, 247, 6, 4 },
1119 : { 8729, 251, 4, 2 },
1120 : { 8751, 253, 5, 0 },
1121 : { 8767, 253, 4, 0 },
1122 : { 8780, 253, 4, 2 },
1123 : { 8802, 255, 4, 0 },
1124 : { 8816, 255, 4, 0 },
1125 : { 8830, 255, 4, 0 },
1126 : { 8843, 255, 3, 1 },
1127 : { 8857, 256, 4, 4 },
1128 : { 8887, 260, 4, 0 },
1129 : { 8899, 260, 4, 0 },
1130 : { 8910, 260, 4, 0 },
1131 : { 8921, 260, 4, 0 },
1132 : { 8940, 260, 5, 0 },
1133 : { 8964, 260, 4, 0 },
1134 : { 8979, 260, 3, 0 },
1135 : { 8989, 260, 2, 0 },
1136 : { 8997, 260, 2, 0 },
1137 : { 9004, 260, 6, 0 },
1138 : { 9029, 260, 5, 0 },
1139 : { 9051, 260, 4, 0 },
1140 : { 9066, 260, 5, 0 },
1141 : { 9083, 260, 6, 0 },
1142 : { 9108, 260, 5, 0 },
1143 : { 9126, 260, 6, 0 },
1144 : { 9147, 260, 1, 1 },
1145 : { 9154, 261, 2, 1 },
1146 : { 9168, 262, 2, 1 },
1147 : { 9181, 263, 2, 1 },
1148 : { 9194, 264, 4, 0 },
1149 : { 9209, 264, 3, 0 },
1150 : { 9223, 264, 3, 0 },
1151 : { 9238, 264, 4, 1 },
1152 : { 9267, 265, 4, 1 },
1153 : { 9292, 266, 3, 1 },
1154 : { 9307, 267, 2, 1 },
1155 : { 9321, 268, 3, 3 },
1156 : { 9347, 271, 2, 3 },
1157 : { 9370, 274, 2, 1 },
1158 : { 9382, 275, 3, 0 },
1159 : { 9395, 275, 3, 0 },
1160 : { 9405, 275, 2, 0 },
1161 : { 9412, 275, 2, 0 },
1162 : { 9422, 275, 2, 0 },
1163 : { 9433, 275, 2, 0 },
1164 : { 9442, 275, 2, 0 },
1165 : { 9452, 275, 2, 0 },
1166 : { 9460, 275, 2, 1 },
1167 : { 9472, 276, 3, 0 },
1168 : { 9483, 276, 3, 0 },
1169 : { 9495, 276, 2, 0 },
1170 : { 9504, 276, 3, 0 },
1171 : { 9514, 276, 3, 1 },
1172 : { 9528, 277, 2, 1 },
1173 : { 9539, 278, 2, 0 },
1174 : { 9545, 278, 2, 0 },
1175 : { 9553, 278, 1, 0 },
1176 : { 9556, 278, 2, 0 },
1177 : { 9560, 278, 1, 0 },
1178 : { 9563, 278, 1, 0 },
1179 : { 9565, 278, 1, 1 },
1180 : { 9570, 279, 4, 0 },
1181 : { 9586, 279, 4, 0 },
1182 : { 9603, 279, 3, 0 },
1183 : { 9613, 279, 3, 0 },
1184 : { 9624, 279, 3, 0 },
1185 : { 9636, 279, 2, 0 },
1186 : { 9642, 279, 2, 0 },
1187 : { 9649, 279, 1, 0 },
1188 : { 9651, 279, 1, 0 },
1189 : { 9654, 279, 2, 0 },
1190 : { 9661, 279, 4, 0 },
1191 : { 9672, 279, 4, 0 },
1192 : { 9682, 279, 4, 0 },
1193 : { 9701, 279, 3, 0 },
1194 : { 9714, 279, 3, 0 },
1195 : { 9729, 279, 3, 0 },
1196 : { 9746, 279, 3, 0 },
1197 : { 9758, 279, 6, 0 },
1198 : { 9785, 279, 5, 0 },
1199 : { 9816, 279, 5, 0 },
1200 : { 9845, 279, 4, 0 },
1201 : { 9866, 279, 3, 0 },
1202 : { 9882, 279, 2, 0 },
1203 : { 9890, 279, 2, 2 },
1204 : { 9908, 281, 2, 0 },
1205 : { 9916, 281, 3, 0 },
1206 : { 9929, 281, 4, 0 },
1207 : { 9948, 281, 4, 0 },
1208 : { 9969, 281, 3, 0 },
1209 : { 9981, 281, 2, 1 },
1210 : { 9993, 282, 4, 0 },
1211 : { 10007, 282, 4, 0 },
1212 : { 10024, 282, 4, 0 },
1213 : { 10041, 282, 4, 0 },
1214 : { 10060, 282, 4, 1 },
1215 : { 10084, 283, 4, 1 },
1216 : { 10108, 284, 3, 2 },
1217 : { 10132, 286, 5, 0 },
1218 : { 10155, 286, 5, 0 },
1219 : { 10173, 286, 5, 0 },
1220 : { 10199, 286, 5, 0 },
1221 : { 10220, 286, 4, 1 },
1222 : { 10246, 287, 4, 1 },
1223 : { 10267, 288, 4, 1 },
1224 : { 10296, 289, 4, 1 },
1225 : { 10320, 290, 3, 2 },
1226 : { 10349, 292, 3, 2 },
1227 : { 10373, 294, 4, 0 },
1228 : { 10390, 294, 4, 0 },
1229 : { 10409, 294, 3, 0 },
1230 : { 10420, 294, 3, 1 },
1231 : { 10435, 295, 3, 0 },
1232 : { 10452, 295, 2, 0 },
1233 : { 10459, 295, 2, 1 },
1234 : { 10470, 296, 2, 1 },
1235 : { 10483, 297, 2, 1 },
1236 : { 10495, 298, 2, 0 },
1237 : { 10503, 298, 2, 0 },
1238 : { 10511, 298, 3, 0 },
1239 : { 10520, 298, 4, 0 },
1240 : { 10534, 298, 4, 0 },
1241 : { 10549, 298, 4, 0 },
1242 : { 10564, 298, 4, 0 },
1243 : { 10578, 298, 4, 0 },
1244 : { 10592, 298, 3, 2 },
1245 : { 10614, 300, 4, 1 },
1246 : { 10638, 301, 3, 0 },
1247 : { 10652, 301, 3, 0 },
1248 : { 10664, 301, 4, 0 },
1249 : { 10681, 301, 6, 2 },
1250 : { 10721, 303, 2, 0 },
1251 : { 10730, 303, 5, 0 },
1252 : { 10746, 303, 4, 0 },
1253 : { 10768, 303, 3, 0 },
1254 : { 10783, 303, 3, 2 },
1255 : { 10818, 305, 3, 2 },
1256 : { 10848, 307, 5, 2 },
1257 : { 10875, 309, 5, 2 },
1258 : { 10902, 311, 5, 2 },
1259 : { 10927, 313, 4, 2 },
1260 : { 10951, 315, 4, 2 },
1261 : { 10975, 317, 4, 0 },
1262 : { 10997, 317, 4, 0 },
1263 : { 11017, 317, 4, 0 },
1264 : { 11033, 317, 4, 0 },
1265 : { 11047, 317, 3, 0 },
1266 : { 11057, 317, 3, 0 },
1267 : { 11070, 317, 4, 2 },
1268 : { 11092, 319, 4, 4 },
1269 : { 11130, 323, 4, 0 },
1270 : { 11148, 323, 4, 0 },
1271 : { 11166, 323, 3, 3 },
1272 : { 11193, 326, 3, 3 },
1273 : { 11218, 329, 3, 1 },
1274 : { 11235, 330, 3, 3 },
1275 : { 11262, 333, 3, 3 },
1276 : { 11287, 336, 3, 1 },
1277 : { 11304, 337, 7, 2 },
1278 : { 11348, 339, 6, 3 },
1279 : { 11393, 342, 3, 0 },
1280 : { 11404, 342, 3, 0 },
1281 : { 11417, 342, 3, 0 },
1282 : { 11431, 342, 4, 0 },
1283 : { 11451, 342, 4, 3 },
1284 : { 11483, 345, 5, 4 },
1285 : { 11530, 349, 5, 0 },
1286 : { 11553, 349, 7, 5 },
1287 : { 11620, 354, 6, 6 },
1288 : { 11688, 360, 3, 0 },
1289 : { 11701, 360, 4, 0 },
1290 : { 11721, 360, 4, 3 },
1291 : { 11753, 363, 3, 0 },
1292 : { 11764, 363, 5, 4 },
1293 : { 11811, 367, 5, 0 },
1294 : { 11834, 367, 3, 2 },
1295 : { 11855, 369, 4, 1 },
1296 : { 11876, 370, 3, 2 },
1297 : { 11895, 372, 7, 6 },
1298 : { 11971, 378, 6, 7 },
1299 : { 12048, 385, 4, 0 },
1300 : { 12066, 385, 4, 0 },
1301 : { 12085, 385, 3, 0 },
1302 : { 12097, 385, 5, 0 },
1303 : { 12116, 385, 4, 0 },
1304 : { 12129, 385, 7, 6 },
1305 : { 12205, 391, 6, 7 },
1306 : { 12282, 398, 4, 3 },
1307 : { 12316, 401, 3, 4 },
1308 : { 12351, 405, 5, 0 },
1309 : { 12381, 405, 4, 0 },
1310 : { 12403, 405, 5, 0 },
1311 : { 12428, 405, 4, 0 },
1312 : { 12446, 405, 3, 0 },
1313 : { 12459, 405, 3, 0 },
1314 : { 12470, 405, 3, 2 },
1315 : { 12492, 407, 3, 0 },
1316 : { 12504, 407, 3, 2 },
1317 : { 12527, 409, 3, 2 },
1318 : { 12548, 411, 5, 0 },
1319 : { 12574, 411, 4, 0 },
1320 : { 12593, 411, 3, 0 },
1321 : { 12605, 411, 3, 0 },
1322 : { 12618, 411, 3, 0 },
1323 : { 12628, 411, 3, 0 },
1324 : { 12636, 411, 5, 0 },
1325 : { 12663, 411, 5, 0 },
1326 : { 12689, 411, 3, 0 },
1327 : { 12701, 411, 3, 0 },
1328 : { 12712, 411, 1, 0 },
1329 : { 12714, 411, 4, 0 },
1330 : { 12727, 411, 5, 0 },
1331 : { 12743, 411, 3, 0 },
1332 : { 12753, 411, 5, 0 },
1333 : { 12769, 411, 3, 0 },
1334 : { 12780, 411, 2, 0 },
1335 : { 12786, 411, 3, 0 },
1336 : { 12796, 411, 3, 0 },
1337 : { 12807, 411, 3, 0 },
1338 : { 12817, 411, 3, 0 },
1339 : { 12825, 411, 4, 0 },
1340 : { 12839, 411, 4, 0 },
1341 : { 12854, 411, 3, 0 },
1342 : { 12862, 411, 2, 0 },
1343 : { 12868, 411, 3, 0 },
1344 : { 12877, 411, 2, 0 },
1345 : { 12884, 411, 3, 0 },
1346 : { 12894, 411, 2, 0 },
1347 : { 12901, 411, 2, 2 },
1348 : { 12913, 413, 2, 0 },
1349 : { 12918, 413, 2, 0 },
1350 : { 12923, 413, 2, 0 },
1351 : { 12928, 413, 2, 0 },
1352 : { 12934, 413, 2, 0 },
1353 : { 12938, 413, 0, 0 },
1354 : { 12938, 413, 2, 0 },
1355 : { 12948, 413, 2, 0 },
1356 : { 12956, 413, 1, 0 },
1357 : { 12959, 413, 3, 0 },
1358 : { 12971, 413, 3, 0 },
1359 : { 12982, 413, 3, 0 },
1360 : { 12992, 413, 4, 0 },
1361 : { 13010, 413, 3, 0 },
1362 : { 13022, 413, 3, 0 },
1363 : { 13034, 413, 2, 0 },
1364 : { 13042, 413, 2, 0 },
1365 : { 13048, 413, 5, 0 },
1366 : };
1367 :
1368 : static const unsigned short extract_method_of_code[] = {
1369 : 0, 648, 648, 648, 648, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 647, 646, 646, 646,
1370 : 646, 646, 646, 646, 646, 645, 645, 645, 644, 644, 644, 644, 644, 644, 643, 643, 643, 647, 647, 642,
1371 : 642, 642, 641, 641, 641, 641, 641, 641, 640, 640, 640, 639, 647, 638, 638, 637, 638, 637, 638, 637,
1372 : 647, 638, 647, 638, 647, 638, 647, 636, 636, 635, 635, 635, 635, 635, 635, 635, 635, 635, 634, 634,
1373 : 635, 635, 634, 634, 633, 633, 633, 633, 634, 634, 634, 634, 634, 634, 634, 634, 635, 635, 635, 635,
1374 : 635, 635, 635, 632, 632, 632, 632, 631, 631, 631, 631, 630, 630, 630, 630, 632, 632, 629, 629, 628,
1375 : 628, 628, 631, 631, 627, 627, 631, 631, 631, 626, 626, 626, 632, 632, 632, 625, 625, 625, 624, 624,
1376 : 624, 625, 625, 625, 625, 625, 625, 623, 623, 623, 622, 622, 622, 622, 622, 622, 635, 635, 635, 635,
1377 : 635, 635, 635, 621, 620, 634, 634, 619, 620, 635, 635, 635, 635, 635, 635, 635, 635, 630, 631, 631,
1378 : 631, 631, 627, 627, 631, 631, 627, 631, 631, 618, 618, 631, 631, 631, 617, 631, 617, 631, 616, 616,
1379 : 616, 616, 616, 616, 631, 631, 631, 633, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631,
1380 : 631, 631, 631, 631, 617, 617, 617, 615, 615, 631, 631, 631, 631, 614, 614, 614, 627, 627, 627, 613,
1381 : 612, 612, 611, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 613, 613,
1382 : 613, 631, 631, 631, 631, 612, 612, 612, 635, 635, 610, 610, 609, 609, 608, 608, 608, 608, 608, 608,
1383 : 607, 607, 607, 607, 607, 607, 606, 610, 606, 610, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604,
1384 : 604, 606, 610, 606, 610, 603, 603, 602, 602, 602, 601, 601, 601, 600, 600, 600, 600, 599, 598, 598,
1385 : 598, 598, 597, 596, 596, 596, 596, 595, 595, 595, 595, 594, 594, 594, 593, 593, 593, 592, 592, 592,
1386 : 591, 591, 591, 591, 591, 591, 590, 590, 590, 590, 589, 589, 589, 589, 590, 590, 589, 589, 588, 588,
1387 : 588, 588, 587, 587, 587, 587, 586, 586, 586, 586, 586, 586, 585, 585, 585, 585, 586, 586, 586, 586,
1388 : 586, 586, 586, 586, 610, 610, 584, 584, 606, 610, 606, 610, 606, 610, 606, 610, 605, 604, 605, 604,
1389 : 605, 604, 605, 604, 605, 604, 604, 603, 603, 583, 583, 583, 601, 601, 601, 600, 600, 600, 600, 599,
1390 : 582, 582, 582, 593, 593, 593, 592, 592, 592, 590, 590, 590, 590, 589, 589, 589, 589, 590, 590, 589,
1391 : 589, 581, 581, 581, 581, 580, 580, 580, 580, 579, 579, 579, 579, 578, 578, 578, 577, 576, 576, 576,
1392 : 576, 575, 575, 575, 575, 574, 574, 574, 574, 573, 573, 573, 573, 574, 574, 574, 574, 573, 573, 573,
1393 : 573, 572, 572, 572, 572, 572, 572, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 571, 570,
1394 : 570, 569, 569, 568, 568, 568, 568, 567, 567, 567, 567, 610, 610, 610, 610, 566, 566, 566, 566, 610,
1395 : 610, 610, 610, 566, 566, 566, 566, 565, 565, 565, 565, 565, 565, 604, 604, 604, 604, 604, 604, 604,
1396 : 604, 604, 604, 604, 604, 564, 564, 563, 563, 562, 562, 561, 561, 560, 560, 636, 636, 636, 636, 636,
1397 : 636, 636, 559, 559, 559, 559, 558, 558, 558, 558, 557, 556, 556, 556, 556, 555, 555, 555, 555, 554,
1398 : 558, 558, 553, 553, 553, 553, 553, 553, 553, 553, 609, 609, 609, 609, 609, 609, 609, 609, 552, 552,
1399 : 552, 552, 552, 552, 552, 552, 552, 552, 552, 552, 584, 584, 584, 584, 584, 584, 584, 584, 606, 610,
1400 : 606, 610, 606, 610, 605, 604, 605, 604, 605, 604, 606, 610, 590, 590, 590, 589, 589, 589, 551, 551,
1401 : 551, 590, 590, 550, 550, 549, 549, 548, 549, 548, 549, 548, 549, 548, 549, 606, 606, 547, 547, 547,
1402 : 547, 546, 546, 545, 545, 544, 544, 545, 545, 550, 550, 550, 550, 543, 543, 542, 542, 550, 550, 550,
1403 : 550, 550, 550, 550, 550, 543, 543, 543, 542, 542, 542, 541, 541, 541, 541, 541, 541, 541, 541, 541,
1404 : 541, 541, 541, 540, 540, 539, 539, 550, 538, 537, 538, 537, 646, 646, 646, 646, 646, 536, 536, 536,
1405 : 535, 535, 535, 646, 534, 534, 534, 533, 533, 533, 533, 533, 533, 610, 610, 606, 610, 610, 605, 604,
1406 : 605, 604, 605, 604, 605, 604, 605, 604, 604, 606, 610, 606, 610, 606, 610, 603, 603, 603, 603, 603,
1407 : 603, 602, 602, 602, 602, 602, 602, 602, 602, 602, 601, 601, 601, 601, 601, 601, 601, 601, 601, 600,
1408 : 599, 600, 600, 600, 600, 594, 594, 594, 594, 594, 594, 594, 594, 594, 593, 593, 593, 593, 593, 593,
1409 : 593, 593, 593, 592, 592, 592, 592, 592, 592, 592, 592, 592, 532, 532, 532, 532, 532, 532, 532, 532,
1410 : 532, 591, 591, 591, 591, 591, 591, 591, 591, 591, 531, 531, 531, 531, 531, 531, 531, 531, 531, 530,
1411 : 530, 530, 530, 530, 530, 530, 530, 529, 529, 610, 610, 610, 610, 606, 610, 606, 610, 606, 610, 606,
1412 : 610, 606, 610, 606, 610, 604, 604, 604, 610, 610, 528, 528, 528, 605, 604, 605, 604, 605, 604, 605,
1413 : 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 604, 604, 530, 530, 606, 610, 606,
1414 : 610, 604, 600, 600, 600, 600, 600, 600, 600, 600, 599, 599, 527, 527, 595, 595, 595, 595, 595, 595,
1415 : 595, 595, 595, 595, 595, 595, 526, 526, 526, 526, 526, 526, 525, 525, 525, 525, 525, 525, 524, 524,
1416 : 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, 523, 523, 523, 523, 523, 523, 523, 523, 523, 523,
1417 : 523, 523, 586, 586, 586, 586, 586, 586, 522, 522, 522, 522, 522, 522, 522, 522, 522, 522, 522, 522,
1418 : 521, 521, 521, 521, 521, 521, 627, 627, 631, 627, 631, 627, 631, 627, 631, 627, 617, 520, 617, 520,
1419 : 617, 520, 617, 520, 617, 520, 520, 519, 519, 518, 518, 518, 518, 517, 516, 516, 516, 516, 515, 515,
1420 : 515, 515, 514, 514, 514, 513, 513, 513, 513, 627, 627, 520, 520, 627, 627, 627, 627, 520, 520, 520,
1421 : 520, 614, 614, 512, 627, 627, 627, 627, 627, 627, 614, 614, 614, 614, 614, 614, 512, 512, 631, 631,
1422 : 631, 631, 631, 631, 631, 631, 631, 631, 631, 617, 617, 617, 617, 617, 617, 631, 625, 625, 518, 518,
1423 : 518, 518, 517, 628, 628, 628, 511, 511, 510, 510, 610, 610, 530, 530, 530, 530, 509, 508, 507, 506,
1424 : 505, 504, 503, 502, 501, 500, 499, 498, 509, 508, 507, 506, 505, 504, 503, 502, 501, 500, 499, 498,
1425 : 606, 606, 606, 610, 606, 610, 605, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 604, 606, 610,
1426 : 606, 610, 603, 603, 600, 600, 600, 600, 599, 595, 595, 595, 595, 592, 592, 592, 511, 511, 511, 511,
1427 : 510, 510, 510, 510, 610, 610, 610, 610, 605, 605, 605, 605, 604, 604, 604, 604, 509, 508, 507, 506,
1428 : 505, 504, 503, 502, 501, 500, 499, 497, 509, 508, 507, 506, 505, 504, 503, 502, 501, 500, 499, 498,
1429 : 606, 610, 606, 610, 604, 606, 606, 606, 606, 606, 610, 606, 610, 519, 606, 610, 606, 610, 605, 605,
1430 : 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604,
1431 : 604, 604, 606, 610, 606, 610, 606, 610, 606, 610, 603, 603, 603, 603, 600, 600, 600, 600, 600, 600,
1432 : 600, 600, 599, 599, 595, 595, 595, 595, 595, 595, 595, 595, 592, 592, 592, 592, 592, 592, 511, 511,
1433 : 511, 511, 511, 511, 510, 510, 510, 510, 510, 510, 511, 511, 511, 511, 511, 511, 510, 510, 510, 510,
1434 : 510, 510, 496, 496, 496, 496, 496, 496, 495, 495, 495, 495, 495, 495, 494, 494, 586, 586, 511, 511,
1435 : 511, 511, 511, 511, 511, 511, 510, 510, 510, 510, 510, 510, 510, 510, 511, 511, 511, 511, 511, 511,
1436 : 511, 511, 510, 510, 510, 510, 510, 510, 510, 510, 496, 496, 496, 496, 496, 496, 496, 496, 495, 495,
1437 : 495, 495, 495, 495, 495, 495, 493, 493, 493, 493, 631, 631, 631, 631, 606, 606, 606, 610, 606, 610,
1438 : 606, 610, 606, 610, 605, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605, 604, 605,
1439 : 604, 605, 604, 605, 604, 604, 604, 606, 610, 606, 610, 606, 610, 606, 610, 603, 603, 603, 603, 520,
1440 : 520, 492, 492, 492, 492, 491, 491, 491, 491, 490, 490, 490, 490, 489, 489, 489, 489, 491, 491, 490,
1441 : 490, 489, 489, 488, 488, 487, 487, 487, 487, 486, 485, 485, 484, 484, 483, 483, 482, 482, 481, 481,
1442 : 480, 480, 480, 480, 480, 480, 479, 479, 478, 478, 477, 477, 476, 476, 475, 475, 635, 635, 635, 635,
1443 : 634, 634, 635, 635, 635, 632, 621, 474, 474, 473, 472, 471, 470, 470, 469, 469, 632, 632, 468, 467,
1444 : 632, 632, 629, 629, 466, 466, 466, 521, 521, 465, 464, 521, 521, 530, 530, 463, 463, 463, 636, 462,
1445 : 461, 636, 636, 636, 460, 460, 460, 636, 461, 459, 458, 457, 611, 456, 456, 636, 636, 636, 461, 614,
1446 : 455, 455, 454, 454, 455, 455, 627, 627, 453, 453, 452, 451, 520, 520, 450, 450, 449, 448, 447, 449,
1447 : 448, 446, 445, 445, 444, 444, 631, 631, 627, 627, 453, 453, 453, 453, 452, 451, 451, 520, 450, 450,
1448 : 633, 633, 633, 633, 443, 443, 443, 443, 442, 442, 442, 442, 442, 442, 442, 442, 633, 443, 633, 443,
1449 : 619, 619, 441, 441, 440, 440, 439, 439, 438, 438, 437, 437, 440, 440, 436, 436, 440, 440, 439, 439,
1450 : 438, 438, 437, 437, 435, 435, 434, 434, 488, 488, 488, 488, 433, 432, 621, 621, 621, 621, 431, 431,
1451 : 440, 440, 430, 430, 429, 429, 440, 440, 440, 440, 440, 440, 429, 429, 429, 429, 429, 429, 631, 631,
1452 : 627, 627, 453, 453, 453, 453, 452, 451, 520, 450, 520, 520, 631, 627, 631, 631, 631, 631, 631, 627,
1453 : 627, 428, 427, 639, 426, 425, 425, 424, 423, 422, 422, 421, 420, 611, 611, 611, 419, 419, 418, 417,
1454 : 416, 415, 633, 633, 619, 619, 414, 414, 474, 474, 474, 606, 606, 606, 606, 633, 633, 474, 474, 474,
1455 : 413, 413, 413, 413, 413, 413, 412, 412, 412, 412, 412, 412, 413, 413, 413, 412, 412, 412, 411, 411,
1456 : 411, 633, 633, 631, 633, 633, 631, 631, 631, 611, 410, 410, 633, 633, 409, 408, 407, 406, 406, 409,
1457 : 633, 405, 621, 621, 621, 621, 621, 633, 620, 633, 633, 443, 443, 443, 443, 404, 404, 404, 404, 443,
1458 : 443, 443, 443, 443, 443, 403, 403, 404, 404, 404, 404, 633, 633, 633, 633, 636, 402, 402, 402, 402,
1459 : 402, 402, 402, 402, 401, 401, 401, 401, 400, 400, 399, 399, 399, 399, 399, 399, 399, 399, 398, 398,
1460 : 398, 398, 397, 397, 396, 396, 395, 395, 394, 394, 627, 627, 627, 627, 627, 627, 627, 627, 393, 393,
1461 : 393, 392, 391, 393, 473, 393, 393, 393, 393, 393, 606, 606, 606, 606, 606, 606, 621, 621, 621, 621,
1462 : 621, 621, 390, 390, 390, 390, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610,
1463 : 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 389, 388, 389, 388, 389, 388, 389, 388, 389, 388,
1464 : 389, 388, 389, 389, 389, 389, 389, 389, 610, 610, 610, 610, 610, 610, 443, 443, 443, 387, 387, 619,
1465 : 619, 620, 620, 620, 620, 386, 386, 386, 386, 386, 386, 386, 386, 385, 385, 385, 385, 406, 406, 636,
1466 : 636, 384, 635, 459, 611, 621, 621, 621, 383, 633, 409, 611, 382, 382, 381, 611, 611, 461, 461, 633,
1467 : 633, 633, 633, 621, 621, 621, 621, 621, 621, 621, 621, 459, 459, 380, 380, 380, 380, 459, 380, 633,
1468 : 409, 458, 379, 611, 636, 461, 461, 611, 611, 380, 380, 378, 378, 611, 611, 611, 611, 461, 461, 461,
1469 : 461, 461, 461, 458, 458, 458, 458, 458, 458, 462, 633, 633, 461, 461, 636, 461, 459, 459, 459, 459,
1470 : 636, 461, 636, 377, 636, 461, 636, 461, 461, 380, 380, 380, 461, 461, 376, 380, 611, 611, 636, 636,
1471 : 633, 633, 375, 375, 636, 636, 374, 374, 374, 374, 636, 636, 636, 461, 374, 378, 461, 461, 374, 378,
1472 : 461, 636, 636, 459, 461, 633, 459, 461, 611, 633, 633, 633, 633, 635, 635, 635, 635, 635, 635, 635,
1473 : 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
1474 : 635, 635, 635, 635, 635, 633, 614, 614, 512, 610, 610, 610, 610, 610, 619, 619, 633, 621, 621, 633,
1475 : 621, 373, 372, 371, 370, 369, 610, 610, 610, 368, 368, 367, 473, 521, 606, 606, 606, 627, 627, 366,
1476 : 366, 631, 631, 631, 605, 605, 631, 365, 365, 606, 631, 631, 614, 614, 614, 614, 614, 614, 614, 614,
1477 : 512, 512, 512, 512, 521, 521, 521, 521, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1478 : 627, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 610, 610, 606, 606, 606, 606, 606,
1479 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 364, 364,
1480 : 364, 364, 363, 362, 361, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1481 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 631, 631, 631, 631, 631, 631, 606, 606, 606, 606, 606,
1482 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 610, 610, 610, 606, 606, 606, 606, 606, 606,
1483 : 606, 606, 606, 606, 606, 606, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 473, 359,
1484 : 358, 358, 473, 473, 473, 359, 359, 359, 358, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357,
1485 : 473, 473, 631, 631, 631, 521, 521, 521, 530, 530, 530, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1486 : 610, 610, 610, 610, 610, 610, 610, 610, 610, 548, 621, 548, 621, 605, 605, 605, 605, 605, 605, 605,
1487 : 605, 617, 617, 617, 617, 617, 617, 617, 617, 631, 631, 631, 631, 356, 356, 356, 356, 356, 355, 355,
1488 : 355, 354, 354, 355, 354, 354, 354, 621, 621, 353, 353, 353, 352, 367, 367, 367, 367, 367, 367, 631,
1489 : 617, 631, 631, 631, 631, 606, 631, 617, 617, 631, 617, 354, 356, 356, 356, 356, 355, 355, 355, 354,
1490 : 354, 355, 354, 354, 354, 351, 351, 351, 352, 352, 352, 617, 631, 631, 631, 362, 362, 362, 362, 362,
1491 : 621, 633, 350, 350, 636, 636, 631, 631, 631, 631, 631, 631, 635, 635, 635, 635, 635, 635, 635, 635,
1492 : 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 349,
1493 : 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349,
1494 : 349, 349, 349, 349, 349, 349, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 633, 633,
1495 : 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 347, 347, 347, 347, 347, 347, 348, 348, 348, 348,
1496 : 348, 348, 348, 348, 348, 348, 348, 348, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633,
1497 : 346, 346, 346, 345, 345, 345, 344, 344, 344, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367,
1498 : 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 343, 343, 343, 343, 343, 343, 343,
1499 : 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 521, 521, 606,
1500 : 606, 620, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 633,
1501 : 633, 633, 633, 633, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 530, 530, 530, 530,
1502 : 604, 604, 604, 604, 627, 627, 627, 627, 520, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610, 610,
1503 : 610, 604, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 342, 342,
1504 : 342, 342, 341, 341, 341, 341, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340,
1505 : 340, 340, 339, 339, 339, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614, 614,
1506 : 614, 614, 614, 614, 614, 614, 614, 614, 614, 512, 512, 512, 512, 512, 512, 606, 338, 337, 336, 606,
1507 : 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606,
1508 : 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606,
1509 : 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606,
1510 : 338, 337, 336, 606, 338, 337, 336, 335, 335, 335, 335, 335, 335, 334, 333, 332, 331, 334, 333, 332,
1511 : 331, 334, 333, 332, 331, 334, 333, 332, 331, 334, 333, 332, 331, 334, 333, 332, 331, 606, 338, 337,
1512 : 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337,
1513 : 336, 606, 338, 337, 336, 606, 338, 337, 336, 606, 338, 337, 336, 335, 335, 335, 335, 335, 335, 334,
1514 : 333, 332, 331, 334, 333, 332, 331, 334, 333, 332, 331, 334, 333, 332, 331, 334, 333, 332, 331, 334,
1515 : 333, 332, 331, 606, 338, 337, 336, 606, 337, 606, 337, 606, 338, 337, 336, 606, 337, 606, 337, 606,
1516 : 338, 337, 336, 606, 337, 606, 337, 633, 633, 330, 329, 633, 348, 633, 348, 633, 348, 330, 328, 329,
1517 : 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 330, 330, 328, 328, 631, 327, 326, 325,
1518 : 631, 326, 631, 326, 631, 327, 326, 325, 631, 326, 631, 326, 631, 327, 326, 325, 631, 326, 631, 326,
1519 : 521, 324, 323, 322, 521, 324, 323, 322, 521, 324, 323, 322, 465, 321, 320, 319, 465, 321, 320, 319,
1520 : 465, 321, 320, 319, 633, 633, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348,
1521 : 633, 348, 633, 348, 330, 330, 328, 328, 330, 329, 330, 328, 329, 318, 606, 338, 337, 336, 606, 338,
1522 : 337, 336, 606, 337, 606, 337, 606, 337, 606, 337, 606, 338, 337, 336, 606, 338, 337, 336, 606, 337,
1523 : 606, 337, 606, 337, 606, 337, 606, 338, 337, 336, 606, 338, 337, 336, 606, 337, 606, 337, 606, 337,
1524 : 606, 337, 317, 317, 317, 317, 317, 317, 317, 317, 317, 390, 390, 390, 390, 316, 316, 316, 316, 315,
1525 : 315, 315, 315, 621, 314, 313, 312, 621, 314, 313, 312, 621, 313, 621, 313, 621, 313, 621, 313, 621,
1526 : 314, 313, 312, 621, 314, 313, 312, 621, 313, 621, 313, 621, 313, 621, 313, 621, 314, 313, 312, 621,
1527 : 314, 313, 312, 621, 313, 621, 313, 621, 313, 621, 313, 311, 311, 311, 311, 311, 311, 334, 332, 333,
1528 : 331, 334, 332, 333, 331, 334, 332, 333, 331, 334, 332, 333, 331, 334, 332, 333, 331, 334, 332, 333,
1529 : 331, 310, 309, 308, 307, 310, 309, 308, 307, 310, 309, 308, 307, 310, 309, 308, 307, 310, 309, 308,
1530 : 307, 310, 309, 308, 307, 306, 306, 306, 306, 305, 305, 373, 371, 372, 370, 304, 304, 303, 303, 621,
1531 : 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621,
1532 : 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 302, 301, 300, 299, 302,
1533 : 301, 300, 299, 302, 301, 300, 299, 473, 473, 473, 473, 317, 317, 317, 317, 298, 298, 298, 298, 317,
1534 : 317, 317, 317, 298, 298, 298, 298, 317, 317, 317, 317, 317, 317, 317, 317, 297, 297, 297, 297, 302,
1535 : 302, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 474, 296, 296, 473, 295, 294, 293, 473,
1536 : 294, 473, 294, 473, 295, 294, 293, 473, 294, 473, 294, 473, 295, 294, 293, 473, 294, 473, 294, 292,
1537 : 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1538 : 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1539 : 292, 292, 292, 292, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
1540 : 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
1541 : 291, 291, 291, 291, 291, 291, 291, 291, 291, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1542 : 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 383, 383, 383, 383, 292, 292, 292, 383, 383, 473,
1543 : 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473,
1544 : 294, 473, 294, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1545 : 292, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 292,
1546 : 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 473, 473, 473, 473, 473, 473, 473, 473, 473,
1547 : 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 621, 290, 621, 290, 621,
1548 : 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 292,
1549 : 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 291, 291, 291,
1550 : 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 621, 290, 621, 290, 621,
1551 : 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 473,
1552 : 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473, 294, 473,
1553 : 294, 473, 294, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
1554 : 292, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 292,
1555 : 292, 292, 292, 292, 292, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 292, 288, 292,
1556 : 288, 292, 288, 287, 286, 287, 286, 287, 286, 285, 284, 283, 282, 285, 284, 283, 282, 285, 284, 283,
1557 : 282, 281, 280, 279, 278, 281, 280, 279, 278, 281, 280, 279, 278, 281, 521, 521, 521, 521, 521, 277,
1558 : 521, 277, 521, 277, 521, 277, 521, 521, 521, 277, 521, 277, 606, 606, 606, 606, 606, 606, 606, 606,
1559 : 606, 606, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1560 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 606, 606, 606, 606, 606, 606, 337, 606, 337, 606, 337,
1561 : 606, 337, 606, 337, 606, 337, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 521, 521,
1562 : 521, 521, 521, 521, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 393,
1563 : 393, 393, 393, 393, 393, 393, 276, 275, 274, 393, 276, 393, 276, 393, 393, 393, 276, 275, 274, 393,
1564 : 276, 393, 276, 393, 393, 276, 275, 274, 393, 276, 393, 276, 273, 272, 273, 273, 273, 272, 273, 273,
1565 : 273, 272, 273, 273, 271, 270, 271, 270, 271, 270, 271, 270, 271, 270, 271, 270, 271, 270, 271, 270,
1566 : 271, 270, 269, 269, 269, 269, 269, 269, 269, 268, 267, 266, 269, 268, 269, 268, 269, 269, 269, 268,
1567 : 267, 266, 269, 268, 269, 268, 269, 269, 268, 267, 266, 269, 268, 269, 268, 265, 264, 265, 264, 265,
1568 : 264, 265, 264, 265, 264, 265, 264, 265, 264, 265, 264, 265, 264, 263, 262, 263, 263, 263, 262, 263,
1569 : 263, 263, 262, 263, 263, 326, 326, 326, 326, 326, 326, 326, 261, 325, 260, 326, 261, 326, 261, 326,
1570 : 326, 326, 261, 325, 260, 326, 261, 326, 261, 326, 326, 261, 325, 260, 326, 261, 326, 261, 259, 258,
1571 : 259, 259, 259, 258, 259, 259, 259, 258, 259, 259, 257, 256, 257, 257, 257, 256, 257, 257, 257, 256,
1572 : 257, 257, 255, 254, 255, 254, 255, 253, 254, 252, 255, 253, 254, 252, 255, 253, 254, 252, 255, 253,
1573 : 254, 252, 255, 253, 254, 252, 255, 253, 255, 253, 255, 255, 255, 253, 254, 252, 255, 253, 255, 253,
1574 : 255, 255, 253, 254, 252, 255, 253, 255, 253, 251, 250, 251, 251, 251, 250, 251, 251, 251, 250, 251,
1575 : 251, 249, 248, 249, 248, 249, 248, 249, 248, 249, 248, 249, 248, 249, 248, 249, 248, 249, 248, 473,
1576 : 473, 473, 473, 473, 247, 295, 246, 473, 247, 473, 247, 473, 247, 295, 246, 473, 247, 473, 247, 473,
1577 : 247, 295, 246, 473, 247, 473, 247, 245, 244, 245, 244, 245, 244, 245, 244, 245, 244, 245, 244, 245,
1578 : 244, 245, 244, 245, 244, 243, 242, 243, 242, 243, 242, 243, 242, 243, 242, 243, 242, 243, 242, 243,
1579 : 242, 243, 242, 241, 241, 241, 241, 241, 240, 239, 238, 241, 240, 241, 240, 241, 240, 239, 238, 241,
1580 : 240, 241, 240, 241, 240, 239, 238, 241, 240, 241, 240, 237, 236, 237, 236, 237, 236, 237, 236, 237,
1581 : 236, 237, 236, 237, 236, 237, 236, 237, 236, 235, 234, 235, 234, 235, 234, 235, 234, 235, 234, 235,
1582 : 234, 235, 234, 235, 234, 235, 234, 233, 232, 233, 232, 233, 232, 231, 230, 231, 230, 231, 230, 229,
1583 : 228, 229, 228, 229, 228, 227, 226, 227, 226, 227, 226, 225, 224, 225, 224, 225, 224, 223, 222, 223,
1584 : 222, 223, 222, 221, 220, 221, 220, 221, 220, 219, 218, 219, 218, 219, 218, 217, 216, 217, 216, 217,
1585 : 216, 215, 214, 215, 214, 215, 214, 213, 212, 213, 212, 213, 212, 211, 210, 211, 210, 211, 210, 209,
1586 : 208, 209, 208, 209, 208, 207, 206, 207, 206, 207, 206, 205, 204, 205, 204, 205, 204, 203, 202, 203,
1587 : 202, 203, 202, 201, 201, 200, 200, 345, 345, 199, 199, 473, 295, 198, 197, 473, 295, 198, 197, 473,
1588 : 198, 473, 198, 473, 198, 473, 198, 290, 290, 290, 290, 290, 290, 294, 294, 294, 294, 294, 294, 473,
1589 : 473, 473, 473, 473, 473, 196, 196, 196, 196, 196, 196, 195, 194, 195, 194, 195, 195, 195, 195, 621,
1590 : 193, 314, 192, 621, 193, 314, 192, 621, 193, 621, 193, 621, 193, 621, 193, 191, 190, 189, 188, 191,
1591 : 190, 189, 188, 187, 186, 187, 186, 310, 308, 185, 184, 310, 308, 185, 184, 633, 183, 348, 182, 633,
1592 : 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633,
1593 : 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633,
1594 : 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633,
1595 : 183, 348, 182, 633, 183, 348, 182, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1596 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1597 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 521, 521, 521, 521, 181,
1598 : 181, 181, 181, 180, 180, 180, 180, 521, 521, 181, 181, 180, 180, 456, 179, 456, 179, 456, 179, 456,
1599 : 179, 178, 177, 178, 177, 633, 633, 633, 633, 176, 176, 175, 174, 175, 174, 175, 174, 175, 174, 633,
1600 : 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633,
1601 : 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633,
1602 : 183, 348, 182, 633, 183, 348, 182, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1603 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1604 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 633, 348, 633, 348, 633,
1605 : 348, 633, 348, 617, 173, 617, 173, 617, 173, 617, 173, 631, 326, 631, 326, 631, 326, 631, 326, 633,
1606 : 348, 633, 348, 617, 173, 617, 173, 631, 326, 631, 326, 633, 183, 633, 183, 633, 183, 633, 183, 176,
1607 : 172, 176, 172, 617, 171, 617, 171, 617, 171, 617, 171, 631, 631, 631, 631, 631, 327, 326, 325, 631,
1608 : 327, 326, 325, 631, 327, 326, 325, 617, 173, 617, 173, 631, 326, 631, 326, 617, 173, 631, 326, 631,
1609 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 521, 521, 181, 181, 180, 180, 521, 181, 180,
1610 : 170, 169, 168, 167, 170, 169, 168, 167, 465, 320, 465, 320, 170, 168, 169, 167, 170, 168, 169, 167,
1611 : 465, 320, 465, 320, 166, 176, 633, 617, 175, 174, 175, 174, 456, 179, 456, 179, 178, 177, 633, 633,
1612 : 176, 633, 183, 633, 183, 176, 172, 617, 171, 617, 171, 366, 165, 175, 174, 175, 175, 174, 175, 174,
1613 : 631, 327, 326, 325, 631, 326, 631, 326, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325,
1614 : 633, 348, 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182,
1615 : 633, 183, 348, 182, 633, 348, 456, 164, 633, 183, 348, 182, 633, 348, 456, 164, 633, 183, 348, 182,
1616 : 633, 183, 348, 182, 631, 327, 326, 325, 631, 327, 326, 325, 633, 348, 631, 326, 633, 348, 631, 326,
1617 : 631, 631, 633, 633, 631, 633, 631, 175, 175, 174, 456, 179, 456, 179, 178, 177, 633, 183, 633, 183,
1618 : 176, 172, 617, 171, 617, 171, 366, 165, 456, 179, 456, 179, 178, 177, 633, 183, 633, 183, 176, 172,
1619 : 617, 171, 617, 171, 366, 165, 456, 179, 456, 179, 178, 177, 633, 633, 176, 633, 183, 633, 183, 176,
1620 : 172, 617, 171, 617, 171, 366, 165, 631, 326, 631, 326, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1621 : 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631, 327, 326, 325, 631,
1622 : 327, 326, 325, 631, 326, 631, 326, 521, 521, 181, 181, 180, 180, 631, 326, 631, 326, 617, 173, 617,
1623 : 617, 617, 173, 633, 183, 348, 182, 633, 348, 330, 176, 163, 162, 633, 183, 348, 182, 633, 183, 348,
1624 : 182, 176, 163, 162, 633, 183, 348, 182, 633, 183, 348, 182, 631, 327, 326, 325, 631, 327, 326, 325,
1625 : 176, 617, 163, 161, 160, 633, 348, 631, 326, 633, 348, 631, 326, 633, 183, 348, 182, 633, 183, 348,
1626 : 182, 633, 348, 633, 348, 633, 348, 633, 348, 631, 327, 326, 325, 631, 327, 326, 325, 631, 326, 631,
1627 : 326, 631, 326, 631, 326, 633, 183, 348, 182, 633, 348, 633, 348, 633, 183, 348, 182, 633, 348, 633,
1628 : 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 631, 327, 326, 325, 631, 327, 326,
1629 : 325, 631, 326, 631, 326, 633, 348, 633, 348, 617, 173, 617, 173, 633, 348, 633, 348, 631, 326, 631,
1630 : 326, 633, 348, 617, 161, 160, 175, 174, 159, 158, 175, 175, 174, 159, 158, 175, 631, 327, 326, 325,
1631 : 631, 326, 521, 631, 181, 180, 631, 327, 326, 325, 631, 326, 617, 617, 633, 633, 633, 633, 633, 633,
1632 : 633, 633, 633, 633, 633, 633, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
1633 : 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 156, 156, 156, 156, 156, 156, 617, 173, 631, 326,
1634 : 605, 605, 605, 605, 605, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 155, 605, 154, 153, 154,
1635 : 153, 154, 153, 154, 153, 154, 153, 154, 153, 152, 151, 150, 149, 149, 631, 521, 631, 148, 365, 365,
1636 : 617, 617, 617, 617, 617, 606, 606, 606, 606, 606, 606, 606, 606, 147, 147, 147, 147, 147, 147, 147,
1637 : 147, 175, 175, 175, 147, 147, 147, 147, 147, 147, 465, 465, 465, 465, 465, 465, 617, 365, 365, 365,
1638 : 356, 147, 147, 147, 147, 465, 465, 465, 617, 368, 368, 393, 393, 326, 521, 146, 146, 146, 146, 147,
1639 : 631, 355, 355, 145, 145, 352, 352, 144, 144, 353, 353, 326, 326, 631, 631, 326, 326, 631, 631, 326,
1640 : 326, 631, 631, 326, 326, 631, 631, 326, 326, 631, 631, 326, 326, 631, 631, 326, 326, 631, 631, 326,
1641 : 326, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631,
1642 : 631, 631, 631, 631, 631, 355, 355, 605, 155, 605, 155, 155, 605, 154, 153, 605, 155, 154, 153, 605,
1643 : 155, 155, 605, 310, 308, 309, 307, 310, 308, 309, 307, 310, 308, 309, 307, 621, 314, 313, 312, 621,
1644 : 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621,
1645 : 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 143, 142, 143, 142, 143, 142, 143, 142, 143,
1646 : 142, 143, 142, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
1647 : 143, 143, 143, 143, 143, 143, 143, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635,
1648 : 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1649 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1650 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1651 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1652 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1653 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1654 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1655 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1656 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1657 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1658 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1659 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1660 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1661 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1662 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1663 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1664 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1665 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1666 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1667 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1668 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1669 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1670 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1671 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1672 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1673 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1674 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1675 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1676 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1677 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1678 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1679 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1680 : 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 585,
1681 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1682 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1683 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1684 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1685 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1686 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1687 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1688 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1689 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1690 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1691 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1692 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1693 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1694 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1695 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1696 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1697 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1698 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1699 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1700 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1701 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1702 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1703 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1704 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1705 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1706 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1707 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1708 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1709 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1710 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1711 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1712 : 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
1713 : 585, 585, 585, 585, 585, 585, 585, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1714 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1715 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1716 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1717 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1718 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1719 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1720 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1721 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1722 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1723 : 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586, 586,
1724 : 586, 586, 586, 140, 140, 140, 140, 140, 140, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348,
1725 : 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348, 182, 633, 183, 348,
1726 : 182, 633, 183, 348, 182, 310, 309, 308, 307, 310, 309, 308, 307, 310, 309, 308, 307, 473, 247, 473,
1727 : 247, 473, 247, 473, 247, 473, 247, 473, 247, 355, 355, 355, 355, 355, 355, 355, 355, 143, 139, 142,
1728 : 138, 143, 139, 142, 138, 143, 139, 142, 138, 143, 139, 142, 138, 143, 139, 142, 138, 143, 139, 142,
1729 : 138, 140, 137, 140, 137, 140, 137, 140, 137, 140, 137, 140, 137, 136, 135, 134, 133, 136, 135, 134,
1730 : 133, 132, 131, 132, 131, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313,
1731 : 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313,
1732 : 312, 130, 129, 128, 127, 130, 129, 128, 127, 130, 129, 128, 127, 126, 125, 126, 125, 126, 125, 124,
1733 : 123, 152, 151, 149, 150, 122, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 351, 351,
1734 : 631, 631, 631, 631, 521, 148, 365, 365, 631, 326, 606, 147, 147, 631, 631, 631, 631, 631, 631, 631,
1735 : 631, 631, 631, 631, 631, 383, 121, 383, 121, 383, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326,
1736 : 326, 326, 631, 631, 631, 383, 326, 326, 326, 631, 631, 631, 631, 631, 631, 631, 631, 631, 383, 383,
1737 : 326, 326, 326, 326, 326, 326, 326, 326, 326, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
1738 : 521, 521, 521, 521, 121, 631, 631, 631, 617, 617, 617, 161, 161, 161, 160, 160, 160, 120, 120, 120,
1739 : 631, 631, 631, 631, 631, 631, 617, 617, 617, 617, 617, 617, 161, 161, 161, 161, 161, 161, 160, 160,
1740 : 160, 160, 160, 160, 120, 120, 120, 120, 120, 120, 631, 631, 631, 631, 631, 631, 617, 617, 617, 617,
1741 : 617, 617, 161, 161, 161, 161, 161, 161, 160, 160, 160, 160, 160, 160, 120, 120, 120, 120, 120, 120,
1742 : 521, 521, 521, 521, 521, 521, 521, 521, 521, 121, 631, 631, 631, 631, 631, 631, 617, 617, 617, 617,
1743 : 617, 617, 161, 161, 161, 161, 161, 161, 160, 160, 160, 160, 160, 160, 120, 120, 120, 120, 120, 120,
1744 : 631, 631, 631, 617, 617, 617, 161, 161, 161, 160, 160, 160, 120, 120, 120, 521, 521, 521, 366, 631,
1745 : 631, 631, 617, 617, 617, 161, 161, 161, 160, 160, 160, 120, 120, 120, 617, 617, 617, 631, 631, 631,
1746 : 617, 617, 617, 161, 161, 161, 160, 160, 160, 120, 120, 120, 606, 606, 606, 606, 606, 606, 606, 606,
1747 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 337, 337, 337, 337,
1748 : 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
1749 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1750 : 606, 606, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1751 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1752 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 364, 119,
1753 : 364, 119, 364, 119, 364, 119, 364, 119, 364, 119, 361, 118, 361, 118, 361, 118, 361, 118, 361, 118,
1754 : 361, 118, 621, 313, 621, 313, 621, 313, 363, 363, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1755 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 606, 606, 606, 606, 606, 606, 606,
1756 : 606, 337, 606, 337, 606, 337, 606, 337, 117, 117, 117, 117, 117, 117, 117, 117, 117, 606, 337, 606,
1757 : 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606,
1758 : 337, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 586, 586, 586, 586, 606, 337, 606,
1759 : 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1760 : 606, 606, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1761 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1762 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 606, 606, 606, 606, 606, 606, 606,
1763 : 606, 606, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1764 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1765 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1766 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1767 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1768 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 606, 606,
1769 : 606, 606, 606, 606, 585, 585, 585, 585, 585, 585, 585, 585, 317, 317, 317, 317, 317, 317, 317, 317,
1770 : 298, 298, 298, 298, 298, 298, 298, 298, 317, 317, 297, 297, 116, 116, 317, 317, 317, 317, 317, 317,
1771 : 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317,
1772 : 317, 317, 317, 317, 317, 317, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 337,
1773 : 606, 337, 606, 606, 606, 606, 606, 606, 606, 337, 606, 337, 606, 337, 606, 337, 115, 115, 115, 115,
1774 : 115, 115, 115, 115, 115, 115, 115, 115, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
1775 : 277, 277, 277, 277, 277, 277, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1776 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1777 : 606, 337, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606,
1778 : 606, 606, 606, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 605, 605, 605, 605, 605,
1779 : 605, 605, 605, 605, 605, 605, 605, 548, 548, 548, 548, 548, 548, 548, 548, 548, 548, 548, 548, 548,
1780 : 548, 548, 548, 548, 548, 548, 548, 548, 548, 548, 548, 621, 290, 621, 290, 621, 290, 621, 290, 621,
1781 : 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621,
1782 : 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 383,
1783 : 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
1784 : 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 114, 114, 114, 114, 114,
1785 : 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
1786 : 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 383, 383, 383, 383, 383, 383, 383, 383, 383,
1787 : 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
1788 : 383, 383, 383, 383, 383, 383, 383, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
1789 : 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
1790 : 114, 114, 114, 548, 113, 112, 111, 112, 111, 548, 113, 112, 111, 112, 111, 621, 313, 621, 313, 621,
1791 : 313, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605,
1792 : 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605,
1793 : 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605, 155, 605,
1794 : 155, 605, 356, 356, 356, 356, 356, 356, 326, 326, 326, 326, 110, 109, 110, 109, 110, 109, 110, 109,
1795 : 148, 108, 148, 108, 521, 277, 521, 277, 148, 108, 148, 108, 521, 277, 521, 277, 149, 150, 149, 150,
1796 : 152, 151, 152, 151, 107, 106, 107, 106, 152, 151, 152, 151, 124, 123, 124, 123, 105, 104, 105, 104,
1797 : 105, 104, 107, 106, 353, 144, 621, 313, 103, 102, 353, 144, 621, 313, 101, 100, 99, 98, 147, 631,
1798 : 631, 355, 355, 354, 354, 354, 354, 354, 355, 355, 631, 631, 631, 617, 617, 355, 354, 355, 354, 631,
1799 : 355, 355, 606, 606, 606, 606, 606, 97, 97, 606, 606, 606, 606, 606, 147, 147, 96, 95, 96, 95,
1800 : 96, 95, 96, 95, 96, 95, 96, 95, 621, 621, 621, 633, 633, 633, 633, 176, 176, 176, 176, 176,
1801 : 176, 176, 176, 642, 642, 642, 642, 94, 94, 94, 94, 93, 93, 93, 93, 93, 93, 93, 93, 92,
1802 : 92, 92, 92, 92, 92, 92, 92, 91, 91, 91, 91, 90, 90, 90, 90, 90, 90, 90, 90, 633,
1803 : 633, 176, 176, 176, 89, 642, 642, 88, 88, 93, 93, 87, 87, 93, 87, 87, 86, 86, 85, 85,
1804 : 84, 84, 350, 350, 461, 611, 461, 459, 380, 380, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
1805 : 83, 83, 83, 83, 83, 83, 83, 83, 363, 621, 313, 621, 313, 621, 313, 82, 81, 363, 363, 80,
1806 : 79, 80, 79, 80, 79, 80, 80, 621, 313, 621, 313, 621, 313, 78, 621, 621, 621, 621, 621, 621,
1807 : 621, 621, 621, 247, 247, 247, 473, 473, 473, 473, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631,
1808 : 631, 631, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 633, 633, 456, 456, 473, 621,
1809 : 143, 621, 367, 367, 367, 367, 473, 473, 473, 473, 473, 473, 390, 390, 390, 390, 390, 390, 390, 390,
1810 : 77, 77, 77, 77, 77, 77, 77, 77, 76, 76, 76, 76, 76, 76, 76, 76, 473, 473, 473, 473,
1811 : 633, 633, 633, 473, 473, 473, 247, 473, 247, 473, 247, 621, 313, 621, 313, 621, 313, 473, 473, 390,
1812 : 390, 390, 390, 75, 75, 75, 75, 367, 367, 367, 367, 367, 367, 367, 367, 633, 631, 326, 631, 326,
1813 : 146, 74, 74, 74, 631, 326, 631, 326, 146, 74, 74, 74, 617, 173, 617, 173, 631, 326, 631, 326,
1814 : 73, 73, 72, 72, 146, 74, 74, 74, 631, 326, 631, 326, 617, 173, 617, 173, 631, 326, 631, 326,
1815 : 73, 73, 72, 72, 617, 173, 617, 173, 631, 326, 631, 326, 71, 70, 71, 70, 70, 70, 631, 326,
1816 : 631, 326, 146, 74, 74, 74, 631, 326, 631, 326, 146, 74, 74, 74, 617, 173, 617, 173, 631, 326,
1817 : 631, 326, 73, 73, 72, 72, 146, 74, 74, 74, 617, 173, 617, 173, 631, 326, 631, 326, 73, 73,
1818 : 72, 72, 617, 173, 617, 173, 631, 326, 631, 326, 71, 71, 70, 70, 617, 173, 617, 173, 631, 326,
1819 : 631, 326, 69, 69, 69, 631, 326, 631, 326, 617, 173, 617, 173, 631, 326, 631, 326, 73, 73, 72,
1820 : 72, 617, 173, 617, 173, 631, 326, 631, 326, 71, 71, 70, 70, 631, 326, 631, 326, 146, 68, 631,
1821 : 326, 631, 326, 146, 68, 617, 173, 617, 173, 631, 326, 631, 326, 73, 73, 72, 72, 146, 68, 374,
1822 : 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 67, 67,
1823 : 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 66, 66, 66, 66, 66, 66, 66, 66,
1824 : 621, 621, 621, 621, 130, 130, 130, 126, 126, 126, 65, 64, 64, 63, 62, 61, 61, 60, 586, 586,
1825 : 586, 586, 59, 59, 59, 59, 59, 59, 58, 58, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357,
1826 : 357, 357, 357, 357, 357, 357, 57, 57, 56, 56, 55, 55, 57, 57, 56, 56, 57, 57, 57, 57,
1827 : 57, 473, 54, 54, 54, 606, 606, 606, 606, 606, 606, 606, 606, 53, 53, 53, 53, 53, 53, 53,
1828 : 53, 53, 53, 53, 53, 606, 633, 633, 633, 633, 633, 633, 330, 330, 360, 360, 360, 360, 360, 360,
1829 : 360, 360, 52, 52, 52, 52, 473, 473, 473, 473, 143, 143, 143, 143, 621, 621, 621, 621, 633, 621,
1830 : 473, 51, 636, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617, 617,
1831 : 617, 617, 617, 617, 617, 617, 617, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621,
1832 : 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621,
1833 : 313, 621, 313, 621, 313, 621, 313, 50, 50, 50, 50, 49, 50, 49, 50, 49, 50, 49, 50, 49,
1834 : 50, 49, 50, 49, 50, 49, 50, 49, 50, 49, 50, 49, 50, 49, 353, 144, 353, 144, 107, 106,
1835 : 107, 106, 473, 617, 617, 617, 617, 617, 617, 617, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173,
1836 : 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173,
1837 : 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 617, 173, 631, 326,
1838 : 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326,
1839 : 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326,
1840 : 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 631, 631, 48, 48, 48,
1841 : 48, 47, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 48, 48, 48, 48,
1842 : 48, 48, 48, 48, 146, 146, 146, 146, 146, 146, 146, 146, 617, 173, 617, 173, 617, 173, 617, 173,
1843 : 617, 173, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 520, 520,
1844 : 520, 520, 520, 520, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 46, 46, 46, 46,
1845 : 46, 46, 46, 46, 46, 46, 46, 46, 45, 45, 45, 45, 45, 45, 473, 247, 473, 247, 473, 247,
1846 : 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247,
1847 : 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247,
1848 : 473, 247, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
1849 : 473, 473, 473, 146, 146, 146, 50, 50, 50, 50, 50, 50, 50, 50, 148, 108, 148, 108, 521, 277,
1850 : 521, 277, 148, 108, 148, 108, 521, 277, 521, 277, 148, 148, 148, 521, 521, 521, 148, 521, 43, 43,
1851 : 43, 43, 43, 43, 43, 43, 42, 42, 42, 42, 42, 42, 42, 42, 41, 41, 41, 41, 41, 41,
1852 : 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
1853 : 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
1854 : 41, 41, 631, 631, 631, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606,
1855 : 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606,
1856 : 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606,
1857 : 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, 146, 146, 146, 146, 146,
1858 : 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 176,
1859 : 40, 633, 348, 633, 348, 633, 183, 348, 182, 290, 39, 621, 621, 313, 621, 38, 621, 314, 313, 312,
1860 : 621, 38, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 36, 36,
1861 : 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 37, 37, 37, 37, 37, 37,
1862 : 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
1863 : 36, 36, 36, 36, 36, 36, 35, 35, 35, 35, 34, 34, 34, 34, 33, 33, 33, 33, 33, 33,
1864 : 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 32, 32,
1865 : 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
1866 : 32, 32, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
1867 : 33, 33, 33, 33, 33, 33, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
1868 : 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
1869 : 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
1870 : 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 473, 473,
1871 : 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 41, 41, 41, 41,
1872 : 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 473, 473, 473, 473, 473, 473,
1873 : 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473,
1874 : 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 295, 247, 246, 473, 247, 473, 247, 473, 295,
1875 : 247, 246, 473, 247, 473, 247, 302, 301, 300, 299, 302, 301, 300, 299, 621, 290, 621, 290, 621, 290,
1876 : 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 621, 290, 383, 30, 383, 30, 383, 30, 621, 314,
1877 : 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314,
1878 : 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 621, 314, 313, 312, 302, 301, 300, 299, 302, 301,
1879 : 300, 299, 302, 301, 300, 299, 473, 247, 473, 247, 473, 247, 631, 326, 631, 326, 631, 326, 631, 326,
1880 : 631, 326, 631, 326, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 621, 621, 621, 473,
1881 : 621, 621, 473, 473, 473, 143, 621, 621, 473, 621, 621, 621, 621, 621, 621, 617, 617, 617, 631, 631,
1882 : 631, 473, 473, 473, 473, 473, 473, 247, 247, 247, 247, 247, 247, 245, 245, 245, 245, 245, 245, 621,
1883 : 313, 621, 313, 621, 313, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 29, 29, 29,
1884 : 29, 28, 28, 28, 28, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 631, 326, 473, 247, 473,
1885 : 247, 473, 247, 473, 247, 473, 247, 473, 247, 621, 313, 621, 313, 621, 313, 473, 247, 473, 247, 473,
1886 : 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473,
1887 : 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 247, 473, 473, 473, 473, 473, 473, 473, 473, 473,
1888 : 245, 245, 245, 245, 245, 245, 245, 245, 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 473, 473,
1889 : 473, 473, 473, 473, 473, 473, 473, 245, 245, 245, 245, 245, 245, 245, 245, 245, 247, 247, 247, 247,
1890 : 247, 247, 247, 247, 247, 473, 473, 473, 245, 245, 245, 247, 247, 247, 473, 473, 473, 245, 245, 245,
1891 : 247, 247, 247, 473, 473, 473, 245, 245, 245, 247, 247, 247, 473, 473, 473, 245, 245, 245, 247, 247,
1892 : 247, 621, 621, 621, 621, 621, 621, 621, 621, 621, 621, 621, 621, 473, 473, 473, 621, 290, 621, 290,
1893 : 621, 290, 635, 635, 621, 621, 621, 621, 621, 621, 27, 26, 27, 26, 27, 26, 521, 181, 631, 631,
1894 : 326, 631, 326, 473, 247, 473, 247, 473, 247, 245, 245, 245, 25, 24, 24, 23, 23, 23, 23, 22,
1895 : 22, 22, 22, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473,
1896 : 473, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 21,
1897 : 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 617, 617, 617,
1898 : 617, 617, 617, 617, 617, 617, 617, 617, 617, 27, 20, 26, 19, 27, 26, 27, 26, 621, 313, 621,
1899 : 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621,
1900 : 313, 290, 290, 290, 290, 18, 18, 18, 18, 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621,
1901 : 313, 621, 313, 621, 313, 330, 330, 330, 330, 17, 17, 17, 17, 633, 348, 633, 348, 633, 348, 633,
1902 : 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 473, 473, 473, 473, 473,
1903 : 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 245, 245, 245, 245, 245, 245, 245,
1904 : 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1905 : 21, 21, 21, 21, 21, 21, 21, 21, 21, 473, 473, 473, 245, 245, 245, 247, 247, 247, 621, 313,
1906 : 621, 313, 621, 313, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1907 : 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337, 606, 337,
1908 : 393, 276, 393, 276, 393, 276, 273, 273, 273, 271, 271, 271, 326, 261, 326, 261, 326, 261, 259, 259,
1909 : 259, 257, 257, 257, 269, 268, 269, 268, 269, 268, 265, 265, 265, 263, 263, 263, 255, 253, 255, 253,
1910 : 255, 253, 251, 251, 251, 249, 249, 249, 633, 348, 633, 348, 633, 348, 631, 326, 631, 326, 631, 326,
1911 : 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 621, 313, 621, 313, 621, 313, 621, 313,
1912 : 621, 313, 621, 313, 621, 313, 621, 313, 621, 313, 621, 290, 621, 290, 621, 290, 473, 294, 473, 294,
1913 : 473, 294, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348,
1914 : 633, 348, 633, 348, 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348,
1915 : 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348, 633, 348, 633, 183,
1916 : 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348, 633, 348, 633, 183, 348, 182, 633, 183,
1917 : 348, 182, 633, 348, 633, 348, 633, 348, 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348,
1918 : 633, 348, 633, 348, 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348,
1919 : 633, 348, 633, 183, 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348, 633, 348, 633, 183,
1920 : 348, 182, 633, 183, 348, 182, 633, 348, 633, 348, 633, 348, 633, 348, 456, 179, 456, 179, 456, 179,
1921 : 456, 179, 178, 177, 178, 177, 456, 179, 456, 179, 456, 179, 456, 179, 178, 177, 178, 177, 473, 247,
1922 : 473, 247, 473, 247, 473, 295, 247, 246, 473, 295, 247, 246, 473, 295, 247, 246, 473, 295, 247, 246,
1923 : 473, 295, 247, 246, 473, 295, 247, 246, 473, 295, 247, 246, 473, 295, 247, 246, 473, 295, 247, 246,
1924 : 302, 301, 300, 299, 302, 301, 300, 299, 302, 301, 300, 299, 633, 348, 633, 348, 633, 348, 633, 348,
1925 : 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 473, 473, 473, 473,
1926 : 348, 348, 348, 633, 633, 633, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 17, 17,
1927 : 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348,
1928 : 633, 348, 290, 290, 290, 290, 290, 290, 290, 290, 18, 18, 18, 18, 18, 18, 18, 18, 621, 313,
1929 : 621, 313, 621, 313, 621, 313, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 633, 348, 330, 330,
1930 : 633, 633, 633, 633, 633, 348, 633, 348, 633, 348, 633, 633, 633, 633, 633, 633, 633, 348, 633, 348,
1931 : 633, 348, 633, 348, 633, 348, 633, 348, 621, 313, 621, 313, 621, 313, 330, 330, 17, 17, 633, 348,
1932 : 633, 633, 16, 16, 15, 15, 639, 611, 621, 633, 633, 633, 633, 97, 97, 97, 97, 97, 97, 378,
1933 : 378, 378, 378, 378, 378, 378, 14, 14, 14, 14, 14, 462, 462, 462, 13, 404, 621, 621, 621, 621,
1934 : 404, 633, 633, 633, 633, 633, 633, 12, 12, 11, 11, 11, 11, 10, 10, 10, 10, 9, 9, 9,
1935 : 9, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6,
1936 : 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 4, 4, 4, 5,
1937 : 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1938 : 3, 3, 2, 2,
1939 : };
1940 :
1941 : /* Follow one zero-terminated path in extract_paths from *PP, starting at
1942 : the pattern *ROOT, and return the location it selects. *PP is left
1943 : just after the path's terminator. */
1944 :
1945 : static inline rtx *
1946 5085217248 : follow_extract_path (const unsigned char **pp, rtx *root)
1947 : {
1948 5085217248 : const unsigned char *p = *pp;
1949 5085217248 : rtx *loc = root;
1950 12745125893 : for (; *p; p++)
1951 : {
1952 7659908645 : unsigned int step = *p - 1;
1953 7659908645 : if (step & 1)
1954 850919140 : loc = &XVECEXP (*loc, 0, step >> 1);
1955 : else
1956 6808989505 : loc = &XEXP (*loc, step >> 1);
1957 : }
1958 5085217248 : *pp = p + 1;
1959 5085217248 : return loc;
1960 : }
1961 :
1962 : void
1963 2364535569 : insn_extract (rtx_insn *insn)
1964 : {
1965 2364535569 : rtx *ro = recog_data.operand;
1966 2364535569 : rtx **ro_loc = recog_data.operand_loc;
1967 2364535569 : int icode = INSN_CODE (insn);
1968 :
1969 2364535569 : if (flag_checking)
1970 : {
1971 2364516961 : memset (ro, 0xab, sizeof (*ro) * MAX_RECOG_OPERANDS);
1972 2364516961 : memset (ro_loc, 0xab, sizeof (*ro_loc) * MAX_RECOG_OPERANDS);
1973 : }
1974 :
1975 4729071138 : unsigned int method = (icode >= 0
1976 2364535569 : && icode < (int) ARRAY_SIZE (extract_method_of_code)
1977 2364535569 : ? extract_method_of_code[icode] : 0);
1978 2364535569 : if (method == 0)
1979 : {
1980 : /* Control reaches here if insn_extract has been called with an
1981 : unrecognizable insn (code -1), or an insn whose INSN_CODE
1982 : corresponds to a DEFINE_EXPAND in the machine description;
1983 : either way, a bug. */
1984 0 : if (icode < 0)
1985 0 : fatal_insn ("unrecognizable insn:", insn);
1986 : else
1987 0 : fatal_insn ("insn with invalid code number:", insn);
1988 : }
1989 :
1990 2364535569 : if (method == 1)
1991 : {
1992 : /* An old-style define_peephole. The vector in the insn was created
1993 : just for this function and contains nothing but operands. */
1994 0 : for (int i = XVECLEN (PATTERN (insn), 0) - 1; i >= 0; i--)
1995 0 : ro[i] = *(ro_loc[i] = &XVECEXP (PATTERN (insn), 0, i));
1996 0 : return;
1997 : }
1998 :
1999 2364535569 : const struct extract_method_d *m = &extract_methods[method];
2000 2364535569 : const unsigned char *p = extract_paths + m->paths;
2001 7424979768 : for (unsigned int i = 0; i < m->n_operands; i++)
2002 5060444199 : if (*p == MISSING_OPERAND_STEP)
2003 : {
2004 0 : ro[i] = const0_rtx;
2005 0 : ro_loc[i] = &junk;
2006 0 : p += 2;
2007 : }
2008 : else
2009 : {
2010 5060444199 : rtx *loc = follow_extract_path (&p, &PATTERN (insn));
2011 5060444199 : ro_loc[i] = loc;
2012 5060444199 : ro[i] = *loc;
2013 : }
2014 2389308618 : for (unsigned int i = 0; i < m->n_dups; i++)
2015 : {
2016 24773049 : recog_data.dup_loc[i] = follow_extract_path (&p, &PATTERN (insn));
2017 24773049 : recog_data.dup_num[i] = extract_dup_num[m->dups + i];
2018 : }
2019 : }
|