2 txs
3 calls
constructor
constructor(address _token, address _metadataResolver)
functions
balanceOf
viewfunction balanceOf(address account, uint256 id) view returns (uint256)
balanceOfBatch
viewfunction balanceOfBatch(address[] accounts, uint256[] ids) view returns (uint256[])
isApprovedForAll
viewfunction isApprovedForAll(address account, address operator) view returns (bool)
metadataResolver
viewfunction metadataResolver() view returns (address)
owner
viewfunction owner() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
token
viewfunction token() view returns (address)
tokenURI
viewfunction tokenURI(uint256 tokenId) view returns (string)
uri
viewfunction uri(uint256) view returns (string)
delegateMulti
nonpayablefunction delegateMulti(uint256[] sources, uint256[] targets, uint256[] amounts)
renounceOwnership
nonpayablefunction renounceOwnership()
safeBatchTransferFrom
nonpayablefunction safeBatchTransferFrom(address from, address to, uint256[] ids, uint256[] values, bytes data)
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 id, uint256 value, bytes data)
setApprovalForAll
nonpayablefunction setApprovalForAll(address operator, bool approved)
setMetadataResolver
nonpayablefunction setMetadataResolver(address _newResolver)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
ApprovalForAll
event ApprovalForAll(address indexed account, address indexed operator, bool approved)
DelegationProcessed
event DelegationProcessed(address indexed owner, address indexed from, address indexed to, uint256 amount)
MetadataURIUpdated
event MetadataURIUpdated(string uri)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
ProxyDeployed
event ProxyDeployed(address indexed delegate, address proxyAddress)
TransferBatch
event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values)
TransferSingle
event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value)
URI
event URI(string value, uint256 indexed id)
errors
ERC1155InsufficientBalance
error ERC1155InsufficientBalance(address sender, uint256 balance, uint256 needed, uint256 tokenId)
ERC1155InvalidApprover
error ERC1155InvalidApprover(address approver)
ERC1155InvalidArrayLength
error ERC1155InvalidArrayLength(uint256 idsLength, uint256 valuesLength)
ERC1155InvalidOperator
error ERC1155InvalidOperator(address operator)
ERC1155InvalidReceiver
error ERC1155InvalidReceiver(address receiver)
ERC1155InvalidSender
error ERC1155InvalidSender(address sender)
ERC1155MissingApprovalForAll
error ERC1155MissingApprovalForAll(address operator, address owner)
InvalidDelegateAddress
error InvalidDelegateAddress()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
creation bytecode
0x60a06040523480156200001157600080fd5b5060405162005d9838038062005d988339818101604052810190620000379190620002fc565b336040518060200160405280600081525062000059816200015e60201b60201c565b50600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620000cf5760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620000c6919062000354565b60405180910390fd5b620000e0816200017360201b60201c565b508173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050620006d2565b80600290816200016f9190620005eb565b5050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200026b826200023e565b9050919050565b60006200027f826200025e565b9050919050565b620002918162000272565b81146200029d57600080fd5b50565b600081519050620002b18162000286565b92915050565b6000620002c4826200025e565b9050919050565b620002d681620002b7565b8114620002e257600080fd5b50565b600081519050620002f681620002cb565b92915050565b6000806040838503121562000316576200031562000239565b5b60006200032685828601620002a0565b92505060206200033985828601620002e5565b9150509250929050565b6200034e816200025e565b82525050565b60006020820190506200036b600083018462000343565b92915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620003f357607f821691505b602082108103620004095762000408620003ab565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620004737fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000434565b6200047f868362000434565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004cc620004c6620004c08462000497565b620004a1565b62000497565b9050919050565b6000819050919050565b620004e883620004ab565b62000500620004f782620004d3565b84845462000441565b825550505050565b600090565b6200051762000508565b62000524818484620004dd565b505050565b5b818110156200054c57620005406000826200050d565b6001810190506200052a565b5050565b601f8211156200059b5762000565816200040f565b620005708462000424565b8101602085101562000580578190505b620005986200058f8562000424565b83018262000529565b50505b505050565b600082821c905092915050565b6000620005c060001984600802620005a0565b1980831691505092915050565b6000620005db8383620005ad565b9150826002028217905092915050565b620005f68262000371565b67ffffffffffffffff8111156200061257620006116200037c565b5b6200061e8254620003da565b6200062b82828562000550565b600060209050601f8311600181146200066357600084156200064e578287015190505b6200065a8582620005cd565b865550620006ca565b601f19841662000673866200040f565b60005b828110156200069d5784890151825560018201915060208501945060208101905062000676565b86831015620006bd5784890151620006b9601f891682620005ad565b8355505b6001600288020188555050505b505050505050565b6080516156876200071160003960008181611121015281816113b0015281816114f2015281816124b501528181612594015261266b01526156876000f3fe60806040523480156200001157600080fd5b5060043610620001175760003560e01c80638da5cb5b11620000a5578063e985e9c5116200006f578063e985e9c514620002fa578063f242432a1462000330578063f2fde38b1462000350578063fc0c546a14620003705762000117565b80638da5cb5b1462000260578063a0c76f621462000282578063a22cb46514620002a4578063c87b56dd14620002c45762000117565b80634e1273f411620000e75780634e1273f414620001de578063600f6abf1462000214578063715018a614620002345780637995c1e414620002405762000117565b8062fdd58e146200011c57806301ffc9a714620001525780630e89341c14620001885780632eb2c2d614620001be575b600080fd5b6200013a60048036038101906200013491906200363d565b62000392565b60405162000149919062003695565b60405180910390f35b6200017060048036038101906200016a91906200370f565b620003ec565b6040516200017f91906200375e565b60405180910390f35b620001a66004803603810190620001a091906200377b565b620004d2565b604051620001b5919062003847565b60405180910390f35b620001dc6004803603810190620001d6919062003a97565b6200056e565b005b620001fc6004803603810190620001f6919062003c52565b62000620565b6040516200020b919062003da5565b60405180910390f35b6200023260048036038101906200022c919062003e2d565b62000743565b005b6200023e62000b1c565b005b6200025e600480360381019062000258919062003f38565b62000b34565b005b6200026a62000b82565b60405162000279919062003f7b565b60405180910390f35b6200028c62000bac565b6040516200029b919062004003565b60405180910390f35b620002c26004803603810190620002bc919062004051565b62000bd2565b005b620002e26004803603810190620002dc91906200377b565b62000bec565b604051620002f1919062003847565b60405180910390f35b62000318600480360381019062000312919062004098565b62000f4c565b6040516200032791906200375e565b60405180910390f35b6200034e6004803603810190620003489190620040df565b62000fe0565b005b6200036e600480360381019062000368919062004186565b62001092565b005b6200037a6200111f565b604051620003899190620041dd565b60405180910390f35b600080600083815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60007fd9b67a26000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480620004b857507f0e89341c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80620004cb5750620004ca8262001143565b5b9050919050565b606060028054620004e39062004229565b80601f0160208091040260200160405190810160405280929190818152602001828054620005119062004229565b8015620005625780601f10620005365761010080835404028352916020019162000562565b820191906000526020600020905b8154815290600101906020018083116200054457829003601f168201915b50505050509050919050565b60006200057a620011ad565b90508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614158015620005c25750620005c0868262000f4c565b155b15620006095780866040517fe237d922000000000000000000000000000000000000000000000000000000008152600401620006009291906200425e565b60405180910390fd5b620006188686868686620011b5565b505050505050565b606081518351146200066f57815183516040517f5b059991000000000000000000000000000000000000000000000000000000008152600401620006669291906200428b565b60405180910390fd5b6000835167ffffffffffffffff8111156200068f576200068e62003870565b5b604051908082528060200260200182016040528015620006be5781602001602082028036833780820191505090505b50905060005b8451811015620007385762000702620006e78287620012b590919063ffffffff16565b620006fc8387620012c990919063ffffffff16565b62000392565b828281518110620007185762000717620042b8565b5b60200260200101818152505080620007309062004316565b9050620006c4565b508091505092915050565b60008686905090506000858590509050600084849050905060008311806200076b5750600082115b620007ad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007a490620043ff565b60405180910390fd5b80620007ba8484620012dd565b14620007fd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007f490620044bd565b60405180910390fd5b60006200080b8484620012f6565b905060005b82811015620009a55760008086831015620008a057600060a08e8e868181106200083f576200083e620042b8565b5b90506020020135901c1462000880576040517fe2f33af900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8c8c84818110620008965762000895620042b8565b5b9050602002013591505b858310156200092457600060a08c8c86818110620008c357620008c2620042b8565b5b90506020020135901c1462000904576040517fe2f33af900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8a8a848181106200091a5762000919620042b8565b5b9050602002013590505b60008989858181106200093c576200093b620042b8565b5b9050602002013590508484101562000961576200095b8383836200130f565b62000994565b878410156200097c576200097683826200139f565b62000993565b868410156200099257620009918282620014e1565b5b5b5b838060010194505050505062000810565b50600084111562000a535762000a52338b8b80806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508888600090899262000a0c93929190620044e9565b80806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505062001623565b5b600083111562000b105762000b0f33898980806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508888600090889262000ab993929190620044e9565b80806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505060405180602001604052806000815250620016bc565b5b50505050505050505050565b62000b2662001747565b62000b326000620017d7565b565b62000b3e62001747565b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b62000be862000be0620011ad565b83836200189d565b5050565b6060600062000c118373ffffffffffffffffffffffffffffffffffffffff1662001a12565b905060008160405160200162000c289190620045c3565b60405160208183030381529060405290506060600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635d78a21783603c6040518363ffffffff1660e01b815260040162000c9b92919062004693565b600060405180830381865afa92505050801562000cdd57506040513d6000823e3d601f19601f8201168201806040525081019062000cda919062004792565b60015b1562000cea578293505050505b600060405180602001604052806000815250905060008251111562000e9b5760008062000d178462001be3565b9150915060008160405160240162000d30919062004878565b6040516020818303038152906040527f59d1d43c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639061b92384836040518363ffffffff1660e01b815260040162000e0e929190620048aa565b600060405180830381865afa92505050801562000e5057506040513d6000823e3d601f19601f8201168201806040525081019062000e4d919062004963565b60015b1562000e9257600082511462000e7c578180602001905181019062000e769190620049c9565b62000e8d565b604051806020016040528060008152505b955050505b50505062000ec0565b8360405160200162000eae919062004a82565b60405160208183030381529060405291505b600062000f1c62000ed18462001efa565b62000edc896200219a565b62000ee78662001efa565b62000ef28662001efa565b60405160200162000f07949392919062004c06565b60405160208183030381529060405262002273565b90508060405160200162000f31919062004cd4565b60405160208183030381529060405295505050505050919050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600062000fec620011ad565b90508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415801562001034575062001032868262000f4c565b155b156200107b5780866040517fe237d922000000000000000000000000000000000000000000000000000000008152600401620010729291906200425e565b60405180910390fd5b6200108a8686868686620022a3565b505050505050565b6200109c62001747565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620011115760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040162001108919062003f7b565b60405180910390fd5b6200111c81620017d7565b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036200122a5760006040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040162001221919062003f7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036200129f5760006040517f01a8351400000000000000000000000000000000000000000000000000000000815260040162001296919062003f7b565b60405180910390fd5b620012ae8585858585620023b8565b5050505050565b600060208202602084010151905092915050565b600060208202602084010151905092915050565b6000620012ee828411848462002479565b905092915050565b600062001307828410848462002479565b905092915050565b6200131c83838362002495565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ca1b1d784c1230a2eb4577fbfcd56d30da1e9e57d60b387358341d643dbe28d8460405162001392919062003695565b60405180910390a4505050565b6000620013ac8362002569565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166323b872dd8233856040518463ffffffff1660e01b81526004016200140d9392919062004cfe565b6020604051808303816000875af11580156200142d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001453919062004d52565b6200145d57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ca1b1d784c1230a2eb4577fbfcd56d30da1e9e57d60b387358341d643dbe28d85604051620014d4919062003695565b60405180910390a4505050565b6000620014ee8362002646565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166323b872dd3383856040518463ffffffff1660e01b81526004016200154f9392919062004cfe565b6020604051808303816000875af11580156200156f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001595919062004d52565b6200159f57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ca1b1d784c1230a2eb4577fbfcd56d30da1e9e57d60b387358341d643dbe28d8560405162001616919062003695565b60405180910390a4505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620016985760006040517f01a835140000000000000000000000000000000000000000000000000000000081526004016200168f919062003f7b565b60405180910390fd5b620016b7836000848460405180602001604052806000815250620023b8565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603620017315760006040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040162001728919062003f7b565b60405180910390fd5b62001741600085858585620023b8565b50505050565b62001751620011ad565b73ffffffffffffffffffffffffffffffffffffffff166200177162000b82565b73ffffffffffffffffffffffffffffffffffffffff1614620017d55762001797620011ad565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401620017cc919062003f7b565b60405180910390fd5b565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620019125760006040517fced3e10000000000000000000000000000000000000000000000000000000000815260040162001909919062003f7b565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405162001a0591906200375e565b60405180910390a3505050565b60606000602867ffffffffffffffff81111562001a345762001a3362003870565b5b6040519080825280601f01601f19166020018201604052801562001a675781602001600182028036833780820191505090505b50905060005b601481101562001bd957600081601362001a88919062004d84565b600862001a96919062004dbf565b8573ffffffffffffffffffffffffffffffffffffffff16901c60f81b9050600060108260f81c62001ac8919062004e46565b60f81b905060008160f81c601062001ae1919062004e7e565b8360f81c62001af1919062004ec4565b60f81b905062001b018262002724565b8585600262001b11919062004dbf565b8151811062001b255762001b24620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535062001b5f8162002724565b85600186600262001b71919062004dbf565b62001b7d919062004f00565b8151811062001b915762001b90620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350505050808062001bd09062004316565b91505062001a6d565b5080915050919050565b606060008060009050600084905060008151905060028162001c06919062004f00565b67ffffffffffffffff81111562001c225762001c2162003870565b5b6040519080825280601f01601f19166020018201604052801562001c555781602001600182028036833780820191505090505b5094506000801b93506000810362001cbb57600060f81b8560008151811062001c835762001c82620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535050505062001ef5565b60006001820390505b6000811062001e5f577f2e0000000000000000000000000000000000000000000000000000000000000083828151811062001d045762001d03620042b8565b5b602001015160f81c60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19160362001dd6578360f81b86600183018151811062001d545762001d53620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508462001da1600183018660ff1686620027709092919063ffffffff16565b60405160200162001db492919062004f60565b6040516020818303038152906040528051906020012094506000935062001e46565b60018401935082818151811062001df25762001df1620042b8565b5b602001015160f81c60f81b86600183018151811062001e165762001e15620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505b600081031562001e5f5780806001900391505062001cc4565b508362001e7c60008560ff1685620027709092919063ffffffff16565b60405160200162001e8f92919062004f60565b6040516020818303038152906040528051906020012093508260f81b8560008151811062001ec25762001ec1620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505050505b915091565b606060008290506000805b825181101562001f675762001f3a83828151811062001f295762001f28620042b8565b5b602001015160f81c60f81b6200279f565b1562001f5157818062001f4d9062004316565b9250505b808062001f5e9062004316565b91505062001f05565b50600081835162001f79919062004f00565b67ffffffffffffffff81111562001f955762001f9462003870565b5b6040519080825280601f01601f19166020018201604052801562001fc85781602001600182028036833780820191505090505b5090506000805b84518110156200218d576200200485828151811062001ff35762001ff2620042b8565b5b602001015160f81c60f81b6200279f565b1562002102577f5c00000000000000000000000000000000000000000000000000000000000000838380620020399062004316565b9450815181106200204f576200204e620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350620020a9858281518110620020985762002097620042b8565b5b602001015160f81c60f81b6200296e565b838380620020b79062004316565b945081518110620020cd57620020cc620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535062002177565b848181518110620021185762002117620042b8565b5b602001015160f81c60f81b838380620021319062004316565b945081518110620021475762002146620042b8565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053505b8080620021849062004316565b91505062001fcf565b5081945050505050919050565b606060006001620021ab8462002ad2565b01905060008167ffffffffffffffff811115620021cd57620021cc62003870565b5b6040519080825280601f01601f191660200182016040528015620022005781602001600182028036833780820191505090505b509050600082602001820190505b60011562002268578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816200225b576200225a62004e17565b5b049450600085036200220e575b819350505050919050565b60606200229c826040518060600160405280604081526020016200561260409139600162002c3e565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603620023185760006040517f57f447ce0000000000000000000000000000000000000000000000000000000081526004016200230f919062003f7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036200238d5760006040517f01a8351400000000000000000000000000000000000000000000000000000000815260040162002384919062003f7b565b60405180910390fd5b6000806200239c858562002ded565b91509150620023af8787848487620023b8565b50505050505050565b620023c68585858562002e1d565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146200247257600062002407620011ad565b905060018451036200245f5760006200242b600086620012c990919063ffffffff16565b9050600062002445600086620012c990919063ffffffff16565b905062002457838989858589620031e9565b505062002470565b6200246f818787878787620033ac565b5b505b5050505050565b600062002486846200356f565b82841802821890509392505050565b6000620024a28462002569565b90506000620024b18462002646565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166323b872dd8383866040518463ffffffff1660e01b8152600401620025129392919062004cfe565b6020604051808303816000875af115801562002532573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002558919062004d52565b6200256257600080fd5b5050505050565b600080604051806020016200257e906200357b565b6020820181038252601f19601f820116604052507f000000000000000000000000000000000000000000000000000000000000000084604051602001620025c792919062004f90565b604051602081830303815290604052604051602001620025e992919062004fbd565b6040516020818303038152906040529050600060ff60f81b3060008480519060200120604051602001620026219493929190620050ab565b6040516020818303038152906040528051906020012090508060001c92505050919050565b600080620026548362002569565b90506000813b9050600081036200271a576000801b7f00000000000000000000000000000000000000000000000000000000000000008560405162002699906200357b565b620026a692919062004f90565b8190604051809103906000f5905080158015620026c7573d6000803e3d6000fd5b50508373ffffffffffffffffffffffffffffffffffffffff167f3d2489efb661e8b1c3679865db649ca1de61d76a71184a1234de2e55786a6aad8360405162002711919062003f7b565b60405180910390a25b8192505050919050565b6000600a8260f81c60ff161015620027535760308260f81c62002748919062005101565b60f81b90506200276b565b60578260f81c62002765919062005101565b60f81b90505b919050565b60008351828462002782919062004f00565b11156200278e57600080fd5b818360208601012090509392505050565b60007f2200000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806200283357507f2f00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806200288057507f5c00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80620028cd57507f0a00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806200291a57507f0d00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806200296757507f0900000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60007f0a00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603620029e3577f6e00000000000000000000000000000000000000000000000000000000000000905062002acd565b7f0d00000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19160362002a56577f7200000000000000000000000000000000000000000000000000000000000000905062002acd565b7f0900000000000000000000000000000000000000000000000000000000000000827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19160362002ac9577f7400000000000000000000000000000000000000000000000000000000000000905062002acd565b8190505b919050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831062002b34577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838162002b2a5762002b2962004e17565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831062002b75576d04ee2d6d415b85acef8100000000838162002b6b5762002b6a62004e17565b5b0492506020810190505b662386f26fc10000831062002ba857662386f26fc10000838162002b9e5762002b9d62004e17565b5b0492506010810190505b6305f5e100831062002bd5576305f5e100838162002bcb5762002bca62004e17565b5b0492506008810190505b612710831062002bfe57612710838162002bf45762002bf362004e17565b5b0492506004810190505b6064831062002c25576064838162002c1b5762002c1a62004e17565b5b0492506002810190505b600a831062002c35576001810190505b80915050919050565b6060600084510362002c625760405180602001604052806000815250905062002de6565b60008262002c9c57600360028651600462002c7e919062004dbf565b62002c8a919062004f00565b62002c9691906200513d565b62002cc9565b60036002865162002cae919062004f00565b62002cba91906200513d565b600462002cc8919062004dbf565b5b905060008167ffffffffffffffff81111562002cea5762002ce962003870565b5b6040519080825280601f01601f19166020018201604052801562002d1d5781602001600182028036833780820191505090505b50905060018501602082018788518901602081018051600082525b8284101562002d95576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f811687015186536001860195505062002d38565b808252891562002dda5760038c51066001811462002dbc576002811462002dd05762002dd8565b603d6001870353603d600287035362002dd8565b603d60018703535b505b50505050505080925050505b9392505050565b60608060405191506001825283602083015260408201905060018152826020820152604081016040529250929050565b805182511462002e6a57815181516040517f5b05999100000000000000000000000000000000000000000000000000000000815260040162002e619291906200428b565b60405180910390fd5b600062002e76620011ad565b905060005b83518110156200309a57600062002e9c8286620012c990919063ffffffff16565b9050600062002eb58386620012c990919063ffffffff16565b9050600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161462002fe657600080600084815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101562002f8e57888183856040517f03dee4c500000000000000000000000000000000000000000000000000000000815260040162002f85949392919062005175565b60405180910390fd5b81810360008085815260200190815260200160002060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff161462003084578060008084815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200307c919062004f00565b925050819055505b505080620030929062004316565b905062002e7b565b50600183510362003161576000620030bd600085620012c990919063ffffffff16565b90506000620030d7600085620012c990919063ffffffff16565b90508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628585604051620031519291906200428b565b60405180910390a45050620031e2565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051620031d9929190620051c2565b60405180910390a45b5050505050565b60008473ffffffffffffffffffffffffffffffffffffffff163b1115620033a4578373ffffffffffffffffffffffffffffffffffffffff1663f23a6e6187878686866040518663ffffffff1660e01b81526004016200324d959493929190620051fd565b6020604051808303816000875af19250505080156200328c57506040513d601f19601f8201168201806040525081019062003289919062005278565b60015b62003316573d8060008114620032bf576040519150601f19603f3d011682016040523d82523d6000602084013e620032c4565b606091505b5060008151036200330e57846040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040162003305919062003f7b565b60405180910390fd5b805181602001fd5b63f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614620033a257846040517f57f447ce00000000000000000000000000000000000000000000000000000000815260040162003399919062003f7b565b60405180910390fd5b505b505050505050565b60008473ffffffffffffffffffffffffffffffffffffffff163b111562003567578373ffffffffffffffffffffffffffffffffffffffff1663bc197c8187878686866040518663ffffffff1660e01b815260040162003410959493929190620052aa565b6020604051808303816000875af19250505080156200344f57506040513d601f19601f820116820180604052508101906200344c919062005278565b60015b620034d9573d806000811462003482576040519150601f19603f3d011682016040523d82523d6000602084013e62003487565b606091505b506000815103620034d157846040517f57f447ce000000000000000000000000000000000000000000000000000000008152600401620034c8919062003f7b565b60405180910390fd5b805181602001fd5b63bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146200356557846040517f57f447ce0000000000000000000000000000000000000000000000000000000081526004016200355c919062003f7b565b60405180910390fd5b505b505050505050565b60008115159050919050565b6102f5806200531d83390190565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620035ca826200359d565b9050919050565b620035dc81620035bd565b8114620035e857600080fd5b50565b600081359050620035fc81620035d1565b92915050565b6000819050919050565b620036178162003602565b81146200362357600080fd5b50565b60008135905062003637816200360c565b92915050565b6000806040838503121562003657576200365662003593565b5b60006200366785828601620035eb565b92505060206200367a8582860162003626565b9150509250929050565b6200368f8162003602565b82525050565b6000602082019050620036ac600083018462003684565b92915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b620036e981620036b2565b8114620036f557600080fd5b50565b6000813590506200370981620036de565b92915050565b60006020828403121562003728576200372762003593565b5b60006200373884828501620036f8565b91505092915050565b60008115159050919050565b620037588162003741565b82525050565b60006020820190506200377560008301846200374d565b92915050565b60006020828403121562003794576200379362003593565b5b6000620037a48482850162003626565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015620037e9578082015181840152602081019050620037cc565b60008484015250505050565b6000601f19601f8301169050919050565b60006200381382620037ad565b6200381f8185620037b8565b935062003831818560208601620037c9565b6200383c81620037f5565b840191505092915050565b6000602082019050818103600083015262003863818462003806565b905092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620038aa82620037f5565b810181811067ffffffffffffffff82111715620038cc57620038cb62003870565b5b80604052505050565b6000620038e162003589565b9050620038ef82826200389f565b919050565b600067ffffffffffffffff82111562003912576200391162003870565b5b602082029050602081019050919050565b600080fd5b60006200393f6200393984620038f4565b620038d5565b9050808382526020820190506020840283018581111562003965576200396462003923565b5b835b818110156200399257806200397d888262003626565b84526020840193505060208101905062003967565b5050509392505050565b600082601f830112620039b457620039b36200386b565b5b8135620039c684826020860162003928565b91505092915050565b600080fd5b600067ffffffffffffffff821115620039f257620039f162003870565b5b620039fd82620037f5565b9050602081019050919050565b82818337600083830152505050565b600062003a3062003a2a84620039d4565b620038d5565b90508281526020810184848401111562003a4f5762003a4e620039cf565b5b62003a5c84828562003a0a565b509392505050565b600082601f83011262003a7c5762003a7b6200386b565b5b813562003a8e84826020860162003a19565b91505092915050565b600080600080600060a0868803121562003ab65762003ab562003593565b5b600062003ac688828901620035eb565b955050602062003ad988828901620035eb565b945050604086013567ffffffffffffffff81111562003afd5762003afc62003598565b5b62003b0b888289016200399c565b935050606086013567ffffffffffffffff81111562003b2f5762003b2e62003598565b5b62003b3d888289016200399c565b925050608086013567ffffffffffffffff81111562003b615762003b6062003598565b5b62003b6f8882890162003a64565b9150509295509295909350565b600067ffffffffffffffff82111562003b9a5762003b9962003870565b5b602082029050602081019050919050565b600062003bc262003bbc8462003b7c565b620038d5565b9050808382526020820190506020840283018581111562003be85762003be762003923565b5b835b8181101562003c15578062003c008882620035eb565b84526020840193505060208101905062003bea565b5050509392505050565b600082601f83011262003c375762003c366200386b565b5b813562003c4984826020860162003bab565b91505092915050565b6000806040838503121562003c6c5762003c6b62003593565b5b600083013567ffffffffffffffff81111562003c8d5762003c8c62003598565b5b62003c9b8582860162003c1f565b925050602083013567ffffffffffffffff81111562003cbf5762003cbe62003598565b5b62003ccd858286016200399c565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b62003d0e8162003602565b82525050565b600062003d22838362003d03565b60208301905092915050565b6000602082019050919050565b600062003d488262003cd7565b62003d54818562003ce2565b935062003d618362003cf3565b8060005b8381101562003d9857815162003d7c888262003d14565b975062003d898362003d2e565b92505060018101905062003d65565b5085935050505092915050565b6000602082019050818103600083015262003dc1818462003d3b565b905092915050565b600080fd5b60008083601f84011262003de75762003de66200386b565b5b8235905067ffffffffffffffff81111562003e075762003e0662003dc9565b5b60208301915083602082028301111562003e265762003e2562003923565b5b9250929050565b6000806000806000806060878903121562003e4d5762003e4c62003593565b5b600087013567ffffffffffffffff81111562003e6e5762003e6d62003598565b5b62003e7c89828a0162003dce565b9650965050602087013567ffffffffffffffff81111562003ea25762003ea162003598565b5b62003eb089828a0162003dce565b9450945050604087013567ffffffffffffffff81111562003ed65762003ed562003598565b5b62003ee489828a0162003dce565b92509250509295509295509295565b600062003f0082620035bd565b9050919050565b62003f128162003ef3565b811462003f1e57600080fd5b50565b60008135905062003f328162003f07565b92915050565b60006020828403121562003f515762003f5062003593565b5b600062003f618482850162003f21565b91505092915050565b62003f7581620035bd565b82525050565b600060208201905062003f92600083018462003f6a565b92915050565b6000819050919050565b600062003fc362003fbd62003fb7846200359d565b62003f98565b6200359d565b9050919050565b600062003fd78262003fa2565b9050919050565b600062003feb8262003fca565b9050919050565b62003ffd8162003fde565b82525050565b60006020820190506200401a600083018462003ff2565b92915050565b6200402b8162003741565b81146200403757600080fd5b50565b6000813590506200404b8162004020565b92915050565b600080604083850312156200406b576200406a62003593565b5b60006200407b85828601620035eb565b92505060206200408e858286016200403a565b9150509250929050565b60008060408385031215620040b257620040b162003593565b5b6000620040c285828601620035eb565b9250506020620040d585828601620035eb565b9150509250929050565b600080600080600060a08688031215620040fe57620040fd62003593565b5b60006200410e88828901620035eb565b95505060206200412188828901620035eb565b9450506040620041348882890162003626565b9350506060620041478882890162003626565b925050608086013567ffffffffffffffff8111156200416b576200416a62003598565b5b620041798882890162003a64565b9150509295509295909350565b6000602082840312156200419f576200419e62003593565b5b6000620041af84828501620035eb565b91505092915050565b6000620041c58262003fca565b9050919050565b620041d781620041b8565b82525050565b6000602082019050620041f46000830184620041cc565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200424257607f821691505b602082108103620042585762004257620041fa565b5b50919050565b600060408201905062004275600083018562003f6a565b62004284602083018462003f6a565b9392505050565b6000604082019050620042a2600083018562003684565b620042b1602083018462003684565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620043238262003602565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203620043585762004357620042e7565b5b600182019050919050565b7f44656c65676174653a20596f752073686f756c642070726f766964652061742060008201527f6c65617374206f6e6520736f75726365206f72206f6e6520746172676574206460208201527f656c656761746500000000000000000000000000000000000000000000000000604082015250565b6000620043e7604783620037b8565b9150620043f48262004363565b606082019050919050565b600060208201905081810360008301526200441a81620043d8565b9050919050565b7f44656c65676174653a20546865206e756d626572206f6620616d6f756e74732060008201527f6d75737420626520657175616c20746f207468652067726561746572206f662060208201527f746865206e756d626572206f6620736f7572636573206f722074617267657473604082015250565b6000620044a5606083620037b8565b9150620044b28262004421565b606082019050919050565b60006020820190508181036000830152620044d88162004496565b9050919050565b600080fd5b600080fd5b600080858511156200450057620044ff620044df565b5b83861115620045145762004513620044e4565b5b6020850283019150848603905094509492505050565b7f2800000000000000000000000000000000000000000000000000000000000000815250565b600081519050919050565b600081905092915050565b6000620045738262004550565b6200457f81856200455b565b935062004591818560208601620037c9565b80840191505092915050565b7f0461646472077265766572736500000000000000000000000000000000000000815250565b6000620045d0826200452a565b600182019150620045e2828462004566565b9150620045ef826200459d565b600e8201915081905092915050565b600082825260208201905092915050565b60006200461c8262004550565b620046288185620045fe565b93506200463a818560208601620037c9565b6200464581620037f5565b840191505092915050565b6000819050919050565b60006200467b620046756200466f8462004650565b62003f98565b62003602565b9050919050565b6200468d816200465a565b82525050565b60006040820190508181036000830152620046af81856200460f565b9050620046c0602083018462004682565b9392505050565b600067ffffffffffffffff821115620046e557620046e462003870565b5b620046f082620037f5565b9050602081019050919050565b6000620047146200470e84620046c7565b620038d5565b905082815260208101848484011115620047335762004732620039cf565b5b62004740848285620037c9565b509392505050565b600082601f83011262004760576200475f6200386b565b5b815162004772848260208601620046fd565b91505092915050565b6000815190506200478c81620035d1565b92915050565b600080600060608486031215620047ae57620047ad62003593565b5b600084015167ffffffffffffffff811115620047cf57620047ce62003598565b5b620047dd8682870162004748565b9350506020620047f0868287016200477b565b925050604062004803868287016200477b565b9150509250925092565b6000819050919050565b62004822816200480d565b82525050565b7f6176617461720000000000000000000000000000000000000000000000000000600082015250565b600062004860600683620037b8565b91506200486d8262004828565b602082019050919050565b60006040820190506200488f600083018462004817565b8181036020830152620048a28162004851565b905092915050565b60006040820190508181036000830152620048c681856200460f565b90508181036020830152620048dc81846200460f565b90509392505050565b6000620048fc620048f684620039d4565b620038d5565b9050828152602081018484840111156200491b576200491a620039cf565b5b62004928848285620037c9565b509392505050565b600082601f8301126200494857620049476200386b565b5b81516200495a848260208601620048e5565b91505092915050565b600080604083850312156200497d576200497c62003593565b5b600083015167ffffffffffffffff8111156200499e576200499d62003598565b5b620049ac8582860162004930565b9250506020620049bf858286016200477b565b9150509250929050565b600060208284031215620049e257620049e162003593565b5b600082015167ffffffffffffffff81111562004a035762004a0262003598565b5b62004a118482850162004748565b91505092915050565b7f3078000000000000000000000000000000000000000000000000000000000000815250565b600081905092915050565b600062004a5882620037ad565b62004a64818562004a40565b935062004a76818560208601620037c9565b80840191505092915050565b600062004a8f8262004a1a565b60028201915062004aa1828462004a4b565b915081905092915050565b7f7b226e616d65223a202200000000000000000000000000000000000000000000815250565b7f2044656c656761746520546f6b656e0000000000000000000000000000000000815250565b7f222c2022746f6b656e5f6964223a202200000000000000000000000000000000815250565b7f222c20226465736372697074696f6e223a202254686973204e4654207265707260008201527f6573656e747320616e20454e5320746f6b656e2064656c65676174656420746f60208201527f2000000000000000000000000000000000000000000000000000000000000000604082015250565b600062004ba260418362004a40565b915062004baf8262004b1e565b604182019050919050565b7f222c2022696d616765223a202200000000000000000000000000000000000000815250565b7f227d000000000000000000000000000000000000000000000000000000000000815250565b600062004c138262004aac565b600a8201915062004c25828762004a4b565b915062004c328262004ad2565b600f8201915062004c438262004af8565b60108201915062004c55828662004a4b565b915062004c628262004b93565b915062004c70828562004a4b565b915062004c7d8262004bba565b600d8201915062004c8f828462004a4b565b915062004c9c8262004be0565b60028201915081905095945050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815250565b600062004ce18262004cae565b601d8201915062004cf3828462004a4b565b915081905092915050565b600060608201905062004d15600083018662003f6a565b62004d24602083018562003f6a565b62004d33604083018462003684565b949350505050565b60008151905062004d4c8162004020565b92915050565b60006020828403121562004d6b5762004d6a62003593565b5b600062004d7b8482850162004d3b565b91505092915050565b600062004d918262003602565b915062004d9e8362003602565b925082820390508181111562004db95762004db8620042e7565b5b92915050565b600062004dcc8262003602565b915062004dd98362003602565b925082820262004de98162003602565b9150828204841483151762004e035762004e02620042e7565b5b5092915050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062004e538262004e0a565b915062004e608362004e0a565b92508262004e735762004e7262004e17565b5b828204905092915050565b600062004e8b8262004e0a565b915062004e988362004e0a565b925082820262004ea88162004e0a565b915080821462004ebd5762004ebc620042e7565b5b5092915050565b600062004ed18262004e0a565b915062004ede8362004e0a565b9250828203905060ff81111562004efa5762004ef9620042e7565b5b92915050565b600062004f0d8262003602565b915062004f1a8362003602565b925082820190508082111562004f355762004f34620042e7565b5b92915050565b6000819050919050565b62004f5a62004f54826200480d565b62004f3b565b82525050565b600062004f6e828562004f45565b60208201915062004f80828462004f45565b6020820191508190509392505050565b600060408201905062004fa76000830185620041cc565b62004fb6602083018462003f6a565b9392505050565b600062004fcb828562004566565b915062004fd9828462004566565b91508190509392505050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b620050306200502a8262004fe5565b62005011565b82525050565b60008160601b9050919050565b6000620050508262005036565b9050919050565b6000620050648262005043565b9050919050565b620050806200507a82620035bd565b62005057565b82525050565b6000819050919050565b620050a56200509f8262003602565b62005086565b82525050565b6000620050b982876200501b565b600182019150620050cb82866200506b565b601482019150620050dd828562005090565b602082019150620050ef828462004f45565b60208201915081905095945050505050565b60006200510e8262004e0a565b91506200511b8362004e0a565b9250828201905060ff811115620051375762005136620042e7565b5b92915050565b60006200514a8262003602565b9150620051578362003602565b9250826200516a576200516962004e17565b5b828204905092915050565b60006080820190506200518c600083018762003f6a565b6200519b602083018662003684565b620051aa604083018562003684565b620051b9606083018462003684565b95945050505050565b60006040820190508181036000830152620051de818562003d3b565b90508181036020830152620051f4818462003d3b565b90509392505050565b600060a08201905062005214600083018862003f6a565b62005223602083018762003f6a565b62005232604083018662003684565b62005241606083018562003684565b81810360808301526200525581846200460f565b90509695505050505050565b6000815190506200527281620036de565b92915050565b60006020828403121562005291576200529062003593565b5b6000620052a18482850162005261565b91505092915050565b600060a082019050620052c1600083018862003f6a565b620052d0602083018762003f6a565b8181036040830152620052e4818662003d3b565b90508181036060830152620052fa818562003d3b565b905081810360808301526200531081846200460f565b9050969550505050505056fe60806040526040516102f53803806102f5833981810160405281019061002591906101e3565b8173ffffffffffffffffffffffffffffffffffffffff1663095ea7b3337fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161008092919061024b565b6020604051808303816000875af115801561009f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100c391906102ac565b6100cc57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff16635c19a95c826040518263ffffffff1660e01b815260040161010591906102d9565b600060405180830381600087803b15801561011f57600080fd5b505af1158015610133573d6000803e3d6000fd5b5050505060ff60005360016000f35b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061017282610147565b9050919050565b600061018482610167565b9050919050565b61019481610179565b811461019f57600080fd5b50565b6000815190506101b18161018b565b92915050565b6101c081610167565b81146101cb57600080fd5b50565b6000815190506101dd816101b7565b92915050565b600080604083850312156101fa576101f9610142565b5b6000610208858286016101a2565b9250506020610219858286016101ce565b9150509250929050565b61022c81610167565b82525050565b6000819050919050565b61024581610232565b82525050565b60006040820190506102606000830185610223565b61026d602083018461023c565b9392505050565b60008115159050919050565b61028981610274565b811461029457600080fd5b50565b6000815190506102a681610280565b92915050565b6000602082840312156102c2576102c1610142565b5b60006102d084828501610297565b91505092915050565b60006020820190506102ee6000830184610223565b9291505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220a9ff0feef19c5a9ef33a171cccf26154acf223bf50fbf6ba5c37bf5a0f48fffa64736f6c63430008150033000000000000000000000000c18360217d8f7ab5e7c516566761ea12ce7f9d7200000000000000000000000050eb7a57c17e0e97eac1b366b1ea673ec2bbda61