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 DA8EB44D30 for ; Mon, 19 Dec 2022 07:14:16 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4FE8268A8C1; Mon, 19 Dec 2022 09:14:13 +0200 (EET) Received: from out162-62-57-252.mail.qq.com (out162-62-57-252.mail.qq.com [162.62.57.252]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4C5836898B4 for ; Mon, 19 Dec 2022 09:14:05 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1671434042; bh=NXOt1r1VCzjZZtdfbTv6p/bvHPIbbQRCRwD3GQkSUL8=; h=From:Subject:Date:References:To:In-Reply-To; b=kFAf69R4Y4++bAw9Aus01pQT20TqB/oRGEedcVkbS1jleAc8nsNEzuELy4fP+cZAp EfpGRnfBZ0SYKDCn1UBLrBLF1EzX7wx1TdKZzXJLtG5rfXtgbBleGq3FCLb853F5mD wTIEsscrAis8ARHq0UQpOfyX57NB29n0T5qcgfpk= Received: from smtpclient.apple ([113.118.115.165]) by newxmesmtplogicsvrszc1-0.qq.com (NewEsmtp) with SMTP id 380B9CE8; Mon, 19 Dec 2022 15:14:00 +0800 X-QQ-mid: xmsmtpt1671434041tug78bnnj Message-ID: X-QQ-XMAILINFO: NJ/+omVLhVgal+aNxmqFc69vEnuAEi/4MV22mh29jUMnNNG7pEBKmeSnBWaAao D2bkdHGuuzX5D7xFcioWeNdIfpPpvT2BtI+/sId0hiL0WzDQizJcmdDaBFp5W2QJtPEnqXHdwNcx Llt8Thh2N1qMmjWTfMTt/POC0B8sAacryY41wZOx2eP+QfIIWdatY2l/1v8rG/FO0ic//ht2cOm1 90PnmKvp6wIKWLlCsRg39mUL4kAqTz9cmEf8zLIxBwe7ULvnkpauS7FimsysUljJr3pjK3GMzyGY yTXkbnJ67+fRiSPA2tNk/FSfIdRO8r382+j+vQFQHwt41oLP3dIADdxGll3A4sBVgxKuo4yOIfbx QzU7FdyViC8C9T6E+36GPh3A1NRbVYUETDSFwLQ6fIoWk6DQYXJGsDnp2icYZGRQuAyILZlaaOrn fbN9nqHxZvw6ZPYLQor8uei1OSsdLnQJVTyZZFjHODmzRmzN8/Jsc1gN37aIgxH18qV0KfiB7zPz 4JqvKJoh4rpTPb6GOtPkfTTj/srawcdPaGw4EaseCZIu7yer2xc/1en37CySz58gVz38xR1JzG9e TfvszH1492uVQaNK67xYbqXLOzpFVp+qa6Wx2f7e9umDNIPiaczMIaxx8sIrRCXcmn7Fm27ZXzyd 0eqvd+JmSHZJHBIAXCaRCno6qOKEtAej+aeSHrsP8/iVIwzn1zL0I7LwvUmrEX9KBO+GC69UMh8+ pwPB8QqA+I3Ustc3D4SnyEPh6IFjyQeHk//3hCRQxjDi7zxjloJWPGlOw692Q0Gg9jQ6vDYQmRkw 7HfM1skEM9862QhNM/D3uB2trtYWTDATah1bKCLUuj+SgoivTUkSE055hMRI7gl/4hVazt7cfkov eYhMtPHv7Gd2KcunJnTjGGw8l1YC+fNTXB4qbNjUqLykRmWN71vouoGt1bjFo1KMrbPN8QVvPgD7 buBRmLJP9LbY7Wsig1ZD2KDnwGLwuH4fnvyoQAC7n2DKlYgFB8bacGLjn1Op1z From: =?utf-8?B?InpoaWxpemhhbyjotbXlv5fnq4spIg==?= Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Date: Mon, 19 Dec 2022 15:14:00 +0800 References: To: FFmpeg development discussions and patches In-Reply-To: X-OQ-MSGID: <7A7E6B78-07E9-4BE9-8DFF-E238680A4651@foxmail.com> X-Mailer: Apple Mail (2.3696.120.41.1.1) Subject: Re: [FFmpeg-devel] [PATCH] avformat/mov: fix buffering issue on playing HTTP(s)/mp4. 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+IE9uIERlYyAxOSwgMjAyMiwgYXQgMTU6MDQsIENoZW4sIEppbmthaSA8Y2hlbmppbmthaUBh Z29yYS5pbz4gd3JvdGU6Cj4gCj4gU28uIEkgYXBwbHkgdGhpcyBzdHJhdGVneSB3aGVuIGl04oCZ cyBvbiBIVFRQL0hUVFBzLCBhbmQgaXTigJlzIG5vdCBhZmZlY3QgbG9jYWwgbm9ybWFsIGZpbGVz Lgo+IAo+IENvdWxkIHlvdSBwbGVhc2Ugc2hvdyBtZSBhIGJhZCBjYXNlIG9uIHRoaXMgc29sdXRp b24gPyBJIGFwcHJlY2lhdGVkIGFuZCB0cnkgdG8gZml4IGl0LiBUaGFua3MuCgpJdCB3aWxsIGRv d25sb2FkIHRoZSBzYW1lIGZpbGUgdHdpY2UuCgo+IAo+PiAyMDIy5bm0MTLmnIgxOeaXpSDkuIvl jYgyOjE477yMemhpbGl6aGFvKOi1teW/l+eriykgPHF1aW5rYmxhY2tAZm94bWFpbC5jb20+IOWG memBk++8mgo+PiAKPj4gW+S9oOmAmuW4uOS4jeS8muaUtuWIsOadpeiHqiBxdWlua2JsYWNrQGZv eG1haWwuY29tIOeahOeUteWtkOmCruS7tuOAguivt+iuv+mXriBodHRwczovL2FrYS5tcy9MZWFy bkFib3V0U2VuZGVySWRlbnRpZmljYXRpb27vvIzku6Xkuobop6Pov5nkuIDngrnkuLrku4DkuYjl vojph43opoFdCj4+IAo+Pj4gT24gRGVjIDE5LCAyMDIyLCBhdCAxMjoyNCwgQ2hlbiwgSmlua2Fp IDxjaGVuamlua2FpQGFnb3JhLmlvPiB3cm90ZToKPj4+IAo+Pj4gVXNpbmcgc2VwYXJhdGVkIEhU VFAgY29ubmVjdGlvbiBmb3IgZWFjaCBzdHJlYW0sCj4+PiBwcmV2ZW50IGZyb20gcmVhZGluZyBh dWRpbyBhbmQgdmlkZW8gaW4gbG9uZyBkaXN0YW5jZSwKPj4+IHdoaWNoIGNhdXNlIHNlZWtpbmco aHR0cCByZXF1ZXN0KSByZXBlYXRlZGx5Lgo+Pj4gU3RvcmluZyB0aGUgdXNlciBvcHRpb25zIHdo ZW4gb3BlbiBpbnB1dCwKPj4+IGFuZCBtYWtlIHN1cmUgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIGRl bXV4ZXIgY29udGV4dC4KPj4gCj4+IFRoZSBwYXRjaCBpcyBoYXJtZnVsIGZvciBub3JtYWwgZmls ZXMsIGFuZCB0aGUgaW1wbGVtZW50YXRpb24gaXNu4oCZdCBjbGVhbiwgc28gTkFLLgo+PiAKPj4+ IAo+Pj4gU29tZSBzb3VyY2UgY2FuIHJlcHJvZHVjaW5nIHRoZSBpc3N1ZToKPj4+IGh0dHBzOi8v YXBjMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUy RmFsaS1zcHJpdGUtdmlkZW8ueXlvdXdhbmcuY29tJTJGdmlkZW8lMkZ3b3JrcyUyRjIwMjIxMSUy RjE2Njc5OTcwNzM2MjRfNzMubXA0JmRhdGE9MDUlN0MwMSU3Q2NoZW5qaW5rYWklNDBhZ29yYS5p byU3Q2I5ZTY3NDQ1ZDAzNTQ0OWYwODE2MDhkYWUxODhlZmQ2JTdDNjAyNzUzNzQzZWFhNDljMjgz YzNjYzE4OWQxMjY5ODElN0MwJTdDMCU3QzYzODA3MDI3NTUxNTY3NjAwOSU3Q1Vua25vd24lN0NU V0ZwYkdac2IzZDhleUpXSWpvaU1DNHdMakF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklr MWhhV3dpTENKWFZDSTZNbjAlM0QlN0MzMDAwJTdDJTdDJTdDJnNkYXRhPVprcjlySENRbmNhaVc5 T216RHp6bFdYa1RaZGxVUVN6JTJGbkRSczJtN2Z6ZyUzRCZyZXNlcnZlZD0wCj4+PiBodHRwczov L2FwYzAxLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYl MkZpbWFnZXMudm9naGlvbi5jb20lMkZwcm9kdWN0SW1hZ2VzJTJGMDRfMDFfQ18zMDAxMV8yMDIw MjIwMTA2R2l1c2VwcGVGYW5hcmEwMDEyLm1wNCZkYXRhPTA1JTdDMDElN0NjaGVuamlua2FpJTQw YWdvcmEuaW8lN0NiOWU2NzQ0NWQwMzU0NDlmMDgxNjA4ZGFlMTg4ZWZkNiU3QzYwMjc1Mzc0M2Vh YTQ5YzI4M2MzY2MxODlkMTI2OTgxJTdDMCU3QzAlN0M2MzgwNzAyNzU1MTU2NzYwMDklN0NVbmtu b3duJTdDVFdGcGJHWnNiM2Q4ZXlKV0lqb2lNQzR3TGpBd01EQWlMQ0pRSWpvaVYybHVNeklpTENK QlRpSTZJazFoYVd3aUxDSlhWQ0k2TW4wJTNEJTdDMzAwMCU3QyU3QyU3QyZzZGF0YT1ONWZHdG1N V1k1dDJTWjNRa05DRkNSQXhxMlhQQ1BLaW1tbjVRUzVqWnlVJTNEJnJlc2VydmVkPTAKPj4+IAo+ Pj4gU2lnbmVkLW9mZi1ieTogQ0pLIDxjaGVuamlua2FpQGFnb3JhLmlvPG1haWx0bzpjaGVuamlu a2FpQGFnb3JhLmlvPj4KPj4+IC0tLQo+Pj4gbGliYXZmb3JtYXQvYXZmb3JtYXQuYyB8ICAxICsK Pj4+IGxpYmF2Zm9ybWF0L2RlbXV4LmMgICAgfCAgNSArKysrLQo+Pj4gbGliYXZmb3JtYXQvaW50 ZXJuYWwuaCB8ICA1ICsrKysrCj4+PiBsaWJhdmZvcm1hdC9tb3YuYyAgICAgIHwgMTYgKysrKysr KysrKysrKysrKwo+Pj4gNCBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0 aW9uKC0pCj4+PiAKPj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9hdmZvcm1hdC5jIGIvbGli YXZmb3JtYXQvYXZmb3JtYXQuYwo+Pj4gaW5kZXggMTljNzIxOTQ3MS4uNDQ1MzcyN2YzNCAxMDA2 NDQKPj4+IC0tLSBhL2xpYmF2Zm9ybWF0L2F2Zm9ybWF0LmMKPj4+ICsrKyBiL2xpYmF2Zm9ybWF0 L2F2Zm9ybWF0LmMKPj4+IEBAIC0xMjksNiArMTI5LDcgQEAgdm9pZCBhdmZvcm1hdF9mcmVlX2Nv bnRleHQoQVZGb3JtYXRDb250ZXh0ICpzKQo+Pj4gIGF2X2ZyZWVwKCZzLT5jaGFwdGVycyk7Cj4+ PiAgYXZfZGljdF9mcmVlKCZzLT5tZXRhZGF0YSk7Cj4+PiAgYXZfZGljdF9mcmVlKCZzaS0+aWQz djJfbWV0YSk7Cj4+PiArICAgIGF2X2RpY3RfZnJlZSgmc2ktPm9wdGlvbnMpOwo+Pj4gIGF2X3Bh Y2tldF9mcmVlKCZzaS0+cGt0KTsKPj4+ICBhdl9wYWNrZXRfZnJlZSgmc2ktPnBhcnNlX3BrdCk7 Cj4+PiAgYXZfZnJlZXAoJnMtPnN0cmVhbXMpOwo+Pj4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0 L2RlbXV4LmMgYi9saWJhdmZvcm1hdC9kZW11eC5jCj4+PiBpbmRleCAyZGZkODJhNjNjLi4yMzc3 YmZkYWIwIDEwMDY0NAo+Pj4gLS0tIGEvbGliYXZmb3JtYXQvZGVtdXguYwo+Pj4gKysrIGIvbGli YXZmb3JtYXQvZGVtdXguYwo+Pj4gQEAgLTIzNyw4ICsyMzcsMTEgQEAgaW50IGF2Zm9ybWF0X29w ZW5faW5wdXQoQVZGb3JtYXRDb250ZXh0ICoqcHMsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAo+Pj4g IGlmIChmbXQpCj4+PiAgICAgIHMtPmlmb3JtYXQgPSBmbXQ7Cj4+PiAKPj4+IC0gICAgaWYgKG9w dGlvbnMpCj4+PiArICAgIGlmIChvcHRpb25zKSB7Cj4+PiAgICAgIGF2X2RpY3RfY29weSgmdG1w LCAqb3B0aW9ucywgMCk7Cj4+PiArICAgICAgICBzaS0+b3B0aW9ucyA9IE5VTEw7Cj4+PiArICAg ICAgICBhdl9kaWN0X2NvcHkoJnNpLT5vcHRpb25zLCAqb3B0aW9ucywgMCk7Cj4+PiArICAgIH0K Pj4+IAo+Pj4gIGlmIChzLT5wYikgLy8gbXVzdCBiZSBiZWZvcmUgYW55IGdvdG8gZmFpbAo+Pj4g ICAgICBzLT5mbGFncyB8PSBBVkZNVF9GTEFHX0NVU1RPTV9JTzsKPj4+IGRpZmYgLS1naXQgYS9s aWJhdmZvcm1hdC9pbnRlcm5hbC5oIGIvbGliYXZmb3JtYXQvaW50ZXJuYWwuaAo+Pj4gaW5kZXgg Y2U4MzdmZWZjNy4uN2NhYWU4YjkzZSAxMDA2NDQKPj4+IC0tLSBhL2xpYmF2Zm9ybWF0L2ludGVy bmFsLmgKPj4+ICsrKyBiL2xpYmF2Zm9ybWF0L2ludGVybmFsLmgKPj4+IEBAIC0xODYsNiArMTg2 LDExIEBAIHR5cGVkZWYgc3RydWN0IEZGRm9ybWF0Q29udGV4dCB7Cj4+PiAgICogQ29udGV4dHMg YW5kIGNoaWxkIGNvbnRleHRzIGRvIG5vdCBjb250YWluIGEgbWV0YWRhdGEgb3B0aW9uCj4+PiAg ICovCj4+PiAgaW50IG1ldGFmcmVlOwo+Pj4gKwo+Pj4gKyAgICAvKioKPj4+ICsgICAgICogb3B0 aW9ucyBmcm9tIGF2Zm9ybWF0X29wZW5faW5wdXQKPj4+ICsgICAgICovCj4+PiArICAgIEFWRGlj dGlvbmFyeSAqb3B0aW9uczsKPj4+IH0gRkZGb3JtYXRDb250ZXh0Owo+Pj4gCj4+PiBzdGF0aWMg YXZfYWx3YXlzX2lubGluZSBGRkZvcm1hdENvbnRleHQgKmZmZm9ybWF0Y29udGV4dChBVkZvcm1h dENvbnRleHQgKnMpCj4+PiBkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvbW92LmMgYi9saWJhdmZv cm1hdC9tb3YuYwo+Pj4gaW5kZXggMjliZDMxMDNlMy4uMWUxYTdjMmY3ZiAxMDA2NDQKPj4+IC0t LSBhL2xpYmF2Zm9ybWF0L21vdi5jCj4+PiArKysgYi9saWJhdmZvcm1hdC9tb3YuYwo+Pj4gQEAg LTQ0NTYsNiArNDQ1Niw3IEBAIHN0YXRpYyBpbnQgbW92X3JlYWRfdHJhayhNT1ZDb250ZXh0ICpj LCBBVklPQ29udGV4dCAqcGIsIE1PVkF0b20gYXRvbSkKPj4+IHsKPj4+ICBBVlN0cmVhbSAqc3Q7 Cj4+PiAgTU9WU3RyZWFtQ29udGV4dCAqc2M7Cj4+PiArICAgIFVSTENvbnRleHQgKnVybF9jb250 ZXh0Owo+Pj4gIGludCByZXQ7Cj4+PiAKPj4+ICBzdCA9IGF2Zm9ybWF0X25ld19zdHJlYW0oYy0+ ZmMsIE5VTEwpOwo+Pj4gQEAgLTQ1MDEsNiArNDUwMiw4IEBAIHN0YXRpYyBpbnQgbW92X3JlYWRf dHJhayhNT1ZDb250ZXh0ICpjLCBBVklPQ29udGV4dCAqcGIsIE1PVkF0b20gYXRvbSkKPj4+IAo+ Pj4gIG1vdl9idWlsZF9pbmRleChjLCBzdCk7Cj4+PiAKPj4+ICsgICAgdXJsX2NvbnRleHQgPSBm ZmlvX2dldHVybGNvbnRleHQoYy0+ZmMtPnBiKTsKPj4+ICsgICAgYXZfYXNzZXJ0MCh1cmxfY29u dGV4dCk7Cj4+PiAgaWYgKHNjLT5kcmVmX2lkLTEgPCBzYy0+ZHJlZnNfY291bnQgJiYgc2MtPmRy ZWZzW3NjLT5kcmVmX2lkLTFdLnBhdGgpIHsKPj4+ICAgICAgTU9WRHJlZiAqZHJlZiA9ICZzYy0+ ZHJlZnNbc2MtPmRyZWZfaWQgLSAxXTsKPj4+ICAgICAgaWYgKGMtPmVuYWJsZV9kcmVmcykgewo+ Pj4gQEAgLTQ1MTAsNiArNDUxMywxOSBAQCBzdGF0aWMgaW50IG1vdl9yZWFkX3RyYWsoTU9WQ29u dGV4dCAqYywgQVZJT0NvbnRleHQgKnBiLCBNT1ZBdG9tIGF0b20pCj4+PiAgICAgICAgICAgICAg ICAgICAgICJmaWxlbmFtZT0nJXMnLCB2b2x1bWU9JyVzJywgbmx2bF9mcm9tPSVkLCBubHZsX3Rv PSVkXG4iLAo+Pj4gICAgICAgICAgICAgICAgICAgICBzdC0+aW5kZXgsIGRyZWYtPnBhdGgsIGRy ZWYtPmRpciwgZHJlZi0+ZmlsZW5hbWUsCj4+PiAgICAgICAgICAgICAgICAgICAgIGRyZWYtPnZv bHVtZSwgZHJlZi0+bmx2bF9mcm9tLCBkcmVmLT5ubHZsX3RvKTsKPj4+ICsgICAgICAgIH0gZWxz ZSBpZiAoc3RyY21wKHVybF9jb250ZXh0LT5wcm90LT5uYW1lLCAiaHR0cCIpID09IDAgfHwKPj4+ ICsgICAgICAgICAgICAgICAgICAgc3RyY21wKHVybF9jb250ZXh0LT5wcm90LT5uYW1lLCAiaHR0 cHMiKSA9PSAwKSB7Cj4+PiArICAgICAgICAgICAgRkZGb3JtYXRDb250ZXh0ICpjb25zdCBzaSA9 IGZmZm9ybWF0Y29udGV4dChjLT5mYyk7Cj4+PiArICAgICAgICAgICAgQVZEaWN0aW9uYXJ5ICpv cHRzID0gTlVMTDsKPj4+ICsgICAgICAgICAgICBhdl9kaWN0X2NvcHkoJm9wdHMsIHNpLT5vcHRp b25zLCAwKTsKPj4+ICsgICAgICAgICAgICByZXQgPSBjLT5mYy0+aW9fb3BlbihjLT5mYywgJnNj LT5wYiwgYy0+ZmMtPnVybCwgQVZJT19GTEFHX1JFQUQsICZvcHRzKTsKPj4+ICsgICAgICAgICAg ICBhdl9kaWN0X2ZyZWUoJm9wdHMpOwo+Pj4gKyAgICAgICAgICAgIGlmIChyZXQgPCAwKSB7Cj4+ PiArICAgICAgICAgICAgICAgIGF2X2xvZyhjLT5mYywgQVZfTE9HX0VSUk9SLAo+Pj4gKyAgICAg ICAgICAgICAgICAgICAgIm1vdi9odHRwKHMpIHN0cmVhbSAlZCwgZXJyb3Igb3BlbmluZyB1cmwg JXMuXG4iLAo+Pj4gKyAgICAgICAgICAgICAgICAgICAgc3QtPmluZGV4LCBjLT5mYy0+dXJsKTsK Pj4+ICsgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKPj4+ICsgICAgICAgICAgICB9Cj4+PiAg ICAgIH0gZWxzZSB7Cj4+PiAgICAgICAgICBhdl9sb2coYy0+ZmMsIEFWX0xPR19XQVJOSU5HLAo+ Pj4gICAgICAgICAgICAgICAgICJTa2lwcGVkIG9wZW5pbmcgZXh0ZXJuYWwgdHJhY2s6ICIKPj4+ IC0tCj4+PiAyLjI0LjMgKEFwcGxlIEdpdC0xMjgpCj4+PiBfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwo+Pj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+ Pj4gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKPj4+IGh0dHBzOi8vYXBjMDEuc2FmZWxpbmtzLnBy b3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmZmbXBlZy5vcmclMkZtYWls bWFuJTJGbGlzdGluZm8lMkZmZm1wZWctZGV2ZWwmZGF0YT0wNSU3QzAxJTdDY2hlbmppbmthaSU0 MGFnb3JhLmlvJTdDYjllNjc0NDVkMDM1NDQ5ZjA4MTYwOGRhZTE4OGVmZDYlN0M2MDI3NTM3NDNl YWE0OWMyODNjM2NjMTg5ZDEyNjk4MSU3QzAlN0MwJTdDNjM4MDcwMjc1NTE1Njc2MDA5JTdDVW5r bm93biU3Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxD SkJUaUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzMwMDAlN0MlN0MlN0Mmc2RhdGE9SmJKYmlz cXlRUzZXTHI1RWp6d0RzeWl1dktHcnZxdlg1aGlZUTBTSGR2YyUzRCZyZXNlcnZlZD0wCj4+PiAK Pj4+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+Pj4gZmZtcGVn LWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4KPj4g Cj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+IGZm bXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKPj4gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKPj4gaHR0 cHM6Ly9hcGMwMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNB JTJGJTJGZmZtcGVnLm9yZyUyRm1haWxtYW4lMkZsaXN0aW5mbyUyRmZmbXBlZy1kZXZlbCZkYXRh PTA1JTdDMDElN0NjaGVuamlua2FpJTQwYWdvcmEuaW8lN0NiOWU2NzQ0NWQwMzU0NDlmMDgxNjA4 ZGFlMTg4ZWZkNiU3QzYwMjc1Mzc0M2VhYTQ5YzI4M2MzY2MxODlkMTI2OTgxJTdDMCU3QzAlN0M2 MzgwNzAyNzU1MTU2NzYwMDklN0NVbmtub3duJTdDVFdGcGJHWnNiM2Q4ZXlKV0lqb2lNQzR3TGpB d01EQWlMQ0pRSWpvaVYybHVNeklpTENKQlRpSTZJazFoYVd3aUxDSlhWQ0k2TW4wJTNEJTdDMzAw MCU3QyU3QyU3QyZzZGF0YT1KYkpiaXNxeVFTNldMcjVFanp3RHN5aXV2S0dydnF2WDVoaVlRMFNI ZHZjJTNEJnJlc2VydmVkPTAKPj4gCj4+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3Zl LCBvciBlbWFpbAo+PiBmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVj dCAidW5zdWJzY3JpYmUiLgo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+IGZmbXBlZy1kZXZlbEBm Zm1wZWcub3JnCj4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRl dmVsCj4gCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4gZmZt cGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1k ZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcu b3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQg bGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRo IHN1YmplY3QgInVuc3Vic2NyaWJlIi4K