Files
assetxContracts/out/Ownable.sol/Ownable.json
2025-12-23 14:05:41 +08:00

1 line
37 KiB
JSON

{"abi":[{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"owner()":"8da5cb5b","renounceOwnership()":"715018a6","transferOwnership(address)":"f2fde38b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. The initial owner is set to the address provided by the deployer. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"errors\":{\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the address provided by the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/access/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.30+commit.73712a01"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"}],"devdoc":{"kind":"dev","methods":{"constructor":{"details":"Initializes the contract setting the address provided by the deployer as the initial owner."},"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@ensdomains/=node_modules/@ensdomains/","@openzeppelin/=node_modules/@openzeppelin/","forge-std/=lib/forge-std/src/","hardhat/=node_modules/hardhat/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/@openzeppelin/contracts/access/Ownable.sol":"Ownable"},"evmVersion":"prague","libraries":{},"viaIR":true},"sources":{"node_modules/@openzeppelin/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"node_modules/@openzeppelin/contracts/access/Ownable.sol","id":11935,"exportedSymbols":{"Context":[13428],"Ownable":[11934]},"nodeType":"SourceUnit","src":"102:3000:31","nodes":[{"id":11788,"nodeType":"PragmaDirective","src":"102:24:31","nodes":[],"literals":["solidity","^","0.8",".20"]},{"id":11790,"nodeType":"ImportDirective","src":"128:45:31","nodes":[],"absolutePath":"node_modules/@openzeppelin/contracts/utils/Context.sol","file":"../utils/Context.sol","nameLocation":"-1:-1:-1","scope":11935,"sourceUnit":13429,"symbolAliases":[{"foreign":{"id":11789,"name":"Context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13428,"src":"136:7:31","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":11934,"nodeType":"ContractDefinition","src":"663:2438:31","nodes":[{"id":11795,"nodeType":"VariableDeclaration","src":"706:22:31","nodes":[],"constant":false,"mutability":"mutable","name":"_owner","nameLocation":"722:6:31","scope":11934,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11794,"name":"address","nodeType":"ElementaryTypeName","src":"706:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"private"},{"id":11800,"nodeType":"ErrorDefinition","src":"825:50:31","nodes":[],"documentation":{"id":11796,"nodeType":"StructuredDocumentation","src":"735:85:31","text":" @dev The caller account is not authorized to perform an operation."},"errorSelector":"118cdaa7","name":"OwnableUnauthorizedAccount","nameLocation":"831:26:31","parameters":{"id":11799,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11798,"mutability":"mutable","name":"account","nameLocation":"866:7:31","nodeType":"VariableDeclaration","scope":11800,"src":"858:15:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11797,"name":"address","nodeType":"ElementaryTypeName","src":"858:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"857:17:31"}},{"id":11805,"nodeType":"ErrorDefinition","src":"968:41:31","nodes":[],"documentation":{"id":11801,"nodeType":"StructuredDocumentation","src":"881:82:31","text":" @dev The owner is not a valid owner account. (eg. `address(0)`)"},"errorSelector":"1e4fbdf7","name":"OwnableInvalidOwner","nameLocation":"974:19:31","parameters":{"id":11804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11803,"mutability":"mutable","name":"owner","nameLocation":"1002:5:31","nodeType":"VariableDeclaration","scope":11805,"src":"994:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11802,"name":"address","nodeType":"ElementaryTypeName","src":"994:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"993:15:31"}},{"id":11811,"nodeType":"EventDefinition","src":"1015:84:31","nodes":[],"anonymous":false,"eventSelector":"8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","name":"OwnershipTransferred","nameLocation":"1021:20:31","parameters":{"id":11810,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11807,"indexed":true,"mutability":"mutable","name":"previousOwner","nameLocation":"1058:13:31","nodeType":"VariableDeclaration","scope":11811,"src":"1042:29:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11806,"name":"address","nodeType":"ElementaryTypeName","src":"1042:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":11809,"indexed":true,"mutability":"mutable","name":"newOwner","nameLocation":"1089:8:31","nodeType":"VariableDeclaration","scope":11811,"src":"1073:24:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11808,"name":"address","nodeType":"ElementaryTypeName","src":"1073:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1041:57:31"}},{"id":11837,"nodeType":"FunctionDefinition","src":"1225:187:31","nodes":[],"body":{"id":11836,"nodeType":"Block","src":"1259:153:31","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":11822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":11817,"name":"initialOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11814,"src":"1273:12:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":11820,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1297:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":11819,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1289:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":11818,"name":"address","nodeType":"ElementaryTypeName","src":"1289:7:31","typeDescriptions":{}}},"id":11821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1289:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1273:26:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":11831,"nodeType":"IfStatement","src":"1269:95:31","trueBody":{"id":11830,"nodeType":"Block","src":"1301:63:31","statements":[{"errorCall":{"arguments":[{"arguments":[{"hexValue":"30","id":11826,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1350:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":11825,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1342:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":11824,"name":"address","nodeType":"ElementaryTypeName","src":"1342:7:31","typeDescriptions":{}}},"id":11827,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1342:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11823,"name":"OwnableInvalidOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11805,"src":"1322:19:31","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$_t_error_$","typeString":"function (address) pure returns (error)"}},"id":11828,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1322:31:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":11829,"nodeType":"RevertStatement","src":"1315:38:31"}]}},{"expression":{"arguments":[{"id":11833,"name":"initialOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11814,"src":"1392:12:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11832,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11933,"src":"1373:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":11834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1373:32:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":11835,"nodeType":"ExpressionStatement","src":"1373:32:31"}]},"documentation":{"id":11812,"nodeType":"StructuredDocumentation","src":"1105:115:31","text":" @dev Initializes the contract setting the address provided by the deployer as the initial owner."},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":11815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11814,"mutability":"mutable","name":"initialOwner","nameLocation":"1245:12:31","nodeType":"VariableDeclaration","scope":11837,"src":"1237:20:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11813,"name":"address","nodeType":"ElementaryTypeName","src":"1237:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1236:22:31"},"returnParameters":{"id":11816,"nodeType":"ParameterList","parameters":[],"src":"1259:0:31"},"scope":11934,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":11845,"nodeType":"ModifierDefinition","src":"1500:62:31","nodes":[],"body":{"id":11844,"nodeType":"Block","src":"1521:41:31","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":11840,"name":"_checkOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11871,"src":"1531:11:31","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":11841,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1531:13:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":11842,"nodeType":"ExpressionStatement","src":"1531:13:31"},{"id":11843,"nodeType":"PlaceholderStatement","src":"1554:1:31"}]},"documentation":{"id":11838,"nodeType":"StructuredDocumentation","src":"1418:77:31","text":" @dev Throws if called by any account other than the owner."},"name":"onlyOwner","nameLocation":"1509:9:31","parameters":{"id":11839,"nodeType":"ParameterList","parameters":[],"src":"1518:2:31"},"virtual":false,"visibility":"internal"},{"id":11854,"nodeType":"FunctionDefinition","src":"1638:85:31","nodes":[],"body":{"id":11853,"nodeType":"Block","src":"1693:30:31","nodes":[],"statements":[{"expression":{"id":11851,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11795,"src":"1710:6:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":11850,"id":11852,"nodeType":"Return","src":"1703:13:31"}]},"documentation":{"id":11846,"nodeType":"StructuredDocumentation","src":"1568:65:31","text":" @dev Returns the address of the current owner."},"functionSelector":"8da5cb5b","implemented":true,"kind":"function","modifiers":[],"name":"owner","nameLocation":"1647:5:31","parameters":{"id":11847,"nodeType":"ParameterList","parameters":[],"src":"1652:2:31"},"returnParameters":{"id":11850,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11849,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":11854,"src":"1684:7:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11848,"name":"address","nodeType":"ElementaryTypeName","src":"1684:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1683:9:31"},"scope":11934,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":11871,"nodeType":"FunctionDefinition","src":"1796:162:31","nodes":[],"body":{"id":11870,"nodeType":"Block","src":"1841:117:31","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":11862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":11858,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11854,"src":"1855:5:31","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":11859,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1855:7:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":11860,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13410,"src":"1866:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":11861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1866:12:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1855:23:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":11869,"nodeType":"IfStatement","src":"1851:101:31","trueBody":{"id":11868,"nodeType":"Block","src":"1880:72:31","statements":[{"errorCall":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":11864,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13410,"src":"1928:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":11865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1928:12:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11863,"name":"OwnableUnauthorizedAccount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11800,"src":"1901:26:31","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$_t_error_$","typeString":"function (address) pure returns (error)"}},"id":11866,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1901:40:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":11867,"nodeType":"RevertStatement","src":"1894:47:31"}]}}]},"documentation":{"id":11855,"nodeType":"StructuredDocumentation","src":"1729:62:31","text":" @dev Throws if the sender is not the owner."},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOwner","nameLocation":"1805:11:31","parameters":{"id":11856,"nodeType":"ParameterList","parameters":[],"src":"1816:2:31"},"returnParameters":{"id":11857,"nodeType":"ParameterList","parameters":[],"src":"1841:0:31"},"scope":11934,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":11885,"nodeType":"FunctionDefinition","src":"2293:101:31","nodes":[],"body":{"id":11884,"nodeType":"Block","src":"2347:47:31","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":11880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2384:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":11879,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2376:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":11878,"name":"address","nodeType":"ElementaryTypeName","src":"2376:7:31","typeDescriptions":{}}},"id":11881,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2376:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11877,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11933,"src":"2357:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":11882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2357:30:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":11883,"nodeType":"ExpressionStatement","src":"2357:30:31"}]},"documentation":{"id":11872,"nodeType":"StructuredDocumentation","src":"1964:324:31","text":" @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner."},"functionSelector":"715018a6","implemented":true,"kind":"function","modifiers":[{"id":11875,"kind":"modifierInvocation","modifierName":{"id":11874,"name":"onlyOwner","nameLocations":["2337:9:31"],"nodeType":"IdentifierPath","referencedDeclaration":11845,"src":"2337:9:31"},"nodeType":"ModifierInvocation","src":"2337:9:31"}],"name":"renounceOwnership","nameLocation":"2302:17:31","parameters":{"id":11873,"nodeType":"ParameterList","parameters":[],"src":"2319:2:31"},"returnParameters":{"id":11876,"nodeType":"ParameterList","parameters":[],"src":"2347:0:31"},"scope":11934,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":11913,"nodeType":"FunctionDefinition","src":"2543:215:31","nodes":[],"body":{"id":11912,"nodeType":"Block","src":"2613:145:31","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":11898,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":11893,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11888,"src":"2627:8:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":11896,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2647:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":11895,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2639:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":11894,"name":"address","nodeType":"ElementaryTypeName","src":"2639:7:31","typeDescriptions":{}}},"id":11897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2639:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2627:22:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":11907,"nodeType":"IfStatement","src":"2623:91:31","trueBody":{"id":11906,"nodeType":"Block","src":"2651:63:31","statements":[{"errorCall":{"arguments":[{"arguments":[{"hexValue":"30","id":11902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2700:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":11901,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2692:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":11900,"name":"address","nodeType":"ElementaryTypeName","src":"2692:7:31","typeDescriptions":{}}},"id":11903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2692:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11899,"name":"OwnableInvalidOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11805,"src":"2672:19:31","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$_t_error_$","typeString":"function (address) pure returns (error)"}},"id":11904,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2672:31:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_error","typeString":"error"}},"id":11905,"nodeType":"RevertStatement","src":"2665:38:31"}]}},{"expression":{"arguments":[{"id":11909,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11888,"src":"2742:8:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":11908,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11933,"src":"2723:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":11910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2723:28:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":11911,"nodeType":"ExpressionStatement","src":"2723:28:31"}]},"documentation":{"id":11886,"nodeType":"StructuredDocumentation","src":"2400:138:31","text":" @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner."},"functionSelector":"f2fde38b","implemented":true,"kind":"function","modifiers":[{"id":11891,"kind":"modifierInvocation","modifierName":{"id":11890,"name":"onlyOwner","nameLocations":["2603:9:31"],"nodeType":"IdentifierPath","referencedDeclaration":11845,"src":"2603:9:31"},"nodeType":"ModifierInvocation","src":"2603:9:31"}],"name":"transferOwnership","nameLocation":"2552:17:31","parameters":{"id":11889,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11888,"mutability":"mutable","name":"newOwner","nameLocation":"2578:8:31","nodeType":"VariableDeclaration","scope":11913,"src":"2570:16:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11887,"name":"address","nodeType":"ElementaryTypeName","src":"2570:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2569:18:31"},"returnParameters":{"id":11892,"nodeType":"ParameterList","parameters":[],"src":"2613:0:31"},"scope":11934,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":11933,"nodeType":"FunctionDefinition","src":"2912:187:31","nodes":[],"body":{"id":11932,"nodeType":"Block","src":"2975:124:31","nodes":[],"statements":[{"assignments":[11920],"declarations":[{"constant":false,"id":11920,"mutability":"mutable","name":"oldOwner","nameLocation":"2993:8:31","nodeType":"VariableDeclaration","scope":11932,"src":"2985:16:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11919,"name":"address","nodeType":"ElementaryTypeName","src":"2985:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":11922,"initialValue":{"id":11921,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11795,"src":"3004:6:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2985:25:31"},{"expression":{"id":11925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":11923,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11795,"src":"3020:6:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":11924,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11916,"src":"3029:8:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3020:17:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":11926,"nodeType":"ExpressionStatement","src":"3020:17:31"},{"eventCall":{"arguments":[{"id":11928,"name":"oldOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11920,"src":"3073:8:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":11929,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11916,"src":"3083:8:31","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":11927,"name":"OwnershipTransferred","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":11811,"src":"3052:20:31","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":11930,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3052:40:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":11931,"nodeType":"EmitStatement","src":"3047:45:31"}]},"documentation":{"id":11914,"nodeType":"StructuredDocumentation","src":"2764:143:31","text":" @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction."},"implemented":true,"kind":"function","modifiers":[],"name":"_transferOwnership","nameLocation":"2921:18:31","parameters":{"id":11917,"nodeType":"ParameterList","parameters":[{"constant":false,"id":11916,"mutability":"mutable","name":"newOwner","nameLocation":"2948:8:31","nodeType":"VariableDeclaration","scope":11933,"src":"2940:16:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":11915,"name":"address","nodeType":"ElementaryTypeName","src":"2940:7:31","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2939:18:31"},"returnParameters":{"id":11918,"nodeType":"ParameterList","parameters":[],"src":"2975:0:31"},"scope":11934,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"abstract":true,"baseContracts":[{"baseName":{"id":11792,"name":"Context","nameLocations":["692:7:31"],"nodeType":"IdentifierPath","referencedDeclaration":13428,"src":"692:7:31"},"id":11793,"nodeType":"InheritanceSpecifier","src":"692:7:31"}],"canonicalName":"Ownable","contractDependencies":[],"contractKind":"contract","documentation":{"id":11791,"nodeType":"StructuredDocumentation","src":"175:487:31","text":" @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n The initial owner is set to the address provided by the deployer. This can\n later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner."},"fullyImplemented":true,"linearizedBaseContracts":[11934,13428],"name":"Ownable","nameLocation":"681:7:31","scope":11935,"usedErrors":[11800,11805],"usedEvents":[11811]}],"license":"MIT"},"id":31}