[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AllowanceOverflow", "type": "error" }, { "inputs": [], "name": "AllowanceUnderflow", "type": "error" }, { "inputs": [], "name": "InsufficientAllowance", "type": "error" }, { "inputs": [], "name": "InsufficientBalance", "type": "error" }, { "inputs": [], "name": "InsufficientInterest", "type": "error" }, { "inputs": [], "name": "InvalidAddress", "type": "error" }, { "inputs": [], "name": "InvalidAmount", "type": "error" }, { "inputs": [], "name": "InvalidInitialization", "type": "error" }, { "inputs": [], "name": "InvalidPermit", "type": "error" }, { "inputs": [], "name": "NotInitializing", "type": "error" }, { "inputs": [], "name": "PermitExpired", "type": "error" }, { "inputs": [], "name": "Reentrancy", "type": "error" }, { "inputs": [], "name": "TotalSupplyOverflow", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "msgSender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "rewards", "type": "uint256" } ], "name": "ClaimRewards", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "msgSender", "type": "address" }, { "indexed": true, "internalType": "bytes32", "name": "memo", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Deposit", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint64", "name": "version", "type": "uint64" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "msgSender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "interest", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "rewards", "type": "uint256" } ], "name": "Mine", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "msgSender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Withdraw", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "result", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewards", "outputs": [ { "internalType": "uint256", "name": "rewards", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "memo", "type": "string" } ], "name": "deposit", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_rewardToken", "type": "address" }, { "internalType": "address", "name": "_rewardsDistributor", "type": "address" }, { "internalType": "address", "name": "_rewardsStore", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "mine", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rewardsDistributor", "outputs": [ { "internalType": "contract IRewardsDistributor", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rewardsStore", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
6080806040523460855763409feecd19805490600182166078576001600160401b039160011c6002600160401b031901603f575b61291a838161008a8239f35b6002600160411b03905560209081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29080a15f806033565b63f92ee8a95f526004601cfd5b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f803560e01c806306fdde0314611ea8578063095ea7b314611e1f57806318160ddd14611ddc57806323b872dd14611b235780632e1a7d4d146116f2578063313ce567146116b95780633644e51514611613578063372500ab146114a15780633f2a55401461145057806370a08231146114005780637ecebe00146113b057806395d89b411461129557806399f4b25114611236578063a26e118614610e72578063a9059cbb14610bf7578063b855150d14610ba5578063c0c53b8b1461038d578063d505accf146101b2578063dd62ed3e146101555763f7c618c114610101575061000e565b3461015257807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015257602073ffffffffffffffffffffffffffffffffffffffff60035416604051908152f35b80fd5b50346101525760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101525761018d611f29565b90610196611f4c565b602052637f5e9f20600c525260206034600c2054604051908152f35b50346101525760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610152576101ea611f29565b906101f3611f4c565b9160443592606435936084359260ff8416840361038957610212612031565b9182516020809401209187421161037c576040519073ffffffffffffffffffffffffffffffffffffffff80911695169565383775081901600e5285885260c085600c209283549a7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82528782019687528b60408301977fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc689528b6060850199468b528c608087019330855260a08820602e527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9885252528789525260a082015220604e526042602c20885260ff16845260a43560405260c435606052838060808960015afa853d510361036f577f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259596979801905585777f5e9f200000000000000000000000000000000000000000176040526034602c2055a380f35b63ddafbaef88526004601cfd5b631a15a3cc87526004601cfd5b8480fd5b50346101525760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610152576103c5611f29565b6103cd611f4c565b9073ffffffffffffffffffffffffffffffffffffffff6044358181168103610ba1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011329384548060038755610b78575b5082841615610b4e5782811615610b4e5782821615610b4e5760405161044281611fd4565b601181527f42727269746f204d696e65722d4554482f0000000000000000000000000000006020820152604051907f06fdde030000000000000000000000000000000000000000000000000000000082528782600481888a165afa9081156109d3576104b59289926109af575b506121ae565b80519067ffffffffffffffff82116109825781906104d38954611f6f565b601f8111610aa4575b50602090601f83116001146109e95789926109de575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161786555b60405161053081611fd4565b600d81527f6272724d494e45522d4554482f000000000000000000000000000000000000006020820152604051907f95d89b410000000000000000000000000000000000000000000000000000000082528782600481888a165afa9081156109d3576105a29289926109af57506121ae565b80519067ffffffffffffffff82116109825781906105c1600154611f6f565b601f81116108da575b50602090601f831160011461081d578992610812575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c1916176001555b60405190602082017f420000000000000000000000000000000000000600000000000000000000000081527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008660601b16603484015260288352606083019280841067ffffffffffffffff8511176107e5578593604052519020600255817fffffffffffffffffffffffff00000000000000000000000000000000000000009516856003541617600355168360045416176004551690600554161760055573e88483b5901fa3537355c4324ccf92a8d41552606014527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff806034526f095ea7b300000000000000000000000090815f5260205f60446010827342000000000000000000000000000000000000065af13d1560015f51141716156107d85773edb5625634c5bee920a1054712fdb8f6ae53218e6014526034525f5260205f604460108273d729a94d6366a4feac4a6869c8b3573cee4701a95af13d1560015f51141716156107d857805f6034526107a7575080f35b6002905560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a180f35b633e3f8f735f526004601cfd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b015190505f806105e0565b60018a527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168a5b8181106108c2575090846001959493921061088b575b505050811b01600155610613565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690555f808061087d565b92936020600181928786015181550195019301610867565b90915060018952601f830160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6016020841061095b575b908392915b601f820160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601811061094d57506105ca565b8a8155849350600101610918565b507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6610913565b6024887f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b6109cc9192503d808b833e6109c48183611ff0565b81019061214b565b905f6104af565b6040513d8a823e3d90fd5b015190505f806104f2565b8980527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168a5b818110610a8c5750908460019594939210610a55575b505050811b018655610524565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690555f8080610a48565b92936020600181928786015181550195019301610a32565b909150888052601f830160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563019060208410610b26575b90601f8493920160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56301905b818110610b1857506104dc565b8a8155849350600101610b0b565b7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5639150610add565b60046040517fe6c4247b000000000000000000000000000000000000000000000000000000008152fd5b600181819793971c14303b1015610b945760ff1b1b935f61041d565b63f92ee8a987526004601cfd5b5f80fd5b503461015257807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015257602073ffffffffffffffffffffffffffffffffffffffff60055416604051908152f35b50346101525760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015257610c2f611f29565b6024359033610d4757600480546040517fb9be44ac000000000000000000000000000000000000000000000000000000008152309281019290925273ffffffffffffffffffffffffffffffffffffffff8381166024840152602091839160449183918991165af18015610d3c57610d11575b505b6387a211a2600c5233835260209283600c208054808511610d045784900390555281600c208181540190558152600c5160601c337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8380a360405160018152f35b63f4d678b883526004601cfd5b602090813d8311610d35575b610d278183611ff0565b81010312610ba1575f610ca1565b503d610d1d565b6040513d86823e3d90fd5b73ffffffffffffffffffffffffffffffffffffffff8382821680610dec575050600480546040517fb9be44ac00000000000000000000000000000000000000000000000000000000815230928101929092523360248301529091602091839160449183918991165af18015610d3c57610dc1575b50610ca3565b602090813d8311610de5575b610dd78183611ff0565b81010312610ba1575f610dbb565b503d610dcd565b6064604092936004541691835194859384927fcc6bc10100000000000000000000000000000000000000000000000000000000845230600485015233602485015260448401525af18015610d3c57610e445750610ca3565b610e659060403d604011610e6b575b610e5d8183611ff0565b8101906121eb565b50610dbb565b503d610e53565b506020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15767ffffffffffffffff90600435828111610ba15736602382011215610ba1578060040135928311610ba1573660248483010111610ba15768929eee149b4bd2126892308454146112295730845564e8d4a5100034106111ff57734200000000000000000000000000000000000006803b15610ba1576040517fd0e30db00000000000000000000000000000000000000000000000000000000081525f8160048134865af180156111f4576111e1575b508590610f58612201565b5050803b156111dd578180916024604051809481937f2e1a7d4d0000000000000000000000000000000000000000000000000000000083523460048401525af180156111d2576111be575b50506040517f47e7ef240000000000000000000000000000000000000000000000000000000081523060048201526001602482015283816044813473d729a94d6366a4feac4a6869c8b3573cee4701a95af190811561118a578491611195575b5050600480546040517fb9be44ac00000000000000000000000000000000000000000000000000000000815230928101929092523360248301528490829060449082908a9073ffffffffffffffffffffffffffffffffffffffff165af190811561118a578491611161575b50506805345cdf77eb68f44c805490348201918210611154579184918793556387a211a2600c5233835281600c20348154019055348252600c5160601c837fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8480a38060246110dc82612111565b956110ea6040519788611ff0565b828752018386013783010152601f807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8351011091015102907f19dacbf83c5de6658e14cbf7bcae5c15eca2eedecf1c66fbca928e4d351bea0f604051913483523392a338905580f35b63e5cfe95787526004601cfd5b813d8311611183575b6111748183611ff0565b81010312610ba157825f61106e565b503d61116a565b6040513d88823e3d90fd5b813d83116111b7575b6111a88183611ff0565b81010312610ba157825f611003565b503d61119e565b6111c790611fc0565b61038957845f610fa3565b6040513d84823e3d90fd5b5080fd5b6111ec919650611fc0565b5f945f610f4d565b6040513d5f823e3d90fd5b60046040517f2c5211c6000000000000000000000000000000000000000000000000000000008152fd5b63ab143c065f526004601cfd5b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15768929eee149b4bd212683081541461122957604090308155611284612201565b909138905582519182526020820152f35b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba1576040515f600180546112d481611f6f565b8085529160209160018116908115611368575060011461130f575b61130b856112ff81870382611ff0565b60405191829182611ee1565b0390f35b60015f90815293507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b838510611355575050505081016020016112ff8261130b6112ef565b8054868601840152938201938101611339565b86955061130b969350602092506112ff9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010192936112ef565b34610ba15760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba1576113e7611f29565b6338377508600c525f52602080600c2054604051908152f35b34610ba15760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157611437611f29565b6387a211a2600c525f52602080600c2054604051908152f35b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157602073ffffffffffffffffffffffffffffffffffffffff60045416604051908152f35b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15768929eee149b4bd2126830815414611229573081556114ec612201565b505073ffffffffffffffffffffffffffffffffffffffff6004541690604051907f7fb5ad380000000000000000000000000000000000000000000000000000000082523360048301526020928383602481845afa9283156111f4575f936115e4575b508261158c575b506040518281527f1f89f96333d3133000ee447473151fa9606543368f02271c9d95ae14f13bcc67843392a2389055604051908152f35b803b15610ba1575f80916024604051809481937fef5cfb8c0000000000000000000000000000000000000000000000000000000083523360048401525af180156111f45715611555576115de90611fc0565b83611555565b9092508381813d831161160c575b6115fc8183611ff0565b81010312610ba15751918461154e565b503d6115f2565b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157602060a061164d612031565b828151910120604051907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8252838201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6604082015246606082015230608082015220604051908152f35b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157602060405160128152f35b34610ba1576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15760043568929eee149b4bd2126891308354146112295730835564e8d4a5100082106111ff5761174f612201565b505033611a8a575f8173ffffffffffffffffffffffffffffffffffffffff600454166044604051809481937fb9be44ac0000000000000000000000000000000000000000000000000000000083523060048401528160248401525af19081156111f4578291611a61575b50505b6387a211a2600c52335f5280600c208054808411611a545783900390556805345cdf77eb68f44c828154039055815f525f337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8383a36040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273d729a94d6366a4feac4a6869c8b3573cee4701a9908281602481855afa9081156111f4575f91611a27575b50604051907fd878016100000000000000000000000000000000000000000000000000000000825260048201523060248201526001604482015282816064815f73edb5625634c5bee920a1054712fdb8f6ae53218e5af19081156111f45783916119fe575b505047838103918183116119d15784849203611958575b50505081471061194b575f3881808533620186a0f115611931575b7f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364906040519283523392a2389055005b335f526073600b5360ff81536016600b83f0611901573838fd5b63b12d13eb5f526004601cfd5b6044604051809481937f47e7ef24000000000000000000000000000000000000000000000000000000008352306004840152600160248401525af19081156111f45782916119a8575b81906118e6565b813d83116119ca575b6119bb8183611ff0565b81010312610ba15780846119a1565b503d6119b1565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b813d8311611a20575b611a118183611ff0565b81010312610ba15781856118cf565b503d611a07565b90508281813d8311611a4d575b611a3e8183611ff0565b81010312610ba157518561186a565b503d611a34565b63f4d678b85f526004601cfd5b813d8311611a83575b611a748183611ff0565b81010312610ba15780846117b9565b503d611a6a565b600480546040517fb9be44ac00000000000000000000000000000000000000000000000000000000815230928101929092523360248301528290829060449082905f9073ffffffffffffffffffffffffffffffffffffffff165af19081156111f4578291611afa575b50506117bc565b813d8311611b1c575b611b0d8183611ff0565b81010312610ba1578084611af3565b503d611b03565b34610ba15760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157611b5a611f29565b611b62611f4c565b9073ffffffffffffffffffffffffffffffffffffffff808216916044359183611cc157600480546040517fb9be44ac000000000000000000000000000000000000000000000000000000008152309281019290925273ffffffffffffffffffffffffffffffffffffffff871660248301529091602091839160449183915f91165af180156111f457611c96575b505b60601b90602093338552600c92637f5e9f2081178452603484209081549160018301611c72575b506387a211a2178452508483208054808411611a545783900390555f5283822081815401905583525160601c907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8380a360405160018152f35b828511611c8957846387a211a29303905587611c18565b6313be252b5f526004601cfd5b602090813d8311611cba575b611cac8183611ff0565b81010312610ba15784611bef565b503d611ca2565b84811680611d655750600480546040517fb9be44ac000000000000000000000000000000000000000000000000000000008152309281019290925273ffffffffffffffffffffffffffffffffffffffff841660248301529091602091839160449183915f91165af180156111f457611d3a575b50611bf1565b602090813d8311611d5e575b611d508183611ff0565b81010312610ba15784611d34565b503d611d46565b60409060645f936004541691835194859384927fcc6bc1010000000000000000000000000000000000000000000000000000000084523060048501528a602485015260448401525af180156111f457611dbe5750611bf1565b611dd69060403d604011610e6b57610e5d8183611ff0565b50611d34565b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15760206805345cdf77eb68f44c54604051908152f35b34610ba15760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba157611e56611f29565b60243590602052637f5e9f20600c52335f52806034600c20555f52602c5160601c337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa3602060405160018152f35b34610ba1575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610ba15761130b6112ff612031565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602060409481855280519182918282880152018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203610ba157565b6024359073ffffffffffffffffffffffffffffffffffffffff82168203610ba157565b90600182811c92168015611fb6575b6020831014611f8957565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611f7e565b67ffffffffffffffff81116107e557604052565b6040810190811067ffffffffffffffff8211176107e557604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176107e557604052565b604051905f825f549161204383611f6f565b808352926020906001908181169081156120ce5750600114612070575b505061206e92500383611ff0565b565b9150925f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563935f925b8284106120b6575061206e9450505081016020015f80612060565b8554888501830152948501948794509281019261209b565b90506020935061206e9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f80612060565b67ffffffffffffffff81116107e557601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b602081830312610ba15780519067ffffffffffffffff8211610ba1570181601f82011215610ba15780519061217f82612111565b9261218d6040519485611ff0565b82845260208383010111610ba157815f9260208093018386015e8301015290565b919061206e9060405180946020928382819351918291018486015e8301908282015f8152815193849201905e015f83820152038085520183611ff0565b9190826040910312610ba1576020825192015190565b5f905f905f6805345cdf77eb68f44c5480156128da5773d729a94d6366a4feac4a6869c8b3573cee4701a991823b15610ba1576040918251917f4641257d0000000000000000000000000000000000000000000000000000000083526004925f818581838a5af180156128d0576128bf575b508351927f70a08231000000000000000000000000000000000000000000000000000000008452308185015260209560249387868681855afa9586156128b5578496612886575b508651957f07a2d13a000000000000000000000000000000000000000000000000000000008752808488015288878781865afa96871561287c57859761284d575b508751967f46bf654d00000000000000000000000000000000000000000000000000000000885273628ff693426583d9a7fb391e54366292f509d457858901528688015260449689818981737ea675e183e753d9e5f2b833b9c014727a4ca57a5afa908115612843578691612816575b5082106123ab575b5050505050505080847f4cd36fb76975ab408e67b9ff3c17b4dd03112963aed18ccd8907a0c8b77daec29251938785528401523392a2565b909192949993959a508651907fd878016100000000000000000000000000000000000000000000000000000000825285820152308a820152818b82015287816064818973edb5625634c5bee920a1054712fdb8f6ae53218e5af180156127b5578a89928d926127e8575b5060019293895195869485937f47e7ef24000000000000000000000000000000000000000000000000000000008552308b8601528401525af180156126d3579086916127bf575b50504797734200000000000000000000000000000000000006803b156103895785517fd0e30db0000000000000000000000000000000000000000000000000000000008152858186818e865af180156127b5579086916127a1575b50506002548651907ff73eb4bc000000000000000000000000000000000000000000000000000000008252858201528a8a82015273e88483b5901fa3537355c4324ccf92a8d41552609087818581855afa9485156127975787918896612776575b5085156126dd57509088929173ffffffffffffffffffffffffffffffffffffffff9586600354168a519d8e957f6a33d28e0000000000000000000000000000000000000000000000000000000087528a8701528501528d86850152606484015260848301528660a483015281875a9260c493f19788156126d35784986126a4575b508386916010828b86600354169087600554166014526034526fa9059cbb00000000000000000000000082525af13d156001855114171615612698576034839052815484517fb9be44ac00000000000000000000000000000000000000000000000000000000815230938101938452336020850152939286928592169082908590829060400103925af190811561268d5750908391612664575b50507f4cd36fb76975ab408e67b9ff3c17b4dd03112963aed18ccd8907a0c8b77daec2905b905f8080808080612373565b813d8311612686575b6126778183611ff0565b81010312610ba157815f612633565b503d61266d565b8351903d90823e3d90fd5b506390b8ec188252601cfd5b9097508581813d83116126cc575b6126bc8183611ff0565b81010312610ba157519683612599565b503d6126b2565b85513d86823e3d90fd5b9a94505050809391503b15612772578391899183875195869485937f2e1a7d4d0000000000000000000000000000000000000000000000000000000085528401525af1801561276857612754575b50507f4cd36fb76975ab408e67b9ff3c17b4dd03112963aed18ccd8907a0c8b77daec290612658565b61275e8291611fc0565b610152578061272b565b83513d84823e3d90fd5b8380fd5b9095506127909150883d8a11610e6b57610e5d8183611ff0565b945f612518565b88513d89823e3d90fd5b6127aa90611fc0565b61038957845f6124b7565b87513d88823e3d90fd5b813d83116127e1575b6127d28183611ff0565b81010312610ba157845f61245c565b503d6127c8565b915050813d831161280f575b6127fe8183611ff0565b81010312610ba157868a8a5f612415565b503d6127f4565b90508981813d831161283c575b61282d8183611ff0565b81010312610ba157515f61236b565b503d612823565b89513d88823e3d90fd5b9096508881813d8311612875575b6128658183611ff0565b81010312610ba15751955f6122fb565b503d61285b565b88513d87823e3d90fd5b9095508781813d83116128ae575b61289e8183611ff0565b81010312610ba15751945f6122ba565b503d612894565b87513d86823e3d90fd5b6128c99150611fc0565b5f80612273565b85513d5f823e3d90fd5b505f93508392505056fea26469706673582212201d48b6e0bc25c6ae523b93b5aa666e0e829fc3e280b3e3264a33c89a89fc121664736f6c63430008190033