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 972B74021D for ; Thu, 20 Jan 2022 15:33:00 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 639E968B18E; Thu, 20 Jan 2022 17:32:58 +0200 (EET) Received: from shout02.mail.de (shout02.mail.de [62.201.172.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2095B68B180 for ; Thu, 20 Jan 2022 17:32:52 +0200 (EET) Received: from postfix01.mail.de (postfix01.bt.mail.de [10.0.121.125]) by shout02.mail.de (Postfix) with ESMTP id 9FF81A1DD9 for ; Thu, 20 Jan 2022 16:32:51 +0100 (CET) Received: from smtp02.mail.de (smtp02.bt.mail.de [10.0.121.212]) by postfix01.mail.de (Postfix) with ESMTP id 7B2A7802BB for ; Thu, 20 Jan 2022 16:32:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mail.de; s=mailde202009; t=1642692771; bh=C+43MdHEstGI7012mYH/plQxBG0vO5bqSiCjy56m2BU=; h=Date:Subject:To:References:From:In-Reply-To:From; b=m2sF0FYN/ykcQ9ebgAgB8mHfR+28yCCN+BRd0DSHHY01rG1HBwbwStisjKLoP9Fgh Wdn3gk4iaZ/vrcVmZz/iJox99vjhtgFfxp1onRPPy1nFhjrx0mN2Cfr41CSZ2oBnUZ Jd3lcnEirsZMYJ6RizwtzaMczfviuKS6fbistwQYT2HedirbpfRebXq20ELfIiBuHm xV4jvHwFiXQfXtselvYpqlhBjeviOjdXs+v3zsFSLo5WAPa5cGFCzv/0sstyYS02Iw 3tJ1VvnZE4gFvu69ExByLcfCfF2bgfOzsoy7DHjrrebwNt2dfksQdOhu7n8/VwvPWf 482db5d9Tlhnw== Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtp02.mail.de (Postfix) with ESMTPSA id 4A92CA072D for ; Thu, 20 Jan 2022 16:32:50 +0100 (CET) Message-ID: <26ca972d-ab44-910c-cc47-5f92da53bc9f@mail.de> Date: Thu, 20 Jan 2022 16:32:50 +0100 MIME-Version: 1.0 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <72e9521f-b029-8637-c32c-27cf7c5de170@mail.de> <14470aae-c127-7532-a054-b5d878d415dd@mail.de> <52e4f109-41a4-a609-b583-c001c6077638@mail.de> <350ccc44-07dc-25c6-49a1-4281139d93ac@mail.de> <8b8ae2a5-f77f-5a34-8890-fa68de09e475@mail.de> <5ead1511-a763-782e-7eff-e2256828978c@mail.de> <70afd793-820b-83df-6bc8-58e1787cd9c8@mail.de> From: Thilo Borgmann In-Reply-To: X-purgate: clean X-purgate: This mail is considered clean (visit http://www.eleven.de for further information) X-purgate-type: clean X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de X-purgate: This mail is considered clean (visit http://www.eleven.de for further information) X-purgate: clean X-purgate-size: 7926 X-purgate-ID: 154282::1642692771-0000429D-457BE3CC/0/0 Subject: Re: [FFmpeg-devel] [PATCH v2] lavfi/drawtext: Add localtime_ms for millisecond precision 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: QW0gMjAuMDEuMjIgdW0gMTY6MDMgc2NocmllYiBBbmRyZWFzIFJoZWluaGFyZHQ6Cj4gVGhpbG8g Qm9yZ21hbm46Cj4+IEFtIDIwLjAxLjIyIHVtIDEzOjA0IHNjaHJpZWIgVGhpbG8gQm9yZ21hbm46 Cj4+PiBBbSAxOS4wMS4yMiB1bSAwNDoxNiBzY2hyaWViICJ6aGlsaXpoYW8o6LW15b+X56uLKSI6 Cj4+Pj4KPj4+Pgo+Pj4+PiBPbiBKYW4gMTgsIDIwMjIsIGF0IDg6NTIgUE0sIFRoaWxvIEJvcmdt YW5uIDx0aGlsby5ib3JnbWFubkBtYWlsLmRlPgo+Pj4+PiB3cm90ZToKPj4+Pj4KPj4+Pj4gQW0g MTYuMDEuMjIgdW0gMTI6MDYgc2NocmllYiBOaWNvbGFzIEdlb3JnZToKPj4+Pj4+IFRoaWxvIEJv cmdtYW4gKDEyMDIyLTAxLTE0KToKPj4+Pj4+PiB2NiBkb2VzOgo+Pj4+Pj4+Cj4+Pj4+Pj4gJD4g ZmZtcGVnIC4uLiBkcmF3dGV4dD0iZm9udGZpbGU9Li4uOnRleHQ9JyV7bG9jYWx0aW1lwqDCoCBc OiVhICViCj4+Pj4+Pj4gJWQgJVkgJVN9JyLCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2Vjb25kcykK Pj4+Pj4+PiAkPiBmZm1wZWcgLi4uIGRyYXd0ZXh0PSJmb250ZmlsZT0uLi46dGV4dD0nJXtsb2Nh bHRpbWVfbXNcOiVhICViCj4+Pj4+Pj4gJWQgJVkgJVN9JyLCoMKgwqDCoMKgwqDCoMKgwqDCoCAo bWlsbGlzZWNvbmRzKQo+Pj4+Pj4+Cj4+Pj4+Pj4gSSBzdWdnZXN0IHY3IHNob3VsZCBhY2NvcmRp bmcgdG8geW91ciByZW1hcms6Cj4+Pj4+Pj4KPj4+Pj4+PiAkPiBmZm1wZWcgLi4uIGRyYXd0ZXh0 PSJmb250ZmlsZT0uLi46dGV4dD0nJXtsb2NhbHRpbWXCoMKgIFw6JWEgJWIKPj4+Pj4+PiAlZCAl WSAlU30nIsKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWNvbmRzKQo+Pj4+Pj4+ICQ+IGZmbXBlZyAu Li4gZHJhd3RleHQ9ImZvbnRmaWxlPS4uLjp0ZXh0PScle2xvY2FsdGltZcKgwqAgXDolYSAlYgo+ Pj4+Pj4+ICVkICVZICVTfSc6c2hvd19tcz0xIiAobWlsbGlzZWNvbmRzKQo+Pj4+Pj4+Cj4+Pj4+ Pj4gR29vZD8KPj4+Pj4+Cj4+Pj4+PiBJIGRpc2xpa2UgYm90aCB2ZXJzaW9ucywgZnJvbSBhIHVz ZXIgaW50ZXJmYWNlIHBvaW50IG9mIHZpZXc6IGlmIHRoZXJlCj4+Pj4+PiBpcyBhIGZvcm1hdCBz dHJpbmcsIHRoZW4gaXQgc3RhbmRzIHRvIHJlYXNvbiwgZm9yIHRoZSB1c2VyLCB0aGF0IHRoZQo+ Pj4+Pj4gcmVzdWx0aW5nIHRleHQgaXMgZ292ZXJuZWQgYnkgdGhlIGZvcm1hdCBzdHJpbmcsIG5v dCBieSBhbiBleHRyYQo+Pj4+Pj4gb3B0aW9uCj4+Pj4+PiBzb21ld2hlcmUgZWxzZS4KPj4+Pj4+ Cj4+Pj4+PiBUaGVyZSBpcyBubyAidXNlX2ZvdXJfZGlnaXRfeWVhcj0xIiBvcHRpb24sIHRoZXJl IGlzICVZIGluc3RlYWQgb2YgJXkuCj4+Pj4+Pgo+Pj4+Pj4gVGhlcmUgaXMgbm8gInVzZV9zbGFz aGVzPTEiIG9wdGlvbiwgeW91IHdyaXRlICVZLyVtLyVkIGluc3RlYWQgb2YKPj4+Pj4+ICVZLSVt LSVkLgo+Pj4+Pj4KPj4+Pj4+IFRoZXJlIGFyZSBubyAib21pdF9kYXRlPTEiIGFuZCAib21pdF9o b3VyPTEiIG9wdGlvbnMsIHlvdSBqdXN0IHdyaXRlCj4+Pj4+PiB3aGF0IHlvdSB3YW50IGluIHRo ZSBmb3JtYXQgc3RyaW5nLgo+Pj4+Pj4KPj4+Pj4+IE15IHByb3Bvc2FsIGdvZXMgdGhlIHNhbWUg d2F5Ogo+Pj4+Pj4KPj4+Pj4+ICQ+IGZmbXBlZyAuLi4gZHJhd3RleHQ9ImZvbnRmaWxlPS4uLjp0 ZXh0PScle2xvY2FsdGltZcKgwqAgXDolYSAlYiAlZAo+Pj4+Pj4gJVkgJVMuJTNOfSciCj4+Pj4+ Pgo+Pj4+Pj4gSXQgaGFzIHNldmVyYWwgbWVyaXRzIG92ZXIgeW91ciBwcm9wb3NhbDoKPj4+Pj4+ Cj4+Pj4+PiAtIEl0IGNhbiBiZSBleHRlbmRlZCBsYXRlciB0byBzdXBwb3J0IHByaW50aW5nIHRo ZSBtaWxsaXNlY29uZHMgYXQKPj4+Pj4+ICDCoCBhbm90aGVyIHBsYWNlIHRoYW4gdGhlIGVuZCAo Zm9yIGV4YW1wbGUgdG8gcHV0IHRoZSB0aW1lIGluCj4+Pj4+PiBicmFja2V0cykuCj4+Pj4+Pgo+ Pj4+Pj4gLSBJdCBjYW4gYmUgZXh0ZW5kZWQgdG8gc3VwcG9ydCBtaWNyb3NlY29uZHMgb3IgY2Vu dGlzZWNvbmRzICglNk4sCj4+Pj4+PiAlMk4pLgo+Pj4+Pj4KPj4+Pj4+IC0gSXQgaXMgc29tZXdo YXQgY29tcGF0aWJsZSB3aXRoIEdOVSBkYXRlIGFuZCBwb3NzaWJseSBhIGZldyBvdGhlcnMuCj4+ Pj4+Pgo+Pj4+Pj4gQW5kIEkgZG8gbm90IHRoaW5rIGl0IGlzIGhhcmRlciB0byBpbXBsZW1lbnQu Cj4+Pj4+Cj4+Pj4+IE9rLCBkaWQgaW50cm9kdWNlIGEgdmFyaWFibGU6ICVbMS02XU4KPj4+Pj4g UGFyc2luZyBhbmQgY2xpcHBpbmcgdmFsdWUgdG8gdmFsaWQgcmFuZ2Ugb2YgMS02Lgo+Pj4+PiBE ZWZhdWx0IDMuCj4+Pj4+Cj4+Pj4+IFRoYXQgd2F5IGl0IGlzIHBvc2l0aW9uIGluZGVwZW5kZW50 IGFuZCBjYW4gc2hvdyBhbnkgbnVtYmVyIG9mCj4+Pj4+IGRlY2ltYWxzIGZyb20gMSB0byA2Lgo+ Pj4+Pgo+Pj4+Cj4+Pj4+IGRpZmYgLS1naXQgYS9saWJhdmZpbHRlci92Zl9kcmF3dGV4dC5jIGIv bGliYXZmaWx0ZXIvdmZfZHJhd3RleHQuYwo+Pj4+PiBpbmRleCAyYTg4NjkyY2JkLi40NDhiMTc0 ZGJiIDEwMDY0NAo+Pj4+PiAtLS0gYS9saWJhdmZpbHRlci92Zl9kcmF3dGV4dC5jCj4+Pj4+ICsr KyBiL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0LmMKPj4+Pj4gQEAgLTUxLDYgKzUxLDcgQEAKPj4+ Pj4gIMKgICNpbmNsdWRlICJsaWJhdnV0aWwvb3B0LmgiCj4+Pj4+ICDCoCAjaW5jbHVkZSAibGli YXZ1dGlsL3JhbmRvbV9zZWVkLmgiCj4+Pj4+ICDCoCAjaW5jbHVkZSAibGliYXZ1dGlsL3BhcnNl dXRpbHMuaCIKPj4+Pj4gKyNpbmNsdWRlICJsaWJhdnV0aWwvdGltZS5oIgo+Pj4+PiAgwqAgI2lu Y2x1ZGUgImxpYmF2dXRpbC90aW1lY29kZS5oIgo+Pj4+PiAgwqAgI2luY2x1ZGUgImxpYmF2dXRp bC90aW1lX2ludGVybmFsLmgiCj4+Pj4+ICDCoCAjaW5jbHVkZSAibGliYXZ1dGlsL3RyZWUuaCIK Pj4+Pj4gQEAgLTEwNDUsMTQgKzEwNDYsODIgQEAgc3RhdGljIGludCBmdW5jX3N0cmZ0aW1lKEFW RmlsdGVyQ29udGV4dAo+Pj4+PiAqY3R4LCBBVkJQcmludCAqYnAsCj4+Pj4+ICDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNoYXIgKmZjdCwgdW5z aWduZWQgYXJnYywgY2hhciAqKmFyZ3YsCj4+Pj4+IGludCB0YWcpCj4+Pj4+ICDCoCB7Cj4+Pj4+ ICDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgKmZtdCA9IGFyZ2MgPyBhcmd2WzBdIDogIiVZLSVtLSVk ICVIOiVNOiVTIjsKPj4+Pj4gK8KgwqDCoCBpbnQ2NF90IHVub3c7Cj4+Pj4+ICDCoMKgwqDCoMKg IHRpbWVfdCBub3c7Cj4+Pj4+ICDCoMKgwqDCoMKgIHN0cnVjdCB0bSB0bTsKPj4+Pj4gLQo+Pj4+ PiAtwqDCoMKgIHRpbWUoJm5vdyk7Cj4+Pj4+IC3CoMKgwqAgaWYgKHRhZyA9PSAnTCcpCj4+Pj4+ ICvCoMKgwqAgY2hhciAqYmVnaW47Cj4+Pj4+ICvCoMKgwqAgY2hhciAqdG1wOwo+Pj4+PiArwqDC oMKgIGludCBsZW47Cj4+Pj4+ICvCoMKgwqAgY2hhciAqZm10X25ldzsKPj4+Pj4gK8KgwqDCoCBj b25zdCBjaGFyICpmbXRfdG1wOwo+Pj4+PiArwqDCoMKgIGludCBkaXY7Cj4+Pj4+ICsKPj4+Pj4g K8KgwqDCoCB1bm93ID0gYXZfZ2V0dGltZSgpOwo+Pj4+PiArwqDCoMKgIG5vd8KgID0gdW5vdyAv IDEwMDAwMDA7Cj4+Pj4+ICvCoMKgwqAgaWYgKHRhZyA9PSAnTCcgfHwgdGFnID09ICdtJykKPj4+ Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoCBsb2NhbHRpbWVfcigmbm93LCAmdG0pOwo+Pj4+PiAgwqDC oMKgwqDCoCBlbHNlCj4+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqAgdG0gPSAqZ210aW1lX3IoJm5v dywgJnRtKTsKPj4+Pj4gKwo+Pj4+PiArwqDCoMKgIC8vIG1hbnVhbGx5IHBhcnNlIGZvcm1hdCBm b3IgJU4gKGZyYWN0aW9uYWwgc2Vjb25kcykKPj4+Pj4gK8KgwqDCoCBiZWdpbiA9IChjaGFyKilm bXQ7Cj4+Pj4KPj4+PiBNYWtlIGJlZ2luIGFuZCB0bXAgY29uc3QgY2hhciAqLCBzbyB0aGUgY2Fz dCBjYW4gYmUgcmVtb3ZlZC4KPj4+Pgo+Pj4+PiArwqDCoMKgIHdoaWxlICgoYmVnaW4gPSBhdl9z dHJpc3RyKGJlZ2luLCAiJSIpKSkgewo+Pj4+Cj4+Pj4gSG93IGFib3V0IHN0cnN0cigpIHNpbmNl IOKAmCXigJkgaXMgY2FzZWxlc3M/Cj4+Pj4KPj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHRtcCA9IGJl Z2luICsgMTsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGxlbiA9IDA7Cj4+Pj4+ICvCoMKgwqDCoMKg wqDCoCAvLyBjb3VudCBkaWdpdHMgYmV0d2VlbiAlIGFuZCBwb3NzaWJsZSBOCj4+Pj4+ICvCoMKg wqDCoMKgwqDCoCB3aGlsZSAoKnRtcCAhPSAnXDAnICYmIGF2X2lzZGlnaXQoKGludCkqdG1wKSkg ewo+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsZW4rKzsKPj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgdG1wKys7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCB9Cj4+Pj4+ICvCoMKgwqDC oMKgwqDCoCAvLyBOIGVuY291bnRlcmVkLCBpbnNlcnQgdGltZQo+Pj4+PiArwqDCoMKgwqDCoMKg wqAgaWYgKCp0bXAgPT0gJ04nKSB7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGludCBu dW1fZGlnaXRzID0gMzsgLy8gZGVmYXVsdCBzaG93IG1pbGxpc2Vjb25kIFsxLDZdCj4+Pj4+ICsK Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLy8gaWYgZGlnaXRzIGdpdmVuLCBwYXJzZSBh cyBudW1iZXIgaW4gWzEsNl0KPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGxlbiA+ IDApIHsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBhdl9zc2NhbmYoYmVn aW4gKyAxLCAiJWkiLCAmbnVtX2RpZ2l0cyk7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgbnVtX2RpZ2l0cyA9IGF2X2NsaXAobnVtX2RpZ2l0cywgMSwgNik7IC8vIGVuc3Vy ZQo+Pj4+PiB2YWxpZCB2YWx1ZQo+Pj4+Cj4+Pj4gV2UgY2FuIGlnbm9yZSBsZW4gPiAxLCB0aGVu IHRoZSBjb2RlIGNhbiBiZSBzaW1wbGlmaWVkIGFzCj4+Pj4KPj4+PiBpZiAobGVuID09IDEpCj4+ Pj4gIMKgwqDCoMKgIG51bV9kaWdpdHMgPSBhdl9jbGlwKCooYmVnaW4gKyAxKSAtIOKAmFww4oCZ LCAxLCA2KQo+Pj4+Cj4+Pj4KPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfQo+Pj4+PiAr Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxlbiArPSAyOyAvLyBhZGQgJSBhbmQgTiB0 byBnZXQgbGVuZ3RoIG9mIHN0cmluZyBwYXJ0Cj4+Pj4+ICsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgc3dpdGNoKG51bV9kaWdpdHMpIHsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqAgY2FzZSAxOgo+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZtdF90bXAg PSAiJS4qcyUwMWQlcyI7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGl2 wqDCoMKgwqAgPSAxMDAwMDA7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg YnJlYWs7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNhc2UgMjoKPj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmbXRfdG1wID0gIiUuKnMlMDJkJXMiOwo+Pj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRpdsKgwqDCoMKgID0gMTAwMDA7Cj4+Pj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7Cj4+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGNhc2UgMzoKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBmbXRfdG1wID0gIiUuKnMlMDNkJXMiOwo+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGRpdsKgwqDCoMKgID0gMTAwMDsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBicmVhazsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY2FzZSA0Ogo+Pj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZtdF90bXAgPSAiJS4qcyUwNGQlcyI7 Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZGl2wqDCoMKgwqAgPSAxMDA7 Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYnJlYWs7Cj4+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIGNhc2UgNToKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBmbXRfdG1wID0gIiUuKnMlMDVkJXMiOwo+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGRpdsKgwqDCoMKgID0gMTA7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgYnJlYWs7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNhc2UgNjoK Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmbXRfdG1wID0gIiUuKnMlMDZk JXMiOwo+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRpdsKgwqDCoMKgID0g MTsKPj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsKPj4+Pj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgfQo+Pj4+Cj4+Pj4gVGhlIHN3aXRjaC1jYXNlIGNhbiBiZSBy ZXBsYWNlZCBieSDigJwlMCpk4oCdIGFuZCBwb3coMTAsIDYgLSBudW1fZGlnaXRzKS4KPj4+Cj4+ PiBJbmRlZWQsIHNpbXBsaWZpZWQuCj4+Pgo+Pj4KPj4+Pj4gKwo+Pj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBmbXRfbmV3ID0gYXZfYXNwcmludGYoZm10X3RtcCwgYmVnaW4gLSBmbXQsIGZt dCwKPj4+Pj4gKGludCkodW5vdyAlIDEwMDAwMDApIC8gZGl2LCBiZWdpbiArIGxlbik7Cj4+Pj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmICghZm10X25ldykKPj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwo+Pj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBhdl9icHJpbnRfc3RyZnRpbWUoYnAsIGZtdF9uZXcsICZ0bSk7Cj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGF2X2ZyZWVwKCZmbXRfbmV3KTsKPj4+Pj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIDA7Cj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCB9Cj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoCBiZWdpbisrOwo+Pj4+Cj4+Pj4gUHJvZ3Jlc3MgZmFzdGVyIGJ5 IHRha2luZyBhY2NvdW50IG9mIGxlbi4KPj4+Cj4+PiBBcyB3ZWxsLCBhbHNvIGFkZGVkIHRvIHNr aXAgIiUlIi4KPj4+Cj4+Pgo+Pj4+PiArwqDCoMKgIH0KPj4+Pj4gKwo+Pj4+PiAgwqDCoMKgwqDC oCBhdl9icHJpbnRfc3RyZnRpbWUoYnAsIGZtdCwgJnRtKTsKPj4+Pj4gIMKgwqDCoMKgwqAgcmV0 dXJuIDA7Cj4+Pj4+ICDCoCB9Cj4+Pj4+IC0tIAo+Pj4KPj4+IHY4IGF0dGFjaGVkLgo+Pgo+PiBG aXhlZCBvZmYtYnktb25lIGJ1Zy4KPj4gQWxsb3dzIGZvciBzZXZlcmFsIG9jY3VycmVuY2VzIG9m ICVOIHBhcmFtZXRlciBub3cuCj4+Cj4+IHY5IGF0dGFjaGVkLgo+Pgo+PiBUaGFua3MsCj4+IFRo aWxvCj4+Cj4+Cj4+ICsgICAgLy8gbWFudWFsbHkgcGFyc2UgZm9ybWF0IGZvciAlTiAoZnJhY3Rp b25hbCBzZWNvbmRzKQo+PiArICAgIGJlZ2luID0gZm10Owo+PiArICAgIHdoaWxlICgoYmVnaW4g PSBhdl9zdHJpc3RyKGJlZ2luLCAiJSIpKSkgewo+PiArICAgICAgICB0bXAgPSBiZWdpbiArIDE7 Cj4gCj4gYmVnaW4gPSBzdHJjaHIoYmVnaW4sICclJykKCkRvbmUuCkFsc28gZml4ZWQgYnVnZ3kg ZnJlZXAoKSBmb3Igbm9uIHVzZXItc3VwcGxpZWQgZm9ybWF0IHN0cmluZy4KCnYxMCBhdHRhY2hl ZC4KCi1UaGlsbwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBz Oi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3Jp YmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBl Zy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==