111111111111111111111 + 111111111111111111111 = 222222222222222222222 111111111111111111111 + -111111111111111111111 = 0 111111111111111111111 + 4 = 111111111111111111115 111111111111111111111 + -4 = 111111111111111111107 -111111111111111111111 + 111111111111111111111 = 0 -111111111111111111111 + -111111111111111111111 = -222222222222222222222 -111111111111111111111 + 4 = -111111111111111111107 -111111111111111111111 + -4 = -111111111111111111115 4 + 111111111111111111111 = 111111111111111111115 4 + -111111111111111111111 = -111111111111111111107 4 + 4 = 8 4 + -4 = 0 -4 + 111111111111111111111 = 111111111111111111107 -4 + -111111111111111111111 = -111111111111111111115 -4 + 4 = 0 -4 + -4 = -8 111111111111111111111 - 111111111111111111111 = 0 111111111111111111111 - -111111111111111111111 = 222222222222222222222 111111111111111111111 - 4 = 111111111111111111107 111111111111111111111 - -4 = 111111111111111111115 -111111111111111111111 - 111111111111111111111 = -222222222222222222222 -111111111111111111111 - -111111111111111111111 = 0 -111111111111111111111 - 4 = -111111111111111111115 -111111111111111111111 - -4 = -111111111111111111107 4 - 111111111111111111111 = -111111111111111111107 4 - -111111111111111111111 = 111111111111111111115 4 - 4 = 0 4 - -4 = 8 -4 - 111111111111111111111 = -111111111111111111115 -4 - -111111111111111111111 = 111111111111111111107 -4 - 4 = -8 -4 - -4 = 0 111111111111111111111 * 111111111111111111111 = 12345679012345679012320987654320987654321 111111111111111111111 * -111111111111111111111 = -12345679012345679012320987654320987654321 111111111111111111111 * 4 = 444444444444444444444 111111111111111111111 * -4 = -444444444444444444444 -111111111111111111111 * 111111111111111111111 = -12345679012345679012320987654320987654321 -111111111111111111111 * -111111111111111111111 = 12345679012345679012320987654320987654321 -111111111111111111111 * 4 = -444444444444444444444 -111111111111111111111 * -4 = 444444444444444444444 4 * 111111111111111111111 = 444444444444444444444 4 * -111111111111111111111 = -444444444444444444444 4 * 4 = 16 4 * -4 = -16 -4 * 111111111111111111111 = -444444444444444444444 -4 * -111111111111111111111 = 444444444444444444444 -4 * 4 = -16 -4 * -4 = 16 111111111111111111111 / 111111111111111111111 = 1 111111111111111111111 / -111111111111111111111 = -1 111111111111111111111 / 4 = 27777777777777777777 111111111111111111111 / -4 = -27777777777777777777 -111111111111111111111 / 111111111111111111111 = -1 -111111111111111111111 / -111111111111111111111 = 1 -111111111111111111111 / 4 = -27777777777777777777 -111111111111111111111 / -4 = 27777777777777777777 4 / 111111111111111111111 = 0 4 / -111111111111111111111 = 0 4 / 4 = 1 4 / -4 = -1 -4 / 111111111111111111111 = 0 -4 / -111111111111111111111 = 0 -4 / 4 = -1 -4 / -4 = 1 111111111111111111111 % 111111111111111111111 = 0 111111111111111111111 % -111111111111111111111 = 0 111111111111111111111 % 4 = 3 111111111111111111111 % -4 = 3 -111111111111111111111 % 111111111111111111111 = 0 -111111111111111111111 % -111111111111111111111 = 0 -111111111111111111111 % 4 = -3 -111111111111111111111 % -4 = -3 4 % 111111111111111111111 = 4 4 % -111111111111111111111 = 4 4 % 4 = 0 4 % -4 = 0 -4 % 111111111111111111111 = -4 -4 % -111111111111111111111 = -4 -4 % 4 = 0 -4 % -4 = 0 111111111111111111111 iand 111111111111111111111 = 111111111111111111111 111111111111111111111 iand -111111111111111111111 = 1 111111111111111111111 iand 4 = 4 111111111111111111111 iand -4 = 111111111111111111108 -111111111111111111111 iand 111111111111111111111 = 1 -111111111111111111111 iand -111111111111111111111 = -111111111111111111111 -111111111111111111111 iand 4 = 0 -111111111111111111111 iand -4 = -111111111111111111112 4 iand 111111111111111111111 = 4 4 iand -111111111111111111111 = 0 4 iand 4 = 4 4 iand -4 = 4 -4 iand 111111111111111111111 = 111111111111111111108 -4 iand -111111111111111111111 = -111111111111111111112 -4 iand 4 = 4 -4 iand -4 = -4 111111111111111111111 ior 111111111111111111111 = 111111111111111111111 111111111111111111111 ior -111111111111111111111 = -1 111111111111111111111 ior 4 = 111111111111111111111 111111111111111111111 ior -4 = -1 -111111111111111111111 ior 111111111111111111111 = -1 -111111111111111111111 ior -111111111111111111111 = -111111111111111111111 -111111111111111111111 ior 4 = -111111111111111111107 -111111111111111111111 ior -4 = -3 4 ior 111111111111111111111 = 111111111111111111111 4 ior -111111111111111111111 = -111111111111111111107 4 ior 4 = 4 4 ior -4 = -4 -4 ior 111111111111111111111 = -1 -4 ior -111111111111111111111 = -3 -4 ior 4 = -4 -4 ior -4 = -4 111111111111111111111 ixor 111111111111111111111 = 0 111111111111111111111 ixor -111111111111111111111 = -2 111111111111111111111 ixor 4 = 111111111111111111107 111111111111111111111 ixor -4 = -111111111111111111109 -111111111111111111111 ixor 111111111111111111111 = -2 -111111111111111111111 ixor -111111111111111111111 = 0 -111111111111111111111 ixor 4 = -111111111111111111107 -111111111111111111111 ixor -4 = 111111111111111111109 4 ixor 111111111111111111111 = 111111111111111111107 4 ixor -111111111111111111111 = -111111111111111111107 4 ixor 4 = 0 4 ixor -4 = -8 -4 ixor 111111111111111111111 = -111111111111111111109 -4 ixor -111111111111111111111 = 111111111111111111109 -4 ixor 4 = -8 -4 ixor -4 = 0 111111111111111111111 < 111111111111111111111 = none 111111111111111111111 < -111111111111111111111 = none 111111111111111111111 < 4 = none 111111111111111111111 < -4 = none -111111111111111111111 < 111111111111111111111 = 111111111111111111111 -111111111111111111111 < -111111111111111111111 = none -111111111111111111111 < 4 = 4 -111111111111111111111 < -4 = -4 4 < 111111111111111111111 = 111111111111111111111 4 < -111111111111111111111 = none 4 < 4 = none 4 < -4 = none -4 < 111111111111111111111 = 111111111111111111111 -4 < -111111111111111111111 = none -4 < 4 = 4 -4 < -4 = none 111111111111111111111 = 111111111111111111111 = 111111111111111111111 111111111111111111111 = -111111111111111111111 = none 111111111111111111111 = 4 = none 111111111111111111111 = -4 = none -111111111111111111111 = 111111111111111111111 = none -111111111111111111111 = -111111111111111111111 = -111111111111111111111 -111111111111111111111 = 4 = none -111111111111111111111 = -4 = none 4 = 111111111111111111111 = none 4 = -111111111111111111111 = none 4 = 4 = 4 4 = -4 = none -4 = 111111111111111111111 = none -4 = -111111111111111111111 = none -4 = 4 = none -4 = -4 = -4 111111111111111111111 + 2222222222 = 111111111113333333333 111111111111111111111 + 3333333333 = 111111111114444444444 111111111111111111111 + -3333333333 = 111111111107777777778 2222222222 + 2222222222 = 4444444444 2222222222 + 3333333333 = 5555555555 2222222222 + -3333333333 = -1111111111 -2222222222 + 2222222222 = 0 -2222222222 + 3333333333 = 1111111111 -2222222222 + -3333333333 = -5555555555 111111111111111111111 - 2222222222 = 111111111108888888889 111111111111111111111 - 3333333333 = 111111111107777777778 111111111111111111111 - -3333333333 = 111111111114444444444 2222222222 - 2222222222 = 0 2222222222 - 3333333333 = -1111111111 2222222222 - -3333333333 = 5555555555 -2222222222 - 2222222222 = -4444444444 -2222222222 - 3333333333 = -5555555555 -2222222222 - -3333333333 = 1111111111 111111111111111111111 * 2222222222 = 246913580222222222221975308642 111111111111111111111 * 3333333333 = 370370370333333333332962962963 111111111111111111111 * -3333333333 = -370370370333333333332962962963 2222222222 * 2222222222 = 4938271603950617284 2222222222 * 3333333333 = 7407407405925925926 2222222222 * -3333333333 = -7407407405925925926 -2222222222 * 2222222222 = -4938271603950617284 -2222222222 * 3333333333 = -7407407405925925926 -2222222222 * -3333333333 = 7407407405925925926 111111111111111111111 / 2222222222 = 50000000005 111111111111111111111 / 3333333333 = 33333333336 111111111111111111111 / -3333333333 = -33333333336 2222222222 / 2222222222 = 1 2222222222 / 3333333333 = 0 2222222222 / -3333333333 = 0 -2222222222 / 2222222222 = -1 -2222222222 / 3333333333 = 0 -2222222222 / -3333333333 = 0 111111111111111111111 % 2222222222 = 1 111111111111111111111 % 3333333333 = 2222222223 111111111111111111111 % -3333333333 = 2222222223 2222222222 % 2222222222 = 0 2222222222 % 3333333333 = 2222222222 2222222222 % -3333333333 = 2222222222 -2222222222 % 2222222222 = 0 -2222222222 % 3333333333 = -2222222222 -2222222222 % -3333333333 = -2222222222 111111111111111111111 iand 2222222222 = 3432838 111111111111111111111 iand 3333333333 = 11280709 111111111111111111111 iand -3333333333 = 111111111111099830403 2222222222 iand 2222222222 = 2222222222 2222222222 iand 3333333333 = 2216960260 2222222222 iand -3333333333 = 5261962 -2222222222 iand 2222222222 = 2 -2222222222 iand 3333333333 = 1116373072 -2222222222 iand -3333333333 = -3338595294 111111111111111111111 ior 2222222222 = 111111111113329900495 111111111111111111111 ior 3333333333 = 111111111114433163735 111111111111111111111 ior -3333333333 = -3322052625 2222222222 ior 2222222222 = 2222222222 2222222222 ior 3333333333 = 3338595295 2222222222 ior -3333333333 = -1116373073 -2222222222 ior 2222222222 = -2 -2222222222 ior 3333333333 = -5261961 -2222222222 ior -3333333333 = -2216960261 111111111111111111111 ixor 2222222222 = 111111111113326467657 111111111111111111111 ixor 3333333333 = 111111111114421883026 111111111111111111111 ixor -3333333333 = -111111111114421883028 2222222222 ixor 2222222222 = 0 2222222222 ixor 3333333333 = 1121635035 2222222222 ixor -3333333333 = -1121635035 -2222222222 ixor 2222222222 = -4 -2222222222 ixor 3333333333 = -1121635033 -2222222222 ixor -3333333333 = 1121635033 111111111111111111111 < 2222222222 = none 111111111111111111111 < 3333333333 = none 111111111111111111111 < -3333333333 = none 2222222222 < 2222222222 = none 2222222222 < 3333333333 = 3333333333 2222222222 < -3333333333 = none -2222222222 < 2222222222 = 2222222222 -2222222222 < 3333333333 = 3333333333 -2222222222 < -3333333333 = none 111111111111111111111 = 2222222222 = none 111111111111111111111 = 3333333333 = none 111111111111111111111 = -3333333333 = none 2222222222 = 2222222222 = 2222222222 2222222222 = 3333333333 = none 2222222222 = -3333333333 = none -2222222222 = 2222222222 = none -2222222222 = 3333333333 = none -2222222222 = -3333333333 = none 111111111111111111111 ^ 2 = 12345679012345679012320987654320987654321 111111111111111111111 ^ 5 = 16935087808430286710951921285711866416027536452776507646192145336923571948720554116157767278023336551 -111111111111111111111 ^ 2 = 12345679012345679012320987654320987654321 -111111111111111111111 ^ 5 = -16935087808430286710951921285711866416027536452776507646192145336923571948720554116157767278023336551 4 ^ 2 = 16 4 ^ 5 = 1024 -4 ^ 2 = 16 -4 ^ 5 = -1024 2 ^ 10 = 1024 2 ^ 30 = 1073741824 3 ^ 10 = 59049 3 ^ 30 = 205891132094649 111111111111111111111 ishift 1 = 222222222222222222222 111111111111111111111 ishift 8 = 28444444444444444444416 111111111111111111111 ishift -1 = 55555555555555555555 111111111111111111111 ishift -39 = 202109933 -111111111111111111111 ishift 1 = -222222222222222222222 -111111111111111111111 ishift 8 = -28444444444444444444416 -111111111111111111111 ishift -1 = -55555555555555555556 -111111111111111111111 ishift -39 = -202109934 2222222222 ishift 1 = 4444444444 2222222222 ishift 8 = 568888888832 2222222222 ishift -1 = 1111111111 2222222222 ishift -39 = 0 -2222222222 ishift 1 = -4444444444 -2222222222 ishift 8 = -568888888832 -2222222222 ishift -1 = -1111111111 -2222222222 ishift -39 = -1 4 ishift 1 = 8 4 ishift 8 = 1024 4 ishift -1 = 2 4 ishift -39 = 0 1024 1024:1024 large.icn : 28 | foo(1024) large.icn : 37 | foo failed 1073741824 1073741824:1073741824 large.icn : 28 | foo(1073741824) large.icn : 37 | foo failed 1180591620717411303424 1180591620717411303424:1180591620717411303424 large.icn : 28 | foo(1180591620717411303424) large.icn : 37 | foo failed 1267650600228229401496703205376 1267650600228229401496703205376:integer(~10^30) large.icn : 28 | foo(integer(~10^30)) large.icn : 37 | foo failed large.icn : 30 main failed