0x60806040523480156200001157600080fd5b5060016000806301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000806380ac58cd60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600080635b5e139f60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555033600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600881526020017f41424148204e4654000000000000000000000000000000000000000000000000815250600590816200018c919062000454565b506040518060400160405280600481526020017f41424e460000000000000000000000000000000000000000000000000000000081525060069081620001d3919062000454565b506200053b565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200025c57607f821691505b60208210810362000272576200027162000214565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620002dc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200029d565b620002e886836200029d565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003356200032f620003298462000300565b6200030a565b62000300565b9050919050565b6000819050919050565b620003518362000314565b6200036962000360826200033c565b848454620002aa565b825550505050565b600090565b6200038062000371565b6200038d81848462000346565b505050565b5b81811015620003b557620003a960008262000376565b60018101905062000393565b5050565b601f8211156200040457620003ce8162000278565b620003d9846200028d565b81016020851015620003e9578190505b62000401620003f8856200028d565b83018262000392565b50505b505050565b600082821c905092915050565b6000620004296000198460080262000409565b1980831691505092915050565b600062000444838362000416565b9150826002028217905092915050565b6200045f82620001da565b67ffffffffffffffff8111156200047b576200047a620001e5565b5b62000487825462000243565b62000494828285620003b9565b600060209050601f831160018114620004cc5760008415620004b7578287015190505b620004c3858262000436565b86555062000533565b601f198416620004dc8662000278565b60005b828110156200050657848901518255600182019150602085019450602081019050620004df565b8683101562000526578489015162000522601f89168262000416565b8355505b6001600288020188555050505b505050505050565b612f2f806200054b6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063c87b56dd11610071578063c87b56dd146102df578063d3fc98641461030f578063e985e9c51461032b578063f2fde38b1461035b578063f3fe3bc31461037757610116565b80638da5cb5b1461026b57806395d89b4114610289578063a22cb465146102a7578063b88d4fde146102c357610116565b806323b872dd116100e957806323b872dd146101b557806342842e0e146101d15780636352211e146101ed57806370a082311461021d578063860d248a1461024d57610116565b806301ffc9a71461011b57806306fdde031461014b578063081812fc14610169578063095ea7b314610199575b600080fd5b61013560048036038101906101309190612525565b610395565b604051610142919061256d565b60405180910390f35b6101536103fc565b6040516101609190612618565b60405180910390f35b610183600480360381019061017e9190612670565b61048e565b60405161019091906126de565b60405180910390f35b6101b360048036038101906101ae9190612725565b6105a9565b005b6101cf60048036038101906101ca9190612765565b61098c565b005b6101eb60048036038101906101e69190612765565b610dde565b005b61020760048036038101906102029190612670565b610dfe565b60405161021491906126de565b60405180910390f35b610237600480360381019061023291906127b8565b610ee4565b60405161024491906127f4565b60405180910390f35b610255610f9e565b6040516102629190612618565b60405180910390f35b610273610fd7565b60405161028091906126de565b60405180910390f35b610291610ffd565b60405161029e9190612618565b60405180910390f35b6102c160048036038101906102bc919061283b565b61108f565b005b6102dd60048036038101906102d891906128e0565b61118c565b005b6102f960048036038101906102f49190612670565b6111e3565b6040516103069190612618565b60405180910390f35b610329600480360381019061032491906129be565b6112d3565b005b61034560048036038101906103409190612a32565b6113fa565b604051610352919061256d565b60405180910390f35b610375600480360381019061037091906127b8565b61148e565b005b61037f6116c0565b60405161038c9190612618565b60405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b60606005805461040b90612aa1565b80601f016020809104026020016040519081016040528092919081815260200182805461043790612aa1565b80156104845780601f1061045957610100808354040283529160200191610484565b820191906000526020600020905b81548152906001019060200180831161046757829003601f168201915b5050505050905090565b600081600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f30303330303200000000000000000000000000000000000000000000000000008152509061056c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105639190612618565b60405180910390fd5b506002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b8060006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806106a25750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303033000000000000000000000000000000000000000000000000000081525090610719576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107109190612618565b60405180910390fd5b5082600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f3030333030320000000000000000000000000000000000000000000000000000815250906107f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ed9190612618565b60405180910390fd5b5060006001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f3030333030380000000000000000000000000000000000000000000000000000815250906108d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108cd9190612618565b60405180910390fd5b50856002600087815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550848673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050505050565b8060006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610a5d57503373ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b80610aee5750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303034000000000000000000000000000000000000000000000000000081525090610b65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5c9190612618565b60405180910390fd5b5082600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090610c42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c399190612618565b60405180910390fd5b5060006001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303037000000000000000000000000000000000000000000000000000081525090610d21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d189190612618565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090610dca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc19190612618565b60405180910390fd5b50610dd586866116f9565b50505050505050565b610df9838383604051806020016040528060008152506117ae565b505050565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090610ede576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed59190612618565b60405180910390fd5b50919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090610f8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f849190612618565b60405180910390fd5b50610f9782611d6d565b9050919050565b6040518060400160405280600681526020017f303138303032000000000000000000000000000000000000000000000000000081525081565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606006805461100c90612aa1565b80601f016020809104026020016040519081016040528092919081815260200182805461103890612aa1565b80156110855780601f1061105a57610100808354040283529160200191611085565b820191906000526020600020905b81548152906001019060200180831161106857829003601f168201915b5050505050905090565b80600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611180919061256d565b60405180910390a35050565b6111dc85858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506117ae565b5050505050565b606081600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f3030333030320000000000000000000000000000000000000000000000000000815250906112c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b89190612618565b60405180910390fd5b506112cb83611db6565b915050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f30313830303100000000000000000000000000000000000000000000000000008152509061139b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113929190612618565b60405180910390fd5b506113a68484611e5b565b6113f48383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612049565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303138303031000000000000000000000000000000000000000000000000000081525090611556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154d9190612618565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f3031383030320000000000000000000000000000000000000000000000000000815250906115ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f69190612618565b60405180910390fd5b508073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6040518060400160405280600681526020017f303138303031000000000000000000000000000000000000000000000000000081525081565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061173a8261214c565b6117448183612185565b61174e83836122f0565b818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b8160006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061187f57503373ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b806119105750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303034000000000000000000000000000000000000000000000000000081525090611987576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197e9190612618565b60405180910390fd5b5083600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090611a64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5b9190612618565b60405180910390fd5b5060006001600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303037000000000000000000000000000000000000000000000000000081525090611b43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3a9190612618565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090611bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be39190612618565b60405180910390fd5b50611bf787876116f9565b611c168773ffffffffffffffffffffffffffffffffffffffff16612478565b15611d635760008773ffffffffffffffffffffffffffffffffffffffff1663150b7a02338b8a8a6040518563ffffffff1660e01b8152600401611c5c9493929190612b27565b6020604051808303816000875af1158015611c7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c9f9190612b88565b905063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146040518060400160405280600681526020017f303033303035000000000000000000000000000000000000000000000000000081525090611d60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d579190612618565b60405180910390fd5b50505b5050505050505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600760008381526020019081526020016000208054611dd690612aa1565b80601f0160208091040260200160405190810160405280929190818152602001828054611e0290612aa1565b8015611e4f5780601f10611e2457610100808354040283529160200191611e4f565b820191906000526020600020905b815481529060010190602001808311611e3257829003601f168201915b50505050509050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090611f03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efa9190612618565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303036000000000000000000000000000000000000000000000000000081525090611fde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd59190612618565b60405180910390fd5b50611fe982826122f0565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b81600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090612125576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211c9190612618565b60405180910390fd5b50816007600085815260200190815260200160002090816121469190612d90565b50505050565b6002600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550565b8173ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f30303330303700000000000000000000000000000000000000000000000000008152509061225e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122559190612618565b60405180910390fd5b506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546122af9190612e91565b925050819055506001600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f3030333030360000000000000000000000000000000000000000000000000000815250906123ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123c19190612618565b60405180910390fd5b50816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461246d9190612ec5565b925050819055505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f91506000801b82141580156124ba5750808214155b92505050919050565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612502816124cd565b811461250d57600080fd5b50565b60008135905061251f816124f9565b92915050565b60006020828403121561253b5761253a6124c3565b5b600061254984828501612510565b91505092915050565b60008115159050919050565b61256781612552565b82525050565b6000602082019050612582600083018461255e565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156125c25780820151818401526020810190506125a7565b60008484015250505050565b6000601f19601f8301169050919050565b60006125ea82612588565b6125f48185612593565b93506126048185602086016125a4565b61260d816125ce565b840191505092915050565b6000602082019050818103600083015261263281846125df565b905092915050565b6000819050919050565b61264d8161263a565b811461265857600080fd5b50565b60008135905061266a81612644565b92915050565b600060208284031215612686576126856124c3565b5b60006126948482850161265b565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006126c88261269d565b9050919050565b6126d8816126bd565b82525050565b60006020820190506126f360008301846126cf565b92915050565b612702816126bd565b811461270d57600080fd5b50565b60008135905061271f816126f9565b92915050565b6000806040838503121561273c5761273b6124c3565b5b600061274a85828601612710565b925050602061275b8582860161265b565b9150509250929050565b60008060006060848603121561277e5761277d6124c3565b5b600061278c86828701612710565b935050602061279d86828701612710565b92505060406127ae8682870161265b565b9150509250925092565b6000602082840312156127ce576127cd6124c3565b5b60006127dc84828501612710565b91505092915050565b6127ee8161263a565b82525050565b600060208201905061280960008301846127e5565b92915050565b61281881612552565b811461282357600080fd5b50565b6000813590506128358161280f565b92915050565b60008060408385031215612852576128516124c3565b5b600061286085828601612710565b925050602061287185828601612826565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f8401126128a05761289f61287b565b5b8235905067ffffffffffffffff8111156128bd576128bc612880565b5b6020830191508360018202830111156128d9576128d8612885565b5b9250929050565b6000806000806000608086880312156128fc576128fb6124c3565b5b600061290a88828901612710565b955050602061291b88828901612710565b945050604061292c8882890161265b565b935050606086013567ffffffffffffffff81111561294d5761294c6124c8565b5b6129598882890161288a565b92509250509295509295909350565b60008083601f84011261297e5761297d61287b565b5b8235905067ffffffffffffffff81111561299b5761299a612880565b5b6020830191508360018202830111156129b7576129b6612885565b5b9250929050565b600080600080606085870312156129d8576129d76124c3565b5b60006129e687828801612710565b94505060206129f78782880161265b565b935050604085013567ffffffffffffffff811115612a1857612a176124c8565b5b612a2487828801612968565b925092505092959194509250565b60008060408385031215612a4957612a486124c3565b5b6000612a5785828601612710565b9250506020612a6885828601612710565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612ab957607f821691505b602082108103612acc57612acb612a72565b5b50919050565b600081519050919050565b600082825260208201905092915050565b6000612af982612ad2565b612b038185612add565b9350612b138185602086016125a4565b612b1c816125ce565b840191505092915050565b6000608082019050612b3c60008301876126cf565b612b4960208301866126cf565b612b5660408301856127e5565b8181036060830152612b688184612aee565b905095945050505050565b600081519050612b82816124f9565b92915050565b600060208284031215612b9e57612b9d6124c3565b5b6000612bac84828501612b73565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302612c467fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612c09565b612c508683612c09565b95508019841693508086168417925050509392505050565b6000819050919050565b6000612c8d612c88612c838461263a565b612c68565b61263a565b9050919050565b6000819050919050565b612ca783612c72565b612cbb612cb382612c94565b848454612c16565b825550505050565b600090565b612cd0612cc3565b612cdb818484612c9e565b505050565b5b81811015612cff57612cf4600082612cc8565b600181019050612ce1565b5050565b601f821115612d4457612d1581612be4565b612d1e84612bf9565b81016020851015612d2d578190505b612d41612d3985612bf9565b830182612ce0565b50505b505050565b600082821c905092915050565b6000612d6760001984600802612d49565b1980831691505092915050565b6000612d808383612d56565b9150826002028217905092915050565b612d9982612588565b67ffffffffffffffff811115612db257612db1612bb5565b5b612dbc8254612aa1565b612dc7828285612d03565b600060209050601f831160018114612dfa5760008415612de8578287015190505b612df28582612d74565b865550612e5a565b601f198416612e0886612be4565b60005b82811015612e3057848901518255600182019150602085019450602081019050612e0b565b86831015612e4d5784890151612e49601f891682612d56565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612e9c8261263a565b9150612ea78361263a565b9250828203905081811115612ebf57612ebe612e62565b5b92915050565b6000612ed08261263a565b9150612edb8361263a565b9250828201905080821115612ef357612ef2612e62565b5b9291505056fea26469706673582212204f170289e9125549e323231a279ee1e4e097656a652e431818ab12adf948fc9e64736f6c63430008120033