operation

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 2, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var LedgerOperationABI = LedgerOperationMetaData.ABI

LedgerOperationABI is the input ABI used to generate the binding from. Deprecated: Use LedgerOperationMetaData.ABI instead.

View Source
var LedgerOperationBin = LedgerOperationMetaData.Bin

LedgerOperationBin is the compiled bytecode used for deploying new contracts. Deprecated: Use LedgerOperationMetaData.Bin instead.

View Source
var LedgerOperationMetaData = &bind.MetaData{
	ABI: "[{\"type\":\"event\",\"name\":\"ClearOnePay\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"payId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"peerFrom\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"ConfirmSettle\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"settleBalance\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"ConfirmSettleFail\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"ConfirmWithdraw\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"withdrawnAmount\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"},{\"name\":\"receiver\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"recipientChannelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"deposits\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"},{\"name\":\"withdrawals\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"CooperativeSettle\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"settleBalance\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"CooperativeWithdraw\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"withdrawnAmount\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"},{\"name\":\"receiver\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"recipientChannelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"deposits\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"},{\"name\":\"withdrawals\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"},{\"name\":\"seqNum\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Deposit\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"peerAddrs\",\"type\":\"address[2]\",\"indexed\":false,\"internalType\":\"address[2]\"},{\"name\":\"deposits\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"},{\"name\":\"withdrawals\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"IntendSettle\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"seqNums\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"IntendWithdraw\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"receiver\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"OpenChannel\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"tokenType\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"},{\"name\":\"tokenAddress\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"peerAddrs\",\"type\":\"address[2]\",\"indexed\":false,\"internalType\":\"address[2]\"},{\"name\":\"initialDeposits\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"SnapshotStates\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"},{\"name\":\"seqNums\",\"type\":\"uint256[2]\",\"indexed\":false,\"internalType\":\"uint256[2]\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"VetoWithdraw\",\"inputs\":[{\"name\":\"channelId\",\"type\":\"bytes32\",\"indexed\":true,\"internalType\":\"bytes32\"}],\"anonymous\":false},{\"type\":\"error\",\"name\":\"ECDSAInvalidSignature\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"ECDSAInvalidSignatureLength\",\"inputs\":[{\"name\":\"length\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]},{\"type\":\"error\",\"name\":\"ECDSAInvalidSignatureS\",\"inputs\":[{\"name\":\"s\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]},{\"type\":\"error\",\"name\":\"SafeERC20FailedOperation\",\"inputs\":[{\"name\":\"token\",\"type\":\"address\",\"internalType\":\"address\"}]}]",
	Bin: "0x615496610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100fb575f3560e01c806383e0fef51161009e578063c98c92511161006e578063c98c925114610273578063e59f368614610291578063eb4de337146102b0578063ff7fb411146102cf575f5ffd5b806383e0fef5146101f8578063bb3d0f2b14610217578063bd199ca514610236578063bd9d315714610254575f5ffd5b806360297df3116100d957806360297df31461017a578063742fb5071461019b57806379e90087146101ba5780637a2654ed146101d9575f5ffd5b80630bdc5411146100ff57806344e58d5114610120578063594db6e31461015b575b5f5ffd5b81801561010a575f5ffd5b5061011e610119366004614de5565b6102ee565b005b61013e61012e366004614e2c565b600201546001600160a01b031690565b6040516001600160a01b0390911681526020015b60405180910390f35b818015610166575f5ffd5b5061011e610175366004614de5565b610841565b61018d610188366004614e43565b610fb4565b604051908152602001610152565b8180156101a6575f5ffd5b5061011e6101b5366004614de5565b610fc9565b8180156101c5575f5ffd5b5061011e6101d4366004614de5565b61121e565b8180156101e4575f5ffd5b5061011e6101f3366004614e63565b61163d565b818015610203575f5ffd5b5061011e610212366004614e43565b611760565b818015610222575f5ffd5b5061011e610231366004614e43565b611a9a565b61013e610244366004614e2c565b600301546001600160a01b031690565b81801561025f575f5ffd5b5061011e61026e366004614ea9565b611c89565b61013e610281366004614e2c565b600101546001600160a01b031690565b81801561029c575f5ffd5b5061011e6102ab366004614de5565b611ebe565b8180156102bb575f5ffd5b5061011e6102ca366004614e43565b61218c565b8180156102da575f5ffd5b5061011e6102e9366004614ee5565b6122d1565b5f61032d83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506123fe92505050565b805180519192505f9061035890828461034857610348614f49565b60200260200101515f0151612586565b90505f5b828110156108385781515f818152600689016020526040902061037f81336126c3565b15610419576001600382015460ff16600481111561039f5761039f614f5d565b14806103c357506002600382015460ff1660048111156103c1576103c1614f5d565b145b6104145760405162461bcd60e51b815260206004820152601960248201527f50656572206368616e6e656c20737461747573206572726f720000000000000060448201526064015b60405180910390fd5b610481565b6002600382015460ff16600481111561043457610434614f5d565b146104815760405162461bcd60e51b815260206004820152601c60248201527f4e6f6e70656572206368616e6e656c20737461747573206572726f7200000000604482015260640161040b565b8054158061048f5750805442105b6104db5760405162461bcd60e51b815260206004820152601c60248201527f536574746c652068617320616c72656164792066696e616c697a656400000000604482015260640161040b565b5f865f015184815181106104f1576104f1614f49565b60200260200101515f01518051906020012090505f875f0151858151811061051b5761051b614f49565b60200260200101516020015190505f86604001511115610695576105408383836126f9565b61055c5760405162461bcd60e51b815260040161040b90614f71565b5f6105748760200151856127be90919063ffffffff16565b90505f84600401826002811061058c5761058c614f49565b600802016003019050600160048111156105a8576105a8614f5d565b600386015460ff1660048111156105c1576105c1614f5d565b036105f0578054604089015110156105eb5760405162461bcd60e51b815260040161040b90614f9f565b61063c565b6002600386015460ff16600481111561060b5761060b614f5d565b036106345780546040890151116105eb5760405162461bcd60e51b815260040161040b90614f9f565b61063c614fc5565b6040880151815560608801516020908101518101516001830155608089015101516002820181905560a089015160038301551561067e5760c088015160048201555b61068e8d87848b60800151612837565b505061076b565b85604001515f03610763578254156106e55760405162461bcd60e51b8152602060048201526013602482015272696e74656e64536574746c65206265666f726560681b604482015260640161040b565b8051600114801561071f575061071f82825f8151811061070757610707614f49565b602002602001015185612a869092919063ffffffff16565b61075e5760405162461bcd60e51b815260206004820152601060248201526f10da1958dac81cda59c819985a5b195960821b604482015260640161040b565b61076b565b61076b614fc5565b610776600188614fed565b850361078b576107868b85612ad5565b610828565b610796600188614fed565b8510156108205787516107be906107ae876001615000565b8151811061034857610348614f49565b805190965084111561080d5760405162461bcd60e51b81526020600482015260186024820152774e6f6e2d617363656e64696e67206368616e6e656c49647360401b604482015260640161040b565b8551841015610786576107868b85612ad5565b610828614fc5565b50506001909201915061035c9050565b50505050505050565b5f61088083838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612b4692505050565b90505f61088f825f0151612cd7565b805160200151519091506002146108d75760405162461bcd60e51b815260206004820152600c60248201526b0aee4dedcce40d8cadccee8d60a31b604482015260640161040b565b80602001514211156109225760405162461bcd60e51b815260206004820152601460248201527313dc195b88191958591b1a5b99481c185cdcd95960621b604482015260640161040b565b8051516040805180820190915282516020015180515f92918291849061094a5761094a614f49565b6020026020010151602001518152602001845f01516020015160018151811061097557610975614f49565b60200260200101516020015181525090505f6040518060400160405280855f0151602001515f815181106109ab576109ab614f49565b60200260200101515f01516001600160a01b03166001600160a01b03168152602001855f0151602001516001815181106109e7576109e7614f49565b602090810291909101810151516001600160a01b0390811690925282015182519293508116911610610a5b5760405162461bcd60e51b815260206004820152601c60248201527f5065657220616464727320617265206e6f7420617363656e64696e6700000000604482015260640161040b565b6003880154855180516020909101206001600160a01b03909116905f80610a848c858786612dd1565b9150915087604001518160010181905550610aa18c826001612f77565b610aaa876130ae565b805160028084018054909291839160ff1916906001908490811115610ad157610ad1614f5d565b02179055506020918201518154610100600160a81b0319166101006001600160a01b03928316021790915586516004840180549183166001600160a01b03199283161790558851600585015587830151600c85018054909216921691909117905586810151600d830155890151610b4b90829085906126f9565b610b675760405162461bcd60e51b815260040161040b90614f71565b86602001516001600160a01b0316827f9d9f66221370175606b4085f28a419b201c9b6dafd9e0c4520e5bf69ea3e166d895f01516002811115610bac57610bac614f5d565b888a604051610bbd93929190615060565b60405180910390a3602086015186515f91610bd791615000565b9050805f03610c0d573415610bfe5760405162461bcd60e51b815260040161040b90615089565b50505050505050505050505050565b60058d015460ff1615610c80576020808901516001600160a01b03165f90815260048f019091526040902054811115610c805760405162461bcd60e51b815260206004820152601560248201527410985b185b98d948195e18d959591cc81b1a5b5a5d605a1b604482015260640161040b565b600188516002811115610c9557610c95614f5d565b03610e7d576060890151878160028110610cb157610cb1614f49565b60200201513414610cf95760405162461bcd60e51b81526020600482015260126024820152710dae6ce5cecc2d8eaca40dad2e6dac2e8c6d60731b604482015260640161040b565b5f888260028110610d0c57610d0c614f49565b60200201511115610d8b57856001600160a01b031663d68d9d4e898360028110610d3857610d38614f49565b6020020151866040518363ffffffff1660e01b8152600401610d5c91815260200190565b5f604051808303818588803b158015610d73575f5ffd5b505af1158015610d85573d5f5f3e3d5ffd5b50505050505b5f610d97826001614fed565b90505f898260028110610dac57610dac614f49565b60200201511115610e765760018f01546001600160a01b0316637e1cd431898360028110610ddc57610ddc614f49565b602002015189888d8660028110610df557610df5614f49565b60200201516040516001600160e01b031960e087901b1681526001600160a01b039485166004820152939092166024840152604483015260648201526084016020604051808303815f875af1158015610e50573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e7491906150b5565b505b5050610bfe565b600288516002811115610e9257610e92614f5d565b03610fac573415610eb55760405162461bcd60e51b815260040161040b90615089565b60208801515f5b6002811015610f2d57888160028110610ed757610ed7614f49565b602002015115610f2557610f25888260028110610ef657610ef6614f49565b6020020151308b8460028110610f0e57610f0e614f49565b60200201516001600160a01b038616929190613147565b600101610ebc565b50610f426001600160a01b03821687846131b4565b60405163030422ed60e61b8152600481018590526001600160a01b0382811660248301526044820184905287169063c108bb40906064015f604051808303815f87803b158015610f90575f5ffd5b505af1158015610fa2573d5f5f3e3d5ffd5b5050505050610bfe565b610bfe614fc5565b5f818152602083905260409020545b92915050565b5f61100883838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061324392505050565b90505f611017825f01516133d4565b805160808201515f828152600689016020526040902092935090916001600382015460ff16600481111561104d5761104d614f5d565b1461106a5760405162461bcd60e51b815260040161040b906150d4565b845180516020918201209086015161108590839083906126f9565b6110a15760405162461bcd60e51b815260040161040b90614f71565b816014015485602001516110b59190614fed565b6001146110d45760405162461bcd60e51b815260040161040b90614f9f565b84606001514211156111285760405162461bcd60e51b815260206004820152601860248201527f576974686472617720646561646c696e65207061737365640000000000000000604482015260640161040b565b604085015180516020808801516014860155909101516111498483836134b0565b6040516364768a4f60e11b8152600481018590525f90819073__$13d4168a6482a4756bee5acfadcccc5f1f$__9063c8ed149e9060240160c060405180830381865af415801561119b573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111bf9190615195565b925092505086846001600160a01b0316897f1b87d077d9b706e42883b454b67730633fd6b4b29f9a9cf5f57c278c54f51c8f8686868f60200151604051611209949392919061521c565b60405180910390a4610bfe8d8986868b61350b565b5f61125d83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061370192505050565b90505f61126c825f0151613892565b80515f8181526006880160205260409020919250906001600382015460ff16600481111561129c5761129c614f5d565b14806112c057506002600382015460ff1660048111156112be576112be614f5d565b145b6112dc5760405162461bcd60e51b815260040161040b906150d4565b83518051602091820120908501516112f790839083906126f9565b6113135760405162461bcd60e51b815260040161040b90614f71565b5f6040518060400160405280846004015f6002811061133457611334614f49565b60080201546001600160a01b039081168252600c860154166020918201526007850154908701519192501080156113725750600f8301546020860151115b61138e5760405162461bcd60e51b815260040161040b90614f9f565b42856060015110156113db5760405162461bcd60e51b815260206004820152601660248201527514d95d1d1b1948191958591b1a5b99481c185cdcd95960521b604482015260640161040b565b805f60200201516001600160a01b031685604001515f8151811061140157611401614f49565b60200260200101515f01516001600160a01b031614801561145b575080600160200201516001600160a01b0316856040015160018151811061144557611445614f49565b60200260200101515f01516001600160a01b0316145b6114a75760405162461bcd60e51b815260206004820152601860248201527f536574746c65206163636f756e7473206d69736d617463680000000000000000604482015260640161040b565b5f604051806040016040528087604001515f815181106114c9576114c9614f49565b602002602001015160200151815260200187604001516001815181106114f1576114f1614f49565b60209081029190910181015101519052604051636b5c4f1d60e11b81526004810186905290915073__$13d4168a6482a4756bee5acfadcccc5f1f$__9063d6b89e3a90602401602060405180830381865af4158015611552573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611576919061524c565b602082015182516115879190615000565b146115cb5760405162461bcd60e51b8152602060048201526014602482015273084c2d8c2dcc6ca40e6eada40dad2e6dac2e8c6d60631b604482015260640161040b565b6115d78a856003612f77565b847f6c666557dc97fd52cd2d9d6dd6d109e501ffdb831abeecf13aafeeaf762ee1fd826040516116079190615263565b60405180910390a26002840154611631908b90879061010090046001600160a01b03168585613a79565b50505050505050505050565b5f838152600685016020526040902060158101336001600384015460ff16600481111561166c5761166c614f5d565b146116895760405162461bcd60e51b815260040161040b906150d4565b81546001600160a01b0316156116e15760405162461bcd60e51b815260206004820152601e60248201527f50656e64696e6720776974686472617720696e74656e74206578697374730000604482015260640161040b565b6116eb83826126c3565b6116f3575f5ffd5b81546001600160a01b0319166001600160a01b0382169081178355600183018690554260028401556003830185905560405186815287907f97883669625c4ff7f5432b4ca33fe75fb5fee985deb196a967e5758f846170fe9060200160405180910390a350505050505050565b5f81815260068301602052604090206001600382015460ff16600481111561178a5761178a614f5d565b146117a75760405162461bcd60e51b815260040161040b906150d4565b60158101546001600160a01b03166118015760405162461bcd60e51b815260206004820152601a60248201527f4e6f2070656e64696e6720776974686472617720696e74656e74000000000000604482015260640161040b565b600181015460178201546118159190615000565b42101561185a5760405162461bcd60e51b8152602060048201526013602482015272111a5cdc1d5d19481b9bdd081d1a5b595bdd5d606a1b604482015260640161040b565b6015810180546016830180546018850180546001600160a01b031985169095555f92839055601786018390558290556001600160a01b0390921692906118a085856127be565b90505f6118ae826001614fed565b9050600486015f8184600281106118c7576118c7614f49565b60080201600301600401548285600281106118e4576118e4614f49565b600802016003016001015483866002811061190157611901614f49565b600802016002015484866002811061191b5761191b614f49565b600802016003016001015485886002811061193857611938614f49565b600802016001015461194a9190615000565b6119549190614fed565b61195e9190614fed565b6119689190614fed565b9050808611156119b25760405162461bcd60e51b8152602060048201526015602482015274115e18d95959081dda5d1a191c985dc81b1a5b5a5d605a1b604482015260640161040b565b6119bd8888886134b0565b6040516364768a4f60e11b8152600481018990525f90819073__$13d4168a6482a4756bee5acfadcccc5f1f$__9063c8ed149e9060240160c060405180830381865af4158015611a0f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a339190615195565b925092505086896001600160a01b03168c7fe8110b4ee08638c48f6a4d5f726927df4e541893efa9d2c2c47a6b889041826e8b8686604051611a7793929190615271565b60405180910390a4611a8c8c8c8b8b8b61350b565b505050505050505050505050565b5f818152600683016020526040902060048101426002600384015460ff166004811115611ac957611ac9614f5d565b14611ae65760405162461bcd60e51b815260040161040b906150d4565b8254811015611b375760405162461bcd60e51b815260206004820152601760248201527f536574746c65206973206e6f742066696e616c697a6564000000000000000000604482015260640161040b565b60058201541580611b4b5750600682015481115b8015611b665750600d8201541580611b665750600e82015481115b611bb25760405162461bcd60e51b815260206004820152601a60248201527f5061796d656e747320617265206e6f742066696e616c697a6564000000000000604482015260640161040b565b5f5f611bbd85613b54565b9150915081611c0357611bd08786613d62565b60405186907fa6549eb18490d42e7ec93f42115d1ee11b706d04077be9597034dd73ec8bcb36905f90a250505050505050565b611c0f87866003612f77565b857f728ddd8c5acda5947c34db8d759c66ae70884f526ff9b93637d351b012ef320682604051611c3f9190615263565b60405180910390a260028501546040805180820190915285546001600160a01b039081168252600887015481166020830152610838928a928a926101009092049091169085613a79565b34611c9f858585611c9a8587615000565b613de1565b5f8481526006860160205260409020600160028083015460ff1690811115611cc957611cc9614f5d565b03611dc7578115611d33576003860154604051636b46cea760e11b8152600481018790526001600160a01b039091169063d68d9d4e9084906024015f604051808303818588803b158015611d1b575f5ffd5b505af1158015611d2d573d5f5f3e3d5ffd5b50505050505b8215611dc25760018601546003870154604051637e1cd43160e01b81523360048201526001600160a01b0391821660248201526044810188905260648101869052911690637e1cd431906084016020604051808303815f875af1158015611d9c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dc091906150b5565b505b611eb6565b60028181015460ff1681811115611de057611de0614f5d565b03611eae578115611e035760405162461bcd60e51b815260040161040b90615089565b600281015461010090046001600160a01b0316611e2281333087613147565b6003870154611e3e906001600160a01b038381169116866131b4565b600387015460405163030422ed60e61b8152600481018890526001600160a01b038381166024830152604482018790529091169063c108bb40906064015f604051808303815f87803b158015611e92575f5ffd5b505af1158015611ea4573d5f5f3e3d5ffd5b5050505050611eb6565b611eb6614fc5565b505050505050565b5f611efd83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506123fe92505050565b805180519192505f90611f1890828461034857610348614f49565b90505f5b828110156108385781515f81815260068901602052604090206001600382015460ff166004811115611f5057611f50614f5d565b14611f6d5760405162461bcd60e51b815260040161040b906150d4565b5f865f01518481518110611f8357611f83614f49565b60200260200101515f01518051906020012090505f875f01518581518110611fad57611fad614f49565b6020026020010151602001519050611fd08282856126f99092919063ffffffff16565b611fec5760405162461bcd60e51b815260040161040b90614f71565b5f6120048760200151856127be90919063ffffffff16565b90505f84600401826002811061201c5761201c614f49565b600802016003019050805f015488604001511161204b5760405162461bcd60e51b815260040161040b90614f9f565b604088015181556060880151602090810151015160018083019190915560c0890151600483015561207c908a614fed565b87036120c757857fd0793cc4198bf052a6d91a9a1273c4af39f02a91b0e19029477511c278c5b2716120ad8761403b565b6040516120ba9190615263565b60405180910390a261217a565b6120d260018a614fed565b8710156121725789516120ea906107ae896001615000565b80519098508611156121395760405162461bcd60e51b81526020600482015260186024820152774e6f6e2d617363656e64696e67206368616e6e656c49647360401b604482015260640161040b565b875186101561216d57857fd0793cc4198bf052a6d91a9a1273c4af39f02a91b0e19029477511c278c5b2716120ad8761403b565b61217a565b61217a614fc5565b505060019094019350611f1c92505050565b5f81815260068301602052604090206001600382015460ff1660048111156121b6576121b6614f5d565b146121d35760405162461bcd60e51b815260040161040b906150d4565b60158101546001600160a01b031661222d5760405162461bcd60e51b815260206004820152601a60248201527f4e6f2070656e64696e6720776974686472617720696e74656e74000000000000604482015260640161040b565b61223781336126c3565b61227c5760405162461bcd60e51b815260206004820152601660248201527536b9b39739b2b73232b91034b9903737ba103832b2b960511b604482015260640161040b565b6015810180546001600160a01b03191690555f60168201819055601782018190556018820181905560405183917f9a8a5493b616f074b3f754b5fd66049c8e7980f01547289e5e31808485c6002c91a2505050565b5f84815260068601602052604090206002600382015460ff1660048111156122fb576122fb614f5d565b146123185760405162461bcd60e51b815260040161040b906150d4565b5f61232382866127be565b90505f8484604051612336929190615285565b604051809103902090505f83600401836002811061235657612356614f49565b600802016003019050818160020154146123a75760405162461bcd60e51b8152602060048201526012602482015271098d2e6e840d0c2e6d040dad2e6dac2e8c6d60731b604482015260640161040b565b5f6123e687878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061406392505050565b6020810151600284015590506116318a8a8684612837565b60408051602080820183526060825282518084019093525f80845290830184905290919061242d8260016141e5565b90508060018151811061244257612442614f49565b60200260200101516001600160401b0381111561246157612461615102565b6040519080825280602002602001820160405280156124a657816020015b604080518082019091526060808252602082015281526020019060019003908161247f5790505b50835280515f90829060019081106124c0576124c0614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576124e68461429d565b90925090508160010361256e576125046124ff856142d5565b61438c565b855f01518460018151811061251b5761251b614f49565b60200260200101518151811061253357612533614f49565b60200260200101819052508260018151811061255157612551614f49565b60200260200101805180919061256690615294565b9052506124cf565b612578848261451d565b6124cf565b50505050919050565b61258e614cb3565b604080518082019091525f80825260208201849052805b602083015151835110156126bb576125bc8361429d565b9092509050816001036125e1576125da6125d5846142d5565b614592565b84526125a5565b8160020361260d576125fa6125f5846142d5565b6145a8565b6001600160a01b031660208501526125a5565b816003036126285761261e836145b2565b60408501526125a5565b8160040361264b5761264161263c846142d5565b614621565b60608501526125a5565b8160050361266e5761266461265f846142d5565b614063565b60808501526125a5565b816006036126895761267f836145b2565b60a08501526125a5565b816007036126ac576126a261269d846142d5565b6146a9565b60c08501526125a5565b6126b6838261451d565b6125a5565b505050919050565b60048201545f906001600160a01b03838116911614806126f25750600c8301546001600160a01b038381169116145b9392505050565b5f815160021461270a57505f6126f2565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f908152601c849052603c812090805b60028110156127b15761277085828151811061275957612759614f49565b6020026020010151846146de90919063ffffffff16565b915086600401816002811061278757612787614f49565b60080201546001600160a01b038381169116146127a9575f93505050506126f2565b60010161273b565b5060019695505050505050565b60048201545f906001600160a01b03908116908316036127df57505f610fc3565b600c8301546001600160a01b03908116908316036127ff57506001610fc3565b60405162461bcd60e51b815260206004820152600d60248201526c2737b732bc34b9ba103832b2b960991b604482015260640161040b565b5f838152600685016020526040812060028087015484519293926001600160a01b0390911691637cac39cf919060048601908890811061287957612879614f49565b60080201600301600301546040518363ffffffff1660e01b81526004016128a19291906152ac565b5f60405180830381865afa1580156128bb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526128e291908101906152f8565b90505f805b82518110156129b45782818151811061290257612902614f49565b6020026020010151826129159190615000565b915083600401866002811061292c5761292c614f49565b6008020154855180516001600160a01b03909216918390811061295157612951614f49565b6020026020010151887f33252d4bc5cee2ad248475e8c39239a79dc64b2691c9ca1a63ff9af0c75b877686858151811061298d5761298d614f49565b60200260200101516040516129a491815260200190565b60405180910390a46001016128e7565b50808360040186600281106129cb576129cb614f49565b60080201600301600101546129e09190615000565b8360040186600281106129f5576129f5614f49565b60080201600401556020840151612a2f575f836004018660028110612a1c57612a1c614f49565b6008020160030160040181905550610838565b80836004018660028110612a4557612a45614f49565b6008020160030160040154612a5a9190614fed565b836004018660028110612a6f57612a6f614f49565b600802016003016004018190555050505050505050565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000005f908152601c839052603c81208190612ac090846146de565b9050612acc85826126c3565b95945050505050565b5f81815260068301602052604090206001810154612af39042615000565b8155612b0183826002612f77565b817f296143e7e25aa055fbb871702776a67da540876e2be721d5c38ba23c97c90d64612b2c8361403b565b604051612b399190615263565b60405180910390a2505050565b60408051808201909152606080825260208201525f612b7783604080518082019091525f8152602081019190915290565b90505f612b858260026141e5565b905080600281518110612b9a57612b9a614f49565b60200260200101516001600160401b03811115612bb957612bb9615102565b604051908082528060200260200182016040528015612bec57816020015b6060815260200190600190039081612bd75790505b5083602001819052505f81600281518110612c0957612c09614f49565b6020026020010181815250505f5f5b6020840151518451101561257d57612c2f8461429d565b909250905081600103612c4c57612c45846142d5565b8552612c18565b81600203612cc857612c5d846142d5565b856020015184600281518110612c7557612c75614f49565b602002602001015181518110612c8d57612c8d614f49565b602002602001018190525082600281518110612cab57612cab614f49565b602002602001018051809190612cc090615294565b905250612c18565b612cd2848261451d565b612c18565b612d1e6040805161010081019091525f60c0820181815260e083019190915260808201908152606060a0830152819081526020015f81526020015f81526020015f81525090565b604080518082019091525f80825260208201849052805b602083015151835110156126bb57612d4c8361429d565b909250905081600103612d7157612d6a612d65846142d5565b614706565b8452612d35565b81600203612d8c57612d82836145b2565b6020850152612d35565b81600303612da757612d9d836145b2565b6040850152612d35565b81600403612dc257612db8836145b2565b6060850152612d35565b612dcc838261451d565b612d35565b6040805160028082526060820183525f92839283929091602083019080368337505086518251929350918391505f90612e0c57612e0c614f49565b6001600160a01b0392909216602092830291909101820152850151815182906001908110612e3c57612e3c614f49565b6001600160a01b039283166020918202929092010152604051630d63a1fd60e01b81525f91881690630d63a1fd90612e7c90859030908a906004016153a2565b6020604051808303815f875af1158015612e98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ebc919061524c565b905080612efe5760405162461bcd60e51b815260206004820152601060248201526f06368616e6e656c4964206765747320360841b604482015260640161040b565b5f818152600689016020526040812090600382015460ff166004811115612f2757612f27614f5d565b14612f695760405162461bcd60e51b815260206004820152601260248201527113d8d8dd5c1a59590818da185b9b995b125960721b604482015260640161040b565b909890975095505050505050565b806004811115612f8957612f89614f5d565b600383015460ff166004811115612fa257612fa2614f5d565b03612fac57505050565b5f600383015460ff166004811115612fc657612fc6614f5d565b1461303157600382015460019084905f9060ff166004811115612feb57612feb614f5d565b81526020019081526020015f20546130039190614fed565b600383015484905f9060ff16600481111561302057613020614f5d565b815260208101919091526040015f20555b825f82600481111561304557613045614f5d565b81526020019081526020015f2054600161305f9190615000565b835f83600481111561307357613073614f5d565b815260208101919091526040015f205560038201805482919060ff191660018360048111156130a4576130a4614f5d565b0217905550505050565b604080518082019091525f80825260208201526001825160028111156130d6576130d6614f5d565b036130f65760208201516001600160a01b0316156130f2575f5ffd5b5090565b60028251600281111561310b5761310b614f5d565b0361313f5760208201516001600160a01b0316613126575f5ffd5b5f82602001516001600160a01b03163b116130f2575f5ffd5b6130f2614fc5565b6040516001600160a01b0384811660248301528381166044830152606482018390526131ae9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b0383818316178352505050506148b3565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052613205848261491f565b6131ae576040516001600160a01b0384811660248301525f604483015261323991869182169063095ea7b39060640161317c565b6131ae84826148b3565b60408051808201909152606080825260208201525f61327483604080518082019091525f8152602081019190915290565b90505f6132828260026141e5565b90508060028151811061329757613297614f49565b60200260200101516001600160401b038111156132b6576132b6615102565b6040519080825280602002602001820160405280156132e957816020015b60608152602001906001900390816132d45790505b5083602001819052505f8160028151811061330657613306614f49565b6020026020010181815250505f5f5b6020840151518451101561257d5761332c8461429d565b90925090508160010361334957613342846142d5565b8552613315565b816002036133c55761335a846142d5565b85602001518460028151811061337257613372614f49565b60200260200101518151811061338a5761338a614f49565b6020026020010181905250826002815181106133a8576133a8614f49565b6020026020010180518091906133bd90615294565b905250613315565b6133cf848261451d565b613315565b6133dc614d14565b604080518082019091525f80825260208201849052805b602083015151835110156126bb5761340a8361429d565b90925090508160010361342a576134236125d5846142d5565b84526133f3565b816002036134455761343b836145b2565b60208501526133f3565b816003036134685761345e613459846142d5565b614968565b60408501526133f3565b8160040361348357613479836145b2565b60608501526133f3565b816005036134a1576134976125d5846142d5565b60808501526133f3565b6134ab838261451d565b6133f3565b5f6134bb84846127be565b9050818460040182600281106134d3576134d3614f49565b60080201600201546134e59190615000565b8460040182600281106134fa576134fa614f49565b600802016002018190555050505050565b81156136fa575f8481526006860160205260409020816135a5576003860154600282015460405163470660bb60e11b8152600481018890526001600160a01b0361010090920482166024820152868216604482015260648101869052911690638e0cc176906084015f604051808303815f87803b15801561358a575f5ffd5b505af115801561359c573d5f5f3e3d5ffd5b50505050611eb6565b5f828152600687016020526040902060028082015460ff16908111156135cd576135cd614f5d565b60028084015460ff16908111156135e6576135e6614f5d565b148015613611575060028181015490830154610100918290046001600160a01b039081169290910416145b6136695760405162461bcd60e51b815260206004820152602360248201527f546f6b656e206d69736d61746368206f6620726563697069656e74206368616e6044820152621b995b60ea1b606482015260840161040b565b61367587848787613de1565b6003870154600283015460405163405d4a9760e11b815260048101899052602481018690526001600160a01b03610100909204821660448201528782166064820152608481018790529116906380ba952e9060a4015f604051808303815f87803b1580156136e1575f5ffd5b505af11580156136f3573d5f5f3e3d5ffd5b5050505050505b5050505050565b60408051808201909152606080825260208201525f61373283604080518082019091525f8152602081019190915290565b90505f6137408260026141e5565b90508060028151811061375557613755614f49565b60200260200101516001600160401b0381111561377457613774615102565b6040519080825280602002602001820160405280156137a757816020015b60608152602001906001900390816137925790505b5083602001819052505f816002815181106137c4576137c4614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576137ea8461429d565b90925090508160010361380757613800846142d5565b85526137d3565b8160020361388357613818846142d5565b85602001518460028151811061383057613830614f49565b60200260200101518151811061384857613848614f49565b60200260200101819052508260028151811061386657613866614f49565b60200260200101805180919061387b90615294565b9052506137d3565b61388d848261451d565b6137d3565b6138ba60405180608001604052805f81526020015f8152602001606081526020015f81525090565b604080518082019091525f808252602082018490526138da8260046141e5565b9050806003815181106138ef576138ef614f49565b60200260200101516001600160401b0381111561390e5761390e615102565b60405190808252806020026020018201604052801561395257816020015b604080518082019091525f808252602082015281526020019060019003908161392c5790505b5083604001819052505f8160038151811061396f5761396f614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576139958461429d565b9092509050816001036139b5576139ae6125d5856142d5565b855261397e565b816002036139d0576139c6846145b2565b602086015261397e565b81600303613a4f576139e4613459856142d5565b8560400151846003815181106139fc576139fc614f49565b602002602001015181518110613a1457613a14614f49565b602002602001018190525082600381518110613a3257613a32614f49565b602002602001018051809190613a4790615294565b90525061397e565b81600403613a6a57613a60846145b2565b606086015261397e565b613a74848261451d565b61397e565b5f5b6002811015611eb657818160028110613a9657613a96614f49565b602002015115613b4c5760038601546001600160a01b0316638e0cc1768686868560028110613ac757613ac7614f49565b6020020151868660028110613ade57613ade614f49565b60200201516040516001600160e01b031960e087901b16815260048101949094526001600160a01b0392831660248501529116604483015260648201526084015f604051808303815f87803b158015613b35575f5ffd5b505af1158015613b47573d5f5f3e3d5ffd5b505050505b600101613a7b565b5f613b5d614d44565b604080518082019091525f9060048501600283835b82821015613c0257604080516080808201835260088502870180546001600160a01b03168352600180820154602080860191909152600283015485870152855160a081018752600384015481526004840154818301526005840154968101969096526006830154606087810191909152600790930154938601939093529083019390935290835292019101613b72565b5050505090505f604051806040016040528083600160028110613c2757613c27614f49565b60200201516060015160200151845f60028110613c4657613c46614f49565b602002015160200151613c599190615000565b8152835160600151602090810151818601518201519190920191613c7c91615000565b905290505f5b6002811015613d55575f838260028110613c9e57613c9e614f49565b602002015160400151848360028110613cb957613cb9614f49565b60200201516060015160200151613cd09190615000565b905080838360028110613ce557613ce5614f49565b60200201511015613d13575f60405180604001604052805f81526020015f8152509550955050505050915091565b80838360028110613d2657613d26614f49565b6020020151613d359190614fed565b838360028110613d4757613d47614f49565b602002015250600101613c82565b5060019590945092505050565b5f8155613d7182826001612f77565b5f600782018190556008820181905560098201819055600a8201819055600b8201819055600f8201819055601082018190556011820181905560128201819055601382018190556015820180546001600160a01b0319169055601682018190556017820181905560189091015550565b5f83815260068501602052604090206001600382015460ff166004811115613e0b57613e0b614f5d565b14613e285760405162461bcd60e51b815260040161040b906150d4565b5f613e3382856127be565b600587015490915060ff1615613f2957600282015461010090046001600160a01b03165f9081526004878101602052604091829020549151636b5c4f1d60e11b815290810184905273__$13d4168a6482a4756bee5acfadcccc5f1f$__9063d6b89e3a90602401602060405180830381865af4158015613eb5573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ed9919061524c565b613ee39085615000565b1115613f295760405162461bcd60e51b815260206004820152601560248201527410985b185b98d948195e18d959591cc81b1a5b5a5d605a1b604482015260640161040b565b82826004018260028110613f3f57613f3f614f49565b6008020160010154613f519190615000565b826004018260028110613f6657613f66614f49565b60080201600101819055505f5f5f8473__$13d4168a6482a4756bee5acfadcccc5f1f$__63c8ed149e90916040518263ffffffff1660e01b8152600401613faf91815260200190565b60c060405180830381865af4158015613fca573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fee9190615195565b925092509250877fb63f5dc096f516663ffb5ef2b611f0e2acca8617a868c2a3653cba5e3ed0e92c84848460405161402893929190615402565b60405180910390a2505050505050505050565b614043614d44565b506040805180820190915260078201548152600f90910154602082015290565b604080518082018252606081525f6020808301829052835180850190945281845283018490529091906140978260026141e5565b9050806001815181106140ac576140ac614f49565b60200260200101516001600160401b038111156140cb576140cb615102565b6040519080825280602002602001820160405280156140f4578160200160208202803683370190505b50835280515f908290600190811061410e5761410e614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576141348461429d565b9092509050816001036141b85761414d6125d5856142d5565b855f01518460018151811061416457614164614f49565b60200260200101518151811061417c5761417c614f49565b6020026020010181815250508260018151811061419b5761419b614f49565b6020026020010180518091906141b090615294565b90525061411d565b816002036141d6576141cc6125d5856142d5565b602086015261411d565b6141e0848261451d565b61411d565b81516060906141f5836001615000565b6001600160401b0381111561420c5761420c615102565b604051908082528060200260200182016040528015614235578160200160208202803683370190505b5091505f5f5b60208601515186511015614294576142528661429d565b8092508193505050600184838151811061426e5761426e614f49565b602002602001018181516142829190615000565b90525061428f868261451d565b61423b565b50509092525090565b5f5f5f6142a9846145b2565b90506142b660088261542a565b92508060071660058111156142cd576142cd614f5d565b915050915091565b60605f6142e1836145b2565b90505f81845f01516142f39190615000565b9050836020015151811115614306575f5ffd5b816001600160401b0381111561431e5761431e615102565b6040519080825280601f01601f191660200182016040528015614348576020820181803683370190505b5060208086015186519295509181860191908301015f5b8581101561438157818101518382015261437a602082615000565b905061435f565b505050935250919050565b60408051808201909152606080825260208201525f6143bd83604080518082019091525f8152602081019190915290565b90505f6143cb8260026141e5565b9050806002815181106143e0576143e0614f49565b60200260200101516001600160401b038111156143ff576143ff615102565b60405190808252806020026020018201604052801561443257816020015b606081526020019060019003908161441d5790505b5083602001819052505f8160028151811061444f5761444f614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576144758461429d565b9092509050816001036144925761448b846142d5565b855261445e565b8160020361450e576144a3846142d5565b8560200151846002815181106144bb576144bb614f49565b6020026020010151815181106144d3576144d3614f49565b6020026020010181905250826002815181106144f1576144f1614f49565b60200260200101805180919061450690615294565b90525061445e565b614518848261451d565b61445e565b5f81600581111561453057614530614f5d565b036145435761453e826145b2565b505050565b600281600581111561455757614557614f5d565b036100fb575f614566836145b2565b905080835f018181516145799190615000565b9052506020830151518351111561453e575f5ffd5b5050565b5f81516020146145a0575f5ffd5b506020015190565b5f610fc3826149ff565b60208082015182518101909101515f9182805b600a8110156100fb5783811a91506145de816007615449565b82607f16901b85179450816080165f03614619576145fd816001615000565b8651879061460c908390615000565b9052509395945050505050565b6001016145c5565b614629614d62565b604080518082019091525f80825260208201849052805b602083015151835110156126bb576146578361429d565b90925090508160010361467c57614675614670846142d5565b614a1c565b8452614640565b8160020361469a57614690613459846142d5565b6020850152614640565b6146a4838261451d565b614640565b5f6020825111156146b8575f5ffd5b60208201519050815160206146cd9190614fed565b6146d8906008615449565b1c919050565b5f5f5f5f6146ec8686614aea565b9250925092506146fc8282614b33565b5090949350505050565b604080516080810182525f91810182815260608083019390935281526020810191909152604080518082019091525f8082526020820184905261474a8260026141e5565b90508060028151811061475f5761475f614f49565b60200260200101516001600160401b0381111561477e5761477e615102565b6040519080825280602002602001820160405280156147c257816020015b604080518082019091525f808252602082015281526020019060019003908161479c5790505b5083602001819052505f816002815181106147df576147df614f49565b6020026020010181815250505f5f5b6020840151518451101561257d576148058461429d565b9092509050816001036148255761481e614670856142d5565b85526147ee565b816002036148a457614839613459856142d5565b85602001518460028151811061485157614851614f49565b60200260200101518151811061486957614869614f49565b60200260200101819052508260028151811061488757614887614f49565b60200260200101805180919061489c90615294565b9052506147ee565b6148ae848261451d565b6147ee565b5f5f60205f8451602086015f885af1806148d2576040513d5f823e3d81fd5b50505f513d915081156148e95780600114156148f6565b6001600160a01b0384163b155b156131ae57604051635274afe760e01b81526001600160a01b038516600482015260240161040b565b5f5f5f5f60205f8651602088015f8a5af192503d91505f51905082801561495e57508115614950578060011461495e565b5f866001600160a01b03163b115b9695505050505050565b6040805180820182525f808252602080830182905283518085019094528184528301849052909190805b602083015151835110156126bb576149a98361429d565b9092509050816001036149d2576149c26125f5846142d5565b6001600160a01b03168452614992565b816002036149f0576149e661269d846142d5565b6020850152614992565b6149fa838261451d565b614992565b5f8151601414614a0d575f5ffd5b5060200151600160601b900490565b604080518082019091525f8082526020820152604080518082019091525f80825260208201849052505f5f5b602083015151835110156126bb57614a5f8361429d565b909250905081600103614ab457614a75836145b2565b6002811115614a8657614a86614f5d565b84906002811115614a9957614a99614f5d565b90816002811115614aac57614aac614f5d565b905250614a48565b81600203614adb57614ac86125f5846142d5565b6001600160a01b03166020850152614a48565b614ae5838261451d565b614a48565b5f5f5f8351604103614b21576020840151604085015160608601515f1a614b1388828585614beb565b955095509550505050614b2c565b505081515f91506002905b9250925092565b5f826003811115614b4657614b46614f5d565b03614b4f575050565b6001826003811115614b6357614b63614f5d565b03614b815760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115614b9557614b95614f5d565b03614bb65760405163fce698f760e01b81526004810182905260240161040b565b6003826003811115614bca57614bca614f5d565b0361458e576040516335e2f38360e21b81526004810182905260240161040b565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115614c2457505f91506003905082614ca9565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015614c75573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116614ca057505f925060019150829050614ca9565b92505f91508190505b9450945094915050565b6040518060e001604052805f81526020015f6001600160a01b031681526020015f8152602001614ce1614d62565b8152602001614d026040518060400160405280606081526020015f81525090565b81526020015f81526020015f81525090565b6040518060a001604052805f81526020015f8152602001614d02604080518082019091525f808252602082015290565b60405180604001604052806002906020820280368337509192915050565b604080516080810182525f91810182815260608201929092529081908152602001614d9c604080518082019091525f808252602082015290565b905290565b5f5f83601f840112614db1575f5ffd5b5081356001600160401b03811115614dc7575f5ffd5b602083019150836020828501011115614dde575f5ffd5b9250929050565b5f5f5f60408486031215614df7575f5ffd5b8335925060208401356001600160401b03811115614e13575f5ffd5b614e1f86828701614da1565b9497909650939450505050565b5f60208284031215614e3c575f5ffd5b5035919050565b5f5f60408385031215614e54575f5ffd5b50508035926020909101359150565b5f5f5f5f60808587031215614e76575f5ffd5b5050823594602084013594506040840135936060013592509050565b6001600160a01b0381168114614ea6575f5ffd5b50565b5f5f5f5f60808587031215614ebc575f5ffd5b84359350602085013592506040850135614ed581614e92565b9396929550929360600135925050565b5f5f5f5f5f60808688031215614ef9575f5ffd5b85359450602086013593506040860135614f1281614e92565b925060608601356001600160401b03811115614f2c575f5ffd5b614f3888828901614da1565b969995985093965092949392505050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b60208082526014908201527310da1958dac818dbcb5cda59dcc819985a5b195960621b604082015260600190565b6020808252600c908201526b39b2b8a73ab69032b93937b960a11b604082015260600190565b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b81810381811115610fc357610fc3614fd9565b80820180821115610fc357610fc3614fd9565b805f5b60028110156131ae5781516001600160a01b0316845260209384019390910190600101615016565b805f5b60028110156131ae578151845260209384019390910190600101615041565b83815260a081016150746020830185615013565b615081606083018461503e565b949350505050565b60208082526012908201527106d73672e76616c7565206973206e6f7420360741b604082015260600190565b5f602082840312156150c5575f5ffd5b815180151581146126f2575f5ffd5b60208082526014908201527321b430b73732b61039ba30ba3ab99032b93937b960611b604082015260600190565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561513e5761513e615102565b604052919050565b5f82601f830112615155575f5ffd5b61515f6040615116565b806040840185811115615170575f5ffd5b845b8181101561518a578051845260209384019301615172565b509095945050505050565b5f5f5f60c084860312156151a7575f5ffd5b84601f8501126151b5575f5ffd5b6151bf6040615116565b8060408601878111156151d0575f5ffd5b865b818110156151f35780516151e581614e92565b8452602093840193016151d2565b508195506152018882615146565b94505050506152138560808601615146565b90509250925092565b84815260c08101615230602083018661503e565b61523d606083018561503e565b8260a083015295945050505050565b5f6020828403121561525c575f5ffd5b5051919050565b60408101610fc3828461503e565b83815260a08101615074602083018561503e565b818382375f9101908152919050565b5f600182016152a5576152a5614fd9565b5060010190565b604080825283519082018190525f9060208501906060840190835b818110156152e55783518352602093840193909201916001016152c7565b5050602093909301939093525092915050565b5f60208284031215615308575f5ffd5b81516001600160401b0381111561531d575f5ffd5b8201601f8101841361532d575f5ffd5b80516001600160401b0381111561534657615346615102565b8060051b61535660208201615116565b91825260208184018101929081019087841115615371575f5ffd5b6020850194505b8385101561539757845180835260209586019590935090910190615378565b979650505050505050565b606080825284519082018190525f9060208601906080840190835b818110156153e45783516001600160a01b03168352602093840193909201916001016153bd565b50506001600160a01b03959095166020840152505060400152919050565b60c081016154108286615013565b61541d604083018561503e565b615081608083018461503e565b5f8261544457634e487b7160e01b5f52601260045260245ffd5b500490565b8082028115828204841417610fc357610fc3614fd956fea264697066735822122025fe890aa91809ae3d2872de514230b2e0615a535cb65885313b12f10654134e64736f6c634300081e0033",
}

LedgerOperationMetaData contains all meta data concerning the LedgerOperation contract.

Functions

This section is empty.

Types

type LedgerOperation

type LedgerOperation struct {
	LedgerOperationCaller     // Read-only binding to the contract
	LedgerOperationTransactor // Write-only binding to the contract
	LedgerOperationFilterer   // Log filterer for contract events
}

LedgerOperation is an auto generated Go binding around an Ethereum contract.

func DeployLedgerOperation

func DeployLedgerOperation(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *LedgerOperation, error)

DeployLedgerOperation deploys a new Ethereum contract, binding an instance of LedgerOperation to it.

func NewLedgerOperation

func NewLedgerOperation(address common.Address, backend bind.ContractBackend) (*LedgerOperation, error)

NewLedgerOperation creates a new instance of LedgerOperation, bound to a specific deployed contract.

type LedgerOperationCaller

type LedgerOperationCaller struct {
	// contains filtered or unexported fields
}

LedgerOperationCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewLedgerOperationCaller

func NewLedgerOperationCaller(address common.Address, caller bind.ContractCaller) (*LedgerOperationCaller, error)

NewLedgerOperationCaller creates a new read-only instance of LedgerOperation, bound to a specific deployed contract.

type LedgerOperationCallerRaw

type LedgerOperationCallerRaw struct {
	Contract *LedgerOperationCaller // Generic read-only contract binding to access the raw methods on
}

LedgerOperationCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*LedgerOperationCallerRaw) Call

func (_LedgerOperation *LedgerOperationCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type LedgerOperationCallerSession

type LedgerOperationCallerSession struct {
	Contract *LedgerOperationCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts          // Call options to use throughout this session
}

LedgerOperationCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

type LedgerOperationClearOnePay

type LedgerOperationClearOnePay struct {
	ChannelId [32]byte
	PayId     [32]byte
	PeerFrom  common.Address
	Amount    *big.Int
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationClearOnePay represents a ClearOnePay event raised by the LedgerOperation contract.

type LedgerOperationClearOnePayIterator

type LedgerOperationClearOnePayIterator struct {
	Event *LedgerOperationClearOnePay // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationClearOnePayIterator is returned from FilterClearOnePay and is used to iterate over the raw logs and unpacked data for ClearOnePay events raised by the LedgerOperation contract.

func (*LedgerOperationClearOnePayIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationClearOnePayIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationClearOnePayIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationConfirmSettle

type LedgerOperationConfirmSettle struct {
	ChannelId     [32]byte
	SettleBalance [2]*big.Int
	Raw           types.Log // Blockchain specific contextual infos
}

LedgerOperationConfirmSettle represents a ConfirmSettle event raised by the LedgerOperation contract.

type LedgerOperationConfirmSettleFail

type LedgerOperationConfirmSettleFail struct {
	ChannelId [32]byte
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationConfirmSettleFail represents a ConfirmSettleFail event raised by the LedgerOperation contract.

type LedgerOperationConfirmSettleFailIterator

type LedgerOperationConfirmSettleFailIterator struct {
	Event *LedgerOperationConfirmSettleFail // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationConfirmSettleFailIterator is returned from FilterConfirmSettleFail and is used to iterate over the raw logs and unpacked data for ConfirmSettleFail events raised by the LedgerOperation contract.

func (*LedgerOperationConfirmSettleFailIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationConfirmSettleFailIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationConfirmSettleFailIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationConfirmSettleIterator

type LedgerOperationConfirmSettleIterator struct {
	Event *LedgerOperationConfirmSettle // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationConfirmSettleIterator is returned from FilterConfirmSettle and is used to iterate over the raw logs and unpacked data for ConfirmSettle events raised by the LedgerOperation contract.

func (*LedgerOperationConfirmSettleIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationConfirmSettleIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationConfirmSettleIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationConfirmWithdraw

type LedgerOperationConfirmWithdraw struct {
	ChannelId          [32]byte
	WithdrawnAmount    *big.Int
	Receiver           common.Address
	RecipientChannelId [32]byte
	Deposits           [2]*big.Int
	Withdrawals        [2]*big.Int
	Raw                types.Log // Blockchain specific contextual infos
}

LedgerOperationConfirmWithdraw represents a ConfirmWithdraw event raised by the LedgerOperation contract.

type LedgerOperationConfirmWithdrawIterator

type LedgerOperationConfirmWithdrawIterator struct {
	Event *LedgerOperationConfirmWithdraw // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationConfirmWithdrawIterator is returned from FilterConfirmWithdraw and is used to iterate over the raw logs and unpacked data for ConfirmWithdraw events raised by the LedgerOperation contract.

func (*LedgerOperationConfirmWithdrawIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationConfirmWithdrawIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationConfirmWithdrawIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationCooperativeSettle

type LedgerOperationCooperativeSettle struct {
	ChannelId     [32]byte
	SettleBalance [2]*big.Int
	Raw           types.Log // Blockchain specific contextual infos
}

LedgerOperationCooperativeSettle represents a CooperativeSettle event raised by the LedgerOperation contract.

type LedgerOperationCooperativeSettleIterator

type LedgerOperationCooperativeSettleIterator struct {
	Event *LedgerOperationCooperativeSettle // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationCooperativeSettleIterator is returned from FilterCooperativeSettle and is used to iterate over the raw logs and unpacked data for CooperativeSettle events raised by the LedgerOperation contract.

func (*LedgerOperationCooperativeSettleIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationCooperativeSettleIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationCooperativeSettleIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationCooperativeWithdraw

type LedgerOperationCooperativeWithdraw struct {
	ChannelId          [32]byte
	WithdrawnAmount    *big.Int
	Receiver           common.Address
	RecipientChannelId [32]byte
	Deposits           [2]*big.Int
	Withdrawals        [2]*big.Int
	SeqNum             *big.Int
	Raw                types.Log // Blockchain specific contextual infos
}

LedgerOperationCooperativeWithdraw represents a CooperativeWithdraw event raised by the LedgerOperation contract.

type LedgerOperationCooperativeWithdrawIterator

type LedgerOperationCooperativeWithdrawIterator struct {
	Event *LedgerOperationCooperativeWithdraw // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationCooperativeWithdrawIterator is returned from FilterCooperativeWithdraw and is used to iterate over the raw logs and unpacked data for CooperativeWithdraw events raised by the LedgerOperation contract.

func (*LedgerOperationCooperativeWithdrawIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationCooperativeWithdrawIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationCooperativeWithdrawIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationDeposit

type LedgerOperationDeposit struct {
	ChannelId   [32]byte
	PeerAddrs   [2]common.Address
	Deposits    [2]*big.Int
	Withdrawals [2]*big.Int
	Raw         types.Log // Blockchain specific contextual infos
}

LedgerOperationDeposit represents a Deposit event raised by the LedgerOperation contract.

type LedgerOperationDepositIterator

type LedgerOperationDepositIterator struct {
	Event *LedgerOperationDeposit // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationDepositIterator is returned from FilterDeposit and is used to iterate over the raw logs and unpacked data for Deposit events raised by the LedgerOperation contract.

func (*LedgerOperationDepositIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationDepositIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationDepositIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationFilterer

type LedgerOperationFilterer struct {
	// contains filtered or unexported fields
}

LedgerOperationFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewLedgerOperationFilterer

func NewLedgerOperationFilterer(address common.Address, filterer bind.ContractFilterer) (*LedgerOperationFilterer, error)

NewLedgerOperationFilterer creates a new log filterer instance of LedgerOperation, bound to a specific deployed contract.

func (*LedgerOperationFilterer) FilterClearOnePay

func (_LedgerOperation *LedgerOperationFilterer) FilterClearOnePay(opts *bind.FilterOpts, channelId [][32]byte, payId [][32]byte, peerFrom []common.Address) (*LedgerOperationClearOnePayIterator, error)

FilterClearOnePay is a free log retrieval operation binding the contract event 0x33252d4bc5cee2ad248475e8c39239a79dc64b2691c9ca1a63ff9af0c75b8776.

Solidity: event ClearOnePay(bytes32 indexed channelId, bytes32 indexed payId, address indexed peerFrom, uint256 amount)

func (*LedgerOperationFilterer) FilterConfirmSettle

func (_LedgerOperation *LedgerOperationFilterer) FilterConfirmSettle(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationConfirmSettleIterator, error)

FilterConfirmSettle is a free log retrieval operation binding the contract event 0x728ddd8c5acda5947c34db8d759c66ae70884f526ff9b93637d351b012ef3206.

Solidity: event ConfirmSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) FilterConfirmSettleFail

func (_LedgerOperation *LedgerOperationFilterer) FilterConfirmSettleFail(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationConfirmSettleFailIterator, error)

FilterConfirmSettleFail is a free log retrieval operation binding the contract event 0xa6549eb18490d42e7ec93f42115d1ee11b706d04077be9597034dd73ec8bcb36.

Solidity: event ConfirmSettleFail(bytes32 indexed channelId)

func (*LedgerOperationFilterer) FilterConfirmWithdraw

func (_LedgerOperation *LedgerOperationFilterer) FilterConfirmWithdraw(opts *bind.FilterOpts, channelId [][32]byte, receiver []common.Address, recipientChannelId [][32]byte) (*LedgerOperationConfirmWithdrawIterator, error)

FilterConfirmWithdraw is a free log retrieval operation binding the contract event 0xe8110b4ee08638c48f6a4d5f726927df4e541893efa9d2c2c47a6b889041826e.

Solidity: event ConfirmWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) FilterCooperativeSettle

func (_LedgerOperation *LedgerOperationFilterer) FilterCooperativeSettle(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationCooperativeSettleIterator, error)

FilterCooperativeSettle is a free log retrieval operation binding the contract event 0x6c666557dc97fd52cd2d9d6dd6d109e501ffdb831abeecf13aafeeaf762ee1fd.

Solidity: event CooperativeSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) FilterCooperativeWithdraw

func (_LedgerOperation *LedgerOperationFilterer) FilterCooperativeWithdraw(opts *bind.FilterOpts, channelId [][32]byte, receiver []common.Address, recipientChannelId [][32]byte) (*LedgerOperationCooperativeWithdrawIterator, error)

FilterCooperativeWithdraw is a free log retrieval operation binding the contract event 0x1b87d077d9b706e42883b454b67730633fd6b4b29f9a9cf5f57c278c54f51c8f.

Solidity: event CooperativeWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals, uint256 seqNum)

func (*LedgerOperationFilterer) FilterDeposit

func (_LedgerOperation *LedgerOperationFilterer) FilterDeposit(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationDepositIterator, error)

FilterDeposit is a free log retrieval operation binding the contract event 0xb63f5dc096f516663ffb5ef2b611f0e2acca8617a868c2a3653cba5e3ed0e92c.

Solidity: event Deposit(bytes32 indexed channelId, address[2] peerAddrs, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) FilterIntendSettle

func (_LedgerOperation *LedgerOperationFilterer) FilterIntendSettle(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationIntendSettleIterator, error)

FilterIntendSettle is a free log retrieval operation binding the contract event 0x296143e7e25aa055fbb871702776a67da540876e2be721d5c38ba23c97c90d64.

Solidity: event IntendSettle(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) FilterIntendWithdraw

func (_LedgerOperation *LedgerOperationFilterer) FilterIntendWithdraw(opts *bind.FilterOpts, channelId [][32]byte, receiver []common.Address) (*LedgerOperationIntendWithdrawIterator, error)

FilterIntendWithdraw is a free log retrieval operation binding the contract event 0x97883669625c4ff7f5432b4ca33fe75fb5fee985deb196a967e5758f846170fe.

Solidity: event IntendWithdraw(bytes32 indexed channelId, address indexed receiver, uint256 amount)

func (*LedgerOperationFilterer) FilterOpenChannel

func (_LedgerOperation *LedgerOperationFilterer) FilterOpenChannel(opts *bind.FilterOpts, channelId [][32]byte, tokenAddress []common.Address) (*LedgerOperationOpenChannelIterator, error)

FilterOpenChannel is a free log retrieval operation binding the contract event 0x9d9f66221370175606b4085f28a419b201c9b6dafd9e0c4520e5bf69ea3e166d.

Solidity: event OpenChannel(bytes32 indexed channelId, uint256 tokenType, address indexed tokenAddress, address[2] peerAddrs, uint256[2] initialDeposits)

func (*LedgerOperationFilterer) FilterSnapshotStates

func (_LedgerOperation *LedgerOperationFilterer) FilterSnapshotStates(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationSnapshotStatesIterator, error)

FilterSnapshotStates is a free log retrieval operation binding the contract event 0xd0793cc4198bf052a6d91a9a1273c4af39f02a91b0e19029477511c278c5b271.

Solidity: event SnapshotStates(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) FilterVetoWithdraw

func (_LedgerOperation *LedgerOperationFilterer) FilterVetoWithdraw(opts *bind.FilterOpts, channelId [][32]byte) (*LedgerOperationVetoWithdrawIterator, error)

FilterVetoWithdraw is a free log retrieval operation binding the contract event 0x9a8a5493b616f074b3f754b5fd66049c8e7980f01547289e5e31808485c6002c.

Solidity: event VetoWithdraw(bytes32 indexed channelId)

func (*LedgerOperationFilterer) ParseClearOnePay

func (_LedgerOperation *LedgerOperationFilterer) ParseClearOnePay(log types.Log) (*LedgerOperationClearOnePay, error)

ParseClearOnePay is a log parse operation binding the contract event 0x33252d4bc5cee2ad248475e8c39239a79dc64b2691c9ca1a63ff9af0c75b8776.

Solidity: event ClearOnePay(bytes32 indexed channelId, bytes32 indexed payId, address indexed peerFrom, uint256 amount)

func (*LedgerOperationFilterer) ParseConfirmSettle

func (_LedgerOperation *LedgerOperationFilterer) ParseConfirmSettle(log types.Log) (*LedgerOperationConfirmSettle, error)

ParseConfirmSettle is a log parse operation binding the contract event 0x728ddd8c5acda5947c34db8d759c66ae70884f526ff9b93637d351b012ef3206.

Solidity: event ConfirmSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) ParseConfirmSettleFail

func (_LedgerOperation *LedgerOperationFilterer) ParseConfirmSettleFail(log types.Log) (*LedgerOperationConfirmSettleFail, error)

ParseConfirmSettleFail is a log parse operation binding the contract event 0xa6549eb18490d42e7ec93f42115d1ee11b706d04077be9597034dd73ec8bcb36.

Solidity: event ConfirmSettleFail(bytes32 indexed channelId)

func (*LedgerOperationFilterer) ParseConfirmWithdraw

func (_LedgerOperation *LedgerOperationFilterer) ParseConfirmWithdraw(log types.Log) (*LedgerOperationConfirmWithdraw, error)

ParseConfirmWithdraw is a log parse operation binding the contract event 0xe8110b4ee08638c48f6a4d5f726927df4e541893efa9d2c2c47a6b889041826e.

Solidity: event ConfirmWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) ParseCooperativeSettle

func (_LedgerOperation *LedgerOperationFilterer) ParseCooperativeSettle(log types.Log) (*LedgerOperationCooperativeSettle, error)

ParseCooperativeSettle is a log parse operation binding the contract event 0x6c666557dc97fd52cd2d9d6dd6d109e501ffdb831abeecf13aafeeaf762ee1fd.

Solidity: event CooperativeSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) ParseCooperativeWithdraw

func (_LedgerOperation *LedgerOperationFilterer) ParseCooperativeWithdraw(log types.Log) (*LedgerOperationCooperativeWithdraw, error)

ParseCooperativeWithdraw is a log parse operation binding the contract event 0x1b87d077d9b706e42883b454b67730633fd6b4b29f9a9cf5f57c278c54f51c8f.

Solidity: event CooperativeWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals, uint256 seqNum)

func (*LedgerOperationFilterer) ParseDeposit

func (_LedgerOperation *LedgerOperationFilterer) ParseDeposit(log types.Log) (*LedgerOperationDeposit, error)

ParseDeposit is a log parse operation binding the contract event 0xb63f5dc096f516663ffb5ef2b611f0e2acca8617a868c2a3653cba5e3ed0e92c.

Solidity: event Deposit(bytes32 indexed channelId, address[2] peerAddrs, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) ParseIntendSettle

func (_LedgerOperation *LedgerOperationFilterer) ParseIntendSettle(log types.Log) (*LedgerOperationIntendSettle, error)

ParseIntendSettle is a log parse operation binding the contract event 0x296143e7e25aa055fbb871702776a67da540876e2be721d5c38ba23c97c90d64.

Solidity: event IntendSettle(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) ParseIntendWithdraw

func (_LedgerOperation *LedgerOperationFilterer) ParseIntendWithdraw(log types.Log) (*LedgerOperationIntendWithdraw, error)

ParseIntendWithdraw is a log parse operation binding the contract event 0x97883669625c4ff7f5432b4ca33fe75fb5fee985deb196a967e5758f846170fe.

Solidity: event IntendWithdraw(bytes32 indexed channelId, address indexed receiver, uint256 amount)

func (*LedgerOperationFilterer) ParseOpenChannel

func (_LedgerOperation *LedgerOperationFilterer) ParseOpenChannel(log types.Log) (*LedgerOperationOpenChannel, error)

ParseOpenChannel is a log parse operation binding the contract event 0x9d9f66221370175606b4085f28a419b201c9b6dafd9e0c4520e5bf69ea3e166d.

Solidity: event OpenChannel(bytes32 indexed channelId, uint256 tokenType, address indexed tokenAddress, address[2] peerAddrs, uint256[2] initialDeposits)

func (*LedgerOperationFilterer) ParseSnapshotStates

func (_LedgerOperation *LedgerOperationFilterer) ParseSnapshotStates(log types.Log) (*LedgerOperationSnapshotStates, error)

ParseSnapshotStates is a log parse operation binding the contract event 0xd0793cc4198bf052a6d91a9a1273c4af39f02a91b0e19029477511c278c5b271.

Solidity: event SnapshotStates(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) ParseVetoWithdraw

func (_LedgerOperation *LedgerOperationFilterer) ParseVetoWithdraw(log types.Log) (*LedgerOperationVetoWithdraw, error)

ParseVetoWithdraw is a log parse operation binding the contract event 0x9a8a5493b616f074b3f754b5fd66049c8e7980f01547289e5e31808485c6002c.

Solidity: event VetoWithdraw(bytes32 indexed channelId)

func (*LedgerOperationFilterer) WatchClearOnePay

func (_LedgerOperation *LedgerOperationFilterer) WatchClearOnePay(opts *bind.WatchOpts, sink chan<- *LedgerOperationClearOnePay, channelId [][32]byte, payId [][32]byte, peerFrom []common.Address) (event.Subscription, error)

WatchClearOnePay is a free log subscription operation binding the contract event 0x33252d4bc5cee2ad248475e8c39239a79dc64b2691c9ca1a63ff9af0c75b8776.

Solidity: event ClearOnePay(bytes32 indexed channelId, bytes32 indexed payId, address indexed peerFrom, uint256 amount)

func (*LedgerOperationFilterer) WatchConfirmSettle

func (_LedgerOperation *LedgerOperationFilterer) WatchConfirmSettle(opts *bind.WatchOpts, sink chan<- *LedgerOperationConfirmSettle, channelId [][32]byte) (event.Subscription, error)

WatchConfirmSettle is a free log subscription operation binding the contract event 0x728ddd8c5acda5947c34db8d759c66ae70884f526ff9b93637d351b012ef3206.

Solidity: event ConfirmSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) WatchConfirmSettleFail

func (_LedgerOperation *LedgerOperationFilterer) WatchConfirmSettleFail(opts *bind.WatchOpts, sink chan<- *LedgerOperationConfirmSettleFail, channelId [][32]byte) (event.Subscription, error)

WatchConfirmSettleFail is a free log subscription operation binding the contract event 0xa6549eb18490d42e7ec93f42115d1ee11b706d04077be9597034dd73ec8bcb36.

Solidity: event ConfirmSettleFail(bytes32 indexed channelId)

func (*LedgerOperationFilterer) WatchConfirmWithdraw

func (_LedgerOperation *LedgerOperationFilterer) WatchConfirmWithdraw(opts *bind.WatchOpts, sink chan<- *LedgerOperationConfirmWithdraw, channelId [][32]byte, receiver []common.Address, recipientChannelId [][32]byte) (event.Subscription, error)

WatchConfirmWithdraw is a free log subscription operation binding the contract event 0xe8110b4ee08638c48f6a4d5f726927df4e541893efa9d2c2c47a6b889041826e.

Solidity: event ConfirmWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) WatchCooperativeSettle

func (_LedgerOperation *LedgerOperationFilterer) WatchCooperativeSettle(opts *bind.WatchOpts, sink chan<- *LedgerOperationCooperativeSettle, channelId [][32]byte) (event.Subscription, error)

WatchCooperativeSettle is a free log subscription operation binding the contract event 0x6c666557dc97fd52cd2d9d6dd6d109e501ffdb831abeecf13aafeeaf762ee1fd.

Solidity: event CooperativeSettle(bytes32 indexed channelId, uint256[2] settleBalance)

func (*LedgerOperationFilterer) WatchCooperativeWithdraw

func (_LedgerOperation *LedgerOperationFilterer) WatchCooperativeWithdraw(opts *bind.WatchOpts, sink chan<- *LedgerOperationCooperativeWithdraw, channelId [][32]byte, receiver []common.Address, recipientChannelId [][32]byte) (event.Subscription, error)

WatchCooperativeWithdraw is a free log subscription operation binding the contract event 0x1b87d077d9b706e42883b454b67730633fd6b4b29f9a9cf5f57c278c54f51c8f.

Solidity: event CooperativeWithdraw(bytes32 indexed channelId, uint256 withdrawnAmount, address indexed receiver, bytes32 indexed recipientChannelId, uint256[2] deposits, uint256[2] withdrawals, uint256 seqNum)

func (*LedgerOperationFilterer) WatchDeposit

func (_LedgerOperation *LedgerOperationFilterer) WatchDeposit(opts *bind.WatchOpts, sink chan<- *LedgerOperationDeposit, channelId [][32]byte) (event.Subscription, error)

WatchDeposit is a free log subscription operation binding the contract event 0xb63f5dc096f516663ffb5ef2b611f0e2acca8617a868c2a3653cba5e3ed0e92c.

Solidity: event Deposit(bytes32 indexed channelId, address[2] peerAddrs, uint256[2] deposits, uint256[2] withdrawals)

func (*LedgerOperationFilterer) WatchIntendSettle

func (_LedgerOperation *LedgerOperationFilterer) WatchIntendSettle(opts *bind.WatchOpts, sink chan<- *LedgerOperationIntendSettle, channelId [][32]byte) (event.Subscription, error)

WatchIntendSettle is a free log subscription operation binding the contract event 0x296143e7e25aa055fbb871702776a67da540876e2be721d5c38ba23c97c90d64.

Solidity: event IntendSettle(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) WatchIntendWithdraw

func (_LedgerOperation *LedgerOperationFilterer) WatchIntendWithdraw(opts *bind.WatchOpts, sink chan<- *LedgerOperationIntendWithdraw, channelId [][32]byte, receiver []common.Address) (event.Subscription, error)

WatchIntendWithdraw is a free log subscription operation binding the contract event 0x97883669625c4ff7f5432b4ca33fe75fb5fee985deb196a967e5758f846170fe.

Solidity: event IntendWithdraw(bytes32 indexed channelId, address indexed receiver, uint256 amount)

func (*LedgerOperationFilterer) WatchOpenChannel

func (_LedgerOperation *LedgerOperationFilterer) WatchOpenChannel(opts *bind.WatchOpts, sink chan<- *LedgerOperationOpenChannel, channelId [][32]byte, tokenAddress []common.Address) (event.Subscription, error)

WatchOpenChannel is a free log subscription operation binding the contract event 0x9d9f66221370175606b4085f28a419b201c9b6dafd9e0c4520e5bf69ea3e166d.

Solidity: event OpenChannel(bytes32 indexed channelId, uint256 tokenType, address indexed tokenAddress, address[2] peerAddrs, uint256[2] initialDeposits)

func (*LedgerOperationFilterer) WatchSnapshotStates

func (_LedgerOperation *LedgerOperationFilterer) WatchSnapshotStates(opts *bind.WatchOpts, sink chan<- *LedgerOperationSnapshotStates, channelId [][32]byte) (event.Subscription, error)

WatchSnapshotStates is a free log subscription operation binding the contract event 0xd0793cc4198bf052a6d91a9a1273c4af39f02a91b0e19029477511c278c5b271.

Solidity: event SnapshotStates(bytes32 indexed channelId, uint256[2] seqNums)

func (*LedgerOperationFilterer) WatchVetoWithdraw

func (_LedgerOperation *LedgerOperationFilterer) WatchVetoWithdraw(opts *bind.WatchOpts, sink chan<- *LedgerOperationVetoWithdraw, channelId [][32]byte) (event.Subscription, error)

WatchVetoWithdraw is a free log subscription operation binding the contract event 0x9a8a5493b616f074b3f754b5fd66049c8e7980f01547289e5e31808485c6002c.

Solidity: event VetoWithdraw(bytes32 indexed channelId)

type LedgerOperationIntendSettle

type LedgerOperationIntendSettle struct {
	ChannelId [32]byte
	SeqNums   [2]*big.Int
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationIntendSettle represents a IntendSettle event raised by the LedgerOperation contract.

type LedgerOperationIntendSettleIterator

type LedgerOperationIntendSettleIterator struct {
	Event *LedgerOperationIntendSettle // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationIntendSettleIterator is returned from FilterIntendSettle and is used to iterate over the raw logs and unpacked data for IntendSettle events raised by the LedgerOperation contract.

func (*LedgerOperationIntendSettleIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationIntendSettleIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationIntendSettleIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationIntendWithdraw

type LedgerOperationIntendWithdraw struct {
	ChannelId [32]byte
	Receiver  common.Address
	Amount    *big.Int
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationIntendWithdraw represents a IntendWithdraw event raised by the LedgerOperation contract.

type LedgerOperationIntendWithdrawIterator

type LedgerOperationIntendWithdrawIterator struct {
	Event *LedgerOperationIntendWithdraw // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationIntendWithdrawIterator is returned from FilterIntendWithdraw and is used to iterate over the raw logs and unpacked data for IntendWithdraw events raised by the LedgerOperation contract.

func (*LedgerOperationIntendWithdrawIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationIntendWithdrawIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationIntendWithdrawIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationOpenChannel

type LedgerOperationOpenChannel struct {
	ChannelId       [32]byte
	TokenType       *big.Int
	TokenAddress    common.Address
	PeerAddrs       [2]common.Address
	InitialDeposits [2]*big.Int
	Raw             types.Log // Blockchain specific contextual infos
}

LedgerOperationOpenChannel represents a OpenChannel event raised by the LedgerOperation contract.

type LedgerOperationOpenChannelIterator

type LedgerOperationOpenChannelIterator struct {
	Event *LedgerOperationOpenChannel // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationOpenChannelIterator is returned from FilterOpenChannel and is used to iterate over the raw logs and unpacked data for OpenChannel events raised by the LedgerOperation contract.

func (*LedgerOperationOpenChannelIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationOpenChannelIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationOpenChannelIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationRaw

type LedgerOperationRaw struct {
	Contract *LedgerOperation // Generic contract binding to access the raw methods on
}

LedgerOperationRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*LedgerOperationRaw) Call

func (_LedgerOperation *LedgerOperationRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*LedgerOperationRaw) Transact

func (_LedgerOperation *LedgerOperationRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*LedgerOperationRaw) Transfer

func (_LedgerOperation *LedgerOperationRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type LedgerOperationSession

type LedgerOperationSession struct {
	Contract     *LedgerOperation  // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

LedgerOperationSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

type LedgerOperationSnapshotStates

type LedgerOperationSnapshotStates struct {
	ChannelId [32]byte
	SeqNums   [2]*big.Int
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationSnapshotStates represents a SnapshotStates event raised by the LedgerOperation contract.

type LedgerOperationSnapshotStatesIterator

type LedgerOperationSnapshotStatesIterator struct {
	Event *LedgerOperationSnapshotStates // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationSnapshotStatesIterator is returned from FilterSnapshotStates and is used to iterate over the raw logs and unpacked data for SnapshotStates events raised by the LedgerOperation contract.

func (*LedgerOperationSnapshotStatesIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationSnapshotStatesIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationSnapshotStatesIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type LedgerOperationTransactor

type LedgerOperationTransactor struct {
	// contains filtered or unexported fields
}

LedgerOperationTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewLedgerOperationTransactor

func NewLedgerOperationTransactor(address common.Address, transactor bind.ContractTransactor) (*LedgerOperationTransactor, error)

NewLedgerOperationTransactor creates a new write-only instance of LedgerOperation, bound to a specific deployed contract.

type LedgerOperationTransactorRaw

type LedgerOperationTransactorRaw struct {
	Contract *LedgerOperationTransactor // Generic write-only contract binding to access the raw methods on
}

LedgerOperationTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*LedgerOperationTransactorRaw) Transact

func (_LedgerOperation *LedgerOperationTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*LedgerOperationTransactorRaw) Transfer

func (_LedgerOperation *LedgerOperationTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type LedgerOperationTransactorSession

type LedgerOperationTransactorSession struct {
	Contract     *LedgerOperationTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts          // Transaction auth options to use throughout this session
}

LedgerOperationTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

type LedgerOperationVetoWithdraw

type LedgerOperationVetoWithdraw struct {
	ChannelId [32]byte
	Raw       types.Log // Blockchain specific contextual infos
}

LedgerOperationVetoWithdraw represents a VetoWithdraw event raised by the LedgerOperation contract.

type LedgerOperationVetoWithdrawIterator

type LedgerOperationVetoWithdrawIterator struct {
	Event *LedgerOperationVetoWithdraw // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

LedgerOperationVetoWithdrawIterator is returned from FilterVetoWithdraw and is used to iterate over the raw logs and unpacked data for VetoWithdraw events raised by the LedgerOperation contract.

func (*LedgerOperationVetoWithdrawIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*LedgerOperationVetoWithdrawIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*LedgerOperationVetoWithdrawIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL