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 D5A0E43A70 for ; Wed, 6 Jul 2022 18:45:19 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 678CF68BA97; Wed, 6 Jul 2022 21:45:16 +0300 (EEST) Received: from mail-yb1-f174.google.com (mail-yb1-f174.google.com [209.85.219.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7C03368BA44 for ; Wed, 6 Jul 2022 21:45:09 +0300 (EEST) Received: by mail-yb1-f174.google.com with SMTP id j7so22411841ybj.10 for ; Wed, 06 Jul 2022 11:45:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=3ouigpX/rnCzs4nCKaRGf9F9c0QzP4qGw3F+GkaYTeg=; b=cJxlF7300i9MwBVoTNZ26AnBU5d/FA39vEDdiG3Wf5EYplIP6Y3mrmszo3zxU8WijC LAsRrRPALWnGhi+uQhyhmEQdKtppl09X1OEpJmg8SS9eP0alU85ti1dtJrEUaO+IUWvF LaEiD9ekLj2Qgk+/ghDOHvtnbbFCg2eRDtpTioAXKPKWhCT60Y+zj50RzID+098ki7oc eRYUxtpgjZ9vNwuQElc+IqhusiZzaGnXNUzrCZTnwOoyA1PCPV7de3jxGA0tFtgjTOfq 0MwSrGKb/x+Iv1neUaIOVvHCoWFHS++PNs+5FJTa1xsBGsuZM9lXIth67/cshx4vse67 NnWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=3ouigpX/rnCzs4nCKaRGf9F9c0QzP4qGw3F+GkaYTeg=; b=GAIIU7ERPOInymiLbLH51HEPpLyGdXYx2XmHDUL9Z4dc/CAOQW7/zF9On0Le86g+eG H8lYbBfKP5Q72N+TLdx10rWznRMYGWlj7/t4UHHVJ4xvKVWjDj2nuWeajXNVOBakwbOf 5tfjyX3Vonn36WA6LRCBnSkJRVhYJKiWRP9OwVWRdV+UwLQ93o2Bzx0f0h3IZC88pdL1 9bWBeLKUGMjygNe6RXZIXNn8IL/XbitVf5w8RkehbZrFcr22LS3LsF9T8uKUahKZjB1R p/8YIf9Dzl+k+E9z4MzgWnSWUcRnMuL6HyA8wZrrCxd2L9Zog2Y0mKIja3U4QXuZxJCX qKxA== X-Gm-Message-State: AJIora+/pcKw1UtJOJiBavfmkPClKcYlC/koJ0XfOD07s1pKKfJPZFVt nD2HTDDpSCKyKylIo8v94v4xjPSs0+HlI2Ejl1H3bLAy X-Google-Smtp-Source: AGRyM1tFkVmhN+LrbMS4bur7wnn2TYrUZ/qJB72BXoLqo8rr99Cf80TEZnrKAe0T+qXSjg9nzIBmY3KEOHpT40DF9JM= X-Received: by 2002:a05:6902:248:b0:66e:33cb:1dd0 with SMTP id k8-20020a056902024800b0066e33cb1dd0mr22907091ybs.586.1657133107945; Wed, 06 Jul 2022 11:45:07 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Paul B Mahol Date: Wed, 6 Jul 2022 20:47:50 +0200 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="0000000000003ee1bc05e3275ec8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH] avcodec: add Radiance HDR image format support 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --0000000000003ee1bc05e3275ec8 Content-Type: text/plain; charset="UTF-8" Added parser. The test will be added after this is merged. --0000000000003ee1bc05e3275ec8 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-avcodec-add-Radiance-HDR-image-format-support.patch" Content-Disposition: attachment; filename="0001-avcodec-add-Radiance-HDR-image-format-support.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l59ycm0p0 RnJvbSAzNTU4MzQ4YzU5ZTIyZWFkODk3OGZkYWFhOThlMGJjYTM2MWM3NzJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEIgTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+CkRhdGU6 IFN1biwgMyBKdWwgMjAyMiAyMzo1MDowNSArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIGF2Y29kZWM6 IGFkZCBSYWRpYW5jZSBIRFIgaW1hZ2UgZm9ybWF0IHN1cHBvcnQKClNpZ25lZC1vZmYtYnk6IFBh dWwgQiBNYWhvbCA8b25lbWRhQGdtYWlsLmNvbT4KLS0tCiBkb2MvZ2VuZXJhbF9jb250ZW50cy50 ZXhpIHwgICAyICsKIGxpYmF2Y29kZWMvTWFrZWZpbGUgICAgICAgfCAgIDMgKwogbGliYXZjb2Rl Yy9hbGxjb2RlY3MuYyAgICB8ICAgMiArCiBsaWJhdmNvZGVjL2NvZGVjX2Rlc2MuYyAgIHwgICA3 ICsrCiBsaWJhdmNvZGVjL2NvZGVjX2lkLmggICAgIHwgICAxICsKIGxpYmF2Y29kZWMvaGRyX3Bh cnNlci5jICAgfCAgNzggKysrKysrKysrKysrKysKIGxpYmF2Y29kZWMvaGRyZGVjLmMgICAgICAg fCAyMjIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGxpYmF2Y29kZWMv aGRyZW5jLmMgICAgICAgfCAxODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGxp YmF2Y29kZWMvcGFyc2Vycy5jICAgICAgfCAgIDEgKwogbGliYXZmb3JtYXQvTWFrZWZpbGUgICAg ICB8ICAgMSArCiBsaWJhdmZvcm1hdC9hbGxmb3JtYXRzLmMgIHwgICAxICsKIGxpYmF2Zm9ybWF0 L2ltZzIuYyAgICAgICAgfCAgIDEgKwogbGliYXZmb3JtYXQvaW1nMmRlYy5jICAgICB8ICAgOCAr KwogbGliYXZmb3JtYXQvaW1nMmVuYy5jICAgICB8ICAgMiArLQogMTQgZmlsZXMgY2hhbmdlZCwg NTE3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJh dmNvZGVjL2hkcl9wYXJzZXIuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29kZWMvaGRyZGVj LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJhdmNvZGVjL2hkcmVuYy5jCgpkaWZmIC0tZ2l0IGEv ZG9jL2dlbmVyYWxfY29udGVudHMudGV4aSBiL2RvYy9nZW5lcmFsX2NvbnRlbnRzLnRleGkKaW5k ZXggYjFkM2UzYWEwNS4uZjI1Yzc4NGQzYiAxMDA2NDQKLS0tIGEvZG9jL2dlbmVyYWxfY29udGVu dHMudGV4aQorKysgYi9kb2MvZ2VuZXJhbF9jb250ZW50cy50ZXhpCkBAIC03NDksNiArNzQ5LDgg QEAgZm9sbG93aW5nIGltYWdlIGZvcm1hdHMgYXJlIHN1cHBvcnRlZDoKICAgICBAdGFiIE9wZW5F WFIKIEBpdGVtIEZJVFMgICAgICAgICBAdGFiIFggQHRhYiBYCiAgICAgQHRhYiBGbGV4aWJsZSBJ bWFnZSBUcmFuc3BvcnQgU3lzdGVtCitAaXRlbSBIRFIgICAgICAgICAgQHRhYiBYIEB0YWIgWAor ICAgIEB0YWIgUmFkaWFuY2UgSERSIFJHQkUgSW1hZ2UgZm9ybWF0CiBAaXRlbSBJTUcgICAgICAg ICAgQHRhYiAgIEB0YWIgWAogICAgIEB0YWIgR0VNIFJhc3RlciBpbWFnZQogQGl0ZW0gSlBFRyAg ICAgICAgIEB0YWIgWCBAdGFiIFgKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvTWFrZWZpbGUgYi9s aWJhdmNvZGVjL01ha2VmaWxlCmluZGV4IDQ1N2VjNTgzNzcuLmVmMjMxODQzOGIgMTAwNjQ0Ci0t LSBhL2xpYmF2Y29kZWMvTWFrZWZpbGUKKysrIGIvbGliYXZjb2RlYy9NYWtlZmlsZQpAQCAtNDAz LDYgKzQwMyw4IEBAIE9CSlMtJChDT05GSUdfSEFQX0RFQ09ERVIpICAgICAgICAgICAgICs9IGhh cGRlYy5vIGhhcC5vCiBPQkpTLSQoQ09ORklHX0hBUF9FTkNPREVSKSAgICAgICAgICAgICArPSBo YXBlbmMubyBoYXAubwogT0JKUy0kKENPTkZJR19IQ0FfREVDT0RFUikgICAgICAgICAgICAgKz0g aGNhZGVjLm8KIE9CSlMtJChDT05GSUdfSENPTV9ERUNPREVSKSAgICAgICAgICAgICs9IGhjb20u bworT0JKUy0kKENPTkZJR19IRFJfREVDT0RFUikgICAgICAgICAgICAgKz0gaGRyZGVjLm8KK09C SlMtJChDT05GSUdfSERSX0VOQ09ERVIpICAgICAgICAgICAgICs9IGhkcmVuYy5vCiBPQkpTLSQo Q09ORklHX0hFVkNfREVDT0RFUikgICAgICAgICAgICArPSBoZXZjZGVjLm8gaGV2Y19tdnMubyBc CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZXZjX2NhYmFjLm8g aGV2Y19yZWZzLm8gaGV2Y3ByZWQubyAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBoZXZjZHNwLm8gaGV2Y19maWx0ZXIubyBoZXZjX2RhdGEubyBcCkBAIC0x MTQyLDYgKzExNDQsNyBAQCBPQkpTLSQoQ09ORklHX0gyNjFfUEFSU0VSKSAgICAgICAgICAgICAr PSBoMjYxX3BhcnNlci5vCiBPQkpTLSQoQ09ORklHX0gyNjNfUEFSU0VSKSAgICAgICAgICAgICAr PSBoMjYzX3BhcnNlci5vCiBPQkpTLSQoQ09ORklHX0gyNjRfUEFSU0VSKSAgICAgICAgICAgICAr PSBoMjY0X3BhcnNlci5vIGgyNjRfc2VpLm8gaDI2NGRhdGEubwogT0JKUy0kKENPTkZJR19IRVZD X1BBUlNFUikgICAgICAgICAgICAgKz0gaGV2Y19wYXJzZXIubyBoZXZjX2RhdGEubworT0JKUy0k KENPTkZJR19IRFJfUEFSU0VSKSAgICAgICAgICAgICAgKz0gaGRyX3BhcnNlci5vCiBPQkpTLSQo Q09ORklHX0lQVV9QQVJTRVIpICAgICAgICAgICAgICArPSBpcHVfcGFyc2VyLm8KIE9CSlMtJChD T05GSUdfSlBFRzIwMDBfUEFSU0VSKSAgICAgICAgICs9IGpwZWcyMDAwX3BhcnNlci5vCiBPQkpT LSQoQ09ORklHX01KUEVHX1BBUlNFUikgICAgICAgICAgICArPSBtanBlZ19wYXJzZXIubwpkaWZm IC0tZ2l0IGEvbGliYXZjb2RlYy9hbGxjb2RlY3MuYyBiL2xpYmF2Y29kZWMvYWxsY29kZWNzLmMK aW5kZXggYmRmYzJmNmY0NS4uMzFkMmM1OTc5YyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9hbGxj b2RlY3MuYworKysgYi9saWJhdmNvZGVjL2FsbGNvZGVjcy5jCkBAIC00NjksNiArNDY5LDggQEAg ZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfZ3NtX2RlY29kZXI7CiBleHRlcm4gY29uc3QgRkZDb2Rl YyBmZl9nc21fbXNfZGVjb2RlcjsKIGV4dGVybiBjb25zdCBGRkNvZGVjIGZmX2hjYV9kZWNvZGVy OwogZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfaGNvbV9kZWNvZGVyOworZXh0ZXJuIGNvbnN0IEZG Q29kZWMgZmZfaGRyX2VuY29kZXI7CitleHRlcm4gY29uc3QgRkZDb2RlYyBmZl9oZHJfZGVjb2Rl cjsKIGV4dGVybiBjb25zdCBGRkNvZGVjIGZmX2lhY19kZWNvZGVyOwogZXh0ZXJuIGNvbnN0IEZG Q29kZWMgZmZfaWxiY19kZWNvZGVyOwogZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfaW1jX2RlY29k ZXI7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2NvZGVjX2Rlc2MuYyBiL2xpYmF2Y29kZWMvY29k ZWNfZGVzYy5jCmluZGV4IDQ0YWQyZDFmZTguLmVlZWExNWIxZWYgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvY29kZWNfZGVzYy5jCisrKyBiL2xpYmF2Y29kZWMvY29kZWNfZGVzYy5jCkBAIC0xODkz LDYgKzE4OTMsMTMgQEAgc3RhdGljIGNvbnN0IEFWQ29kZWNEZXNjcmlwdG9yIGNvZGVjX2Rlc2Ny aXB0b3JzW10gPSB7CiAgICAgICAgIC5sb25nX25hbWUgPSBOVUxMX0lGX0NPTkZJR19TTUFMTCgi UEhNIChQb3J0YWJsZSBIYWxmRmxvYXRNYXApIGltYWdlIiksCiAgICAgICAgIC5wcm9wcyAgICAg PSBBVl9DT0RFQ19QUk9QX0lOVFJBX09OTFkgfCBBVl9DT0RFQ19QUk9QX0xPU1NMRVNTLAogICAg IH0sCisgICAgeworICAgICAgICAuaWQgICAgICAgID0gQVZfQ09ERUNfSURfSERSLAorICAgICAg ICAudHlwZSAgICAgID0gQVZNRURJQV9UWVBFX1ZJREVPLAorICAgICAgICAubmFtZSAgICAgID0g ImhkciIsCisgICAgICAgIC5sb25nX25hbWUgPSBOVUxMX0lGX0NPTkZJR19TTUFMTCgiSERSIChS YWRpYW5jZSBSR0JFIGZvcm1hdCkgaW1hZ2UiKSwKKyAgICAgICAgLnByb3BzICAgICA9IEFWX0NP REVDX1BST1BfSU5UUkFfT05MWSB8IEFWX0NPREVDX1BST1BfTE9TU1ksCisgICAgfSwKIAogICAg IC8qIHZhcmlvdXMgUENNICJjb2RlY3MiICovCiAgICAgewpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9jb2RlY19pZC5oIGIvbGliYXZjb2RlYy9jb2RlY19pZC5oCmluZGV4IDgxZmIzMTZjZmYuLjAw NWVmYTYzMzQgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvY29kZWNfaWQuaAorKysgYi9saWJhdmNv ZGVjL2NvZGVjX2lkLmgKQEAgLTMxMiw2ICszMTIsNyBAQCBlbnVtIEFWQ29kZWNJRCB7CiAgICAg QVZfQ09ERUNfSURfSlBFR1hMLAogICAgIEFWX0NPREVDX0lEX1FPSSwKICAgICBBVl9DT0RFQ19J RF9QSE0sCisgICAgQVZfQ09ERUNfSURfSERSLAogCiAgICAgLyogdmFyaW91cyBQQ00gImNvZGVj cyIgKi8KICAgICBBVl9DT0RFQ19JRF9GSVJTVF9BVURJTyA9IDB4MTAwMDAsICAgICAvLy88IEEg ZHVtbXkgaWQgcG9pbnRpbmcgYXQgdGhlIHN0YXJ0IG9mIGF1ZGlvIGNvZGVjcwpkaWZmIC0tZ2l0 IGEvbGliYXZjb2RlYy9oZHJfcGFyc2VyLmMgYi9saWJhdmNvZGVjL2hkcl9wYXJzZXIuYwpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5lMDAyN2M4YjgxCi0tLSAvZGV2L251 bGwKKysrIGIvbGliYXZjb2RlYy9oZHJfcGFyc2VyLmMKQEAgLTAsMCArMSw3OCBAQAorLyoKKyAq IFJhZGlhbmNlIEhEUiBwYXJzZXIKKyAqIENvcHlyaWdodCAoYykgMjAyMiBQYXVsIEIgTWFob2wK KyAqCisgKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBGRm1wZWcuCisgKgorICogRkZtcGVnIGlzIGZy ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy CisgKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3Ig RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2Vy IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hv dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGlj CisgKiBMaWNlbnNlIGFsb25nIHdpdGggRkZtcGVnOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVl IFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRo IEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEgVVNBCisgKi8KKworLyoqCisgKiBAZmlsZQor ICogUmFkaWFuY2UgSERSIHBhcnNlcgorICovCisKKyNpbmNsdWRlICJsaWJhdnV0aWwvaW50cmVh ZHdyaXRlLmgiCisjaW5jbHVkZSAicGFyc2VyLmgiCisKK3R5cGVkZWYgc3RydWN0IEhEUlBhcnNl Q29udGV4dCB7CisgICAgUGFyc2VDb250ZXh0IHBjOworfSBIRFJQYXJzZUNvbnRleHQ7CisKK3N0 YXRpYyBpbnQgaGRyX3BhcnNlKEFWQ29kZWNQYXJzZXJDb250ZXh0ICpzLCBBVkNvZGVjQ29udGV4 dCAqYXZjdHgsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICoqcG91dGJ1Ziwg aW50ICpwb3V0YnVmX3NpemUsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICpi dWYsIGludCBidWZfc2l6ZSkKK3sKKyAgICBIRFJQYXJzZUNvbnRleHQgKmlwYyA9IHMtPnByaXZf ZGF0YTsKKyAgICB1aW50NjRfdCBzdGF0ZSA9IGlwYy0+cGMuc3RhdGU2NDsKKyAgICBpbnQgbmV4 dCA9IEVORF9OT1RfRk9VTkQsIGkgPSAwOworCisgICAgcy0+cGljdF90eXBlID0gQVZfUElDVFVS RV9UWVBFX05PTkU7CisgICAgcy0+ZHVyYXRpb24gID0gMTsKKworICAgICpwb3V0YnVmX3NpemUg PSAwOworICAgICpwb3V0YnVmID0gTlVMTDsKKworICAgIGlmIChzLT5mbGFncyAmIFBBUlNFUl9G TEFHX0NPTVBMRVRFX0ZSQU1FUykgeworICAgICAgICBuZXh0ID0gYnVmX3NpemU7CisgICAgfSBl bHNlIHsKKyAgICAgICAgZm9yICg7IGkgPCBidWZfc2l6ZTsgaSsrKSB7CisgICAgICAgICAgICBz dGF0ZSA9IChzdGF0ZSA8PCA4KSB8IGJ1ZltpXTsKKyAgICAgICAgICAgIGlmIChzdGF0ZSA9PSBB Vl9SQjY0KCJBRElBTkNFXG4iKSAmJiAoaSA+IDEwIHx8IGlwYy0+cGMuaW5kZXggPiAxMCkpIHsK KyAgICAgICAgICAgICAgICBuZXh0ID0gaSAtIDEwOworICAgICAgICAgICAgICAgIGJyZWFrOwor ICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgaXBjLT5wYy5zdGF0ZTY0ID0gc3Rh dGU7CisgICAgICAgIGlmIChmZl9jb21iaW5lX2ZyYW1lKCZpcGMtPnBjLCBuZXh0LCAmYnVmLCAm YnVmX3NpemUpIDwgMCkgeworICAgICAgICAgICAgKnBvdXRidWYgPSBOVUxMOworICAgICAgICAg ICAgKnBvdXRidWZfc2l6ZSA9IDA7CisgICAgICAgICAgICByZXR1cm4gYnVmX3NpemU7CisgICAg ICAgIH0KKyAgICB9CisKKyAgICAqcG91dGJ1ZiAgICAgID0gYnVmOworICAgICpwb3V0YnVmX3Np emUgPSBidWZfc2l6ZTsKKworICAgIHJldHVybiBuZXh0OworfQorCitjb25zdCBBVkNvZGVjUGFy c2VyIGZmX2hkcl9wYXJzZXIgPSB7CisgICAgLmNvZGVjX2lkcyAgICAgID0geyBBVl9DT0RFQ19J RF9IRFIgfSwKKyAgICAucHJpdl9kYXRhX3NpemUgPSBzaXplb2YoSERSUGFyc2VDb250ZXh0KSwK KyAgICAucGFyc2VyX3BhcnNlICAgPSBoZHJfcGFyc2UsCisgICAgLnBhcnNlcl9jbG9zZSAgID0g ZmZfcGFyc2VfY2xvc2UsCit9OwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9oZHJkZWMuYyBiL2xp YmF2Y29kZWMvaGRyZGVjLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4u ODU0ZGE5NmVkMwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmF2Y29kZWMvaGRyZGVjLmMKQEAgLTAs MCArMSwyMjIgQEAKKy8qCisgKiBSYWRpYW5jZSBIRFIgaW1hZ2UgZm9ybWF0CisgKgorICogVGhp cyBmaWxlIGlzIHBhcnQgb2YgRkZtcGVnLgorICoKKyAqIEZGbXBlZyBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lv biAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp b24uCisgKgorICogRkZtcGVnIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExlc3NlciBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJl Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5z ZSBhbG9uZyB3aXRoIEZGbXBlZzsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQor ICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9z dG9uLCBNQSAwMjExMC0xMzAxIFVTQQorICovCisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2lu Y2x1ZGUgImxpYmF2dXRpbC9pbWd1dGlscy5oIgorI2luY2x1ZGUgImF2Y29kZWMuaCIKKyNpbmNs dWRlICJpbnRlcm5hbC5oIgorI2luY2x1ZGUgImJ5dGVzdHJlYW0uaCIKKyNpbmNsdWRlICJjb2Rl Y19pbnRlcm5hbC5oIgorI2luY2x1ZGUgInRocmVhZC5oIgorCisjZGVmaW5lIE1JTkVMRU4gOAor I2RlZmluZSBNQVhFTEVOIDB4N2ZmZgorCitzdGF0aWMgaW50IGhkcl9nZXRfbGluZShHZXRCeXRl Q29udGV4dCAqZ2IsIHVpbnQ4X3QgKmJ1ZmZlciwgaW50IHNpemUpCit7CisgICAgaW50IG4gPSAw LCBjOworCisgICAgbWVtc2V0KGJ1ZmZlciwgMCwgc2l6ZSk7CisKKyAgICBkbyB7CisgICAgICAg IGMgPSBieXRlc3RyZWFtMl9nZXRfYnl0ZShnYik7CisgICAgICAgIGlmIChuIDwgc2l6ZSAtIDEp CisgICAgICAgICAgICBidWZmZXJbbisrXSA9IGM7CisgICAgfSB3aGlsZSAoYnl0ZXN0cmVhbTJf Z2V0X2J5dGVzX2xlZnQoZ2IpID4gMCAmJiBjICE9ICdcbicpOworCisgICAgcmV0dXJuIDA7Cit9 CisKK3N0YXRpYyBmbG9hdCBjb252ZXJ0KGludCBleHBvLCBpbnQgdmFsKQoreworICAgIGlmIChl eHBvID09IC0xMjgpIHsKKyAgICAgICAgcmV0dXJuIDAuZjsKKyAgICB9IGVsc2UgeworICAgICAg ICBjb25zdCBmbG9hdCB2ID0gdmFsIC8gMjU2LmY7CisKKyAgICAgICAgcmV0dXJuIGxkZXhwZih2 LCBleHBvKTsKKyAgICB9Cit9CisKK3N0YXRpYyBpbnQgZGVjb21wcmVzcyh1aW50OF90ICpzY2Fu bGluZSwgaW50IHcsIEdldEJ5dGVDb250ZXh0ICpnYiwgY29uc3QgdWludDhfdCAqc3RhcnQpCit7 CisgICAgaW50IHJzaGlmdCA9IDA7CisKKyAgICB3aGlsZSAodyA+IDApIHsKKyAgICAgICAgc2Nh bmxpbmVbMF0gPSBieXRlc3RyZWFtMl9nZXRfYnl0ZShnYik7CisgICAgICAgIHNjYW5saW5lWzFd ID0gYnl0ZXN0cmVhbTJfZ2V0X2J5dGUoZ2IpOworICAgICAgICBzY2FubGluZVsyXSA9IGJ5dGVz dHJlYW0yX2dldF9ieXRlKGdiKTsKKyAgICAgICAgc2NhbmxpbmVbM10gPSBieXRlc3RyZWFtMl9n ZXRfYnl0ZShnYik7CisKKyAgICAgICAgaWYgKHNjYW5saW5lWzBdID09IDEgJiYKKyAgICAgICAg ICAgIHNjYW5saW5lWzFdID09IDEgJiYKKyAgICAgICAgICAgIHNjYW5saW5lWzJdID09IDEpIHsK KyAgICAgICAgICAgIGludCBydW4gPSBzY2FubGluZVszXTsKKyAgICAgICAgICAgIGZvciAoaW50 IGkgPSBydW4gPDwgcnNoaWZ0OyBpID4gMCAmJiB3ID4gMCAmJiBzY2FubGluZSA+PSBzdGFydCAr IDQ7IGktLSkgeworICAgICAgICAgICAgICAgIG1lbWNweShzY2FubGluZSwgc2NhbmxpbmUgLSA0 LCA0KTsKKyAgICAgICAgICAgICAgICBzY2FubGluZSArPSA0OworICAgICAgICAgICAgfQorICAg ICAgICAgICAgdyAtPSBydW4gPDwgcnNoaWZ0OworICAgICAgICAgICAgcnNoaWZ0ICs9IDg7Cisg ICAgICAgICAgICBpZiAocnNoaWZ0ID4gMTYpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg ICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzY2FubGluZSArPSA0OworICAgICAgICAgICAgdy0t OworICAgICAgICAgICAgcnNoaWZ0ID0gMDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVy biAxOworfQorCitzdGF0aWMgaW50IGhkcl9kZWNvZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2 Y3R4LCBBVkZyYW1lICpwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqZ290X2Zy YW1lLCBBVlBhY2tldCAqYXZwa3QpCit7CisgICAgY29uc3QgdWludDhfdCAqYnVmID0gYXZwa3Qt PmRhdGE7CisgICAgaW50IHJldCwgYnVmX3NpemUgPSBhdnBrdC0+c2l6ZTsKKyAgICBpbnQgd2lk dGggPSAwLCBoZWlnaHQgPSAwOworICAgIEdldEJ5dGVDb250ZXh0IGdiOworICAgIHVpbnQ4X3Qg bGluZVs1MTJdOworICAgIGZsb2F0IHNhcjsKKworICAgIGJ5dGVzdHJlYW0yX2luaXQoJmdiLCBi dWYsIGJ1Zl9zaXplKTsKKyAgICBoZHJfZ2V0X2xpbmUoJmdiLCBsaW5lLCBzaXplb2YobGluZSkp OworICAgIGlmIChtZW1jbXAoIiM/UkFESUFOQ0VcbiIsIGxpbmUsIDExKSkKKyAgICAgICAgcmV0 dXJuIEFWRVJST1JfSU5WQUxJRERBVEE7CisKKyAgICBkbyB7CisgICAgICAgIGhkcl9nZXRfbGlu ZSgmZ2IsIGxpbmUsIHNpemVvZihsaW5lKSk7CisgICAgICAgIGlmIChzc2NhbmYobGluZSwgIlBJ WEFTUEVDVD0lZlxuIiwgJnNhcikgPT0gMSkKKyAgICAgICAgICAgIGF2Y3R4LT5zYW1wbGVfYXNw ZWN0X3JhdGlvID0gcC0+c2FtcGxlX2FzcGVjdF9yYXRpbyA9IGF2X2ludl9xKGF2X2QycShzYXIs IDQwOTYpKTsKKyAgICB9IHdoaWxlIChsaW5lWzBdICE9ICdcbicpOworCisgICAgaGRyX2dldF9s aW5lKCZnYiwgbGluZSwgc2l6ZW9mKGxpbmUpKTsKKyAgICBpZiAoc3NjYW5mKGxpbmUsICItWSAl ZCArWCAlZFxuIiwgJmhlaWdodCwgJndpZHRoKSA9PSAyKSB7CisgICAgICAgIDsKKyAgICB9IGVs c2UgaWYgKHNzY2FuZihsaW5lLCAiK1kgJWQgK1ggJWRcbiIsICZoZWlnaHQsICZ3aWR0aCkgPT0g MikgeworICAgICAgICA7CisgICAgfSBlbHNlIGlmIChzc2NhbmYobGluZSwgIi1ZICVkIC1YICVk XG4iLCAmaGVpZ2h0LCAmd2lkdGgpID09IDIpIHsKKyAgICAgICAgOworICAgIH0gZWxzZSBpZiAo c3NjYW5mKGxpbmUsICIrWSAlZCAtWCAlZFxuIiwgJmhlaWdodCwgJndpZHRoKSA9PSAyKSB7Cisg ICAgICAgIDsKKyAgICB9IGVsc2UgaWYgKHNzY2FuZihsaW5lLCAiLVggJWQgK1kgJWRcbiIsICZ3 aWR0aCwgJmhlaWdodCkgPT0gMikgeworICAgICAgICA7CisgICAgfSBlbHNlIGlmIChzc2NhbmYo bGluZSwgIitYICVkICtZICVkXG4iLCAmd2lkdGgsICZoZWlnaHQpID09IDIpIHsKKyAgICAgICAg OworICAgIH0gZWxzZSBpZiAoc3NjYW5mKGxpbmUsICItWCAlZCAtWSAlZFxuIiwgJndpZHRoLCAm aGVpZ2h0KSA9PSAyKSB7CisgICAgICAgIDsKKyAgICB9IGVsc2UgaWYgKHNzY2FuZihsaW5lLCAi K1ggJWQgLVkgJWRcbiIsICZ3aWR0aCwgJmhlaWdodCkgPT0gMikgeworICAgICAgICA7CisgICAg fQorCisgICAgaWYgKChyZXQgPSBmZl9zZXRfZGltZW5zaW9ucyhhdmN0eCwgd2lkdGgsIGhlaWdo dCkpIDwgMCkKKyAgICAgICAgcmV0dXJuIHJldDsKKworICAgIGF2Y3R4LT5waXhfZm10ID0gQVZf UElYX0ZNVF9HQlJQRjMyOworICAgIGlmICgocmV0ID0gZmZfdGhyZWFkX2dldF9idWZmZXIoYXZj dHgsIHAsIDApKSA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICBmb3IgKGludCB5ID0g MDsgeSA8IGhlaWdodDsgeSsrKSB7CisgICAgICAgIGZsb2F0ICpkc3RfciA9IChmbG9hdCAqKShw LT5kYXRhWzJdICsgeSAqIHAtPmxpbmVzaXplWzJdKTsKKyAgICAgICAgZmxvYXQgKmRzdF9nID0g KGZsb2F0ICopKHAtPmRhdGFbMF0gKyB5ICogcC0+bGluZXNpemVbMF0pOworICAgICAgICBmbG9h dCAqZHN0X2IgPSAoZmxvYXQgKikocC0+ZGF0YVsxXSArIHkgKiBwLT5saW5lc2l6ZVsxXSk7Cisg ICAgICAgIHVpbnQ4X3QgKnNjYW5saW5lID0gcC0+ZGF0YVswXSArIHkgKiBwLT5saW5lc2l6ZVsw XTsKKyAgICAgICAgaW50IGk7CisKKyAgICAgICAgaWYgKHdpZHRoIDwgTUlORUxFTiB8fCB3aWR0 aCA+IE1BWEVMRU4pIHsKKyAgICAgICAgICAgIGRlY29tcHJlc3Moc2NhbmxpbmUsIHdpZHRoLCAm Z2IsIHNjYW5saW5lKTsKKyAgICAgICAgICAgIGdvdG8gY29udmVydDsKKyAgICAgICAgfQorCisg ICAgICAgIGkgPSBieXRlc3RyZWFtMl9wZWVrX2J5dGUoJmdiKTsKKyAgICAgICAgaWYgKGkgIT0g MikgeworICAgICAgICAgICAgZGVjb21wcmVzcyhzY2FubGluZSwgd2lkdGgsICZnYiwgc2Nhbmxp bmUpOworICAgICAgICAgICAgZ290byBjb252ZXJ0OworICAgICAgICB9CisgICAgICAgIGJ5dGVz dHJlYW0yX3NraXAoJmdiLCAxKTsKKworICAgICAgICBzY2FubGluZVsxXSA9IGJ5dGVzdHJlYW0y X2dldF9ieXRlKCZnYik7CisgICAgICAgIHNjYW5saW5lWzJdID0gYnl0ZXN0cmVhbTJfZ2V0X2J5 dGUoJmdiKTsKKyAgICAgICAgaSA9IGJ5dGVzdHJlYW0yX2dldF9ieXRlKCZnYik7CisKKyAgICAg ICAgaWYgKHNjYW5saW5lWzFdICE9IDIgfHwgc2NhbmxpbmVbMl0gJiAxMjgpIHsKKyAgICAgICAg ICAgIHNjYW5saW5lWzBdID0gMjsKKyAgICAgICAgICAgIHNjYW5saW5lWzNdID0gaTsKKyAgICAg ICAgICAgIGRlY29tcHJlc3Moc2NhbmxpbmUgKyA0LCB3aWR0aCAtIDEsICZnYiwgc2NhbmxpbmUp OworICAgICAgICAgICAgZ290byBjb252ZXJ0OworICAgICAgICB9CisKKyAgICAgICAgZm9yIChp bnQgaSA9IDA7IGkgPCA0OyBpKyspIHsKKyAgICAgICAgICAgIHVpbnQ4X3QgKnNjYW5saW5lID0g cC0+ZGF0YVswXSArIHkgKiBwLT5saW5lc2l6ZVswXSArIGk7CisKKyAgICAgICAgICAgIGZvciAo aW50IGogPSAwOyBqIDwgd2lkdGggKiA0ICYmIGJ5dGVzdHJlYW0yX2dldF9ieXRlc19sZWZ0KCZn YikgPiAwOykgeworICAgICAgICAgICAgICAgIGludCBydW4gPSBieXRlc3RyZWFtMl9nZXRfYnl0 ZSgmZ2IpOworICAgICAgICAgICAgICAgIGlmIChydW4gPiAxMjgpIHsKKyAgICAgICAgICAgICAg ICAgICAgdWludDhfdCB2YWwgPSBieXRlc3RyZWFtMl9nZXRfYnl0ZSgmZ2IpOworICAgICAgICAg ICAgICAgICAgICBydW4gJj0gMTI3OworICAgICAgICAgICAgICAgICAgICB3aGlsZSAocnVuLS0p IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChqID49IHdpZHRoICogNCkKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNjYW5s aW5lW2pdID0gdmFsOworICAgICAgICAgICAgICAgICAgICAgICAgaiArPSA0OworICAgICAgICAg ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChydW4gPiAwKSB7CisgICAg ICAgICAgICAgICAgICAgIHdoaWxlIChydW4tLSkgeworICAgICAgICAgICAgICAgICAgICAgICAg aWYgKGogPj0gd2lkdGggKiA0KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwor ICAgICAgICAgICAgICAgICAgICAgICAgc2NhbmxpbmVbal0gPSBieXRlc3RyZWFtMl9nZXRfYnl0 ZSgmZ2IpOworICAgICAgICAgICAgICAgICAgICAgICAgaiArPSA0OworICAgICAgICAgICAgICAg ICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisKK2Nv bnZlcnQ6CisgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgd2lkdGg7IHgrKykgeworICAgICAg ICAgICAgdWludDhfdCByZ2JlWzRdOworICAgICAgICAgICAgaW50IGV4cG87CisKKyAgICAgICAg ICAgIG1lbWNweShyZ2JlLCBwLT5kYXRhWzBdICsgeSAqIHAtPmxpbmVzaXplWzBdICsgeCAqIDQs IDQpOworICAgICAgICAgICAgZXhwbyA9IHJnYmVbM10gLSAxMjg7CisKKyAgICAgICAgICAgIGRz dF9yW3hdID0gY29udmVydChleHBvLCByZ2JlWzBdKTsKKyAgICAgICAgICAgIGRzdF9iW3hdID0g Y29udmVydChleHBvLCByZ2JlWzJdKTsKKyAgICAgICAgICAgIGRzdF9nW3hdID0gY29udmVydChl eHBvLCByZ2JlWzFdKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHAtPmtleV9mcmFtZSA9IDE7 CisgICAgcC0+cGljdF90eXBlID0gQVZfUElDVFVSRV9UWVBFX0k7CisKKyAgICAqZ290X2ZyYW1l ICAgPSAxOworCisgICAgcmV0dXJuIGJ1Zl9zaXplOworfQorCitjb25zdCBGRkNvZGVjIGZmX2hk cl9kZWNvZGVyID0geworICAgIC5wLm5hbWUgICAgICAgICA9ICJoZHIiLAorICAgIC5wLmxvbmdf bmFtZSAgICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJIRFIgKFJhZGlhbmNlIFJHQkUgZm9ybWF0 KSBpbWFnZSIpLAorICAgIC5wLnR5cGUgICAgICAgICA9IEFWTUVESUFfVFlQRV9WSURFTywKKyAg ICAucC5pZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9IRFIsCisgICAgLnAuY2FwYWJpbGl0aWVz ID0gQVZfQ09ERUNfQ0FQX0RSMSB8IEFWX0NPREVDX0NBUF9GUkFNRV9USFJFQURTLAorICAgIEZG X0NPREVDX0RFQ09ERV9DQihoZHJfZGVjb2RlX2ZyYW1lKSwKK307CmRpZmYgLS1naXQgYS9saWJh dmNvZGVjL2hkcmVuYy5jIGIvbGliYXZjb2RlYy9oZHJlbmMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwLi5lY2NjMTcwMmU0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYXZj b2RlYy9oZHJlbmMuYwpAQCAtMCwwICsxLDE4OSBAQAorLyoKKyAqIFJhZGlhbmNlIEhEUiBpbWFn ZSBmb3JtYXQKKyAqCisgKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBGRm1wZWcuCisgKgorICogRkZt cGVnIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICog bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp YworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv bjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor ICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisg KiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVy YWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggRkZtcGVnOyBpZiBub3QsIHdyaXRlIHRv IHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEgVVNBCisgKi8KKworI2luY2x1 ZGUgImxpYmF2dXRpbC9pbWd1dGlscy5oIgorI2luY2x1ZGUgImF2Y29kZWMuaCIKKyNpbmNsdWRl ICJieXRlc3RyZWFtLmgiCisjaW5jbHVkZSAiY29kZWNfaW50ZXJuYWwuaCIKKyNpbmNsdWRlICJl bmNvZGUuaCIKKwordHlwZWRlZiBzdHJ1Y3QgSERSRW5jQ29udGV4dCB7CisgICAgdWludDhfdCAq c2NhbmxpbmU7Cit9IEhEUkVuY0NvbnRleHQ7CisKK3N0YXRpYyBhdl9jb2xkIGludCBoZHJfZW5j b2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQoreworICAgIEhEUkVuY0NvbnRleHQgKnMg PSBhdmN0eC0+cHJpdl9kYXRhOworCisgICAgcy0+c2NhbmxpbmUgPSBhdl9jYWxsb2MoYXZjdHgt PndpZHRoICogNCwgc2l6ZW9mKCpzLT5zY2FubGluZSkpOworICAgIGlmICghcy0+c2NhbmxpbmUp CisgICAgICAgIHJldHVybiBBVkVSUk9SKEVOT01FTSk7CisKKyAgICByZXR1cm4gMDsKK30KKwor c3RhdGljIGF2X2NvbGQgaW50IGhkcl9lbmNvZGVfY2xvc2UoQVZDb2RlY0NvbnRleHQgKmF2Y3R4 KQoreworICAgIEhEUkVuY0NvbnRleHQgKnMgPSBhdmN0eC0+cHJpdl9kYXRhOworCisgICAgYXZf ZnJlZXAoJnMtPnNjYW5saW5lKTsKKworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBi eXRlc3RyZWFtX3B1dF9zdHIodWludDhfdCAqKmJ1ZiwgY29uc3QgY2hhciAqY29uc3QgbGluZSkK K3sKKyAgICBieXRlc3RyZWFtX3B1dF9idWZmZXIoYnVmLCBsaW5lLCBzdHJsZW4obGluZSkpOwor fQorCitzdGF0aWMgdm9pZCBmbG9hdDJyZ2JlKHVpbnQ4X3QgKnJnYmUsIGZsb2F0IHJlZCwgZmxv YXQgZ3JlZW4sIGZsb2F0IGJsdWUpCit7CisgICAgZmxvYXQgdjsKKyAgICBpbnQgZTsKKworICAg IHYgPSBGRk1BWDMocmVkLCBncmVlbiwgYmx1ZSk7CisKKyAgICBpZiAodiA8IDFlLTMyZikgewor ICAgICAgICByZ2JlWzBdID0gcmdiZVsxXSA9IHJnYmVbMl0gPSByZ2JlWzNdID0gMDsKKyAgICB9 IGVsc2UgeworICAgICAgICB2ID0gZnJleHBmKHYsICZlKSAqIDI1Ni5mIC8gdjsKKworICAgICAg ICByZ2JlWzBdID0gYXZfY2xpcF91aW50OChyZWQgKiB2KTsKKyAgICAgICAgcmdiZVsxXSA9IGF2 X2NsaXBfdWludDgoZ3JlZW4gKiB2KTsKKyAgICAgICAgcmdiZVsyXSA9IGF2X2NsaXBfdWludDgo Ymx1ZSAqIHYpOworICAgICAgICByZ2JlWzNdID0gYXZfY2xpcF91aW50OChlICsgMTI4KTsKKyAg ICB9Cit9CisKK3N0YXRpYyB2b2lkIHJsZSh1aW50OF90ICoqYnVmZmVyLCBjb25zdCB1aW50OF90 ICpkYXRhLCBpbnQgd2lkdGgpCit7CisjZGVmaW5lIE1JTl9STEUgNAorICAgIGludCBjdXIgPSAw OworCisgICAgd2hpbGUgKGN1ciA8IHdpZHRoKSB7CisgICAgICAgIGludCBydW5fY291bnQgPSAw LCBvbGRfcnVuX2NvdW50ID0gMDsKKyAgICAgICAgaW50IGJlZ19ydW4gPSBjdXI7CisgICAgICAg IHVpbnQ4X3QgYnVmWzJdOworCisgICAgICAgIHdoaWxlIChydW5fY291bnQgPCBNSU5fUkxFICYm IGJlZ19ydW4gPCB3aWR0aCkgeworICAgICAgICAgICAgYmVnX3J1biArPSBydW5fY291bnQ7Cisg ICAgICAgICAgICBvbGRfcnVuX2NvdW50ID0gcnVuX2NvdW50OworICAgICAgICAgICAgcnVuX2Nv dW50ID0gMTsKKyAgICAgICAgICAgIHdoaWxlICgoYmVnX3J1biArIHJ1bl9jb3VudCA8IHdpZHRo KSAmJiAocnVuX2NvdW50IDwgMTI3KSAmJgorICAgICAgICAgICAgICAgICAgIChkYXRhW2JlZ19y dW4gKiA0XSA9PSBkYXRhWyhiZWdfcnVuICsgcnVuX2NvdW50KSAqIDRdKSkKKyAgICAgICAgICAg ICAgICBydW5fY291bnQrKzsKKyAgICAgICAgfQorCisgICAgICAgIGlmICgob2xkX3J1bl9jb3Vu dCA+IDEpICYmIChvbGRfcnVuX2NvdW50ID09IGJlZ19ydW4gLSBjdXIpKSB7CisgICAgICAgICAg ICBidWZbMF0gPSAxMjggKyBvbGRfcnVuX2NvdW50OworICAgICAgICAgICAgYnVmWzFdID0gZGF0 YVtjdXIgKiA0XTsKKyAgICAgICAgICAgIGJ5dGVzdHJlYW1fcHV0X2J1ZmZlcihidWZmZXIsIGJ1 Ziwgc2l6ZW9mKGJ1ZikpOworICAgICAgICAgICAgY3VyID0gYmVnX3J1bjsKKyAgICAgICAgfQor CisgICAgICAgIHdoaWxlIChjdXIgPCBiZWdfcnVuKSB7CisgICAgICAgICAgICBpbnQgbm9ucnVu X2NvdW50ID0gRkZNSU4oMTI4LCBiZWdfcnVuIC0gY3VyKTsKKyAgICAgICAgICAgIGJ1ZlswXSA9 IG5vbnJ1bl9jb3VudDsKKyAgICAgICAgICAgIGJ5dGVzdHJlYW1fcHV0X2J5dGUoYnVmZmVyLCBi dWZbMF0pOworICAgICAgICAgICAgZm9yIChpbnQgbiA9IDA7IG4gPCBub25ydW5fY291bnQ7IG4r KykKKyAgICAgICAgICAgICAgICBieXRlc3RyZWFtX3B1dF9ieXRlKGJ1ZmZlciwgZGF0YVsoY3Vy ICsgbikgKiA0XSk7CisgICAgICAgICAgICBjdXIgKz0gbm9ucnVuX2NvdW50OworICAgICAgICB9 CisKKyAgICAgICAgaWYgKHJ1bl9jb3VudCA+PSBNSU5fUkxFKSB7CisgICAgICAgICAgICBidWZb MF0gPSAxMjggKyBydW5fY291bnQ7CisgICAgICAgICAgICBidWZbMV0gPSBkYXRhW2JlZ19ydW4g KiA0XTsKKyAgICAgICAgICAgIGJ5dGVzdHJlYW1fcHV0X2J1ZmZlcihidWZmZXIsIGJ1Ziwgc2l6 ZW9mKGJ1ZikpOworICAgICAgICAgICAgY3VyICs9IHJ1bl9jb3VudDsKKyAgICAgICAgfQorICAg IH0KK30KKworc3RhdGljIGludCBoZHJfZW5jb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0 eCwgQVZQYWNrZXQgKnBrdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBBVkZy YW1lICpmcmFtZSwgaW50ICpnb3RfcGFja2V0KQoreworICAgIEhEUkVuY0NvbnRleHQgKnMgPSBh dmN0eC0+cHJpdl9kYXRhOworICAgIGludDY0X3QgcGFja2V0X3NpemU7CisgICAgdWludDhfdCAq YnVmOworICAgIGludCByZXQ7CisKKyAgICBwYWNrZXRfc2l6ZSA9IGF2Y3R4LT53aWR0aCAqIGF2 Y3R4LT5oZWlnaHQgKiA0TEwgKyAxMDI0TEw7CisgICAgaWYgKChyZXQgPSBmZl9nZXRfZW5jb2Rl X2J1ZmZlcihhdmN0eCwgcGt0LCBwYWNrZXRfc2l6ZSwgMCkpIDwgMCkKKyAgICAgICAgcmV0dXJu IHJldDsKKworICAgIGJ1ZiA9IHBrdC0+ZGF0YTsKKyAgICBieXRlc3RyZWFtX3B1dF9zdHIoJmJ1 ZiwgIiM/UkFESUFOQ0VcbiIpOworICAgIGJ5dGVzdHJlYW1fcHV0X3N0cigmYnVmLCAiU09GVFdB UkU9bGF2Y1xuIik7CisgICAgcmV0ID0gc25wcmludGYoYnVmLCAzMiwgIlBJWEFTUEVDVD0lZlxu IiwgYXZfcTJkKGF2X2ludl9xKGF2Y3R4LT5zYW1wbGVfYXNwZWN0X3JhdGlvKSkpOworICAgIGlm IChyZXQgPiAwKQorICAgICAgICBidWYgKz0gcmV0OworICAgIGJ5dGVzdHJlYW1fcHV0X3N0cigm YnVmLCAiRk9STUFUPTMyLWJpdF9ybGVfcmdiZVxuXG4iKTsKKyAgICByZXQgPSBzbnByaW50Zihi dWYsIDMyLCAiLVkgJWQgK1ggJWRcbiIsIGF2Y3R4LT5oZWlnaHQsIGF2Y3R4LT53aWR0aCk7Cisg ICAgaWYgKHJldCA+IDApCisgICAgICAgIGJ1ZiArPSByZXQ7CisKKyAgICBmb3IgKGludCB5ID0g MDsgeSA8IGF2Y3R4LT5oZWlnaHQ7IHkrKykgeworICAgICAgICBjb25zdCBmbG9hdCAqcmVkICAg PSAoY29uc3QgZmxvYXQgKikoZnJhbWUtPmRhdGFbMl0gKyB5ICogZnJhbWUtPmxpbmVzaXplWzJd KTsKKyAgICAgICAgY29uc3QgZmxvYXQgKmdyZWVuID0gKGNvbnN0IGZsb2F0ICopKGZyYW1lLT5k YXRhWzBdICsgeSAqIGZyYW1lLT5saW5lc2l6ZVswXSk7CisgICAgICAgIGNvbnN0IGZsb2F0ICpi bHVlICA9IChjb25zdCBmbG9hdCAqKShmcmFtZS0+ZGF0YVsxXSArIHkgKiBmcmFtZS0+bGluZXNp emVbMV0pOworCisgICAgICAgIGlmIChhdmN0eC0+d2lkdGggPCA4IHx8IGF2Y3R4LT53aWR0aCA+ IDB4N2ZmZikgeworICAgICAgICAgICAgZm9yIChpbnQgeCA9IDA7IHggPCBhdmN0eC0+d2lkdGg7 IHgrKykgeworICAgICAgICAgICAgICAgIGZsb2F0MnJnYmUoYnVmLCByZWRbeF0sIGdyZWVuW3hd LCBibHVlW3hdKTsKKyAgICAgICAgICAgICAgICBidWYgKz0gNDsKKyAgICAgICAgICAgIH0KKyAg ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGJ5dGVzdHJlYW1fcHV0X2J5dGUoJmJ1ZiwgMik7 CisgICAgICAgICAgICBieXRlc3RyZWFtX3B1dF9ieXRlKCZidWYsIDIpOworICAgICAgICAgICAg Ynl0ZXN0cmVhbV9wdXRfYnl0ZSgmYnVmLCBhdmN0eC0+d2lkdGggPj4gOCk7CisgICAgICAgICAg ICBieXRlc3RyZWFtX3B1dF9ieXRlKCZidWYsIGF2Y3R4LT53aWR0aCAmIDB4RkYpOworCisgICAg ICAgICAgICBmb3IgKGludCB4ID0gMDsgeCA8IGF2Y3R4LT53aWR0aDsgeCsrKQorICAgICAgICAg ICAgICAgIGZsb2F0MnJnYmUocy0+c2NhbmxpbmUgKyA0ICogeCwgcmVkW3hdLCBncmVlblt4XSwg Ymx1ZVt4XSk7CisgICAgICAgICAgICBmb3IgKGludCBwID0gMDsgcCA8IDQ7IHArKykKKyAgICAg ICAgICAgICAgICBybGUoJmJ1Ziwgcy0+c2NhbmxpbmUgKyBwLCBhdmN0eC0+d2lkdGgpOworICAg ICAgICB9CisgICAgfQorCisgICAgcGt0LT5mbGFncyB8PSBBVl9QS1RfRkxBR19LRVk7CisKKyAg ICBhdl9zaHJpbmtfcGFja2V0KHBrdCwgYnVmIC0gcGt0LT5kYXRhKTsKKworICAgICpnb3RfcGFj a2V0ID0gMTsKKworICAgIHJldHVybiAwOworfQorCitjb25zdCBGRkNvZGVjIGZmX2hkcl9lbmNv ZGVyID0geworICAgIC5wLm5hbWUgICAgICAgICA9ICJoZHIiLAorICAgIC5wLmxvbmdfbmFtZSAg ICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJIRFIgKFJhZGlhbmNlIFJHQkUgZm9ybWF0KSBpbWFn ZSIpLAorICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihIRFJFbmNDb250ZXh0KSwKKyAgICAu cC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCisgICAgLnAuaWQgICAgICAgICAg ID0gQVZfQ09ERUNfSURfSERSLAorICAgIC5wLmNhcGFiaWxpdGllcyA9IEFWX0NPREVDX0NBUF9E UjEgfCBBVl9DT0RFQ19DQVBfRlJBTUVfVEhSRUFEUywKKyAgICAuaW5pdCAgICAgICAgICAgPSBo ZHJfZW5jb2RlX2luaXQsCisgICAgRkZfQ09ERUNfRU5DT0RFX0NCKGhkcl9lbmNvZGVfZnJhbWUp LAorICAgIC5jbG9zZSAgICAgICAgICA9IGhkcl9lbmNvZGVfY2xvc2UsCisgICAgLnAucGl4X2Zt dHMgICAgID0gKGNvbnN0IGVudW0gQVZQaXhlbEZvcm1hdFtdKXsKKyAgICAgICAgQVZfUElYX0ZN VF9HQlJQRjMyLAorICAgICAgICBBVl9QSVhfRk1UX05PTkUKKyAgICB9LAorICAgIC5jYXBzX2lu dGVybmFsICA9IEZGX0NPREVDX0NBUF9JTklUX1RIUkVBRFNBRkUgfCBGRl9DT0RFQ19DQVBfSU5J VF9DTEVBTlVQLAorfTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcGFyc2Vycy5jIGIvbGliYXZj b2RlYy9wYXJzZXJzLmMKaW5kZXggYjU5Mzg4ODM1ZC4uYThkNTJhZjZjYiAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy9wYXJzZXJzLmMKKysrIGIvbGliYXZjb2RlYy9wYXJzZXJzLmMKQEAgLTUwLDYg KzUwLDcgQEAgZXh0ZXJuIGNvbnN0IEFWQ29kZWNQYXJzZXIgZmZfaDI2MV9wYXJzZXI7CiBleHRl cm4gY29uc3QgQVZDb2RlY1BhcnNlciBmZl9oMjYzX3BhcnNlcjsKIGV4dGVybiBjb25zdCBBVkNv ZGVjUGFyc2VyIGZmX2gyNjRfcGFyc2VyOwogZXh0ZXJuIGNvbnN0IEFWQ29kZWNQYXJzZXIgZmZf aGV2Y19wYXJzZXI7CitleHRlcm4gY29uc3QgQVZDb2RlY1BhcnNlciBmZl9oZHJfcGFyc2VyOwog ZXh0ZXJuIGNvbnN0IEFWQ29kZWNQYXJzZXIgZmZfaXB1X3BhcnNlcjsKIGV4dGVybiBjb25zdCBB VkNvZGVjUGFyc2VyIGZmX2pwZWcyMDAwX3BhcnNlcjsKIGV4dGVybiBjb25zdCBBVkNvZGVjUGFy c2VyIGZmX21qcGVnX3BhcnNlcjsKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L01ha2VmaWxlIGIv bGliYXZmb3JtYXQvTWFrZWZpbGUKaW5kZXggNmM2Yjc3OTA4MC4uZTQyMDM4NDM1NSAxMDA2NDQK LS0tIGEvbGliYXZmb3JtYXQvTWFrZWZpbGUKKysrIGIvbGliYXZmb3JtYXQvTWFrZWZpbGUKQEAg LTI3Myw2ICsyNzMsNyBAQCBPQkpTLSQoQ09ORklHX0lNQUdFX0RQWF9QSVBFX0RFTVVYRVIpICAg ICArPSBpbWcyZGVjLm8gaW1nMi5vCiBPQkpTLSQoQ09ORklHX0lNQUdFX0VYUl9QSVBFX0RFTVVY RVIpICAgICArPSBpbWcyZGVjLm8gaW1nMi5vCiBPQkpTLSQoQ09ORklHX0lNQUdFX0dFTV9QSVBF X0RFTVVYRVIpICAgICArPSBpbWcyZGVjLm8gaW1nMi5vCiBPQkpTLSQoQ09ORklHX0lNQUdFX0dJ Rl9QSVBFX0RFTVVYRVIpICAgICArPSBpbWcyZGVjLm8gaW1nMi5vCitPQkpTLSQoQ09ORklHX0lN QUdFX0hEUl9QSVBFX0RFTVVYRVIpICAgICArPSBpbWcyZGVjLm8gaW1nMi5vCiBPQkpTLSQoQ09O RklHX0lNQUdFX0oyS19QSVBFX0RFTVVYRVIpICAgICArPSBpbWcyZGVjLm8gaW1nMi5vCiBPQkpT LSQoQ09ORklHX0lNQUdFX0pQRUdfUElQRV9ERU1VWEVSKSAgICArPSBpbWcyZGVjLm8gaW1nMi5v CiBPQkpTLSQoQ09ORklHX0lNQUdFX0pQRUdMU19QSVBFX0RFTVVYRVIpICArPSBpbWcyZGVjLm8g aW1nMi5vCmRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9hbGxmb3JtYXRzLmMgYi9saWJhdmZvcm1h dC9hbGxmb3JtYXRzLmMKaW5kZXggMzI2OThiODU3Zi4uYWU0NDc5ZmI3YSAxMDA2NDQKLS0tIGEv bGliYXZmb3JtYXQvYWxsZm9ybWF0cy5jCisrKyBiL2xpYmF2Zm9ybWF0L2FsbGZvcm1hdHMuYwpA QCAtNTA4LDYgKzUwOCw3IEBAIGV4dGVybiBjb25zdCBBVklucHV0Rm9ybWF0ICBmZl9pbWFnZV9k cHhfcGlwZV9kZW11eGVyOwogZXh0ZXJuIGNvbnN0IEFWSW5wdXRGb3JtYXQgIGZmX2ltYWdlX2V4 cl9waXBlX2RlbXV4ZXI7CiBleHRlcm4gY29uc3QgQVZJbnB1dEZvcm1hdCAgZmZfaW1hZ2VfZ2Vt X3BpcGVfZGVtdXhlcjsKIGV4dGVybiBjb25zdCBBVklucHV0Rm9ybWF0ICBmZl9pbWFnZV9naWZf cGlwZV9kZW11eGVyOworZXh0ZXJuIGNvbnN0IEFWSW5wdXRGb3JtYXQgIGZmX2ltYWdlX2hkcl9w aXBlX2RlbXV4ZXI7CiBleHRlcm4gY29uc3QgQVZJbnB1dEZvcm1hdCAgZmZfaW1hZ2VfajJrX3Bp cGVfZGVtdXhlcjsKIGV4dGVybiBjb25zdCBBVklucHV0Rm9ybWF0ICBmZl9pbWFnZV9qcGVnX3Bp cGVfZGVtdXhlcjsKIGV4dGVybiBjb25zdCBBVklucHV0Rm9ybWF0ICBmZl9pbWFnZV9qcGVnbHNf cGlwZV9kZW11eGVyOwpkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvaW1nMi5jIGIvbGliYXZmb3Jt YXQvaW1nMi5jCmluZGV4IDg3MGQyZWJiYzUuLmIwMzA3NWYzYjAgMTAwNjQ0Ci0tLSBhL2xpYmF2 Zm9ybWF0L2ltZzIuYworKysgYi9saWJhdmZvcm1hdC9pbWcyLmMKQEAgLTkxLDYgKzkxLDcgQEAg Y29uc3QgSWRTdHJNYXAgZmZfaW1nX3RhZ3NbXSA9IHsKICAgICB7IEFWX0NPREVDX0lEX1ZCTiwg ICAgICAgICJ2Ym4iICAgICAgfSwKICAgICB7IEFWX0NPREVDX0lEX0pQRUdYTCwgICAgICJqeGwi ICAgICAgfSwKICAgICB7IEFWX0NPREVDX0lEX1FPSSwgICAgICAgICJxb2kiICAgICAgfSwKKyAg ICB7IEFWX0NPREVDX0lEX0hEUiwgICAgICAgICJoZHIiICAgICAgfSwKICAgICB7IEFWX0NPREVD X0lEX05PTkUsICAgICAgIE5VTEwgICAgICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvbGliYXZmb3Jt YXQvaW1nMmRlYy5jIGIvbGliYXZmb3JtYXQvaW1nMmRlYy5jCmluZGV4IGU3ZmYyNmU1ZGQuLjRj NmM3MDEzOWMgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L2ltZzJkZWMuYworKysgYi9saWJhdmZv cm1hdC9pbWcyZGVjLmMKQEAgLTEwNzAsNiArMTA3MCwxMyBAQCBzdGF0aWMgaW50IHBhbV9wcm9i ZShjb25zdCBBVlByb2JlRGF0YSAqcCkKICAgICByZXR1cm4gcG5tX21hZ2ljX2NoZWNrKHAsIDcp ID8gcG5tX3Byb2JlKHApIDogMDsKIH0KIAorc3RhdGljIGludCBoZHJfcHJvYmUoY29uc3QgQVZQ cm9iZURhdGEgKnApCit7CisgICAgaWYgKCFtZW1jbXAocC0+YnVmLCAiIz9SQURJQU5DRVxuIiwg MTEpKQorICAgICAgICByZXR1cm4gQVZQUk9CRV9TQ09SRV9NQVg7CisgICAgcmV0dXJuIDA7Cit9 CisKIHN0YXRpYyBpbnQgeGJtX3Byb2JlKGNvbnN0IEFWUHJvYmVEYXRhICpwKQogewogICAgIGlm ICghbWVtY21wKHAtPmJ1ZiwgIi8qIFhCTSBYMTAgZm9ybWF0ICovIiwgMjApKQpAQCAtMTIyMSw2 ICsxMjI4LDcgQEAgSU1BR0VBVVRPX0RFTVVYRVIoZHB4LCAgICAgICBEUFgpCiBJTUFHRUFVVE9f REVNVVhFUihleHIsICAgICAgIEVYUikKIElNQUdFQVVUT19ERU1VWEVSKGdlbSwgICAgICAgR0VN KQogSU1BR0VBVVRPX0RFTVVYRVIoZ2lmLCAgICAgICBHSUYpCitJTUFHRUFVVE9fREVNVVhFUiho ZHIsICAgICAgIEhEUikKIElNQUdFQVVUT19ERU1VWEVSX0VYVChqMmssICAgSlBFRzIwMDAsIEoy SykKIElNQUdFQVVUT19ERU1VWEVSX0VYVChqcGVnLCAgTUpQRUcsIEpQRUcpCiBJTUFHRUFVVE9f REVNVVhFUihqcGVnbHMsICAgIEpQRUdMUykKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L2ltZzJl bmMuYyBiL2xpYmF2Zm9ybWF0L2ltZzJlbmMuYwppbmRleCAwYTExZmFlMzRlLi43MzRmOTNjNjg2 IDEwMDY0NAotLS0gYS9saWJhdmZvcm1hdC9pbWcyZW5jLmMKKysrIGIvbGliYXZmb3JtYXQvaW1n MmVuYy5jCkBAIC0yNjcsNyArMjY3LDcgQEAgY29uc3QgQVZPdXRwdXRGb3JtYXQgZmZfaW1hZ2Uy X211eGVyID0gewogICAgIC5sb25nX25hbWUgICAgICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJp bWFnZTIgc2VxdWVuY2UiKSwKICAgICAuZXh0ZW5zaW9ucyAgICAgPSAiYm1wLGRweCxleHIsamxz LGpwZWcsanBnLGp4bCxsanBnLHBhbSxwYm0scGN4LHBmbSxwZ20scGdteXV2LHBobSwiCiAgICAg ICAgICAgICAgICAgICAgICAgInBuZyxwcG0sc2dpLHRnYSx0aWYsdGlmZixqcDIsajJjLGoyayx4 d2Qsc3VuLHJhcyxycyxpbTEsaW04LCIKLSAgICAgICAgICAgICAgICAgICAgICAiaW0yNCxzdW5y YXMsdmJuLHhibSx4ZmFjZSxwaXgseSxhdmlmLHFvaSIsCisgICAgICAgICAgICAgICAgICAgICAg ImltMjQsc3VucmFzLHZibix4Ym0seGZhY2UscGl4LHksYXZpZixxb2ksaGRyIiwKICAgICAucHJp dl9kYXRhX3NpemUgPSBzaXplb2YoVmlkZW9NdXhEYXRhKSwKICAgICAudmlkZW9fY29kZWMgICAg PSBBVl9DT0RFQ19JRF9NSlBFRywKICAgICAud3JpdGVfaGVhZGVyICAgPSB3cml0ZV9oZWFkZXIs Ci0tIAoyLjM2LjEKCg== --0000000000003ee1bc05e3275ec8 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --0000000000003ee1bc05e3275ec8--