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 ESMTP id 2AF474A897 for ; Thu, 18 Apr 2024 09:13:13 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 251CF68D439; Thu, 18 Apr 2024 12:13:11 +0300 (EEST) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1E61F68D398 for ; Thu, 18 Apr 2024 12:13:05 +0300 (EEST) Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2db2f6cb312so11783541fa.2 for ; Thu, 18 Apr 2024 02:13:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713431584; x=1714036384; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=ZZPONpIDoKxVukgmsRqftON6EKVvYkT9xtBgkI9woQ0=; b=ad7OtZ2bb3U1cwrsGbmp2+WQ667GU9hcoarRRJNt4B68MBZyMxwZ7mMaEopzQdiOgH Sc/w7W9KskzjSVaNiwD8iJp2rK+3kOQB5sBI4epzndp9I9CysUt1IhuR1zXvA+ac8XCZ 1eApIpmVoefFJrLLihjAWrZCqMCxiOxIMWmMWTG7z7tmyI6FoJhFxUVCcM3F1j7n8xBb fvfD2kjyY+/sd9AOzHCXqpMD9q51yWlKnzjfV2HNKxPhvdxVSPQtHyznr5vC1FUdH8Ey Bzj75+B4zwm6tbtY40y5DN9BVIt+7Qs5hRiKPw/xXOXdelX3KokU+0+qOdTru/PsGsqu BM8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713431584; x=1714036384; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZZPONpIDoKxVukgmsRqftON6EKVvYkT9xtBgkI9woQ0=; b=TFsrOmJJej3mxJfzzLeA+w4H59gOBhDnmHAPVx3zbtWONzsocIiHqtRoATy0d3iHUZ QsU2jI4Km6GcwM8Q1qRHUgGYTA510gSb1lzGnORsfS/yx41m8XOiP0a0gHQkQKZRexB2 vTqf+owdjxFwhFCyXdBR7yNm8Z02QGLKnYe/MD0bq6+MARkTdKBZyWTSfUNQEa59IPWs GJcUxqMsl0jjaZyO3QTEX6vexDr7kHXyMfoGo/rVLr5I2UMOscXKebM/mcHDdQu/aG+8 oOhfCvfQkXf0M+lgfcPz6+cDovgWypE6OPfld/deHri7DXk+nMakJxEeZR2MtohHPTH4 xQyQ== X-Gm-Message-State: AOJu0YzS8/cJDNWMr0JOHjksGDAsZwDz1sjaKKAbOzipbuqqVzVs8JG/ GfkdkJnbAoHFtX1sYSJgLzUYZyOvRKAOiv4/vindXP1nBoxbP7WScErxbQ== X-Google-Smtp-Source: AGHT+IEDeXak26ttCNi8XR3U6gqTa9w5PR6XABZgw7rHMJw8BLuZ0AxVG31gKVd5hFst4OEvX3US6A== X-Received: by 2002:a05:651c:4d2:b0:2d8:8fb6:a53d with SMTP id e18-20020a05651c04d200b002d88fb6a53dmr1562944lji.42.1713431583709; Thu, 18 Apr 2024 02:13:03 -0700 (PDT) Received: from [192.168.178.30] (dynamic-2a01-0c23-6110-d700-bc08-065d-5f59-2a5b.c23.pool.telefonica.de. [2a01:c23:6110:d700:bc08:65d:5f59:2a5b]) by smtp.gmail.com with ESMTPSA id 25-20020a170906311900b00a52331a9bdasm624702ejx.48.2024.04.18.02.13.02 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Apr 2024 02:13:03 -0700 (PDT) From: epirat07@gmail.com To: FFmpeg development discussions and patches Date: Thu, 18 Apr 2024 11:13:00 +0200 X-Mailer: MailMate (1.14r6022) Message-ID: <45C32695-88F4-4BE0-BA67-F5F4D0187967@gmail.com> In-Reply-To: References: <20240417135832.GJ6420@pb2> <6633f8dd-8198-4544-88f9-0938d74f5734@pileofstuff.org> MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation 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: CgpPbiAxOCBBcHIgMjAyNCwgYXQgOTo1MiwgU3RlZmFubyBTYWJhdGluaSB3cm90ZToKCj4gT24g ZGF0ZSBXZWRuZXNkYXkgMjAyNC0wNC0xNyAxNzoyNDowMiArMDEwMCwgQW5kcmV3IFNheWVycyB3 cm90ZToKPj4gT24gMTcvMDQvMjAyNCAxNDo1OCwgTWljaGFlbCBOaWVkZXJtYXllciB3cm90ZToK PiBbLi4uXQo+PiBJJ3ZlIG9jY2FzaW9uYWxseSB0cmllZCBnZXR0aW5nIGludG8gZmZtcGVnIGZv ciBvdmVyIGEgZGVjYWRlIG5vdywgYW5kIGhhdmUKPj4gbHVya2VkIGhlcmUgZm9yIHRoZSBwYXN0 IGZldyBtb250aHMgYXMgSSBwdXQgaW4gdGhlIGVmZm9ydCB0byBncm9rIGl0Lgo+PiBPbiBiZWhh bGYgb2YgcGVvcGxlIHdobyBjb3VsZCBjb250cmlidXRlIGJ1dCBkb24ndCwgSSdkIGxpa2UgdG8g c3VnZ2VzdAo+PiBmZm1wZWcgZm9jdXMgb24gKmxlYXJuYWJpbGl0eSouCj4+Cj4KPj4gV2hlbmV2 ZXIgSSd2ZSB0cmllZCB0byBsZWFybiBmZm1wZWcsIEkndmUgYWx3YXlzIGJlZW4gcmVidWZmZWQg YnkKPj4gZG9jdW1lbnRhdGlvbiB0aGF0IHNlZW1zIG5lZWRsZXNzbHkgaGFyZCB0byB1c2UuwqAg SSB1bmRlcnN0YW5kIHNvbWUgb2YKPj4gdGhlc2UgcmVmbGVjdCBkZWVwZXIgaXNzdWVzIC0gZm9y IGV4YW1wbGUgdGhlcmUncyBhIHJlYXNvbiB0aGUgd29yZHMKPj4gImZmbXBlZyIgYW5kICJsaWJh diIgYXJlIHVzZWQgYW1iaWd1b3VzbHksIGV2ZW4gdGhvdWdoIGl0IG1ha2VzIGl0Cj4+IGhhcmQg dG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIHRoZSBsaWJyYXJ5IGFuZCB0aGUgY29tbWFuZC1saW5l IHRvb2wuCj4KPj4gQnV0IG90aGVyIGlzc3VlcyBzZWVtIGxpa2UgcXVpY2sgd2lucyAtIGZvciBl eGFtcGxlIEkndmUgbG9zdCBjb3VudCBvZgo+PiBhbGwgdGhlIHRpbWVzIEkgdHlwZWQgdHdvIGZ1 bmN0aW9ucyBpbnRvIEdvb2dsZSwgc3BlbnQgaG91cnMgdHJ5aW5nIHRvCj4+IG1ha2UgdGhlbSB3 b3JrIHRvZ2V0aGVyLCB0aGVuIGZpbmFsbHkgcmVhbGlzZWQgSSB3YXMgbG9va2luZyBhdCB0aGUK Pj4gZG9jdW1lbnRhdGlvbiBmb3IgMy4wIGluIG9uZSB0YWIgYW5kIDUuMCBpbiB0aGUgb3RoZXIu wqAgU3VyZWx5IHlvdSBjYW4KPj4ganVzdCBhZGQgYSBsaW5lIHRvIHRoZSB0b3Agb2YgdGhlIGRv Y3VtZW50YXRpb24gbGlrZSAiY2xpY2sgaGVyZSB0byBzZWUKPj4gdGhlIHRydW5rIHZlcnNpb24g b2YgdGhpcyBmaWxlIj8KPgo+IEZ1bmN0aW9ucyBhcmUgZG9jdW1lbnRlZCBpbiBkb3h5Z2VuLCBz byB0aGV5IGRlcGVuZCBvbiB0aGUgbWFqb3IubWlub3IKPiB2ZXJzaW9uLCB3aGlsZSB5b3Ugc2Vl bSB0byByZWZlciB0byB0aGUgRkZtcGVnIHZlcnNpb24uIEFsc28gb24gdGhlCj4gd2Vic2l0ZSB3 ZSB1c3VhbGx5IG9ubHkgaGF2ZSB0aGUgbGF0ZXN0IG1haW5saW5lIGRvY3VtZW50YXRpb24sIHNv IEkKPiBkb24ndCB1bmRlcnN0YW5kIGhvdyBjYW4geW91IGhhdmUgZGlmZmVyZW50IHZlcnNpb25z IGluIGRpZmZlcmVudCB0YWJzCj4gKHVubGVzcyB5b3UgZGlkbid0IHVwZGF0ZSB0aGF0IHRhYiBz aW5jZSBtb250aHMveWVhcnMpLgoKVGhhdHMgbm90IHRydWUgYW5kIHNhbWUgdGhpbmdzIGhhcyBo YXBwZW5lZCB0byBtZSBtdWx0aXBsZSB0aW1lcywKdGhhdHMgd2h5IEkgYWx3YXlzIGhhdmUgdG8g Y2hlY2sgdGhlIFVSTCB0byBtYWtlIHN1cmUgdGhlIGRvY3MKYXJlIHRoZSBvbmVzIGZvciBtYXN0 ZXIgb3IgbGF0ZXN0IHJlbGVhc2UgSSBhbSB3b3JraW5nIHdpdGguCgpGb3IgZXhhbXBsZSBzZWUg dGhpcyBhbmNpZW50IGRvY3VtZW50YXRpb24gaGVyZToKaHR0cHM6Ly9mZm1wZWcub3JnL2RveHln ZW4vMS4yL2luZGV4Lmh0bWwKCldlIGdlbmVyYXRlIHRob3NlIGZvciBlYWNoIEZGbXBlZyB2ZXJz aW9uIGFmYWlrLCBub3QgTUFKT1ItTUlOT1Igb2YgdGhlCmxpYnJhcmllczoKCmh0dHBzOi8vZmZt cGVnLm9yZy9kb3h5Z2VuLzYuMC9pbmRleC5odG1sCgpNYXliZSBNaWNoYWVsIGNhbiBjbGFyaWZ5 LCBhcyBJIGhhdmUgbm8gd2F5IHRvIGNoZWNrIGhvdyB0aGVzZSBhcmUgYWN0dWFsbHkKZ2VuZXJh dGVkIGZvciB0aGUgd2Vic2l0ZSwgaWYgdGhpcyBpcyBieSBicmFuY2ggb2Ygc29tZSBvdGhlciBs b2dpYyBvcgpjb21wbGV0ZWx5IG1hbnVhbC4KCkkgZG8gYWdyZWUgd2l0aCBPUCB0aGF0IGl0IHdv dWxkIGJlIFZFUlkgaGVscGZ1bCB0byBoYXZlIHNvbWUgbm90ZSB0aGVyZSBvbgpvbGQgZG9jcyBv ciBzb21lIG92ZXJ2aWV3IG9mIHRoZSBkaWZmZXJlbnQgdmVyc2lvbnMgYXQgbGVhc3QsIHNvIHRo YXQgaXRzIGNsZWFyCnlvdSBhcmUgbG9va2luZyBhdCBvbGRlciBvbmVz4oCmCgo+Cj4gSWYgeW91 IG1lYW4gdGhhdCB3ZSBzaG91bGQgc2hpcCBkb2N1bWVudGF0YXRpb24gZm9yIHRoZSBsYXRlc3QK PiBzdXBwb3J0ZWQgcmVsZWFzZXMsIGluIGFkZGl0aW9uIHRvIGxhdGVzdCBtYWlubGluZSwgSSB0 ZW5kIHRvIGFncmVlLgo+Cj4+IEhlcmUncyBhIHNtYWxsIGV4YW1wbGUgdG8gZGVtb25zdHJhdGUg dGhlIGxhcmdlciBpc3N1ZSAtCj4+IHdoYXQgZG9lcyBpdCBtZWFuIGZvciBzb21ldGhpbmcgdG8g YmUgYSAiY29udGV4dCI/Cj4+IFdoZW4gSSBzdGFydGVkIGxlYXJuaW5nIGhvdyB0byB3cml0ZSBm Zm1wZWcgY29kZSwgSSByZWFkIHRocm91Z2ggdGhlCj4+IGRvY3MgYW5kIHNhdyB2YXJpb3VzIHRo aW5ncyBjYWxsaW5nIHRoZW1zZWx2ZXMgImNvbnRleHQiIHN0cnVjdHMsIGJ1dAo+PiBuZXZlciBm b3VuZCBhIGxpbmsgdG8gZXhwbGFpbiB3aGF0IHRoYXQgbWVhbnQuwqAgSWYgSSB3YXMgYSB5b3Vu Zwo+PiBkZXZlbG9wZXIsIEkgd291bGQgcHJvYmFibHkgaGF2ZSBqdXN0IGFzc3VtZWQgaXQgd2Fz IHN0YW5kYXJkCj4+IHByb2dyYW1taW5nIGphcmdvbiBJIHdhcyB0b28gZHVtYiB0byBrbm93LCBh bmQgd2Fsa2VkIGF3YXkgdG8gZmluZAo+PiBzb21ldGhpbmcgbW9yZSBteSBzcGVlZC7CoCBCdXQg SSdtIG9sZCBhbmQgc3R1YmJvcm4gYW5kIGhhdmUgbm90aGluZwo+PiBiZXR0ZXIgdG8gZG8gcmln aHQgbm93LCBzbyBJIGtlcHQgZ29pbmcuLi4KPj4KPj4gSSB0cmllZCB0byBsZWFybiBieSBnb2lu ZyB0aHJvdWdoIHRoZSBleGFtcGxlcywgYnV0IHRoZSBuZWFyZXN0IHRoaW5nCj4+IHRvIGFuIGV4 cGxhbmF0aW9uIHdhcyBlLmcuIGB0cmFuc2NvZGUuY2AgbWFraW5nIHVwIGEgbmV3IHR5cGUgYW5k Cj4+IGNhbGxpbmcgaXQgYSBgRmlsdGVyaW5nQ29udGV4dGAuwqAgSSBpZ25vcmVkIHRoZSBBVkNs YXNzIGRvY3VtZW50YXRpb24KPj4gZm9yIGEgbG9uZyB0aW1lIGJlY2F1c2UgdGhlIG5hbWUgbWFk ZSBtZSB0aGluayBpdCB3YXMgc29tZSBraW5kIG9mCj4+IEdPYmplY3Qtc3R5bGUgQy13aXRoLWNs YXNzZXMgdGhpbmcuwqAgSXQgd2FzIG9ubHkgd2hlbiBJIG5vdGljZWQgdGhhdAo+PiBpdCBzYXlz IGl0IGRlc2NyaWJlcyAidGhlIGNsYXNzIG9mIGFuIEFWQ2xhc3MgY29udGV4dCBzdHJ1Y3R1cmUi IHRoYXQKPj4gSSByZWFsaXNlZCB3aGF0IEkgd2FzIGxvb2tpbmcgYXQuwqAgQW5kIGl0IHdhcyBv bmx5IHdoZW4gSSBjb252aW5jZWQKPj4gbXlzZWxmIHRoYXQgdGhlIGRvY3VtZW50YXRpb24gZm9y IEFWT3B0aW9ucyB3YXMgdXNpbmcKPgo+PiAiQVZPcHRpb25zLWVuYWJsZWQgc3RydWN0IiB0byBt ZWFuIHRoZSBzYW1lIHRoaW5nIGFzICJBVkNsYXNzIGNvbnRleHQKPj4gc3RydWN0dXJlIiB0aGF0 IEkgZmVsdCBhYmxlIHRvIGRpc3JlZ2FyZCB0aGUgYEZpbHRlcmluZ0NvbnRleHRgLsKgIFNvCj4+ IG15IGN1cnJlbnQgb3BpbmlvbiBpcyB0aGF0ICJBVk9wdGlvbnMtZW5hYmxlZCBzdHJ1Y3QiLCAi QVZDbGFzcwo+PiBjb250ZXh0IHN0cnVjdHVyZSIgYW5kICJjb250ZXh0IHN0cnVjdHVyZSIgYXJl IGRpZmZlcmVudCB0ZXJtcyBmb3IgdGhlCj4+IHNhbWUgdGhpbmcgLSBidXQgbm93IEkndmUgc2Fp ZCB0aGF0IHB1YmxpY2x5LCBJIHdpbGwgbm8gZG91YnQgZmluZCBhbgo+PiAiU3dyQ2xhc3MgY29u dGV4dCBzdHJ1Y3R1cmUiIG9yIHNvbWV0aGluZyB0b21vcnJvdy4KPgo+IEluIGdlbmVyYWwsIGEg ImNvbnRleHQiIGluIHRoZSBGRm1wZWcgamFyZ29uIGlzIHVzdWFsbHkgYSBkYXRhCj4gc3RydWN0 dXJlIHByb3ZpZGluZyB0aGUgY29udGV4dC9zdGF0ZS9jb25maWd1cmF0aW9uIGZvciBhIGdpdmVu Cj4gb3BlcmF0aW9uLCB3aGljaCBjYW4gYmUgbXV4aW5nLCBkZW11eGluZywgZGVjb2RpbmcsIGVu Y29kaW5nLAo+IGZpbHRlcmluZyBldGMuCj4KPiBZb3UgbmVlZCB0byBmaWxsIHRoZSAiY29udGV4 dCIgd2l0aCB0aGUgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzIGFuZAo+IHdpdGggdGhlIGRhdGEg bmVlZGVkIGZvciB0aGUgc3BlY2lmaWMgb3BlcmF0aW9uLgo+Cj4gSW4gZ2VuZXJhbCwgd2hlbiBz ZXR0aW5nIHVwIGEgY29udGV4dCwgeW91IGFsc28gd2FudCBzb21lIGZhY2lsaXRpZXMKPiB0byBh dm9pZCB0byByZXBlYXQgbG9naWMgYWdhaW4gYW5kIGFnYWluOgo+IC0geW91IHdhbnQgdG8gcHJv dmlkZSBtZWFucyB0byBzZW5kIGxvZyBtZXNzYWdlcwo+IC0geW91IHdhbnQgYW4gaW50ZXJmYWNl IHRvIHF1ZXJ5LCBzZXQsIGFuZCBnZXQgb3B0aW9ucwo+IC0geW91IHdhbnQgYSAicHJpdmF0ZSIg aW50ZXJuYWwgY29udGV4dCwgd2l0aCBvcHRpb25zL3BhcmFtZXRlcnMKPiAgIHNwZWNpZmljIGZv ciBhIHBhcnRpY3VsYXIgaW5zdGFuY2Ugb2YgYSBnZW5lcmljIGNvbnRleHQuIEZvciBleGFtcGxl Cj4gICB5b3UgbWlnaHQgd2FudCB0byBzZXQgc3BlY2lmaWMgb3B0aW9ucyB3aGljaCBvbmx5IGFw cGx5IHRvIGEgZ2l2ZW4KPiAgIGVuY29kZXIgKHRoZXNlIGFyZSBzby1jYWxsZWQgInByaXZhdGUi IG9wdGlvbnMpCj4KPiBUaGlzIGlzIGRvbmUgdGhyb3VnaCB0aGUgQVZDbGFzcyBzdHJ1Y3R1cmUs IHdoaWNoIGJlaW5nIGdlbmVyaWMgaXMKPiB1c2VkIGluIHZhcmlvdXMgcGFydHMgb2YgRkZtcGVn Lgo+Cj4gVGhlIEFWT3B0aW9uIGludGVyZmFjZSB3YXNzIGFkZGVkIGxhdGVyLCBzbyBkZXBlbmRp bmcgb24geW91ciB1c2FnZSwKPiB5b3UgbWlnaHQgYmUgZGlyZWN0bHkgc2V0dGluZyBhIGZpZWxk IGluIHRoZSBjb250ZXh0IG9mIHNldCBhbiBvcHRpb24KPiB0aHJvdWdoIHRoZSBBVk9wdGlvbiBw cm9ncmFtbWluZyBpbnRlcmZhY2UuCj4KPiBDdXJyZW50bHkgdGhpcyBpcyB0aGUgZG9jdW1lbnRh dGlvbiBmb3IgQVZDb2RlY0NvbnRleHQ6Cj4KPiAvKioKPiAgKiBtYWluIGV4dGVybmFsIEFQSSBz dHJ1Y3R1cmUuCj4gICogTmV3IGZpZWxkcyBjYW4gYmUgYWRkZWQgdG8gdGhlIGVuZCB3aXRoIG1p bm9yIHZlcnNpb24gYnVtcHMuCj4gICogUmVtb3ZhbCwgcmVvcmRlcmluZyBhbmQgY2hhbmdlcyB0 byBleGlzdGluZyBmaWVsZHMgcmVxdWlyZSBhIG1ham9yCj4gICogdmVyc2lvbiBidW1wLgo+ICAq IFlvdSBjYW4gdXNlIEFWT3B0aW9ucyAoYXZfb3B0KiAvIGF2X3NldC9nZXQqKCkpIHRvIGFjY2Vz cyB0aGVzZSBmaWVsZHMgZnJvbSB1c2VyCj4gICogYXBwbGljYXRpb25zLgo+ICAqIFRoZSBuYW1l IHN0cmluZyBmb3IgQVZPcHRpb25zIG9wdGlvbnMgbWF0Y2hlcyB0aGUgYXNzb2NpYXRlZCBjb21t YW5kIGxpbmUKPiAgKiBwYXJhbWV0ZXIgbmFtZSBhbmQgY2FuIGJlIGZvdW5kIGluIGxpYmF2Y29k ZWMvb3B0aW9uc190YWJsZS5oCj4gICogVGhlIEFWT3B0aW9uL2NvbW1hbmQgbGluZSBwYXJhbWV0 ZXIgbmFtZXMgZGlmZmVyIGluIHNvbWUgY2FzZXMgZnJvbSB0aGUgQwo+ICAqIHN0cnVjdHVyZSBm aWVsZCBuYW1lcyBmb3IgaGlzdG9yaWMgcmVhc29ucyBvciBicmV2aXR5Lgo+ICAqIHNpemVvZihB VkNvZGVjQ29udGV4dCkgbXVzdCBub3QgYmUgdXNlZCBvdXRzaWRlIGxpYmF2Ki4KPiAgKi8KPiB0 eXBlZGVmIHN0cnVjdCBBVkNvZGVjQ29udGV4dCB7Cj4KPiBJIGFncmVlIHRoaXMgbWlnaHQgYmUg aW1wcm92ZWQvdXBkYXRlZCwgIm1haW4gZXh0ZXJuYWwgQVBJIHN0cnVjdHVyZSIKPiBpcyBpbmRl ZWVkIHByZXR0eSB2YWd1ZSBhbmQgaXQgbWlzc2VzIG1hbnkgcmVmZXJlbmNlcyB0byBvdGhlciBw YXJ0IG9mCj4gdGhlIEFQSSAoaW4gcGFydGljdWxhciB0aGUgQVZPcHRpb24gb25lIGRlZmluZWQg aW4KPiBsaWJhdnV0aWwpLiBQcm9iYWJseSBzZW5kaW5nIGEgcGF0Y2ggdG8gZXhwYW5kL2V4dGVu ZC9jbGFyaWZ5IHRoaXMKPiB3b3VsZCBiZSBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuCj4KPj4gVG8g YnJpbmcgdGhpcyBiYWNrIHRvIGZmbXBlZyBkZXZlbG9wbWVudCAtIEkgbWFkZSBhIG5vdGUgdG8g d3JpdGUgYQo+PiBwYXRjaCBzYXlpbmcgdGhleSB3ZXJlIHN5bm9ueW1zIGFuZCBsaW5raW5nIHRo YXQgZXhwbGFuYXRpb24gZnJvbQo+PiBlLmcuIEFWQ29kZWNDb250ZXh0LCBidXQgdGhlIGpvYiBo YXMgYmVlbiByb3R0aW5nIGF3YXkgaW4gbXkgdG9kbyBsaXN0Cj4+IGZvciBhIG1vbnRoIG5vdyB3 YWl0aW5nIGZvciBtZSB0byBiZSAic3VyZSBJJ3ZlIGdvdCBpdCByaWdodCIgKGkuZS4gdG8KPj4g Z2l2ZSB1cCBhIHBlcmZlY3QgZXhjdXNlIGZvciBwcm9jcmFzdGluYXRpb24pLsKgIFRvIGJlIGJs dW50LCBvbiBzb21lCj4+IGxldmVsIGl0IGZlZWxzIGxpa2UgSSd2ZSBwdXQgbW9yZSBpbiB0aGFu IEkndmUgZ290IG91dCBvZiB0aGF0IHByb2JsZW0sCj4+IGFuZCBoYXZlbid0IGJlZW4gYWJsZSB0 byBwc3ljaCBteXNlbGYgdXAgdG8gc3VibWl0IGEgcGF0Y2ggdGhhdCBjb3VsZAo+PiBnZXQgbWUg bGF1Z2hlZCBvdXQgb2YgdGhlIHJvb20gKG9yIHdvcnNlLCBwb2xpdGVseSBpZ25vcmVkKS7CoCBJ ZiB0aGUKPj4gcHJvamVjdCB3YXMgb3RoZXJ3aXNlIGVhc3ktdG8tbGVhcm4sIEkgd291bGQgaGF2 ZSBmZWx0IGEgbXVjaCBzdHJvbmdlcgo+PiBzZW5zZSBvZiBvYmxpZ2F0aW9uIHRvIHBheSB0aGF0 IGJhY2suCj4KPiBUaGlzIGxvb2tzIGxpa2UgdGhlIHVzdWFsIHBhdHRlcm46IGV4cGVyaWVuY2Vk IEFQSSBkZXZlbG9wZXJzIGRvbid0Cj4gZmVlbCB0aGUgbmVlZCB0byBpbXByb3ZlIHRoZSBkb2Nz LCBzbyB0aGV5IGhhdmUgbm8gcmVhbCBpbmNlbnRpdmVzIHRvCj4gZG8gc287IG91dHNpZGVycyBt aWdodCBuZWVkIHRvIGltcHJvdmUgaXQsIGJ1dCB0aGlzIG1lYW5zIHRvCj4gdW5kZXJzdGFuZCB0 aGUgaW50cmljYWNpZXMgb2YgdGhlIGZyYW1ld29yaywgYW5kIGJ5IHRoZSB0aW1lIHRoZXkgZ290 Cj4gaXQgdGhleSBwcm9iYWJseSBkb24ndCBuZWVkIGl0IGFueW1vcmUuCj4KPiBBbHNvIHdyaXRp bmcgZ29vZCBkb2N1bWVudGF0aW9uIC0gYXMgd3JpdGluZyBnb29kIHByb3NlIC0gaXMgKmhhcmQq LAo+IGJ1dCBpbiBnZW5lcmFsIGJhZCBpcyBiZXR0ZXIgdGhhbiBub3RoaW5nLgo+IF9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gZmZtcGVnLWRldmVsIG1h aWxpbmcgbGlzdAo+IGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCj4gaHR0cHM6Ly9mZm1wZWcub3Jn L21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCj4KPiBUbyB1bnN1YnNjcmliZSwgdmlzaXQg bGluayBhYm92ZSwgb3IgZW1haWwKPiBmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdp dGggc3ViamVjdCAidW5zdWJzY3JpYmUiLgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBm Zm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZl bAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZl bC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==