0x6080604052600436106101dc5760003560e01c8063715018a611610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e146106bb578063e2f45605146106f8578063f2fde38b14610723578063f9d0831a1461074c576101e3565b8063a9059cbb14610603578063afa4f3b214610640578063bb85c6d114610669578063c024666814610692576101e3565b80638da5cb5b116100d15780638da5cb5b1461054757806395d89b4114610572578063a457c2d71461059d578063a6f14f6c146105da576101e3565b8063715018a6146104b157806375f0a874146104c85780638a8c523c146104f35780638b4cee081461051e576101e3565b8063313ce5671161017a5780634fbee193116101495780634fbee193146103f557806364afd18b14610432578063702509fd1461044957806370a0823114610474576101e3565b8063313ce567146103375780633950935114610362578063470624021461039f57806349bd5a5e146103ca576101e3565b80631694505e116101b65780631694505e1461027957806318160ddd146102a457806323b872dd146102cf5780632b14ca561461030c576101e3565b806306fdde03146101e8578063095ea7b3146102135780630cc835a314610250576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b506101fd610775565b60405161020a9190612a37565b60405180910390f35b34801561021f57600080fd5b5061023a60048036038101906102359190612af2565b610807565b6040516102479190612b4d565b60405180910390f35b34801561025c57600080fd5b5061027760048036038101906102729190612b68565b610825565b005b34801561028557600080fd5b5061028e610943565b60405161029b9190612bf4565b60405180910390f35b3480156102b057600080fd5b506102b9610969565b6040516102c69190612c1e565b60405180910390f35b3480156102db57600080fd5b506102f660048036038101906102f19190612c39565b610973565b6040516103039190612b4d565b60405180910390f35b34801561031857600080fd5b50610321610a92565b60405161032e9190612c1e565b60405180910390f35b34801561034357600080fd5b5061034c610a98565b6040516103599190612ca8565b60405180910390f35b34801561036e57600080fd5b5061038960048036038101906103849190612af2565b610aa1565b6040516103969190612b4d565b60405180910390f35b3480156103ab57600080fd5b506103b4610b4d565b6040516103c19190612c1e565b60405180910390f35b3480156103d657600080fd5b506103df610b53565b6040516103ec9190612cd2565b60405180910390f35b34801561040157600080fd5b5061041c60048036038101906104179190612ced565b610b79565b6040516104299190612b4d565b60405180910390f35b34801561043e57600080fd5b50610447610bcf565b005b34801561045557600080fd5b5061045e610d11565b60405161046b9190612c1e565b60405180910390f35b34801561048057600080fd5b5061049b60048036038101906104969190612ced565b610d17565b6040516104a89190612c1e565b60405180910390f35b3480156104bd57600080fd5b506104c6610d5f565b005b3480156104d457600080fd5b506104dd610eb7565b6040516104ea9190612cd2565b60405180910390f35b3480156104ff57600080fd5b50610508610edd565b6040516105159190612b4d565b60405180910390f35b34801561052a57600080fd5b5061054560048036038101906105409190612b68565b610ef0565b005b34801561055357600080fd5b5061055c61100e565b6040516105699190612cd2565b60405180910390f35b34801561057e57600080fd5b50610587611038565b6040516105949190612a37565b60405180910390f35b3480156105a957600080fd5b506105c460048036038101906105bf9190612af2565b6110ca565b6040516105d19190612b4d565b60405180910390f35b3480156105e657600080fd5b5061060160048036038101906105fc9190612b68565b6111b5565b005b34801561060f57600080fd5b5061062a60048036038101906106259190612af2565b6112d3565b6040516106379190612b4d565b60405180910390f35b34801561064c57600080fd5b5061066760048036038101906106629190612b68565b6112f1565b005b34801561067557600080fd5b50610690600480360381019061068b9190612ced565b611422565b005b34801561069e57600080fd5b506106b960048036038101906106b49190612d46565b611655565b005b3480156106c757600080fd5b506106e260048036038101906106dd9190612d86565b611827565b6040516106ef9190612c1e565b60405180910390f35b34801561070457600080fd5b5061070d6118ae565b60405161071a9190612c1e565b60405180910390f35b34801561072f57600080fd5b5061074a60048036038101906107459190612ced565b6118b4565b005b34801561075857600080fd5b50610773600480360381019061076e9190612ced565b611a7a565b005b60606003805461078490612df5565b80601f01602080910402602001604051908101604052809291908181526020018280546107b090612df5565b80156107fd5780601f106107d2576101008083540402835291602001916107fd565b820191906000526020600020905b8154815290600101906020018083116107e057829003601f168201915b5050505050905090565b600061081b610814611d6d565b8484611d75565b6001905092915050565b61082d611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b390612e72565b60405180910390fd5b6009811115610900576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f790612ede565b60405180910390fd5b80600a819055507f7c1445c98b278c9970d007fca6048704bcb25af7cc4a04eb56565d9a9f149ca3600a546040516109389190612c1e565b60405180910390a150565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109bf611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610a7b5782811015610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d90612f70565b60405180910390fd5b610a7a85610a72611d6d565b858403611d75565b5b610a86858585611f3e565b60019150509392505050565b600b5481565b60006012905090565b6000610b43610aae611d6d565b848460016000610abc611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3e9190612fbf565b611d75565b6001905092915050565b600a5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610bd7611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5d90612e72565b60405180910390fd5b60001515600e60019054906101000a900460ff16151514610cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb39061303f565b60405180910390fd5b6001600e60016101000a81548160ff0219169083151502179055507fbeda7dca7bc1b3e80b871f4818129ec73b771581f803d553aeb3484098e5f65a6001604051610d079190612b4d565b60405180910390a1565b600c5481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d67611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610df6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ded90612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e60019054906101000a900460ff1681565b610ef8611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7e90612e72565b60405180910390fd5b6009811115610fcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc2906130ab565b60405180910390fd5b80600b819055507f495ee53ee22006979ebc689a00ed737d7c13b6419142f82dcaea4ed95ac1e780600b546040516110039190612c1e565b60405180910390a150565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461104790612df5565b80601f016020809104026020016040519081016040528092919081815260200182805461107390612df5565b80156110c05780601f10611095576101008083540402835291602001916110c0565b820191906000526020600020905b8154815290600101906020018083116110a357829003601f168201915b5050505050905090565b600080600160006110d9611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611196576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118d9061313d565b60405180910390fd5b6111aa6111a1611d6d565b85858403611d75565b600191505092915050565b6111bd611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461124c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124390612e72565b60405180910390fd5b6009811115611290576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611287906131cf565b60405180910390fd5b80600c819055507f55a18e0066d4ca4f044c3c7bff35c003f6b02ad8a7c71b6d33ae71d262833251600c546040516112c89190612c1e565b60405180910390a150565b60006112e76112e0611d6d565b8484611f3e565b6001905092915050565b6112f9611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611388576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137f90612e72565b60405180910390fd5b620f4240611394610969565b61139e919061321e565b81116113df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d6906132c1565b60405180910390fd5b80600d819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b145600d546040516114179190612c1e565b60405180910390a150565b61142a611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b090612e72565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611549576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154090613353565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036115b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115af906133e5565b60405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fa964ba5c52d7e7bfcae4fb1ae4db9f211756d0e618e85fac5283b882a39e7a0b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405161164a9190612cd2565b60405180910390a150565b61165d611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e390612e72565b60405180910390fd5b801515600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615150361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177590613477565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161181b9190612b4d565b60405180910390a25050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600d5481565b6118bc611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461194b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194290612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036119ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b190613509565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611a82611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0890612e72565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b769061359b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611c655760003373ffffffffffffffffffffffffffffffffffffffff1647604051611bd9906135ec565b60006040518083038185875af1925050503d8060008114611c16576040519150601f19603f3d011682016040523d82523d6000602084013e611c1b565b606091505b5050905080611c5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c569061364d565b60405180910390fd5b50611d6a565b600081905060008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611ca59190612cd2565b602060405180830381865afa158015611cc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce69190613682565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611d239291906136af565b6020604051808303816000875af1158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d6691906136ed565b5050505b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611de4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ddb9061378c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611e53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4a9061381e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611f319190612c1e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611fad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa4906138b0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361201c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201390613942565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156120c05750600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561211557600e60019054906101000a900460ff16612114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161210b906139ae565b60405180910390fd5b5b6000810361212e5761212983836000612455565b612450565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561218f575061218c83610d17565b81145b156121a4576001816121a191906139ce565b90505b60006121af30610d17565b90506000600d5482101590508080156121d55750600e60009054906101000a900460ff16155b801561222e5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15612273576001600e60006101000a81548160ff021916908315150217905550612257826126d4565b6000600e60006101000a81548160ff0219169083151502179055505b6000600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123165750600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061232d5750600e60009054906101000a900460ff165b1561233b5760009050612401565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361239a57600a549050612400565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036123f957600b5490506123ff565b600c5490505b5b5b60008111156124415760006064828661241a9190613a02565b612424919061321e565b9050808561243291906139ce565b945061243f873083612455565b505b61244c868686612455565b5050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036124c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124bb906138b0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612533576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161252a90613942565b60405180910390fd5b61253e83838361299d565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156125c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bb90613ab6565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126579190612fbf565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126bb9190612c1e565b60405180910390a36126ce8484846129a2565b50505050565b60004790506000600267ffffffffffffffff8111156126f6576126f5613ad6565b5b6040519080825280602002602001820160405280156127245781602001602082028036833780820191505090505b509050308160008151811061273c5761273b613b05565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128079190613b49565b8160018151811061281b5761281a613b05565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016128b9959493929190613c6f565b600060405180830381600087803b1580156128d357600080fd5b505af11580156128e7573d6000803e3d6000fd5b50505050600082476128f991906139ce565b90506000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090508015612996577f1309193d68e1a43bd32da5f04e07935cc194c20b2bd1813be5c6898b99dac4be858360405161298d929190613cc9565b60405180910390a15b5050505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156129e15780820151818401526020810190506129c6565b60008484015250505050565b6000601f19601f8301169050919050565b6000612a09826129a7565b612a1381856129b2565b9350612a238185602086016129c3565b612a2c816129ed565b840191505092915050565b60006020820190508181036000830152612a5181846129fe565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612a8982612a5e565b9050919050565b612a9981612a7e565b8114612aa457600080fd5b50565b600081359050612ab681612a90565b92915050565b6000819050919050565b612acf81612abc565b8114612ada57600080fd5b50565b600081359050612aec81612ac6565b92915050565b60008060408385031215612b0957612b08612a59565b5b6000612b1785828601612aa7565b9250506020612b2885828601612add565b9150509250929050565b60008115159050919050565b612b4781612b32565b82525050565b6000602082019050612b626000830184612b3e565b92915050565b600060208284031215612b7e57612b7d612a59565b5b6000612b8c84828501612add565b91505092915050565b6000819050919050565b6000612bba612bb5612bb084612a5e565b612b95565b612a5e565b9050919050565b6000612bcc82612b9f565b9050919050565b6000612bde82612bc1565b9050919050565b612bee81612bd3565b82525050565b6000602082019050612c096000830184612be5565b92915050565b612c1881612abc565b82525050565b6000602082019050612c336000830184612c0f565b92915050565b600080600060608486031215612c5257612c51612a59565b5b6000612c6086828701612aa7565b9350506020612c7186828701612aa7565b9250506040612c8286828701612add565b9150509250925092565b600060ff82169050919050565b612ca281612c8c565b82525050565b6000602082019050612cbd6000830184612c99565b92915050565b612ccc81612a7e565b82525050565b6000602082019050612ce76000830184612cc3565b92915050565b600060208284031215612d0357612d02612a59565b5b6000612d1184828501612aa7565b91505092915050565b612d2381612b32565b8114612d2e57600080fd5b50565b600081359050612d4081612d1a565b92915050565b60008060408385031215612d5d57612d5c612a59565b5b6000612d6b85828601612aa7565b9250506020612d7c85828601612d31565b9150509250929050565b60008060408385031215612d9d57612d9c612a59565b5b6000612dab85828601612aa7565b9250506020612dbc85828601612aa7565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612e0d57607f821691505b602082108103612e2057612e1f612dc6565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612e5c6020836129b2565b9150612e6782612e26565b602082019050919050565b60006020820190508181036000830152612e8b81612e4f565b9050919050565b7f427579204665652063616e6e6f74206265206d6f7265207468616e2039250000600082015250565b6000612ec8601e836129b2565b9150612ed382612e92565b602082019050919050565b60006020820190508181036000830152612ef781612ebb565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612f5a6028836129b2565b9150612f6582612efe565b604082019050919050565b60006020820190508181036000830152612f8981612f4d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612fca82612abc565b9150612fd583612abc565b9250828201905080821115612fed57612fec612f90565b5b92915050565b7f54726164696e6720697320616c726561647920656e61626c6564000000000000600082015250565b6000613029601a836129b2565b915061303482612ff3565b602082019050919050565b600060208201905081810360008301526130588161301c565b9050919050565b7f53656c6c204665652063616e6e6f74206265206d6f7265207468616e20392500600082015250565b6000613095601f836129b2565b91506130a08261305f565b602082019050919050565b600060208201905081810360008301526130c481613088565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006131276025836129b2565b9150613132826130cb565b604082019050919050565b600060208201905081810360008301526131568161311a565b9050919050565b7f57616c6c657420746f2057616c6c6574205472616e736665722046656520636160008201527f6e6e6f74206265206d6f7265207468616e203925000000000000000000000000602082015250565b60006131b96034836129b2565b91506131c48261315d565b604082019050919050565b600060208201905081810360008301526131e8816131ac565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061322982612abc565b915061323483612abc565b925082613244576132436131ef565b5b828204905092915050565b7f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460008201527f6572207468616e20302e3030303125206f6620746f74616c20737570706c7900602082015250565b60006132ab603f836129b2565b91506132b68261324f565b604082019050919050565b600060208201905081810360008301526132da8161329e565b9050919050565b7f4d61726b6574696e672077616c6c657420697320616c7265616479207468617460008201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b600061333d6028836129b2565b9150613348826132e1565b604082019050919050565b6000602082019050818103600083015261336c81613330565b9050919050565b7f4d61726b6574696e672077616c6c65742063616e6e6f7420626520746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b60006133cf602b836129b2565b91506133da82613373565b604082019050919050565b600060208201905081810360008301526133fe816133c2565b9050919050565b7f4163636f756e7420697320616c7265616479207468652076616c7565206f662060008201527f276578636c756465642700000000000000000000000000000000000000000000602082015250565b6000613461602a836129b2565b915061346c82613405565b604082019050919050565b6000602082019050818103600083015261349081613454565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006134f36026836129b2565b91506134fe82613497565b604082019050919050565b60006020820190508181036000830152613522816134e6565b9050919050565b7f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160008201527f6c616e6365206f6620697473206f776e20746f6b656e73000000000000000000602082015250565b60006135856037836129b2565b915061359082613529565b604082019050919050565b600060208201905081810360008301526135b481613578565b9050919050565b600081905092915050565b50565b60006135d66000836135bb565b91506135e1826135c6565b600082019050919050565b60006135f7826135c9565b9150819050919050565b7f436c61696d206661696c65640000000000000000000000000000000000000000600082015250565b6000613637600c836129b2565b915061364282613601565b602082019050919050565b600060208201905081810360008301526136668161362a565b9050919050565b60008151905061367c81612ac6565b92915050565b60006020828403121561369857613697612a59565b5b60006136a68482850161366d565b91505092915050565b60006040820190506136c46000830185612cc3565b6136d16020830184612c0f565b9392505050565b6000815190506136e781612d1a565b92915050565b60006020828403121561370357613702612a59565b5b6000613711848285016136d8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006137766024836129b2565b91506137818261371a565b604082019050919050565b600060208201905081810360008301526137a581613769565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006138086022836129b2565b9150613813826137ac565b604082019050919050565b60006020820190508181036000830152613837816137fb565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061389a6025836129b2565b91506138a58261383e565b604082019050919050565b600060208201905081810360008301526138c98161388d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061392c6023836129b2565b9150613937826138d0565b604082019050919050565b6000602082019050818103600083015261395b8161391f565b9050919050565b7f54726164696e67206973206e6f7420656e61626c656400000000000000000000600082015250565b60006139986016836129b2565b91506139a382613962565b602082019050919050565b600060208201905081810360008301526139c78161398b565b9050919050565b60006139d982612abc565b91506139e483612abc565b92508282039050818111156139fc576139fb612f90565b5b92915050565b6000613a0d82612abc565b9150613a1883612abc565b9250828202613a2681612abc565b91508282048414831517613a3d57613a3c612f90565b5b5092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000613aa06026836129b2565b9150613aab82613a44565b604082019050919050565b60006020820190508181036000830152613acf81613a93565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050613b4381612a90565b92915050565b600060208284031215613b5f57613b5e612a59565b5b6000613b6d84828501613b34565b91505092915050565b6000819050919050565b6000613b9b613b96613b9184613b76565b612b95565b612abc565b9050919050565b613bab81613b80565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613be681612a7e565b82525050565b6000613bf88383613bdd565b60208301905092915050565b6000602082019050919050565b6000613c1c82613bb1565b613c268185613bbc565b9350613c3183613bcd565b8060005b83811015613c62578151613c498882613bec565b9750613c5483613c04565b925050600181019050613c35565b5085935050505092915050565b600060a082019050613c846000830188612c0f565b613c916020830187613ba2565b8181036040830152613ca38186613c11565b9050613cb26060830185612cc3565b613cbf6080830184612c0f565b9695505050505050565b6000604082019050613cde6000830185612c0f565b613ceb6020830184612c0f565b939250505056fea2646970667358221220bb82f9218bfa494ba521837eb39815e1413c4113175a10a56a11b9e00d46eace64736f6c63430008140033
0x60806040523480156200001157600080fd5b506040518060400160405280600681526020017f554e4950414400000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f554e50000000000000000000000000000000000000000000000000000000000081525081600390816200008f919062000d24565b508060049081620000a1919062000d24565b5050506000620000b66200066460201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000731891211c0695a3f51785744efe8c76321183282490506200017f816200066c60201b60201c565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050600081905060008173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000211919062000e75565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308473ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000279573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029f919062000e75565b6040518363ffffffff1660e01b8152600401620002be92919062000eb8565b6020604051808303816000875af1158015620002de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000304919062000e75565b905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003dd30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200084060201b60201c565b6003600a819055506003600b819055506003600c8190555073bc927df095fa9f60341a46bad50cb2da61a901ac600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600960006200046062000a1160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016009600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200057f6a52b7d2dcc80cd2e400000062000a3b60201b60201c565b620005af6200059362000a1160201b60201c565b620005a362000a4560201b60201c565b62000a4f60201b60201c565b620005bf62000a1160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200061e62000a4560201b60201c565b6040516200062d919062000ef6565b60405180910390a36113886200064862000a4560201b60201c565b62000654919062000f71565b600d81905550505050506200122f565b600033905090565b6200067c6200066460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146200070e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000705906200100a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000780576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200077790620010a2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620008b2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008a9906200113a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000924576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200091b90620011d2565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000a04919062000ef6565b60405180910390a3505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8060028190555050565b6000600254905090565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000a9f9190620011f4565b925050819055505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000b2c57607f821691505b60208210810362000b425762000b4162000ae4565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000bac7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000b6d565b62000bb8868362000b6d565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000c0562000bff62000bf98462000bd0565b62000bda565b62000bd0565b9050919050565b6000819050919050565b62000c218362000be4565b62000c3962000c308262000c0c565b84845462000b7a565b825550505050565b600090565b62000c5062000c41565b62000c5d81848462000c16565b505050565b5b8181101562000c855762000c7960008262000c46565b60018101905062000c63565b5050565b601f82111562000cd45762000c9e8162000b48565b62000ca98462000b5d565b8101602085101562000cb9578190505b62000cd162000cc88562000b5d565b83018262000c62565b50505b505050565b600082821c905092915050565b600062000cf96000198460080262000cd9565b1980831691505092915050565b600062000d14838362000ce6565b9150826002028217905092915050565b62000d2f8262000aaa565b67ffffffffffffffff81111562000d4b5762000d4a62000ab5565b5b62000d57825462000b13565b62000d6482828562000c89565b600060209050601f83116001811462000d9c576000841562000d87578287015190505b62000d93858262000d06565b86555062000e03565b601f19841662000dac8662000b48565b60005b8281101562000dd65784890151825560018201915060208501945060208101905062000daf565b8683101562000df6578489015162000df2601f89168262000ce6565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000e3d8262000e10565b9050919050565b62000e4f8162000e30565b811462000e5b57600080fd5b50565b60008151905062000e6f8162000e44565b92915050565b60006020828403121562000e8e5762000e8d62000e0b565b5b600062000e9e8482850162000e5e565b91505092915050565b62000eb28162000e30565b82525050565b600060408201905062000ecf600083018562000ea7565b62000ede602083018462000ea7565b9392505050565b62000ef08162000bd0565b82525050565b600060208201905062000f0d600083018462000ee5565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000f7e8262000bd0565b915062000f8b8362000bd0565b92508262000f9e5762000f9d62000f13565b5b828204905092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062000ff260208362000fa9565b915062000fff8262000fba565b602082019050919050565b60006020820190508181036000830152620010258162000fe3565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006200108a60268362000fa9565b915062001097826200102c565b604082019050919050565b60006020820190508181036000830152620010bd816200107b565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006200112260248362000fa9565b91506200112f82620010c4565b604082019050919050565b60006020820190508181036000830152620011558162001113565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000620011ba60228362000fa9565b9150620011c7826200115c565b604082019050919050565b60006020820190508181036000830152620011ed81620011ab565b9050919050565b6000620012018262000bd0565b91506200120e8362000bd0565b925082820190508082111562001229576200122862000f42565b5b92915050565b613d28806200123f6000396000f3fe6080604052600436106101dc5760003560e01c8063715018a611610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e146106bb578063e2f45605146106f8578063f2fde38b14610723578063f9d0831a1461074c576101e3565b8063a9059cbb14610603578063afa4f3b214610640578063bb85c6d114610669578063c024666814610692576101e3565b80638da5cb5b116100d15780638da5cb5b1461054757806395d89b4114610572578063a457c2d71461059d578063a6f14f6c146105da576101e3565b8063715018a6146104b157806375f0a874146104c85780638a8c523c146104f35780638b4cee081461051e576101e3565b8063313ce5671161017a5780634fbee193116101495780634fbee193146103f557806364afd18b14610432578063702509fd1461044957806370a0823114610474576101e3565b8063313ce567146103375780633950935114610362578063470624021461039f57806349bd5a5e146103ca576101e3565b80631694505e116101b65780631694505e1461027957806318160ddd146102a457806323b872dd146102cf5780632b14ca561461030c576101e3565b806306fdde03146101e8578063095ea7b3146102135780630cc835a314610250576101e3565b366101e357005b600080fd5b3480156101f457600080fd5b506101fd610775565b60405161020a9190612a37565b60405180910390f35b34801561021f57600080fd5b5061023a60048036038101906102359190612af2565b610807565b6040516102479190612b4d565b60405180910390f35b34801561025c57600080fd5b5061027760048036038101906102729190612b68565b610825565b005b34801561028557600080fd5b5061028e610943565b60405161029b9190612bf4565b60405180910390f35b3480156102b057600080fd5b506102b9610969565b6040516102c69190612c1e565b60405180910390f35b3480156102db57600080fd5b506102f660048036038101906102f19190612c39565b610973565b6040516103039190612b4d565b60405180910390f35b34801561031857600080fd5b50610321610a92565b60405161032e9190612c1e565b60405180910390f35b34801561034357600080fd5b5061034c610a98565b6040516103599190612ca8565b60405180910390f35b34801561036e57600080fd5b5061038960048036038101906103849190612af2565b610aa1565b6040516103969190612b4d565b60405180910390f35b3480156103ab57600080fd5b506103b4610b4d565b6040516103c19190612c1e565b60405180910390f35b3480156103d657600080fd5b506103df610b53565b6040516103ec9190612cd2565b60405180910390f35b34801561040157600080fd5b5061041c60048036038101906104179190612ced565b610b79565b6040516104299190612b4d565b60405180910390f35b34801561043e57600080fd5b50610447610bcf565b005b34801561045557600080fd5b5061045e610d11565b60405161046b9190612c1e565b60405180910390f35b34801561048057600080fd5b5061049b60048036038101906104969190612ced565b610d17565b6040516104a89190612c1e565b60405180910390f35b3480156104bd57600080fd5b506104c6610d5f565b005b3480156104d457600080fd5b506104dd610eb7565b6040516104ea9190612cd2565b60405180910390f35b3480156104ff57600080fd5b50610508610edd565b6040516105159190612b4d565b60405180910390f35b34801561052a57600080fd5b5061054560048036038101906105409190612b68565b610ef0565b005b34801561055357600080fd5b5061055c61100e565b6040516105699190612cd2565b60405180910390f35b34801561057e57600080fd5b50610587611038565b6040516105949190612a37565b60405180910390f35b3480156105a957600080fd5b506105c460048036038101906105bf9190612af2565b6110ca565b6040516105d19190612b4d565b60405180910390f35b3480156105e657600080fd5b5061060160048036038101906105fc9190612b68565b6111b5565b005b34801561060f57600080fd5b5061062a60048036038101906106259190612af2565b6112d3565b6040516106379190612b4d565b60405180910390f35b34801561064c57600080fd5b5061066760048036038101906106629190612b68565b6112f1565b005b34801561067557600080fd5b50610690600480360381019061068b9190612ced565b611422565b005b34801561069e57600080fd5b506106b960048036038101906106b49190612d46565b611655565b005b3480156106c757600080fd5b506106e260048036038101906106dd9190612d86565b611827565b6040516106ef9190612c1e565b60405180910390f35b34801561070457600080fd5b5061070d6118ae565b60405161071a9190612c1e565b60405180910390f35b34801561072f57600080fd5b5061074a60048036038101906107459190612ced565b6118b4565b005b34801561075857600080fd5b50610773600480360381019061076e9190612ced565b611a7a565b005b60606003805461078490612df5565b80601f01602080910402602001604051908101604052809291908181526020018280546107b090612df5565b80156107fd5780601f106107d2576101008083540402835291602001916107fd565b820191906000526020600020905b8154815290600101906020018083116107e057829003601f168201915b5050505050905090565b600061081b610814611d6d565b8484611d75565b6001905092915050565b61082d611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b390612e72565b60405180910390fd5b6009811115610900576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f790612ede565b60405180910390fd5b80600a819055507f7c1445c98b278c9970d007fca6048704bcb25af7cc4a04eb56565d9a9f149ca3600a546040516109389190612c1e565b60405180910390a150565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109bf611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610a7b5782811015610a66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5d90612f70565b60405180910390fd5b610a7a85610a72611d6d565b858403611d75565b5b610a86858585611f3e565b60019150509392505050565b600b5481565b60006012905090565b6000610b43610aae611d6d565b848460016000610abc611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3e9190612fbf565b611d75565b6001905092915050565b600a5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610bd7611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5d90612e72565b60405180910390fd5b60001515600e60019054906101000a900460ff16151514610cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb39061303f565b60405180910390fd5b6001600e60016101000a81548160ff0219169083151502179055507fbeda7dca7bc1b3e80b871f4818129ec73b771581f803d553aeb3484098e5f65a6001604051610d079190612b4d565b60405180910390a1565b600c5481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d67611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610df6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ded90612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e60019054906101000a900460ff1681565b610ef8611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7e90612e72565b60405180910390fd5b6009811115610fcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc2906130ab565b60405180910390fd5b80600b819055507f495ee53ee22006979ebc689a00ed737d7c13b6419142f82dcaea4ed95ac1e780600b546040516110039190612c1e565b60405180910390a150565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606004805461104790612df5565b80601f016020809104026020016040519081016040528092919081815260200182805461107390612df5565b80156110c05780601f10611095576101008083540402835291602001916110c0565b820191906000526020600020905b8154815290600101906020018083116110a357829003601f168201915b5050505050905090565b600080600160006110d9611d6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611196576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118d9061313d565b60405180910390fd5b6111aa6111a1611d6d565b85858403611d75565b600191505092915050565b6111bd611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461124c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124390612e72565b60405180910390fd5b6009811115611290576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611287906131cf565b60405180910390fd5b80600c819055507f55a18e0066d4ca4f044c3c7bff35c003f6b02ad8a7c71b6d33ae71d262833251600c546040516112c89190612c1e565b60405180910390a150565b60006112e76112e0611d6d565b8484611f3e565b6001905092915050565b6112f9611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611388576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137f90612e72565b60405180910390fd5b620f4240611394610969565b61139e919061321e565b81116113df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d6906132c1565b60405180910390fd5b80600d819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b145600d546040516114179190612c1e565b60405180910390a150565b61142a611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b090612e72565b60405180910390fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611549576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154090613353565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036115b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115af906133e5565b60405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fa964ba5c52d7e7bfcae4fb1ae4db9f211756d0e618e85fac5283b882a39e7a0b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405161164a9190612cd2565b60405180910390a150565b61165d611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e390612e72565b60405180910390fd5b801515600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615150361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177590613477565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161181b9190612b4d565b60405180910390a25050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600d5481565b6118bc611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461194b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194290612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036119ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b190613509565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611a82611d6d565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0890612e72565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b769061359b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611c655760003373ffffffffffffffffffffffffffffffffffffffff1647604051611bd9906135ec565b60006040518083038185875af1925050503d8060008114611c16576040519150601f19603f3d011682016040523d82523d6000602084013e611c1b565b606091505b5050905080611c5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c569061364d565b60405180910390fd5b50611d6a565b600081905060008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611ca59190612cd2565b602060405180830381865afa158015611cc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce69190613682565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611d239291906136af565b6020604051808303816000875af1158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d6691906136ed565b5050505b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611de4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ddb9061378c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611e53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4a9061381e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611f319190612c1e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611fad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa4906138b0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361201c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201390613942565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156120c05750600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561211557600e60019054906101000a900460ff16612114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161210b906139ae565b60405180910390fd5b5b6000810361212e5761212983836000612455565b612450565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561218f575061218c83610d17565b81145b156121a4576001816121a191906139ce565b90505b60006121af30610d17565b90506000600d5482101590508080156121d55750600e60009054906101000a900460ff16155b801561222e5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15612273576001600e60006101000a81548160ff021916908315150217905550612257826126d4565b6000600e60006101000a81548160ff0219169083151502179055505b6000600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123165750600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061232d5750600e60009054906101000a900460ff165b1561233b5760009050612401565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361239a57600a549050612400565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036123f957600b5490506123ff565b600c5490505b5b5b60008111156124415760006064828661241a9190613a02565b612424919061321e565b9050808561243291906139ce565b945061243f873083612455565b505b61244c868686612455565b5050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036124c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124bb906138b0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612533576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161252a90613942565b60405180910390fd5b61253e83838361299d565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156125c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bb90613ab6565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126579190612fbf565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126bb9190612c1e565b60405180910390a36126ce8484846129a2565b50505050565b60004790506000600267ffffffffffffffff8111156126f6576126f5613ad6565b5b6040519080825280602002602001820160405280156127245781602001602082028036833780820191505090505b509050308160008151811061273c5761273b613b05565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128079190613b49565b8160018151811061281b5761281a613b05565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016128b9959493929190613c6f565b600060405180830381600087803b1580156128d357600080fd5b505af11580156128e7573d6000803e3d6000fd5b50505050600082476128f991906139ce565b90506000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505090508015612996577f1309193d68e1a43bd32da5f04e07935cc194c20b2bd1813be5c6898b99dac4be858360405161298d929190613cc9565b60405180910390a15b5050505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156129e15780820151818401526020810190506129c6565b60008484015250505050565b6000601f19601f8301169050919050565b6000612a09826129a7565b612a1381856129b2565b9350612a238185602086016129c3565b612a2c816129ed565b840191505092915050565b60006020820190508181036000830152612a5181846129fe565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612a8982612a5e565b9050919050565b612a9981612a7e565b8114612aa457600080fd5b50565b600081359050612ab681612a90565b92915050565b6000819050919050565b612acf81612abc565b8114612ada57600080fd5b50565b600081359050612aec81612ac6565b92915050565b60008060408385031215612b0957612b08612a59565b5b6000612b1785828601612aa7565b9250506020612b2885828601612add565b9150509250929050565b60008115159050919050565b612b4781612b32565b82525050565b6000602082019050612b626000830184612b3e565b92915050565b600060208284031215612b7e57612b7d612a59565b5b6000612b8c84828501612add565b91505092915050565b6000819050919050565b6000612bba612bb5612bb084612a5e565b612b95565b612a5e565b9050919050565b6000612bcc82612b9f565b9050919050565b6000612bde82612bc1565b9050919050565b612bee81612bd3565b82525050565b6000602082019050612c096000830184612be5565b92915050565b612c1881612abc565b82525050565b6000602082019050612c336000830184612c0f565b92915050565b600080600060608486031215612c5257612c51612a59565b5b6000612c6086828701612aa7565b9350506020612c7186828701612aa7565b9250506040612c8286828701612add565b9150509250925092565b600060ff82169050919050565b612ca281612c8c565b82525050565b6000602082019050612cbd6000830184612c99565b92915050565b612ccc81612a7e565b82525050565b6000602082019050612ce76000830184612cc3565b92915050565b600060208284031215612d0357612d02612a59565b5b6000612d1184828501612aa7565b91505092915050565b612d2381612b32565b8114612d2e57600080fd5b50565b600081359050612d4081612d1a565b92915050565b60008060408385031215612d5d57612d5c612a59565b5b6000612d6b85828601612aa7565b9250506020612d7c85828601612d31565b9150509250929050565b60008060408385031215612d9d57612d9c612a59565b5b6000612dab85828601612aa7565b9250506020612dbc85828601612aa7565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612e0d57607f821691505b602082108103612e2057612e1f612dc6565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612e5c6020836129b2565b9150612e6782612e26565b602082019050919050565b60006020820190508181036000830152612e8b81612e4f565b9050919050565b7f427579204665652063616e6e6f74206265206d6f7265207468616e2039250000600082015250565b6000612ec8601e836129b2565b9150612ed382612e92565b602082019050919050565b60006020820190508181036000830152612ef781612ebb565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612f5a6028836129b2565b9150612f6582612efe565b604082019050919050565b60006020820190508181036000830152612f8981612f4d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612fca82612abc565b9150612fd583612abc565b9250828201905080821115612fed57612fec612f90565b5b92915050565b7f54726164696e6720697320616c726561647920656e61626c6564000000000000600082015250565b6000613029601a836129b2565b915061303482612ff3565b602082019050919050565b600060208201905081810360008301526130588161301c565b9050919050565b7f53656c6c204665652063616e6e6f74206265206d6f7265207468616e20392500600082015250565b6000613095601f836129b2565b91506130a08261305f565b602082019050919050565b600060208201905081810360008301526130c481613088565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006131276025836129b2565b9150613132826130cb565b604082019050919050565b600060208201905081810360008301526131568161311a565b9050919050565b7f57616c6c657420746f2057616c6c6574205472616e736665722046656520636160008201527f6e6e6f74206265206d6f7265207468616e203925000000000000000000000000602082015250565b60006131b96034836129b2565b91506131c48261315d565b604082019050919050565b600060208201905081810360008301526131e8816131ac565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061322982612abc565b915061323483612abc565b925082613244576132436131ef565b5b828204905092915050565b7f53776170546f6b656e734174416d6f756e74206d75737420626520677265617460008201527f6572207468616e20302e3030303125206f6620746f74616c20737570706c7900602082015250565b60006132ab603f836129b2565b91506132b68261324f565b604082019050919050565b600060208201905081810360008301526132da8161329e565b9050919050565b7f4d61726b6574696e672077616c6c657420697320616c7265616479207468617460008201527f2061646472657373000000000000000000000000000000000000000000000000602082015250565b600061333d6028836129b2565b9150613348826132e1565b604082019050919050565b6000602082019050818103600083015261336c81613330565b9050919050565b7f4d61726b6574696e672077616c6c65742063616e6e6f7420626520746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b60006133cf602b836129b2565b91506133da82613373565b604082019050919050565b600060208201905081810360008301526133fe816133c2565b9050919050565b7f4163636f756e7420697320616c7265616479207468652076616c7565206f662060008201527f276578636c756465642700000000000000000000000000000000000000000000602082015250565b6000613461602a836129b2565b915061346c82613405565b604082019050919050565b6000602082019050818103600083015261349081613454565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006134f36026836129b2565b91506134fe82613497565b604082019050919050565b60006020820190508181036000830152613522816134e6565b9050919050565b7f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160008201527f6c616e6365206f6620697473206f776e20746f6b656e73000000000000000000602082015250565b60006135856037836129b2565b915061359082613529565b604082019050919050565b600060208201905081810360008301526135b481613578565b9050919050565b600081905092915050565b50565b60006135d66000836135bb565b91506135e1826135c6565b600082019050919050565b60006135f7826135c9565b9150819050919050565b7f436c61696d206661696c65640000000000000000000000000000000000000000600082015250565b6000613637600c836129b2565b915061364282613601565b602082019050919050565b600060208201905081810360008301526136668161362a565b9050919050565b60008151905061367c81612ac6565b92915050565b60006020828403121561369857613697612a59565b5b60006136a68482850161366d565b91505092915050565b60006040820190506136c46000830185612cc3565b6136d16020830184612c0f565b9392505050565b6000815190506136e781612d1a565b92915050565b60006020828403121561370357613702612a59565b5b6000613711848285016136d8565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006137766024836129b2565b91506137818261371a565b604082019050919050565b600060208201905081810360008301526137a581613769565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006138086022836129b2565b9150613813826137ac565b604082019050919050565b60006020820190508181036000830152613837816137fb565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061389a6025836129b2565b91506138a58261383e565b604082019050919050565b600060208201905081810360008301526138c98161388d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061392c6023836129b2565b9150613937826138d0565b604082019050919050565b6000602082019050818103600083015261395b8161391f565b9050919050565b7f54726164696e67206973206e6f7420656e61626c656400000000000000000000600082015250565b60006139986016836129b2565b91506139a382613962565b602082019050919050565b600060208201905081810360008301526139c78161398b565b9050919050565b60006139d982612abc565b91506139e483612abc565b92508282039050818111156139fc576139fb612f90565b5b92915050565b6000613a0d82612abc565b9150613a1883612abc565b9250828202613a2681612abc565b91508282048414831517613a3d57613a3c612f90565b5b5092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000613aa06026836129b2565b9150613aab82613a44565b604082019050919050565b60006020820190508181036000830152613acf81613a93565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050613b4381612a90565b92915050565b600060208284031215613b5f57613b5e612a59565b5b6000613b6d84828501613b34565b91505092915050565b6000819050919050565b6000613b9b613b96613b9184613b76565b612b95565b612abc565b9050919050565b613bab81613b80565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613be681612a7e565b82525050565b6000613bf88383613bdd565b60208301905092915050565b6000602082019050919050565b6000613c1c82613bb1565b613c268185613bbc565b9350613c3183613bcd565b8060005b83811015613c62578151613c498882613bec565b9750613c5483613c04565b925050600181019050613c35565b5085935050505092915050565b600060a082019050613c846000830188612c0f565b613c916020830187613ba2565b8181036040830152613ca38186613c11565b9050613cb26060830185612cc3565b613cbf6080830184612c0f565b9695505050505050565b6000604082019050613cde6000830185612c0f565b613ceb6020830184612c0f565b939250505056fea2646970667358221220bb82f9218bfa494ba521837eb39815e1413c4113175a10a56a11b9e00d46eace64736f6c63430008140033