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 76005453DA for ; Tue, 28 Feb 2023 04:41:40 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 057B3680065; Tue, 28 Feb 2023 06:41:36 +0200 (EET) Received: from out203-205-251-53.mail.qq.com (out203-205-251-53.mail.qq.com [203.205.251.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6BDC36809C7 for ; Tue, 28 Feb 2023 06:41:27 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1677559282; bh=TSAwE2rPeoh9F8RVyf+1oVV5QfQbrPEqXZUM82eHyV0=; h=From:Subject:Date:References:To:In-Reply-To; b=fC1Uc6zm8gkQq1SFd45nEeGpwbWbPfu/pWRkaB1M6J94e34KkY4ZrlC9b2C9nBggO mQoe+CgoVNjchRCeWD4MgsgWvtG9UWR9Zseo1IkTMtT7Tzg6yNiVPgEozIXo/0tkvb Oh2OWYcodLuxlPshDk4lzwcZTTYy2E21hWORmU9Y= Received: from smtpclient.apple ([113.108.77.56]) by newxmesmtplogicsvrszb1-0.qq.com (NewEsmtp) with SMTP id A55BEA1A; Tue, 28 Feb 2023 12:41:21 +0800 X-QQ-mid: xmsmtpt1677559281ti5o54r2p Message-ID: X-QQ-XMAILINFO: OaubouGXmhNzxlT2eaEGKqbZ9ijZp109mO3OvXlL+PEYk30Gy5ljARuWFZfPgY /KRtNkVRxuIFEEsyEI5zYiCcHfbz8duEBsbsiOGxPk0YdTHGY3qfXXc4gMR+Mha6YY9Z9BGUVAjo FeaF0W5Cjzn+ov8LDxc9w+wSiQqONikaDk5j6kKayHn/xPek8c4F1DRYj5SVilajPCFSCZ1y/xuQ AHCM94UDXldWtQoAF3D2N7Se31t2VM5dpJpyiPFagfBfDaOnRQ+PV7DFr1szolzQLmbJTzpoA3Qn 5bkcOuO2Ogma6nwHgkdckmYzFrjoLHZUMQIT3JdIOVvDAm8Bbz2Bzfwjlu8gOIAfoLFsSAuipaUf r4USEvJkd285ZvIphj7G+mfJPvEb6X6qlL9BXEvirlKRsZ6446bIaDA2I7TS6PTnHpQUTreM663C UG8EBSMK/8sseubdLWzQ7ZwgJTNdChDx1BBXT80ZEs9nlPSR2aGaRlXFknKUYouQUnOaQp1vxc90 zkYa4eWdEVfE83zg/8vkRI+AilCU1qD782y9rnIXhr0gibGOLGkCXXGFy1KhKb70AkQPWTSI/Z5X bpXEBoyje+X1VPLep+1oICaKto8hf0m+BdgB4u/gCVDq4U148CyZPKsOHDakoVwkc414jUhxqwyP tgHFxCNjiQyfm8nmPczYlabVIcdw9N5WUoGGuAOM5gP2aapCCoozDrmUhFx80fAqACok3ae+YpiR 1+srk6e3h7lj7duZwGpbL4gOTnzPp5YdXnfMeo9SLvib/tDIR1G8aH50EIas6UYpp/fAZp29ovIq HKEVHZYJWmZmXtkPTv+P+s5bfMLAXaEHmOwS2YLZ/i0qPgfmZAPoRdffdDeTL1OBJUfFnFeGN8yn +BS0DcEsKMyeo+M4axF6u1jU/YsGp2H3NgGwNCgPwJap6trROU5jP1LX0UKJmM3418yudCSEJmZE H7dhLENJp1a3AJSEgIHuivSRQr0NFTDxLe2KZThCB+eGjmKfbSot8Uu7OOxlKy From: =?utf-8?B?InpoaWxpemhhbyjotbXlv5fnq4spIg==?= Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Date: Tue, 28 Feb 2023 12:41:22 +0800 References: <20230224182849.426345-1-quinkblack@foxmail.com> To: FFmpeg development discussions and patches In-Reply-To: X-OQ-MSGID: <15A146FF-D66D-4663-A211-1765D77DCD5E@foxmail.com> X-Mailer: Apple Mail (2.3696.120.41.1.1) Subject: Re: [FFmpeg-devel] [PATCH v2 1/8] avformat/movenc: add PCM in mp4 support 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: Cgo+IE9uIEZlYiAyOCwgMjAyMywgYXQgMDQ6MjQsIEphbiBFa3N0csO2bSA8amVlYmpwQGdtYWls LmNvbT4gd3JvdGU6Cj4gCj4gT24gRnJpLCBGZWIgMjQsIDIwMjMgYXQgODoyOSBQTSBaaGFvIFpo aWxpIDxxdWlua2JsYWNrQGZveG1haWwuY29tPiB3cm90ZToKPj4gCj4+IEZyb206IFpoYW8gWmhp bGkgPHpoaWxpemhhb0B0ZW5jZW50LmNvbT4KPj4gCj4+IEl0J3MgZGVmaW5lZCBieSBJU08vSUVD IDIzMDAzLTUuCj4+IAo+PiBGaXhlcyB0aWNrZXQgIzEwMTg1Cj4+IAo+PiBTaWduZWQtb2ZmLWJ5 OiBaaGFvIFpoaWxpIDx6aGlsaXpoYW9AdGVuY2VudC5jb20+Cj4gCj4gVGVjaG5pY2FsbHkgaWYg eW91IHdhbnRlZCB0byBzcGxpdCB0aGVzZSBjb21taXRzLCB0aGVuIHRoaXMKPiBpbXBsZW1lbnRh dGlvbiB3b3VsZCBoYXZlIHRvIGJlIGxpbWl0ZWQgdG8gb25lIGF1ZGlvIGNoYW5uZWwgc3RyZWFt cywKPiBhcyAyMzAwMy01OjIwMjAKPiBzYXlzIGFzIGZvbGxvd3M6Cj4gCj4gLSBUaGUgQ2hhbm5l bExheW91dCBhcyBkZWZpbmVkIGluIElTTy9JRUMgMTQ0OTYtMTIgaXMgbWFuZGF0b3J5IGlmIHRo ZQo+IFBDTSBjaGFubmVsIGNvdW50IGlzIGxhcmdlciB0aGFuIG9uZS4KCk9LLiBXaWxsIGRvIGEg cGluZy1wb25nIHdpdGggdjMuCgo+IAo+PiAtLS0KPj4gbGliYXZmb3JtYXQvbW92ZW5jLmMgfCA2 MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQo+PiAxIGZpbGUg Y2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+PiAKPj4gZGlmZiAtLWdp dCBhL2xpYmF2Zm9ybWF0L21vdmVuYy5jIGIvbGliYXZmb3JtYXQvbW92ZW5jLmMKPj4gaW5kZXgg YzRmY2I1ZjhiMS4uMzMxNTA1N2I4OCAxMDA2NDQKPj4gLS0tIGEvbGliYXZmb3JtYXQvbW92ZW5j LmMKPj4gKysrIGIvbGliYXZmb3JtYXQvbW92ZW5jLmMKPj4gQEAgLTExNzksNiArMTE3OSw0NyBA QCBzdGF0aWMgaW50IG1vdl93cml0ZV9idHJ0X3RhZyhBVklPQ29udGV4dCAqcGIsIE1PVlRyYWNr ICp0cmFjaykKPj4gICAgIHJldHVybiB1cGRhdGVfc2l6ZShwYiwgcG9zKTsKPj4gfQo+PiAKPj4g K3N0YXRpYyBpbnQgaXNfbXA0X3BjbV9jb2RlYyhlbnVtIEFWQ29kZWNJRCBjb2RlYykKPj4gK3sK Pj4gKyAgICBzd2l0Y2ggKGNvZGVjKSB7Cj4+ICsgICAgY2FzZSBBVl9DT0RFQ19JRF9QQ01fUzE2 QkU6Cj4+ICsgICAgY2FzZSBBVl9DT0RFQ19JRF9QQ01fUzE2TEU6Cj4+ICsgICAgY2FzZSBBVl9D T0RFQ19JRF9QQ01fUzI0QkU6Cj4+ICsgICAgY2FzZSBBVl9DT0RFQ19JRF9QQ01fUzI0TEU6Cj4+ ICsgICAgY2FzZSBBVl9DT0RFQ19JRF9QQ01fUzMyQkU6Cj4+ICsgICAgY2FzZSBBVl9DT0RFQ19J RF9QQ01fUzMyTEU6Cj4+ICsKPj4gKyAgICBjYXNlIEFWX0NPREVDX0lEX1BDTV9GMzJCRToKPj4g KyAgICBjYXNlIEFWX0NPREVDX0lEX1BDTV9GMzJMRToKPj4gKyAgICBjYXNlIEFWX0NPREVDX0lE X1BDTV9GNjRCRToKPj4gKyAgICBjYXNlIEFWX0NPREVDX0lEX1BDTV9GNjRMRToKPj4gKyAgICAg ICAgcmV0dXJuIDE7Cj4+ICsgICAgZGVmYXVsdDoKPj4gKyAgICAgICAgcmV0dXJuIDA7Cj4+ICsg ICAgfQo+PiArfQo+IAo+IFRoaXMgc2hvdWxkIGJlIHVubmVjZXNzYXJ5IGlmIHRoZSBjaGVjayBp cyBzd2l0Y2hlZCB0byB0aGUgY29kZWNfdGFncwo+IGluIG1vdl93cml0ZV9hdWRpb190YWcuCgo+ IAo+PiArCj4+ICtzdGF0aWMgaW50IG1vdl93cml0ZV9wY21jX3RhZyhBVkZvcm1hdENvbnRleHQg KnMsIEFWSU9Db250ZXh0ICpwYiwgTU9WVHJhY2sgKnRyYWNrKQo+PiArewo+PiArICAgIGludDY0 X3QgcG9zID0gYXZpb190ZWxsKHBiKTsKPj4gKyAgICBpbnQgZm9ybWF0X2ZsYWdzOwo+PiArCj4+ ICsgICAgYXZpb193YjMyKHBiLCAwKTsgLyogc2l6ZSAqLwo+PiArICAgIGZmaW9fd2ZvdXJjYyhw YiwgInBjbUMiKTsKPj4gKyAgICBhdmlvX3diMzIocGIsIDApOyAvKiB2ZXJzaW9uICYgZmxhZ3Mg Ki8KPj4gKwo+PiArICAgIC8qIDB4MDE6IGluZGljYXRlcyBsaXR0bGUtZW5kaWFuIGZvcm1hdCAq Lwo+PiArICAgIGZvcm1hdF9mbGFncyA9ICh0cmFjay0+cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RF Q19JRF9QQ01fRjMyTEUgfHwKPj4gKyAgICAgICAgICAgICAgICAgICAgdHJhY2stPnBhci0+Y29k ZWNfaWQgPT0gQVZfQ09ERUNfSURfUENNX0Y2NExFIHx8Cj4+ICsgICAgICAgICAgICAgICAgICAg IHRyYWNrLT5wYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1BDTV9TMTZMRSB8fAo+PiArICAg ICAgICAgICAgICAgICAgICB0cmFjay0+cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9QQ01f UzI0TEUgfHwKPj4gKyAgICAgICAgICAgICAgICAgICAgdHJhY2stPnBhci0+Y29kZWNfaWQgPT0g QVZfQ09ERUNfSURfUENNX1MzMkxFKTsKPj4gKyAgICBhdmlvX3c4KHBiLCBmb3JtYXRfZmxhZ3Mp Owo+PiArICAgIGF2aW9fdzgocGIsIHRyYWNrLT5wYXItPmJpdHNfcGVyX3Jhd19zYW1wbGUpOwo+ PiArCj4+ICsgICAgcmV0dXJuIHVwZGF0ZV9zaXplKHBiLCBwb3MpOwo+PiArfQo+IAo+IEdlbmVy YWxseSBsb29rcyBnb29kLiBJIHV0aWxpemVkIGF2X2dldF9leGFjdF9iaXRzX3Blcl9zYW1wbGUs IGJ1dAo+IHNpbmNlIG1vdl93cml0ZV9hdWRpb190YWcgYWxzbyB3cml0ZXMgZG93biBiaXRzX3Bl cl9yYXdfc2FtcGxlLCBzbyBJCj4gdGhpbmsgYmVpbmcgY29uc2lzdGVudCBzaG91bGQgYmUgT0sg OikKPiAKPj4gKwo+PiBzdGF0aWMgaW50IG1vdl93cml0ZV9hdWRpb190YWcoQVZGb3JtYXRDb250 ZXh0ICpzLCBBVklPQ29udGV4dCAqcGIsIE1PVk11eENvbnRleHQgKm1vdiwgTU9WVHJhY2sgKnRy YWNrKQo+PiB7Cj4+ICAgICBpbnQ2NF90IHBvcyA9IGF2aW9fdGVsbChwYik7Cj4+IEBAIC0xMjQz LDcgKzEyODQsOCBAQCBzdGF0aWMgaW50IG1vdl93cml0ZV9hdWRpb190YWcoQVZGb3JtYXRDb250 ZXh0ICpzLCBBVklPQ29udGV4dCAqcGIsIE1PVk11eENvbnRleAo+PiAgICAgICAgIH0gZWxzZSB7 IC8qIHJlc2VydmVkIGZvciBtcDQvM2dwICovCj4+ICAgICAgICAgICAgIGF2aW9fd2IxNihwYiwg dHJhY2stPnBhci0+Y2hfbGF5b3V0Lm5iX2NoYW5uZWxzKTsKPj4gICAgICAgICAgICAgaWYgKHRy YWNrLT5wYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0ZMQUMgfHwKPj4gLSAgICAgICAgICAg ICAgICB0cmFjay0+cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9BTEFDKSB7Cj4+ICsgICAg ICAgICAgICAgICAgdHJhY2stPnBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfQUxBQyB8fAo+ PiArICAgICAgICAgICAgICAgIGlzX21wNF9wY21fY29kZWModHJhY2stPnBhci0+Y29kZWNfaWQp KSB7Cj4gCj4gSSBrbm93IHdoeSB5b3UgdGhpbmsgeW91IHNob3VsZCBiZSBkb2luZyB0aGlzLCBi dXQ6Cj4gCj4gMS4gMTQ0OTYtMTI6MjAyMiBzdGlsbCBkZWZpbmVzIEF1ZGlvU2FtcGxlRW50cnk6 OnNhbXBsZXNpemUgYXMKPiAidGVtcGxhdGUgdW5zaWduZWQgaW50KDE2KSBzYW1wbGVzaXplID0g MTY7Iiwgc28gSVNPQk1GRiBpdHNlbGYgb25seQo+IGxldHMgeW91IHNldCAxNiBoZXJlLgo+IDIu ICAyMzAwMy01OjIwMjAgZG9lcyBub3QgYWxsb3cgb3RoZXIgdmFsdWVzIHRvIGJlIHdyaXR0ZW4g KHRoZQo+IGRvd25zdHJlYW0gc3BlYyBzaG91bGQgZXhwbGljaXRseSBhbGxvdyB3cml0aW5nIG9m IG5vbi10ZW1wbGF0ZQo+IHZhbHVlcykuIFRoaXMgaXMgcHJvYmFibHkgYmVjYXVzZSBwY21DIGl0 c2VsZiBjb250YWlucyBQQ01fc2FtcGxlX3NpemUKPiBmb3IgdGhpcyBzYW1lIHVzZS4KPiAKPiBT byB3cml0aW5nIHNhbXBsZXNpemUgaGVyZSBpcyB0ZWNobmljYWxseSBpbmNvcnJlY3QsIGV2ZW4g dGhvdWdoIEkKPiBrbm93IHRoYXQgbW9zdCBsaWtlbHkgc29tZSBpbXBsZW1lbnRhdGlvbnMgZG8g dGhpcyAodGVjaG5pY2FsbHkKPiBhZ2FpbnN0IHRoZXNlIHNwZWNzKS4KClRlY2huaWNhbGx5IGl0 4oCZcyBhZ2FpbnN0IHNwZWMuIEhvd2V2ZXI6CgoxLiBJdCBsZXRzIG9sZCB2ZXJzaW9uIG9mIGxp YmF2Zm9ybWF0IGFibGUgdG8gZGVtdXggUENNIGluIG1wNC4Kc2FtcGxlc2l6ZSBpcyB1c2VkIGlu c2lkZSBtb3ZfcGFyc2Vfc3RzZF9hdWRpbyBmb3IgQVZfQ09ERUNfSURfUENNLgoKMi4gc2FtcGxl c2l6ZSBpcyBhIGZpeGVkIHZhbHVlIGluIHNwZWMuIElmIG90aGVyIG1wNCBkZW11eGVyIGltcGxl bWVudGF0aW9ucwppZ25vcmUgdGhpcyBmaWVsZCwgaXTigJlzIGZpbmUuIElmIHRoZXkgdXNlIHNh bXBsZXNpemUsIGl04oCZcyBiZXR0ZXIgdG8Kc2V0IHRoZSByZWFsIHZhbHVlLiBJdOKAmXMgYSBw cm9ibGVtIG9ubHkgaWYgdGhleSByZWplY3Qgc2FtcGxlc2l6ZSAhPSAxNiwKd2hpY2ggaXMgdW5s aWtlbHkuCgpXaGF0IGRvIHlvdSB0aGluaz8KCj4gCj4gV2h5IGNoYW5uZWxjb3VudCB3YXMgbWFk ZSBub24tdGVtcGxhdGUgeWV0IHNhbXBsZXNpemUgd2FzIG5vdD8gQSB2ZXJ5Cj4gZ29vZCBxdWVz dGlvbi4gTW9zdCBsaWtlbHkgdGhlIGNoYW5uZWwgbGF5b3V0IHYxIGFuZCBEUkMgYm94ZXMnCj4g Y2hhbmdlcyBzdGFydGVkIHJlcXVpcmluZyB0aGUgZm9ybWVyLCBidXQgbm90IHRoZSBsYXR0ZXI/ Cj4gCj4+ICAgICAgICAgICAgICAgICBhdmlvX3diMTYocGIsIHRyYWNrLT5wYXItPmJpdHNfcGVy X3Jhd19zYW1wbGUpOwo+PiAgICAgICAgICAgICB9IGVsc2Ugewo+PiAgICAgICAgICAgICAgICAg YXZpb193YjE2KHBiLCAxNik7Cj4+IEBAIC0xMzA3LDYgKzEzNDksOCBAQCBzdGF0aWMgaW50IG1v dl93cml0ZV9hdWRpb190YWcoQVZGb3JtYXRDb250ZXh0ICpzLCBBVklPQ29udGV4dCAqcGIsIE1P Vk11eENvbnRleAo+PiAgICAgICAgIHJldCA9IG1vdl93cml0ZV9kbWxwX3RhZyhzLCBwYiwgdHJh Y2spOwo+PiAgICAgZWxzZSBpZiAodHJhY2stPnZvc19sZW4gPiAwKQo+PiAgICAgICAgIHJldCA9 IG1vdl93cml0ZV9nbGJsX3RhZyhwYiwgdHJhY2spOwo+PiArICAgIGVsc2UgaWYgKHRyYWNrLT5t b2RlID09IE1PREVfTVA0ICYmIGlzX21wNF9wY21fY29kZWModHJhY2stPnBhci0+Y29kZWNfaWQp KQo+PiArICAgICAgICByZXQgPSBtb3Zfd3JpdGVfcGNtY190YWcocywgcGIsIHRyYWNrKTsKPiAK PiBJdCB3b3VsZCBzZWVtIHRoYXQgdGhlIGdlbmVyaWMgdm9zX2RhdGEgZXh0cmFkYXRhIHdyaXRp bmcgc2hvdWxkIGJlCj4gdGhlIGxhc3QgZWxzZSBpZiBpbiB0aGlzIGxvZ2ljPyBDb3VsZCBiZSB1 bm5lY2Vzc2FyeSBjYXJnbyBjdWx0aW5nLAo+IGJ1dCBhdCBsZWFzdCBzbyBmYXIgYWxsIG5ldyBj b2RlYyBoYW5kbGluZyB3ZW50IGJlZm9yZSBpdD8KPiAKPiBQZXJzb25hbGx5IEkgd291bGQgaGF2 ZSBqdXN0IGJhc2VkIHRoaXMgY2hlY2sgb24gdGhlIGNvZGVjIHRhZywgYSBsYQo+IAo+IGVsc2Ug aWYgKHRhZyA9PSBNT1ZfTVA0X0lQQ01fVEFHIHx8IHRhZyA9PSBNT1ZfTVA0X0ZQQ01fVEFHKQo+ ICAgIC8vIHBjbUMgaXMgcmVxdWlyZWQgZm9yIHRoZXNlIHRhZ3MgYXMgcGVyIElTTy9JRUMgMjMw MDMtNQo+ICAgIHJldCA9IG1vdl93cml0ZV9wY21jX3RhZyhzLCBwYiwgdHJhY2spOwoKV2lsbCB1 cGRhdGUgaW4gdjMuCgo+IAo+IEFzIHRoYXQgbWF0Y2hlcyB0aGUgc3BlY2lmaWNhdGlvbidzIG5v dGU6Cj4gCj4gLSBNYW5kYXRvcnk6IFllcywgaWYgY29kaW5nbmFtZSBvZiBTYW1wbGVFbnRyeSBp cyDigJhpcGNt4oCZIG9yIOKAmGZwY23igJkuCj4gCj4gVGhlIGNvZGVjIHRhZ3MgYXJlIGFsc28g b25seSBkZWZpbmVkIGluIGNvZGVjX21wNF90YWdzLCBzbyB0aGV5IHdvdWxkCj4gb25seSBnZXQg dXRpbGl6ZWQgaW4gTVA0IGFuZCBvdGhlciBmb3JtYXRzIHdoaWNoIHN1cHBvc2VkbHkgc3VwcG9y dAo+IE1QNCBmb3JtYXRzIChJU01WLCBQU1ApLCBzbyBubyBhZGRpdGlvbmFsIGNoZWNrIGZvciB0 aGF0IHNob3VsZCBiZQo+IHJlcXVpcmVkLgo+IAo+IFRoZXkgYWxyZWFkeSBjb250YWluIHN0dWZm IHN1Y2ggYXMgQVZfQ09ERUNfSURfTVBFR0hfM0RfQVVESU8sIHNvIEkKPiB3b3VsZG4ndCBjb25z aWRlciB0aGlzIGEgcHJvYmxlbSA6KSAuIE1vc3RseSBpbiB0aGUgc2Vuc2UgdGhhdCBpZiBhCj4g bW9yZSBsaW1pdGVkIHNldCBvZiBjb2RlY3MgaXMgd2FudGVkIGZvciBJU01WL1BTUCwgdGhlbiB0 aGV5IHNob3VsZAo+IHJlY2VpdmUgdGhlaXIgb3duIG1vcmUgbGltaXRlZCBsaXN0aW5ncyBhbmQg bm90IHNoYXJlIHRoZSBtcDQgdGFnCj4gbGlzdGluZyA6KSAuCj4gCj4gSWYgeW91IHdvbmRlciBo b3cgbXVjaCB0aGUgY29kZWMgdGFnIGxpc3RpbmcgZ2l2ZXMgeW91IGZyZWVkb21zLCB5b3UKPiBj YW4gY2hlY2sgdGhlIGxvZ2ljIGluIGxpYmF2Zm9ybWF0L211eC5jOjp2YWxpZGF0ZV9jb2RlY190 YWcuCj4gCj4+IAo+PiAgICAgaWYgKHJldCA8IDApCj4+ICAgICAgICAgcmV0dXJuIHJldDsKPj4g QEAgLTc3NDQsNiArNzc4OCwyMCBAQCBzdGF0aWMgY29uc3QgQVZDb2RlY1RhZyBjb2RlY19tcDRf dGFnc1tdID0gewo+PiAgICAgeyBBVl9DT0RFQ19JRF9NUEVHSF8zRF9BVURJTywgIE1LVEFHKCdt JywgJ2gnLCAnbScsICcxJykgfSwKPj4gICAgIHsgQVZfQ09ERUNfSURfVFRNTCwgICAgICAgICAg ICBNT1ZfTVA0X1RUTUxfVEFHICAgICAgICAgIH0sCj4+ICAgICB7IEFWX0NPREVDX0lEX1RUTUws ICAgICAgICAgICAgTU9WX0lTTVZfVFRNTF9UQUcgICAgICAgICB9LAo+PiArCj4+ICsgICAgLyog SVNPL0lFQyAyMzAwMy01IGludGVnZXIgZm9ybWF0cyAqLwo+PiArICAgIHsgQVZfQ09ERUNfSURf UENNX1MxNkJFLCAgICAgICBNS1RBRygnaScsICdwJywgJ2MnLCAnbScpIH0sCj4+ICsgICAgeyBB Vl9DT0RFQ19JRF9QQ01fUzE2TEUsICAgICAgIE1LVEFHKCdpJywgJ3AnLCAnYycsICdtJykgfSwK Pj4gKyAgICB7IEFWX0NPREVDX0lEX1BDTV9TMjRCRSwgICAgICAgTUtUQUcoJ2knLCAncCcsICdj JywgJ20nKSB9LAo+PiArICAgIHsgQVZfQ09ERUNfSURfUENNX1MyNExFLCAgICAgICBNS1RBRygn aScsICdwJywgJ2MnLCAnbScpIH0sCj4+ICsgICAgeyBBVl9DT0RFQ19JRF9QQ01fUzMyQkUsICAg ICAgIE1LVEFHKCdpJywgJ3AnLCAnYycsICdtJykgfSwKPj4gKyAgICB7IEFWX0NPREVDX0lEX1BD TV9TMzJMRSwgICAgICAgTUtUQUcoJ2knLCAncCcsICdjJywgJ20nKSB9LAo+PiArICAgIC8qIElT Ty9JRUMgMjMwMDMtNSBmbG9hdGluZy1wb2ludCBmb3JtYXRzICovCj4+ICsgICAgeyBBVl9DT0RF Q19JRF9QQ01fRjMyQkUsICAgICAgIE1LVEFHKCdmJywgJ3AnLCAnYycsICdtJykgfSwKPj4gKyAg ICB7IEFWX0NPREVDX0lEX1BDTV9GMzJMRSwgICAgICAgTUtUQUcoJ2YnLCAncCcsICdjJywgJ20n KSB9LAo+PiArICAgIHsgQVZfQ09ERUNfSURfUENNX0Y2NEJFLCAgICAgICBNS1RBRygnZicsICdw JywgJ2MnLCAnbScpIH0sCj4+ICsgICAgeyBBVl9DT0RFQ19JRF9QQ01fRjY0TEUsICAgICAgIE1L VEFHKCdmJywgJ3AnLCAnYycsICdtJykgfSwKPj4gKwo+IAo+IFRoaXMgbGlzdGluZyBzZWVtcyBh bHJpZ2h0LiBQZXJzb25hbGx5IEkgYWRkZWQgYSBkZWZpbmUgZm9yIHRoZXNlIHR3bwo+IGlkZW50 aWZpZXJzLCBidXQgZWl0aGVyIGlzIGZpbmUuCj4gCj4+ICAgICB7IEFWX0NPREVDX0lEX05PTkUs ICAgICAgICAgICAgICAgMCB9LAo+PiB9Owo+PiAjaWYgQ09ORklHX01QNF9NVVhFUiB8fCBDT05G SUdfUFNQX01VWEVSCj4+IC0tCj4+IDIuMzQuMQo+PiAKPj4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+ PiBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwo+PiBodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9s aXN0aW5mby9mZm1wZWctZGV2ZWwKPj4gCj4+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFi b3ZlLCBvciBlbWFpbAo+PiBmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3Vi amVjdCAidW5zdWJzY3JpYmUiLgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+IGZmbXBlZy1kZXZlbEBm Zm1wZWcub3JnCj4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRl dmVsCj4gCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4gZmZt cGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1k ZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcu b3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQg bGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRo IHN1YmplY3QgInVuc3Vic2NyaWJlIi4K