master
   1const neg = @import("negXi2.zig");
   2const testing = @import("std").testing;
   3
   4fn test__negti2(a: i128, expected: i128) !void {
   5    const result = neg.__negti2(a);
   6    try testing.expectEqual(expected, result);
   7}
   8
   9test "negti2" {
  10    // TODO ensuring that math.minInt(i128); returns error
  11
  12    try test__negti2(-3, 3);
  13    try test__negti2(-2, 2);
  14    try test__negti2(-1, 1);
  15    try test__negti2(0, 0); // special case for 2s complement
  16    try test__negti2(1, -1);
  17    try test__negti2(2, -2);
  18    try test__negti2(3, -3);
  19
  20    // max_usable == MAX(i32) == -MIN(i32)
  21    // == 170141183460469231731687303715884105727
  22    // == 7fffffffffffffffffffffffffffffff
  23    // divTrunc: max_usable / i, i=1,2,3,5,100
  24    // 7fffffffffffffffffffffffffffffff / i
  25    try test__negti2(-56713727820156410577229101238628035242, 56713727820156410577229101238628035242);
  26    try test__negti2(56713727820156410577229101238628035242, -56713727820156410577229101238628035242);
  27    try test__negti2(-34028236692093846346337460743176821145, 34028236692093846346337460743176821145);
  28    try test__negti2(34028236692093846346337460743176821145, -34028236692093846346337460743176821145);
  29    try test__negti2(-17014118346046923173168730371588410572, 17014118346046923173168730371588410572);
  30    try test__negti2(17014118346046923173168730371588410572, -17014118346046923173168730371588410572);
  31    // shifting: max_usable >> i, i=0..bitsize-4
  32    // 7fffffffffffffffffffffffffffffff >> i
  33    // 7fffffffffffffffffffffffffffffff >> i + 1
  34    // 7fffffffffffffffffffffffffffffff >> i + 3
  35    // 7fffffffffffffffffffffffffffffff >> i + 7
  36    try test__negti2(-170141183460469231731687303715884105727, 170141183460469231731687303715884105727);
  37    try test__negti2(170141183460469231731687303715884105727, -170141183460469231731687303715884105727);
  38    try test__negti2(-170141183460469231731687303715884105726, 170141183460469231731687303715884105726);
  39    try test__negti2(170141183460469231731687303715884105726, -170141183460469231731687303715884105726);
  40    try test__negti2(-170141183460469231731687303715884105724, 170141183460469231731687303715884105724);
  41    try test__negti2(170141183460469231731687303715884105724, -170141183460469231731687303715884105724);
  42    try test__negti2(-170141183460469231731687303715884105720, 170141183460469231731687303715884105720);
  43    try test__negti2(170141183460469231731687303715884105720, -170141183460469231731687303715884105720);
  44    try test__negti2(-85070591730234615865843651857942052863, 85070591730234615865843651857942052863);
  45    try test__negti2(85070591730234615865843651857942052863, -85070591730234615865843651857942052863);
  46    try test__negti2(-85070591730234615865843651857942052862, 85070591730234615865843651857942052862);
  47    try test__negti2(85070591730234615865843651857942052862, -85070591730234615865843651857942052862);
  48    try test__negti2(-85070591730234615865843651857942052860, 85070591730234615865843651857942052860);
  49    try test__negti2(85070591730234615865843651857942052860, -85070591730234615865843651857942052860);
  50    try test__negti2(-85070591730234615865843651857942052856, 85070591730234615865843651857942052856);
  51    try test__negti2(85070591730234615865843651857942052856, -85070591730234615865843651857942052856);
  52    try test__negti2(-42535295865117307932921825928971026431, 42535295865117307932921825928971026431);
  53    try test__negti2(42535295865117307932921825928971026431, -42535295865117307932921825928971026431);
  54    try test__negti2(-42535295865117307932921825928971026430, 42535295865117307932921825928971026430);
  55    try test__negti2(42535295865117307932921825928971026430, -42535295865117307932921825928971026430);
  56    try test__negti2(-42535295865117307932921825928971026428, 42535295865117307932921825928971026428);
  57    try test__negti2(42535295865117307932921825928971026428, -42535295865117307932921825928971026428);
  58    try test__negti2(-42535295865117307932921825928971026424, 42535295865117307932921825928971026424);
  59    try test__negti2(42535295865117307932921825928971026424, -42535295865117307932921825928971026424);
  60    try test__negti2(-21267647932558653966460912964485513215, 21267647932558653966460912964485513215);
  61    try test__negti2(21267647932558653966460912964485513215, -21267647932558653966460912964485513215);
  62    try test__negti2(-21267647932558653966460912964485513214, 21267647932558653966460912964485513214);
  63    try test__negti2(21267647932558653966460912964485513214, -21267647932558653966460912964485513214);
  64    try test__negti2(-21267647932558653966460912964485513212, 21267647932558653966460912964485513212);
  65    try test__negti2(21267647932558653966460912964485513212, -21267647932558653966460912964485513212);
  66    try test__negti2(-21267647932558653966460912964485513208, 21267647932558653966460912964485513208);
  67    try test__negti2(21267647932558653966460912964485513208, -21267647932558653966460912964485513208);
  68    try test__negti2(-10633823966279326983230456482242756607, 10633823966279326983230456482242756607);
  69    try test__negti2(10633823966279326983230456482242756607, -10633823966279326983230456482242756607);
  70    try test__negti2(-10633823966279326983230456482242756606, 10633823966279326983230456482242756606);
  71    try test__negti2(10633823966279326983230456482242756606, -10633823966279326983230456482242756606);
  72    try test__negti2(-10633823966279326983230456482242756604, 10633823966279326983230456482242756604);
  73    try test__negti2(10633823966279326983230456482242756604, -10633823966279326983230456482242756604);
  74    try test__negti2(-10633823966279326983230456482242756600, 10633823966279326983230456482242756600);
  75    try test__negti2(10633823966279326983230456482242756600, -10633823966279326983230456482242756600);
  76    try test__negti2(-5316911983139663491615228241121378303, 5316911983139663491615228241121378303);
  77    try test__negti2(5316911983139663491615228241121378303, -5316911983139663491615228241121378303);
  78    try test__negti2(-5316911983139663491615228241121378302, 5316911983139663491615228241121378302);
  79    try test__negti2(5316911983139663491615228241121378302, -5316911983139663491615228241121378302);
  80    try test__negti2(-5316911983139663491615228241121378300, 5316911983139663491615228241121378300);
  81    try test__negti2(5316911983139663491615228241121378300, -5316911983139663491615228241121378300);
  82    try test__negti2(-5316911983139663491615228241121378296, 5316911983139663491615228241121378296);
  83    try test__negti2(5316911983139663491615228241121378296, -5316911983139663491615228241121378296);
  84    try test__negti2(-2658455991569831745807614120560689151, 2658455991569831745807614120560689151);
  85    try test__negti2(2658455991569831745807614120560689151, -2658455991569831745807614120560689151);
  86    try test__negti2(-2658455991569831745807614120560689150, 2658455991569831745807614120560689150);
  87    try test__negti2(2658455991569831745807614120560689150, -2658455991569831745807614120560689150);
  88    try test__negti2(-2658455991569831745807614120560689148, 2658455991569831745807614120560689148);
  89    try test__negti2(2658455991569831745807614120560689148, -2658455991569831745807614120560689148);
  90    try test__negti2(-2658455991569831745807614120560689144, 2658455991569831745807614120560689144);
  91    try test__negti2(2658455991569831745807614120560689144, -2658455991569831745807614120560689144);
  92    try test__negti2(-1329227995784915872903807060280344575, 1329227995784915872903807060280344575);
  93    try test__negti2(1329227995784915872903807060280344575, -1329227995784915872903807060280344575);
  94    try test__negti2(-1329227995784915872903807060280344574, 1329227995784915872903807060280344574);
  95    try test__negti2(1329227995784915872903807060280344574, -1329227995784915872903807060280344574);
  96    try test__negti2(-1329227995784915872903807060280344572, 1329227995784915872903807060280344572);
  97    try test__negti2(1329227995784915872903807060280344572, -1329227995784915872903807060280344572);
  98    try test__negti2(-1329227995784915872903807060280344568, 1329227995784915872903807060280344568);
  99    try test__negti2(1329227995784915872903807060280344568, -1329227995784915872903807060280344568);
 100    try test__negti2(-664613997892457936451903530140172287, 664613997892457936451903530140172287);
 101    try test__negti2(664613997892457936451903530140172287, -664613997892457936451903530140172287);
 102    try test__negti2(-664613997892457936451903530140172286, 664613997892457936451903530140172286);
 103    try test__negti2(664613997892457936451903530140172286, -664613997892457936451903530140172286);
 104    try test__negti2(-664613997892457936451903530140172284, 664613997892457936451903530140172284);
 105    try test__negti2(664613997892457936451903530140172284, -664613997892457936451903530140172284);
 106    try test__negti2(-664613997892457936451903530140172280, 664613997892457936451903530140172280);
 107    try test__negti2(664613997892457936451903530140172280, -664613997892457936451903530140172280);
 108    try test__negti2(-332306998946228968225951765070086143, 332306998946228968225951765070086143);
 109    try test__negti2(332306998946228968225951765070086143, -332306998946228968225951765070086143);
 110    try test__negti2(-332306998946228968225951765070086142, 332306998946228968225951765070086142);
 111    try test__negti2(332306998946228968225951765070086142, -332306998946228968225951765070086142);
 112    try test__negti2(-332306998946228968225951765070086140, 332306998946228968225951765070086140);
 113    try test__negti2(332306998946228968225951765070086140, -332306998946228968225951765070086140);
 114    try test__negti2(-332306998946228968225951765070086136, 332306998946228968225951765070086136);
 115    try test__negti2(332306998946228968225951765070086136, -332306998946228968225951765070086136);
 116    try test__negti2(-166153499473114484112975882535043071, 166153499473114484112975882535043071);
 117    try test__negti2(166153499473114484112975882535043071, -166153499473114484112975882535043071);
 118    try test__negti2(-166153499473114484112975882535043070, 166153499473114484112975882535043070);
 119    try test__negti2(166153499473114484112975882535043070, -166153499473114484112975882535043070);
 120    try test__negti2(-166153499473114484112975882535043068, 166153499473114484112975882535043068);
 121    try test__negti2(166153499473114484112975882535043068, -166153499473114484112975882535043068);
 122    try test__negti2(-166153499473114484112975882535043064, 166153499473114484112975882535043064);
 123    try test__negti2(166153499473114484112975882535043064, -166153499473114484112975882535043064);
 124    try test__negti2(-83076749736557242056487941267521535, 83076749736557242056487941267521535);
 125    try test__negti2(83076749736557242056487941267521535, -83076749736557242056487941267521535);
 126    try test__negti2(-83076749736557242056487941267521534, 83076749736557242056487941267521534);
 127    try test__negti2(83076749736557242056487941267521534, -83076749736557242056487941267521534);
 128    try test__negti2(-83076749736557242056487941267521532, 83076749736557242056487941267521532);
 129    try test__negti2(83076749736557242056487941267521532, -83076749736557242056487941267521532);
 130    try test__negti2(-83076749736557242056487941267521528, 83076749736557242056487941267521528);
 131    try test__negti2(83076749736557242056487941267521528, -83076749736557242056487941267521528);
 132    try test__negti2(-41538374868278621028243970633760767, 41538374868278621028243970633760767);
 133    try test__negti2(41538374868278621028243970633760767, -41538374868278621028243970633760767);
 134    try test__negti2(-41538374868278621028243970633760766, 41538374868278621028243970633760766);
 135    try test__negti2(41538374868278621028243970633760766, -41538374868278621028243970633760766);
 136    try test__negti2(-41538374868278621028243970633760764, 41538374868278621028243970633760764);
 137    try test__negti2(41538374868278621028243970633760764, -41538374868278621028243970633760764);
 138    try test__negti2(-41538374868278621028243970633760760, 41538374868278621028243970633760760);
 139    try test__negti2(41538374868278621028243970633760760, -41538374868278621028243970633760760);
 140    try test__negti2(-20769187434139310514121985316880383, 20769187434139310514121985316880383);
 141    try test__negti2(20769187434139310514121985316880383, -20769187434139310514121985316880383);
 142    try test__negti2(-20769187434139310514121985316880382, 20769187434139310514121985316880382);
 143    try test__negti2(20769187434139310514121985316880382, -20769187434139310514121985316880382);
 144    try test__negti2(-20769187434139310514121985316880380, 20769187434139310514121985316880380);
 145    try test__negti2(20769187434139310514121985316880380, -20769187434139310514121985316880380);
 146    try test__negti2(-20769187434139310514121985316880376, 20769187434139310514121985316880376);
 147    try test__negti2(20769187434139310514121985316880376, -20769187434139310514121985316880376);
 148    try test__negti2(-10384593717069655257060992658440191, 10384593717069655257060992658440191);
 149    try test__negti2(10384593717069655257060992658440191, -10384593717069655257060992658440191);
 150    try test__negti2(-10384593717069655257060992658440190, 10384593717069655257060992658440190);
 151    try test__negti2(10384593717069655257060992658440190, -10384593717069655257060992658440190);
 152    try test__negti2(-10384593717069655257060992658440188, 10384593717069655257060992658440188);
 153    try test__negti2(10384593717069655257060992658440188, -10384593717069655257060992658440188);
 154    try test__negti2(-10384593717069655257060992658440184, 10384593717069655257060992658440184);
 155    try test__negti2(10384593717069655257060992658440184, -10384593717069655257060992658440184);
 156    try test__negti2(-5192296858534827628530496329220095, 5192296858534827628530496329220095);
 157    try test__negti2(5192296858534827628530496329220095, -5192296858534827628530496329220095);
 158    try test__negti2(-5192296858534827628530496329220094, 5192296858534827628530496329220094);
 159    try test__negti2(5192296858534827628530496329220094, -5192296858534827628530496329220094);
 160    try test__negti2(-5192296858534827628530496329220092, 5192296858534827628530496329220092);
 161    try test__negti2(5192296858534827628530496329220092, -5192296858534827628530496329220092);
 162    try test__negti2(-5192296858534827628530496329220088, 5192296858534827628530496329220088);
 163    try test__negti2(5192296858534827628530496329220088, -5192296858534827628530496329220088);
 164    try test__negti2(-2596148429267413814265248164610047, 2596148429267413814265248164610047);
 165    try test__negti2(2596148429267413814265248164610047, -2596148429267413814265248164610047);
 166    try test__negti2(-2596148429267413814265248164610046, 2596148429267413814265248164610046);
 167    try test__negti2(2596148429267413814265248164610046, -2596148429267413814265248164610046);
 168    try test__negti2(-2596148429267413814265248164610044, 2596148429267413814265248164610044);
 169    try test__negti2(2596148429267413814265248164610044, -2596148429267413814265248164610044);
 170    try test__negti2(-2596148429267413814265248164610040, 2596148429267413814265248164610040);
 171    try test__negti2(2596148429267413814265248164610040, -2596148429267413814265248164610040);
 172    try test__negti2(-1298074214633706907132624082305023, 1298074214633706907132624082305023);
 173    try test__negti2(1298074214633706907132624082305023, -1298074214633706907132624082305023);
 174    try test__negti2(-1298074214633706907132624082305022, 1298074214633706907132624082305022);
 175    try test__negti2(1298074214633706907132624082305022, -1298074214633706907132624082305022);
 176    try test__negti2(-1298074214633706907132624082305020, 1298074214633706907132624082305020);
 177    try test__negti2(1298074214633706907132624082305020, -1298074214633706907132624082305020);
 178    try test__negti2(-1298074214633706907132624082305016, 1298074214633706907132624082305016);
 179    try test__negti2(1298074214633706907132624082305016, -1298074214633706907132624082305016);
 180    try test__negti2(-649037107316853453566312041152511, 649037107316853453566312041152511);
 181    try test__negti2(649037107316853453566312041152511, -649037107316853453566312041152511);
 182    try test__negti2(-649037107316853453566312041152510, 649037107316853453566312041152510);
 183    try test__negti2(649037107316853453566312041152510, -649037107316853453566312041152510);
 184    try test__negti2(-649037107316853453566312041152508, 649037107316853453566312041152508);
 185    try test__negti2(649037107316853453566312041152508, -649037107316853453566312041152508);
 186    try test__negti2(-649037107316853453566312041152504, 649037107316853453566312041152504);
 187    try test__negti2(649037107316853453566312041152504, -649037107316853453566312041152504);
 188    try test__negti2(-324518553658426726783156020576255, 324518553658426726783156020576255);
 189    try test__negti2(324518553658426726783156020576255, -324518553658426726783156020576255);
 190    try test__negti2(-324518553658426726783156020576254, 324518553658426726783156020576254);
 191    try test__negti2(324518553658426726783156020576254, -324518553658426726783156020576254);
 192    try test__negti2(-324518553658426726783156020576252, 324518553658426726783156020576252);
 193    try test__negti2(324518553658426726783156020576252, -324518553658426726783156020576252);
 194    try test__negti2(-324518553658426726783156020576248, 324518553658426726783156020576248);
 195    try test__negti2(324518553658426726783156020576248, -324518553658426726783156020576248);
 196    try test__negti2(-162259276829213363391578010288127, 162259276829213363391578010288127);
 197    try test__negti2(162259276829213363391578010288127, -162259276829213363391578010288127);
 198    try test__negti2(-162259276829213363391578010288126, 162259276829213363391578010288126);
 199    try test__negti2(162259276829213363391578010288126, -162259276829213363391578010288126);
 200    try test__negti2(-162259276829213363391578010288124, 162259276829213363391578010288124);
 201    try test__negti2(162259276829213363391578010288124, -162259276829213363391578010288124);
 202    try test__negti2(-162259276829213363391578010288120, 162259276829213363391578010288120);
 203    try test__negti2(162259276829213363391578010288120, -162259276829213363391578010288120);
 204    try test__negti2(-81129638414606681695789005144063, 81129638414606681695789005144063);
 205    try test__negti2(81129638414606681695789005144063, -81129638414606681695789005144063);
 206    try test__negti2(-81129638414606681695789005144062, 81129638414606681695789005144062);
 207    try test__negti2(81129638414606681695789005144062, -81129638414606681695789005144062);
 208    try test__negti2(-81129638414606681695789005144060, 81129638414606681695789005144060);
 209    try test__negti2(81129638414606681695789005144060, -81129638414606681695789005144060);
 210    try test__negti2(-81129638414606681695789005144056, 81129638414606681695789005144056);
 211    try test__negti2(81129638414606681695789005144056, -81129638414606681695789005144056);
 212    try test__negti2(-40564819207303340847894502572031, 40564819207303340847894502572031);
 213    try test__negti2(40564819207303340847894502572031, -40564819207303340847894502572031);
 214    try test__negti2(-40564819207303340847894502572030, 40564819207303340847894502572030);
 215    try test__negti2(40564819207303340847894502572030, -40564819207303340847894502572030);
 216    try test__negti2(-40564819207303340847894502572028, 40564819207303340847894502572028);
 217    try test__negti2(40564819207303340847894502572028, -40564819207303340847894502572028);
 218    try test__negti2(-40564819207303340847894502572024, 40564819207303340847894502572024);
 219    try test__negti2(40564819207303340847894502572024, -40564819207303340847894502572024);
 220    try test__negti2(-20282409603651670423947251286015, 20282409603651670423947251286015);
 221    try test__negti2(20282409603651670423947251286015, -20282409603651670423947251286015);
 222    try test__negti2(-20282409603651670423947251286014, 20282409603651670423947251286014);
 223    try test__negti2(20282409603651670423947251286014, -20282409603651670423947251286014);
 224    try test__negti2(-20282409603651670423947251286012, 20282409603651670423947251286012);
 225    try test__negti2(20282409603651670423947251286012, -20282409603651670423947251286012);
 226    try test__negti2(-20282409603651670423947251286008, 20282409603651670423947251286008);
 227    try test__negti2(20282409603651670423947251286008, -20282409603651670423947251286008);
 228    try test__negti2(-10141204801825835211973625643007, 10141204801825835211973625643007);
 229    try test__negti2(10141204801825835211973625643007, -10141204801825835211973625643007);
 230    try test__negti2(-10141204801825835211973625643006, 10141204801825835211973625643006);
 231    try test__negti2(10141204801825835211973625643006, -10141204801825835211973625643006);
 232    try test__negti2(-10141204801825835211973625643004, 10141204801825835211973625643004);
 233    try test__negti2(10141204801825835211973625643004, -10141204801825835211973625643004);
 234    try test__negti2(-10141204801825835211973625643000, 10141204801825835211973625643000);
 235    try test__negti2(10141204801825835211973625643000, -10141204801825835211973625643000);
 236    try test__negti2(-5070602400912917605986812821503, 5070602400912917605986812821503);
 237    try test__negti2(5070602400912917605986812821503, -5070602400912917605986812821503);
 238    try test__negti2(-5070602400912917605986812821502, 5070602400912917605986812821502);
 239    try test__negti2(5070602400912917605986812821502, -5070602400912917605986812821502);
 240    try test__negti2(-5070602400912917605986812821500, 5070602400912917605986812821500);
 241    try test__negti2(5070602400912917605986812821500, -5070602400912917605986812821500);
 242    try test__negti2(-5070602400912917605986812821496, 5070602400912917605986812821496);
 243    try test__negti2(5070602400912917605986812821496, -5070602400912917605986812821496);
 244    try test__negti2(-2535301200456458802993406410751, 2535301200456458802993406410751);
 245    try test__negti2(2535301200456458802993406410751, -2535301200456458802993406410751);
 246    try test__negti2(-2535301200456458802993406410750, 2535301200456458802993406410750);
 247    try test__negti2(2535301200456458802993406410750, -2535301200456458802993406410750);
 248    try test__negti2(-2535301200456458802993406410748, 2535301200456458802993406410748);
 249    try test__negti2(2535301200456458802993406410748, -2535301200456458802993406410748);
 250    try test__negti2(-2535301200456458802993406410744, 2535301200456458802993406410744);
 251    try test__negti2(2535301200456458802993406410744, -2535301200456458802993406410744);
 252    try test__negti2(-1267650600228229401496703205375, 1267650600228229401496703205375);
 253    try test__negti2(1267650600228229401496703205375, -1267650600228229401496703205375);
 254    try test__negti2(-1267650600228229401496703205374, 1267650600228229401496703205374);
 255    try test__negti2(1267650600228229401496703205374, -1267650600228229401496703205374);
 256    try test__negti2(-1267650600228229401496703205372, 1267650600228229401496703205372);
 257    try test__negti2(1267650600228229401496703205372, -1267650600228229401496703205372);
 258    try test__negti2(-1267650600228229401496703205368, 1267650600228229401496703205368);
 259    try test__negti2(1267650600228229401496703205368, -1267650600228229401496703205368);
 260    try test__negti2(-633825300114114700748351602687, 633825300114114700748351602687);
 261    try test__negti2(633825300114114700748351602687, -633825300114114700748351602687);
 262    try test__negti2(-633825300114114700748351602686, 633825300114114700748351602686);
 263    try test__negti2(633825300114114700748351602686, -633825300114114700748351602686);
 264    try test__negti2(-633825300114114700748351602684, 633825300114114700748351602684);
 265    try test__negti2(633825300114114700748351602684, -633825300114114700748351602684);
 266    try test__negti2(-633825300114114700748351602680, 633825300114114700748351602680);
 267    try test__negti2(633825300114114700748351602680, -633825300114114700748351602680);
 268    try test__negti2(-316912650057057350374175801343, 316912650057057350374175801343);
 269    try test__negti2(316912650057057350374175801343, -316912650057057350374175801343);
 270    try test__negti2(-316912650057057350374175801342, 316912650057057350374175801342);
 271    try test__negti2(316912650057057350374175801342, -316912650057057350374175801342);
 272    try test__negti2(-316912650057057350374175801340, 316912650057057350374175801340);
 273    try test__negti2(316912650057057350374175801340, -316912650057057350374175801340);
 274    try test__negti2(-316912650057057350374175801336, 316912650057057350374175801336);
 275    try test__negti2(316912650057057350374175801336, -316912650057057350374175801336);
 276    try test__negti2(-158456325028528675187087900671, 158456325028528675187087900671);
 277    try test__negti2(158456325028528675187087900671, -158456325028528675187087900671);
 278    try test__negti2(-158456325028528675187087900670, 158456325028528675187087900670);
 279    try test__negti2(158456325028528675187087900670, -158456325028528675187087900670);
 280    try test__negti2(-158456325028528675187087900668, 158456325028528675187087900668);
 281    try test__negti2(158456325028528675187087900668, -158456325028528675187087900668);
 282    try test__negti2(-158456325028528675187087900664, 158456325028528675187087900664);
 283    try test__negti2(158456325028528675187087900664, -158456325028528675187087900664);
 284    try test__negti2(-79228162514264337593543950335, 79228162514264337593543950335);
 285    try test__negti2(79228162514264337593543950335, -79228162514264337593543950335);
 286    try test__negti2(-79228162514264337593543950334, 79228162514264337593543950334);
 287    try test__negti2(79228162514264337593543950334, -79228162514264337593543950334);
 288    try test__negti2(-79228162514264337593543950332, 79228162514264337593543950332);
 289    try test__negti2(79228162514264337593543950332, -79228162514264337593543950332);
 290    try test__negti2(-79228162514264337593543950328, 79228162514264337593543950328);
 291    try test__negti2(79228162514264337593543950328, -79228162514264337593543950328);
 292    try test__negti2(-39614081257132168796771975167, 39614081257132168796771975167);
 293    try test__negti2(39614081257132168796771975167, -39614081257132168796771975167);
 294    try test__negti2(-39614081257132168796771975166, 39614081257132168796771975166);
 295    try test__negti2(39614081257132168796771975166, -39614081257132168796771975166);
 296    try test__negti2(-39614081257132168796771975164, 39614081257132168796771975164);
 297    try test__negti2(39614081257132168796771975164, -39614081257132168796771975164);
 298    try test__negti2(-39614081257132168796771975160, 39614081257132168796771975160);
 299    try test__negti2(39614081257132168796771975160, -39614081257132168796771975160);
 300    try test__negti2(-19807040628566084398385987583, 19807040628566084398385987583);
 301    try test__negti2(19807040628566084398385987583, -19807040628566084398385987583);
 302    try test__negti2(-19807040628566084398385987582, 19807040628566084398385987582);
 303    try test__negti2(19807040628566084398385987582, -19807040628566084398385987582);
 304    try test__negti2(-19807040628566084398385987580, 19807040628566084398385987580);
 305    try test__negti2(19807040628566084398385987580, -19807040628566084398385987580);
 306    try test__negti2(-19807040628566084398385987576, 19807040628566084398385987576);
 307    try test__negti2(19807040628566084398385987576, -19807040628566084398385987576);
 308    try test__negti2(-9903520314283042199192993791, 9903520314283042199192993791);
 309    try test__negti2(9903520314283042199192993791, -9903520314283042199192993791);
 310    try test__negti2(-9903520314283042199192993790, 9903520314283042199192993790);
 311    try test__negti2(9903520314283042199192993790, -9903520314283042199192993790);
 312    try test__negti2(-9903520314283042199192993788, 9903520314283042199192993788);
 313    try test__negti2(9903520314283042199192993788, -9903520314283042199192993788);
 314    try test__negti2(-9903520314283042199192993784, 9903520314283042199192993784);
 315    try test__negti2(9903520314283042199192993784, -9903520314283042199192993784);
 316    try test__negti2(-4951760157141521099596496895, 4951760157141521099596496895);
 317    try test__negti2(4951760157141521099596496895, -4951760157141521099596496895);
 318    try test__negti2(-4951760157141521099596496894, 4951760157141521099596496894);
 319    try test__negti2(4951760157141521099596496894, -4951760157141521099596496894);
 320    try test__negti2(-4951760157141521099596496892, 4951760157141521099596496892);
 321    try test__negti2(4951760157141521099596496892, -4951760157141521099596496892);
 322    try test__negti2(-4951760157141521099596496888, 4951760157141521099596496888);
 323    try test__negti2(4951760157141521099596496888, -4951760157141521099596496888);
 324    try test__negti2(-2475880078570760549798248447, 2475880078570760549798248447);
 325    try test__negti2(2475880078570760549798248447, -2475880078570760549798248447);
 326    try test__negti2(-2475880078570760549798248446, 2475880078570760549798248446);
 327    try test__negti2(2475880078570760549798248446, -2475880078570760549798248446);
 328    try test__negti2(-2475880078570760549798248444, 2475880078570760549798248444);
 329    try test__negti2(2475880078570760549798248444, -2475880078570760549798248444);
 330    try test__negti2(-2475880078570760549798248440, 2475880078570760549798248440);
 331    try test__negti2(2475880078570760549798248440, -2475880078570760549798248440);
 332    try test__negti2(-1237940039285380274899124223, 1237940039285380274899124223);
 333    try test__negti2(1237940039285380274899124223, -1237940039285380274899124223);
 334    try test__negti2(-1237940039285380274899124222, 1237940039285380274899124222);
 335    try test__negti2(1237940039285380274899124222, -1237940039285380274899124222);
 336    try test__negti2(-1237940039285380274899124220, 1237940039285380274899124220);
 337    try test__negti2(1237940039285380274899124220, -1237940039285380274899124220);
 338    try test__negti2(-1237940039285380274899124216, 1237940039285380274899124216);
 339    try test__negti2(1237940039285380274899124216, -1237940039285380274899124216);
 340    try test__negti2(-618970019642690137449562111, 618970019642690137449562111);
 341    try test__negti2(618970019642690137449562111, -618970019642690137449562111);
 342    try test__negti2(-618970019642690137449562110, 618970019642690137449562110);
 343    try test__negti2(618970019642690137449562110, -618970019642690137449562110);
 344    try test__negti2(-618970019642690137449562108, 618970019642690137449562108);
 345    try test__negti2(618970019642690137449562108, -618970019642690137449562108);
 346    try test__negti2(-618970019642690137449562104, 618970019642690137449562104);
 347    try test__negti2(618970019642690137449562104, -618970019642690137449562104);
 348    try test__negti2(-309485009821345068724781055, 309485009821345068724781055);
 349    try test__negti2(309485009821345068724781055, -309485009821345068724781055);
 350    try test__negti2(-309485009821345068724781054, 309485009821345068724781054);
 351    try test__negti2(309485009821345068724781054, -309485009821345068724781054);
 352    try test__negti2(-309485009821345068724781052, 309485009821345068724781052);
 353    try test__negti2(309485009821345068724781052, -309485009821345068724781052);
 354    try test__negti2(-309485009821345068724781048, 309485009821345068724781048);
 355    try test__negti2(309485009821345068724781048, -309485009821345068724781048);
 356    try test__negti2(-154742504910672534362390527, 154742504910672534362390527);
 357    try test__negti2(154742504910672534362390527, -154742504910672534362390527);
 358    try test__negti2(-154742504910672534362390526, 154742504910672534362390526);
 359    try test__negti2(154742504910672534362390526, -154742504910672534362390526);
 360    try test__negti2(-154742504910672534362390524, 154742504910672534362390524);
 361    try test__negti2(154742504910672534362390524, -154742504910672534362390524);
 362    try test__negti2(-154742504910672534362390520, 154742504910672534362390520);
 363    try test__negti2(154742504910672534362390520, -154742504910672534362390520);
 364    try test__negti2(-77371252455336267181195263, 77371252455336267181195263);
 365    try test__negti2(77371252455336267181195263, -77371252455336267181195263);
 366    try test__negti2(-77371252455336267181195262, 77371252455336267181195262);
 367    try test__negti2(77371252455336267181195262, -77371252455336267181195262);
 368    try test__negti2(-77371252455336267181195260, 77371252455336267181195260);
 369    try test__negti2(77371252455336267181195260, -77371252455336267181195260);
 370    try test__negti2(-77371252455336267181195256, 77371252455336267181195256);
 371    try test__negti2(77371252455336267181195256, -77371252455336267181195256);
 372    try test__negti2(-38685626227668133590597631, 38685626227668133590597631);
 373    try test__negti2(38685626227668133590597631, -38685626227668133590597631);
 374    try test__negti2(-38685626227668133590597630, 38685626227668133590597630);
 375    try test__negti2(38685626227668133590597630, -38685626227668133590597630);
 376    try test__negti2(-38685626227668133590597628, 38685626227668133590597628);
 377    try test__negti2(38685626227668133590597628, -38685626227668133590597628);
 378    try test__negti2(-38685626227668133590597624, 38685626227668133590597624);
 379    try test__negti2(38685626227668133590597624, -38685626227668133590597624);
 380    try test__negti2(-19342813113834066795298815, 19342813113834066795298815);
 381    try test__negti2(19342813113834066795298815, -19342813113834066795298815);
 382    try test__negti2(-19342813113834066795298814, 19342813113834066795298814);
 383    try test__negti2(19342813113834066795298814, -19342813113834066795298814);
 384    try test__negti2(-19342813113834066795298812, 19342813113834066795298812);
 385    try test__negti2(19342813113834066795298812, -19342813113834066795298812);
 386    try test__negti2(-19342813113834066795298808, 19342813113834066795298808);
 387    try test__negti2(19342813113834066795298808, -19342813113834066795298808);
 388    try test__negti2(-9671406556917033397649407, 9671406556917033397649407);
 389    try test__negti2(9671406556917033397649407, -9671406556917033397649407);
 390    try test__negti2(-9671406556917033397649406, 9671406556917033397649406);
 391    try test__negti2(9671406556917033397649406, -9671406556917033397649406);
 392    try test__negti2(-9671406556917033397649404, 9671406556917033397649404);
 393    try test__negti2(9671406556917033397649404, -9671406556917033397649404);
 394    try test__negti2(-9671406556917033397649400, 9671406556917033397649400);
 395    try test__negti2(9671406556917033397649400, -9671406556917033397649400);
 396    try test__negti2(-4835703278458516698824703, 4835703278458516698824703);
 397    try test__negti2(4835703278458516698824703, -4835703278458516698824703);
 398    try test__negti2(-4835703278458516698824702, 4835703278458516698824702);
 399    try test__negti2(4835703278458516698824702, -4835703278458516698824702);
 400    try test__negti2(-4835703278458516698824700, 4835703278458516698824700);
 401    try test__negti2(4835703278458516698824700, -4835703278458516698824700);
 402    try test__negti2(-4835703278458516698824696, 4835703278458516698824696);
 403    try test__negti2(4835703278458516698824696, -4835703278458516698824696);
 404    try test__negti2(-2417851639229258349412351, 2417851639229258349412351);
 405    try test__negti2(2417851639229258349412351, -2417851639229258349412351);
 406    try test__negti2(-2417851639229258349412350, 2417851639229258349412350);
 407    try test__negti2(2417851639229258349412350, -2417851639229258349412350);
 408    try test__negti2(-2417851639229258349412348, 2417851639229258349412348);
 409    try test__negti2(2417851639229258349412348, -2417851639229258349412348);
 410    try test__negti2(-2417851639229258349412344, 2417851639229258349412344);
 411    try test__negti2(2417851639229258349412344, -2417851639229258349412344);
 412    try test__negti2(-1208925819614629174706175, 1208925819614629174706175);
 413    try test__negti2(1208925819614629174706175, -1208925819614629174706175);
 414    try test__negti2(-1208925819614629174706174, 1208925819614629174706174);
 415    try test__negti2(1208925819614629174706174, -1208925819614629174706174);
 416    try test__negti2(-1208925819614629174706172, 1208925819614629174706172);
 417    try test__negti2(1208925819614629174706172, -1208925819614629174706172);
 418    try test__negti2(-1208925819614629174706168, 1208925819614629174706168);
 419    try test__negti2(1208925819614629174706168, -1208925819614629174706168);
 420    try test__negti2(-604462909807314587353087, 604462909807314587353087);
 421    try test__negti2(604462909807314587353087, -604462909807314587353087);
 422    try test__negti2(-604462909807314587353086, 604462909807314587353086);
 423    try test__negti2(604462909807314587353086, -604462909807314587353086);
 424    try test__negti2(-604462909807314587353084, 604462909807314587353084);
 425    try test__negti2(604462909807314587353084, -604462909807314587353084);
 426    try test__negti2(-604462909807314587353080, 604462909807314587353080);
 427    try test__negti2(604462909807314587353080, -604462909807314587353080);
 428    try test__negti2(-302231454903657293676543, 302231454903657293676543);
 429    try test__negti2(302231454903657293676543, -302231454903657293676543);
 430    try test__negti2(-302231454903657293676542, 302231454903657293676542);
 431    try test__negti2(302231454903657293676542, -302231454903657293676542);
 432    try test__negti2(-302231454903657293676540, 302231454903657293676540);
 433    try test__negti2(302231454903657293676540, -302231454903657293676540);
 434    try test__negti2(-302231454903657293676536, 302231454903657293676536);
 435    try test__negti2(302231454903657293676536, -302231454903657293676536);
 436    try test__negti2(-151115727451828646838271, 151115727451828646838271);
 437    try test__negti2(151115727451828646838271, -151115727451828646838271);
 438    try test__negti2(-151115727451828646838270, 151115727451828646838270);
 439    try test__negti2(151115727451828646838270, -151115727451828646838270);
 440    try test__negti2(-151115727451828646838268, 151115727451828646838268);
 441    try test__negti2(151115727451828646838268, -151115727451828646838268);
 442    try test__negti2(-151115727451828646838264, 151115727451828646838264);
 443    try test__negti2(151115727451828646838264, -151115727451828646838264);
 444    try test__negti2(-75557863725914323419135, 75557863725914323419135);
 445    try test__negti2(75557863725914323419135, -75557863725914323419135);
 446    try test__negti2(-75557863725914323419134, 75557863725914323419134);
 447    try test__negti2(75557863725914323419134, -75557863725914323419134);
 448    try test__negti2(-75557863725914323419132, 75557863725914323419132);
 449    try test__negti2(75557863725914323419132, -75557863725914323419132);
 450    try test__negti2(-75557863725914323419128, 75557863725914323419128);
 451    try test__negti2(75557863725914323419128, -75557863725914323419128);
 452    try test__negti2(-37778931862957161709567, 37778931862957161709567);
 453    try test__negti2(37778931862957161709567, -37778931862957161709567);
 454    try test__negti2(-37778931862957161709566, 37778931862957161709566);
 455    try test__negti2(37778931862957161709566, -37778931862957161709566);
 456    try test__negti2(-37778931862957161709564, 37778931862957161709564);
 457    try test__negti2(37778931862957161709564, -37778931862957161709564);
 458    try test__negti2(-37778931862957161709560, 37778931862957161709560);
 459    try test__negti2(37778931862957161709560, -37778931862957161709560);
 460    try test__negti2(-18889465931478580854783, 18889465931478580854783);
 461    try test__negti2(18889465931478580854783, -18889465931478580854783);
 462    try test__negti2(-18889465931478580854782, 18889465931478580854782);
 463    try test__negti2(18889465931478580854782, -18889465931478580854782);
 464    try test__negti2(-18889465931478580854780, 18889465931478580854780);
 465    try test__negti2(18889465931478580854780, -18889465931478580854780);
 466    try test__negti2(-18889465931478580854776, 18889465931478580854776);
 467    try test__negti2(18889465931478580854776, -18889465931478580854776);
 468    try test__negti2(-9444732965739290427391, 9444732965739290427391);
 469    try test__negti2(9444732965739290427391, -9444732965739290427391);
 470    try test__negti2(-9444732965739290427390, 9444732965739290427390);
 471    try test__negti2(9444732965739290427390, -9444732965739290427390);
 472    try test__negti2(-9444732965739290427388, 9444732965739290427388);
 473    try test__negti2(9444732965739290427388, -9444732965739290427388);
 474    try test__negti2(-9444732965739290427384, 9444732965739290427384);
 475    try test__negti2(9444732965739290427384, -9444732965739290427384);
 476    try test__negti2(-4722366482869645213695, 4722366482869645213695);
 477    try test__negti2(4722366482869645213695, -4722366482869645213695);
 478    try test__negti2(-4722366482869645213694, 4722366482869645213694);
 479    try test__negti2(4722366482869645213694, -4722366482869645213694);
 480    try test__negti2(-4722366482869645213692, 4722366482869645213692);
 481    try test__negti2(4722366482869645213692, -4722366482869645213692);
 482    try test__negti2(-4722366482869645213688, 4722366482869645213688);
 483    try test__negti2(4722366482869645213688, -4722366482869645213688);
 484    try test__negti2(-2361183241434822606847, 2361183241434822606847);
 485    try test__negti2(2361183241434822606847, -2361183241434822606847);
 486    try test__negti2(-2361183241434822606846, 2361183241434822606846);
 487    try test__negti2(2361183241434822606846, -2361183241434822606846);
 488    try test__negti2(-2361183241434822606844, 2361183241434822606844);
 489    try test__negti2(2361183241434822606844, -2361183241434822606844);
 490    try test__negti2(-2361183241434822606840, 2361183241434822606840);
 491    try test__negti2(2361183241434822606840, -2361183241434822606840);
 492    try test__negti2(-1180591620717411303423, 1180591620717411303423);
 493    try test__negti2(1180591620717411303423, -1180591620717411303423);
 494    try test__negti2(-1180591620717411303422, 1180591620717411303422);
 495    try test__negti2(1180591620717411303422, -1180591620717411303422);
 496    try test__negti2(-1180591620717411303420, 1180591620717411303420);
 497    try test__negti2(1180591620717411303420, -1180591620717411303420);
 498    try test__negti2(-1180591620717411303416, 1180591620717411303416);
 499    try test__negti2(1180591620717411303416, -1180591620717411303416);
 500    try test__negti2(-590295810358705651711, 590295810358705651711);
 501    try test__negti2(590295810358705651711, -590295810358705651711);
 502    try test__negti2(-590295810358705651710, 590295810358705651710);
 503    try test__negti2(590295810358705651710, -590295810358705651710);
 504    try test__negti2(-590295810358705651708, 590295810358705651708);
 505    try test__negti2(590295810358705651708, -590295810358705651708);
 506    try test__negti2(-590295810358705651704, 590295810358705651704);
 507    try test__negti2(590295810358705651704, -590295810358705651704);
 508    try test__negti2(-295147905179352825855, 295147905179352825855);
 509    try test__negti2(295147905179352825855, -295147905179352825855);
 510    try test__negti2(-295147905179352825854, 295147905179352825854);
 511    try test__negti2(295147905179352825854, -295147905179352825854);
 512    try test__negti2(-295147905179352825852, 295147905179352825852);
 513    try test__negti2(295147905179352825852, -295147905179352825852);
 514    try test__negti2(-295147905179352825848, 295147905179352825848);
 515    try test__negti2(295147905179352825848, -295147905179352825848);
 516    try test__negti2(-147573952589676412927, 147573952589676412927);
 517    try test__negti2(147573952589676412927, -147573952589676412927);
 518    try test__negti2(-147573952589676412926, 147573952589676412926);
 519    try test__negti2(147573952589676412926, -147573952589676412926);
 520    try test__negti2(-147573952589676412924, 147573952589676412924);
 521    try test__negti2(147573952589676412924, -147573952589676412924);
 522    try test__negti2(-147573952589676412920, 147573952589676412920);
 523    try test__negti2(147573952589676412920, -147573952589676412920);
 524    try test__negti2(-73786976294838206463, 73786976294838206463);
 525    try test__negti2(73786976294838206463, -73786976294838206463);
 526    try test__negti2(-73786976294838206462, 73786976294838206462);
 527    try test__negti2(73786976294838206462, -73786976294838206462);
 528    try test__negti2(-73786976294838206460, 73786976294838206460);
 529    try test__negti2(73786976294838206460, -73786976294838206460);
 530    try test__negti2(-73786976294838206456, 73786976294838206456);
 531    try test__negti2(73786976294838206456, -73786976294838206456);
 532    try test__negti2(-36893488147419103231, 36893488147419103231);
 533    try test__negti2(36893488147419103231, -36893488147419103231);
 534    try test__negti2(-36893488147419103230, 36893488147419103230);
 535    try test__negti2(36893488147419103230, -36893488147419103230);
 536    try test__negti2(-36893488147419103228, 36893488147419103228);
 537    try test__negti2(36893488147419103228, -36893488147419103228);
 538    try test__negti2(-36893488147419103224, 36893488147419103224);
 539    try test__negti2(36893488147419103224, -36893488147419103224);
 540    try test__negti2(-18446744073709551615, 18446744073709551615);
 541    try test__negti2(18446744073709551615, -18446744073709551615);
 542    try test__negti2(-18446744073709551614, 18446744073709551614);
 543    try test__negti2(18446744073709551614, -18446744073709551614);
 544    try test__negti2(-18446744073709551612, 18446744073709551612);
 545    try test__negti2(18446744073709551612, -18446744073709551612);
 546    try test__negti2(-18446744073709551608, 18446744073709551608);
 547    try test__negti2(18446744073709551608, -18446744073709551608);
 548    try test__negti2(-9223372036854775807, 9223372036854775807);
 549    try test__negti2(9223372036854775807, -9223372036854775807);
 550    try test__negti2(-9223372036854775806, 9223372036854775806);
 551    try test__negti2(9223372036854775806, -9223372036854775806);
 552    try test__negti2(-9223372036854775804, 9223372036854775804);
 553    try test__negti2(9223372036854775804, -9223372036854775804);
 554    try test__negti2(-9223372036854775800, 9223372036854775800);
 555    try test__negti2(9223372036854775800, -9223372036854775800);
 556    try test__negti2(-4611686018427387903, 4611686018427387903);
 557    try test__negti2(4611686018427387903, -4611686018427387903);
 558    try test__negti2(-4611686018427387902, 4611686018427387902);
 559    try test__negti2(4611686018427387902, -4611686018427387902);
 560    try test__negti2(-4611686018427387900, 4611686018427387900);
 561    try test__negti2(4611686018427387900, -4611686018427387900);
 562    try test__negti2(-4611686018427387896, 4611686018427387896);
 563    try test__negti2(4611686018427387896, -4611686018427387896);
 564    try test__negti2(-2305843009213693951, 2305843009213693951);
 565    try test__negti2(2305843009213693951, -2305843009213693951);
 566    try test__negti2(-2305843009213693950, 2305843009213693950);
 567    try test__negti2(2305843009213693950, -2305843009213693950);
 568    try test__negti2(-2305843009213693948, 2305843009213693948);
 569    try test__negti2(2305843009213693948, -2305843009213693948);
 570    try test__negti2(-2305843009213693944, 2305843009213693944);
 571    try test__negti2(2305843009213693944, -2305843009213693944);
 572    try test__negti2(-1152921504606846975, 1152921504606846975);
 573    try test__negti2(1152921504606846975, -1152921504606846975);
 574    try test__negti2(-1152921504606846974, 1152921504606846974);
 575    try test__negti2(1152921504606846974, -1152921504606846974);
 576    try test__negti2(-1152921504606846972, 1152921504606846972);
 577    try test__negti2(1152921504606846972, -1152921504606846972);
 578    try test__negti2(-1152921504606846968, 1152921504606846968);
 579    try test__negti2(1152921504606846968, -1152921504606846968);
 580    try test__negti2(-576460752303423487, 576460752303423487);
 581    try test__negti2(576460752303423487, -576460752303423487);
 582    try test__negti2(-576460752303423486, 576460752303423486);
 583    try test__negti2(576460752303423486, -576460752303423486);
 584    try test__negti2(-576460752303423484, 576460752303423484);
 585    try test__negti2(576460752303423484, -576460752303423484);
 586    try test__negti2(-576460752303423480, 576460752303423480);
 587    try test__negti2(576460752303423480, -576460752303423480);
 588    try test__negti2(-288230376151711743, 288230376151711743);
 589    try test__negti2(288230376151711743, -288230376151711743);
 590    try test__negti2(-288230376151711742, 288230376151711742);
 591    try test__negti2(288230376151711742, -288230376151711742);
 592    try test__negti2(-288230376151711740, 288230376151711740);
 593    try test__negti2(288230376151711740, -288230376151711740);
 594    try test__negti2(-288230376151711736, 288230376151711736);
 595    try test__negti2(288230376151711736, -288230376151711736);
 596    try test__negti2(-144115188075855871, 144115188075855871);
 597    try test__negti2(144115188075855871, -144115188075855871);
 598    try test__negti2(-144115188075855870, 144115188075855870);
 599    try test__negti2(144115188075855870, -144115188075855870);
 600    try test__negti2(-144115188075855868, 144115188075855868);
 601    try test__negti2(144115188075855868, -144115188075855868);
 602    try test__negti2(-144115188075855864, 144115188075855864);
 603    try test__negti2(144115188075855864, -144115188075855864);
 604    try test__negti2(-72057594037927935, 72057594037927935);
 605    try test__negti2(72057594037927935, -72057594037927935);
 606    try test__negti2(-72057594037927934, 72057594037927934);
 607    try test__negti2(72057594037927934, -72057594037927934);
 608    try test__negti2(-72057594037927932, 72057594037927932);
 609    try test__negti2(72057594037927932, -72057594037927932);
 610    try test__negti2(-72057594037927928, 72057594037927928);
 611    try test__negti2(72057594037927928, -72057594037927928);
 612    try test__negti2(-36028797018963967, 36028797018963967);
 613    try test__negti2(36028797018963967, -36028797018963967);
 614    try test__negti2(-36028797018963966, 36028797018963966);
 615    try test__negti2(36028797018963966, -36028797018963966);
 616    try test__negti2(-36028797018963964, 36028797018963964);
 617    try test__negti2(36028797018963964, -36028797018963964);
 618    try test__negti2(-36028797018963960, 36028797018963960);
 619    try test__negti2(36028797018963960, -36028797018963960);
 620    try test__negti2(-18014398509481983, 18014398509481983);
 621    try test__negti2(18014398509481983, -18014398509481983);
 622    try test__negti2(-18014398509481982, 18014398509481982);
 623    try test__negti2(18014398509481982, -18014398509481982);
 624    try test__negti2(-18014398509481980, 18014398509481980);
 625    try test__negti2(18014398509481980, -18014398509481980);
 626    try test__negti2(-18014398509481976, 18014398509481976);
 627    try test__negti2(18014398509481976, -18014398509481976);
 628    try test__negti2(-9007199254740991, 9007199254740991);
 629    try test__negti2(9007199254740991, -9007199254740991);
 630    try test__negti2(-9007199254740990, 9007199254740990);
 631    try test__negti2(9007199254740990, -9007199254740990);
 632    try test__negti2(-9007199254740988, 9007199254740988);
 633    try test__negti2(9007199254740988, -9007199254740988);
 634    try test__negti2(-9007199254740984, 9007199254740984);
 635    try test__negti2(9007199254740984, -9007199254740984);
 636    try test__negti2(-4503599627370495, 4503599627370495);
 637    try test__negti2(4503599627370495, -4503599627370495);
 638    try test__negti2(-4503599627370494, 4503599627370494);
 639    try test__negti2(4503599627370494, -4503599627370494);
 640    try test__negti2(-4503599627370492, 4503599627370492);
 641    try test__negti2(4503599627370492, -4503599627370492);
 642    try test__negti2(-4503599627370488, 4503599627370488);
 643    try test__negti2(4503599627370488, -4503599627370488);
 644    try test__negti2(-2251799813685247, 2251799813685247);
 645    try test__negti2(2251799813685247, -2251799813685247);
 646    try test__negti2(-2251799813685246, 2251799813685246);
 647    try test__negti2(2251799813685246, -2251799813685246);
 648    try test__negti2(-2251799813685244, 2251799813685244);
 649    try test__negti2(2251799813685244, -2251799813685244);
 650    try test__negti2(-2251799813685240, 2251799813685240);
 651    try test__negti2(2251799813685240, -2251799813685240);
 652    try test__negti2(-1125899906842623, 1125899906842623);
 653    try test__negti2(1125899906842623, -1125899906842623);
 654    try test__negti2(-1125899906842622, 1125899906842622);
 655    try test__negti2(1125899906842622, -1125899906842622);
 656    try test__negti2(-1125899906842620, 1125899906842620);
 657    try test__negti2(1125899906842620, -1125899906842620);
 658    try test__negti2(-1125899906842616, 1125899906842616);
 659    try test__negti2(1125899906842616, -1125899906842616);
 660    try test__negti2(-562949953421311, 562949953421311);
 661    try test__negti2(562949953421311, -562949953421311);
 662    try test__negti2(-562949953421310, 562949953421310);
 663    try test__negti2(562949953421310, -562949953421310);
 664    try test__negti2(-562949953421308, 562949953421308);
 665    try test__negti2(562949953421308, -562949953421308);
 666    try test__negti2(-562949953421304, 562949953421304);
 667    try test__negti2(562949953421304, -562949953421304);
 668    try test__negti2(-281474976710655, 281474976710655);
 669    try test__negti2(281474976710655, -281474976710655);
 670    try test__negti2(-281474976710654, 281474976710654);
 671    try test__negti2(281474976710654, -281474976710654);
 672    try test__negti2(-281474976710652, 281474976710652);
 673    try test__negti2(281474976710652, -281474976710652);
 674    try test__negti2(-281474976710648, 281474976710648);
 675    try test__negti2(281474976710648, -281474976710648);
 676    try test__negti2(-140737488355327, 140737488355327);
 677    try test__negti2(140737488355327, -140737488355327);
 678    try test__negti2(-140737488355326, 140737488355326);
 679    try test__negti2(140737488355326, -140737488355326);
 680    try test__negti2(-140737488355324, 140737488355324);
 681    try test__negti2(140737488355324, -140737488355324);
 682    try test__negti2(-140737488355320, 140737488355320);
 683    try test__negti2(140737488355320, -140737488355320);
 684    try test__negti2(-70368744177663, 70368744177663);
 685    try test__negti2(70368744177663, -70368744177663);
 686    try test__negti2(-70368744177662, 70368744177662);
 687    try test__negti2(70368744177662, -70368744177662);
 688    try test__negti2(-70368744177660, 70368744177660);
 689    try test__negti2(70368744177660, -70368744177660);
 690    try test__negti2(-70368744177656, 70368744177656);
 691    try test__negti2(70368744177656, -70368744177656);
 692    try test__negti2(-35184372088831, 35184372088831);
 693    try test__negti2(35184372088831, -35184372088831);
 694    try test__negti2(-35184372088830, 35184372088830);
 695    try test__negti2(35184372088830, -35184372088830);
 696    try test__negti2(-35184372088828, 35184372088828);
 697    try test__negti2(35184372088828, -35184372088828);
 698    try test__negti2(-35184372088824, 35184372088824);
 699    try test__negti2(35184372088824, -35184372088824);
 700    try test__negti2(-17592186044415, 17592186044415);
 701    try test__negti2(17592186044415, -17592186044415);
 702    try test__negti2(-17592186044414, 17592186044414);
 703    try test__negti2(17592186044414, -17592186044414);
 704    try test__negti2(-17592186044412, 17592186044412);
 705    try test__negti2(17592186044412, -17592186044412);
 706    try test__negti2(-17592186044408, 17592186044408);
 707    try test__negti2(17592186044408, -17592186044408);
 708    try test__negti2(-8796093022207, 8796093022207);
 709    try test__negti2(8796093022207, -8796093022207);
 710    try test__negti2(-8796093022206, 8796093022206);
 711    try test__negti2(8796093022206, -8796093022206);
 712    try test__negti2(-8796093022204, 8796093022204);
 713    try test__negti2(8796093022204, -8796093022204);
 714    try test__negti2(-8796093022200, 8796093022200);
 715    try test__negti2(8796093022200, -8796093022200);
 716    try test__negti2(-4398046511103, 4398046511103);
 717    try test__negti2(4398046511103, -4398046511103);
 718    try test__negti2(-4398046511102, 4398046511102);
 719    try test__negti2(4398046511102, -4398046511102);
 720    try test__negti2(-4398046511100, 4398046511100);
 721    try test__negti2(4398046511100, -4398046511100);
 722    try test__negti2(-4398046511096, 4398046511096);
 723    try test__negti2(4398046511096, -4398046511096);
 724    try test__negti2(-2199023255551, 2199023255551);
 725    try test__negti2(2199023255551, -2199023255551);
 726    try test__negti2(-2199023255550, 2199023255550);
 727    try test__negti2(2199023255550, -2199023255550);
 728    try test__negti2(-2199023255548, 2199023255548);
 729    try test__negti2(2199023255548, -2199023255548);
 730    try test__negti2(-2199023255544, 2199023255544);
 731    try test__negti2(2199023255544, -2199023255544);
 732    try test__negti2(-1099511627775, 1099511627775);
 733    try test__negti2(1099511627775, -1099511627775);
 734    try test__negti2(-1099511627774, 1099511627774);
 735    try test__negti2(1099511627774, -1099511627774);
 736    try test__negti2(-1099511627772, 1099511627772);
 737    try test__negti2(1099511627772, -1099511627772);
 738    try test__negti2(-1099511627768, 1099511627768);
 739    try test__negti2(1099511627768, -1099511627768);
 740    try test__negti2(-549755813887, 549755813887);
 741    try test__negti2(549755813887, -549755813887);
 742    try test__negti2(-549755813886, 549755813886);
 743    try test__negti2(549755813886, -549755813886);
 744    try test__negti2(-549755813884, 549755813884);
 745    try test__negti2(549755813884, -549755813884);
 746    try test__negti2(-549755813880, 549755813880);
 747    try test__negti2(549755813880, -549755813880);
 748    try test__negti2(-274877906943, 274877906943);
 749    try test__negti2(274877906943, -274877906943);
 750    try test__negti2(-274877906942, 274877906942);
 751    try test__negti2(274877906942, -274877906942);
 752    try test__negti2(-274877906940, 274877906940);
 753    try test__negti2(274877906940, -274877906940);
 754    try test__negti2(-274877906936, 274877906936);
 755    try test__negti2(274877906936, -274877906936);
 756    try test__negti2(-137438953471, 137438953471);
 757    try test__negti2(137438953471, -137438953471);
 758    try test__negti2(-137438953470, 137438953470);
 759    try test__negti2(137438953470, -137438953470);
 760    try test__negti2(-137438953468, 137438953468);
 761    try test__negti2(137438953468, -137438953468);
 762    try test__negti2(-137438953464, 137438953464);
 763    try test__negti2(137438953464, -137438953464);
 764    try test__negti2(-68719476735, 68719476735);
 765    try test__negti2(68719476735, -68719476735);
 766    try test__negti2(-68719476734, 68719476734);
 767    try test__negti2(68719476734, -68719476734);
 768    try test__negti2(-68719476732, 68719476732);
 769    try test__negti2(68719476732, -68719476732);
 770    try test__negti2(-68719476728, 68719476728);
 771    try test__negti2(68719476728, -68719476728);
 772    try test__negti2(-34359738367, 34359738367);
 773    try test__negti2(34359738367, -34359738367);
 774    try test__negti2(-34359738366, 34359738366);
 775    try test__negti2(34359738366, -34359738366);
 776    try test__negti2(-34359738364, 34359738364);
 777    try test__negti2(34359738364, -34359738364);
 778    try test__negti2(-34359738360, 34359738360);
 779    try test__negti2(34359738360, -34359738360);
 780    try test__negti2(-17179869183, 17179869183);
 781    try test__negti2(17179869183, -17179869183);
 782    try test__negti2(-17179869182, 17179869182);
 783    try test__negti2(17179869182, -17179869182);
 784    try test__negti2(-17179869180, 17179869180);
 785    try test__negti2(17179869180, -17179869180);
 786    try test__negti2(-17179869176, 17179869176);
 787    try test__negti2(17179869176, -17179869176);
 788    try test__negti2(-8589934591, 8589934591);
 789    try test__negti2(8589934591, -8589934591);
 790    try test__negti2(-8589934590, 8589934590);
 791    try test__negti2(8589934590, -8589934590);
 792    try test__negti2(-8589934588, 8589934588);
 793    try test__negti2(8589934588, -8589934588);
 794    try test__negti2(-8589934584, 8589934584);
 795    try test__negti2(8589934584, -8589934584);
 796    try test__negti2(-4294967295, 4294967295);
 797    try test__negti2(4294967295, -4294967295);
 798    try test__negti2(-4294967294, 4294967294);
 799    try test__negti2(4294967294, -4294967294);
 800    try test__negti2(-4294967292, 4294967292);
 801    try test__negti2(4294967292, -4294967292);
 802    try test__negti2(-4294967288, 4294967288);
 803    try test__negti2(4294967288, -4294967288);
 804    try test__negti2(-2147483647, 2147483647);
 805    try test__negti2(2147483647, -2147483647);
 806    try test__negti2(-2147483646, 2147483646);
 807    try test__negti2(2147483646, -2147483646);
 808    try test__negti2(-2147483644, 2147483644);
 809    try test__negti2(2147483644, -2147483644);
 810    try test__negti2(-2147483640, 2147483640);
 811    try test__negti2(2147483640, -2147483640);
 812    try test__negti2(-1073741823, 1073741823);
 813    try test__negti2(1073741823, -1073741823);
 814    try test__negti2(-1073741822, 1073741822);
 815    try test__negti2(1073741822, -1073741822);
 816    try test__negti2(-1073741820, 1073741820);
 817    try test__negti2(1073741820, -1073741820);
 818    try test__negti2(-1073741816, 1073741816);
 819    try test__negti2(1073741816, -1073741816);
 820    try test__negti2(-536870911, 536870911);
 821    try test__negti2(536870911, -536870911);
 822    try test__negti2(-536870910, 536870910);
 823    try test__negti2(536870910, -536870910);
 824    try test__negti2(-536870908, 536870908);
 825    try test__negti2(536870908, -536870908);
 826    try test__negti2(-536870904, 536870904);
 827    try test__negti2(536870904, -536870904);
 828    try test__negti2(-268435455, 268435455);
 829    try test__negti2(268435455, -268435455);
 830    try test__negti2(-268435454, 268435454);
 831    try test__negti2(268435454, -268435454);
 832    try test__negti2(-268435452, 268435452);
 833    try test__negti2(268435452, -268435452);
 834    try test__negti2(-268435448, 268435448);
 835    try test__negti2(268435448, -268435448);
 836    try test__negti2(-134217727, 134217727);
 837    try test__negti2(134217727, -134217727);
 838    try test__negti2(-134217726, 134217726);
 839    try test__negti2(134217726, -134217726);
 840    try test__negti2(-134217724, 134217724);
 841    try test__negti2(134217724, -134217724);
 842    try test__negti2(-134217720, 134217720);
 843    try test__negti2(134217720, -134217720);
 844    try test__negti2(-67108863, 67108863);
 845    try test__negti2(67108863, -67108863);
 846    try test__negti2(-67108862, 67108862);
 847    try test__negti2(67108862, -67108862);
 848    try test__negti2(-67108860, 67108860);
 849    try test__negti2(67108860, -67108860);
 850    try test__negti2(-67108856, 67108856);
 851    try test__negti2(67108856, -67108856);
 852    try test__negti2(-33554431, 33554431);
 853    try test__negti2(33554431, -33554431);
 854    try test__negti2(-33554430, 33554430);
 855    try test__negti2(33554430, -33554430);
 856    try test__negti2(-33554428, 33554428);
 857    try test__negti2(33554428, -33554428);
 858    try test__negti2(-33554424, 33554424);
 859    try test__negti2(33554424, -33554424);
 860    try test__negti2(-16777215, 16777215);
 861    try test__negti2(16777215, -16777215);
 862    try test__negti2(-16777214, 16777214);
 863    try test__negti2(16777214, -16777214);
 864    try test__negti2(-16777212, 16777212);
 865    try test__negti2(16777212, -16777212);
 866    try test__negti2(-16777208, 16777208);
 867    try test__negti2(16777208, -16777208);
 868    try test__negti2(-8388607, 8388607);
 869    try test__negti2(8388607, -8388607);
 870    try test__negti2(-8388606, 8388606);
 871    try test__negti2(8388606, -8388606);
 872    try test__negti2(-8388604, 8388604);
 873    try test__negti2(8388604, -8388604);
 874    try test__negti2(-8388600, 8388600);
 875    try test__negti2(8388600, -8388600);
 876    try test__negti2(-4194303, 4194303);
 877    try test__negti2(4194303, -4194303);
 878    try test__negti2(-4194302, 4194302);
 879    try test__negti2(4194302, -4194302);
 880    try test__negti2(-4194300, 4194300);
 881    try test__negti2(4194300, -4194300);
 882    try test__negti2(-4194296, 4194296);
 883    try test__negti2(4194296, -4194296);
 884    try test__negti2(-2097151, 2097151);
 885    try test__negti2(2097151, -2097151);
 886    try test__negti2(-2097150, 2097150);
 887    try test__negti2(2097150, -2097150);
 888    try test__negti2(-2097148, 2097148);
 889    try test__negti2(2097148, -2097148);
 890    try test__negti2(-2097144, 2097144);
 891    try test__negti2(2097144, -2097144);
 892    try test__negti2(-1048575, 1048575);
 893    try test__negti2(1048575, -1048575);
 894    try test__negti2(-1048574, 1048574);
 895    try test__negti2(1048574, -1048574);
 896    try test__negti2(-1048572, 1048572);
 897    try test__negti2(1048572, -1048572);
 898    try test__negti2(-1048568, 1048568);
 899    try test__negti2(1048568, -1048568);
 900    try test__negti2(-524287, 524287);
 901    try test__negti2(524287, -524287);
 902    try test__negti2(-524286, 524286);
 903    try test__negti2(524286, -524286);
 904    try test__negti2(-524284, 524284);
 905    try test__negti2(524284, -524284);
 906    try test__negti2(-524280, 524280);
 907    try test__negti2(524280, -524280);
 908    try test__negti2(-262143, 262143);
 909    try test__negti2(262143, -262143);
 910    try test__negti2(-262142, 262142);
 911    try test__negti2(262142, -262142);
 912    try test__negti2(-262140, 262140);
 913    try test__negti2(262140, -262140);
 914    try test__negti2(-262136, 262136);
 915    try test__negti2(262136, -262136);
 916    try test__negti2(-131071, 131071);
 917    try test__negti2(131071, -131071);
 918    try test__negti2(-131070, 131070);
 919    try test__negti2(131070, -131070);
 920    try test__negti2(-131068, 131068);
 921    try test__negti2(131068, -131068);
 922    try test__negti2(-131064, 131064);
 923    try test__negti2(131064, -131064);
 924    try test__negti2(-65535, 65535);
 925    try test__negti2(65535, -65535);
 926    try test__negti2(-65534, 65534);
 927    try test__negti2(65534, -65534);
 928    try test__negti2(-65532, 65532);
 929    try test__negti2(65532, -65532);
 930    try test__negti2(-65528, 65528);
 931    try test__negti2(65528, -65528);
 932    try test__negti2(-32767, 32767);
 933    try test__negti2(32767, -32767);
 934    try test__negti2(-32766, 32766);
 935    try test__negti2(32766, -32766);
 936    try test__negti2(-32764, 32764);
 937    try test__negti2(32764, -32764);
 938    try test__negti2(-32760, 32760);
 939    try test__negti2(32760, -32760);
 940    try test__negti2(-16383, 16383);
 941    try test__negti2(16383, -16383);
 942    try test__negti2(-16382, 16382);
 943    try test__negti2(16382, -16382);
 944    try test__negti2(-16380, 16380);
 945    try test__negti2(16380, -16380);
 946    try test__negti2(-16376, 16376);
 947    try test__negti2(16376, -16376);
 948    try test__negti2(-8191, 8191);
 949    try test__negti2(8191, -8191);
 950    try test__negti2(-8190, 8190);
 951    try test__negti2(8190, -8190);
 952    try test__negti2(-8188, 8188);
 953    try test__negti2(8188, -8188);
 954    try test__negti2(-8184, 8184);
 955    try test__negti2(8184, -8184);
 956    try test__negti2(-4095, 4095);
 957    try test__negti2(4095, -4095);
 958    try test__negti2(-4094, 4094);
 959    try test__negti2(4094, -4094);
 960    try test__negti2(-4092, 4092);
 961    try test__negti2(4092, -4092);
 962    try test__negti2(-4088, 4088);
 963    try test__negti2(4088, -4088);
 964    try test__negti2(-2047, 2047);
 965    try test__negti2(2047, -2047);
 966    try test__negti2(-2046, 2046);
 967    try test__negti2(2046, -2046);
 968    try test__negti2(-2044, 2044);
 969    try test__negti2(2044, -2044);
 970    try test__negti2(-2040, 2040);
 971    try test__negti2(2040, -2040);
 972    try test__negti2(-1023, 1023);
 973    try test__negti2(1023, -1023);
 974    try test__negti2(-1022, 1022);
 975    try test__negti2(1022, -1022);
 976    try test__negti2(-1020, 1020);
 977    try test__negti2(1020, -1020);
 978    try test__negti2(-1016, 1016);
 979    try test__negti2(1016, -1016);
 980    try test__negti2(-511, 511);
 981    try test__negti2(511, -511);
 982    try test__negti2(-510, 510);
 983    try test__negti2(510, -510);
 984    try test__negti2(-508, 508);
 985    try test__negti2(508, -508);
 986    try test__negti2(-504, 504);
 987    try test__negti2(504, -504);
 988    try test__negti2(-255, 255);
 989    try test__negti2(255, -255);
 990    try test__negti2(-254, 254);
 991    try test__negti2(254, -254);
 992    try test__negti2(-252, 252);
 993    try test__negti2(252, -252);
 994    try test__negti2(-248, 248);
 995    try test__negti2(248, -248);
 996    try test__negti2(-127, 127);
 997    try test__negti2(127, -127);
 998    try test__negti2(-126, 126);
 999    try test__negti2(126, -126);
1000    try test__negti2(-124, 124);
1001    try test__negti2(124, -124);
1002    try test__negti2(-120, 120);
1003    try test__negti2(120, -120);
1004    try test__negti2(-63, 63);
1005    try test__negti2(63, -63);
1006    try test__negti2(-62, 62);
1007    try test__negti2(62, -62);
1008    try test__negti2(-60, 60);
1009    try test__negti2(60, -60);
1010    try test__negti2(-56, 56);
1011    try test__negti2(56, -56);
1012    try test__negti2(-31, 31);
1013    try test__negti2(31, -31);
1014    try test__negti2(-30, 30);
1015    try test__negti2(30, -30);
1016    try test__negti2(-28, 28);
1017    try test__negti2(28, -28);
1018    try test__negti2(-24, 24);
1019    try test__negti2(24, -24);
1020    try test__negti2(-15, 15);
1021    try test__negti2(15, -15);
1022    try test__negti2(-14, 14);
1023    try test__negti2(14, -14);
1024    try test__negti2(-12, 12);
1025    try test__negti2(12, -12);
1026    try test__negti2(-8, 8);
1027    try test__negti2(8, -8);
1028}