0 txs
0 calls
constructor
No constructor.
functions
acceptedToken
viewfunction acceptedToken() view returns (address)
beforeAgreementCreated
viewfunction beforeAgreementCreated(address, address, bytes32, bytes, bytes) view returns (bytes)
beforeAgreementTerminated
viewfunction beforeAgreementTerminated(address superToken, address agreementClass, bytes32 agreementId, bytes, bytes) view returns (bytes cbdata)
beforeAgreementUpdated
viewfunction beforeAgreementUpdated(address, address, bytes32 agreementId, bytes, bytes) view returns (bytes cbdata)
CFA_ID
viewfunction CFA_ID() view returns (bytes32)
cfaV1Lib
viewfunction cfaV1Lib() view returns (address host, address cfa)
locker
viewfunction locker() view returns (address)
minFlowRate
viewfunction minFlowRate() view returns (int96)
afterAgreementCreated
nonpayablefunction afterAgreementCreated(address superToken, address agreementClass, bytes32 agreementId, bytes agreementData, bytes, bytes ctx) returns (bytes newCtx)
afterAgreementTerminated
nonpayablefunction afterAgreementTerminated(address superToken, address agreementClass, bytes32, bytes agreementData, bytes cbdata, bytes ctx) returns (bytes newCtx)
afterAgreementUpdated
nonpayablefunction afterAgreementUpdated(address superToken, address agreementClass, bytes32 agreementId, bytes, bytes cbdata, bytes ctx) returns (bytes newCtx)
expireAndRefundFor
nonpayablefunction expireAndRefundFor(address sender)
initialize
nonpayablefunction initialize(address _host, address _locker)
syncPrice
nonpayablefunction syncPrice()
withdraw
nonpayablefunction withdraw()
events
LockerCloseNotificationFailed
event LockerCloseNotificationFailed(address indexed locker)
errors
HostRequired
error HostRequired()
LockerRequired
error LockerRequired()
LowFlowRate
error LowFlowRate()
NotCFAv1
error NotCFAv1()
NotHost
error NotHost()
NotSuperToken
error NotSuperToken()
SafeCast
error SafeCast()
creation bytecode
0x608060405234801561001057600080fd5b50613300806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80634b3be48311610097578063884d1f4011610066578063884d1f4014610263578063d08cb8a814610293578063d7b96d4e146102af578063d86ed3e5146102cd576100f5565b80634b3be483146101c657806353c11f99146101e457806355586a31146102145780635f9e7d7714610233576100f5565b80633ccfd60b116100d35780633ccfd60b146101785780633f438fbb14610182578063451c3d801461018c578063485cc955146101aa576100f5565b8063215eed02146100fa578063230dbd291461011857806330d9c91514610148575b600080fd5b6101026102fd565b60405161010f919061216a565b60405180910390f35b610132600480360381019061012d91906122c6565b610321565b60405161013f9190612445565b60405180910390f35b610162600480360381019061015d9190612467565b610579565b60405161016f9190612445565b60405180910390f35b6101806105b6565b005b61018a610716565b005b6101946108a6565b6040516101a19190612582565b60405180910390f35b6101c460048036038101906101bf919061259d565b6108cc565b005b6101ce610d07565b6040516101db91906125f9565b60405180910390f35b6101fe60048036038101906101f991906122c6565b610d1a565b60405161020b9190612445565b60405180910390f35b61021c610f8b565b60405161022a929190612656565b60405180910390f35b61024d60048036038101906102489190612467565b610fdd565b60405161025a9190612445565b60405180910390f35b61027d60048036038101906102789190612467565b6110d6565b60405161028a9190612445565b60405180910390f35b6102ad60048036038101906102a8919061267f565b61110d565b005b6102b7611278565b6040516102c491906126cd565b60405180910390f35b6102e760048036038101906102e291906122c6565b61129e565b6040516102f49190612445565b60405180910390f35b7fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd381565b6060600160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146103ad576040517f8ff4f0c900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b89896103b882611544565b6103ee576040517f134d673900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103f78161159e565b61042d576040517f65e170d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000878781019061043e9190612714565b9050600061044b8c611638565b9050600360149054906101000a9004600b0b600b0b81600b0b121561049c576040517f7869581700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81600b0b81600b0b131561050c5761050382826104b99190612770565b88888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061170c565b9450505061056a565b610565818361051b9190612770565b88888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506118df565b945050505b50509998505050505050505050565b60606040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ad90612857565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016106729190612886565b602060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b391906128d7565b6040518363ffffffff1660e01b81526004016106d0929190612913565b6020604051808303816000875af11580156106ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107139190612974565b50565b60006107b3600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166310e569736040518163ffffffff1660e01b81526004016020604051808303816000875af115801561078a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ae91906128d7565b611ab9565b90506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166311a4c03a6040518163ffffffff1660e01b81526004016020604051808303816000875af1158015610826573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084a91906128d7565b90506000811161085a578161086f565b61086381611ab9565b8261086e91906129d0565b5b600360146101000a8154816bffffffffffffffffffffffff0219169083600b0b6bffffffffffffffffffffffff1602179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060019054906101000a900460ff166108f45760008054906101000a900460ff16156108fd565b6108fc611b0c565b5b61093c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093390612aac565b60405180910390fd5b60008060019054906101000a900460ff16159050801561098c576001600060016101000a81548160ff02191690831515021790555060016000806101000a81548160ff0219169083151502179055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036109f2576040517fb9f3d63b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a58576040517f5ce55dfa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052808473ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1663b6d200de7fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd36040518263ffffffff1660e01b8152600401610ad8919061216a565b602060405180830381865afa158015610af5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b199190612b0a565b73ffffffffffffffffffffffffffffffffffffffff16815250600160008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555090505081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639d76ea586040518163ffffffff1660e01b81526004016020604051808303816000875af1158015610c75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c999190612b4c565b600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610ce1610716565b8015610d025760008060016101000a81548160ff0219169083151502179055505b505050565b600360149054906101000a9004600b0b81565b6060600160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610da6576040517f8ff4f0c900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610daf8a611544565b1580610dc15750610dbf8961159e565b155b15610e125782828080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509050610f7e565b610e6e8585810190610e249190612714565b84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506118df565b905060008787810190610e819190612bb7565b509050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166397aa390a8260006040518363ffffffff1660e01b8152600401610ee2929190612c32565b600060405180830381600087803b158015610efc57600080fd5b505af1925050508015610f0d575060015b610f7b57600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fad54938020e5605514c0d700b3df01594e71270636ec4489dbedefdee297f9b260405160405180910390a2610f7c565b5b505b9998505050505050505050565b60018060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905082565b6060600160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611069576040517f8ff4f0c900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61107288611544565b158061108457506110828761159e565b155b156110a0576040518060200160405280600081525090506110cb565b6110a986611638565b6040516020016110b991906125f9565b60405160208183030381529060405290505b979650505050505050565b60606110e186611638565b6040516020016110f191906125f9565b6040516020818303038152906040529050979650505050505050565b60006001800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e6a1e888600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684306040518463ffffffff1660e01b815260040161119293929190612c5b565b608060405180830381865afa1580156111af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d39190612ca7565b5050915050600081600b0b0361127457600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166397aa390a8360006040518363ffffffff1660e01b8152600401611241929190612c32565b600060405180830381600087803b15801561125b57600080fd5b505af115801561126f573d6000803e3d6000fd5b505050505b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461132a576040517f8ff4f0c900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b898961133582611544565b61136b576040517f134d673900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113748161159e565b6113aa576040517f65e170d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600089898101906113bb9190612bb7565b50905060006113c98c611638565b9050600360149054906101000a9004600b0b600b0b81600b0b121561141a576040517f7869581700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6114688188888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061170c565b9450600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166381a3c9436114b184611b1d565b6114da7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611bc5565b6114e330611b1d565b6040518463ffffffff1660e01b815260040161150193929190612e8a565b600060405180830381600087803b15801561151b57600080fd5b505af115801561152f573d6000803e3d6000fd5b50505050505050509998505050505050505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60007fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd38273ffffffffffffffffffffffffffffffffffffffff16637730599e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561160c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116309190612eeb565b149050919050565b60006001800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663aabd2668600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b81526004016116bb929190612f18565b608060405180830381865afa1580156116d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116fc9190612ca7565b9091925090505080915050919050565b606060006001800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e6a1e888600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518463ffffffff1660e01b81526004016117b593929190612c5b565b608060405180830381865afa1580156117d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117f69190612ca7565b5050915050600081600b0b0361186c5761186483600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876001611c3f90949392919063ffffffff16565b9150506118d9565b6118d583600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1687856118c29190612f41565b6001611de490949392919063ffffffff16565b9150505b92915050565b606060006001800160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e6a1e888600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518463ffffffff1660e01b815260040161198893929190612c5b565b608060405180830381865afa1580156119a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119c99190612ca7565b5050915050600084826119dc9190612770565b9050600081600b0b13611a5057611a478430600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001611f8990949392919063ffffffff16565b92505050611ab3565b611aae84600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846001611de490949392919063ffffffff16565b925050505b92915050565b60006b7fffffffffffffffffffffff600b0b821115611b04576040517fad9f41c100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b819050919050565b6000611b173061212e565b15905090565b60606000600167ffffffffffffffff811115611b3c57611b3b612fa5565b5b604051908082528060200260200182016040528015611b6a5781602001602082028036833780820191505090505b5090508281600081518110611b8257611b81612fd4565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080915050919050565b60606000600167ffffffffffffffff811115611be457611be3612fa5565b5b604051908082528060200260200182016040528015611c125781602001602082028036833780820191505090505b5090508281600081518110611c2a57611c29612fd4565b5b60200260200101818152505080915050919050565b60608560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634329d2938760010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166362fc305e60e01b868887600067ffffffffffffffff811115611ccc57611ccb612fa5565b5b6040519080825280601f01601f191660200182016040528015611cfe5781602001600182028036833780820191505090505b50604051602401611d129493929190613024565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050886040518463ffffffff1660e01b8152600401611d8e939291906130bc565b6000604051808303816000875af1158015611dad573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611dd69190613206565b508091505095945050505050565b60608560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634329d2938760010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166350209a6260e01b868887600067ffffffffffffffff811115611e7157611e70612fa5565b5b6040519080825280601f01601f191660200182016040528015611ea35781602001600182028036833780820191505090505b50604051602401611eb79493929190613024565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050886040518463ffffffff1660e01b8152600401611f33939291906130bc565b6000604051808303816000875af1158015611f52573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611f7b9190613206565b508091505095945050505050565b60608560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634329d2938760010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1663b4b333c660e01b858888600067ffffffffffffffff81111561201657612015612fa5565b5b6040519080825280601f01601f1916602001820160405280156120485781602001600182028036833780820191505090505b5060405160240161205c949392919061327e565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050886040518463ffffffff1660e01b81526004016120d8939291906130bc565b6000604051808303816000875af11580156120f7573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906121209190613206565b508091505095945050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000819050919050565b61216481612151565b82525050565b600060208201905061217f600083018461215b565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006121c482612199565b9050919050565b60006121d6826121b9565b9050919050565b6121e6816121cb565b81146121f157600080fd5b50565b600081359050612203816121dd565b92915050565b612212816121b9565b811461221d57600080fd5b50565b60008135905061222f81612209565b92915050565b61223e81612151565b811461224957600080fd5b50565b60008135905061225b81612235565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261228657612285612261565b5b8235905067ffffffffffffffff8111156122a3576122a2612266565b5b6020830191508360018202830111156122bf576122be61226b565b5b9250929050565b600080600080600080600080600060c08a8c0312156122e8576122e761218f565b5b60006122f68c828d016121f4565b99505060206123078c828d01612220565b98505060406123188c828d0161224c565b97505060608a013567ffffffffffffffff81111561233957612338612194565b5b6123458c828d01612270565b965096505060808a013567ffffffffffffffff81111561236857612367612194565b5b6123748c828d01612270565b945094505060a08a013567ffffffffffffffff81111561239757612396612194565b5b6123a38c828d01612270565b92509250509295985092959850929598565b600081519050919050565b600082825260208201905092915050565b60005b838110156123ef5780820151818401526020810190506123d4565b60008484015250505050565b6000601f19601f8301169050919050565b6000612417826123b5565b61242181856123c0565b93506124318185602086016123d1565b61243a816123fb565b840191505092915050565b6000602082019050818103600083015261245f818461240c565b905092915050565b600080600080600080600060a0888a0312156124865761248561218f565b5b60006124948a828b016121f4565b97505060206124a58a828b01612220565b96505060406124b68a828b0161224c565b955050606088013567ffffffffffffffff8111156124d7576124d6612194565b5b6124e38a828b01612270565b9450945050608088013567ffffffffffffffff81111561250657612505612194565b5b6125128a828b01612270565b925092505092959891949750929550565b6000819050919050565b600061254861254361253e84612199565b612523565b612199565b9050919050565b600061255a8261252d565b9050919050565b600061256c8261254f565b9050919050565b61257c81612561565b82525050565b60006020820190506125976000830184612573565b92915050565b600080604083850312156125b4576125b361218f565b5b60006125c285828601612220565b92505060206125d385828601612220565b9150509250929050565b600081600b0b9050919050565b6125f3816125dd565b82525050565b600060208201905061260e60008301846125ea565b92915050565b600061261f8261254f565b9050919050565b61262f81612614565b82525050565b60006126408261254f565b9050919050565b61265081612635565b82525050565b600060408201905061266b6000830185612626565b6126786020830184612647565b9392505050565b6000602082840312156126955761269461218f565b5b60006126a384828501612220565b91505092915050565b60006126b78261254f565b9050919050565b6126c7816126ac565b82525050565b60006020820190506126e260008301846126be565b92915050565b6126f1816125dd565b81146126fc57600080fd5b50565b60008135905061270e816126e8565b92915050565b60006020828403121561272a5761272961218f565b5b6000612738848285016126ff565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061277b826125dd565b9150612786836125dd565b925082820390506b7fffffffffffffffffffffff81137fffffffffffffffffffffffffffffffffffffffff800000000000000000000000821217156127ce576127cd612741565b5b92915050565b600082825260208201905092915050565b7f556e737570706f727465642063616c6c6261636b202d204265666f726520416760008201527f7265656d656e7420437265617465640000000000000000000000000000000000602082015250565b6000612841602f836127d4565b915061284c826127e5565b604082019050919050565b6000602082019050818103600083015261287081612834565b9050919050565b612880816121b9565b82525050565b600060208201905061289b6000830184612877565b92915050565b6000819050919050565b6128b4816128a1565b81146128bf57600080fd5b50565b6000815190506128d1816128ab565b92915050565b6000602082840312156128ed576128ec61218f565b5b60006128fb848285016128c2565b91505092915050565b61290d816128a1565b82525050565b60006040820190506129286000830185612877565b6129356020830184612904565b9392505050565b60008115159050919050565b6129518161293c565b811461295c57600080fd5b50565b60008151905061296e81612948565b92915050565b60006020828403121561298a5761298961218f565b5b60006129988482850161295f565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006129db826125dd565b91506129e6836125dd565b9250826129f6576129f56129a1565b5b600160000383147fffffffffffffffffffffffffffffffffffffffff80000000000000000000000083141615612a2f57612a2e612741565b5b828205905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000612a96602e836127d4565b9150612aa182612a3a565b604082019050919050565b60006020820190508181036000830152612ac581612a89565b9050919050565b6000612ad7826121b9565b9050919050565b612ae781612acc565b8114612af257600080fd5b50565b600081519050612b0481612ade565b92915050565b600060208284031215612b2057612b1f61218f565b5b6000612b2e84828501612af5565b91505092915050565b600081519050612b4681612209565b92915050565b600060208284031215612b6257612b6161218f565b5b6000612b7084828501612b37565b91505092915050565b6000612b8482612199565b9050919050565b612b9481612b79565b8114612b9f57600080fd5b50565b600081359050612bb181612b8b565b92915050565b60008060408385031215612bce57612bcd61218f565b5b6000612bdc85828601612ba2565b9250506020612bed85828601612ba2565b9150509250929050565b6000819050919050565b6000612c1c612c17612c1284612bf7565b612523565b6128a1565b9050919050565b612c2c81612c01565b82525050565b6000604082019050612c476000830185612877565b612c546020830184612c23565b9392505050565b6000606082019050612c706000830186612573565b612c7d6020830185612877565b612c8a6040830184612877565b949350505050565b600081519050612ca1816126e8565b92915050565b60008060008060808587031215612cc157612cc061218f565b5b6000612ccf878288016128c2565b9450506020612ce087828801612c92565b9350506040612cf1878288016128c2565b9250506060612d02878288016128c2565b91505092959194509250565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612d43816121b9565b82525050565b6000612d558383612d3a565b60208301905092915050565b6000602082019050919050565b6000612d7982612d0e565b612d838185612d19565b9350612d8e83612d2a565b8060005b83811015612dbf578151612da68882612d49565b9750612db183612d61565b925050600181019050612d92565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612e01816128a1565b82525050565b6000612e138383612df8565b60208301905092915050565b6000602082019050919050565b6000612e3782612dcc565b612e418185612dd7565b9350612e4c83612de8565b8060005b83811015612e7d578151612e648882612e07565b9750612e6f83612e1f565b925050600181019050612e50565b5085935050505092915050565b60006060820190508181036000830152612ea48186612d6e565b90508181036020830152612eb88185612e2c565b90508181036040830152612ecc8184612d6e565b9050949350505050565b600081519050612ee581612235565b92915050565b600060208284031215612f0157612f0061218f565b5b6000612f0f84828501612ed6565b91505092915050565b6000604082019050612f2d6000830185612573565b612f3a602083018461215b565b9392505050565b6000612f4c826125dd565b9150612f57836125dd565b925082820190507fffffffffffffffffffffffffffffffffffffffff80000000000000000000000081126b7fffffffffffffffffffffff82131715612f9f57612f9e612741565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061300e8261254f565b9050919050565b61301e81613003565b82525050565b60006080820190506130396000830187613015565b6130466020830186612877565b61305360408301856125ea565b8181036060830152613065818461240c565b905095945050505050565b7f3078000000000000000000000000000000000000000000000000000000000000600082015250565b60006130a66002836123c0565b91506130b182613070565b602082019050919050565b60006080820190506130d16000830186612647565b81810360208301526130e3818561240c565b905081810360408301526130f681613099565b9050818103606083015261310a818461240c565b9050949350505050565b600080fd5b613122826123fb565b810181811067ffffffffffffffff8211171561314157613140612fa5565b5b80604052505050565b6000613154612185565b90506131608282613119565b919050565b600067ffffffffffffffff8211156131805761317f612fa5565b5b613189826123fb565b9050602081019050919050565b60006131a96131a484613165565b61314a565b9050828152602081018484840111156131c5576131c4613114565b5b6131d08482856123d1565b509392505050565b600082601f8301126131ed576131ec612261565b5b81516131fd848260208601613196565b91505092915050565b6000806040838503121561321d5761321c61218f565b5b600083015167ffffffffffffffff81111561323b5761323a612194565b5b613247858286016131d8565b925050602083015167ffffffffffffffff81111561326857613267612194565b5b613274858286016131d8565b9150509250929050565b60006080820190506132936000830187613015565b6132a06020830186612877565b6132ad6040830185612877565b81810360608301526132bf818461240c565b90509594505050505056fea26469706673582212200ba068de96adfe69d6d7b0cdd88ad7e77a442eaf66ad1941a27d0e93c6a812da64736f6c63430008110033