diff options
Diffstat (limited to 'test/builtins/unsigned5.sail')
| -rw-r--r-- | test/builtins/unsigned5.sail | 2001 |
1 files changed, 2001 insertions, 0 deletions
diff --git a/test/builtins/unsigned5.sail b/test/builtins/unsigned5.sail new file mode 100644 index 00000000..5c6a181a --- /dev/null +++ b/test/builtins/unsigned5.sail @@ -0,0 +1,2001 @@ +default Order dec + +$include <exception_basic.sail> +$include <vector_dec.sail> + +function main (() : unit) -> unit = { + assert(unsigned(zero_extend(0x1cdf8, 64)) == 118264); + assert(unsigned(zero_extend(0x1cdfc, 64)) == 118268); + assert(unsigned(zero_extend(0x1ce00, 64)) == 118272); + assert(unsigned(zero_extend(0x1ce04, 64)) == 118276); + assert(unsigned(zero_extend(0x1ce08, 64)) == 118280); + assert(unsigned(zero_extend(0x1ce0c, 64)) == 118284); + assert(unsigned(zero_extend(0x1ce10, 64)) == 118288); + assert(unsigned(zero_extend(0x1ce14, 64)) == 118292); + assert(unsigned(zero_extend(0x1ce18, 64)) == 118296); + assert(unsigned(zero_extend(0x1ce1c, 64)) == 118300); + assert(unsigned(zero_extend(0x1ce20, 64)) == 118304); + assert(unsigned(zero_extend(0x1ce24, 64)) == 118308); + assert(unsigned(zero_extend(0x1ce28, 64)) == 118312); + assert(unsigned(zero_extend(0x1ce2c, 64)) == 118316); + assert(unsigned(zero_extend(0x1ce30, 64)) == 118320); + assert(unsigned(zero_extend(0x1ce34, 64)) == 118324); + assert(unsigned(zero_extend(0x1ce38, 64)) == 118328); + assert(unsigned(zero_extend(0x1ce3c, 64)) == 118332); + assert(unsigned(zero_extend(0x1ce40, 64)) == 118336); + assert(unsigned(zero_extend(0x1ce44, 64)) == 118340); + assert(unsigned(zero_extend(0x1ce48, 64)) == 118344); + assert(unsigned(zero_extend(0x1ce4c, 64)) == 118348); + assert(unsigned(zero_extend(0x1ce50, 64)) == 118352); + assert(unsigned(zero_extend(0x1ce54, 64)) == 118356); + assert(unsigned(zero_extend(0x1ce58, 64)) == 118360); + assert(unsigned(zero_extend(0x1ce68, 64)) == 118376); + assert(unsigned(zero_extend(0x1ce6c, 64)) == 118380); + assert(unsigned(zero_extend(0x1ce70, 64)) == 118384); + assert(unsigned(zero_extend(0x1ce74, 64)) == 118388); + assert(unsigned(zero_extend(0x1ce78, 64)) == 118392); + assert(unsigned(zero_extend(0x1ce7c, 64)) == 118396); + assert(unsigned(zero_extend(0x1ce80, 64)) == 118400); + assert(unsigned(zero_extend(0x1ce84, 64)) == 118404); + assert(unsigned(zero_extend(0x1ce88, 64)) == 118408); + assert(unsigned(zero_extend(0x1ce9c, 64)) == 118428); + assert(unsigned(zero_extend(0x1cea0, 64)) == 118432); + assert(unsigned(zero_extend(0x1cea4, 64)) == 118436); + assert(unsigned(zero_extend(0x1cea8, 64)) == 118440); + assert(unsigned(zero_extend(0x1ceac, 64)) == 118444); + assert(unsigned(zero_extend(0x1ceb0, 64)) == 118448); + assert(unsigned(zero_extend(0x1ceb4, 64)) == 118452); + assert(unsigned(zero_extend(0x1ceb8, 64)) == 118456); + assert(unsigned(zero_extend(0x1cebc, 64)) == 118460); + assert(unsigned(zero_extend(0x1cec0, 64)) == 118464); + assert(unsigned(zero_extend(0x1cec4, 64)) == 118468); + assert(unsigned(zero_extend(0x1cec8, 64)) == 118472); + assert(unsigned(zero_extend(0x1cecc, 64)) == 118476); + assert(unsigned(zero_extend(0x1ced0, 64)) == 118480); + assert(unsigned(zero_extend(0x1ced4, 64)) == 118484); + assert(unsigned(zero_extend(0x1ced8, 64)) == 118488); + assert(unsigned(zero_extend(0x1cee8, 64)) == 118504); + assert(unsigned(zero_extend(0x1ceec, 64)) == 118508); + assert(unsigned(zero_extend(0x1cef0, 64)) == 118512); + assert(unsigned(zero_extend(0x1cef4, 64)) == 118516); + assert(unsigned(zero_extend(0x1cef8, 64)) == 118520); + assert(unsigned(zero_extend(0x1cefc, 64)) == 118524); + assert(unsigned(zero_extend(0x1cf00, 64)) == 118528); + assert(unsigned(zero_extend(0x1cf04, 64)) == 118532); + assert(unsigned(zero_extend(0x1cf08, 64)) == 118536); + assert(unsigned(zero_extend(0x1cf0c, 64)) == 118540); + assert(unsigned(zero_extend(0x1cf10, 64)) == 118544); + assert(unsigned(zero_extend(0x1cf14, 64)) == 118548); + assert(unsigned(zero_extend(0x1cf18, 64)) == 118552); + assert(unsigned(zero_extend(0x1cf1c, 64)) == 118556); + assert(unsigned(zero_extend(0x1cf20, 64)) == 118560); + assert(unsigned(zero_extend(0x1cf24, 64)) == 118564); + assert(unsigned(zero_extend(0x1cf28, 64)) == 118568); + assert(unsigned(zero_extend(0x1cf2c, 64)) == 118572); + assert(unsigned(zero_extend(0x1cf30, 64)) == 118576); + assert(unsigned(zero_extend(0x1cf40, 64)) == 118592); + assert(unsigned(zero_extend(0x1cf44, 64)) == 118596); + assert(unsigned(zero_extend(0x1cf48, 64)) == 118600); + assert(unsigned(zero_extend(0x1cf4c, 64)) == 118604); + assert(unsigned(zero_extend(0x1cf50, 64)) == 118608); + assert(unsigned(zero_extend(0x1cf54, 64)) == 118612); + assert(unsigned(zero_extend(0x1cf58, 64)) == 118616); + assert(unsigned(zero_extend(0x1cf5c, 64)) == 118620); + assert(unsigned(zero_extend(0x1cf64, 64)) == 118628); + assert(unsigned(zero_extend(0x1cf68, 64)) == 118632); + assert(unsigned(zero_extend(0x1cf6c, 64)) == 118636); + assert(unsigned(zero_extend(0x1cf70, 64)) == 118640); + assert(unsigned(zero_extend(0x1cf74, 64)) == 118644); + assert(unsigned(zero_extend(0x1cf78, 64)) == 118648); + assert(unsigned(zero_extend(0x1cf7c, 64)) == 118652); + assert(unsigned(zero_extend(0x1cf80, 64)) == 118656); + assert(unsigned(zero_extend(0x1cf84, 64)) == 118660); + assert(unsigned(zero_extend(0x1cf88, 64)) == 118664); + assert(unsigned(zero_extend(0x1cf8c, 64)) == 118668); + assert(unsigned(zero_extend(0x1cf90, 64)) == 118672); + assert(unsigned(zero_extend(0x1cf94, 64)) == 118676); + assert(unsigned(zero_extend(0x1cf98, 64)) == 118680); + assert(unsigned(zero_extend(0x1cf9c, 64)) == 118684); + assert(unsigned(zero_extend(0x1cfa0, 64)) == 118688); + assert(unsigned(zero_extend(0x1cfa4, 64)) == 118692); + assert(unsigned(zero_extend(0x1cfa8, 64)) == 118696); + assert(unsigned(zero_extend(0x1cfac, 64)) == 118700); + assert(unsigned(zero_extend(0x1cfb0, 64)) == 118704); + assert(unsigned(zero_extend(0x1cfb4, 64)) == 118708); + assert(unsigned(zero_extend(0x1cfb8, 64)) == 118712); + assert(unsigned(zero_extend(0x1cfbc, 64)) == 118716); + assert(unsigned(zero_extend(0x1cfc0, 64)) == 118720); + assert(unsigned(zero_extend(0x1cfc4, 64)) == 118724); + assert(unsigned(zero_extend(0x1cfc8, 64)) == 118728); + assert(unsigned(zero_extend(0x1cfcc, 64)) == 118732); + assert(unsigned(zero_extend(0x1cfd0, 64)) == 118736); + assert(unsigned(zero_extend(0x1cfd4, 64)) == 118740); + assert(unsigned(zero_extend(0x1cfd8, 64)) == 118744); + assert(unsigned(zero_extend(0x1cfdc, 64)) == 118748); + assert(unsigned(zero_extend(0x1cfe0, 64)) == 118752); + assert(unsigned(zero_extend(0x1cfe4, 64)) == 118756); + assert(unsigned(zero_extend(0x1cfe8, 64)) == 118760); + assert(unsigned(zero_extend(0x1cfec, 64)) == 118764); + assert(unsigned(zero_extend(0x1cff0, 64)) == 118768); + assert(unsigned(zero_extend(0x1cff4, 64)) == 118772); + assert(unsigned(zero_extend(0x1cff8, 64)) == 118776); + assert(unsigned(zero_extend(0x1cffc, 64)) == 118780); + assert(unsigned(zero_extend(0x1d, 64)) == 29); + assert(unsigned(zero_extend(0x1d000, 64)) == 118784); + assert(unsigned(zero_extend(0x1d004, 64)) == 118788); + assert(unsigned(zero_extend(0x1d008, 64)) == 118792); + assert(unsigned(zero_extend(0x1d00c, 64)) == 118796); + assert(unsigned(zero_extend(0x1d010, 64)) == 118800); + assert(unsigned(zero_extend(0x1d014, 64)) == 118804); + assert(unsigned(zero_extend(0x1d018, 64)) == 118808); + assert(unsigned(zero_extend(0x1d01c, 64)) == 118812); + assert(unsigned(zero_extend(0x1d020, 64)) == 118816); + assert(unsigned(zero_extend(0x1d024, 64)) == 118820); + assert(unsigned(zero_extend(0x1d028, 64)) == 118824); + assert(unsigned(zero_extend(0x1d02c, 64)) == 118828); + assert(unsigned(zero_extend(0x1d030, 64)) == 118832); + assert(unsigned(zero_extend(0x1d034, 64)) == 118836); + assert(unsigned(zero_extend(0x1d038, 64)) == 118840); + assert(unsigned(zero_extend(0x1d03c, 64)) == 118844); + assert(unsigned(zero_extend(0x1d040, 64)) == 118848); + assert(unsigned(zero_extend(0x1d044, 64)) == 118852); + assert(unsigned(zero_extend(0x1d048, 64)) == 118856); + assert(unsigned(zero_extend(0x1d04c, 64)) == 118860); + assert(unsigned(zero_extend(0x1d050, 64)) == 118864); + assert(unsigned(zero_extend(0x1d054, 64)) == 118868); + assert(unsigned(zero_extend(0x1d058, 64)) == 118872); + assert(unsigned(zero_extend(0x1d060, 64)) == 118880); + assert(unsigned(zero_extend(0x1d068, 64)) == 118888); + assert(unsigned(zero_extend(0x1d070, 64)) == 118896); + assert(unsigned(zero_extend(0x1d078, 64)) == 118904); + assert(unsigned(zero_extend(0x1d080, 64)) == 118912); + assert(unsigned(zero_extend(0x1d088, 64)) == 118920); + assert(unsigned(zero_extend(0x1d090, 64)) == 118928); + assert(unsigned(zero_extend(0x1d098, 64)) == 118936); + assert(unsigned(zero_extend(0x1d0a0, 64)) == 118944); + assert(unsigned(zero_extend(0x1d0a8, 64)) == 118952); + assert(unsigned(zero_extend(0x1d0b0, 64)) == 118960); + assert(unsigned(zero_extend(0x1d0b8, 64)) == 118968); + assert(unsigned(zero_extend(0x1d0c0, 64)) == 118976); + assert(unsigned(zero_extend(0x1d0c8, 64)) == 118984); + assert(unsigned(zero_extend(0x1d0d0, 64)) == 118992); + assert(unsigned(zero_extend(0x1d0d8, 64)) == 119000); + assert(unsigned(zero_extend(0x1d0e0, 64)) == 119008); + assert(unsigned(zero_extend(0x1d0e8, 64)) == 119016); + assert(unsigned(zero_extend(0x1d0f0, 64)) == 119024); + assert(unsigned(zero_extend(0x1d0f8, 64)) == 119032); + assert(unsigned(zero_extend(0x1d100, 64)) == 119040); + assert(unsigned(zero_extend(0x1d108, 64)) == 119048); + assert(unsigned(zero_extend(0x1d448, 64)) == 119880); + assert(unsigned(zero_extend(0x1d44c, 64)) == 119884); + assert(unsigned(zero_extend(0x1d450, 64)) == 119888); + assert(unsigned(zero_extend(0x1d454, 64)) == 119892); + assert(unsigned(zero_extend(0x1d458, 64)) == 119896); + assert(unsigned(zero_extend(0x1d45c, 64)) == 119900); + assert(unsigned(zero_extend(0x1d460, 64)) == 119904); + assert(unsigned(zero_extend(0x1d464, 64)) == 119908); + assert(unsigned(zero_extend(0x1d468, 64)) == 119912); + assert(unsigned(zero_extend(0x1d46c, 64)) == 119916); + assert(unsigned(zero_extend(0x1d470, 64)) == 119920); + assert(unsigned(zero_extend(0x1d474, 64)) == 119924); + assert(unsigned(zero_extend(0x1d478, 64)) == 119928); + assert(unsigned(zero_extend(0x1d47c, 64)) == 119932); + assert(unsigned(zero_extend(0x1d480, 64)) == 119936); + assert(unsigned(zero_extend(0x1d484, 64)) == 119940); + assert(unsigned(zero_extend(0x1d490, 64)) == 119952); + assert(unsigned(zero_extend(0x1d494, 64)) == 119956); + assert(unsigned(zero_extend(0x1d498, 64)) == 119960); + assert(unsigned(zero_extend(0x1d49c, 64)) == 119964); + assert(unsigned(zero_extend(0x1d4a0, 64)) == 119968); + assert(unsigned(zero_extend(0x1d4a4, 64)) == 119972); + assert(unsigned(zero_extend(0x1d4a8, 64)) == 119976); + assert(unsigned(zero_extend(0x1d4ac, 64)) == 119980); + assert(unsigned(zero_extend(0x1d4b0, 64)) == 119984); + assert(unsigned(zero_extend(0x1d4b4, 64)) == 119988); + assert(unsigned(zero_extend(0x1d4b8, 64)) == 119992); + assert(unsigned(zero_extend(0x1d4bc, 64)) == 119996); + assert(unsigned(zero_extend(0x1d4c0, 64)) == 120000); + assert(unsigned(zero_extend(0x1d4c4, 64)) == 120004); + assert(unsigned(zero_extend(0x1d4c8, 64)) == 120008); + assert(unsigned(zero_extend(0x1d4cc, 64)) == 120012); + assert(unsigned(zero_extend(0x1d4d0, 64)) == 120016); + assert(unsigned(zero_extend(0x1d4d4, 64)) == 120020); + assert(unsigned(zero_extend(0x1d4d8, 64)) == 120024); + assert(unsigned(zero_extend(0x1d4dc, 64)) == 120028); + assert(unsigned(zero_extend(0x1d4e0, 64)) == 120032); + assert(unsigned(zero_extend(0x1d4e4, 64)) == 120036); + assert(unsigned(zero_extend(0x1d4e8, 64)) == 120040); + assert(unsigned(zero_extend(0x1d4ec, 64)) == 120044); + assert(unsigned(zero_extend(0x1d4f0, 64)) == 120048); + assert(unsigned(zero_extend(0x1d4f4, 64)) == 120052); + assert(unsigned(zero_extend(0x1d4f8, 64)) == 120056); + assert(unsigned(zero_extend(0x1d4fc, 64)) == 120060); + assert(unsigned(zero_extend(0x1d500, 64)) == 120064); + assert(unsigned(zero_extend(0x1d504, 64)) == 120068); + assert(unsigned(zero_extend(0x1d508, 64)) == 120072); + assert(unsigned(zero_extend(0x1d50c, 64)) == 120076); + assert(unsigned(zero_extend(0x1d510, 64)) == 120080); + assert(unsigned(zero_extend(0x1d514, 64)) == 120084); + assert(unsigned(zero_extend(0x1d518, 64)) == 120088); + assert(unsigned(zero_extend(0x1d51c, 64)) == 120092); + assert(unsigned(zero_extend(0x1d520, 64)) == 120096); + assert(unsigned(zero_extend(0x1d524, 64)) == 120100); + assert(unsigned(zero_extend(0x1d528, 64)) == 120104); + assert(unsigned(zero_extend(0x1d52c, 64)) == 120108); + assert(unsigned(zero_extend(0x1d530, 64)) == 120112); + assert(unsigned(zero_extend(0x1d534, 64)) == 120116); + assert(unsigned(zero_extend(0x1d538, 64)) == 120120); + assert(unsigned(zero_extend(0x1d53c, 64)) == 120124); + assert(unsigned(zero_extend(0x1d540, 64)) == 120128); + assert(unsigned(zero_extend(0x1d544, 64)) == 120132); + assert(unsigned(zero_extend(0x1d548, 64)) == 120136); + assert(unsigned(zero_extend(0x1d54c, 64)) == 120140); + assert(unsigned(zero_extend(0x1d550, 64)) == 120144); + assert(unsigned(zero_extend(0x1d554, 64)) == 120148); + assert(unsigned(zero_extend(0x1d558, 64)) == 120152); + assert(unsigned(zero_extend(0x1d560, 64)) == 120160); + assert(unsigned(zero_extend(0x1d564, 64)) == 120164); + assert(unsigned(zero_extend(0x1d568, 64)) == 120168); + assert(unsigned(zero_extend(0x1d570, 64)) == 120176); + assert(unsigned(zero_extend(0x1d5f8, 64)) == 120312); + assert(unsigned(zero_extend(0x1d5fc, 64)) == 120316); + assert(unsigned(zero_extend(0x1d600, 64)) == 120320); + assert(unsigned(zero_extend(0x1d604, 64)) == 120324); + assert(unsigned(zero_extend(0x1d608, 64)) == 120328); + assert(unsigned(zero_extend(0x1d60c, 64)) == 120332); + assert(unsigned(zero_extend(0x1d610, 64)) == 120336); + assert(unsigned(zero_extend(0x1d614, 64)) == 120340); + assert(unsigned(zero_extend(0x1d618, 64)) == 120344); + assert(unsigned(zero_extend(0x1d61c, 64)) == 120348); + assert(unsigned(zero_extend(0x1d620, 64)) == 120352); + assert(unsigned(zero_extend(0x1d624, 64)) == 120356); + assert(unsigned(zero_extend(0x1d628, 64)) == 120360); + assert(unsigned(zero_extend(0x1d650, 64)) == 120400); + assert(unsigned(zero_extend(0x1d654, 64)) == 120404); + assert(unsigned(zero_extend(0x1d658, 64)) == 120408); + assert(unsigned(zero_extend(0x1d65c, 64)) == 120412); + assert(unsigned(zero_extend(0x1d660, 64)) == 120416); + assert(unsigned(zero_extend(0x1d664, 64)) == 120420); + assert(unsigned(zero_extend(0x1d668, 64)) == 120424); + assert(unsigned(zero_extend(0x1d66c, 64)) == 120428); + assert(unsigned(zero_extend(0x1d670, 64)) == 120432); + assert(unsigned(zero_extend(0x1d674, 64)) == 120436); + assert(unsigned(zero_extend(0x1d678, 64)) == 120440); + assert(unsigned(zero_extend(0x1d67c, 64)) == 120444); + assert(unsigned(zero_extend(0x1d680, 64)) == 120448); + assert(unsigned(zero_extend(0x1e, 64)) == 30); + assert(unsigned(zero_extend(0x1e0, 64)) == 480); + assert(unsigned(zero_extend(0x1e078, 64)) == 123000); + assert(unsigned(zero_extend(0x1e07c, 64)) == 123004); + assert(unsigned(zero_extend(0x1e080, 64)) == 123008); + assert(unsigned(zero_extend(0x1e084, 64)) == 123012); + assert(unsigned(zero_extend(0x1e088, 64)) == 123016); + assert(unsigned(zero_extend(0x1e08c, 64)) == 123020); + assert(unsigned(zero_extend(0x1e090, 64)) == 123024); + assert(unsigned(zero_extend(0x1e094, 64)) == 123028); + assert(unsigned(zero_extend(0x1e098, 64)) == 123032); + assert(unsigned(zero_extend(0x1e09c, 64)) == 123036); + assert(unsigned(zero_extend(0x1e0a0, 64)) == 123040); + assert(unsigned(zero_extend(0x1e0a4, 64)) == 123044); + assert(unsigned(zero_extend(0x1e0a8, 64)) == 123048); + assert(unsigned(zero_extend(0x1e0ac, 64)) == 123052); + assert(unsigned(zero_extend(0x1e0ad, 64)) == 123053); + assert(unsigned(zero_extend(0x1e0ae, 64)) == 123054); + assert(unsigned(zero_extend(0x1e0af, 64)) == 123055); + assert(unsigned(zero_extend(0x1e0b0, 64)) == 123056); + assert(unsigned(zero_extend(0x1e0b1, 64)) == 123057); + assert(unsigned(zero_extend(0x1e0b2, 64)) == 123058); + assert(unsigned(zero_extend(0x1e0b3, 64)) == 123059); + assert(unsigned(zero_extend(0x1e0b4, 64)) == 123060); + assert(unsigned(zero_extend(0x1e0b5, 64)) == 123061); + assert(unsigned(zero_extend(0x1e0b6, 64)) == 123062); + assert(unsigned(zero_extend(0x1e0b7, 64)) == 123063); + assert(unsigned(zero_extend(0x1e0b8, 64)) == 123064); + assert(unsigned(zero_extend(0x1e0b9, 64)) == 123065); + assert(unsigned(zero_extend(0x1e0ba, 64)) == 123066); + assert(unsigned(zero_extend(0x1e0bb, 64)) == 123067); + assert(unsigned(zero_extend(0x1e0bc, 64)) == 123068); + assert(unsigned(zero_extend(0x1e0bd, 64)) == 123069); + assert(unsigned(zero_extend(0x1e0be, 64)) == 123070); + assert(unsigned(zero_extend(0x1e0bf, 64)) == 123071); + assert(unsigned(zero_extend(0x1e0c0, 64)) == 123072); + assert(unsigned(zero_extend(0x1e0c1, 64)) == 123073); + assert(unsigned(zero_extend(0x1e0c2, 64)) == 123074); + assert(unsigned(zero_extend(0x1e0c3, 64)) == 123075); + assert(unsigned(zero_extend(0x1e0c4, 64)) == 123076); + assert(unsigned(zero_extend(0x1e0c5, 64)) == 123077); + assert(unsigned(zero_extend(0x1e0c6, 64)) == 123078); + assert(unsigned(zero_extend(0x1e0c8, 64)) == 123080); + assert(unsigned(zero_extend(0x1e0cc, 64)) == 123084); + assert(unsigned(zero_extend(0x1e0d0, 64)) == 123088); + assert(unsigned(zero_extend(0x1e0d4, 64)) == 123092); + assert(unsigned(zero_extend(0x1e0d8, 64)) == 123096); + assert(unsigned(zero_extend(0x1e0dc, 64)) == 123100); + assert(unsigned(zero_extend(0x1e0e0, 64)) == 123104); + assert(unsigned(zero_extend(0x1e0e4, 64)) == 123108); + assert(unsigned(zero_extend(0x1e0e8, 64)) == 123112); + assert(unsigned(zero_extend(0x1e0ec, 64)) == 123116); + assert(unsigned(zero_extend(0x1e0ed, 64)) == 123117); + assert(unsigned(zero_extend(0x1e0ee, 64)) == 123118); + assert(unsigned(zero_extend(0x1e0ef, 64)) == 123119); + assert(unsigned(zero_extend(0x1e0f0, 64)) == 123120); + assert(unsigned(zero_extend(0x1e0f1, 64)) == 123121); + assert(unsigned(zero_extend(0x1e0f2, 64)) == 123122); + assert(unsigned(zero_extend(0x1e0f3, 64)) == 123123); + assert(unsigned(zero_extend(0x1e0f4, 64)) == 123124); + assert(unsigned(zero_extend(0x1e0f5, 64)) == 123125); + assert(unsigned(zero_extend(0x1e0f6, 64)) == 123126); + assert(unsigned(zero_extend(0x1e0f7, 64)) == 123127); + assert(unsigned(zero_extend(0x1e0f8, 64)) == 123128); + assert(unsigned(zero_extend(0x1e0f9, 64)) == 123129); + assert(unsigned(zero_extend(0x1e0fa, 64)) == 123130); + assert(unsigned(zero_extend(0x1e0fb, 64)) == 123131); + assert(unsigned(zero_extend(0x1e0fc, 64)) == 123132); + assert(unsigned(zero_extend(0x1e0fd, 64)) == 123133); + assert(unsigned(zero_extend(0x1e0fe, 64)) == 123134); + assert(unsigned(zero_extend(0x1e0ff, 64)) == 123135); + assert(unsigned(zero_extend(0x1e100, 64)) == 123136); + assert(unsigned(zero_extend(0x1e101, 64)) == 123137); + assert(unsigned(zero_extend(0x1e102, 64)) == 123138); + assert(unsigned(zero_extend(0x1e103, 64)) == 123139); + assert(unsigned(zero_extend(0x1e104, 64)) == 123140); + assert(unsigned(zero_extend(0x1e105, 64)) == 123141); + assert(unsigned(zero_extend(0x1e106, 64)) == 123142); + assert(unsigned(zero_extend(0x1e107, 64)) == 123143); + assert(unsigned(zero_extend(0x1e108, 64)) == 123144); + assert(unsigned(zero_extend(0x1e109, 64)) == 123145); + assert(unsigned(zero_extend(0x1e10a, 64)) == 123146); + assert(unsigned(zero_extend(0x1e10b, 64)) == 123147); + assert(unsigned(zero_extend(0x1e10c, 64)) == 123148); + assert(unsigned(zero_extend(0x1e10d, 64)) == 123149); + assert(unsigned(zero_extend(0x1e10e, 64)) == 123150); + assert(unsigned(zero_extend(0x1e10f, 64)) == 123151); + assert(unsigned(zero_extend(0x1e110, 64)) == 123152); + assert(unsigned(zero_extend(0x1e111, 64)) == 123153); + assert(unsigned(zero_extend(0x1e112, 64)) == 123154); + assert(unsigned(zero_extend(0x1e113, 64)) == 123155); + assert(unsigned(zero_extend(0x1e114, 64)) == 123156); + assert(unsigned(zero_extend(0x1e115, 64)) == 123157); + assert(unsigned(zero_extend(0x1e116, 64)) == 123158); + assert(unsigned(zero_extend(0x1e117, 64)) == 123159); + assert(unsigned(zero_extend(0x1e118, 64)) == 123160); + assert(unsigned(zero_extend(0x1e119, 64)) == 123161); + assert(unsigned(zero_extend(0x1e11a, 64)) == 123162); + assert(unsigned(zero_extend(0x1e11b, 64)) == 123163); + assert(unsigned(zero_extend(0x1e11c, 64)) == 123164); + assert(unsigned(zero_extend(0x1e11d, 64)) == 123165); + assert(unsigned(zero_extend(0x1e11e, 64)) == 123166); + assert(unsigned(zero_extend(0x1e120, 64)) == 123168); + assert(unsigned(zero_extend(0x1e124, 64)) == 123172); + assert(unsigned(zero_extend(0x1e128, 64)) == 123176); + assert(unsigned(zero_extend(0x1e12c, 64)) == 123180); + assert(unsigned(zero_extend(0x1e130, 64)) == 123184); + assert(unsigned(zero_extend(0x1e134, 64)) == 123188); + assert(unsigned(zero_extend(0x1e138, 64)) == 123192); + assert(unsigned(zero_extend(0x1e13c, 64)) == 123196); + assert(unsigned(zero_extend(0x1e140, 64)) == 123200); + assert(unsigned(zero_extend(0x1e141, 64)) == 123201); + assert(unsigned(zero_extend(0x1e142, 64)) == 123202); + assert(unsigned(zero_extend(0x1e143, 64)) == 123203); + assert(unsigned(zero_extend(0x1e144, 64)) == 123204); + assert(unsigned(zero_extend(0x1e145, 64)) == 123205); + assert(unsigned(zero_extend(0x1e146, 64)) == 123206); + assert(unsigned(zero_extend(0x1e147, 64)) == 123207); + assert(unsigned(zero_extend(0x1e148, 64)) == 123208); + assert(unsigned(zero_extend(0x1e149, 64)) == 123209); + assert(unsigned(zero_extend(0x1e14a, 64)) == 123210); + assert(unsigned(zero_extend(0x1e14b, 64)) == 123211); + assert(unsigned(zero_extend(0x1e14c, 64)) == 123212); + assert(unsigned(zero_extend(0x1e14d, 64)) == 123213); + assert(unsigned(zero_extend(0x1e14e, 64)) == 123214); + assert(unsigned(zero_extend(0x1e14f, 64)) == 123215); + assert(unsigned(zero_extend(0x1e150, 64)) == 123216); + assert(unsigned(zero_extend(0x1e151, 64)) == 123217); + assert(unsigned(zero_extend(0x1e152, 64)) == 123218); + assert(unsigned(zero_extend(0x1e153, 64)) == 123219); + assert(unsigned(zero_extend(0x1e154, 64)) == 123220); + assert(unsigned(zero_extend(0x1e155, 64)) == 123221); + assert(unsigned(zero_extend(0x1e156, 64)) == 123222); + assert(unsigned(zero_extend(0x1e157, 64)) == 123223); + assert(unsigned(zero_extend(0x1e158, 64)) == 123224); + assert(unsigned(zero_extend(0x1e159, 64)) == 123225); + assert(unsigned(zero_extend(0x1e15a, 64)) == 123226); + assert(unsigned(zero_extend(0x1e15b, 64)) == 123227); + assert(unsigned(zero_extend(0x1e15c, 64)) == 123228); + assert(unsigned(zero_extend(0x1e160, 64)) == 123232); + assert(unsigned(zero_extend(0x1e164, 64)) == 123236); + assert(unsigned(zero_extend(0x1e168, 64)) == 123240); + assert(unsigned(zero_extend(0x1e16c, 64)) == 123244); + assert(unsigned(zero_extend(0x1e170, 64)) == 123248); + assert(unsigned(zero_extend(0x1e174, 64)) == 123252); + assert(unsigned(zero_extend(0x1e178, 64)) == 123256); + assert(unsigned(zero_extend(0x1e17c, 64)) == 123260); + assert(unsigned(zero_extend(0x1e180, 64)) == 123264); + assert(unsigned(zero_extend(0x1e184, 64)) == 123268); + assert(unsigned(zero_extend(0x1e188, 64)) == 123272); + assert(unsigned(zero_extend(0x1e18c, 64)) == 123276); + assert(unsigned(zero_extend(0x1e190, 64)) == 123280); + assert(unsigned(zero_extend(0x1e194, 64)) == 123284); + assert(unsigned(zero_extend(0x1e198, 64)) == 123288); + assert(unsigned(zero_extend(0x1e199, 64)) == 123289); + assert(unsigned(zero_extend(0x1e19a, 64)) == 123290); + assert(unsigned(zero_extend(0x1e19b, 64)) == 123291); + assert(unsigned(zero_extend(0x1e19c, 64)) == 123292); + assert(unsigned(zero_extend(0x1e19d, 64)) == 123293); + assert(unsigned(zero_extend(0x1e19e, 64)) == 123294); + assert(unsigned(zero_extend(0x1e19f, 64)) == 123295); + assert(unsigned(zero_extend(0x1e1a0, 64)) == 123296); + assert(unsigned(zero_extend(0x1e1a1, 64)) == 123297); + assert(unsigned(zero_extend(0x1e1a2, 64)) == 123298); + assert(unsigned(zero_extend(0x1e1a3, 64)) == 123299); + assert(unsigned(zero_extend(0x1e1a4, 64)) == 123300); + assert(unsigned(zero_extend(0x1e1a5, 64)) == 123301); + assert(unsigned(zero_extend(0x1e1a6, 64)) == 123302); + assert(unsigned(zero_extend(0x1e1a7, 64)) == 123303); + assert(unsigned(zero_extend(0x1e1a8, 64)) == 123304); + assert(unsigned(zero_extend(0x1e1a9, 64)) == 123305); + assert(unsigned(zero_extend(0x1e1aa, 64)) == 123306); + assert(unsigned(zero_extend(0x1e1ab, 64)) == 123307); + assert(unsigned(zero_extend(0x1e1ac, 64)) == 123308); + assert(unsigned(zero_extend(0x1e1ad, 64)) == 123309); + assert(unsigned(zero_extend(0x1e1ae, 64)) == 123310); + assert(unsigned(zero_extend(0x1e1af, 64)) == 123311); + assert(unsigned(zero_extend(0x1e1b0, 64)) == 123312); + assert(unsigned(zero_extend(0x1e600, 64)) == 124416); + assert(unsigned(zero_extend(0x1e604, 64)) == 124420); + assert(unsigned(zero_extend(0x1e608, 64)) == 124424); + assert(unsigned(zero_extend(0x1e60c, 64)) == 124428); + assert(unsigned(zero_extend(0x1e610, 64)) == 124432); + assert(unsigned(zero_extend(0x1e614, 64)) == 124436); + assert(unsigned(zero_extend(0x1e618, 64)) == 124440); + assert(unsigned(zero_extend(0x1e61c, 64)) == 124444); + assert(unsigned(zero_extend(0x1e620, 64)) == 124448); + assert(unsigned(zero_extend(0x1e624, 64)) == 124452); + assert(unsigned(zero_extend(0x1e628, 64)) == 124456); + assert(unsigned(zero_extend(0x1e62c, 64)) == 124460); + assert(unsigned(zero_extend(0x1e630, 64)) == 124464); + assert(unsigned(zero_extend(0x1e634, 64)) == 124468); + assert(unsigned(zero_extend(0x1e638, 64)) == 124472); + assert(unsigned(zero_extend(0x1e63c, 64)) == 124476); + assert(unsigned(zero_extend(0x1e640, 64)) == 124480); + assert(unsigned(zero_extend(0x1e644, 64)) == 124484); + assert(unsigned(zero_extend(0x1e648, 64)) == 124488); + assert(unsigned(zero_extend(0x1e64c, 64)) == 124492); + assert(unsigned(zero_extend(0x1e650, 64)) == 124496); + assert(unsigned(zero_extend(0x1e658, 64)) == 124504); + assert(unsigned(zero_extend(0x1e65c, 64)) == 124508); + assert(unsigned(zero_extend(0x1e660, 64)) == 124512); + assert(unsigned(zero_extend(0x1e664, 64)) == 124516); + assert(unsigned(zero_extend(0x1e668, 64)) == 124520); + assert(unsigned(zero_extend(0x1e66c, 64)) == 124524); + assert(unsigned(zero_extend(0x1e670, 64)) == 124528); + assert(unsigned(zero_extend(0x1e674, 64)) == 124532); + assert(unsigned(zero_extend(0x1e678, 64)) == 124536); + assert(unsigned(zero_extend(0x1e67c, 64)) == 124540); + assert(unsigned(zero_extend(0x1e680, 64)) == 124544); + assert(unsigned(zero_extend(0x1e684, 64)) == 124548); + assert(unsigned(zero_extend(0x1e688, 64)) == 124552); + assert(unsigned(zero_extend(0x1e68c, 64)) == 124556); + assert(unsigned(zero_extend(0x1e690, 64)) == 124560); + assert(unsigned(zero_extend(0x1e694, 64)) == 124564); + assert(unsigned(zero_extend(0x1e698, 64)) == 124568); + assert(unsigned(zero_extend(0x1e69c, 64)) == 124572); + assert(unsigned(zero_extend(0x1e6a0, 64)) == 124576); + assert(unsigned(zero_extend(0x1e6a4, 64)) == 124580); + assert(unsigned(zero_extend(0x1e6a8, 64)) == 124584); + assert(unsigned(zero_extend(0x1e6ac, 64)) == 124588); + assert(unsigned(zero_extend(0x1e6b0, 64)) == 124592); + assert(unsigned(zero_extend(0x1e6b4, 64)) == 124596); + assert(unsigned(zero_extend(0x1e6b8, 64)) == 124600); + assert(unsigned(zero_extend(0x1e6bc, 64)) == 124604); + assert(unsigned(zero_extend(0x1e6c0, 64)) == 124608); + assert(unsigned(zero_extend(0x1e6c4, 64)) == 124612); + assert(unsigned(zero_extend(0x1e6c8, 64)) == 124616); + assert(unsigned(zero_extend(0x1e6cc, 64)) == 124620); + assert(unsigned(zero_extend(0x1e6d0, 64)) == 124624); + assert(unsigned(zero_extend(0x1e6d4, 64)) == 124628); + assert(unsigned(zero_extend(0x1e6d8, 64)) == 124632); + assert(unsigned(zero_extend(0x1e6dc, 64)) == 124636); + assert(unsigned(zero_extend(0x1e6e0, 64)) == 124640); + assert(unsigned(zero_extend(0x1e6e4, 64)) == 124644); + assert(unsigned(zero_extend(0x1e6e8, 64)) == 124648); + assert(unsigned(zero_extend(0x1e6ec, 64)) == 124652); + assert(unsigned(zero_extend(0x1e6f0, 64)) == 124656); + assert(unsigned(zero_extend(0x1e6f4, 64)) == 124660); + assert(unsigned(zero_extend(0x1e6f8, 64)) == 124664); + assert(unsigned(zero_extend(0x1e6fc, 64)) == 124668); + assert(unsigned(zero_extend(0x1e700, 64)) == 124672); + assert(unsigned(zero_extend(0x1e704, 64)) == 124676); + assert(unsigned(zero_extend(0x1e708, 64)) == 124680); + assert(unsigned(zero_extend(0x1e70c, 64)) == 124684); + assert(unsigned(zero_extend(0x1e710, 64)) == 124688); + assert(unsigned(zero_extend(0x1e714, 64)) == 124692); + assert(unsigned(zero_extend(0x1e718, 64)) == 124696); + assert(unsigned(zero_extend(0x1e71c, 64)) == 124700); + assert(unsigned(zero_extend(0x1e720, 64)) == 124704); + assert(unsigned(zero_extend(0x1e724, 64)) == 124708); + assert(unsigned(zero_extend(0x1e728, 64)) == 124712); + assert(unsigned(zero_extend(0x1e72c, 64)) == 124716); + assert(unsigned(zero_extend(0x1e730, 64)) == 124720); + assert(unsigned(zero_extend(0x1e734, 64)) == 124724); + assert(unsigned(zero_extend(0x1e738, 64)) == 124728); + assert(unsigned(zero_extend(0x1e740, 64)) == 124736); + assert(unsigned(zero_extend(0x1eb90, 64)) == 125840); + assert(unsigned(zero_extend(0x1eb94, 64)) == 125844); + assert(unsigned(zero_extend(0x1eb98, 64)) == 125848); + assert(unsigned(zero_extend(0x1eb9c, 64)) == 125852); + assert(unsigned(zero_extend(0x1eba0, 64)) == 125856); + assert(unsigned(zero_extend(0x1eba4, 64)) == 125860); + assert(unsigned(zero_extend(0x1eba8, 64)) == 125864); + assert(unsigned(zero_extend(0x1ebc0, 64)) == 125888); + assert(unsigned(zero_extend(0x1ebc4, 64)) == 125892); + assert(unsigned(zero_extend(0x1ebc8, 64)) == 125896); + assert(unsigned(zero_extend(0x1ebd4, 64)) == 125908); + assert(unsigned(zero_extend(0x1ebd8, 64)) == 125912); + assert(unsigned(zero_extend(0x1ebe8, 64)) == 125928); + assert(unsigned(zero_extend(0x1ebec, 64)) == 125932); + assert(unsigned(zero_extend(0x1ebf0, 64)) == 125936); + assert(unsigned(zero_extend(0x1ebf4, 64)) == 125940); + assert(unsigned(zero_extend(0x1ebf8, 64)) == 125944); + assert(unsigned(zero_extend(0x1ebfc, 64)) == 125948); + assert(unsigned(zero_extend(0x1ec00, 64)) == 125952); + assert(unsigned(zero_extend(0x1ec18, 64)) == 125976); + assert(unsigned(zero_extend(0x1ec1c, 64)) == 125980); + assert(unsigned(zero_extend(0x1ec20, 64)) == 125984); + assert(unsigned(zero_extend(0x1ec24, 64)) == 125988); + assert(unsigned(zero_extend(0x1ec25, 64)) == 125989); + assert(unsigned(zero_extend(0x1ec26, 64)) == 125990); + assert(unsigned(zero_extend(0x1ec27, 64)) == 125991); + assert(unsigned(zero_extend(0x1ec28, 64)) == 125992); + assert(unsigned(zero_extend(0x1ec29, 64)) == 125993); + assert(unsigned(zero_extend(0x1ec2a, 64)) == 125994); + assert(unsigned(zero_extend(0x1ec2b, 64)) == 125995); + assert(unsigned(zero_extend(0x1ec2c, 64)) == 125996); + assert(unsigned(zero_extend(0x1ec2d, 64)) == 125997); + assert(unsigned(zero_extend(0x1ec2e, 64)) == 125998); + assert(unsigned(zero_extend(0x1ec2f, 64)) == 125999); + assert(unsigned(zero_extend(0x1ec30, 64)) == 126000); + assert(unsigned(zero_extend(0x1ec31, 64)) == 126001); + assert(unsigned(zero_extend(0x1ec32, 64)) == 126002); + assert(unsigned(zero_extend(0x1ec33, 64)) == 126003); + assert(unsigned(zero_extend(0x1ec34, 64)) == 126004); + assert(unsigned(zero_extend(0x1ec35, 64)) == 126005); + assert(unsigned(zero_extend(0x1ec36, 64)) == 126006); + assert(unsigned(zero_extend(0x1ec37, 64)) == 126007); + assert(unsigned(zero_extend(0x1ec38, 64)) == 126008); + assert(unsigned(zero_extend(0x1ec39, 64)) == 126009); + assert(unsigned(zero_extend(0x1ec3a, 64)) == 126010); + assert(unsigned(zero_extend(0x1ec48, 64)) == 126024); + assert(unsigned(zero_extend(0x1ec7c, 64)) == 126076); + assert(unsigned(zero_extend(0x1ec7d, 64)) == 126077); + assert(unsigned(zero_extend(0x1ec7e, 64)) == 126078); + assert(unsigned(zero_extend(0x1ec7f, 64)) == 126079); + assert(unsigned(zero_extend(0x1ec80, 64)) == 126080); + assert(unsigned(zero_extend(0x1ec81, 64)) == 126081); + assert(unsigned(zero_extend(0x1ec82, 64)) == 126082); + assert(unsigned(zero_extend(0x1ec83, 64)) == 126083); + assert(unsigned(zero_extend(0x1ec84, 64)) == 126084); + assert(unsigned(zero_extend(0x1ec85, 64)) == 126085); + assert(unsigned(zero_extend(0x1ec86, 64)) == 126086); + assert(unsigned(zero_extend(0x1ec87, 64)) == 126087); + assert(unsigned(zero_extend(0x1ec88, 64)) == 126088); + assert(unsigned(zero_extend(0x1ec89, 64)) == 126089); + assert(unsigned(zero_extend(0x1ec8a, 64)) == 126090); + assert(unsigned(zero_extend(0x1ec8b, 64)) == 126091); + assert(unsigned(zero_extend(0x1ec8c, 64)) == 126092); + assert(unsigned(zero_extend(0x1ec8d, 64)) == 126093); + assert(unsigned(zero_extend(0x1ec8e, 64)) == 126094); + assert(unsigned(zero_extend(0x1ec8f, 64)) == 126095); + assert(unsigned(zero_extend(0x1ec90, 64)) == 126096); + assert(unsigned(zero_extend(0x1ec91, 64)) == 126097); + assert(unsigned(zero_extend(0x1ec92, 64)) == 126098); + assert(unsigned(zero_extend(0x1f, 64)) == 31); + assert(unsigned(zero_extend(0x1f138, 64)) == 127288); + assert(unsigned(zero_extend(0x1f13c, 64)) == 127292); + assert(unsigned(zero_extend(0x1f140, 64)) == 127296); + assert(unsigned(zero_extend(0x1f144, 64)) == 127300); + assert(unsigned(zero_extend(0x1f148, 64)) == 127304); + assert(unsigned(zero_extend(0x1f14c, 64)) == 127308); + assert(unsigned(zero_extend(0x1f150, 64)) == 127312); + assert(unsigned(zero_extend(0x1f154, 64)) == 127316); + assert(unsigned(zero_extend(0x1f158, 64)) == 127320); + assert(unsigned(zero_extend(0x1f15c, 64)) == 127324); + assert(unsigned(zero_extend(0x1f160, 64)) == 127328); + assert(unsigned(zero_extend(0x1f190, 64)) == 127376); + assert(unsigned(zero_extend(0x1f194, 64)) == 127380); + assert(unsigned(zero_extend(0x1f198, 64)) == 127384); + assert(unsigned(zero_extend(0x1f19c, 64)) == 127388); + assert(unsigned(zero_extend(0x1f1a0, 64)) == 127392); + assert(unsigned(zero_extend(0x1f1a4, 64)) == 127396); + assert(unsigned(zero_extend(0x1f1a8, 64)) == 127400); + assert(unsigned(zero_extend(0x1f1ac, 64)) == 127404); + assert(unsigned(zero_extend(0x1f1b0, 64)) == 127408); + assert(unsigned(zero_extend(0x1f1b4, 64)) == 127412); + assert(unsigned(zero_extend(0x1f1b8, 64)) == 127416); + assert(unsigned(zero_extend(0x1f2d0, 64)) == 127696); + assert(unsigned(zero_extend(0x1f2d4, 64)) == 127700); + assert(unsigned(zero_extend(0x1f2d8, 64)) == 127704); + assert(unsigned(zero_extend(0x1f2dc, 64)) == 127708); + assert(unsigned(zero_extend(0x1f2e0, 64)) == 127712); + assert(unsigned(zero_extend(0x1f2e4, 64)) == 127716); + assert(unsigned(zero_extend(0x1f2e8, 64)) == 127720); + assert(unsigned(zero_extend(0x1f2ec, 64)) == 127724); + assert(unsigned(zero_extend(0x1f2f0, 64)) == 127728); + assert(unsigned(zero_extend(0x1f2f4, 64)) == 127732); + assert(unsigned(zero_extend(0x1f2f8, 64)) == 127736); + assert(unsigned(zero_extend(0x1f2fc, 64)) == 127740); + assert(unsigned(zero_extend(0x1f300, 64)) == 127744); + assert(unsigned(zero_extend(0x1f304, 64)) == 127748); + assert(unsigned(zero_extend(0x1f308, 64)) == 127752); + assert(unsigned(zero_extend(0x1f310, 64)) == 127760); + assert(unsigned(zero_extend(0x1f328, 64)) == 127784); + assert(unsigned(zero_extend(0x1f32c, 64)) == 127788); + assert(unsigned(zero_extend(0x1f330, 64)) == 127792); + assert(unsigned(zero_extend(0x1f334, 64)) == 127796); + assert(unsigned(zero_extend(0x1f338, 64)) == 127800); + assert(unsigned(zero_extend(0x1f33c, 64)) == 127804); + assert(unsigned(zero_extend(0x1f340, 64)) == 127808); + assert(unsigned(zero_extend(0x1f344, 64)) == 127812); + assert(unsigned(zero_extend(0x1f348, 64)) == 127816); + assert(unsigned(zero_extend(0x1f34c, 64)) == 127820); + assert(unsigned(zero_extend(0x1f350, 64)) == 127824); + assert(unsigned(zero_extend(0x1f354, 64)) == 127828); + assert(unsigned(zero_extend(0x1f358, 64)) == 127832); + assert(unsigned(zero_extend(0x1f35c, 64)) == 127836); + assert(unsigned(zero_extend(0x1f360, 64)) == 127840); + assert(unsigned(zero_extend(0x1f368, 64)) == 127848); + assert(unsigned(zero_extend(0x1f558, 64)) == 128344); + assert(unsigned(zero_extend(0x1f55c, 64)) == 128348); + assert(unsigned(zero_extend(0x1f560, 64)) == 128352); + assert(unsigned(zero_extend(0x1f564, 64)) == 128356); + assert(unsigned(zero_extend(0x1f568, 64)) == 128360); + assert(unsigned(zero_extend(0x1f5a0, 64)) == 128416); + assert(unsigned(zero_extend(0x1f5a8, 64)) == 128424); + assert(unsigned(zero_extend(0x1f5b0, 64)) == 128432); + assert(unsigned(zero_extend(0x1f5b4, 64)) == 128436); + assert(unsigned(zero_extend(0x1f5b8, 64)) == 128440); + assert(unsigned(zero_extend(0x1f5bc, 64)) == 128444); + assert(unsigned(zero_extend(0x1f5c0, 64)) == 128448); + assert(unsigned(zero_extend(0x1f5f8, 64)) == 128504); + assert(unsigned(zero_extend(0x1f600, 64)) == 128512); + assert(unsigned(zero_extend(0x2, 64)) == 2); + assert(unsigned(zero_extend(0x20, 64)) == 32); + assert(unsigned(zero_extend(0x200, 64)) == 512); + assert(unsigned(zero_extend(0x2000, 64)) == 8192); + assert(unsigned(zero_extend(0x20000, 64)) == 131072); + assert(unsigned(zero_extend(0x20000000, 64)) == 536870912); + assert(unsigned(zero_extend(0x208, 64)) == 520); + assert(unsigned(zero_extend(0x20800, 64)) == 133120); + assert(unsigned(zero_extend(0x21, 64)) == 33); + assert(unsigned(zero_extend(0x21468, 64)) == 136296); + assert(unsigned(zero_extend(0x2146c, 64)) == 136300); + assert(unsigned(zero_extend(0x21470, 64)) == 136304); + assert(unsigned(zero_extend(0x21474, 64)) == 136308); + assert(unsigned(zero_extend(0x21478, 64)) == 136312); + assert(unsigned(zero_extend(0x2147c, 64)) == 136316); + assert(unsigned(zero_extend(0x21480, 64)) == 136320); + assert(unsigned(zero_extend(0x21484, 64)) == 136324); + assert(unsigned(zero_extend(0x21488, 64)) == 136328); + assert(unsigned(zero_extend(0x2148c, 64)) == 136332); + assert(unsigned(zero_extend(0x21490, 64)) == 136336); + assert(unsigned(zero_extend(0x21494, 64)) == 136340); + assert(unsigned(zero_extend(0x21498, 64)) == 136344); + assert(unsigned(zero_extend(0x2149c, 64)) == 136348); + assert(unsigned(zero_extend(0x214a0, 64)) == 136352); + assert(unsigned(zero_extend(0x214a4, 64)) == 136356); + assert(unsigned(zero_extend(0x214a8, 64)) == 136360); + assert(unsigned(zero_extend(0x214ac, 64)) == 136364); + assert(unsigned(zero_extend(0x214b0, 64)) == 136368); + assert(unsigned(zero_extend(0x214b4, 64)) == 136372); + assert(unsigned(zero_extend(0x214b8, 64)) == 136376); + assert(unsigned(zero_extend(0x214bc, 64)) == 136380); + assert(unsigned(zero_extend(0x214c0, 64)) == 136384); + assert(unsigned(zero_extend(0x214c4, 64)) == 136388); + assert(unsigned(zero_extend(0x214c8, 64)) == 136392); + assert(unsigned(zero_extend(0x214cc, 64)) == 136396); + assert(unsigned(zero_extend(0x214d0, 64)) == 136400); + assert(unsigned(zero_extend(0x214d4, 64)) == 136404); + assert(unsigned(zero_extend(0x214d8, 64)) == 136408); + assert(unsigned(zero_extend(0x214dc, 64)) == 136412); + assert(unsigned(zero_extend(0x214e0, 64)) == 136416); + assert(unsigned(zero_extend(0x214e4, 64)) == 136420); + assert(unsigned(zero_extend(0x214e8, 64)) == 136424); + assert(unsigned(zero_extend(0x214ec, 64)) == 136428); + assert(unsigned(zero_extend(0x214f0, 64)) == 136432); + assert(unsigned(zero_extend(0x214f4, 64)) == 136436); + assert(unsigned(zero_extend(0x214f8, 64)) == 136440); + assert(unsigned(zero_extend(0x214fc, 64)) == 136444); + assert(unsigned(zero_extend(0x21500, 64)) == 136448); + assert(unsigned(zero_extend(0x21504, 64)) == 136452); + assert(unsigned(zero_extend(0x21508, 64)) == 136456); + assert(unsigned(zero_extend(0x2150c, 64)) == 136460); + assert(unsigned(zero_extend(0x21510, 64)) == 136464); + assert(unsigned(zero_extend(0x21514, 64)) == 136468); + assert(unsigned(zero_extend(0x21518, 64)) == 136472); + assert(unsigned(zero_extend(0x2151c, 64)) == 136476); + assert(unsigned(zero_extend(0x21520, 64)) == 136480); + assert(unsigned(zero_extend(0x21524, 64)) == 136484); + assert(unsigned(zero_extend(0x21528, 64)) == 136488); + assert(unsigned(zero_extend(0x2152c, 64)) == 136492); + assert(unsigned(zero_extend(0x21530, 64)) == 136496); + assert(unsigned(zero_extend(0x21534, 64)) == 136500); + assert(unsigned(zero_extend(0x21538, 64)) == 136504); + assert(unsigned(zero_extend(0x2153c, 64)) == 136508); + assert(unsigned(zero_extend(0x21540, 64)) == 136512); + assert(unsigned(zero_extend(0x21544, 64)) == 136516); + assert(unsigned(zero_extend(0x21548, 64)) == 136520); + assert(unsigned(zero_extend(0x21568, 64)) == 136552); + assert(unsigned(zero_extend(0x2156c, 64)) == 136556); + assert(unsigned(zero_extend(0x21570, 64)) == 136560); + assert(unsigned(zero_extend(0x21574, 64)) == 136564); + assert(unsigned(zero_extend(0x21578, 64)) == 136568); + assert(unsigned(zero_extend(0x2157c, 64)) == 136572); + assert(unsigned(zero_extend(0x21580, 64)) == 136576); + assert(unsigned(zero_extend(0x21584, 64)) == 136580); + assert(unsigned(zero_extend(0x21588, 64)) == 136584); + assert(unsigned(zero_extend(0x2158c, 64)) == 136588); + assert(unsigned(zero_extend(0x21590, 64)) == 136592); + assert(unsigned(zero_extend(0x21594, 64)) == 136596); + assert(unsigned(zero_extend(0x21598, 64)) == 136600); + assert(unsigned(zero_extend(0x2159c, 64)) == 136604); + assert(unsigned(zero_extend(0x215a0, 64)) == 136608); + assert(unsigned(zero_extend(0x215a4, 64)) == 136612); + assert(unsigned(zero_extend(0x215c0, 64)) == 136640); + assert(unsigned(zero_extend(0x215c4, 64)) == 136644); + assert(unsigned(zero_extend(0x215c8, 64)) == 136648); + assert(unsigned(zero_extend(0x215cc, 64)) == 136652); + assert(unsigned(zero_extend(0x215d0, 64)) == 136656); + assert(unsigned(zero_extend(0x215d4, 64)) == 136660); + assert(unsigned(zero_extend(0x215d8, 64)) == 136664); + assert(unsigned(zero_extend(0x215dc, 64)) == 136668); + assert(unsigned(zero_extend(0x215e0, 64)) == 136672); + assert(unsigned(zero_extend(0x215e4, 64)) == 136676); + assert(unsigned(zero_extend(0x215e8, 64)) == 136680); + assert(unsigned(zero_extend(0x215ec, 64)) == 136684); + assert(unsigned(zero_extend(0x215f0, 64)) == 136688); + assert(unsigned(zero_extend(0x215f4, 64)) == 136692); + assert(unsigned(zero_extend(0x215f8, 64)) == 136696); + assert(unsigned(zero_extend(0x215fc, 64)) == 136700); + assert(unsigned(zero_extend(0x21680, 64)) == 136832); + assert(unsigned(zero_extend(0x21684, 64)) == 136836); + assert(unsigned(zero_extend(0x21688, 64)) == 136840); + assert(unsigned(zero_extend(0x2168c, 64)) == 136844); + assert(unsigned(zero_extend(0x21690, 64)) == 136848); + assert(unsigned(zero_extend(0x21694, 64)) == 136852); + assert(unsigned(zero_extend(0x21698, 64)) == 136856); + assert(unsigned(zero_extend(0x2169c, 64)) == 136860); + assert(unsigned(zero_extend(0x216a0, 64)) == 136864); + assert(unsigned(zero_extend(0x216a4, 64)) == 136868); + assert(unsigned(zero_extend(0x216a8, 64)) == 136872); + assert(unsigned(zero_extend(0x216ac, 64)) == 136876); + assert(unsigned(zero_extend(0x216b0, 64)) == 136880); + assert(unsigned(zero_extend(0x216b4, 64)) == 136884); + assert(unsigned(zero_extend(0x216b8, 64)) == 136888); + assert(unsigned(zero_extend(0x216d8, 64)) == 136920); + assert(unsigned(zero_extend(0x216dc, 64)) == 136924); + assert(unsigned(zero_extend(0x216e0, 64)) == 136928); + assert(unsigned(zero_extend(0x216e4, 64)) == 136932); + assert(unsigned(zero_extend(0x216e8, 64)) == 136936); + assert(unsigned(zero_extend(0x216ec, 64)) == 136940); + assert(unsigned(zero_extend(0x216f0, 64)) == 136944); + assert(unsigned(zero_extend(0x216f4, 64)) == 136948); + assert(unsigned(zero_extend(0x216f8, 64)) == 136952); + assert(unsigned(zero_extend(0x216fc, 64)) == 136956); + assert(unsigned(zero_extend(0x21700, 64)) == 136960); + assert(unsigned(zero_extend(0x21704, 64)) == 136964); + assert(unsigned(zero_extend(0x21708, 64)) == 136968); + assert(unsigned(zero_extend(0x2170c, 64)) == 136972); + assert(unsigned(zero_extend(0x21710, 64)) == 136976); + assert(unsigned(zero_extend(0x21714, 64)) == 136980); + assert(unsigned(zero_extend(0x21718, 64)) == 136984); + assert(unsigned(zero_extend(0x21720, 64)) == 136992); + assert(unsigned(zero_extend(0x2174c, 64)) == 137036); + assert(unsigned(zero_extend(0x21750, 64)) == 137040); + assert(unsigned(zero_extend(0x21751, 64)) == 137041); + assert(unsigned(zero_extend(0x21752, 64)) == 137042); + assert(unsigned(zero_extend(0x21753, 64)) == 137043); + assert(unsigned(zero_extend(0x21754, 64)) == 137044); + assert(unsigned(zero_extend(0x21755, 64)) == 137045); + assert(unsigned(zero_extend(0x21756, 64)) == 137046); + assert(unsigned(zero_extend(0x21757, 64)) == 137047); + assert(unsigned(zero_extend(0x21758, 64)) == 137048); + assert(unsigned(zero_extend(0x21759, 64)) == 137049); + assert(unsigned(zero_extend(0x2175a, 64)) == 137050); + assert(unsigned(zero_extend(0x2175b, 64)) == 137051); + assert(unsigned(zero_extend(0x2175c, 64)) == 137052); + assert(unsigned(zero_extend(0x2175d, 64)) == 137053); + assert(unsigned(zero_extend(0x2175e, 64)) == 137054); + assert(unsigned(zero_extend(0x2175f, 64)) == 137055); + assert(unsigned(zero_extend(0x21760, 64)) == 137056); + assert(unsigned(zero_extend(0x21761, 64)) == 137057); + assert(unsigned(zero_extend(0x21764, 64)) == 137060); + assert(unsigned(zero_extend(0x21765, 64)) == 137061); + assert(unsigned(zero_extend(0x21766, 64)) == 137062); + assert(unsigned(zero_extend(0x21767, 64)) == 137063); + assert(unsigned(zero_extend(0x21768, 64)) == 137064); + assert(unsigned(zero_extend(0x21769, 64)) == 137065); + assert(unsigned(zero_extend(0x2176a, 64)) == 137066); + assert(unsigned(zero_extend(0x2176c, 64)) == 137068); + assert(unsigned(zero_extend(0x21770, 64)) == 137072); + assert(unsigned(zero_extend(0x21778, 64)) == 137080); + assert(unsigned(zero_extend(0x217a8, 64)) == 137128); + assert(unsigned(zero_extend(0x217a9, 64)) == 137129); + assert(unsigned(zero_extend(0x217aa, 64)) == 137130); + assert(unsigned(zero_extend(0x217ab, 64)) == 137131); + assert(unsigned(zero_extend(0x217ac, 64)) == 137132); + assert(unsigned(zero_extend(0x217ad, 64)) == 137133); + assert(unsigned(zero_extend(0x217ae, 64)) == 137134); + assert(unsigned(zero_extend(0x217af, 64)) == 137135); + assert(unsigned(zero_extend(0x217b0, 64)) == 137136); + assert(unsigned(zero_extend(0x217b1, 64)) == 137137); + assert(unsigned(zero_extend(0x217b2, 64)) == 137138); + assert(unsigned(zero_extend(0x217b3, 64)) == 137139); + assert(unsigned(zero_extend(0x217b4, 64)) == 137140); + assert(unsigned(zero_extend(0x217b5, 64)) == 137141); + assert(unsigned(zero_extend(0x217b6, 64)) == 137142); + assert(unsigned(zero_extend(0x217b7, 64)) == 137143); + assert(unsigned(zero_extend(0x217b8, 64)) == 137144); + assert(unsigned(zero_extend(0x217b9, 64)) == 137145); + assert(unsigned(zero_extend(0x217bc, 64)) == 137148); + assert(unsigned(zero_extend(0x217bd, 64)) == 137149); + assert(unsigned(zero_extend(0x217be, 64)) == 137150); + assert(unsigned(zero_extend(0x217bf, 64)) == 137151); + assert(unsigned(zero_extend(0x217c0, 64)) == 137152); + assert(unsigned(zero_extend(0x217c1, 64)) == 137153); + assert(unsigned(zero_extend(0x217c2, 64)) == 137154); + assert(unsigned(zero_extend(0x21820, 64)) == 137248); + assert(unsigned(zero_extend(0x21824, 64)) == 137252); + assert(unsigned(zero_extend(0x21828, 64)) == 137256); + assert(unsigned(zero_extend(0x2182c, 64)) == 137260); + assert(unsigned(zero_extend(0x21830, 64)) == 137264); + assert(unsigned(zero_extend(0x21834, 64)) == 137268); + assert(unsigned(zero_extend(0x21838, 64)) == 137272); + assert(unsigned(zero_extend(0x2183c, 64)) == 137276); + assert(unsigned(zero_extend(0x21840, 64)) == 137280); + assert(unsigned(zero_extend(0x21844, 64)) == 137284); + assert(unsigned(zero_extend(0x21848, 64)) == 137288); + assert(unsigned(zero_extend(0x2184c, 64)) == 137292); + assert(unsigned(zero_extend(0x21850, 64)) == 137296); + assert(unsigned(zero_extend(0x21854, 64)) == 137300); + assert(unsigned(zero_extend(0x21858, 64)) == 137304); + assert(unsigned(zero_extend(0x2185c, 64)) == 137308); + assert(unsigned(zero_extend(0x21860, 64)) == 137312); + assert(unsigned(zero_extend(0x21864, 64)) == 137316); + assert(unsigned(zero_extend(0x21868, 64)) == 137320); + assert(unsigned(zero_extend(0x2186c, 64)) == 137324); + assert(unsigned(zero_extend(0x21870, 64)) == 137328); + assert(unsigned(zero_extend(0x21874, 64)) == 137332); + assert(unsigned(zero_extend(0x21878, 64)) == 137336); + assert(unsigned(zero_extend(0x2187c, 64)) == 137340); + assert(unsigned(zero_extend(0x21880, 64)) == 137344); + assert(unsigned(zero_extend(0x21884, 64)) == 137348); + assert(unsigned(zero_extend(0x21888, 64)) == 137352); + assert(unsigned(zero_extend(0x2188c, 64)) == 137356); + assert(unsigned(zero_extend(0x21890, 64)) == 137360); + assert(unsigned(zero_extend(0x21894, 64)) == 137364); + assert(unsigned(zero_extend(0x21898, 64)) == 137368); + assert(unsigned(zero_extend(0x2189c, 64)) == 137372); + assert(unsigned(zero_extend(0x218a0, 64)) == 137376); + assert(unsigned(zero_extend(0x218a4, 64)) == 137380); + assert(unsigned(zero_extend(0x218a8, 64)) == 137384); + assert(unsigned(zero_extend(0x218ac, 64)) == 137388); + assert(unsigned(zero_extend(0x218b0, 64)) == 137392); + assert(unsigned(zero_extend(0x218b4, 64)) == 137396); + assert(unsigned(zero_extend(0x218b8, 64)) == 137400); + assert(unsigned(zero_extend(0x218bc, 64)) == 137404); + assert(unsigned(zero_extend(0x218c0, 64)) == 137408); + assert(unsigned(zero_extend(0x218c4, 64)) == 137412); + assert(unsigned(zero_extend(0x218c8, 64)) == 137416); + assert(unsigned(zero_extend(0x218cc, 64)) == 137420); + assert(unsigned(zero_extend(0x218d0, 64)) == 137424); + assert(unsigned(zero_extend(0x218d4, 64)) == 137428); + assert(unsigned(zero_extend(0x218d8, 64)) == 137432); + assert(unsigned(zero_extend(0x218dc, 64)) == 137436); + assert(unsigned(zero_extend(0x218e0, 64)) == 137440); + assert(unsigned(zero_extend(0x218e4, 64)) == 137444); + assert(unsigned(zero_extend(0x218e8, 64)) == 137448); + assert(unsigned(zero_extend(0x218ec, 64)) == 137452); + assert(unsigned(zero_extend(0x218f0, 64)) == 137456); + assert(unsigned(zero_extend(0x218f4, 64)) == 137460); + assert(unsigned(zero_extend(0x218f8, 64)) == 137464); + assert(unsigned(zero_extend(0x218fc, 64)) == 137468); + assert(unsigned(zero_extend(0x21900, 64)) == 137472); + assert(unsigned(zero_extend(0x21904, 64)) == 137476); + assert(unsigned(zero_extend(0x21908, 64)) == 137480); + assert(unsigned(zero_extend(0x2190c, 64)) == 137484); + assert(unsigned(zero_extend(0x21910, 64)) == 137488); + assert(unsigned(zero_extend(0x21914, 64)) == 137492); + assert(unsigned(zero_extend(0x21918, 64)) == 137496); + assert(unsigned(zero_extend(0x2191c, 64)) == 137500); + assert(unsigned(zero_extend(0x21920, 64)) == 137504); + assert(unsigned(zero_extend(0x21924, 64)) == 137508); + assert(unsigned(zero_extend(0x21928, 64)) == 137512); + assert(unsigned(zero_extend(0x2192c, 64)) == 137516); + assert(unsigned(zero_extend(0x21930, 64)) == 137520); + assert(unsigned(zero_extend(0x21934, 64)) == 137524); + assert(unsigned(zero_extend(0x21938, 64)) == 137528); + assert(unsigned(zero_extend(0x2193c, 64)) == 137532); + assert(unsigned(zero_extend(0x21940, 64)) == 137536); + assert(unsigned(zero_extend(0x21944, 64)) == 137540); + assert(unsigned(zero_extend(0x21948, 64)) == 137544); + assert(unsigned(zero_extend(0x2194c, 64)) == 137548); + assert(unsigned(zero_extend(0x21950, 64)) == 137552); + assert(unsigned(zero_extend(0x21954, 64)) == 137556); + assert(unsigned(zero_extend(0x21958, 64)) == 137560); + assert(unsigned(zero_extend(0x2195c, 64)) == 137564); + assert(unsigned(zero_extend(0x21960, 64)) == 137568); + assert(unsigned(zero_extend(0x21964, 64)) == 137572); + assert(unsigned(zero_extend(0x21968, 64)) == 137576); + assert(unsigned(zero_extend(0x2196c, 64)) == 137580); + assert(unsigned(zero_extend(0x2196d, 64)) == 137581); + assert(unsigned(zero_extend(0x2196e, 64)) == 137582); + assert(unsigned(zero_extend(0x2196f, 64)) == 137583); + assert(unsigned(zero_extend(0x21970, 64)) == 137584); + assert(unsigned(zero_extend(0x21971, 64)) == 137585); + assert(unsigned(zero_extend(0x21972, 64)) == 137586); + assert(unsigned(zero_extend(0x21973, 64)) == 137587); + assert(unsigned(zero_extend(0x21974, 64)) == 137588); + assert(unsigned(zero_extend(0x21975, 64)) == 137589); + assert(unsigned(zero_extend(0x21976, 64)) == 137590); + assert(unsigned(zero_extend(0x21977, 64)) == 137591); + assert(unsigned(zero_extend(0x21978, 64)) == 137592); + assert(unsigned(zero_extend(0x21979, 64)) == 137593); + assert(unsigned(zero_extend(0x2197a, 64)) == 137594); + assert(unsigned(zero_extend(0x2197b, 64)) == 137595); + assert(unsigned(zero_extend(0x2197c, 64)) == 137596); + assert(unsigned(zero_extend(0x2197d, 64)) == 137597); + assert(unsigned(zero_extend(0x2197e, 64)) == 137598); + assert(unsigned(zero_extend(0x2197f, 64)) == 137599); + assert(unsigned(zero_extend(0x21980, 64)) == 137600); + assert(unsigned(zero_extend(0x21981, 64)) == 137601); + assert(unsigned(zero_extend(0x21982, 64)) == 137602); + assert(unsigned(zero_extend(0x21983, 64)) == 137603); + assert(unsigned(zero_extend(0x21984, 64)) == 137604); + assert(unsigned(zero_extend(0x21988, 64)) == 137608); + assert(unsigned(zero_extend(0x2198c, 64)) == 137612); + assert(unsigned(zero_extend(0x21990, 64)) == 137616); + assert(unsigned(zero_extend(0x21994, 64)) == 137620); + assert(unsigned(zero_extend(0x21998, 64)) == 137624); + assert(unsigned(zero_extend(0x2199c, 64)) == 137628); + assert(unsigned(zero_extend(0x219a0, 64)) == 137632); + assert(unsigned(zero_extend(0x219a4, 64)) == 137636); + assert(unsigned(zero_extend(0x219a8, 64)) == 137640); + assert(unsigned(zero_extend(0x219ac, 64)) == 137644); + assert(unsigned(zero_extend(0x219b0, 64)) == 137648); + assert(unsigned(zero_extend(0x219b4, 64)) == 137652); + assert(unsigned(zero_extend(0x219b8, 64)) == 137656); + assert(unsigned(zero_extend(0x219bc, 64)) == 137660); + assert(unsigned(zero_extend(0x219c0, 64)) == 137664); + assert(unsigned(zero_extend(0x219c4, 64)) == 137668); + assert(unsigned(zero_extend(0x219c5, 64)) == 137669); + assert(unsigned(zero_extend(0x219c6, 64)) == 137670); + assert(unsigned(zero_extend(0x219c7, 64)) == 137671); + assert(unsigned(zero_extend(0x219c8, 64)) == 137672); + assert(unsigned(zero_extend(0x219c9, 64)) == 137673); + assert(unsigned(zero_extend(0x219ca, 64)) == 137674); + assert(unsigned(zero_extend(0x219cb, 64)) == 137675); + assert(unsigned(zero_extend(0x219cc, 64)) == 137676); + assert(unsigned(zero_extend(0x219cd, 64)) == 137677); + assert(unsigned(zero_extend(0x219ce, 64)) == 137678); + assert(unsigned(zero_extend(0x219cf, 64)) == 137679); + assert(unsigned(zero_extend(0x219d0, 64)) == 137680); + assert(unsigned(zero_extend(0x219d1, 64)) == 137681); + assert(unsigned(zero_extend(0x219d2, 64)) == 137682); + assert(unsigned(zero_extend(0x219d3, 64)) == 137683); + assert(unsigned(zero_extend(0x219d4, 64)) == 137684); + assert(unsigned(zero_extend(0x219d5, 64)) == 137685); + assert(unsigned(zero_extend(0x219d6, 64)) == 137686); + assert(unsigned(zero_extend(0x219d7, 64)) == 137687); + assert(unsigned(zero_extend(0x219d8, 64)) == 137688); + assert(unsigned(zero_extend(0x219d9, 64)) == 137689); + assert(unsigned(zero_extend(0x219da, 64)) == 137690); + assert(unsigned(zero_extend(0x219db, 64)) == 137691); + assert(unsigned(zero_extend(0x219dc, 64)) == 137692); + assert(unsigned(zero_extend(0x219e0, 64)) == 137696); + assert(unsigned(zero_extend(0x219e4, 64)) == 137700); + assert(unsigned(zero_extend(0x219e8, 64)) == 137704); + assert(unsigned(zero_extend(0x219ec, 64)) == 137708); + assert(unsigned(zero_extend(0x219f0, 64)) == 137712); + assert(unsigned(zero_extend(0x219f4, 64)) == 137716); + assert(unsigned(zero_extend(0x219f8, 64)) == 137720); + assert(unsigned(zero_extend(0x219fc, 64)) == 137724); + assert(unsigned(zero_extend(0x21a00, 64)) == 137728); + assert(unsigned(zero_extend(0x21a04, 64)) == 137732); + assert(unsigned(zero_extend(0x21a08, 64)) == 137736); + assert(unsigned(zero_extend(0x21a0c, 64)) == 137740); + assert(unsigned(zero_extend(0x21a10, 64)) == 137744); + assert(unsigned(zero_extend(0x21a14, 64)) == 137748); + assert(unsigned(zero_extend(0x21a18, 64)) == 137752); + assert(unsigned(zero_extend(0x21a1c, 64)) == 137756); + assert(unsigned(zero_extend(0x21a20, 64)) == 137760); + assert(unsigned(zero_extend(0x21a24, 64)) == 137764); + assert(unsigned(zero_extend(0x21a28, 64)) == 137768); + assert(unsigned(zero_extend(0x21a2c, 64)) == 137772); + assert(unsigned(zero_extend(0x21a30, 64)) == 137776); + assert(unsigned(zero_extend(0x21a34, 64)) == 137780); + assert(unsigned(zero_extend(0x21a38, 64)) == 137784); + assert(unsigned(zero_extend(0x21a3c, 64)) == 137788); + assert(unsigned(zero_extend(0x21a40, 64)) == 137792); + assert(unsigned(zero_extend(0x21a44, 64)) == 137796); + assert(unsigned(zero_extend(0x21a48, 64)) == 137800); + assert(unsigned(zero_extend(0x21a4c, 64)) == 137804); + assert(unsigned(zero_extend(0x21a50, 64)) == 137808); + assert(unsigned(zero_extend(0x21a54, 64)) == 137812); + assert(unsigned(zero_extend(0x21a58, 64)) == 137816); + assert(unsigned(zero_extend(0x21a5c, 64)) == 137820); + assert(unsigned(zero_extend(0x21a60, 64)) == 137824); + assert(unsigned(zero_extend(0x21a64, 64)) == 137828); + assert(unsigned(zero_extend(0x21a68, 64)) == 137832); + assert(unsigned(zero_extend(0x21a6c, 64)) == 137836); + assert(unsigned(zero_extend(0x21a70, 64)) == 137840); + assert(unsigned(zero_extend(0x21a74, 64)) == 137844); + assert(unsigned(zero_extend(0x21a78, 64)) == 137848); + assert(unsigned(zero_extend(0x21a7c, 64)) == 137852); + assert(unsigned(zero_extend(0x21a80, 64)) == 137856); + assert(unsigned(zero_extend(0x21a84, 64)) == 137860); + assert(unsigned(zero_extend(0x21a88, 64)) == 137864); + assert(unsigned(zero_extend(0x21a8c, 64)) == 137868); + assert(unsigned(zero_extend(0x21a90, 64)) == 137872); + assert(unsigned(zero_extend(0x21a91, 64)) == 137873); + assert(unsigned(zero_extend(0x21a92, 64)) == 137874); + assert(unsigned(zero_extend(0x21a93, 64)) == 137875); + assert(unsigned(zero_extend(0x21a94, 64)) == 137876); + assert(unsigned(zero_extend(0x21a95, 64)) == 137877); + assert(unsigned(zero_extend(0x21a96, 64)) == 137878); + assert(unsigned(zero_extend(0x21a97, 64)) == 137879); + assert(unsigned(zero_extend(0x21a98, 64)) == 137880); + assert(unsigned(zero_extend(0x21a99, 64)) == 137881); + assert(unsigned(zero_extend(0x21a9a, 64)) == 137882); + assert(unsigned(zero_extend(0x21a9b, 64)) == 137883); + assert(unsigned(zero_extend(0x21a9c, 64)) == 137884); + assert(unsigned(zero_extend(0x21a9d, 64)) == 137885); + assert(unsigned(zero_extend(0x21a9e, 64)) == 137886); + assert(unsigned(zero_extend(0x21a9f, 64)) == 137887); + assert(unsigned(zero_extend(0x21aa0, 64)) == 137888); + assert(unsigned(zero_extend(0x21aa1, 64)) == 137889); + assert(unsigned(zero_extend(0x21aa2, 64)) == 137890); + assert(unsigned(zero_extend(0x21aa3, 64)) == 137891); + assert(unsigned(zero_extend(0x21aa4, 64)) == 137892); + assert(unsigned(zero_extend(0x21aa5, 64)) == 137893); + assert(unsigned(zero_extend(0x21aa6, 64)) == 137894); + assert(unsigned(zero_extend(0x21aa7, 64)) == 137895); + assert(unsigned(zero_extend(0x21aa8, 64)) == 137896); + assert(unsigned(zero_extend(0x21aa9, 64)) == 137897); + assert(unsigned(zero_extend(0x21aaa, 64)) == 137898); + assert(unsigned(zero_extend(0x21ae0, 64)) == 137952); + assert(unsigned(zero_extend(0x21ae8, 64)) == 137960); + assert(unsigned(zero_extend(0x21ae9, 64)) == 137961); + assert(unsigned(zero_extend(0x21aea, 64)) == 137962); + assert(unsigned(zero_extend(0x21aeb, 64)) == 137963); + assert(unsigned(zero_extend(0x21aec, 64)) == 137964); + assert(unsigned(zero_extend(0x21aed, 64)) == 137965); + assert(unsigned(zero_extend(0x21aee, 64)) == 137966); + assert(unsigned(zero_extend(0x21aef, 64)) == 137967); + assert(unsigned(zero_extend(0x21af0, 64)) == 137968); + assert(unsigned(zero_extend(0x21af1, 64)) == 137969); + assert(unsigned(zero_extend(0x21af2, 64)) == 137970); + assert(unsigned(zero_extend(0x21af3, 64)) == 137971); + assert(unsigned(zero_extend(0x21af4, 64)) == 137972); + assert(unsigned(zero_extend(0x21af5, 64)) == 137973); + assert(unsigned(zero_extend(0x21af6, 64)) == 137974); + assert(unsigned(zero_extend(0x21af7, 64)) == 137975); + assert(unsigned(zero_extend(0x21af8, 64)) == 137976); + assert(unsigned(zero_extend(0x21af9, 64)) == 137977); + assert(unsigned(zero_extend(0x21afa, 64)) == 137978); + assert(unsigned(zero_extend(0x21afb, 64)) == 137979); + assert(unsigned(zero_extend(0x21afc, 64)) == 137980); + assert(unsigned(zero_extend(0x21afd, 64)) == 137981); + assert(unsigned(zero_extend(0x21afe, 64)) == 137982); + assert(unsigned(zero_extend(0x21aff, 64)) == 137983); + assert(unsigned(zero_extend(0x21b00, 64)) == 137984); + assert(unsigned(zero_extend(0x21b01, 64)) == 137985); + assert(unsigned(zero_extend(0x21b02, 64)) == 137986); + assert(unsigned(zero_extend(0x21c08, 64)) == 138248); + assert(unsigned(zero_extend(0x21c0c, 64)) == 138252); + assert(unsigned(zero_extend(0x21c10, 64)) == 138256); + assert(unsigned(zero_extend(0x21c14, 64)) == 138260); + assert(unsigned(zero_extend(0x21c18, 64)) == 138264); + assert(unsigned(zero_extend(0x21c1c, 64)) == 138268); + assert(unsigned(zero_extend(0x21c20, 64)) == 138272); + assert(unsigned(zero_extend(0x21c24, 64)) == 138276); + assert(unsigned(zero_extend(0x21c28, 64)) == 138280); + assert(unsigned(zero_extend(0x21c2c, 64)) == 138284); + assert(unsigned(zero_extend(0x21c30, 64)) == 138288); + assert(unsigned(zero_extend(0x21c34, 64)) == 138292); + assert(unsigned(zero_extend(0x21c38, 64)) == 138296); + assert(unsigned(zero_extend(0x21c3c, 64)) == 138300); + assert(unsigned(zero_extend(0x21c40, 64)) == 138304); + assert(unsigned(zero_extend(0x21c44, 64)) == 138308); + assert(unsigned(zero_extend(0x21c48, 64)) == 138312); + assert(unsigned(zero_extend(0x21c4c, 64)) == 138316); + assert(unsigned(zero_extend(0x21c50, 64)) == 138320); + assert(unsigned(zero_extend(0x21c54, 64)) == 138324); + assert(unsigned(zero_extend(0x21c58, 64)) == 138328); + assert(unsigned(zero_extend(0x21c5c, 64)) == 138332); + assert(unsigned(zero_extend(0x21c60, 64)) == 138336); + assert(unsigned(zero_extend(0x21c64, 64)) == 138340); + assert(unsigned(zero_extend(0x21c68, 64)) == 138344); + assert(unsigned(zero_extend(0x21c6c, 64)) == 138348); + assert(unsigned(zero_extend(0x21c70, 64)) == 138352); + assert(unsigned(zero_extend(0x21c74, 64)) == 138356); + assert(unsigned(zero_extend(0x21c78, 64)) == 138360); + assert(unsigned(zero_extend(0x21c7c, 64)) == 138364); + assert(unsigned(zero_extend(0x21c80, 64)) == 138368); + assert(unsigned(zero_extend(0x21c84, 64)) == 138372); + assert(unsigned(zero_extend(0x21c88, 64)) == 138376); + assert(unsigned(zero_extend(0x21c8c, 64)) == 138380); + assert(unsigned(zero_extend(0x21c90, 64)) == 138384); + assert(unsigned(zero_extend(0x21c94, 64)) == 138388); + assert(unsigned(zero_extend(0x21c98, 64)) == 138392); + assert(unsigned(zero_extend(0x21c9c, 64)) == 138396); + assert(unsigned(zero_extend(0x21ca0, 64)) == 138400); + assert(unsigned(zero_extend(0x21ca4, 64)) == 138404); + assert(unsigned(zero_extend(0x21ca8, 64)) == 138408); + assert(unsigned(zero_extend(0x21cac, 64)) == 138412); + assert(unsigned(zero_extend(0x21cb0, 64)) == 138416); + assert(unsigned(zero_extend(0x21cb4, 64)) == 138420); + assert(unsigned(zero_extend(0x21cb8, 64)) == 138424); + assert(unsigned(zero_extend(0x21cbc, 64)) == 138428); + assert(unsigned(zero_extend(0x21cc0, 64)) == 138432); + assert(unsigned(zero_extend(0x21cc4, 64)) == 138436); + assert(unsigned(zero_extend(0x21cc8, 64)) == 138440); + assert(unsigned(zero_extend(0x21ccc, 64)) == 138444); + assert(unsigned(zero_extend(0x21cd0, 64)) == 138448); + assert(unsigned(zero_extend(0x21cd4, 64)) == 138452); + assert(unsigned(zero_extend(0x21cd8, 64)) == 138456); + assert(unsigned(zero_extend(0x21cdc, 64)) == 138460); + assert(unsigned(zero_extend(0x21ce0, 64)) == 138464); + assert(unsigned(zero_extend(0x21ce4, 64)) == 138468); + assert(unsigned(zero_extend(0x21ce8, 64)) == 138472); + assert(unsigned(zero_extend(0x21cec, 64)) == 138476); + assert(unsigned(zero_extend(0x21cf0, 64)) == 138480); + assert(unsigned(zero_extend(0x21cf4, 64)) == 138484); + assert(unsigned(zero_extend(0x21cf8, 64)) == 138488); + assert(unsigned(zero_extend(0x21cfc, 64)) == 138492); + assert(unsigned(zero_extend(0x21d00, 64)) == 138496); + assert(unsigned(zero_extend(0x21d04, 64)) == 138500); + assert(unsigned(zero_extend(0x21d08, 64)) == 138504); + assert(unsigned(zero_extend(0x21d09, 64)) == 138505); + assert(unsigned(zero_extend(0x21d0a, 64)) == 138506); + assert(unsigned(zero_extend(0x21d0b, 64)) == 138507); + assert(unsigned(zero_extend(0x21d0c, 64)) == 138508); + assert(unsigned(zero_extend(0x21d0d, 64)) == 138509); + assert(unsigned(zero_extend(0x21d0e, 64)) == 138510); + assert(unsigned(zero_extend(0x21d0f, 64)) == 138511); + assert(unsigned(zero_extend(0x21d10, 64)) == 138512); + assert(unsigned(zero_extend(0x21d11, 64)) == 138513); + assert(unsigned(zero_extend(0x21d14, 64)) == 138516); + assert(unsigned(zero_extend(0x21d15, 64)) == 138517); + assert(unsigned(zero_extend(0x21d16, 64)) == 138518); + assert(unsigned(zero_extend(0x21d17, 64)) == 138519); + assert(unsigned(zero_extend(0x21d18, 64)) == 138520); + assert(unsigned(zero_extend(0x21d19, 64)) == 138521); + assert(unsigned(zero_extend(0x21d1a, 64)) == 138522); + assert(unsigned(zero_extend(0x21d1b, 64)) == 138523); + assert(unsigned(zero_extend(0x21d1c, 64)) == 138524); + assert(unsigned(zero_extend(0x21d1d, 64)) == 138525); + assert(unsigned(zero_extend(0x21d1e, 64)) == 138526); + assert(unsigned(zero_extend(0x21d1f, 64)) == 138527); + assert(unsigned(zero_extend(0x21d20, 64)) == 138528); + assert(unsigned(zero_extend(0x21d21, 64)) == 138529); + assert(unsigned(zero_extend(0x21d22, 64)) == 138530); + assert(unsigned(zero_extend(0x21d23, 64)) == 138531); + assert(unsigned(zero_extend(0x21d24, 64)) == 138532); + assert(unsigned(zero_extend(0x21d25, 64)) == 138533); + assert(unsigned(zero_extend(0x21d26, 64)) == 138534); + assert(unsigned(zero_extend(0x21d27, 64)) == 138535); + assert(unsigned(zero_extend(0x21d28, 64)) == 138536); + assert(unsigned(zero_extend(0x21d29, 64)) == 138537); + assert(unsigned(zero_extend(0x21d2a, 64)) == 138538); + assert(unsigned(zero_extend(0x21d2b, 64)) == 138539); + assert(unsigned(zero_extend(0x21d2c, 64)) == 138540); + assert(unsigned(zero_extend(0x21d2d, 64)) == 138541); + assert(unsigned(zero_extend(0x21d30, 64)) == 138544); + assert(unsigned(zero_extend(0x21d31, 64)) == 138545); + assert(unsigned(zero_extend(0x21d32, 64)) == 138546); + assert(unsigned(zero_extend(0x21d33, 64)) == 138547); + assert(unsigned(zero_extend(0x21d34, 64)) == 138548); + assert(unsigned(zero_extend(0x21d35, 64)) == 138549); + assert(unsigned(zero_extend(0x21d36, 64)) == 138550); + assert(unsigned(zero_extend(0x21d37, 64)) == 138551); + assert(unsigned(zero_extend(0x21d38, 64)) == 138552); + assert(unsigned(zero_extend(0x21d39, 64)) == 138553); + assert(unsigned(zero_extend(0x21d3c, 64)) == 138556); + assert(unsigned(zero_extend(0x21d3d, 64)) == 138557); + assert(unsigned(zero_extend(0x21d3e, 64)) == 138558); + assert(unsigned(zero_extend(0x21d3f, 64)) == 138559); + assert(unsigned(zero_extend(0x21d40, 64)) == 138560); + assert(unsigned(zero_extend(0x21d41, 64)) == 138561); + assert(unsigned(zero_extend(0x21d42, 64)) == 138562); + assert(unsigned(zero_extend(0x21d43, 64)) == 138563); + assert(unsigned(zero_extend(0x21d44, 64)) == 138564); + assert(unsigned(zero_extend(0x21d45, 64)) == 138565); + assert(unsigned(zero_extend(0x21d48, 64)) == 138568); + assert(unsigned(zero_extend(0x21d49, 64)) == 138569); + assert(unsigned(zero_extend(0x21d4a, 64)) == 138570); + assert(unsigned(zero_extend(0x21d4b, 64)) == 138571); + assert(unsigned(zero_extend(0x21d4c, 64)) == 138572); + assert(unsigned(zero_extend(0x21d4d, 64)) == 138573); + assert(unsigned(zero_extend(0x21d4e, 64)) == 138574); + assert(unsigned(zero_extend(0x21d4f, 64)) == 138575); + assert(unsigned(zero_extend(0x21d50, 64)) == 138576); + assert(unsigned(zero_extend(0x21d51, 64)) == 138577); + assert(unsigned(zero_extend(0x21d54, 64)) == 138580); + assert(unsigned(zero_extend(0x21d55, 64)) == 138581); + assert(unsigned(zero_extend(0x21d56, 64)) == 138582); + assert(unsigned(zero_extend(0x21d57, 64)) == 138583); + assert(unsigned(zero_extend(0x21d58, 64)) == 138584); + assert(unsigned(zero_extend(0x21d59, 64)) == 138585); + assert(unsigned(zero_extend(0x21d5a, 64)) == 138586); + assert(unsigned(zero_extend(0x21d5b, 64)) == 138587); + assert(unsigned(zero_extend(0x21d5c, 64)) == 138588); + assert(unsigned(zero_extend(0x21d5d, 64)) == 138589); + assert(unsigned(zero_extend(0x21d60, 64)) == 138592); + assert(unsigned(zero_extend(0x21d61, 64)) == 138593); + assert(unsigned(zero_extend(0x21d62, 64)) == 138594); + assert(unsigned(zero_extend(0x21d63, 64)) == 138595); + assert(unsigned(zero_extend(0x21d64, 64)) == 138596); + assert(unsigned(zero_extend(0x21d65, 64)) == 138597); + assert(unsigned(zero_extend(0x21d66, 64)) == 138598); + assert(unsigned(zero_extend(0x21d67, 64)) == 138599); + assert(unsigned(zero_extend(0x21d68, 64)) == 138600); + assert(unsigned(zero_extend(0x21d69, 64)) == 138601); + assert(unsigned(zero_extend(0x21d6c, 64)) == 138604); + assert(unsigned(zero_extend(0x21d6d, 64)) == 138605); + assert(unsigned(zero_extend(0x21d6e, 64)) == 138606); + assert(unsigned(zero_extend(0x21d6f, 64)) == 138607); + assert(unsigned(zero_extend(0x21d70, 64)) == 138608); + assert(unsigned(zero_extend(0x21d71, 64)) == 138609); + assert(unsigned(zero_extend(0x21d72, 64)) == 138610); + assert(unsigned(zero_extend(0x21d73, 64)) == 138611); + assert(unsigned(zero_extend(0x21d74, 64)) == 138612); + assert(unsigned(zero_extend(0x21d75, 64)) == 138613); + assert(unsigned(zero_extend(0x21d76, 64)) == 138614); + assert(unsigned(zero_extend(0x21d77, 64)) == 138615); + assert(unsigned(zero_extend(0x21d78, 64)) == 138616); + assert(unsigned(zero_extend(0x21d79, 64)) == 138617); + assert(unsigned(zero_extend(0x21d7a, 64)) == 138618); + assert(unsigned(zero_extend(0x21d7b, 64)) == 138619); + assert(unsigned(zero_extend(0x21d7c, 64)) == 138620); + assert(unsigned(zero_extend(0x21d7d, 64)) == 138621); + assert(unsigned(zero_extend(0x21d7e, 64)) == 138622); + assert(unsigned(zero_extend(0x21d7f, 64)) == 138623); + assert(unsigned(zero_extend(0x21d80, 64)) == 138624); + assert(unsigned(zero_extend(0x21d81, 64)) == 138625); + assert(unsigned(zero_extend(0x21d82, 64)) == 138626); + assert(unsigned(zero_extend(0x21d83, 64)) == 138627); + assert(unsigned(zero_extend(0x21d84, 64)) == 138628); + assert(unsigned(zero_extend(0x21d85, 64)) == 138629); + assert(unsigned(zero_extend(0x21d88, 64)) == 138632); + assert(unsigned(zero_extend(0x21d89, 64)) == 138633); + assert(unsigned(zero_extend(0x21d8a, 64)) == 138634); + assert(unsigned(zero_extend(0x21d8b, 64)) == 138635); + assert(unsigned(zero_extend(0x21d8c, 64)) == 138636); + assert(unsigned(zero_extend(0x21d8d, 64)) == 138637); + assert(unsigned(zero_extend(0x21d8e, 64)) == 138638); + assert(unsigned(zero_extend(0x21d8f, 64)) == 138639); + assert(unsigned(zero_extend(0x21d90, 64)) == 138640); + assert(unsigned(zero_extend(0x21d91, 64)) == 138641); + assert(unsigned(zero_extend(0x21d94, 64)) == 138644); + assert(unsigned(zero_extend(0x21d95, 64)) == 138645); + assert(unsigned(zero_extend(0x21d96, 64)) == 138646); + assert(unsigned(zero_extend(0x21d97, 64)) == 138647); + assert(unsigned(zero_extend(0x21d98, 64)) == 138648); + assert(unsigned(zero_extend(0x21d99, 64)) == 138649); + assert(unsigned(zero_extend(0x21d9a, 64)) == 138650); + assert(unsigned(zero_extend(0x21d9b, 64)) == 138651); + assert(unsigned(zero_extend(0x21d9c, 64)) == 138652); + assert(unsigned(zero_extend(0x21d9d, 64)) == 138653); + assert(unsigned(zero_extend(0x21da0, 64)) == 138656); + assert(unsigned(zero_extend(0x21da1, 64)) == 138657); + assert(unsigned(zero_extend(0x21da2, 64)) == 138658); + assert(unsigned(zero_extend(0x21da3, 64)) == 138659); + assert(unsigned(zero_extend(0x21da4, 64)) == 138660); + assert(unsigned(zero_extend(0x21da5, 64)) == 138661); + assert(unsigned(zero_extend(0x21da6, 64)) == 138662); + assert(unsigned(zero_extend(0x21da7, 64)) == 138663); + assert(unsigned(zero_extend(0x21da8, 64)) == 138664); + assert(unsigned(zero_extend(0x21da9, 64)) == 138665); + assert(unsigned(zero_extend(0x21dac, 64)) == 138668); + assert(unsigned(zero_extend(0x21dad, 64)) == 138669); + assert(unsigned(zero_extend(0x21dae, 64)) == 138670); + assert(unsigned(zero_extend(0x21daf, 64)) == 138671); + assert(unsigned(zero_extend(0x21db0, 64)) == 138672); + assert(unsigned(zero_extend(0x21db1, 64)) == 138673); + assert(unsigned(zero_extend(0x21db2, 64)) == 138674); + assert(unsigned(zero_extend(0x21db3, 64)) == 138675); + assert(unsigned(zero_extend(0x21db4, 64)) == 138676); + assert(unsigned(zero_extend(0x21db5, 64)) == 138677); + assert(unsigned(zero_extend(0x21f68, 64)) == 139112); + assert(unsigned(zero_extend(0x21f6c, 64)) == 139116); + assert(unsigned(zero_extend(0x21f70, 64)) == 139120); + assert(unsigned(zero_extend(0x21f74, 64)) == 139124); + assert(unsigned(zero_extend(0x21f78, 64)) == 139128); + assert(unsigned(zero_extend(0x21f7c, 64)) == 139132); + assert(unsigned(zero_extend(0x21f90, 64)) == 139152); + assert(unsigned(zero_extend(0x21f98, 64)) == 139160); + assert(unsigned(zero_extend(0x21fc0, 64)) == 139200); + assert(unsigned(zero_extend(0x21fc4, 64)) == 139204); + assert(unsigned(zero_extend(0x21fc8, 64)) == 139208); + assert(unsigned(zero_extend(0x21fcc, 64)) == 139212); + assert(unsigned(zero_extend(0x21fd0, 64)) == 139216); + assert(unsigned(zero_extend(0x21fd4, 64)) == 139220); + assert(unsigned(zero_extend(0x21fe8, 64)) == 139240); + assert(unsigned(zero_extend(0x21ff0, 64)) == 139248); + assert(unsigned(zero_extend(0x21ff8, 64)) == 139256); + assert(unsigned(zero_extend(0x22, 64)) == 34); + assert(unsigned(zero_extend(0x220, 64)) == 544); + assert(unsigned(zero_extend(0x2200, 64)) == 8704); + assert(unsigned(zero_extend(0x22000, 64)) == 139264); + assert(unsigned(zero_extend(0x22050, 64)) == 139344); + assert(unsigned(zero_extend(0x22088, 64)) == 139400); + assert(unsigned(zero_extend(0x2208c, 64)) == 139404); + assert(unsigned(zero_extend(0x22090, 64)) == 139408); + assert(unsigned(zero_extend(0x22098, 64)) == 139416); + assert(unsigned(zero_extend(0x220e0, 64)) == 139488); + assert(unsigned(zero_extend(0x220e4, 64)) == 139492); + assert(unsigned(zero_extend(0x220e8, 64)) == 139496); + assert(unsigned(zero_extend(0x220f0, 64)) == 139504); + assert(unsigned(zero_extend(0x2220, 64)) == 8736); + assert(unsigned(zero_extend(0x2222222222222223, 64)) == 2459565876494606883); + assert(unsigned(zero_extend(0x22330, 64)) == 140080); + assert(unsigned(zero_extend(0x22334, 64)) == 140084); + assert(unsigned(zero_extend(0x22338, 64)) == 140088); + assert(unsigned(zero_extend(0x2233c, 64)) == 140092); + assert(unsigned(zero_extend(0x22340, 64)) == 140096); + assert(unsigned(zero_extend(0x22344, 64)) == 140100); + assert(unsigned(zero_extend(0x22348, 64)) == 140104); + assert(unsigned(zero_extend(0x2234c, 64)) == 140108); + assert(unsigned(zero_extend(0x22350, 64)) == 140112); + assert(unsigned(zero_extend(0x22354, 64)) == 140116); + assert(unsigned(zero_extend(0x22358, 64)) == 140120); + assert(unsigned(zero_extend(0x2235c, 64)) == 140124); + assert(unsigned(zero_extend(0x22360, 64)) == 140128); + assert(unsigned(zero_extend(0x22364, 64)) == 140132); + assert(unsigned(zero_extend(0x22368, 64)) == 140136); + assert(unsigned(zero_extend(0x2236c, 64)) == 140140); + assert(unsigned(zero_extend(0x22370, 64)) == 140144); + assert(unsigned(zero_extend(0x22374, 64)) == 140148); + assert(unsigned(zero_extend(0x22378, 64)) == 140152); + assert(unsigned(zero_extend(0x2237c, 64)) == 140156); + assert(unsigned(zero_extend(0x22380, 64)) == 140160); + assert(unsigned(zero_extend(0x22384, 64)) == 140164); + assert(unsigned(zero_extend(0x22388, 64)) == 140168); + assert(unsigned(zero_extend(0x2238c, 64)) == 140172); + assert(unsigned(zero_extend(0x22390, 64)) == 140176); + assert(unsigned(zero_extend(0x22394, 64)) == 140180); + assert(unsigned(zero_extend(0x22398, 64)) == 140184); + assert(unsigned(zero_extend(0x2239c, 64)) == 140188); + assert(unsigned(zero_extend(0x223a0, 64)) == 140192); + assert(unsigned(zero_extend(0x223a4, 64)) == 140196); + assert(unsigned(zero_extend(0x223a8, 64)) == 140200); + assert(unsigned(zero_extend(0x223ac, 64)) == 140204); + assert(unsigned(zero_extend(0x223b0, 64)) == 140208); + assert(unsigned(zero_extend(0x223b4, 64)) == 140212); + assert(unsigned(zero_extend(0x223b8, 64)) == 140216); + assert(unsigned(zero_extend(0x223bc, 64)) == 140220); + assert(unsigned(zero_extend(0x223c, 64)) == 8764); + assert(unsigned(zero_extend(0x223c0, 64)) == 140224); + assert(unsigned(zero_extend(0x223c4, 64)) == 140228); + assert(unsigned(zero_extend(0x223c8, 64)) == 140232); + assert(unsigned(zero_extend(0x223cc, 64)) == 140236); + assert(unsigned(zero_extend(0x223d0, 64)) == 140240); + assert(unsigned(zero_extend(0x223d4, 64)) == 140244); + assert(unsigned(zero_extend(0x223d8, 64)) == 140248); + assert(unsigned(zero_extend(0x223dc, 64)) == 140252); + assert(unsigned(zero_extend(0x223e0, 64)) == 140256); + assert(unsigned(zero_extend(0x223e4, 64)) == 140260); + assert(unsigned(zero_extend(0x223e8, 64)) == 140264); + assert(unsigned(zero_extend(0x223ec, 64)) == 140268); + assert(unsigned(zero_extend(0x223f0, 64)) == 140272); + assert(unsigned(zero_extend(0x223f4, 64)) == 140276); + assert(unsigned(zero_extend(0x223f8, 64)) == 140280); + assert(unsigned(zero_extend(0x223fc, 64)) == 140284); + assert(unsigned(zero_extend(0x22400, 64)) == 140288); + assert(unsigned(zero_extend(0x22404, 64)) == 140292); + assert(unsigned(zero_extend(0x22408, 64)) == 140296); + assert(unsigned(zero_extend(0x2240c, 64)) == 140300); + assert(unsigned(zero_extend(0x22410, 64)) == 140304); + assert(unsigned(zero_extend(0x22414, 64)) == 140308); + assert(unsigned(zero_extend(0x22418, 64)) == 140312); + assert(unsigned(zero_extend(0x22420, 64)) == 140320); + assert(unsigned(zero_extend(0x22c, 64)) == 556); + assert(unsigned(zero_extend(0x23, 64)) == 35); + assert(unsigned(zero_extend(0x23078, 64)) == 143480); + assert(unsigned(zero_extend(0x2307c, 64)) == 143484); + assert(unsigned(zero_extend(0x23080, 64)) == 143488); + assert(unsigned(zero_extend(0x23084, 64)) == 143492); + assert(unsigned(zero_extend(0x23088, 64)) == 143496); + assert(unsigned(zero_extend(0x2308c, 64)) == 143500); + assert(unsigned(zero_extend(0x23090, 64)) == 143504); + assert(unsigned(zero_extend(0x23094, 64)) == 143508); + assert(unsigned(zero_extend(0x23098, 64)) == 143512); + assert(unsigned(zero_extend(0x2309c, 64)) == 143516); + assert(unsigned(zero_extend(0x230a0, 64)) == 143520); + assert(unsigned(zero_extend(0x230a4, 64)) == 143524); + assert(unsigned(zero_extend(0x230a8, 64)) == 143528); + assert(unsigned(zero_extend(0x230ac, 64)) == 143532); + assert(unsigned(zero_extend(0x230b0, 64)) == 143536); + assert(unsigned(zero_extend(0x230b4, 64)) == 143540); + assert(unsigned(zero_extend(0x230b8, 64)) == 143544); + assert(unsigned(zero_extend(0x230bc, 64)) == 143548); + assert(unsigned(zero_extend(0x230c0, 64)) == 143552); + assert(unsigned(zero_extend(0x230c4, 64)) == 143556); + assert(unsigned(zero_extend(0x230c8, 64)) == 143560); + assert(unsigned(zero_extend(0x230cc, 64)) == 143564); + assert(unsigned(zero_extend(0x230d0, 64)) == 143568); + assert(unsigned(zero_extend(0x230d4, 64)) == 143572); + assert(unsigned(zero_extend(0x230d8, 64)) == 143576); + assert(unsigned(zero_extend(0x230dc, 64)) == 143580); + assert(unsigned(zero_extend(0x230e0, 64)) == 143584); + assert(unsigned(zero_extend(0x230e4, 64)) == 143588); + assert(unsigned(zero_extend(0x230e8, 64)) == 143592); + assert(unsigned(zero_extend(0x230ec, 64)) == 143596); + assert(unsigned(zero_extend(0x230f0, 64)) == 143600); + assert(unsigned(zero_extend(0x230f4, 64)) == 143604); + assert(unsigned(zero_extend(0x230f8, 64)) == 143608); + assert(unsigned(zero_extend(0x230fc, 64)) == 143612); + assert(unsigned(zero_extend(0x23100, 64)) == 143616); + assert(unsigned(zero_extend(0x23104, 64)) == 143620); + assert(unsigned(zero_extend(0x23108, 64)) == 143624); + assert(unsigned(zero_extend(0x2310c, 64)) == 143628); + assert(unsigned(zero_extend(0x23110, 64)) == 143632); + assert(unsigned(zero_extend(0x23114, 64)) == 143636); + assert(unsigned(zero_extend(0x23118, 64)) == 143640); + assert(unsigned(zero_extend(0x2311c, 64)) == 143644); + assert(unsigned(zero_extend(0x23120, 64)) == 143648); + assert(unsigned(zero_extend(0x23124, 64)) == 143652); + assert(unsigned(zero_extend(0x23128, 64)) == 143656); + assert(unsigned(zero_extend(0x2312c, 64)) == 143660); + assert(unsigned(zero_extend(0x23130, 64)) == 143664); + assert(unsigned(zero_extend(0x23134, 64)) == 143668); + assert(unsigned(zero_extend(0x23138, 64)) == 143672); + assert(unsigned(zero_extend(0x2313c, 64)) == 143676); + assert(unsigned(zero_extend(0x23140, 64)) == 143680); + assert(unsigned(zero_extend(0x23144, 64)) == 143684); + assert(unsigned(zero_extend(0x23148, 64)) == 143688); + assert(unsigned(zero_extend(0x2314c, 64)) == 143692); + assert(unsigned(zero_extend(0x23150, 64)) == 143696); + assert(unsigned(zero_extend(0x23154, 64)) == 143700); + assert(unsigned(zero_extend(0x23158, 64)) == 143704); + assert(unsigned(zero_extend(0x2315c, 64)) == 143708); + assert(unsigned(zero_extend(0x23160, 64)) == 143712); + assert(unsigned(zero_extend(0x23164, 64)) == 143716); + assert(unsigned(zero_extend(0x23168, 64)) == 143720); + assert(unsigned(zero_extend(0x2316c, 64)) == 143724); + assert(unsigned(zero_extend(0x23170, 64)) == 143728); + assert(unsigned(zero_extend(0x23174, 64)) == 143732); + assert(unsigned(zero_extend(0x23178, 64)) == 143736); + assert(unsigned(zero_extend(0x2317c, 64)) == 143740); + assert(unsigned(zero_extend(0x23180, 64)) == 143744); + assert(unsigned(zero_extend(0x23184, 64)) == 143748); + assert(unsigned(zero_extend(0x23188, 64)) == 143752); + assert(unsigned(zero_extend(0x23430, 64)) == 144432); + assert(unsigned(zero_extend(0x23434, 64)) == 144436); + assert(unsigned(zero_extend(0x23438, 64)) == 144440); + assert(unsigned(zero_extend(0x2343c, 64)) == 144444); + assert(unsigned(zero_extend(0x23440, 64)) == 144448); + assert(unsigned(zero_extend(0x23444, 64)) == 144452); + assert(unsigned(zero_extend(0x23448, 64)) == 144456); + assert(unsigned(zero_extend(0x2344c, 64)) == 144460); + assert(unsigned(zero_extend(0x23450, 64)) == 144464); + assert(unsigned(zero_extend(0x23454, 64)) == 144468); + assert(unsigned(zero_extend(0x23458, 64)) == 144472); + assert(unsigned(zero_extend(0x2345c, 64)) == 144476); + assert(unsigned(zero_extend(0x23460, 64)) == 144480); + assert(unsigned(zero_extend(0x23464, 64)) == 144484); + assert(unsigned(zero_extend(0x23468, 64)) == 144488); + assert(unsigned(zero_extend(0x23488, 64)) == 144520); + assert(unsigned(zero_extend(0x2348c, 64)) == 144524); + assert(unsigned(zero_extend(0x23490, 64)) == 144528); + assert(unsigned(zero_extend(0x23494, 64)) == 144532); + assert(unsigned(zero_extend(0x23498, 64)) == 144536); + assert(unsigned(zero_extend(0x2349c, 64)) == 144540); + assert(unsigned(zero_extend(0x234a0, 64)) == 144544); + assert(unsigned(zero_extend(0x234a4, 64)) == 144548); + assert(unsigned(zero_extend(0x234a8, 64)) == 144552); + assert(unsigned(zero_extend(0x234ac, 64)) == 144556); + assert(unsigned(zero_extend(0x234b0, 64)) == 144560); + assert(unsigned(zero_extend(0x234b4, 64)) == 144564); + assert(unsigned(zero_extend(0x234b8, 64)) == 144568); + assert(unsigned(zero_extend(0x234bc, 64)) == 144572); + assert(unsigned(zero_extend(0x234c0, 64)) == 144576); + assert(unsigned(zero_extend(0x234e8, 64)) == 144616); + assert(unsigned(zero_extend(0x234ec, 64)) == 144620); + assert(unsigned(zero_extend(0x234f0, 64)) == 144624); + assert(unsigned(zero_extend(0x234f4, 64)) == 144628); + assert(unsigned(zero_extend(0x234f8, 64)) == 144632); + assert(unsigned(zero_extend(0x234fc, 64)) == 144636); + assert(unsigned(zero_extend(0x23500, 64)) == 144640); + assert(unsigned(zero_extend(0x23504, 64)) == 144644); + assert(unsigned(zero_extend(0x23508, 64)) == 144648); + assert(unsigned(zero_extend(0x2350c, 64)) == 144652); + assert(unsigned(zero_extend(0x23510, 64)) == 144656); + assert(unsigned(zero_extend(0x23514, 64)) == 144660); + assert(unsigned(zero_extend(0x23518, 64)) == 144664); + assert(unsigned(zero_extend(0x2351c, 64)) == 144668); + assert(unsigned(zero_extend(0x23520, 64)) == 144672); + assert(unsigned(zero_extend(0x23524, 64)) == 144676); + assert(unsigned(zero_extend(0x23528, 64)) == 144680); + assert(unsigned(zero_extend(0x2352c, 64)) == 144684); + assert(unsigned(zero_extend(0x23530, 64)) == 144688); + assert(unsigned(zero_extend(0x23534, 64)) == 144692); + assert(unsigned(zero_extend(0x23538, 64)) == 144696); + assert(unsigned(zero_extend(0x2353c, 64)) == 144700); + assert(unsigned(zero_extend(0x23540, 64)) == 144704); + assert(unsigned(zero_extend(0x23544, 64)) == 144708); + assert(unsigned(zero_extend(0x23548, 64)) == 144712); + assert(unsigned(zero_extend(0x2354c, 64)) == 144716); + assert(unsigned(zero_extend(0x23550, 64)) == 144720); + assert(unsigned(zero_extend(0x23554, 64)) == 144724); + assert(unsigned(zero_extend(0x23558, 64)) == 144728); + assert(unsigned(zero_extend(0x2355c, 64)) == 144732); + assert(unsigned(zero_extend(0x23560, 64)) == 144736); + assert(unsigned(zero_extend(0x23564, 64)) == 144740); + assert(unsigned(zero_extend(0x23568, 64)) == 144744); + assert(unsigned(zero_extend(0x2356c, 64)) == 144748); + assert(unsigned(zero_extend(0x23570, 64)) == 144752); + assert(unsigned(zero_extend(0x23574, 64)) == 144756); + assert(unsigned(zero_extend(0x23578, 64)) == 144760); + assert(unsigned(zero_extend(0x2357c, 64)) == 144764); + assert(unsigned(zero_extend(0x23580, 64)) == 144768); + assert(unsigned(zero_extend(0x23584, 64)) == 144772); + assert(unsigned(zero_extend(0x23588, 64)) == 144776); + assert(unsigned(zero_extend(0x2358c, 64)) == 144780); + assert(unsigned(zero_extend(0x23590, 64)) == 144784); + assert(unsigned(zero_extend(0x23594, 64)) == 144788); + assert(unsigned(zero_extend(0x23598, 64)) == 144792); + assert(unsigned(zero_extend(0x2359c, 64)) == 144796); + assert(unsigned(zero_extend(0x235a0, 64)) == 144800); + assert(unsigned(zero_extend(0x235a4, 64)) == 144804); + assert(unsigned(zero_extend(0x235a8, 64)) == 144808); + assert(unsigned(zero_extend(0x235ac, 64)) == 144812); + assert(unsigned(zero_extend(0x235b0, 64)) == 144816); + assert(unsigned(zero_extend(0x235b4, 64)) == 144820); + assert(unsigned(zero_extend(0x235b8, 64)) == 144824); + assert(unsigned(zero_extend(0x235bc, 64)) == 144828); + assert(unsigned(zero_extend(0x235c0, 64)) == 144832); + assert(unsigned(zero_extend(0x235c4, 64)) == 144836); + assert(unsigned(zero_extend(0x235c8, 64)) == 144840); + assert(unsigned(zero_extend(0x235cc, 64)) == 144844); + assert(unsigned(zero_extend(0x235d0, 64)) == 144848); + assert(unsigned(zero_extend(0x235d4, 64)) == 144852); + assert(unsigned(zero_extend(0x235d8, 64)) == 144856); + assert(unsigned(zero_extend(0x235dc, 64)) == 144860); + assert(unsigned(zero_extend(0x235e0, 64)) == 144864); + assert(unsigned(zero_extend(0x235e1, 64)) == 144865); + assert(unsigned(zero_extend(0x235e2, 64)) == 144866); + assert(unsigned(zero_extend(0x235e3, 64)) == 144867); + assert(unsigned(zero_extend(0x235e4, 64)) == 144868); + assert(unsigned(zero_extend(0x235e5, 64)) == 144869); + assert(unsigned(zero_extend(0x235e6, 64)) == 144870); + assert(unsigned(zero_extend(0x235e7, 64)) == 144871); + assert(unsigned(zero_extend(0x235e8, 64)) == 144872); + assert(unsigned(zero_extend(0x235e9, 64)) == 144873); + assert(unsigned(zero_extend(0x235ea, 64)) == 144874); + assert(unsigned(zero_extend(0x235eb, 64)) == 144875); + assert(unsigned(zero_extend(0x235ec, 64)) == 144876); + assert(unsigned(zero_extend(0x235ed, 64)) == 144877); + assert(unsigned(zero_extend(0x235ee, 64)) == 144878); + assert(unsigned(zero_extend(0x235ef, 64)) == 144879); + assert(unsigned(zero_extend(0x235f0, 64)) == 144880); + assert(unsigned(zero_extend(0x235f1, 64)) == 144881); + assert(unsigned(zero_extend(0x235f2, 64)) == 144882); + assert(unsigned(zero_extend(0x235f3, 64)) == 144883); + assert(unsigned(zero_extend(0x235f4, 64)) == 144884); + assert(unsigned(zero_extend(0x235f5, 64)) == 144885); + assert(unsigned(zero_extend(0x235f6, 64)) == 144886); + assert(unsigned(zero_extend(0x235f7, 64)) == 144887); + assert(unsigned(zero_extend(0x235f8, 64)) == 144888); + assert(unsigned(zero_extend(0x235fc, 64)) == 144892); + assert(unsigned(zero_extend(0x23600, 64)) == 144896); + assert(unsigned(zero_extend(0x23604, 64)) == 144900); + assert(unsigned(zero_extend(0x23608, 64)) == 144904); + assert(unsigned(zero_extend(0x2360c, 64)) == 144908); + assert(unsigned(zero_extend(0x23610, 64)) == 144912); + assert(unsigned(zero_extend(0x23614, 64)) == 144916); + assert(unsigned(zero_extend(0x23618, 64)) == 144920); + assert(unsigned(zero_extend(0x2361c, 64)) == 144924); + assert(unsigned(zero_extend(0x23620, 64)) == 144928); + assert(unsigned(zero_extend(0x23624, 64)) == 144932); + assert(unsigned(zero_extend(0x23628, 64)) == 144936); + assert(unsigned(zero_extend(0x2362c, 64)) == 144940); + assert(unsigned(zero_extend(0x23630, 64)) == 144944); + assert(unsigned(zero_extend(0x23638, 64)) == 144952); + assert(unsigned(zero_extend(0x23639, 64)) == 144953); + assert(unsigned(zero_extend(0x2363a, 64)) == 144954); + assert(unsigned(zero_extend(0x2363b, 64)) == 144955); + assert(unsigned(zero_extend(0x2363c, 64)) == 144956); + assert(unsigned(zero_extend(0x2363d, 64)) == 144957); + assert(unsigned(zero_extend(0x2363e, 64)) == 144958); + assert(unsigned(zero_extend(0x2363f, 64)) == 144959); + assert(unsigned(zero_extend(0x23640, 64)) == 144960); + assert(unsigned(zero_extend(0x23641, 64)) == 144961); + assert(unsigned(zero_extend(0x23642, 64)) == 144962); + assert(unsigned(zero_extend(0x23643, 64)) == 144963); + assert(unsigned(zero_extend(0x23644, 64)) == 144964); + assert(unsigned(zero_extend(0x23645, 64)) == 144965); + assert(unsigned(zero_extend(0x23646, 64)) == 144966); + assert(unsigned(zero_extend(0x23647, 64)) == 144967); + assert(unsigned(zero_extend(0x23648, 64)) == 144968); + assert(unsigned(zero_extend(0x23649, 64)) == 144969); + assert(unsigned(zero_extend(0x2364a, 64)) == 144970); + assert(unsigned(zero_extend(0x2364b, 64)) == 144971); + assert(unsigned(zero_extend(0x2364c, 64)) == 144972); + assert(unsigned(zero_extend(0x2364d, 64)) == 144973); + assert(unsigned(zero_extend(0x2364e, 64)) == 144974); + assert(unsigned(zero_extend(0x2364f, 64)) == 144975); + assert(unsigned(zero_extend(0x23650, 64)) == 144976); + assert(unsigned(zero_extend(0x23658, 64)) == 144984); + assert(unsigned(zero_extend(0x24, 64)) == 36); + assert(unsigned(zero_extend(0x24c, 64)) == 588); + assert(unsigned(zero_extend(0x25, 64)) == 37); + assert(unsigned(zero_extend(0x26, 64)) == 38); + assert(unsigned(zero_extend(0x27, 64)) == 39); + assert(unsigned(zero_extend(0x270, 64)) == 624); + assert(unsigned(zero_extend(0x28, 64)) == 40); + assert(unsigned(zero_extend(0x288, 64)) == 648); + assert(unsigned(zero_extend(0x29, 64)) == 41); + assert(unsigned(zero_extend(0x2a, 64)) == 42); + assert(unsigned(zero_extend(0x2b, 64)) == 43); + assert(unsigned(zero_extend(0x2c, 64)) == 44); + assert(unsigned(zero_extend(0x2c000, 64)) == 180224); + assert(unsigned(zero_extend(0x2d, 64)) == 45); + assert(unsigned(zero_extend(0x2e, 64)) == 46); + assert(unsigned(zero_extend(0x2e00000, 64)) == 48234496); + assert(unsigned(zero_extend(0x2e00008, 64)) == 48234504); + assert(unsigned(zero_extend(0x2e00010, 64)) == 48234512); + assert(unsigned(zero_extend(0x2e00018, 64)) == 48234520); + assert(unsigned(zero_extend(0x2e00020, 64)) == 48234528); + assert(unsigned(zero_extend(0x2e00028, 64)) == 48234536); + assert(unsigned(zero_extend(0x2e00030, 64)) == 48234544); + assert(unsigned(zero_extend(0x2e00038, 64)) == 48234552); + assert(unsigned(zero_extend(0x2e00040, 64)) == 48234560); + assert(unsigned(zero_extend(0x2e00048, 64)) == 48234568); + assert(unsigned(zero_extend(0x2e00050, 64)) == 48234576); + assert(unsigned(zero_extend(0x2e00058, 64)) == 48234584); + assert(unsigned(zero_extend(0x2e00060, 64)) == 48234592); + assert(unsigned(zero_extend(0x2e00068, 64)) == 48234600); + assert(unsigned(zero_extend(0x2e00070, 64)) == 48234608); + assert(unsigned(zero_extend(0x2e00078, 64)) == 48234616); + assert(unsigned(zero_extend(0x2e00080, 64)) == 48234624); + assert(unsigned(zero_extend(0x2e00088, 64)) == 48234632); + assert(unsigned(zero_extend(0x2e00090, 64)) == 48234640); + assert(unsigned(zero_extend(0x2e00098, 64)) == 48234648); + assert(unsigned(zero_extend(0x2e000a0, 64)) == 48234656); + assert(unsigned(zero_extend(0x2e000a8, 64)) == 48234664); + assert(unsigned(zero_extend(0x2e000b0, 64)) == 48234672); + assert(unsigned(zero_extend(0x2e000b8, 64)) == 48234680); + assert(unsigned(zero_extend(0x2e000c0, 64)) == 48234688); + assert(unsigned(zero_extend(0x2e000c8, 64)) == 48234696); + assert(unsigned(zero_extend(0x2e000d0, 64)) == 48234704); + assert(unsigned(zero_extend(0x2e000d8, 64)) == 48234712); + assert(unsigned(zero_extend(0x2e000e0, 64)) == 48234720); + assert(unsigned(zero_extend(0x2e000e8, 64)) == 48234728); + assert(unsigned(zero_extend(0x2e000f0, 64)) == 48234736); + assert(unsigned(zero_extend(0x2e000f8, 64)) == 48234744); + assert(unsigned(zero_extend(0x2e00100, 64)) == 48234752); + assert(unsigned(zero_extend(0x2e00108, 64)) == 48234760); + assert(unsigned(zero_extend(0x2e00110, 64)) == 48234768); + assert(unsigned(zero_extend(0x2e00118, 64)) == 48234776); + assert(unsigned(zero_extend(0x2e00120, 64)) == 48234784); + assert(unsigned(zero_extend(0x2e00128, 64)) == 48234792); + assert(unsigned(zero_extend(0x2e00130, 64)) == 48234800); + assert(unsigned(zero_extend(0x2e00138, 64)) == 48234808); + assert(unsigned(zero_extend(0x2e00140, 64)) == 48234816); + assert(unsigned(zero_extend(0x2e00148, 64)) == 48234824); + assert(unsigned(zero_extend(0x2e00150, 64)) == 48234832); + assert(unsigned(zero_extend(0x2e00158, 64)) == 48234840); + assert(unsigned(zero_extend(0x2e00160, 64)) == 48234848); + assert(unsigned(zero_extend(0x2e00168, 64)) == 48234856); + assert(unsigned(zero_extend(0x2e00170, 64)) == 48234864); + assert(unsigned(zero_extend(0x2e00178, 64)) == 48234872); + assert(unsigned(zero_extend(0x2e00180, 64)) == 48234880); + assert(unsigned(zero_extend(0x2e00188, 64)) == 48234888); + assert(unsigned(zero_extend(0x2e00190, 64)) == 48234896); + assert(unsigned(zero_extend(0x2e00198, 64)) == 48234904); + assert(unsigned(zero_extend(0x2e001a0, 64)) == 48234912); + assert(unsigned(zero_extend(0x2e001a8, 64)) == 48234920); + assert(unsigned(zero_extend(0x2e001b0, 64)) == 48234928); + assert(unsigned(zero_extend(0x2e001b8, 64)) == 48234936); + assert(unsigned(zero_extend(0x2e001c0, 64)) == 48234944); + assert(unsigned(zero_extend(0x2e001c8, 64)) == 48234952); + assert(unsigned(zero_extend(0x2e001d0, 64)) == 48234960); + assert(unsigned(zero_extend(0x2e001d8, 64)) == 48234968); + assert(unsigned(zero_extend(0x2e001e0, 64)) == 48234976); + assert(unsigned(zero_extend(0x2e001e8, 64)) == 48234984); + assert(unsigned(zero_extend(0x2e001f0, 64)) == 48234992); + assert(unsigned(zero_extend(0x2e001f8, 64)) == 48235000); + assert(unsigned(zero_extend(0x2e00200, 64)) == 48235008); + assert(unsigned(zero_extend(0x2e00208, 64)) == 48235016); + assert(unsigned(zero_extend(0x2e00210, 64)) == 48235024); + assert(unsigned(zero_extend(0x2e00218, 64)) == 48235032); + assert(unsigned(zero_extend(0x2e00220, 64)) == 48235040); + assert(unsigned(zero_extend(0x2e00228, 64)) == 48235048); + assert(unsigned(zero_extend(0x2e00230, 64)) == 48235056); + assert(unsigned(zero_extend(0x2e00238, 64)) == 48235064); + assert(unsigned(zero_extend(0x2e00240, 64)) == 48235072); + assert(unsigned(zero_extend(0x2e00248, 64)) == 48235080); + assert(unsigned(zero_extend(0x2e00250, 64)) == 48235088); + assert(unsigned(zero_extend(0x2e00258, 64)) == 48235096); + assert(unsigned(zero_extend(0x2e00260, 64)) == 48235104); + assert(unsigned(zero_extend(0x2e00268, 64)) == 48235112); + assert(unsigned(zero_extend(0x2e00270, 64)) == 48235120); + assert(unsigned(zero_extend(0x2e00278, 64)) == 48235128); + assert(unsigned(zero_extend(0x2e00280, 64)) == 48235136); + assert(unsigned(zero_extend(0x2e00288, 64)) == 48235144); + assert(unsigned(zero_extend(0x2e00290, 64)) == 48235152); + assert(unsigned(zero_extend(0x2e00298, 64)) == 48235160); + assert(unsigned(zero_extend(0x2e002a0, 64)) == 48235168); + assert(unsigned(zero_extend(0x2e002a8, 64)) == 48235176); + assert(unsigned(zero_extend(0x2e002b0, 64)) == 48235184); + assert(unsigned(zero_extend(0x2e002b8, 64)) == 48235192); + assert(unsigned(zero_extend(0x2e002c0, 64)) == 48235200); + assert(unsigned(zero_extend(0x2e002c8, 64)) == 48235208); + assert(unsigned(zero_extend(0x2e002d0, 64)) == 48235216); + assert(unsigned(zero_extend(0x2e002d8, 64)) == 48235224); + assert(unsigned(zero_extend(0x2e002e0, 64)) == 48235232); + assert(unsigned(zero_extend(0x2e002e8, 64)) == 48235240); + assert(unsigned(zero_extend(0x2e002f0, 64)) == 48235248); + assert(unsigned(zero_extend(0x2e002f8, 64)) == 48235256); + assert(unsigned(zero_extend(0x2e00300, 64)) == 48235264); + assert(unsigned(zero_extend(0x2e00308, 64)) == 48235272); + assert(unsigned(zero_extend(0x2e00310, 64)) == 48235280); + assert(unsigned(zero_extend(0x2e00318, 64)) == 48235288); + assert(unsigned(zero_extend(0x2e00320, 64)) == 48235296); + assert(unsigned(zero_extend(0x2e00328, 64)) == 48235304); + assert(unsigned(zero_extend(0x2e00330, 64)) == 48235312); + assert(unsigned(zero_extend(0x2e00338, 64)) == 48235320); + assert(unsigned(zero_extend(0x2e00340, 64)) == 48235328); + assert(unsigned(zero_extend(0x2e00348, 64)) == 48235336); + assert(unsigned(zero_extend(0x2e00350, 64)) == 48235344); + assert(unsigned(zero_extend(0x2e00358, 64)) == 48235352); + assert(unsigned(zero_extend(0x2e00360, 64)) == 48235360); + assert(unsigned(zero_extend(0x2e00368, 64)) == 48235368); + assert(unsigned(zero_extend(0x2e00370, 64)) == 48235376); + assert(unsigned(zero_extend(0x2e00378, 64)) == 48235384); + assert(unsigned(zero_extend(0x2e00380, 64)) == 48235392); + assert(unsigned(zero_extend(0x2e00388, 64)) == 48235400); + assert(unsigned(zero_extend(0x2e00390, 64)) == 48235408); + assert(unsigned(zero_extend(0x2e00398, 64)) == 48235416); + assert(unsigned(zero_extend(0x2e003a0, 64)) == 48235424); + assert(unsigned(zero_extend(0x2e003a8, 64)) == 48235432); + assert(unsigned(zero_extend(0x2e003b0, 64)) == 48235440); + assert(unsigned(zero_extend(0x2e003b8, 64)) == 48235448); + assert(unsigned(zero_extend(0x2e003c0, 64)) == 48235456); + assert(unsigned(zero_extend(0x2e003c8, 64)) == 48235464); + assert(unsigned(zero_extend(0x2e003d0, 64)) == 48235472); + assert(unsigned(zero_extend(0x2e003d8, 64)) == 48235480); + assert(unsigned(zero_extend(0x2e003e0, 64)) == 48235488); + assert(unsigned(zero_extend(0x2e003e8, 64)) == 48235496); + assert(unsigned(zero_extend(0x2e003f0, 64)) == 48235504); + assert(unsigned(zero_extend(0x2e003f8, 64)) == 48235512); + assert(unsigned(zero_extend(0x2e00400, 64)) == 48235520); + assert(unsigned(zero_extend(0x2e00408, 64)) == 48235528); + assert(unsigned(zero_extend(0x2e00410, 64)) == 48235536); + assert(unsigned(zero_extend(0x2e00418, 64)) == 48235544); + assert(unsigned(zero_extend(0x2e00420, 64)) == 48235552); + assert(unsigned(zero_extend(0x2e00428, 64)) == 48235560); + assert(unsigned(zero_extend(0x2e00430, 64)) == 48235568); + assert(unsigned(zero_extend(0x2e00438, 64)) == 48235576); + assert(unsigned(zero_extend(0x2e00440, 64)) == 48235584); + assert(unsigned(zero_extend(0x2e00448, 64)) == 48235592); + assert(unsigned(zero_extend(0x2e00450, 64)) == 48235600); + assert(unsigned(zero_extend(0x2e00458, 64)) == 48235608); + assert(unsigned(zero_extend(0x2e00460, 64)) == 48235616); + assert(unsigned(zero_extend(0x2e00468, 64)) == 48235624); + assert(unsigned(zero_extend(0x2e00470, 64)) == 48235632); + assert(unsigned(zero_extend(0x2e00478, 64)) == 48235640); + assert(unsigned(zero_extend(0x2e00480, 64)) == 48235648); + assert(unsigned(zero_extend(0x2e00488, 64)) == 48235656); + assert(unsigned(zero_extend(0x2e00490, 64)) == 48235664); + assert(unsigned(zero_extend(0x2e00498, 64)) == 48235672); + assert(unsigned(zero_extend(0x2e004a0, 64)) == 48235680); + assert(unsigned(zero_extend(0x2e004a8, 64)) == 48235688); + assert(unsigned(zero_extend(0x2e004b0, 64)) == 48235696); + assert(unsigned(zero_extend(0x2e004b8, 64)) == 48235704); + assert(unsigned(zero_extend(0x2e004c0, 64)) == 48235712); + assert(unsigned(zero_extend(0x2e004c8, 64)) == 48235720); + assert(unsigned(zero_extend(0x2e004d0, 64)) == 48235728); + assert(unsigned(zero_extend(0x2e004d8, 64)) == 48235736); + assert(unsigned(zero_extend(0x2e004e0, 64)) == 48235744); + assert(unsigned(zero_extend(0x2e004e8, 64)) == 48235752); + assert(unsigned(zero_extend(0x2e004f0, 64)) == 48235760); + assert(unsigned(zero_extend(0x2e004f8, 64)) == 48235768); + assert(unsigned(zero_extend(0x2e00500, 64)) == 48235776); + assert(unsigned(zero_extend(0x2e00508, 64)) == 48235784); + assert(unsigned(zero_extend(0x2e00510, 64)) == 48235792); + assert(unsigned(zero_extend(0x2e00518, 64)) == 48235800); + assert(unsigned(zero_extend(0x2e00520, 64)) == 48235808); + assert(unsigned(zero_extend(0x2e00528, 64)) == 48235816); + assert(unsigned(zero_extend(0x2e01000, 64)) == 48238592); + assert(unsigned(zero_extend(0x2e01008, 64)) == 48238600); + assert(unsigned(zero_extend(0x2e01010, 64)) == 48238608); + assert(unsigned(zero_extend(0x2e01018, 64)) == 48238616); + assert(unsigned(zero_extend(0x2e01020, 64)) == 48238624); + assert(unsigned(zero_extend(0x2e01028, 64)) == 48238632); + assert(unsigned(zero_extend(0x2e01030, 64)) == 48238640); + assert(unsigned(zero_extend(0x2e01038, 64)) == 48238648); + assert(unsigned(zero_extend(0x2e01040, 64)) == 48238656); + assert(unsigned(zero_extend(0x2e01048, 64)) == 48238664); + assert(unsigned(zero_extend(0x2e01050, 64)) == 48238672); + assert(unsigned(zero_extend(0x2e01058, 64)) == 48238680); + assert(unsigned(zero_extend(0x2e01060, 64)) == 48238688); + assert(unsigned(zero_extend(0x2e01068, 64)) == 48238696); + assert(unsigned(zero_extend(0x2e01070, 64)) == 48238704); + assert(unsigned(zero_extend(0x2e01078, 64)) == 48238712); + assert(unsigned(zero_extend(0x2e01080, 64)) == 48238720); + assert(unsigned(zero_extend(0x2e01088, 64)) == 48238728); + assert(unsigned(zero_extend(0x2e01090, 64)) == 48238736); + assert(unsigned(zero_extend(0x2e01098, 64)) == 48238744); + assert(unsigned(zero_extend(0x2e010a0, 64)) == 48238752); + assert(unsigned(zero_extend(0x2e010a8, 64)) == 48238760); + assert(unsigned(zero_extend(0x2e010b0, 64)) == 48238768); + assert(unsigned(zero_extend(0x2e010b8, 64)) == 48238776); + assert(unsigned(zero_extend(0x2e010c0, 64)) == 48238784); + assert(unsigned(zero_extend(0x2e010c8, 64)) == 48238792); + assert(unsigned(zero_extend(0x2e010d0, 64)) == 48238800); + assert(unsigned(zero_extend(0x2e010d8, 64)) == 48238808); + assert(unsigned(zero_extend(0x2e010e0, 64)) == 48238816); + assert(unsigned(zero_extend(0x2e010e8, 64)) == 48238824); + assert(unsigned(zero_extend(0x2e010f0, 64)) == 48238832); + assert(unsigned(zero_extend(0x2e010f8, 64)) == 48238840); + assert(unsigned(zero_extend(0x2e01100, 64)) == 48238848); + assert(unsigned(zero_extend(0x2e01108, 64)) == 48238856); + assert(unsigned(zero_extend(0x2e01110, 64)) == 48238864); + assert(unsigned(zero_extend(0x2e01118, 64)) == 48238872); + assert(unsigned(zero_extend(0x2e01120, 64)) == 48238880); + assert(unsigned(zero_extend(0x2e01128, 64)) == 48238888); + assert(unsigned(zero_extend(0x2e01130, 64)) == 48238896); + assert(unsigned(zero_extend(0x2e01138, 64)) == 48238904); + assert(unsigned(zero_extend(0x2e01140, 64)) == 48238912); + assert(unsigned(zero_extend(0x2e01148, 64)) == 48238920); + assert(unsigned(zero_extend(0x2e01150, 64)) == 48238928); + assert(unsigned(zero_extend(0x2e01158, 64)) == 48238936); + assert(unsigned(zero_extend(0x2e01160, 64)) == 48238944); + assert(unsigned(zero_extend(0x2e01168, 64)) == 48238952); + assert(unsigned(zero_extend(0x2e01170, 64)) == 48238960); + assert(unsigned(zero_extend(0x2e01178, 64)) == 48238968); + assert(unsigned(zero_extend(0x2e01180, 64)) == 48238976); + assert(unsigned(zero_extend(0x2e01188, 64)) == 48238984); + assert(unsigned(zero_extend(0x2e01190, 64)) == 48238992); + assert(unsigned(zero_extend(0x2e01198, 64)) == 48239000); + assert(unsigned(zero_extend(0x2e011a0, 64)) == 48239008); + assert(unsigned(zero_extend(0x2e011a8, 64)) == 48239016); + assert(unsigned(zero_extend(0x2e011b0, 64)) == 48239024); + assert(unsigned(zero_extend(0x2e011b8, 64)) == 48239032); + assert(unsigned(zero_extend(0x2e011c0, 64)) == 48239040); + assert(unsigned(zero_extend(0x2e011c8, 64)) == 48239048); + assert(unsigned(zero_extend(0x2e011d0, 64)) == 48239056); + assert(unsigned(zero_extend(0x2e011d8, 64)) == 48239064); + assert(unsigned(zero_extend(0x2e011e0, 64)) == 48239072); + assert(unsigned(zero_extend(0x2e011e8, 64)) == 48239080); + assert(unsigned(zero_extend(0x2e011f0, 64)) == 48239088); + assert(unsigned(zero_extend(0x2e011f8, 64)) == 48239096); + assert(unsigned(zero_extend(0x2e01200, 64)) == 48239104); + assert(unsigned(zero_extend(0x2e01208, 64)) == 48239112); + assert(unsigned(zero_extend(0x2e01210, 64)) == 48239120); + assert(unsigned(zero_extend(0x2e01218, 64)) == 48239128); + assert(unsigned(zero_extend(0x2e01220, 64)) == 48239136); + assert(unsigned(zero_extend(0x2e01228, 64)) == 48239144); + assert(unsigned(zero_extend(0x2e01230, 64)) == 48239152); + assert(unsigned(zero_extend(0x2e01238, 64)) == 48239160); + assert(unsigned(zero_extend(0x2e01240, 64)) == 48239168); + assert(unsigned(zero_extend(0x2e01248, 64)) == 48239176); + assert(unsigned(zero_extend(0x2e01250, 64)) == 48239184); + assert(unsigned(zero_extend(0x2e01258, 64)) == 48239192); + assert(unsigned(zero_extend(0x2e01260, 64)) == 48239200); + assert(unsigned(zero_extend(0x2e01268, 64)) == 48239208); + assert(unsigned(zero_extend(0x2e01270, 64)) == 48239216); + assert(unsigned(zero_extend(0x2e01278, 64)) == 48239224); + assert(unsigned(zero_extend(0x2e01280, 64)) == 48239232); + assert(unsigned(zero_extend(0x2e01288, 64)) == 48239240); + assert(unsigned(zero_extend(0x2e01290, 64)) == 48239248); + assert(unsigned(zero_extend(0x2e01298, 64)) == 48239256); + assert(unsigned(zero_extend(0x2e012a0, 64)) == 48239264); + assert(unsigned(zero_extend(0x2e012a8, 64)) == 48239272); + assert(unsigned(zero_extend(0x2e012b0, 64)) == 48239280); + assert(unsigned(zero_extend(0x2e012b8, 64)) == 48239288); + assert(unsigned(zero_extend(0x2e012c0, 64)) == 48239296); + assert(unsigned(zero_extend(0x2e012c8, 64)) == 48239304); + assert(unsigned(zero_extend(0x2e012d0, 64)) == 48239312); + assert(unsigned(zero_extend(0x2e012d8, 64)) == 48239320); + assert(unsigned(zero_extend(0x2e012e0, 64)) == 48239328); + assert(unsigned(zero_extend(0x2e012e8, 64)) == 48239336); + assert(unsigned(zero_extend(0x2e012f0, 64)) == 48239344); + assert(unsigned(zero_extend(0x2e012f8, 64)) == 48239352); + assert(unsigned(zero_extend(0x2e01300, 64)) == 48239360); + assert(unsigned(zero_extend(0x2e01308, 64)) == 48239368); + assert(unsigned(zero_extend(0x2e01310, 64)) == 48239376); + assert(unsigned(zero_extend(0x2e01318, 64)) == 48239384); + assert(unsigned(zero_extend(0x2e01320, 64)) == 48239392); + assert(unsigned(zero_extend(0x2e01328, 64)) == 48239400); + assert(unsigned(zero_extend(0x2e01330, 64)) == 48239408); + assert(unsigned(zero_extend(0x2e01338, 64)) == 48239416); + assert(unsigned(zero_extend(0x2e01340, 64)) == 48239424); + assert(unsigned(zero_extend(0x2e01348, 64)) == 48239432); + assert(unsigned(zero_extend(0x2e01350, 64)) == 48239440); + assert(unsigned(zero_extend(0x2e01358, 64)) == 48239448); + assert(unsigned(zero_extend(0x2e01360, 64)) == 48239456); + assert(unsigned(zero_extend(0x2e01368, 64)) == 48239464); + assert(unsigned(zero_extend(0x2e01370, 64)) == 48239472); + assert(unsigned(zero_extend(0x2e01378, 64)) == 48239480); + assert(unsigned(zero_extend(0x2e01380, 64)) == 48239488); + assert(unsigned(zero_extend(0x2e01388, 64)) == 48239496); + assert(unsigned(zero_extend(0x2e01390, 64)) == 48239504); + assert(unsigned(zero_extend(0x2e01398, 64)) == 48239512); + assert(unsigned(zero_extend(0x2e013a0, 64)) == 48239520); + assert(unsigned(zero_extend(0x2e013a8, 64)) == 48239528); + assert(unsigned(zero_extend(0x2e013b0, 64)) == 48239536); + assert(unsigned(zero_extend(0x2e013b8, 64)) == 48239544); + assert(unsigned(zero_extend(0x2e013c0, 64)) == 48239552); + assert(unsigned(zero_extend(0x2e013c8, 64)) == 48239560); + assert(unsigned(zero_extend(0x2e013d0, 64)) == 48239568); + assert(unsigned(zero_extend(0x2e013d8, 64)) == 48239576); + assert(unsigned(zero_extend(0x2e013e0, 64)) == 48239584); + assert(unsigned(zero_extend(0x2e013e8, 64)) == 48239592); + assert(unsigned(zero_extend(0x2e013f0, 64)) == 48239600); + assert(unsigned(zero_extend(0x2e013f8, 64)) == 48239608); + assert(unsigned(zero_extend(0x2e01400, 64)) == 48239616); + assert(unsigned(zero_extend(0x2e01408, 64)) == 48239624); + assert(unsigned(zero_extend(0x2e01410, 64)) == 48239632); + assert(unsigned(zero_extend(0x2e01418, 64)) == 48239640); + assert(unsigned(zero_extend(0x2e01420, 64)) == 48239648); + assert(unsigned(zero_extend(0x2e01428, 64)) == 48239656); + assert(unsigned(zero_extend(0x2e01430, 64)) == 48239664); + assert(unsigned(zero_extend(0x2e01438, 64)) == 48239672); + assert(unsigned(zero_extend(0x2e01440, 64)) == 48239680); + assert(unsigned(zero_extend(0x2e01448, 64)) == 48239688); + assert(unsigned(zero_extend(0x2e01450, 64)) == 48239696); + assert(unsigned(zero_extend(0x2e01458, 64)) == 48239704); + assert(unsigned(zero_extend(0x2e01460, 64)) == 48239712); + assert(unsigned(zero_extend(0x2e01468, 64)) == 48239720); + assert(unsigned(zero_extend(0x2e01470, 64)) == 48239728); + assert(unsigned(zero_extend(0x2e01478, 64)) == 48239736); + assert(unsigned(zero_extend(0x2e01480, 64)) == 48239744); + assert(unsigned(zero_extend(0x2e01488, 64)) == 48239752); + assert(unsigned(zero_extend(0x2e01490, 64)) == 48239760); + assert(unsigned(zero_extend(0x2e01498, 64)) == 48239768); + assert(unsigned(zero_extend(0x2e014a0, 64)) == 48239776); + assert(unsigned(zero_extend(0x2e014a8, 64)) == 48239784); + assert(unsigned(zero_extend(0x2e014b0, 64)) == 48239792); + assert(unsigned(zero_extend(0x2e014b8, 64)) == 48239800); + assert(unsigned(zero_extend(0x2e014c0, 64)) == 48239808); + assert(unsigned(zero_extend(0x2e014c8, 64)) == 48239816); + assert(unsigned(zero_extend(0x2e014d0, 64)) == 48239824); + assert(unsigned(zero_extend(0x2e014d8, 64)) == 48239832); + assert(unsigned(zero_extend(0x2e014e0, 64)) == 48239840); + assert(unsigned(zero_extend(0x2e014e8, 64)) == 48239848); + assert(unsigned(zero_extend(0x2e014f0, 64)) == 48239856); + assert(unsigned(zero_extend(0x2e014f8, 64)) == 48239864); + assert(unsigned(zero_extend(0x2e01500, 64)) == 48239872); + assert(unsigned(zero_extend(0x2e01508, 64)) == 48239880); + assert(unsigned(zero_extend(0x2e01510, 64)) == 48239888); + assert(unsigned(zero_extend(0x2e01518, 64)) == 48239896); + assert(unsigned(zero_extend(0x2e01520, 64)) == 48239904); + assert(unsigned(zero_extend(0x2e01528, 64)) == 48239912); + assert(unsigned(zero_extend(0x2e01530, 64)) == 48239920); + assert(unsigned(zero_extend(0x2e01538, 64)) == 48239928); + assert(unsigned(zero_extend(0x2e01540, 64)) == 48239936); + assert(unsigned(zero_extend(0x2e01548, 64)) == 48239944); + assert(unsigned(zero_extend(0x2e01550, 64)) == 48239952); + assert(unsigned(zero_extend(0x2e01558, 64)) == 48239960); + assert(unsigned(zero_extend(0x2e01560, 64)) == 48239968); + assert(unsigned(zero_extend(0x2e01568, 64)) == 48239976); + assert(unsigned(zero_extend(0x2e01570, 64)) == 48239984); + assert(unsigned(zero_extend(0x2e01578, 64)) == 48239992); + assert(unsigned(zero_extend(0x2e01580, 64)) == 48240000); + assert(unsigned(zero_extend(0x2e01588, 64)) == 48240008); + assert(unsigned(zero_extend(0x2e01590, 64)) == 48240016); + assert(unsigned(zero_extend(0x2e01598, 64)) == 48240024); + assert(unsigned(zero_extend(0x2e015a0, 64)) == 48240032); + assert(unsigned(zero_extend(0x2e015a8, 64)) == 48240040); + assert(unsigned(zero_extend(0x2e015b0, 64)) == 48240048); + assert(unsigned(zero_extend(0x2e015b8, 64)) == 48240056); + assert(unsigned(zero_extend(0x2e015c0, 64)) == 48240064); + assert(unsigned(zero_extend(0x2e015c8, 64)) == 48240072); + assert(unsigned(zero_extend(0x2e015d0, 64)) == 48240080); + assert(unsigned(zero_extend(0x2e015d8, 64)) == 48240088); + assert(unsigned(zero_extend(0x2e015e0, 64)) == 48240096); + assert(unsigned(zero_extend(0x2e015e8, 64)) == 48240104); +} |
