solc-0.8.36-fakeopcode 0x00000000000c2e074ec69a0dfb2997ba6c7d2e1e optimized-low-runs

2822 bytes

608060405234801561000f575f5ffd5b50600436106100ad575f3560e01c80630178b8bf146100b157806302571be3146100da57806306ab5923146100ed57806314ab90381461010e57806316a25cbd146101235780631896f70a146101435780635b0fc9c3146101565780635ef2c7f014610169578063a22cb4651461017c578063b83f86631461018f578063cf408823146101ba578063e985e9c5146101cd578063f79fe53814610218575b5f5ffd5b6100c46100bf366004610892565b61022b565b6040516100d191906108a9565b60405180910390f35b6100c46100e8366004610892565b6102ca565b6101006100fb3660046108d3565b610312565b6040519081526020016100d1565b61012161011c36600461091d565b6103d8565b005b610136610131366004610892565b61048b565b6040516100d1919061094b565b61012161015136600461095e565b61052a565b61012161016436600461095e565b6105d2565b610121610177366004610981565b61066b565b61012161018a3660046109dc565b61068c565b6002546101a2906001600160a01b031681565b6040516001600160a01b0390911681526020016100d1565b6101216101c8366004610a0c565b6106f7565b6102086101db366004610a5c565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205460ff1690565b60405190151581526020016100d1565b610208610226366004610892565b610712565b5f61023582610712565b6102ab57600254604051630178b8bf60e01b8152600481018490526001600160a01b0390911690630178b8bf906024015b602060405180830381865afa158015610281573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a59190610a88565b92915050565b5f828152602081905260409020600101546001600160a01b03166102a5565b5f6102d482610712565b610309576002546040516302571be360e01b8152600481018490526001600160a01b03909116906302571be390602401610266565b6102a58261072e565b5f8381526020819052604081205484906001600160a01b03163381148061035b57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610363575f5ffd5b604080516020808201899052818301889052825180830384018152606090920190925280519101206103958186610754565b85877fce0457fe73731f824cc272376169235128c118b49d344817417c6d108d155e82876040516103c691906108a9565b60405180910390a39695505050505050565b5f8281526020819052604090205482906001600160a01b03163381148061042157506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610429575f5ffd5b835f516020610ae65f395f51905f5284604051610446919061094b565b60405180910390a250505f9182526020829052604090912060010180546001600160401b03909216600160a01b02600160a01b600160e01b0319909216919091179055565b5f61049582610712565b610504576002546040516316a25cbd60e01b8152600481018490526001600160a01b03909116906316a25cbd90602401602060405180830381865afa1580156104e0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a59190610aaa565b5f82815260208190526040902060010154600160a01b90046001600160401b03166102a5565b5f8281526020819052604090205482906001600160a01b03163381148061057357506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b61057b575f5ffd5b835f516020610ac65f395f51905f528460405161059891906108a9565b60405180910390a250505f9182526020829052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b5f8281526020819052604090205482906001600160a01b03163381148061061b57506001600160a01b0381165f90815260016020908152604080832033845290915290205460ff165b610623575f5ffd5b61062d8484610754565b837fd4735d920b0f87494915f556dd9b54c8f309026070caea5c737245152564d2668460405161065d91906108a9565b60405180910390a250505050565b5f610677868686610312565b9050610684818484610796565b505050505050565b335f8181526001602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61070184846105d2565b61070c848383610796565b50505050565b5f908152602081905260409020546001600160a01b0316151590565b5f818152602081905260408120546001600160a01b03163081036102a557505f92915050565b806001600160a01b0381166107665750305b5f83815260208190526040902080546001600160a01b0319166001600160a01b038316179055505050565b505050565b5f838152602081905260409020600101546001600160a01b0383811691161461080a575f838152602081905260409081902060010180546001600160a01b0319166001600160a01b0385161790555183905f516020610ac65f395f51905f52906108019085906108a9565b60405180910390a25b5f838152602081905260409020600101546001600160401b03828116600160a01b9092041614610791575f83815260208190526040908190206001018054600160a01b600160e01b031916600160a01b6001600160401b038516021790555183905f516020610ae65f395f51905f529061088590849061094b565b60405180910390a2505050565b5f602082840312156108a2575f5ffd5b5035919050565b6001600160a01b03909116815260200190565b6001600160a01b03811681146108d0575f5ffd5b50565b5f5f5f606084860312156108e5575f5ffd5b833592506020840135915060408401356108fe816108bc565b809150509250925092565b6001600160401b03811681146108d0575f5ffd5b5f5f6040838503121561092e575f5ffd5b82359150602083013561094081610909565b809150509250929050565b6001600160401b03909116815260200190565b5f5f6040838503121561096f575f5ffd5b823591506020830135610940816108bc565b5f5f5f5f5f60a08688031215610995575f5ffd5b853594506020860135935060408601356109ae816108bc565b925060608601356109be816108bc565b915060808601356109ce81610909565b809150509295509295909350565b5f5f604083850312156109ed575f5ffd5b82356109f8816108bc565b915060208301358015158114610940575f5ffd5b5f5f5f5f60808587031215610a1f575f5ffd5b843593506020850135610a31816108bc565b92506040850135610a41816108bc565b91506060850135610a5181610909565b939692955090935050565b5f5f60408385031215610a6d575f5ffd5b8235610a78816108bc565b91506020830135610940816108bc565b5f60208284031215610a98575f5ffd5b8151610aa3816108bc565b9392505050565b5f60208284031215610aba575f5ffd5b8151610aa38161090956fe335721b01866dc23fbee8b6b2c7b1e14d6f05c28cd35a2c934239f94095602a01d4f9bbfc9cab89d66e1a1562f2233ccbf1308cb4f63de2ead5787adddb8fa68