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 CC88B45DA5 for ; Thu, 11 May 2023 01:40:23 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4A90468BE8C; Thu, 11 May 2023 04:40:21 +0300 (EEST) Received: from mail-yw1-f170.google.com (mail-yw1-f170.google.com [209.85.128.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DE4AE68A48F for ; Thu, 11 May 2023 04:40:14 +0300 (EEST) Received: by mail-yw1-f170.google.com with SMTP id 00721157ae682-559eae63801so120838477b3.2 for ; Wed, 10 May 2023 18:40:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683769213; x=1686361213; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=K3/cStUPR0tdtXR2K5/9XuKLEK4BCyBYHPb+3Xc/1V4=; b=MsiPWPWJAV0c9TE0OSvf4daM7m/FOlSpQkfMvxOXiI9YnvNHB0LhfHiFx06Kfhcmnj rHMZjDuwmMWhwB7xY94yH0OXSsXzJ0wca8I0tk0T5CoUTS0dtuTqWZvPSF6ii/VN7OOJ eEmhONwzM42F7s83nQI9ageXveZqilIEflNhT9fs00CRTdoMCUgA/K438AEPCxbn0wj/ i1ypXyeTJtf7FdpVNpmzOxScar0Ma7U0K7lqCVGNhMZgpKsf2IfbqmlqCJb1A0jUM++e AgLcd7yYgT5gxbllR6lIwb4IGsVIVFi1V+F2v8loO/JTy7ZEvn1eKS9Qb2umqC1N8Yqb /raQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683769213; x=1686361213; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=K3/cStUPR0tdtXR2K5/9XuKLEK4BCyBYHPb+3Xc/1V4=; b=BD4f+SeIXONIVeYp1dL6VMv3KuopmrY4VzO1AKIRFp9lUTv2M9tEIz0yaWLuiTHotz EfiodFPD1cOhd3srFlS01xJYwSyGq2l4vES1VNhMkXLo5P9i5HXKGX3GMvfPp3aNYtXV un/xVdqSL8LS4iVJJw8j327+kJxKfCAbIwKo6c7a6bMQvObtCOF2h/etTR47p0lRcr+Y CtQZffrgGBCTOYrgwqfDbwu8ZkRRvWHS1yQgo52zMswGWqevzd+P2BDseiPrE52aLETx jbJkQGh/QV+TLPlN32NiMCOyTO3DKaIRbTq0LyGvzxYEr4We/IkrMgebcpbuSO7+iJ1E 7OBQ== X-Gm-Message-State: AC+VfDzpc2sG3LMx5hET43VvNUslcrcqZOiGeDuSsP0eacYIAl7zaym+ iUmNcvCqiktdsog/SWS2CQ30hhDReU8VqKNjtYvzGi5kwd4wYQ== X-Google-Smtp-Source: ACHHUZ5EBRY+8OqkInzZflA31vuKXHHmn7A/SbC7fsw7oXoU71HbV7t2xO7bz5UHcL1W0oY9EENLNsFxx2f/HRXf/g4= X-Received: by 2002:a81:6c4a:0:b0:559:f7d4:661b with SMTP id h71-20020a816c4a000000b00559f7d4661bmr21156462ywc.14.1683769212910; Wed, 10 May 2023 18:40:12 -0700 (PDT) MIME-Version: 1.0 References: <20230413094441.56225-1-lq@chinaffmpeg.org> <20230413094441.56225-4-lq@chinaffmpeg.org> <5d1b1f26-bea7-4c34-e4e6-5b9be70f674a@gyani.pro> <816147ee-7674-37fb-4f30-e029269e52b8@gyani.pro> In-Reply-To: From: Steven Liu Date: Thu, 11 May 2023 09:40:01 +0800 Message-ID: To: FFmpeg development discussions and patches Subject: Re: [FFmpeg-devel] [PATCH v8 3/6] avformat/flvenc: support mux av1 in enhanced flv 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: TmVhbCBHb21wYSA8bmdvbXBhMTNAZ21haWwuY29tPiDkuo4yMDIz5bm0NeaciDEx5pel5ZGo5Zub IDA5OjMx5YaZ6YGT77yaCj4KPiBPbiBXZWQsIE1heSAxMCwgMjAyMyBhdCA3OjEz4oCvQU0gU3Rl dmVuIExpdSA8bGluZ2ppdWppYW5rZUBnbWFpbC5jb20+IHdyb3RlOgo+ID4KPiA+IE5lYWwgR29t cGEgPG5nb21wYTEzQGdtYWlsLmNvbT4g5LqOMjAyM+W5tDXmnIgxMOaXpeWRqOS4iSAxOTowNeWG memBk++8mgo+ID4gPgo+ID4gPiBPbiBUdWUsIE1heSA5LCAyMDIzIGF0IDY6NDjigK9BTSBHeWFu IERvc2hpIDxmZm1wZWdAZ3lhbmkucHJvPiB3cm90ZToKPiA+ID4gPgo+ID4gPiA+Cj4gPiA+ID4K PiA+ID4gPiBPbiAyMDIzLTA1LTA5IDA0OjA1IHBtLCBOZWFsIEdvbXBhIHdyb3RlOgo+ID4gPiA+ ID4gT24gVHVlLCBNYXkgOSwgMjAyMyBhdCAxMjoxNOKAr0FNIEd5YW4gRG9zaGkgPGZmbXBlZ0Bn eWFuaS5wcm8+IHdyb3RlOgo+ID4gPiA+ID4+Cj4gPiA+ID4gPj4KPiA+ID4gPiA+PiBPbiAyMDIz LTA1LTA5IDA4OjExIGFtLCBOZWFsIEdvbXBhIHdyb3RlOgo+ID4gPiA+ID4+PiBPbiBNb24sIE1h eSA4LCAyMDIzIGF0IDk6NTXigK9QTSBTdGV2ZW4gTGl1IDxsaW5naml1amlhbmtlQGdtYWlsLmNv bT4gd3JvdGU6Cj4gPiA+ID4gPj4+PiBOZWFsIEdvbXBhIDxuZ29tcGExM0BnbWFpbC5jb20+IOS6 jjIwMjPlubQ15pyIOeaXpeWRqOS6jCAwNzowOOWGmemBk++8mgo+ID4gPiA+ID4+Pj4+IE9uIFRo dSwgQXByIDEzLCAyMDIzIGF0IDU6NDXigK9BTSBTdGV2ZW4gTGl1IDxscUBjaGluYWZmbXBlZy5v cmc+IHdyb3RlOgo+ID4gPiA+ID4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBTdGV2ZW4gTGl1IDxscUBj aGluYWZmbXBlZy5vcmc+Cj4gPiA+ID4gPj4+Pj4+IC0tLQo+ID4gPiA+ID4+Pj4+PiAgICBsaWJh dmZvcm1hdC9mbHZlbmMuYyB8IDI1ICsrKysrKysrKysrKysrKysrKysrLS0tLS0KPiA+ID4gPiA+ Pj4+Pj4gICAgMSBmaWxlIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0p Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9m bHZlbmMuYyBiL2xpYmF2Zm9ybWF0L2ZsdmVuYy5jCj4gPiA+ID4gPj4+Pj4+IGluZGV4IDU3YTI2 MjQ1ZmYuLjdiNDNlY2FlZmEgMTAwNjQ0Cj4gPiA+ID4gPj4+Pj4+IC0tLSBhL2xpYmF2Zm9ybWF0 L2ZsdmVuYy5jCj4gPiA+ID4gPj4+Pj4+ICsrKyBiL2xpYmF2Zm9ybWF0L2ZsdmVuYy5jCj4gPiA+ ID4gPj4+Pj4+IEBAIC0yOCw2ICsyOCw3IEBACj4gPiA+ID4gPj4+Pj4+ICAgICNpbmNsdWRlICJs aWJhdmNvZGVjL21wZWc0YXVkaW8uaCIKPiA+ID4gPiA+Pj4+Pj4gICAgI2luY2x1ZGUgImF2aW8u aCIKPiA+ID4gPiA+Pj4+Pj4gICAgI2luY2x1ZGUgImF2Yy5oIgo+ID4gPiA+ID4+Pj4+PiArI2lu Y2x1ZGUgImF2MS5oIgo+ID4gPiA+ID4+Pj4+PiAgICAjaW5jbHVkZSAiaGV2Yy5oIgo+ID4gPiA+ ID4+Pj4+PiAgICAjaW5jbHVkZSAiYXZmb3JtYXQuaCIKPiA+ID4gPiA+Pj4+Pj4gICAgI2luY2x1 ZGUgImZsdi5oIgo+ID4gPiA+ID4+Pj4+PiBAQCAtNDgsNiArNDksNyBAQCBzdGF0aWMgY29uc3Qg QVZDb2RlY1RhZyBmbHZfdmlkZW9fY29kZWNfaWRzW10gPSB7Cj4gPiA+ID4gPj4+Pj4+ICAgICAg ICB7IEFWX0NPREVDX0lEX1ZQNkEsICAgICBGTFZfQ09ERUNJRF9WUDZBIH0sCj4gPiA+ID4gPj4+ Pj4+ICAgICAgICB7IEFWX0NPREVDX0lEX0gyNjQsICAgICBGTFZfQ09ERUNJRF9IMjY0IH0sCj4g PiA+ID4gPj4+Pj4+ICAgICAgICB7IEFWX0NPREVDX0lEX0hFVkMsICAgICBNS0JFVEFHKCdoJywg J3YnLCAnYycsICcxJykgfSwKPiA+ID4gPiA+Pj4+Pj4gKyAgICB7IEFWX0NPREVDX0lEX0FWMSwg ICAgICBNS0JFVEFHKCdhJywgJ3YnLCAnMCcsICcxJykgfSwKPiA+ID4gPiA+Pj4+Pj4gICAgICAg IHsgQVZfQ09ERUNfSURfTk9ORSwgICAgIDAgfQo+ID4gPiA+ID4+Pj4+PiAgICB9Owo+ID4gPiA+ ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiBAQCAtNDk0LDcgKzQ5Niw4IEBAIHN0YXRpYyB2b2lkIGZs dl93cml0ZV9jb2RlY19oZWFkZXIoQVZGb3JtYXRDb250ZXh0KiBzLCBBVkNvZGVjUGFyYW1ldGVy cyogcGFyLCBpCj4gPiA+ID4gPj4+Pj4+ICAgICAgICBGTFZDb250ZXh0ICpmbHYgPSBzLT5wcml2 X2RhdGE7Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICBpZiAocGFyLT5jb2Rl Y19pZCA9PSBBVl9DT0RFQ19JRF9BQUMgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9I MjY0Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgICAgICB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NP REVDX0lEX01QRUc0IHx8IHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQykgewo+ID4g PiA+ID4+Pj4+PiArICAgICAgICAgICAgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9N UEVHNCB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0hFVkMKPiA+ID4gPiA+Pj4+Pj4g KyAgICAgICAgICAgIHx8IHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfQVYxKSB7Cj4gPiA+ ID4gPj4+Pj4+ICAgICAgICAgICAgaW50NjRfdCBwb3M7Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAg ICAgYXZpb193OChwYiwKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICAgICAgICAgIHBhci0+Y29k ZWNfdHlwZSA9PSBBVk1FRElBX1RZUEVfVklERU8gPwo+ID4gPiA+ID4+Pj4+PiBAQCAtNTQwLDYg KzU0Myw5IEBAIHN0YXRpYyB2b2lkIGZsdl93cml0ZV9jb2RlY19oZWFkZXIoQVZGb3JtYXRDb250 ZXh0KiBzLCBBVkNvZGVjUGFyYW1ldGVycyogcGFyLCBpCj4gPiA+ID4gPj4+Pj4+ICAgICAgICAg ICAgICAgIGlmIChwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0hFVkMpIHsKPiA+ID4gPiA+ Pj4+Pj4gICAgICAgICAgICAgICAgICAgIGF2aW9fdzgocGIsIEZMVl9JU19FWF9IRUFERVIgfCBQ YWNrZXRUeXBlU2VxdWVuY2VTdGFydCk7IC8vIEV4VmlkZW9UYWdIZWFkZXIgbW9kZSB3aXRoIFBh Y2tldFR5cGVTZXF1ZW5jZVN0YXJ0Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgICAgICBh dmlvX3dyaXRlKHBiLCAiaHZjMSIsIDQpOwo+ID4gPiA+ID4+Pj4+PiArICAgICAgICAgICAgfSBl bHNlIGlmIChwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0FWMSkgewo+ID4gPiA+ID4+Pj4+ PiArICAgICAgICAgICAgICAgIGF2aW9fdzgocGIsIEZMVl9JU19FWF9IRUFERVIgfCBQYWNrZXRU eXBlU2VxdWVuY2VTdGFydCk7Cj4gPiA+ID4gPj4+Pj4+ICsgICAgICAgICAgICAgICAgYXZpb193 cml0ZShwYiwgImF2MDEiLCA0KTsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICAgICAgfSBlbHNl IHsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICAgICAgICAgIGF2aW9fdzgocGIsIHBhci0+Y29k ZWNfdGFnIHwgRkxWX0ZSQU1FX0tFWSk7IC8vIGZsYWdzCj4gPiA+ID4gPj4+Pj4+ICAgICAgICAg ICAgICAgICAgICBhdmlvX3c4KHBiLCAwKTsgLy8gQVZDIHNlcXVlbmNlIGhlYWRlcgo+ID4gPiA+ ID4+Pj4+PiBAQCAtNTQ4LDYgKzU1NCw4IEBAIHN0YXRpYyB2b2lkIGZsdl93cml0ZV9jb2RlY19o ZWFkZXIoQVZGb3JtYXRDb250ZXh0KiBzLCBBVkNvZGVjUGFyYW1ldGVycyogcGFyLCBpCj4gPiA+ ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgIGlmIChwYXItPmNvZGVjX2lk ID09IEFWX0NPREVDX0lEX0hFVkMpCj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgICAgICBm Zl9pc29tX3dyaXRlX2h2Y2MocGIsIHBhci0+ZXh0cmFkYXRhLCBwYXItPmV4dHJhZGF0YV9zaXpl LCAwKTsKPiA+ID4gPiA+Pj4+Pj4gKyAgICAgICAgICAgIGVsc2UgaWYgKHBhci0+Y29kZWNfaWQg PT0gQVZfQ09ERUNfSURfQVYxKQo+ID4gPiA+ID4+Pj4+PiArICAgICAgICAgICAgICAgIGZmX2lz b21fd3JpdGVfYXYxYyhwYiwgcGFyLT5leHRyYWRhdGEsIHBhci0+ZXh0cmFkYXRhX3NpemUsIDEp Owo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICAgICAgICBlbHNlCj4gPiA+ID4gPj4+Pj4+ICAgICAg ICAgICAgICAgICAgICBmZl9pc29tX3dyaXRlX2F2Y2MocGIsIHBhci0+ZXh0cmFkYXRhLCBwYXIt PmV4dHJhZGF0YV9zaXplKTsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICB9Cj4gPiA+ID4gPj4+ Pj4+IEBAIC02NDAsNyArNjQ4LDggQEAgc3RhdGljIGludCBmbHZfaW5pdChzdHJ1Y3QgQVZGb3Jt YXRDb250ZXh0ICpzKQo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICAgICAg ICBpZiAocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHNCB8fAo+ID4gPiA+ID4+Pj4+ PiAgICAgICAgICAgICAgICAgICAgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9IMjYzIHx8 Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgICAgICAgICAgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RF Q19JRF9IRVZDKSB7Cj4gPiA+ID4gPj4+Pj4+ICsgICAgICAgICAgICAgICAgcGFyLT5jb2RlY19p ZCA9PSBBVl9DT0RFQ19JRF9IRVZDIHx8Cj4gPiA+ID4gPj4+Pj4+ICsgICAgICAgICAgICAgICAg cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9BVjEpIHsKPiA+ID4gPiA+Pj4+Pj4gICAgICAg ICAgICAgICAgICAgIGludCBlcnJvciA9IHMtPnN0cmljdF9zdGRfY29tcGxpYW5jZSA+IEZGX0NP TVBMSUFOQ0VfVU5PRkZJQ0lBTDsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICAgICAgICAgIGF2 X2xvZyhzLCBlcnJvciA/IEFWX0xPR19FUlJPUiA6IEFWX0xPR19XQVJOSU5HLAo+ID4gPiA+ID4+ Pj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICJDb2RlYyAlcyBpcyBub3Qgc3VwcG9ydGVk IGluIHRoZSBvZmZpY2lhbCBGTFYgc3BlY2lmaWNhdGlvbixcbiIsIGF2Y29kZWNfZ2V0X25hbWUo cGFyLT5jb2RlY19pZCkpOwo+ID4gPiA+ID4+Pj4+PiBAQCAtODQ4LDEzICs4NTcsMTUgQEAgc3Rh dGljIGludCBmbHZfd3JpdGVfcGFja2V0KEFWRm9ybWF0Q29udGV4dCAqcywgQVZQYWNrZXQgKnBr dCkKPiA+ID4gPiA+Pj4+Pj4gICAgICAgIGlmIChwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lE X1ZQNkYgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDZBIHx8Cj4gPiA+ID4gPj4+ Pj4+ICAgICAgICAgICAgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WUDYgIHx8IHBhci0+ Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfQUFDKQo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICAgIGZs YWdzX3NpemUgPSAyOwo+ID4gPiA+ID4+Pj4+PiAtICAgIGVsc2UgaWYgKHBhci0+Y29kZWNfaWQg PT0gQVZfQ09ERUNfSURfSDI2NCB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX01QRUc0 IHx8IHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQykKPiA+ID4gPiA+Pj4+Pj4gKyAg ICBlbHNlIGlmIChwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0gyNjQgfHwgcGFyLT5jb2Rl Y19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHNCB8fAo+ID4gPiA+ID4+Pj4+PiArICAgICAgICAgICAg IHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQyB8fCBwYXItPmNvZGVjX2lkID09IEFW X0NPREVDX0lEX0FWMSkKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICBmbGFnc19zaXplID0gNTsK PiA+ID4gPiA+Pj4+Pj4gICAgICAgIGVsc2UKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICBmbGFn c19zaXplID0gMTsKPiA+ID4gPiA+Pj4+Pj4KPiA+ID4gPiA+Pj4+Pj4gICAgICAgIGlmIChwYXIt PmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0FBQyB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NPREVD X0lEX0gyNjQKPiA+ID4gPiA+Pj4+Pj4gLSAgICAgICAgICAgIHx8IHBhci0+Y29kZWNfaWQgPT0g QVZfQ09ERUNfSURfTVBFRzQgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9IRVZDKSB7 Cj4gPiA+ID4gPj4+Pj4+ICsgICAgICAgICAgICB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NPREVD X0lEX01QRUc0IHx8IHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQwo+ID4gPiA+ID4+ Pj4+PiArICAgICAgICAgICAgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9BVjEpIHsK PiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgICBzaXplX3Qgc2lkZV9zaXplOwo+ID4gPiA+ID4+Pj4+ PiAgICAgICAgICAgIHVpbnQ4X3QgKnNpZGUgPSBhdl9wYWNrZXRfZ2V0X3NpZGVfZGF0YShwa3Qs IEFWX1BLVF9EQVRBX05FV19FWFRSQURBVEEsICZzaWRlX3NpemUpOwo+ID4gPiA+ID4+Pj4+PiAg ICAgICAgICAgIGlmIChzaWRlICYmIHNpZGVfc2l6ZSA+IDAgJiYgKHNpZGVfc2l6ZSAhPSBwYXIt PmV4dHJhZGF0YV9zaXplIHx8IG1lbWNtcChzaWRlLCBwYXItPmV4dHJhZGF0YSwgc2lkZV9zaXpl KSkpIHsKPiA+ID4gPiA+Pj4+Pj4gQEAgLTg3NCw3ICs4ODUsOCBAQCBzdGF0aWMgaW50IGZsdl93 cml0ZV9wYWNrZXQoQVZGb3JtYXRDb250ZXh0ICpzLCBBVlBhY2tldCAqcGt0KQo+ID4gPiA+ID4+ Pj4+PiAgICAgICAgICAgICAgICAgICAiUGFja2V0cyBhcmUgbm90IGluIHRoZSBwcm9wZXIgb3Jk ZXIgd2l0aCByZXNwZWN0IHRvIERUU1xuIik7Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgcmV0 dXJuIEFWRVJST1IoRUlOVkFMKTsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgIH0KPiA+ID4gPiA+Pj4+ Pj4gLSAgICBpZiAocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9IMjY0IHx8IHBhci0+Y29k ZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzQgfHwgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19J RF9IRVZDKSB7Cj4gPiA+ID4gPj4+Pj4+ICsgICAgaWYgKHBhci0+Y29kZWNfaWQgPT0gQVZfQ09E RUNfSURfSDI2NCB8fCBwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX01QRUc0IHx8Cj4gPiA+ ID4gPj4+Pj4+ICsgICAgICAgIHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQyB8fCAg cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9BVjEpIHsKPiA+ID4gPiA+Pj4+Pj4gICAgICAg ICAgICBpZiAocGt0LT5wdHMgPT0gQVZfTk9QVFNfVkFMVUUpIHsKPiA+ID4gPiA+Pj4+Pj4gICAg ICAgICAgICAgICAgYXZfbG9nKHMsIEFWX0xPR19FUlJPUiwgIlBhY2tldCBpcyBtaXNzaW5nIFBU U1xuIik7Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZB TCk7Cj4gPiA+ID4gPj4+Pj4+IEBAIC05ODcsNiArOTk5LDkgQEAgc3RhdGljIGludCBmbHZfd3Jp dGVfcGFja2V0KEFWRm9ybWF0Q29udGV4dCAqcywgQVZQYWNrZXQgKnBrdCkKPiA+ID4gPiA+Pj4+ Pj4gICAgICAgICAgICBpZiAocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9IRVZDKSB7Cj4g PiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgIGF2aW9fdzgocGIsIEZMVl9JU19FWF9IRUFERVIg fCBQYWNrZXRUeXBlQ29kZWRGcmFtZXNYKTsgLy8gRXhWaWRlb1RhZ0hlYWRlciBtb2RlIHdpdGgg UGFja2V0VHlwZUNvZGVkRnJhbWVzWAo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICAgICAgICBhdmlv X3dyaXRlKHBiLCAiaHZjMSIsIDQpOwo+ID4gPiA+ID4+Pj4+PiArICAgICAgICB9IGVsc2UgaWYg KHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfQVYxKSB7Cj4gPiA+ID4gPj4+Pj4+ICsgICAg ICAgICAgICBhdmlvX3c4KHBiLCBGTFZfSVNfRVhfSEVBREVSIHwgUGFja2V0VHlwZUNvZGVkRnJh bWVzKTsKPiA+ID4gPiA+Pj4+Pj4gKyAgICAgICAgICAgIGF2aW9fd3JpdGUocGIsICJhdjAxIiwg NCk7Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgfSBlbHNlIHsKPiA+ID4gPiA+Pj4+Pj4gICAg ICAgICAgICAgICAgYXZpb193OChwYiwgZmxhZ3MpOwo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICAg IH0KPiA+ID4gPiA+Pj4+Pj4gLS0KPiA+ID4gPiA+Pj4+Pj4gMi40MC4wCj4gPiA+ID4gPj4+Pj4+ Cj4gPiA+ID4gPj4+Pj4gSSB0ZXN0ZWQgdGhpcyBieSBhcHBseWluZyB0aGUgcGF0Y2hlcyBvbiB0 b3Agb2YgZmZtcGVnIDYuMCBhbmQgaXQKPiA+ID4gPiA+Pj4+PiBkb2Vzbid0IHNlZW0gdG8gd29y azoKPiA+ID4gPiA+Pj4+Pgo+ID4gPiA+ID4+Pj4+ICAgICBsaWJhdnV0aWwgICAgICA1OC4gIDIu MTAwIC8gNTguICAyLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJhdmNvZGVjICAgICA2MC4gIDMu MTAwIC8gNjAuICAzLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJhdmZvcm1hdCAgICA2MC4gIDMu MTAwIC8gNjAuICAzLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJhdmRldmljZSAgICA2MC4gIDEu MTAwIC8gNjAuICAxLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJhdmZpbHRlciAgICAgOS4gIDMu MTAwIC8gIDkuICAzLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJzd3NjYWxlICAgICAgNy4gIDEu MTAwIC8gIDcuICAxLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJzd3Jlc2FtcGxlICAgNC4gMTAu MTAwIC8gIDQuIDEwLjEwMAo+ID4gPiA+ID4+Pj4+ICAgICBsaWJwb3N0cHJvYyAgICA1Ny4gIDEu MTAwIC8gNTcuICAxLjEwMAo+ID4gPiA+ID4+Pj4+IFtsaWJkYXYxZCBAIDB4NTVjOWVhOGNhZTgw XSBsaWJkYXYxZCAxLjEuMAo+ID4gPiA+ID4+Pj4+IElucHV0ICMwLCBtYXRyb3NrYSx3ZWJtLCBm cm9tICcyMDIzLTA1LTA4IDE4LTUyLTQyLm1rdic6Cj4gPiA+ID4gPj4+Pj4gICAgIE1ldGFkYXRh Ogo+ID4gPiA+ID4+Pj4+ICAgICAgIEVOQ09ERVIgICAgICAgICA6IExhdmY2MC4zLjEwMAo+ID4g PiA+ID4+Pj4+ICAgICBEdXJhdGlvbjogMDA6MDI6MDAuNTMsIHN0YXJ0OiAwLjAwMDAwMCwgYml0 cmF0ZTogMTE1NSBrYi9zCj4gPiA+ID4gPj4+Pj4gICAgIFN0cmVhbSAjMDowOiBWaWRlbzogYXYx IChNYWluKSwgeXV2NDIwcCh0diwgYnQ3MDkpLCAxMjgweDcyMCwgMzAKPiA+ID4gPiA+Pj4+PiBm cHMsIDMwIHRiciwgMWsgdGJuCj4gPiA+ID4gPj4+Pj4gICAgICAgTWV0YWRhdGE6Cj4gPiA+ID4g Pj4+Pj4gICAgICAgICBEVVJBVElPTiAgICAgICAgOiAwMDowMjowMC41MzMwMDAwMDAKPiA+ID4g PiA+Pj4+PiAgICAgU3RyZWFtICMwOjE6IEF1ZGlvOiBhYWMgKExDKSwgNDgwMDAgSHosIHN0ZXJl bywgZmx0cAo+ID4gPiA+ID4+Pj4+ICAgICAgIE1ldGFkYXRhOgo+ID4gPiA+ID4+Pj4+ICAgICAg ICAgdGl0bGUgICAgICAgICAgIDogVHJhY2sxCj4gPiA+ID4gPj4+Pj4gICAgICAgICBEVVJBVElP TiAgICAgICAgOiAwMDowMjowMC41MzMwMDAwMDAKPiA+ID4gPiA+Pj4+PiBbZmx2IEAgMHg1NWM5 ZWE5MzYxNDBdIENvZGVjIGF2MSBpcyBub3Qgc3VwcG9ydGVkIGluIHRoZSBvZmZpY2lhbCBGTFYK PiA+ID4gPiA+Pj4+PiBzcGVjaWZpY2F0aW9uLAo+ID4gPiA+ID4+Pj4+IFtmbHYgQCAweDU1Yzll YTkzNjE0MF0gdXNlIHZzdHJpY3Q9LTEgLyAtc3RyaWN0IC0xIHRvIHVzZSBpdCBhbnl3YXkuCj4g PiA+ID4gPj4+PiBQYXkgYXR0ZW50aW9uIHRoaXMgd2FybmluZyBtZXNzYWdlLgo+ID4gPiA+ID4+ Pj4KPiA+ID4gPiA+Pj4+PiBbb3V0IzAvZmx2IEAgMHg1NWM5ZWE4Y2RhODBdIENvdWxkIG5vdCB3 cml0ZSBoZWFkZXIgKGluY29ycmVjdCBjb2RlYwo+ID4gPiA+ID4+Pj4+IHBhcmFtZXRlcnMgPyk6 IEludmFsaWQgYXJndW1lbnQKPiA+ID4gPiA+Pj4+PiBbYW9zdCMwOjEvY29weSBAIDB4NTVjOWVh OTdhZTAwXSBFcnJvciBpbml0aWFsaXppbmcgb3V0cHV0IHN0cmVhbToKPiA+ID4gPiA+Pj4+PiBT dHJlYW0gbWFwcGluZzoKPiA+ID4gPiA+Pj4+PiAgICAgU3RyZWFtICMwOjAgLT4gIzA6MCAoY29w eSkKPiA+ID4gPiA+Pj4+PiAgICAgU3RyZWFtICMwOjEgLT4gIzA6MSAoY29weSkKPiA+ID4gPiA+ Pj4+PiAgICAgICBMYXN0IG1lc3NhZ2UgcmVwZWF0ZWQgMSB0aW1lcwo+ID4gPiA+ID4+PiBXZWxs LCB0aGlzIGlzIG15IGNvbW1hbmQ6Cj4gPiA+ID4gPj4+Cj4gPiA+ID4gPj4+ICQgZmZtcGVnIC1p ICJpbnB1dC5ta3YiIC12Y29kZWMgY29weSAtYWNvZGVjIGNvcHkgIm91dHB1dC5mbHYiCj4gPiA+ ID4gPj4+Cj4gPiA+ID4gPj4+IFdoYXQgc2hvdWxkIEkgYmUgZG9pbmcgaW5zdGVhZD8KPiA+ID4g PiA+PiAgICAgZmZtcGVnIC1pICJpbnB1dC5ta3YiIC12Y29kZWMgY29weSAtYWNvZGVjIGNvcHkg LXN0cmljdCAtMSAib3V0cHV0LmZsdiIKPiA+ID4gPiA+Pgo+ID4gPiA+ID4gVGhhdCBkZWZlYXRz IHRoZSBwb2ludCBvZiB0aGlzIHBhdGNoLiBUaGlzIHBhdGNoIGFkZHMgcHJvcGVyIHN1cHBvcnQK PiA+ID4gPiA+IGZvciBBVjEgdG8gdGhlIEZMViBjb2RlLCBzbyBpdCBzaG91bGQgbm90IG5lZWQg dGhhdC4KPiA+ID4gPgo+ID4gPiA+IFRoaXMgcGF0Y2ggZG9lcyBub3QgYWRkIEhFVkMgb3IgQVYx IHN1cHBvcnQgdG8gdGhlIEZMViAqc3BlY2lmaWNhdGlvbiosCj4gPiA+ID4gaGVuY2UgdGhlIGd1 YXJkLgo+ID4gPiA+Cj4gPiA+Cj4gPiA+IFRoZSB0aGluZyBpcywgdGhpcyBwYXRjaCBzZXJpZXMg aXMgYWJvdXQgaW1wbGVtZW50aW5nIHN1cHBvcnQgZm9yIHRoZQo+ID4gPiBlbmhhbmNlZCBGTFYg c3BlY2lmaWNhdGlvbi4KPiA+IE5vLCBUaGF0IGRvY3VtZW50YXRpb24gaXMgbm90IGZsdiBvZmZp Y2lhbCBzcGVjaWZpY2F0aW9uLCBpdCBqdXN0IGEgZG9jdW1lbnQuCj4KPiBGcmFua2x5LCBzbyB3 YXMgdGhlIG9yaWdpbmFsIG9uZS4gVGhlIG5ldyBzcGVjaWZpY2F0aW9uIGlzIGJlaW5nCj4gc3Rl d2FyZGVkIGJ5IGEgZ3JvdXAgdGhhdCBoYXMgdGhlIGN1cnJlbnQgb3duZXIgb2YgdGhlIFJUTVAg c3BlYyBhcyBhCj4gbWVtYmVyIChWZXJpc2tvcGUpLgo+Cj4gUlRNUCB3YXMgbmV2ZXIgSUVURiBv ciBJU08gc3RhbmRhcmRpemVkLCBhbmQgbmVpdGhlciB3YXMgRkxWLiBGNFYgd2FzCj4gZGVyaXZl ZCBmcm9tIE1QNC9NT1YsIGJ1dCB0aGF0J3Mgbm90IHdoYXQgUlRNUCB1c2VzLgoKSUlSQywgUlRN UCBhbmQgRkxWIG9mZmljaWFsIHNwZWNpZmljYXRpb24gaXMgcmVsZWFzZWQgYnkgQWRvYmUsIG5v dAp2ZW92ZXJhLCByaWdodD8KCj4KPiBUaGlzIGFyZ3VtZW50IG9mIGl0IGJlaW5nICJqdXN0IGEg ZG9jdW1lbnQiIGFwcGxpZXMgdG8gdGhlIG9yaWdpbmFsCj4gc3BlYyBmcm9tIEFkb2JlL1Zlcmlz a29wZSB0b28uCj4KPiBJIHN0aWxsIHRoaW5rIGl0J3MgcmVhc29uYWJsZSB0aGF0IHRoZSBlbmhh bmNlZCBGTFYgc3BlYyB3b3VsZCBiZQo+IHN1cHBvcnRlZCB3aXRob3V0IHJlcXVpcmluZyBkaXNh YmxpbmcgInN0cmljdCIgbW9kZS4gVGhhdCBzYWlkLCBJCj4gdGhpbmsgaXQncyBmYWlyIHRvIHdh cm4gdGhhdCB3ZSdyZSB1c2luZyAqbmV3KiBmZWF0dXJlcyBvZiB0aGUgRkxWCj4gc3BlYyBhbmQg dGhlcmUgbWF5IGJlIGluY29tcGF0aWJpbGl0aWVzIHdpdGggb2xkZXIgc29mdHdhcmUuCj4KPgo+ Cj4KVGhhbmtzClN0ZXZlbgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3Jn Cmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5z dWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0 QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==