Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp1422274rwb; Fri, 7 Oct 2022 12:22:05 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5aZQIOZRvuqTEreTcQ4Xw8zoo8PUFqqolgsDTJ576sbNgq7ifxX9AjWY29DYUUehfttCv5 X-Received: by 2002:a17:906:fe44:b0:77c:e313:a8e8 with SMTP id wz4-20020a170906fe4400b0077ce313a8e8mr5461875ejb.700.1665170524756; Fri, 07 Oct 2022 12:22:04 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1665170524; cv=pass; d=google.com; s=arc-20160816; b=SgVJvQQHIyaQsRpeew8A8OpWoIFnI3vYnFummeMPQ2MbFMq1oCWf14IpaZMqWyrPbU FEbRcJsj8BZwDUu/YqIJRMJxgk5JuNXANiUP4TeWDzqedJhkOdgdZWShqacaxoohdSlm GtRfTIakxl7YQDo5LM0haApLQSvoxFR/JWeBkjpoPJUryL5pNPx4WWFku3i+shIC+GUA yJ3TfXOYid89IdMZ+AYysadRKeNXsNIh9PJ2n3WL4IL6Gepi4T5PvE4hB6od8euys5DM dngjFTCTxEfykpzORc/QDKqCN0YgKTjyKW8ON3He/z/qkeJcQ11HZOuChjSAp+o6VhLO k4Jg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=l/YDZTtHrh9rTTVJOkEAIKQgVD5R8wbqgCtKjgCBL+0=; b=YI+aYqkzegUB8QgfWoNlyI4AUgvyMf7TYDd9SbmGo66mJfvOg2WH+EPA6gV0ZoMiOK rbv/zJmziwRpryR1llK9GkiT+xTbK/wXpyKeNRS9THvvuFIj+cMZcyQSZtWF8sp4Nqy3 jt+uUIz2a/QQmHLTsdWH0LX8zepC4GYRNqr3pfpHISwe0lDrp5MsNPgfjlSzDvrrgS0R Do5qgiKFmtAmJ1HHh2wBaqXlU5SHxaW7VNrIWYKuRup4J0Qn5ujobKmsPNCyaS38JdGe loQHDcI9U+KXgWR7BWQHc+3Xxn0hO5hVMBdM0IMFDxbLbiYliSb4HqQFj5IIfIbkjF3z m4Wg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=Rm7X0sj7; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cs20-20020a170906dc9400b00734be0d7167si3050612ejc.825.2022.10.07.12.21.25; Fri, 07 Oct 2022 12:22:04 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@nxp.com header.s=selector2 header.b=Rm7X0sj7; arc=pass (i=1 spf=pass spfdomain=nxp.com dkim=pass dkdomain=nxp.com dmarc=pass fromdomain=nxp.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229726AbiJGTS3 (ORCPT + 99 others); Fri, 7 Oct 2022 15:18:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229761AbiJGTSY (ORCPT ); Fri, 7 Oct 2022 15:18:24 -0400 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00061.outbound.protection.outlook.com [40.107.0.61]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8571E26EE; Fri, 7 Oct 2022 12:18:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FwPAyjENeUDteeNZlt8jdvLxPCwJMdZZeffo4bGvNIZfFNry+D2sh9IAQ1H4jwm1Og13Nf6vJpkcJn7z6GZdFwNuzARqOq9fVSjPTgqgZVYIozrlQlgP0zvjWk+72+pVk7wrKgYBDJiI3KtZzAsN6hi6IKgW51xubwXxnEV56cFmn9F6QuRJj95J785P5ydorJyC+lE1PUfiYtLUdxN1NwPEXR3DJP+KRtSDhWOrop46e/MktxzDtl5luwzoaSzqzwnL7JDBxrBtHD9oQIy5ZiCvfPvBz3+5GjmDSa04ZYxU6fsS6T1iIZs6Sz4QcVu9PbwdsJPCd/9hrgHcJkbaXQ== 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=l/YDZTtHrh9rTTVJOkEAIKQgVD5R8wbqgCtKjgCBL+0=; b=AVS5NwgYKnxtV1o/YWDJ+Cu97FVHf4g0v92sY3KB2CvDnOBL0QQKNyfRsMcNL0kksGmVFAkg5O0IzMK2yZOxY/nS/0L6uqEv3CU+6/Ow5+UB+w3nZCs27ISXkLC3E8i2LxJlmPW5IPfNDrLfCSgr5oTqLXhAhxSM7hPffF8LZASBpQvwF6cvp8WUmxjZEcfYmImAmggcqJ0e/144BTLmGSXvQKYP355v10xhSOX6KPSBw1zL+K76AKJbOQQJvd3AsMb88PO6O8j2WvItMPBvQMAmppZSVMzMgevYXFq22/tXRx8Wkc/fODwnvVXxJ7mGw6EqWTxb3iE2v5jTLCNv4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l/YDZTtHrh9rTTVJOkEAIKQgVD5R8wbqgCtKjgCBL+0=; b=Rm7X0sj7nqZ/pptnNyHou1LLCMxbbgXHRKijilyY4K5+xnYIdzdDDsJaYWEMXyb8kaaJqSz4WxT3XvinYY6G96PsGcM4zOAvpzoPlWC35q1QLyb+pbeBdZJdP+fPS8CKzzEqIrQ6bwK+fTNSqXRr40jEc49ESCXLA/mqH0e8y9Q= Received: from PAXPR04MB9185.eurprd04.prod.outlook.com (2603:10a6:102:231::11) by GV1PR04MB9102.eurprd04.prod.outlook.com (2603:10a6:150:21::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.34; Fri, 7 Oct 2022 19:18:19 +0000 Received: from PAXPR04MB9185.eurprd04.prod.outlook.com ([fe80::4d83:404:c74a:7563]) by PAXPR04MB9185.eurprd04.prod.outlook.com ([fe80::4d83:404:c74a:7563%5]) with mapi id 15.20.5709.015; Fri, 7 Oct 2022 19:18:19 +0000 From: Shenwei Wang To: Ilias Apalodimas , Jesper Dangaard Brouer CC: Andrew Lunn , "brouer@redhat.com" , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Alexei Starovoitov , Daniel Borkmann , Jesper Dangaard Brouer , John Fastabend , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "imx@lists.linux.dev" , Magnus Karlsson , =?utf-8?B?QmrDtnJuIFTDtnBlbA==?= Subject: RE: [EXT] Re: [PATCH 1/1] net: fec: add initial XDP support Thread-Topic: [EXT] Re: [PATCH 1/1] net: fec: add initial XDP support Thread-Index: AQHY006sqGpD/PA5gEmZiYlRlE0jhK31oHQAgAC4dcCAAA2WgIAAADZwgAAi/oCAAARmwIAANVQAgAXfkgCAAX1ggIAAGiewgAAJ2QCAAYMXEIABT8AAgAGKHYCAALhNEA== Date: Fri, 7 Oct 2022 19:18:18 +0000 Message-ID: References: <20220928152509.141490-1-shenwei.wang@nxp.com> <4f7cf74d-95ca-f93f-7328-e0386348a06e@redhat.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PAXPR04MB9185:EE_|GV1PR04MB9102:EE_ x-ms-office365-filtering-correlation-id: d3c0f27b-aef8-42f2-ce44-08daa898b186 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +65M+GMoy8miTEQwLg7cwmIw0XGQbePU19+5lPljZ3NuC+HLHGY2dk4+vMaNTNjtRIicC1qxOQIucOypJDFn0TuVgUmsqdFApMKxefjoHy9BpWenhEGN6QxIjpNu6hNCqjksAzR8QEPxCMdHM/WAhEUVKjp9MxmWDshvczCnyahZeu+wZnEzcGkix+3tGzxOVlxIp8F8x6FJYUxVEjme5Vb+UKEawVmN6Fg7tQg/7BnKsgOucNXPko9X81AcmNleDYXEALYDz2I7Y7DvgmxE9t0wr4ctgCKihGjZnCRbTblGyoyZbjs5zS0id7BuEWC8RH+HNoYFVEyUrUc3l9dRt3TFavLi6fMvy2La386gePNgb8jtCwb57Td0j0ngW/cxb8QqS4yK004qPOmka+yUmAL3vYd/1mAeBvj1Xcwkgy+VMKfU18ErbLBO1J68wx2fs3Ms8e247TLsY1leKbLRMLVP8+/NRzhhH5y3NK+EFZe9zCW1U+e6A4GML8Redg79jPEkKhJhMZP7ZgvPOxluuz9BVxGCHenMyOisQnjG5uMYoFpZdX986zSQCqdRh5J3PLaB+mS5brtt+mnM6EdoNU8gxev4nWJYy0+fO9GxML1cnseXGsWa2l7LEO2IzBUkbFQ6NplH5iS8wOesgO7XAtbgOx8CxT1Gw1RrOvwD6ik811+ICo1wpiWPALoiWrgQqWgoo7Cz2z1rGCils1R3w9gbUjjoa0D/yD7REyG0n1Q0cDzgjqjQ8AVtVs08pOxpDhvXf5kSkYM7u4sLcXmUTw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9185.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(376002)(396003)(346002)(136003)(366004)(39860400002)(451199015)(38100700002)(110136005)(478600001)(54906003)(122000001)(71200400001)(316002)(86362001)(38070700005)(83380400001)(66574015)(5660300002)(186003)(55236004)(26005)(7696005)(53546011)(9686003)(52536014)(2906002)(41300700001)(44832011)(4326008)(8676002)(66446008)(55016003)(66946007)(64756008)(33656002)(8936002)(76116006)(66556008)(6506007)(7416002)(66476007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VlFJczEydldpTEdncVZjL0ZXMU9iL1BHK1hKVFRrdkhDYyt0QkVRRFl3dFBu?= =?utf-8?B?aXVDVC9vOUYweWlKQVBOQkRwSVFRbEhEY0V3TXg1VW5Gd0VlclczU1NOUzFv?= =?utf-8?B?ZkkzVGJvYUZleFNacEFYaDNVeVVuSEw5THcrY2VMRzVnL3I5N1UyNG1MY2I4?= =?utf-8?B?VVM1dFN0Z0ZadDRVM05IaitGUUlKSkk0RjBrbmNmcXJTR3oxdlNKS0lDWEJi?= =?utf-8?B?NlArVFZGQy95VWFSc0V6bnJoU29SelZhbGFOc1ZwNUx4cWR2U1c0L1daMk1Y?= =?utf-8?B?aENJbFhUSm1UeDB6VlJvejBCdXdnSnFTeWE1bzN5VXY2Z2xjVExYSEVDdmNQ?= =?utf-8?B?cW9xeGRicjRPQXVONk9vWHhZbUJSRlJEL1Zuakw5ZmVKbGVRQmxGQlVGUUcy?= =?utf-8?B?NjRhd05Id0R3U2pXYVdGYklkbEtmdys1YXUyWmsxckRvOG16aGJ5YXhPdjhF?= =?utf-8?B?dVZrRDZiaFlFUEdCbDF4UHhUeXZCT3J5NnF5SzJjcnVrUFY5cXg5b2VGVWZ5?= =?utf-8?B?TUVZcVlIdUUrRUV5K0NkajZsSE5hV2I1OEJMT0ovU3J4RXdsWkNtMi9aME1i?= =?utf-8?B?YjM1SGZ5Skk5UXBrNjRQcE4zZnZpNnBlM3J4NEpkOUZxYnBHcDhpM1loYkd2?= =?utf-8?B?aWszd0xkQXBJVUlXVnJGdldVTlU2TCtDQWZFQnJ2WGc4WURXWk5IeThyOUJ0?= =?utf-8?B?akNVQkhyclZJSEF1VGZQNG42UXpZTGYvVHR1cUFvN1NMSEZ1L2lFNjhPdWdV?= =?utf-8?B?Z0gzc1A0SFJuTFJSS3BYK1RKKzlPZzczQnc3aVc1dlIrSUNmZXpPWXNmRjZs?= =?utf-8?B?MklGWmNDWVQ1c3d4LzgyNEhITXYwcDRJUWV0WS9mSkVoTWtmZ2l0NFBiYkc2?= =?utf-8?B?QjZVWG15ZFN4V2FZWTFEa2tKQWVzYnFNakJLV2swR0V2SE1KUTc5ekZSWWJE?= =?utf-8?B?aGJHUkx4aENESWhrN2xqSGc2ZnhGODQ3eHhWNWN3Uko4WlV3YVBmSkI0ditG?= =?utf-8?B?VG9kTUZtRkFvS25uV2Q3T3ZSZ28yejh4d1RPZWpORTdad080SlhxTEhteDVw?= =?utf-8?B?NjIxbndFaFlzWmZEWDR3RDI2Sm9HNlRoaFpobzRXTFF0SHFNTHlBYklCQkJk?= =?utf-8?B?am1ac3dYMk9OckRkbkxyY3hZdWptYXMyYkgvMllTUU4ra09oeDc0WU01MXNM?= =?utf-8?B?VnpiL1VUZzMzd3dwZ21qby9OZ01obkk3alRQSGFKeUVmTTQxK2JkTGhoUG15?= =?utf-8?B?RGdvcWh3UDlEbEVHS1Rza0pVZEdHeDY5UlNuWWJ6Vm9zVzBpUkRIdU9mdTFh?= =?utf-8?B?aWJhQ2ltMWJrbXFCaWV4NXc0dWV5LzVBeGV5YTlLN3J3M2FlZGE2NnJMdlNv?= =?utf-8?B?dlhXSEVIVFhFWjNPZE9kbUR6UHhSNW9hZ3RuaTYyTm9NYWQvYXVzZDhUT2o4?= =?utf-8?B?RXA3YU9OTkZ5L2RQTVI2YTA4Wk9LcE1QdWdYMmJ0dnpEWXRPZ0R4VFd3N1FZ?= =?utf-8?B?MWlPNE5IQXVTZVc1cldSRjhUMzBUUllXYzNQNFhoWGo1U1prd253cmZmMW1P?= =?utf-8?B?dDZWTFJheWpMeEQrUUdWOThLTnorNkFMZk5QdHpBRExneStNUkd0UmVBWVZK?= =?utf-8?B?aHVQOWY0em9sWXJVVkFDTWx6UUQyOUM0eHN0bnF4RXJRVDFsakpnenZGRG80?= =?utf-8?B?QVZkZTIyZW1QajNGZjNoaUdudFlrZ29STEFTN251T0l2ZVhhd2pYaXNVVGdQ?= =?utf-8?B?WnJsdHZVNjJaQ2s4ZVNINDJKWDZsMTRNTHIvcmdZMkN4UGdXVXV3UHlYTmFs?= =?utf-8?B?QmhpNThIdndSRldkRjRQMTY0NVZDN2t0cFNtcEYvUEVWc3dSTkdNR29idTBk?= =?utf-8?B?d2k4ZFY4WWdFeDE1TlZoNXplaGJkTTFoRk5EUkI5TkFOY3plcVQ5enBRZHAy?= =?utf-8?B?N0xNUSs4WFhZYVQ4OER4WEx6UDJhMlpweUtzRHFCRVJXMEF1MU50Z0lOMUZF?= =?utf-8?B?Si9GKzhia0VtbGh0VTJ1Qm5FWjloWVVudUZqUmNQS210dllLMmlwTVFHaTBJ?= =?utf-8?B?Mm12KzNPNldWWXJVOXhHSlJGdkdJVmNVWEEwNnJEUXlHaGNmSXBnbEVsdTA1?= =?utf-8?Q?tFZTqkR87PiMgJbuYkQoWayHR?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9185.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3c0f27b-aef8-42f2-ce44-08daa898b186 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Oct 2022 19:18:19.3087 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: gUxmxpAjcif7t/I52QS5f0K2PcfNUHClRkUNyxtmkLzDxrWX45Gtha2uOBH7hxUiumirUsH6Pcuk8iy0FtRyLQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9102 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgSmVzcGVyIGFuZCBJbGlhcywNCg0KVGhlIGRyaXZlciBoYXMgYSBtYWNybyB0byBjb25maWd1 cmUgdGhlIFJYIHJpbmcgc2l6ZS4gQWZ0ZXIgdGVzdGluZw0Kd2l0aCB0aGUgUlggcmluZyBzaXpl LCBJIGZvdW5kIHRoZSBzdHJhbmdlIHJlc3VsdCBtYXkgaGFzIHNvbWV0aGluZw0KdG8gZG8gd2l0 aCB0aGlzIHJpbmcgc2l6ZS4NCg0KSSBqdXN0IHRlc3RlZCB3aXRoIHRoZSBhcHBsaWNhdGlvbiBv ZiB4ZHBzb2NrLg0KICAtLSBOYXRpdmUgaGVyZSBtZWFucyBydW5uaW5nIGNvbW1hbmQgb2YgInhk cHNvY2sgLWkgZXRoMCINCiAgLS0gU0tCLU1vZGUgbWVhbnMgcnVubmluZyBjb21tYW5kIG9mICJ4 ZHBzb2NrIC1TIC1pIGV0aDAiDQoNClJYIFJpbmcgU2l6ZSAgICAgICAxNiAgICAgICAzMiAgICAg ICAgNjQgICAgICAgMTI4DQogICAgICBOYXRpdmUgICAgICAyMzBLICAgICAyMjdLICAgICAgMTk2 SyAgICAgIDE2MEsNCiAgICBTS0ItTW9kZSAgICAgIDIwN0sgICAgIDIwOEsgICAgICAyMDNLICAg ICAgMjA0Sw0KDQpJdCBzZWVtcyB0aGUgc21hbGxlciB0aGUgcmluZyBzaXplLCB0aGUgYmV0dGVy IHRoZSBwZXJmb3JtYW5jZS4gVGhpcw0KaXMgYWxzbyBhIHN0cmFuZ2UgcmVzdWx0IHRvIG1lLg0K DQpUaGUgZm9sbG93aW5nIGlzIHRoZSBpcGVyZiB0ZXN0aW5nIHJlc3VsdC4NCg0KUlggUmluZyBT aXplICAgICAgICAgMTYgICAgICAgICA2NCAgICAgICAxMjgNCmlwZXJmICAgICAgICAgICAgICAz MDBNYnBzICAgIDgzME1icHMgICA5MzNNYnBzDQoNClRoYW5rcywNClNoZW53ZWkNCg0KPiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBJbGlhcyBBcGFsb2RpbWFzIDxpbGlhcy5h cGFsb2RpbWFzQGxpbmFyby5vcmc+DQo+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciA3LCAyMDIyIDM6 MDggQU0NCj4gVG86IEplc3BlciBEYW5nYWFyZCBCcm91ZXIgPGpicm91ZXJAcmVkaGF0LmNvbT4N Cj4gQ2M6IFNoZW53ZWkgV2FuZyA8c2hlbndlaS53YW5nQG54cC5jb20+OyBBbmRyZXcgTHVubg0K PiA8YW5kcmV3QGx1bm4uY2g+OyBicm91ZXJAcmVkaGF0LmNvbTsgRGF2aWQgUy4gTWlsbGVyDQo+ IDxkYXZlbUBkYXZlbWxvZnQubmV0PjsgRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29t PjsgSmFrdWINCj4gS2ljaW5za2kgPGt1YmFAa2VybmVsLm9yZz47IFBhb2xvIEFiZW5pIDxwYWJl bmlAcmVkaGF0LmNvbT47IEFsZXhlaQ0KPiBTdGFyb3ZvaXRvdiA8YXN0QGtlcm5lbC5vcmc+OyBE YW5pZWwgQm9ya21hbm4gPGRhbmllbEBpb2dlYXJib3gubmV0PjsNCj4gSmVzcGVyIERhbmdhYXJk IEJyb3VlciA8aGF3a0BrZXJuZWwub3JnPjsgSm9obiBGYXN0YWJlbmQNCj4gPGpvaG4uZmFzdGFi ZW5kQGdtYWlsLmNvbT47IG5ldGRldkB2Z2VyLmtlcm5lbC5vcmc7IGxpbnV4LQ0KPiBrZXJuZWxA dmdlci5rZXJuZWwub3JnOyBpbXhAbGlzdHMubGludXguZGV2OyBNYWdudXMgS2FybHNzb24NCj4g PG1hZ251cy5rYXJsc3NvbkBnbWFpbC5jb20+OyBCasO2cm4gVMO2cGVsIDxiam9ybkBrZXJuZWwu b3JnPg0KPiBTdWJqZWN0OiBSZTogW0VYVF0gUmU6IFtQQVRDSCAxLzFdIG5ldDogZmVjOiBhZGQg aW5pdGlhbCBYRFAgc3VwcG9ydA0KPiANCj4gQ2F1dGlvbjogRVhUIEVtYWlsDQo+IA0KPiBIaSBK ZXNwZXIsDQo+IA0KPiBPbiBUaHUsIDYgT2N0IDIwMjIgYXQgMTE6MzcsIEplc3BlciBEYW5nYWFy ZCBCcm91ZXIgPGpicm91ZXJAcmVkaGF0LmNvbT4NCj4gd3JvdGU6DQo+ID4NCj4gPg0KPiA+DQo+ ID4gT24gMDUvMTAvMjAyMiAxNC40MCwgU2hlbndlaSBXYW5nIHdyb3RlOg0KPiA+ID4gSGkgSmVz cGVyLA0KPiA+ID4NCj4gPiA+IEhlcmUgaXMgdGhlIHN1bW1hcnkgb2YgInhkcF9yeHFfaW5mbyIg dGVzdGluZy4NCj4gPiA+DQo+ID4gPiAgICAgICAgICAgICAgICBza2JfbWFya19mb3JfcmVjeWNs ZSAgICAgICAgICAgcGFnZV9wb29sX3JlbGVhc2VfcGFnZQ0KPiA+ID4NCj4gPiA+ICAgICAgICAg ICAgICAgTmF0aXZlICAgICAgICBTS0ItTW9kZSAgICAgICAgICAgTmF0aXZlICAgICAgICAgIFNL Qi1Nb2RlDQo+ID4gPiBYRFBfRFJPUCAgICAgNDYwSyAgICAgICAgICAgMjIwSyAgICAgICAgICAg ICAgNDYwSyAgICAgICAgICAgICAxMDJLDQo+ID4gPiBYRFBfUEFTUyAgICAgODBLICAgICAgICAg ICAgMTEzSyAgICAgICAgICAgICAgNjBLICAgICAgICAgICAgICA2MksNCj4gPiA+DQo+ID4NCj4g PiBJdCBpcyB2ZXJ5IHBsZWFzaW5nIHRvIHNlZSB0aGUgKmh1Z2UqIHBlcmZvcm1hbmNlIGJlbmVm aXQgdGhhdA0KPiA+IHBhZ2VfcG9vbCBwcm92aWRlIHdoZW4gcmVjeWNsaW5nIHBhZ2VzIGZvciBT S0JzICh2aWEgc2tiX21hcmtfZm9yX3JlY3ljbGUpLg0KPiA+IEkgZGlkIGV4cGVjdCBhIHBlcmZv cm1hbmNlIGJvb3N0LCBidXQgbm90IGFyb3VuZCBhIHgyIHBlcmZvcm1hbmNlIGJvb3N0Lg0KPiAN Cj4gSW5kZWVkIHRoYXQncyBhIHBsZWFzYW50IHN1cnByaXNlLiAgS2VlcCBpbiBtaW5kIHRoYXQg aWYgd2UgY29udmVydCBtb3JlIGRyaXZlcg0KPiB3ZSBjYW4gYWxzbyBnZXQgcmlkIG9mIGNvcHlf YnJlYWsgY29kZSBzcHJpbmtsZWQgYXJvdW5kIGluIGRyaXZlcnMuDQo+IA0KPiBUaGFua3MNCj4g L0lsaWFzDQo+ID4NCj4gPiBJIGd1ZXNzIHRoaXMgcGxhdGZvcm0gaGF2ZSBhIGxhcmdlciBvdmVy aGVhZCBmb3IgRE1BLW1hcHBpbmcgYW5kDQo+ID4gcGFnZS1hbGxvY2F0aW9uLg0KPiA+DQo+ID4g SU1ITyBpdCB3b3VsZCBiZSB2YWx1YWJsZSB0byBpbmNsdWRlIHRoaXMgcmVzdWx0IGFzIHBhcnQg b2YgdGhlIHBhdGNoDQo+ID4gZGVzY3JpcHRpb24gd2hlbiB5b3UgcG9zdCB0aGUgWERQIHBhdGNo IGFnYWluLg0KPiA+DQo+ID4gT25seSBzdHJhbmdlIHJlc3VsdCBpcyBYRFBfUEFTUyAnTmF0aXZl JyBpcyBzbG93ZXIgdGhhdCAnU0tCLW1vZGUnLiBJDQo+ID4gY2Fubm90IGV4cGxhaW4gd2h5LCBh cyBYRFBfUEFTUyBlc3NlbnRpYWxseSBkb2VzIG5vdGhpbmcgYW5kIGp1c3QNCj4gPiBmb2xsb3cg bm9ybWFsIGRyaXZlciBjb2RlIHRvIG5ldHN0YWNrLg0KPiA+DQo+ID4gVGhhbmtzIGEgbG90IGZv ciBkb2luZyB0aGVzZSB0ZXN0cy4NCj4gPiAtLUplc3Blcg0KPiA+DQo+ID4gPiBUaGUgZm9sbG93 aW5nIGFyZSB0aGUgdGVzdGluZyBsb2cuDQo+ID4gPg0KPiA+ID4gVGhhbmtzLA0KPiA+ID4gU2hl bndlaQ0KPiA+ID4NCj4gPiA+ICMjIyBza2JfbWFya19mb3JfcmVjeWNsZSBzb2x1dGlvbiAjIyMN Cj4gPiA+DQo+ID4gPiAuL3hkcF9yeHFfaW5mbyAtLWRldiBldGgwIC0tYWN0IFhEUF9EUk9QIC0t cmVhZA0KPiA+ID4NCj4gPiA+IFJ1bm5pbmcgWERQIG9uIGRldjpldGgwIChpZmluZGV4OjIpIGFj dGlvbjpYRFBfRFJPUCBvcHRpb25zOnJlYWQNCj4gPiA+IFhEUCBzdGF0cyAgICAgICBDUFUgICAg IHBwcyAgICAgICAgIGlzc3VlLXBwcw0KPiA+ID4gWERQLVJYIENQVSAgICAgIDAgICAgICAgNDY2 LDU1MyAgICAgMA0KPiA+ID4gWERQLVJYIENQVSAgICAgIHRvdGFsICAgNDY2LDU1Mw0KPiA+ID4N Cj4gPiA+IC4veGRwX3J4cV9pbmZvIC1TIC0tZGV2IGV0aDAgLS1hY3QgWERQX0RST1AgLS1yZWFk DQo+ID4gPg0KPiA+ID4gUnVubmluZyBYRFAgb24gZGV2OmV0aDAgKGlmaW5kZXg6MikgYWN0aW9u OlhEUF9EUk9QIG9wdGlvbnM6cmVhZA0KPiA+ID4gWERQIHN0YXRzICAgICAgIENQVSAgICAgcHBz ICAgICAgICAgaXNzdWUtcHBzDQo+ID4gPiBYRFAtUlggQ1BVICAgICAgMCAgICAgICAyMjYsMjcy ICAgICAwDQo+ID4gPiBYRFAtUlggQ1BVICAgICAgdG90YWwgICAyMjYsMjcyDQo+ID4gPg0KPiA+ ID4gLi94ZHBfcnhxX2luZm8gLS1kZXYgZXRoMCAtLWFjdCBYRFBfUEFTUyAtLXJlYWQNCj4gPiA+ DQo+ID4gPiBSdW5uaW5nIFhEUCBvbiBkZXY6ZXRoMCAoaWZpbmRleDoyKSBhY3Rpb246WERQX1BB U1Mgb3B0aW9uczpyZWFkDQo+ID4gPiBYRFAgc3RhdHMgICAgICAgQ1BVICAgICBwcHMgICAgICAg ICBpc3N1ZS1wcHMNCj4gPiA+IFhEUC1SWCBDUFUgICAgICAwICAgICAgIDgwLDUxOCAgICAgIDAN Cj4gPiA+IFhEUC1SWCBDUFUgICAgICB0b3RhbCAgIDgwLDUxOA0KPiA+ID4NCj4gPiA+IC4veGRw X3J4cV9pbmZvIC1TIC0tZGV2IGV0aDAgLS1hY3QgWERQX1BBU1MgLS1yZWFkDQo+ID4gPg0KPiA+ ID4gUnVubmluZyBYRFAgb24gZGV2OmV0aDAgKGlmaW5kZXg6MikgYWN0aW9uOlhEUF9QQVNTIG9w dGlvbnM6cmVhZA0KPiA+ID4gWERQIHN0YXRzICAgICAgIENQVSAgICAgcHBzICAgICAgICAgaXNz dWUtcHBzDQo+ID4gPiBYRFAtUlggQ1BVICAgICAgMCAgICAgICAxMTMsNjgxICAgICAwDQo+ID4g PiBYRFAtUlggQ1BVICAgICAgdG90YWwgICAxMTMsNjgxDQo+ID4gPg0KPiA+ID4NCj4gPiA+ICMj IyBwYWdlX3Bvb2xfcmVsZWFzZV9wYWdlIHNvbHV0aW9uICMjIw0KPiA+ID4NCj4gPiA+IC4veGRw X3J4cV9pbmZvIC0tZGV2IGV0aDAgLS1hY3QgWERQX0RST1AgLS1yZWFkDQo+ID4gPg0KPiA+ID4g UnVubmluZyBYRFAgb24gZGV2OmV0aDAgKGlmaW5kZXg6MikgYWN0aW9uOlhEUF9EUk9QIG9wdGlv bnM6cmVhZA0KPiA+ID4gWERQIHN0YXRzICAgICAgIENQVSAgICAgcHBzICAgICAgICAgaXNzdWUt cHBzDQo+ID4gPiBYRFAtUlggQ1BVICAgICAgMCAgICAgICA0NjMsMTQ1ICAgICAwDQo+ID4gPiBY RFAtUlggQ1BVICAgICAgdG90YWwgICA0NjMsMTQ1DQo+ID4gPg0KPiA+ID4gLi94ZHBfcnhxX2lu Zm8gLVMgLS1kZXYgZXRoMCAtLWFjdCBYRFBfRFJPUCAtLXJlYWQNCj4gPiA+DQo+ID4gPiBSdW5u aW5nIFhEUCBvbiBkZXY6ZXRoMCAoaWZpbmRleDoyKSBhY3Rpb246WERQX0RST1Agb3B0aW9uczpy ZWFkDQo+ID4gPiBYRFAgc3RhdHMgICAgICAgQ1BVICAgICBwcHMgICAgICAgICBpc3N1ZS1wcHMN Cj4gPiA+IFhEUC1SWCBDUFUgICAgICAwICAgICAgIDEwNCw0NDMgICAgIDANCj4gPiA+IFhEUC1S WCBDUFUgICAgICB0b3RhbCAgIDEwNCw0NDMNCj4gPiA+DQo+ID4gPiAuL3hkcF9yeHFfaW5mbyAt LWRldiBldGgwIC0tYWN0IFhEUF9QQVNTIC0tcmVhZA0KPiA+ID4NCj4gPiA+IFJ1bm5pbmcgWERQ IG9uIGRldjpldGgwIChpZmluZGV4OjIpIGFjdGlvbjpYRFBfUEFTUyBvcHRpb25zOnJlYWQNCj4g PiA+IFhEUCBzdGF0cyAgICAgICBDUFUgICAgIHBwcyAgICAgICAgIGlzc3VlLXBwcw0KPiA+ID4g WERQLVJYIENQVSAgICAgIDAgICAgICAgNjAsNTM5ICAgICAgMA0KPiA+ID4gWERQLVJYIENQVSAg ICAgIHRvdGFsICAgNjAsNTM5DQo+ID4gPg0KPiA+ID4gLi94ZHBfcnhxX2luZm8gLVMgLS1kZXYg ZXRoMCAtLWFjdCBYRFBfUEFTUyAtLXJlYWQNCj4gPiA+DQo+ID4gPiBSdW5uaW5nIFhEUCBvbiBk ZXY6ZXRoMCAoaWZpbmRleDoyKSBhY3Rpb246WERQX1BBU1Mgb3B0aW9uczpyZWFkDQo+ID4gPiBY RFAgc3RhdHMgICAgICAgQ1BVICAgICBwcHMgICAgICAgICBpc3N1ZS1wcHMNCj4gPiA+IFhEUC1S WCBDUFUgICAgICAwICAgICAgIDYyLDU2NiAgICAgIDANCj4gPiA+IFhEUC1SWCBDUFUgICAgICB0 b3RhbCAgIDYyLDU2Ng0KPiA+ID4NCj4gPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiA+ID4+IEZyb206IFNoZW53ZWkgV2FuZw0KPiA+ID4+IFNlbnQ6IFR1ZXNkYXksIE9jdG9iZXIg NCwgMjAyMiA4OjM0IEFNDQo+ID4gPj4gVG86IEplc3BlciBEYW5nYWFyZCBCcm91ZXIgPGpicm91 ZXJAcmVkaGF0LmNvbT47IEFuZHJldyBMdW5uDQo+ID4gPj4gPGFuZHJld0BsdW5uLmNoPg0KPiA+ ID4+IENjOiBicm91ZXJAcmVkaGF0LmNvbTsgRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZlbWxv ZnQubmV0PjsgRXJpYw0KPiA+ID4+IER1bWF6ZXQgPGVkdW1hemV0QGdvb2dsZS5jb20+OyBKYWt1 YiBLaWNpbnNraSA8a3ViYUBrZXJuZWwub3JnPjsNCj4gPiA+PiBQYW9sbyBBYmVuaSA8cGFiZW5p QHJlZGhhdC5jb20+OyBBbGV4ZWkgU3Rhcm92b2l0b3YNCj4gPiA+PiA8YXN0QGtlcm5lbC5vcmc+ OyBEYW5pZWwgQm9ya21hbm4gPGRhbmllbEBpb2dlYXJib3gubmV0PjsgSmVzcGVyDQo+ID4gPj4g RGFuZ2FhcmQgQnJvdWVyIDxoYXdrQGtlcm5lbC5vcmc+OyBKb2huIEZhc3RhYmVuZA0KPiA+ID4+ IDxqb2huLmZhc3RhYmVuZEBnbWFpbC5jb20+OyBuZXRkZXZAdmdlci5rZXJuZWwub3JnOyBsaW51 eC0NCj4gPiA+PiBrZXJuZWxAdmdlci5rZXJuZWwub3JnOyBpbXhAbGlzdHMubGludXguZGV2OyBN YWdudXMgS2FybHNzb24NCj4gPiA+PiA8bWFnbnVzLmthcmxzc29uQGdtYWlsLmNvbT47IEJqw7Zy biBUw7ZwZWwgPGJqb3JuQGtlcm5lbC5vcmc+OyBJbGlhcw0KPiA+ID4+IEFwYWxvZGltYXMgPGls aWFzLmFwYWxvZGltYXNAbGluYXJvLm9yZz4NCj4gPiA+PiBTdWJqZWN0OiBSRTogW0VYVF0gUmU6 IFtQQVRDSCAxLzFdIG5ldDogZmVjOiBhZGQgaW5pdGlhbCBYRFANCj4gPiA+PiBzdXBwb3J0DQo+ ID4gPj4NCj4gPiA+Pg0KPiA+ID4+DQo+ID4gPj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4gPj4+IEZyb206IFNoZW53ZWkgV2FuZw0KPiA+ID4+PiBTZW50OiBUdWVzZGF5LCBPY3Rv YmVyIDQsIDIwMjIgODoxMyBBTQ0KPiA+ID4+PiBUbzogSmVzcGVyIERhbmdhYXJkIEJyb3VlciA8 amJyb3VlckByZWRoYXQuY29tPjsgQW5kcmV3IEx1bm4NCj4gPiA+PiAuLi4NCj4gPiA+Pj4gSSBo YXZlbid0IHRlc3RlZCB4ZHBfcnhxX2luZm8geWV0LCBhbmQgd2lsbCBoYXZlIGEgdHJ5IHNvbWV0 aW1lIGxhdGVyIHRvZGF5Lg0KPiA+ID4+PiBIb3dldmVyLCBmb3IgdGhlIFhEUF9EUk9QIHRlc3Qs IEkgZGlkIHRyeSB4ZHAyIHRlc3QgY2FzZSwgYW5kIHRoZQ0KPiA+ID4+PiB0ZXN0aW5nIHJlc3Vs dCBsb29rcyByZWFzb25hYmxlLiBUaGUgcGVyZm9ybWFuY2Ugb2YgTmF0aXZlIG1vZGUgaXMNCj4g PiA+Pj4gbXVjaCBoaWdoZXIgdGhhbiBza2ItIG1vZGUuDQo+ID4gPj4+DQo+ID4gPj4+ICMgeGRw MiBldGgwDQo+ID4gPj4+ICAgcHJvdG8gMDogICAgIDQ3NTM2MiBwa3Qvcw0KPiA+ID4+Pg0KPiA+ ID4+PiAjIHhkcDIgLVMgZXRoMCAgICAgICAgICAgICAocGFnZV9wb29sX3JlbGVhc2VfcGFnZSBz b2x1dGlvbikNCj4gPiA+Pj4gICBwcm90byAxNzogICAgIDcxOTk5IHBrdC9zDQo+ID4gPj4+DQo+ ID4gPj4+ICMgeGRwMiAtUyBldGgwICAgICAgICAgICAgIChza2JfbWFya19mb3JfcmVjeWNsZSBz b2x1dGlvbikNCj4gPiA+Pj4gICBwcm90byAxNzogICAgIDcyMjI4IHBrdC9zDQo+ID4gPj4+DQo+ ID4gPj4NCj4gPiA+PiBDb3JyZWN0aW9uIGZvciB4ZHAyIC1TIGV0aDAgIChza2JfbWFya19mb3Jf cmVjeWNsZSBzb2x1dGlvbikNCj4gPiA+PiBwcm90byAwOiAgICAgICAgICAwIHBrdC9zDQo+ID4g Pj4gcHJvdG8gMTc6ICAgICAxMjI0NzMgcGt0L3MNCj4gPiA+Pg0KPiA+ID4+IFRoYW5rcywNCj4g PiA+PiBTaGVud2VpDQo+ID4gPg0KPiA+DQo=