Received: by 2002:a05:7412:da14:b0:e2:908c:2ebd with SMTP id fe20csp813316rdb; Fri, 6 Oct 2023 23:37:52 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFSFQ2TPXBnr9JgIDr/GZOUU6RLycv4Q7EpPWh6TI1BVrqJLNif2WtDd4JADqdWG2n0UNPr X-Received: by 2002:a9d:63d9:0:b0:6bc:e049:b28f with SMTP id e25-20020a9d63d9000000b006bce049b28fmr10215407otl.34.1696660672192; Fri, 06 Oct 2023 23:37:52 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1696660672; cv=pass; d=google.com; s=arc-20160816; b=cWsOKx6kDIejPZJDbj7OLeWYjW+1nrZJJpi1RUAW1nSK6kc9iK8bzl6hld9RXvv8vw kDCcE1oVGKIpPXDyPXx25QS45xT3hsHEYkvKqbZ+WkrIOxHnYWwLtgHTrCkeivmyj9nW k09j/LthsQEZTRzfubBfhsXmrTJSQrADYcjOxTqXf4kN5ZrOWQ2dhCc4qCKfn4ufhUbX HRa8fbXyfcHxr1fmZoItzwOrUmp75UzDKpYynQXsGysNtdGtJPIwBbG1N83+U7/O5r9F RBsiHqyYpfkhGTYpX5EZVpUzJkjhrf0H0/Mq5uPZ/Jx7tS2C6IsG1oQUSUPB5aL7Bqvw aZLA== 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 :msip_labels:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=+bBShGQnxPj+L/0BubSdX7VZo+bjPxYm7i/YazTf35w=; fh=+VrjxPpYfQi59YriQM8ufiFhb26hTmz2XuZw8nIuuBs=; b=tqDg5YFbTVAa+c5xOiirUppkPdr7uXR5O4DqlqfAPlNSgBEdmIgl/6AaeVVhV682Vz ERENpPHBLEo7KkjIbDFcrmrEaFWjlr7KwPf/VVMWWsIoW+mTI+DnIGIXaphCjcHZHTbH 6hN2pQGpaqj4VrT2SgPGHUrWF1apw8BdW7m7uPfDcfFhJI9Gy0H6iMyEEgeGcDUFQyJ6 Fce8pFJ0TUhBvNmj7JiG3YlDBjUMUaHutbluTQMjnG+NZdvX/SjckFnzi3hDIIP102j2 VbM5JvVfQ4F/IbSNegTzOsUqPlhWZshG3ykY4yGxgPQh3/NYWwIXQlq0tH7NTP+TcT/r 4XTA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amlogic.com header.s=selector1 header.b=Mnu73mFr; arc=pass (i=1 spf=pass spfdomain=amlogic.com dkim=pass dkdomain=amlogic.com dmarc=pass fromdomain=amlogic.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amlogic.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id 10-20020a63020a000000b00577461296a9si5477841pgc.338.2023.10.06.23.37.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Oct 2023 23:37:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@amlogic.com header.s=selector1 header.b=Mnu73mFr; arc=pass (i=1 spf=pass spfdomain=amlogic.com dkim=pass dkdomain=amlogic.com dmarc=pass fromdomain=amlogic.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amlogic.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 23B008032EEC; Fri, 6 Oct 2023 23:37:49 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343582AbjJGGhJ (ORCPT + 99 others); Sat, 7 Oct 2023 02:37:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32932 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1343561AbjJGGhG (ORCPT ); Sat, 7 Oct 2023 02:37:06 -0400 Received: from APC01-TYZ-obe.outbound.protection.outlook.com (mail-tyzapc01on2092.outbound.protection.outlook.com [40.107.117.92]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BE21EDB; Fri, 6 Oct 2023 23:36:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fba1SMf6rh4oKJYYtQX0hPbW50d8leCFZjYTnfjXd4yzzmEEWhnr0Z2j5HMJIjNJuPCv4vvBggRJI8Md1+vqMgOQzh2OaXcny8UPu8Vu1Sqr0qVzp6K1m3pJQ+OuJ70Czn9oUmeDVX3tu1I21UYQ3X/ZnzL9Cudhpx4R0saT4SnkIOtHI8HFzP6wuKhupTJNA1Vvl24E8oZJFqewU9BZ7bYcfqH14jlr1CRTx0GlK0twKJ789yAWr+T/n8r42buqsRbfJmHnlNoEYCndjdK74KsxV0s/sJtlGe8nGBVyCIolbMUUzHIEAxJSnHWtXbHh4z9f/FRzBmEgGNctcsNG7A== 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=+bBShGQnxPj+L/0BubSdX7VZo+bjPxYm7i/YazTf35w=; b=HtsMJzIWKmAN7CaPzbsnDrk5r42rZ54focS9LdnGr/CyDZfCaD+8QLx1JAj0M+Vjrn6Jyves3GuPW5FyC2L8jJ1vzYJ+ceHrgcDJyIdwid/B9YawRHjGmHTFo4afRv6eImUiGjpijlfwffycOSLLu1bogoKQo6OLjZfQ5bdo5LrzZB+inxcrabRRviOwqFgrB3xrXLAkC3a8ovs0uTTrsirF/fFJp7lxE6jOgFlIO8DPQDDUmkqCNDWWv0Z3yGa8lr9Q2W+g3qctAs+7jGfR5jfxVWO230GkIXn2dFsjRPEPNpLDDoHCIIG8nF9Qxi2gNd0dEM61b2WrzRcO4w+YfA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amlogic.com; dmarc=pass action=none header.from=amlogic.com; dkim=pass header.d=amlogic.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amlogic.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+bBShGQnxPj+L/0BubSdX7VZo+bjPxYm7i/YazTf35w=; b=Mnu73mFrNwVFFzO02NJSTrXVwfQjy6wKWMCUPjOhT8KVI2qEuLxSmw2q+bf7IhTd2UMRXif4+fFhJDpGYGQwrFT5Lo1IKwmFV6YSbMLTZKUefi5VdY3leOkGX3lPzY4WH9XBnoIqfjqFAvwl/JpKI6rN+NYbOCYBoJ9Y9O3lsNA69QQUdJHWoCoN4RPPOIxJhLtD5oEviwIoQuU8ToQtLNltq8KX8btbCTtQ2JtPqM5mGqaEz3yooc6gWwGT5BLMajBQ7FLe4z7DgUcm54cTDccxa+jHrag3slz0H4TQc7fixQLVHDJWXPIT93P2kJTyOPM2QTO5vt/nv3SSy1sF3w== Received: from SEYPR03MB7046.apcprd03.prod.outlook.com (2603:1096:101:d0::15) by PSAPR03MB5605.apcprd03.prod.outlook.com (2603:1096:301:66::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.41; Sat, 7 Oct 2023 06:36:14 +0000 Received: from SEYPR03MB7046.apcprd03.prod.outlook.com ([fe80::59de:bf6b:c22:4f8d]) by SEYPR03MB7046.apcprd03.prod.outlook.com ([fe80::59de:bf6b:c22:4f8d%7]) with mapi id 15.20.6838.033; Sat, 7 Oct 2023 06:36:14 +0000 From: Cancan Chang To: Oded Gabbay CC: Jagan Teki , linux-media , linux-kernel , Dave Airlie , Daniel Vetter Subject: =?utf-8?B?5Zue5aSNOiBrZXJuZWwub3JnIDYuNS40ICwgTlBVIGRyaXZlciwgLS1ub3Qg?= =?utf-8?Q?support_(RFC)?= Thread-Topic: kernel.org 6.5.4 , NPU driver, --not support (RFC) Thread-Index: AQHZ7TUhgs72H8AZFkqdmOUY4AB+vbAmlr0AgABcLACABCyLj4AB9zwAgADn60iAAcBOgIAAFqQJgAAORgCAAAGuAoAID5wAgAX/DeI= Date: Sat, 7 Oct 2023 06:36:14 +0000 Message-ID: References: In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amlogic.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SEYPR03MB7046:EE_|PSAPR03MB5605:EE_ x-ms-office365-filtering-correlation-id: 0c0b3b55-cdb7-40d2-db22-08dbc6ffb455 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WFAimH3YucePSrcCpVhSlHmZXmUIv4hyF0CZmtFzq2zu2X7Z8gNmzy3i37XhPOcRnnrz4JojnS3bIZESGBRqezKDMJ0fcXJb4ZZ9o+kRaQoFznrwxzEIWmKK75avLrEet1AGGF0lUIzpA83ZJZp/alOkGlsAVZ/LFKtqLTGP2CdQtMeNVnKHQ14wqL7e8wHO/PQsvegGRiPZbUbE3o0Y/VTOqH0wcS8RXAfULFjQjyb+DA8OnCjfpNH9L61jmfjYZ3DwahssaBdz9UNiD5s0ssCdDA64jwmiWHcBKDlXJ2eZEKeNk1lrY2cDAB3+6fqz0mdPgK/e4cAVCA3MK5imUJmlVJJn2nK9bToZjuB7fi6c9jkZpLpMBVi3uTCvPFHV8ixdlbo5umuZTSXtxNe6Bm4z33ClP7mjvYIVcT61fQ050TSRvGPeuVYowSwzdCehLhX55xCDcMinkCLP8OdyeCFxj42f3avnzrsmM3f8uRaKm239ZVCf9BUr53CX/OebOij7+3hATapfozR/+lcimJjZq4BLWv6IdzL8UmpO9x94g+gb2jpgcuvK1ABfmKtM82Dmlhv0DG9z4p2Do8TkCoMbjNI+sLrhg7H2wbdUvyO4hrAJHJpVH3yvXFKaKPon/t4VLaDnB/syOUJBJWPqgw8Cp8GvmZvNFwVB2ADocBfk5v38q3flEN74SzEmAjz1 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SEYPR03MB7046.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(39840400004)(346002)(136003)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(33656002)(55016003)(8936002)(52536014)(4326008)(86362001)(5660300002)(2906002)(224303003)(966005)(83380400001)(6506007)(26005)(38070700005)(38100700002)(53546011)(7696005)(122000001)(71200400001)(9686003)(478600001)(316002)(66446008)(54906003)(64756008)(66476007)(66946007)(66556008)(6916009)(76116006)(41300700001)(91956017);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MW9QdEFNRnFoOE5TUVRVdW1lVjhWZWVFUlNxSk9ldVQybE5tcW05dWhpVDZp?= =?utf-8?B?L0NnY0J2WFJzeDh3RWtCWC9rMjlkNWs2SzE1Z0hPNUQ3T1BIQks2MUtNZXpZ?= =?utf-8?B?eHBvM2dyTnlCa2U5d2pOQVZXTUJXQWhKUk1UWm1WTjBSUkhBNnh5WTBWQmRy?= =?utf-8?B?WjF4TW0xT2FuK2VmMGNLci92M2NJREZ0VU5WdnA3K1l0Y0FHNGcxRXNXVjNx?= =?utf-8?B?VE1UcmRYTG16WUk0dGFGbTJlSDZxSlZJOGJ1cnN2WjAzM1R2VmF1TTIzNGd2?= =?utf-8?B?dzhNVGN4STZzbEtEeGxpOVpYdGhwTXNxYm1USW9ZeUNtZzczTzdacGpxQ0Iv?= =?utf-8?B?NzlSK0lUNFMxMlpCa1k2RW9YUU5iREFlTUY1M256VFcvdkZqejZHU0ZhUW9C?= =?utf-8?B?VUoyZlNmMkp0T3RiRURCRjFkbFFraXdjV0huSGVBUWNRY2RibFdvMlBmTUZJ?= =?utf-8?B?N2NUejlNRXBybHMxSEVzb3F2ZmhOTzNDZGI3eEZRT1FnTFVYc0pIT0JJTjJh?= =?utf-8?B?M2l0ZGNMelp0U2kxdVA4aERZWjRtdzNjRlpJQUJXYXhRK295K0ZwZmJ3VVNK?= =?utf-8?B?Lzl3MS9LZVhiQmtFSm9ZN3lITHVEV002dUFKMkoycExNV3YwRFZMWURjc2Ni?= =?utf-8?B?VUlYNkZqTi84SFJkeUpmemZWcW4vbTA2ZkxyVCtSTTcvZ05ta0h3RTVDcnR1?= =?utf-8?B?VkZ5andKalh5NlkzVTI4b1p5N2wwYzF6RnIwRzVjOUMrY3IzdkZ0d01kcXBk?= =?utf-8?B?QXNjcHVPM0VNeG5DUDVJM3F4OHlzRExMcmF0OWtQNW05WkZ0cDVJVGs5V2lF?= =?utf-8?B?QUFvR0M5L1puek1VZjlTTitwa1JCcjdORWIwMlJNbnIrR2dYT2plV01CQWtv?= =?utf-8?B?ZkhiZmw2cVpaVzU0K1haci9FTXVhL1BmR0dZRG9oRFRDbUN6Ykl4a2NmQmVu?= =?utf-8?B?Q01TaXMveXdpNFZTTWJncDhBOUtXck9MSEZwaG9FVFVrekV2T2ljaStPU1E0?= =?utf-8?B?M01wTnprRThIby9tYmNsWXhFUERLUGhVVVFKUGRTOEljSkNXTWJkSHYzQXBD?= =?utf-8?B?Y24yVTdKN2NSVTRJNnMzbThVL0d0dy9UQ1diMHVSYi80VUkwZWM0aS9YdUpj?= =?utf-8?B?cTRQblI4VFUrVVdLUFJ4SFBCUnA4Z0JSQnZ3QldtMEhRdThVbkZpdUdIOEZJ?= =?utf-8?B?NDJuK2x1SjRzZmlrQ3RYbEhQMjJVNEdSYTZjdzZOKzdvajdwRnk3KzMwWDFS?= =?utf-8?B?NE5UNHZMWEFLWnVqanlXY1NmenBhSi9PT2owN2tjYm50NnJZSTljaVM5TFJj?= =?utf-8?B?M2JML1kzMnROZDRkYUU3OEVKeXpkQkhOaU5iWkllRjZXQXVqdTlMYVYwc0c5?= =?utf-8?B?N1phRXI0OUliWXBmNk8yY2U1WnVVTU5qNmhSNjBtMFl2L3hqbDNRb1BFSXE5?= =?utf-8?B?WmM0OEZraytyS0hOKzhQNHJrNXNFTFhEY2JCei9wTWNKQWIyV3pSUTdUZGs4?= =?utf-8?B?UGRpZUNQZ24xQThVWXhQNXR0VDQ4aG1IdkFwWEd5Z2ZaZzM2NDFuTlFqbURw?= =?utf-8?B?cWQ0N1FtaEdjejlIRGlvcnEweXdOMWxZQldvNWZRd3pDQURIYnVKWDZEMzV2?= =?utf-8?B?Y29LRzdOLzZSMG9EUndjcEhQdzAwM2Z5OVIrWm03VzB6UnEvbFhEc2c3RWQy?= =?utf-8?B?TWdLajBpQytTUWdRWFZkaEcvUDdmSm5XUDF2MUQ3VEwyTTErVFJVVzZyTWRK?= =?utf-8?B?RW5DaXp1T1ptc2Zicmp1TDhZeUwwU0JTQnhzUXBIK2tQSmIxcTNiaG5vUlFO?= =?utf-8?B?QlR0cFJ4QkUrM3M2VlM3YXI3a29ha1pXNDhhYlpobXA4dUMwUGtOMURYeW1G?= =?utf-8?B?RUw5Uzg4TnNzUUU4T0djSFJmZDRDREUrN3dzY2V0eUE0Uy9lWTBjUFRnWjJ5?= =?utf-8?B?RUlnNHMyc1lzd1FCQ0xabnFpd0J3SS9wajNNSVlkRm1pczNhSkR2aWR1REZx?= =?utf-8?B?WlM1amNRYjFsenRjenpjYVNsWFF1aVhGN3hnWW8wMzczMU1qYlN0Sk16b1Fm?= =?utf-8?B?NXV6U2k2ZFBoR0w2Q3l2MFgxcnlNSmEwM2NYeGY2ZTFkK1BHNTd1VnBUVDYz?= =?utf-8?Q?t+g5XJR5hi9/R+p6vOzrzQHtL?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amlogic.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SEYPR03MB7046.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0c0b3b55-cdb7-40d2-db22-08dbc6ffb455 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Oct 2023 06:36:14.7275 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0df2add9-25ca-4b3a-acb4-c99ddf0b1114 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: m1cor3cHN/uCKyYHTDQgBsX32KgQdTM6j/2ZyrNFijLy0rvLVbmThikUdQCLTMmElnApIsbWxxMy7sdMEBvjIzJX/ZHLGe4mGo/HtsZ+pmA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PSAPR03MB5605 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Fri, 06 Oct 2023 23:37:49 -0700 (PDT) X-Spam-Level: ** T2RlZCwNCiAgICAgICBZb3UgY2FuIGdldCB0aGUgZHJpdmVyIGNvZGUgZnJvbSAgZ2l0aHViIGxp bmvvvJogaHR0cHM6Ly9naXRodWIuY29tL09sZERhZGR5OS9kcml2ZXINCiAgICAgICAgZS5nLiAg Z2l0IGNsb25lIGh0dHBzOi8vZ2l0aHViLmNvbS9PbGREYWRkeTkvZHJpdmVyLmdpdA0KDQpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQrlj5Hku7bkuro6IE9kZWQgR2Fi YmF5IDxvZ2FiYmF5QGtlcm5lbC5vcmc+DQrlj5HpgIHml7bpl7Q6IDIwMjPlubQxMOaciDPml6Ug MTg6NTINCuaUtuS7tuS6ujogQ2FuY2FuIENoYW5nDQrmioTpgIE6IEphZ2FuIFRla2k7IGxpbnV4 LW1lZGlhOyBsaW51eC1rZXJuZWw7IERhdmUgQWlybGllOyBEYW5pZWwgVmV0dGVyDQrkuLvpopg6 IFJlOiBrZXJuZWwub3JnIDYuNS40ICwgTlBVIGRyaXZlciwgLS1ub3Qgc3VwcG9ydCAoUkZDKQ0K DQpbIEVYVEVSTkFMIEVNQUlMIF0NCg0KT24gVGh1LCBTZXAgMjgsIDIwMjMgYXQgMTE6MTbigK9B TSBDYW5jYW4gQ2hhbmcgPENhbmNhbi5DaGFuZ0BhbWxvZ2ljLmNvbT4gd3JvdGU6DQo+DQo+IOKA nFdoYXQgaGFwcGVucyBpZiB5b3UgY2FsbCB0aGlzIGFnYWluIHdpdGhvdXQgd2FpdGluZyBmb3Ig dGhlIHByZXZpb3VzDQo+IGluZmVyZW5jZSB0byBjb21wbGV0ZSA/4oCdDQo+ICAgIC0tLSBUaGVy ZSBpcyBhIHdvcmstcXVldWUgaW4gdGhlIGRyaXZlciB0byBtYW5hZ2UgaW5mZXJlbmNlIHRhc2tz Lg0KPiAgICAgICAgICBXaGVuIHR3byBjb25zZWN1dGl2ZSBpbmZlcmVuY2UgdGFza3Mgb2NjdXIs IHRoZSBzZWNvbmQgaW5mZXJlbmNlIHRhc2sgd2lsbCBiZSBhZGQgdG8NCj4gICAgICAgICAgdGhl ICJwZW5kaW5nIGxpc3QiLiBXaGlsZSB0aGUgcHJldmlvdXMgaW5mZXJlbmNlIHRhc2sgZW5kcywg dGhlIHNlY29uZCBpbmZlcmVuY2UgdGFzayB3aWxsDQo+ICAgICAgICAgIHN3aXRjaCB0byB0aGUg InNjaGVkdWxlZCBsaXN0IiwgYW5kIGJlIGV4ZWN1dGVkLg0KPiAgICAgICAgICBFYWNoIGluZmVy ZW5jZSB0YXNrIGhhcyBhbiBpZCwgICJpbmZlcmVjZSIgYW5kICJ3YWl0IHVudGlsIGZpbmlzaCIg YXJlIHBhaXJlZC4NCj4NCj4gICAgICAgICAgdGhhbmtzDQpUaGFua3MgZm9yIHRoZSBjbGFyaWZp Y2F0aW9uLg0KSSdsbCB3YWl0IGZvciB5b3VyIGRyaXZlcidzIGNvZGUgbGluay4gSXQgZG9lc24n dCBoYXZlIHRvIGJlIGEgcGF0Y2gNCnNlcmllcyBhdCB0aGlzIHBvaW50LiBBIGxpbmsgdG8gYSBn aXQgcmVwbyBpcyBlbm91Z2guDQpJIGp1c3Qgd2FudCB0byBkbyBhIHF1aWNrIHBhc3MuDQoNClRo YW5rcywNCk9kZWQNCg0KDQoNCj4NCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXw0KPiDlj5Hku7bkuro6IE9kZWQgR2FiYmF5IDxvZ2FiYmF5QGtlcm5lbC5vcmc+DQo+ IOWPkemAgeaXtumXtDogMjAyM+W5tDnmnIgyOOaXpSAxNTo0MA0KPiDmlLbku7bkuro6IENhbmNh biBDaGFuZw0KPiDmioTpgIE6IEphZ2FuIFRla2k7IGxpbnV4LW1lZGlhOyBsaW51eC1rZXJuZWw7 IERhdmUgQWlybGllOyBEYW5pZWwgVmV0dGVyDQo+IOS4u+mimDogUmU6IGtlcm5lbC5vcmcgNi41 LjQgLCBOUFUgZHJpdmVyLCAtLW5vdCBzdXBwb3J0IChSRkMpDQo+DQo+IFsgRVhURVJOQUwgRU1B SUwgXQ0KPg0KPiBPbiBUaHUsIFNlcCAyOCwgMjAyMyBhdCAxMDoyNeKAr0FNIENhbmNhbiBDaGFu ZyA8Q2FuY2FuLkNoYW5nQGFtbG9naWMuY29tPiB3cm90ZToNCj4gPg0KPiA+IOKAnENvdWxkIHlv dSBwbGVhc2UgcG9zdCBhIGxpbmsgdG8gdGhlIGRyaXZlcidzIHNvdXJjZSBjb2RlID8NCj4gPiBJ biBhZGRpdGlvbiwgY291bGQgeW91IHBsZWFzZSBlbGFib3JhdGUgd2hpY2ggdXNlcnNwYWNlIGxp YnJhcmllcw0KPiA+IGV4aXN0cyB0aGF0IHdvcmsgd2l0aCB5b3VyIGRyaXZlciA/IEFyZSBhbnkg b2YgdGhlbSBvcGVuLXNvdXJjZSA/4oCdDQo+ID4gLS0tIFdlIHdpbGwgcHJlcGFyZSB0aGUgYWRs YSBkcml2ZXIgbGluayBhZnRlciB0aGUgaG9saWRheSBvbiBPY3RvYmVyIDZ0aC4NCj4gPiAgICAg IEl0J3MgYSBwaXR5IHRoYXQgdGhlcmUgaXMgbm8gb3Blbi1zb3VyY2UgdXNlcnNwYWNlIGxpYnJh cnkuDQo+ID4gICAgICBCdXQgeW91IGNhbiBwcm9iYWJseSB1bmRlcnN0YW5kIGl0IHRocm91Z2gg YSB3b3JrZmxvdywgd2hpY2ggY2FuIGJlIHNpbXBsaWZpZWQgYXM6DQo+ID4gICAgICAxLiBjcmVh dGUgbW9kZWwgY29udGV4dA0KPiA+ICAgICAgICAgICByZXQgPSBpb2N0bChjb250ZXh0LT5mZCwg QURMQUtfSU9DVExfUkVHSVNURVJfTkVUV09SSywgJmRlc2MpOw0KPiA+ICAgICAgMi4gIHNldCBp bnB1dHMNCj4gPiAgICAgIDMuICBpbmZlcmVuY2UNCj4gPiAgICAgICAgICAgIHJldCA9IGlvY3Rs KGNvbnRleHQtPmZkLCBBRExBS19JT0NUTF9JTlZPS0UsICZpbnZva2VfZGVjKTsNCj4gV2hhdCBo YXBwZW5zIGlmIHlvdSBjYWxsIHRoaXMgYWdhaW4gd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgcHJl dmlvdXMNCj4gaW5mZXJlbmNlIHRvIGNvbXBsZXRlID8NCj4gT2RlZA0KPiA+ICAgICAgNC4gIHdh aXQgZm9yIHRoZSBpbmZlcmVuY2UgdG8gY29tcGxldGUNCj4gPiAgICAgICAgICAgIHJldCA9IGlv Y3RsKGNvbnRleHQtPmZkLCBBRExBS19JT0NUTF9XQUlUX1VOVElMX0ZJTklTSCwgJnN0YXRfcmVx X2Rlc2MpOw0KPiA+ICAgICAgNS4gIGRlc3Ryb3kgbW9kZWwgY29udGV4dA0KPiA+ICAgICAgICAg ICAgcmV0ID0gaW9jdGwoY29udGV4dC0+ZmQsIEFETEFLX0lPQ1RMX0RFU1RST1lfTkVUV09SSywg JnN1Ym1pdF9kZWwpOw0KPiA+DQo+ID4NCj4gPiAgICAgICB0aGFua3MNCj4gPg0KPiA+DQo+ID4g X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiA+IOWPkeS7tuS6ujog T2RlZCBHYWJiYXkgPG9nYWJiYXlAa2VybmVsLm9yZz4NCj4gPiDlj5HpgIHml7bpl7Q6IDIwMjPl ubQ55pyIMjjml6UgMTM6MjgNCj4gPiDmlLbku7bkuro6IENhbmNhbiBDaGFuZw0KPiA+IOaKhOmA gTogSmFnYW4gVGVraTsgbGludXgtbWVkaWE7IGxpbnV4LWtlcm5lbDsgRGF2ZSBBaXJsaWU7IERh bmllbCBWZXR0ZXINCj4gPiDkuLvpopg6IFJlOiBrZXJuZWwub3JnIDYuNS40ICwgTlBVIGRyaXZl ciwgLS1ub3Qgc3VwcG9ydCAoUkZDKQ0KPiA+DQo+ID4gWyBFWFRFUk5BTCBFTUFJTCBdDQo+ID4N Cj4gPiBPbiBXZWQsIFNlcCAyNywgMjAyMyBhdCAxMDowMeKAr0FNIENhbmNhbiBDaGFuZyA8Q2Fu Y2FuLkNoYW5nQGFtbG9naWMuY29tPiB3cm90ZToNCj4gPiA+DQo+ID4gPiDigJxPciBkbyB5b3Ug aGFuZGxlIG9uZSBjbWQgYXQgYSB0aW1lLCB3aGVyZSB0aGUgdXNlciBzZW5kcyBhIGNtZCBidWZm ZXINCj4gPiA+IHRvIHRoZSBkcml2ZXIgYW5kIHRoZSBkcml2ZXIgdGhlbiBzdWJtaXQgaXQgYnkg d3JpdGluZyB0byBhIGNvdXBsZSBvZg0KPiA+ID4gcmVnaXN0ZXJzIGFuZCBwb2xscyBvbiBzb21l IHN0YXR1cyByZWdpc3RlciB1bnRpbCBpdHMgZG9uZSwgb3Igd2FpdHMNCj4gPiA+IGZvciBhbiBp bnRlcnJ1cHQgdG8gbWFyayBpdCBhcyBkb25lID/igJ0NCj4gPiA+ICAgLS0tIHllc++8jCB1c2Vy IHNlbmRzIGEgY21kIGJ1ZmZlciB0byBkcml2ZXIsIGFuZCBkcml2ZXIgdHJpZ2dlcnMgaGFyZHdh cmUgYnkgd3JpdGluZyB0byByZWdpc3RlciwNCj4gPiA+ICAgICAgICAgYW5kIHRoZW4sIHdhaXRz IGZvciBhbiBpbnRlcnJ1cHQgdG8gbWFyayBpdCAgYXMgZG9uZS4NCj4gPiA+DQo+ID4gPiAgICAg TXkgY3VycmVudCBkcml2ZXIgaXMgdmVyeSBkaWZmZXJlbnQgZnJvbSBkcm0sIHNvIEkgd2FudCB0 byBrbm93IGlmIEkgaGF2ZSB0byBzd2l0Y2ggdG8gZHJt77yfDQo+ID4gQ291bGQgeW91IHBsZWFz ZSBwb3N0IGEgbGluayB0byB0aGUgZHJpdmVyJ3Mgc291cmNlIGNvZGUgPw0KPiA+IEluIGFkZGl0 aW9uLCBjb3VsZCB5b3UgcGxlYXNlIGVsYWJvcmF0ZSB3aGljaCB1c2Vyc3BhY2UgbGlicmFyaWVz DQo+ID4gZXhpc3RzIHRoYXQgd29yayB3aXRoIHlvdXIgZHJpdmVyID8gQXJlIGFueSBvZiB0aGVt IG9wZW4tc291cmNlID8NCj4gPg0KPiA+ID4gICAgIE1heWJlIEkgY2FuIHJlZmVyIHRvIC9kcml2 ZXIvYWNjZWwvaGFiYW5hbGFicy4NCj4gPiBUaGF0J3MgZGVmaW5pdGVseSBhIHBvc3NpYmlsaXR5 Lg0KPiA+DQo+ID4gT2RlZA0KPiA+ID4NCj4gPiA+IHRoYW5rcw0KPiA+ID4NCj4gPiA+IF9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPiA+IOWPkeS7tuS6ujogT2Rl ZCBHYWJiYXkgPG9nYWJiYXlAa2VybmVsLm9yZz4NCj4gPiA+IOWPkemAgeaXtumXtDogMjAyM+W5 tDnmnIgyNuaXpSAyMDo1NA0KPiA+ID4g5pS25Lu25Lq6OiBDYW5jYW4gQ2hhbmcNCj4gPiA+IOaK hOmAgTogSmFnYW4gVGVraTsgbGludXgtbWVkaWE7IGxpbnV4LWtlcm5lbDsgRGF2ZSBBaXJsaWU7 IERhbmllbCBWZXR0ZXINCj4gPiA+IOS4u+mimDogUmU6IGtlcm5lbC5vcmcgNi41LjQgLCBOUFUg ZHJpdmVyLCAtLW5vdCBzdXBwb3J0IChSRkMpDQo+ID4gPg0KPiA+ID4gWyBFWFRFUk5BTCBFTUFJ TCBdDQo+ID4gPg0KPiA+ID4gT24gTW9uLCBTZXAgMjUsIDIwMjMgYXQgMTI6MjnigK9QTSBDYW5j YW4gQ2hhbmcgPENhbmNhbi5DaGFuZ0BhbWxvZ2ljLmNvbT4gd3JvdGU6DQo+ID4gPiA+DQo+ID4g PiA+IFRoYW5rIHlvdSBmb3IgeW91ciByZXBseSBmcm9tIEphZ2FuICYgT2RlZC4NCj4gPiA+ID4N Cj4gPiA+ID4gSXQgaXMgdmVyeSBhcHByb3ByaXRhdGUgZm9yIG15IGRyaXZlciB0byBiZSBwbGFj ZWQgaW4gZHJpdmVyL2FjY2VsLg0KPiA+ID4gPg0KPiA+ID4gPiBNeSBhY2NlbGVyYXRvciBpcyBu YW1lZCBBRExBKEFtbG9naWMgRGVlcCBMZWFybmluZyBBY2NlbGVyYXRvcikuDQo+ID4gPiA+IEl0 IGlzIGFuIElQIGluIFNPQyxtYWlubHkgdXNlZCBmb3IgbmV1cmFsIG5ldHdvcmsgbW9kZWxzIGFj Y2VsZXJhdGlvbi4NCj4gPiA+ID4gSXQgd2lsbCBzcGxpdCBhbmQgY29tcGlsZSB0aGUgbmV1cmFs IG5ldHdvcmsgbW9kZWwgaW50byBhIHByaXZhdGUgZm9ybWF0IGNtZCBidWZmZXIsDQo+ID4gPiA+ IGFuZCBzdWJtaXQgdGhpcyBjbWQgYnVmZmVyIHRvIEFETEEgaGFyZHdhcmUuIEl0IGlzIG5vdCBw cm9ncmFtbWFibGUgZGV2aWNlLg0KPiA+ID4gV2hhdCBleGFjdGx5IGRvZXMgaXQgbWVhbiB0byAi c3VibWl0IHRoaXMgY21kIGJ1ZmZlciB0byBBRExBIGhhcmR3YXJlIiA/DQo+ID4gPg0KPiA+ID4g RG9lcyB5b3VyIGgvdyBwcm92aWRlcyBxdWV1ZXMgZm9yIHRoZSB1c2VyL2RyaXZlciB0byBwdXQg dGhlaXINCj4gPiA+IHdvcmtsb2Fkcy9jbWQtYnVmcyBvbiB0aGVtID8gQW5kIGRvZXMgaXQgcHJv dmlkZSBzb21lIGNvbXBsZXRpb24gcXVldWUNCj4gPiA+IHRvIG5vdGlmeSB3aGVuIHRoZSB3b3Jr IGlzIGNvbXBsZXRlZD8NCj4gPiA+DQo+ID4gPiBPciBkbyB5b3UgaGFuZGxlIG9uZSBjbWQgYXQg YSB0aW1lLCB3aGVyZSB0aGUgdXNlciBzZW5kcyBhIGNtZCBidWZmZXINCj4gPiA+IHRvIHRoZSBk cml2ZXIgYW5kIHRoZSBkcml2ZXIgdGhlbiBzdWJtaXQgaXQgYnkgd3JpdGluZyB0byBhIGNvdXBs ZSBvZg0KPiA+ID4gcmVnaXN0ZXJzIGFuZCBwb2xscyBvbiBzb21lIHN0YXR1cyByZWdpc3RlciB1 bnRpbCBpdHMgZG9uZSwgb3Igd2FpdHMNCj4gPiA+IGZvciBhbiBpbnRlcnJ1cHQgdG8gbWFyayBp dCBhcyBkb25lID8NCj4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IEFETEEgaW5jbHVkZXMgZm91ciBo YXJkd2FyZSBlbmdpbmVzOg0KPiA+ID4gPiBSUyBlbmdpbmVzICAgICAgICAgICAgIDogd29ya2lu ZyBmb3IgdGhlIHJlc2hhcGUgb3BlcmF0b3JzDQo+ID4gPiA+IE1BQyBlbmdpbmVzICAgICAgICAg OiB3b3JraW5nIGZvciB0aGUgY29udm9sdXRpb24gb3BlcmF0b3JzDQo+ID4gPiA+IERXIGVuZ2lu ZXMgICAgICAgICAgIDogd29ya2luZyBmb3IgdGhlIHBsYW5lciAmIEVsZW1lbnR3aXNlIG9wZXJh dG9ycw0KPiA+ID4gPiBBY3RpdmF0aW9uIGVuZ2luZXMgOiB3b3JraW5nIGZvciBhY3RpdmF0aW9u IG9wZXJhdG9ycyhSZUx1LHRhbmguLikNCj4gPiA+ID4NCj4gPiA+ID4gQnkgdGhlIHdheSwgbXkg SVAgaXMgbWFpbmx5IHVzZWQgZm9yIFNPQywgYW5kIHRoZSBjdXJyZW50IGRyaXZlciByZWdpc3Ry YXRpb24gaXMgdGhyb3VnaCB0aGUgcGxhdGZvcm1fZHJpdmVyLA0KPiA+ID4gPiBpcyBpdCBuZWNl c3NhcnkgdG8gc3dpdGNoIHRvIGRybT8NCj4gPiA+IFRoaXMgcHJvYmFibHkgZGVwZW5kcyBvbiB0 aGUgYW5zd2VyIHRvIG15IHF1ZXN0aW9uIGFib3ZlLiBidHcsIHRoZXJlDQo+ID4gPiBhcmUgZHJp dmVycyBpbiBkcm0gdGhhdCBoYW5kbGUgSVBzIHRoYXQgYXJlIHBhcnQgb2YgYW4gU09DLCBzbw0K PiA+ID4gcGxhdGZvcm1fZHJpdmVyIGlzIHN1cHBvcnRlZC4NCj4gPiA+DQo+ID4gPiBPZGVkDQo+ ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiB0aGFua3MuDQo+ID4gPiA+DQo+ID4gPiA+IF9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPiA+ID4g5Y+R5Lu25Lq6OiBPZGVk IEdhYmJheSA8b2dhYmJheUBrZXJuZWwub3JnPg0KPiA+ID4gPiDlj5HpgIHml7bpl7Q6IDIwMjPl ubQ55pyIMjLml6UgMjM6MDgNCj4gPiA+ID4g5pS25Lu25Lq6OiBKYWdhbiBUZWtpDQo+ID4gPiA+ IOaKhOmAgTogQ2FuY2FuIENoYW5nOyBsaW51eC1tZWRpYTsgbGludXgta2VybmVsOyBEYXZlIEFp cmxpZTsgRGFuaWVsIFZldHRlcg0KPiA+ID4gPiDkuLvpopg6IFJlOiBrZXJuZWwub3JnIDYuNS40 ICwgTlBVIGRyaXZlciwgLS1ub3Qgc3VwcG9ydCAoUkZDKQ0KPiA+ID4gPg0KPiA+ID4gPiBb5L2g 6YCa5bi45LiN5Lya5pS25Yiw5p2l6IeqIG9nYWJiYXlAa2VybmVsLm9yZyDnmoTnlLXlrZDpgq7k u7bjgILor7forr/pl64gaHR0cHM6Ly9ha2EubXMvTGVhcm5BYm91dFNlbmRlcklkZW50aWZpY2F0 aW9u77yM5Lul5LqG6Kej6L+Z5LiA54K55Li65LuA5LmI5b6I6YeN6KaBXQ0KPiA+ID4gPg0KPiA+ ID4gPiBbIEVYVEVSTkFMIEVNQUlMIF0NCj4gPiA+ID4NCj4gPiA+ID4gT24gRnJpLCBTZXAgMjIs IDIwMjMgYXQgMTI6MzjigK9QTSBKYWdhbiBUZWtpIDxqYWdhbkBlZGdlYmxlLmFpPiB3cm90ZToN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+IE9uIEZyaSwgMjIgU2VwdCAyMDIzIGF0IDE1OjA0LCBDYW5j YW4gQ2hhbmcgPENhbmNhbi5DaGFuZ0BhbWxvZ2ljLmNvbT4gd3JvdGU6DQo+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gRGVhciBNZWRpYSBNYWludGFpbmVyczoNCj4gPiA+ID4gPiA+ICAgICAgVGhh bmtzIGZvciB5b3VyIGF0dGVudGlvbi4gQmVmb3JlIGRlc2NyaWJpbmcgbXkgcHJvYmxlbe+8jGxl dCBtZSBpbnRyb2R1Y2UgdG8geW91IHdoYXQgSSAgbWVhbiBieSBOUFUuDQo+ID4gPiA+ID4gPiAg ICAgIE5QVSBpcyBOZXVyYWwgUHJvY2Vzc2luZyBVbml0LCBJdCBpcyBkZXNpZ25lZCBmb3IgZGVl cCBsZWFybmluZyBhY2NlbGVyYXRpb24sIEl0IGlzIGFsc28gY2FsbGVkIFRQVSwgQVBVIC4uDQo+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gICAgICBUaGUgcmVhbCBwcm9ibGVtczoNCj4gPiA+ID4g PiA+ICAgICAgIFdoZW4gSSB3YXMgYWJvdXQgdG8gdXBzdHJlYW0gbXkgTlBVIGRyaXZlciBjb2Rl cyB0byBsaW51eCBtYWlubGluZSwgaSBtZWV0IHR3byBwcm9ibGVtczoNCj4gPiA+ID4gPiA+ICAg ICAgICAgMS4gIEFjY29yZGluZyB0byBteSByZXNlYXJjaCwgVGhlcmUgaXMgbm8gTlBVIG1vZHVs ZSBwYXRoIGluIHRoZSBsaW51eCAoYmFzZSBvbiBsaW51eCA2LjUuNCkgLCBJIGhhdmUgc2VhcmNo ZWQgYWxsIGxpbnV4IHByb2plY3RzIGFuZCBmb3VuZCBubyBvcmdhbml6YXRpb24gb3IgY29tYW55 IHRoYXQgaGFzIHN1Ym1pdHRlZCBOUFUgY29kZS4gSXMgdGhlcmUgYSBwYXRoIHByZXBhcmVkIGZv ciBOUFUgZHJpdmVyIGN1cnJlbnRseT8NCj4gPiA+ID4gPiA+ICAgICAgICAgMi4gICBJZiB0aGVy ZSBpcyBubyBOUFUgZHJpdmVyIHBhdGggY3VycmVudGx5LCBJIGFtIGdvaW5nIHRvIHB1dCBteSBO UFUgZHJpdmVyIGNvZGUgaW4gdGhlIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYW1sb2dpYy8g77u/ LCBiZWNhdXNlIG15IE5QVSBkcml2ZXIgYmVsb25ncyB0byBhbWxvZ2ljLiBhbmQgYW1sb2dpYyBO UFUgaXMgbWFpbmx5IHVzZWQgZm9yIEFJIHZpc2lvbiBhcHBsaWNhdGlvbnMuIElzIHRoaXMgcGxh biBzdWl0YWJlIGZvciB5b3U/DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBJZiBJJ20gY29ycmVjdCBh Ym91dCB0aGUgZGlzY3Vzc2lvbiB3aXRoIE9kZWQgR2FiYnkgYmVmb3JlLiBJIHRoaW5rDQo+ID4g PiA+ID4gdGhlIGRyaXZlcnMvYWNjZWwvIGlzIHByb3BlciBmb3IgQUkgQWNjZWxlcmF0b3JzIGlu Y2x1ZGluZyBOUFUuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiArIE9kZWQgaW4gY2FzZSBoZSBjYW4g Y29tbWVudC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4gPiBKYWdhbi4N Cj4gPiA+ID4gVGhhbmtzIEphZ2FuIGZvciBhZGRpbmcgbWUgdG8gdGhpcyB0aHJlYWQuIEFkZGlu ZyBEYXZlICYgRGFuaWVsIGFzIHdlbGwuDQo+ID4gPiA+DQo+ID4gPiA+IEluZGVlZCwgdGhlIGRy aXZlcnMvYWNjZWwgaXMgdGhlIHBsYWNlIGZvciBBY2NlbGVyYXRvcnMsIG1haW5seSBmb3INCj4g PiA+ID4gQUkvRGVlcC1MZWFybmluZyBhY2NlbGVyYXRvcnMuDQo+ID4gPiA+IFdlIGN1cnJlbnRs eSBoYXZlIDMgZHJpdmVycyB0aGVyZSBhbHJlYWR5Lg0KPiA+ID4gPg0KPiA+ID4gPiBUaGUgYWNj ZWwgc3Vic3lzdGVtIGlzIHBhcnQgb2YgdGhlIGxhcmdlciBkcm0gc3Vic3lzdGVtLiBCYXNpY2Fs bHksIHRvDQo+ID4gPiA+IGdldCBpbnRvIGFjY2VsLCB5b3UgbmVlZCB0byBpbnRlZ3JhdGUgeW91 ciBkcml2ZXIgd2l0aCB0aGUgZHJtIGF0IHRoZQ0KPiA+ID4gPiBiYXNpYyBsZXZlbCAocmVnaXN0 ZXJpbmcgYSBkZXZpY2UsIGhvb2tpbmcgdXAgd2l0aCB0aGUgcHJvcGVyDQo+ID4gPiA+IGNhbGxi YWNrcykuIG9mYyB0aGUgbW9yZSB5b3UgdXNlIGNvZGUgZnJvbSBkcm0sIHRoZSBiZXR0ZXIuDQo+ ID4gPiA+IFlvdSBjYW4gdGFrZSBhIGxvb2sgYXQgdGhlIGRyaXZlcnMgdW5kZXIgYWNjZWwgZm9y IHNvbWUgZXhhbXBsZXMgb24NCj4gPiA+ID4gaG93IHRvIGRvIHRoYXQuDQo+ID4gPiA+DQo+ID4g PiA+IENvdWxkIHlvdSBwbGVhc2UgZGVzY3JpYmUgaW4gYSBjb3VwbGUgb2Ygc2VudGVuY2VzIHdo YXQgeW91cg0KPiA+ID4gPiBhY2NlbGVyYXRvciBkb2VzLCB3aGljaCBlbmdpbmVzIGl0IGNvbnRh aW5zLCBob3cgeW91IHByb2dyYW0gaXQuIGkuZS4NCj4gPiA+ID4gSXMgaXQgYSBmaXhlZC1mdW5j dGlvbiBkZXZpY2Ugd2hlcmUgeW91IHdyaXRlIHRvIGEgY291cGxlIG9mIHJlZ2lzdGVycw0KPiA+ ID4gPiB0byBleGVjdXRlIHdvcmtsb2Fkcywgb3IgaXMgaXQgYSBmdWxseSBwcm9ncmFtbWFibGUg ZGV2aWNlIHdoZXJlIHlvdQ0KPiA+ID4gPiBsb2FkIGNvbXBpbGVkIGNvZGUgaW50byBpdCAoR1BV IHN0eWxlKSA/DQo+ID4gPiA+DQo+ID4gPiA+IEZvciBiZXR0ZXIgYmFja2dyb3VuZCBvbiB0aGUg YWNjZWwgc3Vic3lzdGVtLCBwbGVhc2UgcmVhZCB0aGUgZm9sbG93aW5nOg0KPiA+ID4gPiBodHRw czovL2RvY3Mua2VybmVsLm9yZy9hY2NlbC9pbnRyb2R1Y3Rpb24uaHRtbA0KPiA+ID4gPiBUaGlz IGludHJvZHVjdGlvbiBhbHNvIGNvbnRhaW5zIGxpbmtzIHRvIG90aGVyIGltcG9ydGFudCBlbWFp bCB0aHJlYWRzDQo+ID4gPiA+IGFuZCB0byBEYXZlIEFpcmxpZSdzIEJPRiBzdW1tYXJ5IGluIExQ QzIwMjIuDQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5rcywNCj4gPiA+ID4gT2RlZA0K