default Order dec $include $include overload zero_extend = {sail_zero_extend} function main (() : unit) -> unit = { assert(signed(zero_extend(0x0, 32)) == 0); assert(signed(zero_extend(0x1, 32)) == 1); assert(signed(zero_extend(0x10, 32)) == 16); assert(signed(zero_extend(0x10000, 32)) == 65536); assert(signed(zero_extend(0x10001, 32)) == 65537); assert(signed(zero_extend(0x11, 32)) == 17); assert(signed(zero_extend(0x11223344, 32)) == 287454020); assert(signed(zero_extend(0x118, 32)) == 280); assert(signed(zero_extend(0x12, 32)) == 18); assert(signed(zero_extend(0x1234, 32)) == 4660); assert(signed(zero_extend(0x12345678, 32)) == 305419896); assert(signed(zero_extend(0x13, 32)) == 19); assert(signed(zero_extend(0x14, 32)) == 20); assert(signed(zero_extend(0x15, 32)) == 21); assert(signed(zero_extend(0x16, 32)) == 22); assert(signed(zero_extend(0x17, 32)) == 23); assert(signed(zero_extend(0x17ffe, 32)) == 98302); assert(signed(zero_extend(0x17fff, 32)) == 98303); assert(signed(zero_extend(0x18, 32)) == 24); assert(signed(zero_extend(0x18000, 32)) == 98304); assert(signed(zero_extend(0x19, 32)) == 25); assert(signed(zero_extend(0x1a, 32)) == 26); assert(signed(zero_extend(0x1b, 32)) == 27); assert(signed(zero_extend(0x1c, 32)) == 28); assert(signed(zero_extend(0x1d, 32)) == 29); assert(signed(zero_extend(0x1e, 32)) == 30); assert(signed(zero_extend(0x1f, 32)) == 31); assert(signed(zero_extend(0x2, 32)) == 2); assert(signed(zero_extend(0x20, 32)) == 32); assert(signed(zero_extend(0x20000, 32)) == 131072); assert(signed(zero_extend(0x21, 32)) == 33); assert(signed(zero_extend(0x23, 32)) == 35); assert(signed(zero_extend(0x230, 32)) == 560); assert(signed(zero_extend(0x25, 32)) == 37); assert(signed(zero_extend(0x26, 32)) == 38); assert(signed(zero_extend(0x27, 32)) == 39); assert(signed(zero_extend(0x28, 32)) == 40); assert(signed(zero_extend(0x29, 32)) == 41); assert(signed(zero_extend(0x2a, 32)) == 42); assert(signed(zero_extend(0x2a0, 32)) == 672); assert(signed(zero_extend(0x2b, 32)) == 43); assert(signed(zero_extend(0x2d, 32)) == 45); assert(signed(zero_extend(0x2e, 32)) == 46); assert(signed(zero_extend(0x2f, 32)) == 47); assert(signed(zero_extend(0x3, 32)) == 3); assert(signed(zero_extend(0x30, 32)) == 48); assert(signed(zero_extend(0x31, 32)) == 49); assert(signed(zero_extend(0x32, 32)) == 50); assert(signed(zero_extend(0x33, 32)) == 51); assert(signed(zero_extend(0x34, 32)) == 52); assert(signed(zero_extend(0x35, 32)) == 53); assert(signed(zero_extend(0x36, 32)) == 54); assert(signed(zero_extend(0x37, 32)) == 55); assert(signed(zero_extend(0x38, 32)) == 56); assert(signed(zero_extend(0x39, 32)) == 57); assert(signed(zero_extend(0x3a, 32)) == 58); assert(signed(zero_extend(0x3c, 32)) == 60); assert(signed(zero_extend(0x3e, 32)) == 62); assert(signed(zero_extend(0x3f, 32)) == 63); assert(signed(zero_extend(0x4, 32)) == 4); assert(signed(zero_extend(0x40, 32)) == 64); assert(signed(zero_extend(0x41, 32)) == 65); assert(signed(zero_extend(0x43, 32)) == 67); assert(signed(zero_extend(0x44, 32)) == 68); assert(signed(zero_extend(0x45, 32)) == 69); assert(signed(zero_extend(0x46, 32)) == 70); assert(signed(zero_extend(0x460, 32)) == 1120); assert(signed(zero_extend(0x47, 32)) == 71); assert(signed(zero_extend(0x48, 32)) == 72); assert(signed(zero_extend(0x4a, 32)) == 74); assert(signed(zero_extend(0x4b, 32)) == 75); assert(signed(zero_extend(0x4c, 32)) == 76); assert(signed(zero_extend(0x4d, 32)) == 77); assert(signed(zero_extend(0x4e, 32)) == 78); assert(signed(zero_extend(0x4f, 32)) == 79); assert(signed(zero_extend(0x5, 32)) == 5); assert(signed(zero_extend(0x50, 32)) == 80); assert(signed(zero_extend(0x52, 32)) == 82); assert(signed(zero_extend(0x53, 32)) == 83); assert(signed(zero_extend(0x54, 32)) == 84); assert(signed(zero_extend(0x55, 32)) == 85); assert(signed(zero_extend(0x5a5a, 32)) == 23130); assert(signed(zero_extend(0x5a5a5a59, 32)) == 1515870809); assert(signed(zero_extend(0x5a5a5a5a, 32)) == 1515870810); assert(signed(zero_extend(0x5f, 32)) == 95); assert(signed(zero_extend(0x6, 32)) == 6); assert(signed(zero_extend(0x60000000, 32)) == 1610612736); assert(signed(zero_extend(0x61, 32)) == 97); assert(signed(zero_extend(0x62, 32)) == 98); assert(signed(zero_extend(0x63, 32)) == 99); assert(signed(zero_extend(0x64, 32)) == 100); assert(signed(zero_extend(0x65, 32)) == 101); assert(signed(zero_extend(0x66, 32)) == 102); assert(signed(zero_extend(0x68, 32)) == 104); assert(signed(zero_extend(0x69, 32)) == 105); assert(signed(zero_extend(0x6b7c8d9f, 32)) == 1803324831); assert(signed(zero_extend(0x6c, 32)) == 108); assert(signed(zero_extend(0x6d, 32)) == 109); assert(signed(zero_extend(0x6e, 32)) == 110); assert(signed(zero_extend(0x6f, 32)) == 111); assert(signed(zero_extend(0x7, 32)) == 7); assert(signed(zero_extend(0x70, 32)) == 112); assert(signed(zero_extend(0x72, 32)) == 114); assert(signed(zero_extend(0x73, 32)) == 115); assert(signed(zero_extend(0x74, 32)) == 116); assert(signed(zero_extend(0x75, 32)) == 117); assert(signed(zero_extend(0x76, 32)) == 118); assert(signed(zero_extend(0x764c321, 32)) == 124044065); assert(signed(zero_extend(0x78, 32)) == 120); assert(signed(zero_extend(0x7ffe, 32)) == 32766); assert(signed(zero_extend(0x7fff, 32)) == 32767); assert(signed(zero_extend(0x7fff7fff, 32)) == 2147450879); assert(signed(zero_extend(0x7ffffffe, 32)) == 2147483646); assert(signed(zero_extend(0x7fffffff, 32)) == 2147483647); assert(signed(zero_extend(0x8, 32)) == 8); assert(signed(zero_extend(0x8000, 32)) == 32768); assert(signed(zero_extend(0x80000000, 32)) == -2147483648); assert(signed(zero_extend(0x80000001, 32)) == -2147483647); assert(signed(zero_extend(0x80000002, 32)) == -2147483646); assert(signed(zero_extend(0x80000003, 32)) == -2147483645); assert(signed(zero_extend(0x80008000, 32)) == -2147450880); assert(signed(zero_extend(0x8001, 32)) == 32769); assert(signed(zero_extend(0x8002, 32)) == 32770); assert(signed(zero_extend(0x8003, 32)) == 32771); assert(signed(zero_extend(0x87654321, 32)) == -2023406815); assert(signed(zero_extend(0x8899aabb, 32)) == -2003195205); assert(signed(zero_extend(0x89ab, 32)) == 35243); assert(signed(zero_extend(0x8fffffff, 32)) == -1879048193); assert(signed(zero_extend(0x9, 32)) == 9); assert(signed(zero_extend(0x90000000, 32)) == -1879048192); assert(signed(zero_extend(0x90000001, 32)) == -1879048191); assert(signed(zero_extend(0x9234567a, 32)) == -1842063750); assert(signed(zero_extend(0x9be0, 32)) == 39904); assert(signed(zero_extend(0xa, 32)) == 10); assert(signed(zero_extend(0xa5a5, 32)) == 42405); assert(signed(zero_extend(0xa5a5a5a5, 32)) == -1515870811); assert(signed(zero_extend(0xb, 32)) == 11); assert(signed(zero_extend(0xc, 32)) == 12); assert(signed(zero_extend(0xc000, 32)) == 49152); assert(signed(zero_extend(0xd, 32)) == 13); assert(signed(zero_extend(0xe, 32)) == 14); assert(signed(zero_extend(0xe0000000, 32)) == -536870912); assert(signed(zero_extend(0xf, 32)) == 15); assert(signed(zero_extend(0xff, 32)) == 255); assert(signed(zero_extend(0xfffe, 32)) == 65534); assert(signed(zero_extend(0xffff, 32)) == 65535); assert(signed(zero_extend(0xffff8000, 32)) == -32768); assert(signed(zero_extend(0xffffff00, 32)) == -256); assert(signed(zero_extend(0xffffff87, 32)) == -121); assert(signed(zero_extend(0xffffff8c, 32)) == -116); assert(signed(zero_extend(0xffffff93, 32)) == -109); assert(signed(zero_extend(0xffffff9b, 32)) == -101); assert(signed(zero_extend(0xffffffa7, 32)) == -89); assert(signed(zero_extend(0xffffffd0, 32)) == -48); assert(signed(zero_extend(0xffffffd8, 32)) == -40); assert(signed(zero_extend(0xffffffda, 32)) == -38); assert(signed(zero_extend(0xffffffdf, 32)) == -33); assert(signed(zero_extend(0xffffffe0, 32)) == -32); assert(signed(zero_extend(0xffffffe1, 32)) == -31); assert(signed(zero_extend(0xffffffe2, 32)) == -30); assert(signed(zero_extend(0xffffffe3, 32)) == -29); assert(signed(zero_extend(0xffffffe4, 32)) == -28); assert(signed(zero_extend(0xffffffe5, 32)) == -27); assert(signed(zero_extend(0xffffffe6, 32)) == -26); assert(signed(zero_extend(0xffffffe7, 32)) == -25); assert(signed(zero_extend(0xffffffe8, 32)) == -24); assert(signed(zero_extend(0xffffffe9, 32)) == -23); assert(signed(zero_extend(0xffffffea, 32)) == -22); assert(signed(zero_extend(0xffffffeb, 32)) == -21); assert(signed(zero_extend(0xffffffec, 32)) == -20); assert(signed(zero_extend(0xffffffed, 32)) == -19); assert(signed(zero_extend(0xffffffee, 32)) == -18); assert(signed(zero_extend(0xffffffef, 32)) == -17); assert(signed(zero_extend(0xfffffff, 32)) == 268435455); assert(signed(zero_extend(0xfffffff0, 32)) == -16); assert(signed(zero_extend(0xfffffff1, 32)) == -15); assert(signed(zero_extend(0xfffffff2, 32)) == -14); assert(signed(zero_extend(0xfffffff3, 32)) == -13); assert(signed(zero_extend(0xfffffff4, 32)) == -12); assert(signed(zero_extend(0xfffffff5, 32)) == -11); assert(signed(zero_extend(0xfffffff6, 32)) == -10); assert(signed(zero_extend(0xfffffff7, 32)) == -9); assert(signed(zero_extend(0xfffffff8, 32)) == -8); assert(signed(zero_extend(0xfffffff9, 32)) == -7); assert(signed(zero_extend(0xfffffffa, 32)) == -6); assert(signed(zero_extend(0xfffffffb, 32)) == -5); assert(signed(zero_extend(0xfffffffc, 32)) == -4); assert(signed(zero_extend(0xfffffffd, 32)) == -3); assert(signed(zero_extend(0xfffffffe, 32)) == -2); assert(signed(zero_extend(0xffffffff, 32)) == -1); assert(signed(zero_extend(0x0, 64)) == 0); assert(signed(zero_extend(0x1, 64)) == 1); assert(signed(zero_extend(0x10, 64)) == 16); assert(signed(zero_extend(0x100, 64)) == 256); assert(signed(zero_extend(0x10000, 64)) == 65536); assert(signed(zero_extend(0x100000000, 64)) == 4294967296); assert(signed(zero_extend(0x100000000000, 64)) == 17592186044416); assert(signed(zero_extend(0x100000001, 64)) == 4294967297); assert(signed(zero_extend(0x10001, 64)) == 65537); assert(signed(zero_extend(0x1000100010001, 64)) == 281479271743489); assert(signed(zero_extend(0x101000, 64)) == 1052672); assert(signed(zero_extend(0x101220, 64)) == 1053216); assert(signed(zero_extend(0x102000, 64)) == 1056768); assert(signed(zero_extend(0x102220, 64)) == 1057312); assert(signed(zero_extend(0x104000, 64)) == 1064960); assert(signed(zero_extend(0x10400000, 64)) == 272629760); assert(signed(zero_extend(0x1040022c, 64)) == 272630316); assert(signed(zero_extend(0x10401220, 64)) == 272634400); assert(signed(zero_extend(0x10402220, 64)) == 272638496); assert(signed(zero_extend(0x10422c, 64)) == 1065516); assert(signed(zero_extend(0x104320, 64)) == 1065760); assert(signed(zero_extend(0x104368, 64)) == 1065832); assert(signed(zero_extend(0x104410, 64)) == 1066000); assert(signed(zero_extend(0x104418, 64)) == 1066008); assert(signed(zero_extend(0x104420, 64)) == 1066016); assert(signed(zero_extend(0x104428, 64)) == 1066024); assert(signed(zero_extend(0x104550, 64)) == 1066320); assert(signed(zero_extend(0x1045a0, 64)) == 1066400); assert(signed(zero_extend(0x1045b0, 64)) == 1066416); assert(signed(zero_extend(0x1045c0, 64)) == 1066432); assert(signed(zero_extend(0x104660, 64)) == 1066592); assert(signed(zero_extend(0x104670, 64)) == 1066608); assert(signed(zero_extend(0x104690, 64)) == 1066640); assert(signed(zero_extend(0x104730, 64)) == 1066800); assert(signed(zero_extend(0x104740, 64)) == 1066816); assert(signed(zero_extend(0x104750, 64)) == 1066832); assert(signed(zero_extend(0x10764c321, 64)) == 4419011361); assert(signed(zero_extend(0x108, 64)) == 264); assert(signed(zero_extend(0x11, 64)) == 17); assert(signed(zero_extend(0x110, 64)) == 272); assert(signed(zero_extend(0x11223344, 64)) == 287454020); assert(signed(zero_extend(0x1122334411223344, 64)) == 1234605615291183940); assert(signed(zero_extend(0x118, 64)) == 280); assert(signed(zero_extend(0x12, 64)) == 18); assert(signed(zero_extend(0x120, 64)) == 288); assert(signed(zero_extend(0x1200, 64)) == 4608); assert(signed(zero_extend(0x120005c, 64)) == 18874460); assert(signed(zero_extend(0x1200060, 64)) == 18874464); assert(signed(zero_extend(0x1200064, 64)) == 18874468); assert(signed(zero_extend(0x1220, 64)) == 4640); assert(signed(zero_extend(0x12200078, 64)) == 304087160); assert(signed(zero_extend(0x1220007c, 64)) == 304087164); assert(signed(zero_extend(0x12200080, 64)) == 304087168); assert(signed(zero_extend(0x1234, 64)) == 4660); assert(signed(zero_extend(0x12345678, 64)) == 305419896); assert(signed(zero_extend(0x123456789abcdef0, 64)) == 1311768467463790320); assert(signed(zero_extend(0x123456789abcdef1, 64)) == 1311768467463790321); assert(signed(zero_extend(0x123c, 64)) == 4668); assert(signed(zero_extend(0x12500054, 64)) == 307232852); assert(signed(zero_extend(0x1250006c, 64)) == 307232876); assert(signed(zero_extend(0x12500070, 64)) == 307232880); assert(signed(zero_extend(0x12600064, 64)) == 308281444); assert(signed(zero_extend(0x1260007c, 64)) == 308281468); assert(signed(zero_extend(0x12600080, 64)) == 308281472); assert(signed(zero_extend(0x13, 64)) == 19); assert(signed(zero_extend(0x1300368, 64)) == 19923816); assert(signed(zero_extend(0x130036c, 64)) == 19923820); assert(signed(zero_extend(0x1300370, 64)) == 19923824); assert(signed(zero_extend(0x13004b8, 64)) == 19924152); assert(signed(zero_extend(0x13004bc, 64)) == 19924156); assert(signed(zero_extend(0x13004c0, 64)) == 19924160); assert(signed(zero_extend(0x1300608, 64)) == 19924488); assert(signed(zero_extend(0x130060c, 64)) == 19924492); assert(signed(zero_extend(0x1300610, 64)) == 19924496); assert(signed(zero_extend(0x1300910, 64)) == 19925264); assert(signed(zero_extend(0x1300914, 64)) == 19925268); assert(signed(zero_extend(0x1300918, 64)) == 19925272); assert(signed(zero_extend(0x13f8754, 64)) == 20940628); assert(signed(zero_extend(0x13f8758, 64)) == 20940632); assert(signed(zero_extend(0x13f875c, 64)) == 20940636); assert(signed(zero_extend(0x13f88a4, 64)) == 20940964); assert(signed(zero_extend(0x13f88a8, 64)) == 20940968); assert(signed(zero_extend(0x13f88ac, 64)) == 20940972); assert(signed(zero_extend(0x14, 64)) == 20); assert(signed(zero_extend(0x140, 64)) == 320); assert(signed(zero_extend(0x14000ac, 64)) == 20971692); assert(signed(zero_extend(0x14000c0, 64)) == 20971712); assert(signed(zero_extend(0x14000c4, 64)) == 20971716); assert(signed(zero_extend(0x14000ec, 64)) == 20971756); assert(signed(zero_extend(0x1400100, 64)) == 20971776); assert(signed(zero_extend(0x1400104, 64)) == 20971780); assert(signed(zero_extend(0x140012c, 64)) == 20971820); assert(signed(zero_extend(0x140013c, 64)) == 20971836); assert(signed(zero_extend(0x1400140, 64)) == 20971840); assert(signed(zero_extend(0x1400178, 64)) == 20971896); assert(signed(zero_extend(0x1400190, 64)) == 20971920); assert(signed(zero_extend(0x1400194, 64)) == 20971924); assert(signed(zero_extend(0x14002dc, 64)) == 20972252); assert(signed(zero_extend(0x14002fc, 64)) == 20972284); assert(signed(zero_extend(0x1400300, 64)) == 20972288); assert(signed(zero_extend(0x1400348, 64)) == 20972360); assert(signed(zero_extend(0x1400368, 64)) == 20972392); assert(signed(zero_extend(0x140036c, 64)) == 20972396); assert(signed(zero_extend(0x1400438, 64)) == 20972600); assert(signed(zero_extend(0x1400454, 64)) == 20972628); assert(signed(zero_extend(0x1400458, 64)) == 20972632); assert(signed(zero_extend(0x140049c, 64)) == 20972700); assert(signed(zero_extend(0x14004b8, 64)) == 20972728); assert(signed(zero_extend(0x14004bc, 64)) == 20972732); assert(signed(zero_extend(0x1400588, 64)) == 20972936); assert(signed(zero_extend(0x14005a4, 64)) == 20972964); assert(signed(zero_extend(0x14005a8, 64)) == 20972968); assert(signed(zero_extend(0x14005ec, 64)) == 20973036); assert(signed(zero_extend(0x1400608, 64)) == 20973064); assert(signed(zero_extend(0x140060c, 64)) == 20973068); assert(signed(zero_extend(0x14006d8, 64)) == 20973272); assert(signed(zero_extend(0x14006f4, 64)) == 20973300); assert(signed(zero_extend(0x14006f8, 64)) == 20973304); assert(signed(zero_extend(0x1400738, 64)) == 20973368); assert(signed(zero_extend(0x1400754, 64)) == 20973396); assert(signed(zero_extend(0x1400758, 64)) == 20973400); assert(signed(zero_extend(0x1400824, 64)) == 20973604); assert(signed(zero_extend(0x1400840, 64)) == 20973632); assert(signed(zero_extend(0x1400844, 64)) == 20973636); assert(signed(zero_extend(0x1400888, 64)) == 20973704); assert(signed(zero_extend(0x14008a4, 64)) == 20973732); assert(signed(zero_extend(0x14008a8, 64)) == 20973736); assert(signed(zero_extend(0x14008f0, 64)) == 20973808); assert(signed(zero_extend(0x1400910, 64)) == 20973840); assert(signed(zero_extend(0x1400914, 64)) == 20973844); assert(signed(zero_extend(0x14086f0, 64)) == 21006064); assert(signed(zero_extend(0x14086f4, 64)) == 21006068); assert(signed(zero_extend(0x14086f8, 64)) == 21006072); assert(signed(zero_extend(0x140883c, 64)) == 21006396); assert(signed(zero_extend(0x1408840, 64)) == 21006400); assert(signed(zero_extend(0x1408844, 64)) == 21006404); assert(signed(zero_extend(0x148, 64)) == 328); assert(signed(zero_extend(0x15, 64)) == 21); assert(signed(zero_extend(0x150, 64)) == 336); assert(signed(zero_extend(0x15002f8, 64)) == 22020856); assert(signed(zero_extend(0x15002fc, 64)) == 22020860); assert(signed(zero_extend(0x1500300, 64)) == 22020864); assert(signed(zero_extend(0x1500450, 64)) == 22021200); assert(signed(zero_extend(0x1500454, 64)) == 22021204); assert(signed(zero_extend(0x1500458, 64)) == 22021208); assert(signed(zero_extend(0x15005a0, 64)) == 22021536); assert(signed(zero_extend(0x15005a4, 64)) == 22021540); assert(signed(zero_extend(0x15005a8, 64)) == 22021544); assert(signed(zero_extend(0x16, 64)) == 22); assert(signed(zero_extend(0x160, 64)) == 352); assert(signed(zero_extend(0x168, 64)) == 360); assert(signed(zero_extend(0x17, 64)) == 23); assert(signed(zero_extend(0x170, 64)) == 368); assert(signed(zero_extend(0x17ffe, 64)) == 98302); assert(signed(zero_extend(0x17fff, 64)) == 98303); assert(signed(zero_extend(0x17fffffff, 64)) == 6442450943); assert(signed(zero_extend(0x18, 64)) == 24); assert(signed(zero_extend(0x180, 64)) == 384); assert(signed(zero_extend(0x18000, 64)) == 98304); assert(signed(zero_extend(0x180000000, 64)) == 6442450944); assert(signed(zero_extend(0x18001, 64)) == 98305); assert(signed(zero_extend(0x18899aabb, 64)) == 6586739387); assert(signed(zero_extend(0x19, 64)) == 25); assert(signed(zero_extend(0x1a, 64)) == 26); assert(signed(zero_extend(0x1a0, 64)) == 416); assert(signed(zero_extend(0x1a600078, 64)) == 442499192); assert(signed(zero_extend(0x1a60007c, 64)) == 442499196); assert(signed(zero_extend(0x1a600080, 64)) == 442499200); assert(signed(zero_extend(0x1b, 64)) == 27); assert(signed(zero_extend(0x1c, 64)) == 28); assert(signed(zero_extend(0x1c0, 64)) == 448); assert(signed(zero_extend(0x1d, 64)) == 29); assert(signed(zero_extend(0x1e, 64)) == 30); assert(signed(zero_extend(0x1e0, 64)) == 480); assert(signed(zero_extend(0x1e0ac, 64)) == 123052); assert(signed(zero_extend(0x1e0ad, 64)) == 123053); assert(signed(zero_extend(0x1e0ae, 64)) == 123054); assert(signed(zero_extend(0x1e0af, 64)) == 123055); assert(signed(zero_extend(0x1e0b0, 64)) == 123056); assert(signed(zero_extend(0x1e0b1, 64)) == 123057); assert(signed(zero_extend(0x1e0b2, 64)) == 123058); assert(signed(zero_extend(0x1e0b3, 64)) == 123059); assert(signed(zero_extend(0x1e0b4, 64)) == 123060); assert(signed(zero_extend(0x1e0b5, 64)) == 123061); assert(signed(zero_extend(0x1e0b6, 64)) == 123062); assert(signed(zero_extend(0x1e0b7, 64)) == 123063); assert(signed(zero_extend(0x1e0b8, 64)) == 123064); assert(signed(zero_extend(0x1e0b9, 64)) == 123065); assert(signed(zero_extend(0x1e0ba, 64)) == 123066); assert(signed(zero_extend(0x1e0bb, 64)) == 123067); assert(signed(zero_extend(0x1e0bc, 64)) == 123068); assert(signed(zero_extend(0x1e0bd, 64)) == 123069); assert(signed(zero_extend(0x1e0be, 64)) == 123070); assert(signed(zero_extend(0x1e0bf, 64)) == 123071); assert(signed(zero_extend(0x1e0c0, 64)) == 123072); assert(signed(zero_extend(0x1e0c1, 64)) == 123073); assert(signed(zero_extend(0x1e0c2, 64)) == 123074); assert(signed(zero_extend(0x1e0c3, 64)) == 123075); assert(signed(zero_extend(0x1e0c4, 64)) == 123076); assert(signed(zero_extend(0x1e0c5, 64)) == 123077); assert(signed(zero_extend(0x1e0c6, 64)) == 123078); assert(signed(zero_extend(0x1e0ec, 64)) == 123116); assert(signed(zero_extend(0x1e0ed, 64)) == 123117); assert(signed(zero_extend(0x1e0ee, 64)) == 123118); assert(signed(zero_extend(0x1e0ef, 64)) == 123119); assert(signed(zero_extend(0x1e0f0, 64)) == 123120); assert(signed(zero_extend(0x1e0f1, 64)) == 123121); assert(signed(zero_extend(0x1e0f2, 64)) == 123122); assert(signed(zero_extend(0x1e0f3, 64)) == 123123); assert(signed(zero_extend(0x1e0f4, 64)) == 123124); assert(signed(zero_extend(0x1e0f5, 64)) == 123125); assert(signed(zero_extend(0x1e0f6, 64)) == 123126); assert(signed(zero_extend(0x1e0f7, 64)) == 123127); assert(signed(zero_extend(0x1e0f8, 64)) == 123128); assert(signed(zero_extend(0x1e0f9, 64)) == 123129); assert(signed(zero_extend(0x1e0fa, 64)) == 123130); assert(signed(zero_extend(0x1e0fb, 64)) == 123131); assert(signed(zero_extend(0x1e0fc, 64)) == 123132); assert(signed(zero_extend(0x1e0fd, 64)) == 123133); assert(signed(zero_extend(0x1e0fe, 64)) == 123134); assert(signed(zero_extend(0x1e0ff, 64)) == 123135); assert(signed(zero_extend(0x1e100, 64)) == 123136); assert(signed(zero_extend(0x1e101, 64)) == 123137); assert(signed(zero_extend(0x1e102, 64)) == 123138); assert(signed(zero_extend(0x1e103, 64)) == 123139); assert(signed(zero_extend(0x1e104, 64)) == 123140); assert(signed(zero_extend(0x1e105, 64)) == 123141); assert(signed(zero_extend(0x1e106, 64)) == 123142); assert(signed(zero_extend(0x1e107, 64)) == 123143); assert(signed(zero_extend(0x1e108, 64)) == 123144); assert(signed(zero_extend(0x1e109, 64)) == 123145); assert(signed(zero_extend(0x1e10a, 64)) == 123146); assert(signed(zero_extend(0x1e10b, 64)) == 123147); assert(signed(zero_extend(0x1e10c, 64)) == 123148); assert(signed(zero_extend(0x1e10d, 64)) == 123149); assert(signed(zero_extend(0x1e10e, 64)) == 123150); assert(signed(zero_extend(0x1e10f, 64)) == 123151); assert(signed(zero_extend(0x1e110, 64)) == 123152); assert(signed(zero_extend(0x1e111, 64)) == 123153); assert(signed(zero_extend(0x1e112, 64)) == 123154); assert(signed(zero_extend(0x1e113, 64)) == 123155); assert(signed(zero_extend(0x1e114, 64)) == 123156); assert(signed(zero_extend(0x1e115, 64)) == 123157); assert(signed(zero_extend(0x1e116, 64)) == 123158); assert(signed(zero_extend(0x1e117, 64)) == 123159); assert(signed(zero_extend(0x1e118, 64)) == 123160); assert(signed(zero_extend(0x1e119, 64)) == 123161); assert(signed(zero_extend(0x1e11a, 64)) == 123162); assert(signed(zero_extend(0x1e11b, 64)) == 123163); assert(signed(zero_extend(0x1e11c, 64)) == 123164); assert(signed(zero_extend(0x1e11d, 64)) == 123165); assert(signed(zero_extend(0x1e11e, 64)) == 123166); assert(signed(zero_extend(0x1e140, 64)) == 123200); assert(signed(zero_extend(0x1e141, 64)) == 123201); assert(signed(zero_extend(0x1e142, 64)) == 123202); assert(signed(zero_extend(0x1e143, 64)) == 123203); assert(signed(zero_extend(0x1e144, 64)) == 123204); assert(signed(zero_extend(0x1e145, 64)) == 123205); assert(signed(zero_extend(0x1e146, 64)) == 123206); assert(signed(zero_extend(0x1e147, 64)) == 123207); assert(signed(zero_extend(0x1e148, 64)) == 123208); assert(signed(zero_extend(0x1e149, 64)) == 123209); assert(signed(zero_extend(0x1e14a, 64)) == 123210); assert(signed(zero_extend(0x1e14b, 64)) == 123211); assert(signed(zero_extend(0x1e14c, 64)) == 123212); assert(signed(zero_extend(0x1e14d, 64)) == 123213); assert(signed(zero_extend(0x1e14e, 64)) == 123214); assert(signed(zero_extend(0x1e14f, 64)) == 123215); assert(signed(zero_extend(0x1e150, 64)) == 123216); assert(signed(zero_extend(0x1e151, 64)) == 123217); assert(signed(zero_extend(0x1e152, 64)) == 123218); assert(signed(zero_extend(0x1e153, 64)) == 123219); assert(signed(zero_extend(0x1e154, 64)) == 123220); assert(signed(zero_extend(0x1e155, 64)) == 123221); assert(signed(zero_extend(0x1e156, 64)) == 123222); assert(signed(zero_extend(0x1e157, 64)) == 123223); assert(signed(zero_extend(0x1e158, 64)) == 123224); assert(signed(zero_extend(0x1e159, 64)) == 123225); assert(signed(zero_extend(0x1e15a, 64)) == 123226); assert(signed(zero_extend(0x1e15b, 64)) == 123227); assert(signed(zero_extend(0x1e15c, 64)) == 123228); assert(signed(zero_extend(0x1e198, 64)) == 123288); assert(signed(zero_extend(0x1e199, 64)) == 123289); assert(signed(zero_extend(0x1e19a, 64)) == 123290); assert(signed(zero_extend(0x1e19b, 64)) == 123291); assert(signed(zero_extend(0x1e19c, 64)) == 123292); assert(signed(zero_extend(0x1e19d, 64)) == 123293); assert(signed(zero_extend(0x1e19e, 64)) == 123294); assert(signed(zero_extend(0x1e19f, 64)) == 123295); assert(signed(zero_extend(0x1e1a0, 64)) == 123296); assert(signed(zero_extend(0x1e1a1, 64)) == 123297); assert(signed(zero_extend(0x1e1a2, 64)) == 123298); assert(signed(zero_extend(0x1e1a3, 64)) == 123299); assert(signed(zero_extend(0x1e1a4, 64)) == 123300); assert(signed(zero_extend(0x1e1a5, 64)) == 123301); assert(signed(zero_extend(0x1e1a6, 64)) == 123302); assert(signed(zero_extend(0x1e1a7, 64)) == 123303); assert(signed(zero_extend(0x1e1a8, 64)) == 123304); assert(signed(zero_extend(0x1e1a9, 64)) == 123305); assert(signed(zero_extend(0x1e1aa, 64)) == 123306); assert(signed(zero_extend(0x1e1ab, 64)) == 123307); assert(signed(zero_extend(0x1e1ac, 64)) == 123308); assert(signed(zero_extend(0x1e1ad, 64)) == 123309); assert(signed(zero_extend(0x1e1ae, 64)) == 123310); assert(signed(zero_extend(0x1e1af, 64)) == 123311); assert(signed(zero_extend(0x1e1b0, 64)) == 123312); assert(signed(zero_extend(0x1ec24, 64)) == 125988); assert(signed(zero_extend(0x1ec25, 64)) == 125989); assert(signed(zero_extend(0x1ec26, 64)) == 125990); assert(signed(zero_extend(0x1ec27, 64)) == 125991); assert(signed(zero_extend(0x1ec28, 64)) == 125992); assert(signed(zero_extend(0x1ec29, 64)) == 125993); assert(signed(zero_extend(0x1ec2a, 64)) == 125994); assert(signed(zero_extend(0x1ec2b, 64)) == 125995); assert(signed(zero_extend(0x1ec2c, 64)) == 125996); assert(signed(zero_extend(0x1ec2d, 64)) == 125997); assert(signed(zero_extend(0x1ec2e, 64)) == 125998); assert(signed(zero_extend(0x1ec2f, 64)) == 125999); assert(signed(zero_extend(0x1ec30, 64)) == 126000); assert(signed(zero_extend(0x1ec31, 64)) == 126001); assert(signed(zero_extend(0x1ec32, 64)) == 126002); assert(signed(zero_extend(0x1ec33, 64)) == 126003); assert(signed(zero_extend(0x1ec34, 64)) == 126004); assert(signed(zero_extend(0x1ec35, 64)) == 126005); assert(signed(zero_extend(0x1ec36, 64)) == 126006); assert(signed(zero_extend(0x1ec37, 64)) == 126007); assert(signed(zero_extend(0x1ec38, 64)) == 126008); assert(signed(zero_extend(0x1ec39, 64)) == 126009); assert(signed(zero_extend(0x1ec3a, 64)) == 126010); assert(signed(zero_extend(0x1ec7c, 64)) == 126076); assert(signed(zero_extend(0x1ec7d, 64)) == 126077); assert(signed(zero_extend(0x1ec7e, 64)) == 126078); assert(signed(zero_extend(0x1ec7f, 64)) == 126079); assert(signed(zero_extend(0x1ec80, 64)) == 126080); assert(signed(zero_extend(0x1ec81, 64)) == 126081); assert(signed(zero_extend(0x1ec82, 64)) == 126082); assert(signed(zero_extend(0x1ec83, 64)) == 126083); assert(signed(zero_extend(0x1ec84, 64)) == 126084); assert(signed(zero_extend(0x1ec85, 64)) == 126085); assert(signed(zero_extend(0x1ec86, 64)) == 126086); assert(signed(zero_extend(0x1ec87, 64)) == 126087); assert(signed(zero_extend(0x1ec88, 64)) == 126088); assert(signed(zero_extend(0x1ec89, 64)) == 126089); assert(signed(zero_extend(0x1ec8a, 64)) == 126090); assert(signed(zero_extend(0x1ec8b, 64)) == 126091); assert(signed(zero_extend(0x1ec8c, 64)) == 126092); assert(signed(zero_extend(0x1ec8d, 64)) == 126093); assert(signed(zero_extend(0x1ec8e, 64)) == 126094); assert(signed(zero_extend(0x1ec8f, 64)) == 126095); assert(signed(zero_extend(0x1ec90, 64)) == 126096); assert(signed(zero_extend(0x1ec91, 64)) == 126097); assert(signed(zero_extend(0x1ec92, 64)) == 126098); assert(signed(zero_extend(0x1f, 64)) == 31); assert(signed(zero_extend(0x2, 64)) == 2); assert(signed(zero_extend(0x20, 64)) == 32); assert(signed(zero_extend(0x200, 64)) == 512); assert(signed(zero_extend(0x2000, 64)) == 8192); assert(signed(zero_extend(0x20000, 64)) == 131072); assert(signed(zero_extend(0x20000000, 64)) == 536870912); assert(signed(zero_extend(0x208, 64)) == 520); assert(signed(zero_extend(0x20800, 64)) == 133120); assert(signed(zero_extend(0x21, 64)) == 33); assert(signed(zero_extend(0x21750, 64)) == 137040); assert(signed(zero_extend(0x21751, 64)) == 137041); assert(signed(zero_extend(0x21752, 64)) == 137042); assert(signed(zero_extend(0x21753, 64)) == 137043); assert(signed(zero_extend(0x21754, 64)) == 137044); assert(signed(zero_extend(0x21755, 64)) == 137045); assert(signed(zero_extend(0x21756, 64)) == 137046); assert(signed(zero_extend(0x21757, 64)) == 137047); assert(signed(zero_extend(0x21758, 64)) == 137048); assert(signed(zero_extend(0x21759, 64)) == 137049); assert(signed(zero_extend(0x2175a, 64)) == 137050); assert(signed(zero_extend(0x2175b, 64)) == 137051); assert(signed(zero_extend(0x2175c, 64)) == 137052); assert(signed(zero_extend(0x2175d, 64)) == 137053); assert(signed(zero_extend(0x2175e, 64)) == 137054); assert(signed(zero_extend(0x2175f, 64)) == 137055); assert(signed(zero_extend(0x21760, 64)) == 137056); assert(signed(zero_extend(0x21761, 64)) == 137057); assert(signed(zero_extend(0x21764, 64)) == 137060); assert(signed(zero_extend(0x21765, 64)) == 137061); assert(signed(zero_extend(0x21766, 64)) == 137062); assert(signed(zero_extend(0x21767, 64)) == 137063); assert(signed(zero_extend(0x21768, 64)) == 137064); assert(signed(zero_extend(0x21769, 64)) == 137065); assert(signed(zero_extend(0x2176a, 64)) == 137066); assert(signed(zero_extend(0x217a8, 64)) == 137128); assert(signed(zero_extend(0x217a9, 64)) == 137129); assert(signed(zero_extend(0x217aa, 64)) == 137130); assert(signed(zero_extend(0x217ab, 64)) == 137131); assert(signed(zero_extend(0x217ac, 64)) == 137132); assert(signed(zero_extend(0x217ad, 64)) == 137133); assert(signed(zero_extend(0x217ae, 64)) == 137134); assert(signed(zero_extend(0x217af, 64)) == 137135); assert(signed(zero_extend(0x217b0, 64)) == 137136); assert(signed(zero_extend(0x217b1, 64)) == 137137); assert(signed(zero_extend(0x217b2, 64)) == 137138); assert(signed(zero_extend(0x217b3, 64)) == 137139); assert(signed(zero_extend(0x217b4, 64)) == 137140); assert(signed(zero_extend(0x217b5, 64)) == 137141); assert(signed(zero_extend(0x217b6, 64)) == 137142); assert(signed(zero_extend(0x217b7, 64)) == 137143); assert(signed(zero_extend(0x217b8, 64)) == 137144); assert(signed(zero_extend(0x217b9, 64)) == 137145); assert(signed(zero_extend(0x217bc, 64)) == 137148); assert(signed(zero_extend(0x217bd, 64)) == 137149); assert(signed(zero_extend(0x217be, 64)) == 137150); assert(signed(zero_extend(0x217bf, 64)) == 137151); assert(signed(zero_extend(0x217c0, 64)) == 137152); assert(signed(zero_extend(0x217c1, 64)) == 137153); assert(signed(zero_extend(0x217c2, 64)) == 137154); assert(signed(zero_extend(0x2196c, 64)) == 137580); assert(signed(zero_extend(0x2196d, 64)) == 137581); assert(signed(zero_extend(0x2196e, 64)) == 137582); assert(signed(zero_extend(0x2196f, 64)) == 137583); assert(signed(zero_extend(0x21970, 64)) == 137584); assert(signed(zero_extend(0x21971, 64)) == 137585); assert(signed(zero_extend(0x21972, 64)) == 137586); assert(signed(zero_extend(0x21973, 64)) == 137587); assert(signed(zero_extend(0x21974, 64)) == 137588); assert(signed(zero_extend(0x21975, 64)) == 137589); assert(signed(zero_extend(0x21976, 64)) == 137590); assert(signed(zero_extend(0x21977, 64)) == 137591); assert(signed(zero_extend(0x21978, 64)) == 137592); assert(signed(zero_extend(0x21979, 64)) == 137593); assert(signed(zero_extend(0x2197a, 64)) == 137594); assert(signed(zero_extend(0x2197b, 64)) == 137595); assert(signed(zero_extend(0x2197c, 64)) == 137596); assert(signed(zero_extend(0x2197d, 64)) == 137597); assert(signed(zero_extend(0x2197e, 64)) == 137598); assert(signed(zero_extend(0x2197f, 64)) == 137599); assert(signed(zero_extend(0x21980, 64)) == 137600); assert(signed(zero_extend(0x21981, 64)) == 137601); assert(signed(zero_extend(0x21982, 64)) == 137602); assert(signed(zero_extend(0x21983, 64)) == 137603); assert(signed(zero_extend(0x219c4, 64)) == 137668); assert(signed(zero_extend(0x219c5, 64)) == 137669); assert(signed(zero_extend(0x219c6, 64)) == 137670); assert(signed(zero_extend(0x219c7, 64)) == 137671); assert(signed(zero_extend(0x219c8, 64)) == 137672); assert(signed(zero_extend(0x219c9, 64)) == 137673); assert(signed(zero_extend(0x219ca, 64)) == 137674); assert(signed(zero_extend(0x219cb, 64)) == 137675); assert(signed(zero_extend(0x219cc, 64)) == 137676); assert(signed(zero_extend(0x219cd, 64)) == 137677); assert(signed(zero_extend(0x219ce, 64)) == 137678); assert(signed(zero_extend(0x219cf, 64)) == 137679); assert(signed(zero_extend(0x219d0, 64)) == 137680); assert(signed(zero_extend(0x219d1, 64)) == 137681); assert(signed(zero_extend(0x219d2, 64)) == 137682); assert(signed(zero_extend(0x219d3, 64)) == 137683); assert(signed(zero_extend(0x219d4, 64)) == 137684); assert(signed(zero_extend(0x219d5, 64)) == 137685); assert(signed(zero_extend(0x219d6, 64)) == 137686); assert(signed(zero_extend(0x219d7, 64)) == 137687); assert(signed(zero_extend(0x219d8, 64)) == 137688); assert(signed(zero_extend(0x219d9, 64)) == 137689); assert(signed(zero_extend(0x219da, 64)) == 137690); assert(signed(zero_extend(0x219db, 64)) == 137691); assert(signed(zero_extend(0x21a90, 64)) == 137872); assert(signed(zero_extend(0x21a91, 64)) == 137873); assert(signed(zero_extend(0x21a92, 64)) == 137874); assert(signed(zero_extend(0x21a93, 64)) == 137875); assert(signed(zero_extend(0x21a94, 64)) == 137876); assert(signed(zero_extend(0x21a95, 64)) == 137877); assert(signed(zero_extend(0x21a96, 64)) == 137878); assert(signed(zero_extend(0x21a97, 64)) == 137879); assert(signed(zero_extend(0x21a98, 64)) == 137880); assert(signed(zero_extend(0x21a99, 64)) == 137881); assert(signed(zero_extend(0x21a9a, 64)) == 137882); assert(signed(zero_extend(0x21a9b, 64)) == 137883); assert(signed(zero_extend(0x21a9c, 64)) == 137884); assert(signed(zero_extend(0x21a9d, 64)) == 137885); assert(signed(zero_extend(0x21a9e, 64)) == 137886); assert(signed(zero_extend(0x21a9f, 64)) == 137887); assert(signed(zero_extend(0x21aa0, 64)) == 137888); assert(signed(zero_extend(0x21aa1, 64)) == 137889); assert(signed(zero_extend(0x21aa2, 64)) == 137890); assert(signed(zero_extend(0x21aa3, 64)) == 137891); assert(signed(zero_extend(0x21aa4, 64)) == 137892); assert(signed(zero_extend(0x21aa5, 64)) == 137893); assert(signed(zero_extend(0x21aa6, 64)) == 137894); assert(signed(zero_extend(0x21aa7, 64)) == 137895); assert(signed(zero_extend(0x21aa8, 64)) == 137896); assert(signed(zero_extend(0x21aa9, 64)) == 137897); assert(signed(zero_extend(0x21aaa, 64)) == 137898); assert(signed(zero_extend(0x21ae8, 64)) == 137960); assert(signed(zero_extend(0x21ae9, 64)) == 137961); assert(signed(zero_extend(0x21aea, 64)) == 137962); assert(signed(zero_extend(0x21aeb, 64)) == 137963); assert(signed(zero_extend(0x21aec, 64)) == 137964); assert(signed(zero_extend(0x21aed, 64)) == 137965); assert(signed(zero_extend(0x21aee, 64)) == 137966); assert(signed(zero_extend(0x21aef, 64)) == 137967); assert(signed(zero_extend(0x21af0, 64)) == 137968); assert(signed(zero_extend(0x21af1, 64)) == 137969); assert(signed(zero_extend(0x21af2, 64)) == 137970); assert(signed(zero_extend(0x21af3, 64)) == 137971); assert(signed(zero_extend(0x21af4, 64)) == 137972); assert(signed(zero_extend(0x21af5, 64)) == 137973); assert(signed(zero_extend(0x21af6, 64)) == 137974); assert(signed(zero_extend(0x21af7, 64)) == 137975); assert(signed(zero_extend(0x21af8, 64)) == 137976); assert(signed(zero_extend(0x21af9, 64)) == 137977); assert(signed(zero_extend(0x21afa, 64)) == 137978); assert(signed(zero_extend(0x21afb, 64)) == 137979); assert(signed(zero_extend(0x21afc, 64)) == 137980); assert(signed(zero_extend(0x21afd, 64)) == 137981); assert(signed(zero_extend(0x21afe, 64)) == 137982); assert(signed(zero_extend(0x21aff, 64)) == 137983); assert(signed(zero_extend(0x21b00, 64)) == 137984); assert(signed(zero_extend(0x21b01, 64)) == 137985); assert(signed(zero_extend(0x21b02, 64)) == 137986); assert(signed(zero_extend(0x21d08, 64)) == 138504); assert(signed(zero_extend(0x21d09, 64)) == 138505); assert(signed(zero_extend(0x21d0a, 64)) == 138506); assert(signed(zero_extend(0x21d0b, 64)) == 138507); assert(signed(zero_extend(0x21d0c, 64)) == 138508); assert(signed(zero_extend(0x21d0d, 64)) == 138509); assert(signed(zero_extend(0x21d0e, 64)) == 138510); assert(signed(zero_extend(0x21d0f, 64)) == 138511); assert(signed(zero_extend(0x21d10, 64)) == 138512); assert(signed(zero_extend(0x21d11, 64)) == 138513); assert(signed(zero_extend(0x21d14, 64)) == 138516); assert(signed(zero_extend(0x21d15, 64)) == 138517); assert(signed(zero_extend(0x21d16, 64)) == 138518); assert(signed(zero_extend(0x21d17, 64)) == 138519); assert(signed(zero_extend(0x21d18, 64)) == 138520); assert(signed(zero_extend(0x21d19, 64)) == 138521); assert(signed(zero_extend(0x21d1a, 64)) == 138522); assert(signed(zero_extend(0x21d1b, 64)) == 138523); assert(signed(zero_extend(0x21d1c, 64)) == 138524); assert(signed(zero_extend(0x21d1d, 64)) == 138525); assert(signed(zero_extend(0x21d1e, 64)) == 138526); assert(signed(zero_extend(0x21d1f, 64)) == 138527); assert(signed(zero_extend(0x21d20, 64)) == 138528); assert(signed(zero_extend(0x21d21, 64)) == 138529); assert(signed(zero_extend(0x21d22, 64)) == 138530); assert(signed(zero_extend(0x21d23, 64)) == 138531); assert(signed(zero_extend(0x21d24, 64)) == 138532); assert(signed(zero_extend(0x21d25, 64)) == 138533); assert(signed(zero_extend(0x21d26, 64)) == 138534); assert(signed(zero_extend(0x21d27, 64)) == 138535); assert(signed(zero_extend(0x21d28, 64)) == 138536); assert(signed(zero_extend(0x21d29, 64)) == 138537); assert(signed(zero_extend(0x21d2a, 64)) == 138538); assert(signed(zero_extend(0x21d2b, 64)) == 138539); assert(signed(zero_extend(0x21d2c, 64)) == 138540); assert(signed(zero_extend(0x21d2d, 64)) == 138541); assert(signed(zero_extend(0x21d30, 64)) == 138544); assert(signed(zero_extend(0x21d31, 64)) == 138545); assert(signed(zero_extend(0x21d32, 64)) == 138546); assert(signed(zero_extend(0x21d33, 64)) == 138547); assert(signed(zero_extend(0x21d34, 64)) == 138548); assert(signed(zero_extend(0x21d35, 64)) == 138549); assert(signed(zero_extend(0x21d36, 64)) == 138550); assert(signed(zero_extend(0x21d37, 64)) == 138551); assert(signed(zero_extend(0x21d38, 64)) == 138552); assert(signed(zero_extend(0x21d39, 64)) == 138553); assert(signed(zero_extend(0x21d3c, 64)) == 138556); assert(signed(zero_extend(0x21d3d, 64)) == 138557); assert(signed(zero_extend(0x21d3e, 64)) == 138558); assert(signed(zero_extend(0x21d3f, 64)) == 138559); assert(signed(zero_extend(0x21d40, 64)) == 138560); assert(signed(zero_extend(0x21d41, 64)) == 138561); assert(signed(zero_extend(0x21d42, 64)) == 138562); assert(signed(zero_extend(0x21d43, 64)) == 138563); assert(signed(zero_extend(0x21d44, 64)) == 138564); assert(signed(zero_extend(0x21d45, 64)) == 138565); assert(signed(zero_extend(0x21d48, 64)) == 138568); assert(signed(zero_extend(0x21d49, 64)) == 138569); assert(signed(zero_extend(0x21d4a, 64)) == 138570); assert(signed(zero_extend(0x21d4b, 64)) == 138571); assert(signed(zero_extend(0x21d4c, 64)) == 138572); assert(signed(zero_extend(0x21d4d, 64)) == 138573); assert(signed(zero_extend(0x21d4e, 64)) == 138574); assert(signed(zero_extend(0x21d4f, 64)) == 138575); assert(signed(zero_extend(0x21d50, 64)) == 138576); assert(signed(zero_extend(0x21d51, 64)) == 138577); assert(signed(zero_extend(0x21d54, 64)) == 138580); assert(signed(zero_extend(0x21d55, 64)) == 138581); assert(signed(zero_extend(0x21d56, 64)) == 138582); assert(signed(zero_extend(0x21d57, 64)) == 138583); assert(signed(zero_extend(0x21d58, 64)) == 138584); assert(signed(zero_extend(0x21d59, 64)) == 138585); assert(signed(zero_extend(0x21d5a, 64)) == 138586); assert(signed(zero_extend(0x21d5b, 64)) == 138587); assert(signed(zero_extend(0x21d5c, 64)) == 138588); assert(signed(zero_extend(0x21d5d, 64)) == 138589); assert(signed(zero_extend(0x21d60, 64)) == 138592); assert(signed(zero_extend(0x21d61, 64)) == 138593); assert(signed(zero_extend(0x21d62, 64)) == 138594); assert(signed(zero_extend(0x21d63, 64)) == 138595); assert(signed(zero_extend(0x21d64, 64)) == 138596); assert(signed(zero_extend(0x21d65, 64)) == 138597); assert(signed(zero_extend(0x21d66, 64)) == 138598); assert(signed(zero_extend(0x21d67, 64)) == 138599); assert(signed(zero_extend(0x21d68, 64)) == 138600); assert(signed(zero_extend(0x21d69, 64)) == 138601); assert(signed(zero_extend(0x21d6c, 64)) == 138604); assert(signed(zero_extend(0x21d6d, 64)) == 138605); assert(signed(zero_extend(0x21d6e, 64)) == 138606); assert(signed(zero_extend(0x21d6f, 64)) == 138607); assert(signed(zero_extend(0x21d70, 64)) == 138608); assert(signed(zero_extend(0x21d71, 64)) == 138609); assert(signed(zero_extend(0x21d72, 64)) == 138610); assert(signed(zero_extend(0x21d73, 64)) == 138611); assert(signed(zero_extend(0x21d74, 64)) == 138612); assert(signed(zero_extend(0x21d75, 64)) == 138613); assert(signed(zero_extend(0x21d76, 64)) == 138614); assert(signed(zero_extend(0x21d77, 64)) == 138615); assert(signed(zero_extend(0x21d78, 64)) == 138616); assert(signed(zero_extend(0x21d79, 64)) == 138617); assert(signed(zero_extend(0x21d7a, 64)) == 138618); assert(signed(zero_extend(0x21d7b, 64)) == 138619); assert(signed(zero_extend(0x21d7c, 64)) == 138620); assert(signed(zero_extend(0x21d7d, 64)) == 138621); assert(signed(zero_extend(0x21d7e, 64)) == 138622); assert(signed(zero_extend(0x21d7f, 64)) == 138623); assert(signed(zero_extend(0x21d80, 64)) == 138624); assert(signed(zero_extend(0x21d81, 64)) == 138625); assert(signed(zero_extend(0x21d82, 64)) == 138626); assert(signed(zero_extend(0x21d83, 64)) == 138627); assert(signed(zero_extend(0x21d84, 64)) == 138628); assert(signed(zero_extend(0x21d85, 64)) == 138629); assert(signed(zero_extend(0x21d88, 64)) == 138632); assert(signed(zero_extend(0x21d89, 64)) == 138633); assert(signed(zero_extend(0x21d8a, 64)) == 138634); assert(signed(zero_extend(0x21d8b, 64)) == 138635); assert(signed(zero_extend(0x21d8c, 64)) == 138636); assert(signed(zero_extend(0x21d8d, 64)) == 138637); assert(signed(zero_extend(0x21d8e, 64)) == 138638); assert(signed(zero_extend(0x21d8f, 64)) == 138639); assert(signed(zero_extend(0x21d90, 64)) == 138640); assert(signed(zero_extend(0x21d91, 64)) == 138641); assert(signed(zero_extend(0x21d94, 64)) == 138644); assert(signed(zero_extend(0x21d95, 64)) == 138645); assert(signed(zero_extend(0x21d96, 64)) == 138646); assert(signed(zero_extend(0x21d97, 64)) == 138647); assert(signed(zero_extend(0x21d98, 64)) == 138648); assert(signed(zero_extend(0x21d99, 64)) == 138649); assert(signed(zero_extend(0x21d9a, 64)) == 138650); assert(signed(zero_extend(0x21d9b, 64)) == 138651); assert(signed(zero_extend(0x21d9c, 64)) == 138652); assert(signed(zero_extend(0x21d9d, 64)) == 138653); assert(signed(zero_extend(0x21da0, 64)) == 138656); assert(signed(zero_extend(0x21da1, 64)) == 138657); assert(signed(zero_extend(0x21da2, 64)) == 138658); assert(signed(zero_extend(0x21da3, 64)) == 138659); assert(signed(zero_extend(0x21da4, 64)) == 138660); assert(signed(zero_extend(0x21da5, 64)) == 138661); assert(signed(zero_extend(0x21da6, 64)) == 138662); assert(signed(zero_extend(0x21da7, 64)) == 138663); assert(signed(zero_extend(0x21da8, 64)) == 138664); assert(signed(zero_extend(0x21da9, 64)) == 138665); assert(signed(zero_extend(0x21dac, 64)) == 138668); assert(signed(zero_extend(0x21dad, 64)) == 138669); assert(signed(zero_extend(0x21dae, 64)) == 138670); assert(signed(zero_extend(0x21daf, 64)) == 138671); assert(signed(zero_extend(0x21db0, 64)) == 138672); assert(signed(zero_extend(0x21db1, 64)) == 138673); assert(signed(zero_extend(0x21db2, 64)) == 138674); assert(signed(zero_extend(0x21db3, 64)) == 138675); assert(signed(zero_extend(0x21db4, 64)) == 138676); assert(signed(zero_extend(0x21db5, 64)) == 138677); assert(signed(zero_extend(0x22, 64)) == 34); assert(signed(zero_extend(0x220, 64)) == 544); assert(signed(zero_extend(0x2200, 64)) == 8704); assert(signed(zero_extend(0x22000, 64)) == 139264); assert(signed(zero_extend(0x22088, 64)) == 139400); assert(signed(zero_extend(0x220e0, 64)) == 139488); assert(signed(zero_extend(0x2220, 64)) == 8736); assert(signed(zero_extend(0x2222222222222223, 64)) == 2459565876494606883); assert(signed(zero_extend(0x223c, 64)) == 8764); assert(signed(zero_extend(0x22c, 64)) == 556); assert(signed(zero_extend(0x23, 64)) == 35); assert(signed(zero_extend(0x235e0, 64)) == 144864); assert(signed(zero_extend(0x235e1, 64)) == 144865); assert(signed(zero_extend(0x235e2, 64)) == 144866); assert(signed(zero_extend(0x235e3, 64)) == 144867); assert(signed(zero_extend(0x235e4, 64)) == 144868); assert(signed(zero_extend(0x235e5, 64)) == 144869); assert(signed(zero_extend(0x235e6, 64)) == 144870); assert(signed(zero_extend(0x235e7, 64)) == 144871); assert(signed(zero_extend(0x235e8, 64)) == 144872); assert(signed(zero_extend(0x235e9, 64)) == 144873); assert(signed(zero_extend(0x235ea, 64)) == 144874); assert(signed(zero_extend(0x235eb, 64)) == 144875); assert(signed(zero_extend(0x235ec, 64)) == 144876); assert(signed(zero_extend(0x235ed, 64)) == 144877); assert(signed(zero_extend(0x235ee, 64)) == 144878); assert(signed(zero_extend(0x235ef, 64)) == 144879); assert(signed(zero_extend(0x235f0, 64)) == 144880); assert(signed(zero_extend(0x235f1, 64)) == 144881); assert(signed(zero_extend(0x235f2, 64)) == 144882); assert(signed(zero_extend(0x235f3, 64)) == 144883); assert(signed(zero_extend(0x235f4, 64)) == 144884); assert(signed(zero_extend(0x235f5, 64)) == 144885); assert(signed(zero_extend(0x235f6, 64)) == 144886); assert(signed(zero_extend(0x235f7, 64)) == 144887); assert(signed(zero_extend(0x235f8, 64)) == 144888); assert(signed(zero_extend(0x23638, 64)) == 144952); assert(signed(zero_extend(0x23639, 64)) == 144953); assert(signed(zero_extend(0x2363a, 64)) == 144954); assert(signed(zero_extend(0x2363b, 64)) == 144955); assert(signed(zero_extend(0x2363c, 64)) == 144956); assert(signed(zero_extend(0x2363d, 64)) == 144957); assert(signed(zero_extend(0x2363e, 64)) == 144958); assert(signed(zero_extend(0x2363f, 64)) == 144959); assert(signed(zero_extend(0x23640, 64)) == 144960); assert(signed(zero_extend(0x23641, 64)) == 144961); assert(signed(zero_extend(0x23642, 64)) == 144962); assert(signed(zero_extend(0x23643, 64)) == 144963); assert(signed(zero_extend(0x23644, 64)) == 144964); assert(signed(zero_extend(0x23645, 64)) == 144965); assert(signed(zero_extend(0x23646, 64)) == 144966); assert(signed(zero_extend(0x23647, 64)) == 144967); assert(signed(zero_extend(0x23648, 64)) == 144968); assert(signed(zero_extend(0x23649, 64)) == 144969); assert(signed(zero_extend(0x2364a, 64)) == 144970); assert(signed(zero_extend(0x2364b, 64)) == 144971); assert(signed(zero_extend(0x2364c, 64)) == 144972); assert(signed(zero_extend(0x2364d, 64)) == 144973); assert(signed(zero_extend(0x2364e, 64)) == 144974); assert(signed(zero_extend(0x2364f, 64)) == 144975); assert(signed(zero_extend(0x23650, 64)) == 144976); assert(signed(zero_extend(0x24, 64)) == 36); assert(signed(zero_extend(0x24c, 64)) == 588); assert(signed(zero_extend(0x25, 64)) == 37); assert(signed(zero_extend(0x26, 64)) == 38); assert(signed(zero_extend(0x27, 64)) == 39); assert(signed(zero_extend(0x270, 64)) == 624); assert(signed(zero_extend(0x28, 64)) == 40); assert(signed(zero_extend(0x288, 64)) == 648); assert(signed(zero_extend(0x29, 64)) == 41); assert(signed(zero_extend(0x2a, 64)) == 42); assert(signed(zero_extend(0x2b, 64)) == 43); assert(signed(zero_extend(0x2c, 64)) == 44); assert(signed(zero_extend(0x2c000, 64)) == 180224); assert(signed(zero_extend(0x2d, 64)) == 45); assert(signed(zero_extend(0x2e, 64)) == 46); assert(signed(zero_extend(0x2eb0000, 64)) == 48955392); assert(signed(zero_extend(0x2ec0000, 64)) == 49020928); assert(signed(zero_extend(0x2ee0000, 64)) == 49152000); assert(signed(zero_extend(0x2ef0000, 64)) == 49217536); assert(signed(zero_extend(0x2ef0040, 64)) == 49217600); assert(signed(zero_extend(0x2f, 64)) == 47); assert(signed(zero_extend(0x2f0, 64)) == 752); assert(signed(zero_extend(0x2f00000, 64)) == 49283072); assert(signed(zero_extend(0x2f00008, 64)) == 49283080); assert(signed(zero_extend(0x2f00018, 64)) == 49283096); assert(signed(zero_extend(0x2f00200, 64)) == 49283584); assert(signed(zero_extend(0x2f00538, 64)) == 49284408); assert(signed(zero_extend(0x2f10000, 64)) == 49348608); assert(signed(zero_extend(0x2f10800, 64)) == 49350656); assert(signed(zero_extend(0x2f40000, 64)) == 49545216); assert(signed(zero_extend(0x2f50000, 64)) == 49610752); assert(signed(zero_extend(0x2f50040, 64)) == 49610816); assert(signed(zero_extend(0x2f60000, 64)) == 49676288); assert(signed(zero_extend(0x2f60200, 64)) == 49676800); assert(signed(zero_extend(0x2f70000, 64)) == 49741824); assert(signed(zero_extend(0x2f70800, 64)) == 49743872); assert(signed(zero_extend(0x3, 64)) == 3); assert(signed(zero_extend(0x30, 64)) == 48); assert(signed(zero_extend(0x3000, 64)) == 12288); assert(signed(zero_extend(0x30000, 64)) == 196608); assert(signed(zero_extend(0x300001c, 64)) == 50331676); assert(signed(zero_extend(0x3000020, 64)) == 50331680); assert(signed(zero_extend(0x3000024, 64)) == 50331684); assert(signed(zero_extend(0x3000054, 64)) == 50331732); assert(signed(zero_extend(0x3000058, 64)) == 50331736); assert(signed(zero_extend(0x300005c, 64)) == 50331740); assert(signed(zero_extend(0x3000068, 64)) == 50331752); assert(signed(zero_extend(0x30000c4, 64)) == 50331844); assert(signed(zero_extend(0x30000c8, 64)) == 50331848); assert(signed(zero_extend(0x30000cc, 64)) == 50331852); assert(signed(zero_extend(0x3000288, 64)) == 50332296); assert(signed(zero_extend(0x30002a0, 64)) == 50332320); assert(signed(zero_extend(0x3006b10, 64)) == 50359056); assert(signed(zero_extend(0x3006b1c, 64)) == 50359068); assert(signed(zero_extend(0x3006e40, 64)) == 50359872); assert(signed(zero_extend(0x3008d20, 64)) == 50367776); assert(signed(zero_extend(0x3008d30, 64)) == 50367792); assert(signed(zero_extend(0x3008d40, 64)) == 50367808); assert(signed(zero_extend(0x3008d50, 64)) == 50367824); assert(signed(zero_extend(0x3008d60, 64)) == 50367840); assert(signed(zero_extend(0x3008d70, 64)) == 50367856); assert(signed(zero_extend(0x3008d80, 64)) == 50367872); assert(signed(zero_extend(0x3008d90, 64)) == 50367888); assert(signed(zero_extend(0x3008d98, 64)) == 50367896); assert(signed(zero_extend(0x3008da0, 64)) == 50367904); assert(signed(zero_extend(0x3008db0, 64)) == 50367920); assert(signed(zero_extend(0x3008db8, 64)) == 50367928); assert(signed(zero_extend(0x3008dc0, 64)) == 50367936); assert(signed(zero_extend(0x3008dc8, 64)) == 50367944); assert(signed(zero_extend(0x3008dd0, 64)) == 50367952); assert(signed(zero_extend(0x3008de0, 64)) == 50367968); assert(signed(zero_extend(0x3008de8, 64)) == 50367976); assert(signed(zero_extend(0x3008df0, 64)) == 50367984); assert(signed(zero_extend(0x3008df8, 64)) == 50367992); assert(signed(zero_extend(0x3008e00, 64)) == 50368000); assert(signed(zero_extend(0x3008e10, 64)) == 50368016); assert(signed(zero_extend(0x3008e20, 64)) == 50368032); assert(signed(zero_extend(0x3008e28, 64)) == 50368040); assert(signed(zero_extend(0x3008e30, 64)) == 50368048); assert(signed(zero_extend(0x3008e40, 64)) == 50368064); assert(signed(zero_extend(0x3010e40, 64)) == 50400832); assert(signed(zero_extend(0x30e0000, 64)) == 51249152); assert(signed(zero_extend(0x30f0000, 64)) == 51314688); assert(signed(zero_extend(0x31, 64)) == 49); assert(signed(zero_extend(0x3100000, 64)) == 51380224); assert(signed(zero_extend(0x3100040, 64)) == 51380288); assert(signed(zero_extend(0x3110000, 64)) == 51445760); assert(signed(zero_extend(0x3110208, 64)) == 51446280); assert(signed(zero_extend(0x3120000, 64)) == 51511296); assert(signed(zero_extend(0x3120800, 64)) == 51513344); assert(signed(zero_extend(0x31d0000, 64)) == 52232192); assert(signed(zero_extend(0x31d0200, 64)) == 52232704); assert(signed(zero_extend(0x31d0208, 64)) == 52232712); assert(signed(zero_extend(0x31d02f0, 64)) == 52232944); assert(signed(zero_extend(0x31d02f8, 64)) == 52232952); assert(signed(zero_extend(0x31d0300, 64)) == 52232960); assert(signed(zero_extend(0x31d0308, 64)) == 52232968); assert(signed(zero_extend(0x31d0318, 64)) == 52232984); assert(signed(zero_extend(0x31d0320, 64)) == 52232992); assert(signed(zero_extend(0x31d0328, 64)) == 52233000); assert(signed(zero_extend(0x31d04d0, 64)) == 52233424); assert(signed(zero_extend(0x31d04d8, 64)) == 52233432); assert(signed(zero_extend(0x31d04e4, 64)) == 52233444); assert(signed(zero_extend(0x31d04ec, 64)) == 52233452); assert(signed(zero_extend(0x31d04f8, 64)) == 52233464); assert(signed(zero_extend(0x31d0500, 64)) == 52233472); assert(signed(zero_extend(0x31d050c, 64)) == 52233484); assert(signed(zero_extend(0x31d0518, 64)) == 52233496); assert(signed(zero_extend(0x31d0524, 64)) == 52233508); assert(signed(zero_extend(0x31d052c, 64)) == 52233516); assert(signed(zero_extend(0x31d0538, 64)) == 52233528); assert(signed(zero_extend(0x31d0540, 64)) == 52233536); assert(signed(zero_extend(0x31d054c, 64)) == 52233548); assert(signed(zero_extend(0x31d0554, 64)) == 52233556); assert(signed(zero_extend(0x31d0560, 64)) == 52233568); assert(signed(zero_extend(0x31d0568, 64)) == 52233576); assert(signed(zero_extend(0x31d0584, 64)) == 52233604); assert(signed(zero_extend(0x31d058c, 64)) == 52233612); assert(signed(zero_extend(0x31d0598, 64)) == 52233624); assert(signed(zero_extend(0x31d05a0, 64)) == 52233632); assert(signed(zero_extend(0x31d05ac, 64)) == 52233644); assert(signed(zero_extend(0x31d05b4, 64)) == 52233652); assert(signed(zero_extend(0x31d05c0, 64)) == 52233664); assert(signed(zero_extend(0x31d05c8, 64)) == 52233672); assert(signed(zero_extend(0x31d05d4, 64)) == 52233684); assert(signed(zero_extend(0x31d05dc, 64)) == 52233692); assert(signed(zero_extend(0x31d05e8, 64)) == 52233704); assert(signed(zero_extend(0x31d05f0, 64)) == 52233712); assert(signed(zero_extend(0x31d05fc, 64)) == 52233724); assert(signed(zero_extend(0x31d0604, 64)) == 52233732); assert(signed(zero_extend(0x31d0610, 64)) == 52233744); assert(signed(zero_extend(0x31d0618, 64)) == 52233752); assert(signed(zero_extend(0x31d0624, 64)) == 52233764); assert(signed(zero_extend(0x31d062c, 64)) == 52233772); assert(signed(zero_extend(0x31d0638, 64)) == 52233784); assert(signed(zero_extend(0x31d0640, 64)) == 52233792); assert(signed(zero_extend(0x31d064c, 64)) == 52233804); assert(signed(zero_extend(0x31d0654, 64)) == 52233812); assert(signed(zero_extend(0x31d0660, 64)) == 52233824); assert(signed(zero_extend(0x31d0668, 64)) == 52233832); assert(signed(zero_extend(0x31d0674, 64)) == 52233844); assert(signed(zero_extend(0x31d067c, 64)) == 52233852); assert(signed(zero_extend(0x31d0688, 64)) == 52233864); assert(signed(zero_extend(0x31d0690, 64)) == 52233872); assert(signed(zero_extend(0x31d06b0, 64)) == 52233904); assert(signed(zero_extend(0x31d06b8, 64)) == 52233912); assert(signed(zero_extend(0x31d06c4, 64)) == 52233924); assert(signed(zero_extend(0x31d06cc, 64)) == 52233932); assert(signed(zero_extend(0x31d06d8, 64)) == 52233944); assert(signed(zero_extend(0x31d06e0, 64)) == 52233952); assert(signed(zero_extend(0x31d0700, 64)) == 52233984); assert(signed(zero_extend(0x31d0708, 64)) == 52233992); assert(signed(zero_extend(0x31d0714, 64)) == 52234004); assert(signed(zero_extend(0x31d071c, 64)) == 52234012); assert(signed(zero_extend(0x31d073c, 64)) == 52234044); assert(signed(zero_extend(0x31d0744, 64)) == 52234052); assert(signed(zero_extend(0x31d0750, 64)) == 52234064); assert(signed(zero_extend(0x31d0758, 64)) == 52234072); assert(signed(zero_extend(0x31d0764, 64)) == 52234084); assert(signed(zero_extend(0x31d076c, 64)) == 52234092); assert(signed(zero_extend(0x31d0780, 64)) == 52234112); assert(signed(zero_extend(0x31d0788, 64)) == 52234120); assert(signed(zero_extend(0x31d1398, 64)) == 52237208); assert(signed(zero_extend(0x31d13b8, 64)) == 52237240); assert(signed(zero_extend(0x31d13d8, 64)) == 52237272); assert(signed(zero_extend(0x31d13f8, 64)) == 52237304); assert(signed(zero_extend(0x31d1418, 64)) == 52237336); assert(signed(zero_extend(0x31d1438, 64)) == 52237368); assert(signed(zero_extend(0x31d1458, 64)) == 52237400); assert(signed(zero_extend(0x31d1478, 64)) == 52237432); assert(signed(zero_extend(0x31d1498, 64)) == 52237464); assert(signed(zero_extend(0x31d14b8, 64)) == 52237496); assert(signed(zero_extend(0x31d14d8, 64)) == 52237528); assert(signed(zero_extend(0x31d14f8, 64)) == 52237560); assert(signed(zero_extend(0x31d1518, 64)) == 52237592); assert(signed(zero_extend(0x31d1538, 64)) == 52237624); assert(signed(zero_extend(0x31d1558, 64)) == 52237656); assert(signed(zero_extend(0x31d1578, 64)) == 52237688); assert(signed(zero_extend(0x31d1598, 64)) == 52237720); assert(signed(zero_extend(0x31d15b8, 64)) == 52237752); assert(signed(zero_extend(0x31d15d8, 64)) == 52237784); assert(signed(zero_extend(0x31d15f8, 64)) == 52237816); assert(signed(zero_extend(0x31d1618, 64)) == 52237848); assert(signed(zero_extend(0x31d1638, 64)) == 52237880); assert(signed(zero_extend(0x31d1658, 64)) == 52237912); assert(signed(zero_extend(0x31d1678, 64)) == 52237944); assert(signed(zero_extend(0x31d1698, 64)) == 52237976); assert(signed(zero_extend(0x31d16b8, 64)) == 52238008); assert(signed(zero_extend(0x31d16d8, 64)) == 52238040); assert(signed(zero_extend(0x31d16f8, 64)) == 52238072); assert(signed(zero_extend(0x31d1718, 64)) == 52238104); assert(signed(zero_extend(0x31d1738, 64)) == 52238136); assert(signed(zero_extend(0x31d1758, 64)) == 52238168); assert(signed(zero_extend(0x31d1780, 64)) == 52238208); assert(signed(zero_extend(0x31d17d0, 64)) == 52238288); assert(signed(zero_extend(0x31d17e0, 64)) == 52238304); assert(signed(zero_extend(0x31d17f0, 64)) == 52238320); assert(signed(zero_extend(0x31d1890, 64)) == 52238480); assert(signed(zero_extend(0x31d18a0, 64)) == 52238496); assert(signed(zero_extend(0x31d18c0, 64)) == 52238528); assert(signed(zero_extend(0x31d1920, 64)) == 52238624); assert(signed(zero_extend(0x31d1938, 64)) == 52238648); assert(signed(zero_extend(0x31d1950, 64)) == 52238672); assert(signed(zero_extend(0x31d1960, 64)) == 52238688); assert(signed(zero_extend(0x31d1968, 64)) == 52238696); assert(signed(zero_extend(0x31d1970, 64)) == 52238704); assert(signed(zero_extend(0x31d1980, 64)) == 52238720); assert(signed(zero_extend(0x32, 64)) == 50); assert(signed(zero_extend(0x320, 64)) == 800); assert(signed(zero_extend(0x33, 64)) == 51); assert(signed(zero_extend(0x34, 64)) == 52); assert(signed(zero_extend(0x34000, 64)) == 212992); assert(signed(zero_extend(0x34040, 64)) == 213056); assert(signed(zero_extend(0x35, 64)) == 53); assert(signed(zero_extend(0x36, 64)) == 54); assert(signed(zero_extend(0x368, 64)) == 872); assert(signed(zero_extend(0x37, 64)) == 55); assert(signed(zero_extend(0x38, 64)) == 56); assert(signed(zero_extend(0x3800000, 64)) == 58720256); assert(signed(zero_extend(0x380000a, 64)) == 58720266); assert(signed(zero_extend(0x3800010, 64)) == 58720272); assert(signed(zero_extend(0x3800038, 64)) == 58720312); assert(signed(zero_extend(0x380003a, 64)) == 58720314); assert(signed(zero_extend(0x380004b, 64)) == 58720331); assert(signed(zero_extend(0x3800060, 64)) == 58720352); assert(signed(zero_extend(0x38002c0, 64)) == 58720960); assert(signed(zero_extend(0x38002f8, 64)) == 58721016); assert(signed(zero_extend(0x3800310, 64)) == 58721040); assert(signed(zero_extend(0x3800330, 64)) == 58721072); assert(signed(zero_extend(0x3800338, 64)) == 58721080); assert(signed(zero_extend(0x3800350, 64)) == 58721104); assert(signed(zero_extend(0x3800360, 64)) == 58721120); assert(signed(zero_extend(0x38003a0, 64)) == 58721184); assert(signed(zero_extend(0x38003b0, 64)) == 58721200); assert(signed(zero_extend(0x38003c0, 64)) == 58721216); assert(signed(zero_extend(0x38003d0, 64)) == 58721232); assert(signed(zero_extend(0x38003e0, 64)) == 58721248); assert(signed(zero_extend(0x38003f0, 64)) == 58721264); assert(signed(zero_extend(0x38003f8, 64)) == 58721272); assert(signed(zero_extend(0x3800410, 64)) == 58721296); assert(signed(zero_extend(0x3800420, 64)) == 58721312); assert(signed(zero_extend(0x3800430, 64)) == 58721328); assert(signed(zero_extend(0x3800440, 64)) == 58721344); assert(signed(zero_extend(0x3800448, 64)) == 58721352); assert(signed(zero_extend(0x3800450, 64)) == 58721360); assert(signed(zero_extend(0x3800460, 64)) == 58721376); assert(signed(zero_extend(0x3808060, 64)) == 58753120); assert(signed(zero_extend(0x3808064, 64)) == 58753124); assert(signed(zero_extend(0x3808068, 64)) == 58753128); assert(signed(zero_extend(0x3808070, 64)) == 58753136); assert(signed(zero_extend(0x3808078, 64)) == 58753144); assert(signed(zero_extend(0x3808080, 64)) == 58753152); assert(signed(zero_extend(0x3808140, 64)) == 58753344); assert(signed(zero_extend(0x3808258, 64)) == 58753624); assert(signed(zero_extend(0x3808a00, 64)) == 58755584); assert(signed(zero_extend(0x3808a04, 64)) == 58755588); assert(signed(zero_extend(0x3808a08, 64)) == 58755592); assert(signed(zero_extend(0x3808a10, 64)) == 58755600); assert(signed(zero_extend(0x3808a18, 64)) == 58755608); assert(signed(zero_extend(0x3808a20, 64)) == 58755616); assert(signed(zero_extend(0x3808a70, 64)) == 58755696); assert(signed(zero_extend(0x3808a78, 64)) == 58755704); assert(signed(zero_extend(0x3808b78, 64)) == 58755960); assert(signed(zero_extend(0x3808b80, 64)) == 58755968); assert(signed(zero_extend(0x380d000, 64)) == 58773504); assert(signed(zero_extend(0x380d610, 64)) == 58775056); assert(signed(zero_extend(0x380d880, 64)) == 58775680); assert(signed(zero_extend(0x380d8c0, 64)) == 58775744); assert(signed(zero_extend(0x380d8d0, 64)) == 58775760); assert(signed(zero_extend(0x380d8e0, 64)) == 58775776); assert(signed(zero_extend(0x380d8e8, 64)) == 58775784); assert(signed(zero_extend(0x380d8f0, 64)) == 58775792); assert(signed(zero_extend(0x380d900, 64)) == 58775808); assert(signed(zero_extend(0x380d910, 64)) == 58775824); assert(signed(zero_extend(0x380d960, 64)) == 58775904); assert(signed(zero_extend(0x380d970, 64)) == 58775920); assert(signed(zero_extend(0x380d980, 64)) == 58775936); assert(signed(zero_extend(0x380d990, 64)) == 58775952); assert(signed(zero_extend(0x380d9a0, 64)) == 58775968); assert(signed(zero_extend(0x380d9b0, 64)) == 58775984); assert(signed(zero_extend(0x380d9b8, 64)) == 58775992); assert(signed(zero_extend(0x380d9d0, 64)) == 58776016); assert(signed(zero_extend(0x380d9e0, 64)) == 58776032); assert(signed(zero_extend(0x380d9f0, 64)) == 58776048); assert(signed(zero_extend(0x380da00, 64)) == 58776064); assert(signed(zero_extend(0x380da10, 64)) == 58776080); assert(signed(zero_extend(0x3811610, 64)) == 58791440); assert(signed(zero_extend(0x3813610, 64)) == 58799632); assert(signed(zero_extend(0x3815610, 64)) == 58807824); assert(signed(zero_extend(0x3815618, 64)) == 58807832); assert(signed(zero_extend(0x3815624, 64)) == 58807844); assert(signed(zero_extend(0x3815628, 64)) == 58807848); assert(signed(zero_extend(0x3815630, 64)) == 58807856); assert(signed(zero_extend(0x3815638, 64)) == 58807864); assert(signed(zero_extend(0x381563c, 64)) == 58807868); assert(signed(zero_extend(0x3815640, 64)) == 58807872); assert(signed(zero_extend(0x3815648, 64)) == 58807880); assert(signed(zero_extend(0x3815650, 64)) == 58807888); assert(signed(zero_extend(0x3815658, 64)) == 58807896); assert(signed(zero_extend(0x3815668, 64)) == 58807912); assert(signed(zero_extend(0x3815670, 64)) == 58807920); assert(signed(zero_extend(0x3815678, 64)) == 58807928); assert(signed(zero_extend(0x3815778, 64)) == 58808184); assert(signed(zero_extend(0x3815780, 64)) == 58808192); assert(signed(zero_extend(0x3815b50, 64)) == 58809168); assert(signed(zero_extend(0x3815b58, 64)) == 58809176); assert(signed(zero_extend(0x3815c58, 64)) == 58809432); assert(signed(zero_extend(0x3815c60, 64)) == 58809440); assert(signed(zero_extend(0x3815d80, 64)) == 58809728); assert(signed(zero_extend(0x3817d80, 64)) == 58817920); assert(signed(zero_extend(0x3819d80, 64)) == 58826112); assert(signed(zero_extend(0x3819d84, 64)) == 58826116); assert(signed(zero_extend(0x3819d88, 64)) == 58826120); assert(signed(zero_extend(0x3819d8c, 64)) == 58826124); assert(signed(zero_extend(0x3819d90, 64)) == 58826128); assert(signed(zero_extend(0x3819d98, 64)) == 58826136); assert(signed(zero_extend(0x3819da0, 64)) == 58826144); assert(signed(zero_extend(0x3819da8, 64)) == 58826152); assert(signed(zero_extend(0x3819db8, 64)) == 58826168); assert(signed(zero_extend(0x3819dc0, 64)) == 58826176); assert(signed(zero_extend(0x3819dc8, 64)) == 58826184); assert(signed(zero_extend(0x3819ed0, 64)) == 58826448); assert(signed(zero_extend(0x381a000, 64)) == 58826752); assert(signed(zero_extend(0x381a280, 64)) == 58827392); assert(signed(zero_extend(0x381a284, 64)) == 58827396); assert(signed(zero_extend(0x381a288, 64)) == 58827400); assert(signed(zero_extend(0x381a28c, 64)) == 58827404); assert(signed(zero_extend(0x381a290, 64)) == 58827408); assert(signed(zero_extend(0x381a298, 64)) == 58827416); assert(signed(zero_extend(0x381a2a0, 64)) == 58827424); assert(signed(zero_extend(0x381a2a8, 64)) == 58827432); assert(signed(zero_extend(0x381a2b8, 64)) == 58827448); assert(signed(zero_extend(0x381a2c0, 64)) == 58827456); assert(signed(zero_extend(0x381a2c8, 64)) == 58827464); assert(signed(zero_extend(0x381a3c8, 64)) == 58827720); assert(signed(zero_extend(0x381a3d0, 64)) == 58827728); assert(signed(zero_extend(0x381a780, 64)) == 58828672); assert(signed(zero_extend(0x381a784, 64)) == 58828676); assert(signed(zero_extend(0x381a788, 64)) == 58828680); assert(signed(zero_extend(0x381a790, 64)) == 58828688); assert(signed(zero_extend(0x381a798, 64)) == 58828696); assert(signed(zero_extend(0x381a7a0, 64)) == 58828704); assert(signed(zero_extend(0x381a7a4, 64)) == 58828708); assert(signed(zero_extend(0x381a7ac, 64)) == 58828716); assert(signed(zero_extend(0x381a7b0, 64)) == 58828720); assert(signed(zero_extend(0x381a7b8, 64)) == 58828728); assert(signed(zero_extend(0x381a7c0, 64)) == 58828736); assert(signed(zero_extend(0x381a7c8, 64)) == 58828744); assert(signed(zero_extend(0x381a7d8, 64)) == 58828760); assert(signed(zero_extend(0x381a7e0, 64)) == 58828768); assert(signed(zero_extend(0x381a8e0, 64)) == 58829024); assert(signed(zero_extend(0x381a8e8, 64)) == 58829032); assert(signed(zero_extend(0x381acb0, 64)) == 58830000); assert(signed(zero_extend(0x381acb8, 64)) == 58830008); assert(signed(zero_extend(0x381adb8, 64)) == 58830264); assert(signed(zero_extend(0x381adc0, 64)) == 58830272); assert(signed(zero_extend(0x381aee0, 64)) == 58830560); assert(signed(zero_extend(0x381af00, 64)) == 58830592); assert(signed(zero_extend(0x381b150, 64)) == 58831184); assert(signed(zero_extend(0x381b188, 64)) == 58831240); assert(signed(zero_extend(0x381b1a0, 64)) == 58831264); assert(signed(zero_extend(0x381b1d0, 64)) == 58831312); assert(signed(zero_extend(0x381b1d8, 64)) == 58831320); assert(signed(zero_extend(0x381b1e0, 64)) == 58831328); assert(signed(zero_extend(0x381b1f0, 64)) == 58831344); assert(signed(zero_extend(0x381b200, 64)) == 58831360); assert(signed(zero_extend(0x381b240, 64)) == 58831424); assert(signed(zero_extend(0x381b250, 64)) == 58831440); assert(signed(zero_extend(0x381b260, 64)) == 58831456); assert(signed(zero_extend(0x381b270, 64)) == 58831472); assert(signed(zero_extend(0x381b278, 64)) == 58831480); assert(signed(zero_extend(0x381b280, 64)) == 58831488); assert(signed(zero_extend(0x381b290, 64)) == 58831504); assert(signed(zero_extend(0x381b298, 64)) == 58831512); assert(signed(zero_extend(0x381b2b0, 64)) == 58831536); assert(signed(zero_extend(0x381b2c0, 64)) == 58831552); assert(signed(zero_extend(0x381b2d0, 64)) == 58831568); assert(signed(zero_extend(0x381b2e0, 64)) == 58831584); assert(signed(zero_extend(0x381b2e8, 64)) == 58831592); assert(signed(zero_extend(0x381b2f0, 64)) == 58831600); assert(signed(zero_extend(0x381b300, 64)) == 58831616); assert(signed(zero_extend(0x39, 64)) == 57); assert(signed(zero_extend(0x3a, 64)) == 58); assert(signed(zero_extend(0x3b, 64)) == 59); assert(signed(zero_extend(0x3c, 64)) == 60); assert(signed(zero_extend(0x3d, 64)) == 61); assert(signed(zero_extend(0x3e, 64)) == 62); assert(signed(zero_extend(0x3f, 64)) == 63); assert(signed(zero_extend(0x3ff83ff83ff83ff8, 64)) == 4609504554071375864); assert(signed(zero_extend(0x3fff, 64)) == 16383); assert(signed(zero_extend(0x3ffffffff, 64)) == 17179869183); assert(signed(zero_extend(0x4, 64)) == 4); assert(signed(zero_extend(0x40, 64)) == 64); assert(signed(zero_extend(0x400, 64)) == 1024); assert(signed(zero_extend(0x4000, 64)) == 16384); assert(signed(zero_extend(0x400000000, 64)) == 17179869184); assert(signed(zero_extend(0x41, 64)) == 65); assert(signed(zero_extend(0x42, 64)) == 66); assert(signed(zero_extend(0x43, 64)) == 67); assert(signed(zero_extend(0x44, 64)) == 68); assert(signed(zero_extend(0x45, 64)) == 69); assert(signed(zero_extend(0x46, 64)) == 70); assert(signed(zero_extend(0x47, 64)) == 71); assert(signed(zero_extend(0x48, 64)) == 72); assert(signed(zero_extend(0x49, 64)) == 73); assert(signed(zero_extend(0x4a, 64)) == 74); assert(signed(zero_extend(0x4b, 64)) == 75); assert(signed(zero_extend(0x4c, 64)) == 76); assert(signed(zero_extend(0x4c000, 64)) == 311296); assert(signed(zero_extend(0x4c800, 64)) == 313344); assert(signed(zero_extend(0x4d, 64)) == 77); assert(signed(zero_extend(0x4e, 64)) == 78); assert(signed(zero_extend(0x4f, 64)) == 79); assert(signed(zero_extend(0x5, 64)) == 5); assert(signed(zero_extend(0x50, 64)) == 80); assert(signed(zero_extend(0x51, 64)) == 81); assert(signed(zero_extend(0x52, 64)) == 82); assert(signed(zero_extend(0x53, 64)) == 83); assert(signed(zero_extend(0x530, 64)) == 1328); assert(signed(zero_extend(0x54, 64)) == 84); assert(signed(zero_extend(0x54000, 64)) == 344064); assert(signed(zero_extend(0x55, 64)) == 85); assert(signed(zero_extend(0x56, 64)) == 86); assert(signed(zero_extend(0x57, 64)) == 87); assert(signed(zero_extend(0x58, 64)) == 88); assert(signed(zero_extend(0x58000, 64)) == 360448); assert(signed(zero_extend(0x59, 64)) == 89); assert(signed(zero_extend(0x5a, 64)) == 90); assert(signed(zero_extend(0x5a5a, 64)) == 23130); assert(signed(zero_extend(0x5a5a5a59, 64)) == 1515870809); assert(signed(zero_extend(0x5a5a5a5a, 64)) == 1515870810); assert(signed(zero_extend(0x5a5a5a5a5a5a5a59, 64)) == 6510615555426900569); assert(signed(zero_extend(0x5a5a5a5a5a5a5a5a, 64)) == 6510615555426900570); assert(signed(zero_extend(0x5b, 64)) == 91); assert(signed(zero_extend(0x5c, 64)) == 92); assert(signed(zero_extend(0x5c000, 64)) == 376832); assert(signed(zero_extend(0x5c040, 64)) == 376896); assert(signed(zero_extend(0x5d, 64)) == 93); assert(signed(zero_extend(0x5e, 64)) == 94); assert(signed(zero_extend(0x5f, 64)) == 95); assert(signed(zero_extend(0x6, 64)) == 6); assert(signed(zero_extend(0x60, 64)) == 96); assert(signed(zero_extend(0x61, 64)) == 97); assert(signed(zero_extend(0x610, 64)) == 1552); assert(signed(zero_extend(0x62, 64)) == 98); assert(signed(zero_extend(0x620e000, 64)) == 102817792); assert(signed(zero_extend(0x620e010, 64)) == 102817808); assert(signed(zero_extend(0x6216000, 64)) == 102850560); assert(signed(zero_extend(0x6216004, 64)) == 102850564); assert(signed(zero_extend(0x6216008, 64)) == 102850568); assert(signed(zero_extend(0x621600c, 64)) == 102850572); assert(signed(zero_extend(0x6216030, 64)) == 102850608); assert(signed(zero_extend(0x6216034, 64)) == 102850612); assert(signed(zero_extend(0x6216038, 64)) == 102850616); assert(signed(zero_extend(0x621603c, 64)) == 102850620); assert(signed(zero_extend(0x6216040, 64)) == 102850624); assert(signed(zero_extend(0x6216044, 64)) == 102850628); assert(signed(zero_extend(0x6216048, 64)) == 102850632); assert(signed(zero_extend(0x621604c, 64)) == 102850636); assert(signed(zero_extend(0x6216054, 64)) == 102850644); assert(signed(zero_extend(0x6216058, 64)) == 102850648); assert(signed(zero_extend(0x6216064, 64)) == 102850660); assert(signed(zero_extend(0x6216069, 64)) == 102850665); assert(signed(zero_extend(0x62160aa, 64)) == 102850730); assert(signed(zero_extend(0x63, 64)) == 99); assert(signed(zero_extend(0x64, 64)) == 100); assert(signed(zero_extend(0x65, 64)) == 101); assert(signed(zero_extend(0x66, 64)) == 102); assert(signed(zero_extend(0x67, 64)) == 103); assert(signed(zero_extend(0x68, 64)) == 104); assert(signed(zero_extend(0x69, 64)) == 105); assert(signed(zero_extend(0x6a, 64)) == 106); assert(signed(zero_extend(0x6b, 64)) == 107); assert(signed(zero_extend(0x6b7c8d9f, 64)) == 1803324831); assert(signed(zero_extend(0x6c, 64)) == 108); assert(signed(zero_extend(0x6d, 64)) == 109); assert(signed(zero_extend(0x6e, 64)) == 110); assert(signed(zero_extend(0x6ede4cbc6ede4cbb, 64)) == 7988907161199463611); assert(signed(zero_extend(0x6f, 64)) == 111); assert(signed(zero_extend(0x6ffffffffffffffe, 64)) == 8070450532247928830); assert(signed(zero_extend(0x6fffffffffffffff, 64)) == 8070450532247928831); assert(signed(zero_extend(0x7, 64)) == 7); assert(signed(zero_extend(0x70, 64)) == 112); assert(signed(zero_extend(0x71, 64)) == 113); assert(signed(zero_extend(0x72, 64)) == 114); assert(signed(zero_extend(0x73, 64)) == 115); assert(signed(zero_extend(0x74, 64)) == 116); assert(signed(zero_extend(0x75, 64)) == 117); assert(signed(zero_extend(0x76, 64)) == 118); assert(signed(zero_extend(0x764c321, 64)) == 124044065); assert(signed(zero_extend(0x77, 64)) == 119); assert(signed(zero_extend(0x7765554377655542, 64)) == 8603376411415500098); assert(signed(zero_extend(0x7766554477665542, 64)) == 8603657890687243586); assert(signed(zero_extend(0x78, 64)) == 120); assert(signed(zero_extend(0x789abcdef0123456, 64)) == 8690466096661279830); assert(signed(zero_extend(0x79, 64)) == 121); assert(signed(zero_extend(0x7a, 64)) == 122); assert(signed(zero_extend(0x7b, 64)) == 123); assert(signed(zero_extend(0x7c, 64)) == 124); assert(signed(zero_extend(0x7d, 64)) == 125); assert(signed(zero_extend(0x7e, 64)) == 126); assert(signed(zero_extend(0x7f, 64)) == 127); assert(signed(zero_extend(0x7ff, 64)) == 2047); assert(signed(zero_extend(0x7ffc, 64)) == 32764); assert(signed(zero_extend(0x7ffe, 64)) == 32766); assert(signed(zero_extend(0x7fff, 64)) == 32767); assert(signed(zero_extend(0x7fff7fff, 64)) == 2147450879); assert(signed(zero_extend(0x7fff7fff7fff7ffd, 64)) == 9223231297218904061); assert(signed(zero_extend(0x7fff7fff7fff7fff, 64)) == 9223231297218904063); assert(signed(zero_extend(0x7fffffc, 64)) == 134217724); assert(signed(zero_extend(0x7ffffffe, 64)) == 2147483646); assert(signed(zero_extend(0x7fffffff, 64)) == 2147483647); assert(signed(zero_extend(0x7fffffff00000000, 64)) == 9223372032559808512); assert(signed(zero_extend(0x7fffffff00000001, 64)) == 9223372032559808513); assert(signed(zero_extend(0x7fffffff7ffffffe, 64)) == 9223372034707292158); assert(signed(zero_extend(0x7fffffff7fffffff, 64)) == 9223372034707292159); assert(signed(zero_extend(0x7fffffff80000000, 64)) == 9223372034707292160); assert(signed(zero_extend(0x7fffffff80000001, 64)) == 9223372034707292161); assert(signed(zero_extend(0x7fffffffffff0000, 64)) == 9223372036854710272); assert(signed(zero_extend(0x7fffffffffff0001, 64)) == 9223372036854710273); assert(signed(zero_extend(0x7fffffffffff7ffe, 64)) == 9223372036854743038); assert(signed(zero_extend(0x7fffffffffff7fff, 64)) == 9223372036854743039); assert(signed(zero_extend(0x7fffffffffff8000, 64)) == 9223372036854743040); assert(signed(zero_extend(0x7fffffffffff8001, 64)) == 9223372036854743041); assert(signed(zero_extend(0x7ffffffffffffffc, 64)) == 9223372036854775804); assert(signed(zero_extend(0x7ffffffffffffffd, 64)) == 9223372036854775805); assert(signed(zero_extend(0x7ffffffffffffffe, 64)) == 9223372036854775806); assert(signed(zero_extend(0x7fffffffffffffff, 64)) == 9223372036854775807); assert(signed(zero_extend(0x8, 64)) == 8); assert(signed(zero_extend(0x80, 64)) == 128); assert(signed(zero_extend(0x800, 64)) == 2048); assert(signed(zero_extend(0x8000, 64)) == 32768); assert(signed(zero_extend(0x80000000, 64)) == 2147483648); assert(signed(zero_extend(0x8000000000000000, 64)) == -9223372036854775808); assert(signed(zero_extend(0x8000000000000001, 64)) == -9223372036854775807); assert(signed(zero_extend(0x8000000000000002, 64)) == -9223372036854775806); assert(signed(zero_extend(0x8000000000000003, 64)) == -9223372036854775805); assert(signed(zero_extend(0x8000000000007ffe, 64)) == -9223372036854743042); assert(signed(zero_extend(0x8000000000007fff, 64)) == -9223372036854743041); assert(signed(zero_extend(0x8000000000008000, 64)) == -9223372036854743040); assert(signed(zero_extend(0x8000000000008001, 64)) == -9223372036854743039); assert(signed(zero_extend(0x800000000000fffe, 64)) == -9223372036854710274); assert(signed(zero_extend(0x800000000000ffff, 64)) == -9223372036854710273); assert(signed(zero_extend(0x800000007ffffffe, 64)) == -9223372034707292162); assert(signed(zero_extend(0x800000007fffffff, 64)) == -9223372034707292161); assert(signed(zero_extend(0x8000000080000000, 64)) == -9223372034707292160); assert(signed(zero_extend(0x8000000080000001, 64)) == -9223372034707292159); assert(signed(zero_extend(0x80000000fffffffe, 64)) == -9223372032559808514); assert(signed(zero_extend(0x80000000ffffffff, 64)) == -9223372032559808513); assert(signed(zero_extend(0x80000001, 64)) == 2147483649); assert(signed(zero_extend(0x80000002, 64)) == 2147483650); assert(signed(zero_extend(0x80000003, 64)) == 2147483651); assert(signed(zero_extend(0x80008000, 64)) == 2147516416); assert(signed(zero_extend(0x8000800080008000, 64)) == -9223231297218904064); assert(signed(zero_extend(0x8000800080008002, 64)) == -9223231297218904062); assert(signed(zero_extend(0x8001, 64)) == 32769); assert(signed(zero_extend(0x80010003, 64)) == 2147549187); assert(signed(zero_extend(0x8002, 64)) == 32770); assert(signed(zero_extend(0x8003, 64)) == 32771); assert(signed(zero_extend(0x8004, 64)) == 32772); assert(signed(zero_extend(0x8008, 64)) == 32776); assert(signed(zero_extend(0x800c, 64)) == 32780); assert(signed(zero_extend(0x8030, 64)) == 32816); assert(signed(zero_extend(0x8034, 64)) == 32820); assert(signed(zero_extend(0x8038, 64)) == 32824); assert(signed(zero_extend(0x803c, 64)) == 32828); assert(signed(zero_extend(0x8040, 64)) == 32832); assert(signed(zero_extend(0x8054, 64)) == 32852); assert(signed(zero_extend(0x8058, 64)) == 32856); assert(signed(zero_extend(0x8064, 64)) == 32868); assert(signed(zero_extend(0x8069, 64)) == 32873); assert(signed(zero_extend(0x80aa, 64)) == 32938); assert(signed(zero_extend(0x81, 64)) == 129); assert(signed(zero_extend(0x82, 64)) == 130); assert(signed(zero_extend(0x83, 64)) == 131); assert(signed(zero_extend(0x84, 64)) == 132); assert(signed(zero_extend(0x84000, 64)) == 540672); assert(signed(zero_extend(0x84800, 64)) == 542720); assert(signed(zero_extend(0x85, 64)) == 133); assert(signed(zero_extend(0x86, 64)) == 134); assert(signed(zero_extend(0x87, 64)) == 135); assert(signed(zero_extend(0x87654321, 64)) == 2271560481); assert(signed(zero_extend(0x876543210fedcba9, 64)) == -8690466096661279831); assert(signed(zero_extend(0x88, 64)) == 136); assert(signed(zero_extend(0x8899aabb, 64)) == 2291772091); assert(signed(zero_extend(0x8899aabb8899aabb, 64)) == -8603657890687243589); assert(signed(zero_extend(0x8899aabb8899aabd, 64)) == -8603657890687243587); assert(signed(zero_extend(0x889aaabc889aaabd, 64)) == -8603376411415500099); assert(signed(zero_extend(0x89, 64)) == 137); assert(signed(zero_extend(0x89ab, 64)) == 35243); assert(signed(zero_extend(0x8a, 64)) == 138); assert(signed(zero_extend(0x8b, 64)) == 139); assert(signed(zero_extend(0x8c, 64)) == 140); assert(signed(zero_extend(0x8d, 64)) == 141); assert(signed(zero_extend(0x8fffffffffffffff, 64)) == -8070450532247928833); assert(signed(zero_extend(0x9, 64)) == 9); assert(signed(zero_extend(0x90, 64)) == 144); assert(signed(zero_extend(0x90000000, 64)) == 2415919104); assert(signed(zero_extend(0x9000000000000000, 64)) == -8070450532247928832); assert(signed(zero_extend(0x9000000000000001, 64)) == -8070450532247928831); assert(signed(zero_extend(0x90000001, 64)) == 2415919105); assert(signed(zero_extend(0x9121b3439121b344, 64)) == -7988907161199463612); assert(signed(zero_extend(0x9200040, 64)) == 153092160); assert(signed(zero_extend(0x920005c, 64)) == 153092188); assert(signed(zero_extend(0x9200060, 64)) == 153092192); assert(signed(zero_extend(0x9234567a, 64)) == 2452903546); assert(signed(zero_extend(0x9be0, 64)) == 39904); assert(signed(zero_extend(0xa, 64)) == 10); assert(signed(zero_extend(0xa0, 64)) == 160); assert(signed(zero_extend(0xa000, 64)) == 40960); assert(signed(zero_extend(0xa0000000, 64)) == 2684354560); assert(signed(zero_extend(0xa200060, 64)) == 169869408); assert(signed(zero_extend(0xa20007c, 64)) == 169869436); assert(signed(zero_extend(0xa200080, 64)) == 169869440); assert(signed(zero_extend(0xa50006c, 64)) == 173015148); assert(signed(zero_extend(0xa500070, 64)) == 173015152); assert(signed(zero_extend(0xa500074, 64)) == 173015156); assert(signed(zero_extend(0xa5a5, 64)) == 42405); assert(signed(zero_extend(0xa5a5a5a5, 64)) == 2779096485); assert(signed(zero_extend(0xa5a5a5a5a5a5a5a5, 64)) == -6510615555426900571); assert(signed(zero_extend(0xa8, 64)) == 168); assert(signed(zero_extend(0xb, 64)) == 11); assert(signed(zero_extend(0xb0, 64)) == 176); assert(signed(zero_extend(0xb8, 64)) == 184); assert(signed(zero_extend(0xc, 64)) == 12); assert(signed(zero_extend(0xc0, 64)) == 192); assert(signed(zero_extend(0xc00fefff, 64)) == 3222269951); assert(signed(zero_extend(0xd, 64)) == 13); assert(signed(zero_extend(0xd0, 64)) == 208); assert(signed(zero_extend(0xdddddddddddddddc, 64)) == -2459565876494606884); assert(signed(zero_extend(0xe, 64)) == 14); assert(signed(zero_extend(0xe0, 64)) == 224); assert(signed(zero_extend(0xedcba9876543210e, 64)) == -1311768467463790322); assert(signed(zero_extend(0xf, 64)) == 15); assert(signed(zero_extend(0xf00, 64)) == 3840); assert(signed(zero_extend(0xf000000000000000, 64)) == -1152921504606846976); assert(signed(zero_extend(0xff, 64)) == 255); assert(signed(zero_extend(0xfffe, 64)) == 65534); assert(signed(zero_extend(0xffff, 64)) == 65535); assert(signed(zero_extend(0xffff8000, 64)) == 4294934528); assert(signed(zero_extend(0xffffc, 64)) == 1048572); assert(signed(zero_extend(0xffffe000ffffe000, 64)) == -35180077129728); assert(signed(zero_extend(0xfffffff, 64)) == 268435455); assert(signed(zero_extend(0xfffffffe, 64)) == 4294967294); assert(signed(zero_extend(0xfffffffe77665544, 64)) == -6586739388); assert(signed(zero_extend(0xfffffffe7fffffff, 64)) == -6442450945); assert(signed(zero_extend(0xfffffffe80000000, 64)) == -6442450944); assert(signed(zero_extend(0xfffffffef89b3cde, 64)) == -4419011362); assert(signed(zero_extend(0xfffffffefffffffe, 64)) == -4294967298); assert(signed(zero_extend(0xfffffffeffffffff, 64)) == -4294967297); assert(signed(zero_extend(0xffffffff, 64)) == 4294967295); assert(signed(zero_extend(0xffffffff00000000, 64)) == -4294967296); assert(signed(zero_extend(0xffffffff00000001, 64)) == -4294967295); assert(signed(zero_extend(0xffffffff00007fff, 64)) == -4294934529); assert(signed(zero_extend(0xffffffff3ff01000, 64)) == -3222269952); assert(signed(zero_extend(0xffffffff5fffffff, 64)) == -2684354561); assert(signed(zero_extend(0xffffffff6dcba985, 64)) == -2452903547); assert(signed(zero_extend(0xffffffff6ffffffe, 64)) == -2415919106); assert(signed(zero_extend(0xffffffff6fffffff, 64)) == -2415919105); assert(signed(zero_extend(0xffffffff77665544, 64)) == -2291772092); assert(signed(zero_extend(0xffffffff7ffefffc, 64)) == -2147549188); assert(signed(zero_extend(0xffffffff7ffffffc, 64)) == -2147483652); assert(signed(zero_extend(0xffffffff7ffffffd, 64)) == -2147483651); assert(signed(zero_extend(0xffffffff7ffffffe, 64)) == -2147483650); assert(signed(zero_extend(0xffffffff7fffffff, 64)) == -2147483649); assert(signed(zero_extend(0xffffffff80000000, 64)) == -2147483648); assert(signed(zero_extend(0xffffffff80000001, 64)) == -2147483647); assert(signed(zero_extend(0xffffffff94837260, 64)) == -1803324832); assert(signed(zero_extend(0xffffffffdfffffff, 64)) == -536870913); assert(signed(zero_extend(0xffffffffed9fff7f, 64)) == -308281473); assert(signed(zero_extend(0xffffffffedafff8f, 64)) == -307232881); assert(signed(zero_extend(0xfffffffff0000000, 64)) == -268435456); assert(signed(zero_extend(0xfffffffff7ffffff, 64)) == -134217729); assert(signed(zero_extend(0xfffffffff89b3cde, 64)) == -124044066); assert(signed(zero_extend(0xfffffffffcefffff, 64)) == -51380225); assert(signed(zero_extend(0xfffffffffcf0ffff, 64)) == -51314689); assert(signed(zero_extend(0xfffffffffcf1ffff, 64)) == -51249153); assert(signed(zero_extend(0xfffffffffcf84000, 64)) == -50839552); assert(signed(zero_extend(0xfffffffffcf94000, 64)) == -50774016); assert(signed(zero_extend(0xfffffffffcfa4000, 64)) == -50708480); assert(signed(zero_extend(0xfffffffffd0affff, 64)) == -49610753); assert(signed(zero_extend(0xfffffffffd0bffff, 64)) == -49545217); assert(signed(zero_extend(0xfffffffffd0fc000, 64)) == -49299456); assert(signed(zero_extend(0xfffffffffd10c000, 64)) == -49233920); assert(signed(zero_extend(0xfffffffffd10ffff, 64)) == -49217537); assert(signed(zero_extend(0xfffffffffd11ffff, 64)) == -49152001); assert(signed(zero_extend(0xfffffffffd130000, 64)) == -49086464); assert(signed(zero_extend(0xfffffffffd13ffff, 64)) == -49020929); assert(signed(zero_extend(0xfffffffffd140000, 64)) == -49020928); assert(signed(zero_extend(0xfffffffffd14ffff, 64)) == -48955393); assert(signed(zero_extend(0xfffffffffd170000, 64)) == -48824320); assert(signed(zero_extend(0xfffffffffd18c000, 64)) == -48709632); assert(signed(zero_extend(0xfffffffffebffe6b, 64)) == -20971925); assert(signed(zero_extend(0xfffffffffebffefb, 64)) == -20971781); assert(signed(zero_extend(0xfffffffffebfff3b, 64)) == -20971717); assert(signed(zero_extend(0xffffffffffefffff, 64)) == -1048577); assert(signed(zero_extend(0xfffffffffff, 64)) == 17592186044415); assert(signed(zero_extend(0xfffffffffff70000, 64)) == -589824); assert(signed(zero_extend(0xfffffffffff80000, 64)) == -524288); assert(signed(zero_extend(0xfffffffffffc0000, 64)) == -262144); assert(signed(zero_extend(0xfffffffffffd0000, 64)) == -196608); assert(signed(zero_extend(0xfffffffffffdffff, 64)) == -131073); assert(signed(zero_extend(0xfffffffffffe0000, 64)) == -131072); assert(signed(zero_extend(0xfffffffffffe7ffe, 64)) == -98306); assert(signed(zero_extend(0xfffffffffffe7fff, 64)) == -98305); assert(signed(zero_extend(0xfffffffffffe8000, 64)) == -98304); assert(signed(zero_extend(0xfffffffffffe8001, 64)) == -98303); assert(signed(zero_extend(0xfffffffffffefffe, 64)) == -65538); assert(signed(zero_extend(0xfffffffffffeffff, 64)) == -65537); assert(signed(zero_extend(0xffffffffffff0000, 64)) == -65536); assert(signed(zero_extend(0xffffffffffff0001, 64)) == -65535); assert(signed(zero_extend(0xffffffffffff641f, 64)) == -39905); assert(signed(zero_extend(0xffffffffffff7ffc, 64)) == -32772); assert(signed(zero_extend(0xffffffffffff7ffd, 64)) == -32771); assert(signed(zero_extend(0xffffffffffff7ffe, 64)) == -32770); assert(signed(zero_extend(0xffffffffffff7fff, 64)) == -32769); assert(signed(zero_extend(0xffffffffffff8000, 64)) == -32768); assert(signed(zero_extend(0xffffffffffff8001, 64)) == -32767); assert(signed(zero_extend(0xffffffffffffbeff, 64)) == -16641); assert(signed(zero_extend(0xffffffffffffbf40, 64)) == -16576); assert(signed(zero_extend(0xffffffffffffbf41, 64)) == -16575); assert(signed(zero_extend(0xffffffffffffbfff, 64)) == -16385); assert(signed(zero_extend(0xffffffffffffc22c, 64)) == -15828); assert(signed(zero_extend(0xffffffffffffc24c, 64)) == -15796); assert(signed(zero_extend(0xffffffffffffd220, 64)) == -11744); assert(signed(zero_extend(0xffffffffffffd23c, 64)) == -11716); assert(signed(zero_extend(0xffffffffffffe220, 64)) == -7648); assert(signed(zero_extend(0xffffffffffffe23c, 64)) == -7620); assert(signed(zero_extend(0xffffffffffffefff, 64)) == -4097); assert(signed(zero_extend(0xfffffffffffffeef, 64)) == -273); assert(signed(zero_extend(0xfffffffffffffeff, 64)) == -257); assert(signed(zero_extend(0xffffffffffffff1f, 64)) == -225); assert(signed(zero_extend(0xffffffffffffff2f, 64)) == -209); assert(signed(zero_extend(0xffffffffffffff4f, 64)) == -177); assert(signed(zero_extend(0xffffffffffffff6f, 64)) == -145); assert(signed(zero_extend(0xffffffffffffff80, 64)) == -128); assert(signed(zero_extend(0xffffffffffffff8f, 64)) == -113); assert(signed(zero_extend(0xffffffffffffff9f, 64)) == -97); assert(signed(zero_extend(0xffffffffffffffa0, 64)) == -96); assert(signed(zero_extend(0xffffffffffffffaf, 64)) == -81); assert(signed(zero_extend(0xffffffffffffffbf, 64)) == -65); assert(signed(zero_extend(0xffffffffffffffc2, 64)) == -62); assert(signed(zero_extend(0xffffffffffffffc4, 64)) == -60); assert(signed(zero_extend(0xffffffffffffffc6, 64)) == -58); assert(signed(zero_extend(0xffffffffffffffc8, 64)) == -56); assert(signed(zero_extend(0xffffffffffffffca, 64)) == -54); assert(signed(zero_extend(0xffffffffffffffcc, 64)) == -52); assert(signed(zero_extend(0xffffffffffffffce, 64)) == -50); assert(signed(zero_extend(0xffffffffffffffcf, 64)) == -49); assert(signed(zero_extend(0xffffffffffffffd0, 64)) == -48); assert(signed(zero_extend(0xffffffffffffffd2, 64)) == -46); assert(signed(zero_extend(0xffffffffffffffd4, 64)) == -44); assert(signed(zero_extend(0xffffffffffffffd6, 64)) == -42); assert(signed(zero_extend(0xffffffffffffffd8, 64)) == -40); assert(signed(zero_extend(0xffffffffffffffda, 64)) == -38); assert(signed(zero_extend(0xffffffffffffffdb, 64)) == -37); assert(signed(zero_extend(0xffffffffffffffdc, 64)) == -36); assert(signed(zero_extend(0xffffffffffffffde, 64)) == -34); assert(signed(zero_extend(0xffffffffffffffdf, 64)) == -33); assert(signed(zero_extend(0xffffffffffffffe0, 64)) == -32); assert(signed(zero_extend(0xffffffffffffffe2, 64)) == -30); assert(signed(zero_extend(0xffffffffffffffe4, 64)) == -28); assert(signed(zero_extend(0xffffffffffffffe6, 64)) == -26); assert(signed(zero_extend(0xffffffffffffffe7, 64)) == -25); assert(signed(zero_extend(0xffffffffffffffe8, 64)) == -24); assert(signed(zero_extend(0xffffffffffffffea, 64)) == -22); assert(signed(zero_extend(0xffffffffffffffec, 64)) == -20); assert(signed(zero_extend(0xffffffffffffffee, 64)) == -18); assert(signed(zero_extend(0xffffffffffffffef, 64)) == -17); assert(signed(zero_extend(0xfffffffffffffff, 64)) == 1152921504606846975); assert(signed(zero_extend(0xfffffffffffffff0, 64)) == -16); assert(signed(zero_extend(0xfffffffffffffff1, 64)) == -15); assert(signed(zero_extend(0xfffffffffffffff2, 64)) == -14); assert(signed(zero_extend(0xfffffffffffffff4, 64)) == -12); assert(signed(zero_extend(0xfffffffffffffff6, 64)) == -10); assert(signed(zero_extend(0xfffffffffffffff7, 64)) == -9); assert(signed(zero_extend(0xfffffffffffffff8, 64)) == -8); assert(signed(zero_extend(0xfffffffffffffffa, 64)) == -6); assert(signed(zero_extend(0xfffffffffffffffb, 64)) == -5); assert(signed(zero_extend(0xfffffffffffffffc, 64)) == -4); assert(signed(zero_extend(0xfffffffffffffffd, 64)) == -3); assert(signed(zero_extend(0xfffffffffffffffe, 64)) == -2); assert(signed(zero_extend(0xffffffffffffffff, 64)) == -1); }