UNPKG

@lukso/lsp-smart-contracts

Version:

The reference smart contract implementation for the LUKSO LSP standards

89 lines (88 loc) 31.3 kB
{ "_format": "hh-sol-artifact-1", "contractName": "LSP1UniversalReceiverDelegateUP", "sourceName": "@lukso/lsp1delegate-contracts/contracts/LSP1UniversalReceiverDelegateUP.sol", "abi": [ { "inputs": [ { "internalType": "address", "name": "caller", "type": "address" } ], "name": "CannotRegisterEOAsAsAssets", "type": "error" }, { "inputs": [], "name": "VERSION", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "notifier", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes32", "name": "typeId", "type": "bytes32" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "universalReceiverDelegate", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b50611cb2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063a245bbda1461006e578063ffa1ad741461008e575b600080fd5b6100596100543660046117b7565b6100ca565b60405190151581526020015b60405180910390f35b61008161007c366004611857565b610133565b6040516100659190611959565b6100816040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167fa245bbda00000000000000000000000000000000000000000000000000000000148061012d57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60607fbd65385f96fc24363ec2034c362ee207e6ba7e05fb8369285be8e038bfd6a716830161016c57610165856102dc565b90506102d4565b7fdf7fb9ee4c1d15de3b7f23b9aebddef530b5db7a6b8abe88f13e0478211b5aa483016101bd57610165857fc52d60080000000000000000000000000000000000000000000000000000000061043e565b7f4dc1518192ea9b4d6a4b3c1c41bfd265d0f8893a8420c9a6fcb690905b7e550083016101ed57610165856102dc565b7ff4f7b5aa1408f02c3f9028aad96253dded3b2c0f0b2f6f8687f405af3e4d67b3830161023e57610165857f3a2717060000000000000000000000000000000000000000000000000000000061043e565b7ff39dd1a71948f7651ca0e50e3792668416d0322736af69adfdd2be559ae96b8f830161026e57610165856105b0565b7f867aa368243da631c6abde26cc2843f9664f0ea9e06770f656179cc02abd01a4830161029e576101658561062f565b5060408051808201909152601981527f4c5350313a20747970654964206f7574206f662073636f70650000000000000060208201525b949350505050565b606081326001600160a01b038216036103185760405163a529534560e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6040516370a0823160e01b81523360048201526001600160a01b038416906370a0823190602401602060405180830381865afa925050508015610378575060408051601f3d908101601f191682019092526103759181019061196c565b60015b61039c576040518060600160405280602d8152602001611c50602d91399150610438565b80156103e0576040518060400160405280601e81526020017f4c5350313a2066756c6c2062616c616e6365206973206e6f742073656e740000815250925050610438565b506000806103ee3386610673565b915091508151600014801561040257508051155b15610429576040518060600160405280602b8152602001611bf9602b913993505050610438565b6104338282610877565b935050505b50919050565b606082326001600160a01b038216036104755760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6001600160a01b0384163b15610551576040516370a0823160e01b81523360048201526001600160a01b038516906370a0823190602401602060405180830381865afa9250505080156104e5575060408051601f3d908101601f191682019092526104e29181019061196c565b60015b610509576040518060600160405280602d8152602001611c50602d913991506105a9565b8060000361054f576040518060400160405280601581526020017f4c5350313a2062616c616e6365206973207a65726f00000000000000000000008152509250506105a9565b505b60008061055f338787610934565b915091508151600014801561057357508051155b1561059a576040518060600160405280602b8152602001611bf9602b9139935050506105a9565b6105a48282610877565b935050505b5092915050565b606081326001600160a01b038216036105e75760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610c48565b915091508151600014801561060857508051155b15610429576040518060600160405280602c8152602001611c24602c913993505050610438565b606081326001600160a01b038216036106665760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610e38565b60608083600061068282611151565b905061068d816111e1565b610698575050610870565b60006106a382611985565b6001600160801b031916036106b9575050610870565b600060016106c683611985565b60801c6106d391906119d3565b905060006106f269812c4334633eb816c80d60b01b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261076591908101906119f3565b9050805160141461077a575050505050610870565b6000602061078783611a6a565b6bffffffffffffffffffffffff1916901b60801c905060006107c97f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b9050846001600160801b0316826001600160801b031603610820576108107f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b868387611291565b9850985050505050505050610870565b846001600160801b0316826001600160801b0316101561086857610810877f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b878486896113f9565b505050505050505b9250929050565b6040517f9790242100000000000000000000000000000000000000000000000000000000815260609033906397902421906108b89086908690600401611aa2565b600060405180830381600087803b1580156108d257600080fd5b505af19250505080156108e3575060015b61091e573d808015610911576040519150601f19603f3d011682016040523d82523d6000602084013e610916565b606091505b50905061012d565b5060408051602081019091526000815292915050565b60608084600061094382611151565b905061094e816111e1565b61098557805160000361097e57604051600060208201526030016040516020818303038152906040529050610985565b5050610c40565b600061099082611985565b60801c90506ffffffffffffffffffffffffffffffffe1981016109b557505050610c40565b60006109d269812c4334633eb816c80d60b01b60608a901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610a1a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a4291908101906119f3565b5115610a515750505050610c40565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610a885790505094507f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60001b86600081518110610ad657610ad6611b3a565b6020908102919091010152610aec826001611b50565b604051602001610b0f919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405285600081518110610b3157610b31611b3a565b6020908102919091010152610b667f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b86600181518110610b7957610b79611b3a565b60200260200101818152505087604051602001610bae919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405285600181518110610bd057610bd0611b3a565b60200260200101819052508086600281518110610bef57610bef611b3a565b6020026020010181815250508683604051602001610c0e929190611b70565b60405160208183030381529060405285600281518110610c3057610c30611b3a565b6020026020010181905250505050505b935093915050565b606080836000610c5782611768565b9050610c62816111e1565b610c6d575050610870565b80511580610c8d57506000610c8182611985565b6001600160801b031916145b15610c99575050610870565b60006001610ca683611985565b60801c610cb391906119d3565b90506000610cd26906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa158015610d1d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d4591908101906119f3565b90508051601414610d5a575050505050610870565b60006020610d6783611a6a565b6bffffffffffffffffffffffff1916901b60801c90506000610da97f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b9050846001600160801b0316826001600160801b031603610df0576108107f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06868387611291565b846001600160801b0316826001600160801b0316101561086857610810877f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06878486896113f9565b606080836000610e4782611768565b9050610e52816111e1565b610e89578051600003610e8257604051600060208201526030016040516020818303038152906040529050610e89565b5050610870565b6000610e9482611985565b60801c90506ffffffffffffffffffffffffffffffffe198101610eb957505050610870565b6000610ed66906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610f1e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f4691908101906119f3565b5115610f555750505050610870565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610f8c5790505094507f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660001b86600081518110610fda57610fda611b3a565b6020908102919091010152610ff0826001611b50565b604051602001611013919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528560008151811061103557611035611b3a565b602090810291909101015261106a7f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b8660018151811061107d5761107d611b3a565b602002602001018181525050866040516020016110b2919060609190911b6bffffffffffffffffffffffff1916815260140190565b604051602081830303815290604052856001815181106110d4576110d4611b3a565b602002602001018190525080866002815181106110f3576110f3611b3a565b6020026020010181815250506328af17e660e01b83604051602001611119929190611b70565b6040516020818303038152906040528560028151811061113b5761113b611b3a565b6020026020010181905250505050509250929050565b6040516354f6127f60e01b81527f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60048201526060906001600160a01b038316906354f6127f906024015b600060405180830381865afa1580156111b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261012d91908101906119f3565b600081516010036111f457506001919050565b506000919050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291015b6040516020818303038152906040529050806102d490611ba0565b604080516001600160801b03198085166020830152608084901b16603082015260009182910161124b565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b60608152602001906001900390816112cc57905050905085826000815181106112f7576112f7611b3a565b60200260200101818152505084604051602001611327919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528160008151811061134957611349611b3a565b6020026020010181905250828260018151811061136857611368611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061139757611397611b3a565b602002602001018190525083826002815181106113b6576113b6611b3a565b60200260200101818152505060405180602001604052806000815250816002815181106113e5576113e5611b3a565b602002602001018190525094509492505050565b60408051600580825260c082019092526060918291906020820160a0803683370190505060408051600580825260c08201909252919350816020015b6060815260200190600190039081611435579050509050868260008151811061146057611460611b3a565b60200260200101818152505085604051602001611490919060809190911b6001600160801b031916815260100190565b604051602081830303815290604052816000815181106114b2576114b2611b3a565b602002602001018190525082826001815181106114d1576114d1611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061150057611500611b3a565b602002602001018190525060006115178888611266565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038b16906354f6127f90602401600060405180830381865afa158015611562573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261158a91908101906119f3565b61159390611a6a565b905086846002815181106115a9576115a9611b3a565b602002602001018181525050806040516020016115db91906bffffffffffffffffffffffff1991909116815260140190565b604051602081830303815290604052836002815181106115fd576115fd611b3a565b6020026020010181905250818460038151811061161c5761161c611b3a565b602002602001018181525050604051806020016040528060008152508360038151811061164b5761164b611b3a565b6020026020010181905250600061166286836111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038d16906354f6127f90602401600060405180830381865afa1580156116ad573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116d591908101906119f3565b6116de90611bc4565b6040516001600160e01b031990911660208201526001600160801b031960808a901b1660248201526034016040516020818303038152906040529050818660048151811061172e5761172e611b3a565b602002602001018181525050808560048151811061174e5761174e611b3a565b602002602001018190525050505050965096945050505050565b6040516354f6127f60e01b81527f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660048201526060906001600160a01b038316906354f6127f9060240161119c565b6000602082840312156117c957600080fd5b81356001600160e01b0319811681146117e157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611827576118276117e8565b604052919050565b600067ffffffffffffffff821115611849576118496117e8565b50601f01601f191660200190565b6000806000806080858703121561186d57600080fd5b84356001600160a01b038116811461188457600080fd5b93506020850135925060408501359150606085013567ffffffffffffffff8111156118ae57600080fd5b8501601f810187136118bf57600080fd5b80356118d26118cd8261182f565b6117fe565b8181528860208385010111156118e757600080fd5b8160208401602083013760006020838301015280935050505092959194509250565b60005b8381101561192457818101518382015260200161190c565b50506000910152565b60008151808452611945816020860160208601611909565b601f01601f19169290920160200192915050565b6020815260006117e1602083018461192d565b60006020828403121561197e57600080fd5b5051919050565b6000815160208301516001600160801b0319808216935060108310156119b55780818460100360031b1b83161693505b505050919050565b634e487b7160e01b600052601160045260246000fd5b6001600160801b038281168282160390808211156105a9576105a96119bd565b600060208284031215611a0557600080fd5b815167ffffffffffffffff811115611a1c57600080fd5b8201601f81018413611a2d57600080fd5b8051611a3b6118cd8261182f565b818152856020838501011115611a5057600080fd5b611a61826020830160208601611909565b95945050505050565b805160208201516bffffffffffffffffffffffff1980821692919060148310156119b55760149290920360031b82901b161692915050565b604080825283519082018190526000906020906060840190828701845b82811015611adb57815184529284019290840190600101611abf565b50505083810382850152845180825282820190600581901b8301840187850160005b83811015611b2b57601f19868403018552611b1983835161192d565b94870194925090860190600101611afd565b50909998505050505050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160801b038181168382160190808211156105a9576105a96119bd565b6001600160e01b03198316815260008251611b92816004850160208701611909565b919091016004019392505050565b805160208083015191908110156104385760001960209190910360031b1b16919050565b6000815160208301516001600160e01b0319808216935060048310156119b55760049290920360031b82901b16169291505056fe4c5350353a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c535031303a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c5350313a206062616c616e63654f66286164647265737329602066756e6374696f6e206e6f7420666f756e64a264697066735822122065c013f80e6424e8fad90c782b243bc850649f96fc90e06bab6300ad314334c664736f6c63430008110033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063a245bbda1461006e578063ffa1ad741461008e575b600080fd5b6100596100543660046117b7565b6100ca565b60405190151581526020015b60405180910390f35b61008161007c366004611857565b610133565b6040516100659190611959565b6100816040518060400160405280600681526020017f302e31352e30000000000000000000000000000000000000000000000000000081525081565b60006001600160e01b031982167fa245bbda00000000000000000000000000000000000000000000000000000000148061012d57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b60607fbd65385f96fc24363ec2034c362ee207e6ba7e05fb8369285be8e038bfd6a716830161016c57610165856102dc565b90506102d4565b7fdf7fb9ee4c1d15de3b7f23b9aebddef530b5db7a6b8abe88f13e0478211b5aa483016101bd57610165857fc52d60080000000000000000000000000000000000000000000000000000000061043e565b7f4dc1518192ea9b4d6a4b3c1c41bfd265d0f8893a8420c9a6fcb690905b7e550083016101ed57610165856102dc565b7ff4f7b5aa1408f02c3f9028aad96253dded3b2c0f0b2f6f8687f405af3e4d67b3830161023e57610165857f3a2717060000000000000000000000000000000000000000000000000000000061043e565b7ff39dd1a71948f7651ca0e50e3792668416d0322736af69adfdd2be559ae96b8f830161026e57610165856105b0565b7f867aa368243da631c6abde26cc2843f9664f0ea9e06770f656179cc02abd01a4830161029e576101658561062f565b5060408051808201909152601981527f4c5350313a20747970654964206f7574206f662073636f70650000000000000060208201525b949350505050565b606081326001600160a01b038216036103185760405163a529534560e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6040516370a0823160e01b81523360048201526001600160a01b038416906370a0823190602401602060405180830381865afa925050508015610378575060408051601f3d908101601f191682019092526103759181019061196c565b60015b61039c576040518060600160405280602d8152602001611c50602d91399150610438565b80156103e0576040518060400160405280601e81526020017f4c5350313a2066756c6c2062616c616e6365206973206e6f742073656e740000815250925050610438565b506000806103ee3386610673565b915091508151600014801561040257508051155b15610429576040518060600160405280602b8152602001611bf9602b913993505050610438565b6104338282610877565b935050505b50919050565b606082326001600160a01b038216036104755760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6001600160a01b0384163b15610551576040516370a0823160e01b81523360048201526001600160a01b038516906370a0823190602401602060405180830381865afa9250505080156104e5575060408051601f3d908101601f191682019092526104e29181019061196c565b60015b610509576040518060600160405280602d8152602001611c50602d913991506105a9565b8060000361054f576040518060400160405280601581526020017f4c5350313a2062616c616e6365206973207a65726f00000000000000000000008152509250506105a9565b505b60008061055f338787610934565b915091508151600014801561057357508051155b1561059a576040518060600160405280602b8152602001611bf9602b9139935050506105a9565b6105a48282610877565b935050505b5092915050565b606081326001600160a01b038216036105e75760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610c48565b915091508151600014801561060857508051155b15610429576040518060600160405280602c8152602001611c24602c913993505050610438565b606081326001600160a01b038216036106665760405163a529534560e01b81526001600160a01b038216600482015260240161030f565b6000806105f43386610e38565b60608083600061068282611151565b905061068d816111e1565b610698575050610870565b60006106a382611985565b6001600160801b031916036106b9575050610870565b600060016106c683611985565b60801c6106d391906119d3565b905060006106f269812c4334633eb816c80d60b01b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa15801561073d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261076591908101906119f3565b9050805160141461077a575050505050610870565b6000602061078783611a6a565b6bffffffffffffffffffffffff1916901b60801c905060006107c97f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b9050846001600160801b0316826001600160801b031603610820576108107f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b868387611291565b9850985050505050505050610870565b846001600160801b0316826001600160801b0316101561086857610810877f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b878486896113f9565b505050505050505b9250929050565b6040517f9790242100000000000000000000000000000000000000000000000000000000815260609033906397902421906108b89086908690600401611aa2565b600060405180830381600087803b1580156108d257600080fd5b505af19250505080156108e3575060015b61091e573d808015610911576040519150601f19603f3d011682016040523d82523d6000602084013e610916565b606091505b50905061012d565b5060408051602081019091526000815292915050565b60608084600061094382611151565b905061094e816111e1565b61098557805160000361097e57604051600060208201526030016040516020818303038152906040529050610985565b5050610c40565b600061099082611985565b60801c90506ffffffffffffffffffffffffffffffffe1981016109b557505050610c40565b60006109d269812c4334633eb816c80d60b01b60608a901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610a1a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a4291908101906119f3565b5115610a515750505050610c40565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610a885790505094507f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60001b86600081518110610ad657610ad6611b3a565b6020908102919091010152610aec826001611b50565b604051602001610b0f919060809190911b6001600160801b031916815260100190565b60405160208183030381529060405285600081518110610b3157610b31611b3a565b6020908102919091010152610b667f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b83611266565b86600181518110610b7957610b79611b3a565b60200260200101818152505087604051602001610bae919060609190911b6bffffffffffffffffffffffff1916815260140190565b60405160208183030381529060405285600181518110610bd057610bd0611b3a565b60200260200101819052508086600281518110610bef57610bef611b3a565b6020026020010181815250508683604051602001610c0e929190611b70565b60405160208183030381529060405285600281518110610c3057610c30611b3a565b6020026020010181905250505050505b935093915050565b606080836000610c5782611768565b9050610c62816111e1565b610c6d575050610870565b80511580610c8d57506000610c8182611985565b6001600160801b031916145b15610c99575050610870565b60006001610ca683611985565b60801c610cb391906119d3565b90506000610cd26906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038616906354f6127f90602401600060405180830381865afa158015610d1d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d4591908101906119f3565b90508051601414610d5a575050505050610870565b60006020610d6783611a6a565b6bffffffffffffffffffffffff1916901b60801c90506000610da97f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b9050846001600160801b0316826001600160801b031603610df0576108107f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06868387611291565b846001600160801b0316826001600160801b0316101561086857610810877f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f06878486896113f9565b606080836000610e4782611768565b9050610e52816111e1565b610e89578051600003610e8257604051600060208201526030016040516020818303038152906040529050610e89565b5050610870565b6000610e9482611985565b60801c90506ffffffffffffffffffffffffffffffffe198101610eb957505050610870565b6000610ed66906491230f03e231fc8e360b21b606089901b6111fc565b6040516354f6127f60e01b8152600481018290529091506001600160a01b038516906354f6127f90602401600060405180830381865afa158015610f1e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f4691908101906119f3565b5115610f555750505050610870565b6040805160038082526080820190925290602082016060803683370190505060408051600380825260808201909252919750816020015b6060815260200190600190039081610f8c5790505094507f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660001b86600081518110610fda57610fda611b3a565b6020908102919091010152610ff0826001611b50565b604051602001611013919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528560008151811061103557611035611b3a565b602090810291909101015261106a7f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0683611266565b8660018151811061107d5761107d611b3a565b602002602001018181525050866040516020016110b2919060609190911b6bffffffffffffffffffffffff1916815260140190565b604051602081830303815290604052856001815181106110d4576110d4611b3a565b602002602001018190525080866002815181106110f3576110f3611b3a565b6020026020010181815250506328af17e660e01b83604051602001611119929190611b70565b6040516020818303038152906040528560028151811061113b5761113b611b3a565b6020026020010181905250505050509250929050565b6040516354f6127f60e01b81527f6460ee3c0aac563ccbf76d6e1d07bada78e3a9514e6382b736ed3f478ab7b90b60048201526060906001600160a01b038316906354f6127f906024015b600060405180830381865afa1580156111b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261012d91908101906119f3565b600081516010036111f457506001919050565b506000919050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c830152918291015b6040516020818303038152906040529050806102d490611ba0565b604080516001600160801b03198085166020830152608084901b16603082015260009182910161124b565b604080516003808252608082019092526060918291906020820183803683370190505060408051600380825260808201909252919350816020015b60608152602001906001900390816112cc57905050905085826000815181106112f7576112f7611b3a565b60200260200101818152505084604051602001611327919060809190911b6001600160801b031916815260100190565b6040516020818303038152906040528160008151811061134957611349611b3a565b6020026020010181905250828260018151811061136857611368611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061139757611397611b3a565b602002602001018190525083826002815181106113b6576113b6611b3a565b60200260200101818152505060405180602001604052806000815250816002815181106113e5576113e5611b3a565b602002602001018190525094509492505050565b60408051600580825260c082019092526060918291906020820160a0803683370190505060408051600580825260c08201909252919350816020015b6060815260200190600190039081611435579050509050868260008151811061146057611460611b3a565b60200260200101818152505085604051602001611490919060809190911b6001600160801b031916815260100190565b604051602081830303815290604052816000815181106114b2576114b2611b3a565b602002602001018190525082826001815181106114d1576114d1611b3a565b602002602001018181525050604051806020016040528060008152508160018151811061150057611500611b3a565b602002602001018190525060006115178888611266565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038b16906354f6127f90602401600060405180830381865afa158015611562573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261158a91908101906119f3565b61159390611a6a565b905086846002815181106115a9576115a9611b3a565b602002602001018181525050806040516020016115db91906bffffffffffffffffffffffff1991909116815260140190565b604051602081830303815290604052836002815181106115fd576115fd611b3a565b6020026020010181905250818460038151811061161c5761161c611b3a565b602002602001018181525050604051806020016040528060008152508360038151811061164b5761164b611b3a565b6020026020010181905250600061166286836111fc565b6040516354f6127f60e01b8152600481018290529091506000906001600160a01b038d16906354f6127f90602401600060405180830381865afa1580156116ad573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116d591908101906119f3565b6116de90611bc4565b6040516001600160e01b031990911660208201526001600160801b031960808a901b1660248201526034016040516020818303038152906040529050818660048151811061172e5761172e611b3a565b602002602001018181525050808560048151811061174e5761174e611b3a565b602002602001018190525050505050965096945050505050565b6040516354f6127f60e01b81527f55482936e01da86729a45d2b87a6b1d3bc582bea0ec00e38bdb340e3af6f9f0660048201526060906001600160a01b038316906354f6127f9060240161119c565b6000602082840312156117c957600080fd5b81356001600160e01b0319811681146117e157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611827576118276117e8565b604052919050565b600067ffffffffffffffff821115611849576118496117e8565b50601f01601f191660200190565b6000806000806080858703121561186d57600080fd5b84356001600160a01b038116811461188457600080fd5b93506020850135925060408501359150606085013567ffffffffffffffff8111156118ae57600080fd5b8501601f810187136118bf57600080fd5b80356118d26118cd8261182f565b6117fe565b8181528860208385010111156118e757600080fd5b8160208401602083013760006020838301015280935050505092959194509250565b60005b8381101561192457818101518382015260200161190c565b50506000910152565b60008151808452611945816020860160208601611909565b601f01601f19169290920160200192915050565b6020815260006117e1602083018461192d565b60006020828403121561197e57600080fd5b5051919050565b6000815160208301516001600160801b0319808216935060108310156119b55780818460100360031b1b83161693505b505050919050565b634e487b7160e01b600052601160045260246000fd5b6001600160801b038281168282160390808211156105a9576105a96119bd565b600060208284031215611a0557600080fd5b815167ffffffffffffffff811115611a1c57600080fd5b8201601f81018413611a2d57600080fd5b8051611a3b6118cd8261182f565b818152856020838501011115611a5057600080fd5b611a61826020830160208601611909565b95945050505050565b805160208201516bffffffffffffffffffffffff1980821692919060148310156119b55760149290920360031b82901b161692915050565b604080825283519082018190526000906020906060840190828701845b82811015611adb57815184529284019290840190600101611abf565b50505083810382850152845180825282820190600581901b8301840187850160005b83811015611b2b57601f19868403018552611b1983835161192d565b94870194925090860190600101611afd565b50909998505050505050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160801b038181168382160190808211156105a9576105a96119bd565b6001600160e01b03198316815260008251611b92816004850160208701611909565b919091016004019392505050565b805160208083015191908110156104385760001960209190910360031b1b16919050565b6000815160208301516001600160e01b0319808216935060048310156119b55760049290920360031b82901b16169291505056fe4c5350353a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c535031303a204572726f722067656e65726174696e672064617461206b65792f76616c75652070616972734c5350313a206062616c616e63654f66286164647265737329602066756e6374696f6e206e6f7420666f756e64a264697066735822122065c013f80e6424e8fad90c782b243bc850649f96fc90e06bab6300ad314334c664736f6c63430008110033", "linkReferences": {}, "deployedLinkReferences": {} }