0 txs
257 calls
constructor
No constructor.
functions
dcbAgreement
viewfunction dcbAgreement() view returns (uint8 minTier, address token, uint32 createDate, uint32 startDate, uint32 endDate, uint256 totalTokenOnSale, uint256 hardcap, uint256 totalInvestFund)
durations
viewfunction durations(uint256) view returns (uint32)
getAllocationForShares
viewfunction getAllocationForShares(uint256 _shares) view returns (uint256)
getInfo
viewfunction getInfo() view returns (uint256, uint256, uint256, uint256, uint256, uint256)
getParticipants
viewfunction getParticipants() view returns (address[])
getRegisteredUsers
viewfunction getRegisteredUsers() view returns (address[])
getUserAllocation
viewfunction getUserAllocation(address _address, bool _isGa) view returns (uint256)
investment
viewfunction investment() view returns (address)
layerZero
viewfunction layerZero() view returns (address)
saleToken
viewfunction saleToken() view returns (address)
tierMigratorAddr
viewfunction tierMigratorAddr() view returns (address)
totalShares
viewfunction totalShares() view returns (uint256)
userAllocation
viewfunction userAllocation(address) view returns (uint8 tier, uint8 multi, uint256 shares, uint256 deposits, bool active)
userInvestment
viewfunction userInvestment(address _address) view returns (uint256 investAmount, uint256 joinDate)
VERSION
viewfunction VERSION() view returns (uint8)
vesting
viewfunction vesting() view returns (address)
fundAgreement
nonpayablefunction fundAgreement(uint256 _investFund) returns (bool)
initialize
nonpayablefunction initialize(tuple p)
lzReceive
nonpayablefunction lzReceive(uint16 _id, bytes _srcAddress, uint64, bytes data)
registerByManager
nonpayablefunction registerByManager(address[] _users, uint8[] _tierOfUser, uint8[] _multiOfUser, uint256[] _depositsOfUser)
registerForAllocation
nonpayablefunction registerForAllocation(address _user, uint8 _tier, uint8 _multi, uint256 _shares) returns (bool)
setParams
nonpayablefunction setParams(tuple p)
setToken
nonpayablefunction setToken(address _token)
events
BulkUserRegustered
event BulkUserRegustered(address[] users)
CreateAgreement
event CreateAgreement((uint8 minTier, uint16 nativeChainId, uint32 startDate, address investmentAddr, address tierMigratorAddr, address vestingAddr, address paymentToken, address saleTokenAddr, address layerZeroAddr, uint256 totalTokenOnSale, uint256 hardcap, uint32[3] durations))
EditAgreement
event EditAgreement((uint8 minTier, uint16 nativeChainId, uint32 startDate, address investmentAddr, address tierMigratorAddr, address vestingAddr, address paymentToken, address saleTokenAddr, address layerZeroAddr, uint256 totalTokenOnSale, uint256 hardcap, uint32[3] durations) p)
Initialized
event Initialized(uint8 version)
NewInvestment
event NewInvestment(address wallet, uint256 amount)
UserNotRegistered
event UserNotRegistered(address user)
UserRegistered
event UserRegistered(address user)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b5060018055612ba3806100246000396000f3fe608060405234801561001057600080fd5b506004361061018c5760003560e01c80635ef95c9c116100e357806396b1f6b51161008c578063cd3c272011610066578063cd3c272014610502578063e985e36714610515578063ffa1ad741461052857600080fd5b806396b1f6b5146104b4578063bc20a7af146104c7578063cc648c02146104ef57600080fd5b80636da44f19116100bd5780636da44f19146104475780637073c0721461045a5780638733cfd31461046257600080fd5b80635ef95c9c1461035c57806361e2928c1461036f57806361f8aa451461038257600080fd5b80633a98ef3911610145578063498824eb1161011f578063498824eb146102ba5780635a9b0b89146102cd5780635aa68ac01461034757600080fd5b80633a98ef391461026557806344c63eec1461027c57806345fbfbca146102a757600080fd5b8063144fa6d711610176578063144fa6d7146101ce5780631696ce00146101e15780631a0cb3a7146101f457600080fd5b80621d3567146101915780630a888fe4146101a6575b600080fd5b6101a461019f3660046124db565b610542565b005b6101b96101b4366004612592565b610789565b60405190151581526020015b60405180910390f35b6101a46101dc3660046125c2565b610ebe565b6101a46101ef3660046125e4565b610f52565b6102366102023660046125c2565b600e60205260009081526040902080546001820154600283015460039093015460ff80841694610100909404811693911685565b6040805160ff96871681529590941660208601529284019190915260608301521515608082015260a0016101c5565b61026e600f5481565b6040519081526020016101c5565b60055461028f906001600160a01b031681565b6040516001600160a01b0390911681526020016101c5565b60045461028f906001600160a01b031681565b6101b96102c836600461260e565b611564565b600954600654600754600a546002546040805195865263ffffffff7501000000000000000000000000000000000000000000860481166020880152790100000000000000000000000000000000000000000000000000909504851690860152929091166060840152608083015260a082015260c0016101c5565b61034f61181f565b6040516101c59190612659565b60105461028f906001600160a01b031681565b6101a461037d3660046126f2565b611881565b600654600754600854600954600a546103f39460ff8116946001600160a01b036101008304169463ffffffff75010000000000000000000000000000000000000000008404811695790100000000000000000000000000000000000000000000000000909404811694921692909188565b6040805160ff90991689526001600160a01b03909716602089015263ffffffff9586169688019690965292841660608701529216608085015260a084019190915260c083015260e0820152610100016101c5565b61026e6104553660046127c7565b611d56565b61034f611dd7565b61049f6104703660046125c2565b6001600160a01b03166000908152600b6020526040902060018101549054909161010090910463ffffffff1690565b604080519283526020830191909152016101c5565b600d5461028f906001600160a01b031681565b6104da6104d5366004612592565b611e37565b60405163ffffffff90911681526020016101c5565b61026e6104fd366004612592565b611e67565b6101a46105103660046125e4565b611e95565b600c5461028f906001600160a01b031681565b610530600181565b60405160ff90911681526020016101c5565b60105461ffff86811674010000000000000000000000000000000000000000909204161480156105df57506010546040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606092831b811660208301523090921b90911660348201526048016040516020818303038152906040528051906020012084846040516105d59291906127fe565b6040518091039020145b80156105f55750600d546001600160a01b031633145b6106465760405162461bcd60e51b815260206004820152600e60248201527f496e76616c696420736f7572636500000000000000000000000000000000000060448201526064015b60405180910390fd5b6014810151603482015160358301516036840151604080516001600160a01b0386166024820152600094851a6044820181905293851a6064820181905260848083018590528351808403909101815260a490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f498824eb0000000000000000000000000000000000000000000000000000000017905291519394919330916106f59161280e565b6000604051808303816000865af19150503d8060008114610732576040519150601f19603f3d011682016040523d82523d6000602084013e610737565b606091505b505090508061077d576040516001600160a01b03861681527fae2730ca58fd7a6924c6528ced555eba449bd12e5d3a5226781fb2d51a390bfd9060200160405180910390a15b50505050505050505050565b60006107936122c7565b336000908152600e602052604090206003015460ff166107f55760405162461bcd60e51b815260206004820152601360248201527f55736572206e6f74207265676973746572656400000000000000000000000000604482015260640161063d565b600854600c546005546040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801561085d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610881919061283d565b10156108cf5760405162461bcd60e51b815260206004820181905260248201527f546f6b656e73206e6f742072656365697665642066726f6d2070726f6a656374604482015260640161063d565b6000821161091f5760405162461bcd60e51b815260206004820152601360248201527f596f752063616e6e6f7420696e76657374203000000000000000000000000000604482015260640161063d565b60065463ffffffff79010000000000000000000000000000000000000000000000000090910481164290911610156109995760405162461bcd60e51b815260206004820152601560248201527f43726f776466756e64696e67206e6f74206f70656e0000000000000000000000604482015260640161063d565b60075463ffffffff90811642909116106109f55760405162461bcd60e51b815260206004820152601260248201527f43726f776466756e64696e6720656e6465640000000000000000000000000000604482015260640161063d565b600954600a54610a06908490612885565b1115610a545760405162461bcd60e51b815260206004820152601360248201527f4861726463617020616c7265616479206d657400000000000000000000000000604482015260640161063d565b601154600654600091600191610a909163ffffffff908116917901000000000000000000000000000000000000000000000000009004166128c7565b63ffffffff164263ffffffff161015610aac5760019150610b17565b60115460065463ffffffff6401000000008304811692610aee9290821691790100000000000000000000000000000000000000000000000000909104166128c7565b610af891906128c7565b63ffffffff164263ffffffff161015610b1357506002610b17565b50600a5b6000610b233384611d56565b9050610b2f82826128eb565b336000908152600b6020526040902060010154610b4d908790612885565b1115610b9b5760405162461bcd60e51b815260206004820152601e60248201527f416d6f756e742067726561746572207468616e20616c6c6f636174696f6e0000604482015260640161063d565b336000908152600b602052604081205460ff169003610c8e57336000818152600b60205260408120805460018083018a90557fffffffffffffff000000000000000000000000000000000000000000000000ff9091166501000000000085027fffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000ff16176101004263ffffffff16021760ff191681179091556002805491820181559091527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055610cc0565b336000908152600b6020526040902060010154610cac908690612885565b336000908152600b60205260409020600101555b600a54610cce908690612885565b600a55336000908152600b6020526040812060010154600954600854919291610cf790846128eb565b610d019190612902565b905060008111610d535760405162461bcd60e51b815260206004820152601260248201527f546f6b656e732063616e6e6f7420626520300000000000000000000000000000604482015260640161063d565b600480546040517f4db80fb70000000000000000000000000000000000000000000000000000000081523392810192909252306024830152604482018490526001600160a01b031690634db80fb7906064016020604051808303816000875af1158015610dc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de8919061293d565b506005546040517f3e5ce38500000000000000000000000000000000000000000000000000000000815233600482015260248101839052604481018490526001600160a01b0390911690633e5ce38590606401600060405180830381600087803b158015610e5557600080fd5b505af1158015610e69573d6000803e3d6000fd5b505060408051338152602081018b90527f8a7eaad672c52c2966090bc8f26a335bf67d8d1d442189f2f7e430c26aab99ec935001905060405180910390a1600195505050505050610eb960018055565b919050565b6004546001600160a01b03163314610f185760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c7920666163746f72790000000000000000000000000000000000000000604482015260640161063d565b600c80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b600054610100900460ff1615808015610f725750600054600160ff909116105b80610f8c5750303b158015610f8c575060005460ff166001145b610ffe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161063d565b6000805460ff19166001179055801561103e57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b600082610120013511801561105857506000826101400135115b8015611079575042611070606084016040850161296e565b63ffffffff1610155b6110c55760405162461bcd60e51b815260206004820152600d60248201527f496e76616c696420696e70757400000000000000000000000000000000000000604482015260640161063d565b6110d560808301606084016125c2565b600480547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039290921691909117905561111d60c0830160a084016125c2565b600580547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055611166610100830160e084016125c2565b600c80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556111b0610120830161010084016125c2565b600d80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556111f860a08301608084016125c2565b601080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556112406040830160208401612989565b6010805461ffff9290921674010000000000000000000000000000000000000000027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff90921691909117905561129d601161016084016003612320565b5060006112b26101c084016101a0850161296e565b6112c46101a08501610180860161296e565b6112d66101808601610160870161296e565b6112e091906128c7565b6112ea91906128c7565b905060008163ffffffff16116113425760405162461bcd60e51b815260206004820152601060248201527f496e76616c6964206475726174696f6e00000000000000000000000000000000604482015260640161063d565b610120830135600855610140830135600955600680547fffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000004263ffffffff16021790556113ac606084016040850161296e565b6006805463ffffffff92909216790100000000000000000000000000000000000000000000000000027fffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffff90921691909117905580611410606085016040860161296e565b61141a91906128c7565b600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9290921691909117905561145f60e0840160c085016125c2565b600680546001600160a01b0392909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff9092169190911790556000600a556114af60208401846129a4565b6006805460ff191660ff929092169190911790556040517fbc2b52a806e920b74618b3ba61bfa0254b9d55990892e93b9654a6bde8ce82f8906114f39085906129f6565b60405180910390a150801561156057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15b5050565b60003330148061157e57506010546001600160a01b031633145b6115ca5760405162461bcd60e51b815260206004820152600e60248201527f496e76616c69642073656e646572000000000000000000000000000000000000604482015260640161063d565b6001600160a01b0385166000908152600e602052604090206001810154600290910154600654790100000000000000000000000000000000000000000000000000900463ffffffff16421080159061166a57821561166a5760405162461bcd60e51b815260206004820152601960248201527f416c7265616479207265676973746572656420666f7220474100000000000000604482015260640161063d565b848214611690576001600160a01b0388166000908152600e602052604090206002018590555b80806116a4575060065460ff908116908816105b156116ae57600094505b6001600160a01b0388166000908152600e602052604090206003015460ff1661173557600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a161790555b6001600160a01b0388166000908152600e6020526040902060038101805460ff19166001179055805460ff888116610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909216908a16171790558285146117d5576001600160a01b0388166000908152600e60205260409020600101859055600f5485906117c7908590612aff565b6117d19190612885565b600f555b6040516001600160a01b03891681527f54db7a5cb4735e1aac1f53db512d3390390bb6637bd30ad4bf9fc98667d9b9b99060200160405180910390a1506001979650505050505050565b6060600280548060200260200160405190810160405280929190818152602001828054801561187757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611859575b5050505050905090565b600480546040517f91d148540000000000000000000000000000000000000000000000000000000081527f241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b08928101929092523360248301526001600160a01b0316906391d1485490604401602060405180830381865afa158015611909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192d919061293d565b6119795760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c79206d616e616765720000000000000000000000000000000000000000604482015260640161063d565b868514801561198757508483145b801561199257508085145b6119de5760405162461bcd60e51b815260206004820152600d60248201527f496e76616c696420696e70757400000000000000000000000000000000000000604482015260640161063d565b600654879063ffffffff7901000000000000000000000000000000000000000000000000009091048116429091161115611a5a5760405162461bcd60e51b815260206004820152601360248201527f526567697374726174696f6e20636c6f73656400000000000000000000000000604482015260640161063d565b60065460009060ff16815b83811015611cfd57600e60008d8d84818110611a8357611a83612898565b9050602002016020810190611a9891906125c2565b6001600160a01b0316815260208101919091526040016000206003015460ff1615611b055760405162461bcd60e51b815260206004820152601260248201527f416c726561647920726567697374657265640000000000000000000000000000604482015260640161063d565b6000600e60008e8e85818110611b1d57611b1d612898565b9050602002016020810190611b3291906125c2565b6001600160a01b03168152602081019190915260400160002060038101805460ff1916600117905590508a8a83818110611b6e57611b6e612898565b9050602002016020810190611b8391906129a4565b815460ff191660ff91909116178155888883818110611ba457611ba4612898565b9050602002016020810190611bb991906129a4565b815460ff91909116610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116178155868683818110611bfe57611bfe612898565b602002919091013560028301555060038d8d84818110611c2057611c20612898565b9050602002016020810190611c3591906125c2565b81546001810183556000928352602083200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055838c8c85818110611c9057611c90612898565b9050602002016020810190611ca591906129a4565b60ff1610611ccb57878784818110611cbf57611cbf612898565b90506020020135611cce565b60005b90508015611cea57611ce08186612885565b6001830182905594505b505080611cf690612b12565b9050611a65565b5081600f54611d0c9190612885565b600f556040517f028f3d3ed66950501f881c5f628b1776aa766c42939ae0211022111d4b53cd9790611d41908d908d90612b4a565b60405180910390a15050505050505050505050565b6000600f54600003611d6a57506000611dd1565b600082611d92576001600160a01b0384166000908152600e6020526040902060020154611daf565b6001600160a01b0384166000908152600e60205260409020600101545b600f5460095491925090611dc390836128eb565b611dcd9190612902565b9150505b92915050565b60606003805480602002602001604051908101604052809291908181526020018280548015611877576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311611859575050505050905090565b60118160038110611e4757600080fd5b60089182820401919006600402915054906101000a900463ffffffff1681565b6000600f54600003611e7b57506000919050565b600f54600954611e8b90846128eb565b611dd19190612902565b6004546001600160a01b03163314611eef5760405162461bcd60e51b815260206004820152600c60248201527f4f6e6c7920666163746f72790000000000000000000000000000000000000000604482015260640161063d565b6000816101200135118015611f0957506000816101400135115b8015611f2a575042611f21606083016040840161296e565b63ffffffff1610155b611f765760405162461bcd60e51b815260206004820152600d60248201527f496e76616c696420696e70757400000000000000000000000000000000000000604482015260640161063d565b611f87610100820160e083016125c2565b600c80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055611fd1610120820161010083016125c2565b600d80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039290921691909117905561201960a08201608083016125c2565b601080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03929092169190911790556120616040820160208301612989565b6010805461ffff9290921674010000000000000000000000000000000000000000027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff9092169190911790556120be601161016083016003612320565b5060006120d36101c083016101a0840161296e565b6120e56101a08401610180850161296e565b6120f76101808501610160860161296e565b61210191906128c7565b61210b91906128c7565b905060008163ffffffff16116121635760405162461bcd60e51b815260206004820152601060248201527f496e76616c6964206475726174696f6e00000000000000000000000000000000604482015260640161063d565b610120820135600855610140820135600955612185606083016040840161296e565b6006805463ffffffff92909216790100000000000000000000000000000000000000000000000000027fffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffff909216919091179055806121e9606084016040850161296e565b6121f391906128c7565b600780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9290921691909117905561223860e0830160c084016125c2565b600680546001600160a01b0392909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff90921691909117905561228360208301836129a4565b6006805460ff191660ff929092169190911790556040517f13af82accd2e96f4e7bbf98f8e822607da1fbfca4064d4abb83b8f07f92830e6906115579084906129f6565b6002600154036123195760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161063d565b6002600155565b6001830191839082156123b25791602002820160005b8382111561238057833563ffffffff1683826101000a81548163ffffffff021916908363ffffffff1602179055509260200192600401602081600301049283019260010302612336565b80156123b05782816101000a81549063ffffffff0219169055600401602081600301049283019260010302612380565b505b506123be9291506123c2565b5090565b5b808211156123be57600081556001016123c3565b803561ffff81168114610eb957600080fd5b803567ffffffffffffffff81168114610eb957600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261244157600080fd5b813567ffffffffffffffff8082111561245c5761245c612401565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019082821181831017156124a2576124a2612401565b816040528381528660208588010111156124bb57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806000608086880312156124f357600080fd5b6124fc866123d7565b9450602086013567ffffffffffffffff8082111561251957600080fd5b818801915088601f83011261252d57600080fd5b81358181111561253c57600080fd5b89602082850101111561254e57600080fd5b6020830196509450612562604089016123e9565b9350606088013591508082111561257857600080fd5b5061258588828901612430565b9150509295509295909350565b6000602082840312156125a457600080fd5b5035919050565b80356001600160a01b0381168114610eb957600080fd5b6000602082840312156125d457600080fd5b6125dd826125ab565b9392505050565b60006101c082840312156125f757600080fd5b50919050565b803560ff81168114610eb957600080fd5b6000806000806080858703121561262457600080fd5b61262d856125ab565b935061263b602086016125fd565b9250612649604086016125fd565b9396929550929360600135925050565b6020808252825182820181905260009190848201906040850190845b8181101561269a5783516001600160a01b031683529284019291840191600101612675565b50909695505050505050565b60008083601f8401126126b857600080fd5b50813567ffffffffffffffff8111156126d057600080fd5b6020830191508360208260051b85010111156126eb57600080fd5b9250929050565b6000806000806000806000806080898b03121561270e57600080fd5b883567ffffffffffffffff8082111561272657600080fd5b6127328c838d016126a6565b909a50985060208b013591508082111561274b57600080fd5b6127578c838d016126a6565b909850965060408b013591508082111561277057600080fd5b61277c8c838d016126a6565b909650945060608b013591508082111561279557600080fd5b506127a28b828c016126a6565b999c989b5096995094979396929594505050565b80151581146127c457600080fd5b50565b600080604083850312156127da57600080fd5b6127e3836125ab565b915060208301356127f3816127b6565b809150509250929050565b8183823760009101908152919050565b6000825160005b8181101561282f5760208186018101518583015201612815565b506000920191825250919050565b60006020828403121561284f57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115611dd157611dd1612856565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b63ffffffff8181168382160190808211156128e4576128e4612856565b5092915050565b8082028115828204841417611dd157611dd1612856565b600082612938577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b60006020828403121561294f57600080fd5b81516125dd816127b6565b803563ffffffff81168114610eb957600080fd5b60006020828403121561298057600080fd5b6125dd8261295a565b60006020828403121561299b57600080fd5b6125dd826123d7565b6000602082840312156129b657600080fd5b6125dd826125fd565b8060005b60038110156129f05763ffffffff6129da8361295a565b16845260209384019391909101906001016129c3565b50505050565b6101c08101612a0f82612a08856125fd565b60ff169052565b612a1b602084016123d7565b61ffff166020830152612a306040840161295a565b63ffffffff166040830152612a47606084016125ab565b6001600160a01b03166060830152612a61608084016125ab565b6001600160a01b03166080830152612a7b60a084016125ab565b6001600160a01b031660a0830152612a9560c084016125ab565b6001600160a01b031660c0830152612aaf60e084016125ab565b6001600160a01b031660e0830152610100612acb8482016125ab565b6001600160a01b031690830152610120838101359083015261014080840135908301526101606128e48184018286016129bf565b81810381811115611dd157611dd1612856565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612b4357612b43612856565b5060010190565b60208082528181018390526000908460408401835b86811015612b8b576001600160a01b03612b78846125ab565b1682529183019190830190600101612b5f565b50969550505050505056fea164736f6c6343000813000a