BNB Chain

0xe8af4df16b50f0e65fec5b82eeb484bdab1b2034

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

Decompilation outputBNB Chain · 0xe8af4df1…ab1b203412.5 KB52.2 s
Share
888 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 contact@exvul.com https://x.com/exvulsec// SPDX-License-Identifier: MIT  >=0.8.0;  {        = 8534;        = 38565618417199902773051943526088628524471517387241857154768371431684916793409;        = 72579651441009407333943101911154516623030303948146585667981958319985908871313;        = 64624691009355361407247360265918275933336169636348308855649155591726815083253;        = 51542168180248082152030056451728049499749905167243835096059084772534901506895;        = 0;        = 823732757968423494232508997868029306736301263878;        = 10000000000000000;        = 12500;        = 114661979489761869402673463282528833466887108470131624800944901259873389970420;        = 250;        ( => ( => ))  ; // STORAGE[0x65]    ( => ) ; // STORAGE[0x98]    ( => ) ; // STORAGE[0xa9]    ( => ) ; // STORAGE[0x780da8389a9f12b9f98dde971e1d1bfe7b64d0c15a3453766fb0dd42d961d339]    ( => ) ; // STORAGE[0xad96101dffc20ca5690956c5e92a5eb9bd7e41e8e7bbc99c1e904390fdb872c1]    ( => ) ; // STORAGE[0xffdfc1249c027f9191656349feb0761381bb32c9f557e01f419fd08754bf5a1b]     ;     ;     ;         ( ,  ,  );     (, );     ();     ();     ();     ();     ();     (, , );     ( ,  ,  );     (, , , );     ();     ( )   {         ("memory-safe") {            (0x00, (224, 0x4e487b71))            (0x04, )            (0x00, 0x24)        }    }         ( )    () {        ( == ( & 0xffffffff00000000000000000000000000000000000000000000000000000000));          = 0x7965db0b00000000000000000000000000000000000000000000000000000000 == ( & 0xffffffff00000000000000000000000000000000000000000000000000000000);         (0x7965db0b00000000000000000000000000000000000000000000000000000000 != ( & 0xffffffff00000000000000000000000000000000000000000000000000000000)) {             = ( & 0xffffffff00000000000000000000000000000000000000000000000000000000) == 0x1ffc9a700000000000000000000000000000000000000000000000000000000;        }         ;    }         ( )    ( ) {         (!(0x0 <= 0x6)) (33);        (0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd != 0x0, ());        ();         ( > 0x02) (33);        ( != 0x1, ());        ([] != (0), ());        ([] == ., ());         =  + 0x0260;         ([] == 0xff) {             (([] >> 0x08) > 0x05) (33);             (([] >> 0x10) > 0xa4) (33);             (([] >> 0x18) > 0x05) (33);             (([] >> 0x40) > 0x07) (33);             (([] >> 0x48) > 0x02) (33);             (([] >> 0x50) > 0x03) (33);             (([] >> 0x68) > 0x02) (33);             (([] >> 0x70) > 0x02) (33);             ( > 0x02) (33);             ( != 0) {            }             (()) {            }        }  {             ([] > 0x05) (33);             (([] >> 0x08) > 0xa4) (33);             (([] >> 0x10) > 0x05) (33);             (([] >> 0xf8) > 0x07) (33);        }         ( > 0x05) (33);        ( == 0x04, ());         =  + 0x60;         (( + 0x60) <= (0x20 + ( + 0x20))) {             = 0x40 + ;             (!(0x0 < 0x2)) (50);             (!(0x1 < 0x2)) (50);              = !.;             (. == 0) {                 = !();            }            (!, ());             = 0x0100 + ;            ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(); // staticcall             () {                 =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                (( + .) -  >= 0x140);                 ((( + 0x0140) < ) | (( + 0x0140) > 0xffffffffffffffff)) (65);                 =  + 0x0140;                ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                 (!(() == (0xffffffffffffffffffffffffffffffffffffffff & ) && () == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                    ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                     (!) {                         () {                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                              = 0;                              = 0;                              = 0;                              = 0;                             (((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & )) || ((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                                ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), (0xffffffffffffffffffffffffffffffff)); // call                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x80);                                 = ;                                 = ;                                 = ;                                 = .;                            }                        }                    }  {                         =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                        (( + .) -  >= 0x160);                    }                }  {                    ( ,   ) = ().(); // staticcall                    ();                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    (( + .) -  >= 0x20);                    ( ,   ) = ().(); // staticcall                    ();                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    (( + .) -  >= 0x20);                     (!((0xffffffffffffffffffffffffffffffffffffffff & ) ==  || (0xffffffffffffffffffffffffffffffffffffffff & ) == )) {                        ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                         (!) {                             () {                                ( ,   ) = ().(); // staticcall                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x20);                                ( ,   ) = ().(); // staticcall                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x20);                                  = 0;                                  = 0;                                  = 0;                                  = 0;                                 (((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & )) || ((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                                    ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), (0xffffffffffffffffffffffffffffffff)); // call                                    ();                                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                    (( + .) -  >= 0x80);                                     = ;                                     = ;                                     = ;                                     = .;                                }                            }                        }  {                             =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                            (( + .) -  >= 0x160);                        }                    }  {                        ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(, (), (0xffffffffffffffffffffffffffffffff), (0xffffffffffffffffffffffffffffffff)); // call                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x80);                    }                }            }   () {                 (!(() == (0xffffffffffffffffffffffffffffffffffffffff & ) && () == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                    ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3); // staticcall                     (!) {                         () {                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                        }                    }  {                         =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                        (( + .) -  >= 0x160);                    }                }  {                    ( ,   ) = ().(); // staticcall                    ();                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    (( + .) -  >= 0x20);                    ( ,   ) = ().(); // staticcall                    ();                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                    (( + .) -  >= 0x20);                     (!((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & ) || (0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                        ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3); // staticcall                         (!) {                             () {                                ( ,   ) = ().(); // staticcall                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x20);                                ( ,   ) = ().(); // staticcall                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x20);                            }                        }  {                             =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                            (( + .) -  >= 0x160);                        }                    }  {                        ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(0x14f3, , (), (0xffffffffffffffffffffffffffffffff)); // call                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x80);                    }                }            }  {                ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                 (!) {                     () {                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                          = 0;                          = 0;                          = 0;                          = 0;                         (((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & )) || ((0xffffffffffffffffffffffffffffffffffffffff & ) == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                            ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), (0xffffffffffffffffffffffffffffffff)); // call                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x80);                             = ;                             = ;                             = ;                             = .;                        }                    }                }  {                     =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                    (( + .) -  >= 0x160);                }            }        }    }         ( )    () {         ;    }         ( ,  )   {        (, );    }         ( ,  )   {        (. == , "AccessControl: can only renounce roles for self");         (([][])) {            [][] = ;             (, , .);        }    }         ( ,  )   {        ([.], "Caller is not default admin");        [] =  | ([] & (0xffffffffffffffffffffffff0000000000000000000000000000000000000000));         (, [], );    }         ( )    ( ) {          = !([.]);         (![.]) {             = !([.]);        }        (!, ());          = [];         (!([])) {             = 0x8a08d98cbb218fceb318ecf3abc1ba43d8a7ab0e;        }        ();         ( > 0x05) (33);        ( == 0x04, ());         =  + 0x60;         (( + 0x60) <= (0x20 + ( + 0x20))) {             = 0x40 + ;             (!(0x0 < 0x2)) (50);             (!(0x1 < 0x2)) (50);              = !.;             (. == 0) {                 = !();            }            (!, ());              = 0;             () {                 ( >= 0x2) {                    ;                }                ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(); // staticcall                 (!) {                     () {                         (!(() == (0xffffffffffffffffffffffffffffffffffffffff & ) && () == (0xffffffffffffffffffffffffffffffffffffffff & ))) {                            ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3); // staticcall                             (!) {                                 () {                                    ( ,   ) = ().(); // staticcall                                    ();                                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                    (( + .) -  >= 0x20);                                    ( ,   ) = ().(); // staticcall                                    ();                                     =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                    (( + .) -  >= 0x20);                                }                            }  {                                 =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                                (( + .) -  >= 0x160);                            }                        }  {                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                              = (()) == (());                             (!(() == (()))) {                                 = (()) == (());                            }                             (!) {                                ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3); // staticcall                                 (!) {                                     () {                                        ( ,   ) = ().(); // staticcall                                        ();                                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                        (( + .) -  >= 0x20);                                        ( ,   ) = ().(); // staticcall                                        ();                                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                        (( + .) -  >= 0x20);                                    }                                }  {                                     =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                                    (( + .) -  >= 0x160);                                }                            }  {                                ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(0x14f3, , (), 0xffffffffffffffffffffffffffffffff); // call                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x80);                            }                        }                        ;                    }                    ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                     () {                         =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                        (( + .) -  >= 0x160);                        ;                    }                     () {                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                          = (()) == (());                         (!(() == (()))) {                             = (()) == (());                        }                          = 0;                          = 0;                          = 0;                          = 0;                         () {                            ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), 0xffffffffffffffffffffffffffffffff); // call                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x80);                             = ;                             = ;                             = ;                             = ;                        }                        ;                    }                     (!(!(()))) {                         (!(() > )) {                        }  {                        }                    }  {                    }                }  {                     =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                    (( + .) -  >= 0x140);                     ((( + 0x0140) < ) | (( + 0x0140) > 0xffffffffffffffff)) (65);                     =  + 0x0140;                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                    ( == ( & 0xffffffffffffffffffffffffffffffffffffffff));                      = () == (());                     (() == (())) {                         = () == (());                    }                     (!) {                        ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                         () {                             =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                            (( + .) -  >= 0x160);                            ;                        }                         () {                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                              = (()) == (());                             (!(() == (()))) {                                 = (()) == (());                            }                              = 0;                              = 0;                              = 0;                              = 0;                             () {                                ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), 0xffffffffffffffffffffffffffffffff); // call                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x80);                                 = ;                                 = ;                                 = ;                                 = ;                            }                            ;                        }                    }  {                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                        ( ,   ) = ().(); // staticcall                        ();                         =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                        (( + .) -  >= 0x20);                          = (()) == ;                         (!(() == )) {                             = (()) == ;                        }                         () {                            ( ,   ) = (0x25c9c4b56e820e0dea438b145284f02d9ca9bd52).(, (), 0xffffffffffffffffffffffffffffffff, 0xffffffffffffffffffffffffffffffff); // call                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x80);                            ;                        }                        ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(); // staticcall                         () {                             =  + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (. + 0x1f));                            (( + .) -  >= 0x160);                            ;                        }                         () {                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                            ( ,   ) = ().(); // staticcall                            ();                             =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                            (( + .) -  >= 0x20);                              = (()) == (());                             (!(() == (()))) {                                 = (()) == (());                            }                              = 0;                              = 0;                              = 0;                              = 0;                             () {                                ( ,   ) = (0xfe88dab083964c56429baa01f37ec2265abf1557).(0x14f3, , (), 0xffffffffffffffffffffffffffffffff); // call                                ();                                 =  + ((. + 0x1f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                (( + .) -  >= 0x80);                                 = ;                                 = ;                                 = ;                                 = ;                            }                            ;                        }                    }                     (!(!(()))) {                         (!(() > )) {                        }  {                        }                    }  {                    }                }                 = 0x01 + ;            }             ( != 0x0) {                 =  + 0x64;                 = 0x40 + ;                (!((). < 0), "Address: insufficient balance for call");                ( ,   ) = ().{ : 0 }(, ); // call                  = 0x60;                 (. != 0) {                     =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                     = ;                }                 (!) {                    (!);                     = 0x20;                     = ;                    ("SafeERC20: low-level call failed");                }  {                     (0x0 == ) {                        (.. != 0x0, "Address: call to non-contract");                    }                }                  = (0 == ) ? 1 : 0;                 (0 != ) {                    (((0x20 + ) + ) - (0x20 + ) >= 0x20);                    ( == );                     = ;                }                ( != 0x0, "SafeERC20: ERC20 operation did not succeed");            }             ( != 0x0) {                 =  + 0x64;                 = 0x40 + ;                (!((). < 0), "Address: insufficient balance for call");                 = 0;                ( ,   ) = ().{ : 0 }(, ); // call                  = 0x60;                 (. != 0) {                     =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                     = ;                }                 (!) {                    (!);                     = 0;                    ("SafeERC20: low-level call failed");                }  {                     (0x0 == ) {                        (.. != 0x0, "Address: call to non-contract");                    }                }                  = (0 == ) ? 1 : 0;                 (0 != ) {                    (((0x20 + ) + ) - (0x20 + ) >= 0x20);                    ( == );                     = ;                }                ( != 0x0, "SafeERC20: ERC20 operation did not succeed");            }             = 0x40 + ;             ((([] & 0xffffffffffffffffffffffffffffffffffffffff) != 0x0) && (((0xffffff & ) > 0x0) && ( > 0x0))) {            }             (!()) {                 (!()) {                     (!()) {                         (, (), , );                         .(, );                    }  {                         (!(!(()))) {                             =  + 0x64;                             = 0x40 + ;                            (!((). < 0), "Address: insufficient balance for call");                            ( ,   ) = ().{ : 0 }(, ); // call                              = 0x60;                             (. != 0) {                                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                 = ;                            }                        }  {                            ((0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).. != 0x0);                            ( ,   ) = (0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c).(); // call                            ();                            (!((). < ), "Address: insufficient balance");                            ( ,   ) = ().{ :  }(""); // call                              = 0x60;                             (. != 0) {                                 =  + ((. + 0x3f) & (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0));                                 = ;                            }                            (, "Address: unable to send value, recipient may have reverted");                             (, (), , );                             .(, );                        }                    }                }            }        }    }         ( )    ( ) {         ;          = 0x20 + ( + 0x20);          = 0x08;          = 0 + ((.(, 0xa5)));         () {             =  + 0x60;             (( + 0x60) <= ) {                ;            }             = 0x20 + ;             = (0x08 + ) * (0x01 - ((0x07 + (0x08 + )) / 0x20));             = ((0x07 + (0x08 + )) / 0x20) + ;        }         =  + 0x60;          = 0x02;         (0x02 != 0) {             = 0x40 + (0x20 + );        }         (!(. != 0x0)) (50);         (!(0x01 < .)) (50);          = 0;          =  + 0x40;          =  + 0x20;         () {             (!( < .)) {                ;            }             = 0x01 + ;             =  + 0x20;             = 0x20 + ;        }         .(0x20, ., );    }         ( ,  )   {        (, );    }         (  )   {        (!(((0x04 + ) +  + 0x20) > ..));          = !([.]);         (![.]) {             = !([.]);        }        (!, ());         (!(0x0 < .)) (50);         (.[0 + (0x20 + (0x04 + ))] >> 0xf8) (33);        ((.[0 + (0x20 + (0x04 + ))] >> 0xf8) == 0, ());        (0x1 <= .);        ( <= );        (0x1 + (0x20 + (0x04 + )) + (. - 0x1) - (0x1 + (0x20 + (0x04 + ))) >= 0x60);         ;         ((( + 0x60) < ) | (( + 0x60) > 0xffffffffffffffff)) (65);         =  + 0x60;        ((.[0x01 + (0x20 + (0x04 + ))]) == ((.[0x01 + (0x20 + (0x04 + ))]) & 0xffffffffffffffffffffffffffffffffffffffff));        ((.[(0x01 + (0x20 + (0x04 + ))) + 0x20]) == ((.[(0x01 + (0x20 + (0x04 + ))) + 0x20]) & 0xffffffffffffffffffffffffffffffffffffffff));        (.[(0x01 + (0x20 + (0x04 + ))) + 0x40] == ((.[(0x01 + (0x20 + (0x04 + ))) + 0x40])));        (() < 0x1388, ());         = 0x40 + ;        [(.)] = ((.) | ([(.)] & (0xffffffffffffffffff0000000000000000000000000000000000000000000000))) | (0x010000000000000000000000000000000000000000 * (()));    }         ( )  {        // Decompilation incomplete: helper effect provenance is conservative.         ([] == 0xff) {             (([] >> 0x08) > 0x05) (33);             (([] >> 0x10) > 0xa4) (33);             (([] >> 0x18) > 0x05) (33);             (([] >> 0x40) > 0x07) (33);             (([] >> 0x48) > 0x02) (33);             (([] >> 0x50) > 0x03) (33);             (([] >> 0x68) > 0x02) (33);             (([] >> 0x70) > 0x02) (33);             ( > 0x02) (33);        }  {             = 0xff;             ([] > 0x05) (33);             = ([]) ? 1 : 0;             (([] >> 0x08) > 0xa4) (33);             (([] >> 0x10) > 0x05) (33);             (([] >> 0xf8) > 0x07) (33);        }    }         ( ,  )  {        // Decompilation incomplete: helper effect provenance is conservative.         (!(([][.]) != 0x0)) {             (!(0x14 * 0x2 + 0x2 <= 0xffffffffffffffff)) (65);             ;             =  + (0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + ((0x14 * 0x02) + 0x02))));              = (0x14 * 0x02) + 0x02;             (0x14 * 0x2 + 0x2 != 0x0) {                 = ((0x14 * 0x02) + 0x02) + ( + 0x20);            }             (!(0 < .)) (50);             (!(0x01 < .)) (50);              = (0x14 * 0x02) + 0x01;              = .;             ;             () {                  = ;                 = ;                 ( <= 0x1) {                    ;                }                 (!((0xf & ) < 0x10)) (50);                 (!( < .)) (50);                 (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +  <= 0x1) {                    ;                }                 (!(0x0f & ( >> 0x04) < 0x10)) (50);                 (!((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) < .)) (50);                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + );                 = ( >> 0x04) >> 0x04;                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ;                 =  >> 0x04;            }            ( == 0x0, "Strings: hex length insufficient");             (!(0x20 * 0x2 + 0x2 <= 0xffffffffffffffff)) (65);             =  + (0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + ((0x20 * 0x02) + 0x02))));              = (0x20 * 0x02) + 0x02;             ((0x20 * 0x02) + 0x02 != 0) {                 = ((0x20 * 0x02) + 0x02) + ( + 0x20);            }             (!(0 < .)) (50);             (!(0x01 < .)) (50);             = (0x20 * 0x02) + 0x01;             = ;             ;             () {                  = ;                 = ;                 ( <= 0x1) {                    ;                }                 (!((0xf & ) < 0x10)) (50);                 (!( < .)) (50);                 (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +  <= 0x1) {                    ;                }                 (!(0x0f & ( >> 0x04) < 0x10)) (50);                 (!((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) < .)) (50);                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + );                 = ( >> 0x04) >> 0x04;                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ;                 =  >> 0x04;            }            ( != 0x0, "AccessControl: account 0x\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 is missing role 0x\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");            ("Strings: hex length insufficient");        }         (!(([][]) != 0x0)) {            [][] = ;             (, , .);        }    }         ( ,  )  {        // Decompilation incomplete: helper effect provenance is conservative.         (!(([][.]) != 0x0)) {             (!(0x14 * 0x2 + 0x2 <= 0xffffffffffffffff)) (65);             ;             =  + (0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + ((0x14 * 0x02) + 0x02))));              = (0x14 * 0x02) + 0x02;             (0x14 * 0x2 + 0x2 != 0x0) {                 = ((0x14 * 0x02) + 0x02) + ( + 0x20);            }             (!(0 < .)) (50);             (!(0x01 < .)) (50);              = (0x14 * 0x02) + 0x01;              = .;             ;             () {                  = ;                 = ;                 ( <= 0x1) {                    ;                }                 (!((0xf & ) < 0x10)) (50);                 (!( < .)) (50);                 (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +  <= 0x1) {                    ;                }                 (!(0x0f & ( >> 0x04) < 0x10)) (50);                 (!((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) < .)) (50);                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + );                 = ( >> 0x04) >> 0x04;                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ;                 =  >> 0x04;            }            ( == 0x0, "Strings: hex length insufficient");             (!(0x20 * 0x2 + 0x2 <= 0xffffffffffffffff)) (65);             =  + (0x20 + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 & (0x1f + ((0x20 * 0x02) + 0x02))));              = (0x20 * 0x02) + 0x02;             ((0x20 * 0x02) + 0x02 != 0) {                 = ((0x20 * 0x02) + 0x02) + ( + 0x20);            }             (!(0 < .)) (50);             (!(0x01 < .)) (50);             = (0x20 * 0x02) + 0x01;             = ;             ;             () {                  = ;                 = ;                 ( <= 0x1) {                    ;                }                 (!((0xf & ) < 0x10)) (50);                 (!( < .)) (50);                 (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +  <= 0x1) {                    ;                }                 (!(0x0f & ( >> 0x04) < 0x10)) (50);                 (!((0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ) < .)) (50);                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + (0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + );                 = ( >> 0x04) >> 0x04;                 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + ;                 =  >> 0x04;            }            ( != 0x0, "AccessControl: account 0x\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 is missing role 0x\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");            ("Strings: hex length insufficient");        }         (([][])) {            [][] = ;             (, , .);        }    }        // 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)    // 0x0fe3867c => DEFAULT_PCS_INFINITY_NORMAL_FEE_PIPS()    // 0x1e83409a => claim(address)    // 0x248a9ca3 => getRoleAdmin(bytes32)    // 0x24ea54f4 => GUARDIAN_ROLE()    // 0x2f2ff15d => grantRole(bytes32,address)    // 0x36568abe => renounceRole(bytes32,address)    // 0x54b0476c => setTokenBeneficiary(address,address)    // 0x60a4b76a => MANAGE_ROLE()    // 0x6388eeb7 => delegateClaim(address)    // 0x67d92f04 => CURVE_AUTH_SIGNER_ROLE()    // 0x719f3089 => getLocks(address)    // 0x797669c9 => MODERATOR_ROLE()    // 0x91d14854 => hasRole(bytes32,address)    // 0xa217fddf => DEFAULT_ADMIN_ROLE()    // 0xb22a3410 => VAULT_PORTAL()    // 0xbc778a25 => SALT_LOCK_FEE()    // 0xd547741f => revokeRole(bytes32,address)    // 0xd7b3ec08 => rollv2(bytes)    // 0xe0893e0c => DEFAULT_V4_NORMAL_FEE_PIPS()    // 0xeae8a630 => TOKEN_FLAP_FEE_SETTER_ROLE()    // 0xfa4f8931 => DEFAULT_V4_TICK_SPACING()}