0 txs
1 call
constructor
constructor(address productsModuleAddress)
functions
isPurchaseAllowed
viewfunction isPurchaseAllowed(uint256, uint256, address, uint256, bytes, bytes) view returns (bool)
paramsSchema
purefunction paramsSchema() pure returns (string)
PRODUCTS_MODULE
viewfunction PRODUCTS_MODULE() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
tokenData
viewfunction tokenData(uint256 slicerId, uint256 productId) view returns (address token, bool revertOnMaxSupplyReached)
configureProduct
nonpayablefunction configureProduct(uint256 slicerId, uint256 productId, bytes params)
onProductPurchase
payablefunction onProductPurchase(uint256 slicerId, uint256 productId, address buyer, uint256 quantity, bytes slicerData, bytes buyerData) payable
events
ProductConfigured
event ProductConfigured(uint256 slicerId, uint256 productId, bytes params)
errors
InvalidRoyaltyFraction
error InvalidRoyaltyFraction()
MaxSupplyExceeded
error MaxSupplyExceeded()
NotAllowed
error NotAllowed()
NotProductOwner
error NotProductOwner()
NotPurchase
error NotPurchase()
creation bytecode
0x60a060405234801561000f575f80fd5b50604051612e5e380380612e5e83398101604081905261002e9161003f565b6001600160a01b031660805261006c565b5f6020828403121561004f575f80fd5b81516001600160a01b0381168114610065575f80fd5b9392505050565b608051612dcc6100925f395f818161015e0152818161033101526104170152612dcc5ff3fe60806040526004361062000077575f3560e01c806395db9368116200005257806395db936814620001a6578063a23fffb914620001d0578063d11f43a714620001e9578063ec2eca08146200020f575f80fd5b806301ffc9a7146200007b578063589baef114620000b45780639203f233146200014b575b5f80fd5b34801562000087575f80fd5b506200009f6200009936600462000892565b62000233565b60405190151581526020015b60405180910390f35b348015620000c0575f80fd5b506200011e620000d2366004620008da565b5f60208181529281526040808220909352908152205473ffffffffffffffffffffffffffffffffffffffff81169074010000000000000000000000000000000000000000900460ff1682565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352901515602083015201620000ab565b34801562000157575f80fd5b50620001807f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001620000ab565b348015620001b2575f80fd5b506200009f620001c436600462000a3f565b60019695505050505050565b620001e7620001e136600462000a3f565b62000319565b005b348015620001f5575f80fd5b5062000200620003a1565b604051620000ab919062000b43565b3480156200021b575f80fd5b50620001e76200022d36600462000b57565b620003c2565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a7000000000000000000000000000000000000000000000000000000001480620002c657507fffffffff0000000000000000000000000000000000000000000000000000000082167f37e46cd100000000000000000000000000000000000000000000000000000000145b806200031357507fffffffff0000000000000000000000000000000000000000000000000000000082167f3d3189af00000000000000000000000000000000000000000000000000000000145b92915050565b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161462000389576040517f47322d0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620003998686868686866200050b565b505050505050565b60606040518060c001604052806098815260200162002d2860989139905090565b6040517fe6e9280800000000000000000000000000000000000000000000000000000000815260048101849052602481018390523360448201528390839073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063e6e9280890606401602060405180830381865afa1580156200045d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000483919062000bbc565b620004ba576040517f35cd3b6d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b620004c785858562000674565b7fe778d71bda5fa429690e9a690d0ef7339a3fb1e677e39c77a9167de98afdd2da858585604051620004fc9392919062000bd8565b60405180910390a15050505050565b5f86815260208181526040808320888452825280832081518083018352905473ffffffffffffffffffffffffffffffffffffffff8082168084527401000000000000000000000000000000000000000090920460ff161515838601528351908a16602482015260448082018a9052845180830390910181526064909101845293840180517f40c10f19000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091161790529151909392620005e39162000c01565b5f604051808303815f865af19150503d805f81146200061e576040519150601f19603f3d011682016040523d82523d5f602084013e62000623565b606091505b505090508160200151156200066a57806200066a576040517f8a164f6300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050505050565b5f805f805f805f808880602001905181019062000692919062000c7c565b97509750975097509750975097509750612710851115620006df576040517fd28e6cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8b8152602081815260408083208d845290915290205473ffffffffffffffffffffffffffffffffffffffff16806200075c5788888389898989604051620007279062000884565b62000739979695949392919062000d66565b604051809103905ff08015801562000753573d5f803e3d5ffd5b509050620007e8565b6040517f4af35d9f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690634af35d9f90620007b89085908b908b908b908b9060040162000df0565b5f604051808303815f87803b158015620007d0575f80fd5b505af1158015620007e3573d5f803e3d5ffd5b505050505b60408051808201825273ffffffffffffffffffffffffffffffffffffffff928316815293151560208086019182525f9e8f528e8152828f209d8f529c909c52909b20915182549a51151574010000000000000000000000000000000000000000027fffffffffffffffffffffff000000000000000000000000000000000000000000909b169b169a909a17989098179097555050505050505050565b611edb8062000e4d83390190565b5f60208284031215620008a3575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114620008d3575f80fd5b9392505050565b5f8060408385031215620008ec575f80fd5b50508035926020909101359150565b73ffffffffffffffffffffffffffffffffffffffff811681146200091d575f80fd5b50565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171562000997576200099762000920565b604052919050565b5f67ffffffffffffffff821115620009bb57620009bb62000920565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f82601f830112620009f7575f80fd5b813562000a0e62000a08826200099f565b6200094d565b81815284602083860101111562000a23575f80fd5b816020850160208301375f918101602001919091529392505050565b5f805f805f8060c0878903121562000a55575f80fd5b8635955060208701359450604087013562000a7081620008fb565b935060608701359250608087013567ffffffffffffffff8082111562000a94575f80fd5b62000aa28a838b01620009e7565b935060a089013591508082111562000ab8575f80fd5b5062000ac789828a01620009e7565b9150509295509295509295565b5f5b8381101562000af057818101518382015260200162000ad6565b50505f910152565b5f815180845262000b1181602086016020860162000ad4565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f620008d3602083018462000af8565b5f805f6060848603121562000b6a575f80fd5b8335925060208401359150604084013567ffffffffffffffff81111562000b8f575f80fd5b62000b9d86828701620009e7565b9150509250925092565b8051801515811462000bb7575f80fd5b919050565b5f6020828403121562000bcd575f80fd5b620008d38262000ba7565b838152826020820152606060408201525f62000bf8606083018462000af8565b95945050505050565b5f825162000c1481846020870162000ad4565b9190910192915050565b5f82601f83011262000c2e575f80fd5b815162000c3f62000a08826200099f565b81815284602083860101111562000c54575f80fd5b62000c6782602083016020870162000ad4565b949350505050565b805162000bb781620008fb565b5f805f805f805f80610100898b03121562000c95575f80fd5b885167ffffffffffffffff8082111562000cad575f80fd5b62000cbb8c838d0162000c1e565b995060208b015191508082111562000cd1575f80fd5b62000cdf8c838d0162000c1e565b985062000cef60408c0162000c6f565b975060608b0151965060808b015191508082111562000d0c575f80fd5b62000d1a8c838d0162000c1e565b955060a08b015191508082111562000d30575f80fd5b5062000d3f8b828c0162000c1e565b93505062000d5060c08a0162000ba7565b915060e089015190509295985092959890939650565b60e081525f62000d7a60e083018a62000af8565b828103602084015262000d8e818a62000af8565b905087604084015273ffffffffffffffffffffffffffffffffffffffff8716606084015285608084015282810360a084015262000dcc818662000af8565b905082810360c084015262000de2818562000af8565b9a9950505050505050505050565b85815273ffffffffffffffffffffffffffffffffffffffff8516602082015283604082015260a060608201525f62000e2c60a083018562000af8565b828103608084015262000e40818562000af8565b9897505050505050505056fe60a060405234801562000010575f80fd5b5060405162001edb38038062001edb8339810160408190526200003391620001a6565b8686600262000043838262000306565b50600362000052828262000306565b50505f805550336080526200006785620000b2565b600a80546001600160a01b0319166001600160a01b038616179055600b839055600c62000095838262000306565b50600d620000a4828262000306565b5050505050505050620003d2565b8015620000c05780620000c3565b5f195b60095550565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112620000ed575f80fd5b81516001600160401b03808211156200010a576200010a620000c9565b604051601f8301601f19908116603f01168101908282118183101715620001355762000135620000c9565b816040528381526020925086602085880101111562000152575f80fd5b5f91505b8382101562000175578582018301518183018401529082019062000156565b5f602085830101528094505050505092915050565b80516001600160a01b0381168114620001a1575f80fd5b919050565b5f805f805f805f60e0888a031215620001bd575f80fd5b87516001600160401b0380821115620001d4575f80fd5b620001e28b838c01620000dd565b985060208a0151915080821115620001f8575f80fd5b620002068b838c01620000dd565b975060408a015196506200021d60608b016200018a565b955060808a0151945060a08a01519150808211156200023a575f80fd5b620002488b838c01620000dd565b935060c08a01519150808211156200025e575f80fd5b506200026d8a828b01620000dd565b91505092959891949750929550565b600181811c908216806200029157607f821691505b602082108103620002b057634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200030157805f5260205f20601f840160051c81016020851015620002dd5750805b601f840160051c820191505b81811015620002fe575f8155600101620002e9565b50505b505050565b81516001600160401b03811115620003225762000322620000c9565b6200033a816200033384546200027c565b84620002b6565b602080601f83116001811462000370575f8415620003585750858301515b5f19600386901b1c1916600185901b178555620003ca565b5f85815260208120601f198616915b82811015620003a0578886015182559484019460019091019084016200037f565b5085821015620003be57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b608051611ae2620003f95f395f81816101e2015281816108ab01526109840152611ae25ff3fe608060405260043610610178575f3560e01c80636352211e116100d1578063c87b56dd1161007c578063e7dee99f11610057578063e7dee99f14610425578063e985e9c51461043a578063f259a29e1461048e575f80fd5b8063c87b56dd146103dd578063d2401fa4146103fc578063d5abeb0114610410575f80fd5b80639fbc8713116100ac5780639fbc87131461037f578063a22cb465146103ab578063b88d4fde146103ca575f80fd5b80636352211e1461032d57806370a082311461034c57806395d89b411461036b575f80fd5b806318160ddd1161013157806340c10f191161010c57806340c10f19146102dc57806342842e0e146102fb5780634af35d9f1461030e575f80fd5b806318160ddd1461025d57806323b872dd1461027e5780632a55205a14610291575f80fd5b8063075461721161016157806307546172146101d1578063081812fc14610229578063095ea7b314610248575f80fd5b806301ffc9a71461017c57806306fdde03146101b0575b5f80fd5b348015610187575f80fd5b5061019b610196366004611441565b6104a2565b60405190151581526020015b60405180910390f35b3480156101bb575f80fd5b506101c46104fe565b6040516101a791906114c7565b3480156101dc575f80fd5b506102047f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a7565b348015610234575f80fd5b506102046102433660046114d9565b61058e565b61025b610256366004611513565b6105ed565b005b348015610268575f80fd5b506001545f54035b6040519081526020016101a7565b61025b61028c36600461153b565b6105fd565b34801561029c575f80fd5b506102b06102ab366004611574565b610851565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101a7565b3480156102e7575f80fd5b5061025b6102f6366004611513565b610893565b61025b61030936600461153b565b61094d565b348015610319575f80fd5b5061025b610328366004611670565b61096c565b348015610338575f80fd5b506102046103473660046114d9565b610a4a565b348015610357575f80fd5b506102706103663660046116f2565b610a54565b348015610376575f80fd5b506101c4610acb565b34801561038a575f80fd5b50600a546102049073ffffffffffffffffffffffffffffffffffffffff1681565b3480156103b6575f80fd5b5061025b6103c536600461170b565b610ada565b61025b6103d8366004611744565b610b70565b3480156103e8575f80fd5b506101c46103f73660046114d9565b610bd7565b348015610407575f80fd5b506101c4610ceb565b34801561041b575f80fd5b5061027060095481565b348015610430575f80fd5b50610270600b5481565b348015610445575f80fd5b5061019b6104543660046117bb565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260076020908152604080832093909416825291909152205460ff1690565b348015610499575f80fd5b506101c4610d77565b5f6104ac82610d84565b806104f857507fffffffff0000000000000000000000000000000000000000000000000000000082167f2a55205a00000000000000000000000000000000000000000000000000000000145b92915050565b60606002805461050d906117e3565b80601f0160208091040260200160405190810160405280929190818152602001828054610539906117e3565b80156105845780601f1061055b57610100808354040283529160200191610584565b820191905f5260205f20905b81548152906001019060200180831161056757829003601f168201915b5050505050905090565b5f61059882610e64565b6105c5576105c57fcf4700e400000000000000000000000000000000000000000000000000000000610ebf565b505f9081526006602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b6105f982826001610ec7565b5050565b5f61060782610fdc565b73ffffffffffffffffffffffffffffffffffffffff9485169490915081168414610654576106547fa114810000000000000000000000000000000000000000000000000000000000610ebf565b5f82815260066020526040902080543380821473ffffffffffffffffffffffffffffffffffffffff8816909114176106e65773ffffffffffffffffffffffffffffffffffffffff86165f90815260076020908152604080832033845290915290205460ff166106e6576106e67f59c896be00000000000000000000000000000000000000000000000000000000610ebf565b80156106f0575f82555b73ffffffffffffffffffffffffffffffffffffffff8681165f9081526005602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019055918716808252919020805460010190554260a01b177c0200000000000000000000000000000000000000000000000000000000175f858152600460205260408120919091557c0200000000000000000000000000000000000000000000000000000000841690036107da57600184015f8181526004602052604081205490036107d8575f5481146107d8575f8181526004602052604090208490555b505b73ffffffffffffffffffffffffffffffffffffffff85168481887fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4805f03610848576108487fea553b3400000000000000000000000000000000000000000000000000000000610ebf565b50505050505050565b600a54600b5473ffffffffffffffffffffffffffffffffffffffff909116905f90612710906108809085611861565b61088a9190611878565b90509250929050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610902576040517ff8d2906c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61090c8282611107565b6009546001545f540311156105f9576040517f8a164f6300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61096783838360405180602001604052805f815250610b70565b505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146109db576040517ff8d2906c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8616179055600b839055600c610a2c83826118f4565b50600d610a3982826118f4565b50610a4385611201565b5050505050565b5f6104f882610fdc565b5f73ffffffffffffffffffffffffffffffffffffffff8216610a9957610a997f8f4eb60400000000000000000000000000000000000000000000000000000000610ebf565b5073ffffffffffffffffffffffffffffffffffffffff165f9081526005602052604090205467ffffffffffffffff1690565b60606003805461050d906117e3565b335f81815260076020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b610b7b8484846105fd565b73ffffffffffffffffffffffffffffffffffffffff83163b15610bd157610ba484848484611235565b610bd157610bd17fd1a57ed600000000000000000000000000000000000000000000000000000000610ebf565b50505050565b6060610be282610e64565b610c18576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610c216113a1565b905080515f03610cb957600d8054610c38906117e3565b80601f0160208091040260200160405190810160405280929190818152602001828054610c64906117e3565b8015610caf5780601f10610c8657610100808354040283529160200191610caf565b820191905f5260205f20905b815481529060010190602001808311610c9257829003601f168201915b5050505050610ce4565b80610cc3846113b0565b604051602001610cd4929190611a10565b6040516020818303038152906040525b9392505050565b600d8054610cf8906117e3565b80601f0160208091040260200160405190810160405280929190818152602001828054610d24906117e3565b8015610d6f5780601f10610d4657610100808354040283529160200191610d6f565b820191905f5260205f20905b815481529060010190602001808311610d5257829003601f168201915b505050505081565b600c8054610cf8906117e3565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161480610e1657507f80ac58cd000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b806104f85750507fffffffff00000000000000000000000000000000000000000000000000000000167f5b5e139f000000000000000000000000000000000000000000000000000000001490565b5f8054821015610eba575f5b505f8281526004602052604081205490819003610e9757610e9083611a3e565b9250610e70565b7c0100000000000000000000000000000000000000000000000000000000161590505b919050565b805f5260045ffd5b5f610ed183610a4a565b9050818015610ef657503373ffffffffffffffffffffffffffffffffffffffff821614155b15610f5b5773ffffffffffffffffffffffffffffffffffffffff81165f90815260076020908152604080832033845290915290205460ff16610f5b57610f5b7fcfb3b94200000000000000000000000000000000000000000000000000000000610ebf565b5f8381526006602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff88811691821790925591518693918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a450505050565b5f81815260046020526040902054805f036110b3575f548210611022576110227fdf2d9b4200000000000000000000000000000000000000000000000000000000610ebf565b5b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015f818152600460205260409020548015611023577c010000000000000000000000000000000000000000000000000000000081165f0361108557919050565b6110ae7fdf2d9b4200000000000000000000000000000000000000000000000000000000610ebf565b611023565b7c010000000000000000000000000000000000000000000000000000000081165f036110de57919050565b610eba7fdf2d9b4200000000000000000000000000000000000000000000000000000000610ebf565b5f80549082900361113b5761113b7fb562e8dd00000000000000000000000000000000000000000000000000000000610ebf565b5f81815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff87164260a01b6001881460e11b178117909155808452600590925282208054680100000000000000018602019055908190036111bf576111bf7f2e07630000000000000000000000000000000000000000000000000000000000610ebf565b818301825b80835f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a48181600101915081036111c457505f5550505050565b801561120d578061122f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5b60095550565b6040517f150b7a020000000000000000000000000000000000000000000000000000000081525f9073ffffffffffffffffffffffffffffffffffffffff85169063150b7a029061128f903390899088908890600401611a72565b6020604051808303815f875af19250505080156112e7575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526112e491810190611aba565b60015b611353573d808015611314576040519150601f19603f3d011682016040523d82523d5f602084013e611319565b606091505b5080515f0361134b5761134b7fd1a57ed600000000000000000000000000000000000000000000000000000000610ebf565b805181602001fd5b7fffffffff00000000000000000000000000000000000000000000000000000000167f150b7a0200000000000000000000000000000000000000000000000000000000149050949350505050565b6060600c805461050d906117e3565b606060a06040510180604052602081039150505f815280825b600183039250600a81066030018353600a9004806113c957508190037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0909101908152919050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461143e575f80fd5b50565b5f60208284031215611451575f80fd5b8135610ce481611411565b5f5b8381101561147657818101518382015260200161145e565b50505f910152565b5f815180845261149581602086016020860161145c565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081525f610ce4602083018461147e565b5f602082840312156114e9575f80fd5b5035919050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610eba575f80fd5b5f8060408385031215611524575f80fd5b61152d836114f0565b946020939093013593505050565b5f805f6060848603121561154d575f80fd5b611556846114f0565b9250611564602085016114f0565b9150604084013590509250925092565b5f8060408385031215611585575f80fd5b50508035926020909101359150565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f67ffffffffffffffff808411156115db576115db611594565b604051601f85017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561162157611621611594565b81604052809350858152868686011115611639575f80fd5b858560208301375f602087830101525050509392505050565b5f82601f830112611661575f80fd5b610ce4838335602085016115c1565b5f805f805f60a08688031215611684575f80fd5b85359450611694602087016114f0565b935060408601359250606086013567ffffffffffffffff808211156116b7575f80fd5b6116c389838a01611652565b935060808801359150808211156116d8575f80fd5b506116e588828901611652565b9150509295509295909350565b5f60208284031215611702575f80fd5b610ce4826114f0565b5f806040838503121561171c575f80fd5b611725836114f0565b915060208301358015158114611739575f80fd5b809150509250929050565b5f805f8060808587031215611757575f80fd5b611760856114f0565b935061176e602086016114f0565b925060408501359150606085013567ffffffffffffffff811115611790575f80fd5b8501601f810187136117a0575f80fd5b6117af878235602084016115c1565b91505092959194509250565b5f80604083850312156117cc575f80fd5b6117d5836114f0565b915061088a602084016114f0565b600181811c908216806117f757607f821691505b60208210810361182e577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820281158282048414176104f8576104f8611834565b5f826118ab577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b601f82111561096757805f5260205f20601f840160051c810160208510156118d55750805b601f840160051c820191505b81811015610a43575f81556001016118e1565b815167ffffffffffffffff81111561190e5761190e611594565b6119228161191c84546117e3565b846118b0565b602080601f831160018114611974575f841561193e5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611a08565b5f858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156119c0578886015182559484019460019091019084016119a1565b50858210156119fc57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f8351611a2181846020880161145c565b835190830190611a3581836020880161145c565b01949350505050565b5f81611a4c57611a4c611834565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b5f73ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525083604083015260806060830152611ab0608083018461147e565b9695505050505050565b5f60208284031215611aca575f80fd5b8151610ce48161141156fea164736f6c6343000817000a737472696e67206e616d652c737472696e672073796d626f6c2c6164647265737320726f79616c747952656365697665722c75696e7432353620726f79616c74794672616374696f6e2c737472696e6720626173655552492c737472696e6720746f6b656e5552492c626f6f6c207265766572744f6e4d6178537570706c79526561636865642c75696e74323536206d6178537570706c79a164736f6c6343000817000a000000000000000000000000b9d5b99d5d0fa04dd7eb2b0cd7753317c2ea1a84