5 txs
6 calls
constructor
constructor(address defaultAdmin, address wTXCAdmin)
functions
burnedCount
viewfunction burnedCount() view returns (uint256)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getTXCDepositAddresses
viewfunction getTXCDepositAddresses() view returns (string[])
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
mintedCount
viewfunction mintedCount() view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
txcHashesBurned
viewfunction txcHashesBurned(uint256) view returns (bytes32)
txcHashesMinted
viewfunction txcHashesMinted(uint256) view returns (bytes32)
WTXC_ADMIN_ROLE
viewfunction WTXC_ADMIN_ROLE() view returns (bytes32)
wTXCAddress
viewfunction wTXCAddress() view returns (address)
addTXCDepositAddress
nonpayablefunction addTXCDepositAddress(string _address)
burn
nonpayablefunction burn(uint256 _amount, bytes32 _txcHash)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
mint
nonpayablefunction mint(address _receiver, uint256 _amount, bytes32 _txcHash)
reassignWTXCOwner
nonpayablefunction reassignWTXCOwner(address _newOwner)
removeTXCDepositAddress
nonpayablefunction removeTXCDepositAddress(uint256 _index)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setWTXC
nonpayablefunction setWTXC(address wTXC)
setWTXCAdmin
nonpayablefunction setWTXCAdmin(address _newAdmin)
withdrawWTXC
nonpayablefunction withdrawWTXC(address _to, uint256 _amount)
events
BackAddressChanged
event BackAddressChanged(string[] addresses)
Burn
event Burn(address indexed spender, uint256 amount, bytes32 txcHash)
Mint
event Mint(address indexed receiver, uint256 amount, bytes32 txcHash)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
WithdrawWTXC
event WithdrawWTXC(address indexed to, uint256 amount)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
TXCHashUsed
error TXCHashUsed(bytes32 txcHash)
creation bytecode
0x608060405234801561001057600080fd5b5060405161357f38038061357f8339818101604052810190610032919061036f565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036100a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161009890610432565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610110576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610107906104c4565b60405180910390fd5b6101236000801b8361019d60201b60201c565b506101547fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e8261019d60201b60201c565b5080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506104e4565b60006101af838361029a60201b60201c565b61028f57600160008085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061022c61030460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050610294565b600090505b92915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061033c82610311565b9050919050565b61034c81610331565b811461035757600080fd5b50565b60008151905061036981610343565b92915050565b600080604083850312156103865761038561030c565b5b60006103948582860161035a565b92505060206103a58582860161035a565b9150509250929050565b600082825260208201905092915050565b7f44656661756c742061646d696e2063616e6e6f74206265207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061041c6024836103af565b9150610427826103c0565b604082019050919050565b6000602082019050818103600083015261044b8161040f565b9050919050565b7f436f6e74726f6c6c65722063616e6e6f74206265207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006104ae6021836103af565b91506104b982610452565b604082019050919050565b600060208201905081810360008301526104dd816104a1565b9050919050565b61308c806104f36000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80637cefcc52116100b8578063b6c6551f1161007c578063b6c6551f1461035f578063bcf64e051461038f578063cf721b15146103ab578063d0bc7563146103c9578063d547741f146103e7578063d8ad482b1461040357610142565b80637cefcc52146102bb57806391d14854146102d95780639949aad5146103095780639a96528714610325578063a217fddf1461034157610142565b806336568abe1161010a57806336568abe146101fd57806341de3efe1461021957806344baea6d1461024957806359163012146102655780636f1468371461028357806374b6cc501461029f57610142565b806301ffc9a7146101475780631e458bee14610177578063248a9ca3146101935780632e9450b6146101c35780632f2ff15d146101e1575b600080fd5b610161600480360381019061015c9190611b61565b61041f565b60405161016e9190611ba9565b60405180910390f35b610191600480360381019061018c9190611c8e565b610499565b005b6101ad60048036038101906101a89190611ce1565b610711565b6040516101ba9190611d1d565b60405180910390f35b6101cb610730565b6040516101d89190611d47565b60405180910390f35b6101fb60048036038101906101f69190611d62565b61075a565b005b61021760048036038101906102129190611d62565b61077c565b005b610233600480360381019061022e9190611da2565b6107f7565b6040516102409190611d1d565b60405180910390f35b610263600480360381019061025e9190611f15565b61080f565b005b61026d61096a565b60405161027a919061209f565b60405180910390f35b61029d600480360381019061029891906120c1565b610a43565b005b6102b960048036038101906102b49190611da2565b610d65565b005b6102c3610ea7565b6040516102d09190612110565b60405180910390f35b6102f360048036038101906102ee9190611d62565b610ead565b6040516103009190611ba9565b60405180910390f35b610323600480360381019061031e919061212b565b610f17565b005b61033f600480360381019061033a919061212b565b6110b5565b005b61034961125e565b6040516103569190611d1d565b60405180910390f35b61037960048036038101906103749190611da2565b611265565b6040516103869190611d1d565b60405180910390f35b6103a960048036038101906103a49190612158565b61127d565b005b6103b3611563565b6040516103c09190612110565b60405180910390f35b6103d1611569565b6040516103de9190611d1d565b60405180910390f35b61040160048036038101906103fc9190611d62565b61158d565b005b61041d6004803603810190610418919061212b565b6115af565b005b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610492575061049182611701565b5b9050919050565b7fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e6104c38161176b565b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610554576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054b906121f5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036105c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ba90612261565b60405180910390fd5b60008311610606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105fd906122cd565b60405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166340c10f1985856040518363ffffffff1660e01b81526004016106639291906122ed565b600060405180830381600087803b15801561067d57600080fd5b505af1158015610691573d6000803e3d6000fd5b505050506106a360015483600161177f565b8373ffffffffffffffffffffffffffffffffffffffff167f3dec94b8abc8f801eaade1616d3aadd3114b556a284267905e0a053b2df3989284846040516106eb929190612316565b60405180910390a2600160008154809291906107069061236e565b919050555050505050565b6000806000838152602001908152602001600020600101549050919050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61076382610711565b61076c8161176b565b610776838361185c565b50505050565b61078461194d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146107e8576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107f28282611955565b505050565b60046020528060005260406000206000915090505481565b6000801b61081c8161176b565b6000825111610860576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085790612402565b60405180910390fd5b60005b6007805490508110156108f85782805190602001206007828154811061088c5761088b612422565b5b906000526020600020016040516108a39190612554565b6040518091039020036108eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e2906125b7565b60405180910390fd5b8080600101915050610863565b5060078290806001815401808255809150506001900390600052602060002001600090919091909150908161092d9190612783565b507fff9318c55ed16f06b737a08695139796aab09ff1eb1d8563fa516e3397ac01f7600760405161095e919061298e565b60405180910390a15050565b60606007805480602002602001604051908101604052809291908181526020016000905b82821015610a3a5783829060005260206000200180546109ad90612480565b80601f01602080910402602001604051908101604052809291908181526020018280546109d990612480565b8015610a265780601f106109fb57610100808354040283529160200191610a26565b820191906000526020600020905b815481529060010190602001808311610a0957829003601f168201915b50505050508152602001906001019061098e565b50505050905090565b6000801b610a508161176b565b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610ae1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad8906129fc565b60405180910390fd5b60008211610b24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1b906122cd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8a90612a68565b60405180910390fd5b81600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610bef9190611d47565b602060405180830381865afa158015610c0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c309190612a9d565b1015610c71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6890612b16565b60405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401610cce9291906122ed565b6020604051808303816000875af1158015610ced573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d119190612b62565b508273ffffffffffffffffffffffffffffffffffffffff167f6f93b67a2c37738fe488188c76a11a606f7b92309ad23308d81e1c264db7dfa783604051610d589190612110565b60405180910390a2505050565b6000801b610d728161176b565b6007805490508210610db9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db090612bdb565b60405180910390fd5b60008290505b6001600780549050610dd19190612bfb565b811015610e3a576007600182610de79190612c2f565b81548110610df857610df7612422565b5b9060005260206000200160078281548110610e1657610e15612422565b5b906000526020600020019081610e2c9190612c8e565b508080600101915050610dbf565b506007805480610e4d57610e4c612d76565b5b600190038181906000526020600020016000610e699190611a98565b90557fff9318c55ed16f06b737a08695139796aab09ff1eb1d8563fa516e3397ac01f76007604051610e9b919061298e565b60405180910390a15050565b60025481565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b610f248161176b565b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fac906121f5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611024576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101b90612df1565b60405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b836040518263ffffffff1660e01b815260040161107f9190611d47565b600060405180830381600087803b15801561109957600080fd5b505af11580156110ad573d6000803e3d6000fd5b505050505050565b6000801b6110c28161176b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611131576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161112890612e5d565b60405180910390fd5b6000151561115f7fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e84610ead565b1515146111a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119890612ec9565b60405180910390fd5b6111ed7fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611955565b506112187fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e8361185c565b5081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000801b81565b60036020528060005260406000206000915090505481565b7fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e6112a78161176b565b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132f906121f5565b60405180910390fd5b6000831161137b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611372906122cd565b60405180910390fd5b82600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016113d79190611d47565b602060405180830381865afa1580156113f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114189190612a9d565b1015611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090612f35565b60405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639dc29fac30856040518363ffffffff1660e01b81526004016114b69291906122ed565b600060405180830381600087803b1580156114d057600080fd5b505af11580156114e4573d6000803e3d6000fd5b505050506114f660025483600061177f565b3073ffffffffffffffffffffffffffffffffffffffff167fc6c4132f6250531f66c30d176444d900432e0ff7bb9e3e4ef8c8b33670218419848460405161153e929190612316565b60405180910390a2600260008154809291906115599061236e565b9190505550505050565b60015481565b7fe4b057ff3d36537aef57752a0046d334e5562f3dc012c24c34e3bded2db9eb9e81565b61159682610711565b61159f8161176b565b6115a98383611955565b50505050565b6000801b6115bc8161176b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162290612fa1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b39061300d565b60405180910390fd5b81600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b61177c8161177761194d565b611a47565b50565b6000801b82146117ef576008600083815260200190815260200160002060009054906101000a900460ff161582906117ed576040517f8aeb56670000000000000000000000000000000000000000000000000000000081526004016117e49190611d1d565b60405180910390fd5b505b80156118125781600360008581526020019081526020016000208190555061182b565b8160046000858152602001908152602001600020819055505b60016008600084815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b60006118688383610ead565b61194257600160008085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506118df61194d565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019050611947565b600090505b92915050565b600033905090565b60006119618383610ead565b15611a3c57600080600085815260200190815260200160002060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506119d961194d565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a460019050611a41565b600090505b92915050565b611a518282610ead565b611a945780826040517fe2517d3f000000000000000000000000000000000000000000000000000000008152600401611a8b92919061302d565b60405180910390fd5b5050565b508054611aa490612480565b6000825580601f10611ab65750611ad5565b601f016020900490600052602060002090810190611ad49190611ad8565b5b50565b5b80821115611af1576000816000905550600101611ad9565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611b3e81611b09565b8114611b4957600080fd5b50565b600081359050611b5b81611b35565b92915050565b600060208284031215611b7757611b76611aff565b5b6000611b8584828501611b4c565b91505092915050565b60008115159050919050565b611ba381611b8e565b82525050565b6000602082019050611bbe6000830184611b9a565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611bef82611bc4565b9050919050565b611bff81611be4565b8114611c0a57600080fd5b50565b600081359050611c1c81611bf6565b92915050565b6000819050919050565b611c3581611c22565b8114611c4057600080fd5b50565b600081359050611c5281611c2c565b92915050565b6000819050919050565b611c6b81611c58565b8114611c7657600080fd5b50565b600081359050611c8881611c62565b92915050565b600080600060608486031215611ca757611ca6611aff565b5b6000611cb586828701611c0d565b9350506020611cc686828701611c43565b9250506040611cd786828701611c79565b9150509250925092565b600060208284031215611cf757611cf6611aff565b5b6000611d0584828501611c79565b91505092915050565b611d1781611c58565b82525050565b6000602082019050611d326000830184611d0e565b92915050565b611d4181611be4565b82525050565b6000602082019050611d5c6000830184611d38565b92915050565b60008060408385031215611d7957611d78611aff565b5b6000611d8785828601611c79565b9250506020611d9885828601611c0d565b9150509250929050565b600060208284031215611db857611db7611aff565b5b6000611dc684828501611c43565b91505092915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611e2282611dd9565b810181811067ffffffffffffffff82111715611e4157611e40611dea565b5b80604052505050565b6000611e54611af5565b9050611e608282611e19565b919050565b600067ffffffffffffffff821115611e8057611e7f611dea565b5b611e8982611dd9565b9050602081019050919050565b82818337600083830152505050565b6000611eb8611eb384611e65565b611e4a565b905082815260208101848484011115611ed457611ed3611dd4565b5b611edf848285611e96565b509392505050565b600082601f830112611efc57611efb611dcf565b5b8135611f0c848260208601611ea5565b91505092915050565b600060208284031215611f2b57611f2a611aff565b5b600082013567ffffffffffffffff811115611f4957611f48611b04565b5b611f5584828501611ee7565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611fc4578082015181840152602081019050611fa9565b60008484015250505050565b6000611fdb82611f8a565b611fe58185611f95565b9350611ff5818560208601611fa6565b611ffe81611dd9565b840191505092915050565b60006120158383611fd0565b905092915050565b6000602082019050919050565b600061203582611f5e565b61203f8185611f69565b93508360208202850161205185611f7a565b8060005b8581101561208d578484038952815161206e8582612009565b94506120798361201d565b925060208a01995050600181019050612055565b50829750879550505050505092915050565b600060208201905081810360008301526120b9818461202a565b905092915050565b600080604083850312156120d8576120d7611aff565b5b60006120e685828601611c0d565b92505060206120f785828601611c43565b9150509250929050565b61210a81611c22565b82525050565b60006020820190506121256000830184612101565b92915050565b60006020828403121561214157612140611aff565b5b600061214f84828501611c0d565b91505092915050565b6000806040838503121561216f5761216e611aff565b5b600061217d85828601611c43565b925050602061218e85828601611c79565b9150509250929050565b600082825260208201905092915050565b7f77545843206973206e6f74207365740000000000000000000000000000000000600082015250565b60006121df600f83612198565b91506121ea826121a9565b602082019050919050565b6000602082019050818103600083015261220e816121d2565b9050919050565b7f52656365697665722063616e6e6f74206265207a65726f206164647265737300600082015250565b600061224b601f83612198565b915061225682612215565b602082019050919050565b6000602082019050818103600083015261227a8161223e565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e207a65726f600082015250565b60006122b7602083612198565b91506122c282612281565b602082019050919050565b600060208201905081810360008301526122e6816122aa565b9050919050565b60006040820190506123026000830185611d38565b61230f6020830184612101565b9392505050565b600060408201905061232b6000830185612101565b6123386020830184611d0e565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061237982611c22565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123ab576123aa61233f565b5b600182019050919050565b7f416464726573732063616e6e6f7420626520656d707479000000000000000000600082015250565b60006123ec601783612198565b91506123f7826123b6565b602082019050919050565b6000602082019050818103600083015261241b816123df565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061249857607f821691505b6020821081036124ab576124aa612451565b5b50919050565b600081905092915050565b60008190508160005260206000209050919050565b600081546124de81612480565b6124e881866124b1565b9450600182166000811461250357600181146125185761254b565b60ff198316865281151582028601935061254b565b612521856124bc565b60005b8381101561254357815481890152600182019150602081019050612524565b838801955050505b50505092915050565b600061256082846124d1565b915081905092915050565b7f4164647265737320616c72656164792065786973747300000000000000000000600082015250565b60006125a1601683612198565b91506125ac8261256b565b602082019050919050565b600060208201905081810360008301526125d081612594565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026126397fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826125fc565b61264386836125fc565b95508019841693508086168417925050509392505050565b6000819050919050565b600061268061267b61267684611c22565b61265b565b611c22565b9050919050565b6000819050919050565b61269a83612665565b6126ae6126a682612687565b848454612609565b825550505050565b600090565b6126c36126b6565b6126ce818484612691565b505050565b5b818110156126f2576126e76000826126bb565b6001810190506126d4565b5050565b601f82111561273757612708816125d7565b612711846125ec565b81016020851015612720578190505b61273461272c856125ec565b8301826126d3565b50505b505050565b600082821c905092915050565b600061275a6000198460080261273c565b1980831691505092915050565b60006127738383612749565b9150826002028217905092915050565b61278c82611f8a565b67ffffffffffffffff8111156127a5576127a4611dea565b5b6127af8254612480565b6127ba8282856126f6565b600060209050601f8311600181146127ed57600084156127db578287015190505b6127e58582612767565b86555061284d565b601f1984166127fb866125d7565b60005b82811015612823578489015182556001820191506020850194506020810190506127fe565b86831015612840578489015161283c601f891682612749565b8355505b6001600288020188555050505b505050505050565b600081549050919050565b60008190508160005260206000209050919050565b6000815461288281612480565b61288c8186611f95565b945060018216600081146128a757600181146128bd576128f0565b60ff1983168652811515602002860193506128f0565b6128c6856125d7565b60005b838110156128e8578154818901526001820191506020810190506128c9565b808801955050505b50505092915050565b60006129058383612875565b905092915050565b6000600182019050919050565b600061292582612855565b61292f8185611f69565b93508360208202850161294185612860565b8060005b8581101561297c5784840389528161295d85826128f9565b94506129688361290d565b925060208a01995050600181019050612945565b50829750879550505050505092915050565b600060208201905081810360008301526129a8818461291a565b905092915050565b7f57726170706564545843206973206e6f74207365740000000000000000000000600082015250565b60006129e6601583612198565b91506129f1826129b0565b602082019050919050565b60006020820190508181036000830152612a15816129d9565b9050919050565b7f43616e6e6f7420776974686472617720746f207a65726f206164647265737300600082015250565b6000612a52601f83612198565b9150612a5d82612a1c565b602082019050919050565b60006020820190508181036000830152612a8181612a45565b9050919050565b600081519050612a9781611c2c565b92915050565b600060208284031215612ab357612ab2611aff565b5b6000612ac184828501612a88565b91505092915050565b7f496e73756666696369656e742062616c616e636520746f207769746864726177600082015250565b6000612b00602083612198565b9150612b0b82612aca565b602082019050919050565b60006020820190508181036000830152612b2f81612af3565b9050919050565b612b3f81611b8e565b8114612b4a57600080fd5b50565b600081519050612b5c81612b36565b92915050565b600060208284031215612b7857612b77611aff565b5b6000612b8684828501612b4d565b91505092915050565b7f496e646578206f7574206f6620626f756e647300000000000000000000000000600082015250565b6000612bc5601383612198565b9150612bd082612b8f565b602082019050919050565b60006020820190508181036000830152612bf481612bb8565b9050919050565b6000612c0682611c22565b9150612c1183611c22565b9250828203905081811115612c2957612c2861233f565b5b92915050565b6000612c3a82611c22565b9150612c4583611c22565b9250828201905080821115612c5d57612c5c61233f565b5b92915050565b600081549050612c7281612480565b9050919050565b60008190508160005260206000209050919050565b818103612c9c575050612d74565b612ca582612c63565b67ffffffffffffffff811115612cbe57612cbd611dea565b5b612cc88254612480565b612cd38282856126f6565b6000601f831160018114612d025760008415612cf0578287015490505b612cfa8582612767565b865550612d6d565b601f198416612d1087612c79565b9650612d1b866125d7565b60005b82811015612d4357848901548255600182019150600185019450602081019050612d1e565b86831015612d605784890154612d5c601f891682612749565b8355505b6001600288020188555050505b5050505050505b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e6577206f776e65722063616e6e6f74206265207a65726f2061646472657373600082015250565b6000612ddb602083612198565b9150612de682612da5565b602082019050919050565b60006020820190508181036000830152612e0a81612dce565b9050919050565b7f4e65772061646d696e2063616e6e6f74206265207a65726f2061646472657373600082015250565b6000612e47602083612198565b9150612e5282612e11565b602082019050919050565b60006020820190508181036000830152612e7681612e3a565b9050919050565b7f4164647265737320697320616c7265616479206120775458432061646d696e00600082015250565b6000612eb3601f83612198565b9150612ebe82612e7d565b602082019050919050565b60006020820190508181036000830152612ee281612ea6565b9050919050565b7f496e73756666696369656e742062616c616e636520746f206275726e00000000600082015250565b6000612f1f601c83612198565b9150612f2a82612ee9565b602082019050919050565b60006020820190508181036000830152612f4e81612f12565b9050919050565b7f775458432063616e6e6f74206265207a65726f20616464726573730000000000600082015250565b6000612f8b601b83612198565b9150612f9682612f55565b602082019050919050565b60006020820190508181036000830152612fba81612f7e565b9050919050565b7f7754584320697320616c72656164792073657400000000000000000000000000600082015250565b6000612ff7601383612198565b915061300282612fc1565b602082019050919050565b6000602082019050818103600083015261302681612fea565b9050919050565b60006040820190506130426000830185611d38565b61304f6020830184611d0e565b939250505056fea2646970667358221220b907320bfabd126fc7bdcd18c1548abaff9044698564eb6c0cb6a28c38dd30bd64736f6c634300081e0033000000000000000000000000f8a8f04b0a063fc3cd19aa9e0cacbd66fdf7ae57000000000000000000000000feb987f1f69757e379029bbae815fe7e325cb8cf