Edit

kc3-lang/kc3/test/ikc3/integer_mul.out.expected

Branch :

  • test/ikc3/integer_mul.out.expected
  • -170141183460469231731687303715884105728 * -170141183460469231731687303715884105728
    28948022309329048855892746252171976963317496166410141009864396001978282409984
    -170141183460469231731687303715884105728 * -170141183460469231731687303715884105727
    28948022309329048855892746252171976963147354982949671778132708698262398304256
    -170141183460469231731687303715884105728 * -9223372036854775808
    1569275433846670190958947355801916604025588861116008628224
    -170141183460469231731687303715884105728 * (S64) -9223372036854775807
    1569275433846670190788806172341447372293901557400124522496
    -170141183460469231731687303715884105728 * (S64) -2147483648
    365375409332725729550921208179070754913983135744
    -170141183460469231731687303715884105728 * (S32) -2147483647
    365375409162584546090451976447383451198099030016
    -170141183460469231731687303715884105728 * (S32) -32768
    5575186299632655785383929568162090376495104
    -170141183460469231731687303715884105728 * (S16) -32767
    5575016158449195316152197880858374492389376
    -170141183460469231731687303715884105728 * (S16) -128
    21778071482940061661655974875633165533184
    -170141183460469231731687303715884105728 * (S8) -127
    21607930299479592429924287571917281427456
    -170141183460469231731687303715884105728 * (U8) 255
    -43386001782419654091580262447550446960640
    -170141183460469231731687303715884105728 * (U16) 256
    -43556142965880123323311949751266331066368
    -170141183460469231731687303715884105728 * (U16) 65535
    -11150202458081851101536127449020464868884480
    -170141183460469231731687303715884105728 * (U32) 65536
    -11150372599265311570767859136324180752990208
    -170141183460469231731687303715884105728 * (U32) 4294967295
    -730750818495310275641373184626454206112082165760
    -170141183460469231731687303715884105728 * (U64) 4294967296
    -730750818665451459101842416358141509827966271488
    -170141183460469231731687303715884105728 * (U64) 18446744073709551615
    -3138550867693340381747753528143363976319490418516133150720
    -170141183460469231731687303715884105728 * 18446744073709551616
    -3138550867693340381917894711603833208051177722232017256448
    -170141183460469231731687303715884105728 * 340282366920938463463374607431768211455
    -57896044618658097711785492504343953926464851149359812787997104700240680714240
    -170141183460469231731687303715884105728 * 340282366920938463463374607431768211456
    -57896044618658097711785492504343953926634992332820282019728792003956564819968
    -170141183460469231731687303715884105727 * -170141183460469231731687303715884105728
    28948022309329048855892746252171976963147354982949671778132708698262398304256
    -170141183460469231731687303715884105727 * -170141183460469231731687303715884105727
    28948022309329048855892746252171976962977213799489202546401021394546514198529
    -170141183460469231731687303715884105727 * -9223372036854775808
    1569275433846670190958947355801916604016365489079153852416
    -170141183460469231731687303715884105727 * (S64) -9223372036854775807
    1569275433846670190788806172341447372284678185363269746689
    -170141183460469231731687303715884105727 * (S64) -2147483648
    365375409332725729550921208179070754911835652096
    -170141183460469231731687303715884105727 * (S32) -2147483647
    365375409162584546090451976447383451195951546369
    -170141183460469231731687303715884105727 * (S32) -32768
    5575186299632655785383929568162090376462336
    -170141183460469231731687303715884105727 * (S16) -32767
    5575016158449195316152197880858374492356609
    -170141183460469231731687303715884105727 * (S16) -128
    21778071482940061661655974875633165533056
    -170141183460469231731687303715884105727 * (S8) -127
    21607930299479592429924287571917281427329
    -170141183460469231731687303715884105727 * (U8) 255
    -43386001782419654091580262447550446960385
    -170141183460469231731687303715884105727 * (U16) 256
    -43556142965880123323311949751266331066112
    -170141183460469231731687303715884105727 * (U16) 65535
    -11150202458081851101536127449020464868818945
    -170141183460469231731687303715884105727 * (U32) 65536
    -11150372599265311570767859136324180752924672
    -170141183460469231731687303715884105727 * (U32) 4294967295
    -730750818495310275641373184626454206107787198465
    -170141183460469231731687303715884105727 * (U64) 4294967296
    -730750818665451459101842416358141509823671304192
    -170141183460469231731687303715884105727 * (U64) 18446744073709551615
    -3138550867693340381747753528143363976301043674442423599105
    -170141183460469231731687303715884105727 * 18446744073709551616
    -3138550867693340381917894711603833208032730978158307704832
    -170141183460469231731687303715884105727 * 340282366920938463463374607431768211455
    -57896044618658097711785492504343953926124568782438874324533730092808912502785
    -170141183460469231731687303715884105727 * 340282366920938463463374607431768211456
    -57896044618658097711785492504343953926294709965899343556265417396524796608512
    -9223372036854775808 * -170141183460469231731687303715884105728
    1569275433846670190958947355801916604025588861116008628224
    -9223372036854775808 * -170141183460469231731687303715884105727
    1569275433846670190958947355801916604016365489079153852416
    -9223372036854775808 * -9223372036854775808
    85070591730234615865843651857942052864
    -9223372036854775808 * (S64) -9223372036854775807
    85070591730234615856620279821087277056
    -9223372036854775808 * (S64) -2147483648
    19807040628566084398385987584
    -9223372036854775808 * (S32) -2147483647
    19807040619342712361531211776
    -9223372036854775808 * (S32) -32768
    302231454903657293676544
    -9223372036854775808 * (S16) -32767
    302222231531620438900736
    -9223372036854775808 * (S16) -128
    1180591620717411303424
    -9223372036854775808 * (S8) -127
    1171368248680556527616
    -9223372036854775808 * (U8) 255
    -2351959869397967831040
    -9223372036854775808 * (U16) 256
    -2361183241434822606848
    -9223372036854775808 * (U16) 65535
    -604453686435277732577280
    -9223372036854775808 * (U32) 65536
    -604462909807314587353088
    -9223372036854775808 * (U32) 4294967295
    -39614081247908796759917199360
    -9223372036854775808 * (U64) 4294967296
    -39614081257132168796771975168
    -9223372036854775808 * (U64) 18446744073709551615
    -170141183460469231722463931679029329920
    -9223372036854775808 * 18446744073709551616
    -170141183460469231731687303715884105728
    -9223372036854775808 * 340282366920938463463374607431768211455
    -3138550867693340381917894711603833208041954350195162480640
    -9223372036854775808 * 340282366920938463463374607431768211456
    -3138550867693340381917894711603833208051177722232017256448
    (S64) -9223372036854775807 * -170141183460469231731687303715884105728
    1569275433846670190788806172341447372293901557400124522496
    (S64) -9223372036854775807 * -170141183460469231731687303715884105727
    1569275433846670190788806172341447372284678185363269746689
    (S64) -9223372036854775807 * -9223372036854775808
    85070591730234615856620279821087277056
    (S64) -9223372036854775807 * (S64) -9223372036854775807
    85070591730234615847396907784232501249
    (S64) -9223372036854775807 * (S64) -2147483648
    19807040628566084396238503936
    (S64) -9223372036854775807 * (S32) -2147483647
    19807040619342712359383728129
    (S64) -9223372036854775807 * (S32) -32768
    302231454903657293643776
    (S64) -9223372036854775807 * (S16) -32767
    302222231531620438867969
    (S64) -9223372036854775807 * (S16) -128
    1180591620717411303296
    (S64) -9223372036854775807 * (S8) -127
    1171368248680556527489
    (S64) -9223372036854775807 * (U8) 255
    -2351959869397967830785
    (S64) -9223372036854775807 * (U16) 256
    -2361183241434822606592
    (S64) -9223372036854775807 * (U16) 65535
    -604453686435277732511745
    (S64) -9223372036854775807 * (U32) 65536
    -604462909807314587287552
    (S64) -9223372036854775807 * (U32) 4294967295
    -39614081247908796755622232065
    (S64) -9223372036854775807 * (U64) 4294967296
    -39614081257132168792477007872
    (S64) -9223372036854775807 * (U64) 18446744073709551615
    -170141183460469231704017187605319778305
    (S64) -9223372036854775807 * 18446744073709551616
    -170141183460469231713240559642174554112
    (S64) -9223372036854775807 * 340282366920938463463374607431768211455
    -3138550867693340381577612344682894744578579742763394269185
    (S64) -9223372036854775807 * 340282366920938463463374607431768211456
    -3138550867693340381577612344682894744587803114800249044992
    (S64) -2147483648 * -170141183460469231731687303715884105728
    365375409332725729550921208179070754913983135744
    (S64) -2147483648 * -170141183460469231731687303715884105727
    365375409332725729550921208179070754911835652096
    (S64) -2147483648 * -9223372036854775808
    19807040628566084398385987584
    (S64) -2147483648 * (S64) -9223372036854775807
    19807040628566084396238503936
    (S64) -2147483648 * (S64) -2147483648
    4611686018427387904
    (S64) -2147483648 * (S32) -2147483647
    4611686016279904256
    (S64) -2147483648 * (S32) -32768
    70368744177664
    (S64) -2147483648 * (S16) -32767
    70366596694016
    (S64) -2147483648 * (S16) -128
    274877906944
    (S64) -2147483648 * (S8) -127
    272730423296
    (S64) -2147483648 * (U8) 255
    -547608330240
    (S64) -2147483648 * (U16) 256
    -549755813888
    (S64) -2147483648 * (U16) 65535
    -140735340871680
    (S64) -2147483648 * (U32) 65536
    -140737488355328
    (S64) -2147483648 * (U32) 4294967295
    -9223372034707292160
    (S64) -2147483648 * (U64) 4294967296
    -9223372036854775808
    (S64) -2147483648 * (U64) 18446744073709551615
    -39614081257132168794624491520
    (S64) -2147483648 * 18446744073709551616
    -39614081257132168796771975168
    (S64) -2147483648 * 340282366920938463463374607431768211455
    -730750818665451459101842416358141509825818787840
    (S64) -2147483648 * 340282366920938463463374607431768211456
    -730750818665451459101842416358141509827966271488
    (S32) -2147483647 * -170141183460469231731687303715884105728
    365375409162584546090451976447383451198099030016
    (S32) -2147483647 * -170141183460469231731687303715884105727
    365375409162584546090451976447383451195951546369
    (S32) -2147483647 * -9223372036854775808
    19807040619342712361531211776
    (S32) -2147483647 * (S64) -9223372036854775807
    19807040619342712359383728129
    (S32) -2147483647 * (S64) -2147483648
    4611686016279904256
    (S32) -2147483647 * (S32) -2147483647
    (S64) 4611686014132420609
    (S32) -2147483647 * (S32) -32768
    (S64) 70368744144896
    (S32) -2147483647 * (S16) -32767
    (S64) 70366596661249
    (S32) -2147483647 * (S16) -128
    (S64) 274877906816
    (S32) -2147483647 * (S8) -127
    (S64) 272730423169
    (S32) -2147483647 * (U8) 255
    (S64) -547608329985
    (S32) -2147483647 * (U16) 256
    (S64) -549755813632
    (S32) -2147483647 * (U16) 65535
    (S64) -140735340806145
    (S32) -2147483647 * (U32) 65536
    (S64) -140737488289792
    (S32) -2147483647 * (U32) 4294967295
    (S64) -9223372030412324865
    (S32) -2147483647 * (U64) 4294967296
    -9223372032559808512
    (S32) -2147483647 * (U64) 18446744073709551615
    -39614081238685424720914939905
    (S32) -2147483647 * 18446744073709551616
    -39614081238685424723062423552
    (S32) -2147483647 * 340282366920938463463374607431768211455
    -730750818325169092180903952894766902394050576385
    (S32) -2147483647 * 340282366920938463463374607431768211456
    -730750818325169092180903952894766902396198060032
    (S32) -32768 * -170141183460469231731687303715884105728
    5575186299632655785383929568162090376495104
    (S32) -32768 * -170141183460469231731687303715884105727
    5575186299632655785383929568162090376462336
    (S32) -32768 * -9223372036854775808
    302231454903657293676544
    (S32) -32768 * (S64) -9223372036854775807
    302231454903657293643776
    (S32) -32768 * (S64) -2147483648
    70368744177664
    (S32) -32768 * (S32) -2147483647
    (S64) 70368744144896
    (S32) -32768 * (S32) -32768
    (S64) 1073741824
    (S32) -32768 * (S16) -32767
    (S64) 1073709056
    (S32) -32768 * (S16) -128
    (S64) 4194304
    (S32) -32768 * (S8) -127
    (S64) 4161536
    (S32) -32768 * (U8) 255
    (S64) -8355840
    (S32) -32768 * (U16) 256
    (S64) -8388608
    (S32) -32768 * (U16) 65535
    (S64) -2147450880
    (S32) -32768 * (U32) 65536
    (S64) -2147483648
    (S32) -32768 * (U32) 4294967295
    (S64) -140737488322560
    (S32) -32768 * (U64) 4294967296
    -140737488355328
    (S32) -32768 * (U64) 18446744073709551615
    -604462909807314587320320
    (S32) -32768 * 18446744073709551616
    -604462909807314587353088
    (S32) -32768 * 340282366920938463463374607431768211455
    -11150372599265311570767859136324180752957440
    (S32) -32768 * 340282366920938463463374607431768211456
    -11150372599265311570767859136324180752990208
    (S16) -32767 * -170141183460469231731687303715884105728
    5575016158449195316152197880858374492389376
    (S16) -32767 * -170141183460469231731687303715884105727
    5575016158449195316152197880858374492356609
    (S16) -32767 * -9223372036854775808
    302222231531620438900736
    (S16) -32767 * (S64) -9223372036854775807
    302222231531620438867969
    (S16) -32767 * (S64) -2147483648
    70366596694016
    (S16) -32767 * (S32) -2147483647
    (S64) 70366596661249
    (S16) -32767 * (S32) -32768
    (S64) 1073709056
    (S16) -32767 * (S16) -32767
    (S32) 1073676289
    (S16) -32767 * (S16) -128
    (S32) 4194176
    (S16) -32767 * (S8) -127
    (S32) 4161409
    (S16) -32767 * (U8) 255
    (S32) -8355585
    (S16) -32767 * (U16) 256
    (S32) -8388352
    (S16) -32767 * (U16) 65535
    (S32) -2147385345
    (S16) -32767 * (U32) 65536
    (S64) -2147418112
    (S16) -32767 * (U32) 4294967295
    (S64) -140733193355265
    (S16) -32767 * (U64) 4294967296
    -140733193388032
    (S16) -32767 * (U64) 18446744073709551615
    -604444463063240877768705
    (S16) -32767 * 18446744073709551616
    -604444463063240877801472
    (S16) -32767 * 340282366920938463463374607431768211455
    -11150032316898390632304395761716748984745985
    (S16) -32767 * 340282366920938463463374607431768211456
    -11150032316898390632304395761716748984778752
    (S16) -128 * -170141183460469231731687303715884105728
    21778071482940061661655974875633165533184
    (S16) -128 * -170141183460469231731687303715884105727
    21778071482940061661655974875633165533056
    (S16) -128 * -9223372036854775808
    1180591620717411303424
    (S16) -128 * (S64) -9223372036854775807
    1180591620717411303296
    (S16) -128 * (S64) -2147483648
    274877906944
    (S16) -128 * (S32) -2147483647
    (S64) 274877906816
    (S16) -128 * (S32) -32768
    (S64) 4194304
    (S16) -128 * (S16) -32767
    (S32) 4194176
    (S16) -128 * (S16) -128
    (S32) 16384
    (S16) -128 * (S8) -127
    (S32) 16256
    (S16) -128 * (U8) 255
    (S32) -32640
    (S16) -128 * (U16) 256
    (S32) -32768
    (S16) -128 * (U16) 65535
    (S32) -8388480
    (S16) -128 * (U32) 65536
    (S64) -8388608
    (S16) -128 * (U32) 4294967295
    (S64) -549755813760
    (S16) -128 * (U64) 4294967296
    -549755813888
    (S16) -128 * (U64) 18446744073709551615
    -2361183241434822606720
    (S16) -128 * 18446744073709551616
    -2361183241434822606848
    (S16) -128 * 340282366920938463463374607431768211455
    -43556142965880123323311949751266331066240
    (S16) -128 * 340282366920938463463374607431768211456
    -43556142965880123323311949751266331066368
    (S8) -127 * -170141183460469231731687303715884105728
    21607930299479592429924287571917281427456
    (S8) -127 * -170141183460469231731687303715884105727
    21607930299479592429924287571917281427329
    (S8) -127 * -9223372036854775808
    1171368248680556527616
    (S8) -127 * (S64) -9223372036854775807
    1171368248680556527489
    (S8) -127 * (S64) -2147483648
    272730423296
    (S8) -127 * (S32) -2147483647
    (S64) 272730423169
    (S8) -127 * (S32) -32768
    (S64) 4161536
    (S8) -127 * (S16) -32767
    (S32) 4161409
    (S8) -127 * (S16) -128
    (S32) 16256
    (S8) -127 * (S8) -127
    (S16) 16129
    (S8) -127 * (U8) 255
    (S16) -32385
    (S8) -127 * (U16) 256
    (S32) -32512
    (S8) -127 * (U16) 65535
    (S32) -8322945
    (S8) -127 * (U32) 65536
    (S64) -8323072
    (S8) -127 * (U32) 4294967295
    (S64) -545460846465
    (S8) -127 * (U64) 4294967296
    -545460846592
    (S8) -127 * (U64) 18446744073709551615
    -2342736497361113055105
    (S8) -127 * 18446744073709551616
    -2342736497361113055232
    (S8) -127 * 340282366920938463463374607431768211455
    -43215860598959184859848575143834562854785
    (S8) -127 * 340282366920938463463374607431768211456
    -43215860598959184859848575143834562854912
    (U8) 255 * -170141183460469231731687303715884105728
    -43386001782419654091580262447550446960640
    (U8) 255 * -170141183460469231731687303715884105727
    -43386001782419654091580262447550446960385
    (U8) 255 * -9223372036854775808
    -2351959869397967831040
    (U8) 255 * (S64) -9223372036854775807
    -2351959869397967830785
    (U8) 255 * (S64) -2147483648
    -547608330240
    (U8) 255 * (S32) -2147483647
    (S64) -547608329985
    (U8) 255 * (S32) -32768
    (S64) -8355840
    (U8) 255 * (S16) -32767
    (S32) -8355585
    (U8) 255 * (S16) -128
    (S32) -32640
    (U8) 255 * (S8) -127
    (S16) -32385
    (U8) 255 * (U8) 255
    (U16) 65025
    (U8) 255 * (U16) 256
    (U32) 65280
    (U8) 255 * (U16) 65535
    (U32) 16711425
    (U8) 255 * (U32) 65536
    (U64) 16711680
    (U8) 255 * (U32) 4294967295
    (U64) 1095216660225
    (U8) 255 * (U64) 4294967296
    1095216660480
    (U8) 255 * (U64) 18446744073709551615
    4703919738795935661825
    (U8) 255 * 18446744073709551616
    4703919738795935662080
    (U8) 255 * 340282366920938463463374607431768211455
    86772003564839308183160524895100893921025
    (U8) 255 * 340282366920938463463374607431768211456
    86772003564839308183160524895100893921280
    (U16) 256 * -170141183460469231731687303715884105728
    -43556142965880123323311949751266331066368
    (U16) 256 * -170141183460469231731687303715884105727
    -43556142965880123323311949751266331066112
    (U16) 256 * -9223372036854775808
    -2361183241434822606848
    (U16) 256 * (S64) -9223372036854775807
    -2361183241434822606592
    (U16) 256 * (S64) -2147483648
    -549755813888
    (U16) 256 * (S32) -2147483647
    (S64) -549755813632
    (U16) 256 * (S32) -32768
    (S64) -8388608
    (U16) 256 * (S16) -32767
    (S32) -8388352
    (U16) 256 * (S16) -128
    (S32) -32768
    (U16) 256 * (S8) -127
    (S32) -32512
    (U16) 256 * (U8) 255
    (U32) 65280
    (U16) 256 * (U16) 256
    (U32) 65536
    (U16) 256 * (U16) 65535
    (U32) 16776960
    (U16) 256 * (U32) 65536
    (U64) 16777216
    (U16) 256 * (U32) 4294967295
    (U64) 1099511627520
    (U16) 256 * (U64) 4294967296
    1099511627776
    (U16) 256 * (U64) 18446744073709551615
    4722366482869645213440
    (U16) 256 * 18446744073709551616
    4722366482869645213696
    (U16) 256 * 340282366920938463463374607431768211455
    87112285931760246646623899502532662132480
    (U16) 256 * 340282366920938463463374607431768211456
    87112285931760246646623899502532662132736
    (U16) 65535 * -170141183460469231731687303715884105728
    -11150202458081851101536127449020464868884480
    (U16) 65535 * -170141183460469231731687303715884105727
    -11150202458081851101536127449020464868818945
    (U16) 65535 * -9223372036854775808
    -604453686435277732577280
    (U16) 65535 * (S64) -9223372036854775807
    -604453686435277732511745
    (U16) 65535 * (S64) -2147483648
    -140735340871680
    (U16) 65535 * (S32) -2147483647
    (S64) -140735340806145
    (U16) 65535 * (S32) -32768
    (S64) -2147450880
    (U16) 65535 * (S16) -32767
    (S32) -2147385345
    (U16) 65535 * (S16) -128
    (S32) -8388480
    (U16) 65535 * (S8) -127
    (S32) -8322945
    (U16) 65535 * (U8) 255
    (U32) 16711425
    (U16) 65535 * (U16) 256
    (U32) 16776960
    (U16) 65535 * (U16) 65535
    (U32) 4294836225
    (U16) 65535 * (U32) 65536
    (U64) 4294901760
    (U16) 65535 * (U32) 4294967295
    (U64) 281470681677825
    (U16) 65535 * (U64) 4294967296
    281470681743360
    (U16) 65535 * (U64) 18446744073709551615
    1208907372870555465089025
    (U16) 65535 * 18446744073709551616
    1208907372870555465154560
    (U16) 65535 * 340282366920938463463374607431768211455
    22300404916163702203072254898040929737703425
    (U16) 65535 * 340282366920938463463374607431768211456
    22300404916163702203072254898040929737768960
    (U32) 65536 * -170141183460469231731687303715884105728
    -11150372599265311570767859136324180752990208
    (U32) 65536 * -170141183460469231731687303715884105727
    -11150372599265311570767859136324180752924672
    (U32) 65536 * -9223372036854775808
    -604462909807314587353088
    (U32) 65536 * (S64) -9223372036854775807
    -604462909807314587287552
    (U32) 65536 * (S64) -2147483648
    -140737488355328
    (U32) 65536 * (S32) -2147483647
    (S64) -140737488289792
    (U32) 65536 * (S32) -32768
    (S64) -2147483648
    (U32) 65536 * (S16) -32767
    (S64) -2147418112
    (U32) 65536 * (S16) -128
    (S64) -8388608
    (U32) 65536 * (S8) -127
    (S64) -8323072
    (U32) 65536 * (U8) 255
    (U64) 16711680
    (U32) 65536 * (U16) 256
    (U64) 16777216
    (U32) 65536 * (U16) 65535
    (U64) 4294901760
    (U32) 65536 * (U32) 65536
    (U64) 4294967296
    (U32) 65536 * (U32) 4294967295
    (U64) 281474976645120
    (U32) 65536 * (U64) 4294967296
    281474976710656
    (U32) 65536 * (U64) 18446744073709551615
    1208925819614629174640640
    (U32) 65536 * 18446744073709551616
    1208925819614629174706176
    (U32) 65536 * 340282366920938463463374607431768211455
    22300745198530623141535718272648361505914880
    (U32) 65536 * 340282366920938463463374607431768211456
    22300745198530623141535718272648361505980416
    (U32) 4294967295 * -170141183460469231731687303715884105728
    -730750818495310275641373184626454206112082165760
    (U32) 4294967295 * -170141183460469231731687303715884105727
    -730750818495310275641373184626454206107787198465
    (U32) 4294967295 * -9223372036854775808
    -39614081247908796759917199360
    (U32) 4294967295 * (S64) -9223372036854775807
    -39614081247908796755622232065
    (U32) 4294967295 * (S64) -2147483648
    -9223372034707292160
    (U32) 4294967295 * (S32) -2147483647
    (S64) -9223372030412324865
    (U32) 4294967295 * (S32) -32768
    (S64) -140737488322560
    (U32) 4294967295 * (S16) -32767
    (S64) -140733193355265
    (U32) 4294967295 * (S16) -128
    (S64) -549755813760
    (U32) 4294967295 * (S8) -127
    (S64) -545460846465
    (U32) 4294967295 * (U8) 255
    (U64) 1095216660225
    (U32) 4294967295 * (U16) 256
    (U64) 1099511627520
    (U32) 4294967295 * (U16) 65535
    (U64) 281470681677825
    (U32) 4294967295 * (U32) 65536
    (U64) 281474976645120
    (U32) 4294967295 * (U32) 4294967295
    (U64) 18446744065119617025
    (U32) 4294967295 * (U64) 4294967296
    18446744069414584320
    (U32) 4294967295 * (U64) 18446744073709551615
    79228162495817593515539431425
    (U32) 4294967295 * 18446744073709551616
    79228162495817593519834398720
    (U32) 4294967295 * 340282366920938463463374607431768211455
    1461501636990620551282746369252908412219869364225
    (U32) 4294967295 * 340282366920938463463374607431768211456
    1461501636990620551282746369252908412224164331520
    (U64) 4294967296 * -170141183460469231731687303715884105728
    -730750818665451459101842416358141509827966271488
    (U64) 4294967296 * -170141183460469231731687303715884105727
    -730750818665451459101842416358141509823671304192
    (U64) 4294967296 * -9223372036854775808
    -39614081257132168796771975168
    (U64) 4294967296 * (S64) -9223372036854775807
    -39614081257132168792477007872
    (U64) 4294967296 * (S64) -2147483648
    -9223372036854775808
    (U64) 4294967296 * (S32) -2147483647
    -9223372032559808512
    (U64) 4294967296 * (S32) -32768
    -140737488355328
    (U64) 4294967296 * (S16) -32767
    -140733193388032
    (U64) 4294967296 * (S16) -128
    -549755813888
    (U64) 4294967296 * (S8) -127
    -545460846592
    (U64) 4294967296 * (U8) 255
    1095216660480
    (U64) 4294967296 * (U16) 256
    1099511627776
    (U64) 4294967296 * (U16) 65535
    281470681743360
    (U64) 4294967296 * (U32) 65536
    281474976710656
    (U64) 4294967296 * (U32) 4294967295
    18446744069414584320
    (U64) 4294967296 * (U64) 4294967296
    18446744073709551616
    (U64) 4294967296 * (U64) 18446744073709551615
    79228162514264337589248983040
    (U64) 4294967296 * 18446744073709551616
    79228162514264337593543950336
    (U64) 4294967296 * 340282366920938463463374607431768211455
    1461501637330902918203684832716283019651637575680
    (U64) 4294967296 * 340282366920938463463374607431768211456
    1461501637330902918203684832716283019655932542976
    (U64) 18446744073709551615 * -170141183460469231731687303715884105728
    -3138550867693340381747753528143363976319490418516133150720
    (U64) 18446744073709551615 * -170141183460469231731687303715884105727
    -3138550867693340381747753528143363976301043674442423599105
    (U64) 18446744073709551615 * -9223372036854775808
    -170141183460469231722463931679029329920
    (U64) 18446744073709551615 * (S64) -9223372036854775807
    -170141183460469231704017187605319778305
    (U64) 18446744073709551615 * (S64) -2147483648
    -39614081257132168794624491520
    (U64) 18446744073709551615 * (S32) -2147483647
    -39614081238685424720914939905
    (U64) 18446744073709551615 * (S32) -32768
    -604462909807314587320320
    (U64) 18446744073709551615 * (S16) -32767
    -604444463063240877768705
    (U64) 18446744073709551615 * (S16) -128
    -2361183241434822606720
    (U64) 18446744073709551615 * (S8) -127
    -2342736497361113055105
    (U64) 18446744073709551615 * (U8) 255
    4703919738795935661825
    (U64) 18446744073709551615 * (U16) 256
    4722366482869645213440
    (U64) 18446744073709551615 * (U16) 65535
    1208907372870555465089025
    (U64) 18446744073709551615 * (U32) 65536
    1208925819614629174640640
    (U64) 18446744073709551615 * (U32) 4294967295
    79228162495817593515539431425
    (U64) 18446744073709551615 * (U64) 4294967296
    79228162514264337589248983040
    (U64) 18446744073709551615 * (U64) 18446744073709551615
    340282366920938463426481119284349108225
    (U64) 18446744073709551615 * 18446744073709551616
    340282366920938463444927863358058659840
    (U64) 18446744073709551615 * 340282366920938463463374607431768211455
    6277101735386680763495507056286727952620534092958556749825
    (U64) 18446744073709551615 * 340282366920938463463374607431768211456
    6277101735386680763495507056286727952638980837032266301440
    18446744073709551616 * -170141183460469231731687303715884105728
    -3138550867693340381917894711603833208051177722232017256448
    18446744073709551616 * -170141183460469231731687303715884105727
    -3138550867693340381917894711603833208032730978158307704832
    18446744073709551616 * -9223372036854775808
    -170141183460469231731687303715884105728
    18446744073709551616 * (S64) -9223372036854775807
    -170141183460469231713240559642174554112
    18446744073709551616 * (S64) -2147483648
    -39614081257132168796771975168
    18446744073709551616 * (S32) -2147483647
    -39614081238685424723062423552
    18446744073709551616 * (S32) -32768
    -604462909807314587353088
    18446744073709551616 * (S16) -32767
    -604444463063240877801472
    18446744073709551616 * (S16) -128
    -2361183241434822606848
    18446744073709551616 * (S8) -127
    -2342736497361113055232
    18446744073709551616 * (U8) 255
    4703919738795935662080
    18446744073709551616 * (U16) 256
    4722366482869645213696
    18446744073709551616 * (U16) 65535
    1208907372870555465154560
    18446744073709551616 * (U32) 65536
    1208925819614629174706176
    18446744073709551616 * (U32) 4294967295
    79228162495817593519834398720
    18446744073709551616 * (U64) 4294967296
    79228162514264337593543950336
    18446744073709551616 * (U64) 18446744073709551615
    340282366920938463444927863358058659840
    18446744073709551616 * 18446744073709551616
    340282366920938463463374607431768211456
    18446744073709551616 * 340282366920938463463374607431768211455
    6277101735386680763835789423207666416083908700390324961280
    18446744073709551616 * 340282366920938463463374607431768211456
    6277101735386680763835789423207666416102355444464034512896
    340282366920938463463374607431768211455 * -170141183460469231731687303715884105728
    -57896044618658097711785492504343953926464851149359812787997104700240680714240
    340282366920938463463374607431768211455 * -170141183460469231731687303715884105727
    -57896044618658097711785492504343953926124568782438874324533730092808912502785
    340282366920938463463374607431768211455 * -9223372036854775808
    -3138550867693340381917894711603833208041954350195162480640
    340282366920938463463374607431768211455 * (S64) -9223372036854775807
    -3138550867693340381577612344682894744578579742763394269185
    340282366920938463463374607431768211455 * (S64) -2147483648
    -730750818665451459101842416358141509825818787840
    340282366920938463463374607431768211455 * (S32) -2147483647
    -730750818325169092180903952894766902394050576385
    340282366920938463463374607431768211455 * (S32) -32768
    -11150372599265311570767859136324180752957440
    340282366920938463463374607431768211455 * (S16) -32767
    -11150032316898390632304395761716748984745985
    340282366920938463463374607431768211455 * (S16) -128
    -43556142965880123323311949751266331066240
    340282366920938463463374607431768211455 * (S8) -127
    -43215860598959184859848575143834562854785
    340282366920938463463374607431768211455 * (U8) 255
    86772003564839308183160524895100893921025
    340282366920938463463374607431768211455 * (U16) 256
    87112285931760246646623899502532662132480
    340282366920938463463374607431768211455 * (U16) 65535
    22300404916163702203072254898040929737703425
    340282366920938463463374607431768211455 * (U32) 65536
    22300745198530623141535718272648361505914880
    340282366920938463463374607431768211455 * (U32) 4294967295
    1461501636990620551282746369252908412219869364225
    340282366920938463463374607431768211455 * (U64) 4294967296
    1461501637330902918203684832716283019651637575680
    340282366920938463463374607431768211455 * (U64) 18446744073709551615
    6277101735386680763495507056286727952620534092958556749825
    340282366920938463463374607431768211455 * 18446744073709551616
    6277101735386680763835789423207666416083908700390324961280
    340282366920938463463374607431768211455 * 340282366920938463463374607431768211455
    115792089237316195423570985008687907852589419931798687112530834793049593217025
    340282366920938463463374607431768211455 * 340282366920938463463374607431768211456
    115792089237316195423570985008687907852929702298719625575994209400481361428480
    340282366920938463463374607431768211456 * -170141183460469231731687303715884105728
    -57896044618658097711785492504343953926634992332820282019728792003956564819968
    340282366920938463463374607431768211456 * -170141183460469231731687303715884105727
    -57896044618658097711785492504343953926294709965899343556265417396524796608512
    340282366920938463463374607431768211456 * -9223372036854775808
    -3138550867693340381917894711603833208051177722232017256448
    340282366920938463463374607431768211456 * (S64) -9223372036854775807
    -3138550867693340381577612344682894744587803114800249044992
    340282366920938463463374607431768211456 * (S64) -2147483648
    -730750818665451459101842416358141509827966271488
    340282366920938463463374607431768211456 * (S32) -2147483647
    -730750818325169092180903952894766902396198060032
    340282366920938463463374607431768211456 * (S32) -32768
    -11150372599265311570767859136324180752990208
    340282366920938463463374607431768211456 * (S16) -32767
    -11150032316898390632304395761716748984778752
    340282366920938463463374607431768211456 * (S16) -128
    -43556142965880123323311949751266331066368
    340282366920938463463374607431768211456 * (S8) -127
    -43215860598959184859848575143834562854912
    340282366920938463463374607431768211456 * (U8) 255
    86772003564839308183160524895100893921280
    340282366920938463463374607431768211456 * (U16) 256
    87112285931760246646623899502532662132736
    340282366920938463463374607431768211456 * (U16) 65535
    22300404916163702203072254898040929737768960
    340282366920938463463374607431768211456 * (U32) 65536
    22300745198530623141535718272648361505980416
    340282366920938463463374607431768211456 * (U32) 4294967295
    1461501636990620551282746369252908412224164331520
    340282366920938463463374607431768211456 * (U64) 4294967296
    1461501637330902918203684832716283019655932542976
    340282366920938463463374607431768211456 * (U64) 18446744073709551615
    6277101735386680763495507056286727952638980837032266301440
    340282366920938463463374607431768211456 * 18446744073709551616
    6277101735386680763835789423207666416102355444464034512896
    340282366920938463463374607431768211456 * 340282366920938463463374607431768211455
    115792089237316195423570985008687907852929702298719625575994209400481361428480
    340282366920938463463374607431768211456 * 340282366920938463463374607431768211456
    115792089237316195423570985008687907853269984665640564039457584007913129639936