@zoralabs/openzeppelin-contracts-upgradeable
Version:
Secure Smart Contract library for Solidity
331 lines (330 loc) • 29.2 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "PaymentSplitterUpgradeable",
"sourceName": "contracts/finance/PaymentSplitterUpgradeable.sol",
"abi": [
{
"inputs": [],
"name": "ADDRESS_CALL_TO_NON_CONTRACT",
"type": "error"
},
{
"inputs": [],
"name": "ADDRESS_INSUFFICIENT_BALANCE",
"type": "error"
},
{
"inputs": [],
"name": "ADDRESS_LOW_LEVEL_CALL_FAILED",
"type": "error"
},
{
"inputs": [],
"name": "ADDRESS_UNABLE_TO_SEND_VALUE",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "contract IERC20Upgradeable",
"name": "token",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "ERC20PaymentReleased",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint8",
"name": "version",
"type": "uint8"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "shares",
"type": "uint256"
}
],
"name": "PayeeAdded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "PaymentReceived",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "PaymentReleased",
"type": "event"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "index",
"type": "uint256"
}
],
"name": "payee",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "releasable",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IERC20Upgradeable",
"name": "token",
"type": "address"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "releasable",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "account",
"type": "address"
}
],
"name": "release",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IERC20Upgradeable",
"name": "token",
"type": "address"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "release",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IERC20Upgradeable",
"name": "token",
"type": "address"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "released",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "released",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "shares",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IERC20Upgradeable",
"name": "token",
"type": "address"
}
],
"name": "totalReleased",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalReleased",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalShares",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"stateMutability": "payable",
"type": "receive"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506115c9806100206000396000f3fe6080604052600436106100c05760003560e01c80639852595c11610074578063ce7c2ac21161004e578063ce7c2ac2146102ba578063d79779b2146102f7578063e33b7de31461033457610107565b80639852595c14610203578063a3f8eace14610240578063c45ac0501461027d57610107565b8063406072a9116100a5578063406072a91461016057806348b750441461019d5780638b83209b146101c657610107565b8063191655871461010c5780633a98ef391461013557610107565b36610107577f6ef95f06320e7a25a04a175ca677b7052bdd97131872c2192525a629f51be7706100ee61035f565b346040516100fd929190610e03565b60405180910390a1005b600080fd5b34801561011857600080fd5b50610133600480360381019061012e9190610e6f565b610367565b005b34801561014157600080fd5b5061014a6104e6565b6040516101579190610e9c565b60405180910390f35b34801561016c57600080fd5b5061018760048036038101906101829190610f21565b6104f0565b6040516101949190610e9c565b60405180910390f35b3480156101a957600080fd5b506101c460048036038101906101bf9190610f21565b610577565b005b3480156101d257600080fd5b506101ed60048036038101906101e89190610f8d565b61078a565b6040516101fa9190610fba565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190610fd5565b6107d2565b6040516102379190610e9c565b60405180910390f35b34801561024c57600080fd5b5061026760048036038101906102629190610fd5565b61081b565b6040516102749190610e9c565b60405180910390f35b34801561028957600080fd5b506102a4600480360381019061029f9190610f21565b61084e565b6040516102b19190610e9c565b60405180910390f35b3480156102c657600080fd5b506102e160048036038101906102dc9190610fd5565b6108fd565b6040516102ee9190610e9c565b60405180910390f35b34801561030357600080fd5b5061031e60048036038101906103199190611002565b610946565b60405161032b9190610e9c565b60405180910390f35b34801561034057600080fd5b5061034961098f565b6040516103569190610e9c565b60405180910390f35b600033905090565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116103e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e0906110b2565b60405180910390fd5b60006103f48261081b565b905060008103610439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043090611144565b60405180910390fd5b806034600082825461044b9190611193565b9250508190555080603660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506104a98282610999565b7fdf20fd1e76bc69d672e4814fafb2c449bba3a5369d8359adf9e05e6fde87b05682826040516104da929190611248565b60405180910390a15050565b6000603354905090565b6000603960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116105f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f0906110b2565b60405180910390fd5b6000610605838361084e565b90506000810361064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064190611144565b60405180910390fd5b80603860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106999190611193565b9250508190555080603960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550610735838383610a7b565b8273ffffffffffffffffffffffffffffffffffffffff167f3be5b7a71e84ed12875d241991c70855ac5817d847039e17a9d895c1ceb0f18a838360405161077d929190610e03565b60405180910390a2505050565b6000603782815481106107a05761079f611271565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000603660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008061082661098f565b476108319190611193565b90506108468382610841866107d2565b610b01565b915050919050565b60008061085a84610946565b8473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016108939190610fba565b602060405180830381865afa1580156108b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d491906112b5565b6108de9190611193565b90506108f483826108ef87876104f0565b610b01565b91505092915050565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000603860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000603454905090565b804711156109d3576040517f9fbd983c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516109f990611313565b60006040518083038185875af1925050503d8060008114610a36576040519150601f19603f3d011682016040523d82523d6000602084013e610a3b565b606091505b5050905080610a76576040517f549b67fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b610afc8363a9059cbb60e01b8484604051602401610a9a929190610e03565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050610b6f565b505050565b600081603354603560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485610b529190611328565b610b5c91906113b1565b610b6691906113e2565b90509392505050565b6000610b9a828473ffffffffffffffffffffffffffffffffffffffff16610bff90919063ffffffff16565b9050600081511115610bfa5780806020019051810190610bba919061144e565b610bf9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf0906114ed565b60405180910390fd5b5b505050565b6060610c0d83836000610c15565b905092915050565b606081471015610c51576040517f9fbd983c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff168486604051610c7a919061157c565b60006040518083038185875af1925050503d8060008114610cb7576040519150601f19603f3d011682016040523d82523d6000602084013e610cbc565b606091505b5091509150610ccc868383610cd7565b925050509392505050565b60608215610d30576000825103610d2857610cf184610d41565b610d27576040517f652f4b6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b819050610d3a565b610d3982610d64565b5b9392505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600081511115610d775780518082602001fd5b6040517fa145193600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610dd482610da9565b9050919050565b610de481610dc9565b82525050565b6000819050919050565b610dfd81610dea565b82525050565b6000604082019050610e186000830185610ddb565b610e256020830184610df4565b9392505050565b600080fd5b6000610e3c82610da9565b9050919050565b610e4c81610e31565b8114610e5757600080fd5b50565b600081359050610e6981610e43565b92915050565b600060208284031215610e8557610e84610e2c565b5b6000610e9384828501610e5a565b91505092915050565b6000602082019050610eb16000830184610df4565b92915050565b6000610ec282610dc9565b9050919050565b610ed281610eb7565b8114610edd57600080fd5b50565b600081359050610eef81610ec9565b92915050565b610efe81610dc9565b8114610f0957600080fd5b50565b600081359050610f1b81610ef5565b92915050565b60008060408385031215610f3857610f37610e2c565b5b6000610f4685828601610ee0565b9250506020610f5785828601610f0c565b9150509250929050565b610f6a81610dea565b8114610f7557600080fd5b50565b600081359050610f8781610f61565b92915050565b600060208284031215610fa357610fa2610e2c565b5b6000610fb184828501610f78565b91505092915050565b6000602082019050610fcf6000830184610ddb565b92915050565b600060208284031215610feb57610fea610e2c565b5b6000610ff984828501610f0c565b91505092915050565b60006020828403121561101857611017610e2c565b5b600061102684828501610ee0565b91505092915050565b600082825260208201905092915050565b7f5061796d656e7453706c69747465723a206163636f756e7420686173206e6f2060008201527f7368617265730000000000000000000000000000000000000000000000000000602082015250565b600061109c60268361102f565b91506110a782611040565b604082019050919050565b600060208201905081810360008301526110cb8161108f565b9050919050565b7f5061796d656e7453706c69747465723a206163636f756e74206973206e6f742060008201527f647565207061796d656e74000000000000000000000000000000000000000000602082015250565b600061112e602b8361102f565b9150611139826110d2565b604082019050919050565b6000602082019050818103600083015261115d81611121565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061119e82610dea565b91506111a983610dea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156111de576111dd611164565b5b828201905092915050565b6000819050919050565b600061120e61120961120484610da9565b6111e9565b610da9565b9050919050565b6000611220826111f3565b9050919050565b600061123282611215565b9050919050565b61124281611227565b82525050565b600060408201905061125d6000830185611239565b61126a6020830184610df4565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815190506112af81610f61565b92915050565b6000602082840312156112cb576112ca610e2c565b5b60006112d9848285016112a0565b91505092915050565b600081905092915050565b50565b60006112fd6000836112e2565b9150611308826112ed565b600082019050919050565b600061131e826112f0565b9150819050919050565b600061133382610dea565b915061133e83610dea565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561137757611376611164565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006113bc82610dea565b91506113c783610dea565b9250826113d7576113d6611382565b5b828204905092915050565b60006113ed82610dea565b91506113f883610dea565b92508282101561140b5761140a611164565b5b828203905092915050565b60008115159050919050565b61142b81611416565b811461143657600080fd5b50565b60008151905061144881611422565b92915050565b60006020828403121561146457611463610e2c565b5b600061147284828501611439565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006114d7602a8361102f565b91506114e28261147b565b604082019050919050565b60006020820190508181036000830152611506816114ca565b9050919050565b600081519050919050565b60005b8381101561153657808201518184015260208101905061151b565b83811115611545576000848401525b50505050565b60006115568261150d565b61156081856112e2565b9350611570818560208601611518565b80840191505092915050565b6000611588828461154b565b91508190509291505056fea264697066735822122054bca315cbb5b5ab218cc19e174a8c4d9424808b8a9e3a09fcb75062366aed3e64736f6c634300080d0033",
"deployedBytecode": "0x6080604052600436106100c05760003560e01c80639852595c11610074578063ce7c2ac21161004e578063ce7c2ac2146102ba578063d79779b2146102f7578063e33b7de31461033457610107565b80639852595c14610203578063a3f8eace14610240578063c45ac0501461027d57610107565b8063406072a9116100a5578063406072a91461016057806348b750441461019d5780638b83209b146101c657610107565b8063191655871461010c5780633a98ef391461013557610107565b36610107577f6ef95f06320e7a25a04a175ca677b7052bdd97131872c2192525a629f51be7706100ee61035f565b346040516100fd929190610e03565b60405180910390a1005b600080fd5b34801561011857600080fd5b50610133600480360381019061012e9190610e6f565b610367565b005b34801561014157600080fd5b5061014a6104e6565b6040516101579190610e9c565b60405180910390f35b34801561016c57600080fd5b5061018760048036038101906101829190610f21565b6104f0565b6040516101949190610e9c565b60405180910390f35b3480156101a957600080fd5b506101c460048036038101906101bf9190610f21565b610577565b005b3480156101d257600080fd5b506101ed60048036038101906101e89190610f8d565b61078a565b6040516101fa9190610fba565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190610fd5565b6107d2565b6040516102379190610e9c565b60405180910390f35b34801561024c57600080fd5b5061026760048036038101906102629190610fd5565b61081b565b6040516102749190610e9c565b60405180910390f35b34801561028957600080fd5b506102a4600480360381019061029f9190610f21565b61084e565b6040516102b19190610e9c565b60405180910390f35b3480156102c657600080fd5b506102e160048036038101906102dc9190610fd5565b6108fd565b6040516102ee9190610e9c565b60405180910390f35b34801561030357600080fd5b5061031e60048036038101906103199190611002565b610946565b60405161032b9190610e9c565b60405180910390f35b34801561034057600080fd5b5061034961098f565b6040516103569190610e9c565b60405180910390f35b600033905090565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116103e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e0906110b2565b60405180910390fd5b60006103f48261081b565b905060008103610439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043090611144565b60405180910390fd5b806034600082825461044b9190611193565b9250508190555080603660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506104a98282610999565b7fdf20fd1e76bc69d672e4814fafb2c449bba3a5369d8359adf9e05e6fde87b05682826040516104da929190611248565b60405180910390a15050565b6000603354905090565b6000603960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054116105f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f0906110b2565b60405180910390fd5b6000610605838361084e565b90506000810361064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064190611144565b60405180910390fd5b80603860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106999190611193565b9250508190555080603960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550610735838383610a7b565b8273ffffffffffffffffffffffffffffffffffffffff167f3be5b7a71e84ed12875d241991c70855ac5817d847039e17a9d895c1ceb0f18a838360405161077d929190610e03565b60405180910390a2505050565b6000603782815481106107a05761079f611271565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000603660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008061082661098f565b476108319190611193565b90506108468382610841866107d2565b610b01565b915050919050565b60008061085a84610946565b8473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016108939190610fba565b602060405180830381865afa1580156108b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d491906112b5565b6108de9190611193565b90506108f483826108ef87876104f0565b610b01565b91505092915050565b6000603560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000603860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000603454905090565b804711156109d3576040517f9fbd983c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff16826040516109f990611313565b60006040518083038185875af1925050503d8060008114610a36576040519150601f19603f3d011682016040523d82523d6000602084013e610a3b565b606091505b5050905080610a76576040517f549b67fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b610afc8363a9059cbb60e01b8484604051602401610a9a929190610e03565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050610b6f565b505050565b600081603354603560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485610b529190611328565b610b5c91906113b1565b610b6691906113e2565b90509392505050565b6000610b9a828473ffffffffffffffffffffffffffffffffffffffff16610bff90919063ffffffff16565b9050600081511115610bfa5780806020019051810190610bba919061144e565b610bf9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf0906114ed565b60405180910390fd5b5b505050565b6060610c0d83836000610c15565b905092915050565b606081471015610c51576040517f9fbd983c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000808573ffffffffffffffffffffffffffffffffffffffff168486604051610c7a919061157c565b60006040518083038185875af1925050503d8060008114610cb7576040519150601f19603f3d011682016040523d82523d6000602084013e610cbc565b606091505b5091509150610ccc868383610cd7565b925050509392505050565b60608215610d30576000825103610d2857610cf184610d41565b610d27576040517f652f4b6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b819050610d3a565b610d3982610d64565b5b9392505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600081511115610d775780518082602001fd5b6040517fa145193600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610dd482610da9565b9050919050565b610de481610dc9565b82525050565b6000819050919050565b610dfd81610dea565b82525050565b6000604082019050610e186000830185610ddb565b610e256020830184610df4565b9392505050565b600080fd5b6000610e3c82610da9565b9050919050565b610e4c81610e31565b8114610e5757600080fd5b50565b600081359050610e6981610e43565b92915050565b600060208284031215610e8557610e84610e2c565b5b6000610e9384828501610e5a565b91505092915050565b6000602082019050610eb16000830184610df4565b92915050565b6000610ec282610dc9565b9050919050565b610ed281610eb7565b8114610edd57600080fd5b50565b600081359050610eef81610ec9565b92915050565b610efe81610dc9565b8114610f0957600080fd5b50565b600081359050610f1b81610ef5565b92915050565b60008060408385031215610f3857610f37610e2c565b5b6000610f4685828601610ee0565b9250506020610f5785828601610f0c565b9150509250929050565b610f6a81610dea565b8114610f7557600080fd5b50565b600081359050610f8781610f61565b92915050565b600060208284031215610fa357610fa2610e2c565b5b6000610fb184828501610f78565b91505092915050565b6000602082019050610fcf6000830184610ddb565b92915050565b600060208284031215610feb57610fea610e2c565b5b6000610ff984828501610f0c565b91505092915050565b60006020828403121561101857611017610e2c565b5b600061102684828501610ee0565b91505092915050565b600082825260208201905092915050565b7f5061796d656e7453706c69747465723a206163636f756e7420686173206e6f2060008201527f7368617265730000000000000000000000000000000000000000000000000000602082015250565b600061109c60268361102f565b91506110a782611040565b604082019050919050565b600060208201905081810360008301526110cb8161108f565b9050919050565b7f5061796d656e7453706c69747465723a206163636f756e74206973206e6f742060008201527f647565207061796d656e74000000000000000000000000000000000000000000602082015250565b600061112e602b8361102f565b9150611139826110d2565b604082019050919050565b6000602082019050818103600083015261115d81611121565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061119e82610dea565b91506111a983610dea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156111de576111dd611164565b5b828201905092915050565b6000819050919050565b600061120e61120961120484610da9565b6111e9565b610da9565b9050919050565b6000611220826111f3565b9050919050565b600061123282611215565b9050919050565b61124281611227565b82525050565b600060408201905061125d6000830185611239565b61126a6020830184610df4565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815190506112af81610f61565b92915050565b6000602082840312156112cb576112ca610e2c565b5b60006112d9848285016112a0565b91505092915050565b600081905092915050565b50565b60006112fd6000836112e2565b9150611308826112ed565b600082019050919050565b600061131e826112f0565b9150819050919050565b600061133382610dea565b915061133e83610dea565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561137757611376611164565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006113bc82610dea565b91506113c783610dea565b9250826113d7576113d6611382565b5b828204905092915050565b60006113ed82610dea565b91506113f883610dea565b92508282101561140b5761140a611164565b5b828203905092915050565b60008115159050919050565b61142b81611416565b811461143657600080fd5b50565b60008151905061144881611422565b92915050565b60006020828403121561146457611463610e2c565b5b600061147284828501611439565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006114d7602a8361102f565b91506114e28261147b565b604082019050919050565b60006020820190508181036000830152611506816114ca565b9050919050565b600081519050919050565b60005b8381101561153657808201518184015260208101905061151b565b83811115611545576000848401525b50505050565b60006115568261150d565b61156081856112e2565b9350611570818560208601611518565b80840191505092915050565b6000611588828461154b565b91508190509291505056fea264697066735822122054bca315cbb5b5ab218cc19e174a8c4d9424808b8a9e3a09fcb75062366aed3e64736f6c634300080d0033",
"linkReferences": {},
"deployedLinkReferences": {}
}