Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pJZfz-00026E-I6 for pgsql-hackers@arkaria.postgresql.org; Sun, 22 Jan 2023 12:42:24 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pJZfw-0003bU-LL for pgsql-hackers@arkaria.postgresql.org; Sun, 22 Jan 2023 12:42:20 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pJZfv-0003bL-Ov for pgsql-hackers@lists.postgresql.org; Sun, 22 Jan 2023 12:42:20 +0000 Received: from esa7.fujitsucc.c3s2.iphmx.com ([68.232.159.87]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pJZfo-0006HA-3S for pgsql-hackers@postgresql.org; Sun, 22 Jan 2023 12:42:18 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1674391332; x=1705927332; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=Qf7q4qT22IFtSFQCi9cmKKDN+oqDX1Sl6YHm6xohWEg=; b=UTZAFjpNZHx43Cfm36MtwWSotxWekufRFESu3JOcVH5Y1bNnp2Z9jDMF VgDr5dyzlMYTV8lCN1lOXMapFFCU1eLqIXRr3z6asMElZKYUZVcYeBBxS 3gLN72v1/xVhvTYa23RXnb+Q9ncgzKUWd1mcP6Ys8sKSaSffmKUAOuqqP nJ3v0KKhKV5il4NJhunsu5fQi1NTQ0blM4g6f+oiz5CK3feVPYCWDtiku 3vkX4lUhVxnpxa60HEgis/Mvz068FTl5VEPPZDNtjKBH8awXkKhy1oejR YmD7K5THQkBbEQv1sLzIw9XkDzNJQS+/7u3nuH4ZR9vDqFuGory9ZYuOl Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10597"; a="75163361" X-IronPort-AV: E=Sophos;i="5.97,237,1669042800"; d="scan'208,223";a="75163361" Received: from mail-tycjpn01lp2169.outbound.protection.outlook.com (HELO JPN01-TYC-obe.outbound.protection.outlook.com) ([104.47.23.169]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Jan 2023 21:42:04 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oim5/oMBoCX+VhYUou8MCRsjmzkELVYwM3DCauDNhVtew50n+HnJKXJbPaSZDtDatRy54xyCdgzInWrsODBslSZGrw9fcVbu55VxCSprLr9fYhpFnIMgboSjk01Rz8wGFjZ4CZ+GazDr9f6bZiIRQ4VeV0VWu9iMyMrjEnx3DelwVpm6euEaK2qxvlXkLMM+FfTYL9Na2njadCsDnhdrPoBFI4eMlJupaofB8sZsQ2xpv7w09FZ2cH5jne+Zlgn9Hmosi3cTUyUdJotO9nOFCgp3wc2qqy0QkDz3AsIuQqbnKOOv0d7NTyGNBSqeOCTLtLzq5/VaT96tICRHMcJ4Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=N0/4GVSEVYF+Z1/tXnwMv4zvQgbehMO3Dx66wpiwpX4=; b=IlY01+tY54gsip5I4yHoNzwQlZl16bRerOqY7SZyOYOBn8wLaTnpMsqbQ/YshvmAxkHizWG/VjXXJozh1tF8SZDfFxODT19evORG1XV9iQBdSdGQEBvqEyepYyAoag+uwdKU4jxCW+e8iY6/4wtGaHCwHN4v2bgXCZJEuYlj3ApCSFVQGz9Wi/r+rhRScub37qyxahDE+DBtuGnUUpaUoqOR0wxNmIn/yV7rfq/WipaQ0lxF2C/jf12OmKmQMvVLQpDc2W5nCyivzYrkCYi10NnKWRj220+bmmHiHHMVSHWBBfQ24O+728CZ3/Cxm3fSYRo0k0u3uGQ7otXP3FnMSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none Received: from TYCPR01MB8373.jpnprd01.prod.outlook.com (2603:1096:400:15f::9) by TYCPR01MB10728.jpnprd01.prod.outlook.com (2603:1096:400:294::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.31; Sun, 22 Jan 2023 12:42:00 +0000 Received: from TYCPR01MB8373.jpnprd01.prod.outlook.com ([fe80::941f:893d:69b8:e21a]) by TYCPR01MB8373.jpnprd01.prod.outlook.com ([fe80::941f:893d:69b8:e21a%9]) with mapi id 15.20.6002.033; Sun, 22 Jan 2023 12:42:00 +0000 From: "Takamichi Osumi (Fujitsu)" To: 'Peter Smith' CC: vignesh C , Kyotaro Horiguchi , "Hayato Kuroda (Fujitsu)" , "shveta.malik@gmail.com" , "dilipbalaut@gmail.com" , "amit.kapila16@gmail.com" , "euler@eulerto.com" , "m.melihmutlu@gmail.com" , "andres@anarazel.de" , "marcos@f10.com.br" , "pgsql-hackers@postgresql.org" Subject: RE: Time delayed LR (WAS Re: logical replication restrictions) Thread-Topic: Time delayed LR (WAS Re: logical replication restrictions) Thread-Index: AQHY9/SeVGNfJ+eMH0OkVO9Bch6SIa49/p8AgAAf6ACAABrAgIAALyYAgAEoiICAGrgLgIAGnftQgAEcg4CACAUGgIAAVUUAgADhA4CAAJ9SgIAA6ooAgACaBYCAAPtugIAAI30AgAsiVvCAAjbLEIAEQWWAgAGfSACACtcCAIALd3wAgAFMWoCAAC9FAIAA74IAgADRMqCAAoxsgIAFAcUwgAFSZoCAATnAAIAAT5jQgAGYWYCAAMMv4IACwUsw Date: Sun, 22 Jan 2023 12:42:00 +0000 Message-ID: References: <20230112.120338.534662300633460797.horikyota.ntt@gmail.com> In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: =?utf-8?B?TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2Uw?= =?utf-8?B?NTBfRW5hYmxlZD10cnVlOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJh?= =?utf-8?B?Yy1hYjRkLTNiMGY0ZmVjZTA1MF9TZXREYXRlPTIwMjMtMDEtMjBUMTg6MzY6?= =?utf-8?B?MjhaOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRkLTNiMGY0?= =?utf-8?B?ZmVjZTA1MF9NZXRob2Q9U3RhbmRhcmQ7IE1TSVBfTGFiZWxfYTcyOTVjYzEt?= =?utf-8?B?ZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX05hbWU9RlVKSVRTVS1SRVNU?= =?utf-8?B?UklDVEVE4oCLOyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9TaXRlSWQ9YTE5ZjEyMWQtODFlMS00ODU4LWE5ZDgt?= =?utf-8?B?NzM2ZTI2N2ZkNGM3OyBNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1h?= =?utf-8?B?YjRkLTNiMGY0ZmVjZTA1MF9BY3Rpb25JZD00ZGRjYzY1OS1lNWNjLTQ5OTct?= =?utf-8?B?YWZkYy00MGE2MmM4NmM2M2I7IE1TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00?= =?utf-8?B?MmFjLWFiNGQtM2IwZjRmZWNlMDUwX0NvbnRlbnRCaXRzPTA=?= authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYCPR01MB8373:EE_|TYCPR01MB10728:EE_ x-ms-office365-filtering-correlation-id: a15b0cec-8c64-4119-e678-08dafc760e55 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jlITDZHZ7zqe7IBQ43afMS4qfg0urkMdqogVqIQy4cz3eJChdEnnSJbHkVNPnyZjN04JXezdm8HDz9GLzD7wwIUlnF+xNiSoSo4wKLlAFxxHxZjYcFYutss+50Nn+Bd3b8O6bb0N3yl2dy8GrPSZihXe+tGmR/wp8p1zOCDvggvQRshbNQ95QM6M48OlIq16EC74m/nV+MjZiASDNyWKL+bEi+lFtI/2sUcx8EtZjupMDa3LHbwtNZt2SSGaN7H7VpCywR8eupYKZPLGBD5xX/ciCOFk+QGNOWEaZLWcYzaZI2uM3LIo/mw7P2OD6BfHTGPPTqzX1t4irodAg4ceTj+VCRmxq0hgVWmnP1el3Ur7RgzhgpjNbL3YhZozraqd+eUm9SN3O145yfUp8I/nXCDXwdg+/bi2mnFekzrsAF/eTvfUPICK4kfOANNS1mhYSrUhIhyuuo9A8s2grUjgD2ltgL/V1zW5aVlQ9KpsiD/SfHmDB4YCZYfvfefO2l3FAElie5ZyvwPrIX6JZenfiS8a6m2+9e8JG3r1SXbjxH8+ixU9v/hZp7TR7rhAOvX/J8gp62cUI4AAnhygg5xZf12szSyeNPfGdvf3p4uTQ61nbtbJUfUBW3s7QJWLTaSdEOMPtRv5bS1fpg50I/sJKEvpSLCC+jstCjAOLSPsQ1a2aBfYTIq31pI4sC7eHwUq/W75CeYYaIQZ7wktzcSV3aB37t3nTMweF6AegFe2FfE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYCPR01MB8373.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(346002)(39860400002)(366004)(376002)(396003)(136003)(1590799012)(451199015)(38070700005)(86362001)(82960400001)(38100700002)(122000001)(33656002)(99936003)(558084003)(54906003)(316002)(478600001)(7696005)(71200400001)(7416002)(5660300002)(66476007)(52536014)(55016003)(8936002)(4326008)(6916009)(76116006)(66946007)(2906002)(66446008)(8676002)(41300700001)(66556008)(64756008)(83380400001)(6506007)(53546011)(9686003)(26005)(186003)(1580799009)(85182001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RDJwdU1lUWI0M3VoTmZWOEJLRDdPMWJMYkxmRGVudHlxQTRmK0JJM1dtTnhH?= =?utf-8?B?cVJsTE95ZWlweG1JYWMrNU13QzlINGFHQThJT3JVUi9JL2IzcTV1dUdpTnhv?= =?utf-8?B?SEk1dyt5R0hpeDIzUlE5TXhlZ2dDL1NtK2J6TTNwUVJkZmxFbnpjUzRuMnVJ?= =?utf-8?B?bjJ0TGtyenRGVE5jcWU2Wk1wQjFWaVhNV1dPNmU2MU51QXM3OC9YOTE1aW1M?= =?utf-8?B?SDNTb01wSFhGN3k5VU54U0s3eWxjK2ZDYnVqYkRjVmZHU29GbzdZNjBFTTdO?= =?utf-8?B?ajZjMnc2dEZnQnB1dG91Umo2TWJFYVlWbkRtVXJ0WGZSVGw0ZDhBUWxUeTJp?= =?utf-8?B?ajNBM2Z2ZVJxcU9WVGoxR0NBKzhIcjZEMXRsalBrVGhPeDRscXRscjk3eFNK?= =?utf-8?B?Y3NxTUQyb05aVE9HRXRTYnhDRFE4ODQyWHFxL0IxZjZRRWxTTitnSUFPK0Ix?= =?utf-8?B?OXZlUktReW42bi9YMTYrdFNVSXpCMXN2L2EyUnJ0YnN2QlJLemgxdGY5bFNL?= =?utf-8?B?dytDcm12UjhIbEMyS2hQbXN4NjJZcFRablQ4Y2F6Mkllc3Q5dGl3S0hjVkRo?= =?utf-8?B?SE10T1pFYzlpWXBvUmtvYTVmYVhoeC83QVJRWllFaHhlTjFQK04rSDhoNTlr?= =?utf-8?B?Wmc1RkpEUFppeDNqK0E1Z3pzeTQ2eE1heUFGaEpDTjdkK0wzNUU4aEFoeE1q?= =?utf-8?B?RmJlVlJqalhKaldYaW9PZ1BsRWdINTZwR0Vpa2VJdkR5Y0g0bHRCZ2RvampO?= =?utf-8?B?cy9RaVBuTGcwTmQvVkFDOEd3cExlaEhZdXJrOXB1SklaVVo3UC9SSnB6eDRm?= =?utf-8?B?RXRCNlpsRHFSR3U4SUticHlURGI4cGVsNDZOVHRCSmZoU2N2OFFaNnNUbTNC?= =?utf-8?B?WTdnajFxa2M4enVmdmJzdnZ6VGJ2eTNPd2l4aisrd2FLZEdZUXNwSjFCT3Y5?= =?utf-8?B?NW5iaC9qSnpWdkpkWUZBeVVDczVxL0NEeDlMTzRQdkxTUEZaQ3JqUUQ0eG5m?= =?utf-8?B?S1lZRHpnVmdSYnlkd2kzcGxhU1RZNkU5RGd3RGVYNmJ2OXJTNktDeW9xb2pS?= =?utf-8?B?MTJSU1h3Yk5XZ1NJWnBZb0JIRjFJZUl4S0VReEpyQmZSVERZOFhSQlNybGpO?= =?utf-8?B?VkRTUW5ONFlrakpzQk9vd0pGaWJyZ3ZNc2pjbWp5ckhwUitjUE15VUhlNC9E?= =?utf-8?B?Vms1amFVdFFJQXljZGlwMzFzZjNRU2FqUXpWTlE5MWlGVU5nR2dTbW9TWGVx?= =?utf-8?B?bzdZeWxNNlR2ZGRFNVpWMm1ETmkwaGQ1U2g3VFhpWURLaWxIeklrRGhhcnpU?= =?utf-8?B?cUpJNS8yTlQraE56RURrWS9zdFMxWlE1OWY5R1llRFBDODRtMzl6eithcmw1?= =?utf-8?B?TFJvQlAyOWlVRTN6N2xMdVVPbTFCZlVzSkl3N3cvRExtRWpXR3V2YlltN2JT?= =?utf-8?B?ZmdCWnZnbmJCOUl6VXZCWFVTYXhzcEN1dVRrQ1VPdHBwT2pkY3VQekFIMzVV?= =?utf-8?B?TiszOU5ha2lTWHhFTk9qSUZSN1plK3FWTC9pcHVsMWlQRmVFUzVHN1dobjJD?= =?utf-8?B?T1VueWdmelJrc0pWVFJpaklFSHdONWs3N01aL1UydHZsRHVIZlVRK29OUUNw?= =?utf-8?B?ZFpsQVFLRWtJUnFOMnZveTNhWGZQY0RqMUlnVkFQQlJDS0Nza1dNQnNjQnBG?= =?utf-8?B?b3hvQmdMeXZsSER5VzVRbjNvU2VLWWNTV3h6MjFtTXVPR1ArMzVZUHpsdE9F?= =?utf-8?B?bVl4djIrYkpiM1JVTXQ5NGVJbVllMXhRZzRqVzBsZWcreGV0dzF5UXh5amhq?= =?utf-8?B?UE5VTmtxbXd5Q3FUSlg3Q29ZWnlmakp5Q0R5OHdPRWkvZ1pLZ1NxT09yRktp?= =?utf-8?B?Y1pHOURWbTBYNEdaSlpJVHBYU0ExZllzT0FPTUw4VnJQWkpackhzRENOWTY0?= =?utf-8?B?cll1YVNrcWtQVzJwR056VFFYV3dvZS9OWUZpWmV2eTMyd1lpeDg3cDhUc2VK?= =?utf-8?B?ZS9reURsZUVlZTFOYUdnZVR5S2UyTDRmZWgvUG9ZVmlBYzBLRFhqemdkeWFF?= =?utf-8?B?V1liaW1TdG5FY0JwM2J4dXJ0UjFFc3U3M1dlVG1KUkNBZzNZblpUanNYU3A2?= =?utf-8?B?QmZHc092Kzg2MngzWEU2MUV2VXgrZ2Ezblh5OWZSenJjcEV5N3BzQ2ZQRnNl?= =?utf-8?B?SGc9PQ==?= Content-Type: multipart/mixed; boundary="_002_TYCPR01MB8373A23EFC25B22CB132383AEDCB9TYCPR01MB8373jpnp_" MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +Bv9Z4tJhaMEPs6g57++kKhiHDjz+mIepDTdN5DXbGM3K4jcOW0nvHHQphr6KUE5Kj+CW6vcdBXx40J3qr49V9zopovSJ9yD0wQMVIW0NgrG4hZMtkkXoM+MSh5gaelA0h4+7mkZRE21GeJSbLduDEdPWkRI8G0lzu62cbLgQ5LOLWLzPWw+BELPy9MiC4/fyTP3E96wdgMiYnB4oyKVYTZLbxo4ZABOdH6NicAxjj+wK0PDMcY/BIuFmvs5DC1ZRwXkZ7SuXl/z/+uAbQ5zko+itiHiUhSPrFfxDczh0eK3/55Ar6JhKnMPxBggvEnS/xVbmkJb5J0w6dLgT2HmitOmpTrFdwcQkzvYFf8QAKNLtp7QWV+z6zJ37lZFyWEcDsu/xC7XOfZUqEmcqHyUJF/jf6wGVbMnFT6BtKDH3avi8sl1ZA5EnoDWax1YHPo68ctuCzgW/GpKuAkbEjYBL0NhtRLXfMkHPfCXsHogo7i2ysRS7evr59SPGA1k8GxqJlikGY9ZAjfaTIWGLa+mo1I7d1IoFxik4SOWi3vRt+9fFbBPcMDu0bQjdFt62ndBHWHF3XvTSc1WqYQxL/goMMwYbw8n+dRwnXzUuzEMkCiCzep0MAVAhcDv0UEO8bA97HRUJ+12vR8dwlFwAnvKTGZpShV/wH2/w8F2KG+21RiSbMLHwus9TOGzDPJUmYFtCTezrk9tE8b6L2ba2ZJ+f2Qz5CzDO6EyNwxe5mCBdSxxP57+NHU+LaPY3AjAXar68bDBwrMKhu7l5irs+4f3SWZjBsZ0h1YvZDKUvc8NV4up5mwRz8U6NmE9qhLYTJ1JKUCSaj2e3gC3DoF3rr6bVrI/FfA3Io406XJ7qT5NgxspoUhXahqtFBUzwtv7nJxr3Wm1XMarS7kbrEXCM0i1ew== X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYCPR01MB8373.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a15b0cec-8c64-4119-e678-08dafc760e55 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jan 2023 12:42:00.3041 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ebvTB56GgrzbELWDxO0L0Kg9nFPSkMtVJYOz9C2sal9fK0d629MRlkTN1YpH61H8R1vERvq3HpAPKNy4RUU/69dBWUHySejLxCtpt40gSas= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYCPR01MB10728 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_TYCPR01MB8373A23EFC25B22CB132383AEDCB9TYCPR01MB8373jpnp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 T24gU2F0dXJkYXksIEphbnVhcnkgMjEsIDIwMjMgMzozNiBBTSBJIHdyb3RlOg0KPiBLaW5kbHkg aGF2ZSBhIGxvb2sgYXQgdGhlIHBhdGNoIHYxOC4NCkkndmUgY29uZHVjdGVkIHNvbWUgcmVmYWN0 b3JpbmcgZm9yIHYxOC4NCk5vdyB0aGUgbGF0ZXN0IHBhdGNoIHNob3VsZCBiZSB0aWRpZXIgYW5k DQp0aGUgY29tbWVudHMgd291bGQgYmUgY2xlYXJlciBhbmQgbW9yZSBhbGlnbmVkIGFzIGEgd2hv bGUuDQoNCkF0dGFjaGVkIHRoZSB1cGRhdGVkIHBhdGNoIHYxOS4NCg0KDQpCZXN0IFJlZ2FyZHMs DQoJVGFrYW1pY2hpIE9zdW1pDQoNCg== --_002_TYCPR01MB8373A23EFC25B22CB132383AEDCB9TYCPR01MB8373jpnp_ Content-Type: application/octet-stream; name="v19-0001-Time-delayed-logical-replication-subscriber.patch" Content-Description: v19-0001-Time-delayed-logical-replication-subscriber.patch Content-Disposition: attachment; filename="v19-0001-Time-delayed-logical-replication-subscriber.patch"; size=83140; creation-date="Sun, 22 Jan 2023 12:41:16 GMT"; modification-date="Sun, 22 Jan 2023 12:41:16 GMT" Content-Transfer-Encoding: base64 RnJvbSAwNGQ1MDU1YTM1M2UzMWYzN2Q4Y2FmY2EyYTY3MmE4ZjMxMDQxMTkzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBUYWthbWljaGkgT3N1bWkgPG9zdW1pLnRha2FtaWNoaUBmdWpp dHN1LmNvbT4KRGF0ZTogU3VuLCAyMiBKYW4gMjAyMyAxMjowMToyNiArMDAwMApTdWJqZWN0OiBb UEFUQ0ggdjE5XSBUaW1lLWRlbGF5ZWQgbG9naWNhbCByZXBsaWNhdGlvbiBzdWJzY3JpYmVyCgpT aW1pbGFyIHRvIHBoeXNpY2FsIHJlcGxpY2F0aW9uLCBhIHRpbWUtZGVsYXllZCBjb3B5IG9mIHRo ZSBkYXRhIGZvcgpsb2dpY2FsIHJlcGxpY2F0aW9uIGlzIHVzZWZ1bCBmb3Igc29tZSBzY2VuYXJp b3MgKHBhcnRpY3VsYXJseSB0byBmaXgKZXJyb3JzIHRoYXQgbWlnaHQgY2F1c2UgZGF0YSBsb3Nz KS4KClRoaXMgcGF0Y2ggaW1wbGVtZW50cyBhIG5ldyBzdWJzY3JpcHRpb24gcGFyYW1ldGVyIGNh bGxlZCAnbWluX2FwcGx5X2RlbGF5Jy4KCklmIHRoZSBzdWJzY3JpcHRpb24gc2V0cyBtaW5fYXBw bHlfZGVsYXkgcGFyYW1ldGVyLCB0aGUgbG9naWNhbApyZXBsaWNhdGlvbiB3b3JrZXIgd2lsbCBk ZWxheSB0aGUgdHJhbnNhY3Rpb24gY29tbWl0IGZvciBtaW5fYXBwbHlfZGVsYXkKbWlsbGlzZWNv bmRzLgoKVGhlIGRlbGF5IGlzIGNhbGN1bGF0ZWQgYmV0d2VlbiB0aGUgV0FMIHRpbWUgc3RhbXAg YW5kIHRoZSBjdXJyZW50IHRpbWUKb24gdGhlIHN1YnNjcmliZXIuCgpUaGUgZGVsYXkgb2NjdXJz IG9ubHkgb24gV0FMIHJlY29yZHMgZm9yIHRyYW5zYWN0aW9uIGJlZ2lucy4gVGhlIG1haW4KcmVh c29uIGlzIHRvIGF2b2lkIGtlZXBpbmcgYSB0cmFuc2FjdGlvbiBvcGVuIGZvciBhIGxvbmcgdGlt ZS4gUmVndWxhcgphbmQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zIGFyZSBjb3ZlcmVkLiBTdHJlYW1l ZCB0cmFuc2FjdGlvbnMgYXJlIGFsc28KY292ZXJlZC4KClRoZSBjb21iaW5hdGlvbiBvZiBwYXJh bGxlbCBzdHJlYW1pbmcgbW9kZSBhbmQgbWluX2FwcGx5X2RlbGF5IGlzIG5vdAphbGxvd2VkLiBU aGUgc3Vic2NyaWJlciBpbiB0aGUgcGFyYWxsZWwgc3RyZWFtaW5nIG1vZGUgYXBwbGllcyBlYWNo CnN0cmVhbSBvbiBhcnJpdmFsIHdpdGhvdXQgdGhlIHRpbWUgb2YgY29tbWl0L3ByZXBhcmUuIFNv LCB0aGUKc3Vic2NyaWJlciBuZWVkcyB0byBkZXBlbmQgb24gdGhlIGFycml2YWwgdGltZSBvZiB0 aGUgc3RyZWFtIGluIHRoaXMKY2FzZSwgaWYgd2UgYXBwbHkgdGhlIHRpbWUtZGVsYXllZCBmZWF0 dXJlIGZvciBzdWNoIHRyYW5zYWN0aW9ucy4gVGhlbgp0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHdo ZXJlIHNvbWUgdW5uZWNlc3NhcnkgZGVsYXkgd2lsbCBiZSBhZGRlZCBvbgp0aGUgc3Vic2NyaWJl ciBieSBuZXR3b3JrIGNvbW11bmljYXRpb24gYnJlYWsgYmV0d2VlbiBub2RlcyBvciBvdGhlcgpo ZWF2eSB3b3JrIGxvYWQgb24gdGhlIHB1Ymxpc2hlci4gT24gdGhlIG90aGVyIGhhbmQsIGFwcGx5 aW5nIHRoZSBkZWxheQphdCB0aGUgZW5kIG9mIHRyYW5zYWN0aW9uIHdpdGggcGFyYWxsZWwgYXBw bHkgYWxzbyBjYW4gY2F1c2UgaXNzdWVzIG9mCnVzZWQgcmVzb3VyY2UgYmxvYXQgYW5kIGxvY2tz IGtlcHQgaW4gb3BlbiBmb3IgYSBsb25nIHRpbWUuIFRodXMsIHRob3NlCmZlYXR1cmVzIGNhbid0 IHdvcmsgdG9nZXRoZXIuCgpBdXRob3I6IEV1bGVyIFRhdmVpcmEKRGlzY3Vzc2lvbjogaHR0cHM6 Ly9wb3N0Z3IuZXMvbS9DQUItSkx3WU9Zd0w9WFR5QVhLaUg1Q3RNX1ZtOEtqS2g3YWFpdENLdm1D aDRyenI1cFFAbWFpbC5nbWFpbC5jb20KLS0tCiBkb2Mvc3JjL3NnbWwvY2F0YWxvZ3Muc2dtbCAg ICAgICAgICAgICAgICAgICAgfCAgIDkgKwogZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sICAgICAg ICAgICAgICAgICAgICAgIHwgIDEzICsrCiBkb2Mvc3JjL3NnbWwvbG9naWNhbC1yZXBsaWNhdGlv bi5zZ21sICAgICAgICAgfCAgIDcgKwogZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRp b24uc2dtbCAgICAgIHwgICA1ICstCiBkb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9zdWJzY3JpcHRp b24uc2dtbCAgICAgfCAgNTcgKysrKystCiBzcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlw dGlvbi5jICAgICAgICAgfCAgIDEgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Mu c3FsICAgICAgICAgIHwgICA3ICstCiBzcmMvYmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25j bWRzLmMgICAgICAgfCAxMTggKysrKysrKysrKystCiAuLi4vcmVwbGljYXRpb24vbG9naWNhbC9h cHBseXBhcmFsbGVsd29ya2VyLmMgfCAgIDMgKy0KIHNyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xv Z2ljYWwvd29ya2VyLmMgICAgICB8IDE2OSArKysrKysrKysrKysrKy0tCiBzcmMvYmluL3BnX2R1 bXAvcGdfZHVtcC5jICAgICAgICAgICAgICAgICAgICAgfCAgMTUgKy0KIHNyYy9iaW4vcGdfZHVt cC9wZ19kdW1wLmggICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBzcmMvYmluL3BzcWwvZGVz Y3JpYmUuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKy0KIHNyYy9iaW4vcHNxbC90YWIt Y29tcGxldGUuYyAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19zdWJzY3JpcHRpb24uaCAgICAgICAgIHwgICAzICsKIHNyYy9pbmNsdWRlL3JlcGxpY2F0 aW9uL3dvcmtlcl9pbnRlcm5hbC5oICAgICB8ICAgMiArLQogc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC9zdWJzY3JpcHRpb24ub3V0ICAgIHwgMTgxICsrKysrKysrKysrLS0tLS0tLQogc3JjL3Rl c3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbCAgICAgICAgIHwgIDI0ICsrKwogc3JjL3Rl c3Qvc3Vic2NyaXB0aW9uL21lc29uLmJ1aWxkICAgICAgICAgICAgIHwgICAxICsKIHNyYy90ZXN0 L3N1YnNjcmlwdGlvbi90LzAzMl9hcHBseV9kZWxheS5wbCAgICB8IDE3NSArKysrKysrKysrKysr KysrKwogMjAgZmlsZXMgY2hhbmdlZCwgNjk5IGluc2VydGlvbnMoKyksIDEwNSBkZWxldGlvbnMo LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMzJfYXBwbHlf ZGVsYXkucGwKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvY2F0YWxvZ3Muc2dtbCBiL2RvYy9z cmMvc2dtbC9jYXRhbG9ncy5zZ21sCmluZGV4IGMxZTQwNDgwNTQuLmJmM2MwNTI0MWMgMTAwNjQ0 Ci0tLSBhL2RvYy9zcmMvc2dtbC9jYXRhbG9ncy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9jYXRh bG9ncy5zZ21sCkBAIC03ODczLDYgKzc4NzMsMTUgQEAgU0NSQU0tU0hBLTI1NiQ8cmVwbGFjZWFi bGU+Jmx0O2l0ZXJhdGlvbiBjb3VudCZndDs8L3JlcGxhY2VhYmxlPjo8cmVwbGFjZWFibGU+JmwK ICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICA8L3Jvdz4KIAorICAgICA8cm93PgorICAgICAg PGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZp bml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+c3VibWluYXBwbHlkZWxheTwvc3RydWN0Zmll bGQ+IDx0eXBlPmludDg8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAg ICBUaGUgbGVuZ3RoIG9mIHRpbWUgKG1zKSB0byBkZWxheSB0aGUgYXBwbGljYXRpb24gb2YgY2hh bmdlcy4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKwogICAgICA8cm93Pgog ICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVt bl9kZWZpbml0aW9uIj4KICAgICAgICA8c3RydWN0ZmllbGQ+c3VibmFtZTwvc3RydWN0ZmllbGQ+ IDx0eXBlPm5hbWU8L3R5cGU+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwg Yi9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwKaW5kZXggZGM5Yjc4YjBiNy4uYjhmNjEyMGIwZCAx MDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9j b25maWcuc2dtbApAQCAtNDc4Nyw2ICs0Nzg3LDE5IEBAIEFOWSA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+bnVtX3N5bmM8L3JlcGxhY2VhYmxlPiAoIDxyZXBsYWNlYWJsZSBjbGFzcz0i CiAgICAgICAgdGhlIDxmaWxlbmFtZT5wb3N0Z3Jlc3FsLmNvbmY8L2ZpbGVuYW1lPiBmaWxlIG9y IG9uIHRoZSBzZXJ2ZXIKICAgICAgICBjb21tYW5kIGxpbmUuCiAgICAgICA8L3BhcmE+CisgICAg ICA8cGFyYT4KKyAgICAgICBGb3IgdGltZS1kZWxheWVkIGxvZ2ljYWwgcmVwbGljYXRpb24gKGku ZS4gd2hlbiB0aGUgc3Vic2NyaXB0aW9uIGlzCisgICAgICAgY3JlYXRlZCB3aXRoIHBhcmFtZXRl ciBtaW5fYXBwbHlfZGVsYXkgPiAwKSwgdGhlIGFwcGx5IHdvcmtlciBzZW5kcyBhCisgICAgICAg U3RhbmRieSBTdGF0dXMgVXBkYXRlIG1lc3NhZ2UgdG8gdGhlIHB1Ymxpc2hlciB3aXRoIGEgcGVy aW9kIG9mCisgICAgICAgPGxpdGVyYWw+d2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZhbDwvbGl0 ZXJhbD4uIE1ha2Ugc3VyZSB0byBzZXQKKyAgICAgICA8bGl0ZXJhbD53YWxfcmVjZWl2ZXJfc3Rh dHVzX2ludGVydmFsPC9saXRlcmFsPiBsZXNzIHRoYW4gdGhlCisgICAgICAgPGxpdGVyYWw+d2Fs X3NlbmRlcl90aW1lb3V0PC9saXRlcmFsPiBvbiB0aGUgcHVibGlzaGVyLCBvdGhlcndpc2UsIHRo ZQorICAgICAgIHdhbHNlbmRlciB3aWxsIHJlcGVhdGVkbHkgdGVybWluYXRlIGR1ZSB0byB0aGUg dGltZW91dCBlcnJvcnMuIElmCisgICAgICAgPGxpdGVyYWw+d2FsX3JlY2VpdmVyX3N0YXR1c19p bnRlcnZhbDwvbGl0ZXJhbD4gaXMgc2V0IHRvIHplcm8sIHRoZSBhcHBseQorICAgICAgIHdvcmtl ciBkb2Vzbid0IHNlbmQgYW55IGZlZWRiYWNrIG1lc3NhZ2VzIGR1cmluZyB0aGUgc3Vic2NyaWJl cidzCisgICAgICAgPGxpdGVyYWw+bWluX2FwcGx5X2RlbGF5PC9saXRlcmFsPiBwZXJpb2QuIFNl ZQorICAgICAgIDx4cmVmIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24iLz4gZm9yIGRl dGFpbHMuCisgICAgICA8L3BhcmE+CiAgICAgICA8L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3Rl bnRyeT4KIApkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2xvZ2ljYWwtcmVwbGljYXRpb24uc2dt bCBiL2RvYy9zcmMvc2dtbC9sb2dpY2FsLXJlcGxpY2F0aW9uLnNnbWwKaW5kZXggMWJkNTY2MGM4 Ny4uODYzYWYxMWE0NyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2xvZ2ljYWwtcmVwbGljYXRp b24uc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvbG9naWNhbC1yZXBsaWNhdGlvbi5zZ21sCkBAIC0y NDcsNiArMjQ3LDEzIEBACiAgICB0YXJnZXQgdGFibGUuCiAgIDwvcGFyYT4KIAorICA8cGFyYT4K KyAgIFRoZSBzdWJzY3JpYmVyIHJlcGxpY2F0aW9uIGNhbiBiZSBpbnN0cnVjdGVkIHRvIGxhZyBi ZWhpbmQgdGhlIHB1Ymxpc2hlcgorICAgc2lkZSBjaGFuZ2VzIGJ5IHNwZWNpZnlpbmcgdGhlIDxs aXRlcmFsPm1pbl9hcHBseV9kZWxheTwvbGl0ZXJhbD4KKyAgIHN1YnNjcmlwdGlvbiBwYXJhbWV0 ZXIuIFNlZSA8eHJlZiBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0aW9uIi8+IGZvcgorICAg ZGV0YWlscy4KKyAgPC9wYXJhPgorCiAgIDxzZWN0MiBpZD0ibG9naWNhbC1yZXBsaWNhdGlvbi1z dWJzY3JpcHRpb24tc2xvdCI+CiAgICA8dGl0bGU+UmVwbGljYXRpb24gU2xvdCBNYW5hZ2VtZW50 PC90aXRsZT4KIApkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRp b24uc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vic2NyaXB0aW9uLnNnbWwKaW5kZXgg YWQ5MzU1M2ExZC4uMWM2ZTlkZDJkMSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRl cl9zdWJzY3JpcHRpb24uc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1YnNjcmlw dGlvbi5zZ21sCkBAIC0yMTMsOCArMjEzLDkgQEAgQUxURVIgU1VCU0NSSVBUSU9OIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uYW1lPC9yZXBsYWNlYWJsZT4gUkVOQU1FIFRPIDwKICAg ICAgIGFyZSA8bGl0ZXJhbD5zbG90X25hbWU8L2xpdGVyYWw+LAogICAgICAgPGxpdGVyYWw+c3lu Y2hyb25vdXNfY29tbWl0PC9saXRlcmFsPiwKICAgICAgIDxsaXRlcmFsPmJpbmFyeTwvbGl0ZXJh bD4sIDxsaXRlcmFsPnN0cmVhbWluZzwvbGl0ZXJhbD4sCi0gICAgICA8bGl0ZXJhbD5kaXNhYmxl X29uX2Vycm9yPC9saXRlcmFsPiwgYW5kCi0gICAgICA8bGl0ZXJhbD5vcmlnaW48L2xpdGVyYWw+ LgorICAgICAgPGxpdGVyYWw+ZGlzYWJsZV9vbl9lcnJvcjwvbGl0ZXJhbD4sCisgICAgICA8bGl0 ZXJhbD5vcmlnaW48L2xpdGVyYWw+LCBhbmQKKyAgICAgIDxsaXRlcmFsPm1pbl9hcHBseV9kZWxh eTwvbGl0ZXJhbD4uCiAgICAgIDwvcGFyYT4KICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0 ZW50cnk+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9zdWJzY3JpcHRpb24u c2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3N1YnNjcmlwdGlvbi5zZ21sCmluZGV4IGVi YTcyYzZhZjYuLjc2ZWU5YzBiM2QgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRl X3N1YnNjcmlwdGlvbi5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3N1YnNjcmlw dGlvbi5zZ21sCkBAIC0zNDksNyArMzQ5LDQ1IEBAIENSRUFURSBTVUJTQ1JJUFRJT04gPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN1YnNjcmlwdGlvbl9uYW1lPC9yZXBsYWNlYWJsCiAg ICAgICAgICA8L3BhcmE+CiAgICAgICAgIDwvbGlzdGl0ZW0+CiAgICAgICAgPC92YXJsaXN0ZW50 cnk+Ci0gICAgICA8L3ZhcmlhYmxlbGlzdD48L3BhcmE+CisKKyAgICAgICA8dmFybGlzdGVudHJ5 PgorICAgICAgICA8dGVybT48bGl0ZXJhbD5taW5fYXBwbHlfZGVsYXk8L2xpdGVyYWw+ICg8dHlw ZT5pbnRlZ2VyPC90eXBlPik8L3Rlcm0+CisgICAgICAgIDxsaXN0aXRlbT4KKyAgICAgICAgIDxw YXJhPgorICAgICAgICAgIEJ5IGRlZmF1bHQsIHRoZSBzdWJzY3JpYmVyIGFwcGxpZXMgY2hhbmdl cyBhcyBzb29uIGFzIHBvc3NpYmxlLiBUaGlzCisgICAgICAgICAgcGFyYW1ldGVyIGFsbG93cyB0 aGUgdXNlciB0byBkZWxheSB0aGUgYXBwbGljYXRpb24gb2YgY2hhbmdlcyBieSBhCisgICAgICAg ICAgZ2l2ZW4gdGltZSBpbnRlcnZhbC4gSWYgdGhlIHZhbHVlIGlzIHNwZWNpZmllZCB3aXRob3V0 IHVuaXRzLCBpdCBpcworICAgICAgICAgIHRha2VuIGFzIG1pbGxpc2Vjb25kcy4gVGhlIGRlZmF1 bHQgaXMgemVybyAobm8gZGVsYXkpLgorICAgICAgICAgPC9wYXJhPgorICAgICAgICAgPHBhcmE+ CisgICAgICAgICAgQW55IGRlbGF5IG9jY3VycyBvbmx5IG9uIFdBTCByZWNvcmRzIGZvciB0cmFu c2FjdGlvbiBiZWdpbnMgYWZ0ZXIgYWxsCisgICAgICAgICAgaW5pdGlhbCB0YWJsZSBzeW5jaHJv bml6YXRpb24gaGFzIGZpbmlzaGVkLiBUaGUgZGVsYXkgaXMgY2FsY3VsYXRlZAorICAgICAgICAg IGFzIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIFdBTCB0aW1lc3RhbXAgYXMgd3JpdHRlbiBv biB0aGUKKyAgICAgICAgICBwdWJsaXNoZXIgYW5kIHRoZSBjdXJyZW50IHRpbWUgb24gdGhlIHN1 YnNjcmliZXIuIEFueSBvdmVyaGVhZCBvZgorICAgICAgICAgIHRpbWUgc3BlbnQgaW4gbG9naWNh bCBkZWNvZGluZyBhbmQgaW4gdHJhbnNmZXJyaW5nIHRoZSB0cmFuc2FjdGlvbgorICAgICAgICAg IG1heSByZWR1Y2UgdGhlIGFjdHVhbCB3YWl0IHRpbWUuIEl0IGlzIGFsc28gcG9zc2libGUgdGhh dCB0aGUgb3ZlcmhlYWQKKyAgICAgICAgICBhbHJlYWR5IGV4Y2VlZHMgdGhlIHJlcXVlc3RlZCA8 bGl0ZXJhbD5taW5fYXBwbHlfZGVsYXk8L2xpdGVyYWw+IHZhbHVlLAorICAgICAgICAgIGluIHdo aWNoIGNhc2Ugbm8gYWRkaXRpb25hbCB3YWl0IGlzIG5lY2Vzc2FyeS4gSWYgdGhlIHN5c3RlbSBj bG9ja3MKKyAgICAgICAgICBvbiBwdWJsaXNoZXIgYW5kIHN1YnNjcmliZXIgYXJlIG5vdCBzeW5j aHJvbml6ZWQsIHRoaXMgbWF5IGxlYWQgdG8KKyAgICAgICAgICBhcHBseSBjaGFuZ2VzIGVhcmxp ZXIgdGhhbiBleHBlY3RlZCwgYnV0IHRoaXMgaXMgbm90IGEgbWFqb3IgaXNzdWUKKyAgICAgICAg ICBiZWNhdXNlIHRoaXMgcGFyYW1ldGVyIGlzIHR5cGljYWxseSBtdWNoIGxhcmdlciB0aGFuIHRo ZSB0aW1lCisgICAgICAgICAgZGV2aWF0aW9ucyBiZXR3ZWVuIHNlcnZlcnMuIE5vdGUgdGhhdCBp ZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQgdG8gYQorICAgICAgICAgIGxvbmcgZGVsYXksIHRoZSBy ZXBsaWNhdGlvbiB3aWxsIHN0b3AgaWYgdGhlIHJlcGxpY2F0aW9uIHNsb3QgZmFsbHMKKyAgICAg ICAgICBiZWhpbmQgdGhlIGN1cnJlbnQgTFNOIGJ5IG1vcmUgdGhhbgorICAgICAgICAgIDxsaW5r IGxpbmtlbmQ9Imd1Yy1tYXgtc2xvdC13YWwta2VlcC1zaXplIj48bGl0ZXJhbD5tYXhfc2xvdF93 YWxfa2VlcF9zaXplPC9saXRlcmFsPjwvbGluaz4uCisgICAgICAgICA8L3BhcmE+CisgICAgICAg ICA8d2FybmluZz4KKyAgICAgICAgICAgPHBhcmE+CisgICAgICAgICAgICBEZWxheWluZyB0aGUg cmVwbGljYXRpb24gY2FuIG1lYW4gdGhlcmUgaXMgYSBtdWNoIGxvbmdlciB0aW1lIGJldHdlZW4g bWFraW5nCisgICAgICAgICAgICBhIGNoYW5nZSBvbiB0aGUgcHVibGlzaGVyLCBhbmQgdGhhdCBj aGFuZ2UgYmVpbmcgY29tbWl0dGVkIG9uIHRoZSBzdWJzY3JpYmVyLgorICAgICAgICAgICAgVGhp cyBjYW4gaW1wYWN0IHRoZSBwZXJmb3JtYW5jZSBvZiBzeW5jaHJvbm91cyByZXBsaWNhdGlvbi4K KyAgICAgICAgICAgIFNlZSA8eHJlZiBsaW5rZW5kPSJndWMtc3luY2hyb25vdXMtY29tbWl0Ii8+ LgorICAgICAgICAgICA8L3BhcmE+CisgICAgICAgICA8L3dhcm5pbmc+CisgICAgICAgIDwvbGlz dGl0ZW0+CisgICAgICAgPC92YXJsaXN0ZW50cnk+CisgICAgICA8L3ZhcmlhYmxlbGlzdD4KKyAg ICAgPC9wYXJhPgogCiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgpAQCAtNDEz LDYgKzQ1MSwxMSBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5zdWJzY3JpcHRpb25fbmFtZTwvcmVwbGFjZWFibAogICAgcHVibGlzaGVkIHdpdGgg ZGlmZmVyZW50IGNvbHVtbiBsaXN0cyBhcmUgbm90IHN1cHBvcnRlZC4KICAgPC9wYXJhPgogCisg IDxwYXJhPgorICAgQSBub24temVybyA8bGl0ZXJhbD5taW5fYXBwbHlfZGVsYXk8L2xpdGVyYWw+ IHBhcmFtZXRlciBpcyBub3QgYWxsb3dlZCB3aGVuIHN0cmVhbWluZworICAgaW4gcGFyYWxsZWwg bW9kZS4KKyAgPC9wYXJhPgorCiAgIDxwYXJhPgogICAgV2UgYWxsb3cgbm9uLWV4aXN0ZW50IHB1 YmxpY2F0aW9ucyB0byBiZSBzcGVjaWZpZWQgc28gdGhhdCB1c2VycyBjYW4gYWRkCiAgICB0aG9z ZSBsYXRlci4gVGhpcyBtZWFucwpAQCAtNDcyLDYgKzUxNSwxOCBAQCBDUkVBVEUgU1VCU0NSSVBU SU9OIG15c3ViCiAgICAgICAgIFBVQkxJQ0FUSU9OIGluc2VydF9vbmx5CiAgICAgICAgICAgICAg ICBXSVRIIChlbmFibGVkID0gZmFsc2UpOwogPC9wcm9ncmFtbGlzdGluZz48L3BhcmE+CisKKyAg PHBhcmE+CisgICBDcmVhdGUgYSBzdWJzY3JpcHRpb24gdG8gYSByZW1vdGUgc2VydmVyIHRoYXQg cmVwbGljYXRlcyB0YWJsZXMgaW4KKyAgIHRoZSA8bGl0ZXJhbD5teXB1YjwvbGl0ZXJhbD4gcHVi bGljYXRpb24gYW5kIHN0YXJ0cyByZXBsaWNhdGluZyBpbW1lZGlhdGVseQorICAgb24gY29tbWl0 LiBQcmUtZXhpc3RpbmcgZGF0YSBpcyBub3QgY29waWVkLiBUaGUgYXBwbGljYXRpb24gb2YgY2hh bmdlcyBpcworICAgZGVsYXllZCBieSA0IGhvdXJzLgorPHByb2dyYW1saXN0aW5nPgorQ1JFQVRF IFNVQlNDUklQVElPTiBteXN1YgorICAgICAgICAgQ09OTkVDVElPTiAnaG9zdD0xOTIuMC4yLjQg cG9ydD01NDMyIHVzZXI9Zm9vIGRibmFtZT1mb29kYicKKyAgICAgICAgUFVCTElDQVRJT04gbXlw dWIKKyAgICAgICAgICAgICAgIFdJVEggKGNvcHlfZGF0YSA9IGZhbHNlLCBtaW5fYXBwbHlfZGVs YXkgPSAnNGgnKTsKKzwvcHJvZ3JhbWxpc3Rpbmc+PC9wYXJhPgogIDwvcmVmc2VjdDE+CiAKICA8 cmVmc2VjdDE+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNjcmlwdGlv bi5jIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uYwppbmRleCBhNTZhZTMx MWMzLi5jNzY3Y2MxYzNhIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3N1YnNj cmlwdGlvbi5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfc3Vic2NyaXB0aW9uLmMKQEAg LTY0LDYgKzY0LDcgQEAgR2V0U3Vic2NyaXB0aW9uKE9pZCBzdWJpZCwgYm9vbCBtaXNzaW5nX29r KQogCXN1Yi0+b2lkID0gc3ViaWQ7CiAJc3ViLT5kYmlkID0gc3ViZm9ybS0+c3ViZGJpZDsKIAlz dWItPnNraXBsc24gPSBzdWJmb3JtLT5zdWJza2lwbHNuOworCXN1Yi0+bWluYXBwbHlkZWxheSA9 IHN1YmZvcm0tPnN1Ym1pbmFwcGx5ZGVsYXk7CiAJc3ViLT5uYW1lID0gcHN0cmR1cChOYW1lU3Ry KHN1YmZvcm0tPnN1Ym5hbWUpKTsKIAlzdWItPm93bmVyID0gc3ViZm9ybS0+c3Vib3duZXI7CiAJ c3ViLT5lbmFibGVkID0gc3ViZm9ybS0+c3ViZW5hYmxlZDsKZGlmZiAtLWdpdCBhL3NyYy9iYWNr ZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVt X3ZpZXdzLnNxbAppbmRleCA4NjA4ZTNmYTViLi4zMTdjMjAxMGNiIDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9jYXRhbG9nL3N5c3RlbV92aWV3cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxv Zy9zeXN0ZW1fdmlld3Muc3FsCkBAIC0xMjk5LDkgKzEyOTksMTAgQEAgUkVWT0tFIEFMTCBPTiBw Z19yZXBsaWNhdGlvbl9vcmlnaW5fc3RhdHVzIEZST00gcHVibGljOwogCiAtLSBBbGwgY29sdW1u cyBvZiBwZ19zdWJzY3JpcHRpb24gZXhjZXB0IHN1YmNvbm5pbmZvIGFyZSBwdWJsaWNseSByZWFk YWJsZS4KIFJFVk9LRSBBTEwgT04gcGdfc3Vic2NyaXB0aW9uIEZST00gcHVibGljOwotR1JBTlQg U0VMRUNUIChvaWQsIHN1YmRiaWQsIHN1YnNraXBsc24sIHN1Ym5hbWUsIHN1Ym93bmVyLCBzdWJl bmFibGVkLAotICAgICAgICAgICAgICBzdWJiaW5hcnksIHN1YnN0cmVhbSwgc3VidHdvcGhhc2Vz dGF0ZSwgc3ViZGlzYWJsZW9uZXJyLAotICAgICAgICAgICAgICBzdWJzbG90bmFtZSwgc3Vic3lu Y2NvbW1pdCwgc3VicHVibGljYXRpb25zLCBzdWJvcmlnaW4pCitHUkFOVCBTRUxFQ1QgKG9pZCwg c3ViZGJpZCwgc3Vic2tpcGxzbiwgc3VibWluYXBwbHlkZWxheSwgc3VibmFtZSwgc3Vib3duZXIs CisgICAgICAgICAgICAgIHN1YmVuYWJsZWQsIHN1YmJpbmFyeSwgc3Vic3RyZWFtLCBzdWJ0d29w aGFzZXN0YXRlLAorICAgICAgICAgICAgICBzdWJkaXNhYmxlb25lcnIsIHN1YnNsb3RuYW1lLCBz dWJzeW5jY29tbWl0LCBzdWJwdWJsaWNhdGlvbnMsCisgICAgICAgICAgICAgIHN1Ym9yaWdpbikK ICAgICBPTiBwZ19zdWJzY3JpcHRpb24gVE8gcHVibGljOwogCiBDUkVBVEUgVklFVyBwZ19zdGF0 X3N1YnNjcmlwdGlvbl9zdGF0cyBBUwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMv c3Vic2NyaXB0aW9uY21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9uY21k cy5jCmluZGV4IGJhZmYwMGRkNzQuLmE1ZDMwZWM1ODUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L2NvbW1hbmRzL3N1YnNjcmlwdGlvbmNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9z dWJzY3JpcHRpb25jbWRzLmMKQEAgLTY2LDYgKzY2LDcgQEAKICNkZWZpbmUgU1VCT1BUX0RJU0FC TEVfT05fRVJSCQkweDAwMDAwNDAwCiAjZGVmaW5lIFNVQk9QVF9MU04JCQkJCTB4MDAwMDA4MDAK ICNkZWZpbmUgU1VCT1BUX09SSUdJTgkJCQkweDAwMDAxMDAwCisjZGVmaW5lIFNVQk9QVF9NSU5f QVBQTFlfREVMQVkJCTB4MDAwMDIwMDAKIAogLyogY2hlY2sgaWYgdGhlICd2YWwnIGhhcyAnYml0 cycgc2V0ICovCiAjZGVmaW5lIElzU2V0KHZhbCwgYml0cykgICgoKHZhbCkgJiAoYml0cykpID09 IChiaXRzKSkKQEAgLTkwLDYgKzkxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgU3ViT3B0cwogCWJvb2wJ CWRpc2FibGVvbmVycjsKIAljaGFyCSAgICpvcmlnaW47CiAJWExvZ1JlY1B0cglsc247CisJaW50 CQkJbWluX2FwcGx5X2RlbGF5OwogfSBTdWJPcHRzOwogCiBzdGF0aWMgTGlzdCAqZmV0Y2hfdGFi bGVfbGlzdChXYWxSZWNlaXZlckNvbm4gKndyY29ubiwgTGlzdCAqcHVibGljYXRpb25zKTsKQEAg LTEwMCw3ICsxMDIsNyBAQCBzdGF0aWMgdm9pZCBjaGVja19wdWJsaWNhdGlvbnNfb3JpZ2luKFdh bFJlY2VpdmVyQ29ubiAqd3Jjb25uLAogc3RhdGljIHZvaWQgY2hlY2tfZHVwbGljYXRlc19pbl9w dWJsaXN0KExpc3QgKnB1Ymxpc3QsIERhdHVtICpkYXR1bXMpOwogc3RhdGljIExpc3QgKm1lcmdl X3B1YmxpY2F0aW9ucyhMaXN0ICpvbGRwdWJsaXN0LCBMaXN0ICpuZXdwdWJsaXN0LCBib29sIGFk ZHB1YiwgY29uc3QgY2hhciAqc3VibmFtZSk7CiBzdGF0aWMgdm9pZCBSZXBvcnRTbG90Q29ubmVj dGlvbkVycm9yKExpc3QgKnJzdGF0ZXMsIE9pZCBzdWJpZCwgY2hhciAqc2xvdG5hbWUsIGNoYXIg KmVycik7Ci0KK3N0YXRpYyBpbnQJZGVmR2V0TWluQXBwbHlEZWxheShEZWZFbGVtICpkZWYpOwog CiAvKgogICogQ29tbW9uIG9wdGlvbiBwYXJzaW5nIGZ1bmN0aW9uIGZvciBDUkVBVEUgYW5kIEFM VEVSIFNVQlNDUklQVElPTiBjb21tYW5kcy4KQEAgLTE0Niw2ICsxNDgsOCBAQCBwYXJzZV9zdWJz Y3JpcHRpb25fb3B0aW9ucyhQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKnN0bXRfb3B0aW9ucywK IAkJb3B0cy0+ZGlzYWJsZW9uZXJyID0gZmFsc2U7CiAJaWYgKElzU2V0KHN1cHBvcnRlZF9vcHRz LCBTVUJPUFRfT1JJR0lOKSkKIAkJb3B0cy0+b3JpZ2luID0gcHN0cmR1cChMT0dJQ0FMUkVQX09S SUdJTl9BTlkpOworCWlmIChJc1NldChzdXBwb3J0ZWRfb3B0cywgU1VCT1BUX01JTl9BUFBMWV9E RUxBWSkpCisJCW9wdHMtPm1pbl9hcHBseV9kZWxheSA9IDA7CiAKIAkvKiBQYXJzZSBvcHRpb25z ICovCiAJZm9yZWFjaChsYywgc3RtdF9vcHRpb25zKQpAQCAtMzI0LDYgKzMyOCwxMiBAQCBwYXJz ZV9zdWJzY3JpcHRpb25fb3B0aW9ucyhQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKnN0bXRfb3B0 aW9ucywKIAkJCW9wdHMtPnNwZWNpZmllZF9vcHRzIHw9IFNVQk9QVF9MU047CiAJCQlvcHRzLT5s c24gPSBsc247CiAJCX0KKwkJZWxzZSBpZiAoSXNTZXQoc3VwcG9ydGVkX29wdHMsIFNVQk9QVF9N SU5fQVBQTFlfREVMQVkpICYmCisJCQkJIHN0cmNtcChkZWZlbC0+ZGVmbmFtZSwgIm1pbl9hcHBs eV9kZWxheSIpID09IDApCisJCXsKKwkJCW9wdHMtPnNwZWNpZmllZF9vcHRzIHw9IFNVQk9QVF9N SU5fQVBQTFlfREVMQVk7CisJCQlvcHRzLT5taW5fYXBwbHlfZGVsYXkgPSBkZWZHZXRNaW5BcHBs eURlbGF5KGRlZmVsKTsKKwkJfQogCQllbHNlCiAJCQllcmVwb3J0KEVSUk9SLAogCQkJCQkoZXJy Y29kZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCkBAIC00MDQsNiArNDE0LDI2IEBAIHBhcnNlX3N1 YnNjcmlwdGlvbl9vcHRpb25zKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqc3RtdF9vcHRpb25z LAogCQkJCQkJCQkic2xvdF9uYW1lID0gTk9ORSIsICJjcmVhdGVfc2xvdCA9IGZhbHNlIikpKTsK IAkJfQogCX0KKworCS8qCisJICogVGhlIGNvbWJpbmF0aW9uIG9mIHBhcmFsbGVsIHN0cmVhbWlu ZyBtb2RlIGFuZCBtaW5fYXBwbHlfZGVsYXkgaXMgbm90CisJICogYWxsb3dlZC4gVGhlIHN1YnNj cmliZXIgaW4gdGhlIHBhcmFsbGVsIHN0cmVhbWluZyBtb2RlIGFwcGxpZXMgZWFjaAorCSAqIHN0 cmVhbSBvbiBhcnJpdmFsIHdpdGhvdXQgdGhlIHRpbWUgb2YgY29tbWl0L3ByZXBhcmUuIFNvLCB0 aGUKKwkgKiBzdWJzY3JpYmVyIG5lZWRzIHRvIGRlcGVuZCBvbiB0aGUgYXJyaXZhbCB0aW1lIG9m IHRoZSBzdHJlYW0gaW4gdGhpcworCSAqIGNhc2UsIGlmIHdlIGFwcGx5IHRoZSB0aW1lLWRlbGF5 ZWQgZmVhdHVyZSBmb3Igc3VjaCB0cmFuc2FjdGlvbnMuIFRoZW4KKwkgKiB0aGVyZSBpcyBhIHBv c3NpYmlsaXR5IHdoZXJlIHNvbWUgdW5uZWNlc3NhcnkgZGVsYXkgd2lsbCBiZSBhZGRlZCBvbgor CSAqIHRoZSBzdWJzY3JpYmVyIGJ5IG5ldHdvcmsgY29tbXVuaWNhdGlvbiBicmVhayBiZXR3ZWVu IG5vZGVzIG9yIG90aGVyCisJICogaGVhdnkgd29yayBsb2FkIG9uIHRoZSBwdWJsaXNoZXIuIE9u IHRoZSBvdGhlciBoYW5kLCBhcHBseWluZyB0aGUgZGVsYXkKKwkgKiBhdCB0aGUgZW5kIG9mIHRy YW5zYWN0aW9uIHdpdGggcGFyYWxsZWwgYXBwbHkgYWxzbyBjYW4gY2F1c2UgaXNzdWVzIG9mCisJ ICogdXNlZCByZXNvdXJjZSBibG9hdCBhbmQgbG9ja3Mga2VwdCBpbiBvcGVuIGZvciBhIGxvbmcg dGltZS4gVGh1cywgdGhvc2UKKwkgKiBmZWF0dXJlcyBjYW4ndCB3b3JrIHRvZ2V0aGVyLgorCSAq LworCWlmIChJc1NldChzdXBwb3J0ZWRfb3B0cywgU1VCT1BUX01JTl9BUFBMWV9ERUxBWSkgJiYK KwkJb3B0cy0+bWluX2FwcGx5X2RlbGF5ID4gMCAmJiBvcHRzLT5zdHJlYW1pbmcgPT0gTE9HSUNB TFJFUF9TVFJFQU1fUEFSQUxMRUwpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJZXJyY29kZShFUlJD T0RFX1NZTlRBWF9FUlJPUiksCisJCQkJZXJybXNnKCIlcyBhbmQgJXMgYXJlIG11dHVhbGx5IGV4 Y2x1c2l2ZSBvcHRpb25zIiwKKwkJCQkJICAgIm1pbl9hcHBseV9kZWxheSA+IDAiLCAic3RyZWFt aW5nID0gcGFyYWxsZWwiKSk7CiB9CiAKIC8qCkBAIC01NjAsNyArNTkwLDggQEAgQ3JlYXRlU3Vi c2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ3JlYXRlU3Vic2NyaXB0aW9uU3RtdCAqc3Rt dCwKIAkJCQkJICBTVUJPUFRfU0xPVF9OQU1FIHwgU1VCT1BUX0NPUFlfREFUQSB8CiAJCQkJCSAg U1VCT1BUX1NZTkNIUk9OT1VTX0NPTU1JVCB8IFNVQk9QVF9CSU5BUlkgfAogCQkJCQkgIFNVQk9Q VF9TVFJFQU1JTkcgfCBTVUJPUFRfVFdPUEhBU0VfQ09NTUlUIHwKLQkJCQkJICBTVUJPUFRfRElT QUJMRV9PTl9FUlIgfCBTVUJPUFRfT1JJR0lOKTsKKwkJCQkJICBTVUJPUFRfRElTQUJMRV9PTl9F UlIgfCBTVUJPUFRfT1JJR0lOIHwKKwkJCQkJICBTVUJPUFRfTUlOX0FQUExZX0RFTEFZKTsKIAlw YXJzZV9zdWJzY3JpcHRpb25fb3B0aW9ucyhwc3RhdGUsIHN0bXQtPm9wdGlvbnMsIHN1cHBvcnRl ZF9vcHRzLCAmb3B0cyk7CiAKIAkvKgpAQCAtNjI1LDYgKzY1Niw3IEBAIENyZWF0ZVN1YnNjcmlw dGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIENyZWF0ZVN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJ dmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX29pZCAtIDFdID0gT2JqZWN0SWRHZXREYXR1bShz dWJpZCk7CiAJdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmRiaWQgLSAxXSA9IE9iamVj dElkR2V0RGF0dW0oTXlEYXRhYmFzZUlkKTsKIAl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRpb25f c3Vic2tpcGxzbiAtIDFdID0gTFNOR2V0RGF0dW0oSW52YWxpZFhMb2dSZWNQdHIpOworCXZhbHVl c1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJtaW5hcHBseWRlbGF5IC0gMV0gPSBJbnQ2NEdldERh dHVtKG9wdHMubWluX2FwcGx5X2RlbGF5KTsKIAl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRpb25f c3VibmFtZSAtIDFdID0KIAkJRGlyZWN0RnVuY3Rpb25DYWxsMShuYW1laW4sIENTdHJpbmdHZXRE YXR1bShzdG10LT5zdWJuYW1lKSk7CiAJdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1Ym93 bmVyIC0gMV0gPSBPYmplY3RJZEdldERhdHVtKG93bmVyKTsKQEAgLTEwNTQsNyArMTA4Niw3IEBA IEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25T dG10ICpzdG10LAogCQkJCXN1cHBvcnRlZF9vcHRzID0gKFNVQk9QVF9TTE9UX05BTUUgfAogCQkJ CQkJCQkgIFNVQk9QVF9TWU5DSFJPTk9VU19DT01NSVQgfCBTVUJPUFRfQklOQVJZIHwKIAkJCQkJ CQkJICBTVUJPUFRfU1RSRUFNSU5HIHwgU1VCT1BUX0RJU0FCTEVfT05fRVJSIHwKLQkJCQkJCQkJ ICBTVUJPUFRfT1JJR0lOKTsKKwkJCQkJCQkJICBTVUJPUFRfT1JJR0lOIHwgU1VCT1BUX01JTl9B UFBMWV9ERUxBWSk7CiAKIAkJCQlwYXJzZV9zdWJzY3JpcHRpb25fb3B0aW9ucyhwc3RhdGUsIHN0 bXQtPm9wdGlvbnMsCiAJCQkJCQkJCQkJICAgc3VwcG9ydGVkX29wdHMsICZvcHRzKTsKQEAgLTEw OTgsNiArMTEzMCwxOCBAQCBBbHRlclN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIEFs dGVyU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAogCQkJCWlmIChJc1NldChvcHRzLnNwZWNpZmll ZF9vcHRzLCBTVUJPUFRfU1RSRUFNSU5HKSkKIAkJCQl7CisJCQkJCS8qCisJCQkJCSAqIFRoZSBj b21iaW5hdGlvbiBvZiBwYXJhbGxlbCBzdHJlYW1pbmcgbW9kZSBhbmQKKwkJCQkJICogbWluX2Fw cGx5X2RlbGF5IGlzIG5vdCBhbGxvd2VkLgorCQkJCQkgKi8KKwkJCQkJaWYgKG9wdHMuc3RyZWFt aW5nID09IExPR0lDQUxSRVBfU1RSRUFNX1BBUkFMTEVMKQorCQkJCQkJaWYgKChJc1NldChvcHRz LnNwZWNpZmllZF9vcHRzLCBTVUJPUFRfTUlOX0FQUExZX0RFTEFZKSAmJiBvcHRzLm1pbl9hcHBs eV9kZWxheSA+IDApIHx8CisJCQkJCQkJKCFJc1NldChvcHRzLnNwZWNpZmllZF9vcHRzLCBTVUJP UFRfTUlOX0FQUExZX0RFTEFZKSAmJiBzdWItPm1pbmFwcGx5ZGVsYXkgPiAwKSkKKwkJCQkJCQll cmVwb3J0KEVSUk9SLAorCQkJCQkJCQkJZXJyY29kZShFUlJDT0RFX09CSkVDVF9OT1RfSU5fUFJF UkVRVUlTSVRFX1NUQVRFKSwKKwkJCQkJCQkJCWVycm1zZygiY2Fubm90IGVuYWJsZSAlcyBtb2Rl IGZvciBzdWJzY3JpcHRpb24gd2l0aCAlcyIsCisJCQkJCQkJCQkJICAgInN0cmVhbWluZyA9IHBh cmFsbGVsIiwgIm1pbl9hcHBseV9kZWxheSIpKTsKKwogCQkJCQl2YWx1ZXNbQW51bV9wZ19zdWJz Y3JpcHRpb25fc3Vic3RyZWFtIC0gMV0gPQogCQkJCQkJQ2hhckdldERhdHVtKG9wdHMuc3RyZWFt aW5nKTsKIAkJCQkJcmVwbGFjZXNbQW51bV9wZ19zdWJzY3JpcHRpb25fc3Vic3RyZWFtIC0gMV0g PSB0cnVlOwpAQCAtMTExMSw2ICsxMTU1LDI1IEBAIEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3Rh dGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25TdG10ICpzdG10LAogCQkJCQkJPSB0cnVlOwog CQkJCX0KIAorCQkJCWlmIChJc1NldChvcHRzLnNwZWNpZmllZF9vcHRzLCBTVUJPUFRfTUlOX0FQ UExZX0RFTEFZKSkKKwkJCQl7CisJCQkJCS8qCisJCQkJCSAqIFRoZSBjb21iaW5hdGlvbiBvZiBw YXJhbGxlbCBzdHJlYW1pbmcgbW9kZSBhbmQKKwkJCQkJICogbWluX2FwcGx5X2RlbGF5IGlzIG5v dCBhbGxvd2VkLgorCQkJCQkgKi8KKwkJCQkJaWYgKG9wdHMubWluX2FwcGx5X2RlbGF5ID4gMCkK KwkJCQkJCWlmICgoSXNTZXQob3B0cy5zcGVjaWZpZWRfb3B0cywgU1VCT1BUX1NUUkVBTUlORykg JiYgb3B0cy5zdHJlYW1pbmcgPT0gTE9HSUNBTFJFUF9TVFJFQU1fUEFSQUxMRUwpIHx8CisJCQkJ CQkJKCFJc1NldChvcHRzLnNwZWNpZmllZF9vcHRzLCBTVUJPUFRfU1RSRUFNSU5HKSAmJiBzdWIt PnN0cmVhbSA9PSBMT0dJQ0FMUkVQX1NUUkVBTV9QQVJBTExFTCkpCisJCQkJCQkJZXJlcG9ydChF UlJPUiwKKwkJCQkJCQkJCWVycmNvZGUoRVJSQ09ERV9PQkpFQ1RfTk9UX0lOX1BSRVJFUVVJU0lU RV9TVEFURSksCisJCQkJCQkJCQllcnJtc2coImNhbm5vdCBlbmFibGUgJXMgZm9yIHN1YnNjcmlw dGlvbiBpbiAlcyBtb2RlIiwKKwkJCQkJCQkJCQkgICAibWluX2FwcGx5X2RlbGF5IiwgInN0cmVh bWluZyA9IHBhcmFsbGVsIikpOworCisJCQkJCXZhbHVlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9z dWJtaW5hcHBseWRlbGF5IC0gMV0gPQorCQkJCQkJSW50NjRHZXREYXR1bShvcHRzLm1pbl9hcHBs eV9kZWxheSk7CisJCQkJCXJlcGxhY2VzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1Ym1pbmFwcGx5 ZGVsYXkgLSAxXSA9IHRydWU7CisJCQkJfQorCiAJCQkJaWYgKElzU2V0KG9wdHMuc3BlY2lmaWVk X29wdHMsIFNVQk9QVF9PUklHSU4pKQogCQkJCXsKIAkJCQkJdmFsdWVzW0FudW1fcGdfc3Vic2Ny aXB0aW9uX3N1Ym9yaWdpbiAtIDFdID0KQEAgLTIxODUsMyArMjI0OCw1MiBAQCBkZWZHZXRTdHJl YW1pbmdNb2RlKERlZkVsZW0gKmRlZikKIAkJCQkJZGVmLT5kZWZuYW1lKSkpOwogCXJldHVybiBM T0dJQ0FMUkVQX1NUUkVBTV9PRkY7CS8qIGtlZXAgY29tcGlsZXIgcXVpZXQgKi8KIH0KKworCisv KgorICogRXh0cmFjdCB0aGUgbWluX2FwcGx5X2RlbGF5IG1vZGUgdmFsdWUgZnJvbSBhIERlZkVs ZW0uIFRoaXMgaXMgdmVyeSBzaW1pbGFyCisgKiB0byBQR0NfSU5UIGNhc2Ugb2YgcGFyc2VfYW5k X3ZhbGlkYXRlX3ZhbHVlKCksIGJlY2F1c2UgbWluX2FwcGx5X2RlbGF5CisgKiBhY2NlcHRzIHRo ZSBzYW1lIHN0cmluZyBhcyByZWNvdmVyeV9taW5fYXBwbHlfZGVsYXkuCisgKi8KK2ludAorZGVm R2V0TWluQXBwbHlEZWxheShEZWZFbGVtICpkZWYpCit7CisJY2hhcgkgICAqdmFsdWU7CisJaW50 CQkJcmVzdWx0OworCWNvbnN0IGNoYXIgKmhpbnRtc2c7CisKKwkvKgorCSAqIFJhaXNlIGFuIEVS Uk9SIGlmIG5vIHBhcmFtZXRlciB2YWx1ZSBnaXZlbgorCSAqLworCWlmIChkZWYtPmFyZyA9PSBO VUxMKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfU1lOVEFYX0VSUk9S KSwKKwkJCQkgZXJybXNnKCIlcyByZXF1aXJlcyBhbiBpbnRlZ2VyIHZhbHVlIiwKKwkJCQkJCWRl Zi0+ZGVmbmFtZSkpKTsKKworCXZhbHVlID0gZGVmR2V0U3RyaW5nKGRlZik7CisKKwkvKgorCSAq IFBhcnNlIGdpdmVuIHN0cmluZyBhcyBwYXJhbWV0ZXIgd2hpY2ggaGFzIG1pbGxpc2Vjb25kIHVu aXQKKwkgKi8KKwlpZiAoIXBhcnNlX2ludCh2YWx1ZSwgJnJlc3VsdCwgR1VDX1VOSVRfTVMsICZo aW50bXNnKSkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURf UEFSQU1FVEVSX1ZBTFVFKSwKKwkJCQkgZXJybXNnKCJpbnZhbGlkIHZhbHVlIGZvciBwYXJhbWV0 ZXIgXCIlc1wiOiBcIiVzXCIiLAorCQkJCQkJIm1pbl9hcHBseV9kZWxheSIsIHZhbHVlKSwKKwkJ CQkgaGludG1zZyA/IGVycmhpbnQoIiVzIiwgXyhoaW50bXNnKSkgOiAwKSk7CisKKwkvKgorCSAq IENoZWNrIGxvd2VyIGJvdW5kLiBwYXJzZV9pbnQoKSBoYXMgYmVlbiBhbHJlYWR5IGNvbmZpcm1l ZCB0aGF0IHJlc3VsdAorCSAqIGlzIGVxdWFsIHRvIG9yIHNtYWxsZXIgdGhhbiBJTlRfTUFYLgor CSAqLworCWlmIChyZXN1bHQgPCAwKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVS UkNPREVfSU5WQUxJRF9QQVJBTUVURVJfVkFMVUUpLAorCQkJCSBlcnJtc2coIiVkIG1zIGlzIG91 dHNpZGUgdGhlIHZhbGlkIHJhbmdlIGZvciBwYXJhbWV0ZXIgXCIlc1wiICglZCAuLiAlZCkiLAor CQkJCQkJcmVzdWx0LAorCQkJCQkJIm1pbl9hcHBseV9kZWxheSIsCisJCQkJCQkwLCBJTlRfTUFY KSkpOworCisJcmV0dXJuIHJlc3VsdDsKK30KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxp Y2F0aW9uL2xvZ2ljYWwvYXBwbHlwYXJhbGxlbHdvcmtlci5jIGIvc3JjL2JhY2tlbmQvcmVwbGlj YXRpb24vbG9naWNhbC9hcHBseXBhcmFsbGVsd29ya2VyLmMKaW5kZXggMzU3OWU3MDRmZS4uNzMw MmJjZTdhMCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9hcHBs eXBhcmFsbGVsd29ya2VyLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9h cHBseXBhcmFsbGVsd29ya2VyLmMKQEAgLTcwNCw3ICs3MDQsOCBAQCBwYV9wcm9jZXNzX3Nwb29s ZWRfbWVzc2FnZXNfaWZfcmVxdWlyZWQodm9pZCkKIAl7CiAJCWFwcGx5X3Nwb29sZWRfbWVzc2Fn ZXMoJk15UGFyYWxsZWxTaGFyZWQtPmZpbGVzZXQsCiAJCQkJCQkJICAgTXlQYXJhbGxlbFNoYXJl ZC0+eGlkLAotCQkJCQkJCSAgIEludmFsaWRYTG9nUmVjUHRyKTsKKwkJCQkJCQkgICBJbnZhbGlk WExvZ1JlY1B0ciwKKwkJCQkJCQkgICAwKTsKIAkJcGFfc2V0X2ZpbGVzZXRfc3RhdGUoTXlQYXJh bGxlbFNoYXJlZCwgRlNfRU1QVFkpOwogCX0KIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcmVw bGljYXRpb24vbG9naWNhbC93b3JrZXIuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2lj YWwvd29ya2VyLmMKaW5kZXggYTAwODRjN2VmNi4uMzE3MTlkYjAzMCAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC93b3JrZXIuYworKysgYi9zcmMvYmFja2VuZC9y ZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jCkBAIC0zMTgsNiArMzE4LDE3IEBAIHN0YXRpYyBM aXN0ICpvbl9jb21taXRfd2FrZXVwX3dvcmtlcnNfc3ViaWRzID0gTklMOwogYm9vbAkJaW5fcmVt b3RlX3RyYW5zYWN0aW9uID0gZmFsc2U7CiBzdGF0aWMgWExvZ1JlY1B0ciByZW1vdGVfZmluYWxf bHNuID0gSW52YWxpZFhMb2dSZWNQdHI7CiAKKy8qCisgKiBJbiBvcmRlciB0byBhdm9pZCB3YWxz ZW5kZXIgdGltZW91dCBmb3IgdGltZS1kZWxheWVkIHJlcGxpY2F0aW9uIHRoZSB3b3JrZXIKKyAq IHByb2Nlc3Mga2VlcHMgc2VuZGluZyBmZWVkYmFjayBtZXNzYWdlcyBkdXJpbmcgdGhlIGRlbGF5 IHBlcmlvZC4KKyAqIE1lYW53aGlsZSwgdGhlIGZlYXR1cmUgZGVsYXlzIHRoZSBhcHBseSBiZWZv cmUgc3RhcnRpbmcgdGhlCisgKiB0cmFuc2FjdGlvbiBhbmQgdGh1cyB3ZSBkb24ndCB3cml0ZSBX QUxzIGZvciB0aGUgc3VzcGVuZGVkIGNoYW5nZXMgZHVyaW5nCisgKiB0aGUgd2FpdC4gV2hlbiB0 aGUgd29ya2VyIHByb2Nlc3Mgc2VuZHMgYSBmZWVkYmFjayBtZXNzYWdlCisgKiBkdXJpbmcgdGhl IGRlbGF5LCB3ZSBzaG91bGQgbm90IG1ha2UgcG9zaXRpb25zIG9mIHRoZSBmbHVzaGVkIGFuZCBh cHBseSBMU04KKyAqIG92ZXJ3cml0dGVuIGJ5IHRoZSBsYXN0IHJlY2VpdmVkIGxhdGVzdCBMU04u IFNlZSBzZW5kX2ZlZWRiYWNrKCkgZm9yIGRldGFpbHMuCisgKi8KK3N0YXRpYyBYTG9nUmVjUHRy IGxhc3RfcmVjZWl2ZWQgPSBJbnZhbGlkWExvZ1JlY1B0cjsKKwogLyogZmllbGRzIHZhbGlkIG9u bHkgd2hlbiBwcm9jZXNzaW5nIHN0cmVhbWVkIHRyYW5zYWN0aW9uICovCiBzdGF0aWMgYm9vbCBp bl9zdHJlYW1lZF90cmFuc2FjdGlvbiA9IGZhbHNlOwogCkBAIC0zODgsMTAgKzM5OSwxMyBAQCBz dGF0aWMgdm9pZCBzdHJlYW1fd3JpdGVfY2hhbmdlKGNoYXIgYWN0aW9uLCBTdHJpbmdJbmZvIHMp Owogc3RhdGljIHZvaWQgc3RyZWFtX29wZW5fYW5kX3dyaXRlX2NoYW5nZShUcmFuc2FjdGlvbklk IHhpZCwgY2hhciBhY3Rpb24sIFN0cmluZ0luZm8gcyk7CiBzdGF0aWMgdm9pZCBzdHJlYW1fY2xv c2VfZmlsZSh2b2lkKTsKIAotc3RhdGljIHZvaWQgc2VuZF9mZWVkYmFjayhYTG9nUmVjUHRyIHJl Y3Zwb3MsIGJvb2wgZm9yY2UsIGJvb2wgcmVxdWVzdFJlcGx5KTsKK3N0YXRpYyB2b2lkIHNlbmRf ZmVlZGJhY2soWExvZ1JlY1B0ciByZWN2cG9zLCBib29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBs eSwKKwkJCQkJCSAgYm9vbCBpbl9kZWxheWVkX2FwcGx5KTsKIAogc3RhdGljIHZvaWQgRGlzYWJs ZVN1YnNjcmlwdGlvbkFuZEV4aXQodm9pZCk7CiAKK3N0YXRpYyB2b2lkIG1heWJlX2RlbGF5X2Fw cGx5KFRyYW5zYWN0aW9uSWQgeGlkLCBUaW1lc3RhbXBUeiBmaW5pc2hfdHMpOworCiBzdGF0aWMg dm9pZCBhcHBseV9oYW5kbGVfY29tbWl0X2ludGVybmFsKExvZ2ljYWxSZXBDb21taXREYXRhICpj b21taXRfZGF0YSk7CiBzdGF0aWMgdm9pZCBhcHBseV9oYW5kbGVfaW5zZXJ0X2ludGVybmFsKEFw cGx5RXhlY3V0aW9uRGF0YSAqZWRhdGEsCiAJCQkJCQkJCQkJIFJlc3VsdFJlbEluZm8gKnJlbGlu Zm8sCkBAIC05OTgsNiArMTAxMiwxMDggQEAgc2xvdF9tb2RpZnlfZGF0YShUdXBsZVRhYmxlU2xv dCAqc2xvdCwgVHVwbGVUYWJsZVNsb3QgKnNyY3Nsb3QsCiAJRXhlY1N0b3JlVmlydHVhbFR1cGxl KHNsb3QpOwogfQogCisvKgorICogV2hlbiBtaW5fYXBwbHlfZGVsYXkgcGFyYW1ldGVyIGlzIHNl dCBvbiB0aGUgc3Vic2NyaWJlciwgd2Ugd2FpdCBsb25nIGVub3VnaAorICogdG8gbWFrZSBzdXJl IGEgdHJhbnNhY3Rpb24gaXMgYXBwbGllZCBhdCBsZWFzdCB0aGF0IGludGVydmFsIGJlaGluZCB0 aGUKKyAqIHB1Ymxpc2hlci4KKyAqCisgKiBXaGlsZSB0aGUgcGh5c2ljYWwgcmVwbGljYXRpb24g YXBwbGllcyB0aGUgZGVsYXkgYXQgY29tbWl0IHRpbWUsIHRoaXMKKyAqIGZlYXR1cmUgYXBwbGll cyB0aGUgZGVsYXkgZm9yIHRoZSBuZXh0IHRyYW5zYWN0aW9uIGJ1dCBiZWZvcmUgc3RhcnRpbmcg dGhlCisgKiB0cmFuc2FjdGlvbi4gVGhpcyBpcyBtYWlubHkgYmVjYXVzZSBrZWVwaW5nIGEgdHJh bnNhY3Rpb24gdGhhdCBjb25kdWN0ZWQKKyAqIHdyaXRlIG9wZXJhdGlvbnMgb3BlbiBmb3IgYSBs b25nIHRpbWUgcmVzdWx0cyBpbiBzb21lIGlzc3VlcyBzdWNoIGFzIGJsb2F0CisgKiBhbmQgbG9j a3MuCisgKgorICogVGhlIG1pbl9hcHBseV9kZWxheSBwYXJhbWV0ZXIgd2lsbCB0YWtlIGVmZmVj dCBvbmx5IGFmdGVyIGFsbCB0YWJsZXMgYXJlIGluCisgKiBSRUFEWSBzdGF0ZS4KKyAqCisgKiB4 aWQgaXMgdGhlIHRyYW5zYWN0aW9uIGlkIHdoZXJlIHdlIGFwcGx5IHRoZSBkZWxheS4KKyAqCisg KiBmaW5pc2hfdHMgaXMgdGhlIGNvbW1pdC9wcmVwYXJlIHRpbWUgb2YgYm90aCByZWd1bGFyIChu b24tc3RyZWFtZWQpIGFuZAorICogc3RyZWFtZWQgdHJhbnNhY3Rpb25zLiBVbmxpa2UgdGhlIHJl Z3VsYXIgKG5vbi1zdHJlYW1lZCkgY2FzZXMsIHRoZSBkZWxheQorICogaXMgYXBwbGllZCBpbiBh IFNUUkVBTSBDT01NSVQvU1RSRUFNIFBSRVBBUkUgbWVzc2FnZSBmb3Igc3RyZWFtZWQKKyAqIHRy YW5zYWN0aW9ucy4gVGhlIFNUUkVBTSBTVEFSVCBtZXNzYWdlIGRvZXMgbm90IGNvbnRhaW4gYSBj b21taXQvcHJlcGFyZQorICogdGltZSAoaXQgd2lsbCBiZSBhdmFpbGFibGUgd2hlbiB0aGUgaW4t cHJvZ3Jlc3MgdHJhbnNhY3Rpb24gZmluaXNoZXMpLgorICogSGVuY2UsIGl0J3Mgbm90IGFwcHJv cHJpYXRlIHRvIGFwcGx5IGEgZGVsYXkgYXQgdGhlIFNUUkVBTSBTVEFSVCB0aW1lLgorICovCitz dGF0aWMgdm9pZAorbWF5YmVfZGVsYXlfYXBwbHkoVHJhbnNhY3Rpb25JZCB4aWQsIFRpbWVzdGFt cFR6IGZpbmlzaF90cykKK3sKKwlBc3NlcnQoZmluaXNoX3RzID4gMCk7CisKKwkvKiBOb3RoaW5n IHRvIGRvIGlmIG5vIGRlbGF5IHNldCAqLworCWlmICghTXlTdWJzY3JpcHRpb24tPm1pbmFwcGx5 ZGVsYXkpCisJCXJldHVybjsKKworCS8qCisJICogVGhlIG1pbl9hcHBseV9kZWxheSBwYXJhbWV0 ZXIgaXMgaWdub3JlZCB1bnRpbCBhbGwgdGFibGVzeW5jIHdvcmtlcnMKKwkgKiBoYXZlIHJlYWNo ZWQgUkVBRFkgc3RhdGUuIFRoaXMgaXMgYmVjYXVzZSBpZiB3ZSBhbGxvd2VkIHRoZSBkZWxheQor CSAqIGR1cmluZyB0aGUgY2F0Y2h1cCBwaGFzZSwgdGhlbiBvbmNlIHdlIHJlYWNoZWQgdGhlIGxp bWl0IG9mIHRhYmxlc3luYworCSAqIHdvcmtlcnMgaXQgd291bGQgaW1wb3NlIGEgZGVsYXkgZm9y IGVhY2ggc3Vic2VxdWVudCB3b3JrZXIuIFRoYXQgd291bGQKKwkgKiBjYXVzZSBpbml0aWFsIHRh YmxlIHN5bmNocm9uaXphdGlvbiBjb21wbGV0aW9uIHRvIHRha2UgYSBsb25nIHRpbWUuCisJICov CisJaWYgKCFBbGxUYWJsZXN5bmNzUmVhZHkoKSkKKwkJcmV0dXJuOworCisJLyogQXBwbHkgdGhl IGRlbGF5IGJ5IHRoZSBsYXRjaCBtZWNoYW5pc20gKi8KKwl3aGlsZSAodHJ1ZSkKKwl7CisJCWxv bmcJCWRpZmZtczsKKworCQlSZXNldExhdGNoKE15TGF0Y2gpOworCisJCUNIRUNLX0ZPUl9JTlRF UlJVUFRTKCk7CisKKwkJLyogVGhpcyBtaWdodCBjaGFuZ2Ugd2FsX3JlY2VpdmVyX3N0YXR1c19p bnRlcnZhbCAqLworCQlpZiAoQ29uZmlnUmVsb2FkUGVuZGluZykKKwkJeworCQkJQ29uZmlnUmVs b2FkUGVuZGluZyA9IGZhbHNlOworCQkJUHJvY2Vzc0NvbmZpZ0ZpbGUoUEdDX1NJR0hVUCk7CisJ CX0KKworCQkvKgorCQkgKiBCZWZvcmUgY2FsY3VsYXRpbmcgdGhlIHRpbWUgZHVyYXRpb24sIHJl bG9hZCB0aGUgY2F0YWxvZyBpZiBuZWVkZWQuCisJCSAqLworCQlpZiAoIWluX3JlbW90ZV90cmFu c2FjdGlvbiAmJiAhaW5fc3RyZWFtZWRfdHJhbnNhY3Rpb24pCisJCXsKKwkJCUFjY2VwdEludmFs aWRhdGlvbk1lc3NhZ2VzKCk7CisJCQltYXliZV9yZXJlYWRfc3Vic2NyaXB0aW9uKCk7CisJCX0K KworCQlkaWZmbXMgPSBUaW1lc3RhbXBEaWZmZXJlbmNlTWlsbGlzZWNvbmRzKEdldEN1cnJlbnRU aW1lc3RhbXAoKSwKKwkJCQkJCQkJCQkJCSBUaW1lc3RhbXBUelBsdXNNaWxsaXNlY29uZHMoZmlu aXNoX3RzLCBNeVN1YnNjcmlwdGlvbi0+bWluYXBwbHlkZWxheSkpOworCisJCS8qCisJCSAqIEV4 aXQgd2l0aG91dCBhcm1pbmcgdGhlIGxhdGNoIGlmIGl0J3MgYWxyZWFkeSBwYXN0IHRpbWUgdG8g YXBwbHkKKwkJICogdGhpcyB0cmFuc2FjdGlvbi4KKwkJICovCisJCWlmIChkaWZmbXMgPD0gMCkK KwkJCWJyZWFrOworCisJCWVsb2coREVCVUcyLCAidGltZS1kZWxheWVkIHJlcGxpY2F0aW9uIGZv ciB0eGlkICV1LCBtaW5fYXBwbHlfZGVsYXkgPSAlbGxkIG1zLCBSZW1haW5pbmcgd2FpdCB0aW1l OiAlbGQgbXMiLAorCQkJIHhpZCwgKGxvbmcgbG9uZykgTXlTdWJzY3JpcHRpb24tPm1pbmFwcGx5 ZGVsYXksIGRpZmZtcyk7CisKKwkJLyoKKwkJICogQ2FsbCBzZW5kX2ZlZWRiYWNrKCkgdG8gcHJl dmVudCB0aGUgcHVibGlzaGVyIGZyb20gZXhpdGluZyBieQorCQkgKiB0aW1lb3V0IGR1cmluZyB0 aGUgZGVsYXksIHdoZW4gd2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZhbCBpcworCQkgKiBhdmFp bGFibGUuCisJCSAqLworCQlpZiAod2FsX3JlY2VpdmVyX3N0YXR1c19pbnRlcnZhbCA+IDAKKwkJ CSYmIGRpZmZtcyA+IHdhbF9yZWNlaXZlcl9zdGF0dXNfaW50ZXJ2YWwgKiAxMDAwKQorCQl7CisJ CQlXYWl0TGF0Y2goTXlMYXRjaCwKKwkJCQkJICBXTF9MQVRDSF9TRVQgfCBXTF9USU1FT1VUIHwg V0xfRVhJVF9PTl9QTV9ERUFUSCwKKwkJCQkJICAobG9uZykgd2FsX3JlY2VpdmVyX3N0YXR1c19p bnRlcnZhbCAqIDEwMDAsCisJCQkJCSAgV0FJVF9FVkVOVF9SRUNPVkVSWV9BUFBMWV9ERUxBWSk7 CisJCQlzZW5kX2ZlZWRiYWNrKGxhc3RfcmVjZWl2ZWQsIHRydWUsIGZhbHNlLCB0cnVlKTsKKwkJ fQorCQllbHNlCisJCQlXYWl0TGF0Y2goTXlMYXRjaCwKKwkJCQkJICBXTF9MQVRDSF9TRVQgfCBX TF9USU1FT1VUIHwgV0xfRVhJVF9PTl9QTV9ERUFUSCwKKwkJCQkJICBkaWZmbXMsCisJCQkJCSAg V0FJVF9FVkVOVF9SRUNPVkVSWV9BUFBMWV9ERUxBWSk7CisJfQorfQorCiAvKgogICogSGFuZGxl IEJFR0lOIG1lc3NhZ2UuCiAgKi8KQEAgLTEwMTIsNiArMTEyOCw5IEBAIGFwcGx5X2hhbmRsZV9i ZWdpbihTdHJpbmdJbmZvIHMpCiAJbG9naWNhbHJlcF9yZWFkX2JlZ2luKHMsICZiZWdpbl9kYXRh KTsKIAlzZXRfYXBwbHlfZXJyb3JfY29udGV4dF94YWN0KGJlZ2luX2RhdGEueGlkLCBiZWdpbl9k YXRhLmZpbmFsX2xzbik7CiAKKwkvKiBTaG91bGQgd2UgZGVsYXkgdGhlIGN1cnJlbnQgdHJhbnNh Y3Rpb24/ICovCisJbWF5YmVfZGVsYXlfYXBwbHkoYmVnaW5fZGF0YS54aWQsIGJlZ2luX2RhdGEu Y29tbWl0dGltZSk7CisKIAlyZW1vdGVfZmluYWxfbHNuID0gYmVnaW5fZGF0YS5maW5hbF9sc247 CiAKIAltYXliZV9zdGFydF9za2lwcGluZ19jaGFuZ2VzKGJlZ2luX2RhdGEuZmluYWxfbHNuKTsK QEAgLTEwNjksNiArMTE4OCw5IEBAIGFwcGx5X2hhbmRsZV9iZWdpbl9wcmVwYXJlKFN0cmluZ0lu Zm8gcykKIAlsb2dpY2FscmVwX3JlYWRfYmVnaW5fcHJlcGFyZShzLCAmYmVnaW5fZGF0YSk7CiAJ c2V0X2FwcGx5X2Vycm9yX2NvbnRleHRfeGFjdChiZWdpbl9kYXRhLnhpZCwgYmVnaW5fZGF0YS5w cmVwYXJlX2xzbik7CiAKKwkvKiBTaG91bGQgd2UgZGVsYXkgdGhlIGN1cnJlbnQgcHJlcGFyZWQg dHJhbnNhY3Rpb24/ICovCisJbWF5YmVfZGVsYXlfYXBwbHkoYmVnaW5fZGF0YS54aWQsIGJlZ2lu X2RhdGEucHJlcGFyZV90aW1lKTsKKwogCXJlbW90ZV9maW5hbF9sc24gPSBiZWdpbl9kYXRhLnBy ZXBhcmVfbHNuOwogCiAJbWF5YmVfc3RhcnRfc2tpcHBpbmdfY2hhbmdlcyhiZWdpbl9kYXRhLnBy ZXBhcmVfbHNuKTsKQEAgLTEzMTYsNyArMTQzOCw4IEBAIGFwcGx5X2hhbmRsZV9zdHJlYW1fcHJl cGFyZShTdHJpbmdJbmZvIHMpCiAJCQkgKiBzcG9vbGVkIG9wZXJhdGlvbnMuCiAJCQkgKi8KIAkJ CWFwcGx5X3Nwb29sZWRfbWVzc2FnZXMoTXlMb2dpY2FsUmVwV29ya2VyLT5zdHJlYW1fZmlsZXNl dCwKLQkJCQkJCQkJICAgcHJlcGFyZV9kYXRhLnhpZCwgcHJlcGFyZV9kYXRhLnByZXBhcmVfbHNu KTsKKwkJCQkJCQkJICAgcHJlcGFyZV9kYXRhLnhpZCwgcHJlcGFyZV9kYXRhLnByZXBhcmVfbHNu LAorCQkJCQkJCQkgICBwcmVwYXJlX2RhdGEucHJlcGFyZV90aW1lKTsKIAogCQkJLyogTWFyayB0 aGUgdHJhbnNhY3Rpb24gYXMgcHJlcGFyZWQuICovCiAJCQlhcHBseV9oYW5kbGVfcHJlcGFyZV9p bnRlcm5hbCgmcHJlcGFyZV9kYXRhKTsKQEAgLTIwMTAsMTAgKzIxMzMsMTMgQEAgZW5zdXJlX2xh c3RfbWVzc2FnZShGaWxlU2V0ICpzdHJlYW1fZmlsZXNldCwgVHJhbnNhY3Rpb25JZCB4aWQsIGlu dCBmaWxlbm8sCiAKIC8qCiAgKiBDb21tb24gc3Bvb2xmaWxlIHByb2Nlc3NpbmcuCisgKgorICog VGhlIGNvbW1pdC9wcmVwYXJlIHRpbWUgZm9yIHN0cmVhbWluZyB0cmFuc2FjdGlvbiBpcyByZXF1 aXJlZCB0byBhY2hpZXZlCisgKiB0aW1lLWRlbGF5ZWQgcmVwbGljYXRpb24uCiAgKi8KIHZvaWQK IGFwcGx5X3Nwb29sZWRfbWVzc2FnZXMoRmlsZVNldCAqc3RyZWFtX2ZpbGVzZXQsIFRyYW5zYWN0 aW9uSWQgeGlkLAotCQkJCQkgICBYTG9nUmVjUHRyIGxzbikKKwkJCQkJICAgWExvZ1JlY1B0ciBs c24sIFRpbWVzdGFtcFR6IGZpbmlzaF90cykKIHsKIAlTdHJpbmdJbmZvRGF0YSBzMjsKIAlpbnQJ CQluY2hhbmdlczsKQEAgLTIwMjQsNiArMjE1MCwxMCBAQCBhcHBseV9zcG9vbGVkX21lc3NhZ2Vz KEZpbGVTZXQgKnN0cmVhbV9maWxlc2V0LCBUcmFuc2FjdGlvbklkIHhpZCwKIAlpbnQJCQlmaWxl bm87CiAJb2ZmX3QJCW9mZnNldDsKIAorCS8qIFNob3VsZCB3ZSBkZWxheSB0aGUgY3VycmVudCB0 cmFuc2FjdGlvbj8gKi8KKwlpZiAoZmluaXNoX3RzKQorCQltYXliZV9kZWxheV9hcHBseSh4aWQs IGZpbmlzaF90cyk7CisKIAlpZiAoIWFtX3BhcmFsbGVsX2FwcGx5X3dvcmtlcigpKQogCQltYXli ZV9zdGFydF9za2lwcGluZ19jaGFuZ2VzKGxzbik7CiAKQEAgLTIxNzMsNyArMjMwMyw3IEBAIGFw cGx5X2hhbmRsZV9zdHJlYW1fY29tbWl0KFN0cmluZ0luZm8gcykKIAkJCSAqIHNwb29sZWQgb3Bl cmF0aW9ucy4KIAkJCSAqLwogCQkJYXBwbHlfc3Bvb2xlZF9tZXNzYWdlcyhNeUxvZ2ljYWxSZXBX b3JrZXItPnN0cmVhbV9maWxlc2V0LCB4aWQsCi0JCQkJCQkJCSAgIGNvbW1pdF9kYXRhLmNvbW1p dF9sc24pOworCQkJCQkJCQkgICBjb21taXRfZGF0YS5jb21taXRfbHNuLCBjb21taXRfZGF0YS5j b21taXR0aW1lKTsKIAogCQkJYXBwbHlfaGFuZGxlX2NvbW1pdF9pbnRlcm5hbCgmY29tbWl0X2Rh dGEpOwogCkBAIC0zNDQ2LDcgKzM1NzYsNyBAQCBVcGRhdGVXb3JrZXJTdGF0cyhYTG9nUmVjUHRy IGxhc3RfbHNuLCBUaW1lc3RhbXBUeiBzZW5kX3RpbWUsIGJvb2wgcmVwbHkpCiAgKiBBcHBseSBt YWluIGxvb3AuCiAgKi8KIHN0YXRpYyB2b2lkCi1Mb2dpY2FsUmVwQXBwbHlMb29wKFhMb2dSZWNQ dHIgbGFzdF9yZWNlaXZlZCkKK0xvZ2ljYWxSZXBBcHBseUxvb3Aodm9pZCkKIHsKIAlUaW1lc3Rh bXBUeiBsYXN0X3JlY3ZfdGltZXN0YW1wID0gR2V0Q3VycmVudFRpbWVzdGFtcCgpOwogCWJvb2wJ CXBpbmdfc2VudCA9IGZhbHNlOwpAQCAtMzU2Nyw3ICszNjk3LDcgQEAgTG9naWNhbFJlcEFwcGx5 TG9vcChYTG9nUmVjUHRyIGxhc3RfcmVjZWl2ZWQpCiAJCQkJCQlpZiAobGFzdF9yZWNlaXZlZCA8 IGVuZF9sc24pCiAJCQkJCQkJbGFzdF9yZWNlaXZlZCA9IGVuZF9sc247CiAKLQkJCQkJCXNlbmRf ZmVlZGJhY2sobGFzdF9yZWNlaXZlZCwgcmVwbHlfcmVxdWVzdGVkLCBmYWxzZSk7CisJCQkJCQlz ZW5kX2ZlZWRiYWNrKGxhc3RfcmVjZWl2ZWQsIHJlcGx5X3JlcXVlc3RlZCwgZmFsc2UsIGZhbHNl KTsKIAkJCQkJCVVwZGF0ZVdvcmtlclN0YXRzKGxhc3RfcmVjZWl2ZWQsIHRpbWVzdGFtcCwgdHJ1 ZSk7CiAJCQkJCX0KIAkJCQkJLyogb3RoZXIgbWVzc2FnZSB0eXBlcyBhcmUgcHVycG9zZWZ1bGx5 IGlnbm9yZWQgKi8KQEAgLTM1ODAsNyArMzcxMCw3IEBAIExvZ2ljYWxSZXBBcHBseUxvb3AoWExv Z1JlY1B0ciBsYXN0X3JlY2VpdmVkKQogCQl9CiAKIAkJLyogY29uZmlybSBhbGwgd3JpdGVzIHNv IGZhciAqLwotCQlzZW5kX2ZlZWRiYWNrKGxhc3RfcmVjZWl2ZWQsIGZhbHNlLCBmYWxzZSk7CisJ CXNlbmRfZmVlZGJhY2sobGFzdF9yZWNlaXZlZCwgZmFsc2UsIGZhbHNlLCBmYWxzZSk7CiAKIAkJ aWYgKCFpbl9yZW1vdGVfdHJhbnNhY3Rpb24gJiYgIWluX3N0cmVhbWVkX3RyYW5zYWN0aW9uKQog CQl7CkBAIC0zNjc3LDcgKzM4MDcsNyBAQCBMb2dpY2FsUmVwQXBwbHlMb29wKFhMb2dSZWNQdHIg bGFzdF9yZWNlaXZlZCkKIAkJCQl9CiAJCQl9CiAKLQkJCXNlbmRfZmVlZGJhY2sobGFzdF9yZWNl aXZlZCwgcmVxdWVzdFJlcGx5LCByZXF1ZXN0UmVwbHkpOworCQkJc2VuZF9mZWVkYmFjayhsYXN0 X3JlY2VpdmVkLCByZXF1ZXN0UmVwbHksIHJlcXVlc3RSZXBseSwgZmFsc2UpOwogCiAJCQkvKgog CQkJICogRm9yY2UgcmVwb3J0aW5nIHRvIGVuc3VyZSBsb25nIGlkbGUgcGVyaW9kcyBkb24ndCBs ZWFkIHRvCkBAIC0zNzA3LDcgKzM4MzcsNyBAQCBMb2dpY2FsUmVwQXBwbHlMb29wKFhMb2dSZWNQ dHIgbGFzdF9yZWNlaXZlZCkKICAqIHRvIHNlbmQgYSByZXNwb25zZSB0byBhdm9pZCB0aW1lb3V0 cy4KICAqLwogc3RhdGljIHZvaWQKLXNlbmRfZmVlZGJhY2soWExvZ1JlY1B0ciByZWN2cG9zLCBi b29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBseSkKK3NlbmRfZmVlZGJhY2soWExvZ1JlY1B0ciBy ZWN2cG9zLCBib29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBseSwgYm9vbCBpbl9kZWxheWVkX2Fw cGx5KQogewogCXN0YXRpYyBTdHJpbmdJbmZvIHJlcGx5X21lc3NhZ2UgPSBOVUxMOwogCXN0YXRp YyBUaW1lc3RhbXBUeiBzZW5kX3RpbWUgPSAwOwpAQCAtMzczNyw4ICszODY3LDE1IEBAIHNlbmRf ZmVlZGJhY2soWExvZ1JlY1B0ciByZWN2cG9zLCBib29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBs eSkKIAkvKgogCSAqIE5vIG91dHN0YW5kaW5nIHRyYW5zYWN0aW9ucyB0byBmbHVzaCwgd2UgY2Fu IHJlcG9ydCB0aGUgbGF0ZXN0IHJlY2VpdmVkCiAJICogcG9zaXRpb24uIFRoaXMgaXMgaW1wb3J0 YW50IGZvciBzeW5jaHJvbm91cyByZXBsaWNhdGlvbi4KKwkgKgorCSAqIElmIHRoZSBzdWJzY3Jp YmVyIHNpZGUgYXBwbHkgaXMgZGVsYXllZCAoYmVjYXVzZSBvZiB0aW1lLWRlbGF5ZWQKKwkgKiBy ZXBsaWNhdGlvbikgdGhlbiBkbyBub3QgdGVsbCB0aGUgcHVibGlzaGVyIHRoYXQgdGhlIHJlY2Vp dmVkIGxhdGVzdAorCSAqIExTTiBpcyBhbHJlYWR5IGFwcGxpZWQgYW5kIGZsdXNoZWQsIG90aGVy d2lzZSwgaXQgbGVhZHMgdG8gdGhlCisJICogcHVibGlzaGVyIHNpZGUgbWFraW5nIGEgd3Jvbmcg YXNzdW1wdGlvbiBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uCisJICogcHJvZ3Jlc3MuIEluc3RlYWQs IHdlIGp1c3Qgc2VuZCBhIGZlZWRiYWNrIG1lc3NhZ2UgdG8gYXZvaWQgYSBwdWJsaXNoZXIKKwkg KiB0aW1lb3V0IGR1cmluZyB0aGUgZGVsYXkuCiAJICovCi0JaWYgKCFoYXZlX3BlbmRpbmdfdHhl cykKKwlpZiAoIWhhdmVfcGVuZGluZ190eGVzICYmICFpbl9kZWxheWVkX2FwcGx5KQogCQlmbHVz aHBvcyA9IHdyaXRlcG9zID0gcmVjdnBvczsKIAogCWlmICh3cml0ZXBvcyA8IGxhc3Rfd3JpdGVw b3MpCkBAIC0zNzc1LDExICszOTEyLDEyIEBAIHNlbmRfZmVlZGJhY2soWExvZ1JlY1B0ciByZWN2 cG9zLCBib29sIGZvcmNlLCBib29sIHJlcXVlc3RSZXBseSkKIAlwcV9zZW5kaW50NjQocmVwbHlf bWVzc2FnZSwgbm93KTsJLyogc2VuZFRpbWUgKi8KIAlwcV9zZW5kYnl0ZShyZXBseV9tZXNzYWdl LCByZXF1ZXN0UmVwbHkpOwkvKiByZXBseVJlcXVlc3RlZCAqLwogCi0JZWxvZyhERUJVRzIsICJz ZW5kaW5nIGZlZWRiYWNrIChmb3JjZSAlZCkgdG8gcmVjdiAlWC8lWCwgd3JpdGUgJVgvJVgsIGZs dXNoICVYLyVYIiwKKwllbG9nKERFQlVHMiwgInNlbmRpbmcgZmVlZGJhY2sgKGZvcmNlICVkKSB0 byByZWN2ICVYLyVYLCB3cml0ZSAlWC8lWCwgZmx1c2ggJVgvJVggaW4tZGVsYXllZDogJWQiLAog CQkgZm9yY2UsCiAJCSBMU05fRk9STUFUX0FSR1MocmVjdnBvcyksCiAJCSBMU05fRk9STUFUX0FS R1Mod3JpdGVwb3MpLAotCQkgTFNOX0ZPUk1BVF9BUkdTKGZsdXNocG9zKSk7CisJCSBMU05fRk9S TUFUX0FSR1MoZmx1c2hwb3MpLAorCQkgaW5fZGVsYXllZF9hcHBseSk7CiAKIAl3YWxyY3Zfc2Vu ZChMb2dSZXBXb3JrZXJXYWxSY3ZDb25uLAogCQkJCXJlcGx5X21lc3NhZ2UtPmRhdGEsIHJlcGx5 X21lc3NhZ2UtPmxlbik7CkBAIC00MzU0LDExICs0NDkyLDExIEBAIHN0YXJ0X3RhYmxlX3N5bmMo WExvZ1JlY1B0ciAqb3JpZ2luX3N0YXJ0cG9zLCBjaGFyICoqbXlzbG90bmFtZSkKICAqIG9mIHN5 c3RlbSByZXNvdXJjZSBlcnJvciBhbmQgYXJlIG5vdCByZXBlYXRhYmxlLgogICovCiBzdGF0aWMg dm9pZAotc3RhcnRfYXBwbHkoWExvZ1JlY1B0ciBvcmlnaW5fc3RhcnRwb3MpCitzdGFydF9hcHBs eSh2b2lkKQogewogCVBHX1RSWSgpOwogCXsKLQkJTG9naWNhbFJlcEFwcGx5TG9vcChvcmlnaW5f c3RhcnRwb3MpOworCQlMb2dpY2FsUmVwQXBwbHlMb29wKCk7CiAJfQogCVBHX0NBVENIKCk7CiAJ ewpAQCAtNDY0NSw3ICs0NzgzLDggQEAgQXBwbHlXb3JrZXJNYWluKERhdHVtIG1haW5fYXJnKQog CX0KIAogCS8qIFJ1biB0aGUgbWFpbiBsb29wLiAqLwotCXN0YXJ0X2FwcGx5KG9yaWdpbl9zdGFy dHBvcyk7CisJbGFzdF9yZWNlaXZlZCA9IG9yaWdpbl9zdGFydHBvczsKKwlzdGFydF9hcHBseSgp OwogCiAJcHJvY19leGl0KDApOwogfQpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1 bXAuYyBiL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMKaW5kZXggNTI3Yzc2NTFhYi4uYzBmNjlj YjQzYiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYworKysgYi9zcmMvYmlu L3BnX2R1bXAvcGdfZHVtcC5jCkBAIC00NDk0LDYgKzQ0OTQsNyBAQCBnZXRTdWJzY3JpcHRpb25z KEFyY2hpdmUgKmZvdXQpCiAJaW50CQkJaV9zdWJzeW5jY29tbWl0OwogCWludAkJCWlfc3VicHVi bGljYXRpb25zOwogCWludAkJCWlfc3ViYmluYXJ5OworCWludAkJCWlfc3VibWluYXBwbHlkZWxh eTsKIAlpbnQJCQlpLAogCQkJCW50dXBzOwogCkBAIC00NTQ2LDkgKzQ1NDcsMTMgQEAgZ2V0U3Vi c2NyaXB0aW9ucyhBcmNoaXZlICpmb3V0KQogCQkJCQkJICBMT0dJQ0FMUkVQX1RXT1BIQVNFX1NU QVRFX0RJU0FCTEVEKTsKIAogCWlmIChmb3V0LT5yZW1vdGVWZXJzaW9uID49IDE2MDAwMCkKLQkJ YXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksICIgcy5zdWJvcmlnaW5cbiIpOworCQlhcHBlbmRQ UUV4cEJ1ZmZlclN0cihxdWVyeSwKKwkJCQkJCQkgIiBzLnN1Ym9yaWdpbixcbiIKKwkJCQkJCQkg IiBzLnN1Ym1pbmFwcGx5ZGVsYXlcbiIpOwogCWVsc2UKLQkJYXBwZW5kUFFFeHBCdWZmZXIocXVl cnksICIgJyVzJyBBUyBzdWJvcmlnaW5cbiIsIExPR0lDQUxSRVBfT1JJR0lOX0FOWSk7CisJCWFw cGVuZFBRRXhwQnVmZmVyKHF1ZXJ5LCAiICclcycgQVMgc3Vib3JpZ2luLFxuIgorCQkJCQkJICAi IDAgQVMgc3VibWluYXBwbHlkZWxheVxuIiwKKwkJCQkJCSAgTE9HSUNBTFJFUF9PUklHSU5fQU5Z KTsKIAogCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LAogCQkJCQkJICJGUk9NIHBnX3N1YnNj cmlwdGlvbiBzXG4iCkBAIC00NTc2LDYgKzQ1ODEsNyBAQCBnZXRTdWJzY3JpcHRpb25zKEFyY2hp dmUgKmZvdXQpCiAJaV9zdWJ0d29waGFzZXN0YXRlID0gUFFmbnVtYmVyKHJlcywgInN1YnR3b3Bo YXNlc3RhdGUiKTsKIAlpX3N1YmRpc2FibGVvbmVyciA9IFBRZm51bWJlcihyZXMsICJzdWJkaXNh Ymxlb25lcnIiKTsKIAlpX3N1Ym9yaWdpbiA9IFBRZm51bWJlcihyZXMsICJzdWJvcmlnaW4iKTsK KwlpX3N1Ym1pbmFwcGx5ZGVsYXkgPSBQUWZudW1iZXIocmVzLCAic3VibWluYXBwbHlkZWxheSIp OwogCiAJc3ViaW5mbyA9IHBnX21hbGxvYyhudHVwcyAqIHNpemVvZihTdWJzY3JpcHRpb25JbmZv KSk7CiAKQEAgLTQ2MDYsNiArNDYxMiw4IEBAIGdldFN1YnNjcmlwdGlvbnMoQXJjaGl2ZSAqZm91 dCkKIAkJc3ViaW5mb1tpXS5zdWJkaXNhYmxlb25lcnIgPQogCQkJcGdfc3RyZHVwKFBRZ2V0dmFs dWUocmVzLCBpLCBpX3N1YmRpc2FibGVvbmVycikpOwogCQlzdWJpbmZvW2ldLnN1Ym9yaWdpbiA9 IHBnX3N0cmR1cChQUWdldHZhbHVlKHJlcywgaSwgaV9zdWJvcmlnaW4pKTsKKwkJc3ViaW5mb1tp XS5zdWJtaW5hcHBseWRlbGF5ID0KKwkJCXN0cnRvaTY0KFBRZ2V0dmFsdWUocmVzLCBpLCBpX3N1 Ym1pbmFwcGx5ZGVsYXkpLCBOVUxMLCAxMCk7CiAKIAkJLyogRGVjaWRlIHdoZXRoZXIgd2Ugd2Fu dCB0byBkdW1wIGl0ICovCiAJCXNlbGVjdER1bXBhYmxlT2JqZWN0KCYoc3ViaW5mb1tpXS5kb2Jq KSwgZm91dCk7CkBAIC00Njg3LDYgKzQ2OTUsOSBAQCBkdW1wU3Vic2NyaXB0aW9uKEFyY2hpdmUg KmZvdXQsIGNvbnN0IFN1YnNjcmlwdGlvbkluZm8gKnN1YmluZm8pCiAJaWYgKHN0cmNtcChzdWJp bmZvLT5zdWJzeW5jY29tbWl0LCAib2ZmIikgIT0gMCkKIAkJYXBwZW5kUFFFeHBCdWZmZXIocXVl cnksICIsIHN5bmNocm9ub3VzX2NvbW1pdCA9ICVzIiwgZm10SWQoc3ViaW5mby0+c3Vic3luY2Nv bW1pdCkpOwogCisJaWYgKHN1YmluZm8tPnN1Ym1pbmFwcGx5ZGVsYXkgPiAwKQorCQlhcHBlbmRQ UUV4cEJ1ZmZlcihxdWVyeSwgIiwgbWluX2FwcGx5X2RlbGF5ID0gJyIgSU5UNjRfRk9STUFUICIg bXMnIiwgc3ViaW5mby0+c3VibWluYXBwbHlkZWxheSk7CisKIAlhcHBlbmRQUUV4cEJ1ZmZlclN0 cihxdWVyeSwgIik7XG4iKTsKIAogCWlmIChzdWJpbmZvLT5kb2JqLmR1bXAgJiBEVU1QX0NPTVBP TkVOVF9ERUZJTklUSU9OKQpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaCBi L3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmgKaW5kZXggZTdjYmQ4ZDdlZC4uZTI1MjVmNzBhYiAx MDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaAorKysgYi9zcmMvYmluL3BnX2R1 bXAvcGdfZHVtcC5oCkBAIC02NjEsNiArNjYxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX1N1YnNjcmlw dGlvbkluZm8KIAljaGFyCSAgICpzdWJkaXNhYmxlb25lcnI7CiAJY2hhcgkgICAqc3Vib3JpZ2lu OwogCWNoYXIJICAgKnN1YnN5bmNjb21taXQ7CisJaW50NjQJCXN1Ym1pbmFwcGx5ZGVsYXk7CiAJ Y2hhcgkgICAqc3VicHVibGljYXRpb25zOwogfSBTdWJzY3JpcHRpb25JbmZvOwogCmRpZmYgLS1n aXQgYS9zcmMvYmluL3BzcWwvZGVzY3JpYmUuYyBiL3NyYy9iaW4vcHNxbC9kZXNjcmliZS5jCmlu ZGV4IGM4YTBiYjdiM2EuLjhhMjcwNjNiZWQgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcHNxbC9kZXNj cmliZS5jCisrKyBiL3NyYy9iaW4vcHNxbC9kZXNjcmliZS5jCkBAIC02NDcyLDcgKzY0NzIsNyBA QCBkZXNjcmliZVN1YnNjcmlwdGlvbnMoY29uc3QgY2hhciAqcGF0dGVybiwgYm9vbCB2ZXJib3Nl KQogCVBHcmVzdWx0ICAgKnJlczsKIAlwcmludFF1ZXJ5T3B0IG15b3B0ID0gcHNldC5wb3B0Owog CXN0YXRpYyBjb25zdCBib29sIHRyYW5zbGF0ZV9jb2x1bW5zW10gPSB7ZmFsc2UsIGZhbHNlLCBm YWxzZSwgZmFsc2UsCi0JZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwg ZmFsc2UsIGZhbHNlfTsKKwlmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNl LCBmYWxzZSwgZmFsc2UsIGZhbHNlfTsKIAogCWlmIChwc2V0LnN2ZXJzaW9uIDwgMTAwMDAwKQog CXsKQEAgLTY1MjcsMTAgKzY1MjcsMTMgQEAgZGVzY3JpYmVTdWJzY3JpcHRpb25zKGNvbnN0IGNo YXIgKnBhdHRlcm4sIGJvb2wgdmVyYm9zZSkKIAkJCQkJCQkgIGdldHRleHRfbm9vcCgiVHdvLXBo YXNlIGNvbW1pdCIpLAogCQkJCQkJCSAgZ2V0dGV4dF9ub29wKCJEaXNhYmxlIG9uIGVycm9yIikp OwogCisJCS8qIE9yaWdpbiBhbmQgbWluX2FwcGx5X2RlbGF5IGFyZSBvbmx5IHN1cHBvcnRlZCBp biB2MTYgYW5kIGhpZ2hlciAqLwogCQlpZiAocHNldC5zdmVyc2lvbiA+PSAxNjAwMDApCiAJCQlh cHBlbmRQUUV4cEJ1ZmZlcigmYnVmLAotCQkJCQkJCSAgIiwgc3Vib3JpZ2luIEFTIFwiJXNcIlxu IiwKLQkJCQkJCQkgIGdldHRleHRfbm9vcCgiT3JpZ2luIikpOworCQkJCQkJCSAgIiwgc3Vib3Jp Z2luIEFTIFwiJXNcIlxuIgorCQkJCQkJCSAgIiwgc3VibWluYXBwbHlkZWxheSBBUyBcIiVzXCJc biIsCisJCQkJCQkJICBnZXR0ZXh0X25vb3AoIk9yaWdpbiIpLAorCQkJCQkJCSAgZ2V0dGV4dF9u b29wKCJNaW4gYXBwbHkgZGVsYXkgKG1zKSIpKTsKIAogCQlhcHBlbmRQUUV4cEJ1ZmZlcigmYnVm LAogCQkJCQkJICAiLCAgc3Vic3luY2NvbW1pdCBBUyBcIiVzXCJcbiIKZGlmZiAtLWdpdCBhL3Ny Yy9iaW4vcHNxbC90YWItY29tcGxldGUuYyBiL3NyYy9iaW4vcHNxbC90YWItY29tcGxldGUuYwpp bmRleCA1ZTE4ODJlYWVhLi5lOGI5YTQzYTQ3IDEwMDY0NAotLS0gYS9zcmMvYmluL3BzcWwvdGFi LWNvbXBsZXRlLmMKKysrIGIvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5jCkBAIC0xOTI1LDcg KzE5MjUsNyBAQCBwc3FsX2NvbXBsZXRpb24oY29uc3QgY2hhciAqdGV4dCwgaW50IHN0YXJ0LCBp bnQgZW5kKQogCQlDT01QTEVURV9XSVRIKCIoIiwgIlBVQkxJQ0FUSU9OIik7CiAJLyogQUxURVIg U1VCU0NSSVBUSU9OIDxuYW1lPiBTRVQgKCAqLwogCWVsc2UgaWYgKEhlYWRNYXRjaGVzKCJBTFRF UiIsICJTVUJTQ1JJUFRJT04iLCBNYXRjaEFueSkgJiYgVGFpbE1hdGNoZXMoIlNFVCIsICIoIikp Ci0JCUNPTVBMRVRFX1dJVEgoImJpbmFyeSIsICJkaXNhYmxlX29uX2Vycm9yIiwgIm9yaWdpbiIs ICJzbG90X25hbWUiLAorCQlDT01QTEVURV9XSVRIKCJiaW5hcnkiLCAiZGlzYWJsZV9vbl9lcnJv ciIsICJtaW5fYXBwbHlfZGVsYXkiLCAib3JpZ2luIiwgInNsb3RfbmFtZSIsCiAJCQkJCSAgInN0 cmVhbWluZyIsICJzeW5jaHJvbm91c19jb21taXQiKTsKIAkvKiBBTFRFUiBTVUJTQ1JJUFRJT04g PG5hbWU+IFNLSVAgKCAqLwogCWVsc2UgaWYgKEhlYWRNYXRjaGVzKCJBTFRFUiIsICJTVUJTQ1JJ UFRJT04iLCBNYXRjaEFueSkgJiYgVGFpbE1hdGNoZXMoIlNLSVAiLCAiKCIpKQpAQCAtMzI2OCw3 ICszMjY4LDcgQEAgcHNxbF9jb21wbGV0aW9uKGNvbnN0IGNoYXIgKnRleHQsIGludCBzdGFydCwg aW50IGVuZCkKIAkvKiBDb21wbGV0ZSAiQ1JFQVRFIFNVQlNDUklQVElPTiA8bmFtZT4gLi4uICBX SVRIICggPG9wdD4iICovCiAJZWxzZSBpZiAoSGVhZE1hdGNoZXMoIkNSRUFURSIsICJTVUJTQ1JJ UFRJT04iKSAmJiBUYWlsTWF0Y2hlcygiV0lUSCIsICIoIikpCiAJCUNPTVBMRVRFX1dJVEgoImJp bmFyeSIsICJjb25uZWN0IiwgImNvcHlfZGF0YSIsICJjcmVhdGVfc2xvdCIsCi0JCQkJCSAgImRp c2FibGVfb25fZXJyb3IiLCAiZW5hYmxlZCIsICJvcmlnaW4iLCAic2xvdF9uYW1lIiwKKwkJCQkJ ICAiZGlzYWJsZV9vbl9lcnJvciIsICJlbmFibGVkIiwgIm1pbl9hcHBseV9kZWxheSIsICJvcmln aW4iLCAic2xvdF9uYW1lIiwKIAkJCQkJICAic3RyZWFtaW5nIiwgInN5bmNocm9ub3VzX2NvbW1p dCIsICJ0d29fcGhhc2UiKTsKIAogLyogQ1JFQVRFIFRSSUdHRVIgLS0tIGlzIGFsbG93ZWQgaW5z aWRlIENSRUFURSBTQ0hFTUEsIHNvIHVzZSBUYWlsTWF0Y2hlcyAqLwpkaWZmIC0tZ2l0IGEvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uaCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cv cGdfc3Vic2NyaXB0aW9uLmgKaW5kZXggYjBmMmExNzA1ZC4uZTA2ZjM1YzAzNyAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19zdWJzY3JpcHRpb24uaAorKysgYi9zcmMvaW5jbHVk ZS9jYXRhbG9nL3BnX3N1YnNjcmlwdGlvbi5oCkBAIC03MCw2ICs3MCw4IEBAIENBVEFMT0cocGdf c3Vic2NyaXB0aW9uLDYxMDAsU3Vic2NyaXB0aW9uUmVsYXRpb25JZCkgQktJX1NIQVJFRF9SRUxB VElPTiBCS0lfUk9XCiAJWExvZ1JlY1B0cglzdWJza2lwbHNuOwkJLyogQWxsIGNoYW5nZXMgZmlu aXNoZWQgYXQgdGhpcyBMU04gYXJlCiAJCQkJCQkJCSAqIHNraXBwZWQgKi8KIAorCWludDY0CQlz dWJtaW5hcHBseWRlbGF5OwkvKiBSZXBsaWNhdGlvbiBhcHBseSBkZWxheSAobXMpICovCisKIAlO YW1lRGF0YQlzdWJuYW1lOwkJLyogTmFtZSBvZiB0aGUgc3Vic2NyaXB0aW9uICovCiAKIAlPaWQJ CQlzdWJvd25lciBCS0lfTE9PS1VQKHBnX2F1dGhpZCk7IC8qIE93bmVyIG9mIHRoZSBzdWJzY3Jp cHRpb24gKi8KQEAgLTEyMCw2ICsxMjIsNyBAQCB0eXBlZGVmIHN0cnVjdCBTdWJzY3JpcHRpb24K IAkJCQkJCQkJICogaW4gKi8KIAlYTG9nUmVjUHRyCXNraXBsc247CQkvKiBBbGwgY2hhbmdlcyBm aW5pc2hlZCBhdCB0aGlzIExTTiBhcmUKIAkJCQkJCQkJICogc2tpcHBlZCAqLworCWludDY0CQlt aW5hcHBseWRlbGF5OwkvKiBSZXBsaWNhdGlvbiBhcHBseSBkZWxheSAobXMpICovCiAJY2hhcgkg ICAqbmFtZTsJCQkvKiBOYW1lIG9mIHRoZSBzdWJzY3JpcHRpb24gKi8KIAlPaWQJCQlvd25lcjsJ CQkvKiBPaWQgb2YgdGhlIHN1YnNjcmlwdGlvbiBvd25lciAqLwogCWJvb2wJCWVuYWJsZWQ7CQkv KiBJbmRpY2F0ZXMgaWYgdGhlIHN1YnNjcmlwdGlvbiBpcyBlbmFibGVkICovCmRpZmYgLS1naXQg YS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93b3JrZXJfaW50ZXJuYWwuaCBiL3NyYy9pbmNsdWRl L3JlcGxpY2F0aW9uL3dvcmtlcl9pbnRlcm5hbC5oCmluZGV4IGRjODdhNGVkZDEuLjNkYzA5ZDFh NGMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dvcmtlcl9pbnRlcm5hbC5o CisrKyBiL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dvcmtlcl9pbnRlcm5hbC5oCkBAIC0yNTUs NyArMjU1LDcgQEAgZXh0ZXJuIHZvaWQgc3RyZWFtX3N0b3BfaW50ZXJuYWwoVHJhbnNhY3Rpb25J ZCB4aWQpOwogCiAvKiBDb21tb24gc3RyZWFtaW5nIGZ1bmN0aW9uIHRvIGFwcGx5IGFsbCB0aGUg c3Bvb2xlZCBtZXNzYWdlcyAqLwogZXh0ZXJuIHZvaWQgYXBwbHlfc3Bvb2xlZF9tZXNzYWdlcyhG aWxlU2V0ICpzdHJlYW1fZmlsZXNldCwgVHJhbnNhY3Rpb25JZCB4aWQsCi0JCQkJCQkJCSAgIFhM b2dSZWNQdHIgbHNuKTsKKwkJCQkJCQkJICAgWExvZ1JlY1B0ciBsc24sIFRpbWVzdGFtcFR6IGZp bmlzaF90cyk7CiAKIGV4dGVybiB2b2lkIGFwcGx5X2Rpc3BhdGNoKFN0cmluZ0luZm8gcyk7CiAK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dCBi L3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dAppbmRleCA0ZTVjYjBk M2E5Li4xMjMwYmNiMDk2IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3N1 YnNjcmlwdGlvbi5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zdWJzY3JpcHRp b24ub3V0CkBAIC0xMTQsMTggKzExNCwxOCBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3Nf dGVzdHN1YjQgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVQogV0FS TklORzogIHN1YnNjcmlwdGlvbiB3YXMgY3JlYXRlZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQKIEhJ TlQ6ICBUbyBpbml0aWF0ZSByZXBsaWNhdGlvbiwgeW91IG11c3QgbWFudWFsbHkgY3JlYXRlIHRo ZSByZXBsaWNhdGlvbiBzbG90LCBlbmFibGUgdGhlIHN1YnNjcmlwdGlvbiwgYW5kIHJlZnJlc2gg dGhlIHN1YnNjcmlwdGlvbi4KIFxkUnMrIHJlZ3Jlc3NfdGVzdHN1YjQKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICAgTmFtZSAgICAg ICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBC aW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8 IE9yaWdpbiB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAg ICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rl c3RzdWI0IHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0g ICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAg ICAgIHwgbm9uZSAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25v dGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3du ZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5n IHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBNaW4gYXBw bHkgZGVsYXkgKG1zKSB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAg ICAgICAgICB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YjQgfCByZWdyZXNzX3N1YnNjcmlwdGlv bl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAg ICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBub25lICAgfCAgICAgICAgICAgICAg ICAgICAgMCB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlz dCB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViNCBT RVQgKG9yaWdpbiA9IGFueSk7CiBcZFJzKyByZWdyZXNzX3Rlc3RzdWI0Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAgIE5hbWUgICAg ICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwg QmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3Ig fCBPcmlnaW4gfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAg ICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190 ZXN0c3ViNCB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9 ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAg ICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNu b3RleGlzdCB8IDAvMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93 bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWlu ZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgTWluIGFw cGx5IGRlbGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAg ICAgICAgICAgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWI0IHwgcmVncmVzc19zdWJzY3JpcHRp b25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQg ICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgICAgICAgICAgICAg ICAgICAgIDAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhp c3QgfCAwLzAKICgxIHJvdykKIAogRFJPUCBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViMzsK QEAgLTEzNSwxMCArMTM1LDEwIEBAIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIg Q09OTkVDVElPTiAnZm9vYmFyJzsKIEVSUk9SOiAgaW52YWxpZCBjb25uZWN0aW9uIHN0cmluZyBz eW50YXg6IG1pc3NpbmcgIj0iIGFmdGVyICJmb29iYXIiIGluIGNvbm5lY3Rpb24gaW5mbyBzdHJp bmcKIAogXGRScysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJz Y3JpcHRpb25zCi0gICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8 IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBj b21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgU3luY2hyb25vdXMgY29tbWl0IHwg ICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0t LS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNl ciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAg ICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgb2ZmICAgICAgICAgICAgICAg IHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1l ICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlv biB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVy cm9yIHwgT3JpZ2luIHwgTWluIGFwcGx5IGRlbGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQg fCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSst LS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8 IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAg ICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFu eSAgICB8ICAgICAgICAgICAgICAgICAgICAwIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1l PXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCiAoMSByb3cpCiAKIEFMVEVSIFNVQlNDUklQVElP TiByZWdyZXNzX3Rlc3RzdWIgU0VUIFBVQkxJQ0FUSU9OIHRlc3RwdWIyLCB0ZXN0cHViMyBXSVRI IChyZWZyZXNoID0gZmFsc2UpOwpAQCAtMTU1LDEwICsxNTUsMTAgQEAgRVJST1I6ICB1bnJlY29n bml6ZWQgc3Vic2NyaXB0aW9uIHBhcmFtZXRlcjogImNyZWF0ZV9zbG90IgogLS0gb2sKIEFMVEVS IFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0tJUCAobHNuID0gJzAvMTIzNDUnKTsKIFxk UnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlw dGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5h YmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhh c2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFN5bmNocm9ub3VzIGNvbW1p dCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1 YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViMix0ZXN0cHViM30gfCBmICAgICAg fCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAg ICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdDIgfCAw LzEyMzQ1CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM aXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIg ICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5hcnkgfCBTdHJl YW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IE1p biBhcHBseSBkZWxheSAobXMpIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgIENvbm5p bmZvICAgICAgICAgICB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVz c19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1YjIsdGVzdHB1YjN9IHwgZiAg ICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBh bnkgICAgfCAgICAgICAgICAgICAgICAgICAgMCB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFt ZT1yZWdyZXNzX2RvZXNub3RleGlzdDIgfCAwLzEyMzQ1CiAoMSByb3cpCiAKIC0tIG9rIC0gd2l0 aCBsc24gPSBOT05FCkBAIC0xNjcsMTAgKzE2NywxMCBAQCBBTFRFUiBTVUJTQ1JJUFRJT04gcmVn cmVzc190ZXN0c3ViIFNLSVAgKGxzbiA9IE5PTkUpOwogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jl c3NfdGVzdHN1YiBTS0lQIChsc24gPSAnMC8wJyk7CiBFUlJPUjogIGludmFsaWQgV0FMIGxvY2F0 aW9uIChMU04pOiAwLzAKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3du ZXIgICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5hcnkgfCBT dHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8 IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lw IExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rl c3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViMix0 ZXN0cHViM30gfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAg ICAgICAgICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNz X2RvZXNub3RleGlzdDIgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAgTmFtZSAgICAgICB8ICAg ICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgICAgIFB1YmxpY2F0aW9uICAgICB8 IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9y IHwgT3JpZ2luIHwgTWluIGFwcGx5IGRlbGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQgfCAg ICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rl c3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHViMix0 ZXN0cHViM30gfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAg ICAgICAgICAgICB8IGFueSAgICB8ICAgICAgICAgICAgICAgICAgICAwIHwgb2ZmICAgICAgICAg ICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0MiB8IDAvMAogKDEgcm93KQogCiBC RUdJTjsKQEAgLTIwMiwxMCArMjAyLDEwIEBAIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rl c3RzdWJfZm9vIFNFVCAoc3luY2hyb25vdXNfY29tbWl0ID0gZm9vYmFyKTsKIEVSUk9SOiAgaW52 YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICJzeW5jaHJvbm91c19jb21taXQiOiAiZm9vYmFyIgog SElOVDogIEF2YWlsYWJsZSB2YWx1ZXM6IGxvY2FsLCByZW1vdGVfd3JpdGUsIHJlbW90ZV9hcHBs eSwgb24sIG9mZi4KIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAgICBOYW1lICAgICAgICAgfCAgICAgICAgICAg T3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8ICAgICBQdWJsaWNhdGlvbiAgICAgfCBCaW5hcnkg fCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdp biB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBT a2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVn cmVzc190ZXN0c3ViX2ZvbyB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwg e3Rlc3RwdWIyLHRlc3RwdWIzfSB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAg ICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgbG9jYWwgICAgICAgICAgICAgIHwgZGJu YW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0MiB8IDAvMAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgICAg TmFtZSAgICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCAgICAg UHVibGljYXRpb24gICAgIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8 IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBNaW4gYXBwbHkgZGVsYXkgKG1zKSB8IFN5bmNo cm9ub3VzIGNvbW1pdCB8ICAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAK Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWJfZm9vIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNl ciB8IGYgICAgICAgfCB7dGVzdHB1YjIsdGVzdHB1YjN9IHwgZiAgICAgIHwgb2ZmICAgICAgIHwg ZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCAgICAgICAgICAg ICAgICAgICAgMCB8IGxvY2FsICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3Rl eGlzdDIgfCAwLzAKICgxIHJvdykKIAogLS0gcmVuYW1lIGJhY2sgdG8ga2VlcCB0aGUgcmVzdCBz aW1wbGUKQEAgLTIzOSwxOSArMjM5LDE5IEBAIENSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190 ZXN0c3ViIENPTk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCCiBXQVJO SU5HOiAgc3Vic2NyaXB0aW9uIHdhcyBjcmVhdGVkLCBidXQgaXMgbm90IGNvbm5lY3RlZAogSElO VDogIFRvIGluaXRpYXRlIHJlcGxpY2F0aW9uLCB5b3UgbXVzdCBtYW51YWxseSBjcmVhdGUgdGhl IHJlcGxpY2F0aW9uIHNsb3QsIGVuYWJsZSB0aGUgc3Vic2NyaXB0aW9uLCBhbmQgcmVmcmVzaCB0 aGUgc3Vic2NyaXB0aW9uLgogXGRScysKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVy ICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8 IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgU3luY2hyb25v dXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCi0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJz Y3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IHQgICAgICB8IG9mZiAgICAg ICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgb2ZmICAg ICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25z CisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQg fCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBE aXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgTWluIGFwcGx5IGRlbGF5IChtcykgfCBTeW5jaHJv bm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKKy0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jl c3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3Rw dWJ9ICAgfCB0ICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAg ICAgICAgICB8IGFueSAgICB8ICAgICAgICAgICAgICAgICAgICAwIHwgb2ZmICAgICAgICAgICAg ICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8wCiAoMSByb3cpCiAKIEFMVEVS IFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChiaW5hcnkgPSBmYWxzZSk7CiBBTFRF UiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gTk9ORSk7CiBc ZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlv bnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxl ZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8 IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAg ICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSst LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAg ICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAgICAgICAg ICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5h bWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAg fCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmlu YXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBP cmlnaW4gfCBNaW4gYXBwbHkgZGVsYXkgKG1zKSB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAg ICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVz c19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9m ZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwg ICAgICAgICAgICAgICAgICAgIDAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVz c19kb2Vzbm90ZXhpc3QgfCAwLzAKICgxIHJvdykKIAogRFJPUCBTVUJTQ1JJUFRJT04gcmVncmVz c190ZXN0c3ViOwpAQCAtMjYzLDI3ICsyNjMsMjcgQEAgQ1JFQVRFIFNVQlNDUklQVElPTiByZWdy ZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUIK IFdBUk5JTkc6ICBzdWJzY3JpcHRpb24gd2FzIGNyZWF0ZWQsIGJ1dCBpcyBub3QgY29ubmVjdGVk CiBISU5UOiAgVG8gaW5pdGlhdGUgcmVwbGljYXRpb24sIHlvdSBtdXN0IG1hbnVhbGx5IGNyZWF0 ZSB0aGUgcmVwbGljYXRpb24gc2xvdCwgZW5hYmxlIHRoZSBzdWJzY3JpcHRpb24sIGFuZCByZWZy ZXNoIHRoZSBzdWJzY3JpcHRpb24uCiBcZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAg T3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFt aW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBTeW5j aHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAK LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0r LS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNz X3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb24g ICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCBv ZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlw dGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5h YmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1p dCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBNaW4gYXBwbHkgZGVsYXkgKG1zKSB8IFN5 bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNO IAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisg cmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7 dGVzdHB1Yn0gICB8IGYgICAgICB8IG9uICAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAg ICAgICAgICAgICAgIHwgYW55ICAgIHwgICAgICAgICAgICAgICAgICAgIDAgfCBvZmYgICAgICAg ICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKICgxIHJvdykKIAog QUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHN0cmVhbWluZyA9IHBhcmFs bGVsKTsKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vi c2NyaXB0aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAg fCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2Ug Y29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFN5bmNocm9ub3VzIGNvbW1pdCB8 ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3Vz ZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBwYXJhbGxlbCAgfCBkICAgICAg ICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAgICAg ICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAgTmFt ZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRp b24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBl cnJvciB8IE9yaWdpbiB8IE1pbiBhcHBseSBkZWxheSAobXMpIHwgU3luY2hyb25vdXMgY29tbWl0 IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIg fCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAg ICAgIHwgcGFyYWxsZWwgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBh bnkgICAgfCAgICAgICAgICAgICAgICAgICAgMCB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFt ZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJTQ1JJUFRJ T04gcmVncmVzc190ZXN0c3ViIFNFVCAoc3RyZWFtaW5nID0gZmFsc2UpOwogQUxURVIgU1VCU0NS SVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHNsb3RfbmFtZSA9IE5PTkUpOwogXGRScysKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAg ICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJs aWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxl IG9uIGVycm9yIHwgT3JpZ2luIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmlu Zm8gICAgICAgICAgIHwgU2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0g cmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7 dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAg ICAgICAgICAgICAgIHwgYW55ICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jl c3NfZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAg ICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0 cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwg TWluIGFwcGx5IGRlbGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25u aW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2Ny aXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAg fCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8ICAgICAgICAg ICAgICAgICAgICAwIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25v dGV4aXN0IHwgMC8wCiAoMSByb3cpCiAKIC0tIGZhaWwgLSBwdWJsaWNhdGlvbiBhbHJlYWR5IGV4 aXN0cwpAQCAtMjk4LDEwICsyOTgsMTAgQEAgQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVz dHN1YiBBREQgUFVCTElDQVRJT04gdGVzdHB1YjEsIHRlc3RwdWIyIFdJVEggKHJlZnIKIEFMVEVS IFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgQUREIFBVQkxJQ0FUSU9OIHRlc3RwdWIxLCB0 ZXN0cHViMiBXSVRIIChyZWZyZXNoID0gZmFsc2UpOwogRVJST1I6ICBwdWJsaWNhdGlvbiAidGVz dHB1YjEiIGlzIGFscmVhZHkgaW4gc3Vic2NyaXB0aW9uICJyZWdyZXNzX3Rlc3RzdWIiCiBcZFJz KwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2Ny aXB0aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBF bmFibGVkIHwgICAgICAgICBQdWJsaWNhdGlvbiAgICAgICAgIHwgQmluYXJ5IHwgU3RyZWFtaW5n IHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBTeW5jaHJv bm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVncmVzc190ZXN0 c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yix0ZXN0 cHViMSx0ZXN0cHViMn0gfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAgICAgIHwg ZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1y ZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAg ICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCAgICAgICAgIFB1Ymxp Y2F0aW9uICAgICAgICAgfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwg RGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IE1pbiBhcHBseSBkZWxheSAobXMpIHwgU3luY2hy b25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCist LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8 IGYgICAgICAgfCB7dGVzdHB1Yix0ZXN0cHViMSx0ZXN0cHViMn0gfCBmICAgICAgfCBvZmYgICAg ICAgfCBkICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8ICAgICAg ICAgICAgICAgICAgICAwIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9l c25vdGV4aXN0IHwgMC8wCiAoMSByb3cpCiAKIC0tIGZhaWwgLSBwdWJsaWNhdGlvbiB1c2VkIG1v cmUgdGhhbiBvbmNlCkBAIC0zMTYsMTAgKzMxNiwxMCBAQCBFUlJPUjogIHB1YmxpY2F0aW9uICJ0 ZXN0cHViMyIgaXMgbm90IGluIHN1YnNjcmlwdGlvbiAicmVncmVzc190ZXN0c3ViIgogLS0gb2sg LSBkZWxldGUgcHVibGljYXRpb25zCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3Vi IERST1AgUFVCTElDQVRJT04gdGVzdHB1YjEsIHRlc3RwdWIyIFdJVEggKHJlZnJlc2ggPSBmYWxz ZSk7CiBcZFJzKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNj cmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwg RW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNv bW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBTeW5jaHJvbm91cyBjb21taXQgfCAg ICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lwIExTTiAKLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2Vy IHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwgb2ZmICAgICAgIHwgZCAgICAgICAg ICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAgfCBvZmYgICAgICAgICAgICAgICAg fCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUg ICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9u IHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJy b3IgfCBPcmlnaW4gfCBNaW4gYXBwbHkgZGVsYXkgKG1zKSB8IFN5bmNocm9ub3VzIGNvbW1pdCB8 ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwg cmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAg ICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55 ICAgIHwgICAgICAgICAgICAgICAgICAgIDAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9 cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKICgxIHJvdykKIAogRFJPUCBTVUJTQ1JJUFRJT04g cmVncmVzc190ZXN0c3ViOwpAQCAtMzU1LDEwICszNTUsMTAgQEAgQ1JFQVRFIFNVQlNDUklQVElP TiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0 JyBQVUIKIFdBUk5JTkc6ICBzdWJzY3JpcHRpb24gd2FzIGNyZWF0ZWQsIGJ1dCBpcyBub3QgY29u bmVjdGVkCiBISU5UOiAgVG8gaW5pdGlhdGUgcmVwbGljYXRpb24sIHlvdSBtdXN0IG1hbnVhbGx5 IGNyZWF0ZSB0aGUgcmVwbGljYXRpb24gc2xvdCwgZW5hYmxlIHRoZSBzdWJzY3JpcHRpb24sIGFu ZCByZWZyZXNoIHRoZSBzdWJzY3JpcHRpb24uCiBcZFJzKwotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBMaXN0IG9mIHN1YnNjcmlwdGlvbnMKLSAgICAgIE5hbWUgICAgICAgfCAgICAg ICAgICAgT3duZXIgICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwg U3RyZWFtaW5nIHwgVHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4g fCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAgICAgfCBTa2lw IExTTiAKLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KLSByZWdyZXNzX3Rlc3RzdWIgfCBy ZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAg IHwgb2ZmICAgICAgIHwgcCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkg ICAgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAw LzAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9mIHN1 YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIgICAgICAgICAg IHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwgVHdvLXBoYXNl IGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBNaW4gYXBwbHkgZGVsYXkgKG1z KSB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNr aXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAg ICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IHAgICAgICAgICAgICAgICAg fCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgICAgICAgICAgICAgICAgICAgIDAgfCBvZmYg ICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKICgxIHJv dykKIAogLS1mYWlsIC0gYWx0ZXIgb2YgdHdvX3BoYXNlIG9wdGlvbiBub3Qgc3VwcG9ydGVkLgpA QCAtMzY3LDEwICszNjcsMTAgQEAgRVJST1I6ICB1bnJlY29nbml6ZWQgc3Vic2NyaXB0aW9uIHBh cmFtZXRlcjogInR3b19waGFzZSIKIC0tIGJ1dCBjYW4gYWx0ZXIgc3RyZWFtaW5nIHdoZW4gdHdv X3BoYXNlIGVuYWJsZWQKIEFMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChz dHJlYW1pbmcgPSB0cnVlKTsKIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IExpc3Qgb2Ygc3Vic2NyaXB0aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25l ciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcg fCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFN5bmNocm9u b3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0t LS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vi c2NyaXB0aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvbiAgICAg ICAgfCBwICAgICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IG9mZiAg ICAgICAgICAgICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9u cworICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVk IHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwg RGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IE1pbiBhcHBseSBkZWxheSAobXMpIHwgU3luY2hy b25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCist LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdy ZXNzX3Rlc3RzdWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0 cHVifSAgIHwgZiAgICAgIHwgb24gICAgICAgIHwgcCAgICAgICAgICAgICAgICB8IGYgICAgICAg ICAgICAgICAgfCBhbnkgICAgfCAgICAgICAgICAgICAgICAgICAgMCB8IG9mZiAgICAgICAgICAg ICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAogKDEgcm93KQogCiBBTFRF UiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gTk9ORSk7CkBA IC0zODAsMTAgKzM4MCwxMCBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBD T05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QnIFBVQgogV0FSTklORzogIHN1 YnNjcmlwdGlvbiB3YXMgY3JlYXRlZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQKIEhJTlQ6ICBUbyBp bml0aWF0ZSByZXBsaWNhdGlvbiwgeW91IG11c3QgbWFudWFsbHkgY3JlYXRlIHRoZSByZXBsaWNh dGlvbiBzbG90LCBlbmFibGUgdGhlIHN1YnNjcmlwdGlvbiwgYW5kIHJlZnJlc2ggdGhlIHN1YnNj cmlwdGlvbi4KIFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Yg c3Vic2NyaXB0aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAg ICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhh c2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFN5bmNocm9ub3VzIGNvbW1p dCB8ICAgICAgICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9u X3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvbiAgICAgICAgfCBwICAg ICAgICAgICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAg ICAgICB8IGRibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAg TmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGlj YXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBv biBlcnJvciB8IE9yaWdpbiB8IE1pbiBhcHBseSBkZWxheSAobXMpIHwgU3luY2hyb25vdXMgY29t bWl0IHwgICAgICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCistLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3Rz dWIgfCByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwg ZiAgICAgIHwgb24gICAgICAgIHwgcCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAg fCBhbnkgICAgfCAgICAgICAgICAgICAgICAgICAgMCB8IG9mZiAgICAgICAgICAgICAgICB8IGRi bmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJTQ1JJ UFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gTk9ORSk7CkBAIC0zOTYsMjAg KzM5Niw1NyBAQCBDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBDT05ORUNUSU9O ICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QnIFBVQgogV0FSTklORzogIHN1YnNjcmlwdGlv biB3YXMgY3JlYXRlZCwgYnV0IGlzIG5vdCBjb25uZWN0ZWQKIEhJTlQ6ICBUbyBpbml0aWF0ZSBy ZXBsaWNhdGlvbiwgeW91IG11c3QgbWFudWFsbHkgY3JlYXRlIHRoZSByZXBsaWNhdGlvbiBzbG90 LCBlbmFibGUgdGhlIHN1YnNjcmlwdGlvbiwgYW5kIHJlZnJlc2ggdGhlIHN1YnNjcmlwdGlvbi4K IFxkUnMrCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0 aW9ucwotICAgICAgTmFtZSAgICAgICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFi bGVkIHwgUHVibGljYXRpb24gfCBCaW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0 IHwgRGlzYWJsZSBvbiBlcnJvciB8IE9yaWdpbiB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAg ICAgIENvbm5pbmZvICAgICAgICAgICB8IFNraXAgTFNOIAotLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLQotIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIgfCBm ICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAgICAg ICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8IG9mZiAgICAgICAgICAgICAgICB8IGRi bmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCB8IDAvMAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucworICAgICAgTmFtZSAgICAg ICB8ICAgICAgICAgICBPd25lciAgICAgICAgICAgfCBFbmFibGVkIHwgUHVibGljYXRpb24gfCBC aW5hcnkgfCBTdHJlYW1pbmcgfCBUd28tcGhhc2UgY29tbWl0IHwgRGlzYWJsZSBvbiBlcnJvciB8 IE9yaWdpbiB8IE1pbiBhcHBseSBkZWxheSAobXMpIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAg ICAgICAgQ29ubmluZm8gICAgICAgICAgIHwgU2tpcCBMU04gCistLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyByZWdyZXNzX3Rlc3RzdWIgfCByZWdy ZXNzX3N1YnNjcmlwdGlvbl91c2VyIHwgZiAgICAgICB8IHt0ZXN0cHVifSAgIHwgZiAgICAgIHwg b2ZmICAgICAgIHwgZCAgICAgICAgICAgICAgICB8IGYgICAgICAgICAgICAgICAgfCBhbnkgICAg fCAgICAgICAgICAgICAgICAgICAgMCB8IG9mZiAgICAgICAgICAgICAgICB8IGRibmFtZT1yZWdy ZXNzX2RvZXNub3RleGlzdCB8IDAvMAogKDEgcm93KQogCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVn cmVzc190ZXN0c3ViIFNFVCAoZGlzYWJsZV9vbl9lcnJvciA9IHRydWUpOwogXGRScysKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCi0gICAgICBO YW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNh dGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9u IGVycm9yIHwgT3JpZ2luIHwgU3luY2hyb25vdXMgY29tbWl0IHwgICAgICAgICAgQ29ubmluZm8g ICAgICAgICAgIHwgU2tpcCBMU04gCi0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCi0gcmVn cmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVz dHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAgICAgICAgICAgfCB0ICAgICAg ICAgICAgICAgIHwgYW55ICAgIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3Nf ZG9lc25vdGV4aXN0IHwgMC8wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTGlzdCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAg IE93bmVyICAgICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVh bWluZyB8IFR3by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgTWlu IGFwcGx5IGRlbGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5m byAgICAgICAgICAgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0 aW9uX3VzZXIgfCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBk ICAgICAgICAgICAgICAgIHwgdCAgICAgICAgICAgICAgICB8IGFueSAgICB8ICAgICAgICAgICAg ICAgICAgICAwIHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4 aXN0IHwgMC8wCiAoMSByb3cpCiAKK0FMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIg U0VUIChzbG90X25hbWUgPSBOT05FKTsKK0RST1AgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1 YjsKKy0tIGZhaWwgLS0gbWluX2FwcGx5X2RlbGF5IG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50 ZWdlcgorQ1JFQVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJu YW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGNvbm5l Y3QgPSBmYWxzZSwgbWluX2FwcGx5X2RlbGF5ID0gZm9vKTsKK0VSUk9SOiAgaW52YWxpZCB2YWx1 ZSBmb3IgcGFyYW1ldGVyICJtaW5fYXBwbHlfZGVsYXkiOiAiZm9vIgorQ1JFQVRFIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4 aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGNvbm5lY3QgPSBmYWxzZSwgbWluX2FwcGx5 X2RlbGF5ID0gLTEpOworRVJST1I6ICAtMSBtcyBpcyBvdXRzaWRlIHRoZSB2YWxpZCByYW5nZSBm b3IgcGFyYW1ldGVyICJtaW5fYXBwbHlfZGVsYXkiICgwIC4uIDIxNDc0ODM2NDcpCistLSBmYWls IC0gdXRpbGl6aW5nIHN0cmVhbWluZyA9IHBhcmFsbGVsIHdpdGggdGltZS1kZWxheWVkIHJlcGxp Y2F0aW9uIGlzIG5vdCBzdXBwb3J0ZWQKK0NSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0 c3ViIENPTk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCTElDQVRJT04g dGVzdHB1YiBXSVRIIChjb25uZWN0ID0gZmFsc2UsIHN0cmVhbWluZyA9IHBhcmFsbGVsLCBtaW5f YXBwbHlfZGVsYXkgPSAxMjMpOworRVJST1I6ICBtaW5fYXBwbHlfZGVsYXkgPiAwIGFuZCBzdHJl YW1pbmcgPSBwYXJhbGxlbCBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIG9wdGlvbnMKKy0tIHN1Y2Nl c3MgLS0gbWluX2FwcGx5X2RlbGF5IHZhbHVlIHdpdGhvdXQgdW5pdCBpcyB0YWtlbiBhcyBtaWxs aXNlY29uZHMKK0NSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04g J2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCTElDQVRJT04gdGVzdHB1YiBXSVRIIChj b25uZWN0ID0gZmFsc2UsIG1pbl9hcHBseV9kZWxheSA9IDEyMyk7CitXQVJOSU5HOiAgc3Vic2Ny aXB0aW9uIHdhcyBjcmVhdGVkLCBidXQgaXMgbm90IGNvbm5lY3RlZAorSElOVDogIFRvIGluaXRp YXRlIHJlcGxpY2F0aW9uLCB5b3UgbXVzdCBtYW51YWxseSBjcmVhdGUgdGhlIHJlcGxpY2F0aW9u IHNsb3QsIGVuYWJsZSB0aGUgc3Vic2NyaXB0aW9uLCBhbmQgcmVmcmVzaCB0aGUgc3Vic2NyaXB0 aW9uLgorXGRScysKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBM aXN0IG9mIHN1YnNjcmlwdGlvbnMKKyAgICAgIE5hbWUgICAgICAgfCAgICAgICAgICAgT3duZXIg ICAgICAgICAgIHwgRW5hYmxlZCB8IFB1YmxpY2F0aW9uIHwgQmluYXJ5IHwgU3RyZWFtaW5nIHwg VHdvLXBoYXNlIGNvbW1pdCB8IERpc2FibGUgb24gZXJyb3IgfCBPcmlnaW4gfCBNaW4gYXBwbHkg ZGVsYXkgKG1zKSB8IFN5bmNocm9ub3VzIGNvbW1pdCB8ICAgICAgICAgIENvbm5pbmZvICAgICAg ICAgICB8IFNraXAgTFNOIAorLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tCisgcmVncmVzc190ZXN0c3ViIHwgcmVncmVzc19zdWJzY3JpcHRpb25fdXNl ciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8IG9mZiAgICAgICB8IGQgICAgICAg ICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAgIHwgICAgICAgICAgICAgICAgICAx MjMgfCBvZmYgICAgICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAw LzAKKygxIHJvdykKKworLS0gc3VjY2VzcyAtLSBtaW5fYXBwbHlfZGVsYXkgdmFsdWUgd2l0aCB1 bml0IGlzIGNvbnZlcnRlZCBpbnRvIG1zIGFuZCBzdG9yZWQgYXMgYW4gaW50ZWdlcgorQUxURVIg U1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKG1pbl9hcHBseV9kZWxheSA9ICcxIGQn KTsKK1xkUnMrCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlz dCBvZiBzdWJzY3JpcHRpb25zCisgICAgICBOYW1lICAgICAgIHwgICAgICAgICAgIE93bmVyICAg ICAgICAgICB8IEVuYWJsZWQgfCBQdWJsaWNhdGlvbiB8IEJpbmFyeSB8IFN0cmVhbWluZyB8IFR3 by1waGFzZSBjb21taXQgfCBEaXNhYmxlIG9uIGVycm9yIHwgT3JpZ2luIHwgTWluIGFwcGx5IGRl bGF5IChtcykgfCBTeW5jaHJvbm91cyBjb21taXQgfCAgICAgICAgICBDb25uaW5mbyAgICAgICAg ICAgfCBTa2lwIExTTiAKKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLQorIHJlZ3Jlc3NfdGVzdHN1YiB8IHJlZ3Jlc3Nfc3Vic2NyaXB0aW9uX3VzZXIg fCBmICAgICAgIHwge3Rlc3RwdWJ9ICAgfCBmICAgICAgfCBvZmYgICAgICAgfCBkICAgICAgICAg ICAgICAgIHwgZiAgICAgICAgICAgICAgICB8IGFueSAgICB8ICAgICAgICAgICAgIDg2NDAwMDAw IHwgb2ZmICAgICAgICAgICAgICAgIHwgZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0IHwgMC8w CisoMSByb3cpCisKKy0tIGZhaWwgLSBhbHRlciBzdWJzY3JpcHRpb24gd2l0aCBzdHJlYW1pbmcg PSBwYXJhbGxlbCBzaG91bGQgZmFpbCB3aGVuIHRpbWUtZGVsYXllZCByZXBsaWNhdGlvbiBpcyBz ZXQKK0FMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChzdHJlYW1pbmcgPSBw YXJhbGxlbCk7CitFUlJPUjogIGNhbm5vdCBlbmFibGUgc3RyZWFtaW5nID0gcGFyYWxsZWwgbW9k ZSBmb3Igc3Vic2NyaXB0aW9uIHdpdGggbWluX2FwcGx5X2RlbGF5CistLSBmYWlsIC0gYWx0ZXIg c3Vic2NyaXB0aW9uIHdpdGggbWluX2FwcGx5X2RlbGF5IHNob3VsZCBmYWlsIHdoZW4gc3RyZWFt aW5nID0gcGFyYWxsZWwgaXMgc2V0CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3Vi IFNFVCAobWluX2FwcGx5X2RlbGF5ID0gMCwgc3RyZWFtaW5nID0gcGFyYWxsZWwpOworQUxURVIg U1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKG1pbl9hcHBseV9kZWxheSA9IDEyMyk7 CitFUlJPUjogIGNhbm5vdCBlbmFibGUgbWluX2FwcGx5X2RlbGF5IGZvciBzdWJzY3JpcHRpb24g aW4gc3RyZWFtaW5nID0gcGFyYWxsZWwgbW9kZQogQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3Nf dGVzdHN1YiBTRVQgKHNsb3RfbmFtZSA9IE5PTkUpOwogRFJPUCBTVUJTQ1JJUFRJT04gcmVncmVz c190ZXN0c3ViOwogUkVTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OOwpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L3N1YnNjcmlwdGlvbi5zcWwKaW5kZXggNWYyN2I3ZDc3Ni4uNTNmZTJhNGM2YiAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsCkBAIC0yNzksNiArMjc5LDMwIEBAIEFMVEVSIFNV QlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChkaXNhYmxlX29uX2Vycm9yID0gdHJ1ZSk7 CiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gTk9O RSk7CiBEUk9QIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWI7CiAKKy0tIGZhaWwgLS0gbWlu X2FwcGx5X2RlbGF5IG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlcgorQ1JFQVRFIFNVQlND UklQVElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25v dGV4aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGNvbm5lY3QgPSBmYWxzZSwgbWluX2Fw cGx5X2RlbGF5ID0gZm9vKTsKK0NSRUFURSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENP Tk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNzX2RvZXNub3RleGlzdCcgUFVCTElDQVRJT04gdGVzdHB1 YiBXSVRIIChjb25uZWN0ID0gZmFsc2UsIG1pbl9hcHBseV9kZWxheSA9IC0xKTsKKworLS0gZmFp bCAtIHV0aWxpemluZyBzdHJlYW1pbmcgPSBwYXJhbGxlbCB3aXRoIHRpbWUtZGVsYXllZCByZXBs aWNhdGlvbiBpcyBub3Qgc3VwcG9ydGVkCitDUkVBVEUgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVz dHN1YiBDT05ORUNUSU9OICdkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QnIFBVQkxJQ0FUSU9O IHRlc3RwdWIgV0lUSCAoY29ubmVjdCA9IGZhbHNlLCBzdHJlYW1pbmcgPSBwYXJhbGxlbCwgbWlu X2FwcGx5X2RlbGF5ID0gMTIzKTsKKworLS0gc3VjY2VzcyAtLSBtaW5fYXBwbHlfZGVsYXkgdmFs dWUgd2l0aG91dCB1bml0IGlzIHRha2VuIGFzIG1pbGxpc2Vjb25kcworQ1JFQVRFIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4 aXN0JyBQVUJMSUNBVElPTiB0ZXN0cHViIFdJVEggKGNvbm5lY3QgPSBmYWxzZSwgbWluX2FwcGx5 X2RlbGF5ID0gMTIzKTsKK1xkUnMrCisKKy0tIHN1Y2Nlc3MgLS0gbWluX2FwcGx5X2RlbGF5IHZh bHVlIHdpdGggdW5pdCBpcyBjb252ZXJ0ZWQgaW50byBtcyBhbmQgc3RvcmVkIGFzIGFuIGludGVn ZXIKK0FMVEVSIFNVQlNDUklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChtaW5fYXBwbHlfZGVs YXkgPSAnMSBkJyk7CitcZFJzKworCistLSBmYWlsIC0gYWx0ZXIgc3Vic2NyaXB0aW9uIHdpdGgg c3RyZWFtaW5nID0gcGFyYWxsZWwgc2hvdWxkIGZhaWwgd2hlbiB0aW1lLWRlbGF5ZWQgcmVwbGlj YXRpb24gaXMgc2V0CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAoc3Ry ZWFtaW5nID0gcGFyYWxsZWwpOworCistLSBmYWlsIC0gYWx0ZXIgc3Vic2NyaXB0aW9uIHdpdGgg bWluX2FwcGx5X2RlbGF5IHNob3VsZCBmYWlsIHdoZW4gc3RyZWFtaW5nID0gcGFyYWxsZWwgaXMg c2V0CitBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAobWluX2FwcGx5X2Rl bGF5ID0gMCwgc3RyZWFtaW5nID0gcGFyYWxsZWwpOworQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jl c3NfdGVzdHN1YiBTRVQgKG1pbl9hcHBseV9kZWxheSA9IDEyMyk7CitBTFRFUiBTVUJTQ1JJUFRJ T04gcmVncmVzc190ZXN0c3ViIFNFVCAoc2xvdF9uYW1lID0gTk9ORSk7CitEUk9QIFNVQlNDUklQ VElPTiByZWdyZXNzX3Rlc3RzdWI7CisKIFJFU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTjsKIERS T1AgUk9MRSByZWdyZXNzX3N1YnNjcmlwdGlvbl91c2VyOwogRFJPUCBST0xFIHJlZ3Jlc3Nfc3Vi c2NyaXB0aW9uX3VzZXIyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL21lc29u LmJ1aWxkIGIvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL21lc29uLmJ1aWxkCmluZGV4IDNkYjBmZGZk OTYuLmExODY4NzZlYjQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi9tZXNvbi5i dWlsZAorKysgYi9zcmMvdGVzdC9zdWJzY3JpcHRpb24vbWVzb24uYnVpbGQKQEAgLTM4LDYgKzM4 LDcgQEAgdGVzdHMgKz0gewogICAgICAgJ3QvMDI5X29uX2Vycm9yLnBsJywKICAgICAgICd0LzAz MF9vcmlnaW4ucGwnLAogICAgICAgJ3QvMDMxX2NvbHVtbl9saXN0LnBsJywKKyAgICAgICd0LzAz Ml9hcHBseV9kZWxheS5wbCcsCiAgICAgICAndC8xMDBfYnVncy5wbCcsCiAgICAgXSwKICAgfSwK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAzMl9hcHBseV9kZWxheS5wbCBi L3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAzMl9hcHBseV9kZWxheS5wbApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi4zNzM4OGU0NzRmCi0tLSAvZGV2L251bGwKKysrIGIv c3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDMyX2FwcGx5X2RlbGF5LnBsCkBAIC0wLDAgKzEsMTc1 IEBACisKKyMgQ29weXJpZ2h0IChjKSAyMDIzLCBQb3N0Z3JlU1FMIEdsb2JhbCBEZXZlbG9wbWVu dCBHcm91cAorCisjIFRlc3QgcmVwbGljYXRpb24gYXBwbHkgZGVsYXkKK3VzZSBzdHJpY3Q7Cit1 c2Ugd2FybmluZ3M7Cit1c2UgUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3RlcjsKK3VzZSBQb3N0Z3Jl U1FMOjpUZXN0OjpVdGlsczsKK3VzZSBUZXN0OjpNb3JlOworCisjIENvbmZpcm0gdGhlIHRpbWUt ZGVsYXllZCByZXBsaWNhdGlvbiBoYXMgYmVlbiBlZmZlY3RpdmUgZnJvbSB0aGUgc2VydmVyIGxv ZworIyBtZXNzYWdlIHdoZXJlIHRoZSBhcHBseSB3b3JrZXIgZW1pdHMgZm9yIGFwcGx5aW5nIGRl bGF5LiBNb3Jlb3ZlciwgdmVyaWZpZXMKKyMgdGhhdCB0aGUgY3VycmVudCB3b3JrZXIncyBkZWxh eWVkIHRpbWUgaXMgc3VmZmljaWVudGx5IGJpZ2dlciB0aGFuIHRoZQorIyBleHBlY3RlZCB2YWx1 ZSwgaW4gb3JkZXIgdG8gY2hlY2sgYW55IHVwZGF0ZSBvZiB0aGUgbWluX2FwcGx5X2RlbGF5Lgor c3ViIGNoZWNrX2FwcGx5X2RlbGF5X2xvZworeworCW15ICgkbm9kZV9zdWJzY3JpYmVyLCAkb2Zm c2V0LCAkZXhwZWN0ZWQpID0gQF87CisKKwlteSAkbG9nX2xvY2F0aW9uID0gJG5vZGVfc3Vic2Ny aWJlci0+d2FpdF9mb3JfbG9nKHFyL3RpbWUtZGVsYXllZCByZXBsaWNhdGlvbiBmb3IgdHhpZCAo XGQrKSwgbWluX2FwcGx5X2RlbGF5ID0gKFxkKykgbXMsIFJlbWFpbmluZyB3YWl0IHRpbWU6IChc ZCspIG1zLywgJG9mZnNldCk7CisKKwljbXBfb2soJGxvZ19sb2NhdGlvbiwgJz4nLCAkb2Zmc2V0 LAorCQkibG9nZmlsZSBjb250YWlucyB0cmlnZ2VyZWQgbG9naWNhbCByZXBsaWNhdGlvbiBhcHBs eSBkZWxheSIKKwkpOworCisJIyBHZXQgdGhlIGRlbGF5IHRpbWUgZnJvbSB0aGUgc2VydmVyIGxv ZworCW15ICRjb250ZW50cyA9IHNsdXJwX2ZpbGUoJG5vZGVfc3Vic2NyaWJlci0+bG9nZmlsZSwg JG9mZnNldCk7CisJJGNvbnRlbnRzID1+CisJcXIvdGltZS1kZWxheWVkIHJlcGxpY2F0aW9uIGZv ciB0eGlkIChcZCspLCBtaW5fYXBwbHlfZGVsYXkgPSAoXGQrKSBtcywgUmVtYWluaW5nIHdhaXQg dGltZTogKFxkKykgbXMvCisJb3IgZGllICJjb3VsZCBub3QgZ2V0IHRoZSBhcHBseSB3b3JrZXIg d2FpdCB0aW1lIjsKKwlteSAkbG9nZ2VkX2RlbGF5ID0gJDM7CisKKwkjIElzIGl0IGxhcmdlciB0 aGFuIGV4cGVjdGVkPworCWNtcF9vaygkbG9nZ2VkX2RlbGF5LCAnPicsICRleHBlY3RlZCwKKwkJ IlRoZSBhcHBseSB3b3JrZXIgd2FpdCB0aW1lIGhhcyBleHBlY3RlZCBkdXJhdGlvbiIKKwkpOwor fQorCisjIENvbXBhcmUgaW5zZXJ0ZWQgdGltZSBvbiB0aGUgcHVibGlzaGVyIHdpdGggYXBwbGll ZCB0aW1lIG9uIHRoZSBzdWJzY3JpYmVyIHRvCisjIGNvbmZpcm0gdGhlIGxhdHRlciBpcyBhcHBs aWVkIGFmdGVyIGV4cGVjdGVkIHRpbWUuIFRoZSB0aW1lIGlzIGF1dG9tYXRpY2FsbHkKKyMgZ2Vu ZXJhdGVkIGFuZCBzdG9yZWQgaW4gdGhlIHRhYmxlIGNvbHVtbiAnYycuCitzdWIgY2hlY2tfYXBw bHlfZGVsYXlfdGltZQoreworCW15ICgkbm9kZV9wdWJsaXNoZXIsICRub2RlX3N1YnNjcmliZXIs ICRwcmltYXJ5X2tleSwgJGV4cGVjdGVkX2RpZmZzKSA9IEBfOworCisJbXkgJGluc2VydGVkX3Rp bWVfb25fcHViID0gJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgcXFbCisJ CVNFTEVDVCBleHRyYWN0KGVwb2NoIGZyb20gYykgRlJPTSB0ZXN0X3RhYiBXSEVSRSBhID0gJHBy aW1hcnlfa2V5OworCV0pOworCisJbXkgJGluc2VydGVkX3RpbWVfb25fc3ViID0gJG5vZGVfc3Vi c2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsIHFxWworCQlTRUxFQ1QgZXh0cmFjdChlcG9j aCBmcm9tIGMpIEZST00gdGVzdF90YWIgV0hFUkUgYSA9ICRwcmltYXJ5X2tleTsKKwldKTsKKwor CWNtcF9vaygkaW5zZXJ0ZWRfdGltZV9vbl9zdWIgLSAkaW5zZXJ0ZWRfdGltZV9vbl9wdWIsICc+ JywgJGV4cGVjdGVkX2RpZmZzLAorCQkiVGhlIHR1cGxlIG9uIHRoZSBzdWJzY3JpYmVyIHdhcyBt b2RpZmllZCBsYXRlciB0aGFuIHRoZSBwdWJsaXNoZXIiKTsKK30KKworIyBDcmVhdGUgcHVibGlz aGVyIG5vZGUKK215ICRub2RlX3B1Ymxpc2hlciA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXIt Pm5ldygncHVibGlzaGVyJyk7Ciskbm9kZV9wdWJsaXNoZXItPmluaXQoYWxsb3dzX3N0cmVhbWlu ZyA9PiAnbG9naWNhbCcpOworJG5vZGVfcHVibGlzaGVyLT5hcHBlbmRfY29uZigncG9zdGdyZXNx bC5jb25mJywKKwknbG9naWNhbF9kZWNvZGluZ193b3JrX21lbSA9IDY0a0InKTsKKyRub2RlX3B1 Ymxpc2hlci0+c3RhcnQ7CisKKyMgQ3JlYXRlIHN1YnNjcmliZXIgbm9kZQorbXkgJG5vZGVfc3Vi c2NyaWJlciA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXItPm5ldygnc3Vic2NyaWJlcicpOwor JG5vZGVfc3Vic2NyaWJlci0+aW5pdDsKKyRub2RlX3N1YnNjcmliZXItPmFwcGVuZF9jb25mKCdw b3N0Z3Jlc3FsLmNvbmYnLAorCSJsb2dfbWluX21lc3NhZ2VzID0gZGVidWcyIik7Ciskbm9kZV9z dWJzY3JpYmVyLT5zdGFydDsKKworIyBTZXR1cCBzdHJ1Y3R1cmUgb24gcHVibGlzaGVyCiskbm9k ZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgVEFCTEUgdGVzdF90 YWIgKGEgaW50IHByaW1hcnkga2V5LCBiIHZhcmNoYXIsIGMgdGltZXN0YW1wdHogKDYpIERFRkFV TFQgbm93KCkpIik7CisKKyMgU2V0dXAgc3RydWN0dXJlIG9uIHN1YnNjcmliZXIKKyRub2RlX3N1 YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgVEFCTEUgdGVzdF90YWIg KGEgaW50IHByaW1hcnkga2V5LCBiIHRleHQsIGMgdGltZXN0YW1wdHogKDYpIERFRkFVTFQgbm93 KCkpIgorKTsKKworIyBTZXR1cCBsb2dpY2FsIHJlcGxpY2F0aW9uCitteSAkcHVibGlzaGVyX2Nv bm5zdHIgPSAkbm9kZV9wdWJsaXNoZXItPmNvbm5zdHIgLiAnIGRibmFtZT1wb3N0Z3Jlcyc7CisK KyMgVGhlIGNvbHVtbiAnYycgbXVzdCBub3QgYmUgcHVibGlzaGVkIGJlY2F1c2Ugd2Ugd2FudCB0 byBjb21wYXJlIHRoZSB0aW1lCisjIGRpZmZlcmVuY2UuCiskbm9kZV9wdWJsaXNoZXItPnNhZmVf cHNxbCgncG9zdGdyZXMnLAorCSJDUkVBVEUgUFVCTElDQVRJT04gdGFwX3B1YiBGT1IgVEFCTEUg dGVzdF90YWIgKGEsIGIpIik7CisKK215ICRhcHBuYW1lID0gJ3RhcF9zdWInOworCisjIENyZWF0 ZSBhIHN1YnNjcmlwdGlvbiB0aGF0IGFwcGxpZXMgdGhlIHRyYXNhY3Rpb24gYWZ0ZXIgNTAgbWls bGlzZWNvbmRzIGRlbGF5Ciskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywK KwkiQ1JFQVRFIFNVQlNDUklQVElPTiB0YXBfc3ViIENPTk5FQ1RJT04gJyRwdWJsaXNoZXJfY29u bnN0ciBhcHBsaWNhdGlvbl9uYW1lPSRhcHBuYW1lJyBQVUJMSUNBVElPTiB0YXBfcHViIFdJVEgg KGNvcHlfZGF0YSA9IG9mZiwgbWluX2FwcGx5X2RlbGF5ID0gJzUwbXMnLCBzdHJlYW1pbmcgPSAn b24nKSIKKyk7CisKKyMgTmV3IHJvdyB0byB0cmlnZ2VyIGFwcGx5IGRlbGF5Ciskbm9kZV9wdWJs aXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJJTlNFUlQgSU5UTyB0ZXN0X3RhYiBWQUxV RVMgKDEsICdmb28nKSIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywK KwkiSU5TRVJUIElOVE8gdGVzdF90YWIgVkFMVUVTICgyLCAnYmFyJykiKTsKKworJG5vZGVfcHVi bGlzaGVyLT53YWl0X2Zvcl9jYXRjaHVwKCRhcHBuYW1lKTsKKworbXkgJHJlc3VsdCA9CisgICRu b2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJTRUxFQ1QgY291bnQoKiks IG1pbihhKSwgbWF4KGEpIEZST00gdGVzdF90YWIiKTsKK2lzKCRyZXN1bHQsIHFxKDJ8MXwyKSwg J2NoZWNrIGlmIHRoZSBuZXcgcm93cyB3ZXJlIGFwcGxpZWQgdG8gc3Vic2NyaWJlcicpOworCisj IE5vdGUgdGhhdCB3ZSBjYW5ub3QgY2FsbCBjaGVja19hcHBseV9kZWxheV9sb2coKSBoZXJlIGJl Y2F1c2UgdGhlcmUgaXMgYQorIyBwb3NzaWJpbGl0eSB0aGF0IHRoZSBkZWxheSBpcyBza2lwcGVk LiBUaGUgZXZlbnQgaGFwcGVucyB3aGVuIHRoZSBXQUwKKyMgcmVwbGljYXRpb24gYmV0d2VlbiBw dWJsaXNoZXIgYW5kIHN1YnNjcmliZXIgaXMgZGVsYXllZCBkdWUgdG8gYSBtZWNoYW5pY2FsCisj IHByb2JsZW0uIFRoZSBsb2cgb3V0cHV0IHdpbGwgYmUgY2hlY2tlZCBsYXRlciAtIHN1YnN0YW50 aWFsIGRlbGF5LXRpbWUgY2FzZS4KKworIyBWZXJpZnkgdGhhdCB0aGUgc3Vic2NyaWJlciBsYWdz IHRoZSBwdWJsaXNoZXIgYnkgYXQgbGVhc3QgNTAgbWlsbGlzZWNvbmRzCitjaGVja19hcHBseV9k ZWxheV90aW1lKCRub2RlX3B1Ymxpc2hlciwgJG5vZGVfc3Vic2NyaWJlciwgJzInLCAnMC4wNScp OworCisjIFNldHVwIGZvciBzdHJlYW1pbmcgY2FzZQorJG5vZGVfcHVibGlzaGVyLT5hcHBlbmRf Y29uZigncG9zdGdyZXMuY29uZicsCisJJ2xvZ2ljYWxfZGVjb2RpbmdfbW9kZSA9IGltbWVkaWF0 ZScpOworJG5vZGVfcHVibGlzaGVyLT5yZWxvYWQ7CisKKyMgUnVuIGEgcXVlcnkgdG8gbWFrZSBz dXJlIHRoYXQgdGhlIHJlbG9hZCBoYXMgdGFrZW4gZWZmZWN0LgorJG5vZGVfcHVibGlzaGVyLT5z YWZlX3BzcWwoJ3Bvc3RncmVzJywgcXtTRUxFQ1QgMX0pOworCisjIFRlc3Qgc3RyZWFtZWQgdHJh bnNhY3Rpb24gYnkgaW5zZXJ0Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMn LAorCSJJTlNFUlQgSU5UTyB0ZXN0X3RhYiBTRUxFQ1QgaSwgbWQ1KGk6OnRleHQpIEZST00gZ2Vu ZXJhdGVfc2VyaWVzKDMsIDUpIHMoaSk7Iik7CisKKyRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3Jf Y2F0Y2h1cCgkYXBwbmFtZSk7CisKKyRyZXN1bHQgPQorICAkbm9kZV9zdWJzY3JpYmVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIGNvdW50KCopLCBtaW4oYSksIG1heChhKSBGUk9N IHRlc3RfdGFiIik7CitpcygkcmVzdWx0LCBxcSg1fDF8NSksICdjaGVjayBpZiB0aGUgbmV3IHJv d3Mgd2VyZSBhcHBsaWVkIHRvIHN1YnNjcmliZXInKTsKKworIyBWZXJpZnkgdGhhdCB0aGUgc3Vi c2NyaWJlciBsYWdzIHRoZSBwdWJsaXNoZXIgYnkgYXQgbGVhc3QgNTAgbWlsbGlzZWNvbmRzCitj aGVja19hcHBseV9kZWxheV90aW1lKCRub2RlX3B1Ymxpc2hlciwgJG5vZGVfc3Vic2NyaWJlciwg JzUnLCAnMC4wNScpOworCisjIFRlc3Qgd2hldGhlciBBTFRFUiBTVUJTQ1JJUFRJT04gY2hhbmdl cyB0aGUgZGVsYXllZCB0aW1lIG9mIHRoZSBhcHBseSB3b3JrZXIKKyMgKDEgZGF5IDUgbWludXRl cykuIE5vdGUgdGhhdCB0aGUgZXh0cmEgNSBtaW51dGUgaXMgdG8gYWNjb3VudCBmb3IgYW55Cisj IGRlY29kaW5nL25ldHdvcmsgb3ZlcmhlYWQuCiskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKKwkiQUxURVIgU1VCU0NSSVBUSU9OIHRhcF9zdWIgU0VUIChtaW5fYXBwbHlf ZGVsYXkgPSA4NjcwMDAwMCkiCispOworCisjIENoZWNrIGxvZyBzdGFydGluZyBub3cgZm9yIGxv Z2ljYWwgcmVwbGljYXRpb24gYXBwbHkgZGVsYXkKK215ICRvZmZzZXQgPSAtcyAkbm9kZV9zdWJz Y3JpYmVyLT5sb2dmaWxlOworCisjIE5ldyByb3cgdG8gdHJpZ2dlciBhcHBseSBkZWxheQorJG5v ZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiSU5TRVJUIElOVE8gdGVzdF90 YWIgVkFMVUVTICgwLCAnZm9vYmFyJykiKTsKKworIyBNYWtlIHN1cmUgdGhlIGFwcGx5IHdvcmtl ciBrbm93cyB0byB3YWl0IGZvciBtb3JlIHRoYW4gMSBkYXkKK2NoZWNrX2FwcGx5X2RlbGF5X2xv Zygkbm9kZV9zdWJzY3JpYmVyLCAkb2Zmc2V0LCAiODY0MDAwMDAiKTsKKworIyBEaXNhYmxlIHN1 YnNjcmlwdGlvbiBhbmQgdGhlIHdvcmtlciBzaG91bGQgZGllIGltbWVkaWF0ZWx5Ciskbm9kZV9z dWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiQUxURVIgU1VCU0NSSVBUSU9OIHRh cF9zdWIgRElTQUJMRTsiCispOworCisjIFdhaXQgdW50aWwgd29ya2VyIGRpZXMKK215ICRzdWJf cXVlcnkgPQorICAiU0VMRUNUIGNvdW50KDEpID0gMCBGUk9NIHBnX3N0YXRfc3Vic2NyaXB0aW9u IFdIRVJFIHN1Ym5hbWUgPSAndGFwX3N1YicgQU5EIHBpZCBJUyBOT1QgTlVMTDsiOworJG5vZGVf c3Vic2NyaWJlci0+cG9sbF9xdWVyeV91bnRpbCgncG9zdGdyZXMnLCAkc3ViX3F1ZXJ5KQorICBv ciBkaWUgIlRpbWVkIG91dCB3aGlsZSB3YWl0aW5nIGZvciBzdWJzY3JpYmVyIHRvIGRpZSI7CisK KyMgQ29uZmlybSBkaXNhYmxpbmcgdGhlIHN1YnNjcmlwdGlvbiBieSBBTFRFUiBTVUJTQ1JJUFRJ T04gRElTQUJMRSBkaWQgbm90IGNhdXNlCisjIHRoZSBkZWxheWVkIHRyYW5zYWN0aW9uIHRvIGJl IGFwcGxpZWQuCiskcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jl cycsCisJIlNFTEVDVCBjb3VudChhKSBGUk9NIHRlc3RfdGFiIFdIRVJFIGEgPSAwOyIpOworaXMo JHJlc3VsdCwgcXEoMCksICJjaGVjayB0aGUgZGVsYXllZCB0cmFuc2FjdGlvbiB3YXMgbm90IGFw cGxpZWQiKTsKKworJG5vZGVfc3Vic2NyaWJlci0+c3RvcDsKKyRub2RlX3B1Ymxpc2hlci0+c3Rv cDsKKworZG9uZV90ZXN0aW5nKCk7Ci0tIAoyLjMwLjAKCg== --_002_TYCPR01MB8373A23EFC25B22CB132383AEDCB9TYCPR01MB8373jpnp_--