tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

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 }