BNB Chain

0x951053966a79baf720a771531fae1802b95a2cda

Decompiled Solidity recovered from this contract's runtime bytecode. Best-effort reconstruction — confirm behaviour against on-chain state.

Decompilation outputBNB Chain · 0x95105396…b95a2cda19.4 KB177.0 s
Share
4,061 lines · Click a variable or keyword to highlight its references · Click a line number to copy its link; Shift-click to copy a block link
//decompiled by exvvul decompiler tool [email protected] https://x.com/exvulsec// Decompilation incomplete: symbolic execution reached a configured deadline for 3 of 78 entry points (170000 ms contract budget): 23b872dd, a9059cbb, badb97ff// SPDX-License-Identifier: MITpragma solidity >=0.8.0;contract DesolexContract {    uint256 public constant unresolved_f49299fe = 52261702376097360862154003748514697171941330439285393152256494156937973534266;    uint256 public constant MAX_BUY_TAX_BPS = 9999;    uint256 public constant MAX_SELL_TAX_BPS = 9999;    uint256 public constant DEPLOYER_ROLE = 114100106342311476635364814244051082590300857716718569304437020515598435489868;    uint256 public constant MAX_SUPPLY = 200000000000000000000000000000;    uint256 public constant maxSupply = 200000000000000000000000000000;    uint256 public constant MINTER_ROLE = 71998914331801701415977457805802827292338598818749192222732755537001613711014;    uint256 public constant DEFAULT_ADMIN_ROLE = 0;    uint256 public constant unresolved_85009827 = 100035146498063539626601207147493933772628766161135011717567079523586544066066;    uint256 public constant RESCUER_ROLE = 93825980756236074994228488614968181426180110750941389835413659296573229736016;    uint256 public constant DEAD_ADDRESS = 57005;    uint8 public constant decimals = 18;    uint256 public constant MAX_PAUSE_DURATION = 604800;        uint256 public pausedAt; // STORAGE[0x0]    bool stor_1; // STORAGE[0x1]    address public pendingDeployer; // STORAGE[0x2]    address stor_3; // STORAGE[0x3]    address public treasury; // STORAGE[0x31]    address stor_32; // STORAGE[0x32]    address stor_33; // STORAGE[0x33]    mapping(address => bool) public isSellSink; // STORAGE[0x34] // DESOLEX_STORAGE_CONFLICT_RESOLVED: mapping key 0: address [VerifiedAbi] vs uint256 [ResolvedAbi] (selected address)    mapping(address => bool) public isTaxExempt; // STORAGE[0x35] // DESOLEX_STORAGE_CONFLICT_RESOLVED: mapping key 0: address [ResolvedAbi] vs uint256 [ResolvedAbi] (selected address) | mapping key 0: address [VerifiedAbi] vs uint256 [ResolvedAbi] (selected address)    uint256 stor_36; // STORAGE[0x36]    uint256 stor_37; // STORAGE[0x37]    address public lpPair; // STORAGE[0x38]    bytes public unresolved_a0cde4bc; // STORAGE[0x39]    uint256 stor_3a; // STORAGE[0x3a]    bytes32 stor_3b; // STORAGE[0x3b] // DESOLEX_RAW_STORAGE: whole slot: uint16 [ArithmeticUse] vs uint256 [ArithmeticUse] (ambiguous)    address public coreContract; // STORAGE[0x3c]    address stor_3d; // STORAGE[0x3d]    bool stor_3e; // STORAGE[0x3e]    mapping(address => bool) mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943; // STORAGE[0x2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943]    address stor_360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; // STORAGE[0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc]    mapping(address => bool) mapping_4da8a1b1ef30f1fd88a8e1c233b1bfb80c3644052b98cefed86e7b79ef2f613c; // STORAGE[0x4da8a1b1ef30f1fd88a8e1c233b1bfb80c3644052b98cefed86e7b79ef2f613c]    mapping(address => mapping(address => uint256)) public allowance; // STORAGE[0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01]    uint256 stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03; // STORAGE[0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03]    uint256 stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04; // STORAGE[0x52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04]    bytes32 stor_842397100357c7bc9e13c9e286c8970fd4253dcc8e63c78c74e0f9bb8b96fef4; // STORAGE[0x842397100357c7bc9e13c9e286c8970fd4253dcc8e63c78c74e0f9bb8b96fef4]    mapping(address => bool) mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e; // STORAGE[0x8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e]    mapping(address => bool) mapping_9469a29198efc966024e165efb801c8f2366b78a1c73841aee561d08e7eaddce; // STORAGE[0x9469a29198efc966024e165efb801c8f2366b78a1c73841aee561d08e7eaddce]    mapping(address => bool) mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d; // STORAGE[0xb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d]    bool stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00; // STORAGE[0xf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00]    mapping(bytes32 => bytes32) mapping_expr_ak;    mapping(address => mapping(address => address)) mapping_expr_ba;    mapping(bytes32 => bytes32) mapping_expr_br;    mapping(bytes32 => bytes32) mapping_expr_by;    mapping(bytes32 => mapping(bytes32 => bytes32)) mapping_expr_r; // DESOLEX_RAW_STORAGE: mapping key 0: address [VerifiedAbi] vs bytes32 [VerifiedAbi] (ambiguous) | mapping value 1: bool [VerifiedAbi] vs uint256 [VerifiedAbi] (ambiguous)    uint256 stor_expr_ah;    bytes32 stor_expr_bg;    uint256 stor_expr_bi;    bytes32 stor_expr_bj;    uint256 stor_expr_bl;    bytes32 stor_expr_l;    uint256 stor_expr_m;    bytes32 stor_expr_o;    uint256 stor_expr_p;    bytes32 stor_expr_q;        error EnforcedPause();    event SellTaxCollected(address indexed, uint256, uint256, uint256, uint256);    event Initialized(uint64);    event DeployerTransferProposed(address indexed, address indexed);    error CustomError_8cc69387();    error UUPSUnauthorizedCallContext();    error UUPSUnsupportedProxiableUUID(bytes32);    event CoreContractUpdated(address indexed);    event ERC20Rescued(address indexed, address indexed, uint256);    event Approval(address indexed, address indexed, uint256);    event RoleGranted(bytes32 indexed, address indexed, address indexed);    event Event_e7871003(uint256);    error SafeERC20FailedOperation(address);    event Event_11c18b58(uint256);    error ERC20InvalidApprover(address);    event Paused(address);    event Event_478d0e7c(uint256 indexed);    event Event_42caf8a6(uint256 indexed);    event Transfer(address indexed, address indexed, uint256);    event Event_28b7d6fc(uint256, uint256, uint256, uint256, uint256);    error ProtocolToken__ZeroAddress();    event BuyTaxCollected(address indexed, uint256, uint256, uint256, uint256);    error CustomError_3af5c920();    error CustomError_9e445b7f();    event NativeRescued(address indexed, uint256);    event Event_ee44f578(uint256, uint256, uint256);    event Event_cf4eb7df(uint256 indexed);    event RoleRevoked(bytes32 indexed, address indexed, address indexed);    error NotInitializing();    error CustomError_5e64e888();    event TokenInfoUpdated(string, string);    error CustomError_b2e2fd62();    error AddressEmptyCode(address);    error ERC20InvalidReceiver(address);    error ERC20InsufficientBalance(address, uint256, uint256);    error ERC1967InvalidImplementation(address);    event Event_81a3ab3d(uint256 indexed);    error AccessControlBadConfirmation();    event Minted(address indexed, uint256, bytes32);    error FailedCall();    error CustomError_1e5e54be();    event Event_8dbcc4ec(address indexed, address indexed);    error AccessControlUnauthorizedAccount(address, bytes32);    error ERC20InvalidSender(address);    error ExpectedPause();    event Upgraded(address indexed);    error CustomError_ab65b5e2();    error CustomError_b622b21e();    error ERC20InvalidSpender(address);    event Unpaused(address);    error ERC1967NonPayable();    function _desolexPanic(uint256 code) private pure {        assembly ("memory-safe") {            mstore(0x00, shl(224, 0x4e487b71))            mstore(0x04, code)            revert(0x00, 0x24)        }    }    fallback() external {        // Synthetic compatibility routes preserve original selectors for unresolved names.        if ((msg.data.length >= 4) && (msg.sig == 0x1d4ba288)) {            // Route to Unknown_1d4ba288(bool) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x95d3659f));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x4287474f)) {            // Route to Unknown_4287474f() after replacing only msg.sig.            __desolexSelectorShim(uint32(0x276cc8e4));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x6b020446)) {            // Route to Unknown_6b020446(uint16,uint16,uint16) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x32051503));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x78d6fc08)) {            // Route to Unknown_78d6fc08() after replacing only msg.sig.            __desolexSelectorShim(uint32(0x94f31f0b));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x79ac8b3e)) {            // Route to Unknown_79ac8b3e() after replacing only msg.sig.            __desolexSelectorShim(uint32(0x5be5a8b5));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x816896c5)) {            // Route to Unknown_816896c5() after replacing only msg.sig.            __desolexSelectorShim(uint32(0x0c8e9afc));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0x8ce838b4)) {            // Route to Unknown_8ce838b4(bool,uint256,uint16,uint16,uint16) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x4cfde519));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0xaabc78a4)) {            // Route to Unknown_aabc78a4(uint16) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x8471530f));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0xb16e6a29)) {            // Route to Unknown_b16e6a29(bool) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x01d4cc51));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0xbe70168e)) {            // Route to Unknown_be70168e(bool) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x74243ba9));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0xf11caba0)) {            // Route to Unknown_f11caba0(uint16) after replacing only msg.sig.            __desolexSelectorShim(uint32(0xa0f5cec5));            return;        }        if ((msg.data.length >= 4) && (msg.sig == 0xf71e650b)) {            // Route to Unknown_f71e650b(address) after replacing only msg.sig.            __desolexSelectorShim(uint32(0x0ac0e6db));            return;        }        revert();    }            function twapMaxAge() public view returns (uint32) {        return uint32(stor_3e >> 0xa0);    }        function Unknown_f71e650b(address arg0) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        stor_3e = arg0 | (0xffffffffffffffffffffffff0000000000000000000000000000000000000000 & stor_3e);    }        function setStakeVault(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        stor_3d = newAddress;        emit Event_81a3ab3d(stor_3d);    }        function Unknown_f11caba0(uint16 arg0) public {        require(arg0 == (arg0 & 0xffff));        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(uint16(arg0) <= 0x270f, CustomError_1e5e54be());        stor_3d = (0xffff00000000000000000000000000000000000000000000 & (arg0 << 0xb0)) | (0xffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffffffff & stor_3d);        emit Event_e7871003(uint16(arg0));    }        function setTreasury(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(newAddress != address(0), ProtocolToken__ZeroAddress());        uint256 value0 = 0;        if (treasury != 0x0) {            isTaxExempt[treasury] = false;        } else {            flag0 = (treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0;        }        treasury = newAddress;        isTaxExempt[newAddress] = true;    }        function setTokenInfo(string memory arg0, string memory arg1) public {        require(((0x04 + arg0) + 0x1f) < msg.data.length);        require(((0x04 + arg0) + arg0 + 0x20) <= msg.data.length);        require(((0x04 + arg1) + 0x1f) < msg.data.length);        require(((0x04 + arg1) + arg1 + 0x20) <= msg.data.length);        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        if (arg0.length > 0xffffffffffffffff) _desolexPanic(65);        uint256 value0 = (0x7f) & (stor_36 >> 0x01);        if (stor_36 & (0x01)) {            value0 = stor_36 >> 0x01;        }        if (!((value0 < 0x20) != (stor_36 & 0x01))) _desolexPanic(34);        uint256 value3 = ((value0 + 0x1f) >> 0x05) + 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8;        if (value0 > 0x1f) {            uint256 value1 = 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8;            if (!(arg0.length < 0x20)) {                value1 = 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8 + ((arg0.length + 0x1f) >> 0x05);            }            uint256 value2 = value1;            while (true) {                if (value2 >= (((value0 + 0x1f) >> 0x05) + 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8)) {                    break;                }                stor_expr_l = 0;                value2 = 0x01 + value2;            }        } else {            value3 = value0;        }        if (0x01 == (arg0.length > 0x1f)) {            uint256 value4 = 0;            uint256 value5 = 0;            uint256 value6 = 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8;            while (true) {                if (!(value4 < (arg0.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)))) {                    break;                }                stor_expr_m = value5 + (arg0 + 0x20);                value4 = 0x20 + value4;                value5 = 0x20 + value5;                value6 = value6 + 0x01;            }            uint256 value7 = msg.data[0] >> 0xe0;            uint256 value8 = msg.data[0] >> 0xe0;            if ((arg0.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) < arg0) {                stor_expr_m = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (0xf8 & (arg0.length << 0x03)))) & ((arg0 + 0x20) + value5);            } else {                value7 = value5;                value8 = value6;            }            stor_36 = (arg0.length << 0x01) + 0x01;            if (arg1.length > 0xffffffffffffffff) _desolexPanic(65);            uint256 value9 = (0x7f) & (stor_37 >> 0x01);            if (stor_37 & (0x01)) {                value9 = stor_37 >> 0x01;            }            if (!((value9 < 0x20) != (stor_37 & 0x01))) _desolexPanic(34);            uint256 value12 = ((value9 + 0x1f) >> 0x05) + 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;            if (value9 > 0x1f) {                uint256 value10 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;                if (!(arg1.length < 0x20)) {                    value10 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae + ((arg1.length + 0x1f) >> 0x05);                }                uint256 value11 = value10;                while (true) {                    if (value11 >= (((value9 + 0x1f) >> 0x05) + 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae)) {                        break;                    }                    stor_expr_o = 0;                    value11 = 0x01 + value11;                }            } else {                value12 = value9;            }            if (!(0x01 == (arg1.length > 0x1f))) {                uint256 value13 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (arg1.length << 0x03)) & ((arg1 + 0x20) + 0)) | (arg1.length << 0x01);                if (arg1 == 0) {                    value13 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (arg1.length << 0x03)) & (0)) | (arg1.length << 0x01);                }                stor_37 = value13;                emit TokenInfoUpdated(0x40, ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg0.length) + (var_d + 0x40)) + 0x20) - var_d, (arg0), (arg1));            }            uint256 value14 = 0;            uint256 value15 = 0;            uint256 value16 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;            while (true) {                if (!(value14 < (arg1.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)))) {                    uint256 value17 = msg.data[0] >> 0xe0;                    uint256 value18 = msg.data[0] >> 0xe0;                    if ((arg1.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) < arg1) {                        stor_expr_p = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (0xf8 & (arg1.length << 0x03)))) & ((arg1 + 0x20) + value15);                    } else {                        value17 = value15;                        value18 = value16;                    }                    stor_37 = (arg1.length << 0x01) + 0x01;                    emit TokenInfoUpdated(0x40, ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg0.length) + (var_d + 0x40)) + 0x20) - var_d, (arg0), (arg1));                }                stor_expr_p = (arg1 + 0x20) + value15;                value14 = value14 + 0x20;                value15 = value15 + 0x20;                value16 = value16 + 0x01;            }        } else {            uint256 value19 = msg.data[0] >> 0xe0;            uint256 value20 = (arg0 + 0x20) + 0;            if (!(arg0)) {                value19 = 0;                value20 = 0;            }            stor_36 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (arg0.length << 0x03)) & value20) | (arg0.length << 0x01);            if (arg1.length > 0xffffffffffffffff) _desolexPanic(65);            uint256 value21 = (0x7f) & (stor_37 >> 0x01);            if (stor_37 & (0x01)) {                value21 = stor_37 >> 0x01;            }            if (!((value21 < 0x20) != (stor_37 & 0x01))) _desolexPanic(34);            uint256 value23 = ((value21 + 0x1f) >> 0x05) + 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;            if (value21 > 0x1f) {                uint256 value22 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;                if (!(arg1.length < 0x20)) {                    value22 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae + ((arg1.length + 0x1f) >> 0x05);                }                uint256 value11 = value10;                while (true) {                    if (value11 >= (((value9 + 0x1f) >> 0x05) + 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae)) {                        break;                    }                    stor_expr_o = 0;                    value11 = 0x01 + value11;                }            } else {                value23 = value21;            }            if (!(0x01 == (arg1.length > 0x1f))) {                uint256 value24 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (arg1.length << 0x03)) & ((arg1 + 0x20) + 0)) | (arg1.length << 0x01);                if (arg1 == 0) {                    value24 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (arg1.length << 0x03)) & (0)) | (arg1.length << 0x01);                }                stor_37 = value24;                emit TokenInfoUpdated(0x40, ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg0.length) + (var_d + 0x40)) + 0x20) - var_d, (arg0), (arg1));            }            uint256 value14 = 0;            uint256 value15 = 0;            uint256 value16 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;            while (true) {                if (!(value14 < (arg1.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)))) {                    uint256 value25 = msg.data[0] >> 0xe0;                    uint256 value26 = msg.data[0] >> 0xe0;                    if ((arg1.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) < arg1) {                        stor_expr_p = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (0xf8 & (arg1.length << 0x03)))) & ((arg1 + 0x20) + value15);                    } else {                        value25 = value15;                        value26 = value16;                    }                    stor_37 = (arg1.length << 0x01) + 0x01;                    emit TokenInfoUpdated(0x40, ((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg0.length) + (var_d + 0x40)) + 0x20) - var_d, (arg0), (arg1));                }                stor_expr_p = (arg1 + 0x20) + value15;                value14 = value14 + 0x20;                value15 = value15 + 0x20;                value16 = value16 + 0x01;            }        }    }        function revokeRole(bytes32 role, address account) public {        var_a = var_a;        var_a = var_a;        var_a = msg.sender;        require(bytes1(mapping_expr_r[var_a][msg.sender]), AccessControlUnauthorizedAccount());        var_a = var_a;        var_a = account;        if (!(0 == (bytes1(mapping_expr_r[var_a][account])))) {            var_a = role;            var_a = account;            mapping_expr_r[role][account] = mapping_expr_r[role][account] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00);            emit RoleRevoked(role, account, msg.sender);        }    }        function sellTaxBps() public returns (uint16) {        if (!(address(stor_3e))) {            uint256 var_b;            if (lpPair) {                (bool success0, bytes memory returnData0) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                require(success0);                uint256 value1 = 0;                uint256 value2 = var_b.length;                uint256 value3 = var_c;                if (success0) {                    uint256 value0 = returnData0.length;                    if (0x60 <= returnData0.length) {                        value0 = 0x60;                    }                    if (((var_b + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                    var_b = var_b + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_b + value0) - var_b) >= 0x60);                    require(var_d == (uint112(var_d)));                    require(var_e == (uint112(var_e)));                    require(uint32(var_f) == var_f);                } else {                    value1 = var_b;                    value2 = 0;                    value3 = 0;                }                if (!((value2 & 0xffffffffffffffffffffffffffff) != 0x0 && (value3 & 0xffffffffffffffffffffffffffff) == 0x0 || (value2 & 0xffffffffffffffffffffffffffff) == 0x0)) {                    (bool success1, bytes memory returnData1) = lpPair.token0(); // staticcall                    require(success1);                    uint256 value5 = 0;                    uint256 value6 = var_b.length;                    if (success1) {                        uint256 value4 = returnData1.length;                        if (0x20 <= returnData1.length) {                            value4 = 0x20;                        }                        if (((var_b + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                        var_b = var_b + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        require(((var_b + value4) - var_b) >= 0x20);                        require(var_b.length == (address(var_b.length)));                    } else {                        value5 = var_b;                        value6 = 0;                    }                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value6)) {                    } else {                    }                }            }            return uint16(stor_3b >> 0x20);        }        uint256 value7 = uint32(stor_3e >> 0xa0);        if (!(uint32(stor_3e >> 0xa0))) {            value7 = 0x0e10;        }        (bool success2, bytes memory returnData2) = address(stor_3e).Unknown_0095eb4a(uint32(value7)); // staticcall        require(success2);        uint256 value8 = 0;        uint256 value9;        if (success2) {            uint256 value33 = var_b.length;            if (0x20 > returnData2.length) {                if (((var_b + ((returnData2.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((returnData2.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                var_b = var_b + ((returnData2.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                require(((var_b + returnData2.length) - var_b) >= 0x20);                require(var_b.length == var_b.length);            } else {                if (((var_b + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                var_b = var_b + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                require(!(((var_b + 0x20) - var_b) < 0x20));                require(var_i == var_i);                value33 = var_j;            }            value9 = value33;        } else {            value8 = var_b;            value9 = 0;        }        uint256 value32;        if (value9 == 0x0) {            if (lpPair) {                (bool success3, bytes memory returnData3) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                require(success3);                uint256 value11 = 0;                uint256 value12 = var_b.length;                uint256 value13 = var_c;                if (success3) {                    uint256 value10 = returnData3.length;                    if (0x60 <= returnData3.length) {                        value10 = 0x60;                    }                    if (((var_b + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                    var_b = var_b + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_b + value10) - var_b) >= 0x60);                    require(var_d == (uint112(var_d)));                    require(var_e == (uint112(var_e)));                    require(uint32(var_f) == var_f);                } else {                    value11 = var_b;                    value12 = 0;                    value13 = 0;                }                if (!((value12 & 0xffffffffffffffffffffffffffff) != 0x0 && (value13 & 0xffffffffffffffffffffffffffff) == 0x0 || (value12 & 0xffffffffffffffffffffffffffff) == 0x0)) {                    (bool success4, bytes memory returnData4) = lpPair.token0(); // staticcall                    require(success4);                    uint256 value15 = 0;                    uint256 value16 = var_b.length;                    if (success4) {                        uint256 value14 = returnData4.length;                        if (0x20 <= returnData4.length) {                            value14 = 0x20;                        }                        if (((var_b + ((value14 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value14 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                        var_b = var_b + ((value14 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        require(((var_b + value14) - var_b) >= 0x20);                        require(var_b.length == (address(var_b.length)));                    } else {                        value15 = var_b;                        value16 = 0;                    }                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value16)) {                    } else {                    }                }            }            return uint16(stor_3b >> 0x20);        } else {            (bool success5, bytes memory returnData5) = address(stor_3e).consult(0x0de0b6b3a7640000); // staticcall            require(success5);            value32 = var_b.length;            if (success5) {                uint256 value17 = returnData5.length;                if (0x20 <= returnData5.length) {                    value17 = 0x20;                }                if (((var_b + ((value17 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value17 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                var_b = var_b + ((value17 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                require(((var_b + value17) - var_b) >= 0x20);                if (!(var_b.length != 0x0)) {                    if (lpPair) {                        (bool success6, bytes memory returnData6) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                        require(success6);                        uint256 value19 = 0;                        uint256 value20 = var_b.length;                        uint256 value21 = var_c;                        if (success6) {                            uint256 value18 = returnData6.length;                            if (0x60 <= returnData6.length) {                                value18 = 0x60;                            }                            if (((var_b + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                            var_b = var_b + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            require(((var_b + value18) - var_b) >= 0x60);                            require(var_d == (uint112(var_d)));                            require(var_e == (uint112(var_e)));                            require(uint32(var_f) == var_f);                        } else {                            value19 = var_b;                            value20 = 0;                            value21 = 0;                        }                        if (!((value20 & 0xffffffffffffffffffffffffffff) != 0x0 && (value21 & 0xffffffffffffffffffffffffffff) == 0x0 || (value20 & 0xffffffffffffffffffffffffffff) == 0x0)) {                            (bool success7, bytes memory returnData7) = lpPair.token0(); // staticcall                            require(success7);                            uint256 value23 = 0;                            uint256 value24 = var_b.length;                            if (success7) {                                uint256 value22 = returnData7.length;                                if (0x20 <= returnData7.length) {                                    value22 = 0x20;                                }                                if (((var_b + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                                var_b = var_b + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                require(((var_b + value22) - var_b) >= 0x20);                                require(var_b.length == (address(var_b.length)));                            } else {                                value23 = var_b;                                value24 = 0;                            }                            if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value24)) {                            } else {                            }                        }                    }                    return uint16(stor_3b >> 0x20);                }            } else {                if (lpPair) {                    (bool success8, bytes memory returnData8) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                    require(success8);                    uint256 value26 = 0;                    uint256 value27 = var_b.length;                    uint256 value28 = var_c;                    if (success8) {                        uint256 value25 = returnData8.length;                        if (0x60 <= returnData8.length) {                            value25 = 0x60;                        }                        if (((var_b + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                        var_b = var_b + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        require(((var_b + value25) - var_b) >= 0x60);                        require(var_d == (uint112(var_d)));                        require(var_e == (uint112(var_e)));                        require(uint32(var_f) == var_f);                    } else {                        value26 = var_b;                        value27 = 0;                        value28 = 0;                    }                    if (!((value27 & 0xffffffffffffffffffffffffffff) != 0x0 && (value28 & 0xffffffffffffffffffffffffffff) == 0x0 || (value27 & 0xffffffffffffffffffffffffffff) == 0x0)) {                        (bool success9, bytes memory returnData9) = lpPair.token0(); // staticcall                        require(success9);                        uint256 value30 = 0;                        uint256 value31 = var_b.length;                        if (success9) {                            uint256 value29 = returnData9.length;                            if (0x20 <= returnData9.length) {                                value29 = 0x20;                            }                            if (((var_b + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_b + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_b)) _desolexPanic(65);                            var_b = var_b + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            require(((var_b + value29) - var_b) >= 0x20);                            require(var_b.length == (address(var_b.length)));                        } else {                            value30 = var_b;                            value31 = 0;                        }                        if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value31)) {                        } else {                        }                    }                }                return uint16(stor_3b >> 0x20);                value32 = 0;            }        }        if (value32 == 0x0) {            return uint16(stor_3b >> 0x20);        } else {            if (value32 < unresolved_a0cde4bc) {                return uint16(stor_3b);            } else {                if (stor_3a > value32) {                    return uint16(stor_3b >> 0x10);                } else {                    return uint16(stor_3b >> 0x20);                }            }        }    }        function setLiquidityGateway(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        uint256 value0 = 0x04;        if ((stor_3b >> 0x60) != 0x0) {            isTaxExempt[stor_3b >> 0x60] = false;        } else {            value0 = stor_3b >> 0x60;        }        stor_3b = (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000 & (newAddress << 0x60)) | (0xffffffffffffffffffffffff & stor_3b);        uint256 value1 = 0x04;        if (newAddress != address(0)) {            isTaxExempt[newAddress] = true;        } else {            value1 = 0x40;        }        emit Event_42caf8a6(newAddress);    }        function rescueNative(address arg0) public {        require(mapping_4da8a1b1ef30f1fd88a8e1c233b1bfb80c3644052b98cefed86e7b79ef2f613c[msg.sender], AccessControlUnauthorizedAccount());        require(address(this).balance != 0x0, CustomError_3af5c920());        (bool success0, bytes memory returnData0) = arg0.call{ value: address(this).balance }(""); // call        if (returnData0.length != 0x0) {            if (!(returnData0.length <= 0xffffffffffffffff)) _desolexPanic(65);            if (((var_c + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + returnData0.length))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + returnData0.length))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);        }        require(success0, CustomError_b2e2fd62());        emit NativeRescued(arg0, address(this).balance);    }        function setCoreContract(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        uint256 value0 = 0x04;        if (coreContract != 0x0) {            isTaxExempt[coreContract] = false;        } else {            value0 = coreContract;        }        coreContract = newAddress;        uint256 value1 = 0x04;        if (newAddress != address(0)) {            isTaxExempt[newAddress] = true;        } else {            value1 = 0x40;        }        emit CoreContractUpdated(newAddress);    }        function Unknown_be70168e(bool arg0) public view returns (bool) {        require(arg0 == (arg0 & 0xff));        return ((stor_1 >> (bytes1(arg0))) & (0x01)) == 0x01;    }        function adminBurn(uint256 arg0) public payable {        if (!(msg.value) && !((0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc + msg.data.length) < 0x20) && mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender]) {            require(msg.sender != address(0), ERC20InvalidSender(address(0)));            internal_3b8a(msg.sender, arg0);        }    }        function Unknown_b16e6a29(bool arg0) public {        require(arg0 == (arg0 & 0xff));        require(mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[msg.sender], AccessControlUnauthorizedAccount());        stor_1 = stor_1 & (~(0x01 << (bytes1(arg0))));        emit Event_478d0e7c(bytes1(arg0));    }        function UPGRADE_INTERFACE_VERSION() public pure returns (bytes memory) {        uint256 var_a;        if (((var_a + 0x40) > 0xffffffffffffffff) | ((var_a + 0x40) < var_a)) _desolexPanic(65);        uint256 value0 = 0;        while (true) {            var_a = var_a + 0x40;            if (value0 >= var_a.length) {                break;            }            value0 = 0x20 + value0;        }        return abi.encodePacked(0x20, var_a.length, var_i);    }        function Unknown_aabc78a4(uint16 arg0) public {        require(arg0 == (arg0 & 0xffff));        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(uint16(arg0) <= 0x270f, CustomError_1e5e54be());        stor_3d = (0xffff0000000000000000000000000000000000000000 & (arg0 << 0xa0)) | (0xffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff & stor_3d);        emit Event_11c18b58(uint16(arg0));    }        function transfer(address to, uint256 arg1) public view {    }        function confirmDeployerTransfer() public {        require(msg.sender == pendingDeployer, CustomError_b622b21e());        pendingDeployer = address(0);        stor_3 = address(0);        if (mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[address(stor_3)]) {            var_a = var_a;            var_a = stor_3;            mapping_expr_r[var_a][stor_3] = mapping_expr_r[var_a][stor_3] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00);            emit RoleRevoked(var_a, stor_3, msg.sender);        }        if (!mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[address(pendingDeployer)]) {            var_a = var_a;            var_a = pendingDeployer;            mapping_expr_r[var_a][pendingDeployer] = (mapping_expr_r[var_a][pendingDeployer] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;            var_a = var_a;            emit RoleGranted(var_a, pendingDeployer, msg.sender);        }        emit Event_8dbcc4ec(stor_3, pendingDeployer);    }        function setLpPair(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        lpPair = newAddress;    }        function setSellSink(address account, bool enabled) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(account != address(0), ProtocolToken__ZeroAddress());        isSellSink[account] = enabled;    }        function symbol() public view returns (string memory) {        uint256 value0 = (0x7f) & (stor_37 >> 0x01);        if (stor_37 & (0x01)) {            value0 = stor_37 >> 0x01;        }        if (!((value0 < 0x20) != (stor_37 & 0x01))) _desolexPanic(34);        if (0 == (stor_37 & (0x01))) {            uint256 var_c;            if (((var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);            var_c = var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            if (var_c.length == 0) {                uint256 value1 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                    value1 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                }                if (!((value1 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                } else {                    if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                        uint256 value3 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                        uint256 value2 = 0;                        while (true) {                            if (value2 >= value1) {                                break;                            }                            value3 = 0x01 + value3;                            value2 = 0x20 + value2;                        }                    } else {                        if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        uint256 value4 = 0;                        while (true) {                            var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            if (value4 >= var_c.length) {                                var_c = 0;                                return abi.encodePacked(0x20, var_c.length);                            }                            var_c = var_g;                            value4 = 0x20 + value4;                        }                    }                }            } else {                uint256 value4 = 0;                while (true) {                    if (value4 >= var_c.length) {                        return abi.encodePacked(0x20, var_c.length);                    }                    value4 = 0x20 + value4;                }            }        } else {            if (0x01 == (stor_37 & (0x01))) {                uint256 value6 = 0x42a7b7dd785cd69714a189dffb3fd7d7174edc9ece837694ce50f7078f7c31ae;                uint256 value5 = 0;                while (true) {                    if (value5 >= value0) {                        break;                    }                    value6 = value6 + 0x01;                    value5 = value5 + 0x20;                }                if (((var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                var_c = var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                if (var_c.length == 0) {                    uint256 value7 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                    if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                        value7 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                    }                    if (!((value7 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                    if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                    } else {                        if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                            uint256 value3 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                            uint256 value2 = 0;                            while (true) {                                if (value2 >= value1) {                                    break;                                }                                value3 = 0x01 + value3;                                value2 = 0x20 + value2;                            }                        } else {                            if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            uint256 value4 = 0;                            while (true) {                                var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                if (value4 >= var_c.length) {                                    var_c = 0;                                    return abi.encodePacked(0x20, var_c.length);                                }                                var_c = var_g;                                value4 = 0x20 + value4;                            }                        }                    }                } else {                    uint256 value4 = 0;                    while (true) {                        if (value4 >= var_c.length) {                            return abi.encodePacked(0x20, var_c.length);                        }                        value4 = 0x20 + value4;                    }                }            } else {                if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                if (var_c.length == 0) {                    uint256 value8 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                    if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                        value8 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                    }                    if (!((value8 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                    uint256 value12 = 0;                    uint256 value13 = var_c.length;                    uint256 value14 = var_c;                    uint256 value15 = var_c;                    uint256 value16 = var_c;                    if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                        if (((var_c + (((((var_c + (value8 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + (value8 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        var_c = var_c.length;                    } else {                        uint256 value9 = var_c;                        uint256 value10 = var_c;                        uint256 value11 = var_c;                        if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01))) {                            uint256 value3 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                            uint256 value2 = 0;                            while (true) {                                if (value2 >= value1) {                                    break;                                }                                value3 = 0x01 + value3;                                value2 = 0x20 + value2;                            }                            if (((var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            var_c = var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        } else {                            if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            value9 = var_c;                            value10 = var_c;                            value11 = var_c;                        }                        uint256 value4 = 0;                        while (true) {                            var_c = var_c.length;                            if (value4 >= var_c.length) {                                return abi.encodePacked(0x20, var_c.length, value0, 0x20, var_c.length, var_g);                            }                        }                        value12 = 0x20 + value4;                        value13 = var_c.length;                        value14 = value9;                        value15 = value10;                        value16 = value11;                    }                    uint256 value4 = 0;                    while (true) {                        if (value4 >= var_c.length) {                            return abi.encodePacked(0x20, var_c.length);                        }                        value4 = 0x20 + value4;                    }                } else {                    uint256 value4 = 0;                    while (true) {                        if (value4 >= var_c.length) {                            var_c = 0;                            return abi.encodePacked(0x20, var_c.length);                        }                        value4 = 0x20 + value4;                    }                }            }        }    }        function hasRole(bytes32 role, address account) public view returns (bool) {        var_a = var_a;        var_a = account;        return !(!(bytes1(mapping_expr_r[var_a][account])));    }        function initialize(address arg0, string memory arg1, string memory arg2) public payable {        if (!(msg.value)) {            if ((0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc + msg.data.length) >= 0x60) {                if (arg0 == arg0) {                    if (arg1 <= 0xffffffffffffffff) {                        if (((0x04 + arg1) + 0x1f) < msg.data.length) {                            if (!(arg1 <= 0xffffffffffffffff)) _desolexPanic(65);                            uint256 var_a;                            if (((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg1))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg1))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_a)) _desolexPanic(65);                            var_a = var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg1))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            require(((0x04 + arg1) + 0x20) + arg1 <= msg.data.length);                            if (arg2 <= 0xffffffffffffffff) {                                if (((0x04 + arg2) + 0x1f) < msg.data.length) {                                    if (!(arg2 <= 0xffffffffffffffff)) _desolexPanic(65);                                    if (((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg2))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg2))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_a)) _desolexPanic(65);                                    var_a = var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + arg2))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                    require(((0x04 + arg2) + 0x20) + arg2 <= msg.data.length);                                    var_c = msg.data[36:36];                                    bool flag0 = !(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40));                                    if (uint64(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00)) {                                        flag0 = !(uint64(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00));                                    }                                    bool flag1 = address(this).code.length == 0x0;                                    if (uint64(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00) != 0x01) {                                        flag1 = (uint64(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00)) == 0x01;                                    }                                    uint256 value150 = 0;                                    if (!(!flag0 && !flag1)) {                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = 0x01 | (stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000));                                        uint256 value0 = 0;                                        if (!(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40))) {                                            stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = 0x010000000000000001 | (0xffffffffffffffffffffffffffffffffffffffffffffff000000000000000000 & stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00);                                        } else {                                            value0 = (stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00) ? 1 : 0;                                        }                                        if (bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40)) {                                            require(arg0 != address(0), CustomError_5e64e888());                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                            if (!mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[arg0]) {                                                var_f = 0;                                                var_f = arg0;                                                mapping_expr_ba[0][arg0] = (mapping_expr_ba[0][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                emit RoleGranted(0, arg0, msg.sender);                                                if (mapping_9469a29198efc966024e165efb801c8f2366b78a1c73841aee561d08e7eaddce[arg0]) {                                                    if (mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[arg0]) {                                                        if (!mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[arg0]) {                                                            var_f = var_f;                                                            var_f = arg0;                                                            mapping_expr_ba[var_f][arg0] = (mapping_expr_ba[var_f][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                            var_f = var_f;                                                            emit RoleGranted(var_f, arg0, msg.sender);                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value1 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value1 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value1 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value4 = ((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value1 > 0x1f) {                                                                uint256 value2 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value2 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value4 = value1;                                                            }                                                        }                                                    } else {                                                        var_f = 0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c;                                                        var_f = arg0;                                                        mapping_expr_ba[0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c][arg0] = (mapping_expr_ba[0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                        emit RoleGranted(0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c, arg0, msg.sender);                                                        if (mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[arg0]) {                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value5 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value5 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value5 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value7 = ((value5 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value5 > 0x1f) {                                                                uint256 value6 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value6 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value7 = value5;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value11 = 0;                                                                uint256 value12 = 0;                                                                uint256 value13 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value11 = var_a;                                                                    value12 = value9;                                                                    value13 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value14 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value14 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value14 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value17 = ((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value14 > 0x1f) {                                                                    uint256 value15 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value15 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value17 = value14;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value18 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value18 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value18;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value22 = 0;                                                                        uint256 value23 = 0;                                                                        uint256 value24 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value22 = var_a;                                                                            value23 = value20;                                                                            value24 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value25 = 0;                                                                uint256 value26 = 0;                                                                uint256 value27 = var_c;                                                                if (var_a.length == 0) {                                                                    value25 = var_a;                                                                    value26 = 0x20;                                                                    value27 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value27) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value28 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value28 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value28 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value30 = ((value28 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value28 > 0x1f) {                                                                    uint256 value29 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value29 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value30 = value28;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value31 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value31 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value31;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value32 = 0;                                                                        uint256 value33 = 0;                                                                        uint256 value34 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value32 = var_a;                                                                            value33 = value20;                                                                            value34 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        } else {                                                            var_f = var_f;                                                            var_f = arg0;                                                            mapping_expr_ba[var_f][arg0] = (mapping_expr_ba[var_f][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                            var_f = var_f;                                                            emit RoleGranted(var_f, arg0, msg.sender);                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value35 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value35 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value35 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value37 = ((value35 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value35 > 0x1f) {                                                                uint256 value36 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value36 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value37 = value35;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value38 = 0;                                                                uint256 value39 = 0;                                                                uint256 value40 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value38 = var_a;                                                                    value39 = value9;                                                                    value40 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value41 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value41 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value41 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value43 = ((value41 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value41 > 0x1f) {                                                                    uint256 value42 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value42 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value43 = value41;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value44 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value44 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value44;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value45 = 0;                                                                        uint256 value46 = 0;                                                                        uint256 value47 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value45 = var_a;                                                                            value46 = value20;                                                                            value47 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value48 = 0;                                                                uint256 value49 = 0;                                                                uint256 value50 = var_c;                                                                if (var_a.length == 0) {                                                                    value48 = var_a;                                                                    value49 = 0x20;                                                                    value50 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value50) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value51 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value51 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value51 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value53 = ((value51 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value51 > 0x1f) {                                                                    uint256 value52 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value52 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value53 = value51;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value54 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value54 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value54;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value55 = 0;                                                                        uint256 value56 = 0;                                                                        uint256 value57 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value55 = var_a;                                                                            value56 = value20;                                                                            value57 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        }                                                    }                                                } else {                                                    var_f = 0xa615a8afb6fffcb8c6809ac0997b5c9c12b8cc97651150f14c8f6203168cff4c;                                                    var_f = arg0;                                                    mapping_expr_ba[0xa615a8afb6fffcb8c6809ac0997b5c9c12b8cc97651150f14c8f6203168cff4c][arg0] = (mapping_expr_ba[0xa615a8afb6fffcb8c6809ac0997b5c9c12b8cc97651150f14c8f6203168cff4c][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                    emit RoleGranted(0xa615a8afb6fffcb8c6809ac0997b5c9c12b8cc97651150f14c8f6203168cff4c, arg0, msg.sender);                                                    if (mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[arg0]) {                                                        if (mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[arg0]) {                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value58 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value58 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value58 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value60 = ((value58 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value58 > 0x1f) {                                                                uint256 value59 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value59 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value60 = value58;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value61 = 0;                                                                uint256 value62 = 0;                                                                uint256 value63 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value61 = var_a;                                                                    value62 = value9;                                                                    value63 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value64 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value64 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value64 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value66 = ((value64 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value64 > 0x1f) {                                                                    uint256 value65 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value65 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value66 = value64;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value67 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value67 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value67;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value68 = 0;                                                                        uint256 value69 = 0;                                                                        uint256 value70 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value68 = var_a;                                                                            value69 = value20;                                                                            value70 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value71 = 0;                                                                uint256 value72 = 0;                                                                uint256 value73 = var_c;                                                                if (var_a.length == 0) {                                                                    value71 = var_a;                                                                    value72 = 0x20;                                                                    value73 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value73) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value74 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value74 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value74 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value76 = ((value74 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value74 > 0x1f) {                                                                    uint256 value75 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value75 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value76 = value74;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value77 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value77 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value77;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value78 = 0;                                                                        uint256 value79 = 0;                                                                        uint256 value80 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value78 = var_a;                                                                            value79 = value20;                                                                            value80 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        } else {                                                            var_f = var_f;                                                            var_f = arg0;                                                            mapping_expr_ba[var_f][arg0] = (mapping_expr_ba[var_f][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                            var_f = var_f;                                                            emit RoleGranted(var_f, arg0, msg.sender);                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value81 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value81 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value81 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value83 = ((value81 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value81 > 0x1f) {                                                                uint256 value82 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value82 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value83 = value81;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value84 = 0;                                                                uint256 value85 = 0;                                                                uint256 value86 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value84 = var_a;                                                                    value85 = value9;                                                                    value86 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value87 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value87 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value87 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value89 = ((value87 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value87 > 0x1f) {                                                                    uint256 value88 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value88 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value89 = value87;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value90 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value90 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value90;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value91 = 0;                                                                        uint256 value92 = 0;                                                                        uint256 value93 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value91 = var_a;                                                                            value92 = value20;                                                                            value93 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value94 = 0;                                                                uint256 value95 = 0;                                                                uint256 value96 = var_c;                                                                if (var_a.length == 0) {                                                                    value94 = var_a;                                                                    value95 = 0x20;                                                                    value96 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value96) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value97 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value97 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value97 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value99 = ((value97 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value97 > 0x1f) {                                                                    uint256 value98 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value98 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value99 = value97;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value100 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value100 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value100;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value101 = 0;                                                                        uint256 value102 = 0;                                                                        uint256 value103 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value101 = var_a;                                                                            value102 = value20;                                                                            value103 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        }                                                    } else {                                                        var_f = 0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c;                                                        var_f = arg0;                                                        mapping_expr_ba[0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c][arg0] = (mapping_expr_ba[0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                        emit RoleGranted(0x539440820030c4994db4e31b6b800deafd503688728f932addfe7a410515c14c, arg0, msg.sender);                                                        if (mapping_8f7e9a8734279607aeaac474f24949ddc99eae25c0da72edcf5ad21022be2c9e[arg0]) {                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value104 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value104 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value104 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value106 = ((value104 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value104 > 0x1f) {                                                                uint256 value105 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value105 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value106 = value104;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value107 = 0;                                                                uint256 value108 = 0;                                                                uint256 value109 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value107 = var_a;                                                                    value108 = value9;                                                                    value109 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value110 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value110 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value110 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value112 = ((value110 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value110 > 0x1f) {                                                                    uint256 value111 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value111 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value112 = value110;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value113 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value113 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value113;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value114 = 0;                                                                        uint256 value115 = 0;                                                                        uint256 value116 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value114 = var_a;                                                                            value115 = value20;                                                                            value116 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value117 = 0;                                                                uint256 value118 = 0;                                                                uint256 value119 = var_c;                                                                if (var_a.length == 0) {                                                                    value117 = var_a;                                                                    value118 = 0x20;                                                                    value119 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value119) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value120 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value120 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value120 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value122 = ((value120 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value120 > 0x1f) {                                                                    uint256 value121 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value121 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value122 = value120;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value123 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value123 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value123;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value124 = 0;                                                                        uint256 value125 = 0;                                                                        uint256 value126 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value124 = var_a;                                                                            value125 = value20;                                                                            value126 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        } else {                                                            var_f = var_f;                                                            var_f = arg0;                                                            mapping_expr_ba[var_f][arg0] = (mapping_expr_ba[var_f][arg0] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;                                                            var_f = var_f;                                                            emit RoleGranted(var_f, arg0, msg.sender);                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            require(bytes1(stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 >> 0x40), NotInitializing());                                                            if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                            uint256 value127 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                                                            if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                                                                value127 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                                                            }                                                            if (!((value127 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                                                            uint256 value129 = ((value127 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                            if (value127 > 0x1f) {                                                                uint256 value128 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                if (var_a.length >= 0x20) {                                                                    value128 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0 + ((var_a.length + 0x1f) >> 0x05);                                                                }                                                                uint256 value3 = value2;                                                                while (true) {                                                                    if (value3 >= (((value1 + 0x1f) >> 0x05) + 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0)) {                                                                        break;                                                                    }                                                                    stor_expr_bg = 0;                                                                    value3 = value3 + 0x01;                                                                }                                                            } else {                                                                value129 = value127;                                                            }                                                            if (0x01 == (var_a.length > 0x1f)) {                                                                uint256 value8 = 0;                                                                uint256 value9 = 0x20;                                                                uint256 value10 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                                                                while (true) {                                                                    if (value8 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        break;                                                                    }                                                                    stor_expr_bi = var_h;                                                                    value8 = 0x20 + value8;                                                                    value9 = 0x20 + value9;                                                                    value10 = value10 + 0x01;                                                                }                                                                uint256 value130 = 0;                                                                uint256 value131 = 0;                                                                uint256 value132 = 0;                                                                if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                    stor_expr_bi = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_i;                                                                } else {                                                                    value130 = var_a;                                                                    value131 = value9;                                                                    value132 = value10;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (var_a.length << 0x01) + 0x01;                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value133 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value133 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value133 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value135 = ((value133 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value133 > 0x1f) {                                                                    uint256 value134 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value134 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value135 = value133;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value136 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value136 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value136;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value137 = 0;                                                                        uint256 value138 = 0;                                                                        uint256 value139 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value137 = var_a;                                                                            value138 = value20;                                                                            value139 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            } else {                                                                uint256 value140 = 0;                                                                uint256 value141 = 0;                                                                uint256 value142 = var_c;                                                                if (var_a.length == 0) {                                                                    value140 = var_a;                                                                    value141 = 0x20;                                                                    value142 = 0;                                                                }                                                                stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & value142) | (var_a.length << 0x01);                                                                if (!(var_a.length <= 0xffffffffffffffff)) _desolexPanic(65);                                                                uint256 value143 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01);                                                                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & (0x01)) {                                                                    value143 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 >> 0x01;                                                                }                                                                if (!((value143 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 & 0x01))) _desolexPanic(34);                                                                uint256 value145 = ((value143 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                if (value143 > 0x1f) {                                                                    uint256 value144 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                    if (var_a.length >= 0x20) {                                                                        value144 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa + ((var_a.length + 0x1f) >> 0x05);                                                                    }                                                                    uint256 value16 = value15;                                                                    while (true) {                                                                        if (value16 >= (((value14 + 0x1f) >> 0x05) + 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa)) {                                                                            break;                                                                        }                                                                        stor_expr_bj = 0;                                                                        value16 = value16 + 0x01;                                                                    }                                                                } else {                                                                    value145 = value143;                                                                }                                                                if (0x01 != (var_a.length > 0x1f)) {                                                                    uint256 value146 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & var_j) | (var_a.length << 0x01);                                                                    if (var_a.length == 0) {                                                                        value146 = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> (var_a.length << 0x03)) & (0)) | (var_a.length << 0x01);                                                                    }                                                                    stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = value146;                                                                    isTaxExempt[0] = true;                                                                    isTaxExempt[0xdead] = true;                                                                    unresolved_a0cde4bc = 0x09184e72a000;                                                                    stor_3a = 0x038d7ea4c68000;                                                                    stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                    stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                    emit Initialized(0x01);                                                                }                                                                uint256 value19 = 0;                                                                uint256 value20 = 0x20;                                                                uint256 value21 = 0x46a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aa;                                                                while (true) {                                                                    if (value19 >= (var_a.length & 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0)) {                                                                        uint256 value147 = 0;                                                                        uint256 value148 = 0;                                                                        uint256 value149 = 0;                                                                        if (var_a.length > (var_a.length & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) {                                                                            stor_expr_bl = (~(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff >> ((var_a.length << 0x03) & (0xf8)))) & var_k;                                                                        } else {                                                                            value147 = var_a;                                                                            value148 = value20;                                                                            value149 = value21;                                                                        }                                                                        stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04 = (var_a.length << 0x01) + 0x01;                                                                        isTaxExempt[0] = true;                                                                        isTaxExempt[0xdead] = true;                                                                        unresolved_a0cde4bc = 0x09184e72a000;                                                                        stor_3a = 0x038d7ea4c68000;                                                                        stor_3b = (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000000000000000)) | 0x09c409c4138803e81b582328;                                                                        stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 = stor_f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00 & (0xffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff);                                                                        emit Initialized(0x01);                                                                    }                                                                    stor_expr_bl = var_l;                                                                    value19 = 0x20 + value19;                                                                    value20 = 0x20 + value20;                                                                    value21 = value21 + 0x01;                                                                }                                                            }                                                        }                                                    }                                                }                                            }                                        }                                    }                                }                            }                        }                    }                }            }        }    }        function Unknown_8ce838b4(bool arg0, uint256 arg1, uint16 arg2, uint16 arg3, uint16 arg4) public {        require(arg2 == (arg2 & 0xffff));        require(arg3 == (arg3 & 0xffff));        require(arg4 == (arg4 & 0xffff));        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(!(arg0 && arg1 <= arg0 || !arg0), CustomError_9e445b7f());        uint256 value0 = msg.data[0] >> 0xe0;        bool flag1 = 0x270f < (arg3 & 0xffff);        if (uint16(arg2) > 0x270f) {            value0 = uint16(arg3);            flag1 = (arg2 & 0xffff) > 0x270f;        }        uint256 value1 = msg.data[0] >> 0xe0;        uint256 value2 = msg.data[0] >> 0xe0;        if (flag1) {            value1 = uint16(arg4);            value2 = 0x270f;        }        require(!(!flag1 && (arg4 & 0xffff) > 0x270f || flag1), CustomError_1e5e54be());        unresolved_a0cde4bc = arg0;        stor_3a = arg1;        stor_3b = ((arg3 << 0x10) & (0xffff0000) | (0xffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000 & stor_3b | (arg2 & (0xffff)))) | ((arg4 << 0x20) & (0xffff00000000));        emit Event_28b7d6fc(arg0, arg1, uint16(arg2), uint16(arg3), uint16(arg4));    }        function pause() public {        require(mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[msg.sender], AccessControlUnauthorizedAccount());        pausedAt = block.timestamp;        require(!(bytes1(stor_expr_ah)), EnforcedPause());        stor_expr_ah = 0x01 | (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 & stor_expr_ah);        emit Paused(msg.sender);    }        function Unknown_816896c5() public view returns (address) {        return address(stor_3e);    }        function Unknown_79ac8b3e() public view returns (bytes memory) {        return abi.encodePacked(uint16(stor_3b >> 0x30), uint16(stor_3b >> 0x40), uint16(stor_3b >> 0x50));    }        function Unknown_78d6fc08() public view returns (uint16) {        return uint16(stor_3d >> 0xa0);    }        function currentTokenPrice() public returns (uint256) {        if (address(stor_3e) != address(0)) {            uint256 value0 = uint32(stor_3e >> 0xa0);            if (!(uint32(stor_3e >> 0xa0))) {                value0 = 0x0e10;            }            (bool success0, bytes memory returnData0) = address(stor_3e).Unknown_0095eb4a(uint32(value0)); // staticcall            require(success0);            uint256 value1 = 0;            uint256 var_c;            uint256 value2 = var_c.length;            if (success0) {                if (0x20 > returnData0.length) {                    if (((var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                    var_c = var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_c + returnData0.length) - var_c) >= 0x20);                } else {                    if (((var_c + 0x20) > 0xffffffffffffffff) | ((var_c + 0x20) < var_c)) _desolexPanic(65);                    var_c = var_c + 0x20;                    require(((var_c + 0x20) - var_c) >= 0x20);                }                require(var_c.length == var_c.length);            } else {                value1 = var_c;                value2 = 0;            }            if (value2 != 0x0) {                (bool success3, bytes memory returnData3) = address(stor_3e).consult(0x0de0b6b3a7640000); // staticcall                require(success3);                if (success3) {                    uint256 value10 = returnData3.length;                    if (0x20 <= returnData3.length) {                        value10 = 0x20;                    }                    if (((var_c + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                    var_c = var_c + ((value10 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_c + value10) - var_c) >= 0x20);                    if (var_c.length != 0x0) {                        return var_c.length;                    } else {                        if (!(lpPair)) {                            return 0;                        } else {                            (bool success4, bytes memory returnData4) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                            require(success4);                            uint256 value12 = 0;                            uint256 value13 = var_c.length;                            uint256 value14 = var_e;                            if (success4) {                                uint256 value11 = returnData4.length;                                if (0x60 <= returnData4.length) {                                    value11 = 0x60;                                }                                if (((var_c + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                                var_c = var_c + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                require(((var_c + value11) - var_c) >= 0x60);                                require(var_c.length == (uint112(var_c.length)));                                require(var_e == (uint112(var_e)));                                require(uint32(var_f) == var_f);                            } else {                                value12 = var_c;                                value13 = 0;                                value14 = 0;                            }                            if ((((value13 & 0xffffffffffffffffffffffffffff) != 0x0) && ((value14 & 0xffffffffffffffffffffffffffff) == 0x0)) || ((value13 & 0xffffffffffffffffffffffffffff) == 0x0)) {                                return 0;                            } else {                                (bool success5, bytes memory returnData5) = lpPair.token0(); // staticcall                                require(success5);                                uint256 value16 = 0;                                uint256 value17 = var_c.length;                                if (success5) {                                    uint256 value15 = returnData5.length;                                    if (0x20 <= returnData5.length) {                                        value15 = 0x20;                                    }                                    if (((var_c + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                                    var_c = var_c + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                    require(((var_c + value15) - var_c) >= 0x20);                                    require(var_c.length == (address(var_c.length)));                                } else {                                    value16 = var_c;                                    value17 = 0;                                }                                if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value17)) {                                    return (uint112(value13) * 0x0de0b6b3a7640000) / (uint112(value14));                                } else {                                    return (uint112(value14) * 0x0de0b6b3a7640000) / (uint112(value13));                                }                            }                        }                    }                } else {                    if (!(lpPair)) {                        return 0;                    } else {                        (bool success6, bytes memory returnData6) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                        require(success6);                        uint256 value19 = 0;                        uint256 value20 = var_c.length;                        uint256 value21 = var_e;                        if (success6) {                            uint256 value18 = returnData6.length;                            if (0x60 <= returnData6.length) {                                value18 = 0x60;                            }                            if (((var_c + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            var_c = var_c + ((value18 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            require(((var_c + value18) - var_c) >= 0x60);                            require(var_c.length == (uint112(var_c.length)));                            require(var_e == (uint112(var_e)));                            require(uint32(var_f) == var_f);                        } else {                            value19 = var_c;                            value20 = 0;                            value21 = 0;                        }                        if ((((value20 & 0xffffffffffffffffffffffffffff) != 0x0) && ((value21 & 0xffffffffffffffffffffffffffff) == 0x0)) || ((value20 & 0xffffffffffffffffffffffffffff) == 0x0)) {                            return 0;                        } else {                            (bool success7, bytes memory returnData7) = lpPair.token0(); // staticcall                            require(success7);                            uint256 value23 = 0;                            uint256 value24 = var_c.length;                            if (success7) {                                uint256 value22 = returnData7.length;                                if (0x20 <= returnData7.length) {                                    value22 = 0x20;                                }                                if (((var_c + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                                var_c = var_c + ((value22 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                require(((var_c + value22) - var_c) >= 0x20);                                require(var_c.length == (address(var_c.length)));                            } else {                                value23 = var_c;                                value24 = 0;                            }                            if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value24)) {                                return (uint112(value20) * 0x0de0b6b3a7640000) / (uint112(value21));                            } else {                                return (uint112(value21) * 0x0de0b6b3a7640000) / (uint112(value20));                            }                        }                    }                }            } else if (lpPair) {                (bool success1, bytes memory returnData1) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                require(success1);                uint256 value4 = 0;                uint256 value5 = var_c.length;                uint256 value6 = var_e;                if (success1) {                    uint256 value3 = returnData1.length;                    if (0x60 <= returnData1.length) {                        value3 = 0x60;                    }                    if (((var_c + ((value3 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value3 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                    var_c = var_c + ((value3 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_c + value3) - var_c) >= 0x60);                    require(var_c.length == (uint112(var_c.length)));                    require(var_e == (uint112(var_e)));                    require(uint32(var_f) == var_f);                } else {                    value4 = var_c;                    value5 = 0;                    value6 = 0;                }                if ((((value5 & 0xffffffffffffffffffffffffffff) != 0x0) && ((value6 & 0xffffffffffffffffffffffffffff) == 0x0)) || ((value5 & 0xffffffffffffffffffffffffffff) == 0x0)) {                    return 0;                } else {                    (bool success2, bytes memory returnData2) = lpPair.token0(); // staticcall                    require(success2);                    uint256 value8 = 0;                    uint256 value9 = var_c.length;                    if (success2) {                        uint256 value7 = returnData2.length;                        if (0x20 <= returnData2.length) {                            value7 = 0x20;                        }                        if (((var_c + ((value7 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value7 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        var_c = var_c + ((value7 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        require(((var_c + value7) - var_c) >= 0x20);                        require(var_c.length == (address(var_c.length)));                    } else {                        value8 = var_c;                        value9 = 0;                    }                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value9)) {                        return (uint112(value5) * 0x0de0b6b3a7640000) / (uint112(value6));                    } else {                        return (uint112(value6) * 0x0de0b6b3a7640000) / (uint112(value5));                    }                }            } else {                return 0;            }        } else {            if (!(lpPair)) {                return 0;            } else {                (bool success8, bytes memory returnData8) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                require(success8);                uint256 value26 = 0;                uint256 value27 = var_c.length;                uint256 value28 = var_e;                if (success8) {                    uint256 value25 = returnData8.length;                    if (0x60 <= returnData8.length) {                        value25 = 0x60;                    }                    if (((var_c + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                    var_c = var_c + ((value25 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_c + value25) - var_c) >= 0x60);                    require(var_c.length == (uint112(var_c.length)));                    require(var_e == (uint112(var_e)));                    require(uint32(var_f) == var_f);                } else {                    value26 = var_c;                    value27 = 0;                    value28 = 0;                }                if ((((value27 & 0xffffffffffffffffffffffffffff) != 0x0) && ((value28 & 0xffffffffffffffffffffffffffff) == 0x0)) || ((value27 & 0xffffffffffffffffffffffffffff) == 0x0)) {                    return 0;                } else {                    (bool success9, bytes memory returnData9) = lpPair.token0(); // staticcall                    require(success9);                    uint256 value30 = 0;                    uint256 value31 = var_c.length;                    if (success9) {                        uint256 value29 = returnData9.length;                        if (0x20 <= returnData9.length) {                            value29 = 0x20;                        }                        if (((var_c + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        var_c = var_c + ((value29 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        require(((var_c + value29) - var_c) >= 0x20);                        require(var_c.length == (address(var_c.length)));                    } else {                        value30 = var_c;                        value31 = 0;                    }                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value31)) {                        return (uint112(value27) * 0x0de0b6b3a7640000) / (uint112(value28));                    } else {                        return (uint112(value28) * 0x0de0b6b3a7640000) / (uint112(value27));                    }                }            }        }    }        function balanceOf(address account) public view returns (uint256) {        var_a = var_a;        return mapping_expr_r[var_a];    }        function setMiningContract(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(newAddress != address(0), ProtocolToken__ZeroAddress());        uint256 value0 = 0;        if (stor_32 != 0x0) {            isTaxExempt[stor_32] = false;        } else {            flag0 = (stor_32 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0;        }        stor_32 = newAddress;        isTaxExempt[newAddress] = true;    }        function Unknown_6b020446(uint16 arg0, uint16 arg1, uint16 arg2) public {        require(arg0 == (arg0 & 0xffff));        require(arg1 == (arg1 & 0xffff));        require(arg2 == (arg2 & 0xffff));        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require((arg0 & 0xffff) + (arg1 & 0xffff) + (arg2 & 0xffff) == 0x2710, CustomError_ab65b5e2());        stor_3b = (0xffff00000000000000000000 & (arg2 << 0x50)) | (0xffff000000000000 & (arg0 << 0x30) | (stor_3b & (0xffffffffffffffffffffffffffffffffffffffff000000000000ffffffffffff)) | (0xffff0000000000000000 & (arg1 << 0x40)));        emit Event_ee44f578(uint16(arg0), uint16(arg1), uint16(arg2));    }        function liquidityGateway() public view returns (uint256) {        return stor_3b >> 0x60;    }        function rescueERC20(address token, address recipient) public {        require(mapping_4da8a1b1ef30f1fd88a8e1c233b1bfb80c3644052b98cefed86e7b79ef2f613c[msg.sender], AccessControlUnauthorizedAccount());        (bool success0, bytes memory returnData0) = token.staticcall(abi.encodeWithSelector(bytes4(0x70a08231), address(this))); // staticcall balanceOf        require(success0);        uint256 value1 = msg.data[0] >> 0xe0;        uint256 var_e;        uint256 value2 = var_e.length;        if (success0) {            uint256 value0 = returnData0.length;            if (0x20 <= returnData0.length) {                value0 = 0x20;            }            if (((var_e + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);            var_e = var_e + ((value0 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            require(((var_e + value0) - var_e) >= 0x20);        } else {            value1 = var_e;            value2 = 0;        }        require(value2 != 0x0, CustomError_3af5c920());        var_a = 0xa9059cbb00000000000000000000000000000000000000000000000000000000;        (bool success1, bytes memory returnData1) = token.call(abi.encodeWithSelector(bytes4(0xa9059cbb), recipient, value2)); // call transfer        uint256 value3 = ((!returnData1.length) & (!(!(token.code.length)))) & success1;        if (!(success1 & (var_a == 0x01))) {            require(!((!success1) & (0x01)));        } else {            value3 = success1;        }        require(value3 != 0x0, SafeERC20FailedOperation());        emit ERC20Rescued(token, recipient, value2);    }        function paused() public view returns (bool) {        return !(!(bytes1(stor_expr_ah)));    }        function proxiableUUID() public pure returns (uint256) {        require(address(this) == 0x951053966a79baf720a771531fae1802b95a2cda, UUPSUnauthorizedCallContext());        return 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;    }        function upgradeToAndCall(address newImplementation, bytes memory data) public payable {        require((data + 0x23) < msg.data.length);        if (data.length > 0xffffffffffffffff) _desolexPanic(65);        uint256 var_a;        if (((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + data.length))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + data.length))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_a)) _desolexPanic(65);        var_a = var_a + (((0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + data.length))) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));        require(!((data + 0x24) + data > msg.data.length));        uint256 value0 = 0;        if (0x951053966a79baf720a771531fae1802b95a2cda == address(this)) {            value0 = 0x951053966a79baf720a771531fae1802b95a2cda;        }        require(!(address(0x951053966a79baf720a771531fae1802b95a2cda) != address(this) && (stor_360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc & 0xffffffffffffffffffffffffffffffffffffffff) != 0x951053966a79baf720a771531fae1802b95a2cda || address(0x951053966a79baf720a771531fae1802b95a2cda) == address(this)), UUPSUnauthorizedCallContext());        var_e = var_e;        var_e = msg.sender;        require(bytes1(mapping_expr_br[var_e][msg.sender]), AccessControlUnauthorizedAccount());        (bool success0, bytes memory returnData0) = newImplementation.proxiableUUID(); // staticcall        uint256 value2 = 0;        uint256 value3 = 0;        uint256 value4 = var_a.length;        if (success0) {            uint256 value1 = returnData0.length;            if (0x20 <= returnData0.length) {                value1 = 0x20;            }            if (((var_a + ((value1 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_a + ((value1 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_a)) _desolexPanic(65);            var_a = var_a + ((value1 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            require(((var_a + value1) - var_a) >= 0x20);        } else {            value2 = 0x20;            value3 = var_a;            value4 = 0;        }        require(success0, ERC1967InvalidImplementation());        require(value4 == 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc, UUPSUnsupportedProxiableUUID());        require(newImplementation.code.length != 0x0, ERC1967InvalidImplementation());        stor_360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc = newImplementation;        emit Upgraded(stor_360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc);        if (var_a.length != 0x0) {            (bool success1, bytes memory returnData1) = newImplementation.Unknown_(var_g); // delegatecall            bool flag1;            if (success1) {                bool flag2 = returnData1.length;                if (returnData1.length == 0) {                    flag2 = newImplementation.code.length != 0x0;                }                flag1 = flag2;            } else {                flag1 = success1;            }            if (!flag1) {                require(!success1, AddressEmptyCode());                require(!returnData1.length);                revert FailedCall();            } else {                var_a = (var_a + returnData1.length) + 0x20;            }        }        require(!(msg.value), ERC1967NonPayable());    }        function setStakeCoreContract(address newAddress) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(newAddress != address(0), ProtocolToken__ZeroAddress());        uint256 value0 = 0;        if (stor_33 != 0x0) {            isTaxExempt[stor_33] = false;        } else {            flag0 = (stor_33 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0;        }        stor_33 = newAddress;        isTaxExempt[newAddress] = true;    }        function emergencyUnpause() public {        require(bytes1(stor_expr_ah), CustomError_8cc69387());        require(block.timestamp >= (pausedAt + 0x093a80), CustomError_8cc69387());        pausedAt = 0;        stor_expr_ah = (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00) & stor_expr_ah;        emit Unpaused(msg.sender);    }        function Unknown_4287474f() public view returns (uint16) {        return uint16(stor_3d >> 0xb0);    }        function mint(address to, uint256 amount) public payable {        if (!(msg.value)) {            if ((msg.data.length + 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc) >= 0x40) {                if (to == to) {                    var_a = var_a;                    var_a = msg.sender;                    if (bytes1(mapping_expr_r[var_a][msg.sender])) {                        if (!(bytes1(stor_expr_ah))) {                            if (stor_expr_ah <= (stor_expr_ah + amount)) {                                if ((stor_expr_ah + amount) <= 0x02863c1f5cdae42f9540000000) {                                    require(to != address(0), ERC20InvalidReceiver(address(0)));                                    uint256 value0 = 0;                                    if (treasury) {                                        uint256 value30 = 0;                                        if (isSellSink[to]) {                                            address account0 = address(0);                                            bool flag0 = isTaxExempt[to];                                            if (!(bytes1(stor_842397100357c7bc9e13c9e286c8970fd4253dcc8e63c78c74e0f9bb8b96fef4))) {                                            } else {                                                account0 = to;                                                flag0 = bytes1(stor_842397100357c7bc9e13c9e286c8970fd4253dcc8e63c78c74e0f9bb8b96fef4);                                            }                                            uint256 value31 = 0;                                            if (!(flag0)) {                                                value31 = 0x01;                                            }                                            value30 = value31;                                        }                                        value0 = value30;                                    }                                    if ((value0 != 0x0) && (amount != 0x0)) {                                        if (uint16(stor_3d >> 0xa0)) {                                            if (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) != 0x0) {                                                uint256 var_e;                                                if (((var_e + 0xa0) > 0xffffffffffffffff) | ((var_e + 0xa0) < var_e)) _desolexPanic(65);                                                var_e = var_e + 0xa0;                                                if ((((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    emit Transfer(address(0), 0xdead, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710);                                                }                                                if ((((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    if (treasury != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    }                                                    emit Transfer(address(0), treasury, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710);                                                    require(treasury.code.length);                                                    (bool success9, bytes memory returnData9) = treasury.Unknown_e9859d5d(0x4c4e7985903def51d3e51f399e7d454a30c8d59c74d7ebd5bcd807350e62b5, address(this), (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710)))); // call                                                    require(success9);                                                    uint256 value22 = 0;                                                    if (success9) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        var_e = var_e;                                                    } else {                                                        value22 = var_e;                                                    }                                                }                                                if (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    if (treasury != 0x0) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    }                                                    emit Transfer(address(0), treasury, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    require(treasury.code.length);                                                    (bool success10, bytes memory returnData10) = treasury.Unknown_e9859d5d(0x526c17cacf5dbde5baf14413848f8cb373870be8bf89d39c3af13b1772eefaa5, address(this), (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710), keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710)))); // call                                                    require(success10);                                                    uint256 value23 = 0;                                                    if (success10) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        var_e = var_e;                                                        require(0x0 == 0x0);                                                    } else {                                                        value23 = var_e;                                                    }                                                    uint256 value25;                                                    if (stor_3d != address(0)) {                                                        require(stor_3d.code.length);                                                        (bool success11, bytes memory returnData11) = stor_3d.Unknown_5e8789b8(((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)); // call                                                        require(success11);                                                        uint256 value24 = 0;                                                        if (success11) {                                                            if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                            var_e = var_e;                                                            require(0x0 == 0x0);                                                        } else {                                                            value24 = var_e;                                                        }                                                        value25 = value24;                                                    } else {                                                        value25 = stor_3d;                                                    }                                                }                                                emit SellTaxCollected(address(0), (amount * (uint16(stor_3d >> 0xa0))) / 0x2710, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xa0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                if (amount != ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    if (to != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    }                                                    emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                }                                            } else {                                                if (amount != ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    if (to != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                    }                                                    emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3d >> 0xa0))) / 0x2710));                                                }                                            }                                            emit Minted(to, amount, 0);                                        } else if (address(stor_3e) == address(0)) {                                            if (lpPair) {                                                (bool success4, bytes memory returnData4) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                                                require(success4);                                                uint256 value12 = 0;                                                uint256 value13 = var_e.length;                                                uint256 value14 = var_i;                                                if (success4) {                                                    uint256 value11 = returnData4.length;                                                    if (0x60 <= returnData4.length) {                                                        value11 = 0x60;                                                    }                                                    if (((var_e + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                    var_e = var_e + ((value11 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                    require(((var_e + value11) - var_e) >= 0x60);                                                    require(var_j == (uint112(var_j)));                                                    require(var_k == (uint112(var_k)));                                                    require(uint32(var_l) == var_l);                                                } else {                                                    value12 = var_e;                                                    value13 = 0;                                                    value14 = 0;                                                }                                                if (!((value13 & 0xffffffffffffffffffffffffffff) != 0x0 && (value14 & 0xffffffffffffffffffffffffffff) == 0x0 || (value13 & 0xffffffffffffffffffffffffffff) == 0x0)) {                                                    (bool success5, bytes memory returnData5) = lpPair.token0(); // staticcall                                                    require(success5);                                                    uint256 value16 = 0;                                                    uint256 value17 = var_e.length;                                                    if (success5) {                                                        uint256 value15 = returnData5.length;                                                        if (0x20 <= returnData5.length) {                                                            value15 = 0x20;                                                        }                                                        if (((var_e + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                        var_e = var_e + ((value15 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                        require(((var_e + value15) - var_e) >= 0x20);                                                        require(var_e.length == (address(var_e.length)));                                                    } else {                                                        value16 = var_e;                                                        value17 = 0;                                                    }                                                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value17)) {                                                    }                                                }                                            }                                            if (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) != 0x0) {                                                if (((var_e + 0xa0) > 0xffffffffffffffff) | ((var_e + 0xa0) < var_e)) _desolexPanic(65);                                                var_e = var_e + 0xa0;                                                if ((((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    emit Transfer(address(0), 0xdead, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710);                                                }                                                if ((((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    if (treasury != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    }                                                    emit Transfer(address(0), treasury, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710);                                                    require(treasury.code.length);                                                    (bool success6, bytes memory returnData6) = treasury.Unknown_e9859d5d(0x4c4e7985903def51d3e51f399e7d454a30c8d59c74d7ebd5bcd807350e62b5, address(this), (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)))); // call                                                    require(success6);                                                    uint256 value18 = 0;                                                    if (success6) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        var_e = var_e;                                                    } else {                                                        value18 = var_e;                                                    }                                                }                                                if (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)) {                                                    if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                        var_a = var_a;                                                        require(!(mapping_expr_r[var_a] < (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710))));                                                        var_a = address(0);                                                        mapping_expr_r[address(0)] = mapping_expr_r[var_a] - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                            var_a = var_a;                                                            mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        } else {                                                            stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        }                                                        emit Transfer(address(0), address(treasury), (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)));                                                    } else {                                                        stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                            var_a = var_a;                                                            mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        } else {                                                            stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                        }                                                        emit Transfer(address(0), address(treasury), (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)));                                                    }                                                    require(treasury.code.length);                                                    (bool success7, bytes memory returnData7) = treasury.Unknown_e9859d5d(0x526c17cacf5dbde5baf14413848f8cb373870be8bf89d39c3af13b1772eefaa5, address(this), (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710), keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)))); // call                                                    require(success7);                                                    uint256 value19 = 0;                                                    if (success7) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        var_e = var_e;                                                        require(0x0 == 0x0);                                                    } else {                                                        value19 = var_e;                                                    }                                                    uint256 value21;                                                    if (stor_3d != address(0)) {                                                        require(stor_3d.code.length);                                                        (bool success8, bytes memory returnData8) = stor_3d.Unknown_5e8789b8(((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)); // call                                                        require(success8);                                                        uint256 value20 = 0;                                                        if (success8) {                                                            if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                            var_e = var_e;                                                            require(0x0 == 0x0);                                                        } else {                                                            value20 = var_e;                                                        }                                                        value21 = value20;                                                    } else {                                                        value21 = stor_3d;                                                    }                                                    emit SellTaxCollected(address(0), (amount * (uint16(stor_3b >> 0x20))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    if (amount == ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)) {                                                        emit Minted(to, amount, 0);                                                    }                                                } else {                                                    emit SellTaxCollected(address(0), (amount * (uint16(stor_3b >> 0x20))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3b >> 0x20))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    if (amount == ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)) {                                                        emit Minted(to, amount, 0);                                                    }                                                }                                            } else {                                                if (amount == ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)) {                                                    emit Minted(to, amount, 0);                                                }                                            }                                            stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            if (to != address(0)) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            }                                            emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            emit Minted(to, amount, 0);                                            var_a = var_a;                                            require(mapping_expr_r[var_a] >= (amount - ((amount * uint16(stor_3b >> 0x20)) / 0x2710)));                                            var_a = 0;                                            mapping_expr_r[0] = mapping_expr_r[var_a] - (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            if (to != address(0)) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            }                                            emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                            emit Minted(to, amount, 0);                                        } else {                                            uint256 value1 = uint32(stor_3e >> 0xa0);                                            if (!(uint32(stor_3e >> 0xa0))) {                                                value1 = 0x0e10;                                            }                                            (bool success0, bytes memory returnData0) = address(stor_3e).Unknown_0095eb4a(uint32(value1)); // staticcall                                            if (success0) {                                                uint256 value2 = 0;                                                uint256 value3 = var_e.length;                                                if (success0) {                                                    if (0x20 > returnData0.length) {                                                        if (((var_e + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                        var_e = var_e + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                        require(((var_e + returnData0.length) - var_e) >= 0x20);                                                        require(var_e.length == var_e.length);                                                    } else {                                                        if (((var_e + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                        var_e = var_e + ((0x20 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                        require(!(((var_e + 0x20) - var_e) < 0x20));                                                        require(var_f == var_f);                                                    }                                                } else {                                                    value2 = var_e;                                                    value3 = 0;                                                }                                                if (value3 != 0x0) {                                                    (bool success1, bytes memory returnData1) = address(stor_3e).consult(0x0de0b6b3a7640000); // staticcall                                                    if (success1) {                                                        if (!(success1)) {                                                            if (lpPair) {                                                                (bool success2, bytes memory returnData2) = lpPair.staticcall(abi.encodeWithSelector(bytes4(0x0902f1ac))); // staticcall getReserves                                                                require(success2);                                                                uint256 value5 = 0;                                                                uint256 value6 = var_e.length;                                                                uint256 value7 = var_i;                                                                if (success2) {                                                                    uint256 value4 = returnData2.length;                                                                    if (0x60 <= returnData2.length) {                                                                        value4 = 0x60;                                                                    }                                                                    if (((var_e + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                                    var_e = var_e + ((value4 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                                    require(((var_e + value4) - var_e) >= 0x60);                                                                    require(var_j == (uint112(var_j)));                                                                    require(var_k == (uint112(var_k)));                                                                    require(uint32(var_l) == var_l);                                                                } else {                                                                    value5 = var_e;                                                                    value6 = 0;                                                                    value7 = 0;                                                                }                                                                if (!((value6 & 0xffffffffffffffffffffffffffff) != 0x0 && (value7 & 0xffffffffffffffffffffffffffff) == 0x0 || (value6 & 0xffffffffffffffffffffffffffff) == 0x0)) {                                                                    (bool success3, bytes memory returnData3) = lpPair.token0(); // staticcall                                                                    require(success3);                                                                    uint256 value9 = 0;                                                                    uint256 value10 = var_e.length;                                                                    if (success3) {                                                                        uint256 value8 = returnData3.length;                                                                        if (0x20 <= returnData3.length) {                                                                            value8 = 0x20;                                                                        }                                                                        if (((var_e + ((value8 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((value8 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                                        var_e = var_e + ((value8 + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                                        require(((var_e + value8) - var_e) >= 0x20);                                                                        require(var_e.length == (address(var_e.length)));                                                                    } else {                                                                        value9 = var_e;                                                                        value10 = 0;                                                                    }                                                                    if (address(this) != (0xffffffffffffffffffffffffffffffffffffffff & value10)) {                                                                    }                                                                }                                                            }                                                            if ((amount * (uint16(stor_3b >> 0x20))) / 0x2710 == 0) {                                                                if (amount != ((amount * (uint16(stor_3b >> 0x20))) / 0x2710)) {                                                                    stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3b >> 0x20))) / 0x2710));                                                                } else {                                                                    emit Minted(to, amount, 0);                                                                }                                                            }                                                        }                                                    }                                                }                                            }                                        }                                    } else {                                        uint256 value27 = 0;                                        if (treasury) {                                            uint256 value32 = 0;                                            if (isSellSink[0]) {                                                address account1 = address(0);                                                uint256 value26 = 0;                                                bool flag4 = isTaxExempt[to];                                                if (!isTaxExempt[0]) {                                                } else {                                                    account1 = to;                                                    value26 = 0xffffffffffffffffffffffffffffffffffffffff;                                                    flag4 = isTaxExempt[0];                                                }                                                uint256 value33 = 0;                                                if (!(flag4)) {                                                    value33 = 0x01;                                                }                                                value32 = value33;                                            }                                            value27 = value32;                                        }                                        if ((value27 != 0x0) && (amount != 0x0)) {                                            if (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) != 0x0) {                                                if (((var_e + ((((var_e + 0xa0) - var_e) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_e + ((((var_e + 0xa0) - var_e) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_e)) _desolexPanic(65);                                                var_e = var_e + ((((var_e + 0xa0) - var_e) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                                if ((((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710);                                                    emit Transfer(address(0), 0xdead, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710);                                                }                                                if ((((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710) != 0x0) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    if (treasury != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710);                                                    }                                                    emit Transfer(address(0), treasury, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710);                                                    require(treasury.code.length);                                                    (bool success12, bytes memory returnData12) = treasury.Unknown_e9859d5d(0x2e1e2ae8ef042d0b37d26b5a9560a4a502dcddfbb9941253052a4f611d53e3a9, address(this), (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                                    require(success12);                                                    uint256 value28 = 0;                                                    if (success12) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        var_e = var_e;                                                        require(0x0 == 0x0);                                                    } else {                                                        value28 = var_e;                                                    }                                                }                                                uint256 value29;                                                address account2 = address(0);                                                if (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) != (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    if (treasury != 0x0) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    }                                                    emit Transfer(address(0), treasury, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                    require(treasury.code.length);                                                    (bool success13, bytes memory returnData13) = treasury.Unknown_e9859d5d(0x7650e59af599fc14b6c1a14ab2c3066cad8708e216e41464880b42d63788db92, address(this), (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710), keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                                    require(success13);                                                    uint256 value34 = var_e;                                                    if (success13) {                                                        if (!(var_e <= 0xffffffffffffffff)) _desolexPanic(65);                                                        require(0x0 == 0x0);                                                        value34 = 0;                                                    }                                                    value29 = value34;                                                } else {                                                    value29 = keccak256(abi.encode(0, (to), block.number, ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710)));                                                    account2 = treasury;                                                }                                                emit BuyTaxCollected(to, (amount * (uint16(stor_3d >> 0xb0))) / 0x2710, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30))) / 0x2710, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40))) / 0x2710, (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x30)) / 0x2710)) - (((amount * (uint16(stor_3d >> 0xb0))) / 0x2710) * (uint16(stor_3b >> 0x40)) / 0x2710));                                                if (amount != ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    if (to != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    }                                                    emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                }                                            } else {                                                if (amount != ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710)) {                                                    stor_expr_ah = stor_expr_ah + (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    if (to != address(0)) {                                                        var_a = var_a;                                                        mapping_expr_r[var_a] = mapping_expr_r[var_a] + (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    } else {                                                        stor_expr_ah = stor_expr_ah - (amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                    }                                                    emit Transfer(address(0), to, amount - ((amount * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                }                                            }                                        } else {                                            stor_expr_ah = stor_expr_ah + amount;                                            if (to != address(0)) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + amount;                                            } else {                                                stor_expr_ah = stor_expr_ah - amount;                                            }                                            emit Transfer(address(0), to, amount);                                        }                                        emit Minted(to, amount, 0);                                    }                                }                            }                        }                    }                }            }        }    }        function proposeDeployerTransfer(address arg0) public {        var_a = var_a;        var_a = msg.sender;        require(bytes1(mapping_expr_r[var_a][msg.sender]), AccessControlUnauthorizedAccount());        require(arg0 != address(0), CustomError_5e64e888());        pendingDeployer = arg0;        stor_3 = msg.sender;        emit DeployerTransferProposed(stor_3, arg0);    }        function unpause() public {        require(mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[msg.sender], AccessControlUnauthorizedAccount());        pausedAt = 0;        require(bytes1(stor_expr_ah), ExpectedPause());        stor_expr_ah = (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00) & stor_expr_ah;        emit Unpaused(msg.sender);    }        function setTwapMaxAge(uint32 arg0) public {        require(arg0 == (arg0 & 0xffffffff));        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        stor_3e = (0xffffffff0000000000000000000000000000000000000000 & (arg0 << 0xa0)) | (0xffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff & stor_3e);    }        function renounceRole(bytes32 role, address account) public {        require(account == msg.sender, AccessControlBadConfirmation());        var_a = var_a;        var_a = account;        if (!(0 == (bytes1(mapping_expr_r[var_a][account])))) {            var_a = role;            var_a = account;            mapping_expr_r[role][account] = mapping_expr_r[role][account] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00);            emit RoleRevoked(role, account, msg.sender);        }    }        function grantRole(bytes32 role, address account) public {        var_a = var_a;        var_a = var_a;        var_a = msg.sender;        require(bytes1(mapping_expr_r[var_a][msg.sender]), AccessControlUnauthorizedAccount());        var_a = var_a;        var_a = account;        if (!(0 == (!(bytes1(mapping_expr_r[var_a][account]))))) {            var_a = role;            var_a = account;            mapping_expr_r[role][account] = (mapping_expr_r[role][account] & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00)) | 0x01;            emit RoleGranted(role, account, msg.sender);        }    }        function stakeVault() public view returns (address) {        return stor_3d;    }        function getRoleAdmin(bytes32 role) public view returns (uint256) {        var_a = var_a;        return stor_expr_q;    }        function transferFrom(address from, address to, uint256 amount) public payable {        if (!(msg.value) && !((0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc + msg.data.length) < 0x60) && from == from && to == to) {            internal_2edc();        }    }        function taxSplitBps() public view returns (bytes memory) {        return abi.encodePacked(uint16(stor_3b >> 0x40), uint16(stor_3b >> 0x50));    }        function setTaxExempt(address account, bool enabled) public {        require(mapping_b7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d[msg.sender], AccessControlUnauthorizedAccount());        require(account != address(0), ProtocolToken__ZeroAddress());        isTaxExempt[account] = enabled;    }        function Unknown_1d4ba288(bool arg0) public {        require(arg0 == (arg0 & 0xff));        require(mapping_2b8cad0cb51835990e3607c829041c9871ef9bf1b9cfb0eef41f2702dcbc1943[msg.sender], AccessControlUnauthorizedAccount());        stor_1 = stor_1 | (0x01 << (bytes1(arg0)));        emit Event_cf4eb7df(bytes1(arg0));    }        function totalSupply() public view returns (uint256) {        return stor_expr_ah;    }        function approve(address spender, uint256 amount) public returns (bool) {        require(msg.sender != address(0), ERC20InvalidApprover(address(0)));        require(spender != address(0), ERC20InvalidSpender(address(0)));        allowance[msg.sender][spender] = amount;        emit Approval(msg.sender, spender, allowance[msg.sender][spender]);        return true;    }        function name() public view returns (string memory) {        uint256 value0 = (0x7f) & (stor_36 >> 0x01);        if (stor_36 & (0x01)) {            value0 = stor_36 >> 0x01;        }        if (!((value0 < 0x20) != (stor_36 & 0x01))) _desolexPanic(34);        if (0 == (stor_36 & (0x01))) {            uint256 var_c;            if (((var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);            var_c = var_c + (((((var_c + (value0 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));            if (var_c.length == 0) {                uint256 value1 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                    value1 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                }                if (!((value1 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                } else {                    if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                        uint256 value3 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                        uint256 value2 = 0;                        while (true) {                            if (value2 >= value1) {                                break;                            }                            value3 = 0x01 + value3;                            value2 = 0x20 + value2;                        }                    } else {                        if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        uint256 value4 = 0;                        while (true) {                            var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            if (value4 >= var_c.length) {                                var_c = 0;                                return abi.encodePacked(0x20, var_c.length);                            }                            var_c = var_g;                            value4 = 0x20 + value4;                        }                    }                }            } else {                uint256 value4 = 0;                while (true) {                    if (value4 >= var_c.length) {                        return abi.encodePacked(0x20, var_c.length);                    }                    value4 = 0x20 + value4;                }            }        } else {            if (0x01 == (stor_36 & (0x01))) {                uint256 value6 = 0x4a11f94e20a93c79f6ec743a1954ec4fc2c08429ae2122118bf234b2185c81b8;                uint256 value5 = 0;                while (true) {                    if (value5 >= value0) {                        break;                    }                    value6 = value6 + 0x01;                    value5 = value5 + 0x20;                }                if (((var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                var_c = var_c + (((((var_c + value5) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                if (var_c.length == 0) {                    uint256 value7 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                    if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                        value7 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                    }                    if (!((value7 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                    if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                    } else {                        if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                            uint256 value3 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                            uint256 value2 = 0;                            while (true) {                                if (value2 >= value1) {                                    break;                                }                                value3 = 0x01 + value3;                                value2 = 0x20 + value2;                            }                        } else {                            if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            uint256 value4 = 0;                            while (true) {                                var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                if (value4 >= var_c.length) {                                    var_c = 0;                                    return abi.encodePacked(0x20, var_c.length);                                }                                var_c = var_g;                                value4 = 0x20 + value4;                            }                        }                    }                } else {                    uint256 value4 = 0;                    while (true) {                        if (value4 >= var_c.length) {                            return abi.encodePacked(0x20, var_c.length);                        }                        value4 = 0x20 + value4;                    }                }            } else {                if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                uint256 value9;                uint256 value10 = var_c;                uint256 value11;                uint256 value12;                if (var_c.length == 0) {                    uint256 value8 = (0x7f) & (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01);                    if (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01)) {                        value8 = stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 >> 0x01;                    }                    if (!((value8 < 0x20) != (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & 0x01))) _desolexPanic(34);                    uint256 value13 = var_c;                    uint256 value14 = var_c;                    uint256 value15 = var_c;                    if (!(stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                        if (((var_c + (((((var_c + (value8 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + (value8 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                        var_c = var_c + (((((var_c + (value8 << 0x05)) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    } else {                        uint256 value16 = var_c;                        uint256 value17 = var_c;                        uint256 value18 = var_c;                        if (0x01 == (stor_52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace03 & (0x01))) {                            uint256 value3 = 0x2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0;                            uint256 value2 = 0;                            while (true) {                                if (value2 >= value1) {                                    break;                                }                                value3 = 0x01 + value3;                                value2 = 0x20 + value2;                            }                            if (((var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            var_c = var_c + (((((var_c + value2) + 0x20) - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        } else {                            if (((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                            var_c = var_c + (((0 - var_c) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            value16 = var_c;                            value17 = var_c;                            value18 = var_c;                        }                        value13 = value16;                        value14 = value17;                        value15 = value18;                    }                    value9 = value13;                    value11 = value14;                    value12 = value15;                } else {                    value9 = var_c;                    value10 = var_c;                    value11 = var_c;                    value12 = var_c;                }                uint256 value4 = 0;                while (true) {                    var_c = var_j;                    if (value4 >= var_c.length) {                        return abi.encodePacked(0x20, var_j);                    }                    value4 = 0x20 + value4;                }            }        }    }        function supportsInterface(bytes4 interfaceId) public pure returns (bool) {        require(interfaceId == (interfaceId & 0xffffffff00000000000000000000000000000000000000000000000000000000));        uint256 value0 = msg.data[0] >> 0xe0;        bool flag0 = 0x1ffc9a700000000000000000000000000000000000000000000000000000000 == (interfaceId & 0xffffffff00000000000000000000000000000000000000000000000000000000);        if (interfaceId & (0xffffffff00000000000000000000000000000000000000000000000000000000) == 0x7965db0b00000000000000000000000000000000000000000000000000000000) {            value0 = interfaceId & (0xffffffff00000000000000000000000000000000000000000000000000000000);            flag0 = (interfaceId & 0xffffffff00000000000000000000000000000000000000000000000000000000) == 0x7965db0b00000000000000000000000000000000000000000000000000000000;        }        return flag0;    }        function internal_3b8a(address arg0, uint256 arg1) private {        // Decompilation incomplete: helper effect provenance is conservative.        if (!(treasury)) {            if (!(0x0 != 0x0 && arg1 != 0x0)) {                uint256 value10 = 0;                if (treasury) {                    uint256 value16 = 0;                    if (isSellSink[arg0]) {                        uint256 value17;                        if (!isTaxExempt[arg0]) {                            if (isTaxExempt[0]) {                                if ((0x0 != 0x0) && (arg1 != 0x0)) {                                    if ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710 != 0x0) {                                        if (((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_h)) _desolexPanic(65);                                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != 0x0) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710)));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            }                                            var_a = var_a;                                            mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            emit Transfer(arg0, 0xdead, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710));                                        }                                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710) != 0x0) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710)));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                if (treasury != address(0)) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                }                                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                if (treasury != address(0)) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                }                                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                                            }                                            require(treasury.code.length);                                            (bool success0, bytes memory returnData0) = treasury.Unknown_e9859d5d{ value: 0 }(0x2e1e2ae8ef042d0b37d26b5a9560a4a502dcddfbb9941253052a4f611d53e3a9, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                            require(success0);                                            uint256 value0 = 0;                                            if (success0) {                                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                                var_h = var_h;                                                require(!(0));                                            } else {                                                value0 = var_h;                                            }                                        }                                        uint256 value2;                                        uint256 value3;                                        uint256 value4;                                        if (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710))));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                }                                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                }                                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                                            }                                            require(treasury.code.length);                                            (bool success1, bytes memory returnData1) = treasury.Unknown_e9859d5d{ value: 0 }(0x7650e59af599fc14b6c1a14ab2c3066cad8708e216e41464880b42d63788db92, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710), keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                            require(success1);                                            uint256 value1 = 0;                                            if (success1) {                                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                                var_h = var_h;                                                require(!(0));                                            } else {                                                value1 = var_h;                                            }                                            value2 = value1;                                            value3 = value1;                                            value4 = value1;                                        } else {                                            value2 = 0xffffffffffffffffffffffffffffffffffffffff;                                            value3 = keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)));                                            value4 = treasury;                                        }                                        emit BuyTaxCollected(address(0), (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                        }                                    } else {                                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                        }                                    }                                } else {                                    if (arg0 != address(0)) {                                        var_a = var_a;                                        require(mapping_expr_r[var_a] >= arg1);                                        var_a = (arg0) ? 1 : 0;                                        mapping_expr_r[arg0] = mapping_expr_r[var_a] - arg1;                                    } else {                                        stor_expr_ah = stor_expr_ah + arg1;                                    }                                    stor_expr_ah = stor_expr_ah - arg1;                                    emit Transfer(arg0, address(0), arg1);                                }                            } else {                                if ((0x1 != 0x0) && (arg1 != 0x0)) {                                    if ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710 != 0x0) {                                        if (((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_h)) _desolexPanic(65);                                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != 0x0) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710)));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            }                                            var_a = var_a;                                            mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                                            emit Transfer(arg0, 0xdead, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710));                                        }                                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710) != 0x0) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710)));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                if (treasury != address(0)) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                }                                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                if (treasury != address(0)) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                                }                                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                                            }                                            require(treasury.code.length);                                            (bool success2, bytes memory returnData2) = treasury.Unknown_e9859d5d{ value: 0 }(0x2e1e2ae8ef042d0b37d26b5a9560a4a502dcddfbb9941253052a4f611d53e3a9, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                            require(success2);                                            uint256 value5 = 0;                                            if (success2) {                                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                                var_h = var_h;                                                require(!(0));                                            } else {                                                value5 = var_h;                                            }                                        }                                        uint256 value7;                                        uint256 value8;                                        uint256 value9;                                        if (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710))));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                }                                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                                            } else {                                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                    var_a = var_a;                                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                } else {                                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                                }                                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                                            }                                            require(treasury.code.length);                                            (bool success3, bytes memory returnData3) = treasury.Unknown_e9859d5d{ value: 0 }(0x7650e59af599fc14b6c1a14ab2c3066cad8708e216e41464880b42d63788db92, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710), keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                                            require(success3);                                            uint256 value6 = 0;                                            if (success3) {                                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                                var_h = var_h;                                                require(!(0));                                            } else {                                                value6 = var_h;                                            }                                            value7 = value6;                                            value8 = value6;                                            value9 = value6;                                        } else {                                            value7 = 0xffffffffffffffffffffffffffffffffffffffff;                                            value8 = keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)));                                            value9 = treasury;                                        }                                        emit BuyTaxCollected(address(0), (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                        }                                    } else {                                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                                            if (arg0 != address(0)) {                                                var_a = var_a;                                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                                var_a = (arg0) ? 1 : 0;                                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                                var_a = var_a;                                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            } else {                                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                            }                                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                        }                                    }                                } else {                                    if (arg0 != address(0)) {                                        var_a = var_a;                                        require(mapping_expr_r[var_a] >= arg1);                                        var_a = (arg0) ? 1 : 0;                                        mapping_expr_r[arg0] = mapping_expr_r[var_a] - arg1;                                    } else {                                        stor_expr_ah = stor_expr_ah + arg1;                                    }                                    stor_expr_ah = stor_expr_ah - arg1;                                    emit Transfer(arg0, address(0), arg1);                                }                            }                        } else {                            value17 = 0;                        }                        value16 = value17;                    }                    value10 = value16;                }                if ((value10 != 0x0) && (arg1 != 0x0)) {                    if ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710 != 0x0) {                        if (((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_h)) _desolexPanic(65);                        var_h = var_h + ((((var_h + 0xa0) - var_h) + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != 0x0) {                            if (arg0 != address(0)) {                                var_a = var_a;                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710)));                                var_a = (arg0) ? 1 : 0;                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                            } else {                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                            }                            var_a = var_a;                            mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710);                            emit Transfer(arg0, 0xdead, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710));                        }                        if ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710) != 0x0) {                            if (arg0 != address(0)) {                                var_a = var_a;                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710)));                                var_a = (arg0) ? 1 : 0;                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                if (treasury != address(0)) {                                    var_a = var_a;                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                } else {                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                }                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                            } else {                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                if (treasury != address(0)) {                                    var_a = var_a;                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                } else {                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710);                                }                                emit Transfer(arg0, treasury, ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710));                            }                            require(treasury.code.length);                            (bool success4, bytes memory returnData4) = treasury.Unknown_e9859d5d{ value: 0 }(0x2e1e2ae8ef042d0b37d26b5a9560a4a502dcddfbb9941253052a4f611d53e3a9, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                            require(success4);                            uint256 value11 = 0;                            if (success4) {                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                var_h = var_h;                                require(!(0));                            } else {                                value11 = var_h;                            }                        }                        uint256 value13;                        uint256 value14;                        uint256 value15;                        if (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710) != (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)) {                            if (arg0 != address(0)) {                                var_a = var_a;                                require(!(mapping_expr_r[var_a] < ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710))));                                var_a = (arg0) ? 1 : 0;                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                    var_a = var_a;                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                } else {                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                }                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                            } else {                                stor_expr_ah = stor_expr_ah + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                if ((treasury & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                    var_a = var_a;                                    mapping_expr_r[var_a] = mapping_expr_r[var_a] + ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                } else {                                    stor_expr_ah = stor_expr_ah - ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                                }                                emit Transfer(arg0, address(treasury), ((((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710)));                            }                            require(treasury.code.length);                            (bool success5, bytes memory returnData5) = treasury.Unknown_e9859d5d{ value: 0 }(0x7650e59af599fc14b6c1a14ab2c3066cad8708e216e41464880b42d63788db92, address(this), (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710), keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)))); // call                            require(success5);                            uint256 value12 = 0;                            if (success5) {                                if (var_h > 0xffffffffffffffff) _desolexPanic(65);                                var_h = var_h;                                require(!(0));                            } else {                                value12 = var_h;                            }                            value13 = value12;                            value14 = value12;                            value15 = value12;                        } else {                            value13 = 0xffffffffffffffffffffffffffffffffffffffff;                            value14 = keccak256(abi.encode(arg0, (address(0)), block.number, ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710)));                            value15 = treasury;                        }                        emit BuyTaxCollected(address(0), (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff))) / 0x2710, (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x30) & (0xffff)) / 0x2710)) - (((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) * ((stor_3b >> 0x40) & (0xffff)) / 0x2710));                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                            if (arg0 != address(0)) {                                var_a = var_a;                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                var_a = (arg0) ? 1 : 0;                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            } else {                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            }                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                var_a = var_a;                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            } else {                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            }                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                        }                    } else {                        if (arg1 != (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710) {                            if (arg0 != address(0)) {                                var_a = var_a;                                require(!(mapping_expr_r[var_a] < (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710))), ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1 - (arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                                var_a = (arg0) ? 1 : 0;                                mapping_expr_r[arg0] = mapping_expr_r[var_a] - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            } else {                                stor_expr_ah = stor_expr_ah + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            }                            if ((0 & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) {                                var_a = var_a;                                mapping_expr_r[var_a] = mapping_expr_r[var_a] + (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            } else {                                stor_expr_ah = stor_expr_ah - (arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                            }                            emit Transfer(arg0, address(0), arg1 - ((arg1 * (uint16(stor_3d >> 0xb0))) / 0x2710));                        }                    }                } else {                    if (arg0 != address(0)) {                        var_a = var_a;                        require(mapping_expr_r[var_a] >= arg1, ERC20InsufficientBalance(arg0, mapping_expr_ak[var_q], arg1));                        var_a = (arg0) ? 1 : 0;                        mapping_expr_r[arg0] = mapping_expr_r[var_a] - arg1;                    } else {                        stor_expr_ah = stor_expr_ah + arg1;                    }                    stor_expr_ah = stor_expr_ah - arg1;                    emit Transfer(arg0, address(0), arg1);                }            }        }    }        function internal_2edc() private {        // Decompilation incomplete: helper effect provenance is conservative.        address account0 = address(0);        uint256 value1;        if (!(!(coreContract))) {            (bool success0, bytes memory returnData0) = coreContract.isUserBanned(msg.sender); // staticcall            require(success0);            uint256 value0 = 0;            uint256 var_c;            uint256 value2 = var_c.length;            if (success0) {                if (0x20 > returnData0.length) {                    if (((var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) > 0xffffffffffffffff) | ((var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0))) < var_c)) _desolexPanic(65);                    var_c = var_c + ((returnData0.length + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    require(((var_c + returnData0.length) - var_c) >= 0x20);                } else {                    if (((var_c + 0x20) > 0xffffffffffffffff) | ((var_c + 0x20) < var_c)) _desolexPanic(65);                    var_c = var_c + 0x20;                    require(((var_c + 0x20) - var_c) >= 0x20);                }                require(var_c.length == var_c.length);            } else {                value0 = var_c;                value2 = 0;            }            value1 = value2;        } else {            account0 = coreContract;            value1 = !(!(coreContract));        }    }        function __desolexSelectorShim(uint32 rewrittenSelector) private {        assembly {            let input := mload(0x40)            calldatacopy(input, 0, calldatasize())            mstore(input, or(and(mload(input), 0x00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff), shl(224, and(rewrittenSelector, 0xffffffff))))            let success := delegatecall(gas(), address(), input, calldatasize(), 0, 0)            let size := returndatasize()            returndatacopy(input, 0, size)            switch success            case 0 { revert(input, size) }            default { return(input, size) }        }    }        // Note: This selector table is synthetic and is not part of the original Solidity source.    // It records the recovered selector-to-signature mapping without executable behavior.        // 0x01ffc9a7 => supportsInterface(bytes4)    // 0x06fdde03 => name()    // 0x095ea7b3 => approve(address,uint256)    // 0x16c2be6b => isTaxExempt(address)    // 0x18160ddd => totalSupply()    // 0x1d4ba288 => Unknown_1d4ba288(bool)    // 0x1dc61040 => setTaxExempt(address,bool)    // 0x1fe28c52 => taxSplitBps()    // 0x23b872dd => transferFrom(address,address,uint256)    // 0x248a9ca3 => getRoleAdmin(bytes32)    // 0x2799657d => MAX_PAUSE_DURATION()    // 0x2d788333 => stakeVault()    // 0x2e55d0f2 => pausedAt()    // 0x2f2ff15d => grantRole(bytes32,address)    // 0x313ce567 => decimals()    // 0x32cb6b0c => MAX_SUPPLY()    // 0x36568abe => renounceRole(bytes32,address)    // 0x3b5b5a98 => setTwapMaxAge(uint32)    // 0x3f4ba83a => unpause()    // 0x3f4d2101 => proposeDeployerTransfer(address)    // 0x40c10f19 => mint(address,uint256)    // 0x4287474f => Unknown_4287474f()    // 0x452ed4f1 => lpPair()    // 0x4a4e3bd5 => emergencyUnpause()    // 0x4cbda575 => setStakeCoreContract(address)    // 0x4e6fd6c4 => DEAD_ADDRESS()    // 0x4f1ef286 => upgradeToAndCall(address,bytes)    // 0x52d1902d => proxiableUUID()    // 0x5c975abb => paused()    // 0x5d799f87 => rescueERC20(address,address)    // 0x60a26aed => liquidityGateway()    // 0x61d027b3 => treasury()    // 0x6b020446 => Unknown_6b020446(uint16,uint16,uint16)    // 0x702f5321 => setMiningContract(address)    // 0x70a08231 => balanceOf(address)    // 0x71372544 => RESCUER_ROLE()    // 0x71b3659e => currentTokenPrice()    // 0x78d6fc08 => Unknown_78d6fc08()    // 0x7900fde3 => MAX_BUY_TAX_BPS()    // 0x79ac8b3e => Unknown_79ac8b3e()    // 0x816896c5 => Unknown_816896c5()    // 0x8456cb59 => pause()    // 0x85009827 => unresolved_85009827()    // 0x8ce838b4 => Unknown_8ce838b4(bool,uint256,uint16,uint16,uint16)    // 0x90657147 => initialize(address,string,string)    // 0x91d14854 => hasRole(bytes32,address)    // 0x95d89b41 => symbol()    // 0x9c949303 => setSellSink(address,bool)    // 0xa0cde4bc => unresolved_a0cde4bc()    // 0xa217fddf => DEFAULT_ADMIN_ROLE()    // 0xa35f942a => setLpPair(address)    // 0xa758729b => confirmDeployerTransfer()    // 0xa9059cbb => transfer(address,uint256)    // 0xaabc78a4 => Unknown_aabc78a4(uint16)    // 0xad3cb1cc => UPGRADE_INTERFACE_VERSION()    // 0xb16e6a29 => Unknown_b16e6a29(bool)    // 0xbadb97ff => adminBurn(uint256)    // 0xbe70168e => Unknown_be70168e(bool)    // 0xc6266693 => setCoreContract(address)    // 0xc8df4230 => rescueNative(address)    // 0xcd03435f => setLiquidityGateway(address)    // 0xcffd129c => sellTaxBps()    // 0xd5391393 => MINTER_ROLE()    // 0xd547741f => revokeRole(bytes32,address)    // 0xd5abeb01 => maxSupply()    // 0xda262f58 => setTokenInfo(string,string)    // 0xdd62ed3e => allowance(address,address)    // 0xe53f4c27 => isSellSink(address)    // 0xe80db5db => coreContract()    // 0xeadcd1bf => pendingDeployer()    // 0xecd00261 => DEPLOYER_ROLE()    // 0xf057850d => MAX_SELL_TAX_BPS()    // 0xf0f44260 => setTreasury(address)    // 0xf11caba0 => Unknown_f11caba0(uint16)    // 0xf36ba4d8 => setStakeVault(address)    // 0xf49299fe => unresolved_f49299fe()    // 0xf71e650b => Unknown_f71e650b(address)    // 0xf93e2f2b => twapMaxAge()}