bigint-rsh.js (31820B)
1 const tests = [ 2 [-0x10000000000000001n, 0n, -0x10000000000000001n], 3 [-0x10000000000000000n, 0n, -0x10000000000000000n], 4 [-0xffffffffffffffffn, 0n, -0xffffffffffffffffn], 5 [-0xfffffffffffffffen, 0n, -0xfffffffffffffffen], 6 [-0x8000000000000001n, 0n, -0x8000000000000001n], 7 [-0x8000000000000000n, 0n, -0x8000000000000000n], 8 [-0x7fffffffffffffffn, 0n, -0x7fffffffffffffffn], 9 [-0x7ffffffffffffffen, 0n, -0x7ffffffffffffffen], 10 [-0x100000001n, 0n, -0x100000001n], 11 [-0x100000000n, 0n, -0x100000000n], 12 [-0xffffffffn, 0n, -0xffffffffn], 13 [-0xfffffffen, 0n, -0xfffffffen], 14 [-0x80000001n, 0n, -0x80000001n], 15 [-0x80000000n, 0n, -0x80000000n], 16 [-0x7fffffffn, 0n, -0x7fffffffn], 17 [-0x7ffffffen, 0n, -0x7ffffffen], 18 [-9n, 0n, -9n], 19 [-8n, 0n, -8n], 20 [-7n, 0n, -7n], 21 [-6n, 0n, -6n], 22 [-5n, 0n, -5n], 23 [-4n, 0n, -4n], 24 [-3n, 0n, -3n], 25 [-2n, 0n, -2n], 26 [-1n, 0n, -1n], 27 [0n, 0n, 0n], 28 [1n, 0n, 1n], 29 [2n, 0n, 2n], 30 [3n, 0n, 3n], 31 [4n, 0n, 4n], 32 [5n, 0n, 5n], 33 [6n, 0n, 6n], 34 [7n, 0n, 7n], 35 [8n, 0n, 8n], 36 [9n, 0n, 9n], 37 [0x7ffffffen, 0n, 0x7ffffffen], 38 [0x7fffffffn, 0n, 0x7fffffffn], 39 [0x80000000n, 0n, 0x80000000n], 40 [0x80000001n, 0n, 0x80000001n], 41 [0xfffffffen, 0n, 0xfffffffen], 42 [0xffffffffn, 0n, 0xffffffffn], 43 [0x100000000n, 0n, 0x100000000n], 44 [0x100000001n, 0n, 0x100000001n], 45 [0x7ffffffffffffffen, 0n, 0x7ffffffffffffffen], 46 [0x7fffffffffffffffn, 0n, 0x7fffffffffffffffn], 47 [0x8000000000000000n, 0n, 0x8000000000000000n], 48 [0x8000000000000001n, 0n, 0x8000000000000001n], 49 [0xfffffffffffffffen, 0n, 0xfffffffffffffffen], 50 [0xffffffffffffffffn, 0n, 0xffffffffffffffffn], 51 [0x10000000000000000n, 0n, 0x10000000000000000n], 52 [0x10000000000000001n, 0n, 0x10000000000000001n], 53 [-0x10000000000000001n, 1n, -0x8000000000000001n], 54 [-0x10000000000000000n, 1n, -0x8000000000000000n], 55 [-0xffffffffffffffffn, 1n, -0x8000000000000000n], 56 [-0xfffffffffffffffen, 1n, -0x7fffffffffffffffn], 57 [-0x8000000000000001n, 1n, -0x4000000000000001n], 58 [-0x8000000000000000n, 1n, -0x4000000000000000n], 59 [-0x7fffffffffffffffn, 1n, -0x4000000000000000n], 60 [-0x7ffffffffffffffen, 1n, -0x3fffffffffffffffn], 61 [-0x100000001n, 1n, -0x80000001n], 62 [-0x100000000n, 1n, -0x80000000n], 63 [-0xffffffffn, 1n, -0x80000000n], 64 [-0xfffffffen, 1n, -0x7fffffffn], 65 [-0x80000001n, 1n, -0x40000001n], 66 [-0x80000000n, 1n, -0x40000000n], 67 [-0x7fffffffn, 1n, -0x40000000n], 68 [-0x7ffffffen, 1n, -0x3fffffffn], 69 [-9n, 1n, -5n], 70 [-8n, 1n, -4n], 71 [-7n, 1n, -4n], 72 [-6n, 1n, -3n], 73 [-5n, 1n, -3n], 74 [-4n, 1n, -2n], 75 [-3n, 1n, -2n], 76 [-2n, 1n, -1n], 77 [-1n, 1n, -1n], 78 [0n, 1n, 0n], 79 [1n, 1n, 0n], 80 [2n, 1n, 1n], 81 [3n, 1n, 1n], 82 [4n, 1n, 2n], 83 [5n, 1n, 2n], 84 [6n, 1n, 3n], 85 [7n, 1n, 3n], 86 [8n, 1n, 4n], 87 [9n, 1n, 4n], 88 [0x7ffffffen, 1n, 0x3fffffffn], 89 [0x7fffffffn, 1n, 0x3fffffffn], 90 [0x80000000n, 1n, 0x40000000n], 91 [0x80000001n, 1n, 0x40000000n], 92 [0xfffffffen, 1n, 0x7fffffffn], 93 [0xffffffffn, 1n, 0x7fffffffn], 94 [0x100000000n, 1n, 0x80000000n], 95 [0x100000001n, 1n, 0x80000000n], 96 [0x7ffffffffffffffen, 1n, 0x3fffffffffffffffn], 97 [0x7fffffffffffffffn, 1n, 0x3fffffffffffffffn], 98 [0x8000000000000000n, 1n, 0x4000000000000000n], 99 [0x8000000000000001n, 1n, 0x4000000000000000n], 100 [0xfffffffffffffffen, 1n, 0x7fffffffffffffffn], 101 [0xffffffffffffffffn, 1n, 0x7fffffffffffffffn], 102 [0x10000000000000000n, 1n, 0x8000000000000000n], 103 [0x10000000000000001n, 1n, 0x8000000000000000n], 104 [-0x10000000000000001n, 2n, -0x4000000000000001n], 105 [-0x10000000000000000n, 2n, -0x4000000000000000n], 106 [-0xffffffffffffffffn, 2n, -0x4000000000000000n], 107 [-0xfffffffffffffffen, 2n, -0x4000000000000000n], 108 [-0x8000000000000001n, 2n, -0x2000000000000001n], 109 [-0x8000000000000000n, 2n, -0x2000000000000000n], 110 [-0x7fffffffffffffffn, 2n, -0x2000000000000000n], 111 [-0x7ffffffffffffffen, 2n, -0x2000000000000000n], 112 [-0x100000001n, 2n, -0x40000001n], 113 [-0x100000000n, 2n, -0x40000000n], 114 [-0xffffffffn, 2n, -0x40000000n], 115 [-0xfffffffen, 2n, -0x40000000n], 116 [-0x80000001n, 2n, -0x20000001n], 117 [-0x80000000n, 2n, -0x20000000n], 118 [-0x7fffffffn, 2n, -0x20000000n], 119 [-0x7ffffffen, 2n, -0x20000000n], 120 [-9n, 2n, -3n], 121 [-8n, 2n, -2n], 122 [-7n, 2n, -2n], 123 [-6n, 2n, -2n], 124 [-5n, 2n, -2n], 125 [-4n, 2n, -1n], 126 [-3n, 2n, -1n], 127 [-2n, 2n, -1n], 128 [-1n, 2n, -1n], 129 [0n, 2n, 0n], 130 [1n, 2n, 0n], 131 [2n, 2n, 0n], 132 [3n, 2n, 0n], 133 [4n, 2n, 1n], 134 [5n, 2n, 1n], 135 [6n, 2n, 1n], 136 [7n, 2n, 1n], 137 [8n, 2n, 2n], 138 [9n, 2n, 2n], 139 [0x7ffffffen, 2n, 0x1fffffffn], 140 [0x7fffffffn, 2n, 0x1fffffffn], 141 [0x80000000n, 2n, 0x20000000n], 142 [0x80000001n, 2n, 0x20000000n], 143 [0xfffffffen, 2n, 0x3fffffffn], 144 [0xffffffffn, 2n, 0x3fffffffn], 145 [0x100000000n, 2n, 0x40000000n], 146 [0x100000001n, 2n, 0x40000000n], 147 [0x7ffffffffffffffen, 2n, 0x1fffffffffffffffn], 148 [0x7fffffffffffffffn, 2n, 0x1fffffffffffffffn], 149 [0x8000000000000000n, 2n, 0x2000000000000000n], 150 [0x8000000000000001n, 2n, 0x2000000000000000n], 151 [0xfffffffffffffffen, 2n, 0x3fffffffffffffffn], 152 [0xffffffffffffffffn, 2n, 0x3fffffffffffffffn], 153 [0x10000000000000000n, 2n, 0x4000000000000000n], 154 [0x10000000000000001n, 2n, 0x4000000000000000n], 155 [-0x10000000000000001n, 3n, -0x2000000000000001n], 156 [-0x10000000000000000n, 3n, -0x2000000000000000n], 157 [-0xffffffffffffffffn, 3n, -0x2000000000000000n], 158 [-0xfffffffffffffffen, 3n, -0x2000000000000000n], 159 [-0x8000000000000001n, 3n, -0x1000000000000001n], 160 [-0x8000000000000000n, 3n, -0x1000000000000000n], 161 [-0x7fffffffffffffffn, 3n, -0x1000000000000000n], 162 [-0x7ffffffffffffffen, 3n, -0x1000000000000000n], 163 [-0x100000001n, 3n, -0x20000001n], 164 [-0x100000000n, 3n, -0x20000000n], 165 [-0xffffffffn, 3n, -0x20000000n], 166 [-0xfffffffen, 3n, -0x20000000n], 167 [-0x80000001n, 3n, -0x10000001n], 168 [-0x80000000n, 3n, -0x10000000n], 169 [-0x7fffffffn, 3n, -0x10000000n], 170 [-0x7ffffffen, 3n, -0x10000000n], 171 [-9n, 3n, -2n], 172 [-8n, 3n, -1n], 173 [-7n, 3n, -1n], 174 [-6n, 3n, -1n], 175 [-5n, 3n, -1n], 176 [-4n, 3n, -1n], 177 [-3n, 3n, -1n], 178 [-2n, 3n, -1n], 179 [-1n, 3n, -1n], 180 [0n, 3n, 0n], 181 [1n, 3n, 0n], 182 [2n, 3n, 0n], 183 [3n, 3n, 0n], 184 [4n, 3n, 0n], 185 [5n, 3n, 0n], 186 [6n, 3n, 0n], 187 [7n, 3n, 0n], 188 [8n, 3n, 1n], 189 [9n, 3n, 1n], 190 [0x7ffffffen, 3n, 0xfffffffn], 191 [0x7fffffffn, 3n, 0xfffffffn], 192 [0x80000000n, 3n, 0x10000000n], 193 [0x80000001n, 3n, 0x10000000n], 194 [0xfffffffen, 3n, 0x1fffffffn], 195 [0xffffffffn, 3n, 0x1fffffffn], 196 [0x100000000n, 3n, 0x20000000n], 197 [0x100000001n, 3n, 0x20000000n], 198 [0x7ffffffffffffffen, 3n, 0xfffffffffffffffn], 199 [0x7fffffffffffffffn, 3n, 0xfffffffffffffffn], 200 [0x8000000000000000n, 3n, 0x1000000000000000n], 201 [0x8000000000000001n, 3n, 0x1000000000000000n], 202 [0xfffffffffffffffen, 3n, 0x1fffffffffffffffn], 203 [0xffffffffffffffffn, 3n, 0x1fffffffffffffffn], 204 [0x10000000000000000n, 3n, 0x2000000000000000n], 205 [0x10000000000000001n, 3n, 0x2000000000000000n], 206 [-0x10000000000000001n, 4n, -0x1000000000000001n], 207 [-0x10000000000000000n, 4n, -0x1000000000000000n], 208 [-0xffffffffffffffffn, 4n, -0x1000000000000000n], 209 [-0xfffffffffffffffen, 4n, -0x1000000000000000n], 210 [-0x8000000000000001n, 4n, -0x800000000000001n], 211 [-0x8000000000000000n, 4n, -0x800000000000000n], 212 [-0x7fffffffffffffffn, 4n, -0x800000000000000n], 213 [-0x7ffffffffffffffen, 4n, -0x800000000000000n], 214 [-0x100000001n, 4n, -0x10000001n], 215 [-0x100000000n, 4n, -0x10000000n], 216 [-0xffffffffn, 4n, -0x10000000n], 217 [-0xfffffffen, 4n, -0x10000000n], 218 [-0x80000001n, 4n, -0x8000001n], 219 [-0x80000000n, 4n, -0x8000000n], 220 [-0x7fffffffn, 4n, -0x8000000n], 221 [-0x7ffffffen, 4n, -0x8000000n], 222 [-9n, 4n, -1n], 223 [-8n, 4n, -1n], 224 [-7n, 4n, -1n], 225 [-6n, 4n, -1n], 226 [-5n, 4n, -1n], 227 [-4n, 4n, -1n], 228 [-3n, 4n, -1n], 229 [-2n, 4n, -1n], 230 [-1n, 4n, -1n], 231 [0n, 4n, 0n], 232 [1n, 4n, 0n], 233 [2n, 4n, 0n], 234 [3n, 4n, 0n], 235 [4n, 4n, 0n], 236 [5n, 4n, 0n], 237 [6n, 4n, 0n], 238 [7n, 4n, 0n], 239 [8n, 4n, 0n], 240 [9n, 4n, 0n], 241 [0x7ffffffen, 4n, 0x7ffffffn], 242 [0x7fffffffn, 4n, 0x7ffffffn], 243 [0x80000000n, 4n, 0x8000000n], 244 [0x80000001n, 4n, 0x8000000n], 245 [0xfffffffen, 4n, 0xfffffffn], 246 [0xffffffffn, 4n, 0xfffffffn], 247 [0x100000000n, 4n, 0x10000000n], 248 [0x100000001n, 4n, 0x10000000n], 249 [0x7ffffffffffffffen, 4n, 0x7ffffffffffffffn], 250 [0x7fffffffffffffffn, 4n, 0x7ffffffffffffffn], 251 [0x8000000000000000n, 4n, 0x800000000000000n], 252 [0x8000000000000001n, 4n, 0x800000000000000n], 253 [0xfffffffffffffffen, 4n, 0xfffffffffffffffn], 254 [0xffffffffffffffffn, 4n, 0xfffffffffffffffn], 255 [0x10000000000000000n, 4n, 0x1000000000000000n], 256 [0x10000000000000001n, 4n, 0x1000000000000000n], 257 [-0x10000000000000001n, 31n, -0x200000001n], 258 [-0x10000000000000000n, 31n, -0x200000000n], 259 [-0xffffffffffffffffn, 31n, -0x200000000n], 260 [-0xfffffffffffffffen, 31n, -0x200000000n], 261 [-0x8000000000000001n, 31n, -0x100000001n], 262 [-0x8000000000000000n, 31n, -0x100000000n], 263 [-0x7fffffffffffffffn, 31n, -0x100000000n], 264 [-0x7ffffffffffffffen, 31n, -0x100000000n], 265 [-0x100000001n, 31n, -3n], 266 [-0x100000000n, 31n, -2n], 267 [-0xffffffffn, 31n, -2n], 268 [-0xfffffffen, 31n, -2n], 269 [-0x80000001n, 31n, -2n], 270 [-0x80000000n, 31n, -1n], 271 [-0x7fffffffn, 31n, -1n], 272 [-0x7ffffffen, 31n, -1n], 273 [-9n, 31n, -1n], 274 [-8n, 31n, -1n], 275 [-7n, 31n, -1n], 276 [-6n, 31n, -1n], 277 [-5n, 31n, -1n], 278 [-4n, 31n, -1n], 279 [-3n, 31n, -1n], 280 [-2n, 31n, -1n], 281 [-1n, 31n, -1n], 282 [0n, 31n, 0n], 283 [1n, 31n, 0n], 284 [2n, 31n, 0n], 285 [3n, 31n, 0n], 286 [4n, 31n, 0n], 287 [5n, 31n, 0n], 288 [6n, 31n, 0n], 289 [7n, 31n, 0n], 290 [8n, 31n, 0n], 291 [9n, 31n, 0n], 292 [0x7ffffffen, 31n, 0n], 293 [0x7fffffffn, 31n, 0n], 294 [0x80000000n, 31n, 1n], 295 [0x80000001n, 31n, 1n], 296 [0xfffffffen, 31n, 1n], 297 [0xffffffffn, 31n, 1n], 298 [0x100000000n, 31n, 2n], 299 [0x100000001n, 31n, 2n], 300 [0x7ffffffffffffffen, 31n, 0xffffffffn], 301 [0x7fffffffffffffffn, 31n, 0xffffffffn], 302 [0x8000000000000000n, 31n, 0x100000000n], 303 [0x8000000000000001n, 31n, 0x100000000n], 304 [0xfffffffffffffffen, 31n, 0x1ffffffffn], 305 [0xffffffffffffffffn, 31n, 0x1ffffffffn], 306 [0x10000000000000000n, 31n, 0x200000000n], 307 [0x10000000000000001n, 31n, 0x200000000n], 308 [-0x10000000000000001n, 32n, -0x100000001n], 309 [-0x10000000000000000n, 32n, -0x100000000n], 310 [-0xffffffffffffffffn, 32n, -0x100000000n], 311 [-0xfffffffffffffffen, 32n, -0x100000000n], 312 [-0x8000000000000001n, 32n, -0x80000001n], 313 [-0x8000000000000000n, 32n, -0x80000000n], 314 [-0x7fffffffffffffffn, 32n, -0x80000000n], 315 [-0x7ffffffffffffffen, 32n, -0x80000000n], 316 [-0x100000001n, 32n, -2n], 317 [-0x100000000n, 32n, -1n], 318 [-0xffffffffn, 32n, -1n], 319 [-0xfffffffen, 32n, -1n], 320 [-0x80000001n, 32n, -1n], 321 [-0x80000000n, 32n, -1n], 322 [-0x7fffffffn, 32n, -1n], 323 [-0x7ffffffen, 32n, -1n], 324 [-9n, 32n, -1n], 325 [-8n, 32n, -1n], 326 [-7n, 32n, -1n], 327 [-6n, 32n, -1n], 328 [-5n, 32n, -1n], 329 [-4n, 32n, -1n], 330 [-3n, 32n, -1n], 331 [-2n, 32n, -1n], 332 [-1n, 32n, -1n], 333 [0n, 32n, 0n], 334 [1n, 32n, 0n], 335 [2n, 32n, 0n], 336 [3n, 32n, 0n], 337 [4n, 32n, 0n], 338 [5n, 32n, 0n], 339 [6n, 32n, 0n], 340 [7n, 32n, 0n], 341 [8n, 32n, 0n], 342 [9n, 32n, 0n], 343 [0x7ffffffen, 32n, 0n], 344 [0x7fffffffn, 32n, 0n], 345 [0x80000000n, 32n, 0n], 346 [0x80000001n, 32n, 0n], 347 [0xfffffffen, 32n, 0n], 348 [0xffffffffn, 32n, 0n], 349 [0x100000000n, 32n, 1n], 350 [0x100000001n, 32n, 1n], 351 [0x7ffffffffffffffen, 32n, 0x7fffffffn], 352 [0x7fffffffffffffffn, 32n, 0x7fffffffn], 353 [0x8000000000000000n, 32n, 0x80000000n], 354 [0x8000000000000001n, 32n, 0x80000000n], 355 [0xfffffffffffffffen, 32n, 0xffffffffn], 356 [0xffffffffffffffffn, 32n, 0xffffffffn], 357 [0x10000000000000000n, 32n, 0x100000000n], 358 [0x10000000000000001n, 32n, 0x100000000n], 359 [-0x10000000000000001n, 63n, -3n], 360 [-0x10000000000000000n, 63n, -2n], 361 [-0xffffffffffffffffn, 63n, -2n], 362 [-0xfffffffffffffffen, 63n, -2n], 363 [-0x8000000000000001n, 63n, -2n], 364 [-0x8000000000000000n, 63n, -1n], 365 [-0x7fffffffffffffffn, 63n, -1n], 366 [-0x7ffffffffffffffen, 63n, -1n], 367 [-0x100000001n, 63n, -1n], 368 [-0x100000000n, 63n, -1n], 369 [-0xffffffffn, 63n, -1n], 370 [-0xfffffffen, 63n, -1n], 371 [-0x80000001n, 63n, -1n], 372 [-0x80000000n, 63n, -1n], 373 [-0x7fffffffn, 63n, -1n], 374 [-0x7ffffffen, 63n, -1n], 375 [-9n, 63n, -1n], 376 [-8n, 63n, -1n], 377 [-7n, 63n, -1n], 378 [-6n, 63n, -1n], 379 [-5n, 63n, -1n], 380 [-4n, 63n, -1n], 381 [-3n, 63n, -1n], 382 [-2n, 63n, -1n], 383 [-1n, 63n, -1n], 384 [0n, 63n, 0n], 385 [1n, 63n, 0n], 386 [2n, 63n, 0n], 387 [3n, 63n, 0n], 388 [4n, 63n, 0n], 389 [5n, 63n, 0n], 390 [6n, 63n, 0n], 391 [7n, 63n, 0n], 392 [8n, 63n, 0n], 393 [9n, 63n, 0n], 394 [0x7ffffffen, 63n, 0n], 395 [0x7fffffffn, 63n, 0n], 396 [0x80000000n, 63n, 0n], 397 [0x80000001n, 63n, 0n], 398 [0xfffffffen, 63n, 0n], 399 [0xffffffffn, 63n, 0n], 400 [0x100000000n, 63n, 0n], 401 [0x100000001n, 63n, 0n], 402 [0x7ffffffffffffffen, 63n, 0n], 403 [0x7fffffffffffffffn, 63n, 0n], 404 [0x8000000000000000n, 63n, 1n], 405 [0x8000000000000001n, 63n, 1n], 406 [0xfffffffffffffffen, 63n, 1n], 407 [0xffffffffffffffffn, 63n, 1n], 408 [0x10000000000000000n, 63n, 2n], 409 [0x10000000000000001n, 63n, 2n], 410 [-0x10000000000000001n, 64n, -2n], 411 [-0x10000000000000000n, 64n, -1n], 412 [-0xffffffffffffffffn, 64n, -1n], 413 [-0xfffffffffffffffen, 64n, -1n], 414 [-0x8000000000000001n, 64n, -1n], 415 [-0x8000000000000000n, 64n, -1n], 416 [-0x7fffffffffffffffn, 64n, -1n], 417 [-0x7ffffffffffffffen, 64n, -1n], 418 [-0x100000001n, 64n, -1n], 419 [-0x100000000n, 64n, -1n], 420 [-0xffffffffn, 64n, -1n], 421 [-0xfffffffen, 64n, -1n], 422 [-0x80000001n, 64n, -1n], 423 [-0x80000000n, 64n, -1n], 424 [-0x7fffffffn, 64n, -1n], 425 [-0x7ffffffen, 64n, -1n], 426 [-9n, 64n, -1n], 427 [-8n, 64n, -1n], 428 [-7n, 64n, -1n], 429 [-6n, 64n, -1n], 430 [-5n, 64n, -1n], 431 [-4n, 64n, -1n], 432 [-3n, 64n, -1n], 433 [-2n, 64n, -1n], 434 [-1n, 64n, -1n], 435 [0n, 64n, 0n], 436 [1n, 64n, 0n], 437 [2n, 64n, 0n], 438 [3n, 64n, 0n], 439 [4n, 64n, 0n], 440 [5n, 64n, 0n], 441 [6n, 64n, 0n], 442 [7n, 64n, 0n], 443 [8n, 64n, 0n], 444 [9n, 64n, 0n], 445 [0x7ffffffen, 64n, 0n], 446 [0x7fffffffn, 64n, 0n], 447 [0x80000000n, 64n, 0n], 448 [0x80000001n, 64n, 0n], 449 [0xfffffffen, 64n, 0n], 450 [0xffffffffn, 64n, 0n], 451 [0x100000000n, 64n, 0n], 452 [0x100000001n, 64n, 0n], 453 [0x7ffffffffffffffen, 64n, 0n], 454 [0x7fffffffffffffffn, 64n, 0n], 455 [0x8000000000000000n, 64n, 0n], 456 [0x8000000000000001n, 64n, 0n], 457 [0xfffffffffffffffen, 64n, 0n], 458 [0xffffffffffffffffn, 64n, 0n], 459 [0x10000000000000000n, 64n, 1n], 460 [0x10000000000000001n, 64n, 1n], 461 [-0x10000000000000001n, -1n, -0x20000000000000002n], 462 [-0x10000000000000000n, -1n, -0x20000000000000000n], 463 [-0xffffffffffffffffn, -1n, -0x1fffffffffffffffen], 464 [-0xfffffffffffffffen, -1n, -0x1fffffffffffffffcn], 465 [-0x8000000000000001n, -1n, -0x10000000000000002n], 466 [-0x8000000000000000n, -1n, -0x10000000000000000n], 467 [-0x7fffffffffffffffn, -1n, -0xfffffffffffffffen], 468 [-0x7ffffffffffffffen, -1n, -0xfffffffffffffffcn], 469 [-0x100000001n, -1n, -0x200000002n], 470 [-0x100000000n, -1n, -0x200000000n], 471 [-0xffffffffn, -1n, -0x1fffffffen], 472 [-0xfffffffen, -1n, -0x1fffffffcn], 473 [-0x80000001n, -1n, -0x100000002n], 474 [-0x80000000n, -1n, -0x100000000n], 475 [-0x7fffffffn, -1n, -0xfffffffen], 476 [-0x7ffffffen, -1n, -0xfffffffcn], 477 [-9n, -1n, -18n], 478 [-8n, -1n, -16n], 479 [-7n, -1n, -14n], 480 [-6n, -1n, -12n], 481 [-5n, -1n, -10n], 482 [-4n, -1n, -8n], 483 [-3n, -1n, -6n], 484 [-2n, -1n, -4n], 485 [-1n, -1n, -2n], 486 [0n, -1n, 0n], 487 [1n, -1n, 2n], 488 [2n, -1n, 4n], 489 [3n, -1n, 6n], 490 [4n, -1n, 8n], 491 [5n, -1n, 10n], 492 [6n, -1n, 12n], 493 [7n, -1n, 14n], 494 [8n, -1n, 16n], 495 [9n, -1n, 18n], 496 [0x7ffffffen, -1n, 0xfffffffcn], 497 [0x7fffffffn, -1n, 0xfffffffen], 498 [0x80000000n, -1n, 0x100000000n], 499 [0x80000001n, -1n, 0x100000002n], 500 [0xfffffffen, -1n, 0x1fffffffcn], 501 [0xffffffffn, -1n, 0x1fffffffen], 502 [0x100000000n, -1n, 0x200000000n], 503 [0x100000001n, -1n, 0x200000002n], 504 [0x7ffffffffffffffen, -1n, 0xfffffffffffffffcn], 505 [0x7fffffffffffffffn, -1n, 0xfffffffffffffffen], 506 [0x8000000000000000n, -1n, 0x10000000000000000n], 507 [0x8000000000000001n, -1n, 0x10000000000000002n], 508 [0xfffffffffffffffen, -1n, 0x1fffffffffffffffcn], 509 [0xffffffffffffffffn, -1n, 0x1fffffffffffffffen], 510 [0x10000000000000000n, -1n, 0x20000000000000000n], 511 [0x10000000000000001n, -1n, 0x20000000000000002n], 512 [-0x10000000000000001n, -2n, -0x40000000000000004n], 513 [-0x10000000000000000n, -2n, -0x40000000000000000n], 514 [-0xffffffffffffffffn, -2n, -0x3fffffffffffffffcn], 515 [-0xfffffffffffffffen, -2n, -0x3fffffffffffffff8n], 516 [-0x8000000000000001n, -2n, -0x20000000000000004n], 517 [-0x8000000000000000n, -2n, -0x20000000000000000n], 518 [-0x7fffffffffffffffn, -2n, -0x1fffffffffffffffcn], 519 [-0x7ffffffffffffffen, -2n, -0x1fffffffffffffff8n], 520 [-0x100000001n, -2n, -0x400000004n], 521 [-0x100000000n, -2n, -0x400000000n], 522 [-0xffffffffn, -2n, -0x3fffffffcn], 523 [-0xfffffffen, -2n, -0x3fffffff8n], 524 [-0x80000001n, -2n, -0x200000004n], 525 [-0x80000000n, -2n, -0x200000000n], 526 [-0x7fffffffn, -2n, -0x1fffffffcn], 527 [-0x7ffffffen, -2n, -0x1fffffff8n], 528 [-9n, -2n, -36n], 529 [-8n, -2n, -32n], 530 [-7n, -2n, -28n], 531 [-6n, -2n, -24n], 532 [-5n, -2n, -20n], 533 [-4n, -2n, -16n], 534 [-3n, -2n, -12n], 535 [-2n, -2n, -8n], 536 [-1n, -2n, -4n], 537 [0n, -2n, 0n], 538 [1n, -2n, 4n], 539 [2n, -2n, 8n], 540 [3n, -2n, 12n], 541 [4n, -2n, 16n], 542 [5n, -2n, 20n], 543 [6n, -2n, 24n], 544 [7n, -2n, 28n], 545 [8n, -2n, 32n], 546 [9n, -2n, 36n], 547 [0x7ffffffen, -2n, 0x1fffffff8n], 548 [0x7fffffffn, -2n, 0x1fffffffcn], 549 [0x80000000n, -2n, 0x200000000n], 550 [0x80000001n, -2n, 0x200000004n], 551 [0xfffffffen, -2n, 0x3fffffff8n], 552 [0xffffffffn, -2n, 0x3fffffffcn], 553 [0x100000000n, -2n, 0x400000000n], 554 [0x100000001n, -2n, 0x400000004n], 555 [0x7ffffffffffffffen, -2n, 0x1fffffffffffffff8n], 556 [0x7fffffffffffffffn, -2n, 0x1fffffffffffffffcn], 557 [0x8000000000000000n, -2n, 0x20000000000000000n], 558 [0x8000000000000001n, -2n, 0x20000000000000004n], 559 [0xfffffffffffffffen, -2n, 0x3fffffffffffffff8n], 560 [0xffffffffffffffffn, -2n, 0x3fffffffffffffffcn], 561 [0x10000000000000000n, -2n, 0x40000000000000000n], 562 [0x10000000000000001n, -2n, 0x40000000000000004n], 563 [-0x10000000000000001n, -3n, -0x80000000000000008n], 564 [-0x10000000000000000n, -3n, -0x80000000000000000n], 565 [-0xffffffffffffffffn, -3n, -0x7fffffffffffffff8n], 566 [-0xfffffffffffffffen, -3n, -0x7fffffffffffffff0n], 567 [-0x8000000000000001n, -3n, -0x40000000000000008n], 568 [-0x8000000000000000n, -3n, -0x40000000000000000n], 569 [-0x7fffffffffffffffn, -3n, -0x3fffffffffffffff8n], 570 [-0x7ffffffffffffffen, -3n, -0x3fffffffffffffff0n], 571 [-0x100000001n, -3n, -0x800000008n], 572 [-0x100000000n, -3n, -0x800000000n], 573 [-0xffffffffn, -3n, -0x7fffffff8n], 574 [-0xfffffffen, -3n, -0x7fffffff0n], 575 [-0x80000001n, -3n, -0x400000008n], 576 [-0x80000000n, -3n, -0x400000000n], 577 [-0x7fffffffn, -3n, -0x3fffffff8n], 578 [-0x7ffffffen, -3n, -0x3fffffff0n], 579 [-9n, -3n, -72n], 580 [-8n, -3n, -64n], 581 [-7n, -3n, -56n], 582 [-6n, -3n, -48n], 583 [-5n, -3n, -40n], 584 [-4n, -3n, -32n], 585 [-3n, -3n, -24n], 586 [-2n, -3n, -16n], 587 [-1n, -3n, -8n], 588 [0n, -3n, 0n], 589 [1n, -3n, 8n], 590 [2n, -3n, 16n], 591 [3n, -3n, 24n], 592 [4n, -3n, 32n], 593 [5n, -3n, 40n], 594 [6n, -3n, 48n], 595 [7n, -3n, 56n], 596 [8n, -3n, 64n], 597 [9n, -3n, 72n], 598 [0x7ffffffen, -3n, 0x3fffffff0n], 599 [0x7fffffffn, -3n, 0x3fffffff8n], 600 [0x80000000n, -3n, 0x400000000n], 601 [0x80000001n, -3n, 0x400000008n], 602 [0xfffffffen, -3n, 0x7fffffff0n], 603 [0xffffffffn, -3n, 0x7fffffff8n], 604 [0x100000000n, -3n, 0x800000000n], 605 [0x100000001n, -3n, 0x800000008n], 606 [0x7ffffffffffffffen, -3n, 0x3fffffffffffffff0n], 607 [0x7fffffffffffffffn, -3n, 0x3fffffffffffffff8n], 608 [0x8000000000000000n, -3n, 0x40000000000000000n], 609 [0x8000000000000001n, -3n, 0x40000000000000008n], 610 [0xfffffffffffffffen, -3n, 0x7fffffffffffffff0n], 611 [0xffffffffffffffffn, -3n, 0x7fffffffffffffff8n], 612 [0x10000000000000000n, -3n, 0x80000000000000000n], 613 [0x10000000000000001n, -3n, 0x80000000000000008n], 614 [-0x10000000000000001n, -4n, -0x100000000000000010n], 615 [-0x10000000000000000n, -4n, -0x100000000000000000n], 616 [-0xffffffffffffffffn, -4n, -0xffffffffffffffff0n], 617 [-0xfffffffffffffffen, -4n, -0xfffffffffffffffe0n], 618 [-0x8000000000000001n, -4n, -0x80000000000000010n], 619 [-0x8000000000000000n, -4n, -0x80000000000000000n], 620 [-0x7fffffffffffffffn, -4n, -0x7fffffffffffffff0n], 621 [-0x7ffffffffffffffen, -4n, -0x7ffffffffffffffe0n], 622 [-0x100000001n, -4n, -0x1000000010n], 623 [-0x100000000n, -4n, -0x1000000000n], 624 [-0xffffffffn, -4n, -0xffffffff0n], 625 [-0xfffffffen, -4n, -0xfffffffe0n], 626 [-0x80000001n, -4n, -0x800000010n], 627 [-0x80000000n, -4n, -0x800000000n], 628 [-0x7fffffffn, -4n, -0x7fffffff0n], 629 [-0x7ffffffen, -4n, -0x7ffffffe0n], 630 [-9n, -4n, -144n], 631 [-8n, -4n, -128n], 632 [-7n, -4n, -112n], 633 [-6n, -4n, -96n], 634 [-5n, -4n, -80n], 635 [-4n, -4n, -64n], 636 [-3n, -4n, -48n], 637 [-2n, -4n, -32n], 638 [-1n, -4n, -16n], 639 [0n, -4n, 0n], 640 [1n, -4n, 16n], 641 [2n, -4n, 32n], 642 [3n, -4n, 48n], 643 [4n, -4n, 64n], 644 [5n, -4n, 80n], 645 [6n, -4n, 96n], 646 [7n, -4n, 112n], 647 [8n, -4n, 128n], 648 [9n, -4n, 144n], 649 [0x7ffffffen, -4n, 0x7ffffffe0n], 650 [0x7fffffffn, -4n, 0x7fffffff0n], 651 [0x80000000n, -4n, 0x800000000n], 652 [0x80000001n, -4n, 0x800000010n], 653 [0xfffffffen, -4n, 0xfffffffe0n], 654 [0xffffffffn, -4n, 0xffffffff0n], 655 [0x100000000n, -4n, 0x1000000000n], 656 [0x100000001n, -4n, 0x1000000010n], 657 [0x7ffffffffffffffen, -4n, 0x7ffffffffffffffe0n], 658 [0x7fffffffffffffffn, -4n, 0x7fffffffffffffff0n], 659 [0x8000000000000000n, -4n, 0x80000000000000000n], 660 [0x8000000000000001n, -4n, 0x80000000000000010n], 661 [0xfffffffffffffffen, -4n, 0xfffffffffffffffe0n], 662 [0xffffffffffffffffn, -4n, 0xffffffffffffffff0n], 663 [0x10000000000000000n, -4n, 0x100000000000000000n], 664 [0x10000000000000001n, -4n, 0x100000000000000010n], 665 [-0x10000000000000001n, -31n, -0x800000000000000080000000n], 666 [-0x10000000000000000n, -31n, -0x800000000000000000000000n], 667 [-0xffffffffffffffffn, -31n, -0x7fffffffffffffff80000000n], 668 [-0xfffffffffffffffen, -31n, -0x7fffffffffffffff00000000n], 669 [-0x8000000000000001n, -31n, -0x400000000000000080000000n], 670 [-0x8000000000000000n, -31n, -0x400000000000000000000000n], 671 [-0x7fffffffffffffffn, -31n, -0x3fffffffffffffff80000000n], 672 [-0x7ffffffffffffffen, -31n, -0x3fffffffffffffff00000000n], 673 [-0x100000001n, -31n, -0x8000000080000000n], 674 [-0x100000000n, -31n, -0x8000000000000000n], 675 [-0xffffffffn, -31n, -0x7fffffff80000000n], 676 [-0xfffffffen, -31n, -0x7fffffff00000000n], 677 [-0x80000001n, -31n, -0x4000000080000000n], 678 [-0x80000000n, -31n, -0x4000000000000000n], 679 [-0x7fffffffn, -31n, -0x3fffffff80000000n], 680 [-0x7ffffffen, -31n, -0x3fffffff00000000n], 681 [-9n, -31n, -0x480000000n], 682 [-8n, -31n, -0x400000000n], 683 [-7n, -31n, -0x380000000n], 684 [-6n, -31n, -0x300000000n], 685 [-5n, -31n, -0x280000000n], 686 [-4n, -31n, -0x200000000n], 687 [-3n, -31n, -0x180000000n], 688 [-2n, -31n, -0x100000000n], 689 [-1n, -31n, -0x80000000n], 690 [0n, -31n, 0n], 691 [1n, -31n, 0x80000000n], 692 [2n, -31n, 0x100000000n], 693 [3n, -31n, 0x180000000n], 694 [4n, -31n, 0x200000000n], 695 [5n, -31n, 0x280000000n], 696 [6n, -31n, 0x300000000n], 697 [7n, -31n, 0x380000000n], 698 [8n, -31n, 0x400000000n], 699 [9n, -31n, 0x480000000n], 700 [0x7ffffffen, -31n, 0x3fffffff00000000n], 701 [0x7fffffffn, -31n, 0x3fffffff80000000n], 702 [0x80000000n, -31n, 0x4000000000000000n], 703 [0x80000001n, -31n, 0x4000000080000000n], 704 [0xfffffffen, -31n, 0x7fffffff00000000n], 705 [0xffffffffn, -31n, 0x7fffffff80000000n], 706 [0x100000000n, -31n, 0x8000000000000000n], 707 [0x100000001n, -31n, 0x8000000080000000n], 708 [0x7ffffffffffffffen, -31n, 0x3fffffffffffffff00000000n], 709 [0x7fffffffffffffffn, -31n, 0x3fffffffffffffff80000000n], 710 [0x8000000000000000n, -31n, 0x400000000000000000000000n], 711 [0x8000000000000001n, -31n, 0x400000000000000080000000n], 712 [0xfffffffffffffffen, -31n, 0x7fffffffffffffff00000000n], 713 [0xffffffffffffffffn, -31n, 0x7fffffffffffffff80000000n], 714 [0x10000000000000000n, -31n, 0x800000000000000000000000n], 715 [0x10000000000000001n, -31n, 0x800000000000000080000000n], 716 [-0x10000000000000001n, -32n, -0x1000000000000000100000000n], 717 [-0x10000000000000000n, -32n, -0x1000000000000000000000000n], 718 [-0xffffffffffffffffn, -32n, -0xffffffffffffffff00000000n], 719 [-0xfffffffffffffffen, -32n, -0xfffffffffffffffe00000000n], 720 [-0x8000000000000001n, -32n, -0x800000000000000100000000n], 721 [-0x8000000000000000n, -32n, -0x800000000000000000000000n], 722 [-0x7fffffffffffffffn, -32n, -0x7fffffffffffffff00000000n], 723 [-0x7ffffffffffffffen, -32n, -0x7ffffffffffffffe00000000n], 724 [-0x100000001n, -32n, -0x10000000100000000n], 725 [-0x100000000n, -32n, -0x10000000000000000n], 726 [-0xffffffffn, -32n, -0xffffffff00000000n], 727 [-0xfffffffen, -32n, -0xfffffffe00000000n], 728 [-0x80000001n, -32n, -0x8000000100000000n], 729 [-0x80000000n, -32n, -0x8000000000000000n], 730 [-0x7fffffffn, -32n, -0x7fffffff00000000n], 731 [-0x7ffffffen, -32n, -0x7ffffffe00000000n], 732 [-9n, -32n, -0x900000000n], 733 [-8n, -32n, -0x800000000n], 734 [-7n, -32n, -0x700000000n], 735 [-6n, -32n, -0x600000000n], 736 [-5n, -32n, -0x500000000n], 737 [-4n, -32n, -0x400000000n], 738 [-3n, -32n, -0x300000000n], 739 [-2n, -32n, -0x200000000n], 740 [-1n, -32n, -0x100000000n], 741 [0n, -32n, 0n], 742 [1n, -32n, 0x100000000n], 743 [2n, -32n, 0x200000000n], 744 [3n, -32n, 0x300000000n], 745 [4n, -32n, 0x400000000n], 746 [5n, -32n, 0x500000000n], 747 [6n, -32n, 0x600000000n], 748 [7n, -32n, 0x700000000n], 749 [8n, -32n, 0x800000000n], 750 [9n, -32n, 0x900000000n], 751 [0x7ffffffen, -32n, 0x7ffffffe00000000n], 752 [0x7fffffffn, -32n, 0x7fffffff00000000n], 753 [0x80000000n, -32n, 0x8000000000000000n], 754 [0x80000001n, -32n, 0x8000000100000000n], 755 [0xfffffffen, -32n, 0xfffffffe00000000n], 756 [0xffffffffn, -32n, 0xffffffff00000000n], 757 [0x100000000n, -32n, 0x10000000000000000n], 758 [0x100000001n, -32n, 0x10000000100000000n], 759 [0x7ffffffffffffffen, -32n, 0x7ffffffffffffffe00000000n], 760 [0x7fffffffffffffffn, -32n, 0x7fffffffffffffff00000000n], 761 [0x8000000000000000n, -32n, 0x800000000000000000000000n], 762 [0x8000000000000001n, -32n, 0x800000000000000100000000n], 763 [0xfffffffffffffffen, -32n, 0xfffffffffffffffe00000000n], 764 [0xffffffffffffffffn, -32n, 0xffffffffffffffff00000000n], 765 [0x10000000000000000n, -32n, 0x1000000000000000000000000n], 766 [0x10000000000000001n, -32n, 0x1000000000000000100000000n], 767 [-0x10000000000000001n, -63n, -0x80000000000000008000000000000000n], 768 [-0x10000000000000000n, -63n, -0x80000000000000000000000000000000n], 769 [-0xffffffffffffffffn, -63n, -0x7fffffffffffffff8000000000000000n], 770 [-0xfffffffffffffffen, -63n, -0x7fffffffffffffff0000000000000000n], 771 [-0x8000000000000001n, -63n, -0x40000000000000008000000000000000n], 772 [-0x8000000000000000n, -63n, -0x40000000000000000000000000000000n], 773 [-0x7fffffffffffffffn, -63n, -0x3fffffffffffffff8000000000000000n], 774 [-0x7ffffffffffffffen, -63n, -0x3fffffffffffffff0000000000000000n], 775 [-0x100000001n, -63n, -0x800000008000000000000000n], 776 [-0x100000000n, -63n, -0x800000000000000000000000n], 777 [-0xffffffffn, -63n, -0x7fffffff8000000000000000n], 778 [-0xfffffffen, -63n, -0x7fffffff0000000000000000n], 779 [-0x80000001n, -63n, -0x400000008000000000000000n], 780 [-0x80000000n, -63n, -0x400000000000000000000000n], 781 [-0x7fffffffn, -63n, -0x3fffffff8000000000000000n], 782 [-0x7ffffffen, -63n, -0x3fffffff0000000000000000n], 783 [-9n, -63n, -0x48000000000000000n], 784 [-8n, -63n, -0x40000000000000000n], 785 [-7n, -63n, -0x38000000000000000n], 786 [-6n, -63n, -0x30000000000000000n], 787 [-5n, -63n, -0x28000000000000000n], 788 [-4n, -63n, -0x20000000000000000n], 789 [-3n, -63n, -0x18000000000000000n], 790 [-2n, -63n, -0x10000000000000000n], 791 [-1n, -63n, -0x8000000000000000n], 792 [0n, -63n, 0n], 793 [1n, -63n, 0x8000000000000000n], 794 [2n, -63n, 0x10000000000000000n], 795 [3n, -63n, 0x18000000000000000n], 796 [4n, -63n, 0x20000000000000000n], 797 [5n, -63n, 0x28000000000000000n], 798 [6n, -63n, 0x30000000000000000n], 799 [7n, -63n, 0x38000000000000000n], 800 [8n, -63n, 0x40000000000000000n], 801 [9n, -63n, 0x48000000000000000n], 802 [0x7ffffffen, -63n, 0x3fffffff0000000000000000n], 803 [0x7fffffffn, -63n, 0x3fffffff8000000000000000n], 804 [0x80000000n, -63n, 0x400000000000000000000000n], 805 [0x80000001n, -63n, 0x400000008000000000000000n], 806 [0xfffffffen, -63n, 0x7fffffff0000000000000000n], 807 [0xffffffffn, -63n, 0x7fffffff8000000000000000n], 808 [0x100000000n, -63n, 0x800000000000000000000000n], 809 [0x100000001n, -63n, 0x800000008000000000000000n], 810 [0x7ffffffffffffffen, -63n, 0x3fffffffffffffff0000000000000000n], 811 [0x7fffffffffffffffn, -63n, 0x3fffffffffffffff8000000000000000n], 812 [0x8000000000000000n, -63n, 0x40000000000000000000000000000000n], 813 [0x8000000000000001n, -63n, 0x40000000000000008000000000000000n], 814 [0xfffffffffffffffen, -63n, 0x7fffffffffffffff0000000000000000n], 815 [0xffffffffffffffffn, -63n, 0x7fffffffffffffff8000000000000000n], 816 [0x10000000000000000n, -63n, 0x80000000000000000000000000000000n], 817 [0x10000000000000001n, -63n, 0x80000000000000008000000000000000n], 818 [-0x10000000000000001n, -64n, -0x100000000000000010000000000000000n], 819 [-0x10000000000000000n, -64n, -0x100000000000000000000000000000000n], 820 [-0xffffffffffffffffn, -64n, -0xffffffffffffffff0000000000000000n], 821 [-0xfffffffffffffffen, -64n, -0xfffffffffffffffe0000000000000000n], 822 [-0x8000000000000001n, -64n, -0x80000000000000010000000000000000n], 823 [-0x8000000000000000n, -64n, -0x80000000000000000000000000000000n], 824 [-0x7fffffffffffffffn, -64n, -0x7fffffffffffffff0000000000000000n], 825 [-0x7ffffffffffffffen, -64n, -0x7ffffffffffffffe0000000000000000n], 826 [-0x100000001n, -64n, -0x1000000010000000000000000n], 827 [-0x100000000n, -64n, -0x1000000000000000000000000n], 828 [-0xffffffffn, -64n, -0xffffffff0000000000000000n], 829 [-0xfffffffen, -64n, -0xfffffffe0000000000000000n], 830 [-0x80000001n, -64n, -0x800000010000000000000000n], 831 [-0x80000000n, -64n, -0x800000000000000000000000n], 832 [-0x7fffffffn, -64n, -0x7fffffff0000000000000000n], 833 [-0x7ffffffen, -64n, -0x7ffffffe0000000000000000n], 834 [-9n, -64n, -0x90000000000000000n], 835 [-8n, -64n, -0x80000000000000000n], 836 [-7n, -64n, -0x70000000000000000n], 837 [-6n, -64n, -0x60000000000000000n], 838 [-5n, -64n, -0x50000000000000000n], 839 [-4n, -64n, -0x40000000000000000n], 840 [-3n, -64n, -0x30000000000000000n], 841 [-2n, -64n, -0x20000000000000000n], 842 [-1n, -64n, -0x10000000000000000n], 843 [0n, -64n, 0n], 844 [1n, -64n, 0x10000000000000000n], 845 [2n, -64n, 0x20000000000000000n], 846 [3n, -64n, 0x30000000000000000n], 847 [4n, -64n, 0x40000000000000000n], 848 [5n, -64n, 0x50000000000000000n], 849 [6n, -64n, 0x60000000000000000n], 850 [7n, -64n, 0x70000000000000000n], 851 [8n, -64n, 0x80000000000000000n], 852 [9n, -64n, 0x90000000000000000n], 853 [0x7ffffffen, -64n, 0x7ffffffe0000000000000000n], 854 [0x7fffffffn, -64n, 0x7fffffff0000000000000000n], 855 [0x80000000n, -64n, 0x800000000000000000000000n], 856 [0x80000001n, -64n, 0x800000010000000000000000n], 857 [0xfffffffen, -64n, 0xfffffffe0000000000000000n], 858 [0xffffffffn, -64n, 0xffffffff0000000000000000n], 859 [0x100000000n, -64n, 0x1000000000000000000000000n], 860 [0x100000001n, -64n, 0x1000000010000000000000000n], 861 [0x7ffffffffffffffen, -64n, 0x7ffffffffffffffe0000000000000000n], 862 [0x7fffffffffffffffn, -64n, 0x7fffffffffffffff0000000000000000n], 863 [0x8000000000000000n, -64n, 0x80000000000000000000000000000000n], 864 [0x8000000000000001n, -64n, 0x80000000000000010000000000000000n], 865 [0xfffffffffffffffen, -64n, 0xfffffffffffffffe0000000000000000n], 866 [0xffffffffffffffffn, -64n, 0xffffffffffffffff0000000000000000n], 867 [0x10000000000000000n, -64n, 0x100000000000000000000000000000000n], 868 [0x10000000000000001n, -64n, 0x100000000000000010000000000000000n], 869 ]; 870 871 // Cases not covered above. 872 tests.push( 873 // Positive shift with sign-bit set when interpreted as pointer-sized value (32-bit). 874 [-1n, 0xf000_0000n, -1n], 875 [0n, 0xf000_0000n, 0n], 876 [1n, 0xf000_0000n, 0n], 877 878 // Positive shift with sign-bit set when interpreted as pointer-sized value (64-bit). 879 [-1n, 0xf000_0000_0000_0000n, -1n], 880 [0n, 0xf000_0000_0000_0000n, 0n], 881 [1n, 0xf000_0000_0000_0000n, 0n], 882 ); 883 884 function f(tests) { 885 for (let test of tests) { 886 let lhs = test[0], rhs = test[1], expected = test[2]; 887 888 assertEq(lhs >> rhs, expected); 889 } 890 } 891 892 for (let i = 0; i < 10; ++i) { 893 f(tests); 894 }