0x608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad578063b4b5ea5711610071578063b4b5ea5714610358578063c3cda52014610388578063dd62ed3e146103a4578063e7a324dc146103d4578063f1127ed8146103f257610121565b806370a082311461027a578063782d6fe1146102aa5780637ecebe00146102da57806395d89b411461030a578063a9059cbb1461032857610121565b806323b872dd116100f457806323b872dd146101b0578063313ce567146101e0578063587cde1e146101fe5780635c19a95c1461022e5780636fcfff451461024a57610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd1461017457806320606b7014610192575b600080fd5b61012e610423565b60405161013b919061282c565b60405180910390f35b61015e60048036036101599190810190612113565b61043f565b60405161016b9190612727565b60405180910390f35b61017c6105d1565b6040516101899190612930565b60405180910390f35b61019a6105e0565b6040516101a79190612742565b60405180910390f35b6101ca60048036036101c591908101906120c4565b6105f7565b6040516101d79190612727565b60405180910390f35b6101e8610889565b6040516101f5919061298f565b60405180910390f35b6102186004803603610213919081019061205f565b61088e565b604051610225919061270c565b60405180910390f35b6102486004803603610243919081019061205f565b6108c1565b005b610264600480360361025f919081019061205f565b6108ce565b604051610271919061294b565b60405180910390f35b610294600480360361028f919081019061205f565b6108f1565b6040516102a19190612930565b60405180910390f35b6102c460048036036102bf9190810190612113565b610960565b6040516102d191906129c5565b60405180910390f35b6102f460048036036102ef919081019061205f565b610d73565b6040516103019190612930565b60405180910390f35b610312610d8b565b60405161031f919061282c565b60405180910390f35b610342600480360361033d9190810190612113565b610dc4565b60405161034f9190612727565b60405180910390f35b610372600480360361036d919081019061205f565b610e01565b60405161037f91906129c5565b60405180910390f35b6103a2600480360361039d919081019061214f565b610eef565b005b6103be60048036036103b99190810190612088565b611175565b6040516103cb9190612930565b60405180910390f35b6103dc611221565b6040516103e99190612742565b60405180910390f35b61040c600480360361040791908101906121d8565b611238565b60405161041a929190612966565b60405180910390f35b604051806060016040528060228152602001612b966022913981565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831415610492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90506104b7565b6104b483604051806060016040528060248152602001612c9b60249139611291565b90505b806000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516105be91906129aa565b60405180910390a3600191505092915050565b6a4723355778d7d41600000081565b6040516105ec906126e2565b604051809103902081565b60008033905060008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16905060006106b985604051806060016040528060248152602001612c9b60249139611291565b90508673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561073357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6bffffffffffffffffffffffff16826bffffffffffffffffffffffff1614155b1561087057600061075d83836040518060600160405280603c8152602001612c5f603c91396112ef565b9050806000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161086691906129aa565b60405180910390a3505b61087b878783611360565b600193505050509392505050565b601281565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108cb3382611741565b50565b60046020528060005260406000206000915054906101000a900463ffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff169050919050565b60004382106109a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099b906128d0565b60405180910390fd5b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff16905060008163ffffffff161415610a11576000915050610d6d565b82600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff1611610b1357600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001830363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff16915050610d6d565b82600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008063ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff161115610b94576000915050610d6d565b600080905060006001830390505b8163ffffffff168163ffffffff161115610cef576000600283830363ffffffff1681610bca57fe5b0482039050610bd7611fc8565b600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008363ffffffff1663ffffffff1681526020019081526020016000206040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681525050905086816000015163ffffffff161415610cc757806020015195505050505050610d6d565b86816000015163ffffffff161015610ce157819350610ce8565b6001820392505b5050610ba2565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff1693505050505b92915050565b60056020528060005260406000206000915090505481565b6040518060400160405280600381526020017f555346000000000000000000000000000000000000000000000000000000000081525081565b600080610de983604051806060016040528060258152602001612c1460259139611291565b9050610df6338583611360565b600191505092915050565b600080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff16905060008163ffffffff1611610e6b576000610ee7565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001830363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b915050919050565b6000604051610efd906126e2565b6040518091039020604051806060016040528060228152602001612b966022913980519060200120610f2d611901565b30604051602001610f4194939291906127a2565b6040516020818303038152906040528051906020012090506000604051610f67906126f7565b6040518091039020888888604051602001610f85949392919061275d565b60405160208183030381529060405280519060200120905060008282604051602001610fb29291906126ab565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610fef94939291906127e7565b6020604051602081039080840390855afa158015611011573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561108d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611084906128b0565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055891461111c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111390612890565b60405180910390fd5b8742111561115f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611156906128f0565b60405180910390fd5b611169818b611741565b50505050505050505050565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff16905092915050565b60405161122d906126f7565b604051809103902081565b6003602052816000526040600020602052806000526040600020600091509150508060000160009054906101000a900463ffffffff16908060000160049054906101000a90046bffffffffffffffffffffffff16905082565b60006c01000000000000000000000000831082906112e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112dc919061284e565b60405180910390fd5b5082905092915050565b6000836bffffffffffffffffffffffff16836bffffffffffffffffffffffff1611158290611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a919061284e565b60405180910390fd5b5082840390509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c790612910565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143790612870565b60405180910390fd5b6114ba600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060358152602001612bdf603591396112ef565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055506115a1600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16826040518060600160405280602f8152602001612cf2602f913961190e565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161166b91906129aa565b60405180910390a361173c600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611984565b505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16905082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a46118fb828483611984565b50505050565b6000804690508091505090565b6000808385019050846bffffffffffffffffffffffff16816bffffffffffffffffffffffff1610158390611978576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196f919061284e565b60405180910390fd5b50809150509392505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156119ce57506000816bffffffffffffffffffffffff16115b15611c7a57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611b26576000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff1690506000808263ffffffff1611611a71576000611aed565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b90506000611b148285604051806060016040528060278152602001612bb8602791396112ef565b9050611b2286848484611c7f565b5050505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611c79576000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff1690506000808263ffffffff1611611bc4576000611c40565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b90506000611c678285604051806060016040528060268152602001612c396026913961190e565b9050611c7585848484611c7f565b5050505b5b505050565b6000611ca343604051806060016040528060338152602001612cbf60339139611f72565b905060008463ffffffff16118015611d3857508063ffffffff16600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001870363ffffffff1663ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff16145b15611dd35781600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001870363ffffffff1663ffffffff16815260200190815260200160002060000160046101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550611f1b565b60405180604001604052808263ffffffff168152602001836bffffffffffffffffffffffff16815250600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008663ffffffff1663ffffffff16815260200190815260200160002060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555090505060018401600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548163ffffffff021916908363ffffffff1602179055505b8473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248484604051611f639291906129e0565b60405180910390a25050505050565b600064010000000083108290611fbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb5919061284e565b60405180910390fd5b5082905092915050565b6040518060400160405280600063ffffffff16815260200160006bffffffffffffffffffffffff1681525090565b60008135905061200581612b22565b92915050565b60008135905061201a81612b39565b92915050565b60008135905061202f81612b50565b92915050565b60008135905061204481612b67565b92915050565b60008135905061205981612b7e565b92915050565b60006020828403121561207157600080fd5b600061207f84828501611ff6565b91505092915050565b6000806040838503121561209b57600080fd5b60006120a985828601611ff6565b92505060206120ba85828601611ff6565b9150509250929050565b6000806000606084860312156120d957600080fd5b60006120e786828701611ff6565b93505060206120f886828701611ff6565b925050604061210986828701612020565b9150509250925092565b6000806040838503121561212657600080fd5b600061213485828601611ff6565b925050602061214585828601612020565b9150509250929050565b60008060008060008060c0878903121561216857600080fd5b600061217689828a01611ff6565b965050602061218789828a01612020565b955050604061219889828a01612020565b94505060606121a989828a0161204a565b93505060806121ba89828a0161200b565b92505060a06121cb89828a0161200b565b9150509295509295509295565b600080604083850312156121eb57600080fd5b60006121f985828601611ff6565b925050602061220a85828601612035565b9150509250929050565b61221d81612a3b565b82525050565b61222c81612a4d565b82525050565b61223b81612a59565b82525050565b61225261224d82612a59565b612b07565b82525050565b600061226382612a14565b61226d8185612a1f565b935061227d818560208601612ad4565b61228681612b11565b840191505092915050565b600061229c82612a09565b6122a68185612a1f565b93506122b6818560208601612ad4565b6122bf81612b11565b840191505092915050565b60006122d7603983612a1f565b91507f5553463a3a5f7472616e73666572546f6b656e733a2063616e6e6f742074726160008301527f6e7366657220746f20746865207a65726f2061646472657373000000000000006020830152604082019050919050565b600061233d602183612a1f565b91507f5553463a3a64656c656761746542795369673a20696e76616c6964206e6f6e6360008301527f65000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123a3600283612a30565b91507f19010000000000000000000000000000000000000000000000000000000000006000830152600282019050919050565b60006123e3602583612a1f565b91507f5553463a3a64656c656761746542795369673a20696e76616c6964207369676e60008301527f61747572650000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612449602683612a1f565b91507f5553463a3a6765745072696f72566f7465733a206e6f7420796574206465746560008301527f726d696e656400000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124af604383612a30565b91507f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353660008301527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208301527f63742900000000000000000000000000000000000000000000000000000000006040830152604382019050919050565b600061253b602583612a1f565b91507f5553463a3a64656c656761746542795369673a207369676e617475726520657860008301527f70697265640000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006125a1603b83612a1f565b91507f5553463a3a5f7472616e73666572546f6b656e733a2063616e6e6f742074726160008301527f6e736665722066726f6d20746865207a65726f206164647265737300000000006020830152604082019050919050565b6000612607603a83612a30565b91507f44656c65676174696f6e28616464726573732064656c6567617465652c75696e60008301527f74323536206e6f6e63652c75696e7432353620657870697279290000000000006020830152603a82019050919050565b61266981612a83565b82525050565b61267881612a8d565b82525050565b61268781612a9d565b82525050565b61269681612ac2565b82525050565b6126a581612aaa565b82525050565b60006126b682612396565b91506126c28285612241565b6020820191506126d28284612241565b6020820191508190509392505050565b60006126ed826124a2565b9150819050919050565b6000612702826125fa565b9150819050919050565b60006020820190506127216000830184612214565b92915050565b600060208201905061273c6000830184612223565b92915050565b60006020820190506127576000830184612232565b92915050565b60006080820190506127726000830187612232565b61277f6020830186612214565b61278c6040830185612660565b6127996060830184612660565b95945050505050565b60006080820190506127b76000830187612232565b6127c46020830186612232565b6127d16040830185612660565b6127de6060830184612214565b95945050505050565b60006080820190506127fc6000830187612232565b612809602083018661267e565b6128166040830185612232565b6128236060830184612232565b95945050505050565b600060208201905081810360008301526128468184612291565b905092915050565b600060208201905081810360008301526128688184612258565b905092915050565b60006020820190508181036000830152612889816122ca565b9050919050565b600060208201905081810360008301526128a981612330565b9050919050565b600060208201905081810360008301526128c9816123d6565b9050919050565b600060208201905081810360008301526128e98161243c565b9050919050565b600060208201905081810360008301526129098161252e565b9050919050565b6000602082019050818103600083015261292981612594565b9050919050565b60006020820190506129456000830184612660565b92915050565b6000602082019050612960600083018461266f565b92915050565b600060408201905061297b600083018561266f565b612988602083018461269c565b9392505050565b60006020820190506129a4600083018461267e565b92915050565b60006020820190506129bf600083018461268d565b92915050565b60006020820190506129da600083018461269c565b92915050565b60006040820190506129f5600083018561268d565b612a02602083018461268d565b9392505050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b6000612a4682612a63565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600060ff82169050919050565b60006bffffffffffffffffffffffff82169050919050565b6000612acd82612aaa565b9050919050565b60005b83811015612af2578082015181840152602081019050612ad7565b83811115612b01576000848401525b50505050565b6000819050919050565b6000601f19601f8301169050919050565b612b2b81612a3b565b8114612b3657600080fd5b50565b612b4281612a59565b8114612b4d57600080fd5b50565b612b5981612a83565b8114612b6457600080fd5b50565b612b7081612a8d565b8114612b7b57600080fd5b50565b612b8781612a9d565b8114612b9257600080fd5b5056fe556e736c61736865642046696e616e636520476f7665726e616e636520546f6b656e5553463a3a5f6d6f7665566f7465733a20766f746520616d6f756e7420756e646572666c6f77735553463a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e7420657863656564732062616c616e63655553463a3a7472616e736665723a20616d6f756e74206578636565647320393620626974735553463a3a5f6d6f7665566f7465733a20766f746520616d6f756e74206f766572666c6f77735553463a3a7472616e7366657246726f6d3a207472616e7366657220616d6f756e742065786365656473207370656e64657220616c6c6f77616e63655553463a3a617070726f76653a20616d6f756e74206578636565647320393620626974735553463a3a5f7772697465436865636b706f696e743a20626c6f636b206e756d626572206578636565647320333220626974735553463a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e74206f766572666c6f7773a365627a7a7231582062e1c5fbaddbcd31320f4dfb4a2e0892437ffdd1889aa305dcbe1601ae1ad4c46c6578706572696d656e74616cf564736f6c63430005100040
0x60806040523480156200001157600080fd5b5060405162002f6638038062002f66833981810160405262000037919081019062000141565b6a4723355778d7d416000000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6a4723355778d7d4160000006040516200011b91906200017e565b60405180910390a350620001f3565b6000815190506200013b81620001d9565b92915050565b6000602082840312156200015457600080fd5b600062000164848285016200012a565b91505092915050565b6200017881620001cf565b82525050565b60006020820190506200019560008301846200016d565b92915050565b6000620001a882620001af565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b620001e4816200019b565b8114620001f057600080fd5b50565b612d6380620002036000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad578063b4b5ea5711610071578063b4b5ea5714610358578063c3cda52014610388578063dd62ed3e146103a4578063e7a324dc146103d4578063f1127ed8146103f257610121565b806370a082311461027a578063782d6fe1146102aa5780637ecebe00146102da57806395d89b411461030a578063a9059cbb1461032857610121565b806323b872dd116100f457806323b872dd146101b0578063313ce567146101e0578063587cde1e146101fe5780635c19a95c1461022e5780636fcfff451461024a57610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd1461017457806320606b7014610192575b600080fd5b61012e610423565b60405161013b919061282c565b60405180910390f35b61015e60048036036101599190810190612113565b61043f565b60405161016b9190612727565b60405180910390f35b61017c6105d1565b6040516101899190612930565b60405180910390f35b61019a6105e0565b6040516101a79190612742565b60405180910390f35b6101ca60048036036101c591908101906120c4565b6105f7565b6040516101d79190612727565b60405180910390f35b6101e8610889565b6040516101f5919061298f565b60405180910390f35b6102186004803603610213919081019061205f565b61088e565b604051610225919061270c565b60405180910390f35b6102486004803603610243919081019061205f565b6108c1565b005b610264600480360361025f919081019061205f565b6108ce565b604051610271919061294b565b60405180910390f35b610294600480360361028f919081019061205f565b6108f1565b6040516102a19190612930565b60405180910390f35b6102c460048036036102bf9190810190612113565b610960565b6040516102d191906129c5565b60405180910390f35b6102f460048036036102ef919081019061205f565b610d73565b6040516103019190612930565b60405180910390f35b610312610d8b565b60405161031f919061282c565b60405180910390f35b610342600480360361033d9190810190612113565b610dc4565b60405161034f9190612727565b60405180910390f35b610372600480360361036d919081019061205f565b610e01565b60405161037f91906129c5565b60405180910390f35b6103a2600480360361039d919081019061214f565b610eef565b005b6103be60048036036103b99190810190612088565b611175565b6040516103cb9190612930565b60405180910390f35b6103dc611221565b6040516103e99190612742565b60405180910390f35b61040c600480360361040791908101906121d8565b611238565b60405161041a929190612966565b60405180910390f35b604051806060016040528060228152602001612b966022913981565b6000807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831415610492577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90506104b7565b6104b483604051806060016040528060248152602001612c9b60249139611291565b90505b806000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516105be91906129aa565b60405180910390a3600191505092915050565b6a4723355778d7d41600000081565b6040516105ec906126e2565b604051809103902081565b60008033905060008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16905060006106b985604051806060016040528060248152602001612c9b60249139611291565b90508673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561073357507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6bffffffffffffffffffffffff16826bffffffffffffffffffffffff1614155b1561087057600061075d83836040518060600160405280603c8152602001612c5f603c91396112ef565b9050806000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161086691906129aa565b60405180910390a3505b61087b878783611360565b600193505050509392505050565b601281565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108cb3382611741565b50565b60046020528060005260406000206000915054906101000a900463ffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff169050919050565b60004382106109a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099b906128d0565b60405180910390fd5b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff16905060008163ffffffff161415610a11576000915050610d6d565b82600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff1611610b1357600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001830363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff16915050610d6d565b82600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008063ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff161115610b94576000915050610d6d565b600080905060006001830390505b8163ffffffff168163ffffffff161115610cef576000600283830363ffffffff1681610bca57fe5b0482039050610bd7611fc8565b600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008363ffffffff1663ffffffff1681526020019081526020016000206040518060400160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681525050905086816000015163ffffffff161415610cc757806020015195505050505050610d6d565b86816000015163ffffffff161015610ce157819350610ce8565b6001820392505b5050610ba2565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff1693505050505b92915050565b60056020528060005260406000206000915090505481565b6040518060400160405280600381526020017f555346000000000000000000000000000000000000000000000000000000000081525081565b600080610de983604051806060016040528060258152602001612c1460259139611291565b9050610df6338583611360565b600191505092915050565b600080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff16905060008163ffffffff1611610e6b576000610ee7565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001830363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b915050919050565b6000604051610efd906126e2565b6040518091039020604051806060016040528060228152602001612b966022913980519060200120610f2d611901565b30604051602001610f4194939291906127a2565b6040516020818303038152906040528051906020012090506000604051610f67906126f7565b6040518091039020888888604051602001610f85949392919061275d565b60405160208183030381529060405280519060200120905060008282604051602001610fb29291906126ab565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610fef94939291906127e7565b6020604051602081039080840390855afa158015611011573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561108d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611084906128b0565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055891461111c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111390612890565b60405180910390fd5b8742111561115f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611156906128f0565b60405180910390fd5b611169818b611741565b50505050505050505050565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff16905092915050565b60405161122d906126f7565b604051809103902081565b6003602052816000526040600020602052806000526040600020600091509150508060000160009054906101000a900463ffffffff16908060000160049054906101000a90046bffffffffffffffffffffffff16905082565b60006c01000000000000000000000000831082906112e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112dc919061284e565b60405180910390fd5b5082905092915050565b6000836bffffffffffffffffffffffff16836bffffffffffffffffffffffff1611158290611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a919061284e565b60405180910390fd5b5082840390509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c790612910565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143790612870565b60405180910390fd5b6114ba600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff1682604051806060016040528060358152602001612bdf603591396112ef565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055506115a1600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16826040518060600160405280602f8152602001612cf2602f913961190e565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161166b91906129aa565b60405180910390a361173c600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611984565b505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a90046bffffffffffffffffffffffff16905082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f60405160405180910390a46118fb828483611984565b50505050565b6000804690508091505090565b6000808385019050846bffffffffffffffffffffffff16816bffffffffffffffffffffffff1610158390611978576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196f919061284e565b60405180910390fd5b50809150509392505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156119ce57506000816bffffffffffffffffffffffff16115b15611c7a57600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611b26576000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff1690506000808263ffffffff1611611a71576000611aed565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b90506000611b148285604051806060016040528060278152602001612bb8602791396112ef565b9050611b2286848484611c7f565b5050505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611c79576000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900463ffffffff1690506000808263ffffffff1611611bc4576000611c40565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001840363ffffffff1663ffffffff16815260200190815260200160002060000160049054906101000a90046bffffffffffffffffffffffff165b90506000611c678285604051806060016040528060268152602001612c396026913961190e565b9050611c7585848484611c7f565b5050505b5b505050565b6000611ca343604051806060016040528060338152602001612cbf60339139611f72565b905060008463ffffffff16118015611d3857508063ffffffff16600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001870363ffffffff1663ffffffff16815260200190815260200160002060000160009054906101000a900463ffffffff1663ffffffff16145b15611dd35781600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006001870363ffffffff1663ffffffff16815260200190815260200160002060000160046101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550611f1b565b60405180604001604052808263ffffffff168152602001836bffffffffffffffffffffffff16815250600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008663ffffffff1663ffffffff16815260200190815260200160002060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555090505060018401600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548163ffffffff021916908363ffffffff1602179055505b8473ffffffffffffffffffffffffffffffffffffffff167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248484604051611f639291906129e0565b60405180910390a25050505050565b600064010000000083108290611fbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb5919061284e565b60405180910390fd5b5082905092915050565b6040518060400160405280600063ffffffff16815260200160006bffffffffffffffffffffffff1681525090565b60008135905061200581612b22565b92915050565b60008135905061201a81612b39565b92915050565b60008135905061202f81612b50565b92915050565b60008135905061204481612b67565b92915050565b60008135905061205981612b7e565b92915050565b60006020828403121561207157600080fd5b600061207f84828501611ff6565b91505092915050565b6000806040838503121561209b57600080fd5b60006120a985828601611ff6565b92505060206120ba85828601611ff6565b9150509250929050565b6000806000606084860312156120d957600080fd5b60006120e786828701611ff6565b93505060206120f886828701611ff6565b925050604061210986828701612020565b9150509250925092565b6000806040838503121561212657600080fd5b600061213485828601611ff6565b925050602061214585828601612020565b9150509250929050565b60008060008060008060c0878903121561216857600080fd5b600061217689828a01611ff6565b965050602061218789828a01612020565b955050604061219889828a01612020565b94505060606121a989828a0161204a565b93505060806121ba89828a0161200b565b92505060a06121cb89828a0161200b565b9150509295509295509295565b600080604083850312156121eb57600080fd5b60006121f985828601611ff6565b925050602061220a85828601612035565b9150509250929050565b61221d81612a3b565b82525050565b61222c81612a4d565b82525050565b61223b81612a59565b82525050565b61225261224d82612a59565b612b07565b82525050565b600061226382612a14565b61226d8185612a1f565b935061227d818560208601612ad4565b61228681612b11565b840191505092915050565b600061229c82612a09565b6122a68185612a1f565b93506122b6818560208601612ad4565b6122bf81612b11565b840191505092915050565b60006122d7603983612a1f565b91507f5553463a3a5f7472616e73666572546f6b656e733a2063616e6e6f742074726160008301527f6e7366657220746f20746865207a65726f2061646472657373000000000000006020830152604082019050919050565b600061233d602183612a1f565b91507f5553463a3a64656c656761746542795369673a20696e76616c6964206e6f6e6360008301527f65000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123a3600283612a30565b91507f19010000000000000000000000000000000000000000000000000000000000006000830152600282019050919050565b60006123e3602583612a1f565b91507f5553463a3a64656c656761746542795369673a20696e76616c6964207369676e60008301527f61747572650000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612449602683612a1f565b91507f5553463a3a6765745072696f72566f7465733a206e6f7420796574206465746560008301527f726d696e656400000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124af604383612a30565b91507f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353660008301527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208301527f63742900000000000000000000000000000000000000000000000000000000006040830152604382019050919050565b600061253b602583612a1f565b91507f5553463a3a64656c656761746542795369673a207369676e617475726520657860008301527f70697265640000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006125a1603b83612a1f565b91507f5553463a3a5f7472616e73666572546f6b656e733a2063616e6e6f742074726160008301527f6e736665722066726f6d20746865207a65726f206164647265737300000000006020830152604082019050919050565b6000612607603a83612a30565b91507f44656c65676174696f6e28616464726573732064656c6567617465652c75696e60008301527f74323536206e6f6e63652c75696e7432353620657870697279290000000000006020830152603a82019050919050565b61266981612a83565b82525050565b61267881612a8d565b82525050565b61268781612a9d565b82525050565b61269681612ac2565b82525050565b6126a581612aaa565b82525050565b60006126b682612396565b91506126c28285612241565b6020820191506126d28284612241565b6020820191508190509392505050565b60006126ed826124a2565b9150819050919050565b6000612702826125fa565b9150819050919050565b60006020820190506127216000830184612214565b92915050565b600060208201905061273c6000830184612223565b92915050565b60006020820190506127576000830184612232565b92915050565b60006080820190506127726000830187612232565b61277f6020830186612214565b61278c6040830185612660565b6127996060830184612660565b95945050505050565b60006080820190506127b76000830187612232565b6127c46020830186612232565b6127d16040830185612660565b6127de6060830184612214565b95945050505050565b60006080820190506127fc6000830187612232565b612809602083018661267e565b6128166040830185612232565b6128236060830184612232565b95945050505050565b600060208201905081810360008301526128468184612291565b905092915050565b600060208201905081810360008301526128688184612258565b905092915050565b60006020820190508181036000830152612889816122ca565b9050919050565b600060208201905081810360008301526128a981612330565b9050919050565b600060208201905081810360008301526128c9816123d6565b9050919050565b600060208201905081810360008301526128e98161243c565b9050919050565b600060208201905081810360008301526129098161252e565b9050919050565b6000602082019050818103600083015261292981612594565b9050919050565b60006020820190506129456000830184612660565b92915050565b6000602082019050612960600083018461266f565b92915050565b600060408201905061297b600083018561266f565b612988602083018461269c565b9392505050565b60006020820190506129a4600083018461267e565b92915050565b60006020820190506129bf600083018461268d565b92915050565b60006020820190506129da600083018461269c565b92915050565b60006040820190506129f5600083018561268d565b612a02602083018461268d565b9392505050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b6000612a4682612a63565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600060ff82169050919050565b60006bffffffffffffffffffffffff82169050919050565b6000612acd82612aaa565b9050919050565b60005b83811015612af2578082015181840152602081019050612ad7565b83811115612b01576000848401525b50505050565b6000819050919050565b6000601f19601f8301169050919050565b612b2b81612a3b565b8114612b3657600080fd5b50565b612b4281612a59565b8114612b4d57600080fd5b50565b612b5981612a83565b8114612b6457600080fd5b50565b612b7081612a8d565b8114612b7b57600080fd5b50565b612b8781612a9d565b8114612b9257600080fd5b5056fe556e736c61736865642046696e616e636520476f7665726e616e636520546f6b656e5553463a3a5f6d6f7665566f7465733a20766f746520616d6f756e7420756e646572666c6f77735553463a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e7420657863656564732062616c616e63655553463a3a7472616e736665723a20616d6f756e74206578636565647320393620626974735553463a3a5f6d6f7665566f7465733a20766f746520616d6f756e74206f766572666c6f77735553463a3a7472616e7366657246726f6d3a207472616e7366657220616d6f756e742065786365656473207370656e64657220616c6c6f77616e63655553463a3a617070726f76653a20616d6f756e74206578636565647320393620626974735553463a3a5f7772697465436865636b706f696e743a20626c6f636b206e756d626572206578636565647320333220626974735553463a3a5f7472616e73666572546f6b656e733a207472616e7366657220616d6f756e74206f766572666c6f7773a365627a7a7231582062e1c5fbaddbcd31320f4dfb4a2e0892437ffdd1889aa305dcbe1601ae1ad4c46c6578706572696d656e74616cf564736f6c6343000510004000000000000000000000000038c1dcf5542898300088dca06a68beafe75be264