New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@eth-optimism/contracts-periphery

Package Overview
Dependencies
Maintainers
5
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@eth-optimism/contracts-periphery - npm Package Compare versions

Comparing version 0.0.0-202251153718 to 0.0.0-202272320426

artifacts/contracts/L1/L1ERC721Bridge.sol/L1ERC721Bridge.dbg.json

2

artifacts/contracts/testing/helpers/TestERC20.sol/TestERC20.dbg.json
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/f284230655a288ecb4542d9b36c2e1e7.json"
"buildInfo": "../../../../build-info/c52a72dedfa0eb061ebd68bd11b61401.json"
}

@@ -29,3 +29,3 @@ {

"internalType": "uint256",
"name": "value",
"name": "amount",
"type": "uint256"

@@ -55,3 +55,3 @@ }

"internalType": "uint256",
"name": "value",
"name": "amount",
"type": "uint256"

@@ -64,6 +64,19 @@ }

{
"inputs": [],
"name": "DOMAIN_SEPARATOR",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"name": "",
"type": "address"

@@ -73,3 +86,3 @@ },

"internalType": "address",
"name": "spender",
"name": "",
"type": "address"

@@ -117,3 +130,3 @@ }

"internalType": "address",
"name": "account",
"name": "",
"type": "address"

@@ -150,3 +163,3 @@ }

"internalType": "address",
"name": "spender",
"name": "to",
"type": "address"

@@ -156,15 +169,22 @@ },

"internalType": "uint256",
"name": "subtractedValue",
"name": "value",
"type": "uint256"
}
],
"name": "decreaseAllowance",
"name": "mint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "bool",
"internalType": "string",
"name": "",
"type": "bool"
"type": "string"
}
],
"stateMutability": "nonpayable",
"stateMutability": "view",
"type": "function"

@@ -176,20 +196,15 @@ },

"internalType": "address",
"name": "spender",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "addedValue",
"type": "uint256"
}
],
"name": "increaseAllowance",
"name": "nonces",
"outputs": [
{
"internalType": "bool",
"internalType": "uint256",
"name": "",
"type": "bool"
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"stateMutability": "view",
"type": "function"

@@ -201,12 +216,37 @@ },

"internalType": "address",
"name": "to",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "deadline",
"type": "uint256"
},
{
"internalType": "uint8",
"name": "v",
"type": "uint8"
},
{
"internalType": "bytes32",
"name": "r",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "s",
"type": "bytes32"
}
],
"name": "mint",
"name": "permit",
"outputs": [],

@@ -218,15 +258,2 @@ "stateMutability": "nonpayable",

"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "symbol",

@@ -260,3 +287,3 @@ "outputs": [

"internalType": "address",
"name": "recipient",
"name": "to",
"type": "address"

@@ -285,3 +312,3 @@ },

"internalType": "address",
"name": "sender",
"name": "from",
"type": "address"

@@ -291,3 +318,3 @@ },

"internalType": "address",
"name": "recipient",
"name": "to",
"type": "address"

@@ -313,6 +340,6 @@ },

],
"bytecode": "0x60806040523480156200001157600080fd5b5060405180604001604052806004815260200163151154d560e21b815250604051806040016040528060038152602001621514d560ea1b81525081600390805190602001906200006392919062000082565b5080516200007990600490602084019062000082565b50505062000165565b828054620000909062000128565b90600052602060002090601f016020900481019282620000b45760008555620000ff565b82601f10620000cf57805160ff1916838001178555620000ff565b82800160010185558215620000ff579182015b82811115620000ff578251825591602001919060010190620000e2565b506200010d92915062000111565b5090565b5b808211156200010d576000815560010162000112565b600181811c908216806200013d57607f821691505b602082108114156200015f57634e487b7160e01b600052602260045260246000fd5b50919050565b610ca580620001756000396000f3fe608060405234801561001057600080fd5b50600436106100d45760003560e01c806340c10f1911610081578063a457c2d71161005b578063a457c2d7146101b4578063a9059cbb146101c7578063dd62ed3e146101da57600080fd5b806340c10f191461016157806370a082311461017657806395d89b41146101ac57600080fd5b806323b872dd116100b257806323b872dd1461012c578063313ce5671461013f578063395093511461014e57600080fd5b806306fdde03146100d9578063095ea7b3146100f757806318160ddd1461011a575b600080fd5b6100e1610220565b6040516100ee9190610a85565b60405180910390f35b61010a610105366004610b21565b6102b2565b60405190151581526020016100ee565b6002545b6040519081526020016100ee565b61010a61013a366004610b4b565b6102c8565b604051601281526020016100ee565b61010a61015c366004610b21565b6103b3565b61017461016f366004610b21565b6103fc565b005b61011e610184366004610b87565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100e161040a565b61010a6101c2366004610b21565b610419565b61010a6101d5366004610b21565b6104f1565b61011e6101e8366004610ba9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60606003805461022f90610bdc565b80601f016020809104026020016040519081016040528092919081815260200182805461025b90610bdc565b80156102a85780601f1061027d576101008083540402835291602001916102a8565b820191906000526020600020905b81548152906001019060200180831161028b57829003601f168201915b5050505050905090565b60006102bf3384846104fe565b50600192915050565b60006102d58484846106b1565b73ffffffffffffffffffffffffffffffffffffffff841660009081526001602090815260408083203384529091529020548281101561039b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206160448201527f6c6c6f77616e636500000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103a885338584036104fe565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916102bf9185906103f7908690610c30565b6104fe565b6104068282610965565b5050565b60606004805461022f90610bdc565b33600090815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054828110156104da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610392565b6104e733858584036104fe565b5060019392505050565b60006102bf3384846106b1565b73ffffffffffffffffffffffffffffffffffffffff83166105a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8216610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff82166107f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156108ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152602081905260408082208585039055918516815290812080548492906108f1908490610c30565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161095791815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff82166109e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610392565b80600260008282546109f49190610c30565b909155505073ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604081208054839290610a2e908490610c30565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600060208083528351808285015260005b81811015610ab257858101830151858201604001528201610a96565b81811115610ac4576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b1c57600080fd5b919050565b60008060408385031215610b3457600080fd5b610b3d83610af8565b946020939093013593505050565b600080600060608486031215610b6057600080fd5b610b6984610af8565b9250610b7760208501610af8565b9150604084013590509250925092565b600060208284031215610b9957600080fd5b610ba282610af8565b9392505050565b60008060408385031215610bbc57600080fd5b610bc583610af8565b9150610bd360208401610af8565b90509250929050565b600181811c90821680610bf057607f821691505b60208210811415610c2a577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008219821115610c6a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b50019056fea2646970667358221220c29e6cb1e6ae8d55f23d029885a739344fa62c0740063269363bfda29432a04264736f6c63430008090033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d45760003560e01c806340c10f1911610081578063a457c2d71161005b578063a457c2d7146101b4578063a9059cbb146101c7578063dd62ed3e146101da57600080fd5b806340c10f191461016157806370a082311461017657806395d89b41146101ac57600080fd5b806323b872dd116100b257806323b872dd1461012c578063313ce5671461013f578063395093511461014e57600080fd5b806306fdde03146100d9578063095ea7b3146100f757806318160ddd1461011a575b600080fd5b6100e1610220565b6040516100ee9190610a85565b60405180910390f35b61010a610105366004610b21565b6102b2565b60405190151581526020016100ee565b6002545b6040519081526020016100ee565b61010a61013a366004610b4b565b6102c8565b604051601281526020016100ee565b61010a61015c366004610b21565b6103b3565b61017461016f366004610b21565b6103fc565b005b61011e610184366004610b87565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100e161040a565b61010a6101c2366004610b21565b610419565b61010a6101d5366004610b21565b6104f1565b61011e6101e8366004610ba9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60606003805461022f90610bdc565b80601f016020809104026020016040519081016040528092919081815260200182805461025b90610bdc565b80156102a85780601f1061027d576101008083540402835291602001916102a8565b820191906000526020600020905b81548152906001019060200180831161028b57829003601f168201915b5050505050905090565b60006102bf3384846104fe565b50600192915050565b60006102d58484846106b1565b73ffffffffffffffffffffffffffffffffffffffff841660009081526001602090815260408083203384529091529020548281101561039b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206160448201527f6c6c6f77616e636500000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103a885338584036104fe565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916102bf9185906103f7908690610c30565b6104fe565b6104068282610965565b5050565b60606004805461022f90610bdc565b33600090815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054828110156104da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610392565b6104e733858584036104fe565b5060019392505050565b60006102bf3384846106b1565b73ffffffffffffffffffffffffffffffffffffffff83166105a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8216610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff82166107f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156108ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610392565b73ffffffffffffffffffffffffffffffffffffffff8085166000908152602081905260408082208585039055918516815290812080548492906108f1908490610c30565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161095791815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff82166109e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610392565b80600260008282546109f49190610c30565b909155505073ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604081208054839290610a2e908490610c30565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600060208083528351808285015260005b81811015610ab257858101830151858201604001528201610a96565b81811115610ac4576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b1c57600080fd5b919050565b60008060408385031215610b3457600080fd5b610b3d83610af8565b946020939093013593505050565b600080600060608486031215610b6057600080fd5b610b6984610af8565b9250610b7760208501610af8565b9150604084013590509250925092565b600060208284031215610b9957600080fd5b610ba282610af8565b9392505050565b60008060408385031215610bbc57600080fd5b610bc583610af8565b9150610bd360208401610af8565b90509250929050565b600181811c90821680610bf057607f821691505b60208210811415610c2a577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008219821115610c6a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b50019056fea2646970667358221220c29e6cb1e6ae8d55f23d029885a739344fa62c0740063269363bfda29432a04264736f6c63430008090033",
"bytecode": "0x60e06040523480156200001157600080fd5b5060405180604001604052806004815260200163151154d560e21b815250604051806040016040528060038152602001621514d560ea1b815250601282600090816200005e9190620001d1565b5060016200006d8382620001d1565b5060ff81166080524660a0526200008362000090565b60c052506200031b915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6000604051620000c491906200029d565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200015757607f821691505b6020821081036200017857634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620001cc57600081815260208120601f850160051c81016020861015620001a75750805b601f850160051c820191505b81811015620001c857828155600101620001b3565b5050505b505050565b81516001600160401b03811115620001ed57620001ed6200012c565b6200020581620001fe845462000142565b846200017e565b602080601f8311600181146200023d5760008415620002245750858301515b600019600386901b1c1916600185901b178555620001c8565b600085815260208120601f198616915b828110156200026e578886015182559484019460019091019084016200024d565b50858210156200028d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000808354620002ad8162000142565b60018281168015620002c85760018114620002de576200030f565b60ff19841687528215158302870194506200030f565b8760005260208060002060005b85811015620003065781548a820152908401908201620002eb565b50505082870194505b50929695505050505050565b60805160a05160c051610d416200034b60003960006104c20152600061048d015260006101540152610d416000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c806340c10f191161008c57806395d89b411161006657806395d89b41146101e5578063a9059cbb146101ed578063d505accf14610200578063dd62ed3e1461021357600080fd5b806340c10f191461019057806370a08231146101a55780637ecebe00146101c557600080fd5b806323b872dd116100bd57806323b872dd1461013c578063313ce5671461014f5780633644e5151461018857600080fd5b806306fdde03146100e4578063095ea7b31461010257806318160ddd14610125575b600080fd5b6100ec61023e565b6040516100f991906109ba565b60405180910390f35b610115610110366004610a56565b6102cc565b60405190151581526020016100f9565b61012e60025481565b6040519081526020016100f9565b61011561014a366004610a80565b610345565b6101767f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016100f9565b61012e610489565b6101a361019e366004610a56565b6104e4565b005b61012e6101b3366004610abc565b60036020526000908152604090205481565b61012e6101d3366004610abc565b60056020526000908152604090205481565b6100ec6104f2565b6101156101fb366004610a56565b6104ff565b6101a361020e366004610ade565b610584565b61012e610221366004610b51565b600460209081526000928352604080842090915290825290205481565b6000805461024b90610b84565b80601f016020809104026020016040519081016040528092919081815260200182805461027790610b84565b80156102c45780601f10610299576101008083540402835291602001916102c4565b820191906000526020600020905b8154815290600101906020018083116102a757829003601f168201915b505050505081565b33600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103349086815260200190565b60405180910390a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146103d9576103a78382610c06565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff85166000908152600360205260408120805485929061040e908490610c06565b909155505073ffffffffffffffffffffffffffffffffffffffff808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104769087815260200190565b60405180910390a3506001949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000046146104bf576104ba6108a8565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b6104ee8282610942565b5050565b6001805461024b90610b84565b33600090815260036020526040812080548391908390610520908490610c06565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906103349086815260200190565b428410156105f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064015b60405180910390fd5b600060016105ff610489565b73ffffffffffffffffffffffffffffffffffffffff8a811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e0830190915280519201919091207f190100000000000000000000000000000000000000000000000000000000000061010083015261010282019290925261012281019190915261014201604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610751573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116158015906107cc57508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610832576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e455200000000000000000000000000000000000060448201526064016105ea565b73ffffffffffffffffffffffffffffffffffffffff90811660009081526004602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516108da9190610c1d565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546109549190610cf3565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156109e7578581018301518582016040015282016109cb565b818111156109f9576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a5157600080fd5b919050565b60008060408385031215610a6957600080fd5b610a7283610a2d565b946020939093013593505050565b600080600060608486031215610a9557600080fd5b610a9e84610a2d565b9250610aac60208501610a2d565b9150604084013590509250925092565b600060208284031215610ace57600080fd5b610ad782610a2d565b9392505050565b600080600080600080600060e0888a031215610af957600080fd5b610b0288610a2d565b9650610b1060208901610a2d565b95506040880135945060608801359350608088013560ff81168114610b3457600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610b6457600080fd5b610b6d83610a2d565b9150610b7b60208401610a2d565b90509250929050565b600181811c90821680610b9857607f821691505b602082108103610bd1577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082821015610c1857610c18610bd7565b500390565b600080835481600182811c915080831680610c3957607f831692505b60208084108203610c71577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610c855760018114610cb857610ce5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610ce5565b60008a81526020902060005b86811015610cdd5781548b820152908501908301610cc4565b505084890196505b509498975050505050505050565b60008219821115610d0657610d06610bd7565b50019056fea2646970667358221220df899f9b4cf84d99b36928224619fdfa864eceab5e7c9a00a95a7e505512243864736f6c634300080f0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100df5760003560e01c806340c10f191161008c57806395d89b411161006657806395d89b41146101e5578063a9059cbb146101ed578063d505accf14610200578063dd62ed3e1461021357600080fd5b806340c10f191461019057806370a08231146101a55780637ecebe00146101c557600080fd5b806323b872dd116100bd57806323b872dd1461013c578063313ce5671461014f5780633644e5151461018857600080fd5b806306fdde03146100e4578063095ea7b31461010257806318160ddd14610125575b600080fd5b6100ec61023e565b6040516100f991906109ba565b60405180910390f35b610115610110366004610a56565b6102cc565b60405190151581526020016100f9565b61012e60025481565b6040519081526020016100f9565b61011561014a366004610a80565b610345565b6101767f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016100f9565b61012e610489565b6101a361019e366004610a56565b6104e4565b005b61012e6101b3366004610abc565b60036020526000908152604090205481565b61012e6101d3366004610abc565b60056020526000908152604090205481565b6100ec6104f2565b6101156101fb366004610a56565b6104ff565b6101a361020e366004610ade565b610584565b61012e610221366004610b51565b600460209081526000928352604080842090915290825290205481565b6000805461024b90610b84565b80601f016020809104026020016040519081016040528092919081815260200182805461027790610b84565b80156102c45780601f10610299576101008083540402835291602001916102c4565b820191906000526020600020905b8154815290600101906020018083116102a757829003601f168201915b505050505081565b33600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103349086815260200190565b60405180910390a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146103d9576103a78382610c06565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff85166000908152600360205260408120805485929061040e908490610c06565b909155505073ffffffffffffffffffffffffffffffffffffffff808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104769087815260200190565b60405180910390a3506001949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000046146104bf576104ba6108a8565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b6104ee8282610942565b5050565b6001805461024b90610b84565b33600090815260036020526040812080548391908390610520908490610c06565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906103349086815260200190565b428410156105f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064015b60405180910390fd5b600060016105ff610489565b73ffffffffffffffffffffffffffffffffffffffff8a811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e0830190915280519201919091207f190100000000000000000000000000000000000000000000000000000000000061010083015261010282019290925261012281019190915261014201604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610751573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff8116158015906107cc57508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b610832576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e455200000000000000000000000000000000000060448201526064016105ea565b73ffffffffffffffffffffffffffffffffffffffff90811660009081526004602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516108da9190610c1d565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546109549190610cf3565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b818110156109e7578581018301518582016040015282016109cb565b818111156109f9576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a5157600080fd5b919050565b60008060408385031215610a6957600080fd5b610a7283610a2d565b946020939093013593505050565b600080600060608486031215610a9557600080fd5b610a9e84610a2d565b9250610aac60208501610a2d565b9150604084013590509250925092565b600060208284031215610ace57600080fd5b610ad782610a2d565b9392505050565b600080600080600080600060e0888a031215610af957600080fd5b610b0288610a2d565b9650610b1060208901610a2d565b95506040880135945060608801359350608088013560ff81168114610b3457600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610b6457600080fd5b610b6d83610a2d565b9150610b7b60208401610a2d565b90509250929050565b600181811c90821680610b9857607f821691505b602082108103610bd1577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082821015610c1857610c18610bd7565b500390565b600080835481600182811c915080831680610c3957607f831692505b60208084108203610c71577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610c855760018114610cb857610ce5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610ce5565b60008a81526020902060005b86811015610cdd5781548b820152908501908301610cc4565b505084890196505b509498975050505050505050565b60008219821115610d0657610d06610bd7565b50019056fea2646970667358221220df899f9b4cf84d99b36928224619fdfa864eceab5e7c9a00a95a7e505512243864736f6c634300080f0033",
"linkReferences": {},
"deployedLinkReferences": {}
}
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../../../build-info/f284230655a288ecb4542d9b36c2e1e7.json"
"buildInfo": "../../../../build-info/c52a72dedfa0eb061ebd68bd11b61401.json"
}

@@ -23,3 +23,3 @@ {

"internalType": "address",
"name": "approved",
"name": "spender",
"type": "address"

@@ -30,3 +30,3 @@ },

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -81,3 +81,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -93,3 +93,3 @@ }

"internalType": "address",
"name": "to",
"name": "spender",
"type": "address"

@@ -99,3 +99,3 @@ },

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -132,3 +132,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "",
"type": "uint256"

@@ -152,3 +152,3 @@ }

"internalType": "address",
"name": "owner",
"name": "",
"type": "address"

@@ -158,3 +158,3 @@ },

"internalType": "address",
"name": "operator",
"name": "",
"type": "address"

@@ -209,3 +209,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -218,3 +218,3 @@ }

"internalType": "address",
"name": "",
"name": "owner",
"type": "address"

@@ -240,3 +240,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -264,3 +264,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -270,3 +270,3 @@ },

"internalType": "bytes",
"name": "_data",
"name": "data",
"type": "bytes"

@@ -334,3 +334,3 @@ }

"internalType": "uint256",
"name": "tokenId",
"name": "",
"type": "uint256"

@@ -347,3 +347,3 @@ }

],
"stateMutability": "view",
"stateMutability": "pure",
"type": "function"

@@ -365,3 +365,3 @@ },

"internalType": "uint256",
"name": "tokenId",
"name": "id",
"type": "uint256"

@@ -376,6 +376,6 @@ }

],
"bytecode": "0x60806040523480156200001157600080fd5b506040805180820182526004815263151154d560e21b6020808301918252835180850190945260038452621514d560ea1b908401528151919291620000599160009162000078565b5080516200006f90600190602084019062000078565b5050506200015b565b82805462000086906200011e565b90600052602060002090601f016020900481019282620000aa5760008555620000f5565b82601f10620000c557805160ff1916838001178555620000f5565b82800160010185558215620000f5579182015b82811115620000f5578251825591602001919060010190620000d8565b506200010392915062000107565b5090565b5b8082111562000103576000815560010162000108565b600181811c908216806200013357607f821691505b602082108114156200015557634e487b7160e01b600052602260045260246000fd5b50919050565b611963806200016b6000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101ee578063b88d4fde14610201578063c87b56dd14610214578063e985e9c51461022757600080fd5b80636352211e146101b257806370a08231146101c557806395d89b41146101e657600080fd5b8063095ea7b3116100c8578063095ea7b31461016457806323b872dd1461017957806340c10f191461018c57806342842e0e1461019f57600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004611426565b610270565b60405190151581526020015b60405180910390f35b61011f610355565b60405161010e91906114b9565b61013f61013a3660046114cc565b6103e7565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010e565b61017761017236600461150e565b6104ac565b005b610177610187366004611538565b610605565b61017761019a36600461150e565b61068c565b6101776101ad366004611538565b61069a565b61013f6101c03660046114cc565b6106b5565b6101d86101d3366004611574565b61074d565b60405190815260200161010e565b61011f610801565b6101776101fc36600461158f565b610810565b61017761020f3660046115fa565b61090d565b61011f6102223660046114cc565b61099b565b6101026102353660046116f4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205460ff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd00000000000000000000000000000000000000000000000000000000148061030357507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061034f57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60606000805461036490611727565b80601f016020809104026020016040519081016040528092919081815260200182805461039090611727565b80156103dd5780601f106103b2576101008083540402835291602001916103dd565b820191906000526020600020905b8154815290600101906020018083116103c057829003601f168201915b5050505050905090565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff166104835760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201527f697374656e7420746f6b656e000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5060009081526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60006104b7826106b5565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561055b5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f7200000000000000000000000000000000000000000000000000000000000000606482015260840161047a565b3373ffffffffffffffffffffffffffffffffffffffff8216148061058457506105848133610235565b6105f65760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000606482015260840161047a565b6106008383610a9e565b505050565b61060f3382610b3e565b6106815760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f766564000000000000000000000000000000606482015260840161047a565b610600838383610c94565b6106968282610ec7565b5050565b6106008383836040518060200160405280600081525061090d565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff168061034f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201527f656e7420746f6b656e0000000000000000000000000000000000000000000000606482015260840161047a565b600073ffffffffffffffffffffffffffffffffffffffff82166107d85760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015260840161047a565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b60606001805461036490611727565b73ffffffffffffffffffffffffffffffffffffffff82163314156108765760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161047a565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109173383610b3e565b6109895760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f766564000000000000000000000000000000606482015260840161047a565b61099584848484611055565b50505050565b60008181526002602052604090205460609073ffffffffffffffffffffffffffffffffffffffff16610a355760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000606482015260840161047a565b6000610a4c60408051602081019091526000815290565b90506000815111610a6c5760405180602001604052806000815250610a97565b80610a76846110de565b604051602001610a8792919061177b565b6040516020818303038152906040525b9392505050565b600081815260046020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091558190610af8826106b5565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff16610bd55760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201527f697374656e7420746f6b656e0000000000000000000000000000000000000000606482015260840161047a565b6000610be0836106b5565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c4f57508373ffffffffffffffffffffffffffffffffffffffff16610c37846103e7565b73ffffffffffffffffffffffffffffffffffffffff16145b80610c8c575073ffffffffffffffffffffffffffffffffffffffff80821660009081526005602090815260408083209388168352929052205460ff165b949350505050565b8273ffffffffffffffffffffffffffffffffffffffff16610cb4826106b5565b73ffffffffffffffffffffffffffffffffffffffff1614610d3d5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960448201527f73206e6f74206f776e0000000000000000000000000000000000000000000000606482015260840161047a565b73ffffffffffffffffffffffffffffffffffffffff8216610dc55760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161047a565b610dd0600082610a9e565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600360205260408120805460019290610e069084906117d9565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290610e419084906117f0565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff86811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f2a5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015260640161047a565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610f9c5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015260640161047a565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290610fd29084906117f0565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b611060848484610c94565b61106c84848484611210565b6109955760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e7465720000000000000000000000000000606482015260840161047a565b60608161111e57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611148578061113281611808565b91506111419050600a83611870565b9150611122565b60008167ffffffffffffffff811115611163576111636115cb565b6040519080825280601f01601f19166020018201604052801561118d576020820181803683370190505b5090505b8415610c8c576111a26001836117d9565b91506111af600a86611884565b6111ba9060306117f0565b60f81b8183815181106111cf576111cf611898565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611209600a86611870565b9450611191565b600073ffffffffffffffffffffffffffffffffffffffff84163b156113ea576040517f150b7a0200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85169063150b7a02906112879033908990889088906004016118c7565b602060405180830381600087803b1580156112a157600080fd5b505af19250505080156112ef575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526112ec91810190611910565b60015b61139f573d80801561131d576040519150601f19603f3d011682016040523d82523d6000602084013e611322565b606091505b5080516113975760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e7465720000000000000000000000000000606482015260840161047a565b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050610c8c565b506001949350505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461142357600080fd5b50565b60006020828403121561143857600080fd5b8135610a97816113f5565b60005b8381101561145e578181015183820152602001611446565b838111156109955750506000910152565b60008151808452611487816020860160208601611443565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610a97602083018461146f565b6000602082840312156114de57600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461150957600080fd5b919050565b6000806040838503121561152157600080fd5b61152a836114e5565b946020939093013593505050565b60008060006060848603121561154d57600080fd5b611556846114e5565b9250611564602085016114e5565b9150604084013590509250925092565b60006020828403121561158657600080fd5b610a97826114e5565b600080604083850312156115a257600080fd5b6115ab836114e5565b9150602083013580151581146115c057600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000806080858703121561161057600080fd5b611619856114e5565b9350611627602086016114e5565b925060408501359150606085013567ffffffffffffffff8082111561164b57600080fd5b818701915087601f83011261165f57600080fd5b813581811115611671576116716115cb565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156116b7576116b76115cb565b816040528281528a60208487010111156116d057600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561170757600080fd5b611710836114e5565b915061171e602084016114e5565b90509250929050565b600181811c9082168061173b57607f821691505b60208210811415611775577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000835161178d818460208801611443565b8351908301906117a1818360208801611443565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000828210156117eb576117eb6117aa565b500390565b60008219821115611803576118036117aa565b500190565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561183a5761183a6117aa565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60008261187f5761187f611841565b500490565b60008261189357611893611841565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152611906608083018461146f565b9695505050505050565b60006020828403121561192257600080fd5b8151610a97816113f556fea264697066735822122099402f9f0b9526703142e756819c02d075ac0af30519c7ffb469f7850412a12264736f6c63430008090033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146101ee578063b88d4fde14610201578063c87b56dd14610214578063e985e9c51461022757600080fd5b80636352211e146101b257806370a08231146101c557806395d89b41146101e657600080fd5b8063095ea7b3116100c8578063095ea7b31461016457806323b872dd1461017957806340c10f191461018c57806342842e0e1461019f57600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004611426565b610270565b60405190151581526020015b60405180910390f35b61011f610355565b60405161010e91906114b9565b61013f61013a3660046114cc565b6103e7565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010e565b61017761017236600461150e565b6104ac565b005b610177610187366004611538565b610605565b61017761019a36600461150e565b61068c565b6101776101ad366004611538565b61069a565b61013f6101c03660046114cc565b6106b5565b6101d86101d3366004611574565b61074d565b60405190815260200161010e565b61011f610801565b6101776101fc36600461158f565b610810565b61017761020f3660046115fa565b61090d565b61011f6102223660046114cc565b61099b565b6101026102353660046116f4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260056020908152604080832093909416825291909152205460ff1690565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd00000000000000000000000000000000000000000000000000000000148061030357507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061034f57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60606000805461036490611727565b80601f016020809104026020016040519081016040528092919081815260200182805461039090611727565b80156103dd5780601f106103b2576101008083540402835291602001916103dd565b820191906000526020600020905b8154815290600101906020018083116103c057829003601f168201915b5050505050905090565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff166104835760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201527f697374656e7420746f6b656e000000000000000000000000000000000000000060648201526084015b60405180910390fd5b5060009081526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60006104b7826106b5565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561055b5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f7200000000000000000000000000000000000000000000000000000000000000606482015260840161047a565b3373ffffffffffffffffffffffffffffffffffffffff8216148061058457506105848133610235565b6105f65760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000606482015260840161047a565b6106008383610a9e565b505050565b61060f3382610b3e565b6106815760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f766564000000000000000000000000000000606482015260840161047a565b610600838383610c94565b6106968282610ec7565b5050565b6106008383836040518060200160405280600081525061090d565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff168061034f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201527f656e7420746f6b656e0000000000000000000000000000000000000000000000606482015260840161047a565b600073ffffffffffffffffffffffffffffffffffffffff82166107d85760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a6560448201527f726f206164647265737300000000000000000000000000000000000000000000606482015260840161047a565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b60606001805461036490611727565b73ffffffffffffffffffffffffffffffffffffffff82163314156108765760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161047a565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109173383610b3e565b6109895760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f766564000000000000000000000000000000606482015260840161047a565b61099584848484611055565b50505050565b60008181526002602052604090205460609073ffffffffffffffffffffffffffffffffffffffff16610a355760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000606482015260840161047a565b6000610a4c60408051602081019091526000815290565b90506000815111610a6c5760405180602001604052806000815250610a97565b80610a76846110de565b604051602001610a8792919061177b565b6040516020818303038152906040525b9392505050565b600081815260046020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091558190610af8826106b5565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008181526002602052604081205473ffffffffffffffffffffffffffffffffffffffff16610bd55760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201527f697374656e7420746f6b656e0000000000000000000000000000000000000000606482015260840161047a565b6000610be0836106b5565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c4f57508373ffffffffffffffffffffffffffffffffffffffff16610c37846103e7565b73ffffffffffffffffffffffffffffffffffffffff16145b80610c8c575073ffffffffffffffffffffffffffffffffffffffff80821660009081526005602090815260408083209388168352929052205460ff165b949350505050565b8273ffffffffffffffffffffffffffffffffffffffff16610cb4826106b5565b73ffffffffffffffffffffffffffffffffffffffff1614610d3d5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960448201527f73206e6f74206f776e0000000000000000000000000000000000000000000000606482015260840161047a565b73ffffffffffffffffffffffffffffffffffffffff8216610dc55760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161047a565b610dd0600082610a9e565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600360205260408120805460019290610e069084906117d9565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290610e419084906117f0565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff86811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f2a5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015260640161047a565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610f9c5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015260640161047a565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805460019290610fd29084906117f0565b909155505060008181526002602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b611060848484610c94565b61106c84848484611210565b6109955760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e7465720000000000000000000000000000606482015260840161047a565b60608161111e57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611148578061113281611808565b91506111419050600a83611870565b9150611122565b60008167ffffffffffffffff811115611163576111636115cb565b6040519080825280601f01601f19166020018201604052801561118d576020820181803683370190505b5090505b8415610c8c576111a26001836117d9565b91506111af600a86611884565b6111ba9060306117f0565b60f81b8183815181106111cf576111cf611898565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611209600a86611870565b9450611191565b600073ffffffffffffffffffffffffffffffffffffffff84163b156113ea576040517f150b7a0200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85169063150b7a02906112879033908990889088906004016118c7565b602060405180830381600087803b1580156112a157600080fd5b505af19250505080156112ef575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526112ec91810190611910565b60015b61139f573d80801561131d576040519150601f19603f3d011682016040523d82523d6000602084013e611322565b606091505b5080516113975760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527f63656976657220696d706c656d656e7465720000000000000000000000000000606482015260840161047a565b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050610c8c565b506001949350505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461142357600080fd5b50565b60006020828403121561143857600080fd5b8135610a97816113f5565b60005b8381101561145e578181015183820152602001611446565b838111156109955750506000910152565b60008151808452611487816020860160208601611443565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000610a97602083018461146f565b6000602082840312156114de57600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461150957600080fd5b919050565b6000806040838503121561152157600080fd5b61152a836114e5565b946020939093013593505050565b60008060006060848603121561154d57600080fd5b611556846114e5565b9250611564602085016114e5565b9150604084013590509250925092565b60006020828403121561158657600080fd5b610a97826114e5565b600080604083850312156115a257600080fd5b6115ab836114e5565b9150602083013580151581146115c057600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000806080858703121561161057600080fd5b611619856114e5565b9350611627602086016114e5565b925060408501359150606085013567ffffffffffffffff8082111561164b57600080fd5b818701915087601f83011261165f57600080fd5b813581811115611671576116716115cb565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156116b7576116b76115cb565b816040528281528a60208487010111156116d057600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561170757600080fd5b611710836114e5565b915061171e602084016114e5565b90509250929050565b600181811c9082168061173b57607f821691505b60208210811415611775577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000835161178d818460208801611443565b8351908301906117a1818360208801611443565b01949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000828210156117eb576117eb6117aa565b500390565b60008219821115611803576118036117aa565b500190565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561183a5761183a6117aa565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60008261187f5761187f611841565b500490565b60008261189357611893611841565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152611906608083018461146f565b9695505050505050565b60006020828403121561192257600080fd5b8151610a97816113f556fea264697066735822122099402f9f0b9526703142e756819c02d075ac0af30519c7ffb469f7850412a12264736f6c63430008090033",
"bytecode": "0x60806040523480156200001157600080fd5b5060405180604001604052806004815260200163151154d560e21b815250604051806040016040528060038152602001621514d560ea1b81525081600090816200005c919062000119565b5060016200006b828262000119565b505050620001e5565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200009f57607f821691505b602082108103620000c057634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200011457600081815260208120601f850160051c81016020861015620000ef5750805b601f850160051c820191505b818110156200011057828155600101620000fb565b5050505b505050565b81516001600160401b0381111562000135576200013562000074565b6200014d816200014684546200008a565b84620000c6565b602080601f8311600181146200018557600084156200016c5750858301515b600019600386901b1c1916600185901b17855562000110565b600085815260208120601f198616915b82811015620001b65788860151825594840194600190910190840162000195565b5085821015620001d55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6111ff80620001f56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610211578063b88d4fde14610224578063c87b56dd14610237578063e985e9c51461024b57600080fd5b80636352211e146101d557806370a08231146101e857806395d89b411461020957600080fd5b8063095ea7b3116100c8578063095ea7b31461018757806323b872dd1461019c57806340c10f19146101af57806342842e0e146101c257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e7b565b610279565b60405190151581526020015b60405180910390f35b61011f61035e565b60405161010e9190610e9f565b61016261013a366004610f12565b60046020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010e565b61019a610195366004610f4f565b6103ec565b005b61019a6101aa366004610f79565b61053b565b61019a6101bd366004610f4f565b610802565b61019a6101d0366004610f79565b610810565b6101626101e3366004610f12565b61097a565b6101fb6101f6366004610fb5565b610a0b565b60405190815260200161010e565b61011f610ab3565b61019a61021f366004610fd0565b610ac0565b61019a61023236600461100c565b610b57565b61011f610245366004610f12565b50606090565b6101026102593660046110a7565b600560209081526000928352604080842090915290825290205460ff1681565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061030c57507f80ac58cd000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b8061035857507f5b5e139f000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b6000805461036b906110da565b80601f0160208091040260200160405190810160405280929190818152602001828054610397906110da565b80156103e45780601f106103b9576101008083540402835291602001916103e4565b820191906000526020600020905b8154815290600101906020018083116103c757829003601f168201915b505050505081565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff163381148061044f575073ffffffffffffffffffffffffffffffffffffffff8116600090815260056020908152604080832033845290915290205460ff165b6104ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064015b60405180910390fd5b60008281526004602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff8481169116146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f57524f4e475f46524f4d0000000000000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff8216610648576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e5400000000000000000000000000000060448201526064016104b1565b3373ffffffffffffffffffffffffffffffffffffffff8416148061069c575073ffffffffffffffffffffffffffffffffffffffff8316600090815260056020908152604080832033845290915290205460ff165b806106ca575060008181526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1633145b610730576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff808416600081815260036020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055938616808352848320805460010190558583526002825284832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168317909155600490925284832080549092169091559251849392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b61080c8282610cb1565b5050565b61081b83838361053b565b73ffffffffffffffffffffffffffffffffffffffff82163b158061090f57506040517f150b7a020000000000000000000000000000000000000000000000000000000080825233600483015273ffffffffffffffffffffffffffffffffffffffff858116602484015260448301849052608060648401526000608484015290919084169063150b7a029060a4016020604051808303816000875af11580156108c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108eb919061112d565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b610975576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e540000000000000000000000000000000060448201526064016104b1565b505050565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1680610a06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e4f545f4d494e5445440000000000000000000000000000000000000000000060448201526064016104b1565b919050565b600073ffffffffffffffffffffffffffffffffffffffff8216610a8a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f41444452455353000000000000000000000000000000000000000060448201526064016104b1565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b6001805461036b906110da565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b610b6285858561053b565b73ffffffffffffffffffffffffffffffffffffffff84163b1580610c4457506040517f150b7a02000000000000000000000000000000000000000000000000000000008082529073ffffffffffffffffffffffffffffffffffffffff86169063150b7a0290610bdd9033908a9089908990899060040161114a565b6020604051808303816000875af1158015610bfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c20919061112d565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b610caa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e540000000000000000000000000000000060448201526064016104b1565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610d2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e5400000000000000000000000000000060448201526064016104b1565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610dba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f414c52454144595f4d494e54454400000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff8216600081815260036020908152604080832080546001019055848352600290915280822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610e7857600080fd5b50565b600060208284031215610e8d57600080fd5b8135610e9881610e4a565b9392505050565b600060208083528351808285015260005b81811015610ecc57858101830151858201604001528201610eb0565b81811115610ede576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600060208284031215610f2457600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a0657600080fd5b60008060408385031215610f6257600080fd5b610f6b83610f2b565b946020939093013593505050565b600080600060608486031215610f8e57600080fd5b610f9784610f2b565b9250610fa560208501610f2b565b9150604084013590509250925092565b600060208284031215610fc757600080fd5b610e9882610f2b565b60008060408385031215610fe357600080fd5b610fec83610f2b565b91506020830135801515811461100157600080fd5b809150509250929050565b60008060008060006080868803121561102457600080fd5b61102d86610f2b565b945061103b60208701610f2b565b935060408601359250606086013567ffffffffffffffff8082111561105f57600080fd5b818801915088601f83011261107357600080fd5b81358181111561108257600080fd5b89602082850101111561109457600080fd5b9699959850939650602001949392505050565b600080604083850312156110ba57600080fd5b6110c383610f2b565b91506110d160208401610f2b565b90509250929050565b600181811c908216806110ee57607f821691505b602082108103611127577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60006020828403121561113f57600080fd5b8151610e9881610e4a565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015260806060830152826080830152828460a0840137600060a0848401015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8501168301019050969550505050505056fea26469706673582212207672f4f20428ccbb1ee281b58a94b626c5d8242e26084ab361c15141c19071e664736f6c634300080f0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610211578063b88d4fde14610224578063c87b56dd14610237578063e985e9c51461024b57600080fd5b80636352211e146101d557806370a08231146101e857806395d89b411461020957600080fd5b8063095ea7b3116100c8578063095ea7b31461018757806323b872dd1461019c57806340c10f19146101af57806342842e0e146101c257600080fd5b806301ffc9a7146100ef57806306fdde0314610117578063081812fc1461012c575b600080fd5b6101026100fd366004610e7b565b610279565b60405190151581526020015b60405180910390f35b61011f61035e565b60405161010e9190610e9f565b61016261013a366004610f12565b60046020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161010e565b61019a610195366004610f4f565b6103ec565b005b61019a6101aa366004610f79565b61053b565b61019a6101bd366004610f4f565b610802565b61019a6101d0366004610f79565b610810565b6101626101e3366004610f12565b61097a565b6101fb6101f6366004610fb5565b610a0b565b60405190815260200161010e565b61011f610ab3565b61019a61021f366004610fd0565b610ac0565b61019a61023236600461100c565b610b57565b61011f610245366004610f12565b50606090565b6101026102593660046110a7565b600560209081526000928352604080842090915290825290205460ff1681565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061030c57507f80ac58cd000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b8061035857507f5b5e139f000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b6000805461036b906110da565b80601f0160208091040260200160405190810160405280929190818152602001828054610397906110da565b80156103e45780601f106103b9576101008083540402835291602001916103e4565b820191906000526020600020905b8154815290600101906020018083116103c757829003601f168201915b505050505081565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff163381148061044f575073ffffffffffffffffffffffffffffffffffffffff8116600090815260056020908152604080832033845290915290205460ff165b6104ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064015b60405180910390fd5b60008281526004602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff8481169116146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f57524f4e475f46524f4d0000000000000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff8216610648576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e5400000000000000000000000000000060448201526064016104b1565b3373ffffffffffffffffffffffffffffffffffffffff8416148061069c575073ffffffffffffffffffffffffffffffffffffffff8316600090815260056020908152604080832033845290915290205460ff165b806106ca575060008181526004602052604090205473ffffffffffffffffffffffffffffffffffffffff1633145b610730576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff808416600081815260036020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055938616808352848320805460010190558583526002825284832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168317909155600490925284832080549092169091559251849392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b61080c8282610cb1565b5050565b61081b83838361053b565b73ffffffffffffffffffffffffffffffffffffffff82163b158061090f57506040517f150b7a020000000000000000000000000000000000000000000000000000000080825233600483015273ffffffffffffffffffffffffffffffffffffffff858116602484015260448301849052608060648401526000608484015290919084169063150b7a029060a4016020604051808303816000875af11580156108c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108eb919061112d565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b610975576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e540000000000000000000000000000000060448201526064016104b1565b505050565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1680610a06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e4f545f4d494e5445440000000000000000000000000000000000000000000060448201526064016104b1565b919050565b600073ffffffffffffffffffffffffffffffffffffffff8216610a8a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f41444452455353000000000000000000000000000000000000000060448201526064016104b1565b5073ffffffffffffffffffffffffffffffffffffffff1660009081526003602052604090205490565b6001805461036b906110da565b33600081815260056020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b610b6285858561053b565b73ffffffffffffffffffffffffffffffffffffffff84163b1580610c4457506040517f150b7a02000000000000000000000000000000000000000000000000000000008082529073ffffffffffffffffffffffffffffffffffffffff86169063150b7a0290610bdd9033908a9089908990899060040161114a565b6020604051808303816000875af1158015610bfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c20919061112d565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b610caa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f554e534146455f524543495049454e540000000000000000000000000000000060448201526064016104b1565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610d2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f494e56414c49445f524543495049454e5400000000000000000000000000000060448201526064016104b1565b60008181526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1615610dba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f414c52454144595f4d494e54454400000000000000000000000000000000000060448201526064016104b1565b73ffffffffffffffffffffffffffffffffffffffff8216600081815260036020908152604080832080546001019055848352600290915280822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610e7857600080fd5b50565b600060208284031215610e8d57600080fd5b8135610e9881610e4a565b9392505050565b600060208083528351808285015260005b81811015610ecc57858101830151858201604001528201610eb0565b81811115610ede576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b600060208284031215610f2457600080fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610a0657600080fd5b60008060408385031215610f6257600080fd5b610f6b83610f2b565b946020939093013593505050565b600080600060608486031215610f8e57600080fd5b610f9784610f2b565b9250610fa560208501610f2b565b9150604084013590509250925092565b600060208284031215610fc757600080fd5b610e9882610f2b565b60008060408385031215610fe357600080fd5b610fec83610f2b565b91506020830135801515811461100157600080fd5b809150509250929050565b60008060008060006080868803121561102457600080fd5b61102d86610f2b565b945061103b60208701610f2b565b935060408601359250606086013567ffffffffffffffff8082111561105f57600080fd5b818801915088601f83011261107357600080fd5b81358181111561108257600080fd5b89602082850101111561109457600080fd5b9699959850939650602001949392505050565b600080604083850312156110ba57600080fd5b6110c383610f2b565b91506110d160208401610f2b565b90509250929050565b600181811c908216806110ee57607f821691505b602082108103611127577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60006020828403121561113f57600080fd5b8151610e9881610e4a565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015260806060830152826080830152828460a0840137600060a0848401015260a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8501168301019050969550505050505056fea26469706673582212207672f4f20428ccbb1ee281b58a94b626c5d8242e26084ab361c15141c19071e664736f6c634300080f0033",
"linkReferences": {},
"deployedLinkReferences": {}
}
{
"name": "@eth-optimism/contracts-periphery",
"version": "0.0.0-202251153718",
"version": "0.0.0-202272320426",
"description": "[Optimism] External (out-of-protocol) L1 and L2 smart contracts for Optimism",

@@ -10,16 +10,19 @@ "main": "dist/index",

"dist/**/*.d.ts",
"dist/types/*.ts",
"dist/types",
"artifacts/contracts/**/*.json",
"deployments/**/*.json",
"L1",
"L2",
"libraries",
"standards"
"contracts"
],
"scripts": {
"build": "yarn build:contracts",
"build:contracts": "hardhat compile --show-stack-traces",
"build": "yarn build:hh",
"build:hh": "hardhat compile --show-stack-traces",
"build:forge": "forge build",
"test": "yarn test:contracts",
"test:contracts": "hardhat test --show-stack-traces",
"test:forge": "forge test",
"test:coverage": "NODE_OPTIONS=--max_old_space_size=8192 hardhat coverage && istanbul check-coverage --statements 90 --branches 84 --functions 88 --lines 90",
"test:slither": "slither .",
"gas-snapshot": "forge snapshot",
"pretest:slither": "rm -f @openzeppelin && rm -f hardhat && ln -s node_modules/@openzeppelin @openzeppelin && ln -s ../../node_modules/hardhat hardhat",
"posttest:slither": "rm -f @openzeppelin && rm -f hardhat",
"lint:ts:check": "eslint . --max-warnings=0",

@@ -32,3 +35,3 @@ "lint:contracts:check": "yarn solhint -f table 'contracts/**/*.sol'",

"lint": "yarn lint:fix && yarn lint:check",
"clean": "rm -rf ./dist ./artifacts ./cache ./coverage ./tsconfig.build.tsbuildinfo",
"clean": "rm -rf ./dist ./artifacts ./forge-artifacts ./cache ./coverage ./tsconfig.tsbuildinfo",
"prepublishOnly": "yarn copyfiles -u 1 -e \"**/test-*/**/*\" \"contracts/**/*\" ./",

@@ -54,17 +57,20 @@ "postpublish": "rimraf chugsplash L1 L2 libraries standards",

},
"dependencies": {
"@eth-optimism/core-utils": "^0.0.0-202251153718",
"@openzeppelin/contracts": "4.3.2"
},
"devDependencies": {
"@defi-wonderland/smock": "^2.0.7",
"@eth-optimism/contracts": "^0.0.0-202272320426",
"@eth-optimism/contracts-bedrock": "^0.0.0-202272320426",
"@eth-optimism/core-utils": "^0.9.2",
"@eth-optimism/hardhat-deploy-config": "^0.2.1",
"@ethersproject/hardware-wallets": "^5.6.1",
"@nomiclabs/hardhat-ethers": "^2.0.2",
"@nomiclabs/hardhat-etherscan": "^3.0.3",
"@nomiclabs/hardhat-waffle": "^2.0.1",
"@rari-capital/solmate": "^6.3.0",
"@nomiclabs/hardhat-waffle": "^2.0.3",
"@rari-capital/solmate": "https://github.com/rari-capital/solmate.git#eaaccf88ac5290299884437e1aee098a96583d54",
"@openzeppelin/contracts": "4.6.0",
"@openzeppelin/contracts-upgradeable": "4.7.1",
"@types/chai": "^4.2.18",
"@types/mocha": "^8.2.2",
"@types/node": "^17.0.21",
"@typescript-eslint/eslint-plugin": "^4.26.0",
"@typescript-eslint/parser": "^4.26.0",
"@typechain/ethers-v5": "^10.1.0",
"@typechain/hardhat": "^6.1.2",
"babel-eslint": "^10.1.0",

@@ -74,17 +80,14 @@ "chai": "^4.3.4",

"dotenv": "^10.0.0",
"eslint": "^7.27.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-import": "^2.23.4",
"eslint-plugin-jsdoc": "^35.1.2",
"eslint-plugin-prefer-arrow": "^1.2.3",
"eslint-plugin-prettier": "^3.4.0",
"eslint-plugin-react": "^7.24.0",
"eslint-plugin-unicorn": "^32.0.1",
"ethereum-waffle": "^3.3.0",
"ds-test": "https://github.com/dapphub/ds-test.git#9310e879db8ba3ea6d5c6489a579118fd264a3f5",
"ethereum-waffle": "^3.4.4",
"ethers": "^5.6.8",
"forge-std": "https://github.com/foundry-rs/forge-std.git#f18682b2874fc57d7c80a511fed0b35ec4201ffa",
"hardhat": "^2.9.6",
"hardhat-deploy": "^0.11.10",
"hardhat-gas-reporter": "^1.0.8",
"istanbul": "^0.4.5",
"lint-staged": "11.0.0",
"mocha": "^8.4.0",
"mocha": "^10.0.0",
"mkdirp": "^1.0.4",
"node-fetch": "^2.6.7",
"prettier": "^2.3.1",

@@ -95,5 +98,5 @@ "prettier-plugin-solidity": "^1.0.0-beta.18",

"solidity-coverage": "^0.7.17",
"ts-node": "^10.0.0",
"typescript": "^4.6.2"
"ts-node": "^10.8.2",
"typechain": "^8.1.0"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc