dgf-prototype/backend/contractArtifacts/Rollup.json

176 lines
32 KiB
JSON

{
"_format": "hh-sol-artifact-1",
"contractName": "Rollup",
"sourceName": "contracts/Rollup.sol",
"abi": [
{
"inputs": [
{
"internalType": "contract DAO",
"name": "dao",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "stakeIndex",
"type": "uint256"
}
],
"name": "AvailabilityStaked",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "duration",
"type": "uint256"
}
],
"name": "acceptAvailability",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "author",
"type": "address"
},
{
"internalType": "uint256",
"name": "stakeAmount",
"type": "uint256"
},
{
"internalType": "string",
"name": "postId",
"type": "string"
}
],
"name": "addItem",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "stakeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "duration",
"type": "uint256"
}
],
"name": "extendAvailability",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "stakeCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "stakes",
"outputs": [
{
"internalType": "address",
"name": "worker",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "endTime",
"type": "uint256"
},
{
"internalType": "bool",
"name": "assigned",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "batchPostId",
"type": "string"
},
{
"internalType": "uint256",
"name": "batchSize",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "poolDuration",
"type": "uint256"
}
],
"name": "submitBatch",
"outputs": [
{
"internalType": "uint256",
"name": "poolIndex",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60a06040523480156200001157600080fd5b5060405162001d8a38038062001d8a8339818101604052810190620000379190620000f4565b80808073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505050505062000126565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620000a8826200007b565b9050919050565b6000620000bc826200009b565b9050919050565b620000ce81620000af565b8114620000da57600080fd5b50565b600081519050620000ee81620000c3565b92915050565b6000602082840312156200010d576200010c62000076565b5b60006200011d84828501620000dd565b91505092915050565b608051611c3362000157600039600081816101720152818161065b0152818161074401526108860152611c336000f3fe6080604052600436106100555760003560e01c8063216ed6ad1461005a578063b5b20c0014610083578063c4a9e116146100ac578063d5a44f86146100d7578063da553ec214610117578063f85c5a8a14610154575b600080fd5b34801561006657600080fd5b50610081600480360381019061007c9190610de8565b610170565b005b34801561008f57600080fd5b506100aa60048036038101906100a59190610e3b565b610310565b005b3480156100b857600080fd5b506100c1610484565b6040516100ce9190610e8a565b60405180910390f35b3480156100e357600080fd5b506100fe60048036038101906100f99190610ea5565b61048a565b60405161010e9493929190610efc565b60405180910390f35b34801561012357600080fd5b5061013e60048036038101906101399190610fa6565b6104e7565b60405161014b9190610e8a565b60405180910390f35b61016e6004803603810190610169919061101a565b610af5565b005b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101f590611111565b60405180910390fd5b60008211610241576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102389061117d565b60405180910390fd5b600060016000815480929190610256906111cc565b91905055905060008060008381526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083816001018190555082426102ca9190611214565b81600201819055507fa85b1153cd317f9d39e14d8dbfb592ffb46123e9fc61b21b3f70d7d90a81a7e9826040516103019190610e8a565b60405180910390a15050505050565b600080600084815260200190815260200160002090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146103b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103af906112ba565b60405180910390fd5b8060030160009054906101000a900460ff161561040a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104019061134c565b60405180910390fd5b806002015442111561042f5781426104229190611214565b8160020181905550610448565b81816002015461043f9190611214565b81600201819055505b7fa85b1153cd317f9d39e14d8dbfb592ffb46123e9fc61b21b3f70d7d90a81a7e9836040516104779190610e8a565b60405180910390a1505050565b60015481565b60006020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154908060030160009054906101000a900460ff16905084565b600060035483111561052e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610525906113b8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461061557600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610614576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060b9061144a565b60405180910390fd5b5b600080600090505b600354811015610658576002600082815260200190815260200160002060020154826106499190611214565b9150808060010191505061061d565b507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639fbe7c7382888887604051806040016040528060018152602001600381525060405180604001604052806001815260200160028152506064600160006040518a63ffffffff1660e01b81526004016106f09897969594939291906115de565b60206040518083038185885af115801561070e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107339190611681565b915060005b60035481101561082d577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663975762b3846002600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260008681526020019081526020016000206001015460016040518563ffffffff1660e01b81526004016107ee94939291906116ae565b600060405180830381600087803b15801561080857600080fd5b505af115801561081c573d6000803e3d6000fd5b505050508080600101915050610738565b50600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610950577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663975762b383600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660008060055481526020019081526020016000206001015460016040518563ffffffff1660e01b815260040161091d94939291906116ae565b600060405180830381600087803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b505050505b600354841015610a5d5760005b8460035461096b91906116f3565b811015610a43576002600082876109829190611214565b8152602001908152602001600020600260008381526020019081526020016000206000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600182015481600101556002820154816002015560038201816003019081610a32919061196e565b50905050808060010191505061095d565b5083600354610a5291906116f3565b600381905550610a66565b60006003819055505b610a6e610b92565b600581905550600080600554815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050949350505050565b60006002600060036000815480929190610b0e906111cc565b9190505581526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508381600101819055503481600201819055508282826003019182610b8a929190611a61565b505050505050565b6000610b9c610bd5565b90506000806000838152602001908152602001600020905060018160030160006101000a81548160ff0219169083151502179055505090565b60008060005b600154811015610c595760008082815260200190815260200160002060030160009054906101000a900460ff16610c4c57600080828152602001908152602001600020600201544211610c4c576000808281526020019081526020016000206001015482610c499190611214565b91505b8080600101915050610bdb565b5060008111610c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9490611b7d565b60405180910390fd5b60008144610cab9190611bcc565b9050600080600090505b600154811015610d435760008082815260200190815260200160002060030160009054906101000a900460ff16610d3657600080828152602001908152602001600020600201544211610d36576000808281526020019081526020016000206001015482610d239190611214565b915082821115610d3557809450610d43565b5b8080600101915050610cb5565b5050505090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610d7f82610d54565b9050919050565b610d8f81610d74565b8114610d9a57600080fd5b50565b600081359050610dac81610d86565b92915050565b6000819050919050565b610dc581610db2565b8114610dd057600080fd5b50565b600081359050610de281610dbc565b92915050565b600080600060608486031215610e0157610e00610d4a565b5b6000610e0f86828701610d9d565b9350506020610e2086828701610dd3565b9250506040610e3186828701610dd3565b9150509250925092565b60008060408385031215610e5257610e51610d4a565b5b6000610e6085828601610dd3565b9250506020610e7185828601610dd3565b9150509250929050565b610e8481610db2565b82525050565b6000602082019050610e9f6000830184610e7b565b92915050565b600060208284031215610ebb57610eba610d4a565b5b6000610ec984828501610dd3565b91505092915050565b610edb81610d74565b82525050565b60008115159050919050565b610ef681610ee1565b82525050565b6000608082019050610f116000830187610ed2565b610f1e6020830186610e7b565b610f2b6040830185610e7b565b610f386060830184610eed565b95945050505050565b600080fd5b600080fd5b600080fd5b60008083601f840112610f6657610f65610f41565b5b8235905067ffffffffffffffff811115610f8357610f82610f46565b5b602083019150836001820283011115610f9f57610f9e610f4b565b5b9250929050565b60008060008060608587031215610fc057610fbf610d4a565b5b600085013567ffffffffffffffff811115610fde57610fdd610d4f565b5b610fea87828801610f50565b94509450506020610ffd87828801610dd3565b925050604061100e87828801610dd3565b91505092959194509250565b6000806000806060858703121561103457611033610d4a565b5b600061104287828801610d9d565b945050602061105387828801610dd3565b935050604085013567ffffffffffffffff81111561107457611073610d4f565b5b61108087828801610f50565b925092505092959194509250565b600082825260208201905092915050565b7f616363657074417661696c6162696c697479206d757374206f6e6c792062652060008201527f63616c6c65642062792044414f20636f6e747261637400000000000000000000602082015250565b60006110fb60368361108e565b91506111068261109f565b604082019050919050565b6000602082019050818103600083015261112a816110ee565b9050919050565b7f4e6f207374616b652070726f7669646564000000000000000000000000000000600082015250565b600061116760118361108e565b915061117282611131565b602082019050919050565b600060208201905081810360008301526111968161115a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006111d782610db2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036112095761120861119d565b5b600182019050919050565b600061121f82610db2565b915061122a83610db2565b92508282019050808211156112425761124161119d565b5b92915050565b7f576f726b65722063616e206f6e6c7920657874656e64207468656972206f776e60008201527f20617661696c6162696c697479207374616b6500000000000000000000000000602082015250565b60006112a460338361108e565b91506112af82611248565b604082019050919050565b600060208201905081810360008301526112d381611297565b9050919050565b7f5374616b652068617320616c7265616479206265656e2061737369676e65642060008201527f776f726b00000000000000000000000000000000000000000000000000000000602082015250565b600061133660248361108e565b9150611341826112da565b604082019050919050565b6000602082019050818103600083015261136581611329565b9050919050565b7f42617463682073697a6520746f6f206c61726765000000000000000000000000600082015250565b60006113a260148361108e565b91506113ad8261136c565b602082019050919050565b600060208201905081810360008301526113d181611395565b9050919050565b7f426174636820726573756c74206d757374206265207375626d6974746564206260008201527f792063757272656e7420626174636820776f726b657200000000000000000000602082015250565b600061143460368361108e565b915061143f826113d8565b604082019050919050565b6000602082019050818103600083015261146381611427565b9050919050565b82818337600083830152505050565b6000601f19601f8301169050919050565b6000611496838561108e565b93506114a383858461146a565b6114ac83611479565b840190509392505050565b600060029050919050565b600081905092915050565b6000819050919050565b6114e081610db2565b82525050565b60006114f283836114d7565b60208301905092915050565b6000602082019050919050565b611514816114b7565b61151e81846114c2565b9250611529826114cd565b8060005b8381101561155a57815161154187826114e6565b965061154c836114fe565b92505060018101905061152d565b505050505050565b6000819050919050565b6000819050919050565b600061159161158c61158784611562565b61156c565b610db2565b9050919050565b6115a181611576565b82525050565b600082825260208201905092915050565b50565b60006115c86000836115a7565b91506115d3826115b8565b600082019050919050565b60006101408201905081810360008301526115fa818a8c61148a565b90506116096020830189610e7b565b611616604083018861150b565b611623608083018761150b565b61163060c0830186611598565b61163d60e0830185610eed565b61164b610100830184610eed565b81810361012083015261165d816115bb565b90509998505050505050505050565b60008151905061167b81610dbc565b92915050565b60006020828403121561169757611696610d4a565b5b60006116a58482850161166c565b91505092915050565b60006080820190506116c36000830187610e7b565b6116d06020830186610ed2565b6116dd6040830185610e7b565b6116ea6060830184610eed565b95945050505050565b60006116fe82610db2565b915061170983610db2565b92508282039050818111156117215761172061119d565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061176e57607f821691505b60208210810361178157611780611727565b5b50919050565b60008154905061179681611756565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830261182e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826117f1565b61183886836117f1565b95508019841693508086168417925050509392505050565b600061186b61186661186184610db2565b61156c565b610db2565b9050919050565b6000819050919050565b61188583611850565b61189961189182611872565b8484546117fe565b825550505050565b600090565b6118ae6118a1565b6118b981848461187c565b505050565b5b818110156118dd576118d26000826118a6565b6001810190506118bf565b5050565b601f821115611922576118f3816117cc565b6118fc846117e1565b8101602085101561190b578190505b61191f611917856117e1565b8301826118be565b50505b505050565b600082821c905092915050565b600061194560001984600802611927565b1980831691505092915050565b600061195e8383611934565b9150826002028217905092915050565b81810361197c575050611a54565b61198582611787565b67ffffffffffffffff81111561199e5761199d61179d565b5b6119a88254611756565b6119b38282856118e1565b6000601f8311600181146119e257600084156119d0578287015490505b6119da8582611952565b865550611a4d565b601f1984166119f0876117cc565b96506119fb866117cc565b60005b82811015611a23578489015482556001820191506001850194506020810190506119fe565b86831015611a405784890154611a3c601f891682611934565b8355505b6001600288020188555050505b5050505050505b565b600082905092915050565b611a6b8383611a56565b67ffffffffffffffff811115611a8457611a8361179d565b5b611a8e8254611756565b611a998282856118e1565b6000601f831160018114611ac85760008415611ab6578287013590505b611ac08582611952565b865550611b28565b601f198416611ad6866117cc565b60005b82811015611afe57848901358255600182019150602085019450602081019050611ad9565b86831015611b1b5784890135611b17601f891682611934565b8355505b6001600288020188555050505b50505050505050565b7f4e6f20617661696c61626c6520776f726b6572207374616b6573000000000000600082015250565b6000611b67601a8361108e565b9150611b7282611b31565b602082019050919050565b60006020820190508181036000830152611b9681611b5a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611bd782610db2565b9150611be283610db2565b925082611bf257611bf1611b9d565b5b82820690509291505056fea264697066735822122030f2ec404048094849430ab773dd99f12ad2a075efa05bd6af8d0466b56a8de164736f6c63430008180033",
"deployedBytecode": "0x6080604052600436106100555760003560e01c8063216ed6ad1461005a578063b5b20c0014610083578063c4a9e116146100ac578063d5a44f86146100d7578063da553ec214610117578063f85c5a8a14610154575b600080fd5b34801561006657600080fd5b50610081600480360381019061007c9190610de8565b610170565b005b34801561008f57600080fd5b506100aa60048036038101906100a59190610e3b565b610310565b005b3480156100b857600080fd5b506100c1610484565b6040516100ce9190610e8a565b60405180910390f35b3480156100e357600080fd5b506100fe60048036038101906100f99190610ea5565b61048a565b60405161010e9493929190610efc565b60405180910390f35b34801561012357600080fd5b5061013e60048036038101906101399190610fa6565b6104e7565b60405161014b9190610e8a565b60405180910390f35b61016e6004803603810190610169919061101a565b610af5565b005b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101f590611111565b60405180910390fd5b60008211610241576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102389061117d565b60405180910390fd5b600060016000815480929190610256906111cc565b91905055905060008060008381526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083816001018190555082426102ca9190611214565b81600201819055507fa85b1153cd317f9d39e14d8dbfb592ffb46123e9fc61b21b3f70d7d90a81a7e9826040516103019190610e8a565b60405180910390a15050505050565b600080600084815260200190815260200160002090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146103b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103af906112ba565b60405180910390fd5b8060030160009054906101000a900460ff161561040a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104019061134c565b60405180910390fd5b806002015442111561042f5781426104229190611214565b8160020181905550610448565b81816002015461043f9190611214565b81600201819055505b7fa85b1153cd317f9d39e14d8dbfb592ffb46123e9fc61b21b3f70d7d90a81a7e9836040516104779190610e8a565b60405180910390a1505050565b60015481565b60006020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154908060030160009054906101000a900460ff16905084565b600060035483111561052e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610525906113b8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461061557600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610614576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060b9061144a565b60405180910390fd5b5b600080600090505b600354811015610658576002600082815260200190815260200160002060020154826106499190611214565b9150808060010191505061061d565b507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639fbe7c7382888887604051806040016040528060018152602001600381525060405180604001604052806001815260200160028152506064600160006040518a63ffffffff1660e01b81526004016106f09897969594939291906115de565b60206040518083038185885af115801561070e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107339190611681565b915060005b60035481101561082d577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663975762b3846002600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260008681526020019081526020016000206001015460016040518563ffffffff1660e01b81526004016107ee94939291906116ae565b600060405180830381600087803b15801561080857600080fd5b505af115801561081c573d6000803e3d6000fd5b505050508080600101915050610738565b50600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610950577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663975762b383600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660008060055481526020019081526020016000206001015460016040518563ffffffff1660e01b815260040161091d94939291906116ae565b600060405180830381600087803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b505050505b600354841015610a5d5760005b8460035461096b91906116f3565b811015610a43576002600082876109829190611214565b8152602001908152602001600020600260008381526020019081526020016000206000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600182015481600101556002820154816002015560038201816003019081610a32919061196e565b50905050808060010191505061095d565b5083600354610a5291906116f3565b600381905550610a66565b60006003819055505b610a6e610b92565b600581905550600080600554815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050949350505050565b60006002600060036000815480929190610b0e906111cc565b9190505581526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508381600101819055503481600201819055508282826003019182610b8a929190611a61565b505050505050565b6000610b9c610bd5565b90506000806000838152602001908152602001600020905060018160030160006101000a81548160ff0219169083151502179055505090565b60008060005b600154811015610c595760008082815260200190815260200160002060030160009054906101000a900460ff16610c4c57600080828152602001908152602001600020600201544211610c4c576000808281526020019081526020016000206001015482610c499190611214565b91505b8080600101915050610bdb565b5060008111610c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9490611b7d565b60405180910390fd5b60008144610cab9190611bcc565b9050600080600090505b600154811015610d435760008082815260200190815260200160002060030160009054906101000a900460ff16610d3657600080828152602001908152602001600020600201544211610d36576000808281526020019081526020016000206001015482610d239190611214565b915082821115610d3557809450610d43565b5b8080600101915050610cb5565b5050505090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610d7f82610d54565b9050919050565b610d8f81610d74565b8114610d9a57600080fd5b50565b600081359050610dac81610d86565b92915050565b6000819050919050565b610dc581610db2565b8114610dd057600080fd5b50565b600081359050610de281610dbc565b92915050565b600080600060608486031215610e0157610e00610d4a565b5b6000610e0f86828701610d9d565b9350506020610e2086828701610dd3565b9250506040610e3186828701610dd3565b9150509250925092565b60008060408385031215610e5257610e51610d4a565b5b6000610e6085828601610dd3565b9250506020610e7185828601610dd3565b9150509250929050565b610e8481610db2565b82525050565b6000602082019050610e9f6000830184610e7b565b92915050565b600060208284031215610ebb57610eba610d4a565b5b6000610ec984828501610dd3565b91505092915050565b610edb81610d74565b82525050565b60008115159050919050565b610ef681610ee1565b82525050565b6000608082019050610f116000830187610ed2565b610f1e6020830186610e7b565b610f2b6040830185610e7b565b610f386060830184610eed565b95945050505050565b600080fd5b600080fd5b600080fd5b60008083601f840112610f6657610f65610f41565b5b8235905067ffffffffffffffff811115610f8357610f82610f46565b5b602083019150836001820283011115610f9f57610f9e610f4b565b5b9250929050565b60008060008060608587031215610fc057610fbf610d4a565b5b600085013567ffffffffffffffff811115610fde57610fdd610d4f565b5b610fea87828801610f50565b94509450506020610ffd87828801610dd3565b925050604061100e87828801610dd3565b91505092959194509250565b6000806000806060858703121561103457611033610d4a565b5b600061104287828801610d9d565b945050602061105387828801610dd3565b935050604085013567ffffffffffffffff81111561107457611073610d4f565b5b61108087828801610f50565b925092505092959194509250565b600082825260208201905092915050565b7f616363657074417661696c6162696c697479206d757374206f6e6c792062652060008201527f63616c6c65642062792044414f20636f6e747261637400000000000000000000602082015250565b60006110fb60368361108e565b91506111068261109f565b604082019050919050565b6000602082019050818103600083015261112a816110ee565b9050919050565b7f4e6f207374616b652070726f7669646564000000000000000000000000000000600082015250565b600061116760118361108e565b915061117282611131565b602082019050919050565b600060208201905081810360008301526111968161115a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006111d782610db2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036112095761120861119d565b5b600182019050919050565b600061121f82610db2565b915061122a83610db2565b92508282019050808211156112425761124161119d565b5b92915050565b7f576f726b65722063616e206f6e6c7920657874656e64207468656972206f776e60008201527f20617661696c6162696c697479207374616b6500000000000000000000000000602082015250565b60006112a460338361108e565b91506112af82611248565b604082019050919050565b600060208201905081810360008301526112d381611297565b9050919050565b7f5374616b652068617320616c7265616479206265656e2061737369676e65642060008201527f776f726b00000000000000000000000000000000000000000000000000000000602082015250565b600061133660248361108e565b9150611341826112da565b604082019050919050565b6000602082019050818103600083015261136581611329565b9050919050565b7f42617463682073697a6520746f6f206c61726765000000000000000000000000600082015250565b60006113a260148361108e565b91506113ad8261136c565b602082019050919050565b600060208201905081810360008301526113d181611395565b9050919050565b7f426174636820726573756c74206d757374206265207375626d6974746564206260008201527f792063757272656e7420626174636820776f726b657200000000000000000000602082015250565b600061143460368361108e565b915061143f826113d8565b604082019050919050565b6000602082019050818103600083015261146381611427565b9050919050565b82818337600083830152505050565b6000601f19601f8301169050919050565b6000611496838561108e565b93506114a383858461146a565b6114ac83611479565b840190509392505050565b600060029050919050565b600081905092915050565b6000819050919050565b6114e081610db2565b82525050565b60006114f283836114d7565b60208301905092915050565b6000602082019050919050565b611514816114b7565b61151e81846114c2565b9250611529826114cd565b8060005b8381101561155a57815161154187826114e6565b965061154c836114fe565b92505060018101905061152d565b505050505050565b6000819050919050565b6000819050919050565b600061159161158c61158784611562565b61156c565b610db2565b9050919050565b6115a181611576565b82525050565b600082825260208201905092915050565b50565b60006115c86000836115a7565b91506115d3826115b8565b600082019050919050565b60006101408201905081810360008301526115fa818a8c61148a565b90506116096020830189610e7b565b611616604083018861150b565b611623608083018761150b565b61163060c0830186611598565b61163d60e0830185610eed565b61164b610100830184610eed565b81810361012083015261165d816115bb565b90509998505050505050505050565b60008151905061167b81610dbc565b92915050565b60006020828403121561169757611696610d4a565b5b60006116a58482850161166c565b91505092915050565b60006080820190506116c36000830187610e7b565b6116d06020830186610ed2565b6116dd6040830185610e7b565b6116ea6060830184610eed565b95945050505050565b60006116fe82610db2565b915061170983610db2565b92508282039050818111156117215761172061119d565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061176e57607f821691505b60208210810361178157611780611727565b5b50919050565b60008154905061179681611756565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830261182e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826117f1565b61183886836117f1565b95508019841693508086168417925050509392505050565b600061186b61186661186184610db2565b61156c565b610db2565b9050919050565b6000819050919050565b61188583611850565b61189961189182611872565b8484546117fe565b825550505050565b600090565b6118ae6118a1565b6118b981848461187c565b505050565b5b818110156118dd576118d26000826118a6565b6001810190506118bf565b5050565b601f821115611922576118f3816117cc565b6118fc846117e1565b8101602085101561190b578190505b61191f611917856117e1565b8301826118be565b50505b505050565b600082821c905092915050565b600061194560001984600802611927565b1980831691505092915050565b600061195e8383611934565b9150826002028217905092915050565b81810361197c575050611a54565b61198582611787565b67ffffffffffffffff81111561199e5761199d61179d565b5b6119a88254611756565b6119b38282856118e1565b6000601f8311600181146119e257600084156119d0578287015490505b6119da8582611952565b865550611a4d565b601f1984166119f0876117cc565b96506119fb866117cc565b60005b82811015611a23578489015482556001820191506001850194506020810190506119fe565b86831015611a405784890154611a3c601f891682611934565b8355505b6001600288020188555050505b5050505050505b565b600082905092915050565b611a6b8383611a56565b67ffffffffffffffff811115611a8457611a8361179d565b5b611a8e8254611756565b611a998282856118e1565b6000601f831160018114611ac85760008415611ab6578287013590505b611ac08582611952565b865550611b28565b601f198416611ad6866117cc565b60005b82811015611afe57848901358255600182019150602085019450602081019050611ad9565b86831015611b1b5784890135611b17601f891682611934565b8355505b6001600288020188555050505b50505050505050565b7f4e6f20617661696c61626c6520776f726b6572207374616b6573000000000000600082015250565b6000611b67601a8361108e565b9150611b7282611b31565b602082019050919050565b60006020820190508181036000830152611b9681611b5a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611bd782610db2565b9150611be283610db2565b925082611bf257611bf1611b9d565b5b82820690509291505056fea264697066735822122030f2ec404048094849430ab773dd99f12ad2a075efa05bd6af8d0466b56a8de164736f6c63430008180033",
"linkReferences": {},
"deployedLinkReferences": {}
}