Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | val arg: { v: IntInf.int, b: string, oc: string, d: string, x: string} list = [ |
2 | {v = 0, b = "0", oc = "0", d = "0", x = "0"}, | |
3 | {v = ~0, b = "~0", oc = "~0", d = "~0", x = "~0"}, | |
4 | {v = 1, b = "1", oc = "1", d = "1", x = "1"}, | |
5 | {v = ~1, b = "~1", oc = "~1", d = "~1", x = "~1"}, | |
6 | {v = 2, b = "10", oc = "2", d = "2", x = "2"}, | |
7 | {v = ~2, b = "~10", oc = "~2", d = "~2", x = "~2"}, | |
8 | {v = 3, b = "11", oc = "3", d = "3", x = "3"}, | |
9 | {v = ~3, b = "~11", oc = "~3", d = "~3", x = "~3"}, | |
10 | {v = 4, b = "100", oc = "4", d = "4", x = "4"}, | |
11 | {v = ~4, b = "~100", oc = "~4", d = "~4", x = "~4"}, | |
12 | {v = 5, b = "101", oc = "5", d = "5", x = "5"}, | |
13 | {v = ~5, b = "~101", oc = "~5", d = "~5", x = "~5"}, | |
14 | {v = 6, b = "110", oc = "6", d = "6", x = "6"}, | |
15 | {v = ~6, b = "~110", oc = "~6", d = "~6", x = "~6"}, | |
16 | {v = 7, b = "111", oc = "7", d = "7", x = "7"}, | |
17 | {v = ~7, b = "~111", oc = "~7", d = "~7", x = "~7"}, | |
18 | {v = 8, b = "1000", oc = "10", d = "8", x = "8"}, | |
19 | {v = ~8, b = "~1000", oc = "~10", d = "~8", x = "~8"}, | |
20 | {v = 9, b = "1001", oc = "11", d = "9", x = "9"}, | |
21 | {v = ~9, b = "~1001", oc = "~11", d = "~9", x = "~9"}, | |
22 | {v = 10, b = "1010", oc = "12", d = "10", x = "A"}, | |
23 | {v = ~10, b = "~1010", oc = "~12", d = "~10", x = "~A"}, | |
24 | {v = 11, b = "1011", oc = "13", d = "11", x = "B"}, | |
25 | {v = ~11, b = "~1011", oc = "~13", d = "~11", x = "~B"}, | |
26 | {v = 12, b = "1100", oc = "14", d = "12", x = "C"}, | |
27 | {v = ~12, b = "~1100", oc = "~14", d = "~12", x = "~C"}, | |
28 | {v = 13, b = "1101", oc = "15", d = "13", x = "D"}, | |
29 | {v = ~13, b = "~1101", oc = "~15", d = "~13", x = "~D"}, | |
30 | {v = 14, b = "1110", oc = "16", d = "14", x = "E"}, | |
31 | {v = ~14, b = "~1110", oc = "~16", d = "~14", x = "~E"}, | |
32 | {v = 15, b = "1111", oc = "17", d = "15", x = "F"}, | |
33 | {v = ~15, b = "~1111", oc = "~17", d = "~15", x = "~F"}, | |
34 | {v = 16, b = "10000", oc = "20", d = "16", x = "10"}, | |
35 | {v = ~16, b = "~10000", oc = "~20", d = "~16", x = "~10"}, | |
36 | {v = 17, b = "10001", oc = "21", d = "17", x = "11"}, | |
37 | {v = ~17, b = "~10001", oc = "~21", d = "~17", x = "~11"}, | |
38 | {v = 18, b = "10010", oc = "22", d = "18", x = "12"}, | |
39 | {v = ~18, b = "~10010", oc = "~22", d = "~18", x = "~12"}, | |
40 | {v = 19, b = "10011", oc = "23", d = "19", x = "13"}, | |
41 | {v = ~19, b = "~10011", oc = "~23", d = "~19", x = "~13"}, | |
42 | {v = 20, b = "10100", oc = "24", d = "20", x = "14"}, | |
43 | {v = ~20, b = "~10100", oc = "~24", d = "~20", x = "~14"}, | |
44 | {v = 21, b = "10101", oc = "25", d = "21", x = "15"}, | |
45 | {v = ~21, b = "~10101", oc = "~25", d = "~21", x = "~15"}, | |
46 | {v = 22, b = "10110", oc = "26", d = "22", x = "16"}, | |
47 | {v = ~22, b = "~10110", oc = "~26", d = "~22", x = "~16"}, | |
48 | {v = 23, b = "10111", oc = "27", d = "23", x = "17"}, | |
49 | {v = ~23, b = "~10111", oc = "~27", d = "~23", x = "~17"}, | |
50 | {v = 24, b = "11000", oc = "30", d = "24", x = "18"}, | |
51 | {v = ~24, b = "~11000", oc = "~30", d = "~24", x = "~18"}, | |
52 | {v = 25, b = "11001", oc = "31", d = "25", x = "19"}, | |
53 | {v = ~25, b = "~11001", oc = "~31", d = "~25", x = "~19"}, | |
54 | {v = 26, b = "11010", oc = "32", d = "26", x = "1A"}, | |
55 | {v = ~26, b = "~11010", oc = "~32", d = "~26", x = "~1A"}, | |
56 | {v = 27, b = "11011", oc = "33", d = "27", x = "1B"}, | |
57 | {v = ~27, b = "~11011", oc = "~33", d = "~27", x = "~1B"}, | |
58 | {v = 28, b = "11100", oc = "34", d = "28", x = "1C"}, | |
59 | {v = ~28, b = "~11100", oc = "~34", d = "~28", x = "~1C"}, | |
60 | {v = 29, b = "11101", oc = "35", d = "29", x = "1D"}, | |
61 | {v = ~29, b = "~11101", oc = "~35", d = "~29", x = "~1D"}, | |
62 | {v = 30, b = "11110", oc = "36", d = "30", x = "1E"}, | |
63 | {v = ~30, b = "~11110", oc = "~36", d = "~30", x = "~1E"}, | |
64 | {v = 31, b = "11111", oc = "37", d = "31", x = "1F"}, | |
65 | {v = ~31, b = "~11111", oc = "~37", d = "~31", x = "~1F"}, | |
66 | {v = 32, b = "100000", oc = "40", d = "32", x = "20"}, | |
67 | {v = ~32, b = "~100000", oc = "~40", d = "~32", x = "~20"}, | |
68 | {v = 33, b = "100001", oc = "41", d = "33", x = "21"}, | |
69 | {v = ~33, b = "~100001", oc = "~41", d = "~33", x = "~21"}, | |
70 | {v = 34, b = "100010", oc = "42", d = "34", x = "22"}, | |
71 | {v = ~34, b = "~100010", oc = "~42", d = "~34", x = "~22"}, | |
72 | {v = 35, b = "100011", oc = "43", d = "35", x = "23"}, | |
73 | {v = ~35, b = "~100011", oc = "~43", d = "~35", x = "~23"}, | |
74 | {v = 36, b = "100100", oc = "44", d = "36", x = "24"}, | |
75 | {v = ~36, b = "~100100", oc = "~44", d = "~36", x = "~24"}, | |
76 | {v = 37, b = "100101", oc = "45", d = "37", x = "25"}, | |
77 | {v = ~37, b = "~100101", oc = "~45", d = "~37", x = "~25"}, | |
78 | {v = 38, b = "100110", oc = "46", d = "38", x = "26"}, | |
79 | {v = ~38, b = "~100110", oc = "~46", d = "~38", x = "~26"}, | |
80 | {v = 39, b = "100111", oc = "47", d = "39", x = "27"}, | |
81 | {v = ~39, b = "~100111", oc = "~47", d = "~39", x = "~27"}, | |
82 | {v = 40, b = "101000", oc = "50", d = "40", x = "28"}, | |
83 | {v = ~40, b = "~101000", oc = "~50", d = "~40", x = "~28"}, | |
84 | {v = 41, b = "101001", oc = "51", d = "41", x = "29"}, | |
85 | {v = ~41, b = "~101001", oc = "~51", d = "~41", x = "~29"}, | |
86 | {v = 42, b = "101010", oc = "52", d = "42", x = "2A"}, | |
87 | {v = ~42, b = "~101010", oc = "~52", d = "~42", x = "~2A"}, | |
88 | {v = 43, b = "101011", oc = "53", d = "43", x = "2B"}, | |
89 | {v = ~43, b = "~101011", oc = "~53", d = "~43", x = "~2B"}, | |
90 | {v = 44, b = "101100", oc = "54", d = "44", x = "2C"}, | |
91 | {v = ~44, b = "~101100", oc = "~54", d = "~44", x = "~2C"}, | |
92 | {v = 45, b = "101101", oc = "55", d = "45", x = "2D"}, | |
93 | {v = ~45, b = "~101101", oc = "~55", d = "~45", x = "~2D"}, | |
94 | {v = 46, b = "101110", oc = "56", d = "46", x = "2E"}, | |
95 | {v = ~46, b = "~101110", oc = "~56", d = "~46", x = "~2E"}, | |
96 | {v = 47, b = "101111", oc = "57", d = "47", x = "2F"}, | |
97 | {v = ~47, b = "~101111", oc = "~57", d = "~47", x = "~2F"}, | |
98 | {v = 48, b = "110000", oc = "60", d = "48", x = "30"}, | |
99 | {v = ~48, b = "~110000", oc = "~60", d = "~48", x = "~30"}, | |
100 | {v = 49, b = "110001", oc = "61", d = "49", x = "31"}, | |
101 | {v = ~49, b = "~110001", oc = "~61", d = "~49", x = "~31"}, | |
102 | {v = 50, b = "110010", oc = "62", d = "50", x = "32"}, | |
103 | {v = ~50, b = "~110010", oc = "~62", d = "~50", x = "~32"}, | |
104 | {v = 51, b = "110011", oc = "63", d = "51", x = "33"}, | |
105 | {v = ~51, b = "~110011", oc = "~63", d = "~51", x = "~33"}, | |
106 | {v = 52, b = "110100", oc = "64", d = "52", x = "34"}, | |
107 | {v = ~52, b = "~110100", oc = "~64", d = "~52", x = "~34"}, | |
108 | {v = 53, b = "110101", oc = "65", d = "53", x = "35"}, | |
109 | {v = ~53, b = "~110101", oc = "~65", d = "~53", x = "~35"}, | |
110 | {v = 54, b = "110110", oc = "66", d = "54", x = "36"}, | |
111 | {v = ~54, b = "~110110", oc = "~66", d = "~54", x = "~36"}, | |
112 | {v = 55, b = "110111", oc = "67", d = "55", x = "37"}, | |
113 | {v = ~55, b = "~110111", oc = "~67", d = "~55", x = "~37"}, | |
114 | {v = 56, b = "111000", oc = "70", d = "56", x = "38"}, | |
115 | {v = ~56, b = "~111000", oc = "~70", d = "~56", x = "~38"}, | |
116 | {v = 57, b = "111001", oc = "71", d = "57", x = "39"}, | |
117 | {v = ~57, b = "~111001", oc = "~71", d = "~57", x = "~39"}, | |
118 | {v = 58, b = "111010", oc = "72", d = "58", x = "3A"}, | |
119 | {v = ~58, b = "~111010", oc = "~72", d = "~58", x = "~3A"}, | |
120 | {v = 59, b = "111011", oc = "73", d = "59", x = "3B"}, | |
121 | {v = ~59, b = "~111011", oc = "~73", d = "~59", x = "~3B"}, | |
122 | {v = 60, b = "111100", oc = "74", d = "60", x = "3C"}, | |
123 | {v = ~60, b = "~111100", oc = "~74", d = "~60", x = "~3C"}, | |
124 | {v = 61, b = "111101", oc = "75", d = "61", x = "3D"}, | |
125 | {v = ~61, b = "~111101", oc = "~75", d = "~61", x = "~3D"}, | |
126 | {v = 62, b = "111110", oc = "76", d = "62", x = "3E"}, | |
127 | {v = ~62, b = "~111110", oc = "~76", d = "~62", x = "~3E"}, | |
128 | {v = 63, b = "111111", oc = "77", d = "63", x = "3F"}, | |
129 | {v = ~63, b = "~111111", oc = "~77", d = "~63", x = "~3F"}, | |
130 | {v = 64, b = "1000000", oc = "100", d = "64", x = "40"}, | |
131 | {v = ~64, b = "~1000000", oc = "~100", d = "~64", x = "~40"}, | |
132 | {v = 65, b = "1000001", oc = "101", d = "65", x = "41"}, | |
133 | {v = ~65, b = "~1000001", oc = "~101", d = "~65", x = "~41"}, | |
134 | {v = 66, b = "1000010", oc = "102", d = "66", x = "42"}, | |
135 | {v = ~66, b = "~1000010", oc = "~102", d = "~66", x = "~42"}, | |
136 | {v = 67, b = "1000011", oc = "103", d = "67", x = "43"}, | |
137 | {v = ~67, b = "~1000011", oc = "~103", d = "~67", x = "~43"}, | |
138 | {v = 68, b = "1000100", oc = "104", d = "68", x = "44"}, | |
139 | {v = ~68, b = "~1000100", oc = "~104", d = "~68", x = "~44"}, | |
140 | {v = 69, b = "1000101", oc = "105", d = "69", x = "45"}, | |
141 | {v = ~69, b = "~1000101", oc = "~105", d = "~69", x = "~45"}, | |
142 | {v = 70, b = "1000110", oc = "106", d = "70", x = "46"}, | |
143 | {v = ~70, b = "~1000110", oc = "~106", d = "~70", x = "~46"}, | |
144 | {v = 71, b = "1000111", oc = "107", d = "71", x = "47"}, | |
145 | {v = ~71, b = "~1000111", oc = "~107", d = "~71", x = "~47"}, | |
146 | {v = 72, b = "1001000", oc = "110", d = "72", x = "48"}, | |
147 | {v = ~72, b = "~1001000", oc = "~110", d = "~72", x = "~48"}, | |
148 | {v = 73, b = "1001001", oc = "111", d = "73", x = "49"}, | |
149 | {v = ~73, b = "~1001001", oc = "~111", d = "~73", x = "~49"}, | |
150 | {v = 74, b = "1001010", oc = "112", d = "74", x = "4A"}, | |
151 | {v = ~74, b = "~1001010", oc = "~112", d = "~74", x = "~4A"}, | |
152 | {v = 75, b = "1001011", oc = "113", d = "75", x = "4B"}, | |
153 | {v = ~75, b = "~1001011", oc = "~113", d = "~75", x = "~4B"}, | |
154 | {v = 76, b = "1001100", oc = "114", d = "76", x = "4C"}, | |
155 | {v = ~76, b = "~1001100", oc = "~114", d = "~76", x = "~4C"}, | |
156 | {v = 77, b = "1001101", oc = "115", d = "77", x = "4D"}, | |
157 | {v = ~77, b = "~1001101", oc = "~115", d = "~77", x = "~4D"}, | |
158 | {v = 78, b = "1001110", oc = "116", d = "78", x = "4E"}, | |
159 | {v = ~78, b = "~1001110", oc = "~116", d = "~78", x = "~4E"}, | |
160 | {v = 79, b = "1001111", oc = "117", d = "79", x = "4F"}, | |
161 | {v = ~79, b = "~1001111", oc = "~117", d = "~79", x = "~4F"}, | |
162 | {v = 80, b = "1010000", oc = "120", d = "80", x = "50"}, | |
163 | {v = ~80, b = "~1010000", oc = "~120", d = "~80", x = "~50"}, | |
164 | {v = 81, b = "1010001", oc = "121", d = "81", x = "51"}, | |
165 | {v = ~81, b = "~1010001", oc = "~121", d = "~81", x = "~51"}, | |
166 | {v = 82, b = "1010010", oc = "122", d = "82", x = "52"}, | |
167 | {v = ~82, b = "~1010010", oc = "~122", d = "~82", x = "~52"}, | |
168 | {v = 83, b = "1010011", oc = "123", d = "83", x = "53"}, | |
169 | {v = ~83, b = "~1010011", oc = "~123", d = "~83", x = "~53"}, | |
170 | {v = 84, b = "1010100", oc = "124", d = "84", x = "54"}, | |
171 | {v = ~84, b = "~1010100", oc = "~124", d = "~84", x = "~54"}, | |
172 | {v = 85, b = "1010101", oc = "125", d = "85", x = "55"}, | |
173 | {v = ~85, b = "~1010101", oc = "~125", d = "~85", x = "~55"}, | |
174 | {v = 86, b = "1010110", oc = "126", d = "86", x = "56"}, | |
175 | {v = ~86, b = "~1010110", oc = "~126", d = "~86", x = "~56"}, | |
176 | {v = 87, b = "1010111", oc = "127", d = "87", x = "57"}, | |
177 | {v = ~87, b = "~1010111", oc = "~127", d = "~87", x = "~57"}, | |
178 | {v = 88, b = "1011000", oc = "130", d = "88", x = "58"}, | |
179 | {v = ~88, b = "~1011000", oc = "~130", d = "~88", x = "~58"}, | |
180 | {v = 89, b = "1011001", oc = "131", d = "89", x = "59"}, | |
181 | {v = ~89, b = "~1011001", oc = "~131", d = "~89", x = "~59"}, | |
182 | {v = 90, b = "1011010", oc = "132", d = "90", x = "5A"}, | |
183 | {v = ~90, b = "~1011010", oc = "~132", d = "~90", x = "~5A"}, | |
184 | {v = 91, b = "1011011", oc = "133", d = "91", x = "5B"}, | |
185 | {v = ~91, b = "~1011011", oc = "~133", d = "~91", x = "~5B"}, | |
186 | {v = 92, b = "1011100", oc = "134", d = "92", x = "5C"}, | |
187 | {v = ~92, b = "~1011100", oc = "~134", d = "~92", x = "~5C"}, | |
188 | {v = 93, b = "1011101", oc = "135", d = "93", x = "5D"}, | |
189 | {v = ~93, b = "~1011101", oc = "~135", d = "~93", x = "~5D"}, | |
190 | {v = 94, b = "1011110", oc = "136", d = "94", x = "5E"}, | |
191 | {v = ~94, b = "~1011110", oc = "~136", d = "~94", x = "~5E"}, | |
192 | {v = 95, b = "1011111", oc = "137", d = "95", x = "5F"}, | |
193 | {v = ~95, b = "~1011111", oc = "~137", d = "~95", x = "~5F"}, | |
194 | {v = 96, b = "1100000", oc = "140", d = "96", x = "60"}, | |
195 | {v = ~96, b = "~1100000", oc = "~140", d = "~96", x = "~60"}, | |
196 | {v = 97, b = "1100001", oc = "141", d = "97", x = "61"}, | |
197 | {v = ~97, b = "~1100001", oc = "~141", d = "~97", x = "~61"}, | |
198 | {v = 98, b = "1100010", oc = "142", d = "98", x = "62"}, | |
199 | {v = ~98, b = "~1100010", oc = "~142", d = "~98", x = "~62"}, | |
200 | {v = 99, b = "1100011", oc = "143", d = "99", x = "63"}, | |
201 | {v = ~99, b = "~1100011", oc = "~143", d = "~99", x = "~63"}, | |
202 | {v = 128, b = "10000000", oc = "200", d = "128", x = "80"}, | |
203 | {v = ~128, b = "~10000000", oc = "~200", d = "~128", x = "~80"}, | |
204 | {v = 256, b = "100000000", oc = "400", d = "256", x = "100"}, | |
205 | {v = ~256, b = "~100000000", oc = "~400", d = "~256", x = "~100"}, | |
206 | {v = 512, b = "1000000000", oc = "1000", d = "512", x = "200"}, | |
207 | {v = ~512, b = "~1000000000", oc = "~1000", d = "~512", x = "~200"}, | |
208 | {v = 1024, b = "10000000000", oc = "2000", d = "1024", x = "400"}, | |
209 | {v = ~1024, b = "~10000000000", oc = "~2000", d = "~1024", x = "~400"}, | |
210 | {v = 2048, b = "100000000000", oc = "4000", d = "2048", x = "800"}, | |
211 | {v = ~2048, b = "~100000000000", oc = "~4000", d = "~2048", x = "~800"}, | |
212 | {v = 4096, b = "1000000000000", oc = "10000", d = "4096", x = "1000"}, | |
213 | {v = ~4096, b = "~1000000000000", oc = "~10000", d = "~4096", x = "~1000"}, | |
214 | {v = 8192, b = "10000000000000", oc = "20000", d = "8192", x = "2000"}, | |
215 | {v = ~8192, b = "~10000000000000", oc = "~20000", d = "~8192", x = "~2000"}, | |
216 | {v = 16384, b = "100000000000000", oc = "40000", d = "16384", x = "4000"}, | |
217 | {v = ~16384, b = "~100000000000000", oc = "~40000", d = "~16384", x = "~4000"}, | |
218 | {v = 32768, b = "1000000000000000", oc = "100000", d = "32768", x = "8000"}, | |
219 | {v = ~32768, b = "~1000000000000000", oc = "~100000", d = "~32768", x = "~8000"}, | |
220 | {v = 65536, b = "10000000000000000", oc = "200000", d = "65536", x = "10000"}, | |
221 | {v = ~65536, b = "~10000000000000000", oc = "~200000", d = "~65536", x = "~10000"}, | |
222 | {v = 131072, b = "100000000000000000", oc = "400000", d = "131072", x = "20000"}, | |
223 | {v = ~131072, b = "~100000000000000000", oc = "~400000", d = "~131072", x = "~20000"}, | |
224 | {v = 262144, b = "1000000000000000000", oc = "1000000", d = "262144", x = "40000"}, | |
225 | {v = ~262144, b = "~1000000000000000000", oc = "~1000000", d = "~262144", x = "~40000"}, | |
226 | {v = 524288, b = "10000000000000000000", oc = "2000000", d = "524288", x = "80000"}, | |
227 | {v = ~524288, b = "~10000000000000000000", oc = "~2000000", d = "~524288", x = "~80000"}, | |
228 | {v = 1048576, b = "100000000000000000000", oc = "4000000", d = "1048576", x = "100000"}, | |
229 | {v = ~1048576, b = "~100000000000000000000", oc = "~4000000", d = "~1048576", x = "~100000"}, | |
230 | {v = 2097152, b = "1000000000000000000000", oc = "10000000", d = "2097152", x = "200000"}, | |
231 | {v = ~2097152, b = "~1000000000000000000000", oc = "~10000000", d = "~2097152", x = "~200000"}, | |
232 | {v = 4194304, b = "10000000000000000000000", oc = "20000000", d = "4194304", x = "400000"}, | |
233 | {v = ~4194304, b = "~10000000000000000000000", oc = "~20000000", d = "~4194304", x = "~400000"}, | |
234 | {v = 8388608, b = "100000000000000000000000", oc = "40000000", d = "8388608", x = "800000"}, | |
235 | {v = ~8388608, b = "~100000000000000000000000", oc = "~40000000", d = "~8388608", x = "~800000"}, | |
236 | {v = 16777216, b = "1000000000000000000000000", oc = "100000000", d = "16777216", x = "1000000"}, | |
237 | {v = ~16777216, b = "~1000000000000000000000000", oc = "~100000000", d = "~16777216", x = "~1000000"}, | |
238 | {v = 33554432, b = "10000000000000000000000000", oc = "200000000", d = "33554432", x = "2000000"}, | |
239 | {v = ~33554432, b = "~10000000000000000000000000", oc = "~200000000", d = "~33554432", x = "~2000000"}, | |
240 | {v = 67108864, b = "100000000000000000000000000", oc = "400000000", d = "67108864", x = "4000000"}, | |
241 | {v = ~67108864, b = "~100000000000000000000000000", oc = "~400000000", d = "~67108864", x = "~4000000"}, | |
242 | {v = 100000000, b = "101111101011110000100000000", oc = "575360400", d = "100000000", x = "5F5E100"}, | |
243 | {v = ~100000000, b = "~101111101011110000100000000", oc = "~575360400", d = "~100000000", x = "~5F5E100"}, | |
244 | {v = 134217728, b = "1000000000000000000000000000", oc = "1000000000", d = "134217728", x = "8000000"}, | |
245 | {v = ~134217728, b = "~1000000000000000000000000000", oc = "~1000000000", d = "~134217728", x = "~8000000"}, | |
246 | {v = 268435456, b = "10000000000000000000000000000", oc = "2000000000", d = "268435456", x = "10000000"}, | |
247 | {v = ~268435456, b = "~10000000000000000000000000000", oc = "~2000000000", d = "~268435456", x = "~10000000"}, | |
248 | {v = 536870912, b = "100000000000000000000000000000", oc = "4000000000", d = "536870912", x = "20000000"}, | |
249 | {v = ~536870912, b = "~100000000000000000000000000000", oc = "~4000000000", d = "~536870912", x = "~20000000"}, | |
250 | {v = 1073741822, b = "111111111111111111111111111110", oc = "7777777776", d = "1073741822", x = "3FFFFFFE"}, | |
251 | {v = ~1073741822, b = "~111111111111111111111111111110", oc = "~7777777776", d = "~1073741822", x = "~3FFFFFFE"}, | |
252 | {v = 1073741823, b = "111111111111111111111111111111", oc = "7777777777", d = "1073741823", x = "3FFFFFFF"}, | |
253 | {v = ~1073741823, b = "~111111111111111111111111111111", oc = "~7777777777", d = "~1073741823", x = "~3FFFFFFF"}, | |
254 | {v = 1073741824, b = "1000000000000000000000000000000", oc = "10000000000", d = "1073741824", x = "40000000"}, | |
255 | {v = ~1073741824, b = "~1000000000000000000000000000000", oc = "~10000000000", d = "~1073741824", x = "~40000000"}, | |
256 | {v = 1073741825, b = "1000000000000000000000000000001", oc = "10000000001", d = "1073741825", x = "40000001"}, | |
257 | {v = ~1073741825, b = "~1000000000000000000000000000001", oc = "~10000000001", d = "~1073741825", x = "~40000001"}, | |
258 | {v = 1073741826, b = "1000000000000000000000000000010", oc = "10000000002", d = "1073741826", x = "40000002"}, | |
259 | {v = ~1073741826, b = "~1000000000000000000000000000010", oc = "~10000000002", d = "~1073741826", x = "~40000002"}, | |
260 | {v = 2147483648, b = "10000000000000000000000000000000", oc = "20000000000", d = "2147483648", x = "80000000"}, | |
261 | {v = ~2147483648, b = "~10000000000000000000000000000000", oc = "~20000000000", d = "~2147483648", x = "~80000000"}, | |
262 | {v = 4294967296, b = "100000000000000000000000000000000", oc = "40000000000", d = "4294967296", x = "100000000"}, | |
263 | {v = ~4294967296, b = "~100000000000000000000000000000000", oc = "~40000000000", d = "~4294967296", x = "~100000000"}, | |
264 | {v = 4304967296, b = "100000000100110001001011010000000", oc = "40046113200", d = "4304967296", x = "100989680"}, | |
265 | {v = ~4304967296, b = "~100000000100110001001011010000000", oc = "~40046113200", d = "~4304967296", x = "~100989680"}, | |
266 | {v = 8589934592, b = "1000000000000000000000000000000000", oc = "100000000000", d = "8589934592", x = "200000000"}, | |
267 | {v = ~8589934592, b = "~1000000000000000000000000000000000", oc = "~100000000000", d = "~8589934592", x = "~200000000"}, | |
268 | {v = 17179869184, b = "10000000000000000000000000000000000", oc = "200000000000", d = "17179869184", x = "400000000"}, | |
269 | {v = ~17179869184, b = "~10000000000000000000000000000000000", oc = "~200000000000", d = "~17179869184", x = "~400000000"}, | |
270 | {v = 34359738368, b = "100000000000000000000000000000000000", oc = "400000000000", d = "34359738368", x = "800000000"}, | |
271 | {v = ~34359738368, b = "~100000000000000000000000000000000000", oc = "~400000000000", d = "~34359738368", x = "~800000000"}, | |
272 | {v = 68719476736, b = "1000000000000000000000000000000000000", oc = "1000000000000", d = "68719476736", x = "1000000000"}, | |
273 | {v = ~68719476736, b = "~1000000000000000000000000000000000000", oc = "~1000000000000", d = "~68719476736", x = "~1000000000"}, | |
274 | {v = 137438953472, b = "10000000000000000000000000000000000000", oc = "2000000000000", d = "137438953472", x = "2000000000"}, | |
275 | {v = ~137438953472, b = "~10000000000000000000000000000000000000", oc = "~2000000000000", d = "~137438953472", x = "~2000000000"}, | |
276 | {v = 274877906944, b = "100000000000000000000000000000000000000", oc = "4000000000000", d = "274877906944", x = "4000000000"}, | |
277 | {v = ~274877906944, b = "~100000000000000000000000000000000000000", oc = "~4000000000000", d = "~274877906944", x = "~4000000000"}, | |
278 | {v = 549755813888, b = "1000000000000000000000000000000000000000", oc = "10000000000000", d = "549755813888", x = "8000000000"}, | |
279 | {v = ~549755813888, b = "~1000000000000000000000000000000000000000", oc = "~10000000000000", d = "~549755813888", x = "~8000000000"}, | |
280 | {v = 1099511627776, b = "10000000000000000000000000000000000000000", oc = "20000000000000", d = "1099511627776", x = "10000000000"}, | |
281 | {v = ~1099511627776, b = "~10000000000000000000000000000000000000000", oc = "~20000000000000", d = "~1099511627776", x = "~10000000000"}, | |
282 | {v = 2199023255552, b = "100000000000000000000000000000000000000000", oc = "40000000000000", d = "2199023255552", x = "20000000000"}, | |
283 | {v = ~2199023255552, b = "~100000000000000000000000000000000000000000", oc = "~40000000000000", d = "~2199023255552", x = "~20000000000"}, | |
284 | {v = 4398046511104, b = "1000000000000000000000000000000000000000000", oc = "100000000000000", d = "4398046511104", x = "40000000000"}, | |
285 | {v = ~4398046511104, b = "~1000000000000000000000000000000000000000000", oc = "~100000000000000", d = "~4398046511104", x = "~40000000000"}, | |
286 | {v = 8796093022208, b = "10000000000000000000000000000000000000000000", oc = "200000000000000", d = "8796093022208", x = "80000000000"}, | |
287 | {v = ~8796093022208, b = "~10000000000000000000000000000000000000000000", oc = "~200000000000000", d = "~8796093022208", x = "~80000000000"}, | |
288 | {v = 17592186044416, b = "100000000000000000000000000000000000000000000", oc = "400000000000000", d = "17592186044416", x = "100000000000"}, | |
289 | {v = ~17592186044416, b = "~100000000000000000000000000000000000000000000", oc = "~400000000000000", d = "~17592186044416", x = "~100000000000"}, | |
290 | {v = 35184372088832, b = "1000000000000000000000000000000000000000000000", oc = "1000000000000000", d = "35184372088832", x = "200000000000"}, | |
291 | {v = ~35184372088832, b = "~1000000000000000000000000000000000000000000000", oc = "~1000000000000000", d = "~35184372088832", x = "~200000000000"}, | |
292 | {v = 70368744177664, b = "10000000000000000000000000000000000000000000000", oc = "2000000000000000", d = "70368744177664", x = "400000000000"}, | |
293 | {v = ~70368744177664, b = "~10000000000000000000000000000000000000000000000", oc = "~2000000000000000", d = "~70368744177664", x = "~400000000000"}, | |
294 | {v = 140737488355328, b = "100000000000000000000000000000000000000000000000", oc = "4000000000000000", d = "140737488355328", x = "800000000000"}, | |
295 | {v = ~140737488355328, b = "~100000000000000000000000000000000000000000000000", oc = "~4000000000000000", d = "~140737488355328", x = "~800000000000"}, | |
296 | {v = 281474976710656, b = "1000000000000000000000000000000000000000000000000", oc = "10000000000000000", d = "281474976710656", x = "1000000000000"}, | |
297 | {v = ~281474976710656, b = "~1000000000000000000000000000000000000000000000000", oc = "~10000000000000000", d = "~281474976710656", x = "~1000000000000"}, | |
298 | {v = 562949953421312, b = "10000000000000000000000000000000000000000000000000", oc = "20000000000000000", d = "562949953421312", x = "2000000000000"}, | |
299 | {v = ~562949953421312, b = "~10000000000000000000000000000000000000000000000000", oc = "~20000000000000000", d = "~562949953421312", x = "~2000000000000"}, | |
300 | {v = 1125899906842624, b = "100000000000000000000000000000000000000000000000000", oc = "40000000000000000", d = "1125899906842624", x = "4000000000000"}, | |
301 | {v = ~1125899906842624, b = "~100000000000000000000000000000000000000000000000000", oc = "~40000000000000000", d = "~1125899906842624", x = "~4000000000000"}, | |
302 | {v = 2251799813685248, b = "1000000000000000000000000000000000000000000000000000", oc = "100000000000000000", d = "2251799813685248", x = "8000000000000"}, | |
303 | {v = ~2251799813685248, b = "~1000000000000000000000000000000000000000000000000000", oc = "~100000000000000000", d = "~2251799813685248", x = "~8000000000000"}, | |
304 | {v = 4503599627370496, b = "10000000000000000000000000000000000000000000000000000", oc = "200000000000000000", d = "4503599627370496", x = "10000000000000"}, | |
305 | {v = ~4503599627370496, b = "~10000000000000000000000000000000000000000000000000000", oc = "~200000000000000000", d = "~4503599627370496", x = "~10000000000000"}, | |
306 | {v = 9007199254740992, b = "100000000000000000000000000000000000000000000000000000", oc = "400000000000000000", d = "9007199254740992", x = "20000000000000"}, | |
307 | {v = ~9007199254740992, b = "~100000000000000000000000000000000000000000000000000000", oc = "~400000000000000000", d = "~9007199254740992", x = "~20000000000000"}, | |
308 | {v = 18014398509481984, b = "1000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000", d = "18014398509481984", x = "40000000000000"}, | |
309 | {v = ~18014398509481984, b = "~1000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000", d = "~18014398509481984", x = "~40000000000000"}, | |
310 | {v = 36028797018963968, b = "10000000000000000000000000000000000000000000000000000000", oc = "2000000000000000000", d = "36028797018963968", x = "80000000000000"}, | |
311 | {v = ~36028797018963968, b = "~10000000000000000000000000000000000000000000000000000000", oc = "~2000000000000000000", d = "~36028797018963968", x = "~80000000000000"}, | |
312 | {v = 72057594037927936, b = "100000000000000000000000000000000000000000000000000000000", oc = "4000000000000000000", d = "72057594037927936", x = "100000000000000"}, | |
313 | {v = ~72057594037927936, b = "~100000000000000000000000000000000000000000000000000000000", oc = "~4000000000000000000", d = "~72057594037927936", x = "~100000000000000"}, | |
314 | {v = 144115188075855872, b = "1000000000000000000000000000000000000000000000000000000000", oc = "10000000000000000000", d = "144115188075855872", x = "200000000000000"}, | |
315 | {v = ~144115188075855872, b = "~1000000000000000000000000000000000000000000000000000000000", oc = "~10000000000000000000", d = "~144115188075855872", x = "~200000000000000"}, | |
316 | {v = 288230376151711744, b = "10000000000000000000000000000000000000000000000000000000000", oc = "20000000000000000000", d = "288230376151711744", x = "400000000000000"}, | |
317 | {v = ~288230376151711744, b = "~10000000000000000000000000000000000000000000000000000000000", oc = "~20000000000000000000", d = "~288230376151711744", x = "~400000000000000"}, | |
318 | {v = 576460752303423488, b = "100000000000000000000000000000000000000000000000000000000000", oc = "40000000000000000000", d = "576460752303423488", x = "800000000000000"}, | |
319 | {v = ~576460752303423488, b = "~100000000000000000000000000000000000000000000000000000000000", oc = "~40000000000000000000", d = "~576460752303423488", x = "~800000000000000"}, | |
320 | {v = 1152921504606846976, b = "1000000000000000000000000000000000000000000000000000000000000", oc = "100000000000000000000", d = "1152921504606846976", x = "1000000000000000"}, | |
321 | {v = ~1152921504606846976, b = "~1000000000000000000000000000000000000000000000000000000000000", oc = "~100000000000000000000", d = "~1152921504606846976", x = "~1000000000000000"}, | |
322 | {v = 2305843009213693952, b = "10000000000000000000000000000000000000000000000000000000000000", oc = "200000000000000000000", d = "2305843009213693952", x = "2000000000000000"}, | |
323 | {v = ~2305843009213693952, b = "~10000000000000000000000000000000000000000000000000000000000000", oc = "~200000000000000000000", d = "~2305843009213693952", x = "~2000000000000000"}, | |
324 | {v = 4611686018427387904, b = "100000000000000000000000000000000000000000000000000000000000000", oc = "400000000000000000000", d = "4611686018427387904", x = "4000000000000000"}, | |
325 | {v = ~4611686018427387904, b = "~100000000000000000000000000000000000000000000000000000000000000", oc = "~400000000000000000000", d = "~4611686018427387904", x = "~4000000000000000"}, | |
326 | {v = 9223372036854775808, b = "1000000000000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000000", d = "9223372036854775808", x = "8000000000000000"}, | |
327 | {v = ~9223372036854775808, b = "~1000000000000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000000", d = "~9223372036854775808", x = "~8000000000000000"}, | |
328 | {v = 18446744073709551616, b = "10000000000000000000000000000000000000000000000000000000000000000", oc = "2000000000000000000000", d = "18446744073709551616", x = "10000000000000000"}, | |
329 | {v = ~18446744073709551616, b = "~10000000000000000000000000000000000000000000000000000000000000000", oc = "~2000000000000000000000", d = "~18446744073709551616", x = "~10000000000000000"}, | |
330 | {v = 36893488147419103232, b = "100000000000000000000000000000000000000000000000000000000000000000", oc = "4000000000000000000000", d = "36893488147419103232", x = "20000000000000000"}, | |
331 | {v = ~36893488147419103232, b = "~100000000000000000000000000000000000000000000000000000000000000000", oc = "~4000000000000000000000", d = "~36893488147419103232", x = "~20000000000000000"}, | |
332 | {v = 73786976294838206464, b = "1000000000000000000000000000000000000000000000000000000000000000000", oc = "10000000000000000000000", d = "73786976294838206464", x = "40000000000000000"}, | |
333 | {v = ~73786976294838206464, b = "~1000000000000000000000000000000000000000000000000000000000000000000", oc = "~10000000000000000000000", d = "~73786976294838206464", x = "~40000000000000000"}, | |
334 | {v = 147573952589676412928, b = "10000000000000000000000000000000000000000000000000000000000000000000", oc = "20000000000000000000000", d = "147573952589676412928", x = "80000000000000000"}, | |
335 | {v = ~147573952589676412928, b = "~10000000000000000000000000000000000000000000000000000000000000000000", oc = "~20000000000000000000000", d = "~147573952589676412928", x = "~80000000000000000"}, | |
336 | {v = 295147905179352825856, b = "100000000000000000000000000000000000000000000000000000000000000000000", oc = "40000000000000000000000", d = "295147905179352825856", x = "100000000000000000"}, | |
337 | {v = ~295147905179352825856, b = "~100000000000000000000000000000000000000000000000000000000000000000000", oc = "~40000000000000000000000", d = "~295147905179352825856", x = "~100000000000000000"}, | |
338 | {v = 590295810358705651712, b = "1000000000000000000000000000000000000000000000000000000000000000000000", oc = "100000000000000000000000", d = "590295810358705651712", x = "200000000000000000"}, | |
339 | {v = ~590295810358705651712, b = "~1000000000000000000000000000000000000000000000000000000000000000000000", oc = "~100000000000000000000000", d = "~590295810358705651712", x = "~200000000000000000"}, | |
340 | {v = 1180591620717411303424, b = "10000000000000000000000000000000000000000000000000000000000000000000000", oc = "200000000000000000000000", d = "1180591620717411303424", x = "400000000000000000"}, | |
341 | {v = ~1180591620717411303424, b = "~10000000000000000000000000000000000000000000000000000000000000000000000", oc = "~200000000000000000000000", d = "~1180591620717411303424", x = "~400000000000000000"}, | |
342 | {v = 2361183241434822606848, b = "100000000000000000000000000000000000000000000000000000000000000000000000", oc = "400000000000000000000000", d = "2361183241434822606848", x = "800000000000000000"}, | |
343 | {v = ~2361183241434822606848, b = "~100000000000000000000000000000000000000000000000000000000000000000000000", oc = "~400000000000000000000000", d = "~2361183241434822606848", x = "~800000000000000000"}, | |
344 | {v = 4722366482869645213696, b = "1000000000000000000000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000000000", d = "4722366482869645213696", x = "1000000000000000000"}, | |
345 | {v = ~4722366482869645213696, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000000000", d = "~4722366482869645213696", x = "~1000000000000000000"}, | |
346 | {v = 9444732965739290427392, b = "10000000000000000000000000000000000000000000000000000000000000000000000000", oc = "2000000000000000000000000", d = "9444732965739290427392", x = "2000000000000000000"}, | |
347 | {v = ~9444732965739290427392, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~2000000000000000000000000", d = "~9444732965739290427392", x = "~2000000000000000000"}, | |
348 | {v = 18889465931478580854784, b = "100000000000000000000000000000000000000000000000000000000000000000000000000", oc = "4000000000000000000000000", d = "18889465931478580854784", x = "4000000000000000000"}, | |
349 | {v = ~18889465931478580854784, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~4000000000000000000000000", d = "~18889465931478580854784", x = "~4000000000000000000"}, | |
350 | {v = 37778931862957161709568, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "10000000000000000000000000", d = "37778931862957161709568", x = "8000000000000000000"}, | |
351 | {v = ~37778931862957161709568, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~10000000000000000000000000", d = "~37778931862957161709568", x = "~8000000000000000000"}, | |
352 | {v = 75557863725914323419136, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "20000000000000000000000000", d = "75557863725914323419136", x = "10000000000000000000"}, | |
353 | {v = ~75557863725914323419136, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~20000000000000000000000000", d = "~75557863725914323419136", x = "~10000000000000000000"}, | |
354 | {v = 151115727451828646838272, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "40000000000000000000000000", d = "151115727451828646838272", x = "20000000000000000000"}, | |
355 | {v = ~151115727451828646838272, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~40000000000000000000000000", d = "~151115727451828646838272", x = "~20000000000000000000"}, | |
356 | {v = 302231454903657293676544, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "100000000000000000000000000", d = "302231454903657293676544", x = "40000000000000000000"}, | |
357 | {v = ~302231454903657293676544, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~100000000000000000000000000", d = "~302231454903657293676544", x = "~40000000000000000000"}, | |
358 | {v = 604462909807314587353088, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "200000000000000000000000000", d = "604462909807314587353088", x = "80000000000000000000"}, | |
359 | {v = ~604462909807314587353088, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~200000000000000000000000000", d = "~604462909807314587353088", x = "~80000000000000000000"}, | |
360 | {v = 1208925819614629174706176, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "400000000000000000000000000", d = "1208925819614629174706176", x = "100000000000000000000"}, | |
361 | {v = ~1208925819614629174706176, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~400000000000000000000000000", d = "~1208925819614629174706176", x = "~100000000000000000000"}, | |
362 | {v = 2417851639229258349412352, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000000000000", d = "2417851639229258349412352", x = "200000000000000000000"}, | |
363 | {v = ~2417851639229258349412352, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000000000000", d = "~2417851639229258349412352", x = "~200000000000000000000"}, | |
364 | {v = 4835703278458516698824704, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "2000000000000000000000000000", d = "4835703278458516698824704", x = "400000000000000000000"}, | |
365 | {v = ~4835703278458516698824704, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~2000000000000000000000000000", d = "~4835703278458516698824704", x = "~400000000000000000000"}, | |
366 | {v = 9671406556917033397649408, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "4000000000000000000000000000", d = "9671406556917033397649408", x = "800000000000000000000"}, | |
367 | {v = ~9671406556917033397649408, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~4000000000000000000000000000", d = "~9671406556917033397649408", x = "~800000000000000000000"}, | |
368 | {v = 19342813113834066795298816, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "10000000000000000000000000000", d = "19342813113834066795298816", x = "1000000000000000000000"}, | |
369 | {v = ~19342813113834066795298816, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~10000000000000000000000000000", d = "~19342813113834066795298816", x = "~1000000000000000000000"}, | |
370 | {v = 38685626227668133590597632, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "20000000000000000000000000000", d = "38685626227668133590597632", x = "2000000000000000000000"}, | |
371 | {v = ~38685626227668133590597632, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~20000000000000000000000000000", d = "~38685626227668133590597632", x = "~2000000000000000000000"}, | |
372 | {v = 77371252455336267181195264, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "40000000000000000000000000000", d = "77371252455336267181195264", x = "4000000000000000000000"}, | |
373 | {v = ~77371252455336267181195264, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~40000000000000000000000000000", d = "~77371252455336267181195264", x = "~4000000000000000000000"}, | |
374 | {v = 154742504910672534362390528, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "100000000000000000000000000000", d = "154742504910672534362390528", x = "8000000000000000000000"}, | |
375 | {v = ~154742504910672534362390528, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~100000000000000000000000000000", d = "~154742504910672534362390528", x = "~8000000000000000000000"}, | |
376 | {v = 309485009821345068724781056, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "200000000000000000000000000000", d = "309485009821345068724781056", x = "10000000000000000000000"}, | |
377 | {v = ~309485009821345068724781056, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~200000000000000000000000000000", d = "~309485009821345068724781056", x = "~10000000000000000000000"}, | |
378 | {v = 618970019642690137449562112, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "400000000000000000000000000000", d = "618970019642690137449562112", x = "20000000000000000000000"}, | |
379 | {v = ~618970019642690137449562112, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~400000000000000000000000000000", d = "~618970019642690137449562112", x = "~20000000000000000000000"}, | |
380 | {v = 1237940039285380274899124224, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000000000000000", d = "1237940039285380274899124224", x = "40000000000000000000000"}, | |
381 | {v = ~1237940039285380274899124224, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000000000000000", d = "~1237940039285380274899124224", x = "~40000000000000000000000"}, | |
382 | {v = 2475880078570760549798248448, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "2000000000000000000000000000000", d = "2475880078570760549798248448", x = "80000000000000000000000"}, | |
383 | {v = ~2475880078570760549798248448, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~2000000000000000000000000000000", d = "~2475880078570760549798248448", x = "~80000000000000000000000"}, | |
384 | {v = 4951760157141521099596496896, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "4000000000000000000000000000000", d = "4951760157141521099596496896", x = "100000000000000000000000"}, | |
385 | {v = ~4951760157141521099596496896, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~4000000000000000000000000000000", d = "~4951760157141521099596496896", x = "~100000000000000000000000"}, | |
386 | {v = 9903520314283042199192993792, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "10000000000000000000000000000000", d = "9903520314283042199192993792", x = "200000000000000000000000"}, | |
387 | {v = ~9903520314283042199192993792, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~10000000000000000000000000000000", d = "~9903520314283042199192993792", x = "~200000000000000000000000"}, | |
388 | {v = 19807040628566084398385987584, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "20000000000000000000000000000000", d = "19807040628566084398385987584", x = "400000000000000000000000"}, | |
389 | {v = ~19807040628566084398385987584, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~20000000000000000000000000000000", d = "~19807040628566084398385987584", x = "~400000000000000000000000"}, | |
390 | {v = 39614081257132168796771975168, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "40000000000000000000000000000000", d = "39614081257132168796771975168", x = "800000000000000000000000"}, | |
391 | {v = ~39614081257132168796771975168, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~40000000000000000000000000000000", d = "~39614081257132168796771975168", x = "~800000000000000000000000"}, | |
392 | {v = 79228162514264337593543950336, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "100000000000000000000000000000000", d = "79228162514264337593543950336", x = "1000000000000000000000000"}, | |
393 | {v = ~79228162514264337593543950336, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~100000000000000000000000000000000", d = "~79228162514264337593543950336", x = "~1000000000000000000000000"}, | |
394 | {v = 158456325028528675187087900672, b = "10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "200000000000000000000000000000000", d = "158456325028528675187087900672", x = "2000000000000000000000000"}, | |
395 | {v = ~158456325028528675187087900672, b = "~10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~200000000000000000000000000000000", d = "~158456325028528675187087900672", x = "~2000000000000000000000000"}, | |
396 | {v = 316912650057057350374175801344, b = "100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "400000000000000000000000000000000", d = "316912650057057350374175801344", x = "4000000000000000000000000"}, | |
397 | {v = ~316912650057057350374175801344, b = "~100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~400000000000000000000000000000000", d = "~316912650057057350374175801344", x = "~4000000000000000000000000"}, | |
398 | {v = 633825300114114700748351602688, b = "1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "1000000000000000000000000000000000", d = "633825300114114700748351602688", x = "8000000000000000000000000"}, | |
399 | {v = ~633825300114114700748351602688, b = "~1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", oc = "~1000000000000000000000000000000000", d = "~633825300114114700748351602688", x = "~8000000000000000000000000"} | |
400 | ] | |
401 | ||
402 | fun makeReader str = | |
403 | let val len = String.size str | |
404 | fun reader pos = | |
405 | if pos = String.size str | |
406 | then NONE | |
407 | else SOME (String.sub (str, pos), pos + 1) | |
408 | in reader | |
409 | end | |
410 | ||
411 | exception FailRead of StringCvt.radix * string | |
412 | exception FailWrite of StringCvt.radix * IntInf.int | |
413 | ||
414 | fun read2 str = case IntInf.scan StringCvt.BIN (makeReader str) 0 of | |
415 | NONE => raise (FailRead (StringCvt.BIN, str)) | |
416 | | SOME (v, p) => if p = String.size str | |
417 | then v | |
418 | else raise (FailRead (StringCvt.BIN, | |
419 | str)) | |
420 | ||
421 | fun read8 str = case IntInf.scan StringCvt.OCT (makeReader str) 0 of | |
422 | NONE => raise (FailRead (StringCvt.OCT, str)) | |
423 | | SOME (v, p) => if p = String.size str | |
424 | then v | |
425 | else raise (FailRead (StringCvt.OCT, | |
426 | str)) | |
427 | ||
428 | fun read10 str = case IntInf.scan StringCvt.DEC (makeReader str) 0 of | |
429 | NONE => raise (FailRead (StringCvt.DEC, str)) | |
430 | | SOME (v, p) => if p = String.size str | |
431 | then v | |
432 | else raise (FailRead (StringCvt.DEC, | |
433 | str)) | |
434 | ||
435 | fun read16 str = case IntInf.scan StringCvt.HEX (makeReader str) 0 of | |
436 | NONE => raise (FailRead (StringCvt.HEX, str)) | |
437 | | SOME (v, p) => if p = String.size str | |
438 | then v | |
439 | else raise (FailRead (StringCvt.HEX, | |
440 | str)) | |
441 | ||
442 | fun read str = case IntInf.fromString str of | |
443 | NONE => raise (FailRead (StringCvt.DEC, str)) | |
444 | | SOME v => v | |
445 | ||
446 | fun toStr2 v = IntInf.fmt StringCvt.BIN v | |
447 | ||
448 | fun toStr8 v = IntInf.fmt StringCvt.OCT v | |
449 | ||
450 | fun toStr10 v = IntInf.fmt StringCvt.DEC v | |
451 | ||
452 | fun toStr16 v = IntInf.fmt StringCvt.HEX v | |
453 | ||
454 | fun toStr v = IntInf.toString v | |
455 | ||
456 | fun baseToStr (base: StringCvt.radix): string = | |
457 | case base of | |
458 | StringCvt.BIN => "BIN" | |
459 | | StringCvt.OCT => "OCT" | |
460 | | StringCvt.DEC => "DEC" | |
461 | | StringCvt.HEX => "HEX" | |
462 | ||
463 | fun f ({ v: IntInf.int, b: string, oc: string, d: string, x: string}): unit = | |
464 | let val bv = read2 b | |
465 | val ov = read8 oc | |
466 | val dv = read10 d | |
467 | val xv = read16 x | |
468 | val vv = read d | |
469 | in if bv <> v | |
470 | then raise (FailRead (StringCvt.BIN, b)) | |
471 | else if ov <> v | |
472 | then raise (FailRead (StringCvt.OCT, oc)) | |
473 | else if dv <> v | |
474 | then raise (FailRead (StringCvt.DEC, d)) | |
475 | else if xv <> v | |
476 | then raise (FailRead (StringCvt.HEX, x)) | |
477 | else if vv <> v | |
478 | then raise (FailRead (StringCvt.DEC, d)) | |
479 | else let val vb = toStr2 v | |
480 | val vo = toStr8 v | |
481 | val vd = toStr10 v | |
482 | val vx = toStr16 v | |
483 | val vv = toStr v | |
484 | val (b, oc, d, x) = if v = 0 andalso String.sub (d, 0) = #"~" | |
485 | then ("0", "0", "0", "0") | |
486 | else (b, oc, d, x) | |
487 | in if vb <> b | |
488 | then raise (FailWrite (StringCvt.BIN, v)) | |
489 | else if vo <> oc | |
490 | then raise (FailWrite (StringCvt.OCT, v)) | |
491 | else if vd <> d | |
492 | then raise (FailWrite (StringCvt.DEC, v)) | |
493 | else if vx <> x | |
494 | then raise (FailWrite (StringCvt.HEX, v)) | |
495 | else if vv <> d | |
496 | then raise (FailWrite (StringCvt.DEC, v)) | |
497 | else () | |
498 | end | |
499 | end handle FailRead (base, str) => | |
500 | print ("FailRead, base = " ^ (baseToStr base) | |
501 | ^ ", str = |" ^ str ^ "|\n") | |
502 | | FailWrite (base, v) => | |
503 | print ("FailWrite, base = " ^ (baseToStr base) | |
504 | ^ ", d = |" ^ d ^ "|\n") | |
505 | ||
506 | val _ = List.app f arg | |
507 | val _ = print "All ok\n" |