475 lines
32 KiB
JSON
475 lines
32 KiB
JSON
{
|
|
"_format": "hh-sol-artifact-1",
|
|
"contractName": "ISOCurrencyManager",
|
|
"sourceName": "contracts/bridge/trustless/integration/ISOCurrencyManager.sol",
|
|
"abi": [
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_reserveSystem",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "constructor"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "CurrencyNotRegistered",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "InvalidCurrencyCode",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "InvalidXauRate",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "owner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "OwnableInvalidOwner",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "account",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "OwnableUnauthorizedAccount",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "ReentrancyGuardReentrantCall",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "XauNotSet",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "ZeroAddress",
|
|
"type": "error"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": false,
|
|
"internalType": "string",
|
|
"name": "fromCurrency",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "string",
|
|
"name": "toCurrency",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "fromAmount",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "toAmount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "CurrencyConverted",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "address",
|
|
"name": "tokenAddress",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "uint256",
|
|
"name": "xauRate",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"indexed": false,
|
|
"internalType": "bool",
|
|
"name": "isTokenized",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"name": "CurrencyRegistered",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"anonymous": false,
|
|
"inputs": [
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "previousOwner",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"indexed": true,
|
|
"internalType": "address",
|
|
"name": "newOwner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "OwnershipTransferred",
|
|
"type": "event"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string[]",
|
|
"name": "currencyCodes",
|
|
"type": "string[]"
|
|
},
|
|
{
|
|
"internalType": "address[]",
|
|
"name": "tokenAddresses",
|
|
"type": "address[]"
|
|
},
|
|
{
|
|
"internalType": "uint256[]",
|
|
"name": "xauRates",
|
|
"type": "uint256[]"
|
|
}
|
|
],
|
|
"name": "batchRegisterCurrencies",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "fromCurrency",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "string",
|
|
"name": "toCurrency",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "amount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "convertViaXAU",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "targetAmount",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "currencies",
|
|
"outputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "tokenAddress",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "xauRate",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "isActive",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "isTokenized",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "getAllSupportedCurrencies",
|
|
"outputs": [
|
|
{
|
|
"internalType": "string[]",
|
|
"name": "",
|
|
"type": "string[]"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "getCurrencyAddress",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "getCurrencyInfo",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "tokenAddress",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "xauRate",
|
|
"type": "uint256"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "isActive",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"internalType": "bool",
|
|
"name": "isTokenized",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "fromCurrency",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "string",
|
|
"name": "toCurrency",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"name": "getCurrencyRate",
|
|
"outputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "rate",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "owner",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "address",
|
|
"name": "tokenAddress",
|
|
"type": "address"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "xauRate",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "registerCurrency",
|
|
"outputs": [
|
|
{
|
|
"internalType": "bool",
|
|
"name": "",
|
|
"type": "bool"
|
|
}
|
|
],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "renounceOwnership",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "reserveSystem",
|
|
"outputs": [
|
|
{
|
|
"internalType": "contract IReserveSystem",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "_xauAddress",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "setXAUAddress",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "supportedCurrencies",
|
|
"outputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "newOwner",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"name": "transferOwnership",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [
|
|
{
|
|
"internalType": "string",
|
|
"name": "currencyCode",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"internalType": "uint256",
|
|
"name": "newXauRate",
|
|
"type": "uint256"
|
|
}
|
|
],
|
|
"name": "updateXauRate",
|
|
"outputs": [],
|
|
"stateMutability": "nonpayable",
|
|
"type": "function"
|
|
},
|
|
{
|
|
"inputs": [],
|
|
"name": "xauAddress",
|
|
"outputs": [
|
|
{
|
|
"internalType": "address",
|
|
"name": "",
|
|
"type": "address"
|
|
}
|
|
],
|
|
"stateMutability": "view",
|
|
"type": "function"
|
|
}
|
|
],
|
|
"bytecode": "0x60a0346100e457601f61162a38819003918201601f19168301916001600160401b038311848410176100e9578084926020946040528339810103126100e457516001600160a01b03808216918290036100e45733156100cb576000543360018060a01b0319821617600055604051913391167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a36001805581156100bc575060805260405161152a90816101008239608051816105ae0152f35b63d92e233d60e01b8152600490fd5b604051631e4fbdf760e01b815260006004820152602490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6040608081526004908136101561001557600080fd5b600091823560e01c8063086e11aa14610cbb5780631ea48ffa14610bfe57806366f66f4914610b21578063715018a614610ac7578063756853c214610a9e57806375bc71d3146109b65780637880c586146107805780637fd88959146105dd57806381c4af5a146105995780638da5cb5b1461057157806397bf7935146104ff578063b084b0421461030c578063c8f5bc061461024b578063d184b648146101b1578063eee6ec881461015a5763f2fde38b146100d157600080fd5b34610156576020366003190112610156576100ea61119b565b906100f36114c8565b6001600160a01b0391821692831561014057505082546001600160a01b0319811683178455167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b51631e4fbdf760e01b8152908101849052602490fd5b8280fd5b50346101565760203660031901126101565761017461119b565b61017c6114c8565b6001600160a01b03169182156101a45750506001600160601b0360a01b600254161760025580f35b5163d92e233d60e01b8152fd5b50903461015657806003193601126101565781356001600160401b038111610247576101e09036908401611140565b916102046020602435946101f26114c8565b818551938285809451938492016111b1565b81016003815203019020916102198354611246565b1561023a57831561022d5750506002015580f35b5163249e953360e21b8152fd5b51634e45734760e01b8152fd5b8380fd5b509134610309576020366003190112610309578235906001600160401b038211610309575060206102856102e79461029793369101611140565b818451938285809451938492016111b1565b8101600381520301902060ff8251926102bb846102b48186611280565b0385611108565b60018060a01b03600184015416926003600282015491015491805196879660a0885260a08801906111d4565b9460208701528501528181161515606085015260081c16151560808301520390f35b80fd5b508290346104fb5760603660031901126104fb576001600160401b039281358481116102475761033f9036908401611140565b93602435908111610247576103579036908401611140565b9260443592825186818098516103738160209b8c8096016111b1565b810160038152030190209383519561038a876110d7565b84516103a18161039a818a611280565b0382611108565b87526103f38860018060a01b03928360018a015416828b015260ff600360028b01549a8a8d019b8c520154818116151560608d015260081c16151560808b0152818851938285809451938492016111b1565b810160038152030190209685519061040a826110d7565b865161041a8161039a818d611280565b82528260018a0154168a83015260ff600360028b01549a8985019b8c5201548181161515606085015260081c16151560808301525151156104eb575151156104db5760025416156104cc57670de0b6b3a764000094858202918083048714901517156104b9575161048a916114a8565b9451948581029581870414901517156104a65750505191048152f35b634e487b7160e01b825260119052602490fd5b634e487b7160e01b845260118352602484fd5b50825163048f4b2b60e41b8152fd5b8451634e45734760e01b81528390fd5b8551634e45734760e01b81528490fd5b5080fd5b50823461030957602036600319011261030957813582548110156104fb57610526906111f9565b92909261055f57835161055b9085610549826105428189611280565b0383611108565b519182916020835260208301906111d4565b0390f35b634e487b7160e01b8252819052602490fd5b5050346104fb57816003193601126104fb57905490516001600160a01b039091168152602090f35b5050346104fb57816003193601126104fb57517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b509190346104fb57806003193601126104fb576001600160401b039183358381116104fb5761060f9036908601611140565b926024359081116104fb576106279036908601611140565b8251848180965161063e816020998a8096016111b1565b8101600381520301902090835190610655826110d7565b84516106658161039a8187611280565b82526106b78660018060a01b0392836001870154168286015260ff60036002880154978a880198895201548181161515606088015260081c1615156080860152818851938285809451938492016111b1565b81016003815203019020918551916106ce836110d7565b86516106de8161039a8188611280565b83526001840154168783015260ff600360028501549488850195865201548181161515606085015260081c161515608083015251511561077057515115610760575191670de0b6b3a76400009283810293818504149015171561074d575051610746916114a8565b9051908152f35b634e487b7160e01b815260118652602490fd5b8351634e45734760e01b81528690fd5b8451634e45734760e01b81528790fd5b5091346103095760603660031901126103095782356001600160401b0381116104fb576107b09036908501611140565b602435936001600160a01b039283861692918387036104fb57604435936107d56114c8565b8351156109a757841561099857856002541615610989579083828893151597888551610800816110d7565b84815260209360208201908152878201908b82526060830194600199600187526080850195865251808951996020019961083b81838d6111b1565b8101600381520360200190209351610853908561132a565b600184019151166001600160601b0360a01b825416179055516002820155600301915115159082549051151560081b61ff00169160ff169061ffff191617179055849254925b83811061091f575b5050505050946109076108dd7ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da13894936020981561091157611488565b86516001600160a01b03909316835260208301939093529315156040820152909281906060820190565b0390a25160018152f35b61091a8161143c565b611488565b61039a61093a61092e836111f9565b508c5192838092611280565b8281519101208751842014610950578401610899565b5092935061090792506108dd915084905060207ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da1386108a1565b50855163048f4b2b60e41b8152fd5b50855163249e953360e21b8152fd5b508551630993197f60e11b8152fd5b508290346104fb57816003193601126104fb578054916109d583611129565b6109e185519182611108565b838152602093848201809484527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b84915b838310610a7357505050508451938085019181865251809252858501958260051b8601019392955b828710610a475785850386f35b909192938280610a63600193603f198a820301865288516111d4565b9601920196019592919092610a3a565b60018881928b9a97989a51610a8c8161039a8189611280565b81520192019201919096949396610a12565b5050346104fb57816003193601126104fb5760025490516001600160a01b039091168152602090f35b8334610309578060031936011261030957610ae06114c8565b80546001600160a01b03198116825581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b509134610309576020366003190112610309578235906001600160401b03821161030957506020610285610b589236908601611140565b8101600381520301902090805190610b6f826110d7565b805190610b80826105428187611280565b81835260018060a01b038060018601541660208501908152600360028701549684870197885201549360ff6080606088019782881615158952019560081c16151585525115610bee576080965051169351925115159151151592815194855260208501528301526060820152f35b8251634e45734760e01b81528790fd5b509134610309576020366003190112610309578235906001600160401b03821161030957506020610285610c359236908601611140565b81016003815203019020815190610c4b826110d7565b8251610c5b8161039a8185611280565b80835260018060a01b0392608060ff600386600187015416956020850196875260028101548986015201548181161515606085015260081c1615159101525115610cac576020935051169051908152f35b505051634e45734760e01b8152fd5b5090346101565760609160606003193601126102475780356001600160401b039485821161030957366023830112156103095760249280830135610cfe81611129565b93610d0b87519586611108565b818552602091868387019160051b830101913683116110d357878101915b8383106110ad57505050508435948886116102475736602387011215610247578583013595610d5787611129565b96610d6489519889611108565b808852828489019160051b83010191368311611086578301905b82821061108a57505050604435988911610247573660238a011215610247578883013598610dab8a611129565b99610db889519b8c611108565b808b5282848c019160051b830101913683116110865783859101915b8383106110765750505050610de76114c8565b845186518114908161106b575b501561101e5750825b845181101561101a57849087878b6001600160a01b0384868e8984610e228589611316565b51161515978892610e338686611316565b519187610e40888c611316565b51169084610e4e898c611316565b5193825195610e5c876110d7565b86528186019384528286019485528501976001998a8a5260808701988952610e8391611316565b519151828193519283910191610e98926111b1565b81019481600396878152030190209251610eb2908461132a565b878784019151166001600160601b0360a01b82541617905551600282015501915115159082549051151560081b61ff00169160ff169061ffff19161717905589908d8b8b54915b828210610faa575b50505050610f5f610f58877ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da138969594610f5082610f498160019e610f899915610f9257611316565b5198611316565b511694611316565b5193611488565b8d516001600160a01b03909316835260208301939093529315156040820152909281906060820190565b0390a201610dfd565b610fa5610f9f8383611316565b5161143c565b611316565b610fd061039a91610fc48496989a9597999b9c9d946111f9565b50905192838092611280565b8b8151910120610fe08b83611316565b518c8151910120146110005750508201918b97969593918d95938f610ef9565b9897969095909450929150610f5f9050610f58878f610f01565b8380f35b6084935060239187519362461bcd60e51b85528401528201527f49534f43757272656e63794d616e616765723a206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152fd5b905089511438610df4565b8235815291810191859101610dd4565b8680fd5b81356001600160a01b03811681036110a9578152908401908401610d7e565b8780fd5b82358c81116110a95785916110c883928c3691870101611140565b815201920191610d29565b8580fd5b60a081019081106001600160401b038211176110f257604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176110f257604052565b6001600160401b0381116110f25760051b60200190565b81601f82011215611196578035906001600160401b0382116110f25760405192611174601f8401601f191660200185611108565b8284526020838301011161119657816000926020809301838601378301015290565b600080fd5b600435906001600160a01b038216820361119657565b60005b8381106111c45750506000910152565b81810151838201526020016111b4565b906020916111ed815180928185528580860191016111b1565b601f01601f1916010190565b6004548110156112305760046000527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c92168015611276575b602083101461126057565b634e487b7160e01b600052602260045260246000fd5b91607f1691611255565b80546000939261128f82611246565b918282526020936001916001811690816000146112f757506001146112b6575b5050505050565b90939495506000929192528360002092846000945b8386106112e3575050505001019038808080806112af565b8054858701830152940193859082016112cb565b60ff19168685015250505090151560051b0101915038808080806112af565b80518210156112305760209160051b010190565b91909182516001600160401b0381116110f2576113478254611246565b601f81116113f2575b50602080601f831160011461138d575081929394600092611382575b50508160011b916000199060031b1c1916179055565b01519050388061136c565b90601f19831695846000526020600020926000905b8882106113da575050836001959697106113c1575b505050811b019055565b015160001960f88460031b161c191690553880806113b7565b806001859682949686015181550195019301906113a2565b6000836000526020600020601f840160051c81019260208510611432575b601f0160051c01915b828110611427575050611350565b818155600101611419565b9092508290611410565b600454680100000000000000008110156110f25780600161146092016004556111f9565b919091611472576114709161132a565b565b634e487b7160e01b600052600060045260246000fd5b6114a0906020604051928284809451938492016111b1565b810103902090565b81156114b2570490565b634e487b7160e01b600052601260045260246000fd5b6000546001600160a01b031633036114dc57565b60405163118cdaa760e01b8152336004820152602490fdfea264697066735822122089add242a8d18415a889fcbb744088539540077826b773e70168f5f9b4a0b21964736f6c63430008160033",
|
|
"deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600091823560e01c8063086e11aa14610cbb5780631ea48ffa14610bfe57806366f66f4914610b21578063715018a614610ac7578063756853c214610a9e57806375bc71d3146109b65780637880c586146107805780637fd88959146105dd57806381c4af5a146105995780638da5cb5b1461057157806397bf7935146104ff578063b084b0421461030c578063c8f5bc061461024b578063d184b648146101b1578063eee6ec881461015a5763f2fde38b146100d157600080fd5b34610156576020366003190112610156576100ea61119b565b906100f36114c8565b6001600160a01b0391821692831561014057505082546001600160a01b0319811683178455167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b51631e4fbdf760e01b8152908101849052602490fd5b8280fd5b50346101565760203660031901126101565761017461119b565b61017c6114c8565b6001600160a01b03169182156101a45750506001600160601b0360a01b600254161760025580f35b5163d92e233d60e01b8152fd5b50903461015657806003193601126101565781356001600160401b038111610247576101e09036908401611140565b916102046020602435946101f26114c8565b818551938285809451938492016111b1565b81016003815203019020916102198354611246565b1561023a57831561022d5750506002015580f35b5163249e953360e21b8152fd5b51634e45734760e01b8152fd5b8380fd5b509134610309576020366003190112610309578235906001600160401b038211610309575060206102856102e79461029793369101611140565b818451938285809451938492016111b1565b8101600381520301902060ff8251926102bb846102b48186611280565b0385611108565b60018060a01b03600184015416926003600282015491015491805196879660a0885260a08801906111d4565b9460208701528501528181161515606085015260081c16151560808301520390f35b80fd5b508290346104fb5760603660031901126104fb576001600160401b039281358481116102475761033f9036908401611140565b93602435908111610247576103579036908401611140565b9260443592825186818098516103738160209b8c8096016111b1565b810160038152030190209383519561038a876110d7565b84516103a18161039a818a611280565b0382611108565b87526103f38860018060a01b03928360018a015416828b015260ff600360028b01549a8a8d019b8c520154818116151560608d015260081c16151560808b0152818851938285809451938492016111b1565b810160038152030190209685519061040a826110d7565b865161041a8161039a818d611280565b82528260018a0154168a83015260ff600360028b01549a8985019b8c5201548181161515606085015260081c16151560808301525151156104eb575151156104db5760025416156104cc57670de0b6b3a764000094858202918083048714901517156104b9575161048a916114a8565b9451948581029581870414901517156104a65750505191048152f35b634e487b7160e01b825260119052602490fd5b634e487b7160e01b845260118352602484fd5b50825163048f4b2b60e41b8152fd5b8451634e45734760e01b81528390fd5b8551634e45734760e01b81528490fd5b5080fd5b50823461030957602036600319011261030957813582548110156104fb57610526906111f9565b92909261055f57835161055b9085610549826105428189611280565b0383611108565b519182916020835260208301906111d4565b0390f35b634e487b7160e01b8252819052602490fd5b5050346104fb57816003193601126104fb57905490516001600160a01b039091168152602090f35b5050346104fb57816003193601126104fb57517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b509190346104fb57806003193601126104fb576001600160401b039183358381116104fb5761060f9036908601611140565b926024359081116104fb576106279036908601611140565b8251848180965161063e816020998a8096016111b1565b8101600381520301902090835190610655826110d7565b84516106658161039a8187611280565b82526106b78660018060a01b0392836001870154168286015260ff60036002880154978a880198895201548181161515606088015260081c1615156080860152818851938285809451938492016111b1565b81016003815203019020918551916106ce836110d7565b86516106de8161039a8188611280565b83526001840154168783015260ff600360028501549488850195865201548181161515606085015260081c161515608083015251511561077057515115610760575191670de0b6b3a76400009283810293818504149015171561074d575051610746916114a8565b9051908152f35b634e487b7160e01b815260118652602490fd5b8351634e45734760e01b81528690fd5b8451634e45734760e01b81528790fd5b5091346103095760603660031901126103095782356001600160401b0381116104fb576107b09036908501611140565b602435936001600160a01b039283861692918387036104fb57604435936107d56114c8565b8351156109a757841561099857856002541615610989579083828893151597888551610800816110d7565b84815260209360208201908152878201908b82526060830194600199600187526080850195865251808951996020019961083b81838d6111b1565b8101600381520360200190209351610853908561132a565b600184019151166001600160601b0360a01b825416179055516002820155600301915115159082549051151560081b61ff00169160ff169061ffff191617179055849254925b83811061091f575b5050505050946109076108dd7ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da13894936020981561091157611488565b86516001600160a01b03909316835260208301939093529315156040820152909281906060820190565b0390a25160018152f35b61091a8161143c565b611488565b61039a61093a61092e836111f9565b508c5192838092611280565b8281519101208751842014610950578401610899565b5092935061090792506108dd915084905060207ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da1386108a1565b50855163048f4b2b60e41b8152fd5b50855163249e953360e21b8152fd5b508551630993197f60e11b8152fd5b508290346104fb57816003193601126104fb578054916109d583611129565b6109e185519182611108565b838152602093848201809484527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b84915b838310610a7357505050508451938085019181865251809252858501958260051b8601019392955b828710610a475785850386f35b909192938280610a63600193603f198a820301865288516111d4565b9601920196019592919092610a3a565b60018881928b9a97989a51610a8c8161039a8189611280565b81520192019201919096949396610a12565b5050346104fb57816003193601126104fb5760025490516001600160a01b039091168152602090f35b8334610309578060031936011261030957610ae06114c8565b80546001600160a01b03198116825581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b509134610309576020366003190112610309578235906001600160401b03821161030957506020610285610b589236908601611140565b8101600381520301902090805190610b6f826110d7565b805190610b80826105428187611280565b81835260018060a01b038060018601541660208501908152600360028701549684870197885201549360ff6080606088019782881615158952019560081c16151585525115610bee576080965051169351925115159151151592815194855260208501528301526060820152f35b8251634e45734760e01b81528790fd5b509134610309576020366003190112610309578235906001600160401b03821161030957506020610285610c359236908601611140565b81016003815203019020815190610c4b826110d7565b8251610c5b8161039a8185611280565b80835260018060a01b0392608060ff600386600187015416956020850196875260028101548986015201548181161515606085015260081c1615159101525115610cac576020935051169051908152f35b505051634e45734760e01b8152fd5b5090346101565760609160606003193601126102475780356001600160401b039485821161030957366023830112156103095760249280830135610cfe81611129565b93610d0b87519586611108565b818552602091868387019160051b830101913683116110d357878101915b8383106110ad57505050508435948886116102475736602387011215610247578583013595610d5787611129565b96610d6489519889611108565b808852828489019160051b83010191368311611086578301905b82821061108a57505050604435988911610247573660238a011215610247578883013598610dab8a611129565b99610db889519b8c611108565b808b5282848c019160051b830101913683116110865783859101915b8383106110765750505050610de76114c8565b845186518114908161106b575b501561101e5750825b845181101561101a57849087878b6001600160a01b0384868e8984610e228589611316565b51161515978892610e338686611316565b519187610e40888c611316565b51169084610e4e898c611316565b5193825195610e5c876110d7565b86528186019384528286019485528501976001998a8a5260808701988952610e8391611316565b519151828193519283910191610e98926111b1565b81019481600396878152030190209251610eb2908461132a565b878784019151166001600160601b0360a01b82541617905551600282015501915115159082549051151560081b61ff00169160ff169061ffff19161717905589908d8b8b54915b828210610faa575b50505050610f5f610f58877ff40c354d8261c870ff1d6fcf03a5cbae3159ab5110b72120607e3764ed8da138969594610f5082610f498160019e610f899915610f9257611316565b5198611316565b511694611316565b5193611488565b8d516001600160a01b03909316835260208301939093529315156040820152909281906060820190565b0390a201610dfd565b610fa5610f9f8383611316565b5161143c565b611316565b610fd061039a91610fc48496989a9597999b9c9d946111f9565b50905192838092611280565b8b8151910120610fe08b83611316565b518c8151910120146110005750508201918b97969593918d95938f610ef9565b9897969095909450929150610f5f9050610f58878f610f01565b8380f35b6084935060239187519362461bcd60e51b85528401528201527f49534f43757272656e63794d616e616765723a206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152fd5b905089511438610df4565b8235815291810191859101610dd4565b8680fd5b81356001600160a01b03811681036110a9578152908401908401610d7e565b8780fd5b82358c81116110a95785916110c883928c3691870101611140565b815201920191610d29565b8580fd5b60a081019081106001600160401b038211176110f257604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176110f257604052565b6001600160401b0381116110f25760051b60200190565b81601f82011215611196578035906001600160401b0382116110f25760405192611174601f8401601f191660200185611108565b8284526020838301011161119657816000926020809301838601378301015290565b600080fd5b600435906001600160a01b038216820361119657565b60005b8381106111c45750506000910152565b81810151838201526020016111b4565b906020916111ed815180928185528580860191016111b1565b601f01601f1916010190565b6004548110156112305760046000527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c92168015611276575b602083101461126057565b634e487b7160e01b600052602260045260246000fd5b91607f1691611255565b80546000939261128f82611246565b918282526020936001916001811690816000146112f757506001146112b6575b5050505050565b90939495506000929192528360002092846000945b8386106112e3575050505001019038808080806112af565b8054858701830152940193859082016112cb565b60ff19168685015250505090151560051b0101915038808080806112af565b80518210156112305760209160051b010190565b91909182516001600160401b0381116110f2576113478254611246565b601f81116113f2575b50602080601f831160011461138d575081929394600092611382575b50508160011b916000199060031b1c1916179055565b01519050388061136c565b90601f19831695846000526020600020926000905b8882106113da575050836001959697106113c1575b505050811b019055565b015160001960f88460031b161c191690553880806113b7565b806001859682949686015181550195019301906113a2565b6000836000526020600020601f840160051c81019260208510611432575b601f0160051c01915b828110611427575050611350565b818155600101611419565b9092508290611410565b600454680100000000000000008110156110f25780600161146092016004556111f9565b919091611472576114709161132a565b565b634e487b7160e01b600052600060045260246000fd5b6114a0906020604051928284809451938492016111b1565b810103902090565b81156114b2570490565b634e487b7160e01b600052601260045260246000fd5b6000546001600160a01b031633036114dc57565b60405163118cdaa760e01b8152336004820152602490fdfea264697066735822122089add242a8d18415a889fcbb744088539540077826b773e70168f5f9b4a0b21964736f6c63430008160033",
|
|
"linkReferences": {},
|
|
"deployedLinkReferences": {}
|
|
}
|