github.com/diadata-org/diadata@v1.4.593/pkg/dia/scraper/exchange-scrapers/curvefi/curvepool/curvepool.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 curvepool 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = bind.Bind 24 _ = common.Big1 25 _ = types.BloomLookup 26 _ = event.NewSubscription 27 ) 28 29 // CurvepoolABI is the input ABI used to generate the binding from. 30 const CurvepoolABI = "[{\"name\":\"TokenExchange\",\"inputs\":[{\"type\":\"address\",\"name\":\"buyer\",\"indexed\":true},{\"type\":\"int128\",\"name\":\"sold_id\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"tokens_sold\",\"indexed\":false},{\"type\":\"int128\",\"name\":\"bought_id\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"tokens_bought\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"TokenExchangeUnderlying\",\"inputs\":[{\"type\":\"address\",\"name\":\"buyer\",\"indexed\":true},{\"type\":\"int128\",\"name\":\"sold_id\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"tokens_sold\",\"indexed\":false},{\"type\":\"int128\",\"name\":\"bought_id\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"tokens_bought\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"AddLiquidity\",\"inputs\":[{\"type\":\"address\",\"name\":\"provider\",\"indexed\":true},{\"type\":\"uint256[2]\",\"name\":\"token_amounts\",\"indexed\":false},{\"type\":\"uint256[2]\",\"name\":\"fees\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"invariant\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"token_supply\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"RemoveLiquidity\",\"inputs\":[{\"type\":\"address\",\"name\":\"provider\",\"indexed\":true},{\"type\":\"uint256[2]\",\"name\":\"token_amounts\",\"indexed\":false},{\"type\":\"uint256[2]\",\"name\":\"fees\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"token_supply\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"RemoveLiquidityImbalance\",\"inputs\":[{\"type\":\"address\",\"name\":\"provider\",\"indexed\":true},{\"type\":\"uint256[2]\",\"name\":\"token_amounts\",\"indexed\":false},{\"type\":\"uint256[2]\",\"name\":\"fees\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"invariant\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"token_supply\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"CommitNewAdmin\",\"inputs\":[{\"type\":\"uint256\",\"name\":\"deadline\",\"indexed\":true,\"unit\":\"sec\"},{\"type\":\"address\",\"name\":\"admin\",\"indexed\":true}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"NewAdmin\",\"inputs\":[{\"type\":\"address\",\"name\":\"admin\",\"indexed\":true}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"CommitNewParameters\",\"inputs\":[{\"type\":\"uint256\",\"name\":\"deadline\",\"indexed\":true,\"unit\":\"sec\"},{\"type\":\"uint256\",\"name\":\"A\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"fee\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"admin_fee\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"name\":\"NewParameters\",\"inputs\":[{\"type\":\"uint256\",\"name\":\"A\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"fee\",\"indexed\":false},{\"type\":\"uint256\",\"name\":\"admin_fee\",\"indexed\":false}],\"anonymous\":false,\"type\":\"event\"},{\"outputs\":[],\"inputs\":[{\"type\":\"address[2]\",\"name\":\"_coins\"},{\"type\":\"address[2]\",\"name\":\"_underlying_coins\"},{\"type\":\"address\",\"name\":\"_pool_token\"},{\"type\":\"uint256\",\"name\":\"_A\"},{\"type\":\"uint256\",\"name\":\"_fee\"}],\"constant\":false,\"payable\":false,\"type\":\"constructor\"},{\"name\":\"get_virtual_price\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":1084167},{\"name\":\"calc_token_amount\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"uint256[2]\",\"name\":\"amounts\"},{\"type\":\"bool\",\"name\":\"deposit\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":4239939},{\"name\":\"add_liquidity\",\"outputs\":[],\"inputs\":[{\"type\":\"uint256[2]\",\"name\":\"amounts\"},{\"type\":\"uint256\",\"name\":\"min_mint_amount\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":6479997},{\"name\":\"get_dy\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dx\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2543681},{\"name\":\"get_dx\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dy\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2543687},{\"name\":\"get_dy_underlying\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dx\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2543506},{\"name\":\"get_dx_underlying\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dy\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2543512},{\"name\":\"exchange\",\"outputs\":[],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dx\"},{\"type\":\"uint256\",\"name\":\"min_dy\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":5184573},{\"name\":\"exchange_underlying\",\"outputs\":[],\"inputs\":[{\"type\":\"int128\",\"name\":\"i\"},{\"type\":\"int128\",\"name\":\"j\"},{\"type\":\"uint256\",\"name\":\"dx\"},{\"type\":\"uint256\",\"name\":\"min_dy\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":5200817},{\"name\":\"remove_liquidity\",\"outputs\":[],\"inputs\":[{\"type\":\"uint256\",\"name\":\"_amount\"},{\"type\":\"uint256[2]\",\"name\":\"min_amounts\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":153898},{\"name\":\"remove_liquidity_imbalance\",\"outputs\":[],\"inputs\":[{\"type\":\"uint256[2]\",\"name\":\"amounts\"},{\"type\":\"uint256\",\"name\":\"max_burn_amount\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":6479708},{\"name\":\"commit_new_parameters\",\"outputs\":[],\"inputs\":[{\"type\":\"uint256\",\"name\":\"amplification\"},{\"type\":\"uint256\",\"name\":\"new_fee\"},{\"type\":\"uint256\",\"name\":\"new_admin_fee\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":146105},{\"name\":\"apply_new_parameters\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":133512},{\"name\":\"revert_new_parameters\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":21835},{\"name\":\"commit_transfer_ownership\",\"outputs\":[],\"inputs\":[{\"type\":\"address\",\"name\":\"_owner\"}],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":74512},{\"name\":\"apply_transfer_ownership\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":60568},{\"name\":\"revert_transfer_ownership\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":21925},{\"name\":\"withdraw_admin_fees\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":12831},{\"name\":\"kill_me\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":37878},{\"name\":\"unkill_me\",\"outputs\":[],\"inputs\":[],\"constant\":false,\"payable\":false,\"type\":\"function\",\"gas\":22015},{\"name\":\"coins\",\"outputs\":[{\"type\":\"address\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"arg0\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2190},{\"name\":\"underlying_coins\",\"outputs\":[{\"type\":\"address\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"arg0\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2220},{\"name\":\"balances\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[{\"type\":\"int128\",\"name\":\"arg0\"}],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2250},{\"name\":\"A\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2081},{\"name\":\"fee\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2111},{\"name\":\"admin_fee\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2141},{\"name\":\"owner\",\"outputs\":[{\"type\":\"address\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2171},{\"name\":\"admin_actions_deadline\",\"outputs\":[{\"type\":\"uint256\",\"unit\":\"sec\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2201},{\"name\":\"transfer_ownership_deadline\",\"outputs\":[{\"type\":\"uint256\",\"unit\":\"sec\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2231},{\"name\":\"future_A\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2261},{\"name\":\"future_fee\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2291},{\"name\":\"future_admin_fee\",\"outputs\":[{\"type\":\"uint256\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2321},{\"name\":\"future_owner\",\"outputs\":[{\"type\":\"address\",\"name\":\"out\"}],\"inputs\":[],\"constant\":true,\"payable\":false,\"type\":\"function\",\"gas\":2351}]" 31 32 // Curvepool is an auto generated Go binding around an Ethereum contract. 33 type Curvepool struct { 34 CurvepoolCaller // Read-only binding to the contract 35 CurvepoolTransactor // Write-only binding to the contract 36 CurvepoolFilterer // Log filterer for contract events 37 } 38 39 // CurvepoolCaller is an auto generated read-only Go binding around an Ethereum contract. 40 type CurvepoolCaller struct { 41 contract *bind.BoundContract // Generic contract wrapper for the low level calls 42 } 43 44 // CurvepoolTransactor is an auto generated write-only Go binding around an Ethereum contract. 45 type CurvepoolTransactor struct { 46 contract *bind.BoundContract // Generic contract wrapper for the low level calls 47 } 48 49 // CurvepoolFilterer is an auto generated log filtering Go binding around an Ethereum contract events. 50 type CurvepoolFilterer struct { 51 contract *bind.BoundContract // Generic contract wrapper for the low level calls 52 } 53 54 // CurvepoolSession is an auto generated Go binding around an Ethereum contract, 55 // with pre-set call and transact options. 56 type CurvepoolSession struct { 57 Contract *Curvepool // Generic contract binding to set the session for 58 CallOpts bind.CallOpts // Call options to use throughout this session 59 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 60 } 61 62 // CurvepoolCallerSession is an auto generated read-only Go binding around an Ethereum contract, 63 // with pre-set call options. 64 type CurvepoolCallerSession struct { 65 Contract *CurvepoolCaller // Generic contract caller binding to set the session for 66 CallOpts bind.CallOpts // Call options to use throughout this session 67 } 68 69 // CurvepoolTransactorSession is an auto generated write-only Go binding around an Ethereum contract, 70 // with pre-set transact options. 71 type CurvepoolTransactorSession struct { 72 Contract *CurvepoolTransactor // Generic contract transactor binding to set the session for 73 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 74 } 75 76 // CurvepoolRaw is an auto generated low-level Go binding around an Ethereum contract. 77 type CurvepoolRaw struct { 78 Contract *Curvepool // Generic contract binding to access the raw methods on 79 } 80 81 // CurvepoolCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 82 type CurvepoolCallerRaw struct { 83 Contract *CurvepoolCaller // Generic read-only contract binding to access the raw methods on 84 } 85 86 // CurvepoolTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 87 type CurvepoolTransactorRaw struct { 88 Contract *CurvepoolTransactor // Generic write-only contract binding to access the raw methods on 89 } 90 91 // NewCurvepool creates a new instance of Curvepool, bound to a specific deployed contract. 92 func NewCurvepool(address common.Address, backend bind.ContractBackend) (*Curvepool, error) { 93 contract, err := bindCurvepool(address, backend, backend, backend) 94 if err != nil { 95 return nil, err 96 } 97 return &Curvepool{CurvepoolCaller: CurvepoolCaller{contract: contract}, CurvepoolTransactor: CurvepoolTransactor{contract: contract}, CurvepoolFilterer: CurvepoolFilterer{contract: contract}}, nil 98 } 99 100 // NewCurvepoolCaller creates a new read-only instance of Curvepool, bound to a specific deployed contract. 101 func NewCurvepoolCaller(address common.Address, caller bind.ContractCaller) (*CurvepoolCaller, error) { 102 contract, err := bindCurvepool(address, caller, nil, nil) 103 if err != nil { 104 return nil, err 105 } 106 return &CurvepoolCaller{contract: contract}, nil 107 } 108 109 // NewCurvepoolTransactor creates a new write-only instance of Curvepool, bound to a specific deployed contract. 110 func NewCurvepoolTransactor(address common.Address, transactor bind.ContractTransactor) (*CurvepoolTransactor, error) { 111 contract, err := bindCurvepool(address, nil, transactor, nil) 112 if err != nil { 113 return nil, err 114 } 115 return &CurvepoolTransactor{contract: contract}, nil 116 } 117 118 // NewCurvepoolFilterer creates a new log filterer instance of Curvepool, bound to a specific deployed contract. 119 func NewCurvepoolFilterer(address common.Address, filterer bind.ContractFilterer) (*CurvepoolFilterer, error) { 120 contract, err := bindCurvepool(address, nil, nil, filterer) 121 if err != nil { 122 return nil, err 123 } 124 return &CurvepoolFilterer{contract: contract}, nil 125 } 126 127 // bindCurvepool binds a generic wrapper to an already deployed contract. 128 func bindCurvepool(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 129 parsed, err := abi.JSON(strings.NewReader(CurvepoolABI)) 130 if err != nil { 131 return nil, err 132 } 133 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 134 } 135 136 // Call invokes the (constant) contract method with params as input values and 137 // sets the output to result. The result type might be a single field for simple 138 // returns, a slice of interfaces for anonymous returns and a struct for named 139 // returns. 140 func (_Curvepool *CurvepoolRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 141 return _Curvepool.Contract.CurvepoolCaller.contract.Call(opts, result, method, params...) 142 } 143 144 // Transfer initiates a plain transaction to move funds to the contract, calling 145 // its default method if one is available. 146 func (_Curvepool *CurvepoolRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 147 return _Curvepool.Contract.CurvepoolTransactor.contract.Transfer(opts) 148 } 149 150 // Transact invokes the (paid) contract method with params as input values. 151 func (_Curvepool *CurvepoolRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 152 return _Curvepool.Contract.CurvepoolTransactor.contract.Transact(opts, method, params...) 153 } 154 155 // Call invokes the (constant) contract method with params as input values and 156 // sets the output to result. The result type might be a single field for simple 157 // returns, a slice of interfaces for anonymous returns and a struct for named 158 // returns. 159 func (_Curvepool *CurvepoolCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error { 160 return _Curvepool.Contract.contract.Call(opts, result, method, params...) 161 } 162 163 // Transfer initiates a plain transaction to move funds to the contract, calling 164 // its default method if one is available. 165 func (_Curvepool *CurvepoolTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 166 return _Curvepool.Contract.contract.Transfer(opts) 167 } 168 169 // Transact invokes the (paid) contract method with params as input values. 170 func (_Curvepool *CurvepoolTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 171 return _Curvepool.Contract.contract.Transact(opts, method, params...) 172 } 173 174 // A is a free data retrieval call binding the contract method 0xf446c1d0. 175 // 176 // Solidity: function A() returns(uint256 out) 177 func (_Curvepool *CurvepoolCaller) A(opts *bind.CallOpts) (*big.Int, error) { 178 var out []interface{} 179 err := _Curvepool.contract.Call(opts, &out, "A") 180 181 if err != nil { 182 return *new(*big.Int), err 183 } 184 185 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 186 187 return out0, err 188 189 } 190 191 // A is a free data retrieval call binding the contract method 0xf446c1d0. 192 // 193 // Solidity: function A() returns(uint256 out) 194 func (_Curvepool *CurvepoolSession) A() (*big.Int, error) { 195 return _Curvepool.Contract.A(&_Curvepool.CallOpts) 196 } 197 198 // A is a free data retrieval call binding the contract method 0xf446c1d0. 199 // 200 // Solidity: function A() returns(uint256 out) 201 func (_Curvepool *CurvepoolCallerSession) A() (*big.Int, error) { 202 return _Curvepool.Contract.A(&_Curvepool.CallOpts) 203 } 204 205 // AdminActionsDeadline is a free data retrieval call binding the contract method 0x405e28f8. 206 // 207 // Solidity: function admin_actions_deadline() returns(uint256 out) 208 func (_Curvepool *CurvepoolCaller) AdminActionsDeadline(opts *bind.CallOpts) (*big.Int, error) { 209 var out []interface{} 210 err := _Curvepool.contract.Call(opts, &out, "admin_actions_deadline") 211 212 if err != nil { 213 return *new(*big.Int), err 214 } 215 216 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 217 218 return out0, err 219 220 } 221 222 // AdminActionsDeadline is a free data retrieval call binding the contract method 0x405e28f8. 223 // 224 // Solidity: function admin_actions_deadline() returns(uint256 out) 225 func (_Curvepool *CurvepoolSession) AdminActionsDeadline() (*big.Int, error) { 226 return _Curvepool.Contract.AdminActionsDeadline(&_Curvepool.CallOpts) 227 } 228 229 // AdminActionsDeadline is a free data retrieval call binding the contract method 0x405e28f8. 230 // 231 // Solidity: function admin_actions_deadline() returns(uint256 out) 232 func (_Curvepool *CurvepoolCallerSession) AdminActionsDeadline() (*big.Int, error) { 233 return _Curvepool.Contract.AdminActionsDeadline(&_Curvepool.CallOpts) 234 } 235 236 // AdminFee is a free data retrieval call binding the contract method 0xfee3f7f9. 237 // 238 // Solidity: function admin_fee() returns(uint256 out) 239 func (_Curvepool *CurvepoolCaller) AdminFee(opts *bind.CallOpts) (*big.Int, error) { 240 var out []interface{} 241 err := _Curvepool.contract.Call(opts, &out, "admin_fee") 242 243 if err != nil { 244 return *new(*big.Int), err 245 } 246 247 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 248 249 return out0, err 250 251 } 252 253 // AdminFee is a free data retrieval call binding the contract method 0xfee3f7f9. 254 // 255 // Solidity: function admin_fee() returns(uint256 out) 256 func (_Curvepool *CurvepoolSession) AdminFee() (*big.Int, error) { 257 return _Curvepool.Contract.AdminFee(&_Curvepool.CallOpts) 258 } 259 260 // AdminFee is a free data retrieval call binding the contract method 0xfee3f7f9. 261 // 262 // Solidity: function admin_fee() returns(uint256 out) 263 func (_Curvepool *CurvepoolCallerSession) AdminFee() (*big.Int, error) { 264 return _Curvepool.Contract.AdminFee(&_Curvepool.CallOpts) 265 } 266 267 // Balances is a free data retrieval call binding the contract method 0x065a80d8. 268 // 269 // Solidity: function balances(int128 arg0) returns(uint256 out) 270 func (_Curvepool *CurvepoolCaller) Balances(opts *bind.CallOpts, arg0 *big.Int) (*big.Int, error) { 271 var out []interface{} 272 err := _Curvepool.contract.Call(opts, &out, "balances", arg0) 273 274 if err != nil { 275 return *new(*big.Int), err 276 } 277 278 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 279 280 return out0, err 281 282 } 283 284 // Balances is a free data retrieval call binding the contract method 0x065a80d8. 285 // 286 // Solidity: function balances(int128 arg0) returns(uint256 out) 287 func (_Curvepool *CurvepoolSession) Balances(arg0 *big.Int) (*big.Int, error) { 288 return _Curvepool.Contract.Balances(&_Curvepool.CallOpts, arg0) 289 } 290 291 // Balances is a free data retrieval call binding the contract method 0x065a80d8. 292 // 293 // Solidity: function balances(int128 arg0) returns(uint256 out) 294 func (_Curvepool *CurvepoolCallerSession) Balances(arg0 *big.Int) (*big.Int, error) { 295 return _Curvepool.Contract.Balances(&_Curvepool.CallOpts, arg0) 296 } 297 298 // CalcTokenAmount is a free data retrieval call binding the contract method 0xed8e84f3. 299 // 300 // Solidity: function calc_token_amount(uint256[2] amounts, bool deposit) returns(uint256 out) 301 func (_Curvepool *CurvepoolCaller) CalcTokenAmount(opts *bind.CallOpts, amounts [2]*big.Int, deposit bool) (*big.Int, error) { 302 var out []interface{} 303 err := _Curvepool.contract.Call(opts, &out, "calc_token_amount", amounts, deposit) 304 305 if err != nil { 306 return *new(*big.Int), err 307 } 308 309 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 310 311 return out0, err 312 313 } 314 315 // CalcTokenAmount is a free data retrieval call binding the contract method 0xed8e84f3. 316 // 317 // Solidity: function calc_token_amount(uint256[2] amounts, bool deposit) returns(uint256 out) 318 func (_Curvepool *CurvepoolSession) CalcTokenAmount(amounts [2]*big.Int, deposit bool) (*big.Int, error) { 319 return _Curvepool.Contract.CalcTokenAmount(&_Curvepool.CallOpts, amounts, deposit) 320 } 321 322 // CalcTokenAmount is a free data retrieval call binding the contract method 0xed8e84f3. 323 // 324 // Solidity: function calc_token_amount(uint256[2] amounts, bool deposit) returns(uint256 out) 325 func (_Curvepool *CurvepoolCallerSession) CalcTokenAmount(amounts [2]*big.Int, deposit bool) (*big.Int, error) { 326 return _Curvepool.Contract.CalcTokenAmount(&_Curvepool.CallOpts, amounts, deposit) 327 } 328 329 // Coins is a free data retrieval call binding the contract method 0x23746eb8. 330 // 331 // Solidity: function coins(int128 arg0) returns(address out) 332 func (_Curvepool *CurvepoolCaller) Coins(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 333 var out []interface{} 334 err := _Curvepool.contract.Call(opts, &out, "coins", arg0) 335 336 if err != nil { 337 return *new(common.Address), err 338 } 339 340 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 341 342 return out0, err 343 344 } 345 346 // Coins is a free data retrieval call binding the contract method 0x23746eb8. 347 // 348 // Solidity: function coins(int128 arg0) returns(address out) 349 func (_Curvepool *CurvepoolSession) Coins(arg0 *big.Int) (common.Address, error) { 350 return _Curvepool.Contract.Coins(&_Curvepool.CallOpts, arg0) 351 } 352 353 // Coins is a free data retrieval call binding the contract method 0x23746eb8. 354 // 355 // Solidity: function coins(int128 arg0) returns(address out) 356 func (_Curvepool *CurvepoolCallerSession) Coins(arg0 *big.Int) (common.Address, error) { 357 return _Curvepool.Contract.Coins(&_Curvepool.CallOpts, arg0) 358 } 359 360 // Fee is a free data retrieval call binding the contract method 0xddca3f43. 361 // 362 // Solidity: function fee() returns(uint256 out) 363 func (_Curvepool *CurvepoolCaller) Fee(opts *bind.CallOpts) (*big.Int, error) { 364 var out []interface{} 365 err := _Curvepool.contract.Call(opts, &out, "fee") 366 367 if err != nil { 368 return *new(*big.Int), err 369 } 370 371 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 372 373 return out0, err 374 375 } 376 377 // Fee is a free data retrieval call binding the contract method 0xddca3f43. 378 // 379 // Solidity: function fee() returns(uint256 out) 380 func (_Curvepool *CurvepoolSession) Fee() (*big.Int, error) { 381 return _Curvepool.Contract.Fee(&_Curvepool.CallOpts) 382 } 383 384 // Fee is a free data retrieval call binding the contract method 0xddca3f43. 385 // 386 // Solidity: function fee() returns(uint256 out) 387 func (_Curvepool *CurvepoolCallerSession) Fee() (*big.Int, error) { 388 return _Curvepool.Contract.Fee(&_Curvepool.CallOpts) 389 } 390 391 // FutureA is a free data retrieval call binding the contract method 0xb4b577ad. 392 // 393 // Solidity: function future_A() returns(uint256 out) 394 func (_Curvepool *CurvepoolCaller) FutureA(opts *bind.CallOpts) (*big.Int, error) { 395 var out []interface{} 396 err := _Curvepool.contract.Call(opts, &out, "future_A") 397 398 if err != nil { 399 return *new(*big.Int), err 400 } 401 402 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 403 404 return out0, err 405 406 } 407 408 // FutureA is a free data retrieval call binding the contract method 0xb4b577ad. 409 // 410 // Solidity: function future_A() returns(uint256 out) 411 func (_Curvepool *CurvepoolSession) FutureA() (*big.Int, error) { 412 return _Curvepool.Contract.FutureA(&_Curvepool.CallOpts) 413 } 414 415 // FutureA is a free data retrieval call binding the contract method 0xb4b577ad. 416 // 417 // Solidity: function future_A() returns(uint256 out) 418 func (_Curvepool *CurvepoolCallerSession) FutureA() (*big.Int, error) { 419 return _Curvepool.Contract.FutureA(&_Curvepool.CallOpts) 420 } 421 422 // FutureAdminFee is a free data retrieval call binding the contract method 0xe3824462. 423 // 424 // Solidity: function future_admin_fee() returns(uint256 out) 425 func (_Curvepool *CurvepoolCaller) FutureAdminFee(opts *bind.CallOpts) (*big.Int, error) { 426 var out []interface{} 427 err := _Curvepool.contract.Call(opts, &out, "future_admin_fee") 428 429 if err != nil { 430 return *new(*big.Int), err 431 } 432 433 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 434 435 return out0, err 436 437 } 438 439 // FutureAdminFee is a free data retrieval call binding the contract method 0xe3824462. 440 // 441 // Solidity: function future_admin_fee() returns(uint256 out) 442 func (_Curvepool *CurvepoolSession) FutureAdminFee() (*big.Int, error) { 443 return _Curvepool.Contract.FutureAdminFee(&_Curvepool.CallOpts) 444 } 445 446 // FutureAdminFee is a free data retrieval call binding the contract method 0xe3824462. 447 // 448 // Solidity: function future_admin_fee() returns(uint256 out) 449 func (_Curvepool *CurvepoolCallerSession) FutureAdminFee() (*big.Int, error) { 450 return _Curvepool.Contract.FutureAdminFee(&_Curvepool.CallOpts) 451 } 452 453 // FutureFee is a free data retrieval call binding the contract method 0x58680d0b. 454 // 455 // Solidity: function future_fee() returns(uint256 out) 456 func (_Curvepool *CurvepoolCaller) FutureFee(opts *bind.CallOpts) (*big.Int, error) { 457 var out []interface{} 458 err := _Curvepool.contract.Call(opts, &out, "future_fee") 459 460 if err != nil { 461 return *new(*big.Int), err 462 } 463 464 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 465 466 return out0, err 467 468 } 469 470 // FutureFee is a free data retrieval call binding the contract method 0x58680d0b. 471 // 472 // Solidity: function future_fee() returns(uint256 out) 473 func (_Curvepool *CurvepoolSession) FutureFee() (*big.Int, error) { 474 return _Curvepool.Contract.FutureFee(&_Curvepool.CallOpts) 475 } 476 477 // FutureFee is a free data retrieval call binding the contract method 0x58680d0b. 478 // 479 // Solidity: function future_fee() returns(uint256 out) 480 func (_Curvepool *CurvepoolCallerSession) FutureFee() (*big.Int, error) { 481 return _Curvepool.Contract.FutureFee(&_Curvepool.CallOpts) 482 } 483 484 // FutureOwner is a free data retrieval call binding the contract method 0x1ec0cdc1. 485 // 486 // Solidity: function future_owner() returns(address out) 487 func (_Curvepool *CurvepoolCaller) FutureOwner(opts *bind.CallOpts) (common.Address, error) { 488 var out []interface{} 489 err := _Curvepool.contract.Call(opts, &out, "future_owner") 490 491 if err != nil { 492 return *new(common.Address), err 493 } 494 495 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 496 497 return out0, err 498 499 } 500 501 // FutureOwner is a free data retrieval call binding the contract method 0x1ec0cdc1. 502 // 503 // Solidity: function future_owner() returns(address out) 504 func (_Curvepool *CurvepoolSession) FutureOwner() (common.Address, error) { 505 return _Curvepool.Contract.FutureOwner(&_Curvepool.CallOpts) 506 } 507 508 // FutureOwner is a free data retrieval call binding the contract method 0x1ec0cdc1. 509 // 510 // Solidity: function future_owner() returns(address out) 511 func (_Curvepool *CurvepoolCallerSession) FutureOwner() (common.Address, error) { 512 return _Curvepool.Contract.FutureOwner(&_Curvepool.CallOpts) 513 } 514 515 // GetDx is a free data retrieval call binding the contract method 0x67df02ca. 516 // 517 // Solidity: function get_dx(int128 i, int128 j, uint256 dy) returns(uint256 out) 518 func (_Curvepool *CurvepoolCaller) GetDx(opts *bind.CallOpts, i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 519 var out []interface{} 520 err := _Curvepool.contract.Call(opts, &out, "get_dx", i, j, dy) 521 522 if err != nil { 523 return *new(*big.Int), err 524 } 525 526 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 527 528 return out0, err 529 530 } 531 532 // GetDx is a free data retrieval call binding the contract method 0x67df02ca. 533 // 534 // Solidity: function get_dx(int128 i, int128 j, uint256 dy) returns(uint256 out) 535 func (_Curvepool *CurvepoolSession) GetDx(i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 536 return _Curvepool.Contract.GetDx(&_Curvepool.CallOpts, i, j, dy) 537 } 538 539 // GetDx is a free data retrieval call binding the contract method 0x67df02ca. 540 // 541 // Solidity: function get_dx(int128 i, int128 j, uint256 dy) returns(uint256 out) 542 func (_Curvepool *CurvepoolCallerSession) GetDx(i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 543 return _Curvepool.Contract.GetDx(&_Curvepool.CallOpts, i, j, dy) 544 } 545 546 // GetDxUnderlying is a free data retrieval call binding the contract method 0x0e71d1b9. 547 // 548 // Solidity: function get_dx_underlying(int128 i, int128 j, uint256 dy) returns(uint256 out) 549 func (_Curvepool *CurvepoolCaller) GetDxUnderlying(opts *bind.CallOpts, i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 550 var out []interface{} 551 err := _Curvepool.contract.Call(opts, &out, "get_dx_underlying", i, j, dy) 552 553 if err != nil { 554 return *new(*big.Int), err 555 } 556 557 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 558 559 return out0, err 560 561 } 562 563 // GetDxUnderlying is a free data retrieval call binding the contract method 0x0e71d1b9. 564 // 565 // Solidity: function get_dx_underlying(int128 i, int128 j, uint256 dy) returns(uint256 out) 566 func (_Curvepool *CurvepoolSession) GetDxUnderlying(i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 567 return _Curvepool.Contract.GetDxUnderlying(&_Curvepool.CallOpts, i, j, dy) 568 } 569 570 // GetDxUnderlying is a free data retrieval call binding the contract method 0x0e71d1b9. 571 // 572 // Solidity: function get_dx_underlying(int128 i, int128 j, uint256 dy) returns(uint256 out) 573 func (_Curvepool *CurvepoolCallerSession) GetDxUnderlying(i *big.Int, j *big.Int, dy *big.Int) (*big.Int, error) { 574 return _Curvepool.Contract.GetDxUnderlying(&_Curvepool.CallOpts, i, j, dy) 575 } 576 577 // GetDy is a free data retrieval call binding the contract method 0x5e0d443f. 578 // 579 // Solidity: function get_dy(int128 i, int128 j, uint256 dx) returns(uint256 out) 580 func (_Curvepool *CurvepoolCaller) GetDy(opts *bind.CallOpts, i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 581 var out []interface{} 582 err := _Curvepool.contract.Call(opts, &out, "get_dy", i, j, dx) 583 584 if err != nil { 585 return *new(*big.Int), err 586 } 587 588 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 589 590 return out0, err 591 592 } 593 594 // GetDy is a free data retrieval call binding the contract method 0x5e0d443f. 595 // 596 // Solidity: function get_dy(int128 i, int128 j, uint256 dx) returns(uint256 out) 597 func (_Curvepool *CurvepoolSession) GetDy(i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 598 return _Curvepool.Contract.GetDy(&_Curvepool.CallOpts, i, j, dx) 599 } 600 601 // GetDy is a free data retrieval call binding the contract method 0x5e0d443f. 602 // 603 // Solidity: function get_dy(int128 i, int128 j, uint256 dx) returns(uint256 out) 604 func (_Curvepool *CurvepoolCallerSession) GetDy(i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 605 return _Curvepool.Contract.GetDy(&_Curvepool.CallOpts, i, j, dx) 606 } 607 608 // GetDyUnderlying is a free data retrieval call binding the contract method 0x07211ef7. 609 // 610 // Solidity: function get_dy_underlying(int128 i, int128 j, uint256 dx) returns(uint256 out) 611 func (_Curvepool *CurvepoolCaller) GetDyUnderlying(opts *bind.CallOpts, i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 612 var out []interface{} 613 err := _Curvepool.contract.Call(opts, &out, "get_dy_underlying", i, j, dx) 614 615 if err != nil { 616 return *new(*big.Int), err 617 } 618 619 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 620 621 return out0, err 622 623 } 624 625 // GetDyUnderlying is a free data retrieval call binding the contract method 0x07211ef7. 626 // 627 // Solidity: function get_dy_underlying(int128 i, int128 j, uint256 dx) returns(uint256 out) 628 func (_Curvepool *CurvepoolSession) GetDyUnderlying(i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 629 return _Curvepool.Contract.GetDyUnderlying(&_Curvepool.CallOpts, i, j, dx) 630 } 631 632 // GetDyUnderlying is a free data retrieval call binding the contract method 0x07211ef7. 633 // 634 // Solidity: function get_dy_underlying(int128 i, int128 j, uint256 dx) returns(uint256 out) 635 func (_Curvepool *CurvepoolCallerSession) GetDyUnderlying(i *big.Int, j *big.Int, dx *big.Int) (*big.Int, error) { 636 return _Curvepool.Contract.GetDyUnderlying(&_Curvepool.CallOpts, i, j, dx) 637 } 638 639 // GetVirtualPrice is a free data retrieval call binding the contract method 0xbb7b8b80. 640 // 641 // Solidity: function get_virtual_price() returns(uint256 out) 642 func (_Curvepool *CurvepoolCaller) GetVirtualPrice(opts *bind.CallOpts) (*big.Int, error) { 643 var out []interface{} 644 err := _Curvepool.contract.Call(opts, &out, "get_virtual_price") 645 646 if err != nil { 647 return *new(*big.Int), err 648 } 649 650 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 651 652 return out0, err 653 654 } 655 656 // GetVirtualPrice is a free data retrieval call binding the contract method 0xbb7b8b80. 657 // 658 // Solidity: function get_virtual_price() returns(uint256 out) 659 func (_Curvepool *CurvepoolSession) GetVirtualPrice() (*big.Int, error) { 660 return _Curvepool.Contract.GetVirtualPrice(&_Curvepool.CallOpts) 661 } 662 663 // GetVirtualPrice is a free data retrieval call binding the contract method 0xbb7b8b80. 664 // 665 // Solidity: function get_virtual_price() returns(uint256 out) 666 func (_Curvepool *CurvepoolCallerSession) GetVirtualPrice() (*big.Int, error) { 667 return _Curvepool.Contract.GetVirtualPrice(&_Curvepool.CallOpts) 668 } 669 670 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 671 // 672 // Solidity: function owner() returns(address out) 673 func (_Curvepool *CurvepoolCaller) Owner(opts *bind.CallOpts) (common.Address, error) { 674 var out []interface{} 675 err := _Curvepool.contract.Call(opts, &out, "owner") 676 677 if err != nil { 678 return *new(common.Address), err 679 } 680 681 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 682 683 return out0, err 684 685 } 686 687 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 688 // 689 // Solidity: function owner() returns(address out) 690 func (_Curvepool *CurvepoolSession) Owner() (common.Address, error) { 691 return _Curvepool.Contract.Owner(&_Curvepool.CallOpts) 692 } 693 694 // Owner is a free data retrieval call binding the contract method 0x8da5cb5b. 695 // 696 // Solidity: function owner() returns(address out) 697 func (_Curvepool *CurvepoolCallerSession) Owner() (common.Address, error) { 698 return _Curvepool.Contract.Owner(&_Curvepool.CallOpts) 699 } 700 701 // TransferOwnershipDeadline is a free data retrieval call binding the contract method 0xe0a0b586. 702 // 703 // Solidity: function transfer_ownership_deadline() returns(uint256 out) 704 func (_Curvepool *CurvepoolCaller) TransferOwnershipDeadline(opts *bind.CallOpts) (*big.Int, error) { 705 var out []interface{} 706 err := _Curvepool.contract.Call(opts, &out, "transfer_ownership_deadline") 707 708 if err != nil { 709 return *new(*big.Int), err 710 } 711 712 out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int) 713 714 return out0, err 715 716 } 717 718 // TransferOwnershipDeadline is a free data retrieval call binding the contract method 0xe0a0b586. 719 // 720 // Solidity: function transfer_ownership_deadline() returns(uint256 out) 721 func (_Curvepool *CurvepoolSession) TransferOwnershipDeadline() (*big.Int, error) { 722 return _Curvepool.Contract.TransferOwnershipDeadline(&_Curvepool.CallOpts) 723 } 724 725 // TransferOwnershipDeadline is a free data retrieval call binding the contract method 0xe0a0b586. 726 // 727 // Solidity: function transfer_ownership_deadline() returns(uint256 out) 728 func (_Curvepool *CurvepoolCallerSession) TransferOwnershipDeadline() (*big.Int, error) { 729 return _Curvepool.Contract.TransferOwnershipDeadline(&_Curvepool.CallOpts) 730 } 731 732 // UnderlyingCoins is a free data retrieval call binding the contract method 0xb739953e. 733 // 734 // Solidity: function underlying_coins(int128 arg0) returns(address out) 735 func (_Curvepool *CurvepoolCaller) UnderlyingCoins(opts *bind.CallOpts, arg0 *big.Int) (common.Address, error) { 736 var out []interface{} 737 err := _Curvepool.contract.Call(opts, &out, "underlying_coins", arg0) 738 739 if err != nil { 740 return *new(common.Address), err 741 } 742 743 out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address) 744 745 return out0, err 746 747 } 748 749 // UnderlyingCoins is a free data retrieval call binding the contract method 0xb739953e. 750 // 751 // Solidity: function underlying_coins(int128 arg0) returns(address out) 752 func (_Curvepool *CurvepoolSession) UnderlyingCoins(arg0 *big.Int) (common.Address, error) { 753 return _Curvepool.Contract.UnderlyingCoins(&_Curvepool.CallOpts, arg0) 754 } 755 756 // UnderlyingCoins is a free data retrieval call binding the contract method 0xb739953e. 757 // 758 // Solidity: function underlying_coins(int128 arg0) returns(address out) 759 func (_Curvepool *CurvepoolCallerSession) UnderlyingCoins(arg0 *big.Int) (common.Address, error) { 760 return _Curvepool.Contract.UnderlyingCoins(&_Curvepool.CallOpts, arg0) 761 } 762 763 // AddLiquidity is a paid mutator transaction binding the contract method 0x0b4c7e4d. 764 // 765 // Solidity: function add_liquidity(uint256[2] amounts, uint256 min_mint_amount) returns() 766 func (_Curvepool *CurvepoolTransactor) AddLiquidity(opts *bind.TransactOpts, amounts [2]*big.Int, min_mint_amount *big.Int) (*types.Transaction, error) { 767 return _Curvepool.contract.Transact(opts, "add_liquidity", amounts, min_mint_amount) 768 } 769 770 // AddLiquidity is a paid mutator transaction binding the contract method 0x0b4c7e4d. 771 // 772 // Solidity: function add_liquidity(uint256[2] amounts, uint256 min_mint_amount) returns() 773 func (_Curvepool *CurvepoolSession) AddLiquidity(amounts [2]*big.Int, min_mint_amount *big.Int) (*types.Transaction, error) { 774 return _Curvepool.Contract.AddLiquidity(&_Curvepool.TransactOpts, amounts, min_mint_amount) 775 } 776 777 // AddLiquidity is a paid mutator transaction binding the contract method 0x0b4c7e4d. 778 // 779 // Solidity: function add_liquidity(uint256[2] amounts, uint256 min_mint_amount) returns() 780 func (_Curvepool *CurvepoolTransactorSession) AddLiquidity(amounts [2]*big.Int, min_mint_amount *big.Int) (*types.Transaction, error) { 781 return _Curvepool.Contract.AddLiquidity(&_Curvepool.TransactOpts, amounts, min_mint_amount) 782 } 783 784 // ApplyNewParameters is a paid mutator transaction binding the contract method 0x2a7dd7cd. 785 // 786 // Solidity: function apply_new_parameters() returns() 787 func (_Curvepool *CurvepoolTransactor) ApplyNewParameters(opts *bind.TransactOpts) (*types.Transaction, error) { 788 return _Curvepool.contract.Transact(opts, "apply_new_parameters") 789 } 790 791 // ApplyNewParameters is a paid mutator transaction binding the contract method 0x2a7dd7cd. 792 // 793 // Solidity: function apply_new_parameters() returns() 794 func (_Curvepool *CurvepoolSession) ApplyNewParameters() (*types.Transaction, error) { 795 return _Curvepool.Contract.ApplyNewParameters(&_Curvepool.TransactOpts) 796 } 797 798 // ApplyNewParameters is a paid mutator transaction binding the contract method 0x2a7dd7cd. 799 // 800 // Solidity: function apply_new_parameters() returns() 801 func (_Curvepool *CurvepoolTransactorSession) ApplyNewParameters() (*types.Transaction, error) { 802 return _Curvepool.Contract.ApplyNewParameters(&_Curvepool.TransactOpts) 803 } 804 805 // ApplyTransferOwnership is a paid mutator transaction binding the contract method 0x6a1c05ae. 806 // 807 // Solidity: function apply_transfer_ownership() returns() 808 func (_Curvepool *CurvepoolTransactor) ApplyTransferOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 809 return _Curvepool.contract.Transact(opts, "apply_transfer_ownership") 810 } 811 812 // ApplyTransferOwnership is a paid mutator transaction binding the contract method 0x6a1c05ae. 813 // 814 // Solidity: function apply_transfer_ownership() returns() 815 func (_Curvepool *CurvepoolSession) ApplyTransferOwnership() (*types.Transaction, error) { 816 return _Curvepool.Contract.ApplyTransferOwnership(&_Curvepool.TransactOpts) 817 } 818 819 // ApplyTransferOwnership is a paid mutator transaction binding the contract method 0x6a1c05ae. 820 // 821 // Solidity: function apply_transfer_ownership() returns() 822 func (_Curvepool *CurvepoolTransactorSession) ApplyTransferOwnership() (*types.Transaction, error) { 823 return _Curvepool.Contract.ApplyTransferOwnership(&_Curvepool.TransactOpts) 824 } 825 826 // CommitNewParameters is a paid mutator transaction binding the contract method 0xee11f5b6. 827 // 828 // Solidity: function commit_new_parameters(uint256 amplification, uint256 new_fee, uint256 new_admin_fee) returns() 829 func (_Curvepool *CurvepoolTransactor) CommitNewParameters(opts *bind.TransactOpts, amplification *big.Int, new_fee *big.Int, new_admin_fee *big.Int) (*types.Transaction, error) { 830 return _Curvepool.contract.Transact(opts, "commit_new_parameters", amplification, new_fee, new_admin_fee) 831 } 832 833 // CommitNewParameters is a paid mutator transaction binding the contract method 0xee11f5b6. 834 // 835 // Solidity: function commit_new_parameters(uint256 amplification, uint256 new_fee, uint256 new_admin_fee) returns() 836 func (_Curvepool *CurvepoolSession) CommitNewParameters(amplification *big.Int, new_fee *big.Int, new_admin_fee *big.Int) (*types.Transaction, error) { 837 return _Curvepool.Contract.CommitNewParameters(&_Curvepool.TransactOpts, amplification, new_fee, new_admin_fee) 838 } 839 840 // CommitNewParameters is a paid mutator transaction binding the contract method 0xee11f5b6. 841 // 842 // Solidity: function commit_new_parameters(uint256 amplification, uint256 new_fee, uint256 new_admin_fee) returns() 843 func (_Curvepool *CurvepoolTransactorSession) CommitNewParameters(amplification *big.Int, new_fee *big.Int, new_admin_fee *big.Int) (*types.Transaction, error) { 844 return _Curvepool.Contract.CommitNewParameters(&_Curvepool.TransactOpts, amplification, new_fee, new_admin_fee) 845 } 846 847 // CommitTransferOwnership is a paid mutator transaction binding the contract method 0x6b441a40. 848 // 849 // Solidity: function commit_transfer_ownership(address _owner) returns() 850 func (_Curvepool *CurvepoolTransactor) CommitTransferOwnership(opts *bind.TransactOpts, _owner common.Address) (*types.Transaction, error) { 851 return _Curvepool.contract.Transact(opts, "commit_transfer_ownership", _owner) 852 } 853 854 // CommitTransferOwnership is a paid mutator transaction binding the contract method 0x6b441a40. 855 // 856 // Solidity: function commit_transfer_ownership(address _owner) returns() 857 func (_Curvepool *CurvepoolSession) CommitTransferOwnership(_owner common.Address) (*types.Transaction, error) { 858 return _Curvepool.Contract.CommitTransferOwnership(&_Curvepool.TransactOpts, _owner) 859 } 860 861 // CommitTransferOwnership is a paid mutator transaction binding the contract method 0x6b441a40. 862 // 863 // Solidity: function commit_transfer_ownership(address _owner) returns() 864 func (_Curvepool *CurvepoolTransactorSession) CommitTransferOwnership(_owner common.Address) (*types.Transaction, error) { 865 return _Curvepool.Contract.CommitTransferOwnership(&_Curvepool.TransactOpts, _owner) 866 } 867 868 // Exchange is a paid mutator transaction binding the contract method 0x3df02124. 869 // 870 // Solidity: function exchange(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 871 func (_Curvepool *CurvepoolTransactor) Exchange(opts *bind.TransactOpts, i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 872 return _Curvepool.contract.Transact(opts, "exchange", i, j, dx, min_dy) 873 } 874 875 // Exchange is a paid mutator transaction binding the contract method 0x3df02124. 876 // 877 // Solidity: function exchange(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 878 func (_Curvepool *CurvepoolSession) Exchange(i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 879 return _Curvepool.Contract.Exchange(&_Curvepool.TransactOpts, i, j, dx, min_dy) 880 } 881 882 // Exchange is a paid mutator transaction binding the contract method 0x3df02124. 883 // 884 // Solidity: function exchange(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 885 func (_Curvepool *CurvepoolTransactorSession) Exchange(i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 886 return _Curvepool.Contract.Exchange(&_Curvepool.TransactOpts, i, j, dx, min_dy) 887 } 888 889 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xa6417ed6. 890 // 891 // Solidity: function exchange_underlying(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 892 func (_Curvepool *CurvepoolTransactor) ExchangeUnderlying(opts *bind.TransactOpts, i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 893 return _Curvepool.contract.Transact(opts, "exchange_underlying", i, j, dx, min_dy) 894 } 895 896 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xa6417ed6. 897 // 898 // Solidity: function exchange_underlying(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 899 func (_Curvepool *CurvepoolSession) ExchangeUnderlying(i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 900 return _Curvepool.Contract.ExchangeUnderlying(&_Curvepool.TransactOpts, i, j, dx, min_dy) 901 } 902 903 // ExchangeUnderlying is a paid mutator transaction binding the contract method 0xa6417ed6. 904 // 905 // Solidity: function exchange_underlying(int128 i, int128 j, uint256 dx, uint256 min_dy) returns() 906 func (_Curvepool *CurvepoolTransactorSession) ExchangeUnderlying(i *big.Int, j *big.Int, dx *big.Int, min_dy *big.Int) (*types.Transaction, error) { 907 return _Curvepool.Contract.ExchangeUnderlying(&_Curvepool.TransactOpts, i, j, dx, min_dy) 908 } 909 910 // KillMe is a paid mutator transaction binding the contract method 0xe3698853. 911 // 912 // Solidity: function kill_me() returns() 913 func (_Curvepool *CurvepoolTransactor) KillMe(opts *bind.TransactOpts) (*types.Transaction, error) { 914 return _Curvepool.contract.Transact(opts, "kill_me") 915 } 916 917 // KillMe is a paid mutator transaction binding the contract method 0xe3698853. 918 // 919 // Solidity: function kill_me() returns() 920 func (_Curvepool *CurvepoolSession) KillMe() (*types.Transaction, error) { 921 return _Curvepool.Contract.KillMe(&_Curvepool.TransactOpts) 922 } 923 924 // KillMe is a paid mutator transaction binding the contract method 0xe3698853. 925 // 926 // Solidity: function kill_me() returns() 927 func (_Curvepool *CurvepoolTransactorSession) KillMe() (*types.Transaction, error) { 928 return _Curvepool.Contract.KillMe(&_Curvepool.TransactOpts) 929 } 930 931 // RemoveLiquidity is a paid mutator transaction binding the contract method 0x5b36389c. 932 // 933 // Solidity: function remove_liquidity(uint256 _amount, uint256[2] min_amounts) returns() 934 func (_Curvepool *CurvepoolTransactor) RemoveLiquidity(opts *bind.TransactOpts, _amount *big.Int, min_amounts [2]*big.Int) (*types.Transaction, error) { 935 return _Curvepool.contract.Transact(opts, "remove_liquidity", _amount, min_amounts) 936 } 937 938 // RemoveLiquidity is a paid mutator transaction binding the contract method 0x5b36389c. 939 // 940 // Solidity: function remove_liquidity(uint256 _amount, uint256[2] min_amounts) returns() 941 func (_Curvepool *CurvepoolSession) RemoveLiquidity(_amount *big.Int, min_amounts [2]*big.Int) (*types.Transaction, error) { 942 return _Curvepool.Contract.RemoveLiquidity(&_Curvepool.TransactOpts, _amount, min_amounts) 943 } 944 945 // RemoveLiquidity is a paid mutator transaction binding the contract method 0x5b36389c. 946 // 947 // Solidity: function remove_liquidity(uint256 _amount, uint256[2] min_amounts) returns() 948 func (_Curvepool *CurvepoolTransactorSession) RemoveLiquidity(_amount *big.Int, min_amounts [2]*big.Int) (*types.Transaction, error) { 949 return _Curvepool.Contract.RemoveLiquidity(&_Curvepool.TransactOpts, _amount, min_amounts) 950 } 951 952 // RemoveLiquidityImbalance is a paid mutator transaction binding the contract method 0xe3103273. 953 // 954 // Solidity: function remove_liquidity_imbalance(uint256[2] amounts, uint256 max_burn_amount) returns() 955 func (_Curvepool *CurvepoolTransactor) RemoveLiquidityImbalance(opts *bind.TransactOpts, amounts [2]*big.Int, max_burn_amount *big.Int) (*types.Transaction, error) { 956 return _Curvepool.contract.Transact(opts, "remove_liquidity_imbalance", amounts, max_burn_amount) 957 } 958 959 // RemoveLiquidityImbalance is a paid mutator transaction binding the contract method 0xe3103273. 960 // 961 // Solidity: function remove_liquidity_imbalance(uint256[2] amounts, uint256 max_burn_amount) returns() 962 func (_Curvepool *CurvepoolSession) RemoveLiquidityImbalance(amounts [2]*big.Int, max_burn_amount *big.Int) (*types.Transaction, error) { 963 return _Curvepool.Contract.RemoveLiquidityImbalance(&_Curvepool.TransactOpts, amounts, max_burn_amount) 964 } 965 966 // RemoveLiquidityImbalance is a paid mutator transaction binding the contract method 0xe3103273. 967 // 968 // Solidity: function remove_liquidity_imbalance(uint256[2] amounts, uint256 max_burn_amount) returns() 969 func (_Curvepool *CurvepoolTransactorSession) RemoveLiquidityImbalance(amounts [2]*big.Int, max_burn_amount *big.Int) (*types.Transaction, error) { 970 return _Curvepool.Contract.RemoveLiquidityImbalance(&_Curvepool.TransactOpts, amounts, max_burn_amount) 971 } 972 973 // RevertNewParameters is a paid mutator transaction binding the contract method 0x226840fb. 974 // 975 // Solidity: function revert_new_parameters() returns() 976 func (_Curvepool *CurvepoolTransactor) RevertNewParameters(opts *bind.TransactOpts) (*types.Transaction, error) { 977 return _Curvepool.contract.Transact(opts, "revert_new_parameters") 978 } 979 980 // RevertNewParameters is a paid mutator transaction binding the contract method 0x226840fb. 981 // 982 // Solidity: function revert_new_parameters() returns() 983 func (_Curvepool *CurvepoolSession) RevertNewParameters() (*types.Transaction, error) { 984 return _Curvepool.Contract.RevertNewParameters(&_Curvepool.TransactOpts) 985 } 986 987 // RevertNewParameters is a paid mutator transaction binding the contract method 0x226840fb. 988 // 989 // Solidity: function revert_new_parameters() returns() 990 func (_Curvepool *CurvepoolTransactorSession) RevertNewParameters() (*types.Transaction, error) { 991 return _Curvepool.Contract.RevertNewParameters(&_Curvepool.TransactOpts) 992 } 993 994 // RevertTransferOwnership is a paid mutator transaction binding the contract method 0x86fbf193. 995 // 996 // Solidity: function revert_transfer_ownership() returns() 997 func (_Curvepool *CurvepoolTransactor) RevertTransferOwnership(opts *bind.TransactOpts) (*types.Transaction, error) { 998 return _Curvepool.contract.Transact(opts, "revert_transfer_ownership") 999 } 1000 1001 // RevertTransferOwnership is a paid mutator transaction binding the contract method 0x86fbf193. 1002 // 1003 // Solidity: function revert_transfer_ownership() returns() 1004 func (_Curvepool *CurvepoolSession) RevertTransferOwnership() (*types.Transaction, error) { 1005 return _Curvepool.Contract.RevertTransferOwnership(&_Curvepool.TransactOpts) 1006 } 1007 1008 // RevertTransferOwnership is a paid mutator transaction binding the contract method 0x86fbf193. 1009 // 1010 // Solidity: function revert_transfer_ownership() returns() 1011 func (_Curvepool *CurvepoolTransactorSession) RevertTransferOwnership() (*types.Transaction, error) { 1012 return _Curvepool.Contract.RevertTransferOwnership(&_Curvepool.TransactOpts) 1013 } 1014 1015 // UnkillMe is a paid mutator transaction binding the contract method 0x3046f972. 1016 // 1017 // Solidity: function unkill_me() returns() 1018 func (_Curvepool *CurvepoolTransactor) UnkillMe(opts *bind.TransactOpts) (*types.Transaction, error) { 1019 return _Curvepool.contract.Transact(opts, "unkill_me") 1020 } 1021 1022 // UnkillMe is a paid mutator transaction binding the contract method 0x3046f972. 1023 // 1024 // Solidity: function unkill_me() returns() 1025 func (_Curvepool *CurvepoolSession) UnkillMe() (*types.Transaction, error) { 1026 return _Curvepool.Contract.UnkillMe(&_Curvepool.TransactOpts) 1027 } 1028 1029 // UnkillMe is a paid mutator transaction binding the contract method 0x3046f972. 1030 // 1031 // Solidity: function unkill_me() returns() 1032 func (_Curvepool *CurvepoolTransactorSession) UnkillMe() (*types.Transaction, error) { 1033 return _Curvepool.Contract.UnkillMe(&_Curvepool.TransactOpts) 1034 } 1035 1036 // WithdrawAdminFees is a paid mutator transaction binding the contract method 0x30c54085. 1037 // 1038 // Solidity: function withdraw_admin_fees() returns() 1039 func (_Curvepool *CurvepoolTransactor) WithdrawAdminFees(opts *bind.TransactOpts) (*types.Transaction, error) { 1040 return _Curvepool.contract.Transact(opts, "withdraw_admin_fees") 1041 } 1042 1043 // WithdrawAdminFees is a paid mutator transaction binding the contract method 0x30c54085. 1044 // 1045 // Solidity: function withdraw_admin_fees() returns() 1046 func (_Curvepool *CurvepoolSession) WithdrawAdminFees() (*types.Transaction, error) { 1047 return _Curvepool.Contract.WithdrawAdminFees(&_Curvepool.TransactOpts) 1048 } 1049 1050 // WithdrawAdminFees is a paid mutator transaction binding the contract method 0x30c54085. 1051 // 1052 // Solidity: function withdraw_admin_fees() returns() 1053 func (_Curvepool *CurvepoolTransactorSession) WithdrawAdminFees() (*types.Transaction, error) { 1054 return _Curvepool.Contract.WithdrawAdminFees(&_Curvepool.TransactOpts) 1055 } 1056 1057 // CurvepoolAddLiquidityIterator is returned from FilterAddLiquidity and is used to iterate over the raw logs and unpacked data for AddLiquidity events raised by the Curvepool contract. 1058 type CurvepoolAddLiquidityIterator struct { 1059 Event *CurvepoolAddLiquidity // Event containing the contract specifics and raw log 1060 1061 contract *bind.BoundContract // Generic contract to use for unpacking event data 1062 event string // Event name to use for unpacking event data 1063 1064 logs chan types.Log // Log channel receiving the found contract events 1065 sub ethereum.Subscription // Subscription for errors, completion and termination 1066 done bool // Whether the subscription completed delivering logs 1067 fail error // Occurred error to stop iteration 1068 } 1069 1070 // Next advances the iterator to the subsequent event, returning whether there 1071 // are any more events found. In case of a retrieval or parsing error, false is 1072 // returned and Error() can be queried for the exact failure. 1073 func (it *CurvepoolAddLiquidityIterator) Next() bool { 1074 // If the iterator failed, stop iterating 1075 if it.fail != nil { 1076 return false 1077 } 1078 // If the iterator completed, deliver directly whatever's available 1079 if it.done { 1080 select { 1081 case log := <-it.logs: 1082 it.Event = new(CurvepoolAddLiquidity) 1083 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1084 it.fail = err 1085 return false 1086 } 1087 it.Event.Raw = log 1088 return true 1089 1090 default: 1091 return false 1092 } 1093 } 1094 // Iterator still in progress, wait for either a data or an error event 1095 select { 1096 case log := <-it.logs: 1097 it.Event = new(CurvepoolAddLiquidity) 1098 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1099 it.fail = err 1100 return false 1101 } 1102 it.Event.Raw = log 1103 return true 1104 1105 case err := <-it.sub.Err(): 1106 it.done = true 1107 it.fail = err 1108 return it.Next() 1109 } 1110 } 1111 1112 // Error returns any retrieval or parsing error occurred during filtering. 1113 func (it *CurvepoolAddLiquidityIterator) Error() error { 1114 return it.fail 1115 } 1116 1117 // Close terminates the iteration process, releasing any pending underlying 1118 // resources. 1119 func (it *CurvepoolAddLiquidityIterator) Close() error { 1120 it.sub.Unsubscribe() 1121 return nil 1122 } 1123 1124 // CurvepoolAddLiquidity represents a AddLiquidity event raised by the Curvepool contract. 1125 type CurvepoolAddLiquidity struct { 1126 Provider common.Address 1127 TokenAmounts [2]*big.Int 1128 Fees [2]*big.Int 1129 Invariant *big.Int 1130 TokenSupply *big.Int 1131 Raw types.Log // Blockchain specific contextual infos 1132 } 1133 1134 // FilterAddLiquidity is a free log retrieval operation binding the contract event 0x26f55a85081d24974e85c6c00045d0f0453991e95873f52bff0d21af4079a768. 1135 // 1136 // Solidity: event AddLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 1137 func (_Curvepool *CurvepoolFilterer) FilterAddLiquidity(opts *bind.FilterOpts, provider []common.Address) (*CurvepoolAddLiquidityIterator, error) { 1138 1139 var providerRule []interface{} 1140 for _, providerItem := range provider { 1141 providerRule = append(providerRule, providerItem) 1142 } 1143 1144 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "AddLiquidity", providerRule) 1145 if err != nil { 1146 return nil, err 1147 } 1148 return &CurvepoolAddLiquidityIterator{contract: _Curvepool.contract, event: "AddLiquidity", logs: logs, sub: sub}, nil 1149 } 1150 1151 // WatchAddLiquidity is a free log subscription operation binding the contract event 0x26f55a85081d24974e85c6c00045d0f0453991e95873f52bff0d21af4079a768. 1152 // 1153 // Solidity: event AddLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 1154 func (_Curvepool *CurvepoolFilterer) WatchAddLiquidity(opts *bind.WatchOpts, sink chan<- *CurvepoolAddLiquidity, provider []common.Address) (event.Subscription, error) { 1155 1156 var providerRule []interface{} 1157 for _, providerItem := range provider { 1158 providerRule = append(providerRule, providerItem) 1159 } 1160 1161 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "AddLiquidity", providerRule) 1162 if err != nil { 1163 return nil, err 1164 } 1165 return event.NewSubscription(func(quit <-chan struct{}) error { 1166 defer sub.Unsubscribe() 1167 for { 1168 select { 1169 case log := <-logs: 1170 // New log arrived, parse the event and forward to the user 1171 event := new(CurvepoolAddLiquidity) 1172 if err := _Curvepool.contract.UnpackLog(event, "AddLiquidity", log); err != nil { 1173 return err 1174 } 1175 event.Raw = log 1176 1177 select { 1178 case sink <- event: 1179 case err := <-sub.Err(): 1180 return err 1181 case <-quit: 1182 return nil 1183 } 1184 case err := <-sub.Err(): 1185 return err 1186 case <-quit: 1187 return nil 1188 } 1189 } 1190 }), nil 1191 } 1192 1193 // ParseAddLiquidity is a log parse operation binding the contract event 0x26f55a85081d24974e85c6c00045d0f0453991e95873f52bff0d21af4079a768. 1194 // 1195 // Solidity: event AddLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 1196 func (_Curvepool *CurvepoolFilterer) ParseAddLiquidity(log types.Log) (*CurvepoolAddLiquidity, error) { 1197 event := new(CurvepoolAddLiquidity) 1198 if err := _Curvepool.contract.UnpackLog(event, "AddLiquidity", log); err != nil { 1199 return nil, err 1200 } 1201 event.Raw = log 1202 return event, nil 1203 } 1204 1205 // CurvepoolCommitNewAdminIterator is returned from FilterCommitNewAdmin and is used to iterate over the raw logs and unpacked data for CommitNewAdmin events raised by the Curvepool contract. 1206 type CurvepoolCommitNewAdminIterator struct { 1207 Event *CurvepoolCommitNewAdmin // Event containing the contract specifics and raw log 1208 1209 contract *bind.BoundContract // Generic contract to use for unpacking event data 1210 event string // Event name to use for unpacking event data 1211 1212 logs chan types.Log // Log channel receiving the found contract events 1213 sub ethereum.Subscription // Subscription for errors, completion and termination 1214 done bool // Whether the subscription completed delivering logs 1215 fail error // Occurred error to stop iteration 1216 } 1217 1218 // Next advances the iterator to the subsequent event, returning whether there 1219 // are any more events found. In case of a retrieval or parsing error, false is 1220 // returned and Error() can be queried for the exact failure. 1221 func (it *CurvepoolCommitNewAdminIterator) Next() bool { 1222 // If the iterator failed, stop iterating 1223 if it.fail != nil { 1224 return false 1225 } 1226 // If the iterator completed, deliver directly whatever's available 1227 if it.done { 1228 select { 1229 case log := <-it.logs: 1230 it.Event = new(CurvepoolCommitNewAdmin) 1231 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1232 it.fail = err 1233 return false 1234 } 1235 it.Event.Raw = log 1236 return true 1237 1238 default: 1239 return false 1240 } 1241 } 1242 // Iterator still in progress, wait for either a data or an error event 1243 select { 1244 case log := <-it.logs: 1245 it.Event = new(CurvepoolCommitNewAdmin) 1246 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1247 it.fail = err 1248 return false 1249 } 1250 it.Event.Raw = log 1251 return true 1252 1253 case err := <-it.sub.Err(): 1254 it.done = true 1255 it.fail = err 1256 return it.Next() 1257 } 1258 } 1259 1260 // Error returns any retrieval or parsing error occurred during filtering. 1261 func (it *CurvepoolCommitNewAdminIterator) Error() error { 1262 return it.fail 1263 } 1264 1265 // Close terminates the iteration process, releasing any pending underlying 1266 // resources. 1267 func (it *CurvepoolCommitNewAdminIterator) Close() error { 1268 it.sub.Unsubscribe() 1269 return nil 1270 } 1271 1272 // CurvepoolCommitNewAdmin represents a CommitNewAdmin event raised by the Curvepool contract. 1273 type CurvepoolCommitNewAdmin struct { 1274 Deadline *big.Int 1275 Admin common.Address 1276 Raw types.Log // Blockchain specific contextual infos 1277 } 1278 1279 // FilterCommitNewAdmin is a free log retrieval operation binding the contract event 0x181aa3aa17d4cbf99265dd4443eba009433d3cde79d60164fde1d1a192beb935. 1280 // 1281 // Solidity: event CommitNewAdmin(uint256 indexed deadline, address indexed admin) 1282 func (_Curvepool *CurvepoolFilterer) FilterCommitNewAdmin(opts *bind.FilterOpts, deadline []*big.Int, admin []common.Address) (*CurvepoolCommitNewAdminIterator, error) { 1283 1284 var deadlineRule []interface{} 1285 for _, deadlineItem := range deadline { 1286 deadlineRule = append(deadlineRule, deadlineItem) 1287 } 1288 var adminRule []interface{} 1289 for _, adminItem := range admin { 1290 adminRule = append(adminRule, adminItem) 1291 } 1292 1293 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "CommitNewAdmin", deadlineRule, adminRule) 1294 if err != nil { 1295 return nil, err 1296 } 1297 return &CurvepoolCommitNewAdminIterator{contract: _Curvepool.contract, event: "CommitNewAdmin", logs: logs, sub: sub}, nil 1298 } 1299 1300 // WatchCommitNewAdmin is a free log subscription operation binding the contract event 0x181aa3aa17d4cbf99265dd4443eba009433d3cde79d60164fde1d1a192beb935. 1301 // 1302 // Solidity: event CommitNewAdmin(uint256 indexed deadline, address indexed admin) 1303 func (_Curvepool *CurvepoolFilterer) WatchCommitNewAdmin(opts *bind.WatchOpts, sink chan<- *CurvepoolCommitNewAdmin, deadline []*big.Int, admin []common.Address) (event.Subscription, error) { 1304 1305 var deadlineRule []interface{} 1306 for _, deadlineItem := range deadline { 1307 deadlineRule = append(deadlineRule, deadlineItem) 1308 } 1309 var adminRule []interface{} 1310 for _, adminItem := range admin { 1311 adminRule = append(adminRule, adminItem) 1312 } 1313 1314 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "CommitNewAdmin", deadlineRule, adminRule) 1315 if err != nil { 1316 return nil, err 1317 } 1318 return event.NewSubscription(func(quit <-chan struct{}) error { 1319 defer sub.Unsubscribe() 1320 for { 1321 select { 1322 case log := <-logs: 1323 // New log arrived, parse the event and forward to the user 1324 event := new(CurvepoolCommitNewAdmin) 1325 if err := _Curvepool.contract.UnpackLog(event, "CommitNewAdmin", log); err != nil { 1326 return err 1327 } 1328 event.Raw = log 1329 1330 select { 1331 case sink <- event: 1332 case err := <-sub.Err(): 1333 return err 1334 case <-quit: 1335 return nil 1336 } 1337 case err := <-sub.Err(): 1338 return err 1339 case <-quit: 1340 return nil 1341 } 1342 } 1343 }), nil 1344 } 1345 1346 // ParseCommitNewAdmin is a log parse operation binding the contract event 0x181aa3aa17d4cbf99265dd4443eba009433d3cde79d60164fde1d1a192beb935. 1347 // 1348 // Solidity: event CommitNewAdmin(uint256 indexed deadline, address indexed admin) 1349 func (_Curvepool *CurvepoolFilterer) ParseCommitNewAdmin(log types.Log) (*CurvepoolCommitNewAdmin, error) { 1350 event := new(CurvepoolCommitNewAdmin) 1351 if err := _Curvepool.contract.UnpackLog(event, "CommitNewAdmin", log); err != nil { 1352 return nil, err 1353 } 1354 event.Raw = log 1355 return event, nil 1356 } 1357 1358 // CurvepoolCommitNewParametersIterator is returned from FilterCommitNewParameters and is used to iterate over the raw logs and unpacked data for CommitNewParameters events raised by the Curvepool contract. 1359 type CurvepoolCommitNewParametersIterator struct { 1360 Event *CurvepoolCommitNewParameters // Event containing the contract specifics and raw log 1361 1362 contract *bind.BoundContract // Generic contract to use for unpacking event data 1363 event string // Event name to use for unpacking event data 1364 1365 logs chan types.Log // Log channel receiving the found contract events 1366 sub ethereum.Subscription // Subscription for errors, completion and termination 1367 done bool // Whether the subscription completed delivering logs 1368 fail error // Occurred error to stop iteration 1369 } 1370 1371 // Next advances the iterator to the subsequent event, returning whether there 1372 // are any more events found. In case of a retrieval or parsing error, false is 1373 // returned and Error() can be queried for the exact failure. 1374 func (it *CurvepoolCommitNewParametersIterator) Next() bool { 1375 // If the iterator failed, stop iterating 1376 if it.fail != nil { 1377 return false 1378 } 1379 // If the iterator completed, deliver directly whatever's available 1380 if it.done { 1381 select { 1382 case log := <-it.logs: 1383 it.Event = new(CurvepoolCommitNewParameters) 1384 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1385 it.fail = err 1386 return false 1387 } 1388 it.Event.Raw = log 1389 return true 1390 1391 default: 1392 return false 1393 } 1394 } 1395 // Iterator still in progress, wait for either a data or an error event 1396 select { 1397 case log := <-it.logs: 1398 it.Event = new(CurvepoolCommitNewParameters) 1399 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1400 it.fail = err 1401 return false 1402 } 1403 it.Event.Raw = log 1404 return true 1405 1406 case err := <-it.sub.Err(): 1407 it.done = true 1408 it.fail = err 1409 return it.Next() 1410 } 1411 } 1412 1413 // Error returns any retrieval or parsing error occurred during filtering. 1414 func (it *CurvepoolCommitNewParametersIterator) Error() error { 1415 return it.fail 1416 } 1417 1418 // Close terminates the iteration process, releasing any pending underlying 1419 // resources. 1420 func (it *CurvepoolCommitNewParametersIterator) Close() error { 1421 it.sub.Unsubscribe() 1422 return nil 1423 } 1424 1425 // CurvepoolCommitNewParameters represents a CommitNewParameters event raised by the Curvepool contract. 1426 type CurvepoolCommitNewParameters struct { 1427 Deadline *big.Int 1428 A *big.Int 1429 Fee *big.Int 1430 AdminFee *big.Int 1431 Raw types.Log // Blockchain specific contextual infos 1432 } 1433 1434 // FilterCommitNewParameters is a free log retrieval operation binding the contract event 0x6081daa3b61098baf24d9c69bcd53af932e0635c89c6fd0617534b9ba76a7f73. 1435 // 1436 // Solidity: event CommitNewParameters(uint256 indexed deadline, uint256 A, uint256 fee, uint256 admin_fee) 1437 func (_Curvepool *CurvepoolFilterer) FilterCommitNewParameters(opts *bind.FilterOpts, deadline []*big.Int) (*CurvepoolCommitNewParametersIterator, error) { 1438 1439 var deadlineRule []interface{} 1440 for _, deadlineItem := range deadline { 1441 deadlineRule = append(deadlineRule, deadlineItem) 1442 } 1443 1444 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "CommitNewParameters", deadlineRule) 1445 if err != nil { 1446 return nil, err 1447 } 1448 return &CurvepoolCommitNewParametersIterator{contract: _Curvepool.contract, event: "CommitNewParameters", logs: logs, sub: sub}, nil 1449 } 1450 1451 // WatchCommitNewParameters is a free log subscription operation binding the contract event 0x6081daa3b61098baf24d9c69bcd53af932e0635c89c6fd0617534b9ba76a7f73. 1452 // 1453 // Solidity: event CommitNewParameters(uint256 indexed deadline, uint256 A, uint256 fee, uint256 admin_fee) 1454 func (_Curvepool *CurvepoolFilterer) WatchCommitNewParameters(opts *bind.WatchOpts, sink chan<- *CurvepoolCommitNewParameters, deadline []*big.Int) (event.Subscription, error) { 1455 1456 var deadlineRule []interface{} 1457 for _, deadlineItem := range deadline { 1458 deadlineRule = append(deadlineRule, deadlineItem) 1459 } 1460 1461 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "CommitNewParameters", deadlineRule) 1462 if err != nil { 1463 return nil, err 1464 } 1465 return event.NewSubscription(func(quit <-chan struct{}) error { 1466 defer sub.Unsubscribe() 1467 for { 1468 select { 1469 case log := <-logs: 1470 // New log arrived, parse the event and forward to the user 1471 event := new(CurvepoolCommitNewParameters) 1472 if err := _Curvepool.contract.UnpackLog(event, "CommitNewParameters", log); err != nil { 1473 return err 1474 } 1475 event.Raw = log 1476 1477 select { 1478 case sink <- event: 1479 case err := <-sub.Err(): 1480 return err 1481 case <-quit: 1482 return nil 1483 } 1484 case err := <-sub.Err(): 1485 return err 1486 case <-quit: 1487 return nil 1488 } 1489 } 1490 }), nil 1491 } 1492 1493 // ParseCommitNewParameters is a log parse operation binding the contract event 0x6081daa3b61098baf24d9c69bcd53af932e0635c89c6fd0617534b9ba76a7f73. 1494 // 1495 // Solidity: event CommitNewParameters(uint256 indexed deadline, uint256 A, uint256 fee, uint256 admin_fee) 1496 func (_Curvepool *CurvepoolFilterer) ParseCommitNewParameters(log types.Log) (*CurvepoolCommitNewParameters, error) { 1497 event := new(CurvepoolCommitNewParameters) 1498 if err := _Curvepool.contract.UnpackLog(event, "CommitNewParameters", log); err != nil { 1499 return nil, err 1500 } 1501 event.Raw = log 1502 return event, nil 1503 } 1504 1505 // CurvepoolNewAdminIterator is returned from FilterNewAdmin and is used to iterate over the raw logs and unpacked data for NewAdmin events raised by the Curvepool contract. 1506 type CurvepoolNewAdminIterator struct { 1507 Event *CurvepoolNewAdmin // Event containing the contract specifics and raw log 1508 1509 contract *bind.BoundContract // Generic contract to use for unpacking event data 1510 event string // Event name to use for unpacking event data 1511 1512 logs chan types.Log // Log channel receiving the found contract events 1513 sub ethereum.Subscription // Subscription for errors, completion and termination 1514 done bool // Whether the subscription completed delivering logs 1515 fail error // Occurred error to stop iteration 1516 } 1517 1518 // Next advances the iterator to the subsequent event, returning whether there 1519 // are any more events found. In case of a retrieval or parsing error, false is 1520 // returned and Error() can be queried for the exact failure. 1521 func (it *CurvepoolNewAdminIterator) Next() bool { 1522 // If the iterator failed, stop iterating 1523 if it.fail != nil { 1524 return false 1525 } 1526 // If the iterator completed, deliver directly whatever's available 1527 if it.done { 1528 select { 1529 case log := <-it.logs: 1530 it.Event = new(CurvepoolNewAdmin) 1531 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1532 it.fail = err 1533 return false 1534 } 1535 it.Event.Raw = log 1536 return true 1537 1538 default: 1539 return false 1540 } 1541 } 1542 // Iterator still in progress, wait for either a data or an error event 1543 select { 1544 case log := <-it.logs: 1545 it.Event = new(CurvepoolNewAdmin) 1546 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1547 it.fail = err 1548 return false 1549 } 1550 it.Event.Raw = log 1551 return true 1552 1553 case err := <-it.sub.Err(): 1554 it.done = true 1555 it.fail = err 1556 return it.Next() 1557 } 1558 } 1559 1560 // Error returns any retrieval or parsing error occurred during filtering. 1561 func (it *CurvepoolNewAdminIterator) Error() error { 1562 return it.fail 1563 } 1564 1565 // Close terminates the iteration process, releasing any pending underlying 1566 // resources. 1567 func (it *CurvepoolNewAdminIterator) Close() error { 1568 it.sub.Unsubscribe() 1569 return nil 1570 } 1571 1572 // CurvepoolNewAdmin represents a NewAdmin event raised by the Curvepool contract. 1573 type CurvepoolNewAdmin struct { 1574 Admin common.Address 1575 Raw types.Log // Blockchain specific contextual infos 1576 } 1577 1578 // FilterNewAdmin is a free log retrieval operation binding the contract event 0x71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c. 1579 // 1580 // Solidity: event NewAdmin(address indexed admin) 1581 func (_Curvepool *CurvepoolFilterer) FilterNewAdmin(opts *bind.FilterOpts, admin []common.Address) (*CurvepoolNewAdminIterator, error) { 1582 1583 var adminRule []interface{} 1584 for _, adminItem := range admin { 1585 adminRule = append(adminRule, adminItem) 1586 } 1587 1588 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "NewAdmin", adminRule) 1589 if err != nil { 1590 return nil, err 1591 } 1592 return &CurvepoolNewAdminIterator{contract: _Curvepool.contract, event: "NewAdmin", logs: logs, sub: sub}, nil 1593 } 1594 1595 // WatchNewAdmin is a free log subscription operation binding the contract event 0x71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c. 1596 // 1597 // Solidity: event NewAdmin(address indexed admin) 1598 func (_Curvepool *CurvepoolFilterer) WatchNewAdmin(opts *bind.WatchOpts, sink chan<- *CurvepoolNewAdmin, admin []common.Address) (event.Subscription, error) { 1599 1600 var adminRule []interface{} 1601 for _, adminItem := range admin { 1602 adminRule = append(adminRule, adminItem) 1603 } 1604 1605 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "NewAdmin", adminRule) 1606 if err != nil { 1607 return nil, err 1608 } 1609 return event.NewSubscription(func(quit <-chan struct{}) error { 1610 defer sub.Unsubscribe() 1611 for { 1612 select { 1613 case log := <-logs: 1614 // New log arrived, parse the event and forward to the user 1615 event := new(CurvepoolNewAdmin) 1616 if err := _Curvepool.contract.UnpackLog(event, "NewAdmin", log); err != nil { 1617 return err 1618 } 1619 event.Raw = log 1620 1621 select { 1622 case sink <- event: 1623 case err := <-sub.Err(): 1624 return err 1625 case <-quit: 1626 return nil 1627 } 1628 case err := <-sub.Err(): 1629 return err 1630 case <-quit: 1631 return nil 1632 } 1633 } 1634 }), nil 1635 } 1636 1637 // ParseNewAdmin is a log parse operation binding the contract event 0x71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c. 1638 // 1639 // Solidity: event NewAdmin(address indexed admin) 1640 func (_Curvepool *CurvepoolFilterer) ParseNewAdmin(log types.Log) (*CurvepoolNewAdmin, error) { 1641 event := new(CurvepoolNewAdmin) 1642 if err := _Curvepool.contract.UnpackLog(event, "NewAdmin", log); err != nil { 1643 return nil, err 1644 } 1645 event.Raw = log 1646 return event, nil 1647 } 1648 1649 // CurvepoolNewParametersIterator is returned from FilterNewParameters and is used to iterate over the raw logs and unpacked data for NewParameters events raised by the Curvepool contract. 1650 type CurvepoolNewParametersIterator struct { 1651 Event *CurvepoolNewParameters // Event containing the contract specifics and raw log 1652 1653 contract *bind.BoundContract // Generic contract to use for unpacking event data 1654 event string // Event name to use for unpacking event data 1655 1656 logs chan types.Log // Log channel receiving the found contract events 1657 sub ethereum.Subscription // Subscription for errors, completion and termination 1658 done bool // Whether the subscription completed delivering logs 1659 fail error // Occurred error to stop iteration 1660 } 1661 1662 // Next advances the iterator to the subsequent event, returning whether there 1663 // are any more events found. In case of a retrieval or parsing error, false is 1664 // returned and Error() can be queried for the exact failure. 1665 func (it *CurvepoolNewParametersIterator) Next() bool { 1666 // If the iterator failed, stop iterating 1667 if it.fail != nil { 1668 return false 1669 } 1670 // If the iterator completed, deliver directly whatever's available 1671 if it.done { 1672 select { 1673 case log := <-it.logs: 1674 it.Event = new(CurvepoolNewParameters) 1675 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1676 it.fail = err 1677 return false 1678 } 1679 it.Event.Raw = log 1680 return true 1681 1682 default: 1683 return false 1684 } 1685 } 1686 // Iterator still in progress, wait for either a data or an error event 1687 select { 1688 case log := <-it.logs: 1689 it.Event = new(CurvepoolNewParameters) 1690 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1691 it.fail = err 1692 return false 1693 } 1694 it.Event.Raw = log 1695 return true 1696 1697 case err := <-it.sub.Err(): 1698 it.done = true 1699 it.fail = err 1700 return it.Next() 1701 } 1702 } 1703 1704 // Error returns any retrieval or parsing error occurred during filtering. 1705 func (it *CurvepoolNewParametersIterator) Error() error { 1706 return it.fail 1707 } 1708 1709 // Close terminates the iteration process, releasing any pending underlying 1710 // resources. 1711 func (it *CurvepoolNewParametersIterator) Close() error { 1712 it.sub.Unsubscribe() 1713 return nil 1714 } 1715 1716 // CurvepoolNewParameters represents a NewParameters event raised by the Curvepool contract. 1717 type CurvepoolNewParameters struct { 1718 A *big.Int 1719 Fee *big.Int 1720 AdminFee *big.Int 1721 Raw types.Log // Blockchain specific contextual infos 1722 } 1723 1724 // FilterNewParameters is a free log retrieval operation binding the contract event 0x752a27d1853eb7af3ee4ff764f2c4a51619386af721573dd3809e929c39db99e. 1725 // 1726 // Solidity: event NewParameters(uint256 A, uint256 fee, uint256 admin_fee) 1727 func (_Curvepool *CurvepoolFilterer) FilterNewParameters(opts *bind.FilterOpts) (*CurvepoolNewParametersIterator, error) { 1728 1729 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "NewParameters") 1730 if err != nil { 1731 return nil, err 1732 } 1733 return &CurvepoolNewParametersIterator{contract: _Curvepool.contract, event: "NewParameters", logs: logs, sub: sub}, nil 1734 } 1735 1736 // WatchNewParameters is a free log subscription operation binding the contract event 0x752a27d1853eb7af3ee4ff764f2c4a51619386af721573dd3809e929c39db99e. 1737 // 1738 // Solidity: event NewParameters(uint256 A, uint256 fee, uint256 admin_fee) 1739 func (_Curvepool *CurvepoolFilterer) WatchNewParameters(opts *bind.WatchOpts, sink chan<- *CurvepoolNewParameters) (event.Subscription, error) { 1740 1741 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "NewParameters") 1742 if err != nil { 1743 return nil, err 1744 } 1745 return event.NewSubscription(func(quit <-chan struct{}) error { 1746 defer sub.Unsubscribe() 1747 for { 1748 select { 1749 case log := <-logs: 1750 // New log arrived, parse the event and forward to the user 1751 event := new(CurvepoolNewParameters) 1752 if err := _Curvepool.contract.UnpackLog(event, "NewParameters", log); err != nil { 1753 return err 1754 } 1755 event.Raw = log 1756 1757 select { 1758 case sink <- event: 1759 case err := <-sub.Err(): 1760 return err 1761 case <-quit: 1762 return nil 1763 } 1764 case err := <-sub.Err(): 1765 return err 1766 case <-quit: 1767 return nil 1768 } 1769 } 1770 }), nil 1771 } 1772 1773 // ParseNewParameters is a log parse operation binding the contract event 0x752a27d1853eb7af3ee4ff764f2c4a51619386af721573dd3809e929c39db99e. 1774 // 1775 // Solidity: event NewParameters(uint256 A, uint256 fee, uint256 admin_fee) 1776 func (_Curvepool *CurvepoolFilterer) ParseNewParameters(log types.Log) (*CurvepoolNewParameters, error) { 1777 event := new(CurvepoolNewParameters) 1778 if err := _Curvepool.contract.UnpackLog(event, "NewParameters", log); err != nil { 1779 return nil, err 1780 } 1781 event.Raw = log 1782 return event, nil 1783 } 1784 1785 // CurvepoolRemoveLiquidityIterator is returned from FilterRemoveLiquidity and is used to iterate over the raw logs and unpacked data for RemoveLiquidity events raised by the Curvepool contract. 1786 type CurvepoolRemoveLiquidityIterator struct { 1787 Event *CurvepoolRemoveLiquidity // Event containing the contract specifics and raw log 1788 1789 contract *bind.BoundContract // Generic contract to use for unpacking event data 1790 event string // Event name to use for unpacking event data 1791 1792 logs chan types.Log // Log channel receiving the found contract events 1793 sub ethereum.Subscription // Subscription for errors, completion and termination 1794 done bool // Whether the subscription completed delivering logs 1795 fail error // Occurred error to stop iteration 1796 } 1797 1798 // Next advances the iterator to the subsequent event, returning whether there 1799 // are any more events found. In case of a retrieval or parsing error, false is 1800 // returned and Error() can be queried for the exact failure. 1801 func (it *CurvepoolRemoveLiquidityIterator) Next() bool { 1802 // If the iterator failed, stop iterating 1803 if it.fail != nil { 1804 return false 1805 } 1806 // If the iterator completed, deliver directly whatever's available 1807 if it.done { 1808 select { 1809 case log := <-it.logs: 1810 it.Event = new(CurvepoolRemoveLiquidity) 1811 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1812 it.fail = err 1813 return false 1814 } 1815 it.Event.Raw = log 1816 return true 1817 1818 default: 1819 return false 1820 } 1821 } 1822 // Iterator still in progress, wait for either a data or an error event 1823 select { 1824 case log := <-it.logs: 1825 it.Event = new(CurvepoolRemoveLiquidity) 1826 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1827 it.fail = err 1828 return false 1829 } 1830 it.Event.Raw = log 1831 return true 1832 1833 case err := <-it.sub.Err(): 1834 it.done = true 1835 it.fail = err 1836 return it.Next() 1837 } 1838 } 1839 1840 // Error returns any retrieval or parsing error occurred during filtering. 1841 func (it *CurvepoolRemoveLiquidityIterator) Error() error { 1842 return it.fail 1843 } 1844 1845 // Close terminates the iteration process, releasing any pending underlying 1846 // resources. 1847 func (it *CurvepoolRemoveLiquidityIterator) Close() error { 1848 it.sub.Unsubscribe() 1849 return nil 1850 } 1851 1852 // CurvepoolRemoveLiquidity represents a RemoveLiquidity event raised by the Curvepool contract. 1853 type CurvepoolRemoveLiquidity struct { 1854 Provider common.Address 1855 TokenAmounts [2]*big.Int 1856 Fees [2]*big.Int 1857 TokenSupply *big.Int 1858 Raw types.Log // Blockchain specific contextual infos 1859 } 1860 1861 // FilterRemoveLiquidity is a free log retrieval operation binding the contract event 0x7c363854ccf79623411f8995b362bce5eddff18c927edc6f5dbbb5e05819a82c. 1862 // 1863 // Solidity: event RemoveLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 token_supply) 1864 func (_Curvepool *CurvepoolFilterer) FilterRemoveLiquidity(opts *bind.FilterOpts, provider []common.Address) (*CurvepoolRemoveLiquidityIterator, error) { 1865 1866 var providerRule []interface{} 1867 for _, providerItem := range provider { 1868 providerRule = append(providerRule, providerItem) 1869 } 1870 1871 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "RemoveLiquidity", providerRule) 1872 if err != nil { 1873 return nil, err 1874 } 1875 return &CurvepoolRemoveLiquidityIterator{contract: _Curvepool.contract, event: "RemoveLiquidity", logs: logs, sub: sub}, nil 1876 } 1877 1878 // WatchRemoveLiquidity is a free log subscription operation binding the contract event 0x7c363854ccf79623411f8995b362bce5eddff18c927edc6f5dbbb5e05819a82c. 1879 // 1880 // Solidity: event RemoveLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 token_supply) 1881 func (_Curvepool *CurvepoolFilterer) WatchRemoveLiquidity(opts *bind.WatchOpts, sink chan<- *CurvepoolRemoveLiquidity, provider []common.Address) (event.Subscription, error) { 1882 1883 var providerRule []interface{} 1884 for _, providerItem := range provider { 1885 providerRule = append(providerRule, providerItem) 1886 } 1887 1888 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "RemoveLiquidity", providerRule) 1889 if err != nil { 1890 return nil, err 1891 } 1892 return event.NewSubscription(func(quit <-chan struct{}) error { 1893 defer sub.Unsubscribe() 1894 for { 1895 select { 1896 case log := <-logs: 1897 // New log arrived, parse the event and forward to the user 1898 event := new(CurvepoolRemoveLiquidity) 1899 if err := _Curvepool.contract.UnpackLog(event, "RemoveLiquidity", log); err != nil { 1900 return err 1901 } 1902 event.Raw = log 1903 1904 select { 1905 case sink <- event: 1906 case err := <-sub.Err(): 1907 return err 1908 case <-quit: 1909 return nil 1910 } 1911 case err := <-sub.Err(): 1912 return err 1913 case <-quit: 1914 return nil 1915 } 1916 } 1917 }), nil 1918 } 1919 1920 // ParseRemoveLiquidity is a log parse operation binding the contract event 0x7c363854ccf79623411f8995b362bce5eddff18c927edc6f5dbbb5e05819a82c. 1921 // 1922 // Solidity: event RemoveLiquidity(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 token_supply) 1923 func (_Curvepool *CurvepoolFilterer) ParseRemoveLiquidity(log types.Log) (*CurvepoolRemoveLiquidity, error) { 1924 event := new(CurvepoolRemoveLiquidity) 1925 if err := _Curvepool.contract.UnpackLog(event, "RemoveLiquidity", log); err != nil { 1926 return nil, err 1927 } 1928 event.Raw = log 1929 return event, nil 1930 } 1931 1932 // CurvepoolRemoveLiquidityImbalanceIterator is returned from FilterRemoveLiquidityImbalance and is used to iterate over the raw logs and unpacked data for RemoveLiquidityImbalance events raised by the Curvepool contract. 1933 type CurvepoolRemoveLiquidityImbalanceIterator struct { 1934 Event *CurvepoolRemoveLiquidityImbalance // Event containing the contract specifics and raw log 1935 1936 contract *bind.BoundContract // Generic contract to use for unpacking event data 1937 event string // Event name to use for unpacking event data 1938 1939 logs chan types.Log // Log channel receiving the found contract events 1940 sub ethereum.Subscription // Subscription for errors, completion and termination 1941 done bool // Whether the subscription completed delivering logs 1942 fail error // Occurred error to stop iteration 1943 } 1944 1945 // Next advances the iterator to the subsequent event, returning whether there 1946 // are any more events found. In case of a retrieval or parsing error, false is 1947 // returned and Error() can be queried for the exact failure. 1948 func (it *CurvepoolRemoveLiquidityImbalanceIterator) Next() bool { 1949 // If the iterator failed, stop iterating 1950 if it.fail != nil { 1951 return false 1952 } 1953 // If the iterator completed, deliver directly whatever's available 1954 if it.done { 1955 select { 1956 case log := <-it.logs: 1957 it.Event = new(CurvepoolRemoveLiquidityImbalance) 1958 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1959 it.fail = err 1960 return false 1961 } 1962 it.Event.Raw = log 1963 return true 1964 1965 default: 1966 return false 1967 } 1968 } 1969 // Iterator still in progress, wait for either a data or an error event 1970 select { 1971 case log := <-it.logs: 1972 it.Event = new(CurvepoolRemoveLiquidityImbalance) 1973 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1974 it.fail = err 1975 return false 1976 } 1977 it.Event.Raw = log 1978 return true 1979 1980 case err := <-it.sub.Err(): 1981 it.done = true 1982 it.fail = err 1983 return it.Next() 1984 } 1985 } 1986 1987 // Error returns any retrieval or parsing error occurred during filtering. 1988 func (it *CurvepoolRemoveLiquidityImbalanceIterator) Error() error { 1989 return it.fail 1990 } 1991 1992 // Close terminates the iteration process, releasing any pending underlying 1993 // resources. 1994 func (it *CurvepoolRemoveLiquidityImbalanceIterator) Close() error { 1995 it.sub.Unsubscribe() 1996 return nil 1997 } 1998 1999 // CurvepoolRemoveLiquidityImbalance represents a RemoveLiquidityImbalance event raised by the Curvepool contract. 2000 type CurvepoolRemoveLiquidityImbalance struct { 2001 Provider common.Address 2002 TokenAmounts [2]*big.Int 2003 Fees [2]*big.Int 2004 Invariant *big.Int 2005 TokenSupply *big.Int 2006 Raw types.Log // Blockchain specific contextual infos 2007 } 2008 2009 // FilterRemoveLiquidityImbalance is a free log retrieval operation binding the contract event 0x2b5508378d7e19e0d5fa338419034731416c4f5b219a10379956f764317fd47e. 2010 // 2011 // Solidity: event RemoveLiquidityImbalance(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 2012 func (_Curvepool *CurvepoolFilterer) FilterRemoveLiquidityImbalance(opts *bind.FilterOpts, provider []common.Address) (*CurvepoolRemoveLiquidityImbalanceIterator, error) { 2013 2014 var providerRule []interface{} 2015 for _, providerItem := range provider { 2016 providerRule = append(providerRule, providerItem) 2017 } 2018 2019 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "RemoveLiquidityImbalance", providerRule) 2020 if err != nil { 2021 return nil, err 2022 } 2023 return &CurvepoolRemoveLiquidityImbalanceIterator{contract: _Curvepool.contract, event: "RemoveLiquidityImbalance", logs: logs, sub: sub}, nil 2024 } 2025 2026 // WatchRemoveLiquidityImbalance is a free log subscription operation binding the contract event 0x2b5508378d7e19e0d5fa338419034731416c4f5b219a10379956f764317fd47e. 2027 // 2028 // Solidity: event RemoveLiquidityImbalance(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 2029 func (_Curvepool *CurvepoolFilterer) WatchRemoveLiquidityImbalance(opts *bind.WatchOpts, sink chan<- *CurvepoolRemoveLiquidityImbalance, provider []common.Address) (event.Subscription, error) { 2030 2031 var providerRule []interface{} 2032 for _, providerItem := range provider { 2033 providerRule = append(providerRule, providerItem) 2034 } 2035 2036 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "RemoveLiquidityImbalance", providerRule) 2037 if err != nil { 2038 return nil, err 2039 } 2040 return event.NewSubscription(func(quit <-chan struct{}) error { 2041 defer sub.Unsubscribe() 2042 for { 2043 select { 2044 case log := <-logs: 2045 // New log arrived, parse the event and forward to the user 2046 event := new(CurvepoolRemoveLiquidityImbalance) 2047 if err := _Curvepool.contract.UnpackLog(event, "RemoveLiquidityImbalance", log); err != nil { 2048 return err 2049 } 2050 event.Raw = log 2051 2052 select { 2053 case sink <- event: 2054 case err := <-sub.Err(): 2055 return err 2056 case <-quit: 2057 return nil 2058 } 2059 case err := <-sub.Err(): 2060 return err 2061 case <-quit: 2062 return nil 2063 } 2064 } 2065 }), nil 2066 } 2067 2068 // ParseRemoveLiquidityImbalance is a log parse operation binding the contract event 0x2b5508378d7e19e0d5fa338419034731416c4f5b219a10379956f764317fd47e. 2069 // 2070 // Solidity: event RemoveLiquidityImbalance(address indexed provider, uint256[2] token_amounts, uint256[2] fees, uint256 invariant, uint256 token_supply) 2071 func (_Curvepool *CurvepoolFilterer) ParseRemoveLiquidityImbalance(log types.Log) (*CurvepoolRemoveLiquidityImbalance, error) { 2072 event := new(CurvepoolRemoveLiquidityImbalance) 2073 if err := _Curvepool.contract.UnpackLog(event, "RemoveLiquidityImbalance", log); err != nil { 2074 return nil, err 2075 } 2076 event.Raw = log 2077 return event, nil 2078 } 2079 2080 // CurvepoolTokenExchangeIterator is returned from FilterTokenExchange and is used to iterate over the raw logs and unpacked data for TokenExchange events raised by the Curvepool contract. 2081 type CurvepoolTokenExchangeIterator struct { 2082 Event *CurvepoolTokenExchange // Event containing the contract specifics and raw log 2083 2084 contract *bind.BoundContract // Generic contract to use for unpacking event data 2085 event string // Event name to use for unpacking event data 2086 2087 logs chan types.Log // Log channel receiving the found contract events 2088 sub ethereum.Subscription // Subscription for errors, completion and termination 2089 done bool // Whether the subscription completed delivering logs 2090 fail error // Occurred error to stop iteration 2091 } 2092 2093 // Next advances the iterator to the subsequent event, returning whether there 2094 // are any more events found. In case of a retrieval or parsing error, false is 2095 // returned and Error() can be queried for the exact failure. 2096 func (it *CurvepoolTokenExchangeIterator) Next() bool { 2097 // If the iterator failed, stop iterating 2098 if it.fail != nil { 2099 return false 2100 } 2101 // If the iterator completed, deliver directly whatever's available 2102 if it.done { 2103 select { 2104 case log := <-it.logs: 2105 it.Event = new(CurvepoolTokenExchange) 2106 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2107 it.fail = err 2108 return false 2109 } 2110 it.Event.Raw = log 2111 return true 2112 2113 default: 2114 return false 2115 } 2116 } 2117 // Iterator still in progress, wait for either a data or an error event 2118 select { 2119 case log := <-it.logs: 2120 it.Event = new(CurvepoolTokenExchange) 2121 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2122 it.fail = err 2123 return false 2124 } 2125 it.Event.Raw = log 2126 return true 2127 2128 case err := <-it.sub.Err(): 2129 it.done = true 2130 it.fail = err 2131 return it.Next() 2132 } 2133 } 2134 2135 // Error returns any retrieval or parsing error occurred during filtering. 2136 func (it *CurvepoolTokenExchangeIterator) Error() error { 2137 return it.fail 2138 } 2139 2140 // Close terminates the iteration process, releasing any pending underlying 2141 // resources. 2142 func (it *CurvepoolTokenExchangeIterator) Close() error { 2143 it.sub.Unsubscribe() 2144 return nil 2145 } 2146 2147 // CurvepoolTokenExchange represents a TokenExchange event raised by the Curvepool contract. 2148 type CurvepoolTokenExchange struct { 2149 Buyer common.Address 2150 SoldId *big.Int 2151 TokensSold *big.Int 2152 BoughtId *big.Int 2153 TokensBought *big.Int 2154 Raw types.Log // Blockchain specific contextual infos 2155 } 2156 2157 // FilterTokenExchange is a free log retrieval operation binding the contract event 0x8b3e96f2b889fa771c53c981b40daf005f63f637f1869f707052d15a3dd97140. 2158 // 2159 // Solidity: event TokenExchange(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2160 func (_Curvepool *CurvepoolFilterer) FilterTokenExchange(opts *bind.FilterOpts, buyer []common.Address) (*CurvepoolTokenExchangeIterator, error) { 2161 2162 var buyerRule []interface{} 2163 for _, buyerItem := range buyer { 2164 buyerRule = append(buyerRule, buyerItem) 2165 } 2166 2167 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "TokenExchange", buyerRule) 2168 if err != nil { 2169 return nil, err 2170 } 2171 return &CurvepoolTokenExchangeIterator{contract: _Curvepool.contract, event: "TokenExchange", logs: logs, sub: sub}, nil 2172 } 2173 2174 // WatchTokenExchange is a free log subscription operation binding the contract event 0x8b3e96f2b889fa771c53c981b40daf005f63f637f1869f707052d15a3dd97140. 2175 // 2176 // Solidity: event TokenExchange(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2177 func (_Curvepool *CurvepoolFilterer) WatchTokenExchange(opts *bind.WatchOpts, sink chan<- *CurvepoolTokenExchange, buyer []common.Address) (event.Subscription, error) { 2178 2179 var buyerRule []interface{} 2180 for _, buyerItem := range buyer { 2181 buyerRule = append(buyerRule, buyerItem) 2182 } 2183 2184 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "TokenExchange", buyerRule) 2185 if err != nil { 2186 return nil, err 2187 } 2188 return event.NewSubscription(func(quit <-chan struct{}) error { 2189 defer sub.Unsubscribe() 2190 for { 2191 select { 2192 case log := <-logs: 2193 // New log arrived, parse the event and forward to the user 2194 event := new(CurvepoolTokenExchange) 2195 if err := _Curvepool.contract.UnpackLog(event, "TokenExchange", log); err != nil { 2196 return err 2197 } 2198 event.Raw = log 2199 2200 select { 2201 case sink <- event: 2202 case err := <-sub.Err(): 2203 return err 2204 case <-quit: 2205 return nil 2206 } 2207 case err := <-sub.Err(): 2208 return err 2209 case <-quit: 2210 return nil 2211 } 2212 } 2213 }), nil 2214 } 2215 2216 // ParseTokenExchange is a log parse operation binding the contract event 0x8b3e96f2b889fa771c53c981b40daf005f63f637f1869f707052d15a3dd97140. 2217 // 2218 // Solidity: event TokenExchange(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2219 func (_Curvepool *CurvepoolFilterer) ParseTokenExchange(log types.Log) (*CurvepoolTokenExchange, error) { 2220 event := new(CurvepoolTokenExchange) 2221 if err := _Curvepool.contract.UnpackLog(event, "TokenExchange", log); err != nil { 2222 return nil, err 2223 } 2224 event.Raw = log 2225 return event, nil 2226 } 2227 2228 // CurvepoolTokenExchangeUnderlyingIterator is returned from FilterTokenExchangeUnderlying and is used to iterate over the raw logs and unpacked data for TokenExchangeUnderlying events raised by the Curvepool contract. 2229 type CurvepoolTokenExchangeUnderlyingIterator struct { 2230 Event *CurvepoolTokenExchangeUnderlying // Event containing the contract specifics and raw log 2231 2232 contract *bind.BoundContract // Generic contract to use for unpacking event data 2233 event string // Event name to use for unpacking event data 2234 2235 logs chan types.Log // Log channel receiving the found contract events 2236 sub ethereum.Subscription // Subscription for errors, completion and termination 2237 done bool // Whether the subscription completed delivering logs 2238 fail error // Occurred error to stop iteration 2239 } 2240 2241 // Next advances the iterator to the subsequent event, returning whether there 2242 // are any more events found. In case of a retrieval or parsing error, false is 2243 // returned and Error() can be queried for the exact failure. 2244 func (it *CurvepoolTokenExchangeUnderlyingIterator) Next() bool { 2245 // If the iterator failed, stop iterating 2246 if it.fail != nil { 2247 return false 2248 } 2249 // If the iterator completed, deliver directly whatever's available 2250 if it.done { 2251 select { 2252 case log := <-it.logs: 2253 it.Event = new(CurvepoolTokenExchangeUnderlying) 2254 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2255 it.fail = err 2256 return false 2257 } 2258 it.Event.Raw = log 2259 return true 2260 2261 default: 2262 return false 2263 } 2264 } 2265 // Iterator still in progress, wait for either a data or an error event 2266 select { 2267 case log := <-it.logs: 2268 it.Event = new(CurvepoolTokenExchangeUnderlying) 2269 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 2270 it.fail = err 2271 return false 2272 } 2273 it.Event.Raw = log 2274 return true 2275 2276 case err := <-it.sub.Err(): 2277 it.done = true 2278 it.fail = err 2279 return it.Next() 2280 } 2281 } 2282 2283 // Error returns any retrieval or parsing error occurred during filtering. 2284 func (it *CurvepoolTokenExchangeUnderlyingIterator) Error() error { 2285 return it.fail 2286 } 2287 2288 // Close terminates the iteration process, releasing any pending underlying 2289 // resources. 2290 func (it *CurvepoolTokenExchangeUnderlyingIterator) Close() error { 2291 it.sub.Unsubscribe() 2292 return nil 2293 } 2294 2295 // CurvepoolTokenExchangeUnderlying represents a TokenExchangeUnderlying event raised by the Curvepool contract. 2296 type CurvepoolTokenExchangeUnderlying struct { 2297 Buyer common.Address 2298 SoldId *big.Int 2299 TokensSold *big.Int 2300 BoughtId *big.Int 2301 TokensBought *big.Int 2302 Raw types.Log // Blockchain specific contextual infos 2303 } 2304 2305 // FilterTokenExchangeUnderlying is a free log retrieval operation binding the contract event 0xd013ca23e77a65003c2c659c5442c00c805371b7fc1ebd4c206c41d1536bd90b. 2306 // 2307 // Solidity: event TokenExchangeUnderlying(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2308 func (_Curvepool *CurvepoolFilterer) FilterTokenExchangeUnderlying(opts *bind.FilterOpts, buyer []common.Address) (*CurvepoolTokenExchangeUnderlyingIterator, error) { 2309 2310 var buyerRule []interface{} 2311 for _, buyerItem := range buyer { 2312 buyerRule = append(buyerRule, buyerItem) 2313 } 2314 2315 logs, sub, err := _Curvepool.contract.FilterLogs(opts, "TokenExchangeUnderlying", buyerRule) 2316 if err != nil { 2317 return nil, err 2318 } 2319 return &CurvepoolTokenExchangeUnderlyingIterator{contract: _Curvepool.contract, event: "TokenExchangeUnderlying", logs: logs, sub: sub}, nil 2320 } 2321 2322 // WatchTokenExchangeUnderlying is a free log subscription operation binding the contract event 0xd013ca23e77a65003c2c659c5442c00c805371b7fc1ebd4c206c41d1536bd90b. 2323 // 2324 // Solidity: event TokenExchangeUnderlying(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2325 func (_Curvepool *CurvepoolFilterer) WatchTokenExchangeUnderlying(opts *bind.WatchOpts, sink chan<- *CurvepoolTokenExchangeUnderlying, buyer []common.Address) (event.Subscription, error) { 2326 2327 var buyerRule []interface{} 2328 for _, buyerItem := range buyer { 2329 buyerRule = append(buyerRule, buyerItem) 2330 } 2331 2332 logs, sub, err := _Curvepool.contract.WatchLogs(opts, "TokenExchangeUnderlying", buyerRule) 2333 if err != nil { 2334 return nil, err 2335 } 2336 return event.NewSubscription(func(quit <-chan struct{}) error { 2337 defer sub.Unsubscribe() 2338 for { 2339 select { 2340 case log := <-logs: 2341 // New log arrived, parse the event and forward to the user 2342 event := new(CurvepoolTokenExchangeUnderlying) 2343 if err := _Curvepool.contract.UnpackLog(event, "TokenExchangeUnderlying", log); err != nil { 2344 return err 2345 } 2346 event.Raw = log 2347 2348 select { 2349 case sink <- event: 2350 case err := <-sub.Err(): 2351 return err 2352 case <-quit: 2353 return nil 2354 } 2355 case err := <-sub.Err(): 2356 return err 2357 case <-quit: 2358 return nil 2359 } 2360 } 2361 }), nil 2362 } 2363 2364 // ParseTokenExchangeUnderlying is a log parse operation binding the contract event 0xd013ca23e77a65003c2c659c5442c00c805371b7fc1ebd4c206c41d1536bd90b. 2365 // 2366 // Solidity: event TokenExchangeUnderlying(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought) 2367 func (_Curvepool *CurvepoolFilterer) ParseTokenExchangeUnderlying(log types.Log) (*CurvepoolTokenExchangeUnderlying, error) { 2368 event := new(CurvepoolTokenExchangeUnderlying) 2369 if err := _Curvepool.contract.UnpackLog(event, "TokenExchangeUnderlying", log); err != nil { 2370 return nil, err 2371 } 2372 event.Raw = log 2373 return event, nil 2374 }