60806040526001600560006101000a81548160ff02191690831515021790555060146006556014600755600160085560016009556014600a556014600b556014600c556000600d556012600a62000057919062000646565b621e848062000067919062000697565b600e556012600a6200007a919062000646565b621e84806200008a919062000697565b600f556012600a6200009d919062000646565b620186a0620000ad919062000697565b6010556012600a620000c0919062000646565b62124f80620000d0919062000697565b6011556000601360156101000a81548160ff0219169083151502179055506000601360166101000a81548160ff0219169083151502179055506000601360176101000a81548160ff0219169083151502179055503480156200013157600080fd5b506000620001446200047b60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001f26200047b60201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a62000242919062000646565b6305f5e10062000253919062000697565b60016000620002676200047b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160036000620002bb6200048360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003ee6200047b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a6200044d919062000646565b6305f5e1006200045e919062000697565b6040516200046d9190620006f3565b60405180910390a362000710565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200053a57808604811115620005125762000511620004ac565b5b6001851615620005225780820291505b80810290506200053285620004db565b9450620004f2565b94509492505050565b60008262000555576001905062000628565b8162000565576000905062000628565b81600181146200057e57600281146200058957620005bf565b600191505062000628565b60ff8411156200059e576200059d620004ac565b5b8360020a915084821115620005b857620005b7620004ac565b5b5062000628565b5060208310610133831016604e8410600b8410161715620005f95782820a905083811115620005f357620005f2620004ac565b5b62000628565b620006088484846001620004e8565b92509050818404811115620006225762000621620004ac565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000653826200062f565b9150620006608362000639565b92506200068f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000543565b905092915050565b6000620006a4826200062f565b9150620006b1836200062f565b9250828202620006c1816200062f565b91508282048414831517620006db57620006da620004ac565b5b5092915050565b620006ed816200062f565b82525050565b60006020820190506200070a6000830184620006e2565b92915050565b6130d080620007206000396000f3fe6080604052600436106101235760003560e01c80637d1db4a5116100a0578063bf474bed11610064578063bf474bed146103c0578063c876d0b9146103eb578063c9567bf914610416578063dd62ed3e1461042d578063f728c7a81461046a5761012a565b80637d1db4a5146102d75780638da5cb5b146103025780638f9a55c01461032d57806395d89b4114610358578063a9059cbb146103835761012a565b8063313ce567116100e7578063313ce5671461022a57806351bc3c851461025557806356cd40e71461026c57806370a0823114610283578063715018a6146102c05761012a565b806306fdde031461012f578063095ea7b31461015a5780630faee56f1461019757806318160ddd146101c257806323b872dd146101ed5761012a565b3661012a57005b600080fd5b34801561013b57600080fd5b50610144610495565b6040516101519190612146565b60405180910390f35b34801561016657600080fd5b50610181600480360381019061017c9190612201565b6104d2565b60405161018e919061225c565b60405180910390f35b3480156101a357600080fd5b506101ac6104f0565b6040516101b99190612286565b60405180910390f35b3480156101ce57600080fd5b506101d76104f6565b6040516101e49190612286565b60405180910390f35b3480156101f957600080fd5b50610214600480360381019061020f91906122a1565b61051a565b604051610221919061225c565b60405180910390f35b34801561023657600080fd5b5061023f6105f3565b60405161024c9190612310565b60405180910390f35b34801561026157600080fd5b5061026a6105fc565b005b34801561027857600080fd5b50610281610699565b005b34801561028f57600080fd5b506102aa60048036038101906102a5919061232b565b6107ff565b6040516102b79190612286565b60405180910390f35b3480156102cc57600080fd5b506102d5610848565b005b3480156102e357600080fd5b506102ec61099b565b6040516102f99190612286565b60405180910390f35b34801561030e57600080fd5b506103176109a1565b6040516103249190612367565b60405180910390f35b34801561033957600080fd5b506103426109ca565b60405161034f9190612286565b60405180910390f35b34801561036457600080fd5b5061036d6109d0565b60405161037a9190612146565b60405180910390f35b34801561038f57600080fd5b506103aa60048036038101906103a59190612201565b610a0d565b6040516103b7919061225c565b60405180910390f35b3480156103cc57600080fd5b506103d5610a2b565b6040516103e29190612286565b60405180910390f35b3480156103f757600080fd5b50610400610a31565b60405161040d919061225c565b60405180910390f35b34801561042257600080fd5b5061042b610a44565b005b34801561043957600080fd5b50610454600480360381019061044f9190612382565b610f7c565b6040516104619190612286565b60405180910390f35b34801561047657600080fd5b5061047f611003565b60405161048c919061225c565b60405180910390f35b60606040518060400160405280600981526020017f42756c6c20506570650000000000000000000000000000000000000000000000815250905090565b60006104e66104df611016565b848461101e565b6001905092915050565b60115481565b60006012600a6105069190612524565b6305f5e100610515919061256f565b905090565b60006105278484846111e7565b6105e884610533611016565b6105e38560405180606001604052806028815260200161307360289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610599611016565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b859092919063ffffffff16565b61101e565b600190509392505050565b60006012905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661063d611016565b73ffffffffffffffffffffffffffffffffffffffff161461065d57600080fd5b6000610668306107ff565b9050600081111561067d5761067c81611be9565b5b600047905060008111156106955761069481611e62565b5b5050565b6106a1611016565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461072e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610725906125fd565b60405180910390fd5b6001601360176101000a81548160ff0219169083151502179055506012600a6107579190612524565b6305f5e100610766919061256f565b600e819055506012600a61077a9190612524565b6305f5e100610789919061256f565b600f819055506000600560006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6012600a6107d99190612524565b6305f5e1006107e8919061256f565b6040516107f59190612286565b60405180910390a1565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610850611016565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d4906125fd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600e5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600481526020017f42554c4c00000000000000000000000000000000000000000000000000000000815250905090565b6000610a21610a1a611016565b84846111e7565b6001905092915050565b60105481565b600560009054906101000a900460ff1681565b610a4c611016565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad0906125fd565b60405180910390fd5b601360149054906101000a900460ff1615610b29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2090612669565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610bc730601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610bb39190612524565b6305f5e100610bc2919061256f565b61101e565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c58919061269e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ce1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d05919061269e565b6040518363ffffffff1660e01b8152600401610d229291906126cb565b6020604051808303816000875af1158015610d41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d65919061269e565b601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610dee306107ff565b600080610df96109a1565b426040518863ffffffff1660e01b8152600401610e1b96959493929190612739565b60606040518083038185885af1158015610e39573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e5e91906127af565b505050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f00929190612802565b6020604051808303816000875af1158015610f1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f439190612857565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601360179054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361108d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611084906128f6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f390612988565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111da9190612286565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611256576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124d90612a1a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bc90612aac565b60405180910390fd5b60008111611308576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ff90612b3e565b60405180910390fd5b60006113126109a1565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561138057506113506109a1565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118c8576113c160646113b3600a54600d54116113a0576006546113a4565b6008545b85611ece90919063ffffffff16565b611f4890919063ffffffff16565b9050600560009054906101000a900460ff161561155057601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114845750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561154f5743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541061150a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150190612bf6565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156115fb5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116515750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561170c57600e5482111561169b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169290612c62565b60405180910390fd5b600f54826116a8856107ff565b6116b29190612c82565b11156116f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ea90612d02565b60405180910390fd5b600d600081548092919061170690612d22565b91905055505b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561179557503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156117d9576117d660646117c8600b54600d54116117b5576007546117b9565b6009545b85611ece90919063ffffffff16565b611f4890919063ffffffff16565b90505b60006117e4306107ff565b9050601360159054906101000a900460ff161580156118505750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156118685750601360169054906101000a900460ff165b8015611875575060105481115b80156118845750600c54600d54115b156118c6576118a66118a18461189c84601154611f92565b611f92565b611be9565b600047905066470de4df8200008111156118c4576118c347611e62565b5b505b505b60008111156119cc5761192381600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fab90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119c39190612286565b60405180910390a35b611a1e82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461200990919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ac5611a77828461200990919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fab90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611b6a848661200990919063ffffffff16565b604051611b779190612286565b60405180910390a350505050565b6000838311158290611bcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc49190612146565b60405180910390fd5b5060008385611bdc9190612d6a565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c2157611c20612d9e565b5b604051908082528060200260200182016040528015611c4f5781602001602082028036833780820191505090505b5090503081600081518110611c6757611c66612dcd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d32919061269e565b81600181518110611d4657611d45612dcd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611dad30601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461101e565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e11959493929190612eba565b600060405180830381600087803b158015611e2b57600080fd5b505af1158015611e3f573d6000803e3d6000fd5b50505050506000601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611eca573d6000803e3d6000fd5b5050565b6000808303611ee05760009050611f42565b60008284611eee919061256f565b9050828482611efd9190612f43565b14611f3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3490612fe6565b60405180910390fd5b809150505b92915050565b6000611f8a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612053565b905092915050565b6000818311611fa15782611fa3565b815b905092915050565b6000808284611fba9190612c82565b905083811015611fff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff690613052565b60405180910390fd5b8091505092915050565b600061204b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b85565b905092915050565b6000808311829061209a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120919190612146565b60405180910390fd5b50600083856120a99190612f43565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156120f05780820151818401526020810190506120d5565b60008484015250505050565b6000601f19601f8301169050919050565b6000612118826120b6565b61212281856120c1565b93506121328185602086016120d2565b61213b816120fc565b840191505092915050565b60006020820190508181036000830152612160818461210d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006121988261216d565b9050919050565b6121a88161218d565b81146121b357600080fd5b50565b6000813590506121c58161219f565b92915050565b6000819050919050565b6121de816121cb565b81146121e957600080fd5b50565b6000813590506121fb816121d5565b92915050565b6000806040838503121561221857612217612168565b5b6000612226858286016121b6565b9250506020612237858286016121ec565b9150509250929050565b60008115159050919050565b61225681612241565b82525050565b6000602082019050612271600083018461224d565b92915050565b612280816121cb565b82525050565b600060208201905061229b6000830184612277565b92915050565b6000806000606084860312156122ba576122b9612168565b5b60006122c8868287016121b6565b93505060206122d9868287016121b6565b92505060406122ea868287016121ec565b9150509250925092565b600060ff82169050919050565b61230a816122f4565b82525050565b60006020820190506123256000830184612301565b92915050565b60006020828403121561234157612340612168565b5b600061234f848285016121b6565b91505092915050565b6123618161218d565b82525050565b600060208201905061237c6000830184612358565b92915050565b6000806040838503121561239957612398612168565b5b60006123a7858286016121b6565b92505060206123b8858286016121b6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561244857808604811115612424576124236123c2565b5b60018516156124335780820291505b8081029050612441856123f1565b9450612408565b94509492505050565b600082612461576001905061251d565b8161246f576000905061251d565b8160018114612485576002811461248f576124be565b600191505061251d565b60ff8411156124a1576124a06123c2565b5b8360020a9150848211156124b8576124b76123c2565b5b5061251d565b5060208310610133831016604e8410600b84101617156124f35782820a9050838111156124ee576124ed6123c2565b5b61251d565b61250084848460016123fe565b92509050818404811115612517576125166123c2565b5b81810290505b9392505050565b600061252f826121cb565b915061253a836122f4565b92506125677fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612451565b905092915050565b600061257a826121cb565b9150612585836121cb565b9250828202612593816121cb565b915082820484148315176125aa576125a96123c2565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006125e76020836120c1565b91506125f2826125b1565b602082019050919050565b60006020820190508181036000830152612616816125da565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006126536017836120c1565b915061265e8261261d565b602082019050919050565b6000602082019050818103600083015261268281612646565b9050919050565b6000815190506126988161219f565b92915050565b6000602082840312156126b4576126b3612168565b5b60006126c284828501612689565b91505092915050565b60006040820190506126e06000830185612358565b6126ed6020830184612358565b9392505050565b6000819050919050565b6000819050919050565b600061272361271e612719846126f4565b6126fe565b6121cb565b9050919050565b61273381612708565b82525050565b600060c08201905061274e6000830189612358565b61275b6020830188612277565b612768604083018761272a565b612775606083018661272a565b6127826080830185612358565b61278f60a0830184612277565b979650505050505050565b6000815190506127a9816121d5565b92915050565b6000806000606084860312156127c8576127c7612168565b5b60006127d68682870161279a565b93505060206127e78682870161279a565b92505060406127f88682870161279a565b9150509250925092565b60006040820190506128176000830185612358565b6128246020830184612277565b9392505050565b61283481612241565b811461283f57600080fd5b50565b6000815190506128518161282b565b92915050565b60006020828403121561286d5761286c612168565b5b600061287b84828501612842565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006128e06024836120c1565b91506128eb82612884565b604082019050919050565b6000602082019050818103600083015261290f816128d3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006129726022836120c1565b915061297d82612916565b604082019050919050565b600060208201905081810360008301526129a181612965565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612a046025836120c1565b9150612a0f826129a8565b604082019050919050565b60006020820190508181036000830152612a33816129f7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612a966023836120c1565b9150612aa182612a3a565b604082019050919050565b60006020820190508181036000830152612ac581612a89565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612b286029836120c1565b9150612b3382612acc565b604082019050919050565b60006020820190508181036000830152612b5781612b1b565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b6000612be06049836120c1565b9150612beb82612b5e565b606082019050919050565b60006020820190508181036000830152612c0f81612bd3565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612c4c6019836120c1565b9150612c5782612c16565b602082019050919050565b60006020820190508181036000830152612c7b81612c3f565b9050919050565b6000612c8d826121cb565b9150612c98836121cb565b9250828201905080821115612cb057612caf6123c2565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612cec601a836120c1565b9150612cf782612cb6565b602082019050919050565b60006020820190508181036000830152612d1b81612cdf565b9050919050565b6000612d2d826121cb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612d5f57612d5e6123c2565b5b600182019050919050565b6000612d75826121cb565b9150612d80836121cb565b9250828203905081811115612d9857612d976123c2565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612e318161218d565b82525050565b6000612e438383612e28565b60208301905092915050565b6000602082019050919050565b6000612e6782612dfc565b612e718185612e07565b9350612e7c83612e18565b8060005b83811015612ead578151612e948882612e37565b9750612e9f83612e4f565b925050600181019050612e80565b5085935050505092915050565b600060a082019050612ecf6000830188612277565b612edc602083018761272a565b8181036040830152612eee8186612e5c565b9050612efd6060830185612358565b612f0a6080830184612277565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f4e826121cb565b9150612f59836121cb565b925082612f6957612f68612f14565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612fd06021836120c1565b9150612fdb82612f74565b604082019050919050565b60006020820190508181036000830152612fff81612fc3565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061303c601b836120c1565b915061304782613006565b602082019050919050565b6000602082019050818103600083015261306b8161302f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220fb1b0c10f76141b0a0f956ca751c3819c657fdd1c1e56351d94fc919aa88515664736f6c63430008120033