{"bytecode":"608060405234801561000f575f80fd5b50604051610aa6380380610aa683398101604081905261002e916100f8565b338061005357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005c8161008e565b50600180546001600160a01b039384166001600160a01b03199182161790915560028054929093169116179055610129565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146100f3575f80fd5b919050565b5f8060408385031215610109575f80fd5b610112836100dd565b9150610120602084016100dd565b90509250929050565b610970806101365f395ff3fe608060405234801561000f575f80fd5b5060043610610085575f3560e01c8063715018a611610058578063715018a6146100f35780638da5cb5b146100fb578063e5db1e781461010b578063f2fde38b1461011e575f80fd5b8063238ac933146100895780632df485fe146100b85780635491247f146100cb5780636c19e783146100e0575b5f80fd5b60025461009c906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b60015461009c906001600160a01b031681565b6100de6100d93660046107bb565b610131565b005b6100de6100ee36600461084c565b610366565b6100de610390565b5f546001600160a01b031661009c565b6100de61011936600461086c565b6103a3565b6100de61012c36600461084c565b610455565b5f858560405160200161015b92919091825260e01b6001600160e01b031916602082015260240190565b60408051601f1981840301815291815281516020928301205f818152600390935291205490915060ff16156101ce5760405162461bcd60e51b81526020600482015260146024820152734f7264657220616c72656164792065786973747360601b60448201526064015b60405180910390fd5b5f818152600360209081526040808320805460ff191660011790555161023e9189918991899189910193845260e09290921b6001600160e01b031916602084015260601b6bffffffffffffffffffffffff1916602483015260c01b6001600160c01b031916603882015260400190565b6040516020818303038152906040528051906020012090505f61028d827f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f908152601c91909152603c902090565b90505f61029a8286610492565b6002549091506001600160a01b038083169116146102ee5760405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b60448201526064016101c5565b6001546040516340c10f1960e01b81526001600160a01b03898116600483015267ffffffffffffffff891660248301529091169081906340c10f19906044015f604051808303815f87803b158015610344575f80fd5b505af1158015610356573d5f803e3d5ffd5b5050505050505050505050505050565b61036e6104ba565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6103986104ba565b6103a15f6104e6565b565b60015460405163079cc67960e41b815233600482015267ffffffffffffffff831660248201526001600160a01b039091169081906379cc6790906044015f604051808303815f87803b1580156103f7575f80fd5b505af1158015610409573d5f803e3d5ffd5b50505050336001600160a01b03167f067a4007ee9d9a9d3a4dd449cd103250958b8239602628b660c3ae5f59d5763b84846040516104489291906108ca565b60405180910390a2505050565b61045d6104ba565b6001600160a01b03811661048657604051631e4fbdf760e01b81525f60048201526024016101c5565b61048f816104e6565b50565b5f805f806104a08686610535565b9250925092506104b0828261057e565b5090949350505050565b5f546001600160a01b031633146103a15760405163118cdaa760e01b81523360048201526024016101c5565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f805f835160410361056c576020840151604085015160608601515f1a61055e8882858561063a565b955095509550505050610577565b505081515f91506002905b9250925092565b5f82600381111561059157610591610926565b0361059a575050565b60018260038111156105ae576105ae610926565b036105cc5760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156105e0576105e0610926565b036106015760405163fce698f760e01b8152600481018290526024016101c5565b600382600381111561061557610615610926565b03610636576040516335e2f38360e21b8152600481018290526024016101c5565b5050565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561067357505f915060039050826106f8565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156106c4573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b0381166106ef57505f9250600191508290506106f8565b92505f91508190505b9450945094915050565b80356001600160a01b0381168114610718575f80fd5b919050565b803567ffffffffffffffff81168114610718575f80fd5b634e487b7160e01b5f52604160045260245ffd5b5f67ffffffffffffffff8084111561076257610762610734565b604051601f8501601f19908116603f0116810190828211818310171561078a5761078a610734565b816040528093508581528686860111156107a2575f80fd5b858560208301375f602087830101525050509392505050565b5f805f805f60a086880312156107cf575f80fd5b85359450602086013563ffffffff811681146107e9575f80fd5b93506107f760408701610702565b92506108056060870161071d565b9150608086013567ffffffffffffffff811115610820575f80fd5b8601601f81018813610830575f80fd5b61083f88823560208401610748565b9150509295509295909350565b5f6020828403121561085c575f80fd5b61086582610702565b9392505050565b5f806040838503121561087d575f80fd5b823567ffffffffffffffff811115610893575f80fd5b8301601f810185136108a3575f80fd5b6108b285823560208401610748565b9250506108c16020840161071d565b90509250929050565b604081525f83518060408401525f5b818110156108f657602081870181015160608684010152016108d9565b505f606082850101526060601f19601f83011684010191505067ffffffffffffffff831660208301529392505050565b634e487b7160e01b5f52602160045260245ffdfea264697066735822122090446bb71d8fa6036668c86da7fb4f4e83c17273095688df017e03e884adcdd064736f6c63430008180033","abi":"[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_vBTCAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_signer\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"ECDSAInvalidSignature\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"ECDSAInvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"ECDSAInvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"receipt\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"amount\",\"type\":\"uint64\"}],\"name\":\"Withdraw\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txid\",\"type\":\"bytes32\"},{\"internalType\":\"uint32\",\"name\":\"vout\",\"type\":\"uint32\"},{\"internalType\":\"address\",\"name\":\"receipt\",\"type\":\"address\"},{\"internalType\":\"uint64\",\"name\":\"amount\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"sig\",\"type\":\"bytes\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newSigner\",\"type\":\"address\"}],\"name\":\"setSigner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"signer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vBTC\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"receipt\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"amount\",\"type\":\"uint64\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]"}