github.com/diadata-org/diadata@v1.4.593/config/nftContracts/cryptokittiesauction/cryptokittiesauction.go (about) 1 // Code generated - DO NOT EDIT. 2 // This file is a generated binding and any manual changes will be lost. 3 4 package cryptokittiesauction 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = bind.Bind 24 _ = common.Big1 25 _ = types.BloomLookup 26 _ = event.NewSubscription 27 ) 28 29 // ClockAuctionABI is the input ABI used to generate the binding from. 30 const ClockAuctionABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_startingPrice\",\"type\":\"uint256\"},{\"name\":\"_endingPrice\",\"type\":\"uint256\"},{\"name\":\"_duration\",\"type\":\"uint256\"},{\"name\":\"_seller\",\"type\":\"address\"}],\"name\":\"createAuction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"bid\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"withdrawBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"getAuction\",\"outputs\":[{\"name\":\"seller\",\"type\":\"address\"},{\"name\":\"startingPrice\",\"type\":\"uint256\"},{\"name\":\"endingPrice\",\"type\":\"uint256\"},{\"name\":\"duration\",\"type\":\"uint256\"},{\"name\":\"startedAt\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"ownerCut\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"cancelAuctionWhenPaused\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"cancelAuction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"getCurrentPrice\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"nonFungibleContract\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_nftAddress\",\"type\":\"address\"},{\"name\":\"_cut\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"startingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"endingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"AuctionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"totalPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"winner\",\"type\":\"address\"}],\"name\":\"AuctionSuccessful\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"AuctionCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Pause\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpause\",\"type\":\"event\"}]" 31 32 // ClockAuctionFuncSigs maps the 4-byte function signature to its string representation. 33 var ClockAuctionFuncSigs = map[string]string{ 34 "454a2ab3": "bid(uint256)", 35 "96b5a755": "cancelAuction(uint256)", 36 "878eb368": "cancelAuctionWhenPaused(uint256)", 37 "27ebe40a": "createAuction(uint256,uint256,uint256,uint256,address)", 38 "78bd7935": "getAuction(uint256)", 39 "c55d0f56": "getCurrentPrice(uint256)", 40 "dd1b7a0f": "nonFungibleContract()", 41 "8da5cb5b": "owner()", 42 "83b5ff8b": "ownerCut()", 43 "8456cb59": "pause()", 44 "5c975abb": "paused()", 45 "f2fde38b": "transferOwnership(address)", 46 "3f4ba83a": "unpause()", 47 "5fd8c710": "withdrawBalance()", 48 } 49 50 // ClockAuctionBin is the compiled bytecode used for deploying new contracts. 51 var ClockAuctionBin = "0x60606040526000805460a060020a60ff0219169055341561001f57600080fd5b604051604080610e66833981016040528080519190602001805160008054600160a060020a03191633600160a060020a0316178155909250905061271082111561006857600080fd5b50600281905581600160a060020a0381166301ffc9a77f9a20483d000000000000000000000000000000000000000000000000000000006040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281527fffffffff000000000000000000000000000000000000000000000000000000009091166004820152602401602060405180830381600087803b151561010f57600080fd5b5af1151561011c57600080fd5b50505060405180519050151561013157600080fd5b60018054600160a060020a03909216600160a060020a03199092169190911790555050610d03806101636000396000f3006060604052600436106100b65763ffffffff60e060020a60003504166327ebe40a81146100bb5780633f4ba83a146100e8578063454a2ab31461010f5780635c975abb1461011a5780635fd8c7101461012d57806378bd79351461014057806383b5ff8b146101915780638456cb59146101b6578063878eb368146101c95780638da5cb5b146101df57806396b5a7551461020e578063c55d0f5614610224578063dd1b7a0f1461023a578063f2fde38b1461024d575b600080fd5b34156100c657600080fd5b6100e6600435602435604435606435600160a060020a036084351661026c565b005b34156100f357600080fd5b6100fb610355565b604051901515815260200160405180910390f35b6100e66004356103d9565b341561012557600080fd5b6100fb610408565b341561013857600080fd5b6100e6610418565b341561014b57600080fd5b61015660043561048e565b604051600160a060020a03909516855260208501939093526040808501929092526060840152608083019190915260a0909101905180910390f35b341561019c57600080fd5b6101a461051b565b60405190815260200160405180910390f35b34156101c157600080fd5b6100fb610521565b34156101d457600080fd5b6100e66004356105aa565b34156101ea57600080fd5b6101f261061b565b604051600160a060020a03909116815260200160405180910390f35b341561021957600080fd5b6100e660043561062a565b341561022f57600080fd5b6101a4600435610678565b341561024557600080fd5b6101f26106aa565b341561025857600080fd5b6100e6600160a060020a03600435166106b9565b610274610ca9565b60005460a060020a900460ff161561028b57600080fd5b6001608060020a03851685146102a057600080fd5b6001608060020a03841684146102b557600080fd5b67ffffffffffffffff831683146102cb57600080fd5b6102d53387610710565b15156102e057600080fd5b6102ea3387610788565b60a06040519081016040528083600160a060020a03168152602001866001608060020a03168152602001856001608060020a031681526020018467ffffffffffffffff1681526020014267ffffffffffffffff16815250905061034d86826107ff565b505050505050565b6000805433600160a060020a0390811691161461037157600080fd5b60005460a060020a900460ff16151561038957600080fd5b6000805474ff0000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a150600190565b60005460a060020a900460ff16156103f057600080fd5b6103fa813461099a565b506104053382610acb565b50565b60005460a060020a900460ff1681565b60015460008054600160a060020a03928316923381169116148061044d575081600160a060020a031633600160a060020a0316145b151561045857600080fd5b81600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f150505050505050565b600081815260036020526040812081908190819081906104ad81610b21565b15156104b857600080fd5b80546001820154600290920154600160a060020a03909116986001608060020a038084169950700100000000000000000000000000000000909304909216965067ffffffffffffffff808216965068010000000000000000909104169350915050565b60025481565b6000805433600160a060020a0390811691161461053d57600080fd5b60005460a060020a900460ff161561055457600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a150600190565b6000805460a060020a900460ff1615156105c357600080fd5b60005433600160a060020a039081169116146105de57600080fd5b5060008181526003602052604090206105f681610b21565b151561060157600080fd5b8054610617908390600160a060020a0316610b42565b5050565b600054600160a060020a031681565b60008181526003602052604081209061064282610b21565b151561064d57600080fd5b508054600160a060020a03908116903316811461066957600080fd5b6106738382610b42565b505050565b600081815260036020526040812061068f81610b21565b151561069a57600080fd5b6106a381610b8c565b9392505050565b600154600160a060020a031681565b60005433600160a060020a039081169116146106d457600080fd5b600160a060020a038116156104055760008054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b600154600090600160a060020a038085169116636352211e8460405160e060020a63ffffffff84160281526004810191909152602401602060405180830381600087803b151561075f57600080fd5b5af1151561076c57600080fd5b50505060405180519050600160a060020a031614905092915050565b600154600160a060020a03166323b872dd83308460405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b15156107eb57600080fd5b5af115156107f857600080fd5b5050505050565b603c816060015167ffffffffffffffff16101561081b57600080fd5b600082815260036020526040902081908151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039190911617815560208201516001820180546fffffffffffffffffffffffffffffffff19166001608060020a039290921691909117905560408201516001820180546001608060020a03928316700100000000000000000000000000000000029216919091179055606082015160028201805467ffffffffffffffff191667ffffffffffffffff9290921691909117905560808201516002909101805467ffffffffffffffff9290921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055507fa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba78260208301516001608060020a031683604001516001608060020a0316846060015167ffffffffffffffff166040518085815260200184815260200183815260200182815260200194505050505060405180910390a15050565b600082815260036020526040812081808080806109b686610b21565b15156109c157600080fd5b6109ca86610b8c565b9450848810156109d957600080fd5b8554600160a060020a031693506109ef89610c13565b6000851115610a3957610a0185610c60565b92508285039150600160a060020a03841682156108fc0283604051600060405180830381858888f193505050501515610a3957600080fd5b50838703600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515610a6e57600080fd5b7f4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd28986336040519283526020830191909152600160a060020a03166040808301919091526060909101905180910390a15092979650505050505050565b600154600160a060020a031663a9059cbb838360405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b15156107eb57600080fd5b6002015460006801000000000000000090910467ffffffffffffffff161190565b610b4b82610c13565b610b558183610acb565b7f2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df8260405190815260200160405180910390a15050565b6002810154600090819068010000000000000000900467ffffffffffffffff16421115610bd25750600282015468010000000000000000900467ffffffffffffffff1642035b600183015460028401546106a3916001608060020a0380821692700100000000000000000000000000000000909204169067ffffffffffffffff1684610c6c565b6000908152600360205260408120805473ffffffffffffffffffffffffffffffffffffffff19168155600181019190915560020180546fffffffffffffffffffffffffffffffff19169055565b60025461271091020490565b6000808080858510610c8057869350610c9e565b878703925085858402811515610c9257fe5b05915081880190508093505b505050949350505050565b60a06040519081016040908152600080835260208301819052908201819052606082018190526080820152905600a165627a7a72305820677d4a684ab2167ef72b7640b96a95f22a492811ea7d2a486422586e3a5889d40029" 52 53 // DeployClockAuction deploys a new Ethereum contract, binding an instance of ClockAuction to it. 54 func DeployClockAuction(auth *bind.TransactOpts, backend bind.ContractBackend, _nftAddress common.Address, _cut *big.Int) (common.Address, *types.Transaction, *ClockAuction, error) { 55 parsed, err := abi.JSON(strings.NewReader(ClockAuctionABI)) 56 if err != nil { 57 return common.Address{}, nil, nil, err 58 } 59 60 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ClockAuctionBin), backend, _nftAddress, _cut) 61 if err != nil { 62 return common.Address{}, nil, nil, err 63 } 64 return address, tx, &ClockAuction{ClockAuctionCaller: ClockAuctionCaller{contract: contract}, ClockAuctionTransactor: ClockAuctionTransactor{contract: contract}, ClockAuctionFilterer: ClockAuctionFilterer{contract: contract}}, nil 65 } 66 67 // ClockAuction is an auto generated Go binding around an Ethereum contract. 68 type ClockAuction struct { 69 ClockAuctionCaller // Read-only binding to the contract 70 ClockAuctionTransactor // Write-only binding to the contract 71 ClockAuctionFilterer // Log filterer for contract events 72 } 73 74 // ClockAuctionCaller is an auto generated read-only Go binding around an Ethereum contract. 75 type ClockAuctionCaller struct { 76 contract *bind.BoundContract // Generic contract wrapper for the low level calls 77 } 78 79 // ClockAuctionTransactor is an auto generated write-only Go binding around an Ethereum contract. 80 type ClockAuctionTransactor struct { 81 contract *bind.BoundContract // Generic contract wrapper for the low level calls 82 } 83 84 // ClockAuctionFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 85 type ClockAuctionFilterer struct { 86 contract *bind.BoundContract // Generic contract wrapper for the low level calls 87 } 88 89 // ClockAuctionSession is an auto generated Go binding around an Ethereum contract, 90 // with pre-set call and transact options. 91 type ClockAuctionSession struct { 92 Contract *ClockAuction // Generic contract binding to set the session for 93 CallOpts bind.CallOpts // Call options to use throughout this session 94 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 95 } 96 97 // ClockAuctionCallerSession is an auto generated read-only Go binding around an Ethereum contract, 98 // with pre-set call options. 99 type ClockAuctionCallerSession struct { 100 Contract *ClockAuctionCaller // Generic contract caller binding to set the session for 101 CallOpts bind.CallOpts // Call options to use throughout this session 102 } 103 104 // ClockAuctionTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 105 // with pre-set transact options. 106 type ClockAuctionTransactorSession struct { 107 Contract *ClockAuctionTransactor // Generic contract transactor binding to set the session for 108 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 109 } 110 111 // ClockAuctionRaw is an auto generated low-level Go binding around an Ethereum contract. 112 type ClockAuctionRaw struct { 113 Contract *ClockAuction // Generic contract binding to access the raw methods on 114 } 115 116 // ClockAuctionCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 117 type ClockAuctionCallerRaw struct { 118 Contract *ClockAuctionCaller // Generic read-only contract binding to access the raw methods on 119 } 120 121 // ClockAuctionTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 122 type ClockAuctionTransactorRaw struct { 123 Contract *ClockAuctionTransactor // Generic write-only contract binding to access the raw methods on 124 } 125 126 // NewClockAuction creates a new instance of ClockAuction, bound to a specific deployed contract. 127 func NewClockAuction(address common.Address, backend bind.ContractBackend) (*ClockAuction, error) { 128 contract, err := bindClockAuction(address, backend, backend, backend) 129 if err != nil { 130 return nil, err 131 } 132 return &ClockAuction{ClockAuctionCaller: ClockAuctionCaller{contract: contract}, ClockAuctionTransactor: ClockAuctionTransactor{contract: contract}, ClockAuctionFilterer: ClockAuctionFilterer{contract: contract}}, nil 133 } 134 135 // NewClockAuctionCaller creates a new read-only instance of ClockAuction, bound to a specific deployed contract. 136 func NewClockAuctionCaller(address common.Address, caller bind.ContractCaller) (*ClockAuctionCaller, error) { 137 contract, err := bindClockAuction(address, caller, nil, nil) 138 if err != nil { 139 return nil, err 140 } 141 return &ClockAuctionCaller{contract: contract}, nil 142 } 143 144 // NewClockAuctionTransactor creates a new write-only instance of ClockAuction, bound to a specific deployed contract. 145 func NewClockAuctionTransactor(address common.Address, transactor bind.ContractTransactor) (*ClockAuctionTransactor, error) { 146 contract, err := bindClockAuction(address, nil, transactor, nil) 147 if err != nil { 148 return nil, err 149 } 150 return &ClockAuctionTransactor{contract: contract}, nil 151 } 152 153 // NewClockAuctionFilterer creates a new log filterer instance of ClockAuction, bound to a specific deployed contract. 154 func NewClockAuctionFilterer(address common.Address, filterer bind.ContractFilterer) (*ClockAuctionFilterer, error) { 155 contract, err := bindClockAuction(address, nil, nil, filterer) 156 if err != nil { 157 return nil, err 158 } 159 return &ClockAuctionFilterer{contract: contract}, nil 160 } 161 162 // bindClockAuction binds a generic wrapper to an already deployed contract. 163 func bindClockAuction(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 164 parsed, err := abi.JSON(strings.NewReader(ClockAuctionABI)) 165 if err != nil { 166 return nil, err 167 } 168 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 169 } 170 171 // Call invokes the (constant) contract method with params as input values and 172 // sets the output to result. The result type might be a single field for simple 173 // returns, a slice of interfaces for anonymous returns and a struct for named 174 // returns. 175 func (_ClockAuction *ClockAuctionRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 176 return _ClockAuction.Contract.ClockAuctionCaller.contract.Call(opts, result, method, params...) 177 } 178 179 // Transfer initiates a plain transaction to move funds to the contract, calling 180 // its default method if one is available. 181 func (_ClockAuction *ClockAuctionRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 182 return _ClockAuction.Contract.ClockAuctionTransactor.contract.Transfer(opts) 183 } 184 185 // Transact invokes the (paid) contract method with params as input values. 186 func (_ClockAuction *ClockAuctionRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 187 return _ClockAuction.Contract.ClockAuctionTransactor.contract.Transact(opts, method, params...) 188 } 189 190 // Call invokes the (constant) contract method with params as input values and 191 // sets the output to result. The result type might be a single field for simple 192 // returns, a slice of interfaces for anonymous returns and a struct for named 193 // returns. 194 func (_ClockAuction *ClockAuctionCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 195 return _ClockAuction.Contract.contract.Call(opts, result, method, params...) 196 } 197 198 // Transfer initiates a plain transaction to move funds to the contract, calling 199 // its default method if one is available. 200 func (_ClockAuction *ClockAuctionTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 201 return _ClockAuction.Contract.contract.Transfer(opts) 202 } 203 204 // Transact invokes the (paid) contract method with params as input values. 205 func (_ClockAuction *ClockAuctionTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 206 return _ClockAuction.Contract.contract.Transact(opts, method, params...) 207 } 208 209 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 210 // 211 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 212 func (_ClockAuction *ClockAuctionCaller) GetAuction(opts *bind.CallOpts, _tokenId *big.Int) (struct { 213 Seller common.Address 214 StartingPrice *big.Int 215 EndingPrice *big.Int 216 Duration *big.Int 217 StartedAt *big.Int 218 }, error) { 219 var out []interface{} 220 err := _ClockAuction.contract.Call(opts, &out, "getAuction", _tokenId) 221 222 outstruct := new(struct { 223 Seller common.Address 224 StartingPrice *big.Int 225 EndingPrice *big.Int 226 Duration *big.Int 227 StartedAt *big.Int 228 }) 229 230 outstruct.Seller = out[0].(common.Address) 231 outstruct.StartingPrice = out[1].(*big.Int) 232 outstruct.EndingPrice = out[2].(*big.Int) 233 outstruct.Duration = out[3].(*big.Int) 234 outstruct.StartedAt = out[4].(*big.Int) 235 236 return *outstruct, err 237 238 } 239 240 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 241 // 242 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 243 func (_ClockAuction *ClockAuctionSession) GetAuction(_tokenId *big.Int) (struct { 244 Seller common.Address 245 StartingPrice *big.Int 246 EndingPrice *big.Int 247 Duration *big.Int 248 StartedAt *big.Int 249 }, error) { 250 return _ClockAuction.Contract.GetAuction(&_ClockAuction.CallOpts, _tokenId) 251 } 252 253 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 254 // 255 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 256 func (_ClockAuction *ClockAuctionCallerSession) GetAuction(_tokenId *big.Int) (struct { 257 Seller common.Address 258 StartingPrice *big.Int 259 EndingPrice *big.Int 260 Duration *big.Int 261 StartedAt *big.Int 262 }, error) { 263 return _ClockAuction.Contract.GetAuction(&_ClockAuction.CallOpts, _tokenId) 264 } 265 266 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 267 // 268 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 269 func (_ClockAuction *ClockAuctionCaller) GetCurrentPrice(opts *bind.CallOpts, _tokenId *big.Int) (*big.Int, error) { 270 var out []interface{} 271 err := _ClockAuction.contract.Call(opts, &out, "getCurrentPrice", _tokenId) 272 273 if err != nil { 274 return *new(*big.Int), err 275 } 276 277 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 278 279 return out0, err 280 281 } 282 283 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 284 // 285 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 286 func (_ClockAuction *ClockAuctionSession) GetCurrentPrice(_tokenId *big.Int) (*big.Int, error) { 287 return _ClockAuction.Contract.GetCurrentPrice(&_ClockAuction.CallOpts, _tokenId) 288 } 289 290 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 291 // 292 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 293 func (_ClockAuction *ClockAuctionCallerSession) GetCurrentPrice(_tokenId *big.Int) (*big.Int, error) { 294 return _ClockAuction.Contract.GetCurrentPrice(&_ClockAuction.CallOpts, _tokenId) 295 } 296 297 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 298 // 299 // Solidity: function nonFungibleContract() view returns(address) 300 func (_ClockAuction *ClockAuctionCaller) NonFungibleContract(opts *bind.CallOpts) (common.Address, error) { 301 var out []interface{} 302 err := _ClockAuction.contract.Call(opts, &out, "nonFungibleContract") 303 304 if err != nil { 305 return *new(common.Address), err 306 } 307 308 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 309 310 return out0, err 311 312 } 313 314 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 315 // 316 // Solidity: function nonFungibleContract() view returns(address) 317 func (_ClockAuction *ClockAuctionSession) NonFungibleContract() (common.Address, error) { 318 return _ClockAuction.Contract.NonFungibleContract(&_ClockAuction.CallOpts) 319 } 320 321 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 322 // 323 // Solidity: function nonFungibleContract() view returns(address) 324 func (_ClockAuction *ClockAuctionCallerSession) NonFungibleContract() (common.Address, error) { 325 return _ClockAuction.Contract.NonFungibleContract(&_ClockAuction.CallOpts) 326 } 327 328 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 329 // 330 // Solidity: function owner() view returns(address) 331 func (_ClockAuction *ClockAuctionCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 332 var out []interface{} 333 err := _ClockAuction.contract.Call(opts, &out, "owner") 334 335 if err != nil { 336 return *new(common.Address), err 337 } 338 339 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 340 341 return out0, err 342 343 } 344 345 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 346 // 347 // Solidity: function owner() view returns(address) 348 func (_ClockAuction *ClockAuctionSession) Owner() (common.Address, error) { 349 return _ClockAuction.Contract.Owner(&_ClockAuction.CallOpts) 350 } 351 352 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 353 // 354 // Solidity: function owner() view returns(address) 355 func (_ClockAuction *ClockAuctionCallerSession) Owner() (common.Address, error) { 356 return _ClockAuction.Contract.Owner(&_ClockAuction.CallOpts) 357 } 358 359 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 360 // 361 // Solidity: function ownerCut() view returns(uint256) 362 func (_ClockAuction *ClockAuctionCaller) OwnerCut(opts *bind.CallOpts) (*big.Int, error) { 363 var out []interface{} 364 err := _ClockAuction.contract.Call(opts, &out, "ownerCut") 365 366 if err != nil { 367 return *new(*big.Int), err 368 } 369 370 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 371 372 return out0, err 373 374 } 375 376 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 377 // 378 // Solidity: function ownerCut() view returns(uint256) 379 func (_ClockAuction *ClockAuctionSession) OwnerCut() (*big.Int, error) { 380 return _ClockAuction.Contract.OwnerCut(&_ClockAuction.CallOpts) 381 } 382 383 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 384 // 385 // Solidity: function ownerCut() view returns(uint256) 386 func (_ClockAuction *ClockAuctionCallerSession) OwnerCut() (*big.Int, error) { 387 return _ClockAuction.Contract.OwnerCut(&_ClockAuction.CallOpts) 388 } 389 390 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 391 // 392 // Solidity: function paused() view returns(bool) 393 func (_ClockAuction *ClockAuctionCaller) Paused(opts *bind.CallOpts) (bool, error) { 394 var out []interface{} 395 err := _ClockAuction.contract.Call(opts, &out, "paused") 396 397 if err != nil { 398 return *new(bool), err 399 } 400 401 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 402 403 return out0, err 404 405 } 406 407 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 408 // 409 // Solidity: function paused() view returns(bool) 410 func (_ClockAuction *ClockAuctionSession) Paused() (bool, error) { 411 return _ClockAuction.Contract.Paused(&_ClockAuction.CallOpts) 412 } 413 414 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 415 // 416 // Solidity: function paused() view returns(bool) 417 func (_ClockAuction *ClockAuctionCallerSession) Paused() (bool, error) { 418 return _ClockAuction.Contract.Paused(&_ClockAuction.CallOpts) 419 } 420 421 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 422 // 423 // Solidity: function bid(uint256 _tokenId) payable returns() 424 func (_ClockAuction *ClockAuctionTransactor) Bid(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 425 return _ClockAuction.contract.Transact(opts, "bid", _tokenId) 426 } 427 428 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 429 // 430 // Solidity: function bid(uint256 _tokenId) payable returns() 431 func (_ClockAuction *ClockAuctionSession) Bid(_tokenId *big.Int) (*types.Transaction, error) { 432 return _ClockAuction.Contract.Bid(&_ClockAuction.TransactOpts, _tokenId) 433 } 434 435 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 436 // 437 // Solidity: function bid(uint256 _tokenId) payable returns() 438 func (_ClockAuction *ClockAuctionTransactorSession) Bid(_tokenId *big.Int) (*types.Transaction, error) { 439 return _ClockAuction.Contract.Bid(&_ClockAuction.TransactOpts, _tokenId) 440 } 441 442 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 443 // 444 // Solidity: function cancelAuction(uint256 _tokenId) returns() 445 func (_ClockAuction *ClockAuctionTransactor) CancelAuction(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 446 return _ClockAuction.contract.Transact(opts, "cancelAuction", _tokenId) 447 } 448 449 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 450 // 451 // Solidity: function cancelAuction(uint256 _tokenId) returns() 452 func (_ClockAuction *ClockAuctionSession) CancelAuction(_tokenId *big.Int) (*types.Transaction, error) { 453 return _ClockAuction.Contract.CancelAuction(&_ClockAuction.TransactOpts, _tokenId) 454 } 455 456 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 457 // 458 // Solidity: function cancelAuction(uint256 _tokenId) returns() 459 func (_ClockAuction *ClockAuctionTransactorSession) CancelAuction(_tokenId *big.Int) (*types.Transaction, error) { 460 return _ClockAuction.Contract.CancelAuction(&_ClockAuction.TransactOpts, _tokenId) 461 } 462 463 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 464 // 465 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 466 func (_ClockAuction *ClockAuctionTransactor) CancelAuctionWhenPaused(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 467 return _ClockAuction.contract.Transact(opts, "cancelAuctionWhenPaused", _tokenId) 468 } 469 470 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 471 // 472 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 473 func (_ClockAuction *ClockAuctionSession) CancelAuctionWhenPaused(_tokenId *big.Int) (*types.Transaction, error) { 474 return _ClockAuction.Contract.CancelAuctionWhenPaused(&_ClockAuction.TransactOpts, _tokenId) 475 } 476 477 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 478 // 479 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 480 func (_ClockAuction *ClockAuctionTransactorSession) CancelAuctionWhenPaused(_tokenId *big.Int) (*types.Transaction, error) { 481 return _ClockAuction.Contract.CancelAuctionWhenPaused(&_ClockAuction.TransactOpts, _tokenId) 482 } 483 484 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 485 // 486 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 487 func (_ClockAuction *ClockAuctionTransactor) CreateAuction(opts *bind.TransactOpts, _tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 488 return _ClockAuction.contract.Transact(opts, "createAuction", _tokenId, _startingPrice, _endingPrice, _duration, _seller) 489 } 490 491 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 492 // 493 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 494 func (_ClockAuction *ClockAuctionSession) CreateAuction(_tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 495 return _ClockAuction.Contract.CreateAuction(&_ClockAuction.TransactOpts, _tokenId, _startingPrice, _endingPrice, _duration, _seller) 496 } 497 498 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 499 // 500 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 501 func (_ClockAuction *ClockAuctionTransactorSession) CreateAuction(_tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 502 return _ClockAuction.Contract.CreateAuction(&_ClockAuction.TransactOpts, _tokenId, _startingPrice, _endingPrice, _duration, _seller) 503 } 504 505 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 506 // 507 // Solidity: function pause() returns(bool) 508 func (_ClockAuction *ClockAuctionTransactor) Pause(opts *bind.TransactOpts) (*types.Transaction, error) { 509 return _ClockAuction.contract.Transact(opts, "pause") 510 } 511 512 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 513 // 514 // Solidity: function pause() returns(bool) 515 func (_ClockAuction *ClockAuctionSession) Pause() (*types.Transaction, error) { 516 return _ClockAuction.Contract.Pause(&_ClockAuction.TransactOpts) 517 } 518 519 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 520 // 521 // Solidity: function pause() returns(bool) 522 func (_ClockAuction *ClockAuctionTransactorSession) Pause() (*types.Transaction, error) { 523 return _ClockAuction.Contract.Pause(&_ClockAuction.TransactOpts) 524 } 525 526 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 527 // 528 // Solidity: function transferOwnership(address newOwner) returns() 529 func (_ClockAuction *ClockAuctionTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 530 return _ClockAuction.contract.Transact(opts, "transferOwnership", newOwner) 531 } 532 533 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 534 // 535 // Solidity: function transferOwnership(address newOwner) returns() 536 func (_ClockAuction *ClockAuctionSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 537 return _ClockAuction.Contract.TransferOwnership(&_ClockAuction.TransactOpts, newOwner) 538 } 539 540 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 541 // 542 // Solidity: function transferOwnership(address newOwner) returns() 543 func (_ClockAuction *ClockAuctionTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 544 return _ClockAuction.Contract.TransferOwnership(&_ClockAuction.TransactOpts, newOwner) 545 } 546 547 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 548 // 549 // Solidity: function unpause() returns(bool) 550 func (_ClockAuction *ClockAuctionTransactor) Unpause(opts *bind.TransactOpts) (*types.Transaction, error) { 551 return _ClockAuction.contract.Transact(opts, "unpause") 552 } 553 554 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 555 // 556 // Solidity: function unpause() returns(bool) 557 func (_ClockAuction *ClockAuctionSession) Unpause() (*types.Transaction, error) { 558 return _ClockAuction.Contract.Unpause(&_ClockAuction.TransactOpts) 559 } 560 561 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 562 // 563 // Solidity: function unpause() returns(bool) 564 func (_ClockAuction *ClockAuctionTransactorSession) Unpause() (*types.Transaction, error) { 565 return _ClockAuction.Contract.Unpause(&_ClockAuction.TransactOpts) 566 } 567 568 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 569 // 570 // Solidity: function withdrawBalance() returns() 571 func (_ClockAuction *ClockAuctionTransactor) WithdrawBalance(opts *bind.TransactOpts) (*types.Transaction, error) { 572 return _ClockAuction.contract.Transact(opts, "withdrawBalance") 573 } 574 575 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 576 // 577 // Solidity: function withdrawBalance() returns() 578 func (_ClockAuction *ClockAuctionSession) WithdrawBalance() (*types.Transaction, error) { 579 return _ClockAuction.Contract.WithdrawBalance(&_ClockAuction.TransactOpts) 580 } 581 582 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 583 // 584 // Solidity: function withdrawBalance() returns() 585 func (_ClockAuction *ClockAuctionTransactorSession) WithdrawBalance() (*types.Transaction, error) { 586 return _ClockAuction.Contract.WithdrawBalance(&_ClockAuction.TransactOpts) 587 } 588 589 // ClockAuctionAuctionCancelledIterator is returned from FilterAuctionCancelled and is used to iterate over the raw logs and unpacked data for AuctionCancelled events raised by the ClockAuction contract. 590 type ClockAuctionAuctionCancelledIterator struct { 591 Event *ClockAuctionAuctionCancelled // Event containing the contract specifics and raw log 592 593 contract *bind.BoundContract // Generic contract to use for unpacking event data 594 event string // Event name to use for unpacking event data 595 596 logs chan types.Log // Log channel receiving the found contract events 597 sub ethereum.Subscription // Subscription for errors, completion and termination 598 done bool // Whether the subscription completed delivering logs 599 fail error // Occurred error to stop iteration 600 } 601 602 // Next advances the iterator to the subsequent event, returning whether there 603 // are any more events found. In case of a retrieval or parsing error, false is 604 // returned and Error() can be queried for the exact failure. 605 func (it *ClockAuctionAuctionCancelledIterator) Next() bool { 606 // If the iterator failed, stop iterating 607 if it.fail != nil { 608 return false 609 } 610 // If the iterator completed, deliver directly whatever's available 611 if it.done { 612 select { 613 case log := <-it.logs: 614 it.Event = new(ClockAuctionAuctionCancelled) 615 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 616 it.fail = err 617 return false 618 } 619 it.Event.Raw = log 620 return true 621 622 default: 623 return false 624 } 625 } 626 // Iterator still in progress, wait for either a data or an error event 627 select { 628 case log := <-it.logs: 629 it.Event = new(ClockAuctionAuctionCancelled) 630 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 631 it.fail = err 632 return false 633 } 634 it.Event.Raw = log 635 return true 636 637 case err := <-it.sub.Err(): 638 it.done = true 639 it.fail = err 640 return it.Next() 641 } 642 } 643 644 // Error returns any retrieval or parsing error occurred during filtering. 645 func (it *ClockAuctionAuctionCancelledIterator) Error() error { 646 return it.fail 647 } 648 649 // Close terminates the iteration process, releasing any pending underlying 650 // resources. 651 func (it *ClockAuctionAuctionCancelledIterator) Close() error { 652 it.sub.Unsubscribe() 653 return nil 654 } 655 656 // ClockAuctionAuctionCancelled represents a AuctionCancelled event raised by the ClockAuction contract. 657 type ClockAuctionAuctionCancelled struct { 658 TokenId *big.Int 659 Raw types.Log // Blockchain specific contextual infos 660 } 661 662 // FilterAuctionCancelled is a free log retrieval operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 663 // 664 // Solidity: event AuctionCancelled(uint256 tokenId) 665 func (_ClockAuction *ClockAuctionFilterer) FilterAuctionCancelled(opts *bind.FilterOpts) (*ClockAuctionAuctionCancelledIterator, error) { 666 667 logs, sub, err := _ClockAuction.contract.FilterLogs(opts, "AuctionCancelled") 668 if err != nil { 669 return nil, err 670 } 671 return &ClockAuctionAuctionCancelledIterator{contract: _ClockAuction.contract, event: "AuctionCancelled", logs: logs, sub: sub}, nil 672 } 673 674 // WatchAuctionCancelled is a free log subscription operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 675 // 676 // Solidity: event AuctionCancelled(uint256 tokenId) 677 func (_ClockAuction *ClockAuctionFilterer) WatchAuctionCancelled(opts *bind.WatchOpts, sink chan<- *ClockAuctionAuctionCancelled) (event.Subscription, error) { 678 679 logs, sub, err := _ClockAuction.contract.WatchLogs(opts, "AuctionCancelled") 680 if err != nil { 681 return nil, err 682 } 683 return event.NewSubscription(func(quit <-chan struct{}) error { 684 defer sub.Unsubscribe() 685 for { 686 select { 687 case log := <-logs: 688 // New log arrived, parse the event and forward to the user 689 event := new(ClockAuctionAuctionCancelled) 690 if err := _ClockAuction.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 691 return err 692 } 693 event.Raw = log 694 695 select { 696 case sink <- event: 697 case err := <-sub.Err(): 698 return err 699 case <-quit: 700 return nil 701 } 702 case err := <-sub.Err(): 703 return err 704 case <-quit: 705 return nil 706 } 707 } 708 }), nil 709 } 710 711 // ParseAuctionCancelled is a log parse operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 712 // 713 // Solidity: event AuctionCancelled(uint256 tokenId) 714 func (_ClockAuction *ClockAuctionFilterer) ParseAuctionCancelled(log types.Log) (*ClockAuctionAuctionCancelled, error) { 715 event := new(ClockAuctionAuctionCancelled) 716 if err := _ClockAuction.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 717 return nil, err 718 } 719 event.Raw = log 720 return event, nil 721 } 722 723 // ClockAuctionAuctionCreatedIterator is returned from FilterAuctionCreated and is used to iterate over the raw logs and unpacked data for AuctionCreated events raised by the ClockAuction contract. 724 type ClockAuctionAuctionCreatedIterator struct { 725 Event *ClockAuctionAuctionCreated // Event containing the contract specifics and raw log 726 727 contract *bind.BoundContract // Generic contract to use for unpacking event data 728 event string // Event name to use for unpacking event data 729 730 logs chan types.Log // Log channel receiving the found contract events 731 sub ethereum.Subscription // Subscription for errors, completion and termination 732 done bool // Whether the subscription completed delivering logs 733 fail error // Occurred error to stop iteration 734 } 735 736 // Next advances the iterator to the subsequent event, returning whether there 737 // are any more events found. In case of a retrieval or parsing error, false is 738 // returned and Error() can be queried for the exact failure. 739 func (it *ClockAuctionAuctionCreatedIterator) Next() bool { 740 // If the iterator failed, stop iterating 741 if it.fail != nil { 742 return false 743 } 744 // If the iterator completed, deliver directly whatever's available 745 if it.done { 746 select { 747 case log := <-it.logs: 748 it.Event = new(ClockAuctionAuctionCreated) 749 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 750 it.fail = err 751 return false 752 } 753 it.Event.Raw = log 754 return true 755 756 default: 757 return false 758 } 759 } 760 // Iterator still in progress, wait for either a data or an error event 761 select { 762 case log := <-it.logs: 763 it.Event = new(ClockAuctionAuctionCreated) 764 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 765 it.fail = err 766 return false 767 } 768 it.Event.Raw = log 769 return true 770 771 case err := <-it.sub.Err(): 772 it.done = true 773 it.fail = err 774 return it.Next() 775 } 776 } 777 778 // Error returns any retrieval or parsing error occurred during filtering. 779 func (it *ClockAuctionAuctionCreatedIterator) Error() error { 780 return it.fail 781 } 782 783 // Close terminates the iteration process, releasing any pending underlying 784 // resources. 785 func (it *ClockAuctionAuctionCreatedIterator) Close() error { 786 it.sub.Unsubscribe() 787 return nil 788 } 789 790 // ClockAuctionAuctionCreated represents a AuctionCreated event raised by the ClockAuction contract. 791 type ClockAuctionAuctionCreated struct { 792 TokenId *big.Int 793 StartingPrice *big.Int 794 EndingPrice *big.Int 795 Duration *big.Int 796 Raw types.Log // Blockchain specific contextual infos 797 } 798 799 // FilterAuctionCreated is a free log retrieval operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 800 // 801 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 802 func (_ClockAuction *ClockAuctionFilterer) FilterAuctionCreated(opts *bind.FilterOpts) (*ClockAuctionAuctionCreatedIterator, error) { 803 804 logs, sub, err := _ClockAuction.contract.FilterLogs(opts, "AuctionCreated") 805 if err != nil { 806 return nil, err 807 } 808 return &ClockAuctionAuctionCreatedIterator{contract: _ClockAuction.contract, event: "AuctionCreated", logs: logs, sub: sub}, nil 809 } 810 811 // WatchAuctionCreated is a free log subscription operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 812 // 813 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 814 func (_ClockAuction *ClockAuctionFilterer) WatchAuctionCreated(opts *bind.WatchOpts, sink chan<- *ClockAuctionAuctionCreated) (event.Subscription, error) { 815 816 logs, sub, err := _ClockAuction.contract.WatchLogs(opts, "AuctionCreated") 817 if err != nil { 818 return nil, err 819 } 820 return event.NewSubscription(func(quit <-chan struct{}) error { 821 defer sub.Unsubscribe() 822 for { 823 select { 824 case log := <-logs: 825 // New log arrived, parse the event and forward to the user 826 event := new(ClockAuctionAuctionCreated) 827 if err := _ClockAuction.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 828 return err 829 } 830 event.Raw = log 831 832 select { 833 case sink <- event: 834 case err := <-sub.Err(): 835 return err 836 case <-quit: 837 return nil 838 } 839 case err := <-sub.Err(): 840 return err 841 case <-quit: 842 return nil 843 } 844 } 845 }), nil 846 } 847 848 // ParseAuctionCreated is a log parse operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 849 // 850 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 851 func (_ClockAuction *ClockAuctionFilterer) ParseAuctionCreated(log types.Log) (*ClockAuctionAuctionCreated, error) { 852 event := new(ClockAuctionAuctionCreated) 853 if err := _ClockAuction.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 854 return nil, err 855 } 856 event.Raw = log 857 return event, nil 858 } 859 860 // ClockAuctionAuctionSuccessfulIterator is returned from FilterAuctionSuccessful and is used to iterate over the raw logs and unpacked data for AuctionSuccessful events raised by the ClockAuction contract. 861 type ClockAuctionAuctionSuccessfulIterator struct { 862 Event *ClockAuctionAuctionSuccessful // Event containing the contract specifics and raw log 863 864 contract *bind.BoundContract // Generic contract to use for unpacking event data 865 event string // Event name to use for unpacking event data 866 867 logs chan types.Log // Log channel receiving the found contract events 868 sub ethereum.Subscription // Subscription for errors, completion and termination 869 done bool // Whether the subscription completed delivering logs 870 fail error // Occurred error to stop iteration 871 } 872 873 // Next advances the iterator to the subsequent event, returning whether there 874 // are any more events found. In case of a retrieval or parsing error, false is 875 // returned and Error() can be queried for the exact failure. 876 func (it *ClockAuctionAuctionSuccessfulIterator) Next() bool { 877 // If the iterator failed, stop iterating 878 if it.fail != nil { 879 return false 880 } 881 // If the iterator completed, deliver directly whatever's available 882 if it.done { 883 select { 884 case log := <-it.logs: 885 it.Event = new(ClockAuctionAuctionSuccessful) 886 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 887 it.fail = err 888 return false 889 } 890 it.Event.Raw = log 891 return true 892 893 default: 894 return false 895 } 896 } 897 // Iterator still in progress, wait for either a data or an error event 898 select { 899 case log := <-it.logs: 900 it.Event = new(ClockAuctionAuctionSuccessful) 901 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 902 it.fail = err 903 return false 904 } 905 it.Event.Raw = log 906 return true 907 908 case err := <-it.sub.Err(): 909 it.done = true 910 it.fail = err 911 return it.Next() 912 } 913 } 914 915 // Error returns any retrieval or parsing error occurred during filtering. 916 func (it *ClockAuctionAuctionSuccessfulIterator) Error() error { 917 return it.fail 918 } 919 920 // Close terminates the iteration process, releasing any pending underlying 921 // resources. 922 func (it *ClockAuctionAuctionSuccessfulIterator) Close() error { 923 it.sub.Unsubscribe() 924 return nil 925 } 926 927 // ClockAuctionAuctionSuccessful represents a AuctionSuccessful event raised by the ClockAuction contract. 928 type ClockAuctionAuctionSuccessful struct { 929 TokenId *big.Int 930 TotalPrice *big.Int 931 Winner common.Address 932 Raw types.Log // Blockchain specific contextual infos 933 } 934 935 // FilterAuctionSuccessful is a free log retrieval operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 936 // 937 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 938 func (_ClockAuction *ClockAuctionFilterer) FilterAuctionSuccessful(opts *bind.FilterOpts) (*ClockAuctionAuctionSuccessfulIterator, error) { 939 940 logs, sub, err := _ClockAuction.contract.FilterLogs(opts, "AuctionSuccessful") 941 if err != nil { 942 return nil, err 943 } 944 return &ClockAuctionAuctionSuccessfulIterator{contract: _ClockAuction.contract, event: "AuctionSuccessful", logs: logs, sub: sub}, nil 945 } 946 947 // WatchAuctionSuccessful is a free log subscription operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 948 // 949 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 950 func (_ClockAuction *ClockAuctionFilterer) WatchAuctionSuccessful(opts *bind.WatchOpts, sink chan<- *ClockAuctionAuctionSuccessful) (event.Subscription, error) { 951 952 logs, sub, err := _ClockAuction.contract.WatchLogs(opts, "AuctionSuccessful") 953 if err != nil { 954 return nil, err 955 } 956 return event.NewSubscription(func(quit <-chan struct{}) error { 957 defer sub.Unsubscribe() 958 for { 959 select { 960 case log := <-logs: 961 // New log arrived, parse the event and forward to the user 962 event := new(ClockAuctionAuctionSuccessful) 963 if err := _ClockAuction.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 964 return err 965 } 966 event.Raw = log 967 968 select { 969 case sink <- event: 970 case err := <-sub.Err(): 971 return err 972 case <-quit: 973 return nil 974 } 975 case err := <-sub.Err(): 976 return err 977 case <-quit: 978 return nil 979 } 980 } 981 }), nil 982 } 983 984 // ParseAuctionSuccessful is a log parse operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 985 // 986 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 987 func (_ClockAuction *ClockAuctionFilterer) ParseAuctionSuccessful(log types.Log) (*ClockAuctionAuctionSuccessful, error) { 988 event := new(ClockAuctionAuctionSuccessful) 989 if err := _ClockAuction.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 990 return nil, err 991 } 992 event.Raw = log 993 return event, nil 994 } 995 996 // ClockAuctionPauseIterator is returned from FilterPause and is used to iterate over the raw logs and unpacked data for Pause events raised by the ClockAuction contract. 997 type ClockAuctionPauseIterator struct { 998 Event *ClockAuctionPause // Event containing the contract specifics and raw log 999 1000 contract *bind.BoundContract // Generic contract to use for unpacking event data 1001 event string // Event name to use for unpacking event data 1002 1003 logs chan types.Log // Log channel receiving the found contract events 1004 sub ethereum.Subscription // Subscription for errors, completion and termination 1005 done bool // Whether the subscription completed delivering logs 1006 fail error // Occurred error to stop iteration 1007 } 1008 1009 // Next advances the iterator to the subsequent event, returning whether there 1010 // are any more events found. In case of a retrieval or parsing error, false is 1011 // returned and Error() can be queried for the exact failure. 1012 func (it *ClockAuctionPauseIterator) Next() bool { 1013 // If the iterator failed, stop iterating 1014 if it.fail != nil { 1015 return false 1016 } 1017 // If the iterator completed, deliver directly whatever's available 1018 if it.done { 1019 select { 1020 case log := <-it.logs: 1021 it.Event = new(ClockAuctionPause) 1022 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1023 it.fail = err 1024 return false 1025 } 1026 it.Event.Raw = log 1027 return true 1028 1029 default: 1030 return false 1031 } 1032 } 1033 // Iterator still in progress, wait for either a data or an error event 1034 select { 1035 case log := <-it.logs: 1036 it.Event = new(ClockAuctionPause) 1037 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1038 it.fail = err 1039 return false 1040 } 1041 it.Event.Raw = log 1042 return true 1043 1044 case err := <-it.sub.Err(): 1045 it.done = true 1046 it.fail = err 1047 return it.Next() 1048 } 1049 } 1050 1051 // Error returns any retrieval or parsing error occurred during filtering. 1052 func (it *ClockAuctionPauseIterator) Error() error { 1053 return it.fail 1054 } 1055 1056 // Close terminates the iteration process, releasing any pending underlying 1057 // resources. 1058 func (it *ClockAuctionPauseIterator) Close() error { 1059 it.sub.Unsubscribe() 1060 return nil 1061 } 1062 1063 // ClockAuctionPause represents a Pause event raised by the ClockAuction contract. 1064 type ClockAuctionPause struct { 1065 Raw types.Log // Blockchain specific contextual infos 1066 } 1067 1068 // FilterPause is a free log retrieval operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 1069 // 1070 // Solidity: event Pause() 1071 func (_ClockAuction *ClockAuctionFilterer) FilterPause(opts *bind.FilterOpts) (*ClockAuctionPauseIterator, error) { 1072 1073 logs, sub, err := _ClockAuction.contract.FilterLogs(opts, "Pause") 1074 if err != nil { 1075 return nil, err 1076 } 1077 return &ClockAuctionPauseIterator{contract: _ClockAuction.contract, event: "Pause", logs: logs, sub: sub}, nil 1078 } 1079 1080 // WatchPause is a free log subscription operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 1081 // 1082 // Solidity: event Pause() 1083 func (_ClockAuction *ClockAuctionFilterer) WatchPause(opts *bind.WatchOpts, sink chan<- *ClockAuctionPause) (event.Subscription, error) { 1084 1085 logs, sub, err := _ClockAuction.contract.WatchLogs(opts, "Pause") 1086 if err != nil { 1087 return nil, err 1088 } 1089 return event.NewSubscription(func(quit <-chan struct{}) error { 1090 defer sub.Unsubscribe() 1091 for { 1092 select { 1093 case log := <-logs: 1094 // New log arrived, parse the event and forward to the user 1095 event := new(ClockAuctionPause) 1096 if err := _ClockAuction.contract.UnpackLog(event, "Pause", log); err != nil { 1097 return err 1098 } 1099 event.Raw = log 1100 1101 select { 1102 case sink <- event: 1103 case err := <-sub.Err(): 1104 return err 1105 case <-quit: 1106 return nil 1107 } 1108 case err := <-sub.Err(): 1109 return err 1110 case <-quit: 1111 return nil 1112 } 1113 } 1114 }), nil 1115 } 1116 1117 // ParsePause is a log parse operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 1118 // 1119 // Solidity: event Pause() 1120 func (_ClockAuction *ClockAuctionFilterer) ParsePause(log types.Log) (*ClockAuctionPause, error) { 1121 event := new(ClockAuctionPause) 1122 if err := _ClockAuction.contract.UnpackLog(event, "Pause", log); err != nil { 1123 return nil, err 1124 } 1125 event.Raw = log 1126 return event, nil 1127 } 1128 1129 // ClockAuctionUnpauseIterator is returned from FilterUnpause and is used to iterate over the raw logs and unpacked data for Unpause events raised by the ClockAuction contract. 1130 type ClockAuctionUnpauseIterator struct { 1131 Event *ClockAuctionUnpause // Event containing the contract specifics and raw log 1132 1133 contract *bind.BoundContract // Generic contract to use for unpacking event data 1134 event string // Event name to use for unpacking event data 1135 1136 logs chan types.Log // Log channel receiving the found contract events 1137 sub ethereum.Subscription // Subscription for errors, completion and termination 1138 done bool // Whether the subscription completed delivering logs 1139 fail error // Occurred error to stop iteration 1140 } 1141 1142 // Next advances the iterator to the subsequent event, returning whether there 1143 // are any more events found. In case of a retrieval or parsing error, false is 1144 // returned and Error() can be queried for the exact failure. 1145 func (it *ClockAuctionUnpauseIterator) Next() bool { 1146 // If the iterator failed, stop iterating 1147 if it.fail != nil { 1148 return false 1149 } 1150 // If the iterator completed, deliver directly whatever's available 1151 if it.done { 1152 select { 1153 case log := <-it.logs: 1154 it.Event = new(ClockAuctionUnpause) 1155 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1156 it.fail = err 1157 return false 1158 } 1159 it.Event.Raw = log 1160 return true 1161 1162 default: 1163 return false 1164 } 1165 } 1166 // Iterator still in progress, wait for either a data or an error event 1167 select { 1168 case log := <-it.logs: 1169 it.Event = new(ClockAuctionUnpause) 1170 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1171 it.fail = err 1172 return false 1173 } 1174 it.Event.Raw = log 1175 return true 1176 1177 case err := <-it.sub.Err(): 1178 it.done = true 1179 it.fail = err 1180 return it.Next() 1181 } 1182 } 1183 1184 // Error returns any retrieval or parsing error occurred during filtering. 1185 func (it *ClockAuctionUnpauseIterator) Error() error { 1186 return it.fail 1187 } 1188 1189 // Close terminates the iteration process, releasing any pending underlying 1190 // resources. 1191 func (it *ClockAuctionUnpauseIterator) Close() error { 1192 it.sub.Unsubscribe() 1193 return nil 1194 } 1195 1196 // ClockAuctionUnpause represents a Unpause event raised by the ClockAuction contract. 1197 type ClockAuctionUnpause struct { 1198 Raw types.Log // Blockchain specific contextual infos 1199 } 1200 1201 // FilterUnpause is a free log retrieval operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 1202 // 1203 // Solidity: event Unpause() 1204 func (_ClockAuction *ClockAuctionFilterer) FilterUnpause(opts *bind.FilterOpts) (*ClockAuctionUnpauseIterator, error) { 1205 1206 logs, sub, err := _ClockAuction.contract.FilterLogs(opts, "Unpause") 1207 if err != nil { 1208 return nil, err 1209 } 1210 return &ClockAuctionUnpauseIterator{contract: _ClockAuction.contract, event: "Unpause", logs: logs, sub: sub}, nil 1211 } 1212 1213 // WatchUnpause is a free log subscription operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 1214 // 1215 // Solidity: event Unpause() 1216 func (_ClockAuction *ClockAuctionFilterer) WatchUnpause(opts *bind.WatchOpts, sink chan<- *ClockAuctionUnpause) (event.Subscription, error) { 1217 1218 logs, sub, err := _ClockAuction.contract.WatchLogs(opts, "Unpause") 1219 if err != nil { 1220 return nil, err 1221 } 1222 return event.NewSubscription(func(quit <-chan struct{}) error { 1223 defer sub.Unsubscribe() 1224 for { 1225 select { 1226 case log := <-logs: 1227 // New log arrived, parse the event and forward to the user 1228 event := new(ClockAuctionUnpause) 1229 if err := _ClockAuction.contract.UnpackLog(event, "Unpause", log); err != nil { 1230 return err 1231 } 1232 event.Raw = log 1233 1234 select { 1235 case sink <- event: 1236 case err := <-sub.Err(): 1237 return err 1238 case <-quit: 1239 return nil 1240 } 1241 case err := <-sub.Err(): 1242 return err 1243 case <-quit: 1244 return nil 1245 } 1246 } 1247 }), nil 1248 } 1249 1250 // ParseUnpause is a log parse operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 1251 // 1252 // Solidity: event Unpause() 1253 func (_ClockAuction *ClockAuctionFilterer) ParseUnpause(log types.Log) (*ClockAuctionUnpause, error) { 1254 event := new(ClockAuctionUnpause) 1255 if err := _ClockAuction.contract.UnpackLog(event, "Unpause", log); err != nil { 1256 return nil, err 1257 } 1258 event.Raw = log 1259 return event, nil 1260 } 1261 1262 // ClockAuctionBaseABI is the input ABI used to generate the binding from. 1263 const ClockAuctionBaseABI = "[{\"constant\":true,\"inputs\":[],\"name\":\"ownerCut\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"nonFungibleContract\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"startingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"endingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"AuctionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"totalPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"winner\",\"type\":\"address\"}],\"name\":\"AuctionSuccessful\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"AuctionCancelled\",\"type\":\"event\"}]" 1264 1265 // ClockAuctionBaseFuncSigs maps the 4-byte function signature to its string representation. 1266 var ClockAuctionBaseFuncSigs = map[string]string{ 1267 "dd1b7a0f": "nonFungibleContract()", 1268 "83b5ff8b": "ownerCut()", 1269 } 1270 1271 // ClockAuctionBaseBin is the compiled bytecode used for deploying new contracts. 1272 var ClockAuctionBaseBin = "0x6060604052341561000f57600080fd5b60f68061001d6000396000f30060606040526004361060485763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166383b5ff8b8114604d578063dd1b7a0f14606f575b600080fd5b3415605757600080fd5b605d60a8565b60405190815260200160405180910390f35b3415607957600080fd5b607f60ae565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b60015481565b60005473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a72305820b7cb6235cfe7070a6706e879770b0f1ac48c203be7c14473f84af0b3e99634fc0029" 1273 1274 // DeployClockAuctionBase deploys a new Ethereum contract, binding an instance of ClockAuctionBase to it. 1275 func DeployClockAuctionBase(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ClockAuctionBase, error) { 1276 parsed, err := abi.JSON(strings.NewReader(ClockAuctionBaseABI)) 1277 if err != nil { 1278 return common.Address{}, nil, nil, err 1279 } 1280 1281 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ClockAuctionBaseBin), backend) 1282 if err != nil { 1283 return common.Address{}, nil, nil, err 1284 } 1285 return address, tx, &ClockAuctionBase{ClockAuctionBaseCaller: ClockAuctionBaseCaller{contract: contract}, ClockAuctionBaseTransactor: ClockAuctionBaseTransactor{contract: contract}, ClockAuctionBaseFilterer: ClockAuctionBaseFilterer{contract: contract}}, nil 1286 } 1287 1288 // ClockAuctionBase is an auto generated Go binding around an Ethereum contract. 1289 type ClockAuctionBase struct { 1290 ClockAuctionBaseCaller // Read-only binding to the contract 1291 ClockAuctionBaseTransactor // Write-only binding to the contract 1292 ClockAuctionBaseFilterer // Log filterer for contract events 1293 } 1294 1295 // ClockAuctionBaseCaller is an auto generated read-only Go binding around an Ethereum contract. 1296 type ClockAuctionBaseCaller struct { 1297 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1298 } 1299 1300 // ClockAuctionBaseTransactor is an auto generated write-only Go binding around an Ethereum contract. 1301 type ClockAuctionBaseTransactor struct { 1302 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1303 } 1304 1305 // ClockAuctionBaseFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 1306 type ClockAuctionBaseFilterer struct { 1307 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1308 } 1309 1310 // ClockAuctionBaseSession is an auto generated Go binding around an Ethereum contract, 1311 // with pre-set call and transact options. 1312 type ClockAuctionBaseSession struct { 1313 Contract *ClockAuctionBase // Generic contract binding to set the session for 1314 CallOpts bind.CallOpts // Call options to use throughout this session 1315 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1316 } 1317 1318 // ClockAuctionBaseCallerSession is an auto generated read-only Go binding around an Ethereum contract, 1319 // with pre-set call options. 1320 type ClockAuctionBaseCallerSession struct { 1321 Contract *ClockAuctionBaseCaller // Generic contract caller binding to set the session for 1322 CallOpts bind.CallOpts // Call options to use throughout this session 1323 } 1324 1325 // ClockAuctionBaseTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 1326 // with pre-set transact options. 1327 type ClockAuctionBaseTransactorSession struct { 1328 Contract *ClockAuctionBaseTransactor // Generic contract transactor binding to set the session for 1329 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1330 } 1331 1332 // ClockAuctionBaseRaw is an auto generated low-level Go binding around an Ethereum contract. 1333 type ClockAuctionBaseRaw struct { 1334 Contract *ClockAuctionBase // Generic contract binding to access the raw methods on 1335 } 1336 1337 // ClockAuctionBaseCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 1338 type ClockAuctionBaseCallerRaw struct { 1339 Contract *ClockAuctionBaseCaller // Generic read-only contract binding to access the raw methods on 1340 } 1341 1342 // ClockAuctionBaseTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 1343 type ClockAuctionBaseTransactorRaw struct { 1344 Contract *ClockAuctionBaseTransactor // Generic write-only contract binding to access the raw methods on 1345 } 1346 1347 // NewClockAuctionBase creates a new instance of ClockAuctionBase, bound to a specific deployed contract. 1348 func NewClockAuctionBase(address common.Address, backend bind.ContractBackend) (*ClockAuctionBase, error) { 1349 contract, err := bindClockAuctionBase(address, backend, backend, backend) 1350 if err != nil { 1351 return nil, err 1352 } 1353 return &ClockAuctionBase{ClockAuctionBaseCaller: ClockAuctionBaseCaller{contract: contract}, ClockAuctionBaseTransactor: ClockAuctionBaseTransactor{contract: contract}, ClockAuctionBaseFilterer: ClockAuctionBaseFilterer{contract: contract}}, nil 1354 } 1355 1356 // NewClockAuctionBaseCaller creates a new read-only instance of ClockAuctionBase, bound to a specific deployed contract. 1357 func NewClockAuctionBaseCaller(address common.Address, caller bind.ContractCaller) (*ClockAuctionBaseCaller, error) { 1358 contract, err := bindClockAuctionBase(address, caller, nil, nil) 1359 if err != nil { 1360 return nil, err 1361 } 1362 return &ClockAuctionBaseCaller{contract: contract}, nil 1363 } 1364 1365 // NewClockAuctionBaseTransactor creates a new write-only instance of ClockAuctionBase, bound to a specific deployed contract. 1366 func NewClockAuctionBaseTransactor(address common.Address, transactor bind.ContractTransactor) (*ClockAuctionBaseTransactor, error) { 1367 contract, err := bindClockAuctionBase(address, nil, transactor, nil) 1368 if err != nil { 1369 return nil, err 1370 } 1371 return &ClockAuctionBaseTransactor{contract: contract}, nil 1372 } 1373 1374 // NewClockAuctionBaseFilterer creates a new log filterer instance of ClockAuctionBase, bound to a specific deployed contract. 1375 func NewClockAuctionBaseFilterer(address common.Address, filterer bind.ContractFilterer) (*ClockAuctionBaseFilterer, error) { 1376 contract, err := bindClockAuctionBase(address, nil, nil, filterer) 1377 if err != nil { 1378 return nil, err 1379 } 1380 return &ClockAuctionBaseFilterer{contract: contract}, nil 1381 } 1382 1383 // bindClockAuctionBase binds a generic wrapper to an already deployed contract. 1384 func bindClockAuctionBase(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 1385 parsed, err := abi.JSON(strings.NewReader(ClockAuctionBaseABI)) 1386 if err != nil { 1387 return nil, err 1388 } 1389 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 1390 } 1391 1392 // Call invokes the (constant) contract method with params as input values and 1393 // sets the output to result. The result type might be a single field for simple 1394 // returns, a slice of interfaces for anonymous returns and a struct for named 1395 // returns. 1396 func (_ClockAuctionBase *ClockAuctionBaseRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1397 return _ClockAuctionBase.Contract.ClockAuctionBaseCaller.contract.Call(opts, result, method, params...) 1398 } 1399 1400 // Transfer initiates a plain transaction to move funds to the contract, calling 1401 // its default method if one is available. 1402 func (_ClockAuctionBase *ClockAuctionBaseRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1403 return _ClockAuctionBase.Contract.ClockAuctionBaseTransactor.contract.Transfer(opts) 1404 } 1405 1406 // Transact invokes the (paid) contract method with params as input values. 1407 func (_ClockAuctionBase *ClockAuctionBaseRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1408 return _ClockAuctionBase.Contract.ClockAuctionBaseTransactor.contract.Transact(opts, method, params...) 1409 } 1410 1411 // Call invokes the (constant) contract method with params as input values and 1412 // sets the output to result. The result type might be a single field for simple 1413 // returns, a slice of interfaces for anonymous returns and a struct for named 1414 // returns. 1415 func (_ClockAuctionBase *ClockAuctionBaseCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 1416 return _ClockAuctionBase.Contract.contract.Call(opts, result, method, params...) 1417 } 1418 1419 // Transfer initiates a plain transaction to move funds to the contract, calling 1420 // its default method if one is available. 1421 func (_ClockAuctionBase *ClockAuctionBaseTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1422 return _ClockAuctionBase.Contract.contract.Transfer(opts) 1423 } 1424 1425 // Transact invokes the (paid) contract method with params as input values. 1426 func (_ClockAuctionBase *ClockAuctionBaseTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1427 return _ClockAuctionBase.Contract.contract.Transact(opts, method, params...) 1428 } 1429 1430 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 1431 // 1432 // Solidity: function nonFungibleContract() view returns(address) 1433 func (_ClockAuctionBase *ClockAuctionBaseCaller) NonFungibleContract(opts *bind.CallOpts) (common.Address, error) { 1434 var out []interface{} 1435 err := _ClockAuctionBase.contract.Call(opts, &out, "nonFungibleContract") 1436 1437 if err != nil { 1438 return *new(common.Address), err 1439 } 1440 1441 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 1442 1443 return out0, err 1444 1445 } 1446 1447 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 1448 // 1449 // Solidity: function nonFungibleContract() view returns(address) 1450 func (_ClockAuctionBase *ClockAuctionBaseSession) NonFungibleContract() (common.Address, error) { 1451 return _ClockAuctionBase.Contract.NonFungibleContract(&_ClockAuctionBase.CallOpts) 1452 } 1453 1454 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 1455 // 1456 // Solidity: function nonFungibleContract() view returns(address) 1457 func (_ClockAuctionBase *ClockAuctionBaseCallerSession) NonFungibleContract() (common.Address, error) { 1458 return _ClockAuctionBase.Contract.NonFungibleContract(&_ClockAuctionBase.CallOpts) 1459 } 1460 1461 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 1462 // 1463 // Solidity: function ownerCut() view returns(uint256) 1464 func (_ClockAuctionBase *ClockAuctionBaseCaller) OwnerCut(opts *bind.CallOpts) (*big.Int, error) { 1465 var out []interface{} 1466 err := _ClockAuctionBase.contract.Call(opts, &out, "ownerCut") 1467 1468 if err != nil { 1469 return *new(*big.Int), err 1470 } 1471 1472 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 1473 1474 return out0, err 1475 1476 } 1477 1478 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 1479 // 1480 // Solidity: function ownerCut() view returns(uint256) 1481 func (_ClockAuctionBase *ClockAuctionBaseSession) OwnerCut() (*big.Int, error) { 1482 return _ClockAuctionBase.Contract.OwnerCut(&_ClockAuctionBase.CallOpts) 1483 } 1484 1485 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 1486 // 1487 // Solidity: function ownerCut() view returns(uint256) 1488 func (_ClockAuctionBase *ClockAuctionBaseCallerSession) OwnerCut() (*big.Int, error) { 1489 return _ClockAuctionBase.Contract.OwnerCut(&_ClockAuctionBase.CallOpts) 1490 } 1491 1492 // ClockAuctionBaseAuctionCancelledIterator is returned from FilterAuctionCancelled and is used to iterate over the raw logs and unpacked data for AuctionCancelled events raised by the ClockAuctionBase contract. 1493 type ClockAuctionBaseAuctionCancelledIterator struct { 1494 Event *ClockAuctionBaseAuctionCancelled // Event containing the contract specifics and raw log 1495 1496 contract *bind.BoundContract // Generic contract to use for unpacking event data 1497 event string // Event name to use for unpacking event data 1498 1499 logs chan types.Log // Log channel receiving the found contract events 1500 sub ethereum.Subscription // Subscription for errors, completion and termination 1501 done bool // Whether the subscription completed delivering logs 1502 fail error // Occurred error to stop iteration 1503 } 1504 1505 // Next advances the iterator to the subsequent event, returning whether there 1506 // are any more events found. In case of a retrieval or parsing error, false is 1507 // returned and Error() can be queried for the exact failure. 1508 func (it *ClockAuctionBaseAuctionCancelledIterator) Next() bool { 1509 // If the iterator failed, stop iterating 1510 if it.fail != nil { 1511 return false 1512 } 1513 // If the iterator completed, deliver directly whatever's available 1514 if it.done { 1515 select { 1516 case log := <-it.logs: 1517 it.Event = new(ClockAuctionBaseAuctionCancelled) 1518 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1519 it.fail = err 1520 return false 1521 } 1522 it.Event.Raw = log 1523 return true 1524 1525 default: 1526 return false 1527 } 1528 } 1529 // Iterator still in progress, wait for either a data or an error event 1530 select { 1531 case log := <-it.logs: 1532 it.Event = new(ClockAuctionBaseAuctionCancelled) 1533 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1534 it.fail = err 1535 return false 1536 } 1537 it.Event.Raw = log 1538 return true 1539 1540 case err := <-it.sub.Err(): 1541 it.done = true 1542 it.fail = err 1543 return it.Next() 1544 } 1545 } 1546 1547 // Error returns any retrieval or parsing error occurred during filtering. 1548 func (it *ClockAuctionBaseAuctionCancelledIterator) Error() error { 1549 return it.fail 1550 } 1551 1552 // Close terminates the iteration process, releasing any pending underlying 1553 // resources. 1554 func (it *ClockAuctionBaseAuctionCancelledIterator) Close() error { 1555 it.sub.Unsubscribe() 1556 return nil 1557 } 1558 1559 // ClockAuctionBaseAuctionCancelled represents a AuctionCancelled event raised by the ClockAuctionBase contract. 1560 type ClockAuctionBaseAuctionCancelled struct { 1561 TokenId *big.Int 1562 Raw types.Log // Blockchain specific contextual infos 1563 } 1564 1565 // FilterAuctionCancelled is a free log retrieval operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 1566 // 1567 // Solidity: event AuctionCancelled(uint256 tokenId) 1568 func (_ClockAuctionBase *ClockAuctionBaseFilterer) FilterAuctionCancelled(opts *bind.FilterOpts) (*ClockAuctionBaseAuctionCancelledIterator, error) { 1569 1570 logs, sub, err := _ClockAuctionBase.contract.FilterLogs(opts, "AuctionCancelled") 1571 if err != nil { 1572 return nil, err 1573 } 1574 return &ClockAuctionBaseAuctionCancelledIterator{contract: _ClockAuctionBase.contract, event: "AuctionCancelled", logs: logs, sub: sub}, nil 1575 } 1576 1577 // WatchAuctionCancelled is a free log subscription operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 1578 // 1579 // Solidity: event AuctionCancelled(uint256 tokenId) 1580 func (_ClockAuctionBase *ClockAuctionBaseFilterer) WatchAuctionCancelled(opts *bind.WatchOpts, sink chan<- *ClockAuctionBaseAuctionCancelled) (event.Subscription, error) { 1581 1582 logs, sub, err := _ClockAuctionBase.contract.WatchLogs(opts, "AuctionCancelled") 1583 if err != nil { 1584 return nil, err 1585 } 1586 return event.NewSubscription(func(quit <-chan struct{}) error { 1587 defer sub.Unsubscribe() 1588 for { 1589 select { 1590 case log := <-logs: 1591 // New log arrived, parse the event and forward to the user 1592 event := new(ClockAuctionBaseAuctionCancelled) 1593 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 1594 return err 1595 } 1596 event.Raw = log 1597 1598 select { 1599 case sink <- event: 1600 case err := <-sub.Err(): 1601 return err 1602 case <-quit: 1603 return nil 1604 } 1605 case err := <-sub.Err(): 1606 return err 1607 case <-quit: 1608 return nil 1609 } 1610 } 1611 }), nil 1612 } 1613 1614 // ParseAuctionCancelled is a log parse operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 1615 // 1616 // Solidity: event AuctionCancelled(uint256 tokenId) 1617 func (_ClockAuctionBase *ClockAuctionBaseFilterer) ParseAuctionCancelled(log types.Log) (*ClockAuctionBaseAuctionCancelled, error) { 1618 event := new(ClockAuctionBaseAuctionCancelled) 1619 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 1620 return nil, err 1621 } 1622 event.Raw = log 1623 return event, nil 1624 } 1625 1626 // ClockAuctionBaseAuctionCreatedIterator is returned from FilterAuctionCreated and is used to iterate over the raw logs and unpacked data for AuctionCreated events raised by the ClockAuctionBase contract. 1627 type ClockAuctionBaseAuctionCreatedIterator struct { 1628 Event *ClockAuctionBaseAuctionCreated // Event containing the contract specifics and raw log 1629 1630 contract *bind.BoundContract // Generic contract to use for unpacking event data 1631 event string // Event name to use for unpacking event data 1632 1633 logs chan types.Log // Log channel receiving the found contract events 1634 sub ethereum.Subscription // Subscription for errors, completion and termination 1635 done bool // Whether the subscription completed delivering logs 1636 fail error // Occurred error to stop iteration 1637 } 1638 1639 // Next advances the iterator to the subsequent event, returning whether there 1640 // are any more events found. In case of a retrieval or parsing error, false is 1641 // returned and Error() can be queried for the exact failure. 1642 func (it *ClockAuctionBaseAuctionCreatedIterator) Next() bool { 1643 // If the iterator failed, stop iterating 1644 if it.fail != nil { 1645 return false 1646 } 1647 // If the iterator completed, deliver directly whatever's available 1648 if it.done { 1649 select { 1650 case log := <-it.logs: 1651 it.Event = new(ClockAuctionBaseAuctionCreated) 1652 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1653 it.fail = err 1654 return false 1655 } 1656 it.Event.Raw = log 1657 return true 1658 1659 default: 1660 return false 1661 } 1662 } 1663 // Iterator still in progress, wait for either a data or an error event 1664 select { 1665 case log := <-it.logs: 1666 it.Event = new(ClockAuctionBaseAuctionCreated) 1667 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1668 it.fail = err 1669 return false 1670 } 1671 it.Event.Raw = log 1672 return true 1673 1674 case err := <-it.sub.Err(): 1675 it.done = true 1676 it.fail = err 1677 return it.Next() 1678 } 1679 } 1680 1681 // Error returns any retrieval or parsing error occurred during filtering. 1682 func (it *ClockAuctionBaseAuctionCreatedIterator) Error() error { 1683 return it.fail 1684 } 1685 1686 // Close terminates the iteration process, releasing any pending underlying 1687 // resources. 1688 func (it *ClockAuctionBaseAuctionCreatedIterator) Close() error { 1689 it.sub.Unsubscribe() 1690 return nil 1691 } 1692 1693 // ClockAuctionBaseAuctionCreated represents a AuctionCreated event raised by the ClockAuctionBase contract. 1694 type ClockAuctionBaseAuctionCreated struct { 1695 TokenId *big.Int 1696 StartingPrice *big.Int 1697 EndingPrice *big.Int 1698 Duration *big.Int 1699 Raw types.Log // Blockchain specific contextual infos 1700 } 1701 1702 // FilterAuctionCreated is a free log retrieval operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 1703 // 1704 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 1705 func (_ClockAuctionBase *ClockAuctionBaseFilterer) FilterAuctionCreated(opts *bind.FilterOpts) (*ClockAuctionBaseAuctionCreatedIterator, error) { 1706 1707 logs, sub, err := _ClockAuctionBase.contract.FilterLogs(opts, "AuctionCreated") 1708 if err != nil { 1709 return nil, err 1710 } 1711 return &ClockAuctionBaseAuctionCreatedIterator{contract: _ClockAuctionBase.contract, event: "AuctionCreated", logs: logs, sub: sub}, nil 1712 } 1713 1714 // WatchAuctionCreated is a free log subscription operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 1715 // 1716 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 1717 func (_ClockAuctionBase *ClockAuctionBaseFilterer) WatchAuctionCreated(opts *bind.WatchOpts, sink chan<- *ClockAuctionBaseAuctionCreated) (event.Subscription, error) { 1718 1719 logs, sub, err := _ClockAuctionBase.contract.WatchLogs(opts, "AuctionCreated") 1720 if err != nil { 1721 return nil, err 1722 } 1723 return event.NewSubscription(func(quit <-chan struct{}) error { 1724 defer sub.Unsubscribe() 1725 for { 1726 select { 1727 case log := <-logs: 1728 // New log arrived, parse the event and forward to the user 1729 event := new(ClockAuctionBaseAuctionCreated) 1730 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 1731 return err 1732 } 1733 event.Raw = log 1734 1735 select { 1736 case sink <- event: 1737 case err := <-sub.Err(): 1738 return err 1739 case <-quit: 1740 return nil 1741 } 1742 case err := <-sub.Err(): 1743 return err 1744 case <-quit: 1745 return nil 1746 } 1747 } 1748 }), nil 1749 } 1750 1751 // ParseAuctionCreated is a log parse operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 1752 // 1753 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 1754 func (_ClockAuctionBase *ClockAuctionBaseFilterer) ParseAuctionCreated(log types.Log) (*ClockAuctionBaseAuctionCreated, error) { 1755 event := new(ClockAuctionBaseAuctionCreated) 1756 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 1757 return nil, err 1758 } 1759 event.Raw = log 1760 return event, nil 1761 } 1762 1763 // ClockAuctionBaseAuctionSuccessfulIterator is returned from FilterAuctionSuccessful and is used to iterate over the raw logs and unpacked data for AuctionSuccessful events raised by the ClockAuctionBase contract. 1764 type ClockAuctionBaseAuctionSuccessfulIterator struct { 1765 Event *ClockAuctionBaseAuctionSuccessful // Event containing the contract specifics and raw log 1766 1767 contract *bind.BoundContract // Generic contract to use for unpacking event data 1768 event string // Event name to use for unpacking event data 1769 1770 logs chan types.Log // Log channel receiving the found contract events 1771 sub ethereum.Subscription // Subscription for errors, completion and termination 1772 done bool // Whether the subscription completed delivering logs 1773 fail error // Occurred error to stop iteration 1774 } 1775 1776 // Next advances the iterator to the subsequent event, returning whether there 1777 // are any more events found. In case of a retrieval or parsing error, false is 1778 // returned and Error() can be queried for the exact failure. 1779 func (it *ClockAuctionBaseAuctionSuccessfulIterator) Next() bool { 1780 // If the iterator failed, stop iterating 1781 if it.fail != nil { 1782 return false 1783 } 1784 // If the iterator completed, deliver directly whatever's available 1785 if it.done { 1786 select { 1787 case log := <-it.logs: 1788 it.Event = new(ClockAuctionBaseAuctionSuccessful) 1789 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1790 it.fail = err 1791 return false 1792 } 1793 it.Event.Raw = log 1794 return true 1795 1796 default: 1797 return false 1798 } 1799 } 1800 // Iterator still in progress, wait for either a data or an error event 1801 select { 1802 case log := <-it.logs: 1803 it.Event = new(ClockAuctionBaseAuctionSuccessful) 1804 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1805 it.fail = err 1806 return false 1807 } 1808 it.Event.Raw = log 1809 return true 1810 1811 case err := <-it.sub.Err(): 1812 it.done = true 1813 it.fail = err 1814 return it.Next() 1815 } 1816 } 1817 1818 // Error returns any retrieval or parsing error occurred during filtering. 1819 func (it *ClockAuctionBaseAuctionSuccessfulIterator) Error() error { 1820 return it.fail 1821 } 1822 1823 // Close terminates the iteration process, releasing any pending underlying 1824 // resources. 1825 func (it *ClockAuctionBaseAuctionSuccessfulIterator) Close() error { 1826 it.sub.Unsubscribe() 1827 return nil 1828 } 1829 1830 // ClockAuctionBaseAuctionSuccessful represents a AuctionSuccessful event raised by the ClockAuctionBase contract. 1831 type ClockAuctionBaseAuctionSuccessful struct { 1832 TokenId *big.Int 1833 TotalPrice *big.Int 1834 Winner common.Address 1835 Raw types.Log // Blockchain specific contextual infos 1836 } 1837 1838 // FilterAuctionSuccessful is a free log retrieval operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 1839 // 1840 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 1841 func (_ClockAuctionBase *ClockAuctionBaseFilterer) FilterAuctionSuccessful(opts *bind.FilterOpts) (*ClockAuctionBaseAuctionSuccessfulIterator, error) { 1842 1843 logs, sub, err := _ClockAuctionBase.contract.FilterLogs(opts, "AuctionSuccessful") 1844 if err != nil { 1845 return nil, err 1846 } 1847 return &ClockAuctionBaseAuctionSuccessfulIterator{contract: _ClockAuctionBase.contract, event: "AuctionSuccessful", logs: logs, sub: sub}, nil 1848 } 1849 1850 // WatchAuctionSuccessful is a free log subscription operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 1851 // 1852 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 1853 func (_ClockAuctionBase *ClockAuctionBaseFilterer) WatchAuctionSuccessful(opts *bind.WatchOpts, sink chan<- *ClockAuctionBaseAuctionSuccessful) (event.Subscription, error) { 1854 1855 logs, sub, err := _ClockAuctionBase.contract.WatchLogs(opts, "AuctionSuccessful") 1856 if err != nil { 1857 return nil, err 1858 } 1859 return event.NewSubscription(func(quit <-chan struct{}) error { 1860 defer sub.Unsubscribe() 1861 for { 1862 select { 1863 case log := <-logs: 1864 // New log arrived, parse the event and forward to the user 1865 event := new(ClockAuctionBaseAuctionSuccessful) 1866 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 1867 return err 1868 } 1869 event.Raw = log 1870 1871 select { 1872 case sink <- event: 1873 case err := <-sub.Err(): 1874 return err 1875 case <-quit: 1876 return nil 1877 } 1878 case err := <-sub.Err(): 1879 return err 1880 case <-quit: 1881 return nil 1882 } 1883 } 1884 }), nil 1885 } 1886 1887 // ParseAuctionSuccessful is a log parse operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 1888 // 1889 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 1890 func (_ClockAuctionBase *ClockAuctionBaseFilterer) ParseAuctionSuccessful(log types.Log) (*ClockAuctionBaseAuctionSuccessful, error) { 1891 event := new(ClockAuctionBaseAuctionSuccessful) 1892 if err := _ClockAuctionBase.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 1893 return nil, err 1894 } 1895 event.Raw = log 1896 return event, nil 1897 } 1898 1899 // ERC721ABI is the input ABI used to generate the binding from. 1900 const ERC721ABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"_interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"total\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"name\":\"owner\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"balance\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}]" 1901 1902 // ERC721FuncSigs maps the 4-byte function signature to its string representation. 1903 var ERC721FuncSigs = map[string]string{ 1904 "095ea7b3": "approve(address,uint256)", 1905 "70a08231": "balanceOf(address)", 1906 "6352211e": "ownerOf(uint256)", 1907 "01ffc9a7": "supportsInterface(bytes4)", 1908 "18160ddd": "totalSupply()", 1909 "a9059cbb": "transfer(address,uint256)", 1910 "23b872dd": "transferFrom(address,address,uint256)", 1911 } 1912 1913 // ERC721 is an auto generated Go binding around an Ethereum contract. 1914 type ERC721 struct { 1915 ERC721Caller // Read-only binding to the contract 1916 ERC721Transactor // Write-only binding to the contract 1917 ERC721Filterer // Log filterer for contract events 1918 } 1919 1920 // ERC721Caller is an auto generated read-only Go binding around an Ethereum contract. 1921 type ERC721Caller struct { 1922 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1923 } 1924 1925 // ERC721Transactor is an auto generated write-only Go binding around an Ethereum contract. 1926 type ERC721Transactor struct { 1927 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1928 } 1929 1930 // ERC721Filterer is an auto generated log filtering Go binding around an Ethereum contract events. 1931 type ERC721Filterer struct { 1932 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1933 } 1934 1935 // ERC721Session is an auto generated Go binding around an Ethereum contract, 1936 // with pre-set call and transact options. 1937 type ERC721Session struct { 1938 Contract *ERC721 // Generic contract binding to set the session for 1939 CallOpts bind.CallOpts // Call options to use throughout this session 1940 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1941 } 1942 1943 // ERC721CallerSession is an auto generated read-only Go binding around an Ethereum contract, 1944 // with pre-set call options. 1945 type ERC721CallerSession struct { 1946 Contract *ERC721Caller // Generic contract caller binding to set the session for 1947 CallOpts bind.CallOpts // Call options to use throughout this session 1948 } 1949 1950 // ERC721TransactorSession is an auto generated write-only Go binding around an Ethereum contract, 1951 // with pre-set transact options. 1952 type ERC721TransactorSession struct { 1953 Contract *ERC721Transactor // Generic contract transactor binding to set the session for 1954 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1955 } 1956 1957 // ERC721Raw is an auto generated low-level Go binding around an Ethereum contract. 1958 type ERC721Raw struct { 1959 Contract *ERC721 // Generic contract binding to access the raw methods on 1960 } 1961 1962 // ERC721CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 1963 type ERC721CallerRaw struct { 1964 Contract *ERC721Caller // Generic read-only contract binding to access the raw methods on 1965 } 1966 1967 // ERC721TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 1968 type ERC721TransactorRaw struct { 1969 Contract *ERC721Transactor // Generic write-only contract binding to access the raw methods on 1970 } 1971 1972 // NewERC721 creates a new instance of ERC721, bound to a specific deployed contract. 1973 func NewERC721(address common.Address, backend bind.ContractBackend) (*ERC721, error) { 1974 contract, err := bindERC721(address, backend, backend, backend) 1975 if err != nil { 1976 return nil, err 1977 } 1978 return &ERC721{ERC721Caller: ERC721Caller{contract: contract}, ERC721Transactor: ERC721Transactor{contract: contract}, ERC721Filterer: ERC721Filterer{contract: contract}}, nil 1979 } 1980 1981 // NewERC721Caller creates a new read-only instance of ERC721, bound to a specific deployed contract. 1982 func NewERC721Caller(address common.Address, caller bind.ContractCaller) (*ERC721Caller, error) { 1983 contract, err := bindERC721(address, caller, nil, nil) 1984 if err != nil { 1985 return nil, err 1986 } 1987 return &ERC721Caller{contract: contract}, nil 1988 } 1989 1990 // NewERC721Transactor creates a new write-only instance of ERC721, bound to a specific deployed contract. 1991 func NewERC721Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC721Transactor, error) { 1992 contract, err := bindERC721(address, nil, transactor, nil) 1993 if err != nil { 1994 return nil, err 1995 } 1996 return &ERC721Transactor{contract: contract}, nil 1997 } 1998 1999 // NewERC721Filterer creates a new log filterer instance of ERC721, bound to a specific deployed contract. 2000 func NewERC721Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC721Filterer, error) { 2001 contract, err := bindERC721(address, nil, nil, filterer) 2002 if err != nil { 2003 return nil, err 2004 } 2005 return &ERC721Filterer{contract: contract}, nil 2006 } 2007 2008 // bindERC721 binds a generic wrapper to an already deployed contract. 2009 func bindERC721(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 2010 parsed, err := abi.JSON(strings.NewReader(ERC721ABI)) 2011 if err != nil { 2012 return nil, err 2013 } 2014 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 2015 } 2016 2017 // Call invokes the (constant) contract method with params as input values and 2018 // sets the output to result. The result type might be a single field for simple 2019 // returns, a slice of interfaces for anonymous returns and a struct for named 2020 // returns. 2021 func (_ERC721 *ERC721Raw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2022 return _ERC721.Contract.ERC721Caller.contract.Call(opts, result, method, params...) 2023 } 2024 2025 // Transfer initiates a plain transaction to move funds to the contract, calling 2026 // its default method if one is available. 2027 func (_ERC721 *ERC721Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2028 return _ERC721.Contract.ERC721Transactor.contract.Transfer(opts) 2029 } 2030 2031 // Transact invokes the (paid) contract method with params as input values. 2032 func (_ERC721 *ERC721Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2033 return _ERC721.Contract.ERC721Transactor.contract.Transact(opts, method, params...) 2034 } 2035 2036 // Call invokes the (constant) contract method with params as input values and 2037 // sets the output to result. The result type might be a single field for simple 2038 // returns, a slice of interfaces for anonymous returns and a struct for named 2039 // returns. 2040 func (_ERC721 *ERC721CallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2041 return _ERC721.Contract.contract.Call(opts, result, method, params...) 2042 } 2043 2044 // Transfer initiates a plain transaction to move funds to the contract, calling 2045 // its default method if one is available. 2046 func (_ERC721 *ERC721TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2047 return _ERC721.Contract.contract.Transfer(opts) 2048 } 2049 2050 // Transact invokes the (paid) contract method with params as input values. 2051 func (_ERC721 *ERC721TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2052 return _ERC721.Contract.contract.Transact(opts, method, params...) 2053 } 2054 2055 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 2056 // 2057 // Solidity: function balanceOf(address _owner) view returns(uint256 balance) 2058 func (_ERC721 *ERC721Caller) BalanceOf(opts *bind.CallOpts, _owner common.Address) (*big.Int, error) { 2059 var out []interface{} 2060 err := _ERC721.contract.Call(opts, &out, "balanceOf", _owner) 2061 2062 if err != nil { 2063 return *new(*big.Int), err 2064 } 2065 2066 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 2067 2068 return out0, err 2069 2070 } 2071 2072 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 2073 // 2074 // Solidity: function balanceOf(address _owner) view returns(uint256 balance) 2075 func (_ERC721 *ERC721Session) BalanceOf(_owner common.Address) (*big.Int, error) { 2076 return _ERC721.Contract.BalanceOf(&_ERC721.CallOpts, _owner) 2077 } 2078 2079 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 2080 // 2081 // Solidity: function balanceOf(address _owner) view returns(uint256 balance) 2082 func (_ERC721 *ERC721CallerSession) BalanceOf(_owner common.Address) (*big.Int, error) { 2083 return _ERC721.Contract.BalanceOf(&_ERC721.CallOpts, _owner) 2084 } 2085 2086 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 2087 // 2088 // Solidity: function ownerOf(uint256 _tokenId) view returns(address owner) 2089 func (_ERC721 *ERC721Caller) OwnerOf(opts *bind.CallOpts, _tokenId *big.Int) (common.Address, error) { 2090 var out []interface{} 2091 err := _ERC721.contract.Call(opts, &out, "ownerOf", _tokenId) 2092 2093 if err != nil { 2094 return *new(common.Address), err 2095 } 2096 2097 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 2098 2099 return out0, err 2100 2101 } 2102 2103 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 2104 // 2105 // Solidity: function ownerOf(uint256 _tokenId) view returns(address owner) 2106 func (_ERC721 *ERC721Session) OwnerOf(_tokenId *big.Int) (common.Address, error) { 2107 return _ERC721.Contract.OwnerOf(&_ERC721.CallOpts, _tokenId) 2108 } 2109 2110 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 2111 // 2112 // Solidity: function ownerOf(uint256 _tokenId) view returns(address owner) 2113 func (_ERC721 *ERC721CallerSession) OwnerOf(_tokenId *big.Int) (common.Address, error) { 2114 return _ERC721.Contract.OwnerOf(&_ERC721.CallOpts, _tokenId) 2115 } 2116 2117 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 2118 // 2119 // Solidity: function supportsInterface(bytes4 _interfaceID) view returns(bool) 2120 func (_ERC721 *ERC721Caller) SupportsInterface(opts *bind.CallOpts, _interfaceID [4]byte) (bool, error) { 2121 var out []interface{} 2122 err := _ERC721.contract.Call(opts, &out, "supportsInterface", _interfaceID) 2123 2124 if err != nil { 2125 return *new(bool), err 2126 } 2127 2128 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 2129 2130 return out0, err 2131 2132 } 2133 2134 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 2135 // 2136 // Solidity: function supportsInterface(bytes4 _interfaceID) view returns(bool) 2137 func (_ERC721 *ERC721Session) SupportsInterface(_interfaceID [4]byte) (bool, error) { 2138 return _ERC721.Contract.SupportsInterface(&_ERC721.CallOpts, _interfaceID) 2139 } 2140 2141 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 2142 // 2143 // Solidity: function supportsInterface(bytes4 _interfaceID) view returns(bool) 2144 func (_ERC721 *ERC721CallerSession) SupportsInterface(_interfaceID [4]byte) (bool, error) { 2145 return _ERC721.Contract.SupportsInterface(&_ERC721.CallOpts, _interfaceID) 2146 } 2147 2148 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 2149 // 2150 // Solidity: function totalSupply() view returns(uint256 total) 2151 func (_ERC721 *ERC721Caller) TotalSupply(opts *bind.CallOpts) (*big.Int, error) { 2152 var out []interface{} 2153 err := _ERC721.contract.Call(opts, &out, "totalSupply") 2154 2155 if err != nil { 2156 return *new(*big.Int), err 2157 } 2158 2159 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 2160 2161 return out0, err 2162 2163 } 2164 2165 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 2166 // 2167 // Solidity: function totalSupply() view returns(uint256 total) 2168 func (_ERC721 *ERC721Session) TotalSupply() (*big.Int, error) { 2169 return _ERC721.Contract.TotalSupply(&_ERC721.CallOpts) 2170 } 2171 2172 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 2173 // 2174 // Solidity: function totalSupply() view returns(uint256 total) 2175 func (_ERC721 *ERC721CallerSession) TotalSupply() (*big.Int, error) { 2176 return _ERC721.Contract.TotalSupply(&_ERC721.CallOpts) 2177 } 2178 2179 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 2180 // 2181 // Solidity: function approve(address _to, uint256 _tokenId) returns() 2182 func (_ERC721 *ERC721Transactor) Approve(opts *bind.TransactOpts, _to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2183 return _ERC721.contract.Transact(opts, "approve", _to, _tokenId) 2184 } 2185 2186 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 2187 // 2188 // Solidity: function approve(address _to, uint256 _tokenId) returns() 2189 func (_ERC721 *ERC721Session) Approve(_to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2190 return _ERC721.Contract.Approve(&_ERC721.TransactOpts, _to, _tokenId) 2191 } 2192 2193 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 2194 // 2195 // Solidity: function approve(address _to, uint256 _tokenId) returns() 2196 func (_ERC721 *ERC721TransactorSession) Approve(_to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2197 return _ERC721.Contract.Approve(&_ERC721.TransactOpts, _to, _tokenId) 2198 } 2199 2200 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 2201 // 2202 // Solidity: function transfer(address _to, uint256 _tokenId) returns() 2203 func (_ERC721 *ERC721Transactor) Transfer(opts *bind.TransactOpts, _to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2204 return _ERC721.contract.Transact(opts, "transfer", _to, _tokenId) 2205 } 2206 2207 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 2208 // 2209 // Solidity: function transfer(address _to, uint256 _tokenId) returns() 2210 func (_ERC721 *ERC721Session) Transfer(_to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2211 return _ERC721.Contract.Transfer(&_ERC721.TransactOpts, _to, _tokenId) 2212 } 2213 2214 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 2215 // 2216 // Solidity: function transfer(address _to, uint256 _tokenId) returns() 2217 func (_ERC721 *ERC721TransactorSession) Transfer(_to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2218 return _ERC721.Contract.Transfer(&_ERC721.TransactOpts, _to, _tokenId) 2219 } 2220 2221 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 2222 // 2223 // Solidity: function transferFrom(address _from, address _to, uint256 _tokenId) returns() 2224 func (_ERC721 *ERC721Transactor) TransferFrom(opts *bind.TransactOpts, _from common.Address, _to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2225 return _ERC721.contract.Transact(opts, "transferFrom", _from, _to, _tokenId) 2226 } 2227 2228 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 2229 // 2230 // Solidity: function transferFrom(address _from, address _to, uint256 _tokenId) returns() 2231 func (_ERC721 *ERC721Session) TransferFrom(_from common.Address, _to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2232 return _ERC721.Contract.TransferFrom(&_ERC721.TransactOpts, _from, _to, _tokenId) 2233 } 2234 2235 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 2236 // 2237 // Solidity: function transferFrom(address _from, address _to, uint256 _tokenId) returns() 2238 func (_ERC721 *ERC721TransactorSession) TransferFrom(_from common.Address, _to common.Address, _tokenId *big.Int) (*types.Transaction, error) { 2239 return _ERC721.Contract.TransferFrom(&_ERC721.TransactOpts, _from, _to, _tokenId) 2240 } 2241 2242 // ERC721ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC721 contract. 2243 type ERC721ApprovalIterator struct { 2244 Event *ERC721Approval // Event containing the contract specifics and raw log 2245 2246 contract *bind.BoundContract // Generic contract to use for unpacking event data 2247 event string // Event name to use for unpacking event data 2248 2249 logs chan types.Log // Log channel receiving the found contract events 2250 sub ethereum.Subscription // Subscription for errors, completion and termination 2251 done bool // Whether the subscription completed delivering logs 2252 fail error // Occurred error to stop iteration 2253 } 2254 2255 // Next advances the iterator to the subsequent event, returning whether there 2256 // are any more events found. In case of a retrieval or parsing error, false is 2257 // returned and Error() can be queried for the exact failure. 2258 func (it *ERC721ApprovalIterator) Next() bool { 2259 // If the iterator failed, stop iterating 2260 if it.fail != nil { 2261 return false 2262 } 2263 // If the iterator completed, deliver directly whatever's available 2264 if it.done { 2265 select { 2266 case log := <-it.logs: 2267 it.Event = new(ERC721Approval) 2268 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2269 it.fail = err 2270 return false 2271 } 2272 it.Event.Raw = log 2273 return true 2274 2275 default: 2276 return false 2277 } 2278 } 2279 // Iterator still in progress, wait for either a data or an error event 2280 select { 2281 case log := <-it.logs: 2282 it.Event = new(ERC721Approval) 2283 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2284 it.fail = err 2285 return false 2286 } 2287 it.Event.Raw = log 2288 return true 2289 2290 case err := <-it.sub.Err(): 2291 it.done = true 2292 it.fail = err 2293 return it.Next() 2294 } 2295 } 2296 2297 // Error returns any retrieval or parsing error occurred during filtering. 2298 func (it *ERC721ApprovalIterator) Error() error { 2299 return it.fail 2300 } 2301 2302 // Close terminates the iteration process, releasing any pending underlying 2303 // resources. 2304 func (it *ERC721ApprovalIterator) Close() error { 2305 it.sub.Unsubscribe() 2306 return nil 2307 } 2308 2309 // ERC721Approval represents a Approval event raised by the ERC721 contract. 2310 type ERC721Approval struct { 2311 Owner common.Address 2312 Approved common.Address 2313 TokenId *big.Int 2314 Raw types.Log // Blockchain specific contextual infos 2315 } 2316 2317 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 2318 // 2319 // Solidity: event Approval(address owner, address approved, uint256 tokenId) 2320 func (_ERC721 *ERC721Filterer) FilterApproval(opts *bind.FilterOpts) (*ERC721ApprovalIterator, error) { 2321 2322 logs, sub, err := _ERC721.contract.FilterLogs(opts, "Approval") 2323 if err != nil { 2324 return nil, err 2325 } 2326 return &ERC721ApprovalIterator{contract: _ERC721.contract, event: "Approval", logs: logs, sub: sub}, nil 2327 } 2328 2329 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 2330 // 2331 // Solidity: event Approval(address owner, address approved, uint256 tokenId) 2332 func (_ERC721 *ERC721Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721Approval) (event.Subscription, error) { 2333 2334 logs, sub, err := _ERC721.contract.WatchLogs(opts, "Approval") 2335 if err != nil { 2336 return nil, err 2337 } 2338 return event.NewSubscription(func(quit <-chan struct{}) error { 2339 defer sub.Unsubscribe() 2340 for { 2341 select { 2342 case log := <-logs: 2343 // New log arrived, parse the event and forward to the user 2344 event := new(ERC721Approval) 2345 if err := _ERC721.contract.UnpackLog(event, "Approval", log); err != nil { 2346 return err 2347 } 2348 event.Raw = log 2349 2350 select { 2351 case sink <- event: 2352 case err := <-sub.Err(): 2353 return err 2354 case <-quit: 2355 return nil 2356 } 2357 case err := <-sub.Err(): 2358 return err 2359 case <-quit: 2360 return nil 2361 } 2362 } 2363 }), nil 2364 } 2365 2366 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 2367 // 2368 // Solidity: event Approval(address owner, address approved, uint256 tokenId) 2369 func (_ERC721 *ERC721Filterer) ParseApproval(log types.Log) (*ERC721Approval, error) { 2370 event := new(ERC721Approval) 2371 if err := _ERC721.contract.UnpackLog(event, "Approval", log); err != nil { 2372 return nil, err 2373 } 2374 event.Raw = log 2375 return event, nil 2376 } 2377 2378 // ERC721TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC721 contract. 2379 type ERC721TransferIterator struct { 2380 Event *ERC721Transfer // Event containing the contract specifics and raw log 2381 2382 contract *bind.BoundContract // Generic contract to use for unpacking event data 2383 event string // Event name to use for unpacking event data 2384 2385 logs chan types.Log // Log channel receiving the found contract events 2386 sub ethereum.Subscription // Subscription for errors, completion and termination 2387 done bool // Whether the subscription completed delivering logs 2388 fail error // Occurred error to stop iteration 2389 } 2390 2391 // Next advances the iterator to the subsequent event, returning whether there 2392 // are any more events found. In case of a retrieval or parsing error, false is 2393 // returned and Error() can be queried for the exact failure. 2394 func (it *ERC721TransferIterator) Next() bool { 2395 // If the iterator failed, stop iterating 2396 if it.fail != nil { 2397 return false 2398 } 2399 // If the iterator completed, deliver directly whatever's available 2400 if it.done { 2401 select { 2402 case log := <-it.logs: 2403 it.Event = new(ERC721Transfer) 2404 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2405 it.fail = err 2406 return false 2407 } 2408 it.Event.Raw = log 2409 return true 2410 2411 default: 2412 return false 2413 } 2414 } 2415 // Iterator still in progress, wait for either a data or an error event 2416 select { 2417 case log := <-it.logs: 2418 it.Event = new(ERC721Transfer) 2419 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2420 it.fail = err 2421 return false 2422 } 2423 it.Event.Raw = log 2424 return true 2425 2426 case err := <-it.sub.Err(): 2427 it.done = true 2428 it.fail = err 2429 return it.Next() 2430 } 2431 } 2432 2433 // Error returns any retrieval or parsing error occurred during filtering. 2434 func (it *ERC721TransferIterator) Error() error { 2435 return it.fail 2436 } 2437 2438 // Close terminates the iteration process, releasing any pending underlying 2439 // resources. 2440 func (it *ERC721TransferIterator) Close() error { 2441 it.sub.Unsubscribe() 2442 return nil 2443 } 2444 2445 // ERC721Transfer represents a Transfer event raised by the ERC721 contract. 2446 type ERC721Transfer struct { 2447 From common.Address 2448 To common.Address 2449 TokenId *big.Int 2450 Raw types.Log // Blockchain specific contextual infos 2451 } 2452 2453 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 2454 // 2455 // Solidity: event Transfer(address from, address to, uint256 tokenId) 2456 func (_ERC721 *ERC721Filterer) FilterTransfer(opts *bind.FilterOpts) (*ERC721TransferIterator, error) { 2457 2458 logs, sub, err := _ERC721.contract.FilterLogs(opts, "Transfer") 2459 if err != nil { 2460 return nil, err 2461 } 2462 return &ERC721TransferIterator{contract: _ERC721.contract, event: "Transfer", logs: logs, sub: sub}, nil 2463 } 2464 2465 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 2466 // 2467 // Solidity: event Transfer(address from, address to, uint256 tokenId) 2468 func (_ERC721 *ERC721Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721Transfer) (event.Subscription, error) { 2469 2470 logs, sub, err := _ERC721.contract.WatchLogs(opts, "Transfer") 2471 if err != nil { 2472 return nil, err 2473 } 2474 return event.NewSubscription(func(quit <-chan struct{}) error { 2475 defer sub.Unsubscribe() 2476 for { 2477 select { 2478 case log := <-logs: 2479 // New log arrived, parse the event and forward to the user 2480 event := new(ERC721Transfer) 2481 if err := _ERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 2482 return err 2483 } 2484 event.Raw = log 2485 2486 select { 2487 case sink <- event: 2488 case err := <-sub.Err(): 2489 return err 2490 case <-quit: 2491 return nil 2492 } 2493 case err := <-sub.Err(): 2494 return err 2495 case <-quit: 2496 return nil 2497 } 2498 } 2499 }), nil 2500 } 2501 2502 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 2503 // 2504 // Solidity: event Transfer(address from, address to, uint256 tokenId) 2505 func (_ERC721 *ERC721Filterer) ParseTransfer(log types.Log) (*ERC721Transfer, error) { 2506 event := new(ERC721Transfer) 2507 if err := _ERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 2508 return nil, err 2509 } 2510 event.Raw = log 2511 return event, nil 2512 } 2513 2514 // OwnableABI is the input ABI used to generate the binding from. 2515 const OwnableABI = "[{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}]" 2516 2517 // OwnableFuncSigs maps the 4-byte function signature to its string representation. 2518 var OwnableFuncSigs = map[string]string{ 2519 "8da5cb5b": "owner()", 2520 "f2fde38b": "transferOwnership(address)", 2521 } 2522 2523 // OwnableBin is the compiled bytecode used for deploying new contracts. 2524 var OwnableBin = "0x6060604052341561000f57600080fd5b60008054600160a060020a033316600160a060020a031990911617905561017f8061003b6000396000f30060606040526004361061004b5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416638da5cb5b8114610050578063f2fde38b1461008c575b600080fd5b341561005b57600080fd5b6100636100ba565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b341561009757600080fd5b6100b873ffffffffffffffffffffffffffffffffffffffff600435166100d6565b005b60005473ffffffffffffffffffffffffffffffffffffffff1681565b6000543373ffffffffffffffffffffffffffffffffffffffff9081169116146100fe57600080fd5b73ffffffffffffffffffffffffffffffffffffffff811615610150576000805473ffffffffffffffffffffffffffffffffffffffff191673ffffffffffffffffffffffffffffffffffffffff83161790555b505600a165627a7a723058209c6071079fe4d3455176e6b30f735ca99e5b67d24eb7deef2648d7ea1b152c3e0029" 2525 2526 // DeployOwnable deploys a new Ethereum contract, binding an instance of Ownable to it. 2527 func DeployOwnable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Ownable, error) { 2528 parsed, err := abi.JSON(strings.NewReader(OwnableABI)) 2529 if err != nil { 2530 return common.Address{}, nil, nil, err 2531 } 2532 2533 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(OwnableBin), backend) 2534 if err != nil { 2535 return common.Address{}, nil, nil, err 2536 } 2537 return address, tx, &Ownable{OwnableCaller: OwnableCaller{contract: contract}, OwnableTransactor: OwnableTransactor{contract: contract}, OwnableFilterer: OwnableFilterer{contract: contract}}, nil 2538 } 2539 2540 // Ownable is an auto generated Go binding around an Ethereum contract. 2541 type Ownable struct { 2542 OwnableCaller // Read-only binding to the contract 2543 OwnableTransactor // Write-only binding to the contract 2544 OwnableFilterer // Log filterer for contract events 2545 } 2546 2547 // OwnableCaller is an auto generated read-only Go binding around an Ethereum contract. 2548 type OwnableCaller struct { 2549 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2550 } 2551 2552 // OwnableTransactor is an auto generated write-only Go binding around an Ethereum contract. 2553 type OwnableTransactor struct { 2554 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2555 } 2556 2557 // OwnableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 2558 type OwnableFilterer struct { 2559 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2560 } 2561 2562 // OwnableSession is an auto generated Go binding around an Ethereum contract, 2563 // with pre-set call and transact options. 2564 type OwnableSession struct { 2565 Contract *Ownable // Generic contract binding to set the session for 2566 CallOpts bind.CallOpts // Call options to use throughout this session 2567 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2568 } 2569 2570 // OwnableCallerSession is an auto generated read-only Go binding around an Ethereum contract, 2571 // with pre-set call options. 2572 type OwnableCallerSession struct { 2573 Contract *OwnableCaller // Generic contract caller binding to set the session for 2574 CallOpts bind.CallOpts // Call options to use throughout this session 2575 } 2576 2577 // OwnableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 2578 // with pre-set transact options. 2579 type OwnableTransactorSession struct { 2580 Contract *OwnableTransactor // Generic contract transactor binding to set the session for 2581 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2582 } 2583 2584 // OwnableRaw is an auto generated low-level Go binding around an Ethereum contract. 2585 type OwnableRaw struct { 2586 Contract *Ownable // Generic contract binding to access the raw methods on 2587 } 2588 2589 // OwnableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 2590 type OwnableCallerRaw struct { 2591 Contract *OwnableCaller // Generic read-only contract binding to access the raw methods on 2592 } 2593 2594 // OwnableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 2595 type OwnableTransactorRaw struct { 2596 Contract *OwnableTransactor // Generic write-only contract binding to access the raw methods on 2597 } 2598 2599 // NewOwnable creates a new instance of Ownable, bound to a specific deployed contract. 2600 func NewOwnable(address common.Address, backend bind.ContractBackend) (*Ownable, error) { 2601 contract, err := bindOwnable(address, backend, backend, backend) 2602 if err != nil { 2603 return nil, err 2604 } 2605 return &Ownable{OwnableCaller: OwnableCaller{contract: contract}, OwnableTransactor: OwnableTransactor{contract: contract}, OwnableFilterer: OwnableFilterer{contract: contract}}, nil 2606 } 2607 2608 // NewOwnableCaller creates a new read-only instance of Ownable, bound to a specific deployed contract. 2609 func NewOwnableCaller(address common.Address, caller bind.ContractCaller) (*OwnableCaller, error) { 2610 contract, err := bindOwnable(address, caller, nil, nil) 2611 if err != nil { 2612 return nil, err 2613 } 2614 return &OwnableCaller{contract: contract}, nil 2615 } 2616 2617 // NewOwnableTransactor creates a new write-only instance of Ownable, bound to a specific deployed contract. 2618 func NewOwnableTransactor(address common.Address, transactor bind.ContractTransactor) (*OwnableTransactor, error) { 2619 contract, err := bindOwnable(address, nil, transactor, nil) 2620 if err != nil { 2621 return nil, err 2622 } 2623 return &OwnableTransactor{contract: contract}, nil 2624 } 2625 2626 // NewOwnableFilterer creates a new log filterer instance of Ownable, bound to a specific deployed contract. 2627 func NewOwnableFilterer(address common.Address, filterer bind.ContractFilterer) (*OwnableFilterer, error) { 2628 contract, err := bindOwnable(address, nil, nil, filterer) 2629 if err != nil { 2630 return nil, err 2631 } 2632 return &OwnableFilterer{contract: contract}, nil 2633 } 2634 2635 // bindOwnable binds a generic wrapper to an already deployed contract. 2636 func bindOwnable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 2637 parsed, err := abi.JSON(strings.NewReader(OwnableABI)) 2638 if err != nil { 2639 return nil, err 2640 } 2641 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 2642 } 2643 2644 // Call invokes the (constant) contract method with params as input values and 2645 // sets the output to result. The result type might be a single field for simple 2646 // returns, a slice of interfaces for anonymous returns and a struct for named 2647 // returns. 2648 func (_Ownable *OwnableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2649 return _Ownable.Contract.OwnableCaller.contract.Call(opts, result, method, params...) 2650 } 2651 2652 // Transfer initiates a plain transaction to move funds to the contract, calling 2653 // its default method if one is available. 2654 func (_Ownable *OwnableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2655 return _Ownable.Contract.OwnableTransactor.contract.Transfer(opts) 2656 } 2657 2658 // Transact invokes the (paid) contract method with params as input values. 2659 func (_Ownable *OwnableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2660 return _Ownable.Contract.OwnableTransactor.contract.Transact(opts, method, params...) 2661 } 2662 2663 // Call invokes the (constant) contract method with params as input values and 2664 // sets the output to result. The result type might be a single field for simple 2665 // returns, a slice of interfaces for anonymous returns and a struct for named 2666 // returns. 2667 func (_Ownable *OwnableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2668 return _Ownable.Contract.contract.Call(opts, result, method, params...) 2669 } 2670 2671 // Transfer initiates a plain transaction to move funds to the contract, calling 2672 // its default method if one is available. 2673 func (_Ownable *OwnableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2674 return _Ownable.Contract.contract.Transfer(opts) 2675 } 2676 2677 // Transact invokes the (paid) contract method with params as input values. 2678 func (_Ownable *OwnableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2679 return _Ownable.Contract.contract.Transact(opts, method, params...) 2680 } 2681 2682 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2683 // 2684 // Solidity: function owner() view returns(address) 2685 func (_Ownable *OwnableCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 2686 var out []interface{} 2687 err := _Ownable.contract.Call(opts, &out, "owner") 2688 2689 if err != nil { 2690 return *new(common.Address), err 2691 } 2692 2693 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 2694 2695 return out0, err 2696 2697 } 2698 2699 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2700 // 2701 // Solidity: function owner() view returns(address) 2702 func (_Ownable *OwnableSession) Owner() (common.Address, error) { 2703 return _Ownable.Contract.Owner(&_Ownable.CallOpts) 2704 } 2705 2706 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2707 // 2708 // Solidity: function owner() view returns(address) 2709 func (_Ownable *OwnableCallerSession) Owner() (common.Address, error) { 2710 return _Ownable.Contract.Owner(&_Ownable.CallOpts) 2711 } 2712 2713 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2714 // 2715 // Solidity: function transferOwnership(address newOwner) returns() 2716 func (_Ownable *OwnableTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 2717 return _Ownable.contract.Transact(opts, "transferOwnership", newOwner) 2718 } 2719 2720 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2721 // 2722 // Solidity: function transferOwnership(address newOwner) returns() 2723 func (_Ownable *OwnableSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 2724 return _Ownable.Contract.TransferOwnership(&_Ownable.TransactOpts, newOwner) 2725 } 2726 2727 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2728 // 2729 // Solidity: function transferOwnership(address newOwner) returns() 2730 func (_Ownable *OwnableTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 2731 return _Ownable.Contract.TransferOwnership(&_Ownable.TransactOpts, newOwner) 2732 } 2733 2734 // PausableABI is the input ABI used to generate the binding from. 2735 const PausableABI = "[{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Pause\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpause\",\"type\":\"event\"}]" 2736 2737 // PausableFuncSigs maps the 4-byte function signature to its string representation. 2738 var PausableFuncSigs = map[string]string{ 2739 "8da5cb5b": "owner()", 2740 "8456cb59": "pause()", 2741 "5c975abb": "paused()", 2742 "f2fde38b": "transferOwnership(address)", 2743 "3f4ba83a": "unpause()", 2744 } 2745 2746 // PausableBin is the compiled bytecode used for deploying new contracts. 2747 var PausableBin = "0x606060405260008054600160a060020a033316600160a860020a0319909116179055610300806100306000396000f30060606040526004361061006c5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633f4ba83a81146100715780635c975abb146100985780638456cb59146100ab5780638da5cb5b146100be578063f2fde38b146100ed575b600080fd5b341561007c57600080fd5b61008461010e565b604051901515815260200160405180910390f35b34156100a357600080fd5b6100846101a3565b34156100b657600080fd5b6100846101c4565b34156100c957600080fd5b6100d161026f565b604051600160a060020a03909116815260200160405180910390f35b34156100f857600080fd5b61010c600160a060020a036004351661027e565b005b6000805433600160a060020a0390811691161461012a57600080fd5b60005474010000000000000000000000000000000000000000900460ff16151561015357600080fd5b6000805474ff0000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a150600190565b60005474010000000000000000000000000000000000000000900460ff1681565b6000805433600160a060020a039081169116146101e057600080fd5b60005474010000000000000000000000000000000000000000900460ff161561020857600080fd5b6000805474ff00000000000000000000000000000000000000001916740100000000000000000000000000000000000000001790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a150600190565b600054600160a060020a031681565b60005433600160a060020a0390811691161461029957600080fd5b600160a060020a038116156102d1576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b505600a165627a7a723058208f4ca20f8ce8152a24279eb8d5af2f301cf0e4b10593703bf9d8493817a14b190029" 2748 2749 // DeployPausable deploys a new Ethereum contract, binding an instance of Pausable to it. 2750 func DeployPausable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Pausable, error) { 2751 parsed, err := abi.JSON(strings.NewReader(PausableABI)) 2752 if err != nil { 2753 return common.Address{}, nil, nil, err 2754 } 2755 2756 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(PausableBin), backend) 2757 if err != nil { 2758 return common.Address{}, nil, nil, err 2759 } 2760 return address, tx, &Pausable{PausableCaller: PausableCaller{contract: contract}, PausableTransactor: PausableTransactor{contract: contract}, PausableFilterer: PausableFilterer{contract: contract}}, nil 2761 } 2762 2763 // Pausable is an auto generated Go binding around an Ethereum contract. 2764 type Pausable struct { 2765 PausableCaller // Read-only binding to the contract 2766 PausableTransactor // Write-only binding to the contract 2767 PausableFilterer // Log filterer for contract events 2768 } 2769 2770 // PausableCaller is an auto generated read-only Go binding around an Ethereum contract. 2771 type PausableCaller struct { 2772 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2773 } 2774 2775 // PausableTransactor is an auto generated write-only Go binding around an Ethereum contract. 2776 type PausableTransactor struct { 2777 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2778 } 2779 2780 // PausableFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 2781 type PausableFilterer struct { 2782 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2783 } 2784 2785 // PausableSession is an auto generated Go binding around an Ethereum contract, 2786 // with pre-set call and transact options. 2787 type PausableSession struct { 2788 Contract *Pausable // Generic contract binding to set the session for 2789 CallOpts bind.CallOpts // Call options to use throughout this session 2790 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2791 } 2792 2793 // PausableCallerSession is an auto generated read-only Go binding around an Ethereum contract, 2794 // with pre-set call options. 2795 type PausableCallerSession struct { 2796 Contract *PausableCaller // Generic contract caller binding to set the session for 2797 CallOpts bind.CallOpts // Call options to use throughout this session 2798 } 2799 2800 // PausableTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 2801 // with pre-set transact options. 2802 type PausableTransactorSession struct { 2803 Contract *PausableTransactor // Generic contract transactor binding to set the session for 2804 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2805 } 2806 2807 // PausableRaw is an auto generated low-level Go binding around an Ethereum contract. 2808 type PausableRaw struct { 2809 Contract *Pausable // Generic contract binding to access the raw methods on 2810 } 2811 2812 // PausableCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 2813 type PausableCallerRaw struct { 2814 Contract *PausableCaller // Generic read-only contract binding to access the raw methods on 2815 } 2816 2817 // PausableTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 2818 type PausableTransactorRaw struct { 2819 Contract *PausableTransactor // Generic write-only contract binding to access the raw methods on 2820 } 2821 2822 // NewPausable creates a new instance of Pausable, bound to a specific deployed contract. 2823 func NewPausable(address common.Address, backend bind.ContractBackend) (*Pausable, error) { 2824 contract, err := bindPausable(address, backend, backend, backend) 2825 if err != nil { 2826 return nil, err 2827 } 2828 return &Pausable{PausableCaller: PausableCaller{contract: contract}, PausableTransactor: PausableTransactor{contract: contract}, PausableFilterer: PausableFilterer{contract: contract}}, nil 2829 } 2830 2831 // NewPausableCaller creates a new read-only instance of Pausable, bound to a specific deployed contract. 2832 func NewPausableCaller(address common.Address, caller bind.ContractCaller) (*PausableCaller, error) { 2833 contract, err := bindPausable(address, caller, nil, nil) 2834 if err != nil { 2835 return nil, err 2836 } 2837 return &PausableCaller{contract: contract}, nil 2838 } 2839 2840 // NewPausableTransactor creates a new write-only instance of Pausable, bound to a specific deployed contract. 2841 func NewPausableTransactor(address common.Address, transactor bind.ContractTransactor) (*PausableTransactor, error) { 2842 contract, err := bindPausable(address, nil, transactor, nil) 2843 if err != nil { 2844 return nil, err 2845 } 2846 return &PausableTransactor{contract: contract}, nil 2847 } 2848 2849 // NewPausableFilterer creates a new log filterer instance of Pausable, bound to a specific deployed contract. 2850 func NewPausableFilterer(address common.Address, filterer bind.ContractFilterer) (*PausableFilterer, error) { 2851 contract, err := bindPausable(address, nil, nil, filterer) 2852 if err != nil { 2853 return nil, err 2854 } 2855 return &PausableFilterer{contract: contract}, nil 2856 } 2857 2858 // bindPausable binds a generic wrapper to an already deployed contract. 2859 func bindPausable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 2860 parsed, err := abi.JSON(strings.NewReader(PausableABI)) 2861 if err != nil { 2862 return nil, err 2863 } 2864 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 2865 } 2866 2867 // Call invokes the (constant) contract method with params as input values and 2868 // sets the output to result. The result type might be a single field for simple 2869 // returns, a slice of interfaces for anonymous returns and a struct for named 2870 // returns. 2871 func (_Pausable *PausableRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2872 return _Pausable.Contract.PausableCaller.contract.Call(opts, result, method, params...) 2873 } 2874 2875 // Transfer initiates a plain transaction to move funds to the contract, calling 2876 // its default method if one is available. 2877 func (_Pausable *PausableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2878 return _Pausable.Contract.PausableTransactor.contract.Transfer(opts) 2879 } 2880 2881 // Transact invokes the (paid) contract method with params as input values. 2882 func (_Pausable *PausableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2883 return _Pausable.Contract.PausableTransactor.contract.Transact(opts, method, params...) 2884 } 2885 2886 // Call invokes the (constant) contract method with params as input values and 2887 // sets the output to result. The result type might be a single field for simple 2888 // returns, a slice of interfaces for anonymous returns and a struct for named 2889 // returns. 2890 func (_Pausable *PausableCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 2891 return _Pausable.Contract.contract.Call(opts, result, method, params...) 2892 } 2893 2894 // Transfer initiates a plain transaction to move funds to the contract, calling 2895 // its default method if one is available. 2896 func (_Pausable *PausableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 2897 return _Pausable.Contract.contract.Transfer(opts) 2898 } 2899 2900 // Transact invokes the (paid) contract method with params as input values. 2901 func (_Pausable *PausableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 2902 return _Pausable.Contract.contract.Transact(opts, method, params...) 2903 } 2904 2905 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2906 // 2907 // Solidity: function owner() view returns(address) 2908 func (_Pausable *PausableCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 2909 var out []interface{} 2910 err := _Pausable.contract.Call(opts, &out, "owner") 2911 2912 if err != nil { 2913 return *new(common.Address), err 2914 } 2915 2916 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 2917 2918 return out0, err 2919 2920 } 2921 2922 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2923 // 2924 // Solidity: function owner() view returns(address) 2925 func (_Pausable *PausableSession) Owner() (common.Address, error) { 2926 return _Pausable.Contract.Owner(&_Pausable.CallOpts) 2927 } 2928 2929 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2930 // 2931 // Solidity: function owner() view returns(address) 2932 func (_Pausable *PausableCallerSession) Owner() (common.Address, error) { 2933 return _Pausable.Contract.Owner(&_Pausable.CallOpts) 2934 } 2935 2936 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 2937 // 2938 // Solidity: function paused() view returns(bool) 2939 func (_Pausable *PausableCaller) Paused(opts *bind.CallOpts) (bool, error) { 2940 var out []interface{} 2941 err := _Pausable.contract.Call(opts, &out, "paused") 2942 2943 if err != nil { 2944 return *new(bool), err 2945 } 2946 2947 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 2948 2949 return out0, err 2950 2951 } 2952 2953 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 2954 // 2955 // Solidity: function paused() view returns(bool) 2956 func (_Pausable *PausableSession) Paused() (bool, error) { 2957 return _Pausable.Contract.Paused(&_Pausable.CallOpts) 2958 } 2959 2960 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 2961 // 2962 // Solidity: function paused() view returns(bool) 2963 func (_Pausable *PausableCallerSession) Paused() (bool, error) { 2964 return _Pausable.Contract.Paused(&_Pausable.CallOpts) 2965 } 2966 2967 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 2968 // 2969 // Solidity: function pause() returns(bool) 2970 func (_Pausable *PausableTransactor) Pause(opts *bind.TransactOpts) (*types.Transaction, error) { 2971 return _Pausable.contract.Transact(opts, "pause") 2972 } 2973 2974 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 2975 // 2976 // Solidity: function pause() returns(bool) 2977 func (_Pausable *PausableSession) Pause() (*types.Transaction, error) { 2978 return _Pausable.Contract.Pause(&_Pausable.TransactOpts) 2979 } 2980 2981 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 2982 // 2983 // Solidity: function pause() returns(bool) 2984 func (_Pausable *PausableTransactorSession) Pause() (*types.Transaction, error) { 2985 return _Pausable.Contract.Pause(&_Pausable.TransactOpts) 2986 } 2987 2988 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2989 // 2990 // Solidity: function transferOwnership(address newOwner) returns() 2991 func (_Pausable *PausableTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 2992 return _Pausable.contract.Transact(opts, "transferOwnership", newOwner) 2993 } 2994 2995 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2996 // 2997 // Solidity: function transferOwnership(address newOwner) returns() 2998 func (_Pausable *PausableSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 2999 return _Pausable.Contract.TransferOwnership(&_Pausable.TransactOpts, newOwner) 3000 } 3001 3002 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3003 // 3004 // Solidity: function transferOwnership(address newOwner) returns() 3005 func (_Pausable *PausableTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 3006 return _Pausable.Contract.TransferOwnership(&_Pausable.TransactOpts, newOwner) 3007 } 3008 3009 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3010 // 3011 // Solidity: function unpause() returns(bool) 3012 func (_Pausable *PausableTransactor) Unpause(opts *bind.TransactOpts) (*types.Transaction, error) { 3013 return _Pausable.contract.Transact(opts, "unpause") 3014 } 3015 3016 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3017 // 3018 // Solidity: function unpause() returns(bool) 3019 func (_Pausable *PausableSession) Unpause() (*types.Transaction, error) { 3020 return _Pausable.Contract.Unpause(&_Pausable.TransactOpts) 3021 } 3022 3023 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3024 // 3025 // Solidity: function unpause() returns(bool) 3026 func (_Pausable *PausableTransactorSession) Unpause() (*types.Transaction, error) { 3027 return _Pausable.Contract.Unpause(&_Pausable.TransactOpts) 3028 } 3029 3030 // PausablePauseIterator is returned from FilterPause and is used to iterate over the raw logs and unpacked data for Pause events raised by the Pausable contract. 3031 type PausablePauseIterator struct { 3032 Event *PausablePause // Event containing the contract specifics and raw log 3033 3034 contract *bind.BoundContract // Generic contract to use for unpacking event data 3035 event string // Event name to use for unpacking event data 3036 3037 logs chan types.Log // Log channel receiving the found contract events 3038 sub ethereum.Subscription // Subscription for errors, completion and termination 3039 done bool // Whether the subscription completed delivering logs 3040 fail error // Occurred error to stop iteration 3041 } 3042 3043 // Next advances the iterator to the subsequent event, returning whether there 3044 // are any more events found. In case of a retrieval or parsing error, false is 3045 // returned and Error() can be queried for the exact failure. 3046 func (it *PausablePauseIterator) Next() bool { 3047 // If the iterator failed, stop iterating 3048 if it.fail != nil { 3049 return false 3050 } 3051 // If the iterator completed, deliver directly whatever's available 3052 if it.done { 3053 select { 3054 case log := <-it.logs: 3055 it.Event = new(PausablePause) 3056 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3057 it.fail = err 3058 return false 3059 } 3060 it.Event.Raw = log 3061 return true 3062 3063 default: 3064 return false 3065 } 3066 } 3067 // Iterator still in progress, wait for either a data or an error event 3068 select { 3069 case log := <-it.logs: 3070 it.Event = new(PausablePause) 3071 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3072 it.fail = err 3073 return false 3074 } 3075 it.Event.Raw = log 3076 return true 3077 3078 case err := <-it.sub.Err(): 3079 it.done = true 3080 it.fail = err 3081 return it.Next() 3082 } 3083 } 3084 3085 // Error returns any retrieval or parsing error occurred during filtering. 3086 func (it *PausablePauseIterator) Error() error { 3087 return it.fail 3088 } 3089 3090 // Close terminates the iteration process, releasing any pending underlying 3091 // resources. 3092 func (it *PausablePauseIterator) Close() error { 3093 it.sub.Unsubscribe() 3094 return nil 3095 } 3096 3097 // PausablePause represents a Pause event raised by the Pausable contract. 3098 type PausablePause struct { 3099 Raw types.Log // Blockchain specific contextual infos 3100 } 3101 3102 // FilterPause is a free log retrieval operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 3103 // 3104 // Solidity: event Pause() 3105 func (_Pausable *PausableFilterer) FilterPause(opts *bind.FilterOpts) (*PausablePauseIterator, error) { 3106 3107 logs, sub, err := _Pausable.contract.FilterLogs(opts, "Pause") 3108 if err != nil { 3109 return nil, err 3110 } 3111 return &PausablePauseIterator{contract: _Pausable.contract, event: "Pause", logs: logs, sub: sub}, nil 3112 } 3113 3114 // WatchPause is a free log subscription operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 3115 // 3116 // Solidity: event Pause() 3117 func (_Pausable *PausableFilterer) WatchPause(opts *bind.WatchOpts, sink chan<- *PausablePause) (event.Subscription, error) { 3118 3119 logs, sub, err := _Pausable.contract.WatchLogs(opts, "Pause") 3120 if err != nil { 3121 return nil, err 3122 } 3123 return event.NewSubscription(func(quit <-chan struct{}) error { 3124 defer sub.Unsubscribe() 3125 for { 3126 select { 3127 case log := <-logs: 3128 // New log arrived, parse the event and forward to the user 3129 event := new(PausablePause) 3130 if err := _Pausable.contract.UnpackLog(event, "Pause", log); err != nil { 3131 return err 3132 } 3133 event.Raw = log 3134 3135 select { 3136 case sink <- event: 3137 case err := <-sub.Err(): 3138 return err 3139 case <-quit: 3140 return nil 3141 } 3142 case err := <-sub.Err(): 3143 return err 3144 case <-quit: 3145 return nil 3146 } 3147 } 3148 }), nil 3149 } 3150 3151 // ParsePause is a log parse operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 3152 // 3153 // Solidity: event Pause() 3154 func (_Pausable *PausableFilterer) ParsePause(log types.Log) (*PausablePause, error) { 3155 event := new(PausablePause) 3156 if err := _Pausable.contract.UnpackLog(event, "Pause", log); err != nil { 3157 return nil, err 3158 } 3159 event.Raw = log 3160 return event, nil 3161 } 3162 3163 // PausableUnpauseIterator is returned from FilterUnpause and is used to iterate over the raw logs and unpacked data for Unpause events raised by the Pausable contract. 3164 type PausableUnpauseIterator struct { 3165 Event *PausableUnpause // Event containing the contract specifics and raw log 3166 3167 contract *bind.BoundContract // Generic contract to use for unpacking event data 3168 event string // Event name to use for unpacking event data 3169 3170 logs chan types.Log // Log channel receiving the found contract events 3171 sub ethereum.Subscription // Subscription for errors, completion and termination 3172 done bool // Whether the subscription completed delivering logs 3173 fail error // Occurred error to stop iteration 3174 } 3175 3176 // Next advances the iterator to the subsequent event, returning whether there 3177 // are any more events found. In case of a retrieval or parsing error, false is 3178 // returned and Error() can be queried for the exact failure. 3179 func (it *PausableUnpauseIterator) Next() bool { 3180 // If the iterator failed, stop iterating 3181 if it.fail != nil { 3182 return false 3183 } 3184 // If the iterator completed, deliver directly whatever's available 3185 if it.done { 3186 select { 3187 case log := <-it.logs: 3188 it.Event = new(PausableUnpause) 3189 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3190 it.fail = err 3191 return false 3192 } 3193 it.Event.Raw = log 3194 return true 3195 3196 default: 3197 return false 3198 } 3199 } 3200 // Iterator still in progress, wait for either a data or an error event 3201 select { 3202 case log := <-it.logs: 3203 it.Event = new(PausableUnpause) 3204 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3205 it.fail = err 3206 return false 3207 } 3208 it.Event.Raw = log 3209 return true 3210 3211 case err := <-it.sub.Err(): 3212 it.done = true 3213 it.fail = err 3214 return it.Next() 3215 } 3216 } 3217 3218 // Error returns any retrieval or parsing error occurred during filtering. 3219 func (it *PausableUnpauseIterator) Error() error { 3220 return it.fail 3221 } 3222 3223 // Close terminates the iteration process, releasing any pending underlying 3224 // resources. 3225 func (it *PausableUnpauseIterator) Close() error { 3226 it.sub.Unsubscribe() 3227 return nil 3228 } 3229 3230 // PausableUnpause represents a Unpause event raised by the Pausable contract. 3231 type PausableUnpause struct { 3232 Raw types.Log // Blockchain specific contextual infos 3233 } 3234 3235 // FilterUnpause is a free log retrieval operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 3236 // 3237 // Solidity: event Unpause() 3238 func (_Pausable *PausableFilterer) FilterUnpause(opts *bind.FilterOpts) (*PausableUnpauseIterator, error) { 3239 3240 logs, sub, err := _Pausable.contract.FilterLogs(opts, "Unpause") 3241 if err != nil { 3242 return nil, err 3243 } 3244 return &PausableUnpauseIterator{contract: _Pausable.contract, event: "Unpause", logs: logs, sub: sub}, nil 3245 } 3246 3247 // WatchUnpause is a free log subscription operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 3248 // 3249 // Solidity: event Unpause() 3250 func (_Pausable *PausableFilterer) WatchUnpause(opts *bind.WatchOpts, sink chan<- *PausableUnpause) (event.Subscription, error) { 3251 3252 logs, sub, err := _Pausable.contract.WatchLogs(opts, "Unpause") 3253 if err != nil { 3254 return nil, err 3255 } 3256 return event.NewSubscription(func(quit <-chan struct{}) error { 3257 defer sub.Unsubscribe() 3258 for { 3259 select { 3260 case log := <-logs: 3261 // New log arrived, parse the event and forward to the user 3262 event := new(PausableUnpause) 3263 if err := _Pausable.contract.UnpackLog(event, "Unpause", log); err != nil { 3264 return err 3265 } 3266 event.Raw = log 3267 3268 select { 3269 case sink <- event: 3270 case err := <-sub.Err(): 3271 return err 3272 case <-quit: 3273 return nil 3274 } 3275 case err := <-sub.Err(): 3276 return err 3277 case <-quit: 3278 return nil 3279 } 3280 } 3281 }), nil 3282 } 3283 3284 // ParseUnpause is a log parse operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 3285 // 3286 // Solidity: event Unpause() 3287 func (_Pausable *PausableFilterer) ParseUnpause(log types.Log) (*PausableUnpause, error) { 3288 event := new(PausableUnpause) 3289 if err := _Pausable.contract.UnpackLog(event, "Unpause", log); err != nil { 3290 return nil, err 3291 } 3292 event.Raw = log 3293 return event, nil 3294 } 3295 3296 // SaleClockAuctionABI is the input ABI used to generate the binding from. 3297 const SaleClockAuctionABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_startingPrice\",\"type\":\"uint256\"},{\"name\":\"_endingPrice\",\"type\":\"uint256\"},{\"name\":\"_duration\",\"type\":\"uint256\"},{\"name\":\"_seller\",\"type\":\"address\"}],\"name\":\"createAuction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"unpause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"bid\",\"outputs\":[],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"lastGen0SalePrices\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"withdrawBalance\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"getAuction\",\"outputs\":[{\"name\":\"seller\",\"type\":\"address\"},{\"name\":\"startingPrice\",\"type\":\"uint256\"},{\"name\":\"endingPrice\",\"type\":\"uint256\"},{\"name\":\"duration\",\"type\":\"uint256\"},{\"name\":\"startedAt\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"ownerCut\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"pause\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isSaleClockAuction\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"cancelAuctionWhenPaused\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"gen0SaleCount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"cancelAuction\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_tokenId\",\"type\":\"uint256\"}],\"name\":\"getCurrentPrice\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"nonFungibleContract\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"averageGen0SalePrice\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_nftAddr\",\"type\":\"address\"},{\"name\":\"_cut\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"startingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"endingPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"duration\",\"type\":\"uint256\"}],\"name\":\"AuctionCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"totalPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"winner\",\"type\":\"address\"}],\"name\":\"AuctionSuccessful\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"AuctionCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Pause\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"Unpause\",\"type\":\"event\"}]" 3298 3299 // SaleClockAuctionFuncSigs maps the 4-byte function signature to its string representation. 3300 var SaleClockAuctionFuncSigs = map[string]string{ 3301 "eac9d94c": "averageGen0SalePrice()", 3302 "454a2ab3": "bid(uint256)", 3303 "96b5a755": "cancelAuction(uint256)", 3304 "878eb368": "cancelAuctionWhenPaused(uint256)", 3305 "27ebe40a": "createAuction(uint256,uint256,uint256,uint256,address)", 3306 "8a98a9cc": "gen0SaleCount()", 3307 "78bd7935": "getAuction(uint256)", 3308 "c55d0f56": "getCurrentPrice(uint256)", 3309 "85b86188": "isSaleClockAuction()", 3310 "484eccb4": "lastGen0SalePrices(uint256)", 3311 "dd1b7a0f": "nonFungibleContract()", 3312 "8da5cb5b": "owner()", 3313 "83b5ff8b": "ownerCut()", 3314 "8456cb59": "pause()", 3315 "5c975abb": "paused()", 3316 "f2fde38b": "transferOwnership(address)", 3317 "3f4ba83a": "unpause()", 3318 "5fd8c710": "withdrawBalance()", 3319 } 3320 3321 // SaleClockAuctionBin is the compiled bytecode used for deploying new contracts. 3322 var SaleClockAuctionBin = "0x60606040526000805460a060020a60ff02191690556004805460ff19166001179055341561002c57600080fd5b604051604080610ef6833981016040528080519190602001805160008054600160a060020a03191633600160a060020a0316178155909250839150829061271082111561007857600080fd5b50600281905581600160a060020a0381166301ffc9a77f9a20483d000000000000000000000000000000000000000000000000000000006040517c010000000000000000000000000000000000000000000000000000000063ffffffff84160281527fffffffff000000000000000000000000000000000000000000000000000000009091166004820152602401602060405180830381600087803b151561011f57600080fd5b5af1151561012c57600080fd5b50505060405180519050151561014157600080fd5b60018054600160a060020a03909216600160a060020a031990921691909117905550505050610d81806101756000396000f3006060604052600436106100e25763ffffffff60e060020a60003504166327ebe40a81146100e75780633f4ba83a14610114578063454a2ab31461013b578063484eccb4146101465780635c975abb1461016e5780635fd8c7101461018157806378bd79351461019457806383b5ff8b146101e55780638456cb59146101f857806385b861881461020b578063878eb3681461021e5780638a98a9cc146102345780638da5cb5b1461024757806396b5a75514610276578063c55d0f561461028c578063dd1b7a0f146102a2578063eac9d94c146102b5578063f2fde38b146102c8575b600080fd5b34156100f257600080fd5b610112600435602435604435606435600160a060020a03608435166102e7565b005b341561011f57600080fd5b6101276103bf565b604051901515815260200160405180910390f35b610112600435610443565b341561015157600080fd5b61015c6004356104ad565b60405190815260200160405180910390f35b341561017957600080fd5b6101276104c1565b341561018c57600080fd5b6101126104d1565b341561019f57600080fd5b6101aa600435610547565b604051600160a060020a03909516855260208501939093526040808501929092526060840152608083019190915260a0909101905180910390f35b34156101f057600080fd5b61015c6105d4565b341561020357600080fd5b6101276105da565b341561021657600080fd5b610127610663565b341561022957600080fd5b61011260043561066c565b341561023f57600080fd5b61015c6106dd565b341561025257600080fd5b61025a6106e3565b604051600160a060020a03909116815260200160405180910390f35b341561028157600080fd5b6101126004356106f2565b341561029757600080fd5b61015c60043561073b565b34156102ad57600080fd5b61025a61076d565b34156102c057600080fd5b61015c61077c565b34156102d357600080fd5b610112600160a060020a03600435166107b0565b6102ef610d27565b6001608060020a038516851461030457600080fd5b6001608060020a038416841461031957600080fd5b67ffffffffffffffff8316831461032f57600080fd5b60015433600160a060020a0390811691161461034a57600080fd5b6103548287610806565b60a06040519081016040528083600160a060020a03168152602001866001608060020a03168152602001856001608060020a031681526020018467ffffffffffffffff1681526020014267ffffffffffffffff1681525090506103b7868261087d565b505050505050565b6000805433600160a060020a039081169116146103db57600080fd5b60005460a060020a900460ff1615156103f357600080fd5b6000805474ff0000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a150600190565b600081815260036020526040812054600160a060020a0316906104668334610a18565b90506104723384610b49565b600154600160a060020a03838116911614156104a857600580548291600691066005811061049c57fe5b01556005805460010190555b505050565b600681600581106104ba57fe5b0154905081565b60005460a060020a900460ff1681565b60015460008054600160a060020a039283169233811691161480610506575081600160a060020a031633600160a060020a0316145b151561051157600080fd5b81600160a060020a03166108fc30600160a060020a0316319081150290604051600060405180830381858888f150505050505050565b6000818152600360205260408120819081908190819061056681610b9f565b151561057157600080fd5b80546001820154600290920154600160a060020a03909116986001608060020a038084169950700100000000000000000000000000000000909304909216965067ffffffffffffffff808216965068010000000000000000909104169350915050565b60025481565b6000805433600160a060020a039081169116146105f657600080fd5b60005460a060020a900460ff161561060d57600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a150600190565b60045460ff1681565b6000805460a060020a900460ff16151561068557600080fd5b60005433600160a060020a039081169116146106a057600080fd5b5060008181526003602052604090206106b881610b9f565b15156106c357600080fd5b80546106d9908390600160a060020a0316610bc0565b5050565b60055481565b600054600160a060020a031681565b60008181526003602052604081209061070a82610b9f565b151561071557600080fd5b508054600160a060020a03908116903316811461073157600080fd5b6104a88382610bc0565b600081815260036020526040812061075281610b9f565b151561075d57600080fd5b61076681610c0a565b9392505050565b600154600160a060020a031681565b600080805b60058110156107a6576006816005811061079757fe5b01549190910190600101610781565b5060059004919050565b60005433600160a060020a039081169116146107cb57600080fd5b600160a060020a03811615610803576000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600154600160a060020a03166323b872dd83308460405160e060020a63ffffffff8616028152600160a060020a0393841660048201529190921660248201526044810191909152606401600060405180830381600087803b151561086957600080fd5b5af1151561087657600080fd5b5050505050565b603c816060015167ffffffffffffffff16101561089957600080fd5b600082815260036020526040902081908151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039190911617815560208201516001820180546fffffffffffffffffffffffffffffffff19166001608060020a039290921691909117905560408201516001820180546001608060020a03928316700100000000000000000000000000000000029216919091179055606082015160028201805467ffffffffffffffff191667ffffffffffffffff9290921691909117905560808201516002909101805467ffffffffffffffff9290921668010000000000000000026fffffffffffffffff000000000000000019909216919091179055507fa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba78260208301516001608060020a031683604001516001608060020a0316846060015167ffffffffffffffff166040518085815260200184815260200183815260200182815260200194505050505060405180910390a15050565b60008281526003602052604081208180808080610a3486610b9f565b1515610a3f57600080fd5b610a4886610c0a565b945084881015610a5757600080fd5b8554600160a060020a03169350610a6d89610c91565b6000851115610ab757610a7f85610cde565b92508285039150600160a060020a03841682156108fc0283604051600060405180830381858888f193505050501515610ab757600080fd5b50838703600160a060020a03331681156108fc0282604051600060405180830381858888f193505050501515610aec57600080fd5b7f4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd28986336040519283526020830191909152600160a060020a03166040808301919091526060909101905180910390a15092979650505050505050565b600154600160a060020a031663a9059cbb838360405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b151561086957600080fd5b6002015460006801000000000000000090910467ffffffffffffffff161190565b610bc982610c91565b610bd38183610b49565b7f2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df8260405190815260200160405180910390a15050565b6002810154600090819068010000000000000000900467ffffffffffffffff16421115610c505750600282015468010000000000000000900467ffffffffffffffff1642035b60018301546002840154610766916001608060020a0380821692700100000000000000000000000000000000909204169067ffffffffffffffff1684610cea565b6000908152600360205260408120805473ffffffffffffffffffffffffffffffffffffffff19168155600181019190915560020180546fffffffffffffffffffffffffffffffff19169055565b60025461271091020490565b6000808080858510610cfe57869350610d1c565b878703925085858402811515610d1057fe5b05915081880190508093505b505050949350505050565b60a06040519081016040908152600080835260208301819052908201819052606082018190526080820152905600a165627a7a7230582033b714da41785b626c601bfc003f79c83f61e8b703ffe45458694d13d1f622d70029" 3323 3324 // DeploySaleClockAuction deploys a new Ethereum contract, binding an instance of SaleClockAuction to it. 3325 func DeploySaleClockAuction(auth *bind.TransactOpts, backend bind.ContractBackend, _nftAddr common.Address, _cut *big.Int) (common.Address, *types.Transaction, *SaleClockAuction, error) { 3326 parsed, err := abi.JSON(strings.NewReader(SaleClockAuctionABI)) 3327 if err != nil { 3328 return common.Address{}, nil, nil, err 3329 } 3330 3331 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(SaleClockAuctionBin), backend, _nftAddr, _cut) 3332 if err != nil { 3333 return common.Address{}, nil, nil, err 3334 } 3335 return address, tx, &SaleClockAuction{SaleClockAuctionCaller: SaleClockAuctionCaller{contract: contract}, SaleClockAuctionTransactor: SaleClockAuctionTransactor{contract: contract}, SaleClockAuctionFilterer: SaleClockAuctionFilterer{contract: contract}}, nil 3336 } 3337 3338 // SaleClockAuction is an auto generated Go binding around an Ethereum contract. 3339 type SaleClockAuction struct { 3340 SaleClockAuctionCaller // Read-only binding to the contract 3341 SaleClockAuctionTransactor // Write-only binding to the contract 3342 SaleClockAuctionFilterer // Log filterer for contract events 3343 } 3344 3345 // SaleClockAuctionCaller is an auto generated read-only Go binding around an Ethereum contract. 3346 type SaleClockAuctionCaller struct { 3347 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3348 } 3349 3350 // SaleClockAuctionTransactor is an auto generated write-only Go binding around an Ethereum contract. 3351 type SaleClockAuctionTransactor struct { 3352 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3353 } 3354 3355 // SaleClockAuctionFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 3356 type SaleClockAuctionFilterer struct { 3357 contract *bind.BoundContract // Generic contract wrapper for the low level calls 3358 } 3359 3360 // SaleClockAuctionSession is an auto generated Go binding around an Ethereum contract, 3361 // with pre-set call and transact options. 3362 type SaleClockAuctionSession struct { 3363 Contract *SaleClockAuction // Generic contract binding to set the session for 3364 CallOpts bind.CallOpts // Call options to use throughout this session 3365 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 3366 } 3367 3368 // SaleClockAuctionCallerSession is an auto generated read-only Go binding around an Ethereum contract, 3369 // with pre-set call options. 3370 type SaleClockAuctionCallerSession struct { 3371 Contract *SaleClockAuctionCaller // Generic contract caller binding to set the session for 3372 CallOpts bind.CallOpts // Call options to use throughout this session 3373 } 3374 3375 // SaleClockAuctionTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 3376 // with pre-set transact options. 3377 type SaleClockAuctionTransactorSession struct { 3378 Contract *SaleClockAuctionTransactor // Generic contract transactor binding to set the session for 3379 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 3380 } 3381 3382 // SaleClockAuctionRaw is an auto generated low-level Go binding around an Ethereum contract. 3383 type SaleClockAuctionRaw struct { 3384 Contract *SaleClockAuction // Generic contract binding to access the raw methods on 3385 } 3386 3387 // SaleClockAuctionCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 3388 type SaleClockAuctionCallerRaw struct { 3389 Contract *SaleClockAuctionCaller // Generic read-only contract binding to access the raw methods on 3390 } 3391 3392 // SaleClockAuctionTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 3393 type SaleClockAuctionTransactorRaw struct { 3394 Contract *SaleClockAuctionTransactor // Generic write-only contract binding to access the raw methods on 3395 } 3396 3397 // NewSaleClockAuction creates a new instance of SaleClockAuction, bound to a specific deployed contract. 3398 func NewSaleClockAuction(address common.Address, backend bind.ContractBackend) (*SaleClockAuction, error) { 3399 contract, err := bindSaleClockAuction(address, backend, backend, backend) 3400 if err != nil { 3401 return nil, err 3402 } 3403 return &SaleClockAuction{SaleClockAuctionCaller: SaleClockAuctionCaller{contract: contract}, SaleClockAuctionTransactor: SaleClockAuctionTransactor{contract: contract}, SaleClockAuctionFilterer: SaleClockAuctionFilterer{contract: contract}}, nil 3404 } 3405 3406 // NewSaleClockAuctionCaller creates a new read-only instance of SaleClockAuction, bound to a specific deployed contract. 3407 func NewSaleClockAuctionCaller(address common.Address, caller bind.ContractCaller) (*SaleClockAuctionCaller, error) { 3408 contract, err := bindSaleClockAuction(address, caller, nil, nil) 3409 if err != nil { 3410 return nil, err 3411 } 3412 return &SaleClockAuctionCaller{contract: contract}, nil 3413 } 3414 3415 // NewSaleClockAuctionTransactor creates a new write-only instance of SaleClockAuction, bound to a specific deployed contract. 3416 func NewSaleClockAuctionTransactor(address common.Address, transactor bind.ContractTransactor) (*SaleClockAuctionTransactor, error) { 3417 contract, err := bindSaleClockAuction(address, nil, transactor, nil) 3418 if err != nil { 3419 return nil, err 3420 } 3421 return &SaleClockAuctionTransactor{contract: contract}, nil 3422 } 3423 3424 // NewSaleClockAuctionFilterer creates a new log filterer instance of SaleClockAuction, bound to a specific deployed contract. 3425 func NewSaleClockAuctionFilterer(address common.Address, filterer bind.ContractFilterer) (*SaleClockAuctionFilterer, error) { 3426 contract, err := bindSaleClockAuction(address, nil, nil, filterer) 3427 if err != nil { 3428 return nil, err 3429 } 3430 return &SaleClockAuctionFilterer{contract: contract}, nil 3431 } 3432 3433 // bindSaleClockAuction binds a generic wrapper to an already deployed contract. 3434 func bindSaleClockAuction(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 3435 parsed, err := abi.JSON(strings.NewReader(SaleClockAuctionABI)) 3436 if err != nil { 3437 return nil, err 3438 } 3439 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 3440 } 3441 3442 // Call invokes the (constant) contract method with params as input values and 3443 // sets the output to result. The result type might be a single field for simple 3444 // returns, a slice of interfaces for anonymous returns and a struct for named 3445 // returns. 3446 func (_SaleClockAuction *SaleClockAuctionRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 3447 return _SaleClockAuction.Contract.SaleClockAuctionCaller.contract.Call(opts, result, method, params...) 3448 } 3449 3450 // Transfer initiates a plain transaction to move funds to the contract, calling 3451 // its default method if one is available. 3452 func (_SaleClockAuction *SaleClockAuctionRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3453 return _SaleClockAuction.Contract.SaleClockAuctionTransactor.contract.Transfer(opts) 3454 } 3455 3456 // Transact invokes the (paid) contract method with params as input values. 3457 func (_SaleClockAuction *SaleClockAuctionRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3458 return _SaleClockAuction.Contract.SaleClockAuctionTransactor.contract.Transact(opts, method, params...) 3459 } 3460 3461 // Call invokes the (constant) contract method with params as input values and 3462 // sets the output to result. The result type might be a single field for simple 3463 // returns, a slice of interfaces for anonymous returns and a struct for named 3464 // returns. 3465 func (_SaleClockAuction *SaleClockAuctionCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 3466 return _SaleClockAuction.Contract.contract.Call(opts, result, method, params...) 3467 } 3468 3469 // Transfer initiates a plain transaction to move funds to the contract, calling 3470 // its default method if one is available. 3471 func (_SaleClockAuction *SaleClockAuctionTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3472 return _SaleClockAuction.Contract.contract.Transfer(opts) 3473 } 3474 3475 // Transact invokes the (paid) contract method with params as input values. 3476 func (_SaleClockAuction *SaleClockAuctionTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3477 return _SaleClockAuction.Contract.contract.Transact(opts, method, params...) 3478 } 3479 3480 // AverageGen0SalePrice is a free data retrieval call binding the contract method 0xeac9d94c. 3481 // 3482 // Solidity: function averageGen0SalePrice() view returns(uint256) 3483 func (_SaleClockAuction *SaleClockAuctionCaller) AverageGen0SalePrice(opts *bind.CallOpts) (*big.Int, error) { 3484 var out []interface{} 3485 err := _SaleClockAuction.contract.Call(opts, &out, "averageGen0SalePrice") 3486 3487 if err != nil { 3488 return *new(*big.Int), err 3489 } 3490 3491 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 3492 3493 return out0, err 3494 3495 } 3496 3497 // AverageGen0SalePrice is a free data retrieval call binding the contract method 0xeac9d94c. 3498 // 3499 // Solidity: function averageGen0SalePrice() view returns(uint256) 3500 func (_SaleClockAuction *SaleClockAuctionSession) AverageGen0SalePrice() (*big.Int, error) { 3501 return _SaleClockAuction.Contract.AverageGen0SalePrice(&_SaleClockAuction.CallOpts) 3502 } 3503 3504 // AverageGen0SalePrice is a free data retrieval call binding the contract method 0xeac9d94c. 3505 // 3506 // Solidity: function averageGen0SalePrice() view returns(uint256) 3507 func (_SaleClockAuction *SaleClockAuctionCallerSession) AverageGen0SalePrice() (*big.Int, error) { 3508 return _SaleClockAuction.Contract.AverageGen0SalePrice(&_SaleClockAuction.CallOpts) 3509 } 3510 3511 // Gen0SaleCount is a free data retrieval call binding the contract method 0x8a98a9cc. 3512 // 3513 // Solidity: function gen0SaleCount() view returns(uint256) 3514 func (_SaleClockAuction *SaleClockAuctionCaller) Gen0SaleCount(opts *bind.CallOpts) (*big.Int, error) { 3515 var out []interface{} 3516 err := _SaleClockAuction.contract.Call(opts, &out, "gen0SaleCount") 3517 3518 if err != nil { 3519 return *new(*big.Int), err 3520 } 3521 3522 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 3523 3524 return out0, err 3525 3526 } 3527 3528 // Gen0SaleCount is a free data retrieval call binding the contract method 0x8a98a9cc. 3529 // 3530 // Solidity: function gen0SaleCount() view returns(uint256) 3531 func (_SaleClockAuction *SaleClockAuctionSession) Gen0SaleCount() (*big.Int, error) { 3532 return _SaleClockAuction.Contract.Gen0SaleCount(&_SaleClockAuction.CallOpts) 3533 } 3534 3535 // Gen0SaleCount is a free data retrieval call binding the contract method 0x8a98a9cc. 3536 // 3537 // Solidity: function gen0SaleCount() view returns(uint256) 3538 func (_SaleClockAuction *SaleClockAuctionCallerSession) Gen0SaleCount() (*big.Int, error) { 3539 return _SaleClockAuction.Contract.Gen0SaleCount(&_SaleClockAuction.CallOpts) 3540 } 3541 3542 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 3543 // 3544 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 3545 func (_SaleClockAuction *SaleClockAuctionCaller) GetAuction(opts *bind.CallOpts, _tokenId *big.Int) (struct { 3546 Seller common.Address 3547 StartingPrice *big.Int 3548 EndingPrice *big.Int 3549 Duration *big.Int 3550 StartedAt *big.Int 3551 }, error) { 3552 var out []interface{} 3553 err := _SaleClockAuction.contract.Call(opts, &out, "getAuction", _tokenId) 3554 3555 outstruct := new(struct { 3556 Seller common.Address 3557 StartingPrice *big.Int 3558 EndingPrice *big.Int 3559 Duration *big.Int 3560 StartedAt *big.Int 3561 }) 3562 3563 outstruct.Seller = out[0].(common.Address) 3564 outstruct.StartingPrice = out[1].(*big.Int) 3565 outstruct.EndingPrice = out[2].(*big.Int) 3566 outstruct.Duration = out[3].(*big.Int) 3567 outstruct.StartedAt = out[4].(*big.Int) 3568 3569 return *outstruct, err 3570 3571 } 3572 3573 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 3574 // 3575 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 3576 func (_SaleClockAuction *SaleClockAuctionSession) GetAuction(_tokenId *big.Int) (struct { 3577 Seller common.Address 3578 StartingPrice *big.Int 3579 EndingPrice *big.Int 3580 Duration *big.Int 3581 StartedAt *big.Int 3582 }, error) { 3583 return _SaleClockAuction.Contract.GetAuction(&_SaleClockAuction.CallOpts, _tokenId) 3584 } 3585 3586 // GetAuction is a free data retrieval call binding the contract method 0x78bd7935. 3587 // 3588 // Solidity: function getAuction(uint256 _tokenId) view returns(address seller, uint256 startingPrice, uint256 endingPrice, uint256 duration, uint256 startedAt) 3589 func (_SaleClockAuction *SaleClockAuctionCallerSession) GetAuction(_tokenId *big.Int) (struct { 3590 Seller common.Address 3591 StartingPrice *big.Int 3592 EndingPrice *big.Int 3593 Duration *big.Int 3594 StartedAt *big.Int 3595 }, error) { 3596 return _SaleClockAuction.Contract.GetAuction(&_SaleClockAuction.CallOpts, _tokenId) 3597 } 3598 3599 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 3600 // 3601 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 3602 func (_SaleClockAuction *SaleClockAuctionCaller) GetCurrentPrice(opts *bind.CallOpts, _tokenId *big.Int) (*big.Int, error) { 3603 var out []interface{} 3604 err := _SaleClockAuction.contract.Call(opts, &out, "getCurrentPrice", _tokenId) 3605 3606 if err != nil { 3607 return *new(*big.Int), err 3608 } 3609 3610 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 3611 3612 return out0, err 3613 3614 } 3615 3616 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 3617 // 3618 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 3619 func (_SaleClockAuction *SaleClockAuctionSession) GetCurrentPrice(_tokenId *big.Int) (*big.Int, error) { 3620 return _SaleClockAuction.Contract.GetCurrentPrice(&_SaleClockAuction.CallOpts, _tokenId) 3621 } 3622 3623 // GetCurrentPrice is a free data retrieval call binding the contract method 0xc55d0f56. 3624 // 3625 // Solidity: function getCurrentPrice(uint256 _tokenId) view returns(uint256) 3626 func (_SaleClockAuction *SaleClockAuctionCallerSession) GetCurrentPrice(_tokenId *big.Int) (*big.Int, error) { 3627 return _SaleClockAuction.Contract.GetCurrentPrice(&_SaleClockAuction.CallOpts, _tokenId) 3628 } 3629 3630 // IsSaleClockAuction is a free data retrieval call binding the contract method 0x85b86188. 3631 // 3632 // Solidity: function isSaleClockAuction() view returns(bool) 3633 func (_SaleClockAuction *SaleClockAuctionCaller) IsSaleClockAuction(opts *bind.CallOpts) (bool, error) { 3634 var out []interface{} 3635 err := _SaleClockAuction.contract.Call(opts, &out, "isSaleClockAuction") 3636 3637 if err != nil { 3638 return *new(bool), err 3639 } 3640 3641 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 3642 3643 return out0, err 3644 3645 } 3646 3647 // IsSaleClockAuction is a free data retrieval call binding the contract method 0x85b86188. 3648 // 3649 // Solidity: function isSaleClockAuction() view returns(bool) 3650 func (_SaleClockAuction *SaleClockAuctionSession) IsSaleClockAuction() (bool, error) { 3651 return _SaleClockAuction.Contract.IsSaleClockAuction(&_SaleClockAuction.CallOpts) 3652 } 3653 3654 // IsSaleClockAuction is a free data retrieval call binding the contract method 0x85b86188. 3655 // 3656 // Solidity: function isSaleClockAuction() view returns(bool) 3657 func (_SaleClockAuction *SaleClockAuctionCallerSession) IsSaleClockAuction() (bool, error) { 3658 return _SaleClockAuction.Contract.IsSaleClockAuction(&_SaleClockAuction.CallOpts) 3659 } 3660 3661 // LastGen0SalePrices is a free data retrieval call binding the contract method 0x484eccb4. 3662 // 3663 // Solidity: function lastGen0SalePrices(uint256 ) view returns(uint256) 3664 func (_SaleClockAuction *SaleClockAuctionCaller) LastGen0SalePrices(opts *bind.CallOpts, arg0 *big.Int) (*big.Int, error) { 3665 var out []interface{} 3666 err := _SaleClockAuction.contract.Call(opts, &out, "lastGen0SalePrices", arg0) 3667 3668 if err != nil { 3669 return *new(*big.Int), err 3670 } 3671 3672 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 3673 3674 return out0, err 3675 3676 } 3677 3678 // LastGen0SalePrices is a free data retrieval call binding the contract method 0x484eccb4. 3679 // 3680 // Solidity: function lastGen0SalePrices(uint256 ) view returns(uint256) 3681 func (_SaleClockAuction *SaleClockAuctionSession) LastGen0SalePrices(arg0 *big.Int) (*big.Int, error) { 3682 return _SaleClockAuction.Contract.LastGen0SalePrices(&_SaleClockAuction.CallOpts, arg0) 3683 } 3684 3685 // LastGen0SalePrices is a free data retrieval call binding the contract method 0x484eccb4. 3686 // 3687 // Solidity: function lastGen0SalePrices(uint256 ) view returns(uint256) 3688 func (_SaleClockAuction *SaleClockAuctionCallerSession) LastGen0SalePrices(arg0 *big.Int) (*big.Int, error) { 3689 return _SaleClockAuction.Contract.LastGen0SalePrices(&_SaleClockAuction.CallOpts, arg0) 3690 } 3691 3692 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 3693 // 3694 // Solidity: function nonFungibleContract() view returns(address) 3695 func (_SaleClockAuction *SaleClockAuctionCaller) NonFungibleContract(opts *bind.CallOpts) (common.Address, error) { 3696 var out []interface{} 3697 err := _SaleClockAuction.contract.Call(opts, &out, "nonFungibleContract") 3698 3699 if err != nil { 3700 return *new(common.Address), err 3701 } 3702 3703 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 3704 3705 return out0, err 3706 3707 } 3708 3709 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 3710 // 3711 // Solidity: function nonFungibleContract() view returns(address) 3712 func (_SaleClockAuction *SaleClockAuctionSession) NonFungibleContract() (common.Address, error) { 3713 return _SaleClockAuction.Contract.NonFungibleContract(&_SaleClockAuction.CallOpts) 3714 } 3715 3716 // NonFungibleContract is a free data retrieval call binding the contract method 0xdd1b7a0f. 3717 // 3718 // Solidity: function nonFungibleContract() view returns(address) 3719 func (_SaleClockAuction *SaleClockAuctionCallerSession) NonFungibleContract() (common.Address, error) { 3720 return _SaleClockAuction.Contract.NonFungibleContract(&_SaleClockAuction.CallOpts) 3721 } 3722 3723 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3724 // 3725 // Solidity: function owner() view returns(address) 3726 func (_SaleClockAuction *SaleClockAuctionCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 3727 var out []interface{} 3728 err := _SaleClockAuction.contract.Call(opts, &out, "owner") 3729 3730 if err != nil { 3731 return *new(common.Address), err 3732 } 3733 3734 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 3735 3736 return out0, err 3737 3738 } 3739 3740 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3741 // 3742 // Solidity: function owner() view returns(address) 3743 func (_SaleClockAuction *SaleClockAuctionSession) Owner() (common.Address, error) { 3744 return _SaleClockAuction.Contract.Owner(&_SaleClockAuction.CallOpts) 3745 } 3746 3747 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3748 // 3749 // Solidity: function owner() view returns(address) 3750 func (_SaleClockAuction *SaleClockAuctionCallerSession) Owner() (common.Address, error) { 3751 return _SaleClockAuction.Contract.Owner(&_SaleClockAuction.CallOpts) 3752 } 3753 3754 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 3755 // 3756 // Solidity: function ownerCut() view returns(uint256) 3757 func (_SaleClockAuction *SaleClockAuctionCaller) OwnerCut(opts *bind.CallOpts) (*big.Int, error) { 3758 var out []interface{} 3759 err := _SaleClockAuction.contract.Call(opts, &out, "ownerCut") 3760 3761 if err != nil { 3762 return *new(*big.Int), err 3763 } 3764 3765 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 3766 3767 return out0, err 3768 3769 } 3770 3771 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 3772 // 3773 // Solidity: function ownerCut() view returns(uint256) 3774 func (_SaleClockAuction *SaleClockAuctionSession) OwnerCut() (*big.Int, error) { 3775 return _SaleClockAuction.Contract.OwnerCut(&_SaleClockAuction.CallOpts) 3776 } 3777 3778 // OwnerCut is a free data retrieval call binding the contract method 0x83b5ff8b. 3779 // 3780 // Solidity: function ownerCut() view returns(uint256) 3781 func (_SaleClockAuction *SaleClockAuctionCallerSession) OwnerCut() (*big.Int, error) { 3782 return _SaleClockAuction.Contract.OwnerCut(&_SaleClockAuction.CallOpts) 3783 } 3784 3785 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 3786 // 3787 // Solidity: function paused() view returns(bool) 3788 func (_SaleClockAuction *SaleClockAuctionCaller) Paused(opts *bind.CallOpts) (bool, error) { 3789 var out []interface{} 3790 err := _SaleClockAuction.contract.Call(opts, &out, "paused") 3791 3792 if err != nil { 3793 return *new(bool), err 3794 } 3795 3796 out0 := *abi.ConvertType(out[0], new(bool)).(*bool) 3797 3798 return out0, err 3799 3800 } 3801 3802 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 3803 // 3804 // Solidity: function paused() view returns(bool) 3805 func (_SaleClockAuction *SaleClockAuctionSession) Paused() (bool, error) { 3806 return _SaleClockAuction.Contract.Paused(&_SaleClockAuction.CallOpts) 3807 } 3808 3809 // Paused is a free data retrieval call binding the contract method 0x5c975abb. 3810 // 3811 // Solidity: function paused() view returns(bool) 3812 func (_SaleClockAuction *SaleClockAuctionCallerSession) Paused() (bool, error) { 3813 return _SaleClockAuction.Contract.Paused(&_SaleClockAuction.CallOpts) 3814 } 3815 3816 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 3817 // 3818 // Solidity: function bid(uint256 _tokenId) payable returns() 3819 func (_SaleClockAuction *SaleClockAuctionTransactor) Bid(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 3820 return _SaleClockAuction.contract.Transact(opts, "bid", _tokenId) 3821 } 3822 3823 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 3824 // 3825 // Solidity: function bid(uint256 _tokenId) payable returns() 3826 func (_SaleClockAuction *SaleClockAuctionSession) Bid(_tokenId *big.Int) (*types.Transaction, error) { 3827 return _SaleClockAuction.Contract.Bid(&_SaleClockAuction.TransactOpts, _tokenId) 3828 } 3829 3830 // Bid is a paid mutator transaction binding the contract method 0x454a2ab3. 3831 // 3832 // Solidity: function bid(uint256 _tokenId) payable returns() 3833 func (_SaleClockAuction *SaleClockAuctionTransactorSession) Bid(_tokenId *big.Int) (*types.Transaction, error) { 3834 return _SaleClockAuction.Contract.Bid(&_SaleClockAuction.TransactOpts, _tokenId) 3835 } 3836 3837 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 3838 // 3839 // Solidity: function cancelAuction(uint256 _tokenId) returns() 3840 func (_SaleClockAuction *SaleClockAuctionTransactor) CancelAuction(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 3841 return _SaleClockAuction.contract.Transact(opts, "cancelAuction", _tokenId) 3842 } 3843 3844 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 3845 // 3846 // Solidity: function cancelAuction(uint256 _tokenId) returns() 3847 func (_SaleClockAuction *SaleClockAuctionSession) CancelAuction(_tokenId *big.Int) (*types.Transaction, error) { 3848 return _SaleClockAuction.Contract.CancelAuction(&_SaleClockAuction.TransactOpts, _tokenId) 3849 } 3850 3851 // CancelAuction is a paid mutator transaction binding the contract method 0x96b5a755. 3852 // 3853 // Solidity: function cancelAuction(uint256 _tokenId) returns() 3854 func (_SaleClockAuction *SaleClockAuctionTransactorSession) CancelAuction(_tokenId *big.Int) (*types.Transaction, error) { 3855 return _SaleClockAuction.Contract.CancelAuction(&_SaleClockAuction.TransactOpts, _tokenId) 3856 } 3857 3858 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 3859 // 3860 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 3861 func (_SaleClockAuction *SaleClockAuctionTransactor) CancelAuctionWhenPaused(opts *bind.TransactOpts, _tokenId *big.Int) (*types.Transaction, error) { 3862 return _SaleClockAuction.contract.Transact(opts, "cancelAuctionWhenPaused", _tokenId) 3863 } 3864 3865 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 3866 // 3867 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 3868 func (_SaleClockAuction *SaleClockAuctionSession) CancelAuctionWhenPaused(_tokenId *big.Int) (*types.Transaction, error) { 3869 return _SaleClockAuction.Contract.CancelAuctionWhenPaused(&_SaleClockAuction.TransactOpts, _tokenId) 3870 } 3871 3872 // CancelAuctionWhenPaused is a paid mutator transaction binding the contract method 0x878eb368. 3873 // 3874 // Solidity: function cancelAuctionWhenPaused(uint256 _tokenId) returns() 3875 func (_SaleClockAuction *SaleClockAuctionTransactorSession) CancelAuctionWhenPaused(_tokenId *big.Int) (*types.Transaction, error) { 3876 return _SaleClockAuction.Contract.CancelAuctionWhenPaused(&_SaleClockAuction.TransactOpts, _tokenId) 3877 } 3878 3879 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 3880 // 3881 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 3882 func (_SaleClockAuction *SaleClockAuctionTransactor) CreateAuction(opts *bind.TransactOpts, _tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 3883 return _SaleClockAuction.contract.Transact(opts, "createAuction", _tokenId, _startingPrice, _endingPrice, _duration, _seller) 3884 } 3885 3886 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 3887 // 3888 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 3889 func (_SaleClockAuction *SaleClockAuctionSession) CreateAuction(_tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 3890 return _SaleClockAuction.Contract.CreateAuction(&_SaleClockAuction.TransactOpts, _tokenId, _startingPrice, _endingPrice, _duration, _seller) 3891 } 3892 3893 // CreateAuction is a paid mutator transaction binding the contract method 0x27ebe40a. 3894 // 3895 // Solidity: function createAuction(uint256 _tokenId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration, address _seller) returns() 3896 func (_SaleClockAuction *SaleClockAuctionTransactorSession) CreateAuction(_tokenId *big.Int, _startingPrice *big.Int, _endingPrice *big.Int, _duration *big.Int, _seller common.Address) (*types.Transaction, error) { 3897 return _SaleClockAuction.Contract.CreateAuction(&_SaleClockAuction.TransactOpts, _tokenId, _startingPrice, _endingPrice, _duration, _seller) 3898 } 3899 3900 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 3901 // 3902 // Solidity: function pause() returns(bool) 3903 func (_SaleClockAuction *SaleClockAuctionTransactor) Pause(opts *bind.TransactOpts) (*types.Transaction, error) { 3904 return _SaleClockAuction.contract.Transact(opts, "pause") 3905 } 3906 3907 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 3908 // 3909 // Solidity: function pause() returns(bool) 3910 func (_SaleClockAuction *SaleClockAuctionSession) Pause() (*types.Transaction, error) { 3911 return _SaleClockAuction.Contract.Pause(&_SaleClockAuction.TransactOpts) 3912 } 3913 3914 // Pause is a paid mutator transaction binding the contract method 0x8456cb59. 3915 // 3916 // Solidity: function pause() returns(bool) 3917 func (_SaleClockAuction *SaleClockAuctionTransactorSession) Pause() (*types.Transaction, error) { 3918 return _SaleClockAuction.Contract.Pause(&_SaleClockAuction.TransactOpts) 3919 } 3920 3921 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3922 // 3923 // Solidity: function transferOwnership(address newOwner) returns() 3924 func (_SaleClockAuction *SaleClockAuctionTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 3925 return _SaleClockAuction.contract.Transact(opts, "transferOwnership", newOwner) 3926 } 3927 3928 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3929 // 3930 // Solidity: function transferOwnership(address newOwner) returns() 3931 func (_SaleClockAuction *SaleClockAuctionSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 3932 return _SaleClockAuction.Contract.TransferOwnership(&_SaleClockAuction.TransactOpts, newOwner) 3933 } 3934 3935 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3936 // 3937 // Solidity: function transferOwnership(address newOwner) returns() 3938 func (_SaleClockAuction *SaleClockAuctionTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 3939 return _SaleClockAuction.Contract.TransferOwnership(&_SaleClockAuction.TransactOpts, newOwner) 3940 } 3941 3942 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3943 // 3944 // Solidity: function unpause() returns(bool) 3945 func (_SaleClockAuction *SaleClockAuctionTransactor) Unpause(opts *bind.TransactOpts) (*types.Transaction, error) { 3946 return _SaleClockAuction.contract.Transact(opts, "unpause") 3947 } 3948 3949 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3950 // 3951 // Solidity: function unpause() returns(bool) 3952 func (_SaleClockAuction *SaleClockAuctionSession) Unpause() (*types.Transaction, error) { 3953 return _SaleClockAuction.Contract.Unpause(&_SaleClockAuction.TransactOpts) 3954 } 3955 3956 // Unpause is a paid mutator transaction binding the contract method 0x3f4ba83a. 3957 // 3958 // Solidity: function unpause() returns(bool) 3959 func (_SaleClockAuction *SaleClockAuctionTransactorSession) Unpause() (*types.Transaction, error) { 3960 return _SaleClockAuction.Contract.Unpause(&_SaleClockAuction.TransactOpts) 3961 } 3962 3963 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 3964 // 3965 // Solidity: function withdrawBalance() returns() 3966 func (_SaleClockAuction *SaleClockAuctionTransactor) WithdrawBalance(opts *bind.TransactOpts) (*types.Transaction, error) { 3967 return _SaleClockAuction.contract.Transact(opts, "withdrawBalance") 3968 } 3969 3970 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 3971 // 3972 // Solidity: function withdrawBalance() returns() 3973 func (_SaleClockAuction *SaleClockAuctionSession) WithdrawBalance() (*types.Transaction, error) { 3974 return _SaleClockAuction.Contract.WithdrawBalance(&_SaleClockAuction.TransactOpts) 3975 } 3976 3977 // WithdrawBalance is a paid mutator transaction binding the contract method 0x5fd8c710. 3978 // 3979 // Solidity: function withdrawBalance() returns() 3980 func (_SaleClockAuction *SaleClockAuctionTransactorSession) WithdrawBalance() (*types.Transaction, error) { 3981 return _SaleClockAuction.Contract.WithdrawBalance(&_SaleClockAuction.TransactOpts) 3982 } 3983 3984 // SaleClockAuctionAuctionCancelledIterator is returned from FilterAuctionCancelled and is used to iterate over the raw logs and unpacked data for AuctionCancelled events raised by the SaleClockAuction contract. 3985 type SaleClockAuctionAuctionCancelledIterator struct { 3986 Event *SaleClockAuctionAuctionCancelled // Event containing the contract specifics and raw log 3987 3988 contract *bind.BoundContract // Generic contract to use for unpacking event data 3989 event string // Event name to use for unpacking event data 3990 3991 logs chan types.Log // Log channel receiving the found contract events 3992 sub ethereum.Subscription // Subscription for errors, completion and termination 3993 done bool // Whether the subscription completed delivering logs 3994 fail error // Occurred error to stop iteration 3995 } 3996 3997 // Next advances the iterator to the subsequent event, returning whether there 3998 // are any more events found. In case of a retrieval or parsing error, false is 3999 // returned and Error() can be queried for the exact failure. 4000 func (it *SaleClockAuctionAuctionCancelledIterator) Next() bool { 4001 // If the iterator failed, stop iterating 4002 if it.fail != nil { 4003 return false 4004 } 4005 // If the iterator completed, deliver directly whatever's available 4006 if it.done { 4007 select { 4008 case log := <-it.logs: 4009 it.Event = new(SaleClockAuctionAuctionCancelled) 4010 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4011 it.fail = err 4012 return false 4013 } 4014 it.Event.Raw = log 4015 return true 4016 4017 default: 4018 return false 4019 } 4020 } 4021 // Iterator still in progress, wait for either a data or an error event 4022 select { 4023 case log := <-it.logs: 4024 it.Event = new(SaleClockAuctionAuctionCancelled) 4025 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4026 it.fail = err 4027 return false 4028 } 4029 it.Event.Raw = log 4030 return true 4031 4032 case err := <-it.sub.Err(): 4033 it.done = true 4034 it.fail = err 4035 return it.Next() 4036 } 4037 } 4038 4039 // Error returns any retrieval or parsing error occurred during filtering. 4040 func (it *SaleClockAuctionAuctionCancelledIterator) Error() error { 4041 return it.fail 4042 } 4043 4044 // Close terminates the iteration process, releasing any pending underlying 4045 // resources. 4046 func (it *SaleClockAuctionAuctionCancelledIterator) Close() error { 4047 it.sub.Unsubscribe() 4048 return nil 4049 } 4050 4051 // SaleClockAuctionAuctionCancelled represents a AuctionCancelled event raised by the SaleClockAuction contract. 4052 type SaleClockAuctionAuctionCancelled struct { 4053 TokenId *big.Int 4054 Raw types.Log // Blockchain specific contextual infos 4055 } 4056 4057 // FilterAuctionCancelled is a free log retrieval operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 4058 // 4059 // Solidity: event AuctionCancelled(uint256 tokenId) 4060 func (_SaleClockAuction *SaleClockAuctionFilterer) FilterAuctionCancelled(opts *bind.FilterOpts) (*SaleClockAuctionAuctionCancelledIterator, error) { 4061 4062 logs, sub, err := _SaleClockAuction.contract.FilterLogs(opts, "AuctionCancelled") 4063 if err != nil { 4064 return nil, err 4065 } 4066 return &SaleClockAuctionAuctionCancelledIterator{contract: _SaleClockAuction.contract, event: "AuctionCancelled", logs: logs, sub: sub}, nil 4067 } 4068 4069 // WatchAuctionCancelled is a free log subscription operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 4070 // 4071 // Solidity: event AuctionCancelled(uint256 tokenId) 4072 func (_SaleClockAuction *SaleClockAuctionFilterer) WatchAuctionCancelled(opts *bind.WatchOpts, sink chan<- *SaleClockAuctionAuctionCancelled) (event.Subscription, error) { 4073 4074 logs, sub, err := _SaleClockAuction.contract.WatchLogs(opts, "AuctionCancelled") 4075 if err != nil { 4076 return nil, err 4077 } 4078 return event.NewSubscription(func(quit <-chan struct{}) error { 4079 defer sub.Unsubscribe() 4080 for { 4081 select { 4082 case log := <-logs: 4083 // New log arrived, parse the event and forward to the user 4084 event := new(SaleClockAuctionAuctionCancelled) 4085 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 4086 return err 4087 } 4088 event.Raw = log 4089 4090 select { 4091 case sink <- event: 4092 case err := <-sub.Err(): 4093 return err 4094 case <-quit: 4095 return nil 4096 } 4097 case err := <-sub.Err(): 4098 return err 4099 case <-quit: 4100 return nil 4101 } 4102 } 4103 }), nil 4104 } 4105 4106 // ParseAuctionCancelled is a log parse operation binding the contract event 0x2809c7e17bf978fbc7194c0a694b638c4215e9140cacc6c38ca36010b45697df. 4107 // 4108 // Solidity: event AuctionCancelled(uint256 tokenId) 4109 func (_SaleClockAuction *SaleClockAuctionFilterer) ParseAuctionCancelled(log types.Log) (*SaleClockAuctionAuctionCancelled, error) { 4110 event := new(SaleClockAuctionAuctionCancelled) 4111 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionCancelled", log); err != nil { 4112 return nil, err 4113 } 4114 event.Raw = log 4115 return event, nil 4116 } 4117 4118 // SaleClockAuctionAuctionCreatedIterator is returned from FilterAuctionCreated and is used to iterate over the raw logs and unpacked data for AuctionCreated events raised by the SaleClockAuction contract. 4119 type SaleClockAuctionAuctionCreatedIterator struct { 4120 Event *SaleClockAuctionAuctionCreated // Event containing the contract specifics and raw log 4121 4122 contract *bind.BoundContract // Generic contract to use for unpacking event data 4123 event string // Event name to use for unpacking event data 4124 4125 logs chan types.Log // Log channel receiving the found contract events 4126 sub ethereum.Subscription // Subscription for errors, completion and termination 4127 done bool // Whether the subscription completed delivering logs 4128 fail error // Occurred error to stop iteration 4129 } 4130 4131 // Next advances the iterator to the subsequent event, returning whether there 4132 // are any more events found. In case of a retrieval or parsing error, false is 4133 // returned and Error() can be queried for the exact failure. 4134 func (it *SaleClockAuctionAuctionCreatedIterator) Next() bool { 4135 // If the iterator failed, stop iterating 4136 if it.fail != nil { 4137 return false 4138 } 4139 // If the iterator completed, deliver directly whatever's available 4140 if it.done { 4141 select { 4142 case log := <-it.logs: 4143 it.Event = new(SaleClockAuctionAuctionCreated) 4144 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4145 it.fail = err 4146 return false 4147 } 4148 it.Event.Raw = log 4149 return true 4150 4151 default: 4152 return false 4153 } 4154 } 4155 // Iterator still in progress, wait for either a data or an error event 4156 select { 4157 case log := <-it.logs: 4158 it.Event = new(SaleClockAuctionAuctionCreated) 4159 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4160 it.fail = err 4161 return false 4162 } 4163 it.Event.Raw = log 4164 return true 4165 4166 case err := <-it.sub.Err(): 4167 it.done = true 4168 it.fail = err 4169 return it.Next() 4170 } 4171 } 4172 4173 // Error returns any retrieval or parsing error occurred during filtering. 4174 func (it *SaleClockAuctionAuctionCreatedIterator) Error() error { 4175 return it.fail 4176 } 4177 4178 // Close terminates the iteration process, releasing any pending underlying 4179 // resources. 4180 func (it *SaleClockAuctionAuctionCreatedIterator) Close() error { 4181 it.sub.Unsubscribe() 4182 return nil 4183 } 4184 4185 // SaleClockAuctionAuctionCreated represents a AuctionCreated event raised by the SaleClockAuction contract. 4186 type SaleClockAuctionAuctionCreated struct { 4187 TokenId *big.Int 4188 StartingPrice *big.Int 4189 EndingPrice *big.Int 4190 Duration *big.Int 4191 Raw types.Log // Blockchain specific contextual infos 4192 } 4193 4194 // FilterAuctionCreated is a free log retrieval operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 4195 // 4196 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 4197 func (_SaleClockAuction *SaleClockAuctionFilterer) FilterAuctionCreated(opts *bind.FilterOpts) (*SaleClockAuctionAuctionCreatedIterator, error) { 4198 4199 logs, sub, err := _SaleClockAuction.contract.FilterLogs(opts, "AuctionCreated") 4200 if err != nil { 4201 return nil, err 4202 } 4203 return &SaleClockAuctionAuctionCreatedIterator{contract: _SaleClockAuction.contract, event: "AuctionCreated", logs: logs, sub: sub}, nil 4204 } 4205 4206 // WatchAuctionCreated is a free log subscription operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 4207 // 4208 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 4209 func (_SaleClockAuction *SaleClockAuctionFilterer) WatchAuctionCreated(opts *bind.WatchOpts, sink chan<- *SaleClockAuctionAuctionCreated) (event.Subscription, error) { 4210 4211 logs, sub, err := _SaleClockAuction.contract.WatchLogs(opts, "AuctionCreated") 4212 if err != nil { 4213 return nil, err 4214 } 4215 return event.NewSubscription(func(quit <-chan struct{}) error { 4216 defer sub.Unsubscribe() 4217 for { 4218 select { 4219 case log := <-logs: 4220 // New log arrived, parse the event and forward to the user 4221 event := new(SaleClockAuctionAuctionCreated) 4222 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 4223 return err 4224 } 4225 event.Raw = log 4226 4227 select { 4228 case sink <- event: 4229 case err := <-sub.Err(): 4230 return err 4231 case <-quit: 4232 return nil 4233 } 4234 case err := <-sub.Err(): 4235 return err 4236 case <-quit: 4237 return nil 4238 } 4239 } 4240 }), nil 4241 } 4242 4243 // ParseAuctionCreated is a log parse operation binding the contract event 0xa9c8dfcda5664a5a124c713e386da27de87432d5b668e79458501eb296389ba7. 4244 // 4245 // Solidity: event AuctionCreated(uint256 tokenId, uint256 startingPrice, uint256 endingPrice, uint256 duration) 4246 func (_SaleClockAuction *SaleClockAuctionFilterer) ParseAuctionCreated(log types.Log) (*SaleClockAuctionAuctionCreated, error) { 4247 event := new(SaleClockAuctionAuctionCreated) 4248 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionCreated", log); err != nil { 4249 return nil, err 4250 } 4251 event.Raw = log 4252 return event, nil 4253 } 4254 4255 // SaleClockAuctionAuctionSuccessfulIterator is returned from FilterAuctionSuccessful and is used to iterate over the raw logs and unpacked data for AuctionSuccessful events raised by the SaleClockAuction contract. 4256 type SaleClockAuctionAuctionSuccessfulIterator struct { 4257 Event *SaleClockAuctionAuctionSuccessful // Event containing the contract specifics and raw log 4258 4259 contract *bind.BoundContract // Generic contract to use for unpacking event data 4260 event string // Event name to use for unpacking event data 4261 4262 logs chan types.Log // Log channel receiving the found contract events 4263 sub ethereum.Subscription // Subscription for errors, completion and termination 4264 done bool // Whether the subscription completed delivering logs 4265 fail error // Occurred error to stop iteration 4266 } 4267 4268 // Next advances the iterator to the subsequent event, returning whether there 4269 // are any more events found. In case of a retrieval or parsing error, false is 4270 // returned and Error() can be queried for the exact failure. 4271 func (it *SaleClockAuctionAuctionSuccessfulIterator) Next() bool { 4272 // If the iterator failed, stop iterating 4273 if it.fail != nil { 4274 return false 4275 } 4276 // If the iterator completed, deliver directly whatever's available 4277 if it.done { 4278 select { 4279 case log := <-it.logs: 4280 it.Event = new(SaleClockAuctionAuctionSuccessful) 4281 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4282 it.fail = err 4283 return false 4284 } 4285 it.Event.Raw = log 4286 return true 4287 4288 default: 4289 return false 4290 } 4291 } 4292 // Iterator still in progress, wait for either a data or an error event 4293 select { 4294 case log := <-it.logs: 4295 it.Event = new(SaleClockAuctionAuctionSuccessful) 4296 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4297 it.fail = err 4298 return false 4299 } 4300 it.Event.Raw = log 4301 return true 4302 4303 case err := <-it.sub.Err(): 4304 it.done = true 4305 it.fail = err 4306 return it.Next() 4307 } 4308 } 4309 4310 // Error returns any retrieval or parsing error occurred during filtering. 4311 func (it *SaleClockAuctionAuctionSuccessfulIterator) Error() error { 4312 return it.fail 4313 } 4314 4315 // Close terminates the iteration process, releasing any pending underlying 4316 // resources. 4317 func (it *SaleClockAuctionAuctionSuccessfulIterator) Close() error { 4318 it.sub.Unsubscribe() 4319 return nil 4320 } 4321 4322 // SaleClockAuctionAuctionSuccessful represents a AuctionSuccessful event raised by the SaleClockAuction contract. 4323 type SaleClockAuctionAuctionSuccessful struct { 4324 TokenId *big.Int 4325 TotalPrice *big.Int 4326 Winner common.Address 4327 Raw types.Log // Blockchain specific contextual infos 4328 } 4329 4330 // FilterAuctionSuccessful is a free log retrieval operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 4331 // 4332 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 4333 func (_SaleClockAuction *SaleClockAuctionFilterer) FilterAuctionSuccessful(opts *bind.FilterOpts) (*SaleClockAuctionAuctionSuccessfulIterator, error) { 4334 4335 logs, sub, err := _SaleClockAuction.contract.FilterLogs(opts, "AuctionSuccessful") 4336 if err != nil { 4337 return nil, err 4338 } 4339 return &SaleClockAuctionAuctionSuccessfulIterator{contract: _SaleClockAuction.contract, event: "AuctionSuccessful", logs: logs, sub: sub}, nil 4340 } 4341 4342 // WatchAuctionSuccessful is a free log subscription operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 4343 // 4344 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 4345 func (_SaleClockAuction *SaleClockAuctionFilterer) WatchAuctionSuccessful(opts *bind.WatchOpts, sink chan<- *SaleClockAuctionAuctionSuccessful) (event.Subscription, error) { 4346 4347 logs, sub, err := _SaleClockAuction.contract.WatchLogs(opts, "AuctionSuccessful") 4348 if err != nil { 4349 return nil, err 4350 } 4351 return event.NewSubscription(func(quit <-chan struct{}) error { 4352 defer sub.Unsubscribe() 4353 for { 4354 select { 4355 case log := <-logs: 4356 // New log arrived, parse the event and forward to the user 4357 event := new(SaleClockAuctionAuctionSuccessful) 4358 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 4359 return err 4360 } 4361 event.Raw = log 4362 4363 select { 4364 case sink <- event: 4365 case err := <-sub.Err(): 4366 return err 4367 case <-quit: 4368 return nil 4369 } 4370 case err := <-sub.Err(): 4371 return err 4372 case <-quit: 4373 return nil 4374 } 4375 } 4376 }), nil 4377 } 4378 4379 // ParseAuctionSuccessful is a log parse operation binding the contract event 0x4fcc30d90a842164dd58501ab874a101a3749c3d4747139cefe7c876f4ccebd2. 4380 // 4381 // Solidity: event AuctionSuccessful(uint256 tokenId, uint256 totalPrice, address winner) 4382 func (_SaleClockAuction *SaleClockAuctionFilterer) ParseAuctionSuccessful(log types.Log) (*SaleClockAuctionAuctionSuccessful, error) { 4383 event := new(SaleClockAuctionAuctionSuccessful) 4384 if err := _SaleClockAuction.contract.UnpackLog(event, "AuctionSuccessful", log); err != nil { 4385 return nil, err 4386 } 4387 event.Raw = log 4388 return event, nil 4389 } 4390 4391 // SaleClockAuctionPauseIterator is returned from FilterPause and is used to iterate over the raw logs and unpacked data for Pause events raised by the SaleClockAuction contract. 4392 type SaleClockAuctionPauseIterator struct { 4393 Event *SaleClockAuctionPause // Event containing the contract specifics and raw log 4394 4395 contract *bind.BoundContract // Generic contract to use for unpacking event data 4396 event string // Event name to use for unpacking event data 4397 4398 logs chan types.Log // Log channel receiving the found contract events 4399 sub ethereum.Subscription // Subscription for errors, completion and termination 4400 done bool // Whether the subscription completed delivering logs 4401 fail error // Occurred error to stop iteration 4402 } 4403 4404 // Next advances the iterator to the subsequent event, returning whether there 4405 // are any more events found. In case of a retrieval or parsing error, false is 4406 // returned and Error() can be queried for the exact failure. 4407 func (it *SaleClockAuctionPauseIterator) Next() bool { 4408 // If the iterator failed, stop iterating 4409 if it.fail != nil { 4410 return false 4411 } 4412 // If the iterator completed, deliver directly whatever's available 4413 if it.done { 4414 select { 4415 case log := <-it.logs: 4416 it.Event = new(SaleClockAuctionPause) 4417 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4418 it.fail = err 4419 return false 4420 } 4421 it.Event.Raw = log 4422 return true 4423 4424 default: 4425 return false 4426 } 4427 } 4428 // Iterator still in progress, wait for either a data or an error event 4429 select { 4430 case log := <-it.logs: 4431 it.Event = new(SaleClockAuctionPause) 4432 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4433 it.fail = err 4434 return false 4435 } 4436 it.Event.Raw = log 4437 return true 4438 4439 case err := <-it.sub.Err(): 4440 it.done = true 4441 it.fail = err 4442 return it.Next() 4443 } 4444 } 4445 4446 // Error returns any retrieval or parsing error occurred during filtering. 4447 func (it *SaleClockAuctionPauseIterator) Error() error { 4448 return it.fail 4449 } 4450 4451 // Close terminates the iteration process, releasing any pending underlying 4452 // resources. 4453 func (it *SaleClockAuctionPauseIterator) Close() error { 4454 it.sub.Unsubscribe() 4455 return nil 4456 } 4457 4458 // SaleClockAuctionPause represents a Pause event raised by the SaleClockAuction contract. 4459 type SaleClockAuctionPause struct { 4460 Raw types.Log // Blockchain specific contextual infos 4461 } 4462 4463 // FilterPause is a free log retrieval operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 4464 // 4465 // Solidity: event Pause() 4466 func (_SaleClockAuction *SaleClockAuctionFilterer) FilterPause(opts *bind.FilterOpts) (*SaleClockAuctionPauseIterator, error) { 4467 4468 logs, sub, err := _SaleClockAuction.contract.FilterLogs(opts, "Pause") 4469 if err != nil { 4470 return nil, err 4471 } 4472 return &SaleClockAuctionPauseIterator{contract: _SaleClockAuction.contract, event: "Pause", logs: logs, sub: sub}, nil 4473 } 4474 4475 // WatchPause is a free log subscription operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 4476 // 4477 // Solidity: event Pause() 4478 func (_SaleClockAuction *SaleClockAuctionFilterer) WatchPause(opts *bind.WatchOpts, sink chan<- *SaleClockAuctionPause) (event.Subscription, error) { 4479 4480 logs, sub, err := _SaleClockAuction.contract.WatchLogs(opts, "Pause") 4481 if err != nil { 4482 return nil, err 4483 } 4484 return event.NewSubscription(func(quit <-chan struct{}) error { 4485 defer sub.Unsubscribe() 4486 for { 4487 select { 4488 case log := <-logs: 4489 // New log arrived, parse the event and forward to the user 4490 event := new(SaleClockAuctionPause) 4491 if err := _SaleClockAuction.contract.UnpackLog(event, "Pause", log); err != nil { 4492 return err 4493 } 4494 event.Raw = log 4495 4496 select { 4497 case sink <- event: 4498 case err := <-sub.Err(): 4499 return err 4500 case <-quit: 4501 return nil 4502 } 4503 case err := <-sub.Err(): 4504 return err 4505 case <-quit: 4506 return nil 4507 } 4508 } 4509 }), nil 4510 } 4511 4512 // ParsePause is a log parse operation binding the contract event 0x6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff625. 4513 // 4514 // Solidity: event Pause() 4515 func (_SaleClockAuction *SaleClockAuctionFilterer) ParsePause(log types.Log) (*SaleClockAuctionPause, error) { 4516 event := new(SaleClockAuctionPause) 4517 if err := _SaleClockAuction.contract.UnpackLog(event, "Pause", log); err != nil { 4518 return nil, err 4519 } 4520 event.Raw = log 4521 return event, nil 4522 } 4523 4524 // SaleClockAuctionUnpauseIterator is returned from FilterUnpause and is used to iterate over the raw logs and unpacked data for Unpause events raised by the SaleClockAuction contract. 4525 type SaleClockAuctionUnpauseIterator struct { 4526 Event *SaleClockAuctionUnpause // Event containing the contract specifics and raw log 4527 4528 contract *bind.BoundContract // Generic contract to use for unpacking event data 4529 event string // Event name to use for unpacking event data 4530 4531 logs chan types.Log // Log channel receiving the found contract events 4532 sub ethereum.Subscription // Subscription for errors, completion and termination 4533 done bool // Whether the subscription completed delivering logs 4534 fail error // Occurred error to stop iteration 4535 } 4536 4537 // Next advances the iterator to the subsequent event, returning whether there 4538 // are any more events found. In case of a retrieval or parsing error, false is 4539 // returned and Error() can be queried for the exact failure. 4540 func (it *SaleClockAuctionUnpauseIterator) Next() bool { 4541 // If the iterator failed, stop iterating 4542 if it.fail != nil { 4543 return false 4544 } 4545 // If the iterator completed, deliver directly whatever's available 4546 if it.done { 4547 select { 4548 case log := <-it.logs: 4549 it.Event = new(SaleClockAuctionUnpause) 4550 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4551 it.fail = err 4552 return false 4553 } 4554 it.Event.Raw = log 4555 return true 4556 4557 default: 4558 return false 4559 } 4560 } 4561 // Iterator still in progress, wait for either a data or an error event 4562 select { 4563 case log := <-it.logs: 4564 it.Event = new(SaleClockAuctionUnpause) 4565 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4566 it.fail = err 4567 return false 4568 } 4569 it.Event.Raw = log 4570 return true 4571 4572 case err := <-it.sub.Err(): 4573 it.done = true 4574 it.fail = err 4575 return it.Next() 4576 } 4577 } 4578 4579 // Error returns any retrieval or parsing error occurred during filtering. 4580 func (it *SaleClockAuctionUnpauseIterator) Error() error { 4581 return it.fail 4582 } 4583 4584 // Close terminates the iteration process, releasing any pending underlying 4585 // resources. 4586 func (it *SaleClockAuctionUnpauseIterator) Close() error { 4587 it.sub.Unsubscribe() 4588 return nil 4589 } 4590 4591 // SaleClockAuctionUnpause represents a Unpause event raised by the SaleClockAuction contract. 4592 type SaleClockAuctionUnpause struct { 4593 Raw types.Log // Blockchain specific contextual infos 4594 } 4595 4596 // FilterUnpause is a free log retrieval operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 4597 // 4598 // Solidity: event Unpause() 4599 func (_SaleClockAuction *SaleClockAuctionFilterer) FilterUnpause(opts *bind.FilterOpts) (*SaleClockAuctionUnpauseIterator, error) { 4600 4601 logs, sub, err := _SaleClockAuction.contract.FilterLogs(opts, "Unpause") 4602 if err != nil { 4603 return nil, err 4604 } 4605 return &SaleClockAuctionUnpauseIterator{contract: _SaleClockAuction.contract, event: "Unpause", logs: logs, sub: sub}, nil 4606 } 4607 4608 // WatchUnpause is a free log subscription operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 4609 // 4610 // Solidity: event Unpause() 4611 func (_SaleClockAuction *SaleClockAuctionFilterer) WatchUnpause(opts *bind.WatchOpts, sink chan<- *SaleClockAuctionUnpause) (event.Subscription, error) { 4612 4613 logs, sub, err := _SaleClockAuction.contract.WatchLogs(opts, "Unpause") 4614 if err != nil { 4615 return nil, err 4616 } 4617 return event.NewSubscription(func(quit <-chan struct{}) error { 4618 defer sub.Unsubscribe() 4619 for { 4620 select { 4621 case log := <-logs: 4622 // New log arrived, parse the event and forward to the user 4623 event := new(SaleClockAuctionUnpause) 4624 if err := _SaleClockAuction.contract.UnpackLog(event, "Unpause", log); err != nil { 4625 return err 4626 } 4627 event.Raw = log 4628 4629 select { 4630 case sink <- event: 4631 case err := <-sub.Err(): 4632 return err 4633 case <-quit: 4634 return nil 4635 } 4636 case err := <-sub.Err(): 4637 return err 4638 case <-quit: 4639 return nil 4640 } 4641 } 4642 }), nil 4643 } 4644 4645 // ParseUnpause is a log parse operation binding the contract event 0x7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b33. 4646 // 4647 // Solidity: event Unpause() 4648 func (_SaleClockAuction *SaleClockAuctionFilterer) ParseUnpause(log types.Log) (*SaleClockAuctionUnpause, error) { 4649 event := new(SaleClockAuctionUnpause) 4650 if err := _SaleClockAuction.contract.UnpackLog(event, "Unpause", log); err != nil { 4651 return nil, err 4652 } 4653 event.Raw = log 4654 return event, nil 4655 }