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 198684B399 for ; Tue, 4 Jun 2024 16:36:03 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B30E368D6E0; Tue, 4 Jun 2024 19:36:00 +0300 (EEST) Received: from smtp1.dnsmadeeasy.com (smtp1.dnsmadeeasy.com [208.94.147.128]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 038F368D693 for ; Tue, 4 Jun 2024 19:35:53 +0300 (EEST) Received: from smtp1.dnsmadeeasy.com (localhost [127.0.0.1]) by smtp1.dnsmadeeasy.com (Postfix) with ESMTP id 44F662F8054D; Tue, 4 Jun 2024 16:35:52 +0000 (UTC) X-Authenticated-Name: nate@nmssoftware.com Received: from stor01 (unknown [129.224.199.189]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp1.dnsmadeeasy.com (Postfix) with ESMTPSA; Tue, 4 Jun 2024 16:35:52 +0000 (UTC) Received: from marcus.forced.laptop (unknown [192.168.26.125]) by stor01 (Postfix) with ESMTP id 644461EB2AF; Tue, 4 Jun 2024 11:35:51 -0500 (CDT) From: Marcus B Spencer To: ffmpeg-devel@ffmpeg.org Date: Tue, 4 Jun 2024 11:35:46 -0500 Message-ID: <20240604163547.168748-1-marcus@marcusspencer.xyz> X-Mailer: git-send-email 2.45.2 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v4] avcodec: add farbfeld encoder 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: Marcus B Spencer 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: ZmFyYmZlbGQgaXMgYW4gdW5jb21wcmVzc2VkIGltYWdlIGZvcm1hdCB0aGF0IGlzIGEgcGFydCBv ZiBzdWNrbGVzcwp0b29scyAoaHR0cHM6Ly90b29scy5zdWNrbGVzcy5vcmcpLgoKSXRzIGRvY3Vt ZW50YXRpb24gaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vdG9vbHMuc3Vja2xlc3Mub3JnL2ZhcmJm ZWxkLgoKQWRkIHN1cHBvcnQgZm9yIHRoaXMgaW1hZ2UgZm9ybWF0IGluIGF2Y29kZWMgYW5kIHVw ZGF0ZSB0aGUgaW1hZ2UyCmZvcm1hdCBhY2NvcmRpbmdseS4KClNpZ25lZC1vZmYtYnk6IE1hcmN1 cyBCIFNwZW5jZXIgPG1hcmN1c0BtYXJjdXNzcGVuY2VyLnh5ej4KLS0tCiBDaGFuZ2Vsb2cgICAg ICAgICAgICAgICAgIHwgIDEgKwogZG9jL2dlbmVyYWxfY29udGVudHMudGV4aSB8ICAyICsKIGxp YmF2Y29kZWMvTWFrZWZpbGUgICAgICAgfCAgMSArCiBsaWJhdmNvZGVjL2FsbGNvZGVjcy5jICAg IHwgIDEgKwogbGliYXZjb2RlYy9jb2RlY19kZXNjLmMgICB8ICA3ICsrKysKIGxpYmF2Y29kZWMv Y29kZWNfaWQuaCAgICAgfCAgMSArCiBsaWJhdmNvZGVjL2ZhcmJmZWxkZW5jLmMgIHwgODQgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBsaWJhdmNvZGVjL3ZlcnNpb24u aCAgICAgIHwgIDIgKy0KIGxpYmF2Zm9ybWF0L2ltZzIuYyAgICAgICAgfCAgMSArCiBsaWJhdmZv cm1hdC9pbWcyZW5jLmMgICAgIHwgIDIgKy0KIDEwIGZpbGVzIGNoYW5nZWQsIDEwMCBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29kZWMvZmFy YmZlbGRlbmMuYwoKZGlmZiAtLWdpdCBhL0NoYW5nZWxvZyBiL0NoYW5nZWxvZwppbmRleCAwM2Q2 YjI5YWQ4Li5kMmI4MzFjNjIzIDEwMDY0NAotLS0gYS9DaGFuZ2Vsb2cKKysrIGIvQ2hhbmdlbG9n CkBAIC0xMiw2ICsxMiw3IEBAIHZlcnNpb24gPG5leHQ+OgogLSBxc3ZfcGFyYW1zIG9wdGlvbiBh ZGRlZCBmb3IgUVNWIGVuY29kZXJzCiAtIFZWQyBkZWNvZGVyIGNvbXBhdGlibGUgd2l0aCBEVkIg dGVzdCBjb250ZW50CiAtIHhIRS1BQUMgZGVjb2RlcgorLSBmYXJiZmVsZCBlbmNvZGVyCiAKIAog dmVyc2lvbiA3LjA6CmRpZmYgLS1naXQgYS9kb2MvZ2VuZXJhbF9jb250ZW50cy50ZXhpIGIvZG9j L2dlbmVyYWxfY29udGVudHMudGV4aQppbmRleCBlN2NmNGY4MjM5Li4xMjlhMzI1ZWNmIDEwMDY0 NAotLS0gYS9kb2MvZ2VuZXJhbF9jb250ZW50cy50ZXhpCisrKyBiL2RvYy9nZW5lcmFsX2NvbnRl bnRzLnRleGkKQEAgLTg1Myw2ICs4NTMsOCBAQCBmb2xsb3dpbmcgaW1hZ2UgZm9ybWF0cyBhcmUg c3VwcG9ydGVkOgogICAgIEB0YWIgWCBQaXhNYXAgaW1hZ2UgZm9ybWF0CiBAaXRlbSBYV0QgIEB0 YWIgWCBAdGFiIFgKICAgICBAdGFiIFggV2luZG93IER1bXAgaW1hZ2UgZm9ybWF0CitAaXRlbSBG RiAgICAgICAgICAgQHRhYiBYIEB0YWIKKyAgICBAdGFiIGZhcmJmZWxkIHVuY29tcHJlc3NlZCBp bWFnZSBmb3JtYXQKIEBlbmQgbXVsdGl0YWJsZQogCiBAY29kZXtYfSBtZWFucyB0aGF0IHRoZSBm ZWF0dXJlIGluIHRoYXQgY29sdW1uIChlbmNvZGluZyAvIGRlY29kaW5nKSBpcyBzdXBwb3J0ZWQu CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL01ha2VmaWxlIGIvbGliYXZjb2RlYy9NYWtlZmlsZQpp bmRleCA4YWI0Mzk4YjZjLi45NjQ3Mjc5NDIzIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL01ha2Vm aWxlCisrKyBiL2xpYmF2Y29kZWMvTWFrZWZpbGUKQEAgLTM1Niw2ICszNTYsNyBAQCBPQkpTLSQo Q09ORklHX0VTQ0FQRTEzMF9ERUNPREVSKSAgICAgICArPSBlc2NhcGUxMzAubwogT0JKUy0kKENP TkZJR19FVlJDX0RFQ09ERVIpICAgICAgICAgICAgKz0gZXZyY2RlYy5vIGFjZWxwX3ZlY3RvcnMu byBsc3AubwogT0JKUy0kKENPTkZJR19FWFJfREVDT0RFUikgICAgICAgICAgICAgKz0gZXhyLm8g ZXhyZHNwLm8gaGFsZjJmbG9hdC5vCiBPQkpTLSQoQ09ORklHX0VYUl9FTkNPREVSKSAgICAgICAg ICAgICArPSBleHJlbmMubyBmbG9hdDJoYWxmLm8KK09CSlMtJChDT05GSUdfRkFSQkZFTERfRU5D T0RFUikgICAgICAgICs9IGZhcmJmZWxkZW5jLm8KIE9CSlMtJChDT05GSUdfRkFTVEFVRElPX0RF Q09ERVIpICAgICAgICs9IGZhc3RhdWRpby5vCiBPQkpTLSQoQ09ORklHX0ZGVjFfREVDT0RFUikg ICAgICAgICAgICArPSBmZnYxZGVjLm8gZmZ2MS5vCiBPQkpTLSQoQ09ORklHX0ZGVjFfRU5DT0RF UikgICAgICAgICAgICArPSBmZnYxZW5jLm8gZmZ2MS5vCmRpZmYgLS1naXQgYS9saWJhdmNvZGVj L2FsbGNvZGVjcy5jIGIvbGliYXZjb2RlYy9hbGxjb2RlY3MuYwppbmRleCBiMTAyYTgwNjllLi5i MGViYjcyMzk2IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2FsbGNvZGVjcy5jCisrKyBiL2xpYmF2 Y29kZWMvYWxsY29kZWNzLmMKQEAgLTExNSw2ICsxMTUsNyBAQCBleHRlcm4gY29uc3QgRkZDb2Rl YyBmZl9lc2NhcGUxMjRfZGVjb2RlcjsKIGV4dGVybiBjb25zdCBGRkNvZGVjIGZmX2VzY2FwZTEz MF9kZWNvZGVyOwogZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfZXhyX2VuY29kZXI7CiBleHRlcm4g Y29uc3QgRkZDb2RlYyBmZl9leHJfZGVjb2RlcjsKK2V4dGVybiBjb25zdCBGRkNvZGVjIGZmX2Zh cmJmZWxkX2VuY29kZXI7CiBleHRlcm4gY29uc3QgRkZDb2RlYyBmZl9mZnYxX2VuY29kZXI7CiBl eHRlcm4gY29uc3QgRkZDb2RlYyBmZl9mZnYxX2RlY29kZXI7CiBleHRlcm4gY29uc3QgRkZDb2Rl YyBmZl9mZnZodWZmX2VuY29kZXI7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2NvZGVjX2Rlc2Mu YyBiL2xpYmF2Y29kZWMvY29kZWNfZGVzYy5jCmluZGV4IGEyOGVmNjgwNjEuLjMzZGJkMmNlOTQg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvY29kZWNfZGVzYy5jCisrKyBiL2xpYmF2Y29kZWMvY29k ZWNfZGVzYy5jCkBAIC0xOTU5LDYgKzE5NTksMTMgQEAgc3RhdGljIGNvbnN0IEFWQ29kZWNEZXNj cmlwdG9yIGNvZGVjX2Rlc2NyaXB0b3JzW10gPSB7CiAgICAgICAgIC5sb25nX25hbWUgPSBOVUxM X0lGX0NPTkZJR19TTUFMTCgiTEVBRCBNQ01QIiksCiAgICAgICAgIC5wcm9wcyAgICAgPSBBVl9D T0RFQ19QUk9QX0lOVFJBX09OTFkgfCBBVl9DT0RFQ19QUk9QX0xPU1NZLAogICAgIH0sCisgICAg eworICAgICAgICAuaWQgICAgICAgID0gQVZfQ09ERUNfSURfRkFSQkZFTEQsCisgICAgICAgIC50 eXBlICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCisgICAgICAgIC5uYW1lICAgICAgPSAiZmFy YmZlbGQiLAorICAgICAgICAubG9uZ19uYW1lID0gTlVMTF9JRl9DT05GSUdfU01BTEwoImZhcmJm ZWxkIHVuY29tcHJlc3NlZCBpbWFnZSIpLAorICAgICAgICAucHJvcHMgICAgID0gQVZfQ09ERUNf UFJPUF9JTlRSQV9PTkxZIHwgQVZfQ09ERUNfUFJPUF9MT1NTTEVTUywKKyAgICB9LAogCiAgICAg LyogdmFyaW91cyBQQ00gImNvZGVjcyIgKi8KICAgICB7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVj L2NvZGVjX2lkLmggYi9saWJhdmNvZGVjL2NvZGVjX2lkLmgKaW5kZXggMGFiMWUzNGE2MS4uZDRi MGQyM2Y3ZSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9jb2RlY19pZC5oCisrKyBiL2xpYmF2Y29k ZWMvY29kZWNfaWQuaApAQCAtMzIyLDYgKzMyMiw3IEBAIGVudW0gQVZDb2RlY0lEIHsKICAgICBB Vl9DT0RFQ19JRF9SVFYxLAogICAgIEFWX0NPREVDX0lEX1ZNSVgsCiAgICAgQVZfQ09ERUNfSURf TEVBRCwKKyAgICBBVl9DT0RFQ19JRF9GQVJCRkVMRCwKIAogICAgIC8qIHZhcmlvdXMgUENNICJj b2RlY3MiICovCiAgICAgQVZfQ09ERUNfSURfRklSU1RfQVVESU8gPSAweDEwMDAwLCAgICAgLy8v PCBBIGR1bW15IGlkIHBvaW50aW5nIGF0IHRoZSBzdGFydCBvZiBhdWRpbyBjb2RlY3MKZGlmZiAt LWdpdCBhL2xpYmF2Y29kZWMvZmFyYmZlbGRlbmMuYyBiL2xpYmF2Y29kZWMvZmFyYmZlbGRlbmMu YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi45ODEwY2E4ZTRmCi0tLSAv ZGV2L251bGwKKysrIGIvbGliYXZjb2RlYy9mYXJiZmVsZGVuYy5jCkBAIC0wLDAgKzEsODQgQEAK Ky8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMjQgTWFyY3VzIEIgU3BlbmNlciA8bWFyY3VzQG1hcmN1 c3NwZW5jZXIueHl6PgorICoKKyAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUg b2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKKyAqIG9mIHRoaXMgc29m dHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIOKAnFNvZnR3YXJl 4oCdKSwgdG8KKyAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGlu Y2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlCisgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBt b2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKKyAq IHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdo b20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhl IGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNl IGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCisgKiBhbGwg Y29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAqCisgKiBU SEUgU09GVFdBUkUgSVMgUFJPVklERUQg4oCcQVMgSVPigJ0sIFdJVEhPVVQgV0FSUkFOVFkgT0Yg QU5ZIEtJTkQsIEVYUFJFU1MgT1IKKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlU RUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAorICogRklUTkVTUyBGT1Ig QSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hB TEwgVEhFCisgKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5Z IENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNU SU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORworICogRlJPTSwgT1VU IE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhF UiBERUFMSU5HUworICogSU4gVEhFIFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRlICJsaWJhdnV0 aWwvaW1ndXRpbHMuaCIKKyNpbmNsdWRlICJjb2RlY19pbnRlcm5hbC5oIgorI2luY2x1ZGUgImJ5 dGVzdHJlYW0uaCIKKyNpbmNsdWRlICJhdmNvZGVjLmgiCisjaW5jbHVkZSAiZW5jb2RlLmgiCisK KyNkZWZpbmUgSEVBREVSX1NJWkUgMTYKKyNkZWZpbmUgUExBTkVfQ09VTlQgNCAvLyByZXF1aXJl ZCBieSBhdl9pbWFnZV9jb3B5X3RvX2J1ZmZlcgorCitzdGF0aWMgaW50IGZhcmJmZWxkX2VuY29k ZV9mcmFtZShBVkNvZGVjQ29udGV4dCAqY3R4LCBBVlBhY2tldCAqcGt0LAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgQVZGcmFtZSAqcCwgaW50ICpnb3RfcGFja2V0KQor eworICAgIGludDY0X3QgcmF3X2ltZ19zaXplID0gcC0+d2lkdGggKiBwLT5oZWlnaHQgKiA4OyAv LyA4IGJ5dGVzIHBlciBwaXhlbAorICAgIGludDY0X3QgYnVmX3NpemUgPSByYXdfaW1nX3NpemUg KyBIRUFERVJfU0laRTsKKyAgICBjb25zdCB1aW50OF90ICpwbGFuZXNbUExBTkVfQ09VTlRdOwor ICAgIHVpbnQ4X3QgKmJ1ZjsKKyAgICBpbnQgcmV0OworCisgICAgaWYgKGJ1Zl9zaXplIDwgMCkK KyAgICAgICAgcmV0dXJuIGJ1Zl9zaXplOworCisgICAgaWYgKChyZXQgPSBmZl9nZXRfZW5jb2Rl X2J1ZmZlcihjdHgsIHBrdCwgYnVmX3NpemUsIDApKSA8IDApCisgICAgICAgIHJldHVybiByZXQ7 CisKKyAgICBidWYgPSBwa3QtPmRhdGE7CisKKyAgICBieXRlc3RyZWFtX3B1dF9idWZmZXIoJmJ1 ZiwgImZhcmJmZWxkIiwgOCk7CisKKyAgICBieXRlc3RyZWFtX3B1dF9iZTMyKCZidWYsIGN0eC0+ d2lkdGgpOworICAgIGJ5dGVzdHJlYW1fcHV0X2JlMzIoJmJ1ZiwgY3R4LT5oZWlnaHQpOworCisg ICAgZm9yIChpbnQgaSA9IDA7IGkgPCBQTEFORV9DT1VOVDsgKytpKQorICAgICAgICBwbGFuZXNb aV0gPSBwLT5kYXRhW2ldOworCisgICAgYXZfaW1hZ2VfY29weV90b19idWZmZXIoCisgICAgICAg IGJ1ZiwKKyAgICAgICAgcmF3X2ltZ19zaXplLAorICAgICAgICBwbGFuZXMsCisgICAgICAgIHAt PmxpbmVzaXplLAorICAgICAgICBwLT5mb3JtYXQsCisgICAgICAgIHAtPndpZHRoLAorICAgICAg ICBwLT5oZWlnaHQsCisgICAgICAgIDEKKyAgICApOworCisgICAgKmdvdF9wYWNrZXQgPSAxOwor CisgICAgcmV0dXJuIDA7Cit9CisKK2NvbnN0IEZGQ29kZWMgZmZfZmFyYmZlbGRfZW5jb2RlciA9 IHsKKyAgICAucC5uYW1lICAgICAgICAgPSAiZmFyYmZlbGQiLAorICAgIENPREVDX0xPTkdfTkFN RSgiZmFyYmZlbGQgdW5jb21wcmVzc2VkIGltYWdlIiksCisgICAgLnAudHlwZSAgICAgICAgID0g QVZNRURJQV9UWVBFX1ZJREVPLAorICAgIC5wLmlkICAgICAgICAgICA9IEFWX0NPREVDX0lEX0ZB UkJGRUxELAorICAgIC5wLmNhcGFiaWxpdGllcyA9IEFWX0NPREVDX0NBUF9EUjEsCisgICAgRkZf Q09ERUNfRU5DT0RFX0NCKGZhcmJmZWxkX2VuY29kZV9mcmFtZSksCisgICAgLnAucGl4X2ZtdHMg ICAgID0gKGNvbnN0IGVudW0gQVZQaXhlbEZvcm1hdFtdKXsKKyAgICAgICAgQVZfUElYX0ZNVF9S R0JBNjRCRSwKKyAgICAgICAgQVZfUElYX0ZNVF9OT05FCisgICAgfSwKK307CmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL3ZlcnNpb24uaCBiL2xpYmF2Y29kZWMvdmVyc2lvbi5oCmluZGV4IGRhNTRm ODc4ODcuLjdhY2IyNjFiYjMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvdmVyc2lvbi5oCisrKyBi L2xpYmF2Y29kZWMvdmVyc2lvbi5oCkBAIC0yOSw3ICsyOSw3IEBACiAKICNpbmNsdWRlICJ2ZXJz aW9uX21ham9yLmgiCiAKLSNkZWZpbmUgTElCQVZDT0RFQ19WRVJTSU9OX01JTk9SICAgNgorI2Rl ZmluZSBMSUJBVkNPREVDX1ZFUlNJT05fTUlOT1IgICA3CiAjZGVmaW5lIExJQkFWQ09ERUNfVkVS U0lPTl9NSUNSTyAxMDAKIAogI2RlZmluZSBMSUJBVkNPREVDX1ZFUlNJT05fSU5UICBBVl9WRVJT SU9OX0lOVChMSUJBVkNPREVDX1ZFUlNJT05fTUFKT1IsIFwKZGlmZiAtLWdpdCBhL2xpYmF2Zm9y bWF0L2ltZzIuYyBiL2xpYmF2Zm9ybWF0L2ltZzIuYwppbmRleCA5OTgxODY3ZjgyLi43N2VkYzdm ZjliIDEwMDY0NAotLS0gYS9saWJhdmZvcm1hdC9pbWcyLmMKKysrIGIvbGliYXZmb3JtYXQvaW1n Mi5jCkBAIC05NSw2ICs5NSw3IEBACiAgICAgVEFHKFFPSSwgICAgICAgICAgICAgcW9pICAgICAg KSBcCiAgICAgVEFHKFJBRElBTkNFX0hEUiwgICAgaGRyICAgICAgKSBcCiAgICAgVEFHKFdCTVAs ICAgICAgICAgICAgd2JtcCAgICAgKSBcCisgICAgVEFHKEZBUkJGRUxELCAgICAgICAgZmYgICAg ICAgKSBcCiAgICAgVEFHKE5PTkUsICAgICAgICAgICAgICAgICAgICAgKQogCiAjZGVmaW5lIExF TkdUSF9DSEVDSyhDT0RFQ0lELCBTVFIpIFwKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L2ltZzJl bmMuYyBiL2xpYmF2Zm9ybWF0L2ltZzJlbmMuYwppbmRleCA1MjZhMTFlNWVlLi4xMzM1NWE2ZmFk IDEwMDY0NAotLS0gYS9saWJhdmZvcm1hdC9pbWcyZW5jLmMKKysrIGIvbGliYXZmb3JtYXQvaW1n MmVuYy5jCkBAIC0yNzYsNyArMjc2LDcgQEAgY29uc3QgRkZPdXRwdXRGb3JtYXQgZmZfaW1hZ2Uy X211eGVyID0gewogICAgIC5wLmxvbmdfbmFtZSAgICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJp bWFnZTIgc2VxdWVuY2UiKSwKICAgICAucC5leHRlbnNpb25zICAgPSAiYm1wLGRweCxleHIsamxz LGpwZWcsanBnLGp4bCxsanBnLHBhbSxwYm0scGN4LHBmbSxwZ20scGdteXV2LHBobSwiCiAgICAg ICAgICAgICAgICAgICAgICAgInBuZyxwcG0sc2dpLHRnYSx0aWYsdGlmZixqcDIsajJjLGoyayx4 d2Qsc3VuLHJhcyxycyxpbTEsaW04LCIKLSAgICAgICAgICAgICAgICAgICAgICAiaW0yNCxzdW5y YXMsdmJuLHhibSx4ZmFjZSxwaXgseSxhdmlmLHFvaSxoZHIsd2JtcCIsCisgICAgICAgICAgICAg ICAgICAgICAgImltMjQsc3VucmFzLHZibix4Ym0seGZhY2UscGl4LHksYXZpZixxb2ksaGRyLHdi bXAsZmYiLAogICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihWaWRlb011eERhdGEpLAogICAg IC5wLnZpZGVvX2NvZGVjICA9IEFWX0NPREVDX0lEX01KUEVHLAogICAgIC53cml0ZV9oZWFkZXIg ICA9IHdyaXRlX2hlYWRlciwKLS0gCjIuNDUuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdApmZm1wZWctZGV2 ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWct ZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbApmZm1wZWct ZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJzY3JpYmUiLgo=