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