controller

package
v0.0.0-...-3ac8fd0 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ControllerABI = ControllerMetaData.ABI

ControllerABI is the input ABI used to generate the binding from. Deprecated: Use ControllerMetaData.ABI instead.

View Source
var ControllerBin = ControllerMetaData.Bin

ControllerBin is the compiled bytecode used for deploying new contracts. Deprecated: Use ControllerMetaData.Bin instead.

View Source
var ControllerMetaData = &bind.MetaData{
	ABI: "[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"acceptResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"resultsId\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"dataId\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"instructionCount\",\"type\":\"uint256\"}],\"name\":\"addResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"solver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"jobCreator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"resourceProvider\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"mediators\",\"type\":\"address[]\"}],\"internalType\":\"structSharedStructs.DealMembers\",\"name\":\"members\",\"type\":\"tuple\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"timeout\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.DealTimeout\",\"name\":\"agree\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"timeout\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.DealTimeout\",\"name\":\"submitResults\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"timeout\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.DealTimeout\",\"name\":\"judgeResults\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"timeout\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"collateral\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.DealTimeout\",\"name\":\"mediateResults\",\"type\":\"tuple\"}],\"internalType\":\"structSharedStructs.DealTimeouts\",\"name\":\"timeouts\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"instructionPrice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"paymentCollateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"resultsCollateralMultiple\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"mediationFee\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.DealPricing\",\"name\":\"pricing\",\"type\":\"tuple\"}],\"name\":\"agree\",\"outputs\":[{\"components\":[{\"internalType\":\"enumSharedStructs.AgreementState\",\"name\":\"state\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"resourceProviderAgreedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"jobCreatorAgreedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"dealCreatedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"dealAgreedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"resultsSubmittedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"resultsAcceptedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"resultsCheckedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"mediationAcceptedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"mediationRejectedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeoutAgreeAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeoutSubmitResultsAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeoutJudgeResultsAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeoutMediateResultsAt\",\"type\":\"uint256\"}],\"internalType\":\"structSharedStructs.Agreement\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"checkResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getJobCreatorAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMediationAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPaymentsAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStorageAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getUsersAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_storageAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_usersAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_paymentsAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_mediationAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_jobCreatorAddress\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"mediationAcceptResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"mediationRejectResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_jobCreatorAddress\",\"type\":\"address\"}],\"name\":\"setJobCreatorAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_mediationAddress\",\"type\":\"address\"}],\"name\":\"setMediationAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_paymentsAddress\",\"type\":\"address\"}],\"name\":\"setPaymentsAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_storageAddress\",\"type\":\"address\"}],\"name\":\"setStorageAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_usersAddress\",\"type\":\"address\"}],\"name\":\"setUsersAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"timeoutAgree\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"timeoutJudgeResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"timeoutMediateResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dealId\",\"type\":\"string\"}],\"name\":\"timeoutSubmitResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
	Bin: "0x608060405234801562000010575f80fd5b5062000031620000256200003760201b60201c565b6200003e60201b60201c565b620000ff565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b615788806200010d5f395ff3fe608060405234801561000f575f80fd5b5060043610610156575f3560e01c8063795f9abf116100c1578063bbfff47d1161007a578063bbfff47d1461034a578063d48b108414610366578063e7b957d114610384578063e850be37146103a0578063f2fde38b146103bc578063f583b125146103d857610156565b8063795f9abf1461029e57806380ffdfe0146102ba578063824518aa146102d65780638da5cb5b146102f257806393dbed3e14610310578063b4031e541461032e57610156565b806343391cca1161011357806343391cca1461020857806346834d1e14610224578063511a9f681461024057806359b910d61461025c578063640e570f14610278578063715018a61461029457610156565b80630aca35ce1461015a5780631459457a14610178578063155329ea14610194578063297f9e55146101b2578063393a4d34146101ce5780633955548e146101ec575b5f80fd5b610162610408565b60405161016f91906137a3565b60405180910390f35b610192600480360381019061018d91906137f7565b610430565b005b61019c610597565b6040516101a991906137a3565b60405180910390f35b6101cc60048036038101906101c791906139aa565b6105bf565b005b6101d6610a2f565b6040516101e391906137a3565b60405180910390f35b61020660048036038101906102019190613a24565b610a57565b005b610222600480360381019061021d9190613adc565b610e33565b005b61023e600480360381019061023991906139aa565b610f2c565b005b61025a600480360381019061025591906139aa565b6112d9565b005b61027660048036038101906102719190613adc565b611692565b005b610292600480360381019061028d9190613adc565b6117ac565b005b61029c6118a5565b005b6102b860048036038101906102b391906139aa565b6118b8565b005b6102d460048036038101906102cf91906139aa565b611d61565b005b6102f060048036038101906102eb91906139aa565b6120b9565b005b6102fa6124b1565b60405161030791906137a3565b60405180910390f35b6103186124d8565b60405161032591906137a3565b60405180910390f35b61034860048036038101906103439190613adc565b612500565b005b610364600480360381019061035f9190613adc565b6125b9565b005b61036e612672565b60405161037b91906137a3565b60405180910390f35b61039e600480360381019061039991906139aa565b61269a565b005b6103ba60048036038101906103b591906139aa565b612b2d565b005b6103d660048036038101906103d19190613adc565b612f7c565b005b6103f260048036038101906103ed9190613d9c565b612ffe565b6040516103ff9190613fda565b60405180910390f35b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f8060159054906101000a900460ff16159050808015610461575060015f60149054906101000a900460ff1660ff16105b8061048f5750610470306134a3565b15801561048e575060015f60149054906101000a900460ff1660ff16145b5b6104ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c590614074565b60405180910390fd5b60015f60146101000a81548160ff021916908360ff160217905550801561050a5760015f60156101000a81548160ff0219169083151502179055505b61051386611692565b61051c856125b9565b610525846117ac565b61052e83610e33565b61053782612500565b801561058f575f8060156101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498600160405161058691906140e0565b60405180910390a15b505050505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b050e74b8260026040518363ffffffff1660e01b815260040161061c929190614172565b6020604051808303815f875af1158015610638573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061065c91906141d5565b61069b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106929061424a565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016106f69190614268565b5f604051808303815f875af1158015610711573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610739919061462b565b90503273ffffffffffffffffffffffffffffffffffffffff1681602001516020015173ffffffffffffffffffffffffffffffffffffffff16146107b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a8906146bc565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166373db5c6a846040518263ffffffff1660e01b815260040161080c9190614268565b6020604051808303815f875af1158015610828573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084c91906146da565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f856040518263ffffffff1660e01b81526004016108a99190614268565b6020604051808303815f875af11580156108c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e991906146da565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663297f9e55856040518263ffffffff1660e01b81526004016109459190614268565b5f604051808303815f87803b15801561095c575f80fd5b505af115801561096e573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b13567148585602001516040015186602001516020015186886060015160200151878a6040015160400151602001516040518863ffffffff1660e01b81526004016109fc9796959493929190614714565b5f604051808303815f87803b158015610a13575f80fd5b505af1158015610a25573d5f803e3d5ffd5b5050505050505050565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b050e74b8560016040518363ffffffff1660e01b8152600401610ab4929190614172565b6020604051808303815f875af1158015610ad0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af491906141d5565b610b33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2a906147d2565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180866040518263ffffffff1660e01b8152600401610b8e9190614268565b5f604051808303815f875af1158015610ba9573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610bd1919061462b565b90503273ffffffffffffffffffffffffffffffffffffffff1681602001516040015173ffffffffffffffffffffffffffffffffffffffff1614610c49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c409061483a565b60405180910390fd5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633955548e868686866040518563ffffffff1660e01b8152600401610ca99493929190614858565b5f604051808303815f875af1158015610cc4573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610cec9190614979565b505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f876040518263ffffffff1660e01b8152600401610d489190614268565b6020604051808303815f875af1158015610d64573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8891906146da565b905060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309cab5108784602001516040015184866040015160200151602001516040518563ffffffff1660e01b8152600401610dfe94939291906149c0565b5f604051808303815f87803b158015610e15575f80fd5b505af1158015610e27573d5f803e3d5ffd5b50505050505050505050565b610e3b6134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610ea9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea090614a54565b60405180910390fd5b8060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b050e74b8260026040518363ffffffff1660e01b8152600401610f89929190614172565b6020604051808303815f875af1158015610fa5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fc991906141d5565b611008576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fff9061424a565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016110639190614268565b5f604051808303815f875af115801561107e573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906110a6919061462b565b90503273ffffffffffffffffffffffffffffffffffffffff1681602001516020015173ffffffffffffffffffffffffffffffffffffffff161461111e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611115906146bc565b60405180910390fd5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166346834d1e836040518263ffffffff1660e01b81526004016111789190614268565b5f604051808303815f87803b15801561118f575f80fd5b505af11580156111a1573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aea3825183836020015160200151846040015160400151602001518560600151606001516040518563ffffffff1660e01b815260040161122194939291906149c0565b5f604051808303815f87803b158015611238575f80fd5b505af115801561124a573d5f803e3d5ffd5b5050505060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370bea207826040518263ffffffff1660e01b81526004016112a89190614d0e565b5f604051808303815f87803b1580156112bf575f80fd5b505af11580156112d1573d5f803e3d5ffd5b505050505050565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016113349190614268565b5f604051808303815f875af115801561134f573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611377919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cdd82d1d846040518263ffffffff1660e01b81526004016113d49190614268565b6101c0604051808303815f875af11580156113f1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114159190614e9c565b90503273ffffffffffffffffffffffffffffffffffffffff1682602001516020015173ffffffffffffffffffffffffffffffffffffffff161461148d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611484906146bc565b60405180910390fd5b6001600a8111156114a1576114a0613e3a565b5b815f0151600a8111156114b7576114b6613e3a565b5b146114f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ee90614f12565b60405180910390fd5b8160400151602001515f015181608001516115129190614f5d565b4211611553576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154a90614fda565b60405180910390fd5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663511a9f68846040518263ffffffff1660e01b81526004016115ad9190614268565b5f604051808303815f87803b1580156115c4575f80fd5b505af11580156115d6573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633d31a11584846020015160400151856020015160200151866060015160200151876040015160200151602001516040518663ffffffff1660e01b8152600401611660959493929190614ff8565b5f604051808303815f87803b158015611677575f80fd5b505af1158015611689573d5f803e3d5ffd5b50505050505050565b61169a6134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611708576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ff9061509a565b60405180910390fd5b8060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6117b46134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181990615102565b60405180910390fd5b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6118ad6134c5565b6118b65f613543565b565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016119139190614268565b5f604051808303815f875af115801561192e573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611956919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cdd82d1d846040518263ffffffff1660e01b81526004016119b39190614268565b6101c0604051808303815f875af11580156119d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119f49190614e9c565b90503273ffffffffffffffffffffffffffffffffffffffff1682602001516020015173ffffffffffffffffffffffffffffffffffffffff161480611a6b57503273ffffffffffffffffffffffffffffffffffffffff1682602001516040015173ffffffffffffffffffffffffffffffffffffffff16145b611aaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa19061516a565b60405180910390fd5b5f600a811115611abd57611abc613e3a565b5b815f0151600a811115611ad357611ad2613e3a565b5b14611b13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0a90614f12565b60405180910390fd5b81604001515f01515f01518160600151611b2d9190614f5d565b4211611b6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6590614fda565b60405180910390fd5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663795f9abf846040518263ffffffff1660e01b8152600401611bc89190614268565b5f604051808303815f87803b158015611bdf575f80fd5b505af1158015611bf1573d5f803e3d5ffd5b505050505f81602001511115611ca55760075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630ef0d89e84846020015160400151856040015160200151602001516040518463ffffffff1660e01b8152600401611c7393929190615188565b5f604051808303815f87803b158015611c8a575f80fd5b505af1158015611c9c573d5f803e3d5ffd5b50505050611d5c565b5f81604001511115611d5b5760075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663afe1dff784846020015160200151856060015160200151866040015160200151602001516040518563ffffffff1660e01b8152600401611d2d94939291906149c0565b5f604051808303815f87803b158015611d44575f80fd5b505af1158015611d56573d5f803e3d5ffd5b505050505b5b505050565b611d69613604565b73ffffffffffffffffffffffffffffffffffffffff1660045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611df7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dee9061520e565b60405180910390fd5b611e008161360b565b611e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3690615276565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b8152600401611e9a9190614268565b5f604051808303815f875af1158015611eb5573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611edd919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f846040518263ffffffff1660e01b8152600401611f3a9190614268565b6020604051808303815f875af1158015611f56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f7a91906146da565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166380ffdfe0846040518263ffffffff1660e01b8152600401611fd69190614268565b5f604051808303815f87803b158015611fed575f80fd5b505af1158015611fff573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d2485cce84846020015160400151856020015160200151866060015160200151868860600151606001516040518763ffffffff1660e01b815260040161208796959493929190615294565b5f604051808303815f87803b15801561209e575f80fd5b505af11580156120b0573d5f803e3d5ffd5b50505050505050565b6120c1613604565b73ffffffffffffffffffffffffffffffffffffffff1660045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461214f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121469061520e565b60405180910390fd5b6121588161360b565b612197576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218e90615276565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016121f29190614268565b5f604051808303815f875af115801561220d573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190612235919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166373db5c6a846040518263ffffffff1660e01b81526004016122929190614268565b6020604051808303815f875af11580156122ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122d291906146da565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f856040518263ffffffff1660e01b815260040161232f9190614268565b6020604051808303815f875af115801561234b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061236f91906146da565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663824518aa856040518263ffffffff1660e01b81526004016123cb9190614268565b5f604051808303815f87803b1580156123e2575f80fd5b505af11580156123f4573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632a1f90728585602001516040015186602001516020015186886060015160200151878a60600151606001516040518863ffffffff1660e01b815260040161247e9796959493929190614714565b5f604051808303815f87803b158015612495575f80fd5b505af11580156124a7573d5f803e3d5ffd5b5050505050505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6125086134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612576576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256d90615344565b60405180910390fd5b8060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6125c16134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361262f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612626906153ac565b60405180910390fd5b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b81526004016126f59190614268565b5f604051808303815f875af1158015612710573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190612738919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cdd82d1d846040518263ffffffff1660e01b81526004016127959190614268565b6101c0604051808303815f875af11580156127b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127d69190614e9c565b90503273ffffffffffffffffffffffffffffffffffffffff1682602001516040015173ffffffffffffffffffffffffffffffffffffffff16148061284d57503273ffffffffffffffffffffffffffffffffffffffff1682602001516020015173ffffffffffffffffffffffffffffffffffffffff16145b61288c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161288390615414565b60405180910390fd5b6004600a8111156128a05761289f613e3a565b5b815f0151600a8111156128b6576128b5613e3a565b5b146128f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128ed90614f12565b60405180910390fd5b8160400151604001515f01518160a001516129119190614f5d565b4211612952576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161294990614fda565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f856040518263ffffffff1660e01b81526004016129ad9190614268565b6020604051808303815f875af11580156129c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ed91906146da565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7b957d1856040518263ffffffff1660e01b8152600401612a499190614268565b5f604051808303815f87803b158015612a60575f80fd5b505af1158015612a72573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663823f3de185856020015160400151866020015160200151876060015160200151868960600151606001516040518763ffffffff1660e01b8152600401612afa96959493929190615294565b5f604051808303815f87803b158015612b11575f80fd5b505af1158015612b23573d5f803e3d5ffd5b5050505050505050565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e7079180836040518263ffffffff1660e01b8152600401612b889190614268565b5f604051808303815f875af1158015612ba3573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190612bcb919061462b565b90505f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cdd82d1d846040518263ffffffff1660e01b8152600401612c289190614268565b6101c0604051808303815f875af1158015612c45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c699190614e9c565b90503273ffffffffffffffffffffffffffffffffffffffff1682602001516040015173ffffffffffffffffffffffffffffffffffffffff1614612ce1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cd89061483a565b60405180910390fd5b6002600a811115612cf557612cf4613e3a565b5b815f0151600a811115612d0b57612d0a613e3a565b5b14612d4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d4290614f12565b60405180910390fd5b8160400151604001515f01518160a00151612d669190614f5d565b4211612da7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d9e90614fda565b60405180910390fd5b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638224ce5f856040518263ffffffff1660e01b8152600401612e029190614268565b6020604051808303815f875af1158015612e1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e4291906146da565b905060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e850be37856040518263ffffffff1660e01b8152600401612e9e9190614268565b5f604051808303815f87803b158015612eb5575f80fd5b505af1158015612ec7573d5f803e3d5ffd5b5050505060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637a6726b58585602001516040015186602001516020015185886040015160400151602001516040518663ffffffff1660e01b8152600401612f49959493929190614ff8565b5f604051808303815f87803b158015612f60575f80fd5b505af1158015612f72573d5f803e3d5ffd5b5050505050505050565b612f846134c5565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612ff2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fe9906154a2565b60405180910390fd5b612ffb81613543565b50565b6130066136f1565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a6370b0e878787876040518563ffffffff1660e01b815260040161306794939291906155c7565b5f604051808303815f875af1158015613082573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906130aa919061462b565b90505f81602001516040015173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161490505f82602001516020015173ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614905081806131295750805b613168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161315f90615664565b60405180910390fd5b81156132ae5760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ec95b967896040518263ffffffff1660e01b81526004016131c89190614268565b6101c0604051808303815f875af11580156131e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132099190614e9c565b5060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639e3868dc89856020015160400151866040015160200151602001516040518463ffffffff1660e01b815260040161327c93929190615188565b5f604051808303815f87803b158015613293575f80fd5b505af11580156132a5573d5f803e3d5ffd5b505050506133fb565b80156133fa5760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633c4135da896040518263ffffffff1660e01b815260040161330e9190614268565b6101c0604051808303815f875af115801561332b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061334f9190614e9c565b5060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b918803589856020015160200151866060015160200151876040015160400151602001516040518563ffffffff1660e01b81526004016133cc94939291906149c0565b5f604051808303815f87803b1580156133e3575f80fd5b505af11580156133f5573d5f803e3d5ffd5b505050505b5b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663cdd82d1d896040518263ffffffff1660e01b81526004016134559190614268565b6101c0604051808303815f875af1158015613472573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134969190614e9c565b9350505050949350505050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6134cd613604565b73ffffffffffffffffffffffffffffffffffffffff166134eb6124b1565b73ffffffffffffffffffffffffffffffffffffffff1614613541576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613538906156cc565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f33905090565b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b050e74b8360046040518363ffffffff1660e01b8152600401613669929190614172565b6020604051808303815f875af1158015613685573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136a991906141d5565b6136e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136df90615734565b60405180910390fd5b60019050919050565b604051806101c001604052805f600a8111156137105761370f613e3a565b5b81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61378d82613764565b9050919050565b61379d81613783565b82525050565b5f6020820190506137b65f830184613794565b92915050565b5f604051905090565b5f80fd5b5f80fd5b6137d681613783565b81146137e0575f80fd5b50565b5f813590506137f1816137cd565b92915050565b5f805f805f60a086880312156138105761380f6137c5565b5b5f61381d888289016137e3565b955050602061382e888289016137e3565b945050604061383f888289016137e3565b9350506060613850888289016137e3565b9250506080613861888289016137e3565b9150509295509295909350565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6138bc82613876565b810181811067ffffffffffffffff821117156138db576138da613886565b5b80604052505050565b5f6138ed6137bc565b90506138f982826138b3565b919050565b5f67ffffffffffffffff82111561391857613917613886565b5b61392182613876565b9050602081019050919050565b828183375f83830152505050565b5f61394e613949846138fe565b6138e4565b90508281526020810184848401111561396a57613969613872565b5b61397584828561392e565b509392505050565b5f82601f8301126139915761399061386e565b5b81356139a184826020860161393c565b91505092915050565b5f602082840312156139bf576139be6137c5565b5b5f82013567ffffffffffffffff8111156139dc576139db6137c9565b5b6139e88482850161397d565b91505092915050565b5f819050919050565b613a03816139f1565b8114613a0d575f80fd5b50565b5f81359050613a1e816139fa565b92915050565b5f805f8060808587031215613a3c57613a3b6137c5565b5b5f85013567ffffffffffffffff811115613a5957613a586137c9565b5b613a658782880161397d565b945050602085013567ffffffffffffffff811115613a8657613a856137c9565b5b613a928782880161397d565b935050604085013567ffffffffffffffff811115613ab357613ab26137c9565b5b613abf8782880161397d565b9250506060613ad087828801613a10565b91505092959194509250565b5f60208284031215613af157613af06137c5565b5b5f613afe848285016137e3565b91505092915050565b5f80fd5b5f80fd5b5f67ffffffffffffffff821115613b2957613b28613886565b5b602082029050602081019050919050565b5f80fd5b5f613b50613b4b84613b0f565b6138e4565b90508083825260208201905060208402830185811115613b7357613b72613b3a565b5b835b81811015613b9c5780613b8888826137e3565b845260208401935050602081019050613b75565b5050509392505050565b5f82601f830112613bba57613bb961386e565b5b8135613bca848260208601613b3e565b91505092915050565b5f60808284031215613be857613be7613b07565b5b613bf260806138e4565b90505f613c01848285016137e3565b5f830152506020613c14848285016137e3565b6020830152506040613c28848285016137e3565b604083015250606082013567ffffffffffffffff811115613c4c57613c4b613b0b565b5b613c5884828501613ba6565b60608301525092915050565b5f60408284031215613c7957613c78613b07565b5b613c8360406138e4565b90505f613c9284828501613a10565b5f830152506020613ca584828501613a10565b60208301525092915050565b5f6101008284031215613cc757613cc6613b07565b5b613cd160806138e4565b90505f613ce084828501613c64565b5f830152506040613cf384828501613c64565b6020830152506080613d0784828501613c64565b60408301525060c0613d1b84828501613c64565b60608301525092915050565b5f60808284031215613d3c57613d3b613b07565b5b613d4660806138e4565b90505f613d5584828501613a10565b5f830152506020613d6884828501613a10565b6020830152506040613d7c84828501613a10565b6040830152506060613d9084828501613a10565b60608301525092915050565b5f805f806101c08587031215613db557613db46137c5565b5b5f85013567ffffffffffffffff811115613dd257613dd16137c9565b5b613dde8782880161397d565b945050602085013567ffffffffffffffff811115613dff57613dfe6137c9565b5b613e0b87828801613bd3565b9350506040613e1c87828801613cb1565b925050610140613e2e87828801613d27565b91505092959194509250565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600b8110613e7857613e77613e3a565b5b50565b5f819050613e8882613e67565b919050565b5f613e9782613e7b565b9050919050565b613ea781613e8d565b82525050565b613eb6816139f1565b82525050565b6101c082015f820151613ed15f850182613e9e565b506020820151613ee46020850182613ead565b506040820151613ef76040850182613ead565b506060820151613f0a6060850182613ead565b506080820151613f1d6080850182613ead565b5060a0820151613f3060a0850182613ead565b5060c0820151613f4360c0850182613ead565b5060e0820151613f5660e0850182613ead565b50610100820151613f6b610100850182613ead565b50610120820151613f80610120850182613ead565b50610140820151613f95610140850182613ead565b50610160820151613faa610160850182613ead565b50610180820151613fbf610180850182613ead565b506101a0820151613fd46101a0850182613ead565b50505050565b5f6101c082019050613fee5f830184613ebc565b92915050565b5f82825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c7265615f8201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b5f61405e602e83613ff4565b915061406982614004565b604082019050919050565b5f6020820190508181035f83015261408b81614052565b9050919050565b5f819050919050565b5f60ff82169050919050565b5f819050919050565b5f6140ca6140c56140c084614092565b6140a7565b61409b565b9050919050565b6140da816140b0565b82525050565b5f6020820190506140f35f8301846140d1565b92915050565b5f81519050919050565b5f5b83811015614120578082015181840152602081019050614105565b5f8484015250505050565b5f614135826140f9565b61413f8185613ff4565b935061414f818560208601614103565b61415881613876565b840191505092915050565b61416c81613e8d565b82525050565b5f6040820190508181035f83015261418a818561412b565b90506141996020830184614163565b9392505050565b5f8115159050919050565b6141b4816141a0565b81146141be575f80fd5b50565b5f815190506141cf816141ab565b92915050565b5f602082840312156141ea576141e96137c5565b5b5f6141f7848285016141c1565b91505092915050565b7f526573756c74735375626d6974746564000000000000000000000000000000005f82015250565b5f614234601083613ff4565b915061423f82614200565b602082019050919050565b5f6020820190508181035f83015261426181614228565b9050919050565b5f6020820190508181035f830152614280818461412b565b905092915050565b5f61429a614295846138fe565b6138e4565b9050828152602081018484840111156142b6576142b5613872565b5b6142c1848285614103565b509392505050565b5f82601f8301126142dd576142dc61386e565b5b81516142ed848260208601614288565b91505092915050565b5f81519050614304816137cd565b92915050565b5f61431c61431784613b0f565b6138e4565b9050808382526020820190506020840283018581111561433f5761433e613b3a565b5b835b81811015614368578061435488826142f6565b845260208401935050602081019050614341565b5050509392505050565b5f82601f8301126143865761438561386e565b5b815161439684826020860161430a565b91505092915050565b5f608082840312156143b4576143b3613b07565b5b6143be60806138e4565b90505f6143cd848285016142f6565b5f8301525060206143e0848285016142f6565b60208301525060406143f4848285016142f6565b604083015250606082015167ffffffffffffffff81111561441857614417613b0b565b5b61442484828501614372565b60608301525092915050565b5f8151905061443e816139fa565b92915050565b5f6040828403121561445957614458613b07565b5b61446360406138e4565b90505f61447284828501614430565b5f83015250602061448584828501614430565b60208301525092915050565b5f61010082840312156144a7576144a6613b07565b5b6144b160806138e4565b90505f6144c084828501614444565b5f8301525060406144d384828501614444565b60208301525060806144e784828501614444565b60408301525060c06144fb84828501614444565b60608301525092915050565b5f6080828403121561451c5761451b613b07565b5b61452660806138e4565b90505f61453584828501614430565b5f83015250602061454884828501614430565b602083015250604061455c84828501614430565b604083015250606061457084828501614430565b60608301525092915050565b5f6101c0828403121561459257614591613b07565b5b61459c60806138e4565b90505f82015167ffffffffffffffff8111156145bb576145ba613b0b565b5b6145c7848285016142c9565b5f83015250602082015167ffffffffffffffff8111156145ea576145e9613b0b565b5b6145f68482850161439f565b602083015250604061460a84828501614491565b60408301525061014061461f84828501614507565b60608301525092915050565b5f602082840312156146405761463f6137c5565b5b5f82015167ffffffffffffffff81111561465d5761465c6137c9565b5b6146698482850161457c565b91505092915050565b7f4f6e6c79204a43000000000000000000000000000000000000000000000000005f82015250565b5f6146a6600783613ff4565b91506146b182614672565b602082019050919050565b5f6020820190508181035f8301526146d38161469a565b9050919050565b5f602082840312156146ef576146ee6137c5565b5b5f6146fc84828501614430565b91505092915050565b61470e816139f1565b82525050565b5f60e0820190508181035f83015261472c818a61412b565b905061473b6020830189613794565b6147486040830188613794565b6147556060830187614705565b6147626080830186614705565b61476f60a0830185614705565b61477c60c0830184614705565b98975050505050505050565b7f4465616c416772656564000000000000000000000000000000000000000000005f82015250565b5f6147bc600a83613ff4565b91506147c782614788565b602082019050919050565b5f6020820190508181035f8301526147e9816147b0565b9050919050565b7f4f6e6c79205250000000000000000000000000000000000000000000000000005f82015250565b5f614824600783613ff4565b915061482f826147f0565b602082019050919050565b5f6020820190508181035f83015261485181614818565b9050919050565b5f6080820190508181035f830152614870818761412b565b90508181036020830152614884818661412b565b90508181036040830152614898818561412b565b90506148a76060830184614705565b95945050505050565b5f608082840312156148c5576148c4613b07565b5b6148cf60806138e4565b90505f82015167ffffffffffffffff8111156148ee576148ed613b0b565b5b6148fa848285016142c9565b5f83015250602082015167ffffffffffffffff81111561491d5761491c613b0b565b5b614929848285016142c9565b602083015250604082015167ffffffffffffffff81111561494d5761494c613b0b565b5b614959848285016142c9565b604083015250606061496d84828501614430565b60608301525092915050565b5f6020828403121561498e5761498d6137c5565b5b5f82015167ffffffffffffffff8111156149ab576149aa6137c9565b5b6149b7848285016148b0565b91505092915050565b5f6080820190508181035f8301526149d8818761412b565b90506149e76020830186613794565b6149f46040830185614705565b614a016060830184614705565b95945050505050565b7f4d6564696174696f6e20616464726573730000000000000000000000000000005f82015250565b5f614a3e601183613ff4565b9150614a4982614a0a565b602082019050919050565b5f6020820190508181035f830152614a6b81614a32565b9050919050565b5f82825260208201905092915050565b5f614a8c826140f9565b614a968185614a72565b9350614aa6818560208601614103565b614aaf81613876565b840191505092915050565b614ac381613783565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f614afd8383614aba565b60208301905092915050565b5f602082019050919050565b5f614b1f82614ac9565b614b298185614ad3565b9350614b3483614ae3565b805f5b83811015614b64578151614b4b8882614af2565b9750614b5683614b09565b925050600181019050614b37565b5085935050505092915050565b5f608083015f830151614b865f860182614aba565b506020830151614b996020860182614aba565b506040830151614bac6040860182614aba565b5060608301518482036060860152614bc48282614b15565b9150508091505092915050565b604082015f820151614be55f850182613ead565b506020820151614bf86020850182613ead565b50505050565b61010082015f820151614c135f850182614bd1565b506020820151614c266040850182614bd1565b506040820151614c396080850182614bd1565b506060820151614c4c60c0850182614bd1565b50505050565b608082015f820151614c665f850182613ead565b506020820151614c796020850182613ead565b506040820151614c8c6040850182613ead565b506060820151614c9f6060850182613ead565b50505050565b5f6101c083015f8301518482035f860152614cc08282614a82565b91505060208301518482036020860152614cda8282614b71565b9150506040830151614cef6040860182614bfe565b506060830151614d03610140860182614c52565b508091505092915050565b5f6020820190508181035f830152614d268184614ca5565b905092915050565b600b8110614d3a575f80fd5b50565b5f81519050614d4b81614d2e565b92915050565b5f6101c08284031215614d6757614d66613b07565b5b614d726101c06138e4565b90505f614d8184828501614d3d565b5f830152506020614d9484828501614430565b6020830152506040614da884828501614430565b6040830152506060614dbc84828501614430565b6060830152506080614dd084828501614430565b60808301525060a0614de484828501614430565b60a08301525060c0614df884828501614430565b60c08301525060e0614e0c84828501614430565b60e083015250610100614e2184828501614430565b61010083015250610120614e3784828501614430565b61012083015250610140614e4d84828501614430565b61014083015250610160614e6384828501614430565b61016083015250610180614e7984828501614430565b610180830152506101a0614e8f84828501614430565b6101a08301525092915050565b5f6101c08284031215614eb257614eb16137c5565b5b5f614ebf84828501614d51565b91505092915050565b7f4e6f7420636f72726563742073746174650000000000000000000000000000005f82015250565b5f614efc601183613ff4565b9150614f0782614ec8565b602082019050919050565b5f6020820190508181035f830152614f2981614ef0565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614f67826139f1565b9150614f72836139f1565b9250828201905080821115614f8a57614f89614f30565b5b92915050565b7f4e6f742074696d6564206f7574000000000000000000000000000000000000005f82015250565b5f614fc4600d83613ff4565b9150614fcf82614f90565b602082019050919050565b5f6020820190508181035f830152614ff181614fb8565b9050919050565b5f60a0820190508181035f830152615010818861412b565b905061501f6020830187613794565b61502c6040830186613794565b6150396060830185614705565b6150466080830184614705565b9695505050505050565b7f53746f72616765206164647265737300000000000000000000000000000000005f82015250565b5f615084600f83613ff4565b915061508f82615050565b602082019050919050565b5f6020820190508181035f8301526150b181615078565b9050919050565b7f5061796d656e74732061646472657373000000000000000000000000000000005f82015250565b5f6150ec601083613ff4565b91506150f7826150b8565b602082019050919050565b5f6020820190508181035f830152615119816150e0565b9050919050565b7f4f6e6c79204a43206f72205250000000000000000000000000000000000000005f82015250565b5f615154600d83613ff4565b915061515f82615120565b602082019050919050565b5f6020820190508181035f83015261518181615148565b9050919050565b5f6060820190508181035f8301526151a0818661412b565b90506151af6020830185613794565b6151bc6040830184614705565b949350505050565b7f4f6e6c79206d6564696174696f6e0000000000000000000000000000000000005f82015250565b5f6151f8600e83613ff4565b9150615203826151c4565b602082019050919050565b5f6020820190508181035f830152615225816151ec565b9050919050565b7f43616e6e6f74206d6564696174650000000000000000000000000000000000005f82015250565b5f615260600e83613ff4565b915061526b8261522c565b602082019050919050565b5f6020820190508181035f83015261528d81615254565b9050919050565b5f60c0820190508181035f8301526152ac818961412b565b90506152bb6020830188613794565b6152c86040830187613794565b6152d56060830186614705565b6152e26080830185614705565b6152ef60a0830184614705565b979650505050505050565b7f4a6f6243726561746f72206164647265737300000000000000000000000000005f82015250565b5f61532e601283613ff4565b9150615339826152fa565b602082019050919050565b5f6020820190508181035f83015261535b81615322565b9050919050565b7f55736572732061646472657373000000000000000000000000000000000000005f82015250565b5f615396600d83613ff4565b91506153a182615362565b602082019050919050565b5f6020820190508181035f8301526153c38161538a565b9050919050565b7f4f6e6c79205250206f72204a43000000000000000000000000000000000000005f82015250565b5f6153fe600d83613ff4565b9150615409826153ca565b602082019050919050565b5f6020820190508181035f83015261542b816153f2565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61548c602683613ff4565b915061549782615432565b604082019050919050565b5f6020820190508181035f8301526154b981615480565b9050919050565b5f608083015f8301516154d55f860182614aba565b5060208301516154e86020860182614aba565b5060408301516154fb6040860182614aba565b50606083015184820360608601526155138282614b15565b9150508091505092915050565b61010082015f8201516155355f850182614bd1565b5060208201516155486040850182614bd1565b50604082015161555b6080850182614bd1565b50606082015161556e60c0850182614bd1565b50505050565b608082015f8201516155885f850182613ead565b50602082015161559b6020850182613ead565b5060408201516155ae6040850182613ead565b5060608201516155c16060850182613ead565b50505050565b5f6101c0820190508181035f8301526155e0818761412b565b905081810360208301526155f481866154c0565b90506156036040830185615520565b615611610140830184615574565b95945050505050565b7f4f6e6c79205250202f204a4300000000000000000000000000000000000000005f82015250565b5f61564e600c83613ff4565b91506156598261561a565b602082019050919050565b5f6020820190508181035f83015261567b81615642565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6156b6602083613ff4565b91506156c182615682565b602082019050919050565b5f6020820190508181035f8301526156e3816156aa565b9050919050565b7f526573756c7473436865636b65640000000000000000000000000000000000005f82015250565b5f61571e600e83613ff4565b9150615729826156ea565b602082019050919050565b5f6020820190508181035f83015261574b81615712565b905091905056fea26469706673582212208a18870ef661c5827e4600bb15f14e761beb5f5522a98082c007f3eb3b6e7b4264736f6c63430008150033",
}

ControllerMetaData contains all meta data concerning the Controller contract.

Functions

This section is empty.

Types

type Controller

type Controller struct {
	ControllerCaller     // Read-only binding to the contract
	ControllerTransactor // Write-only binding to the contract
	ControllerFilterer   // Log filterer for contract events
}

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

func DeployController

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

DeployController deploys a new Ethereum contract, binding an instance of Controller to it.

func NewController

func NewController(address common.Address, backend bind.ContractBackend) (*Controller, error)

NewController creates a new instance of Controller, bound to a specific deployed contract.

type ControllerCaller

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

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

func NewControllerCaller

func NewControllerCaller(address common.Address, caller bind.ContractCaller) (*ControllerCaller, error)

NewControllerCaller creates a new read-only instance of Controller, bound to a specific deployed contract.

func (*ControllerCaller) GetJobCreatorAddress

func (_Controller *ControllerCaller) GetJobCreatorAddress(opts *bind.CallOpts) (common.Address, error)

GetJobCreatorAddress is a free data retrieval call binding the contract method 0x0aca35ce.

Solidity: function getJobCreatorAddress() view returns(address)

func (*ControllerCaller) GetMediationAddress

func (_Controller *ControllerCaller) GetMediationAddress(opts *bind.CallOpts) (common.Address, error)

GetMediationAddress is a free data retrieval call binding the contract method 0x155329ea.

Solidity: function getMediationAddress() view returns(address)

func (*ControllerCaller) GetPaymentsAddress

func (_Controller *ControllerCaller) GetPaymentsAddress(opts *bind.CallOpts) (common.Address, error)

GetPaymentsAddress is a free data retrieval call binding the contract method 0xd48b1084.

Solidity: function getPaymentsAddress() view returns(address)

func (*ControllerCaller) GetStorageAddress

func (_Controller *ControllerCaller) GetStorageAddress(opts *bind.CallOpts) (common.Address, error)

GetStorageAddress is a free data retrieval call binding the contract method 0x393a4d34.

Solidity: function getStorageAddress() view returns(address)

func (*ControllerCaller) GetUsersAddress

func (_Controller *ControllerCaller) GetUsersAddress(opts *bind.CallOpts) (common.Address, error)

GetUsersAddress is a free data retrieval call binding the contract method 0x93dbed3e.

Solidity: function getUsersAddress() view returns(address)

func (*ControllerCaller) Owner

func (_Controller *ControllerCaller) Owner(opts *bind.CallOpts) (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

type ControllerCallerRaw

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

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

func (*ControllerCallerRaw) Call

func (_Controller *ControllerCallerRaw) 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 ControllerCallerSession

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

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

func (*ControllerCallerSession) GetJobCreatorAddress

func (_Controller *ControllerCallerSession) GetJobCreatorAddress() (common.Address, error)

GetJobCreatorAddress is a free data retrieval call binding the contract method 0x0aca35ce.

Solidity: function getJobCreatorAddress() view returns(address)

func (*ControllerCallerSession) GetMediationAddress

func (_Controller *ControllerCallerSession) GetMediationAddress() (common.Address, error)

GetMediationAddress is a free data retrieval call binding the contract method 0x155329ea.

Solidity: function getMediationAddress() view returns(address)

func (*ControllerCallerSession) GetPaymentsAddress

func (_Controller *ControllerCallerSession) GetPaymentsAddress() (common.Address, error)

GetPaymentsAddress is a free data retrieval call binding the contract method 0xd48b1084.

Solidity: function getPaymentsAddress() view returns(address)

func (*ControllerCallerSession) GetStorageAddress

func (_Controller *ControllerCallerSession) GetStorageAddress() (common.Address, error)

GetStorageAddress is a free data retrieval call binding the contract method 0x393a4d34.

Solidity: function getStorageAddress() view returns(address)

func (*ControllerCallerSession) GetUsersAddress

func (_Controller *ControllerCallerSession) GetUsersAddress() (common.Address, error)

GetUsersAddress is a free data retrieval call binding the contract method 0x93dbed3e.

Solidity: function getUsersAddress() view returns(address)

func (*ControllerCallerSession) Owner

func (_Controller *ControllerCallerSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

type ControllerFilterer

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

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

func NewControllerFilterer

func NewControllerFilterer(address common.Address, filterer bind.ContractFilterer) (*ControllerFilterer, error)

NewControllerFilterer creates a new log filterer instance of Controller, bound to a specific deployed contract.

func (*ControllerFilterer) FilterInitialized

func (_Controller *ControllerFilterer) FilterInitialized(opts *bind.FilterOpts) (*ControllerInitializedIterator, error)

FilterInitialized is a free log retrieval operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*ControllerFilterer) FilterOwnershipTransferred

func (_Controller *ControllerFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*ControllerOwnershipTransferredIterator, error)

FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*ControllerFilterer) ParseInitialized

func (_Controller *ControllerFilterer) ParseInitialized(log types.Log) (*ControllerInitialized, error)

ParseInitialized is a log parse operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*ControllerFilterer) ParseOwnershipTransferred

func (_Controller *ControllerFilterer) ParseOwnershipTransferred(log types.Log) (*ControllerOwnershipTransferred, error)

ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*ControllerFilterer) WatchInitialized

func (_Controller *ControllerFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *ControllerInitialized) (event.Subscription, error)

WatchInitialized is a free log subscription operation binding the contract event 0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498.

Solidity: event Initialized(uint8 version)

func (*ControllerFilterer) WatchOwnershipTransferred

func (_Controller *ControllerFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *ControllerOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error)

WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

type ControllerInitialized

type ControllerInitialized struct {
	Version uint8
	Raw     types.Log // Blockchain specific contextual infos
}

ControllerInitialized represents a Initialized event raised by the Controller contract.

type ControllerInitializedIterator

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

ControllerInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the Controller contract.

func (*ControllerInitializedIterator) Close

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

func (*ControllerInitializedIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*ControllerInitializedIterator) 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 ControllerOwnershipTransferred

type ControllerOwnershipTransferred struct {
	PreviousOwner common.Address
	NewOwner      common.Address
	Raw           types.Log // Blockchain specific contextual infos
}

ControllerOwnershipTransferred represents a OwnershipTransferred event raised by the Controller contract.

type ControllerOwnershipTransferredIterator

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

ControllerOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Controller contract.

func (*ControllerOwnershipTransferredIterator) Close

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

func (*ControllerOwnershipTransferredIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*ControllerOwnershipTransferredIterator) 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 ControllerRaw

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

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

func (*ControllerRaw) Call

func (_Controller *ControllerRaw) 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 (*ControllerRaw) Transact

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

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

func (*ControllerRaw) Transfer

func (_Controller *ControllerRaw) 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 ControllerSession

type ControllerSession struct {
	Contract     *Controller       // 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
}

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

func (*ControllerSession) AcceptResult

func (_Controller *ControllerSession) AcceptResult(dealId string) (*types.Transaction, error)

AcceptResult is a paid mutator transaction binding the contract method 0x297f9e55.

Solidity: function acceptResult(string dealId) returns()

func (*ControllerSession) AddResult

func (_Controller *ControllerSession) AddResult(dealId string, resultsId string, dataId string, instructionCount *big.Int) (*types.Transaction, error)

AddResult is a paid mutator transaction binding the contract method 0x3955548e.

Solidity: function addResult(string dealId, string resultsId, string dataId, uint256 instructionCount) returns()

func (*ControllerSession) Agree

Agree is a paid mutator transaction binding the contract method 0xf583b125.

Solidity: function agree(string dealId, (address,address,address,address[]) members, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256)) timeouts, (uint256,uint256,uint256,uint256) pricing) returns((uint8,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))

func (*ControllerSession) CheckResult

func (_Controller *ControllerSession) CheckResult(dealId string) (*types.Transaction, error)

CheckResult is a paid mutator transaction binding the contract method 0x46834d1e.

Solidity: function checkResult(string dealId) returns()

func (*ControllerSession) GetJobCreatorAddress

func (_Controller *ControllerSession) GetJobCreatorAddress() (common.Address, error)

GetJobCreatorAddress is a free data retrieval call binding the contract method 0x0aca35ce.

Solidity: function getJobCreatorAddress() view returns(address)

func (*ControllerSession) GetMediationAddress

func (_Controller *ControllerSession) GetMediationAddress() (common.Address, error)

GetMediationAddress is a free data retrieval call binding the contract method 0x155329ea.

Solidity: function getMediationAddress() view returns(address)

func (*ControllerSession) GetPaymentsAddress

func (_Controller *ControllerSession) GetPaymentsAddress() (common.Address, error)

GetPaymentsAddress is a free data retrieval call binding the contract method 0xd48b1084.

Solidity: function getPaymentsAddress() view returns(address)

func (*ControllerSession) GetStorageAddress

func (_Controller *ControllerSession) GetStorageAddress() (common.Address, error)

GetStorageAddress is a free data retrieval call binding the contract method 0x393a4d34.

Solidity: function getStorageAddress() view returns(address)

func (*ControllerSession) GetUsersAddress

func (_Controller *ControllerSession) GetUsersAddress() (common.Address, error)

GetUsersAddress is a free data retrieval call binding the contract method 0x93dbed3e.

Solidity: function getUsersAddress() view returns(address)

func (*ControllerSession) Initialize

func (_Controller *ControllerSession) Initialize(_storageAddress common.Address, _usersAddress common.Address, _paymentsAddress common.Address, _mediationAddress common.Address, _jobCreatorAddress common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x1459457a.

Solidity: function initialize(address _storageAddress, address _usersAddress, address _paymentsAddress, address _mediationAddress, address _jobCreatorAddress) returns()

func (*ControllerSession) MediationAcceptResult

func (_Controller *ControllerSession) MediationAcceptResult(dealId string) (*types.Transaction, error)

MediationAcceptResult is a paid mutator transaction binding the contract method 0x824518aa.

Solidity: function mediationAcceptResult(string dealId) returns()

func (*ControllerSession) MediationRejectResult

func (_Controller *ControllerSession) MediationRejectResult(dealId string) (*types.Transaction, error)

MediationRejectResult is a paid mutator transaction binding the contract method 0x80ffdfe0.

Solidity: function mediationRejectResult(string dealId) returns()

func (*ControllerSession) Owner

func (_Controller *ControllerSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*ControllerSession) RenounceOwnership

func (_Controller *ControllerSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ControllerSession) SetJobCreatorAddress

func (_Controller *ControllerSession) SetJobCreatorAddress(_jobCreatorAddress common.Address) (*types.Transaction, error)

SetJobCreatorAddress is a paid mutator transaction binding the contract method 0xb4031e54.

Solidity: function setJobCreatorAddress(address _jobCreatorAddress) returns()

func (*ControllerSession) SetMediationAddress

func (_Controller *ControllerSession) SetMediationAddress(_mediationAddress common.Address) (*types.Transaction, error)

SetMediationAddress is a paid mutator transaction binding the contract method 0x43391cca.

Solidity: function setMediationAddress(address _mediationAddress) returns()

func (*ControllerSession) SetPaymentsAddress

func (_Controller *ControllerSession) SetPaymentsAddress(_paymentsAddress common.Address) (*types.Transaction, error)

SetPaymentsAddress is a paid mutator transaction binding the contract method 0x640e570f.

Solidity: function setPaymentsAddress(address _paymentsAddress) returns()

func (*ControllerSession) SetStorageAddress

func (_Controller *ControllerSession) SetStorageAddress(_storageAddress common.Address) (*types.Transaction, error)

SetStorageAddress is a paid mutator transaction binding the contract method 0x59b910d6.

Solidity: function setStorageAddress(address _storageAddress) returns()

func (*ControllerSession) SetUsersAddress

func (_Controller *ControllerSession) SetUsersAddress(_usersAddress common.Address) (*types.Transaction, error)

SetUsersAddress is a paid mutator transaction binding the contract method 0xbbfff47d.

Solidity: function setUsersAddress(address _usersAddress) returns()

func (*ControllerSession) TimeoutAgree

func (_Controller *ControllerSession) TimeoutAgree(dealId string) (*types.Transaction, error)

TimeoutAgree is a paid mutator transaction binding the contract method 0x795f9abf.

Solidity: function timeoutAgree(string dealId) returns()

func (*ControllerSession) TimeoutJudgeResult

func (_Controller *ControllerSession) TimeoutJudgeResult(dealId string) (*types.Transaction, error)

TimeoutJudgeResult is a paid mutator transaction binding the contract method 0xe850be37.

Solidity: function timeoutJudgeResult(string dealId) returns()

func (*ControllerSession) TimeoutMediateResult

func (_Controller *ControllerSession) TimeoutMediateResult(dealId string) (*types.Transaction, error)

TimeoutMediateResult is a paid mutator transaction binding the contract method 0xe7b957d1.

Solidity: function timeoutMediateResult(string dealId) returns()

func (*ControllerSession) TimeoutSubmitResult

func (_Controller *ControllerSession) TimeoutSubmitResult(dealId string) (*types.Transaction, error)

TimeoutSubmitResult is a paid mutator transaction binding the contract method 0x511a9f68.

Solidity: function timeoutSubmitResult(string dealId) returns()

func (*ControllerSession) TransferOwnership

func (_Controller *ControllerSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

type ControllerTransactor

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

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

func NewControllerTransactor

func NewControllerTransactor(address common.Address, transactor bind.ContractTransactor) (*ControllerTransactor, error)

NewControllerTransactor creates a new write-only instance of Controller, bound to a specific deployed contract.

func (*ControllerTransactor) AcceptResult

func (_Controller *ControllerTransactor) AcceptResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

AcceptResult is a paid mutator transaction binding the contract method 0x297f9e55.

Solidity: function acceptResult(string dealId) returns()

func (*ControllerTransactor) AddResult

func (_Controller *ControllerTransactor) AddResult(opts *bind.TransactOpts, dealId string, resultsId string, dataId string, instructionCount *big.Int) (*types.Transaction, error)

AddResult is a paid mutator transaction binding the contract method 0x3955548e.

Solidity: function addResult(string dealId, string resultsId, string dataId, uint256 instructionCount) returns()

func (*ControllerTransactor) Agree

Agree is a paid mutator transaction binding the contract method 0xf583b125.

Solidity: function agree(string dealId, (address,address,address,address[]) members, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256)) timeouts, (uint256,uint256,uint256,uint256) pricing) returns((uint8,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))

func (*ControllerTransactor) CheckResult

func (_Controller *ControllerTransactor) CheckResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

CheckResult is a paid mutator transaction binding the contract method 0x46834d1e.

Solidity: function checkResult(string dealId) returns()

func (*ControllerTransactor) Initialize

func (_Controller *ControllerTransactor) Initialize(opts *bind.TransactOpts, _storageAddress common.Address, _usersAddress common.Address, _paymentsAddress common.Address, _mediationAddress common.Address, _jobCreatorAddress common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x1459457a.

Solidity: function initialize(address _storageAddress, address _usersAddress, address _paymentsAddress, address _mediationAddress, address _jobCreatorAddress) returns()

func (*ControllerTransactor) MediationAcceptResult

func (_Controller *ControllerTransactor) MediationAcceptResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

MediationAcceptResult is a paid mutator transaction binding the contract method 0x824518aa.

Solidity: function mediationAcceptResult(string dealId) returns()

func (*ControllerTransactor) MediationRejectResult

func (_Controller *ControllerTransactor) MediationRejectResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

MediationRejectResult is a paid mutator transaction binding the contract method 0x80ffdfe0.

Solidity: function mediationRejectResult(string dealId) returns()

func (*ControllerTransactor) RenounceOwnership

func (_Controller *ControllerTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ControllerTransactor) SetJobCreatorAddress

func (_Controller *ControllerTransactor) SetJobCreatorAddress(opts *bind.TransactOpts, _jobCreatorAddress common.Address) (*types.Transaction, error)

SetJobCreatorAddress is a paid mutator transaction binding the contract method 0xb4031e54.

Solidity: function setJobCreatorAddress(address _jobCreatorAddress) returns()

func (*ControllerTransactor) SetMediationAddress

func (_Controller *ControllerTransactor) SetMediationAddress(opts *bind.TransactOpts, _mediationAddress common.Address) (*types.Transaction, error)

SetMediationAddress is a paid mutator transaction binding the contract method 0x43391cca.

Solidity: function setMediationAddress(address _mediationAddress) returns()

func (*ControllerTransactor) SetPaymentsAddress

func (_Controller *ControllerTransactor) SetPaymentsAddress(opts *bind.TransactOpts, _paymentsAddress common.Address) (*types.Transaction, error)

SetPaymentsAddress is a paid mutator transaction binding the contract method 0x640e570f.

Solidity: function setPaymentsAddress(address _paymentsAddress) returns()

func (*ControllerTransactor) SetStorageAddress

func (_Controller *ControllerTransactor) SetStorageAddress(opts *bind.TransactOpts, _storageAddress common.Address) (*types.Transaction, error)

SetStorageAddress is a paid mutator transaction binding the contract method 0x59b910d6.

Solidity: function setStorageAddress(address _storageAddress) returns()

func (*ControllerTransactor) SetUsersAddress

func (_Controller *ControllerTransactor) SetUsersAddress(opts *bind.TransactOpts, _usersAddress common.Address) (*types.Transaction, error)

SetUsersAddress is a paid mutator transaction binding the contract method 0xbbfff47d.

Solidity: function setUsersAddress(address _usersAddress) returns()

func (*ControllerTransactor) TimeoutAgree

func (_Controller *ControllerTransactor) TimeoutAgree(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

TimeoutAgree is a paid mutator transaction binding the contract method 0x795f9abf.

Solidity: function timeoutAgree(string dealId) returns()

func (*ControllerTransactor) TimeoutJudgeResult

func (_Controller *ControllerTransactor) TimeoutJudgeResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

TimeoutJudgeResult is a paid mutator transaction binding the contract method 0xe850be37.

Solidity: function timeoutJudgeResult(string dealId) returns()

func (*ControllerTransactor) TimeoutMediateResult

func (_Controller *ControllerTransactor) TimeoutMediateResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

TimeoutMediateResult is a paid mutator transaction binding the contract method 0xe7b957d1.

Solidity: function timeoutMediateResult(string dealId) returns()

func (*ControllerTransactor) TimeoutSubmitResult

func (_Controller *ControllerTransactor) TimeoutSubmitResult(opts *bind.TransactOpts, dealId string) (*types.Transaction, error)

TimeoutSubmitResult is a paid mutator transaction binding the contract method 0x511a9f68.

Solidity: function timeoutSubmitResult(string dealId) returns()

func (*ControllerTransactor) TransferOwnership

func (_Controller *ControllerTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

type ControllerTransactorRaw

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

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

func (*ControllerTransactorRaw) Transact

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

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

func (*ControllerTransactorRaw) Transfer

func (_Controller *ControllerTransactorRaw) 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 ControllerTransactorSession

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

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

func (*ControllerTransactorSession) AcceptResult

func (_Controller *ControllerTransactorSession) AcceptResult(dealId string) (*types.Transaction, error)

AcceptResult is a paid mutator transaction binding the contract method 0x297f9e55.

Solidity: function acceptResult(string dealId) returns()

func (*ControllerTransactorSession) AddResult

func (_Controller *ControllerTransactorSession) AddResult(dealId string, resultsId string, dataId string, instructionCount *big.Int) (*types.Transaction, error)

AddResult is a paid mutator transaction binding the contract method 0x3955548e.

Solidity: function addResult(string dealId, string resultsId, string dataId, uint256 instructionCount) returns()

func (*ControllerTransactorSession) Agree

Agree is a paid mutator transaction binding the contract method 0xf583b125.

Solidity: function agree(string dealId, (address,address,address,address[]) members, ((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256)) timeouts, (uint256,uint256,uint256,uint256) pricing) returns((uint8,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))

func (*ControllerTransactorSession) CheckResult

func (_Controller *ControllerTransactorSession) CheckResult(dealId string) (*types.Transaction, error)

CheckResult is a paid mutator transaction binding the contract method 0x46834d1e.

Solidity: function checkResult(string dealId) returns()

func (*ControllerTransactorSession) Initialize

func (_Controller *ControllerTransactorSession) Initialize(_storageAddress common.Address, _usersAddress common.Address, _paymentsAddress common.Address, _mediationAddress common.Address, _jobCreatorAddress common.Address) (*types.Transaction, error)

Initialize is a paid mutator transaction binding the contract method 0x1459457a.

Solidity: function initialize(address _storageAddress, address _usersAddress, address _paymentsAddress, address _mediationAddress, address _jobCreatorAddress) returns()

func (*ControllerTransactorSession) MediationAcceptResult

func (_Controller *ControllerTransactorSession) MediationAcceptResult(dealId string) (*types.Transaction, error)

MediationAcceptResult is a paid mutator transaction binding the contract method 0x824518aa.

Solidity: function mediationAcceptResult(string dealId) returns()

func (*ControllerTransactorSession) MediationRejectResult

func (_Controller *ControllerTransactorSession) MediationRejectResult(dealId string) (*types.Transaction, error)

MediationRejectResult is a paid mutator transaction binding the contract method 0x80ffdfe0.

Solidity: function mediationRejectResult(string dealId) returns()

func (*ControllerTransactorSession) RenounceOwnership

func (_Controller *ControllerTransactorSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ControllerTransactorSession) SetJobCreatorAddress

func (_Controller *ControllerTransactorSession) SetJobCreatorAddress(_jobCreatorAddress common.Address) (*types.Transaction, error)

SetJobCreatorAddress is a paid mutator transaction binding the contract method 0xb4031e54.

Solidity: function setJobCreatorAddress(address _jobCreatorAddress) returns()

func (*ControllerTransactorSession) SetMediationAddress

func (_Controller *ControllerTransactorSession) SetMediationAddress(_mediationAddress common.Address) (*types.Transaction, error)

SetMediationAddress is a paid mutator transaction binding the contract method 0x43391cca.

Solidity: function setMediationAddress(address _mediationAddress) returns()

func (*ControllerTransactorSession) SetPaymentsAddress

func (_Controller *ControllerTransactorSession) SetPaymentsAddress(_paymentsAddress common.Address) (*types.Transaction, error)

SetPaymentsAddress is a paid mutator transaction binding the contract method 0x640e570f.

Solidity: function setPaymentsAddress(address _paymentsAddress) returns()

func (*ControllerTransactorSession) SetStorageAddress

func (_Controller *ControllerTransactorSession) SetStorageAddress(_storageAddress common.Address) (*types.Transaction, error)

SetStorageAddress is a paid mutator transaction binding the contract method 0x59b910d6.

Solidity: function setStorageAddress(address _storageAddress) returns()

func (*ControllerTransactorSession) SetUsersAddress

func (_Controller *ControllerTransactorSession) SetUsersAddress(_usersAddress common.Address) (*types.Transaction, error)

SetUsersAddress is a paid mutator transaction binding the contract method 0xbbfff47d.

Solidity: function setUsersAddress(address _usersAddress) returns()

func (*ControllerTransactorSession) TimeoutAgree

func (_Controller *ControllerTransactorSession) TimeoutAgree(dealId string) (*types.Transaction, error)

TimeoutAgree is a paid mutator transaction binding the contract method 0x795f9abf.

Solidity: function timeoutAgree(string dealId) returns()

func (*ControllerTransactorSession) TimeoutJudgeResult

func (_Controller *ControllerTransactorSession) TimeoutJudgeResult(dealId string) (*types.Transaction, error)

TimeoutJudgeResult is a paid mutator transaction binding the contract method 0xe850be37.

Solidity: function timeoutJudgeResult(string dealId) returns()

func (*ControllerTransactorSession) TimeoutMediateResult

func (_Controller *ControllerTransactorSession) TimeoutMediateResult(dealId string) (*types.Transaction, error)

TimeoutMediateResult is a paid mutator transaction binding the contract method 0xe7b957d1.

Solidity: function timeoutMediateResult(string dealId) returns()

func (*ControllerTransactorSession) TimeoutSubmitResult

func (_Controller *ControllerTransactorSession) TimeoutSubmitResult(dealId string) (*types.Transaction, error)

TimeoutSubmitResult is a paid mutator transaction binding the contract method 0x511a9f68.

Solidity: function timeoutSubmitResult(string dealId) returns()

func (*ControllerTransactorSession) TransferOwnership

func (_Controller *ControllerTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

type SharedStructsAgreement

type SharedStructsAgreement struct {
	State                    uint8
	ResourceProviderAgreedAt *big.Int
	JobCreatorAgreedAt       *big.Int
	DealCreatedAt            *big.Int
	DealAgreedAt             *big.Int
	ResultsSubmittedAt       *big.Int
	ResultsAcceptedAt        *big.Int
	ResultsCheckedAt         *big.Int
	MediationAcceptedAt      *big.Int
	MediationRejectedAt      *big.Int
	TimeoutAgreeAt           *big.Int
	TimeoutSubmitResultsAt   *big.Int
	TimeoutJudgeResultsAt    *big.Int
	TimeoutMediateResultsAt  *big.Int
}

SharedStructsAgreement is an auto generated low-level Go binding around an user-defined struct.

type SharedStructsDealMembers

type SharedStructsDealMembers struct {
	Solver           common.Address
	JobCreator       common.Address
	ResourceProvider common.Address
	Mediators        []common.Address
}

SharedStructsDealMembers is an auto generated low-level Go binding around an user-defined struct.

type SharedStructsDealPricing

type SharedStructsDealPricing struct {
	InstructionPrice          *big.Int
	PaymentCollateral         *big.Int
	ResultsCollateralMultiple *big.Int
	MediationFee              *big.Int
}

SharedStructsDealPricing is an auto generated low-level Go binding around an user-defined struct.

type SharedStructsDealTimeout

type SharedStructsDealTimeout struct {
	Timeout    *big.Int
	Collateral *big.Int
}

SharedStructsDealTimeout is an auto generated low-level Go binding around an user-defined struct.

type SharedStructsDealTimeouts

type SharedStructsDealTimeouts struct {
	Agree          SharedStructsDealTimeout
	SubmitResults  SharedStructsDealTimeout
	JudgeResults   SharedStructsDealTimeout
	MediateResults SharedStructsDealTimeout
}

SharedStructsDealTimeouts is an auto generated low-level Go binding around an user-defined struct.

Jump to

Keyboard shortcuts

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