From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id CA1364DD9F for ; Tue, 4 Mar 2025 11:29:23 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 531A968EBDD; Tue, 4 Mar 2025 13:29:20 +0200 (EET) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.19]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F40D268E834 for ; Tue, 4 Mar 2025 13:29:13 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741087759; x=1772623759; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=z0Ef4aD8pUWBrCBQQXoxgtfiyhSmIAL4oRnhOtxibQM=; b=MaUBZmq/yhb4zqy4j9CdI9Cd0Vc12mtdFDMoubrrs/FPmeSPPKn8mdK0 LikmCMsRQ1JQu5Kt9YAY0FoKm6PrX5hjCVXHV/RRdR4FMFZNLQHa4VXn6 x6AkJEPBHSKeD8HHTAnVRcwxeaHdXI4XEDLAG7xqboGZJPTdNV2MHnH8c v72ou9D1bVh8iiKt1iuLPufPVcMDAwkUJAWZHGkFu9a/luyXN/fB5KauB 5v56T+7ND5WzwB3XD9Y417xP/LQCyk+euGW1n7/J5Bt6RfACra+VYMcXf c01eBTJEegxp9KUVt/h2fD4+Y2RCsbOmCgSHLUnn779bG7jJQ5sSTynLt g==; X-CSE-ConnectionGUID: veRzeataRtiENMiJf03pxQ== X-CSE-MsgGUID: 7tWBABL/Rn2lDA44WFnqtQ== X-IronPort-AV: E=McAfee;i="6700,10204,11362"; a="41178155" X-IronPort-AV: E=Sophos;i="6.13,331,1732608000"; d="scan'208";a="41178155" Received: from orviesa001.jf.intel.com ([10.64.159.141]) by fmvoesa113.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Mar 2025 03:29:12 -0800 X-CSE-ConnectionGUID: E/CS6IyISaisfC4fWBCFvA== X-CSE-MsgGUID: 7nJQ4KUQTTqZaYFWlG2K5A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="155533985" Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by orviesa001.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Mar 2025 03:29:12 -0800 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14; Tue, 4 Mar 2025 03:29:11 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.14 via Frontend Transport; Tue, 4 Mar 2025 03:29:11 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.172) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Tue, 4 Mar 2025 03:29:11 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xIAjV3QiTR6mIkxG09JrAA8t4MkDRvjpUFe5RaP3lp/fYo3zh5rmO+lt1EfxG+Wr1CYo1Y23GcHJ5TFG50aZtZQ0zuxHjo4TMZpaXsyu/e6oLUn1QlkUy2qvqGpb5tv/Ft2poBSKhuYnGqGH9R5faN7eEsQ8WdXoVKrOmN+bOb6OprHO/E9eV5LhJDE9bnClOyPsW+k54LeCmdrswGxIBbPe/IHslf9zU2Se/yGBphrR/NR01QgzfNe1njIP8tYS089LXtKmaKvrQcFYM6QeRVdm4jgYRE/bSHtIC84q1dO/6Npl3My/iJNVIMeMkUX/UbsMjY0J7DBPsjvNIUFxFg== 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=z0Ef4aD8pUWBrCBQQXoxgtfiyhSmIAL4oRnhOtxibQM=; b=qlF6ihOde5h1z6/R/si/+WRd8LTKM1MYoyBA2qniUlBp9OEtxalcdwkwKXFvkKiPj/+baVwpYU5jnof8qBpqiXpbPBRgruyCSGlQ5mX6pesGG1BRvHj8BWXFrgoqNh0nJ9lLyXjN57ZSMVukNVIDDyNenw66fC4gJXc395/MxIRmWCpbi20chhu2sCUU0IYaiHClcEq0uumYJugHcQvIZqqx22ChYXzKxW/S5RL5PIIkJ6HyUIpZa57cCE1fpvvh+L1DLd4BXuSsEaJ5yasaO3sSl8szSiRBKVJCMsxiNtTkYXNCJCKu3BobOSHjm47YHek173u5IdN0fIJDH5r79Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from PH7PR11MB5957.namprd11.prod.outlook.com (2603:10b6:510:1e0::14) by PH8PR11MB6777.namprd11.prod.outlook.com (2603:10b6:510:1c8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.28; Tue, 4 Mar 2025 11:28:35 +0000 Received: from PH7PR11MB5957.namprd11.prod.outlook.com ([fe80::9ca7:5dd5:8a5c:d73e]) by PH7PR11MB5957.namprd11.prod.outlook.com ([fe80::9ca7:5dd5:8a5c:d73e%4]) with mapi id 15.20.8489.025; Tue, 4 Mar 2025 11:28:35 +0000 From: "Guo, Yejun" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH] avfilter/dnn: add zero-shot image classification using CLIP models Thread-Index: AdtyhuRcwdeGikTTTrap4GomiMz7rQABg6HQA2r0iPAAR8jiHQAlTBCQAAR7YQACviHusA== Date: Tue, 4 Mar 2025 11:28:35 +0000 Message-ID: References: <001701db728d$09fa37b0$1deea710$@gmail.com> <382d01db81ff$06ac4b80$1404e280$@gmail.com> In-Reply-To: <382d01db81ff$06ac4b80$1404e280$@gmail.com> 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH7PR11MB5957:EE_|PH8PR11MB6777:EE_ x-ms-office365-filtering-correlation-id: 44e8c039-be6f-4481-abb0-08dd5b0fb3bb x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|4022899009|13003099007|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?UE81MHRua3Nydi84SXZGTThPcGhpUjI1NG5FWUdTUUJQNytJZmNSck9DQkNw?= =?utf-8?B?R2hjSFlIM05rRGlMTFRhTDA0eWxKT1lWdTV1ckNuZHk0cFZ0YUpNZTdvV1dv?= =?utf-8?B?aWE4WW5DZFkxbTZRUEhPcXFIMDB5bmljRFFwT0NpNW1VdTJxSUtaL2xXQnNE?= =?utf-8?B?dWZmbkd2TmtZcTRjNUQ2SGthQ0FuMHUydHJyVDRnYUVmYk9yckIzY212U2lj?= =?utf-8?B?MTJqbDNrODRzeHE2aDZFcEtaS3RWNGxMOVFjem5tMlp2eVEzQ0Fpdm9RSGRj?= =?utf-8?B?YVMwWlpNOTFtcW5nYS9BaS9tckFWaktKOHdrRkpvSktzaWJMb2d3NlBDUmky?= =?utf-8?B?ckI5RUp4V0FJTExyeThPK0RmZEk3MktzZkRIM0ltbjNYQlo0d3FIbVBHUk41?= =?utf-8?B?S3E2UmhQUVlZbllNUlRtd3RYRTA0ME5JWnE0b2l4ck5WYUFnenhjK05CbDBP?= =?utf-8?B?OGszb0p0RG1tY05qYXRscWd1LzB5ejg1RTBhSnNsR2V1VjRTVUpLNnQyY3Vh?= =?utf-8?B?cVM1VkwyVCtVUmNRcDZkQjRJY0dUZUNwWk1IZVM0SVNHemdIbjBhVWFxSlhM?= =?utf-8?B?R0ZqVzhBZzI2Q256SUZmOC9vaXY4VjBzNTlVcVEyRDl6cFQzeGlBVHg3KzEr?= =?utf-8?B?eHBBZkNraXpnWEhlWWQzcTBicCtMRnE0cGxvY0J2YWdvMnhuSzNyaEY0Z2xY?= =?utf-8?B?b2d5dTVlK2pyM3lhckw1WEZzZjlBeXFYZjNiMm41bUhwZFl1UHpGL2FvUjRZ?= =?utf-8?B?NzZrZ25QeGZnOENxMGltdzNZK2ZUQVZwSzZyVFl1NG5aQlBDczZkbTlkMmhH?= =?utf-8?B?ZzlKeGF4MUJ6K2pOd3dXM0NRQmsxaUk1bUFYR2J6OEdwTHZhLzJBaVp2Z3k4?= =?utf-8?B?M0h2eDVHWFFjZ2E3QUEwRXpadWptaFF5NlhSaWtYVElwYjUxUkFWbU4zNFQ1?= =?utf-8?B?S3ZqOWlyb0FnaUFPcDIyR0EwdGlaTG0yQThZQkF3aUxMT3loS3NFNHpad1FW?= =?utf-8?B?TFJxVlF0QWJtQVp0ZmdhenV1S1haallXSUNTOWoyT2dtR0hkSUxtejlvWHo2?= =?utf-8?B?UFZhc25Ebk4vbVVRdlFaRUtraGl6aWhpWHRYcENldWhMN1hPbnQrb1pHTUZ2?= =?utf-8?B?aEVPZW9Cci9BMEpQb1JMem5ESEQyR3VBTXB0SEFoRFBtM2lxeFB5WTFTUWRJ?= =?utf-8?B?TGUwMjJWUWdqa1RLTG9oREdwOVFJVTZiZHJZaEQwNG05Z0tiNE9USy9XTmsr?= =?utf-8?B?VW5rVnhSWjFBazJKUW1VYjBGTDcyZzBRRTJ0bE1kem54UWo2cEV3UWFKSjdr?= =?utf-8?B?cEU0ajVUMTlucHF6MS9XUVBxb3BiNWlRR2psZm9DOTUrUG9XMjYvVE9tdkNC?= =?utf-8?B?NjVFUVdYNXRTR1pVQnFEWTFKeEM4KzJ4YjVtVVdhelpxWTc5dFd2dE11bzZR?= =?utf-8?B?SXdqZUIxMFhjcTRSbm9FVGdXMVZHNHZTb3dESXBPT0taRzZsSnNNbU56aWU0?= =?utf-8?B?OW5HR2NURDNqREV1MTJxbVlUb3cvdUJYNkRuQ1p3MlZFb3VnZnpPQUF2bCtm?= =?utf-8?B?YW1RSHo4WWt6V1lLOVhIUWJocnFvUVdKQXNGS09sSzZDWDV0bUl1Njhnczgy?= =?utf-8?B?cnFYY3p4RldMZFJRalBqTDVaNGk1dklqckJOeHIydjFrSE40RndBbDRFdWJl?= =?utf-8?B?YUoyZ2xraGlZTUFWeWRUQzZPWlNhZDFkSGhvTkd2Z2pZbmIxV1AzanFGQlo3?= =?utf-8?B?cUU3VjFLRytra1Fqdi9QMUVxUFFSbGd1MlN3aWN5TTJoaVR5Vk5mYzI2T29S?= =?utf-8?B?R0F6bFZHM3NoTCtXRlZ3MnBadEZoRUZKdXJ3YUlPTVIrdFVXK2JiQTN1Wk1V?= =?utf-8?Q?xFA7KBX2DW+66?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH7PR11MB5957.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(4022899009)(13003099007)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?M2RSVHQybS9GcUh5cEpPbUx6aVpNcm1nMU1hYytVUCtGeVFJODIrUXZvWHdV?= =?utf-8?B?VWQ0ZXlydUJydWhYaDVQOXVkbU9scVYySENpQ2NZUjJxNGN5SUF3TmRkVk1z?= =?utf-8?B?UlVScXlBK0l6c01uZ1IxVDlKc2JmWGFlbXh5S2s4RnF0Zk93RlpBbGpYMGpG?= =?utf-8?B?N21rSU40YmJRaFRnMndOaFF5OTA2QzRmM3M0Wm5LZUl3Zkx5b2Y0cTdpb3FT?= =?utf-8?B?aUVkYUlGWTZsWHI4cVdJR2tYbkxVKzJaSGRpM0xOMXMxMVlocnFRczhFTlpq?= =?utf-8?B?THpSYkRkRWpFOU5FaUMzRHpnZlNxTlcydXlaclZ5MTVYcWU3Zkx6SXBPTUta?= =?utf-8?B?TXoyNzlyOG02MjJVY3YyWmR2V0NiLzR2ZFBYTkhrREhaVHBsQjFsNHVFSEha?= =?utf-8?B?UkJPNFJuODBlby9CQUdzcGJ2Umd1M053UHU3c2lKbFBVMFN5WmlNOVc1bzRT?= =?utf-8?B?U0Z0QlZIUXdjcGdlajl5SXRNQVRneWZ2YlU2eEEzcGdBc3BoRnZWL2VIVGlQ?= =?utf-8?B?WDhZRnBkTUcyV0RMdjFUd293ZnpIUE4vcEdmQ2tHamRGMjdWOWUya1hEb1l5?= =?utf-8?B?UjU3alRhOWVKMlBrK1BFbUJCaEJFbWUybzZ1QkhZZ3RXbU1IWUFEaC9UN1Ru?= =?utf-8?B?MExWM0VVMzJjR0NEdFJBaDd6dzhXWU1yMHZ1aVAvcXVtdHZZTVFqc21zT25K?= =?utf-8?B?TTNxQ1ZwNjFrQWdxaURKTUxxK2hndHFKSEI2U1NBMDZXZzQxSjkrUDVBSWdJ?= =?utf-8?B?Nk1jWGdCOEZpS1p1QWlHYTJkNHMwd3hyYmxkME9oaXY4Z0FNN1VxY3J3b1lq?= =?utf-8?B?N3ZuTVdZRlNTZjJEU3Bpc1R4YzN2Z1BYWmw1NXZxS3BhY2c1T25oUHN4Wkpv?= =?utf-8?B?aElTN09TWmN3NHNGOElTd1p3a040cWR3d0hxZmxTVnN4YlM5MS9hejRJT2hG?= =?utf-8?B?QmhiL0NLcHRvbkh4VnFXazRvQW13bDVrdDdiWXVCUXRwdzNzTzlaaHlSTTU0?= =?utf-8?B?aEluSWVSYXhYS1Uzb25ZbEt4TVczNVVPTUVhbTk2RXV1YkJOM2Z2QjczSEFv?= =?utf-8?B?bnlwUHN0OUo3c2cvb0NWYlQvWk5Uak8xb2tNZjhOb29LeGEvYkhtQWM3Z09Y?= =?utf-8?B?ZjA5MTliWVJkWGhwYUhhWTByUzJzRHVvS1MwWEFST00rTkZGNU00MmJrYlR6?= =?utf-8?B?Yk5aM24zYTNKQXhtR1J5WVhsNzhpbWNlN01YOTZVWDZhbnN4c1V1dVV1bFV4?= =?utf-8?B?Ym85L3AvTy93bFlYYXRDdGUxTmhDOXp5MUxJYU9tWlRRNU5nSTQxQXUwMzVt?= =?utf-8?B?QlBlbXo1bFV0UFJIR0JqS1Z2UmtjSHR2c2NKRVV6TW5nbFNrcis4VHVXMkdi?= =?utf-8?B?Ni9SV2x0K3F4RnVSZG8zOTg4WnZ2WXJUVUpKa3Vad1FxRERIdkZBR29RNmdw?= =?utf-8?B?ZXFHbTVoWFhhTU9DeDFab0poL0FocUpkb3Vra2RGZXQrRWV0YzVqL3FBeXRT?= =?utf-8?B?dVRBN3hQVEZlYVBkY2NsK2RYU1k3RU1YRDE2RFRaZU9KZURIT1JhOVd5Y1d5?= =?utf-8?B?NWNGRWwyZHgzVXJGYUs0eldtYm9BUWVKRW5xNmFRWVZ3cmpjNEpyRUNOMFFq?= =?utf-8?B?bFkvQy9NR3ZjK29lYnBjTFQ2NjFlNFozZUlLT3lTSms1WTM1QmE1ZTVkcG80?= =?utf-8?B?LzlnU2xPb3hhZUhaRlN0YUlnUlh2akFXQm15RUhGK0VHalpJUG44ampyNzJn?= =?utf-8?B?QytOSUNuTS9GS3VCS1NDWDhSMDlXbWF6U05xbzU1WkZGc1QwRjVKNWx5L0Ir?= =?utf-8?B?S3pOUjkzMzVxMUlPeUY0cHIyZGFxTmk2RVVyb04zcThLd0tHM25KcFVUYnlF?= =?utf-8?B?T3hPdXNOZVQ2K3ZYaS8vbEF5ejRKUUhzQVFxQk5Pa3o0MkUyZnZyRGVDUTk3?= =?utf-8?B?SG9Ncm9VTm5oNDgwRko4cTYzeVp6dGRRNmlqSmdQUU84VGd4WEw4c0ZldmxP?= =?utf-8?B?bHJWVi8rU3p0S0NlQytxVFlLTjQ1SW03ekF0NXo3dEY1OTlDVlU1QUFYcTB3?= =?utf-8?B?QmlnYS82aUEzdFM4QjJzRjY3ditlM0JhRU9CQUJvOUVpSXRVRUhJR08yZXVX?= =?utf-8?Q?f2lzpVcKkTbJNfb44Zh7kEcwx?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB5957.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 44e8c039-be6f-4481-abb0-08dd5b0fb3bb X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Mar 2025 11:28:35.4508 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 403pMA7oXXjwKWWAwrD8T+n4+Z9ubr+Fc1IT6Gb5ZlMxOqYrAUjnxAnYJiAfUzLuF5NG6cxa62F9zV2QfCqLdw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB6777 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH] avfilter/dnn: add zero-shot image classification using CLIP models X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YNCj4gbS5rYWluZGww MjA4QGdtYWlsLmNvbQ0KPiBTZW50OiBUdWVzZGF5LCBGZWJydWFyeSAxOCwgMjAyNSA4OjE3IFBN DQo+IFRvOiAnRkZtcGVnIGRldmVsb3BtZW50IGRpc2N1c3Npb25zIGFuZCBwYXRjaGVzJyA8ZmZt cGVnLQ0KPiBkZXZlbEBmZm1wZWcub3JnPg0KPiBTdWJqZWN0OiBSZTogW0ZGbXBlZy1kZXZlbF0g W1BBVENIXSBhdmZpbHRlci9kbm46IGFkZCB6ZXJvLXNob3QgaW1hZ2UNCj4gY2xhc3NpZmljYXRp b24gdXNpbmcgQ0xJUCBtb2RlbHMNCj4gDQo+IFRoZSBuZXcgYmFja2VuZCBpcyBhbiBleHRlbnNp b24gb2YgdGhlIGV4aXN0aW5nIFRvcmNoIGJhY2tlbmQgcmF0aGVyIHRoYW4gYQ0KPiBzZXBhcmF0 ZSBpbXBsZW1lbnRhdGlvbi4NCkluIGdlbmVyYWwsIHdlIGRvbid0IG5lZWQgdG8gYWRkIGEgbmV3 IGJhY2tlbmQgZm9yIGxpYnRvcmNoIGZvciBhbm90aGVyIHVzZSBjYXNlLg0KDQo+IA0KPiBJbmZl cmVuY2UgaW4gQ0xJUCBkaWZmZXJzIGZyb20gb3RoZXIgbW9kZWxzIGFzIGl0IGVuY29kZXMgKGVt YmVkcykgYm90aA0KPiBpbWFnZXMgYW5kIHRva2VuaXplZCB0ZXh0IGxhYmVscywgdGhlbiBjYWxj dWxhdGVzIHRoZSBzaW1pbGFyaXR5IGJldHdlZW4gdGhlDQo+IGVuY29kZWQgdmVjdG9ycy4gQXMg YSByZXN1bHQsIGl0cyBmb3J3YXJkIHBhc3MgdGFrZXMgdHdvIGlucHV0cyBhbmQgcHJvZHVjZXMN Cj4gdHdvIG91dHB1dHMuDQpJcyB0aGUgdG9rZW5pemVyIGV4cGVjdGVkIHRvIGJlIHVzZWQgYnkg b3RoZXIgZG5uIGZpbHRlcnM/IFdlIG1heSBwdXQgaXQgaW4gZmlsZXMNCmxpa2UgbGliYXZmaWx0 ZXIgLyBkbm5fZmlsdGVyX2NvbW1vbi5jDQoNCj4gDQo+IFRvIGVuc3VyZSBjbGFyaXR5IGFuZCBt b2R1bGFyaXR5LCBJIGhhdmUgY3JlYXRlZCBhIHNlcGFyYXRlDQo+IGRubl90b3JjaF9iYWNrZW5k X2NsaXAgZmlsZSBpbnN0ZWFkIG9mIGV4cGFuZGluZyBkbm5fdG9yY2hfYmFja2VuZC4gVGhpcw0K PiBrZWVwcyB0aGUgbWFpbiBmaWxlIG1hbmFnZWFibGUgYW5kIGFsbG93cyBmb3IgZWFzeSBleGNs dXNpb24gZnJvbSB0aGUgYnVpbGQNCj4gd2hlbiB0aGUgdG9rZW5pemVyLWNwcCBsaWJyYXJ5IGlz IG5vdCBpbmNsdWRlZC4NCj4gDQo+IElmIHByZWZlcnJlZCwgSSBjYW4gaW1wbGVtZW50IGEgc3Rh bmRhbG9uZSB0b2tlbml6ZXIgY2xhc3MsIGludGVncmF0ZSBpdCBpbnRvIGUuZy4NCj4gbGliYXZ1 dGlsLCBhbmQgbW92ZSB0aGUgcmVtYWluaW5nIGNvZGUgdG8gdGhlIGJhY2tlbmQuDQo+IA0KPiAt LS0tLVVyc3Byw7xuZ2xpY2hlIE5hY2hyaWNodC0tLS0tDQo+IFZvbjogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBJbSBBdWZ0cmFnIHZvbiBHdW8sDQo+IFll anVuDQo+IEdlc2VuZGV0OiBUdWVzZGF5LCAxOCBGZWJydWFyeSAyMDI1IDExOjA5DQo+IEFuOiBG Rm1wZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbnMgYW5kIHBhdGNoZXMgPGZmbXBlZy0NCj4gZGV2 ZWxAZmZtcGVnLm9yZz4NCj4gQmV0cmVmZjogUmU6IFtGRm1wZWctZGV2ZWxdIFtQQVRDSF0gYXZm aWx0ZXIvZG5uOiBhZGQgemVyby1zaG90IGltYWdlDQo+IGNsYXNzaWZpY2F0aW9uIHVzaW5nIENM SVAgbW9kZWxzDQo+IA0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiBGcm9tOiBmZm1wZWctZGV2ZWwgPGZmbXBlZy1kZXZlbC1ib3VuY2VzQGZmbXBlZy5vcmc+IE9u IEJlaGFsZiBPZg0KPiA+IE1heGltaWxpYW4gS2FpbmRsDQo+ID4gU2VudDogVHVlc2RheSwgRmVi cnVhcnkgMTgsIDIwMjUgMTI6MjkgQU0NCj4gPiBUbzogRkZtcGVnIGRldmVsb3BtZW50IGRpc2N1 c3Npb25zIGFuZCBwYXRjaGVzIDxmZm1wZWctDQo+ID4gZGV2ZWxAZmZtcGVnLm9yZz4NCj4gPiBT dWJqZWN0OiBSZTogW0ZGbXBlZy1kZXZlbF0gW1BBVENIXSBhdmZpbHRlci9kbm46IGFkZCB6ZXJv LXNob3QgaW1hZ2UNCj4gPiBjbGFzc2lmaWNhdGlvbiB1c2luZyBDTElQIG1vZGVscw0KPiA+DQo+ ID4gSGVsbG8gWWVqdW4gR3VvLA0KPiA+DQo+ID4geWVzIGkgY2FuIGRvIHRoYXQgYW5kIHN1Ym1p dCBpdCBpbiBhbm90aGVyIHBhdGNoLiBEbyB5b3UgYWxzbyBoYXZlDQo+ID4gc29tZSBmZWVkYmFj ayBmb3IgdGhlIGNsaXAgYmFja2VuZD8gSSBoYXZlIGFscmVhZHkgbWFkZSBzb21lIHNtYWxsDQo+ ID4gY2hhbmdlcyAoY3VkYSBhY2NlbCBhbmQgbmV3IHByZXByb2Nlc3NpbmcpIHRoYXQgaSB3aWxs IHN1Ym1pdCBhbG9uZw0KPiA+IHdpdGggdGhlIG90aGVyIHBhdGNoLCBidXQgaSB3b3VsZCBsaWtl IHRvIGhlYXIgeW91ciB0aG91Z2h0cy4NCj4gPg0KPiBDb3VsZCB5b3Ugc2hhcmUgd2h5IHdlIG5l ZWQgYSBuZXcgYmFja2VuZD8NCj4gDQo+ID4gVGhhbmtzDQo+ID4NCj4gPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXw0KPiA+IEZyb206IGZmbXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVs LWJvdW5jZXNAZmZtcGVnLm9yZz4gb24gYmVoYWxmIG9mIEd1bywNCj4gPiBZZWp1biA8eWVqdW4u Z3VvLWF0LWludGVsLmNvbUBmZm1wZWcub3JnPg0KPiA+IFNlbnQ6IFN1bmRheSwgRmVicnVhcnkg MTYsIDIwMjUgNzowOSBBTQ0KPiA+IFRvOiBGRm1wZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbnMg YW5kIHBhdGNoZXMgPGZmbXBlZy0NCj4gPiBkZXZlbEBmZm1wZWcub3JnPg0KPiA+IFN1YmplY3Q6 IFJlOiBbRkZtcGVnLWRldmVsXSBbUEFUQ0hdIGF2ZmlsdGVyL2RubjogYWRkIHplcm8tc2hvdCBp bWFnZQ0KPiA+IGNsYXNzaWZpY2F0aW9uIHVzaW5nIENMSVAgbW9kZWxzDQo+ID4NCj4gPg0KPiA+ DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogZmZtcGVnLWRl dmVsIDxmZm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YNCj4gPiA+ IG0ua2FpbmRsMDIwOEBnbWFpbC5jb20NCj4gPiA+IFNlbnQ6IFRodXJzZGF5LCBKYW51YXJ5IDMw LCAyMDI1IDQ6MzMgQU0NCj4gPiA+IFRvOiBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZw0KPiA+ID4g U3ViamVjdDogW0ZGbXBlZy1kZXZlbF0gW1BBVENIXSBhdmZpbHRlci9kbm46IGFkZCB6ZXJvLXNo b3QgaW1hZ2UNCj4gPiA+IGNsYXNzaWZpY2F0aW9uIHVzaW5nIENMSVAgbW9kZWxzDQo+ID4gPg0K PiA+ID4gQWRkIGEgbmV3IGZpbHRlciAnZG5uX2NsaXAnIHRoYXQgcGVyZm9ybXMgemVyby1zaG90 IGltYWdlDQo+ID4gPiBjbGFzc2lmaWNhdGlvbiB1c2luZyBDTElQIChDb250cmFzdGl2ZSBMYW5n dWFnZS1JbWFnZSBQcmUtVHJhaW5pbmcpDQo+IG1vZGVscy4NCj4gPiBUaGUgZmlsdGVyIHN1cHBv cnRzOg0KPiA+DQo+ID4gRm9yIGltYWdlIGNsYXNzaWZpY2F0aW9uIHdpdGggbmV3IGRubiBtb2Rl bHMsIHdlJ2QgYmV0dGVyIGFkZCB0aGUgbmV3DQo+ID4gbW9kZWwgc3VwcG9ydCB3aXRoIGRubl9j bGFzc2lmeSBhdCBodHRwczovL2ZmbXBlZy5vcmcvZmZtcGVnLQ0KPiA+IGZpbHRlcnMuaHRtbCNk bm5fMDA1ZmNsYXNzaWZ5DQo+ID4NCj4gPg0KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fDQo+ID4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdA0KPiA+ IGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnDQo+ID4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4v bGlzdGluZm8vZmZtcGVnLWRldmVsDQo+ID4NCj4gPiBUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGlu ayBhYm92ZSwgb3IgZW1haWwNCj4gPiBmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdp dGggc3ViamVjdCAidW5zdWJzY3JpYmUiLg0KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fDQo+ID4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdA0KPiA+ IGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnDQo+ID4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4v bGlzdGluZm8vZmZtcGVnLWRldmVsDQo+ID4NCj4gPiBUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGlu ayBhYm92ZSwgb3IgZW1haWwNCj4gPiBmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdp dGggc3ViamVjdCAidW5zdWJzY3JpYmUiLg0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXw0KPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0DQo+IGZmbXBl Zy1kZXZlbEBmZm1wZWcub3JnDQo+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ZmbXBlZy1kZXZlbA0KPiANCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9y IGVtYWlsIGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcNCj4gd2l0aCBzdWJqZWN0ICJ1 bnN1YnNjcmliZSIuDQo+IA0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXw0KPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0DQo+IGZmbXBlZy1kZXZlbEBm Zm1wZWcub3JnDQo+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1k ZXZlbA0KPiANCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsIGZm bXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcNCj4gd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmli ZSIuDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1w ZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZt cGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZp c2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcg d2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==