From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id C5ABF4C01D for ; Wed, 3 Sep 2025 01:51:56 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'Dh7qjJRVeFG1UrH5bVs8i+gIjZNImbIUnXnFYrNXNMU=', expected b'ZGXX6Yxkztw39nH6AGa9VD/wTir+yQUhOO6tt1sinss=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1756864277; h=content-type : mime-version : to : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-transfer-encoding : from; bh=Dh7qjJRVeFG1UrH5bVs8i+gIjZNImbIUnXnFYrNXNMU=; b=VPsETDsE96eYidBbAbrgnlBjJYK7/Xz65a5llkogdAP/z2xGkIfElWhrCvFnsdAwnNSwe Atv0Z++fbAJarHoTfYKZdAyxWJb7+GDBeN/dNQZMDEOrArDa7qtyYO4mO8gzqW/pdfojYot 4vVkC36Qmib6uQ8CJdCV14dnGn8eRww6GoKGaNun4I4LtJFOOOO0B8u6IIC7piJpQDpsU+F hqTO/bswV7wFKUr/Xom2isg174iHFH64vozGOH7HIym//j+7QmALrEs4Yxla0vf4ftf9KLT E02irGLWMRRNRNcfbdG5LGQOjBOnmJS/+S1EZdJ6wGHmYPPv+v/VIi8O64Qg== Received: from [172.19.0.4] (unknown [172.19.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 1FE8F68E7AC; Wed, 3 Sep 2025 04:51:17 +0300 (EEST) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1756864265; b=pzPQraPLU3Jzf7K0uLp7QGZDpJIwPQ/D8yFuqCd3x7Ax6P2QAOybE/4jlo9Z0yy9u7FaU 3qjgGHOPt2a0ASVirb6onVRJ3ph8hdlI1oQD+HXCxwhsydLiwZJym1WsXMm/OFKVr64ZZwP RMfQzGDPmsG/gdZWnEjx5zvZ6VA1S5QoBsfMwhX0oWrfuFV3WQVsdscvD//JFvM7k+T8W5T aEV9T+3kpzTLm/soGvRpWp9loo2VkSbcEowN+JnRGd93RJCgrYhcJTaTNU7DleJjdXN65SA EHYBtFX0wkQaxGkZBxEsYct8/Ve2C0tLBH5TSUcLJWp0/+SQzWxeqPGg0ung== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1756864265; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=Dh7qjJRVeFG1UrH5bVs8i+gIjZNImbIUnXnFYrNXNMU=; b=dsPnJzc6VqO+UTYFfoeqgru9jo105dy2Xayvw+N4FPILwWSv145xvz4jInoGuvDuiz8qF eGpZxruLWV6EB3yLzCY4kpwp5/Kys9ZqTUPdrcFQ8WDHmWW8k8piZQ+wnE230AyLbxcVUrW oNr+lRARFiryhg9XaODF/tda3eOPf/2KaMI7VMkurOZKHsuAwjR8l5Ds8NzOnX5g9iRKZJ2 gbKLkNJsszblVzVg8ydhdDwKGI3FQFnrXDIe0SRJBINR9F72hop/tH+M/lnPD+7RHjI+nHi DvuSdZAc/HnCCDIh6vq1LwADizpqkMuMoMsGjlKyD9W1dyqwSR6fT0r2y3Ig== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=none Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1756864256; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : from; bh=ZGXX6Yxkztw39nH6AGa9VD/wTir+yQUhOO6tt1sinss=; b=ys6dwHLzJErLuGGZwVdlvmOYL4XkO9UzmT0qp0fiv2vBgir3e1R5sEqSs+J9Fj3fxRckD rUbZkDr7Yfe4RXpqY2GgiPoobjKyicbkyIFOxm20kQoUyy8Hozco9zgQCFSx4mgCHd0j8HU IbWk3A/fdzNAVZLWYbeDX7ZmRpgjjhCPsLqpwEuvz8uI60lFUAD0JcjzkUsI1W/LpjyPTBI uC/LtqglgRi9lj5CmX69A+9EFAurNHRYoyPUXzI6EKNTvYfLudus0WfavYv+7b4GXRgAAVh bTVialPKGa5kJ614At6z5JKtc5/klklIdAaC6prSZJ2AN26oRV/rlYtz9KkQ== Received: from 5d8f51c41678 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 06A3468E72F for ; Wed, 3 Sep 2025 04:50:55 +0300 (EEST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Message-ID: <175686425625.25.15885250281461158294@463a07221176> Message-ID-Hash: 3Z42SESD33IIP7II4FGUWE6X7IHZ67JS X-Message-ID-Hash: 3Z42SESD33IIP7II4FGUWE6X7IHZ67JS X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH] avcodec/cbrt_tablegen: Avoid static array used only once (PR #20404) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: mkver via ffmpeg-devel Cc: mkver Content-Transfer-Encoding: base64 Archived-At: List-Archive: List-Post: UFIgIzIwNDA0IG9wZW5lZCBieSBta3ZlcgpVUkw6IGh0dHBzOi8vY29kZS5mZm1wZWcub3JnL0ZG bXBlZy9GRm1wZWcvcHVsbHMvMjA0MDQKUGF0Y2ggVVJMOiBodHRwczovL2NvZGUuZmZtcGVnLm9y Zy9GRm1wZWcvRkZtcGVnL3B1bGxzLzIwNDA0LnBhdGNoCgpBbHNvIGZpeCBidWlsZGluZyB3aXRo IGhhcmRjb2RlZCB0YWJsZXMsIHdoaWNoIGhhcyBiZWVuIGJyb2tlbiBieSAjMjAzNDQuCgoKRnJv bSBhM2UyMmQyYzM5NDIwMmNlZjUyYmVlMDc3ZDIyMTMyNzk2Y2JhOTVjIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBv dXRsb29rLmNvbT4KRGF0ZTogV2VkLCAzIFNlcCAyMDI1IDAxOjQ4OjU1ICswMjAwClN1YmplY3Q6 IFtQQVRDSCAxLzVdIGF2Y29kZWMvcGNtX3RhYmxlZ2VuOiBGaXggQ09ORklHX0hBUkRDT0RFRF9U QUJMRVMKCkJyb2tlbiBpbiBhZTQ0OGUwMGFmYjQzZDdmNzJkZmE5YzgyYTRjNDU5OTRlNGZlYTZh LgpOb3RpY2UgdGhhdCBjb25maWdfY29tcG9uZW50cy5oIGlzIHNhZmUgdG8gaW5jbHVkZSwKYXMg aXQgaXMgdmFsaWQgZm9yIGJvdGggdGhlIGhvc3QgYW5kIHRoZSB0YXJnZXQKKGluIGNvbnRyYXN0 IHRvIGNvbmZpZy5oKS4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVh cy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvcGNtX3RhYmxlZ2VuLmgg fCAxICsKIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvcGNtX3RhYmxlZ2VuLmggYi9saWJhdmNvZGVjL3BjbV90YWJsZWdlbi5oCmluZGV4IDU5 MGJhNTk4MTQuLjYwZWY5NjU2ZDUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcGNtX3RhYmxlZ2Vu LmgKKysrIGIvbGliYXZjb2RlYy9wY21fdGFibGVnZW4uaApAQCAtMjQsNiArMjQsNyBAQAogI2Rl ZmluZSBBVkNPREVDX1BDTV9UQUJMRUdFTl9ICiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNs dWRlICJjb25maWdfY29tcG9uZW50cy5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC9hdHRyaWJ1dGVz LmgiCiAKIC8qIGZyb20gZzcxMS5jIGJ5IFNVTiBtaWNyb3N5c3RlbXMgKHVucmVzdHJpY3RlZCB1 c2UpICovCi0tIAoyLjQ5LjEKCgpGcm9tIDc0ZjdjMjZiZWJhODg4OWQ2NDI3ZmZlODNlM2FmYzg0 ODAzYmM3MWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEFuZHJlYXMgUmhlaW5oYXJk dCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDIgU2VwIDIwMjUg MTc6MTk6MDQgKzAyMDAKU3ViamVjdDogW1BBVENIIDIvNV0gYXZjb2RlYy9jYnJ0X3RhYmxlZ2Vu OiBSZW1vdmUgYWx3YXlzLWZhbHNlIGJyYW5jaAoKRWFjaCBmZl9jYnJ0X3RhYmxlaW5pdCooKSBp cyBjYWxsZWQgYXQgbW9zdCBvbmNlLCBtYWtpbmcgdGhpcwpjaGVjayBhbHdheXMtZmFsc2UuCgpT aWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRs b29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaCB8IDIgLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvY2JydF90YWJs ZWdlbi5oIGIvbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuLmgKaW5kZXggOWFmMThkOGFiNS4uZmFl NWQ1NDdhYSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuLmgKKysrIGIvbGli YXZjb2RlYy9jYnJ0X3RhYmxlZ2VuLmgKQEAgLTQwLDcgKzQwLDYgQEAgdWludDMyX3QgQUFDX1JF TkFNRShmZl9jYnJ0X3RhYilbMSA8PCAxM107CiBhdl9jb2xkIHZvaWQgQUFDX1JFTkFNRShmZl9j YnJ0X3RhYmxlaW5pdCkodm9pZCkKIHsKICAgICBzdGF0aWMgZG91YmxlIGNicnRfdGFiX2RibFsx IDw8IDEzXTsKLSAgICBpZiAoIUFBQ19SRU5BTUUoZmZfY2JydF90YWIpWygxPDwxMykgLSAxXSkg ewogICAgICAgICBpbnQgaSwgaiwgazsKICAgICAgICAgZG91YmxlIGNicnRfdmFsOwogCkBAIC02 Nyw3ICs2Niw2IEBAIGF2X2NvbGQgdm9pZCBBQUNfUkVOQU1FKGZmX2NicnRfdGFibGVpbml0KSh2 b2lkKQogCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCAxPDwxMzsgaSsrKQogICAgICAgICAgICAg QUFDX1JFTkFNRShmZl9jYnJ0X3RhYilbaV0gPSBDQlJUKGNicnRfdGFiX2RibFtpXSk7Ci0gICAg fQogfQogCiAjZW5kaWYgLyogQVZDT0RFQ19DQlJUX1RBQkxFR0VOX0ggKi8KLS0gCjIuNDkuMQoK CkZyb20gODhjM2Q5YzkxNzk4MjZkMjMzNjliOWIxNjk5ZTZmZmM0ZTE4YzNhYSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFy ZHRAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMiBTZXAgMjAyNSAyMDo0NzoyMSArMDIwMApTdWJq ZWN0OiBbUEFUQ0ggMy81XSBhdmNvZGVjL2NicnRfdGFibGVnZW46IFJlZHVjZSBzaXplIG9mIExV VCBvbmx5IHVzZWQgb25jZQoKZmZfY2JydF90YWJsZWluaXR7LF9maXhlZH0oKSB1c2VzIGEgTFVU IG9mIGRvdWJsZXMgb2YgdGhlIHNhbWUgc2l6ZQphcyB0aGUgYWN0dWFsIExVVCB0byBiZSBpbml0 aWFsaXplZCAoODE5MiBlbGVtcykuIFNhaWQgTFVUIGlzIG9ubHkKdXNlZCB0byBpbml0aWFsaXpl IGFub3RoZXIgTFVULCBidXQgYmVjYXVzZSBpdCBpcyBzdGF0aWMsIHRoZSBkaXJ0eQptZW1vcnkg KDY0S2lCKSBpcyBub3QgcmVsZWFzZWQuIEl0IGlzIGFsc28gdG9vIGxhcmdlIHRvIGJlIHB1dCBv bgp0aGUgc3RhY2suCgpUaGlzIGNvbW1pdCBtaXRpZ2F0ZXMgdGhpczogV2Ugb25seSB1c2UgYSBM VVQgZm9yIHRoZSBwb3dlcnMgb2YKb2RkIHZhbHVlcywgdGhlcmVieSBoYWx2aW5nIGl0cyBzaXpl LiBUaGUgZ2VuZXJhdGVkIExVVCBzdGF5cyB1bmNoYW5nZWQuCgpTaWduZWQtb2ZmLWJ5OiBBbmRy ZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJh dmNvZGVjL2NicnRfdGFibGVnZW4uaCB8IDU4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuLmggYi9saWJhdmNvZGVj L2NicnRfdGFibGVnZW4uaAppbmRleCBmYWU1ZDU0N2FhLi41M2ZmNzlmNTcwIDEwMDY0NAotLS0g YS9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaAorKysgYi9saWJhdmNvZGVjL2NicnRfdGFibGVn ZW4uaApAQCAtMzUsMzcgKzM1LDUzIEBACiAjZGVmaW5lIENCUlQoeCkgYXZfZmxvYXQyaW50KChm bG9hdCkoeCkpCiAjZW5kaWYKIAotdWludDMyX3QgQUFDX1JFTkFNRShmZl9jYnJ0X3RhYilbMSA8 PCAxM107CisjZGVmaW5lIExVVF9TSVpFICAgICAoMSA8PCAxMykKKyNkZWZpbmUgVE1QX0xVVF9T SVpFIChMVVRfU0laRS8yKQorCit1aW50MzJfdCBBQUNfUkVOQU1FKGZmX2NicnRfdGFiKVtMVVRf U0laRV07CiAKIGF2X2NvbGQgdm9pZCBBQUNfUkVOQU1FKGZmX2NicnRfdGFibGVpbml0KSh2b2lk KQogewotICAgIHN0YXRpYyBkb3VibGUgY2JydF90YWJfZGJsWzEgPDwgMTNdOwotICAgICAgICBp bnQgaSwgaiwgazsKLSAgICAgICAgZG91YmxlIGNicnRfdmFsOworICAgIC8vIExVVCBvZiBrXns0 LzN9IGZvciBvZGQgazsgZWxlbWVudCBpZHggY29ycmVzcG9uZHMgdG8gMiAqIGlkeCArIDEuCisg ICAgc3RhdGljIGRvdWJsZSBjYnJ0X3RhYl9kYmxbVE1QX0xVVF9TSVpFXTsKIAotICAgICAgICBm b3IgKGkgPSAxOyBpIDwgMTw8MTM7IGkrKykKLSAgICAgICAgICAgIGNicnRfdGFiX2RibFtpXSA9 IDE7CisgICAgZm9yIChpbnQgaWR4ID0gMDsgaWR4IDwgVE1QX0xVVF9TSVpFOyArK2lkeCkKKyAg ICAgICAgY2JydF90YWJfZGJsW2lkeF0gPSAxOwogCi0gICAgICAgIC8qIGhhdmUgdG8gdGFrZSBj YXJlIG9mIG5vbi1zcXVhcmVmcmVlIG51bWJlcnMgKi8KLSAgICAgICAgZm9yIChpID0gMjsgaSA8 IDkwOyBpKyspIHsKLSAgICAgICAgICAgIGlmIChjYnJ0X3RhYl9kYmxbaV0gPT0gMSkgewotICAg ICAgICAgICAgICAgIGNicnRfdmFsID0gaSAqIGNicnQoaSk7Ci0gICAgICAgICAgICAgICAgZm9y IChrID0gaTsgayA8IDE8PDEzOyBrICo9IGkpCi0gICAgICAgICAgICAgICAgICAgIGZvciAoaiA9 IGs7IGogPCAxPDwxMzsgaiArPSBrKQotICAgICAgICAgICAgICAgICAgICAgICAgY2JydF90YWJf ZGJsW2pdICo9IGNicnRfdmFsOworICAgIC8qIGhhdmUgdG8gdGFrZSBjYXJlIG9mIG5vbi1zcXVh cmVmcmVlIG51bWJlcnM7IG5vdGljZSB0aGF0IHNxcnQoTFVUX1NJWkUpID0gOTA7CisgICAgICog aWR4ID09IDQ0IGNvcnJlc3BvbmRzIHRvIDg5LiAqLworICAgIGZvciAoaW50IGlkeCA9IDE7IGlk eCA8IDQ1OyArK2lkeCkgeworICAgICAgICBpZiAoY2JydF90YWJfZGJsW2lkeF0gPT0gMSkgewor ICAgICAgICAgICAgaW50IGkgPSAyICogaWR4ICsgMTsKKyAgICAgICAgICAgIGRvdWJsZSBjYnJ0 X3ZhbCA9IGkgKiBjYnJ0KGkpOworICAgICAgICAgICAgZm9yIChpbnQgayA9IGk7IGsgPCBMVVRf U0laRTsgayAqPSBpKSB7CisgICAgICAgICAgICAgICAgLy8gV2Ugb25seSBoYXZlIHRvIGhhbmRs ZSBrLCAzICogaywgNSAqIGssLi4uLAorICAgICAgICAgICAgICAgIC8vIGJlY2F1c2Ugb25seSB0 aGVzZSBhcmUgb2RkLiBUaGUgY29ycmVzcG9uZGluZyBpbmRpY2VzIGFyZQorICAgICAgICAgICAg ICAgIC8vIGsgPj4gMSwgKGsgPj4gMSkgKyBrLCAoayA+PiAxKSArIDIgKiBrLC4uLgorICAgICAg ICAgICAgICAgIGZvciAoaW50IGlkeDIgPSBrID4+IDE7IGlkeDIgPCBUTVBfTFVUX1NJWkU7IGlk eDIgKz0gaykKKyAgICAgICAgICAgICAgICAgICAgY2JydF90YWJfZGJsW2lkeDJdICo9IGNicnRf dmFsOwogICAgICAgICAgICAgfQogICAgICAgICB9CisgICAgfQogCi0gICAgICAgIGZvciAoaSA9 IDkxOyBpIDw9IDgxOTE7IGkrPSAyKSB7Ci0gICAgICAgICAgICBpZiAoY2JydF90YWJfZGJsW2ld ID09IDEpIHsKLSAgICAgICAgICAgICAgICBjYnJ0X3ZhbCA9IGkgKiBjYnJ0KGkpOwotICAgICAg ICAgICAgICAgIGZvciAoaiA9IGk7IGogPCAxPDwxMzsgaiArPSBpKQotICAgICAgICAgICAgICAg ICAgICBjYnJ0X3RhYl9kYmxbal0gKj0gY2JydF92YWw7Ci0gICAgICAgICAgICB9CisgICAgZm9y IChpbnQgaWR4ID0gNDU7IGlkeCA8IFRNUF9MVVRfU0laRTsgKytpZHgpIHsKKyAgICAgICAgaWYg KGNicnRfdGFiX2RibFtpZHhdID09IDEpIHsKKyAgICAgICAgICAgIGludCBpID0gMiAqIGlkeCAr IDE7CisgICAgICAgICAgICBkb3VibGUgY2JydF92YWwgPSBpICogY2JydChpKTsKKyAgICAgICAg ICAgIGZvciAoaW50IGlkeDIgPSBpZHg7IGlkeDIgPCBUTVBfTFVUX1NJWkU7IGlkeDIgKz0gaSkK KyAgICAgICAgICAgICAgICBjYnJ0X3RhYl9kYmxbaWR4Ml0gKj0gY2JydF92YWw7CiAgICAgICAg IH0KKyAgICB9CiAKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IDE8PDEzOyBpKyspCi0gICAgICAg ICAgICBBQUNfUkVOQU1FKGZmX2NicnRfdGFiKVtpXSA9IENCUlQoY2JydF90YWJfZGJsW2ldKTsK KyAgICBkb3VibGUgY2JydF8yID0gMiAqIGNicnQoMik7CisgICAgZm9yIChpbnQgaWR4ID0gMDsg aWR4IDwgVE1QX0xVVF9TSVpFOyArK2lkeCkgeworICAgICAgICBkb3VibGUgY2JydF92YWwgPSBj YnJ0X3RhYl9kYmxbaWR4XTsKKyAgICAgICAgZm9yIChpbnQgaSA9IDIgKiBpZHggKyAxOyBpIDwg TFVUX1NJWkU7IGkgKj0gMikgeworICAgICAgICAgICAgQUFDX1JFTkFNRShmZl9jYnJ0X3RhYilb aV0gPSBDQlJUKGNicnRfdmFsKTsKKyAgICAgICAgICAgIGNicnRfdmFsICo9IGNicnRfMjsKKyAg ICAgICAgfQorICAgIH0KKyAgICBBQUNfUkVOQU1FKGZmX2NicnRfdGFiKVswXSA9IENCUlQoMCk7 CiB9CiAKICNlbmRpZiAvKiBBVkNPREVDX0NCUlRfVEFCTEVHRU5fSCAqLwotLSAKMi40OS4xCgoK RnJvbSAxYWE3ZDM0NTQxMjYzNjA4MDE5MDA4MzIwMzI3MTMyMjRiNjMwOGFkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAyIFNlcCAyMDI1IDIzOjA2OjMyICswMjAwClN1Ympl Y3Q6IFtQQVRDSCA0LzVdIGF2Y29kZWMvY2JydF90YWJsZWdlbjogQXZvaWQgTFVUIG9ubHkgdXNl ZCBvbmNlCgpUaGlzIGNhbiBiZSBkb25lIGJ5IHJldXNpbmcgdGhlIGRlc3RpbmF0aW9uIGFycmF5 IHRvIHN0b3JlCmEgdGVtcG9yYXJ5IExVVCAod2l0aCBvbmx5IGhhbGYgdGhlIGFtb3VudCBvZiBl bGVtZW50cywgYnV0CmRvdWJsZSB0aGUgZWxlbWVudCBzaXplKS4gVGhpcyByZWxpZXMgb24gY2Vy dGFpbiBhc3N1bXB0aW9ucwphYm91dCBzaXplcywgYnV0IHRoZXkgYXJlIGFsd2F5cyBmdWxmaWxs ZWQgZm9yIHN5c3RlbXMgc3VwcG9ydGVkCmJ5IHVzIChzaXplb2YoZG91YmxlKSA9PSA4IGlzIG5l ZWRlZC9ndWFyYW50ZWVkIHNpbmNlIGNvbW1pdAozMzgzYTUzZTdkMGFiYjk2MzljM2VhMzQ4MWYw ZWRhOWRjYTYxYTI2KS4gRnVydGhlcm1vcmUsCnNpemVvZih1aW50MzJfdCkgaXMgYWx3YXlzID49 IGZvdXIgYmVjYXVzZSBDSEFSX0JJVCBpcyBlaWdodAooaW4gZmFjdCwgc2l6ZW9mKHVpbnQzMl90 KSBpcyBmb3VyLCBiZWNhdXNlIHRoZSBleGFjdCB3aWR0aAp0eXBlcyBkb24ndCBoYXZlIGFueSBw YWRkaW5nKS4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVp bmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvY2JydF9kYXRhLmggICAgICAgICAg ICAgIHwgMjUgKysrKysrKysrKysrKysrLS0tLS0KIGxpYmF2Y29kZWMvY2JydF90YWJsZWdlbi5o ICAgICAgICAgIHwgMzYgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIGxpYmF2Y29kZWMv Y2JydF90YWJsZWdlbl90ZW1wbGF0ZS5jIHwgIDIgKy0KIDMgZmlsZXMgY2hhbmdlZCwgNDEgaW5z ZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9jYnJ0 X2RhdGEuaCBiL2xpYmF2Y29kZWMvY2JydF9kYXRhLmgKaW5kZXggODkxMTdmODViMy4uYmY4NGRj YTEwZCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9jYnJ0X2RhdGEuaAorKysgYi9saWJhdmNvZGVj L2NicnRfZGF0YS5oCkBAIC0yMywxOCArMjMsMzEgQEAKIAogI2luY2x1ZGUgPHN0ZGludC5oPgog Ci0jaW5jbHVkZSAiY29uZmlnLmgiCisjZGVmaW5lIExVVF9TSVpFICAgICAoMSA8PCAxMykKIAot I2lmIENPTkZJR19IQVJEQ09ERURfVEFCTEVTCisjaWZuZGVmIEJVSUxEX1RBQkxFUworI2luY2x1 ZGUgImNvbmZpZy5oIgorI2RlZmluZSBCVUlMRF9UQUJMRVMgIUNPTkZJR19IQVJEQ09ERURfVEFC TEVTCisjZW5kaWYKKworI2lmICFCVUlMRF9UQUJMRVMKICNkZWZpbmUgZmZfY2JydF90YWJsZWlu aXRfZml4ZWQoKQogI2RlZmluZSBmZl9jYnJ0X3RhYmxlaW5pdCgpCi1leHRlcm4gY29uc3QgdWlu dDMyX3QgZmZfY2JydF90YWJbMSA8PCAxM107Ci1leHRlcm4gY29uc3QgdWludDMyX3QgZmZfY2Jy dF90YWJfZml4ZWRbMSA8PCAxM107CitleHRlcm4gY29uc3QgdWludDMyX3QgZmZfY2JydF90YWJb TFVUX1NJWkVdOworZXh0ZXJuIGNvbnN0IHVpbnQzMl90IGZmX2NicnRfdGFiX2ZpeGVkW0xVVF9T SVpFXTsKICNlbHNlCiB2b2lkIGZmX2NicnRfdGFibGVpbml0KHZvaWQpOwogdm9pZCBmZl9jYnJ0 X3RhYmxlaW5pdF9maXhlZCh2b2lkKTsKLWV4dGVybiB1aW50MzJfdCBmZl9jYnJ0X3RhYlsxIDw8 IDEzXTsKLWV4dGVybiB1aW50MzJfdCBmZl9jYnJ0X3RhYl9maXhlZFsxIDw8IDEzXTsKKworI2Rl ZmluZSBUTVBfTFVUX1NJWkUgKExVVF9TSVpFIC8gMikKKworZXh0ZXJuIHVuaW9uIENCUlQgewor ICAgIHVpbnQzMl90IGNicnRfdGFiW0xVVF9TSVpFXTsKKyAgICBkb3VibGUgdG1wW1RNUF9MVVRf U0laRV07Cit9IGZmX2NicnRfdGFiX2ludGVybmFsLCBmZl9jYnJ0X3RhYl9pbnRlcm5hbF9maXhl ZDsKKworI2RlZmluZSBmZl9jYnJ0X3RhYiAgICAgICBmZl9jYnJ0X3RhYl9pbnRlcm5hbC5jYnJ0 X3RhYgorI2RlZmluZSBmZl9jYnJ0X3RhYl9maXhlZCBmZl9jYnJ0X3RhYl9pbnRlcm5hbF9maXhl ZC5jYnJ0X3RhYgogI2VuZGlmCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9jYnJ0 X3RhYmxlZ2VuLmggYi9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaAppbmRleCA1M2ZmNzlmNTcw Li5iYzA0MGE4N2U2IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaAorKysg Yi9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaApAQCAtMjMsMTEgKzIzLDEzIEBACiAjaWZuZGVm IEFWQ09ERUNfQ0JSVF9UQUJMRUdFTl9ICiAjZGVmaW5lIEFWQ09ERUNfQ0JSVF9UQUJMRUdFTl9I CiAKKyNpbmNsdWRlIDxhc3NlcnQuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxt YXRoLmg+CiAjaW5jbHVkZSAibGliYXZ1dGlsL2F0dHJpYnV0ZXMuaCIKICNpbmNsdWRlICJsaWJh dnV0aWwvaW50ZmxvYXQuaCIKICNpbmNsdWRlICJsaWJhdmNvZGVjL2FhY19kZWZpbmVzLmgiCisj aW5jbHVkZSAiY2JydF9kYXRhLmgiCiAKICNpZiBVU0VfRklYRUQKICNkZWZpbmUgQ0JSVCh4KSBs cmludCgoeCkgKiA4MTkyKQpAQCAtMzUsMjMgKzM3LDIzIEBACiAjZGVmaW5lIENCUlQoeCkgYXZf ZmxvYXQyaW50KChmbG9hdCkoeCkpCiAjZW5kaWYKIAotI2RlZmluZSBMVVRfU0laRSAgICAgKDEg PDwgMTMpCi0jZGVmaW5lIFRNUF9MVVRfU0laRSAoTFVUX1NJWkUvMikKLQotdWludDMyX3QgQUFD X1JFTkFNRShmZl9jYnJ0X3RhYilbTFVUX1NJWkVdOwordW5pb24gQ0JSVCBBQUNfUkVOQU1FKGZm X2NicnRfdGFiX2ludGVybmFsKTsKIAogYXZfY29sZCB2b2lkIEFBQ19SRU5BTUUoZmZfY2JydF90 YWJsZWluaXQpKHZvaWQpCiB7Ci0gICAgLy8gTFVUIG9mIGteezQvM30gZm9yIG9kZCBrOyBlbGVt ZW50IGlkeCBjb3JyZXNwb25kcyB0byAyICogaWR4ICsgMS4KLSAgICBzdGF0aWMgZG91YmxlIGNi cnRfdGFiX2RibFtUTVBfTFVUX1NJWkVdOworICAgIHN0YXRpY19hc3NlcnQoMiAqIHNpemVvZihB QUNfUkVOQU1FKGZmX2NicnRfdGFiX2ludGVybmFsKS5jYnJ0X3RhYlswXSkKKyAgICAgICAgICAg ICAgICAgID49IHNpemVvZihBQUNfUkVOQU1FKGZmX2NicnRfdGFiX2ludGVybmFsKS50bXBbMF0p LAorICAgICAgICAgICAgICAgICAgInVuZXhwZWN0ZWQgc2l6ZW9mcyIpOworICAgIC8vIFdlIHJl dXNlIGZmX2NicnRfdGFiX2ludGVybmFsLnRtcCBhcyBhIExVVCAob2YgZG91YmxlcykgZm9yIHRo ZSByb290cworICAgIC8vIG9mIHRoZSBvZGQgaW50ZWdlcnM6IHRtcFtpZHhdIGNvbnRhaW5zICgy ICogaWR4ICsgMSleezQvM30uCiAKICAgICBmb3IgKGludCBpZHggPSAwOyBpZHggPCBUTVBfTFVU X1NJWkU7ICsraWR4KQotICAgICAgICBjYnJ0X3RhYl9kYmxbaWR4XSA9IDE7CisgICAgICAgIEFB Q19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwpLnRtcFtpZHhdID0gMTsKIAogICAgIC8qIGhh dmUgdG8gdGFrZSBjYXJlIG9mIG5vbi1zcXVhcmVmcmVlIG51bWJlcnM7IG5vdGljZSB0aGF0IHNx cnQoTFVUX1NJWkUpID0gOTA7CiAgICAgICogaWR4ID09IDQ0IGNvcnJlc3BvbmRzIHRvIDg5LiAq LwogICAgIGZvciAoaW50IGlkeCA9IDE7IGlkeCA8IDQ1OyArK2lkeCkgewotICAgICAgICBpZiAo Y2JydF90YWJfZGJsW2lkeF0gPT0gMSkgeworICAgICAgICBpZiAoQUFDX1JFTkFNRShmZl9jYnJ0 X3RhYl9pbnRlcm5hbCkudG1wW2lkeF0gPT0gMSkgewogICAgICAgICAgICAgaW50IGkgPSAyICog aWR4ICsgMTsKICAgICAgICAgICAgIGRvdWJsZSBjYnJ0X3ZhbCA9IGkgKiBjYnJ0KGkpOwogICAg ICAgICAgICAgZm9yIChpbnQgayA9IGk7IGsgPCBMVVRfU0laRTsgayAqPSBpKSB7CkBAIC01OSwy OSArNjEsMzMgQEAgYXZfY29sZCB2b2lkIEFBQ19SRU5BTUUoZmZfY2JydF90YWJsZWluaXQpKHZv aWQpCiAgICAgICAgICAgICAgICAgLy8gYmVjYXVzZSBvbmx5IHRoZXNlIGFyZSBvZGQuIFRoZSBj b3JyZXNwb25kaW5nIGluZGljZXMgYXJlCiAgICAgICAgICAgICAgICAgLy8gayA+PiAxLCAoayA+ PiAxKSArIGssIChrID4+IDEpICsgMiAqIGssLi4uCiAgICAgICAgICAgICAgICAgZm9yIChpbnQg aWR4MiA9IGsgPj4gMTsgaWR4MiA8IFRNUF9MVVRfU0laRTsgaWR4MiArPSBrKQotICAgICAgICAg ICAgICAgICAgICBjYnJ0X3RhYl9kYmxbaWR4Ml0gKj0gY2JydF92YWw7CisgICAgICAgICAgICAg ICAgICAgIEFBQ19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwpLnRtcFtpZHgyXSAqPSBjYnJ0 X3ZhbDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIAogICAgIGZvciAoaW50IGlk eCA9IDQ1OyBpZHggPCBUTVBfTFVUX1NJWkU7ICsraWR4KSB7Ci0gICAgICAgIGlmIChjYnJ0X3Rh Yl9kYmxbaWR4XSA9PSAxKSB7CisgICAgICAgIGlmIChBQUNfUkVOQU1FKGZmX2NicnRfdGFiX2lu dGVybmFsKS50bXBbaWR4XSA9PSAxKSB7CiAgICAgICAgICAgICBpbnQgaSA9IDIgKiBpZHggKyAx OwogICAgICAgICAgICAgZG91YmxlIGNicnRfdmFsID0gaSAqIGNicnQoaSk7CiAgICAgICAgICAg ICBmb3IgKGludCBpZHgyID0gaWR4OyBpZHgyIDwgVE1QX0xVVF9TSVpFOyBpZHgyICs9IGkpCi0g ICAgICAgICAgICAgICAgY2JydF90YWJfZGJsW2lkeDJdICo9IGNicnRfdmFsOworICAgICAgICAg ICAgICAgIEFBQ19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwpLnRtcFtpZHgyXSAqPSBjYnJ0 X3ZhbDsKICAgICAgICAgfQogICAgIH0KIAogICAgIGRvdWJsZSBjYnJ0XzIgPSAyICogY2JydCgy KTsKLSAgICBmb3IgKGludCBpZHggPSAwOyBpZHggPCBUTVBfTFVUX1NJWkU7ICsraWR4KSB7Ci0g ICAgICAgIGRvdWJsZSBjYnJ0X3ZhbCA9IGNicnRfdGFiX2RibFtpZHhdOworICAgIGZvciAoaW50 IGlkeCA9IFRNUF9MVVRfU0laRSAtIDE7IGlkeCA+PSAwOyAtLWlkeCkgeworICAgICAgICBkb3Vi bGUgY2JydF92YWwgPSBBQUNfUkVOQU1FKGZmX2NicnRfdGFiX2ludGVybmFsKS50bXBbaWR4XTsK KyAgICAgICAgLy8gRHVlIHRvIGkgKiBzaXplb2YoZmZfY2JydF90YWJfaW50ZXJuYWwuY2JydF90 YWJbMF0pID49CisgICAgICAgIC8vIDIgKiBpZHggKiBzaXplb2YoZmZfY2JydF90YWJfaW50ZXJu YWwuY2JydF90YWJbMF0pICA+PSBpZHggKiBzaXplb2YoZG91YmxlKQorICAgICAgICAvLyB3ZSBk b24ndCBjbG9iYmVyIHRoZSBkb3VibGUtTFVUIGVudHJpZXMgd2l0aCBpbmRleCA8IGlkeAorICAg ICAgICAvLyBpbiB0aGUgbG9vcCBiZWxvdy4gVGhpcyBpcyB3aHkgd2UgcHJvY2VzcyBpZHggaW4g ZGVzY2VuZGluZyBvcmRlci4KICAgICAgICAgZm9yIChpbnQgaSA9IDIgKiBpZHggKyAxOyBpIDwg TFVUX1NJWkU7IGkgKj0gMikgewotICAgICAgICAgICAgQUFDX1JFTkFNRShmZl9jYnJ0X3RhYilb aV0gPSBDQlJUKGNicnRfdmFsKTsKKyAgICAgICAgICAgIEFBQ19SRU5BTUUoZmZfY2JydF90YWJf aW50ZXJuYWwpLmNicnRfdGFiW2ldID0gQ0JSVChjYnJ0X3ZhbCk7CiAgICAgICAgICAgICBjYnJ0 X3ZhbCAqPSBjYnJ0XzI7CiAgICAgICAgIH0KICAgICB9Ci0gICAgQUFDX1JFTkFNRShmZl9jYnJ0 X3RhYilbMF0gPSBDQlJUKDApOworICAgIEFBQ19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwp LmNicnRfdGFiWzBdID0gQ0JSVCgwKTsKIH0KIAogI2VuZGlmIC8qIEFWQ09ERUNfQ0JSVF9UQUJM RUdFTl9IICovCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2NicnRfdGFibGVnZW5fdGVtcGxhdGUu YyBiL2xpYmF2Y29kZWMvY2JydF90YWJsZWdlbl90ZW1wbGF0ZS5jCmluZGV4IDIxZWQyYTY4NjEu LjA2YWUxNTJmNzEgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvY2JydF90YWJsZWdlbl90ZW1wbGF0 ZS5jCisrKyBiL2xpYmF2Y29kZWMvY2JydF90YWJsZWdlbl90ZW1wbGF0ZS5jCkBAIC0yMSw3ICsy MSw3IEBACiAgKi8KIAogI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2RlZmluZSBDT05GSUdfSEFSRENP REVEX1RBQkxFUyAwCisjZGVmaW5lIEJVSUxEX1RBQkxFUyAxCiAjaW5jbHVkZSAibGliYXZ1dGls L3RhYmxlZ2VuLmgiCiAjaW5jbHVkZSAiY2JydF90YWJsZWdlbi5oIgogI2luY2x1ZGUgInRhYmxl cHJpbnQuaCIKLS0gCjIuNDkuMQoKCkZyb20gNDUwMDMzYjEzZDA1N2E0MjkyMDI5N2Q3YzE3YTM3 NDIwNGRkZjNlMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgMyBTZXAgMjAy NSAwMjo1Mzo0NiArMDIwMApTdWJqZWN0OiBbUEFUQ0ggNS81XSBhdmNvZGVjL2NicnRfdGFibGVn ZW46IERlZHVwbGljYXRlIGNvbW1vbiBjb2RlCgpOYW1lbHkgdGhlIHBhcnQgdGhhdCBjcmVhdGVz IGEgdGVtcG9yYXJ5IExVVC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5k cmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvTWFrZWZpbGUgICAg ICAgICAgICAgICAgIHwgIDYgKystCiBsaWJhdmNvZGVjL2NicnRfZGF0YS5oICAgICAgICAgICAg ICB8ICA1ICsrKwogbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuLmggICAgICAgICAgfCAyOSArLS0t LS0tLS0tLS0tLQogbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuX2NvbW1vbi5jICAgfCA2MCArKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuX3RlbXBs YXRlLmMgfCAgMSArCiA1IGZpbGVzIGNoYW5nZWQsIDcxIGluc2VydGlvbnMoKyksIDMwIGRlbGV0 aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYmF2Y29kZWMvY2JydF90YWJsZWdlbl9jb21t b24uYwoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvTWFrZWZpbGUgYi9saWJhdmNvZGVjL01ha2Vm aWxlCmluZGV4IDNkMDM2ZGU0YjYuLmFjMTQzZjQxMDMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMv TWFrZWZpbGUKKysrIGIvbGliYXZjb2RlYy9NYWtlZmlsZQpAQCAtMTk1LDExICsxOTUsMTMgQEAg T0JKUy0kKENPTkZJR19BNjRNVUxUSTVfRU5DT0RFUikgICAgICAgKz0gYTY0bXVsdGllbmMubyBl bGJnLm8KIE9CSlMtJChDT05GSUdfQUFDX0RFQ09ERVIpICAgICAgICAgICAgICs9IGFhY3RhYi5v IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFhY3Nici5vIGFh Y3BzX2NvbW1vbi5vIGFhY3BzX2Zsb2F0Lm8gXAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAga2Jkd2luLm8gXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2JyZHNwLm8gYWFjcHNkc3BfZmxvYXQubyBjYnJ0X2RhdGEubworICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2JyZHNwLm8gYWFjcHNkc3BfZmxv YXQubyBjYnJ0X2RhdGEubyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAkKGlmICQoIUNPTkZJR19IQVJEQ09ERURfVEFCTEVTKSwgY2JydF90YWJsZWdlbl9jb21t b24ubykKIE9CSlMtJChDT05GSUdfQUFDX0ZJWEVEX0RFQ09ERVIpICAgICAgICs9IGFhY3RhYi5v IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFhY3Nicl9maXhl ZC5vIGFhY3BzX2NvbW1vbi5vIGFhY3BzX2ZpeGVkLm8gXAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAga2Jkd2luLm8gXAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc2JyZHNwX2ZpeGVkLm8gYWFjcHNkc3BfZml4ZWQubyBjYnJ0X2Rh dGFfZml4ZWQubworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Jy ZHNwX2ZpeGVkLm8gYWFjcHNkc3BfZml4ZWQubyBjYnJ0X2RhdGFfZml4ZWQubyBcCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKGlmICQoIUNPTkZJR19IQVJEQ09E RURfVEFCTEVTKSwgY2JydF90YWJsZWdlbl9jb21tb24ubykKIE9CSlMtJChDT05GSUdfQUFDX0VO Q09ERVIpICAgICAgICAgICAgICs9IGFhY2VuYy5vIGFhY2NvZGVyLm8gYWFjZW5jdGFiLm8gICAg XAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWFjcHN5Lm8gYWFj dGFiLm8gICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh YWNlbmNfaXMubyBcCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2NicnRfZGF0YS5oIGIvbGliYXZj b2RlYy9jYnJ0X2RhdGEuaAppbmRleCBiZjg0ZGNhMTBkLi44YWUzYjc2NTFiIDEwMDY0NAotLS0g YS9saWJhdmNvZGVjL2NicnRfZGF0YS5oCisrKyBiL2xpYmF2Y29kZWMvY2JydF9kYXRhLmgKQEAg LTQwLDYgKzQwLDExIEBAIHZvaWQgZmZfY2JydF90YWJsZWluaXQodm9pZCk7CiB2b2lkIGZmX2Ni cnRfdGFibGVpbml0X2ZpeGVkKHZvaWQpOwogCiAjZGVmaW5lIFRNUF9MVVRfU0laRSAoTFVUX1NJ WkUgLyAyKQorLyoqCisgKiBDcmVhdGVzIGEgTFVUIChvZiBkb3VibGVzKSBmb3IgdGhlIHBvd2Vy cyBvZgorICogdGhlIG9kZCBpbnRlZ2VyczogdG1wX2x1dFtpZHhdIHdpbGwgYmUgc2V0IHRvICgy ICogaWR4ICsgMSleezQvM30uCisgKi8KK3ZvaWQgZmZfY2JydF9kYmxfdGFibGVpbml0KGRvdWJs ZSB0bXBfbHV0W1RNUF9MVVRfU0laRV0pOwogCiBleHRlcm4gdW5pb24gQ0JSVCB7CiAgICAgdWlu dDMyX3QgY2JydF90YWJbTFVUX1NJWkVdOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9jYnJ0X3Rh YmxlZ2VuLmggYi9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaAppbmRleCBiYzA0MGE4N2U2Li45 MDA3NmRmZDhlIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaAorKysgYi9s aWJhdmNvZGVjL2NicnRfdGFibGVnZW4uaApAQCAtNDYsMzQgKzQ2LDcgQEAgYXZfY29sZCB2b2lk IEFBQ19SRU5BTUUoZmZfY2JydF90YWJsZWluaXQpKHZvaWQpCiAgICAgICAgICAgICAgICAgICAi dW5leHBlY3RlZCBzaXplb2ZzIik7CiAgICAgLy8gV2UgcmV1c2UgZmZfY2JydF90YWJfaW50ZXJu YWwudG1wIGFzIGEgTFVUIChvZiBkb3VibGVzKSBmb3IgdGhlIHJvb3RzCiAgICAgLy8gb2YgdGhl IG9kZCBpbnRlZ2VyczogdG1wW2lkeF0gY29udGFpbnMgKDIgKiBpZHggKyAxKV57NC8zfS4KLQot ICAgIGZvciAoaW50IGlkeCA9IDA7IGlkeCA8IFRNUF9MVVRfU0laRTsgKytpZHgpCi0gICAgICAg IEFBQ19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwpLnRtcFtpZHhdID0gMTsKLQotICAgIC8q IGhhdmUgdG8gdGFrZSBjYXJlIG9mIG5vbi1zcXVhcmVmcmVlIG51bWJlcnM7IG5vdGljZSB0aGF0 IHNxcnQoTFVUX1NJWkUpID0gOTA7Ci0gICAgICogaWR4ID09IDQ0IGNvcnJlc3BvbmRzIHRvIDg5 LiAqLwotICAgIGZvciAoaW50IGlkeCA9IDE7IGlkeCA8IDQ1OyArK2lkeCkgewotICAgICAgICBp ZiAoQUFDX1JFTkFNRShmZl9jYnJ0X3RhYl9pbnRlcm5hbCkudG1wW2lkeF0gPT0gMSkgewotICAg ICAgICAgICAgaW50IGkgPSAyICogaWR4ICsgMTsKLSAgICAgICAgICAgIGRvdWJsZSBjYnJ0X3Zh bCA9IGkgKiBjYnJ0KGkpOwotICAgICAgICAgICAgZm9yIChpbnQgayA9IGk7IGsgPCBMVVRfU0la RTsgayAqPSBpKSB7Ci0gICAgICAgICAgICAgICAgLy8gV2Ugb25seSBoYXZlIHRvIGhhbmRsZSBr LCAzICogaywgNSAqIGssLi4uLAotICAgICAgICAgICAgICAgIC8vIGJlY2F1c2Ugb25seSB0aGVz ZSBhcmUgb2RkLiBUaGUgY29ycmVzcG9uZGluZyBpbmRpY2VzIGFyZQotICAgICAgICAgICAgICAg IC8vIGsgPj4gMSwgKGsgPj4gMSkgKyBrLCAoayA+PiAxKSArIDIgKiBrLC4uLgotICAgICAgICAg ICAgICAgIGZvciAoaW50IGlkeDIgPSBrID4+IDE7IGlkeDIgPCBUTVBfTFVUX1NJWkU7IGlkeDIg Kz0gaykKLSAgICAgICAgICAgICAgICAgICAgQUFDX1JFTkFNRShmZl9jYnJ0X3RhYl9pbnRlcm5h bCkudG1wW2lkeDJdICo9IGNicnRfdmFsOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAg fQotCi0gICAgZm9yIChpbnQgaWR4ID0gNDU7IGlkeCA8IFRNUF9MVVRfU0laRTsgKytpZHgpIHsK LSAgICAgICAgaWYgKEFBQ19SRU5BTUUoZmZfY2JydF90YWJfaW50ZXJuYWwpLnRtcFtpZHhdID09 IDEpIHsKLSAgICAgICAgICAgIGludCBpID0gMiAqIGlkeCArIDE7Ci0gICAgICAgICAgICBkb3Vi bGUgY2JydF92YWwgPSBpICogY2JydChpKTsKLSAgICAgICAgICAgIGZvciAoaW50IGlkeDIgPSBp ZHg7IGlkeDIgPCBUTVBfTFVUX1NJWkU7IGlkeDIgKz0gaSkKLSAgICAgICAgICAgICAgICBBQUNf UkVOQU1FKGZmX2NicnRfdGFiX2ludGVybmFsKS50bXBbaWR4Ml0gKj0gY2JydF92YWw7Ci0gICAg ICAgIH0KLSAgICB9CisgICAgZmZfY2JydF9kYmxfdGFibGVpbml0KEFBQ19SRU5BTUUoZmZfY2Jy dF90YWJfaW50ZXJuYWwpLnRtcCk7CiAKICAgICBkb3VibGUgY2JydF8yID0gMiAqIGNicnQoMik7 CiAgICAgZm9yIChpbnQgaWR4ID0gVE1QX0xVVF9TSVpFIC0gMTsgaWR4ID49IDA7IC0taWR4KSB7 CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2NicnRfdGFibGVnZW5fY29tbW9uLmMgYi9saWJhdmNv ZGVjL2NicnRfdGFibGVnZW5fY29tbW9uLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMC4uOWI5NWE2ZTQ0YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmF2Y29kZWMvY2JydF90 YWJsZWdlbl9jb21tb24uYwpAQCAtMCwwICsxLDYwIEBACisvKgorICogQ29tbW9uIGNvZGUgZm9y IEFBQyBjdWJlLXJvb3QgdGFibGUKKyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMTAgUmVpbWFyIETD tmZmaW5nZXIgPFJlaW1hci5Eb2VmZmluZ2VyQGdteC5kZT4KKyAqCisgKiBUaGlzIGZpbGUgaXMg cGFydCBvZiBGRm1wZWcuCisgKgorICogRkZtcGVnIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkg dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIuMSBvZiB0 aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisg KiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk IHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV TEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdp dGggRkZtcGVnOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0 aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAy MTEwLTEzMDEgVVNBCisgKi8KKworI2luY2x1ZGUgPG1hdGguaD4KKworI2luY2x1ZGUgImNicnRf ZGF0YS5oIgorI2luY2x1ZGUgImxpYmF2dXRpbC9hdHRyaWJ1dGVzLmgiCisjaWZkZWYgSEFWRV9B Vl9DT05GSUdfSCAvLyBPbmx5IGluY2x1ZGUgbGlibS5oIHdoZW4gYnVpbGRpbmcgZm9yIHRoZSB0 YXJnZXQsIG5vdCB0aGUgaG9zdAorI2luY2x1ZGUgImxpYmF2dXRpbC9saWJtLmgiCisjZW5kaWYK KworYXZfY29sZCB2b2lkIGZmX2NicnRfZGJsX3RhYmxlaW5pdChkb3VibGUgdG1wX2x1dFtUTVBf TFVUX1NJWkVdKQoreworICAgIGZvciAoaW50IGlkeCA9IDA7IGlkeCA8IFRNUF9MVVRfU0laRTsg KytpZHgpCisgICAgICAgIHRtcF9sdXRbaWR4XSA9IDE7CisKKyAgICAvKiBoYXZlIHRvIHRha2Ug Y2FyZSBvZiBub24tc3F1YXJlZnJlZSBudW1iZXJzOyBub3RpY2UgdGhhdCBzcXJ0KExVVF9TSVpF KSA9IDkwOworICAgICAqIGlkeCA9PSA0NCBjb3JyZXNwb25kcyB0byA4OS4gKi8KKyAgICBmb3Ig KGludCBpZHggPSAxOyBpZHggPCA0NTsgKytpZHgpIHsKKyAgICAgICAgaWYgKHRtcF9sdXRbaWR4 XSA9PSAxKSB7CisgICAgICAgICAgICBpbnQgaSA9IDIgKiBpZHggKyAxOworICAgICAgICAgICAg ZG91YmxlIGNicnRfdmFsID0gaSAqIGNicnQoaSk7CisgICAgICAgICAgICBmb3IgKGludCBrID0g aTsgayA8IExVVF9TSVpFOyBrICo9IGkpIHsKKyAgICAgICAgICAgICAgICAvLyBXZSBvbmx5IGhh dmUgdG8gaGFuZGxlIGssIDMgKiBrLCA1ICogaywuLi4sCisgICAgICAgICAgICAgICAgLy8gYmVj YXVzZSBvbmx5IHRoZXNlIGFyZSBvZGQuIFRoZSBjb3JyZXNwb25kaW5nIGluZGljZXMgYXJlCisg ICAgICAgICAgICAgICAgLy8gayA+PiAxLCAoayA+PiAxKSArIGssIChrID4+IDEpICsgMiAqIGss Li4uCisgICAgICAgICAgICAgICAgZm9yIChpbnQgaWR4MiA9IGsgPj4gMTsgaWR4MiA8IFRNUF9M VVRfU0laRTsgaWR4MiArPSBrKQorICAgICAgICAgICAgICAgICAgICB0bXBfbHV0W2lkeDJdICo9 IGNicnRfdmFsOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgZm9yIChp bnQgaWR4ID0gNDU7IGlkeCA8IFRNUF9MVVRfU0laRTsgKytpZHgpIHsKKyAgICAgICAgaWYgKHRt cF9sdXRbaWR4XSA9PSAxKSB7CisgICAgICAgICAgICBpbnQgaSA9IDIgKiBpZHggKyAxOworICAg ICAgICAgICAgZG91YmxlIGNicnRfdmFsID0gaSAqIGNicnQoaSk7CisgICAgICAgICAgICBmb3Ig KGludCBpZHgyID0gaWR4OyBpZHgyIDwgVE1QX0xVVF9TSVpFOyBpZHgyICs9IGkpCisgICAgICAg ICAgICAgICAgdG1wX2x1dFtpZHgyXSAqPSBjYnJ0X3ZhbDsKKyAgICAgICAgfQorICAgIH0KK30K ZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvY2JydF90YWJsZWdlbl90ZW1wbGF0ZS5jIGIvbGliYXZj b2RlYy9jYnJ0X3RhYmxlZ2VuX3RlbXBsYXRlLmMKaW5kZXggMDZhZTE1MmY3MS4uNGY2YWE3ZTQ4 NCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuX3RlbXBsYXRlLmMKKysrIGIv bGliYXZjb2RlYy9jYnJ0X3RhYmxlZ2VuX3RlbXBsYXRlLmMKQEAgLTI0LDYgKzI0LDcgQEAKICNk ZWZpbmUgQlVJTERfVEFCTEVTIDEKICNpbmNsdWRlICJsaWJhdnV0aWwvdGFibGVnZW4uaCIKICNp bmNsdWRlICJjYnJ0X3RhYmxlZ2VuLmgiCisjaW5jbHVkZSAiY2JydF90YWJsZWdlbl9jb21tb24u YyIKICNpbmNsdWRlICJ0YWJsZXByaW50LmgiCiAKIGludCBtYWluKHZvaWQpCi0tIAoyLjQ5LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1k ZXZlbCBtYWlsaW5nIGxpc3QgLS0gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKVG8gdW5zdWJzY3Jp YmUgc2VuZCBhbiBlbWFpbCB0byBmZm1wZWctZGV2ZWwtbGVhdmVAZmZtcGVnLm9yZwo=