github.com/klaytn/klaytn@v1.10.2/contracts/extbridge/ext_bridge.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 extbridge 5 6 import ( 7 "math/big" 8 "strings" 9 10 "github.com/klaytn/klaytn" 11 "github.com/klaytn/klaytn/accounts/abi" 12 "github.com/klaytn/klaytn/accounts/abi/bind" 13 "github.com/klaytn/klaytn/blockchain/types" 14 "github.com/klaytn/klaytn/common" 15 "github.com/klaytn/klaytn/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = klaytn.NotFound 23 _ = bind.Bind 24 _ = common.Big1 25 _ = types.BloomLookup 26 _ = event.NewSubscription 27 ) 28 29 // AddressABI is the input ABI used to generate the binding from. 30 const AddressABI = "[]" 31 32 // AddressBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 33 const AddressBinRuntime = `73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a72305820b7534b8b203852d9ead56352219b5abb5424533d9bb1b9cf84c0b1d15d11fee50029` 34 35 // AddressBin is the compiled bytecode used for deploying new contracts. 36 var AddressBin = "0x604c6023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a72305820b7534b8b203852d9ead56352219b5abb5424533d9bb1b9cf84c0b1d15d11fee50029" 37 38 // DeployAddress deploys a new Klaytn contract, binding an instance of Address to it. 39 func DeployAddress(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Address, error) { 40 parsed, err := abi.JSON(strings.NewReader(AddressABI)) 41 if err != nil { 42 return common.Address{}, nil, nil, err 43 } 44 45 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(AddressBin), backend) 46 if err != nil { 47 return common.Address{}, nil, nil, err 48 } 49 return address, tx, &Address{AddressCaller: AddressCaller{contract: contract}, AddressTransactor: AddressTransactor{contract: contract}, AddressFilterer: AddressFilterer{contract: contract}}, nil 50 } 51 52 // Address is an auto generated Go binding around a Klaytn contract. 53 type Address struct { 54 AddressCaller // Read-only binding to the contract 55 AddressTransactor // Write-only binding to the contract 56 AddressFilterer // Log filterer for contract events 57 } 58 59 // AddressCaller is an auto generated read-only Go binding around a Klaytn contract. 60 type AddressCaller struct { 61 contract *bind.BoundContract // Generic contract wrapper for the low level calls 62 } 63 64 // AddressTransactor is an auto generated write-only Go binding around a Klaytn contract. 65 type AddressTransactor struct { 66 contract *bind.BoundContract // Generic contract wrapper for the low level calls 67 } 68 69 // AddressFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 70 type AddressFilterer struct { 71 contract *bind.BoundContract // Generic contract wrapper for the low level calls 72 } 73 74 // AddressSession is an auto generated Go binding around a Klaytn contract, 75 // with pre-set call and transact options. 76 type AddressSession struct { 77 Contract *Address // Generic contract binding to set the session for 78 CallOpts bind.CallOpts // Call options to use throughout this session 79 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 80 } 81 82 // AddressCallerSession is an auto generated read-only Go binding around a Klaytn contract, 83 // with pre-set call options. 84 type AddressCallerSession struct { 85 Contract *AddressCaller // Generic contract caller binding to set the session for 86 CallOpts bind.CallOpts // Call options to use throughout this session 87 } 88 89 // AddressTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 90 // with pre-set transact options. 91 type AddressTransactorSession struct { 92 Contract *AddressTransactor // Generic contract transactor binding to set the session for 93 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 94 } 95 96 // AddressRaw is an auto generated low-level Go binding around a Klaytn contract. 97 type AddressRaw struct { 98 Contract *Address // Generic contract binding to access the raw methods on 99 } 100 101 // AddressCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 102 type AddressCallerRaw struct { 103 Contract *AddressCaller // Generic read-only contract binding to access the raw methods on 104 } 105 106 // AddressTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 107 type AddressTransactorRaw struct { 108 Contract *AddressTransactor // Generic write-only contract binding to access the raw methods on 109 } 110 111 // NewAddress creates a new instance of Address, bound to a specific deployed contract. 112 func NewAddress(address common.Address, backend bind.ContractBackend) (*Address, error) { 113 contract, err := bindAddress(address, backend, backend, backend) 114 if err != nil { 115 return nil, err 116 } 117 return &Address{AddressCaller: AddressCaller{contract: contract}, AddressTransactor: AddressTransactor{contract: contract}, AddressFilterer: AddressFilterer{contract: contract}}, nil 118 } 119 120 // NewAddressCaller creates a new read-only instance of Address, bound to a specific deployed contract. 121 func NewAddressCaller(address common.Address, caller bind.ContractCaller) (*AddressCaller, error) { 122 contract, err := bindAddress(address, caller, nil, nil) 123 if err != nil { 124 return nil, err 125 } 126 return &AddressCaller{contract: contract}, nil 127 } 128 129 // NewAddressTransactor creates a new write-only instance of Address, bound to a specific deployed contract. 130 func NewAddressTransactor(address common.Address, transactor bind.ContractTransactor) (*AddressTransactor, error) { 131 contract, err := bindAddress(address, nil, transactor, nil) 132 if err != nil { 133 return nil, err 134 } 135 return &AddressTransactor{contract: contract}, nil 136 } 137 138 // NewAddressFilterer creates a new log filterer instance of Address, bound to a specific deployed contract. 139 func NewAddressFilterer(address common.Address, filterer bind.ContractFilterer) (*AddressFilterer, error) { 140 contract, err := bindAddress(address, nil, nil, filterer) 141 if err != nil { 142 return nil, err 143 } 144 return &AddressFilterer{contract: contract}, nil 145 } 146 147 // bindAddress binds a generic wrapper to an already deployed contract. 148 func bindAddress(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 149 parsed, err := abi.JSON(strings.NewReader(AddressABI)) 150 if err != nil { 151 return nil, err 152 } 153 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 154 } 155 156 // Call invokes the (constant) contract method with params as input values and 157 // sets the output to result. The result type might be a single field for simple 158 // returns, a slice of interfaces for anonymous returns and a struct for named 159 // returns. 160 func (_Address *AddressRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 161 return _Address.Contract.AddressCaller.contract.Call(opts, result, method, params...) 162 } 163 164 // Transfer initiates a plain transaction to move funds to the contract, calling 165 // its default method if one is available. 166 func (_Address *AddressRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 167 return _Address.Contract.AddressTransactor.contract.Transfer(opts) 168 } 169 170 // Transact invokes the (paid) contract method with params as input values. 171 func (_Address *AddressRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 172 return _Address.Contract.AddressTransactor.contract.Transact(opts, method, params...) 173 } 174 175 // Call invokes the (constant) contract method with params as input values and 176 // sets the output to result. The result type might be a single field for simple 177 // returns, a slice of interfaces for anonymous returns and a struct for named 178 // returns. 179 func (_Address *AddressCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 180 return _Address.Contract.contract.Call(opts, result, method, params...) 181 } 182 183 // Transfer initiates a plain transaction to move funds to the contract, calling 184 // its default method if one is available. 185 func (_Address *AddressTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 186 return _Address.Contract.contract.Transfer(opts) 187 } 188 189 // Transact invokes the (paid) contract method with params as input values. 190 func (_Address *AddressTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 191 return _Address.Contract.contract.Transact(opts, method, params...) 192 } 193 194 // BridgeFeeABI is the input ABI used to generate the binding from. 195 const BridgeFeeABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"feeOfERC20\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeOfKLAY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"KLAYFeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"ERC20FeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"}]" 196 197 // BridgeFeeBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 198 const BridgeFeeBinRuntime = `` 199 200 // BridgeFeeFuncSigs maps the 4-byte function signature to its string representation. 201 var BridgeFeeFuncSigs = map[string]string{ 202 "488af871": "feeOfERC20(address)", 203 "c263b5d6": "feeOfKLAY()", 204 "b3f00674": "feeReceiver()", 205 } 206 207 // BridgeFee is an auto generated Go binding around a Klaytn contract. 208 type BridgeFee struct { 209 BridgeFeeCaller // Read-only binding to the contract 210 BridgeFeeTransactor // Write-only binding to the contract 211 BridgeFeeFilterer // Log filterer for contract events 212 } 213 214 // BridgeFeeCaller is an auto generated read-only Go binding around a Klaytn contract. 215 type BridgeFeeCaller struct { 216 contract *bind.BoundContract // Generic contract wrapper for the low level calls 217 } 218 219 // BridgeFeeTransactor is an auto generated write-only Go binding around a Klaytn contract. 220 type BridgeFeeTransactor struct { 221 contract *bind.BoundContract // Generic contract wrapper for the low level calls 222 } 223 224 // BridgeFeeFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 225 type BridgeFeeFilterer struct { 226 contract *bind.BoundContract // Generic contract wrapper for the low level calls 227 } 228 229 // BridgeFeeSession is an auto generated Go binding around a Klaytn contract, 230 // with pre-set call and transact options. 231 type BridgeFeeSession struct { 232 Contract *BridgeFee // Generic contract binding to set the session for 233 CallOpts bind.CallOpts // Call options to use throughout this session 234 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 235 } 236 237 // BridgeFeeCallerSession is an auto generated read-only Go binding around a Klaytn contract, 238 // with pre-set call options. 239 type BridgeFeeCallerSession struct { 240 Contract *BridgeFeeCaller // Generic contract caller binding to set the session for 241 CallOpts bind.CallOpts // Call options to use throughout this session 242 } 243 244 // BridgeFeeTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 245 // with pre-set transact options. 246 type BridgeFeeTransactorSession struct { 247 Contract *BridgeFeeTransactor // Generic contract transactor binding to set the session for 248 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 249 } 250 251 // BridgeFeeRaw is an auto generated low-level Go binding around a Klaytn contract. 252 type BridgeFeeRaw struct { 253 Contract *BridgeFee // Generic contract binding to access the raw methods on 254 } 255 256 // BridgeFeeCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 257 type BridgeFeeCallerRaw struct { 258 Contract *BridgeFeeCaller // Generic read-only contract binding to access the raw methods on 259 } 260 261 // BridgeFeeTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 262 type BridgeFeeTransactorRaw struct { 263 Contract *BridgeFeeTransactor // Generic write-only contract binding to access the raw methods on 264 } 265 266 // NewBridgeFee creates a new instance of BridgeFee, bound to a specific deployed contract. 267 func NewBridgeFee(address common.Address, backend bind.ContractBackend) (*BridgeFee, error) { 268 contract, err := bindBridgeFee(address, backend, backend, backend) 269 if err != nil { 270 return nil, err 271 } 272 return &BridgeFee{BridgeFeeCaller: BridgeFeeCaller{contract: contract}, BridgeFeeTransactor: BridgeFeeTransactor{contract: contract}, BridgeFeeFilterer: BridgeFeeFilterer{contract: contract}}, nil 273 } 274 275 // NewBridgeFeeCaller creates a new read-only instance of BridgeFee, bound to a specific deployed contract. 276 func NewBridgeFeeCaller(address common.Address, caller bind.ContractCaller) (*BridgeFeeCaller, error) { 277 contract, err := bindBridgeFee(address, caller, nil, nil) 278 if err != nil { 279 return nil, err 280 } 281 return &BridgeFeeCaller{contract: contract}, nil 282 } 283 284 // NewBridgeFeeTransactor creates a new write-only instance of BridgeFee, bound to a specific deployed contract. 285 func NewBridgeFeeTransactor(address common.Address, transactor bind.ContractTransactor) (*BridgeFeeTransactor, error) { 286 contract, err := bindBridgeFee(address, nil, transactor, nil) 287 if err != nil { 288 return nil, err 289 } 290 return &BridgeFeeTransactor{contract: contract}, nil 291 } 292 293 // NewBridgeFeeFilterer creates a new log filterer instance of BridgeFee, bound to a specific deployed contract. 294 func NewBridgeFeeFilterer(address common.Address, filterer bind.ContractFilterer) (*BridgeFeeFilterer, error) { 295 contract, err := bindBridgeFee(address, nil, nil, filterer) 296 if err != nil { 297 return nil, err 298 } 299 return &BridgeFeeFilterer{contract: contract}, nil 300 } 301 302 // bindBridgeFee binds a generic wrapper to an already deployed contract. 303 func bindBridgeFee(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 304 parsed, err := abi.JSON(strings.NewReader(BridgeFeeABI)) 305 if err != nil { 306 return nil, err 307 } 308 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 309 } 310 311 // Call invokes the (constant) contract method with params as input values and 312 // sets the output to result. The result type might be a single field for simple 313 // returns, a slice of interfaces for anonymous returns and a struct for named 314 // returns. 315 func (_BridgeFee *BridgeFeeRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 316 return _BridgeFee.Contract.BridgeFeeCaller.contract.Call(opts, result, method, params...) 317 } 318 319 // Transfer initiates a plain transaction to move funds to the contract, calling 320 // its default method if one is available. 321 func (_BridgeFee *BridgeFeeRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 322 return _BridgeFee.Contract.BridgeFeeTransactor.contract.Transfer(opts) 323 } 324 325 // Transact invokes the (paid) contract method with params as input values. 326 func (_BridgeFee *BridgeFeeRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 327 return _BridgeFee.Contract.BridgeFeeTransactor.contract.Transact(opts, method, params...) 328 } 329 330 // Call invokes the (constant) contract method with params as input values and 331 // sets the output to result. The result type might be a single field for simple 332 // returns, a slice of interfaces for anonymous returns and a struct for named 333 // returns. 334 func (_BridgeFee *BridgeFeeCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 335 return _BridgeFee.Contract.contract.Call(opts, result, method, params...) 336 } 337 338 // Transfer initiates a plain transaction to move funds to the contract, calling 339 // its default method if one is available. 340 func (_BridgeFee *BridgeFeeTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 341 return _BridgeFee.Contract.contract.Transfer(opts) 342 } 343 344 // Transact invokes the (paid) contract method with params as input values. 345 func (_BridgeFee *BridgeFeeTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 346 return _BridgeFee.Contract.contract.Transact(opts, method, params...) 347 } 348 349 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 350 // 351 // Solidity: function feeOfERC20(address ) view returns(uint256) 352 func (_BridgeFee *BridgeFeeCaller) FeeOfERC20(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 353 var ( 354 ret0 = new(*big.Int) 355 ) 356 out := ret0 357 err := _BridgeFee.contract.Call(opts, out, "feeOfERC20", arg0) 358 return *ret0, err 359 } 360 361 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 362 // 363 // Solidity: function feeOfERC20(address ) view returns(uint256) 364 func (_BridgeFee *BridgeFeeSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 365 return _BridgeFee.Contract.FeeOfERC20(&_BridgeFee.CallOpts, arg0) 366 } 367 368 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 369 // 370 // Solidity: function feeOfERC20(address ) view returns(uint256) 371 func (_BridgeFee *BridgeFeeCallerSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 372 return _BridgeFee.Contract.FeeOfERC20(&_BridgeFee.CallOpts, arg0) 373 } 374 375 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 376 // 377 // Solidity: function feeOfKLAY() view returns(uint256) 378 func (_BridgeFee *BridgeFeeCaller) FeeOfKLAY(opts *bind.CallOpts) (*big.Int, error) { 379 var ( 380 ret0 = new(*big.Int) 381 ) 382 out := ret0 383 err := _BridgeFee.contract.Call(opts, out, "feeOfKLAY") 384 return *ret0, err 385 } 386 387 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 388 // 389 // Solidity: function feeOfKLAY() view returns(uint256) 390 func (_BridgeFee *BridgeFeeSession) FeeOfKLAY() (*big.Int, error) { 391 return _BridgeFee.Contract.FeeOfKLAY(&_BridgeFee.CallOpts) 392 } 393 394 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 395 // 396 // Solidity: function feeOfKLAY() view returns(uint256) 397 func (_BridgeFee *BridgeFeeCallerSession) FeeOfKLAY() (*big.Int, error) { 398 return _BridgeFee.Contract.FeeOfKLAY(&_BridgeFee.CallOpts) 399 } 400 401 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 402 // 403 // Solidity: function feeReceiver() view returns(address) 404 func (_BridgeFee *BridgeFeeCaller) FeeReceiver(opts *bind.CallOpts) (common.Address, error) { 405 var ( 406 ret0 = new(common.Address) 407 ) 408 out := ret0 409 err := _BridgeFee.contract.Call(opts, out, "feeReceiver") 410 return *ret0, err 411 } 412 413 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 414 // 415 // Solidity: function feeReceiver() view returns(address) 416 func (_BridgeFee *BridgeFeeSession) FeeReceiver() (common.Address, error) { 417 return _BridgeFee.Contract.FeeReceiver(&_BridgeFee.CallOpts) 418 } 419 420 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 421 // 422 // Solidity: function feeReceiver() view returns(address) 423 func (_BridgeFee *BridgeFeeCallerSession) FeeReceiver() (common.Address, error) { 424 return _BridgeFee.Contract.FeeReceiver(&_BridgeFee.CallOpts) 425 } 426 427 // BridgeFeeERC20FeeChangedIterator is returned from FilterERC20FeeChanged and is used to iterate over the raw logs and unpacked data for ERC20FeeChanged events raised by the BridgeFee contract. 428 type BridgeFeeERC20FeeChangedIterator struct { 429 Event *BridgeFeeERC20FeeChanged // Event containing the contract specifics and raw log 430 431 contract *bind.BoundContract // Generic contract to use for unpacking event data 432 event string // Event name to use for unpacking event data 433 434 logs chan types.Log // Log channel receiving the found contract events 435 sub klaytn.Subscription // Subscription for errors, completion and termination 436 done bool // Whether the subscription completed delivering logs 437 fail error // Occurred error to stop iteration 438 } 439 440 // Next advances the iterator to the subsequent event, returning whether there 441 // are any more events found. In case of a retrieval or parsing error, false is 442 // returned and Error() can be queried for the exact failure. 443 func (it *BridgeFeeERC20FeeChangedIterator) Next() bool { 444 // If the iterator failed, stop iterating 445 if it.fail != nil { 446 return false 447 } 448 // If the iterator completed, deliver directly whatever's available 449 if it.done { 450 select { 451 case log := <-it.logs: 452 it.Event = new(BridgeFeeERC20FeeChanged) 453 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 454 it.fail = err 455 return false 456 } 457 it.Event.Raw = log 458 return true 459 460 default: 461 return false 462 } 463 } 464 // Iterator still in progress, wait for either a data or an error event 465 select { 466 case log := <-it.logs: 467 it.Event = new(BridgeFeeERC20FeeChanged) 468 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 469 it.fail = err 470 return false 471 } 472 it.Event.Raw = log 473 return true 474 475 case err := <-it.sub.Err(): 476 it.done = true 477 it.fail = err 478 return it.Next() 479 } 480 } 481 482 // Error returns any retrieval or parsing error occurred during filtering. 483 func (it *BridgeFeeERC20FeeChangedIterator) Error() error { 484 return it.fail 485 } 486 487 // Close terminates the iteration process, releasing any pending underlying 488 // resources. 489 func (it *BridgeFeeERC20FeeChangedIterator) Close() error { 490 it.sub.Unsubscribe() 491 return nil 492 } 493 494 // BridgeFeeERC20FeeChanged represents a ERC20FeeChanged event raised by the BridgeFee contract. 495 type BridgeFeeERC20FeeChanged struct { 496 Token common.Address 497 Fee *big.Int 498 Raw types.Log // Blockchain specific contextual infos 499 } 500 501 // FilterERC20FeeChanged is a free log retrieval operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 502 // 503 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 504 func (_BridgeFee *BridgeFeeFilterer) FilterERC20FeeChanged(opts *bind.FilterOpts, token []common.Address, fee []*big.Int) (*BridgeFeeERC20FeeChangedIterator, error) { 505 506 var tokenRule []interface{} 507 for _, tokenItem := range token { 508 tokenRule = append(tokenRule, tokenItem) 509 } 510 var feeRule []interface{} 511 for _, feeItem := range fee { 512 feeRule = append(feeRule, feeItem) 513 } 514 515 logs, sub, err := _BridgeFee.contract.FilterLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 516 if err != nil { 517 return nil, err 518 } 519 return &BridgeFeeERC20FeeChangedIterator{contract: _BridgeFee.contract, event: "ERC20FeeChanged", logs: logs, sub: sub}, nil 520 } 521 522 // WatchERC20FeeChanged is a free log subscription operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 523 // 524 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 525 func (_BridgeFee *BridgeFeeFilterer) WatchERC20FeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeFeeERC20FeeChanged, token []common.Address, fee []*big.Int) (event.Subscription, error) { 526 527 var tokenRule []interface{} 528 for _, tokenItem := range token { 529 tokenRule = append(tokenRule, tokenItem) 530 } 531 var feeRule []interface{} 532 for _, feeItem := range fee { 533 feeRule = append(feeRule, feeItem) 534 } 535 536 logs, sub, err := _BridgeFee.contract.WatchLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 537 if err != nil { 538 return nil, err 539 } 540 return event.NewSubscription(func(quit <-chan struct{}) error { 541 defer sub.Unsubscribe() 542 for { 543 select { 544 case log := <-logs: 545 // New log arrived, parse the event and forward to the user 546 event := new(BridgeFeeERC20FeeChanged) 547 if err := _BridgeFee.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 548 return err 549 } 550 event.Raw = log 551 552 select { 553 case sink <- event: 554 case err := <-sub.Err(): 555 return err 556 case <-quit: 557 return nil 558 } 559 case err := <-sub.Err(): 560 return err 561 case <-quit: 562 return nil 563 } 564 } 565 }), nil 566 } 567 568 // ParseERC20FeeChanged is a log parse operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 569 // 570 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 571 func (_BridgeFee *BridgeFeeFilterer) ParseERC20FeeChanged(log types.Log) (*BridgeFeeERC20FeeChanged, error) { 572 event := new(BridgeFeeERC20FeeChanged) 573 if err := _BridgeFee.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 574 return nil, err 575 } 576 return event, nil 577 } 578 579 // BridgeFeeFeeReceiverChangedIterator is returned from FilterFeeReceiverChanged and is used to iterate over the raw logs and unpacked data for FeeReceiverChanged events raised by the BridgeFee contract. 580 type BridgeFeeFeeReceiverChangedIterator struct { 581 Event *BridgeFeeFeeReceiverChanged // Event containing the contract specifics and raw log 582 583 contract *bind.BoundContract // Generic contract to use for unpacking event data 584 event string // Event name to use for unpacking event data 585 586 logs chan types.Log // Log channel receiving the found contract events 587 sub klaytn.Subscription // Subscription for errors, completion and termination 588 done bool // Whether the subscription completed delivering logs 589 fail error // Occurred error to stop iteration 590 } 591 592 // Next advances the iterator to the subsequent event, returning whether there 593 // are any more events found. In case of a retrieval or parsing error, false is 594 // returned and Error() can be queried for the exact failure. 595 func (it *BridgeFeeFeeReceiverChangedIterator) Next() bool { 596 // If the iterator failed, stop iterating 597 if it.fail != nil { 598 return false 599 } 600 // If the iterator completed, deliver directly whatever's available 601 if it.done { 602 select { 603 case log := <-it.logs: 604 it.Event = new(BridgeFeeFeeReceiverChanged) 605 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 606 it.fail = err 607 return false 608 } 609 it.Event.Raw = log 610 return true 611 612 default: 613 return false 614 } 615 } 616 // Iterator still in progress, wait for either a data or an error event 617 select { 618 case log := <-it.logs: 619 it.Event = new(BridgeFeeFeeReceiverChanged) 620 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 621 it.fail = err 622 return false 623 } 624 it.Event.Raw = log 625 return true 626 627 case err := <-it.sub.Err(): 628 it.done = true 629 it.fail = err 630 return it.Next() 631 } 632 } 633 634 // Error returns any retrieval or parsing error occurred during filtering. 635 func (it *BridgeFeeFeeReceiverChangedIterator) Error() error { 636 return it.fail 637 } 638 639 // Close terminates the iteration process, releasing any pending underlying 640 // resources. 641 func (it *BridgeFeeFeeReceiverChangedIterator) Close() error { 642 it.sub.Unsubscribe() 643 return nil 644 } 645 646 // BridgeFeeFeeReceiverChanged represents a FeeReceiverChanged event raised by the BridgeFee contract. 647 type BridgeFeeFeeReceiverChanged struct { 648 FeeReceiver common.Address 649 Raw types.Log // Blockchain specific contextual infos 650 } 651 652 // FilterFeeReceiverChanged is a free log retrieval operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 653 // 654 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 655 func (_BridgeFee *BridgeFeeFilterer) FilterFeeReceiverChanged(opts *bind.FilterOpts, feeReceiver []common.Address) (*BridgeFeeFeeReceiverChangedIterator, error) { 656 657 var feeReceiverRule []interface{} 658 for _, feeReceiverItem := range feeReceiver { 659 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 660 } 661 662 logs, sub, err := _BridgeFee.contract.FilterLogs(opts, "FeeReceiverChanged", feeReceiverRule) 663 if err != nil { 664 return nil, err 665 } 666 return &BridgeFeeFeeReceiverChangedIterator{contract: _BridgeFee.contract, event: "FeeReceiverChanged", logs: logs, sub: sub}, nil 667 } 668 669 // WatchFeeReceiverChanged is a free log subscription operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 670 // 671 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 672 func (_BridgeFee *BridgeFeeFilterer) WatchFeeReceiverChanged(opts *bind.WatchOpts, sink chan<- *BridgeFeeFeeReceiverChanged, feeReceiver []common.Address) (event.Subscription, error) { 673 674 var feeReceiverRule []interface{} 675 for _, feeReceiverItem := range feeReceiver { 676 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 677 } 678 679 logs, sub, err := _BridgeFee.contract.WatchLogs(opts, "FeeReceiverChanged", feeReceiverRule) 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(BridgeFeeFeeReceiverChanged) 690 if err := _BridgeFee.contract.UnpackLog(event, "FeeReceiverChanged", 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 // ParseFeeReceiverChanged is a log parse operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 712 // 713 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 714 func (_BridgeFee *BridgeFeeFilterer) ParseFeeReceiverChanged(log types.Log) (*BridgeFeeFeeReceiverChanged, error) { 715 event := new(BridgeFeeFeeReceiverChanged) 716 if err := _BridgeFee.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 717 return nil, err 718 } 719 return event, nil 720 } 721 722 // BridgeFeeKLAYFeeChangedIterator is returned from FilterKLAYFeeChanged and is used to iterate over the raw logs and unpacked data for KLAYFeeChanged events raised by the BridgeFee contract. 723 type BridgeFeeKLAYFeeChangedIterator struct { 724 Event *BridgeFeeKLAYFeeChanged // Event containing the contract specifics and raw log 725 726 contract *bind.BoundContract // Generic contract to use for unpacking event data 727 event string // Event name to use for unpacking event data 728 729 logs chan types.Log // Log channel receiving the found contract events 730 sub klaytn.Subscription // Subscription for errors, completion and termination 731 done bool // Whether the subscription completed delivering logs 732 fail error // Occurred error to stop iteration 733 } 734 735 // Next advances the iterator to the subsequent event, returning whether there 736 // are any more events found. In case of a retrieval or parsing error, false is 737 // returned and Error() can be queried for the exact failure. 738 func (it *BridgeFeeKLAYFeeChangedIterator) Next() bool { 739 // If the iterator failed, stop iterating 740 if it.fail != nil { 741 return false 742 } 743 // If the iterator completed, deliver directly whatever's available 744 if it.done { 745 select { 746 case log := <-it.logs: 747 it.Event = new(BridgeFeeKLAYFeeChanged) 748 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 749 it.fail = err 750 return false 751 } 752 it.Event.Raw = log 753 return true 754 755 default: 756 return false 757 } 758 } 759 // Iterator still in progress, wait for either a data or an error event 760 select { 761 case log := <-it.logs: 762 it.Event = new(BridgeFeeKLAYFeeChanged) 763 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 764 it.fail = err 765 return false 766 } 767 it.Event.Raw = log 768 return true 769 770 case err := <-it.sub.Err(): 771 it.done = true 772 it.fail = err 773 return it.Next() 774 } 775 } 776 777 // Error returns any retrieval or parsing error occurred during filtering. 778 func (it *BridgeFeeKLAYFeeChangedIterator) Error() error { 779 return it.fail 780 } 781 782 // Close terminates the iteration process, releasing any pending underlying 783 // resources. 784 func (it *BridgeFeeKLAYFeeChangedIterator) Close() error { 785 it.sub.Unsubscribe() 786 return nil 787 } 788 789 // BridgeFeeKLAYFeeChanged represents a KLAYFeeChanged event raised by the BridgeFee contract. 790 type BridgeFeeKLAYFeeChanged struct { 791 Fee *big.Int 792 Raw types.Log // Blockchain specific contextual infos 793 } 794 795 // FilterKLAYFeeChanged is a free log retrieval operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 796 // 797 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 798 func (_BridgeFee *BridgeFeeFilterer) FilterKLAYFeeChanged(opts *bind.FilterOpts, fee []*big.Int) (*BridgeFeeKLAYFeeChangedIterator, error) { 799 800 var feeRule []interface{} 801 for _, feeItem := range fee { 802 feeRule = append(feeRule, feeItem) 803 } 804 805 logs, sub, err := _BridgeFee.contract.FilterLogs(opts, "KLAYFeeChanged", feeRule) 806 if err != nil { 807 return nil, err 808 } 809 return &BridgeFeeKLAYFeeChangedIterator{contract: _BridgeFee.contract, event: "KLAYFeeChanged", logs: logs, sub: sub}, nil 810 } 811 812 // WatchKLAYFeeChanged is a free log subscription operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 813 // 814 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 815 func (_BridgeFee *BridgeFeeFilterer) WatchKLAYFeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeFeeKLAYFeeChanged, fee []*big.Int) (event.Subscription, error) { 816 817 var feeRule []interface{} 818 for _, feeItem := range fee { 819 feeRule = append(feeRule, feeItem) 820 } 821 822 logs, sub, err := _BridgeFee.contract.WatchLogs(opts, "KLAYFeeChanged", feeRule) 823 if err != nil { 824 return nil, err 825 } 826 return event.NewSubscription(func(quit <-chan struct{}) error { 827 defer sub.Unsubscribe() 828 for { 829 select { 830 case log := <-logs: 831 // New log arrived, parse the event and forward to the user 832 event := new(BridgeFeeKLAYFeeChanged) 833 if err := _BridgeFee.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 834 return err 835 } 836 event.Raw = log 837 838 select { 839 case sink <- event: 840 case err := <-sub.Err(): 841 return err 842 case <-quit: 843 return nil 844 } 845 case err := <-sub.Err(): 846 return err 847 case <-quit: 848 return nil 849 } 850 } 851 }), nil 852 } 853 854 // ParseKLAYFeeChanged is a log parse operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 855 // 856 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 857 func (_BridgeFee *BridgeFeeFilterer) ParseKLAYFeeChanged(log types.Log) (*BridgeFeeKLAYFeeChanged, error) { 858 event := new(BridgeFeeKLAYFeeChanged) 859 if err := _BridgeFee.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 860 return nil, err 861 } 862 return event, nil 863 } 864 865 // BridgeHandledRequestsABI is the input ABI used to generate the binding from. 866 const BridgeHandledRequestsABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"handledRequestTx\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}]" 867 868 // BridgeHandledRequestsBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 869 const BridgeHandledRequestsBinRuntime = `6080604052348015600f57600080fd5b506004361060285760003560e01c80638a75eee214602d575b600080fd5b604760048036036020811015604157600080fd5b5035605b565b604080519115158252519081900360200190f35b60006020819052908152604090205460ff168156fea165627a7a7230582054bec1bfef8dbf6d9ea6ecdde40b22f8311c9878c20f777a262b732b023f6e870029` 870 871 // BridgeHandledRequestsFuncSigs maps the 4-byte function signature to its string representation. 872 var BridgeHandledRequestsFuncSigs = map[string]string{ 873 "8a75eee2": "handledRequestTx(bytes32)", 874 } 875 876 // BridgeHandledRequestsBin is the compiled bytecode used for deploying new contracts. 877 var BridgeHandledRequestsBin = "0x6080604052348015600f57600080fd5b50609c8061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80638a75eee214602d575b600080fd5b604760048036036020811015604157600080fd5b5035605b565b604080519115158252519081900360200190f35b60006020819052908152604090205460ff168156fea165627a7a7230582054bec1bfef8dbf6d9ea6ecdde40b22f8311c9878c20f777a262b732b023f6e870029" 878 879 // DeployBridgeHandledRequests deploys a new Klaytn contract, binding an instance of BridgeHandledRequests to it. 880 func DeployBridgeHandledRequests(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *BridgeHandledRequests, error) { 881 parsed, err := abi.JSON(strings.NewReader(BridgeHandledRequestsABI)) 882 if err != nil { 883 return common.Address{}, nil, nil, err 884 } 885 886 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(BridgeHandledRequestsBin), backend) 887 if err != nil { 888 return common.Address{}, nil, nil, err 889 } 890 return address, tx, &BridgeHandledRequests{BridgeHandledRequestsCaller: BridgeHandledRequestsCaller{contract: contract}, BridgeHandledRequestsTransactor: BridgeHandledRequestsTransactor{contract: contract}, BridgeHandledRequestsFilterer: BridgeHandledRequestsFilterer{contract: contract}}, nil 891 } 892 893 // BridgeHandledRequests is an auto generated Go binding around a Klaytn contract. 894 type BridgeHandledRequests struct { 895 BridgeHandledRequestsCaller // Read-only binding to the contract 896 BridgeHandledRequestsTransactor // Write-only binding to the contract 897 BridgeHandledRequestsFilterer // Log filterer for contract events 898 } 899 900 // BridgeHandledRequestsCaller is an auto generated read-only Go binding around a Klaytn contract. 901 type BridgeHandledRequestsCaller struct { 902 contract *bind.BoundContract // Generic contract wrapper for the low level calls 903 } 904 905 // BridgeHandledRequestsTransactor is an auto generated write-only Go binding around a Klaytn contract. 906 type BridgeHandledRequestsTransactor struct { 907 contract *bind.BoundContract // Generic contract wrapper for the low level calls 908 } 909 910 // BridgeHandledRequestsFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 911 type BridgeHandledRequestsFilterer struct { 912 contract *bind.BoundContract // Generic contract wrapper for the low level calls 913 } 914 915 // BridgeHandledRequestsSession is an auto generated Go binding around a Klaytn contract, 916 // with pre-set call and transact options. 917 type BridgeHandledRequestsSession struct { 918 Contract *BridgeHandledRequests // Generic contract binding to set the session for 919 CallOpts bind.CallOpts // Call options to use throughout this session 920 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 921 } 922 923 // BridgeHandledRequestsCallerSession is an auto generated read-only Go binding around a Klaytn contract, 924 // with pre-set call options. 925 type BridgeHandledRequestsCallerSession struct { 926 Contract *BridgeHandledRequestsCaller // Generic contract caller binding to set the session for 927 CallOpts bind.CallOpts // Call options to use throughout this session 928 } 929 930 // BridgeHandledRequestsTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 931 // with pre-set transact options. 932 type BridgeHandledRequestsTransactorSession struct { 933 Contract *BridgeHandledRequestsTransactor // Generic contract transactor binding to set the session for 934 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 935 } 936 937 // BridgeHandledRequestsRaw is an auto generated low-level Go binding around a Klaytn contract. 938 type BridgeHandledRequestsRaw struct { 939 Contract *BridgeHandledRequests // Generic contract binding to access the raw methods on 940 } 941 942 // BridgeHandledRequestsCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 943 type BridgeHandledRequestsCallerRaw struct { 944 Contract *BridgeHandledRequestsCaller // Generic read-only contract binding to access the raw methods on 945 } 946 947 // BridgeHandledRequestsTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 948 type BridgeHandledRequestsTransactorRaw struct { 949 Contract *BridgeHandledRequestsTransactor // Generic write-only contract binding to access the raw methods on 950 } 951 952 // NewBridgeHandledRequests creates a new instance of BridgeHandledRequests, bound to a specific deployed contract. 953 func NewBridgeHandledRequests(address common.Address, backend bind.ContractBackend) (*BridgeHandledRequests, error) { 954 contract, err := bindBridgeHandledRequests(address, backend, backend, backend) 955 if err != nil { 956 return nil, err 957 } 958 return &BridgeHandledRequests{BridgeHandledRequestsCaller: BridgeHandledRequestsCaller{contract: contract}, BridgeHandledRequestsTransactor: BridgeHandledRequestsTransactor{contract: contract}, BridgeHandledRequestsFilterer: BridgeHandledRequestsFilterer{contract: contract}}, nil 959 } 960 961 // NewBridgeHandledRequestsCaller creates a new read-only instance of BridgeHandledRequests, bound to a specific deployed contract. 962 func NewBridgeHandledRequestsCaller(address common.Address, caller bind.ContractCaller) (*BridgeHandledRequestsCaller, error) { 963 contract, err := bindBridgeHandledRequests(address, caller, nil, nil) 964 if err != nil { 965 return nil, err 966 } 967 return &BridgeHandledRequestsCaller{contract: contract}, nil 968 } 969 970 // NewBridgeHandledRequestsTransactor creates a new write-only instance of BridgeHandledRequests, bound to a specific deployed contract. 971 func NewBridgeHandledRequestsTransactor(address common.Address, transactor bind.ContractTransactor) (*BridgeHandledRequestsTransactor, error) { 972 contract, err := bindBridgeHandledRequests(address, nil, transactor, nil) 973 if err != nil { 974 return nil, err 975 } 976 return &BridgeHandledRequestsTransactor{contract: contract}, nil 977 } 978 979 // NewBridgeHandledRequestsFilterer creates a new log filterer instance of BridgeHandledRequests, bound to a specific deployed contract. 980 func NewBridgeHandledRequestsFilterer(address common.Address, filterer bind.ContractFilterer) (*BridgeHandledRequestsFilterer, error) { 981 contract, err := bindBridgeHandledRequests(address, nil, nil, filterer) 982 if err != nil { 983 return nil, err 984 } 985 return &BridgeHandledRequestsFilterer{contract: contract}, nil 986 } 987 988 // bindBridgeHandledRequests binds a generic wrapper to an already deployed contract. 989 func bindBridgeHandledRequests(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 990 parsed, err := abi.JSON(strings.NewReader(BridgeHandledRequestsABI)) 991 if err != nil { 992 return nil, err 993 } 994 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 995 } 996 997 // Call invokes the (constant) contract method with params as input values and 998 // sets the output to result. The result type might be a single field for simple 999 // returns, a slice of interfaces for anonymous returns and a struct for named 1000 // returns. 1001 func (_BridgeHandledRequests *BridgeHandledRequestsRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1002 return _BridgeHandledRequests.Contract.BridgeHandledRequestsCaller.contract.Call(opts, result, method, params...) 1003 } 1004 1005 // Transfer initiates a plain transaction to move funds to the contract, calling 1006 // its default method if one is available. 1007 func (_BridgeHandledRequests *BridgeHandledRequestsRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1008 return _BridgeHandledRequests.Contract.BridgeHandledRequestsTransactor.contract.Transfer(opts) 1009 } 1010 1011 // Transact invokes the (paid) contract method with params as input values. 1012 func (_BridgeHandledRequests *BridgeHandledRequestsRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1013 return _BridgeHandledRequests.Contract.BridgeHandledRequestsTransactor.contract.Transact(opts, method, params...) 1014 } 1015 1016 // Call invokes the (constant) contract method with params as input values and 1017 // sets the output to result. The result type might be a single field for simple 1018 // returns, a slice of interfaces for anonymous returns and a struct for named 1019 // returns. 1020 func (_BridgeHandledRequests *BridgeHandledRequestsCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1021 return _BridgeHandledRequests.Contract.contract.Call(opts, result, method, params...) 1022 } 1023 1024 // Transfer initiates a plain transaction to move funds to the contract, calling 1025 // its default method if one is available. 1026 func (_BridgeHandledRequests *BridgeHandledRequestsTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1027 return _BridgeHandledRequests.Contract.contract.Transfer(opts) 1028 } 1029 1030 // Transact invokes the (paid) contract method with params as input values. 1031 func (_BridgeHandledRequests *BridgeHandledRequestsTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1032 return _BridgeHandledRequests.Contract.contract.Transact(opts, method, params...) 1033 } 1034 1035 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 1036 // 1037 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 1038 func (_BridgeHandledRequests *BridgeHandledRequestsCaller) HandledRequestTx(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { 1039 var ( 1040 ret0 = new(bool) 1041 ) 1042 out := ret0 1043 err := _BridgeHandledRequests.contract.Call(opts, out, "handledRequestTx", arg0) 1044 return *ret0, err 1045 } 1046 1047 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 1048 // 1049 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 1050 func (_BridgeHandledRequests *BridgeHandledRequestsSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 1051 return _BridgeHandledRequests.Contract.HandledRequestTx(&_BridgeHandledRequests.CallOpts, arg0) 1052 } 1053 1054 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 1055 // 1056 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 1057 func (_BridgeHandledRequests *BridgeHandledRequestsCallerSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 1058 return _BridgeHandledRequests.Contract.HandledRequestTx(&_BridgeHandledRequests.CallOpts, arg0) 1059 } 1060 1061 // BridgeOperatorABI is the input ABI used to generate the binding from. 1062 const BridgeOperatorABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"operators\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OPERATOR\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"operatorThresholds\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"closedValueTransferVotes\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"configurationNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOperatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"operatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"deregisterOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_voteType\",\"type\":\"uint8\"},{\"name\":\"_threshold\",\"type\":\"uint8\"}],\"name\":\"setOperatorThreshold\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}]" 1063 1064 // BridgeOperatorBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 1065 const BridgeOperatorBinRuntime = `` 1066 1067 // BridgeOperatorFuncSigs maps the 4-byte function signature to its string representation. 1068 var BridgeOperatorFuncSigs = map[string]string{ 1069 "3a3099d1": "MAX_OPERATOR()", 1070 "9832c1d7": "closedValueTransferVotes(uint64)", 1071 "ac6fff0b": "configurationNonce()", 1072 "d8cf98ca": "deregisterOperator(address)", 1073 "b2c01030": "getOperatorList()", 1074 "8f32d59b": "isOwner()", 1075 "cb38f407": "operatorList(uint256)", 1076 "5526f76b": "operatorThresholds(uint8)", 1077 "13e7c9d8": "operators(address)", 1078 "8da5cb5b": "owner()", 1079 "3682a450": "registerOperator(address)", 1080 "715018a6": "renounceOwnership()", 1081 "ee2aec65": "setOperatorThreshold(uint8,uint8)", 1082 "f2fde38b": "transferOwnership(address)", 1083 } 1084 1085 // BridgeOperator is an auto generated Go binding around a Klaytn contract. 1086 type BridgeOperator struct { 1087 BridgeOperatorCaller // Read-only binding to the contract 1088 BridgeOperatorTransactor // Write-only binding to the contract 1089 BridgeOperatorFilterer // Log filterer for contract events 1090 } 1091 1092 // BridgeOperatorCaller is an auto generated read-only Go binding around a Klaytn contract. 1093 type BridgeOperatorCaller struct { 1094 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1095 } 1096 1097 // BridgeOperatorTransactor is an auto generated write-only Go binding around a Klaytn contract. 1098 type BridgeOperatorTransactor struct { 1099 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1100 } 1101 1102 // BridgeOperatorFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 1103 type BridgeOperatorFilterer struct { 1104 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1105 } 1106 1107 // BridgeOperatorSession is an auto generated Go binding around a Klaytn contract, 1108 // with pre-set call and transact options. 1109 type BridgeOperatorSession struct { 1110 Contract *BridgeOperator // Generic contract binding to set the session for 1111 CallOpts bind.CallOpts // Call options to use throughout this session 1112 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1113 } 1114 1115 // BridgeOperatorCallerSession is an auto generated read-only Go binding around a Klaytn contract, 1116 // with pre-set call options. 1117 type BridgeOperatorCallerSession struct { 1118 Contract *BridgeOperatorCaller // Generic contract caller binding to set the session for 1119 CallOpts bind.CallOpts // Call options to use throughout this session 1120 } 1121 1122 // BridgeOperatorTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 1123 // with pre-set transact options. 1124 type BridgeOperatorTransactorSession struct { 1125 Contract *BridgeOperatorTransactor // Generic contract transactor binding to set the session for 1126 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1127 } 1128 1129 // BridgeOperatorRaw is an auto generated low-level Go binding around a Klaytn contract. 1130 type BridgeOperatorRaw struct { 1131 Contract *BridgeOperator // Generic contract binding to access the raw methods on 1132 } 1133 1134 // BridgeOperatorCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 1135 type BridgeOperatorCallerRaw struct { 1136 Contract *BridgeOperatorCaller // Generic read-only contract binding to access the raw methods on 1137 } 1138 1139 // BridgeOperatorTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 1140 type BridgeOperatorTransactorRaw struct { 1141 Contract *BridgeOperatorTransactor // Generic write-only contract binding to access the raw methods on 1142 } 1143 1144 // NewBridgeOperator creates a new instance of BridgeOperator, bound to a specific deployed contract. 1145 func NewBridgeOperator(address common.Address, backend bind.ContractBackend) (*BridgeOperator, error) { 1146 contract, err := bindBridgeOperator(address, backend, backend, backend) 1147 if err != nil { 1148 return nil, err 1149 } 1150 return &BridgeOperator{BridgeOperatorCaller: BridgeOperatorCaller{contract: contract}, BridgeOperatorTransactor: BridgeOperatorTransactor{contract: contract}, BridgeOperatorFilterer: BridgeOperatorFilterer{contract: contract}}, nil 1151 } 1152 1153 // NewBridgeOperatorCaller creates a new read-only instance of BridgeOperator, bound to a specific deployed contract. 1154 func NewBridgeOperatorCaller(address common.Address, caller bind.ContractCaller) (*BridgeOperatorCaller, error) { 1155 contract, err := bindBridgeOperator(address, caller, nil, nil) 1156 if err != nil { 1157 return nil, err 1158 } 1159 return &BridgeOperatorCaller{contract: contract}, nil 1160 } 1161 1162 // NewBridgeOperatorTransactor creates a new write-only instance of BridgeOperator, bound to a specific deployed contract. 1163 func NewBridgeOperatorTransactor(address common.Address, transactor bind.ContractTransactor) (*BridgeOperatorTransactor, error) { 1164 contract, err := bindBridgeOperator(address, nil, transactor, nil) 1165 if err != nil { 1166 return nil, err 1167 } 1168 return &BridgeOperatorTransactor{contract: contract}, nil 1169 } 1170 1171 // NewBridgeOperatorFilterer creates a new log filterer instance of BridgeOperator, bound to a specific deployed contract. 1172 func NewBridgeOperatorFilterer(address common.Address, filterer bind.ContractFilterer) (*BridgeOperatorFilterer, error) { 1173 contract, err := bindBridgeOperator(address, nil, nil, filterer) 1174 if err != nil { 1175 return nil, err 1176 } 1177 return &BridgeOperatorFilterer{contract: contract}, nil 1178 } 1179 1180 // bindBridgeOperator binds a generic wrapper to an already deployed contract. 1181 func bindBridgeOperator(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 1182 parsed, err := abi.JSON(strings.NewReader(BridgeOperatorABI)) 1183 if err != nil { 1184 return nil, err 1185 } 1186 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 1187 } 1188 1189 // Call invokes the (constant) contract method with params as input values and 1190 // sets the output to result. The result type might be a single field for simple 1191 // returns, a slice of interfaces for anonymous returns and a struct for named 1192 // returns. 1193 func (_BridgeOperator *BridgeOperatorRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1194 return _BridgeOperator.Contract.BridgeOperatorCaller.contract.Call(opts, result, method, params...) 1195 } 1196 1197 // Transfer initiates a plain transaction to move funds to the contract, calling 1198 // its default method if one is available. 1199 func (_BridgeOperator *BridgeOperatorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1200 return _BridgeOperator.Contract.BridgeOperatorTransactor.contract.Transfer(opts) 1201 } 1202 1203 // Transact invokes the (paid) contract method with params as input values. 1204 func (_BridgeOperator *BridgeOperatorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1205 return _BridgeOperator.Contract.BridgeOperatorTransactor.contract.Transact(opts, method, params...) 1206 } 1207 1208 // Call invokes the (constant) contract method with params as input values and 1209 // sets the output to result. The result type might be a single field for simple 1210 // returns, a slice of interfaces for anonymous returns and a struct for named 1211 // returns. 1212 func (_BridgeOperator *BridgeOperatorCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1213 return _BridgeOperator.Contract.contract.Call(opts, result, method, params...) 1214 } 1215 1216 // Transfer initiates a plain transaction to move funds to the contract, calling 1217 // its default method if one is available. 1218 func (_BridgeOperator *BridgeOperatorTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1219 return _BridgeOperator.Contract.contract.Transfer(opts) 1220 } 1221 1222 // Transact invokes the (paid) contract method with params as input values. 1223 func (_BridgeOperator *BridgeOperatorTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1224 return _BridgeOperator.Contract.contract.Transact(opts, method, params...) 1225 } 1226 1227 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 1228 // 1229 // Solidity: function MAX_OPERATOR() view returns(uint64) 1230 func (_BridgeOperator *BridgeOperatorCaller) MAXOPERATOR(opts *bind.CallOpts) (uint64, error) { 1231 var ( 1232 ret0 = new(uint64) 1233 ) 1234 out := ret0 1235 err := _BridgeOperator.contract.Call(opts, out, "MAX_OPERATOR") 1236 return *ret0, err 1237 } 1238 1239 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 1240 // 1241 // Solidity: function MAX_OPERATOR() view returns(uint64) 1242 func (_BridgeOperator *BridgeOperatorSession) MAXOPERATOR() (uint64, error) { 1243 return _BridgeOperator.Contract.MAXOPERATOR(&_BridgeOperator.CallOpts) 1244 } 1245 1246 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 1247 // 1248 // Solidity: function MAX_OPERATOR() view returns(uint64) 1249 func (_BridgeOperator *BridgeOperatorCallerSession) MAXOPERATOR() (uint64, error) { 1250 return _BridgeOperator.Contract.MAXOPERATOR(&_BridgeOperator.CallOpts) 1251 } 1252 1253 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 1254 // 1255 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 1256 func (_BridgeOperator *BridgeOperatorCaller) ClosedValueTransferVotes(opts *bind.CallOpts, arg0 uint64) (bool, error) { 1257 var ( 1258 ret0 = new(bool) 1259 ) 1260 out := ret0 1261 err := _BridgeOperator.contract.Call(opts, out, "closedValueTransferVotes", arg0) 1262 return *ret0, err 1263 } 1264 1265 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 1266 // 1267 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 1268 func (_BridgeOperator *BridgeOperatorSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 1269 return _BridgeOperator.Contract.ClosedValueTransferVotes(&_BridgeOperator.CallOpts, arg0) 1270 } 1271 1272 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 1273 // 1274 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 1275 func (_BridgeOperator *BridgeOperatorCallerSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 1276 return _BridgeOperator.Contract.ClosedValueTransferVotes(&_BridgeOperator.CallOpts, arg0) 1277 } 1278 1279 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 1280 // 1281 // Solidity: function configurationNonce() view returns(uint64) 1282 func (_BridgeOperator *BridgeOperatorCaller) ConfigurationNonce(opts *bind.CallOpts) (uint64, error) { 1283 var ( 1284 ret0 = new(uint64) 1285 ) 1286 out := ret0 1287 err := _BridgeOperator.contract.Call(opts, out, "configurationNonce") 1288 return *ret0, err 1289 } 1290 1291 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 1292 // 1293 // Solidity: function configurationNonce() view returns(uint64) 1294 func (_BridgeOperator *BridgeOperatorSession) ConfigurationNonce() (uint64, error) { 1295 return _BridgeOperator.Contract.ConfigurationNonce(&_BridgeOperator.CallOpts) 1296 } 1297 1298 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 1299 // 1300 // Solidity: function configurationNonce() view returns(uint64) 1301 func (_BridgeOperator *BridgeOperatorCallerSession) ConfigurationNonce() (uint64, error) { 1302 return _BridgeOperator.Contract.ConfigurationNonce(&_BridgeOperator.CallOpts) 1303 } 1304 1305 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 1306 // 1307 // Solidity: function getOperatorList() view returns(address[]) 1308 func (_BridgeOperator *BridgeOperatorCaller) GetOperatorList(opts *bind.CallOpts) ([]common.Address, error) { 1309 var ( 1310 ret0 = new([]common.Address) 1311 ) 1312 out := ret0 1313 err := _BridgeOperator.contract.Call(opts, out, "getOperatorList") 1314 return *ret0, err 1315 } 1316 1317 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 1318 // 1319 // Solidity: function getOperatorList() view returns(address[]) 1320 func (_BridgeOperator *BridgeOperatorSession) GetOperatorList() ([]common.Address, error) { 1321 return _BridgeOperator.Contract.GetOperatorList(&_BridgeOperator.CallOpts) 1322 } 1323 1324 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 1325 // 1326 // Solidity: function getOperatorList() view returns(address[]) 1327 func (_BridgeOperator *BridgeOperatorCallerSession) GetOperatorList() ([]common.Address, error) { 1328 return _BridgeOperator.Contract.GetOperatorList(&_BridgeOperator.CallOpts) 1329 } 1330 1331 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1332 // 1333 // Solidity: function isOwner() view returns(bool) 1334 func (_BridgeOperator *BridgeOperatorCaller) IsOwner(opts *bind.CallOpts) (bool, error) { 1335 var ( 1336 ret0 = new(bool) 1337 ) 1338 out := ret0 1339 err := _BridgeOperator.contract.Call(opts, out, "isOwner") 1340 return *ret0, err 1341 } 1342 1343 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1344 // 1345 // Solidity: function isOwner() view returns(bool) 1346 func (_BridgeOperator *BridgeOperatorSession) IsOwner() (bool, error) { 1347 return _BridgeOperator.Contract.IsOwner(&_BridgeOperator.CallOpts) 1348 } 1349 1350 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1351 // 1352 // Solidity: function isOwner() view returns(bool) 1353 func (_BridgeOperator *BridgeOperatorCallerSession) IsOwner() (bool, error) { 1354 return _BridgeOperator.Contract.IsOwner(&_BridgeOperator.CallOpts) 1355 } 1356 1357 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 1358 // 1359 // Solidity: function operatorList(uint256 ) view returns(address) 1360 func (_BridgeOperator *BridgeOperatorCaller) OperatorList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 1361 var ( 1362 ret0 = new(common.Address) 1363 ) 1364 out := ret0 1365 err := _BridgeOperator.contract.Call(opts, out, "operatorList", arg0) 1366 return *ret0, err 1367 } 1368 1369 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 1370 // 1371 // Solidity: function operatorList(uint256 ) view returns(address) 1372 func (_BridgeOperator *BridgeOperatorSession) OperatorList(arg0 *big.Int) (common.Address, error) { 1373 return _BridgeOperator.Contract.OperatorList(&_BridgeOperator.CallOpts, arg0) 1374 } 1375 1376 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 1377 // 1378 // Solidity: function operatorList(uint256 ) view returns(address) 1379 func (_BridgeOperator *BridgeOperatorCallerSession) OperatorList(arg0 *big.Int) (common.Address, error) { 1380 return _BridgeOperator.Contract.OperatorList(&_BridgeOperator.CallOpts, arg0) 1381 } 1382 1383 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 1384 // 1385 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 1386 func (_BridgeOperator *BridgeOperatorCaller) OperatorThresholds(opts *bind.CallOpts, arg0 uint8) (uint8, error) { 1387 var ( 1388 ret0 = new(uint8) 1389 ) 1390 out := ret0 1391 err := _BridgeOperator.contract.Call(opts, out, "operatorThresholds", arg0) 1392 return *ret0, err 1393 } 1394 1395 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 1396 // 1397 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 1398 func (_BridgeOperator *BridgeOperatorSession) OperatorThresholds(arg0 uint8) (uint8, error) { 1399 return _BridgeOperator.Contract.OperatorThresholds(&_BridgeOperator.CallOpts, arg0) 1400 } 1401 1402 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 1403 // 1404 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 1405 func (_BridgeOperator *BridgeOperatorCallerSession) OperatorThresholds(arg0 uint8) (uint8, error) { 1406 return _BridgeOperator.Contract.OperatorThresholds(&_BridgeOperator.CallOpts, arg0) 1407 } 1408 1409 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 1410 // 1411 // Solidity: function operators(address ) view returns(bool) 1412 func (_BridgeOperator *BridgeOperatorCaller) Operators(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 1413 var ( 1414 ret0 = new(bool) 1415 ) 1416 out := ret0 1417 err := _BridgeOperator.contract.Call(opts, out, "operators", arg0) 1418 return *ret0, err 1419 } 1420 1421 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 1422 // 1423 // Solidity: function operators(address ) view returns(bool) 1424 func (_BridgeOperator *BridgeOperatorSession) Operators(arg0 common.Address) (bool, error) { 1425 return _BridgeOperator.Contract.Operators(&_BridgeOperator.CallOpts, arg0) 1426 } 1427 1428 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 1429 // 1430 // Solidity: function operators(address ) view returns(bool) 1431 func (_BridgeOperator *BridgeOperatorCallerSession) Operators(arg0 common.Address) (bool, error) { 1432 return _BridgeOperator.Contract.Operators(&_BridgeOperator.CallOpts, arg0) 1433 } 1434 1435 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 1436 // 1437 // Solidity: function owner() view returns(address) 1438 func (_BridgeOperator *BridgeOperatorCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 1439 var ( 1440 ret0 = new(common.Address) 1441 ) 1442 out := ret0 1443 err := _BridgeOperator.contract.Call(opts, out, "owner") 1444 return *ret0, err 1445 } 1446 1447 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 1448 // 1449 // Solidity: function owner() view returns(address) 1450 func (_BridgeOperator *BridgeOperatorSession) Owner() (common.Address, error) { 1451 return _BridgeOperator.Contract.Owner(&_BridgeOperator.CallOpts) 1452 } 1453 1454 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 1455 // 1456 // Solidity: function owner() view returns(address) 1457 func (_BridgeOperator *BridgeOperatorCallerSession) Owner() (common.Address, error) { 1458 return _BridgeOperator.Contract.Owner(&_BridgeOperator.CallOpts) 1459 } 1460 1461 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 1462 // 1463 // Solidity: function deregisterOperator(address _operator) returns() 1464 func (_BridgeOperator *BridgeOperatorTransactor) DeregisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 1465 return _BridgeOperator.contract.Transact(opts, "deregisterOperator", _operator) 1466 } 1467 1468 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 1469 // 1470 // Solidity: function deregisterOperator(address _operator) returns() 1471 func (_BridgeOperator *BridgeOperatorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 1472 return _BridgeOperator.Contract.DeregisterOperator(&_BridgeOperator.TransactOpts, _operator) 1473 } 1474 1475 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 1476 // 1477 // Solidity: function deregisterOperator(address _operator) returns() 1478 func (_BridgeOperator *BridgeOperatorTransactorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 1479 return _BridgeOperator.Contract.DeregisterOperator(&_BridgeOperator.TransactOpts, _operator) 1480 } 1481 1482 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 1483 // 1484 // Solidity: function registerOperator(address _operator) returns() 1485 func (_BridgeOperator *BridgeOperatorTransactor) RegisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 1486 return _BridgeOperator.contract.Transact(opts, "registerOperator", _operator) 1487 } 1488 1489 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 1490 // 1491 // Solidity: function registerOperator(address _operator) returns() 1492 func (_BridgeOperator *BridgeOperatorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 1493 return _BridgeOperator.Contract.RegisterOperator(&_BridgeOperator.TransactOpts, _operator) 1494 } 1495 1496 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 1497 // 1498 // Solidity: function registerOperator(address _operator) returns() 1499 func (_BridgeOperator *BridgeOperatorTransactorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 1500 return _BridgeOperator.Contract.RegisterOperator(&_BridgeOperator.TransactOpts, _operator) 1501 } 1502 1503 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 1504 // 1505 // Solidity: function renounceOwnership() returns() 1506 func (_BridgeOperator *BridgeOperatorTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 1507 return _BridgeOperator.contract.Transact(opts, "renounceOwnership") 1508 } 1509 1510 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 1511 // 1512 // Solidity: function renounceOwnership() returns() 1513 func (_BridgeOperator *BridgeOperatorSession) RenounceOwnership() (*types.Transaction, error) { 1514 return _BridgeOperator.Contract.RenounceOwnership(&_BridgeOperator.TransactOpts) 1515 } 1516 1517 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 1518 // 1519 // Solidity: function renounceOwnership() returns() 1520 func (_BridgeOperator *BridgeOperatorTransactorSession) RenounceOwnership() (*types.Transaction, error) { 1521 return _BridgeOperator.Contract.RenounceOwnership(&_BridgeOperator.TransactOpts) 1522 } 1523 1524 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 1525 // 1526 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 1527 func (_BridgeOperator *BridgeOperatorTransactor) SetOperatorThreshold(opts *bind.TransactOpts, _voteType uint8, _threshold uint8) (*types.Transaction, error) { 1528 return _BridgeOperator.contract.Transact(opts, "setOperatorThreshold", _voteType, _threshold) 1529 } 1530 1531 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 1532 // 1533 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 1534 func (_BridgeOperator *BridgeOperatorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 1535 return _BridgeOperator.Contract.SetOperatorThreshold(&_BridgeOperator.TransactOpts, _voteType, _threshold) 1536 } 1537 1538 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 1539 // 1540 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 1541 func (_BridgeOperator *BridgeOperatorTransactorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 1542 return _BridgeOperator.Contract.SetOperatorThreshold(&_BridgeOperator.TransactOpts, _voteType, _threshold) 1543 } 1544 1545 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 1546 // 1547 // Solidity: function transferOwnership(address newOwner) returns() 1548 func (_BridgeOperator *BridgeOperatorTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 1549 return _BridgeOperator.contract.Transact(opts, "transferOwnership", newOwner) 1550 } 1551 1552 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 1553 // 1554 // Solidity: function transferOwnership(address newOwner) returns() 1555 func (_BridgeOperator *BridgeOperatorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 1556 return _BridgeOperator.Contract.TransferOwnership(&_BridgeOperator.TransactOpts, newOwner) 1557 } 1558 1559 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 1560 // 1561 // Solidity: function transferOwnership(address newOwner) returns() 1562 func (_BridgeOperator *BridgeOperatorTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 1563 return _BridgeOperator.Contract.TransferOwnership(&_BridgeOperator.TransactOpts, newOwner) 1564 } 1565 1566 // BridgeOperatorOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the BridgeOperator contract. 1567 type BridgeOperatorOwnershipTransferredIterator struct { 1568 Event *BridgeOperatorOwnershipTransferred // Event containing the contract specifics and raw log 1569 1570 contract *bind.BoundContract // Generic contract to use for unpacking event data 1571 event string // Event name to use for unpacking event data 1572 1573 logs chan types.Log // Log channel receiving the found contract events 1574 sub klaytn.Subscription // Subscription for errors, completion and termination 1575 done bool // Whether the subscription completed delivering logs 1576 fail error // Occurred error to stop iteration 1577 } 1578 1579 // Next advances the iterator to the subsequent event, returning whether there 1580 // are any more events found. In case of a retrieval or parsing error, false is 1581 // returned and Error() can be queried for the exact failure. 1582 func (it *BridgeOperatorOwnershipTransferredIterator) Next() bool { 1583 // If the iterator failed, stop iterating 1584 if it.fail != nil { 1585 return false 1586 } 1587 // If the iterator completed, deliver directly whatever's available 1588 if it.done { 1589 select { 1590 case log := <-it.logs: 1591 it.Event = new(BridgeOperatorOwnershipTransferred) 1592 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1593 it.fail = err 1594 return false 1595 } 1596 it.Event.Raw = log 1597 return true 1598 1599 default: 1600 return false 1601 } 1602 } 1603 // Iterator still in progress, wait for either a data or an error event 1604 select { 1605 case log := <-it.logs: 1606 it.Event = new(BridgeOperatorOwnershipTransferred) 1607 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1608 it.fail = err 1609 return false 1610 } 1611 it.Event.Raw = log 1612 return true 1613 1614 case err := <-it.sub.Err(): 1615 it.done = true 1616 it.fail = err 1617 return it.Next() 1618 } 1619 } 1620 1621 // Error returns any retrieval or parsing error occurred during filtering. 1622 func (it *BridgeOperatorOwnershipTransferredIterator) Error() error { 1623 return it.fail 1624 } 1625 1626 // Close terminates the iteration process, releasing any pending underlying 1627 // resources. 1628 func (it *BridgeOperatorOwnershipTransferredIterator) Close() error { 1629 it.sub.Unsubscribe() 1630 return nil 1631 } 1632 1633 // BridgeOperatorOwnershipTransferred represents a OwnershipTransferred event raised by the BridgeOperator contract. 1634 type BridgeOperatorOwnershipTransferred struct { 1635 PreviousOwner common.Address 1636 NewOwner common.Address 1637 Raw types.Log // Blockchain specific contextual infos 1638 } 1639 1640 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 1641 // 1642 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 1643 func (_BridgeOperator *BridgeOperatorFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*BridgeOperatorOwnershipTransferredIterator, error) { 1644 1645 var previousOwnerRule []interface{} 1646 for _, previousOwnerItem := range previousOwner { 1647 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 1648 } 1649 var newOwnerRule []interface{} 1650 for _, newOwnerItem := range newOwner { 1651 newOwnerRule = append(newOwnerRule, newOwnerItem) 1652 } 1653 1654 logs, sub, err := _BridgeOperator.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 1655 if err != nil { 1656 return nil, err 1657 } 1658 return &BridgeOperatorOwnershipTransferredIterator{contract: _BridgeOperator.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 1659 } 1660 1661 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 1662 // 1663 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 1664 func (_BridgeOperator *BridgeOperatorFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *BridgeOperatorOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 1665 1666 var previousOwnerRule []interface{} 1667 for _, previousOwnerItem := range previousOwner { 1668 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 1669 } 1670 var newOwnerRule []interface{} 1671 for _, newOwnerItem := range newOwner { 1672 newOwnerRule = append(newOwnerRule, newOwnerItem) 1673 } 1674 1675 logs, sub, err := _BridgeOperator.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 1676 if err != nil { 1677 return nil, err 1678 } 1679 return event.NewSubscription(func(quit <-chan struct{}) error { 1680 defer sub.Unsubscribe() 1681 for { 1682 select { 1683 case log := <-logs: 1684 // New log arrived, parse the event and forward to the user 1685 event := new(BridgeOperatorOwnershipTransferred) 1686 if err := _BridgeOperator.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 1687 return err 1688 } 1689 event.Raw = log 1690 1691 select { 1692 case sink <- event: 1693 case err := <-sub.Err(): 1694 return err 1695 case <-quit: 1696 return nil 1697 } 1698 case err := <-sub.Err(): 1699 return err 1700 case <-quit: 1701 return nil 1702 } 1703 } 1704 }), nil 1705 } 1706 1707 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 1708 // 1709 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 1710 func (_BridgeOperator *BridgeOperatorFilterer) ParseOwnershipTransferred(log types.Log) (*BridgeOperatorOwnershipTransferred, error) { 1711 event := new(BridgeOperatorOwnershipTransferred) 1712 if err := _BridgeOperator.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 1713 return nil, err 1714 } 1715 return event, nil 1716 } 1717 1718 // BridgeTokensABI is the input ABI used to generate the binding from. 1719 const BridgeTokensABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"lockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"registeredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_cToken\",\"type\":\"address\"}],\"name\":\"registerToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"indexOfTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"lockedTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"registeredTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"unlockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"deregisterToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRegisteredTokenList\",\"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\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenDeregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenLocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenUnlocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}]" 1720 1721 // BridgeTokensBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 1722 const BridgeTokensBinRuntime = `608060405234801561001057600080fd5b50600436106100cf5760003560e01c80638c0bd9161161008c5780639ef2017b116100665780639ef2017b14610213578063bab2af1d14610239578063ea21eade1461025f578063f2fde38b146102b7576100cf565b80638c0bd916146101dd5780638da5cb5b146102035780638f32d59b1461020b576100cf565b806310693fcd146100d45780633e4fe949146100fc5780634739f7e51461013557806348a18a6a146101635780635eb7413a1461019b578063715018a6146101d5575b600080fd5b6100fa600480360360208110156100ea57600080fd5b50356001600160a01b03166102dd565b005b6101196004803603602081101561011257600080fd5b5035610450565b604080516001600160a01b039092168252519081900360200190f35b6100fa6004803603604081101561014b57600080fd5b506001600160a01b0381358116916020013516610477565b6101896004803603602081101561017957600080fd5b50356001600160a01b03166105d2565b60408051918252519081900360200190f35b6101c1600480360360208110156101b157600080fd5b50356001600160a01b03166105e4565b604080519115158252519081900360200190f35b6100fa6105f9565b610119600480360360208110156101f357600080fd5b50356001600160a01b031661068d565b6101196106a8565b6101c16106b8565b6100fa6004803603602081101561022957600080fd5b50356001600160a01b03166106c9565b6100fa6004803603602081101561024f57600080fd5b50356001600160a01b031661083d565b610267610a2c565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102a357818101518382015260200161028b565b505050509050019250505060405180910390f35b6100fa600480360360208110156102cd57600080fd5b50356001600160a01b0316610a8e565b6102e56106b8565b6103275760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b0380821660009081526001602052604090205482911661038f5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829060ff16156104025760408051600160e51b62461bcd02815260206004820152600c60248201527f6c6f636b656420746f6b656e0000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260046020526040808220805460ff19166001179055517fca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd79190a2505050565b6003818154811061045d57fe5b6000918252602090912001546001600160a01b0316905081565b61047f6106b8565b6104c15760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b03808316600090815260016020526040902054839116156105335760408051600160e51b62461bcd02815260206004820152600d60248201527f616c6c6f77656420746f6b656e00000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03808416600081815260016020818152604080842080549689166001600160a01b031997881617905560038054600290935281852083905592820183559183527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180549094168317909355915190917f158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d91a2505050565b60026020526000908152604090205481565b60046020526000908152604090205460ff1681565b6106016106b8565b6106435760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001602052600090815260409020546001600160a01b031681565b6000546001600160a01b03165b90565b6000546001600160a01b0316331490565b6106d16106b8565b6107135760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b0380821660009081526001602052604090205482911661077b5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829060ff1615156001146107f25760408051600160e51b62461bcd02815260206004820152600e60248201527f756e6c6f636b656420746f6b656e000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260046020526040808220805460ff19169055517f81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec9190a2505050565b6108456106b8565b6108875760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b038082166000908152600160205260409020548291166108ef5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260016020908152604080832080546001600160a01b031916905560048252808320805460ff19169055600290915281208054919055600354600019018110156109df5760038054600019810190811061095357fe5b600091825260209091200154600380546001600160a01b03909216918390811061097957fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508060026000600384815481106109b957fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020555b60038054906109f2906000198301610b87565b506040516001600160a01b038416907f1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b690600090a2505050565b60606003805480602002602001604051908101604052809291908181526020018280548015610a8457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610a66575b5050505050905090565b610a966106b8565b610ad85760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b610ae181610ae4565b50565b6001600160a01b038116610b2c57604051600160e51b62461bcd028152600401808060200182810382526026815260200180610bcf6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b815481835581811115610bab57600083815260209020610bab918101908301610bb0565b505050565b6106b591905b80821115610bca5760008155600101610bb6565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a165627a7a723058201ec54bb9eb49a58b0e627e2314c55d2f67a57eea0384269bf5e48b2a1aafc3440029` 1723 1724 // BridgeTokensFuncSigs maps the 4-byte function signature to its string representation. 1725 var BridgeTokensFuncSigs = map[string]string{ 1726 "bab2af1d": "deregisterToken(address)", 1727 "ea21eade": "getRegisteredTokenList()", 1728 "48a18a6a": "indexOfTokens(address)", 1729 "8f32d59b": "isOwner()", 1730 "10693fcd": "lockToken(address)", 1731 "5eb7413a": "lockedTokens(address)", 1732 "8da5cb5b": "owner()", 1733 "4739f7e5": "registerToken(address,address)", 1734 "3e4fe949": "registeredTokenList(uint256)", 1735 "8c0bd916": "registeredTokens(address)", 1736 "715018a6": "renounceOwnership()", 1737 "f2fde38b": "transferOwnership(address)", 1738 "9ef2017b": "unlockToken(address)", 1739 } 1740 1741 // BridgeTokensBin is the compiled bytecode used for deploying new contracts. 1742 var BridgeTokensBin = "0x60806040819052600080546001600160a01b03191633178082556001600160a01b0316917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610c40806100576000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80638c0bd9161161008c5780639ef2017b116100665780639ef2017b14610213578063bab2af1d14610239578063ea21eade1461025f578063f2fde38b146102b7576100cf565b80638c0bd916146101dd5780638da5cb5b146102035780638f32d59b1461020b576100cf565b806310693fcd146100d45780633e4fe949146100fc5780634739f7e51461013557806348a18a6a146101635780635eb7413a1461019b578063715018a6146101d5575b600080fd5b6100fa600480360360208110156100ea57600080fd5b50356001600160a01b03166102dd565b005b6101196004803603602081101561011257600080fd5b5035610450565b604080516001600160a01b039092168252519081900360200190f35b6100fa6004803603604081101561014b57600080fd5b506001600160a01b0381358116916020013516610477565b6101896004803603602081101561017957600080fd5b50356001600160a01b03166105d2565b60408051918252519081900360200190f35b6101c1600480360360208110156101b157600080fd5b50356001600160a01b03166105e4565b604080519115158252519081900360200190f35b6100fa6105f9565b610119600480360360208110156101f357600080fd5b50356001600160a01b031661068d565b6101196106a8565b6101c16106b8565b6100fa6004803603602081101561022957600080fd5b50356001600160a01b03166106c9565b6100fa6004803603602081101561024f57600080fd5b50356001600160a01b031661083d565b610267610a2c565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102a357818101518382015260200161028b565b505050509050019250505060405180910390f35b6100fa600480360360208110156102cd57600080fd5b50356001600160a01b0316610a8e565b6102e56106b8565b6103275760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b0380821660009081526001602052604090205482911661038f5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829060ff16156104025760408051600160e51b62461bcd02815260206004820152600c60248201527f6c6f636b656420746f6b656e0000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260046020526040808220805460ff19166001179055517fca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd79190a2505050565b6003818154811061045d57fe5b6000918252602090912001546001600160a01b0316905081565b61047f6106b8565b6104c15760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b03808316600090815260016020526040902054839116156105335760408051600160e51b62461bcd02815260206004820152600d60248201527f616c6c6f77656420746f6b656e00000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03808416600081815260016020818152604080842080549689166001600160a01b031997881617905560038054600290935281852083905592820183559183527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180549094168317909355915190917f158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d91a2505050565b60026020526000908152604090205481565b60046020526000908152604090205460ff1681565b6106016106b8565b6106435760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001602052600090815260409020546001600160a01b031681565b6000546001600160a01b03165b90565b6000546001600160a01b0316331490565b6106d16106b8565b6107135760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b0380821660009081526001602052604090205482911661077b5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829060ff1615156001146107f25760408051600160e51b62461bcd02815260206004820152600e60248201527f756e6c6f636b656420746f6b656e000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260046020526040808220805460ff19169055517f81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec9190a2505050565b6108456106b8565b6108875760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b6001600160a01b038082166000908152600160205260409020548291166108ef5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260016020908152604080832080546001600160a01b031916905560048252808320805460ff19169055600290915281208054919055600354600019018110156109df5760038054600019810190811061095357fe5b600091825260209091200154600380546001600160a01b03909216918390811061097957fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508060026000600384815481106109b957fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020555b60038054906109f2906000198301610b87565b506040516001600160a01b038416907f1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b690600090a2505050565b60606003805480602002602001604051908101604052809291908181526020018280548015610a8457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610a66575b5050505050905090565b610a966106b8565b610ad85760408051600160e51b62461bcd0281526020600482018190526024820152600080516020610bf5833981519152604482015290519081900360640190fd5b610ae181610ae4565b50565b6001600160a01b038116610b2c57604051600160e51b62461bcd028152600401808060200182810382526026815260200180610bcf6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b815481835581811115610bab57600083815260209020610bab918101908301610bb0565b505050565b6106b591905b80821115610bca5760008155600101610bb6565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a165627a7a723058201ec54bb9eb49a58b0e627e2314c55d2f67a57eea0384269bf5e48b2a1aafc3440029" 1743 1744 // DeployBridgeTokens deploys a new Klaytn contract, binding an instance of BridgeTokens to it. 1745 func DeployBridgeTokens(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *BridgeTokens, error) { 1746 parsed, err := abi.JSON(strings.NewReader(BridgeTokensABI)) 1747 if err != nil { 1748 return common.Address{}, nil, nil, err 1749 } 1750 1751 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(BridgeTokensBin), backend) 1752 if err != nil { 1753 return common.Address{}, nil, nil, err 1754 } 1755 return address, tx, &BridgeTokens{BridgeTokensCaller: BridgeTokensCaller{contract: contract}, BridgeTokensTransactor: BridgeTokensTransactor{contract: contract}, BridgeTokensFilterer: BridgeTokensFilterer{contract: contract}}, nil 1756 } 1757 1758 // BridgeTokens is an auto generated Go binding around a Klaytn contract. 1759 type BridgeTokens struct { 1760 BridgeTokensCaller // Read-only binding to the contract 1761 BridgeTokensTransactor // Write-only binding to the contract 1762 BridgeTokensFilterer // Log filterer for contract events 1763 } 1764 1765 // BridgeTokensCaller is an auto generated read-only Go binding around a Klaytn contract. 1766 type BridgeTokensCaller struct { 1767 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1768 } 1769 1770 // BridgeTokensTransactor is an auto generated write-only Go binding around a Klaytn contract. 1771 type BridgeTokensTransactor struct { 1772 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1773 } 1774 1775 // BridgeTokensFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 1776 type BridgeTokensFilterer struct { 1777 contract *bind.BoundContract // Generic contract wrapper for the low level calls 1778 } 1779 1780 // BridgeTokensSession is an auto generated Go binding around a Klaytn contract, 1781 // with pre-set call and transact options. 1782 type BridgeTokensSession struct { 1783 Contract *BridgeTokens // Generic contract binding to set the session for 1784 CallOpts bind.CallOpts // Call options to use throughout this session 1785 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1786 } 1787 1788 // BridgeTokensCallerSession is an auto generated read-only Go binding around a Klaytn contract, 1789 // with pre-set call options. 1790 type BridgeTokensCallerSession struct { 1791 Contract *BridgeTokensCaller // Generic contract caller binding to set the session for 1792 CallOpts bind.CallOpts // Call options to use throughout this session 1793 } 1794 1795 // BridgeTokensTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 1796 // with pre-set transact options. 1797 type BridgeTokensTransactorSession struct { 1798 Contract *BridgeTokensTransactor // Generic contract transactor binding to set the session for 1799 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 1800 } 1801 1802 // BridgeTokensRaw is an auto generated low-level Go binding around a Klaytn contract. 1803 type BridgeTokensRaw struct { 1804 Contract *BridgeTokens // Generic contract binding to access the raw methods on 1805 } 1806 1807 // BridgeTokensCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 1808 type BridgeTokensCallerRaw struct { 1809 Contract *BridgeTokensCaller // Generic read-only contract binding to access the raw methods on 1810 } 1811 1812 // BridgeTokensTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 1813 type BridgeTokensTransactorRaw struct { 1814 Contract *BridgeTokensTransactor // Generic write-only contract binding to access the raw methods on 1815 } 1816 1817 // NewBridgeTokens creates a new instance of BridgeTokens, bound to a specific deployed contract. 1818 func NewBridgeTokens(address common.Address, backend bind.ContractBackend) (*BridgeTokens, error) { 1819 contract, err := bindBridgeTokens(address, backend, backend, backend) 1820 if err != nil { 1821 return nil, err 1822 } 1823 return &BridgeTokens{BridgeTokensCaller: BridgeTokensCaller{contract: contract}, BridgeTokensTransactor: BridgeTokensTransactor{contract: contract}, BridgeTokensFilterer: BridgeTokensFilterer{contract: contract}}, nil 1824 } 1825 1826 // NewBridgeTokensCaller creates a new read-only instance of BridgeTokens, bound to a specific deployed contract. 1827 func NewBridgeTokensCaller(address common.Address, caller bind.ContractCaller) (*BridgeTokensCaller, error) { 1828 contract, err := bindBridgeTokens(address, caller, nil, nil) 1829 if err != nil { 1830 return nil, err 1831 } 1832 return &BridgeTokensCaller{contract: contract}, nil 1833 } 1834 1835 // NewBridgeTokensTransactor creates a new write-only instance of BridgeTokens, bound to a specific deployed contract. 1836 func NewBridgeTokensTransactor(address common.Address, transactor bind.ContractTransactor) (*BridgeTokensTransactor, error) { 1837 contract, err := bindBridgeTokens(address, nil, transactor, nil) 1838 if err != nil { 1839 return nil, err 1840 } 1841 return &BridgeTokensTransactor{contract: contract}, nil 1842 } 1843 1844 // NewBridgeTokensFilterer creates a new log filterer instance of BridgeTokens, bound to a specific deployed contract. 1845 func NewBridgeTokensFilterer(address common.Address, filterer bind.ContractFilterer) (*BridgeTokensFilterer, error) { 1846 contract, err := bindBridgeTokens(address, nil, nil, filterer) 1847 if err != nil { 1848 return nil, err 1849 } 1850 return &BridgeTokensFilterer{contract: contract}, nil 1851 } 1852 1853 // bindBridgeTokens binds a generic wrapper to an already deployed contract. 1854 func bindBridgeTokens(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 1855 parsed, err := abi.JSON(strings.NewReader(BridgeTokensABI)) 1856 if err != nil { 1857 return nil, err 1858 } 1859 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 1860 } 1861 1862 // Call invokes the (constant) contract method with params as input values and 1863 // sets the output to result. The result type might be a single field for simple 1864 // returns, a slice of interfaces for anonymous returns and a struct for named 1865 // returns. 1866 func (_BridgeTokens *BridgeTokensRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1867 return _BridgeTokens.Contract.BridgeTokensCaller.contract.Call(opts, result, method, params...) 1868 } 1869 1870 // Transfer initiates a plain transaction to move funds to the contract, calling 1871 // its default method if one is available. 1872 func (_BridgeTokens *BridgeTokensRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1873 return _BridgeTokens.Contract.BridgeTokensTransactor.contract.Transfer(opts) 1874 } 1875 1876 // Transact invokes the (paid) contract method with params as input values. 1877 func (_BridgeTokens *BridgeTokensRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1878 return _BridgeTokens.Contract.BridgeTokensTransactor.contract.Transact(opts, method, params...) 1879 } 1880 1881 // Call invokes the (constant) contract method with params as input values and 1882 // sets the output to result. The result type might be a single field for simple 1883 // returns, a slice of interfaces for anonymous returns and a struct for named 1884 // returns. 1885 func (_BridgeTokens *BridgeTokensCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 1886 return _BridgeTokens.Contract.contract.Call(opts, result, method, params...) 1887 } 1888 1889 // Transfer initiates a plain transaction to move funds to the contract, calling 1890 // its default method if one is available. 1891 func (_BridgeTokens *BridgeTokensTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 1892 return _BridgeTokens.Contract.contract.Transfer(opts) 1893 } 1894 1895 // Transact invokes the (paid) contract method with params as input values. 1896 func (_BridgeTokens *BridgeTokensTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 1897 return _BridgeTokens.Contract.contract.Transact(opts, method, params...) 1898 } 1899 1900 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 1901 // 1902 // Solidity: function getRegisteredTokenList() view returns(address[]) 1903 func (_BridgeTokens *BridgeTokensCaller) GetRegisteredTokenList(opts *bind.CallOpts) ([]common.Address, error) { 1904 var ( 1905 ret0 = new([]common.Address) 1906 ) 1907 out := ret0 1908 err := _BridgeTokens.contract.Call(opts, out, "getRegisteredTokenList") 1909 return *ret0, err 1910 } 1911 1912 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 1913 // 1914 // Solidity: function getRegisteredTokenList() view returns(address[]) 1915 func (_BridgeTokens *BridgeTokensSession) GetRegisteredTokenList() ([]common.Address, error) { 1916 return _BridgeTokens.Contract.GetRegisteredTokenList(&_BridgeTokens.CallOpts) 1917 } 1918 1919 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 1920 // 1921 // Solidity: function getRegisteredTokenList() view returns(address[]) 1922 func (_BridgeTokens *BridgeTokensCallerSession) GetRegisteredTokenList() ([]common.Address, error) { 1923 return _BridgeTokens.Contract.GetRegisteredTokenList(&_BridgeTokens.CallOpts) 1924 } 1925 1926 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 1927 // 1928 // Solidity: function indexOfTokens(address ) view returns(uint256) 1929 func (_BridgeTokens *BridgeTokensCaller) IndexOfTokens(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 1930 var ( 1931 ret0 = new(*big.Int) 1932 ) 1933 out := ret0 1934 err := _BridgeTokens.contract.Call(opts, out, "indexOfTokens", arg0) 1935 return *ret0, err 1936 } 1937 1938 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 1939 // 1940 // Solidity: function indexOfTokens(address ) view returns(uint256) 1941 func (_BridgeTokens *BridgeTokensSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 1942 return _BridgeTokens.Contract.IndexOfTokens(&_BridgeTokens.CallOpts, arg0) 1943 } 1944 1945 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 1946 // 1947 // Solidity: function indexOfTokens(address ) view returns(uint256) 1948 func (_BridgeTokens *BridgeTokensCallerSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 1949 return _BridgeTokens.Contract.IndexOfTokens(&_BridgeTokens.CallOpts, arg0) 1950 } 1951 1952 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1953 // 1954 // Solidity: function isOwner() view returns(bool) 1955 func (_BridgeTokens *BridgeTokensCaller) IsOwner(opts *bind.CallOpts) (bool, error) { 1956 var ( 1957 ret0 = new(bool) 1958 ) 1959 out := ret0 1960 err := _BridgeTokens.contract.Call(opts, out, "isOwner") 1961 return *ret0, err 1962 } 1963 1964 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1965 // 1966 // Solidity: function isOwner() view returns(bool) 1967 func (_BridgeTokens *BridgeTokensSession) IsOwner() (bool, error) { 1968 return _BridgeTokens.Contract.IsOwner(&_BridgeTokens.CallOpts) 1969 } 1970 1971 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 1972 // 1973 // Solidity: function isOwner() view returns(bool) 1974 func (_BridgeTokens *BridgeTokensCallerSession) IsOwner() (bool, error) { 1975 return _BridgeTokens.Contract.IsOwner(&_BridgeTokens.CallOpts) 1976 } 1977 1978 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 1979 // 1980 // Solidity: function lockedTokens(address ) view returns(bool) 1981 func (_BridgeTokens *BridgeTokensCaller) LockedTokens(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 1982 var ( 1983 ret0 = new(bool) 1984 ) 1985 out := ret0 1986 err := _BridgeTokens.contract.Call(opts, out, "lockedTokens", arg0) 1987 return *ret0, err 1988 } 1989 1990 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 1991 // 1992 // Solidity: function lockedTokens(address ) view returns(bool) 1993 func (_BridgeTokens *BridgeTokensSession) LockedTokens(arg0 common.Address) (bool, error) { 1994 return _BridgeTokens.Contract.LockedTokens(&_BridgeTokens.CallOpts, arg0) 1995 } 1996 1997 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 1998 // 1999 // Solidity: function lockedTokens(address ) view returns(bool) 2000 func (_BridgeTokens *BridgeTokensCallerSession) LockedTokens(arg0 common.Address) (bool, error) { 2001 return _BridgeTokens.Contract.LockedTokens(&_BridgeTokens.CallOpts, arg0) 2002 } 2003 2004 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2005 // 2006 // Solidity: function owner() view returns(address) 2007 func (_BridgeTokens *BridgeTokensCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 2008 var ( 2009 ret0 = new(common.Address) 2010 ) 2011 out := ret0 2012 err := _BridgeTokens.contract.Call(opts, out, "owner") 2013 return *ret0, err 2014 } 2015 2016 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2017 // 2018 // Solidity: function owner() view returns(address) 2019 func (_BridgeTokens *BridgeTokensSession) Owner() (common.Address, error) { 2020 return _BridgeTokens.Contract.Owner(&_BridgeTokens.CallOpts) 2021 } 2022 2023 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 2024 // 2025 // Solidity: function owner() view returns(address) 2026 func (_BridgeTokens *BridgeTokensCallerSession) Owner() (common.Address, error) { 2027 return _BridgeTokens.Contract.Owner(&_BridgeTokens.CallOpts) 2028 } 2029 2030 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 2031 // 2032 // Solidity: function registeredTokenList(uint256 ) view returns(address) 2033 func (_BridgeTokens *BridgeTokensCaller) RegisteredTokenList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 2034 var ( 2035 ret0 = new(common.Address) 2036 ) 2037 out := ret0 2038 err := _BridgeTokens.contract.Call(opts, out, "registeredTokenList", arg0) 2039 return *ret0, err 2040 } 2041 2042 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 2043 // 2044 // Solidity: function registeredTokenList(uint256 ) view returns(address) 2045 func (_BridgeTokens *BridgeTokensSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 2046 return _BridgeTokens.Contract.RegisteredTokenList(&_BridgeTokens.CallOpts, arg0) 2047 } 2048 2049 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 2050 // 2051 // Solidity: function registeredTokenList(uint256 ) view returns(address) 2052 func (_BridgeTokens *BridgeTokensCallerSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 2053 return _BridgeTokens.Contract.RegisteredTokenList(&_BridgeTokens.CallOpts, arg0) 2054 } 2055 2056 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 2057 // 2058 // Solidity: function registeredTokens(address ) view returns(address) 2059 func (_BridgeTokens *BridgeTokensCaller) RegisteredTokens(opts *bind.CallOpts, arg0 common.Address) (common.Address, error) { 2060 var ( 2061 ret0 = new(common.Address) 2062 ) 2063 out := ret0 2064 err := _BridgeTokens.contract.Call(opts, out, "registeredTokens", arg0) 2065 return *ret0, err 2066 } 2067 2068 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 2069 // 2070 // Solidity: function registeredTokens(address ) view returns(address) 2071 func (_BridgeTokens *BridgeTokensSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 2072 return _BridgeTokens.Contract.RegisteredTokens(&_BridgeTokens.CallOpts, arg0) 2073 } 2074 2075 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 2076 // 2077 // Solidity: function registeredTokens(address ) view returns(address) 2078 func (_BridgeTokens *BridgeTokensCallerSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 2079 return _BridgeTokens.Contract.RegisteredTokens(&_BridgeTokens.CallOpts, arg0) 2080 } 2081 2082 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 2083 // 2084 // Solidity: function deregisterToken(address _token) returns() 2085 func (_BridgeTokens *BridgeTokensTransactor) DeregisterToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 2086 return _BridgeTokens.contract.Transact(opts, "deregisterToken", _token) 2087 } 2088 2089 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 2090 // 2091 // Solidity: function deregisterToken(address _token) returns() 2092 func (_BridgeTokens *BridgeTokensSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 2093 return _BridgeTokens.Contract.DeregisterToken(&_BridgeTokens.TransactOpts, _token) 2094 } 2095 2096 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 2097 // 2098 // Solidity: function deregisterToken(address _token) returns() 2099 func (_BridgeTokens *BridgeTokensTransactorSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 2100 return _BridgeTokens.Contract.DeregisterToken(&_BridgeTokens.TransactOpts, _token) 2101 } 2102 2103 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 2104 // 2105 // Solidity: function lockToken(address _token) returns() 2106 func (_BridgeTokens *BridgeTokensTransactor) LockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 2107 return _BridgeTokens.contract.Transact(opts, "lockToken", _token) 2108 } 2109 2110 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 2111 // 2112 // Solidity: function lockToken(address _token) returns() 2113 func (_BridgeTokens *BridgeTokensSession) LockToken(_token common.Address) (*types.Transaction, error) { 2114 return _BridgeTokens.Contract.LockToken(&_BridgeTokens.TransactOpts, _token) 2115 } 2116 2117 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 2118 // 2119 // Solidity: function lockToken(address _token) returns() 2120 func (_BridgeTokens *BridgeTokensTransactorSession) LockToken(_token common.Address) (*types.Transaction, error) { 2121 return _BridgeTokens.Contract.LockToken(&_BridgeTokens.TransactOpts, _token) 2122 } 2123 2124 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 2125 // 2126 // Solidity: function registerToken(address _token, address _cToken) returns() 2127 func (_BridgeTokens *BridgeTokensTransactor) RegisterToken(opts *bind.TransactOpts, _token common.Address, _cToken common.Address) (*types.Transaction, error) { 2128 return _BridgeTokens.contract.Transact(opts, "registerToken", _token, _cToken) 2129 } 2130 2131 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 2132 // 2133 // Solidity: function registerToken(address _token, address _cToken) returns() 2134 func (_BridgeTokens *BridgeTokensSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 2135 return _BridgeTokens.Contract.RegisterToken(&_BridgeTokens.TransactOpts, _token, _cToken) 2136 } 2137 2138 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 2139 // 2140 // Solidity: function registerToken(address _token, address _cToken) returns() 2141 func (_BridgeTokens *BridgeTokensTransactorSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 2142 return _BridgeTokens.Contract.RegisterToken(&_BridgeTokens.TransactOpts, _token, _cToken) 2143 } 2144 2145 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 2146 // 2147 // Solidity: function renounceOwnership() returns() 2148 func (_BridgeTokens *BridgeTokensTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 2149 return _BridgeTokens.contract.Transact(opts, "renounceOwnership") 2150 } 2151 2152 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 2153 // 2154 // Solidity: function renounceOwnership() returns() 2155 func (_BridgeTokens *BridgeTokensSession) RenounceOwnership() (*types.Transaction, error) { 2156 return _BridgeTokens.Contract.RenounceOwnership(&_BridgeTokens.TransactOpts) 2157 } 2158 2159 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 2160 // 2161 // Solidity: function renounceOwnership() returns() 2162 func (_BridgeTokens *BridgeTokensTransactorSession) RenounceOwnership() (*types.Transaction, error) { 2163 return _BridgeTokens.Contract.RenounceOwnership(&_BridgeTokens.TransactOpts) 2164 } 2165 2166 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2167 // 2168 // Solidity: function transferOwnership(address newOwner) returns() 2169 func (_BridgeTokens *BridgeTokensTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 2170 return _BridgeTokens.contract.Transact(opts, "transferOwnership", newOwner) 2171 } 2172 2173 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2174 // 2175 // Solidity: function transferOwnership(address newOwner) returns() 2176 func (_BridgeTokens *BridgeTokensSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 2177 return _BridgeTokens.Contract.TransferOwnership(&_BridgeTokens.TransactOpts, newOwner) 2178 } 2179 2180 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 2181 // 2182 // Solidity: function transferOwnership(address newOwner) returns() 2183 func (_BridgeTokens *BridgeTokensTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 2184 return _BridgeTokens.Contract.TransferOwnership(&_BridgeTokens.TransactOpts, newOwner) 2185 } 2186 2187 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 2188 // 2189 // Solidity: function unlockToken(address _token) returns() 2190 func (_BridgeTokens *BridgeTokensTransactor) UnlockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 2191 return _BridgeTokens.contract.Transact(opts, "unlockToken", _token) 2192 } 2193 2194 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 2195 // 2196 // Solidity: function unlockToken(address _token) returns() 2197 func (_BridgeTokens *BridgeTokensSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 2198 return _BridgeTokens.Contract.UnlockToken(&_BridgeTokens.TransactOpts, _token) 2199 } 2200 2201 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 2202 // 2203 // Solidity: function unlockToken(address _token) returns() 2204 func (_BridgeTokens *BridgeTokensTransactorSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 2205 return _BridgeTokens.Contract.UnlockToken(&_BridgeTokens.TransactOpts, _token) 2206 } 2207 2208 // BridgeTokensOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the BridgeTokens contract. 2209 type BridgeTokensOwnershipTransferredIterator struct { 2210 Event *BridgeTokensOwnershipTransferred // Event containing the contract specifics and raw log 2211 2212 contract *bind.BoundContract // Generic contract to use for unpacking event data 2213 event string // Event name to use for unpacking event data 2214 2215 logs chan types.Log // Log channel receiving the found contract events 2216 sub klaytn.Subscription // Subscription for errors, completion and termination 2217 done bool // Whether the subscription completed delivering logs 2218 fail error // Occurred error to stop iteration 2219 } 2220 2221 // Next advances the iterator to the subsequent event, returning whether there 2222 // are any more events found. In case of a retrieval or parsing error, false is 2223 // returned and Error() can be queried for the exact failure. 2224 func (it *BridgeTokensOwnershipTransferredIterator) Next() bool { 2225 // If the iterator failed, stop iterating 2226 if it.fail != nil { 2227 return false 2228 } 2229 // If the iterator completed, deliver directly whatever's available 2230 if it.done { 2231 select { 2232 case log := <-it.logs: 2233 it.Event = new(BridgeTokensOwnershipTransferred) 2234 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2235 it.fail = err 2236 return false 2237 } 2238 it.Event.Raw = log 2239 return true 2240 2241 default: 2242 return false 2243 } 2244 } 2245 // Iterator still in progress, wait for either a data or an error event 2246 select { 2247 case log := <-it.logs: 2248 it.Event = new(BridgeTokensOwnershipTransferred) 2249 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2250 it.fail = err 2251 return false 2252 } 2253 it.Event.Raw = log 2254 return true 2255 2256 case err := <-it.sub.Err(): 2257 it.done = true 2258 it.fail = err 2259 return it.Next() 2260 } 2261 } 2262 2263 // Error returns any retrieval or parsing error occurred during filtering. 2264 func (it *BridgeTokensOwnershipTransferredIterator) Error() error { 2265 return it.fail 2266 } 2267 2268 // Close terminates the iteration process, releasing any pending underlying 2269 // resources. 2270 func (it *BridgeTokensOwnershipTransferredIterator) Close() error { 2271 it.sub.Unsubscribe() 2272 return nil 2273 } 2274 2275 // BridgeTokensOwnershipTransferred represents a OwnershipTransferred event raised by the BridgeTokens contract. 2276 type BridgeTokensOwnershipTransferred struct { 2277 PreviousOwner common.Address 2278 NewOwner common.Address 2279 Raw types.Log // Blockchain specific contextual infos 2280 } 2281 2282 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 2283 // 2284 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 2285 func (_BridgeTokens *BridgeTokensFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*BridgeTokensOwnershipTransferredIterator, error) { 2286 2287 var previousOwnerRule []interface{} 2288 for _, previousOwnerItem := range previousOwner { 2289 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 2290 } 2291 var newOwnerRule []interface{} 2292 for _, newOwnerItem := range newOwner { 2293 newOwnerRule = append(newOwnerRule, newOwnerItem) 2294 } 2295 2296 logs, sub, err := _BridgeTokens.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 2297 if err != nil { 2298 return nil, err 2299 } 2300 return &BridgeTokensOwnershipTransferredIterator{contract: _BridgeTokens.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 2301 } 2302 2303 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 2304 // 2305 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 2306 func (_BridgeTokens *BridgeTokensFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *BridgeTokensOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 2307 2308 var previousOwnerRule []interface{} 2309 for _, previousOwnerItem := range previousOwner { 2310 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 2311 } 2312 var newOwnerRule []interface{} 2313 for _, newOwnerItem := range newOwner { 2314 newOwnerRule = append(newOwnerRule, newOwnerItem) 2315 } 2316 2317 logs, sub, err := _BridgeTokens.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 2318 if err != nil { 2319 return nil, err 2320 } 2321 return event.NewSubscription(func(quit <-chan struct{}) error { 2322 defer sub.Unsubscribe() 2323 for { 2324 select { 2325 case log := <-logs: 2326 // New log arrived, parse the event and forward to the user 2327 event := new(BridgeTokensOwnershipTransferred) 2328 if err := _BridgeTokens.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 2329 return err 2330 } 2331 event.Raw = log 2332 2333 select { 2334 case sink <- event: 2335 case err := <-sub.Err(): 2336 return err 2337 case <-quit: 2338 return nil 2339 } 2340 case err := <-sub.Err(): 2341 return err 2342 case <-quit: 2343 return nil 2344 } 2345 } 2346 }), nil 2347 } 2348 2349 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 2350 // 2351 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 2352 func (_BridgeTokens *BridgeTokensFilterer) ParseOwnershipTransferred(log types.Log) (*BridgeTokensOwnershipTransferred, error) { 2353 event := new(BridgeTokensOwnershipTransferred) 2354 if err := _BridgeTokens.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 2355 return nil, err 2356 } 2357 return event, nil 2358 } 2359 2360 // BridgeTokensTokenDeregisteredIterator is returned from FilterTokenDeregistered and is used to iterate over the raw logs and unpacked data for TokenDeregistered events raised by the BridgeTokens contract. 2361 type BridgeTokensTokenDeregisteredIterator struct { 2362 Event *BridgeTokensTokenDeregistered // Event containing the contract specifics and raw log 2363 2364 contract *bind.BoundContract // Generic contract to use for unpacking event data 2365 event string // Event name to use for unpacking event data 2366 2367 logs chan types.Log // Log channel receiving the found contract events 2368 sub klaytn.Subscription // Subscription for errors, completion and termination 2369 done bool // Whether the subscription completed delivering logs 2370 fail error // Occurred error to stop iteration 2371 } 2372 2373 // Next advances the iterator to the subsequent event, returning whether there 2374 // are any more events found. In case of a retrieval or parsing error, false is 2375 // returned and Error() can be queried for the exact failure. 2376 func (it *BridgeTokensTokenDeregisteredIterator) Next() bool { 2377 // If the iterator failed, stop iterating 2378 if it.fail != nil { 2379 return false 2380 } 2381 // If the iterator completed, deliver directly whatever's available 2382 if it.done { 2383 select { 2384 case log := <-it.logs: 2385 it.Event = new(BridgeTokensTokenDeregistered) 2386 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2387 it.fail = err 2388 return false 2389 } 2390 it.Event.Raw = log 2391 return true 2392 2393 default: 2394 return false 2395 } 2396 } 2397 // Iterator still in progress, wait for either a data or an error event 2398 select { 2399 case log := <-it.logs: 2400 it.Event = new(BridgeTokensTokenDeregistered) 2401 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2402 it.fail = err 2403 return false 2404 } 2405 it.Event.Raw = log 2406 return true 2407 2408 case err := <-it.sub.Err(): 2409 it.done = true 2410 it.fail = err 2411 return it.Next() 2412 } 2413 } 2414 2415 // Error returns any retrieval or parsing error occurred during filtering. 2416 func (it *BridgeTokensTokenDeregisteredIterator) Error() error { 2417 return it.fail 2418 } 2419 2420 // Close terminates the iteration process, releasing any pending underlying 2421 // resources. 2422 func (it *BridgeTokensTokenDeregisteredIterator) Close() error { 2423 it.sub.Unsubscribe() 2424 return nil 2425 } 2426 2427 // BridgeTokensTokenDeregistered represents a TokenDeregistered event raised by the BridgeTokens contract. 2428 type BridgeTokensTokenDeregistered struct { 2429 Token common.Address 2430 Raw types.Log // Blockchain specific contextual infos 2431 } 2432 2433 // FilterTokenDeregistered is a free log retrieval operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 2434 // 2435 // Solidity: event TokenDeregistered(address indexed token) 2436 func (_BridgeTokens *BridgeTokensFilterer) FilterTokenDeregistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTokensTokenDeregisteredIterator, error) { 2437 2438 var tokenRule []interface{} 2439 for _, tokenItem := range token { 2440 tokenRule = append(tokenRule, tokenItem) 2441 } 2442 2443 logs, sub, err := _BridgeTokens.contract.FilterLogs(opts, "TokenDeregistered", tokenRule) 2444 if err != nil { 2445 return nil, err 2446 } 2447 return &BridgeTokensTokenDeregisteredIterator{contract: _BridgeTokens.contract, event: "TokenDeregistered", logs: logs, sub: sub}, nil 2448 } 2449 2450 // WatchTokenDeregistered is a free log subscription operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 2451 // 2452 // Solidity: event TokenDeregistered(address indexed token) 2453 func (_BridgeTokens *BridgeTokensFilterer) WatchTokenDeregistered(opts *bind.WatchOpts, sink chan<- *BridgeTokensTokenDeregistered, token []common.Address) (event.Subscription, error) { 2454 2455 var tokenRule []interface{} 2456 for _, tokenItem := range token { 2457 tokenRule = append(tokenRule, tokenItem) 2458 } 2459 2460 logs, sub, err := _BridgeTokens.contract.WatchLogs(opts, "TokenDeregistered", tokenRule) 2461 if err != nil { 2462 return nil, err 2463 } 2464 return event.NewSubscription(func(quit <-chan struct{}) error { 2465 defer sub.Unsubscribe() 2466 for { 2467 select { 2468 case log := <-logs: 2469 // New log arrived, parse the event and forward to the user 2470 event := new(BridgeTokensTokenDeregistered) 2471 if err := _BridgeTokens.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 2472 return err 2473 } 2474 event.Raw = log 2475 2476 select { 2477 case sink <- event: 2478 case err := <-sub.Err(): 2479 return err 2480 case <-quit: 2481 return nil 2482 } 2483 case err := <-sub.Err(): 2484 return err 2485 case <-quit: 2486 return nil 2487 } 2488 } 2489 }), nil 2490 } 2491 2492 // ParseTokenDeregistered is a log parse operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 2493 // 2494 // Solidity: event TokenDeregistered(address indexed token) 2495 func (_BridgeTokens *BridgeTokensFilterer) ParseTokenDeregistered(log types.Log) (*BridgeTokensTokenDeregistered, error) { 2496 event := new(BridgeTokensTokenDeregistered) 2497 if err := _BridgeTokens.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 2498 return nil, err 2499 } 2500 return event, nil 2501 } 2502 2503 // BridgeTokensTokenLockedIterator is returned from FilterTokenLocked and is used to iterate over the raw logs and unpacked data for TokenLocked events raised by the BridgeTokens contract. 2504 type BridgeTokensTokenLockedIterator struct { 2505 Event *BridgeTokensTokenLocked // Event containing the contract specifics and raw log 2506 2507 contract *bind.BoundContract // Generic contract to use for unpacking event data 2508 event string // Event name to use for unpacking event data 2509 2510 logs chan types.Log // Log channel receiving the found contract events 2511 sub klaytn.Subscription // Subscription for errors, completion and termination 2512 done bool // Whether the subscription completed delivering logs 2513 fail error // Occurred error to stop iteration 2514 } 2515 2516 // Next advances the iterator to the subsequent event, returning whether there 2517 // are any more events found. In case of a retrieval or parsing error, false is 2518 // returned and Error() can be queried for the exact failure. 2519 func (it *BridgeTokensTokenLockedIterator) Next() bool { 2520 // If the iterator failed, stop iterating 2521 if it.fail != nil { 2522 return false 2523 } 2524 // If the iterator completed, deliver directly whatever's available 2525 if it.done { 2526 select { 2527 case log := <-it.logs: 2528 it.Event = new(BridgeTokensTokenLocked) 2529 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2530 it.fail = err 2531 return false 2532 } 2533 it.Event.Raw = log 2534 return true 2535 2536 default: 2537 return false 2538 } 2539 } 2540 // Iterator still in progress, wait for either a data or an error event 2541 select { 2542 case log := <-it.logs: 2543 it.Event = new(BridgeTokensTokenLocked) 2544 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2545 it.fail = err 2546 return false 2547 } 2548 it.Event.Raw = log 2549 return true 2550 2551 case err := <-it.sub.Err(): 2552 it.done = true 2553 it.fail = err 2554 return it.Next() 2555 } 2556 } 2557 2558 // Error returns any retrieval or parsing error occurred during filtering. 2559 func (it *BridgeTokensTokenLockedIterator) Error() error { 2560 return it.fail 2561 } 2562 2563 // Close terminates the iteration process, releasing any pending underlying 2564 // resources. 2565 func (it *BridgeTokensTokenLockedIterator) Close() error { 2566 it.sub.Unsubscribe() 2567 return nil 2568 } 2569 2570 // BridgeTokensTokenLocked represents a TokenLocked event raised by the BridgeTokens contract. 2571 type BridgeTokensTokenLocked struct { 2572 Token common.Address 2573 Raw types.Log // Blockchain specific contextual infos 2574 } 2575 2576 // FilterTokenLocked is a free log retrieval operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 2577 // 2578 // Solidity: event TokenLocked(address indexed token) 2579 func (_BridgeTokens *BridgeTokensFilterer) FilterTokenLocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTokensTokenLockedIterator, error) { 2580 2581 var tokenRule []interface{} 2582 for _, tokenItem := range token { 2583 tokenRule = append(tokenRule, tokenItem) 2584 } 2585 2586 logs, sub, err := _BridgeTokens.contract.FilterLogs(opts, "TokenLocked", tokenRule) 2587 if err != nil { 2588 return nil, err 2589 } 2590 return &BridgeTokensTokenLockedIterator{contract: _BridgeTokens.contract, event: "TokenLocked", logs: logs, sub: sub}, nil 2591 } 2592 2593 // WatchTokenLocked is a free log subscription operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 2594 // 2595 // Solidity: event TokenLocked(address indexed token) 2596 func (_BridgeTokens *BridgeTokensFilterer) WatchTokenLocked(opts *bind.WatchOpts, sink chan<- *BridgeTokensTokenLocked, token []common.Address) (event.Subscription, error) { 2597 2598 var tokenRule []interface{} 2599 for _, tokenItem := range token { 2600 tokenRule = append(tokenRule, tokenItem) 2601 } 2602 2603 logs, sub, err := _BridgeTokens.contract.WatchLogs(opts, "TokenLocked", tokenRule) 2604 if err != nil { 2605 return nil, err 2606 } 2607 return event.NewSubscription(func(quit <-chan struct{}) error { 2608 defer sub.Unsubscribe() 2609 for { 2610 select { 2611 case log := <-logs: 2612 // New log arrived, parse the event and forward to the user 2613 event := new(BridgeTokensTokenLocked) 2614 if err := _BridgeTokens.contract.UnpackLog(event, "TokenLocked", log); err != nil { 2615 return err 2616 } 2617 event.Raw = log 2618 2619 select { 2620 case sink <- event: 2621 case err := <-sub.Err(): 2622 return err 2623 case <-quit: 2624 return nil 2625 } 2626 case err := <-sub.Err(): 2627 return err 2628 case <-quit: 2629 return nil 2630 } 2631 } 2632 }), nil 2633 } 2634 2635 // ParseTokenLocked is a log parse operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 2636 // 2637 // Solidity: event TokenLocked(address indexed token) 2638 func (_BridgeTokens *BridgeTokensFilterer) ParseTokenLocked(log types.Log) (*BridgeTokensTokenLocked, error) { 2639 event := new(BridgeTokensTokenLocked) 2640 if err := _BridgeTokens.contract.UnpackLog(event, "TokenLocked", log); err != nil { 2641 return nil, err 2642 } 2643 return event, nil 2644 } 2645 2646 // BridgeTokensTokenRegisteredIterator is returned from FilterTokenRegistered and is used to iterate over the raw logs and unpacked data for TokenRegistered events raised by the BridgeTokens contract. 2647 type BridgeTokensTokenRegisteredIterator struct { 2648 Event *BridgeTokensTokenRegistered // Event containing the contract specifics and raw log 2649 2650 contract *bind.BoundContract // Generic contract to use for unpacking event data 2651 event string // Event name to use for unpacking event data 2652 2653 logs chan types.Log // Log channel receiving the found contract events 2654 sub klaytn.Subscription // Subscription for errors, completion and termination 2655 done bool // Whether the subscription completed delivering logs 2656 fail error // Occurred error to stop iteration 2657 } 2658 2659 // Next advances the iterator to the subsequent event, returning whether there 2660 // are any more events found. In case of a retrieval or parsing error, false is 2661 // returned and Error() can be queried for the exact failure. 2662 func (it *BridgeTokensTokenRegisteredIterator) Next() bool { 2663 // If the iterator failed, stop iterating 2664 if it.fail != nil { 2665 return false 2666 } 2667 // If the iterator completed, deliver directly whatever's available 2668 if it.done { 2669 select { 2670 case log := <-it.logs: 2671 it.Event = new(BridgeTokensTokenRegistered) 2672 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2673 it.fail = err 2674 return false 2675 } 2676 it.Event.Raw = log 2677 return true 2678 2679 default: 2680 return false 2681 } 2682 } 2683 // Iterator still in progress, wait for either a data or an error event 2684 select { 2685 case log := <-it.logs: 2686 it.Event = new(BridgeTokensTokenRegistered) 2687 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2688 it.fail = err 2689 return false 2690 } 2691 it.Event.Raw = log 2692 return true 2693 2694 case err := <-it.sub.Err(): 2695 it.done = true 2696 it.fail = err 2697 return it.Next() 2698 } 2699 } 2700 2701 // Error returns any retrieval or parsing error occurred during filtering. 2702 func (it *BridgeTokensTokenRegisteredIterator) Error() error { 2703 return it.fail 2704 } 2705 2706 // Close terminates the iteration process, releasing any pending underlying 2707 // resources. 2708 func (it *BridgeTokensTokenRegisteredIterator) Close() error { 2709 it.sub.Unsubscribe() 2710 return nil 2711 } 2712 2713 // BridgeTokensTokenRegistered represents a TokenRegistered event raised by the BridgeTokens contract. 2714 type BridgeTokensTokenRegistered struct { 2715 Token common.Address 2716 Raw types.Log // Blockchain specific contextual infos 2717 } 2718 2719 // FilterTokenRegistered is a free log retrieval operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 2720 // 2721 // Solidity: event TokenRegistered(address indexed token) 2722 func (_BridgeTokens *BridgeTokensFilterer) FilterTokenRegistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTokensTokenRegisteredIterator, error) { 2723 2724 var tokenRule []interface{} 2725 for _, tokenItem := range token { 2726 tokenRule = append(tokenRule, tokenItem) 2727 } 2728 2729 logs, sub, err := _BridgeTokens.contract.FilterLogs(opts, "TokenRegistered", tokenRule) 2730 if err != nil { 2731 return nil, err 2732 } 2733 return &BridgeTokensTokenRegisteredIterator{contract: _BridgeTokens.contract, event: "TokenRegistered", logs: logs, sub: sub}, nil 2734 } 2735 2736 // WatchTokenRegistered is a free log subscription operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 2737 // 2738 // Solidity: event TokenRegistered(address indexed token) 2739 func (_BridgeTokens *BridgeTokensFilterer) WatchTokenRegistered(opts *bind.WatchOpts, sink chan<- *BridgeTokensTokenRegistered, token []common.Address) (event.Subscription, error) { 2740 2741 var tokenRule []interface{} 2742 for _, tokenItem := range token { 2743 tokenRule = append(tokenRule, tokenItem) 2744 } 2745 2746 logs, sub, err := _BridgeTokens.contract.WatchLogs(opts, "TokenRegistered", tokenRule) 2747 if err != nil { 2748 return nil, err 2749 } 2750 return event.NewSubscription(func(quit <-chan struct{}) error { 2751 defer sub.Unsubscribe() 2752 for { 2753 select { 2754 case log := <-logs: 2755 // New log arrived, parse the event and forward to the user 2756 event := new(BridgeTokensTokenRegistered) 2757 if err := _BridgeTokens.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 2758 return err 2759 } 2760 event.Raw = log 2761 2762 select { 2763 case sink <- event: 2764 case err := <-sub.Err(): 2765 return err 2766 case <-quit: 2767 return nil 2768 } 2769 case err := <-sub.Err(): 2770 return err 2771 case <-quit: 2772 return nil 2773 } 2774 } 2775 }), nil 2776 } 2777 2778 // ParseTokenRegistered is a log parse operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 2779 // 2780 // Solidity: event TokenRegistered(address indexed token) 2781 func (_BridgeTokens *BridgeTokensFilterer) ParseTokenRegistered(log types.Log) (*BridgeTokensTokenRegistered, error) { 2782 event := new(BridgeTokensTokenRegistered) 2783 if err := _BridgeTokens.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 2784 return nil, err 2785 } 2786 return event, nil 2787 } 2788 2789 // BridgeTokensTokenUnlockedIterator is returned from FilterTokenUnlocked and is used to iterate over the raw logs and unpacked data for TokenUnlocked events raised by the BridgeTokens contract. 2790 type BridgeTokensTokenUnlockedIterator struct { 2791 Event *BridgeTokensTokenUnlocked // Event containing the contract specifics and raw log 2792 2793 contract *bind.BoundContract // Generic contract to use for unpacking event data 2794 event string // Event name to use for unpacking event data 2795 2796 logs chan types.Log // Log channel receiving the found contract events 2797 sub klaytn.Subscription // Subscription for errors, completion and termination 2798 done bool // Whether the subscription completed delivering logs 2799 fail error // Occurred error to stop iteration 2800 } 2801 2802 // Next advances the iterator to the subsequent event, returning whether there 2803 // are any more events found. In case of a retrieval or parsing error, false is 2804 // returned and Error() can be queried for the exact failure. 2805 func (it *BridgeTokensTokenUnlockedIterator) Next() bool { 2806 // If the iterator failed, stop iterating 2807 if it.fail != nil { 2808 return false 2809 } 2810 // If the iterator completed, deliver directly whatever's available 2811 if it.done { 2812 select { 2813 case log := <-it.logs: 2814 it.Event = new(BridgeTokensTokenUnlocked) 2815 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2816 it.fail = err 2817 return false 2818 } 2819 it.Event.Raw = log 2820 return true 2821 2822 default: 2823 return false 2824 } 2825 } 2826 // Iterator still in progress, wait for either a data or an error event 2827 select { 2828 case log := <-it.logs: 2829 it.Event = new(BridgeTokensTokenUnlocked) 2830 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2831 it.fail = err 2832 return false 2833 } 2834 it.Event.Raw = log 2835 return true 2836 2837 case err := <-it.sub.Err(): 2838 it.done = true 2839 it.fail = err 2840 return it.Next() 2841 } 2842 } 2843 2844 // Error returns any retrieval or parsing error occurred during filtering. 2845 func (it *BridgeTokensTokenUnlockedIterator) Error() error { 2846 return it.fail 2847 } 2848 2849 // Close terminates the iteration process, releasing any pending underlying 2850 // resources. 2851 func (it *BridgeTokensTokenUnlockedIterator) Close() error { 2852 it.sub.Unsubscribe() 2853 return nil 2854 } 2855 2856 // BridgeTokensTokenUnlocked represents a TokenUnlocked event raised by the BridgeTokens contract. 2857 type BridgeTokensTokenUnlocked struct { 2858 Token common.Address 2859 Raw types.Log // Blockchain specific contextual infos 2860 } 2861 2862 // FilterTokenUnlocked is a free log retrieval operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 2863 // 2864 // Solidity: event TokenUnlocked(address indexed token) 2865 func (_BridgeTokens *BridgeTokensFilterer) FilterTokenUnlocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTokensTokenUnlockedIterator, error) { 2866 2867 var tokenRule []interface{} 2868 for _, tokenItem := range token { 2869 tokenRule = append(tokenRule, tokenItem) 2870 } 2871 2872 logs, sub, err := _BridgeTokens.contract.FilterLogs(opts, "TokenUnlocked", tokenRule) 2873 if err != nil { 2874 return nil, err 2875 } 2876 return &BridgeTokensTokenUnlockedIterator{contract: _BridgeTokens.contract, event: "TokenUnlocked", logs: logs, sub: sub}, nil 2877 } 2878 2879 // WatchTokenUnlocked is a free log subscription operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 2880 // 2881 // Solidity: event TokenUnlocked(address indexed token) 2882 func (_BridgeTokens *BridgeTokensFilterer) WatchTokenUnlocked(opts *bind.WatchOpts, sink chan<- *BridgeTokensTokenUnlocked, token []common.Address) (event.Subscription, error) { 2883 2884 var tokenRule []interface{} 2885 for _, tokenItem := range token { 2886 tokenRule = append(tokenRule, tokenItem) 2887 } 2888 2889 logs, sub, err := _BridgeTokens.contract.WatchLogs(opts, "TokenUnlocked", tokenRule) 2890 if err != nil { 2891 return nil, err 2892 } 2893 return event.NewSubscription(func(quit <-chan struct{}) error { 2894 defer sub.Unsubscribe() 2895 for { 2896 select { 2897 case log := <-logs: 2898 // New log arrived, parse the event and forward to the user 2899 event := new(BridgeTokensTokenUnlocked) 2900 if err := _BridgeTokens.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 2901 return err 2902 } 2903 event.Raw = log 2904 2905 select { 2906 case sink <- event: 2907 case err := <-sub.Err(): 2908 return err 2909 case <-quit: 2910 return nil 2911 } 2912 case err := <-sub.Err(): 2913 return err 2914 case <-quit: 2915 return nil 2916 } 2917 } 2918 }), nil 2919 } 2920 2921 // ParseTokenUnlocked is a log parse operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 2922 // 2923 // Solidity: event TokenUnlocked(address indexed token) 2924 func (_BridgeTokens *BridgeTokensFilterer) ParseTokenUnlocked(log types.Log) (*BridgeTokensTokenUnlocked, error) { 2925 event := new(BridgeTokensTokenUnlocked) 2926 if err := _BridgeTokens.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 2927 return nil, err 2928 } 2929 return event, nil 2930 } 2931 2932 // BridgeTransferABI is the input ABI used to generate the binding from. 2933 const BridgeTransferABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"handleNoncesToBlockNums\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"operators\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isRunning\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OPERATOR\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"feeOfERC20\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"lowerHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"upperHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"operatorThresholds\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"modeMintBurn\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"requestNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"handledRequestTx\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"closedValueTransferVotes\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"recoveryBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"configurationNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOperatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeOfKLAY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"start\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"operatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"deregisterOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_voteType\",\"type\":\"uint8\"},{\"name\":\"_threshold\",\"type\":\"uint8\"}],\"name\":\"setOperatorThreshold\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"setFeeReceiver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_modeMintBurn\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"encodingVer\",\"type\":\"uint8\"},{\"indexed\":false,\"name\":\"encodedData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransferEncoded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"requestTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"handleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"lowerHandleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"HandleValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"KLAYFeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"ERC20FeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"}]" 2934 2935 // BridgeTransferBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 2936 const BridgeTransferBinRuntime = `` 2937 2938 // BridgeTransferFuncSigs maps the 4-byte function signature to its string representation. 2939 var BridgeTransferFuncSigs = map[string]string{ 2940 "3a3099d1": "MAX_OPERATOR()", 2941 "9832c1d7": "closedValueTransferVotes(uint64)", 2942 "ac6fff0b": "configurationNonce()", 2943 "d8cf98ca": "deregisterOperator(address)", 2944 "488af871": "feeOfERC20(address)", 2945 "c263b5d6": "feeOfKLAY()", 2946 "b3f00674": "feeReceiver()", 2947 "b2c01030": "getOperatorList()", 2948 "13a6738a": "handleNoncesToBlockNums(uint64)", 2949 "8a75eee2": "handledRequestTx(bytes32)", 2950 "8f32d59b": "isOwner()", 2951 "2014e5d1": "isRunning()", 2952 "4b40b826": "lowerHandleNonce()", 2953 "6e176ec2": "modeMintBurn()", 2954 "cb38f407": "operatorList(uint256)", 2955 "5526f76b": "operatorThresholds(uint8)", 2956 "13e7c9d8": "operators(address)", 2957 "8da5cb5b": "owner()", 2958 "989ba0d3": "recoveryBlockNumber()", 2959 "3682a450": "registerOperator(address)", 2960 "715018a6": "renounceOwnership()", 2961 "7c1a0302": "requestNonce()", 2962 "efdcd974": "setFeeReceiver(address)", 2963 "ee2aec65": "setOperatorThreshold(uint8,uint8)", 2964 "c877cf37": "start(bool)", 2965 "f2fde38b": "transferOwnership(address)", 2966 "54edad72": "upperHandleNonce()", 2967 } 2968 2969 // BridgeTransfer is an auto generated Go binding around a Klaytn contract. 2970 type BridgeTransfer struct { 2971 BridgeTransferCaller // Read-only binding to the contract 2972 BridgeTransferTransactor // Write-only binding to the contract 2973 BridgeTransferFilterer // Log filterer for contract events 2974 } 2975 2976 // BridgeTransferCaller is an auto generated read-only Go binding around a Klaytn contract. 2977 type BridgeTransferCaller struct { 2978 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2979 } 2980 2981 // BridgeTransferTransactor is an auto generated write-only Go binding around a Klaytn contract. 2982 type BridgeTransferTransactor struct { 2983 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2984 } 2985 2986 // BridgeTransferFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 2987 type BridgeTransferFilterer struct { 2988 contract *bind.BoundContract // Generic contract wrapper for the low level calls 2989 } 2990 2991 // BridgeTransferSession is an auto generated Go binding around a Klaytn contract, 2992 // with pre-set call and transact options. 2993 type BridgeTransferSession struct { 2994 Contract *BridgeTransfer // Generic contract binding to set the session for 2995 CallOpts bind.CallOpts // Call options to use throughout this session 2996 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 2997 } 2998 2999 // BridgeTransferCallerSession is an auto generated read-only Go binding around a Klaytn contract, 3000 // with pre-set call options. 3001 type BridgeTransferCallerSession struct { 3002 Contract *BridgeTransferCaller // Generic contract caller binding to set the session for 3003 CallOpts bind.CallOpts // Call options to use throughout this session 3004 } 3005 3006 // BridgeTransferTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 3007 // with pre-set transact options. 3008 type BridgeTransferTransactorSession struct { 3009 Contract *BridgeTransferTransactor // Generic contract transactor binding to set the session for 3010 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 3011 } 3012 3013 // BridgeTransferRaw is an auto generated low-level Go binding around a Klaytn contract. 3014 type BridgeTransferRaw struct { 3015 Contract *BridgeTransfer // Generic contract binding to access the raw methods on 3016 } 3017 3018 // BridgeTransferCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 3019 type BridgeTransferCallerRaw struct { 3020 Contract *BridgeTransferCaller // Generic read-only contract binding to access the raw methods on 3021 } 3022 3023 // BridgeTransferTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 3024 type BridgeTransferTransactorRaw struct { 3025 Contract *BridgeTransferTransactor // Generic write-only contract binding to access the raw methods on 3026 } 3027 3028 // NewBridgeTransfer creates a new instance of BridgeTransfer, bound to a specific deployed contract. 3029 func NewBridgeTransfer(address common.Address, backend bind.ContractBackend) (*BridgeTransfer, error) { 3030 contract, err := bindBridgeTransfer(address, backend, backend, backend) 3031 if err != nil { 3032 return nil, err 3033 } 3034 return &BridgeTransfer{BridgeTransferCaller: BridgeTransferCaller{contract: contract}, BridgeTransferTransactor: BridgeTransferTransactor{contract: contract}, BridgeTransferFilterer: BridgeTransferFilterer{contract: contract}}, nil 3035 } 3036 3037 // NewBridgeTransferCaller creates a new read-only instance of BridgeTransfer, bound to a specific deployed contract. 3038 func NewBridgeTransferCaller(address common.Address, caller bind.ContractCaller) (*BridgeTransferCaller, error) { 3039 contract, err := bindBridgeTransfer(address, caller, nil, nil) 3040 if err != nil { 3041 return nil, err 3042 } 3043 return &BridgeTransferCaller{contract: contract}, nil 3044 } 3045 3046 // NewBridgeTransferTransactor creates a new write-only instance of BridgeTransfer, bound to a specific deployed contract. 3047 func NewBridgeTransferTransactor(address common.Address, transactor bind.ContractTransactor) (*BridgeTransferTransactor, error) { 3048 contract, err := bindBridgeTransfer(address, nil, transactor, nil) 3049 if err != nil { 3050 return nil, err 3051 } 3052 return &BridgeTransferTransactor{contract: contract}, nil 3053 } 3054 3055 // NewBridgeTransferFilterer creates a new log filterer instance of BridgeTransfer, bound to a specific deployed contract. 3056 func NewBridgeTransferFilterer(address common.Address, filterer bind.ContractFilterer) (*BridgeTransferFilterer, error) { 3057 contract, err := bindBridgeTransfer(address, nil, nil, filterer) 3058 if err != nil { 3059 return nil, err 3060 } 3061 return &BridgeTransferFilterer{contract: contract}, nil 3062 } 3063 3064 // bindBridgeTransfer binds a generic wrapper to an already deployed contract. 3065 func bindBridgeTransfer(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 3066 parsed, err := abi.JSON(strings.NewReader(BridgeTransferABI)) 3067 if err != nil { 3068 return nil, err 3069 } 3070 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 3071 } 3072 3073 // Call invokes the (constant) contract method with params as input values and 3074 // sets the output to result. The result type might be a single field for simple 3075 // returns, a slice of interfaces for anonymous returns and a struct for named 3076 // returns. 3077 func (_BridgeTransfer *BridgeTransferRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 3078 return _BridgeTransfer.Contract.BridgeTransferCaller.contract.Call(opts, result, method, params...) 3079 } 3080 3081 // Transfer initiates a plain transaction to move funds to the contract, calling 3082 // its default method if one is available. 3083 func (_BridgeTransfer *BridgeTransferRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3084 return _BridgeTransfer.Contract.BridgeTransferTransactor.contract.Transfer(opts) 3085 } 3086 3087 // Transact invokes the (paid) contract method with params as input values. 3088 func (_BridgeTransfer *BridgeTransferRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3089 return _BridgeTransfer.Contract.BridgeTransferTransactor.contract.Transact(opts, method, params...) 3090 } 3091 3092 // Call invokes the (constant) contract method with params as input values and 3093 // sets the output to result. The result type might be a single field for simple 3094 // returns, a slice of interfaces for anonymous returns and a struct for named 3095 // returns. 3096 func (_BridgeTransfer *BridgeTransferCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 3097 return _BridgeTransfer.Contract.contract.Call(opts, result, method, params...) 3098 } 3099 3100 // Transfer initiates a plain transaction to move funds to the contract, calling 3101 // its default method if one is available. 3102 func (_BridgeTransfer *BridgeTransferTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 3103 return _BridgeTransfer.Contract.contract.Transfer(opts) 3104 } 3105 3106 // Transact invokes the (paid) contract method with params as input values. 3107 func (_BridgeTransfer *BridgeTransferTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 3108 return _BridgeTransfer.Contract.contract.Transact(opts, method, params...) 3109 } 3110 3111 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 3112 // 3113 // Solidity: function MAX_OPERATOR() view returns(uint64) 3114 func (_BridgeTransfer *BridgeTransferCaller) MAXOPERATOR(opts *bind.CallOpts) (uint64, error) { 3115 var ( 3116 ret0 = new(uint64) 3117 ) 3118 out := ret0 3119 err := _BridgeTransfer.contract.Call(opts, out, "MAX_OPERATOR") 3120 return *ret0, err 3121 } 3122 3123 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 3124 // 3125 // Solidity: function MAX_OPERATOR() view returns(uint64) 3126 func (_BridgeTransfer *BridgeTransferSession) MAXOPERATOR() (uint64, error) { 3127 return _BridgeTransfer.Contract.MAXOPERATOR(&_BridgeTransfer.CallOpts) 3128 } 3129 3130 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 3131 // 3132 // Solidity: function MAX_OPERATOR() view returns(uint64) 3133 func (_BridgeTransfer *BridgeTransferCallerSession) MAXOPERATOR() (uint64, error) { 3134 return _BridgeTransfer.Contract.MAXOPERATOR(&_BridgeTransfer.CallOpts) 3135 } 3136 3137 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 3138 // 3139 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 3140 func (_BridgeTransfer *BridgeTransferCaller) ClosedValueTransferVotes(opts *bind.CallOpts, arg0 uint64) (bool, error) { 3141 var ( 3142 ret0 = new(bool) 3143 ) 3144 out := ret0 3145 err := _BridgeTransfer.contract.Call(opts, out, "closedValueTransferVotes", arg0) 3146 return *ret0, err 3147 } 3148 3149 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 3150 // 3151 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 3152 func (_BridgeTransfer *BridgeTransferSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 3153 return _BridgeTransfer.Contract.ClosedValueTransferVotes(&_BridgeTransfer.CallOpts, arg0) 3154 } 3155 3156 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 3157 // 3158 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 3159 func (_BridgeTransfer *BridgeTransferCallerSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 3160 return _BridgeTransfer.Contract.ClosedValueTransferVotes(&_BridgeTransfer.CallOpts, arg0) 3161 } 3162 3163 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 3164 // 3165 // Solidity: function configurationNonce() view returns(uint64) 3166 func (_BridgeTransfer *BridgeTransferCaller) ConfigurationNonce(opts *bind.CallOpts) (uint64, error) { 3167 var ( 3168 ret0 = new(uint64) 3169 ) 3170 out := ret0 3171 err := _BridgeTransfer.contract.Call(opts, out, "configurationNonce") 3172 return *ret0, err 3173 } 3174 3175 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 3176 // 3177 // Solidity: function configurationNonce() view returns(uint64) 3178 func (_BridgeTransfer *BridgeTransferSession) ConfigurationNonce() (uint64, error) { 3179 return _BridgeTransfer.Contract.ConfigurationNonce(&_BridgeTransfer.CallOpts) 3180 } 3181 3182 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 3183 // 3184 // Solidity: function configurationNonce() view returns(uint64) 3185 func (_BridgeTransfer *BridgeTransferCallerSession) ConfigurationNonce() (uint64, error) { 3186 return _BridgeTransfer.Contract.ConfigurationNonce(&_BridgeTransfer.CallOpts) 3187 } 3188 3189 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 3190 // 3191 // Solidity: function feeOfERC20(address ) view returns(uint256) 3192 func (_BridgeTransfer *BridgeTransferCaller) FeeOfERC20(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 3193 var ( 3194 ret0 = new(*big.Int) 3195 ) 3196 out := ret0 3197 err := _BridgeTransfer.contract.Call(opts, out, "feeOfERC20", arg0) 3198 return *ret0, err 3199 } 3200 3201 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 3202 // 3203 // Solidity: function feeOfERC20(address ) view returns(uint256) 3204 func (_BridgeTransfer *BridgeTransferSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 3205 return _BridgeTransfer.Contract.FeeOfERC20(&_BridgeTransfer.CallOpts, arg0) 3206 } 3207 3208 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 3209 // 3210 // Solidity: function feeOfERC20(address ) view returns(uint256) 3211 func (_BridgeTransfer *BridgeTransferCallerSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 3212 return _BridgeTransfer.Contract.FeeOfERC20(&_BridgeTransfer.CallOpts, arg0) 3213 } 3214 3215 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 3216 // 3217 // Solidity: function feeOfKLAY() view returns(uint256) 3218 func (_BridgeTransfer *BridgeTransferCaller) FeeOfKLAY(opts *bind.CallOpts) (*big.Int, error) { 3219 var ( 3220 ret0 = new(*big.Int) 3221 ) 3222 out := ret0 3223 err := _BridgeTransfer.contract.Call(opts, out, "feeOfKLAY") 3224 return *ret0, err 3225 } 3226 3227 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 3228 // 3229 // Solidity: function feeOfKLAY() view returns(uint256) 3230 func (_BridgeTransfer *BridgeTransferSession) FeeOfKLAY() (*big.Int, error) { 3231 return _BridgeTransfer.Contract.FeeOfKLAY(&_BridgeTransfer.CallOpts) 3232 } 3233 3234 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 3235 // 3236 // Solidity: function feeOfKLAY() view returns(uint256) 3237 func (_BridgeTransfer *BridgeTransferCallerSession) FeeOfKLAY() (*big.Int, error) { 3238 return _BridgeTransfer.Contract.FeeOfKLAY(&_BridgeTransfer.CallOpts) 3239 } 3240 3241 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 3242 // 3243 // Solidity: function feeReceiver() view returns(address) 3244 func (_BridgeTransfer *BridgeTransferCaller) FeeReceiver(opts *bind.CallOpts) (common.Address, error) { 3245 var ( 3246 ret0 = new(common.Address) 3247 ) 3248 out := ret0 3249 err := _BridgeTransfer.contract.Call(opts, out, "feeReceiver") 3250 return *ret0, err 3251 } 3252 3253 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 3254 // 3255 // Solidity: function feeReceiver() view returns(address) 3256 func (_BridgeTransfer *BridgeTransferSession) FeeReceiver() (common.Address, error) { 3257 return _BridgeTransfer.Contract.FeeReceiver(&_BridgeTransfer.CallOpts) 3258 } 3259 3260 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 3261 // 3262 // Solidity: function feeReceiver() view returns(address) 3263 func (_BridgeTransfer *BridgeTransferCallerSession) FeeReceiver() (common.Address, error) { 3264 return _BridgeTransfer.Contract.FeeReceiver(&_BridgeTransfer.CallOpts) 3265 } 3266 3267 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 3268 // 3269 // Solidity: function getOperatorList() view returns(address[]) 3270 func (_BridgeTransfer *BridgeTransferCaller) GetOperatorList(opts *bind.CallOpts) ([]common.Address, error) { 3271 var ( 3272 ret0 = new([]common.Address) 3273 ) 3274 out := ret0 3275 err := _BridgeTransfer.contract.Call(opts, out, "getOperatorList") 3276 return *ret0, err 3277 } 3278 3279 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 3280 // 3281 // Solidity: function getOperatorList() view returns(address[]) 3282 func (_BridgeTransfer *BridgeTransferSession) GetOperatorList() ([]common.Address, error) { 3283 return _BridgeTransfer.Contract.GetOperatorList(&_BridgeTransfer.CallOpts) 3284 } 3285 3286 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 3287 // 3288 // Solidity: function getOperatorList() view returns(address[]) 3289 func (_BridgeTransfer *BridgeTransferCallerSession) GetOperatorList() ([]common.Address, error) { 3290 return _BridgeTransfer.Contract.GetOperatorList(&_BridgeTransfer.CallOpts) 3291 } 3292 3293 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 3294 // 3295 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 3296 func (_BridgeTransfer *BridgeTransferCaller) HandleNoncesToBlockNums(opts *bind.CallOpts, arg0 uint64) (uint64, error) { 3297 var ( 3298 ret0 = new(uint64) 3299 ) 3300 out := ret0 3301 err := _BridgeTransfer.contract.Call(opts, out, "handleNoncesToBlockNums", arg0) 3302 return *ret0, err 3303 } 3304 3305 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 3306 // 3307 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 3308 func (_BridgeTransfer *BridgeTransferSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 3309 return _BridgeTransfer.Contract.HandleNoncesToBlockNums(&_BridgeTransfer.CallOpts, arg0) 3310 } 3311 3312 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 3313 // 3314 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 3315 func (_BridgeTransfer *BridgeTransferCallerSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 3316 return _BridgeTransfer.Contract.HandleNoncesToBlockNums(&_BridgeTransfer.CallOpts, arg0) 3317 } 3318 3319 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 3320 // 3321 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 3322 func (_BridgeTransfer *BridgeTransferCaller) HandledRequestTx(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { 3323 var ( 3324 ret0 = new(bool) 3325 ) 3326 out := ret0 3327 err := _BridgeTransfer.contract.Call(opts, out, "handledRequestTx", arg0) 3328 return *ret0, err 3329 } 3330 3331 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 3332 // 3333 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 3334 func (_BridgeTransfer *BridgeTransferSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 3335 return _BridgeTransfer.Contract.HandledRequestTx(&_BridgeTransfer.CallOpts, arg0) 3336 } 3337 3338 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 3339 // 3340 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 3341 func (_BridgeTransfer *BridgeTransferCallerSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 3342 return _BridgeTransfer.Contract.HandledRequestTx(&_BridgeTransfer.CallOpts, arg0) 3343 } 3344 3345 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 3346 // 3347 // Solidity: function isOwner() view returns(bool) 3348 func (_BridgeTransfer *BridgeTransferCaller) IsOwner(opts *bind.CallOpts) (bool, error) { 3349 var ( 3350 ret0 = new(bool) 3351 ) 3352 out := ret0 3353 err := _BridgeTransfer.contract.Call(opts, out, "isOwner") 3354 return *ret0, err 3355 } 3356 3357 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 3358 // 3359 // Solidity: function isOwner() view returns(bool) 3360 func (_BridgeTransfer *BridgeTransferSession) IsOwner() (bool, error) { 3361 return _BridgeTransfer.Contract.IsOwner(&_BridgeTransfer.CallOpts) 3362 } 3363 3364 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 3365 // 3366 // Solidity: function isOwner() view returns(bool) 3367 func (_BridgeTransfer *BridgeTransferCallerSession) IsOwner() (bool, error) { 3368 return _BridgeTransfer.Contract.IsOwner(&_BridgeTransfer.CallOpts) 3369 } 3370 3371 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 3372 // 3373 // Solidity: function isRunning() view returns(bool) 3374 func (_BridgeTransfer *BridgeTransferCaller) IsRunning(opts *bind.CallOpts) (bool, error) { 3375 var ( 3376 ret0 = new(bool) 3377 ) 3378 out := ret0 3379 err := _BridgeTransfer.contract.Call(opts, out, "isRunning") 3380 return *ret0, err 3381 } 3382 3383 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 3384 // 3385 // Solidity: function isRunning() view returns(bool) 3386 func (_BridgeTransfer *BridgeTransferSession) IsRunning() (bool, error) { 3387 return _BridgeTransfer.Contract.IsRunning(&_BridgeTransfer.CallOpts) 3388 } 3389 3390 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 3391 // 3392 // Solidity: function isRunning() view returns(bool) 3393 func (_BridgeTransfer *BridgeTransferCallerSession) IsRunning() (bool, error) { 3394 return _BridgeTransfer.Contract.IsRunning(&_BridgeTransfer.CallOpts) 3395 } 3396 3397 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 3398 // 3399 // Solidity: function lowerHandleNonce() view returns(uint64) 3400 func (_BridgeTransfer *BridgeTransferCaller) LowerHandleNonce(opts *bind.CallOpts) (uint64, error) { 3401 var ( 3402 ret0 = new(uint64) 3403 ) 3404 out := ret0 3405 err := _BridgeTransfer.contract.Call(opts, out, "lowerHandleNonce") 3406 return *ret0, err 3407 } 3408 3409 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 3410 // 3411 // Solidity: function lowerHandleNonce() view returns(uint64) 3412 func (_BridgeTransfer *BridgeTransferSession) LowerHandleNonce() (uint64, error) { 3413 return _BridgeTransfer.Contract.LowerHandleNonce(&_BridgeTransfer.CallOpts) 3414 } 3415 3416 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 3417 // 3418 // Solidity: function lowerHandleNonce() view returns(uint64) 3419 func (_BridgeTransfer *BridgeTransferCallerSession) LowerHandleNonce() (uint64, error) { 3420 return _BridgeTransfer.Contract.LowerHandleNonce(&_BridgeTransfer.CallOpts) 3421 } 3422 3423 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 3424 // 3425 // Solidity: function modeMintBurn() view returns(bool) 3426 func (_BridgeTransfer *BridgeTransferCaller) ModeMintBurn(opts *bind.CallOpts) (bool, error) { 3427 var ( 3428 ret0 = new(bool) 3429 ) 3430 out := ret0 3431 err := _BridgeTransfer.contract.Call(opts, out, "modeMintBurn") 3432 return *ret0, err 3433 } 3434 3435 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 3436 // 3437 // Solidity: function modeMintBurn() view returns(bool) 3438 func (_BridgeTransfer *BridgeTransferSession) ModeMintBurn() (bool, error) { 3439 return _BridgeTransfer.Contract.ModeMintBurn(&_BridgeTransfer.CallOpts) 3440 } 3441 3442 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 3443 // 3444 // Solidity: function modeMintBurn() view returns(bool) 3445 func (_BridgeTransfer *BridgeTransferCallerSession) ModeMintBurn() (bool, error) { 3446 return _BridgeTransfer.Contract.ModeMintBurn(&_BridgeTransfer.CallOpts) 3447 } 3448 3449 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 3450 // 3451 // Solidity: function operatorList(uint256 ) view returns(address) 3452 func (_BridgeTransfer *BridgeTransferCaller) OperatorList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 3453 var ( 3454 ret0 = new(common.Address) 3455 ) 3456 out := ret0 3457 err := _BridgeTransfer.contract.Call(opts, out, "operatorList", arg0) 3458 return *ret0, err 3459 } 3460 3461 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 3462 // 3463 // Solidity: function operatorList(uint256 ) view returns(address) 3464 func (_BridgeTransfer *BridgeTransferSession) OperatorList(arg0 *big.Int) (common.Address, error) { 3465 return _BridgeTransfer.Contract.OperatorList(&_BridgeTransfer.CallOpts, arg0) 3466 } 3467 3468 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 3469 // 3470 // Solidity: function operatorList(uint256 ) view returns(address) 3471 func (_BridgeTransfer *BridgeTransferCallerSession) OperatorList(arg0 *big.Int) (common.Address, error) { 3472 return _BridgeTransfer.Contract.OperatorList(&_BridgeTransfer.CallOpts, arg0) 3473 } 3474 3475 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 3476 // 3477 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 3478 func (_BridgeTransfer *BridgeTransferCaller) OperatorThresholds(opts *bind.CallOpts, arg0 uint8) (uint8, error) { 3479 var ( 3480 ret0 = new(uint8) 3481 ) 3482 out := ret0 3483 err := _BridgeTransfer.contract.Call(opts, out, "operatorThresholds", arg0) 3484 return *ret0, err 3485 } 3486 3487 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 3488 // 3489 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 3490 func (_BridgeTransfer *BridgeTransferSession) OperatorThresholds(arg0 uint8) (uint8, error) { 3491 return _BridgeTransfer.Contract.OperatorThresholds(&_BridgeTransfer.CallOpts, arg0) 3492 } 3493 3494 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 3495 // 3496 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 3497 func (_BridgeTransfer *BridgeTransferCallerSession) OperatorThresholds(arg0 uint8) (uint8, error) { 3498 return _BridgeTransfer.Contract.OperatorThresholds(&_BridgeTransfer.CallOpts, arg0) 3499 } 3500 3501 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 3502 // 3503 // Solidity: function operators(address ) view returns(bool) 3504 func (_BridgeTransfer *BridgeTransferCaller) Operators(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 3505 var ( 3506 ret0 = new(bool) 3507 ) 3508 out := ret0 3509 err := _BridgeTransfer.contract.Call(opts, out, "operators", arg0) 3510 return *ret0, err 3511 } 3512 3513 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 3514 // 3515 // Solidity: function operators(address ) view returns(bool) 3516 func (_BridgeTransfer *BridgeTransferSession) Operators(arg0 common.Address) (bool, error) { 3517 return _BridgeTransfer.Contract.Operators(&_BridgeTransfer.CallOpts, arg0) 3518 } 3519 3520 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 3521 // 3522 // Solidity: function operators(address ) view returns(bool) 3523 func (_BridgeTransfer *BridgeTransferCallerSession) Operators(arg0 common.Address) (bool, error) { 3524 return _BridgeTransfer.Contract.Operators(&_BridgeTransfer.CallOpts, arg0) 3525 } 3526 3527 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3528 // 3529 // Solidity: function owner() view returns(address) 3530 func (_BridgeTransfer *BridgeTransferCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 3531 var ( 3532 ret0 = new(common.Address) 3533 ) 3534 out := ret0 3535 err := _BridgeTransfer.contract.Call(opts, out, "owner") 3536 return *ret0, err 3537 } 3538 3539 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3540 // 3541 // Solidity: function owner() view returns(address) 3542 func (_BridgeTransfer *BridgeTransferSession) Owner() (common.Address, error) { 3543 return _BridgeTransfer.Contract.Owner(&_BridgeTransfer.CallOpts) 3544 } 3545 3546 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 3547 // 3548 // Solidity: function owner() view returns(address) 3549 func (_BridgeTransfer *BridgeTransferCallerSession) Owner() (common.Address, error) { 3550 return _BridgeTransfer.Contract.Owner(&_BridgeTransfer.CallOpts) 3551 } 3552 3553 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 3554 // 3555 // Solidity: function recoveryBlockNumber() view returns(uint64) 3556 func (_BridgeTransfer *BridgeTransferCaller) RecoveryBlockNumber(opts *bind.CallOpts) (uint64, error) { 3557 var ( 3558 ret0 = new(uint64) 3559 ) 3560 out := ret0 3561 err := _BridgeTransfer.contract.Call(opts, out, "recoveryBlockNumber") 3562 return *ret0, err 3563 } 3564 3565 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 3566 // 3567 // Solidity: function recoveryBlockNumber() view returns(uint64) 3568 func (_BridgeTransfer *BridgeTransferSession) RecoveryBlockNumber() (uint64, error) { 3569 return _BridgeTransfer.Contract.RecoveryBlockNumber(&_BridgeTransfer.CallOpts) 3570 } 3571 3572 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 3573 // 3574 // Solidity: function recoveryBlockNumber() view returns(uint64) 3575 func (_BridgeTransfer *BridgeTransferCallerSession) RecoveryBlockNumber() (uint64, error) { 3576 return _BridgeTransfer.Contract.RecoveryBlockNumber(&_BridgeTransfer.CallOpts) 3577 } 3578 3579 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 3580 // 3581 // Solidity: function requestNonce() view returns(uint64) 3582 func (_BridgeTransfer *BridgeTransferCaller) RequestNonce(opts *bind.CallOpts) (uint64, error) { 3583 var ( 3584 ret0 = new(uint64) 3585 ) 3586 out := ret0 3587 err := _BridgeTransfer.contract.Call(opts, out, "requestNonce") 3588 return *ret0, err 3589 } 3590 3591 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 3592 // 3593 // Solidity: function requestNonce() view returns(uint64) 3594 func (_BridgeTransfer *BridgeTransferSession) RequestNonce() (uint64, error) { 3595 return _BridgeTransfer.Contract.RequestNonce(&_BridgeTransfer.CallOpts) 3596 } 3597 3598 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 3599 // 3600 // Solidity: function requestNonce() view returns(uint64) 3601 func (_BridgeTransfer *BridgeTransferCallerSession) RequestNonce() (uint64, error) { 3602 return _BridgeTransfer.Contract.RequestNonce(&_BridgeTransfer.CallOpts) 3603 } 3604 3605 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 3606 // 3607 // Solidity: function upperHandleNonce() view returns(uint64) 3608 func (_BridgeTransfer *BridgeTransferCaller) UpperHandleNonce(opts *bind.CallOpts) (uint64, error) { 3609 var ( 3610 ret0 = new(uint64) 3611 ) 3612 out := ret0 3613 err := _BridgeTransfer.contract.Call(opts, out, "upperHandleNonce") 3614 return *ret0, err 3615 } 3616 3617 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 3618 // 3619 // Solidity: function upperHandleNonce() view returns(uint64) 3620 func (_BridgeTransfer *BridgeTransferSession) UpperHandleNonce() (uint64, error) { 3621 return _BridgeTransfer.Contract.UpperHandleNonce(&_BridgeTransfer.CallOpts) 3622 } 3623 3624 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 3625 // 3626 // Solidity: function upperHandleNonce() view returns(uint64) 3627 func (_BridgeTransfer *BridgeTransferCallerSession) UpperHandleNonce() (uint64, error) { 3628 return _BridgeTransfer.Contract.UpperHandleNonce(&_BridgeTransfer.CallOpts) 3629 } 3630 3631 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 3632 // 3633 // Solidity: function deregisterOperator(address _operator) returns() 3634 func (_BridgeTransfer *BridgeTransferTransactor) DeregisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 3635 return _BridgeTransfer.contract.Transact(opts, "deregisterOperator", _operator) 3636 } 3637 3638 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 3639 // 3640 // Solidity: function deregisterOperator(address _operator) returns() 3641 func (_BridgeTransfer *BridgeTransferSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 3642 return _BridgeTransfer.Contract.DeregisterOperator(&_BridgeTransfer.TransactOpts, _operator) 3643 } 3644 3645 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 3646 // 3647 // Solidity: function deregisterOperator(address _operator) returns() 3648 func (_BridgeTransfer *BridgeTransferTransactorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 3649 return _BridgeTransfer.Contract.DeregisterOperator(&_BridgeTransfer.TransactOpts, _operator) 3650 } 3651 3652 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 3653 // 3654 // Solidity: function registerOperator(address _operator) returns() 3655 func (_BridgeTransfer *BridgeTransferTransactor) RegisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 3656 return _BridgeTransfer.contract.Transact(opts, "registerOperator", _operator) 3657 } 3658 3659 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 3660 // 3661 // Solidity: function registerOperator(address _operator) returns() 3662 func (_BridgeTransfer *BridgeTransferSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 3663 return _BridgeTransfer.Contract.RegisterOperator(&_BridgeTransfer.TransactOpts, _operator) 3664 } 3665 3666 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 3667 // 3668 // Solidity: function registerOperator(address _operator) returns() 3669 func (_BridgeTransfer *BridgeTransferTransactorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 3670 return _BridgeTransfer.Contract.RegisterOperator(&_BridgeTransfer.TransactOpts, _operator) 3671 } 3672 3673 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 3674 // 3675 // Solidity: function renounceOwnership() returns() 3676 func (_BridgeTransfer *BridgeTransferTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 3677 return _BridgeTransfer.contract.Transact(opts, "renounceOwnership") 3678 } 3679 3680 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 3681 // 3682 // Solidity: function renounceOwnership() returns() 3683 func (_BridgeTransfer *BridgeTransferSession) RenounceOwnership() (*types.Transaction, error) { 3684 return _BridgeTransfer.Contract.RenounceOwnership(&_BridgeTransfer.TransactOpts) 3685 } 3686 3687 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 3688 // 3689 // Solidity: function renounceOwnership() returns() 3690 func (_BridgeTransfer *BridgeTransferTransactorSession) RenounceOwnership() (*types.Transaction, error) { 3691 return _BridgeTransfer.Contract.RenounceOwnership(&_BridgeTransfer.TransactOpts) 3692 } 3693 3694 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 3695 // 3696 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 3697 func (_BridgeTransfer *BridgeTransferTransactor) SetFeeReceiver(opts *bind.TransactOpts, _feeReceiver common.Address) (*types.Transaction, error) { 3698 return _BridgeTransfer.contract.Transact(opts, "setFeeReceiver", _feeReceiver) 3699 } 3700 3701 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 3702 // 3703 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 3704 func (_BridgeTransfer *BridgeTransferSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 3705 return _BridgeTransfer.Contract.SetFeeReceiver(&_BridgeTransfer.TransactOpts, _feeReceiver) 3706 } 3707 3708 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 3709 // 3710 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 3711 func (_BridgeTransfer *BridgeTransferTransactorSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 3712 return _BridgeTransfer.Contract.SetFeeReceiver(&_BridgeTransfer.TransactOpts, _feeReceiver) 3713 } 3714 3715 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 3716 // 3717 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 3718 func (_BridgeTransfer *BridgeTransferTransactor) SetOperatorThreshold(opts *bind.TransactOpts, _voteType uint8, _threshold uint8) (*types.Transaction, error) { 3719 return _BridgeTransfer.contract.Transact(opts, "setOperatorThreshold", _voteType, _threshold) 3720 } 3721 3722 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 3723 // 3724 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 3725 func (_BridgeTransfer *BridgeTransferSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 3726 return _BridgeTransfer.Contract.SetOperatorThreshold(&_BridgeTransfer.TransactOpts, _voteType, _threshold) 3727 } 3728 3729 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 3730 // 3731 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 3732 func (_BridgeTransfer *BridgeTransferTransactorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 3733 return _BridgeTransfer.Contract.SetOperatorThreshold(&_BridgeTransfer.TransactOpts, _voteType, _threshold) 3734 } 3735 3736 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 3737 // 3738 // Solidity: function start(bool _status) returns() 3739 func (_BridgeTransfer *BridgeTransferTransactor) Start(opts *bind.TransactOpts, _status bool) (*types.Transaction, error) { 3740 return _BridgeTransfer.contract.Transact(opts, "start", _status) 3741 } 3742 3743 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 3744 // 3745 // Solidity: function start(bool _status) returns() 3746 func (_BridgeTransfer *BridgeTransferSession) Start(_status bool) (*types.Transaction, error) { 3747 return _BridgeTransfer.Contract.Start(&_BridgeTransfer.TransactOpts, _status) 3748 } 3749 3750 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 3751 // 3752 // Solidity: function start(bool _status) returns() 3753 func (_BridgeTransfer *BridgeTransferTransactorSession) Start(_status bool) (*types.Transaction, error) { 3754 return _BridgeTransfer.Contract.Start(&_BridgeTransfer.TransactOpts, _status) 3755 } 3756 3757 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3758 // 3759 // Solidity: function transferOwnership(address newOwner) returns() 3760 func (_BridgeTransfer *BridgeTransferTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 3761 return _BridgeTransfer.contract.Transact(opts, "transferOwnership", newOwner) 3762 } 3763 3764 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3765 // 3766 // Solidity: function transferOwnership(address newOwner) returns() 3767 func (_BridgeTransfer *BridgeTransferSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 3768 return _BridgeTransfer.Contract.TransferOwnership(&_BridgeTransfer.TransactOpts, newOwner) 3769 } 3770 3771 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 3772 // 3773 // Solidity: function transferOwnership(address newOwner) returns() 3774 func (_BridgeTransfer *BridgeTransferTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 3775 return _BridgeTransfer.Contract.TransferOwnership(&_BridgeTransfer.TransactOpts, newOwner) 3776 } 3777 3778 // BridgeTransferERC20FeeChangedIterator is returned from FilterERC20FeeChanged and is used to iterate over the raw logs and unpacked data for ERC20FeeChanged events raised by the BridgeTransfer contract. 3779 type BridgeTransferERC20FeeChangedIterator struct { 3780 Event *BridgeTransferERC20FeeChanged // Event containing the contract specifics and raw log 3781 3782 contract *bind.BoundContract // Generic contract to use for unpacking event data 3783 event string // Event name to use for unpacking event data 3784 3785 logs chan types.Log // Log channel receiving the found contract events 3786 sub klaytn.Subscription // Subscription for errors, completion and termination 3787 done bool // Whether the subscription completed delivering logs 3788 fail error // Occurred error to stop iteration 3789 } 3790 3791 // Next advances the iterator to the subsequent event, returning whether there 3792 // are any more events found. In case of a retrieval or parsing error, false is 3793 // returned and Error() can be queried for the exact failure. 3794 func (it *BridgeTransferERC20FeeChangedIterator) Next() bool { 3795 // If the iterator failed, stop iterating 3796 if it.fail != nil { 3797 return false 3798 } 3799 // If the iterator completed, deliver directly whatever's available 3800 if it.done { 3801 select { 3802 case log := <-it.logs: 3803 it.Event = new(BridgeTransferERC20FeeChanged) 3804 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3805 it.fail = err 3806 return false 3807 } 3808 it.Event.Raw = log 3809 return true 3810 3811 default: 3812 return false 3813 } 3814 } 3815 // Iterator still in progress, wait for either a data or an error event 3816 select { 3817 case log := <-it.logs: 3818 it.Event = new(BridgeTransferERC20FeeChanged) 3819 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3820 it.fail = err 3821 return false 3822 } 3823 it.Event.Raw = log 3824 return true 3825 3826 case err := <-it.sub.Err(): 3827 it.done = true 3828 it.fail = err 3829 return it.Next() 3830 } 3831 } 3832 3833 // Error returns any retrieval or parsing error occurred during filtering. 3834 func (it *BridgeTransferERC20FeeChangedIterator) Error() error { 3835 return it.fail 3836 } 3837 3838 // Close terminates the iteration process, releasing any pending underlying 3839 // resources. 3840 func (it *BridgeTransferERC20FeeChangedIterator) Close() error { 3841 it.sub.Unsubscribe() 3842 return nil 3843 } 3844 3845 // BridgeTransferERC20FeeChanged represents a ERC20FeeChanged event raised by the BridgeTransfer contract. 3846 type BridgeTransferERC20FeeChanged struct { 3847 Token common.Address 3848 Fee *big.Int 3849 Raw types.Log // Blockchain specific contextual infos 3850 } 3851 3852 // FilterERC20FeeChanged is a free log retrieval operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 3853 // 3854 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 3855 func (_BridgeTransfer *BridgeTransferFilterer) FilterERC20FeeChanged(opts *bind.FilterOpts, token []common.Address, fee []*big.Int) (*BridgeTransferERC20FeeChangedIterator, error) { 3856 3857 var tokenRule []interface{} 3858 for _, tokenItem := range token { 3859 tokenRule = append(tokenRule, tokenItem) 3860 } 3861 var feeRule []interface{} 3862 for _, feeItem := range fee { 3863 feeRule = append(feeRule, feeItem) 3864 } 3865 3866 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 3867 if err != nil { 3868 return nil, err 3869 } 3870 return &BridgeTransferERC20FeeChangedIterator{contract: _BridgeTransfer.contract, event: "ERC20FeeChanged", logs: logs, sub: sub}, nil 3871 } 3872 3873 // WatchERC20FeeChanged is a free log subscription operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 3874 // 3875 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 3876 func (_BridgeTransfer *BridgeTransferFilterer) WatchERC20FeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20FeeChanged, token []common.Address, fee []*big.Int) (event.Subscription, error) { 3877 3878 var tokenRule []interface{} 3879 for _, tokenItem := range token { 3880 tokenRule = append(tokenRule, tokenItem) 3881 } 3882 var feeRule []interface{} 3883 for _, feeItem := range fee { 3884 feeRule = append(feeRule, feeItem) 3885 } 3886 3887 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 3888 if err != nil { 3889 return nil, err 3890 } 3891 return event.NewSubscription(func(quit <-chan struct{}) error { 3892 defer sub.Unsubscribe() 3893 for { 3894 select { 3895 case log := <-logs: 3896 // New log arrived, parse the event and forward to the user 3897 event := new(BridgeTransferERC20FeeChanged) 3898 if err := _BridgeTransfer.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 3899 return err 3900 } 3901 event.Raw = log 3902 3903 select { 3904 case sink <- event: 3905 case err := <-sub.Err(): 3906 return err 3907 case <-quit: 3908 return nil 3909 } 3910 case err := <-sub.Err(): 3911 return err 3912 case <-quit: 3913 return nil 3914 } 3915 } 3916 }), nil 3917 } 3918 3919 // ParseERC20FeeChanged is a log parse operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 3920 // 3921 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 3922 func (_BridgeTransfer *BridgeTransferFilterer) ParseERC20FeeChanged(log types.Log) (*BridgeTransferERC20FeeChanged, error) { 3923 event := new(BridgeTransferERC20FeeChanged) 3924 if err := _BridgeTransfer.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 3925 return nil, err 3926 } 3927 return event, nil 3928 } 3929 3930 // BridgeTransferFeeReceiverChangedIterator is returned from FilterFeeReceiverChanged and is used to iterate over the raw logs and unpacked data for FeeReceiverChanged events raised by the BridgeTransfer contract. 3931 type BridgeTransferFeeReceiverChangedIterator struct { 3932 Event *BridgeTransferFeeReceiverChanged // Event containing the contract specifics and raw log 3933 3934 contract *bind.BoundContract // Generic contract to use for unpacking event data 3935 event string // Event name to use for unpacking event data 3936 3937 logs chan types.Log // Log channel receiving the found contract events 3938 sub klaytn.Subscription // Subscription for errors, completion and termination 3939 done bool // Whether the subscription completed delivering logs 3940 fail error // Occurred error to stop iteration 3941 } 3942 3943 // Next advances the iterator to the subsequent event, returning whether there 3944 // are any more events found. In case of a retrieval or parsing error, false is 3945 // returned and Error() can be queried for the exact failure. 3946 func (it *BridgeTransferFeeReceiverChangedIterator) Next() bool { 3947 // If the iterator failed, stop iterating 3948 if it.fail != nil { 3949 return false 3950 } 3951 // If the iterator completed, deliver directly whatever's available 3952 if it.done { 3953 select { 3954 case log := <-it.logs: 3955 it.Event = new(BridgeTransferFeeReceiverChanged) 3956 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3957 it.fail = err 3958 return false 3959 } 3960 it.Event.Raw = log 3961 return true 3962 3963 default: 3964 return false 3965 } 3966 } 3967 // Iterator still in progress, wait for either a data or an error event 3968 select { 3969 case log := <-it.logs: 3970 it.Event = new(BridgeTransferFeeReceiverChanged) 3971 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 3972 it.fail = err 3973 return false 3974 } 3975 it.Event.Raw = log 3976 return true 3977 3978 case err := <-it.sub.Err(): 3979 it.done = true 3980 it.fail = err 3981 return it.Next() 3982 } 3983 } 3984 3985 // Error returns any retrieval or parsing error occurred during filtering. 3986 func (it *BridgeTransferFeeReceiverChangedIterator) Error() error { 3987 return it.fail 3988 } 3989 3990 // Close terminates the iteration process, releasing any pending underlying 3991 // resources. 3992 func (it *BridgeTransferFeeReceiverChangedIterator) Close() error { 3993 it.sub.Unsubscribe() 3994 return nil 3995 } 3996 3997 // BridgeTransferFeeReceiverChanged represents a FeeReceiverChanged event raised by the BridgeTransfer contract. 3998 type BridgeTransferFeeReceiverChanged struct { 3999 FeeReceiver common.Address 4000 Raw types.Log // Blockchain specific contextual infos 4001 } 4002 4003 // FilterFeeReceiverChanged is a free log retrieval operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 4004 // 4005 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 4006 func (_BridgeTransfer *BridgeTransferFilterer) FilterFeeReceiverChanged(opts *bind.FilterOpts, feeReceiver []common.Address) (*BridgeTransferFeeReceiverChangedIterator, error) { 4007 4008 var feeReceiverRule []interface{} 4009 for _, feeReceiverItem := range feeReceiver { 4010 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 4011 } 4012 4013 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "FeeReceiverChanged", feeReceiverRule) 4014 if err != nil { 4015 return nil, err 4016 } 4017 return &BridgeTransferFeeReceiverChangedIterator{contract: _BridgeTransfer.contract, event: "FeeReceiverChanged", logs: logs, sub: sub}, nil 4018 } 4019 4020 // WatchFeeReceiverChanged is a free log subscription operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 4021 // 4022 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 4023 func (_BridgeTransfer *BridgeTransferFilterer) WatchFeeReceiverChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferFeeReceiverChanged, feeReceiver []common.Address) (event.Subscription, error) { 4024 4025 var feeReceiverRule []interface{} 4026 for _, feeReceiverItem := range feeReceiver { 4027 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 4028 } 4029 4030 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "FeeReceiverChanged", feeReceiverRule) 4031 if err != nil { 4032 return nil, err 4033 } 4034 return event.NewSubscription(func(quit <-chan struct{}) error { 4035 defer sub.Unsubscribe() 4036 for { 4037 select { 4038 case log := <-logs: 4039 // New log arrived, parse the event and forward to the user 4040 event := new(BridgeTransferFeeReceiverChanged) 4041 if err := _BridgeTransfer.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 4042 return err 4043 } 4044 event.Raw = log 4045 4046 select { 4047 case sink <- event: 4048 case err := <-sub.Err(): 4049 return err 4050 case <-quit: 4051 return nil 4052 } 4053 case err := <-sub.Err(): 4054 return err 4055 case <-quit: 4056 return nil 4057 } 4058 } 4059 }), nil 4060 } 4061 4062 // ParseFeeReceiverChanged is a log parse operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 4063 // 4064 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 4065 func (_BridgeTransfer *BridgeTransferFilterer) ParseFeeReceiverChanged(log types.Log) (*BridgeTransferFeeReceiverChanged, error) { 4066 event := new(BridgeTransferFeeReceiverChanged) 4067 if err := _BridgeTransfer.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 4068 return nil, err 4069 } 4070 return event, nil 4071 } 4072 4073 // BridgeTransferHandleValueTransferIterator is returned from FilterHandleValueTransfer and is used to iterate over the raw logs and unpacked data for HandleValueTransfer events raised by the BridgeTransfer contract. 4074 type BridgeTransferHandleValueTransferIterator struct { 4075 Event *BridgeTransferHandleValueTransfer // Event containing the contract specifics and raw log 4076 4077 contract *bind.BoundContract // Generic contract to use for unpacking event data 4078 event string // Event name to use for unpacking event data 4079 4080 logs chan types.Log // Log channel receiving the found contract events 4081 sub klaytn.Subscription // Subscription for errors, completion and termination 4082 done bool // Whether the subscription completed delivering logs 4083 fail error // Occurred error to stop iteration 4084 } 4085 4086 // Next advances the iterator to the subsequent event, returning whether there 4087 // are any more events found. In case of a retrieval or parsing error, false is 4088 // returned and Error() can be queried for the exact failure. 4089 func (it *BridgeTransferHandleValueTransferIterator) Next() bool { 4090 // If the iterator failed, stop iterating 4091 if it.fail != nil { 4092 return false 4093 } 4094 // If the iterator completed, deliver directly whatever's available 4095 if it.done { 4096 select { 4097 case log := <-it.logs: 4098 it.Event = new(BridgeTransferHandleValueTransfer) 4099 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4100 it.fail = err 4101 return false 4102 } 4103 it.Event.Raw = log 4104 return true 4105 4106 default: 4107 return false 4108 } 4109 } 4110 // Iterator still in progress, wait for either a data or an error event 4111 select { 4112 case log := <-it.logs: 4113 it.Event = new(BridgeTransferHandleValueTransfer) 4114 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4115 it.fail = err 4116 return false 4117 } 4118 it.Event.Raw = log 4119 return true 4120 4121 case err := <-it.sub.Err(): 4122 it.done = true 4123 it.fail = err 4124 return it.Next() 4125 } 4126 } 4127 4128 // Error returns any retrieval or parsing error occurred during filtering. 4129 func (it *BridgeTransferHandleValueTransferIterator) Error() error { 4130 return it.fail 4131 } 4132 4133 // Close terminates the iteration process, releasing any pending underlying 4134 // resources. 4135 func (it *BridgeTransferHandleValueTransferIterator) Close() error { 4136 it.sub.Unsubscribe() 4137 return nil 4138 } 4139 4140 // BridgeTransferHandleValueTransfer represents a HandleValueTransfer event raised by the BridgeTransfer contract. 4141 type BridgeTransferHandleValueTransfer struct { 4142 RequestTxHash [32]byte 4143 TokenType uint8 4144 From common.Address 4145 To common.Address 4146 TokenAddress common.Address 4147 ValueOrTokenId *big.Int 4148 HandleNonce uint64 4149 LowerHandleNonce uint64 4150 ExtraData []byte 4151 Raw types.Log // Blockchain specific contextual infos 4152 } 4153 4154 // FilterHandleValueTransfer is a free log retrieval operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 4155 // 4156 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 4157 func (_BridgeTransfer *BridgeTransferFilterer) FilterHandleValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferHandleValueTransferIterator, error) { 4158 4159 var fromRule []interface{} 4160 for _, fromItem := range from { 4161 fromRule = append(fromRule, fromItem) 4162 } 4163 var toRule []interface{} 4164 for _, toItem := range to { 4165 toRule = append(toRule, toItem) 4166 } 4167 var tokenAddressRule []interface{} 4168 for _, tokenAddressItem := range tokenAddress { 4169 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4170 } 4171 4172 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 4173 if err != nil { 4174 return nil, err 4175 } 4176 return &BridgeTransferHandleValueTransferIterator{contract: _BridgeTransfer.contract, event: "HandleValueTransfer", logs: logs, sub: sub}, nil 4177 } 4178 4179 // WatchHandleValueTransfer is a free log subscription operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 4180 // 4181 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 4182 func (_BridgeTransfer *BridgeTransferFilterer) WatchHandleValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferHandleValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 4183 4184 var fromRule []interface{} 4185 for _, fromItem := range from { 4186 fromRule = append(fromRule, fromItem) 4187 } 4188 var toRule []interface{} 4189 for _, toItem := range to { 4190 toRule = append(toRule, toItem) 4191 } 4192 var tokenAddressRule []interface{} 4193 for _, tokenAddressItem := range tokenAddress { 4194 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4195 } 4196 4197 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 4198 if err != nil { 4199 return nil, err 4200 } 4201 return event.NewSubscription(func(quit <-chan struct{}) error { 4202 defer sub.Unsubscribe() 4203 for { 4204 select { 4205 case log := <-logs: 4206 // New log arrived, parse the event and forward to the user 4207 event := new(BridgeTransferHandleValueTransfer) 4208 if err := _BridgeTransfer.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 4209 return err 4210 } 4211 event.Raw = log 4212 4213 select { 4214 case sink <- event: 4215 case err := <-sub.Err(): 4216 return err 4217 case <-quit: 4218 return nil 4219 } 4220 case err := <-sub.Err(): 4221 return err 4222 case <-quit: 4223 return nil 4224 } 4225 } 4226 }), nil 4227 } 4228 4229 // ParseHandleValueTransfer is a log parse operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 4230 // 4231 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 4232 func (_BridgeTransfer *BridgeTransferFilterer) ParseHandleValueTransfer(log types.Log) (*BridgeTransferHandleValueTransfer, error) { 4233 event := new(BridgeTransferHandleValueTransfer) 4234 if err := _BridgeTransfer.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 4235 return nil, err 4236 } 4237 return event, nil 4238 } 4239 4240 // BridgeTransferKLAYFeeChangedIterator is returned from FilterKLAYFeeChanged and is used to iterate over the raw logs and unpacked data for KLAYFeeChanged events raised by the BridgeTransfer contract. 4241 type BridgeTransferKLAYFeeChangedIterator struct { 4242 Event *BridgeTransferKLAYFeeChanged // Event containing the contract specifics and raw log 4243 4244 contract *bind.BoundContract // Generic contract to use for unpacking event data 4245 event string // Event name to use for unpacking event data 4246 4247 logs chan types.Log // Log channel receiving the found contract events 4248 sub klaytn.Subscription // Subscription for errors, completion and termination 4249 done bool // Whether the subscription completed delivering logs 4250 fail error // Occurred error to stop iteration 4251 } 4252 4253 // Next advances the iterator to the subsequent event, returning whether there 4254 // are any more events found. In case of a retrieval or parsing error, false is 4255 // returned and Error() can be queried for the exact failure. 4256 func (it *BridgeTransferKLAYFeeChangedIterator) Next() bool { 4257 // If the iterator failed, stop iterating 4258 if it.fail != nil { 4259 return false 4260 } 4261 // If the iterator completed, deliver directly whatever's available 4262 if it.done { 4263 select { 4264 case log := <-it.logs: 4265 it.Event = new(BridgeTransferKLAYFeeChanged) 4266 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4267 it.fail = err 4268 return false 4269 } 4270 it.Event.Raw = log 4271 return true 4272 4273 default: 4274 return false 4275 } 4276 } 4277 // Iterator still in progress, wait for either a data or an error event 4278 select { 4279 case log := <-it.logs: 4280 it.Event = new(BridgeTransferKLAYFeeChanged) 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 case err := <-it.sub.Err(): 4289 it.done = true 4290 it.fail = err 4291 return it.Next() 4292 } 4293 } 4294 4295 // Error returns any retrieval or parsing error occurred during filtering. 4296 func (it *BridgeTransferKLAYFeeChangedIterator) Error() error { 4297 return it.fail 4298 } 4299 4300 // Close terminates the iteration process, releasing any pending underlying 4301 // resources. 4302 func (it *BridgeTransferKLAYFeeChangedIterator) Close() error { 4303 it.sub.Unsubscribe() 4304 return nil 4305 } 4306 4307 // BridgeTransferKLAYFeeChanged represents a KLAYFeeChanged event raised by the BridgeTransfer contract. 4308 type BridgeTransferKLAYFeeChanged struct { 4309 Fee *big.Int 4310 Raw types.Log // Blockchain specific contextual infos 4311 } 4312 4313 // FilterKLAYFeeChanged is a free log retrieval operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 4314 // 4315 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 4316 func (_BridgeTransfer *BridgeTransferFilterer) FilterKLAYFeeChanged(opts *bind.FilterOpts, fee []*big.Int) (*BridgeTransferKLAYFeeChangedIterator, error) { 4317 4318 var feeRule []interface{} 4319 for _, feeItem := range fee { 4320 feeRule = append(feeRule, feeItem) 4321 } 4322 4323 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "KLAYFeeChanged", feeRule) 4324 if err != nil { 4325 return nil, err 4326 } 4327 return &BridgeTransferKLAYFeeChangedIterator{contract: _BridgeTransfer.contract, event: "KLAYFeeChanged", logs: logs, sub: sub}, nil 4328 } 4329 4330 // WatchKLAYFeeChanged is a free log subscription operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 4331 // 4332 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 4333 func (_BridgeTransfer *BridgeTransferFilterer) WatchKLAYFeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferKLAYFeeChanged, fee []*big.Int) (event.Subscription, error) { 4334 4335 var feeRule []interface{} 4336 for _, feeItem := range fee { 4337 feeRule = append(feeRule, feeItem) 4338 } 4339 4340 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "KLAYFeeChanged", feeRule) 4341 if err != nil { 4342 return nil, err 4343 } 4344 return event.NewSubscription(func(quit <-chan struct{}) error { 4345 defer sub.Unsubscribe() 4346 for { 4347 select { 4348 case log := <-logs: 4349 // New log arrived, parse the event and forward to the user 4350 event := new(BridgeTransferKLAYFeeChanged) 4351 if err := _BridgeTransfer.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 4352 return err 4353 } 4354 event.Raw = log 4355 4356 select { 4357 case sink <- event: 4358 case err := <-sub.Err(): 4359 return err 4360 case <-quit: 4361 return nil 4362 } 4363 case err := <-sub.Err(): 4364 return err 4365 case <-quit: 4366 return nil 4367 } 4368 } 4369 }), nil 4370 } 4371 4372 // ParseKLAYFeeChanged is a log parse operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 4373 // 4374 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 4375 func (_BridgeTransfer *BridgeTransferFilterer) ParseKLAYFeeChanged(log types.Log) (*BridgeTransferKLAYFeeChanged, error) { 4376 event := new(BridgeTransferKLAYFeeChanged) 4377 if err := _BridgeTransfer.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 4378 return nil, err 4379 } 4380 return event, nil 4381 } 4382 4383 // BridgeTransferOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the BridgeTransfer contract. 4384 type BridgeTransferOwnershipTransferredIterator struct { 4385 Event *BridgeTransferOwnershipTransferred // Event containing the contract specifics and raw log 4386 4387 contract *bind.BoundContract // Generic contract to use for unpacking event data 4388 event string // Event name to use for unpacking event data 4389 4390 logs chan types.Log // Log channel receiving the found contract events 4391 sub klaytn.Subscription // Subscription for errors, completion and termination 4392 done bool // Whether the subscription completed delivering logs 4393 fail error // Occurred error to stop iteration 4394 } 4395 4396 // Next advances the iterator to the subsequent event, returning whether there 4397 // are any more events found. In case of a retrieval or parsing error, false is 4398 // returned and Error() can be queried for the exact failure. 4399 func (it *BridgeTransferOwnershipTransferredIterator) Next() bool { 4400 // If the iterator failed, stop iterating 4401 if it.fail != nil { 4402 return false 4403 } 4404 // If the iterator completed, deliver directly whatever's available 4405 if it.done { 4406 select { 4407 case log := <-it.logs: 4408 it.Event = new(BridgeTransferOwnershipTransferred) 4409 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4410 it.fail = err 4411 return false 4412 } 4413 it.Event.Raw = log 4414 return true 4415 4416 default: 4417 return false 4418 } 4419 } 4420 // Iterator still in progress, wait for either a data or an error event 4421 select { 4422 case log := <-it.logs: 4423 it.Event = new(BridgeTransferOwnershipTransferred) 4424 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4425 it.fail = err 4426 return false 4427 } 4428 it.Event.Raw = log 4429 return true 4430 4431 case err := <-it.sub.Err(): 4432 it.done = true 4433 it.fail = err 4434 return it.Next() 4435 } 4436 } 4437 4438 // Error returns any retrieval or parsing error occurred during filtering. 4439 func (it *BridgeTransferOwnershipTransferredIterator) Error() error { 4440 return it.fail 4441 } 4442 4443 // Close terminates the iteration process, releasing any pending underlying 4444 // resources. 4445 func (it *BridgeTransferOwnershipTransferredIterator) Close() error { 4446 it.sub.Unsubscribe() 4447 return nil 4448 } 4449 4450 // BridgeTransferOwnershipTransferred represents a OwnershipTransferred event raised by the BridgeTransfer contract. 4451 type BridgeTransferOwnershipTransferred struct { 4452 PreviousOwner common.Address 4453 NewOwner common.Address 4454 Raw types.Log // Blockchain specific contextual infos 4455 } 4456 4457 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 4458 // 4459 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 4460 func (_BridgeTransfer *BridgeTransferFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*BridgeTransferOwnershipTransferredIterator, error) { 4461 4462 var previousOwnerRule []interface{} 4463 for _, previousOwnerItem := range previousOwner { 4464 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 4465 } 4466 var newOwnerRule []interface{} 4467 for _, newOwnerItem := range newOwner { 4468 newOwnerRule = append(newOwnerRule, newOwnerItem) 4469 } 4470 4471 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 4472 if err != nil { 4473 return nil, err 4474 } 4475 return &BridgeTransferOwnershipTransferredIterator{contract: _BridgeTransfer.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 4476 } 4477 4478 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 4479 // 4480 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 4481 func (_BridgeTransfer *BridgeTransferFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *BridgeTransferOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 4482 4483 var previousOwnerRule []interface{} 4484 for _, previousOwnerItem := range previousOwner { 4485 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 4486 } 4487 var newOwnerRule []interface{} 4488 for _, newOwnerItem := range newOwner { 4489 newOwnerRule = append(newOwnerRule, newOwnerItem) 4490 } 4491 4492 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 4493 if err != nil { 4494 return nil, err 4495 } 4496 return event.NewSubscription(func(quit <-chan struct{}) error { 4497 defer sub.Unsubscribe() 4498 for { 4499 select { 4500 case log := <-logs: 4501 // New log arrived, parse the event and forward to the user 4502 event := new(BridgeTransferOwnershipTransferred) 4503 if err := _BridgeTransfer.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 4504 return err 4505 } 4506 event.Raw = log 4507 4508 select { 4509 case sink <- event: 4510 case err := <-sub.Err(): 4511 return err 4512 case <-quit: 4513 return nil 4514 } 4515 case err := <-sub.Err(): 4516 return err 4517 case <-quit: 4518 return nil 4519 } 4520 } 4521 }), nil 4522 } 4523 4524 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 4525 // 4526 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 4527 func (_BridgeTransfer *BridgeTransferFilterer) ParseOwnershipTransferred(log types.Log) (*BridgeTransferOwnershipTransferred, error) { 4528 event := new(BridgeTransferOwnershipTransferred) 4529 if err := _BridgeTransfer.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 4530 return nil, err 4531 } 4532 return event, nil 4533 } 4534 4535 // BridgeTransferRequestValueTransferIterator is returned from FilterRequestValueTransfer and is used to iterate over the raw logs and unpacked data for RequestValueTransfer events raised by the BridgeTransfer contract. 4536 type BridgeTransferRequestValueTransferIterator struct { 4537 Event *BridgeTransferRequestValueTransfer // Event containing the contract specifics and raw log 4538 4539 contract *bind.BoundContract // Generic contract to use for unpacking event data 4540 event string // Event name to use for unpacking event data 4541 4542 logs chan types.Log // Log channel receiving the found contract events 4543 sub klaytn.Subscription // Subscription for errors, completion and termination 4544 done bool // Whether the subscription completed delivering logs 4545 fail error // Occurred error to stop iteration 4546 } 4547 4548 // Next advances the iterator to the subsequent event, returning whether there 4549 // are any more events found. In case of a retrieval or parsing error, false is 4550 // returned and Error() can be queried for the exact failure. 4551 func (it *BridgeTransferRequestValueTransferIterator) Next() bool { 4552 // If the iterator failed, stop iterating 4553 if it.fail != nil { 4554 return false 4555 } 4556 // If the iterator completed, deliver directly whatever's available 4557 if it.done { 4558 select { 4559 case log := <-it.logs: 4560 it.Event = new(BridgeTransferRequestValueTransfer) 4561 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4562 it.fail = err 4563 return false 4564 } 4565 it.Event.Raw = log 4566 return true 4567 4568 default: 4569 return false 4570 } 4571 } 4572 // Iterator still in progress, wait for either a data or an error event 4573 select { 4574 case log := <-it.logs: 4575 it.Event = new(BridgeTransferRequestValueTransfer) 4576 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4577 it.fail = err 4578 return false 4579 } 4580 it.Event.Raw = log 4581 return true 4582 4583 case err := <-it.sub.Err(): 4584 it.done = true 4585 it.fail = err 4586 return it.Next() 4587 } 4588 } 4589 4590 // Error returns any retrieval or parsing error occurred during filtering. 4591 func (it *BridgeTransferRequestValueTransferIterator) Error() error { 4592 return it.fail 4593 } 4594 4595 // Close terminates the iteration process, releasing any pending underlying 4596 // resources. 4597 func (it *BridgeTransferRequestValueTransferIterator) Close() error { 4598 it.sub.Unsubscribe() 4599 return nil 4600 } 4601 4602 // BridgeTransferRequestValueTransfer represents a RequestValueTransfer event raised by the BridgeTransfer contract. 4603 type BridgeTransferRequestValueTransfer struct { 4604 TokenType uint8 4605 From common.Address 4606 To common.Address 4607 TokenAddress common.Address 4608 ValueOrTokenId *big.Int 4609 RequestNonce uint64 4610 Fee *big.Int 4611 ExtraData []byte 4612 Raw types.Log // Blockchain specific contextual infos 4613 } 4614 4615 // FilterRequestValueTransfer is a free log retrieval operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 4616 // 4617 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 4618 func (_BridgeTransfer *BridgeTransferFilterer) FilterRequestValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferRequestValueTransferIterator, error) { 4619 4620 var fromRule []interface{} 4621 for _, fromItem := range from { 4622 fromRule = append(fromRule, fromItem) 4623 } 4624 var toRule []interface{} 4625 for _, toItem := range to { 4626 toRule = append(toRule, toItem) 4627 } 4628 var tokenAddressRule []interface{} 4629 for _, tokenAddressItem := range tokenAddress { 4630 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4631 } 4632 4633 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 4634 if err != nil { 4635 return nil, err 4636 } 4637 return &BridgeTransferRequestValueTransferIterator{contract: _BridgeTransfer.contract, event: "RequestValueTransfer", logs: logs, sub: sub}, nil 4638 } 4639 4640 // WatchRequestValueTransfer is a free log subscription operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 4641 // 4642 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 4643 func (_BridgeTransfer *BridgeTransferFilterer) WatchRequestValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferRequestValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 4644 4645 var fromRule []interface{} 4646 for _, fromItem := range from { 4647 fromRule = append(fromRule, fromItem) 4648 } 4649 var toRule []interface{} 4650 for _, toItem := range to { 4651 toRule = append(toRule, toItem) 4652 } 4653 var tokenAddressRule []interface{} 4654 for _, tokenAddressItem := range tokenAddress { 4655 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4656 } 4657 4658 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 4659 if err != nil { 4660 return nil, err 4661 } 4662 return event.NewSubscription(func(quit <-chan struct{}) error { 4663 defer sub.Unsubscribe() 4664 for { 4665 select { 4666 case log := <-logs: 4667 // New log arrived, parse the event and forward to the user 4668 event := new(BridgeTransferRequestValueTransfer) 4669 if err := _BridgeTransfer.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 4670 return err 4671 } 4672 event.Raw = log 4673 4674 select { 4675 case sink <- event: 4676 case err := <-sub.Err(): 4677 return err 4678 case <-quit: 4679 return nil 4680 } 4681 case err := <-sub.Err(): 4682 return err 4683 case <-quit: 4684 return nil 4685 } 4686 } 4687 }), nil 4688 } 4689 4690 // ParseRequestValueTransfer is a log parse operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 4691 // 4692 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 4693 func (_BridgeTransfer *BridgeTransferFilterer) ParseRequestValueTransfer(log types.Log) (*BridgeTransferRequestValueTransfer, error) { 4694 event := new(BridgeTransferRequestValueTransfer) 4695 if err := _BridgeTransfer.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 4696 return nil, err 4697 } 4698 return event, nil 4699 } 4700 4701 // BridgeTransferRequestValueTransferEncodedIterator is returned from FilterRequestValueTransferEncoded and is used to iterate over the raw logs and unpacked data for RequestValueTransferEncoded events raised by the BridgeTransfer contract. 4702 type BridgeTransferRequestValueTransferEncodedIterator struct { 4703 Event *BridgeTransferRequestValueTransferEncoded // Event containing the contract specifics and raw log 4704 4705 contract *bind.BoundContract // Generic contract to use for unpacking event data 4706 event string // Event name to use for unpacking event data 4707 4708 logs chan types.Log // Log channel receiving the found contract events 4709 sub klaytn.Subscription // Subscription for errors, completion and termination 4710 done bool // Whether the subscription completed delivering logs 4711 fail error // Occurred error to stop iteration 4712 } 4713 4714 // Next advances the iterator to the subsequent event, returning whether there 4715 // are any more events found. In case of a retrieval or parsing error, false is 4716 // returned and Error() can be queried for the exact failure. 4717 func (it *BridgeTransferRequestValueTransferEncodedIterator) Next() bool { 4718 // If the iterator failed, stop iterating 4719 if it.fail != nil { 4720 return false 4721 } 4722 // If the iterator completed, deliver directly whatever's available 4723 if it.done { 4724 select { 4725 case log := <-it.logs: 4726 it.Event = new(BridgeTransferRequestValueTransferEncoded) 4727 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4728 it.fail = err 4729 return false 4730 } 4731 it.Event.Raw = log 4732 return true 4733 4734 default: 4735 return false 4736 } 4737 } 4738 // Iterator still in progress, wait for either a data or an error event 4739 select { 4740 case log := <-it.logs: 4741 it.Event = new(BridgeTransferRequestValueTransferEncoded) 4742 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 4743 it.fail = err 4744 return false 4745 } 4746 it.Event.Raw = log 4747 return true 4748 4749 case err := <-it.sub.Err(): 4750 it.done = true 4751 it.fail = err 4752 return it.Next() 4753 } 4754 } 4755 4756 // Error returns any retrieval or parsing error occurred during filtering. 4757 func (it *BridgeTransferRequestValueTransferEncodedIterator) Error() error { 4758 return it.fail 4759 } 4760 4761 // Close terminates the iteration process, releasing any pending underlying 4762 // resources. 4763 func (it *BridgeTransferRequestValueTransferEncodedIterator) Close() error { 4764 it.sub.Unsubscribe() 4765 return nil 4766 } 4767 4768 // BridgeTransferRequestValueTransferEncoded represents a RequestValueTransferEncoded event raised by the BridgeTransfer contract. 4769 type BridgeTransferRequestValueTransferEncoded struct { 4770 TokenType uint8 4771 From common.Address 4772 To common.Address 4773 TokenAddress common.Address 4774 ValueOrTokenId *big.Int 4775 RequestNonce uint64 4776 Fee *big.Int 4777 ExtraData []byte 4778 EncodingVer uint8 4779 EncodedData []byte 4780 Raw types.Log // Blockchain specific contextual infos 4781 } 4782 4783 // FilterRequestValueTransferEncoded is a free log retrieval operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 4784 // 4785 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 4786 func (_BridgeTransfer *BridgeTransferFilterer) FilterRequestValueTransferEncoded(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferRequestValueTransferEncodedIterator, error) { 4787 4788 var fromRule []interface{} 4789 for _, fromItem := range from { 4790 fromRule = append(fromRule, fromItem) 4791 } 4792 var toRule []interface{} 4793 for _, toItem := range to { 4794 toRule = append(toRule, toItem) 4795 } 4796 var tokenAddressRule []interface{} 4797 for _, tokenAddressItem := range tokenAddress { 4798 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4799 } 4800 4801 logs, sub, err := _BridgeTransfer.contract.FilterLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 4802 if err != nil { 4803 return nil, err 4804 } 4805 return &BridgeTransferRequestValueTransferEncodedIterator{contract: _BridgeTransfer.contract, event: "RequestValueTransferEncoded", logs: logs, sub: sub}, nil 4806 } 4807 4808 // WatchRequestValueTransferEncoded is a free log subscription operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 4809 // 4810 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 4811 func (_BridgeTransfer *BridgeTransferFilterer) WatchRequestValueTransferEncoded(opts *bind.WatchOpts, sink chan<- *BridgeTransferRequestValueTransferEncoded, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 4812 4813 var fromRule []interface{} 4814 for _, fromItem := range from { 4815 fromRule = append(fromRule, fromItem) 4816 } 4817 var toRule []interface{} 4818 for _, toItem := range to { 4819 toRule = append(toRule, toItem) 4820 } 4821 var tokenAddressRule []interface{} 4822 for _, tokenAddressItem := range tokenAddress { 4823 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 4824 } 4825 4826 logs, sub, err := _BridgeTransfer.contract.WatchLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 4827 if err != nil { 4828 return nil, err 4829 } 4830 return event.NewSubscription(func(quit <-chan struct{}) error { 4831 defer sub.Unsubscribe() 4832 for { 4833 select { 4834 case log := <-logs: 4835 // New log arrived, parse the event and forward to the user 4836 event := new(BridgeTransferRequestValueTransferEncoded) 4837 if err := _BridgeTransfer.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 4838 return err 4839 } 4840 event.Raw = log 4841 4842 select { 4843 case sink <- event: 4844 case err := <-sub.Err(): 4845 return err 4846 case <-quit: 4847 return nil 4848 } 4849 case err := <-sub.Err(): 4850 return err 4851 case <-quit: 4852 return nil 4853 } 4854 } 4855 }), nil 4856 } 4857 4858 // ParseRequestValueTransferEncoded is a log parse operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 4859 // 4860 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 4861 func (_BridgeTransfer *BridgeTransferFilterer) ParseRequestValueTransferEncoded(log types.Log) (*BridgeTransferRequestValueTransferEncoded, error) { 4862 event := new(BridgeTransferRequestValueTransferEncoded) 4863 if err := _BridgeTransfer.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 4864 return nil, err 4865 } 4866 return event, nil 4867 } 4868 4869 // BridgeTransferERC20ABI is the input ABI used to generate the binding from. 4870 const BridgeTransferERC20ABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"lockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"handleNoncesToBlockNums\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"operators\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isRunning\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"requestERC20Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"uint256\"},{\"name\":\"_requestNonce\",\"type\":\"uint64\"}],\"name\":\"setERC20Fee\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OPERATOR\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"registeredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_requestTxHash\",\"type\":\"bytes32\"},{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_requestedNonce\",\"type\":\"uint64\"},{\"name\":\"_requestedBlockNumber\",\"type\":\"uint64\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"handleERC20Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_cToken\",\"type\":\"address\"}],\"name\":\"registerToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"feeOfERC20\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"indexOfTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"lowerHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"upperHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"operatorThresholds\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"lockedTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"modeMintBurn\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"requestNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"handledRequestTx\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"registeredTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"closedValueTransferVotes\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"recoveryBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"unlockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"configurationNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOperatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"deregisterToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeOfKLAY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"start\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"operatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"deregisterOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRegisteredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_voteType\",\"type\":\"uint8\"},{\"name\":\"_threshold\",\"type\":\"uint8\"}],\"name\":\"setOperatorThreshold\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"setFeeReceiver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC20Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"encodingVer\",\"type\":\"uint8\"},{\"indexed\":false,\"name\":\"encodedData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransferEncoded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"requestTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"handleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"lowerHandleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"HandleValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenDeregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenLocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenUnlocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"KLAYFeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"ERC20FeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"}]" 4871 4872 // BridgeTransferERC20BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 4873 const BridgeTransferERC20BinRuntime = `` 4874 4875 // BridgeTransferERC20FuncSigs maps the 4-byte function signature to its string representation. 4876 var BridgeTransferERC20FuncSigs = map[string]string{ 4877 "3a3099d1": "MAX_OPERATOR()", 4878 "9832c1d7": "closedValueTransferVotes(uint64)", 4879 "ac6fff0b": "configurationNonce()", 4880 "d8cf98ca": "deregisterOperator(address)", 4881 "bab2af1d": "deregisterToken(address)", 4882 "488af871": "feeOfERC20(address)", 4883 "c263b5d6": "feeOfKLAY()", 4884 "b3f00674": "feeReceiver()", 4885 "b2c01030": "getOperatorList()", 4886 "ea21eade": "getRegisteredTokenList()", 4887 "407e6bae": "handleERC20Transfer(bytes32,address,address,address,uint256,uint64,uint64,bytes)", 4888 "13a6738a": "handleNoncesToBlockNums(uint64)", 4889 "8a75eee2": "handledRequestTx(bytes32)", 4890 "48a18a6a": "indexOfTokens(address)", 4891 "8f32d59b": "isOwner()", 4892 "2014e5d1": "isRunning()", 4893 "10693fcd": "lockToken(address)", 4894 "5eb7413a": "lockedTokens(address)", 4895 "4b40b826": "lowerHandleNonce()", 4896 "6e176ec2": "modeMintBurn()", 4897 "f1656e53": "onERC20Received(address,address,uint256,uint256,bytes)", 4898 "cb38f407": "operatorList(uint256)", 4899 "5526f76b": "operatorThresholds(uint8)", 4900 "13e7c9d8": "operators(address)", 4901 "8da5cb5b": "owner()", 4902 "989ba0d3": "recoveryBlockNumber()", 4903 "3682a450": "registerOperator(address)", 4904 "4739f7e5": "registerToken(address,address)", 4905 "3e4fe949": "registeredTokenList(uint256)", 4906 "8c0bd916": "registeredTokens(address)", 4907 "715018a6": "renounceOwnership()", 4908 "26c23b54": "requestERC20Transfer(address,address,uint256,uint256,bytes)", 4909 "7c1a0302": "requestNonce()", 4910 "2f88396c": "setERC20Fee(address,uint256,uint64)", 4911 "efdcd974": "setFeeReceiver(address)", 4912 "ee2aec65": "setOperatorThreshold(uint8,uint8)", 4913 "c877cf37": "start(bool)", 4914 "f2fde38b": "transferOwnership(address)", 4915 "9ef2017b": "unlockToken(address)", 4916 "54edad72": "upperHandleNonce()", 4917 } 4918 4919 // BridgeTransferERC20 is an auto generated Go binding around a Klaytn contract. 4920 type BridgeTransferERC20 struct { 4921 BridgeTransferERC20Caller // Read-only binding to the contract 4922 BridgeTransferERC20Transactor // Write-only binding to the contract 4923 BridgeTransferERC20Filterer // Log filterer for contract events 4924 } 4925 4926 // BridgeTransferERC20Caller is an auto generated read-only Go binding around a Klaytn contract. 4927 type BridgeTransferERC20Caller struct { 4928 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4929 } 4930 4931 // BridgeTransferERC20Transactor is an auto generated write-only Go binding around a Klaytn contract. 4932 type BridgeTransferERC20Transactor struct { 4933 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4934 } 4935 4936 // BridgeTransferERC20Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 4937 type BridgeTransferERC20Filterer struct { 4938 contract *bind.BoundContract // Generic contract wrapper for the low level calls 4939 } 4940 4941 // BridgeTransferERC20Session is an auto generated Go binding around a Klaytn contract, 4942 // with pre-set call and transact options. 4943 type BridgeTransferERC20Session struct { 4944 Contract *BridgeTransferERC20 // Generic contract binding to set the session for 4945 CallOpts bind.CallOpts // Call options to use throughout this session 4946 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 4947 } 4948 4949 // BridgeTransferERC20CallerSession is an auto generated read-only Go binding around a Klaytn contract, 4950 // with pre-set call options. 4951 type BridgeTransferERC20CallerSession struct { 4952 Contract *BridgeTransferERC20Caller // Generic contract caller binding to set the session for 4953 CallOpts bind.CallOpts // Call options to use throughout this session 4954 } 4955 4956 // BridgeTransferERC20TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 4957 // with pre-set transact options. 4958 type BridgeTransferERC20TransactorSession struct { 4959 Contract *BridgeTransferERC20Transactor // Generic contract transactor binding to set the session for 4960 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 4961 } 4962 4963 // BridgeTransferERC20Raw is an auto generated low-level Go binding around a Klaytn contract. 4964 type BridgeTransferERC20Raw struct { 4965 Contract *BridgeTransferERC20 // Generic contract binding to access the raw methods on 4966 } 4967 4968 // BridgeTransferERC20CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 4969 type BridgeTransferERC20CallerRaw struct { 4970 Contract *BridgeTransferERC20Caller // Generic read-only contract binding to access the raw methods on 4971 } 4972 4973 // BridgeTransferERC20TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 4974 type BridgeTransferERC20TransactorRaw struct { 4975 Contract *BridgeTransferERC20Transactor // Generic write-only contract binding to access the raw methods on 4976 } 4977 4978 // NewBridgeTransferERC20 creates a new instance of BridgeTransferERC20, bound to a specific deployed contract. 4979 func NewBridgeTransferERC20(address common.Address, backend bind.ContractBackend) (*BridgeTransferERC20, error) { 4980 contract, err := bindBridgeTransferERC20(address, backend, backend, backend) 4981 if err != nil { 4982 return nil, err 4983 } 4984 return &BridgeTransferERC20{BridgeTransferERC20Caller: BridgeTransferERC20Caller{contract: contract}, BridgeTransferERC20Transactor: BridgeTransferERC20Transactor{contract: contract}, BridgeTransferERC20Filterer: BridgeTransferERC20Filterer{contract: contract}}, nil 4985 } 4986 4987 // NewBridgeTransferERC20Caller creates a new read-only instance of BridgeTransferERC20, bound to a specific deployed contract. 4988 func NewBridgeTransferERC20Caller(address common.Address, caller bind.ContractCaller) (*BridgeTransferERC20Caller, error) { 4989 contract, err := bindBridgeTransferERC20(address, caller, nil, nil) 4990 if err != nil { 4991 return nil, err 4992 } 4993 return &BridgeTransferERC20Caller{contract: contract}, nil 4994 } 4995 4996 // NewBridgeTransferERC20Transactor creates a new write-only instance of BridgeTransferERC20, bound to a specific deployed contract. 4997 func NewBridgeTransferERC20Transactor(address common.Address, transactor bind.ContractTransactor) (*BridgeTransferERC20Transactor, error) { 4998 contract, err := bindBridgeTransferERC20(address, nil, transactor, nil) 4999 if err != nil { 5000 return nil, err 5001 } 5002 return &BridgeTransferERC20Transactor{contract: contract}, nil 5003 } 5004 5005 // NewBridgeTransferERC20Filterer creates a new log filterer instance of BridgeTransferERC20, bound to a specific deployed contract. 5006 func NewBridgeTransferERC20Filterer(address common.Address, filterer bind.ContractFilterer) (*BridgeTransferERC20Filterer, error) { 5007 contract, err := bindBridgeTransferERC20(address, nil, nil, filterer) 5008 if err != nil { 5009 return nil, err 5010 } 5011 return &BridgeTransferERC20Filterer{contract: contract}, nil 5012 } 5013 5014 // bindBridgeTransferERC20 binds a generic wrapper to an already deployed contract. 5015 func bindBridgeTransferERC20(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 5016 parsed, err := abi.JSON(strings.NewReader(BridgeTransferERC20ABI)) 5017 if err != nil { 5018 return nil, err 5019 } 5020 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 5021 } 5022 5023 // Call invokes the (constant) contract method with params as input values and 5024 // sets the output to result. The result type might be a single field for simple 5025 // returns, a slice of interfaces for anonymous returns and a struct for named 5026 // returns. 5027 func (_BridgeTransferERC20 *BridgeTransferERC20Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 5028 return _BridgeTransferERC20.Contract.BridgeTransferERC20Caller.contract.Call(opts, result, method, params...) 5029 } 5030 5031 // Transfer initiates a plain transaction to move funds to the contract, calling 5032 // its default method if one is available. 5033 func (_BridgeTransferERC20 *BridgeTransferERC20Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 5034 return _BridgeTransferERC20.Contract.BridgeTransferERC20Transactor.contract.Transfer(opts) 5035 } 5036 5037 // Transact invokes the (paid) contract method with params as input values. 5038 func (_BridgeTransferERC20 *BridgeTransferERC20Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 5039 return _BridgeTransferERC20.Contract.BridgeTransferERC20Transactor.contract.Transact(opts, method, params...) 5040 } 5041 5042 // Call invokes the (constant) contract method with params as input values and 5043 // sets the output to result. The result type might be a single field for simple 5044 // returns, a slice of interfaces for anonymous returns and a struct for named 5045 // returns. 5046 func (_BridgeTransferERC20 *BridgeTransferERC20CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 5047 return _BridgeTransferERC20.Contract.contract.Call(opts, result, method, params...) 5048 } 5049 5050 // Transfer initiates a plain transaction to move funds to the contract, calling 5051 // its default method if one is available. 5052 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 5053 return _BridgeTransferERC20.Contract.contract.Transfer(opts) 5054 } 5055 5056 // Transact invokes the (paid) contract method with params as input values. 5057 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 5058 return _BridgeTransferERC20.Contract.contract.Transact(opts, method, params...) 5059 } 5060 5061 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 5062 // 5063 // Solidity: function MAX_OPERATOR() view returns(uint64) 5064 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) MAXOPERATOR(opts *bind.CallOpts) (uint64, error) { 5065 var ( 5066 ret0 = new(uint64) 5067 ) 5068 out := ret0 5069 err := _BridgeTransferERC20.contract.Call(opts, out, "MAX_OPERATOR") 5070 return *ret0, err 5071 } 5072 5073 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 5074 // 5075 // Solidity: function MAX_OPERATOR() view returns(uint64) 5076 func (_BridgeTransferERC20 *BridgeTransferERC20Session) MAXOPERATOR() (uint64, error) { 5077 return _BridgeTransferERC20.Contract.MAXOPERATOR(&_BridgeTransferERC20.CallOpts) 5078 } 5079 5080 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 5081 // 5082 // Solidity: function MAX_OPERATOR() view returns(uint64) 5083 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) MAXOPERATOR() (uint64, error) { 5084 return _BridgeTransferERC20.Contract.MAXOPERATOR(&_BridgeTransferERC20.CallOpts) 5085 } 5086 5087 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 5088 // 5089 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 5090 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) ClosedValueTransferVotes(opts *bind.CallOpts, arg0 uint64) (bool, error) { 5091 var ( 5092 ret0 = new(bool) 5093 ) 5094 out := ret0 5095 err := _BridgeTransferERC20.contract.Call(opts, out, "closedValueTransferVotes", arg0) 5096 return *ret0, err 5097 } 5098 5099 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 5100 // 5101 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 5102 func (_BridgeTransferERC20 *BridgeTransferERC20Session) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 5103 return _BridgeTransferERC20.Contract.ClosedValueTransferVotes(&_BridgeTransferERC20.CallOpts, arg0) 5104 } 5105 5106 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 5107 // 5108 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 5109 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 5110 return _BridgeTransferERC20.Contract.ClosedValueTransferVotes(&_BridgeTransferERC20.CallOpts, arg0) 5111 } 5112 5113 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 5114 // 5115 // Solidity: function configurationNonce() view returns(uint64) 5116 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) ConfigurationNonce(opts *bind.CallOpts) (uint64, error) { 5117 var ( 5118 ret0 = new(uint64) 5119 ) 5120 out := ret0 5121 err := _BridgeTransferERC20.contract.Call(opts, out, "configurationNonce") 5122 return *ret0, err 5123 } 5124 5125 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 5126 // 5127 // Solidity: function configurationNonce() view returns(uint64) 5128 func (_BridgeTransferERC20 *BridgeTransferERC20Session) ConfigurationNonce() (uint64, error) { 5129 return _BridgeTransferERC20.Contract.ConfigurationNonce(&_BridgeTransferERC20.CallOpts) 5130 } 5131 5132 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 5133 // 5134 // Solidity: function configurationNonce() view returns(uint64) 5135 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) ConfigurationNonce() (uint64, error) { 5136 return _BridgeTransferERC20.Contract.ConfigurationNonce(&_BridgeTransferERC20.CallOpts) 5137 } 5138 5139 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 5140 // 5141 // Solidity: function feeOfERC20(address ) view returns(uint256) 5142 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) FeeOfERC20(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 5143 var ( 5144 ret0 = new(*big.Int) 5145 ) 5146 out := ret0 5147 err := _BridgeTransferERC20.contract.Call(opts, out, "feeOfERC20", arg0) 5148 return *ret0, err 5149 } 5150 5151 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 5152 // 5153 // Solidity: function feeOfERC20(address ) view returns(uint256) 5154 func (_BridgeTransferERC20 *BridgeTransferERC20Session) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 5155 return _BridgeTransferERC20.Contract.FeeOfERC20(&_BridgeTransferERC20.CallOpts, arg0) 5156 } 5157 5158 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 5159 // 5160 // Solidity: function feeOfERC20(address ) view returns(uint256) 5161 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 5162 return _BridgeTransferERC20.Contract.FeeOfERC20(&_BridgeTransferERC20.CallOpts, arg0) 5163 } 5164 5165 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 5166 // 5167 // Solidity: function feeOfKLAY() view returns(uint256) 5168 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) FeeOfKLAY(opts *bind.CallOpts) (*big.Int, error) { 5169 var ( 5170 ret0 = new(*big.Int) 5171 ) 5172 out := ret0 5173 err := _BridgeTransferERC20.contract.Call(opts, out, "feeOfKLAY") 5174 return *ret0, err 5175 } 5176 5177 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 5178 // 5179 // Solidity: function feeOfKLAY() view returns(uint256) 5180 func (_BridgeTransferERC20 *BridgeTransferERC20Session) FeeOfKLAY() (*big.Int, error) { 5181 return _BridgeTransferERC20.Contract.FeeOfKLAY(&_BridgeTransferERC20.CallOpts) 5182 } 5183 5184 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 5185 // 5186 // Solidity: function feeOfKLAY() view returns(uint256) 5187 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) FeeOfKLAY() (*big.Int, error) { 5188 return _BridgeTransferERC20.Contract.FeeOfKLAY(&_BridgeTransferERC20.CallOpts) 5189 } 5190 5191 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 5192 // 5193 // Solidity: function feeReceiver() view returns(address) 5194 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) FeeReceiver(opts *bind.CallOpts) (common.Address, error) { 5195 var ( 5196 ret0 = new(common.Address) 5197 ) 5198 out := ret0 5199 err := _BridgeTransferERC20.contract.Call(opts, out, "feeReceiver") 5200 return *ret0, err 5201 } 5202 5203 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 5204 // 5205 // Solidity: function feeReceiver() view returns(address) 5206 func (_BridgeTransferERC20 *BridgeTransferERC20Session) FeeReceiver() (common.Address, error) { 5207 return _BridgeTransferERC20.Contract.FeeReceiver(&_BridgeTransferERC20.CallOpts) 5208 } 5209 5210 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 5211 // 5212 // Solidity: function feeReceiver() view returns(address) 5213 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) FeeReceiver() (common.Address, error) { 5214 return _BridgeTransferERC20.Contract.FeeReceiver(&_BridgeTransferERC20.CallOpts) 5215 } 5216 5217 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 5218 // 5219 // Solidity: function getOperatorList() view returns(address[]) 5220 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) GetOperatorList(opts *bind.CallOpts) ([]common.Address, error) { 5221 var ( 5222 ret0 = new([]common.Address) 5223 ) 5224 out := ret0 5225 err := _BridgeTransferERC20.contract.Call(opts, out, "getOperatorList") 5226 return *ret0, err 5227 } 5228 5229 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 5230 // 5231 // Solidity: function getOperatorList() view returns(address[]) 5232 func (_BridgeTransferERC20 *BridgeTransferERC20Session) GetOperatorList() ([]common.Address, error) { 5233 return _BridgeTransferERC20.Contract.GetOperatorList(&_BridgeTransferERC20.CallOpts) 5234 } 5235 5236 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 5237 // 5238 // Solidity: function getOperatorList() view returns(address[]) 5239 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) GetOperatorList() ([]common.Address, error) { 5240 return _BridgeTransferERC20.Contract.GetOperatorList(&_BridgeTransferERC20.CallOpts) 5241 } 5242 5243 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 5244 // 5245 // Solidity: function getRegisteredTokenList() view returns(address[]) 5246 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) GetRegisteredTokenList(opts *bind.CallOpts) ([]common.Address, error) { 5247 var ( 5248 ret0 = new([]common.Address) 5249 ) 5250 out := ret0 5251 err := _BridgeTransferERC20.contract.Call(opts, out, "getRegisteredTokenList") 5252 return *ret0, err 5253 } 5254 5255 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 5256 // 5257 // Solidity: function getRegisteredTokenList() view returns(address[]) 5258 func (_BridgeTransferERC20 *BridgeTransferERC20Session) GetRegisteredTokenList() ([]common.Address, error) { 5259 return _BridgeTransferERC20.Contract.GetRegisteredTokenList(&_BridgeTransferERC20.CallOpts) 5260 } 5261 5262 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 5263 // 5264 // Solidity: function getRegisteredTokenList() view returns(address[]) 5265 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) GetRegisteredTokenList() ([]common.Address, error) { 5266 return _BridgeTransferERC20.Contract.GetRegisteredTokenList(&_BridgeTransferERC20.CallOpts) 5267 } 5268 5269 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 5270 // 5271 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 5272 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) HandleNoncesToBlockNums(opts *bind.CallOpts, arg0 uint64) (uint64, error) { 5273 var ( 5274 ret0 = new(uint64) 5275 ) 5276 out := ret0 5277 err := _BridgeTransferERC20.contract.Call(opts, out, "handleNoncesToBlockNums", arg0) 5278 return *ret0, err 5279 } 5280 5281 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 5282 // 5283 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 5284 func (_BridgeTransferERC20 *BridgeTransferERC20Session) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 5285 return _BridgeTransferERC20.Contract.HandleNoncesToBlockNums(&_BridgeTransferERC20.CallOpts, arg0) 5286 } 5287 5288 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 5289 // 5290 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 5291 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 5292 return _BridgeTransferERC20.Contract.HandleNoncesToBlockNums(&_BridgeTransferERC20.CallOpts, arg0) 5293 } 5294 5295 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 5296 // 5297 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 5298 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) HandledRequestTx(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { 5299 var ( 5300 ret0 = new(bool) 5301 ) 5302 out := ret0 5303 err := _BridgeTransferERC20.contract.Call(opts, out, "handledRequestTx", arg0) 5304 return *ret0, err 5305 } 5306 5307 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 5308 // 5309 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 5310 func (_BridgeTransferERC20 *BridgeTransferERC20Session) HandledRequestTx(arg0 [32]byte) (bool, error) { 5311 return _BridgeTransferERC20.Contract.HandledRequestTx(&_BridgeTransferERC20.CallOpts, arg0) 5312 } 5313 5314 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 5315 // 5316 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 5317 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 5318 return _BridgeTransferERC20.Contract.HandledRequestTx(&_BridgeTransferERC20.CallOpts, arg0) 5319 } 5320 5321 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 5322 // 5323 // Solidity: function indexOfTokens(address ) view returns(uint256) 5324 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) IndexOfTokens(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 5325 var ( 5326 ret0 = new(*big.Int) 5327 ) 5328 out := ret0 5329 err := _BridgeTransferERC20.contract.Call(opts, out, "indexOfTokens", arg0) 5330 return *ret0, err 5331 } 5332 5333 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 5334 // 5335 // Solidity: function indexOfTokens(address ) view returns(uint256) 5336 func (_BridgeTransferERC20 *BridgeTransferERC20Session) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 5337 return _BridgeTransferERC20.Contract.IndexOfTokens(&_BridgeTransferERC20.CallOpts, arg0) 5338 } 5339 5340 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 5341 // 5342 // Solidity: function indexOfTokens(address ) view returns(uint256) 5343 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 5344 return _BridgeTransferERC20.Contract.IndexOfTokens(&_BridgeTransferERC20.CallOpts, arg0) 5345 } 5346 5347 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 5348 // 5349 // Solidity: function isOwner() view returns(bool) 5350 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) IsOwner(opts *bind.CallOpts) (bool, error) { 5351 var ( 5352 ret0 = new(bool) 5353 ) 5354 out := ret0 5355 err := _BridgeTransferERC20.contract.Call(opts, out, "isOwner") 5356 return *ret0, err 5357 } 5358 5359 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 5360 // 5361 // Solidity: function isOwner() view returns(bool) 5362 func (_BridgeTransferERC20 *BridgeTransferERC20Session) IsOwner() (bool, error) { 5363 return _BridgeTransferERC20.Contract.IsOwner(&_BridgeTransferERC20.CallOpts) 5364 } 5365 5366 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 5367 // 5368 // Solidity: function isOwner() view returns(bool) 5369 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) IsOwner() (bool, error) { 5370 return _BridgeTransferERC20.Contract.IsOwner(&_BridgeTransferERC20.CallOpts) 5371 } 5372 5373 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 5374 // 5375 // Solidity: function isRunning() view returns(bool) 5376 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) IsRunning(opts *bind.CallOpts) (bool, error) { 5377 var ( 5378 ret0 = new(bool) 5379 ) 5380 out := ret0 5381 err := _BridgeTransferERC20.contract.Call(opts, out, "isRunning") 5382 return *ret0, err 5383 } 5384 5385 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 5386 // 5387 // Solidity: function isRunning() view returns(bool) 5388 func (_BridgeTransferERC20 *BridgeTransferERC20Session) IsRunning() (bool, error) { 5389 return _BridgeTransferERC20.Contract.IsRunning(&_BridgeTransferERC20.CallOpts) 5390 } 5391 5392 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 5393 // 5394 // Solidity: function isRunning() view returns(bool) 5395 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) IsRunning() (bool, error) { 5396 return _BridgeTransferERC20.Contract.IsRunning(&_BridgeTransferERC20.CallOpts) 5397 } 5398 5399 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 5400 // 5401 // Solidity: function lockedTokens(address ) view returns(bool) 5402 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) LockedTokens(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 5403 var ( 5404 ret0 = new(bool) 5405 ) 5406 out := ret0 5407 err := _BridgeTransferERC20.contract.Call(opts, out, "lockedTokens", arg0) 5408 return *ret0, err 5409 } 5410 5411 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 5412 // 5413 // Solidity: function lockedTokens(address ) view returns(bool) 5414 func (_BridgeTransferERC20 *BridgeTransferERC20Session) LockedTokens(arg0 common.Address) (bool, error) { 5415 return _BridgeTransferERC20.Contract.LockedTokens(&_BridgeTransferERC20.CallOpts, arg0) 5416 } 5417 5418 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 5419 // 5420 // Solidity: function lockedTokens(address ) view returns(bool) 5421 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) LockedTokens(arg0 common.Address) (bool, error) { 5422 return _BridgeTransferERC20.Contract.LockedTokens(&_BridgeTransferERC20.CallOpts, arg0) 5423 } 5424 5425 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 5426 // 5427 // Solidity: function lowerHandleNonce() view returns(uint64) 5428 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) LowerHandleNonce(opts *bind.CallOpts) (uint64, error) { 5429 var ( 5430 ret0 = new(uint64) 5431 ) 5432 out := ret0 5433 err := _BridgeTransferERC20.contract.Call(opts, out, "lowerHandleNonce") 5434 return *ret0, err 5435 } 5436 5437 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 5438 // 5439 // Solidity: function lowerHandleNonce() view returns(uint64) 5440 func (_BridgeTransferERC20 *BridgeTransferERC20Session) LowerHandleNonce() (uint64, error) { 5441 return _BridgeTransferERC20.Contract.LowerHandleNonce(&_BridgeTransferERC20.CallOpts) 5442 } 5443 5444 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 5445 // 5446 // Solidity: function lowerHandleNonce() view returns(uint64) 5447 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) LowerHandleNonce() (uint64, error) { 5448 return _BridgeTransferERC20.Contract.LowerHandleNonce(&_BridgeTransferERC20.CallOpts) 5449 } 5450 5451 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 5452 // 5453 // Solidity: function modeMintBurn() view returns(bool) 5454 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) ModeMintBurn(opts *bind.CallOpts) (bool, error) { 5455 var ( 5456 ret0 = new(bool) 5457 ) 5458 out := ret0 5459 err := _BridgeTransferERC20.contract.Call(opts, out, "modeMintBurn") 5460 return *ret0, err 5461 } 5462 5463 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 5464 // 5465 // Solidity: function modeMintBurn() view returns(bool) 5466 func (_BridgeTransferERC20 *BridgeTransferERC20Session) ModeMintBurn() (bool, error) { 5467 return _BridgeTransferERC20.Contract.ModeMintBurn(&_BridgeTransferERC20.CallOpts) 5468 } 5469 5470 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 5471 // 5472 // Solidity: function modeMintBurn() view returns(bool) 5473 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) ModeMintBurn() (bool, error) { 5474 return _BridgeTransferERC20.Contract.ModeMintBurn(&_BridgeTransferERC20.CallOpts) 5475 } 5476 5477 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 5478 // 5479 // Solidity: function operatorList(uint256 ) view returns(address) 5480 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) OperatorList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 5481 var ( 5482 ret0 = new(common.Address) 5483 ) 5484 out := ret0 5485 err := _BridgeTransferERC20.contract.Call(opts, out, "operatorList", arg0) 5486 return *ret0, err 5487 } 5488 5489 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 5490 // 5491 // Solidity: function operatorList(uint256 ) view returns(address) 5492 func (_BridgeTransferERC20 *BridgeTransferERC20Session) OperatorList(arg0 *big.Int) (common.Address, error) { 5493 return _BridgeTransferERC20.Contract.OperatorList(&_BridgeTransferERC20.CallOpts, arg0) 5494 } 5495 5496 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 5497 // 5498 // Solidity: function operatorList(uint256 ) view returns(address) 5499 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) OperatorList(arg0 *big.Int) (common.Address, error) { 5500 return _BridgeTransferERC20.Contract.OperatorList(&_BridgeTransferERC20.CallOpts, arg0) 5501 } 5502 5503 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 5504 // 5505 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 5506 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) OperatorThresholds(opts *bind.CallOpts, arg0 uint8) (uint8, error) { 5507 var ( 5508 ret0 = new(uint8) 5509 ) 5510 out := ret0 5511 err := _BridgeTransferERC20.contract.Call(opts, out, "operatorThresholds", arg0) 5512 return *ret0, err 5513 } 5514 5515 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 5516 // 5517 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 5518 func (_BridgeTransferERC20 *BridgeTransferERC20Session) OperatorThresholds(arg0 uint8) (uint8, error) { 5519 return _BridgeTransferERC20.Contract.OperatorThresholds(&_BridgeTransferERC20.CallOpts, arg0) 5520 } 5521 5522 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 5523 // 5524 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 5525 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) OperatorThresholds(arg0 uint8) (uint8, error) { 5526 return _BridgeTransferERC20.Contract.OperatorThresholds(&_BridgeTransferERC20.CallOpts, arg0) 5527 } 5528 5529 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 5530 // 5531 // Solidity: function operators(address ) view returns(bool) 5532 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) Operators(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 5533 var ( 5534 ret0 = new(bool) 5535 ) 5536 out := ret0 5537 err := _BridgeTransferERC20.contract.Call(opts, out, "operators", arg0) 5538 return *ret0, err 5539 } 5540 5541 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 5542 // 5543 // Solidity: function operators(address ) view returns(bool) 5544 func (_BridgeTransferERC20 *BridgeTransferERC20Session) Operators(arg0 common.Address) (bool, error) { 5545 return _BridgeTransferERC20.Contract.Operators(&_BridgeTransferERC20.CallOpts, arg0) 5546 } 5547 5548 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 5549 // 5550 // Solidity: function operators(address ) view returns(bool) 5551 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) Operators(arg0 common.Address) (bool, error) { 5552 return _BridgeTransferERC20.Contract.Operators(&_BridgeTransferERC20.CallOpts, arg0) 5553 } 5554 5555 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 5556 // 5557 // Solidity: function owner() view returns(address) 5558 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) Owner(opts *bind.CallOpts) (common.Address, error) { 5559 var ( 5560 ret0 = new(common.Address) 5561 ) 5562 out := ret0 5563 err := _BridgeTransferERC20.contract.Call(opts, out, "owner") 5564 return *ret0, err 5565 } 5566 5567 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 5568 // 5569 // Solidity: function owner() view returns(address) 5570 func (_BridgeTransferERC20 *BridgeTransferERC20Session) Owner() (common.Address, error) { 5571 return _BridgeTransferERC20.Contract.Owner(&_BridgeTransferERC20.CallOpts) 5572 } 5573 5574 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 5575 // 5576 // Solidity: function owner() view returns(address) 5577 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) Owner() (common.Address, error) { 5578 return _BridgeTransferERC20.Contract.Owner(&_BridgeTransferERC20.CallOpts) 5579 } 5580 5581 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 5582 // 5583 // Solidity: function recoveryBlockNumber() view returns(uint64) 5584 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) RecoveryBlockNumber(opts *bind.CallOpts) (uint64, error) { 5585 var ( 5586 ret0 = new(uint64) 5587 ) 5588 out := ret0 5589 err := _BridgeTransferERC20.contract.Call(opts, out, "recoveryBlockNumber") 5590 return *ret0, err 5591 } 5592 5593 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 5594 // 5595 // Solidity: function recoveryBlockNumber() view returns(uint64) 5596 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RecoveryBlockNumber() (uint64, error) { 5597 return _BridgeTransferERC20.Contract.RecoveryBlockNumber(&_BridgeTransferERC20.CallOpts) 5598 } 5599 5600 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 5601 // 5602 // Solidity: function recoveryBlockNumber() view returns(uint64) 5603 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) RecoveryBlockNumber() (uint64, error) { 5604 return _BridgeTransferERC20.Contract.RecoveryBlockNumber(&_BridgeTransferERC20.CallOpts) 5605 } 5606 5607 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 5608 // 5609 // Solidity: function registeredTokenList(uint256 ) view returns(address) 5610 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) RegisteredTokenList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 5611 var ( 5612 ret0 = new(common.Address) 5613 ) 5614 out := ret0 5615 err := _BridgeTransferERC20.contract.Call(opts, out, "registeredTokenList", arg0) 5616 return *ret0, err 5617 } 5618 5619 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 5620 // 5621 // Solidity: function registeredTokenList(uint256 ) view returns(address) 5622 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 5623 return _BridgeTransferERC20.Contract.RegisteredTokenList(&_BridgeTransferERC20.CallOpts, arg0) 5624 } 5625 5626 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 5627 // 5628 // Solidity: function registeredTokenList(uint256 ) view returns(address) 5629 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 5630 return _BridgeTransferERC20.Contract.RegisteredTokenList(&_BridgeTransferERC20.CallOpts, arg0) 5631 } 5632 5633 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 5634 // 5635 // Solidity: function registeredTokens(address ) view returns(address) 5636 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) RegisteredTokens(opts *bind.CallOpts, arg0 common.Address) (common.Address, error) { 5637 var ( 5638 ret0 = new(common.Address) 5639 ) 5640 out := ret0 5641 err := _BridgeTransferERC20.contract.Call(opts, out, "registeredTokens", arg0) 5642 return *ret0, err 5643 } 5644 5645 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 5646 // 5647 // Solidity: function registeredTokens(address ) view returns(address) 5648 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RegisteredTokens(arg0 common.Address) (common.Address, error) { 5649 return _BridgeTransferERC20.Contract.RegisteredTokens(&_BridgeTransferERC20.CallOpts, arg0) 5650 } 5651 5652 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 5653 // 5654 // Solidity: function registeredTokens(address ) view returns(address) 5655 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 5656 return _BridgeTransferERC20.Contract.RegisteredTokens(&_BridgeTransferERC20.CallOpts, arg0) 5657 } 5658 5659 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 5660 // 5661 // Solidity: function requestNonce() view returns(uint64) 5662 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) RequestNonce(opts *bind.CallOpts) (uint64, error) { 5663 var ( 5664 ret0 = new(uint64) 5665 ) 5666 out := ret0 5667 err := _BridgeTransferERC20.contract.Call(opts, out, "requestNonce") 5668 return *ret0, err 5669 } 5670 5671 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 5672 // 5673 // Solidity: function requestNonce() view returns(uint64) 5674 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RequestNonce() (uint64, error) { 5675 return _BridgeTransferERC20.Contract.RequestNonce(&_BridgeTransferERC20.CallOpts) 5676 } 5677 5678 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 5679 // 5680 // Solidity: function requestNonce() view returns(uint64) 5681 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) RequestNonce() (uint64, error) { 5682 return _BridgeTransferERC20.Contract.RequestNonce(&_BridgeTransferERC20.CallOpts) 5683 } 5684 5685 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 5686 // 5687 // Solidity: function upperHandleNonce() view returns(uint64) 5688 func (_BridgeTransferERC20 *BridgeTransferERC20Caller) UpperHandleNonce(opts *bind.CallOpts) (uint64, error) { 5689 var ( 5690 ret0 = new(uint64) 5691 ) 5692 out := ret0 5693 err := _BridgeTransferERC20.contract.Call(opts, out, "upperHandleNonce") 5694 return *ret0, err 5695 } 5696 5697 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 5698 // 5699 // Solidity: function upperHandleNonce() view returns(uint64) 5700 func (_BridgeTransferERC20 *BridgeTransferERC20Session) UpperHandleNonce() (uint64, error) { 5701 return _BridgeTransferERC20.Contract.UpperHandleNonce(&_BridgeTransferERC20.CallOpts) 5702 } 5703 5704 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 5705 // 5706 // Solidity: function upperHandleNonce() view returns(uint64) 5707 func (_BridgeTransferERC20 *BridgeTransferERC20CallerSession) UpperHandleNonce() (uint64, error) { 5708 return _BridgeTransferERC20.Contract.UpperHandleNonce(&_BridgeTransferERC20.CallOpts) 5709 } 5710 5711 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 5712 // 5713 // Solidity: function deregisterOperator(address _operator) returns() 5714 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) DeregisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 5715 return _BridgeTransferERC20.contract.Transact(opts, "deregisterOperator", _operator) 5716 } 5717 5718 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 5719 // 5720 // Solidity: function deregisterOperator(address _operator) returns() 5721 func (_BridgeTransferERC20 *BridgeTransferERC20Session) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 5722 return _BridgeTransferERC20.Contract.DeregisterOperator(&_BridgeTransferERC20.TransactOpts, _operator) 5723 } 5724 5725 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 5726 // 5727 // Solidity: function deregisterOperator(address _operator) returns() 5728 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 5729 return _BridgeTransferERC20.Contract.DeregisterOperator(&_BridgeTransferERC20.TransactOpts, _operator) 5730 } 5731 5732 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 5733 // 5734 // Solidity: function deregisterToken(address _token) returns() 5735 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) DeregisterToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 5736 return _BridgeTransferERC20.contract.Transact(opts, "deregisterToken", _token) 5737 } 5738 5739 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 5740 // 5741 // Solidity: function deregisterToken(address _token) returns() 5742 func (_BridgeTransferERC20 *BridgeTransferERC20Session) DeregisterToken(_token common.Address) (*types.Transaction, error) { 5743 return _BridgeTransferERC20.Contract.DeregisterToken(&_BridgeTransferERC20.TransactOpts, _token) 5744 } 5745 5746 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 5747 // 5748 // Solidity: function deregisterToken(address _token) returns() 5749 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 5750 return _BridgeTransferERC20.Contract.DeregisterToken(&_BridgeTransferERC20.TransactOpts, _token) 5751 } 5752 5753 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 5754 // 5755 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestedNonce, uint64 _requestedBlockNumber, bytes _extraData) returns() 5756 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) HandleERC20Transfer(opts *bind.TransactOpts, _requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 5757 return _BridgeTransferERC20.contract.Transact(opts, "handleERC20Transfer", _requestTxHash, _from, _to, _tokenAddress, _value, _requestedNonce, _requestedBlockNumber, _extraData) 5758 } 5759 5760 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 5761 // 5762 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestedNonce, uint64 _requestedBlockNumber, bytes _extraData) returns() 5763 func (_BridgeTransferERC20 *BridgeTransferERC20Session) HandleERC20Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 5764 return _BridgeTransferERC20.Contract.HandleERC20Transfer(&_BridgeTransferERC20.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _value, _requestedNonce, _requestedBlockNumber, _extraData) 5765 } 5766 5767 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 5768 // 5769 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestedNonce, uint64 _requestedBlockNumber, bytes _extraData) returns() 5770 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) HandleERC20Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 5771 return _BridgeTransferERC20.Contract.HandleERC20Transfer(&_BridgeTransferERC20.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _value, _requestedNonce, _requestedBlockNumber, _extraData) 5772 } 5773 5774 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 5775 // 5776 // Solidity: function lockToken(address _token) returns() 5777 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) LockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 5778 return _BridgeTransferERC20.contract.Transact(opts, "lockToken", _token) 5779 } 5780 5781 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 5782 // 5783 // Solidity: function lockToken(address _token) returns() 5784 func (_BridgeTransferERC20 *BridgeTransferERC20Session) LockToken(_token common.Address) (*types.Transaction, error) { 5785 return _BridgeTransferERC20.Contract.LockToken(&_BridgeTransferERC20.TransactOpts, _token) 5786 } 5787 5788 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 5789 // 5790 // Solidity: function lockToken(address _token) returns() 5791 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) LockToken(_token common.Address) (*types.Transaction, error) { 5792 return _BridgeTransferERC20.Contract.LockToken(&_BridgeTransferERC20.TransactOpts, _token) 5793 } 5794 5795 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 5796 // 5797 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5798 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) OnERC20Received(opts *bind.TransactOpts, _from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5799 return _BridgeTransferERC20.contract.Transact(opts, "onERC20Received", _from, _to, _value, _feeLimit, _extraData) 5800 } 5801 5802 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 5803 // 5804 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5805 func (_BridgeTransferERC20 *BridgeTransferERC20Session) OnERC20Received(_from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5806 return _BridgeTransferERC20.Contract.OnERC20Received(&_BridgeTransferERC20.TransactOpts, _from, _to, _value, _feeLimit, _extraData) 5807 } 5808 5809 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 5810 // 5811 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5812 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) OnERC20Received(_from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5813 return _BridgeTransferERC20.Contract.OnERC20Received(&_BridgeTransferERC20.TransactOpts, _from, _to, _value, _feeLimit, _extraData) 5814 } 5815 5816 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 5817 // 5818 // Solidity: function registerOperator(address _operator) returns() 5819 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) RegisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 5820 return _BridgeTransferERC20.contract.Transact(opts, "registerOperator", _operator) 5821 } 5822 5823 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 5824 // 5825 // Solidity: function registerOperator(address _operator) returns() 5826 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 5827 return _BridgeTransferERC20.Contract.RegisterOperator(&_BridgeTransferERC20.TransactOpts, _operator) 5828 } 5829 5830 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 5831 // 5832 // Solidity: function registerOperator(address _operator) returns() 5833 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 5834 return _BridgeTransferERC20.Contract.RegisterOperator(&_BridgeTransferERC20.TransactOpts, _operator) 5835 } 5836 5837 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 5838 // 5839 // Solidity: function registerToken(address _token, address _cToken) returns() 5840 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) RegisterToken(opts *bind.TransactOpts, _token common.Address, _cToken common.Address) (*types.Transaction, error) { 5841 return _BridgeTransferERC20.contract.Transact(opts, "registerToken", _token, _cToken) 5842 } 5843 5844 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 5845 // 5846 // Solidity: function registerToken(address _token, address _cToken) returns() 5847 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 5848 return _BridgeTransferERC20.Contract.RegisterToken(&_BridgeTransferERC20.TransactOpts, _token, _cToken) 5849 } 5850 5851 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 5852 // 5853 // Solidity: function registerToken(address _token, address _cToken) returns() 5854 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 5855 return _BridgeTransferERC20.Contract.RegisterToken(&_BridgeTransferERC20.TransactOpts, _token, _cToken) 5856 } 5857 5858 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 5859 // 5860 // Solidity: function renounceOwnership() returns() 5861 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 5862 return _BridgeTransferERC20.contract.Transact(opts, "renounceOwnership") 5863 } 5864 5865 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 5866 // 5867 // Solidity: function renounceOwnership() returns() 5868 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RenounceOwnership() (*types.Transaction, error) { 5869 return _BridgeTransferERC20.Contract.RenounceOwnership(&_BridgeTransferERC20.TransactOpts) 5870 } 5871 5872 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 5873 // 5874 // Solidity: function renounceOwnership() returns() 5875 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) RenounceOwnership() (*types.Transaction, error) { 5876 return _BridgeTransferERC20.Contract.RenounceOwnership(&_BridgeTransferERC20.TransactOpts) 5877 } 5878 5879 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 5880 // 5881 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5882 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) RequestERC20Transfer(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5883 return _BridgeTransferERC20.contract.Transact(opts, "requestERC20Transfer", _tokenAddress, _to, _value, _feeLimit, _extraData) 5884 } 5885 5886 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 5887 // 5888 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5889 func (_BridgeTransferERC20 *BridgeTransferERC20Session) RequestERC20Transfer(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5890 return _BridgeTransferERC20.Contract.RequestERC20Transfer(&_BridgeTransferERC20.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _extraData) 5891 } 5892 5893 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 5894 // 5895 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 5896 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) RequestERC20Transfer(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 5897 return _BridgeTransferERC20.Contract.RequestERC20Transfer(&_BridgeTransferERC20.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _extraData) 5898 } 5899 5900 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 5901 // 5902 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 5903 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) SetERC20Fee(opts *bind.TransactOpts, _token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 5904 return _BridgeTransferERC20.contract.Transact(opts, "setERC20Fee", _token, _fee, _requestNonce) 5905 } 5906 5907 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 5908 // 5909 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 5910 func (_BridgeTransferERC20 *BridgeTransferERC20Session) SetERC20Fee(_token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 5911 return _BridgeTransferERC20.Contract.SetERC20Fee(&_BridgeTransferERC20.TransactOpts, _token, _fee, _requestNonce) 5912 } 5913 5914 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 5915 // 5916 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 5917 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) SetERC20Fee(_token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 5918 return _BridgeTransferERC20.Contract.SetERC20Fee(&_BridgeTransferERC20.TransactOpts, _token, _fee, _requestNonce) 5919 } 5920 5921 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 5922 // 5923 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 5924 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) SetFeeReceiver(opts *bind.TransactOpts, _feeReceiver common.Address) (*types.Transaction, error) { 5925 return _BridgeTransferERC20.contract.Transact(opts, "setFeeReceiver", _feeReceiver) 5926 } 5927 5928 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 5929 // 5930 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 5931 func (_BridgeTransferERC20 *BridgeTransferERC20Session) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 5932 return _BridgeTransferERC20.Contract.SetFeeReceiver(&_BridgeTransferERC20.TransactOpts, _feeReceiver) 5933 } 5934 5935 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 5936 // 5937 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 5938 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 5939 return _BridgeTransferERC20.Contract.SetFeeReceiver(&_BridgeTransferERC20.TransactOpts, _feeReceiver) 5940 } 5941 5942 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 5943 // 5944 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 5945 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) SetOperatorThreshold(opts *bind.TransactOpts, _voteType uint8, _threshold uint8) (*types.Transaction, error) { 5946 return _BridgeTransferERC20.contract.Transact(opts, "setOperatorThreshold", _voteType, _threshold) 5947 } 5948 5949 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 5950 // 5951 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 5952 func (_BridgeTransferERC20 *BridgeTransferERC20Session) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 5953 return _BridgeTransferERC20.Contract.SetOperatorThreshold(&_BridgeTransferERC20.TransactOpts, _voteType, _threshold) 5954 } 5955 5956 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 5957 // 5958 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 5959 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 5960 return _BridgeTransferERC20.Contract.SetOperatorThreshold(&_BridgeTransferERC20.TransactOpts, _voteType, _threshold) 5961 } 5962 5963 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 5964 // 5965 // Solidity: function start(bool _status) returns() 5966 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) Start(opts *bind.TransactOpts, _status bool) (*types.Transaction, error) { 5967 return _BridgeTransferERC20.contract.Transact(opts, "start", _status) 5968 } 5969 5970 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 5971 // 5972 // Solidity: function start(bool _status) returns() 5973 func (_BridgeTransferERC20 *BridgeTransferERC20Session) Start(_status bool) (*types.Transaction, error) { 5974 return _BridgeTransferERC20.Contract.Start(&_BridgeTransferERC20.TransactOpts, _status) 5975 } 5976 5977 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 5978 // 5979 // Solidity: function start(bool _status) returns() 5980 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) Start(_status bool) (*types.Transaction, error) { 5981 return _BridgeTransferERC20.Contract.Start(&_BridgeTransferERC20.TransactOpts, _status) 5982 } 5983 5984 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 5985 // 5986 // Solidity: function transferOwnership(address newOwner) returns() 5987 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 5988 return _BridgeTransferERC20.contract.Transact(opts, "transferOwnership", newOwner) 5989 } 5990 5991 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 5992 // 5993 // Solidity: function transferOwnership(address newOwner) returns() 5994 func (_BridgeTransferERC20 *BridgeTransferERC20Session) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 5995 return _BridgeTransferERC20.Contract.TransferOwnership(&_BridgeTransferERC20.TransactOpts, newOwner) 5996 } 5997 5998 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 5999 // 6000 // Solidity: function transferOwnership(address newOwner) returns() 6001 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 6002 return _BridgeTransferERC20.Contract.TransferOwnership(&_BridgeTransferERC20.TransactOpts, newOwner) 6003 } 6004 6005 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 6006 // 6007 // Solidity: function unlockToken(address _token) returns() 6008 func (_BridgeTransferERC20 *BridgeTransferERC20Transactor) UnlockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 6009 return _BridgeTransferERC20.contract.Transact(opts, "unlockToken", _token) 6010 } 6011 6012 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 6013 // 6014 // Solidity: function unlockToken(address _token) returns() 6015 func (_BridgeTransferERC20 *BridgeTransferERC20Session) UnlockToken(_token common.Address) (*types.Transaction, error) { 6016 return _BridgeTransferERC20.Contract.UnlockToken(&_BridgeTransferERC20.TransactOpts, _token) 6017 } 6018 6019 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 6020 // 6021 // Solidity: function unlockToken(address _token) returns() 6022 func (_BridgeTransferERC20 *BridgeTransferERC20TransactorSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 6023 return _BridgeTransferERC20.Contract.UnlockToken(&_BridgeTransferERC20.TransactOpts, _token) 6024 } 6025 6026 // BridgeTransferERC20ERC20FeeChangedIterator is returned from FilterERC20FeeChanged and is used to iterate over the raw logs and unpacked data for ERC20FeeChanged events raised by the BridgeTransferERC20 contract. 6027 type BridgeTransferERC20ERC20FeeChangedIterator struct { 6028 Event *BridgeTransferERC20ERC20FeeChanged // Event containing the contract specifics and raw log 6029 6030 contract *bind.BoundContract // Generic contract to use for unpacking event data 6031 event string // Event name to use for unpacking event data 6032 6033 logs chan types.Log // Log channel receiving the found contract events 6034 sub klaytn.Subscription // Subscription for errors, completion and termination 6035 done bool // Whether the subscription completed delivering logs 6036 fail error // Occurred error to stop iteration 6037 } 6038 6039 // Next advances the iterator to the subsequent event, returning whether there 6040 // are any more events found. In case of a retrieval or parsing error, false is 6041 // returned and Error() can be queried for the exact failure. 6042 func (it *BridgeTransferERC20ERC20FeeChangedIterator) Next() bool { 6043 // If the iterator failed, stop iterating 6044 if it.fail != nil { 6045 return false 6046 } 6047 // If the iterator completed, deliver directly whatever's available 6048 if it.done { 6049 select { 6050 case log := <-it.logs: 6051 it.Event = new(BridgeTransferERC20ERC20FeeChanged) 6052 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6053 it.fail = err 6054 return false 6055 } 6056 it.Event.Raw = log 6057 return true 6058 6059 default: 6060 return false 6061 } 6062 } 6063 // Iterator still in progress, wait for either a data or an error event 6064 select { 6065 case log := <-it.logs: 6066 it.Event = new(BridgeTransferERC20ERC20FeeChanged) 6067 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6068 it.fail = err 6069 return false 6070 } 6071 it.Event.Raw = log 6072 return true 6073 6074 case err := <-it.sub.Err(): 6075 it.done = true 6076 it.fail = err 6077 return it.Next() 6078 } 6079 } 6080 6081 // Error returns any retrieval or parsing error occurred during filtering. 6082 func (it *BridgeTransferERC20ERC20FeeChangedIterator) Error() error { 6083 return it.fail 6084 } 6085 6086 // Close terminates the iteration process, releasing any pending underlying 6087 // resources. 6088 func (it *BridgeTransferERC20ERC20FeeChangedIterator) Close() error { 6089 it.sub.Unsubscribe() 6090 return nil 6091 } 6092 6093 // BridgeTransferERC20ERC20FeeChanged represents a ERC20FeeChanged event raised by the BridgeTransferERC20 contract. 6094 type BridgeTransferERC20ERC20FeeChanged struct { 6095 Token common.Address 6096 Fee *big.Int 6097 Raw types.Log // Blockchain specific contextual infos 6098 } 6099 6100 // FilterERC20FeeChanged is a free log retrieval operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 6101 // 6102 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 6103 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterERC20FeeChanged(opts *bind.FilterOpts, token []common.Address, fee []*big.Int) (*BridgeTransferERC20ERC20FeeChangedIterator, error) { 6104 6105 var tokenRule []interface{} 6106 for _, tokenItem := range token { 6107 tokenRule = append(tokenRule, tokenItem) 6108 } 6109 var feeRule []interface{} 6110 for _, feeItem := range fee { 6111 feeRule = append(feeRule, feeItem) 6112 } 6113 6114 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 6115 if err != nil { 6116 return nil, err 6117 } 6118 return &BridgeTransferERC20ERC20FeeChangedIterator{contract: _BridgeTransferERC20.contract, event: "ERC20FeeChanged", logs: logs, sub: sub}, nil 6119 } 6120 6121 // WatchERC20FeeChanged is a free log subscription operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 6122 // 6123 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 6124 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchERC20FeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20ERC20FeeChanged, token []common.Address, fee []*big.Int) (event.Subscription, error) { 6125 6126 var tokenRule []interface{} 6127 for _, tokenItem := range token { 6128 tokenRule = append(tokenRule, tokenItem) 6129 } 6130 var feeRule []interface{} 6131 for _, feeItem := range fee { 6132 feeRule = append(feeRule, feeItem) 6133 } 6134 6135 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 6136 if err != nil { 6137 return nil, err 6138 } 6139 return event.NewSubscription(func(quit <-chan struct{}) error { 6140 defer sub.Unsubscribe() 6141 for { 6142 select { 6143 case log := <-logs: 6144 // New log arrived, parse the event and forward to the user 6145 event := new(BridgeTransferERC20ERC20FeeChanged) 6146 if err := _BridgeTransferERC20.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 6147 return err 6148 } 6149 event.Raw = log 6150 6151 select { 6152 case sink <- event: 6153 case err := <-sub.Err(): 6154 return err 6155 case <-quit: 6156 return nil 6157 } 6158 case err := <-sub.Err(): 6159 return err 6160 case <-quit: 6161 return nil 6162 } 6163 } 6164 }), nil 6165 } 6166 6167 // ParseERC20FeeChanged is a log parse operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 6168 // 6169 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 6170 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseERC20FeeChanged(log types.Log) (*BridgeTransferERC20ERC20FeeChanged, error) { 6171 event := new(BridgeTransferERC20ERC20FeeChanged) 6172 if err := _BridgeTransferERC20.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 6173 return nil, err 6174 } 6175 return event, nil 6176 } 6177 6178 // BridgeTransferERC20FeeReceiverChangedIterator is returned from FilterFeeReceiverChanged and is used to iterate over the raw logs and unpacked data for FeeReceiverChanged events raised by the BridgeTransferERC20 contract. 6179 type BridgeTransferERC20FeeReceiverChangedIterator struct { 6180 Event *BridgeTransferERC20FeeReceiverChanged // Event containing the contract specifics and raw log 6181 6182 contract *bind.BoundContract // Generic contract to use for unpacking event data 6183 event string // Event name to use for unpacking event data 6184 6185 logs chan types.Log // Log channel receiving the found contract events 6186 sub klaytn.Subscription // Subscription for errors, completion and termination 6187 done bool // Whether the subscription completed delivering logs 6188 fail error // Occurred error to stop iteration 6189 } 6190 6191 // Next advances the iterator to the subsequent event, returning whether there 6192 // are any more events found. In case of a retrieval or parsing error, false is 6193 // returned and Error() can be queried for the exact failure. 6194 func (it *BridgeTransferERC20FeeReceiverChangedIterator) Next() bool { 6195 // If the iterator failed, stop iterating 6196 if it.fail != nil { 6197 return false 6198 } 6199 // If the iterator completed, deliver directly whatever's available 6200 if it.done { 6201 select { 6202 case log := <-it.logs: 6203 it.Event = new(BridgeTransferERC20FeeReceiverChanged) 6204 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6205 it.fail = err 6206 return false 6207 } 6208 it.Event.Raw = log 6209 return true 6210 6211 default: 6212 return false 6213 } 6214 } 6215 // Iterator still in progress, wait for either a data or an error event 6216 select { 6217 case log := <-it.logs: 6218 it.Event = new(BridgeTransferERC20FeeReceiverChanged) 6219 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6220 it.fail = err 6221 return false 6222 } 6223 it.Event.Raw = log 6224 return true 6225 6226 case err := <-it.sub.Err(): 6227 it.done = true 6228 it.fail = err 6229 return it.Next() 6230 } 6231 } 6232 6233 // Error returns any retrieval or parsing error occurred during filtering. 6234 func (it *BridgeTransferERC20FeeReceiverChangedIterator) Error() error { 6235 return it.fail 6236 } 6237 6238 // Close terminates the iteration process, releasing any pending underlying 6239 // resources. 6240 func (it *BridgeTransferERC20FeeReceiverChangedIterator) Close() error { 6241 it.sub.Unsubscribe() 6242 return nil 6243 } 6244 6245 // BridgeTransferERC20FeeReceiverChanged represents a FeeReceiverChanged event raised by the BridgeTransferERC20 contract. 6246 type BridgeTransferERC20FeeReceiverChanged struct { 6247 FeeReceiver common.Address 6248 Raw types.Log // Blockchain specific contextual infos 6249 } 6250 6251 // FilterFeeReceiverChanged is a free log retrieval operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 6252 // 6253 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 6254 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterFeeReceiverChanged(opts *bind.FilterOpts, feeReceiver []common.Address) (*BridgeTransferERC20FeeReceiverChangedIterator, error) { 6255 6256 var feeReceiverRule []interface{} 6257 for _, feeReceiverItem := range feeReceiver { 6258 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 6259 } 6260 6261 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "FeeReceiverChanged", feeReceiverRule) 6262 if err != nil { 6263 return nil, err 6264 } 6265 return &BridgeTransferERC20FeeReceiverChangedIterator{contract: _BridgeTransferERC20.contract, event: "FeeReceiverChanged", logs: logs, sub: sub}, nil 6266 } 6267 6268 // WatchFeeReceiverChanged is a free log subscription operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 6269 // 6270 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 6271 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchFeeReceiverChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20FeeReceiverChanged, feeReceiver []common.Address) (event.Subscription, error) { 6272 6273 var feeReceiverRule []interface{} 6274 for _, feeReceiverItem := range feeReceiver { 6275 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 6276 } 6277 6278 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "FeeReceiverChanged", feeReceiverRule) 6279 if err != nil { 6280 return nil, err 6281 } 6282 return event.NewSubscription(func(quit <-chan struct{}) error { 6283 defer sub.Unsubscribe() 6284 for { 6285 select { 6286 case log := <-logs: 6287 // New log arrived, parse the event and forward to the user 6288 event := new(BridgeTransferERC20FeeReceiverChanged) 6289 if err := _BridgeTransferERC20.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 6290 return err 6291 } 6292 event.Raw = log 6293 6294 select { 6295 case sink <- event: 6296 case err := <-sub.Err(): 6297 return err 6298 case <-quit: 6299 return nil 6300 } 6301 case err := <-sub.Err(): 6302 return err 6303 case <-quit: 6304 return nil 6305 } 6306 } 6307 }), nil 6308 } 6309 6310 // ParseFeeReceiverChanged is a log parse operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 6311 // 6312 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 6313 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseFeeReceiverChanged(log types.Log) (*BridgeTransferERC20FeeReceiverChanged, error) { 6314 event := new(BridgeTransferERC20FeeReceiverChanged) 6315 if err := _BridgeTransferERC20.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 6316 return nil, err 6317 } 6318 return event, nil 6319 } 6320 6321 // BridgeTransferERC20HandleValueTransferIterator is returned from FilterHandleValueTransfer and is used to iterate over the raw logs and unpacked data for HandleValueTransfer events raised by the BridgeTransferERC20 contract. 6322 type BridgeTransferERC20HandleValueTransferIterator struct { 6323 Event *BridgeTransferERC20HandleValueTransfer // Event containing the contract specifics and raw log 6324 6325 contract *bind.BoundContract // Generic contract to use for unpacking event data 6326 event string // Event name to use for unpacking event data 6327 6328 logs chan types.Log // Log channel receiving the found contract events 6329 sub klaytn.Subscription // Subscription for errors, completion and termination 6330 done bool // Whether the subscription completed delivering logs 6331 fail error // Occurred error to stop iteration 6332 } 6333 6334 // Next advances the iterator to the subsequent event, returning whether there 6335 // are any more events found. In case of a retrieval or parsing error, false is 6336 // returned and Error() can be queried for the exact failure. 6337 func (it *BridgeTransferERC20HandleValueTransferIterator) Next() bool { 6338 // If the iterator failed, stop iterating 6339 if it.fail != nil { 6340 return false 6341 } 6342 // If the iterator completed, deliver directly whatever's available 6343 if it.done { 6344 select { 6345 case log := <-it.logs: 6346 it.Event = new(BridgeTransferERC20HandleValueTransfer) 6347 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6348 it.fail = err 6349 return false 6350 } 6351 it.Event.Raw = log 6352 return true 6353 6354 default: 6355 return false 6356 } 6357 } 6358 // Iterator still in progress, wait for either a data or an error event 6359 select { 6360 case log := <-it.logs: 6361 it.Event = new(BridgeTransferERC20HandleValueTransfer) 6362 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6363 it.fail = err 6364 return false 6365 } 6366 it.Event.Raw = log 6367 return true 6368 6369 case err := <-it.sub.Err(): 6370 it.done = true 6371 it.fail = err 6372 return it.Next() 6373 } 6374 } 6375 6376 // Error returns any retrieval or parsing error occurred during filtering. 6377 func (it *BridgeTransferERC20HandleValueTransferIterator) Error() error { 6378 return it.fail 6379 } 6380 6381 // Close terminates the iteration process, releasing any pending underlying 6382 // resources. 6383 func (it *BridgeTransferERC20HandleValueTransferIterator) Close() error { 6384 it.sub.Unsubscribe() 6385 return nil 6386 } 6387 6388 // BridgeTransferERC20HandleValueTransfer represents a HandleValueTransfer event raised by the BridgeTransferERC20 contract. 6389 type BridgeTransferERC20HandleValueTransfer struct { 6390 RequestTxHash [32]byte 6391 TokenType uint8 6392 From common.Address 6393 To common.Address 6394 TokenAddress common.Address 6395 ValueOrTokenId *big.Int 6396 HandleNonce uint64 6397 LowerHandleNonce uint64 6398 ExtraData []byte 6399 Raw types.Log // Blockchain specific contextual infos 6400 } 6401 6402 // FilterHandleValueTransfer is a free log retrieval operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 6403 // 6404 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 6405 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterHandleValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC20HandleValueTransferIterator, error) { 6406 6407 var fromRule []interface{} 6408 for _, fromItem := range from { 6409 fromRule = append(fromRule, fromItem) 6410 } 6411 var toRule []interface{} 6412 for _, toItem := range to { 6413 toRule = append(toRule, toItem) 6414 } 6415 var tokenAddressRule []interface{} 6416 for _, tokenAddressItem := range tokenAddress { 6417 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 6418 } 6419 6420 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 6421 if err != nil { 6422 return nil, err 6423 } 6424 return &BridgeTransferERC20HandleValueTransferIterator{contract: _BridgeTransferERC20.contract, event: "HandleValueTransfer", logs: logs, sub: sub}, nil 6425 } 6426 6427 // WatchHandleValueTransfer is a free log subscription operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 6428 // 6429 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 6430 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchHandleValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20HandleValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 6431 6432 var fromRule []interface{} 6433 for _, fromItem := range from { 6434 fromRule = append(fromRule, fromItem) 6435 } 6436 var toRule []interface{} 6437 for _, toItem := range to { 6438 toRule = append(toRule, toItem) 6439 } 6440 var tokenAddressRule []interface{} 6441 for _, tokenAddressItem := range tokenAddress { 6442 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 6443 } 6444 6445 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 6446 if err != nil { 6447 return nil, err 6448 } 6449 return event.NewSubscription(func(quit <-chan struct{}) error { 6450 defer sub.Unsubscribe() 6451 for { 6452 select { 6453 case log := <-logs: 6454 // New log arrived, parse the event and forward to the user 6455 event := new(BridgeTransferERC20HandleValueTransfer) 6456 if err := _BridgeTransferERC20.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 6457 return err 6458 } 6459 event.Raw = log 6460 6461 select { 6462 case sink <- event: 6463 case err := <-sub.Err(): 6464 return err 6465 case <-quit: 6466 return nil 6467 } 6468 case err := <-sub.Err(): 6469 return err 6470 case <-quit: 6471 return nil 6472 } 6473 } 6474 }), nil 6475 } 6476 6477 // ParseHandleValueTransfer is a log parse operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 6478 // 6479 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 6480 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseHandleValueTransfer(log types.Log) (*BridgeTransferERC20HandleValueTransfer, error) { 6481 event := new(BridgeTransferERC20HandleValueTransfer) 6482 if err := _BridgeTransferERC20.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 6483 return nil, err 6484 } 6485 return event, nil 6486 } 6487 6488 // BridgeTransferERC20KLAYFeeChangedIterator is returned from FilterKLAYFeeChanged and is used to iterate over the raw logs and unpacked data for KLAYFeeChanged events raised by the BridgeTransferERC20 contract. 6489 type BridgeTransferERC20KLAYFeeChangedIterator struct { 6490 Event *BridgeTransferERC20KLAYFeeChanged // Event containing the contract specifics and raw log 6491 6492 contract *bind.BoundContract // Generic contract to use for unpacking event data 6493 event string // Event name to use for unpacking event data 6494 6495 logs chan types.Log // Log channel receiving the found contract events 6496 sub klaytn.Subscription // Subscription for errors, completion and termination 6497 done bool // Whether the subscription completed delivering logs 6498 fail error // Occurred error to stop iteration 6499 } 6500 6501 // Next advances the iterator to the subsequent event, returning whether there 6502 // are any more events found. In case of a retrieval or parsing error, false is 6503 // returned and Error() can be queried for the exact failure. 6504 func (it *BridgeTransferERC20KLAYFeeChangedIterator) Next() bool { 6505 // If the iterator failed, stop iterating 6506 if it.fail != nil { 6507 return false 6508 } 6509 // If the iterator completed, deliver directly whatever's available 6510 if it.done { 6511 select { 6512 case log := <-it.logs: 6513 it.Event = new(BridgeTransferERC20KLAYFeeChanged) 6514 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6515 it.fail = err 6516 return false 6517 } 6518 it.Event.Raw = log 6519 return true 6520 6521 default: 6522 return false 6523 } 6524 } 6525 // Iterator still in progress, wait for either a data or an error event 6526 select { 6527 case log := <-it.logs: 6528 it.Event = new(BridgeTransferERC20KLAYFeeChanged) 6529 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6530 it.fail = err 6531 return false 6532 } 6533 it.Event.Raw = log 6534 return true 6535 6536 case err := <-it.sub.Err(): 6537 it.done = true 6538 it.fail = err 6539 return it.Next() 6540 } 6541 } 6542 6543 // Error returns any retrieval or parsing error occurred during filtering. 6544 func (it *BridgeTransferERC20KLAYFeeChangedIterator) Error() error { 6545 return it.fail 6546 } 6547 6548 // Close terminates the iteration process, releasing any pending underlying 6549 // resources. 6550 func (it *BridgeTransferERC20KLAYFeeChangedIterator) Close() error { 6551 it.sub.Unsubscribe() 6552 return nil 6553 } 6554 6555 // BridgeTransferERC20KLAYFeeChanged represents a KLAYFeeChanged event raised by the BridgeTransferERC20 contract. 6556 type BridgeTransferERC20KLAYFeeChanged struct { 6557 Fee *big.Int 6558 Raw types.Log // Blockchain specific contextual infos 6559 } 6560 6561 // FilterKLAYFeeChanged is a free log retrieval operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 6562 // 6563 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 6564 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterKLAYFeeChanged(opts *bind.FilterOpts, fee []*big.Int) (*BridgeTransferERC20KLAYFeeChangedIterator, error) { 6565 6566 var feeRule []interface{} 6567 for _, feeItem := range fee { 6568 feeRule = append(feeRule, feeItem) 6569 } 6570 6571 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "KLAYFeeChanged", feeRule) 6572 if err != nil { 6573 return nil, err 6574 } 6575 return &BridgeTransferERC20KLAYFeeChangedIterator{contract: _BridgeTransferERC20.contract, event: "KLAYFeeChanged", logs: logs, sub: sub}, nil 6576 } 6577 6578 // WatchKLAYFeeChanged is a free log subscription operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 6579 // 6580 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 6581 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchKLAYFeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20KLAYFeeChanged, fee []*big.Int) (event.Subscription, error) { 6582 6583 var feeRule []interface{} 6584 for _, feeItem := range fee { 6585 feeRule = append(feeRule, feeItem) 6586 } 6587 6588 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "KLAYFeeChanged", feeRule) 6589 if err != nil { 6590 return nil, err 6591 } 6592 return event.NewSubscription(func(quit <-chan struct{}) error { 6593 defer sub.Unsubscribe() 6594 for { 6595 select { 6596 case log := <-logs: 6597 // New log arrived, parse the event and forward to the user 6598 event := new(BridgeTransferERC20KLAYFeeChanged) 6599 if err := _BridgeTransferERC20.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 6600 return err 6601 } 6602 event.Raw = log 6603 6604 select { 6605 case sink <- event: 6606 case err := <-sub.Err(): 6607 return err 6608 case <-quit: 6609 return nil 6610 } 6611 case err := <-sub.Err(): 6612 return err 6613 case <-quit: 6614 return nil 6615 } 6616 } 6617 }), nil 6618 } 6619 6620 // ParseKLAYFeeChanged is a log parse operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 6621 // 6622 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 6623 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseKLAYFeeChanged(log types.Log) (*BridgeTransferERC20KLAYFeeChanged, error) { 6624 event := new(BridgeTransferERC20KLAYFeeChanged) 6625 if err := _BridgeTransferERC20.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 6626 return nil, err 6627 } 6628 return event, nil 6629 } 6630 6631 // BridgeTransferERC20OwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the BridgeTransferERC20 contract. 6632 type BridgeTransferERC20OwnershipTransferredIterator struct { 6633 Event *BridgeTransferERC20OwnershipTransferred // Event containing the contract specifics and raw log 6634 6635 contract *bind.BoundContract // Generic contract to use for unpacking event data 6636 event string // Event name to use for unpacking event data 6637 6638 logs chan types.Log // Log channel receiving the found contract events 6639 sub klaytn.Subscription // Subscription for errors, completion and termination 6640 done bool // Whether the subscription completed delivering logs 6641 fail error // Occurred error to stop iteration 6642 } 6643 6644 // Next advances the iterator to the subsequent event, returning whether there 6645 // are any more events found. In case of a retrieval or parsing error, false is 6646 // returned and Error() can be queried for the exact failure. 6647 func (it *BridgeTransferERC20OwnershipTransferredIterator) Next() bool { 6648 // If the iterator failed, stop iterating 6649 if it.fail != nil { 6650 return false 6651 } 6652 // If the iterator completed, deliver directly whatever's available 6653 if it.done { 6654 select { 6655 case log := <-it.logs: 6656 it.Event = new(BridgeTransferERC20OwnershipTransferred) 6657 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6658 it.fail = err 6659 return false 6660 } 6661 it.Event.Raw = log 6662 return true 6663 6664 default: 6665 return false 6666 } 6667 } 6668 // Iterator still in progress, wait for either a data or an error event 6669 select { 6670 case log := <-it.logs: 6671 it.Event = new(BridgeTransferERC20OwnershipTransferred) 6672 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6673 it.fail = err 6674 return false 6675 } 6676 it.Event.Raw = log 6677 return true 6678 6679 case err := <-it.sub.Err(): 6680 it.done = true 6681 it.fail = err 6682 return it.Next() 6683 } 6684 } 6685 6686 // Error returns any retrieval or parsing error occurred during filtering. 6687 func (it *BridgeTransferERC20OwnershipTransferredIterator) Error() error { 6688 return it.fail 6689 } 6690 6691 // Close terminates the iteration process, releasing any pending underlying 6692 // resources. 6693 func (it *BridgeTransferERC20OwnershipTransferredIterator) Close() error { 6694 it.sub.Unsubscribe() 6695 return nil 6696 } 6697 6698 // BridgeTransferERC20OwnershipTransferred represents a OwnershipTransferred event raised by the BridgeTransferERC20 contract. 6699 type BridgeTransferERC20OwnershipTransferred struct { 6700 PreviousOwner common.Address 6701 NewOwner common.Address 6702 Raw types.Log // Blockchain specific contextual infos 6703 } 6704 6705 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 6706 // 6707 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 6708 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*BridgeTransferERC20OwnershipTransferredIterator, error) { 6709 6710 var previousOwnerRule []interface{} 6711 for _, previousOwnerItem := range previousOwner { 6712 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 6713 } 6714 var newOwnerRule []interface{} 6715 for _, newOwnerItem := range newOwner { 6716 newOwnerRule = append(newOwnerRule, newOwnerItem) 6717 } 6718 6719 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 6720 if err != nil { 6721 return nil, err 6722 } 6723 return &BridgeTransferERC20OwnershipTransferredIterator{contract: _BridgeTransferERC20.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 6724 } 6725 6726 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 6727 // 6728 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 6729 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20OwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 6730 6731 var previousOwnerRule []interface{} 6732 for _, previousOwnerItem := range previousOwner { 6733 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 6734 } 6735 var newOwnerRule []interface{} 6736 for _, newOwnerItem := range newOwner { 6737 newOwnerRule = append(newOwnerRule, newOwnerItem) 6738 } 6739 6740 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 6741 if err != nil { 6742 return nil, err 6743 } 6744 return event.NewSubscription(func(quit <-chan struct{}) error { 6745 defer sub.Unsubscribe() 6746 for { 6747 select { 6748 case log := <-logs: 6749 // New log arrived, parse the event and forward to the user 6750 event := new(BridgeTransferERC20OwnershipTransferred) 6751 if err := _BridgeTransferERC20.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 6752 return err 6753 } 6754 event.Raw = log 6755 6756 select { 6757 case sink <- event: 6758 case err := <-sub.Err(): 6759 return err 6760 case <-quit: 6761 return nil 6762 } 6763 case err := <-sub.Err(): 6764 return err 6765 case <-quit: 6766 return nil 6767 } 6768 } 6769 }), nil 6770 } 6771 6772 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 6773 // 6774 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 6775 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseOwnershipTransferred(log types.Log) (*BridgeTransferERC20OwnershipTransferred, error) { 6776 event := new(BridgeTransferERC20OwnershipTransferred) 6777 if err := _BridgeTransferERC20.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 6778 return nil, err 6779 } 6780 return event, nil 6781 } 6782 6783 // BridgeTransferERC20RequestValueTransferIterator is returned from FilterRequestValueTransfer and is used to iterate over the raw logs and unpacked data for RequestValueTransfer events raised by the BridgeTransferERC20 contract. 6784 type BridgeTransferERC20RequestValueTransferIterator struct { 6785 Event *BridgeTransferERC20RequestValueTransfer // Event containing the contract specifics and raw log 6786 6787 contract *bind.BoundContract // Generic contract to use for unpacking event data 6788 event string // Event name to use for unpacking event data 6789 6790 logs chan types.Log // Log channel receiving the found contract events 6791 sub klaytn.Subscription // Subscription for errors, completion and termination 6792 done bool // Whether the subscription completed delivering logs 6793 fail error // Occurred error to stop iteration 6794 } 6795 6796 // Next advances the iterator to the subsequent event, returning whether there 6797 // are any more events found. In case of a retrieval or parsing error, false is 6798 // returned and Error() can be queried for the exact failure. 6799 func (it *BridgeTransferERC20RequestValueTransferIterator) Next() bool { 6800 // If the iterator failed, stop iterating 6801 if it.fail != nil { 6802 return false 6803 } 6804 // If the iterator completed, deliver directly whatever's available 6805 if it.done { 6806 select { 6807 case log := <-it.logs: 6808 it.Event = new(BridgeTransferERC20RequestValueTransfer) 6809 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6810 it.fail = err 6811 return false 6812 } 6813 it.Event.Raw = log 6814 return true 6815 6816 default: 6817 return false 6818 } 6819 } 6820 // Iterator still in progress, wait for either a data or an error event 6821 select { 6822 case log := <-it.logs: 6823 it.Event = new(BridgeTransferERC20RequestValueTransfer) 6824 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6825 it.fail = err 6826 return false 6827 } 6828 it.Event.Raw = log 6829 return true 6830 6831 case err := <-it.sub.Err(): 6832 it.done = true 6833 it.fail = err 6834 return it.Next() 6835 } 6836 } 6837 6838 // Error returns any retrieval or parsing error occurred during filtering. 6839 func (it *BridgeTransferERC20RequestValueTransferIterator) Error() error { 6840 return it.fail 6841 } 6842 6843 // Close terminates the iteration process, releasing any pending underlying 6844 // resources. 6845 func (it *BridgeTransferERC20RequestValueTransferIterator) Close() error { 6846 it.sub.Unsubscribe() 6847 return nil 6848 } 6849 6850 // BridgeTransferERC20RequestValueTransfer represents a RequestValueTransfer event raised by the BridgeTransferERC20 contract. 6851 type BridgeTransferERC20RequestValueTransfer struct { 6852 TokenType uint8 6853 From common.Address 6854 To common.Address 6855 TokenAddress common.Address 6856 ValueOrTokenId *big.Int 6857 RequestNonce uint64 6858 Fee *big.Int 6859 ExtraData []byte 6860 Raw types.Log // Blockchain specific contextual infos 6861 } 6862 6863 // FilterRequestValueTransfer is a free log retrieval operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 6864 // 6865 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 6866 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterRequestValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC20RequestValueTransferIterator, error) { 6867 6868 var fromRule []interface{} 6869 for _, fromItem := range from { 6870 fromRule = append(fromRule, fromItem) 6871 } 6872 var toRule []interface{} 6873 for _, toItem := range to { 6874 toRule = append(toRule, toItem) 6875 } 6876 var tokenAddressRule []interface{} 6877 for _, tokenAddressItem := range tokenAddress { 6878 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 6879 } 6880 6881 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 6882 if err != nil { 6883 return nil, err 6884 } 6885 return &BridgeTransferERC20RequestValueTransferIterator{contract: _BridgeTransferERC20.contract, event: "RequestValueTransfer", logs: logs, sub: sub}, nil 6886 } 6887 6888 // WatchRequestValueTransfer is a free log subscription operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 6889 // 6890 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 6891 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchRequestValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20RequestValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 6892 6893 var fromRule []interface{} 6894 for _, fromItem := range from { 6895 fromRule = append(fromRule, fromItem) 6896 } 6897 var toRule []interface{} 6898 for _, toItem := range to { 6899 toRule = append(toRule, toItem) 6900 } 6901 var tokenAddressRule []interface{} 6902 for _, tokenAddressItem := range tokenAddress { 6903 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 6904 } 6905 6906 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 6907 if err != nil { 6908 return nil, err 6909 } 6910 return event.NewSubscription(func(quit <-chan struct{}) error { 6911 defer sub.Unsubscribe() 6912 for { 6913 select { 6914 case log := <-logs: 6915 // New log arrived, parse the event and forward to the user 6916 event := new(BridgeTransferERC20RequestValueTransfer) 6917 if err := _BridgeTransferERC20.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 6918 return err 6919 } 6920 event.Raw = log 6921 6922 select { 6923 case sink <- event: 6924 case err := <-sub.Err(): 6925 return err 6926 case <-quit: 6927 return nil 6928 } 6929 case err := <-sub.Err(): 6930 return err 6931 case <-quit: 6932 return nil 6933 } 6934 } 6935 }), nil 6936 } 6937 6938 // ParseRequestValueTransfer is a log parse operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 6939 // 6940 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 6941 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseRequestValueTransfer(log types.Log) (*BridgeTransferERC20RequestValueTransfer, error) { 6942 event := new(BridgeTransferERC20RequestValueTransfer) 6943 if err := _BridgeTransferERC20.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 6944 return nil, err 6945 } 6946 return event, nil 6947 } 6948 6949 // BridgeTransferERC20RequestValueTransferEncodedIterator is returned from FilterRequestValueTransferEncoded and is used to iterate over the raw logs and unpacked data for RequestValueTransferEncoded events raised by the BridgeTransferERC20 contract. 6950 type BridgeTransferERC20RequestValueTransferEncodedIterator struct { 6951 Event *BridgeTransferERC20RequestValueTransferEncoded // Event containing the contract specifics and raw log 6952 6953 contract *bind.BoundContract // Generic contract to use for unpacking event data 6954 event string // Event name to use for unpacking event data 6955 6956 logs chan types.Log // Log channel receiving the found contract events 6957 sub klaytn.Subscription // Subscription for errors, completion and termination 6958 done bool // Whether the subscription completed delivering logs 6959 fail error // Occurred error to stop iteration 6960 } 6961 6962 // Next advances the iterator to the subsequent event, returning whether there 6963 // are any more events found. In case of a retrieval or parsing error, false is 6964 // returned and Error() can be queried for the exact failure. 6965 func (it *BridgeTransferERC20RequestValueTransferEncodedIterator) Next() bool { 6966 // If the iterator failed, stop iterating 6967 if it.fail != nil { 6968 return false 6969 } 6970 // If the iterator completed, deliver directly whatever's available 6971 if it.done { 6972 select { 6973 case log := <-it.logs: 6974 it.Event = new(BridgeTransferERC20RequestValueTransferEncoded) 6975 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6976 it.fail = err 6977 return false 6978 } 6979 it.Event.Raw = log 6980 return true 6981 6982 default: 6983 return false 6984 } 6985 } 6986 // Iterator still in progress, wait for either a data or an error event 6987 select { 6988 case log := <-it.logs: 6989 it.Event = new(BridgeTransferERC20RequestValueTransferEncoded) 6990 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 6991 it.fail = err 6992 return false 6993 } 6994 it.Event.Raw = log 6995 return true 6996 6997 case err := <-it.sub.Err(): 6998 it.done = true 6999 it.fail = err 7000 return it.Next() 7001 } 7002 } 7003 7004 // Error returns any retrieval or parsing error occurred during filtering. 7005 func (it *BridgeTransferERC20RequestValueTransferEncodedIterator) Error() error { 7006 return it.fail 7007 } 7008 7009 // Close terminates the iteration process, releasing any pending underlying 7010 // resources. 7011 func (it *BridgeTransferERC20RequestValueTransferEncodedIterator) Close() error { 7012 it.sub.Unsubscribe() 7013 return nil 7014 } 7015 7016 // BridgeTransferERC20RequestValueTransferEncoded represents a RequestValueTransferEncoded event raised by the BridgeTransferERC20 contract. 7017 type BridgeTransferERC20RequestValueTransferEncoded struct { 7018 TokenType uint8 7019 From common.Address 7020 To common.Address 7021 TokenAddress common.Address 7022 ValueOrTokenId *big.Int 7023 RequestNonce uint64 7024 Fee *big.Int 7025 ExtraData []byte 7026 EncodingVer uint8 7027 EncodedData []byte 7028 Raw types.Log // Blockchain specific contextual infos 7029 } 7030 7031 // FilterRequestValueTransferEncoded is a free log retrieval operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 7032 // 7033 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 7034 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterRequestValueTransferEncoded(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC20RequestValueTransferEncodedIterator, error) { 7035 7036 var fromRule []interface{} 7037 for _, fromItem := range from { 7038 fromRule = append(fromRule, fromItem) 7039 } 7040 var toRule []interface{} 7041 for _, toItem := range to { 7042 toRule = append(toRule, toItem) 7043 } 7044 var tokenAddressRule []interface{} 7045 for _, tokenAddressItem := range tokenAddress { 7046 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 7047 } 7048 7049 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 7050 if err != nil { 7051 return nil, err 7052 } 7053 return &BridgeTransferERC20RequestValueTransferEncodedIterator{contract: _BridgeTransferERC20.contract, event: "RequestValueTransferEncoded", logs: logs, sub: sub}, nil 7054 } 7055 7056 // WatchRequestValueTransferEncoded is a free log subscription operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 7057 // 7058 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 7059 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchRequestValueTransferEncoded(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20RequestValueTransferEncoded, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 7060 7061 var fromRule []interface{} 7062 for _, fromItem := range from { 7063 fromRule = append(fromRule, fromItem) 7064 } 7065 var toRule []interface{} 7066 for _, toItem := range to { 7067 toRule = append(toRule, toItem) 7068 } 7069 var tokenAddressRule []interface{} 7070 for _, tokenAddressItem := range tokenAddress { 7071 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 7072 } 7073 7074 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 7075 if err != nil { 7076 return nil, err 7077 } 7078 return event.NewSubscription(func(quit <-chan struct{}) error { 7079 defer sub.Unsubscribe() 7080 for { 7081 select { 7082 case log := <-logs: 7083 // New log arrived, parse the event and forward to the user 7084 event := new(BridgeTransferERC20RequestValueTransferEncoded) 7085 if err := _BridgeTransferERC20.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 7086 return err 7087 } 7088 event.Raw = log 7089 7090 select { 7091 case sink <- event: 7092 case err := <-sub.Err(): 7093 return err 7094 case <-quit: 7095 return nil 7096 } 7097 case err := <-sub.Err(): 7098 return err 7099 case <-quit: 7100 return nil 7101 } 7102 } 7103 }), nil 7104 } 7105 7106 // ParseRequestValueTransferEncoded is a log parse operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 7107 // 7108 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 7109 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseRequestValueTransferEncoded(log types.Log) (*BridgeTransferERC20RequestValueTransferEncoded, error) { 7110 event := new(BridgeTransferERC20RequestValueTransferEncoded) 7111 if err := _BridgeTransferERC20.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 7112 return nil, err 7113 } 7114 return event, nil 7115 } 7116 7117 // BridgeTransferERC20TokenDeregisteredIterator is returned from FilterTokenDeregistered and is used to iterate over the raw logs and unpacked data for TokenDeregistered events raised by the BridgeTransferERC20 contract. 7118 type BridgeTransferERC20TokenDeregisteredIterator struct { 7119 Event *BridgeTransferERC20TokenDeregistered // Event containing the contract specifics and raw log 7120 7121 contract *bind.BoundContract // Generic contract to use for unpacking event data 7122 event string // Event name to use for unpacking event data 7123 7124 logs chan types.Log // Log channel receiving the found contract events 7125 sub klaytn.Subscription // Subscription for errors, completion and termination 7126 done bool // Whether the subscription completed delivering logs 7127 fail error // Occurred error to stop iteration 7128 } 7129 7130 // Next advances the iterator to the subsequent event, returning whether there 7131 // are any more events found. In case of a retrieval or parsing error, false is 7132 // returned and Error() can be queried for the exact failure. 7133 func (it *BridgeTransferERC20TokenDeregisteredIterator) Next() bool { 7134 // If the iterator failed, stop iterating 7135 if it.fail != nil { 7136 return false 7137 } 7138 // If the iterator completed, deliver directly whatever's available 7139 if it.done { 7140 select { 7141 case log := <-it.logs: 7142 it.Event = new(BridgeTransferERC20TokenDeregistered) 7143 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7144 it.fail = err 7145 return false 7146 } 7147 it.Event.Raw = log 7148 return true 7149 7150 default: 7151 return false 7152 } 7153 } 7154 // Iterator still in progress, wait for either a data or an error event 7155 select { 7156 case log := <-it.logs: 7157 it.Event = new(BridgeTransferERC20TokenDeregistered) 7158 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7159 it.fail = err 7160 return false 7161 } 7162 it.Event.Raw = log 7163 return true 7164 7165 case err := <-it.sub.Err(): 7166 it.done = true 7167 it.fail = err 7168 return it.Next() 7169 } 7170 } 7171 7172 // Error returns any retrieval or parsing error occurred during filtering. 7173 func (it *BridgeTransferERC20TokenDeregisteredIterator) Error() error { 7174 return it.fail 7175 } 7176 7177 // Close terminates the iteration process, releasing any pending underlying 7178 // resources. 7179 func (it *BridgeTransferERC20TokenDeregisteredIterator) Close() error { 7180 it.sub.Unsubscribe() 7181 return nil 7182 } 7183 7184 // BridgeTransferERC20TokenDeregistered represents a TokenDeregistered event raised by the BridgeTransferERC20 contract. 7185 type BridgeTransferERC20TokenDeregistered struct { 7186 Token common.Address 7187 Raw types.Log // Blockchain specific contextual infos 7188 } 7189 7190 // FilterTokenDeregistered is a free log retrieval operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 7191 // 7192 // Solidity: event TokenDeregistered(address indexed token) 7193 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterTokenDeregistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC20TokenDeregisteredIterator, error) { 7194 7195 var tokenRule []interface{} 7196 for _, tokenItem := range token { 7197 tokenRule = append(tokenRule, tokenItem) 7198 } 7199 7200 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "TokenDeregistered", tokenRule) 7201 if err != nil { 7202 return nil, err 7203 } 7204 return &BridgeTransferERC20TokenDeregisteredIterator{contract: _BridgeTransferERC20.contract, event: "TokenDeregistered", logs: logs, sub: sub}, nil 7205 } 7206 7207 // WatchTokenDeregistered is a free log subscription operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 7208 // 7209 // Solidity: event TokenDeregistered(address indexed token) 7210 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchTokenDeregistered(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20TokenDeregistered, token []common.Address) (event.Subscription, error) { 7211 7212 var tokenRule []interface{} 7213 for _, tokenItem := range token { 7214 tokenRule = append(tokenRule, tokenItem) 7215 } 7216 7217 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "TokenDeregistered", tokenRule) 7218 if err != nil { 7219 return nil, err 7220 } 7221 return event.NewSubscription(func(quit <-chan struct{}) error { 7222 defer sub.Unsubscribe() 7223 for { 7224 select { 7225 case log := <-logs: 7226 // New log arrived, parse the event and forward to the user 7227 event := new(BridgeTransferERC20TokenDeregistered) 7228 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 7229 return err 7230 } 7231 event.Raw = log 7232 7233 select { 7234 case sink <- event: 7235 case err := <-sub.Err(): 7236 return err 7237 case <-quit: 7238 return nil 7239 } 7240 case err := <-sub.Err(): 7241 return err 7242 case <-quit: 7243 return nil 7244 } 7245 } 7246 }), nil 7247 } 7248 7249 // ParseTokenDeregistered is a log parse operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 7250 // 7251 // Solidity: event TokenDeregistered(address indexed token) 7252 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseTokenDeregistered(log types.Log) (*BridgeTransferERC20TokenDeregistered, error) { 7253 event := new(BridgeTransferERC20TokenDeregistered) 7254 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 7255 return nil, err 7256 } 7257 return event, nil 7258 } 7259 7260 // BridgeTransferERC20TokenLockedIterator is returned from FilterTokenLocked and is used to iterate over the raw logs and unpacked data for TokenLocked events raised by the BridgeTransferERC20 contract. 7261 type BridgeTransferERC20TokenLockedIterator struct { 7262 Event *BridgeTransferERC20TokenLocked // Event containing the contract specifics and raw log 7263 7264 contract *bind.BoundContract // Generic contract to use for unpacking event data 7265 event string // Event name to use for unpacking event data 7266 7267 logs chan types.Log // Log channel receiving the found contract events 7268 sub klaytn.Subscription // Subscription for errors, completion and termination 7269 done bool // Whether the subscription completed delivering logs 7270 fail error // Occurred error to stop iteration 7271 } 7272 7273 // Next advances the iterator to the subsequent event, returning whether there 7274 // are any more events found. In case of a retrieval or parsing error, false is 7275 // returned and Error() can be queried for the exact failure. 7276 func (it *BridgeTransferERC20TokenLockedIterator) Next() bool { 7277 // If the iterator failed, stop iterating 7278 if it.fail != nil { 7279 return false 7280 } 7281 // If the iterator completed, deliver directly whatever's available 7282 if it.done { 7283 select { 7284 case log := <-it.logs: 7285 it.Event = new(BridgeTransferERC20TokenLocked) 7286 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7287 it.fail = err 7288 return false 7289 } 7290 it.Event.Raw = log 7291 return true 7292 7293 default: 7294 return false 7295 } 7296 } 7297 // Iterator still in progress, wait for either a data or an error event 7298 select { 7299 case log := <-it.logs: 7300 it.Event = new(BridgeTransferERC20TokenLocked) 7301 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7302 it.fail = err 7303 return false 7304 } 7305 it.Event.Raw = log 7306 return true 7307 7308 case err := <-it.sub.Err(): 7309 it.done = true 7310 it.fail = err 7311 return it.Next() 7312 } 7313 } 7314 7315 // Error returns any retrieval or parsing error occurred during filtering. 7316 func (it *BridgeTransferERC20TokenLockedIterator) Error() error { 7317 return it.fail 7318 } 7319 7320 // Close terminates the iteration process, releasing any pending underlying 7321 // resources. 7322 func (it *BridgeTransferERC20TokenLockedIterator) Close() error { 7323 it.sub.Unsubscribe() 7324 return nil 7325 } 7326 7327 // BridgeTransferERC20TokenLocked represents a TokenLocked event raised by the BridgeTransferERC20 contract. 7328 type BridgeTransferERC20TokenLocked struct { 7329 Token common.Address 7330 Raw types.Log // Blockchain specific contextual infos 7331 } 7332 7333 // FilterTokenLocked is a free log retrieval operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 7334 // 7335 // Solidity: event TokenLocked(address indexed token) 7336 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterTokenLocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC20TokenLockedIterator, error) { 7337 7338 var tokenRule []interface{} 7339 for _, tokenItem := range token { 7340 tokenRule = append(tokenRule, tokenItem) 7341 } 7342 7343 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "TokenLocked", tokenRule) 7344 if err != nil { 7345 return nil, err 7346 } 7347 return &BridgeTransferERC20TokenLockedIterator{contract: _BridgeTransferERC20.contract, event: "TokenLocked", logs: logs, sub: sub}, nil 7348 } 7349 7350 // WatchTokenLocked is a free log subscription operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 7351 // 7352 // Solidity: event TokenLocked(address indexed token) 7353 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchTokenLocked(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20TokenLocked, token []common.Address) (event.Subscription, error) { 7354 7355 var tokenRule []interface{} 7356 for _, tokenItem := range token { 7357 tokenRule = append(tokenRule, tokenItem) 7358 } 7359 7360 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "TokenLocked", tokenRule) 7361 if err != nil { 7362 return nil, err 7363 } 7364 return event.NewSubscription(func(quit <-chan struct{}) error { 7365 defer sub.Unsubscribe() 7366 for { 7367 select { 7368 case log := <-logs: 7369 // New log arrived, parse the event and forward to the user 7370 event := new(BridgeTransferERC20TokenLocked) 7371 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenLocked", log); err != nil { 7372 return err 7373 } 7374 event.Raw = log 7375 7376 select { 7377 case sink <- event: 7378 case err := <-sub.Err(): 7379 return err 7380 case <-quit: 7381 return nil 7382 } 7383 case err := <-sub.Err(): 7384 return err 7385 case <-quit: 7386 return nil 7387 } 7388 } 7389 }), nil 7390 } 7391 7392 // ParseTokenLocked is a log parse operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 7393 // 7394 // Solidity: event TokenLocked(address indexed token) 7395 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseTokenLocked(log types.Log) (*BridgeTransferERC20TokenLocked, error) { 7396 event := new(BridgeTransferERC20TokenLocked) 7397 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenLocked", log); err != nil { 7398 return nil, err 7399 } 7400 return event, nil 7401 } 7402 7403 // BridgeTransferERC20TokenRegisteredIterator is returned from FilterTokenRegistered and is used to iterate over the raw logs and unpacked data for TokenRegistered events raised by the BridgeTransferERC20 contract. 7404 type BridgeTransferERC20TokenRegisteredIterator struct { 7405 Event *BridgeTransferERC20TokenRegistered // Event containing the contract specifics and raw log 7406 7407 contract *bind.BoundContract // Generic contract to use for unpacking event data 7408 event string // Event name to use for unpacking event data 7409 7410 logs chan types.Log // Log channel receiving the found contract events 7411 sub klaytn.Subscription // Subscription for errors, completion and termination 7412 done bool // Whether the subscription completed delivering logs 7413 fail error // Occurred error to stop iteration 7414 } 7415 7416 // Next advances the iterator to the subsequent event, returning whether there 7417 // are any more events found. In case of a retrieval or parsing error, false is 7418 // returned and Error() can be queried for the exact failure. 7419 func (it *BridgeTransferERC20TokenRegisteredIterator) Next() bool { 7420 // If the iterator failed, stop iterating 7421 if it.fail != nil { 7422 return false 7423 } 7424 // If the iterator completed, deliver directly whatever's available 7425 if it.done { 7426 select { 7427 case log := <-it.logs: 7428 it.Event = new(BridgeTransferERC20TokenRegistered) 7429 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7430 it.fail = err 7431 return false 7432 } 7433 it.Event.Raw = log 7434 return true 7435 7436 default: 7437 return false 7438 } 7439 } 7440 // Iterator still in progress, wait for either a data or an error event 7441 select { 7442 case log := <-it.logs: 7443 it.Event = new(BridgeTransferERC20TokenRegistered) 7444 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7445 it.fail = err 7446 return false 7447 } 7448 it.Event.Raw = log 7449 return true 7450 7451 case err := <-it.sub.Err(): 7452 it.done = true 7453 it.fail = err 7454 return it.Next() 7455 } 7456 } 7457 7458 // Error returns any retrieval or parsing error occurred during filtering. 7459 func (it *BridgeTransferERC20TokenRegisteredIterator) Error() error { 7460 return it.fail 7461 } 7462 7463 // Close terminates the iteration process, releasing any pending underlying 7464 // resources. 7465 func (it *BridgeTransferERC20TokenRegisteredIterator) Close() error { 7466 it.sub.Unsubscribe() 7467 return nil 7468 } 7469 7470 // BridgeTransferERC20TokenRegistered represents a TokenRegistered event raised by the BridgeTransferERC20 contract. 7471 type BridgeTransferERC20TokenRegistered struct { 7472 Token common.Address 7473 Raw types.Log // Blockchain specific contextual infos 7474 } 7475 7476 // FilterTokenRegistered is a free log retrieval operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 7477 // 7478 // Solidity: event TokenRegistered(address indexed token) 7479 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterTokenRegistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC20TokenRegisteredIterator, error) { 7480 7481 var tokenRule []interface{} 7482 for _, tokenItem := range token { 7483 tokenRule = append(tokenRule, tokenItem) 7484 } 7485 7486 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "TokenRegistered", tokenRule) 7487 if err != nil { 7488 return nil, err 7489 } 7490 return &BridgeTransferERC20TokenRegisteredIterator{contract: _BridgeTransferERC20.contract, event: "TokenRegistered", logs: logs, sub: sub}, nil 7491 } 7492 7493 // WatchTokenRegistered is a free log subscription operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 7494 // 7495 // Solidity: event TokenRegistered(address indexed token) 7496 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchTokenRegistered(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20TokenRegistered, token []common.Address) (event.Subscription, error) { 7497 7498 var tokenRule []interface{} 7499 for _, tokenItem := range token { 7500 tokenRule = append(tokenRule, tokenItem) 7501 } 7502 7503 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "TokenRegistered", tokenRule) 7504 if err != nil { 7505 return nil, err 7506 } 7507 return event.NewSubscription(func(quit <-chan struct{}) error { 7508 defer sub.Unsubscribe() 7509 for { 7510 select { 7511 case log := <-logs: 7512 // New log arrived, parse the event and forward to the user 7513 event := new(BridgeTransferERC20TokenRegistered) 7514 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 7515 return err 7516 } 7517 event.Raw = log 7518 7519 select { 7520 case sink <- event: 7521 case err := <-sub.Err(): 7522 return err 7523 case <-quit: 7524 return nil 7525 } 7526 case err := <-sub.Err(): 7527 return err 7528 case <-quit: 7529 return nil 7530 } 7531 } 7532 }), nil 7533 } 7534 7535 // ParseTokenRegistered is a log parse operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 7536 // 7537 // Solidity: event TokenRegistered(address indexed token) 7538 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseTokenRegistered(log types.Log) (*BridgeTransferERC20TokenRegistered, error) { 7539 event := new(BridgeTransferERC20TokenRegistered) 7540 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 7541 return nil, err 7542 } 7543 return event, nil 7544 } 7545 7546 // BridgeTransferERC20TokenUnlockedIterator is returned from FilterTokenUnlocked and is used to iterate over the raw logs and unpacked data for TokenUnlocked events raised by the BridgeTransferERC20 contract. 7547 type BridgeTransferERC20TokenUnlockedIterator struct { 7548 Event *BridgeTransferERC20TokenUnlocked // Event containing the contract specifics and raw log 7549 7550 contract *bind.BoundContract // Generic contract to use for unpacking event data 7551 event string // Event name to use for unpacking event data 7552 7553 logs chan types.Log // Log channel receiving the found contract events 7554 sub klaytn.Subscription // Subscription for errors, completion and termination 7555 done bool // Whether the subscription completed delivering logs 7556 fail error // Occurred error to stop iteration 7557 } 7558 7559 // Next advances the iterator to the subsequent event, returning whether there 7560 // are any more events found. In case of a retrieval or parsing error, false is 7561 // returned and Error() can be queried for the exact failure. 7562 func (it *BridgeTransferERC20TokenUnlockedIterator) Next() bool { 7563 // If the iterator failed, stop iterating 7564 if it.fail != nil { 7565 return false 7566 } 7567 // If the iterator completed, deliver directly whatever's available 7568 if it.done { 7569 select { 7570 case log := <-it.logs: 7571 it.Event = new(BridgeTransferERC20TokenUnlocked) 7572 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7573 it.fail = err 7574 return false 7575 } 7576 it.Event.Raw = log 7577 return true 7578 7579 default: 7580 return false 7581 } 7582 } 7583 // Iterator still in progress, wait for either a data or an error event 7584 select { 7585 case log := <-it.logs: 7586 it.Event = new(BridgeTransferERC20TokenUnlocked) 7587 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 7588 it.fail = err 7589 return false 7590 } 7591 it.Event.Raw = log 7592 return true 7593 7594 case err := <-it.sub.Err(): 7595 it.done = true 7596 it.fail = err 7597 return it.Next() 7598 } 7599 } 7600 7601 // Error returns any retrieval or parsing error occurred during filtering. 7602 func (it *BridgeTransferERC20TokenUnlockedIterator) Error() error { 7603 return it.fail 7604 } 7605 7606 // Close terminates the iteration process, releasing any pending underlying 7607 // resources. 7608 func (it *BridgeTransferERC20TokenUnlockedIterator) Close() error { 7609 it.sub.Unsubscribe() 7610 return nil 7611 } 7612 7613 // BridgeTransferERC20TokenUnlocked represents a TokenUnlocked event raised by the BridgeTransferERC20 contract. 7614 type BridgeTransferERC20TokenUnlocked struct { 7615 Token common.Address 7616 Raw types.Log // Blockchain specific contextual infos 7617 } 7618 7619 // FilterTokenUnlocked is a free log retrieval operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 7620 // 7621 // Solidity: event TokenUnlocked(address indexed token) 7622 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) FilterTokenUnlocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC20TokenUnlockedIterator, error) { 7623 7624 var tokenRule []interface{} 7625 for _, tokenItem := range token { 7626 tokenRule = append(tokenRule, tokenItem) 7627 } 7628 7629 logs, sub, err := _BridgeTransferERC20.contract.FilterLogs(opts, "TokenUnlocked", tokenRule) 7630 if err != nil { 7631 return nil, err 7632 } 7633 return &BridgeTransferERC20TokenUnlockedIterator{contract: _BridgeTransferERC20.contract, event: "TokenUnlocked", logs: logs, sub: sub}, nil 7634 } 7635 7636 // WatchTokenUnlocked is a free log subscription operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 7637 // 7638 // Solidity: event TokenUnlocked(address indexed token) 7639 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) WatchTokenUnlocked(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC20TokenUnlocked, token []common.Address) (event.Subscription, error) { 7640 7641 var tokenRule []interface{} 7642 for _, tokenItem := range token { 7643 tokenRule = append(tokenRule, tokenItem) 7644 } 7645 7646 logs, sub, err := _BridgeTransferERC20.contract.WatchLogs(opts, "TokenUnlocked", tokenRule) 7647 if err != nil { 7648 return nil, err 7649 } 7650 return event.NewSubscription(func(quit <-chan struct{}) error { 7651 defer sub.Unsubscribe() 7652 for { 7653 select { 7654 case log := <-logs: 7655 // New log arrived, parse the event and forward to the user 7656 event := new(BridgeTransferERC20TokenUnlocked) 7657 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 7658 return err 7659 } 7660 event.Raw = log 7661 7662 select { 7663 case sink <- event: 7664 case err := <-sub.Err(): 7665 return err 7666 case <-quit: 7667 return nil 7668 } 7669 case err := <-sub.Err(): 7670 return err 7671 case <-quit: 7672 return nil 7673 } 7674 } 7675 }), nil 7676 } 7677 7678 // ParseTokenUnlocked is a log parse operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 7679 // 7680 // Solidity: event TokenUnlocked(address indexed token) 7681 func (_BridgeTransferERC20 *BridgeTransferERC20Filterer) ParseTokenUnlocked(log types.Log) (*BridgeTransferERC20TokenUnlocked, error) { 7682 event := new(BridgeTransferERC20TokenUnlocked) 7683 if err := _BridgeTransferERC20.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 7684 return nil, err 7685 } 7686 return event, nil 7687 } 7688 7689 // BridgeTransferERC721ABI is the input ABI used to generate the binding from. 7690 const BridgeTransferERC721ABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"lockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"handleNoncesToBlockNums\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"operators\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isRunning\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"requestERC721Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OPERATOR\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"registeredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_cToken\",\"type\":\"address\"}],\"name\":\"registerToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"feeOfERC20\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"indexOfTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"lowerHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"upperHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"operatorThresholds\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"lockedTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"modeMintBurn\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"requestNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"handledRequestTx\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"registeredTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"closedValueTransferVotes\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"recoveryBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"unlockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"configurationNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_requestTxHash\",\"type\":\"bytes32\"},{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_requestedNonce\",\"type\":\"uint64\"},{\"name\":\"_requestedBlockNumber\",\"type\":\"uint64\"},{\"name\":\"_tokenURI\",\"type\":\"string\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"handleERC721Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOperatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"deregisterToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeOfKLAY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"start\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"operatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"deregisterOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRegisteredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_voteType\",\"type\":\"uint8\"},{\"name\":\"_threshold\",\"type\":\"uint8\"}],\"name\":\"setOperatorThreshold\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"setFeeReceiver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"encodingVer\",\"type\":\"uint8\"},{\"indexed\":false,\"name\":\"encodedData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransferEncoded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"requestTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"handleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"lowerHandleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"HandleValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenDeregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenLocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenUnlocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"KLAYFeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"ERC20FeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"}]" 7691 7692 // BridgeTransferERC721BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 7693 const BridgeTransferERC721BinRuntime = `` 7694 7695 // BridgeTransferERC721FuncSigs maps the 4-byte function signature to its string representation. 7696 var BridgeTransferERC721FuncSigs = map[string]string{ 7697 "3a3099d1": "MAX_OPERATOR()", 7698 "9832c1d7": "closedValueTransferVotes(uint64)", 7699 "ac6fff0b": "configurationNonce()", 7700 "d8cf98ca": "deregisterOperator(address)", 7701 "bab2af1d": "deregisterToken(address)", 7702 "488af871": "feeOfERC20(address)", 7703 "c263b5d6": "feeOfKLAY()", 7704 "b3f00674": "feeReceiver()", 7705 "b2c01030": "getOperatorList()", 7706 "ea21eade": "getRegisteredTokenList()", 7707 "afb60223": "handleERC721Transfer(bytes32,address,address,address,uint256,uint64,uint64,string,bytes)", 7708 "13a6738a": "handleNoncesToBlockNums(uint64)", 7709 "8a75eee2": "handledRequestTx(bytes32)", 7710 "48a18a6a": "indexOfTokens(address)", 7711 "8f32d59b": "isOwner()", 7712 "2014e5d1": "isRunning()", 7713 "10693fcd": "lockToken(address)", 7714 "5eb7413a": "lockedTokens(address)", 7715 "4b40b826": "lowerHandleNonce()", 7716 "6e176ec2": "modeMintBurn()", 7717 "cf0da290": "onERC721Received(address,uint256,address,bytes)", 7718 "cb38f407": "operatorList(uint256)", 7719 "5526f76b": "operatorThresholds(uint8)", 7720 "13e7c9d8": "operators(address)", 7721 "8da5cb5b": "owner()", 7722 "989ba0d3": "recoveryBlockNumber()", 7723 "3682a450": "registerOperator(address)", 7724 "4739f7e5": "registerToken(address,address)", 7725 "3e4fe949": "registeredTokenList(uint256)", 7726 "8c0bd916": "registeredTokens(address)", 7727 "715018a6": "renounceOwnership()", 7728 "22604742": "requestERC721Transfer(address,address,uint256,bytes)", 7729 "7c1a0302": "requestNonce()", 7730 "efdcd974": "setFeeReceiver(address)", 7731 "ee2aec65": "setOperatorThreshold(uint8,uint8)", 7732 "c877cf37": "start(bool)", 7733 "f2fde38b": "transferOwnership(address)", 7734 "9ef2017b": "unlockToken(address)", 7735 "54edad72": "upperHandleNonce()", 7736 } 7737 7738 // BridgeTransferERC721 is an auto generated Go binding around a Klaytn contract. 7739 type BridgeTransferERC721 struct { 7740 BridgeTransferERC721Caller // Read-only binding to the contract 7741 BridgeTransferERC721Transactor // Write-only binding to the contract 7742 BridgeTransferERC721Filterer // Log filterer for contract events 7743 } 7744 7745 // BridgeTransferERC721Caller is an auto generated read-only Go binding around a Klaytn contract. 7746 type BridgeTransferERC721Caller struct { 7747 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7748 } 7749 7750 // BridgeTransferERC721Transactor is an auto generated write-only Go binding around a Klaytn contract. 7751 type BridgeTransferERC721Transactor struct { 7752 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7753 } 7754 7755 // BridgeTransferERC721Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 7756 type BridgeTransferERC721Filterer struct { 7757 contract *bind.BoundContract // Generic contract wrapper for the low level calls 7758 } 7759 7760 // BridgeTransferERC721Session is an auto generated Go binding around a Klaytn contract, 7761 // with pre-set call and transact options. 7762 type BridgeTransferERC721Session struct { 7763 Contract *BridgeTransferERC721 // Generic contract binding to set the session for 7764 CallOpts bind.CallOpts // Call options to use throughout this session 7765 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 7766 } 7767 7768 // BridgeTransferERC721CallerSession is an auto generated read-only Go binding around a Klaytn contract, 7769 // with pre-set call options. 7770 type BridgeTransferERC721CallerSession struct { 7771 Contract *BridgeTransferERC721Caller // Generic contract caller binding to set the session for 7772 CallOpts bind.CallOpts // Call options to use throughout this session 7773 } 7774 7775 // BridgeTransferERC721TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 7776 // with pre-set transact options. 7777 type BridgeTransferERC721TransactorSession struct { 7778 Contract *BridgeTransferERC721Transactor // Generic contract transactor binding to set the session for 7779 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 7780 } 7781 7782 // BridgeTransferERC721Raw is an auto generated low-level Go binding around a Klaytn contract. 7783 type BridgeTransferERC721Raw struct { 7784 Contract *BridgeTransferERC721 // Generic contract binding to access the raw methods on 7785 } 7786 7787 // BridgeTransferERC721CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 7788 type BridgeTransferERC721CallerRaw struct { 7789 Contract *BridgeTransferERC721Caller // Generic read-only contract binding to access the raw methods on 7790 } 7791 7792 // BridgeTransferERC721TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 7793 type BridgeTransferERC721TransactorRaw struct { 7794 Contract *BridgeTransferERC721Transactor // Generic write-only contract binding to access the raw methods on 7795 } 7796 7797 // NewBridgeTransferERC721 creates a new instance of BridgeTransferERC721, bound to a specific deployed contract. 7798 func NewBridgeTransferERC721(address common.Address, backend bind.ContractBackend) (*BridgeTransferERC721, error) { 7799 contract, err := bindBridgeTransferERC721(address, backend, backend, backend) 7800 if err != nil { 7801 return nil, err 7802 } 7803 return &BridgeTransferERC721{BridgeTransferERC721Caller: BridgeTransferERC721Caller{contract: contract}, BridgeTransferERC721Transactor: BridgeTransferERC721Transactor{contract: contract}, BridgeTransferERC721Filterer: BridgeTransferERC721Filterer{contract: contract}}, nil 7804 } 7805 7806 // NewBridgeTransferERC721Caller creates a new read-only instance of BridgeTransferERC721, bound to a specific deployed contract. 7807 func NewBridgeTransferERC721Caller(address common.Address, caller bind.ContractCaller) (*BridgeTransferERC721Caller, error) { 7808 contract, err := bindBridgeTransferERC721(address, caller, nil, nil) 7809 if err != nil { 7810 return nil, err 7811 } 7812 return &BridgeTransferERC721Caller{contract: contract}, nil 7813 } 7814 7815 // NewBridgeTransferERC721Transactor creates a new write-only instance of BridgeTransferERC721, bound to a specific deployed contract. 7816 func NewBridgeTransferERC721Transactor(address common.Address, transactor bind.ContractTransactor) (*BridgeTransferERC721Transactor, error) { 7817 contract, err := bindBridgeTransferERC721(address, nil, transactor, nil) 7818 if err != nil { 7819 return nil, err 7820 } 7821 return &BridgeTransferERC721Transactor{contract: contract}, nil 7822 } 7823 7824 // NewBridgeTransferERC721Filterer creates a new log filterer instance of BridgeTransferERC721, bound to a specific deployed contract. 7825 func NewBridgeTransferERC721Filterer(address common.Address, filterer bind.ContractFilterer) (*BridgeTransferERC721Filterer, error) { 7826 contract, err := bindBridgeTransferERC721(address, nil, nil, filterer) 7827 if err != nil { 7828 return nil, err 7829 } 7830 return &BridgeTransferERC721Filterer{contract: contract}, nil 7831 } 7832 7833 // bindBridgeTransferERC721 binds a generic wrapper to an already deployed contract. 7834 func bindBridgeTransferERC721(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 7835 parsed, err := abi.JSON(strings.NewReader(BridgeTransferERC721ABI)) 7836 if err != nil { 7837 return nil, err 7838 } 7839 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 7840 } 7841 7842 // Call invokes the (constant) contract method with params as input values and 7843 // sets the output to result. The result type might be a single field for simple 7844 // returns, a slice of interfaces for anonymous returns and a struct for named 7845 // returns. 7846 func (_BridgeTransferERC721 *BridgeTransferERC721Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 7847 return _BridgeTransferERC721.Contract.BridgeTransferERC721Caller.contract.Call(opts, result, method, params...) 7848 } 7849 7850 // Transfer initiates a plain transaction to move funds to the contract, calling 7851 // its default method if one is available. 7852 func (_BridgeTransferERC721 *BridgeTransferERC721Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7853 return _BridgeTransferERC721.Contract.BridgeTransferERC721Transactor.contract.Transfer(opts) 7854 } 7855 7856 // Transact invokes the (paid) contract method with params as input values. 7857 func (_BridgeTransferERC721 *BridgeTransferERC721Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7858 return _BridgeTransferERC721.Contract.BridgeTransferERC721Transactor.contract.Transact(opts, method, params...) 7859 } 7860 7861 // Call invokes the (constant) contract method with params as input values and 7862 // sets the output to result. The result type might be a single field for simple 7863 // returns, a slice of interfaces for anonymous returns and a struct for named 7864 // returns. 7865 func (_BridgeTransferERC721 *BridgeTransferERC721CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 7866 return _BridgeTransferERC721.Contract.contract.Call(opts, result, method, params...) 7867 } 7868 7869 // Transfer initiates a plain transaction to move funds to the contract, calling 7870 // its default method if one is available. 7871 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 7872 return _BridgeTransferERC721.Contract.contract.Transfer(opts) 7873 } 7874 7875 // Transact invokes the (paid) contract method with params as input values. 7876 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 7877 return _BridgeTransferERC721.Contract.contract.Transact(opts, method, params...) 7878 } 7879 7880 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 7881 // 7882 // Solidity: function MAX_OPERATOR() view returns(uint64) 7883 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) MAXOPERATOR(opts *bind.CallOpts) (uint64, error) { 7884 var ( 7885 ret0 = new(uint64) 7886 ) 7887 out := ret0 7888 err := _BridgeTransferERC721.contract.Call(opts, out, "MAX_OPERATOR") 7889 return *ret0, err 7890 } 7891 7892 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 7893 // 7894 // Solidity: function MAX_OPERATOR() view returns(uint64) 7895 func (_BridgeTransferERC721 *BridgeTransferERC721Session) MAXOPERATOR() (uint64, error) { 7896 return _BridgeTransferERC721.Contract.MAXOPERATOR(&_BridgeTransferERC721.CallOpts) 7897 } 7898 7899 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 7900 // 7901 // Solidity: function MAX_OPERATOR() view returns(uint64) 7902 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) MAXOPERATOR() (uint64, error) { 7903 return _BridgeTransferERC721.Contract.MAXOPERATOR(&_BridgeTransferERC721.CallOpts) 7904 } 7905 7906 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 7907 // 7908 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 7909 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) ClosedValueTransferVotes(opts *bind.CallOpts, arg0 uint64) (bool, error) { 7910 var ( 7911 ret0 = new(bool) 7912 ) 7913 out := ret0 7914 err := _BridgeTransferERC721.contract.Call(opts, out, "closedValueTransferVotes", arg0) 7915 return *ret0, err 7916 } 7917 7918 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 7919 // 7920 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 7921 func (_BridgeTransferERC721 *BridgeTransferERC721Session) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 7922 return _BridgeTransferERC721.Contract.ClosedValueTransferVotes(&_BridgeTransferERC721.CallOpts, arg0) 7923 } 7924 7925 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 7926 // 7927 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 7928 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 7929 return _BridgeTransferERC721.Contract.ClosedValueTransferVotes(&_BridgeTransferERC721.CallOpts, arg0) 7930 } 7931 7932 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 7933 // 7934 // Solidity: function configurationNonce() view returns(uint64) 7935 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) ConfigurationNonce(opts *bind.CallOpts) (uint64, error) { 7936 var ( 7937 ret0 = new(uint64) 7938 ) 7939 out := ret0 7940 err := _BridgeTransferERC721.contract.Call(opts, out, "configurationNonce") 7941 return *ret0, err 7942 } 7943 7944 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 7945 // 7946 // Solidity: function configurationNonce() view returns(uint64) 7947 func (_BridgeTransferERC721 *BridgeTransferERC721Session) ConfigurationNonce() (uint64, error) { 7948 return _BridgeTransferERC721.Contract.ConfigurationNonce(&_BridgeTransferERC721.CallOpts) 7949 } 7950 7951 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 7952 // 7953 // Solidity: function configurationNonce() view returns(uint64) 7954 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) ConfigurationNonce() (uint64, error) { 7955 return _BridgeTransferERC721.Contract.ConfigurationNonce(&_BridgeTransferERC721.CallOpts) 7956 } 7957 7958 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 7959 // 7960 // Solidity: function feeOfERC20(address ) view returns(uint256) 7961 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) FeeOfERC20(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 7962 var ( 7963 ret0 = new(*big.Int) 7964 ) 7965 out := ret0 7966 err := _BridgeTransferERC721.contract.Call(opts, out, "feeOfERC20", arg0) 7967 return *ret0, err 7968 } 7969 7970 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 7971 // 7972 // Solidity: function feeOfERC20(address ) view returns(uint256) 7973 func (_BridgeTransferERC721 *BridgeTransferERC721Session) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 7974 return _BridgeTransferERC721.Contract.FeeOfERC20(&_BridgeTransferERC721.CallOpts, arg0) 7975 } 7976 7977 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 7978 // 7979 // Solidity: function feeOfERC20(address ) view returns(uint256) 7980 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 7981 return _BridgeTransferERC721.Contract.FeeOfERC20(&_BridgeTransferERC721.CallOpts, arg0) 7982 } 7983 7984 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 7985 // 7986 // Solidity: function feeOfKLAY() view returns(uint256) 7987 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) FeeOfKLAY(opts *bind.CallOpts) (*big.Int, error) { 7988 var ( 7989 ret0 = new(*big.Int) 7990 ) 7991 out := ret0 7992 err := _BridgeTransferERC721.contract.Call(opts, out, "feeOfKLAY") 7993 return *ret0, err 7994 } 7995 7996 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 7997 // 7998 // Solidity: function feeOfKLAY() view returns(uint256) 7999 func (_BridgeTransferERC721 *BridgeTransferERC721Session) FeeOfKLAY() (*big.Int, error) { 8000 return _BridgeTransferERC721.Contract.FeeOfKLAY(&_BridgeTransferERC721.CallOpts) 8001 } 8002 8003 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 8004 // 8005 // Solidity: function feeOfKLAY() view returns(uint256) 8006 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) FeeOfKLAY() (*big.Int, error) { 8007 return _BridgeTransferERC721.Contract.FeeOfKLAY(&_BridgeTransferERC721.CallOpts) 8008 } 8009 8010 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 8011 // 8012 // Solidity: function feeReceiver() view returns(address) 8013 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) FeeReceiver(opts *bind.CallOpts) (common.Address, error) { 8014 var ( 8015 ret0 = new(common.Address) 8016 ) 8017 out := ret0 8018 err := _BridgeTransferERC721.contract.Call(opts, out, "feeReceiver") 8019 return *ret0, err 8020 } 8021 8022 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 8023 // 8024 // Solidity: function feeReceiver() view returns(address) 8025 func (_BridgeTransferERC721 *BridgeTransferERC721Session) FeeReceiver() (common.Address, error) { 8026 return _BridgeTransferERC721.Contract.FeeReceiver(&_BridgeTransferERC721.CallOpts) 8027 } 8028 8029 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 8030 // 8031 // Solidity: function feeReceiver() view returns(address) 8032 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) FeeReceiver() (common.Address, error) { 8033 return _BridgeTransferERC721.Contract.FeeReceiver(&_BridgeTransferERC721.CallOpts) 8034 } 8035 8036 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 8037 // 8038 // Solidity: function getOperatorList() view returns(address[]) 8039 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) GetOperatorList(opts *bind.CallOpts) ([]common.Address, error) { 8040 var ( 8041 ret0 = new([]common.Address) 8042 ) 8043 out := ret0 8044 err := _BridgeTransferERC721.contract.Call(opts, out, "getOperatorList") 8045 return *ret0, err 8046 } 8047 8048 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 8049 // 8050 // Solidity: function getOperatorList() view returns(address[]) 8051 func (_BridgeTransferERC721 *BridgeTransferERC721Session) GetOperatorList() ([]common.Address, error) { 8052 return _BridgeTransferERC721.Contract.GetOperatorList(&_BridgeTransferERC721.CallOpts) 8053 } 8054 8055 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 8056 // 8057 // Solidity: function getOperatorList() view returns(address[]) 8058 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) GetOperatorList() ([]common.Address, error) { 8059 return _BridgeTransferERC721.Contract.GetOperatorList(&_BridgeTransferERC721.CallOpts) 8060 } 8061 8062 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 8063 // 8064 // Solidity: function getRegisteredTokenList() view returns(address[]) 8065 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) GetRegisteredTokenList(opts *bind.CallOpts) ([]common.Address, error) { 8066 var ( 8067 ret0 = new([]common.Address) 8068 ) 8069 out := ret0 8070 err := _BridgeTransferERC721.contract.Call(opts, out, "getRegisteredTokenList") 8071 return *ret0, err 8072 } 8073 8074 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 8075 // 8076 // Solidity: function getRegisteredTokenList() view returns(address[]) 8077 func (_BridgeTransferERC721 *BridgeTransferERC721Session) GetRegisteredTokenList() ([]common.Address, error) { 8078 return _BridgeTransferERC721.Contract.GetRegisteredTokenList(&_BridgeTransferERC721.CallOpts) 8079 } 8080 8081 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 8082 // 8083 // Solidity: function getRegisteredTokenList() view returns(address[]) 8084 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) GetRegisteredTokenList() ([]common.Address, error) { 8085 return _BridgeTransferERC721.Contract.GetRegisteredTokenList(&_BridgeTransferERC721.CallOpts) 8086 } 8087 8088 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 8089 // 8090 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 8091 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) HandleNoncesToBlockNums(opts *bind.CallOpts, arg0 uint64) (uint64, error) { 8092 var ( 8093 ret0 = new(uint64) 8094 ) 8095 out := ret0 8096 err := _BridgeTransferERC721.contract.Call(opts, out, "handleNoncesToBlockNums", arg0) 8097 return *ret0, err 8098 } 8099 8100 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 8101 // 8102 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 8103 func (_BridgeTransferERC721 *BridgeTransferERC721Session) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 8104 return _BridgeTransferERC721.Contract.HandleNoncesToBlockNums(&_BridgeTransferERC721.CallOpts, arg0) 8105 } 8106 8107 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 8108 // 8109 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 8110 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 8111 return _BridgeTransferERC721.Contract.HandleNoncesToBlockNums(&_BridgeTransferERC721.CallOpts, arg0) 8112 } 8113 8114 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 8115 // 8116 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 8117 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) HandledRequestTx(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { 8118 var ( 8119 ret0 = new(bool) 8120 ) 8121 out := ret0 8122 err := _BridgeTransferERC721.contract.Call(opts, out, "handledRequestTx", arg0) 8123 return *ret0, err 8124 } 8125 8126 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 8127 // 8128 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 8129 func (_BridgeTransferERC721 *BridgeTransferERC721Session) HandledRequestTx(arg0 [32]byte) (bool, error) { 8130 return _BridgeTransferERC721.Contract.HandledRequestTx(&_BridgeTransferERC721.CallOpts, arg0) 8131 } 8132 8133 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 8134 // 8135 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 8136 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 8137 return _BridgeTransferERC721.Contract.HandledRequestTx(&_BridgeTransferERC721.CallOpts, arg0) 8138 } 8139 8140 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 8141 // 8142 // Solidity: function indexOfTokens(address ) view returns(uint256) 8143 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) IndexOfTokens(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 8144 var ( 8145 ret0 = new(*big.Int) 8146 ) 8147 out := ret0 8148 err := _BridgeTransferERC721.contract.Call(opts, out, "indexOfTokens", arg0) 8149 return *ret0, err 8150 } 8151 8152 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 8153 // 8154 // Solidity: function indexOfTokens(address ) view returns(uint256) 8155 func (_BridgeTransferERC721 *BridgeTransferERC721Session) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 8156 return _BridgeTransferERC721.Contract.IndexOfTokens(&_BridgeTransferERC721.CallOpts, arg0) 8157 } 8158 8159 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 8160 // 8161 // Solidity: function indexOfTokens(address ) view returns(uint256) 8162 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 8163 return _BridgeTransferERC721.Contract.IndexOfTokens(&_BridgeTransferERC721.CallOpts, arg0) 8164 } 8165 8166 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 8167 // 8168 // Solidity: function isOwner() view returns(bool) 8169 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) IsOwner(opts *bind.CallOpts) (bool, error) { 8170 var ( 8171 ret0 = new(bool) 8172 ) 8173 out := ret0 8174 err := _BridgeTransferERC721.contract.Call(opts, out, "isOwner") 8175 return *ret0, err 8176 } 8177 8178 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 8179 // 8180 // Solidity: function isOwner() view returns(bool) 8181 func (_BridgeTransferERC721 *BridgeTransferERC721Session) IsOwner() (bool, error) { 8182 return _BridgeTransferERC721.Contract.IsOwner(&_BridgeTransferERC721.CallOpts) 8183 } 8184 8185 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 8186 // 8187 // Solidity: function isOwner() view returns(bool) 8188 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) IsOwner() (bool, error) { 8189 return _BridgeTransferERC721.Contract.IsOwner(&_BridgeTransferERC721.CallOpts) 8190 } 8191 8192 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 8193 // 8194 // Solidity: function isRunning() view returns(bool) 8195 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) IsRunning(opts *bind.CallOpts) (bool, error) { 8196 var ( 8197 ret0 = new(bool) 8198 ) 8199 out := ret0 8200 err := _BridgeTransferERC721.contract.Call(opts, out, "isRunning") 8201 return *ret0, err 8202 } 8203 8204 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 8205 // 8206 // Solidity: function isRunning() view returns(bool) 8207 func (_BridgeTransferERC721 *BridgeTransferERC721Session) IsRunning() (bool, error) { 8208 return _BridgeTransferERC721.Contract.IsRunning(&_BridgeTransferERC721.CallOpts) 8209 } 8210 8211 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 8212 // 8213 // Solidity: function isRunning() view returns(bool) 8214 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) IsRunning() (bool, error) { 8215 return _BridgeTransferERC721.Contract.IsRunning(&_BridgeTransferERC721.CallOpts) 8216 } 8217 8218 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 8219 // 8220 // Solidity: function lockedTokens(address ) view returns(bool) 8221 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) LockedTokens(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 8222 var ( 8223 ret0 = new(bool) 8224 ) 8225 out := ret0 8226 err := _BridgeTransferERC721.contract.Call(opts, out, "lockedTokens", arg0) 8227 return *ret0, err 8228 } 8229 8230 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 8231 // 8232 // Solidity: function lockedTokens(address ) view returns(bool) 8233 func (_BridgeTransferERC721 *BridgeTransferERC721Session) LockedTokens(arg0 common.Address) (bool, error) { 8234 return _BridgeTransferERC721.Contract.LockedTokens(&_BridgeTransferERC721.CallOpts, arg0) 8235 } 8236 8237 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 8238 // 8239 // Solidity: function lockedTokens(address ) view returns(bool) 8240 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) LockedTokens(arg0 common.Address) (bool, error) { 8241 return _BridgeTransferERC721.Contract.LockedTokens(&_BridgeTransferERC721.CallOpts, arg0) 8242 } 8243 8244 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 8245 // 8246 // Solidity: function lowerHandleNonce() view returns(uint64) 8247 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) LowerHandleNonce(opts *bind.CallOpts) (uint64, error) { 8248 var ( 8249 ret0 = new(uint64) 8250 ) 8251 out := ret0 8252 err := _BridgeTransferERC721.contract.Call(opts, out, "lowerHandleNonce") 8253 return *ret0, err 8254 } 8255 8256 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 8257 // 8258 // Solidity: function lowerHandleNonce() view returns(uint64) 8259 func (_BridgeTransferERC721 *BridgeTransferERC721Session) LowerHandleNonce() (uint64, error) { 8260 return _BridgeTransferERC721.Contract.LowerHandleNonce(&_BridgeTransferERC721.CallOpts) 8261 } 8262 8263 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 8264 // 8265 // Solidity: function lowerHandleNonce() view returns(uint64) 8266 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) LowerHandleNonce() (uint64, error) { 8267 return _BridgeTransferERC721.Contract.LowerHandleNonce(&_BridgeTransferERC721.CallOpts) 8268 } 8269 8270 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 8271 // 8272 // Solidity: function modeMintBurn() view returns(bool) 8273 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) ModeMintBurn(opts *bind.CallOpts) (bool, error) { 8274 var ( 8275 ret0 = new(bool) 8276 ) 8277 out := ret0 8278 err := _BridgeTransferERC721.contract.Call(opts, out, "modeMintBurn") 8279 return *ret0, err 8280 } 8281 8282 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 8283 // 8284 // Solidity: function modeMintBurn() view returns(bool) 8285 func (_BridgeTransferERC721 *BridgeTransferERC721Session) ModeMintBurn() (bool, error) { 8286 return _BridgeTransferERC721.Contract.ModeMintBurn(&_BridgeTransferERC721.CallOpts) 8287 } 8288 8289 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 8290 // 8291 // Solidity: function modeMintBurn() view returns(bool) 8292 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) ModeMintBurn() (bool, error) { 8293 return _BridgeTransferERC721.Contract.ModeMintBurn(&_BridgeTransferERC721.CallOpts) 8294 } 8295 8296 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 8297 // 8298 // Solidity: function operatorList(uint256 ) view returns(address) 8299 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) OperatorList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 8300 var ( 8301 ret0 = new(common.Address) 8302 ) 8303 out := ret0 8304 err := _BridgeTransferERC721.contract.Call(opts, out, "operatorList", arg0) 8305 return *ret0, err 8306 } 8307 8308 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 8309 // 8310 // Solidity: function operatorList(uint256 ) view returns(address) 8311 func (_BridgeTransferERC721 *BridgeTransferERC721Session) OperatorList(arg0 *big.Int) (common.Address, error) { 8312 return _BridgeTransferERC721.Contract.OperatorList(&_BridgeTransferERC721.CallOpts, arg0) 8313 } 8314 8315 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 8316 // 8317 // Solidity: function operatorList(uint256 ) view returns(address) 8318 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) OperatorList(arg0 *big.Int) (common.Address, error) { 8319 return _BridgeTransferERC721.Contract.OperatorList(&_BridgeTransferERC721.CallOpts, arg0) 8320 } 8321 8322 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 8323 // 8324 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 8325 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) OperatorThresholds(opts *bind.CallOpts, arg0 uint8) (uint8, error) { 8326 var ( 8327 ret0 = new(uint8) 8328 ) 8329 out := ret0 8330 err := _BridgeTransferERC721.contract.Call(opts, out, "operatorThresholds", arg0) 8331 return *ret0, err 8332 } 8333 8334 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 8335 // 8336 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 8337 func (_BridgeTransferERC721 *BridgeTransferERC721Session) OperatorThresholds(arg0 uint8) (uint8, error) { 8338 return _BridgeTransferERC721.Contract.OperatorThresholds(&_BridgeTransferERC721.CallOpts, arg0) 8339 } 8340 8341 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 8342 // 8343 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 8344 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) OperatorThresholds(arg0 uint8) (uint8, error) { 8345 return _BridgeTransferERC721.Contract.OperatorThresholds(&_BridgeTransferERC721.CallOpts, arg0) 8346 } 8347 8348 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 8349 // 8350 // Solidity: function operators(address ) view returns(bool) 8351 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) Operators(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 8352 var ( 8353 ret0 = new(bool) 8354 ) 8355 out := ret0 8356 err := _BridgeTransferERC721.contract.Call(opts, out, "operators", arg0) 8357 return *ret0, err 8358 } 8359 8360 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 8361 // 8362 // Solidity: function operators(address ) view returns(bool) 8363 func (_BridgeTransferERC721 *BridgeTransferERC721Session) Operators(arg0 common.Address) (bool, error) { 8364 return _BridgeTransferERC721.Contract.Operators(&_BridgeTransferERC721.CallOpts, arg0) 8365 } 8366 8367 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 8368 // 8369 // Solidity: function operators(address ) view returns(bool) 8370 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) Operators(arg0 common.Address) (bool, error) { 8371 return _BridgeTransferERC721.Contract.Operators(&_BridgeTransferERC721.CallOpts, arg0) 8372 } 8373 8374 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 8375 // 8376 // Solidity: function owner() view returns(address) 8377 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) Owner(opts *bind.CallOpts) (common.Address, error) { 8378 var ( 8379 ret0 = new(common.Address) 8380 ) 8381 out := ret0 8382 err := _BridgeTransferERC721.contract.Call(opts, out, "owner") 8383 return *ret0, err 8384 } 8385 8386 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 8387 // 8388 // Solidity: function owner() view returns(address) 8389 func (_BridgeTransferERC721 *BridgeTransferERC721Session) Owner() (common.Address, error) { 8390 return _BridgeTransferERC721.Contract.Owner(&_BridgeTransferERC721.CallOpts) 8391 } 8392 8393 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 8394 // 8395 // Solidity: function owner() view returns(address) 8396 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) Owner() (common.Address, error) { 8397 return _BridgeTransferERC721.Contract.Owner(&_BridgeTransferERC721.CallOpts) 8398 } 8399 8400 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 8401 // 8402 // Solidity: function recoveryBlockNumber() view returns(uint64) 8403 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) RecoveryBlockNumber(opts *bind.CallOpts) (uint64, error) { 8404 var ( 8405 ret0 = new(uint64) 8406 ) 8407 out := ret0 8408 err := _BridgeTransferERC721.contract.Call(opts, out, "recoveryBlockNumber") 8409 return *ret0, err 8410 } 8411 8412 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 8413 // 8414 // Solidity: function recoveryBlockNumber() view returns(uint64) 8415 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RecoveryBlockNumber() (uint64, error) { 8416 return _BridgeTransferERC721.Contract.RecoveryBlockNumber(&_BridgeTransferERC721.CallOpts) 8417 } 8418 8419 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 8420 // 8421 // Solidity: function recoveryBlockNumber() view returns(uint64) 8422 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) RecoveryBlockNumber() (uint64, error) { 8423 return _BridgeTransferERC721.Contract.RecoveryBlockNumber(&_BridgeTransferERC721.CallOpts) 8424 } 8425 8426 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 8427 // 8428 // Solidity: function registeredTokenList(uint256 ) view returns(address) 8429 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) RegisteredTokenList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 8430 var ( 8431 ret0 = new(common.Address) 8432 ) 8433 out := ret0 8434 err := _BridgeTransferERC721.contract.Call(opts, out, "registeredTokenList", arg0) 8435 return *ret0, err 8436 } 8437 8438 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 8439 // 8440 // Solidity: function registeredTokenList(uint256 ) view returns(address) 8441 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 8442 return _BridgeTransferERC721.Contract.RegisteredTokenList(&_BridgeTransferERC721.CallOpts, arg0) 8443 } 8444 8445 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 8446 // 8447 // Solidity: function registeredTokenList(uint256 ) view returns(address) 8448 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 8449 return _BridgeTransferERC721.Contract.RegisteredTokenList(&_BridgeTransferERC721.CallOpts, arg0) 8450 } 8451 8452 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 8453 // 8454 // Solidity: function registeredTokens(address ) view returns(address) 8455 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) RegisteredTokens(opts *bind.CallOpts, arg0 common.Address) (common.Address, error) { 8456 var ( 8457 ret0 = new(common.Address) 8458 ) 8459 out := ret0 8460 err := _BridgeTransferERC721.contract.Call(opts, out, "registeredTokens", arg0) 8461 return *ret0, err 8462 } 8463 8464 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 8465 // 8466 // Solidity: function registeredTokens(address ) view returns(address) 8467 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RegisteredTokens(arg0 common.Address) (common.Address, error) { 8468 return _BridgeTransferERC721.Contract.RegisteredTokens(&_BridgeTransferERC721.CallOpts, arg0) 8469 } 8470 8471 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 8472 // 8473 // Solidity: function registeredTokens(address ) view returns(address) 8474 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 8475 return _BridgeTransferERC721.Contract.RegisteredTokens(&_BridgeTransferERC721.CallOpts, arg0) 8476 } 8477 8478 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 8479 // 8480 // Solidity: function requestNonce() view returns(uint64) 8481 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) RequestNonce(opts *bind.CallOpts) (uint64, error) { 8482 var ( 8483 ret0 = new(uint64) 8484 ) 8485 out := ret0 8486 err := _BridgeTransferERC721.contract.Call(opts, out, "requestNonce") 8487 return *ret0, err 8488 } 8489 8490 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 8491 // 8492 // Solidity: function requestNonce() view returns(uint64) 8493 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RequestNonce() (uint64, error) { 8494 return _BridgeTransferERC721.Contract.RequestNonce(&_BridgeTransferERC721.CallOpts) 8495 } 8496 8497 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 8498 // 8499 // Solidity: function requestNonce() view returns(uint64) 8500 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) RequestNonce() (uint64, error) { 8501 return _BridgeTransferERC721.Contract.RequestNonce(&_BridgeTransferERC721.CallOpts) 8502 } 8503 8504 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 8505 // 8506 // Solidity: function upperHandleNonce() view returns(uint64) 8507 func (_BridgeTransferERC721 *BridgeTransferERC721Caller) UpperHandleNonce(opts *bind.CallOpts) (uint64, error) { 8508 var ( 8509 ret0 = new(uint64) 8510 ) 8511 out := ret0 8512 err := _BridgeTransferERC721.contract.Call(opts, out, "upperHandleNonce") 8513 return *ret0, err 8514 } 8515 8516 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 8517 // 8518 // Solidity: function upperHandleNonce() view returns(uint64) 8519 func (_BridgeTransferERC721 *BridgeTransferERC721Session) UpperHandleNonce() (uint64, error) { 8520 return _BridgeTransferERC721.Contract.UpperHandleNonce(&_BridgeTransferERC721.CallOpts) 8521 } 8522 8523 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 8524 // 8525 // Solidity: function upperHandleNonce() view returns(uint64) 8526 func (_BridgeTransferERC721 *BridgeTransferERC721CallerSession) UpperHandleNonce() (uint64, error) { 8527 return _BridgeTransferERC721.Contract.UpperHandleNonce(&_BridgeTransferERC721.CallOpts) 8528 } 8529 8530 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 8531 // 8532 // Solidity: function deregisterOperator(address _operator) returns() 8533 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) DeregisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 8534 return _BridgeTransferERC721.contract.Transact(opts, "deregisterOperator", _operator) 8535 } 8536 8537 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 8538 // 8539 // Solidity: function deregisterOperator(address _operator) returns() 8540 func (_BridgeTransferERC721 *BridgeTransferERC721Session) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 8541 return _BridgeTransferERC721.Contract.DeregisterOperator(&_BridgeTransferERC721.TransactOpts, _operator) 8542 } 8543 8544 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 8545 // 8546 // Solidity: function deregisterOperator(address _operator) returns() 8547 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 8548 return _BridgeTransferERC721.Contract.DeregisterOperator(&_BridgeTransferERC721.TransactOpts, _operator) 8549 } 8550 8551 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 8552 // 8553 // Solidity: function deregisterToken(address _token) returns() 8554 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) DeregisterToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 8555 return _BridgeTransferERC721.contract.Transact(opts, "deregisterToken", _token) 8556 } 8557 8558 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 8559 // 8560 // Solidity: function deregisterToken(address _token) returns() 8561 func (_BridgeTransferERC721 *BridgeTransferERC721Session) DeregisterToken(_token common.Address) (*types.Transaction, error) { 8562 return _BridgeTransferERC721.Contract.DeregisterToken(&_BridgeTransferERC721.TransactOpts, _token) 8563 } 8564 8565 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 8566 // 8567 // Solidity: function deregisterToken(address _token) returns() 8568 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 8569 return _BridgeTransferERC721.Contract.DeregisterToken(&_BridgeTransferERC721.TransactOpts, _token) 8570 } 8571 8572 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 8573 // 8574 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestedNonce, uint64 _requestedBlockNumber, string _tokenURI, bytes _extraData) returns() 8575 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) HandleERC721Transfer(opts *bind.TransactOpts, _requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 8576 return _BridgeTransferERC721.contract.Transact(opts, "handleERC721Transfer", _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestedNonce, _requestedBlockNumber, _tokenURI, _extraData) 8577 } 8578 8579 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 8580 // 8581 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestedNonce, uint64 _requestedBlockNumber, string _tokenURI, bytes _extraData) returns() 8582 func (_BridgeTransferERC721 *BridgeTransferERC721Session) HandleERC721Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 8583 return _BridgeTransferERC721.Contract.HandleERC721Transfer(&_BridgeTransferERC721.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestedNonce, _requestedBlockNumber, _tokenURI, _extraData) 8584 } 8585 8586 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 8587 // 8588 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestedNonce, uint64 _requestedBlockNumber, string _tokenURI, bytes _extraData) returns() 8589 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) HandleERC721Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestedNonce uint64, _requestedBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 8590 return _BridgeTransferERC721.Contract.HandleERC721Transfer(&_BridgeTransferERC721.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestedNonce, _requestedBlockNumber, _tokenURI, _extraData) 8591 } 8592 8593 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 8594 // 8595 // Solidity: function lockToken(address _token) returns() 8596 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) LockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 8597 return _BridgeTransferERC721.contract.Transact(opts, "lockToken", _token) 8598 } 8599 8600 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 8601 // 8602 // Solidity: function lockToken(address _token) returns() 8603 func (_BridgeTransferERC721 *BridgeTransferERC721Session) LockToken(_token common.Address) (*types.Transaction, error) { 8604 return _BridgeTransferERC721.Contract.LockToken(&_BridgeTransferERC721.TransactOpts, _token) 8605 } 8606 8607 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 8608 // 8609 // Solidity: function lockToken(address _token) returns() 8610 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) LockToken(_token common.Address) (*types.Transaction, error) { 8611 return _BridgeTransferERC721.Contract.LockToken(&_BridgeTransferERC721.TransactOpts, _token) 8612 } 8613 8614 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 8615 // 8616 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 8617 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) OnERC721Received(opts *bind.TransactOpts, _from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 8618 return _BridgeTransferERC721.contract.Transact(opts, "onERC721Received", _from, _tokenId, _to, _extraData) 8619 } 8620 8621 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 8622 // 8623 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 8624 func (_BridgeTransferERC721 *BridgeTransferERC721Session) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 8625 return _BridgeTransferERC721.Contract.OnERC721Received(&_BridgeTransferERC721.TransactOpts, _from, _tokenId, _to, _extraData) 8626 } 8627 8628 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 8629 // 8630 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 8631 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 8632 return _BridgeTransferERC721.Contract.OnERC721Received(&_BridgeTransferERC721.TransactOpts, _from, _tokenId, _to, _extraData) 8633 } 8634 8635 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 8636 // 8637 // Solidity: function registerOperator(address _operator) returns() 8638 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) RegisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 8639 return _BridgeTransferERC721.contract.Transact(opts, "registerOperator", _operator) 8640 } 8641 8642 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 8643 // 8644 // Solidity: function registerOperator(address _operator) returns() 8645 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 8646 return _BridgeTransferERC721.Contract.RegisterOperator(&_BridgeTransferERC721.TransactOpts, _operator) 8647 } 8648 8649 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 8650 // 8651 // Solidity: function registerOperator(address _operator) returns() 8652 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 8653 return _BridgeTransferERC721.Contract.RegisterOperator(&_BridgeTransferERC721.TransactOpts, _operator) 8654 } 8655 8656 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 8657 // 8658 // Solidity: function registerToken(address _token, address _cToken) returns() 8659 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) RegisterToken(opts *bind.TransactOpts, _token common.Address, _cToken common.Address) (*types.Transaction, error) { 8660 return _BridgeTransferERC721.contract.Transact(opts, "registerToken", _token, _cToken) 8661 } 8662 8663 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 8664 // 8665 // Solidity: function registerToken(address _token, address _cToken) returns() 8666 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 8667 return _BridgeTransferERC721.Contract.RegisterToken(&_BridgeTransferERC721.TransactOpts, _token, _cToken) 8668 } 8669 8670 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 8671 // 8672 // Solidity: function registerToken(address _token, address _cToken) returns() 8673 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 8674 return _BridgeTransferERC721.Contract.RegisterToken(&_BridgeTransferERC721.TransactOpts, _token, _cToken) 8675 } 8676 8677 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 8678 // 8679 // Solidity: function renounceOwnership() returns() 8680 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 8681 return _BridgeTransferERC721.contract.Transact(opts, "renounceOwnership") 8682 } 8683 8684 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 8685 // 8686 // Solidity: function renounceOwnership() returns() 8687 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RenounceOwnership() (*types.Transaction, error) { 8688 return _BridgeTransferERC721.Contract.RenounceOwnership(&_BridgeTransferERC721.TransactOpts) 8689 } 8690 8691 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 8692 // 8693 // Solidity: function renounceOwnership() returns() 8694 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) RenounceOwnership() (*types.Transaction, error) { 8695 return _BridgeTransferERC721.Contract.RenounceOwnership(&_BridgeTransferERC721.TransactOpts) 8696 } 8697 8698 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 8699 // 8700 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 8701 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) RequestERC721Transfer(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 8702 return _BridgeTransferERC721.contract.Transact(opts, "requestERC721Transfer", _tokenAddress, _to, _tokenId, _extraData) 8703 } 8704 8705 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 8706 // 8707 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 8708 func (_BridgeTransferERC721 *BridgeTransferERC721Session) RequestERC721Transfer(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 8709 return _BridgeTransferERC721.Contract.RequestERC721Transfer(&_BridgeTransferERC721.TransactOpts, _tokenAddress, _to, _tokenId, _extraData) 8710 } 8711 8712 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 8713 // 8714 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 8715 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) RequestERC721Transfer(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 8716 return _BridgeTransferERC721.Contract.RequestERC721Transfer(&_BridgeTransferERC721.TransactOpts, _tokenAddress, _to, _tokenId, _extraData) 8717 } 8718 8719 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 8720 // 8721 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 8722 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) SetFeeReceiver(opts *bind.TransactOpts, _feeReceiver common.Address) (*types.Transaction, error) { 8723 return _BridgeTransferERC721.contract.Transact(opts, "setFeeReceiver", _feeReceiver) 8724 } 8725 8726 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 8727 // 8728 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 8729 func (_BridgeTransferERC721 *BridgeTransferERC721Session) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 8730 return _BridgeTransferERC721.Contract.SetFeeReceiver(&_BridgeTransferERC721.TransactOpts, _feeReceiver) 8731 } 8732 8733 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 8734 // 8735 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 8736 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 8737 return _BridgeTransferERC721.Contract.SetFeeReceiver(&_BridgeTransferERC721.TransactOpts, _feeReceiver) 8738 } 8739 8740 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 8741 // 8742 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 8743 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) SetOperatorThreshold(opts *bind.TransactOpts, _voteType uint8, _threshold uint8) (*types.Transaction, error) { 8744 return _BridgeTransferERC721.contract.Transact(opts, "setOperatorThreshold", _voteType, _threshold) 8745 } 8746 8747 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 8748 // 8749 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 8750 func (_BridgeTransferERC721 *BridgeTransferERC721Session) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 8751 return _BridgeTransferERC721.Contract.SetOperatorThreshold(&_BridgeTransferERC721.TransactOpts, _voteType, _threshold) 8752 } 8753 8754 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 8755 // 8756 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 8757 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 8758 return _BridgeTransferERC721.Contract.SetOperatorThreshold(&_BridgeTransferERC721.TransactOpts, _voteType, _threshold) 8759 } 8760 8761 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 8762 // 8763 // Solidity: function start(bool _status) returns() 8764 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) Start(opts *bind.TransactOpts, _status bool) (*types.Transaction, error) { 8765 return _BridgeTransferERC721.contract.Transact(opts, "start", _status) 8766 } 8767 8768 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 8769 // 8770 // Solidity: function start(bool _status) returns() 8771 func (_BridgeTransferERC721 *BridgeTransferERC721Session) Start(_status bool) (*types.Transaction, error) { 8772 return _BridgeTransferERC721.Contract.Start(&_BridgeTransferERC721.TransactOpts, _status) 8773 } 8774 8775 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 8776 // 8777 // Solidity: function start(bool _status) returns() 8778 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) Start(_status bool) (*types.Transaction, error) { 8779 return _BridgeTransferERC721.Contract.Start(&_BridgeTransferERC721.TransactOpts, _status) 8780 } 8781 8782 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 8783 // 8784 // Solidity: function transferOwnership(address newOwner) returns() 8785 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 8786 return _BridgeTransferERC721.contract.Transact(opts, "transferOwnership", newOwner) 8787 } 8788 8789 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 8790 // 8791 // Solidity: function transferOwnership(address newOwner) returns() 8792 func (_BridgeTransferERC721 *BridgeTransferERC721Session) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 8793 return _BridgeTransferERC721.Contract.TransferOwnership(&_BridgeTransferERC721.TransactOpts, newOwner) 8794 } 8795 8796 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 8797 // 8798 // Solidity: function transferOwnership(address newOwner) returns() 8799 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 8800 return _BridgeTransferERC721.Contract.TransferOwnership(&_BridgeTransferERC721.TransactOpts, newOwner) 8801 } 8802 8803 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 8804 // 8805 // Solidity: function unlockToken(address _token) returns() 8806 func (_BridgeTransferERC721 *BridgeTransferERC721Transactor) UnlockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 8807 return _BridgeTransferERC721.contract.Transact(opts, "unlockToken", _token) 8808 } 8809 8810 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 8811 // 8812 // Solidity: function unlockToken(address _token) returns() 8813 func (_BridgeTransferERC721 *BridgeTransferERC721Session) UnlockToken(_token common.Address) (*types.Transaction, error) { 8814 return _BridgeTransferERC721.Contract.UnlockToken(&_BridgeTransferERC721.TransactOpts, _token) 8815 } 8816 8817 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 8818 // 8819 // Solidity: function unlockToken(address _token) returns() 8820 func (_BridgeTransferERC721 *BridgeTransferERC721TransactorSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 8821 return _BridgeTransferERC721.Contract.UnlockToken(&_BridgeTransferERC721.TransactOpts, _token) 8822 } 8823 8824 // BridgeTransferERC721ERC20FeeChangedIterator is returned from FilterERC20FeeChanged and is used to iterate over the raw logs and unpacked data for ERC20FeeChanged events raised by the BridgeTransferERC721 contract. 8825 type BridgeTransferERC721ERC20FeeChangedIterator struct { 8826 Event *BridgeTransferERC721ERC20FeeChanged // Event containing the contract specifics and raw log 8827 8828 contract *bind.BoundContract // Generic contract to use for unpacking event data 8829 event string // Event name to use for unpacking event data 8830 8831 logs chan types.Log // Log channel receiving the found contract events 8832 sub klaytn.Subscription // Subscription for errors, completion and termination 8833 done bool // Whether the subscription completed delivering logs 8834 fail error // Occurred error to stop iteration 8835 } 8836 8837 // Next advances the iterator to the subsequent event, returning whether there 8838 // are any more events found. In case of a retrieval or parsing error, false is 8839 // returned and Error() can be queried for the exact failure. 8840 func (it *BridgeTransferERC721ERC20FeeChangedIterator) Next() bool { 8841 // If the iterator failed, stop iterating 8842 if it.fail != nil { 8843 return false 8844 } 8845 // If the iterator completed, deliver directly whatever's available 8846 if it.done { 8847 select { 8848 case log := <-it.logs: 8849 it.Event = new(BridgeTransferERC721ERC20FeeChanged) 8850 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8851 it.fail = err 8852 return false 8853 } 8854 it.Event.Raw = log 8855 return true 8856 8857 default: 8858 return false 8859 } 8860 } 8861 // Iterator still in progress, wait for either a data or an error event 8862 select { 8863 case log := <-it.logs: 8864 it.Event = new(BridgeTransferERC721ERC20FeeChanged) 8865 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 8866 it.fail = err 8867 return false 8868 } 8869 it.Event.Raw = log 8870 return true 8871 8872 case err := <-it.sub.Err(): 8873 it.done = true 8874 it.fail = err 8875 return it.Next() 8876 } 8877 } 8878 8879 // Error returns any retrieval or parsing error occurred during filtering. 8880 func (it *BridgeTransferERC721ERC20FeeChangedIterator) Error() error { 8881 return it.fail 8882 } 8883 8884 // Close terminates the iteration process, releasing any pending underlying 8885 // resources. 8886 func (it *BridgeTransferERC721ERC20FeeChangedIterator) Close() error { 8887 it.sub.Unsubscribe() 8888 return nil 8889 } 8890 8891 // BridgeTransferERC721ERC20FeeChanged represents a ERC20FeeChanged event raised by the BridgeTransferERC721 contract. 8892 type BridgeTransferERC721ERC20FeeChanged struct { 8893 Token common.Address 8894 Fee *big.Int 8895 Raw types.Log // Blockchain specific contextual infos 8896 } 8897 8898 // FilterERC20FeeChanged is a free log retrieval operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 8899 // 8900 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 8901 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterERC20FeeChanged(opts *bind.FilterOpts, token []common.Address, fee []*big.Int) (*BridgeTransferERC721ERC20FeeChangedIterator, error) { 8902 8903 var tokenRule []interface{} 8904 for _, tokenItem := range token { 8905 tokenRule = append(tokenRule, tokenItem) 8906 } 8907 var feeRule []interface{} 8908 for _, feeItem := range fee { 8909 feeRule = append(feeRule, feeItem) 8910 } 8911 8912 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 8913 if err != nil { 8914 return nil, err 8915 } 8916 return &BridgeTransferERC721ERC20FeeChangedIterator{contract: _BridgeTransferERC721.contract, event: "ERC20FeeChanged", logs: logs, sub: sub}, nil 8917 } 8918 8919 // WatchERC20FeeChanged is a free log subscription operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 8920 // 8921 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 8922 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchERC20FeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721ERC20FeeChanged, token []common.Address, fee []*big.Int) (event.Subscription, error) { 8923 8924 var tokenRule []interface{} 8925 for _, tokenItem := range token { 8926 tokenRule = append(tokenRule, tokenItem) 8927 } 8928 var feeRule []interface{} 8929 for _, feeItem := range fee { 8930 feeRule = append(feeRule, feeItem) 8931 } 8932 8933 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 8934 if err != nil { 8935 return nil, err 8936 } 8937 return event.NewSubscription(func(quit <-chan struct{}) error { 8938 defer sub.Unsubscribe() 8939 for { 8940 select { 8941 case log := <-logs: 8942 // New log arrived, parse the event and forward to the user 8943 event := new(BridgeTransferERC721ERC20FeeChanged) 8944 if err := _BridgeTransferERC721.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 8945 return err 8946 } 8947 event.Raw = log 8948 8949 select { 8950 case sink <- event: 8951 case err := <-sub.Err(): 8952 return err 8953 case <-quit: 8954 return nil 8955 } 8956 case err := <-sub.Err(): 8957 return err 8958 case <-quit: 8959 return nil 8960 } 8961 } 8962 }), nil 8963 } 8964 8965 // ParseERC20FeeChanged is a log parse operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 8966 // 8967 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 8968 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseERC20FeeChanged(log types.Log) (*BridgeTransferERC721ERC20FeeChanged, error) { 8969 event := new(BridgeTransferERC721ERC20FeeChanged) 8970 if err := _BridgeTransferERC721.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 8971 return nil, err 8972 } 8973 return event, nil 8974 } 8975 8976 // BridgeTransferERC721FeeReceiverChangedIterator is returned from FilterFeeReceiverChanged and is used to iterate over the raw logs and unpacked data for FeeReceiverChanged events raised by the BridgeTransferERC721 contract. 8977 type BridgeTransferERC721FeeReceiverChangedIterator struct { 8978 Event *BridgeTransferERC721FeeReceiverChanged // Event containing the contract specifics and raw log 8979 8980 contract *bind.BoundContract // Generic contract to use for unpacking event data 8981 event string // Event name to use for unpacking event data 8982 8983 logs chan types.Log // Log channel receiving the found contract events 8984 sub klaytn.Subscription // Subscription for errors, completion and termination 8985 done bool // Whether the subscription completed delivering logs 8986 fail error // Occurred error to stop iteration 8987 } 8988 8989 // Next advances the iterator to the subsequent event, returning whether there 8990 // are any more events found. In case of a retrieval or parsing error, false is 8991 // returned and Error() can be queried for the exact failure. 8992 func (it *BridgeTransferERC721FeeReceiverChangedIterator) Next() bool { 8993 // If the iterator failed, stop iterating 8994 if it.fail != nil { 8995 return false 8996 } 8997 // If the iterator completed, deliver directly whatever's available 8998 if it.done { 8999 select { 9000 case log := <-it.logs: 9001 it.Event = new(BridgeTransferERC721FeeReceiverChanged) 9002 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9003 it.fail = err 9004 return false 9005 } 9006 it.Event.Raw = log 9007 return true 9008 9009 default: 9010 return false 9011 } 9012 } 9013 // Iterator still in progress, wait for either a data or an error event 9014 select { 9015 case log := <-it.logs: 9016 it.Event = new(BridgeTransferERC721FeeReceiverChanged) 9017 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9018 it.fail = err 9019 return false 9020 } 9021 it.Event.Raw = log 9022 return true 9023 9024 case err := <-it.sub.Err(): 9025 it.done = true 9026 it.fail = err 9027 return it.Next() 9028 } 9029 } 9030 9031 // Error returns any retrieval or parsing error occurred during filtering. 9032 func (it *BridgeTransferERC721FeeReceiverChangedIterator) Error() error { 9033 return it.fail 9034 } 9035 9036 // Close terminates the iteration process, releasing any pending underlying 9037 // resources. 9038 func (it *BridgeTransferERC721FeeReceiverChangedIterator) Close() error { 9039 it.sub.Unsubscribe() 9040 return nil 9041 } 9042 9043 // BridgeTransferERC721FeeReceiverChanged represents a FeeReceiverChanged event raised by the BridgeTransferERC721 contract. 9044 type BridgeTransferERC721FeeReceiverChanged struct { 9045 FeeReceiver common.Address 9046 Raw types.Log // Blockchain specific contextual infos 9047 } 9048 9049 // FilterFeeReceiverChanged is a free log retrieval operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 9050 // 9051 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 9052 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterFeeReceiverChanged(opts *bind.FilterOpts, feeReceiver []common.Address) (*BridgeTransferERC721FeeReceiverChangedIterator, error) { 9053 9054 var feeReceiverRule []interface{} 9055 for _, feeReceiverItem := range feeReceiver { 9056 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 9057 } 9058 9059 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "FeeReceiverChanged", feeReceiverRule) 9060 if err != nil { 9061 return nil, err 9062 } 9063 return &BridgeTransferERC721FeeReceiverChangedIterator{contract: _BridgeTransferERC721.contract, event: "FeeReceiverChanged", logs: logs, sub: sub}, nil 9064 } 9065 9066 // WatchFeeReceiverChanged is a free log subscription operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 9067 // 9068 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 9069 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchFeeReceiverChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721FeeReceiverChanged, feeReceiver []common.Address) (event.Subscription, error) { 9070 9071 var feeReceiverRule []interface{} 9072 for _, feeReceiverItem := range feeReceiver { 9073 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 9074 } 9075 9076 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "FeeReceiverChanged", feeReceiverRule) 9077 if err != nil { 9078 return nil, err 9079 } 9080 return event.NewSubscription(func(quit <-chan struct{}) error { 9081 defer sub.Unsubscribe() 9082 for { 9083 select { 9084 case log := <-logs: 9085 // New log arrived, parse the event and forward to the user 9086 event := new(BridgeTransferERC721FeeReceiverChanged) 9087 if err := _BridgeTransferERC721.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 9088 return err 9089 } 9090 event.Raw = log 9091 9092 select { 9093 case sink <- event: 9094 case err := <-sub.Err(): 9095 return err 9096 case <-quit: 9097 return nil 9098 } 9099 case err := <-sub.Err(): 9100 return err 9101 case <-quit: 9102 return nil 9103 } 9104 } 9105 }), nil 9106 } 9107 9108 // ParseFeeReceiverChanged is a log parse operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 9109 // 9110 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 9111 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseFeeReceiverChanged(log types.Log) (*BridgeTransferERC721FeeReceiverChanged, error) { 9112 event := new(BridgeTransferERC721FeeReceiverChanged) 9113 if err := _BridgeTransferERC721.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 9114 return nil, err 9115 } 9116 return event, nil 9117 } 9118 9119 // BridgeTransferERC721HandleValueTransferIterator is returned from FilterHandleValueTransfer and is used to iterate over the raw logs and unpacked data for HandleValueTransfer events raised by the BridgeTransferERC721 contract. 9120 type BridgeTransferERC721HandleValueTransferIterator struct { 9121 Event *BridgeTransferERC721HandleValueTransfer // Event containing the contract specifics and raw log 9122 9123 contract *bind.BoundContract // Generic contract to use for unpacking event data 9124 event string // Event name to use for unpacking event data 9125 9126 logs chan types.Log // Log channel receiving the found contract events 9127 sub klaytn.Subscription // Subscription for errors, completion and termination 9128 done bool // Whether the subscription completed delivering logs 9129 fail error // Occurred error to stop iteration 9130 } 9131 9132 // Next advances the iterator to the subsequent event, returning whether there 9133 // are any more events found. In case of a retrieval or parsing error, false is 9134 // returned and Error() can be queried for the exact failure. 9135 func (it *BridgeTransferERC721HandleValueTransferIterator) Next() bool { 9136 // If the iterator failed, stop iterating 9137 if it.fail != nil { 9138 return false 9139 } 9140 // If the iterator completed, deliver directly whatever's available 9141 if it.done { 9142 select { 9143 case log := <-it.logs: 9144 it.Event = new(BridgeTransferERC721HandleValueTransfer) 9145 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9146 it.fail = err 9147 return false 9148 } 9149 it.Event.Raw = log 9150 return true 9151 9152 default: 9153 return false 9154 } 9155 } 9156 // Iterator still in progress, wait for either a data or an error event 9157 select { 9158 case log := <-it.logs: 9159 it.Event = new(BridgeTransferERC721HandleValueTransfer) 9160 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9161 it.fail = err 9162 return false 9163 } 9164 it.Event.Raw = log 9165 return true 9166 9167 case err := <-it.sub.Err(): 9168 it.done = true 9169 it.fail = err 9170 return it.Next() 9171 } 9172 } 9173 9174 // Error returns any retrieval or parsing error occurred during filtering. 9175 func (it *BridgeTransferERC721HandleValueTransferIterator) Error() error { 9176 return it.fail 9177 } 9178 9179 // Close terminates the iteration process, releasing any pending underlying 9180 // resources. 9181 func (it *BridgeTransferERC721HandleValueTransferIterator) Close() error { 9182 it.sub.Unsubscribe() 9183 return nil 9184 } 9185 9186 // BridgeTransferERC721HandleValueTransfer represents a HandleValueTransfer event raised by the BridgeTransferERC721 contract. 9187 type BridgeTransferERC721HandleValueTransfer struct { 9188 RequestTxHash [32]byte 9189 TokenType uint8 9190 From common.Address 9191 To common.Address 9192 TokenAddress common.Address 9193 ValueOrTokenId *big.Int 9194 HandleNonce uint64 9195 LowerHandleNonce uint64 9196 ExtraData []byte 9197 Raw types.Log // Blockchain specific contextual infos 9198 } 9199 9200 // FilterHandleValueTransfer is a free log retrieval operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 9201 // 9202 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 9203 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterHandleValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC721HandleValueTransferIterator, error) { 9204 9205 var fromRule []interface{} 9206 for _, fromItem := range from { 9207 fromRule = append(fromRule, fromItem) 9208 } 9209 var toRule []interface{} 9210 for _, toItem := range to { 9211 toRule = append(toRule, toItem) 9212 } 9213 var tokenAddressRule []interface{} 9214 for _, tokenAddressItem := range tokenAddress { 9215 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9216 } 9217 9218 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 9219 if err != nil { 9220 return nil, err 9221 } 9222 return &BridgeTransferERC721HandleValueTransferIterator{contract: _BridgeTransferERC721.contract, event: "HandleValueTransfer", logs: logs, sub: sub}, nil 9223 } 9224 9225 // WatchHandleValueTransfer is a free log subscription operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 9226 // 9227 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 9228 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchHandleValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721HandleValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 9229 9230 var fromRule []interface{} 9231 for _, fromItem := range from { 9232 fromRule = append(fromRule, fromItem) 9233 } 9234 var toRule []interface{} 9235 for _, toItem := range to { 9236 toRule = append(toRule, toItem) 9237 } 9238 var tokenAddressRule []interface{} 9239 for _, tokenAddressItem := range tokenAddress { 9240 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9241 } 9242 9243 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 9244 if err != nil { 9245 return nil, err 9246 } 9247 return event.NewSubscription(func(quit <-chan struct{}) error { 9248 defer sub.Unsubscribe() 9249 for { 9250 select { 9251 case log := <-logs: 9252 // New log arrived, parse the event and forward to the user 9253 event := new(BridgeTransferERC721HandleValueTransfer) 9254 if err := _BridgeTransferERC721.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 9255 return err 9256 } 9257 event.Raw = log 9258 9259 select { 9260 case sink <- event: 9261 case err := <-sub.Err(): 9262 return err 9263 case <-quit: 9264 return nil 9265 } 9266 case err := <-sub.Err(): 9267 return err 9268 case <-quit: 9269 return nil 9270 } 9271 } 9272 }), nil 9273 } 9274 9275 // ParseHandleValueTransfer is a log parse operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 9276 // 9277 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 9278 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseHandleValueTransfer(log types.Log) (*BridgeTransferERC721HandleValueTransfer, error) { 9279 event := new(BridgeTransferERC721HandleValueTransfer) 9280 if err := _BridgeTransferERC721.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 9281 return nil, err 9282 } 9283 return event, nil 9284 } 9285 9286 // BridgeTransferERC721KLAYFeeChangedIterator is returned from FilterKLAYFeeChanged and is used to iterate over the raw logs and unpacked data for KLAYFeeChanged events raised by the BridgeTransferERC721 contract. 9287 type BridgeTransferERC721KLAYFeeChangedIterator struct { 9288 Event *BridgeTransferERC721KLAYFeeChanged // Event containing the contract specifics and raw log 9289 9290 contract *bind.BoundContract // Generic contract to use for unpacking event data 9291 event string // Event name to use for unpacking event data 9292 9293 logs chan types.Log // Log channel receiving the found contract events 9294 sub klaytn.Subscription // Subscription for errors, completion and termination 9295 done bool // Whether the subscription completed delivering logs 9296 fail error // Occurred error to stop iteration 9297 } 9298 9299 // Next advances the iterator to the subsequent event, returning whether there 9300 // are any more events found. In case of a retrieval or parsing error, false is 9301 // returned and Error() can be queried for the exact failure. 9302 func (it *BridgeTransferERC721KLAYFeeChangedIterator) Next() bool { 9303 // If the iterator failed, stop iterating 9304 if it.fail != nil { 9305 return false 9306 } 9307 // If the iterator completed, deliver directly whatever's available 9308 if it.done { 9309 select { 9310 case log := <-it.logs: 9311 it.Event = new(BridgeTransferERC721KLAYFeeChanged) 9312 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9313 it.fail = err 9314 return false 9315 } 9316 it.Event.Raw = log 9317 return true 9318 9319 default: 9320 return false 9321 } 9322 } 9323 // Iterator still in progress, wait for either a data or an error event 9324 select { 9325 case log := <-it.logs: 9326 it.Event = new(BridgeTransferERC721KLAYFeeChanged) 9327 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9328 it.fail = err 9329 return false 9330 } 9331 it.Event.Raw = log 9332 return true 9333 9334 case err := <-it.sub.Err(): 9335 it.done = true 9336 it.fail = err 9337 return it.Next() 9338 } 9339 } 9340 9341 // Error returns any retrieval or parsing error occurred during filtering. 9342 func (it *BridgeTransferERC721KLAYFeeChangedIterator) Error() error { 9343 return it.fail 9344 } 9345 9346 // Close terminates the iteration process, releasing any pending underlying 9347 // resources. 9348 func (it *BridgeTransferERC721KLAYFeeChangedIterator) Close() error { 9349 it.sub.Unsubscribe() 9350 return nil 9351 } 9352 9353 // BridgeTransferERC721KLAYFeeChanged represents a KLAYFeeChanged event raised by the BridgeTransferERC721 contract. 9354 type BridgeTransferERC721KLAYFeeChanged struct { 9355 Fee *big.Int 9356 Raw types.Log // Blockchain specific contextual infos 9357 } 9358 9359 // FilterKLAYFeeChanged is a free log retrieval operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 9360 // 9361 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 9362 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterKLAYFeeChanged(opts *bind.FilterOpts, fee []*big.Int) (*BridgeTransferERC721KLAYFeeChangedIterator, error) { 9363 9364 var feeRule []interface{} 9365 for _, feeItem := range fee { 9366 feeRule = append(feeRule, feeItem) 9367 } 9368 9369 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "KLAYFeeChanged", feeRule) 9370 if err != nil { 9371 return nil, err 9372 } 9373 return &BridgeTransferERC721KLAYFeeChangedIterator{contract: _BridgeTransferERC721.contract, event: "KLAYFeeChanged", logs: logs, sub: sub}, nil 9374 } 9375 9376 // WatchKLAYFeeChanged is a free log subscription operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 9377 // 9378 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 9379 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchKLAYFeeChanged(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721KLAYFeeChanged, fee []*big.Int) (event.Subscription, error) { 9380 9381 var feeRule []interface{} 9382 for _, feeItem := range fee { 9383 feeRule = append(feeRule, feeItem) 9384 } 9385 9386 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "KLAYFeeChanged", feeRule) 9387 if err != nil { 9388 return nil, err 9389 } 9390 return event.NewSubscription(func(quit <-chan struct{}) error { 9391 defer sub.Unsubscribe() 9392 for { 9393 select { 9394 case log := <-logs: 9395 // New log arrived, parse the event and forward to the user 9396 event := new(BridgeTransferERC721KLAYFeeChanged) 9397 if err := _BridgeTransferERC721.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 9398 return err 9399 } 9400 event.Raw = log 9401 9402 select { 9403 case sink <- event: 9404 case err := <-sub.Err(): 9405 return err 9406 case <-quit: 9407 return nil 9408 } 9409 case err := <-sub.Err(): 9410 return err 9411 case <-quit: 9412 return nil 9413 } 9414 } 9415 }), nil 9416 } 9417 9418 // ParseKLAYFeeChanged is a log parse operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 9419 // 9420 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 9421 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseKLAYFeeChanged(log types.Log) (*BridgeTransferERC721KLAYFeeChanged, error) { 9422 event := new(BridgeTransferERC721KLAYFeeChanged) 9423 if err := _BridgeTransferERC721.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 9424 return nil, err 9425 } 9426 return event, nil 9427 } 9428 9429 // BridgeTransferERC721OwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the BridgeTransferERC721 contract. 9430 type BridgeTransferERC721OwnershipTransferredIterator struct { 9431 Event *BridgeTransferERC721OwnershipTransferred // Event containing the contract specifics and raw log 9432 9433 contract *bind.BoundContract // Generic contract to use for unpacking event data 9434 event string // Event name to use for unpacking event data 9435 9436 logs chan types.Log // Log channel receiving the found contract events 9437 sub klaytn.Subscription // Subscription for errors, completion and termination 9438 done bool // Whether the subscription completed delivering logs 9439 fail error // Occurred error to stop iteration 9440 } 9441 9442 // Next advances the iterator to the subsequent event, returning whether there 9443 // are any more events found. In case of a retrieval or parsing error, false is 9444 // returned and Error() can be queried for the exact failure. 9445 func (it *BridgeTransferERC721OwnershipTransferredIterator) Next() bool { 9446 // If the iterator failed, stop iterating 9447 if it.fail != nil { 9448 return false 9449 } 9450 // If the iterator completed, deliver directly whatever's available 9451 if it.done { 9452 select { 9453 case log := <-it.logs: 9454 it.Event = new(BridgeTransferERC721OwnershipTransferred) 9455 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9456 it.fail = err 9457 return false 9458 } 9459 it.Event.Raw = log 9460 return true 9461 9462 default: 9463 return false 9464 } 9465 } 9466 // Iterator still in progress, wait for either a data or an error event 9467 select { 9468 case log := <-it.logs: 9469 it.Event = new(BridgeTransferERC721OwnershipTransferred) 9470 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9471 it.fail = err 9472 return false 9473 } 9474 it.Event.Raw = log 9475 return true 9476 9477 case err := <-it.sub.Err(): 9478 it.done = true 9479 it.fail = err 9480 return it.Next() 9481 } 9482 } 9483 9484 // Error returns any retrieval or parsing error occurred during filtering. 9485 func (it *BridgeTransferERC721OwnershipTransferredIterator) Error() error { 9486 return it.fail 9487 } 9488 9489 // Close terminates the iteration process, releasing any pending underlying 9490 // resources. 9491 func (it *BridgeTransferERC721OwnershipTransferredIterator) Close() error { 9492 it.sub.Unsubscribe() 9493 return nil 9494 } 9495 9496 // BridgeTransferERC721OwnershipTransferred represents a OwnershipTransferred event raised by the BridgeTransferERC721 contract. 9497 type BridgeTransferERC721OwnershipTransferred struct { 9498 PreviousOwner common.Address 9499 NewOwner common.Address 9500 Raw types.Log // Blockchain specific contextual infos 9501 } 9502 9503 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 9504 // 9505 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 9506 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*BridgeTransferERC721OwnershipTransferredIterator, error) { 9507 9508 var previousOwnerRule []interface{} 9509 for _, previousOwnerItem := range previousOwner { 9510 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 9511 } 9512 var newOwnerRule []interface{} 9513 for _, newOwnerItem := range newOwner { 9514 newOwnerRule = append(newOwnerRule, newOwnerItem) 9515 } 9516 9517 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 9518 if err != nil { 9519 return nil, err 9520 } 9521 return &BridgeTransferERC721OwnershipTransferredIterator{contract: _BridgeTransferERC721.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 9522 } 9523 9524 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 9525 // 9526 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 9527 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721OwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 9528 9529 var previousOwnerRule []interface{} 9530 for _, previousOwnerItem := range previousOwner { 9531 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 9532 } 9533 var newOwnerRule []interface{} 9534 for _, newOwnerItem := range newOwner { 9535 newOwnerRule = append(newOwnerRule, newOwnerItem) 9536 } 9537 9538 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 9539 if err != nil { 9540 return nil, err 9541 } 9542 return event.NewSubscription(func(quit <-chan struct{}) error { 9543 defer sub.Unsubscribe() 9544 for { 9545 select { 9546 case log := <-logs: 9547 // New log arrived, parse the event and forward to the user 9548 event := new(BridgeTransferERC721OwnershipTransferred) 9549 if err := _BridgeTransferERC721.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 9550 return err 9551 } 9552 event.Raw = log 9553 9554 select { 9555 case sink <- event: 9556 case err := <-sub.Err(): 9557 return err 9558 case <-quit: 9559 return nil 9560 } 9561 case err := <-sub.Err(): 9562 return err 9563 case <-quit: 9564 return nil 9565 } 9566 } 9567 }), nil 9568 } 9569 9570 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 9571 // 9572 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 9573 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseOwnershipTransferred(log types.Log) (*BridgeTransferERC721OwnershipTransferred, error) { 9574 event := new(BridgeTransferERC721OwnershipTransferred) 9575 if err := _BridgeTransferERC721.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 9576 return nil, err 9577 } 9578 return event, nil 9579 } 9580 9581 // BridgeTransferERC721RequestValueTransferIterator is returned from FilterRequestValueTransfer and is used to iterate over the raw logs and unpacked data for RequestValueTransfer events raised by the BridgeTransferERC721 contract. 9582 type BridgeTransferERC721RequestValueTransferIterator struct { 9583 Event *BridgeTransferERC721RequestValueTransfer // Event containing the contract specifics and raw log 9584 9585 contract *bind.BoundContract // Generic contract to use for unpacking event data 9586 event string // Event name to use for unpacking event data 9587 9588 logs chan types.Log // Log channel receiving the found contract events 9589 sub klaytn.Subscription // Subscription for errors, completion and termination 9590 done bool // Whether the subscription completed delivering logs 9591 fail error // Occurred error to stop iteration 9592 } 9593 9594 // Next advances the iterator to the subsequent event, returning whether there 9595 // are any more events found. In case of a retrieval or parsing error, false is 9596 // returned and Error() can be queried for the exact failure. 9597 func (it *BridgeTransferERC721RequestValueTransferIterator) Next() bool { 9598 // If the iterator failed, stop iterating 9599 if it.fail != nil { 9600 return false 9601 } 9602 // If the iterator completed, deliver directly whatever's available 9603 if it.done { 9604 select { 9605 case log := <-it.logs: 9606 it.Event = new(BridgeTransferERC721RequestValueTransfer) 9607 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9608 it.fail = err 9609 return false 9610 } 9611 it.Event.Raw = log 9612 return true 9613 9614 default: 9615 return false 9616 } 9617 } 9618 // Iterator still in progress, wait for either a data or an error event 9619 select { 9620 case log := <-it.logs: 9621 it.Event = new(BridgeTransferERC721RequestValueTransfer) 9622 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9623 it.fail = err 9624 return false 9625 } 9626 it.Event.Raw = log 9627 return true 9628 9629 case err := <-it.sub.Err(): 9630 it.done = true 9631 it.fail = err 9632 return it.Next() 9633 } 9634 } 9635 9636 // Error returns any retrieval or parsing error occurred during filtering. 9637 func (it *BridgeTransferERC721RequestValueTransferIterator) Error() error { 9638 return it.fail 9639 } 9640 9641 // Close terminates the iteration process, releasing any pending underlying 9642 // resources. 9643 func (it *BridgeTransferERC721RequestValueTransferIterator) Close() error { 9644 it.sub.Unsubscribe() 9645 return nil 9646 } 9647 9648 // BridgeTransferERC721RequestValueTransfer represents a RequestValueTransfer event raised by the BridgeTransferERC721 contract. 9649 type BridgeTransferERC721RequestValueTransfer struct { 9650 TokenType uint8 9651 From common.Address 9652 To common.Address 9653 TokenAddress common.Address 9654 ValueOrTokenId *big.Int 9655 RequestNonce uint64 9656 Fee *big.Int 9657 ExtraData []byte 9658 Raw types.Log // Blockchain specific contextual infos 9659 } 9660 9661 // FilterRequestValueTransfer is a free log retrieval operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 9662 // 9663 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 9664 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterRequestValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC721RequestValueTransferIterator, error) { 9665 9666 var fromRule []interface{} 9667 for _, fromItem := range from { 9668 fromRule = append(fromRule, fromItem) 9669 } 9670 var toRule []interface{} 9671 for _, toItem := range to { 9672 toRule = append(toRule, toItem) 9673 } 9674 var tokenAddressRule []interface{} 9675 for _, tokenAddressItem := range tokenAddress { 9676 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9677 } 9678 9679 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 9680 if err != nil { 9681 return nil, err 9682 } 9683 return &BridgeTransferERC721RequestValueTransferIterator{contract: _BridgeTransferERC721.contract, event: "RequestValueTransfer", logs: logs, sub: sub}, nil 9684 } 9685 9686 // WatchRequestValueTransfer is a free log subscription operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 9687 // 9688 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 9689 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchRequestValueTransfer(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721RequestValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 9690 9691 var fromRule []interface{} 9692 for _, fromItem := range from { 9693 fromRule = append(fromRule, fromItem) 9694 } 9695 var toRule []interface{} 9696 for _, toItem := range to { 9697 toRule = append(toRule, toItem) 9698 } 9699 var tokenAddressRule []interface{} 9700 for _, tokenAddressItem := range tokenAddress { 9701 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9702 } 9703 9704 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 9705 if err != nil { 9706 return nil, err 9707 } 9708 return event.NewSubscription(func(quit <-chan struct{}) error { 9709 defer sub.Unsubscribe() 9710 for { 9711 select { 9712 case log := <-logs: 9713 // New log arrived, parse the event and forward to the user 9714 event := new(BridgeTransferERC721RequestValueTransfer) 9715 if err := _BridgeTransferERC721.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 9716 return err 9717 } 9718 event.Raw = log 9719 9720 select { 9721 case sink <- event: 9722 case err := <-sub.Err(): 9723 return err 9724 case <-quit: 9725 return nil 9726 } 9727 case err := <-sub.Err(): 9728 return err 9729 case <-quit: 9730 return nil 9731 } 9732 } 9733 }), nil 9734 } 9735 9736 // ParseRequestValueTransfer is a log parse operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 9737 // 9738 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 9739 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseRequestValueTransfer(log types.Log) (*BridgeTransferERC721RequestValueTransfer, error) { 9740 event := new(BridgeTransferERC721RequestValueTransfer) 9741 if err := _BridgeTransferERC721.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 9742 return nil, err 9743 } 9744 return event, nil 9745 } 9746 9747 // BridgeTransferERC721RequestValueTransferEncodedIterator is returned from FilterRequestValueTransferEncoded and is used to iterate over the raw logs and unpacked data for RequestValueTransferEncoded events raised by the BridgeTransferERC721 contract. 9748 type BridgeTransferERC721RequestValueTransferEncodedIterator struct { 9749 Event *BridgeTransferERC721RequestValueTransferEncoded // Event containing the contract specifics and raw log 9750 9751 contract *bind.BoundContract // Generic contract to use for unpacking event data 9752 event string // Event name to use for unpacking event data 9753 9754 logs chan types.Log // Log channel receiving the found contract events 9755 sub klaytn.Subscription // Subscription for errors, completion and termination 9756 done bool // Whether the subscription completed delivering logs 9757 fail error // Occurred error to stop iteration 9758 } 9759 9760 // Next advances the iterator to the subsequent event, returning whether there 9761 // are any more events found. In case of a retrieval or parsing error, false is 9762 // returned and Error() can be queried for the exact failure. 9763 func (it *BridgeTransferERC721RequestValueTransferEncodedIterator) Next() bool { 9764 // If the iterator failed, stop iterating 9765 if it.fail != nil { 9766 return false 9767 } 9768 // If the iterator completed, deliver directly whatever's available 9769 if it.done { 9770 select { 9771 case log := <-it.logs: 9772 it.Event = new(BridgeTransferERC721RequestValueTransferEncoded) 9773 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9774 it.fail = err 9775 return false 9776 } 9777 it.Event.Raw = log 9778 return true 9779 9780 default: 9781 return false 9782 } 9783 } 9784 // Iterator still in progress, wait for either a data or an error event 9785 select { 9786 case log := <-it.logs: 9787 it.Event = new(BridgeTransferERC721RequestValueTransferEncoded) 9788 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9789 it.fail = err 9790 return false 9791 } 9792 it.Event.Raw = log 9793 return true 9794 9795 case err := <-it.sub.Err(): 9796 it.done = true 9797 it.fail = err 9798 return it.Next() 9799 } 9800 } 9801 9802 // Error returns any retrieval or parsing error occurred during filtering. 9803 func (it *BridgeTransferERC721RequestValueTransferEncodedIterator) Error() error { 9804 return it.fail 9805 } 9806 9807 // Close terminates the iteration process, releasing any pending underlying 9808 // resources. 9809 func (it *BridgeTransferERC721RequestValueTransferEncodedIterator) Close() error { 9810 it.sub.Unsubscribe() 9811 return nil 9812 } 9813 9814 // BridgeTransferERC721RequestValueTransferEncoded represents a RequestValueTransferEncoded event raised by the BridgeTransferERC721 contract. 9815 type BridgeTransferERC721RequestValueTransferEncoded struct { 9816 TokenType uint8 9817 From common.Address 9818 To common.Address 9819 TokenAddress common.Address 9820 ValueOrTokenId *big.Int 9821 RequestNonce uint64 9822 Fee *big.Int 9823 ExtraData []byte 9824 EncodingVer uint8 9825 EncodedData []byte 9826 Raw types.Log // Blockchain specific contextual infos 9827 } 9828 9829 // FilterRequestValueTransferEncoded is a free log retrieval operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 9830 // 9831 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 9832 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterRequestValueTransferEncoded(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*BridgeTransferERC721RequestValueTransferEncodedIterator, error) { 9833 9834 var fromRule []interface{} 9835 for _, fromItem := range from { 9836 fromRule = append(fromRule, fromItem) 9837 } 9838 var toRule []interface{} 9839 for _, toItem := range to { 9840 toRule = append(toRule, toItem) 9841 } 9842 var tokenAddressRule []interface{} 9843 for _, tokenAddressItem := range tokenAddress { 9844 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9845 } 9846 9847 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 9848 if err != nil { 9849 return nil, err 9850 } 9851 return &BridgeTransferERC721RequestValueTransferEncodedIterator{contract: _BridgeTransferERC721.contract, event: "RequestValueTransferEncoded", logs: logs, sub: sub}, nil 9852 } 9853 9854 // WatchRequestValueTransferEncoded is a free log subscription operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 9855 // 9856 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 9857 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchRequestValueTransferEncoded(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721RequestValueTransferEncoded, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 9858 9859 var fromRule []interface{} 9860 for _, fromItem := range from { 9861 fromRule = append(fromRule, fromItem) 9862 } 9863 var toRule []interface{} 9864 for _, toItem := range to { 9865 toRule = append(toRule, toItem) 9866 } 9867 var tokenAddressRule []interface{} 9868 for _, tokenAddressItem := range tokenAddress { 9869 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 9870 } 9871 9872 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 9873 if err != nil { 9874 return nil, err 9875 } 9876 return event.NewSubscription(func(quit <-chan struct{}) error { 9877 defer sub.Unsubscribe() 9878 for { 9879 select { 9880 case log := <-logs: 9881 // New log arrived, parse the event and forward to the user 9882 event := new(BridgeTransferERC721RequestValueTransferEncoded) 9883 if err := _BridgeTransferERC721.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 9884 return err 9885 } 9886 event.Raw = log 9887 9888 select { 9889 case sink <- event: 9890 case err := <-sub.Err(): 9891 return err 9892 case <-quit: 9893 return nil 9894 } 9895 case err := <-sub.Err(): 9896 return err 9897 case <-quit: 9898 return nil 9899 } 9900 } 9901 }), nil 9902 } 9903 9904 // ParseRequestValueTransferEncoded is a log parse operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 9905 // 9906 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 9907 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseRequestValueTransferEncoded(log types.Log) (*BridgeTransferERC721RequestValueTransferEncoded, error) { 9908 event := new(BridgeTransferERC721RequestValueTransferEncoded) 9909 if err := _BridgeTransferERC721.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 9910 return nil, err 9911 } 9912 return event, nil 9913 } 9914 9915 // BridgeTransferERC721TokenDeregisteredIterator is returned from FilterTokenDeregistered and is used to iterate over the raw logs and unpacked data for TokenDeregistered events raised by the BridgeTransferERC721 contract. 9916 type BridgeTransferERC721TokenDeregisteredIterator struct { 9917 Event *BridgeTransferERC721TokenDeregistered // Event containing the contract specifics and raw log 9918 9919 contract *bind.BoundContract // Generic contract to use for unpacking event data 9920 event string // Event name to use for unpacking event data 9921 9922 logs chan types.Log // Log channel receiving the found contract events 9923 sub klaytn.Subscription // Subscription for errors, completion and termination 9924 done bool // Whether the subscription completed delivering logs 9925 fail error // Occurred error to stop iteration 9926 } 9927 9928 // Next advances the iterator to the subsequent event, returning whether there 9929 // are any more events found. In case of a retrieval or parsing error, false is 9930 // returned and Error() can be queried for the exact failure. 9931 func (it *BridgeTransferERC721TokenDeregisteredIterator) Next() bool { 9932 // If the iterator failed, stop iterating 9933 if it.fail != nil { 9934 return false 9935 } 9936 // If the iterator completed, deliver directly whatever's available 9937 if it.done { 9938 select { 9939 case log := <-it.logs: 9940 it.Event = new(BridgeTransferERC721TokenDeregistered) 9941 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9942 it.fail = err 9943 return false 9944 } 9945 it.Event.Raw = log 9946 return true 9947 9948 default: 9949 return false 9950 } 9951 } 9952 // Iterator still in progress, wait for either a data or an error event 9953 select { 9954 case log := <-it.logs: 9955 it.Event = new(BridgeTransferERC721TokenDeregistered) 9956 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 9957 it.fail = err 9958 return false 9959 } 9960 it.Event.Raw = log 9961 return true 9962 9963 case err := <-it.sub.Err(): 9964 it.done = true 9965 it.fail = err 9966 return it.Next() 9967 } 9968 } 9969 9970 // Error returns any retrieval or parsing error occurred during filtering. 9971 func (it *BridgeTransferERC721TokenDeregisteredIterator) Error() error { 9972 return it.fail 9973 } 9974 9975 // Close terminates the iteration process, releasing any pending underlying 9976 // resources. 9977 func (it *BridgeTransferERC721TokenDeregisteredIterator) Close() error { 9978 it.sub.Unsubscribe() 9979 return nil 9980 } 9981 9982 // BridgeTransferERC721TokenDeregistered represents a TokenDeregistered event raised by the BridgeTransferERC721 contract. 9983 type BridgeTransferERC721TokenDeregistered struct { 9984 Token common.Address 9985 Raw types.Log // Blockchain specific contextual infos 9986 } 9987 9988 // FilterTokenDeregistered is a free log retrieval operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 9989 // 9990 // Solidity: event TokenDeregistered(address indexed token) 9991 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterTokenDeregistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC721TokenDeregisteredIterator, error) { 9992 9993 var tokenRule []interface{} 9994 for _, tokenItem := range token { 9995 tokenRule = append(tokenRule, tokenItem) 9996 } 9997 9998 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "TokenDeregistered", tokenRule) 9999 if err != nil { 10000 return nil, err 10001 } 10002 return &BridgeTransferERC721TokenDeregisteredIterator{contract: _BridgeTransferERC721.contract, event: "TokenDeregistered", logs: logs, sub: sub}, nil 10003 } 10004 10005 // WatchTokenDeregistered is a free log subscription operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 10006 // 10007 // Solidity: event TokenDeregistered(address indexed token) 10008 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchTokenDeregistered(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721TokenDeregistered, token []common.Address) (event.Subscription, error) { 10009 10010 var tokenRule []interface{} 10011 for _, tokenItem := range token { 10012 tokenRule = append(tokenRule, tokenItem) 10013 } 10014 10015 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "TokenDeregistered", tokenRule) 10016 if err != nil { 10017 return nil, err 10018 } 10019 return event.NewSubscription(func(quit <-chan struct{}) error { 10020 defer sub.Unsubscribe() 10021 for { 10022 select { 10023 case log := <-logs: 10024 // New log arrived, parse the event and forward to the user 10025 event := new(BridgeTransferERC721TokenDeregistered) 10026 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 10027 return err 10028 } 10029 event.Raw = log 10030 10031 select { 10032 case sink <- event: 10033 case err := <-sub.Err(): 10034 return err 10035 case <-quit: 10036 return nil 10037 } 10038 case err := <-sub.Err(): 10039 return err 10040 case <-quit: 10041 return nil 10042 } 10043 } 10044 }), nil 10045 } 10046 10047 // ParseTokenDeregistered is a log parse operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 10048 // 10049 // Solidity: event TokenDeregistered(address indexed token) 10050 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseTokenDeregistered(log types.Log) (*BridgeTransferERC721TokenDeregistered, error) { 10051 event := new(BridgeTransferERC721TokenDeregistered) 10052 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 10053 return nil, err 10054 } 10055 return event, nil 10056 } 10057 10058 // BridgeTransferERC721TokenLockedIterator is returned from FilterTokenLocked and is used to iterate over the raw logs and unpacked data for TokenLocked events raised by the BridgeTransferERC721 contract. 10059 type BridgeTransferERC721TokenLockedIterator struct { 10060 Event *BridgeTransferERC721TokenLocked // Event containing the contract specifics and raw log 10061 10062 contract *bind.BoundContract // Generic contract to use for unpacking event data 10063 event string // Event name to use for unpacking event data 10064 10065 logs chan types.Log // Log channel receiving the found contract events 10066 sub klaytn.Subscription // Subscription for errors, completion and termination 10067 done bool // Whether the subscription completed delivering logs 10068 fail error // Occurred error to stop iteration 10069 } 10070 10071 // Next advances the iterator to the subsequent event, returning whether there 10072 // are any more events found. In case of a retrieval or parsing error, false is 10073 // returned and Error() can be queried for the exact failure. 10074 func (it *BridgeTransferERC721TokenLockedIterator) Next() bool { 10075 // If the iterator failed, stop iterating 10076 if it.fail != nil { 10077 return false 10078 } 10079 // If the iterator completed, deliver directly whatever's available 10080 if it.done { 10081 select { 10082 case log := <-it.logs: 10083 it.Event = new(BridgeTransferERC721TokenLocked) 10084 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10085 it.fail = err 10086 return false 10087 } 10088 it.Event.Raw = log 10089 return true 10090 10091 default: 10092 return false 10093 } 10094 } 10095 // Iterator still in progress, wait for either a data or an error event 10096 select { 10097 case log := <-it.logs: 10098 it.Event = new(BridgeTransferERC721TokenLocked) 10099 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10100 it.fail = err 10101 return false 10102 } 10103 it.Event.Raw = log 10104 return true 10105 10106 case err := <-it.sub.Err(): 10107 it.done = true 10108 it.fail = err 10109 return it.Next() 10110 } 10111 } 10112 10113 // Error returns any retrieval or parsing error occurred during filtering. 10114 func (it *BridgeTransferERC721TokenLockedIterator) Error() error { 10115 return it.fail 10116 } 10117 10118 // Close terminates the iteration process, releasing any pending underlying 10119 // resources. 10120 func (it *BridgeTransferERC721TokenLockedIterator) Close() error { 10121 it.sub.Unsubscribe() 10122 return nil 10123 } 10124 10125 // BridgeTransferERC721TokenLocked represents a TokenLocked event raised by the BridgeTransferERC721 contract. 10126 type BridgeTransferERC721TokenLocked struct { 10127 Token common.Address 10128 Raw types.Log // Blockchain specific contextual infos 10129 } 10130 10131 // FilterTokenLocked is a free log retrieval operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 10132 // 10133 // Solidity: event TokenLocked(address indexed token) 10134 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterTokenLocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC721TokenLockedIterator, error) { 10135 10136 var tokenRule []interface{} 10137 for _, tokenItem := range token { 10138 tokenRule = append(tokenRule, tokenItem) 10139 } 10140 10141 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "TokenLocked", tokenRule) 10142 if err != nil { 10143 return nil, err 10144 } 10145 return &BridgeTransferERC721TokenLockedIterator{contract: _BridgeTransferERC721.contract, event: "TokenLocked", logs: logs, sub: sub}, nil 10146 } 10147 10148 // WatchTokenLocked is a free log subscription operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 10149 // 10150 // Solidity: event TokenLocked(address indexed token) 10151 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchTokenLocked(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721TokenLocked, token []common.Address) (event.Subscription, error) { 10152 10153 var tokenRule []interface{} 10154 for _, tokenItem := range token { 10155 tokenRule = append(tokenRule, tokenItem) 10156 } 10157 10158 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "TokenLocked", tokenRule) 10159 if err != nil { 10160 return nil, err 10161 } 10162 return event.NewSubscription(func(quit <-chan struct{}) error { 10163 defer sub.Unsubscribe() 10164 for { 10165 select { 10166 case log := <-logs: 10167 // New log arrived, parse the event and forward to the user 10168 event := new(BridgeTransferERC721TokenLocked) 10169 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenLocked", log); err != nil { 10170 return err 10171 } 10172 event.Raw = log 10173 10174 select { 10175 case sink <- event: 10176 case err := <-sub.Err(): 10177 return err 10178 case <-quit: 10179 return nil 10180 } 10181 case err := <-sub.Err(): 10182 return err 10183 case <-quit: 10184 return nil 10185 } 10186 } 10187 }), nil 10188 } 10189 10190 // ParseTokenLocked is a log parse operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 10191 // 10192 // Solidity: event TokenLocked(address indexed token) 10193 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseTokenLocked(log types.Log) (*BridgeTransferERC721TokenLocked, error) { 10194 event := new(BridgeTransferERC721TokenLocked) 10195 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenLocked", log); err != nil { 10196 return nil, err 10197 } 10198 return event, nil 10199 } 10200 10201 // BridgeTransferERC721TokenRegisteredIterator is returned from FilterTokenRegistered and is used to iterate over the raw logs and unpacked data for TokenRegistered events raised by the BridgeTransferERC721 contract. 10202 type BridgeTransferERC721TokenRegisteredIterator struct { 10203 Event *BridgeTransferERC721TokenRegistered // Event containing the contract specifics and raw log 10204 10205 contract *bind.BoundContract // Generic contract to use for unpacking event data 10206 event string // Event name to use for unpacking event data 10207 10208 logs chan types.Log // Log channel receiving the found contract events 10209 sub klaytn.Subscription // Subscription for errors, completion and termination 10210 done bool // Whether the subscription completed delivering logs 10211 fail error // Occurred error to stop iteration 10212 } 10213 10214 // Next advances the iterator to the subsequent event, returning whether there 10215 // are any more events found. In case of a retrieval or parsing error, false is 10216 // returned and Error() can be queried for the exact failure. 10217 func (it *BridgeTransferERC721TokenRegisteredIterator) Next() bool { 10218 // If the iterator failed, stop iterating 10219 if it.fail != nil { 10220 return false 10221 } 10222 // If the iterator completed, deliver directly whatever's available 10223 if it.done { 10224 select { 10225 case log := <-it.logs: 10226 it.Event = new(BridgeTransferERC721TokenRegistered) 10227 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10228 it.fail = err 10229 return false 10230 } 10231 it.Event.Raw = log 10232 return true 10233 10234 default: 10235 return false 10236 } 10237 } 10238 // Iterator still in progress, wait for either a data or an error event 10239 select { 10240 case log := <-it.logs: 10241 it.Event = new(BridgeTransferERC721TokenRegistered) 10242 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10243 it.fail = err 10244 return false 10245 } 10246 it.Event.Raw = log 10247 return true 10248 10249 case err := <-it.sub.Err(): 10250 it.done = true 10251 it.fail = err 10252 return it.Next() 10253 } 10254 } 10255 10256 // Error returns any retrieval or parsing error occurred during filtering. 10257 func (it *BridgeTransferERC721TokenRegisteredIterator) Error() error { 10258 return it.fail 10259 } 10260 10261 // Close terminates the iteration process, releasing any pending underlying 10262 // resources. 10263 func (it *BridgeTransferERC721TokenRegisteredIterator) Close() error { 10264 it.sub.Unsubscribe() 10265 return nil 10266 } 10267 10268 // BridgeTransferERC721TokenRegistered represents a TokenRegistered event raised by the BridgeTransferERC721 contract. 10269 type BridgeTransferERC721TokenRegistered struct { 10270 Token common.Address 10271 Raw types.Log // Blockchain specific contextual infos 10272 } 10273 10274 // FilterTokenRegistered is a free log retrieval operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 10275 // 10276 // Solidity: event TokenRegistered(address indexed token) 10277 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterTokenRegistered(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC721TokenRegisteredIterator, error) { 10278 10279 var tokenRule []interface{} 10280 for _, tokenItem := range token { 10281 tokenRule = append(tokenRule, tokenItem) 10282 } 10283 10284 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "TokenRegistered", tokenRule) 10285 if err != nil { 10286 return nil, err 10287 } 10288 return &BridgeTransferERC721TokenRegisteredIterator{contract: _BridgeTransferERC721.contract, event: "TokenRegistered", logs: logs, sub: sub}, nil 10289 } 10290 10291 // WatchTokenRegistered is a free log subscription operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 10292 // 10293 // Solidity: event TokenRegistered(address indexed token) 10294 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchTokenRegistered(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721TokenRegistered, token []common.Address) (event.Subscription, error) { 10295 10296 var tokenRule []interface{} 10297 for _, tokenItem := range token { 10298 tokenRule = append(tokenRule, tokenItem) 10299 } 10300 10301 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "TokenRegistered", tokenRule) 10302 if err != nil { 10303 return nil, err 10304 } 10305 return event.NewSubscription(func(quit <-chan struct{}) error { 10306 defer sub.Unsubscribe() 10307 for { 10308 select { 10309 case log := <-logs: 10310 // New log arrived, parse the event and forward to the user 10311 event := new(BridgeTransferERC721TokenRegistered) 10312 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 10313 return err 10314 } 10315 event.Raw = log 10316 10317 select { 10318 case sink <- event: 10319 case err := <-sub.Err(): 10320 return err 10321 case <-quit: 10322 return nil 10323 } 10324 case err := <-sub.Err(): 10325 return err 10326 case <-quit: 10327 return nil 10328 } 10329 } 10330 }), nil 10331 } 10332 10333 // ParseTokenRegistered is a log parse operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 10334 // 10335 // Solidity: event TokenRegistered(address indexed token) 10336 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseTokenRegistered(log types.Log) (*BridgeTransferERC721TokenRegistered, error) { 10337 event := new(BridgeTransferERC721TokenRegistered) 10338 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 10339 return nil, err 10340 } 10341 return event, nil 10342 } 10343 10344 // BridgeTransferERC721TokenUnlockedIterator is returned from FilterTokenUnlocked and is used to iterate over the raw logs and unpacked data for TokenUnlocked events raised by the BridgeTransferERC721 contract. 10345 type BridgeTransferERC721TokenUnlockedIterator struct { 10346 Event *BridgeTransferERC721TokenUnlocked // Event containing the contract specifics and raw log 10347 10348 contract *bind.BoundContract // Generic contract to use for unpacking event data 10349 event string // Event name to use for unpacking event data 10350 10351 logs chan types.Log // Log channel receiving the found contract events 10352 sub klaytn.Subscription // Subscription for errors, completion and termination 10353 done bool // Whether the subscription completed delivering logs 10354 fail error // Occurred error to stop iteration 10355 } 10356 10357 // Next advances the iterator to the subsequent event, returning whether there 10358 // are any more events found. In case of a retrieval or parsing error, false is 10359 // returned and Error() can be queried for the exact failure. 10360 func (it *BridgeTransferERC721TokenUnlockedIterator) Next() bool { 10361 // If the iterator failed, stop iterating 10362 if it.fail != nil { 10363 return false 10364 } 10365 // If the iterator completed, deliver directly whatever's available 10366 if it.done { 10367 select { 10368 case log := <-it.logs: 10369 it.Event = new(BridgeTransferERC721TokenUnlocked) 10370 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10371 it.fail = err 10372 return false 10373 } 10374 it.Event.Raw = log 10375 return true 10376 10377 default: 10378 return false 10379 } 10380 } 10381 // Iterator still in progress, wait for either a data or an error event 10382 select { 10383 case log := <-it.logs: 10384 it.Event = new(BridgeTransferERC721TokenUnlocked) 10385 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10386 it.fail = err 10387 return false 10388 } 10389 it.Event.Raw = log 10390 return true 10391 10392 case err := <-it.sub.Err(): 10393 it.done = true 10394 it.fail = err 10395 return it.Next() 10396 } 10397 } 10398 10399 // Error returns any retrieval or parsing error occurred during filtering. 10400 func (it *BridgeTransferERC721TokenUnlockedIterator) Error() error { 10401 return it.fail 10402 } 10403 10404 // Close terminates the iteration process, releasing any pending underlying 10405 // resources. 10406 func (it *BridgeTransferERC721TokenUnlockedIterator) Close() error { 10407 it.sub.Unsubscribe() 10408 return nil 10409 } 10410 10411 // BridgeTransferERC721TokenUnlocked represents a TokenUnlocked event raised by the BridgeTransferERC721 contract. 10412 type BridgeTransferERC721TokenUnlocked struct { 10413 Token common.Address 10414 Raw types.Log // Blockchain specific contextual infos 10415 } 10416 10417 // FilterTokenUnlocked is a free log retrieval operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 10418 // 10419 // Solidity: event TokenUnlocked(address indexed token) 10420 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) FilterTokenUnlocked(opts *bind.FilterOpts, token []common.Address) (*BridgeTransferERC721TokenUnlockedIterator, error) { 10421 10422 var tokenRule []interface{} 10423 for _, tokenItem := range token { 10424 tokenRule = append(tokenRule, tokenItem) 10425 } 10426 10427 logs, sub, err := _BridgeTransferERC721.contract.FilterLogs(opts, "TokenUnlocked", tokenRule) 10428 if err != nil { 10429 return nil, err 10430 } 10431 return &BridgeTransferERC721TokenUnlockedIterator{contract: _BridgeTransferERC721.contract, event: "TokenUnlocked", logs: logs, sub: sub}, nil 10432 } 10433 10434 // WatchTokenUnlocked is a free log subscription operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 10435 // 10436 // Solidity: event TokenUnlocked(address indexed token) 10437 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) WatchTokenUnlocked(opts *bind.WatchOpts, sink chan<- *BridgeTransferERC721TokenUnlocked, token []common.Address) (event.Subscription, error) { 10438 10439 var tokenRule []interface{} 10440 for _, tokenItem := range token { 10441 tokenRule = append(tokenRule, tokenItem) 10442 } 10443 10444 logs, sub, err := _BridgeTransferERC721.contract.WatchLogs(opts, "TokenUnlocked", tokenRule) 10445 if err != nil { 10446 return nil, err 10447 } 10448 return event.NewSubscription(func(quit <-chan struct{}) error { 10449 defer sub.Unsubscribe() 10450 for { 10451 select { 10452 case log := <-logs: 10453 // New log arrived, parse the event and forward to the user 10454 event := new(BridgeTransferERC721TokenUnlocked) 10455 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 10456 return err 10457 } 10458 event.Raw = log 10459 10460 select { 10461 case sink <- event: 10462 case err := <-sub.Err(): 10463 return err 10464 case <-quit: 10465 return nil 10466 } 10467 case err := <-sub.Err(): 10468 return err 10469 case <-quit: 10470 return nil 10471 } 10472 } 10473 }), nil 10474 } 10475 10476 // ParseTokenUnlocked is a log parse operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 10477 // 10478 // Solidity: event TokenUnlocked(address indexed token) 10479 func (_BridgeTransferERC721 *BridgeTransferERC721Filterer) ParseTokenUnlocked(log types.Log) (*BridgeTransferERC721TokenUnlocked, error) { 10480 event := new(BridgeTransferERC721TokenUnlocked) 10481 if err := _BridgeTransferERC721.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 10482 return nil, err 10483 } 10484 return event, nil 10485 } 10486 10487 // CallbackABI is the input ABI used to generate the binding from. 10488 const CallbackABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_owner\",\"type\":\"address\"},{\"name\":\"_valueOrID\",\"type\":\"uint256\"},{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_price\",\"type\":\"uint256\"}],\"name\":\"registerOffer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrID\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"price\",\"type\":\"uint256\"}],\"name\":\"RegisteredOffer\",\"type\":\"event\"}]" 10489 10490 // CallbackBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 10491 const CallbackBinRuntime = `6080604052348015600f57600080fd5b506004361060285760003560e01c80635ec467e214602d575b600080fd5b606460048036036080811015604157600080fd5b506001600160a01b03813581169160208101359160408201351690606001356066565b005b604080516001600160a01b038087168252602082018690528416818301526060810183905290517f6e0b5117e49b57aaf37c635363b1b78a14ad521875ec99079d95bee2838cfeb89181900360800190a15050505056fea165627a7a72305820bf6e62258297a79e12c317404a55a5c2e95a957e0edfe8eadfb65b951293f8c90029` 10492 10493 // CallbackFuncSigs maps the 4-byte function signature to its string representation. 10494 var CallbackFuncSigs = map[string]string{ 10495 "5ec467e2": "registerOffer(address,uint256,address,uint256)", 10496 } 10497 10498 // CallbackBin is the compiled bytecode used for deploying new contracts. 10499 var CallbackBin = "0x6080604052348015600f57600080fd5b5060e98061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80635ec467e214602d575b600080fd5b606460048036036080811015604157600080fd5b506001600160a01b03813581169160208101359160408201351690606001356066565b005b604080516001600160a01b038087168252602082018690528416818301526060810183905290517f6e0b5117e49b57aaf37c635363b1b78a14ad521875ec99079d95bee2838cfeb89181900360800190a15050505056fea165627a7a72305820bf6e62258297a79e12c317404a55a5c2e95a957e0edfe8eadfb65b951293f8c90029" 10500 10501 // DeployCallback deploys a new Klaytn contract, binding an instance of Callback to it. 10502 func DeployCallback(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Callback, error) { 10503 parsed, err := abi.JSON(strings.NewReader(CallbackABI)) 10504 if err != nil { 10505 return common.Address{}, nil, nil, err 10506 } 10507 10508 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(CallbackBin), backend) 10509 if err != nil { 10510 return common.Address{}, nil, nil, err 10511 } 10512 return address, tx, &Callback{CallbackCaller: CallbackCaller{contract: contract}, CallbackTransactor: CallbackTransactor{contract: contract}, CallbackFilterer: CallbackFilterer{contract: contract}}, nil 10513 } 10514 10515 // Callback is an auto generated Go binding around a Klaytn contract. 10516 type Callback struct { 10517 CallbackCaller // Read-only binding to the contract 10518 CallbackTransactor // Write-only binding to the contract 10519 CallbackFilterer // Log filterer for contract events 10520 } 10521 10522 // CallbackCaller is an auto generated read-only Go binding around a Klaytn contract. 10523 type CallbackCaller struct { 10524 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10525 } 10526 10527 // CallbackTransactor is an auto generated write-only Go binding around a Klaytn contract. 10528 type CallbackTransactor struct { 10529 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10530 } 10531 10532 // CallbackFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 10533 type CallbackFilterer struct { 10534 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10535 } 10536 10537 // CallbackSession is an auto generated Go binding around a Klaytn contract, 10538 // with pre-set call and transact options. 10539 type CallbackSession struct { 10540 Contract *Callback // Generic contract binding to set the session for 10541 CallOpts bind.CallOpts // Call options to use throughout this session 10542 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10543 } 10544 10545 // CallbackCallerSession is an auto generated read-only Go binding around a Klaytn contract, 10546 // with pre-set call options. 10547 type CallbackCallerSession struct { 10548 Contract *CallbackCaller // Generic contract caller binding to set the session for 10549 CallOpts bind.CallOpts // Call options to use throughout this session 10550 } 10551 10552 // CallbackTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 10553 // with pre-set transact options. 10554 type CallbackTransactorSession struct { 10555 Contract *CallbackTransactor // Generic contract transactor binding to set the session for 10556 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10557 } 10558 10559 // CallbackRaw is an auto generated low-level Go binding around a Klaytn contract. 10560 type CallbackRaw struct { 10561 Contract *Callback // Generic contract binding to access the raw methods on 10562 } 10563 10564 // CallbackCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 10565 type CallbackCallerRaw struct { 10566 Contract *CallbackCaller // Generic read-only contract binding to access the raw methods on 10567 } 10568 10569 // CallbackTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 10570 type CallbackTransactorRaw struct { 10571 Contract *CallbackTransactor // Generic write-only contract binding to access the raw methods on 10572 } 10573 10574 // NewCallback creates a new instance of Callback, bound to a specific deployed contract. 10575 func NewCallback(address common.Address, backend bind.ContractBackend) (*Callback, error) { 10576 contract, err := bindCallback(address, backend, backend, backend) 10577 if err != nil { 10578 return nil, err 10579 } 10580 return &Callback{CallbackCaller: CallbackCaller{contract: contract}, CallbackTransactor: CallbackTransactor{contract: contract}, CallbackFilterer: CallbackFilterer{contract: contract}}, nil 10581 } 10582 10583 // NewCallbackCaller creates a new read-only instance of Callback, bound to a specific deployed contract. 10584 func NewCallbackCaller(address common.Address, caller bind.ContractCaller) (*CallbackCaller, error) { 10585 contract, err := bindCallback(address, caller, nil, nil) 10586 if err != nil { 10587 return nil, err 10588 } 10589 return &CallbackCaller{contract: contract}, nil 10590 } 10591 10592 // NewCallbackTransactor creates a new write-only instance of Callback, bound to a specific deployed contract. 10593 func NewCallbackTransactor(address common.Address, transactor bind.ContractTransactor) (*CallbackTransactor, error) { 10594 contract, err := bindCallback(address, nil, transactor, nil) 10595 if err != nil { 10596 return nil, err 10597 } 10598 return &CallbackTransactor{contract: contract}, nil 10599 } 10600 10601 // NewCallbackFilterer creates a new log filterer instance of Callback, bound to a specific deployed contract. 10602 func NewCallbackFilterer(address common.Address, filterer bind.ContractFilterer) (*CallbackFilterer, error) { 10603 contract, err := bindCallback(address, nil, nil, filterer) 10604 if err != nil { 10605 return nil, err 10606 } 10607 return &CallbackFilterer{contract: contract}, nil 10608 } 10609 10610 // bindCallback binds a generic wrapper to an already deployed contract. 10611 func bindCallback(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 10612 parsed, err := abi.JSON(strings.NewReader(CallbackABI)) 10613 if err != nil { 10614 return nil, err 10615 } 10616 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 10617 } 10618 10619 // Call invokes the (constant) contract method with params as input values and 10620 // sets the output to result. The result type might be a single field for simple 10621 // returns, a slice of interfaces for anonymous returns and a struct for named 10622 // returns. 10623 func (_Callback *CallbackRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 10624 return _Callback.Contract.CallbackCaller.contract.Call(opts, result, method, params...) 10625 } 10626 10627 // Transfer initiates a plain transaction to move funds to the contract, calling 10628 // its default method if one is available. 10629 func (_Callback *CallbackRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10630 return _Callback.Contract.CallbackTransactor.contract.Transfer(opts) 10631 } 10632 10633 // Transact invokes the (paid) contract method with params as input values. 10634 func (_Callback *CallbackRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10635 return _Callback.Contract.CallbackTransactor.contract.Transact(opts, method, params...) 10636 } 10637 10638 // Call invokes the (constant) contract method with params as input values and 10639 // sets the output to result. The result type might be a single field for simple 10640 // returns, a slice of interfaces for anonymous returns and a struct for named 10641 // returns. 10642 func (_Callback *CallbackCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 10643 return _Callback.Contract.contract.Call(opts, result, method, params...) 10644 } 10645 10646 // Transfer initiates a plain transaction to move funds to the contract, calling 10647 // its default method if one is available. 10648 func (_Callback *CallbackTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10649 return _Callback.Contract.contract.Transfer(opts) 10650 } 10651 10652 // Transact invokes the (paid) contract method with params as input values. 10653 func (_Callback *CallbackTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10654 return _Callback.Contract.contract.Transact(opts, method, params...) 10655 } 10656 10657 // RegisterOffer is a paid mutator transaction binding the contract method 0x5ec467e2. 10658 // 10659 // Solidity: function registerOffer(address _owner, uint256 _valueOrID, address _tokenAddress, uint256 _price) returns() 10660 func (_Callback *CallbackTransactor) RegisterOffer(opts *bind.TransactOpts, _owner common.Address, _valueOrID *big.Int, _tokenAddress common.Address, _price *big.Int) (*types.Transaction, error) { 10661 return _Callback.contract.Transact(opts, "registerOffer", _owner, _valueOrID, _tokenAddress, _price) 10662 } 10663 10664 // RegisterOffer is a paid mutator transaction binding the contract method 0x5ec467e2. 10665 // 10666 // Solidity: function registerOffer(address _owner, uint256 _valueOrID, address _tokenAddress, uint256 _price) returns() 10667 func (_Callback *CallbackSession) RegisterOffer(_owner common.Address, _valueOrID *big.Int, _tokenAddress common.Address, _price *big.Int) (*types.Transaction, error) { 10668 return _Callback.Contract.RegisterOffer(&_Callback.TransactOpts, _owner, _valueOrID, _tokenAddress, _price) 10669 } 10670 10671 // RegisterOffer is a paid mutator transaction binding the contract method 0x5ec467e2. 10672 // 10673 // Solidity: function registerOffer(address _owner, uint256 _valueOrID, address _tokenAddress, uint256 _price) returns() 10674 func (_Callback *CallbackTransactorSession) RegisterOffer(_owner common.Address, _valueOrID *big.Int, _tokenAddress common.Address, _price *big.Int) (*types.Transaction, error) { 10675 return _Callback.Contract.RegisterOffer(&_Callback.TransactOpts, _owner, _valueOrID, _tokenAddress, _price) 10676 } 10677 10678 // CallbackRegisteredOfferIterator is returned from FilterRegisteredOffer and is used to iterate over the raw logs and unpacked data for RegisteredOffer events raised by the Callback contract. 10679 type CallbackRegisteredOfferIterator struct { 10680 Event *CallbackRegisteredOffer // Event containing the contract specifics and raw log 10681 10682 contract *bind.BoundContract // Generic contract to use for unpacking event data 10683 event string // Event name to use for unpacking event data 10684 10685 logs chan types.Log // Log channel receiving the found contract events 10686 sub klaytn.Subscription // Subscription for errors, completion and termination 10687 done bool // Whether the subscription completed delivering logs 10688 fail error // Occurred error to stop iteration 10689 } 10690 10691 // Next advances the iterator to the subsequent event, returning whether there 10692 // are any more events found. In case of a retrieval or parsing error, false is 10693 // returned and Error() can be queried for the exact failure. 10694 func (it *CallbackRegisteredOfferIterator) Next() bool { 10695 // If the iterator failed, stop iterating 10696 if it.fail != nil { 10697 return false 10698 } 10699 // If the iterator completed, deliver directly whatever's available 10700 if it.done { 10701 select { 10702 case log := <-it.logs: 10703 it.Event = new(CallbackRegisteredOffer) 10704 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10705 it.fail = err 10706 return false 10707 } 10708 it.Event.Raw = log 10709 return true 10710 10711 default: 10712 return false 10713 } 10714 } 10715 // Iterator still in progress, wait for either a data or an error event 10716 select { 10717 case log := <-it.logs: 10718 it.Event = new(CallbackRegisteredOffer) 10719 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 10720 it.fail = err 10721 return false 10722 } 10723 it.Event.Raw = log 10724 return true 10725 10726 case err := <-it.sub.Err(): 10727 it.done = true 10728 it.fail = err 10729 return it.Next() 10730 } 10731 } 10732 10733 // Error returns any retrieval or parsing error occurred during filtering. 10734 func (it *CallbackRegisteredOfferIterator) Error() error { 10735 return it.fail 10736 } 10737 10738 // Close terminates the iteration process, releasing any pending underlying 10739 // resources. 10740 func (it *CallbackRegisteredOfferIterator) Close() error { 10741 it.sub.Unsubscribe() 10742 return nil 10743 } 10744 10745 // CallbackRegisteredOffer represents a RegisteredOffer event raised by the Callback contract. 10746 type CallbackRegisteredOffer struct { 10747 Owner common.Address 10748 ValueOrID *big.Int 10749 TokenAddress common.Address 10750 Price *big.Int 10751 Raw types.Log // Blockchain specific contextual infos 10752 } 10753 10754 // FilterRegisteredOffer is a free log retrieval operation binding the contract event 0x6e0b5117e49b57aaf37c635363b1b78a14ad521875ec99079d95bee2838cfeb8. 10755 // 10756 // Solidity: event RegisteredOffer(address owner, uint256 valueOrID, address tokenAddress, uint256 price) 10757 func (_Callback *CallbackFilterer) FilterRegisteredOffer(opts *bind.FilterOpts) (*CallbackRegisteredOfferIterator, error) { 10758 10759 logs, sub, err := _Callback.contract.FilterLogs(opts, "RegisteredOffer") 10760 if err != nil { 10761 return nil, err 10762 } 10763 return &CallbackRegisteredOfferIterator{contract: _Callback.contract, event: "RegisteredOffer", logs: logs, sub: sub}, nil 10764 } 10765 10766 // WatchRegisteredOffer is a free log subscription operation binding the contract event 0x6e0b5117e49b57aaf37c635363b1b78a14ad521875ec99079d95bee2838cfeb8. 10767 // 10768 // Solidity: event RegisteredOffer(address owner, uint256 valueOrID, address tokenAddress, uint256 price) 10769 func (_Callback *CallbackFilterer) WatchRegisteredOffer(opts *bind.WatchOpts, sink chan<- *CallbackRegisteredOffer) (event.Subscription, error) { 10770 10771 logs, sub, err := _Callback.contract.WatchLogs(opts, "RegisteredOffer") 10772 if err != nil { 10773 return nil, err 10774 } 10775 return event.NewSubscription(func(quit <-chan struct{}) error { 10776 defer sub.Unsubscribe() 10777 for { 10778 select { 10779 case log := <-logs: 10780 // New log arrived, parse the event and forward to the user 10781 event := new(CallbackRegisteredOffer) 10782 if err := _Callback.contract.UnpackLog(event, "RegisteredOffer", log); err != nil { 10783 return err 10784 } 10785 event.Raw = log 10786 10787 select { 10788 case sink <- event: 10789 case err := <-sub.Err(): 10790 return err 10791 case <-quit: 10792 return nil 10793 } 10794 case err := <-sub.Err(): 10795 return err 10796 case <-quit: 10797 return nil 10798 } 10799 } 10800 }), nil 10801 } 10802 10803 // ParseRegisteredOffer is a log parse operation binding the contract event 0x6e0b5117e49b57aaf37c635363b1b78a14ad521875ec99079d95bee2838cfeb8. 10804 // 10805 // Solidity: event RegisteredOffer(address owner, uint256 valueOrID, address tokenAddress, uint256 price) 10806 func (_Callback *CallbackFilterer) ParseRegisteredOffer(log types.Log) (*CallbackRegisteredOffer, error) { 10807 event := new(CallbackRegisteredOffer) 10808 if err := _Callback.contract.UnpackLog(event, "RegisteredOffer", log); err != nil { 10809 return nil, err 10810 } 10811 return event, nil 10812 } 10813 10814 // CountersABI is the input ABI used to generate the binding from. 10815 const CountersABI = "[]" 10816 10817 // CountersBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 10818 const CountersBinRuntime = `73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a723058207329cab25de591c35947480820e66bd7e2d232979872616f21ac6e5783a017700029` 10819 10820 // CountersBin is the compiled bytecode used for deploying new contracts. 10821 var CountersBin = "0x604c6023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a723058207329cab25de591c35947480820e66bd7e2d232979872616f21ac6e5783a017700029" 10822 10823 // DeployCounters deploys a new Klaytn contract, binding an instance of Counters to it. 10824 func DeployCounters(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Counters, error) { 10825 parsed, err := abi.JSON(strings.NewReader(CountersABI)) 10826 if err != nil { 10827 return common.Address{}, nil, nil, err 10828 } 10829 10830 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(CountersBin), backend) 10831 if err != nil { 10832 return common.Address{}, nil, nil, err 10833 } 10834 return address, tx, &Counters{CountersCaller: CountersCaller{contract: contract}, CountersTransactor: CountersTransactor{contract: contract}, CountersFilterer: CountersFilterer{contract: contract}}, nil 10835 } 10836 10837 // Counters is an auto generated Go binding around a Klaytn contract. 10838 type Counters struct { 10839 CountersCaller // Read-only binding to the contract 10840 CountersTransactor // Write-only binding to the contract 10841 CountersFilterer // Log filterer for contract events 10842 } 10843 10844 // CountersCaller is an auto generated read-only Go binding around a Klaytn contract. 10845 type CountersCaller struct { 10846 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10847 } 10848 10849 // CountersTransactor is an auto generated write-only Go binding around a Klaytn contract. 10850 type CountersTransactor struct { 10851 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10852 } 10853 10854 // CountersFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 10855 type CountersFilterer struct { 10856 contract *bind.BoundContract // Generic contract wrapper for the low level calls 10857 } 10858 10859 // CountersSession is an auto generated Go binding around a Klaytn contract, 10860 // with pre-set call and transact options. 10861 type CountersSession struct { 10862 Contract *Counters // Generic contract binding to set the session for 10863 CallOpts bind.CallOpts // Call options to use throughout this session 10864 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10865 } 10866 10867 // CountersCallerSession is an auto generated read-only Go binding around a Klaytn contract, 10868 // with pre-set call options. 10869 type CountersCallerSession struct { 10870 Contract *CountersCaller // Generic contract caller binding to set the session for 10871 CallOpts bind.CallOpts // Call options to use throughout this session 10872 } 10873 10874 // CountersTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 10875 // with pre-set transact options. 10876 type CountersTransactorSession struct { 10877 Contract *CountersTransactor // Generic contract transactor binding to set the session for 10878 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 10879 } 10880 10881 // CountersRaw is an auto generated low-level Go binding around a Klaytn contract. 10882 type CountersRaw struct { 10883 Contract *Counters // Generic contract binding to access the raw methods on 10884 } 10885 10886 // CountersCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 10887 type CountersCallerRaw struct { 10888 Contract *CountersCaller // Generic read-only contract binding to access the raw methods on 10889 } 10890 10891 // CountersTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 10892 type CountersTransactorRaw struct { 10893 Contract *CountersTransactor // Generic write-only contract binding to access the raw methods on 10894 } 10895 10896 // NewCounters creates a new instance of Counters, bound to a specific deployed contract. 10897 func NewCounters(address common.Address, backend bind.ContractBackend) (*Counters, error) { 10898 contract, err := bindCounters(address, backend, backend, backend) 10899 if err != nil { 10900 return nil, err 10901 } 10902 return &Counters{CountersCaller: CountersCaller{contract: contract}, CountersTransactor: CountersTransactor{contract: contract}, CountersFilterer: CountersFilterer{contract: contract}}, nil 10903 } 10904 10905 // NewCountersCaller creates a new read-only instance of Counters, bound to a specific deployed contract. 10906 func NewCountersCaller(address common.Address, caller bind.ContractCaller) (*CountersCaller, error) { 10907 contract, err := bindCounters(address, caller, nil, nil) 10908 if err != nil { 10909 return nil, err 10910 } 10911 return &CountersCaller{contract: contract}, nil 10912 } 10913 10914 // NewCountersTransactor creates a new write-only instance of Counters, bound to a specific deployed contract. 10915 func NewCountersTransactor(address common.Address, transactor bind.ContractTransactor) (*CountersTransactor, error) { 10916 contract, err := bindCounters(address, nil, transactor, nil) 10917 if err != nil { 10918 return nil, err 10919 } 10920 return &CountersTransactor{contract: contract}, nil 10921 } 10922 10923 // NewCountersFilterer creates a new log filterer instance of Counters, bound to a specific deployed contract. 10924 func NewCountersFilterer(address common.Address, filterer bind.ContractFilterer) (*CountersFilterer, error) { 10925 contract, err := bindCounters(address, nil, nil, filterer) 10926 if err != nil { 10927 return nil, err 10928 } 10929 return &CountersFilterer{contract: contract}, nil 10930 } 10931 10932 // bindCounters binds a generic wrapper to an already deployed contract. 10933 func bindCounters(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 10934 parsed, err := abi.JSON(strings.NewReader(CountersABI)) 10935 if err != nil { 10936 return nil, err 10937 } 10938 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 10939 } 10940 10941 // Call invokes the (constant) contract method with params as input values and 10942 // sets the output to result. The result type might be a single field for simple 10943 // returns, a slice of interfaces for anonymous returns and a struct for named 10944 // returns. 10945 func (_Counters *CountersRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 10946 return _Counters.Contract.CountersCaller.contract.Call(opts, result, method, params...) 10947 } 10948 10949 // Transfer initiates a plain transaction to move funds to the contract, calling 10950 // its default method if one is available. 10951 func (_Counters *CountersRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10952 return _Counters.Contract.CountersTransactor.contract.Transfer(opts) 10953 } 10954 10955 // Transact invokes the (paid) contract method with params as input values. 10956 func (_Counters *CountersRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10957 return _Counters.Contract.CountersTransactor.contract.Transact(opts, method, params...) 10958 } 10959 10960 // Call invokes the (constant) contract method with params as input values and 10961 // sets the output to result. The result type might be a single field for simple 10962 // returns, a slice of interfaces for anonymous returns and a struct for named 10963 // returns. 10964 func (_Counters *CountersCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 10965 return _Counters.Contract.contract.Call(opts, result, method, params...) 10966 } 10967 10968 // Transfer initiates a plain transaction to move funds to the contract, calling 10969 // its default method if one is available. 10970 func (_Counters *CountersTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 10971 return _Counters.Contract.contract.Transfer(opts) 10972 } 10973 10974 // Transact invokes the (paid) contract method with params as input values. 10975 func (_Counters *CountersTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 10976 return _Counters.Contract.contract.Transact(opts, method, params...) 10977 } 10978 10979 // ERC165ABI is the input ABI used to generate the binding from. 10980 const ERC165ABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}]" 10981 10982 // ERC165BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 10983 const ERC165BinRuntime = `` 10984 10985 // ERC165FuncSigs maps the 4-byte function signature to its string representation. 10986 var ERC165FuncSigs = map[string]string{ 10987 "01ffc9a7": "supportsInterface(bytes4)", 10988 } 10989 10990 // ERC165 is an auto generated Go binding around a Klaytn contract. 10991 type ERC165 struct { 10992 ERC165Caller // Read-only binding to the contract 10993 ERC165Transactor // Write-only binding to the contract 10994 ERC165Filterer // Log filterer for contract events 10995 } 10996 10997 // ERC165Caller is an auto generated read-only Go binding around a Klaytn contract. 10998 type ERC165Caller struct { 10999 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11000 } 11001 11002 // ERC165Transactor is an auto generated write-only Go binding around a Klaytn contract. 11003 type ERC165Transactor struct { 11004 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11005 } 11006 11007 // ERC165Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 11008 type ERC165Filterer struct { 11009 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11010 } 11011 11012 // ERC165Session is an auto generated Go binding around a Klaytn contract, 11013 // with pre-set call and transact options. 11014 type ERC165Session struct { 11015 Contract *ERC165 // Generic contract binding to set the session for 11016 CallOpts bind.CallOpts // Call options to use throughout this session 11017 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11018 } 11019 11020 // ERC165CallerSession is an auto generated read-only Go binding around a Klaytn contract, 11021 // with pre-set call options. 11022 type ERC165CallerSession struct { 11023 Contract *ERC165Caller // Generic contract caller binding to set the session for 11024 CallOpts bind.CallOpts // Call options to use throughout this session 11025 } 11026 11027 // ERC165TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 11028 // with pre-set transact options. 11029 type ERC165TransactorSession struct { 11030 Contract *ERC165Transactor // Generic contract transactor binding to set the session for 11031 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11032 } 11033 11034 // ERC165Raw is an auto generated low-level Go binding around a Klaytn contract. 11035 type ERC165Raw struct { 11036 Contract *ERC165 // Generic contract binding to access the raw methods on 11037 } 11038 11039 // ERC165CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 11040 type ERC165CallerRaw struct { 11041 Contract *ERC165Caller // Generic read-only contract binding to access the raw methods on 11042 } 11043 11044 // ERC165TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 11045 type ERC165TransactorRaw struct { 11046 Contract *ERC165Transactor // Generic write-only contract binding to access the raw methods on 11047 } 11048 11049 // NewERC165 creates a new instance of ERC165, bound to a specific deployed contract. 11050 func NewERC165(address common.Address, backend bind.ContractBackend) (*ERC165, error) { 11051 contract, err := bindERC165(address, backend, backend, backend) 11052 if err != nil { 11053 return nil, err 11054 } 11055 return &ERC165{ERC165Caller: ERC165Caller{contract: contract}, ERC165Transactor: ERC165Transactor{contract: contract}, ERC165Filterer: ERC165Filterer{contract: contract}}, nil 11056 } 11057 11058 // NewERC165Caller creates a new read-only instance of ERC165, bound to a specific deployed contract. 11059 func NewERC165Caller(address common.Address, caller bind.ContractCaller) (*ERC165Caller, error) { 11060 contract, err := bindERC165(address, caller, nil, nil) 11061 if err != nil { 11062 return nil, err 11063 } 11064 return &ERC165Caller{contract: contract}, nil 11065 } 11066 11067 // NewERC165Transactor creates a new write-only instance of ERC165, bound to a specific deployed contract. 11068 func NewERC165Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC165Transactor, error) { 11069 contract, err := bindERC165(address, nil, transactor, nil) 11070 if err != nil { 11071 return nil, err 11072 } 11073 return &ERC165Transactor{contract: contract}, nil 11074 } 11075 11076 // NewERC165Filterer creates a new log filterer instance of ERC165, bound to a specific deployed contract. 11077 func NewERC165Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC165Filterer, error) { 11078 contract, err := bindERC165(address, nil, nil, filterer) 11079 if err != nil { 11080 return nil, err 11081 } 11082 return &ERC165Filterer{contract: contract}, nil 11083 } 11084 11085 // bindERC165 binds a generic wrapper to an already deployed contract. 11086 func bindERC165(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 11087 parsed, err := abi.JSON(strings.NewReader(ERC165ABI)) 11088 if err != nil { 11089 return nil, err 11090 } 11091 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 11092 } 11093 11094 // Call invokes the (constant) contract method with params as input values and 11095 // sets the output to result. The result type might be a single field for simple 11096 // returns, a slice of interfaces for anonymous returns and a struct for named 11097 // returns. 11098 func (_ERC165 *ERC165Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11099 return _ERC165.Contract.ERC165Caller.contract.Call(opts, result, method, params...) 11100 } 11101 11102 // Transfer initiates a plain transaction to move funds to the contract, calling 11103 // its default method if one is available. 11104 func (_ERC165 *ERC165Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11105 return _ERC165.Contract.ERC165Transactor.contract.Transfer(opts) 11106 } 11107 11108 // Transact invokes the (paid) contract method with params as input values. 11109 func (_ERC165 *ERC165Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 11110 return _ERC165.Contract.ERC165Transactor.contract.Transact(opts, method, params...) 11111 } 11112 11113 // Call invokes the (constant) contract method with params as input values and 11114 // sets the output to result. The result type might be a single field for simple 11115 // returns, a slice of interfaces for anonymous returns and a struct for named 11116 // returns. 11117 func (_ERC165 *ERC165CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11118 return _ERC165.Contract.contract.Call(opts, result, method, params...) 11119 } 11120 11121 // Transfer initiates a plain transaction to move funds to the contract, calling 11122 // its default method if one is available. 11123 func (_ERC165 *ERC165TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11124 return _ERC165.Contract.contract.Transfer(opts) 11125 } 11126 11127 // Transact invokes the (paid) contract method with params as input values. 11128 func (_ERC165 *ERC165TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 11129 return _ERC165.Contract.contract.Transact(opts, method, params...) 11130 } 11131 11132 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 11133 // 11134 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 11135 func (_ERC165 *ERC165Caller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 11136 var ( 11137 ret0 = new(bool) 11138 ) 11139 out := ret0 11140 err := _ERC165.contract.Call(opts, out, "supportsInterface", interfaceId) 11141 return *ret0, err 11142 } 11143 11144 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 11145 // 11146 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 11147 func (_ERC165 *ERC165Session) SupportsInterface(interfaceId [4]byte) (bool, error) { 11148 return _ERC165.Contract.SupportsInterface(&_ERC165.CallOpts, interfaceId) 11149 } 11150 11151 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 11152 // 11153 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 11154 func (_ERC165 *ERC165CallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 11155 return _ERC165.Contract.SupportsInterface(&_ERC165.CallOpts, interfaceId) 11156 } 11157 11158 // ERC20ABI is the input ABI used to generate the binding from. 11159 const ERC20ABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}]" 11160 11161 // ERC20BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 11162 const ERC20BinRuntime = `608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d561020b565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610211565b6100b96004803603604081101561013357600080fd5b506001600160a01b038135169060200135610268565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102a4565b6100b96004803603604081101561018557600080fd5b506001600160a01b0381351690602001356102bf565b6100b9600480360360408110156101b157600080fd5b506001600160a01b0381351690602001356102fb565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610308565b6000610202338484610333565b50600192915050565b60025490565b600061021e848484610425565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461025e918691610259908663ffffffff61056d16565b610333565b5060019392505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610202918590610259908663ffffffff6105cd16565b6001600160a01b031660009081526020819052604090205490565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610202918590610259908663ffffffff61056d16565b6000610202338484610425565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661037b57604051600160e51b62461bcd02815260040180806020018281038252602481526020018061069c6024913960400191505060405180910390fd5b6001600160a01b0382166103c357604051600160e51b62461bcd0281526004018080602001828103825260228152602001806106556022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661046d57604051600160e51b62461bcd0281526004018080602001828103825260258152602001806106776025913960400191505060405180910390fd5b6001600160a01b0382166104b557604051600160e51b62461bcd0281526004018080602001828103825260238152602001806106326023913960400191505060405180910390fd5b6001600160a01b0383166000908152602081905260409020546104de908263ffffffff61056d16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610513908263ffffffff6105cd16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828211156105c75760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60008282018381101561062a5760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a72305820802770bd4b0917c80d6b47964550f6c3e437f4a0b7286b55aa9963a98c5aaf400029` 11163 11164 // ERC20FuncSigs maps the 4-byte function signature to its string representation. 11165 var ERC20FuncSigs = map[string]string{ 11166 "dd62ed3e": "allowance(address,address)", 11167 "095ea7b3": "approve(address,uint256)", 11168 "70a08231": "balanceOf(address)", 11169 "a457c2d7": "decreaseAllowance(address,uint256)", 11170 "39509351": "increaseAllowance(address,uint256)", 11171 "18160ddd": "totalSupply()", 11172 "a9059cbb": "transfer(address,uint256)", 11173 "23b872dd": "transferFrom(address,address,uint256)", 11174 } 11175 11176 // ERC20Bin is the compiled bytecode used for deploying new contracts. 11177 var ERC20Bin = "0x608060405234801561001057600080fd5b506106eb806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a0823114610149578063a457c2d71461016f578063a9059cbb1461019b578063dd62ed3e146101c757610088565b8063095ea7b31461008d57806318160ddd146100cd57806323b872dd146100e7578063395093511461011d575b600080fd5b6100b9600480360360408110156100a357600080fd5b506001600160a01b0381351690602001356101f5565b604080519115158252519081900360200190f35b6100d561020b565b60408051918252519081900360200190f35b6100b9600480360360608110156100fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610211565b6100b96004803603604081101561013357600080fd5b506001600160a01b038135169060200135610268565b6100d56004803603602081101561015f57600080fd5b50356001600160a01b03166102a4565b6100b96004803603604081101561018557600080fd5b506001600160a01b0381351690602001356102bf565b6100b9600480360360408110156101b157600080fd5b506001600160a01b0381351690602001356102fb565b6100d5600480360360408110156101dd57600080fd5b506001600160a01b0381358116916020013516610308565b6000610202338484610333565b50600192915050565b60025490565b600061021e848484610425565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461025e918691610259908663ffffffff61056d16565b610333565b5060019392505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610202918590610259908663ffffffff6105cd16565b6001600160a01b031660009081526020819052604090205490565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610202918590610259908663ffffffff61056d16565b6000610202338484610425565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661037b57604051600160e51b62461bcd02815260040180806020018281038252602481526020018061069c6024913960400191505060405180910390fd5b6001600160a01b0382166103c357604051600160e51b62461bcd0281526004018080602001828103825260228152602001806106556022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661046d57604051600160e51b62461bcd0281526004018080602001828103825260258152602001806106776025913960400191505060405180910390fd5b6001600160a01b0382166104b557604051600160e51b62461bcd0281526004018080602001828103825260238152602001806106326023913960400191505060405180910390fd5b6001600160a01b0383166000908152602081905260409020546104de908263ffffffff61056d16565b6001600160a01b038085166000908152602081905260408082209390935590841681522054610513908263ffffffff6105cd16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828211156105c75760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60008282018381101561062a5760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a72305820802770bd4b0917c80d6b47964550f6c3e437f4a0b7286b55aa9963a98c5aaf400029" 11178 11179 // DeployERC20 deploys a new Klaytn contract, binding an instance of ERC20 to it. 11180 func DeployERC20(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC20, error) { 11181 parsed, err := abi.JSON(strings.NewReader(ERC20ABI)) 11182 if err != nil { 11183 return common.Address{}, nil, nil, err 11184 } 11185 11186 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC20Bin), backend) 11187 if err != nil { 11188 return common.Address{}, nil, nil, err 11189 } 11190 return address, tx, &ERC20{ERC20Caller: ERC20Caller{contract: contract}, ERC20Transactor: ERC20Transactor{contract: contract}, ERC20Filterer: ERC20Filterer{contract: contract}}, nil 11191 } 11192 11193 // ERC20 is an auto generated Go binding around a Klaytn contract. 11194 type ERC20 struct { 11195 ERC20Caller // Read-only binding to the contract 11196 ERC20Transactor // Write-only binding to the contract 11197 ERC20Filterer // Log filterer for contract events 11198 } 11199 11200 // ERC20Caller is an auto generated read-only Go binding around a Klaytn contract. 11201 type ERC20Caller struct { 11202 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11203 } 11204 11205 // ERC20Transactor is an auto generated write-only Go binding around a Klaytn contract. 11206 type ERC20Transactor struct { 11207 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11208 } 11209 11210 // ERC20Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 11211 type ERC20Filterer struct { 11212 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11213 } 11214 11215 // ERC20Session is an auto generated Go binding around a Klaytn contract, 11216 // with pre-set call and transact options. 11217 type ERC20Session struct { 11218 Contract *ERC20 // Generic contract binding to set the session for 11219 CallOpts bind.CallOpts // Call options to use throughout this session 11220 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11221 } 11222 11223 // ERC20CallerSession is an auto generated read-only Go binding around a Klaytn contract, 11224 // with pre-set call options. 11225 type ERC20CallerSession struct { 11226 Contract *ERC20Caller // Generic contract caller binding to set the session for 11227 CallOpts bind.CallOpts // Call options to use throughout this session 11228 } 11229 11230 // ERC20TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 11231 // with pre-set transact options. 11232 type ERC20TransactorSession struct { 11233 Contract *ERC20Transactor // Generic contract transactor binding to set the session for 11234 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11235 } 11236 11237 // ERC20Raw is an auto generated low-level Go binding around a Klaytn contract. 11238 type ERC20Raw struct { 11239 Contract *ERC20 // Generic contract binding to access the raw methods on 11240 } 11241 11242 // ERC20CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 11243 type ERC20CallerRaw struct { 11244 Contract *ERC20Caller // Generic read-only contract binding to access the raw methods on 11245 } 11246 11247 // ERC20TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 11248 type ERC20TransactorRaw struct { 11249 Contract *ERC20Transactor // Generic write-only contract binding to access the raw methods on 11250 } 11251 11252 // NewERC20 creates a new instance of ERC20, bound to a specific deployed contract. 11253 func NewERC20(address common.Address, backend bind.ContractBackend) (*ERC20, error) { 11254 contract, err := bindERC20(address, backend, backend, backend) 11255 if err != nil { 11256 return nil, err 11257 } 11258 return &ERC20{ERC20Caller: ERC20Caller{contract: contract}, ERC20Transactor: ERC20Transactor{contract: contract}, ERC20Filterer: ERC20Filterer{contract: contract}}, nil 11259 } 11260 11261 // NewERC20Caller creates a new read-only instance of ERC20, bound to a specific deployed contract. 11262 func NewERC20Caller(address common.Address, caller bind.ContractCaller) (*ERC20Caller, error) { 11263 contract, err := bindERC20(address, caller, nil, nil) 11264 if err != nil { 11265 return nil, err 11266 } 11267 return &ERC20Caller{contract: contract}, nil 11268 } 11269 11270 // NewERC20Transactor creates a new write-only instance of ERC20, bound to a specific deployed contract. 11271 func NewERC20Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC20Transactor, error) { 11272 contract, err := bindERC20(address, nil, transactor, nil) 11273 if err != nil { 11274 return nil, err 11275 } 11276 return &ERC20Transactor{contract: contract}, nil 11277 } 11278 11279 // NewERC20Filterer creates a new log filterer instance of ERC20, bound to a specific deployed contract. 11280 func NewERC20Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC20Filterer, error) { 11281 contract, err := bindERC20(address, nil, nil, filterer) 11282 if err != nil { 11283 return nil, err 11284 } 11285 return &ERC20Filterer{contract: contract}, nil 11286 } 11287 11288 // bindERC20 binds a generic wrapper to an already deployed contract. 11289 func bindERC20(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 11290 parsed, err := abi.JSON(strings.NewReader(ERC20ABI)) 11291 if err != nil { 11292 return nil, err 11293 } 11294 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 11295 } 11296 11297 // Call invokes the (constant) contract method with params as input values and 11298 // sets the output to result. The result type might be a single field for simple 11299 // returns, a slice of interfaces for anonymous returns and a struct for named 11300 // returns. 11301 func (_ERC20 *ERC20Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11302 return _ERC20.Contract.ERC20Caller.contract.Call(opts, result, method, params...) 11303 } 11304 11305 // Transfer initiates a plain transaction to move funds to the contract, calling 11306 // its default method if one is available. 11307 func (_ERC20 *ERC20Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11308 return _ERC20.Contract.ERC20Transactor.contract.Transfer(opts) 11309 } 11310 11311 // Transact invokes the (paid) contract method with params as input values. 11312 func (_ERC20 *ERC20Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 11313 return _ERC20.Contract.ERC20Transactor.contract.Transact(opts, method, params...) 11314 } 11315 11316 // Call invokes the (constant) contract method with params as input values and 11317 // sets the output to result. The result type might be a single field for simple 11318 // returns, a slice of interfaces for anonymous returns and a struct for named 11319 // returns. 11320 func (_ERC20 *ERC20CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11321 return _ERC20.Contract.contract.Call(opts, result, method, params...) 11322 } 11323 11324 // Transfer initiates a plain transaction to move funds to the contract, calling 11325 // its default method if one is available. 11326 func (_ERC20 *ERC20TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11327 return _ERC20.Contract.contract.Transfer(opts) 11328 } 11329 11330 // Transact invokes the (paid) contract method with params as input values. 11331 func (_ERC20 *ERC20TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 11332 return _ERC20.Contract.contract.Transact(opts, method, params...) 11333 } 11334 11335 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 11336 // 11337 // Solidity: function allowance(address owner, address spender) view returns(uint256) 11338 func (_ERC20 *ERC20Caller) Allowance(opts *bind.CallOpts, owner common.Address, spender common.Address) (*big.Int, error) { 11339 var ( 11340 ret0 = new(*big.Int) 11341 ) 11342 out := ret0 11343 err := _ERC20.contract.Call(opts, out, "allowance", owner, spender) 11344 return *ret0, err 11345 } 11346 11347 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 11348 // 11349 // Solidity: function allowance(address owner, address spender) view returns(uint256) 11350 func (_ERC20 *ERC20Session) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 11351 return _ERC20.Contract.Allowance(&_ERC20.CallOpts, owner, spender) 11352 } 11353 11354 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 11355 // 11356 // Solidity: function allowance(address owner, address spender) view returns(uint256) 11357 func (_ERC20 *ERC20CallerSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 11358 return _ERC20.Contract.Allowance(&_ERC20.CallOpts, owner, spender) 11359 } 11360 11361 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 11362 // 11363 // Solidity: function balanceOf(address account) view returns(uint256) 11364 func (_ERC20 *ERC20Caller) BalanceOf(opts *bind.CallOpts, account common.Address) (*big.Int, error) { 11365 var ( 11366 ret0 = new(*big.Int) 11367 ) 11368 out := ret0 11369 err := _ERC20.contract.Call(opts, out, "balanceOf", account) 11370 return *ret0, err 11371 } 11372 11373 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 11374 // 11375 // Solidity: function balanceOf(address account) view returns(uint256) 11376 func (_ERC20 *ERC20Session) BalanceOf(account common.Address) (*big.Int, error) { 11377 return _ERC20.Contract.BalanceOf(&_ERC20.CallOpts, account) 11378 } 11379 11380 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 11381 // 11382 // Solidity: function balanceOf(address account) view returns(uint256) 11383 func (_ERC20 *ERC20CallerSession) BalanceOf(account common.Address) (*big.Int, error) { 11384 return _ERC20.Contract.BalanceOf(&_ERC20.CallOpts, account) 11385 } 11386 11387 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 11388 // 11389 // Solidity: function totalSupply() view returns(uint256) 11390 func (_ERC20 *ERC20Caller) TotalSupply(opts *bind.CallOpts) (*big.Int, error) { 11391 var ( 11392 ret0 = new(*big.Int) 11393 ) 11394 out := ret0 11395 err := _ERC20.contract.Call(opts, out, "totalSupply") 11396 return *ret0, err 11397 } 11398 11399 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 11400 // 11401 // Solidity: function totalSupply() view returns(uint256) 11402 func (_ERC20 *ERC20Session) TotalSupply() (*big.Int, error) { 11403 return _ERC20.Contract.TotalSupply(&_ERC20.CallOpts) 11404 } 11405 11406 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 11407 // 11408 // Solidity: function totalSupply() view returns(uint256) 11409 func (_ERC20 *ERC20CallerSession) TotalSupply() (*big.Int, error) { 11410 return _ERC20.Contract.TotalSupply(&_ERC20.CallOpts) 11411 } 11412 11413 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 11414 // 11415 // Solidity: function approve(address spender, uint256 value) returns(bool) 11416 func (_ERC20 *ERC20Transactor) Approve(opts *bind.TransactOpts, spender common.Address, value *big.Int) (*types.Transaction, error) { 11417 return _ERC20.contract.Transact(opts, "approve", spender, value) 11418 } 11419 11420 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 11421 // 11422 // Solidity: function approve(address spender, uint256 value) returns(bool) 11423 func (_ERC20 *ERC20Session) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 11424 return _ERC20.Contract.Approve(&_ERC20.TransactOpts, spender, value) 11425 } 11426 11427 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 11428 // 11429 // Solidity: function approve(address spender, uint256 value) returns(bool) 11430 func (_ERC20 *ERC20TransactorSession) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 11431 return _ERC20.Contract.Approve(&_ERC20.TransactOpts, spender, value) 11432 } 11433 11434 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 11435 // 11436 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 11437 func (_ERC20 *ERC20Transactor) DecreaseAllowance(opts *bind.TransactOpts, spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 11438 return _ERC20.contract.Transact(opts, "decreaseAllowance", spender, subtractedValue) 11439 } 11440 11441 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 11442 // 11443 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 11444 func (_ERC20 *ERC20Session) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 11445 return _ERC20.Contract.DecreaseAllowance(&_ERC20.TransactOpts, spender, subtractedValue) 11446 } 11447 11448 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 11449 // 11450 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 11451 func (_ERC20 *ERC20TransactorSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 11452 return _ERC20.Contract.DecreaseAllowance(&_ERC20.TransactOpts, spender, subtractedValue) 11453 } 11454 11455 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 11456 // 11457 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 11458 func (_ERC20 *ERC20Transactor) IncreaseAllowance(opts *bind.TransactOpts, spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 11459 return _ERC20.contract.Transact(opts, "increaseAllowance", spender, addedValue) 11460 } 11461 11462 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 11463 // 11464 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 11465 func (_ERC20 *ERC20Session) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 11466 return _ERC20.Contract.IncreaseAllowance(&_ERC20.TransactOpts, spender, addedValue) 11467 } 11468 11469 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 11470 // 11471 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 11472 func (_ERC20 *ERC20TransactorSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 11473 return _ERC20.Contract.IncreaseAllowance(&_ERC20.TransactOpts, spender, addedValue) 11474 } 11475 11476 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 11477 // 11478 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 11479 func (_ERC20 *ERC20Transactor) Transfer(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11480 return _ERC20.contract.Transact(opts, "transfer", recipient, amount) 11481 } 11482 11483 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 11484 // 11485 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 11486 func (_ERC20 *ERC20Session) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11487 return _ERC20.Contract.Transfer(&_ERC20.TransactOpts, recipient, amount) 11488 } 11489 11490 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 11491 // 11492 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 11493 func (_ERC20 *ERC20TransactorSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11494 return _ERC20.Contract.Transfer(&_ERC20.TransactOpts, recipient, amount) 11495 } 11496 11497 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 11498 // 11499 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 11500 func (_ERC20 *ERC20Transactor) TransferFrom(opts *bind.TransactOpts, sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11501 return _ERC20.contract.Transact(opts, "transferFrom", sender, recipient, amount) 11502 } 11503 11504 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 11505 // 11506 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 11507 func (_ERC20 *ERC20Session) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11508 return _ERC20.Contract.TransferFrom(&_ERC20.TransactOpts, sender, recipient, amount) 11509 } 11510 11511 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 11512 // 11513 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 11514 func (_ERC20 *ERC20TransactorSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 11515 return _ERC20.Contract.TransferFrom(&_ERC20.TransactOpts, sender, recipient, amount) 11516 } 11517 11518 // ERC20ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC20 contract. 11519 type ERC20ApprovalIterator struct { 11520 Event *ERC20Approval // Event containing the contract specifics and raw log 11521 11522 contract *bind.BoundContract // Generic contract to use for unpacking event data 11523 event string // Event name to use for unpacking event data 11524 11525 logs chan types.Log // Log channel receiving the found contract events 11526 sub klaytn.Subscription // Subscription for errors, completion and termination 11527 done bool // Whether the subscription completed delivering logs 11528 fail error // Occurred error to stop iteration 11529 } 11530 11531 // Next advances the iterator to the subsequent event, returning whether there 11532 // are any more events found. In case of a retrieval or parsing error, false is 11533 // returned and Error() can be queried for the exact failure. 11534 func (it *ERC20ApprovalIterator) Next() bool { 11535 // If the iterator failed, stop iterating 11536 if it.fail != nil { 11537 return false 11538 } 11539 // If the iterator completed, deliver directly whatever's available 11540 if it.done { 11541 select { 11542 case log := <-it.logs: 11543 it.Event = new(ERC20Approval) 11544 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 11545 it.fail = err 11546 return false 11547 } 11548 it.Event.Raw = log 11549 return true 11550 11551 default: 11552 return false 11553 } 11554 } 11555 // Iterator still in progress, wait for either a data or an error event 11556 select { 11557 case log := <-it.logs: 11558 it.Event = new(ERC20Approval) 11559 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 11560 it.fail = err 11561 return false 11562 } 11563 it.Event.Raw = log 11564 return true 11565 11566 case err := <-it.sub.Err(): 11567 it.done = true 11568 it.fail = err 11569 return it.Next() 11570 } 11571 } 11572 11573 // Error returns any retrieval or parsing error occurred during filtering. 11574 func (it *ERC20ApprovalIterator) Error() error { 11575 return it.fail 11576 } 11577 11578 // Close terminates the iteration process, releasing any pending underlying 11579 // resources. 11580 func (it *ERC20ApprovalIterator) Close() error { 11581 it.sub.Unsubscribe() 11582 return nil 11583 } 11584 11585 // ERC20Approval represents a Approval event raised by the ERC20 contract. 11586 type ERC20Approval struct { 11587 Owner common.Address 11588 Spender common.Address 11589 Value *big.Int 11590 Raw types.Log // Blockchain specific contextual infos 11591 } 11592 11593 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 11594 // 11595 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 11596 func (_ERC20 *ERC20Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, spender []common.Address) (*ERC20ApprovalIterator, error) { 11597 11598 var ownerRule []interface{} 11599 for _, ownerItem := range owner { 11600 ownerRule = append(ownerRule, ownerItem) 11601 } 11602 var spenderRule []interface{} 11603 for _, spenderItem := range spender { 11604 spenderRule = append(spenderRule, spenderItem) 11605 } 11606 11607 logs, sub, err := _ERC20.contract.FilterLogs(opts, "Approval", ownerRule, spenderRule) 11608 if err != nil { 11609 return nil, err 11610 } 11611 return &ERC20ApprovalIterator{contract: _ERC20.contract, event: "Approval", logs: logs, sub: sub}, nil 11612 } 11613 11614 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 11615 // 11616 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 11617 func (_ERC20 *ERC20Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC20Approval, owner []common.Address, spender []common.Address) (event.Subscription, error) { 11618 11619 var ownerRule []interface{} 11620 for _, ownerItem := range owner { 11621 ownerRule = append(ownerRule, ownerItem) 11622 } 11623 var spenderRule []interface{} 11624 for _, spenderItem := range spender { 11625 spenderRule = append(spenderRule, spenderItem) 11626 } 11627 11628 logs, sub, err := _ERC20.contract.WatchLogs(opts, "Approval", ownerRule, spenderRule) 11629 if err != nil { 11630 return nil, err 11631 } 11632 return event.NewSubscription(func(quit <-chan struct{}) error { 11633 defer sub.Unsubscribe() 11634 for { 11635 select { 11636 case log := <-logs: 11637 // New log arrived, parse the event and forward to the user 11638 event := new(ERC20Approval) 11639 if err := _ERC20.contract.UnpackLog(event, "Approval", log); err != nil { 11640 return err 11641 } 11642 event.Raw = log 11643 11644 select { 11645 case sink <- event: 11646 case err := <-sub.Err(): 11647 return err 11648 case <-quit: 11649 return nil 11650 } 11651 case err := <-sub.Err(): 11652 return err 11653 case <-quit: 11654 return nil 11655 } 11656 } 11657 }), nil 11658 } 11659 11660 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 11661 // 11662 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 11663 func (_ERC20 *ERC20Filterer) ParseApproval(log types.Log) (*ERC20Approval, error) { 11664 event := new(ERC20Approval) 11665 if err := _ERC20.contract.UnpackLog(event, "Approval", log); err != nil { 11666 return nil, err 11667 } 11668 return event, nil 11669 } 11670 11671 // ERC20TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC20 contract. 11672 type ERC20TransferIterator struct { 11673 Event *ERC20Transfer // Event containing the contract specifics and raw log 11674 11675 contract *bind.BoundContract // Generic contract to use for unpacking event data 11676 event string // Event name to use for unpacking event data 11677 11678 logs chan types.Log // Log channel receiving the found contract events 11679 sub klaytn.Subscription // Subscription for errors, completion and termination 11680 done bool // Whether the subscription completed delivering logs 11681 fail error // Occurred error to stop iteration 11682 } 11683 11684 // Next advances the iterator to the subsequent event, returning whether there 11685 // are any more events found. In case of a retrieval or parsing error, false is 11686 // returned and Error() can be queried for the exact failure. 11687 func (it *ERC20TransferIterator) Next() bool { 11688 // If the iterator failed, stop iterating 11689 if it.fail != nil { 11690 return false 11691 } 11692 // If the iterator completed, deliver directly whatever's available 11693 if it.done { 11694 select { 11695 case log := <-it.logs: 11696 it.Event = new(ERC20Transfer) 11697 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 11698 it.fail = err 11699 return false 11700 } 11701 it.Event.Raw = log 11702 return true 11703 11704 default: 11705 return false 11706 } 11707 } 11708 // Iterator still in progress, wait for either a data or an error event 11709 select { 11710 case log := <-it.logs: 11711 it.Event = new(ERC20Transfer) 11712 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 11713 it.fail = err 11714 return false 11715 } 11716 it.Event.Raw = log 11717 return true 11718 11719 case err := <-it.sub.Err(): 11720 it.done = true 11721 it.fail = err 11722 return it.Next() 11723 } 11724 } 11725 11726 // Error returns any retrieval or parsing error occurred during filtering. 11727 func (it *ERC20TransferIterator) Error() error { 11728 return it.fail 11729 } 11730 11731 // Close terminates the iteration process, releasing any pending underlying 11732 // resources. 11733 func (it *ERC20TransferIterator) Close() error { 11734 it.sub.Unsubscribe() 11735 return nil 11736 } 11737 11738 // ERC20Transfer represents a Transfer event raised by the ERC20 contract. 11739 type ERC20Transfer struct { 11740 From common.Address 11741 To common.Address 11742 Value *big.Int 11743 Raw types.Log // Blockchain specific contextual infos 11744 } 11745 11746 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 11747 // 11748 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 11749 func (_ERC20 *ERC20Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*ERC20TransferIterator, error) { 11750 11751 var fromRule []interface{} 11752 for _, fromItem := range from { 11753 fromRule = append(fromRule, fromItem) 11754 } 11755 var toRule []interface{} 11756 for _, toItem := range to { 11757 toRule = append(toRule, toItem) 11758 } 11759 11760 logs, sub, err := _ERC20.contract.FilterLogs(opts, "Transfer", fromRule, toRule) 11761 if err != nil { 11762 return nil, err 11763 } 11764 return &ERC20TransferIterator{contract: _ERC20.contract, event: "Transfer", logs: logs, sub: sub}, nil 11765 } 11766 11767 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 11768 // 11769 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 11770 func (_ERC20 *ERC20Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC20Transfer, from []common.Address, to []common.Address) (event.Subscription, error) { 11771 11772 var fromRule []interface{} 11773 for _, fromItem := range from { 11774 fromRule = append(fromRule, fromItem) 11775 } 11776 var toRule []interface{} 11777 for _, toItem := range to { 11778 toRule = append(toRule, toItem) 11779 } 11780 11781 logs, sub, err := _ERC20.contract.WatchLogs(opts, "Transfer", fromRule, toRule) 11782 if err != nil { 11783 return nil, err 11784 } 11785 return event.NewSubscription(func(quit <-chan struct{}) error { 11786 defer sub.Unsubscribe() 11787 for { 11788 select { 11789 case log := <-logs: 11790 // New log arrived, parse the event and forward to the user 11791 event := new(ERC20Transfer) 11792 if err := _ERC20.contract.UnpackLog(event, "Transfer", log); err != nil { 11793 return err 11794 } 11795 event.Raw = log 11796 11797 select { 11798 case sink <- event: 11799 case err := <-sub.Err(): 11800 return err 11801 case <-quit: 11802 return nil 11803 } 11804 case err := <-sub.Err(): 11805 return err 11806 case <-quit: 11807 return nil 11808 } 11809 } 11810 }), nil 11811 } 11812 11813 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 11814 // 11815 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 11816 func (_ERC20 *ERC20Filterer) ParseTransfer(log types.Log) (*ERC20Transfer, error) { 11817 event := new(ERC20Transfer) 11818 if err := _ERC20.contract.UnpackLog(event, "Transfer", log); err != nil { 11819 return nil, err 11820 } 11821 return event, nil 11822 } 11823 11824 // ERC20BurnableABI is the input ABI used to generate the binding from. 11825 const ERC20BurnableABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"burnFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}]" 11826 11827 // ERC20BurnableBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 11828 const ERC20BurnableBinRuntime = `608060405234801561001057600080fd5b506004361061009e5760003560e01c806370a082311161006657806370a082311461017e57806379cc6790146101a4578063a457c2d7146101d0578063a9059cbb146101fc578063dd62ed3e146102285761009e565b8063095ea7b3146100a357806318160ddd146100e357806323b872dd146100fd578063395093511461013357806342966c681461015f575b600080fd5b6100cf600480360360408110156100b957600080fd5b506001600160a01b038135169060200135610256565b604080519115158252519081900360200190f35b6100eb61026c565b60408051918252519081900360200190f35b6100cf6004803603606081101561011357600080fd5b506001600160a01b03813581169160208101359091169060400135610272565b6100cf6004803603604081101561014957600080fd5b506001600160a01b0381351690602001356102c9565b61017c6004803603602081101561017557600080fd5b5035610305565b005b6100eb6004803603602081101561019457600080fd5b50356001600160a01b0316610312565b61017c600480360360408110156101ba57600080fd5b506001600160a01b03813516906020013561032d565b6100cf600480360360408110156101e657600080fd5b506001600160a01b03813516906020013561033b565b6100cf6004803603604081101561021257600080fd5b506001600160a01b038135169060200135610377565b6100eb6004803603604081101561023e57600080fd5b506001600160a01b0381358116916020013516610384565b60006102633384846103af565b50600192915050565b60025490565b600061027f8484846104a1565b6001600160a01b0384166000908152600160209081526040808320338085529252909120546102bf9186916102ba908663ffffffff6105e916565b6103af565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102639185906102ba908663ffffffff61064916565b61030f33826106ad565b50565b6001600160a01b031660009081526020819052604090205490565b6103378282610789565b5050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102639185906102ba908663ffffffff6105e916565b60006102633384846104a1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f757604051600160e51b62461bcd02815260040180806020018281038252602481526020018061085a6024913960400191505060405180910390fd5b6001600160a01b03821661043f57604051600160e51b62461bcd0281526004018080602001828103825260228152602001806107f26022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104e957604051600160e51b62461bcd0281526004018080602001828103825260258152602001806108356025913960400191505060405180910390fd5b6001600160a01b03821661053157604051600160e51b62461bcd0281526004018080602001828103825260238152602001806107cf6023913960400191505060405180910390fd5b6001600160a01b03831660009081526020819052604090205461055a908263ffffffff6105e916565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461058f908263ffffffff61064916565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828211156106435760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000828201838110156106a65760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b0382166106f557604051600160e51b62461bcd0281526004018080602001828103825260218152602001806108146021913960400191505060405180910390fd5b600254610708908263ffffffff6105e916565b6002556001600160a01b038216600090815260208190526040902054610734908263ffffffff6105e916565b6001600160a01b038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b61079382826106ad565b6001600160a01b0382166000908152600160209081526040808320338085529252909120546103379184916102ba908563ffffffff6105e91656fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a7230582013b4ee4a596e91b545aeb6447c3788b121a99567674027b21b642c7da8dc493c0029` 11829 11830 // ERC20BurnableFuncSigs maps the 4-byte function signature to its string representation. 11831 var ERC20BurnableFuncSigs = map[string]string{ 11832 "dd62ed3e": "allowance(address,address)", 11833 "095ea7b3": "approve(address,uint256)", 11834 "70a08231": "balanceOf(address)", 11835 "42966c68": "burn(uint256)", 11836 "79cc6790": "burnFrom(address,uint256)", 11837 "a457c2d7": "decreaseAllowance(address,uint256)", 11838 "39509351": "increaseAllowance(address,uint256)", 11839 "18160ddd": "totalSupply()", 11840 "a9059cbb": "transfer(address,uint256)", 11841 "23b872dd": "transferFrom(address,address,uint256)", 11842 } 11843 11844 // ERC20BurnableBin is the compiled bytecode used for deploying new contracts. 11845 var ERC20BurnableBin = "0x608060405234801561001057600080fd5b506108a9806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806370a082311161006657806370a082311461017e57806379cc6790146101a4578063a457c2d7146101d0578063a9059cbb146101fc578063dd62ed3e146102285761009e565b8063095ea7b3146100a357806318160ddd146100e357806323b872dd146100fd578063395093511461013357806342966c681461015f575b600080fd5b6100cf600480360360408110156100b957600080fd5b506001600160a01b038135169060200135610256565b604080519115158252519081900360200190f35b6100eb61026c565b60408051918252519081900360200190f35b6100cf6004803603606081101561011357600080fd5b506001600160a01b03813581169160208101359091169060400135610272565b6100cf6004803603604081101561014957600080fd5b506001600160a01b0381351690602001356102c9565b61017c6004803603602081101561017557600080fd5b5035610305565b005b6100eb6004803603602081101561019457600080fd5b50356001600160a01b0316610312565b61017c600480360360408110156101ba57600080fd5b506001600160a01b03813516906020013561032d565b6100cf600480360360408110156101e657600080fd5b506001600160a01b03813516906020013561033b565b6100cf6004803603604081101561021257600080fd5b506001600160a01b038135169060200135610377565b6100eb6004803603604081101561023e57600080fd5b506001600160a01b0381358116916020013516610384565b60006102633384846103af565b50600192915050565b60025490565b600061027f8484846104a1565b6001600160a01b0384166000908152600160209081526040808320338085529252909120546102bf9186916102ba908663ffffffff6105e916565b6103af565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102639185906102ba908663ffffffff61064916565b61030f33826106ad565b50565b6001600160a01b031660009081526020819052604090205490565b6103378282610789565b5050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102639185906102ba908663ffffffff6105e916565b60006102633384846104a1565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103f757604051600160e51b62461bcd02815260040180806020018281038252602481526020018061085a6024913960400191505060405180910390fd5b6001600160a01b03821661043f57604051600160e51b62461bcd0281526004018080602001828103825260228152602001806107f26022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166104e957604051600160e51b62461bcd0281526004018080602001828103825260258152602001806108356025913960400191505060405180910390fd5b6001600160a01b03821661053157604051600160e51b62461bcd0281526004018080602001828103825260238152602001806107cf6023913960400191505060405180910390fd5b6001600160a01b03831660009081526020819052604090205461055a908263ffffffff6105e916565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461058f908263ffffffff61064916565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828211156106435760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000828201838110156106a65760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b0382166106f557604051600160e51b62461bcd0281526004018080602001828103825260218152602001806108146021913960400191505060405180910390fd5b600254610708908263ffffffff6105e916565b6002556001600160a01b038216600090815260208190526040902054610734908263ffffffff6105e916565b6001600160a01b038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b61079382826106ad565b6001600160a01b0382166000908152600160209081526040808320338085529252909120546103379184916102ba908563ffffffff6105e91656fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a7230582013b4ee4a596e91b545aeb6447c3788b121a99567674027b21b642c7da8dc493c0029" 11846 11847 // DeployERC20Burnable deploys a new Klaytn contract, binding an instance of ERC20Burnable to it. 11848 func DeployERC20Burnable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC20Burnable, error) { 11849 parsed, err := abi.JSON(strings.NewReader(ERC20BurnableABI)) 11850 if err != nil { 11851 return common.Address{}, nil, nil, err 11852 } 11853 11854 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC20BurnableBin), backend) 11855 if err != nil { 11856 return common.Address{}, nil, nil, err 11857 } 11858 return address, tx, &ERC20Burnable{ERC20BurnableCaller: ERC20BurnableCaller{contract: contract}, ERC20BurnableTransactor: ERC20BurnableTransactor{contract: contract}, ERC20BurnableFilterer: ERC20BurnableFilterer{contract: contract}}, nil 11859 } 11860 11861 // ERC20Burnable is an auto generated Go binding around a Klaytn contract. 11862 type ERC20Burnable struct { 11863 ERC20BurnableCaller // Read-only binding to the contract 11864 ERC20BurnableTransactor // Write-only binding to the contract 11865 ERC20BurnableFilterer // Log filterer for contract events 11866 } 11867 11868 // ERC20BurnableCaller is an auto generated read-only Go binding around a Klaytn contract. 11869 type ERC20BurnableCaller struct { 11870 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11871 } 11872 11873 // ERC20BurnableTransactor is an auto generated write-only Go binding around a Klaytn contract. 11874 type ERC20BurnableTransactor struct { 11875 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11876 } 11877 11878 // ERC20BurnableFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 11879 type ERC20BurnableFilterer struct { 11880 contract *bind.BoundContract // Generic contract wrapper for the low level calls 11881 } 11882 11883 // ERC20BurnableSession is an auto generated Go binding around a Klaytn contract, 11884 // with pre-set call and transact options. 11885 type ERC20BurnableSession struct { 11886 Contract *ERC20Burnable // Generic contract binding to set the session for 11887 CallOpts bind.CallOpts // Call options to use throughout this session 11888 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11889 } 11890 11891 // ERC20BurnableCallerSession is an auto generated read-only Go binding around a Klaytn contract, 11892 // with pre-set call options. 11893 type ERC20BurnableCallerSession struct { 11894 Contract *ERC20BurnableCaller // Generic contract caller binding to set the session for 11895 CallOpts bind.CallOpts // Call options to use throughout this session 11896 } 11897 11898 // ERC20BurnableTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 11899 // with pre-set transact options. 11900 type ERC20BurnableTransactorSession struct { 11901 Contract *ERC20BurnableTransactor // Generic contract transactor binding to set the session for 11902 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 11903 } 11904 11905 // ERC20BurnableRaw is an auto generated low-level Go binding around a Klaytn contract. 11906 type ERC20BurnableRaw struct { 11907 Contract *ERC20Burnable // Generic contract binding to access the raw methods on 11908 } 11909 11910 // ERC20BurnableCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 11911 type ERC20BurnableCallerRaw struct { 11912 Contract *ERC20BurnableCaller // Generic read-only contract binding to access the raw methods on 11913 } 11914 11915 // ERC20BurnableTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 11916 type ERC20BurnableTransactorRaw struct { 11917 Contract *ERC20BurnableTransactor // Generic write-only contract binding to access the raw methods on 11918 } 11919 11920 // NewERC20Burnable creates a new instance of ERC20Burnable, bound to a specific deployed contract. 11921 func NewERC20Burnable(address common.Address, backend bind.ContractBackend) (*ERC20Burnable, error) { 11922 contract, err := bindERC20Burnable(address, backend, backend, backend) 11923 if err != nil { 11924 return nil, err 11925 } 11926 return &ERC20Burnable{ERC20BurnableCaller: ERC20BurnableCaller{contract: contract}, ERC20BurnableTransactor: ERC20BurnableTransactor{contract: contract}, ERC20BurnableFilterer: ERC20BurnableFilterer{contract: contract}}, nil 11927 } 11928 11929 // NewERC20BurnableCaller creates a new read-only instance of ERC20Burnable, bound to a specific deployed contract. 11930 func NewERC20BurnableCaller(address common.Address, caller bind.ContractCaller) (*ERC20BurnableCaller, error) { 11931 contract, err := bindERC20Burnable(address, caller, nil, nil) 11932 if err != nil { 11933 return nil, err 11934 } 11935 return &ERC20BurnableCaller{contract: contract}, nil 11936 } 11937 11938 // NewERC20BurnableTransactor creates a new write-only instance of ERC20Burnable, bound to a specific deployed contract. 11939 func NewERC20BurnableTransactor(address common.Address, transactor bind.ContractTransactor) (*ERC20BurnableTransactor, error) { 11940 contract, err := bindERC20Burnable(address, nil, transactor, nil) 11941 if err != nil { 11942 return nil, err 11943 } 11944 return &ERC20BurnableTransactor{contract: contract}, nil 11945 } 11946 11947 // NewERC20BurnableFilterer creates a new log filterer instance of ERC20Burnable, bound to a specific deployed contract. 11948 func NewERC20BurnableFilterer(address common.Address, filterer bind.ContractFilterer) (*ERC20BurnableFilterer, error) { 11949 contract, err := bindERC20Burnable(address, nil, nil, filterer) 11950 if err != nil { 11951 return nil, err 11952 } 11953 return &ERC20BurnableFilterer{contract: contract}, nil 11954 } 11955 11956 // bindERC20Burnable binds a generic wrapper to an already deployed contract. 11957 func bindERC20Burnable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 11958 parsed, err := abi.JSON(strings.NewReader(ERC20BurnableABI)) 11959 if err != nil { 11960 return nil, err 11961 } 11962 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 11963 } 11964 11965 // Call invokes the (constant) contract method with params as input values and 11966 // sets the output to result. The result type might be a single field for simple 11967 // returns, a slice of interfaces for anonymous returns and a struct for named 11968 // returns. 11969 func (_ERC20Burnable *ERC20BurnableRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11970 return _ERC20Burnable.Contract.ERC20BurnableCaller.contract.Call(opts, result, method, params...) 11971 } 11972 11973 // Transfer initiates a plain transaction to move funds to the contract, calling 11974 // its default method if one is available. 11975 func (_ERC20Burnable *ERC20BurnableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11976 return _ERC20Burnable.Contract.ERC20BurnableTransactor.contract.Transfer(opts) 11977 } 11978 11979 // Transact invokes the (paid) contract method with params as input values. 11980 func (_ERC20Burnable *ERC20BurnableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 11981 return _ERC20Burnable.Contract.ERC20BurnableTransactor.contract.Transact(opts, method, params...) 11982 } 11983 11984 // Call invokes the (constant) contract method with params as input values and 11985 // sets the output to result. The result type might be a single field for simple 11986 // returns, a slice of interfaces for anonymous returns and a struct for named 11987 // returns. 11988 func (_ERC20Burnable *ERC20BurnableCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 11989 return _ERC20Burnable.Contract.contract.Call(opts, result, method, params...) 11990 } 11991 11992 // Transfer initiates a plain transaction to move funds to the contract, calling 11993 // its default method if one is available. 11994 func (_ERC20Burnable *ERC20BurnableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 11995 return _ERC20Burnable.Contract.contract.Transfer(opts) 11996 } 11997 11998 // Transact invokes the (paid) contract method with params as input values. 11999 func (_ERC20Burnable *ERC20BurnableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 12000 return _ERC20Burnable.Contract.contract.Transact(opts, method, params...) 12001 } 12002 12003 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12004 // 12005 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12006 func (_ERC20Burnable *ERC20BurnableCaller) Allowance(opts *bind.CallOpts, owner common.Address, spender common.Address) (*big.Int, error) { 12007 var ( 12008 ret0 = new(*big.Int) 12009 ) 12010 out := ret0 12011 err := _ERC20Burnable.contract.Call(opts, out, "allowance", owner, spender) 12012 return *ret0, err 12013 } 12014 12015 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12016 // 12017 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12018 func (_ERC20Burnable *ERC20BurnableSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 12019 return _ERC20Burnable.Contract.Allowance(&_ERC20Burnable.CallOpts, owner, spender) 12020 } 12021 12022 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12023 // 12024 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12025 func (_ERC20Burnable *ERC20BurnableCallerSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 12026 return _ERC20Burnable.Contract.Allowance(&_ERC20Burnable.CallOpts, owner, spender) 12027 } 12028 12029 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12030 // 12031 // Solidity: function balanceOf(address account) view returns(uint256) 12032 func (_ERC20Burnable *ERC20BurnableCaller) BalanceOf(opts *bind.CallOpts, account common.Address) (*big.Int, error) { 12033 var ( 12034 ret0 = new(*big.Int) 12035 ) 12036 out := ret0 12037 err := _ERC20Burnable.contract.Call(opts, out, "balanceOf", account) 12038 return *ret0, err 12039 } 12040 12041 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12042 // 12043 // Solidity: function balanceOf(address account) view returns(uint256) 12044 func (_ERC20Burnable *ERC20BurnableSession) BalanceOf(account common.Address) (*big.Int, error) { 12045 return _ERC20Burnable.Contract.BalanceOf(&_ERC20Burnable.CallOpts, account) 12046 } 12047 12048 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12049 // 12050 // Solidity: function balanceOf(address account) view returns(uint256) 12051 func (_ERC20Burnable *ERC20BurnableCallerSession) BalanceOf(account common.Address) (*big.Int, error) { 12052 return _ERC20Burnable.Contract.BalanceOf(&_ERC20Burnable.CallOpts, account) 12053 } 12054 12055 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12056 // 12057 // Solidity: function totalSupply() view returns(uint256) 12058 func (_ERC20Burnable *ERC20BurnableCaller) TotalSupply(opts *bind.CallOpts) (*big.Int, error) { 12059 var ( 12060 ret0 = new(*big.Int) 12061 ) 12062 out := ret0 12063 err := _ERC20Burnable.contract.Call(opts, out, "totalSupply") 12064 return *ret0, err 12065 } 12066 12067 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12068 // 12069 // Solidity: function totalSupply() view returns(uint256) 12070 func (_ERC20Burnable *ERC20BurnableSession) TotalSupply() (*big.Int, error) { 12071 return _ERC20Burnable.Contract.TotalSupply(&_ERC20Burnable.CallOpts) 12072 } 12073 12074 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12075 // 12076 // Solidity: function totalSupply() view returns(uint256) 12077 func (_ERC20Burnable *ERC20BurnableCallerSession) TotalSupply() (*big.Int, error) { 12078 return _ERC20Burnable.Contract.TotalSupply(&_ERC20Burnable.CallOpts) 12079 } 12080 12081 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12082 // 12083 // Solidity: function approve(address spender, uint256 value) returns(bool) 12084 func (_ERC20Burnable *ERC20BurnableTransactor) Approve(opts *bind.TransactOpts, spender common.Address, value *big.Int) (*types.Transaction, error) { 12085 return _ERC20Burnable.contract.Transact(opts, "approve", spender, value) 12086 } 12087 12088 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12089 // 12090 // Solidity: function approve(address spender, uint256 value) returns(bool) 12091 func (_ERC20Burnable *ERC20BurnableSession) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 12092 return _ERC20Burnable.Contract.Approve(&_ERC20Burnable.TransactOpts, spender, value) 12093 } 12094 12095 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12096 // 12097 // Solidity: function approve(address spender, uint256 value) returns(bool) 12098 func (_ERC20Burnable *ERC20BurnableTransactorSession) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 12099 return _ERC20Burnable.Contract.Approve(&_ERC20Burnable.TransactOpts, spender, value) 12100 } 12101 12102 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 12103 // 12104 // Solidity: function burn(uint256 amount) returns() 12105 func (_ERC20Burnable *ERC20BurnableTransactor) Burn(opts *bind.TransactOpts, amount *big.Int) (*types.Transaction, error) { 12106 return _ERC20Burnable.contract.Transact(opts, "burn", amount) 12107 } 12108 12109 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 12110 // 12111 // Solidity: function burn(uint256 amount) returns() 12112 func (_ERC20Burnable *ERC20BurnableSession) Burn(amount *big.Int) (*types.Transaction, error) { 12113 return _ERC20Burnable.Contract.Burn(&_ERC20Burnable.TransactOpts, amount) 12114 } 12115 12116 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 12117 // 12118 // Solidity: function burn(uint256 amount) returns() 12119 func (_ERC20Burnable *ERC20BurnableTransactorSession) Burn(amount *big.Int) (*types.Transaction, error) { 12120 return _ERC20Burnable.Contract.Burn(&_ERC20Burnable.TransactOpts, amount) 12121 } 12122 12123 // BurnFrom is a paid mutator transaction binding the contract method 0x79cc6790. 12124 // 12125 // Solidity: function burnFrom(address account, uint256 amount) returns() 12126 func (_ERC20Burnable *ERC20BurnableTransactor) BurnFrom(opts *bind.TransactOpts, account common.Address, amount *big.Int) (*types.Transaction, error) { 12127 return _ERC20Burnable.contract.Transact(opts, "burnFrom", account, amount) 12128 } 12129 12130 // BurnFrom is a paid mutator transaction binding the contract method 0x79cc6790. 12131 // 12132 // Solidity: function burnFrom(address account, uint256 amount) returns() 12133 func (_ERC20Burnable *ERC20BurnableSession) BurnFrom(account common.Address, amount *big.Int) (*types.Transaction, error) { 12134 return _ERC20Burnable.Contract.BurnFrom(&_ERC20Burnable.TransactOpts, account, amount) 12135 } 12136 12137 // BurnFrom is a paid mutator transaction binding the contract method 0x79cc6790. 12138 // 12139 // Solidity: function burnFrom(address account, uint256 amount) returns() 12140 func (_ERC20Burnable *ERC20BurnableTransactorSession) BurnFrom(account common.Address, amount *big.Int) (*types.Transaction, error) { 12141 return _ERC20Burnable.Contract.BurnFrom(&_ERC20Burnable.TransactOpts, account, amount) 12142 } 12143 12144 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12145 // 12146 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12147 func (_ERC20Burnable *ERC20BurnableTransactor) DecreaseAllowance(opts *bind.TransactOpts, spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12148 return _ERC20Burnable.contract.Transact(opts, "decreaseAllowance", spender, subtractedValue) 12149 } 12150 12151 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12152 // 12153 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12154 func (_ERC20Burnable *ERC20BurnableSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12155 return _ERC20Burnable.Contract.DecreaseAllowance(&_ERC20Burnable.TransactOpts, spender, subtractedValue) 12156 } 12157 12158 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12159 // 12160 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12161 func (_ERC20Burnable *ERC20BurnableTransactorSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12162 return _ERC20Burnable.Contract.DecreaseAllowance(&_ERC20Burnable.TransactOpts, spender, subtractedValue) 12163 } 12164 12165 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12166 // 12167 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12168 func (_ERC20Burnable *ERC20BurnableTransactor) IncreaseAllowance(opts *bind.TransactOpts, spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12169 return _ERC20Burnable.contract.Transact(opts, "increaseAllowance", spender, addedValue) 12170 } 12171 12172 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12173 // 12174 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12175 func (_ERC20Burnable *ERC20BurnableSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12176 return _ERC20Burnable.Contract.IncreaseAllowance(&_ERC20Burnable.TransactOpts, spender, addedValue) 12177 } 12178 12179 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12180 // 12181 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12182 func (_ERC20Burnable *ERC20BurnableTransactorSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12183 return _ERC20Burnable.Contract.IncreaseAllowance(&_ERC20Burnable.TransactOpts, spender, addedValue) 12184 } 12185 12186 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12187 // 12188 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12189 func (_ERC20Burnable *ERC20BurnableTransactor) Transfer(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12190 return _ERC20Burnable.contract.Transact(opts, "transfer", recipient, amount) 12191 } 12192 12193 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12194 // 12195 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12196 func (_ERC20Burnable *ERC20BurnableSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12197 return _ERC20Burnable.Contract.Transfer(&_ERC20Burnable.TransactOpts, recipient, amount) 12198 } 12199 12200 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12201 // 12202 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12203 func (_ERC20Burnable *ERC20BurnableTransactorSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12204 return _ERC20Burnable.Contract.Transfer(&_ERC20Burnable.TransactOpts, recipient, amount) 12205 } 12206 12207 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12208 // 12209 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12210 func (_ERC20Burnable *ERC20BurnableTransactor) TransferFrom(opts *bind.TransactOpts, sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12211 return _ERC20Burnable.contract.Transact(opts, "transferFrom", sender, recipient, amount) 12212 } 12213 12214 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12215 // 12216 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12217 func (_ERC20Burnable *ERC20BurnableSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12218 return _ERC20Burnable.Contract.TransferFrom(&_ERC20Burnable.TransactOpts, sender, recipient, amount) 12219 } 12220 12221 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12222 // 12223 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12224 func (_ERC20Burnable *ERC20BurnableTransactorSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12225 return _ERC20Burnable.Contract.TransferFrom(&_ERC20Burnable.TransactOpts, sender, recipient, amount) 12226 } 12227 12228 // ERC20BurnableApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC20Burnable contract. 12229 type ERC20BurnableApprovalIterator struct { 12230 Event *ERC20BurnableApproval // Event containing the contract specifics and raw log 12231 12232 contract *bind.BoundContract // Generic contract to use for unpacking event data 12233 event string // Event name to use for unpacking event data 12234 12235 logs chan types.Log // Log channel receiving the found contract events 12236 sub klaytn.Subscription // Subscription for errors, completion and termination 12237 done bool // Whether the subscription completed delivering logs 12238 fail error // Occurred error to stop iteration 12239 } 12240 12241 // Next advances the iterator to the subsequent event, returning whether there 12242 // are any more events found. In case of a retrieval or parsing error, false is 12243 // returned and Error() can be queried for the exact failure. 12244 func (it *ERC20BurnableApprovalIterator) Next() bool { 12245 // If the iterator failed, stop iterating 12246 if it.fail != nil { 12247 return false 12248 } 12249 // If the iterator completed, deliver directly whatever's available 12250 if it.done { 12251 select { 12252 case log := <-it.logs: 12253 it.Event = new(ERC20BurnableApproval) 12254 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 12255 it.fail = err 12256 return false 12257 } 12258 it.Event.Raw = log 12259 return true 12260 12261 default: 12262 return false 12263 } 12264 } 12265 // Iterator still in progress, wait for either a data or an error event 12266 select { 12267 case log := <-it.logs: 12268 it.Event = new(ERC20BurnableApproval) 12269 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 12270 it.fail = err 12271 return false 12272 } 12273 it.Event.Raw = log 12274 return true 12275 12276 case err := <-it.sub.Err(): 12277 it.done = true 12278 it.fail = err 12279 return it.Next() 12280 } 12281 } 12282 12283 // Error returns any retrieval or parsing error occurred during filtering. 12284 func (it *ERC20BurnableApprovalIterator) Error() error { 12285 return it.fail 12286 } 12287 12288 // Close terminates the iteration process, releasing any pending underlying 12289 // resources. 12290 func (it *ERC20BurnableApprovalIterator) Close() error { 12291 it.sub.Unsubscribe() 12292 return nil 12293 } 12294 12295 // ERC20BurnableApproval represents a Approval event raised by the ERC20Burnable contract. 12296 type ERC20BurnableApproval struct { 12297 Owner common.Address 12298 Spender common.Address 12299 Value *big.Int 12300 Raw types.Log // Blockchain specific contextual infos 12301 } 12302 12303 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 12304 // 12305 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 12306 func (_ERC20Burnable *ERC20BurnableFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, spender []common.Address) (*ERC20BurnableApprovalIterator, error) { 12307 12308 var ownerRule []interface{} 12309 for _, ownerItem := range owner { 12310 ownerRule = append(ownerRule, ownerItem) 12311 } 12312 var spenderRule []interface{} 12313 for _, spenderItem := range spender { 12314 spenderRule = append(spenderRule, spenderItem) 12315 } 12316 12317 logs, sub, err := _ERC20Burnable.contract.FilterLogs(opts, "Approval", ownerRule, spenderRule) 12318 if err != nil { 12319 return nil, err 12320 } 12321 return &ERC20BurnableApprovalIterator{contract: _ERC20Burnable.contract, event: "Approval", logs: logs, sub: sub}, nil 12322 } 12323 12324 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 12325 // 12326 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 12327 func (_ERC20Burnable *ERC20BurnableFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC20BurnableApproval, owner []common.Address, spender []common.Address) (event.Subscription, error) { 12328 12329 var ownerRule []interface{} 12330 for _, ownerItem := range owner { 12331 ownerRule = append(ownerRule, ownerItem) 12332 } 12333 var spenderRule []interface{} 12334 for _, spenderItem := range spender { 12335 spenderRule = append(spenderRule, spenderItem) 12336 } 12337 12338 logs, sub, err := _ERC20Burnable.contract.WatchLogs(opts, "Approval", ownerRule, spenderRule) 12339 if err != nil { 12340 return nil, err 12341 } 12342 return event.NewSubscription(func(quit <-chan struct{}) error { 12343 defer sub.Unsubscribe() 12344 for { 12345 select { 12346 case log := <-logs: 12347 // New log arrived, parse the event and forward to the user 12348 event := new(ERC20BurnableApproval) 12349 if err := _ERC20Burnable.contract.UnpackLog(event, "Approval", log); err != nil { 12350 return err 12351 } 12352 event.Raw = log 12353 12354 select { 12355 case sink <- event: 12356 case err := <-sub.Err(): 12357 return err 12358 case <-quit: 12359 return nil 12360 } 12361 case err := <-sub.Err(): 12362 return err 12363 case <-quit: 12364 return nil 12365 } 12366 } 12367 }), nil 12368 } 12369 12370 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 12371 // 12372 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 12373 func (_ERC20Burnable *ERC20BurnableFilterer) ParseApproval(log types.Log) (*ERC20BurnableApproval, error) { 12374 event := new(ERC20BurnableApproval) 12375 if err := _ERC20Burnable.contract.UnpackLog(event, "Approval", log); err != nil { 12376 return nil, err 12377 } 12378 return event, nil 12379 } 12380 12381 // ERC20BurnableTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC20Burnable contract. 12382 type ERC20BurnableTransferIterator struct { 12383 Event *ERC20BurnableTransfer // Event containing the contract specifics and raw log 12384 12385 contract *bind.BoundContract // Generic contract to use for unpacking event data 12386 event string // Event name to use for unpacking event data 12387 12388 logs chan types.Log // Log channel receiving the found contract events 12389 sub klaytn.Subscription // Subscription for errors, completion and termination 12390 done bool // Whether the subscription completed delivering logs 12391 fail error // Occurred error to stop iteration 12392 } 12393 12394 // Next advances the iterator to the subsequent event, returning whether there 12395 // are any more events found. In case of a retrieval or parsing error, false is 12396 // returned and Error() can be queried for the exact failure. 12397 func (it *ERC20BurnableTransferIterator) Next() bool { 12398 // If the iterator failed, stop iterating 12399 if it.fail != nil { 12400 return false 12401 } 12402 // If the iterator completed, deliver directly whatever's available 12403 if it.done { 12404 select { 12405 case log := <-it.logs: 12406 it.Event = new(ERC20BurnableTransfer) 12407 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 12408 it.fail = err 12409 return false 12410 } 12411 it.Event.Raw = log 12412 return true 12413 12414 default: 12415 return false 12416 } 12417 } 12418 // Iterator still in progress, wait for either a data or an error event 12419 select { 12420 case log := <-it.logs: 12421 it.Event = new(ERC20BurnableTransfer) 12422 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 12423 it.fail = err 12424 return false 12425 } 12426 it.Event.Raw = log 12427 return true 12428 12429 case err := <-it.sub.Err(): 12430 it.done = true 12431 it.fail = err 12432 return it.Next() 12433 } 12434 } 12435 12436 // Error returns any retrieval or parsing error occurred during filtering. 12437 func (it *ERC20BurnableTransferIterator) Error() error { 12438 return it.fail 12439 } 12440 12441 // Close terminates the iteration process, releasing any pending underlying 12442 // resources. 12443 func (it *ERC20BurnableTransferIterator) Close() error { 12444 it.sub.Unsubscribe() 12445 return nil 12446 } 12447 12448 // ERC20BurnableTransfer represents a Transfer event raised by the ERC20Burnable contract. 12449 type ERC20BurnableTransfer struct { 12450 From common.Address 12451 To common.Address 12452 Value *big.Int 12453 Raw types.Log // Blockchain specific contextual infos 12454 } 12455 12456 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 12457 // 12458 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 12459 func (_ERC20Burnable *ERC20BurnableFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*ERC20BurnableTransferIterator, error) { 12460 12461 var fromRule []interface{} 12462 for _, fromItem := range from { 12463 fromRule = append(fromRule, fromItem) 12464 } 12465 var toRule []interface{} 12466 for _, toItem := range to { 12467 toRule = append(toRule, toItem) 12468 } 12469 12470 logs, sub, err := _ERC20Burnable.contract.FilterLogs(opts, "Transfer", fromRule, toRule) 12471 if err != nil { 12472 return nil, err 12473 } 12474 return &ERC20BurnableTransferIterator{contract: _ERC20Burnable.contract, event: "Transfer", logs: logs, sub: sub}, nil 12475 } 12476 12477 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 12478 // 12479 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 12480 func (_ERC20Burnable *ERC20BurnableFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC20BurnableTransfer, from []common.Address, to []common.Address) (event.Subscription, error) { 12481 12482 var fromRule []interface{} 12483 for _, fromItem := range from { 12484 fromRule = append(fromRule, fromItem) 12485 } 12486 var toRule []interface{} 12487 for _, toItem := range to { 12488 toRule = append(toRule, toItem) 12489 } 12490 12491 logs, sub, err := _ERC20Burnable.contract.WatchLogs(opts, "Transfer", fromRule, toRule) 12492 if err != nil { 12493 return nil, err 12494 } 12495 return event.NewSubscription(func(quit <-chan struct{}) error { 12496 defer sub.Unsubscribe() 12497 for { 12498 select { 12499 case log := <-logs: 12500 // New log arrived, parse the event and forward to the user 12501 event := new(ERC20BurnableTransfer) 12502 if err := _ERC20Burnable.contract.UnpackLog(event, "Transfer", log); err != nil { 12503 return err 12504 } 12505 event.Raw = log 12506 12507 select { 12508 case sink <- event: 12509 case err := <-sub.Err(): 12510 return err 12511 case <-quit: 12512 return nil 12513 } 12514 case err := <-sub.Err(): 12515 return err 12516 case <-quit: 12517 return nil 12518 } 12519 } 12520 }), nil 12521 } 12522 12523 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 12524 // 12525 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 12526 func (_ERC20Burnable *ERC20BurnableFilterer) ParseTransfer(log types.Log) (*ERC20BurnableTransfer, error) { 12527 event := new(ERC20BurnableTransfer) 12528 if err := _ERC20Burnable.contract.UnpackLog(event, "Transfer", log); err != nil { 12529 return nil, err 12530 } 12531 return event, nil 12532 } 12533 12534 // ERC20MintableABI is the input ABI used to generate the binding from. 12535 const ERC20MintableABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"addMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isMinter\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}]" 12536 12537 // ERC20MintableBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 12538 const ERC20MintableBinRuntime = `608060405234801561001057600080fd5b50600436106100b45760003560e01c8063983b2d5611610071578063983b2d56146101c757806398650275146101ef578063a457c2d7146101f7578063a9059cbb14610223578063aa271e1a1461024f578063dd62ed3e14610275576100b4565b8063095ea7b3146100b957806318160ddd146100f957806323b872dd14610113578063395093511461014957806340c10f191461017557806370a08231146101a1575b600080fd5b6100e5600480360360408110156100cf57600080fd5b506001600160a01b0381351690602001356102a3565b604080519115158252519081900360200190f35b6101016102b9565b60408051918252519081900360200190f35b6100e56004803603606081101561012957600080fd5b506001600160a01b038135811691602081013590911690604001356102bf565b6100e56004803603604081101561015f57600080fd5b506001600160a01b038135169060200135610316565b6100e56004803603604081101561018b57600080fd5b506001600160a01b038135169060200135610352565b610101600480360360208110156101b757600080fd5b50356001600160a01b03166103a5565b6101ed600480360360208110156101dd57600080fd5b50356001600160a01b03166103c0565b005b6101ed610413565b6100e56004803603604081101561020d57600080fd5b506001600160a01b03813516906020013561041e565b6100e56004803603604081101561023957600080fd5b506001600160a01b03813516906020013561045a565b6100e56004803603602081101561026557600080fd5b50356001600160a01b0316610467565b6101016004803603604081101561028b57600080fd5b506001600160a01b0381358116916020013516610480565b60006102b03384846104ab565b50600192915050565b60025490565b60006102cc84848461059d565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461030c918691610307908663ffffffff6106e516565b6104ab565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102b0918590610307908663ffffffff61074516565b600061035d33610467565b61039b57604051600160e51b62461bcd028152600401808060200182810382526030815260200180610aca6030913960400191505060405180910390fd5b6102b083836107a9565b6001600160a01b031660009081526020819052604090205490565b6103c933610467565b61040757604051600160e51b62461bcd028152600401808060200182810382526030815260200180610aca6030913960400191505060405180910390fd5b6104108161089c565b50565b61041c336108e4565b565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102b0918590610307908663ffffffff6106e516565b60006102b033848461059d565b600061047a60038363ffffffff61092c16565b92915050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104f357604051600160e51b62461bcd028152600401808060200182810382526024815260200180610b626024913960400191505060405180910390fd5b6001600160a01b03821661053b57604051600160e51b62461bcd028152600401808060200182810382526022815260200180610aa86022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166105e557604051600160e51b62461bcd028152600401808060200182810382526025815260200180610b3d6025913960400191505060405180910390fd5b6001600160a01b03821661062d57604051600160e51b62461bcd028152600401808060200182810382526023815260200180610a856023913960400191505060405180910390fd5b6001600160a01b038316600090815260208190526040902054610656908263ffffffff6106e516565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461068b908263ffffffff61074516565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282111561073f5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000828201838110156107a25760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b0382166108075760408051600160e51b62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b60025461081a908263ffffffff61074516565b6002556001600160a01b038216600090815260208190526040902054610846908263ffffffff61074516565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6108ad60038263ffffffff61099616565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b6108f560038263ffffffff610a1a16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b03821661097657604051600160e51b62461bcd028152600401808060200182810382526022815260200180610b1b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6109a0828261092c565b156109f55760408051600160e51b62461bcd02815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b610a24828261092c565b610a6257604051600160e51b62461bcd028152600401808060200182810382526021815260200180610afa6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f20616464726573734d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a723058208533d6897cadaf6784525a9d32e613a3c81da44cfdedf624f1bdb497f8b68f4a0029` 12539 12540 // ERC20MintableFuncSigs maps the 4-byte function signature to its string representation. 12541 var ERC20MintableFuncSigs = map[string]string{ 12542 "983b2d56": "addMinter(address)", 12543 "dd62ed3e": "allowance(address,address)", 12544 "095ea7b3": "approve(address,uint256)", 12545 "70a08231": "balanceOf(address)", 12546 "a457c2d7": "decreaseAllowance(address,uint256)", 12547 "39509351": "increaseAllowance(address,uint256)", 12548 "aa271e1a": "isMinter(address)", 12549 "40c10f19": "mint(address,uint256)", 12550 "98650275": "renounceMinter()", 12551 "18160ddd": "totalSupply()", 12552 "a9059cbb": "transfer(address,uint256)", 12553 "23b872dd": "transferFrom(address,address,uint256)", 12554 } 12555 12556 // ERC20MintableBin is the compiled bytecode used for deploying new contracts. 12557 var ERC20MintableBin = "0x60806040526100133361001860201b60201c565b610189565b61003081600361006760201b6109961790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b610077828261010860201b60201c565b156100e357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216610169576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180610d496022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610bb1806101986000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063983b2d5611610071578063983b2d56146101c757806398650275146101ef578063a457c2d7146101f7578063a9059cbb14610223578063aa271e1a1461024f578063dd62ed3e14610275576100b4565b8063095ea7b3146100b957806318160ddd146100f957806323b872dd14610113578063395093511461014957806340c10f191461017557806370a08231146101a1575b600080fd5b6100e5600480360360408110156100cf57600080fd5b506001600160a01b0381351690602001356102a3565b604080519115158252519081900360200190f35b6101016102b9565b60408051918252519081900360200190f35b6100e56004803603606081101561012957600080fd5b506001600160a01b038135811691602081013590911690604001356102bf565b6100e56004803603604081101561015f57600080fd5b506001600160a01b038135169060200135610316565b6100e56004803603604081101561018b57600080fd5b506001600160a01b038135169060200135610352565b610101600480360360208110156101b757600080fd5b50356001600160a01b03166103a5565b6101ed600480360360208110156101dd57600080fd5b50356001600160a01b03166103c0565b005b6101ed610413565b6100e56004803603604081101561020d57600080fd5b506001600160a01b03813516906020013561041e565b6100e56004803603604081101561023957600080fd5b506001600160a01b03813516906020013561045a565b6100e56004803603602081101561026557600080fd5b50356001600160a01b0316610467565b6101016004803603604081101561028b57600080fd5b506001600160a01b0381358116916020013516610480565b60006102b03384846104ab565b50600192915050565b60025490565b60006102cc84848461059d565b6001600160a01b03841660009081526001602090815260408083203380855292529091205461030c918691610307908663ffffffff6106e516565b6104ab565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102b0918590610307908663ffffffff61074516565b600061035d33610467565b61039b57604051600160e51b62461bcd028152600401808060200182810382526030815260200180610aca6030913960400191505060405180910390fd5b6102b083836107a9565b6001600160a01b031660009081526020819052604090205490565b6103c933610467565b61040757604051600160e51b62461bcd028152600401808060200182810382526030815260200180610aca6030913960400191505060405180910390fd5b6104108161089c565b50565b61041c336108e4565b565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916102b0918590610307908663ffffffff6106e516565b60006102b033848461059d565b600061047a60038363ffffffff61092c16565b92915050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166104f357604051600160e51b62461bcd028152600401808060200182810382526024815260200180610b626024913960400191505060405180910390fd5b6001600160a01b03821661053b57604051600160e51b62461bcd028152600401808060200182810382526022815260200180610aa86022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166105e557604051600160e51b62461bcd028152600401808060200182810382526025815260200180610b3d6025913960400191505060405180910390fd5b6001600160a01b03821661062d57604051600160e51b62461bcd028152600401808060200182810382526023815260200180610a856023913960400191505060405180910390fd5b6001600160a01b038316600090815260208190526040902054610656908263ffffffff6106e516565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461068b908263ffffffff61074516565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282111561073f5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000828201838110156107a25760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b0382166108075760408051600160e51b62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b60025461081a908263ffffffff61074516565b6002556001600160a01b038216600090815260208190526040902054610846908263ffffffff61074516565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6108ad60038263ffffffff61099616565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b6108f560038263ffffffff610a1a16565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b03821661097657604051600160e51b62461bcd028152600401808060200182810382526022815260200180610b1b6022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6109a0828261092c565b156109f55760408051600160e51b62461bcd02815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b610a24828261092c565b610a6257604051600160e51b62461bcd028152600401808060200182810382526021815260200180610afa6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff1916905556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f20616464726573734d696e746572526f6c653a2063616c6c657220646f6573206e6f74206861766520746865204d696e74657220726f6c65526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a723058208533d6897cadaf6784525a9d32e613a3c81da44cfdedf624f1bdb497f8b68f4a0029526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373" 12558 12559 // DeployERC20Mintable deploys a new Klaytn contract, binding an instance of ERC20Mintable to it. 12560 func DeployERC20Mintable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC20Mintable, error) { 12561 parsed, err := abi.JSON(strings.NewReader(ERC20MintableABI)) 12562 if err != nil { 12563 return common.Address{}, nil, nil, err 12564 } 12565 12566 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC20MintableBin), backend) 12567 if err != nil { 12568 return common.Address{}, nil, nil, err 12569 } 12570 return address, tx, &ERC20Mintable{ERC20MintableCaller: ERC20MintableCaller{contract: contract}, ERC20MintableTransactor: ERC20MintableTransactor{contract: contract}, ERC20MintableFilterer: ERC20MintableFilterer{contract: contract}}, nil 12571 } 12572 12573 // ERC20Mintable is an auto generated Go binding around a Klaytn contract. 12574 type ERC20Mintable struct { 12575 ERC20MintableCaller // Read-only binding to the contract 12576 ERC20MintableTransactor // Write-only binding to the contract 12577 ERC20MintableFilterer // Log filterer for contract events 12578 } 12579 12580 // ERC20MintableCaller is an auto generated read-only Go binding around a Klaytn contract. 12581 type ERC20MintableCaller struct { 12582 contract *bind.BoundContract // Generic contract wrapper for the low level calls 12583 } 12584 12585 // ERC20MintableTransactor is an auto generated write-only Go binding around a Klaytn contract. 12586 type ERC20MintableTransactor struct { 12587 contract *bind.BoundContract // Generic contract wrapper for the low level calls 12588 } 12589 12590 // ERC20MintableFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 12591 type ERC20MintableFilterer struct { 12592 contract *bind.BoundContract // Generic contract wrapper for the low level calls 12593 } 12594 12595 // ERC20MintableSession is an auto generated Go binding around a Klaytn contract, 12596 // with pre-set call and transact options. 12597 type ERC20MintableSession struct { 12598 Contract *ERC20Mintable // Generic contract binding to set the session for 12599 CallOpts bind.CallOpts // Call options to use throughout this session 12600 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 12601 } 12602 12603 // ERC20MintableCallerSession is an auto generated read-only Go binding around a Klaytn contract, 12604 // with pre-set call options. 12605 type ERC20MintableCallerSession struct { 12606 Contract *ERC20MintableCaller // Generic contract caller binding to set the session for 12607 CallOpts bind.CallOpts // Call options to use throughout this session 12608 } 12609 12610 // ERC20MintableTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 12611 // with pre-set transact options. 12612 type ERC20MintableTransactorSession struct { 12613 Contract *ERC20MintableTransactor // Generic contract transactor binding to set the session for 12614 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 12615 } 12616 12617 // ERC20MintableRaw is an auto generated low-level Go binding around a Klaytn contract. 12618 type ERC20MintableRaw struct { 12619 Contract *ERC20Mintable // Generic contract binding to access the raw methods on 12620 } 12621 12622 // ERC20MintableCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 12623 type ERC20MintableCallerRaw struct { 12624 Contract *ERC20MintableCaller // Generic read-only contract binding to access the raw methods on 12625 } 12626 12627 // ERC20MintableTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 12628 type ERC20MintableTransactorRaw struct { 12629 Contract *ERC20MintableTransactor // Generic write-only contract binding to access the raw methods on 12630 } 12631 12632 // NewERC20Mintable creates a new instance of ERC20Mintable, bound to a specific deployed contract. 12633 func NewERC20Mintable(address common.Address, backend bind.ContractBackend) (*ERC20Mintable, error) { 12634 contract, err := bindERC20Mintable(address, backend, backend, backend) 12635 if err != nil { 12636 return nil, err 12637 } 12638 return &ERC20Mintable{ERC20MintableCaller: ERC20MintableCaller{contract: contract}, ERC20MintableTransactor: ERC20MintableTransactor{contract: contract}, ERC20MintableFilterer: ERC20MintableFilterer{contract: contract}}, nil 12639 } 12640 12641 // NewERC20MintableCaller creates a new read-only instance of ERC20Mintable, bound to a specific deployed contract. 12642 func NewERC20MintableCaller(address common.Address, caller bind.ContractCaller) (*ERC20MintableCaller, error) { 12643 contract, err := bindERC20Mintable(address, caller, nil, nil) 12644 if err != nil { 12645 return nil, err 12646 } 12647 return &ERC20MintableCaller{contract: contract}, nil 12648 } 12649 12650 // NewERC20MintableTransactor creates a new write-only instance of ERC20Mintable, bound to a specific deployed contract. 12651 func NewERC20MintableTransactor(address common.Address, transactor bind.ContractTransactor) (*ERC20MintableTransactor, error) { 12652 contract, err := bindERC20Mintable(address, nil, transactor, nil) 12653 if err != nil { 12654 return nil, err 12655 } 12656 return &ERC20MintableTransactor{contract: contract}, nil 12657 } 12658 12659 // NewERC20MintableFilterer creates a new log filterer instance of ERC20Mintable, bound to a specific deployed contract. 12660 func NewERC20MintableFilterer(address common.Address, filterer bind.ContractFilterer) (*ERC20MintableFilterer, error) { 12661 contract, err := bindERC20Mintable(address, nil, nil, filterer) 12662 if err != nil { 12663 return nil, err 12664 } 12665 return &ERC20MintableFilterer{contract: contract}, nil 12666 } 12667 12668 // bindERC20Mintable binds a generic wrapper to an already deployed contract. 12669 func bindERC20Mintable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 12670 parsed, err := abi.JSON(strings.NewReader(ERC20MintableABI)) 12671 if err != nil { 12672 return nil, err 12673 } 12674 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 12675 } 12676 12677 // Call invokes the (constant) contract method with params as input values and 12678 // sets the output to result. The result type might be a single field for simple 12679 // returns, a slice of interfaces for anonymous returns and a struct for named 12680 // returns. 12681 func (_ERC20Mintable *ERC20MintableRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 12682 return _ERC20Mintable.Contract.ERC20MintableCaller.contract.Call(opts, result, method, params...) 12683 } 12684 12685 // Transfer initiates a plain transaction to move funds to the contract, calling 12686 // its default method if one is available. 12687 func (_ERC20Mintable *ERC20MintableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 12688 return _ERC20Mintable.Contract.ERC20MintableTransactor.contract.Transfer(opts) 12689 } 12690 12691 // Transact invokes the (paid) contract method with params as input values. 12692 func (_ERC20Mintable *ERC20MintableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 12693 return _ERC20Mintable.Contract.ERC20MintableTransactor.contract.Transact(opts, method, params...) 12694 } 12695 12696 // Call invokes the (constant) contract method with params as input values and 12697 // sets the output to result. The result type might be a single field for simple 12698 // returns, a slice of interfaces for anonymous returns and a struct for named 12699 // returns. 12700 func (_ERC20Mintable *ERC20MintableCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 12701 return _ERC20Mintable.Contract.contract.Call(opts, result, method, params...) 12702 } 12703 12704 // Transfer initiates a plain transaction to move funds to the contract, calling 12705 // its default method if one is available. 12706 func (_ERC20Mintable *ERC20MintableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 12707 return _ERC20Mintable.Contract.contract.Transfer(opts) 12708 } 12709 12710 // Transact invokes the (paid) contract method with params as input values. 12711 func (_ERC20Mintable *ERC20MintableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 12712 return _ERC20Mintable.Contract.contract.Transact(opts, method, params...) 12713 } 12714 12715 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12716 // 12717 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12718 func (_ERC20Mintable *ERC20MintableCaller) Allowance(opts *bind.CallOpts, owner common.Address, spender common.Address) (*big.Int, error) { 12719 var ( 12720 ret0 = new(*big.Int) 12721 ) 12722 out := ret0 12723 err := _ERC20Mintable.contract.Call(opts, out, "allowance", owner, spender) 12724 return *ret0, err 12725 } 12726 12727 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12728 // 12729 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12730 func (_ERC20Mintable *ERC20MintableSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 12731 return _ERC20Mintable.Contract.Allowance(&_ERC20Mintable.CallOpts, owner, spender) 12732 } 12733 12734 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 12735 // 12736 // Solidity: function allowance(address owner, address spender) view returns(uint256) 12737 func (_ERC20Mintable *ERC20MintableCallerSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 12738 return _ERC20Mintable.Contract.Allowance(&_ERC20Mintable.CallOpts, owner, spender) 12739 } 12740 12741 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12742 // 12743 // Solidity: function balanceOf(address account) view returns(uint256) 12744 func (_ERC20Mintable *ERC20MintableCaller) BalanceOf(opts *bind.CallOpts, account common.Address) (*big.Int, error) { 12745 var ( 12746 ret0 = new(*big.Int) 12747 ) 12748 out := ret0 12749 err := _ERC20Mintable.contract.Call(opts, out, "balanceOf", account) 12750 return *ret0, err 12751 } 12752 12753 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12754 // 12755 // Solidity: function balanceOf(address account) view returns(uint256) 12756 func (_ERC20Mintable *ERC20MintableSession) BalanceOf(account common.Address) (*big.Int, error) { 12757 return _ERC20Mintable.Contract.BalanceOf(&_ERC20Mintable.CallOpts, account) 12758 } 12759 12760 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 12761 // 12762 // Solidity: function balanceOf(address account) view returns(uint256) 12763 func (_ERC20Mintable *ERC20MintableCallerSession) BalanceOf(account common.Address) (*big.Int, error) { 12764 return _ERC20Mintable.Contract.BalanceOf(&_ERC20Mintable.CallOpts, account) 12765 } 12766 12767 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 12768 // 12769 // Solidity: function isMinter(address account) view returns(bool) 12770 func (_ERC20Mintable *ERC20MintableCaller) IsMinter(opts *bind.CallOpts, account common.Address) (bool, error) { 12771 var ( 12772 ret0 = new(bool) 12773 ) 12774 out := ret0 12775 err := _ERC20Mintable.contract.Call(opts, out, "isMinter", account) 12776 return *ret0, err 12777 } 12778 12779 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 12780 // 12781 // Solidity: function isMinter(address account) view returns(bool) 12782 func (_ERC20Mintable *ERC20MintableSession) IsMinter(account common.Address) (bool, error) { 12783 return _ERC20Mintable.Contract.IsMinter(&_ERC20Mintable.CallOpts, account) 12784 } 12785 12786 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 12787 // 12788 // Solidity: function isMinter(address account) view returns(bool) 12789 func (_ERC20Mintable *ERC20MintableCallerSession) IsMinter(account common.Address) (bool, error) { 12790 return _ERC20Mintable.Contract.IsMinter(&_ERC20Mintable.CallOpts, account) 12791 } 12792 12793 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12794 // 12795 // Solidity: function totalSupply() view returns(uint256) 12796 func (_ERC20Mintable *ERC20MintableCaller) TotalSupply(opts *bind.CallOpts) (*big.Int, error) { 12797 var ( 12798 ret0 = new(*big.Int) 12799 ) 12800 out := ret0 12801 err := _ERC20Mintable.contract.Call(opts, out, "totalSupply") 12802 return *ret0, err 12803 } 12804 12805 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12806 // 12807 // Solidity: function totalSupply() view returns(uint256) 12808 func (_ERC20Mintable *ERC20MintableSession) TotalSupply() (*big.Int, error) { 12809 return _ERC20Mintable.Contract.TotalSupply(&_ERC20Mintable.CallOpts) 12810 } 12811 12812 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 12813 // 12814 // Solidity: function totalSupply() view returns(uint256) 12815 func (_ERC20Mintable *ERC20MintableCallerSession) TotalSupply() (*big.Int, error) { 12816 return _ERC20Mintable.Contract.TotalSupply(&_ERC20Mintable.CallOpts) 12817 } 12818 12819 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 12820 // 12821 // Solidity: function addMinter(address account) returns() 12822 func (_ERC20Mintable *ERC20MintableTransactor) AddMinter(opts *bind.TransactOpts, account common.Address) (*types.Transaction, error) { 12823 return _ERC20Mintable.contract.Transact(opts, "addMinter", account) 12824 } 12825 12826 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 12827 // 12828 // Solidity: function addMinter(address account) returns() 12829 func (_ERC20Mintable *ERC20MintableSession) AddMinter(account common.Address) (*types.Transaction, error) { 12830 return _ERC20Mintable.Contract.AddMinter(&_ERC20Mintable.TransactOpts, account) 12831 } 12832 12833 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 12834 // 12835 // Solidity: function addMinter(address account) returns() 12836 func (_ERC20Mintable *ERC20MintableTransactorSession) AddMinter(account common.Address) (*types.Transaction, error) { 12837 return _ERC20Mintable.Contract.AddMinter(&_ERC20Mintable.TransactOpts, account) 12838 } 12839 12840 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12841 // 12842 // Solidity: function approve(address spender, uint256 value) returns(bool) 12843 func (_ERC20Mintable *ERC20MintableTransactor) Approve(opts *bind.TransactOpts, spender common.Address, value *big.Int) (*types.Transaction, error) { 12844 return _ERC20Mintable.contract.Transact(opts, "approve", spender, value) 12845 } 12846 12847 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12848 // 12849 // Solidity: function approve(address spender, uint256 value) returns(bool) 12850 func (_ERC20Mintable *ERC20MintableSession) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 12851 return _ERC20Mintable.Contract.Approve(&_ERC20Mintable.TransactOpts, spender, value) 12852 } 12853 12854 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 12855 // 12856 // Solidity: function approve(address spender, uint256 value) returns(bool) 12857 func (_ERC20Mintable *ERC20MintableTransactorSession) Approve(spender common.Address, value *big.Int) (*types.Transaction, error) { 12858 return _ERC20Mintable.Contract.Approve(&_ERC20Mintable.TransactOpts, spender, value) 12859 } 12860 12861 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12862 // 12863 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12864 func (_ERC20Mintable *ERC20MintableTransactor) DecreaseAllowance(opts *bind.TransactOpts, spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12865 return _ERC20Mintable.contract.Transact(opts, "decreaseAllowance", spender, subtractedValue) 12866 } 12867 12868 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12869 // 12870 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12871 func (_ERC20Mintable *ERC20MintableSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12872 return _ERC20Mintable.Contract.DecreaseAllowance(&_ERC20Mintable.TransactOpts, spender, subtractedValue) 12873 } 12874 12875 // DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7. 12876 // 12877 // Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool) 12878 func (_ERC20Mintable *ERC20MintableTransactorSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error) { 12879 return _ERC20Mintable.Contract.DecreaseAllowance(&_ERC20Mintable.TransactOpts, spender, subtractedValue) 12880 } 12881 12882 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12883 // 12884 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12885 func (_ERC20Mintable *ERC20MintableTransactor) IncreaseAllowance(opts *bind.TransactOpts, spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12886 return _ERC20Mintable.contract.Transact(opts, "increaseAllowance", spender, addedValue) 12887 } 12888 12889 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12890 // 12891 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12892 func (_ERC20Mintable *ERC20MintableSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12893 return _ERC20Mintable.Contract.IncreaseAllowance(&_ERC20Mintable.TransactOpts, spender, addedValue) 12894 } 12895 12896 // IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351. 12897 // 12898 // Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool) 12899 func (_ERC20Mintable *ERC20MintableTransactorSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error) { 12900 return _ERC20Mintable.Contract.IncreaseAllowance(&_ERC20Mintable.TransactOpts, spender, addedValue) 12901 } 12902 12903 // Mint is a paid mutator transaction binding the contract method 0x40c10f19. 12904 // 12905 // Solidity: function mint(address account, uint256 amount) returns(bool) 12906 func (_ERC20Mintable *ERC20MintableTransactor) Mint(opts *bind.TransactOpts, account common.Address, amount *big.Int) (*types.Transaction, error) { 12907 return _ERC20Mintable.contract.Transact(opts, "mint", account, amount) 12908 } 12909 12910 // Mint is a paid mutator transaction binding the contract method 0x40c10f19. 12911 // 12912 // Solidity: function mint(address account, uint256 amount) returns(bool) 12913 func (_ERC20Mintable *ERC20MintableSession) Mint(account common.Address, amount *big.Int) (*types.Transaction, error) { 12914 return _ERC20Mintable.Contract.Mint(&_ERC20Mintable.TransactOpts, account, amount) 12915 } 12916 12917 // Mint is a paid mutator transaction binding the contract method 0x40c10f19. 12918 // 12919 // Solidity: function mint(address account, uint256 amount) returns(bool) 12920 func (_ERC20Mintable *ERC20MintableTransactorSession) Mint(account common.Address, amount *big.Int) (*types.Transaction, error) { 12921 return _ERC20Mintable.Contract.Mint(&_ERC20Mintable.TransactOpts, account, amount) 12922 } 12923 12924 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 12925 // 12926 // Solidity: function renounceMinter() returns() 12927 func (_ERC20Mintable *ERC20MintableTransactor) RenounceMinter(opts *bind.TransactOpts) (*types.Transaction, error) { 12928 return _ERC20Mintable.contract.Transact(opts, "renounceMinter") 12929 } 12930 12931 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 12932 // 12933 // Solidity: function renounceMinter() returns() 12934 func (_ERC20Mintable *ERC20MintableSession) RenounceMinter() (*types.Transaction, error) { 12935 return _ERC20Mintable.Contract.RenounceMinter(&_ERC20Mintable.TransactOpts) 12936 } 12937 12938 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 12939 // 12940 // Solidity: function renounceMinter() returns() 12941 func (_ERC20Mintable *ERC20MintableTransactorSession) RenounceMinter() (*types.Transaction, error) { 12942 return _ERC20Mintable.Contract.RenounceMinter(&_ERC20Mintable.TransactOpts) 12943 } 12944 12945 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12946 // 12947 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12948 func (_ERC20Mintable *ERC20MintableTransactor) Transfer(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12949 return _ERC20Mintable.contract.Transact(opts, "transfer", recipient, amount) 12950 } 12951 12952 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12953 // 12954 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12955 func (_ERC20Mintable *ERC20MintableSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12956 return _ERC20Mintable.Contract.Transfer(&_ERC20Mintable.TransactOpts, recipient, amount) 12957 } 12958 12959 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 12960 // 12961 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 12962 func (_ERC20Mintable *ERC20MintableTransactorSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12963 return _ERC20Mintable.Contract.Transfer(&_ERC20Mintable.TransactOpts, recipient, amount) 12964 } 12965 12966 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12967 // 12968 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12969 func (_ERC20Mintable *ERC20MintableTransactor) TransferFrom(opts *bind.TransactOpts, sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12970 return _ERC20Mintable.contract.Transact(opts, "transferFrom", sender, recipient, amount) 12971 } 12972 12973 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12974 // 12975 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12976 func (_ERC20Mintable *ERC20MintableSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12977 return _ERC20Mintable.Contract.TransferFrom(&_ERC20Mintable.TransactOpts, sender, recipient, amount) 12978 } 12979 12980 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 12981 // 12982 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 12983 func (_ERC20Mintable *ERC20MintableTransactorSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 12984 return _ERC20Mintable.Contract.TransferFrom(&_ERC20Mintable.TransactOpts, sender, recipient, amount) 12985 } 12986 12987 // ERC20MintableApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC20Mintable contract. 12988 type ERC20MintableApprovalIterator struct { 12989 Event *ERC20MintableApproval // Event containing the contract specifics and raw log 12990 12991 contract *bind.BoundContract // Generic contract to use for unpacking event data 12992 event string // Event name to use for unpacking event data 12993 12994 logs chan types.Log // Log channel receiving the found contract events 12995 sub klaytn.Subscription // Subscription for errors, completion and termination 12996 done bool // Whether the subscription completed delivering logs 12997 fail error // Occurred error to stop iteration 12998 } 12999 13000 // Next advances the iterator to the subsequent event, returning whether there 13001 // are any more events found. In case of a retrieval or parsing error, false is 13002 // returned and Error() can be queried for the exact failure. 13003 func (it *ERC20MintableApprovalIterator) Next() bool { 13004 // If the iterator failed, stop iterating 13005 if it.fail != nil { 13006 return false 13007 } 13008 // If the iterator completed, deliver directly whatever's available 13009 if it.done { 13010 select { 13011 case log := <-it.logs: 13012 it.Event = new(ERC20MintableApproval) 13013 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13014 it.fail = err 13015 return false 13016 } 13017 it.Event.Raw = log 13018 return true 13019 13020 default: 13021 return false 13022 } 13023 } 13024 // Iterator still in progress, wait for either a data or an error event 13025 select { 13026 case log := <-it.logs: 13027 it.Event = new(ERC20MintableApproval) 13028 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13029 it.fail = err 13030 return false 13031 } 13032 it.Event.Raw = log 13033 return true 13034 13035 case err := <-it.sub.Err(): 13036 it.done = true 13037 it.fail = err 13038 return it.Next() 13039 } 13040 } 13041 13042 // Error returns any retrieval or parsing error occurred during filtering. 13043 func (it *ERC20MintableApprovalIterator) Error() error { 13044 return it.fail 13045 } 13046 13047 // Close terminates the iteration process, releasing any pending underlying 13048 // resources. 13049 func (it *ERC20MintableApprovalIterator) Close() error { 13050 it.sub.Unsubscribe() 13051 return nil 13052 } 13053 13054 // ERC20MintableApproval represents a Approval event raised by the ERC20Mintable contract. 13055 type ERC20MintableApproval struct { 13056 Owner common.Address 13057 Spender common.Address 13058 Value *big.Int 13059 Raw types.Log // Blockchain specific contextual infos 13060 } 13061 13062 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 13063 // 13064 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 13065 func (_ERC20Mintable *ERC20MintableFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, spender []common.Address) (*ERC20MintableApprovalIterator, error) { 13066 13067 var ownerRule []interface{} 13068 for _, ownerItem := range owner { 13069 ownerRule = append(ownerRule, ownerItem) 13070 } 13071 var spenderRule []interface{} 13072 for _, spenderItem := range spender { 13073 spenderRule = append(spenderRule, spenderItem) 13074 } 13075 13076 logs, sub, err := _ERC20Mintable.contract.FilterLogs(opts, "Approval", ownerRule, spenderRule) 13077 if err != nil { 13078 return nil, err 13079 } 13080 return &ERC20MintableApprovalIterator{contract: _ERC20Mintable.contract, event: "Approval", logs: logs, sub: sub}, nil 13081 } 13082 13083 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 13084 // 13085 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 13086 func (_ERC20Mintable *ERC20MintableFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC20MintableApproval, owner []common.Address, spender []common.Address) (event.Subscription, error) { 13087 13088 var ownerRule []interface{} 13089 for _, ownerItem := range owner { 13090 ownerRule = append(ownerRule, ownerItem) 13091 } 13092 var spenderRule []interface{} 13093 for _, spenderItem := range spender { 13094 spenderRule = append(spenderRule, spenderItem) 13095 } 13096 13097 logs, sub, err := _ERC20Mintable.contract.WatchLogs(opts, "Approval", ownerRule, spenderRule) 13098 if err != nil { 13099 return nil, err 13100 } 13101 return event.NewSubscription(func(quit <-chan struct{}) error { 13102 defer sub.Unsubscribe() 13103 for { 13104 select { 13105 case log := <-logs: 13106 // New log arrived, parse the event and forward to the user 13107 event := new(ERC20MintableApproval) 13108 if err := _ERC20Mintable.contract.UnpackLog(event, "Approval", log); err != nil { 13109 return err 13110 } 13111 event.Raw = log 13112 13113 select { 13114 case sink <- event: 13115 case err := <-sub.Err(): 13116 return err 13117 case <-quit: 13118 return nil 13119 } 13120 case err := <-sub.Err(): 13121 return err 13122 case <-quit: 13123 return nil 13124 } 13125 } 13126 }), nil 13127 } 13128 13129 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 13130 // 13131 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 13132 func (_ERC20Mintable *ERC20MintableFilterer) ParseApproval(log types.Log) (*ERC20MintableApproval, error) { 13133 event := new(ERC20MintableApproval) 13134 if err := _ERC20Mintable.contract.UnpackLog(event, "Approval", log); err != nil { 13135 return nil, err 13136 } 13137 return event, nil 13138 } 13139 13140 // ERC20MintableMinterAddedIterator is returned from FilterMinterAdded and is used to iterate over the raw logs and unpacked data for MinterAdded events raised by the ERC20Mintable contract. 13141 type ERC20MintableMinterAddedIterator struct { 13142 Event *ERC20MintableMinterAdded // Event containing the contract specifics and raw log 13143 13144 contract *bind.BoundContract // Generic contract to use for unpacking event data 13145 event string // Event name to use for unpacking event data 13146 13147 logs chan types.Log // Log channel receiving the found contract events 13148 sub klaytn.Subscription // Subscription for errors, completion and termination 13149 done bool // Whether the subscription completed delivering logs 13150 fail error // Occurred error to stop iteration 13151 } 13152 13153 // Next advances the iterator to the subsequent event, returning whether there 13154 // are any more events found. In case of a retrieval or parsing error, false is 13155 // returned and Error() can be queried for the exact failure. 13156 func (it *ERC20MintableMinterAddedIterator) Next() bool { 13157 // If the iterator failed, stop iterating 13158 if it.fail != nil { 13159 return false 13160 } 13161 // If the iterator completed, deliver directly whatever's available 13162 if it.done { 13163 select { 13164 case log := <-it.logs: 13165 it.Event = new(ERC20MintableMinterAdded) 13166 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13167 it.fail = err 13168 return false 13169 } 13170 it.Event.Raw = log 13171 return true 13172 13173 default: 13174 return false 13175 } 13176 } 13177 // Iterator still in progress, wait for either a data or an error event 13178 select { 13179 case log := <-it.logs: 13180 it.Event = new(ERC20MintableMinterAdded) 13181 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13182 it.fail = err 13183 return false 13184 } 13185 it.Event.Raw = log 13186 return true 13187 13188 case err := <-it.sub.Err(): 13189 it.done = true 13190 it.fail = err 13191 return it.Next() 13192 } 13193 } 13194 13195 // Error returns any retrieval or parsing error occurred during filtering. 13196 func (it *ERC20MintableMinterAddedIterator) Error() error { 13197 return it.fail 13198 } 13199 13200 // Close terminates the iteration process, releasing any pending underlying 13201 // resources. 13202 func (it *ERC20MintableMinterAddedIterator) Close() error { 13203 it.sub.Unsubscribe() 13204 return nil 13205 } 13206 13207 // ERC20MintableMinterAdded represents a MinterAdded event raised by the ERC20Mintable contract. 13208 type ERC20MintableMinterAdded struct { 13209 Account common.Address 13210 Raw types.Log // Blockchain specific contextual infos 13211 } 13212 13213 // FilterMinterAdded is a free log retrieval operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 13214 // 13215 // Solidity: event MinterAdded(address indexed account) 13216 func (_ERC20Mintable *ERC20MintableFilterer) FilterMinterAdded(opts *bind.FilterOpts, account []common.Address) (*ERC20MintableMinterAddedIterator, error) { 13217 13218 var accountRule []interface{} 13219 for _, accountItem := range account { 13220 accountRule = append(accountRule, accountItem) 13221 } 13222 13223 logs, sub, err := _ERC20Mintable.contract.FilterLogs(opts, "MinterAdded", accountRule) 13224 if err != nil { 13225 return nil, err 13226 } 13227 return &ERC20MintableMinterAddedIterator{contract: _ERC20Mintable.contract, event: "MinterAdded", logs: logs, sub: sub}, nil 13228 } 13229 13230 // WatchMinterAdded is a free log subscription operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 13231 // 13232 // Solidity: event MinterAdded(address indexed account) 13233 func (_ERC20Mintable *ERC20MintableFilterer) WatchMinterAdded(opts *bind.WatchOpts, sink chan<- *ERC20MintableMinterAdded, account []common.Address) (event.Subscription, error) { 13234 13235 var accountRule []interface{} 13236 for _, accountItem := range account { 13237 accountRule = append(accountRule, accountItem) 13238 } 13239 13240 logs, sub, err := _ERC20Mintable.contract.WatchLogs(opts, "MinterAdded", accountRule) 13241 if err != nil { 13242 return nil, err 13243 } 13244 return event.NewSubscription(func(quit <-chan struct{}) error { 13245 defer sub.Unsubscribe() 13246 for { 13247 select { 13248 case log := <-logs: 13249 // New log arrived, parse the event and forward to the user 13250 event := new(ERC20MintableMinterAdded) 13251 if err := _ERC20Mintable.contract.UnpackLog(event, "MinterAdded", log); err != nil { 13252 return err 13253 } 13254 event.Raw = log 13255 13256 select { 13257 case sink <- event: 13258 case err := <-sub.Err(): 13259 return err 13260 case <-quit: 13261 return nil 13262 } 13263 case err := <-sub.Err(): 13264 return err 13265 case <-quit: 13266 return nil 13267 } 13268 } 13269 }), nil 13270 } 13271 13272 // ParseMinterAdded is a log parse operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 13273 // 13274 // Solidity: event MinterAdded(address indexed account) 13275 func (_ERC20Mintable *ERC20MintableFilterer) ParseMinterAdded(log types.Log) (*ERC20MintableMinterAdded, error) { 13276 event := new(ERC20MintableMinterAdded) 13277 if err := _ERC20Mintable.contract.UnpackLog(event, "MinterAdded", log); err != nil { 13278 return nil, err 13279 } 13280 return event, nil 13281 } 13282 13283 // ERC20MintableMinterRemovedIterator is returned from FilterMinterRemoved and is used to iterate over the raw logs and unpacked data for MinterRemoved events raised by the ERC20Mintable contract. 13284 type ERC20MintableMinterRemovedIterator struct { 13285 Event *ERC20MintableMinterRemoved // Event containing the contract specifics and raw log 13286 13287 contract *bind.BoundContract // Generic contract to use for unpacking event data 13288 event string // Event name to use for unpacking event data 13289 13290 logs chan types.Log // Log channel receiving the found contract events 13291 sub klaytn.Subscription // Subscription for errors, completion and termination 13292 done bool // Whether the subscription completed delivering logs 13293 fail error // Occurred error to stop iteration 13294 } 13295 13296 // Next advances the iterator to the subsequent event, returning whether there 13297 // are any more events found. In case of a retrieval or parsing error, false is 13298 // returned and Error() can be queried for the exact failure. 13299 func (it *ERC20MintableMinterRemovedIterator) Next() bool { 13300 // If the iterator failed, stop iterating 13301 if it.fail != nil { 13302 return false 13303 } 13304 // If the iterator completed, deliver directly whatever's available 13305 if it.done { 13306 select { 13307 case log := <-it.logs: 13308 it.Event = new(ERC20MintableMinterRemoved) 13309 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13310 it.fail = err 13311 return false 13312 } 13313 it.Event.Raw = log 13314 return true 13315 13316 default: 13317 return false 13318 } 13319 } 13320 // Iterator still in progress, wait for either a data or an error event 13321 select { 13322 case log := <-it.logs: 13323 it.Event = new(ERC20MintableMinterRemoved) 13324 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13325 it.fail = err 13326 return false 13327 } 13328 it.Event.Raw = log 13329 return true 13330 13331 case err := <-it.sub.Err(): 13332 it.done = true 13333 it.fail = err 13334 return it.Next() 13335 } 13336 } 13337 13338 // Error returns any retrieval or parsing error occurred during filtering. 13339 func (it *ERC20MintableMinterRemovedIterator) Error() error { 13340 return it.fail 13341 } 13342 13343 // Close terminates the iteration process, releasing any pending underlying 13344 // resources. 13345 func (it *ERC20MintableMinterRemovedIterator) Close() error { 13346 it.sub.Unsubscribe() 13347 return nil 13348 } 13349 13350 // ERC20MintableMinterRemoved represents a MinterRemoved event raised by the ERC20Mintable contract. 13351 type ERC20MintableMinterRemoved struct { 13352 Account common.Address 13353 Raw types.Log // Blockchain specific contextual infos 13354 } 13355 13356 // FilterMinterRemoved is a free log retrieval operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 13357 // 13358 // Solidity: event MinterRemoved(address indexed account) 13359 func (_ERC20Mintable *ERC20MintableFilterer) FilterMinterRemoved(opts *bind.FilterOpts, account []common.Address) (*ERC20MintableMinterRemovedIterator, error) { 13360 13361 var accountRule []interface{} 13362 for _, accountItem := range account { 13363 accountRule = append(accountRule, accountItem) 13364 } 13365 13366 logs, sub, err := _ERC20Mintable.contract.FilterLogs(opts, "MinterRemoved", accountRule) 13367 if err != nil { 13368 return nil, err 13369 } 13370 return &ERC20MintableMinterRemovedIterator{contract: _ERC20Mintable.contract, event: "MinterRemoved", logs: logs, sub: sub}, nil 13371 } 13372 13373 // WatchMinterRemoved is a free log subscription operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 13374 // 13375 // Solidity: event MinterRemoved(address indexed account) 13376 func (_ERC20Mintable *ERC20MintableFilterer) WatchMinterRemoved(opts *bind.WatchOpts, sink chan<- *ERC20MintableMinterRemoved, account []common.Address) (event.Subscription, error) { 13377 13378 var accountRule []interface{} 13379 for _, accountItem := range account { 13380 accountRule = append(accountRule, accountItem) 13381 } 13382 13383 logs, sub, err := _ERC20Mintable.contract.WatchLogs(opts, "MinterRemoved", accountRule) 13384 if err != nil { 13385 return nil, err 13386 } 13387 return event.NewSubscription(func(quit <-chan struct{}) error { 13388 defer sub.Unsubscribe() 13389 for { 13390 select { 13391 case log := <-logs: 13392 // New log arrived, parse the event and forward to the user 13393 event := new(ERC20MintableMinterRemoved) 13394 if err := _ERC20Mintable.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 13395 return err 13396 } 13397 event.Raw = log 13398 13399 select { 13400 case sink <- event: 13401 case err := <-sub.Err(): 13402 return err 13403 case <-quit: 13404 return nil 13405 } 13406 case err := <-sub.Err(): 13407 return err 13408 case <-quit: 13409 return nil 13410 } 13411 } 13412 }), nil 13413 } 13414 13415 // ParseMinterRemoved is a log parse operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 13416 // 13417 // Solidity: event MinterRemoved(address indexed account) 13418 func (_ERC20Mintable *ERC20MintableFilterer) ParseMinterRemoved(log types.Log) (*ERC20MintableMinterRemoved, error) { 13419 event := new(ERC20MintableMinterRemoved) 13420 if err := _ERC20Mintable.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 13421 return nil, err 13422 } 13423 return event, nil 13424 } 13425 13426 // ERC20MintableTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC20Mintable contract. 13427 type ERC20MintableTransferIterator struct { 13428 Event *ERC20MintableTransfer // Event containing the contract specifics and raw log 13429 13430 contract *bind.BoundContract // Generic contract to use for unpacking event data 13431 event string // Event name to use for unpacking event data 13432 13433 logs chan types.Log // Log channel receiving the found contract events 13434 sub klaytn.Subscription // Subscription for errors, completion and termination 13435 done bool // Whether the subscription completed delivering logs 13436 fail error // Occurred error to stop iteration 13437 } 13438 13439 // Next advances the iterator to the subsequent event, returning whether there 13440 // are any more events found. In case of a retrieval or parsing error, false is 13441 // returned and Error() can be queried for the exact failure. 13442 func (it *ERC20MintableTransferIterator) Next() bool { 13443 // If the iterator failed, stop iterating 13444 if it.fail != nil { 13445 return false 13446 } 13447 // If the iterator completed, deliver directly whatever's available 13448 if it.done { 13449 select { 13450 case log := <-it.logs: 13451 it.Event = new(ERC20MintableTransfer) 13452 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13453 it.fail = err 13454 return false 13455 } 13456 it.Event.Raw = log 13457 return true 13458 13459 default: 13460 return false 13461 } 13462 } 13463 // Iterator still in progress, wait for either a data or an error event 13464 select { 13465 case log := <-it.logs: 13466 it.Event = new(ERC20MintableTransfer) 13467 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 13468 it.fail = err 13469 return false 13470 } 13471 it.Event.Raw = log 13472 return true 13473 13474 case err := <-it.sub.Err(): 13475 it.done = true 13476 it.fail = err 13477 return it.Next() 13478 } 13479 } 13480 13481 // Error returns any retrieval or parsing error occurred during filtering. 13482 func (it *ERC20MintableTransferIterator) Error() error { 13483 return it.fail 13484 } 13485 13486 // Close terminates the iteration process, releasing any pending underlying 13487 // resources. 13488 func (it *ERC20MintableTransferIterator) Close() error { 13489 it.sub.Unsubscribe() 13490 return nil 13491 } 13492 13493 // ERC20MintableTransfer represents a Transfer event raised by the ERC20Mintable contract. 13494 type ERC20MintableTransfer struct { 13495 From common.Address 13496 To common.Address 13497 Value *big.Int 13498 Raw types.Log // Blockchain specific contextual infos 13499 } 13500 13501 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 13502 // 13503 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 13504 func (_ERC20Mintable *ERC20MintableFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*ERC20MintableTransferIterator, error) { 13505 13506 var fromRule []interface{} 13507 for _, fromItem := range from { 13508 fromRule = append(fromRule, fromItem) 13509 } 13510 var toRule []interface{} 13511 for _, toItem := range to { 13512 toRule = append(toRule, toItem) 13513 } 13514 13515 logs, sub, err := _ERC20Mintable.contract.FilterLogs(opts, "Transfer", fromRule, toRule) 13516 if err != nil { 13517 return nil, err 13518 } 13519 return &ERC20MintableTransferIterator{contract: _ERC20Mintable.contract, event: "Transfer", logs: logs, sub: sub}, nil 13520 } 13521 13522 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 13523 // 13524 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 13525 func (_ERC20Mintable *ERC20MintableFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC20MintableTransfer, from []common.Address, to []common.Address) (event.Subscription, error) { 13526 13527 var fromRule []interface{} 13528 for _, fromItem := range from { 13529 fromRule = append(fromRule, fromItem) 13530 } 13531 var toRule []interface{} 13532 for _, toItem := range to { 13533 toRule = append(toRule, toItem) 13534 } 13535 13536 logs, sub, err := _ERC20Mintable.contract.WatchLogs(opts, "Transfer", fromRule, toRule) 13537 if err != nil { 13538 return nil, err 13539 } 13540 return event.NewSubscription(func(quit <-chan struct{}) error { 13541 defer sub.Unsubscribe() 13542 for { 13543 select { 13544 case log := <-logs: 13545 // New log arrived, parse the event and forward to the user 13546 event := new(ERC20MintableTransfer) 13547 if err := _ERC20Mintable.contract.UnpackLog(event, "Transfer", log); err != nil { 13548 return err 13549 } 13550 event.Raw = log 13551 13552 select { 13553 case sink <- event: 13554 case err := <-sub.Err(): 13555 return err 13556 case <-quit: 13557 return nil 13558 } 13559 case err := <-sub.Err(): 13560 return err 13561 case <-quit: 13562 return nil 13563 } 13564 } 13565 }), nil 13566 } 13567 13568 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 13569 // 13570 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 13571 func (_ERC20Mintable *ERC20MintableFilterer) ParseTransfer(log types.Log) (*ERC20MintableTransfer, error) { 13572 event := new(ERC20MintableTransfer) 13573 if err := _ERC20Mintable.contract.UnpackLog(event, "Transfer", log); err != nil { 13574 return nil, err 13575 } 13576 return event, nil 13577 } 13578 13579 // ERC721ABI is the input ABI used to generate the binding from. 13580 const ERC721ABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 13581 13582 // ERC721BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 13583 const ERC721BinRuntime = `608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103ac565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104c3565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561051b565b6100fb600480360360208110156101c757600080fd5b5035610536565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610593565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105fe565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106cd945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610728565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061035282610756565b61039057604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610c72602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b782610536565b9050806001600160a01b0316836001600160a01b0316141561040d57604051600160e51b62461bcd028152600401808060200182810382526021815260200180610cc76021913960400191505060405180910390fd5b336001600160a01b038216148061042957506104298133610728565b61046757604051600160e51b62461bcd028152600401808060200182810382526038815260200180610be76038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104cd3382610773565b61050b57604051600160e51b62461bcd028152600401808060200182810382526031815260200180610ce86031913960400191505060405180910390fd5b61051683838361081a565b505050565b610516838383604051806020016040528060008152506106cd565b6000818152600160205260408120546001600160a01b03168061058d57604051600160e51b62461bcd028152600401808060200182810382526029815260200180610c496029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105dd57604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610c1f602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061058d90610964565b6001600160a01b03821633141561065f5760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106d88484846104c3565b6106e484848484610968565b61072257604051600160e51b62461bcd028152600401808060200182810382526032815260200180610b656032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b600061077e82610756565b6107bc57604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610bbb602c913960400191505060405180910390fd5b60006107c783610536565b9050806001600160a01b0316846001600160a01b031614806108025750836001600160a01b03166107f784610347565b6001600160a01b0316145b8061081257506108128185610728565b949350505050565b826001600160a01b031661082d82610536565b6001600160a01b03161461087557604051600160e51b62461bcd028152600401808060200182810382526029815260200180610c9e6029913960400191505060405180910390fd5b6001600160a01b0382166108bd57604051600160e51b62461bcd028152600401808060200182810382526024815260200180610b976024913960400191505060405180910390fd5b6108c681610aa1565b6001600160a01b03831660009081526003602052604090206108e790610ade565b6001600160a01b038216600090815260036020526040902061090890610af5565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061097c846001600160a01b0316610afe565b61098857506001610812565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a055781810151838201526020016109ed565b50505050905090810190601f168015610a325780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a5457600080fd5b505af1158015610a68573d6000803e3d6000fd5b505050506040513d6020811015610a7e57600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b031615610adb57600081815260026020526040902080546001600160a01b03191690555b50565b8054610af190600163ffffffff610b0416565b9055565b80546001019055565b3b151590565b600082821115610b5e5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a72305820729ef652fa5b3de930aa2053816415426d90b8ede7f21175faa42825db4887780029` 13584 13585 // ERC721FuncSigs maps the 4-byte function signature to its string representation. 13586 var ERC721FuncSigs = map[string]string{ 13587 "095ea7b3": "approve(address,uint256)", 13588 "70a08231": "balanceOf(address)", 13589 "081812fc": "getApproved(uint256)", 13590 "e985e9c5": "isApprovedForAll(address,address)", 13591 "6352211e": "ownerOf(uint256)", 13592 "42842e0e": "safeTransferFrom(address,address,uint256)", 13593 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 13594 "a22cb465": "setApprovalForAll(address,bool)", 13595 "01ffc9a7": "supportsInterface(bytes4)", 13596 "23b872dd": "transferFrom(address,address,uint256)", 13597 } 13598 13599 // ERC721Bin is the compiled bytecode used for deploying new contracts. 13600 var ERC721Bin = "0x608060405234801561001057600080fd5b506100276301ffc9a760e01b61004260201b60201c565b61003d6380ac58cd60e01b61004260201b60201c565b610110565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100d357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610d448061011f6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103ac565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104c3565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561051b565b6100fb600480360360208110156101c757600080fd5b5035610536565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610593565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105fe565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106cd945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b0381358116916020013516610728565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061035282610756565b61039057604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610c72602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b782610536565b9050806001600160a01b0316836001600160a01b0316141561040d57604051600160e51b62461bcd028152600401808060200182810382526021815260200180610cc76021913960400191505060405180910390fd5b336001600160a01b038216148061042957506104298133610728565b61046757604051600160e51b62461bcd028152600401808060200182810382526038815260200180610be76038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104cd3382610773565b61050b57604051600160e51b62461bcd028152600401808060200182810382526031815260200180610ce86031913960400191505060405180910390fd5b61051683838361081a565b505050565b610516838383604051806020016040528060008152506106cd565b6000818152600160205260408120546001600160a01b03168061058d57604051600160e51b62461bcd028152600401808060200182810382526029815260200180610c496029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105dd57604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610c1f602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061058d90610964565b6001600160a01b03821633141561065f5760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106d88484846104c3565b6106e484848484610968565b61072257604051600160e51b62461bcd028152600401808060200182810382526032815260200180610b656032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b600061077e82610756565b6107bc57604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610bbb602c913960400191505060405180910390fd5b60006107c783610536565b9050806001600160a01b0316846001600160a01b031614806108025750836001600160a01b03166107f784610347565b6001600160a01b0316145b8061081257506108128185610728565b949350505050565b826001600160a01b031661082d82610536565b6001600160a01b03161461087557604051600160e51b62461bcd028152600401808060200182810382526029815260200180610c9e6029913960400191505060405180910390fd5b6001600160a01b0382166108bd57604051600160e51b62461bcd028152600401808060200182810382526024815260200180610b976024913960400191505060405180910390fd5b6108c681610aa1565b6001600160a01b03831660009081526003602052604090206108e790610ade565b6001600160a01b038216600090815260036020526040902061090890610af5565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b600061097c846001600160a01b0316610afe565b61098857506001610812565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a055781810151838201526020016109ed565b50505050905090810190601f168015610a325780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a5457600080fd5b505af1158015610a68573d6000803e3d6000fd5b505050506040513d6020811015610a7e57600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b031615610adb57600081815260026020526040902080546001600160a01b03191690555b50565b8054610af190600163ffffffff610b0416565b9055565b80546001019055565b3b151590565b600082821115610b5e5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a72305820729ef652fa5b3de930aa2053816415426d90b8ede7f21175faa42825db4887780029" 13601 13602 // DeployERC721 deploys a new Klaytn contract, binding an instance of ERC721 to it. 13603 func DeployERC721(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC721, error) { 13604 parsed, err := abi.JSON(strings.NewReader(ERC721ABI)) 13605 if err != nil { 13606 return common.Address{}, nil, nil, err 13607 } 13608 13609 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC721Bin), backend) 13610 if err != nil { 13611 return common.Address{}, nil, nil, err 13612 } 13613 return address, tx, &ERC721{ERC721Caller: ERC721Caller{contract: contract}, ERC721Transactor: ERC721Transactor{contract: contract}, ERC721Filterer: ERC721Filterer{contract: contract}}, nil 13614 } 13615 13616 // ERC721 is an auto generated Go binding around a Klaytn contract. 13617 type ERC721 struct { 13618 ERC721Caller // Read-only binding to the contract 13619 ERC721Transactor // Write-only binding to the contract 13620 ERC721Filterer // Log filterer for contract events 13621 } 13622 13623 // ERC721Caller is an auto generated read-only Go binding around a Klaytn contract. 13624 type ERC721Caller struct { 13625 contract *bind.BoundContract // Generic contract wrapper for the low level calls 13626 } 13627 13628 // ERC721Transactor is an auto generated write-only Go binding around a Klaytn contract. 13629 type ERC721Transactor struct { 13630 contract *bind.BoundContract // Generic contract wrapper for the low level calls 13631 } 13632 13633 // ERC721Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 13634 type ERC721Filterer struct { 13635 contract *bind.BoundContract // Generic contract wrapper for the low level calls 13636 } 13637 13638 // ERC721Session is an auto generated Go binding around a Klaytn contract, 13639 // with pre-set call and transact options. 13640 type ERC721Session struct { 13641 Contract *ERC721 // Generic contract binding to set the session for 13642 CallOpts bind.CallOpts // Call options to use throughout this session 13643 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 13644 } 13645 13646 // ERC721CallerSession is an auto generated read-only Go binding around a Klaytn contract, 13647 // with pre-set call options. 13648 type ERC721CallerSession struct { 13649 Contract *ERC721Caller // Generic contract caller binding to set the session for 13650 CallOpts bind.CallOpts // Call options to use throughout this session 13651 } 13652 13653 // ERC721TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 13654 // with pre-set transact options. 13655 type ERC721TransactorSession struct { 13656 Contract *ERC721Transactor // Generic contract transactor binding to set the session for 13657 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 13658 } 13659 13660 // ERC721Raw is an auto generated low-level Go binding around a Klaytn contract. 13661 type ERC721Raw struct { 13662 Contract *ERC721 // Generic contract binding to access the raw methods on 13663 } 13664 13665 // ERC721CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 13666 type ERC721CallerRaw struct { 13667 Contract *ERC721Caller // Generic read-only contract binding to access the raw methods on 13668 } 13669 13670 // ERC721TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 13671 type ERC721TransactorRaw struct { 13672 Contract *ERC721Transactor // Generic write-only contract binding to access the raw methods on 13673 } 13674 13675 // NewERC721 creates a new instance of ERC721, bound to a specific deployed contract. 13676 func NewERC721(address common.Address, backend bind.ContractBackend) (*ERC721, error) { 13677 contract, err := bindERC721(address, backend, backend, backend) 13678 if err != nil { 13679 return nil, err 13680 } 13681 return &ERC721{ERC721Caller: ERC721Caller{contract: contract}, ERC721Transactor: ERC721Transactor{contract: contract}, ERC721Filterer: ERC721Filterer{contract: contract}}, nil 13682 } 13683 13684 // NewERC721Caller creates a new read-only instance of ERC721, bound to a specific deployed contract. 13685 func NewERC721Caller(address common.Address, caller bind.ContractCaller) (*ERC721Caller, error) { 13686 contract, err := bindERC721(address, caller, nil, nil) 13687 if err != nil { 13688 return nil, err 13689 } 13690 return &ERC721Caller{contract: contract}, nil 13691 } 13692 13693 // NewERC721Transactor creates a new write-only instance of ERC721, bound to a specific deployed contract. 13694 func NewERC721Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC721Transactor, error) { 13695 contract, err := bindERC721(address, nil, transactor, nil) 13696 if err != nil { 13697 return nil, err 13698 } 13699 return &ERC721Transactor{contract: contract}, nil 13700 } 13701 13702 // NewERC721Filterer creates a new log filterer instance of ERC721, bound to a specific deployed contract. 13703 func NewERC721Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC721Filterer, error) { 13704 contract, err := bindERC721(address, nil, nil, filterer) 13705 if err != nil { 13706 return nil, err 13707 } 13708 return &ERC721Filterer{contract: contract}, nil 13709 } 13710 13711 // bindERC721 binds a generic wrapper to an already deployed contract. 13712 func bindERC721(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 13713 parsed, err := abi.JSON(strings.NewReader(ERC721ABI)) 13714 if err != nil { 13715 return nil, err 13716 } 13717 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 13718 } 13719 13720 // Call invokes the (constant) contract method with params as input values and 13721 // sets the output to result. The result type might be a single field for simple 13722 // returns, a slice of interfaces for anonymous returns and a struct for named 13723 // returns. 13724 func (_ERC721 *ERC721Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 13725 return _ERC721.Contract.ERC721Caller.contract.Call(opts, result, method, params...) 13726 } 13727 13728 // Transfer initiates a plain transaction to move funds to the contract, calling 13729 // its default method if one is available. 13730 func (_ERC721 *ERC721Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 13731 return _ERC721.Contract.ERC721Transactor.contract.Transfer(opts) 13732 } 13733 13734 // Transact invokes the (paid) contract method with params as input values. 13735 func (_ERC721 *ERC721Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 13736 return _ERC721.Contract.ERC721Transactor.contract.Transact(opts, method, params...) 13737 } 13738 13739 // Call invokes the (constant) contract method with params as input values and 13740 // sets the output to result. The result type might be a single field for simple 13741 // returns, a slice of interfaces for anonymous returns and a struct for named 13742 // returns. 13743 func (_ERC721 *ERC721CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 13744 return _ERC721.Contract.contract.Call(opts, result, method, params...) 13745 } 13746 13747 // Transfer initiates a plain transaction to move funds to the contract, calling 13748 // its default method if one is available. 13749 func (_ERC721 *ERC721TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 13750 return _ERC721.Contract.contract.Transfer(opts) 13751 } 13752 13753 // Transact invokes the (paid) contract method with params as input values. 13754 func (_ERC721 *ERC721TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 13755 return _ERC721.Contract.contract.Transact(opts, method, params...) 13756 } 13757 13758 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 13759 // 13760 // Solidity: function balanceOf(address owner) view returns(uint256) 13761 func (_ERC721 *ERC721Caller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 13762 var ( 13763 ret0 = new(*big.Int) 13764 ) 13765 out := ret0 13766 err := _ERC721.contract.Call(opts, out, "balanceOf", owner) 13767 return *ret0, err 13768 } 13769 13770 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 13771 // 13772 // Solidity: function balanceOf(address owner) view returns(uint256) 13773 func (_ERC721 *ERC721Session) BalanceOf(owner common.Address) (*big.Int, error) { 13774 return _ERC721.Contract.BalanceOf(&_ERC721.CallOpts, owner) 13775 } 13776 13777 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 13778 // 13779 // Solidity: function balanceOf(address owner) view returns(uint256) 13780 func (_ERC721 *ERC721CallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 13781 return _ERC721.Contract.BalanceOf(&_ERC721.CallOpts, owner) 13782 } 13783 13784 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 13785 // 13786 // Solidity: function getApproved(uint256 tokenId) view returns(address) 13787 func (_ERC721 *ERC721Caller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 13788 var ( 13789 ret0 = new(common.Address) 13790 ) 13791 out := ret0 13792 err := _ERC721.contract.Call(opts, out, "getApproved", tokenId) 13793 return *ret0, err 13794 } 13795 13796 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 13797 // 13798 // Solidity: function getApproved(uint256 tokenId) view returns(address) 13799 func (_ERC721 *ERC721Session) GetApproved(tokenId *big.Int) (common.Address, error) { 13800 return _ERC721.Contract.GetApproved(&_ERC721.CallOpts, tokenId) 13801 } 13802 13803 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 13804 // 13805 // Solidity: function getApproved(uint256 tokenId) view returns(address) 13806 func (_ERC721 *ERC721CallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 13807 return _ERC721.Contract.GetApproved(&_ERC721.CallOpts, tokenId) 13808 } 13809 13810 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 13811 // 13812 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 13813 func (_ERC721 *ERC721Caller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 13814 var ( 13815 ret0 = new(bool) 13816 ) 13817 out := ret0 13818 err := _ERC721.contract.Call(opts, out, "isApprovedForAll", owner, operator) 13819 return *ret0, err 13820 } 13821 13822 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 13823 // 13824 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 13825 func (_ERC721 *ERC721Session) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 13826 return _ERC721.Contract.IsApprovedForAll(&_ERC721.CallOpts, owner, operator) 13827 } 13828 13829 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 13830 // 13831 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 13832 func (_ERC721 *ERC721CallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 13833 return _ERC721.Contract.IsApprovedForAll(&_ERC721.CallOpts, owner, operator) 13834 } 13835 13836 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 13837 // 13838 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 13839 func (_ERC721 *ERC721Caller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 13840 var ( 13841 ret0 = new(common.Address) 13842 ) 13843 out := ret0 13844 err := _ERC721.contract.Call(opts, out, "ownerOf", tokenId) 13845 return *ret0, err 13846 } 13847 13848 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 13849 // 13850 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 13851 func (_ERC721 *ERC721Session) OwnerOf(tokenId *big.Int) (common.Address, error) { 13852 return _ERC721.Contract.OwnerOf(&_ERC721.CallOpts, tokenId) 13853 } 13854 13855 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 13856 // 13857 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 13858 func (_ERC721 *ERC721CallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 13859 return _ERC721.Contract.OwnerOf(&_ERC721.CallOpts, tokenId) 13860 } 13861 13862 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 13863 // 13864 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 13865 func (_ERC721 *ERC721Caller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 13866 var ( 13867 ret0 = new(bool) 13868 ) 13869 out := ret0 13870 err := _ERC721.contract.Call(opts, out, "supportsInterface", interfaceId) 13871 return *ret0, err 13872 } 13873 13874 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 13875 // 13876 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 13877 func (_ERC721 *ERC721Session) SupportsInterface(interfaceId [4]byte) (bool, error) { 13878 return _ERC721.Contract.SupportsInterface(&_ERC721.CallOpts, interfaceId) 13879 } 13880 13881 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 13882 // 13883 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 13884 func (_ERC721 *ERC721CallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 13885 return _ERC721.Contract.SupportsInterface(&_ERC721.CallOpts, interfaceId) 13886 } 13887 13888 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 13889 // 13890 // Solidity: function approve(address to, uint256 tokenId) returns() 13891 func (_ERC721 *ERC721Transactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13892 return _ERC721.contract.Transact(opts, "approve", to, tokenId) 13893 } 13894 13895 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 13896 // 13897 // Solidity: function approve(address to, uint256 tokenId) returns() 13898 func (_ERC721 *ERC721Session) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13899 return _ERC721.Contract.Approve(&_ERC721.TransactOpts, to, tokenId) 13900 } 13901 13902 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 13903 // 13904 // Solidity: function approve(address to, uint256 tokenId) returns() 13905 func (_ERC721 *ERC721TransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13906 return _ERC721.Contract.Approve(&_ERC721.TransactOpts, to, tokenId) 13907 } 13908 13909 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 13910 // 13911 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 13912 func (_ERC721 *ERC721Transactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13913 return _ERC721.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 13914 } 13915 13916 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 13917 // 13918 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 13919 func (_ERC721 *ERC721Session) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13920 return _ERC721.Contract.SafeTransferFrom(&_ERC721.TransactOpts, from, to, tokenId) 13921 } 13922 13923 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 13924 // 13925 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 13926 func (_ERC721 *ERC721TransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13927 return _ERC721.Contract.SafeTransferFrom(&_ERC721.TransactOpts, from, to, tokenId) 13928 } 13929 13930 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 13931 // 13932 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 13933 func (_ERC721 *ERC721Transactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 13934 return _ERC721.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, _data) 13935 } 13936 13937 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 13938 // 13939 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 13940 func (_ERC721 *ERC721Session) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 13941 return _ERC721.Contract.SafeTransferFrom0(&_ERC721.TransactOpts, from, to, tokenId, _data) 13942 } 13943 13944 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 13945 // 13946 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 13947 func (_ERC721 *ERC721TransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 13948 return _ERC721.Contract.SafeTransferFrom0(&_ERC721.TransactOpts, from, to, tokenId, _data) 13949 } 13950 13951 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 13952 // 13953 // Solidity: function setApprovalForAll(address to, bool approved) returns() 13954 func (_ERC721 *ERC721Transactor) SetApprovalForAll(opts *bind.TransactOpts, to common.Address, approved bool) (*types.Transaction, error) { 13955 return _ERC721.contract.Transact(opts, "setApprovalForAll", to, approved) 13956 } 13957 13958 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 13959 // 13960 // Solidity: function setApprovalForAll(address to, bool approved) returns() 13961 func (_ERC721 *ERC721Session) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 13962 return _ERC721.Contract.SetApprovalForAll(&_ERC721.TransactOpts, to, approved) 13963 } 13964 13965 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 13966 // 13967 // Solidity: function setApprovalForAll(address to, bool approved) returns() 13968 func (_ERC721 *ERC721TransactorSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 13969 return _ERC721.Contract.SetApprovalForAll(&_ERC721.TransactOpts, to, approved) 13970 } 13971 13972 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 13973 // 13974 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 13975 func (_ERC721 *ERC721Transactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13976 return _ERC721.contract.Transact(opts, "transferFrom", from, to, tokenId) 13977 } 13978 13979 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 13980 // 13981 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 13982 func (_ERC721 *ERC721Session) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13983 return _ERC721.Contract.TransferFrom(&_ERC721.TransactOpts, from, to, tokenId) 13984 } 13985 13986 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 13987 // 13988 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 13989 func (_ERC721 *ERC721TransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 13990 return _ERC721.Contract.TransferFrom(&_ERC721.TransactOpts, from, to, tokenId) 13991 } 13992 13993 // 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. 13994 type ERC721ApprovalIterator struct { 13995 Event *ERC721Approval // Event containing the contract specifics and raw log 13996 13997 contract *bind.BoundContract // Generic contract to use for unpacking event data 13998 event string // Event name to use for unpacking event data 13999 14000 logs chan types.Log // Log channel receiving the found contract events 14001 sub klaytn.Subscription // Subscription for errors, completion and termination 14002 done bool // Whether the subscription completed delivering logs 14003 fail error // Occurred error to stop iteration 14004 } 14005 14006 // Next advances the iterator to the subsequent event, returning whether there 14007 // are any more events found. In case of a retrieval or parsing error, false is 14008 // returned and Error() can be queried for the exact failure. 14009 func (it *ERC721ApprovalIterator) Next() bool { 14010 // If the iterator failed, stop iterating 14011 if it.fail != nil { 14012 return false 14013 } 14014 // If the iterator completed, deliver directly whatever's available 14015 if it.done { 14016 select { 14017 case log := <-it.logs: 14018 it.Event = new(ERC721Approval) 14019 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14020 it.fail = err 14021 return false 14022 } 14023 it.Event.Raw = log 14024 return true 14025 14026 default: 14027 return false 14028 } 14029 } 14030 // Iterator still in progress, wait for either a data or an error event 14031 select { 14032 case log := <-it.logs: 14033 it.Event = new(ERC721Approval) 14034 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14035 it.fail = err 14036 return false 14037 } 14038 it.Event.Raw = log 14039 return true 14040 14041 case err := <-it.sub.Err(): 14042 it.done = true 14043 it.fail = err 14044 return it.Next() 14045 } 14046 } 14047 14048 // Error returns any retrieval or parsing error occurred during filtering. 14049 func (it *ERC721ApprovalIterator) Error() error { 14050 return it.fail 14051 } 14052 14053 // Close terminates the iteration process, releasing any pending underlying 14054 // resources. 14055 func (it *ERC721ApprovalIterator) Close() error { 14056 it.sub.Unsubscribe() 14057 return nil 14058 } 14059 14060 // ERC721Approval represents a Approval event raised by the ERC721 contract. 14061 type ERC721Approval struct { 14062 Owner common.Address 14063 Approved common.Address 14064 TokenId *big.Int 14065 Raw types.Log // Blockchain specific contextual infos 14066 } 14067 14068 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 14069 // 14070 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 14071 func (_ERC721 *ERC721Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*ERC721ApprovalIterator, error) { 14072 14073 var ownerRule []interface{} 14074 for _, ownerItem := range owner { 14075 ownerRule = append(ownerRule, ownerItem) 14076 } 14077 var approvedRule []interface{} 14078 for _, approvedItem := range approved { 14079 approvedRule = append(approvedRule, approvedItem) 14080 } 14081 var tokenIdRule []interface{} 14082 for _, tokenIdItem := range tokenId { 14083 tokenIdRule = append(tokenIdRule, tokenIdItem) 14084 } 14085 14086 logs, sub, err := _ERC721.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 14087 if err != nil { 14088 return nil, err 14089 } 14090 return &ERC721ApprovalIterator{contract: _ERC721.contract, event: "Approval", logs: logs, sub: sub}, nil 14091 } 14092 14093 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 14094 // 14095 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 14096 func (_ERC721 *ERC721Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721Approval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 14097 14098 var ownerRule []interface{} 14099 for _, ownerItem := range owner { 14100 ownerRule = append(ownerRule, ownerItem) 14101 } 14102 var approvedRule []interface{} 14103 for _, approvedItem := range approved { 14104 approvedRule = append(approvedRule, approvedItem) 14105 } 14106 var tokenIdRule []interface{} 14107 for _, tokenIdItem := range tokenId { 14108 tokenIdRule = append(tokenIdRule, tokenIdItem) 14109 } 14110 14111 logs, sub, err := _ERC721.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 14112 if err != nil { 14113 return nil, err 14114 } 14115 return event.NewSubscription(func(quit <-chan struct{}) error { 14116 defer sub.Unsubscribe() 14117 for { 14118 select { 14119 case log := <-logs: 14120 // New log arrived, parse the event and forward to the user 14121 event := new(ERC721Approval) 14122 if err := _ERC721.contract.UnpackLog(event, "Approval", log); err != nil { 14123 return err 14124 } 14125 event.Raw = log 14126 14127 select { 14128 case sink <- event: 14129 case err := <-sub.Err(): 14130 return err 14131 case <-quit: 14132 return nil 14133 } 14134 case err := <-sub.Err(): 14135 return err 14136 case <-quit: 14137 return nil 14138 } 14139 } 14140 }), nil 14141 } 14142 14143 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 14144 // 14145 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 14146 func (_ERC721 *ERC721Filterer) ParseApproval(log types.Log) (*ERC721Approval, error) { 14147 event := new(ERC721Approval) 14148 if err := _ERC721.contract.UnpackLog(event, "Approval", log); err != nil { 14149 return nil, err 14150 } 14151 return event, nil 14152 } 14153 14154 // ERC721ApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ERC721 contract. 14155 type ERC721ApprovalForAllIterator struct { 14156 Event *ERC721ApprovalForAll // Event containing the contract specifics and raw log 14157 14158 contract *bind.BoundContract // Generic contract to use for unpacking event data 14159 event string // Event name to use for unpacking event data 14160 14161 logs chan types.Log // Log channel receiving the found contract events 14162 sub klaytn.Subscription // Subscription for errors, completion and termination 14163 done bool // Whether the subscription completed delivering logs 14164 fail error // Occurred error to stop iteration 14165 } 14166 14167 // Next advances the iterator to the subsequent event, returning whether there 14168 // are any more events found. In case of a retrieval or parsing error, false is 14169 // returned and Error() can be queried for the exact failure. 14170 func (it *ERC721ApprovalForAllIterator) Next() bool { 14171 // If the iterator failed, stop iterating 14172 if it.fail != nil { 14173 return false 14174 } 14175 // If the iterator completed, deliver directly whatever's available 14176 if it.done { 14177 select { 14178 case log := <-it.logs: 14179 it.Event = new(ERC721ApprovalForAll) 14180 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14181 it.fail = err 14182 return false 14183 } 14184 it.Event.Raw = log 14185 return true 14186 14187 default: 14188 return false 14189 } 14190 } 14191 // Iterator still in progress, wait for either a data or an error event 14192 select { 14193 case log := <-it.logs: 14194 it.Event = new(ERC721ApprovalForAll) 14195 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14196 it.fail = err 14197 return false 14198 } 14199 it.Event.Raw = log 14200 return true 14201 14202 case err := <-it.sub.Err(): 14203 it.done = true 14204 it.fail = err 14205 return it.Next() 14206 } 14207 } 14208 14209 // Error returns any retrieval or parsing error occurred during filtering. 14210 func (it *ERC721ApprovalForAllIterator) Error() error { 14211 return it.fail 14212 } 14213 14214 // Close terminates the iteration process, releasing any pending underlying 14215 // resources. 14216 func (it *ERC721ApprovalForAllIterator) Close() error { 14217 it.sub.Unsubscribe() 14218 return nil 14219 } 14220 14221 // ERC721ApprovalForAll represents a ApprovalForAll event raised by the ERC721 contract. 14222 type ERC721ApprovalForAll struct { 14223 Owner common.Address 14224 Operator common.Address 14225 Approved bool 14226 Raw types.Log // Blockchain specific contextual infos 14227 } 14228 14229 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 14230 // 14231 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 14232 func (_ERC721 *ERC721Filterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ERC721ApprovalForAllIterator, error) { 14233 14234 var ownerRule []interface{} 14235 for _, ownerItem := range owner { 14236 ownerRule = append(ownerRule, ownerItem) 14237 } 14238 var operatorRule []interface{} 14239 for _, operatorItem := range operator { 14240 operatorRule = append(operatorRule, operatorItem) 14241 } 14242 14243 logs, sub, err := _ERC721.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 14244 if err != nil { 14245 return nil, err 14246 } 14247 return &ERC721ApprovalForAllIterator{contract: _ERC721.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 14248 } 14249 14250 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 14251 // 14252 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 14253 func (_ERC721 *ERC721Filterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ERC721ApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 14254 14255 var ownerRule []interface{} 14256 for _, ownerItem := range owner { 14257 ownerRule = append(ownerRule, ownerItem) 14258 } 14259 var operatorRule []interface{} 14260 for _, operatorItem := range operator { 14261 operatorRule = append(operatorRule, operatorItem) 14262 } 14263 14264 logs, sub, err := _ERC721.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 14265 if err != nil { 14266 return nil, err 14267 } 14268 return event.NewSubscription(func(quit <-chan struct{}) error { 14269 defer sub.Unsubscribe() 14270 for { 14271 select { 14272 case log := <-logs: 14273 // New log arrived, parse the event and forward to the user 14274 event := new(ERC721ApprovalForAll) 14275 if err := _ERC721.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 14276 return err 14277 } 14278 event.Raw = log 14279 14280 select { 14281 case sink <- event: 14282 case err := <-sub.Err(): 14283 return err 14284 case <-quit: 14285 return nil 14286 } 14287 case err := <-sub.Err(): 14288 return err 14289 case <-quit: 14290 return nil 14291 } 14292 } 14293 }), nil 14294 } 14295 14296 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 14297 // 14298 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 14299 func (_ERC721 *ERC721Filterer) ParseApprovalForAll(log types.Log) (*ERC721ApprovalForAll, error) { 14300 event := new(ERC721ApprovalForAll) 14301 if err := _ERC721.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 14302 return nil, err 14303 } 14304 return event, nil 14305 } 14306 14307 // 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. 14308 type ERC721TransferIterator struct { 14309 Event *ERC721Transfer // Event containing the contract specifics and raw log 14310 14311 contract *bind.BoundContract // Generic contract to use for unpacking event data 14312 event string // Event name to use for unpacking event data 14313 14314 logs chan types.Log // Log channel receiving the found contract events 14315 sub klaytn.Subscription // Subscription for errors, completion and termination 14316 done bool // Whether the subscription completed delivering logs 14317 fail error // Occurred error to stop iteration 14318 } 14319 14320 // Next advances the iterator to the subsequent event, returning whether there 14321 // are any more events found. In case of a retrieval or parsing error, false is 14322 // returned and Error() can be queried for the exact failure. 14323 func (it *ERC721TransferIterator) Next() bool { 14324 // If the iterator failed, stop iterating 14325 if it.fail != nil { 14326 return false 14327 } 14328 // If the iterator completed, deliver directly whatever's available 14329 if it.done { 14330 select { 14331 case log := <-it.logs: 14332 it.Event = new(ERC721Transfer) 14333 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14334 it.fail = err 14335 return false 14336 } 14337 it.Event.Raw = log 14338 return true 14339 14340 default: 14341 return false 14342 } 14343 } 14344 // Iterator still in progress, wait for either a data or an error event 14345 select { 14346 case log := <-it.logs: 14347 it.Event = new(ERC721Transfer) 14348 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14349 it.fail = err 14350 return false 14351 } 14352 it.Event.Raw = log 14353 return true 14354 14355 case err := <-it.sub.Err(): 14356 it.done = true 14357 it.fail = err 14358 return it.Next() 14359 } 14360 } 14361 14362 // Error returns any retrieval or parsing error occurred during filtering. 14363 func (it *ERC721TransferIterator) Error() error { 14364 return it.fail 14365 } 14366 14367 // Close terminates the iteration process, releasing any pending underlying 14368 // resources. 14369 func (it *ERC721TransferIterator) Close() error { 14370 it.sub.Unsubscribe() 14371 return nil 14372 } 14373 14374 // ERC721Transfer represents a Transfer event raised by the ERC721 contract. 14375 type ERC721Transfer struct { 14376 From common.Address 14377 To common.Address 14378 TokenId *big.Int 14379 Raw types.Log // Blockchain specific contextual infos 14380 } 14381 14382 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 14383 // 14384 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 14385 func (_ERC721 *ERC721Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*ERC721TransferIterator, error) { 14386 14387 var fromRule []interface{} 14388 for _, fromItem := range from { 14389 fromRule = append(fromRule, fromItem) 14390 } 14391 var toRule []interface{} 14392 for _, toItem := range to { 14393 toRule = append(toRule, toItem) 14394 } 14395 var tokenIdRule []interface{} 14396 for _, tokenIdItem := range tokenId { 14397 tokenIdRule = append(tokenIdRule, tokenIdItem) 14398 } 14399 14400 logs, sub, err := _ERC721.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 14401 if err != nil { 14402 return nil, err 14403 } 14404 return &ERC721TransferIterator{contract: _ERC721.contract, event: "Transfer", logs: logs, sub: sub}, nil 14405 } 14406 14407 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 14408 // 14409 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 14410 func (_ERC721 *ERC721Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721Transfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 14411 14412 var fromRule []interface{} 14413 for _, fromItem := range from { 14414 fromRule = append(fromRule, fromItem) 14415 } 14416 var toRule []interface{} 14417 for _, toItem := range to { 14418 toRule = append(toRule, toItem) 14419 } 14420 var tokenIdRule []interface{} 14421 for _, tokenIdItem := range tokenId { 14422 tokenIdRule = append(tokenIdRule, tokenIdItem) 14423 } 14424 14425 logs, sub, err := _ERC721.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 14426 if err != nil { 14427 return nil, err 14428 } 14429 return event.NewSubscription(func(quit <-chan struct{}) error { 14430 defer sub.Unsubscribe() 14431 for { 14432 select { 14433 case log := <-logs: 14434 // New log arrived, parse the event and forward to the user 14435 event := new(ERC721Transfer) 14436 if err := _ERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 14437 return err 14438 } 14439 event.Raw = log 14440 14441 select { 14442 case sink <- event: 14443 case err := <-sub.Err(): 14444 return err 14445 case <-quit: 14446 return nil 14447 } 14448 case err := <-sub.Err(): 14449 return err 14450 case <-quit: 14451 return nil 14452 } 14453 } 14454 }), nil 14455 } 14456 14457 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 14458 // 14459 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 14460 func (_ERC721 *ERC721Filterer) ParseTransfer(log types.Log) (*ERC721Transfer, error) { 14461 event := new(ERC721Transfer) 14462 if err := _ERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 14463 return nil, err 14464 } 14465 return event, nil 14466 } 14467 14468 // ERC721BurnableABI is the input ABI used to generate the binding from. 14469 const ERC721BurnableABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 14470 14471 // ERC721BurnableBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 14472 const ERC721BurnableBinRuntime = `608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d4565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104eb565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610543565b61014e600480360360208110156101d257600080fd5b503561055e565b610106600480360360208110156101ef57600080fd5b50356105b2565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b031661060f565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b038135169060200135151561067a565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610749945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b03813581169160200135166107a4565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107d2565b6103b857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610dd8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103df826105b2565b9050806001600160a01b0316836001600160a01b0316141561043557604051600160e51b62461bcd028152600401808060200182810382526021815260200180610e2d6021913960400191505060405180910390fd5b336001600160a01b0382161480610451575061045181336107a4565b61048f57604051600160e51b62461bcd028152600401808060200182810382526038815260200180610d4d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104f533826107ef565b61053357604051600160e51b62461bcd028152600401808060200182810382526031815260200180610e4e6031913960400191505060405180910390fd5b61053e838383610896565b505050565b61053e83838360405180602001604052806000815250610749565b61056833826107ef565b6105a657604051600160e51b62461bcd028152600401808060200182810382526030815260200180610ea46030913960400191505060405180910390fd5b6105af816109e0565b50565b6000818152600160205260408120546001600160a01b03168061060957604051600160e51b62461bcd028152600401808060200182810382526029815260200180610daf6029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661065957604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610d85602a913960400191505060405180910390fd5b6001600160a01b0382166000908152600360205260409020610609906109f2565b6001600160a01b0382163314156106db5760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6107548484846104eb565b610760848484846109f6565b61079e57604051600160e51b62461bcd028152600401808060200182810382526032815260200180610ccb6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107fa826107d2565b61083857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610d21602c913960400191505060405180910390fd5b6000610843836105b2565b9050806001600160a01b0316846001600160a01b0316148061087e5750836001600160a01b03166108738461036f565b6001600160a01b0316145b8061088e575061088e81856107a4565b949350505050565b826001600160a01b03166108a9826105b2565b6001600160a01b0316146108f157604051600160e51b62461bcd028152600401808060200182810382526029815260200180610e046029913960400191505060405180910390fd5b6001600160a01b03821661093957604051600160e51b62461bcd028152600401808060200182810382526024815260200180610cfd6024913960400191505060405180910390fd5b61094281610b2f565b6001600160a01b038316600090815260036020526040902061096390610b6a565b6001600160a01b038216600090815260036020526040902061098490610b81565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105af6109ec826105b2565b82610b8a565b5490565b6000610a0a846001600160a01b0316610c64565b610a165750600161088e565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a93578181015183820152602001610a7b565b50505050905090810190601f168015610ac05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610ae257600080fd5b505af1158015610af6573d6000803e3d6000fd5b505050506040513d6020811015610b0c57600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b0316156105af57600090815260026020526040902080546001600160a01b0319169055565b8054610b7d90600163ffffffff610c6a16565b9055565b80546001019055565b816001600160a01b0316610b9d826105b2565b6001600160a01b031614610be557604051600160e51b62461bcd028152600401808060200182810382526025815260200180610e7f6025913960400191505060405180910390fd5b610bee81610b2f565b6001600160a01b0382166000908152600360205260409020610c0f90610b6a565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610cc45760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a7230582035986e074f001b98f3d4f8e669063ef8d5efcf5cb63f5103e5e5296048223c1d0029` 14473 14474 // ERC721BurnableFuncSigs maps the 4-byte function signature to its string representation. 14475 var ERC721BurnableFuncSigs = map[string]string{ 14476 "095ea7b3": "approve(address,uint256)", 14477 "70a08231": "balanceOf(address)", 14478 "42966c68": "burn(uint256)", 14479 "081812fc": "getApproved(uint256)", 14480 "e985e9c5": "isApprovedForAll(address,address)", 14481 "6352211e": "ownerOf(uint256)", 14482 "42842e0e": "safeTransferFrom(address,address,uint256)", 14483 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 14484 "a22cb465": "setApprovalForAll(address,bool)", 14485 "01ffc9a7": "supportsInterface(bytes4)", 14486 "23b872dd": "transferFrom(address,address,uint256)", 14487 } 14488 14489 // ERC721BurnableBin is the compiled bytecode used for deploying new contracts. 14490 var ERC721BurnableBin = "0x608060405261001a6301ffc9a760e01b61003560201b60201c565b6100306380ac58cd60e01b61003560201b60201c565b610103565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156100c657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b610eff806101126000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806342966c681161007157806342966c68146101bc5780636352211e146101d957806370a08231146101f6578063a22cb4651461022e578063b88d4fde1461025c578063e985e9c514610322576100a9565b806301ffc9a7146100ae578063081812fc146100e9578063095ea7b31461012257806323b872dd1461015057806342842e0e14610186575b600080fd5b6100d5600480360360208110156100c457600080fd5b50356001600160e01b031916610350565b604080519115158252519081900360200190f35b610106600480360360208110156100ff57600080fd5b503561036f565b604080516001600160a01b039092168252519081900360200190f35b61014e6004803603604081101561013857600080fd5b506001600160a01b0381351690602001356103d4565b005b61014e6004803603606081101561016657600080fd5b506001600160a01b038135811691602081013590911690604001356104eb565b61014e6004803603606081101561019c57600080fd5b506001600160a01b03813581169160208101359091169060400135610543565b61014e600480360360208110156101d257600080fd5b503561055e565b610106600480360360208110156101ef57600080fd5b50356105b2565b61021c6004803603602081101561020c57600080fd5b50356001600160a01b031661060f565b60408051918252519081900360200190f35b61014e6004803603604081101561024457600080fd5b506001600160a01b038135169060200135151561067a565b61014e6004803603608081101561027257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102ad57600080fd5b8201836020820111156102bf57600080fd5b803590602001918460018302840111640100000000831117156102e157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610749945050505050565b6100d56004803603604081101561033857600080fd5b506001600160a01b03813581169160200135166107a4565b6001600160e01b03191660009081526020819052604090205460ff1690565b600061037a826107d2565b6103b857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610dd8602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103df826105b2565b9050806001600160a01b0316836001600160a01b0316141561043557604051600160e51b62461bcd028152600401808060200182810382526021815260200180610e2d6021913960400191505060405180910390fd5b336001600160a01b0382161480610451575061045181336107a4565b61048f57604051600160e51b62461bcd028152600401808060200182810382526038815260200180610d4d6038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104f533826107ef565b61053357604051600160e51b62461bcd028152600401808060200182810382526031815260200180610e4e6031913960400191505060405180910390fd5b61053e838383610896565b505050565b61053e83838360405180602001604052806000815250610749565b61056833826107ef565b6105a657604051600160e51b62461bcd028152600401808060200182810382526030815260200180610ea46030913960400191505060405180910390fd5b6105af816109e0565b50565b6000818152600160205260408120546001600160a01b03168061060957604051600160e51b62461bcd028152600401808060200182810382526029815260200180610daf6029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661065957604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610d85602a913960400191505060405180910390fd5b6001600160a01b0382166000908152600360205260409020610609906109f2565b6001600160a01b0382163314156106db5760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6107548484846104eb565b610760848484846109f6565b61079e57604051600160e51b62461bcd028152600401808060200182810382526032815260200180610ccb6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107fa826107d2565b61083857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610d21602c913960400191505060405180910390fd5b6000610843836105b2565b9050806001600160a01b0316846001600160a01b0316148061087e5750836001600160a01b03166108738461036f565b6001600160a01b0316145b8061088e575061088e81856107a4565b949350505050565b826001600160a01b03166108a9826105b2565b6001600160a01b0316146108f157604051600160e51b62461bcd028152600401808060200182810382526029815260200180610e046029913960400191505060405180910390fd5b6001600160a01b03821661093957604051600160e51b62461bcd028152600401808060200182810382526024815260200180610cfd6024913960400191505060405180910390fd5b61094281610b2f565b6001600160a01b038316600090815260036020526040902061096390610b6a565b6001600160a01b038216600090815260036020526040902061098490610b81565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6105af6109ec826105b2565b82610b8a565b5490565b6000610a0a846001600160a01b0316610c64565b610a165750600161088e565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a93578181015183820152602001610a7b565b50505050905090810190601f168015610ac05780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610ae257600080fd5b505af1158015610af6573d6000803e3d6000fd5b505050506040513d6020811015610b0c57600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b0316156105af57600090815260026020526040902080546001600160a01b0319169055565b8054610b7d90600163ffffffff610c6a16565b9055565b80546001019055565b816001600160a01b0316610b9d826105b2565b6001600160a01b031614610be557604051600160e51b62461bcd028152600401808060200182810382526025815260200180610e7f6025913960400191505060405180910390fd5b610bee81610b2f565b6001600160a01b0382166000908152600360205260409020610c0f90610b6a565b60008181526001602052604080822080546001600160a01b0319169055518291906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b3b151590565b600082821115610cc45760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f7665644552433732313a206275726e206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a7230582035986e074f001b98f3d4f8e669063ef8d5efcf5cb63f5103e5e5296048223c1d0029" 14491 14492 // DeployERC721Burnable deploys a new Klaytn contract, binding an instance of ERC721Burnable to it. 14493 func DeployERC721Burnable(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC721Burnable, error) { 14494 parsed, err := abi.JSON(strings.NewReader(ERC721BurnableABI)) 14495 if err != nil { 14496 return common.Address{}, nil, nil, err 14497 } 14498 14499 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC721BurnableBin), backend) 14500 if err != nil { 14501 return common.Address{}, nil, nil, err 14502 } 14503 return address, tx, &ERC721Burnable{ERC721BurnableCaller: ERC721BurnableCaller{contract: contract}, ERC721BurnableTransactor: ERC721BurnableTransactor{contract: contract}, ERC721BurnableFilterer: ERC721BurnableFilterer{contract: contract}}, nil 14504 } 14505 14506 // ERC721Burnable is an auto generated Go binding around a Klaytn contract. 14507 type ERC721Burnable struct { 14508 ERC721BurnableCaller // Read-only binding to the contract 14509 ERC721BurnableTransactor // Write-only binding to the contract 14510 ERC721BurnableFilterer // Log filterer for contract events 14511 } 14512 14513 // ERC721BurnableCaller is an auto generated read-only Go binding around a Klaytn contract. 14514 type ERC721BurnableCaller struct { 14515 contract *bind.BoundContract // Generic contract wrapper for the low level calls 14516 } 14517 14518 // ERC721BurnableTransactor is an auto generated write-only Go binding around a Klaytn contract. 14519 type ERC721BurnableTransactor struct { 14520 contract *bind.BoundContract // Generic contract wrapper for the low level calls 14521 } 14522 14523 // ERC721BurnableFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 14524 type ERC721BurnableFilterer struct { 14525 contract *bind.BoundContract // Generic contract wrapper for the low level calls 14526 } 14527 14528 // ERC721BurnableSession is an auto generated Go binding around a Klaytn contract, 14529 // with pre-set call and transact options. 14530 type ERC721BurnableSession struct { 14531 Contract *ERC721Burnable // Generic contract binding to set the session for 14532 CallOpts bind.CallOpts // Call options to use throughout this session 14533 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 14534 } 14535 14536 // ERC721BurnableCallerSession is an auto generated read-only Go binding around a Klaytn contract, 14537 // with pre-set call options. 14538 type ERC721BurnableCallerSession struct { 14539 Contract *ERC721BurnableCaller // Generic contract caller binding to set the session for 14540 CallOpts bind.CallOpts // Call options to use throughout this session 14541 } 14542 14543 // ERC721BurnableTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 14544 // with pre-set transact options. 14545 type ERC721BurnableTransactorSession struct { 14546 Contract *ERC721BurnableTransactor // Generic contract transactor binding to set the session for 14547 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 14548 } 14549 14550 // ERC721BurnableRaw is an auto generated low-level Go binding around a Klaytn contract. 14551 type ERC721BurnableRaw struct { 14552 Contract *ERC721Burnable // Generic contract binding to access the raw methods on 14553 } 14554 14555 // ERC721BurnableCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 14556 type ERC721BurnableCallerRaw struct { 14557 Contract *ERC721BurnableCaller // Generic read-only contract binding to access the raw methods on 14558 } 14559 14560 // ERC721BurnableTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 14561 type ERC721BurnableTransactorRaw struct { 14562 Contract *ERC721BurnableTransactor // Generic write-only contract binding to access the raw methods on 14563 } 14564 14565 // NewERC721Burnable creates a new instance of ERC721Burnable, bound to a specific deployed contract. 14566 func NewERC721Burnable(address common.Address, backend bind.ContractBackend) (*ERC721Burnable, error) { 14567 contract, err := bindERC721Burnable(address, backend, backend, backend) 14568 if err != nil { 14569 return nil, err 14570 } 14571 return &ERC721Burnable{ERC721BurnableCaller: ERC721BurnableCaller{contract: contract}, ERC721BurnableTransactor: ERC721BurnableTransactor{contract: contract}, ERC721BurnableFilterer: ERC721BurnableFilterer{contract: contract}}, nil 14572 } 14573 14574 // NewERC721BurnableCaller creates a new read-only instance of ERC721Burnable, bound to a specific deployed contract. 14575 func NewERC721BurnableCaller(address common.Address, caller bind.ContractCaller) (*ERC721BurnableCaller, error) { 14576 contract, err := bindERC721Burnable(address, caller, nil, nil) 14577 if err != nil { 14578 return nil, err 14579 } 14580 return &ERC721BurnableCaller{contract: contract}, nil 14581 } 14582 14583 // NewERC721BurnableTransactor creates a new write-only instance of ERC721Burnable, bound to a specific deployed contract. 14584 func NewERC721BurnableTransactor(address common.Address, transactor bind.ContractTransactor) (*ERC721BurnableTransactor, error) { 14585 contract, err := bindERC721Burnable(address, nil, transactor, nil) 14586 if err != nil { 14587 return nil, err 14588 } 14589 return &ERC721BurnableTransactor{contract: contract}, nil 14590 } 14591 14592 // NewERC721BurnableFilterer creates a new log filterer instance of ERC721Burnable, bound to a specific deployed contract. 14593 func NewERC721BurnableFilterer(address common.Address, filterer bind.ContractFilterer) (*ERC721BurnableFilterer, error) { 14594 contract, err := bindERC721Burnable(address, nil, nil, filterer) 14595 if err != nil { 14596 return nil, err 14597 } 14598 return &ERC721BurnableFilterer{contract: contract}, nil 14599 } 14600 14601 // bindERC721Burnable binds a generic wrapper to an already deployed contract. 14602 func bindERC721Burnable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 14603 parsed, err := abi.JSON(strings.NewReader(ERC721BurnableABI)) 14604 if err != nil { 14605 return nil, err 14606 } 14607 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 14608 } 14609 14610 // Call invokes the (constant) contract method with params as input values and 14611 // sets the output to result. The result type might be a single field for simple 14612 // returns, a slice of interfaces for anonymous returns and a struct for named 14613 // returns. 14614 func (_ERC721Burnable *ERC721BurnableRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 14615 return _ERC721Burnable.Contract.ERC721BurnableCaller.contract.Call(opts, result, method, params...) 14616 } 14617 14618 // Transfer initiates a plain transaction to move funds to the contract, calling 14619 // its default method if one is available. 14620 func (_ERC721Burnable *ERC721BurnableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 14621 return _ERC721Burnable.Contract.ERC721BurnableTransactor.contract.Transfer(opts) 14622 } 14623 14624 // Transact invokes the (paid) contract method with params as input values. 14625 func (_ERC721Burnable *ERC721BurnableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 14626 return _ERC721Burnable.Contract.ERC721BurnableTransactor.contract.Transact(opts, method, params...) 14627 } 14628 14629 // Call invokes the (constant) contract method with params as input values and 14630 // sets the output to result. The result type might be a single field for simple 14631 // returns, a slice of interfaces for anonymous returns and a struct for named 14632 // returns. 14633 func (_ERC721Burnable *ERC721BurnableCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 14634 return _ERC721Burnable.Contract.contract.Call(opts, result, method, params...) 14635 } 14636 14637 // Transfer initiates a plain transaction to move funds to the contract, calling 14638 // its default method if one is available. 14639 func (_ERC721Burnable *ERC721BurnableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 14640 return _ERC721Burnable.Contract.contract.Transfer(opts) 14641 } 14642 14643 // Transact invokes the (paid) contract method with params as input values. 14644 func (_ERC721Burnable *ERC721BurnableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 14645 return _ERC721Burnable.Contract.contract.Transact(opts, method, params...) 14646 } 14647 14648 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 14649 // 14650 // Solidity: function balanceOf(address owner) view returns(uint256) 14651 func (_ERC721Burnable *ERC721BurnableCaller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 14652 var ( 14653 ret0 = new(*big.Int) 14654 ) 14655 out := ret0 14656 err := _ERC721Burnable.contract.Call(opts, out, "balanceOf", owner) 14657 return *ret0, err 14658 } 14659 14660 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 14661 // 14662 // Solidity: function balanceOf(address owner) view returns(uint256) 14663 func (_ERC721Burnable *ERC721BurnableSession) BalanceOf(owner common.Address) (*big.Int, error) { 14664 return _ERC721Burnable.Contract.BalanceOf(&_ERC721Burnable.CallOpts, owner) 14665 } 14666 14667 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 14668 // 14669 // Solidity: function balanceOf(address owner) view returns(uint256) 14670 func (_ERC721Burnable *ERC721BurnableCallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 14671 return _ERC721Burnable.Contract.BalanceOf(&_ERC721Burnable.CallOpts, owner) 14672 } 14673 14674 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 14675 // 14676 // Solidity: function getApproved(uint256 tokenId) view returns(address) 14677 func (_ERC721Burnable *ERC721BurnableCaller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 14678 var ( 14679 ret0 = new(common.Address) 14680 ) 14681 out := ret0 14682 err := _ERC721Burnable.contract.Call(opts, out, "getApproved", tokenId) 14683 return *ret0, err 14684 } 14685 14686 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 14687 // 14688 // Solidity: function getApproved(uint256 tokenId) view returns(address) 14689 func (_ERC721Burnable *ERC721BurnableSession) GetApproved(tokenId *big.Int) (common.Address, error) { 14690 return _ERC721Burnable.Contract.GetApproved(&_ERC721Burnable.CallOpts, tokenId) 14691 } 14692 14693 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 14694 // 14695 // Solidity: function getApproved(uint256 tokenId) view returns(address) 14696 func (_ERC721Burnable *ERC721BurnableCallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 14697 return _ERC721Burnable.Contract.GetApproved(&_ERC721Burnable.CallOpts, tokenId) 14698 } 14699 14700 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 14701 // 14702 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 14703 func (_ERC721Burnable *ERC721BurnableCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 14704 var ( 14705 ret0 = new(bool) 14706 ) 14707 out := ret0 14708 err := _ERC721Burnable.contract.Call(opts, out, "isApprovedForAll", owner, operator) 14709 return *ret0, err 14710 } 14711 14712 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 14713 // 14714 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 14715 func (_ERC721Burnable *ERC721BurnableSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 14716 return _ERC721Burnable.Contract.IsApprovedForAll(&_ERC721Burnable.CallOpts, owner, operator) 14717 } 14718 14719 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 14720 // 14721 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 14722 func (_ERC721Burnable *ERC721BurnableCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 14723 return _ERC721Burnable.Contract.IsApprovedForAll(&_ERC721Burnable.CallOpts, owner, operator) 14724 } 14725 14726 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 14727 // 14728 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 14729 func (_ERC721Burnable *ERC721BurnableCaller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 14730 var ( 14731 ret0 = new(common.Address) 14732 ) 14733 out := ret0 14734 err := _ERC721Burnable.contract.Call(opts, out, "ownerOf", tokenId) 14735 return *ret0, err 14736 } 14737 14738 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 14739 // 14740 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 14741 func (_ERC721Burnable *ERC721BurnableSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 14742 return _ERC721Burnable.Contract.OwnerOf(&_ERC721Burnable.CallOpts, tokenId) 14743 } 14744 14745 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 14746 // 14747 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 14748 func (_ERC721Burnable *ERC721BurnableCallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 14749 return _ERC721Burnable.Contract.OwnerOf(&_ERC721Burnable.CallOpts, tokenId) 14750 } 14751 14752 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 14753 // 14754 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 14755 func (_ERC721Burnable *ERC721BurnableCaller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 14756 var ( 14757 ret0 = new(bool) 14758 ) 14759 out := ret0 14760 err := _ERC721Burnable.contract.Call(opts, out, "supportsInterface", interfaceId) 14761 return *ret0, err 14762 } 14763 14764 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 14765 // 14766 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 14767 func (_ERC721Burnable *ERC721BurnableSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 14768 return _ERC721Burnable.Contract.SupportsInterface(&_ERC721Burnable.CallOpts, interfaceId) 14769 } 14770 14771 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 14772 // 14773 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 14774 func (_ERC721Burnable *ERC721BurnableCallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 14775 return _ERC721Burnable.Contract.SupportsInterface(&_ERC721Burnable.CallOpts, interfaceId) 14776 } 14777 14778 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 14779 // 14780 // Solidity: function approve(address to, uint256 tokenId) returns() 14781 func (_ERC721Burnable *ERC721BurnableTransactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14782 return _ERC721Burnable.contract.Transact(opts, "approve", to, tokenId) 14783 } 14784 14785 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 14786 // 14787 // Solidity: function approve(address to, uint256 tokenId) returns() 14788 func (_ERC721Burnable *ERC721BurnableSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14789 return _ERC721Burnable.Contract.Approve(&_ERC721Burnable.TransactOpts, to, tokenId) 14790 } 14791 14792 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 14793 // 14794 // Solidity: function approve(address to, uint256 tokenId) returns() 14795 func (_ERC721Burnable *ERC721BurnableTransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14796 return _ERC721Burnable.Contract.Approve(&_ERC721Burnable.TransactOpts, to, tokenId) 14797 } 14798 14799 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 14800 // 14801 // Solidity: function burn(uint256 tokenId) returns() 14802 func (_ERC721Burnable *ERC721BurnableTransactor) Burn(opts *bind.TransactOpts, tokenId *big.Int) (*types.Transaction, error) { 14803 return _ERC721Burnable.contract.Transact(opts, "burn", tokenId) 14804 } 14805 14806 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 14807 // 14808 // Solidity: function burn(uint256 tokenId) returns() 14809 func (_ERC721Burnable *ERC721BurnableSession) Burn(tokenId *big.Int) (*types.Transaction, error) { 14810 return _ERC721Burnable.Contract.Burn(&_ERC721Burnable.TransactOpts, tokenId) 14811 } 14812 14813 // Burn is a paid mutator transaction binding the contract method 0x42966c68. 14814 // 14815 // Solidity: function burn(uint256 tokenId) returns() 14816 func (_ERC721Burnable *ERC721BurnableTransactorSession) Burn(tokenId *big.Int) (*types.Transaction, error) { 14817 return _ERC721Burnable.Contract.Burn(&_ERC721Burnable.TransactOpts, tokenId) 14818 } 14819 14820 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 14821 // 14822 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 14823 func (_ERC721Burnable *ERC721BurnableTransactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14824 return _ERC721Burnable.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 14825 } 14826 14827 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 14828 // 14829 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 14830 func (_ERC721Burnable *ERC721BurnableSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14831 return _ERC721Burnable.Contract.SafeTransferFrom(&_ERC721Burnable.TransactOpts, from, to, tokenId) 14832 } 14833 14834 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 14835 // 14836 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 14837 func (_ERC721Burnable *ERC721BurnableTransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14838 return _ERC721Burnable.Contract.SafeTransferFrom(&_ERC721Burnable.TransactOpts, from, to, tokenId) 14839 } 14840 14841 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 14842 // 14843 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 14844 func (_ERC721Burnable *ERC721BurnableTransactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 14845 return _ERC721Burnable.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, _data) 14846 } 14847 14848 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 14849 // 14850 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 14851 func (_ERC721Burnable *ERC721BurnableSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 14852 return _ERC721Burnable.Contract.SafeTransferFrom0(&_ERC721Burnable.TransactOpts, from, to, tokenId, _data) 14853 } 14854 14855 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 14856 // 14857 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 14858 func (_ERC721Burnable *ERC721BurnableTransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 14859 return _ERC721Burnable.Contract.SafeTransferFrom0(&_ERC721Burnable.TransactOpts, from, to, tokenId, _data) 14860 } 14861 14862 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 14863 // 14864 // Solidity: function setApprovalForAll(address to, bool approved) returns() 14865 func (_ERC721Burnable *ERC721BurnableTransactor) SetApprovalForAll(opts *bind.TransactOpts, to common.Address, approved bool) (*types.Transaction, error) { 14866 return _ERC721Burnable.contract.Transact(opts, "setApprovalForAll", to, approved) 14867 } 14868 14869 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 14870 // 14871 // Solidity: function setApprovalForAll(address to, bool approved) returns() 14872 func (_ERC721Burnable *ERC721BurnableSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 14873 return _ERC721Burnable.Contract.SetApprovalForAll(&_ERC721Burnable.TransactOpts, to, approved) 14874 } 14875 14876 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 14877 // 14878 // Solidity: function setApprovalForAll(address to, bool approved) returns() 14879 func (_ERC721Burnable *ERC721BurnableTransactorSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 14880 return _ERC721Burnable.Contract.SetApprovalForAll(&_ERC721Burnable.TransactOpts, to, approved) 14881 } 14882 14883 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 14884 // 14885 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 14886 func (_ERC721Burnable *ERC721BurnableTransactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14887 return _ERC721Burnable.contract.Transact(opts, "transferFrom", from, to, tokenId) 14888 } 14889 14890 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 14891 // 14892 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 14893 func (_ERC721Burnable *ERC721BurnableSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14894 return _ERC721Burnable.Contract.TransferFrom(&_ERC721Burnable.TransactOpts, from, to, tokenId) 14895 } 14896 14897 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 14898 // 14899 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 14900 func (_ERC721Burnable *ERC721BurnableTransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 14901 return _ERC721Burnable.Contract.TransferFrom(&_ERC721Burnable.TransactOpts, from, to, tokenId) 14902 } 14903 14904 // ERC721BurnableApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC721Burnable contract. 14905 type ERC721BurnableApprovalIterator struct { 14906 Event *ERC721BurnableApproval // Event containing the contract specifics and raw log 14907 14908 contract *bind.BoundContract // Generic contract to use for unpacking event data 14909 event string // Event name to use for unpacking event data 14910 14911 logs chan types.Log // Log channel receiving the found contract events 14912 sub klaytn.Subscription // Subscription for errors, completion and termination 14913 done bool // Whether the subscription completed delivering logs 14914 fail error // Occurred error to stop iteration 14915 } 14916 14917 // Next advances the iterator to the subsequent event, returning whether there 14918 // are any more events found. In case of a retrieval or parsing error, false is 14919 // returned and Error() can be queried for the exact failure. 14920 func (it *ERC721BurnableApprovalIterator) Next() bool { 14921 // If the iterator failed, stop iterating 14922 if it.fail != nil { 14923 return false 14924 } 14925 // If the iterator completed, deliver directly whatever's available 14926 if it.done { 14927 select { 14928 case log := <-it.logs: 14929 it.Event = new(ERC721BurnableApproval) 14930 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14931 it.fail = err 14932 return false 14933 } 14934 it.Event.Raw = log 14935 return true 14936 14937 default: 14938 return false 14939 } 14940 } 14941 // Iterator still in progress, wait for either a data or an error event 14942 select { 14943 case log := <-it.logs: 14944 it.Event = new(ERC721BurnableApproval) 14945 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 14946 it.fail = err 14947 return false 14948 } 14949 it.Event.Raw = log 14950 return true 14951 14952 case err := <-it.sub.Err(): 14953 it.done = true 14954 it.fail = err 14955 return it.Next() 14956 } 14957 } 14958 14959 // Error returns any retrieval or parsing error occurred during filtering. 14960 func (it *ERC721BurnableApprovalIterator) Error() error { 14961 return it.fail 14962 } 14963 14964 // Close terminates the iteration process, releasing any pending underlying 14965 // resources. 14966 func (it *ERC721BurnableApprovalIterator) Close() error { 14967 it.sub.Unsubscribe() 14968 return nil 14969 } 14970 14971 // ERC721BurnableApproval represents a Approval event raised by the ERC721Burnable contract. 14972 type ERC721BurnableApproval struct { 14973 Owner common.Address 14974 Approved common.Address 14975 TokenId *big.Int 14976 Raw types.Log // Blockchain specific contextual infos 14977 } 14978 14979 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 14980 // 14981 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 14982 func (_ERC721Burnable *ERC721BurnableFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*ERC721BurnableApprovalIterator, error) { 14983 14984 var ownerRule []interface{} 14985 for _, ownerItem := range owner { 14986 ownerRule = append(ownerRule, ownerItem) 14987 } 14988 var approvedRule []interface{} 14989 for _, approvedItem := range approved { 14990 approvedRule = append(approvedRule, approvedItem) 14991 } 14992 var tokenIdRule []interface{} 14993 for _, tokenIdItem := range tokenId { 14994 tokenIdRule = append(tokenIdRule, tokenIdItem) 14995 } 14996 14997 logs, sub, err := _ERC721Burnable.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 14998 if err != nil { 14999 return nil, err 15000 } 15001 return &ERC721BurnableApprovalIterator{contract: _ERC721Burnable.contract, event: "Approval", logs: logs, sub: sub}, nil 15002 } 15003 15004 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 15005 // 15006 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 15007 func (_ERC721Burnable *ERC721BurnableFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721BurnableApproval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 15008 15009 var ownerRule []interface{} 15010 for _, ownerItem := range owner { 15011 ownerRule = append(ownerRule, ownerItem) 15012 } 15013 var approvedRule []interface{} 15014 for _, approvedItem := range approved { 15015 approvedRule = append(approvedRule, approvedItem) 15016 } 15017 var tokenIdRule []interface{} 15018 for _, tokenIdItem := range tokenId { 15019 tokenIdRule = append(tokenIdRule, tokenIdItem) 15020 } 15021 15022 logs, sub, err := _ERC721Burnable.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 15023 if err != nil { 15024 return nil, err 15025 } 15026 return event.NewSubscription(func(quit <-chan struct{}) error { 15027 defer sub.Unsubscribe() 15028 for { 15029 select { 15030 case log := <-logs: 15031 // New log arrived, parse the event and forward to the user 15032 event := new(ERC721BurnableApproval) 15033 if err := _ERC721Burnable.contract.UnpackLog(event, "Approval", log); err != nil { 15034 return err 15035 } 15036 event.Raw = log 15037 15038 select { 15039 case sink <- event: 15040 case err := <-sub.Err(): 15041 return err 15042 case <-quit: 15043 return nil 15044 } 15045 case err := <-sub.Err(): 15046 return err 15047 case <-quit: 15048 return nil 15049 } 15050 } 15051 }), nil 15052 } 15053 15054 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 15055 // 15056 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 15057 func (_ERC721Burnable *ERC721BurnableFilterer) ParseApproval(log types.Log) (*ERC721BurnableApproval, error) { 15058 event := new(ERC721BurnableApproval) 15059 if err := _ERC721Burnable.contract.UnpackLog(event, "Approval", log); err != nil { 15060 return nil, err 15061 } 15062 return event, nil 15063 } 15064 15065 // ERC721BurnableApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ERC721Burnable contract. 15066 type ERC721BurnableApprovalForAllIterator struct { 15067 Event *ERC721BurnableApprovalForAll // Event containing the contract specifics and raw log 15068 15069 contract *bind.BoundContract // Generic contract to use for unpacking event data 15070 event string // Event name to use for unpacking event data 15071 15072 logs chan types.Log // Log channel receiving the found contract events 15073 sub klaytn.Subscription // Subscription for errors, completion and termination 15074 done bool // Whether the subscription completed delivering logs 15075 fail error // Occurred error to stop iteration 15076 } 15077 15078 // Next advances the iterator to the subsequent event, returning whether there 15079 // are any more events found. In case of a retrieval or parsing error, false is 15080 // returned and Error() can be queried for the exact failure. 15081 func (it *ERC721BurnableApprovalForAllIterator) Next() bool { 15082 // If the iterator failed, stop iterating 15083 if it.fail != nil { 15084 return false 15085 } 15086 // If the iterator completed, deliver directly whatever's available 15087 if it.done { 15088 select { 15089 case log := <-it.logs: 15090 it.Event = new(ERC721BurnableApprovalForAll) 15091 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15092 it.fail = err 15093 return false 15094 } 15095 it.Event.Raw = log 15096 return true 15097 15098 default: 15099 return false 15100 } 15101 } 15102 // Iterator still in progress, wait for either a data or an error event 15103 select { 15104 case log := <-it.logs: 15105 it.Event = new(ERC721BurnableApprovalForAll) 15106 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15107 it.fail = err 15108 return false 15109 } 15110 it.Event.Raw = log 15111 return true 15112 15113 case err := <-it.sub.Err(): 15114 it.done = true 15115 it.fail = err 15116 return it.Next() 15117 } 15118 } 15119 15120 // Error returns any retrieval or parsing error occurred during filtering. 15121 func (it *ERC721BurnableApprovalForAllIterator) Error() error { 15122 return it.fail 15123 } 15124 15125 // Close terminates the iteration process, releasing any pending underlying 15126 // resources. 15127 func (it *ERC721BurnableApprovalForAllIterator) Close() error { 15128 it.sub.Unsubscribe() 15129 return nil 15130 } 15131 15132 // ERC721BurnableApprovalForAll represents a ApprovalForAll event raised by the ERC721Burnable contract. 15133 type ERC721BurnableApprovalForAll struct { 15134 Owner common.Address 15135 Operator common.Address 15136 Approved bool 15137 Raw types.Log // Blockchain specific contextual infos 15138 } 15139 15140 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 15141 // 15142 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 15143 func (_ERC721Burnable *ERC721BurnableFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ERC721BurnableApprovalForAllIterator, error) { 15144 15145 var ownerRule []interface{} 15146 for _, ownerItem := range owner { 15147 ownerRule = append(ownerRule, ownerItem) 15148 } 15149 var operatorRule []interface{} 15150 for _, operatorItem := range operator { 15151 operatorRule = append(operatorRule, operatorItem) 15152 } 15153 15154 logs, sub, err := _ERC721Burnable.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 15155 if err != nil { 15156 return nil, err 15157 } 15158 return &ERC721BurnableApprovalForAllIterator{contract: _ERC721Burnable.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 15159 } 15160 15161 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 15162 // 15163 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 15164 func (_ERC721Burnable *ERC721BurnableFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ERC721BurnableApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 15165 15166 var ownerRule []interface{} 15167 for _, ownerItem := range owner { 15168 ownerRule = append(ownerRule, ownerItem) 15169 } 15170 var operatorRule []interface{} 15171 for _, operatorItem := range operator { 15172 operatorRule = append(operatorRule, operatorItem) 15173 } 15174 15175 logs, sub, err := _ERC721Burnable.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 15176 if err != nil { 15177 return nil, err 15178 } 15179 return event.NewSubscription(func(quit <-chan struct{}) error { 15180 defer sub.Unsubscribe() 15181 for { 15182 select { 15183 case log := <-logs: 15184 // New log arrived, parse the event and forward to the user 15185 event := new(ERC721BurnableApprovalForAll) 15186 if err := _ERC721Burnable.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 15187 return err 15188 } 15189 event.Raw = log 15190 15191 select { 15192 case sink <- event: 15193 case err := <-sub.Err(): 15194 return err 15195 case <-quit: 15196 return nil 15197 } 15198 case err := <-sub.Err(): 15199 return err 15200 case <-quit: 15201 return nil 15202 } 15203 } 15204 }), nil 15205 } 15206 15207 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 15208 // 15209 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 15210 func (_ERC721Burnable *ERC721BurnableFilterer) ParseApprovalForAll(log types.Log) (*ERC721BurnableApprovalForAll, error) { 15211 event := new(ERC721BurnableApprovalForAll) 15212 if err := _ERC721Burnable.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 15213 return nil, err 15214 } 15215 return event, nil 15216 } 15217 15218 // ERC721BurnableTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC721Burnable contract. 15219 type ERC721BurnableTransferIterator struct { 15220 Event *ERC721BurnableTransfer // Event containing the contract specifics and raw log 15221 15222 contract *bind.BoundContract // Generic contract to use for unpacking event data 15223 event string // Event name to use for unpacking event data 15224 15225 logs chan types.Log // Log channel receiving the found contract events 15226 sub klaytn.Subscription // Subscription for errors, completion and termination 15227 done bool // Whether the subscription completed delivering logs 15228 fail error // Occurred error to stop iteration 15229 } 15230 15231 // Next advances the iterator to the subsequent event, returning whether there 15232 // are any more events found. In case of a retrieval or parsing error, false is 15233 // returned and Error() can be queried for the exact failure. 15234 func (it *ERC721BurnableTransferIterator) Next() bool { 15235 // If the iterator failed, stop iterating 15236 if it.fail != nil { 15237 return false 15238 } 15239 // If the iterator completed, deliver directly whatever's available 15240 if it.done { 15241 select { 15242 case log := <-it.logs: 15243 it.Event = new(ERC721BurnableTransfer) 15244 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15245 it.fail = err 15246 return false 15247 } 15248 it.Event.Raw = log 15249 return true 15250 15251 default: 15252 return false 15253 } 15254 } 15255 // Iterator still in progress, wait for either a data or an error event 15256 select { 15257 case log := <-it.logs: 15258 it.Event = new(ERC721BurnableTransfer) 15259 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15260 it.fail = err 15261 return false 15262 } 15263 it.Event.Raw = log 15264 return true 15265 15266 case err := <-it.sub.Err(): 15267 it.done = true 15268 it.fail = err 15269 return it.Next() 15270 } 15271 } 15272 15273 // Error returns any retrieval or parsing error occurred during filtering. 15274 func (it *ERC721BurnableTransferIterator) Error() error { 15275 return it.fail 15276 } 15277 15278 // Close terminates the iteration process, releasing any pending underlying 15279 // resources. 15280 func (it *ERC721BurnableTransferIterator) Close() error { 15281 it.sub.Unsubscribe() 15282 return nil 15283 } 15284 15285 // ERC721BurnableTransfer represents a Transfer event raised by the ERC721Burnable contract. 15286 type ERC721BurnableTransfer struct { 15287 From common.Address 15288 To common.Address 15289 TokenId *big.Int 15290 Raw types.Log // Blockchain specific contextual infos 15291 } 15292 15293 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 15294 // 15295 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 15296 func (_ERC721Burnable *ERC721BurnableFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*ERC721BurnableTransferIterator, error) { 15297 15298 var fromRule []interface{} 15299 for _, fromItem := range from { 15300 fromRule = append(fromRule, fromItem) 15301 } 15302 var toRule []interface{} 15303 for _, toItem := range to { 15304 toRule = append(toRule, toItem) 15305 } 15306 var tokenIdRule []interface{} 15307 for _, tokenIdItem := range tokenId { 15308 tokenIdRule = append(tokenIdRule, tokenIdItem) 15309 } 15310 15311 logs, sub, err := _ERC721Burnable.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 15312 if err != nil { 15313 return nil, err 15314 } 15315 return &ERC721BurnableTransferIterator{contract: _ERC721Burnable.contract, event: "Transfer", logs: logs, sub: sub}, nil 15316 } 15317 15318 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 15319 // 15320 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 15321 func (_ERC721Burnable *ERC721BurnableFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721BurnableTransfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 15322 15323 var fromRule []interface{} 15324 for _, fromItem := range from { 15325 fromRule = append(fromRule, fromItem) 15326 } 15327 var toRule []interface{} 15328 for _, toItem := range to { 15329 toRule = append(toRule, toItem) 15330 } 15331 var tokenIdRule []interface{} 15332 for _, tokenIdItem := range tokenId { 15333 tokenIdRule = append(tokenIdRule, tokenIdItem) 15334 } 15335 15336 logs, sub, err := _ERC721Burnable.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 15337 if err != nil { 15338 return nil, err 15339 } 15340 return event.NewSubscription(func(quit <-chan struct{}) error { 15341 defer sub.Unsubscribe() 15342 for { 15343 select { 15344 case log := <-logs: 15345 // New log arrived, parse the event and forward to the user 15346 event := new(ERC721BurnableTransfer) 15347 if err := _ERC721Burnable.contract.UnpackLog(event, "Transfer", log); err != nil { 15348 return err 15349 } 15350 event.Raw = log 15351 15352 select { 15353 case sink <- event: 15354 case err := <-sub.Err(): 15355 return err 15356 case <-quit: 15357 return nil 15358 } 15359 case err := <-sub.Err(): 15360 return err 15361 case <-quit: 15362 return nil 15363 } 15364 } 15365 }), nil 15366 } 15367 15368 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 15369 // 15370 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 15371 func (_ERC721Burnable *ERC721BurnableFilterer) ParseTransfer(log types.Log) (*ERC721BurnableTransfer, error) { 15372 event := new(ERC721BurnableTransfer) 15373 if err := _ERC721Burnable.contract.UnpackLog(event, "Transfer", log); err != nil { 15374 return nil, err 15375 } 15376 return event, nil 15377 } 15378 15379 // ERC721MetadataABI is the input ABI used to generate the binding from. 15380 const ERC721MetadataABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"symbol\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 15381 15382 // ERC721MetadataBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 15383 const ERC721MetadataBinRuntime = `608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146102bc578063b88d4fde146102ea578063c87b56dd146103b0578063e985e9c5146103cd576100cf565b80636352211e1461025f57806370a082311461027c57806395d89b41146102b4576100cf565b806301ffc9a7146100d457806306fdde031461010f578063081812fc1461018c578063095ea7b3146101c557806323b872dd146101f357806342842e0e14610229575b600080fd5b6100fb600480360360208110156100ea57600080fd5b50356001600160e01b0319166103fb565b604080519115158252519081900360200190f35b61011761041a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610151578181015183820152602001610139565b50505050905090810190601f16801561017e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101a9600480360360208110156101a257600080fd5b50356104b0565b604080516001600160a01b039092168252519081900360200190f35b6101f1600480360360408110156101db57600080fd5b506001600160a01b038135169060200135610515565b005b6101f16004803603606081101561020957600080fd5b506001600160a01b0381358116916020810135909116906040013561062c565b6101f16004803603606081101561023f57600080fd5b506001600160a01b03813581169160208101359091169060400135610684565b6101a96004803603602081101561027557600080fd5b503561069f565b6102a26004803603602081101561029257600080fd5b50356001600160a01b03166106fc565b60408051918252519081900360200190f35b610117610767565b6101f1600480360360408110156102d257600080fd5b506001600160a01b03813516906020013515156107c8565b6101f16004803603608081101561030057600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561033b57600080fd5b82018360208201111561034d57600080fd5b8035906020019184600183028401116401000000008311171561036f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610897945050505050565b610117600480360360208110156103c657600080fd5b50356108f2565b6100fb600480360360408110156103e357600080fd5b506001600160a01b03813581169160200135166109da565b6001600160e01b03191660009081526020819052604090205460ff1690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104a65780601f1061047b576101008083540402835291602001916104a6565b820191906000526020600020905b81548152906001019060200180831161048957829003601f168201915b5050505050905090565b60006104bb82610a08565b6104f957604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610f24602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006105208261069f565b9050806001600160a01b0316836001600160a01b0316141561057657604051600160e51b62461bcd028152600401808060200182810382526021815260200180610fa86021913960400191505060405180910390fd5b336001600160a01b0382161480610592575061059281336109da565b6105d057604051600160e51b62461bcd028152600401808060200182810382526038815260200180610e996038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6106363382610a25565b61067457604051600160e51b62461bcd028152600401808060200182810382526031815260200180610fc96031913960400191505060405180910390fd5b61067f838383610acc565b505050565b61067f83838360405180602001604052806000815250610897565b6000818152600160205260408120546001600160a01b0316806106f657604051600160e51b62461bcd028152600401808060200182810382526029815260200180610efb6029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661074657604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610ed1602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106f690610c16565b60068054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104a65780601f1061047b576101008083540402835291602001916104a6565b6001600160a01b0382163314156108295760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6108a284848461062c565b6108ae84848484610c1a565b6108ec57604051600160e51b62461bcd028152600401808060200182810382526032815260200180610e176032913960400191505060405180910390fd5b50505050565b60606108fd82610a08565b61093b57604051600160e51b62461bcd02815260040180806020018281038252602f815260200180610f79602f913960400191505060405180910390fd5b60008281526007602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b50505050509050919050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a3082610a08565b610a6e57604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610e6d602c913960400191505060405180910390fd5b6000610a798361069f565b9050806001600160a01b0316846001600160a01b03161480610ab45750836001600160a01b0316610aa9846104b0565b6001600160a01b0316145b80610ac45750610ac481856109da565b949350505050565b826001600160a01b0316610adf8261069f565b6001600160a01b031614610b2757604051600160e51b62461bcd028152600401808060200182810382526029815260200180610f506029913960400191505060405180910390fd5b6001600160a01b038216610b6f57604051600160e51b62461bcd028152600401808060200182810382526024815260200180610e496024913960400191505060405180910390fd5b610b7881610d53565b6001600160a01b0383166000908152600360205260409020610b9990610d90565b6001600160a01b0382166000908152600360205260409020610bba90610da7565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610c2e846001600160a01b0316610db0565b610c3a57506001610ac4565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610cb7578181015183820152602001610c9f565b50505050905090810190601f168015610ce45780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610d0657600080fd5b505af1158015610d1a573d6000803e3d6000fd5b505050506040513d6020811015610d3057600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b031615610d8d57600081815260026020526040902080546001600160a01b03191690555b50565b8054610da390600163ffffffff610db616565b9055565b80546001019055565b3b151590565b600082821115610e105760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a7230582037ba54c848524be0056a573891a8b0f5c56b08f8613060e9876ee13fe582c6480029` 15384 15385 // ERC721MetadataFuncSigs maps the 4-byte function signature to its string representation. 15386 var ERC721MetadataFuncSigs = map[string]string{ 15387 "095ea7b3": "approve(address,uint256)", 15388 "70a08231": "balanceOf(address)", 15389 "081812fc": "getApproved(uint256)", 15390 "e985e9c5": "isApprovedForAll(address,address)", 15391 "06fdde03": "name()", 15392 "6352211e": "ownerOf(uint256)", 15393 "42842e0e": "safeTransferFrom(address,address,uint256)", 15394 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 15395 "a22cb465": "setApprovalForAll(address,bool)", 15396 "01ffc9a7": "supportsInterface(bytes4)", 15397 "95d89b41": "symbol()", 15398 "c87b56dd": "tokenURI(uint256)", 15399 "23b872dd": "transferFrom(address,address,uint256)", 15400 } 15401 15402 // ERC721MetadataBin is the compiled bytecode used for deploying new contracts. 15403 var ERC721MetadataBin = "0x60806040523480156200001157600080fd5b50604051620012f8380380620012f8833981018060405260408110156200003757600080fd5b8101908080516401000000008111156200005057600080fd5b820160208101848111156200006457600080fd5b81516401000000008111828201871017156200007f57600080fd5b505092919060200180516401000000008111156200009c57600080fd5b82016020810184811115620000b057600080fd5b8151640100000000811182820187101715620000cb57600080fd5b5050929190505050620000eb6301ffc9a760e01b6200014f60201b60201c565b620001036380ac58cd60e01b6200014f60201b60201c565b8151620001189060059060208501906200021e565b5080516200012e9060069060208401906200021e565b5062000147635b5e139f60e01b6200014f60201b60201c565b5050620002c3565b7fffffffff000000000000000000000000000000000000000000000000000000008082161415620001e157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026157805160ff191683800117855562000291565b8280016001018555821562000291579182015b828111156200029157825182559160200191906001019062000274565b506200029f929150620002a3565b5090565b620002c091905b808211156200029f5760008155600101620002aa565b90565b61102580620002d36000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb465146102bc578063b88d4fde146102ea578063c87b56dd146103b0578063e985e9c5146103cd576100cf565b80636352211e1461025f57806370a082311461027c57806395d89b41146102b4576100cf565b806301ffc9a7146100d457806306fdde031461010f578063081812fc1461018c578063095ea7b3146101c557806323b872dd146101f357806342842e0e14610229575b600080fd5b6100fb600480360360208110156100ea57600080fd5b50356001600160e01b0319166103fb565b604080519115158252519081900360200190f35b61011761041a565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610151578181015183820152602001610139565b50505050905090810190601f16801561017e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101a9600480360360208110156101a257600080fd5b50356104b0565b604080516001600160a01b039092168252519081900360200190f35b6101f1600480360360408110156101db57600080fd5b506001600160a01b038135169060200135610515565b005b6101f16004803603606081101561020957600080fd5b506001600160a01b0381358116916020810135909116906040013561062c565b6101f16004803603606081101561023f57600080fd5b506001600160a01b03813581169160208101359091169060400135610684565b6101a96004803603602081101561027557600080fd5b503561069f565b6102a26004803603602081101561029257600080fd5b50356001600160a01b03166106fc565b60408051918252519081900360200190f35b610117610767565b6101f1600480360360408110156102d257600080fd5b506001600160a01b03813516906020013515156107c8565b6101f16004803603608081101561030057600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561033b57600080fd5b82018360208201111561034d57600080fd5b8035906020019184600183028401116401000000008311171561036f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610897945050505050565b610117600480360360208110156103c657600080fd5b50356108f2565b6100fb600480360360408110156103e357600080fd5b506001600160a01b03813581169160200135166109da565b6001600160e01b03191660009081526020819052604090205460ff1690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104a65780601f1061047b576101008083540402835291602001916104a6565b820191906000526020600020905b81548152906001019060200180831161048957829003601f168201915b5050505050905090565b60006104bb82610a08565b6104f957604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610f24602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006105208261069f565b9050806001600160a01b0316836001600160a01b0316141561057657604051600160e51b62461bcd028152600401808060200182810382526021815260200180610fa86021913960400191505060405180910390fd5b336001600160a01b0382161480610592575061059281336109da565b6105d057604051600160e51b62461bcd028152600401808060200182810382526038815260200180610e996038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6106363382610a25565b61067457604051600160e51b62461bcd028152600401808060200182810382526031815260200180610fc96031913960400191505060405180910390fd5b61067f838383610acc565b505050565b61067f83838360405180602001604052806000815250610897565b6000818152600160205260408120546001600160a01b0316806106f657604051600160e51b62461bcd028152600401808060200182810382526029815260200180610efb6029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661074657604051600160e51b62461bcd02815260040180806020018281038252602a815260200180610ed1602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106f690610c16565b60068054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104a65780601f1061047b576101008083540402835291602001916104a6565b6001600160a01b0382163314156108295760408051600160e51b62461bcd02815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6108a284848461062c565b6108ae84848484610c1a565b6108ec57604051600160e51b62461bcd028152600401808060200182810382526032815260200180610e176032913960400191505060405180910390fd5b50505050565b60606108fd82610a08565b61093b57604051600160e51b62461bcd02815260040180806020018281038252602f815260200180610f79602f913960400191505060405180910390fd5b60008281526007602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156109ce5780601f106109a3576101008083540402835291602001916109ce565b820191906000526020600020905b8154815290600101906020018083116109b157829003601f168201915b50505050509050919050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a3082610a08565b610a6e57604051600160e51b62461bcd02815260040180806020018281038252602c815260200180610e6d602c913960400191505060405180910390fd5b6000610a798361069f565b9050806001600160a01b0316846001600160a01b03161480610ab45750836001600160a01b0316610aa9846104b0565b6001600160a01b0316145b80610ac45750610ac481856109da565b949350505050565b826001600160a01b0316610adf8261069f565b6001600160a01b031614610b2757604051600160e51b62461bcd028152600401808060200182810382526029815260200180610f506029913960400191505060405180910390fd5b6001600160a01b038216610b6f57604051600160e51b62461bcd028152600401808060200182810382526024815260200180610e496024913960400191505060405180910390fd5b610b7881610d53565b6001600160a01b0383166000908152600360205260409020610b9990610d90565b6001600160a01b0382166000908152600360205260409020610bba90610da7565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610c2e846001600160a01b0316610db0565b610c3a57506001610ac4565b604051600160e11b630a85bd0102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610cb7578181015183820152602001610c9f565b50505050905090810190601f168015610ce45780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610d0657600080fd5b505af1158015610d1a573d6000803e3d6000fd5b505050506040513d6020811015610d3057600080fd5b50516001600160e01b031916600160e11b630a85bd010214915050949350505050565b6000818152600260205260409020546001600160a01b031615610d8d57600081815260026020526040902080546001600160a01b03191690555b50565b8054610da390600163ffffffff610db616565b9055565b80546001019055565b3b151590565b600082821115610e105760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a165627a7a7230582037ba54c848524be0056a573891a8b0f5c56b08f8613060e9876ee13fe582c6480029" 15404 15405 // DeployERC721Metadata deploys a new Klaytn contract, binding an instance of ERC721Metadata to it. 15406 func DeployERC721Metadata(auth *bind.TransactOpts, backend bind.ContractBackend, name string, symbol string) (common.Address, *types.Transaction, *ERC721Metadata, error) { 15407 parsed, err := abi.JSON(strings.NewReader(ERC721MetadataABI)) 15408 if err != nil { 15409 return common.Address{}, nil, nil, err 15410 } 15411 15412 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ERC721MetadataBin), backend, name, symbol) 15413 if err != nil { 15414 return common.Address{}, nil, nil, err 15415 } 15416 return address, tx, &ERC721Metadata{ERC721MetadataCaller: ERC721MetadataCaller{contract: contract}, ERC721MetadataTransactor: ERC721MetadataTransactor{contract: contract}, ERC721MetadataFilterer: ERC721MetadataFilterer{contract: contract}}, nil 15417 } 15418 15419 // ERC721Metadata is an auto generated Go binding around a Klaytn contract. 15420 type ERC721Metadata struct { 15421 ERC721MetadataCaller // Read-only binding to the contract 15422 ERC721MetadataTransactor // Write-only binding to the contract 15423 ERC721MetadataFilterer // Log filterer for contract events 15424 } 15425 15426 // ERC721MetadataCaller is an auto generated read-only Go binding around a Klaytn contract. 15427 type ERC721MetadataCaller struct { 15428 contract *bind.BoundContract // Generic contract wrapper for the low level calls 15429 } 15430 15431 // ERC721MetadataTransactor is an auto generated write-only Go binding around a Klaytn contract. 15432 type ERC721MetadataTransactor struct { 15433 contract *bind.BoundContract // Generic contract wrapper for the low level calls 15434 } 15435 15436 // ERC721MetadataFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 15437 type ERC721MetadataFilterer struct { 15438 contract *bind.BoundContract // Generic contract wrapper for the low level calls 15439 } 15440 15441 // ERC721MetadataSession is an auto generated Go binding around a Klaytn contract, 15442 // with pre-set call and transact options. 15443 type ERC721MetadataSession struct { 15444 Contract *ERC721Metadata // Generic contract binding to set the session for 15445 CallOpts bind.CallOpts // Call options to use throughout this session 15446 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 15447 } 15448 15449 // ERC721MetadataCallerSession is an auto generated read-only Go binding around a Klaytn contract, 15450 // with pre-set call options. 15451 type ERC721MetadataCallerSession struct { 15452 Contract *ERC721MetadataCaller // Generic contract caller binding to set the session for 15453 CallOpts bind.CallOpts // Call options to use throughout this session 15454 } 15455 15456 // ERC721MetadataTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 15457 // with pre-set transact options. 15458 type ERC721MetadataTransactorSession struct { 15459 Contract *ERC721MetadataTransactor // Generic contract transactor binding to set the session for 15460 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 15461 } 15462 15463 // ERC721MetadataRaw is an auto generated low-level Go binding around a Klaytn contract. 15464 type ERC721MetadataRaw struct { 15465 Contract *ERC721Metadata // Generic contract binding to access the raw methods on 15466 } 15467 15468 // ERC721MetadataCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 15469 type ERC721MetadataCallerRaw struct { 15470 Contract *ERC721MetadataCaller // Generic read-only contract binding to access the raw methods on 15471 } 15472 15473 // ERC721MetadataTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 15474 type ERC721MetadataTransactorRaw struct { 15475 Contract *ERC721MetadataTransactor // Generic write-only contract binding to access the raw methods on 15476 } 15477 15478 // NewERC721Metadata creates a new instance of ERC721Metadata, bound to a specific deployed contract. 15479 func NewERC721Metadata(address common.Address, backend bind.ContractBackend) (*ERC721Metadata, error) { 15480 contract, err := bindERC721Metadata(address, backend, backend, backend) 15481 if err != nil { 15482 return nil, err 15483 } 15484 return &ERC721Metadata{ERC721MetadataCaller: ERC721MetadataCaller{contract: contract}, ERC721MetadataTransactor: ERC721MetadataTransactor{contract: contract}, ERC721MetadataFilterer: ERC721MetadataFilterer{contract: contract}}, nil 15485 } 15486 15487 // NewERC721MetadataCaller creates a new read-only instance of ERC721Metadata, bound to a specific deployed contract. 15488 func NewERC721MetadataCaller(address common.Address, caller bind.ContractCaller) (*ERC721MetadataCaller, error) { 15489 contract, err := bindERC721Metadata(address, caller, nil, nil) 15490 if err != nil { 15491 return nil, err 15492 } 15493 return &ERC721MetadataCaller{contract: contract}, nil 15494 } 15495 15496 // NewERC721MetadataTransactor creates a new write-only instance of ERC721Metadata, bound to a specific deployed contract. 15497 func NewERC721MetadataTransactor(address common.Address, transactor bind.ContractTransactor) (*ERC721MetadataTransactor, error) { 15498 contract, err := bindERC721Metadata(address, nil, transactor, nil) 15499 if err != nil { 15500 return nil, err 15501 } 15502 return &ERC721MetadataTransactor{contract: contract}, nil 15503 } 15504 15505 // NewERC721MetadataFilterer creates a new log filterer instance of ERC721Metadata, bound to a specific deployed contract. 15506 func NewERC721MetadataFilterer(address common.Address, filterer bind.ContractFilterer) (*ERC721MetadataFilterer, error) { 15507 contract, err := bindERC721Metadata(address, nil, nil, filterer) 15508 if err != nil { 15509 return nil, err 15510 } 15511 return &ERC721MetadataFilterer{contract: contract}, nil 15512 } 15513 15514 // bindERC721Metadata binds a generic wrapper to an already deployed contract. 15515 func bindERC721Metadata(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 15516 parsed, err := abi.JSON(strings.NewReader(ERC721MetadataABI)) 15517 if err != nil { 15518 return nil, err 15519 } 15520 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 15521 } 15522 15523 // Call invokes the (constant) contract method with params as input values and 15524 // sets the output to result. The result type might be a single field for simple 15525 // returns, a slice of interfaces for anonymous returns and a struct for named 15526 // returns. 15527 func (_ERC721Metadata *ERC721MetadataRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 15528 return _ERC721Metadata.Contract.ERC721MetadataCaller.contract.Call(opts, result, method, params...) 15529 } 15530 15531 // Transfer initiates a plain transaction to move funds to the contract, calling 15532 // its default method if one is available. 15533 func (_ERC721Metadata *ERC721MetadataRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 15534 return _ERC721Metadata.Contract.ERC721MetadataTransactor.contract.Transfer(opts) 15535 } 15536 15537 // Transact invokes the (paid) contract method with params as input values. 15538 func (_ERC721Metadata *ERC721MetadataRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 15539 return _ERC721Metadata.Contract.ERC721MetadataTransactor.contract.Transact(opts, method, params...) 15540 } 15541 15542 // Call invokes the (constant) contract method with params as input values and 15543 // sets the output to result. The result type might be a single field for simple 15544 // returns, a slice of interfaces for anonymous returns and a struct for named 15545 // returns. 15546 func (_ERC721Metadata *ERC721MetadataCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 15547 return _ERC721Metadata.Contract.contract.Call(opts, result, method, params...) 15548 } 15549 15550 // Transfer initiates a plain transaction to move funds to the contract, calling 15551 // its default method if one is available. 15552 func (_ERC721Metadata *ERC721MetadataTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 15553 return _ERC721Metadata.Contract.contract.Transfer(opts) 15554 } 15555 15556 // Transact invokes the (paid) contract method with params as input values. 15557 func (_ERC721Metadata *ERC721MetadataTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 15558 return _ERC721Metadata.Contract.contract.Transact(opts, method, params...) 15559 } 15560 15561 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 15562 // 15563 // Solidity: function balanceOf(address owner) view returns(uint256) 15564 func (_ERC721Metadata *ERC721MetadataCaller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 15565 var ( 15566 ret0 = new(*big.Int) 15567 ) 15568 out := ret0 15569 err := _ERC721Metadata.contract.Call(opts, out, "balanceOf", owner) 15570 return *ret0, err 15571 } 15572 15573 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 15574 // 15575 // Solidity: function balanceOf(address owner) view returns(uint256) 15576 func (_ERC721Metadata *ERC721MetadataSession) BalanceOf(owner common.Address) (*big.Int, error) { 15577 return _ERC721Metadata.Contract.BalanceOf(&_ERC721Metadata.CallOpts, owner) 15578 } 15579 15580 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 15581 // 15582 // Solidity: function balanceOf(address owner) view returns(uint256) 15583 func (_ERC721Metadata *ERC721MetadataCallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 15584 return _ERC721Metadata.Contract.BalanceOf(&_ERC721Metadata.CallOpts, owner) 15585 } 15586 15587 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 15588 // 15589 // Solidity: function getApproved(uint256 tokenId) view returns(address) 15590 func (_ERC721Metadata *ERC721MetadataCaller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 15591 var ( 15592 ret0 = new(common.Address) 15593 ) 15594 out := ret0 15595 err := _ERC721Metadata.contract.Call(opts, out, "getApproved", tokenId) 15596 return *ret0, err 15597 } 15598 15599 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 15600 // 15601 // Solidity: function getApproved(uint256 tokenId) view returns(address) 15602 func (_ERC721Metadata *ERC721MetadataSession) GetApproved(tokenId *big.Int) (common.Address, error) { 15603 return _ERC721Metadata.Contract.GetApproved(&_ERC721Metadata.CallOpts, tokenId) 15604 } 15605 15606 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 15607 // 15608 // Solidity: function getApproved(uint256 tokenId) view returns(address) 15609 func (_ERC721Metadata *ERC721MetadataCallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 15610 return _ERC721Metadata.Contract.GetApproved(&_ERC721Metadata.CallOpts, tokenId) 15611 } 15612 15613 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 15614 // 15615 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 15616 func (_ERC721Metadata *ERC721MetadataCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 15617 var ( 15618 ret0 = new(bool) 15619 ) 15620 out := ret0 15621 err := _ERC721Metadata.contract.Call(opts, out, "isApprovedForAll", owner, operator) 15622 return *ret0, err 15623 } 15624 15625 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 15626 // 15627 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 15628 func (_ERC721Metadata *ERC721MetadataSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 15629 return _ERC721Metadata.Contract.IsApprovedForAll(&_ERC721Metadata.CallOpts, owner, operator) 15630 } 15631 15632 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 15633 // 15634 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 15635 func (_ERC721Metadata *ERC721MetadataCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 15636 return _ERC721Metadata.Contract.IsApprovedForAll(&_ERC721Metadata.CallOpts, owner, operator) 15637 } 15638 15639 // Name is a free data retrieval call binding the contract method 0x06fdde03. 15640 // 15641 // Solidity: function name() view returns(string) 15642 func (_ERC721Metadata *ERC721MetadataCaller) Name(opts *bind.CallOpts) (string, error) { 15643 var ( 15644 ret0 = new(string) 15645 ) 15646 out := ret0 15647 err := _ERC721Metadata.contract.Call(opts, out, "name") 15648 return *ret0, err 15649 } 15650 15651 // Name is a free data retrieval call binding the contract method 0x06fdde03. 15652 // 15653 // Solidity: function name() view returns(string) 15654 func (_ERC721Metadata *ERC721MetadataSession) Name() (string, error) { 15655 return _ERC721Metadata.Contract.Name(&_ERC721Metadata.CallOpts) 15656 } 15657 15658 // Name is a free data retrieval call binding the contract method 0x06fdde03. 15659 // 15660 // Solidity: function name() view returns(string) 15661 func (_ERC721Metadata *ERC721MetadataCallerSession) Name() (string, error) { 15662 return _ERC721Metadata.Contract.Name(&_ERC721Metadata.CallOpts) 15663 } 15664 15665 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 15666 // 15667 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 15668 func (_ERC721Metadata *ERC721MetadataCaller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 15669 var ( 15670 ret0 = new(common.Address) 15671 ) 15672 out := ret0 15673 err := _ERC721Metadata.contract.Call(opts, out, "ownerOf", tokenId) 15674 return *ret0, err 15675 } 15676 15677 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 15678 // 15679 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 15680 func (_ERC721Metadata *ERC721MetadataSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 15681 return _ERC721Metadata.Contract.OwnerOf(&_ERC721Metadata.CallOpts, tokenId) 15682 } 15683 15684 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 15685 // 15686 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 15687 func (_ERC721Metadata *ERC721MetadataCallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 15688 return _ERC721Metadata.Contract.OwnerOf(&_ERC721Metadata.CallOpts, tokenId) 15689 } 15690 15691 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 15692 // 15693 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 15694 func (_ERC721Metadata *ERC721MetadataCaller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 15695 var ( 15696 ret0 = new(bool) 15697 ) 15698 out := ret0 15699 err := _ERC721Metadata.contract.Call(opts, out, "supportsInterface", interfaceId) 15700 return *ret0, err 15701 } 15702 15703 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 15704 // 15705 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 15706 func (_ERC721Metadata *ERC721MetadataSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 15707 return _ERC721Metadata.Contract.SupportsInterface(&_ERC721Metadata.CallOpts, interfaceId) 15708 } 15709 15710 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 15711 // 15712 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 15713 func (_ERC721Metadata *ERC721MetadataCallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 15714 return _ERC721Metadata.Contract.SupportsInterface(&_ERC721Metadata.CallOpts, interfaceId) 15715 } 15716 15717 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 15718 // 15719 // Solidity: function symbol() view returns(string) 15720 func (_ERC721Metadata *ERC721MetadataCaller) Symbol(opts *bind.CallOpts) (string, error) { 15721 var ( 15722 ret0 = new(string) 15723 ) 15724 out := ret0 15725 err := _ERC721Metadata.contract.Call(opts, out, "symbol") 15726 return *ret0, err 15727 } 15728 15729 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 15730 // 15731 // Solidity: function symbol() view returns(string) 15732 func (_ERC721Metadata *ERC721MetadataSession) Symbol() (string, error) { 15733 return _ERC721Metadata.Contract.Symbol(&_ERC721Metadata.CallOpts) 15734 } 15735 15736 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 15737 // 15738 // Solidity: function symbol() view returns(string) 15739 func (_ERC721Metadata *ERC721MetadataCallerSession) Symbol() (string, error) { 15740 return _ERC721Metadata.Contract.Symbol(&_ERC721Metadata.CallOpts) 15741 } 15742 15743 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 15744 // 15745 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 15746 func (_ERC721Metadata *ERC721MetadataCaller) TokenURI(opts *bind.CallOpts, tokenId *big.Int) (string, error) { 15747 var ( 15748 ret0 = new(string) 15749 ) 15750 out := ret0 15751 err := _ERC721Metadata.contract.Call(opts, out, "tokenURI", tokenId) 15752 return *ret0, err 15753 } 15754 15755 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 15756 // 15757 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 15758 func (_ERC721Metadata *ERC721MetadataSession) TokenURI(tokenId *big.Int) (string, error) { 15759 return _ERC721Metadata.Contract.TokenURI(&_ERC721Metadata.CallOpts, tokenId) 15760 } 15761 15762 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 15763 // 15764 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 15765 func (_ERC721Metadata *ERC721MetadataCallerSession) TokenURI(tokenId *big.Int) (string, error) { 15766 return _ERC721Metadata.Contract.TokenURI(&_ERC721Metadata.CallOpts, tokenId) 15767 } 15768 15769 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 15770 // 15771 // Solidity: function approve(address to, uint256 tokenId) returns() 15772 func (_ERC721Metadata *ERC721MetadataTransactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15773 return _ERC721Metadata.contract.Transact(opts, "approve", to, tokenId) 15774 } 15775 15776 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 15777 // 15778 // Solidity: function approve(address to, uint256 tokenId) returns() 15779 func (_ERC721Metadata *ERC721MetadataSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15780 return _ERC721Metadata.Contract.Approve(&_ERC721Metadata.TransactOpts, to, tokenId) 15781 } 15782 15783 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 15784 // 15785 // Solidity: function approve(address to, uint256 tokenId) returns() 15786 func (_ERC721Metadata *ERC721MetadataTransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15787 return _ERC721Metadata.Contract.Approve(&_ERC721Metadata.TransactOpts, to, tokenId) 15788 } 15789 15790 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 15791 // 15792 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 15793 func (_ERC721Metadata *ERC721MetadataTransactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15794 return _ERC721Metadata.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 15795 } 15796 15797 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 15798 // 15799 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 15800 func (_ERC721Metadata *ERC721MetadataSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15801 return _ERC721Metadata.Contract.SafeTransferFrom(&_ERC721Metadata.TransactOpts, from, to, tokenId) 15802 } 15803 15804 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 15805 // 15806 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 15807 func (_ERC721Metadata *ERC721MetadataTransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15808 return _ERC721Metadata.Contract.SafeTransferFrom(&_ERC721Metadata.TransactOpts, from, to, tokenId) 15809 } 15810 15811 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 15812 // 15813 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 15814 func (_ERC721Metadata *ERC721MetadataTransactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 15815 return _ERC721Metadata.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, _data) 15816 } 15817 15818 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 15819 // 15820 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 15821 func (_ERC721Metadata *ERC721MetadataSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 15822 return _ERC721Metadata.Contract.SafeTransferFrom0(&_ERC721Metadata.TransactOpts, from, to, tokenId, _data) 15823 } 15824 15825 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 15826 // 15827 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 15828 func (_ERC721Metadata *ERC721MetadataTransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 15829 return _ERC721Metadata.Contract.SafeTransferFrom0(&_ERC721Metadata.TransactOpts, from, to, tokenId, _data) 15830 } 15831 15832 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 15833 // 15834 // Solidity: function setApprovalForAll(address to, bool approved) returns() 15835 func (_ERC721Metadata *ERC721MetadataTransactor) SetApprovalForAll(opts *bind.TransactOpts, to common.Address, approved bool) (*types.Transaction, error) { 15836 return _ERC721Metadata.contract.Transact(opts, "setApprovalForAll", to, approved) 15837 } 15838 15839 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 15840 // 15841 // Solidity: function setApprovalForAll(address to, bool approved) returns() 15842 func (_ERC721Metadata *ERC721MetadataSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 15843 return _ERC721Metadata.Contract.SetApprovalForAll(&_ERC721Metadata.TransactOpts, to, approved) 15844 } 15845 15846 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 15847 // 15848 // Solidity: function setApprovalForAll(address to, bool approved) returns() 15849 func (_ERC721Metadata *ERC721MetadataTransactorSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 15850 return _ERC721Metadata.Contract.SetApprovalForAll(&_ERC721Metadata.TransactOpts, to, approved) 15851 } 15852 15853 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 15854 // 15855 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 15856 func (_ERC721Metadata *ERC721MetadataTransactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15857 return _ERC721Metadata.contract.Transact(opts, "transferFrom", from, to, tokenId) 15858 } 15859 15860 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 15861 // 15862 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 15863 func (_ERC721Metadata *ERC721MetadataSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15864 return _ERC721Metadata.Contract.TransferFrom(&_ERC721Metadata.TransactOpts, from, to, tokenId) 15865 } 15866 15867 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 15868 // 15869 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 15870 func (_ERC721Metadata *ERC721MetadataTransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 15871 return _ERC721Metadata.Contract.TransferFrom(&_ERC721Metadata.TransactOpts, from, to, tokenId) 15872 } 15873 15874 // ERC721MetadataApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC721Metadata contract. 15875 type ERC721MetadataApprovalIterator struct { 15876 Event *ERC721MetadataApproval // Event containing the contract specifics and raw log 15877 15878 contract *bind.BoundContract // Generic contract to use for unpacking event data 15879 event string // Event name to use for unpacking event data 15880 15881 logs chan types.Log // Log channel receiving the found contract events 15882 sub klaytn.Subscription // Subscription for errors, completion and termination 15883 done bool // Whether the subscription completed delivering logs 15884 fail error // Occurred error to stop iteration 15885 } 15886 15887 // Next advances the iterator to the subsequent event, returning whether there 15888 // are any more events found. In case of a retrieval or parsing error, false is 15889 // returned and Error() can be queried for the exact failure. 15890 func (it *ERC721MetadataApprovalIterator) Next() bool { 15891 // If the iterator failed, stop iterating 15892 if it.fail != nil { 15893 return false 15894 } 15895 // If the iterator completed, deliver directly whatever's available 15896 if it.done { 15897 select { 15898 case log := <-it.logs: 15899 it.Event = new(ERC721MetadataApproval) 15900 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15901 it.fail = err 15902 return false 15903 } 15904 it.Event.Raw = log 15905 return true 15906 15907 default: 15908 return false 15909 } 15910 } 15911 // Iterator still in progress, wait for either a data or an error event 15912 select { 15913 case log := <-it.logs: 15914 it.Event = new(ERC721MetadataApproval) 15915 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 15916 it.fail = err 15917 return false 15918 } 15919 it.Event.Raw = log 15920 return true 15921 15922 case err := <-it.sub.Err(): 15923 it.done = true 15924 it.fail = err 15925 return it.Next() 15926 } 15927 } 15928 15929 // Error returns any retrieval or parsing error occurred during filtering. 15930 func (it *ERC721MetadataApprovalIterator) Error() error { 15931 return it.fail 15932 } 15933 15934 // Close terminates the iteration process, releasing any pending underlying 15935 // resources. 15936 func (it *ERC721MetadataApprovalIterator) Close() error { 15937 it.sub.Unsubscribe() 15938 return nil 15939 } 15940 15941 // ERC721MetadataApproval represents a Approval event raised by the ERC721Metadata contract. 15942 type ERC721MetadataApproval struct { 15943 Owner common.Address 15944 Approved common.Address 15945 TokenId *big.Int 15946 Raw types.Log // Blockchain specific contextual infos 15947 } 15948 15949 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 15950 // 15951 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 15952 func (_ERC721Metadata *ERC721MetadataFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*ERC721MetadataApprovalIterator, error) { 15953 15954 var ownerRule []interface{} 15955 for _, ownerItem := range owner { 15956 ownerRule = append(ownerRule, ownerItem) 15957 } 15958 var approvedRule []interface{} 15959 for _, approvedItem := range approved { 15960 approvedRule = append(approvedRule, approvedItem) 15961 } 15962 var tokenIdRule []interface{} 15963 for _, tokenIdItem := range tokenId { 15964 tokenIdRule = append(tokenIdRule, tokenIdItem) 15965 } 15966 15967 logs, sub, err := _ERC721Metadata.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 15968 if err != nil { 15969 return nil, err 15970 } 15971 return &ERC721MetadataApprovalIterator{contract: _ERC721Metadata.contract, event: "Approval", logs: logs, sub: sub}, nil 15972 } 15973 15974 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 15975 // 15976 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 15977 func (_ERC721Metadata *ERC721MetadataFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721MetadataApproval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 15978 15979 var ownerRule []interface{} 15980 for _, ownerItem := range owner { 15981 ownerRule = append(ownerRule, ownerItem) 15982 } 15983 var approvedRule []interface{} 15984 for _, approvedItem := range approved { 15985 approvedRule = append(approvedRule, approvedItem) 15986 } 15987 var tokenIdRule []interface{} 15988 for _, tokenIdItem := range tokenId { 15989 tokenIdRule = append(tokenIdRule, tokenIdItem) 15990 } 15991 15992 logs, sub, err := _ERC721Metadata.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 15993 if err != nil { 15994 return nil, err 15995 } 15996 return event.NewSubscription(func(quit <-chan struct{}) error { 15997 defer sub.Unsubscribe() 15998 for { 15999 select { 16000 case log := <-logs: 16001 // New log arrived, parse the event and forward to the user 16002 event := new(ERC721MetadataApproval) 16003 if err := _ERC721Metadata.contract.UnpackLog(event, "Approval", log); err != nil { 16004 return err 16005 } 16006 event.Raw = log 16007 16008 select { 16009 case sink <- event: 16010 case err := <-sub.Err(): 16011 return err 16012 case <-quit: 16013 return nil 16014 } 16015 case err := <-sub.Err(): 16016 return err 16017 case <-quit: 16018 return nil 16019 } 16020 } 16021 }), nil 16022 } 16023 16024 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 16025 // 16026 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 16027 func (_ERC721Metadata *ERC721MetadataFilterer) ParseApproval(log types.Log) (*ERC721MetadataApproval, error) { 16028 event := new(ERC721MetadataApproval) 16029 if err := _ERC721Metadata.contract.UnpackLog(event, "Approval", log); err != nil { 16030 return nil, err 16031 } 16032 return event, nil 16033 } 16034 16035 // ERC721MetadataApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ERC721Metadata contract. 16036 type ERC721MetadataApprovalForAllIterator struct { 16037 Event *ERC721MetadataApprovalForAll // Event containing the contract specifics and raw log 16038 16039 contract *bind.BoundContract // Generic contract to use for unpacking event data 16040 event string // Event name to use for unpacking event data 16041 16042 logs chan types.Log // Log channel receiving the found contract events 16043 sub klaytn.Subscription // Subscription for errors, completion and termination 16044 done bool // Whether the subscription completed delivering logs 16045 fail error // Occurred error to stop iteration 16046 } 16047 16048 // Next advances the iterator to the subsequent event, returning whether there 16049 // are any more events found. In case of a retrieval or parsing error, false is 16050 // returned and Error() can be queried for the exact failure. 16051 func (it *ERC721MetadataApprovalForAllIterator) Next() bool { 16052 // If the iterator failed, stop iterating 16053 if it.fail != nil { 16054 return false 16055 } 16056 // If the iterator completed, deliver directly whatever's available 16057 if it.done { 16058 select { 16059 case log := <-it.logs: 16060 it.Event = new(ERC721MetadataApprovalForAll) 16061 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16062 it.fail = err 16063 return false 16064 } 16065 it.Event.Raw = log 16066 return true 16067 16068 default: 16069 return false 16070 } 16071 } 16072 // Iterator still in progress, wait for either a data or an error event 16073 select { 16074 case log := <-it.logs: 16075 it.Event = new(ERC721MetadataApprovalForAll) 16076 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16077 it.fail = err 16078 return false 16079 } 16080 it.Event.Raw = log 16081 return true 16082 16083 case err := <-it.sub.Err(): 16084 it.done = true 16085 it.fail = err 16086 return it.Next() 16087 } 16088 } 16089 16090 // Error returns any retrieval or parsing error occurred during filtering. 16091 func (it *ERC721MetadataApprovalForAllIterator) Error() error { 16092 return it.fail 16093 } 16094 16095 // Close terminates the iteration process, releasing any pending underlying 16096 // resources. 16097 func (it *ERC721MetadataApprovalForAllIterator) Close() error { 16098 it.sub.Unsubscribe() 16099 return nil 16100 } 16101 16102 // ERC721MetadataApprovalForAll represents a ApprovalForAll event raised by the ERC721Metadata contract. 16103 type ERC721MetadataApprovalForAll struct { 16104 Owner common.Address 16105 Operator common.Address 16106 Approved bool 16107 Raw types.Log // Blockchain specific contextual infos 16108 } 16109 16110 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 16111 // 16112 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 16113 func (_ERC721Metadata *ERC721MetadataFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ERC721MetadataApprovalForAllIterator, error) { 16114 16115 var ownerRule []interface{} 16116 for _, ownerItem := range owner { 16117 ownerRule = append(ownerRule, ownerItem) 16118 } 16119 var operatorRule []interface{} 16120 for _, operatorItem := range operator { 16121 operatorRule = append(operatorRule, operatorItem) 16122 } 16123 16124 logs, sub, err := _ERC721Metadata.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 16125 if err != nil { 16126 return nil, err 16127 } 16128 return &ERC721MetadataApprovalForAllIterator{contract: _ERC721Metadata.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 16129 } 16130 16131 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 16132 // 16133 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 16134 func (_ERC721Metadata *ERC721MetadataFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ERC721MetadataApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 16135 16136 var ownerRule []interface{} 16137 for _, ownerItem := range owner { 16138 ownerRule = append(ownerRule, ownerItem) 16139 } 16140 var operatorRule []interface{} 16141 for _, operatorItem := range operator { 16142 operatorRule = append(operatorRule, operatorItem) 16143 } 16144 16145 logs, sub, err := _ERC721Metadata.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 16146 if err != nil { 16147 return nil, err 16148 } 16149 return event.NewSubscription(func(quit <-chan struct{}) error { 16150 defer sub.Unsubscribe() 16151 for { 16152 select { 16153 case log := <-logs: 16154 // New log arrived, parse the event and forward to the user 16155 event := new(ERC721MetadataApprovalForAll) 16156 if err := _ERC721Metadata.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 16157 return err 16158 } 16159 event.Raw = log 16160 16161 select { 16162 case sink <- event: 16163 case err := <-sub.Err(): 16164 return err 16165 case <-quit: 16166 return nil 16167 } 16168 case err := <-sub.Err(): 16169 return err 16170 case <-quit: 16171 return nil 16172 } 16173 } 16174 }), nil 16175 } 16176 16177 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 16178 // 16179 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 16180 func (_ERC721Metadata *ERC721MetadataFilterer) ParseApprovalForAll(log types.Log) (*ERC721MetadataApprovalForAll, error) { 16181 event := new(ERC721MetadataApprovalForAll) 16182 if err := _ERC721Metadata.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 16183 return nil, err 16184 } 16185 return event, nil 16186 } 16187 16188 // ERC721MetadataTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC721Metadata contract. 16189 type ERC721MetadataTransferIterator struct { 16190 Event *ERC721MetadataTransfer // Event containing the contract specifics and raw log 16191 16192 contract *bind.BoundContract // Generic contract to use for unpacking event data 16193 event string // Event name to use for unpacking event data 16194 16195 logs chan types.Log // Log channel receiving the found contract events 16196 sub klaytn.Subscription // Subscription for errors, completion and termination 16197 done bool // Whether the subscription completed delivering logs 16198 fail error // Occurred error to stop iteration 16199 } 16200 16201 // Next advances the iterator to the subsequent event, returning whether there 16202 // are any more events found. In case of a retrieval or parsing error, false is 16203 // returned and Error() can be queried for the exact failure. 16204 func (it *ERC721MetadataTransferIterator) Next() bool { 16205 // If the iterator failed, stop iterating 16206 if it.fail != nil { 16207 return false 16208 } 16209 // If the iterator completed, deliver directly whatever's available 16210 if it.done { 16211 select { 16212 case log := <-it.logs: 16213 it.Event = new(ERC721MetadataTransfer) 16214 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16215 it.fail = err 16216 return false 16217 } 16218 it.Event.Raw = log 16219 return true 16220 16221 default: 16222 return false 16223 } 16224 } 16225 // Iterator still in progress, wait for either a data or an error event 16226 select { 16227 case log := <-it.logs: 16228 it.Event = new(ERC721MetadataTransfer) 16229 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16230 it.fail = err 16231 return false 16232 } 16233 it.Event.Raw = log 16234 return true 16235 16236 case err := <-it.sub.Err(): 16237 it.done = true 16238 it.fail = err 16239 return it.Next() 16240 } 16241 } 16242 16243 // Error returns any retrieval or parsing error occurred during filtering. 16244 func (it *ERC721MetadataTransferIterator) Error() error { 16245 return it.fail 16246 } 16247 16248 // Close terminates the iteration process, releasing any pending underlying 16249 // resources. 16250 func (it *ERC721MetadataTransferIterator) Close() error { 16251 it.sub.Unsubscribe() 16252 return nil 16253 } 16254 16255 // ERC721MetadataTransfer represents a Transfer event raised by the ERC721Metadata contract. 16256 type ERC721MetadataTransfer struct { 16257 From common.Address 16258 To common.Address 16259 TokenId *big.Int 16260 Raw types.Log // Blockchain specific contextual infos 16261 } 16262 16263 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 16264 // 16265 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 16266 func (_ERC721Metadata *ERC721MetadataFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*ERC721MetadataTransferIterator, error) { 16267 16268 var fromRule []interface{} 16269 for _, fromItem := range from { 16270 fromRule = append(fromRule, fromItem) 16271 } 16272 var toRule []interface{} 16273 for _, toItem := range to { 16274 toRule = append(toRule, toItem) 16275 } 16276 var tokenIdRule []interface{} 16277 for _, tokenIdItem := range tokenId { 16278 tokenIdRule = append(tokenIdRule, tokenIdItem) 16279 } 16280 16281 logs, sub, err := _ERC721Metadata.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 16282 if err != nil { 16283 return nil, err 16284 } 16285 return &ERC721MetadataTransferIterator{contract: _ERC721Metadata.contract, event: "Transfer", logs: logs, sub: sub}, nil 16286 } 16287 16288 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 16289 // 16290 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 16291 func (_ERC721Metadata *ERC721MetadataFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721MetadataTransfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 16292 16293 var fromRule []interface{} 16294 for _, fromItem := range from { 16295 fromRule = append(fromRule, fromItem) 16296 } 16297 var toRule []interface{} 16298 for _, toItem := range to { 16299 toRule = append(toRule, toItem) 16300 } 16301 var tokenIdRule []interface{} 16302 for _, tokenIdItem := range tokenId { 16303 tokenIdRule = append(tokenIdRule, tokenIdItem) 16304 } 16305 16306 logs, sub, err := _ERC721Metadata.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 16307 if err != nil { 16308 return nil, err 16309 } 16310 return event.NewSubscription(func(quit <-chan struct{}) error { 16311 defer sub.Unsubscribe() 16312 for { 16313 select { 16314 case log := <-logs: 16315 // New log arrived, parse the event and forward to the user 16316 event := new(ERC721MetadataTransfer) 16317 if err := _ERC721Metadata.contract.UnpackLog(event, "Transfer", log); err != nil { 16318 return err 16319 } 16320 event.Raw = log 16321 16322 select { 16323 case sink <- event: 16324 case err := <-sub.Err(): 16325 return err 16326 case <-quit: 16327 return nil 16328 } 16329 case err := <-sub.Err(): 16330 return err 16331 case <-quit: 16332 return nil 16333 } 16334 } 16335 }), nil 16336 } 16337 16338 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 16339 // 16340 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 16341 func (_ERC721Metadata *ERC721MetadataFilterer) ParseTransfer(log types.Log) (*ERC721MetadataTransfer, error) { 16342 event := new(ERC721MetadataTransfer) 16343 if err := _ERC721Metadata.contract.UnpackLog(event, "Transfer", log); err != nil { 16344 return nil, err 16345 } 16346 return event, nil 16347 } 16348 16349 // ERC721MetadataMintableABI is the input ABI used to generate the binding from. 16350 const ERC721MetadataMintableABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"tokenURI\",\"type\":\"string\"}],\"name\":\"mintWithTokenURI\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"addMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isMinter\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 16351 16352 // ERC721MetadataMintableBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 16353 const ERC721MetadataMintableBinRuntime = `` 16354 16355 // ERC721MetadataMintableFuncSigs maps the 4-byte function signature to its string representation. 16356 var ERC721MetadataMintableFuncSigs = map[string]string{ 16357 "983b2d56": "addMinter(address)", 16358 "095ea7b3": "approve(address,uint256)", 16359 "70a08231": "balanceOf(address)", 16360 "081812fc": "getApproved(uint256)", 16361 "e985e9c5": "isApprovedForAll(address,address)", 16362 "aa271e1a": "isMinter(address)", 16363 "50bb4e7f": "mintWithTokenURI(address,uint256,string)", 16364 "06fdde03": "name()", 16365 "6352211e": "ownerOf(uint256)", 16366 "98650275": "renounceMinter()", 16367 "42842e0e": "safeTransferFrom(address,address,uint256)", 16368 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 16369 "a22cb465": "setApprovalForAll(address,bool)", 16370 "01ffc9a7": "supportsInterface(bytes4)", 16371 "95d89b41": "symbol()", 16372 "c87b56dd": "tokenURI(uint256)", 16373 "23b872dd": "transferFrom(address,address,uint256)", 16374 } 16375 16376 // ERC721MetadataMintable is an auto generated Go binding around a Klaytn contract. 16377 type ERC721MetadataMintable struct { 16378 ERC721MetadataMintableCaller // Read-only binding to the contract 16379 ERC721MetadataMintableTransactor // Write-only binding to the contract 16380 ERC721MetadataMintableFilterer // Log filterer for contract events 16381 } 16382 16383 // ERC721MetadataMintableCaller is an auto generated read-only Go binding around a Klaytn contract. 16384 type ERC721MetadataMintableCaller struct { 16385 contract *bind.BoundContract // Generic contract wrapper for the low level calls 16386 } 16387 16388 // ERC721MetadataMintableTransactor is an auto generated write-only Go binding around a Klaytn contract. 16389 type ERC721MetadataMintableTransactor struct { 16390 contract *bind.BoundContract // Generic contract wrapper for the low level calls 16391 } 16392 16393 // ERC721MetadataMintableFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 16394 type ERC721MetadataMintableFilterer struct { 16395 contract *bind.BoundContract // Generic contract wrapper for the low level calls 16396 } 16397 16398 // ERC721MetadataMintableSession is an auto generated Go binding around a Klaytn contract, 16399 // with pre-set call and transact options. 16400 type ERC721MetadataMintableSession struct { 16401 Contract *ERC721MetadataMintable // Generic contract binding to set the session for 16402 CallOpts bind.CallOpts // Call options to use throughout this session 16403 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 16404 } 16405 16406 // ERC721MetadataMintableCallerSession is an auto generated read-only Go binding around a Klaytn contract, 16407 // with pre-set call options. 16408 type ERC721MetadataMintableCallerSession struct { 16409 Contract *ERC721MetadataMintableCaller // Generic contract caller binding to set the session for 16410 CallOpts bind.CallOpts // Call options to use throughout this session 16411 } 16412 16413 // ERC721MetadataMintableTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 16414 // with pre-set transact options. 16415 type ERC721MetadataMintableTransactorSession struct { 16416 Contract *ERC721MetadataMintableTransactor // Generic contract transactor binding to set the session for 16417 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 16418 } 16419 16420 // ERC721MetadataMintableRaw is an auto generated low-level Go binding around a Klaytn contract. 16421 type ERC721MetadataMintableRaw struct { 16422 Contract *ERC721MetadataMintable // Generic contract binding to access the raw methods on 16423 } 16424 16425 // ERC721MetadataMintableCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 16426 type ERC721MetadataMintableCallerRaw struct { 16427 Contract *ERC721MetadataMintableCaller // Generic read-only contract binding to access the raw methods on 16428 } 16429 16430 // ERC721MetadataMintableTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 16431 type ERC721MetadataMintableTransactorRaw struct { 16432 Contract *ERC721MetadataMintableTransactor // Generic write-only contract binding to access the raw methods on 16433 } 16434 16435 // NewERC721MetadataMintable creates a new instance of ERC721MetadataMintable, bound to a specific deployed contract. 16436 func NewERC721MetadataMintable(address common.Address, backend bind.ContractBackend) (*ERC721MetadataMintable, error) { 16437 contract, err := bindERC721MetadataMintable(address, backend, backend, backend) 16438 if err != nil { 16439 return nil, err 16440 } 16441 return &ERC721MetadataMintable{ERC721MetadataMintableCaller: ERC721MetadataMintableCaller{contract: contract}, ERC721MetadataMintableTransactor: ERC721MetadataMintableTransactor{contract: contract}, ERC721MetadataMintableFilterer: ERC721MetadataMintableFilterer{contract: contract}}, nil 16442 } 16443 16444 // NewERC721MetadataMintableCaller creates a new read-only instance of ERC721MetadataMintable, bound to a specific deployed contract. 16445 func NewERC721MetadataMintableCaller(address common.Address, caller bind.ContractCaller) (*ERC721MetadataMintableCaller, error) { 16446 contract, err := bindERC721MetadataMintable(address, caller, nil, nil) 16447 if err != nil { 16448 return nil, err 16449 } 16450 return &ERC721MetadataMintableCaller{contract: contract}, nil 16451 } 16452 16453 // NewERC721MetadataMintableTransactor creates a new write-only instance of ERC721MetadataMintable, bound to a specific deployed contract. 16454 func NewERC721MetadataMintableTransactor(address common.Address, transactor bind.ContractTransactor) (*ERC721MetadataMintableTransactor, error) { 16455 contract, err := bindERC721MetadataMintable(address, nil, transactor, nil) 16456 if err != nil { 16457 return nil, err 16458 } 16459 return &ERC721MetadataMintableTransactor{contract: contract}, nil 16460 } 16461 16462 // NewERC721MetadataMintableFilterer creates a new log filterer instance of ERC721MetadataMintable, bound to a specific deployed contract. 16463 func NewERC721MetadataMintableFilterer(address common.Address, filterer bind.ContractFilterer) (*ERC721MetadataMintableFilterer, error) { 16464 contract, err := bindERC721MetadataMintable(address, nil, nil, filterer) 16465 if err != nil { 16466 return nil, err 16467 } 16468 return &ERC721MetadataMintableFilterer{contract: contract}, nil 16469 } 16470 16471 // bindERC721MetadataMintable binds a generic wrapper to an already deployed contract. 16472 func bindERC721MetadataMintable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 16473 parsed, err := abi.JSON(strings.NewReader(ERC721MetadataMintableABI)) 16474 if err != nil { 16475 return nil, err 16476 } 16477 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 16478 } 16479 16480 // Call invokes the (constant) contract method with params as input values and 16481 // sets the output to result. The result type might be a single field for simple 16482 // returns, a slice of interfaces for anonymous returns and a struct for named 16483 // returns. 16484 func (_ERC721MetadataMintable *ERC721MetadataMintableRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 16485 return _ERC721MetadataMintable.Contract.ERC721MetadataMintableCaller.contract.Call(opts, result, method, params...) 16486 } 16487 16488 // Transfer initiates a plain transaction to move funds to the contract, calling 16489 // its default method if one is available. 16490 func (_ERC721MetadataMintable *ERC721MetadataMintableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 16491 return _ERC721MetadataMintable.Contract.ERC721MetadataMintableTransactor.contract.Transfer(opts) 16492 } 16493 16494 // Transact invokes the (paid) contract method with params as input values. 16495 func (_ERC721MetadataMintable *ERC721MetadataMintableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 16496 return _ERC721MetadataMintable.Contract.ERC721MetadataMintableTransactor.contract.Transact(opts, method, params...) 16497 } 16498 16499 // Call invokes the (constant) contract method with params as input values and 16500 // sets the output to result. The result type might be a single field for simple 16501 // returns, a slice of interfaces for anonymous returns and a struct for named 16502 // returns. 16503 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 16504 return _ERC721MetadataMintable.Contract.contract.Call(opts, result, method, params...) 16505 } 16506 16507 // Transfer initiates a plain transaction to move funds to the contract, calling 16508 // its default method if one is available. 16509 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 16510 return _ERC721MetadataMintable.Contract.contract.Transfer(opts) 16511 } 16512 16513 // Transact invokes the (paid) contract method with params as input values. 16514 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 16515 return _ERC721MetadataMintable.Contract.contract.Transact(opts, method, params...) 16516 } 16517 16518 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 16519 // 16520 // Solidity: function balanceOf(address owner) view returns(uint256) 16521 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 16522 var ( 16523 ret0 = new(*big.Int) 16524 ) 16525 out := ret0 16526 err := _ERC721MetadataMintable.contract.Call(opts, out, "balanceOf", owner) 16527 return *ret0, err 16528 } 16529 16530 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 16531 // 16532 // Solidity: function balanceOf(address owner) view returns(uint256) 16533 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) BalanceOf(owner common.Address) (*big.Int, error) { 16534 return _ERC721MetadataMintable.Contract.BalanceOf(&_ERC721MetadataMintable.CallOpts, owner) 16535 } 16536 16537 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 16538 // 16539 // Solidity: function balanceOf(address owner) view returns(uint256) 16540 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 16541 return _ERC721MetadataMintable.Contract.BalanceOf(&_ERC721MetadataMintable.CallOpts, owner) 16542 } 16543 16544 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 16545 // 16546 // Solidity: function getApproved(uint256 tokenId) view returns(address) 16547 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 16548 var ( 16549 ret0 = new(common.Address) 16550 ) 16551 out := ret0 16552 err := _ERC721MetadataMintable.contract.Call(opts, out, "getApproved", tokenId) 16553 return *ret0, err 16554 } 16555 16556 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 16557 // 16558 // Solidity: function getApproved(uint256 tokenId) view returns(address) 16559 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) GetApproved(tokenId *big.Int) (common.Address, error) { 16560 return _ERC721MetadataMintable.Contract.GetApproved(&_ERC721MetadataMintable.CallOpts, tokenId) 16561 } 16562 16563 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 16564 // 16565 // Solidity: function getApproved(uint256 tokenId) view returns(address) 16566 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 16567 return _ERC721MetadataMintable.Contract.GetApproved(&_ERC721MetadataMintable.CallOpts, tokenId) 16568 } 16569 16570 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 16571 // 16572 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 16573 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 16574 var ( 16575 ret0 = new(bool) 16576 ) 16577 out := ret0 16578 err := _ERC721MetadataMintable.contract.Call(opts, out, "isApprovedForAll", owner, operator) 16579 return *ret0, err 16580 } 16581 16582 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 16583 // 16584 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 16585 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 16586 return _ERC721MetadataMintable.Contract.IsApprovedForAll(&_ERC721MetadataMintable.CallOpts, owner, operator) 16587 } 16588 16589 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 16590 // 16591 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 16592 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 16593 return _ERC721MetadataMintable.Contract.IsApprovedForAll(&_ERC721MetadataMintable.CallOpts, owner, operator) 16594 } 16595 16596 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 16597 // 16598 // Solidity: function isMinter(address account) view returns(bool) 16599 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) IsMinter(opts *bind.CallOpts, account common.Address) (bool, error) { 16600 var ( 16601 ret0 = new(bool) 16602 ) 16603 out := ret0 16604 err := _ERC721MetadataMintable.contract.Call(opts, out, "isMinter", account) 16605 return *ret0, err 16606 } 16607 16608 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 16609 // 16610 // Solidity: function isMinter(address account) view returns(bool) 16611 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) IsMinter(account common.Address) (bool, error) { 16612 return _ERC721MetadataMintable.Contract.IsMinter(&_ERC721MetadataMintable.CallOpts, account) 16613 } 16614 16615 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 16616 // 16617 // Solidity: function isMinter(address account) view returns(bool) 16618 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) IsMinter(account common.Address) (bool, error) { 16619 return _ERC721MetadataMintable.Contract.IsMinter(&_ERC721MetadataMintable.CallOpts, account) 16620 } 16621 16622 // Name is a free data retrieval call binding the contract method 0x06fdde03. 16623 // 16624 // Solidity: function name() view returns(string) 16625 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) Name(opts *bind.CallOpts) (string, error) { 16626 var ( 16627 ret0 = new(string) 16628 ) 16629 out := ret0 16630 err := _ERC721MetadataMintable.contract.Call(opts, out, "name") 16631 return *ret0, err 16632 } 16633 16634 // Name is a free data retrieval call binding the contract method 0x06fdde03. 16635 // 16636 // Solidity: function name() view returns(string) 16637 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) Name() (string, error) { 16638 return _ERC721MetadataMintable.Contract.Name(&_ERC721MetadataMintable.CallOpts) 16639 } 16640 16641 // Name is a free data retrieval call binding the contract method 0x06fdde03. 16642 // 16643 // Solidity: function name() view returns(string) 16644 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) Name() (string, error) { 16645 return _ERC721MetadataMintable.Contract.Name(&_ERC721MetadataMintable.CallOpts) 16646 } 16647 16648 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 16649 // 16650 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 16651 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 16652 var ( 16653 ret0 = new(common.Address) 16654 ) 16655 out := ret0 16656 err := _ERC721MetadataMintable.contract.Call(opts, out, "ownerOf", tokenId) 16657 return *ret0, err 16658 } 16659 16660 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 16661 // 16662 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 16663 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 16664 return _ERC721MetadataMintable.Contract.OwnerOf(&_ERC721MetadataMintable.CallOpts, tokenId) 16665 } 16666 16667 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 16668 // 16669 // Solidity: function ownerOf(uint256 tokenId) view returns(address) 16670 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 16671 return _ERC721MetadataMintable.Contract.OwnerOf(&_ERC721MetadataMintable.CallOpts, tokenId) 16672 } 16673 16674 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 16675 // 16676 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 16677 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 16678 var ( 16679 ret0 = new(bool) 16680 ) 16681 out := ret0 16682 err := _ERC721MetadataMintable.contract.Call(opts, out, "supportsInterface", interfaceId) 16683 return *ret0, err 16684 } 16685 16686 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 16687 // 16688 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 16689 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 16690 return _ERC721MetadataMintable.Contract.SupportsInterface(&_ERC721MetadataMintable.CallOpts, interfaceId) 16691 } 16692 16693 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 16694 // 16695 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 16696 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 16697 return _ERC721MetadataMintable.Contract.SupportsInterface(&_ERC721MetadataMintable.CallOpts, interfaceId) 16698 } 16699 16700 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 16701 // 16702 // Solidity: function symbol() view returns(string) 16703 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) Symbol(opts *bind.CallOpts) (string, error) { 16704 var ( 16705 ret0 = new(string) 16706 ) 16707 out := ret0 16708 err := _ERC721MetadataMintable.contract.Call(opts, out, "symbol") 16709 return *ret0, err 16710 } 16711 16712 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 16713 // 16714 // Solidity: function symbol() view returns(string) 16715 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) Symbol() (string, error) { 16716 return _ERC721MetadataMintable.Contract.Symbol(&_ERC721MetadataMintable.CallOpts) 16717 } 16718 16719 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 16720 // 16721 // Solidity: function symbol() view returns(string) 16722 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) Symbol() (string, error) { 16723 return _ERC721MetadataMintable.Contract.Symbol(&_ERC721MetadataMintable.CallOpts) 16724 } 16725 16726 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 16727 // 16728 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 16729 func (_ERC721MetadataMintable *ERC721MetadataMintableCaller) TokenURI(opts *bind.CallOpts, tokenId *big.Int) (string, error) { 16730 var ( 16731 ret0 = new(string) 16732 ) 16733 out := ret0 16734 err := _ERC721MetadataMintable.contract.Call(opts, out, "tokenURI", tokenId) 16735 return *ret0, err 16736 } 16737 16738 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 16739 // 16740 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 16741 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) TokenURI(tokenId *big.Int) (string, error) { 16742 return _ERC721MetadataMintable.Contract.TokenURI(&_ERC721MetadataMintable.CallOpts, tokenId) 16743 } 16744 16745 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 16746 // 16747 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 16748 func (_ERC721MetadataMintable *ERC721MetadataMintableCallerSession) TokenURI(tokenId *big.Int) (string, error) { 16749 return _ERC721MetadataMintable.Contract.TokenURI(&_ERC721MetadataMintable.CallOpts, tokenId) 16750 } 16751 16752 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 16753 // 16754 // Solidity: function addMinter(address account) returns() 16755 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) AddMinter(opts *bind.TransactOpts, account common.Address) (*types.Transaction, error) { 16756 return _ERC721MetadataMintable.contract.Transact(opts, "addMinter", account) 16757 } 16758 16759 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 16760 // 16761 // Solidity: function addMinter(address account) returns() 16762 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) AddMinter(account common.Address) (*types.Transaction, error) { 16763 return _ERC721MetadataMintable.Contract.AddMinter(&_ERC721MetadataMintable.TransactOpts, account) 16764 } 16765 16766 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 16767 // 16768 // Solidity: function addMinter(address account) returns() 16769 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) AddMinter(account common.Address) (*types.Transaction, error) { 16770 return _ERC721MetadataMintable.Contract.AddMinter(&_ERC721MetadataMintable.TransactOpts, account) 16771 } 16772 16773 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 16774 // 16775 // Solidity: function approve(address to, uint256 tokenId) returns() 16776 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16777 return _ERC721MetadataMintable.contract.Transact(opts, "approve", to, tokenId) 16778 } 16779 16780 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 16781 // 16782 // Solidity: function approve(address to, uint256 tokenId) returns() 16783 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16784 return _ERC721MetadataMintable.Contract.Approve(&_ERC721MetadataMintable.TransactOpts, to, tokenId) 16785 } 16786 16787 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 16788 // 16789 // Solidity: function approve(address to, uint256 tokenId) returns() 16790 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16791 return _ERC721MetadataMintable.Contract.Approve(&_ERC721MetadataMintable.TransactOpts, to, tokenId) 16792 } 16793 16794 // MintWithTokenURI is a paid mutator transaction binding the contract method 0x50bb4e7f. 16795 // 16796 // Solidity: function mintWithTokenURI(address to, uint256 tokenId, string tokenURI) returns(bool) 16797 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) MintWithTokenURI(opts *bind.TransactOpts, to common.Address, tokenId *big.Int, tokenURI string) (*types.Transaction, error) { 16798 return _ERC721MetadataMintable.contract.Transact(opts, "mintWithTokenURI", to, tokenId, tokenURI) 16799 } 16800 16801 // MintWithTokenURI is a paid mutator transaction binding the contract method 0x50bb4e7f. 16802 // 16803 // Solidity: function mintWithTokenURI(address to, uint256 tokenId, string tokenURI) returns(bool) 16804 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) MintWithTokenURI(to common.Address, tokenId *big.Int, tokenURI string) (*types.Transaction, error) { 16805 return _ERC721MetadataMintable.Contract.MintWithTokenURI(&_ERC721MetadataMintable.TransactOpts, to, tokenId, tokenURI) 16806 } 16807 16808 // MintWithTokenURI is a paid mutator transaction binding the contract method 0x50bb4e7f. 16809 // 16810 // Solidity: function mintWithTokenURI(address to, uint256 tokenId, string tokenURI) returns(bool) 16811 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) MintWithTokenURI(to common.Address, tokenId *big.Int, tokenURI string) (*types.Transaction, error) { 16812 return _ERC721MetadataMintable.Contract.MintWithTokenURI(&_ERC721MetadataMintable.TransactOpts, to, tokenId, tokenURI) 16813 } 16814 16815 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 16816 // 16817 // Solidity: function renounceMinter() returns() 16818 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) RenounceMinter(opts *bind.TransactOpts) (*types.Transaction, error) { 16819 return _ERC721MetadataMintable.contract.Transact(opts, "renounceMinter") 16820 } 16821 16822 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 16823 // 16824 // Solidity: function renounceMinter() returns() 16825 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) RenounceMinter() (*types.Transaction, error) { 16826 return _ERC721MetadataMintable.Contract.RenounceMinter(&_ERC721MetadataMintable.TransactOpts) 16827 } 16828 16829 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 16830 // 16831 // Solidity: function renounceMinter() returns() 16832 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) RenounceMinter() (*types.Transaction, error) { 16833 return _ERC721MetadataMintable.Contract.RenounceMinter(&_ERC721MetadataMintable.TransactOpts) 16834 } 16835 16836 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 16837 // 16838 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 16839 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16840 return _ERC721MetadataMintable.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 16841 } 16842 16843 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 16844 // 16845 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 16846 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16847 return _ERC721MetadataMintable.Contract.SafeTransferFrom(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId) 16848 } 16849 16850 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 16851 // 16852 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 16853 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16854 return _ERC721MetadataMintable.Contract.SafeTransferFrom(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId) 16855 } 16856 16857 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 16858 // 16859 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 16860 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 16861 return _ERC721MetadataMintable.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, _data) 16862 } 16863 16864 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 16865 // 16866 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 16867 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 16868 return _ERC721MetadataMintable.Contract.SafeTransferFrom0(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId, _data) 16869 } 16870 16871 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 16872 // 16873 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes _data) returns() 16874 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, _data []byte) (*types.Transaction, error) { 16875 return _ERC721MetadataMintable.Contract.SafeTransferFrom0(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId, _data) 16876 } 16877 16878 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 16879 // 16880 // Solidity: function setApprovalForAll(address to, bool approved) returns() 16881 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) SetApprovalForAll(opts *bind.TransactOpts, to common.Address, approved bool) (*types.Transaction, error) { 16882 return _ERC721MetadataMintable.contract.Transact(opts, "setApprovalForAll", to, approved) 16883 } 16884 16885 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 16886 // 16887 // Solidity: function setApprovalForAll(address to, bool approved) returns() 16888 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 16889 return _ERC721MetadataMintable.Contract.SetApprovalForAll(&_ERC721MetadataMintable.TransactOpts, to, approved) 16890 } 16891 16892 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 16893 // 16894 // Solidity: function setApprovalForAll(address to, bool approved) returns() 16895 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) SetApprovalForAll(to common.Address, approved bool) (*types.Transaction, error) { 16896 return _ERC721MetadataMintable.Contract.SetApprovalForAll(&_ERC721MetadataMintable.TransactOpts, to, approved) 16897 } 16898 16899 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 16900 // 16901 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 16902 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16903 return _ERC721MetadataMintable.contract.Transact(opts, "transferFrom", from, to, tokenId) 16904 } 16905 16906 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 16907 // 16908 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 16909 func (_ERC721MetadataMintable *ERC721MetadataMintableSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16910 return _ERC721MetadataMintable.Contract.TransferFrom(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId) 16911 } 16912 16913 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 16914 // 16915 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 16916 func (_ERC721MetadataMintable *ERC721MetadataMintableTransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 16917 return _ERC721MetadataMintable.Contract.TransferFrom(&_ERC721MetadataMintable.TransactOpts, from, to, tokenId) 16918 } 16919 16920 // ERC721MetadataMintableApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC721MetadataMintable contract. 16921 type ERC721MetadataMintableApprovalIterator struct { 16922 Event *ERC721MetadataMintableApproval // Event containing the contract specifics and raw log 16923 16924 contract *bind.BoundContract // Generic contract to use for unpacking event data 16925 event string // Event name to use for unpacking event data 16926 16927 logs chan types.Log // Log channel receiving the found contract events 16928 sub klaytn.Subscription // Subscription for errors, completion and termination 16929 done bool // Whether the subscription completed delivering logs 16930 fail error // Occurred error to stop iteration 16931 } 16932 16933 // Next advances the iterator to the subsequent event, returning whether there 16934 // are any more events found. In case of a retrieval or parsing error, false is 16935 // returned and Error() can be queried for the exact failure. 16936 func (it *ERC721MetadataMintableApprovalIterator) Next() bool { 16937 // If the iterator failed, stop iterating 16938 if it.fail != nil { 16939 return false 16940 } 16941 // If the iterator completed, deliver directly whatever's available 16942 if it.done { 16943 select { 16944 case log := <-it.logs: 16945 it.Event = new(ERC721MetadataMintableApproval) 16946 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16947 it.fail = err 16948 return false 16949 } 16950 it.Event.Raw = log 16951 return true 16952 16953 default: 16954 return false 16955 } 16956 } 16957 // Iterator still in progress, wait for either a data or an error event 16958 select { 16959 case log := <-it.logs: 16960 it.Event = new(ERC721MetadataMintableApproval) 16961 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 16962 it.fail = err 16963 return false 16964 } 16965 it.Event.Raw = log 16966 return true 16967 16968 case err := <-it.sub.Err(): 16969 it.done = true 16970 it.fail = err 16971 return it.Next() 16972 } 16973 } 16974 16975 // Error returns any retrieval or parsing error occurred during filtering. 16976 func (it *ERC721MetadataMintableApprovalIterator) Error() error { 16977 return it.fail 16978 } 16979 16980 // Close terminates the iteration process, releasing any pending underlying 16981 // resources. 16982 func (it *ERC721MetadataMintableApprovalIterator) Close() error { 16983 it.sub.Unsubscribe() 16984 return nil 16985 } 16986 16987 // ERC721MetadataMintableApproval represents a Approval event raised by the ERC721MetadataMintable contract. 16988 type ERC721MetadataMintableApproval struct { 16989 Owner common.Address 16990 Approved common.Address 16991 TokenId *big.Int 16992 Raw types.Log // Blockchain specific contextual infos 16993 } 16994 16995 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 16996 // 16997 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 16998 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*ERC721MetadataMintableApprovalIterator, error) { 16999 17000 var ownerRule []interface{} 17001 for _, ownerItem := range owner { 17002 ownerRule = append(ownerRule, ownerItem) 17003 } 17004 var approvedRule []interface{} 17005 for _, approvedItem := range approved { 17006 approvedRule = append(approvedRule, approvedItem) 17007 } 17008 var tokenIdRule []interface{} 17009 for _, tokenIdItem := range tokenId { 17010 tokenIdRule = append(tokenIdRule, tokenIdItem) 17011 } 17012 17013 logs, sub, err := _ERC721MetadataMintable.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 17014 if err != nil { 17015 return nil, err 17016 } 17017 return &ERC721MetadataMintableApprovalIterator{contract: _ERC721MetadataMintable.contract, event: "Approval", logs: logs, sub: sub}, nil 17018 } 17019 17020 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 17021 // 17022 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 17023 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721MetadataMintableApproval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 17024 17025 var ownerRule []interface{} 17026 for _, ownerItem := range owner { 17027 ownerRule = append(ownerRule, ownerItem) 17028 } 17029 var approvedRule []interface{} 17030 for _, approvedItem := range approved { 17031 approvedRule = append(approvedRule, approvedItem) 17032 } 17033 var tokenIdRule []interface{} 17034 for _, tokenIdItem := range tokenId { 17035 tokenIdRule = append(tokenIdRule, tokenIdItem) 17036 } 17037 17038 logs, sub, err := _ERC721MetadataMintable.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 17039 if err != nil { 17040 return nil, err 17041 } 17042 return event.NewSubscription(func(quit <-chan struct{}) error { 17043 defer sub.Unsubscribe() 17044 for { 17045 select { 17046 case log := <-logs: 17047 // New log arrived, parse the event and forward to the user 17048 event := new(ERC721MetadataMintableApproval) 17049 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "Approval", log); err != nil { 17050 return err 17051 } 17052 event.Raw = log 17053 17054 select { 17055 case sink <- event: 17056 case err := <-sub.Err(): 17057 return err 17058 case <-quit: 17059 return nil 17060 } 17061 case err := <-sub.Err(): 17062 return err 17063 case <-quit: 17064 return nil 17065 } 17066 } 17067 }), nil 17068 } 17069 17070 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 17071 // 17072 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 17073 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) ParseApproval(log types.Log) (*ERC721MetadataMintableApproval, error) { 17074 event := new(ERC721MetadataMintableApproval) 17075 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "Approval", log); err != nil { 17076 return nil, err 17077 } 17078 return event, nil 17079 } 17080 17081 // ERC721MetadataMintableApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ERC721MetadataMintable contract. 17082 type ERC721MetadataMintableApprovalForAllIterator struct { 17083 Event *ERC721MetadataMintableApprovalForAll // Event containing the contract specifics and raw log 17084 17085 contract *bind.BoundContract // Generic contract to use for unpacking event data 17086 event string // Event name to use for unpacking event data 17087 17088 logs chan types.Log // Log channel receiving the found contract events 17089 sub klaytn.Subscription // Subscription for errors, completion and termination 17090 done bool // Whether the subscription completed delivering logs 17091 fail error // Occurred error to stop iteration 17092 } 17093 17094 // Next advances the iterator to the subsequent event, returning whether there 17095 // are any more events found. In case of a retrieval or parsing error, false is 17096 // returned and Error() can be queried for the exact failure. 17097 func (it *ERC721MetadataMintableApprovalForAllIterator) Next() bool { 17098 // If the iterator failed, stop iterating 17099 if it.fail != nil { 17100 return false 17101 } 17102 // If the iterator completed, deliver directly whatever's available 17103 if it.done { 17104 select { 17105 case log := <-it.logs: 17106 it.Event = new(ERC721MetadataMintableApprovalForAll) 17107 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17108 it.fail = err 17109 return false 17110 } 17111 it.Event.Raw = log 17112 return true 17113 17114 default: 17115 return false 17116 } 17117 } 17118 // Iterator still in progress, wait for either a data or an error event 17119 select { 17120 case log := <-it.logs: 17121 it.Event = new(ERC721MetadataMintableApprovalForAll) 17122 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17123 it.fail = err 17124 return false 17125 } 17126 it.Event.Raw = log 17127 return true 17128 17129 case err := <-it.sub.Err(): 17130 it.done = true 17131 it.fail = err 17132 return it.Next() 17133 } 17134 } 17135 17136 // Error returns any retrieval or parsing error occurred during filtering. 17137 func (it *ERC721MetadataMintableApprovalForAllIterator) Error() error { 17138 return it.fail 17139 } 17140 17141 // Close terminates the iteration process, releasing any pending underlying 17142 // resources. 17143 func (it *ERC721MetadataMintableApprovalForAllIterator) Close() error { 17144 it.sub.Unsubscribe() 17145 return nil 17146 } 17147 17148 // ERC721MetadataMintableApprovalForAll represents a ApprovalForAll event raised by the ERC721MetadataMintable contract. 17149 type ERC721MetadataMintableApprovalForAll struct { 17150 Owner common.Address 17151 Operator common.Address 17152 Approved bool 17153 Raw types.Log // Blockchain specific contextual infos 17154 } 17155 17156 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 17157 // 17158 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 17159 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ERC721MetadataMintableApprovalForAllIterator, error) { 17160 17161 var ownerRule []interface{} 17162 for _, ownerItem := range owner { 17163 ownerRule = append(ownerRule, ownerItem) 17164 } 17165 var operatorRule []interface{} 17166 for _, operatorItem := range operator { 17167 operatorRule = append(operatorRule, operatorItem) 17168 } 17169 17170 logs, sub, err := _ERC721MetadataMintable.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 17171 if err != nil { 17172 return nil, err 17173 } 17174 return &ERC721MetadataMintableApprovalForAllIterator{contract: _ERC721MetadataMintable.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 17175 } 17176 17177 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 17178 // 17179 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 17180 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ERC721MetadataMintableApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 17181 17182 var ownerRule []interface{} 17183 for _, ownerItem := range owner { 17184 ownerRule = append(ownerRule, ownerItem) 17185 } 17186 var operatorRule []interface{} 17187 for _, operatorItem := range operator { 17188 operatorRule = append(operatorRule, operatorItem) 17189 } 17190 17191 logs, sub, err := _ERC721MetadataMintable.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 17192 if err != nil { 17193 return nil, err 17194 } 17195 return event.NewSubscription(func(quit <-chan struct{}) error { 17196 defer sub.Unsubscribe() 17197 for { 17198 select { 17199 case log := <-logs: 17200 // New log arrived, parse the event and forward to the user 17201 event := new(ERC721MetadataMintableApprovalForAll) 17202 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 17203 return err 17204 } 17205 event.Raw = log 17206 17207 select { 17208 case sink <- event: 17209 case err := <-sub.Err(): 17210 return err 17211 case <-quit: 17212 return nil 17213 } 17214 case err := <-sub.Err(): 17215 return err 17216 case <-quit: 17217 return nil 17218 } 17219 } 17220 }), nil 17221 } 17222 17223 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 17224 // 17225 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 17226 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) ParseApprovalForAll(log types.Log) (*ERC721MetadataMintableApprovalForAll, error) { 17227 event := new(ERC721MetadataMintableApprovalForAll) 17228 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 17229 return nil, err 17230 } 17231 return event, nil 17232 } 17233 17234 // ERC721MetadataMintableMinterAddedIterator is returned from FilterMinterAdded and is used to iterate over the raw logs and unpacked data for MinterAdded events raised by the ERC721MetadataMintable contract. 17235 type ERC721MetadataMintableMinterAddedIterator struct { 17236 Event *ERC721MetadataMintableMinterAdded // Event containing the contract specifics and raw log 17237 17238 contract *bind.BoundContract // Generic contract to use for unpacking event data 17239 event string // Event name to use for unpacking event data 17240 17241 logs chan types.Log // Log channel receiving the found contract events 17242 sub klaytn.Subscription // Subscription for errors, completion and termination 17243 done bool // Whether the subscription completed delivering logs 17244 fail error // Occurred error to stop iteration 17245 } 17246 17247 // Next advances the iterator to the subsequent event, returning whether there 17248 // are any more events found. In case of a retrieval or parsing error, false is 17249 // returned and Error() can be queried for the exact failure. 17250 func (it *ERC721MetadataMintableMinterAddedIterator) Next() bool { 17251 // If the iterator failed, stop iterating 17252 if it.fail != nil { 17253 return false 17254 } 17255 // If the iterator completed, deliver directly whatever's available 17256 if it.done { 17257 select { 17258 case log := <-it.logs: 17259 it.Event = new(ERC721MetadataMintableMinterAdded) 17260 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17261 it.fail = err 17262 return false 17263 } 17264 it.Event.Raw = log 17265 return true 17266 17267 default: 17268 return false 17269 } 17270 } 17271 // Iterator still in progress, wait for either a data or an error event 17272 select { 17273 case log := <-it.logs: 17274 it.Event = new(ERC721MetadataMintableMinterAdded) 17275 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17276 it.fail = err 17277 return false 17278 } 17279 it.Event.Raw = log 17280 return true 17281 17282 case err := <-it.sub.Err(): 17283 it.done = true 17284 it.fail = err 17285 return it.Next() 17286 } 17287 } 17288 17289 // Error returns any retrieval or parsing error occurred during filtering. 17290 func (it *ERC721MetadataMintableMinterAddedIterator) Error() error { 17291 return it.fail 17292 } 17293 17294 // Close terminates the iteration process, releasing any pending underlying 17295 // resources. 17296 func (it *ERC721MetadataMintableMinterAddedIterator) Close() error { 17297 it.sub.Unsubscribe() 17298 return nil 17299 } 17300 17301 // ERC721MetadataMintableMinterAdded represents a MinterAdded event raised by the ERC721MetadataMintable contract. 17302 type ERC721MetadataMintableMinterAdded struct { 17303 Account common.Address 17304 Raw types.Log // Blockchain specific contextual infos 17305 } 17306 17307 // FilterMinterAdded is a free log retrieval operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 17308 // 17309 // Solidity: event MinterAdded(address indexed account) 17310 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) FilterMinterAdded(opts *bind.FilterOpts, account []common.Address) (*ERC721MetadataMintableMinterAddedIterator, error) { 17311 17312 var accountRule []interface{} 17313 for _, accountItem := range account { 17314 accountRule = append(accountRule, accountItem) 17315 } 17316 17317 logs, sub, err := _ERC721MetadataMintable.contract.FilterLogs(opts, "MinterAdded", accountRule) 17318 if err != nil { 17319 return nil, err 17320 } 17321 return &ERC721MetadataMintableMinterAddedIterator{contract: _ERC721MetadataMintable.contract, event: "MinterAdded", logs: logs, sub: sub}, nil 17322 } 17323 17324 // WatchMinterAdded is a free log subscription operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 17325 // 17326 // Solidity: event MinterAdded(address indexed account) 17327 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) WatchMinterAdded(opts *bind.WatchOpts, sink chan<- *ERC721MetadataMintableMinterAdded, account []common.Address) (event.Subscription, error) { 17328 17329 var accountRule []interface{} 17330 for _, accountItem := range account { 17331 accountRule = append(accountRule, accountItem) 17332 } 17333 17334 logs, sub, err := _ERC721MetadataMintable.contract.WatchLogs(opts, "MinterAdded", accountRule) 17335 if err != nil { 17336 return nil, err 17337 } 17338 return event.NewSubscription(func(quit <-chan struct{}) error { 17339 defer sub.Unsubscribe() 17340 for { 17341 select { 17342 case log := <-logs: 17343 // New log arrived, parse the event and forward to the user 17344 event := new(ERC721MetadataMintableMinterAdded) 17345 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "MinterAdded", log); err != nil { 17346 return err 17347 } 17348 event.Raw = log 17349 17350 select { 17351 case sink <- event: 17352 case err := <-sub.Err(): 17353 return err 17354 case <-quit: 17355 return nil 17356 } 17357 case err := <-sub.Err(): 17358 return err 17359 case <-quit: 17360 return nil 17361 } 17362 } 17363 }), nil 17364 } 17365 17366 // ParseMinterAdded is a log parse operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 17367 // 17368 // Solidity: event MinterAdded(address indexed account) 17369 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) ParseMinterAdded(log types.Log) (*ERC721MetadataMintableMinterAdded, error) { 17370 event := new(ERC721MetadataMintableMinterAdded) 17371 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "MinterAdded", log); err != nil { 17372 return nil, err 17373 } 17374 return event, nil 17375 } 17376 17377 // ERC721MetadataMintableMinterRemovedIterator is returned from FilterMinterRemoved and is used to iterate over the raw logs and unpacked data for MinterRemoved events raised by the ERC721MetadataMintable contract. 17378 type ERC721MetadataMintableMinterRemovedIterator struct { 17379 Event *ERC721MetadataMintableMinterRemoved // Event containing the contract specifics and raw log 17380 17381 contract *bind.BoundContract // Generic contract to use for unpacking event data 17382 event string // Event name to use for unpacking event data 17383 17384 logs chan types.Log // Log channel receiving the found contract events 17385 sub klaytn.Subscription // Subscription for errors, completion and termination 17386 done bool // Whether the subscription completed delivering logs 17387 fail error // Occurred error to stop iteration 17388 } 17389 17390 // Next advances the iterator to the subsequent event, returning whether there 17391 // are any more events found. In case of a retrieval or parsing error, false is 17392 // returned and Error() can be queried for the exact failure. 17393 func (it *ERC721MetadataMintableMinterRemovedIterator) Next() bool { 17394 // If the iterator failed, stop iterating 17395 if it.fail != nil { 17396 return false 17397 } 17398 // If the iterator completed, deliver directly whatever's available 17399 if it.done { 17400 select { 17401 case log := <-it.logs: 17402 it.Event = new(ERC721MetadataMintableMinterRemoved) 17403 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17404 it.fail = err 17405 return false 17406 } 17407 it.Event.Raw = log 17408 return true 17409 17410 default: 17411 return false 17412 } 17413 } 17414 // Iterator still in progress, wait for either a data or an error event 17415 select { 17416 case log := <-it.logs: 17417 it.Event = new(ERC721MetadataMintableMinterRemoved) 17418 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17419 it.fail = err 17420 return false 17421 } 17422 it.Event.Raw = log 17423 return true 17424 17425 case err := <-it.sub.Err(): 17426 it.done = true 17427 it.fail = err 17428 return it.Next() 17429 } 17430 } 17431 17432 // Error returns any retrieval or parsing error occurred during filtering. 17433 func (it *ERC721MetadataMintableMinterRemovedIterator) Error() error { 17434 return it.fail 17435 } 17436 17437 // Close terminates the iteration process, releasing any pending underlying 17438 // resources. 17439 func (it *ERC721MetadataMintableMinterRemovedIterator) Close() error { 17440 it.sub.Unsubscribe() 17441 return nil 17442 } 17443 17444 // ERC721MetadataMintableMinterRemoved represents a MinterRemoved event raised by the ERC721MetadataMintable contract. 17445 type ERC721MetadataMintableMinterRemoved struct { 17446 Account common.Address 17447 Raw types.Log // Blockchain specific contextual infos 17448 } 17449 17450 // FilterMinterRemoved is a free log retrieval operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 17451 // 17452 // Solidity: event MinterRemoved(address indexed account) 17453 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) FilterMinterRemoved(opts *bind.FilterOpts, account []common.Address) (*ERC721MetadataMintableMinterRemovedIterator, error) { 17454 17455 var accountRule []interface{} 17456 for _, accountItem := range account { 17457 accountRule = append(accountRule, accountItem) 17458 } 17459 17460 logs, sub, err := _ERC721MetadataMintable.contract.FilterLogs(opts, "MinterRemoved", accountRule) 17461 if err != nil { 17462 return nil, err 17463 } 17464 return &ERC721MetadataMintableMinterRemovedIterator{contract: _ERC721MetadataMintable.contract, event: "MinterRemoved", logs: logs, sub: sub}, nil 17465 } 17466 17467 // WatchMinterRemoved is a free log subscription operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 17468 // 17469 // Solidity: event MinterRemoved(address indexed account) 17470 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) WatchMinterRemoved(opts *bind.WatchOpts, sink chan<- *ERC721MetadataMintableMinterRemoved, account []common.Address) (event.Subscription, error) { 17471 17472 var accountRule []interface{} 17473 for _, accountItem := range account { 17474 accountRule = append(accountRule, accountItem) 17475 } 17476 17477 logs, sub, err := _ERC721MetadataMintable.contract.WatchLogs(opts, "MinterRemoved", accountRule) 17478 if err != nil { 17479 return nil, err 17480 } 17481 return event.NewSubscription(func(quit <-chan struct{}) error { 17482 defer sub.Unsubscribe() 17483 for { 17484 select { 17485 case log := <-logs: 17486 // New log arrived, parse the event and forward to the user 17487 event := new(ERC721MetadataMintableMinterRemoved) 17488 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 17489 return err 17490 } 17491 event.Raw = log 17492 17493 select { 17494 case sink <- event: 17495 case err := <-sub.Err(): 17496 return err 17497 case <-quit: 17498 return nil 17499 } 17500 case err := <-sub.Err(): 17501 return err 17502 case <-quit: 17503 return nil 17504 } 17505 } 17506 }), nil 17507 } 17508 17509 // ParseMinterRemoved is a log parse operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 17510 // 17511 // Solidity: event MinterRemoved(address indexed account) 17512 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) ParseMinterRemoved(log types.Log) (*ERC721MetadataMintableMinterRemoved, error) { 17513 event := new(ERC721MetadataMintableMinterRemoved) 17514 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 17515 return nil, err 17516 } 17517 return event, nil 17518 } 17519 17520 // ERC721MetadataMintableTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC721MetadataMintable contract. 17521 type ERC721MetadataMintableTransferIterator struct { 17522 Event *ERC721MetadataMintableTransfer // Event containing the contract specifics and raw log 17523 17524 contract *bind.BoundContract // Generic contract to use for unpacking event data 17525 event string // Event name to use for unpacking event data 17526 17527 logs chan types.Log // Log channel receiving the found contract events 17528 sub klaytn.Subscription // Subscription for errors, completion and termination 17529 done bool // Whether the subscription completed delivering logs 17530 fail error // Occurred error to stop iteration 17531 } 17532 17533 // Next advances the iterator to the subsequent event, returning whether there 17534 // are any more events found. In case of a retrieval or parsing error, false is 17535 // returned and Error() can be queried for the exact failure. 17536 func (it *ERC721MetadataMintableTransferIterator) Next() bool { 17537 // If the iterator failed, stop iterating 17538 if it.fail != nil { 17539 return false 17540 } 17541 // If the iterator completed, deliver directly whatever's available 17542 if it.done { 17543 select { 17544 case log := <-it.logs: 17545 it.Event = new(ERC721MetadataMintableTransfer) 17546 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17547 it.fail = err 17548 return false 17549 } 17550 it.Event.Raw = log 17551 return true 17552 17553 default: 17554 return false 17555 } 17556 } 17557 // Iterator still in progress, wait for either a data or an error event 17558 select { 17559 case log := <-it.logs: 17560 it.Event = new(ERC721MetadataMintableTransfer) 17561 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 17562 it.fail = err 17563 return false 17564 } 17565 it.Event.Raw = log 17566 return true 17567 17568 case err := <-it.sub.Err(): 17569 it.done = true 17570 it.fail = err 17571 return it.Next() 17572 } 17573 } 17574 17575 // Error returns any retrieval or parsing error occurred during filtering. 17576 func (it *ERC721MetadataMintableTransferIterator) Error() error { 17577 return it.fail 17578 } 17579 17580 // Close terminates the iteration process, releasing any pending underlying 17581 // resources. 17582 func (it *ERC721MetadataMintableTransferIterator) Close() error { 17583 it.sub.Unsubscribe() 17584 return nil 17585 } 17586 17587 // ERC721MetadataMintableTransfer represents a Transfer event raised by the ERC721MetadataMintable contract. 17588 type ERC721MetadataMintableTransfer struct { 17589 From common.Address 17590 To common.Address 17591 TokenId *big.Int 17592 Raw types.Log // Blockchain specific contextual infos 17593 } 17594 17595 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 17596 // 17597 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 17598 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*ERC721MetadataMintableTransferIterator, error) { 17599 17600 var fromRule []interface{} 17601 for _, fromItem := range from { 17602 fromRule = append(fromRule, fromItem) 17603 } 17604 var toRule []interface{} 17605 for _, toItem := range to { 17606 toRule = append(toRule, toItem) 17607 } 17608 var tokenIdRule []interface{} 17609 for _, tokenIdItem := range tokenId { 17610 tokenIdRule = append(tokenIdRule, tokenIdItem) 17611 } 17612 17613 logs, sub, err := _ERC721MetadataMintable.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 17614 if err != nil { 17615 return nil, err 17616 } 17617 return &ERC721MetadataMintableTransferIterator{contract: _ERC721MetadataMintable.contract, event: "Transfer", logs: logs, sub: sub}, nil 17618 } 17619 17620 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 17621 // 17622 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 17623 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721MetadataMintableTransfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 17624 17625 var fromRule []interface{} 17626 for _, fromItem := range from { 17627 fromRule = append(fromRule, fromItem) 17628 } 17629 var toRule []interface{} 17630 for _, toItem := range to { 17631 toRule = append(toRule, toItem) 17632 } 17633 var tokenIdRule []interface{} 17634 for _, tokenIdItem := range tokenId { 17635 tokenIdRule = append(tokenIdRule, tokenIdItem) 17636 } 17637 17638 logs, sub, err := _ERC721MetadataMintable.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 17639 if err != nil { 17640 return nil, err 17641 } 17642 return event.NewSubscription(func(quit <-chan struct{}) error { 17643 defer sub.Unsubscribe() 17644 for { 17645 select { 17646 case log := <-logs: 17647 // New log arrived, parse the event and forward to the user 17648 event := new(ERC721MetadataMintableTransfer) 17649 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "Transfer", log); err != nil { 17650 return err 17651 } 17652 event.Raw = log 17653 17654 select { 17655 case sink <- event: 17656 case err := <-sub.Err(): 17657 return err 17658 case <-quit: 17659 return nil 17660 } 17661 case err := <-sub.Err(): 17662 return err 17663 case <-quit: 17664 return nil 17665 } 17666 } 17667 }), nil 17668 } 17669 17670 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 17671 // 17672 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 17673 func (_ERC721MetadataMintable *ERC721MetadataMintableFilterer) ParseTransfer(log types.Log) (*ERC721MetadataMintableTransfer, error) { 17674 event := new(ERC721MetadataMintableTransfer) 17675 if err := _ERC721MetadataMintable.contract.UnpackLog(event, "Transfer", log); err != nil { 17676 return nil, err 17677 } 17678 return event, nil 17679 } 17680 17681 // ExtBridgeABI is the input ABI used to generate the binding from. 17682 const ExtBridgeABI = "[{\"constant\":true,\"inputs\":[],\"name\":\"callback\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"lockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"handleNoncesToBlockNums\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"operators\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isRunning\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"requestERC721Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"requestERC20Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_fee\",\"type\":\"uint256\"},{\"name\":\"_requestNonce\",\"type\":\"uint64\"}],\"name\":\"setERC20Fee\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"MAX_OPERATOR\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"registeredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_requestTxHash\",\"type\":\"bytes32\"},{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_requestNonce\",\"type\":\"uint64\"},{\"name\":\"_requestBlockNumber\",\"type\":\"uint64\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"handleERC20Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"},{\"name\":\"_cToken\",\"type\":\"address\"}],\"name\":\"registerToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"feeOfERC20\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"indexOfTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"lowerHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_price\",\"type\":\"uint256\"}],\"name\":\"requestSellERC721\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"upperHandleNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"name\":\"operatorThresholds\",\"outputs\":[{\"name\":\"\",\"type\":\"uint8\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"lockedTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"modeMintBurn\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"requestNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"handledRequestTx\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"registeredTokens\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"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\":\"_addr\",\"type\":\"address\"}],\"name\":\"setCallback\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"name\":\"closedValueTransferVotes\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"recoveryBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"unlockToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"configurationNonce\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_requestTxHash\",\"type\":\"bytes32\"},{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_requestNonce\",\"type\":\"uint64\"},{\"name\":\"_requestBlockNumber\",\"type\":\"uint64\"},{\"name\":\"_tokenURI\",\"type\":\"string\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"handleERC721Transfer\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getOperatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_token\",\"type\":\"address\"}],\"name\":\"deregisterToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"feeOfKLAY\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_tokenAddress\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_price\",\"type\":\"uint256\"}],\"name\":\"requestSellERC20\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_status\",\"type\":\"bool\"}],\"name\":\"start\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"operatorList\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_operator\",\"type\":\"address\"}],\"name\":\"deregisterOperator\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getRegisteredTokenList\",\"outputs\":[{\"name\":\"\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_voteType\",\"type\":\"uint8\"},{\"name\":\"_threshold\",\"type\":\"uint8\"}],\"name\":\"setOperatorThreshold\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"setFeeReceiver\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC20Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_modeMintBurn\",\"type\":\"bool\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"requestNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"},{\"indexed\":false,\"name\":\"encodingVer\",\"type\":\"uint8\"},{\"indexed\":false,\"name\":\"encodedData\",\"type\":\"bytes\"}],\"name\":\"RequestValueTransferEncoded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"requestTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"name\":\"tokenType\",\"type\":\"uint8\"},{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"valueOrTokenId\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"handleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"lowerHandleNonce\",\"type\":\"uint64\"},{\"indexed\":false,\"name\":\"extraData\",\"type\":\"bytes\"}],\"name\":\"HandleValueTransfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenDeregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenLocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenUnlocked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"KLAYFeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"ERC20FeeChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"}]" 17683 17684 // ExtBridgeBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 17685 const ExtBridgeBinRuntime = `608060405234801561001057600080fd5b50600436106102955760003560e01c80638a75eee211610167578063bab2af1d116100ce578063d8cf98ca11610087578063d8cf98ca14610b56578063ea21eade14610b7c578063ee2aec6514610b84578063efdcd97414610bac578063f1656e5314610bd2578063f2fde38b14610c9b57610295565b8063bab2af1d146109e7578063c263b5d614610a0d578063c5e4907314610a15578063c877cf3714610a57578063cb38f40714610a76578063cf0da29014610a9357610295565b8063989ba0d311610120578063989ba0d3146107e05780639ef2017b146107e8578063ac6fff0b1461080e578063afb6022314610816578063b2c0103014610987578063b3f00674146109df57610295565b80638a75eee2146107415780638c0bd9161461075e5780638da5cb5b146107845780638daa63ac1461078c5780638f32d59b146107b25780639832c1d7146107ba57610295565b8063407e6bae1161020b57806354edad72116101c457806354edad72146106c55780635526f76b146106cd5780635eb7413a146107035780636e176ec214610729578063715018a6146107315780637c1a03021461073957610295565b8063407e6bae146105095780634739f7e5146105f5578063488af8711461062357806348a18a6a1461065b5780634b40b826146106815780634c5146f51461068957610295565b8063226047421161025d578063226047421461036a57806326c23b541461042e5780632f88396c146104835780633682a450146104be5780633a3099d1146104e45780633e4fe949146104ec57610295565b8063083b27321461029a57806310693fcd146102be57806313a6738a146102e657806313e7c9d8146103285780632014e5d114610362575b600080fd5b6102a2610cc1565b604080516001600160a01b039092168252519081900360200190f35b6102e4600480360360208110156102d457600080fd5b50356001600160a01b0316610cd0565b005b61030c600480360360208110156102fc57600080fd5b50356001600160401b0316610e35565b604080516001600160401b039092168252519081900360200190f35b61034e6004803603602081101561033e57600080fd5b50356001600160a01b0316610e50565b604080519115158252519081900360200190f35b61034e610e65565b6102e46004803603608081101561038057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156103ba57600080fd5b8201836020820111156103cc57600080fd5b803590602001918460018302840111600160201b831117156103ed57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e75945050505050565b6102e4600480360360a081101561044457600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b8111156103ba57600080fd5b6102e46004803603606081101561049957600080fd5b5080356001600160a01b031690602081013590604001356001600160401b0316610eb6565b6102e4600480360360208110156104d457600080fd5b50356001600160a01b0316610f3e565b61030c6110b8565b6102a26004803603602081101561050257600080fd5b50356110bd565b6102e4600480360361010081101561052057600080fd5b8135916001600160a01b03602082013581169260408301358216926060810135909216916080810135916001600160401b0360a083013581169260c081013590911691810190610100810160e0820135600160201b81111561058157600080fd5b82018360208201111561059357600080fd5b803590602001918460018302840111600160201b831117156105b457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506110e4945050505050565b6102e46004803603604081101561060b57600080fd5b506001600160a01b03813581169160200135166112ab565b6106496004803603602081101561063957600080fd5b50356001600160a01b0316611408565b60408051918252519081900360200190f35b6106496004803603602081101561067157600080fd5b50356001600160a01b031661141a565b61030c61142c565b6102e46004803603608081101561069f57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611442565b61030c611473565b6106ed600480360360208110156106e357600080fd5b503560ff16611482565b6040805160ff9092168252519081900360200190f35b61034e6004803603602081101561071957600080fd5b50356001600160a01b0316611497565b61034e6114ac565b6102e46114bc565b61030c611550565b61034e6004803603602081101561075757600080fd5b5035611566565b6102a26004803603602081101561077457600080fd5b50356001600160a01b031661157b565b6102a2611596565b6102e4600480360360208110156107a257600080fd5b50356001600160a01b03166115a6565b61034e611612565b61034e600480360360208110156107d057600080fd5b50356001600160401b0316611623565b61030c611638565b6102e4600480360360208110156107fe57600080fd5b50356001600160a01b031661164e565b61030c6117c2565b6102e4600480360361012081101561082d57600080fd5b8135916001600160a01b03602082013581169260408301358216926060810135909216916080810135916001600160401b0360a083013581169260c081013590911691810190610100810160e0820135600160201b81111561088e57600080fd5b8201836020820111156108a057600080fd5b803590602001918460018302840111600160201b831117156108c157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561091357600080fd5b82018360208201111561092557600080fd5b803590602001918460018302840111600160201b8311171561094657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506117d1945050505050565b61098f61199a565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156109cb5781810151838201526020016109b3565b505050509050019250505060405180910390f35b6102a26119fc565b6102e4600480360360208110156109fd57600080fd5b50356001600160a01b0316611a0b565b610649611bfa565b6102e4600480360360a0811015610a2b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060800135611c00565b6102e460048036036020811015610a6d57600080fd5b50351515611c33565b6102a260048036036020811015610a8c57600080fd5b5035611ca1565b6102e460048036036080811015610aa957600080fd5b6001600160a01b038235811692602081013592604082013590921691810190608081016060820135600160201b811115610ae257600080fd5b820183602082011115610af457600080fd5b803590602001918460018302840111600160201b83111715610b1557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611cae945050505050565b6102e460048036036020811015610b6c57600080fd5b50356001600160a01b0316611cbb565b61098f611e0d565b6102e460048036036040811015610b9a57600080fd5b5060ff81358116916020013516611e6d565b6102e460048036036020811015610bc257600080fd5b50356001600160a01b0316611fa9565b6102e4600480360360a0811015610be857600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b811115610c2757600080fd5b820183602082011115610c3957600080fd5b803590602001918460018302840111600160201b83111715610c5a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611fff945050505050565b6102e460048036036020811015610cb157600080fd5b50356001600160a01b031661200d565b6011546001600160a01b031681565b610cd8611612565b610d1a5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808216600090815260056020526040902054829116610d825760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260086020526040902054829060ff1615610de75760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038316600081815260086020526040808220805460ff19166001179055517fca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd79190a2505050565b6010602052600090815260409020546001600160401b031681565b600b6020526000908152604090205460ff1681565b600e54600160481b900460ff1681565b60408051600160e51b62461bcd02815260206004820152600b6024820152600160aa1b6a1b9bdd081cdd5c1c1bdc9d02604482015290519081900360640190fd5b336000908152600b602052604090205460ff16610f1d5760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b610f2681612060565b610f2f57610f39565b610f398383612134565b505050565b610f46611612565b610f885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b600c805410610fe15760408051600160e51b62461bcd02815260206004820152601260248201527f6d6178206f70657261746f72206c696d69740000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b0381166000908152600b602052604090205460ff16156110525760408051600160e51b62461bcd02815260206004820152600e60248201527f6578697374206f70657261746f72000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03166000818152600b60205260408120805460ff19166001908117909155600c805491820181559091527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c70180546001600160a01b0319169091179055565b600c81565b600781815481106110ca57fe5b6000918252602090912001546001600160a01b0316905081565b805160201461113d5760408051600160e51b62461bcd02815260206004820152601460248201527f6578747261446174612073697a65206572726f72000000000000000000000000604482015290519081900360640190fd5b6011546001600160a01b031661119d5760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6261636b2061646472657373206572726f7200000000000000000000604482015290519081900360640190fd5b60008180602001905160208110156111b457600080fd5b50519050806112035760408051600160e51b62461bcd0281526020600482015260106024820152600160811b6f37b33332b9283934b1b29032b93937b902604482015290519081900360640190fd5b601154611221908a908a906001600160a01b0316898989898961217b565b60115460408051600160e11b632f6233f10281526001600160a01b038a811660048301526024820189905289811660448301526064820185905291519190921691635ec467e291608480830192600092919082900301818387803b15801561128857600080fd5b505af115801561129c573d6000803e3d6000fd5b50505050505050505050505050565b6112b3611612565b6112f55760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808316600090815260056020526040902054839116156113675760408051600160e51b62461bcd02815260206004820152600d60248201527f616c6c6f77656420746f6b656e00000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03808416600081815260056020908152604080832080549588166001600160a01b031996871617905560078054600690935281842083905560018301815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68890910180549094168317909355915190917f158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d91a2505050565b60036020526000908152604090205481565b60066020526000908152604090205481565b600e54600160901b90046001600160401b031681565b61146d8484848460405160200180828152602001915050604051602081830303815290604052612530565b50505050565b600f546001600160401b031681565b600d6020526000908152604090205460ff1681565b60086020526000908152604090205460ff1681565b600e54600160401b900460ff1681565b6114c4611612565b6115065760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6004546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600480546001600160a01b0319169055565b600e54600160501b90046001600160401b031681565b60006020819052908152604090205460ff1681565b6005602052600090815260409020546001600160a01b031681565b6004546001600160a01b03165b90565b6115ae611612565b6115f05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6004546001600160a01b0316331490565b600a6020526000908152604090205460ff1681565b600f54600160401b90046001600160401b031681565b611656611612565b6116985760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b038082166000908152600560205260409020548291166117005760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260086020526040902054829060ff1615156001146117775760408051600160e51b62461bcd02815260206004820152600e60248201527f756e6c6f636b656420746f6b656e000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260086020526040808220805460ff19169055517f81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec9190a2505050565b600e546001600160401b031681565b805160201461182a5760408051600160e51b62461bcd02815260206004820152601460248201527f6578747261446174612073697a65206572726f72000000000000000000000000604482015290519081900360640190fd5b6011546001600160a01b031661188a5760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6261636b2061646472657373206572726f7200000000000000000000604482015290519081900360640190fd5b60008180602001905160208110156118a157600080fd5b50519050806118f05760408051600160e51b62461bcd0281526020600482015260106024820152600160811b6f37b33332b9283934b1b29032b93937b902604482015290519081900360640190fd5b60115461190f908b908b906001600160a01b03168a8a8a8a8a8a6125ac565b60115460408051600160e11b632f6233f10281526001600160a01b038b81166004830152602482018a90528a811660448301526064820185905291519190921691635ec467e291608480830192600092919082900301818387803b15801561197657600080fd5b505af115801561198a573d6000803e3d6000fd5b5050505050505050505050505050565b6060600c8054806020026020016040519081016040528092919081815260200182805480156119f257602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116119d4575b5050505050905090565b6001546001600160a01b031681565b611a13611612565b611a555760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808216600090815260056020526040902054829116611abd5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260056020908152604080832080546001600160a01b031916905560088252808320805460ff1916905560069091528120805491905560075460001901811015611bad57600780546000198101908110611b2157fe5b600091825260209091200154600780546001600160a01b039092169183908110611b4757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550806006600060078481548110611b8757fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020555b6007805490611bc0906000198301613ccc565b506040516001600160a01b038416907f1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b690600090a2505050565b60025481565b611c2c85858585856040516020018082815260200191505060405160208183030381529060405261294e565b5050505050565b611c3b611612565b611c7d5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b600e8054911515600160481b0269ff00000000000000000019909216919091179055565b600c81815481106110ca57fe5b61146d3385848685612a38565b611cc3611612565b611d055760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152600b602052604090205460ff16611d2a57600080fd5b6001600160a01b0381166000908152600b60205260408120805460ff191690555b600c54811015611e0957816001600160a01b0316600c8281548110611d6c57fe5b6000918252602090912001546001600160a01b03161415611e0157600c80546000198101908110611d9957fe5b600091825260209091200154600c80546001600160a01b039092169183908110611dbf57fe5b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055600c805490611dfb906000198301613ccc565b50611e09565b600101611d4b565b5050565b606060078054806020026020016040519081016040528092919081815260200182805480156119f2576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116119d4575050505050905090565b611e75611612565b611eb75760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b60008160ff1611611f125760408051600160e51b62461bcd02815260206004820152600e60248201527f7a65726f207468726573686f6c64000000000000000000000000000000000000604482015290519081900360640190fd5b600c5460ff82161115611f6f5760408051600160e51b62461bcd02815260206004820152601c60248201527f626967676572207468616e206e756d206f66206f70657261746f727300000000604482015290519081900360640190fd5b80600d6000846002811115611f8057fe5b60ff90811682526020820192909252604001600020805460ff1916929091169190911790555050565b611fb1611612565b611ff35760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b611ffc81612f64565b50565b611c2c338686868686612fae565b612015611612565b6120575760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b611ffc816132f9565b600e546000906001600160401b038381169116146120c85760408051600160e51b62461bcd02815260206004820152600e60248201527f6e6f6e6365206d69736d61746368000000000000000000000000000000000000604482015290519081900360640190fd5b60008036604051808383808284378083019250505092505050604051809103902090506120f76001848361339d565b15612129575050600e805467ffffffffffffffff19811660016001600160401b0392831681019092161790915561212f565b60009150505b919050565b6001600160a01b038216600081815260036020526040808220849055518392917fdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b91a35050565b336000908152600b602052604090205460ff166121e25760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b6121eb8361350b565b6121f483613578565b6121fd57612526565b6122068861363b565b6001600160401b038381166000908152601060205260409020805467ffffffffffffffff191691841691909117905561223e83613656565b846001600160a01b0316866001600160a01b0316886001600160a01b03167f12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea101758b60018989600e60129054906101000a90046001600160401b031689604051808781526020018660028111156122af57fe5b60ff168152602001858152602001846001600160401b03166001600160401b03168152602001836001600160401b03166001600160401b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561232657818101518382015260200161230e565b50505050905090810190601f1680156123535780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4600e54600160401b900460ff161561245c57846001600160a01b03166340c10f1987866040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156123d757600080fd5b505af11580156123eb573d6000803e3d6000fd5b505050506040513d602081101561240157600080fd5b50516124575760408051600160e51b62461bcd02815260206004820181905260248201527f68616e646c6545524332305472616e736665723a206d696e74206661696c6564604482015290519081900360640190fd5b612526565b846001600160a01b031663a9059cbb87866040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156124bc57600080fd5b505af11580156124d0573d6000803e3d6000fd5b505050506040513d60208110156124e657600080fd5b505161252657604051600160e51b62461bcd028152600401808060200182810382526024815260200180613dc46024913960400191505060405180910390fd5b5050505050505050565b60408051600160e01b6323b872dd0281523360048201523060248201526044810184905290516001600160a01b038616916323b872dd91606480830192600092919082900301818387803b15801561258757600080fd5b505af115801561259b573d6000803e3d6000fd5b5050505061146d8433858585612a38565b336000908152600b602052604090205460ff166126135760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b61261c8461350b565b61262584613578565b61262e57612943565b6126378961363b565b6001600160401b038481166000908152601060205260409020805467ffffffffffffffff191691851691909117905561266f84613656565b856001600160a01b0316876001600160a01b0316896001600160a01b03167f12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea101758c60028a8a600e60129054906101000a90046001600160401b031689604051808781526020018660028111156126e057fe5b60ff168152602001858152602001846001600160401b03166001600160401b03168152602001836001600160401b03166001600160401b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561275757818101518382015260200161273f565b50505050905090810190601f1680156127845780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4600e54600160401b900460ff16156128e857856001600160a01b03166350bb4e7f8887856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561282457818101518382015260200161280c565b50505050905090810190601f1680156128515780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b15801561287257600080fd5b505af1158015612886573d6000803e3d6000fd5b505050506040513d602081101561289c57600080fd5b50516128e35760408051600160e51b62461bcd02815260206004820152600b6024820152600160aa1b6a1b5a5b9d0819985a5b195902604482015290519081900360640190fd5b612943565b60408051600160e01b6323b872dd0281523060048201526001600160a01b038981166024830152604482018890529151918816916323b872dd9160648082019260009290919082900301818387803b15801561128857600080fd5b505050505050505050565b6001600160a01b0385166323b872dd333061296f878763ffffffff6137ba16565b6040805163ffffffff861660e01b81526001600160a01b0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b1580156129c057600080fd5b505af11580156129d4573d6000803e3d6000fd5b505050506040513d60208110156129ea57600080fd5b5051612a2a57604051600160e51b62461bcd028152600401808060200182810382526029815260200180613d9b6029913960400191505060405180910390fd5b611c2c853386868686612fae565b6001600160a01b03808616600090815260056020526040902054869116612aa05760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038616600090815260086020526040902054869060ff1615612b055760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b600e54600160481b900460ff16612b5a5760408051600160e51b62461bcd02815260206004820152600e6024820152600160901b6d73746f707065642062726964676502604482015290519081900360640190fd5b604080516020808201879052825180830382018152828401909352600160e01b63c87b56dd026060838101828152855160009692956001600160a01b038f1695606490910191908401908083835b60208310612bc75780518252601f199092019160209182019101612ba8565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b60208310612c2b5780518252601f199092019160209182019101612c0c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612c8d576040519150601f19603f3d011682016040523d82523d6000602084013e612c92565b606091505b50909250905081612cae57506040805160208101909152600081525b600e54600160401b900460ff1615612d1f57886001600160a01b03166342966c68876040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612d0657600080fd5b505af1158015612d1a573d6000803e3d6000fd5b505050505b886001600160a01b0316876001600160a01b0316896001600160a01b03167f17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f60028a600e600a9054906101000a90046001600160401b031660008c60028a6040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612dbd578181015183820152602001612da5565b50505050905090810190601f168015612dea5780820380516001836020036101000a031916815260200191505b509250505060405160208183030381529060405260405180886002811115612e0e57fe5b60ff168152602001878152602001866001600160401b03166001600160401b03168152602001858152602001806020018460ff16815260200180602001838103835286818151815260200191508051906020019080838360005b83811015612e80578181015183820152602001612e68565b50505050905090810190601f168015612ead5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015612ee0578181015183820152602001612ec8565b50505050905090810190601f168015612f0d5780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a45050600e805460016001600160401b03600160501b808404821692909201160271ffffffffffffffff000000000000000000001990911617905550505050505050565b600180546001600160a01b0319166001600160a01b0383169081179091556040517f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f78605990600090a250565b6001600160a01b038087166000908152600560205260409020548791166130165760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038716600090815260086020526040902054879060ff161561307b5760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b600e54600160481b900460ff166130d05760408051600160e51b62461bcd02815260206004820152600e6024820152600160901b6d73746f707065642062726964676502604482015290519081900360640190fd5b600085116131285760408051600160e51b62461bcd02815260206004820152600e60248201527f7a65726f206d73672e76616c7565000000000000000000000000000000000000604482015290519081900360640190fd5b6000613135888a87613817565b600e54909150600160401b900460ff16156131a957886001600160a01b03166342966c68876040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561319057600080fd5b505af11580156131a4573d6000803e3d6000fd5b505050505b886001600160a01b0316876001600160a01b0316896001600160a01b03167feff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f0960018a600e600a9054906101000a90046001600160401b0316878b6040518086600281111561321357fe5b60ff168152602001858152602001846001600160401b03166001600160401b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613278578181015183820152602001613260565b50505050905090810190601f1680156132a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a45050600e805460016001600160401b03600160501b808404821692909201160271ffffffffffffffff000000000000000000001990911617905550505050505050565b6001600160a01b03811661334157604051600160e51b62461bcd028152600401808060200182810382526026815260200180613d296026913960400191505060405180910390fd5b6004546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600480546001600160a01b0319166001600160a01b0392909216919091179055565b600080600960008660028111156133b057fe5b60ff168152602080820192909252604090810160009081206001600160401b03881682528352818120338252600181019093522054909150806134145781546001810183556000838152602090200180546001600160a01b0319163317905561343b565b60008181526003830160205260409020805460ff19811660ff918216600019019091161790555b33600090815260018301602090815260408083208790558683526003850190915290205460ff166134815760028201805460018101825560009182526020909120018490555b60008481526003830160205260408120805460ff8082166001011660ff19909116179055600d908760028111156134b457fe5b60ff908116825260208083019390935260409182016000908120548882526003870190945291909120549181169116106134fd576134f28686613b34565b600192505050613504565b6000925050505b9392505050565b600e546001600160401b03808316600160901b909204161115611ffc5760408051600160e51b62461bcd02815260206004820152600c60248201527f72656d6f76656420766f74650000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160401b0381166000908152600a602052604081205460ff16156135da5760408051600160e51b62461bcd02815260206004820152600b6024820152600160a81b6a636c6f73656420766f746502604482015290519081900360640190fd5b60008036604051808383808284378083019250505092505050604051809103902090506136096000848361339d565b156121295750506001600160401b0381166000908152600a60205260409020805460ff1916600190811790915561212f565b6000908152602081905260409020805460ff19166001179055565b600f546001600160401b03908116908216111561368a57600f805467ffffffffffffffff19166001600160401b0383161790555b600e54600f5460c86001600160401b03600160901b9093048316019190811690821611156136c05750600f546001600160401b03165b600e54600160901b90046001600160401b03165b816001600160401b0316816001600160401b03161115801561370f57506001600160401b038082166000908152601060205260409020541615155b1561377c576001600160401b0381811660009081526010602090815260408083208054600f80546fffffffffffffffff0000000000000000191691909616600160401b0217909455835467ffffffffffffffff1916909355600a905220805460ff191690556001016136d4565b600e80546001600160401b03909216600160901b0279ffffffffffffffff000000000000000000000000000000000000199092169190911790555050565b6000828201838110156135045760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038083166000908152600360205260408120546001549192909116158015906138475750600081115b15613a5f57808310156138a45760408051600160e51b62461bcd02815260206004820152601560248201527f696e73756666696369656e74206665654c696d69740000000000000000000000604482015290519081900360640190fd5b60015460408051600160e01b63a9059cbb0281526001600160a01b0392831660048201526024810184905290519186169163a9059cbb916044808201926020929091908290030181600087803b1580156138fd57600080fd5b505af1158015613911573d6000803e3d6000fd5b505050506040513d602081101561392757600080fd5b505161396757604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b6000613979848363ffffffff613c6c16565b1115613a58576001600160a01b03841663a9059cbb8661399f868563ffffffff613c6c16565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156139ee57600080fd5b505af1158015613a02573d6000803e3d6000fd5b505050506040513d6020811015613a1857600080fd5b5051613a5857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b9050613504565b836001600160a01b031663a9059cbb86856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015613abf57600080fd5b505af1158015613ad3573d6000803e3d6000fd5b505050506040513d6020811015613ae957600080fd5b5051613b2957604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b506000949350505050565b600060096000846002811115613b4657fe5b60ff168152602080820192909252604090810160009081206001600160401b0386168252909252812091505b815460ff82161015613bc357816001016000836000018360ff1681548110613b9657fe5b60009182526020808320909101546001600160a01b03168352820192909252604001812055600101613b72565b5060005b600282015460ff82161015613c1957816003016000836002018360ff1681548110613bee57fe5b600091825260208083209091015483528201929092526040019020805460ff19169055600101613bc7565b5060096000846002811115613c2a57fe5b60ff168152602080820192909252604090810160009081206001600160401b0386168252909252812090613c5e8282613cf0565b611c2c600283016000613cf0565b600082821115613cc65760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b815481835581811115610f3957600083815260209020610f39918101908301613d0a565b5080546000825590600052602060002090810190611ffc91905b6115a391905b80821115613d245760008155600101613d10565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f7061794552433230466565416e64526566756e644368616e67653a207472616e73666572206661696c65647265717565737445524332305472616e736665723a207472616e7366657246726f6d206661696c656468616e646c6545524332305472616e736665723a207472616e73666572206661696c6564a165627a7a723058205b10aad5d76f7bb539d205b7d0d7781d1e862dfaff6491ed87459bae7729c6490029` 17686 17687 // ExtBridgeFuncSigs maps the 4-byte function signature to its string representation. 17688 var ExtBridgeFuncSigs = map[string]string{ 17689 "3a3099d1": "MAX_OPERATOR()", 17690 "083b2732": "callback()", 17691 "9832c1d7": "closedValueTransferVotes(uint64)", 17692 "ac6fff0b": "configurationNonce()", 17693 "d8cf98ca": "deregisterOperator(address)", 17694 "bab2af1d": "deregisterToken(address)", 17695 "488af871": "feeOfERC20(address)", 17696 "c263b5d6": "feeOfKLAY()", 17697 "b3f00674": "feeReceiver()", 17698 "b2c01030": "getOperatorList()", 17699 "ea21eade": "getRegisteredTokenList()", 17700 "407e6bae": "handleERC20Transfer(bytes32,address,address,address,uint256,uint64,uint64,bytes)", 17701 "afb60223": "handleERC721Transfer(bytes32,address,address,address,uint256,uint64,uint64,string,bytes)", 17702 "13a6738a": "handleNoncesToBlockNums(uint64)", 17703 "8a75eee2": "handledRequestTx(bytes32)", 17704 "48a18a6a": "indexOfTokens(address)", 17705 "8f32d59b": "isOwner()", 17706 "2014e5d1": "isRunning()", 17707 "10693fcd": "lockToken(address)", 17708 "5eb7413a": "lockedTokens(address)", 17709 "4b40b826": "lowerHandleNonce()", 17710 "6e176ec2": "modeMintBurn()", 17711 "f1656e53": "onERC20Received(address,address,uint256,uint256,bytes)", 17712 "cf0da290": "onERC721Received(address,uint256,address,bytes)", 17713 "cb38f407": "operatorList(uint256)", 17714 "5526f76b": "operatorThresholds(uint8)", 17715 "13e7c9d8": "operators(address)", 17716 "8da5cb5b": "owner()", 17717 "989ba0d3": "recoveryBlockNumber()", 17718 "3682a450": "registerOperator(address)", 17719 "4739f7e5": "registerToken(address,address)", 17720 "3e4fe949": "registeredTokenList(uint256)", 17721 "8c0bd916": "registeredTokens(address)", 17722 "715018a6": "renounceOwnership()", 17723 "26c23b54": "requestERC20Transfer(address,address,uint256,uint256,bytes)", 17724 "22604742": "requestERC721Transfer(address,address,uint256,bytes)", 17725 "7c1a0302": "requestNonce()", 17726 "c5e49073": "requestSellERC20(address,address,uint256,uint256,uint256)", 17727 "4c5146f5": "requestSellERC721(address,address,uint256,uint256)", 17728 "8daa63ac": "setCallback(address)", 17729 "2f88396c": "setERC20Fee(address,uint256,uint64)", 17730 "efdcd974": "setFeeReceiver(address)", 17731 "ee2aec65": "setOperatorThreshold(uint8,uint8)", 17732 "c877cf37": "start(bool)", 17733 "f2fde38b": "transferOwnership(address)", 17734 "9ef2017b": "unlockToken(address)", 17735 "54edad72": "upperHandleNonce()", 17736 } 17737 17738 // ExtBridgeBin is the compiled bytecode used for deploying new contracts. 17739 var ExtBridgeBin = "0x60806040819052600180546001600160a01b03199081169091556000600255600e8054600160401b61ffff0219166901000000000000000000179055600f8054600160401b600160801b0319166801000000000000000017905560118054909116905560208062003fb28339810180604052602081101561007f57600080fd5b5051600180546001600160a01b03199081169091556004805490911633179081905560405182916001600160a01b0316906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360005b600260ff8216101561010d5760ff81166000908152600d60205260409020805460ff19166001908117909155016100db565b50336000818152600b60205260408120805460ff19166001908117909155600c805491820181559091527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c70180546001600160a01b0319169091179055600e80549115156801000000000000000002600160401b60ff021990921691909117905550613e13806200019f6000396000f3fe608060405234801561001057600080fd5b50600436106102955760003560e01c80638a75eee211610167578063bab2af1d116100ce578063d8cf98ca11610087578063d8cf98ca14610b56578063ea21eade14610b7c578063ee2aec6514610b84578063efdcd97414610bac578063f1656e5314610bd2578063f2fde38b14610c9b57610295565b8063bab2af1d146109e7578063c263b5d614610a0d578063c5e4907314610a15578063c877cf3714610a57578063cb38f40714610a76578063cf0da29014610a9357610295565b8063989ba0d311610120578063989ba0d3146107e05780639ef2017b146107e8578063ac6fff0b1461080e578063afb6022314610816578063b2c0103014610987578063b3f00674146109df57610295565b80638a75eee2146107415780638c0bd9161461075e5780638da5cb5b146107845780638daa63ac1461078c5780638f32d59b146107b25780639832c1d7146107ba57610295565b8063407e6bae1161020b57806354edad72116101c457806354edad72146106c55780635526f76b146106cd5780635eb7413a146107035780636e176ec214610729578063715018a6146107315780637c1a03021461073957610295565b8063407e6bae146105095780634739f7e5146105f5578063488af8711461062357806348a18a6a1461065b5780634b40b826146106815780634c5146f51461068957610295565b8063226047421161025d578063226047421461036a57806326c23b541461042e5780632f88396c146104835780633682a450146104be5780633a3099d1146104e45780633e4fe949146104ec57610295565b8063083b27321461029a57806310693fcd146102be57806313a6738a146102e657806313e7c9d8146103285780632014e5d114610362575b600080fd5b6102a2610cc1565b604080516001600160a01b039092168252519081900360200190f35b6102e4600480360360208110156102d457600080fd5b50356001600160a01b0316610cd0565b005b61030c600480360360208110156102fc57600080fd5b50356001600160401b0316610e35565b604080516001600160401b039092168252519081900360200190f35b61034e6004803603602081101561033e57600080fd5b50356001600160a01b0316610e50565b604080519115158252519081900360200190f35b61034e610e65565b6102e46004803603608081101561038057600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b8111156103ba57600080fd5b8201836020820111156103cc57600080fd5b803590602001918460018302840111600160201b831117156103ed57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610e75945050505050565b6102e4600480360360a081101561044457600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b8111156103ba57600080fd5b6102e46004803603606081101561049957600080fd5b5080356001600160a01b031690602081013590604001356001600160401b0316610eb6565b6102e4600480360360208110156104d457600080fd5b50356001600160a01b0316610f3e565b61030c6110b8565b6102a26004803603602081101561050257600080fd5b50356110bd565b6102e4600480360361010081101561052057600080fd5b8135916001600160a01b03602082013581169260408301358216926060810135909216916080810135916001600160401b0360a083013581169260c081013590911691810190610100810160e0820135600160201b81111561058157600080fd5b82018360208201111561059357600080fd5b803590602001918460018302840111600160201b831117156105b457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506110e4945050505050565b6102e46004803603604081101561060b57600080fd5b506001600160a01b03813581169160200135166112ab565b6106496004803603602081101561063957600080fd5b50356001600160a01b0316611408565b60408051918252519081900360200190f35b6106496004803603602081101561067157600080fd5b50356001600160a01b031661141a565b61030c61142c565b6102e46004803603608081101561069f57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611442565b61030c611473565b6106ed600480360360208110156106e357600080fd5b503560ff16611482565b6040805160ff9092168252519081900360200190f35b61034e6004803603602081101561071957600080fd5b50356001600160a01b0316611497565b61034e6114ac565b6102e46114bc565b61030c611550565b61034e6004803603602081101561075757600080fd5b5035611566565b6102a26004803603602081101561077457600080fd5b50356001600160a01b031661157b565b6102a2611596565b6102e4600480360360208110156107a257600080fd5b50356001600160a01b03166115a6565b61034e611612565b61034e600480360360208110156107d057600080fd5b50356001600160401b0316611623565b61030c611638565b6102e4600480360360208110156107fe57600080fd5b50356001600160a01b031661164e565b61030c6117c2565b6102e4600480360361012081101561082d57600080fd5b8135916001600160a01b03602082013581169260408301358216926060810135909216916080810135916001600160401b0360a083013581169260c081013590911691810190610100810160e0820135600160201b81111561088e57600080fd5b8201836020820111156108a057600080fd5b803590602001918460018302840111600160201b831117156108c157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b81111561091357600080fd5b82018360208201111561092557600080fd5b803590602001918460018302840111600160201b8311171561094657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506117d1945050505050565b61098f61199a565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156109cb5781810151838201526020016109b3565b505050509050019250505060405180910390f35b6102a26119fc565b6102e4600480360360208110156109fd57600080fd5b50356001600160a01b0316611a0b565b610649611bfa565b6102e4600480360360a0811015610a2b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060800135611c00565b6102e460048036036020811015610a6d57600080fd5b50351515611c33565b6102a260048036036020811015610a8c57600080fd5b5035611ca1565b6102e460048036036080811015610aa957600080fd5b6001600160a01b038235811692602081013592604082013590921691810190608081016060820135600160201b811115610ae257600080fd5b820183602082011115610af457600080fd5b803590602001918460018302840111600160201b83111715610b1557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611cae945050505050565b6102e460048036036020811015610b6c57600080fd5b50356001600160a01b0316611cbb565b61098f611e0d565b6102e460048036036040811015610b9a57600080fd5b5060ff81358116916020013516611e6d565b6102e460048036036020811015610bc257600080fd5b50356001600160a01b0316611fa9565b6102e4600480360360a0811015610be857600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b811115610c2757600080fd5b820183602082011115610c3957600080fd5b803590602001918460018302840111600160201b83111715610c5a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611fff945050505050565b6102e460048036036020811015610cb157600080fd5b50356001600160a01b031661200d565b6011546001600160a01b031681565b610cd8611612565b610d1a5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808216600090815260056020526040902054829116610d825760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260086020526040902054829060ff1615610de75760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038316600081815260086020526040808220805460ff19166001179055517fca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd79190a2505050565b6010602052600090815260409020546001600160401b031681565b600b6020526000908152604090205460ff1681565b600e54600160481b900460ff1681565b60408051600160e51b62461bcd02815260206004820152600b6024820152600160aa1b6a1b9bdd081cdd5c1c1bdc9d02604482015290519081900360640190fd5b336000908152600b602052604090205460ff16610f1d5760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b610f2681612060565b610f2f57610f39565b610f398383612134565b505050565b610f46611612565b610f885760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b600c805410610fe15760408051600160e51b62461bcd02815260206004820152601260248201527f6d6178206f70657261746f72206c696d69740000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b0381166000908152600b602052604090205460ff16156110525760408051600160e51b62461bcd02815260206004820152600e60248201527f6578697374206f70657261746f72000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03166000818152600b60205260408120805460ff19166001908117909155600c805491820181559091527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c70180546001600160a01b0319169091179055565b600c81565b600781815481106110ca57fe5b6000918252602090912001546001600160a01b0316905081565b805160201461113d5760408051600160e51b62461bcd02815260206004820152601460248201527f6578747261446174612073697a65206572726f72000000000000000000000000604482015290519081900360640190fd5b6011546001600160a01b031661119d5760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6261636b2061646472657373206572726f7200000000000000000000604482015290519081900360640190fd5b60008180602001905160208110156111b457600080fd5b50519050806112035760408051600160e51b62461bcd0281526020600482015260106024820152600160811b6f37b33332b9283934b1b29032b93937b902604482015290519081900360640190fd5b601154611221908a908a906001600160a01b0316898989898961217b565b60115460408051600160e11b632f6233f10281526001600160a01b038a811660048301526024820189905289811660448301526064820185905291519190921691635ec467e291608480830192600092919082900301818387803b15801561128857600080fd5b505af115801561129c573d6000803e3d6000fd5b50505050505050505050505050565b6112b3611612565b6112f55760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808316600090815260056020526040902054839116156113675760408051600160e51b62461bcd02815260206004820152600d60248201527f616c6c6f77656420746f6b656e00000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03808416600081815260056020908152604080832080549588166001600160a01b031996871617905560078054600690935281842083905560018301815583527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68890910180549094168317909355915190917f158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d91a2505050565b60036020526000908152604090205481565b60066020526000908152604090205481565b600e54600160901b90046001600160401b031681565b61146d8484848460405160200180828152602001915050604051602081830303815290604052612530565b50505050565b600f546001600160401b031681565b600d6020526000908152604090205460ff1681565b60086020526000908152604090205460ff1681565b600e54600160401b900460ff1681565b6114c4611612565b6115065760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6004546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600480546001600160a01b0319169055565b600e54600160501b90046001600160401b031681565b60006020819052908152604090205460ff1681565b6005602052600090815260409020546001600160a01b031681565b6004546001600160a01b03165b90565b6115ae611612565b6115f05760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6004546001600160a01b0316331490565b600a6020526000908152604090205460ff1681565b600f54600160401b90046001600160401b031681565b611656611612565b6116985760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b038082166000908152600560205260409020548291166117005760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260086020526040902054829060ff1615156001146117775760408051600160e51b62461bcd02815260206004820152600e60248201527f756e6c6f636b656420746f6b656e000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038316600081815260086020526040808220805460ff19169055517f81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec9190a2505050565b600e546001600160401b031681565b805160201461182a5760408051600160e51b62461bcd02815260206004820152601460248201527f6578747261446174612073697a65206572726f72000000000000000000000000604482015290519081900360640190fd5b6011546001600160a01b031661188a5760408051600160e51b62461bcd02815260206004820152601660248201527f63616c6c6261636b2061646472657373206572726f7200000000000000000000604482015290519081900360640190fd5b60008180602001905160208110156118a157600080fd5b50519050806118f05760408051600160e51b62461bcd0281526020600482015260106024820152600160811b6f37b33332b9283934b1b29032b93937b902604482015290519081900360640190fd5b60115461190f908b908b906001600160a01b03168a8a8a8a8a8a6125ac565b60115460408051600160e11b632f6233f10281526001600160a01b038b81166004830152602482018a90528a811660448301526064820185905291519190921691635ec467e291608480830192600092919082900301818387803b15801561197657600080fd5b505af115801561198a573d6000803e3d6000fd5b5050505050505050505050505050565b6060600c8054806020026020016040519081016040528092919081815260200182805480156119f257602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116119d4575b5050505050905090565b6001546001600160a01b031681565b611a13611612565b611a555760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b03808216600090815260056020526040902054829116611abd5760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038216600090815260056020908152604080832080546001600160a01b031916905560088252808320805460ff1916905560069091528120805491905560075460001901811015611bad57600780546000198101908110611b2157fe5b600091825260209091200154600780546001600160a01b039092169183908110611b4757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550806006600060078481548110611b8757fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020555b6007805490611bc0906000198301613ccc565b506040516001600160a01b038416907f1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b690600090a2505050565b60025481565b611c2c85858585856040516020018082815260200191505060405160208183030381529060405261294e565b5050505050565b611c3b611612565b611c7d5760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b600e8054911515600160481b0269ff00000000000000000019909216919091179055565b600c81815481106110ca57fe5b61146d3385848685612a38565b611cc3611612565b611d055760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b6001600160a01b0381166000908152600b602052604090205460ff16611d2a57600080fd5b6001600160a01b0381166000908152600b60205260408120805460ff191690555b600c54811015611e0957816001600160a01b0316600c8281548110611d6c57fe5b6000918252602090912001546001600160a01b03161415611e0157600c80546000198101908110611d9957fe5b600091825260209091200154600c80546001600160a01b039092169183908110611dbf57fe5b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055600c805490611dfb906000198301613ccc565b50611e09565b600101611d4b565b5050565b606060078054806020026020016040519081016040528092919081815260200182805480156119f2576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116119d4575050505050905090565b611e75611612565b611eb75760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b60008160ff1611611f125760408051600160e51b62461bcd02815260206004820152600e60248201527f7a65726f207468726573686f6c64000000000000000000000000000000000000604482015290519081900360640190fd5b600c5460ff82161115611f6f5760408051600160e51b62461bcd02815260206004820152601c60248201527f626967676572207468616e206e756d206f66206f70657261746f727300000000604482015290519081900360640190fd5b80600d6000846002811115611f8057fe5b60ff90811682526020820192909252604001600020805460ff1916929091169190911790555050565b611fb1611612565b611ff35760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b611ffc81612f64565b50565b611c2c338686868686612fae565b612015611612565b6120575760408051600160e51b62461bcd0281526020600482018190526024820152600080516020613d4f833981519152604482015290519081900360640190fd5b611ffc816132f9565b600e546000906001600160401b038381169116146120c85760408051600160e51b62461bcd02815260206004820152600e60248201527f6e6f6e6365206d69736d61746368000000000000000000000000000000000000604482015290519081900360640190fd5b60008036604051808383808284378083019250505092505050604051809103902090506120f76001848361339d565b15612129575050600e805467ffffffffffffffff19811660016001600160401b0392831681019092161790915561212f565b60009150505b919050565b6001600160a01b038216600081815260036020526040808220849055518392917fdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b91a35050565b336000908152600b602052604090205460ff166121e25760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b6121eb8361350b565b6121f483613578565b6121fd57612526565b6122068861363b565b6001600160401b038381166000908152601060205260409020805467ffffffffffffffff191691841691909117905561223e83613656565b846001600160a01b0316866001600160a01b0316886001600160a01b03167f12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea101758b60018989600e60129054906101000a90046001600160401b031689604051808781526020018660028111156122af57fe5b60ff168152602001858152602001846001600160401b03166001600160401b03168152602001836001600160401b03166001600160401b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561232657818101518382015260200161230e565b50505050905090810190601f1680156123535780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4600e54600160401b900460ff161561245c57846001600160a01b03166340c10f1987866040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156123d757600080fd5b505af11580156123eb573d6000803e3d6000fd5b505050506040513d602081101561240157600080fd5b50516124575760408051600160e51b62461bcd02815260206004820181905260248201527f68616e646c6545524332305472616e736665723a206d696e74206661696c6564604482015290519081900360640190fd5b612526565b846001600160a01b031663a9059cbb87866040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156124bc57600080fd5b505af11580156124d0573d6000803e3d6000fd5b505050506040513d60208110156124e657600080fd5b505161252657604051600160e51b62461bcd028152600401808060200182810382526024815260200180613dc46024913960400191505060405180910390fd5b5050505050505050565b60408051600160e01b6323b872dd0281523360048201523060248201526044810184905290516001600160a01b038616916323b872dd91606480830192600092919082900301818387803b15801561258757600080fd5b505af115801561259b573d6000803e3d6000fd5b5050505061146d8433858585612a38565b336000908152600b602052604090205460ff166126135760408051600160e51b62461bcd02815260206004820152601d60248201527f6d73672e73656e646572206973206e6f7420616e206f70657261746f72000000604482015290519081900360640190fd5b61261c8461350b565b61262584613578565b61262e57612943565b6126378961363b565b6001600160401b038481166000908152601060205260409020805467ffffffffffffffff191691851691909117905561266f84613656565b856001600160a01b0316876001600160a01b0316896001600160a01b03167f12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea101758c60028a8a600e60129054906101000a90046001600160401b031689604051808781526020018660028111156126e057fe5b60ff168152602001858152602001846001600160401b03166001600160401b03168152602001836001600160401b03166001600160401b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561275757818101518382015260200161273f565b50505050905090810190601f1680156127845780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4600e54600160401b900460ff16156128e857856001600160a01b03166350bb4e7f8887856040518463ffffffff1660e01b815260040180846001600160a01b03166001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561282457818101518382015260200161280c565b50505050905090810190601f1680156128515780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b15801561287257600080fd5b505af1158015612886573d6000803e3d6000fd5b505050506040513d602081101561289c57600080fd5b50516128e35760408051600160e51b62461bcd02815260206004820152600b6024820152600160aa1b6a1b5a5b9d0819985a5b195902604482015290519081900360640190fd5b612943565b60408051600160e01b6323b872dd0281523060048201526001600160a01b038981166024830152604482018890529151918816916323b872dd9160648082019260009290919082900301818387803b15801561128857600080fd5b505050505050505050565b6001600160a01b0385166323b872dd333061296f878763ffffffff6137ba16565b6040805163ffffffff861660e01b81526001600160a01b0394851660048201529290931660248301526044820152905160648083019260209291908290030181600087803b1580156129c057600080fd5b505af11580156129d4573d6000803e3d6000fd5b505050506040513d60208110156129ea57600080fd5b5051612a2a57604051600160e51b62461bcd028152600401808060200182810382526029815260200180613d9b6029913960400191505060405180910390fd5b611c2c853386868686612fae565b6001600160a01b03808616600090815260056020526040902054869116612aa05760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038616600090815260086020526040902054869060ff1615612b055760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b600e54600160481b900460ff16612b5a5760408051600160e51b62461bcd02815260206004820152600e6024820152600160901b6d73746f707065642062726964676502604482015290519081900360640190fd5b604080516020808201879052825180830382018152828401909352600160e01b63c87b56dd026060838101828152855160009692956001600160a01b038f1695606490910191908401908083835b60208310612bc75780518252601f199092019160209182019101612ba8565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b60208310612c2b5780518252601f199092019160209182019101612c0c565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612c8d576040519150601f19603f3d011682016040523d82523d6000602084013e612c92565b606091505b50909250905081612cae57506040805160208101909152600081525b600e54600160401b900460ff1615612d1f57886001600160a01b03166342966c68876040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612d0657600080fd5b505af1158015612d1a573d6000803e3d6000fd5b505050505b886001600160a01b0316876001600160a01b0316896001600160a01b03167f17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f60028a600e600a9054906101000a90046001600160401b031660008c60028a6040516020018080602001828103825283818151815260200191508051906020019080838360005b83811015612dbd578181015183820152602001612da5565b50505050905090810190601f168015612dea5780820380516001836020036101000a031916815260200191505b509250505060405160208183030381529060405260405180886002811115612e0e57fe5b60ff168152602001878152602001866001600160401b03166001600160401b03168152602001858152602001806020018460ff16815260200180602001838103835286818151815260200191508051906020019080838360005b83811015612e80578181015183820152602001612e68565b50505050905090810190601f168015612ead5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015612ee0578181015183820152602001612ec8565b50505050905090810190601f168015612f0d5780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a45050600e805460016001600160401b03600160501b808404821692909201160271ffffffffffffffff000000000000000000001990911617905550505050505050565b600180546001600160a01b0319166001600160a01b0383169081179091556040517f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f78605990600090a250565b6001600160a01b038087166000908152600560205260409020548791166130165760408051600160e51b62461bcd0281526020600482015260116024820152600160791b703737ba1030b63637bbb2b2103a37b5b2b702604482015290519081900360640190fd5b6001600160a01b038716600090815260086020526040902054879060ff161561307b5760408051600160e51b62461bcd02815260206004820152600c6024820152600160a11b6b3637b1b5b2b2103a37b5b2b702604482015290519081900360640190fd5b600e54600160481b900460ff166130d05760408051600160e51b62461bcd02815260206004820152600e6024820152600160901b6d73746f707065642062726964676502604482015290519081900360640190fd5b600085116131285760408051600160e51b62461bcd02815260206004820152600e60248201527f7a65726f206d73672e76616c7565000000000000000000000000000000000000604482015290519081900360640190fd5b6000613135888a87613817565b600e54909150600160401b900460ff16156131a957886001600160a01b03166342966c68876040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561319057600080fd5b505af11580156131a4573d6000803e3d6000fd5b505050505b886001600160a01b0316876001600160a01b0316896001600160a01b03167feff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f0960018a600e600a9054906101000a90046001600160401b0316878b6040518086600281111561321357fe5b60ff168152602001858152602001846001600160401b03166001600160401b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613278578181015183820152602001613260565b50505050905090810190601f1680156132a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a45050600e805460016001600160401b03600160501b808404821692909201160271ffffffffffffffff000000000000000000001990911617905550505050505050565b6001600160a01b03811661334157604051600160e51b62461bcd028152600401808060200182810382526026815260200180613d296026913960400191505060405180910390fd5b6004546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600480546001600160a01b0319166001600160a01b0392909216919091179055565b600080600960008660028111156133b057fe5b60ff168152602080820192909252604090810160009081206001600160401b03881682528352818120338252600181019093522054909150806134145781546001810183556000838152602090200180546001600160a01b0319163317905561343b565b60008181526003830160205260409020805460ff19811660ff918216600019019091161790555b33600090815260018301602090815260408083208790558683526003850190915290205460ff166134815760028201805460018101825560009182526020909120018490555b60008481526003830160205260408120805460ff8082166001011660ff19909116179055600d908760028111156134b457fe5b60ff908116825260208083019390935260409182016000908120548882526003870190945291909120549181169116106134fd576134f28686613b34565b600192505050613504565b6000925050505b9392505050565b600e546001600160401b03808316600160901b909204161115611ffc5760408051600160e51b62461bcd02815260206004820152600c60248201527f72656d6f76656420766f74650000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160401b0381166000908152600a602052604081205460ff16156135da5760408051600160e51b62461bcd02815260206004820152600b6024820152600160a81b6a636c6f73656420766f746502604482015290519081900360640190fd5b60008036604051808383808284378083019250505092505050604051809103902090506136096000848361339d565b156121295750506001600160401b0381166000908152600a60205260409020805460ff1916600190811790915561212f565b6000908152602081905260409020805460ff19166001179055565b600f546001600160401b03908116908216111561368a57600f805467ffffffffffffffff19166001600160401b0383161790555b600e54600f5460c86001600160401b03600160901b9093048316019190811690821611156136c05750600f546001600160401b03165b600e54600160901b90046001600160401b03165b816001600160401b0316816001600160401b03161115801561370f57506001600160401b038082166000908152601060205260409020541615155b1561377c576001600160401b0381811660009081526010602090815260408083208054600f80546fffffffffffffffff0000000000000000191691909616600160401b0217909455835467ffffffffffffffff1916909355600a905220805460ff191690556001016136d4565b600e80546001600160401b03909216600160901b0279ffffffffffffffff000000000000000000000000000000000000199092169190911790555050565b6000828201838110156135045760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038083166000908152600360205260408120546001549192909116158015906138475750600081115b15613a5f57808310156138a45760408051600160e51b62461bcd02815260206004820152601560248201527f696e73756666696369656e74206665654c696d69740000000000000000000000604482015290519081900360640190fd5b60015460408051600160e01b63a9059cbb0281526001600160a01b0392831660048201526024810184905290519186169163a9059cbb916044808201926020929091908290030181600087803b1580156138fd57600080fd5b505af1158015613911573d6000803e3d6000fd5b505050506040513d602081101561392757600080fd5b505161396757604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b6000613979848363ffffffff613c6c16565b1115613a58576001600160a01b03841663a9059cbb8661399f868563ffffffff613c6c16565b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b1580156139ee57600080fd5b505af1158015613a02573d6000803e3d6000fd5b505050506040513d6020811015613a1857600080fd5b5051613a5857604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b9050613504565b836001600160a01b031663a9059cbb86856040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015613abf57600080fd5b505af1158015613ad3573d6000803e3d6000fd5b505050506040513d6020811015613ae957600080fd5b5051613b2957604051600160e51b62461bcd02815260040180806020018281038252602c815260200180613d6f602c913960400191505060405180910390fd5b506000949350505050565b600060096000846002811115613b4657fe5b60ff168152602080820192909252604090810160009081206001600160401b0386168252909252812091505b815460ff82161015613bc357816001016000836000018360ff1681548110613b9657fe5b60009182526020808320909101546001600160a01b03168352820192909252604001812055600101613b72565b5060005b600282015460ff82161015613c1957816003016000836002018360ff1681548110613bee57fe5b600091825260208083209091015483528201929092526040019020805460ff19169055600101613bc7565b5060096000846002811115613c2a57fe5b60ff168152602080820192909252604090810160009081206001600160401b0386168252909252812090613c5e8282613cf0565b611c2c600283016000613cf0565b600082821115613cc65760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b815481835581811115610f3957600083815260209020610f39918101908301613d0a565b5080546000825590600052602060002090810190611ffc91905b6115a391905b80821115613d245760008155600101613d10565b509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f7061794552433230466565416e64526566756e644368616e67653a207472616e73666572206661696c65647265717565737445524332305472616e736665723a207472616e7366657246726f6d206661696c656468616e646c6545524332305472616e736665723a207472616e73666572206661696c6564a165627a7a723058205b10aad5d76f7bb539d205b7d0d7781d1e862dfaff6491ed87459bae7729c6490029" 17740 17741 // DeployExtBridge deploys a new Klaytn contract, binding an instance of ExtBridge to it. 17742 func DeployExtBridge(auth *bind.TransactOpts, backend bind.ContractBackend, _modeMintBurn bool) (common.Address, *types.Transaction, *ExtBridge, error) { 17743 parsed, err := abi.JSON(strings.NewReader(ExtBridgeABI)) 17744 if err != nil { 17745 return common.Address{}, nil, nil, err 17746 } 17747 17748 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(ExtBridgeBin), backend, _modeMintBurn) 17749 if err != nil { 17750 return common.Address{}, nil, nil, err 17751 } 17752 return address, tx, &ExtBridge{ExtBridgeCaller: ExtBridgeCaller{contract: contract}, ExtBridgeTransactor: ExtBridgeTransactor{contract: contract}, ExtBridgeFilterer: ExtBridgeFilterer{contract: contract}}, nil 17753 } 17754 17755 // ExtBridge is an auto generated Go binding around a Klaytn contract. 17756 type ExtBridge struct { 17757 ExtBridgeCaller // Read-only binding to the contract 17758 ExtBridgeTransactor // Write-only binding to the contract 17759 ExtBridgeFilterer // Log filterer for contract events 17760 } 17761 17762 // ExtBridgeCaller is an auto generated read-only Go binding around a Klaytn contract. 17763 type ExtBridgeCaller struct { 17764 contract *bind.BoundContract // Generic contract wrapper for the low level calls 17765 } 17766 17767 // ExtBridgeTransactor is an auto generated write-only Go binding around a Klaytn contract. 17768 type ExtBridgeTransactor struct { 17769 contract *bind.BoundContract // Generic contract wrapper for the low level calls 17770 } 17771 17772 // ExtBridgeFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 17773 type ExtBridgeFilterer struct { 17774 contract *bind.BoundContract // Generic contract wrapper for the low level calls 17775 } 17776 17777 // ExtBridgeSession is an auto generated Go binding around a Klaytn contract, 17778 // with pre-set call and transact options. 17779 type ExtBridgeSession struct { 17780 Contract *ExtBridge // Generic contract binding to set the session for 17781 CallOpts bind.CallOpts // Call options to use throughout this session 17782 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 17783 } 17784 17785 // ExtBridgeCallerSession is an auto generated read-only Go binding around a Klaytn contract, 17786 // with pre-set call options. 17787 type ExtBridgeCallerSession struct { 17788 Contract *ExtBridgeCaller // Generic contract caller binding to set the session for 17789 CallOpts bind.CallOpts // Call options to use throughout this session 17790 } 17791 17792 // ExtBridgeTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 17793 // with pre-set transact options. 17794 type ExtBridgeTransactorSession struct { 17795 Contract *ExtBridgeTransactor // Generic contract transactor binding to set the session for 17796 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 17797 } 17798 17799 // ExtBridgeRaw is an auto generated low-level Go binding around a Klaytn contract. 17800 type ExtBridgeRaw struct { 17801 Contract *ExtBridge // Generic contract binding to access the raw methods on 17802 } 17803 17804 // ExtBridgeCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 17805 type ExtBridgeCallerRaw struct { 17806 Contract *ExtBridgeCaller // Generic read-only contract binding to access the raw methods on 17807 } 17808 17809 // ExtBridgeTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 17810 type ExtBridgeTransactorRaw struct { 17811 Contract *ExtBridgeTransactor // Generic write-only contract binding to access the raw methods on 17812 } 17813 17814 // NewExtBridge creates a new instance of ExtBridge, bound to a specific deployed contract. 17815 func NewExtBridge(address common.Address, backend bind.ContractBackend) (*ExtBridge, error) { 17816 contract, err := bindExtBridge(address, backend, backend, backend) 17817 if err != nil { 17818 return nil, err 17819 } 17820 return &ExtBridge{ExtBridgeCaller: ExtBridgeCaller{contract: contract}, ExtBridgeTransactor: ExtBridgeTransactor{contract: contract}, ExtBridgeFilterer: ExtBridgeFilterer{contract: contract}}, nil 17821 } 17822 17823 // NewExtBridgeCaller creates a new read-only instance of ExtBridge, bound to a specific deployed contract. 17824 func NewExtBridgeCaller(address common.Address, caller bind.ContractCaller) (*ExtBridgeCaller, error) { 17825 contract, err := bindExtBridge(address, caller, nil, nil) 17826 if err != nil { 17827 return nil, err 17828 } 17829 return &ExtBridgeCaller{contract: contract}, nil 17830 } 17831 17832 // NewExtBridgeTransactor creates a new write-only instance of ExtBridge, bound to a specific deployed contract. 17833 func NewExtBridgeTransactor(address common.Address, transactor bind.ContractTransactor) (*ExtBridgeTransactor, error) { 17834 contract, err := bindExtBridge(address, nil, transactor, nil) 17835 if err != nil { 17836 return nil, err 17837 } 17838 return &ExtBridgeTransactor{contract: contract}, nil 17839 } 17840 17841 // NewExtBridgeFilterer creates a new log filterer instance of ExtBridge, bound to a specific deployed contract. 17842 func NewExtBridgeFilterer(address common.Address, filterer bind.ContractFilterer) (*ExtBridgeFilterer, error) { 17843 contract, err := bindExtBridge(address, nil, nil, filterer) 17844 if err != nil { 17845 return nil, err 17846 } 17847 return &ExtBridgeFilterer{contract: contract}, nil 17848 } 17849 17850 // bindExtBridge binds a generic wrapper to an already deployed contract. 17851 func bindExtBridge(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 17852 parsed, err := abi.JSON(strings.NewReader(ExtBridgeABI)) 17853 if err != nil { 17854 return nil, err 17855 } 17856 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 17857 } 17858 17859 // Call invokes the (constant) contract method with params as input values and 17860 // sets the output to result. The result type might be a single field for simple 17861 // returns, a slice of interfaces for anonymous returns and a struct for named 17862 // returns. 17863 func (_ExtBridge *ExtBridgeRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 17864 return _ExtBridge.Contract.ExtBridgeCaller.contract.Call(opts, result, method, params...) 17865 } 17866 17867 // Transfer initiates a plain transaction to move funds to the contract, calling 17868 // its default method if one is available. 17869 func (_ExtBridge *ExtBridgeRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 17870 return _ExtBridge.Contract.ExtBridgeTransactor.contract.Transfer(opts) 17871 } 17872 17873 // Transact invokes the (paid) contract method with params as input values. 17874 func (_ExtBridge *ExtBridgeRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 17875 return _ExtBridge.Contract.ExtBridgeTransactor.contract.Transact(opts, method, params...) 17876 } 17877 17878 // Call invokes the (constant) contract method with params as input values and 17879 // sets the output to result. The result type might be a single field for simple 17880 // returns, a slice of interfaces for anonymous returns and a struct for named 17881 // returns. 17882 func (_ExtBridge *ExtBridgeCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 17883 return _ExtBridge.Contract.contract.Call(opts, result, method, params...) 17884 } 17885 17886 // Transfer initiates a plain transaction to move funds to the contract, calling 17887 // its default method if one is available. 17888 func (_ExtBridge *ExtBridgeTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 17889 return _ExtBridge.Contract.contract.Transfer(opts) 17890 } 17891 17892 // Transact invokes the (paid) contract method with params as input values. 17893 func (_ExtBridge *ExtBridgeTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 17894 return _ExtBridge.Contract.contract.Transact(opts, method, params...) 17895 } 17896 17897 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 17898 // 17899 // Solidity: function MAX_OPERATOR() view returns(uint64) 17900 func (_ExtBridge *ExtBridgeCaller) MAXOPERATOR(opts *bind.CallOpts) (uint64, error) { 17901 var ( 17902 ret0 = new(uint64) 17903 ) 17904 out := ret0 17905 err := _ExtBridge.contract.Call(opts, out, "MAX_OPERATOR") 17906 return *ret0, err 17907 } 17908 17909 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 17910 // 17911 // Solidity: function MAX_OPERATOR() view returns(uint64) 17912 func (_ExtBridge *ExtBridgeSession) MAXOPERATOR() (uint64, error) { 17913 return _ExtBridge.Contract.MAXOPERATOR(&_ExtBridge.CallOpts) 17914 } 17915 17916 // MAXOPERATOR is a free data retrieval call binding the contract method 0x3a3099d1. 17917 // 17918 // Solidity: function MAX_OPERATOR() view returns(uint64) 17919 func (_ExtBridge *ExtBridgeCallerSession) MAXOPERATOR() (uint64, error) { 17920 return _ExtBridge.Contract.MAXOPERATOR(&_ExtBridge.CallOpts) 17921 } 17922 17923 // Callback is a free data retrieval call binding the contract method 0x083b2732. 17924 // 17925 // Solidity: function callback() view returns(address) 17926 func (_ExtBridge *ExtBridgeCaller) Callback(opts *bind.CallOpts) (common.Address, error) { 17927 var ( 17928 ret0 = new(common.Address) 17929 ) 17930 out := ret0 17931 err := _ExtBridge.contract.Call(opts, out, "callback") 17932 return *ret0, err 17933 } 17934 17935 // Callback is a free data retrieval call binding the contract method 0x083b2732. 17936 // 17937 // Solidity: function callback() view returns(address) 17938 func (_ExtBridge *ExtBridgeSession) Callback() (common.Address, error) { 17939 return _ExtBridge.Contract.Callback(&_ExtBridge.CallOpts) 17940 } 17941 17942 // Callback is a free data retrieval call binding the contract method 0x083b2732. 17943 // 17944 // Solidity: function callback() view returns(address) 17945 func (_ExtBridge *ExtBridgeCallerSession) Callback() (common.Address, error) { 17946 return _ExtBridge.Contract.Callback(&_ExtBridge.CallOpts) 17947 } 17948 17949 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 17950 // 17951 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 17952 func (_ExtBridge *ExtBridgeCaller) ClosedValueTransferVotes(opts *bind.CallOpts, arg0 uint64) (bool, error) { 17953 var ( 17954 ret0 = new(bool) 17955 ) 17956 out := ret0 17957 err := _ExtBridge.contract.Call(opts, out, "closedValueTransferVotes", arg0) 17958 return *ret0, err 17959 } 17960 17961 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 17962 // 17963 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 17964 func (_ExtBridge *ExtBridgeSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 17965 return _ExtBridge.Contract.ClosedValueTransferVotes(&_ExtBridge.CallOpts, arg0) 17966 } 17967 17968 // ClosedValueTransferVotes is a free data retrieval call binding the contract method 0x9832c1d7. 17969 // 17970 // Solidity: function closedValueTransferVotes(uint64 ) view returns(bool) 17971 func (_ExtBridge *ExtBridgeCallerSession) ClosedValueTransferVotes(arg0 uint64) (bool, error) { 17972 return _ExtBridge.Contract.ClosedValueTransferVotes(&_ExtBridge.CallOpts, arg0) 17973 } 17974 17975 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 17976 // 17977 // Solidity: function configurationNonce() view returns(uint64) 17978 func (_ExtBridge *ExtBridgeCaller) ConfigurationNonce(opts *bind.CallOpts) (uint64, error) { 17979 var ( 17980 ret0 = new(uint64) 17981 ) 17982 out := ret0 17983 err := _ExtBridge.contract.Call(opts, out, "configurationNonce") 17984 return *ret0, err 17985 } 17986 17987 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 17988 // 17989 // Solidity: function configurationNonce() view returns(uint64) 17990 func (_ExtBridge *ExtBridgeSession) ConfigurationNonce() (uint64, error) { 17991 return _ExtBridge.Contract.ConfigurationNonce(&_ExtBridge.CallOpts) 17992 } 17993 17994 // ConfigurationNonce is a free data retrieval call binding the contract method 0xac6fff0b. 17995 // 17996 // Solidity: function configurationNonce() view returns(uint64) 17997 func (_ExtBridge *ExtBridgeCallerSession) ConfigurationNonce() (uint64, error) { 17998 return _ExtBridge.Contract.ConfigurationNonce(&_ExtBridge.CallOpts) 17999 } 18000 18001 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 18002 // 18003 // Solidity: function feeOfERC20(address ) view returns(uint256) 18004 func (_ExtBridge *ExtBridgeCaller) FeeOfERC20(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 18005 var ( 18006 ret0 = new(*big.Int) 18007 ) 18008 out := ret0 18009 err := _ExtBridge.contract.Call(opts, out, "feeOfERC20", arg0) 18010 return *ret0, err 18011 } 18012 18013 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 18014 // 18015 // Solidity: function feeOfERC20(address ) view returns(uint256) 18016 func (_ExtBridge *ExtBridgeSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 18017 return _ExtBridge.Contract.FeeOfERC20(&_ExtBridge.CallOpts, arg0) 18018 } 18019 18020 // FeeOfERC20 is a free data retrieval call binding the contract method 0x488af871. 18021 // 18022 // Solidity: function feeOfERC20(address ) view returns(uint256) 18023 func (_ExtBridge *ExtBridgeCallerSession) FeeOfERC20(arg0 common.Address) (*big.Int, error) { 18024 return _ExtBridge.Contract.FeeOfERC20(&_ExtBridge.CallOpts, arg0) 18025 } 18026 18027 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 18028 // 18029 // Solidity: function feeOfKLAY() view returns(uint256) 18030 func (_ExtBridge *ExtBridgeCaller) FeeOfKLAY(opts *bind.CallOpts) (*big.Int, error) { 18031 var ( 18032 ret0 = new(*big.Int) 18033 ) 18034 out := ret0 18035 err := _ExtBridge.contract.Call(opts, out, "feeOfKLAY") 18036 return *ret0, err 18037 } 18038 18039 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 18040 // 18041 // Solidity: function feeOfKLAY() view returns(uint256) 18042 func (_ExtBridge *ExtBridgeSession) FeeOfKLAY() (*big.Int, error) { 18043 return _ExtBridge.Contract.FeeOfKLAY(&_ExtBridge.CallOpts) 18044 } 18045 18046 // FeeOfKLAY is a free data retrieval call binding the contract method 0xc263b5d6. 18047 // 18048 // Solidity: function feeOfKLAY() view returns(uint256) 18049 func (_ExtBridge *ExtBridgeCallerSession) FeeOfKLAY() (*big.Int, error) { 18050 return _ExtBridge.Contract.FeeOfKLAY(&_ExtBridge.CallOpts) 18051 } 18052 18053 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 18054 // 18055 // Solidity: function feeReceiver() view returns(address) 18056 func (_ExtBridge *ExtBridgeCaller) FeeReceiver(opts *bind.CallOpts) (common.Address, error) { 18057 var ( 18058 ret0 = new(common.Address) 18059 ) 18060 out := ret0 18061 err := _ExtBridge.contract.Call(opts, out, "feeReceiver") 18062 return *ret0, err 18063 } 18064 18065 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 18066 // 18067 // Solidity: function feeReceiver() view returns(address) 18068 func (_ExtBridge *ExtBridgeSession) FeeReceiver() (common.Address, error) { 18069 return _ExtBridge.Contract.FeeReceiver(&_ExtBridge.CallOpts) 18070 } 18071 18072 // FeeReceiver is a free data retrieval call binding the contract method 0xb3f00674. 18073 // 18074 // Solidity: function feeReceiver() view returns(address) 18075 func (_ExtBridge *ExtBridgeCallerSession) FeeReceiver() (common.Address, error) { 18076 return _ExtBridge.Contract.FeeReceiver(&_ExtBridge.CallOpts) 18077 } 18078 18079 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 18080 // 18081 // Solidity: function getOperatorList() view returns(address[]) 18082 func (_ExtBridge *ExtBridgeCaller) GetOperatorList(opts *bind.CallOpts) ([]common.Address, error) { 18083 var ( 18084 ret0 = new([]common.Address) 18085 ) 18086 out := ret0 18087 err := _ExtBridge.contract.Call(opts, out, "getOperatorList") 18088 return *ret0, err 18089 } 18090 18091 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 18092 // 18093 // Solidity: function getOperatorList() view returns(address[]) 18094 func (_ExtBridge *ExtBridgeSession) GetOperatorList() ([]common.Address, error) { 18095 return _ExtBridge.Contract.GetOperatorList(&_ExtBridge.CallOpts) 18096 } 18097 18098 // GetOperatorList is a free data retrieval call binding the contract method 0xb2c01030. 18099 // 18100 // Solidity: function getOperatorList() view returns(address[]) 18101 func (_ExtBridge *ExtBridgeCallerSession) GetOperatorList() ([]common.Address, error) { 18102 return _ExtBridge.Contract.GetOperatorList(&_ExtBridge.CallOpts) 18103 } 18104 18105 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 18106 // 18107 // Solidity: function getRegisteredTokenList() view returns(address[]) 18108 func (_ExtBridge *ExtBridgeCaller) GetRegisteredTokenList(opts *bind.CallOpts) ([]common.Address, error) { 18109 var ( 18110 ret0 = new([]common.Address) 18111 ) 18112 out := ret0 18113 err := _ExtBridge.contract.Call(opts, out, "getRegisteredTokenList") 18114 return *ret0, err 18115 } 18116 18117 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 18118 // 18119 // Solidity: function getRegisteredTokenList() view returns(address[]) 18120 func (_ExtBridge *ExtBridgeSession) GetRegisteredTokenList() ([]common.Address, error) { 18121 return _ExtBridge.Contract.GetRegisteredTokenList(&_ExtBridge.CallOpts) 18122 } 18123 18124 // GetRegisteredTokenList is a free data retrieval call binding the contract method 0xea21eade. 18125 // 18126 // Solidity: function getRegisteredTokenList() view returns(address[]) 18127 func (_ExtBridge *ExtBridgeCallerSession) GetRegisteredTokenList() ([]common.Address, error) { 18128 return _ExtBridge.Contract.GetRegisteredTokenList(&_ExtBridge.CallOpts) 18129 } 18130 18131 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 18132 // 18133 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 18134 func (_ExtBridge *ExtBridgeCaller) HandleNoncesToBlockNums(opts *bind.CallOpts, arg0 uint64) (uint64, error) { 18135 var ( 18136 ret0 = new(uint64) 18137 ) 18138 out := ret0 18139 err := _ExtBridge.contract.Call(opts, out, "handleNoncesToBlockNums", arg0) 18140 return *ret0, err 18141 } 18142 18143 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 18144 // 18145 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 18146 func (_ExtBridge *ExtBridgeSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 18147 return _ExtBridge.Contract.HandleNoncesToBlockNums(&_ExtBridge.CallOpts, arg0) 18148 } 18149 18150 // HandleNoncesToBlockNums is a free data retrieval call binding the contract method 0x13a6738a. 18151 // 18152 // Solidity: function handleNoncesToBlockNums(uint64 ) view returns(uint64) 18153 func (_ExtBridge *ExtBridgeCallerSession) HandleNoncesToBlockNums(arg0 uint64) (uint64, error) { 18154 return _ExtBridge.Contract.HandleNoncesToBlockNums(&_ExtBridge.CallOpts, arg0) 18155 } 18156 18157 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 18158 // 18159 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 18160 func (_ExtBridge *ExtBridgeCaller) HandledRequestTx(opts *bind.CallOpts, arg0 [32]byte) (bool, error) { 18161 var ( 18162 ret0 = new(bool) 18163 ) 18164 out := ret0 18165 err := _ExtBridge.contract.Call(opts, out, "handledRequestTx", arg0) 18166 return *ret0, err 18167 } 18168 18169 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 18170 // 18171 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 18172 func (_ExtBridge *ExtBridgeSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 18173 return _ExtBridge.Contract.HandledRequestTx(&_ExtBridge.CallOpts, arg0) 18174 } 18175 18176 // HandledRequestTx is a free data retrieval call binding the contract method 0x8a75eee2. 18177 // 18178 // Solidity: function handledRequestTx(bytes32 ) view returns(bool) 18179 func (_ExtBridge *ExtBridgeCallerSession) HandledRequestTx(arg0 [32]byte) (bool, error) { 18180 return _ExtBridge.Contract.HandledRequestTx(&_ExtBridge.CallOpts, arg0) 18181 } 18182 18183 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 18184 // 18185 // Solidity: function indexOfTokens(address ) view returns(uint256) 18186 func (_ExtBridge *ExtBridgeCaller) IndexOfTokens(opts *bind.CallOpts, arg0 common.Address) (*big.Int, error) { 18187 var ( 18188 ret0 = new(*big.Int) 18189 ) 18190 out := ret0 18191 err := _ExtBridge.contract.Call(opts, out, "indexOfTokens", arg0) 18192 return *ret0, err 18193 } 18194 18195 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 18196 // 18197 // Solidity: function indexOfTokens(address ) view returns(uint256) 18198 func (_ExtBridge *ExtBridgeSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 18199 return _ExtBridge.Contract.IndexOfTokens(&_ExtBridge.CallOpts, arg0) 18200 } 18201 18202 // IndexOfTokens is a free data retrieval call binding the contract method 0x48a18a6a. 18203 // 18204 // Solidity: function indexOfTokens(address ) view returns(uint256) 18205 func (_ExtBridge *ExtBridgeCallerSession) IndexOfTokens(arg0 common.Address) (*big.Int, error) { 18206 return _ExtBridge.Contract.IndexOfTokens(&_ExtBridge.CallOpts, arg0) 18207 } 18208 18209 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 18210 // 18211 // Solidity: function isOwner() view returns(bool) 18212 func (_ExtBridge *ExtBridgeCaller) IsOwner(opts *bind.CallOpts) (bool, error) { 18213 var ( 18214 ret0 = new(bool) 18215 ) 18216 out := ret0 18217 err := _ExtBridge.contract.Call(opts, out, "isOwner") 18218 return *ret0, err 18219 } 18220 18221 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 18222 // 18223 // Solidity: function isOwner() view returns(bool) 18224 func (_ExtBridge *ExtBridgeSession) IsOwner() (bool, error) { 18225 return _ExtBridge.Contract.IsOwner(&_ExtBridge.CallOpts) 18226 } 18227 18228 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 18229 // 18230 // Solidity: function isOwner() view returns(bool) 18231 func (_ExtBridge *ExtBridgeCallerSession) IsOwner() (bool, error) { 18232 return _ExtBridge.Contract.IsOwner(&_ExtBridge.CallOpts) 18233 } 18234 18235 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 18236 // 18237 // Solidity: function isRunning() view returns(bool) 18238 func (_ExtBridge *ExtBridgeCaller) IsRunning(opts *bind.CallOpts) (bool, error) { 18239 var ( 18240 ret0 = new(bool) 18241 ) 18242 out := ret0 18243 err := _ExtBridge.contract.Call(opts, out, "isRunning") 18244 return *ret0, err 18245 } 18246 18247 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 18248 // 18249 // Solidity: function isRunning() view returns(bool) 18250 func (_ExtBridge *ExtBridgeSession) IsRunning() (bool, error) { 18251 return _ExtBridge.Contract.IsRunning(&_ExtBridge.CallOpts) 18252 } 18253 18254 // IsRunning is a free data retrieval call binding the contract method 0x2014e5d1. 18255 // 18256 // Solidity: function isRunning() view returns(bool) 18257 func (_ExtBridge *ExtBridgeCallerSession) IsRunning() (bool, error) { 18258 return _ExtBridge.Contract.IsRunning(&_ExtBridge.CallOpts) 18259 } 18260 18261 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 18262 // 18263 // Solidity: function lockedTokens(address ) view returns(bool) 18264 func (_ExtBridge *ExtBridgeCaller) LockedTokens(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 18265 var ( 18266 ret0 = new(bool) 18267 ) 18268 out := ret0 18269 err := _ExtBridge.contract.Call(opts, out, "lockedTokens", arg0) 18270 return *ret0, err 18271 } 18272 18273 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 18274 // 18275 // Solidity: function lockedTokens(address ) view returns(bool) 18276 func (_ExtBridge *ExtBridgeSession) LockedTokens(arg0 common.Address) (bool, error) { 18277 return _ExtBridge.Contract.LockedTokens(&_ExtBridge.CallOpts, arg0) 18278 } 18279 18280 // LockedTokens is a free data retrieval call binding the contract method 0x5eb7413a. 18281 // 18282 // Solidity: function lockedTokens(address ) view returns(bool) 18283 func (_ExtBridge *ExtBridgeCallerSession) LockedTokens(arg0 common.Address) (bool, error) { 18284 return _ExtBridge.Contract.LockedTokens(&_ExtBridge.CallOpts, arg0) 18285 } 18286 18287 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 18288 // 18289 // Solidity: function lowerHandleNonce() view returns(uint64) 18290 func (_ExtBridge *ExtBridgeCaller) LowerHandleNonce(opts *bind.CallOpts) (uint64, error) { 18291 var ( 18292 ret0 = new(uint64) 18293 ) 18294 out := ret0 18295 err := _ExtBridge.contract.Call(opts, out, "lowerHandleNonce") 18296 return *ret0, err 18297 } 18298 18299 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 18300 // 18301 // Solidity: function lowerHandleNonce() view returns(uint64) 18302 func (_ExtBridge *ExtBridgeSession) LowerHandleNonce() (uint64, error) { 18303 return _ExtBridge.Contract.LowerHandleNonce(&_ExtBridge.CallOpts) 18304 } 18305 18306 // LowerHandleNonce is a free data retrieval call binding the contract method 0x4b40b826. 18307 // 18308 // Solidity: function lowerHandleNonce() view returns(uint64) 18309 func (_ExtBridge *ExtBridgeCallerSession) LowerHandleNonce() (uint64, error) { 18310 return _ExtBridge.Contract.LowerHandleNonce(&_ExtBridge.CallOpts) 18311 } 18312 18313 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 18314 // 18315 // Solidity: function modeMintBurn() view returns(bool) 18316 func (_ExtBridge *ExtBridgeCaller) ModeMintBurn(opts *bind.CallOpts) (bool, error) { 18317 var ( 18318 ret0 = new(bool) 18319 ) 18320 out := ret0 18321 err := _ExtBridge.contract.Call(opts, out, "modeMintBurn") 18322 return *ret0, err 18323 } 18324 18325 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 18326 // 18327 // Solidity: function modeMintBurn() view returns(bool) 18328 func (_ExtBridge *ExtBridgeSession) ModeMintBurn() (bool, error) { 18329 return _ExtBridge.Contract.ModeMintBurn(&_ExtBridge.CallOpts) 18330 } 18331 18332 // ModeMintBurn is a free data retrieval call binding the contract method 0x6e176ec2. 18333 // 18334 // Solidity: function modeMintBurn() view returns(bool) 18335 func (_ExtBridge *ExtBridgeCallerSession) ModeMintBurn() (bool, error) { 18336 return _ExtBridge.Contract.ModeMintBurn(&_ExtBridge.CallOpts) 18337 } 18338 18339 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 18340 // 18341 // Solidity: function operatorList(uint256 ) view returns(address) 18342 func (_ExtBridge *ExtBridgeCaller) OperatorList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 18343 var ( 18344 ret0 = new(common.Address) 18345 ) 18346 out := ret0 18347 err := _ExtBridge.contract.Call(opts, out, "operatorList", arg0) 18348 return *ret0, err 18349 } 18350 18351 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 18352 // 18353 // Solidity: function operatorList(uint256 ) view returns(address) 18354 func (_ExtBridge *ExtBridgeSession) OperatorList(arg0 *big.Int) (common.Address, error) { 18355 return _ExtBridge.Contract.OperatorList(&_ExtBridge.CallOpts, arg0) 18356 } 18357 18358 // OperatorList is a free data retrieval call binding the contract method 0xcb38f407. 18359 // 18360 // Solidity: function operatorList(uint256 ) view returns(address) 18361 func (_ExtBridge *ExtBridgeCallerSession) OperatorList(arg0 *big.Int) (common.Address, error) { 18362 return _ExtBridge.Contract.OperatorList(&_ExtBridge.CallOpts, arg0) 18363 } 18364 18365 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 18366 // 18367 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 18368 func (_ExtBridge *ExtBridgeCaller) OperatorThresholds(opts *bind.CallOpts, arg0 uint8) (uint8, error) { 18369 var ( 18370 ret0 = new(uint8) 18371 ) 18372 out := ret0 18373 err := _ExtBridge.contract.Call(opts, out, "operatorThresholds", arg0) 18374 return *ret0, err 18375 } 18376 18377 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 18378 // 18379 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 18380 func (_ExtBridge *ExtBridgeSession) OperatorThresholds(arg0 uint8) (uint8, error) { 18381 return _ExtBridge.Contract.OperatorThresholds(&_ExtBridge.CallOpts, arg0) 18382 } 18383 18384 // OperatorThresholds is a free data retrieval call binding the contract method 0x5526f76b. 18385 // 18386 // Solidity: function operatorThresholds(uint8 ) view returns(uint8) 18387 func (_ExtBridge *ExtBridgeCallerSession) OperatorThresholds(arg0 uint8) (uint8, error) { 18388 return _ExtBridge.Contract.OperatorThresholds(&_ExtBridge.CallOpts, arg0) 18389 } 18390 18391 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 18392 // 18393 // Solidity: function operators(address ) view returns(bool) 18394 func (_ExtBridge *ExtBridgeCaller) Operators(opts *bind.CallOpts, arg0 common.Address) (bool, error) { 18395 var ( 18396 ret0 = new(bool) 18397 ) 18398 out := ret0 18399 err := _ExtBridge.contract.Call(opts, out, "operators", arg0) 18400 return *ret0, err 18401 } 18402 18403 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 18404 // 18405 // Solidity: function operators(address ) view returns(bool) 18406 func (_ExtBridge *ExtBridgeSession) Operators(arg0 common.Address) (bool, error) { 18407 return _ExtBridge.Contract.Operators(&_ExtBridge.CallOpts, arg0) 18408 } 18409 18410 // Operators is a free data retrieval call binding the contract method 0x13e7c9d8. 18411 // 18412 // Solidity: function operators(address ) view returns(bool) 18413 func (_ExtBridge *ExtBridgeCallerSession) Operators(arg0 common.Address) (bool, error) { 18414 return _ExtBridge.Contract.Operators(&_ExtBridge.CallOpts, arg0) 18415 } 18416 18417 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 18418 // 18419 // Solidity: function owner() view returns(address) 18420 func (_ExtBridge *ExtBridgeCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 18421 var ( 18422 ret0 = new(common.Address) 18423 ) 18424 out := ret0 18425 err := _ExtBridge.contract.Call(opts, out, "owner") 18426 return *ret0, err 18427 } 18428 18429 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 18430 // 18431 // Solidity: function owner() view returns(address) 18432 func (_ExtBridge *ExtBridgeSession) Owner() (common.Address, error) { 18433 return _ExtBridge.Contract.Owner(&_ExtBridge.CallOpts) 18434 } 18435 18436 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 18437 // 18438 // Solidity: function owner() view returns(address) 18439 func (_ExtBridge *ExtBridgeCallerSession) Owner() (common.Address, error) { 18440 return _ExtBridge.Contract.Owner(&_ExtBridge.CallOpts) 18441 } 18442 18443 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 18444 // 18445 // Solidity: function recoveryBlockNumber() view returns(uint64) 18446 func (_ExtBridge *ExtBridgeCaller) RecoveryBlockNumber(opts *bind.CallOpts) (uint64, error) { 18447 var ( 18448 ret0 = new(uint64) 18449 ) 18450 out := ret0 18451 err := _ExtBridge.contract.Call(opts, out, "recoveryBlockNumber") 18452 return *ret0, err 18453 } 18454 18455 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 18456 // 18457 // Solidity: function recoveryBlockNumber() view returns(uint64) 18458 func (_ExtBridge *ExtBridgeSession) RecoveryBlockNumber() (uint64, error) { 18459 return _ExtBridge.Contract.RecoveryBlockNumber(&_ExtBridge.CallOpts) 18460 } 18461 18462 // RecoveryBlockNumber is a free data retrieval call binding the contract method 0x989ba0d3. 18463 // 18464 // Solidity: function recoveryBlockNumber() view returns(uint64) 18465 func (_ExtBridge *ExtBridgeCallerSession) RecoveryBlockNumber() (uint64, error) { 18466 return _ExtBridge.Contract.RecoveryBlockNumber(&_ExtBridge.CallOpts) 18467 } 18468 18469 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 18470 // 18471 // Solidity: function registeredTokenList(uint256 ) view returns(address) 18472 func (_ExtBridge *ExtBridgeCaller) RegisteredTokenList(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 18473 var ( 18474 ret0 = new(common.Address) 18475 ) 18476 out := ret0 18477 err := _ExtBridge.contract.Call(opts, out, "registeredTokenList", arg0) 18478 return *ret0, err 18479 } 18480 18481 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 18482 // 18483 // Solidity: function registeredTokenList(uint256 ) view returns(address) 18484 func (_ExtBridge *ExtBridgeSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 18485 return _ExtBridge.Contract.RegisteredTokenList(&_ExtBridge.CallOpts, arg0) 18486 } 18487 18488 // RegisteredTokenList is a free data retrieval call binding the contract method 0x3e4fe949. 18489 // 18490 // Solidity: function registeredTokenList(uint256 ) view returns(address) 18491 func (_ExtBridge *ExtBridgeCallerSession) RegisteredTokenList(arg0 *big.Int) (common.Address, error) { 18492 return _ExtBridge.Contract.RegisteredTokenList(&_ExtBridge.CallOpts, arg0) 18493 } 18494 18495 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 18496 // 18497 // Solidity: function registeredTokens(address ) view returns(address) 18498 func (_ExtBridge *ExtBridgeCaller) RegisteredTokens(opts *bind.CallOpts, arg0 common.Address) (common.Address, error) { 18499 var ( 18500 ret0 = new(common.Address) 18501 ) 18502 out := ret0 18503 err := _ExtBridge.contract.Call(opts, out, "registeredTokens", arg0) 18504 return *ret0, err 18505 } 18506 18507 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 18508 // 18509 // Solidity: function registeredTokens(address ) view returns(address) 18510 func (_ExtBridge *ExtBridgeSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 18511 return _ExtBridge.Contract.RegisteredTokens(&_ExtBridge.CallOpts, arg0) 18512 } 18513 18514 // RegisteredTokens is a free data retrieval call binding the contract method 0x8c0bd916. 18515 // 18516 // Solidity: function registeredTokens(address ) view returns(address) 18517 func (_ExtBridge *ExtBridgeCallerSession) RegisteredTokens(arg0 common.Address) (common.Address, error) { 18518 return _ExtBridge.Contract.RegisteredTokens(&_ExtBridge.CallOpts, arg0) 18519 } 18520 18521 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 18522 // 18523 // Solidity: function requestNonce() view returns(uint64) 18524 func (_ExtBridge *ExtBridgeCaller) RequestNonce(opts *bind.CallOpts) (uint64, error) { 18525 var ( 18526 ret0 = new(uint64) 18527 ) 18528 out := ret0 18529 err := _ExtBridge.contract.Call(opts, out, "requestNonce") 18530 return *ret0, err 18531 } 18532 18533 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 18534 // 18535 // Solidity: function requestNonce() view returns(uint64) 18536 func (_ExtBridge *ExtBridgeSession) RequestNonce() (uint64, error) { 18537 return _ExtBridge.Contract.RequestNonce(&_ExtBridge.CallOpts) 18538 } 18539 18540 // RequestNonce is a free data retrieval call binding the contract method 0x7c1a0302. 18541 // 18542 // Solidity: function requestNonce() view returns(uint64) 18543 func (_ExtBridge *ExtBridgeCallerSession) RequestNonce() (uint64, error) { 18544 return _ExtBridge.Contract.RequestNonce(&_ExtBridge.CallOpts) 18545 } 18546 18547 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 18548 // 18549 // Solidity: function upperHandleNonce() view returns(uint64) 18550 func (_ExtBridge *ExtBridgeCaller) UpperHandleNonce(opts *bind.CallOpts) (uint64, error) { 18551 var ( 18552 ret0 = new(uint64) 18553 ) 18554 out := ret0 18555 err := _ExtBridge.contract.Call(opts, out, "upperHandleNonce") 18556 return *ret0, err 18557 } 18558 18559 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 18560 // 18561 // Solidity: function upperHandleNonce() view returns(uint64) 18562 func (_ExtBridge *ExtBridgeSession) UpperHandleNonce() (uint64, error) { 18563 return _ExtBridge.Contract.UpperHandleNonce(&_ExtBridge.CallOpts) 18564 } 18565 18566 // UpperHandleNonce is a free data retrieval call binding the contract method 0x54edad72. 18567 // 18568 // Solidity: function upperHandleNonce() view returns(uint64) 18569 func (_ExtBridge *ExtBridgeCallerSession) UpperHandleNonce() (uint64, error) { 18570 return _ExtBridge.Contract.UpperHandleNonce(&_ExtBridge.CallOpts) 18571 } 18572 18573 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 18574 // 18575 // Solidity: function deregisterOperator(address _operator) returns() 18576 func (_ExtBridge *ExtBridgeTransactor) DeregisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 18577 return _ExtBridge.contract.Transact(opts, "deregisterOperator", _operator) 18578 } 18579 18580 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 18581 // 18582 // Solidity: function deregisterOperator(address _operator) returns() 18583 func (_ExtBridge *ExtBridgeSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 18584 return _ExtBridge.Contract.DeregisterOperator(&_ExtBridge.TransactOpts, _operator) 18585 } 18586 18587 // DeregisterOperator is a paid mutator transaction binding the contract method 0xd8cf98ca. 18588 // 18589 // Solidity: function deregisterOperator(address _operator) returns() 18590 func (_ExtBridge *ExtBridgeTransactorSession) DeregisterOperator(_operator common.Address) (*types.Transaction, error) { 18591 return _ExtBridge.Contract.DeregisterOperator(&_ExtBridge.TransactOpts, _operator) 18592 } 18593 18594 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 18595 // 18596 // Solidity: function deregisterToken(address _token) returns() 18597 func (_ExtBridge *ExtBridgeTransactor) DeregisterToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 18598 return _ExtBridge.contract.Transact(opts, "deregisterToken", _token) 18599 } 18600 18601 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 18602 // 18603 // Solidity: function deregisterToken(address _token) returns() 18604 func (_ExtBridge *ExtBridgeSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 18605 return _ExtBridge.Contract.DeregisterToken(&_ExtBridge.TransactOpts, _token) 18606 } 18607 18608 // DeregisterToken is a paid mutator transaction binding the contract method 0xbab2af1d. 18609 // 18610 // Solidity: function deregisterToken(address _token) returns() 18611 func (_ExtBridge *ExtBridgeTransactorSession) DeregisterToken(_token common.Address) (*types.Transaction, error) { 18612 return _ExtBridge.Contract.DeregisterToken(&_ExtBridge.TransactOpts, _token) 18613 } 18614 18615 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 18616 // 18617 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestNonce, uint64 _requestBlockNumber, bytes _extraData) returns() 18618 func (_ExtBridge *ExtBridgeTransactor) HandleERC20Transfer(opts *bind.TransactOpts, _requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 18619 return _ExtBridge.contract.Transact(opts, "handleERC20Transfer", _requestTxHash, _from, _to, _tokenAddress, _value, _requestNonce, _requestBlockNumber, _extraData) 18620 } 18621 18622 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 18623 // 18624 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestNonce, uint64 _requestBlockNumber, bytes _extraData) returns() 18625 func (_ExtBridge *ExtBridgeSession) HandleERC20Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 18626 return _ExtBridge.Contract.HandleERC20Transfer(&_ExtBridge.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _value, _requestNonce, _requestBlockNumber, _extraData) 18627 } 18628 18629 // HandleERC20Transfer is a paid mutator transaction binding the contract method 0x407e6bae. 18630 // 18631 // Solidity: function handleERC20Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _value, uint64 _requestNonce, uint64 _requestBlockNumber, bytes _extraData) returns() 18632 func (_ExtBridge *ExtBridgeTransactorSession) HandleERC20Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _value *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _extraData []byte) (*types.Transaction, error) { 18633 return _ExtBridge.Contract.HandleERC20Transfer(&_ExtBridge.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _value, _requestNonce, _requestBlockNumber, _extraData) 18634 } 18635 18636 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 18637 // 18638 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestNonce, uint64 _requestBlockNumber, string _tokenURI, bytes _extraData) returns() 18639 func (_ExtBridge *ExtBridgeTransactor) HandleERC721Transfer(opts *bind.TransactOpts, _requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 18640 return _ExtBridge.contract.Transact(opts, "handleERC721Transfer", _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestNonce, _requestBlockNumber, _tokenURI, _extraData) 18641 } 18642 18643 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 18644 // 18645 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestNonce, uint64 _requestBlockNumber, string _tokenURI, bytes _extraData) returns() 18646 func (_ExtBridge *ExtBridgeSession) HandleERC721Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 18647 return _ExtBridge.Contract.HandleERC721Transfer(&_ExtBridge.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestNonce, _requestBlockNumber, _tokenURI, _extraData) 18648 } 18649 18650 // HandleERC721Transfer is a paid mutator transaction binding the contract method 0xafb60223. 18651 // 18652 // Solidity: function handleERC721Transfer(bytes32 _requestTxHash, address _from, address _to, address _tokenAddress, uint256 _tokenId, uint64 _requestNonce, uint64 _requestBlockNumber, string _tokenURI, bytes _extraData) returns() 18653 func (_ExtBridge *ExtBridgeTransactorSession) HandleERC721Transfer(_requestTxHash [32]byte, _from common.Address, _to common.Address, _tokenAddress common.Address, _tokenId *big.Int, _requestNonce uint64, _requestBlockNumber uint64, _tokenURI string, _extraData []byte) (*types.Transaction, error) { 18654 return _ExtBridge.Contract.HandleERC721Transfer(&_ExtBridge.TransactOpts, _requestTxHash, _from, _to, _tokenAddress, _tokenId, _requestNonce, _requestBlockNumber, _tokenURI, _extraData) 18655 } 18656 18657 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 18658 // 18659 // Solidity: function lockToken(address _token) returns() 18660 func (_ExtBridge *ExtBridgeTransactor) LockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 18661 return _ExtBridge.contract.Transact(opts, "lockToken", _token) 18662 } 18663 18664 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 18665 // 18666 // Solidity: function lockToken(address _token) returns() 18667 func (_ExtBridge *ExtBridgeSession) LockToken(_token common.Address) (*types.Transaction, error) { 18668 return _ExtBridge.Contract.LockToken(&_ExtBridge.TransactOpts, _token) 18669 } 18670 18671 // LockToken is a paid mutator transaction binding the contract method 0x10693fcd. 18672 // 18673 // Solidity: function lockToken(address _token) returns() 18674 func (_ExtBridge *ExtBridgeTransactorSession) LockToken(_token common.Address) (*types.Transaction, error) { 18675 return _ExtBridge.Contract.LockToken(&_ExtBridge.TransactOpts, _token) 18676 } 18677 18678 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 18679 // 18680 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18681 func (_ExtBridge *ExtBridgeTransactor) OnERC20Received(opts *bind.TransactOpts, _from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18682 return _ExtBridge.contract.Transact(opts, "onERC20Received", _from, _to, _value, _feeLimit, _extraData) 18683 } 18684 18685 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 18686 // 18687 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18688 func (_ExtBridge *ExtBridgeSession) OnERC20Received(_from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18689 return _ExtBridge.Contract.OnERC20Received(&_ExtBridge.TransactOpts, _from, _to, _value, _feeLimit, _extraData) 18690 } 18691 18692 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 18693 // 18694 // Solidity: function onERC20Received(address _from, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18695 func (_ExtBridge *ExtBridgeTransactorSession) OnERC20Received(_from common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18696 return _ExtBridge.Contract.OnERC20Received(&_ExtBridge.TransactOpts, _from, _to, _value, _feeLimit, _extraData) 18697 } 18698 18699 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 18700 // 18701 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 18702 func (_ExtBridge *ExtBridgeTransactor) OnERC721Received(opts *bind.TransactOpts, _from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 18703 return _ExtBridge.contract.Transact(opts, "onERC721Received", _from, _tokenId, _to, _extraData) 18704 } 18705 18706 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 18707 // 18708 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 18709 func (_ExtBridge *ExtBridgeSession) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 18710 return _ExtBridge.Contract.OnERC721Received(&_ExtBridge.TransactOpts, _from, _tokenId, _to, _extraData) 18711 } 18712 18713 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 18714 // 18715 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 18716 func (_ExtBridge *ExtBridgeTransactorSession) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 18717 return _ExtBridge.Contract.OnERC721Received(&_ExtBridge.TransactOpts, _from, _tokenId, _to, _extraData) 18718 } 18719 18720 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 18721 // 18722 // Solidity: function registerOperator(address _operator) returns() 18723 func (_ExtBridge *ExtBridgeTransactor) RegisterOperator(opts *bind.TransactOpts, _operator common.Address) (*types.Transaction, error) { 18724 return _ExtBridge.contract.Transact(opts, "registerOperator", _operator) 18725 } 18726 18727 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 18728 // 18729 // Solidity: function registerOperator(address _operator) returns() 18730 func (_ExtBridge *ExtBridgeSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 18731 return _ExtBridge.Contract.RegisterOperator(&_ExtBridge.TransactOpts, _operator) 18732 } 18733 18734 // RegisterOperator is a paid mutator transaction binding the contract method 0x3682a450. 18735 // 18736 // Solidity: function registerOperator(address _operator) returns() 18737 func (_ExtBridge *ExtBridgeTransactorSession) RegisterOperator(_operator common.Address) (*types.Transaction, error) { 18738 return _ExtBridge.Contract.RegisterOperator(&_ExtBridge.TransactOpts, _operator) 18739 } 18740 18741 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 18742 // 18743 // Solidity: function registerToken(address _token, address _cToken) returns() 18744 func (_ExtBridge *ExtBridgeTransactor) RegisterToken(opts *bind.TransactOpts, _token common.Address, _cToken common.Address) (*types.Transaction, error) { 18745 return _ExtBridge.contract.Transact(opts, "registerToken", _token, _cToken) 18746 } 18747 18748 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 18749 // 18750 // Solidity: function registerToken(address _token, address _cToken) returns() 18751 func (_ExtBridge *ExtBridgeSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 18752 return _ExtBridge.Contract.RegisterToken(&_ExtBridge.TransactOpts, _token, _cToken) 18753 } 18754 18755 // RegisterToken is a paid mutator transaction binding the contract method 0x4739f7e5. 18756 // 18757 // Solidity: function registerToken(address _token, address _cToken) returns() 18758 func (_ExtBridge *ExtBridgeTransactorSession) RegisterToken(_token common.Address, _cToken common.Address) (*types.Transaction, error) { 18759 return _ExtBridge.Contract.RegisterToken(&_ExtBridge.TransactOpts, _token, _cToken) 18760 } 18761 18762 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 18763 // 18764 // Solidity: function renounceOwnership() returns() 18765 func (_ExtBridge *ExtBridgeTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 18766 return _ExtBridge.contract.Transact(opts, "renounceOwnership") 18767 } 18768 18769 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 18770 // 18771 // Solidity: function renounceOwnership() returns() 18772 func (_ExtBridge *ExtBridgeSession) RenounceOwnership() (*types.Transaction, error) { 18773 return _ExtBridge.Contract.RenounceOwnership(&_ExtBridge.TransactOpts) 18774 } 18775 18776 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 18777 // 18778 // Solidity: function renounceOwnership() returns() 18779 func (_ExtBridge *ExtBridgeTransactorSession) RenounceOwnership() (*types.Transaction, error) { 18780 return _ExtBridge.Contract.RenounceOwnership(&_ExtBridge.TransactOpts) 18781 } 18782 18783 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 18784 // 18785 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18786 func (_ExtBridge *ExtBridgeTransactor) RequestERC20Transfer(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18787 return _ExtBridge.contract.Transact(opts, "requestERC20Transfer", _tokenAddress, _to, _value, _feeLimit, _extraData) 18788 } 18789 18790 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 18791 // 18792 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18793 func (_ExtBridge *ExtBridgeSession) RequestERC20Transfer(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18794 return _ExtBridge.Contract.RequestERC20Transfer(&_ExtBridge.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _extraData) 18795 } 18796 18797 // RequestERC20Transfer is a paid mutator transaction binding the contract method 0x26c23b54. 18798 // 18799 // Solidity: function requestERC20Transfer(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, bytes _extraData) returns() 18800 func (_ExtBridge *ExtBridgeTransactorSession) RequestERC20Transfer(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 18801 return _ExtBridge.Contract.RequestERC20Transfer(&_ExtBridge.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _extraData) 18802 } 18803 18804 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 18805 // 18806 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 18807 func (_ExtBridge *ExtBridgeTransactor) RequestERC721Transfer(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 18808 return _ExtBridge.contract.Transact(opts, "requestERC721Transfer", _tokenAddress, _to, _tokenId, _extraData) 18809 } 18810 18811 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 18812 // 18813 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 18814 func (_ExtBridge *ExtBridgeSession) RequestERC721Transfer(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 18815 return _ExtBridge.Contract.RequestERC721Transfer(&_ExtBridge.TransactOpts, _tokenAddress, _to, _tokenId, _extraData) 18816 } 18817 18818 // RequestERC721Transfer is a paid mutator transaction binding the contract method 0x22604742. 18819 // 18820 // Solidity: function requestERC721Transfer(address _tokenAddress, address _to, uint256 _tokenId, bytes _extraData) returns() 18821 func (_ExtBridge *ExtBridgeTransactorSession) RequestERC721Transfer(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _extraData []byte) (*types.Transaction, error) { 18822 return _ExtBridge.Contract.RequestERC721Transfer(&_ExtBridge.TransactOpts, _tokenAddress, _to, _tokenId, _extraData) 18823 } 18824 18825 // RequestSellERC20 is a paid mutator transaction binding the contract method 0xc5e49073. 18826 // 18827 // Solidity: function requestSellERC20(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, uint256 _price) returns() 18828 func (_ExtBridge *ExtBridgeTransactor) RequestSellERC20(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _price *big.Int) (*types.Transaction, error) { 18829 return _ExtBridge.contract.Transact(opts, "requestSellERC20", _tokenAddress, _to, _value, _feeLimit, _price) 18830 } 18831 18832 // RequestSellERC20 is a paid mutator transaction binding the contract method 0xc5e49073. 18833 // 18834 // Solidity: function requestSellERC20(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, uint256 _price) returns() 18835 func (_ExtBridge *ExtBridgeSession) RequestSellERC20(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _price *big.Int) (*types.Transaction, error) { 18836 return _ExtBridge.Contract.RequestSellERC20(&_ExtBridge.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _price) 18837 } 18838 18839 // RequestSellERC20 is a paid mutator transaction binding the contract method 0xc5e49073. 18840 // 18841 // Solidity: function requestSellERC20(address _tokenAddress, address _to, uint256 _value, uint256 _feeLimit, uint256 _price) returns() 18842 func (_ExtBridge *ExtBridgeTransactorSession) RequestSellERC20(_tokenAddress common.Address, _to common.Address, _value *big.Int, _feeLimit *big.Int, _price *big.Int) (*types.Transaction, error) { 18843 return _ExtBridge.Contract.RequestSellERC20(&_ExtBridge.TransactOpts, _tokenAddress, _to, _value, _feeLimit, _price) 18844 } 18845 18846 // RequestSellERC721 is a paid mutator transaction binding the contract method 0x4c5146f5. 18847 // 18848 // Solidity: function requestSellERC721(address _tokenAddress, address _to, uint256 _tokenId, uint256 _price) returns() 18849 func (_ExtBridge *ExtBridgeTransactor) RequestSellERC721(opts *bind.TransactOpts, _tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _price *big.Int) (*types.Transaction, error) { 18850 return _ExtBridge.contract.Transact(opts, "requestSellERC721", _tokenAddress, _to, _tokenId, _price) 18851 } 18852 18853 // RequestSellERC721 is a paid mutator transaction binding the contract method 0x4c5146f5. 18854 // 18855 // Solidity: function requestSellERC721(address _tokenAddress, address _to, uint256 _tokenId, uint256 _price) returns() 18856 func (_ExtBridge *ExtBridgeSession) RequestSellERC721(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _price *big.Int) (*types.Transaction, error) { 18857 return _ExtBridge.Contract.RequestSellERC721(&_ExtBridge.TransactOpts, _tokenAddress, _to, _tokenId, _price) 18858 } 18859 18860 // RequestSellERC721 is a paid mutator transaction binding the contract method 0x4c5146f5. 18861 // 18862 // Solidity: function requestSellERC721(address _tokenAddress, address _to, uint256 _tokenId, uint256 _price) returns() 18863 func (_ExtBridge *ExtBridgeTransactorSession) RequestSellERC721(_tokenAddress common.Address, _to common.Address, _tokenId *big.Int, _price *big.Int) (*types.Transaction, error) { 18864 return _ExtBridge.Contract.RequestSellERC721(&_ExtBridge.TransactOpts, _tokenAddress, _to, _tokenId, _price) 18865 } 18866 18867 // SetCallback is a paid mutator transaction binding the contract method 0x8daa63ac. 18868 // 18869 // Solidity: function setCallback(address _addr) returns() 18870 func (_ExtBridge *ExtBridgeTransactor) SetCallback(opts *bind.TransactOpts, _addr common.Address) (*types.Transaction, error) { 18871 return _ExtBridge.contract.Transact(opts, "setCallback", _addr) 18872 } 18873 18874 // SetCallback is a paid mutator transaction binding the contract method 0x8daa63ac. 18875 // 18876 // Solidity: function setCallback(address _addr) returns() 18877 func (_ExtBridge *ExtBridgeSession) SetCallback(_addr common.Address) (*types.Transaction, error) { 18878 return _ExtBridge.Contract.SetCallback(&_ExtBridge.TransactOpts, _addr) 18879 } 18880 18881 // SetCallback is a paid mutator transaction binding the contract method 0x8daa63ac. 18882 // 18883 // Solidity: function setCallback(address _addr) returns() 18884 func (_ExtBridge *ExtBridgeTransactorSession) SetCallback(_addr common.Address) (*types.Transaction, error) { 18885 return _ExtBridge.Contract.SetCallback(&_ExtBridge.TransactOpts, _addr) 18886 } 18887 18888 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 18889 // 18890 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 18891 func (_ExtBridge *ExtBridgeTransactor) SetERC20Fee(opts *bind.TransactOpts, _token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 18892 return _ExtBridge.contract.Transact(opts, "setERC20Fee", _token, _fee, _requestNonce) 18893 } 18894 18895 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 18896 // 18897 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 18898 func (_ExtBridge *ExtBridgeSession) SetERC20Fee(_token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 18899 return _ExtBridge.Contract.SetERC20Fee(&_ExtBridge.TransactOpts, _token, _fee, _requestNonce) 18900 } 18901 18902 // SetERC20Fee is a paid mutator transaction binding the contract method 0x2f88396c. 18903 // 18904 // Solidity: function setERC20Fee(address _token, uint256 _fee, uint64 _requestNonce) returns() 18905 func (_ExtBridge *ExtBridgeTransactorSession) SetERC20Fee(_token common.Address, _fee *big.Int, _requestNonce uint64) (*types.Transaction, error) { 18906 return _ExtBridge.Contract.SetERC20Fee(&_ExtBridge.TransactOpts, _token, _fee, _requestNonce) 18907 } 18908 18909 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 18910 // 18911 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 18912 func (_ExtBridge *ExtBridgeTransactor) SetFeeReceiver(opts *bind.TransactOpts, _feeReceiver common.Address) (*types.Transaction, error) { 18913 return _ExtBridge.contract.Transact(opts, "setFeeReceiver", _feeReceiver) 18914 } 18915 18916 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 18917 // 18918 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 18919 func (_ExtBridge *ExtBridgeSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 18920 return _ExtBridge.Contract.SetFeeReceiver(&_ExtBridge.TransactOpts, _feeReceiver) 18921 } 18922 18923 // SetFeeReceiver is a paid mutator transaction binding the contract method 0xefdcd974. 18924 // 18925 // Solidity: function setFeeReceiver(address _feeReceiver) returns() 18926 func (_ExtBridge *ExtBridgeTransactorSession) SetFeeReceiver(_feeReceiver common.Address) (*types.Transaction, error) { 18927 return _ExtBridge.Contract.SetFeeReceiver(&_ExtBridge.TransactOpts, _feeReceiver) 18928 } 18929 18930 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 18931 // 18932 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 18933 func (_ExtBridge *ExtBridgeTransactor) SetOperatorThreshold(opts *bind.TransactOpts, _voteType uint8, _threshold uint8) (*types.Transaction, error) { 18934 return _ExtBridge.contract.Transact(opts, "setOperatorThreshold", _voteType, _threshold) 18935 } 18936 18937 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 18938 // 18939 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 18940 func (_ExtBridge *ExtBridgeSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 18941 return _ExtBridge.Contract.SetOperatorThreshold(&_ExtBridge.TransactOpts, _voteType, _threshold) 18942 } 18943 18944 // SetOperatorThreshold is a paid mutator transaction binding the contract method 0xee2aec65. 18945 // 18946 // Solidity: function setOperatorThreshold(uint8 _voteType, uint8 _threshold) returns() 18947 func (_ExtBridge *ExtBridgeTransactorSession) SetOperatorThreshold(_voteType uint8, _threshold uint8) (*types.Transaction, error) { 18948 return _ExtBridge.Contract.SetOperatorThreshold(&_ExtBridge.TransactOpts, _voteType, _threshold) 18949 } 18950 18951 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 18952 // 18953 // Solidity: function start(bool _status) returns() 18954 func (_ExtBridge *ExtBridgeTransactor) Start(opts *bind.TransactOpts, _status bool) (*types.Transaction, error) { 18955 return _ExtBridge.contract.Transact(opts, "start", _status) 18956 } 18957 18958 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 18959 // 18960 // Solidity: function start(bool _status) returns() 18961 func (_ExtBridge *ExtBridgeSession) Start(_status bool) (*types.Transaction, error) { 18962 return _ExtBridge.Contract.Start(&_ExtBridge.TransactOpts, _status) 18963 } 18964 18965 // Start is a paid mutator transaction binding the contract method 0xc877cf37. 18966 // 18967 // Solidity: function start(bool _status) returns() 18968 func (_ExtBridge *ExtBridgeTransactorSession) Start(_status bool) (*types.Transaction, error) { 18969 return _ExtBridge.Contract.Start(&_ExtBridge.TransactOpts, _status) 18970 } 18971 18972 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 18973 // 18974 // Solidity: function transferOwnership(address newOwner) returns() 18975 func (_ExtBridge *ExtBridgeTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 18976 return _ExtBridge.contract.Transact(opts, "transferOwnership", newOwner) 18977 } 18978 18979 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 18980 // 18981 // Solidity: function transferOwnership(address newOwner) returns() 18982 func (_ExtBridge *ExtBridgeSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 18983 return _ExtBridge.Contract.TransferOwnership(&_ExtBridge.TransactOpts, newOwner) 18984 } 18985 18986 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 18987 // 18988 // Solidity: function transferOwnership(address newOwner) returns() 18989 func (_ExtBridge *ExtBridgeTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 18990 return _ExtBridge.Contract.TransferOwnership(&_ExtBridge.TransactOpts, newOwner) 18991 } 18992 18993 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 18994 // 18995 // Solidity: function unlockToken(address _token) returns() 18996 func (_ExtBridge *ExtBridgeTransactor) UnlockToken(opts *bind.TransactOpts, _token common.Address) (*types.Transaction, error) { 18997 return _ExtBridge.contract.Transact(opts, "unlockToken", _token) 18998 } 18999 19000 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 19001 // 19002 // Solidity: function unlockToken(address _token) returns() 19003 func (_ExtBridge *ExtBridgeSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 19004 return _ExtBridge.Contract.UnlockToken(&_ExtBridge.TransactOpts, _token) 19005 } 19006 19007 // UnlockToken is a paid mutator transaction binding the contract method 0x9ef2017b. 19008 // 19009 // Solidity: function unlockToken(address _token) returns() 19010 func (_ExtBridge *ExtBridgeTransactorSession) UnlockToken(_token common.Address) (*types.Transaction, error) { 19011 return _ExtBridge.Contract.UnlockToken(&_ExtBridge.TransactOpts, _token) 19012 } 19013 19014 // ExtBridgeERC20FeeChangedIterator is returned from FilterERC20FeeChanged and is used to iterate over the raw logs and unpacked data for ERC20FeeChanged events raised by the ExtBridge contract. 19015 type ExtBridgeERC20FeeChangedIterator struct { 19016 Event *ExtBridgeERC20FeeChanged // Event containing the contract specifics and raw log 19017 19018 contract *bind.BoundContract // Generic contract to use for unpacking event data 19019 event string // Event name to use for unpacking event data 19020 19021 logs chan types.Log // Log channel receiving the found contract events 19022 sub klaytn.Subscription // Subscription for errors, completion and termination 19023 done bool // Whether the subscription completed delivering logs 19024 fail error // Occurred error to stop iteration 19025 } 19026 19027 // Next advances the iterator to the subsequent event, returning whether there 19028 // are any more events found. In case of a retrieval or parsing error, false is 19029 // returned and Error() can be queried for the exact failure. 19030 func (it *ExtBridgeERC20FeeChangedIterator) Next() bool { 19031 // If the iterator failed, stop iterating 19032 if it.fail != nil { 19033 return false 19034 } 19035 // If the iterator completed, deliver directly whatever's available 19036 if it.done { 19037 select { 19038 case log := <-it.logs: 19039 it.Event = new(ExtBridgeERC20FeeChanged) 19040 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19041 it.fail = err 19042 return false 19043 } 19044 it.Event.Raw = log 19045 return true 19046 19047 default: 19048 return false 19049 } 19050 } 19051 // Iterator still in progress, wait for either a data or an error event 19052 select { 19053 case log := <-it.logs: 19054 it.Event = new(ExtBridgeERC20FeeChanged) 19055 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19056 it.fail = err 19057 return false 19058 } 19059 it.Event.Raw = log 19060 return true 19061 19062 case err := <-it.sub.Err(): 19063 it.done = true 19064 it.fail = err 19065 return it.Next() 19066 } 19067 } 19068 19069 // Error returns any retrieval or parsing error occurred during filtering. 19070 func (it *ExtBridgeERC20FeeChangedIterator) Error() error { 19071 return it.fail 19072 } 19073 19074 // Close terminates the iteration process, releasing any pending underlying 19075 // resources. 19076 func (it *ExtBridgeERC20FeeChangedIterator) Close() error { 19077 it.sub.Unsubscribe() 19078 return nil 19079 } 19080 19081 // ExtBridgeERC20FeeChanged represents a ERC20FeeChanged event raised by the ExtBridge contract. 19082 type ExtBridgeERC20FeeChanged struct { 19083 Token common.Address 19084 Fee *big.Int 19085 Raw types.Log // Blockchain specific contextual infos 19086 } 19087 19088 // FilterERC20FeeChanged is a free log retrieval operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 19089 // 19090 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 19091 func (_ExtBridge *ExtBridgeFilterer) FilterERC20FeeChanged(opts *bind.FilterOpts, token []common.Address, fee []*big.Int) (*ExtBridgeERC20FeeChangedIterator, error) { 19092 19093 var tokenRule []interface{} 19094 for _, tokenItem := range token { 19095 tokenRule = append(tokenRule, tokenItem) 19096 } 19097 var feeRule []interface{} 19098 for _, feeItem := range fee { 19099 feeRule = append(feeRule, feeItem) 19100 } 19101 19102 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 19103 if err != nil { 19104 return nil, err 19105 } 19106 return &ExtBridgeERC20FeeChangedIterator{contract: _ExtBridge.contract, event: "ERC20FeeChanged", logs: logs, sub: sub}, nil 19107 } 19108 19109 // WatchERC20FeeChanged is a free log subscription operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 19110 // 19111 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 19112 func (_ExtBridge *ExtBridgeFilterer) WatchERC20FeeChanged(opts *bind.WatchOpts, sink chan<- *ExtBridgeERC20FeeChanged, token []common.Address, fee []*big.Int) (event.Subscription, error) { 19113 19114 var tokenRule []interface{} 19115 for _, tokenItem := range token { 19116 tokenRule = append(tokenRule, tokenItem) 19117 } 19118 var feeRule []interface{} 19119 for _, feeItem := range fee { 19120 feeRule = append(feeRule, feeItem) 19121 } 19122 19123 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "ERC20FeeChanged", tokenRule, feeRule) 19124 if err != nil { 19125 return nil, err 19126 } 19127 return event.NewSubscription(func(quit <-chan struct{}) error { 19128 defer sub.Unsubscribe() 19129 for { 19130 select { 19131 case log := <-logs: 19132 // New log arrived, parse the event and forward to the user 19133 event := new(ExtBridgeERC20FeeChanged) 19134 if err := _ExtBridge.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 19135 return err 19136 } 19137 event.Raw = log 19138 19139 select { 19140 case sink <- event: 19141 case err := <-sub.Err(): 19142 return err 19143 case <-quit: 19144 return nil 19145 } 19146 case err := <-sub.Err(): 19147 return err 19148 case <-quit: 19149 return nil 19150 } 19151 } 19152 }), nil 19153 } 19154 19155 // ParseERC20FeeChanged is a log parse operation binding the contract event 0xdb5ad2e76ae20cfa4e7adbc7305d7538442164d85ead9937c98620a1aa4c255b. 19156 // 19157 // Solidity: event ERC20FeeChanged(address indexed token, uint256 indexed fee) 19158 func (_ExtBridge *ExtBridgeFilterer) ParseERC20FeeChanged(log types.Log) (*ExtBridgeERC20FeeChanged, error) { 19159 event := new(ExtBridgeERC20FeeChanged) 19160 if err := _ExtBridge.contract.UnpackLog(event, "ERC20FeeChanged", log); err != nil { 19161 return nil, err 19162 } 19163 return event, nil 19164 } 19165 19166 // ExtBridgeFeeReceiverChangedIterator is returned from FilterFeeReceiverChanged and is used to iterate over the raw logs and unpacked data for FeeReceiverChanged events raised by the ExtBridge contract. 19167 type ExtBridgeFeeReceiverChangedIterator struct { 19168 Event *ExtBridgeFeeReceiverChanged // Event containing the contract specifics and raw log 19169 19170 contract *bind.BoundContract // Generic contract to use for unpacking event data 19171 event string // Event name to use for unpacking event data 19172 19173 logs chan types.Log // Log channel receiving the found contract events 19174 sub klaytn.Subscription // Subscription for errors, completion and termination 19175 done bool // Whether the subscription completed delivering logs 19176 fail error // Occurred error to stop iteration 19177 } 19178 19179 // Next advances the iterator to the subsequent event, returning whether there 19180 // are any more events found. In case of a retrieval or parsing error, false is 19181 // returned and Error() can be queried for the exact failure. 19182 func (it *ExtBridgeFeeReceiverChangedIterator) Next() bool { 19183 // If the iterator failed, stop iterating 19184 if it.fail != nil { 19185 return false 19186 } 19187 // If the iterator completed, deliver directly whatever's available 19188 if it.done { 19189 select { 19190 case log := <-it.logs: 19191 it.Event = new(ExtBridgeFeeReceiverChanged) 19192 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19193 it.fail = err 19194 return false 19195 } 19196 it.Event.Raw = log 19197 return true 19198 19199 default: 19200 return false 19201 } 19202 } 19203 // Iterator still in progress, wait for either a data or an error event 19204 select { 19205 case log := <-it.logs: 19206 it.Event = new(ExtBridgeFeeReceiverChanged) 19207 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19208 it.fail = err 19209 return false 19210 } 19211 it.Event.Raw = log 19212 return true 19213 19214 case err := <-it.sub.Err(): 19215 it.done = true 19216 it.fail = err 19217 return it.Next() 19218 } 19219 } 19220 19221 // Error returns any retrieval or parsing error occurred during filtering. 19222 func (it *ExtBridgeFeeReceiverChangedIterator) Error() error { 19223 return it.fail 19224 } 19225 19226 // Close terminates the iteration process, releasing any pending underlying 19227 // resources. 19228 func (it *ExtBridgeFeeReceiverChangedIterator) Close() error { 19229 it.sub.Unsubscribe() 19230 return nil 19231 } 19232 19233 // ExtBridgeFeeReceiverChanged represents a FeeReceiverChanged event raised by the ExtBridge contract. 19234 type ExtBridgeFeeReceiverChanged struct { 19235 FeeReceiver common.Address 19236 Raw types.Log // Blockchain specific contextual infos 19237 } 19238 19239 // FilterFeeReceiverChanged is a free log retrieval operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 19240 // 19241 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 19242 func (_ExtBridge *ExtBridgeFilterer) FilterFeeReceiverChanged(opts *bind.FilterOpts, feeReceiver []common.Address) (*ExtBridgeFeeReceiverChangedIterator, error) { 19243 19244 var feeReceiverRule []interface{} 19245 for _, feeReceiverItem := range feeReceiver { 19246 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 19247 } 19248 19249 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "FeeReceiverChanged", feeReceiverRule) 19250 if err != nil { 19251 return nil, err 19252 } 19253 return &ExtBridgeFeeReceiverChangedIterator{contract: _ExtBridge.contract, event: "FeeReceiverChanged", logs: logs, sub: sub}, nil 19254 } 19255 19256 // WatchFeeReceiverChanged is a free log subscription operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 19257 // 19258 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 19259 func (_ExtBridge *ExtBridgeFilterer) WatchFeeReceiverChanged(opts *bind.WatchOpts, sink chan<- *ExtBridgeFeeReceiverChanged, feeReceiver []common.Address) (event.Subscription, error) { 19260 19261 var feeReceiverRule []interface{} 19262 for _, feeReceiverItem := range feeReceiver { 19263 feeReceiverRule = append(feeReceiverRule, feeReceiverItem) 19264 } 19265 19266 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "FeeReceiverChanged", feeReceiverRule) 19267 if err != nil { 19268 return nil, err 19269 } 19270 return event.NewSubscription(func(quit <-chan struct{}) error { 19271 defer sub.Unsubscribe() 19272 for { 19273 select { 19274 case log := <-logs: 19275 // New log arrived, parse the event and forward to the user 19276 event := new(ExtBridgeFeeReceiverChanged) 19277 if err := _ExtBridge.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 19278 return err 19279 } 19280 event.Raw = log 19281 19282 select { 19283 case sink <- event: 19284 case err := <-sub.Err(): 19285 return err 19286 case <-quit: 19287 return nil 19288 } 19289 case err := <-sub.Err(): 19290 return err 19291 case <-quit: 19292 return nil 19293 } 19294 } 19295 }), nil 19296 } 19297 19298 // ParseFeeReceiverChanged is a log parse operation binding the contract event 0x647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059. 19299 // 19300 // Solidity: event FeeReceiverChanged(address indexed feeReceiver) 19301 func (_ExtBridge *ExtBridgeFilterer) ParseFeeReceiverChanged(log types.Log) (*ExtBridgeFeeReceiverChanged, error) { 19302 event := new(ExtBridgeFeeReceiverChanged) 19303 if err := _ExtBridge.contract.UnpackLog(event, "FeeReceiverChanged", log); err != nil { 19304 return nil, err 19305 } 19306 return event, nil 19307 } 19308 19309 // ExtBridgeHandleValueTransferIterator is returned from FilterHandleValueTransfer and is used to iterate over the raw logs and unpacked data for HandleValueTransfer events raised by the ExtBridge contract. 19310 type ExtBridgeHandleValueTransferIterator struct { 19311 Event *ExtBridgeHandleValueTransfer // Event containing the contract specifics and raw log 19312 19313 contract *bind.BoundContract // Generic contract to use for unpacking event data 19314 event string // Event name to use for unpacking event data 19315 19316 logs chan types.Log // Log channel receiving the found contract events 19317 sub klaytn.Subscription // Subscription for errors, completion and termination 19318 done bool // Whether the subscription completed delivering logs 19319 fail error // Occurred error to stop iteration 19320 } 19321 19322 // Next advances the iterator to the subsequent event, returning whether there 19323 // are any more events found. In case of a retrieval or parsing error, false is 19324 // returned and Error() can be queried for the exact failure. 19325 func (it *ExtBridgeHandleValueTransferIterator) Next() bool { 19326 // If the iterator failed, stop iterating 19327 if it.fail != nil { 19328 return false 19329 } 19330 // If the iterator completed, deliver directly whatever's available 19331 if it.done { 19332 select { 19333 case log := <-it.logs: 19334 it.Event = new(ExtBridgeHandleValueTransfer) 19335 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19336 it.fail = err 19337 return false 19338 } 19339 it.Event.Raw = log 19340 return true 19341 19342 default: 19343 return false 19344 } 19345 } 19346 // Iterator still in progress, wait for either a data or an error event 19347 select { 19348 case log := <-it.logs: 19349 it.Event = new(ExtBridgeHandleValueTransfer) 19350 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19351 it.fail = err 19352 return false 19353 } 19354 it.Event.Raw = log 19355 return true 19356 19357 case err := <-it.sub.Err(): 19358 it.done = true 19359 it.fail = err 19360 return it.Next() 19361 } 19362 } 19363 19364 // Error returns any retrieval or parsing error occurred during filtering. 19365 func (it *ExtBridgeHandleValueTransferIterator) Error() error { 19366 return it.fail 19367 } 19368 19369 // Close terminates the iteration process, releasing any pending underlying 19370 // resources. 19371 func (it *ExtBridgeHandleValueTransferIterator) Close() error { 19372 it.sub.Unsubscribe() 19373 return nil 19374 } 19375 19376 // ExtBridgeHandleValueTransfer represents a HandleValueTransfer event raised by the ExtBridge contract. 19377 type ExtBridgeHandleValueTransfer struct { 19378 RequestTxHash [32]byte 19379 TokenType uint8 19380 From common.Address 19381 To common.Address 19382 TokenAddress common.Address 19383 ValueOrTokenId *big.Int 19384 HandleNonce uint64 19385 LowerHandleNonce uint64 19386 ExtraData []byte 19387 Raw types.Log // Blockchain specific contextual infos 19388 } 19389 19390 // FilterHandleValueTransfer is a free log retrieval operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 19391 // 19392 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 19393 func (_ExtBridge *ExtBridgeFilterer) FilterHandleValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*ExtBridgeHandleValueTransferIterator, error) { 19394 19395 var fromRule []interface{} 19396 for _, fromItem := range from { 19397 fromRule = append(fromRule, fromItem) 19398 } 19399 var toRule []interface{} 19400 for _, toItem := range to { 19401 toRule = append(toRule, toItem) 19402 } 19403 var tokenAddressRule []interface{} 19404 for _, tokenAddressItem := range tokenAddress { 19405 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 19406 } 19407 19408 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 19409 if err != nil { 19410 return nil, err 19411 } 19412 return &ExtBridgeHandleValueTransferIterator{contract: _ExtBridge.contract, event: "HandleValueTransfer", logs: logs, sub: sub}, nil 19413 } 19414 19415 // WatchHandleValueTransfer is a free log subscription operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 19416 // 19417 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 19418 func (_ExtBridge *ExtBridgeFilterer) WatchHandleValueTransfer(opts *bind.WatchOpts, sink chan<- *ExtBridgeHandleValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 19419 19420 var fromRule []interface{} 19421 for _, fromItem := range from { 19422 fromRule = append(fromRule, fromItem) 19423 } 19424 var toRule []interface{} 19425 for _, toItem := range to { 19426 toRule = append(toRule, toItem) 19427 } 19428 var tokenAddressRule []interface{} 19429 for _, tokenAddressItem := range tokenAddress { 19430 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 19431 } 19432 19433 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "HandleValueTransfer", fromRule, toRule, tokenAddressRule) 19434 if err != nil { 19435 return nil, err 19436 } 19437 return event.NewSubscription(func(quit <-chan struct{}) error { 19438 defer sub.Unsubscribe() 19439 for { 19440 select { 19441 case log := <-logs: 19442 // New log arrived, parse the event and forward to the user 19443 event := new(ExtBridgeHandleValueTransfer) 19444 if err := _ExtBridge.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 19445 return err 19446 } 19447 event.Raw = log 19448 19449 select { 19450 case sink <- event: 19451 case err := <-sub.Err(): 19452 return err 19453 case <-quit: 19454 return nil 19455 } 19456 case err := <-sub.Err(): 19457 return err 19458 case <-quit: 19459 return nil 19460 } 19461 } 19462 }), nil 19463 } 19464 19465 // ParseHandleValueTransfer is a log parse operation binding the contract event 0x12b02f226d965a2881e0e8ffed6c421803a22d57ad91f9ef996fe0748ea10175. 19466 // 19467 // Solidity: event HandleValueTransfer(bytes32 requestTxHash, uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 handleNonce, uint64 lowerHandleNonce, bytes extraData) 19468 func (_ExtBridge *ExtBridgeFilterer) ParseHandleValueTransfer(log types.Log) (*ExtBridgeHandleValueTransfer, error) { 19469 event := new(ExtBridgeHandleValueTransfer) 19470 if err := _ExtBridge.contract.UnpackLog(event, "HandleValueTransfer", log); err != nil { 19471 return nil, err 19472 } 19473 return event, nil 19474 } 19475 19476 // ExtBridgeKLAYFeeChangedIterator is returned from FilterKLAYFeeChanged and is used to iterate over the raw logs and unpacked data for KLAYFeeChanged events raised by the ExtBridge contract. 19477 type ExtBridgeKLAYFeeChangedIterator struct { 19478 Event *ExtBridgeKLAYFeeChanged // Event containing the contract specifics and raw log 19479 19480 contract *bind.BoundContract // Generic contract to use for unpacking event data 19481 event string // Event name to use for unpacking event data 19482 19483 logs chan types.Log // Log channel receiving the found contract events 19484 sub klaytn.Subscription // Subscription for errors, completion and termination 19485 done bool // Whether the subscription completed delivering logs 19486 fail error // Occurred error to stop iteration 19487 } 19488 19489 // Next advances the iterator to the subsequent event, returning whether there 19490 // are any more events found. In case of a retrieval or parsing error, false is 19491 // returned and Error() can be queried for the exact failure. 19492 func (it *ExtBridgeKLAYFeeChangedIterator) Next() bool { 19493 // If the iterator failed, stop iterating 19494 if it.fail != nil { 19495 return false 19496 } 19497 // If the iterator completed, deliver directly whatever's available 19498 if it.done { 19499 select { 19500 case log := <-it.logs: 19501 it.Event = new(ExtBridgeKLAYFeeChanged) 19502 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19503 it.fail = err 19504 return false 19505 } 19506 it.Event.Raw = log 19507 return true 19508 19509 default: 19510 return false 19511 } 19512 } 19513 // Iterator still in progress, wait for either a data or an error event 19514 select { 19515 case log := <-it.logs: 19516 it.Event = new(ExtBridgeKLAYFeeChanged) 19517 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19518 it.fail = err 19519 return false 19520 } 19521 it.Event.Raw = log 19522 return true 19523 19524 case err := <-it.sub.Err(): 19525 it.done = true 19526 it.fail = err 19527 return it.Next() 19528 } 19529 } 19530 19531 // Error returns any retrieval or parsing error occurred during filtering. 19532 func (it *ExtBridgeKLAYFeeChangedIterator) Error() error { 19533 return it.fail 19534 } 19535 19536 // Close terminates the iteration process, releasing any pending underlying 19537 // resources. 19538 func (it *ExtBridgeKLAYFeeChangedIterator) Close() error { 19539 it.sub.Unsubscribe() 19540 return nil 19541 } 19542 19543 // ExtBridgeKLAYFeeChanged represents a KLAYFeeChanged event raised by the ExtBridge contract. 19544 type ExtBridgeKLAYFeeChanged struct { 19545 Fee *big.Int 19546 Raw types.Log // Blockchain specific contextual infos 19547 } 19548 19549 // FilterKLAYFeeChanged is a free log retrieval operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 19550 // 19551 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 19552 func (_ExtBridge *ExtBridgeFilterer) FilterKLAYFeeChanged(opts *bind.FilterOpts, fee []*big.Int) (*ExtBridgeKLAYFeeChangedIterator, error) { 19553 19554 var feeRule []interface{} 19555 for _, feeItem := range fee { 19556 feeRule = append(feeRule, feeItem) 19557 } 19558 19559 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "KLAYFeeChanged", feeRule) 19560 if err != nil { 19561 return nil, err 19562 } 19563 return &ExtBridgeKLAYFeeChangedIterator{contract: _ExtBridge.contract, event: "KLAYFeeChanged", logs: logs, sub: sub}, nil 19564 } 19565 19566 // WatchKLAYFeeChanged is a free log subscription operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 19567 // 19568 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 19569 func (_ExtBridge *ExtBridgeFilterer) WatchKLAYFeeChanged(opts *bind.WatchOpts, sink chan<- *ExtBridgeKLAYFeeChanged, fee []*big.Int) (event.Subscription, error) { 19570 19571 var feeRule []interface{} 19572 for _, feeItem := range fee { 19573 feeRule = append(feeRule, feeItem) 19574 } 19575 19576 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "KLAYFeeChanged", feeRule) 19577 if err != nil { 19578 return nil, err 19579 } 19580 return event.NewSubscription(func(quit <-chan struct{}) error { 19581 defer sub.Unsubscribe() 19582 for { 19583 select { 19584 case log := <-logs: 19585 // New log arrived, parse the event and forward to the user 19586 event := new(ExtBridgeKLAYFeeChanged) 19587 if err := _ExtBridge.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 19588 return err 19589 } 19590 event.Raw = log 19591 19592 select { 19593 case sink <- event: 19594 case err := <-sub.Err(): 19595 return err 19596 case <-quit: 19597 return nil 19598 } 19599 case err := <-sub.Err(): 19600 return err 19601 case <-quit: 19602 return nil 19603 } 19604 } 19605 }), nil 19606 } 19607 19608 // ParseKLAYFeeChanged is a log parse operation binding the contract event 0xa7a33d0996347e1aa55ca2206015b61b9534bdd881d59d59aa680e25eefac365. 19609 // 19610 // Solidity: event KLAYFeeChanged(uint256 indexed fee) 19611 func (_ExtBridge *ExtBridgeFilterer) ParseKLAYFeeChanged(log types.Log) (*ExtBridgeKLAYFeeChanged, error) { 19612 event := new(ExtBridgeKLAYFeeChanged) 19613 if err := _ExtBridge.contract.UnpackLog(event, "KLAYFeeChanged", log); err != nil { 19614 return nil, err 19615 } 19616 return event, nil 19617 } 19618 19619 // ExtBridgeOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the ExtBridge contract. 19620 type ExtBridgeOwnershipTransferredIterator struct { 19621 Event *ExtBridgeOwnershipTransferred // Event containing the contract specifics and raw log 19622 19623 contract *bind.BoundContract // Generic contract to use for unpacking event data 19624 event string // Event name to use for unpacking event data 19625 19626 logs chan types.Log // Log channel receiving the found contract events 19627 sub klaytn.Subscription // Subscription for errors, completion and termination 19628 done bool // Whether the subscription completed delivering logs 19629 fail error // Occurred error to stop iteration 19630 } 19631 19632 // Next advances the iterator to the subsequent event, returning whether there 19633 // are any more events found. In case of a retrieval or parsing error, false is 19634 // returned and Error() can be queried for the exact failure. 19635 func (it *ExtBridgeOwnershipTransferredIterator) Next() bool { 19636 // If the iterator failed, stop iterating 19637 if it.fail != nil { 19638 return false 19639 } 19640 // If the iterator completed, deliver directly whatever's available 19641 if it.done { 19642 select { 19643 case log := <-it.logs: 19644 it.Event = new(ExtBridgeOwnershipTransferred) 19645 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19646 it.fail = err 19647 return false 19648 } 19649 it.Event.Raw = log 19650 return true 19651 19652 default: 19653 return false 19654 } 19655 } 19656 // Iterator still in progress, wait for either a data or an error event 19657 select { 19658 case log := <-it.logs: 19659 it.Event = new(ExtBridgeOwnershipTransferred) 19660 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19661 it.fail = err 19662 return false 19663 } 19664 it.Event.Raw = log 19665 return true 19666 19667 case err := <-it.sub.Err(): 19668 it.done = true 19669 it.fail = err 19670 return it.Next() 19671 } 19672 } 19673 19674 // Error returns any retrieval or parsing error occurred during filtering. 19675 func (it *ExtBridgeOwnershipTransferredIterator) Error() error { 19676 return it.fail 19677 } 19678 19679 // Close terminates the iteration process, releasing any pending underlying 19680 // resources. 19681 func (it *ExtBridgeOwnershipTransferredIterator) Close() error { 19682 it.sub.Unsubscribe() 19683 return nil 19684 } 19685 19686 // ExtBridgeOwnershipTransferred represents a OwnershipTransferred event raised by the ExtBridge contract. 19687 type ExtBridgeOwnershipTransferred struct { 19688 PreviousOwner common.Address 19689 NewOwner common.Address 19690 Raw types.Log // Blockchain specific contextual infos 19691 } 19692 19693 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 19694 // 19695 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 19696 func (_ExtBridge *ExtBridgeFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*ExtBridgeOwnershipTransferredIterator, error) { 19697 19698 var previousOwnerRule []interface{} 19699 for _, previousOwnerItem := range previousOwner { 19700 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 19701 } 19702 var newOwnerRule []interface{} 19703 for _, newOwnerItem := range newOwner { 19704 newOwnerRule = append(newOwnerRule, newOwnerItem) 19705 } 19706 19707 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 19708 if err != nil { 19709 return nil, err 19710 } 19711 return &ExtBridgeOwnershipTransferredIterator{contract: _ExtBridge.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 19712 } 19713 19714 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 19715 // 19716 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 19717 func (_ExtBridge *ExtBridgeFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *ExtBridgeOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 19718 19719 var previousOwnerRule []interface{} 19720 for _, previousOwnerItem := range previousOwner { 19721 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 19722 } 19723 var newOwnerRule []interface{} 19724 for _, newOwnerItem := range newOwner { 19725 newOwnerRule = append(newOwnerRule, newOwnerItem) 19726 } 19727 19728 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 19729 if err != nil { 19730 return nil, err 19731 } 19732 return event.NewSubscription(func(quit <-chan struct{}) error { 19733 defer sub.Unsubscribe() 19734 for { 19735 select { 19736 case log := <-logs: 19737 // New log arrived, parse the event and forward to the user 19738 event := new(ExtBridgeOwnershipTransferred) 19739 if err := _ExtBridge.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 19740 return err 19741 } 19742 event.Raw = log 19743 19744 select { 19745 case sink <- event: 19746 case err := <-sub.Err(): 19747 return err 19748 case <-quit: 19749 return nil 19750 } 19751 case err := <-sub.Err(): 19752 return err 19753 case <-quit: 19754 return nil 19755 } 19756 } 19757 }), nil 19758 } 19759 19760 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 19761 // 19762 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 19763 func (_ExtBridge *ExtBridgeFilterer) ParseOwnershipTransferred(log types.Log) (*ExtBridgeOwnershipTransferred, error) { 19764 event := new(ExtBridgeOwnershipTransferred) 19765 if err := _ExtBridge.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 19766 return nil, err 19767 } 19768 return event, nil 19769 } 19770 19771 // ExtBridgeRequestValueTransferIterator is returned from FilterRequestValueTransfer and is used to iterate over the raw logs and unpacked data for RequestValueTransfer events raised by the ExtBridge contract. 19772 type ExtBridgeRequestValueTransferIterator struct { 19773 Event *ExtBridgeRequestValueTransfer // Event containing the contract specifics and raw log 19774 19775 contract *bind.BoundContract // Generic contract to use for unpacking event data 19776 event string // Event name to use for unpacking event data 19777 19778 logs chan types.Log // Log channel receiving the found contract events 19779 sub klaytn.Subscription // Subscription for errors, completion and termination 19780 done bool // Whether the subscription completed delivering logs 19781 fail error // Occurred error to stop iteration 19782 } 19783 19784 // Next advances the iterator to the subsequent event, returning whether there 19785 // are any more events found. In case of a retrieval or parsing error, false is 19786 // returned and Error() can be queried for the exact failure. 19787 func (it *ExtBridgeRequestValueTransferIterator) Next() bool { 19788 // If the iterator failed, stop iterating 19789 if it.fail != nil { 19790 return false 19791 } 19792 // If the iterator completed, deliver directly whatever's available 19793 if it.done { 19794 select { 19795 case log := <-it.logs: 19796 it.Event = new(ExtBridgeRequestValueTransfer) 19797 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19798 it.fail = err 19799 return false 19800 } 19801 it.Event.Raw = log 19802 return true 19803 19804 default: 19805 return false 19806 } 19807 } 19808 // Iterator still in progress, wait for either a data or an error event 19809 select { 19810 case log := <-it.logs: 19811 it.Event = new(ExtBridgeRequestValueTransfer) 19812 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19813 it.fail = err 19814 return false 19815 } 19816 it.Event.Raw = log 19817 return true 19818 19819 case err := <-it.sub.Err(): 19820 it.done = true 19821 it.fail = err 19822 return it.Next() 19823 } 19824 } 19825 19826 // Error returns any retrieval or parsing error occurred during filtering. 19827 func (it *ExtBridgeRequestValueTransferIterator) Error() error { 19828 return it.fail 19829 } 19830 19831 // Close terminates the iteration process, releasing any pending underlying 19832 // resources. 19833 func (it *ExtBridgeRequestValueTransferIterator) Close() error { 19834 it.sub.Unsubscribe() 19835 return nil 19836 } 19837 19838 // ExtBridgeRequestValueTransfer represents a RequestValueTransfer event raised by the ExtBridge contract. 19839 type ExtBridgeRequestValueTransfer struct { 19840 TokenType uint8 19841 From common.Address 19842 To common.Address 19843 TokenAddress common.Address 19844 ValueOrTokenId *big.Int 19845 RequestNonce uint64 19846 Fee *big.Int 19847 ExtraData []byte 19848 Raw types.Log // Blockchain specific contextual infos 19849 } 19850 19851 // FilterRequestValueTransfer is a free log retrieval operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 19852 // 19853 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 19854 func (_ExtBridge *ExtBridgeFilterer) FilterRequestValueTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*ExtBridgeRequestValueTransferIterator, error) { 19855 19856 var fromRule []interface{} 19857 for _, fromItem := range from { 19858 fromRule = append(fromRule, fromItem) 19859 } 19860 var toRule []interface{} 19861 for _, toItem := range to { 19862 toRule = append(toRule, toItem) 19863 } 19864 var tokenAddressRule []interface{} 19865 for _, tokenAddressItem := range tokenAddress { 19866 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 19867 } 19868 19869 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 19870 if err != nil { 19871 return nil, err 19872 } 19873 return &ExtBridgeRequestValueTransferIterator{contract: _ExtBridge.contract, event: "RequestValueTransfer", logs: logs, sub: sub}, nil 19874 } 19875 19876 // WatchRequestValueTransfer is a free log subscription operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 19877 // 19878 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 19879 func (_ExtBridge *ExtBridgeFilterer) WatchRequestValueTransfer(opts *bind.WatchOpts, sink chan<- *ExtBridgeRequestValueTransfer, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 19880 19881 var fromRule []interface{} 19882 for _, fromItem := range from { 19883 fromRule = append(fromRule, fromItem) 19884 } 19885 var toRule []interface{} 19886 for _, toItem := range to { 19887 toRule = append(toRule, toItem) 19888 } 19889 var tokenAddressRule []interface{} 19890 for _, tokenAddressItem := range tokenAddress { 19891 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 19892 } 19893 19894 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "RequestValueTransfer", fromRule, toRule, tokenAddressRule) 19895 if err != nil { 19896 return nil, err 19897 } 19898 return event.NewSubscription(func(quit <-chan struct{}) error { 19899 defer sub.Unsubscribe() 19900 for { 19901 select { 19902 case log := <-logs: 19903 // New log arrived, parse the event and forward to the user 19904 event := new(ExtBridgeRequestValueTransfer) 19905 if err := _ExtBridge.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 19906 return err 19907 } 19908 event.Raw = log 19909 19910 select { 19911 case sink <- event: 19912 case err := <-sub.Err(): 19913 return err 19914 case <-quit: 19915 return nil 19916 } 19917 case err := <-sub.Err(): 19918 return err 19919 case <-quit: 19920 return nil 19921 } 19922 } 19923 }), nil 19924 } 19925 19926 // ParseRequestValueTransfer is a log parse operation binding the contract event 0xeff76c36e53fa5ff52f27acc8a34d5047a8246abb07b77b12f1309f71e337f09. 19927 // 19928 // Solidity: event RequestValueTransfer(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData) 19929 func (_ExtBridge *ExtBridgeFilterer) ParseRequestValueTransfer(log types.Log) (*ExtBridgeRequestValueTransfer, error) { 19930 event := new(ExtBridgeRequestValueTransfer) 19931 if err := _ExtBridge.contract.UnpackLog(event, "RequestValueTransfer", log); err != nil { 19932 return nil, err 19933 } 19934 return event, nil 19935 } 19936 19937 // ExtBridgeRequestValueTransferEncodedIterator is returned from FilterRequestValueTransferEncoded and is used to iterate over the raw logs and unpacked data for RequestValueTransferEncoded events raised by the ExtBridge contract. 19938 type ExtBridgeRequestValueTransferEncodedIterator struct { 19939 Event *ExtBridgeRequestValueTransferEncoded // Event containing the contract specifics and raw log 19940 19941 contract *bind.BoundContract // Generic contract to use for unpacking event data 19942 event string // Event name to use for unpacking event data 19943 19944 logs chan types.Log // Log channel receiving the found contract events 19945 sub klaytn.Subscription // Subscription for errors, completion and termination 19946 done bool // Whether the subscription completed delivering logs 19947 fail error // Occurred error to stop iteration 19948 } 19949 19950 // Next advances the iterator to the subsequent event, returning whether there 19951 // are any more events found. In case of a retrieval or parsing error, false is 19952 // returned and Error() can be queried for the exact failure. 19953 func (it *ExtBridgeRequestValueTransferEncodedIterator) Next() bool { 19954 // If the iterator failed, stop iterating 19955 if it.fail != nil { 19956 return false 19957 } 19958 // If the iterator completed, deliver directly whatever's available 19959 if it.done { 19960 select { 19961 case log := <-it.logs: 19962 it.Event = new(ExtBridgeRequestValueTransferEncoded) 19963 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19964 it.fail = err 19965 return false 19966 } 19967 it.Event.Raw = log 19968 return true 19969 19970 default: 19971 return false 19972 } 19973 } 19974 // Iterator still in progress, wait for either a data or an error event 19975 select { 19976 case log := <-it.logs: 19977 it.Event = new(ExtBridgeRequestValueTransferEncoded) 19978 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 19979 it.fail = err 19980 return false 19981 } 19982 it.Event.Raw = log 19983 return true 19984 19985 case err := <-it.sub.Err(): 19986 it.done = true 19987 it.fail = err 19988 return it.Next() 19989 } 19990 } 19991 19992 // Error returns any retrieval or parsing error occurred during filtering. 19993 func (it *ExtBridgeRequestValueTransferEncodedIterator) Error() error { 19994 return it.fail 19995 } 19996 19997 // Close terminates the iteration process, releasing any pending underlying 19998 // resources. 19999 func (it *ExtBridgeRequestValueTransferEncodedIterator) Close() error { 20000 it.sub.Unsubscribe() 20001 return nil 20002 } 20003 20004 // ExtBridgeRequestValueTransferEncoded represents a RequestValueTransferEncoded event raised by the ExtBridge contract. 20005 type ExtBridgeRequestValueTransferEncoded struct { 20006 TokenType uint8 20007 From common.Address 20008 To common.Address 20009 TokenAddress common.Address 20010 ValueOrTokenId *big.Int 20011 RequestNonce uint64 20012 Fee *big.Int 20013 ExtraData []byte 20014 EncodingVer uint8 20015 EncodedData []byte 20016 Raw types.Log // Blockchain specific contextual infos 20017 } 20018 20019 // FilterRequestValueTransferEncoded is a free log retrieval operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 20020 // 20021 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 20022 func (_ExtBridge *ExtBridgeFilterer) FilterRequestValueTransferEncoded(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenAddress []common.Address) (*ExtBridgeRequestValueTransferEncodedIterator, error) { 20023 20024 var fromRule []interface{} 20025 for _, fromItem := range from { 20026 fromRule = append(fromRule, fromItem) 20027 } 20028 var toRule []interface{} 20029 for _, toItem := range to { 20030 toRule = append(toRule, toItem) 20031 } 20032 var tokenAddressRule []interface{} 20033 for _, tokenAddressItem := range tokenAddress { 20034 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 20035 } 20036 20037 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 20038 if err != nil { 20039 return nil, err 20040 } 20041 return &ExtBridgeRequestValueTransferEncodedIterator{contract: _ExtBridge.contract, event: "RequestValueTransferEncoded", logs: logs, sub: sub}, nil 20042 } 20043 20044 // WatchRequestValueTransferEncoded is a free log subscription operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 20045 // 20046 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 20047 func (_ExtBridge *ExtBridgeFilterer) WatchRequestValueTransferEncoded(opts *bind.WatchOpts, sink chan<- *ExtBridgeRequestValueTransferEncoded, from []common.Address, to []common.Address, tokenAddress []common.Address) (event.Subscription, error) { 20048 20049 var fromRule []interface{} 20050 for _, fromItem := range from { 20051 fromRule = append(fromRule, fromItem) 20052 } 20053 var toRule []interface{} 20054 for _, toItem := range to { 20055 toRule = append(toRule, toItem) 20056 } 20057 var tokenAddressRule []interface{} 20058 for _, tokenAddressItem := range tokenAddress { 20059 tokenAddressRule = append(tokenAddressRule, tokenAddressItem) 20060 } 20061 20062 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "RequestValueTransferEncoded", fromRule, toRule, tokenAddressRule) 20063 if err != nil { 20064 return nil, err 20065 } 20066 return event.NewSubscription(func(quit <-chan struct{}) error { 20067 defer sub.Unsubscribe() 20068 for { 20069 select { 20070 case log := <-logs: 20071 // New log arrived, parse the event and forward to the user 20072 event := new(ExtBridgeRequestValueTransferEncoded) 20073 if err := _ExtBridge.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 20074 return err 20075 } 20076 event.Raw = log 20077 20078 select { 20079 case sink <- event: 20080 case err := <-sub.Err(): 20081 return err 20082 case <-quit: 20083 return nil 20084 } 20085 case err := <-sub.Err(): 20086 return err 20087 case <-quit: 20088 return nil 20089 } 20090 } 20091 }), nil 20092 } 20093 20094 // ParseRequestValueTransferEncoded is a log parse operation binding the contract event 0x17d76053ca34a4dd8c402fe6498deb797fac89bf7ed02f3f5161aa9368cc8c1f. 20095 // 20096 // Solidity: event RequestValueTransferEncoded(uint8 tokenType, address indexed from, address indexed to, address indexed tokenAddress, uint256 valueOrTokenId, uint64 requestNonce, uint256 fee, bytes extraData, uint8 encodingVer, bytes encodedData) 20097 func (_ExtBridge *ExtBridgeFilterer) ParseRequestValueTransferEncoded(log types.Log) (*ExtBridgeRequestValueTransferEncoded, error) { 20098 event := new(ExtBridgeRequestValueTransferEncoded) 20099 if err := _ExtBridge.contract.UnpackLog(event, "RequestValueTransferEncoded", log); err != nil { 20100 return nil, err 20101 } 20102 return event, nil 20103 } 20104 20105 // ExtBridgeTokenDeregisteredIterator is returned from FilterTokenDeregistered and is used to iterate over the raw logs and unpacked data for TokenDeregistered events raised by the ExtBridge contract. 20106 type ExtBridgeTokenDeregisteredIterator struct { 20107 Event *ExtBridgeTokenDeregistered // Event containing the contract specifics and raw log 20108 20109 contract *bind.BoundContract // Generic contract to use for unpacking event data 20110 event string // Event name to use for unpacking event data 20111 20112 logs chan types.Log // Log channel receiving the found contract events 20113 sub klaytn.Subscription // Subscription for errors, completion and termination 20114 done bool // Whether the subscription completed delivering logs 20115 fail error // Occurred error to stop iteration 20116 } 20117 20118 // Next advances the iterator to the subsequent event, returning whether there 20119 // are any more events found. In case of a retrieval or parsing error, false is 20120 // returned and Error() can be queried for the exact failure. 20121 func (it *ExtBridgeTokenDeregisteredIterator) Next() bool { 20122 // If the iterator failed, stop iterating 20123 if it.fail != nil { 20124 return false 20125 } 20126 // If the iterator completed, deliver directly whatever's available 20127 if it.done { 20128 select { 20129 case log := <-it.logs: 20130 it.Event = new(ExtBridgeTokenDeregistered) 20131 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20132 it.fail = err 20133 return false 20134 } 20135 it.Event.Raw = log 20136 return true 20137 20138 default: 20139 return false 20140 } 20141 } 20142 // Iterator still in progress, wait for either a data or an error event 20143 select { 20144 case log := <-it.logs: 20145 it.Event = new(ExtBridgeTokenDeregistered) 20146 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20147 it.fail = err 20148 return false 20149 } 20150 it.Event.Raw = log 20151 return true 20152 20153 case err := <-it.sub.Err(): 20154 it.done = true 20155 it.fail = err 20156 return it.Next() 20157 } 20158 } 20159 20160 // Error returns any retrieval or parsing error occurred during filtering. 20161 func (it *ExtBridgeTokenDeregisteredIterator) Error() error { 20162 return it.fail 20163 } 20164 20165 // Close terminates the iteration process, releasing any pending underlying 20166 // resources. 20167 func (it *ExtBridgeTokenDeregisteredIterator) Close() error { 20168 it.sub.Unsubscribe() 20169 return nil 20170 } 20171 20172 // ExtBridgeTokenDeregistered represents a TokenDeregistered event raised by the ExtBridge contract. 20173 type ExtBridgeTokenDeregistered struct { 20174 Token common.Address 20175 Raw types.Log // Blockchain specific contextual infos 20176 } 20177 20178 // FilterTokenDeregistered is a free log retrieval operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 20179 // 20180 // Solidity: event TokenDeregistered(address indexed token) 20181 func (_ExtBridge *ExtBridgeFilterer) FilterTokenDeregistered(opts *bind.FilterOpts, token []common.Address) (*ExtBridgeTokenDeregisteredIterator, error) { 20182 20183 var tokenRule []interface{} 20184 for _, tokenItem := range token { 20185 tokenRule = append(tokenRule, tokenItem) 20186 } 20187 20188 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "TokenDeregistered", tokenRule) 20189 if err != nil { 20190 return nil, err 20191 } 20192 return &ExtBridgeTokenDeregisteredIterator{contract: _ExtBridge.contract, event: "TokenDeregistered", logs: logs, sub: sub}, nil 20193 } 20194 20195 // WatchTokenDeregistered is a free log subscription operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 20196 // 20197 // Solidity: event TokenDeregistered(address indexed token) 20198 func (_ExtBridge *ExtBridgeFilterer) WatchTokenDeregistered(opts *bind.WatchOpts, sink chan<- *ExtBridgeTokenDeregistered, token []common.Address) (event.Subscription, error) { 20199 20200 var tokenRule []interface{} 20201 for _, tokenItem := range token { 20202 tokenRule = append(tokenRule, tokenItem) 20203 } 20204 20205 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "TokenDeregistered", tokenRule) 20206 if err != nil { 20207 return nil, err 20208 } 20209 return event.NewSubscription(func(quit <-chan struct{}) error { 20210 defer sub.Unsubscribe() 20211 for { 20212 select { 20213 case log := <-logs: 20214 // New log arrived, parse the event and forward to the user 20215 event := new(ExtBridgeTokenDeregistered) 20216 if err := _ExtBridge.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 20217 return err 20218 } 20219 event.Raw = log 20220 20221 select { 20222 case sink <- event: 20223 case err := <-sub.Err(): 20224 return err 20225 case <-quit: 20226 return nil 20227 } 20228 case err := <-sub.Err(): 20229 return err 20230 case <-quit: 20231 return nil 20232 } 20233 } 20234 }), nil 20235 } 20236 20237 // ParseTokenDeregistered is a log parse operation binding the contract event 0x1d735ca20b63676dde668b718be78606b061d6bd7534ff815a90a121a6c084b6. 20238 // 20239 // Solidity: event TokenDeregistered(address indexed token) 20240 func (_ExtBridge *ExtBridgeFilterer) ParseTokenDeregistered(log types.Log) (*ExtBridgeTokenDeregistered, error) { 20241 event := new(ExtBridgeTokenDeregistered) 20242 if err := _ExtBridge.contract.UnpackLog(event, "TokenDeregistered", log); err != nil { 20243 return nil, err 20244 } 20245 return event, nil 20246 } 20247 20248 // ExtBridgeTokenLockedIterator is returned from FilterTokenLocked and is used to iterate over the raw logs and unpacked data for TokenLocked events raised by the ExtBridge contract. 20249 type ExtBridgeTokenLockedIterator struct { 20250 Event *ExtBridgeTokenLocked // Event containing the contract specifics and raw log 20251 20252 contract *bind.BoundContract // Generic contract to use for unpacking event data 20253 event string // Event name to use for unpacking event data 20254 20255 logs chan types.Log // Log channel receiving the found contract events 20256 sub klaytn.Subscription // Subscription for errors, completion and termination 20257 done bool // Whether the subscription completed delivering logs 20258 fail error // Occurred error to stop iteration 20259 } 20260 20261 // Next advances the iterator to the subsequent event, returning whether there 20262 // are any more events found. In case of a retrieval or parsing error, false is 20263 // returned and Error() can be queried for the exact failure. 20264 func (it *ExtBridgeTokenLockedIterator) Next() bool { 20265 // If the iterator failed, stop iterating 20266 if it.fail != nil { 20267 return false 20268 } 20269 // If the iterator completed, deliver directly whatever's available 20270 if it.done { 20271 select { 20272 case log := <-it.logs: 20273 it.Event = new(ExtBridgeTokenLocked) 20274 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20275 it.fail = err 20276 return false 20277 } 20278 it.Event.Raw = log 20279 return true 20280 20281 default: 20282 return false 20283 } 20284 } 20285 // Iterator still in progress, wait for either a data or an error event 20286 select { 20287 case log := <-it.logs: 20288 it.Event = new(ExtBridgeTokenLocked) 20289 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20290 it.fail = err 20291 return false 20292 } 20293 it.Event.Raw = log 20294 return true 20295 20296 case err := <-it.sub.Err(): 20297 it.done = true 20298 it.fail = err 20299 return it.Next() 20300 } 20301 } 20302 20303 // Error returns any retrieval or parsing error occurred during filtering. 20304 func (it *ExtBridgeTokenLockedIterator) Error() error { 20305 return it.fail 20306 } 20307 20308 // Close terminates the iteration process, releasing any pending underlying 20309 // resources. 20310 func (it *ExtBridgeTokenLockedIterator) Close() error { 20311 it.sub.Unsubscribe() 20312 return nil 20313 } 20314 20315 // ExtBridgeTokenLocked represents a TokenLocked event raised by the ExtBridge contract. 20316 type ExtBridgeTokenLocked struct { 20317 Token common.Address 20318 Raw types.Log // Blockchain specific contextual infos 20319 } 20320 20321 // FilterTokenLocked is a free log retrieval operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 20322 // 20323 // Solidity: event TokenLocked(address indexed token) 20324 func (_ExtBridge *ExtBridgeFilterer) FilterTokenLocked(opts *bind.FilterOpts, token []common.Address) (*ExtBridgeTokenLockedIterator, error) { 20325 20326 var tokenRule []interface{} 20327 for _, tokenItem := range token { 20328 tokenRule = append(tokenRule, tokenItem) 20329 } 20330 20331 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "TokenLocked", tokenRule) 20332 if err != nil { 20333 return nil, err 20334 } 20335 return &ExtBridgeTokenLockedIterator{contract: _ExtBridge.contract, event: "TokenLocked", logs: logs, sub: sub}, nil 20336 } 20337 20338 // WatchTokenLocked is a free log subscription operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 20339 // 20340 // Solidity: event TokenLocked(address indexed token) 20341 func (_ExtBridge *ExtBridgeFilterer) WatchTokenLocked(opts *bind.WatchOpts, sink chan<- *ExtBridgeTokenLocked, token []common.Address) (event.Subscription, error) { 20342 20343 var tokenRule []interface{} 20344 for _, tokenItem := range token { 20345 tokenRule = append(tokenRule, tokenItem) 20346 } 20347 20348 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "TokenLocked", tokenRule) 20349 if err != nil { 20350 return nil, err 20351 } 20352 return event.NewSubscription(func(quit <-chan struct{}) error { 20353 defer sub.Unsubscribe() 20354 for { 20355 select { 20356 case log := <-logs: 20357 // New log arrived, parse the event and forward to the user 20358 event := new(ExtBridgeTokenLocked) 20359 if err := _ExtBridge.contract.UnpackLog(event, "TokenLocked", log); err != nil { 20360 return err 20361 } 20362 event.Raw = log 20363 20364 select { 20365 case sink <- event: 20366 case err := <-sub.Err(): 20367 return err 20368 case <-quit: 20369 return nil 20370 } 20371 case err := <-sub.Err(): 20372 return err 20373 case <-quit: 20374 return nil 20375 } 20376 } 20377 }), nil 20378 } 20379 20380 // ParseTokenLocked is a log parse operation binding the contract event 0xca1b0a14e18ada4c44846768dd186e35630cdc5cfeaca83c404ae4acaafbecd7. 20381 // 20382 // Solidity: event TokenLocked(address indexed token) 20383 func (_ExtBridge *ExtBridgeFilterer) ParseTokenLocked(log types.Log) (*ExtBridgeTokenLocked, error) { 20384 event := new(ExtBridgeTokenLocked) 20385 if err := _ExtBridge.contract.UnpackLog(event, "TokenLocked", log); err != nil { 20386 return nil, err 20387 } 20388 return event, nil 20389 } 20390 20391 // ExtBridgeTokenRegisteredIterator is returned from FilterTokenRegistered and is used to iterate over the raw logs and unpacked data for TokenRegistered events raised by the ExtBridge contract. 20392 type ExtBridgeTokenRegisteredIterator struct { 20393 Event *ExtBridgeTokenRegistered // Event containing the contract specifics and raw log 20394 20395 contract *bind.BoundContract // Generic contract to use for unpacking event data 20396 event string // Event name to use for unpacking event data 20397 20398 logs chan types.Log // Log channel receiving the found contract events 20399 sub klaytn.Subscription // Subscription for errors, completion and termination 20400 done bool // Whether the subscription completed delivering logs 20401 fail error // Occurred error to stop iteration 20402 } 20403 20404 // Next advances the iterator to the subsequent event, returning whether there 20405 // are any more events found. In case of a retrieval or parsing error, false is 20406 // returned and Error() can be queried for the exact failure. 20407 func (it *ExtBridgeTokenRegisteredIterator) Next() bool { 20408 // If the iterator failed, stop iterating 20409 if it.fail != nil { 20410 return false 20411 } 20412 // If the iterator completed, deliver directly whatever's available 20413 if it.done { 20414 select { 20415 case log := <-it.logs: 20416 it.Event = new(ExtBridgeTokenRegistered) 20417 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20418 it.fail = err 20419 return false 20420 } 20421 it.Event.Raw = log 20422 return true 20423 20424 default: 20425 return false 20426 } 20427 } 20428 // Iterator still in progress, wait for either a data or an error event 20429 select { 20430 case log := <-it.logs: 20431 it.Event = new(ExtBridgeTokenRegistered) 20432 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20433 it.fail = err 20434 return false 20435 } 20436 it.Event.Raw = log 20437 return true 20438 20439 case err := <-it.sub.Err(): 20440 it.done = true 20441 it.fail = err 20442 return it.Next() 20443 } 20444 } 20445 20446 // Error returns any retrieval or parsing error occurred during filtering. 20447 func (it *ExtBridgeTokenRegisteredIterator) Error() error { 20448 return it.fail 20449 } 20450 20451 // Close terminates the iteration process, releasing any pending underlying 20452 // resources. 20453 func (it *ExtBridgeTokenRegisteredIterator) Close() error { 20454 it.sub.Unsubscribe() 20455 return nil 20456 } 20457 20458 // ExtBridgeTokenRegistered represents a TokenRegistered event raised by the ExtBridge contract. 20459 type ExtBridgeTokenRegistered struct { 20460 Token common.Address 20461 Raw types.Log // Blockchain specific contextual infos 20462 } 20463 20464 // FilterTokenRegistered is a free log retrieval operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 20465 // 20466 // Solidity: event TokenRegistered(address indexed token) 20467 func (_ExtBridge *ExtBridgeFilterer) FilterTokenRegistered(opts *bind.FilterOpts, token []common.Address) (*ExtBridgeTokenRegisteredIterator, error) { 20468 20469 var tokenRule []interface{} 20470 for _, tokenItem := range token { 20471 tokenRule = append(tokenRule, tokenItem) 20472 } 20473 20474 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "TokenRegistered", tokenRule) 20475 if err != nil { 20476 return nil, err 20477 } 20478 return &ExtBridgeTokenRegisteredIterator{contract: _ExtBridge.contract, event: "TokenRegistered", logs: logs, sub: sub}, nil 20479 } 20480 20481 // WatchTokenRegistered is a free log subscription operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 20482 // 20483 // Solidity: event TokenRegistered(address indexed token) 20484 func (_ExtBridge *ExtBridgeFilterer) WatchTokenRegistered(opts *bind.WatchOpts, sink chan<- *ExtBridgeTokenRegistered, token []common.Address) (event.Subscription, error) { 20485 20486 var tokenRule []interface{} 20487 for _, tokenItem := range token { 20488 tokenRule = append(tokenRule, tokenItem) 20489 } 20490 20491 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "TokenRegistered", tokenRule) 20492 if err != nil { 20493 return nil, err 20494 } 20495 return event.NewSubscription(func(quit <-chan struct{}) error { 20496 defer sub.Unsubscribe() 20497 for { 20498 select { 20499 case log := <-logs: 20500 // New log arrived, parse the event and forward to the user 20501 event := new(ExtBridgeTokenRegistered) 20502 if err := _ExtBridge.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 20503 return err 20504 } 20505 event.Raw = log 20506 20507 select { 20508 case sink <- event: 20509 case err := <-sub.Err(): 20510 return err 20511 case <-quit: 20512 return nil 20513 } 20514 case err := <-sub.Err(): 20515 return err 20516 case <-quit: 20517 return nil 20518 } 20519 } 20520 }), nil 20521 } 20522 20523 // ParseTokenRegistered is a log parse operation binding the contract event 0x158412daecdc1456d01568828bcdb18464cc7f1ce0215ddbc3f3cfede9d1e63d. 20524 // 20525 // Solidity: event TokenRegistered(address indexed token) 20526 func (_ExtBridge *ExtBridgeFilterer) ParseTokenRegistered(log types.Log) (*ExtBridgeTokenRegistered, error) { 20527 event := new(ExtBridgeTokenRegistered) 20528 if err := _ExtBridge.contract.UnpackLog(event, "TokenRegistered", log); err != nil { 20529 return nil, err 20530 } 20531 return event, nil 20532 } 20533 20534 // ExtBridgeTokenUnlockedIterator is returned from FilterTokenUnlocked and is used to iterate over the raw logs and unpacked data for TokenUnlocked events raised by the ExtBridge contract. 20535 type ExtBridgeTokenUnlockedIterator struct { 20536 Event *ExtBridgeTokenUnlocked // Event containing the contract specifics and raw log 20537 20538 contract *bind.BoundContract // Generic contract to use for unpacking event data 20539 event string // Event name to use for unpacking event data 20540 20541 logs chan types.Log // Log channel receiving the found contract events 20542 sub klaytn.Subscription // Subscription for errors, completion and termination 20543 done bool // Whether the subscription completed delivering logs 20544 fail error // Occurred error to stop iteration 20545 } 20546 20547 // Next advances the iterator to the subsequent event, returning whether there 20548 // are any more events found. In case of a retrieval or parsing error, false is 20549 // returned and Error() can be queried for the exact failure. 20550 func (it *ExtBridgeTokenUnlockedIterator) Next() bool { 20551 // If the iterator failed, stop iterating 20552 if it.fail != nil { 20553 return false 20554 } 20555 // If the iterator completed, deliver directly whatever's available 20556 if it.done { 20557 select { 20558 case log := <-it.logs: 20559 it.Event = new(ExtBridgeTokenUnlocked) 20560 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20561 it.fail = err 20562 return false 20563 } 20564 it.Event.Raw = log 20565 return true 20566 20567 default: 20568 return false 20569 } 20570 } 20571 // Iterator still in progress, wait for either a data or an error event 20572 select { 20573 case log := <-it.logs: 20574 it.Event = new(ExtBridgeTokenUnlocked) 20575 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 20576 it.fail = err 20577 return false 20578 } 20579 it.Event.Raw = log 20580 return true 20581 20582 case err := <-it.sub.Err(): 20583 it.done = true 20584 it.fail = err 20585 return it.Next() 20586 } 20587 } 20588 20589 // Error returns any retrieval or parsing error occurred during filtering. 20590 func (it *ExtBridgeTokenUnlockedIterator) Error() error { 20591 return it.fail 20592 } 20593 20594 // Close terminates the iteration process, releasing any pending underlying 20595 // resources. 20596 func (it *ExtBridgeTokenUnlockedIterator) Close() error { 20597 it.sub.Unsubscribe() 20598 return nil 20599 } 20600 20601 // ExtBridgeTokenUnlocked represents a TokenUnlocked event raised by the ExtBridge contract. 20602 type ExtBridgeTokenUnlocked struct { 20603 Token common.Address 20604 Raw types.Log // Blockchain specific contextual infos 20605 } 20606 20607 // FilterTokenUnlocked is a free log retrieval operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 20608 // 20609 // Solidity: event TokenUnlocked(address indexed token) 20610 func (_ExtBridge *ExtBridgeFilterer) FilterTokenUnlocked(opts *bind.FilterOpts, token []common.Address) (*ExtBridgeTokenUnlockedIterator, error) { 20611 20612 var tokenRule []interface{} 20613 for _, tokenItem := range token { 20614 tokenRule = append(tokenRule, tokenItem) 20615 } 20616 20617 logs, sub, err := _ExtBridge.contract.FilterLogs(opts, "TokenUnlocked", tokenRule) 20618 if err != nil { 20619 return nil, err 20620 } 20621 return &ExtBridgeTokenUnlockedIterator{contract: _ExtBridge.contract, event: "TokenUnlocked", logs: logs, sub: sub}, nil 20622 } 20623 20624 // WatchTokenUnlocked is a free log subscription operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 20625 // 20626 // Solidity: event TokenUnlocked(address indexed token) 20627 func (_ExtBridge *ExtBridgeFilterer) WatchTokenUnlocked(opts *bind.WatchOpts, sink chan<- *ExtBridgeTokenUnlocked, token []common.Address) (event.Subscription, error) { 20628 20629 var tokenRule []interface{} 20630 for _, tokenItem := range token { 20631 tokenRule = append(tokenRule, tokenItem) 20632 } 20633 20634 logs, sub, err := _ExtBridge.contract.WatchLogs(opts, "TokenUnlocked", tokenRule) 20635 if err != nil { 20636 return nil, err 20637 } 20638 return event.NewSubscription(func(quit <-chan struct{}) error { 20639 defer sub.Unsubscribe() 20640 for { 20641 select { 20642 case log := <-logs: 20643 // New log arrived, parse the event and forward to the user 20644 event := new(ExtBridgeTokenUnlocked) 20645 if err := _ExtBridge.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 20646 return err 20647 } 20648 event.Raw = log 20649 20650 select { 20651 case sink <- event: 20652 case err := <-sub.Err(): 20653 return err 20654 case <-quit: 20655 return nil 20656 } 20657 case err := <-sub.Err(): 20658 return err 20659 case <-quit: 20660 return nil 20661 } 20662 } 20663 }), nil 20664 } 20665 20666 // ParseTokenUnlocked is a log parse operation binding the contract event 0x81ec08d3372506e176c49e626d8beb7e091712ef92908a130f4ccc6524fe2eec. 20667 // 20668 // Solidity: event TokenUnlocked(address indexed token) 20669 func (_ExtBridge *ExtBridgeFilterer) ParseTokenUnlocked(log types.Log) (*ExtBridgeTokenUnlocked, error) { 20670 event := new(ExtBridgeTokenUnlocked) 20671 if err := _ExtBridge.contract.UnpackLog(event, "TokenUnlocked", log); err != nil { 20672 return nil, err 20673 } 20674 return event, nil 20675 } 20676 20677 // IERC165ABI is the input ABI used to generate the binding from. 20678 const IERC165ABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}]" 20679 20680 // IERC165BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 20681 const IERC165BinRuntime = `` 20682 20683 // IERC165FuncSigs maps the 4-byte function signature to its string representation. 20684 var IERC165FuncSigs = map[string]string{ 20685 "01ffc9a7": "supportsInterface(bytes4)", 20686 } 20687 20688 // IERC165 is an auto generated Go binding around a Klaytn contract. 20689 type IERC165 struct { 20690 IERC165Caller // Read-only binding to the contract 20691 IERC165Transactor // Write-only binding to the contract 20692 IERC165Filterer // Log filterer for contract events 20693 } 20694 20695 // IERC165Caller is an auto generated read-only Go binding around a Klaytn contract. 20696 type IERC165Caller struct { 20697 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20698 } 20699 20700 // IERC165Transactor is an auto generated write-only Go binding around a Klaytn contract. 20701 type IERC165Transactor struct { 20702 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20703 } 20704 20705 // IERC165Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 20706 type IERC165Filterer struct { 20707 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20708 } 20709 20710 // IERC165Session is an auto generated Go binding around a Klaytn contract, 20711 // with pre-set call and transact options. 20712 type IERC165Session struct { 20713 Contract *IERC165 // Generic contract binding to set the session for 20714 CallOpts bind.CallOpts // Call options to use throughout this session 20715 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 20716 } 20717 20718 // IERC165CallerSession is an auto generated read-only Go binding around a Klaytn contract, 20719 // with pre-set call options. 20720 type IERC165CallerSession struct { 20721 Contract *IERC165Caller // Generic contract caller binding to set the session for 20722 CallOpts bind.CallOpts // Call options to use throughout this session 20723 } 20724 20725 // IERC165TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 20726 // with pre-set transact options. 20727 type IERC165TransactorSession struct { 20728 Contract *IERC165Transactor // Generic contract transactor binding to set the session for 20729 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 20730 } 20731 20732 // IERC165Raw is an auto generated low-level Go binding around a Klaytn contract. 20733 type IERC165Raw struct { 20734 Contract *IERC165 // Generic contract binding to access the raw methods on 20735 } 20736 20737 // IERC165CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 20738 type IERC165CallerRaw struct { 20739 Contract *IERC165Caller // Generic read-only contract binding to access the raw methods on 20740 } 20741 20742 // IERC165TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 20743 type IERC165TransactorRaw struct { 20744 Contract *IERC165Transactor // Generic write-only contract binding to access the raw methods on 20745 } 20746 20747 // NewIERC165 creates a new instance of IERC165, bound to a specific deployed contract. 20748 func NewIERC165(address common.Address, backend bind.ContractBackend) (*IERC165, error) { 20749 contract, err := bindIERC165(address, backend, backend, backend) 20750 if err != nil { 20751 return nil, err 20752 } 20753 return &IERC165{IERC165Caller: IERC165Caller{contract: contract}, IERC165Transactor: IERC165Transactor{contract: contract}, IERC165Filterer: IERC165Filterer{contract: contract}}, nil 20754 } 20755 20756 // NewIERC165Caller creates a new read-only instance of IERC165, bound to a specific deployed contract. 20757 func NewIERC165Caller(address common.Address, caller bind.ContractCaller) (*IERC165Caller, error) { 20758 contract, err := bindIERC165(address, caller, nil, nil) 20759 if err != nil { 20760 return nil, err 20761 } 20762 return &IERC165Caller{contract: contract}, nil 20763 } 20764 20765 // NewIERC165Transactor creates a new write-only instance of IERC165, bound to a specific deployed contract. 20766 func NewIERC165Transactor(address common.Address, transactor bind.ContractTransactor) (*IERC165Transactor, error) { 20767 contract, err := bindIERC165(address, nil, transactor, nil) 20768 if err != nil { 20769 return nil, err 20770 } 20771 return &IERC165Transactor{contract: contract}, nil 20772 } 20773 20774 // NewIERC165Filterer creates a new log filterer instance of IERC165, bound to a specific deployed contract. 20775 func NewIERC165Filterer(address common.Address, filterer bind.ContractFilterer) (*IERC165Filterer, error) { 20776 contract, err := bindIERC165(address, nil, nil, filterer) 20777 if err != nil { 20778 return nil, err 20779 } 20780 return &IERC165Filterer{contract: contract}, nil 20781 } 20782 20783 // bindIERC165 binds a generic wrapper to an already deployed contract. 20784 func bindIERC165(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 20785 parsed, err := abi.JSON(strings.NewReader(IERC165ABI)) 20786 if err != nil { 20787 return nil, err 20788 } 20789 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 20790 } 20791 20792 // Call invokes the (constant) contract method with params as input values and 20793 // sets the output to result. The result type might be a single field for simple 20794 // returns, a slice of interfaces for anonymous returns and a struct for named 20795 // returns. 20796 func (_IERC165 *IERC165Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 20797 return _IERC165.Contract.IERC165Caller.contract.Call(opts, result, method, params...) 20798 } 20799 20800 // Transfer initiates a plain transaction to move funds to the contract, calling 20801 // its default method if one is available. 20802 func (_IERC165 *IERC165Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 20803 return _IERC165.Contract.IERC165Transactor.contract.Transfer(opts) 20804 } 20805 20806 // Transact invokes the (paid) contract method with params as input values. 20807 func (_IERC165 *IERC165Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 20808 return _IERC165.Contract.IERC165Transactor.contract.Transact(opts, method, params...) 20809 } 20810 20811 // Call invokes the (constant) contract method with params as input values and 20812 // sets the output to result. The result type might be a single field for simple 20813 // returns, a slice of interfaces for anonymous returns and a struct for named 20814 // returns. 20815 func (_IERC165 *IERC165CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 20816 return _IERC165.Contract.contract.Call(opts, result, method, params...) 20817 } 20818 20819 // Transfer initiates a plain transaction to move funds to the contract, calling 20820 // its default method if one is available. 20821 func (_IERC165 *IERC165TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 20822 return _IERC165.Contract.contract.Transfer(opts) 20823 } 20824 20825 // Transact invokes the (paid) contract method with params as input values. 20826 func (_IERC165 *IERC165TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 20827 return _IERC165.Contract.contract.Transact(opts, method, params...) 20828 } 20829 20830 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 20831 // 20832 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 20833 func (_IERC165 *IERC165Caller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 20834 var ( 20835 ret0 = new(bool) 20836 ) 20837 out := ret0 20838 err := _IERC165.contract.Call(opts, out, "supportsInterface", interfaceId) 20839 return *ret0, err 20840 } 20841 20842 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 20843 // 20844 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 20845 func (_IERC165 *IERC165Session) SupportsInterface(interfaceId [4]byte) (bool, error) { 20846 return _IERC165.Contract.SupportsInterface(&_IERC165.CallOpts, interfaceId) 20847 } 20848 20849 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 20850 // 20851 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 20852 func (_IERC165 *IERC165CallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 20853 return _IERC165.Contract.SupportsInterface(&_IERC165.CallOpts, interfaceId) 20854 } 20855 20856 // IERC20ABI is the input ABI used to generate the binding from. 20857 const IERC20ABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"spender\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"sender\",\"type\":\"address\"},{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"recipient\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"}]" 20858 20859 // IERC20BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 20860 const IERC20BinRuntime = `` 20861 20862 // IERC20FuncSigs maps the 4-byte function signature to its string representation. 20863 var IERC20FuncSigs = map[string]string{ 20864 "dd62ed3e": "allowance(address,address)", 20865 "095ea7b3": "approve(address,uint256)", 20866 "70a08231": "balanceOf(address)", 20867 "18160ddd": "totalSupply()", 20868 "a9059cbb": "transfer(address,uint256)", 20869 "23b872dd": "transferFrom(address,address,uint256)", 20870 } 20871 20872 // IERC20 is an auto generated Go binding around a Klaytn contract. 20873 type IERC20 struct { 20874 IERC20Caller // Read-only binding to the contract 20875 IERC20Transactor // Write-only binding to the contract 20876 IERC20Filterer // Log filterer for contract events 20877 } 20878 20879 // IERC20Caller is an auto generated read-only Go binding around a Klaytn contract. 20880 type IERC20Caller struct { 20881 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20882 } 20883 20884 // IERC20Transactor is an auto generated write-only Go binding around a Klaytn contract. 20885 type IERC20Transactor struct { 20886 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20887 } 20888 20889 // IERC20Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 20890 type IERC20Filterer struct { 20891 contract *bind.BoundContract // Generic contract wrapper for the low level calls 20892 } 20893 20894 // IERC20Session is an auto generated Go binding around a Klaytn contract, 20895 // with pre-set call and transact options. 20896 type IERC20Session struct { 20897 Contract *IERC20 // Generic contract binding to set the session for 20898 CallOpts bind.CallOpts // Call options to use throughout this session 20899 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 20900 } 20901 20902 // IERC20CallerSession is an auto generated read-only Go binding around a Klaytn contract, 20903 // with pre-set call options. 20904 type IERC20CallerSession struct { 20905 Contract *IERC20Caller // Generic contract caller binding to set the session for 20906 CallOpts bind.CallOpts // Call options to use throughout this session 20907 } 20908 20909 // IERC20TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 20910 // with pre-set transact options. 20911 type IERC20TransactorSession struct { 20912 Contract *IERC20Transactor // Generic contract transactor binding to set the session for 20913 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 20914 } 20915 20916 // IERC20Raw is an auto generated low-level Go binding around a Klaytn contract. 20917 type IERC20Raw struct { 20918 Contract *IERC20 // Generic contract binding to access the raw methods on 20919 } 20920 20921 // IERC20CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 20922 type IERC20CallerRaw struct { 20923 Contract *IERC20Caller // Generic read-only contract binding to access the raw methods on 20924 } 20925 20926 // IERC20TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 20927 type IERC20TransactorRaw struct { 20928 Contract *IERC20Transactor // Generic write-only contract binding to access the raw methods on 20929 } 20930 20931 // NewIERC20 creates a new instance of IERC20, bound to a specific deployed contract. 20932 func NewIERC20(address common.Address, backend bind.ContractBackend) (*IERC20, error) { 20933 contract, err := bindIERC20(address, backend, backend, backend) 20934 if err != nil { 20935 return nil, err 20936 } 20937 return &IERC20{IERC20Caller: IERC20Caller{contract: contract}, IERC20Transactor: IERC20Transactor{contract: contract}, IERC20Filterer: IERC20Filterer{contract: contract}}, nil 20938 } 20939 20940 // NewIERC20Caller creates a new read-only instance of IERC20, bound to a specific deployed contract. 20941 func NewIERC20Caller(address common.Address, caller bind.ContractCaller) (*IERC20Caller, error) { 20942 contract, err := bindIERC20(address, caller, nil, nil) 20943 if err != nil { 20944 return nil, err 20945 } 20946 return &IERC20Caller{contract: contract}, nil 20947 } 20948 20949 // NewIERC20Transactor creates a new write-only instance of IERC20, bound to a specific deployed contract. 20950 func NewIERC20Transactor(address common.Address, transactor bind.ContractTransactor) (*IERC20Transactor, error) { 20951 contract, err := bindIERC20(address, nil, transactor, nil) 20952 if err != nil { 20953 return nil, err 20954 } 20955 return &IERC20Transactor{contract: contract}, nil 20956 } 20957 20958 // NewIERC20Filterer creates a new log filterer instance of IERC20, bound to a specific deployed contract. 20959 func NewIERC20Filterer(address common.Address, filterer bind.ContractFilterer) (*IERC20Filterer, error) { 20960 contract, err := bindIERC20(address, nil, nil, filterer) 20961 if err != nil { 20962 return nil, err 20963 } 20964 return &IERC20Filterer{contract: contract}, nil 20965 } 20966 20967 // bindIERC20 binds a generic wrapper to an already deployed contract. 20968 func bindIERC20(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 20969 parsed, err := abi.JSON(strings.NewReader(IERC20ABI)) 20970 if err != nil { 20971 return nil, err 20972 } 20973 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 20974 } 20975 20976 // Call invokes the (constant) contract method with params as input values and 20977 // sets the output to result. The result type might be a single field for simple 20978 // returns, a slice of interfaces for anonymous returns and a struct for named 20979 // returns. 20980 func (_IERC20 *IERC20Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 20981 return _IERC20.Contract.IERC20Caller.contract.Call(opts, result, method, params...) 20982 } 20983 20984 // Transfer initiates a plain transaction to move funds to the contract, calling 20985 // its default method if one is available. 20986 func (_IERC20 *IERC20Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 20987 return _IERC20.Contract.IERC20Transactor.contract.Transfer(opts) 20988 } 20989 20990 // Transact invokes the (paid) contract method with params as input values. 20991 func (_IERC20 *IERC20Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 20992 return _IERC20.Contract.IERC20Transactor.contract.Transact(opts, method, params...) 20993 } 20994 20995 // Call invokes the (constant) contract method with params as input values and 20996 // sets the output to result. The result type might be a single field for simple 20997 // returns, a slice of interfaces for anonymous returns and a struct for named 20998 // returns. 20999 func (_IERC20 *IERC20CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 21000 return _IERC20.Contract.contract.Call(opts, result, method, params...) 21001 } 21002 21003 // Transfer initiates a plain transaction to move funds to the contract, calling 21004 // its default method if one is available. 21005 func (_IERC20 *IERC20TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 21006 return _IERC20.Contract.contract.Transfer(opts) 21007 } 21008 21009 // Transact invokes the (paid) contract method with params as input values. 21010 func (_IERC20 *IERC20TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 21011 return _IERC20.Contract.contract.Transact(opts, method, params...) 21012 } 21013 21014 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 21015 // 21016 // Solidity: function allowance(address owner, address spender) view returns(uint256) 21017 func (_IERC20 *IERC20Caller) Allowance(opts *bind.CallOpts, owner common.Address, spender common.Address) (*big.Int, error) { 21018 var ( 21019 ret0 = new(*big.Int) 21020 ) 21021 out := ret0 21022 err := _IERC20.contract.Call(opts, out, "allowance", owner, spender) 21023 return *ret0, err 21024 } 21025 21026 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 21027 // 21028 // Solidity: function allowance(address owner, address spender) view returns(uint256) 21029 func (_IERC20 *IERC20Session) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 21030 return _IERC20.Contract.Allowance(&_IERC20.CallOpts, owner, spender) 21031 } 21032 21033 // Allowance is a free data retrieval call binding the contract method 0xdd62ed3e. 21034 // 21035 // Solidity: function allowance(address owner, address spender) view returns(uint256) 21036 func (_IERC20 *IERC20CallerSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error) { 21037 return _IERC20.Contract.Allowance(&_IERC20.CallOpts, owner, spender) 21038 } 21039 21040 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21041 // 21042 // Solidity: function balanceOf(address account) view returns(uint256) 21043 func (_IERC20 *IERC20Caller) BalanceOf(opts *bind.CallOpts, account common.Address) (*big.Int, error) { 21044 var ( 21045 ret0 = new(*big.Int) 21046 ) 21047 out := ret0 21048 err := _IERC20.contract.Call(opts, out, "balanceOf", account) 21049 return *ret0, err 21050 } 21051 21052 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21053 // 21054 // Solidity: function balanceOf(address account) view returns(uint256) 21055 func (_IERC20 *IERC20Session) BalanceOf(account common.Address) (*big.Int, error) { 21056 return _IERC20.Contract.BalanceOf(&_IERC20.CallOpts, account) 21057 } 21058 21059 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21060 // 21061 // Solidity: function balanceOf(address account) view returns(uint256) 21062 func (_IERC20 *IERC20CallerSession) BalanceOf(account common.Address) (*big.Int, error) { 21063 return _IERC20.Contract.BalanceOf(&_IERC20.CallOpts, account) 21064 } 21065 21066 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 21067 // 21068 // Solidity: function totalSupply() view returns(uint256) 21069 func (_IERC20 *IERC20Caller) TotalSupply(opts *bind.CallOpts) (*big.Int, error) { 21070 var ( 21071 ret0 = new(*big.Int) 21072 ) 21073 out := ret0 21074 err := _IERC20.contract.Call(opts, out, "totalSupply") 21075 return *ret0, err 21076 } 21077 21078 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 21079 // 21080 // Solidity: function totalSupply() view returns(uint256) 21081 func (_IERC20 *IERC20Session) TotalSupply() (*big.Int, error) { 21082 return _IERC20.Contract.TotalSupply(&_IERC20.CallOpts) 21083 } 21084 21085 // TotalSupply is a free data retrieval call binding the contract method 0x18160ddd. 21086 // 21087 // Solidity: function totalSupply() view returns(uint256) 21088 func (_IERC20 *IERC20CallerSession) TotalSupply() (*big.Int, error) { 21089 return _IERC20.Contract.TotalSupply(&_IERC20.CallOpts) 21090 } 21091 21092 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21093 // 21094 // Solidity: function approve(address spender, uint256 amount) returns(bool) 21095 func (_IERC20 *IERC20Transactor) Approve(opts *bind.TransactOpts, spender common.Address, amount *big.Int) (*types.Transaction, error) { 21096 return _IERC20.contract.Transact(opts, "approve", spender, amount) 21097 } 21098 21099 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21100 // 21101 // Solidity: function approve(address spender, uint256 amount) returns(bool) 21102 func (_IERC20 *IERC20Session) Approve(spender common.Address, amount *big.Int) (*types.Transaction, error) { 21103 return _IERC20.Contract.Approve(&_IERC20.TransactOpts, spender, amount) 21104 } 21105 21106 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21107 // 21108 // Solidity: function approve(address spender, uint256 amount) returns(bool) 21109 func (_IERC20 *IERC20TransactorSession) Approve(spender common.Address, amount *big.Int) (*types.Transaction, error) { 21110 return _IERC20.Contract.Approve(&_IERC20.TransactOpts, spender, amount) 21111 } 21112 21113 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 21114 // 21115 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 21116 func (_IERC20 *IERC20Transactor) Transfer(opts *bind.TransactOpts, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21117 return _IERC20.contract.Transact(opts, "transfer", recipient, amount) 21118 } 21119 21120 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 21121 // 21122 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 21123 func (_IERC20 *IERC20Session) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21124 return _IERC20.Contract.Transfer(&_IERC20.TransactOpts, recipient, amount) 21125 } 21126 21127 // Transfer is a paid mutator transaction binding the contract method 0xa9059cbb. 21128 // 21129 // Solidity: function transfer(address recipient, uint256 amount) returns(bool) 21130 func (_IERC20 *IERC20TransactorSession) Transfer(recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21131 return _IERC20.Contract.Transfer(&_IERC20.TransactOpts, recipient, amount) 21132 } 21133 21134 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 21135 // 21136 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 21137 func (_IERC20 *IERC20Transactor) TransferFrom(opts *bind.TransactOpts, sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21138 return _IERC20.contract.Transact(opts, "transferFrom", sender, recipient, amount) 21139 } 21140 21141 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 21142 // 21143 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 21144 func (_IERC20 *IERC20Session) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21145 return _IERC20.Contract.TransferFrom(&_IERC20.TransactOpts, sender, recipient, amount) 21146 } 21147 21148 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 21149 // 21150 // Solidity: function transferFrom(address sender, address recipient, uint256 amount) returns(bool) 21151 func (_IERC20 *IERC20TransactorSession) TransferFrom(sender common.Address, recipient common.Address, amount *big.Int) (*types.Transaction, error) { 21152 return _IERC20.Contract.TransferFrom(&_IERC20.TransactOpts, sender, recipient, amount) 21153 } 21154 21155 // IERC20ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the IERC20 contract. 21156 type IERC20ApprovalIterator struct { 21157 Event *IERC20Approval // Event containing the contract specifics and raw log 21158 21159 contract *bind.BoundContract // Generic contract to use for unpacking event data 21160 event string // Event name to use for unpacking event data 21161 21162 logs chan types.Log // Log channel receiving the found contract events 21163 sub klaytn.Subscription // Subscription for errors, completion and termination 21164 done bool // Whether the subscription completed delivering logs 21165 fail error // Occurred error to stop iteration 21166 } 21167 21168 // Next advances the iterator to the subsequent event, returning whether there 21169 // are any more events found. In case of a retrieval or parsing error, false is 21170 // returned and Error() can be queried for the exact failure. 21171 func (it *IERC20ApprovalIterator) Next() bool { 21172 // If the iterator failed, stop iterating 21173 if it.fail != nil { 21174 return false 21175 } 21176 // If the iterator completed, deliver directly whatever's available 21177 if it.done { 21178 select { 21179 case log := <-it.logs: 21180 it.Event = new(IERC20Approval) 21181 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 21182 it.fail = err 21183 return false 21184 } 21185 it.Event.Raw = log 21186 return true 21187 21188 default: 21189 return false 21190 } 21191 } 21192 // Iterator still in progress, wait for either a data or an error event 21193 select { 21194 case log := <-it.logs: 21195 it.Event = new(IERC20Approval) 21196 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 21197 it.fail = err 21198 return false 21199 } 21200 it.Event.Raw = log 21201 return true 21202 21203 case err := <-it.sub.Err(): 21204 it.done = true 21205 it.fail = err 21206 return it.Next() 21207 } 21208 } 21209 21210 // Error returns any retrieval or parsing error occurred during filtering. 21211 func (it *IERC20ApprovalIterator) Error() error { 21212 return it.fail 21213 } 21214 21215 // Close terminates the iteration process, releasing any pending underlying 21216 // resources. 21217 func (it *IERC20ApprovalIterator) Close() error { 21218 it.sub.Unsubscribe() 21219 return nil 21220 } 21221 21222 // IERC20Approval represents a Approval event raised by the IERC20 contract. 21223 type IERC20Approval struct { 21224 Owner common.Address 21225 Spender common.Address 21226 Value *big.Int 21227 Raw types.Log // Blockchain specific contextual infos 21228 } 21229 21230 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 21231 // 21232 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 21233 func (_IERC20 *IERC20Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, spender []common.Address) (*IERC20ApprovalIterator, error) { 21234 21235 var ownerRule []interface{} 21236 for _, ownerItem := range owner { 21237 ownerRule = append(ownerRule, ownerItem) 21238 } 21239 var spenderRule []interface{} 21240 for _, spenderItem := range spender { 21241 spenderRule = append(spenderRule, spenderItem) 21242 } 21243 21244 logs, sub, err := _IERC20.contract.FilterLogs(opts, "Approval", ownerRule, spenderRule) 21245 if err != nil { 21246 return nil, err 21247 } 21248 return &IERC20ApprovalIterator{contract: _IERC20.contract, event: "Approval", logs: logs, sub: sub}, nil 21249 } 21250 21251 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 21252 // 21253 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 21254 func (_IERC20 *IERC20Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *IERC20Approval, owner []common.Address, spender []common.Address) (event.Subscription, error) { 21255 21256 var ownerRule []interface{} 21257 for _, ownerItem := range owner { 21258 ownerRule = append(ownerRule, ownerItem) 21259 } 21260 var spenderRule []interface{} 21261 for _, spenderItem := range spender { 21262 spenderRule = append(spenderRule, spenderItem) 21263 } 21264 21265 logs, sub, err := _IERC20.contract.WatchLogs(opts, "Approval", ownerRule, spenderRule) 21266 if err != nil { 21267 return nil, err 21268 } 21269 return event.NewSubscription(func(quit <-chan struct{}) error { 21270 defer sub.Unsubscribe() 21271 for { 21272 select { 21273 case log := <-logs: 21274 // New log arrived, parse the event and forward to the user 21275 event := new(IERC20Approval) 21276 if err := _IERC20.contract.UnpackLog(event, "Approval", log); err != nil { 21277 return err 21278 } 21279 event.Raw = log 21280 21281 select { 21282 case sink <- event: 21283 case err := <-sub.Err(): 21284 return err 21285 case <-quit: 21286 return nil 21287 } 21288 case err := <-sub.Err(): 21289 return err 21290 case <-quit: 21291 return nil 21292 } 21293 } 21294 }), nil 21295 } 21296 21297 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 21298 // 21299 // Solidity: event Approval(address indexed owner, address indexed spender, uint256 value) 21300 func (_IERC20 *IERC20Filterer) ParseApproval(log types.Log) (*IERC20Approval, error) { 21301 event := new(IERC20Approval) 21302 if err := _IERC20.contract.UnpackLog(event, "Approval", log); err != nil { 21303 return nil, err 21304 } 21305 return event, nil 21306 } 21307 21308 // IERC20TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the IERC20 contract. 21309 type IERC20TransferIterator struct { 21310 Event *IERC20Transfer // Event containing the contract specifics and raw log 21311 21312 contract *bind.BoundContract // Generic contract to use for unpacking event data 21313 event string // Event name to use for unpacking event data 21314 21315 logs chan types.Log // Log channel receiving the found contract events 21316 sub klaytn.Subscription // Subscription for errors, completion and termination 21317 done bool // Whether the subscription completed delivering logs 21318 fail error // Occurred error to stop iteration 21319 } 21320 21321 // Next advances the iterator to the subsequent event, returning whether there 21322 // are any more events found. In case of a retrieval or parsing error, false is 21323 // returned and Error() can be queried for the exact failure. 21324 func (it *IERC20TransferIterator) Next() bool { 21325 // If the iterator failed, stop iterating 21326 if it.fail != nil { 21327 return false 21328 } 21329 // If the iterator completed, deliver directly whatever's available 21330 if it.done { 21331 select { 21332 case log := <-it.logs: 21333 it.Event = new(IERC20Transfer) 21334 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 21335 it.fail = err 21336 return false 21337 } 21338 it.Event.Raw = log 21339 return true 21340 21341 default: 21342 return false 21343 } 21344 } 21345 // Iterator still in progress, wait for either a data or an error event 21346 select { 21347 case log := <-it.logs: 21348 it.Event = new(IERC20Transfer) 21349 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 21350 it.fail = err 21351 return false 21352 } 21353 it.Event.Raw = log 21354 return true 21355 21356 case err := <-it.sub.Err(): 21357 it.done = true 21358 it.fail = err 21359 return it.Next() 21360 } 21361 } 21362 21363 // Error returns any retrieval or parsing error occurred during filtering. 21364 func (it *IERC20TransferIterator) Error() error { 21365 return it.fail 21366 } 21367 21368 // Close terminates the iteration process, releasing any pending underlying 21369 // resources. 21370 func (it *IERC20TransferIterator) Close() error { 21371 it.sub.Unsubscribe() 21372 return nil 21373 } 21374 21375 // IERC20Transfer represents a Transfer event raised by the IERC20 contract. 21376 type IERC20Transfer struct { 21377 From common.Address 21378 To common.Address 21379 Value *big.Int 21380 Raw types.Log // Blockchain specific contextual infos 21381 } 21382 21383 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 21384 // 21385 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 21386 func (_IERC20 *IERC20Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*IERC20TransferIterator, error) { 21387 21388 var fromRule []interface{} 21389 for _, fromItem := range from { 21390 fromRule = append(fromRule, fromItem) 21391 } 21392 var toRule []interface{} 21393 for _, toItem := range to { 21394 toRule = append(toRule, toItem) 21395 } 21396 21397 logs, sub, err := _IERC20.contract.FilterLogs(opts, "Transfer", fromRule, toRule) 21398 if err != nil { 21399 return nil, err 21400 } 21401 return &IERC20TransferIterator{contract: _IERC20.contract, event: "Transfer", logs: logs, sub: sub}, nil 21402 } 21403 21404 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 21405 // 21406 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 21407 func (_IERC20 *IERC20Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *IERC20Transfer, from []common.Address, to []common.Address) (event.Subscription, error) { 21408 21409 var fromRule []interface{} 21410 for _, fromItem := range from { 21411 fromRule = append(fromRule, fromItem) 21412 } 21413 var toRule []interface{} 21414 for _, toItem := range to { 21415 toRule = append(toRule, toItem) 21416 } 21417 21418 logs, sub, err := _IERC20.contract.WatchLogs(opts, "Transfer", fromRule, toRule) 21419 if err != nil { 21420 return nil, err 21421 } 21422 return event.NewSubscription(func(quit <-chan struct{}) error { 21423 defer sub.Unsubscribe() 21424 for { 21425 select { 21426 case log := <-logs: 21427 // New log arrived, parse the event and forward to the user 21428 event := new(IERC20Transfer) 21429 if err := _IERC20.contract.UnpackLog(event, "Transfer", log); err != nil { 21430 return err 21431 } 21432 event.Raw = log 21433 21434 select { 21435 case sink <- event: 21436 case err := <-sub.Err(): 21437 return err 21438 case <-quit: 21439 return nil 21440 } 21441 case err := <-sub.Err(): 21442 return err 21443 case <-quit: 21444 return nil 21445 } 21446 } 21447 }), nil 21448 } 21449 21450 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 21451 // 21452 // Solidity: event Transfer(address indexed from, address indexed to, uint256 value) 21453 func (_IERC20 *IERC20Filterer) ParseTransfer(log types.Log) (*IERC20Transfer, error) { 21454 event := new(IERC20Transfer) 21455 if err := _IERC20.contract.UnpackLog(event, "Transfer", log); err != nil { 21456 return nil, err 21457 } 21458 return event, nil 21459 } 21460 21461 // IERC20BridgeReceiverABI is the input ABI used to generate the binding from. 21462 const IERC20BridgeReceiverABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_amount\",\"type\":\"uint256\"},{\"name\":\"_feeLimit\",\"type\":\"uint256\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC20Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]" 21463 21464 // IERC20BridgeReceiverBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 21465 const IERC20BridgeReceiverBinRuntime = `` 21466 21467 // IERC20BridgeReceiverFuncSigs maps the 4-byte function signature to its string representation. 21468 var IERC20BridgeReceiverFuncSigs = map[string]string{ 21469 "f1656e53": "onERC20Received(address,address,uint256,uint256,bytes)", 21470 } 21471 21472 // IERC20BridgeReceiver is an auto generated Go binding around a Klaytn contract. 21473 type IERC20BridgeReceiver struct { 21474 IERC20BridgeReceiverCaller // Read-only binding to the contract 21475 IERC20BridgeReceiverTransactor // Write-only binding to the contract 21476 IERC20BridgeReceiverFilterer // Log filterer for contract events 21477 } 21478 21479 // IERC20BridgeReceiverCaller is an auto generated read-only Go binding around a Klaytn contract. 21480 type IERC20BridgeReceiverCaller struct { 21481 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21482 } 21483 21484 // IERC20BridgeReceiverTransactor is an auto generated write-only Go binding around a Klaytn contract. 21485 type IERC20BridgeReceiverTransactor struct { 21486 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21487 } 21488 21489 // IERC20BridgeReceiverFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 21490 type IERC20BridgeReceiverFilterer struct { 21491 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21492 } 21493 21494 // IERC20BridgeReceiverSession is an auto generated Go binding around a Klaytn contract, 21495 // with pre-set call and transact options. 21496 type IERC20BridgeReceiverSession struct { 21497 Contract *IERC20BridgeReceiver // Generic contract binding to set the session for 21498 CallOpts bind.CallOpts // Call options to use throughout this session 21499 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 21500 } 21501 21502 // IERC20BridgeReceiverCallerSession is an auto generated read-only Go binding around a Klaytn contract, 21503 // with pre-set call options. 21504 type IERC20BridgeReceiverCallerSession struct { 21505 Contract *IERC20BridgeReceiverCaller // Generic contract caller binding to set the session for 21506 CallOpts bind.CallOpts // Call options to use throughout this session 21507 } 21508 21509 // IERC20BridgeReceiverTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 21510 // with pre-set transact options. 21511 type IERC20BridgeReceiverTransactorSession struct { 21512 Contract *IERC20BridgeReceiverTransactor // Generic contract transactor binding to set the session for 21513 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 21514 } 21515 21516 // IERC20BridgeReceiverRaw is an auto generated low-level Go binding around a Klaytn contract. 21517 type IERC20BridgeReceiverRaw struct { 21518 Contract *IERC20BridgeReceiver // Generic contract binding to access the raw methods on 21519 } 21520 21521 // IERC20BridgeReceiverCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 21522 type IERC20BridgeReceiverCallerRaw struct { 21523 Contract *IERC20BridgeReceiverCaller // Generic read-only contract binding to access the raw methods on 21524 } 21525 21526 // IERC20BridgeReceiverTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 21527 type IERC20BridgeReceiverTransactorRaw struct { 21528 Contract *IERC20BridgeReceiverTransactor // Generic write-only contract binding to access the raw methods on 21529 } 21530 21531 // NewIERC20BridgeReceiver creates a new instance of IERC20BridgeReceiver, bound to a specific deployed contract. 21532 func NewIERC20BridgeReceiver(address common.Address, backend bind.ContractBackend) (*IERC20BridgeReceiver, error) { 21533 contract, err := bindIERC20BridgeReceiver(address, backend, backend, backend) 21534 if err != nil { 21535 return nil, err 21536 } 21537 return &IERC20BridgeReceiver{IERC20BridgeReceiverCaller: IERC20BridgeReceiverCaller{contract: contract}, IERC20BridgeReceiverTransactor: IERC20BridgeReceiverTransactor{contract: contract}, IERC20BridgeReceiverFilterer: IERC20BridgeReceiverFilterer{contract: contract}}, nil 21538 } 21539 21540 // NewIERC20BridgeReceiverCaller creates a new read-only instance of IERC20BridgeReceiver, bound to a specific deployed contract. 21541 func NewIERC20BridgeReceiverCaller(address common.Address, caller bind.ContractCaller) (*IERC20BridgeReceiverCaller, error) { 21542 contract, err := bindIERC20BridgeReceiver(address, caller, nil, nil) 21543 if err != nil { 21544 return nil, err 21545 } 21546 return &IERC20BridgeReceiverCaller{contract: contract}, nil 21547 } 21548 21549 // NewIERC20BridgeReceiverTransactor creates a new write-only instance of IERC20BridgeReceiver, bound to a specific deployed contract. 21550 func NewIERC20BridgeReceiverTransactor(address common.Address, transactor bind.ContractTransactor) (*IERC20BridgeReceiverTransactor, error) { 21551 contract, err := bindIERC20BridgeReceiver(address, nil, transactor, nil) 21552 if err != nil { 21553 return nil, err 21554 } 21555 return &IERC20BridgeReceiverTransactor{contract: contract}, nil 21556 } 21557 21558 // NewIERC20BridgeReceiverFilterer creates a new log filterer instance of IERC20BridgeReceiver, bound to a specific deployed contract. 21559 func NewIERC20BridgeReceiverFilterer(address common.Address, filterer bind.ContractFilterer) (*IERC20BridgeReceiverFilterer, error) { 21560 contract, err := bindIERC20BridgeReceiver(address, nil, nil, filterer) 21561 if err != nil { 21562 return nil, err 21563 } 21564 return &IERC20BridgeReceiverFilterer{contract: contract}, nil 21565 } 21566 21567 // bindIERC20BridgeReceiver binds a generic wrapper to an already deployed contract. 21568 func bindIERC20BridgeReceiver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 21569 parsed, err := abi.JSON(strings.NewReader(IERC20BridgeReceiverABI)) 21570 if err != nil { 21571 return nil, err 21572 } 21573 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 21574 } 21575 21576 // Call invokes the (constant) contract method with params as input values and 21577 // sets the output to result. The result type might be a single field for simple 21578 // returns, a slice of interfaces for anonymous returns and a struct for named 21579 // returns. 21580 func (_IERC20BridgeReceiver *IERC20BridgeReceiverRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 21581 return _IERC20BridgeReceiver.Contract.IERC20BridgeReceiverCaller.contract.Call(opts, result, method, params...) 21582 } 21583 21584 // Transfer initiates a plain transaction to move funds to the contract, calling 21585 // its default method if one is available. 21586 func (_IERC20BridgeReceiver *IERC20BridgeReceiverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 21587 return _IERC20BridgeReceiver.Contract.IERC20BridgeReceiverTransactor.contract.Transfer(opts) 21588 } 21589 21590 // Transact invokes the (paid) contract method with params as input values. 21591 func (_IERC20BridgeReceiver *IERC20BridgeReceiverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 21592 return _IERC20BridgeReceiver.Contract.IERC20BridgeReceiverTransactor.contract.Transact(opts, method, params...) 21593 } 21594 21595 // Call invokes the (constant) contract method with params as input values and 21596 // sets the output to result. The result type might be a single field for simple 21597 // returns, a slice of interfaces for anonymous returns and a struct for named 21598 // returns. 21599 func (_IERC20BridgeReceiver *IERC20BridgeReceiverCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 21600 return _IERC20BridgeReceiver.Contract.contract.Call(opts, result, method, params...) 21601 } 21602 21603 // Transfer initiates a plain transaction to move funds to the contract, calling 21604 // its default method if one is available. 21605 func (_IERC20BridgeReceiver *IERC20BridgeReceiverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 21606 return _IERC20BridgeReceiver.Contract.contract.Transfer(opts) 21607 } 21608 21609 // Transact invokes the (paid) contract method with params as input values. 21610 func (_IERC20BridgeReceiver *IERC20BridgeReceiverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 21611 return _IERC20BridgeReceiver.Contract.contract.Transact(opts, method, params...) 21612 } 21613 21614 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 21615 // 21616 // Solidity: function onERC20Received(address _from, address _to, uint256 _amount, uint256 _feeLimit, bytes _extraData) returns() 21617 func (_IERC20BridgeReceiver *IERC20BridgeReceiverTransactor) OnERC20Received(opts *bind.TransactOpts, _from common.Address, _to common.Address, _amount *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 21618 return _IERC20BridgeReceiver.contract.Transact(opts, "onERC20Received", _from, _to, _amount, _feeLimit, _extraData) 21619 } 21620 21621 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 21622 // 21623 // Solidity: function onERC20Received(address _from, address _to, uint256 _amount, uint256 _feeLimit, bytes _extraData) returns() 21624 func (_IERC20BridgeReceiver *IERC20BridgeReceiverSession) OnERC20Received(_from common.Address, _to common.Address, _amount *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 21625 return _IERC20BridgeReceiver.Contract.OnERC20Received(&_IERC20BridgeReceiver.TransactOpts, _from, _to, _amount, _feeLimit, _extraData) 21626 } 21627 21628 // OnERC20Received is a paid mutator transaction binding the contract method 0xf1656e53. 21629 // 21630 // Solidity: function onERC20Received(address _from, address _to, uint256 _amount, uint256 _feeLimit, bytes _extraData) returns() 21631 func (_IERC20BridgeReceiver *IERC20BridgeReceiverTransactorSession) OnERC20Received(_from common.Address, _to common.Address, _amount *big.Int, _feeLimit *big.Int, _extraData []byte) (*types.Transaction, error) { 21632 return _IERC20BridgeReceiver.Contract.OnERC20Received(&_IERC20BridgeReceiver.TransactOpts, _from, _to, _amount, _feeLimit, _extraData) 21633 } 21634 21635 // IERC721ABI is the input ABI used to generate the binding from. 21636 const IERC721ABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"operator\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"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\":\"operator\",\"type\":\"address\"},{\"name\":\"_approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 21637 21638 // IERC721BinRuntime is the compiled bytecode used for adding genesis block without deploying code. 21639 const IERC721BinRuntime = `` 21640 21641 // IERC721FuncSigs maps the 4-byte function signature to its string representation. 21642 var IERC721FuncSigs = map[string]string{ 21643 "095ea7b3": "approve(address,uint256)", 21644 "70a08231": "balanceOf(address)", 21645 "081812fc": "getApproved(uint256)", 21646 "e985e9c5": "isApprovedForAll(address,address)", 21647 "6352211e": "ownerOf(uint256)", 21648 "42842e0e": "safeTransferFrom(address,address,uint256)", 21649 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 21650 "a22cb465": "setApprovalForAll(address,bool)", 21651 "01ffc9a7": "supportsInterface(bytes4)", 21652 "23b872dd": "transferFrom(address,address,uint256)", 21653 } 21654 21655 // IERC721 is an auto generated Go binding around a Klaytn contract. 21656 type IERC721 struct { 21657 IERC721Caller // Read-only binding to the contract 21658 IERC721Transactor // Write-only binding to the contract 21659 IERC721Filterer // Log filterer for contract events 21660 } 21661 21662 // IERC721Caller is an auto generated read-only Go binding around a Klaytn contract. 21663 type IERC721Caller struct { 21664 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21665 } 21666 21667 // IERC721Transactor is an auto generated write-only Go binding around a Klaytn contract. 21668 type IERC721Transactor struct { 21669 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21670 } 21671 21672 // IERC721Filterer is an auto generated log filtering Go binding around a Klaytn contract events. 21673 type IERC721Filterer struct { 21674 contract *bind.BoundContract // Generic contract wrapper for the low level calls 21675 } 21676 21677 // IERC721Session is an auto generated Go binding around a Klaytn contract, 21678 // with pre-set call and transact options. 21679 type IERC721Session struct { 21680 Contract *IERC721 // Generic contract binding to set the session for 21681 CallOpts bind.CallOpts // Call options to use throughout this session 21682 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 21683 } 21684 21685 // IERC721CallerSession is an auto generated read-only Go binding around a Klaytn contract, 21686 // with pre-set call options. 21687 type IERC721CallerSession struct { 21688 Contract *IERC721Caller // Generic contract caller binding to set the session for 21689 CallOpts bind.CallOpts // Call options to use throughout this session 21690 } 21691 21692 // IERC721TransactorSession is an auto generated write-only Go binding around a Klaytn contract, 21693 // with pre-set transact options. 21694 type IERC721TransactorSession struct { 21695 Contract *IERC721Transactor // Generic contract transactor binding to set the session for 21696 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 21697 } 21698 21699 // IERC721Raw is an auto generated low-level Go binding around a Klaytn contract. 21700 type IERC721Raw struct { 21701 Contract *IERC721 // Generic contract binding to access the raw methods on 21702 } 21703 21704 // IERC721CallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 21705 type IERC721CallerRaw struct { 21706 Contract *IERC721Caller // Generic read-only contract binding to access the raw methods on 21707 } 21708 21709 // IERC721TransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 21710 type IERC721TransactorRaw struct { 21711 Contract *IERC721Transactor // Generic write-only contract binding to access the raw methods on 21712 } 21713 21714 // NewIERC721 creates a new instance of IERC721, bound to a specific deployed contract. 21715 func NewIERC721(address common.Address, backend bind.ContractBackend) (*IERC721, error) { 21716 contract, err := bindIERC721(address, backend, backend, backend) 21717 if err != nil { 21718 return nil, err 21719 } 21720 return &IERC721{IERC721Caller: IERC721Caller{contract: contract}, IERC721Transactor: IERC721Transactor{contract: contract}, IERC721Filterer: IERC721Filterer{contract: contract}}, nil 21721 } 21722 21723 // NewIERC721Caller creates a new read-only instance of IERC721, bound to a specific deployed contract. 21724 func NewIERC721Caller(address common.Address, caller bind.ContractCaller) (*IERC721Caller, error) { 21725 contract, err := bindIERC721(address, caller, nil, nil) 21726 if err != nil { 21727 return nil, err 21728 } 21729 return &IERC721Caller{contract: contract}, nil 21730 } 21731 21732 // NewIERC721Transactor creates a new write-only instance of IERC721, bound to a specific deployed contract. 21733 func NewIERC721Transactor(address common.Address, transactor bind.ContractTransactor) (*IERC721Transactor, error) { 21734 contract, err := bindIERC721(address, nil, transactor, nil) 21735 if err != nil { 21736 return nil, err 21737 } 21738 return &IERC721Transactor{contract: contract}, nil 21739 } 21740 21741 // NewIERC721Filterer creates a new log filterer instance of IERC721, bound to a specific deployed contract. 21742 func NewIERC721Filterer(address common.Address, filterer bind.ContractFilterer) (*IERC721Filterer, error) { 21743 contract, err := bindIERC721(address, nil, nil, filterer) 21744 if err != nil { 21745 return nil, err 21746 } 21747 return &IERC721Filterer{contract: contract}, nil 21748 } 21749 21750 // bindIERC721 binds a generic wrapper to an already deployed contract. 21751 func bindIERC721(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 21752 parsed, err := abi.JSON(strings.NewReader(IERC721ABI)) 21753 if err != nil { 21754 return nil, err 21755 } 21756 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 21757 } 21758 21759 // Call invokes the (constant) contract method with params as input values and 21760 // sets the output to result. The result type might be a single field for simple 21761 // returns, a slice of interfaces for anonymous returns and a struct for named 21762 // returns. 21763 func (_IERC721 *IERC721Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 21764 return _IERC721.Contract.IERC721Caller.contract.Call(opts, result, method, params...) 21765 } 21766 21767 // Transfer initiates a plain transaction to move funds to the contract, calling 21768 // its default method if one is available. 21769 func (_IERC721 *IERC721Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 21770 return _IERC721.Contract.IERC721Transactor.contract.Transfer(opts) 21771 } 21772 21773 // Transact invokes the (paid) contract method with params as input values. 21774 func (_IERC721 *IERC721Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 21775 return _IERC721.Contract.IERC721Transactor.contract.Transact(opts, method, params...) 21776 } 21777 21778 // Call invokes the (constant) contract method with params as input values and 21779 // sets the output to result. The result type might be a single field for simple 21780 // returns, a slice of interfaces for anonymous returns and a struct for named 21781 // returns. 21782 func (_IERC721 *IERC721CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 21783 return _IERC721.Contract.contract.Call(opts, result, method, params...) 21784 } 21785 21786 // Transfer initiates a plain transaction to move funds to the contract, calling 21787 // its default method if one is available. 21788 func (_IERC721 *IERC721TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 21789 return _IERC721.Contract.contract.Transfer(opts) 21790 } 21791 21792 // Transact invokes the (paid) contract method with params as input values. 21793 func (_IERC721 *IERC721TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 21794 return _IERC721.Contract.contract.Transact(opts, method, params...) 21795 } 21796 21797 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21798 // 21799 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 21800 func (_IERC721 *IERC721Caller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 21801 var ( 21802 ret0 = new(*big.Int) 21803 ) 21804 out := ret0 21805 err := _IERC721.contract.Call(opts, out, "balanceOf", owner) 21806 return *ret0, err 21807 } 21808 21809 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21810 // 21811 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 21812 func (_IERC721 *IERC721Session) BalanceOf(owner common.Address) (*big.Int, error) { 21813 return _IERC721.Contract.BalanceOf(&_IERC721.CallOpts, owner) 21814 } 21815 21816 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 21817 // 21818 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 21819 func (_IERC721 *IERC721CallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 21820 return _IERC721.Contract.BalanceOf(&_IERC721.CallOpts, owner) 21821 } 21822 21823 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 21824 // 21825 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 21826 func (_IERC721 *IERC721Caller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 21827 var ( 21828 ret0 = new(common.Address) 21829 ) 21830 out := ret0 21831 err := _IERC721.contract.Call(opts, out, "getApproved", tokenId) 21832 return *ret0, err 21833 } 21834 21835 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 21836 // 21837 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 21838 func (_IERC721 *IERC721Session) GetApproved(tokenId *big.Int) (common.Address, error) { 21839 return _IERC721.Contract.GetApproved(&_IERC721.CallOpts, tokenId) 21840 } 21841 21842 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 21843 // 21844 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 21845 func (_IERC721 *IERC721CallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 21846 return _IERC721.Contract.GetApproved(&_IERC721.CallOpts, tokenId) 21847 } 21848 21849 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 21850 // 21851 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 21852 func (_IERC721 *IERC721Caller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 21853 var ( 21854 ret0 = new(bool) 21855 ) 21856 out := ret0 21857 err := _IERC721.contract.Call(opts, out, "isApprovedForAll", owner, operator) 21858 return *ret0, err 21859 } 21860 21861 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 21862 // 21863 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 21864 func (_IERC721 *IERC721Session) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 21865 return _IERC721.Contract.IsApprovedForAll(&_IERC721.CallOpts, owner, operator) 21866 } 21867 21868 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 21869 // 21870 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 21871 func (_IERC721 *IERC721CallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 21872 return _IERC721.Contract.IsApprovedForAll(&_IERC721.CallOpts, owner, operator) 21873 } 21874 21875 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 21876 // 21877 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 21878 func (_IERC721 *IERC721Caller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 21879 var ( 21880 ret0 = new(common.Address) 21881 ) 21882 out := ret0 21883 err := _IERC721.contract.Call(opts, out, "ownerOf", tokenId) 21884 return *ret0, err 21885 } 21886 21887 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 21888 // 21889 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 21890 func (_IERC721 *IERC721Session) OwnerOf(tokenId *big.Int) (common.Address, error) { 21891 return _IERC721.Contract.OwnerOf(&_IERC721.CallOpts, tokenId) 21892 } 21893 21894 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 21895 // 21896 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 21897 func (_IERC721 *IERC721CallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 21898 return _IERC721.Contract.OwnerOf(&_IERC721.CallOpts, tokenId) 21899 } 21900 21901 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 21902 // 21903 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 21904 func (_IERC721 *IERC721Caller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 21905 var ( 21906 ret0 = new(bool) 21907 ) 21908 out := ret0 21909 err := _IERC721.contract.Call(opts, out, "supportsInterface", interfaceId) 21910 return *ret0, err 21911 } 21912 21913 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 21914 // 21915 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 21916 func (_IERC721 *IERC721Session) SupportsInterface(interfaceId [4]byte) (bool, error) { 21917 return _IERC721.Contract.SupportsInterface(&_IERC721.CallOpts, interfaceId) 21918 } 21919 21920 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 21921 // 21922 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 21923 func (_IERC721 *IERC721CallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 21924 return _IERC721.Contract.SupportsInterface(&_IERC721.CallOpts, interfaceId) 21925 } 21926 21927 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21928 // 21929 // Solidity: function approve(address to, uint256 tokenId) returns() 21930 func (_IERC721 *IERC721Transactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21931 return _IERC721.contract.Transact(opts, "approve", to, tokenId) 21932 } 21933 21934 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21935 // 21936 // Solidity: function approve(address to, uint256 tokenId) returns() 21937 func (_IERC721 *IERC721Session) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21938 return _IERC721.Contract.Approve(&_IERC721.TransactOpts, to, tokenId) 21939 } 21940 21941 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 21942 // 21943 // Solidity: function approve(address to, uint256 tokenId) returns() 21944 func (_IERC721 *IERC721TransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21945 return _IERC721.Contract.Approve(&_IERC721.TransactOpts, to, tokenId) 21946 } 21947 21948 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 21949 // 21950 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 21951 func (_IERC721 *IERC721Transactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21952 return _IERC721.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 21953 } 21954 21955 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 21956 // 21957 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 21958 func (_IERC721 *IERC721Session) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21959 return _IERC721.Contract.SafeTransferFrom(&_IERC721.TransactOpts, from, to, tokenId) 21960 } 21961 21962 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 21963 // 21964 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 21965 func (_IERC721 *IERC721TransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 21966 return _IERC721.Contract.SafeTransferFrom(&_IERC721.TransactOpts, from, to, tokenId) 21967 } 21968 21969 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 21970 // 21971 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 21972 func (_IERC721 *IERC721Transactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 21973 return _IERC721.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, data) 21974 } 21975 21976 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 21977 // 21978 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 21979 func (_IERC721 *IERC721Session) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 21980 return _IERC721.Contract.SafeTransferFrom0(&_IERC721.TransactOpts, from, to, tokenId, data) 21981 } 21982 21983 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 21984 // 21985 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 21986 func (_IERC721 *IERC721TransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 21987 return _IERC721.Contract.SafeTransferFrom0(&_IERC721.TransactOpts, from, to, tokenId, data) 21988 } 21989 21990 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 21991 // 21992 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 21993 func (_IERC721 *IERC721Transactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, _approved bool) (*types.Transaction, error) { 21994 return _IERC721.contract.Transact(opts, "setApprovalForAll", operator, _approved) 21995 } 21996 21997 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 21998 // 21999 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 22000 func (_IERC721 *IERC721Session) SetApprovalForAll(operator common.Address, _approved bool) (*types.Transaction, error) { 22001 return _IERC721.Contract.SetApprovalForAll(&_IERC721.TransactOpts, operator, _approved) 22002 } 22003 22004 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 22005 // 22006 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 22007 func (_IERC721 *IERC721TransactorSession) SetApprovalForAll(operator common.Address, _approved bool) (*types.Transaction, error) { 22008 return _IERC721.Contract.SetApprovalForAll(&_IERC721.TransactOpts, operator, _approved) 22009 } 22010 22011 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 22012 // 22013 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 22014 func (_IERC721 *IERC721Transactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 22015 return _IERC721.contract.Transact(opts, "transferFrom", from, to, tokenId) 22016 } 22017 22018 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 22019 // 22020 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 22021 func (_IERC721 *IERC721Session) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 22022 return _IERC721.Contract.TransferFrom(&_IERC721.TransactOpts, from, to, tokenId) 22023 } 22024 22025 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 22026 // 22027 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 22028 func (_IERC721 *IERC721TransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 22029 return _IERC721.Contract.TransferFrom(&_IERC721.TransactOpts, from, to, tokenId) 22030 } 22031 22032 // IERC721ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the IERC721 contract. 22033 type IERC721ApprovalIterator struct { 22034 Event *IERC721Approval // Event containing the contract specifics and raw log 22035 22036 contract *bind.BoundContract // Generic contract to use for unpacking event data 22037 event string // Event name to use for unpacking event data 22038 22039 logs chan types.Log // Log channel receiving the found contract events 22040 sub klaytn.Subscription // Subscription for errors, completion and termination 22041 done bool // Whether the subscription completed delivering logs 22042 fail error // Occurred error to stop iteration 22043 } 22044 22045 // Next advances the iterator to the subsequent event, returning whether there 22046 // are any more events found. In case of a retrieval or parsing error, false is 22047 // returned and Error() can be queried for the exact failure. 22048 func (it *IERC721ApprovalIterator) Next() bool { 22049 // If the iterator failed, stop iterating 22050 if it.fail != nil { 22051 return false 22052 } 22053 // If the iterator completed, deliver directly whatever's available 22054 if it.done { 22055 select { 22056 case log := <-it.logs: 22057 it.Event = new(IERC721Approval) 22058 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22059 it.fail = err 22060 return false 22061 } 22062 it.Event.Raw = log 22063 return true 22064 22065 default: 22066 return false 22067 } 22068 } 22069 // Iterator still in progress, wait for either a data or an error event 22070 select { 22071 case log := <-it.logs: 22072 it.Event = new(IERC721Approval) 22073 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22074 it.fail = err 22075 return false 22076 } 22077 it.Event.Raw = log 22078 return true 22079 22080 case err := <-it.sub.Err(): 22081 it.done = true 22082 it.fail = err 22083 return it.Next() 22084 } 22085 } 22086 22087 // Error returns any retrieval or parsing error occurred during filtering. 22088 func (it *IERC721ApprovalIterator) Error() error { 22089 return it.fail 22090 } 22091 22092 // Close terminates the iteration process, releasing any pending underlying 22093 // resources. 22094 func (it *IERC721ApprovalIterator) Close() error { 22095 it.sub.Unsubscribe() 22096 return nil 22097 } 22098 22099 // IERC721Approval represents a Approval event raised by the IERC721 contract. 22100 type IERC721Approval struct { 22101 Owner common.Address 22102 Approved common.Address 22103 TokenId *big.Int 22104 Raw types.Log // Blockchain specific contextual infos 22105 } 22106 22107 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 22108 // 22109 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 22110 func (_IERC721 *IERC721Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*IERC721ApprovalIterator, error) { 22111 22112 var ownerRule []interface{} 22113 for _, ownerItem := range owner { 22114 ownerRule = append(ownerRule, ownerItem) 22115 } 22116 var approvedRule []interface{} 22117 for _, approvedItem := range approved { 22118 approvedRule = append(approvedRule, approvedItem) 22119 } 22120 var tokenIdRule []interface{} 22121 for _, tokenIdItem := range tokenId { 22122 tokenIdRule = append(tokenIdRule, tokenIdItem) 22123 } 22124 22125 logs, sub, err := _IERC721.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 22126 if err != nil { 22127 return nil, err 22128 } 22129 return &IERC721ApprovalIterator{contract: _IERC721.contract, event: "Approval", logs: logs, sub: sub}, nil 22130 } 22131 22132 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 22133 // 22134 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 22135 func (_IERC721 *IERC721Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *IERC721Approval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 22136 22137 var ownerRule []interface{} 22138 for _, ownerItem := range owner { 22139 ownerRule = append(ownerRule, ownerItem) 22140 } 22141 var approvedRule []interface{} 22142 for _, approvedItem := range approved { 22143 approvedRule = append(approvedRule, approvedItem) 22144 } 22145 var tokenIdRule []interface{} 22146 for _, tokenIdItem := range tokenId { 22147 tokenIdRule = append(tokenIdRule, tokenIdItem) 22148 } 22149 22150 logs, sub, err := _IERC721.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 22151 if err != nil { 22152 return nil, err 22153 } 22154 return event.NewSubscription(func(quit <-chan struct{}) error { 22155 defer sub.Unsubscribe() 22156 for { 22157 select { 22158 case log := <-logs: 22159 // New log arrived, parse the event and forward to the user 22160 event := new(IERC721Approval) 22161 if err := _IERC721.contract.UnpackLog(event, "Approval", log); err != nil { 22162 return err 22163 } 22164 event.Raw = log 22165 22166 select { 22167 case sink <- event: 22168 case err := <-sub.Err(): 22169 return err 22170 case <-quit: 22171 return nil 22172 } 22173 case err := <-sub.Err(): 22174 return err 22175 case <-quit: 22176 return nil 22177 } 22178 } 22179 }), nil 22180 } 22181 22182 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 22183 // 22184 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 22185 func (_IERC721 *IERC721Filterer) ParseApproval(log types.Log) (*IERC721Approval, error) { 22186 event := new(IERC721Approval) 22187 if err := _IERC721.contract.UnpackLog(event, "Approval", log); err != nil { 22188 return nil, err 22189 } 22190 return event, nil 22191 } 22192 22193 // IERC721ApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the IERC721 contract. 22194 type IERC721ApprovalForAllIterator struct { 22195 Event *IERC721ApprovalForAll // Event containing the contract specifics and raw log 22196 22197 contract *bind.BoundContract // Generic contract to use for unpacking event data 22198 event string // Event name to use for unpacking event data 22199 22200 logs chan types.Log // Log channel receiving the found contract events 22201 sub klaytn.Subscription // Subscription for errors, completion and termination 22202 done bool // Whether the subscription completed delivering logs 22203 fail error // Occurred error to stop iteration 22204 } 22205 22206 // Next advances the iterator to the subsequent event, returning whether there 22207 // are any more events found. In case of a retrieval or parsing error, false is 22208 // returned and Error() can be queried for the exact failure. 22209 func (it *IERC721ApprovalForAllIterator) Next() bool { 22210 // If the iterator failed, stop iterating 22211 if it.fail != nil { 22212 return false 22213 } 22214 // If the iterator completed, deliver directly whatever's available 22215 if it.done { 22216 select { 22217 case log := <-it.logs: 22218 it.Event = new(IERC721ApprovalForAll) 22219 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22220 it.fail = err 22221 return false 22222 } 22223 it.Event.Raw = log 22224 return true 22225 22226 default: 22227 return false 22228 } 22229 } 22230 // Iterator still in progress, wait for either a data or an error event 22231 select { 22232 case log := <-it.logs: 22233 it.Event = new(IERC721ApprovalForAll) 22234 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22235 it.fail = err 22236 return false 22237 } 22238 it.Event.Raw = log 22239 return true 22240 22241 case err := <-it.sub.Err(): 22242 it.done = true 22243 it.fail = err 22244 return it.Next() 22245 } 22246 } 22247 22248 // Error returns any retrieval or parsing error occurred during filtering. 22249 func (it *IERC721ApprovalForAllIterator) Error() error { 22250 return it.fail 22251 } 22252 22253 // Close terminates the iteration process, releasing any pending underlying 22254 // resources. 22255 func (it *IERC721ApprovalForAllIterator) Close() error { 22256 it.sub.Unsubscribe() 22257 return nil 22258 } 22259 22260 // IERC721ApprovalForAll represents a ApprovalForAll event raised by the IERC721 contract. 22261 type IERC721ApprovalForAll struct { 22262 Owner common.Address 22263 Operator common.Address 22264 Approved bool 22265 Raw types.Log // Blockchain specific contextual infos 22266 } 22267 22268 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 22269 // 22270 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 22271 func (_IERC721 *IERC721Filterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*IERC721ApprovalForAllIterator, error) { 22272 22273 var ownerRule []interface{} 22274 for _, ownerItem := range owner { 22275 ownerRule = append(ownerRule, ownerItem) 22276 } 22277 var operatorRule []interface{} 22278 for _, operatorItem := range operator { 22279 operatorRule = append(operatorRule, operatorItem) 22280 } 22281 22282 logs, sub, err := _IERC721.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 22283 if err != nil { 22284 return nil, err 22285 } 22286 return &IERC721ApprovalForAllIterator{contract: _IERC721.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 22287 } 22288 22289 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 22290 // 22291 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 22292 func (_IERC721 *IERC721Filterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *IERC721ApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 22293 22294 var ownerRule []interface{} 22295 for _, ownerItem := range owner { 22296 ownerRule = append(ownerRule, ownerItem) 22297 } 22298 var operatorRule []interface{} 22299 for _, operatorItem := range operator { 22300 operatorRule = append(operatorRule, operatorItem) 22301 } 22302 22303 logs, sub, err := _IERC721.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 22304 if err != nil { 22305 return nil, err 22306 } 22307 return event.NewSubscription(func(quit <-chan struct{}) error { 22308 defer sub.Unsubscribe() 22309 for { 22310 select { 22311 case log := <-logs: 22312 // New log arrived, parse the event and forward to the user 22313 event := new(IERC721ApprovalForAll) 22314 if err := _IERC721.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 22315 return err 22316 } 22317 event.Raw = log 22318 22319 select { 22320 case sink <- event: 22321 case err := <-sub.Err(): 22322 return err 22323 case <-quit: 22324 return nil 22325 } 22326 case err := <-sub.Err(): 22327 return err 22328 case <-quit: 22329 return nil 22330 } 22331 } 22332 }), nil 22333 } 22334 22335 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 22336 // 22337 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 22338 func (_IERC721 *IERC721Filterer) ParseApprovalForAll(log types.Log) (*IERC721ApprovalForAll, error) { 22339 event := new(IERC721ApprovalForAll) 22340 if err := _IERC721.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 22341 return nil, err 22342 } 22343 return event, nil 22344 } 22345 22346 // IERC721TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the IERC721 contract. 22347 type IERC721TransferIterator struct { 22348 Event *IERC721Transfer // Event containing the contract specifics and raw log 22349 22350 contract *bind.BoundContract // Generic contract to use for unpacking event data 22351 event string // Event name to use for unpacking event data 22352 22353 logs chan types.Log // Log channel receiving the found contract events 22354 sub klaytn.Subscription // Subscription for errors, completion and termination 22355 done bool // Whether the subscription completed delivering logs 22356 fail error // Occurred error to stop iteration 22357 } 22358 22359 // Next advances the iterator to the subsequent event, returning whether there 22360 // are any more events found. In case of a retrieval or parsing error, false is 22361 // returned and Error() can be queried for the exact failure. 22362 func (it *IERC721TransferIterator) Next() bool { 22363 // If the iterator failed, stop iterating 22364 if it.fail != nil { 22365 return false 22366 } 22367 // If the iterator completed, deliver directly whatever's available 22368 if it.done { 22369 select { 22370 case log := <-it.logs: 22371 it.Event = new(IERC721Transfer) 22372 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22373 it.fail = err 22374 return false 22375 } 22376 it.Event.Raw = log 22377 return true 22378 22379 default: 22380 return false 22381 } 22382 } 22383 // Iterator still in progress, wait for either a data or an error event 22384 select { 22385 case log := <-it.logs: 22386 it.Event = new(IERC721Transfer) 22387 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 22388 it.fail = err 22389 return false 22390 } 22391 it.Event.Raw = log 22392 return true 22393 22394 case err := <-it.sub.Err(): 22395 it.done = true 22396 it.fail = err 22397 return it.Next() 22398 } 22399 } 22400 22401 // Error returns any retrieval or parsing error occurred during filtering. 22402 func (it *IERC721TransferIterator) Error() error { 22403 return it.fail 22404 } 22405 22406 // Close terminates the iteration process, releasing any pending underlying 22407 // resources. 22408 func (it *IERC721TransferIterator) Close() error { 22409 it.sub.Unsubscribe() 22410 return nil 22411 } 22412 22413 // IERC721Transfer represents a Transfer event raised by the IERC721 contract. 22414 type IERC721Transfer struct { 22415 From common.Address 22416 To common.Address 22417 TokenId *big.Int 22418 Raw types.Log // Blockchain specific contextual infos 22419 } 22420 22421 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 22422 // 22423 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 22424 func (_IERC721 *IERC721Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*IERC721TransferIterator, error) { 22425 22426 var fromRule []interface{} 22427 for _, fromItem := range from { 22428 fromRule = append(fromRule, fromItem) 22429 } 22430 var toRule []interface{} 22431 for _, toItem := range to { 22432 toRule = append(toRule, toItem) 22433 } 22434 var tokenIdRule []interface{} 22435 for _, tokenIdItem := range tokenId { 22436 tokenIdRule = append(tokenIdRule, tokenIdItem) 22437 } 22438 22439 logs, sub, err := _IERC721.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 22440 if err != nil { 22441 return nil, err 22442 } 22443 return &IERC721TransferIterator{contract: _IERC721.contract, event: "Transfer", logs: logs, sub: sub}, nil 22444 } 22445 22446 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 22447 // 22448 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 22449 func (_IERC721 *IERC721Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *IERC721Transfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 22450 22451 var fromRule []interface{} 22452 for _, fromItem := range from { 22453 fromRule = append(fromRule, fromItem) 22454 } 22455 var toRule []interface{} 22456 for _, toItem := range to { 22457 toRule = append(toRule, toItem) 22458 } 22459 var tokenIdRule []interface{} 22460 for _, tokenIdItem := range tokenId { 22461 tokenIdRule = append(tokenIdRule, tokenIdItem) 22462 } 22463 22464 logs, sub, err := _IERC721.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 22465 if err != nil { 22466 return nil, err 22467 } 22468 return event.NewSubscription(func(quit <-chan struct{}) error { 22469 defer sub.Unsubscribe() 22470 for { 22471 select { 22472 case log := <-logs: 22473 // New log arrived, parse the event and forward to the user 22474 event := new(IERC721Transfer) 22475 if err := _IERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 22476 return err 22477 } 22478 event.Raw = log 22479 22480 select { 22481 case sink <- event: 22482 case err := <-sub.Err(): 22483 return err 22484 case <-quit: 22485 return nil 22486 } 22487 case err := <-sub.Err(): 22488 return err 22489 case <-quit: 22490 return nil 22491 } 22492 } 22493 }), nil 22494 } 22495 22496 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 22497 // 22498 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 22499 func (_IERC721 *IERC721Filterer) ParseTransfer(log types.Log) (*IERC721Transfer, error) { 22500 event := new(IERC721Transfer) 22501 if err := _IERC721.contract.UnpackLog(event, "Transfer", log); err != nil { 22502 return nil, err 22503 } 22504 return event, nil 22505 } 22506 22507 // IERC721BridgeReceiverABI is the input ABI used to generate the binding from. 22508 const IERC721BridgeReceiverABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_from\",\"type\":\"address\"},{\"name\":\"_tokenId\",\"type\":\"uint256\"},{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]" 22509 22510 // IERC721BridgeReceiverBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 22511 const IERC721BridgeReceiverBinRuntime = `` 22512 22513 // IERC721BridgeReceiverFuncSigs maps the 4-byte function signature to its string representation. 22514 var IERC721BridgeReceiverFuncSigs = map[string]string{ 22515 "cf0da290": "onERC721Received(address,uint256,address,bytes)", 22516 } 22517 22518 // IERC721BridgeReceiver is an auto generated Go binding around a Klaytn contract. 22519 type IERC721BridgeReceiver struct { 22520 IERC721BridgeReceiverCaller // Read-only binding to the contract 22521 IERC721BridgeReceiverTransactor // Write-only binding to the contract 22522 IERC721BridgeReceiverFilterer // Log filterer for contract events 22523 } 22524 22525 // IERC721BridgeReceiverCaller is an auto generated read-only Go binding around a Klaytn contract. 22526 type IERC721BridgeReceiverCaller struct { 22527 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22528 } 22529 22530 // IERC721BridgeReceiverTransactor is an auto generated write-only Go binding around a Klaytn contract. 22531 type IERC721BridgeReceiverTransactor struct { 22532 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22533 } 22534 22535 // IERC721BridgeReceiverFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 22536 type IERC721BridgeReceiverFilterer struct { 22537 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22538 } 22539 22540 // IERC721BridgeReceiverSession is an auto generated Go binding around a Klaytn contract, 22541 // with pre-set call and transact options. 22542 type IERC721BridgeReceiverSession struct { 22543 Contract *IERC721BridgeReceiver // Generic contract binding to set the session for 22544 CallOpts bind.CallOpts // Call options to use throughout this session 22545 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 22546 } 22547 22548 // IERC721BridgeReceiverCallerSession is an auto generated read-only Go binding around a Klaytn contract, 22549 // with pre-set call options. 22550 type IERC721BridgeReceiverCallerSession struct { 22551 Contract *IERC721BridgeReceiverCaller // Generic contract caller binding to set the session for 22552 CallOpts bind.CallOpts // Call options to use throughout this session 22553 } 22554 22555 // IERC721BridgeReceiverTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 22556 // with pre-set transact options. 22557 type IERC721BridgeReceiverTransactorSession struct { 22558 Contract *IERC721BridgeReceiverTransactor // Generic contract transactor binding to set the session for 22559 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 22560 } 22561 22562 // IERC721BridgeReceiverRaw is an auto generated low-level Go binding around a Klaytn contract. 22563 type IERC721BridgeReceiverRaw struct { 22564 Contract *IERC721BridgeReceiver // Generic contract binding to access the raw methods on 22565 } 22566 22567 // IERC721BridgeReceiverCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 22568 type IERC721BridgeReceiverCallerRaw struct { 22569 Contract *IERC721BridgeReceiverCaller // Generic read-only contract binding to access the raw methods on 22570 } 22571 22572 // IERC721BridgeReceiverTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 22573 type IERC721BridgeReceiverTransactorRaw struct { 22574 Contract *IERC721BridgeReceiverTransactor // Generic write-only contract binding to access the raw methods on 22575 } 22576 22577 // NewIERC721BridgeReceiver creates a new instance of IERC721BridgeReceiver, bound to a specific deployed contract. 22578 func NewIERC721BridgeReceiver(address common.Address, backend bind.ContractBackend) (*IERC721BridgeReceiver, error) { 22579 contract, err := bindIERC721BridgeReceiver(address, backend, backend, backend) 22580 if err != nil { 22581 return nil, err 22582 } 22583 return &IERC721BridgeReceiver{IERC721BridgeReceiverCaller: IERC721BridgeReceiverCaller{contract: contract}, IERC721BridgeReceiverTransactor: IERC721BridgeReceiverTransactor{contract: contract}, IERC721BridgeReceiverFilterer: IERC721BridgeReceiverFilterer{contract: contract}}, nil 22584 } 22585 22586 // NewIERC721BridgeReceiverCaller creates a new read-only instance of IERC721BridgeReceiver, bound to a specific deployed contract. 22587 func NewIERC721BridgeReceiverCaller(address common.Address, caller bind.ContractCaller) (*IERC721BridgeReceiverCaller, error) { 22588 contract, err := bindIERC721BridgeReceiver(address, caller, nil, nil) 22589 if err != nil { 22590 return nil, err 22591 } 22592 return &IERC721BridgeReceiverCaller{contract: contract}, nil 22593 } 22594 22595 // NewIERC721BridgeReceiverTransactor creates a new write-only instance of IERC721BridgeReceiver, bound to a specific deployed contract. 22596 func NewIERC721BridgeReceiverTransactor(address common.Address, transactor bind.ContractTransactor) (*IERC721BridgeReceiverTransactor, error) { 22597 contract, err := bindIERC721BridgeReceiver(address, nil, transactor, nil) 22598 if err != nil { 22599 return nil, err 22600 } 22601 return &IERC721BridgeReceiverTransactor{contract: contract}, nil 22602 } 22603 22604 // NewIERC721BridgeReceiverFilterer creates a new log filterer instance of IERC721BridgeReceiver, bound to a specific deployed contract. 22605 func NewIERC721BridgeReceiverFilterer(address common.Address, filterer bind.ContractFilterer) (*IERC721BridgeReceiverFilterer, error) { 22606 contract, err := bindIERC721BridgeReceiver(address, nil, nil, filterer) 22607 if err != nil { 22608 return nil, err 22609 } 22610 return &IERC721BridgeReceiverFilterer{contract: contract}, nil 22611 } 22612 22613 // bindIERC721BridgeReceiver binds a generic wrapper to an already deployed contract. 22614 func bindIERC721BridgeReceiver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 22615 parsed, err := abi.JSON(strings.NewReader(IERC721BridgeReceiverABI)) 22616 if err != nil { 22617 return nil, err 22618 } 22619 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 22620 } 22621 22622 // Call invokes the (constant) contract method with params as input values and 22623 // sets the output to result. The result type might be a single field for simple 22624 // returns, a slice of interfaces for anonymous returns and a struct for named 22625 // returns. 22626 func (_IERC721BridgeReceiver *IERC721BridgeReceiverRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 22627 return _IERC721BridgeReceiver.Contract.IERC721BridgeReceiverCaller.contract.Call(opts, result, method, params...) 22628 } 22629 22630 // Transfer initiates a plain transaction to move funds to the contract, calling 22631 // its default method if one is available. 22632 func (_IERC721BridgeReceiver *IERC721BridgeReceiverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 22633 return _IERC721BridgeReceiver.Contract.IERC721BridgeReceiverTransactor.contract.Transfer(opts) 22634 } 22635 22636 // Transact invokes the (paid) contract method with params as input values. 22637 func (_IERC721BridgeReceiver *IERC721BridgeReceiverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 22638 return _IERC721BridgeReceiver.Contract.IERC721BridgeReceiverTransactor.contract.Transact(opts, method, params...) 22639 } 22640 22641 // Call invokes the (constant) contract method with params as input values and 22642 // sets the output to result. The result type might be a single field for simple 22643 // returns, a slice of interfaces for anonymous returns and a struct for named 22644 // returns. 22645 func (_IERC721BridgeReceiver *IERC721BridgeReceiverCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 22646 return _IERC721BridgeReceiver.Contract.contract.Call(opts, result, method, params...) 22647 } 22648 22649 // Transfer initiates a plain transaction to move funds to the contract, calling 22650 // its default method if one is available. 22651 func (_IERC721BridgeReceiver *IERC721BridgeReceiverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 22652 return _IERC721BridgeReceiver.Contract.contract.Transfer(opts) 22653 } 22654 22655 // Transact invokes the (paid) contract method with params as input values. 22656 func (_IERC721BridgeReceiver *IERC721BridgeReceiverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 22657 return _IERC721BridgeReceiver.Contract.contract.Transact(opts, method, params...) 22658 } 22659 22660 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 22661 // 22662 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 22663 func (_IERC721BridgeReceiver *IERC721BridgeReceiverTransactor) OnERC721Received(opts *bind.TransactOpts, _from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 22664 return _IERC721BridgeReceiver.contract.Transact(opts, "onERC721Received", _from, _tokenId, _to, _extraData) 22665 } 22666 22667 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 22668 // 22669 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 22670 func (_IERC721BridgeReceiver *IERC721BridgeReceiverSession) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 22671 return _IERC721BridgeReceiver.Contract.OnERC721Received(&_IERC721BridgeReceiver.TransactOpts, _from, _tokenId, _to, _extraData) 22672 } 22673 22674 // OnERC721Received is a paid mutator transaction binding the contract method 0xcf0da290. 22675 // 22676 // Solidity: function onERC721Received(address _from, uint256 _tokenId, address _to, bytes _extraData) returns() 22677 func (_IERC721BridgeReceiver *IERC721BridgeReceiverTransactorSession) OnERC721Received(_from common.Address, _tokenId *big.Int, _to common.Address, _extraData []byte) (*types.Transaction, error) { 22678 return _IERC721BridgeReceiver.Contract.OnERC721Received(&_IERC721BridgeReceiver.TransactOpts, _from, _tokenId, _to, _extraData) 22679 } 22680 22681 // IERC721MetadataABI is the input ABI used to generate the binding from. 22682 const IERC721MetadataABI = "[{\"constant\":true,\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"name\":\"operator\",\"type\":\"address\"}],\"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\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"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\":true,\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"operator\",\"type\":\"address\"},{\"name\":\"_approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"to\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"}]" 22683 22684 // IERC721MetadataBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 22685 const IERC721MetadataBinRuntime = `` 22686 22687 // IERC721MetadataFuncSigs maps the 4-byte function signature to its string representation. 22688 var IERC721MetadataFuncSigs = map[string]string{ 22689 "095ea7b3": "approve(address,uint256)", 22690 "70a08231": "balanceOf(address)", 22691 "081812fc": "getApproved(uint256)", 22692 "e985e9c5": "isApprovedForAll(address,address)", 22693 "06fdde03": "name()", 22694 "6352211e": "ownerOf(uint256)", 22695 "42842e0e": "safeTransferFrom(address,address,uint256)", 22696 "b88d4fde": "safeTransferFrom(address,address,uint256,bytes)", 22697 "a22cb465": "setApprovalForAll(address,bool)", 22698 "01ffc9a7": "supportsInterface(bytes4)", 22699 "95d89b41": "symbol()", 22700 "c87b56dd": "tokenURI(uint256)", 22701 "23b872dd": "transferFrom(address,address,uint256)", 22702 } 22703 22704 // IERC721Metadata is an auto generated Go binding around a Klaytn contract. 22705 type IERC721Metadata struct { 22706 IERC721MetadataCaller // Read-only binding to the contract 22707 IERC721MetadataTransactor // Write-only binding to the contract 22708 IERC721MetadataFilterer // Log filterer for contract events 22709 } 22710 22711 // IERC721MetadataCaller is an auto generated read-only Go binding around a Klaytn contract. 22712 type IERC721MetadataCaller struct { 22713 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22714 } 22715 22716 // IERC721MetadataTransactor is an auto generated write-only Go binding around a Klaytn contract. 22717 type IERC721MetadataTransactor struct { 22718 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22719 } 22720 22721 // IERC721MetadataFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 22722 type IERC721MetadataFilterer struct { 22723 contract *bind.BoundContract // Generic contract wrapper for the low level calls 22724 } 22725 22726 // IERC721MetadataSession is an auto generated Go binding around a Klaytn contract, 22727 // with pre-set call and transact options. 22728 type IERC721MetadataSession struct { 22729 Contract *IERC721Metadata // Generic contract binding to set the session for 22730 CallOpts bind.CallOpts // Call options to use throughout this session 22731 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 22732 } 22733 22734 // IERC721MetadataCallerSession is an auto generated read-only Go binding around a Klaytn contract, 22735 // with pre-set call options. 22736 type IERC721MetadataCallerSession struct { 22737 Contract *IERC721MetadataCaller // Generic contract caller binding to set the session for 22738 CallOpts bind.CallOpts // Call options to use throughout this session 22739 } 22740 22741 // IERC721MetadataTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 22742 // with pre-set transact options. 22743 type IERC721MetadataTransactorSession struct { 22744 Contract *IERC721MetadataTransactor // Generic contract transactor binding to set the session for 22745 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 22746 } 22747 22748 // IERC721MetadataRaw is an auto generated low-level Go binding around a Klaytn contract. 22749 type IERC721MetadataRaw struct { 22750 Contract *IERC721Metadata // Generic contract binding to access the raw methods on 22751 } 22752 22753 // IERC721MetadataCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 22754 type IERC721MetadataCallerRaw struct { 22755 Contract *IERC721MetadataCaller // Generic read-only contract binding to access the raw methods on 22756 } 22757 22758 // IERC721MetadataTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 22759 type IERC721MetadataTransactorRaw struct { 22760 Contract *IERC721MetadataTransactor // Generic write-only contract binding to access the raw methods on 22761 } 22762 22763 // NewIERC721Metadata creates a new instance of IERC721Metadata, bound to a specific deployed contract. 22764 func NewIERC721Metadata(address common.Address, backend bind.ContractBackend) (*IERC721Metadata, error) { 22765 contract, err := bindIERC721Metadata(address, backend, backend, backend) 22766 if err != nil { 22767 return nil, err 22768 } 22769 return &IERC721Metadata{IERC721MetadataCaller: IERC721MetadataCaller{contract: contract}, IERC721MetadataTransactor: IERC721MetadataTransactor{contract: contract}, IERC721MetadataFilterer: IERC721MetadataFilterer{contract: contract}}, nil 22770 } 22771 22772 // NewIERC721MetadataCaller creates a new read-only instance of IERC721Metadata, bound to a specific deployed contract. 22773 func NewIERC721MetadataCaller(address common.Address, caller bind.ContractCaller) (*IERC721MetadataCaller, error) { 22774 contract, err := bindIERC721Metadata(address, caller, nil, nil) 22775 if err != nil { 22776 return nil, err 22777 } 22778 return &IERC721MetadataCaller{contract: contract}, nil 22779 } 22780 22781 // NewIERC721MetadataTransactor creates a new write-only instance of IERC721Metadata, bound to a specific deployed contract. 22782 func NewIERC721MetadataTransactor(address common.Address, transactor bind.ContractTransactor) (*IERC721MetadataTransactor, error) { 22783 contract, err := bindIERC721Metadata(address, nil, transactor, nil) 22784 if err != nil { 22785 return nil, err 22786 } 22787 return &IERC721MetadataTransactor{contract: contract}, nil 22788 } 22789 22790 // NewIERC721MetadataFilterer creates a new log filterer instance of IERC721Metadata, bound to a specific deployed contract. 22791 func NewIERC721MetadataFilterer(address common.Address, filterer bind.ContractFilterer) (*IERC721MetadataFilterer, error) { 22792 contract, err := bindIERC721Metadata(address, nil, nil, filterer) 22793 if err != nil { 22794 return nil, err 22795 } 22796 return &IERC721MetadataFilterer{contract: contract}, nil 22797 } 22798 22799 // bindIERC721Metadata binds a generic wrapper to an already deployed contract. 22800 func bindIERC721Metadata(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 22801 parsed, err := abi.JSON(strings.NewReader(IERC721MetadataABI)) 22802 if err != nil { 22803 return nil, err 22804 } 22805 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 22806 } 22807 22808 // Call invokes the (constant) contract method with params as input values and 22809 // sets the output to result. The result type might be a single field for simple 22810 // returns, a slice of interfaces for anonymous returns and a struct for named 22811 // returns. 22812 func (_IERC721Metadata *IERC721MetadataRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 22813 return _IERC721Metadata.Contract.IERC721MetadataCaller.contract.Call(opts, result, method, params...) 22814 } 22815 22816 // Transfer initiates a plain transaction to move funds to the contract, calling 22817 // its default method if one is available. 22818 func (_IERC721Metadata *IERC721MetadataRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 22819 return _IERC721Metadata.Contract.IERC721MetadataTransactor.contract.Transfer(opts) 22820 } 22821 22822 // Transact invokes the (paid) contract method with params as input values. 22823 func (_IERC721Metadata *IERC721MetadataRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 22824 return _IERC721Metadata.Contract.IERC721MetadataTransactor.contract.Transact(opts, method, params...) 22825 } 22826 22827 // Call invokes the (constant) contract method with params as input values and 22828 // sets the output to result. The result type might be a single field for simple 22829 // returns, a slice of interfaces for anonymous returns and a struct for named 22830 // returns. 22831 func (_IERC721Metadata *IERC721MetadataCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 22832 return _IERC721Metadata.Contract.contract.Call(opts, result, method, params...) 22833 } 22834 22835 // Transfer initiates a plain transaction to move funds to the contract, calling 22836 // its default method if one is available. 22837 func (_IERC721Metadata *IERC721MetadataTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 22838 return _IERC721Metadata.Contract.contract.Transfer(opts) 22839 } 22840 22841 // Transact invokes the (paid) contract method with params as input values. 22842 func (_IERC721Metadata *IERC721MetadataTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 22843 return _IERC721Metadata.Contract.contract.Transact(opts, method, params...) 22844 } 22845 22846 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 22847 // 22848 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 22849 func (_IERC721Metadata *IERC721MetadataCaller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error) { 22850 var ( 22851 ret0 = new(*big.Int) 22852 ) 22853 out := ret0 22854 err := _IERC721Metadata.contract.Call(opts, out, "balanceOf", owner) 22855 return *ret0, err 22856 } 22857 22858 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 22859 // 22860 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 22861 func (_IERC721Metadata *IERC721MetadataSession) BalanceOf(owner common.Address) (*big.Int, error) { 22862 return _IERC721Metadata.Contract.BalanceOf(&_IERC721Metadata.CallOpts, owner) 22863 } 22864 22865 // BalanceOf is a free data retrieval call binding the contract method 0x70a08231. 22866 // 22867 // Solidity: function balanceOf(address owner) view returns(uint256 balance) 22868 func (_IERC721Metadata *IERC721MetadataCallerSession) BalanceOf(owner common.Address) (*big.Int, error) { 22869 return _IERC721Metadata.Contract.BalanceOf(&_IERC721Metadata.CallOpts, owner) 22870 } 22871 22872 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 22873 // 22874 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 22875 func (_IERC721Metadata *IERC721MetadataCaller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 22876 var ( 22877 ret0 = new(common.Address) 22878 ) 22879 out := ret0 22880 err := _IERC721Metadata.contract.Call(opts, out, "getApproved", tokenId) 22881 return *ret0, err 22882 } 22883 22884 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 22885 // 22886 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 22887 func (_IERC721Metadata *IERC721MetadataSession) GetApproved(tokenId *big.Int) (common.Address, error) { 22888 return _IERC721Metadata.Contract.GetApproved(&_IERC721Metadata.CallOpts, tokenId) 22889 } 22890 22891 // GetApproved is a free data retrieval call binding the contract method 0x081812fc. 22892 // 22893 // Solidity: function getApproved(uint256 tokenId) view returns(address operator) 22894 func (_IERC721Metadata *IERC721MetadataCallerSession) GetApproved(tokenId *big.Int) (common.Address, error) { 22895 return _IERC721Metadata.Contract.GetApproved(&_IERC721Metadata.CallOpts, tokenId) 22896 } 22897 22898 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 22899 // 22900 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 22901 func (_IERC721Metadata *IERC721MetadataCaller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error) { 22902 var ( 22903 ret0 = new(bool) 22904 ) 22905 out := ret0 22906 err := _IERC721Metadata.contract.Call(opts, out, "isApprovedForAll", owner, operator) 22907 return *ret0, err 22908 } 22909 22910 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 22911 // 22912 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 22913 func (_IERC721Metadata *IERC721MetadataSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 22914 return _IERC721Metadata.Contract.IsApprovedForAll(&_IERC721Metadata.CallOpts, owner, operator) 22915 } 22916 22917 // IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5. 22918 // 22919 // Solidity: function isApprovedForAll(address owner, address operator) view returns(bool) 22920 func (_IERC721Metadata *IERC721MetadataCallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error) { 22921 return _IERC721Metadata.Contract.IsApprovedForAll(&_IERC721Metadata.CallOpts, owner, operator) 22922 } 22923 22924 // Name is a free data retrieval call binding the contract method 0x06fdde03. 22925 // 22926 // Solidity: function name() view returns(string) 22927 func (_IERC721Metadata *IERC721MetadataCaller) Name(opts *bind.CallOpts) (string, error) { 22928 var ( 22929 ret0 = new(string) 22930 ) 22931 out := ret0 22932 err := _IERC721Metadata.contract.Call(opts, out, "name") 22933 return *ret0, err 22934 } 22935 22936 // Name is a free data retrieval call binding the contract method 0x06fdde03. 22937 // 22938 // Solidity: function name() view returns(string) 22939 func (_IERC721Metadata *IERC721MetadataSession) Name() (string, error) { 22940 return _IERC721Metadata.Contract.Name(&_IERC721Metadata.CallOpts) 22941 } 22942 22943 // Name is a free data retrieval call binding the contract method 0x06fdde03. 22944 // 22945 // Solidity: function name() view returns(string) 22946 func (_IERC721Metadata *IERC721MetadataCallerSession) Name() (string, error) { 22947 return _IERC721Metadata.Contract.Name(&_IERC721Metadata.CallOpts) 22948 } 22949 22950 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 22951 // 22952 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 22953 func (_IERC721Metadata *IERC721MetadataCaller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error) { 22954 var ( 22955 ret0 = new(common.Address) 22956 ) 22957 out := ret0 22958 err := _IERC721Metadata.contract.Call(opts, out, "ownerOf", tokenId) 22959 return *ret0, err 22960 } 22961 22962 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 22963 // 22964 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 22965 func (_IERC721Metadata *IERC721MetadataSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 22966 return _IERC721Metadata.Contract.OwnerOf(&_IERC721Metadata.CallOpts, tokenId) 22967 } 22968 22969 // OwnerOf is a free data retrieval call binding the contract method 0x6352211e. 22970 // 22971 // Solidity: function ownerOf(uint256 tokenId) view returns(address owner) 22972 func (_IERC721Metadata *IERC721MetadataCallerSession) OwnerOf(tokenId *big.Int) (common.Address, error) { 22973 return _IERC721Metadata.Contract.OwnerOf(&_IERC721Metadata.CallOpts, tokenId) 22974 } 22975 22976 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 22977 // 22978 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 22979 func (_IERC721Metadata *IERC721MetadataCaller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error) { 22980 var ( 22981 ret0 = new(bool) 22982 ) 22983 out := ret0 22984 err := _IERC721Metadata.contract.Call(opts, out, "supportsInterface", interfaceId) 22985 return *ret0, err 22986 } 22987 22988 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 22989 // 22990 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 22991 func (_IERC721Metadata *IERC721MetadataSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 22992 return _IERC721Metadata.Contract.SupportsInterface(&_IERC721Metadata.CallOpts, interfaceId) 22993 } 22994 22995 // SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7. 22996 // 22997 // Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool) 22998 func (_IERC721Metadata *IERC721MetadataCallerSession) SupportsInterface(interfaceId [4]byte) (bool, error) { 22999 return _IERC721Metadata.Contract.SupportsInterface(&_IERC721Metadata.CallOpts, interfaceId) 23000 } 23001 23002 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 23003 // 23004 // Solidity: function symbol() view returns(string) 23005 func (_IERC721Metadata *IERC721MetadataCaller) Symbol(opts *bind.CallOpts) (string, error) { 23006 var ( 23007 ret0 = new(string) 23008 ) 23009 out := ret0 23010 err := _IERC721Metadata.contract.Call(opts, out, "symbol") 23011 return *ret0, err 23012 } 23013 23014 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 23015 // 23016 // Solidity: function symbol() view returns(string) 23017 func (_IERC721Metadata *IERC721MetadataSession) Symbol() (string, error) { 23018 return _IERC721Metadata.Contract.Symbol(&_IERC721Metadata.CallOpts) 23019 } 23020 23021 // Symbol is a free data retrieval call binding the contract method 0x95d89b41. 23022 // 23023 // Solidity: function symbol() view returns(string) 23024 func (_IERC721Metadata *IERC721MetadataCallerSession) Symbol() (string, error) { 23025 return _IERC721Metadata.Contract.Symbol(&_IERC721Metadata.CallOpts) 23026 } 23027 23028 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 23029 // 23030 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 23031 func (_IERC721Metadata *IERC721MetadataCaller) TokenURI(opts *bind.CallOpts, tokenId *big.Int) (string, error) { 23032 var ( 23033 ret0 = new(string) 23034 ) 23035 out := ret0 23036 err := _IERC721Metadata.contract.Call(opts, out, "tokenURI", tokenId) 23037 return *ret0, err 23038 } 23039 23040 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 23041 // 23042 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 23043 func (_IERC721Metadata *IERC721MetadataSession) TokenURI(tokenId *big.Int) (string, error) { 23044 return _IERC721Metadata.Contract.TokenURI(&_IERC721Metadata.CallOpts, tokenId) 23045 } 23046 23047 // TokenURI is a free data retrieval call binding the contract method 0xc87b56dd. 23048 // 23049 // Solidity: function tokenURI(uint256 tokenId) view returns(string) 23050 func (_IERC721Metadata *IERC721MetadataCallerSession) TokenURI(tokenId *big.Int) (string, error) { 23051 return _IERC721Metadata.Contract.TokenURI(&_IERC721Metadata.CallOpts, tokenId) 23052 } 23053 23054 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 23055 // 23056 // Solidity: function approve(address to, uint256 tokenId) returns() 23057 func (_IERC721Metadata *IERC721MetadataTransactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23058 return _IERC721Metadata.contract.Transact(opts, "approve", to, tokenId) 23059 } 23060 23061 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 23062 // 23063 // Solidity: function approve(address to, uint256 tokenId) returns() 23064 func (_IERC721Metadata *IERC721MetadataSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23065 return _IERC721Metadata.Contract.Approve(&_IERC721Metadata.TransactOpts, to, tokenId) 23066 } 23067 23068 // Approve is a paid mutator transaction binding the contract method 0x095ea7b3. 23069 // 23070 // Solidity: function approve(address to, uint256 tokenId) returns() 23071 func (_IERC721Metadata *IERC721MetadataTransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23072 return _IERC721Metadata.Contract.Approve(&_IERC721Metadata.TransactOpts, to, tokenId) 23073 } 23074 23075 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 23076 // 23077 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 23078 func (_IERC721Metadata *IERC721MetadataTransactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23079 return _IERC721Metadata.contract.Transact(opts, "safeTransferFrom", from, to, tokenId) 23080 } 23081 23082 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 23083 // 23084 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 23085 func (_IERC721Metadata *IERC721MetadataSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23086 return _IERC721Metadata.Contract.SafeTransferFrom(&_IERC721Metadata.TransactOpts, from, to, tokenId) 23087 } 23088 23089 // SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e. 23090 // 23091 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns() 23092 func (_IERC721Metadata *IERC721MetadataTransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23093 return _IERC721Metadata.Contract.SafeTransferFrom(&_IERC721Metadata.TransactOpts, from, to, tokenId) 23094 } 23095 23096 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 23097 // 23098 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 23099 func (_IERC721Metadata *IERC721MetadataTransactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23100 return _IERC721Metadata.contract.Transact(opts, "safeTransferFrom0", from, to, tokenId, data) 23101 } 23102 23103 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 23104 // 23105 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 23106 func (_IERC721Metadata *IERC721MetadataSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23107 return _IERC721Metadata.Contract.SafeTransferFrom0(&_IERC721Metadata.TransactOpts, from, to, tokenId, data) 23108 } 23109 23110 // SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde. 23111 // 23112 // Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns() 23113 func (_IERC721Metadata *IERC721MetadataTransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23114 return _IERC721Metadata.Contract.SafeTransferFrom0(&_IERC721Metadata.TransactOpts, from, to, tokenId, data) 23115 } 23116 23117 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 23118 // 23119 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 23120 func (_IERC721Metadata *IERC721MetadataTransactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, _approved bool) (*types.Transaction, error) { 23121 return _IERC721Metadata.contract.Transact(opts, "setApprovalForAll", operator, _approved) 23122 } 23123 23124 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 23125 // 23126 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 23127 func (_IERC721Metadata *IERC721MetadataSession) SetApprovalForAll(operator common.Address, _approved bool) (*types.Transaction, error) { 23128 return _IERC721Metadata.Contract.SetApprovalForAll(&_IERC721Metadata.TransactOpts, operator, _approved) 23129 } 23130 23131 // SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465. 23132 // 23133 // Solidity: function setApprovalForAll(address operator, bool _approved) returns() 23134 func (_IERC721Metadata *IERC721MetadataTransactorSession) SetApprovalForAll(operator common.Address, _approved bool) (*types.Transaction, error) { 23135 return _IERC721Metadata.Contract.SetApprovalForAll(&_IERC721Metadata.TransactOpts, operator, _approved) 23136 } 23137 23138 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 23139 // 23140 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 23141 func (_IERC721Metadata *IERC721MetadataTransactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23142 return _IERC721Metadata.contract.Transact(opts, "transferFrom", from, to, tokenId) 23143 } 23144 23145 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 23146 // 23147 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 23148 func (_IERC721Metadata *IERC721MetadataSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23149 return _IERC721Metadata.Contract.TransferFrom(&_IERC721Metadata.TransactOpts, from, to, tokenId) 23150 } 23151 23152 // TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd. 23153 // 23154 // Solidity: function transferFrom(address from, address to, uint256 tokenId) returns() 23155 func (_IERC721Metadata *IERC721MetadataTransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error) { 23156 return _IERC721Metadata.Contract.TransferFrom(&_IERC721Metadata.TransactOpts, from, to, tokenId) 23157 } 23158 23159 // IERC721MetadataApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the IERC721Metadata contract. 23160 type IERC721MetadataApprovalIterator struct { 23161 Event *IERC721MetadataApproval // Event containing the contract specifics and raw log 23162 23163 contract *bind.BoundContract // Generic contract to use for unpacking event data 23164 event string // Event name to use for unpacking event data 23165 23166 logs chan types.Log // Log channel receiving the found contract events 23167 sub klaytn.Subscription // Subscription for errors, completion and termination 23168 done bool // Whether the subscription completed delivering logs 23169 fail error // Occurred error to stop iteration 23170 } 23171 23172 // Next advances the iterator to the subsequent event, returning whether there 23173 // are any more events found. In case of a retrieval or parsing error, false is 23174 // returned and Error() can be queried for the exact failure. 23175 func (it *IERC721MetadataApprovalIterator) Next() bool { 23176 // If the iterator failed, stop iterating 23177 if it.fail != nil { 23178 return false 23179 } 23180 // If the iterator completed, deliver directly whatever's available 23181 if it.done { 23182 select { 23183 case log := <-it.logs: 23184 it.Event = new(IERC721MetadataApproval) 23185 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23186 it.fail = err 23187 return false 23188 } 23189 it.Event.Raw = log 23190 return true 23191 23192 default: 23193 return false 23194 } 23195 } 23196 // Iterator still in progress, wait for either a data or an error event 23197 select { 23198 case log := <-it.logs: 23199 it.Event = new(IERC721MetadataApproval) 23200 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23201 it.fail = err 23202 return false 23203 } 23204 it.Event.Raw = log 23205 return true 23206 23207 case err := <-it.sub.Err(): 23208 it.done = true 23209 it.fail = err 23210 return it.Next() 23211 } 23212 } 23213 23214 // Error returns any retrieval or parsing error occurred during filtering. 23215 func (it *IERC721MetadataApprovalIterator) Error() error { 23216 return it.fail 23217 } 23218 23219 // Close terminates the iteration process, releasing any pending underlying 23220 // resources. 23221 func (it *IERC721MetadataApprovalIterator) Close() error { 23222 it.sub.Unsubscribe() 23223 return nil 23224 } 23225 23226 // IERC721MetadataApproval represents a Approval event raised by the IERC721Metadata contract. 23227 type IERC721MetadataApproval struct { 23228 Owner common.Address 23229 Approved common.Address 23230 TokenId *big.Int 23231 Raw types.Log // Blockchain specific contextual infos 23232 } 23233 23234 // FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 23235 // 23236 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 23237 func (_IERC721Metadata *IERC721MetadataFilterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*IERC721MetadataApprovalIterator, error) { 23238 23239 var ownerRule []interface{} 23240 for _, ownerItem := range owner { 23241 ownerRule = append(ownerRule, ownerItem) 23242 } 23243 var approvedRule []interface{} 23244 for _, approvedItem := range approved { 23245 approvedRule = append(approvedRule, approvedItem) 23246 } 23247 var tokenIdRule []interface{} 23248 for _, tokenIdItem := range tokenId { 23249 tokenIdRule = append(tokenIdRule, tokenIdItem) 23250 } 23251 23252 logs, sub, err := _IERC721Metadata.contract.FilterLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 23253 if err != nil { 23254 return nil, err 23255 } 23256 return &IERC721MetadataApprovalIterator{contract: _IERC721Metadata.contract, event: "Approval", logs: logs, sub: sub}, nil 23257 } 23258 23259 // WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 23260 // 23261 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 23262 func (_IERC721Metadata *IERC721MetadataFilterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *IERC721MetadataApproval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error) { 23263 23264 var ownerRule []interface{} 23265 for _, ownerItem := range owner { 23266 ownerRule = append(ownerRule, ownerItem) 23267 } 23268 var approvedRule []interface{} 23269 for _, approvedItem := range approved { 23270 approvedRule = append(approvedRule, approvedItem) 23271 } 23272 var tokenIdRule []interface{} 23273 for _, tokenIdItem := range tokenId { 23274 tokenIdRule = append(tokenIdRule, tokenIdItem) 23275 } 23276 23277 logs, sub, err := _IERC721Metadata.contract.WatchLogs(opts, "Approval", ownerRule, approvedRule, tokenIdRule) 23278 if err != nil { 23279 return nil, err 23280 } 23281 return event.NewSubscription(func(quit <-chan struct{}) error { 23282 defer sub.Unsubscribe() 23283 for { 23284 select { 23285 case log := <-logs: 23286 // New log arrived, parse the event and forward to the user 23287 event := new(IERC721MetadataApproval) 23288 if err := _IERC721Metadata.contract.UnpackLog(event, "Approval", log); err != nil { 23289 return err 23290 } 23291 event.Raw = log 23292 23293 select { 23294 case sink <- event: 23295 case err := <-sub.Err(): 23296 return err 23297 case <-quit: 23298 return nil 23299 } 23300 case err := <-sub.Err(): 23301 return err 23302 case <-quit: 23303 return nil 23304 } 23305 } 23306 }), nil 23307 } 23308 23309 // ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925. 23310 // 23311 // Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId) 23312 func (_IERC721Metadata *IERC721MetadataFilterer) ParseApproval(log types.Log) (*IERC721MetadataApproval, error) { 23313 event := new(IERC721MetadataApproval) 23314 if err := _IERC721Metadata.contract.UnpackLog(event, "Approval", log); err != nil { 23315 return nil, err 23316 } 23317 return event, nil 23318 } 23319 23320 // IERC721MetadataApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the IERC721Metadata contract. 23321 type IERC721MetadataApprovalForAllIterator struct { 23322 Event *IERC721MetadataApprovalForAll // Event containing the contract specifics and raw log 23323 23324 contract *bind.BoundContract // Generic contract to use for unpacking event data 23325 event string // Event name to use for unpacking event data 23326 23327 logs chan types.Log // Log channel receiving the found contract events 23328 sub klaytn.Subscription // Subscription for errors, completion and termination 23329 done bool // Whether the subscription completed delivering logs 23330 fail error // Occurred error to stop iteration 23331 } 23332 23333 // Next advances the iterator to the subsequent event, returning whether there 23334 // are any more events found. In case of a retrieval or parsing error, false is 23335 // returned and Error() can be queried for the exact failure. 23336 func (it *IERC721MetadataApprovalForAllIterator) Next() bool { 23337 // If the iterator failed, stop iterating 23338 if it.fail != nil { 23339 return false 23340 } 23341 // If the iterator completed, deliver directly whatever's available 23342 if it.done { 23343 select { 23344 case log := <-it.logs: 23345 it.Event = new(IERC721MetadataApprovalForAll) 23346 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23347 it.fail = err 23348 return false 23349 } 23350 it.Event.Raw = log 23351 return true 23352 23353 default: 23354 return false 23355 } 23356 } 23357 // Iterator still in progress, wait for either a data or an error event 23358 select { 23359 case log := <-it.logs: 23360 it.Event = new(IERC721MetadataApprovalForAll) 23361 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23362 it.fail = err 23363 return false 23364 } 23365 it.Event.Raw = log 23366 return true 23367 23368 case err := <-it.sub.Err(): 23369 it.done = true 23370 it.fail = err 23371 return it.Next() 23372 } 23373 } 23374 23375 // Error returns any retrieval or parsing error occurred during filtering. 23376 func (it *IERC721MetadataApprovalForAllIterator) Error() error { 23377 return it.fail 23378 } 23379 23380 // Close terminates the iteration process, releasing any pending underlying 23381 // resources. 23382 func (it *IERC721MetadataApprovalForAllIterator) Close() error { 23383 it.sub.Unsubscribe() 23384 return nil 23385 } 23386 23387 // IERC721MetadataApprovalForAll represents a ApprovalForAll event raised by the IERC721Metadata contract. 23388 type IERC721MetadataApprovalForAll struct { 23389 Owner common.Address 23390 Operator common.Address 23391 Approved bool 23392 Raw types.Log // Blockchain specific contextual infos 23393 } 23394 23395 // FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 23396 // 23397 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 23398 func (_IERC721Metadata *IERC721MetadataFilterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*IERC721MetadataApprovalForAllIterator, error) { 23399 23400 var ownerRule []interface{} 23401 for _, ownerItem := range owner { 23402 ownerRule = append(ownerRule, ownerItem) 23403 } 23404 var operatorRule []interface{} 23405 for _, operatorItem := range operator { 23406 operatorRule = append(operatorRule, operatorItem) 23407 } 23408 23409 logs, sub, err := _IERC721Metadata.contract.FilterLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 23410 if err != nil { 23411 return nil, err 23412 } 23413 return &IERC721MetadataApprovalForAllIterator{contract: _IERC721Metadata.contract, event: "ApprovalForAll", logs: logs, sub: sub}, nil 23414 } 23415 23416 // WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 23417 // 23418 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 23419 func (_IERC721Metadata *IERC721MetadataFilterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *IERC721MetadataApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error) { 23420 23421 var ownerRule []interface{} 23422 for _, ownerItem := range owner { 23423 ownerRule = append(ownerRule, ownerItem) 23424 } 23425 var operatorRule []interface{} 23426 for _, operatorItem := range operator { 23427 operatorRule = append(operatorRule, operatorItem) 23428 } 23429 23430 logs, sub, err := _IERC721Metadata.contract.WatchLogs(opts, "ApprovalForAll", ownerRule, operatorRule) 23431 if err != nil { 23432 return nil, err 23433 } 23434 return event.NewSubscription(func(quit <-chan struct{}) error { 23435 defer sub.Unsubscribe() 23436 for { 23437 select { 23438 case log := <-logs: 23439 // New log arrived, parse the event and forward to the user 23440 event := new(IERC721MetadataApprovalForAll) 23441 if err := _IERC721Metadata.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 23442 return err 23443 } 23444 event.Raw = log 23445 23446 select { 23447 case sink <- event: 23448 case err := <-sub.Err(): 23449 return err 23450 case <-quit: 23451 return nil 23452 } 23453 case err := <-sub.Err(): 23454 return err 23455 case <-quit: 23456 return nil 23457 } 23458 } 23459 }), nil 23460 } 23461 23462 // ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31. 23463 // 23464 // Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved) 23465 func (_IERC721Metadata *IERC721MetadataFilterer) ParseApprovalForAll(log types.Log) (*IERC721MetadataApprovalForAll, error) { 23466 event := new(IERC721MetadataApprovalForAll) 23467 if err := _IERC721Metadata.contract.UnpackLog(event, "ApprovalForAll", log); err != nil { 23468 return nil, err 23469 } 23470 return event, nil 23471 } 23472 23473 // IERC721MetadataTransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the IERC721Metadata contract. 23474 type IERC721MetadataTransferIterator struct { 23475 Event *IERC721MetadataTransfer // Event containing the contract specifics and raw log 23476 23477 contract *bind.BoundContract // Generic contract to use for unpacking event data 23478 event string // Event name to use for unpacking event data 23479 23480 logs chan types.Log // Log channel receiving the found contract events 23481 sub klaytn.Subscription // Subscription for errors, completion and termination 23482 done bool // Whether the subscription completed delivering logs 23483 fail error // Occurred error to stop iteration 23484 } 23485 23486 // Next advances the iterator to the subsequent event, returning whether there 23487 // are any more events found. In case of a retrieval or parsing error, false is 23488 // returned and Error() can be queried for the exact failure. 23489 func (it *IERC721MetadataTransferIterator) Next() bool { 23490 // If the iterator failed, stop iterating 23491 if it.fail != nil { 23492 return false 23493 } 23494 // If the iterator completed, deliver directly whatever's available 23495 if it.done { 23496 select { 23497 case log := <-it.logs: 23498 it.Event = new(IERC721MetadataTransfer) 23499 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23500 it.fail = err 23501 return false 23502 } 23503 it.Event.Raw = log 23504 return true 23505 23506 default: 23507 return false 23508 } 23509 } 23510 // Iterator still in progress, wait for either a data or an error event 23511 select { 23512 case log := <-it.logs: 23513 it.Event = new(IERC721MetadataTransfer) 23514 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 23515 it.fail = err 23516 return false 23517 } 23518 it.Event.Raw = log 23519 return true 23520 23521 case err := <-it.sub.Err(): 23522 it.done = true 23523 it.fail = err 23524 return it.Next() 23525 } 23526 } 23527 23528 // Error returns any retrieval or parsing error occurred during filtering. 23529 func (it *IERC721MetadataTransferIterator) Error() error { 23530 return it.fail 23531 } 23532 23533 // Close terminates the iteration process, releasing any pending underlying 23534 // resources. 23535 func (it *IERC721MetadataTransferIterator) Close() error { 23536 it.sub.Unsubscribe() 23537 return nil 23538 } 23539 23540 // IERC721MetadataTransfer represents a Transfer event raised by the IERC721Metadata contract. 23541 type IERC721MetadataTransfer struct { 23542 From common.Address 23543 To common.Address 23544 TokenId *big.Int 23545 Raw types.Log // Blockchain specific contextual infos 23546 } 23547 23548 // FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 23549 // 23550 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 23551 func (_IERC721Metadata *IERC721MetadataFilterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*IERC721MetadataTransferIterator, error) { 23552 23553 var fromRule []interface{} 23554 for _, fromItem := range from { 23555 fromRule = append(fromRule, fromItem) 23556 } 23557 var toRule []interface{} 23558 for _, toItem := range to { 23559 toRule = append(toRule, toItem) 23560 } 23561 var tokenIdRule []interface{} 23562 for _, tokenIdItem := range tokenId { 23563 tokenIdRule = append(tokenIdRule, tokenIdItem) 23564 } 23565 23566 logs, sub, err := _IERC721Metadata.contract.FilterLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 23567 if err != nil { 23568 return nil, err 23569 } 23570 return &IERC721MetadataTransferIterator{contract: _IERC721Metadata.contract, event: "Transfer", logs: logs, sub: sub}, nil 23571 } 23572 23573 // WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 23574 // 23575 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 23576 func (_IERC721Metadata *IERC721MetadataFilterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *IERC721MetadataTransfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error) { 23577 23578 var fromRule []interface{} 23579 for _, fromItem := range from { 23580 fromRule = append(fromRule, fromItem) 23581 } 23582 var toRule []interface{} 23583 for _, toItem := range to { 23584 toRule = append(toRule, toItem) 23585 } 23586 var tokenIdRule []interface{} 23587 for _, tokenIdItem := range tokenId { 23588 tokenIdRule = append(tokenIdRule, tokenIdItem) 23589 } 23590 23591 logs, sub, err := _IERC721Metadata.contract.WatchLogs(opts, "Transfer", fromRule, toRule, tokenIdRule) 23592 if err != nil { 23593 return nil, err 23594 } 23595 return event.NewSubscription(func(quit <-chan struct{}) error { 23596 defer sub.Unsubscribe() 23597 for { 23598 select { 23599 case log := <-logs: 23600 // New log arrived, parse the event and forward to the user 23601 event := new(IERC721MetadataTransfer) 23602 if err := _IERC721Metadata.contract.UnpackLog(event, "Transfer", log); err != nil { 23603 return err 23604 } 23605 event.Raw = log 23606 23607 select { 23608 case sink <- event: 23609 case err := <-sub.Err(): 23610 return err 23611 case <-quit: 23612 return nil 23613 } 23614 case err := <-sub.Err(): 23615 return err 23616 case <-quit: 23617 return nil 23618 } 23619 } 23620 }), nil 23621 } 23622 23623 // ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef. 23624 // 23625 // Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId) 23626 func (_IERC721Metadata *IERC721MetadataFilterer) ParseTransfer(log types.Log) (*IERC721MetadataTransfer, error) { 23627 event := new(IERC721MetadataTransfer) 23628 if err := _IERC721Metadata.contract.UnpackLog(event, "Transfer", log); err != nil { 23629 return nil, err 23630 } 23631 return event, nil 23632 } 23633 23634 // IERC721ReceiverABI is the input ABI used to generate the binding from. 23635 const IERC721ReceiverABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"operator\",\"type\":\"address\"},{\"name\":\"from\",\"type\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[{\"name\":\"\",\"type\":\"bytes4\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]" 23636 23637 // IERC721ReceiverBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 23638 const IERC721ReceiverBinRuntime = `` 23639 23640 // IERC721ReceiverFuncSigs maps the 4-byte function signature to its string representation. 23641 var IERC721ReceiverFuncSigs = map[string]string{ 23642 "150b7a02": "onERC721Received(address,address,uint256,bytes)", 23643 } 23644 23645 // IERC721Receiver is an auto generated Go binding around a Klaytn contract. 23646 type IERC721Receiver struct { 23647 IERC721ReceiverCaller // Read-only binding to the contract 23648 IERC721ReceiverTransactor // Write-only binding to the contract 23649 IERC721ReceiverFilterer // Log filterer for contract events 23650 } 23651 23652 // IERC721ReceiverCaller is an auto generated read-only Go binding around a Klaytn contract. 23653 type IERC721ReceiverCaller struct { 23654 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23655 } 23656 23657 // IERC721ReceiverTransactor is an auto generated write-only Go binding around a Klaytn contract. 23658 type IERC721ReceiverTransactor struct { 23659 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23660 } 23661 23662 // IERC721ReceiverFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 23663 type IERC721ReceiverFilterer struct { 23664 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23665 } 23666 23667 // IERC721ReceiverSession is an auto generated Go binding around a Klaytn contract, 23668 // with pre-set call and transact options. 23669 type IERC721ReceiverSession struct { 23670 Contract *IERC721Receiver // Generic contract binding to set the session for 23671 CallOpts bind.CallOpts // Call options to use throughout this session 23672 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 23673 } 23674 23675 // IERC721ReceiverCallerSession is an auto generated read-only Go binding around a Klaytn contract, 23676 // with pre-set call options. 23677 type IERC721ReceiverCallerSession struct { 23678 Contract *IERC721ReceiverCaller // Generic contract caller binding to set the session for 23679 CallOpts bind.CallOpts // Call options to use throughout this session 23680 } 23681 23682 // IERC721ReceiverTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 23683 // with pre-set transact options. 23684 type IERC721ReceiverTransactorSession struct { 23685 Contract *IERC721ReceiverTransactor // Generic contract transactor binding to set the session for 23686 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 23687 } 23688 23689 // IERC721ReceiverRaw is an auto generated low-level Go binding around a Klaytn contract. 23690 type IERC721ReceiverRaw struct { 23691 Contract *IERC721Receiver // Generic contract binding to access the raw methods on 23692 } 23693 23694 // IERC721ReceiverCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 23695 type IERC721ReceiverCallerRaw struct { 23696 Contract *IERC721ReceiverCaller // Generic read-only contract binding to access the raw methods on 23697 } 23698 23699 // IERC721ReceiverTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 23700 type IERC721ReceiverTransactorRaw struct { 23701 Contract *IERC721ReceiverTransactor // Generic write-only contract binding to access the raw methods on 23702 } 23703 23704 // NewIERC721Receiver creates a new instance of IERC721Receiver, bound to a specific deployed contract. 23705 func NewIERC721Receiver(address common.Address, backend bind.ContractBackend) (*IERC721Receiver, error) { 23706 contract, err := bindIERC721Receiver(address, backend, backend, backend) 23707 if err != nil { 23708 return nil, err 23709 } 23710 return &IERC721Receiver{IERC721ReceiverCaller: IERC721ReceiverCaller{contract: contract}, IERC721ReceiverTransactor: IERC721ReceiverTransactor{contract: contract}, IERC721ReceiverFilterer: IERC721ReceiverFilterer{contract: contract}}, nil 23711 } 23712 23713 // NewIERC721ReceiverCaller creates a new read-only instance of IERC721Receiver, bound to a specific deployed contract. 23714 func NewIERC721ReceiverCaller(address common.Address, caller bind.ContractCaller) (*IERC721ReceiverCaller, error) { 23715 contract, err := bindIERC721Receiver(address, caller, nil, nil) 23716 if err != nil { 23717 return nil, err 23718 } 23719 return &IERC721ReceiverCaller{contract: contract}, nil 23720 } 23721 23722 // NewIERC721ReceiverTransactor creates a new write-only instance of IERC721Receiver, bound to a specific deployed contract. 23723 func NewIERC721ReceiverTransactor(address common.Address, transactor bind.ContractTransactor) (*IERC721ReceiverTransactor, error) { 23724 contract, err := bindIERC721Receiver(address, nil, transactor, nil) 23725 if err != nil { 23726 return nil, err 23727 } 23728 return &IERC721ReceiverTransactor{contract: contract}, nil 23729 } 23730 23731 // NewIERC721ReceiverFilterer creates a new log filterer instance of IERC721Receiver, bound to a specific deployed contract. 23732 func NewIERC721ReceiverFilterer(address common.Address, filterer bind.ContractFilterer) (*IERC721ReceiverFilterer, error) { 23733 contract, err := bindIERC721Receiver(address, nil, nil, filterer) 23734 if err != nil { 23735 return nil, err 23736 } 23737 return &IERC721ReceiverFilterer{contract: contract}, nil 23738 } 23739 23740 // bindIERC721Receiver binds a generic wrapper to an already deployed contract. 23741 func bindIERC721Receiver(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 23742 parsed, err := abi.JSON(strings.NewReader(IERC721ReceiverABI)) 23743 if err != nil { 23744 return nil, err 23745 } 23746 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 23747 } 23748 23749 // Call invokes the (constant) contract method with params as input values and 23750 // sets the output to result. The result type might be a single field for simple 23751 // returns, a slice of interfaces for anonymous returns and a struct for named 23752 // returns. 23753 func (_IERC721Receiver *IERC721ReceiverRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 23754 return _IERC721Receiver.Contract.IERC721ReceiverCaller.contract.Call(opts, result, method, params...) 23755 } 23756 23757 // Transfer initiates a plain transaction to move funds to the contract, calling 23758 // its default method if one is available. 23759 func (_IERC721Receiver *IERC721ReceiverRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 23760 return _IERC721Receiver.Contract.IERC721ReceiverTransactor.contract.Transfer(opts) 23761 } 23762 23763 // Transact invokes the (paid) contract method with params as input values. 23764 func (_IERC721Receiver *IERC721ReceiverRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 23765 return _IERC721Receiver.Contract.IERC721ReceiverTransactor.contract.Transact(opts, method, params...) 23766 } 23767 23768 // Call invokes the (constant) contract method with params as input values and 23769 // sets the output to result. The result type might be a single field for simple 23770 // returns, a slice of interfaces for anonymous returns and a struct for named 23771 // returns. 23772 func (_IERC721Receiver *IERC721ReceiverCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 23773 return _IERC721Receiver.Contract.contract.Call(opts, result, method, params...) 23774 } 23775 23776 // Transfer initiates a plain transaction to move funds to the contract, calling 23777 // its default method if one is available. 23778 func (_IERC721Receiver *IERC721ReceiverTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 23779 return _IERC721Receiver.Contract.contract.Transfer(opts) 23780 } 23781 23782 // Transact invokes the (paid) contract method with params as input values. 23783 func (_IERC721Receiver *IERC721ReceiverTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 23784 return _IERC721Receiver.Contract.contract.Transact(opts, method, params...) 23785 } 23786 23787 // OnERC721Received is a paid mutator transaction binding the contract method 0x150b7a02. 23788 // 23789 // Solidity: function onERC721Received(address operator, address from, uint256 tokenId, bytes data) returns(bytes4) 23790 func (_IERC721Receiver *IERC721ReceiverTransactor) OnERC721Received(opts *bind.TransactOpts, operator common.Address, from common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23791 return _IERC721Receiver.contract.Transact(opts, "onERC721Received", operator, from, tokenId, data) 23792 } 23793 23794 // OnERC721Received is a paid mutator transaction binding the contract method 0x150b7a02. 23795 // 23796 // Solidity: function onERC721Received(address operator, address from, uint256 tokenId, bytes data) returns(bytes4) 23797 func (_IERC721Receiver *IERC721ReceiverSession) OnERC721Received(operator common.Address, from common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23798 return _IERC721Receiver.Contract.OnERC721Received(&_IERC721Receiver.TransactOpts, operator, from, tokenId, data) 23799 } 23800 23801 // OnERC721Received is a paid mutator transaction binding the contract method 0x150b7a02. 23802 // 23803 // Solidity: function onERC721Received(address operator, address from, uint256 tokenId, bytes data) returns(bytes4) 23804 func (_IERC721Receiver *IERC721ReceiverTransactorSession) OnERC721Received(operator common.Address, from common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error) { 23805 return _IERC721Receiver.Contract.OnERC721Received(&_IERC721Receiver.TransactOpts, operator, from, tokenId, data) 23806 } 23807 23808 // MinterRoleABI is the input ABI used to generate the binding from. 23809 const MinterRoleABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"addMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceMinter\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isMinter\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"account\",\"type\":\"address\"}],\"name\":\"MinterRemoved\",\"type\":\"event\"}]" 23810 23811 // MinterRoleBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 23812 const MinterRoleBinRuntime = `` 23813 23814 // MinterRoleFuncSigs maps the 4-byte function signature to its string representation. 23815 var MinterRoleFuncSigs = map[string]string{ 23816 "983b2d56": "addMinter(address)", 23817 "aa271e1a": "isMinter(address)", 23818 "98650275": "renounceMinter()", 23819 } 23820 23821 // MinterRole is an auto generated Go binding around a Klaytn contract. 23822 type MinterRole struct { 23823 MinterRoleCaller // Read-only binding to the contract 23824 MinterRoleTransactor // Write-only binding to the contract 23825 MinterRoleFilterer // Log filterer for contract events 23826 } 23827 23828 // MinterRoleCaller is an auto generated read-only Go binding around a Klaytn contract. 23829 type MinterRoleCaller struct { 23830 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23831 } 23832 23833 // MinterRoleTransactor is an auto generated write-only Go binding around a Klaytn contract. 23834 type MinterRoleTransactor struct { 23835 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23836 } 23837 23838 // MinterRoleFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 23839 type MinterRoleFilterer struct { 23840 contract *bind.BoundContract // Generic contract wrapper for the low level calls 23841 } 23842 23843 // MinterRoleSession is an auto generated Go binding around a Klaytn contract, 23844 // with pre-set call and transact options. 23845 type MinterRoleSession struct { 23846 Contract *MinterRole // Generic contract binding to set the session for 23847 CallOpts bind.CallOpts // Call options to use throughout this session 23848 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 23849 } 23850 23851 // MinterRoleCallerSession is an auto generated read-only Go binding around a Klaytn contract, 23852 // with pre-set call options. 23853 type MinterRoleCallerSession struct { 23854 Contract *MinterRoleCaller // Generic contract caller binding to set the session for 23855 CallOpts bind.CallOpts // Call options to use throughout this session 23856 } 23857 23858 // MinterRoleTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 23859 // with pre-set transact options. 23860 type MinterRoleTransactorSession struct { 23861 Contract *MinterRoleTransactor // Generic contract transactor binding to set the session for 23862 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 23863 } 23864 23865 // MinterRoleRaw is an auto generated low-level Go binding around a Klaytn contract. 23866 type MinterRoleRaw struct { 23867 Contract *MinterRole // Generic contract binding to access the raw methods on 23868 } 23869 23870 // MinterRoleCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 23871 type MinterRoleCallerRaw struct { 23872 Contract *MinterRoleCaller // Generic read-only contract binding to access the raw methods on 23873 } 23874 23875 // MinterRoleTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 23876 type MinterRoleTransactorRaw struct { 23877 Contract *MinterRoleTransactor // Generic write-only contract binding to access the raw methods on 23878 } 23879 23880 // NewMinterRole creates a new instance of MinterRole, bound to a specific deployed contract. 23881 func NewMinterRole(address common.Address, backend bind.ContractBackend) (*MinterRole, error) { 23882 contract, err := bindMinterRole(address, backend, backend, backend) 23883 if err != nil { 23884 return nil, err 23885 } 23886 return &MinterRole{MinterRoleCaller: MinterRoleCaller{contract: contract}, MinterRoleTransactor: MinterRoleTransactor{contract: contract}, MinterRoleFilterer: MinterRoleFilterer{contract: contract}}, nil 23887 } 23888 23889 // NewMinterRoleCaller creates a new read-only instance of MinterRole, bound to a specific deployed contract. 23890 func NewMinterRoleCaller(address common.Address, caller bind.ContractCaller) (*MinterRoleCaller, error) { 23891 contract, err := bindMinterRole(address, caller, nil, nil) 23892 if err != nil { 23893 return nil, err 23894 } 23895 return &MinterRoleCaller{contract: contract}, nil 23896 } 23897 23898 // NewMinterRoleTransactor creates a new write-only instance of MinterRole, bound to a specific deployed contract. 23899 func NewMinterRoleTransactor(address common.Address, transactor bind.ContractTransactor) (*MinterRoleTransactor, error) { 23900 contract, err := bindMinterRole(address, nil, transactor, nil) 23901 if err != nil { 23902 return nil, err 23903 } 23904 return &MinterRoleTransactor{contract: contract}, nil 23905 } 23906 23907 // NewMinterRoleFilterer creates a new log filterer instance of MinterRole, bound to a specific deployed contract. 23908 func NewMinterRoleFilterer(address common.Address, filterer bind.ContractFilterer) (*MinterRoleFilterer, error) { 23909 contract, err := bindMinterRole(address, nil, nil, filterer) 23910 if err != nil { 23911 return nil, err 23912 } 23913 return &MinterRoleFilterer{contract: contract}, nil 23914 } 23915 23916 // bindMinterRole binds a generic wrapper to an already deployed contract. 23917 func bindMinterRole(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 23918 parsed, err := abi.JSON(strings.NewReader(MinterRoleABI)) 23919 if err != nil { 23920 return nil, err 23921 } 23922 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 23923 } 23924 23925 // Call invokes the (constant) contract method with params as input values and 23926 // sets the output to result. The result type might be a single field for simple 23927 // returns, a slice of interfaces for anonymous returns and a struct for named 23928 // returns. 23929 func (_MinterRole *MinterRoleRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 23930 return _MinterRole.Contract.MinterRoleCaller.contract.Call(opts, result, method, params...) 23931 } 23932 23933 // Transfer initiates a plain transaction to move funds to the contract, calling 23934 // its default method if one is available. 23935 func (_MinterRole *MinterRoleRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 23936 return _MinterRole.Contract.MinterRoleTransactor.contract.Transfer(opts) 23937 } 23938 23939 // Transact invokes the (paid) contract method with params as input values. 23940 func (_MinterRole *MinterRoleRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 23941 return _MinterRole.Contract.MinterRoleTransactor.contract.Transact(opts, method, params...) 23942 } 23943 23944 // Call invokes the (constant) contract method with params as input values and 23945 // sets the output to result. The result type might be a single field for simple 23946 // returns, a slice of interfaces for anonymous returns and a struct for named 23947 // returns. 23948 func (_MinterRole *MinterRoleCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 23949 return _MinterRole.Contract.contract.Call(opts, result, method, params...) 23950 } 23951 23952 // Transfer initiates a plain transaction to move funds to the contract, calling 23953 // its default method if one is available. 23954 func (_MinterRole *MinterRoleTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 23955 return _MinterRole.Contract.contract.Transfer(opts) 23956 } 23957 23958 // Transact invokes the (paid) contract method with params as input values. 23959 func (_MinterRole *MinterRoleTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 23960 return _MinterRole.Contract.contract.Transact(opts, method, params...) 23961 } 23962 23963 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 23964 // 23965 // Solidity: function isMinter(address account) view returns(bool) 23966 func (_MinterRole *MinterRoleCaller) IsMinter(opts *bind.CallOpts, account common.Address) (bool, error) { 23967 var ( 23968 ret0 = new(bool) 23969 ) 23970 out := ret0 23971 err := _MinterRole.contract.Call(opts, out, "isMinter", account) 23972 return *ret0, err 23973 } 23974 23975 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 23976 // 23977 // Solidity: function isMinter(address account) view returns(bool) 23978 func (_MinterRole *MinterRoleSession) IsMinter(account common.Address) (bool, error) { 23979 return _MinterRole.Contract.IsMinter(&_MinterRole.CallOpts, account) 23980 } 23981 23982 // IsMinter is a free data retrieval call binding the contract method 0xaa271e1a. 23983 // 23984 // Solidity: function isMinter(address account) view returns(bool) 23985 func (_MinterRole *MinterRoleCallerSession) IsMinter(account common.Address) (bool, error) { 23986 return _MinterRole.Contract.IsMinter(&_MinterRole.CallOpts, account) 23987 } 23988 23989 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 23990 // 23991 // Solidity: function addMinter(address account) returns() 23992 func (_MinterRole *MinterRoleTransactor) AddMinter(opts *bind.TransactOpts, account common.Address) (*types.Transaction, error) { 23993 return _MinterRole.contract.Transact(opts, "addMinter", account) 23994 } 23995 23996 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 23997 // 23998 // Solidity: function addMinter(address account) returns() 23999 func (_MinterRole *MinterRoleSession) AddMinter(account common.Address) (*types.Transaction, error) { 24000 return _MinterRole.Contract.AddMinter(&_MinterRole.TransactOpts, account) 24001 } 24002 24003 // AddMinter is a paid mutator transaction binding the contract method 0x983b2d56. 24004 // 24005 // Solidity: function addMinter(address account) returns() 24006 func (_MinterRole *MinterRoleTransactorSession) AddMinter(account common.Address) (*types.Transaction, error) { 24007 return _MinterRole.Contract.AddMinter(&_MinterRole.TransactOpts, account) 24008 } 24009 24010 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 24011 // 24012 // Solidity: function renounceMinter() returns() 24013 func (_MinterRole *MinterRoleTransactor) RenounceMinter(opts *bind.TransactOpts) (*types.Transaction, error) { 24014 return _MinterRole.contract.Transact(opts, "renounceMinter") 24015 } 24016 24017 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 24018 // 24019 // Solidity: function renounceMinter() returns() 24020 func (_MinterRole *MinterRoleSession) RenounceMinter() (*types.Transaction, error) { 24021 return _MinterRole.Contract.RenounceMinter(&_MinterRole.TransactOpts) 24022 } 24023 24024 // RenounceMinter is a paid mutator transaction binding the contract method 0x98650275. 24025 // 24026 // Solidity: function renounceMinter() returns() 24027 func (_MinterRole *MinterRoleTransactorSession) RenounceMinter() (*types.Transaction, error) { 24028 return _MinterRole.Contract.RenounceMinter(&_MinterRole.TransactOpts) 24029 } 24030 24031 // MinterRoleMinterAddedIterator is returned from FilterMinterAdded and is used to iterate over the raw logs and unpacked data for MinterAdded events raised by the MinterRole contract. 24032 type MinterRoleMinterAddedIterator struct { 24033 Event *MinterRoleMinterAdded // Event containing the contract specifics and raw log 24034 24035 contract *bind.BoundContract // Generic contract to use for unpacking event data 24036 event string // Event name to use for unpacking event data 24037 24038 logs chan types.Log // Log channel receiving the found contract events 24039 sub klaytn.Subscription // Subscription for errors, completion and termination 24040 done bool // Whether the subscription completed delivering logs 24041 fail error // Occurred error to stop iteration 24042 } 24043 24044 // Next advances the iterator to the subsequent event, returning whether there 24045 // are any more events found. In case of a retrieval or parsing error, false is 24046 // returned and Error() can be queried for the exact failure. 24047 func (it *MinterRoleMinterAddedIterator) Next() bool { 24048 // If the iterator failed, stop iterating 24049 if it.fail != nil { 24050 return false 24051 } 24052 // If the iterator completed, deliver directly whatever's available 24053 if it.done { 24054 select { 24055 case log := <-it.logs: 24056 it.Event = new(MinterRoleMinterAdded) 24057 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24058 it.fail = err 24059 return false 24060 } 24061 it.Event.Raw = log 24062 return true 24063 24064 default: 24065 return false 24066 } 24067 } 24068 // Iterator still in progress, wait for either a data or an error event 24069 select { 24070 case log := <-it.logs: 24071 it.Event = new(MinterRoleMinterAdded) 24072 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24073 it.fail = err 24074 return false 24075 } 24076 it.Event.Raw = log 24077 return true 24078 24079 case err := <-it.sub.Err(): 24080 it.done = true 24081 it.fail = err 24082 return it.Next() 24083 } 24084 } 24085 24086 // Error returns any retrieval or parsing error occurred during filtering. 24087 func (it *MinterRoleMinterAddedIterator) Error() error { 24088 return it.fail 24089 } 24090 24091 // Close terminates the iteration process, releasing any pending underlying 24092 // resources. 24093 func (it *MinterRoleMinterAddedIterator) Close() error { 24094 it.sub.Unsubscribe() 24095 return nil 24096 } 24097 24098 // MinterRoleMinterAdded represents a MinterAdded event raised by the MinterRole contract. 24099 type MinterRoleMinterAdded struct { 24100 Account common.Address 24101 Raw types.Log // Blockchain specific contextual infos 24102 } 24103 24104 // FilterMinterAdded is a free log retrieval operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 24105 // 24106 // Solidity: event MinterAdded(address indexed account) 24107 func (_MinterRole *MinterRoleFilterer) FilterMinterAdded(opts *bind.FilterOpts, account []common.Address) (*MinterRoleMinterAddedIterator, error) { 24108 24109 var accountRule []interface{} 24110 for _, accountItem := range account { 24111 accountRule = append(accountRule, accountItem) 24112 } 24113 24114 logs, sub, err := _MinterRole.contract.FilterLogs(opts, "MinterAdded", accountRule) 24115 if err != nil { 24116 return nil, err 24117 } 24118 return &MinterRoleMinterAddedIterator{contract: _MinterRole.contract, event: "MinterAdded", logs: logs, sub: sub}, nil 24119 } 24120 24121 // WatchMinterAdded is a free log subscription operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 24122 // 24123 // Solidity: event MinterAdded(address indexed account) 24124 func (_MinterRole *MinterRoleFilterer) WatchMinterAdded(opts *bind.WatchOpts, sink chan<- *MinterRoleMinterAdded, account []common.Address) (event.Subscription, error) { 24125 24126 var accountRule []interface{} 24127 for _, accountItem := range account { 24128 accountRule = append(accountRule, accountItem) 24129 } 24130 24131 logs, sub, err := _MinterRole.contract.WatchLogs(opts, "MinterAdded", accountRule) 24132 if err != nil { 24133 return nil, err 24134 } 24135 return event.NewSubscription(func(quit <-chan struct{}) error { 24136 defer sub.Unsubscribe() 24137 for { 24138 select { 24139 case log := <-logs: 24140 // New log arrived, parse the event and forward to the user 24141 event := new(MinterRoleMinterAdded) 24142 if err := _MinterRole.contract.UnpackLog(event, "MinterAdded", log); err != nil { 24143 return err 24144 } 24145 event.Raw = log 24146 24147 select { 24148 case sink <- event: 24149 case err := <-sub.Err(): 24150 return err 24151 case <-quit: 24152 return nil 24153 } 24154 case err := <-sub.Err(): 24155 return err 24156 case <-quit: 24157 return nil 24158 } 24159 } 24160 }), nil 24161 } 24162 24163 // ParseMinterAdded is a log parse operation binding the contract event 0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6. 24164 // 24165 // Solidity: event MinterAdded(address indexed account) 24166 func (_MinterRole *MinterRoleFilterer) ParseMinterAdded(log types.Log) (*MinterRoleMinterAdded, error) { 24167 event := new(MinterRoleMinterAdded) 24168 if err := _MinterRole.contract.UnpackLog(event, "MinterAdded", log); err != nil { 24169 return nil, err 24170 } 24171 return event, nil 24172 } 24173 24174 // MinterRoleMinterRemovedIterator is returned from FilterMinterRemoved and is used to iterate over the raw logs and unpacked data for MinterRemoved events raised by the MinterRole contract. 24175 type MinterRoleMinterRemovedIterator struct { 24176 Event *MinterRoleMinterRemoved // Event containing the contract specifics and raw log 24177 24178 contract *bind.BoundContract // Generic contract to use for unpacking event data 24179 event string // Event name to use for unpacking event data 24180 24181 logs chan types.Log // Log channel receiving the found contract events 24182 sub klaytn.Subscription // Subscription for errors, completion and termination 24183 done bool // Whether the subscription completed delivering logs 24184 fail error // Occurred error to stop iteration 24185 } 24186 24187 // Next advances the iterator to the subsequent event, returning whether there 24188 // are any more events found. In case of a retrieval or parsing error, false is 24189 // returned and Error() can be queried for the exact failure. 24190 func (it *MinterRoleMinterRemovedIterator) Next() bool { 24191 // If the iterator failed, stop iterating 24192 if it.fail != nil { 24193 return false 24194 } 24195 // If the iterator completed, deliver directly whatever's available 24196 if it.done { 24197 select { 24198 case log := <-it.logs: 24199 it.Event = new(MinterRoleMinterRemoved) 24200 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24201 it.fail = err 24202 return false 24203 } 24204 it.Event.Raw = log 24205 return true 24206 24207 default: 24208 return false 24209 } 24210 } 24211 // Iterator still in progress, wait for either a data or an error event 24212 select { 24213 case log := <-it.logs: 24214 it.Event = new(MinterRoleMinterRemoved) 24215 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24216 it.fail = err 24217 return false 24218 } 24219 it.Event.Raw = log 24220 return true 24221 24222 case err := <-it.sub.Err(): 24223 it.done = true 24224 it.fail = err 24225 return it.Next() 24226 } 24227 } 24228 24229 // Error returns any retrieval or parsing error occurred during filtering. 24230 func (it *MinterRoleMinterRemovedIterator) Error() error { 24231 return it.fail 24232 } 24233 24234 // Close terminates the iteration process, releasing any pending underlying 24235 // resources. 24236 func (it *MinterRoleMinterRemovedIterator) Close() error { 24237 it.sub.Unsubscribe() 24238 return nil 24239 } 24240 24241 // MinterRoleMinterRemoved represents a MinterRemoved event raised by the MinterRole contract. 24242 type MinterRoleMinterRemoved struct { 24243 Account common.Address 24244 Raw types.Log // Blockchain specific contextual infos 24245 } 24246 24247 // FilterMinterRemoved is a free log retrieval operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 24248 // 24249 // Solidity: event MinterRemoved(address indexed account) 24250 func (_MinterRole *MinterRoleFilterer) FilterMinterRemoved(opts *bind.FilterOpts, account []common.Address) (*MinterRoleMinterRemovedIterator, error) { 24251 24252 var accountRule []interface{} 24253 for _, accountItem := range account { 24254 accountRule = append(accountRule, accountItem) 24255 } 24256 24257 logs, sub, err := _MinterRole.contract.FilterLogs(opts, "MinterRemoved", accountRule) 24258 if err != nil { 24259 return nil, err 24260 } 24261 return &MinterRoleMinterRemovedIterator{contract: _MinterRole.contract, event: "MinterRemoved", logs: logs, sub: sub}, nil 24262 } 24263 24264 // WatchMinterRemoved is a free log subscription operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 24265 // 24266 // Solidity: event MinterRemoved(address indexed account) 24267 func (_MinterRole *MinterRoleFilterer) WatchMinterRemoved(opts *bind.WatchOpts, sink chan<- *MinterRoleMinterRemoved, account []common.Address) (event.Subscription, error) { 24268 24269 var accountRule []interface{} 24270 for _, accountItem := range account { 24271 accountRule = append(accountRule, accountItem) 24272 } 24273 24274 logs, sub, err := _MinterRole.contract.WatchLogs(opts, "MinterRemoved", accountRule) 24275 if err != nil { 24276 return nil, err 24277 } 24278 return event.NewSubscription(func(quit <-chan struct{}) error { 24279 defer sub.Unsubscribe() 24280 for { 24281 select { 24282 case log := <-logs: 24283 // New log arrived, parse the event and forward to the user 24284 event := new(MinterRoleMinterRemoved) 24285 if err := _MinterRole.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 24286 return err 24287 } 24288 event.Raw = log 24289 24290 select { 24291 case sink <- event: 24292 case err := <-sub.Err(): 24293 return err 24294 case <-quit: 24295 return nil 24296 } 24297 case err := <-sub.Err(): 24298 return err 24299 case <-quit: 24300 return nil 24301 } 24302 } 24303 }), nil 24304 } 24305 24306 // ParseMinterRemoved is a log parse operation binding the contract event 0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692. 24307 // 24308 // Solidity: event MinterRemoved(address indexed account) 24309 func (_MinterRole *MinterRoleFilterer) ParseMinterRemoved(log types.Log) (*MinterRoleMinterRemoved, error) { 24310 event := new(MinterRoleMinterRemoved) 24311 if err := _MinterRole.contract.UnpackLog(event, "MinterRemoved", log); err != nil { 24312 return nil, err 24313 } 24314 return event, nil 24315 } 24316 24317 // OwnableABI is the input ABI used to generate the binding from. 24318 const OwnableABI = "[{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}]" 24319 24320 // OwnableBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 24321 const OwnableBinRuntime = `` 24322 24323 // OwnableFuncSigs maps the 4-byte function signature to its string representation. 24324 var OwnableFuncSigs = map[string]string{ 24325 "8f32d59b": "isOwner()", 24326 "8da5cb5b": "owner()", 24327 "715018a6": "renounceOwnership()", 24328 "f2fde38b": "transferOwnership(address)", 24329 } 24330 24331 // Ownable is an auto generated Go binding around a Klaytn contract. 24332 type Ownable struct { 24333 OwnableCaller // Read-only binding to the contract 24334 OwnableTransactor // Write-only binding to the contract 24335 OwnableFilterer // Log filterer for contract events 24336 } 24337 24338 // OwnableCaller is an auto generated read-only Go binding around a Klaytn contract. 24339 type OwnableCaller struct { 24340 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24341 } 24342 24343 // OwnableTransactor is an auto generated write-only Go binding around a Klaytn contract. 24344 type OwnableTransactor struct { 24345 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24346 } 24347 24348 // OwnableFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 24349 type OwnableFilterer struct { 24350 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24351 } 24352 24353 // OwnableSession is an auto generated Go binding around a Klaytn contract, 24354 // with pre-set call and transact options. 24355 type OwnableSession struct { 24356 Contract *Ownable // Generic contract binding to set the session for 24357 CallOpts bind.CallOpts // Call options to use throughout this session 24358 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24359 } 24360 24361 // OwnableCallerSession is an auto generated read-only Go binding around a Klaytn contract, 24362 // with pre-set call options. 24363 type OwnableCallerSession struct { 24364 Contract *OwnableCaller // Generic contract caller binding to set the session for 24365 CallOpts bind.CallOpts // Call options to use throughout this session 24366 } 24367 24368 // OwnableTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 24369 // with pre-set transact options. 24370 type OwnableTransactorSession struct { 24371 Contract *OwnableTransactor // Generic contract transactor binding to set the session for 24372 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24373 } 24374 24375 // OwnableRaw is an auto generated low-level Go binding around a Klaytn contract. 24376 type OwnableRaw struct { 24377 Contract *Ownable // Generic contract binding to access the raw methods on 24378 } 24379 24380 // OwnableCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 24381 type OwnableCallerRaw struct { 24382 Contract *OwnableCaller // Generic read-only contract binding to access the raw methods on 24383 } 24384 24385 // OwnableTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 24386 type OwnableTransactorRaw struct { 24387 Contract *OwnableTransactor // Generic write-only contract binding to access the raw methods on 24388 } 24389 24390 // NewOwnable creates a new instance of Ownable, bound to a specific deployed contract. 24391 func NewOwnable(address common.Address, backend bind.ContractBackend) (*Ownable, error) { 24392 contract, err := bindOwnable(address, backend, backend, backend) 24393 if err != nil { 24394 return nil, err 24395 } 24396 return &Ownable{OwnableCaller: OwnableCaller{contract: contract}, OwnableTransactor: OwnableTransactor{contract: contract}, OwnableFilterer: OwnableFilterer{contract: contract}}, nil 24397 } 24398 24399 // NewOwnableCaller creates a new read-only instance of Ownable, bound to a specific deployed contract. 24400 func NewOwnableCaller(address common.Address, caller bind.ContractCaller) (*OwnableCaller, error) { 24401 contract, err := bindOwnable(address, caller, nil, nil) 24402 if err != nil { 24403 return nil, err 24404 } 24405 return &OwnableCaller{contract: contract}, nil 24406 } 24407 24408 // NewOwnableTransactor creates a new write-only instance of Ownable, bound to a specific deployed contract. 24409 func NewOwnableTransactor(address common.Address, transactor bind.ContractTransactor) (*OwnableTransactor, error) { 24410 contract, err := bindOwnable(address, nil, transactor, nil) 24411 if err != nil { 24412 return nil, err 24413 } 24414 return &OwnableTransactor{contract: contract}, nil 24415 } 24416 24417 // NewOwnableFilterer creates a new log filterer instance of Ownable, bound to a specific deployed contract. 24418 func NewOwnableFilterer(address common.Address, filterer bind.ContractFilterer) (*OwnableFilterer, error) { 24419 contract, err := bindOwnable(address, nil, nil, filterer) 24420 if err != nil { 24421 return nil, err 24422 } 24423 return &OwnableFilterer{contract: contract}, nil 24424 } 24425 24426 // bindOwnable binds a generic wrapper to an already deployed contract. 24427 func bindOwnable(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 24428 parsed, err := abi.JSON(strings.NewReader(OwnableABI)) 24429 if err != nil { 24430 return nil, err 24431 } 24432 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 24433 } 24434 24435 // Call invokes the (constant) contract method with params as input values and 24436 // sets the output to result. The result type might be a single field for simple 24437 // returns, a slice of interfaces for anonymous returns and a struct for named 24438 // returns. 24439 func (_Ownable *OwnableRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 24440 return _Ownable.Contract.OwnableCaller.contract.Call(opts, result, method, params...) 24441 } 24442 24443 // Transfer initiates a plain transaction to move funds to the contract, calling 24444 // its default method if one is available. 24445 func (_Ownable *OwnableRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 24446 return _Ownable.Contract.OwnableTransactor.contract.Transfer(opts) 24447 } 24448 24449 // Transact invokes the (paid) contract method with params as input values. 24450 func (_Ownable *OwnableRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 24451 return _Ownable.Contract.OwnableTransactor.contract.Transact(opts, method, params...) 24452 } 24453 24454 // Call invokes the (constant) contract method with params as input values and 24455 // sets the output to result. The result type might be a single field for simple 24456 // returns, a slice of interfaces for anonymous returns and a struct for named 24457 // returns. 24458 func (_Ownable *OwnableCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 24459 return _Ownable.Contract.contract.Call(opts, result, method, params...) 24460 } 24461 24462 // Transfer initiates a plain transaction to move funds to the contract, calling 24463 // its default method if one is available. 24464 func (_Ownable *OwnableTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 24465 return _Ownable.Contract.contract.Transfer(opts) 24466 } 24467 24468 // Transact invokes the (paid) contract method with params as input values. 24469 func (_Ownable *OwnableTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 24470 return _Ownable.Contract.contract.Transact(opts, method, params...) 24471 } 24472 24473 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 24474 // 24475 // Solidity: function isOwner() view returns(bool) 24476 func (_Ownable *OwnableCaller) IsOwner(opts *bind.CallOpts) (bool, error) { 24477 var ( 24478 ret0 = new(bool) 24479 ) 24480 out := ret0 24481 err := _Ownable.contract.Call(opts, out, "isOwner") 24482 return *ret0, err 24483 } 24484 24485 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 24486 // 24487 // Solidity: function isOwner() view returns(bool) 24488 func (_Ownable *OwnableSession) IsOwner() (bool, error) { 24489 return _Ownable.Contract.IsOwner(&_Ownable.CallOpts) 24490 } 24491 24492 // IsOwner is a free data retrieval call binding the contract method 0x8f32d59b. 24493 // 24494 // Solidity: function isOwner() view returns(bool) 24495 func (_Ownable *OwnableCallerSession) IsOwner() (bool, error) { 24496 return _Ownable.Contract.IsOwner(&_Ownable.CallOpts) 24497 } 24498 24499 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 24500 // 24501 // Solidity: function owner() view returns(address) 24502 func (_Ownable *OwnableCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 24503 var ( 24504 ret0 = new(common.Address) 24505 ) 24506 out := ret0 24507 err := _Ownable.contract.Call(opts, out, "owner") 24508 return *ret0, err 24509 } 24510 24511 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 24512 // 24513 // Solidity: function owner() view returns(address) 24514 func (_Ownable *OwnableSession) Owner() (common.Address, error) { 24515 return _Ownable.Contract.Owner(&_Ownable.CallOpts) 24516 } 24517 24518 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 24519 // 24520 // Solidity: function owner() view returns(address) 24521 func (_Ownable *OwnableCallerSession) Owner() (common.Address, error) { 24522 return _Ownable.Contract.Owner(&_Ownable.CallOpts) 24523 } 24524 24525 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 24526 // 24527 // Solidity: function renounceOwnership() returns() 24528 func (_Ownable *OwnableTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 24529 return _Ownable.contract.Transact(opts, "renounceOwnership") 24530 } 24531 24532 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 24533 // 24534 // Solidity: function renounceOwnership() returns() 24535 func (_Ownable *OwnableSession) RenounceOwnership() (*types.Transaction, error) { 24536 return _Ownable.Contract.RenounceOwnership(&_Ownable.TransactOpts) 24537 } 24538 24539 // RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6. 24540 // 24541 // Solidity: function renounceOwnership() returns() 24542 func (_Ownable *OwnableTransactorSession) RenounceOwnership() (*types.Transaction, error) { 24543 return _Ownable.Contract.RenounceOwnership(&_Ownable.TransactOpts) 24544 } 24545 24546 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 24547 // 24548 // Solidity: function transferOwnership(address newOwner) returns() 24549 func (_Ownable *OwnableTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) { 24550 return _Ownable.contract.Transact(opts, "transferOwnership", newOwner) 24551 } 24552 24553 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 24554 // 24555 // Solidity: function transferOwnership(address newOwner) returns() 24556 func (_Ownable *OwnableSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 24557 return _Ownable.Contract.TransferOwnership(&_Ownable.TransactOpts, newOwner) 24558 } 24559 24560 // TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b. 24561 // 24562 // Solidity: function transferOwnership(address newOwner) returns() 24563 func (_Ownable *OwnableTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) { 24564 return _Ownable.Contract.TransferOwnership(&_Ownable.TransactOpts, newOwner) 24565 } 24566 24567 // OwnableOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Ownable contract. 24568 type OwnableOwnershipTransferredIterator struct { 24569 Event *OwnableOwnershipTransferred // Event containing the contract specifics and raw log 24570 24571 contract *bind.BoundContract // Generic contract to use for unpacking event data 24572 event string // Event name to use for unpacking event data 24573 24574 logs chan types.Log // Log channel receiving the found contract events 24575 sub klaytn.Subscription // Subscription for errors, completion and termination 24576 done bool // Whether the subscription completed delivering logs 24577 fail error // Occurred error to stop iteration 24578 } 24579 24580 // Next advances the iterator to the subsequent event, returning whether there 24581 // are any more events found. In case of a retrieval or parsing error, false is 24582 // returned and Error() can be queried for the exact failure. 24583 func (it *OwnableOwnershipTransferredIterator) Next() bool { 24584 // If the iterator failed, stop iterating 24585 if it.fail != nil { 24586 return false 24587 } 24588 // If the iterator completed, deliver directly whatever's available 24589 if it.done { 24590 select { 24591 case log := <-it.logs: 24592 it.Event = new(OwnableOwnershipTransferred) 24593 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24594 it.fail = err 24595 return false 24596 } 24597 it.Event.Raw = log 24598 return true 24599 24600 default: 24601 return false 24602 } 24603 } 24604 // Iterator still in progress, wait for either a data or an error event 24605 select { 24606 case log := <-it.logs: 24607 it.Event = new(OwnableOwnershipTransferred) 24608 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 24609 it.fail = err 24610 return false 24611 } 24612 it.Event.Raw = log 24613 return true 24614 24615 case err := <-it.sub.Err(): 24616 it.done = true 24617 it.fail = err 24618 return it.Next() 24619 } 24620 } 24621 24622 // Error returns any retrieval or parsing error occurred during filtering. 24623 func (it *OwnableOwnershipTransferredIterator) Error() error { 24624 return it.fail 24625 } 24626 24627 // Close terminates the iteration process, releasing any pending underlying 24628 // resources. 24629 func (it *OwnableOwnershipTransferredIterator) Close() error { 24630 it.sub.Unsubscribe() 24631 return nil 24632 } 24633 24634 // OwnableOwnershipTransferred represents a OwnershipTransferred event raised by the Ownable contract. 24635 type OwnableOwnershipTransferred struct { 24636 PreviousOwner common.Address 24637 NewOwner common.Address 24638 Raw types.Log // Blockchain specific contextual infos 24639 } 24640 24641 // FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 24642 // 24643 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 24644 func (_Ownable *OwnableFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*OwnableOwnershipTransferredIterator, error) { 24645 24646 var previousOwnerRule []interface{} 24647 for _, previousOwnerItem := range previousOwner { 24648 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 24649 } 24650 var newOwnerRule []interface{} 24651 for _, newOwnerItem := range newOwner { 24652 newOwnerRule = append(newOwnerRule, newOwnerItem) 24653 } 24654 24655 logs, sub, err := _Ownable.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 24656 if err != nil { 24657 return nil, err 24658 } 24659 return &OwnableOwnershipTransferredIterator{contract: _Ownable.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil 24660 } 24661 24662 // WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 24663 // 24664 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 24665 func (_Ownable *OwnableFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *OwnableOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) { 24666 24667 var previousOwnerRule []interface{} 24668 for _, previousOwnerItem := range previousOwner { 24669 previousOwnerRule = append(previousOwnerRule, previousOwnerItem) 24670 } 24671 var newOwnerRule []interface{} 24672 for _, newOwnerItem := range newOwner { 24673 newOwnerRule = append(newOwnerRule, newOwnerItem) 24674 } 24675 24676 logs, sub, err := _Ownable.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule) 24677 if err != nil { 24678 return nil, err 24679 } 24680 return event.NewSubscription(func(quit <-chan struct{}) error { 24681 defer sub.Unsubscribe() 24682 for { 24683 select { 24684 case log := <-logs: 24685 // New log arrived, parse the event and forward to the user 24686 event := new(OwnableOwnershipTransferred) 24687 if err := _Ownable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 24688 return err 24689 } 24690 event.Raw = log 24691 24692 select { 24693 case sink <- event: 24694 case err := <-sub.Err(): 24695 return err 24696 case <-quit: 24697 return nil 24698 } 24699 case err := <-sub.Err(): 24700 return err 24701 case <-quit: 24702 return nil 24703 } 24704 } 24705 }), nil 24706 } 24707 24708 // ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0. 24709 // 24710 // Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner) 24711 func (_Ownable *OwnableFilterer) ParseOwnershipTransferred(log types.Log) (*OwnableOwnershipTransferred, error) { 24712 event := new(OwnableOwnershipTransferred) 24713 if err := _Ownable.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil { 24714 return nil, err 24715 } 24716 return event, nil 24717 } 24718 24719 // RolesABI is the input ABI used to generate the binding from. 24720 const RolesABI = "[]" 24721 24722 // RolesBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 24723 const RolesBinRuntime = `73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a7230582026429ed555f83236ac076363d644804ff5b0baa4e098f1d4ef783a49049f7df70029` 24724 24725 // RolesBin is the compiled bytecode used for deploying new contracts. 24726 var RolesBin = "0x604c6023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a7230582026429ed555f83236ac076363d644804ff5b0baa4e098f1d4ef783a49049f7df70029" 24727 24728 // DeployRoles deploys a new Klaytn contract, binding an instance of Roles to it. 24729 func DeployRoles(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Roles, error) { 24730 parsed, err := abi.JSON(strings.NewReader(RolesABI)) 24731 if err != nil { 24732 return common.Address{}, nil, nil, err 24733 } 24734 24735 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(RolesBin), backend) 24736 if err != nil { 24737 return common.Address{}, nil, nil, err 24738 } 24739 return address, tx, &Roles{RolesCaller: RolesCaller{contract: contract}, RolesTransactor: RolesTransactor{contract: contract}, RolesFilterer: RolesFilterer{contract: contract}}, nil 24740 } 24741 24742 // Roles is an auto generated Go binding around a Klaytn contract. 24743 type Roles struct { 24744 RolesCaller // Read-only binding to the contract 24745 RolesTransactor // Write-only binding to the contract 24746 RolesFilterer // Log filterer for contract events 24747 } 24748 24749 // RolesCaller is an auto generated read-only Go binding around a Klaytn contract. 24750 type RolesCaller struct { 24751 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24752 } 24753 24754 // RolesTransactor is an auto generated write-only Go binding around a Klaytn contract. 24755 type RolesTransactor struct { 24756 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24757 } 24758 24759 // RolesFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 24760 type RolesFilterer struct { 24761 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24762 } 24763 24764 // RolesSession is an auto generated Go binding around a Klaytn contract, 24765 // with pre-set call and transact options. 24766 type RolesSession struct { 24767 Contract *Roles // Generic contract binding to set the session for 24768 CallOpts bind.CallOpts // Call options to use throughout this session 24769 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24770 } 24771 24772 // RolesCallerSession is an auto generated read-only Go binding around a Klaytn contract, 24773 // with pre-set call options. 24774 type RolesCallerSession struct { 24775 Contract *RolesCaller // Generic contract caller binding to set the session for 24776 CallOpts bind.CallOpts // Call options to use throughout this session 24777 } 24778 24779 // RolesTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 24780 // with pre-set transact options. 24781 type RolesTransactorSession struct { 24782 Contract *RolesTransactor // Generic contract transactor binding to set the session for 24783 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24784 } 24785 24786 // RolesRaw is an auto generated low-level Go binding around a Klaytn contract. 24787 type RolesRaw struct { 24788 Contract *Roles // Generic contract binding to access the raw methods on 24789 } 24790 24791 // RolesCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 24792 type RolesCallerRaw struct { 24793 Contract *RolesCaller // Generic read-only contract binding to access the raw methods on 24794 } 24795 24796 // RolesTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 24797 type RolesTransactorRaw struct { 24798 Contract *RolesTransactor // Generic write-only contract binding to access the raw methods on 24799 } 24800 24801 // NewRoles creates a new instance of Roles, bound to a specific deployed contract. 24802 func NewRoles(address common.Address, backend bind.ContractBackend) (*Roles, error) { 24803 contract, err := bindRoles(address, backend, backend, backend) 24804 if err != nil { 24805 return nil, err 24806 } 24807 return &Roles{RolesCaller: RolesCaller{contract: contract}, RolesTransactor: RolesTransactor{contract: contract}, RolesFilterer: RolesFilterer{contract: contract}}, nil 24808 } 24809 24810 // NewRolesCaller creates a new read-only instance of Roles, bound to a specific deployed contract. 24811 func NewRolesCaller(address common.Address, caller bind.ContractCaller) (*RolesCaller, error) { 24812 contract, err := bindRoles(address, caller, nil, nil) 24813 if err != nil { 24814 return nil, err 24815 } 24816 return &RolesCaller{contract: contract}, nil 24817 } 24818 24819 // NewRolesTransactor creates a new write-only instance of Roles, bound to a specific deployed contract. 24820 func NewRolesTransactor(address common.Address, transactor bind.ContractTransactor) (*RolesTransactor, error) { 24821 contract, err := bindRoles(address, nil, transactor, nil) 24822 if err != nil { 24823 return nil, err 24824 } 24825 return &RolesTransactor{contract: contract}, nil 24826 } 24827 24828 // NewRolesFilterer creates a new log filterer instance of Roles, bound to a specific deployed contract. 24829 func NewRolesFilterer(address common.Address, filterer bind.ContractFilterer) (*RolesFilterer, error) { 24830 contract, err := bindRoles(address, nil, nil, filterer) 24831 if err != nil { 24832 return nil, err 24833 } 24834 return &RolesFilterer{contract: contract}, nil 24835 } 24836 24837 // bindRoles binds a generic wrapper to an already deployed contract. 24838 func bindRoles(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 24839 parsed, err := abi.JSON(strings.NewReader(RolesABI)) 24840 if err != nil { 24841 return nil, err 24842 } 24843 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 24844 } 24845 24846 // Call invokes the (constant) contract method with params as input values and 24847 // sets the output to result. The result type might be a single field for simple 24848 // returns, a slice of interfaces for anonymous returns and a struct for named 24849 // returns. 24850 func (_Roles *RolesRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 24851 return _Roles.Contract.RolesCaller.contract.Call(opts, result, method, params...) 24852 } 24853 24854 // Transfer initiates a plain transaction to move funds to the contract, calling 24855 // its default method if one is available. 24856 func (_Roles *RolesRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 24857 return _Roles.Contract.RolesTransactor.contract.Transfer(opts) 24858 } 24859 24860 // Transact invokes the (paid) contract method with params as input values. 24861 func (_Roles *RolesRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 24862 return _Roles.Contract.RolesTransactor.contract.Transact(opts, method, params...) 24863 } 24864 24865 // Call invokes the (constant) contract method with params as input values and 24866 // sets the output to result. The result type might be a single field for simple 24867 // returns, a slice of interfaces for anonymous returns and a struct for named 24868 // returns. 24869 func (_Roles *RolesCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 24870 return _Roles.Contract.contract.Call(opts, result, method, params...) 24871 } 24872 24873 // Transfer initiates a plain transaction to move funds to the contract, calling 24874 // its default method if one is available. 24875 func (_Roles *RolesTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 24876 return _Roles.Contract.contract.Transfer(opts) 24877 } 24878 24879 // Transact invokes the (paid) contract method with params as input values. 24880 func (_Roles *RolesTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 24881 return _Roles.Contract.contract.Transact(opts, method, params...) 24882 } 24883 24884 // SafeMathABI is the input ABI used to generate the binding from. 24885 const SafeMathABI = "[]" 24886 24887 // SafeMathBinRuntime is the compiled bytecode used for adding genesis block without deploying code. 24888 const SafeMathBinRuntime = `73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a723058201aa360e6241ae1bc829140fb38ae5ca1672181b2a5c529c4ca3a045ed2896feb0029` 24889 24890 // SafeMathBin is the compiled bytecode used for deploying new contracts. 24891 var SafeMathBin = "0x604c6023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea165627a7a723058201aa360e6241ae1bc829140fb38ae5ca1672181b2a5c529c4ca3a045ed2896feb0029" 24892 24893 // DeploySafeMath deploys a new Klaytn contract, binding an instance of SafeMath to it. 24894 func DeploySafeMath(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *SafeMath, error) { 24895 parsed, err := abi.JSON(strings.NewReader(SafeMathABI)) 24896 if err != nil { 24897 return common.Address{}, nil, nil, err 24898 } 24899 24900 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(SafeMathBin), backend) 24901 if err != nil { 24902 return common.Address{}, nil, nil, err 24903 } 24904 return address, tx, &SafeMath{SafeMathCaller: SafeMathCaller{contract: contract}, SafeMathTransactor: SafeMathTransactor{contract: contract}, SafeMathFilterer: SafeMathFilterer{contract: contract}}, nil 24905 } 24906 24907 // SafeMath is an auto generated Go binding around a Klaytn contract. 24908 type SafeMath struct { 24909 SafeMathCaller // Read-only binding to the contract 24910 SafeMathTransactor // Write-only binding to the contract 24911 SafeMathFilterer // Log filterer for contract events 24912 } 24913 24914 // SafeMathCaller is an auto generated read-only Go binding around a Klaytn contract. 24915 type SafeMathCaller struct { 24916 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24917 } 24918 24919 // SafeMathTransactor is an auto generated write-only Go binding around a Klaytn contract. 24920 type SafeMathTransactor struct { 24921 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24922 } 24923 24924 // SafeMathFilterer is an auto generated log filtering Go binding around a Klaytn contract events. 24925 type SafeMathFilterer struct { 24926 contract *bind.BoundContract // Generic contract wrapper for the low level calls 24927 } 24928 24929 // SafeMathSession is an auto generated Go binding around a Klaytn contract, 24930 // with pre-set call and transact options. 24931 type SafeMathSession struct { 24932 Contract *SafeMath // Generic contract binding to set the session for 24933 CallOpts bind.CallOpts // Call options to use throughout this session 24934 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24935 } 24936 24937 // SafeMathCallerSession is an auto generated read-only Go binding around a Klaytn contract, 24938 // with pre-set call options. 24939 type SafeMathCallerSession struct { 24940 Contract *SafeMathCaller // Generic contract caller binding to set the session for 24941 CallOpts bind.CallOpts // Call options to use throughout this session 24942 } 24943 24944 // SafeMathTransactorSession is an auto generated write-only Go binding around a Klaytn contract, 24945 // with pre-set transact options. 24946 type SafeMathTransactorSession struct { 24947 Contract *SafeMathTransactor // Generic contract transactor binding to set the session for 24948 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 24949 } 24950 24951 // SafeMathRaw is an auto generated low-level Go binding around a Klaytn contract. 24952 type SafeMathRaw struct { 24953 Contract *SafeMath // Generic contract binding to access the raw methods on 24954 } 24955 24956 // SafeMathCallerRaw is an auto generated low-level read-only Go binding around a Klaytn contract. 24957 type SafeMathCallerRaw struct { 24958 Contract *SafeMathCaller // Generic read-only contract binding to access the raw methods on 24959 } 24960 24961 // SafeMathTransactorRaw is an auto generated low-level write-only Go binding around a Klaytn contract. 24962 type SafeMathTransactorRaw struct { 24963 Contract *SafeMathTransactor // Generic write-only contract binding to access the raw methods on 24964 } 24965 24966 // NewSafeMath creates a new instance of SafeMath, bound to a specific deployed contract. 24967 func NewSafeMath(address common.Address, backend bind.ContractBackend) (*SafeMath, error) { 24968 contract, err := bindSafeMath(address, backend, backend, backend) 24969 if err != nil { 24970 return nil, err 24971 } 24972 return &SafeMath{SafeMathCaller: SafeMathCaller{contract: contract}, SafeMathTransactor: SafeMathTransactor{contract: contract}, SafeMathFilterer: SafeMathFilterer{contract: contract}}, nil 24973 } 24974 24975 // NewSafeMathCaller creates a new read-only instance of SafeMath, bound to a specific deployed contract. 24976 func NewSafeMathCaller(address common.Address, caller bind.ContractCaller) (*SafeMathCaller, error) { 24977 contract, err := bindSafeMath(address, caller, nil, nil) 24978 if err != nil { 24979 return nil, err 24980 } 24981 return &SafeMathCaller{contract: contract}, nil 24982 } 24983 24984 // NewSafeMathTransactor creates a new write-only instance of SafeMath, bound to a specific deployed contract. 24985 func NewSafeMathTransactor(address common.Address, transactor bind.ContractTransactor) (*SafeMathTransactor, error) { 24986 contract, err := bindSafeMath(address, nil, transactor, nil) 24987 if err != nil { 24988 return nil, err 24989 } 24990 return &SafeMathTransactor{contract: contract}, nil 24991 } 24992 24993 // NewSafeMathFilterer creates a new log filterer instance of SafeMath, bound to a specific deployed contract. 24994 func NewSafeMathFilterer(address common.Address, filterer bind.ContractFilterer) (*SafeMathFilterer, error) { 24995 contract, err := bindSafeMath(address, nil, nil, filterer) 24996 if err != nil { 24997 return nil, err 24998 } 24999 return &SafeMathFilterer{contract: contract}, nil 25000 } 25001 25002 // bindSafeMath binds a generic wrapper to an already deployed contract. 25003 func bindSafeMath(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 25004 parsed, err := abi.JSON(strings.NewReader(SafeMathABI)) 25005 if err != nil { 25006 return nil, err 25007 } 25008 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 25009 } 25010 25011 // Call invokes the (constant) contract method with params as input values and 25012 // sets the output to result. The result type might be a single field for simple 25013 // returns, a slice of interfaces for anonymous returns and a struct for named 25014 // returns. 25015 func (_SafeMath *SafeMathRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 25016 return _SafeMath.Contract.SafeMathCaller.contract.Call(opts, result, method, params...) 25017 } 25018 25019 // Transfer initiates a plain transaction to move funds to the contract, calling 25020 // its default method if one is available. 25021 func (_SafeMath *SafeMathRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 25022 return _SafeMath.Contract.SafeMathTransactor.contract.Transfer(opts) 25023 } 25024 25025 // Transact invokes the (paid) contract method with params as input values. 25026 func (_SafeMath *SafeMathRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 25027 return _SafeMath.Contract.SafeMathTransactor.contract.Transact(opts, method, params...) 25028 } 25029 25030 // Call invokes the (constant) contract method with params as input values and 25031 // sets the output to result. The result type might be a single field for simple 25032 // returns, a slice of interfaces for anonymous returns and a struct for named 25033 // returns. 25034 func (_SafeMath *SafeMathCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 25035 return _SafeMath.Contract.contract.Call(opts, result, method, params...) 25036 } 25037 25038 // Transfer initiates a plain transaction to move funds to the contract, calling 25039 // its default method if one is available. 25040 func (_SafeMath *SafeMathTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 25041 return _SafeMath.Contract.contract.Transfer(opts) 25042 } 25043 25044 // Transact invokes the (paid) contract method with params as input values. 25045 func (_SafeMath *SafeMathTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 25046 return _SafeMath.Contract.contract.Transact(opts, method, params...) 25047 }