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 22C4948398 for ; Sun, 30 Jun 2024 09:05:35 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id EB54C68D6F8; Sun, 30 Jun 2024 12:05:33 +0300 (EEST) Received: from ursule.remlab.net (vps-a2bccee9.vps.ovh.net [51.75.19.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 799FF68D688 for ; Sun, 30 Jun 2024 12:05:28 +0300 (EEST) Received: from basile.remlab.net (localhost [IPv6:::1]) by ursule.remlab.net (Postfix) with ESMTP id 05BF2C0137 for ; Sun, 30 Jun 2024 12:05:27 +0300 (EEST) From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= To: ffmpeg-devel@ffmpeg.org Date: Sun, 30 Jun 2024 12:05:26 +0300 Message-ID: <20240630090527.65998-1-remi@remlab.net> X-Mailer: git-send-email 2.45.2 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] lavc/h264dsp: R-V V 8-bit luma loop filter 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: VC1IZWFkIEM5MDggKGN5Y2xlcyk6CmgyNjRfaF9sb29wX2ZpbHRlcl9sdW1hXzhicHBfYzogICAg ICAgMjk3LjUKaDI2NF9oX2xvb3BfZmlsdGVyX2x1bWFfOGJwcF9ydnZfaTMyOiAzNzQuNwpoMjY0 X3ZfbG9vcF9maWx0ZXJfbHVtYV84YnBwX2M6ICAgICAgIDg2Mi43CmgyNjRfdl9sb29wX2ZpbHRl cl9sdW1hXzhicHBfcnZ2X2kzMjogMjAwLjcKClBlcmZvcm1hbmNlIGluIHRoZSBob3Jpem9udGFs IHNjZW5hcmlvIHNlZW1zIHdvcnNlIHRoYW4gc2NhbGFyLiB4ODYKU1NFMiBhbmQgQVZYIG9wdGlt aXNhdGlvbnMgYXJlIHNpbWlsYXJseSBhZmZlY3RlZC4gVGhpcyBpcyBwcmVzdW1hYmx5CmNhdXNl ZCBieSB1bmx1Y2t5IGlucHV0cyBmcm9tIGNoZWNrYXNtLCBzdWNoIHRoYXQgdGhlIEMgY29kZQpz aG9ydC1jaXJjdWl0cyBhbG1vc3QgYWxsIGZpbHRlciBjYWxjdWxhdGlvbnMuCi0tLQogbGliYXZj b2RlYy9yaXNjdi9NYWtlZmlsZSAgICAgICB8ICAgMSArCiBsaWJhdmNvZGVjL3Jpc2N2L2gyNjRk c3BfaW5pdC5jIHwgIDEzICsrLQogbGliYXZjb2RlYy9yaXNjdi9oMjY0ZHNwX3J2di5TICB8IDEz NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxNDkg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29k ZWMvcmlzY3YvaDI2NGRzcF9ydnYuUwoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcmlzY3YvTWFr ZWZpbGUgYi9saWJhdmNvZGVjL3Jpc2N2L01ha2VmaWxlCmluZGV4IGMxODAyMjMxNDEuLmExNTEw ZThjNmUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmlzY3YvTWFrZWZpbGUKKysrIGIvbGliYXZj b2RlYy9yaXNjdi9NYWtlZmlsZQpAQCAtMzEsNiArMzEsNyBAQCBSVlYtT0JKUy0kKENPTkZJR19I MjYzRFNQKSArPSByaXNjdi9oMjYzZHNwX3J2di5vCiBPQkpTLSQoQ09ORklHX0gyNjRDSFJPTUEp ICs9IHJpc2N2L2gyNjRfY2hyb21hX2luaXRfcmlzY3YubwogUlZWLU9CSlMtJChDT05GSUdfSDI2 NENIUk9NQSkgKz0gcmlzY3YvaDI2NF9tY19jaHJvbWEubwogT0JKUy0kKENPTkZJR19IMjY0RFNQ KSArPSByaXNjdi9oMjY0ZHNwX2luaXQubworUlZWLU9CSlMtJChDT05GSUdfSDI2NERTUCkgKz0g cmlzY3YvaDI2NGRzcF9ydnYubwogT0JKUy0kKENPTkZJR19IVUZGWVVWX0RFQ09ERVIpICs9IHJp c2N2L2h1ZmZ5dXZkc3BfaW5pdC5vCiBSVlYtT0JKUy0kKENPTkZJR19IVUZGWVVWX0RFQ09ERVIp ICs9IHJpc2N2L2h1ZmZ5dXZkc3BfcnZ2Lm8KIE9CSlMtJChDT05GSUdfSURDVERTUCkgKz0gcmlz Y3YvaWRjdGRzcF9pbml0Lm8KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcmlzY3YvaDI2NGRzcF9p bml0LmMgYi9saWJhdmNvZGVjL3Jpc2N2L2gyNjRkc3BfaW5pdC5jCmluZGV4IGRiYmYzZGI0MDAu LjBkNGQ1NDE5OTIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmlzY3YvaDI2NGRzcF9pbml0LmMK KysrIGIvbGliYXZjb2RlYy9yaXNjdi9oMjY0ZHNwX2luaXQuYwpAQCAtMjQsOCArMjQsMTQgQEAK IAogI2luY2x1ZGUgImxpYmF2dXRpbC9hdHRyaWJ1dGVzLmgiCiAjaW5jbHVkZSAibGliYXZ1dGls L2NwdS5oIgorI2luY2x1ZGUgImxpYmF2dXRpbC9yaXNjdi9jcHUuaCIKICNpbmNsdWRlICJsaWJh dmNvZGVjL2gyNjRkc3AuaCIKIAordm9pZCBmZl9oMjY0X3ZfbG9vcF9maWx0ZXJfbHVtYV84X3J2 dih1aW50OF90ICpwaXgsIHB0cmRpZmZfdCBzdHJpZGUsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGludCBhbHBoYSwgaW50IGJldGEsIGludDhfdCAqdGMwKTsKK3ZvaWQg ZmZfaDI2NF9oX2xvb3BfZmlsdGVyX2x1bWFfOF9ydnYodWludDhfdCAqcGl4LCBwdHJkaWZmX3Qg c3RyaWRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYWxwaGEs IGludCBiZXRhLCBpbnQ4X3QgKnRjMCk7CisKIGV4dGVybiBpbnQgZmZfc3RhcnRjb2RlX2ZpbmRf Y2FuZGlkYXRlX3J2Yihjb25zdCB1aW50OF90ICosIGludCk7CiBleHRlcm4gaW50IGZmX3N0YXJ0 Y29kZV9maW5kX2NhbmRpZGF0ZV9ydnYoY29uc3QgdWludDhfdCAqLCBpbnQpOwogCkBAIC0zOCw4 ICs0NCwxMyBAQCBhdl9jb2xkIHZvaWQgZmZfaDI2NGRzcF9pbml0X3Jpc2N2KEgyNjREU1BDb250 ZXh0ICpkc3AsIGNvbnN0IGludCBiaXRfZGVwdGgsCiAgICAgaWYgKGZsYWdzICYgQVZfQ1BVX0ZM QUdfUlZCX0JBU0lDKQogICAgICAgICBkc3AtPnN0YXJ0Y29kZV9maW5kX2NhbmRpZGF0ZSA9IGZm X3N0YXJ0Y29kZV9maW5kX2NhbmRpZGF0ZV9ydmI7CiAjIGlmIEhBVkVfUlZWCi0gICAgaWYgKGZs YWdzICYgQVZfQ1BVX0ZMQUdfUlZWX0kzMikKKyAgICBpZiAoZmxhZ3MgJiBBVl9DUFVfRkxBR19S VlZfSTMyKSB7CisgICAgICAgIGlmIChiaXRfZGVwdGggPT0gOCAmJiBmZl9ydl92bGVuX2xlYXN0 KDEyOCkpIHsKKyAgICAgICAgICAgIGRzcC0+aDI2NF92X2xvb3BfZmlsdGVyX2x1bWEgPSBmZl9o MjY0X3ZfbG9vcF9maWx0ZXJfbHVtYV84X3J2djsKKyAgICAgICAgICAgIGRzcC0+aDI2NF9oX2xv b3BfZmlsdGVyX2x1bWEgPSBmZl9oMjY0X2hfbG9vcF9maWx0ZXJfbHVtYV84X3J2djsKKyAgICAg ICAgfQogICAgICAgICBkc3AtPnN0YXJ0Y29kZV9maW5kX2NhbmRpZGF0ZSA9IGZmX3N0YXJ0Y29k ZV9maW5kX2NhbmRpZGF0ZV9ydnY7CisgICAgfQogIyBlbmRpZgogI2VuZGlmCiB9CmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL3Jpc2N2L2gyNjRkc3BfcnZ2LlMgYi9saWJhdmNvZGVjL3Jpc2N2L2gy NjRkc3BfcnZ2LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uZWE5ZGZi MWE3ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmF2Y29kZWMvcmlzY3YvaDI2NGRzcF9ydnYuUwpA QCAtMCwwICsxLDEzNiBAQAorLyoKKyAqIENvcHlyaWdodCDCqSAyMDI0IFLDqW1pIERlbmlzLUNv dXJtb250LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgorICog MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj b3B5cmlnaHQgbm90aWNlLAorICogICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5 IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgKiAgICB0 aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo ZSBkb2N1bWVudGF0aW9uCisgKiAgICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ IFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIKKyAqIEFORCBB TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4g Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUKKyAq IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyAqIFBP U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJsaWJhdnV0aWwvcmlz Y3YvYXNtLlMiCisKKyAgICAgICAgLnZhcmlhbnRfY2MgZmZfaDI2NF9sb29wX2ZpbHRlcl9sdW1h XzhfcnZ2CitmdW5jIGZmX2gyNjRfbG9vcF9maWx0ZXJfbHVtYV84X3J2diwgenZlMzJ4CisgICAg ICAgICMgcDI6IHY4LCBwMTogdjksIHAwOiB2MTAsIHEwOiB2MTEsIHExOiB2MTIsIHEyOiB2MTMK KyAgICAgICAgIyBhbHBoYTogYTIsIGJldGE6IGEzCisgICAgICAgIGNzcndpICAgICAgICB2eHJt LCAwCisgICAgICAgIHZpZC52ICAgICAgICB2MAorICAgICAgICB2YWFkZHUudnYgICAgdjE0LCB2 MTAsIHYxMSAjIChwMCArIHEwICsgMSkgLyAyCisgICAgICAgIHZzcmwudmkgICAgICB2MCwgdjAs IDIgICAgICMgdjBbaV0gPSBpIC8gaW5uZXJfaXRlcnMKKyAgICAgICAgdndzdWJ1LnZ2ICAgIHYx NiwgdjksIHYxMgorICAgICAgICB2cmdhdGhlci52diAgdjYsIHY0LCB2MCAgICAjIHRjX29yaWcK KyAgICAgICAgdndhZGR1LnZ2ICAgIHYxOCwgdjgsIHYxNAorICAgICAgICB2d2FkZHUudnYgICAg djIwLCB2MTMsIHYxNAorICAgICAgICB2bnNyYS53aSAgICAgdjI0LCB2MTYsIDIgICAjIChwMSAt IHExKSAvIDQKKyAgICAgICAgdm5zcmwud2kgICAgIHYxNCwgdjE4LCAxCisgICAgICAgIHZuc3Js LndpICAgICB2MTUsIHYyMCwgMQorICAgICAgICB2bmVnLnYgICAgICAgdjUsIHY2ICAgICAgICAj IC10Y19vcmlnCisgICAgICAgIHZ3c3VidS52diAgICB2MjIsIHYxMSwgdjEwICMgcTAgLSBwMAor ICAgICAgICB2d3N1YnUudnYgICAgdjE4LCB2MTQsIHY5CisgICAgICAgIHZ3c3VidS52diAgICB2 MjAsIHYxNSwgdjEyCisgICAgICAgIHZ3YWRkLnd2ICAgICB2MTYsIHYyMiwgdjI0CisgICAgICAg IHZtc2dlLnZpICAgICB2NywgdjYsIDAgICAgICMgdGNfb3JpZyA+PSAwCisgICAgICAgIHZuY2xp cC53aSAgICB2MTQsIHYxOCwgMAorICAgICAgICB2bmNsaXAud2kgICAgdjE1LCB2MjAsIDAKKyAg ICAgICAgdm5jbGlwLndpICAgIHYxNiwgdjE2LCAxICAgIyBjbGlwOCgocTAgLSBwMCArIChwMSAt IHExKSAvIDQgKyAxKSA+PiAxKQorICAgICAgICB2bWluLnZ2ICAgICAgdjE0LCB2MTQsIHY2Cisg ICAgICAgIHZtaW4udnYgICAgICB2MTUsIHYxNSwgdjYKKyAgICAgICAgdm1heC52diAgICAgIHYx NCwgdjE0LCB2NSAgIyBjbGlwKHAyICsgLi4uIC0gcDEsICsvLXRjX29yaWcpCisgICAgICAgIHZt YXgudnYgICAgICB2MTUsIHYxNSwgdjUgICMgY2xpcChxMiArIC4uLiAtIHExLCArLy10Y19vcmln KQorICAgICAgICB2d3N1YnUudnYgICAgdjIwLCB2MTAsIHYxMQorICAgICAgICB2d3N1YnUudnYg ICAgdjI0LCB2OSwgdjEwCisgICAgICAgIHZ3c3VidS52diAgICB2MjYsIHYxMCwgdjkKKyAgICAg ICAgdndzdWJ1LnZ2ICAgIHYyOCwgdjEyLCB2MTEKKyAgICAgICAgdndzdWJ1LnZ2ICAgIHYzMCwg djExLCB2MTIKKyAgICAgICAgdndzdWJ1LnZ2ICAgIHYwLCB2OCwgdjEwCisgICAgICAgIHZ3c3Vi dS52diAgICB2MiwgdjEwLCB2OAorICAgICAgICB2d3N1YnUudnYgICAgdjQsIHYxMywgdjExCisg ICAgICAgIHZ3c3VidS52diAgICB2MTgsIHYxMSwgdjEzCisgICAgICAgIHZzZXR2bGkgICAgICB6 ZXJvLCB6ZXJvLCBlMTYsIG0yLCB0YSwgbWEKKyAgICAgICAgdm1heC52diAgICAgIHYyMCwgdjIw LCB2MjIgIyBhYnMocDAgLSBxMCkKKyAgICAgICAgdm1heC52diAgICAgIHYyNCwgdjI0LCB2MjYg IyBhYnMocDEgLSBwMCkKKyAgICAgICAgdm1heC52diAgICAgIHYyOCwgdjI4LCB2MzAgIyBhYnMo cTEgLSBxMCkKKyAgICAgICAgdm1heC52diAgICAgIHYyMiwgdjAsIHYyICAgIyBhYnMocDIgLSBw MCkKKyAgICAgICAgdm1heC52diAgICAgIHYyNiwgdjQsIHYxOCAgIyBhYnMocTIgLSBxMCkKKyAg ICAgICAgdm1zbHQudnggICAgIHYxLCB2MjAsIGEyCisgICAgICAgIHZtc2x0LnZ4ICAgICB2Miwg djI0LCBhMworICAgICAgICB2bWFuZC5tbSAgICAgdjcsIHY3LCB2MQorICAgICAgICB2bXNsdC52 eCAgICAgdjMsIHYyOCwgYTMKKyAgICAgICAgdm1hbmQubW0gICAgIHY3LCB2NywgdjIKKyAgICAg ICAgdm1zbHQudnggICAgIHYwLCB2MjIsIGEzCisgICAgICAgIHZtYW5kLm1tICAgICB2Nywgdjcs IHYzICAgICMgd2hldGhlciB0byB1cGRhdGUgcDAgYW5kIHEwCisgICAgICAgIHZtc2x0LnZ4ICAg ICB2MSwgdjI2LCBhMworICAgICAgICB2bWFuZC5tbSAgICAgdjAsIHYwLCB2NworICAgICAgICB2 c2V0dmxpICAgICAgemVybywgemVybywgZTgsIG0xLCB0YSwgbXUKKyAgICAgICAgdmFkZC52aSAg ICAgIHY2LCB2NiwgMSwgdjAudCAgICAgIyB0YysrCisgICAgICAgIHZhZGQudnYgICAgICB2OSwg djksIHYxNCwgdjAudCAgICMgcDEnCisgICAgICAgIHZtYW5kLm1tICAgICB2MCwgdjEsIHY3Cisg ICAgICAgIHZhZGQudmkgICAgICB2NiwgdjYsIDEsIHYwLnQgICAgICMgdGMrKworICAgICAgICB2 YWRkLnZ2ICAgICAgdjEyLCB2MTIsIHYxNSwgdjAudCAjIHExJworICAgICAgICB2bmVnLnYgICAg ICAgdjUsIHY2ICAgICAgICAgICAgICAjIC10YworICAgICAgICB2bWluLnZ2ICAgICAgdjE2LCB2 MTYsIHY2CisgICAgICAgIHZ3Y3Z0dS54LngudiB2MTgsIHYxMAorICAgICAgICB2bWF4LnZ2ICAg ICAgdjE2LCB2MTYsIHY1CisgICAgICAgIHZ3Y3Z0dS54LngudiB2MjAsIHYxMQorICAgICAgICB2 d2FkZC53diAgICAgdjE4LCB2MTgsIHYxNgorICAgICAgICB2d3N1Yi53diAgICAgdjIwLCB2MjAs IHYxNgorICAgICAgICB2bW12Lm0gICAgICAgdjAsIHY3CisgICAgICAgIHZzZXR2bGkgICAgICB6 ZXJvLCB6ZXJvLCBlMTYsIG0yLCB0YSwgbWEKKyAgICAgICAgdm1heC52eCAgICAgIHYxOCwgdjE4 LCB6ZXJvCisgICAgICAgIHZtYXgudnggICAgICB2MjAsIHYyMCwgemVybworICAgICAgICB2c2V0 dmxpICAgICAgemVybywgemVybywgZTgsIG0xLCB0YSwgbXUKKyAgICAgICAgdm5jbGlwdS53aSAg IHYxMCwgdjE4LCAwLCB2MC50ICAgIyBwMCcKKyAgICAgICAgdm5jbGlwdS53aSAgIHYxMSwgdjIw LCAwLCB2MC50ICAgIyBxMCcKKyAgICAgICAganIgICAgICAgICAgIHQwCitlbmRmdW5jCisKK2Z1 bmMgZmZfaDI2NF92X2xvb3BfZmlsdGVyX2x1bWFfOF9ydnYsIHp2ZTMyeAorICAgICAgICB2c2V0 aXZsaSB6ZXJvLCA0LCBlOCwgbWY0LCB0YSwgbWEKKyAgICAgICAgdmxlOC52ICAgdjQsIChhNCkK KyAgICAgICAgc3ViICAgICAgdDMsIGEwLCBhMQorICAgICAgICB2c2V0aXZsaSB6ZXJvLCAxNiwg ZTgsIG0xLCB0YSwgbWEKKyAgICAgICAgdmxlOC52ICAgdjExLCAoYTApCisgICAgICAgIHN1YiAg ICAgIHQyLCB0MywgYTEKKyAgICAgICAgdmxlOC52ICAgdjEwLCAodDMpCisgICAgICAgIHN1YiAg ICAgIHQxLCB0MiwgYTEKKyAgICAgICAgdmxlOC52ICAgdjksICh0MikKKyAgICAgICAgYWRkICAg ICAgdDUsIGEwLCBhMQorICAgICAgICB2bGU4LnYgICB2OCwgKHQxKQorICAgICAgICBhZGQgICAg ICB0NiwgdDUsIGExCisgICAgICAgIHZsZTgudiAgIHYxMiwgKHQ1KQorICAgICAgICB2bGU4LnYg ICB2MTMsICh0NikKKyAgICAgICAgamFsICAgICAgdDAsIGZmX2gyNjRfbG9vcF9maWx0ZXJfbHVt YV84X3J2dgorICAgICAgICB2c2U4LnYgICB2OSwgKHQyKQorICAgICAgICB2c2U4LnYgICB2MTAs ICh0MykKKyAgICAgICAgdnNlOC52ICAgdjExLCAoYTApCisgICAgICAgIHZzZTgudiAgIHYxMiwg KHQ1KQorICAgICAgICByZXQKK2VuZGZ1bmMKKworZnVuYyBmZl9oMjY0X2hfbG9vcF9maWx0ZXJf bHVtYV84X3J2diwgenZlMzJ4CisgICAgICAgIHZzZXRpdmxpIHplcm8sIDQsIGU4LCBtZjQsIHRh LCBtYQorICAgICAgICB2bGU4LnYgICB2NCwgKGE0KQorICAgICAgICBhZGRpICAgICBhMCwgYTAs IC0zCisgICAgICAgIHZzZXRpdmxpIHplcm8sIDE2LCBlOCwgbTEsIHRhLCBtYQorICAgICAgICB2 bHNzZWc2ZTgudiB2OCwgKGEwKSwgYTEKKyAgICAgICAgamFsICAgICAgdDAsIGZmX2gyNjRfbG9v cF9maWx0ZXJfbHVtYV84X3J2dgorICAgICAgICB2c3NzZWc2ZTgudiB2OCwgKGEwKSwgYTEKKyAg ICAgICAgcmV0CitlbmRmdW5jCi0tIAoyLjQ1LjIKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRl dmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVn LWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVn LWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K