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 A49C043234 for ; Sat, 25 Jun 2022 04:51:33 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 76DA368B7A2; Sat, 25 Jun 2022 07:51:31 +0300 (EEST) Received: from smtpbg.qq.com (smtpbg138.qq.com [106.55.201.18]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B2BF968B74E for ; Sat, 25 Jun 2022 07:51:24 +0300 (EEST) X-QQ-mid: bizesmtp75t1656132678ta0lm2lf Received: from [127.0.0.1] ( [114.245.19.167]) by bizesmtp.qq.com (ESMTP) with id ; Sat, 25 Jun 2022 12:51:17 +0800 (CST) X-QQ-SSF: 00100000002000Z0Z000B00A0000000 X-QQ-FEAT: F3yR32iATbg/hOSPVXhfb4a0fiSPZo0tvkksj9lioKfca539x4YL0HRcln836 7dk0EFpZYN52ofoTORdxaCaY0B0EvhhpLQ2l7rLM0fPiHzBxNiXQGlIZ5gzZ8R5iK4nlYq/ qPbuWWgbfT3KQucJwDmbcynGGUuSTw4WrlbJDNaN56L+6wgtJG1eWHrVdk0cjRLv5akYGz8 VEGU2zYSKO70Oy09G9NXmlu0JISCzZ/PA32RSwlOJDQQEbeDIitNNRFokdRIjIV1SSx8QVK 5ya17erBryoGJJE6AezTombDkmEa9mIqFxasTKPmwhqVlrnuA2xSmkE9VNxWolhgiXvcbhm aj/IauS X-QQ-GoodBg: 0 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.7\)) From: Steven Liu In-Reply-To: Date: Sat, 25 Jun 2022 12:51:15 +0800 Message-Id: <72023989-5CD8-4EAF-BF84-F896B23257C0@chinaffmpeg.org> References: <20220623150040.1981341-1-wolfleekay@gmail.com> To: FFmpeg development discussions and patches X-Mailer: Apple Mail (2.3445.9.7) X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:chinaffmpeg.org:qybgspam:qybgspam10 Subject: Re: [FFmpeg-devel] [PATCH] avformat/hls:use EXT-X-START instead of live_start_index if it's in playlist 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 Cc: Steven Liu Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Cgo+INTaIDIwMjLE6jbUwjI1yNWjrDEyOjMyo6zJ2dPuwO4gPHdvbGZsZWVrYXlAZ21haWwuY29t PiDQtLXAo7oKPiAKPiBIaSBTdGV2ZW4sCj4gCj4gUGxlYXNlIHJldmlldyBjb2RlLgo+IAo+IEkg Y2hhbmdlZCBjb2RlLCBidXQgSSBzdGlsbCBoYXZlIGEgcXVlc3Rpb24uCj4gSWYgRVhULVgtU1RB UlQgdGFnIGluIHBsYXlsaXN0IGFuZCB1c2VycyBzZXQgbGl2ZV9zdGFydF9pbmRleCwgdGhlCj4g bGl2ZV9zdGFydF9pbmRleCB3aWxsIG5vdCB3b3JrCj4gZm9yIGN1cnJlbnQgY29kZXMsIHdoaWNo IG1ha2VzIG1heWJlIHVzZXJzIGNvbmZ1c2VkLgo+IElzIHRoYXQgT0s/CmZvciBjdXJyZW50IGNv ZGVzLCB1c2VyIGNhbm5vdCBhd2FyZSB0aGVyZSBoYXZlIEVYVC1YLVNUQVJUIHRhZyBpbiB0aGUg cGxheWxpc3QsIHNvIGkgdGhpbmsgd2Ugc2hvdWxkIHJlc2VydmUgdGhlIG9sZCB1c2UgbWV0aG9k LgpvciBtYXliZSB5b3UgY2FuIGFkZCBhbiBvcHRpb24gZm9yIHVzZXIgdG8gZGVjaWRlIHdoaWNo IHdheSB0aGV5IGNhbiB1c2UgKGVpdGhlciBFWFQtWC1TVEFSVCBvciBsaXZlX3N0YXJ0X2luZGV4 KS4KQmVjYXVzZSB0aGVyZSBzaG91bGQgaGF2ZSBtYW55IHBlb3BsZSB1c2luZyBsaXZlX3N0YXJ0 X2luZGV4IGZvciAndGltZSBzaGlmdKGvIGJ5IHBsYXllciAodXNlciBjb250cm9sKSwKCj4gCj4g SW4gb3RoZXIgaGFuZCwgaWYgbWFrZSBsaXZlX3N0YXJ0X2luZGV4IHZhbGlkIHdoZW4gRVhULVgt U1RBUlQgdGFnIGluCj4gcGxheWxpc3QsIG1heWJlIGxpdmVfc3RhcnRfaW5kZXggbmVlZHMgYSBm bGFnLCBvcgo+IG1ha2UgbGl2ZV9zdGFydF9pbmRleCBkZWZhdWx0IHZhbHVlIGlzIElOVF9NSU4g dG8gZGlzdGluZ3Vpc2guCj4gYmVjdWFzZSB0aGUgbGl2ZV9zdGFydF9pbmRleCBkZWZhdWx0IHZh bHVlIGlzIC0zLCBJIGhhdmUgbm8gaWRlYSB0bwo+IGRpc3Rpbmd1aXNoIHVzZXJzIGFjdGlvbiBv cgo+IGRlZmF1bHQgdmFsdWUgd2hlbiBsaXZlX3N0YXJ0X2luZGV4PS0zLgp5ZXMgY2Fubm90IGRp c3Rpbmd1aXNoIHVzZXJzIGFjdGlvbiwgYnV0IHVzZXIgc2hvdWxkIGNhbiBkZWNpZGVkIHVzZSBs aXZlX3N0YXJ0X2luZGV4IG9yIEVYVC1YLVNUQVJULgoKPiAKPiBNYXkgSSBuZWVkIHRvIHNldCBk ZWZhdWx0IHZhbHVlPUlOVF9NSU4gYXMgbGl2ZV9zdGFydF9pbmRleCBkZWZhdWx0IHZhbHVlPwo+ IEFuZCBvbmx5IHdoZW4gZG9lcyBub3QgZXhpc3QgRVhULVgtU1RBUlQKPiB0YWcgaW4gcGxheWxp c3QsIG1ha2UgbGl2ZV9zdGFydF9pbmRleCA9IC0zIG9yIHVzZXJzJ3MgY29uZmlndXJhdGlvbiB2 YWx1ZS4KPiBJIGhhdmUgbm8gaWRlYSB3aGljaCBpcyBiZXR0ZXJ+Cj4gCj4gVGhhbmtzIGEgbG90 IQo+IAo+IFN0ZXZlbiBMaXUgPGxpbmdqaXVqaWFua2VAZ21haWwuY29tPiDT2jIwMjLE6jbUwjI0 yNXW3M7lIDE0OjIx0LS1wKO6Cj4gCj4+IMnZ0+7A7iA8d29sZmxlZWtheUBnbWFpbC5jb20+INPa MjAyMsTqNtTCMjTI1dbczuUgMTE6NTjQtLXAo7oKPj4+PiAKPj4+PiAKPj4+PiBIaSwgU3RldmVu Cj4+PiAKPj4+IAo+Pj4gSSBnb3QgaXQuCj4+PiAKPj4+IFVzZXIgY291bGQgdXNlICJsaXZlX3N0 YXJ0X2luZGV4IiBvcHRpb24gZXZlbiBpZiAjRVhULVgtU1RBUlQgaW4gdGhlCj4+IHBsYXlsaXN0 Lgo+Pj4gCj4+PiBJIGNoYW5nZWQgdGhlIHByaW9yaXR5IGFib3V0ICNFWFQtWC1TVEFSVC9saXZl X3N0YXJ0X2luZGV4LAo+Pj4gCj4+PiB0aGlzIGlzIG5ldyBiZWxsb3c6Cj4+PiAKPj4+IC0tLQo+ Pj4gbGliYXZmb3JtYXQvaGxzLmMgfCA2OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLQo+Pj4gMSBmaWxlIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDUg ZGVsZXRpb25zKC0pCj4+PiAKPj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9obHMuYyBiL2xp YmF2Zm9ybWF0L2hscy5jCj4+PiBpbmRleCBiNzM2ZjA5M2E5Li4zMDk0NzFlZmNlIDEwMDY0NAo+ Pj4gLS0tIGEvbGliYXZmb3JtYXQvaGxzLmMKPj4+ICsrKyBiL2xpYmF2Zm9ybWF0L2hscy5jCj4+ PiBAQCAtMTIwLDYgKzEyMCw4IEBAIHN0cnVjdCBwbGF5bGlzdCB7Cj4+PiAgICAgZW51bSBQbGF5 bGlzdFR5cGUgdHlwZTsKPj4+ICAgICBpbnQ2NF90IHRhcmdldF9kdXJhdGlvbjsKPj4+ICAgICBp bnQ2NF90IHN0YXJ0X3NlcV9ubzsKPj4+ICsgICAgaW50IHRpbWVfb2Zmc2V0X2ZsYWc7Cj4+PiAr ICAgIGludDY0X3Qgc3RhcnRfdGltZV9vZmZzZXQ7Cj4+PiAgICAgaW50IG5fc2VnbWVudHM7Cj4+ PiAgICAgc3RydWN0IHNlZ21lbnQgKipzZWdtZW50czsKPj4+ICAgICBpbnQgbmVlZGVkOwo+Pj4g QEAgLTc0MSw2ICs3NDMsNyBAQCBzdGF0aWMgaW50IHBhcnNlX3BsYXlsaXN0KEhMU0NvbnRleHQg KmMsIGNvbnN0IGNoYXIKPj4gKnVybCwKPj4+ICAgICBzdHJ1Y3Qgc2VnbWVudCAqKnByZXZfc2Vn bWVudHMgPSBOVUxMOwo+Pj4gICAgIGludCBwcmV2X25fc2VnbWVudHMgPSAwOwo+Pj4gICAgIGlu dDY0X3QgcHJldl9zdGFydF9zZXFfbm8gPSAtMTsKPj4+ICsgICAgY29uc3QgY2hhciAqcDsKPj4+ IAo+Pj4gICAgIGlmIChpc19odHRwICYmICFpbiAmJiBjLT5odHRwX3BlcnNpc3RlbnQgJiYgYy0+ cGxheWxpc3RfcGIpIHsKPj4+ICAgICAgICAgaW4gPSBjLT5wbGF5bGlzdF9wYjsKPj4+IEBAIC04 ODksNiArODkyLDE4IEBAIHN0YXRpYyBpbnQgcGFyc2VfcGxheWxpc3QoSExTQ29udGV4dCAqYywg Y29uc3QgY2hhcgo+PiAqdXJsLAo+Pj4gICAgICAgICAgICAgICAgIGN1cl9pbml0X3NlY3Rpb24t PmtleSA9IE5VTEw7Cj4+PiAgICAgICAgICAgICB9Cj4+PiAKPj4+ICsgICAgICAgIH0gZWxzZSBp ZiAoYXZfc3Ryc3RhcnQobGluZSwgIiNFWFQtWC1TVEFSVDoiLCAmcHRyKSkgewo+Pj4gKyAgICAg ICAgICAgIHJldCA9IGVuc3VyZV9wbGF5bGlzdChjLCAmcGxzLCB1cmwpOwo+Pj4gKyAgICAgICAg ICAgIGlmIChyZXQgPCAwKSB7Cj4+PiArICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKPj4+ICsg ICAgICAgICAgICB9Cj4+PiArICAgICAgICAgICAgaWYgKGF2X3N0cnN0YXJ0KHB0ciwgIlRJTUUt T0ZGU0VUPSIsICZwKSkgewo+Pj4gKyAgICAgICAgICAgICAgICBmbG9hdCBvZmZzZXQgPSBzdHJ0 b2YocCwgTlVMTCk7Cj4+PiArICAgICAgICAgICAgICAgIHBscy0+c3RhcnRfdGltZV9vZmZzZXQg PSBvZmZzZXQgKiBBVl9USU1FX0JBU0U7Cj4+PiArICAgICAgICAgICAgICAgIHBscy0+dGltZV9v ZmZzZXRfZmxhZyA9IDE7Cj4+PiArICAgICAgICAgICAgfSBlbHNlIHsKPj4+ICsgICAgICAgICAg ICAgICAgZ290byBmYWlsOwo+Pj4gKyAgICAgICAgICAgIH0KPj4+ICAgICAgICAgfSBlbHNlIGlm IChhdl9zdHJzdGFydChsaW5lLCAiI0VYVC1YLUVORExJU1QiLCAmcHRyKSkgewo+Pj4gICAgICAg ICAgICAgaWYgKHBscykKPj4+ICAgICAgICAgICAgICAgICBwbHMtPmZpbmlzaGVkID0gMTsKPj4+ IEBAIC0xNzIxLDEwICsxNzM2LDU0IEBAIHN0YXRpYyBpbnQ2NF90IHNlbGVjdF9jdXJfc2VxX25v KEhMU0NvbnRleHQgKmMsCj4+IHN0cnVjdCBwbGF5bGlzdCAqcGxzKQo+Pj4gCj4+PiAgICAgICAg IC8qIElmIHRoaXMgaXMgYSBsaXZlIHN0cmVhbSwgc3RhcnQgbGl2ZV9zdGFydF9pbmRleCBzZWdt ZW50cwo+PiBmcm9tIHRoZQo+Pj4gICAgICAgICAgKiBzdGFydCBvciBlbmQgKi8KPj4+IC0gICAg ICAgIGlmIChjLT5saXZlX3N0YXJ0X2luZGV4IDwgMCkKPj4+IC0gICAgICAgICAgICByZXR1cm4g cGxzLT5zdGFydF9zZXFfbm8gKyBGRk1BWChwbHMtPm5fc2VnbWVudHMgKwo+PiBjLT5saXZlX3N0 YXJ0X2luZGV4LCAwKTsKPj4+IC0gICAgICAgIGVsc2UKPj4+IC0gICAgICAgICAgICByZXR1cm4g cGxzLT5zdGFydF9zZXFfbm8gKyBGRk1JTihjLT5saXZlX3N0YXJ0X2luZGV4LAo+PiBwbHMtPm5f c2VnbWVudHMgLSAxKTsKPj4+ICsgICAgICAgIGlmIChjLT5saXZlX3N0YXJ0X2luZGV4ICE9IElO VF9NSU4pIHsKPj4gTWF5YmUgeW91IHNob3VsZCBub3QgY2hhbmdlIGN1cnJlbnQgbG9naWMuCj4+ IFlvdSBjYW4ganVzdCBhZGQgIGFib3V0IHByb2Nlc3MgRVhULVgtU1RBUlQgc2VuY2UsLgo+PiBG b3IgZXhhbXBsZToKPj4gY29tcHV0ZSB0aGUgc3RhcnRfc2VxX25vIGFuZCBzYXZlIHRoZSB2YWx1 ZSB0byBhIHRlbXAgdmFyaWJsZSBhbmQKPj4gZG9uJ3QgcmV0dXJuIGltbWVkaWF0ZWx5LCBjaGVj ayB0aGUgdGhpcmQgc2NlbmNlIHdoaWNoIGdldCBFWFQtWC1TVEFSVAo+PiB0YWcgZnJvbSBwbGF5 bGlzdC4KPj4gcHJvY2VzcyB0aGUgdGVtcCB2YXJpYmxlIGFmdGVyIHN0YXJ0X3NlcV9ubyBjb21w dXRlIGZyb20KPj4gbGl2ZV9zdGFydF9pbmRleCBvciBFWFQtWC1TVEFSVC4KPj4gCj4+PiArICAg ICAgICAgICAgaWYgKGMtPmxpdmVfc3RhcnRfaW5kZXggPCAwKQo+Pj4gKyAgICAgICAgICAgICAg ICByZXR1cm4gcGxzLT5zdGFydF9zZXFfbm8gKyBGRk1BWChwbHMtPm5fc2VnbWVudHMgKwo+Pj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMtPmxpdmVf c3RhcnRfaW5kZXgsIDApOwo+Pj4gKyAgICAgICAgICAgIGVsc2UKPj4+ICsgICAgICAgICAgICAg ICAgcmV0dXJuIHBscy0+c3RhcnRfc2VxX25vICsgRkZNSU4oYy0+bGl2ZV9zdGFydF9pbmRleCwK Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbHMt Pm5fc2VnbWVudHMgLSAxKTsKPj4+ICsgICAgICAgIH0gZWxzZSBpZiAoYy0+bGl2ZV9zdGFydF9p bmRleCA9PSBJTlRfTUlOICYmCj4+ICFwbHMtPnRpbWVfb2Zmc2V0X2ZsYWcpIHsKPj4+ICsgICAg ICAgICAgICByZXR1cm4gcGxzLT5zdGFydF9zZXFfbm8gKyBGRk1BWChwbHMtPm5fc2VnbWVudHMg LSAzLCAwKTsKPj4+ICsgICAgICAgIH0gZWxzZSB7Cj4+PiArICAgICAgICAgICAgLyogSWYgcGxh eWxpc3QgaW5kaWNhdGUgYSBUSU1FLU9GRlNFVCBhbmQgdXNlciBub3QgdXNlCj4+IGxpdmVfc3Rh cnRfaW5kZXgsCj4+PiArICAgICAgICAgICAgICogbmVlZCB0byByZWNhbGN1bGF0ZSBzZXFfbm8g Ki8KPj4+ICsgICAgICAgICAgICBpbnQgaTsKPj4+ICsgICAgICAgICAgICBpbnQ2NF90IHN0YXJ0 X3RpbWVzdGFtcDsKPj4+ICsgICAgICAgICAgICBpbnQ2NF90IHBsYXlsaXN0X2R1cmF0aW9uID0g MDsKPj4+ICsgICAgICAgICAgICBpbnQ2NF90IGN1cl90aW1lc3RhbXAgPSBjLT5jdXJfdGltZXN0 YW1wID09IEFWX05PUFRTX1ZBTFVFCj4+ID8gMCA6Cj4+PiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgYy0+Y3VyX3RpbWVzdGFtcDsKPj4+ICsKPj4+ICsgICAgICAgICAgICBm b3IgKGkgPSAwOyBpIDwgcGxzLT5uX3NlZ21lbnRzOyBpKyspIHsKPj4+ICsgICAgICAgICAgICAg ICAgcGxheWxpc3RfZHVyYXRpb24gKz0gcGxzLT5zZWdtZW50c1tpXS0+ZHVyYXRpb247Cj4+PiAr ICAgICAgICAgICAgfQo+Pj4gKyAgICAgICAgICAgIC8qIElmIHRoZSBhYnNvbHV0ZSB2YWx1ZSBv ZiBUSU1FLU9GRlNFVCBleGNlZWRzCj4+PiArICAgICAgICAgICAgICogdGhlIGR1cmF0aW9uIG9m IHRoZSBwbGF5bGlzdCwgaXQgaW5kaWNhdGVzIGVpdGhlciB0aGUKPj4gZW5kIG9mIHRoZQo+Pj4g KyAgICAgICAgICAgICAqIHBsYXlsaXN0IChpZiBwb3NpdGl2ZSkgb3IgdGhlIGJlZ2lubmluZyBv ZiB0aGUgcGxheWxpc3QKPj4gKGlmCj4+PiArICAgICAgICAgICAgICogbmVnYXRpdmUpLiAqLwo+ Pj4gKyAgICAgICAgICAgIGlmIChwbHMtPnN0YXJ0X3RpbWVfb2Zmc2V0ID49MCAmJgo+Pj4gKyAg ICAgICAgICAgICAgICBwbHMtPnN0YXJ0X3RpbWVfb2Zmc2V0ID4gcGxheWxpc3RfZHVyYXRpb24p Cj4+PiArICAgICAgICAgICAgICAgIHN0YXJ0X3RpbWVzdGFtcCA9IGN1cl90aW1lc3RhbXAgKyBw bGF5bGlzdF9kdXJhdGlvbjsKPj4+ICsgICAgICAgICAgICBlbHNlIGlmIChwbHMtPnN0YXJ0X3Rp bWVfb2Zmc2V0ID49IDAgJiYKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICBwbHMtPnN0YXJ0 X3RpbWVfb2Zmc2V0IDw9IHBsYXlsaXN0X2R1cmF0aW9uKQo+Pj4gKyAgICAgICAgICAgICAgICBz dGFydF90aW1lc3RhbXAgPSBjdXJfdGltZXN0YW1wICsKPj4gcGxzLT5zdGFydF90aW1lX29mZnNl dDsKPj4+ICsgICAgICAgICAgICBlbHNlIGlmIChwbHMtPnN0YXJ0X3RpbWVfb2Zmc2V0IDwgMCAm Jgo+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgIHBscy0+c3RhcnRfdGltZV9vZmZzZXQgPCAt cGxheWxpc3RfZHVyYXRpb24pCj4+PiArICAgICAgICAgICAgICAgIHN0YXJ0X3RpbWVzdGFtcCA9 IGN1cl90aW1lc3RhbXA7Cj4+PiArICAgICAgICAgICAgZWxzZSBpZiAocGxzLT5zdGFydF90aW1l X29mZnNldCA8IDAgJiYKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICBwbHMtPnN0YXJ0X3Rp bWVfb2Zmc2V0ID4gLXBsYXlsaXN0X2R1cmF0aW9uKQo+Pj4gKyAgICAgICAgICAgICAgICBzdGFy dF90aW1lc3RhbXAgPSBjdXJfdGltZXN0YW1wICsgcGxheWxpc3RfZHVyYXRpb24gKwo+Pj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBscy0+c3RhcnRfdGltZV9vZmZzZXQ7 Cj4+PiArICAgICAgICAgICAgZWxzZQo+Pj4gKyAgICAgICAgICAgICAgICBzdGFydF90aW1lc3Rh bXAgPSBjdXJfdGltZXN0YW1wOwo+Pj4gKwo+Pj4gKyAgICAgICAgICAgIGZpbmRfdGltZXN0YW1w X2luX3BsYXlsaXN0KGMsIHBscywgc3RhcnRfdGltZXN0YW1wLAo+PiAmc2VxX25vLCBOVUxMKTsK Pj4+ICsgICAgICAgICAgICBhdl9sb2coYywgQVZfTE9HX0RFQlVHLCAic3RhcnRfdGltZXN0YW1w OiAlIiBQUklkNjQKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY3Vy X3RpbWVzdGFtcDolIiBQUklkNjQKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiY3VyX3NlcV9ubzolIiBQUklkNjQgIlxuIiwKPj4+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdGFydF90aW1lc3RhbXAsIGN1cl90aW1lc3RhbXAsCj4+IHNlcV9u byk7Cj4+PiArICAgICAgICAgICAgcmV0dXJuIHNlcV9ubzsKPj4+ICsgICAgICAgIH0KPj4+ICAg ICB9Cj4+PiAKPj4+ICAgICAvKiBPdGhlcndpc2UganVzdCBzdGFydCBvbiB0aGUgZmlyc3Qgc2Vn bWVudC4gKi8KPj4+IEBAIC0yNDc1LDcgKzI1MzQsNyBAQCBzdGF0aWMgaW50IGhsc19wcm9iZShj b25zdCBBVlByb2JlRGF0YSAqcCkKPj4+ICNkZWZpbmUgRkxBR1MgQVZfT1BUX0ZMQUdfREVDT0RJ TkdfUEFSQU0KPj4+IHN0YXRpYyBjb25zdCBBVk9wdGlvbiBobHNfb3B0aW9uc1tdID0gewo+Pj4g ICAgIHsibGl2ZV9zdGFydF9pbmRleCIsICJzZWdtZW50IGluZGV4IHRvIHN0YXJ0IGxpdmUgc3Ry ZWFtcyBhdAo+PiAobmVnYXRpdmUgdmFsdWVzIGFyZSBmcm9tIHRoZSBlbmQpIiwKPj4+IC0gICAg ICAgIE9GRlNFVChsaXZlX3N0YXJ0X2luZGV4KSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IC0z fSwKPj4gSU5UX01JTiwgSU5UX01BWCwgRkxBR1N9LAo+Pj4gKyAgICAgICAgT0ZGU0VUKGxpdmVf c3RhcnRfaW5kZXgpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gSU5UX01JTn0sCj4+IElOVF9N SU4sIElOVF9NQVgsIEZMQUdTfSwKPj4gVGhpcyBpcyB1bm5lY2Vzc2FyeaOsIGJlY2F1c2UgdGhl IGRlZmF1bHQgLTMgaXMgb2sgYW5kIGJlIHVzaW5nIGJ5Cj4+IHVzZXJzIGZyb20gbWFueSB5ZWFy cyBhZ28uCj4+IAo+Pj4gICAgIHsiYWxsb3dlZF9leHRlbnNpb25zIiwgIkxpc3Qgb2YgZmlsZSBl eHRlbnNpb25zIHRoYXQgaGxzIGlzIGFsbG93ZWQKPj4gdG8gYWNjZXNzIiwKPj4+ICAgICAgICAg T0ZGU0VUKGFsbG93ZWRfZXh0ZW5zaW9ucyksIEFWX09QVF9UWVBFX1NUUklORywKPj4+ICAgICAg ICAgey5zdHIgPQo+PiAiM2dwLGFhYyxhdmksYWMzLGVhYzMsZmxhYyxta3YsbTN1OCxtNGEsbTRz LG00dixtcGcsbW92LG1wMixtcDMsbXA0LG1wZWcsbXBlZ3RzLG9nZyxvZ3Ysb2dhLHRzLHZvYix3 YXYifSwKPj4+IC0tCj4+PiAyLjI0LjEgKEFwcGxlIEdpdC0xMjYpCj4+PiAKPj4+IAo+Pj4gVGhh bmtzIFN0ZXZlbgo+PiAKPiA8MDAwMS1hdmZvcm1hdC1obHMtdXNlLUVYVC1YLVNUQVJULWluc3Rl YWQtb2YtbGl2ZV9zdGFydF9pLnBhdGNoPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+IGZmbXBlZy1kZXZl bEBmZm1wZWcub3JnCj4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVn LWRldmVsCj4gCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4g ZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJl Ii4KClRoYW5rcwpTdGV2ZW4KCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBl Zy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpU byB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJl cXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K