/* ---------------------------------------------------------------------------------------------------*/ /* Port of the Intel Decimal Floating-Point Math Library decimal128 type to Rust. */ /* decmathlib-rs - Copyright (C) 2023-2024 Carlos Guzmán Álvarez */ /* -------------------------------------------------------------------------------------------------- */ /* Licensed under the MIT license. See LICENSE file in the project root for full license information. */ /* -------------------------------------------------------------------------------------------------- */ /* Intel® Decimal Floating-Point Math Library - Copyright (c) 2018, Intel Corp. */ /* -------------------------------------------------------------------------------------------------- */ mod common; #[test] fn div_binop() { let a= decmathlib_rs::d128::d128::from(8); let b= decmathlib_rs::d128::d128::from(2); let e= decmathlib_rs::d128::d128::from(4); assert_eq!(a / b , e); assert_eq!(&a / b , e); assert_eq!(a / &b , e); assert_eq!(&a / &b, e); } #[test] fn div_assign_op() { let mut a1 = decmathlib_rs::d128::d128::from(8); let mut a2 = decmathlib_rs::d128::d128::from(8); let mut a3 = decmathlib_rs::d128::d128::from(8); let mut a4 = decmathlib_rs::d128::d128::from(8); let b = decmathlib_rs::d128::d128::from(4); let e = decmathlib_rs::d128::d128::from(2); a1 /= b; assert_eq!(e, a1); a2 /= b; assert_eq!(e, a2); a3 /= b; assert_eq!(e, a3); a4 /= b; assert_eq!(e, a4); } dec_test!(bid128_div_001, bid128_div, 0, 0x0000000000000000a4e0e3a5011dfdb3u128, 0x00000000000000000000000000080000u128, 0x301a0b2c2f82b26a5d8dedadcff7d6a7u128, 0x00); dec_test!(bid128_div_002, bid128_div, 0, 0x00000000001000000000000010000000u128, 0x1f90612e201990adffdfbfffffffd7ffu128, 0x105de3d7592c3b3a7670b2eea8801aadu128, 0x20); dec_test!(bid128_div_003, bid128_div, 0, 0xb0457561041f2a538564461e0cc0c855u128, 0xb030000000000000dd77b6811f136c62u128, 0x302ee9f84615c4b2f831147e0365dac4u128, 0x20); dec_test!(bid128_div_004, bid128_div, 0, 0x05a98a9e27dde76eb75444501037a96cu128, 0x81da000000000000f13b929464b84377u128, 0xb3e8e304aa54ae4b0aef4174afa4aa19u128, 0x20); dec_test!(bid128_div_005, bid128_div, 0, 0x86bfaeda0f504aa9b1f3b568e25ce47du128, 0x81da000000000000f13b929464b84377u128, 0x34fef7dcf7581919a4db66fcad2b4fc5u128, 0x20); dec_test!(bid128_div_006, bid128_div, 0, 0x3041bc61a052ace8a38ac28af05308d6u128, 0x3040000000000000f21b8a5c9e96e179u128, 0x301afeb904240fd99273270a5e776dd7u128, 0x20); dec_test!(bid128_div_007, bid128_div, 0, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000001u128, 0x00); dec_test!(bid128_div_008, bid128_div, 0, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_009, bid128_div, 0, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_010, bid128_div, 0, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_011, bid128_div, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_div_012, bid128_div, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_013, bid128_div, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_014, bid128_div, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_015, bid128_div, 0, 0x0010000000000000e8f7eb63bf9ecd77u128, 0x1e71dbf7bdf3dbff8001200800040092u128, 0x118055bc43bd2e16858f61d773205eacu128, 0x20); dec_test!(bid128_div_016, bid128_div, 0, "-0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_017, bid128_div, 0, "-0" , "0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_018, bid128_div, 0, "0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_019, bid128_div, 0, 0x00800000000048000000000000000000u128, 0x828a1476c39f4cc1af91720c11be3cfcu128, 0xade193e41a550ae75f4e85982b7fd37du128, 0x20); dec_test!(bid128_div_020, bid128_div, 0, 0x00849d8003d8932189a15d978953e007u128, 0xe0845520d80fd057e9b7df670ff7f7ddu128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_021, bid128_div, 0, 0x014287d9cebc1612e4fa290e7bfce8c7u128, 0x48c02c55900a680212ae5ac68bf7cd7cu128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_022, bid128_div, 0, 0x03d3f6a1a2be98fd05675c2721e98b1eu128, 0xdbe7fffb3bfe86cfffffeefbffffffefu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_023, bid128_div, 0, 0x0800001001200102fb7cbd9f6f7bbdfdu128, 0xbf9f287fd669e3544854bfb25e3c91dfu128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_024, bid128_div, 0, "-0" , "Infinity" , 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_025, bid128_div, 0, "0" , "SNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_026, bid128_div, 0, "+1000.E6069" , "+0.010000000E1270" , 0x55c80000000000000000000000000001u128, 0x00); dec_test!(bid128_div_027, bid128_div, 0, "-1.010E0" , "+734.657E0" , 0xaff843c84e0b05df35d5dd63a34a7f51u128, 0x20); dec_test!(bid128_div_028, bid128_div, 0, "-1011110101011.011E4826" , "+1000000000000.000E2687" , 0xc0d8000000000000000397996a664a43u128, 0x00); dec_test!(bid128_div_029, bid128_div, 0, 0x10d580b2040866df5418d5cf1ad87f60u128, 0x47fc8a037c585432c56d954eeae84dbcu128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_030, bid128_div, 0, 0x10e032c129c2473070dcf63765e91997u128, 0x410aa14c60018618ffbdfefdf5efe79fu128, 0x0000000000000000000000075388ea15u128, 0x30); dec_test!(bid128_div_031, bid128_div, 0, "+1100101.01100E0" , "-52.45339558946E0" , 0xb00667678cd085a5dc88e14678177cabu128, 0x20); dec_test!(bid128_div_032, bid128_div, 0, "-1101.0101100100011100E-4834" , "+10000000.0E4733" , 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_033, bid128_div, 0, "+1.10E-4040" , "+8.E1272" , 0x06b8000000000000000000000000055fu128, 0x00); dec_test!(bid128_div_034, bid128_div, 0, "-11101.0110010011100E0" , "-0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_035, bid128_div, 0, 0x1aa6b19d7ae65af9ff18372ff19f691fu128, 0xff3f733f8d177efaa73400501a380a30u128, 0xfc000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_036, bid128_div, 0, "1E+6109" , "0.0005" , 0x5ffe0000000000000000000000000014u128, 0x00); dec_test!(bid128_div_037, bid128_div, 0, "1E+6109" , "5E-33" , 0x5ffe00193e5939a08ce9dbd480000000u128, 0x00); dec_test!(bid128_div_038, bid128_div, 0, "1E-6176" , "2" , 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_039, bid128_div, 0, "1E-6176" , "8388608" , 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_040, bid128_div, 0, 0x1ea47d723a25878256018cb55e2192efu128, 0xdaf1c0016d4dff25d69a2d819e52b625u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_041, bid128_div, 0, 0x226021000420848238b7407aa02489a0u128, 0x00000000000000000000000000000001u128, 0x52a021000420848238b7407aa02489a0u128, 0x00); dec_test!(bid128_div_042, bid128_div, 0, 0x22a44b71ac3da0116eb5bd44422dea44u128, 0x1e4e0000000000000000000000000000u128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_043, bid128_div, 0, 0x28c44012080c07000020000000000000u128, 0x00000000000000000400000000000000u128, 0x58fa00000000001870e0e1d68b980c35u128, 0x00); dec_test!(bid128_div_044, bid128_div, 0, 0x333f35ef131e4d4e28976a21359307a5u128, 0x9d5e1082c76501424409851f173e99aau128, 0xc5e05c8cfe06e9a505fe87d0b754ee76u128, 0x20); dec_test!(bid128_div_045, bid128_div, 0, 0x33e63513719d9e3016fb2087e309f4e1u128, 0x93fec56dcf2fa39b009abaa41270f373u128, 0xcfe4848bd6adddef6e5040816616a3a0u128, 0x20); dec_test!(bid128_div_046, bid128_div, 0, 0x3a4c0000000000000000000000000000u128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0x00); dec_test!(bid128_div_047, bid128_div, 0, 0x40000100400828000400844998405000u128, 0x00000000000000000000000000200000u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_048, bid128_div, 0, 0x40a46a3aae3793cfb072d3a233765dd6u128, 0xdfdab50a18d577e9d23d5a48965dd11fu128, 0x90c7214d4793b5e3f7dc4bf5d1b4c8a5u128, 0x20); dec_test!(bid128_div_049, bid128_div, 0, 0x4601b16cefe9effd31c9d1fb957f827du128, 0xb4ece6c0fecdbce3d82f9af606824e86u128, 0xc1125c9b81bd7b51e01e5f389b29900fu128, 0x20); dec_test!(bid128_div_050, bid128_div, 0, 0x4f0b131761a5ebfee17445ef98b870b9u128, 0x1c7fb951183140880316f0c8237c5127u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_051, bid128_div, 0, 0x52b36974100f49280f1bae6a614be06fu128, 0x1e304bbb94d4425c1b1a50112a2e1cb1u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_052, bid128_div, 0, 0x5530164e902e8437b288c0ee62a18589u128, 0x8ffac0e4688b10118f918b0e12fb95cbu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_053, bid128_div, 0, 0x597e0000000000000000000000000000u128, 0x5bbc9676a11218e4c767d7f288836625u128, 0x2e020000000000000000000000000000u128, 0x00); dec_test!(bid128_div_054, bid128_div, 0, 0x5f8cd8f1e56c6b3d541da77d81887813u128, 0x1c99d16b5a33a9852809b8660d9d69f0u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_055, bid128_div, 0, "-755776668887.79E-3752" , "-1.00E-691" , 0x1852000000000000000044bccbfce44bu128, 0x00); dec_test!(bid128_div_056, bid128_div, 0, 0x7a3ffbef7ffbecfbbeebbdd55b51dadbu128, 0xfbffc997efebfdffd5bef7f7f6dffffeu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_057, bid128_div, 0, 0x7c003fffffffffff38c15b08ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_058, bid128_div, 0, 0x7c003fffffffffff38c15b08ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_059, bid128_div, 0, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_060, bid128_div, 0, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_061, bid128_div, 0, 0x7c003fffffffffff38c15b0affffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_062, bid128_div, 0, 0x7c003fffffffffff38c15b0affffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_063, bid128_div, 0, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_064, bid128_div, 0, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_065, bid128_div, 0, 0x806032960a142709d1a9eae619261fe6u128, 0xd747094621e87bdf42930ddffd2d2bb6u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_066, bid128_div, 0, "+8.888999998E-5822" , "-10000000.000E5554" , 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_067, bid128_div, 0, 0x89859621903d188043873b4ee0099f0du128, 0x02861af92aa295f04201fb87adf991d8u128, 0xb6fe4a3c5389a9e431158e360d84b937u128, 0x20); dec_test!(bid128_div_068, bid128_div, 0, "-898898.E5127" , "+0.000000000000001000000E3535" , 0xbcce00000000000000000000000db752u128, 0x00); dec_test!(bid128_div_069, bid128_div, 0, 0x89cf2ff12ec78d4242674691aeda0f44u128, 0x11d0582141400402fffffffffffffe7fu128, 0xa7fcaa09ef582623be20e2e1d16ad69cu128, 0x20); dec_test!(bid128_div_070, bid128_div, 0, 0x8c40c590549957ea4a9a7cb1e9380813u128, 0x41153cd932ac2b467ac11d6b17ae4462u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_071, bid128_div, 0, 0x8c750c6d27ff163df024d4457485fa3cu128, 0x3cc5d0621a99f027eadaa3acfbc6eb50u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_072, bid128_div, 0, 0x8ccc407e66eb7261bf95795f91b67333u128, 0x2bfcea63f6e985b9385025a162db63fcu128, 0x90cc87a97793653f41c5b0843e759c4du128, 0x20); dec_test!(bid128_div_073, bid128_div, 0, 0x8e2403cdcba752630629b6f7a7010602u128, 0x5a3980ee7baa631d3708928990f473e4u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_074, bid128_div, 0, "+8.E-360" , "-0.010E5688" , 0x81040000000000000000000000000008u128, 0x00); dec_test!(bid128_div_075, bid128_div, 0, 0x9346134cb5d53576d5519b525d5ffa30u128, 0x88509674eb409001ca9b988529db58b0u128, 0x3af23f3e6cf2fe9a91863d9c1fe83531u128, 0x20); dec_test!(bid128_div_076, bid128_div, 0, 0x9356239fd6f61f543c82a573dd68c8f7u128, 0xd007306e51b058897ada8064b6679c41u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_077, bid128_div, 0, "-9432976779742544.5E156" , "-0.10E-3073" , 0x497a000000000000014f206c8d4f8525u128, 0x00); dec_test!(bid128_div_078, bid128_div, 0, 0x97e3407e35fe75ad38edea703e91a616u128, 0x46460000000000000000000000000000u128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_079, bid128_div, 0, "+9878987.5679766895E0" , "0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_080, bid128_div, 0, "+98858.678996557986769E0" , "-989.888889E0" , 0xb001ec63b7d685d4e49c39a1b82c7906u128, 0x20); dec_test!(bid128_div_081, bid128_div, 0, "+99.8998888898E0" , "-55993.8675252E0" , 0xaff857f6c8fae298e46f125bb81b162du128, 0x20); dec_test!(bid128_div_082, bid128_div, 0, 0x9b5b494c1b0b648a37a1bb32e5a95fa9u128, 0xa93a0d7850c02072d381713d3707026au128, 0x2220788822fcbd2bc4d2d1bab2fdc4f7u128, 0x20); dec_test!(bid128_div_083, bid128_div, 0, 0x9dac6392650e5f326dc29520591ed6d2u128, 0x7e000000000000000000000000000000u128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_084, bid128_div, 0, 0xa6357f5a31dad8e5fb5417f4c2f2fba7u128, 0x9f3550d8712c48212a40189484310e29u128, 0x36fe381c68fc8cc1098f25da42a2279eu128, 0x20); dec_test!(bid128_div_085, bid128_div, 0, 0xb01f00aa099e0920310b6ff9a1cf209cu128, 0x000360208d000480b164912945ad492eu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_086, bid128_div, 0, 0xb6b3957ffb4642e6113058313664c274u128, 0xfbdc6fdfbbe7df5b7ed77fb5f7778b7fu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_087, bid128_div, 0, 0xca315abb5eb7928af36c452c38ae05b0u128, 0x926e4674bba1c31cd8256ba008e56abdu128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_088, bid128_div, 0, 0xce4eaaae52c725dba236e46671e9e4d1u128, 0x1f5d2bf1866d7bd9a8bed133ede1421eu128, 0xdeef188f6b4e47105d84efb1a381eb09u128, 0x20); dec_test!(bid128_div_089, bid128_div, 0, 0xcf9fe06cec065c371baf1e0586ff927du128, 0x80c9b1ce835e3cb19b9600b33d3c5041u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_090, bid128_div, 0, 0xd45a2d71f2fc518726c22326f2005835u128, 0x102b679d08833f6d870cf5e9f920c0d5u128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_091, bid128_div, 0, 0xdba033e002d884757fde7d86b7ed34d2u128, 0x04673668347f5053ac5aac9ee0505f1bu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_092, bid128_div, 0, 0xdd4fbf6532b84f733c4c5763f08dca6bu128, 0xc8893309fd8b36678a3434e6ff1c8ed9u128, 0x44c447d78c0580aa85f7db30b7388987u128, 0x20); dec_test!(bid128_div_093, bid128_div, 0, 0xe2bc9eff4d110e5deed2aae2bc824d5fu128, 0x5b039e69d0c3c0b90017bffdccdb1201u128, 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_094, bid128_div, 0, 0xf379c3f2a31b84caafc0b172cc4a7017u128, 0x1670661017a53275d5b29af6ea63df75u128, 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_div_095, bid128_div, 0, 0xf9fb5feffc7fffff01c92dcc0a4b9f23u128, 0xa545b0fe616ae5e92a87318139631a90u128, 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_096, bid128_div, 0, 0xfe001c9bc3525d6ac0939fd3447b27a7u128, 0x8edc0000000000000000000000000000u128, 0xfc001c9bc3525d6ac0939fd3447b27a7u128, 0x01); dec_test!(bid128_div_097, bid128_div, 0, 0xfff7ffffffffffbf124ad21c0b932e7eu128, 0xc3a009ac4e75e090f4f576b2a2392f27u128, 0xfc000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_098, bid128_div, 0, "-Infinity" , "-0" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_099, bid128_div, 0, "-Infinity" , "0" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_100, bid128_div, 0, "-Infinity" , "-Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_101, bid128_div, 0, "-Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_102, bid128_div, 0, "Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_103, bid128_div, 0, "QNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_104, bid128_div, 0, "QNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_105, bid128_div, 1, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000001u128, 0x00); dec_test!(bid128_div_106, bid128_div, 1, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_107, bid128_div, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_div_108, bid128_div, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_109, bid128_div, 1, "-0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_110, bid128_div, 1, "-0" , "0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_111, bid128_div, 1, "0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_112, bid128_div, 1, "-0" , "Infinity" , 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_113, bid128_div, 1, "0" , "SNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_114, bid128_div, 1, "-1.010E0" , "+734.657E0" , 0xaff843c84e0b05df35d5dd63a34a7f51u128, 0x20); dec_test!(bid128_div_115, bid128_div, 1, 0x10d580b2040866df5418d5cf1ad87f60u128, 0x47fc8a037c585432c56d954eeae84dbcu128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_116, bid128_div, 1, "+1100101.01100E0" , "-52.45339558946E0" , 0xb00667678cd085a5dc88e14678177cacu128, 0x20); dec_test!(bid128_div_117, bid128_div, 1, "-11101.0110010011100E0" , "-0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_118, bid128_div, 1, "1E-6176" , "2" , 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_119, bid128_div, 1, 0x1ea47d723a25878256018cb55e2192efu128, 0xdaf1c0016d4dff25d69a2d819e52b625u128, 0x80000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_120, bid128_div, 1, 0x22a44b71ac3da0116eb5bd44422dea44u128, 0x1e4e0000000000000000000000000000u128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_121, bid128_div, 1, 0x333f35ef131e4d4e28976a21359307a5u128, 0x9d5e1082c76501424409851f173e99aau128, 0xc5e05c8cfe06e9a505fe87d0b754ee76u128, 0x20); dec_test!(bid128_div_122, bid128_div, 1, 0x33e63513719d9e3016fb2087e309f4e1u128, 0x93fec56dcf2fa39b009abaa41270f373u128, 0xcfe4848bd6adddef6e5040816616a3a0u128, 0x20); dec_test!(bid128_div_123, bid128_div, 1, 0x3a4c0000000000000000000000000000u128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0x00); dec_test!(bid128_div_124, bid128_div, 1, 0x40a46a3aae3793cfb072d3a233765dd6u128, 0xdfdab50a18d577e9d23d5a48965dd11fu128, 0x90c7214d4793b5e3f7dc4bf5d1b4c8a6u128, 0x20); dec_test!(bid128_div_125, bid128_div, 1, 0x4601b16cefe9effd31c9d1fb957f827du128, 0xb4ece6c0fecdbce3d82f9af606824e86u128, 0xc1125c9b81bd7b51e01e5f389b29900fu128, 0x20); dec_test!(bid128_div_126, bid128_div, 1, 0x4f0b131761a5ebfee17445ef98b870b9u128, 0x1c7fb951183140880316f0c8237c5127u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_127, bid128_div, 1, 0x52b36974100f49280f1bae6a614be06fu128, 0x1e304bbb94d4425c1b1a50112a2e1cb1u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_128, bid128_div, 1, 0x5530164e902e8437b288c0ee62a18589u128, 0x8ffac0e4688b10118f918b0e12fb95cbu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_129, bid128_div, 1, 0x597e0000000000000000000000000000u128, 0x5bbc9676a11218e4c767d7f288836625u128, 0x2e020000000000000000000000000000u128, 0x00); dec_test!(bid128_div_130, bid128_div, 1, 0x5f8cd8f1e56c6b3d541da77d81887813u128, 0x1c99d16b5a33a9852809b8660d9d69f0u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_131, bid128_div, 1, 0x806032960a142709d1a9eae619261fe6u128, 0xd747094621e87bdf42930ddffd2d2bb6u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_132, bid128_div, 1, 0x89cf2ff12ec78d4242674691aeda0f44u128, 0x11d0582141400402fffffffffffffe7fu128, 0xa7fcaa09ef582623be20e2e1d16ad69cu128, 0x20); dec_test!(bid128_div_133, bid128_div, 1, 0x8c40c590549957ea4a9a7cb1e9380813u128, 0x41153cd932ac2b467ac11d6b17ae4462u128, 0x80000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_134, bid128_div, 1, 0x8c750c6d27ff163df024d4457485fa3cu128, 0x3cc5d0621a99f027eadaa3acfbc6eb50u128, 0x80000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_135, bid128_div, 1, 0x8ccc407e66eb7261bf95795f91b67333u128, 0x2bfcea63f6e985b9385025a162db63fcu128, 0x90cc87a97793653f41c5b0843e759c4du128, 0x20); dec_test!(bid128_div_136, bid128_div, 1, 0x8e2403cdcba752630629b6f7a7010602u128, 0x5a3980ee7baa631d3708928990f473e4u128, 0x80000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_137, bid128_div, 1, 0x9346134cb5d53576d5519b525d5ffa30u128, 0x88509674eb409001ca9b988529db58b0u128, 0x3af23f3e6cf2fe9a91863d9c1fe83531u128, 0x20); dec_test!(bid128_div_138, bid128_div, 1, 0x9356239fd6f61f543c82a573dd68c8f7u128, 0xd007306e51b058897ada8064b6679c41u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_139, bid128_div, 1, 0x97e3407e35fe75ad38edea703e91a616u128, 0x46460000000000000000000000000000u128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_140, bid128_div, 1, "+9878987.5679766895E0" , "0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_141, bid128_div, 1, "+98858.678996557986769E0" , "-989.888889E0" , 0xb001ec63b7d685d4e49c39a1b82c7906u128, 0x20); dec_test!(bid128_div_142, bid128_div, 1, "+99.8998888898E0" , "-55993.8675252E0" , 0xaff857f6c8fae298e46f125bb81b162du128, 0x20); dec_test!(bid128_div_143, bid128_div, 1, 0x9b5b494c1b0b648a37a1bb32e5a95fa9u128, 0xa93a0d7850c02072d381713d3707026au128, 0x2220788822fcbd2bc4d2d1bab2fdc4f6u128, 0x20); dec_test!(bid128_div_144, bid128_div, 1, 0x9dac6392650e5f326dc29520591ed6d2u128, 0x7c000000000000000000000000000000u128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_145, bid128_div, 1, 0xca315abb5eb7928af36c452c38ae05b0u128, 0x926e4674bba1c31cd8256ba008e56abdu128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_146, bid128_div, 1, 0xce4eaaae52c725dba236e46671e9e4d1u128, 0x1f5d2bf1866d7bd9a8bed133ede1421eu128, 0xdeef188f6b4e47105d84efb1a381eb0au128, 0x20); dec_test!(bid128_div_147, bid128_div, 1, 0xcf9fe06cec065c371baf1e0586ff927du128, 0x80c9b1ce835e3cb19b9600b33d3c5041u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_148, bid128_div, 1, 0xd45a2d71f2fc518726c22326f2005835u128, 0x102b679d08833f6d870cf5e9f920c0d5u128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_149, bid128_div, 1, 0xdba033e002d884757fde7d86b7ed34d2u128, 0x04673668347f5053ac5aac9ee0505f1bu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_150, bid128_div, 1, 0xdd4fbf6532b84f733c4c5763f08dca6bu128, 0xc8893309fd8b36678a3434e6ff1c8ed9u128, 0x44c447d78c0580aa85f7db30b7388987u128, 0x20); dec_test!(bid128_div_151, bid128_div, 1, 0xfe001c9bc3525d6ac0939fd3447b27a7u128, 0x8edc0000000000000000000000000000u128, 0xfc001c9bc3525d6ac0939fd3447b27a7u128, 0x01); dec_test!(bid128_div_152, bid128_div, 1, "-Infinity" , "-0" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_153, bid128_div, 1, "-Infinity" , "0" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_154, bid128_div, 1, "-Infinity" , "-Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_155, bid128_div, 1, "-Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_156, bid128_div, 1, "Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_157, bid128_div, 1, "QNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_158, bid128_div, 1, "QNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_159, bid128_div, 2, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000001u128, 0x00); dec_test!(bid128_div_160, bid128_div, 2, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_161, bid128_div, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_div_162, bid128_div, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_163, bid128_div, 2, "-0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_164, bid128_div, 2, "-0" , "0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_165, bid128_div, 2, "0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_166, bid128_div, 2, "-0" , "Infinity" , 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_167, bid128_div, 2, "0" , "SNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_168, bid128_div, 2, "-1.010E0" , "+734.657E0" , 0xaff843c84e0b05df35d5dd63a34a7f50u128, 0x20); dec_test!(bid128_div_169, bid128_div, 2, 0x10d580b2040866df5418d5cf1ad87f60u128, 0x47fc8a037c585432c56d954eeae84dbcu128, 0x00000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_170, bid128_div, 2, "+1100101.01100E0" , "-52.45339558946E0" , 0xb00667678cd085a5dc88e14678177cabu128, 0x20); dec_test!(bid128_div_171, bid128_div, 2, "-11101.0110010011100E0" , "-0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_172, bid128_div, 2, "1E-6176" , "2" , 0x00000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_173, bid128_div, 2, "1E-6176" , "-2" , 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_174, bid128_div, 2, "1E-6176" , "4294967296" , 0x00000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_175, bid128_div, 2, 0x1ea47d723a25878256018cb55e2192efu128, 0xdaf1c0016d4dff25d69a2d819e52b625u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_176, bid128_div, 2, 0x22a44b71ac3da0116eb5bd44422dea44u128, 0x1e4e0000000000000000000000000000u128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_177, bid128_div, 2, 0x333f35ef131e4d4e28976a21359307a5u128, 0x9d5e1082c76501424409851f173e99aau128, 0xc5e05c8cfe06e9a505fe87d0b754ee75u128, 0x20); dec_test!(bid128_div_178, bid128_div, 2, 0x33e63513719d9e3016fb2087e309f4e1u128, 0x93fec56dcf2fa39b009abaa41270f373u128, 0xcfe4848bd6adddef6e5040816616a39fu128, 0x20); dec_test!(bid128_div_179, bid128_div, 2, 0x3a4c0000000000000000000000000000u128, 0xfe001e36a363a2cafc5630c241fad77bu128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0x01); dec_test!(bid128_div_180, bid128_div, 2, 0x40a46a3aae3793cfb072d3a233765dd6u128, 0xdfdab50a18d577e9d23d5a48965dd11fu128, 0x90c7214d4793b5e3f7dc4bf5d1b4c8a5u128, 0x20); dec_test!(bid128_div_181, bid128_div, 2, 0x4601b16cefe9effd31c9d1fb957f827du128, 0xb4ece6c0fecdbce3d82f9af606824e86u128, 0xc1125c9b81bd7b51e01e5f389b29900eu128, 0x20); dec_test!(bid128_div_182, bid128_div, 2, 0x4f0b131761a5ebfee17445ef98b870b9u128, 0x1c7fb951183140880316f0c8237c5127u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_183, bid128_div, 2, 0x52b36974100f49280f1bae6a614be06fu128, 0x1e304bbb94d4425c1b1a50112a2e1cb1u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_184, bid128_div, 2, 0x5530164e902e8437b288c0ee62a18589u128, 0x8ffac0e4688b10118f918b0e12fb95cbu128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_185, bid128_div, 2, 0x597e0000000000000000000000000000u128, 0x5bbc9676a11218e4c767d7f288836625u128, 0x2e020000000000000000000000000000u128, 0x00); dec_test!(bid128_div_186, bid128_div, 2, 0x5f8cd8f1e56c6b3d541da77d81887813u128, 0x1c99d16b5a33a9852809b8660d9d69f0u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_187, bid128_div, 2, 0x806032960a142709d1a9eae619261fe6u128, 0xd747094621e87bdf42930ddffd2d2bb6u128, 0x00000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_188, bid128_div, 2, 0x82100080029581080000000000000000u128, 0x32394184dc68c8c9df7fe7fcf7ffbba7u128, 0x8000000000000000000000005cb31722u128, 0x30); dec_test!(bid128_div_189, bid128_div, 2, 0x89cf2ff12ec78d4242674691aeda0f44u128, 0x11d0582141400402fffffffffffffe7fu128, 0xa7fcaa09ef582623be20e2e1d16ad69bu128, 0x20); dec_test!(bid128_div_190, bid128_div, 2, 0x8c40c590549957ea4a9a7cb1e9380813u128, 0x41153cd932ac2b467ac11d6b17ae4462u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_191, bid128_div, 2, 0x8c750c6d27ff163df024d4457485fa3cu128, 0x3cc5d0621a99f027eadaa3acfbc6eb50u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_192, bid128_div, 2, 0x8ccc407e66eb7261bf95795f91b67333u128, 0x2bfcea63f6e985b9385025a162db63fcu128, 0x90cc87a97793653f41c5b0843e759c4cu128, 0x20); dec_test!(bid128_div_193, bid128_div, 2, 0x8e2403cdcba752630629b6f7a7010602u128, 0x5a3980ee7baa631d3708928990f473e4u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_194, bid128_div, 2, 0x9346134cb5d53576d5519b525d5ffa30u128, 0x88509674eb409001ca9b988529db58b0u128, 0x3af23f3e6cf2fe9a91863d9c1fe83532u128, 0x20); dec_test!(bid128_div_195, bid128_div, 2, 0x9356239fd6f61f543c82a573dd68c8f7u128, 0xd007306e51b058897ada8064b6679c41u128, 0x00000000000000000000000000000001u128, 0x30); dec_test!(bid128_div_196, bid128_div, 2, 0x97e3407e35fe75ad38edea703e91a616u128, 0x46460000000000000000000000000000u128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_197, bid128_div, 2, "+9878987.5679766895E0" , "0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_198, bid128_div, 2, "+98858.678996557986769E0" , "-989.888889E0" , 0xb001ec63b7d685d4e49c39a1b82c7905u128, 0x20); dec_test!(bid128_div_199, bid128_div, 2, "+99.8998888898E0" , "-55993.8675252E0" , 0xaff857f6c8fae298e46f125bb81b162cu128, 0x20); dec_test!(bid128_div_200, bid128_div, 2, 0x9b5b494c1b0b648a37a1bb32e5a95fa9u128, 0xa93a0d7850c02072d381713d3707026au128, 0x2220788822fcbd2bc4d2d1bab2fdc4f7u128, 0x20); dec_test!(bid128_div_201, bid128_div, 2, 0x9dac6392650e5f326dc29520591ed6d2u128, 0x7e000000000000000000000000000000u128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_202, bid128_div, 2, 0xca315abb5eb7928af36c452c38ae05b0u128, 0x926e4674bba1c31cd8256ba008e56abdu128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_203, bid128_div, 2, 0xce4eaaae52c725dba236e46671e9e4d1u128, 0x1f5d2bf1866d7bd9a8bed133ede1421eu128, 0xdeef188f6b4e47105d84efb1a381eb09u128, 0x20); dec_test!(bid128_div_204, bid128_div, 2, 0xcf9fe06cec065c371baf1e0586ff927du128, 0x80c9b1ce835e3cb19b9600b33d3c5041u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_205, bid128_div, 2, 0xd45a2d71f2fc518726c22326f2005835u128, 0x102b679d08833f6d870cf5e9f920c0d5u128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_206, bid128_div, 2, 0xdba033e002d884757fde7d86b7ed34d2u128, 0x04673668347f5053ac5aac9ee0505f1bu128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_207, bid128_div, 2, 0xdd4fbf6532b84f733c4c5763f08dca6bu128, 0xc8893309fd8b36678a3434e6ff1c8ed9u128, 0x44c447d78c0580aa85f7db30b7388988u128, 0x20); dec_test!(bid128_div_208, bid128_div, 2, 0xfe001c9bc3525d6ac0939fd3447b27a7u128, 0x8edc0000000000000000000000000000u128, 0xfc001c9bc3525d6ac0939fd3447b27a7u128, 0x01); dec_test!(bid128_div_209, bid128_div, 2, "-Infinity" , "-0" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_210, bid128_div, 2, "-Infinity" , "0" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_211, bid128_div, 2, "-Infinity" , "-Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_212, bid128_div, 2, "-Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_213, bid128_div, 2, "Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_214, bid128_div, 2, "QNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_215, bid128_div, 2, "QNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_216, bid128_div, 3, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000001u128, 0x00); dec_test!(bid128_div_217, bid128_div, 3, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_218, bid128_div, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_div_219, bid128_div, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_220, bid128_div, 3, "-0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_221, bid128_div, 3, "-0" , "0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_222, bid128_div, 3, "0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_223, bid128_div, 3, "-0" , "Infinity" , 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_224, bid128_div, 3, "0" , "SNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_225, bid128_div, 3, "-1.010E0" , "+734.657E0" , 0xaff843c84e0b05df35d5dd63a34a7f50u128, 0x20); dec_test!(bid128_div_226, bid128_div, 3, 0x10d580b2040866df5418d5cf1ad87f60u128, 0x47fc8a037c585432c56d954eeae84dbcu128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_227, bid128_div, 3, "+1100101.01100E0" , "-52.45339558946E0" , 0xb00667678cd085a5dc88e14678177cabu128, 0x20); dec_test!(bid128_div_228, bid128_div, 3, "-11101.0110010011100E0" , "-0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_229, bid128_div, 3, 0x1ea47d723a25878256018cb55e2192efu128, 0xdaf1c0016d4dff25d69a2d819e52b625u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_230, bid128_div, 3, 0x22a44b71ac3da0116eb5bd44422dea44u128, 0x1e4e0000000000000000000000000000u128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_231, bid128_div, 3, 0x333f35ef131e4d4e28976a21359307a5u128, 0x9d5e1082c76501424409851f173e99aau128, 0xc5e05c8cfe06e9a505fe87d0b754ee75u128, 0x20); dec_test!(bid128_div_232, bid128_div, 3, 0x33e63513719d9e3016fb2087e309f4e1u128, 0x93fec56dcf2fa39b009abaa41270f373u128, 0xcfe4848bd6adddef6e5040816616a39fu128, 0x20); dec_test!(bid128_div_233, bid128_div, 3, 0x3a4c0000000000000000000000000000u128, 0xfe001e36a363a2cafc5630c241fad77bu128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0x01); dec_test!(bid128_div_234, bid128_div, 3, 0x40a46a3aae3793cfb072d3a233765dd6u128, 0xdfdab50a18d577e9d23d5a48965dd11fu128, 0x90c7214d4793b5e3f7dc4bf5d1b4c8a5u128, 0x20); dec_test!(bid128_div_235, bid128_div, 3, 0x4601b16cefe9effd31c9d1fb957f827du128, 0xb4ece6c0fecdbce3d82f9af606824e86u128, 0xc1125c9b81bd7b51e01e5f389b29900eu128, 0x20); dec_test!(bid128_div_236, bid128_div, 3, 0x4f0b131761a5ebfee17445ef98b870b9u128, 0x1c7fb951183140880316f0c8237c5127u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_237, bid128_div, 3, 0x52b36974100f49280f1bae6a614be06fu128, 0x1e304bbb94d4425c1b1a50112a2e1cb1u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_238, bid128_div, 3, 0x5530164e902e8437b288c0ee62a18589u128, 0x8ffac0e4688b10118f918b0e12fb95cbu128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_239, bid128_div, 3, 0x597e0000000000000000000000000000u128, 0x5bbc9676a11218e4c767d7f288836625u128, 0x2e020000000000000000000000000000u128, 0x00); dec_test!(bid128_div_240, bid128_div, 3, 0x5f8cd8f1e56c6b3d541da77d81887813u128, 0x1c99d16b5a33a9852809b8660d9d69f0u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_241, bid128_div, 3, 0x806032960a142709d1a9eae619261fe6u128, 0xd747094621e87bdf42930ddffd2d2bb6u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_242, bid128_div, 3, 0x8c40c590549957ea4a9a7cb1e9380813u128, 0x41153cd932ac2b467ac11d6b17ae4462u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_243, bid128_div, 3, 0x8c750c6d27ff163df024d4457485fa3cu128, 0x3cc5d0621a99f027eadaa3acfbc6eb50u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_244, bid128_div, 3, 0x8ccc407e66eb7261bf95795f91b67333u128, 0x2bfcea63f6e985b9385025a162db63fcu128, 0x90cc87a97793653f41c5b0843e759c4cu128, 0x20); dec_test!(bid128_div_245, bid128_div, 3, 0x8e2403cdcba752630629b6f7a7010602u128, 0x5a3980ee7baa631d3708928990f473e4u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_246, bid128_div, 3, 0x9346134cb5d53576d5519b525d5ffa30u128, 0x88509674eb409001ca9b988529db58b0u128, 0x3af23f3e6cf2fe9a91863d9c1fe83531u128, 0x20); dec_test!(bid128_div_247, bid128_div, 3, 0x9356239fd6f61f543c82a573dd68c8f7u128, 0xd007306e51b058897ada8064b6679c41u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_248, bid128_div, 3, 0x97e3407e35fe75ad38edea703e91a616u128, 0x46460000000000000000000000000000u128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_249, bid128_div, 3, "+9878987.5679766895E0" , "0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_250, bid128_div, 3, "+98858.678996557986769E0" , "-989.888889E0" , 0xb001ec63b7d685d4e49c39a1b82c7905u128, 0x20); dec_test!(bid128_div_251, bid128_div, 3, "+99.8998888898E0" , "-55993.8675252E0" , 0xaff857f6c8fae298e46f125bb81b162cu128, 0x20); dec_test!(bid128_div_252, bid128_div, 3, 0x9b5b494c1b0b648a37a1bb32e5a95fa9u128, 0xa93a0d7850c02072d381713d3707026au128, 0x2220788822fcbd2bc4d2d1bab2fdc4f6u128, 0x20); dec_test!(bid128_div_253, bid128_div, 3, 0x9dac6392650e5f326dc29520591ed6d2u128, 0x7e000000000000000000000000000000u128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_254, bid128_div, 3, 0xca315abb5eb7928af36c452c38ae05b0u128, 0x926e4674bba1c31cd8256ba008e56abdu128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_255, bid128_div, 3, 0xce4eaaae52c725dba236e46671e9e4d1u128, 0x1f5d2bf1866d7bd9a8bed133ede1421eu128, 0xdeef188f6b4e47105d84efb1a381eb09u128, 0x20); dec_test!(bid128_div_256, bid128_div, 3, 0xcf9fe06cec065c371baf1e0586ff927du128, 0x80c9b1ce835e3cb19b9600b33d3c5041u128, 0x5fffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_257, bid128_div, 3, 0xd45a2d71f2fc518726c22326f2005835u128, 0x102b679d08833f6d870cf5e9f920c0d5u128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_258, bid128_div, 3, 0xdba033e002d884757fde7d86b7ed34d2u128, 0x04673668347f5053ac5aac9ee0505f1bu128, 0xdfffed09bead87c0378d8e63ffffffffu128, 0x28); dec_test!(bid128_div_259, bid128_div, 3, 0xdd4fbf6532b84f733c4c5763f08dca6bu128, 0xc8893309fd8b36678a3434e6ff1c8ed9u128, 0x44c447d78c0580aa85f7db30b7388987u128, 0x20); dec_test!(bid128_div_260, bid128_div, 3, 0xfe001c9bc3525d6ac0939fd3447b27a7u128, 0x8edc0000000000000000000000000000u128, 0xfc001c9bc3525d6ac0939fd3447b27a7u128, 0x01); dec_test!(bid128_div_261, bid128_div, 3, "-Infinity" , "-0" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_262, bid128_div, 3, "-Infinity" , "0" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_263, bid128_div, 3, "-Infinity" , "-Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_264, bid128_div, 3, "-Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_265, bid128_div, 3, "Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_266, bid128_div, 3, "QNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_267, bid128_div, 3, "QNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_268, bid128_div, 4, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000001u128, 0x00); dec_test!(bid128_div_269, bid128_div, 4, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_270, bid128_div, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_div_271, bid128_div, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_272, bid128_div, 4, "-0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_273, bid128_div, 4, "-0" , "0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_274, bid128_div, 4, "0" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_275, bid128_div, 4, "-0" , "Infinity" , 0x80000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_276, bid128_div, 4, "0" , "SNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_277, bid128_div, 4, "-1.010E0" , "+734.657E0" , 0xaff843c84e0b05df35d5dd63a34a7f51u128, 0x20); dec_test!(bid128_div_278, bid128_div, 4, 0x10d580b2040866df5418d5cf1ad87f60u128, 0x47fc8a037c585432c56d954eeae84dbcu128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_279, bid128_div, 4, "+1100101.01100E0" , "-52.45339558946E0" , 0xb00667678cd085a5dc88e14678177cabu128, 0x20); dec_test!(bid128_div_280, bid128_div, 4, "-11101.0110010011100E0" , "-0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_281, bid128_div, 4, 0x1ea47d723a25878256018cb55e2192efu128, 0xdaf1c0016d4dff25d69a2d819e52b625u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_282, bid128_div, 4, 0x22a44b71ac3da0116eb5bd44422dea44u128, 0x1e4e0000000000000000000000000000u128, 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_283, bid128_div, 4, 0x333f35ef131e4d4e28976a21359307a5u128, 0x9d5e1082c76501424409851f173e99aau128, 0xc5e05c8cfe06e9a505fe87d0b754ee76u128, 0x20); dec_test!(bid128_div_284, bid128_div, 4, 0x33e63513719d9e3016fb2087e309f4e1u128, 0x93fec56dcf2fa39b009abaa41270f373u128, 0xcfe4848bd6adddef6e5040816616a3a0u128, 0x20); dec_test!(bid128_div_285, bid128_div, 4, 0x3a4c0000000000000000000000000000u128, 0xfe001e36a363a2cafc5630c241fad77bu128, 0xfc001e36a363a2cafc5630c241fad77bu128, 0x01); dec_test!(bid128_div_286, bid128_div, 4, 0x40a46a3aae3793cfb072d3a233765dd6u128, 0xdfdab50a18d577e9d23d5a48965dd11fu128, 0x90c7214d4793b5e3f7dc4bf5d1b4c8a5u128, 0x20); dec_test!(bid128_div_287, bid128_div, 4, 0x4601b16cefe9effd31c9d1fb957f827du128, 0xb4ece6c0fecdbce3d82f9af606824e86u128, 0xc1125c9b81bd7b51e01e5f389b29900fu128, 0x20); dec_test!(bid128_div_288, bid128_div, 4, 0x4f0b131761a5ebfee17445ef98b870b9u128, 0x1c7fb951183140880316f0c8237c5127u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_289, bid128_div, 4, 0x52b36974100f49280f1bae6a614be06fu128, 0x1e304bbb94d4425c1b1a50112a2e1cb1u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_290, bid128_div, 4, 0x5530164e902e8437b288c0ee62a18589u128, 0x8ffac0e4688b10118f918b0e12fb95cbu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_291, bid128_div, 4, 0x597e0000000000000000000000000000u128, 0x5bbc9676a11218e4c767d7f288836625u128, 0x2e020000000000000000000000000000u128, 0x00); dec_test!(bid128_div_292, bid128_div, 4, 0x5f8cd8f1e56c6b3d541da77d81887813u128, 0x1c99d16b5a33a9852809b8660d9d69f0u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_293, bid128_div, 4, 0x806032960a142709d1a9eae619261fe6u128, 0xd747094621e87bdf42930ddffd2d2bb6u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_294, bid128_div, 4, 0x89cf2ff12ec78d4242674691aeda0f44u128, 0x11d0582141400402fffffffffffffe7fu128, 0xa7fcaa09ef582623be20e2e1d16ad69cu128, 0x20); dec_test!(bid128_div_295, bid128_div, 4, 0x8c40c590549957ea4a9a7cb1e9380813u128, 0x41153cd932ac2b467ac11d6b17ae4462u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_296, bid128_div, 4, 0x8c750c6d27ff163df024d4457485fa3cu128, 0x3cc5d0621a99f027eadaa3acfbc6eb50u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_297, bid128_div, 4, 0x8ccc407e66eb7261bf95795f91b67333u128, 0x2bfcea63f6e985b9385025a162db63fcu128, 0x90cc87a97793653f41c5b0843e759c4du128, 0x20); dec_test!(bid128_div_298, bid128_div, 4, 0x8e2403cdcba752630629b6f7a7010602u128, 0x5a3980ee7baa631d3708928990f473e4u128, 0x80000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_299, bid128_div, 4, 0x9346134cb5d53576d5519b525d5ffa30u128, 0x88509674eb409001ca9b988529db58b0u128, 0x3af23f3e6cf2fe9a91863d9c1fe83531u128, 0x20); dec_test!(bid128_div_300, bid128_div, 4, 0x9356239fd6f61f543c82a573dd68c8f7u128, 0xd007306e51b058897ada8064b6679c41u128, 0x00000000000000000000000000000000u128, 0x30); dec_test!(bid128_div_301, bid128_div, 4, 0x97e3407e35fe75ad38edea703e91a616u128, 0x46460000000000000000000000000000u128, 0xf8000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_302, bid128_div, 4, "+9878987.5679766895E0" , "0" , 0x78000000000000000000000000000000u128, 0x04); dec_test!(bid128_div_303, bid128_div, 4, "+98858.678996557986769E0" , "-989.888889E0" , 0xb001ec63b7d685d4e49c39a1b82c7906u128, 0x20); dec_test!(bid128_div_304, bid128_div, 4, "+99.8998888898E0" , "-55993.8675252E0" , 0xaff857f6c8fae298e46f125bb81b162du128, 0x20); dec_test!(bid128_div_305, bid128_div, 4, 0x9b5b494c1b0b648a37a1bb32e5a95fa9u128, 0xa93a0d7850c02072d381713d3707026au128, 0x2220788822fcbd2bc4d2d1bab2fdc4f7u128, 0x20); dec_test!(bid128_div_306, bid128_div, 4, 0x9dac6392650e5f326dc29520591ed6d2u128, 0x7e000000000000000000000000000000u128, 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_307, bid128_div, 4, 0xca315abb5eb7928af36c452c38ae05b0u128, 0x926e4674bba1c31cd8256ba008e56abdu128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_308, bid128_div, 4, 0xce4eaaae52c725dba236e46671e9e4d1u128, 0x1f5d2bf1866d7bd9a8bed133ede1421eu128, 0xdeef188f6b4e47105d84efb1a381eb09u128, 0x20); dec_test!(bid128_div_309, bid128_div, 4, 0xcf9fe06cec065c371baf1e0586ff927du128, 0x80c9b1ce835e3cb19b9600b33d3c5041u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_310, bid128_div, 4, 0xd45a2d71f2fc518726c22326f2005835u128, 0x102b679d08833f6d870cf5e9f920c0d5u128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_311, bid128_div, 4, 0xdba033e002d884757fde7d86b7ed34d2u128, 0x04673668347f5053ac5aac9ee0505f1bu128, 0xf8000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_312, bid128_div, 4, 0xdd4fbf6532b84f733c4c5763f08dca6bu128, 0xc8893309fd8b36678a3434e6ff1c8ed9u128, 0x44c447d78c0580aa85f7db30b7388987u128, 0x20); dec_test!(bid128_div_313, bid128_div, 4, 0xfe001c9bc3525d6ac0939fd3447b27a7u128, 0x8edc0000000000000000000000000000u128, 0xfc001c9bc3525d6ac0939fd3447b27a7u128, 0x01); dec_test!(bid128_div_314, bid128_div, 4, "-Infinity" , "-0" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_315, bid128_div, 4, "-Infinity" , "0" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_316, bid128_div, 4, "-Infinity" , "-Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_317, bid128_div, 4, "-Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_318, bid128_div, 4, "Infinity" , "Infinity" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_div_319, bid128_div, 4, "QNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_320, bid128_div, 4, "QNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_div_321, bid128_div, 0, 0x4fbfaae29deedb77ffffffffffffffffu128, 0x00000000000000000000000000000004u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_322, bid128_div, 4, 0x4fbfaae29deedb77ffffffffffffffffu128, 0x00000000000000000000000000000004u128, 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_div_323, bid128_div, 2, 0x4fbfaae29deedb77ffffffffffffffffu128, 0x00000000000000000000000000000004u128, 0x78000000000000000000000000000000u128, 0x28);