From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7F172A04FD; Wed, 22 Jun 2022 09:57:53 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1F2C24069C; Wed, 22 Jun 2022 09:57:53 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id B655E40689 for ; Wed, 22 Jun 2022 09:57:49 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1655884671; x=1687420671; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=Gmvyn5tOWTAm6p46N9gvEgdFy4zKNgmSLT0dnNssWoQ=; b=MAFGaNzXJiE8Av2Qw2lUESd/IQAMzR7clNnWAbGKMl/aIhY+gt6lLbLU v2T5jLaBmUQ1kPkwH3FmKLIOaf1mp8yXN/p7T6H9ZFhiKUfJj2djOzI2o s1o1eHY2ONtYIBcms4t61tO7m9kJXq22X5tDM8rppYjIWtradLRAdWgSy lOLg5mlvQyEzCSqEmkcIyPMb9rlh6GJuK5tnHMgXQR7rre7+eMrRNnBnX cOlLdqa0L0Ze/uHexygjqgbR3ThNc1WXdUPl4iSCnf2s13ZCjpDvU5FSR AKzFrQWaKo0mqJZDTbEqmeB+2zQzIgwRjkcet0loEvvbbcsc982qUR5Nh g==; X-IronPort-AV: E=McAfee;i="6400,9594,10385"; a="260778029" X-IronPort-AV: E=Sophos;i="5.92,212,1650956400"; d="scan'208";a="260778029" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Jun 2022 00:57:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,212,1650956400"; d="scan'208";a="538364816" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga003.jf.intel.com with ESMTP; 22 Jun 2022 00:57:47 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Wed, 22 Jun 2022 00:57:46 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Wed, 22 Jun 2022 00:57:45 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Wed, 22 Jun 2022 00:57:45 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Wed, 22 Jun 2022 00:57:45 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WjS1YTOGYC7NP6VKtymkNgmvtsLz0LowqoGAwNqtLVwoLduOoXt1xUiu2sJUVFOHXo7x7UagZs+D7BOjys2ILL1Ky8WA8A48aFz23bNcWLhy22RaM37Vmzo6vDLLPgzUQiikDjCtGyfXVfEw5gDJMH2NhphabUif2t3fLzuEOnpXFhA4U6bIfyfEEuYhibbU5hc/D0OfbUXTaMJbXpSHSI/v5r6wq0il3Tv5d6fOOPtaHaxpRLi/wra1M9FXKEF5ss/KtGfmJF7pbRBzE6noN+PPWIulPfBykypOyuKMyYCJLiIaMku3SqQe1br1u/Y3RV9MDE6l5SNtbHuFthR7Ew== 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=Gmvyn5tOWTAm6p46N9gvEgdFy4zKNgmSLT0dnNssWoQ=; b=akgnfurY1o5TuVgQfwnKlJypcHHwpTOHMZfNM87tOLW0LDHVS1k3vVj65dUo17hQIMKWsWn1tZgnUWTpLeUwofLCNPw5129JuPQlht834s1r8f08yBMdXcwpHnK/t7zC3ebhsGGQEEjQgQvyKa55Hkrjr6Xb0X+bWLra2jJFSZf77w+Ae0En0qNyW5ggI/gl0xshIHxyqR5Mcl/9ZM2LtIar8ac9bxGM1V6KGVyQIfZt+ufysfhGJQkVy4TxfAG5MjOaCClM9Lf+83eoV1GvGi7yC37XXwNPZYNuzqdThvekPI64KPa9liPm8bIbel2A3q/RNqzkhpr3uuW7/4Xmvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MN2PR11MB3821.namprd11.prod.outlook.com (2603:10b6:208:f7::24) by BL0PR11MB3188.namprd11.prod.outlook.com (2603:10b6:208:61::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.15; Wed, 22 Jun 2022 07:57:43 +0000 Received: from MN2PR11MB3821.namprd11.prod.outlook.com ([fe80::31c2:15cc:21bf:d8d]) by MN2PR11MB3821.namprd11.prod.outlook.com ([fe80::31c2:15cc:21bf:d8d%3]) with mapi id 15.20.5353.022; Wed, 22 Jun 2022 07:57:43 +0000 From: "Power, Ciara" To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , fengchengwen , Stephen Hemminger , "Richardson, Bruce" CC: "thomas@monjalon.net" , "ferruh.yigit@xilinx.com" , "Laatz, Kevin" , "andrew.rybchenko@oktetlabs.ru" , "jerinj@marvell.com" , "sachin.saxena@oss.nxp.com" , "hemant.agrawal@nxp.com" , "dev@dpdk.org" Subject: RE: [PATCH v2 1/5] telemetry: escape special char when tel string Thread-Topic: [PATCH v2 1/5] telemetry: escape special char when tel string Thread-Index: AdiCMAjZ9JKlmeMDRsWMDC7l7YnM9gALuzUwAOtZUTA= Date: Wed, 22 Jun 2022 07:57:43 +0000 Message-ID: References: <20220615073915.14041-1-fengchengwen@huawei.com> <20220617094624.17578-1-fengchengwen@huawei.com> <20220617094624.17578-2-fengchengwen@huawei.com> <98CBD80474FA8B44BF855DF32C47DC35D8713C@smartserver.smartshare.dk> <20220617100514.5a2df62c@hermes.local> <507d1942-868b-4e60-6921-6b420190e5de@huawei.com> <98CBD80474FA8B44BF855DF32C47DC35D8713F@smartserver.smartshare.dk> In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35D8713F@smartserver.smartshare.dk> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 823cd289-2165-486b-4d9b-08da5424e329 x-ms-traffictypediagnostic: BL0PR11MB3188:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: h4h7I4vY6kPlVLkTzzha1MDaSt0uTfAcmcJqetuC4xhnuJNYoHNntrt/j7oE8iWzrhC8qMMc7QG8Vr77qlkhtwycHNLu9YKezfphSrPT9odIdmcr8cugVT+KDm4BQ2sZSeLYBAm68zDO/P5hv01bEhUNkUfO4IuGMA1CWCwA8uvLKqkXpgsp8eiMym9HFJr+4Nn4ymFdwq+xq489/e0oB4pxJoPxZCooY6ibg2fs8xNkoaUxrx3bpzseSs05QgfnpxDpHZVKX3TOBG0J4OAgqWtF21JSCZt3iBEpwm6c9qXvS5MeV0yfL8IwqWb5eLWHnf4qnpOcS+hxcvel8ft1kOkHy9qUhpixknWYVSEIdjPpNazestx65WlkcvXZF9SV1NEIyA6jsoLkh9xOCDJ/tuYIrLo4ZWVxdEjYfuW76QkNeaMU0kLpDWF8lmaW6dFkY0Gka7ZckBTFhnTLspau6JEyN5JI0pyjoSGWgFYv05uEWrbg5Wuhz5XLWHiFdxJpB4NekS6Qtx26wNdCdtuVUh2YPVuEHwmV47bAnSnKbIxvSbxe37PB4QHGISQEUmzrNoUW9Ss2jXHh9eWS3i2S+buZKrKkNemfIRi0Ln+xPmwngDbqGTjk5LwfPafVflyHa7HYQcbygnF4vV030y6/E6ZM+g+puXiQ+Fsi/DrMBXBWuyn78KkAwhrNWZomy6aulUviD7AUaupt/p6yQX0+uANS//VEwY0mHETOTl3XmzWMvw+P4NP8A2ZDLpm3ovFvU2itetutk/Znv9HnXKmccyvY7DCTA2WRYVye3Tp1ZxVIry1KfB9cNDbQ3NWlKOaJ x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB3821.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(136003)(39860400002)(366004)(396003)(376002)(346002)(55016003)(66946007)(966005)(52536014)(8936002)(38100700002)(76116006)(33656002)(2906002)(8676002)(4326008)(6506007)(7696005)(66446008)(66476007)(66556008)(64756008)(186003)(5660300002)(478600001)(83380400001)(9686003)(316002)(38070700005)(7416002)(54906003)(6636002)(110136005)(53546011)(82960400001)(71200400001)(122000001)(86362001)(41300700001)(26005)(21314003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?c0ZiVnluVFRtY2IvRERXaEE5MmI0NGhORWhtdHp5N3g0a2JYTkM1U1dEdUw3?= =?utf-8?B?UE9mWS9vNGhOOWNTV1pXMU9xVU1KSEx1anNYaXllMmRJZ0ZYdWxheGZRaHFX?= =?utf-8?B?aUhQaHEvd3QxKzdWakVpeUFyS1RPZE0wanhEL1R1N0c1OTV6eUFiTWhDaS82?= =?utf-8?B?RU4wM2pWS0hPNXZxcWg1STJVdmV4QkRxcEFrcEMweFYyUjJiVEErSWZVNXBi?= =?utf-8?B?bjlUTjh5Q1ZmTS9haUZWL3I4a2NXSmdWVGo2VExQaHJJTS9RVHZtVm1CM0Qr?= =?utf-8?B?SDdmS3N5SWEyZ2lDbklSY1dNOFV3NnVLZm1xNUFkWEorWlZzTmVLVlJWWXNk?= =?utf-8?B?UU81WitYYm9jR2Fteml3NE9XNGlMbk9uUDh0YU10NmZrcUFiZlRQY1ljZjl1?= =?utf-8?B?WFNGSE84U3JhN2FmSzJsRjJIeTA2RVBSdHovY3dwRUs5bFJhYlJmZW9OVE5E?= =?utf-8?B?bGlGOEM2ZTNNZ2VrQk9tNWF4OEFmQWtJY2F3aU1ESkRDYVp0UTlGV1JqNFpl?= =?utf-8?B?VFFtQ1FwOGsreEhhRmxETnBGY3VYZGZGa1JiSC85NGNHa2NISXN5ejgvWDUw?= =?utf-8?B?L0RwcDBJamtYZmNzdlNSNWxseUtMbDYrMEM3WGNGbWJId0phekwxL2xTL3ND?= =?utf-8?B?djRpTFd6RjA1S2ZtNm1FUnhGV0s5NjdHd1ArYkNzbk9Tb1o1Q1pnanBSeVla?= =?utf-8?B?Wi9rYkJzRzNLbmJOSHpaRU5zZld4alVnUFo2dlpJL0VqR2tqQ05LcVliUlQr?= =?utf-8?B?alAvWWdqRFVndnRwOG5sRjRLd2xqS2JWenpJdXNKRUc4bytYNm5vaXAyS3E4?= =?utf-8?B?Z3ZFNjd3K1RoSEExN3g3NDNkbWtFNWthQnJzUDRyZW9iL0hlai9EazQ5SS9O?= =?utf-8?B?S1A4RzJ0ZUhucnlvSit4TDY5QTBsRGwveWViMGVvSEZGNHNqampzTWJqWkY5?= =?utf-8?B?TTNKUS83SnFvbXlrYmJZbzZ4Q2dVMlU0Ym1DcmRiekxrWUNIWlk2V2k4TlVH?= =?utf-8?B?NjNYZkZsUGpvSlowMXJ4bFIzMXdBUldycFBlZG9YNXVoV2dkajlzWjYvK1d6?= =?utf-8?B?TnJTOS9UelVDT2FlOW9ZS0g5WUVMaUxyUTBuR0ttbFRKQm9FSWc3bzJWbFRO?= =?utf-8?B?MEU2dUhvWXFLRGdnbnJOREROVFlkMmo2ampMN1hLdGxXUC9ScUlidXduMWhj?= =?utf-8?B?MXNLbVdScnFqb3FNUlJCUXRZaTVnRE41S0U5ck9MNThqU2lnYjJJaHU4cXVS?= =?utf-8?B?c2VuZFYxY0xJUFQxdTZ2YkpJczllQkZrSFEzRGxsVEtxM1M1NmZJa3FYbGdN?= =?utf-8?B?SVNuVWxxb2xTUmE3ZEtvdC9rdkVDVEtaT2ZrbmJsaXdZS1NjZUJVS3dNYjc1?= =?utf-8?B?eFZiV3BLRFpEUUo5ZmtIcWUrOUZRNC9nZng3MzRiZjJFdm5tNTc4ZC9aVjRD?= =?utf-8?B?YW45RWNKY3JEMnlWaWx5bUdkRWgvaEdxalFwNkZkdXl4cGxOQ3JnOXpMN1Rr?= =?utf-8?B?VFBjTzdHVUJuNHNqQ2kxZFdtR0cxQ25iTW9nMk5XT0JPb29hOTNvMG45MGpI?= =?utf-8?B?aHQ1Vm1BdTc1RmxLTnQzZVFUdHBBVXFpOFRVeG4vZTdtaEt1NHhRVlVxS29v?= =?utf-8?B?WEtPNEJCVVNCR0crb0ZXWENCaGZrZ2VWTFdWY1JNYXVUdkVBMGNBcjB6VXBy?= =?utf-8?B?cUx2ODllMkVvL1JWWHBMWXhUUEEybWl5QUx3MWlPaGlTcDA0VVU0NWZJdFFJ?= =?utf-8?B?dmF1d2xZUC9tWWFnZHNQd0JwTjRORm45NEhVOC9RbkhQS1U4UHZrcEg2U00y?= =?utf-8?B?MUhYQnRmdlVDUW5pblF4Tk8rM1RyaThmOE1tYnY2aUtlOExkSjdob3JBR09k?= =?utf-8?B?UExvU1A5UjlnWTdrWFdUNkVwS2d1a040ZUV5UE54cXh5d0szVjB1V3J6MkRN?= =?utf-8?B?L2tzTHZyb1RKOXlrMU9NeTBTcm93S21CV1U3VnhleUpLZnhlYVF5V2hNZDZK?= =?utf-8?B?WTcyTjB5cHY3YXJWZmE2Nk9xcGN3OVhmV0lGYmk0QUVjVkhqb0JCT0RkWnE3?= =?utf-8?B?WVY1enB1VFFDRGJ5VmNXZVhjV2Z0cVFaRXV5OWZ1M0tqNUVBOURMaURqeHdu?= =?utf-8?B?eXp5anlJY0tkWFBIZ2U5SlJqY0ZtNTRmVWpyNXcwbWdTamY2UEVZaFl3ODI0?= =?utf-8?B?d2d6UmpMMkRNczF1Kzc0WnI2WnVQZ3hqaGNCSll4YUNmMU1RTWhPVU5Zd3l5?= =?utf-8?B?QVU4LzJwL29aYksrbEt3V2VVYS9iaERGeXpJNFV2UUZjTTd6TG9XSDFzcjdH?= =?utf-8?B?aERBektWaFBtTE16QXVRQlZQYksvNGlYc1ZzL3RmQk8wYjQ0UDIxZz09?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR11MB3821.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 823cd289-2165-486b-4d9b-08da5424e329 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2022 07:57:43.2724 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 9n/vlUNt1cdJ/iw10oJrX02EcIhmnBOXed7q5h1gUBxab2M+TOpdKQRSoa2GbAj0OZgkp8GQTVG1MxiKPBWpfw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB3188 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org SGkgZm9sa3MsDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTW9ydGVu IEJyw7hydXAgPG1iQHNtYXJ0c2hhcmVzeXN0ZW1zLmNvbT4NCj4gU2VudDogU2F0dXJkYXkgMTgg SnVuZSAyMDIyIDEwOjU5DQo+IFRvOiBmZW5nY2hlbmd3ZW4gPGZlbmdjaGVuZ3dlbkBodWF3ZWku Y29tPjsgU3RlcGhlbiBIZW1taW5nZXINCj4gPHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnPjsg UmljaGFyZHNvbiwgQnJ1Y2UNCj4gPGJydWNlLnJpY2hhcmRzb25AaW50ZWwuY29tPg0KPiBDYzog dGhvbWFzQG1vbmphbG9uLm5ldDsgZmVycnVoLnlpZ2l0QHhpbGlueC5jb207IExhYXR6LCBLZXZp bg0KPiA8a2V2aW4ubGFhdHpAaW50ZWwuY29tPjsgYW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMu cnU7DQo+IGplcmluakBtYXJ2ZWxsLmNvbTsgc2FjaGluLnNheGVuYUBvc3MubnhwLmNvbTsNCj4g aGVtYW50LmFncmF3YWxAbnhwLmNvbTsgZGV2QGRwZGsub3JnOyBQb3dlciwgQ2lhcmENCj4gPGNp YXJhLnBvd2VyQGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtQQVRDSCB2MiAxLzVdIHRlbGVt ZXRyeTogZXNjYXBlIHNwZWNpYWwgY2hhciB3aGVuIHRlbCBzdHJpbmcNCj4gDQo+ICtDQzogQ2lh cmEgUG93ZXIsIFRlbGVtZXRyeSBsaWJyYXJ5IG1haW50YWluZXINCj4gDQo+ID4gRnJvbTogZmVu Z2NoZW5nd2VuIFttYWlsdG86ZmVuZ2NoZW5nd2VuQGh1YXdlaS5jb21dDQo+ID4gU2VudDogU2F0 dXJkYXksIDE4IEp1bmUgMjAyMiAwNS41Mg0KPiA+DQo+ID4gT24gMjAyMi82LzE4IDE6MDUsIFN0 ZXBoZW4gSGVtbWluZ2VyIHdyb3RlOg0KPiA+ID4gT24gRnJpLCAxNyBKdW4gMjAyMiAxMjoyNTow NCArMDEwMA0KPiA+ID4gQnJ1Y2UgUmljaGFyZHNvbiA8YnJ1Y2UucmljaGFyZHNvbkBpbnRlbC5j b20+IHdyb3RlOg0KPiA+ID4NCj4gPiA+PiBPbiBGcmksIEp1biAxNywgMjAyMiBhdCAwMToxNjow OFBNICswMjAwLCBNb3J0ZW4gQnLDuHJ1cCB3cm90ZToNCj4gPiA+Pj4+IEZyb206IENoZW5nd2Vu IEZlbmcgW21haWx0bzpmZW5nY2hlbmd3ZW5AaHVhd2VpLmNvbV0NCj4gPiA+Pj4+IFNlbnQ6IEZy aWRheSwgMTcgSnVuZSAyMDIyIDExLjQ2DQo+ID4gPj4+Pg0KPiA+ID4+Pj4gVGhpcyBwYXRjaCBz dXBwb3J0cyBlc2NhcGUgc3BlY2lhbCBjaGFyYWN0ZXJzIChpbmNsdWRpbmc6DQo+ID4gXCIsXFws LyxcYiwNCj4gPiA+Pj4+IC9mLC9uLC9yLC90KSB3aGVuIHRlbGVtZXRyeSBzdHJpbmcuDQo+ID4g Pj4+PiBUaGlzIHBhdGNoIGlzIHVzZWQgdG8gc3VwcG9ydCB0ZWxlbWV0cnkgeHh4LWR1bXAgY29t bWFuZHMgd2hpY2gNCj4gPiB0aGUNCj4gPiA+Pj4+IHN0cmluZyBtYXkgaW5jbHVkZSBzcGVjaWFs IGNoYXJhY3RlcnMuDQo+ID4gPj4+Pg0KPiA+ID4+Pj4gU2lnbmVkLW9mZi1ieTogQ2hlbmd3ZW4g RmVuZyA8ZmVuZ2NoZW5nd2VuQGh1YXdlaS5jb20+DQo+ID4gPj4+PiAtLS0NCj4gPiA+Pj4+ICBs aWIvdGVsZW1ldHJ5L3RlbGVtZXRyeS5jIHwgOTYNCj4gPiArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0NCj4gPiA+Pj4+ICAxIGZpbGUgY2hhbmdlZCwgOTMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkNCj4gPiA+Pj4+DQo+ID4gPj4+PiBkaWZmIC0tZ2l0IGEvbGli L3RlbGVtZXRyeS90ZWxlbWV0cnkuYw0KPiA+ID4+Pj4gYi9saWIvdGVsZW1ldHJ5L3RlbGVtZXRy eS5jIGluZGV4IGM2ZmQwM2E1YWIuLjBmNzYyZjYzM2UgMTAwNjQ0DQo+ID4gPj4+PiAtLS0gYS9s aWIvdGVsZW1ldHJ5L3RlbGVtZXRyeS5jDQo+ID4gPj4+PiArKysgYi9saWIvdGVsZW1ldHJ5L3Rl bGVtZXRyeS5jDQo+ID4gPj4+PiBAQCAtMjE1LDYgKzIxNSw5NCBAQCBjb250YWluZXJfdG9fanNv bihjb25zdCBzdHJ1Y3QgcnRlX3RlbF9kYXRhDQo+ID4gKmQsDQo+ID4gPj4+PiBjaGFyICpvdXRf YnVmLCBzaXplX3QgYnVmX2xlbikNCj4gPiA+Pj4+ICAJcmV0dXJuIHVzZWQ7DQo+ID4gPj4+PiAg fQ0KPiA+ID4+Pj4NCj4gPiA+Pj4+ICtzdGF0aWMgYm9vbA0KPiA+ID4+Pj4gK2pzb25faXNfc3Bl Y2lhbF9jaGFyKGNoYXIgY2gpDQo+ID4gPj4+PiArew0KPiA+ID4+Pj4gKwlzdGF0aWMgdW5zaWdu ZWQgY2hhciBpc19zcGVjWzI1Nl0gPSB7IDAgfTsNCj4gPiA+Pj4+ICsJc3RhdGljIGJvb2wgaW5p dF9vbmNlOw0KPiA+ID4+Pj4gKw0KPiA+ID4+Pj4gKwlpZiAoIWluaXRfb25jZSkgew0KPiA+ID4+ Pj4gKwkJaXNfc3BlY1snXCInXSA9IDE7DQo+ID4gPj4+PiArCQlpc19zcGVjWydcXCddID0gMTsN Cj4gPiA+Pj4+ICsJCWlzX3NwZWNbJy8nXSA9IDE7DQo+ID4gPj4+PiArCQlpc19zcGVjWydcYidd ID0gMTsNCj4gPiA+Pj4+ICsJCWlzX3NwZWNbJ1xmJ10gPSAxOw0KPiA+ID4+Pj4gKwkJaXNfc3Bl Y1snXG4nXSA9IDE7DQo+ID4gPj4+PiArCQlpc19zcGVjWydcciddID0gMTsNCj4gPiA+Pj4+ICsJ CWlzX3NwZWNbJ1x0J10gPSAxOw0KPiA+ID4+Pj4gKwkJaW5pdF9vbmNlID0gdHJ1ZTsNCj4gPiA+ Pj4+ICsJfQ0KPiA+ID4+Pj4gKw0KPiA+ID4+Pj4gKwlyZXR1cm4gKGJvb2wpaXNfc3BlY1sodW5z aWduZWQgY2hhciljaF07IH0NCj4gPiA+Pg0KPiA+ID4+IEFjY29yZGluZyB0byB0aGUganNvbiBz cGVjIGF0IFsxXSwgdGhlIGNoYXJhY3RlcnMgdGhhdCBuZWVkIHRvIGJlDQo+ID4gZXNjYXBlZA0K PiA+ID4+IGFyZToNCj4gPiA+PiBhKSBhbnkgY2hhcmFjdGVycyA8MHgyMA0KPiA+ID4+IGIpIGlu dmVydGVkIGNvbW1hcy9xdW90ZSBjaGFyYWN0ZXIgXCINCj4gPiA+PiBjKSB0aGUgInJldmVyc2Ug c29saWR1cyBjaGFyYWN0ZXIiLCBiZXR0ZXIga25vd24gdG8geW91IGFuZCBJIGFzDQo+ID4gPj4g dGhlIGJhY2stc2xhc2guDQo+ID4gPj4NCj4gPiA+PiBUaGVyZWZvcmUsIEkgdGhpbmsgdGhpcyB0 YWJsZSBnZW5lcmF0aW9uIGNvdWxkIGJlIHNpbXBsaWZpZWQsIGJ1dA0KPiA+IGFsc28NCj4gPiA+ PiBleHBhbmRlZCB1c2luZyB0aGlzLiBGb3IgY29tcGxldGVuZXNzIHdlIHNob3VsZCBhbHNvIHNl ZSBhYm91dA0KPiA+IGhhbmRsaW5nIGFsbA0KPiA+ID4+IGNvbnRyb2wgY2hhcmFjdGVycyBpZiB0 aGV5IGFyZSBlbmNvdW50ZXJlZC4NCj4gPiA+Pg0KPiA+ID4+IFsxXSBodHRwczovL3d3dy5yZmMt ZWRpdG9yLm9yZy9yZmMvcmZjODI1OS50eHQNCj4gPiA+Pg0KPiA+ID4+IC9CcnVjZQ0KPiA+ID4N Cj4gPiA+IFNpbmNlIGl0IGlzIHRyaXZpYWwgY291bGQgYmUgaW5pdGlhbGl6ZXI/DQo+ID4gPg0K PiA+ID4gc3RhdGljIGNvbnN0IHVpbnQ4X3QgaXNfc3BlY1syNTZdID0gew0KPiA+ID4gICAgWzAg Li4uIDB4MjBdID0gMSwNCj4gPiA+ICAgIFsnXCInIF0gPSAxLA0KPiA+ID4gICAgWydcXCcgXSA9 IDEsDQo+ID4gPiAgICBbJy8nXSA9IDEsDQo+ID4gPg0KPiA+ID4gZXRjDQo+ID4gPg0KPiA+ID4g T3Igd2UgY291bGQgY2hhbmdlIHRoZSB0ZWxlbWV0cnkgQVBJIHRvIGRpc2FsbG93IGNvbnRyb2wg Y2hhcmFjdGVycz8NCj4gPg0KPiA+IEkgd2FzIHRoaW5raW5nIGFib3V0IGNvbnZlcnRpbmcgMH4w eDIwLCBidXQgSSBkb24ndCB0aGluayB0aGVyZSdzIGENCj4gPiBzY2VuYXJpby4NCj4gPg0KPiA+ IEkgcHJlZmVyIGNoYW5nZSB0aGUgdGVsZW1ldHJ5IEFQSSB0byBkaXNhbGxvdyBjb250cm9sIGNo YXJhY3RlcnMsIGFuZA0KPiA+IHRoaXMgbWF5IG5vdCBiZSBhIHZpb2xhdGlvbiBvZiB0aGUgQUJJ LCBpZiB5ZXMsIHRoZSBkcGRrLXRlbGVtZXRyeS5weQ0KPiA+IHdpbGwgcmV0dXJucyBhbiBlcnJv ci4NCj4gDQo+IEkgYWdyZWUgd2l0aCBDaGVuZ3dlbiBGZW5nLiBUaGUgdGVsZW1ldHJ5IGRhdGEg dHlwZSBpcyBTVFJJTkcsIG5vdCBCTE9CLg0KPiANCj4gU28gd2UgbmVlZCB0byBkZWZpbmUgZXhh Y3RseSB3aGF0IHRoZSBTVFJJTkcgdHlwZSBjb250YWlucy4NCj4gDQo+IEkgaG9wZSB3ZSBjYW4g YWxsIGFncmVlIHRoYXQgY29udHJvbCBjaGFyYWN0ZXJzIHNob3VsZCBiZSBkaXNhbGxvd2VkLg0K PiANCj4gVGhlIG1vcmUgY29tcGxpY2F0ZWQgcXVlc3Rpb24gaXM6IERvIHdlIHdhbnQgdG8gdXNl IHRoZSBBU0NJSSBjaGFyYWN0ZXIgc2V0DQo+IG9ubHksIG9yIGRvIHdlIHdhbnQgdG8gdXNlIFVU Ri04IGVuY29kZWQgVW5pY29kZT8NCj4gDQo+IFBlcnNvbmFsbHksIHRoaW5rIFVURi04IGVuY29k ZWQgVW5pY29kZSBpcyBtb3JlIGZ1dHVyZSBwcm9vZiwgYW5kIHdvdWxkDQo+IHZvdGUgZm9yIHRo YXQuDQo+IA0KPiBCdXQgSSB3b3VsZG4ndCByZWplY3QgbGltaXRpbmcgaXQgdG8gQVNDSUksIGFu ZCBwZXJoYXBzIGluIHRoZSBmdXR1cmUgaW50cm9kdWNlDQo+IGFub3RoZXIgZGF0YSB0eXBlIGZv ciBVVEYtOCBzdHJpbmdzLg0KPiANCj4gVVRGLTggaXMgdGhlIG1vZGVybiBjaG9pY2UsIGJ1dCBp dCBpcyBpbmNvbXBhdGlibGUgd2l0aCBvbGQgc3R1ZmYsIGUuZy4gbWFueQ0KPiBTTk1QIE1JQnMu DQo+IA0KW0NQXSANCg0KSnVzdCBmcm9tIGxvb2tpbmcgYXQgdGhlIHNwZWMgWzFdICwgSSB3b3Vs ZCBzYXkgVVRGLTgsIGFzIGl0IHNlZW1zIHRvIHN1Z2dlc3QgaXRzIHVzZSBmb3IgSlNPTiAoc2Vj dGlvbiA4LjEpLg0KDQpbMV0gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzgyNTku dHh0DQoNCj4gPg0KPiA+IFNvIEkgdGhpbmsgd2UgY291bGQgYWRkIGRlY2xhcmluZyBhbmQgY2hl Y2tpbmcgZnVuY3Rpb25zIHRvIG1ha2Ugc3VyZQ0KPiA+IHRlbGVtZXRyeSBzdHJpbmcgZG8gbm90 IGFsbG93IGNvbnRyb2wgY2hhcmFjdGVycy4NCltDUF0gDQoNCkkgYW0gbm90IHN1cmUgd2h5IHdl IGRvbid0IHdhbnQgdGhlc2UgYXQgYWxsIC0gSSB0aG91Z2h0IHdlIGRvIHdhbnQgc29tZSBvZiB0 aGVtLCBsaWtlIHRhYiAoXHUwMDA5KSBmb3IgZXhhbXBsZS4NCg0KPHNuaXA+DQoNCkluIGdlbmVy YWwsIEkgdGhpbmsgQnJ1Y2UncyBzdWdnZXN0aW9uIG9mIHVzaW5nIGEgY3VzdG9taXNlZCBwcmlu dGYgZnVuY3Rpb24gaW5zdGVhZCBvZiBzbnByaW50ZiB3b3VsZCBiZSBhIGdvb2Qgd2F5IGZvcndh cmQsIHRvIHNjYW4gdGhlIGNoYXJzIGFzIHRoZXkgYXJlIGJlaW5nIGNvcGllZCBpbi4NCg0KVGhh bmtzLA0KQ2lhcmENCg==