ETH Price: $3,319.21 (-1.58%)

Token

Nugs Token (NUGS)
 

Overview

Max Total Supply

96,072,632.426308598282643182 NUGS

Holders

447

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,209,092.54332849842256434 NUGS

Value
$0.00
0xebed77870450d925a7f09c3c517e785d020bd504
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
NugsToken

Compiler Version
v0.5.10+commit.5a6ea5b1

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/**
*Submitted for verification at Etherscan.io on 2020-08-09
*/
// File: contracts/commons/Ownable.sol
pragma solidity =0.5.10;
contract Ownable {
address public owner;
event TransferOwnership(address _from, address _to);
constructor() public {
owner = msg.sender;
emit TransferOwnership(address(0), msg.sender);
}
modifier onlyOwner() {
require(msg.sender == owner, "only owner");
_;
}
function setOwner(address _owner) external onlyOwner {
emit TransferOwnership(owner, _owner);
owner = _owner;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferWithFee","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_i","type":"uint256"}],"name":"heapEntry","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelistTo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"init","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setPauseMover","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lastWinnerPeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelistFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"inited","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"heapTop","outputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DEFAULT_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"isTopHolder","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"doLottery","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_blacklisted","type":"bool"}],"name":"setBlacklistedLottery","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_fee","type":"uint256"}],"name":"setFromAddressFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"topSize","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"fromAddressFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"},{"name":"_cat","type":"uint256"}],"name":"getNonce","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFromWithFee","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"toAddressFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"heap","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_whitelisted","type":"bool"}],"name":"setWhitelistedTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"heapIndex","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"CALLER_REWARD_FEE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blacklistLottery","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_fee","type":"uint256"}],"name":"setToAddressFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"periodSeconds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"periodOffset","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"heapSize","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_whitelisted","type":"bool"}],"name":"setWhitelistedFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_addr","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Winner","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_addr","type":"address"},{"indexed":false,"name":"_whitelisted","type":"bool"}],"name":"SetWhitelistedFrom","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_addr","type":"address"},{"indexed":false,"name":"_whitelisted","type":"bool"}],"name":"SetWhitelistedTo","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_addr","type":"address"},{"indexed":false,"name":"_whitelisted","type":"bool"}],"name":"SetBlacklistedLottery","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_addr","type":"address"},{"indexed":false,"name":"_fee","type":"uint256"}],"name":"SetFromAddressFee","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_addr","type":"address"},{"indexed":false,"name":"_fee","type":"uint256"}],"name":"SetToAddressFee","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_from","type":"address"},{"indexed":false,"name":"_to","type":"address"}],"name":"TransferOwnership","type":"event"}]

60806040526b015b6a759f4835dc240000006002556201518060035562011df06004556001600a60006101000a81548160ff021916908315150217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c600033604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16158cc806101246000396000f3fe60806040523480156200001157600080fd5b5060043610620002985760003560e01c80636a266e471162000165578063a486309d11620000d5578063dd62ed3e1162000093578063dd62ed3e1462000d9c578063f1f38deb1462000e17578063f4514fa31462000e68578063f855d3381462000e88578063fa7e8dc71462000ea8578063ff12bbf41462000ec85762000298565b8063a486309d1462000c06578063a9059cbb1462000c59578063b00cf0491462000cc2578063c56c36871462000d1d578063cf7249991462000d3d5762000298565b806389f35468116200012357806389f354681462000a025780638da5cb5b1462000a8b5780639192e6bf1462000ad757806395d89b411462000b32578063a12ab7701462000bba5762000298565b80636a266e47146200087657806370a0823114620008c75780637c32cdd114620009225780637e17a3f4146200094257806389535803146200099d5762000298565b806332cf46e6116200020d5780634849f5c811620001cb5780634849f5c814620007215780634fcc1def1462000774578063514e89771462000794578063583fa3a814620007f35780635a488d0714620007ff5780635c975abb14620008525762000298565b806332cf46e6146200062b5780633f4ba83a146200067257806341b87b27146200067e57806343684b21146200069e57806343c885ba14620006fd5762000298565b806316b627d1116200025b57806316b627d114620004b657806318160ddd146200051557806319ab453c146200053557806323b872dd146200057c578063313ce56714620006055762000298565b806306fdde03146200029d57806308acece2146200032557806308eaae4d146200038e578063095ea7b3146200040657806313af4035146200046f575b600080fd5b620002a762000f1b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015620002e9578082015181840152602081019050620002cc565b50505050905090810190601f168015620003175780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b62000374600480360360408110156200033d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062000f54565b604051808215151515815260200191505060405180910390f35b620003bd60048036036020811015620003a657600080fd5b810190808035906020019092919050505062000f70565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b62000455600480360360408110156200041e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001036565b604051808215151515815260200191505060405180910390f35b620004b4600480360360208110156200048757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620010b4565b005b620004fb60048036036020811015620004ce57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001272565b604051808215151515815260200191505060405180910390f35b6200051f62001292565b6040518082815260200191505060405180910390f35b6200057a600480360360208110156200054d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001298565b005b620005eb600480360360608110156200059457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001419565b604051808215151515815260200191505060405180910390f35b6200060f62001436565b604051808260ff1660ff16815260200191505060405180910390f35b62000670600480360360208110156200064357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200143b565b005b6200067c6200159b565b005b62000688620016d4565b6040518082815260200191505060405180910390f35b620006e360048036036020811015620006b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620016da565b604051808215151515815260200191505060405180910390f35b62000707620016fa565b604051808215151515815260200191505060405180910390f35b6200072b6200170d565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6200077e620017c7565b6040518082815260200191505060405180910390f35b620007d960048036036020811015620007ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620017cc565b604051808215151515815260200191505060405180910390f35b620007fd620017e0565b005b62000850600480360360408110156200081757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505062001a2f565b005b6200085c62001c88565b604051808215151515815260200191505060405180910390f35b620008c5600480360360408110156200088e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001c9b565b005b6200090c60048036036020811015620008df57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001e11565b6040518082815260200191505060405180910390f35b6200092c62001e25565b6040518082815260200191505060405180910390f35b62000987600480360360208110156200095a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001ed2565b6040518082815260200191505060405180910390f35b620009ec60048036036040811015620009b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001eea565b6040518082815260200191505060405180910390f35b62000a716004803603606081101562000a1a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001f00565b604051808215151515815260200191505060405180910390f35b62000a9562001f1d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000b1c6004803603602081101562000aef57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001f42565b6040518082815260200191505060405180910390f35b62000b3c62001f5a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101562000b7e57808201518184015260208101905062000b61565b50505050905090810190601f16801562000bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b62000bc462001f93565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000c576004803603604081101562000c1e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505062001fb9565b005b62000ca86004803603604081101562000c7157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062002146565b604051808215151515815260200191505060405180910390f35b62000d076004803603602081101562000cda57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062002162565b6040518082815260200191505060405180910390f35b62000d2762002248565b6040518082815260200191505060405180910390f35b62000d826004803603602081101562000d5557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200224d565b604051808215151515815260200191505060405180910390f35b62000e016004803603604081101562000db457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200226d565b6040518082815260200191505060405180910390f35b62000e666004803603604081101562000e2f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062002283565b005b62000e72620023f9565b6040518082815260200191505060405180910390f35b62000e92620023ff565b6040518082815260200191505060405180910390f35b62000eb262002405565b6040518082815260200191505060405180910390f35b62000f196004803603604081101562000ee057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050620024b2565b005b6040518060400160405280600a81526020017f4e75677320546f6b656e0000000000000000000000000000000000000000000081525081565b600062000f663333858560016200263f565b6001905092915050565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e2095c07846040518263ffffffff1660e01b815260040180828152602001915050604080518083038186803b15801562000fe657600080fd5b505afa15801562000ffb573d6000803e3d6000fd5b505050506040513d60408110156200101257600080fd5b81019080805190602001909291908051906020019092919050505091509150915091565b60008273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3620010aa33848462002e13565b6001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001177576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60086020528060005260406000206000915054906101000a900460ff1681565b60025481565b600a60159054906101000a900460ff1615620012b057fe5b6001600a60156101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff16600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200132457fe5b604051620013329062004170565b604051809103906000f0801580156200134f573d6000803e3d6000fd5b50600a60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6002546040518082815260200191505060405180910390a3620014068160025462002eb9565b620014106200309f565b600b8190555050565b60006200142b3385858560006200263f565b600190509392505050565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480620014e45750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b62001557576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6f6e6c79206f776e6572206f722070617573657200000000000000000000000081525060200191505060405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480620016445750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b620016b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6f6e6c79206f776e6572206f722070617573657200000000000000000000000081525060200191505060405180910390fd5b6000600a60006101000a81548160ff021916908315150217905550565b600b5481565b60076020528060005260406000206000915054906101000a900460ff1681565b600a60159054906101000a900460ff1681565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe6dcdba6040518163ffffffff1660e01b8152600401604080518083038186803b1580156200177857600080fd5b505afa1580156200178d573d6000803e3d6000fd5b505050506040513d6040811015620017a457600080fd5b810190808051906020019092919080519060200190929190505050915091509091565b60c881565b6000620017d982620030d3565b9050919050565b60001515600a60009054906101000a900460ff16151514806200184f57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80620018a85750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6200191b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f7472616e736665727320617265207374696c6c2070617573656400000000000081525060200191505060405180910390fd5b6200192633620030d3565b6200197d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526033815260200180620058436033913960400191505060405180910390fd5b6000620019896200309f565b9050600b54811162001a03576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4e6f742074696d6520746f20726169642074686520737461736820796574210081525060200191505060405180910390fd5b62001a1b6001600b54620031bc90919063ffffffff16565b600b8190555062001a2c3362003245565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001af2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fb681219831604b3b6fc8e46a8ccd24d83b78c6ca62a38b83aa27ca27b555962a8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550801562001c8457600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a2d83b5e8360006040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b15801562001c6a57600080fd5b505af115801562001c7f573d6000803e3d6000fd5b505050505b5050565b600a60009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001d5e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f0fcd385e1ee450f67d3308128f0289ecce033117ff89880b3ca76f37bb6b9dfb8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a180600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600062001e1e8262003488565b9050919050565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c32cdd16040518163ffffffff1660e01b815260040160206040518083038186803b15801562001e9057600080fd5b505afa15801562001ea5573d6000803e3d6000fd5b505050506040513d602081101562001ebc57600080fd5b8101908080519060200190929190505050905090565b60056020528060005260406000206000915090505481565b600062001ef88383620034e8565b905092915050565b600062001f123385858560016200263f565b600190509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60066020528060005260406000206000915090505481565b6040518060400160405280600481526020017f4e5547530000000000000000000000000000000000000000000000000000000081525081565b600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146200207c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f432f867513ff7aae52f8cd435bea765a6d5187a3cec30838d1f32298e98632308282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000620021583333858560006200263f565b6001905092915050565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fd6aad25836040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156200220457600080fd5b505afa15801562002219573d6000803e3d6000fd5b505050506040513d60208110156200223057600080fd5b81019080805190602001909291905050509050919050565b603281565b60096020528060005260406000206000915054906101000a900460ff1681565b60006200227b838362003562565b905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462002346576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f20e5d11e900eaeca1ddeb6acba8ab9bef75ee9a47b5f45b92d070dcb019b35df8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a180600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60035481565b60045481565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663949d225d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200247057600080fd5b505afa15801562002485573d6000803e3d6000fd5b505050506040513d60208110156200249c57600080fd5b8101908080519060200190929190505050905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462002575576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7ffe5e521975f0ba8de90d801c5fa34fa051ea9c7b85b06d07f36b11ad8ad53f038282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620026e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e736665727320746f20307830206e6f7420616c6c6f7765640000000081525060200191505060405180910390fd5b60001515600a60009054906101000a900460ff16151514806200275257506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80620027ab5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6200281e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f7472616e736665727320617265207374696c6c2070617573656400000000000081525060200191505060405180910390fd5b600082141562002894578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60006040518082815260200191505060405180910390a362002e0c565b6000620028a18562003488565b9050828110156200291a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f62616c616e6365206e6f7420656e6f756768000000000000000000000000000081525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161462002a215760006200295c868862003562565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811462002a1f5783811015620029fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f616c6c6f77616e6365206e6f7420656e6f75676800000000000000000000000081525060200191505060405180910390fd5b62002a1e868862002a1887856200360b90919063ffffffff16565b62002e13565b5b505b60008390506000809050600080905062002a508862002a4a88876200360b90919063ffffffff16565b62002eb9565b848062002a66575062002a6488886200368f565b155b1562002d4657600060c890506000600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541462002afd57600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b6000600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415801562002b8c575080600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b1562002bd557600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b62002bea81886200373b90919063ffffffff16565b92506001871462002bfc578262002bff565b60005b915062002c2a62002c1a8385620031bc90919063ffffffff16565b856200360b90919063ffffffff16565b935062002c43836002546200360b90919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600030905062002cde8162002cd88562002cc98562003488565b620031bc90919063ffffffff16565b62002eb9565b8073ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505b8562002d708462002d618486620031bc90919063ffffffff16565b620031bc90919063ffffffff16565b1462002d7857fe5b62002da28762002d9c8562002d8d8b62003488565b620031bc90919063ffffffff16565b62002eb9565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050505b5050505050565b62002eb48260405160200180807f616c6c6f77616e636500000000000000000000000000000000000000000000008152506009018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b8152601401915050604051602081830303815290604052805190602001208260001b62002ea486620037e7565b6200380a9092919063ffffffff16565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562002ef157fe5b62002f4a60405180807f62616c616e636500000000000000000000000000000000000000000000000000815250600701905060405180910390208260001b62002f3a85620037e7565b6200380a9092919063ffffffff16565b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801562002fd157503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156200309b57600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a2d83b5e83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156200308157600080fd5b505af115801562003096573d6000803e3d6000fd5b505050505b5050565b6000620030ce600354620030bf600454426200360b90919063ffffffff16565b62003a0290919063ffffffff16565b905090565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fd6aad25846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156200317657600080fd5b505afa1580156200318b573d6000803e3d6000fd5b505050506040513d6020811015620031a257600080fd5b810190808051906020019092919050505014159050919050565b6000808284019050838110156200323b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f416464206f766572666c6f77000000000000000000000000000000000000000081525060200191505060405180910390fd5b8091505092915050565b60003090506000620032578262003488565b9050600062003267848362003a8e565b90506000821415620032e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f6e6f7468696e6720746f2072616964207965740000000000000000000000000081525060200191505060405180910390fd5b6000620032f96032846200373b90919063ffffffff16565b905062003325856200331f83620033108962003488565b620031bc90919063ffffffff16565b62002eb9565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000620033a182856200360b90919063ffffffff16565b9050620033cd83620033c783620033b88762003488565b620031bc90919063ffffffff16565b62002eb9565b8273ffffffffffffffffffffffffffffffffffffffff167f9c2270628a9b29d30ae96b6c4c14ed646ee134febdce38a5b77f2bde9cea2e20826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505050565b6000620034de60405180807f62616c616e63650000000000000000000000000000000000000000000000000081525060070190506040518091039020620034cf84620037e7565b62003c9090919063ffffffff16565b60001c9050919050565b6000620035578260405160200180807f6e6f6e6365000000000000000000000000000000000000000000000000000000815250600501828152602001915050604051602081830303815290604052805190602001206200354885620037e7565b62003c9090919063ffffffff16565b60001c905092915050565b6000620036008260405160200180807f616c6c6f77616e636500000000000000000000000000000000000000000000008152506009018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140191505060405160208183030381529060405280519060200120620035f185620037e7565b62003c9090919063ffffffff16565b60001c905092915050565b60008183101562003684576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f53756220756e646572666c6f770000000000000000000000000000000000000081525060200191505060405180910390fd5b818303905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680620037335750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b905092915050565b600080821415620037b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f446976206279207a65726f00000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000828481620037c057fe5b0490506000838581620037cf57fe5b0614620037dd576001810190505b8091505092915050565b60008173ffffffffffffffffffffffffffffffffffffffff1660001b9050919050565b6000620038178462003eaf565b9050620038248162003f9d565b6200383557620038348462003fe3565b5b60008173ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1663e2e52ec1905060e01b85856040516024018083815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b602083106200391a5780518252602082019150602081019050602083039250620038f5565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146200397e576040519150601f19603f3d011682016040523d82523d6000602084013e62003983565b606091505b5050905080620039fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f6572726f722077726974696e672073746f72616765000000000000000000000081525060200191505060405180910390fd5b5050505050565b60008082141562003a7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f446976206279207a65726f00000000000000000000000000000000000000000081525060200191505060405180910390fd5b81838162003a8557fe5b04905092915050565b60008062003a9c836200401c565b9050600062003aac8583620034e8565b905062003abe85836001840162004072565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663949d225d6040518163ffffffff1660e01b815260040160206040518083038186803b15801562003b2957600080fd5b505afa15801562003b3e573d6000803e3d6000fd5b505050506040513d602081101562003b5557600080fd5b81019080805190602001909291905050509050600081141562003bc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180620058766022913960400191505060405180910390fd5b600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630af2b3e562003c1388858760018703620040e9565b6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801562003c4857600080fd5b505afa15801562003c5d573d6000803e3d6000fd5b505050506040513d602081101562003c7457600080fd5b8101908080519060200190929190505050935050505092915050565b60008062003c9e8462003eaf565b905062003cab8162003f9d565b62003cbd576000801b91505062003ea9565b600060608273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166361da1439905060e01b8660405160240180828152602001915050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831062003d9c578051825260208201915060208101905060208303925062003d77565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d806000811462003dfe576040519150601f19603f3d011682016040523d82523d6000602084013e62003e03565b606091505b50915091508162003e7c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f6572726f722072656164696e672073746f72616765000000000000000000000081525060200191505060405180910390fd5b80806020019051602081101562003e9257600080fd5b810190808051906020019092919050505093505050505b92915050565b600060ff60f81b30836040518060200162003eca906200417e565b6020820181038252601f19601f820116604052508051906020012060405160200180857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526001018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018381526020018281526020019450505050506040516020818303038152906040528051906020012060001c9050919050565b600080823f90506000801b811415801562003fdb57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b8114155b915050919050565b60606040518060200162003ff7906200417e565b6020820181038252601f19601f820116604052509050818151602083016000f5505050565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff905060008390505b600a81816200405357fe5b0490508180600101925050600081141562004048578192505050919050565b620040e48260405160200180807f6e6f6e6365000000000000000000000000000000000000000000000000000000815250600501828152602001915050604051602081830303815290604052805190602001208260001b620040d486620037e7565b6200380a9092919063ffffffff16565b505050565b600080858585604051602001808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140183815260200182815260200193505050506040516020818303038152906040528051906020012060001c90506001830181816200416457fe5b06915050949350505050565b6114da806200418d83390190565b6101dc80620056678339019056fe608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c600033604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16100fd600161010260201b6112361760201c565b6101b1565b600081600001805490501461017f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f616c726561647920696e697469616c697a65640000000000000000000000000081525060200191505060405180910390fd5b806000016000908060018154018082558091505090600182039060005260206000200160009091929091909150555050565b61131a806101c06000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063949d225d11610066578063949d225d146101db578063a2d83b5e146101f9578063e2095c0714610247578063fd6aad25146102bc578063fe6dcdba146103145761009e565b80630af2b3e5146100a357806313af40351461011157806331fb7127146101555780637c32cdd1146101735780638da5cb5b14610191575b600080fd5b6100cf600480360360208110156100b957600080fd5b8101908080359060200190929190505050610365565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101536004803603602081101561012757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610385565b005b61015d610542565b6040518082815260200191505060405180910390f35b61017b610548565b6040518082815260200191505060405180910390f35b610199610552565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101e3610577565b6040518082815260200191505060405180910390f35b6102456004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610588565b005b6102736004803603602081101561025d57600080fd5b810190808035906020019092919050505061089a565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6102fe600480360360208110156102d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108ba565b6040518082815260200191505060405180910390f35b61031c610905565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b600061037b82600161091a90919063ffffffff16565b5080915050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6101a481565b60006101a4905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610583600161094d565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000610656600161094d565b9050600081148015610669575060008214155b156106e1578273ffffffffffffffffffffffffffffffffffffffff167fb7c8eb45e695579273671351c1ee88509af6ec27e061176b10f5f9fb145eff93836000604051808381526020018281526020019250505060405180910390a26106db838360016109619092919063ffffffff16565b50610896565b60006106ed6001610ac7565b915050610704846001610b1990919063ffffffff16565b156107915761071f84846001610b689092919063ffffffff16565b600083141561078c576107326001610d1b565b50508373ffffffffffffffffffffffffffffffffffffffff167f61072af1539e7159a567565ab0a7863c5ad61aa8daa91cf3843c3bb8bccb00e7600084604051808381526020018281526020019250505060405180910390a25b610893565b600083141580156107ad57506101a48210806107ac57508281105b5b15610892576101a48210610825576000806107c86001610d1b565b915091508173ffffffffffffffffffffffffffffffffffffffff167f61072af1539e7159a567565ab0a7863c5ad61aa8daa91cf3843c3bb8bccb00e78286604051808381526020018281526020019250505060405180910390a250505b61083b848460016109619092919063ffffffff16565b8373ffffffffffffffffffffffffffffffffffffffff167fb7c8eb45e695579273671351c1ee88509af6ec27e061176b10f5f9fb145eff938484604051808381526020018281526020019250505060405180910390a25b5b50505b5050565b6000806108b183600161091a90919063ffffffff16565b91509150915091565b60006001800160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806109126001610ac7565b915091509091565b60008061094284600001600185018154811061093257fe5b9060005260206000200154610efa565b915091509250929050565b600060018260000180549050039050919050565b60008360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610a18576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f54686520656e74727920616c726561647920657869737473000000000000000081525060200191505060405180910390fd5b6000610a248383610f24565b905083600001819080600181540180825580915050906001820390600052602060002001600090919290919091505550600060018560000180549050039050610a78818387610f4b9092919063ffffffff16565b9050808560010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050565b600080600283600001805490501015610aec5760008081915080905091509150610b14565b610b0f83600001600181548110610aff57fe5b9060005260206000200154610efa565b915091505b915091565b6000808360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415905092915050565b60008360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811415610c25576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f54686520656e74727920646f6573206e6f74206578697374730000000000000081525060200191505060405180910390fd5b6000610c318484610f24565b90506000856000018381548110610c4457fe5b90600052602060002001549050600081831015610c7757610c708484896110749092919063ffffffff16565b9050610ca5565b81831115610c9b57610c94848489610f4b9092919063ffffffff16565b9050610ca4565b50505050610d16565b5b82876000018281548110610cb557fe5b9060005260206000200181905550838114610d1157808760010160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050505b505050565b60008060008360000180549050905060018111610da0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f546865206865617020646f6573206e6f7420657869737473000000000000000081525060200191505060405180910390fd5b610dc384600001600181548110610db357fe5b9060005260206000200154610efa565b809350819450505060008460010160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506002811415610e325760018460000181610e2c91906111e5565b50610ef4565b6000846000016001830381548110610e4657fe5b906000526020600020015490508085600001600181548110610e6457fe5b9060005260206000200181905550600182038560000181610e8591906111e5565b50600060019050610ea18183886110749092919063ffffffff16565b905080866001016000610eb3856111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505b50915091565b600080821973ffffffffffffffffffffffffffffffffffffffff811692508060a01c915050915091565b60008160a01b8373ffffffffffffffffffffffffffffffffffffffff161719905092915050565b60008290506001811461106d5760008460000160028381610f6857fe5b0481548110610f7357fe5b906000526020600020015490505b8281101561106b5782818660000160028581610f9957fe5b0481548110610fa457fe5b906000526020600020016000886000018681548110610fbf57fe5b90600052602060002001600084919050558391905055505081856001016000610fe7846111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506002828161102f57fe5b04915060018214156110405761106b565b846000016002838161104e57fe5b048154811061105957fe5b90600052602060002001549050610f81565b505b9392505050565b600082905060008460000180549050905060006001820390505b816002840210156111bb57600060028402905060008760000182815481106110b257fe5b9060005260206000200154905060008284111561110a5760008960000160018501815481106110dd57fe5b906000526020600020015490508083101561110057809150600184019350611104565b8291505b5061110e565b8190505b8087111561111e575050506111bb565b80878a600001888154811061112f57fe5b9060005260206000200160008c600001878154811061114a57fe5b90600052602060002001600084919050558391905055505085896001016000611172846111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555082955050505061108e565b50509392505050565b600073ffffffffffffffffffffffffffffffffffffffff8219169050919050565b81548183558181111561120c5781836000526020600020918201910161120b9190611211565b5b505050565b61123391905b8082111561122f576000816000905550600101611217565b5090565b90565b60008160000180549050146112b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f616c726561647920696e697469616c697a65640000000000000000000000000081525060200191505060405180910390fd5b80600001600090806001815401808255809150509060018203906000526020600020016000909192909190915055505056fea265627a7a72305820aa7488443deddaf81def4253f723399c7a57c76480575c0ce76d35bb26279f4564736f6c634300050a0032608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061017c806100606000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806361da14391461003b578063e2e52ec11461007d575b600080fd5b6100676004803603602081101561005157600080fd5b81019080803590602001909291905050506100b5565b6040518082815260200191505060405180910390f35b6100b36004803603604081101561009357600080fd5b8101908080359060200190929190803590602001909291905050506100d2565b005b600060016000838152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461012b57600080fd5b806001600084815260200190815260200160002081905550505056fea265627a7a72305820838c40e8544fd57690fa2fcf0958553f59bdf1d1ebb5792ea61fb8929ca9679764736f6c634300050a00324f6e6c79206f6e65206f66207468652034323020746f7020686f6c64657273206d6179207261696420746865207374617368216e6f20686f6c646572732077686974656c697374656420666f72206c6f7474657279a265627a7a723058200d5a1e4888cf5ae6d37478eaa75fa6bd7e038bedac38647aa664b870bef8792264736f6c634300050a0032

Deployed Bytecode

0x60806040523480156200001157600080fd5b5060043610620002985760003560e01c80636a266e471162000165578063a486309d11620000d5578063dd62ed3e1162000093578063dd62ed3e1462000d9c578063f1f38deb1462000e17578063f4514fa31462000e68578063f855d3381462000e88578063fa7e8dc71462000ea8578063ff12bbf41462000ec85762000298565b8063a486309d1462000c06578063a9059cbb1462000c59578063b00cf0491462000cc2578063c56c36871462000d1d578063cf7249991462000d3d5762000298565b806389f35468116200012357806389f354681462000a025780638da5cb5b1462000a8b5780639192e6bf1462000ad757806395d89b411462000b32578063a12ab7701462000bba5762000298565b80636a266e47146200087657806370a0823114620008c75780637c32cdd114620009225780637e17a3f4146200094257806389535803146200099d5762000298565b806332cf46e6116200020d5780634849f5c811620001cb5780634849f5c814620007215780634fcc1def1462000774578063514e89771462000794578063583fa3a814620007f35780635a488d0714620007ff5780635c975abb14620008525762000298565b806332cf46e6146200062b5780633f4ba83a146200067257806341b87b27146200067e57806343684b21146200069e57806343c885ba14620006fd5762000298565b806316b627d1116200025b57806316b627d114620004b657806318160ddd146200051557806319ab453c146200053557806323b872dd146200057c578063313ce56714620006055762000298565b806306fdde03146200029d57806308acece2146200032557806308eaae4d146200038e578063095ea7b3146200040657806313af4035146200046f575b600080fd5b620002a762000f1b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015620002e9578082015181840152602081019050620002cc565b50505050905090810190601f168015620003175780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b62000374600480360360408110156200033d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062000f54565b604051808215151515815260200191505060405180910390f35b620003bd60048036036020811015620003a657600080fd5b810190808035906020019092919050505062000f70565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b62000455600480360360408110156200041e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001036565b604051808215151515815260200191505060405180910390f35b620004b4600480360360208110156200048757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620010b4565b005b620004fb60048036036020811015620004ce57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001272565b604051808215151515815260200191505060405180910390f35b6200051f62001292565b6040518082815260200191505060405180910390f35b6200057a600480360360208110156200054d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001298565b005b620005eb600480360360608110156200059457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001419565b604051808215151515815260200191505060405180910390f35b6200060f62001436565b604051808260ff1660ff16815260200191505060405180910390f35b62000670600480360360208110156200064357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200143b565b005b6200067c6200159b565b005b62000688620016d4565b6040518082815260200191505060405180910390f35b620006e360048036036020811015620006b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620016da565b604051808215151515815260200191505060405180910390f35b62000707620016fa565b604051808215151515815260200191505060405180910390f35b6200072b6200170d565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6200077e620017c7565b6040518082815260200191505060405180910390f35b620007d960048036036020811015620007ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050620017cc565b604051808215151515815260200191505060405180910390f35b620007fd620017e0565b005b62000850600480360360408110156200081757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505062001a2f565b005b6200085c62001c88565b604051808215151515815260200191505060405180910390f35b620008c5600480360360408110156200088e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001c9b565b005b6200090c60048036036020811015620008df57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001e11565b6040518082815260200191505060405180910390f35b6200092c62001e25565b6040518082815260200191505060405180910390f35b62000987600480360360208110156200095a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001ed2565b6040518082815260200191505060405180910390f35b620009ec60048036036040811015620009b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001eea565b6040518082815260200191505060405180910390f35b62000a716004803603606081101562000a1a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062001f00565b604051808215151515815260200191505060405180910390f35b62000a9562001f1d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000b1c6004803603602081101562000aef57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062001f42565b6040518082815260200191505060405180910390f35b62000b3c62001f5a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101562000b7e57808201518184015260208101905062000b61565b50505050905090810190601f16801562000bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b62000bc462001f93565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b62000c576004803603604081101562000c1e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505062001fb9565b005b62000ca86004803603604081101562000c7157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062002146565b604051808215151515815260200191505060405180910390f35b62000d076004803603602081101562000cda57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505062002162565b6040518082815260200191505060405180910390f35b62000d2762002248565b6040518082815260200191505060405180910390f35b62000d826004803603602081101562000d5557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200224d565b604051808215151515815260200191505060405180910390f35b62000e016004803603604081101562000db457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506200226d565b6040518082815260200191505060405180910390f35b62000e666004803603604081101562000e2f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505062002283565b005b62000e72620023f9565b6040518082815260200191505060405180910390f35b62000e92620023ff565b6040518082815260200191505060405180910390f35b62000eb262002405565b6040518082815260200191505060405180910390f35b62000f196004803603604081101562000ee057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050620024b2565b005b6040518060400160405280600a81526020017f4e75677320546f6b656e0000000000000000000000000000000000000000000081525081565b600062000f663333858560016200263f565b6001905092915050565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e2095c07846040518263ffffffff1660e01b815260040180828152602001915050604080518083038186803b15801562000fe657600080fd5b505afa15801562000ffb573d6000803e3d6000fd5b505050506040513d60408110156200101257600080fd5b81019080805190602001909291908051906020019092919050505091509150915091565b60008273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3620010aa33848462002e13565b6001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001177576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60086020528060005260406000206000915054906101000a900460ff1681565b60025481565b600a60159054906101000a900460ff1615620012b057fe5b6001600a60156101000a81548160ff021916908315150217905550600073ffffffffffffffffffffffffffffffffffffffff16600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200132457fe5b604051620013329062004170565b604051809103906000f0801580156200134f573d6000803e3d6000fd5b50600a60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6002546040518082815260200191505060405180910390a3620014068160025462002eb9565b620014106200309f565b600b8190555050565b60006200142b3385858560006200263f565b600190509392505050565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480620014e45750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b62001557576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6f6e6c79206f776e6572206f722070617573657200000000000000000000000081525060200191505060405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480620016445750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b620016b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f6f6e6c79206f776e6572206f722070617573657200000000000000000000000081525060200191505060405180910390fd5b6000600a60006101000a81548160ff021916908315150217905550565b600b5481565b60076020528060005260406000206000915054906101000a900460ff1681565b600a60159054906101000a900460ff1681565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe6dcdba6040518163ffffffff1660e01b8152600401604080518083038186803b1580156200177857600080fd5b505afa1580156200178d573d6000803e3d6000fd5b505050506040513d6040811015620017a457600080fd5b810190808051906020019092919080519060200190929190505050915091509091565b60c881565b6000620017d982620030d3565b9050919050565b60001515600a60009054906101000a900460ff16151514806200184f57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80620018a85750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6200191b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f7472616e736665727320617265207374696c6c2070617573656400000000000081525060200191505060405180910390fd5b6200192633620030d3565b6200197d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526033815260200180620058436033913960400191505060405180910390fd5b6000620019896200309f565b9050600b54811162001a03576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4e6f742074696d6520746f20726169642074686520737461736820796574210081525060200191505060405180910390fd5b62001a1b6001600b54620031bc90919063ffffffff16565b600b8190555062001a2c3362003245565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001af2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7fb681219831604b3b6fc8e46a8ccd24d83b78c6ca62a38b83aa27ca27b555962a8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550801562001c8457600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a2d83b5e8360006040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b15801562001c6a57600080fd5b505af115801562001c7f573d6000803e3d6000fd5b505050505b5050565b600a60009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462001d5e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f0fcd385e1ee450f67d3308128f0289ecce033117ff89880b3ca76f37bb6b9dfb8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a180600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600062001e1e8262003488565b9050919050565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c32cdd16040518163ffffffff1660e01b815260040160206040518083038186803b15801562001e9057600080fd5b505afa15801562001ea5573d6000803e3d6000fd5b505050506040513d602081101562001ebc57600080fd5b8101908080519060200190929190505050905090565b60056020528060005260406000206000915090505481565b600062001ef88383620034e8565b905092915050565b600062001f123385858560016200263f565b600190509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60066020528060005260406000206000915090505481565b6040518060400160405280600481526020017f4e5547530000000000000000000000000000000000000000000000000000000081525081565b600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146200207c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f432f867513ff7aae52f8cd435bea765a6d5187a3cec30838d1f32298e98632308282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000620021583333858560006200263f565b6001905092915050565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fd6aad25836040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156200220457600080fd5b505afa15801562002219573d6000803e3d6000fd5b505050506040513d60208110156200223057600080fd5b81019080805190602001909291905050509050919050565b603281565b60096020528060005260406000206000915054906101000a900460ff1681565b60006200227b838362003562565b905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462002346576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f20e5d11e900eaeca1ddeb6acba8ab9bef75ee9a47b5f45b92d070dcb019b35df8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a180600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60035481565b60045481565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663949d225d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200247057600080fd5b505afa15801562002485573d6000803e3d6000fd5b505050506040513d60208110156200249c57600080fd5b8101908080519060200190929190505050905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462002575576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7ffe5e521975f0ba8de90d801c5fa34fa051ea9c7b85b06d07f36b11ad8ad53f038282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a180600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620026e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e736665727320746f20307830206e6f7420616c6c6f7765640000000081525060200191505060405180910390fd5b60001515600a60009054906101000a900460ff16151514806200275257506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80620027ab5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6200281e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f7472616e736665727320617265207374696c6c2070617573656400000000000081525060200191505060405180910390fd5b600082141562002894578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60006040518082815260200191505060405180910390a362002e0c565b6000620028a18562003488565b9050828110156200291a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f62616c616e6365206e6f7420656e6f756768000000000000000000000000000081525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161462002a215760006200295c868862003562565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811462002a1f5783811015620029fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f616c6c6f77616e6365206e6f7420656e6f75676800000000000000000000000081525060200191505060405180910390fd5b62002a1e868862002a1887856200360b90919063ffffffff16565b62002e13565b5b505b60008390506000809050600080905062002a508862002a4a88876200360b90919063ffffffff16565b62002eb9565b848062002a66575062002a6488886200368f565b155b1562002d4657600060c890506000600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541462002afd57600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b6000600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415801562002b8c575080600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b1562002bd557600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b62002bea81886200373b90919063ffffffff16565b92506001871462002bfc578262002bff565b60005b915062002c2a62002c1a8385620031bc90919063ffffffff16565b856200360b90919063ffffffff16565b935062002c43836002546200360b90919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600030905062002cde8162002cd88562002cc98562003488565b620031bc90919063ffffffff16565b62002eb9565b8073ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505b8562002d708462002d618486620031bc90919063ffffffff16565b620031bc90919063ffffffff16565b1462002d7857fe5b62002da28762002d9c8562002d8d8b62003488565b620031bc90919063ffffffff16565b62002eb9565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050505b5050505050565b62002eb48260405160200180807f616c6c6f77616e636500000000000000000000000000000000000000000000008152506009018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b8152601401915050604051602081830303815290604052805190602001208260001b62002ea486620037e7565b6200380a9092919063ffffffff16565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562002ef157fe5b62002f4a60405180807f62616c616e636500000000000000000000000000000000000000000000000000815250600701905060405180910390208260001b62002f3a85620037e7565b6200380a9092919063ffffffff16565b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801562002fd157503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156200309b57600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a2d83b5e83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156200308157600080fd5b505af115801562003096573d6000803e3d6000fd5b505050505b5050565b6000620030ce600354620030bf600454426200360b90919063ffffffff16565b62003a0290919063ffffffff16565b905090565b600080600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fd6aad25846040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156200317657600080fd5b505afa1580156200318b573d6000803e3d6000fd5b505050506040513d6020811015620031a257600080fd5b810190808051906020019092919050505014159050919050565b6000808284019050838110156200323b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f416464206f766572666c6f77000000000000000000000000000000000000000081525060200191505060405180910390fd5b8091505092915050565b60003090506000620032578262003488565b9050600062003267848362003a8e565b90506000821415620032e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f6e6f7468696e6720746f2072616964207965740000000000000000000000000081525060200191505060405180910390fd5b6000620032f96032846200373b90919063ffffffff16565b905062003325856200331f83620033108962003488565b620031bc90919063ffffffff16565b62002eb9565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000620033a182856200360b90919063ffffffff16565b9050620033cd83620033c783620033b88762003488565b620031bc90919063ffffffff16565b62002eb9565b8273ffffffffffffffffffffffffffffffffffffffff167f9c2270628a9b29d30ae96b6c4c14ed646ee134febdce38a5b77f2bde9cea2e20826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505050565b6000620034de60405180807f62616c616e63650000000000000000000000000000000000000000000000000081525060070190506040518091039020620034cf84620037e7565b62003c9090919063ffffffff16565b60001c9050919050565b6000620035578260405160200180807f6e6f6e6365000000000000000000000000000000000000000000000000000000815250600501828152602001915050604051602081830303815290604052805190602001206200354885620037e7565b62003c9090919063ffffffff16565b60001c905092915050565b6000620036008260405160200180807f616c6c6f77616e636500000000000000000000000000000000000000000000008152506009018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140191505060405160208183030381529060405280519060200120620035f185620037e7565b62003c9090919063ffffffff16565b60001c905092915050565b60008183101562003684576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f53756220756e646572666c6f770000000000000000000000000000000000000081525060200191505060405180910390fd5b818303905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680620037335750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b905092915050565b600080821415620037b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f446976206279207a65726f00000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000828481620037c057fe5b0490506000838581620037cf57fe5b0614620037dd576001810190505b8091505092915050565b60008173ffffffffffffffffffffffffffffffffffffffff1660001b9050919050565b6000620038178462003eaf565b9050620038248162003f9d565b6200383557620038348462003fe3565b5b60008173ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1663e2e52ec1905060e01b85856040516024018083815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b602083106200391a5780518252602082019150602081019050602083039250620038f5565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146200397e576040519150601f19603f3d011682016040523d82523d6000602084013e62003983565b606091505b5050905080620039fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f6572726f722077726974696e672073746f72616765000000000000000000000081525060200191505060405180910390fd5b5050505050565b60008082141562003a7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f446976206279207a65726f00000000000000000000000000000000000000000081525060200191505060405180910390fd5b81838162003a8557fe5b04905092915050565b60008062003a9c836200401c565b9050600062003aac8583620034e8565b905062003abe85836001840162004072565b6000600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663949d225d6040518163ffffffff1660e01b815260040160206040518083038186803b15801562003b2957600080fd5b505afa15801562003b3e573d6000803e3d6000fd5b505050506040513d602081101562003b5557600080fd5b81019080805190602001909291905050509050600081141562003bc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180620058766022913960400191505060405180910390fd5b600a60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630af2b3e562003c1388858760018703620040e9565b6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801562003c4857600080fd5b505afa15801562003c5d573d6000803e3d6000fd5b505050506040513d602081101562003c7457600080fd5b8101908080519060200190929190505050935050505092915050565b60008062003c9e8462003eaf565b905062003cab8162003f9d565b62003cbd576000801b91505062003ea9565b600060608273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166361da1439905060e01b8660405160240180828152602001915050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831062003d9c578051825260208201915060208101905060208303925062003d77565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d806000811462003dfe576040519150601f19603f3d011682016040523d82523d6000602084013e62003e03565b606091505b50915091508162003e7c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f6572726f722072656164696e672073746f72616765000000000000000000000081525060200191505060405180910390fd5b80806020019051602081101562003e9257600080fd5b810190808051906020019092919050505093505050505b92915050565b600060ff60f81b30836040518060200162003eca906200417e565b6020820181038252601f19601f820116604052508051906020012060405160200180857effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526001018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018381526020018281526020019450505050506040516020818303038152906040528051906020012060001c9050919050565b600080823f90506000801b811415801562003fdb57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b8114155b915050919050565b60606040518060200162003ff7906200417e565b6020820181038252601f19601f820116604052509050818151602083016000f5505050565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff905060008390505b600a81816200405357fe5b0490508180600101925050600081141562004048578192505050919050565b620040e48260405160200180807f6e6f6e6365000000000000000000000000000000000000000000000000000000815250600501828152602001915050604051602081830303815290604052805190602001208260001b620040d486620037e7565b6200380a9092919063ffffffff16565b505050565b600080858585604051602001808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140183815260200182815260200193505050506040516020818303038152906040528051906020012060001c90506001830181816200416457fe5b06915050949350505050565b6114da806200418d83390190565b6101dc80620056678339019056fe608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c600033604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16100fd600161010260201b6112361760201c565b6101b1565b600081600001805490501461017f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f616c726561647920696e697469616c697a65640000000000000000000000000081525060200191505060405180910390fd5b806000016000908060018154018082558091505090600182039060005260206000200160009091929091909150555050565b61131a806101c06000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063949d225d11610066578063949d225d146101db578063a2d83b5e146101f9578063e2095c0714610247578063fd6aad25146102bc578063fe6dcdba146103145761009e565b80630af2b3e5146100a357806313af40351461011157806331fb7127146101555780637c32cdd1146101735780638da5cb5b14610191575b600080fd5b6100cf600480360360208110156100b957600080fd5b8101908080359060200190929190505050610365565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101536004803603602081101561012757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610385565b005b61015d610542565b6040518082815260200191505060405180910390f35b61017b610548565b6040518082815260200191505060405180910390f35b610199610552565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101e3610577565b6040518082815260200191505060405180910390f35b6102456004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610588565b005b6102736004803603602081101561025d57600080fd5b810190808035906020019092919050505061089a565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b6102fe600480360360208110156102d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108ba565b6040518082815260200191505060405180910390f35b61031c610905565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390f35b600061037b82600161091a90919063ffffffff16565b5080915050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610447576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6101a481565b60006101a4905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610583600161094d565b905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c79206f776e65720000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000610656600161094d565b9050600081148015610669575060008214155b156106e1578273ffffffffffffffffffffffffffffffffffffffff167fb7c8eb45e695579273671351c1ee88509af6ec27e061176b10f5f9fb145eff93836000604051808381526020018281526020019250505060405180910390a26106db838360016109619092919063ffffffff16565b50610896565b60006106ed6001610ac7565b915050610704846001610b1990919063ffffffff16565b156107915761071f84846001610b689092919063ffffffff16565b600083141561078c576107326001610d1b565b50508373ffffffffffffffffffffffffffffffffffffffff167f61072af1539e7159a567565ab0a7863c5ad61aa8daa91cf3843c3bb8bccb00e7600084604051808381526020018281526020019250505060405180910390a25b610893565b600083141580156107ad57506101a48210806107ac57508281105b5b15610892576101a48210610825576000806107c86001610d1b565b915091508173ffffffffffffffffffffffffffffffffffffffff167f61072af1539e7159a567565ab0a7863c5ad61aa8daa91cf3843c3bb8bccb00e78286604051808381526020018281526020019250505060405180910390a250505b61083b848460016109619092919063ffffffff16565b8373ffffffffffffffffffffffffffffffffffffffff167fb7c8eb45e695579273671351c1ee88509af6ec27e061176b10f5f9fb145eff938484604051808381526020018281526020019250505060405180910390a25b5b50505b5050565b6000806108b183600161091a90919063ffffffff16565b91509150915091565b60006001800160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806109126001610ac7565b915091509091565b60008061094284600001600185018154811061093257fe5b9060005260206000200154610efa565b915091509250929050565b600060018260000180549050039050919050565b60008360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610a18576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f54686520656e74727920616c726561647920657869737473000000000000000081525060200191505060405180910390fd5b6000610a248383610f24565b905083600001819080600181540180825580915050906001820390600052602060002001600090919290919091505550600060018560000180549050039050610a78818387610f4b9092919063ffffffff16565b9050808560010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050505050565b600080600283600001805490501015610aec5760008081915080905091509150610b14565b610b0f83600001600181548110610aff57fe5b9060005260206000200154610efa565b915091505b915091565b6000808360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415905092915050565b60008360010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811415610c25576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f54686520656e74727920646f6573206e6f74206578697374730000000000000081525060200191505060405180910390fd5b6000610c318484610f24565b90506000856000018381548110610c4457fe5b90600052602060002001549050600081831015610c7757610c708484896110749092919063ffffffff16565b9050610ca5565b81831115610c9b57610c94848489610f4b9092919063ffffffff16565b9050610ca4565b50505050610d16565b5b82876000018281548110610cb557fe5b9060005260206000200181905550838114610d1157808760010160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050505b505050565b60008060008360000180549050905060018111610da0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f546865206865617020646f6573206e6f7420657869737473000000000000000081525060200191505060405180910390fd5b610dc384600001600181548110610db357fe5b9060005260206000200154610efa565b809350819450505060008460010160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506002811415610e325760018460000181610e2c91906111e5565b50610ef4565b6000846000016001830381548110610e4657fe5b906000526020600020015490508085600001600181548110610e6457fe5b9060005260206000200181905550600182038560000181610e8591906111e5565b50600060019050610ea18183886110749092919063ffffffff16565b905080866001016000610eb3856111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505b50915091565b600080821973ffffffffffffffffffffffffffffffffffffffff811692508060a01c915050915091565b60008160a01b8373ffffffffffffffffffffffffffffffffffffffff161719905092915050565b60008290506001811461106d5760008460000160028381610f6857fe5b0481548110610f7357fe5b906000526020600020015490505b8281101561106b5782818660000160028581610f9957fe5b0481548110610fa457fe5b906000526020600020016000886000018681548110610fbf57fe5b90600052602060002001600084919050558391905055505081856001016000610fe7846111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506002828161102f57fe5b04915060018214156110405761106b565b846000016002838161104e57fe5b048154811061105957fe5b90600052602060002001549050610f81565b505b9392505050565b600082905060008460000180549050905060006001820390505b816002840210156111bb57600060028402905060008760000182815481106110b257fe5b9060005260206000200154905060008284111561110a5760008960000160018501815481106110dd57fe5b906000526020600020015490508083101561110057809150600184019350611104565b8291505b5061110e565b8190505b8087111561111e575050506111bb565b80878a600001888154811061112f57fe5b9060005260206000200160008c600001878154811061114a57fe5b90600052602060002001600084919050558391905055505085896001016000611172846111c4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555082955050505061108e565b50509392505050565b600073ffffffffffffffffffffffffffffffffffffffff8219169050919050565b81548183558181111561120c5781836000526020600020918201910161120b9190611211565b5b505050565b61123391905b8082111561122f576000816000905550600101611217565b5090565b90565b60008160000180549050146112b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f616c726561647920696e697469616c697a65640000000000000000000000000081525060200191505060405180910390fd5b80600001600090806001815401808255809150509060018203906000526020600020016000909192909190915055505056fea265627a7a72305820aa7488443deddaf81def4253f723399c7a57c76480575c0ce76d35bb26279f4564736f6c634300050a0032608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061017c806100606000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806361da14391461003b578063e2e52ec11461007d575b600080fd5b6100676004803603602081101561005157600080fd5b81019080803590602001909291905050506100b5565b6040518082815260200191505060405180910390f35b6100b36004803603604081101561009357600080fd5b8101908080359060200190929190803590602001909291905050506100d2565b005b600060016000838152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461012b57600080fd5b806001600084815260200190815260200160002081905550505056fea265627a7a72305820838c40e8544fd57690fa2fcf0958553f59bdf1d1ebb5792ea61fb8929ca9679764736f6c634300050a00324f6e6c79206f6e65206f66207468652034323020746f7020686f6c64657273206d6179207261696420746865207374617368216e6f20686f6c646572732077686974656c697374656420666f72206c6f7474657279a265627a7a723058200d5a1e4888cf5ae6d37478eaa75fa6bd7e038bedac38647aa664b870bef8792264736f6c634300050a0032

Deployed Bytecode Sourcemap

16710:13169:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16710:13169:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17700:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;17700:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29310:176;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;29310:176:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28136:112;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28136:112:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28911:213;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28911:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;408:134;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;408:134:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;18127:43;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18127:43:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17281:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18488:475;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18488:475:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;29494:184;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;29494:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17794:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;19181:176;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19181:176:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;19021:152;;;:::i;:::-;;18421:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18075:45;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18075:45:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;18396:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28256:96;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17407:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20900:105;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;20900:105:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;21056:503;;;:::i;:::-;;26890:303;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26890:303:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18307:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;27372:169;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;27372:169:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28649:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28649:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27940:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17903:50;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17903:50:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;28479:124;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28479:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;29686:190;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;29686:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;94:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17960:48;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17960:48:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17749:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;17749:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18354:16;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;26500:184;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26500:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;29132:170;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;29132:170:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28360:111;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28360:111:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17463:46;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18250:48;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18250:48:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28766:137;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28766:137:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27201:163;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;27201:163:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17524:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17587:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;28039:89;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26692:190;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26692:190:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17700:42;;;;;;;;;;;;;;;;;;;:::o;29310:176::-;29383:4;29400:56;29414:10;29426;29438:3;29443:6;29451:4;29400:13;:56::i;:::-;29474:4;29467:11;;29310:176;;;;:::o;28136:112::-;28190:7;28199;28226:4;;;;;;;;;;;:10;;;28237:2;28226:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;28226:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;28226:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28226:14:0;;;;;;;;;;;;;;;;;;;;;;;;;28219:21;;;;28136:112;;;:::o;28911:213::-;28980:4;29023:8;29002:38;;29011:10;29002:38;;;29033:6;29002:38;;;;;;;;;;;;;;;;;;29051:43;29065:10;29077:8;29087:6;29051:13;:43::i;:::-;29112:4;29105:11;;28911:213;;;;:::o;408:134::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;477:32;495:5;;;;;;;;;;;502:6;477:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;528:6;520:5;;:14;;;;;;;;;;;;;;;;;;408:134;:::o;18127:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;17281:49::-;;;;:::o;18488:475::-;18571:6;;;;;;;;;;;18570:7;18563:15;;;;18598:4;18589:6;;:13;;;;;;;;;;;;;;;;;;18673:1;18648:27;;18656:4;;;;;;;;;;;18648:27;;;18641:35;;;;18720:10;;;;;:::i;:::-;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18720:10:0;18713:4;;:17;;;;;;;;;;;;;;;;;;18847:3;18826:38;;18843:1;18826:38;;;18852:11;;18826:38;;;;;;;;;;;;;;;;;;18875:29;18887:3;18892:11;;18875;:29::i;:::-;18936:19;:17;:19::i;:::-;18917:16;:38;;;;18488:475;:::o;29494:184::-;29579:4;29596:52;29610:10;29622:5;29629:3;29634:6;29642:5;29596:13;:52::i;:::-;29666:4;29659:11;;29494:184;;;;;:::o;17794:35::-;17827:2;17794:35;:::o;19181:176::-;19262:5;;;;;;;;;;;19248:19;;:10;:19;;;:47;;;;19285:10;;;;;;;;;;;19271:24;;:10;:24;;;19248:47;19240:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19344:5;19331:10;;:18;;;;;;;;;;;;;;;;;;19181:176;:::o;19021:152::-;19082:5;;;;;;;;;;;19068:19;;:10;:19;;;:47;;;;19105:10;;;;;;;;;;;19091:24;;:10;:24;;;19068:47;19060:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19160:5;19151:6;;:14;;;;;;;;;;;;;;;;;;19021:152::o;18421:31::-;;;;:::o;18075:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;18396:18::-;;;;;;;;;;;;;:::o;28256:96::-;28298:7;28307;28334:4;;;;;;;;;;;:8;;;:10;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;28334:10:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;28334:10:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28334:10:0;;;;;;;;;;;;;;;;;;;;;;;;;28327:17;;;;28256:96;;:::o;17407:41::-;17445:3;17407:41;:::o;20900:105::-;20959:4;20983:14;20991:5;20983:7;:14::i;:::-;20976:21;;20900:105;;;:::o;21056:503::-;21115:5;21105:15;;:6;;;;;;;;;;;:15;;;:39;;;;21139:5;;;;;;;;;;;21125:19;;:10;:19;;;21105:39;:67;;;;21162:10;;;;;;;;;;;21148:24;;:10;:24;;;21105:67;21097:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21224:19;21232:10;21224:7;:19::i;:::-;21216:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21310:18;21331:19;:17;:19::i;:::-;21310:40;;21413:16;;21400:10;:29;21392:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21495:23;21516:1;21495:16;;:20;;:23;;;;:::i;:::-;21476:16;:42;;;;21529:22;21540:10;21529;:22::i;:::-;21056:503;:::o;26890:303::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26990;27012:5;27019:12;26990:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27069:12;27043:16;:23;27060:5;27043:23;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;27096:12;27092:52;;;27123:4;;;;;;;;;;;:11;;;27135:5;27142:1;27123:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;27123:21:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;27123:21:0;;;;27092:52;26890:303;;:::o;18307:25::-;;;;;;;;;;;;;:::o;27372:169::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27463:30;27481:5;27488:4;27463:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;27529:4;27504:15;:22;27520:5;27504:22;;;;;;;;;;;;;;;:29;;;;27372:169;;:::o;28649:109::-;28706:7;28733:17;28744:5;28733:10;:17::i;:::-;28726:24;;28649:109;;;:::o;27940:91::-;27982:7;28009:4;;;;;;;;;;;:12;;;:14;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;28009:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;28009:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28009:14:0;;;;;;;;;;;;;;;;28002:21;;27940:91;:::o;17903:50::-;;;;;;;;;;;;;;;;;:::o;28479:124::-;28549:7;28576:19;28583:5;28590:4;28576:6;:19::i;:::-;28569:26;;28479:124;;;;:::o;29686:190::-;29778:4;29795:51;29809:10;29821:5;29828:3;29833:6;29841:4;29795:13;:51::i;:::-;29864:4;29857:11;;29686:190;;;;;:::o;94:20::-;;;;;;;;;;;;;:::o;17960:48::-;;;;;;;;;;;;;;;;;:::o;17749:38::-;;;;;;;;;;;;;;;;;;;:::o;18354:16::-;;;;;;;;;;;;;:::o;26500:184::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26595:37;26612:5;26619:12;26595:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26664:12;26643:11;:18;26655:5;26643:18;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;26500:184;;:::o;29132:170::-;29198:4;29215:57;29229:10;29241;29253:3;29258:6;29266:5;29215:13;:57::i;:::-;29290:4;29283:11;;29132:170;;;;:::o;28360:111::-;28417:7;28444:4;;;;;;;;;;;:12;;;28457:5;28444:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;28444:19:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;28444:19:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28444:19:0;;;;;;;;;;;;;;;;28437:26;;28360:111;;;:::o;17463:46::-;17507:2;17463:46;:::o;18250:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;28766:137::-;28841:7;28868:27;28879:5;28886:8;28868:10;:27::i;:::-;28861:34;;28766:137;;;;:::o;27201:163::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27290:28;27306:5;27313:4;27290:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;27352:4;27329:13;:20;27343:5;27329:20;;;;;;;;;;;;;;;:27;;;;27201:163;;:::o;17524:36::-;;;;:::o;17587:43::-;;;;:::o;28039:89::-;28082:7;28109:4;;;;;;;;;;;:9;;;:11;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;28109:11:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;28109:11:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28109:11:0;;;;;;;;;;;;;;;;28102:18;;28039:89;:::o;26692:190::-;360:5;;;;;;;;;;;346:19;;:10;:19;;;338:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26789:39;26808:5;26815:12;26789:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26862:12;26839:13;:20;26853:5;26839:20;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;26692:190;;:::o;23451:3003::-;23594:1;23579:17;;:3;:17;;;;23571:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23658:5;23648:15;;:6;;;;;;;;;;;:15;;;:39;;;;23682:5;;;;;;;;;;;23668:19;;:10;:19;;;23648:39;:67;;;;23705:10;;;;;;;;;;;23691:24;;:10;:24;;;23648:67;23640:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23854:1;23844:6;:11;23840:93;;;23893:3;23877:23;;23886:5;23877:23;;;23898:1;23877:23;;;;;;;;;;;;;;;;;;23915:7;;23840:93;23977:19;23999:17;24010:5;23999:10;:17::i;:::-;23977:39;;24050:6;24035:11;:21;;24027:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24145:9;24136:18;;:5;:18;;;24132:480;;24214:21;24238:28;24249:5;24256:9;24238:10;:28::i;:::-;24214:52;;24375:2;24353:13;:25;24349:252;;24477:6;24460:13;:23;;24452:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24527:58;24541:5;24548:9;24559:25;24577:6;24559:13;:17;;:25;;;;:::i;:::-;24527:13;:58::i;:::-;24349:252;24132:480;;24705:18;24726:6;24705:27;;24743:18;24764:1;24743:22;;24776:12;24791:1;24776:16;;24839:43;24851:5;24858:23;24874:6;24858:11;:15;;:23;;;;:::i;:::-;24839:11;:43::i;:::-;25026:7;:46;;;;25038:34;25061:5;25068:3;25038:22;:34::i;:::-;25037:35;25026:46;25022:1151;;;25089:11;17445:3;25089:25;;25159:1;25133:15;:22;25149:5;25133:22;;;;;;;;;;;;;;;;:27;25129:78;;25185:15;:22;25201:5;25185:22;;;;;;;;;;;;;;;;25179:28;;25129:78;25248:1;25226:13;:18;25240:3;25226:18;;;;;;;;;;;;;;;;:23;;:51;;;;;25274:3;25253:13;:18;25267:3;25253:18;;;;;;;;;;;;;;;;:24;25226:51;25222:114;;;25318:13;:18;25332:3;25318:18;;;;;;;;;;;;;;;;25312:24;;25222:114;25498:20;25514:3;25498:6;:15;;:20;;;;:::i;:::-;25485:33;;25550:1;25540:6;:11;:28;;25558:10;25540:28;;;25554:1;25540:28;25533:35;;25649:36;25664:20;25679:4;25664:10;:14;;:20;;;;:::i;:::-;25649:10;:14;;:36;;;;:::i;:::-;25636:49;;25784:27;25800:10;25784:11;;:15;;:27;;;;:::i;:::-;25770:11;:41;;;;25855:1;25831:39;;25840:5;25831:39;;;25859:10;25831:39;;;;;;;;;;;;;;;;;;25955:19;25985:4;25955:35;;26048:59;26060:11;26073:33;26101:4;26073:23;26084:11;26073:10;:23::i;:::-;:27;;:33;;;;:::i;:::-;26048:11;:59::i;:::-;26143:11;26127:34;;26136:5;26127:34;;;26156:4;26127:34;;;;;;;;;;;;;;;;;;25022:1151;;;26294:6;26254:36;26279:10;26254:20;26269:4;26254:10;:14;;:20;;;;:::i;:::-;:24;;:36;;;;:::i;:::-;:46;26247:54;;;;26349:49;26361:3;26366:31;26386:10;26366:15;26377:3;26366:10;:15::i;:::-;:19;;:31;;;;:::i;:::-;26349:11;:49::i;:::-;26430:3;26414:32;;26423:5;26414:32;;;26435:10;26414:32;;;;;;;;;;;;;;;;;;23451:3003;;;;;;;;;;:::o;20087:188::-;20179:88;20239:8;20209:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;20209:39:0;;;20199:50;;;;;;20259:6;20251:15;;20179:13;20186:5;20179:6;:13::i;:::-;:19;;:88;;;;;:::i;:::-;20087:188;;;:::o;20463:374::-;20561:1;20544:19;;:5;:19;;;;20537:27;;;;20601:51;17378:20;;;;;;;;;;;;;;;;;;;20642:8;20634:17;;20601:13;20608:5;20601:6;:13::i;:::-;:19;;:51;;;;;:::i;:::-;20737:16;:23;20754:5;20737:23;;;;;;;;;;;;;;;;;;;;;;;;;20736:24;:50;;;;;20781:4;20764:22;;:5;:22;;;;20736:50;20732:97;;;20801:4;;;;;;;;;;;:11;;;20813:5;20820:8;20801:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20801:28:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20801:28:0;;;;20732:97;20463:374;;:::o;27628:138::-;27679:7;27706:52;27744:13;;27706:33;27726:12;;27706:15;:19;;:33;;;;:::i;:::-;:37;;:52;;;;:::i;:::-;27699:59;;27628:138;:::o;27821:111::-;27876:4;27923:1;27900:4;;;;;;;;;;;:12;;;27913:5;27900:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;27900:19:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;27900:19:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;27900:19:0;;;;;;;;;;;;;;;;:24;;27893:31;;27821:111;;;:::o;3607:164::-;3665:7;3685:9;3701:1;3697;:5;3685:17;;3726:1;3721;:6;;3713:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3762:1;3755:8;;;3607:164;;;;:::o;22610:833::-;22705:19;22735:4;22705:35;;22751:21;22775:23;22786:11;22775:10;:23::i;:::-;22751:47;;22809:14;22826:33;22838:5;22845:13;22826:11;:33::i;:::-;22809:50;;22895:1;22878:13;:18;;22870:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22959:20;22982:41;17507:2;22982:13;:22;;:41;;;;:::i;:::-;22959:64;;23033:55;23045:5;23052:35;23074:12;23052:17;23063:5;23052:10;:17::i;:::-;:21;;:35;;;;:::i;:::-;23033:11;:55::i;:::-;23126:5;23104:42;;23113:11;23104:42;;;23133:12;23104:42;;;;;;;;;;;;;;;;;;23198:23;23224:31;23242:12;23224:13;:17;;:31;;;;:::i;:::-;23198:57;;23266:60;23278:6;23286:39;23309:15;23286:18;23297:6;23286:10;:18::i;:::-;:22;;:39;;;;:::i;:::-;23266:11;:60::i;:::-;23349:6;23342:31;;;23357:15;23342:31;;;;;;;;;;;;;;;;;;23411:6;23389:46;;23398:11;23389:46;;;23419:15;23389:46;;;;;;;;;;;;;;;;;;22610:833;;;;;;:::o;19548:133::-;19606:7;19641:31;17378:20;;;;;;;;;;;;;;;;;;;19641:13;19648:5;19641:6;:13::i;:::-;:18;;:31;;;;:::i;:::-;19633:40;;19626:47;;19548:133;;;:::o;19887:174::-;19955:7;19990:62;20045:4;20019:31;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;20019:31:0;;;20009:42;;;;;;19990:13;19997:5;19990:6;:13::i;:::-;:18;;:62;;;;:::i;:::-;19982:71;;19975:78;;19887:174;;;;:::o;19689:190::-;19765:7;19800:70;19859:8;19829:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;19829:39:0;;;19819:50;;;;;;19800:13;19807:5;19800:6;:13::i;:::-;:18;;:70;;;;:::i;:::-;19792:79;;19785:86;;19689:190;;;;:::o;3779:141::-;3837:7;3870:1;3865;:6;;3857:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3911:1;3907;:5;3900:12;;3779:141;;;;:::o;21614:153::-;21697:4;21721:13;:20;21735:5;21721:20;;;;;;;;;;;;;;;;;;;;;;;;;:38;;;;21743:11;:16;21755:3;21743:16;;;;;;;;;;;;;;;;;;;;;;;;;21721:38;21714:45;;21614:153;;;;:::o;4312:232::-;4375:7;4408:1;4403;:6;;4395:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4436:9;4452:1;4448;:5;;;;;;4436:17;;4477:1;4472;4468;:5;;;;;;:10;4464:52;;4503:1;4499;:5;4495:9;;4464:52;4535:1;4528:8;;;4312:232;;;;:::o;19436:104::-;19486:7;19529:1;19521:10;;19513:19;;19506:26;;19436:104;;;:::o;2318:569::-;2434:17;2466:21;2479:7;2466:12;:21::i;:::-;2434:54;;2504:37;2534:5;2504:21;:37::i;:::-;2499:86;;2558:15;2565:7;2558:6;:15::i;:::-;2499:86;2638:12;2664:5;2656:19;;2731:5;:11;;;:20;;;;2770:4;2793:6;2690:124;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2690:124:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;2690:124:0;2656:169;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2656:169:0;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;2637:188:0;;;2846:7;2838:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2318:569;;;;;:::o;4165:139::-;4223:7;4256:1;4251;:6;;4243:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4295:1;4291;:5;;;;;;4284:12;;4165:139;;;;:::o;22005:597::-;22075:7;22140:17;22160:29;22182:6;22160:21;:29::i;:::-;22140:49;;22254:13;22270:24;22277:5;22284:9;22270:6;:24::i;:::-;22254:40;;22305:38;22315:5;22322:9;22341:1;22333:5;:9;22305;:38::i;:::-;22387:13;22403:4;;;;;;;;;;;:9;;;:11;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22403:11:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;22403:11:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;22403:11:0;;;;;;;;;;;;;;;;22387:27;;22442:1;22433:5;:10;;22425:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22535:4;;;;;;;;;;;:14;;;22550:43;22558:5;22565;22572:9;22591:1;22583:5;:9;22550:7;:43::i;:::-;22535:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22535:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;22535:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;22535:59:0;;;;;;;;;;;;;;;;22528:66;;;;;22005:597;;;;:::o;2895:610::-;2988:7;3008:17;3040:21;3053:7;3040:12;:21::i;:::-;3008:54;;3078:37;3108:5;3078:21;:37::i;:::-;3073:88;;3147:1;3139:10;;3132:17;;;;;3073:88;3214:12;3228:17;3257:5;3249:25;;3330:5;:10;;;:19;;;;3368:4;3289:98;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3289:98:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;3289:98:0;3249:149;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3249:149:0;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;3213:185:0;;;;3419:7;3411:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3481:4;3470:27;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3470:27:0;;;;;;;;;;;;;;;;3463:34;;;;;2895:610;;;;;:::o;1625:439::-;1686:7;1841:4;1836:10;;1881:4;1913:7;1957:30;;;;;;;;:::i;:::-;41:4:-1;34:5;30:16;25:3;21:26;14:5;7:41;87:2;83:7;78:2;73:3;69:12;65:26;61:2;54:38;1957:30:0;1947:41;;;;;;1793:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1793:218:0;;;1761:269;;;;;;1735:310;;1706:350;;1625:439;;;:::o;1178:323::-;1236:4;1253:16;1355:5;1343:18;1331:30;;1400:1;1392:10;;1380:8;:22;;:113;;;;;1426:66;1418:75;;1406:8;:87;;1380:113;1373:120;;;1178:323;;;:::o;2072:238::-;2124:21;2148:30;;;;;;;;:::i;:::-;41:4:-1;34:5;30:16;25:3;21:26;14:5;7:41;87:2;83:7;78:2;73:3;69:12;65:26;61:2;54:38;2148:30:0;2124:54;;2292:7;2281:8;2275:15;2268:4;2258:8;2254:19;2251:1;2243:57;2239:62;2237:66;;:::o;4950:270::-;5014:7;5033:15;5056:2;5033:26;;5070:12;5085:5;5070:20;;5103:83;5129:2;5121:10;;;;;;;;;5146:9;;;;;;;5183:1;5175:4;:9;;5103:83;;5205:7;5198:14;;;;4950:270;;;:::o;20283:172::-;20367:80;20423:4;20397:31;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;20397:31:0;;;20387:42;;;;;;20439:6;20431:15;;20367:13;20374:5;20367:6;:13::i;:::-;:19;;:80;;;;;:::i;:::-;20283:172;;;:::o;21775:222::-;21868:7;21888:12;21938:3;21943;21948;21921:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;21921:31:0;;;21911:42;;;;;;21903:51;;21888:66;;21987:1;21980:4;:8;21972:4;:17;;;;;;21965:24;;;21775:222;;;;;;:::o;16710:13169::-;;;;;;;;:::o;:::-;;;;;;;;:::o

Swarm Source

bzzr://0d5a1e4888cf5ae6d37478eaa75fa6bd7e038bedac38647aa664b870bef87922
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.