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 8CE7145E31; Wed, 4 Dec 2024 18:24:26 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 58C7A40A6D; Wed, 4 Dec 2024 18:24:26 +0100 (CET) Received: from alln-iport-3.cisco.com (alln-iport-3.cisco.com [173.37.142.90]) by mails.dpdk.org (Postfix) with ESMTP id 12EE9402EF for ; Wed, 4 Dec 2024 18:24:23 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=31705; q=dns/txt; s=iport; t=1733333064; x=1734542664; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=01EIWhHGLeeJTJVWrwXYaW74nvujwaUVnw6Yl4Y/N8I=; b=Pcs7zyqc/BRSUHar3W3/9lkihFLO8QB3r97GETvXf+UTdkL0vyiRn+Yc vUIR8y/OYWrRD2PoZmJ6yBR+9xbKd9REXZyV6waKUXQfEr71iR5B5b92B bwH15wMP9SC/e/QC/TJBQ7inVk6wMnNQ2eju9B0c1d43koms//5l4HyPC 0=; X-CSE-ConnectionGUID: 09rEKLWGRQCUxaaDS520ng== X-CSE-MsgGUID: zKZhPwQoRRKlr4QTdVoRSw== X-IPAS-Result: =?us-ascii?q?A0AiBgBhj1Bn/5UQJK1agS6BLoFBMSooB3aBHEiEVYNMA?= =?us-ascii?q?4UtiEUtA54YgSUDVg8BAQENAQE5CwQBAYUHAhaKUgImNAkOAQIEAQEBAQMCA?= =?us-ascii?q?wEBAQEBAQEBAQEBCwEBBQEBAQIBBwWBDhOFew2GWgEBAQEDEhFWEAIBCBEDA?= =?us-ascii?q?QIhBwMCAgIvFAkIAgQBDQUCAQEQBweCXwGCHEgDARCkIAGBQAKKK3qBMoEBh?= =?us-ascii?q?HvbHwaBSIhOASqBMgIOg3+EdycbgUlEgRUngwM+hGMWgyWCaQSCP4QcdiWFB?= =?us-ascii?q?jABgV6BA2iHMpUXUnUiAyYzIREBVRMXCwcFgSoRECwDgXpOf4E2gVEBQoEWg?= =?us-ascii?q?ThKIYMNgV4FNwo9OYIRaUs3Ag0CNoIkJFmCTYElBAWDaYELg16EWYJJXYMEg?= =?us-ascii?q?SUdQAIBC209NwYDCxsGoRUBCoEbAUaCXoFtEyyBRRUuNTqSQEImgzGLSaIqg?= =?us-ascii?q?T4KhBqMF5UyBg8EL6pRLphNIo1glVkBhSQCBAIEBQIPAQEGgWc8gVlwFYMiE?= =?us-ascii?q?kAZD49PAQGCSr59eAI6AgcBCgEBAwmRFgEB?= IronPort-PHdr: A9a23:QpnQ6xYZtIWmsZ5YQrfKwST/LTAchN3EVzX9orI9gL5IN6O78IunY QrU5O5mixnCWoCIo/5Hiu+Dq6n7QiRA+peOtnkebYZBHwEIk8QYngEsQYaFBET3IeSsbnkSF 8VZX1gj9Ha+WXU= IronPort-Data: A9a23:l6Tgma6X1keUwcyMd81syAxRtH3GchMFZxGqfqrLsTDasY5as4F+v mZOD2CAaK7YMDSnc99xYNmy9kMCscSEz9RlTwZq/iwwZn8b8sCt6fZ1gavT04J+CuWZESqLO u1HMoGowPgcFyGa/lH1dOC89RGQ7InQLpLkEunIJyttcgFtTSYlmHpLlvUw6mJSqYDR7zil5 5Wr+aUzBHf/g2QoazhMt/rZwP9SlK2aVA0w7wRWic9j5Dcyp1FNZLoDKKe4KWfPQ4U8NoaSW +bZwbilyXjS9hErB8nNuu6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTaJLwXXxqZwChxLid/ jniWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I0DuKxPRL/tS4E4eZdwC18VTPk50z NclODkEQive3bqwz+fuIgVsrpxLwMjDNYcbvDRkiDreF/tjGMqFSKTR7tge1zA17ixMNa+BP IxCN3w2MlKZP0wn1lQ/UPrSmM+yg3T7bzpegFmUvqEwpWPUyWSd1ZCxaISIK4PRFJg9ckCwt EH0/1zmOxYgDv+b02a8zn6SgdX0gnauMG4VPPjinhJwu3Wfy3I7BAUaVh28u/bRt6Klc9tbL 0pR/m8lqrI/sRXxCNL8RBa/5nWDu3bwRuZtLgHz0ynUooL86AeCDW9CRTlEAOHKfudvLdD2/ jdlR+/UOAE= IronPort-HdrOrdr: A9a23:gro+KKvNkm5Oz+bU04+2tWDE7skCNoAji2hC6mlwRA09TyXGrb HMoB1L73/JYWgqOU3IwerwRpVoIUmxyXZ0ibNhW4tKLzOWyVdATbsSorcKrAeQYREWmtQtsZ uINpIOd+EYbmIKw/oSgjPIburIqePvmMvH9IWuqkuFDzsaF52IhD0JczpzZ3cGPzWucqBJbK Z0iPA3wAaISDA8VOj+LH8DWOTIut3Mk7zbQTNuPXQawTjLpwmFrJrhHTal/jp2aV5yKLEZnl Ttokjc3OGOovu7whjT2yv49JJNgubszdNFGYilltUVAi+EsHfpWK1RH5m5+BwlquCm71gn1P PWpQ07Ash143TNOkmovBrW3RX62jpG0Q6g9bbYuwqgnSXKfkN/NyNzv/MfTvIf0TtngDhI6t MP44tejesPMfqPplWk2zGCbWAbqqP9mwtQrQdUtQ0fbWPbA4Uh97D2OyhuYcw99GiR0vFULM B+SM7b//pYalWccjTQuXRu2sWlWjApEg6BWVVqgL3e79F6pgEw86Ij/r1Vol4QsJYmD5VU7e XNNapl0LlIU88NdKp4QOMMW9G+BGDBSQ/FdDv6GyWqKIgXf3bW75Ln6rQ84++nPJQO0ZspgZ zEFFdVr3Q7dU7iAdCHmJdL7hfOSmOgWimF8LAS27Fp/rnnALb7OyyKT14j18OmvvUEG8XeH+ 2+PZpHasWTZFcG2bw5qTEWd6MiXkX2Cvdlz+rTc2j+1v72Fg== X-Talos-CUID: 9a23:XN6Al29+pyn0962bsvKVvxZFAO0GVkLy9k77Hl+xAEpSFefNT1DFrQ== X-Talos-MUID: =?us-ascii?q?9a23=3ASKPxqgzPyTXAmSXitcqml0VyglyaqLaNOkA1jqw?= =?us-ascii?q?BgfOnMTYsAguRsjONeZByfw=3D=3D?= X-IronPort-Anti-Spam-Filtered: true Received: from alln-l-core-12.cisco.com ([173.36.16.149]) by alln-iport-3.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 04 Dec 2024 17:24:22 +0000 Received: from rcdn-opgw-5.cisco.com (rcdn-opgw-5.cisco.com [72.163.7.169]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by alln-l-core-12.cisco.com (Postfix) with ESMTPS id 9228018000151 for ; Wed, 4 Dec 2024 17:24:22 +0000 (GMT) X-CSE-ConnectionGUID: 7rg5kBzTRoqiszHrehzqkg== X-CSE-MsgGUID: vfICkRnaSiWrhsihrc30yQ== Authentication-Results: rcdn-opgw-5.cisco.com; dkim=pass (signature verified) header.i=@cisco.com X-IronPort-AV: E=Sophos;i="6.12,208,1728950400"; d="scan'208,217";a="20085411" Received: from mail-mw2nam10lp2041.outbound.protection.outlook.com (HELO NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.41]) by rcdn-opgw-5.cisco.com with ESMTP/TLS/TLS_AES_256_GCM_SHA384; 04 Dec 2024 17:24:21 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=B16gXZBvKuoxZpxFE8Z1RDJVQJv3i/P3oh1F7C7dsl0WVHhBSBRv9Z3C2v1SP45meDet6ceVpfPkWuapYqYoFOAaq1UK6vVCpdy3gUmQFXP/2f2X03DxpqfXd97FtxCbrHbKiv1YKXhznghkQM3Ryy4copMJV5EOFlLdNCxDA9kq/79IVBrKo0dMwWkRlzBG6OCFWCB9juneAxZT8sZGt03BrUlJRoo6fWcLiIE046svvYcSZFTkXI4rZqKsYgotvr7tJLI3si/xYnZMBz473ZMc1VbNtmJ13wTnYA1RpHC2ZvrmHNOyv09uKmV0i5t1LCyyVcGJP1dVKmiaC+95cA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=01EIWhHGLeeJTJVWrwXYaW74nvujwaUVnw6Yl4Y/N8I=; b=Dv1uJp4hWswpgQM/0ZIMOqhm3F7D0+rOUrmSErEE+okPrWfxcZ/+sWF4k70PELaoJh60b9I48Rdkigao/OltDF0kZLAAijWYGmMOsmR52jQOgCLIMHgaCkUww1DMkr7jDpdZXpRoIjUV0emHDgXBH13Z97PHcpLp99NfJuKtbMU9AD5r5eDRlB7yxjS7X6bfRGdhQl8iZ8M7lNLk5WEf5yR6OQoTXeVATUNVTOuobhuUzT86rh8fbGWJ6XHrrMXxx3+Bc0uNHGAvYppGVvllWF/o+WmE8u8X7lrV1WoD2V6hIw+tBNL00btduY2DFpm00DhjjZr7wlYpRfcH2mqt/Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none Received: from DS0PR11MB8020.namprd11.prod.outlook.com (2603:10b6:8:114::9) by PH0PR11MB7494.namprd11.prod.outlook.com (2603:10b6:510:283::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8207.18; Wed, 4 Dec 2024 17:24:16 +0000 Received: from DS0PR11MB8020.namprd11.prod.outlook.com ([fe80::e344:845b:323a:6592]) by DS0PR11MB8020.namprd11.prod.outlook.com ([fe80::e344:845b:323a:6592%5]) with mapi id 15.20.8230.010; Wed, 4 Dec 2024 17:24:16 +0000 From: "Roger Melton (rmelton)" To: Ruifeng Wang , "dev@dpdk.org" CC: Wathsala Wathawana Vithanage , nd Subject: Re: lib/eal/arm/include/rte_vect.h fails to compile with clang14 for 32bit ARM Thread-Topic: lib/eal/arm/include/rte_vect.h fails to compile with clang14 for 32bit ARM Thread-Index: AQHbRPHWoV306N6XlEObXqQqG/JhMLLTupcAgAGE3ICAARlYgA== Date: Wed, 4 Dec 2024 17:24:16 +0000 Message-ID: References: <0da20131-67d8-4012-ba00-d777bf50a1f1@cisco.com> In-Reply-To: <0da20131-67d8-4012-ba00-d777bf50a1f1@cisco.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla Thunderbird x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DS0PR11MB8020:EE_|PH0PR11MB7494:EE_ x-ms-office365-filtering-correlation-id: d295bffe-6af5-453d-298a-08dd14887abf x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|376014|1800799024|366016|8096899003|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?WGlRcC9EZU5Wbm1SZnM5c1YvMnF5Q0pLV0xzYk03RURaWmdmL1k4SjQ2OFpG?= =?utf-8?B?eDZyNCtOUkRNeWpsN2ZINUFRYkhvbEh2U3l0bmJsV0pmbDFDajY2aUpiK0w0?= =?utf-8?B?L0VGQ3ErTDJBYUxtWDEwZGE0K09kMFo2M25qYWwwU3JKZnplT2ZFS3BDQWtG?= =?utf-8?B?R0FzZTVlcTFtcXowYXhzTHJrLytTWHJWYUxCRzlMUDBENHhLWVdSZzJ5NTJu?= =?utf-8?B?NWExVXlNYk03dkpzZnNCTVA4Z1locjZGdUhUNHVIbDBxVVFuVTZRUGowNW55?= =?utf-8?B?d3BpYlovTHJyejJqMkNZSjV1Wmc5enQ3ak8yVTdmKzYzTThoTDFKV1ZBbG82?= =?utf-8?B?Y2ZRYmNCSU04dk5mb3VOUDUxeXpPL0hoaG1yOVNyaWdmdFNySVNGRWVxRUcw?= =?utf-8?B?dnZDNVFKd0FpNGdzTWZ6Z2srT3hUMXNqL1l1VGNYMnZXdWRDc21xK0o2K1Fp?= =?utf-8?B?cDlFamlCUTBBSEJuUm9lRFVzRnlySnJsUWRLVjREUHg3RnpKZEJUZFJ6cDJl?= =?utf-8?B?QkhxNGpUNk9ha0kxOU9XUWxWeFlBUVkraWZweUJaS0hnWVl4WGpYSjEzb0RZ?= =?utf-8?B?RVEwQTMrcUJiMGNlaWRCd0ZXMzFBNHZZV1ZKQlV6TlVINEJaWFltSjZaYjho?= =?utf-8?B?VXpwL1lqcFpBS3I1c0JvWENKa0xCZW9PQnV1Ym13c3BLUEMyMzNoRVVmaDhv?= =?utf-8?B?T1NSa2VlREo5ZlN2RFZmWGk2Y0ZmSmhmVElpOU1IVXJURXR5RWFxSFdiVzRE?= =?utf-8?B?ZUNvdEZCZHpEcWRFWkR0dzlaa1BrcGNWaytnS1lEYkxmMGlweHg1WTZUK1J3?= =?utf-8?B?ajZqendROVlQZUdJTEdBdFNmVFJpUmFwa0lWemVXWldMZy8rV3ZtT3B4RmRh?= =?utf-8?B?cE10VjhNZGg4QVZmWFk0dnhINDZLY2FzZ3JvVDhBNkRnb1RyVDIyMjNMNnIy?= =?utf-8?B?SURmaFZlZ2U1Tk1hdHJBOU1JTmZYdUdZVXFiS2JOcFh1TWJVQkNiUWhrRi84?= =?utf-8?B?WTBGVkx2NE96aEcyVTJCMi8yTktWSWdDU0pWcjFQeFl3eDVQTGlpaGZ2eDd3?= =?utf-8?B?STZ0V3ArOWRSUno3Smw3UlJvQytXbUFWY3l6eGhjN0M5L1JLK21KSklGekRH?= =?utf-8?B?ZDVTUGRFdXRkaUw0UXoxUmpub3duUExJWFlPN3FJNkJKUHh0OHlrcFp0bnJX?= =?utf-8?B?MHM3WG9tZzZIaHZJUmhSZlBNaEVEV0dMaXBKOGgvNmx5NnhuRHhrdXFUTXBj?= =?utf-8?B?TDhnNGNpWDd2bW5NcXFOV3hDS01Ib09LSXVBQWFqZjBPNlNTUk1NRnBuS1ZD?= =?utf-8?B?ZG1kSUIyaDJ0MGJJVDY2TmRzRHlZNGJSOEV6N0habitPd2JZYm5xLzA5YUNu?= =?utf-8?B?eXVWUjlCb1lRSFFSSURDTk5keUd1ZktmS1lNbk1PZndHWjl2ZWowQ1FiMzdW?= =?utf-8?B?aHQzUysxYTc0ZkQzRzZTK09wUTRwRFpnTVUzckhZbzFISk1vTE4rZDN0R1R5?= =?utf-8?B?QVBOL21OWTdxNk9pTEkvNnB3b3VaYUJnNHhqUklxc2o1dktXcmdqNWJ0RjRB?= =?utf-8?B?VlkrWC9NU3pheDUxRjNycXZZSnhYRkpITzBqOVR4djNpQ013Ri9YTXJrdGdB?= =?utf-8?B?RE5vYXd4d2RodWhlYmluNjV0a0VHLzZBWkFuSmtOamFlck1RQmtqNmtvZ09E?= =?utf-8?B?aFF2YXFLdUVrSHdXUWlqQzVpTExiM2NHOFYxMlhmQ1dQUG83U0pXUTRqa0R6?= =?utf-8?B?VWNtTGlUOUhzYnNUNGhjUHpmTk5kRnY5Ti9LazA2dW45b1E2bkNYRGlmdUJ0?= =?utf-8?Q?Xk9Py9GhSJrFv2CWoz73PUGIZqarhXJ67u5oI=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DS0PR11MB8020.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(1800799024)(366016)(8096899003)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?QTdhUTQyMDhyYjB5QXBjTzdUNWUydzhFbkRoZ1VWS1FNRXBxWXZKaW5iVUdF?= =?utf-8?B?dUhQRnp0ZVBNbUxVeGc3NXVRa3Y4cnE4VWJMMDg0UU9tQXBHcGowdDgyZ1Np?= =?utf-8?B?NUo0dndnbWdCbmhrOTRtT3JsRjYxbUx1bHh5L2FtcUkyd3RGenFMeG9Qdlcr?= =?utf-8?B?eXhvVEI1TVkxOHc0TzFxR2hSbjBEaUVIUEdZVGh5WnBVeHY2YzFVMGlNUEZk?= =?utf-8?B?bUNEdnVMQWJtNlVlVmZNc0paVkNKcnJVNnQ2SlcyS1pLNVMzRndyK3FYSkQz?= =?utf-8?B?Z3g2dzA0anJjTWhjT25vRjE1a2hQOC9YVVphcWZjN0hVeW1xTzA2RXgzN2xW?= =?utf-8?B?Yzh4WmlJM0dJZEJlam5GTjFqSXV6T1QrQjhVVFF0V0REUURGMVBDL3BZU0hz?= =?utf-8?B?NWtyeXd2aWtXaWtpSUUwQ3Q2alVoMmFER29GVDUreDRVd05yK1dlVlFlL1lS?= =?utf-8?B?TzNRczQxZEQ4cUF2blNBczJqSW1SR3YvOC9uaC9kcUJEeDMvdXBrRmJmTEpQ?= =?utf-8?B?LzZ4RVRhNFVjVnQ5dHo4ckpHdmpxTUFneVBNTXRDYTdNVDRJN29aa3RTNWZz?= =?utf-8?B?N3N6Y0ZkQjM0QkNENHZPaVdLNlpmZzFSOTM1djZDTGYzdkVBMlF1T0sxSitj?= =?utf-8?B?UG5DOFpqSHl5ZFJBNDZhYm9yK0t0cVM5b0FRd0lhMEg2ZU83N293dXY2NE82?= =?utf-8?B?RXBoZmprQ0ZTREdmalJQditEY2YyYXh0T284dGFzbmh0eEsyYWJzbVdFSEFS?= =?utf-8?B?TVM3anh1RU9QREpZT3BJMVhMbmF3SzV6Y1dXRFY4c3NRbitCb2F3RDJYd0FF?= =?utf-8?B?ZjRsbjRGTU1WVm93TUJSVGZlL3p6bXpMWXBMY2UwRHUxdHdMVFZmN05xdE8r?= =?utf-8?B?enNTVmFuNEJaZE9pVEZSbGxBM3A3eVlkSDFJTkpHNTJwcTM4QzEyVmZKNFFY?= =?utf-8?B?SGpxMWpOVmxwc0pWTWtTU29ubWZrb2FveEFmRWpWRCt1YUVLQTRsaWlYMjg1?= =?utf-8?B?K052L28zYk03b3NSV1pFbHcyWk85bUJJRWtrOHJPMVlOcnJjM1kwSFFzd0tS?= =?utf-8?B?Z2VtYjRtMzFFSlpXRzJudW9OYXluVXRpR1FtcjJKeTBzQm9tbHhhM1dNNEVQ?= =?utf-8?B?cnBPa0xDNUR3U090RW1wdUhRY2VHanNBTjB6R3NKNlJHaUVWdXljR25weGVk?= =?utf-8?B?UXpsWDJSWmR3b1JSYUsrMkdqSFZjdmk1VmlJTTNia2FjUm96cjM4K1A1aVlk?= =?utf-8?B?d2w5K1ZEcTgyV1M3R0sva1d6Tk5Sa1lHSkplNkRKN1ptcS9BVkIvTS8vQ2RV?= =?utf-8?B?OVd5eklIbmtiRXFSU1I1ZmpNL09OdVVwWnFhdXJhQS9xc0NubUMwc0xlem9B?= =?utf-8?B?ZnM4OFlLNlFXRXloM2ptRWFQK0EwRkpXTEs1dmRRUkdkMmI3TEVoa0FrSm5D?= =?utf-8?B?TGRkMDRTYkJjVzkzUG1zWHRFckllbDdsaVBFWTg4czRXdXRORCtoT2d2QVdJ?= =?utf-8?B?cWE0dml0T2xpbDh2UFFGYnNiQXYyS3JHRWgrcFZsTHN0Uk9EYWxEb2krN1I4?= =?utf-8?B?NzQ2R0Y2Tm9lNG13YkE0Ujl6a3B1OFNUaEd3R214ekJ5akNyUjNUQjZOM01m?= =?utf-8?B?SnZndTJwZHVVYk5FbHN2dzRCZnFydE9XYThhZklYc3JTZlVtSURQRlkxYmxr?= =?utf-8?B?Tk5qUzM2K05NaW5HY1JJU0pld1ovamlrYzhvb1BieWg4OWpldWUrOS9XUEE1?= =?utf-8?B?TWl5K1QzQXR0UkVUNVBuVGNJQnFlaVpTa0tFNGRlOHRIR21iZ1dzelhlTzdV?= =?utf-8?B?N3VHVm04d054UnFKLzQ2M1B3YnBBRmJPdFdJR2JYSnhnYUV4SXRaWm1TaXRv?= =?utf-8?B?TXNmdjZGd3ZaS2xBK0tEa1pmU2xPQ2QvblhYY3FMakFSeTVORmpXOUthRDYx?= =?utf-8?B?NTVLYU1ZNE1DT0p2UUtSWUNwOTI5ME80SklSRGJaQzZ3VHBJV1hheHhlTEVm?= =?utf-8?B?S1lKdjllMXA2RDZZWGpZdjBvNTgxZWtDdmEzUnZBMWhRNzF6S2dLOG01Y2Ja?= =?utf-8?B?YlduWFlWVWVFMGZmS25URUtJQXdra1ZoOEZSZngzTStlcjBMbTRrYVI0Nmpq?= =?utf-8?Q?DunF/QIYrrwpbYFGajMESpEyl?= Content-Type: multipart/alternative; boundary="_000_afe49b7c2c8f4bb7ae1834ce7e77095aciscocom_" MIME-Version: 1.0 X-OriginatorOrg: cisco.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DS0PR11MB8020.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d295bffe-6af5-453d-298a-08dd14887abf X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Dec 2024 17:24:16.3693 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 1IOzzrdf4IuyzKjCVsk0c0cFXoqTrrJnIjmyAQUE8nBK9rglTb+LPmIm/1k3cDCRRgcw+gTBcftEJsCJkPEgNA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB7494 X-Outbound-SMTP-Client: 72.163.7.169, rcdn-opgw-5.cisco.com X-Outbound-Node: alln-l-core-12.cisco.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 --_000_afe49b7c2c8f4bb7ae1834ce7e77095aciscocom_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Q29uc2lkZXJpbmcgdGhpcyBwcm9ibGVtIGZ1cnRoZXIsIEkgZG9uJ3Qgc2VlIGEgd2F5IHRvIGF2 b2lkIHRoZSBDTEFORyBjb21waWxlciBlcnJvciB3aXRoIGEgZnVuY3Rpb24gaW1wbGVtZW50YXRp b24uICBXZSB3b3VsZCBuZWVkIGEgbWFjcm8gaW1wbGVtZW50YXRpb24gc2ltaWxhciB0byBDTEFO R1MgYXJtX25lb24uaC4gIEluIGFkZGl0aW9uLCBpdCBtYXkgYmUgbmVjZXNzYXJ5IHRvIHByb3Zp ZGUgc2VwYXJhdGUgaW1wbGVtZW50YXRpb25zIGZvciBDTEFORyBhbmQgbm9uLUNMQU5HIGNvbXBp bGVycyBzaW5jZSB0aGUgYnVpbHRpbnMgYmV0d2VlbiB0aGUgdG9vbGNoYWlucyBhcmUgZGlmZmVy ZW50LiAgT25lIHdheSB0byBhZGRyZXNzIHRoaXMgd291bGQgYmUga2VlcCB0aGUgZXhpc3Rpbmcg ZnVuY3Rpb24gaW1wbGVtZW50YXRpb24sIGFuZCBhZGQgYSBuZXcgbWFjcm8gaW1wbGVtZW50YXRp b24gZm9yIENMQU5HLg0KDQpGb3IgZXhhbXBsZSwgc29tZXRoaW5nIGxpa2U6DQoNCg0KI2lmICFk ZWZpbmVkKFJURV9DQ19DTEFORykNCiNpZiAoZGVmaW5lZChSVEVfQVJDSF9BUk0pICYmIGRlZmlu ZWQoUlRFX0FSQ0hfMzIpKSB8fCBcDQooZGVmaW5lZChSVEVfQVJDSF9BUk02NCkgJiYgUlRFX0ND X0lTX0dOVSAmJiAoR0NDX1ZFUlNJT04gPCA3MDAwMCkpDQovKiBORU9OIGludHJpbnNpYyB2Y29w eXFfbGFuZXFfdTMyKCkgaXMgbm90IHN1cHBvcnRlZCBpbiBBUk12Ny1BKEFBcmNoMzIpDQogKiBP biBBQXJjaDY0LCB0aGlzIGludHJpbnNpYyBpcyBzdXBwb3J0ZWQgc2luY2UgR0NDIHZlcnNpb24g Ny4NCiAqLw0Kc3RhdGljIGlubGluZSB1aW50MzJ4NF90DQp2Y29weXFfbGFuZXFfdTMyKHVpbnQz Mng0X3QgYSwgY29uc3QgaW50IGxhbmVfYSwNCiAgICAgICAgIHVpbnQzMng0X3QgYiwgY29uc3Qg aW50IGxhbmVfYikNCnsNCiAgICByZXR1cm4gdnNldHFfbGFuZV91MzIodmdldHFfbGFuZV91MzIo YiwgbGFuZV9iKSwgYSwgbGFuZV9hKTsNCn0NCiNlbmRpZg0KI2Vsc2UNCiNpZiBkZWZpbmVkKFJU RV9BUkNIX0FSTSkgJiYgZGVmaW5lZChSVEVfQVJDSF8zMikNCi8qIE5FT04gaW50cmluc2ljIHZj b3B5cV9sYW5lcV91MzIoKSBpcyBub3Qgc3VwcG9ydGVkIGluIEFSTXY3LUEoQUFyY2gzMikNCiAq IE9uIEFBcmNoNjQsIHRoaXMgaW50cmluc2ljIGlzIHN1cHBvcnRlZA0KICovDQojaWZkZWYgTElU VExFX0VORElBTg0KI2RlZmluZSB2Y29weXFfbGFuZXFfdTMyKF9fYXJnMSwgX19hcmcyLCBfX2Fy ZzMsIF9fYXJnNCkgX19leHRlbnNpb25fXyAoeyBcDQogIHVpbnQzMng0X3QgX19yZXQ7IFwNCiAg dWludDMyeDRfdCBfX2xjbF9hcmcxID0gX19hcmcxOyBcDQogIHVpbnQzMng0X3QgX19sY2xfYXJn MyA9IF9fYXJnMzsgXA0KICBfX3JldCA9IHZzZXRxX2xhbmVfdTMyKHZnZXRxX2xhbmVfdTMyKF9f bGNsX2FyZzMsIF9fYXJnNCksIF9fbGNsX2FyZzEsIF9fYXJnMik7IFwNCiAgX19yZXQ7IFwNCn0p DQojZWxzZQ0KI2RlZmluZSBfX25vc3dhcF92c2V0cV9sYW5lX3UzMihfX2FyZzEsIF9fYXJnMiwg X19hcmczKSBfX2V4dGVuc2lvbl9fICh7IFwNCiAgdWludDMyeDRfdCBfX3JldDsgXA0KICB1aW50 MzJfdCBfX2xjbF9hcmcxID0gX19hcmcxOyBcDQogIHVpbnQzMng0X3QgX19sY2xfYXJnMiA9IF9f YXJnMjsgXA0KICBfX3JldCA9ICh1aW50MzJ4NF90KSBfX2J1aWx0aW5fbmVvbl92c2V0cV9sYW5l X2kzMihfX2xjbF9hcmcxLCAoaW50MzJ4NF90KV9fbGNsX2FyZzIsIF9fYXJnMyk7IFwNCiAgX19y ZXQ7IFwNCn0pDQojZGVmaW5lIF9fbm9zd2FwX3ZnZXRxX2xhbmVfdTMyKF9fYXJnMSwgX19hcmcy KSBfX2V4dGVuc2lvbl9fICh7IFwNCiAgdWludDMyX3QgX19yZXQ7IFwNCiAgdWludDMyeDRfdCBf X2xjbF9hcmcxID0gX19hcmcxOyBcDQogIF9fcmV0ID0gKHVpbnQzMl90KSBfX2J1aWx0aW5fbmVv bl92Z2V0cV9sYW5lX2kzMigoaW50MzJ4NF90KV9fbGNsX2FyZzEsIF9fYXJnMik7IFwNCiAgX19y ZXQ7IFwNCn0pDQojZGVmaW5lIHZjb3B5cV9sYW5lcV91MzIoX19hcmcxLCBfX2FyZzIsIF9fYXJn MywgX19hcmc0KSBfX2V4dGVuc2lvbl9fICh7IFwNCiAgdWludDMyeDRfdCBfX3JldDsgXA0KICB1 aW50MzJ4NF90IF9fbGNsX2FyZzEgPSBfX2FyZzE7IFwNCiAgdWludDMyeDRfdCBfX2xjbF9hcmcz ID0gX19hcmczOyBcDQogIHVpbnQzMng0X3QgX19yZXYxOyBcDQogIHVpbnQzMng0X3QgX19yZXYz OyBcDQogIF9fcmV2MSA9IF9fYnVpbHRpbl9zaHVmZmxldmVjdG9yKF9fbGNsX2FyZzEsIF9fbGNs X2FyZzEsIDMsIDIsIDEsIDApOyBcDQogIF9fcmV2MyA9IF9fYnVpbHRpbl9zaHVmZmxldmVjdG9y KF9fbGNsX2FyZzMsIF9fbGNsX2FyZzMsIDMsIDIsIDEsIDApOyBcDQogIF9fcmV0ID0gX19ub3N3 YXBfdnNldHFfbGFuZV91MzIoX19ub3N3YXBfdmdldHFfbGFuZV91MzIoX19yZXYzLCBfX2FyZzQp LCBfX3JldjEsIF9fYXJnMik7IFwNCiAgX19yZXQgPSBfX2J1aWx0aW5fc2h1ZmZsZXZlY3Rvcihf X3JldCwgX19yZXQsIDMsIDIsIDEsIDApOyBcDQogIF9fcmV0OyBcDQp9KQ0KI2VuZGlmDQojZW5k aWYNCiNlbmRpZg0KDQpOT1RFMTogIEkgc2F3IG5vIHJlYXNvbiB0aGUgQ0xBTkcgYXJtX25lb24u aCBBQVJDSDY0IG1hY3JvcyB3b3VsZCBub3Qgd29yayBmb3IgQUFSQ0gzMiwgc28gdGhlIG1hY3Jv cyBpbiB0aGlzIHNhbXBsZSBpbXBsZW1lbnRhdGlvbiBhcmUgY29waWVzIENMQU5HIG9yaWdpbmFs cyBtb2RpZmllZCBmb3IgKG15KSByZWFkYWJpbGl0eS4gIEknbSBub3QgYW4gYXR0b3JuZXksIGJ1 dCBpZiB1c2VkLCBpdCBtYXkgYmUgbmVjZXNzYXJ5IHRvIGluY2x1ZGUgdGhlIGJhbm5lciBmcm9t IHRoZSBDTEFORyBhcm1fbmVvbi5oLg0KDQpOT1RFMjogV2hpbGUgSSBjYW4gYnVpbGQgdGhlIENM QU5HIEFSTSBpbXBsZW1lbnRhdGlvbiwgSSBsYWNrIHRoZSBoYXJkd2FyZSB0byB0ZXN0IGl0Lg0K DQpSZWdhcmRzLA0KUm9nZXINCg0KT24gMTIvMy8yNCA3OjM3IFBNLCBSb2dlciBNZWx0b24gKHJt ZWx0b24pIHdyb3RlOg0KQWZ0ZXIgbG9va2luZyBhdCB0aGlzIGEgYml0IGNsb3NlciB0b2RheSwg SSByZWFsaXplIHRoYXQgbXkgYXNzZXJ0aW9uIHRoYXQgQ0xBTkcxNCBkb2VzIHN1cHBvcnQgdmNv cHlxX2xhbmVxX3UzMigpIGZvciAzMmJpdCBBUk0gd2FzIGluY29ycmVjdC4gIEl0IGRvZXMgbm90 LiAgVGhlIHJlYXNvbiB0aGF0IGRpc2FibGluZyB0aGUgaW1wbGVtZW50YXRpb24gaW4gcnRlX3Zl Y3QuaCB3b3JrcyBmb3Igb3VyIGNsYW5nIGJ1aWxkcyBpcyB0aGF0IHdlIGRvIG5vdCBidWlsZCB0 aGUgbDNmd2QgYXBwIG5vciB0aGUgaXhnYmUgUE1EIGZvciBvdXIgYXBwbGljYXRpb24sIGFuZCB0 aGV5IGFyZSB0aGUgb25seSBsaWJyYXJpZXMgdGhhdCByZWZlcmVuY2UgdGhhdCBmdW5jdGlvbi4N Cg0KVGhlIGNsYW5nIGNvbXBpbGUgZXJyb3JzIGFwcGVhciB0byBiZSByZWxhdGVkIHRvIGhvdyBj bGFuZyBoYW5kbGVzIGNvbXBpbGUgdGltZSBjb25zdGFudHMsIGJ1dCBJJ20gYW0gYWdhaW4gdW5z dXJlIGhvdyB0byByZXNvbHZlIHRoZW0gaW4gYSB3YXkgdGhhdCB3b3VsZCB3b3JrIGZvciBib3Ro IEdOVSBhbmQgY2xhbmcuDQoNCkFueSBzdWdnZXN0aW9ucz8NCg0KUmVnYXJkcywNClJvZ2VyDQoN Cg0KT24gMTIvMi8yNCA4OjI2IFBNLCBSdWlmZW5nIFdhbmcgd3JvdGU6DQorQXJtIGZvbGtzLg0K DQpGcm9tOiBSb2dlciBNZWx0b24gKHJtZWx0b24pIDxybWVsdG9uQGNpc2NvLmNvbT48bWFpbHRv OnJtZWx0b25AY2lzY28uY29tPg0KRGF0ZTogVHVlc2RheSwgRGVjZW1iZXIgMywgMjAyNCBhdCAz OjM54oCvQU0NClRvOiBkZXZAZHBkay5vcmc8bWFpbHRvOmRldkBkcGRrLm9yZz4gPGRldkBkcGRr Lm9yZz48bWFpbHRvOmRldkBkcGRrLm9yZz4sIFJ1aWZlbmcgV2FuZyA8UnVpZmVuZy5XYW5nQGFy bS5jb20+PG1haWx0bzpSdWlmZW5nLldhbmdAYXJtLmNvbT4NClN1YmplY3Q6IGxpYi9lYWwvYXJt L2luY2x1ZGUvcnRlX3ZlY3QuaCBmYWlscyB0byBjb21waWxlIHdpdGggY2xhbmcxNCBmb3IgMzJi aXQgQVJNDQoNCkhleSBmb2xrcywNCldlIGFyZSBidWlsZGluZyBEUERLIHdpdGggY2xhbmcxNCBm b3IgYSAzMmJpdCBhcm12OC1hIGJhc2VkIENQVSBhbmQgcmFuIGludG8gYSBjb21waWxlIGVycm9y IHdpdGggdGhlIGZvbGxvd2luZyBmcm9tIGxpYi9lYWwvYXJtL2luY2x1ZGUvcnRlX3ZlY3QuaDoN Cg0KDQoNCiNpZiAoZGVmaW5lZChSVEVfQVJDSF9BUk0pICYmIGRlZmluZWQoUlRFX0FSQ0hfMzIp KSB8fCBcDQoNCihkZWZpbmVkKFJURV9BUkNIX0FSTTY0KSAmJiBSVEVfQ0NfSVNfR05VPGh0dHBz Oi8vZWxpeGlyLmJvb3RsaW4uY29tL2RwZGsvdjI0LjExL0MvaWRlbnQvUlRFX0NDX0lTX0dOVT4g JiYgKEdDQ19WRVJTSU9OPGh0dHBzOi8vZWxpeGlyLmJvb3RsaW4uY29tL2RwZGsvdjI0LjExL0Mv aWRlbnQvR0NDX1ZFUlNJT04+IDwgNzAwMDApKQ0KDQovKiBORU9OIGludHJpbnNpYyB2Y29weXFf bGFuZXFfdTMyKCkgaXMgbm90IHN1cHBvcnRlZCBpbiBBUk12Ny1BKEFBcmNoMzIpDQoNCiAqIE9u IEFBcmNoNjQsIHRoaXMgaW50cmluc2ljIGlzIHN1cHBvcnRlZCBzaW5jZSBHQ0MgdmVyc2lvbiA3 Lg0KDQogKi8NCg0Kc3RhdGljIGlubGluZSB1aW50MzJ4NF90DQoNCnZjb3B5cV9sYW5lcV91MzI8 aHR0cHM6Ly9lbGl4aXIuYm9vdGxpbi5jb20vZHBkay92MjQuMTEvQy9pZGVudC92Y29weXFfbGFu ZXFfdTMyPih1aW50MzJ4NF90IGEsIGNvbnN0IGludCBsYW5lX2EsDQoNCiAgICAgICAgICB1aW50 MzJ4NF90IGIsIGNvbnN0IGludCBsYW5lX2IpDQoNCnsNCg0KICByZXR1cm4gdnNldHFfbGFuZV91 MzIodmdldHFfbGFuZV91MzIoYiwgbGFuZV9iKSwgYSwgbGFuZV9hKTsNCg0KfQ0KDQojZW5kaWYN Cg0KY2xhbmcxNCBjb21waWxlIGZhaWxzIGFzIGZvbGxvd3M6DQoNCkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAuLi8uLi8uLi8uLi8uLi8uLi9jaXNjby1kcGRrLXVwc3RyZWFtLWFybS1jbGFuZy1maXhl cy5naXQvbGliL2VhbC9jb21tb24vZWFsX2NvbW1vbl9vcHRpb25zLmM6MzY6DQouLi8uLi8uLi8u Li8uLi8uLi9jaXNjby1kcGRrLXVwc3RyZWFtLWFybS1jbGFuZy1maXhlcy5naXQvbGliL2VhbC9h cm0vaW5jbHVkZS9ydGVfdmVjdC5oOjgwOjI0OiBlcnJvcjogYXJndW1lbnQgdG8gJ19fYnVpbHRp bl9uZW9uX3ZnZXRxX2xhbmVfaTMyJyBtdXN0IGJlIGEgY29uc3RhbnQgaW50ZWdlcg0KcmV0dXJu IHZzZXRxX2xhbmVfdTMyKHZnZXRxX2xhbmVfdTMyKGIsIGxhbmVfYiksIGEsIGxhbmVfYSk7DQpe IH5+fn5+fg0KL2F1dG8vYmlub3MtdG9vbHMvbGx2bTE0L2xsdm0tMTQuMC1wMjQvbGliL2NsYW5n LzE0LjAuNS9pbmNsdWRlL2FybV9uZW9uLmg6NzY5NzoyMjogbm90ZTogZXhwYW5kZWQgZnJvbSBt YWNybyAndmdldHFfbGFuZV91MzInDQpfX3JldCA9ICh1aW50MzJfdCkgX19idWlsdGluX25lb25f dmdldHFfbGFuZV9pMzIoKGludDMyeDRfdClfX3MwLCBfX3AxKTsgXA0KXiB+fn5+DQovYXV0by9i aW5vcy10b29scy9sbHZtMTQvbGx2bS0xNC4wLXAyNC9saWIvY2xhbmcvMTQuMC41L2luY2x1ZGUv YXJtX25lb24uaDoyNDE0ODoxOTogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndnNldHFfbGFu ZV91MzInDQp1aW50MzJfdCBfX3MwID0gX19wMDsgXA0KXn5+fg0KSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC4uLy4uLy4uLy4uLy4uLy4uL2Npc2NvLWRwZGstdXBzdHJlYW0tYXJtLWNsYW5nLWZpeGVz LmdpdC9saWIvZWFsL2NvbW1vbi9lYWxfY29tbW9uX29wdGlvbnMuYzozNjoNCi4uLy4uLy4uLy4u Ly4uLy4uL2Npc2NvLWRwZGstdXBzdHJlYW0tYXJtLWNsYW5nLWZpeGVzLmdpdC9saWIvZWFsL2Fy bS9pbmNsdWRlL3J0ZV92ZWN0Lmg6ODA6OTogZXJyb3I6IGFyZ3VtZW50IHRvICdfX2J1aWx0aW5f bmVvbl92c2V0cV9sYW5lX2kzMicgbXVzdCBiZSBhIGNvbnN0YW50IGludGVnZXINCnJldHVybiB2 c2V0cV9sYW5lX3UzMih2Z2V0cV9sYW5lX3UzMihiLCBsYW5lX2IpLCBhLCBsYW5lX2EpOw0KXiB+ fn5+fn4NCi9hdXRvL2Jpbm9zLXRvb2xzL2xsdm0xNC9sbHZtLTE0LjAtcDI0L2xpYi9jbGFuZy8x NC4wLjUvaW5jbHVkZS9hcm1fbmVvbi5oOjI0MTUwOjI0OiBub3RlOiBleHBhbmRlZCBmcm9tIG1h Y3JvICd2c2V0cV9sYW5lX3UzMicNCl9fcmV0ID0gKHVpbnQzMng0X3QpIF9fYnVpbHRpbl9uZW9u X3ZzZXRxX2xhbmVfaTMyKF9fczAsIChpbnQzMng0X3QpX19zMSwgX19wMik7IFwNCl4gfn5+fg0K MiBlcnJvcnMgZ2VuZXJhdGVkLg0KDQoNCg0KY2xhbmcxNCBkb2VzIGFwcGVhciB0byBzdXBwb3J0 IHRoZSB2Y29weXFfbGFuZXFfdTMyKCkgaW50cmluc2ljLCBzMCB3ZSB3YW50IHRvIHNraXAgdGhl IGNvbmRpdGlvbmFsIGltcGxlbWVudGF0aW9uLg0KDQpUd28gYXBwcm9hY2hlcyBJIGhhdmUgdGVz dGVkIHRvIHJlc29sdmUgdGhlIGVycm9yIGFyZToNCg0KMSkgc2tpcCBpZiBidWlsZGluZyB3aXRo IGNsYW5nOg0KDQojaWYgIWRlZmluZWQoX19jbGFuZ19fKSAmJiAoKGRlZmluZWQoUlRFX0FSQ0hf QVJNKSAmJiBkZWZpbmVkKFJURV9BUkNIXzMyKSkgfHwgXA0KNzIgKGRlZmluZWQoUlRFX0FSQ0hf QVJNNjQpICYmIFJURV9DQ19JU19HTlUgJiYgKEdDQ19WRVJTSU9OIDwgNzAwMDApKSkNCg0KDQoy KSBza2lwIGlmIG5vdCBidWlsZGluZyBmb3IgQVJNdjc6DQoNCg0KI2lmIChkZWZpbmVkKFJURV9B UkNIX0FSTXY3KSAmJiBkZWZpbmVkKFJURV9BUkNIXzMyKSkgfHwgXA0KKGRlZmluZWQoUlRFX0FS Q0hfQVJNNjQpICYmIFJURV9DQ19JU19HTlUgJiYgKEdDQ19WRVJTSU9OIDwgNzAwMDApKQ0KDQoN CkJvdGggYWRkcmVzcyBvdXIgaW1tZWRpYXRlIHByb2JsZW0sIGJ1dCBtYXkgbm90IGJlIGEgYXBw cm9wcmlhdGUgZm9yIGFsbCBjYXNlcy4NCg0KQ2FuIGFueW9uZSBzdWdnZXN0IHRoZSBwcm9wZXIg d2F5IHRvIGFkZHJlc3MgdGhpcz8gIEknbGwgYmUgc3VibWl0dGluZyBhbiBwYXRjaCBvbmNlIEkg aGF2ZSBhIHNvbHV0aW9uIHRoYXQgaXMgYWNjZXB0YWJsZSB0byB0aGUgY29tbXVuaXR5Lg0KUmVn YXJkcywNClJvZ2VyDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQo= --_000_afe49b7c2c8f4bb7ae1834ce7e77095aciscocom_ Content-Type: text/html; charset="utf-8" Content-ID: <2158027489C0284FBE7DB37B52543616@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVu dC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPC9oZWFkPg0KPGJv ZHk+DQo8ZGl2IGNsYXNzPSJtb3otY2l0ZS1wcmVmaXgiPg0KPGRpdiBjbGFzcz0ibW96LWNpdGUt cHJlZml4Ij5Db25zaWRlcmluZyB0aGlzIHByb2JsZW0gZnVydGhlciwgSSBkb24ndCBzZWUgYSB3 YXkgdG8gYXZvaWQgdGhlIENMQU5HIGNvbXBpbGVyIGVycm9yIHdpdGggYSBmdW5jdGlvbiBpbXBs ZW1lbnRhdGlvbi4mbmJzcDsgV2Ugd291bGQgbmVlZCBhIG1hY3JvIGltcGxlbWVudGF0aW9uIHNp bWlsYXIgdG8gQ0xBTkdTIGFybV9uZW9uLmguJm5ic3A7IEluIGFkZGl0aW9uLCBpdCBtYXkgYmUg bmVjZXNzYXJ5IHRvIHByb3ZpZGUNCiBzZXBhcmF0ZSBpbXBsZW1lbnRhdGlvbnMgZm9yIENMQU5H IGFuZCBub24tQ0xBTkcgY29tcGlsZXJzIHNpbmNlIHRoZSBidWlsdGlucyBiZXR3ZWVuIHRoZSB0 b29sY2hhaW5zIGFyZSBkaWZmZXJlbnQuJm5ic3A7IE9uZSB3YXkgdG8gYWRkcmVzcyB0aGlzIHdv dWxkIGJlIGtlZXAgdGhlIGV4aXN0aW5nIGZ1bmN0aW9uIGltcGxlbWVudGF0aW9uLCBhbmQgYWRk IGEgbmV3IG1hY3JvIGltcGxlbWVudGF0aW9uIGZvciBDTEFORy4mbmJzcDsNCjwvZGl2Pg0KPGRp diBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1j aXRlLXByZWZpeCI+Rm9yIGV4YW1wbGUsIHNvbWV0aGluZyBsaWtlOjwvZGl2Pg0KPGRpdiBjbGFz cz0ibW96LWNpdGUtcHJlZml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1jaXRlLXBy ZWZpeCI+PGJyPg0KPGJsb2NrcXVvdGU+PGZvbnQgZmFjZT0ibW9ub3NwYWNlIj4jaWYgIWRlZmlu ZWQoUlRFX0NDX0NMQU5HKTxicj4NCiNpZiAoZGVmaW5lZChSVEVfQVJDSF9BUk0pICZhbXA7JmFt cDsgZGVmaW5lZChSVEVfQVJDSF8zMikpIHx8IFw8YnI+DQooZGVmaW5lZChSVEVfQVJDSF9BUk02 NCkgJmFtcDsmYW1wOyBSVEVfQ0NfSVNfR05VICZhbXA7JmFtcDsgKEdDQ19WRVJTSU9OICZsdDsg NzAwMDApKTxicj4NCi8qIE5FT04gaW50cmluc2ljIHZjb3B5cV9sYW5lcV91MzIoKSBpcyBub3Qg c3VwcG9ydGVkIGluIEFSTXY3LUEoQUFyY2gzMik8YnI+DQombmJzcDsqIE9uIEFBcmNoNjQsIHRo aXMgaW50cmluc2ljIGlzIHN1cHBvcnRlZCBzaW5jZSBHQ0MgdmVyc2lvbiA3Ljxicj4NCiZuYnNw OyovPGJyPg0Kc3RhdGljIGlubGluZSB1aW50MzJ4NF90PGJyPg0KdmNvcHlxX2xhbmVxX3UzMih1 aW50MzJ4NF90IGEsIGNvbnN0IGludCBsYW5lX2EsPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHVpbnQzMng0X3QgYiwgY29uc3QgaW50IGxhbmVf Yik8YnI+DQp7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiB2c2V0cV9sYW5lX3UzMih2 Z2V0cV9sYW5lX3UzMihiLCBsYW5lX2IpLCBhLCBsYW5lX2EpOzxicj4NCn08YnI+DQojZW5kaWY8 YnI+DQojZWxzZTxicj4NCiNpZiBkZWZpbmVkKFJURV9BUkNIX0FSTSkgJmFtcDsmYW1wOyBkZWZp bmVkKFJURV9BUkNIXzMyKTxicj4NCi8qIE5FT04gaW50cmluc2ljIHZjb3B5cV9sYW5lcV91MzIo KSBpcyBub3Qgc3VwcG9ydGVkIGluIEFSTXY3LUEoQUFyY2gzMik8YnI+DQombmJzcDsqIE9uIEFB cmNoNjQsIHRoaXMgaW50cmluc2ljIGlzIHN1cHBvcnRlZDxicj4NCiZuYnNwOyovPGJyPg0KI2lm ZGVmIExJVFRMRV9FTkRJQU48YnI+DQojZGVmaW5lIHZjb3B5cV9sYW5lcV91MzIoX19hcmcxLCBf X2FyZzIsIF9fYXJnMywgX19hcmc0KSBfX2V4dGVuc2lvbl9fICh7IFw8YnI+DQombmJzcDsgdWlu dDMyeDRfdCBfX3JldDsgXDxicj4NCiZuYnNwOyB1aW50MzJ4NF90IF9fbGNsX2FyZzEgPSBfX2Fy ZzE7IFw8YnI+DQombmJzcDsgdWludDMyeDRfdCBfX2xjbF9hcmczID0gX19hcmczOyBcPGJyPg0K Jm5ic3A7IF9fcmV0ID0gdnNldHFfbGFuZV91MzIodmdldHFfbGFuZV91MzIoX19sY2xfYXJnMywg X19hcmc0KSwgX19sY2xfYXJnMSwgX19hcmcyKTsgXDxicj4NCiZuYnNwOyBfX3JldDsgXDxicj4N Cn0pPGJyPg0KI2Vsc2U8YnI+DQojZGVmaW5lIF9fbm9zd2FwX3ZzZXRxX2xhbmVfdTMyKF9fYXJn MSwgX19hcmcyLCBfX2FyZzMpIF9fZXh0ZW5zaW9uX18gKHsgXDxicj4NCiZuYnNwOyB1aW50MzJ4 NF90IF9fcmV0OyBcPGJyPg0KJm5ic3A7IHVpbnQzMl90IF9fbGNsX2FyZzEgPSBfX2FyZzE7IFw8 YnI+DQombmJzcDsgdWludDMyeDRfdCBfX2xjbF9hcmcyID0gX19hcmcyOyBcPGJyPg0KJm5ic3A7 IF9fcmV0ID0gKHVpbnQzMng0X3QpIF9fYnVpbHRpbl9uZW9uX3ZzZXRxX2xhbmVfaTMyKF9fbGNs X2FyZzEsIChpbnQzMng0X3QpX19sY2xfYXJnMiwgX19hcmczKTsgXDxicj4NCiZuYnNwOyBfX3Jl dDsgXDxicj4NCn0pPGJyPg0KI2RlZmluZSBfX25vc3dhcF92Z2V0cV9sYW5lX3UzMihfX2FyZzEs IF9fYXJnMikgX19leHRlbnNpb25fXyAoeyBcPGJyPg0KJm5ic3A7IHVpbnQzMl90IF9fcmV0OyBc PGJyPg0KJm5ic3A7IHVpbnQzMng0X3QgX19sY2xfYXJnMSA9IF9fYXJnMTsgXDxicj4NCiZuYnNw OyBfX3JldCA9ICh1aW50MzJfdCkgX19idWlsdGluX25lb25fdmdldHFfbGFuZV9pMzIoKGludDMy eDRfdClfX2xjbF9hcmcxLCBfX2FyZzIpOyBcPGJyPg0KJm5ic3A7IF9fcmV0OyBcPGJyPg0KfSk8 YnI+DQojZGVmaW5lIHZjb3B5cV9sYW5lcV91MzIoX19hcmcxLCBfX2FyZzIsIF9fYXJnMywgX19h cmc0KSBfX2V4dGVuc2lvbl9fICh7IFw8YnI+DQombmJzcDsgdWludDMyeDRfdCBfX3JldDsgXDxi cj4NCiZuYnNwOyB1aW50MzJ4NF90IF9fbGNsX2FyZzEgPSBfX2FyZzE7IFw8YnI+DQombmJzcDsg dWludDMyeDRfdCBfX2xjbF9hcmczID0gX19hcmczOyBcPGJyPg0KJm5ic3A7IHVpbnQzMng0X3Qg X19yZXYxOyBcPGJyPg0KJm5ic3A7IHVpbnQzMng0X3QgX19yZXYzOyBcPGJyPg0KJm5ic3A7IF9f cmV2MSA9IF9fYnVpbHRpbl9zaHVmZmxldmVjdG9yKF9fbGNsX2FyZzEsIF9fbGNsX2FyZzEsIDMs IDIsIDEsIDApOyBcPGJyPg0KJm5ic3A7IF9fcmV2MyA9IF9fYnVpbHRpbl9zaHVmZmxldmVjdG9y KF9fbGNsX2FyZzMsIF9fbGNsX2FyZzMsIDMsIDIsIDEsIDApOyBcPGJyPg0KJm5ic3A7IF9fcmV0 ID0gX19ub3N3YXBfdnNldHFfbGFuZV91MzIoX19ub3N3YXBfdmdldHFfbGFuZV91MzIoX19yZXYz LCBfX2FyZzQpLCBfX3JldjEsIF9fYXJnMik7IFw8YnI+DQombmJzcDsgX19yZXQgPSBfX2J1aWx0 aW5fc2h1ZmZsZXZlY3RvcihfX3JldCwgX19yZXQsIDMsIDIsIDEsIDApOyBcPGJyPg0KJm5ic3A7 IF9fcmV0OyBcPGJyPg0KfSk8YnI+DQojZW5kaWY8YnI+DQojZW5kaWY8YnI+DQojZW5kaWYgPC9m b250Pjxicj4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJl Zml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1jaXRlLXByZWZpeCI+Tk9URTE6Jm5i c3A7IEkgc2F3IG5vIHJlYXNvbiB0aGUgQ0xBTkcgYXJtX25lb24uaCBBQVJDSDY0IG1hY3JvcyB3 b3VsZCBub3Qgd29yayBmb3IgQUFSQ0gzMiwgc28gdGhlIG1hY3JvcyBpbiB0aGlzIHNhbXBsZSBp bXBsZW1lbnRhdGlvbiBhcmUgY29waWVzIENMQU5HIG9yaWdpbmFscyBtb2RpZmllZCBmb3IgKG15 KSByZWFkYWJpbGl0eS4mbmJzcDsgSSdtIG5vdCBhbiBhdHRvcm5leSwgYnV0IGlmIHVzZWQsIGl0 DQogbWF5IGJlIG5lY2Vzc2FyeSB0byBpbmNsdWRlIHRoZSBiYW5uZXIgZnJvbSB0aGUgQ0xBTkcg YXJtX25lb24uaC48YnI+DQo8YnI+DQpOT1RFMjogV2hpbGUgSSBjYW4gYnVpbGQgdGhlIENMQU5H IEFSTSBpbXBsZW1lbnRhdGlvbiwgSSBsYWNrIHRoZSBoYXJkd2FyZSB0byB0ZXN0IGl0Ljxicj4N CjwvZGl2Pg0KPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYg Y2xhc3M9Im1vei1jaXRlLXByZWZpeCI+UmVnYXJkcyw8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1j aXRlLXByZWZpeCI+Um9nZXI8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1jaXRlLXByZWZpeCI+PGJy Pg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1jaXRlLXByZWZpeCI+T24gMTIvMy8y NCA3OjM3IFBNLCBSb2dlciBNZWx0b24gKHJtZWx0b24pIHdyb3RlOjxicj4NCjwvZGl2Pg0KPGJs b2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2l0ZT0ibWlkOjBkYTIwMTMxLTY3ZDgtNDAxMi1iYTAwLWQ3 NzdiZjUwYTFmMUBjaXNjby5jb20iPg0KPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5BZnRl ciBsb29raW5nIGF0IHRoaXMgYSBiaXQgY2xvc2VyIHRvZGF5LCBJIHJlYWxpemUgdGhhdCBteSBh c3NlcnRpb24gdGhhdCBDTEFORzE0IGRvZXMgc3VwcG9ydCB2Y29weXFfbGFuZXFfdTMyKCkgZm9y IDMyYml0IEFSTSB3YXMgaW5jb3JyZWN0LiZuYnNwOyBJdCBkb2VzIG5vdC4mbmJzcDsgVGhlIHJl YXNvbiB0aGF0IGRpc2FibGluZyB0aGUgaW1wbGVtZW50YXRpb24gaW4gcnRlX3ZlY3QuaCB3b3Jr cyBmb3INCiBvdXIgY2xhbmcgYnVpbGRzIGlzIHRoYXQgd2UgZG8gbm90IGJ1aWxkIHRoZSBsM2Z3 ZCBhcHAgbm9yIHRoZSBpeGdiZSBQTUQgZm9yIG91ciBhcHBsaWNhdGlvbiwgYW5kIHRoZXkgYXJl IHRoZSBvbmx5IGxpYnJhcmllcyB0aGF0IHJlZmVyZW5jZSB0aGF0IGZ1bmN0aW9uLjwvZGl2Pg0K PGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1v ei1jaXRlLXByZWZpeCI+VGhlIGNsYW5nIGNvbXBpbGUgZXJyb3JzIGFwcGVhciB0byBiZSByZWxh dGVkIHRvIGhvdyBjbGFuZyBoYW5kbGVzIGNvbXBpbGUgdGltZSBjb25zdGFudHMsIGJ1dCBJJ20g YW0gYWdhaW4gdW5zdXJlIGhvdyB0byByZXNvbHZlIHRoZW0gaW4gYSB3YXkgdGhhdCB3b3VsZCB3 b3JrIGZvciBib3RoIEdOVSBhbmQgY2xhbmcuPC9kaXY+DQo8ZGl2IGNsYXNzPSJtb3otY2l0ZS1w cmVmaXgiPjxicj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5Bbnkgc3Vn Z2VzdGlvbnM/PGJyPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJtb3otY2l0ZS1wcmVmaXgiPjxicj4N CjwvZGl2Pg0KPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5SZWdhcmRzLDwvZGl2Pg0KPGRp diBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5Sb2dlcjwvZGl2Pg0KPGRpdiBjbGFzcz0ibW96LWNp dGUtcHJlZml4Ij48YnI+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9Im1vei1jaXRlLXByZWZpeCI+PGJy Pg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJtb3otY2l0ZS1wcmVmaXgiPk9uIDEyLzIvMjQgODoyNiBQ TSwgUnVpZmVuZyBXYW5nIHdyb3RlOjxicj4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0 ZSIgY2l0ZT0ibWlkOkFTOFBSMDhNQjcwODAwNEM2ODIwMTFENTIxMjJDRTRENjlFMzYyQEFTOFBS MDhNQjcwODAuZXVycHJkMDgucHJvZC5vdXRsb29rLmNvbSI+DQo8bWV0YSBuYW1lPSJHZW5lcmF0 b3IiIGNvbnRlbnQ9Ik1pY3Jvc29mdCBXb3JkIDE1IChmaWx0ZXJlZCBtZWRpdW0pIj4NCjxzdHls ZT5AZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJDYW1icmlhIE1hdGgiOw0KCXBhbm9zZS0xOjIg NCA1IDMgNSA0IDYgMyAyIDQ7fUBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6RGVuZ1hpYW47DQoJ cGFub3NlLTE6MiAxIDYgMCAzIDEgMSAxIDEgMTt9QGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpB cHRvczsNCglwYW5vc2UtMToyIDExIDAgNCAyIDIgMiAyIDIgNDt9QGZvbnQtZmFjZQ0KCXtmb250 LWZhbWlseTpDb25zb2xhczsNCglwYW5vc2UtMToyIDExIDYgOSAyIDIgNCAzIDIgNDt9QGZvbnQt ZmFjZQ0KCXtmb250LWZhbWlseToiXEBEZW5nWGlhbiI7DQoJcGFub3NlLTE6MiAxIDYgMCAzIDEg MSAxIDEgMTt9cC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttYXJn aW46MGNtOw0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkFwdG9zIixzYW5zLXNl cmlmO31hOmxpbmssIHNwYW4uTXNvSHlwZXJsaW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsN Cgljb2xvcjpibHVlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fXByZQ0KCXttc28tc3R5 bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIi Ow0KCW1hcmdpbjowY207DQoJZm9udC1zaXplOjEwLjBwdDsNCglmb250LWZhbWlseToiQ291cmll ciBOZXciO31zcGFuLmNwDQoJe21zby1zdHlsZS1uYW1lOmNwO31zcGFuLkhUTUxQcmVmb3JtYXR0 ZWRDaGFyDQoJe21zby1zdHlsZS1uYW1lOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsNCgltc28t c3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIjsN Cglmb250LWZhbWlseToiQ29uc29sYXMiLHNlcmlmO31zcGFuLmNtDQoJe21zby1zdHlsZS1uYW1l OmNtO31zcGFuLmsNCgl7bXNvLXN0eWxlLW5hbWU6azt9c3Bhbi53DQoJe21zby1zdHlsZS1uYW1l Onc7fXNwYW4ua3INCgl7bXNvLXN0eWxlLW5hbWU6a3I7fXNwYW4ubg0KCXttc28tc3R5bGUtbmFt ZTpuO31zcGFuLm5mDQoJe21zby1zdHlsZS1uYW1lOm5mO31zcGFuLnANCgl7bXNvLXN0eWxlLW5h bWU6cDt9c3Bhbi5rdA0KCXttc28tc3R5bGUtbmFtZTprdDt9c3Bhbi5FbWFpbFN0eWxlMzANCgl7 bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkFwdG9zIixzYW5z LXNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fS5Nc29DaHBEZWZhdWx0DQoJe21zby1zdHlsZS10 eXBlOmV4cG9ydC1vbmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJbXNvLWxpZ2F0dXJlczpub25l O31kaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO308L3N0eWxlPg0KPGRpdiBj bGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGxhbmc9IkVO LVVTIiBzdHlsZT0iZm9udC1zaXplOjExLjBwdCI+K0FybSBmb2xrcy48bzpwPjwvbzpwPjwvc3Bh bj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBw dCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPGRpdiBpZD0ibWFpbC1lZGl0b3ItcmVm ZXJlbmNlLW1lc3NhZ2UtY29udGFpbmVyIj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9y ZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGNt IDBjbSAwY20iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIu MHB0Ij48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdDtjb2xvcjpibGFjayI+RnJvbToN Cjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQ7Y29sb3I6YmxhY2siPlJv Z2VyIE1lbHRvbiAocm1lbHRvbikgPGEgY2xhc3M9Im1vei10eHQtbGluay1yZmMyMzk2RSIgaHJl Zj0ibWFpbHRvOnJtZWx0b25AY2lzY28uY29tIiBtb3otZG8tbm90LXNlbmQ9InRydWUiPg0KJmx0 O3JtZWx0b25AY2lzY28uY29tJmd0OzwvYT48YnI+DQo8Yj5EYXRlOiA8L2I+VHVlc2RheSwgRGVj ZW1iZXIgMywgMjAyNCBhdCAzOjM5PC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0 O2ZvbnQtZmFtaWx5OiZxdW90O0FyaWFsJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPuKA rzwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdDtjb2xvcjpibGFjayI+QU08YnI+ DQo8Yj5UbzogPC9iPjxhIGNsYXNzPSJtb3otdHh0LWxpbmstYWJicmV2aWF0ZWQgbW96LXR4dC1s aW5rLWZyZWV0ZXh0IiBocmVmPSJtYWlsdG86ZGV2QGRwZGsub3JnIiBtb3otZG8tbm90LXNlbmQ9 InRydWUiPmRldkBkcGRrLm9yZzwvYT4NCjxhIGNsYXNzPSJtb3otdHh0LWxpbmstcmZjMjM5NkUi IGhyZWY9Im1haWx0bzpkZXZAZHBkay5vcmciIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSI+DQombHQ7 ZGV2QGRwZGsub3JnJmd0OzwvYT4sIFJ1aWZlbmcgV2FuZyA8YSBjbGFzcz0ibW96LXR4dC1saW5r LXJmYzIzOTZFIiBocmVmPSJtYWlsdG86UnVpZmVuZy5XYW5nQGFybS5jb20iIG1vei1kby1ub3Qt c2VuZD0idHJ1ZSI+DQombHQ7UnVpZmVuZy5XYW5nQGFybS5jb20mZ3Q7PC9hPjxicj4NCjxiPlN1 YmplY3Q6IDwvYj5saWIvZWFsL2FybS9pbmNsdWRlL3J0ZV92ZWN0LmggZmFpbHMgdG8gY29tcGls ZSB3aXRoIGNsYW5nMTQgZm9yIDMyYml0IEFSTTxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2 Pg0KPHA+SGV5IGZvbGtzLDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNw YW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPldlIGFyZSBidWlsZGluZyBEUERLIHdpdGggY2xh bmcxNCBmb3IgYSAzMmJpdCBhcm12OC1hIGJhc2VkIENQVSBhbmQgcmFuIGludG8gYSBjb21waWxl IGVycm9yIHdpdGggdGhlIGZvbGxvd2luZyBmcm9tIGxpYi9lYWwvYXJtL2luY2x1ZGUvcnRlX3Zl Y3QuaDo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cD48YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwv cD4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4w cHQiPg0KPHByZT48c3BhbiBjbGFzcz0iY3AiPiNpZiAoZGVmaW5lZChSVEVfQVJDSF9BUk0pICZh bXA7JmFtcDsgZGVmaW5lZChSVEVfQVJDSF8zMikpIHx8IFw8L3NwYW4+PG86cD48L286cD48L3By ZT4NCjxwcmU+PHNwYW4gY2xhc3M9ImNwIj4oZGVmaW5lZChSVEVfQVJDSF9BUk02NCkgJmFtcDsm YW1wOyA8YSBocmVmPSJodHRwczovL2VsaXhpci5ib290bGluLmNvbS9kcGRrL3YyNC4xMS9DL2lk ZW50L1JURV9DQ19JU19HTlUiIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSI+UlRFX0NDX0lTX0dOVTwv YT4gJmFtcDsmYW1wOyAoPGEgaHJlZj0iaHR0cHM6Ly9lbGl4aXIuYm9vdGxpbi5jb20vZHBkay92 MjQuMTEvQy9pZGVudC9HQ0NfVkVSU0lPTiIgbW96LWRvLW5vdC1zZW5kPSJ0cnVlIj5HQ0NfVkVS U0lPTjwvYT4gJmx0OyA3MDAwMCkpPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxzcGFu IGNsYXNzPSJjbSI+LyogTkVPTiBpbnRyaW5zaWMgdmNvcHlxX2xhbmVxX3UzMigpIGlzIG5vdCBz dXBwb3J0ZWQgaW4gQVJNdjctQShBQXJjaDMyKTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT48c3BhbiBjbGFzcz0iY20iPiAqIE9uIEFBcmNoNjQsIHRoaXMgaW50cmluc2ljIGlzIHN1cHBv cnRlZCBzaW5jZSBHQ0MgdmVyc2lvbiA3Ljwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48 c3BhbiBjbGFzcz0iY20iPiAqLzwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48c3BhbiBj bGFzcz0iayI+c3RhdGljPC9zcGFuPjxzcGFuIGNsYXNzPSJ3Ij4gPC9zcGFuPjxzcGFuIGNsYXNz PSJrciI+aW5saW5lPC9zcGFuPjxzcGFuIGNsYXNzPSJ3Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJu Ij51aW50MzJ4NF90PC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxzcGFuIGNsYXNzPSJu ZiI+PGEgaHJlZj0iaHR0cHM6Ly9lbGl4aXIuYm9vdGxpbi5jb20vZHBkay92MjQuMTEvQy9pZGVu dC92Y29weXFfbGFuZXFfdTMyIiBtb3otZG8tbm90LXNlbmQ9InRydWUiPnZjb3B5cV9sYW5lcV91 MzI8L2E+PC9zcGFuPjxzcGFuIGNsYXNzPSJwIj4oPC9zcGFuPjxzcGFuIGNsYXNzPSJuIj51aW50 MzJ4NF90PC9zcGFuPjxzcGFuIGNsYXNzPSJ3Ij4gPC9zcGFuPjxzcGFuIGNsYXNzPSJuIj5hPC9z cGFuPjxzcGFuIGNsYXNzPSJwIj4sPC9zcGFuPjxzcGFuIGNsYXNzPSJ3Ij4gPC9zcGFuPjxzcGFu IGNsYXNzPSJrIj5jb25zdDwvc3Bhbj48c3BhbiBjbGFzcz0idyI+IDwvc3Bhbj48c3BhbiBjbGFz cz0ia3QiPmludDwvc3Bhbj48c3BhbiBjbGFzcz0idyI+IDwvc3Bhbj48c3BhbiBjbGFzcz0ibiI+ bGFuZV9hPC9zcGFuPjxzcGFuIGNsYXNzPSJwIj4sPC9zcGFuPjxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPjxzcGFuIGNsYXNzPSJ3Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgIDwvc3Bhbj48c3BhbiBjbGFzcz0ibiI+dWludDMyeDRfdDwvc3Bhbj48c3Bh biBjbGFzcz0idyI+IDwvc3Bhbj48c3BhbiBjbGFzcz0ibiI+Yjwvc3Bhbj48c3BhbiBjbGFzcz0i cCI+LDwvc3Bhbj48c3BhbiBjbGFzcz0idyI+IDwvc3Bhbj48c3BhbiBjbGFzcz0iayI+Y29uc3Q8 L3NwYW4+PHNwYW4gY2xhc3M9InciPiA8L3NwYW4+PHNwYW4gY2xhc3M9Imt0Ij5pbnQ8L3NwYW4+ PHNwYW4gY2xhc3M9InciPiA8L3NwYW4+PHNwYW4gY2xhc3M9Im4iPmxhbmVfYjwvc3Bhbj48c3Bh biBjbGFzcz0icCI+KTwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48c3BhbiBjbGFzcz0i cCI+ezwvc3Bhbj48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48c3BhbiBjbGFzcz0idyI+Jm5ic3A7 IDwvc3Bhbj48c3BhbiBjbGFzcz0iayI+cmV0dXJuPC9zcGFuPjxzcGFuIGNsYXNzPSJ3Ij4gPC9z cGFuPjxzcGFuIGNsYXNzPSJuIj52c2V0cV9sYW5lX3UzMjwvc3Bhbj48c3BhbiBjbGFzcz0icCI+ KDwvc3Bhbj48c3BhbiBjbGFzcz0ibiI+dmdldHFfbGFuZV91MzI8L3NwYW4+PHNwYW4gY2xhc3M9 InAiPig8L3NwYW4+PHNwYW4gY2xhc3M9Im4iPmI8L3NwYW4+PHNwYW4gY2xhc3M9InAiPiw8L3Nw YW4+PHNwYW4gY2xhc3M9InciPiA8L3NwYW4+PHNwYW4gY2xhc3M9Im4iPmxhbmVfYjwvc3Bhbj48 c3BhbiBjbGFzcz0icCI+KSw8L3NwYW4+PHNwYW4gY2xhc3M9InciPiA8L3NwYW4+PHNwYW4gY2xh c3M9Im4iPmE8L3NwYW4+PHNwYW4gY2xhc3M9InAiPiw8L3NwYW4+PHNwYW4gY2xhc3M9InciPiA8 L3NwYW4+PHNwYW4gY2xhc3M9Im4iPmxhbmVfYTwvc3Bhbj48c3BhbiBjbGFzcz0icCI+KTs8L3Nw YW4+PG86cD48L286cD48L3ByZT4NCjxwcmU+PHNwYW4gY2xhc3M9InAiPn08L3NwYW4+PG86cD48 L286cD48L3ByZT4NCjxwcmU+PHNwYW4gY2xhc3M9ImNwIj4jZW5kaWY8L3NwYW4+PG86cD48L286 cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxl PSJmb250LXNpemU6MTIuMHB0Ij48YnI+DQo8c3BhbiBjbGFzcz0iY3AiPmNsYW5nMTQgY29tcGls ZSBmYWlscyBhcyBmb2xsb3dzOjwvc3Bhbj48YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvc3Bhbj48 L3A+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUu MHB0Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJjcCI+PHNwYW4gc3R5bGU9 ImZvbnQtc2l6ZToxMi4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPklu IGZpbGUgaW5jbHVkZWQgZnJvbSAuLi8uLi8uLi8uLi8uLi8uLi9jaXNjby1kcGRrLXVwc3RyZWFt LWFybS1jbGFuZy1maXhlcy5naXQvbGliL2VhbC9jb21tb24vZWFsX2NvbW1vbl9vcHRpb25zLmM6 MzY6PC9zcGFuPjwvc3Bhbj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdDtmb250LWZhbWls eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+PGJyPg0KPHNwYW4gY2xhc3M9ImNwIj4uLi8uLi8u Li8uLi8uLi8uLi9jaXNjby1kcGRrLXVwc3RyZWFtLWFybS1jbGFuZy1maXhlcy5naXQvbGliL2Vh bC9hcm0vaW5jbHVkZS9ydGVfdmVjdC5oOjgwOjI0OiBlcnJvcjogYXJndW1lbnQgdG8gJ19fYnVp bHRpbl9uZW9uX3ZnZXRxX2xhbmVfaTMyJyBtdXN0IGJlIGEgY29uc3RhbnQgaW50ZWdlcjwvc3Bh bj48YnI+DQo8c3BhbiBjbGFzcz0iY3AiPnJldHVybiB2c2V0cV9sYW5lX3UzMih2Z2V0cV9sYW5l X3UzMihiLCBsYW5lX2IpLCBhLCBsYW5lX2EpOzwvc3Bhbj48YnI+DQo8c3BhbiBjbGFzcz0iY3Ai Pl4gfn5+fn5+PC9zcGFuPjxicj4NCjxzcGFuIGNsYXNzPSJjcCI+L2F1dG8vYmlub3MtdG9vbHMv bGx2bTE0L2xsdm0tMTQuMC1wMjQvbGliL2NsYW5nLzE0LjAuNS9pbmNsdWRlL2FybV9uZW9uLmg6 NzY5NzoyMjogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndmdldHFfbGFuZV91MzInPC9zcGFu Pjxicj4NCjxzcGFuIGNsYXNzPSJjcCI+X19yZXQgPSAodWludDMyX3QpIF9fYnVpbHRpbl9uZW9u X3ZnZXRxX2xhbmVfaTMyKChpbnQzMng0X3QpX19zMCwgX19wMSk7IFw8L3NwYW4+PGJyPg0KPHNw YW4gY2xhc3M9ImNwIj5eIH5+fn48L3NwYW4+PGJyPg0KPHNwYW4gY2xhc3M9ImNwIj4vYXV0by9i aW5vcy10b29scy9sbHZtMTQvbGx2bS0xNC4wLXAyNC9saWIvY2xhbmcvMTQuMC41L2luY2x1ZGUv YXJtX25lb24uaDoyNDE0ODoxOTogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndnNldHFfbGFu ZV91MzInPC9zcGFuPjxicj4NCjxzcGFuIGNsYXNzPSJjcCI+dWludDMyX3QgX19zMCA9IF9fcDA7 IFw8L3NwYW4+PGJyPg0KPHNwYW4gY2xhc3M9ImNwIj5efn5+PC9zcGFuPjxicj4NCjxzcGFuIGNs YXNzPSJjcCI+SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4uLy4uLy4uLy4uLy4uLy4uL2Npc2NvLWRw ZGstdXBzdHJlYW0tYXJtLWNsYW5nLWZpeGVzLmdpdC9saWIvZWFsL2NvbW1vbi9lYWxfY29tbW9u X29wdGlvbnMuYzozNjo8L3NwYW4+PGJyPg0KPHNwYW4gY2xhc3M9ImNwIj4uLi8uLi8uLi8uLi8u Li8uLi9jaXNjby1kcGRrLXVwc3RyZWFtLWFybS1jbGFuZy1maXhlcy5naXQvbGliL2VhbC9hcm0v aW5jbHVkZS9ydGVfdmVjdC5oOjgwOjk6IGVycm9yOiBhcmd1bWVudCB0byAnX19idWlsdGluX25l b25fdnNldHFfbGFuZV9pMzInIG11c3QgYmUgYSBjb25zdGFudCBpbnRlZ2VyPC9zcGFuPjxicj4N CjxzcGFuIGNsYXNzPSJjcCI+cmV0dXJuIHZzZXRxX2xhbmVfdTMyKHZnZXRxX2xhbmVfdTMyKGIs IGxhbmVfYiksIGEsIGxhbmVfYSk7PC9zcGFuPjxicj4NCjxzcGFuIGNsYXNzPSJjcCI+XiB+fn5+ fn48L3NwYW4+PGJyPg0KPHNwYW4gY2xhc3M9ImNwIj4vYXV0by9iaW5vcy10b29scy9sbHZtMTQv bGx2bS0xNC4wLXAyNC9saWIvY2xhbmcvMTQuMC41L2luY2x1ZGUvYXJtX25lb24uaDoyNDE1MDoy NDogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndnNldHFfbGFuZV91MzInPC9zcGFuPjxicj4N CjxzcGFuIGNsYXNzPSJjcCI+X19yZXQgPSAodWludDMyeDRfdCkgX19idWlsdGluX25lb25fdnNl dHFfbGFuZV9pMzIoX19zMCwgKGludDMyeDRfdClfX3MxLCBfX3AyKTsgXDwvc3Bhbj48YnI+DQo8 c3BhbiBjbGFzcz0iY3AiPl4gfn5+fjwvc3Bhbj48YnI+DQo8c3BhbiBjbGFzcz0iY3AiPjIgZXJy b3JzIGdlbmVyYXRlZC48L3NwYW4+PC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0 Ij48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Jsb2NrcXVvdGU+DQo8cD48bzpwPiZuYnNwOzwv bzpwPjwvcD4NCjxwPmNsYW5nMTQgZG9lcyBhcHBlYXIgdG8gc3VwcG9ydCB0aGUgdmNvcHlxX2xh bmVxX3UzMigpIGludHJpbnNpYywgczAgd2Ugd2FudCB0byBza2lwIHRoZSBjb25kaXRpb25hbCBp bXBsZW1lbnRhdGlvbi48bzpwPjwvbzpwPjwvcD4NCjxwPlR3byBhcHByb2FjaGVzIEkgaGF2ZSB0 ZXN0ZWQgdG8gcmVzb2x2ZSB0aGUgZXJyb3IgYXJlOjxvOnA+PC9vOnA+PC9wPg0KPHA+MSkgc2tp cCBpZiBidWlsZGluZyB3aXRoIGNsYW5nOjxvOnA+PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5 bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdCI+PGJyPg0KPC9zcGFuPjxzcGFu IGNsYXNzPSJjcCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQ7Zm9udC1mYW1pbHk6JnF1 b3Q7Q291cmllciBOZXcmcXVvdDsiPiNpZiAhZGVmaW5lZChfX2NsYW5nX18pICZhbXA7JmFtcDsg KChkZWZpbmVkKFJURV9BUkNIX0FSTSkgJmFtcDsmYW1wOyBkZWZpbmVkKFJURV9BUkNIXzMyKSkg fHwgXDwvc3Bhbj48L3NwYW4+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxicj4NCjwv c3Bhbj48c3BhbiBjbGFzcz0iY3AiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0O2ZvbnQt ZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij43MiAoZGVmaW5lZChSVEVfQVJDSF9BUk02 NCkgJmFtcDsmYW1wOyBSVEVfQ0NfSVNfR05VICZhbXA7JmFtcDsgKEdDQ19WRVJTSU9OICZsdDsg NzAwMDApKSk8L3NwYW4+PC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0O2ZvbnQt ZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij48YnI+DQo8YnI+DQo8YnI+DQo8L3NwYW4+ PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwv YmxvY2txdW90ZT4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIGNsYXNzPSJjcCI+PHNwYW4g c3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjIpIHNraXAgaWYgbm90IGJ1aWxkaW5nIGZvciBBUk12 Nzo8L3NwYW4+PC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0Ij48YnI+DQo8YnI+ DQo8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1 LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0 eWxlPSJmb250LXNpemU6MTIuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7 Ij48YnI+DQo8c3BhbiBjbGFzcz0iY3AiPiNpZiAoZGVmaW5lZChSVEVfQVJDSF9BUk12NykgJmFt cDsmYW1wOyBkZWZpbmVkKFJURV9BUkNIXzMyKSkgfHwgXDwvc3Bhbj48YnI+DQo8c3BhbiBjbGFz cz0iY3AiPihkZWZpbmVkKFJURV9BUkNIX0FSTTY0KSAmYW1wOyZhbXA7IFJURV9DQ19JU19HTlUg JmFtcDsmYW1wOyAoR0NDX1ZFUlNJT04gJmx0OyA3MDAwMCkpPC9zcGFuPjxicj4NCjxicj4NCjwv c3Bhbj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjEyLjBwdCI+PG86cD48L286cD48L3NwYW4+PC9w Pg0KPC9ibG9ja3F1b3RlPg0KPHA+PHNwYW4gY2xhc3M9ImNwIj5Cb3RoIGFkZHJlc3Mgb3VyIGlt bWVkaWF0ZSBwcm9ibGVtLCBidXQgbWF5IG5vdCBiZSBhIGFwcHJvcHJpYXRlIGZvciBhbGwgY2Fz ZXMuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHA+Q2FuIGFueW9uZSBzdWdnZXN0IHRoZSBwcm9w ZXIgd2F5IHRvIGFkZHJlc3MgdGhpcz8mbmJzcDsgSSdsbCBiZSBzdWJtaXR0aW5nIGFuIHBhdGNo IG9uY2UgSSBoYXZlIGEgc29sdXRpb24gdGhhdCBpcyBhY2NlcHRhYmxlIHRvIHRoZSBjb21tdW5p dHkuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBjbGFzcz0iY3Ai PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTIuMHB0Ij5SZWdhcmRzLDwvc3Bhbj48L3NwYW4+PHNw YW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQiPjxicj4NCjxzcGFuIGNsYXNzPSJjcCI+Um9nZXI8 L3NwYW4+PGJyPg0KPGJyPg0KPG86cD48L286cD48L3NwYW4+PC9wPg0KPHA+PGJyPg0KPGJyPg0K PG86cD48L286cD48L3A+DQo8cD48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwPjxvOnA+Jm5ic3A7 PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox Mi4wcHQiPjxicj4NCjxicj4NCjxicj4NCjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0K PC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPHA+PGJyPg0KPC9wPg0KPC9i bG9ja3F1b3RlPg0KPHA+PGJyPg0KPC9wPg0KPC9ib2R5Pg0KPC9odG1sPg0K --_000_afe49b7c2c8f4bb7ae1834ce7e77095aciscocom_--