/* ---------------------------------------------------------------------------------------------------*/ /* 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; dec_test!(bid128_maxnum_001, bid128_maxnum, 0x0000000000000000ffffffffffffffffu128, 0x0000000000000000ffffffffffffffffu128, 0x0000000000000000ffffffffffffffffu128, 0x00); dec_test!(bid128_maxnum_002, bid128_maxnum, 0x00000000000020829420040221e302a2u128, 0x0000040000002000e67ffb6edeecc9f9u128, 0x0000040000002000e67ffb6edeecc9f9u128, 0x00); dec_test!(bid128_maxnum_003, bid128_maxnum, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_004, bid128_maxnum, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_005, bid128_maxnum, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_006, bid128_maxnum, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_007, bid128_maxnum, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_008, bid128_maxnum, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_009, bid128_maxnum, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_010, bid128_maxnum, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_011, bid128_maxnum, "0" , "-0" , 0x30400000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_012, bid128_maxnum, 0x0040020300400080ab5be031c4007c10u128, 0x00163e6d0cc03c41fffffff7fffafff1u128, 0x0040020300400080ab5be031c4007c10u128, 0x00); dec_test!(bid128_maxnum_013, bid128_maxnum, "-0" , "-0" , 0xb0400000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_014, bid128_maxnum, 0x027f6444824c75d3de55c70f25ad47abu128, 0x0000040030001802bb3ade90d6a702afu128, 0x027f6444824c75d3de55c70f25ad47abu128, 0x00); dec_test!(bid128_maxnum_015, bid128_maxnum, "0" , "Infinity" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_016, bid128_maxnum, 0x1b6ede4dc1b5e81a733ddf9a6de69324u128, 0x257d26a6df028622c403c0276e44511du128, 0x257d26a6df028622c403c0276e44511du128, 0x00); dec_test!(bid128_maxnum_017, bid128_maxnum, 0x215019291413a80cee1a640242280804u128, 0x2138c03624008097445a9e7a579c27c0u128, 0x215019291413a80cee1a640242280804u128, 0x00); dec_test!(bid128_maxnum_018, bid128_maxnum, 0x25f60000000000000000000000000000u128, 0x80180000000000000000000000000000u128, 0x25f60000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_019, bid128_maxnum, 0x3b2a1ed8bc22e8ae38a99edede5d22eeu128, 0xffd71d5dfd76b593519e76769ef19ecbu128, 0xfc001d5dfd76b593519e76769ef19ecbu128, 0x01); dec_test!(bid128_maxnum_020, bid128_maxnum, 0x3ff99c3bcad0177fed783d3dc068938fu128, 0x4000400204000100a4c0281a10100c8au128, 0x4000400204000100a4c0281a10100c8au128, 0x00); dec_test!(bid128_maxnum_021, bid128_maxnum, 0x405a0000000000000000000000000000u128, 0xae537b161246a75e8f1ba5a2fd65fce8u128, 0x405a0000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_022, bid128_maxnum, 0x53e82c96831cd96a8108f41a069e4e4fu128, 0x542000008001a0001124318113641030u128, 0x542000008001a0001124318113641030u128, 0x00); dec_test!(bid128_maxnum_023, bid128_maxnum, 0x5f0912d3d8af5cf7431cde8f1e967a76u128, 0x1b9826915241fe6db7fb5f5b7b25d766u128, 0x5f0912d3d8af5cf7431cde8f1e967a76u128, 0x00); dec_test!(bid128_maxnum_024, bid128_maxnum, 0x78000000000000000000000000000000u128, 0xa1a2bcedb041a13b2aece9ce6b8f7cebu128, 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_025, bid128_maxnum, 0x7c003fffffffffff38c15b08ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_026, bid128_maxnum, 0x7c003fffffffffff38c15b08ffffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_027, bid128_maxnum, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_028, bid128_maxnum, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_029, bid128_maxnum, 0x7c003fffffffffff38c15b0affffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x0001ed09bead87c0378d8e62ffffffffu128, 0x00); dec_test!(bid128_maxnum_030, bid128_maxnum, 0x7c003fffffffffff38c15b0affffffffu128, 0x0001ed09bead87c0378d8e64ffffffffu128, 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_031, bid128_maxnum, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c003fffffffffff38c15b08ffffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_032, bid128_maxnum, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c003fffffffffff38c15b0affffffffu128, 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_033, bid128_maxnum, 0x82406741d5d9af36391d155de3af7feeu128, 0xc7146777abc6a6cc01cd589112372927u128, 0x82406741d5d9af36391d155de3af7feeu128, 0x00); dec_test!(bid128_maxnum_034, bid128_maxnum, 0x865fa9ff29f693748c76a9e2c56435a2u128, 0xcea0611bf6cc6e2269370457b658a21fu128, 0x865fa9ff29f693748c76a9e2c56435a2u128, 0x00); dec_test!(bid128_maxnum_035, bid128_maxnum, 0x99ef6fd089ffacc44e22505adb104c92u128, 0xc7dbe3240b4d20353530230f89cd799au128, 0x99ef6fd089ffacc44e22505adb104c92u128, 0x00); dec_test!(bid128_maxnum_036, bid128_maxnum, 0x9bdfd9430a17fe3c0000000000000020u128, 0x5fda1838be350be07c1fe63201a8ad03u128, 0x5fda1838be350be07c1fe63201a8ad03u128, 0x00); dec_test!(bid128_maxnum_037, bid128_maxnum, 0x9fffedfbdbdff5ff7fade4e377eb3a1fu128, 0x30e75607ff5597e3e2a629ee50397f1bu128, 0x30e75607ff5597e3e2a629ee50397f1bu128, 0x00); dec_test!(bid128_maxnum_038, bid128_maxnum, 0xaba4b9598f96ca54bf5e83af6fde2bb7u128, 0xffffff9dfffdfff700d7a59508e03740u128, 0xfc000000000000000000000000000000u128, 0x01); dec_test!(bid128_maxnum_039, bid128_maxnum, 0xbfacea0a6a0da1177298837e0a6750a2u128, 0xd1a2a0ee075d6de38968fc6d27031281u128, 0xbfacea0a6a0da1177298837e0a6750a2u128, 0x00); dec_test!(bid128_maxnum_040, bid128_maxnum, 0xcaf9ce3f6fe65ecf7c421830890c8c4cu128, 0xed5c9ffd57ce63ff2048100280002000u128, 0xb5720000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_041, bid128_maxnum, 0xcff874f326ef65b3de41e92cabb02763u128, 0xcd01519cca19f40a20c1449a43cd5854u128, 0xcd01519cca19f40a20c1449a43cd5854u128, 0x00); dec_test!(bid128_maxnum_042, bid128_maxnum, 0xdbf20000000000000000000000000000u128, 0x9e060000000000000000000000000000u128, 0xdbf20000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_043, bid128_maxnum, 0xef9e6eea5c3fd81df6b70f9d0a2dbfffu128, 0xdbdfffff7ffefffb759ffd3c7efeabfdu128, 0xbe780000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_044, bid128_maxnum, 0xf265d1006ac5a9d30a1cc11ad4580129u128, 0xf9f7feff7ffffcfd1061d8014f438130u128, 0xc9960000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_045, bid128_maxnum, 0xf8000000000000000000000000000000u128, 0xa85e3f33929cbe169fba91212c46fa36u128, 0xa85e3f33929cbe169fba91212c46fa36u128, 0x00); dec_test!(bid128_maxnum_046, bid128_maxnum, 0xfbffebfe6eff7fff5482556b2a27b09cu128, 0xd68ecc41811c43d70000000000000000u128, 0xd68ecc41811c43d70000000000000000u128, 0x00); dec_test!(bid128_maxnum_047, bid128_maxnum, 0xfc0007f4f1066ee942f47fcbdf9ce7d2u128, 0xab220000000000000000000000000000u128, 0xab220000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_048, bid128_maxnum, 0xfdbfb44dff6faffb7fffdfdbfddbffffu128, 0xff999ebef9fa7dad7fe1ae9ff6d7afc7u128, 0xfc000000000000000000000000000000u128, 0x01); dec_test!(bid128_maxnum_049, bid128_maxnum, 0xfde7bf7f3d7bafd8ffffbefffff7fffeu128, 0xa8cdbc16ba0a4d593374576f6aeb0a73u128, 0xa8cdbc16ba0a4d593374576f6aeb0a73u128, 0x00); dec_test!(bid128_maxnum_050, bid128_maxnum, "-Infinity" , "Infinity" , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_051, bid128_maxnum, "-Infinity" , "-Infinity" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_052, bid128_maxnum, "-Infinity" , "QNaN" , 0xf8000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_053, bid128_maxnum, "SNaN" , "-0" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_maxnum_054, bid128_maxnum, "SNaN" , "QNaN" , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_maxnum_055, bid128_maxnum, 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123457u128 , 0x59dbb75d7734cd9e1234567890123457u128, 0x00); dec_test!(bid128_maxnum_056, bid128_maxnum, 0x59dbb75d7734cd9e1234567890123457u128 , 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123457u128, 0x00); dec_test!(bid128_maxnum_057, bid128_maxnum, 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123456u128, 0x00); dec_test!(bid128_maxnum_058, bid128_maxnum, "1.11e100" , "111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_059, bid128_maxnum, "1.11e100" , "111000e95" , 0x30fe000000000000000000000001b198u128, 0x00); dec_test!(bid128_maxnum_060, bid128_maxnum, "1.11e100" , "111000000e92" , 0x30f800000000000000000000069db9c0u128, 0x00); dec_test!(bid128_maxnum_061, bid128_maxnum, "1.11e100" , "111000000000e89" , 0x30f200000000000000000019d81d9600u128, 0x00); dec_test!(bid128_maxnum_062, bid128_maxnum, "1.11e100" , "111000000000000e86" , 0x30ec000000000000000064f43391f000u128, 0x00); dec_test!(bid128_maxnum_063, bid128_maxnum, "1.11e100" , "111000000000000000e83" , 0x30e6000000000000018a59e972118000u128, 0x00); dec_test!(bid128_maxnum_064, bid128_maxnum, "1.11e100" , "111000000000000000000e80" , 0x30e0000000000006046f37e5945c0000u128, 0x00); dec_test!(bid128_maxnum_065, bid128_maxnum, "1.11e100" , "111000000000000000000000000000e71" , 0x30ce000166a90c494b679a6898000000u128, 0x00); dec_test!(bid128_maxnum_066, bid128_maxnum, "1.11e100" , "11100000000000000000000000000000000e66" , 0x30c636ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_067, bid128_maxnum, "1.11e100" , "111e100" , 0x3108000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_068, bid128_maxnum, "1.11e100" , "111000e100" , 0x3108000000000000000000000001b198u128, 0x00); dec_test!(bid128_maxnum_069, bid128_maxnum, "1.11e100" , "111000000e100" , 0x310800000000000000000000069db9c0u128, 0x00); dec_test!(bid128_maxnum_070, bid128_maxnum, "1.11e100" , "111000000000e100" , 0x310800000000000000000019d81d9600u128, 0x00); dec_test!(bid128_maxnum_071, bid128_maxnum, "1.11e100" , "111000000000000e100" , 0x3108000000000000000064f43391f000u128, 0x00); dec_test!(bid128_maxnum_072, bid128_maxnum, "1.11e100" , "111000000000000000e100" , 0x3108000000000000018a59e972118000u128, 0x00); dec_test!(bid128_maxnum_073, bid128_maxnum, "1.11e100" , "111000000000000000000e100" , 0x3108000000000006046f37e5945c0000u128, 0x00); dec_test!(bid128_maxnum_074, bid128_maxnum, "1.11e100" , "111000000000000000000000000000e100" , 0x3108000166a90c494b679a6898000000u128, 0x00); dec_test!(bid128_maxnum_075, bid128_maxnum, "1.11e100" , "11100000000000000000000000000000000e100" , 0x310a36ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_076, bid128_maxnum, "111e100" , "1.11e100" , 0x3108000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_077, bid128_maxnum, "111000e100" , "1.11e100" , 0x3108000000000000000000000001b198u128, 0x00); dec_test!(bid128_maxnum_078, bid128_maxnum, "111000000e100" , "1.11e100" , 0x310800000000000000000000069db9c0u128, 0x00); dec_test!(bid128_maxnum_079, bid128_maxnum, "111000000000e100" , "1.11e100" , 0x310800000000000000000019d81d9600u128, 0x00); dec_test!(bid128_maxnum_080, bid128_maxnum, "111000000000000e100" , "1.11e100" , 0x3108000000000000000064f43391f000u128, 0x00); dec_test!(bid128_maxnum_081, bid128_maxnum, "111000000000000000e100" , "1.11e100" , 0x3108000000000000018a59e972118000u128, 0x00); dec_test!(bid128_maxnum_082, bid128_maxnum, "111000000000000000000e100" , "1.11e100" , 0x3108000000000006046f37e5945c0000u128, 0x00); dec_test!(bid128_maxnum_083, bid128_maxnum, "111000000000000000000000000000e100" , "1.11e100" , 0x3108000166a90c494b679a6898000000u128, 0x00); dec_test!(bid128_maxnum_084, bid128_maxnum, "11100000000000000000000000000000000e100", "1.11e100" , 0x310a36ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_085, bid128_maxnum, "1.11e100" , "111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_086, bid128_maxnum, "1.11e100" , "111001e95" , 0x30fe000000000000000000000001b199u128, 0x00); dec_test!(bid128_maxnum_087, bid128_maxnum, "1.11e100" , "111000001e92" , 0x30f800000000000000000000069db9c1u128, 0x00); dec_test!(bid128_maxnum_088, bid128_maxnum, "1.11e100" , "111000000001e89" , 0x30f200000000000000000019d81d9601u128, 0x00); dec_test!(bid128_maxnum_089, bid128_maxnum, "1.11e100" , "111000000000001e86" , 0x30ec000000000000000064f43391f001u128, 0x00); dec_test!(bid128_maxnum_090, bid128_maxnum, "1.11e100" , "111000000000000001e83" , 0x30e6000000000000018a59e972118001u128, 0x00); dec_test!(bid128_maxnum_091, bid128_maxnum, "1.11e100" , "111000000000000000001e80" , 0x30e0000000000006046f37e5945c0001u128, 0x00); dec_test!(bid128_maxnum_092, bid128_maxnum, "1.11e100" , "111000000000000000000000000001e71" , 0x30ce000166a90c494b679a6898000001u128, 0x00); dec_test!(bid128_maxnum_093, bid128_maxnum, "1.11e100" , "11100000000000000000000000000000001e66" , 0x30c636ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_094, bid128_maxnum, "1.11e101" , "111e98" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_095, bid128_maxnum, "1.11e101" , "111001e95" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_096, bid128_maxnum, "1.11e101" , "111000001e92" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_097, bid128_maxnum, "1.11e101" , "111000000001e89" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_098, bid128_maxnum, "1.11e101" , "111000000000001e86" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_099, bid128_maxnum, "1.11e101" , "111000000000000001e83" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_100, bid128_maxnum, "1.11e101" , "111000000000000000001e80" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_101, bid128_maxnum, "1.11e101" , "111000000000000000000000000001e71" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_102, bid128_maxnum, "1.11e101" , "11100000000000000000000000000000001e66" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_103, bid128_maxnum, "111e98" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_104, bid128_maxnum, "111001e95" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_105, bid128_maxnum, "111000001e92" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_106, bid128_maxnum, "111000000001e89" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_107, bid128_maxnum, "111000000000001e86" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_108, bid128_maxnum, "111000000000000001e83" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_109, bid128_maxnum, "111000000000000000001e80" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_110, bid128_maxnum, "111000000000000000000000000001e71" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_111, bid128_maxnum, "11100000000000000000000000000000001e66" , "1.11e101" , 0x3106000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_112, bid128_maxnum, "111e98" , "1.11e100" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_113, bid128_maxnum, "111001e95" , "1.11e100" , 0x30fe000000000000000000000001b199u128, 0x00); dec_test!(bid128_maxnum_114, bid128_maxnum, "111000001e92" , "1.11e100" , 0x30f800000000000000000000069db9c1u128, 0x00); dec_test!(bid128_maxnum_115, bid128_maxnum, "111000000001e89" , "1.11e100" , 0x30f200000000000000000019d81d9601u128, 0x00); dec_test!(bid128_maxnum_116, bid128_maxnum, "111000000000001e86" , "1.11e100" , 0x30ec000000000000000064f43391f001u128, 0x00); dec_test!(bid128_maxnum_117, bid128_maxnum, "111000000000000001e83" , "1.11e100" , 0x30e6000000000000018a59e972118001u128, 0x00); dec_test!(bid128_maxnum_118, bid128_maxnum, "111000000000000000001e80" , "1.11e100" , 0x30e0000000000006046f37e5945c0001u128, 0x00); dec_test!(bid128_maxnum_119, bid128_maxnum, "111000000000000000000000000001e71" , "1.11e100" , 0x30ce000166a90c494b679a6898000001u128, 0x00); dec_test!(bid128_maxnum_120, bid128_maxnum, "11100000000000000000000000000000001e66" , "1.11e100" , 0x30c636ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_121, bid128_maxnum, "-1.11e100" , "111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_122, bid128_maxnum, "1.11e100" , "-111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_123, bid128_maxnum, "-1.11e100" , "-111e98" , 0xb104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_124, bid128_maxnum, "-1.11e100" , "111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_125, bid128_maxnum, "1.11e100" , "-111e98" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_126, bid128_maxnum, "-1.11e100" , "-111e98" , 0xb104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_127, bid128_maxnum, "-1.11e100" , "-111000000000000000000e80" , 0xb104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_128, bid128_maxnum, "-1.11e100" , "-11100000000000000000000000000000000e66" , 0xb104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_129, bid128_maxnum, "-1.11e100" , "111000000000000000000e80" , 0x30e0000000000006046f37e5945c0000u128, 0x00); dec_test!(bid128_maxnum_130, bid128_maxnum, "-1.11e100" , "11100000000000000000000000000000000e66" , 0x30c636ba2b6fef117eff95b180000000u128, 0x00); dec_test!(bid128_maxnum_131, bid128_maxnum, "1.11e100" , "-111000000000000000000e80" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_132, bid128_maxnum, "1.11e100" , "-11100000000000000000000000000000000e66" , 0x3104000000000000000000000000006fu128, 0x00); dec_test!(bid128_maxnum_133, bid128_maxnum, 0x30540000000000000000000000000000u128 , "1.0e11" , 0x3054000000000000000000000000000au128, 0x00); dec_test!(bid128_maxnum_134, bid128_maxnum, 0x30540000000000000000000000000000u128 , "-1.0e11" , 0x30540000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_135, bid128_maxnum, 0xb0540000000000000000000000000000u128 , "-1.0e11" , 0xb0540000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_136, bid128_maxnum, 0xb0540000000000000000000000000000u128 , "1.0e11" , 0x3054000000000000000000000000000au128, 0x00); dec_test!(bid128_maxnum_137, bid128_maxnum, "1.0e11" , 0x30540000000000000000000000000000u128 , 0x3054000000000000000000000000000au128, 0x00); dec_test!(bid128_maxnum_138, bid128_maxnum, "-1.0e11" , 0x30540000000000000000000000000000u128 , 0x30540000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_139, bid128_maxnum, "-1.0e11" , 0xb0540000000000000000000000000000u128 , 0xb0540000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_140, bid128_maxnum, "1.0e11" , 0xb0540000000000000000000000000000u128 , 0x3054000000000000000000000000000au128, 0x00); dec_test!(bid128_maxnum_141, bid128_maxnum, 0x7c00314dc6448d9338c15b0a00000000u128 , 0xfc00314dc6448d9338c15b0a00000000u128 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_142, bid128_maxnum, 0x7c00314dc6448d9338c15b0a00000000u128 , 0x7c00314dc6448d9338c15b09ffffffffu128 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_143, bid128_maxnum, 0x7c00314dc6448d9338c15b09ffffffffu128 , 0x7c00314dc6448d9338c15b0a00000000u128 , 0x7c00314dc6448d9338c15b09ffffffffu128, 0x00); dec_test!(bid128_maxnum_144, bid128_maxnum, 0x7c00314dc6448d9338c15b09ffffffffu128 , 0x7c00314dc6448d9338c15b09fffffffeu128 , 0x7c00314dc6448d9338c15b09ffffffffu128, 0x00); dec_test!(bid128_maxnum_145, bid128_maxnum, 0x69dbb75d7734cd9e1234567890123456u128 , 0x7c00314dc6448d9338c15b0a00000000u128 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_146, bid128_maxnum, 0x69dbb75d7734cd9e1234567890123456u128 , 0x7c00314dc6448d9338c15b09fffffffeu128 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_147, bid128_maxnum, 0x59dbb75d7734cd9e1234567890123456u128 , 0x7c00314dc6448d9338c15b09fffffffeu128 , 0x59dbb75d7734cd9e1234567890123456u128, 0x00); dec_test!(bid128_maxnum_148, bid128_maxnum, 0x59dbb75d7734cd9e1234567890123456u128 , 0x7c00314dc6448d9338c15b0a00000000u128 , 0x59dbb75d7734cd9e1234567890123456u128, 0x00); dec_test!(bid128_maxnum_149, bid128_maxnum, 0x7c00314dc6448d9338c15b0a00000000u128 , 0x69dbb75d7734cd9e1234567890123456u128 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_150, bid128_maxnum, 0x7c00314dc6448d9338c15b09fffffffeu128 , 0x69dbb75d7734cd9e1234567890123456u128 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_maxnum_151, bid128_maxnum, 0x7c00314dc6448d9338c15b09fffffffeu128 , 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123456u128, 0x00); dec_test!(bid128_maxnum_152, bid128_maxnum, 0x7c00314dc6448d9338c15b0a00000000u128 , 0x59dbb75d7734cd9e1234567890123456u128 , 0x59dbb75d7734cd9e1234567890123456u128, 0x00); dec_test!(bid128_maxnum_153, bid128_maxnum, "0E+368" , 0x7e000000000000000000000000000001u128 , 0x7c000000000000000000000000000001u128, 0x01);