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 5F02647C65 for ; Sun, 15 Oct 2023 10:22:33 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5198D68C87C; Sun, 15 Oct 2023 13:22:31 +0300 (EEST) Received: from mail-lj1-f181.google.com (mail-lj1-f181.google.com [209.85.208.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9267568A091 for ; Sun, 15 Oct 2023 13:22:24 +0300 (EEST) Received: by mail-lj1-f181.google.com with SMTP id 38308e7fff4ca-2c51388ccebso11902361fa.3 for ; Sun, 15 Oct 2023 03:22:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697365343; x=1697970143; darn=ffmpeg.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=4USJA2vSjNjYY25EeHi2Gm3IAvgLwvbHnnUhIpwJeQs=; b=H+hKfNw4Boq3XPT2UTObDg6OFXDKnfeRhpvDZyhN+zNeNQt/pW2OQWiR8Rkp8IJslM F4HB6YtiKmlk/YaDylNqFpIVff5BDDSQ71rmVR+NApUgjln5huURWgdEDEsNoYuv7/fT jKEE6JDtqYd+1kFFzO5IKY6SVTjQJvRGinQaqnZKxycMs9nDNjLDeW3qv5VvThXd1jB2 g4gXkZ+eJN0opo5lQn+sVrUxP/3sWFBwn3yA9mi3X9jLleHNW3E2InsXaA2cBxE7M+hx aXOInGyHqnIiRP7K+oPxst/SFARyO+5CM1TKDCa0haPJmTQmOUOIRQXp0g1AmL00UiNX G+UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697365343; x=1697970143; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=4USJA2vSjNjYY25EeHi2Gm3IAvgLwvbHnnUhIpwJeQs=; b=nw7t+bEXPXcBDjP8SKqqhqBaQ+EJt+aih4x36JlrMXGRygz6ZOCk0B2ZpXMiGRdHHU y0CKTcJlyIleZaWISJ/jfbmJ+6NkCxm82i8x3S8v06aeNJrCWGlyRc5H7qrOduLw0IH3 omwDojhFz5Md1u+T4aeSNU1U0l/s3HqN4+qLzMUAKf6ZLvep09Pts88HGTdi0wao7TWj wQgm/cWwd8GPEGJDKGZ1t3XTN5sBllZn+9upb0EkUbVePvarli2OCymSiwDDInHmHsIg OUwUmniU6avtNjLWUAHUCHBkrBjbkLSoAEOdXPcXQW25FTtL28+cUiHLAd6q4/qvaj6F lQ5w== X-Gm-Message-State: AOJu0YwLLJrtms6rhaZTbA0dgcrck0R0HPVxQ+Ae+LDgzOtyqLzPyT87 SBtt+VA+UW9lhavntV4/+taREirZU7hrpku78mFJu8TU6vk= X-Google-Smtp-Source: AGHT+IH2Vp4pKvA+FnRX3Ux8KeYjiTEHg4NtfC1k0wmbmN68PQ1vvCfQBzxYRDAlkohMheQ09Gx0i9yzf90kF1oeWiI= X-Received: by 2002:a05:651c:19a4:b0:2c5:be8:68b1 with SMTP id bx36-20020a05651c19a400b002c50be868b1mr5692478ljb.9.1697365343051; Sun, 15 Oct 2023 03:22:23 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Nuo Mi Date: Sun, 15 Oct 2023 18:22:11 +0800 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH v3 01/14] vvcdec: add vvc decoder stub 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: T24gU3VuLCBPY3QgMTUsIDIwMjMgYXQgNTozNeKAr1BNIEFuZHJlYXMgUmhlaW5oYXJkdCA8CmFu ZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4gd3JvdGU6Cgo+IE51byBNaToKPiA+IC0tLQo+ ID4gIGNvbmZpZ3VyZSAgICAgICAgICAgICAgIHwgICAxICsKPiA+ICBsaWJhdmNvZGVjL01ha2Vm aWxlICAgICB8ICAgMSArCj4gPiAgbGliYXZjb2RlYy9hbGxjb2RlY3MuYyAgfCAgIDEgKwo+ID4g IGxpYmF2Y29kZWMvdnZjL01ha2VmaWxlIHwgICA0ICsKPiA+ICBsaWJhdmNvZGVjL3Z2Yy92dmNk ZWMuYyB8ICA4NCArKysrKysrKysrKwo+ID4gIGxpYmF2Y29kZWMvdnZjL3Z2Y2RlYy5oIHwgMzA3 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+ICA2IGZpbGVzIGNo YW5nZWQsIDM5OCBpbnNlcnRpb25zKCspCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29k ZWMvdnZjL01ha2VmaWxlCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29kZWMvdnZjL3Z2 Y2RlYy5jCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29kZWMvdnZjL3Z2Y2RlYy5oCj4g Pgo+ID4gZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZSBiL2NvbmZpZ3VyZQo+ID4gaW5kZXggOGExOTAy ODEwYS4uNDQyYzQzOWMzZSAxMDA3NTUKPiA+IC0tLSBhL2NvbmZpZ3VyZQo+ID4gKysrIGIvY29u ZmlndXJlCj4gPiBAQCAtMzAyNSw2ICszMDI1LDcgQEAgdnA2Zl9kZWNvZGVyX3NlbGVjdD0idnA2 X2RlY29kZXIiCj4gPiAgdnA3X2RlY29kZXJfc2VsZWN0PSJoMjY0cHJlZCB2aWRlb2RzcCB2cDhk c3AiCj4gPiAgdnA4X2RlY29kZXJfc2VsZWN0PSJoMjY0cHJlZCB2aWRlb2RzcCB2cDhkc3AiCj4g PiAgdnA5X2RlY29kZXJfc2VsZWN0PSJ2aWRlb2RzcCB2cDlfcGFyc2VyIHZwOV9zdXBlcmZyYW1l X3NwbGl0X2JzZiIKPiA+ICt2dmNfZGVjb2Rlcl9zZWxlY3Q9ImNhYmFjIGdvbG9tYiB2aWRlb2Rz cCIKPiA+ICB3Y212X2RlY29kZXJfc2VsZWN0PSJpbmZsYXRlX3dyYXBwZXIiCj4gPiAgd2VicF9k ZWNvZGVyX3NlbGVjdD0idnA4X2RlY29kZXIgZXhpZiIKPiA+ICB3bWFsb3NzbGVzc19kZWNvZGVy X3NlbGVjdD0ibGxhdWRkc3AiCj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9NYWtlZmlsZSBi L2xpYmF2Y29kZWMvTWFrZWZpbGUKPiA+IGluZGV4IDA4ZmQxNTE2MTkuLmZiMjczOGQ4ZWIgMTAw NjQ0Cj4gPiAtLS0gYS9saWJhdmNvZGVjL01ha2VmaWxlCj4gPiArKysgYi9saWJhdmNvZGVjL01h a2VmaWxlCj4gPiBAQCAtNjIsNiArNjIsNyBAQCBPQkpTID0gYWMzX3BhcnNlci5vCj4gICAgICAg ICAgICAgICAgICBcCj4gPiAgICAgICAgIHhpcGgubwo+ICBcCj4gPgo+ID4gICMgc3Vic3lzdGVt cwo+ID4gK2luY2x1ZGUgJChTUkNfUEFUSCkvbGliYXZjb2RlYy92dmMvTWFrZWZpbGUKPgo+IEkg ZG9uJ3Qgc2VlIHdoeSB2dmMgc2hvdWxkIGhhdmUgYSBzdWJmb2xkZXIgb2YgaXRzIG93bi4KPgpU aGlzIGlzIGEgc3VnZ2VzdGlvbiBmcm9tIEpCLgpUaGVyZSBhcmUgMTcwMCsgZmlsZXMgaW4gbGli YXZjb2RlYywgRXZlbgpodHRwczovL2dpdGh1Yi5jb20vRkZtcGVnL0ZGbXBlZy90cmVlL21hc3Rl ci9saWJhdmNvZGVjIGNhbid0IG5vdCBsaXN0IHRoZW0KYWxsLgoKCj4gPiAgT0JKUy0kKENPTkZJ R19BQU5EQ1RUQUJMRVMpICAgICAgICAgICAgKz0gYWFuZGN0dGFiLm8KPiA+ICBPQkpTLSQoQ09O RklHX0FDM0RTUCkgICAgICAgICAgICAgICAgICArPSBhYzNkc3AubyBhYzMubyBhYzN0YWIubwo+ ID4gIE9CSlMtJChDT05GSUdfQURUU19IRUFERVIpICAgICAgICAgICAgICs9IGFkdHNfaGVhZGVy Lm8KPiBtcGVnNGF1ZGlvX3NhbXBsZV9yYXRlcy5vCj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9hbGxjb2RlY3MuYyBiL2xpYmF2Y29kZWMvYWxsY29kZWNzLmMKPiA+IGluZGV4IDZlOTVjYTU2 MzYuLmMxNmQ4MGNiODUgMTAwNjQ0Cj4gPiAtLS0gYS9saWJhdmNvZGVjL2FsbGNvZGVjcy5jCj4g PiArKysgYi9saWJhdmNvZGVjL2FsbGNvZGVjcy5jCj4gPiBAQCAtMzg4LDYgKzM4OCw3IEBAIGV4 dGVybiBjb25zdCBGRkNvZGVjIGZmX3ZwOV9ya21wcF9kZWNvZGVyOwo+ID4gIGV4dGVybiBjb25z dCBGRkNvZGVjIGZmX3ZwOV92NGwybTJtX2RlY29kZXI7Cj4gPiAgZXh0ZXJuIGNvbnN0IEZGQ29k ZWMgZmZfdnFhX2RlY29kZXI7Cj4gPiAgZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfdnFjX2RlY29k ZXI7Cj4gPiArZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfdnZjX2RlY29kZXI7Cj4gPiAgZXh0ZXJu IGNvbnN0IEZGQ29kZWMgZmZfd2JtcF9kZWNvZGVyOwo+ID4gIGV4dGVybiBjb25zdCBGRkNvZGVj IGZmX3dibXBfZW5jb2RlcjsKPiA+ICBleHRlcm4gY29uc3QgRkZDb2RlYyBmZl93ZWJwX2RlY29k ZXI7Cj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92dmMvTWFrZWZpbGUgYi9saWJhdmNvZGVj L3Z2Yy9NYWtlZmlsZQo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+IGluZGV4IDAwMDAwMDAw MDAuLmJkMTRkYmMxZGYKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL2xpYmF2Y29kZWMvdnZj L01ha2VmaWxlCj4gPiBAQCAtMCwwICsxLDQgQEAKPiA+ICtjbGVhbjo6Cj4gPiArICAgICAkKFJN KSAkKENMRUFOU1VGRklYRVM6JT1saWJhdmNvZGVjL3Z2Yy8lKQo+ID4gKwo+ID4gK09CSlMtJChD T05GSUdfVlZDX0RFQ09ERVIpICAgICAgICAgICs9ICB2dmMvdnZjZGVjLm8gICAgICAgICAgICBc Cj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92dmMvdnZjZGVjLmMgYi9saWJhdmNvZGVjL3Z2 Yy92dmNkZWMuYwo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+IGluZGV4IDAwMDAwMDAwMDAu LjhkMDI3YWYwYjkKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL2xpYmF2Y29kZWMvdnZjL3Z2 Y2RlYy5jCj4gPiBAQCAtMCwwICsxLDg0IEBACj4gPiArLyoKPiA+ICsgKiBWVkMgdmlkZW8gZGVj b2Rlcgo+ID4gKyAqCj4gPiArICogQ29weXJpZ2h0IChDKSAyMDIxIE51byBNaQo+ID4gKyAqIENv cHlyaWdodCAoQykgMjAyMiBYdSBNdQo+ID4gKyAqCj4gPiArICogVGhpcyBmaWxlIGlzIHBhcnQg b2YgRkZtcGVnLgo+ID4gKyAqCj4gPiArICogRkZtcGVnIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgo+ID4gKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKPiA+ICsgKiBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKPiA+ICsgKiB2 ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KPiA+ICsgKgo+ID4gKyAqIEZGbXBlZyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAo+ID4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4gPiArICogTUVSQ0hBTlRB QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK PiA+ICsgKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgo+ ID4gKyAqCj4gPiArICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V IExlc3NlciBHZW5lcmFsIFB1YmxpYwo+ID4gKyAqIExpY2Vuc2UgYWxvbmcgd2l0aCBGRm1wZWc7 IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKPiA+ICsgKiBGb3VuZGF0aW9uLCBJ bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BCj4gMDIxMTAt MTMwMSBVU0EKPiA+ICsgKi8KPiA+ICsjaW5jbHVkZSAiY29uZmlnX2NvbXBvbmVudHMuaCIKPgo+ IFdoYXQgZG8geW91IG5lZWQgdGhpcyBmb3I/Cj4KPiA+ICsKPiA+ICsjaW5jbHVkZSAibGliYXZj b2RlYy9jb2RlY19pbnRlcm5hbC5oIgo+ID4gKyNpbmNsdWRlICJsaWJhdmNvZGVjL2RlY29kZS5o Igo+ID4gKyNpbmNsdWRlICJsaWJhdmNvZGVjL2dvbG9tYi5oIgo+ID4gKyNpbmNsdWRlICJsaWJh dmNvZGVjL3Byb2ZpbGVzLmgiCj4gPiArI2luY2x1ZGUgImxpYmF2Y29kZWMvdnZjLmgiCj4gPiAr Cj4gPiArI2luY2x1ZGUgImxpYmF2dXRpbC9jcHUuaCIKPgo+IFdoeSB3b3VsZCB5b3UgZXZlciBu ZWVkIGNwdS5oIGluIHRoZSBkZWNvZGVyPwo+IEV2ZW4gaWYgYSBsYXRlciBwYXRjaCBuZWVkcyBp dCwgaXQgc2hvdWxkIGJlIGFkZGVkIGluIHRoZSBsYXRlciBwYXRjaC4KPgo+ID4gKwo+ID4gKyNp bmNsdWRlICJ2dmNkZWMuaCIKPiA+ICsKPiA+ICtzdGF0aWMgaW50IHZ2Y19kZWNvZGVfZnJhbWUo QVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVkZyYW1lICpvdXRwdXQsCj4gPiArICAgIGludCAqZ290 X291dHB1dCwgQVZQYWNrZXQgKmF2cGt0KQo+ID4gK3sKPiA+ICsgICAgcmV0dXJuIGF2cGt0LT5z aXplOwo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgdm9pZCB2dmNfZGVjb2RlX2ZsdXNoKEFWQ29k ZWNDb250ZXh0ICphdmN0eCkKPiA+ICt7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBhdl9jb2xk IGludCB2dmNfZGVjb2RlX2ZyZWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQo+ID4gK3sKPiA+ICsg ICAgcmV0dXJuIDA7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBhdl9jb2xkIGludCB2dmNfZGVj b2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQo+ID4gK3sKPiA+ICsgICAgcmV0dXJuIDA7 Cj4gPiArfQo+ID4gKwo+ID4gKyNkZWZpbmUgT0ZGU0VUKHgpIG9mZnNldG9mKFZWQ0NvbnRleHQs IHgpCj4gPiArI2RlZmluZSBQQVIgKEFWX09QVF9GTEFHX0RFQ09ESU5HX1BBUkFNIHwgQVZfT1BU X0ZMQUdfVklERU9fUEFSQU0pCj4gPiArCj4gPiArc3RhdGljIGNvbnN0IEFWT3B0aW9uIG9wdGlv bnNbXSA9IHsKPiA+ICsgICAgeyBOVUxMIH0sCj4gPiArfTsKPiA+ICsKPiA+ICtzdGF0aWMgY29u c3QgQVZDbGFzcyB2dmNfZGVjb2Rlcl9jbGFzcyA9IHsKPiA+ICsgICAgLmNsYXNzX25hbWUgPSAi dnZjIGRlY29kZXIiLAo+ID4gKyAgICAuaXRlbV9uYW1lICA9IGF2X2RlZmF1bHRfaXRlbV9uYW1l LAo+ID4gKyAgICAub3B0aW9uICAgICA9IG9wdGlvbnMsCj4gPiArICAgIC52ZXJzaW9uICAgID0g TElCQVZVVElMX1ZFUlNJT05fSU5ULAo+ID4gK307Cj4KPiBUaGlzIHNlZW1zIHRvIGJlIGJhc2Vk IHVwb24gSC4yNjQsIGJ1dCB0aGUgSC4yNjQgZGVjb2RlciBoYXMgb3B0aW9ucywKPiB3aGVyZWFz IHRoaXMgZGVjb2RlciBkb2Vzbid0LCBzbyB0aGlzIEFWQ2xhc3MgYW5kIHRoZSBvcHRpb25zIGFy ZQo+IHVubmVjZXNzYXJ5Lgo+Cj4gPiArCj4gPiArY29uc3QgRkZDb2RlYyBmZl92dmNfZGVjb2Rl ciA9IHsKPiA+ICsgICAgLnAubmFtZSAgICAgICAgICAgICAgICAgID0gInZ2YyIsCj4gPiArICAg IC5wLmxvbmdfbmFtZSAgICAgICAgICAgICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJWVkMgKFZl cnNhdGlsZQo+IFZpZGVvIENvZGluZykiKSwKPiA+ICsgICAgLnAudHlwZSAgICAgICAgICAgICAg ICAgID0gQVZNRURJQV9UWVBFX1ZJREVPLAo+ID4gKyAgICAucC5pZCAgICAgICAgICAgICAgICAg ICAgPSBBVl9DT0RFQ19JRF9WVkMsCj4gPiArICAgIC5wcml2X2RhdGFfc2l6ZSAgICAgICAgICA9 IHNpemVvZihWVkNDb250ZXh0KSwKPiA+ICsgICAgLnAucHJpdl9jbGFzcyAgICAgICAgICAgID0g JnZ2Y19kZWNvZGVyX2NsYXNzLAo+ID4gKyAgICAuaW5pdCAgICAgICAgICAgICAgICAgICAgPSB2 dmNfZGVjb2RlX2luaXQsCj4gPiArICAgIC5jbG9zZSAgICAgICAgICAgICAgICAgICA9IHZ2Y19k ZWNvZGVfZnJlZSwKPiA+ICsgICAgRkZfQ09ERUNfREVDT0RFX0NCKHZ2Y19kZWNvZGVfZnJhbWUp LAo+ID4gKyAgICAuZmx1c2ggICAgICAgICAgICAgICAgICAgPSB2dmNfZGVjb2RlX2ZsdXNoLAo+ ID4gKyAgICAucC5jYXBhYmlsaXRpZXMgICAgICAgICAgPSBBVl9DT0RFQ19DQVBfRFIxIHwgQVZf Q09ERUNfQ0FQX0RFTEFZIHwKPiBBVl9DT0RFQ19DQVBfT1RIRVJfVEhSRUFEUywKPiA+ICsgICAg LmNhcHNfaW50ZXJuYWwgICAgICAgICAgID0gRkZfQ09ERUNfQ0FQX0VYUE9SVFNfQ1JPUFBJTkcg fAo+IEZGX0NPREVDX0NBUF9JTklUX0NMRUFOVVAgfAo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBGRl9DT0RFQ19DQVBfQVVUT19USFJFQURTLAo+ID4gKyAgICAucC5wcm9maWxl cyAgICAgICAgICAgICAgPSBOVUxMX0lGX0NPTkZJR19TTUFMTChmZl92dmNfcHJvZmlsZXMpLAo+ ID4gK307Cj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92dmMvdnZjZGVjLmggYi9saWJhdmNv ZGVjL3Z2Yy92dmNkZWMuaAo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+IGluZGV4IDAwMDAw MDAwMDAuLjY5OGFiODliOWQKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL2xpYmF2Y29kZWMv dnZjL3Z2Y2RlYy5oCj4gPiBAQCAtMCwwICsxLDMwNyBAQAo+ID4gKy8qCj4gPiArICogVlZDIHZp ZGVvIGRlY29kZXIKPiA+ICsgKgo+ID4gKyAqIENvcHlyaWdodCAoQykgMjAyMSBOdW8gTWkKPiA+ ICsgKiBDb3B5cmlnaHQgKEMpIDIwMjIgWHUgTXUKPiA+ICsgKgo+ID4gKyAqIFRoaXMgZmlsZSBp cyBwYXJ0IG9mIEZGbXBlZy4KPiA+ICsgKgo+ID4gKyAqIEZGbXBlZyBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKPiA+ICsgKiBtb2RpZnkgaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCj4gPiArICogTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCj4g PiArICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCj4gPiArICoKPiA+ICsgKiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKPiA+ICsgKiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgo+ID4gKyAqIE1F UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0 aGUgR05VCj4gPiArICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0 YWlscy4KPiA+ICsgKgo+ID4gKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg dGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKPiA+ICsgKiBMaWNlbnNlIGFsb25nIHdpdGgg RkZtcGVnOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCj4gPiArICogRm91bmRh dGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQQo+ IDAyMTEwLTEzMDEgVVNBCj4gPiArICovCj4gPiArCj4gPiArI2lmbmRlZiBBVkNPREVDX1ZWQ0RF Q19ICj4gPiArI2RlZmluZSBBVkNPREVDX1ZWQ0RFQ19ICj4gPiArCj4gPiArI2luY2x1ZGUgImxp YmF2Y29kZWMvY2JzLmgiCj4gPiArI2luY2x1ZGUgImxpYmF2Y29kZWMvY2JzX2gyNjYuaCIKPiA+ ICsjaW5jbHVkZSAibGliYXZjb2RlYy9oMjY0NV9wYXJzZS5oIgo+ID4gKyNpbmNsdWRlICJsaWJh dmNvZGVjL3RocmVhZGZyYW1lLmgiCj4gPiArI2luY2x1ZGUgImxpYmF2Y29kZWMvdmlkZW9kc3Au aCIKPiA+ICsjaW5jbHVkZSAibGliYXZjb2RlYy92dmMuaCIKPiA+ICsjaW5jbHVkZSAibGliYXZ1 dGlsL2V4ZWN1dG9yLmgiCj4gPiArCj4gPiArI2RlZmluZSBMVU1BICAgICAgICAgICAgICAgICAg ICAwCj4gPiArI2RlZmluZSBDSFJPTUEgICAgICAgICAgICAgICAgICAxCj4gPiArI2RlZmluZSBD QiAgICAgICAgICAgICAgICAgICAgICAxCj4gPiArI2RlZmluZSBDUiAgICAgICAgICAgICAgICAg ICAgICAyCj4gPiArI2RlZmluZSBKQ0JDUiAgICAgICAgICAgICAgICAgICAzCj4gPiArCj4gPiAr I2RlZmluZSBNQVhfQ1RVX1NJWkUgICAgICAgICAgICAxMjgKPiA+ICsKPiA+ICsjZGVmaW5lIE1B WF9DVV9TSVpFICAgICAgICAgICAgIE1BWF9DVFVfU0laRQo+ID4gKyNkZWZpbmUgTUlOX0NVX1NJ WkUgICAgICAgICAgICAgNAo+ID4gKyNkZWZpbmUgTUlOX0NVX0xPRzIgICAgICAgICAgICAgMgo+ ID4gKyNkZWZpbmUgTUFYX0NVX0RFUFRIICAgICAgICAgICAgNwo+ID4gKwo+ID4gKyNkZWZpbmUg TUlOX1BVX1NJWkUgICAgICAgICAgICAgNAo+ID4gKyNkZWZpbmUgTUlOX1BVX0xPRzIgICAgICAg ICAgICAgMgo+ID4gKwo+ID4gKyNkZWZpbmUgTUFYX1RCX1NJWkUgICAgICAgICAgICAgNjQKPiA+ ICsjZGVmaW5lIE1JTl9UVV9MT0cyICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgICAgICAg IC8vLzwKPiBNaW5UYkxvZzJTaXplWQo+ID4gKyNkZWZpbmUgTUlOX1RVX1NJWkUgICAgICAgICAg ICAgNAo+ID4gKyNkZWZpbmUgTUFYX1RVU19JTl9DVSAgICAgICAgICAgNjQKPiA+ICsKPiA+ICsj ZGVmaW5lIE1BWF9QQVJUU19JTl9DVFUgICAgICAgICgoTUFYX0NUVV9TSVpFID4+IE1JTl9DVV9M T0cyKSAqCj4gKE1BWF9DVFVfU0laRSA+PiBNSU5fQ1VfTE9HMikpCj4gPiArCj4gPiArI2RlZmlu ZSBNQVhfQ09OVFJPTF9QT0lOVFMgICAgICAzCj4gPiArCj4gPiArI2RlZmluZSBNUkdfTUFYX05V TV9DQU5EUyAgICAgICA2Cj4gPiArI2RlZmluZSBNQVhfTlVNX0hNVlBfQ0FORFMgICAgICA1Cj4g PiArCj4gPiArI2RlZmluZSBMMCAgICAgICAgICAgICAgICAgICAgICAwCj4gPiArI2RlZmluZSBM MSAgICAgICAgICAgICAgICAgICAgICAxCj4gPiArCj4gPiArI2RlZmluZSBDSFJPTUFfRVhUUkFf QkVGT1JFICAgICAxCj4gPiArI2RlZmluZSBDSFJPTUFfRVhUUkFfQUZURVIgICAgICAyCj4gPiAr I2RlZmluZSBDSFJPTUFfRVhUUkEgICAgICAgICAgICAzCj4gPiArI2RlZmluZSBMVU1BX0VYVFJB X0JFRk9SRSAgICAgICAzCj4gPiArI2RlZmluZSBMVU1BX0VYVFJBX0FGVEVSICAgICAgICA0Cj4g PiArI2RlZmluZSBMVU1BX0VYVFJBICAgICAgICAgICAgICA3Cj4gPiArI2RlZmluZSBCSUxJTkVB Ul9FWFRSQV9CRUZPUkUgICAwCj4gPiArI2RlZmluZSBCSUxJTkVBUl9FWFRSQV9BRlRFUiAgICAx Cj4gPiArI2RlZmluZSBCSUxJTkVBUl9FWFRSQSAgICAgICAgICAxCj4gPiArCj4gPiArI2RlZmlu ZSBNQVhfUVAgICAgICAgICAgICAgICAgICA2Mwo+ID4gKyNkZWZpbmUgREVGQVVMVF9JTlRSQV9U Q19PRkZTRVQgMgo+ID4gKwo+ID4gKyNkZWZpbmUgU0FPX1BBRERJTkdfU0laRSAgICAgICAgMQo+ ID4gKwo+ID4gKyNkZWZpbmUgQUxGX1BBRERJTkdfU0laRSAgICAgICAgOAo+ID4gKyNkZWZpbmUg QUxGX0JMT0NLX1NJWkUgICAgICAgICAgNAo+ID4gKwo+ID4gKyNkZWZpbmUgQUxGX0JPUkRFUl9M VU1BICAgICAgICAgMwo+ID4gKyNkZWZpbmUgQUxGX0JPUkRFUl9DSFJPTUEgICAgICAgMgo+ID4g Kwo+ID4gKyNkZWZpbmUgQUxGX1ZCX1BPU19BQk9WRV9MVU1BICAgNAo+ID4gKyNkZWZpbmUgQUxG X1ZCX1BPU19BQk9WRV9DSFJPTUEgMgo+ID4gKwo+ID4gKyNkZWZpbmUgQUxGX0dSQURJRU5UX1NU RVAgICAgICAgMgo+ID4gKyNkZWZpbmUgQUxGX0dSQURJRU5UX0JPUkRFUiAgICAgMgo+ID4gKyNk ZWZpbmUgQUxGX0dSQURJRU5UX1NJWkUgICAgICAgKChNQVhfQ1VfU0laRSArIEFMRl9HUkFESUVO VF9CT1JERVIgKgo+IDIpIC8gQUxGX0dSQURJRU5UX1NURVApCj4gPiArI2RlZmluZSBBTEZfTlVN X0RJUiAgICAgICAgICAgICA0Cj4gPiArCj4gPiArI2RlZmluZSBNQVhfUEJfU0laRSAgICAgICAg ICAgICAxMjgKPiA+ICsjZGVmaW5lIEVER0VfRU1VX0JVRkZFUl9TVFJJREUgIChNQVhfUEJfU0la RSArIDMyKQo+ID4gKwo+ID4gKyNkZWZpbmUgQUZGSU5FX01JTl9CTE9DS19TSVpFICAgNAo+ID4g KyNkZWZpbmUgUFJPRl9CT1JERVJfRVhUICAgICAgICAgMQo+ID4gKyNkZWZpbmUgUFJPRl9CTE9D S19TSVpFICAgICAgICAgKEFGRklORV9NSU5fQkxPQ0tfU0laRSArCj4gUFJPRl9CT1JERVJfRVhU ICogMikKPiA+ICsjZGVmaW5lIEJET0ZfQk9SREVSX0VYVCAgICAgICAgIDEKPiA+ICsKPiA+ICsj ZGVmaW5lIEJET0ZfUEFEREVEX1NJWkUgICAgICAgICgxNiArIEJET0ZfQk9SREVSX0VYVCAqIDIp Cj4gPiArI2RlZmluZSBCRE9GX0JMT0NLX1NJWkUgICAgICAgICA0Cj4gPiArI2RlZmluZSBCRE9G X0dSQURJRU5UX1NJWkUgICAgICAoQkRPRl9CTE9DS19TSVpFICsgQkRPRl9CT1JERVJfRVhUICog MikKPiA+ICsKPiA+ICsvKioKPiA+ICsgKiBWYWx1ZSBvZiB0aGUgbHVtYSBzYW1wbGUgYXQgcG9z aXRpb24gKHgsIHkpIGluIHRoZSAyRCBhcnJheSB0YWIuCj4gPiArICovCj4gPiArI2RlZmluZSBT QU1QTEUodGFiLCB4LCB5KSAoKHRhYilbKHkpICogcy0+c3BzLT53aWR0aCArICh4KV0pCj4gPiAr I2RlZmluZSBTQU1QTEVfQ1RCKHRhYiwgeCwgeSkgKCh0YWIpWyh5KSAqIG1pbl9jYl93aWR0aCAr ICh4KV0pCj4gPiArI2RlZmluZSBDVEIodGFiLCB4LCB5KSAoKHRhYilbKHkpICogZmMtPnBzLnBw cy0+Y3RiX3dpZHRoICsgKHgpXSkKPiA+ICsKPiA+ICt0eXBlZGVmIHN0cnVjdCBWVkNMb2NhbENv bnRleHQgVlZDTG9jYWxDb250ZXh0Owo+ID4gK3R5cGVkZWYgc3RydWN0IFNsaWNlQ29udGV4dCBT bGljZUNvbnRleHQ7Cj4gPiArdHlwZWRlZiBzdHJ1Y3QgVlZDRnJhbWVDb250ZXh0ICBWVkNGcmFt ZUNvbnRleHQ7Cj4gPiArdHlwZWRlZiBzdHJ1Y3QgVlZDRnJhbWVUaHJlYWQgVlZDRnJhbWVUaHJl YWQ7Cj4gPiArdHlwZWRlZiBzdHJ1Y3QgRW50cnlQb2ludCBFbnRyeVBvaW50Owo+ID4gK3R5cGVk ZWYgc3RydWN0IFZWQ1Rhc2sgVlZDVGFzazsKPiA+ICt0eXBlZGVmIHN0cnVjdCBNdiBNdjsKPiA+ ICt0eXBlZGVmIHN0cnVjdCBNdkZpZWxkIE12RmllbGQ7Cj4gPiArdHlwZWRlZiBzdHJ1Y3QgRE1W UkluZm8gRE1WUkluZm87Cj4gPiArdHlwZWRlZiBzdHJ1Y3QgQ1RVIENUVTsKPiA+ICt0eXBlZGVm IHN0cnVjdCBTQU9QYXJhbXMgU0FPUGFyYW1zOwo+ID4gK3R5cGVkZWYgc3RydWN0IEFMRlBhcmFt cyBBTEZQYXJhbXM7Cj4gPiArCj4gPiArdHlwZWRlZiBzdHJ1Y3QgUmVmUGljTGlzdCB7Cj4gPiAr ICAgIHN0cnVjdCBWVkNGcmFtZSAqcmVmW1ZWQ19NQVhfUkVGX0VOVFJJRVNdOwo+ID4gKyAgICBp bnQgbGlzdFtWVkNfTUFYX1JFRl9FTlRSSUVTXTsKPiA+ICsgICAgaW50IGlzTG9uZ1Rlcm1bVlZD X01BWF9SRUZfRU5UUklFU107Cj4gPiArICAgIGludCBuYl9yZWZzOwo+ID4gK30gUmVmUGljTGlz dDsKPiA+ICsKPiA+ICt0eXBlZGVmIHN0cnVjdCBSZWZQaWNMaXN0VGFiIHsKPiA+ICsgICAgUmVm UGljTGlzdCByZWZQaWNMaXN0WzJdOwo+ID4gK30gUmVmUGljTGlzdFRhYjsKPiA+ICsKPiA+ICt0 eXBlZGVmIHN0cnVjdCBWVkNGcmFtZSB7Cj4gPiArICAgIEFWRnJhbWUgKmZyYW1lOwo+ID4gKyAg ICBUaHJlYWRGcmFtZSB0ZjsKPgo+IFlvdSBhcmUgbm90IHVzaW5nIHRoZSBUaHJlYWRGcmFtZSBB UEkgYXQgYWxsOyB5b3UgY2FuIHNpbXBseSByZW1vdmUgdGhpcwo+IGJ5IHN3aXRjaGluZyB0byBm Zl90aHJlYWRfZ2V0X2J1ZmZlcigpIGluc3RlYWQgb2YKPiBmZl90aHJlYWRfZ2V0X2V4dF9idWZm ZXIoKS4KPgo+ID4gKwo+ID4gKyAgICBNdkZpZWxkICAqdGFiX2RtdnJfbXZmOwo+ID4gKyAgICBS ZWZQaWNMaXN0VGFiICoqcnBsX3RhYjsKPiA+ICsKPiA+ICsgICAgaW50IGN0Yl9jb3VudDsKPiA+ ICsKPiA+ICsgICAgaW50IHBvYzsKPiA+ICsKPiA+ICsgICAgc3RydWN0IFZWQ0ZyYW1lICpjb2xs b2NhdGVkX3JlZjsKPiA+ICsKPiA+ICsgICAgQVZCdWZmZXJSZWYgKnRhYl9kbXZyX212Zl9idWY7 Cj4gPiArICAgIEFWQnVmZmVyUmVmICpycGxfdGFiX2J1ZjsKPiA+ICsgICAgQVZCdWZmZXJSZWYg KnJwbF9idWY7Cj4gPiArICAgIEFWQnVmZmVyUmVmICpwcm9ncmVzc19idWY7Cj4gPiArCj4gPiAr ICAgIC8qKgo+ID4gKyAgICAgKiBBIHNlcXVlbmNlIGNvdW50ZXIsIHNvIHRoYXQgb2xkIGZyYW1l cyBhcmUgb3V0cHV0IGZpcnN0Cj4gPiArICAgICAqIGFmdGVyIGEgUE9DIHJlc2V0Cj4gPiArICAg ICAqLwo+ID4gKyAgICB1aW50MTZfdCBzZXF1ZW5jZTsKPiA+ICsgICAgLyoqCj4gPiArICAgICAq IEEgY29tYmluYXRpb24gb2YgVlZDX0ZSQU1FX0ZMQUdfKgo+ID4gKyAgICAgKi8KPiA+ICsgICAg dWludDhfdCBmbGFnczsKPiA+ICt9IFZWQ0ZyYW1lOwo+ID4gKwo+ID4gK3N0cnVjdCBTbGljZUNv bnRleHQgewo+ID4gKyAgICBpbnQgc2xpY2VfaWR4Owo+ID4gKyAgICBFbnRyeVBvaW50ICplcHM7 Cj4gPiArICAgIGludCBuYl9lcHM7Cj4gPiArICAgIFJlZlBpY0xpc3QgKnJwbDsKPiA+ICt9Owo+ ID4gKwo+ID4gK3N0cnVjdCBWVkNGcmFtZUNvbnRleHQgewo+ID4gKyAgICBBVkNvZGVjQ29udGV4 dCAqYXZjdHg7Cj4KPiBMb3RzIG9mIGZpbGVzIG9mIHRoZSBILjI2NCBhbmQgSEVWQyBkZWNvZGVy IGFjdHVhbGx5IGRvbid0IG5lZWQKPiBBVkNvZGVjQ29udGV4dCBhcyBjb21wbGV0ZSB0eXBlIGF0 IGFsbCwgdGhleSBjYW4gd29yayB3aXRoIGEgZm9yd2FyZAo+IGRlY2xhcmF0aW9uLiBJdCBpcyBw cm9iYWJseSB0aGUgc2FtZSBmb3IgdGhpcyBvbmUsIHNvIGNvdWxkIHlvdSB1c2UKPiBzdHJ1Y3Qg QVZDb2RlY0NvbnRleHQqIGluIHRoZSBoZWFkZXI/Cj4KPiA+ICsKPiA+ICsgICAgLy8gKzEgZm9y IHRoZSBjdXJyZW50IGZyYW1lCj4gPiArICAgIFZWQ0ZyYW1lIERQQltWVkNfTUFYX0RQQl9TSVpF ICsgMV07Cj4gPiArCj4gPiArICAgIEFWRnJhbWUgKmZyYW1lOwo+ID4gKyAgICBBVkZyYW1lICpv dXRwdXRfZnJhbWU7Cj4gPiArCj4gPiArICAgIFNsaWNlQ29udGV4dCAgKipzbGljZXM7Cj4gPiAr ICAgIGludCBuYl9zbGljZXM7Cj4gPiArICAgIGludCBuYl9zbGljZXNfYWxsb2NhdGVkOwo+ID4g Kwo+ID4gKyAgICBWVkNGcmFtZSAqcmVmOwo+ID4gKwo+ID4gKyAgICBWaWRlb0RTUENvbnRleHQg dmRzcDsKPiA+ICsKPiA+ICsgICAgVlZDRnJhbWVUaHJlYWQgKmZyYW1lX3RocmVhZDsKPiA+ICsK PiA+ICsgICAgdWludDY0X3QgZGVjb2RlX29yZGVyOwo+ID4gKwo+ID4gKyAgICBBVkJ1ZmZlclBv b2wgKnRhYl9kbXZyX212Zl9wb29sOwo+ID4gKyAgICBBVkJ1ZmZlclBvb2wgKnJwbF90YWJfcG9v bDsKPiA+ICsKPiA+ICsgICAgQVZCdWZmZXJQb29sICpjdV9wb29sOwo+ID4gKyAgICBBVkJ1ZmZl clBvb2wgKnR1X3Bvb2w7Cj4gPiArCj4gPiArICAgIHN0cnVjdCB7Cj4gPiArICAgICAgICBpbnQx Nl90ICpzbGljZV9pZHg7Cj4gPiArCj4gPiArICAgICAgICBETVZSSW5mbyAgKmRtdnI7Cj4gPiAr Cj4gPiArICAgICAgICBpbnQgICAgICpjYl9wb3NfeFsyXTsgICAgICAgICAgICAgICAgICAgICAg ICAgICAvLy88Cj4gQ2JQb3NYW11bXVtdCj4gPiArICAgICAgICBpbnQgICAgICpjYl9wb3NfeVsy XTsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLy88Cj4gQ2JQb3NZW11bXVtdCj4gPiArICAg ICAgICB1aW50OF90ICpjYl93aWR0aFsyXTsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLy88 Cj4gQ2JXaWR0aFtdW11bXQo+ID4gKyAgICAgICAgdWludDhfdCAqY2JfaGVpZ2h0WzJdOyAgICAg ICAgICAgICAgICAgICAgICAgICAgLy8vPAo+IENiSGVpZ2h0W11bXVtdCj4gPiArICAgICAgICB1 aW50OF90ICpjcXRfZGVwdGhbMl07ICAgICAgICAgICAgICAgICAgICAgICAgICAvLy88Cj4gQ3F0 RGVwdGhbXVtdW10KPiA+ICsgICAgICAgIGludDhfdCAgKnFwW1ZWQ19NQVhfU0FNUExFX0FSUkFZ U107Cj4gPiArCj4gPiArICAgICAgICB1aW50OF90ICpza2lwOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAvLy88Cj4gQ3VTa2lwRmxhZ1tdW10KPiA+ICsgICAgICAgIHVpbnQ4X3Qg KmlzcG1mOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vLzwKPiBpbnRyYV9zdWJf cGFydGl0aW9uc19tb2RlX2ZsYWcKPiA+ICsgICAgICAgIHVpbnQ4X3QgKm1zbVsyXTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC8vLzwKPiBNdHRTcGxpdE1vZGVbXVtdW10gaW4gMzIg cGl4ZWxzCj4gPiArICAgICAgICB1aW50OF90ICppbWY7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAvLy88Cj4gSW50cmFNaXBGbGFnW11bXQo+ID4gKyAgICAgICAgdWludDhfdCAq aW10ZjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8vPAo+IGludHJhX21pcF90 cmFuc3Bvc2VkX2ZsYWdbXVtdCj4gPiArICAgICAgICB1aW50OF90ICppbW07ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAvLy88Cj4gaW50cmFfbWlwX21vZGVbXVtdCj4gPiArICAg ICAgICB1aW50OF90ICppcG07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLy88 Cj4gSW50cmFQcmVkTW9kZVlbXVtdCj4gPiArICAgICAgICB1aW50OF90ICpjcG1bMl07ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLy88Cj4gQ3VQcmVkTW9kZVtdW11bXQo+ID4gKyAg ICAgICAgdWludDhfdCAqbXNmOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8v PAo+IE1lcmdlU3ViYmxvY2tGbGFnW11bXQo+ID4gKyAgICAgICAgdWludDhfdCAqaWFmOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8vPAo+IEludGVyQWZmaW5lRmxhZ1tdW10K PiA+ICsgICAgICAgIHVpbnQ4X3QgKm1taTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8vLzwKPiBNb3Rpb25Nb2RlbElkY1tdW10KPiA+ICsgICAgICAgIE12ICAgICAgKmNwX212 WzJdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vLzwKPiBDcE12TFhbXVtdW11bTUFY X0NPTlRST0xfUE9JTlRTXTsKPiA+ICsgICAgICAgIE12RmllbGQgKm12ZjsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8vLzwgTXZEbXZyTDAsCj4gTXZEbXZyTDEKPiA+ICsKPiA+ ICsgICAgICAgIHVpbnQ4X3QgKnR1X2NvZGVkX2ZsYWdbVlZDX01BWF9TQU1QTEVfQVJSQVlTXTsg IC8vLzwKPiB0dV95X2NvZGVkX2ZsYWdbXVtdLCAgdHVfY2JfY29kZWRfZmxhZ1tdW10sICB0dV9j cl9jb2RlZF9mbGFnW11bXQo+ID4gKyAgICAgICAgdWludDhfdCAqdHVfam9pbnRfY2Jjcl9yZXNp ZHVhbF9mbGFnOyAgICAgICAgICAgLy8vPAo+IHR1X2pvaW50X2NiY3JfcmVzaWR1YWxfZmxhZ1td W10KPiA+ICsgICAgICAgIGludCAgICAgKnRiX3Bvc194MFsyXTsKPiA+ICsgICAgICAgIGludCAg ICAgKnRiX3Bvc195MFsyXTsKPiA+ICsgICAgICAgIHVpbnQ4X3QgKnRiX3dpZHRoWzJdOwo+ID4g KyAgICAgICAgdWludDhfdCAqdGJfaGVpZ2h0WzJdOwo+ID4gKyAgICAgICAgdWludDhfdCAqcGNt ZlsyXTsKPiA+ICsKPiA+ICsgICAgICAgIHVpbnQ4X3QgKmhvcml6b250YWxfYnNbVlZDX01BWF9T QU1QTEVfQVJSQVlTXTsKPiA+ICsgICAgICAgIHVpbnQ4X3QgKnZlcnRpY2FsX2JzW1ZWQ19NQVhf U0FNUExFX0FSUkFZU107Cj4gPiArICAgICAgICB1aW50OF90ICpob3Jpem9udGFsX3A7ICAgICAg ICAgICAgICAgICAgICAgICAgICAvLy88IGhvcml6b250YWwKPiBtYXhGaWx0ZXJMZW5ndGhQcyBm b3IgbHVtYQo+ID4gKyAgICAgICAgdWludDhfdCAqaG9yaXpvbnRhbF9xOyAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8vPCBob3Jpem9udGFsCj4gbWF4RmlsdGVyTGVuZ3RoUHMgZm9yIGx1bWEK PiA+ICsgICAgICAgIHVpbnQ4X3QgKnZlcnRpY2FsX3A7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8vLzwgdmVydGljYWwKPiAgbWF4RmlsdGVyTGVuZ3RoUXMgZm9yIGx1bWEKPiA+ICsgICAg ICAgIHVpbnQ4X3QgKnZlcnRpY2FsX3E7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vLzwg dmVydGljYWwKPiAgbWF4RmlsdGVyTGVuZ3RoUXMgZm9yIGx1bWEKPiA+ICsKPiA+ICsgICAgICAg IHVpbnQ4X3QgKnNhb19waXhlbF9idWZmZXJfaFtWVkNfTUFYX1NBTVBMRV9BUlJBWVNdOwo+ID4g KyAgICAgICAgdWludDhfdCAqc2FvX3BpeGVsX2J1ZmZlcl92W1ZWQ19NQVhfU0FNUExFX0FSUkFZ U107Cj4gPiArICAgICAgICB1aW50OF90ICphbGZfcGl4ZWxfYnVmZmVyX2hbVlZDX01BWF9TQU1Q TEVfQVJSQVlTXVsyXTsKPiA+ICsgICAgICAgIHVpbnQ4X3QgKmFsZl9waXhlbF9idWZmZXJfdltW VkNfTUFYX1NBTVBMRV9BUlJBWVNdWzJdOwo+ID4gKwo+ID4gKyAgICAgICAgaW50ICAgICAqY29l ZmZzOwo+ID4gKyAgICAgICAgQ1RVICAgICAqY3R1czsKPiA+ICsKPiA+ICsgICAgICAgIC8vdXNl ZCBpbiBhcnJheXNfaW5pdCBvbmx5Cj4gPiArICAgICAgICBpbnQgY3R1X2NvdW50Owo+ID4gKyAg ICAgICAgaW50IGN0dV9zaXplOwo+ID4gKyAgICAgICAgaW50IHBpY19zaXplX2luX21pbl9jYjsK PiA+ICsgICAgICAgIGludCBwaWNfc2l6ZV9pbl9taW5fcHU7Cj4gPiArICAgICAgICBpbnQgcGlj X3NpemVfaW5fbWluX3R1Owo+ID4gKyAgICAgICAgaW50IGN0dV93aWR0aDsKPiA+ICsgICAgICAg IGludCBjdHVfaGVpZ2h0Owo+ID4gKyAgICAgICAgaW50IHdpZHRoOwo+ID4gKyAgICAgICAgaW50 IGhlaWdodDsKPiA+ICsgICAgICAgIGludCBjaHJvbWFfZm9ybWF0X2lkYzsKPiA+ICsgICAgICAg IGludCBwaXhlbF9zaGlmdDsKPiA+ICsgICAgICAgIGludCBic193aWR0aDsKPiA+ICsgICAgICAg IGludCBic19oZWlnaHQ7Cj4gPiArICAgIH0gdGFiOwo+ID4gK30gOwo+ID4gKwo+ID4gK3R5cGVk ZWYgc3RydWN0IFZWQ0NvbnRleHQgewo+ID4gKyAgICBjb25zdCBBVkNsYXNzICpjOyAgICAgICAv LyBuZWVkZWQgYnkgcHJpdmF0ZSBhdm9wdGlvbnMKPiA+ICsgICAgQVZDb2RlY0NvbnRleHQgKmF2 Y3R4Owo+ID4gKwo+ID4gKyAgICBDb2RlZEJpdHN0cmVhbUNvbnRleHQgKmNiYzsKPiA+ICsgICAg Q29kZWRCaXRzdHJlYW1GcmFnbWVudCBjdXJyZW50X2ZyYW1lOwo+ID4gKwo+ID4gKyAgICBpbnQg dGVtcG9yYWxfaWQ7ICAgICAgICAvLy88IHRlbXBvcmFsX2lkX3BsdXMxIC0gMQo+ID4gKyAgICBp bnQgcG9jX3RpZDA7Cj4gPiArCj4gPiArICAgIGludCBlb3M7ICAgICAgICAgICAgICAgIC8vLzwg Y3VycmVudCBwYWNrZXQgY29udGFpbnMgYW4gRU9TL0VPQiBOQUwKPiA+ICsgICAgaW50IGxhc3Rf ZW9zOyAgICAgICAgICAgLy8vPCBsYXN0IHBhY2tldCBjb250YWlucyBhbiBFT1MvRU9CIE5BTAo+ ID4gKwo+ID4gKwo+ID4gKyAgICBlbnVtIFZWQ05BTFVuaXRUeXBlIHZjbF91bml0X3R5cGU7Cj4g PiArICAgIGludCBub19vdXRwdXRfYmVmb3JlX3JlY292ZXJ5X2ZsYWc7IC8vLzwgTm9PdXRwdXRC ZWZvcmVSZWNvdmVyeUZsYWcKPiA+ICsgICAgaW50IGdkcl9yZWNvdmVyeV9wb2ludF9wb2M7ICAg ICAgICAgLy8vPCByZWNvdmVyeVBvaW50UG9jVmFsCj4gPiArCj4gPiArICAgIC8qKgo+ID4gKyAg ICAgKiBTZXF1ZW5jZSBjb3VudGVycyBmb3IgZGVjb2RlZCBhbmQgb3V0cHV0IGZyYW1lcywgc28g dGhhdCBvbGQKPiA+ICsgICAgICogZnJhbWVzIGFyZSBvdXRwdXQgZmlyc3QgYWZ0ZXIgYSBQT0Mg cmVzZXQKPiA+ICsgICAgICovCj4gPiArICAgIHVpbnQxNl90IHNlcV9kZWNvZGU7Cj4gPiArICAg IHVpbnQxNl90IHNlcV9vdXRwdXQ7Cj4gPiArCj4gPiArICAgIGludCBpc19uYWxmZjsgICAgICAg ICAgIC8vLzwgdGhpcyBmbGFnIGlzICE9IDAgaWYgYml0c3RyZWFtIGlzCj4gZW5jYXBzdWxhdGVk Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vLzwgYXMgYSBmb3JtYXQgZGVmaW5l ZCBpbiAxNDQ5Ni0xNQo+ID4gKwo+ID4gKyAgICBpbnQgYXBwbHlfZGVmZGlzcHdpbjsKPiA+ICsg ICAgaW50IG5hbF9sZW5ndGhfc2l6ZTsgICAgLy8vPCBOdW1iZXIgb2YgYnl0ZXMgdXNlZCBmb3Ig bmFsIGxlbmd0aAo+ICgxLCAyIG9yIDQpCj4gPiArCj4gPiArICAgIEFWRXhlY3V0b3IgKmV4ZWN1 dG9yOwo+Cj4gU2FtZSBhcyBhYm92ZSB3aXRoIEFWQ29kZWNDb250ZXh0OiBJdCBzZWVtcyBvbmx5 IHZ2Y190aHJlYWQuYyB3aWxsIGV2ZXIKPiBuZWVkIHRvIGhhdmUgZXhlY3V0b3IuaCBpbmNsdWRl ZCwgc28gYnkgdXNpbmcgc3RydWN0IEFWRXhlY3V0b3IgeW91IGNhbgo+IGF2b2lkIHRoZSBpbmNs dXNpb24uCj4KPiA+ICsKPiA+ICsgICAgVlZDRnJhbWVDb250ZXh0ICpmY3M7Cj4gPiArICAgIGlu dCBuYl9mY3M7Cj4gPiArCj4gPiArICAgIHVpbnQ2NF90IG5iX2ZyYW1lczsgICAgIC8vLzwgcHJv Y2Vzc2VkIGZyYW1lcwo+ID4gKyAgICBpbnQgbmJfZGVsYXllZDsgICAgICAgICAvLy88IGRlbGF5 ZWQgZnJhbWVzCj4gPiArfSAgVlZDQ29udGV4dCA7Cj4gPiArCj4gPiArI2VuZGlmIC8qIEFWQ09E RUNfVlZDREVDX0ggKi8KPgpIaSBBbmRyZWFzLApUaGFuayB5b3UgZm9yIGFsbCB0aGUgY29tbWVu dHMsIEkgd2lsbCBjaGVjayBpdCBsYXRlci4KCj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+IGZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBmZm1w ZWctZGV2ZWxAZmZtcGVnLm9yZwo+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ZmbXBlZy1kZXZlbAo+Cj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVt YWlsCj4gZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vi c2NyaWJlIi4KPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBz Oi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3Jp YmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBl Zy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==