Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w5EjJ-0032gG-1c for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 03:16:25 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w5EjH-00B6ap-36 for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 03:16:24 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w5EiY-00B2kU-1j for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 03:15:39 +0000 Received: from mail-oo1-xc31.google.com ([2607:f8b0:4864:20::c31]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w5EiW-00000000zWV-0yrz for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 03:15:38 +0000 Received: by mail-oo1-xc31.google.com with SMTP id 006d021491bc7-67c2b70124cso2538437eaf.1 for ; Tue, 24 Mar 2026 20:15:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774408535; cv=none; d=google.com; s=arc-20240605; b=aKaMfQpx2ZIRPxPKizad9w6yhnpCw0V9a/DIq0pi0A/Di4HUigA+WD11LvIHRx/1J/ imWfiiDr1vCsEbrsDTvdiQYCeooL9CPMzcuI7HApnM90AtI0+k6EvdZ6OtBhIICXTOXM eH/Kq0KwYcZf82MT7tk3ZM/9qExxLcWgC9V1xchoogtpZEPXQdYyaqn6jCS/VrrB+ayh 1BeNCSuPmDHBT2uR0GGJ4grXaCirPNPlZLgndR6U3b4zEY4fmEPMYpwvCL0BqRb/SVeV S4GnxpjjT9Uw5bvXsSEu1d9VmqqsgP0fpYrdV/OHCzJ13+vUFz5xu6FmpOpil27RMWsO pZBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=wYVFerfnFrdNyUUokQaoFcvAFmBMTkWwJHzLkRbulQM=; fh=rxy+4R5RAfz27w/g7ZsxrTiDybElymesvHD6KaufTT8=; b=cF/T7R9x16JC+EMrkQJCmI8f7IQzEh4ZfYGPvepirYNOVkZUq4rm8/7Vv2ZxGC49Ka +EL9ryv7iYmAmlwZVYPBBoZXUeQo1aPxQcWNSbEbc9xMrKXK/LwhUjLtCN1IHohkfVTG ZzuRGddTvZ7Oh9TSzyodfk3hunmFArAm4pKkvEevmgYaCUsqvbII0KjDwWvBJRh3VlTx 6Z4c/nXsjstgxkjNnz5+/8c0HAPWqfGSjKASWzZTwrCSccedxqpkFAp91HBhM2yn+e1Q 5QALq4YK7aHctL2DcN8jdpUuA99flORbEY66kBBALhFe9oEUXX9RxxjNvPRu1vBN/4zk qVUA==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774408535; x=1775013335; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=wYVFerfnFrdNyUUokQaoFcvAFmBMTkWwJHzLkRbulQM=; b=F8x1g5qJkU36PtBPvJGJfAHbgKMV4esg17OwgfeKLAK3tZsidbBtgXJPsMxdscbEVs MTFjb8QJW2DxzzChDRASnerYzvbcHHVkdNkHh3zx1roUvoHD3UXoGFWuXs9CpKeTnIXF ciFd89btPpLtBa0Vk2bxGNgcGGVCSNKtF+rdPm5caug7lq3fHTT8afjye6fgN7QxdrHH 6EciofojmvNU7JF8twrJix0c3EGsb/HrGC+uWB8fqqOEVqL1huIzSOPnudlJGbZAQqot FK3EhDeIn5eVkYPBnvLrB1tzbelwkiNpbAF758z/d7mST+bkS91fEqT4W2EruiFV751o fULQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774408535; x=1775013335; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wYVFerfnFrdNyUUokQaoFcvAFmBMTkWwJHzLkRbulQM=; b=Fpx1FFWbLauAffEhfy8FBYOBF9yfqVpg7VgklIclA68kxdWfTxcFTWA5l2gyH49BxH BS021Zq/YrhPp6YdIpf0NhLVMsGw2iD6BSgMub7tcjvLjNlZJSP+VbxHGpJWdzeEeg2E 0xR/KPbOL3WcHADOESSAF2TNuMEv1RX34qfHEpV4EYzJssQGMX/pPQ7DK6c3bqJXViee BWj8GfhMM3tDkl8q6kmURTPa8KN0D6cUqLx+0YfrXWxPXksDRWsDaIDE9Cof6y3ySEnp wZD/vX2rO0055LuKQ90Y9CNf00qfy8j5Apm4lFBJ8nsvb8xtG2V4y/lOQQoL2wZDTGAA utWQ== X-Gm-Message-State: AOJu0YzeXF8Kv2g+xzUhJoDrkAqc54QL2giwWVPHh5O9HZ9SEoIUwFoV r+VZvBIAoxDU3d4Cpw//BVl2/6CGm+jTKLtDe2ZpnwDV//lLwEXdYwLmtirqyBgpldnSk6k10bM FicqlohhszyZhkmfdtl2KI7HupiFduqz53hBvdRo= X-Gm-Gg: ATEYQzzlZeaQOvAxGz7kIyp9u550S2ZKWZtpm+XMK5JCzvV56LpkUw/H8barUQdJou5 w+gJx7v5D7qS1JRqVy8a8oZwNiqqUw1ersfRbIFNvQsIi03KKnV2Q0J1YQz8JUjkFtF9c65uN/e mnyph+io4Aq85/C6CiUSH56B30wn5GQhPTqCeE2LXhQVpBRJgHUK/cvKTAsvnf3vlC/qB5NjqBp R9V2jyyggw5+zfrdXxkuWH0EtWUltN9W3eJEfxF0fSHZvScPlmPhF1cN/CyAx/00vjX/wgx5Eyi J0zs3NZqRJGU/IfcqNkzlVjHRUpyy9wV9BFi51KhFA== X-Received: by 2002:a05:6820:a0c:b0:67b:c368:1369 with SMTP id 006d021491bc7-67dff5a0440mr1145972eaf.67.1774408534783; Tue, 24 Mar 2026 20:15:34 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Fujii Masao Date: Wed, 25 Mar 2026 12:15:22 +0900 X-Gm-Features: AQROBzD_zYUpP7efrWAbHvup5OzzyMIeyHKvxO7tU3UfHOyB0ksq0HcX5CwesFU Message-ID: Subject: Re: Reduce log level of some logical decoding messages to DEBUG1 To: Bharath Rupireddy Cc: PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000675088064dd0ae95" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000675088064dd0ae95 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Mar 24, 2026 at 12:44=E2=80=AFAM Fujii Masao wrote: > > > Alternatively, if we want to keep them at LOG by default, we could in= troduce > > > a GUC like trace_logical_decoding_messages, similar to > > > the old trace_recovery_messages, to control their verbosity independe= ntly > > > of log_min_messages. Just in case where many users still want to see those log messages at LOG l= evel, I also created a second patch (0002) that introduces a new GUC, trace_logical_decoding_messages, to control logging of logical decoding debug messages (e.g., "logical decoding found consistent point"). With the default setting (DEBUG1 for now), these messages are effectively logged at LOG level. Setting it to LOG suppresses them unless permitted by log_min_messages. At the moment, this parameter affects only a small set of messages (about five). We can consider extending it to cover more logical decoding messages later. Regards, --=20 Fujii Masao --000000000000675088064dd0ae95 Content-Type: application/octet-stream; name="v2-0001-Reduce-log-level-of-some-logical-decoding-message.patch" Content-Disposition: attachment; filename="v2-0001-Reduce-log-level-of-some-logical-decoding-message.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn5h0mk10 RnJvbSA5ODA3YjllNGIyZTc4YWUzYjVhMGRkNWU2YzI4ZWIxZWJiZDY3NTZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFRodSwgMTkgTWFyIDIwMjYgMjA6MzI6NDMgKzA5MDAKU3ViamVjdDogW1BBVENIIHYyIDEv Ml0gUmVkdWNlIGxvZyBsZXZlbCBvZiBzb21lIGxvZ2ljYWwgZGVjb2RpbmcgbWVzc2FnZXMKIGZy b20gTE9HIHRvIERFQlVHMQoKUHJldmlvdXNseSBzb21lIGxvZ2ljYWwgZGVjb2RpbmcgbWVzc2Fn ZXMgKGUuZy4sICJsb2dpY2FsIGRlY29kaW5nIGZvdW5kCmNvbnNpc3RlbnQgcG9pbnQiKSB3ZXJl IGxvZ2dlZCBhdCBsZXZlbCBMT0csIGV2ZW4gdGhvdWdoIHRoZXkgcHJvdmlkZWQKbG93LWxldmVs LCBkZXZlbG9wZXItb3JpZW50ZWQgaW5mb3JtYXRpb24gdGhhdCBEQkFzIHdlcmUgdHlwaWNhbGx5 IG5vdAppbnRlcmVzdGVkIGluLgoKU2luY2UgdGhlc2UgbWVzc2FnZXMgY2FuIG9jY3VyIHJvdXRp bmVseSAoZm9yIGV4YW1wbGUsIHdoZW4ga2VlcGluZyBjYWxsaW5nCnBnX2xvZ2ljYWxfc2xvdF9n ZXRfY2hhbmdlcygpIHRvIG9idGFpbiB0aGUgY2hhbmdlcyBmcm9tIGxvZ2ljYWwgZGVjb2Rpbmcp LApsb2dnaW5nIHRoZW0gYXQgTE9HIGNhbiBiZSBvdmVybHkgdmVyYm9zZS4KClRoaXMgY29tbWl0 IHJlZHVjZXMgdGhlaXIgbG9nIGxldmVsIHRvIERFQlVHMSB0byBhdm9pZCB1bm5lY2Vzc2FyeSBs b2cgbm9pc2UuCi0tLQogc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9sb2dpY2FsLmMg ICAgICAgICAgICAgIHwgMiArLQogc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9zbmFw YnVpbGQuYyAgICAgICAgICAgIHwgNiArKystLS0KIHNyYy90ZXN0L3JlY292ZXJ5L3QvMDM4X3Nh dmVfbG9naWNhbF9zbG90c19zaHV0ZG93bi5wbCB8IDEgKwogMyBmaWxlcyBjaGFuZ2VkLCA1IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcmVw bGljYXRpb24vbG9naWNhbC9sb2dpY2FsLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dp Y2FsL2xvZ2ljYWwuYwppbmRleCA2MDNhMmI5NGQwNS4uZjIwZDBjNTQyZjMgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbG9naWNhbC5jCisrKyBiL3NyYy9iYWNr ZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbG9naWNhbC5jCkBAIC01OTgsNyArNTk4LDcgQEAgQ3Jl YXRlRGVjb2RpbmdDb250ZXh0KFhMb2dSZWNQdHIgc3RhcnRfbHNuLAogCiAJY3R4LT5yZW9yZGVy LT5vdXRwdXRfcmV3cml0ZXMgPSBjdHgtPm9wdGlvbnMucmVjZWl2ZV9yZXdyaXRlczsKIAotCWVy ZXBvcnQoTE9HLAorCWVyZXBvcnQoREVCVUcxLAogCQkJKGVycm1zZygic3RhcnRpbmcgbG9naWNh bCBkZWNvZGluZyBmb3Igc2xvdCBcIiVzXCIiLAogCQkJCQlOYW1lU3RyKHNsb3QtPmRhdGEubmFt ZSkpLAogCQkJIGVycmRldGFpbCgiU3RyZWFtaW5nIHRyYW5zYWN0aW9ucyBjb21taXR0aW5nIGFm dGVyICVYLyUwOFgsIHJlYWRpbmcgV0FMIGZyb20gJVgvJTA4WC4iLApkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9zbmFwYnVpbGQuYyBiL3NyYy9iYWNrZW5kL3Jl cGxpY2F0aW9uL2xvZ2ljYWwvc25hcGJ1aWxkLmMKaW5kZXggMzdmMGM2MDI4YmQuLmI0MjY5YTNi MTAyIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3NuYXBidWls ZC5jCisrKyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvc25hcGJ1aWxkLmMKQEAg LTEzMTIsNyArMTMxMiw3IEBAIFNuYXBCdWlsZEZpbmRTbmFwc2hvdChTbmFwQnVpbGQgKmJ1aWxk ZXIsIFhMb2dSZWNQdHIgbHNuLCB4bF9ydW5uaW5nX3hhY3RzICpydW5uCiAJCWJ1aWxkZXItPnN0 YXRlID0gU05BUEJVSUxEX0NPTlNJU1RFTlQ7CiAJCWJ1aWxkZXItPm5leHRfcGhhc2VfYXQgPSBJ bnZhbGlkVHJhbnNhY3Rpb25JZDsKIAotCQllcmVwb3J0KExPRywKKwkJZXJlcG9ydChERUJVRzEs CiAJCQkJZXJybXNnKCJsb2dpY2FsIGRlY29kaW5nIGZvdW5kIGNvbnNpc3RlbnQgcG9pbnQgYXQg JVgvJTA4WCIsCiAJCQkJCSAgIExTTl9GT1JNQVRfQVJHUyhsc24pKSwKIAkJCQllcnJkZXRhaWwo IlRoZXJlIGFyZSBubyBydW5uaW5nIHRyYW5zYWN0aW9ucy4iKSk7CkBAIC0xNDA5LDcgKzE0MDks NyBAQCBTbmFwQnVpbGRGaW5kU25hcHNob3QoU25hcEJ1aWxkICpidWlsZGVyLCBYTG9nUmVjUHRy IGxzbiwgeGxfcnVubmluZ194YWN0cyAqcnVubgogCQlidWlsZGVyLT5zdGF0ZSA9IFNOQVBCVUlM RF9DT05TSVNURU5UOwogCQlidWlsZGVyLT5uZXh0X3BoYXNlX2F0ID0gSW52YWxpZFRyYW5zYWN0 aW9uSWQ7CiAKLQkJZXJlcG9ydChMT0csCisJCWVyZXBvcnQoREVCVUcxLAogCQkJCWVycm1zZygi bG9naWNhbCBkZWNvZGluZyBmb3VuZCBjb25zaXN0ZW50IHBvaW50IGF0ICVYLyUwOFgiLAogCQkJ CQkgICBMU05fRk9STUFUX0FSR1MobHNuKSksCiAJCQkJZXJyZGV0YWlsKCJUaGVyZSBhcmUgbm8g b2xkIHRyYW5zYWN0aW9ucyBhbnltb3JlLiIpKTsKQEAgLTE5MTUsNyArMTkxNSw3IEBAIFNuYXBC dWlsZFJlc3RvcmUoU25hcEJ1aWxkICpidWlsZGVyLCBYTG9nUmVjUHRyIGxzbikKIAogCUFzc2Vy dChidWlsZGVyLT5zdGF0ZSA9PSBTTkFQQlVJTERfQ09OU0lTVEVOVCk7CiAKLQllcmVwb3J0KExP RywKKwllcmVwb3J0KERFQlVHMSwKIAkJCWVycm1zZygibG9naWNhbCBkZWNvZGluZyBmb3VuZCBj b25zaXN0ZW50IHBvaW50IGF0ICVYLyUwOFgiLAogCQkJCSAgIExTTl9GT1JNQVRfQVJHUyhsc24p KSwKIAkJCWVycmRldGFpbCgiTG9naWNhbCBkZWNvZGluZyB3aWxsIGJlZ2luIHVzaW5nIHNhdmVk IHNuYXBzaG90LiIpKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDM4X3NhdmVf bG9naWNhbF9zbG90c19zaHV0ZG93bi5wbCBiL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDM4X3NhdmVf bG9naWNhbF9zbG90c19zaHV0ZG93bi5wbAppbmRleCBjMDM5MmQ1MDQ2MC4uMDVhYTc4YjRiYzcg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDM4X3NhdmVfbG9naWNhbF9zbG90c19z aHV0ZG93bi5wbAorKysgYi9zcmMvdGVzdC9yZWNvdmVyeS90LzAzOF9zYXZlX2xvZ2ljYWxfc2xv dHNfc2h1dGRvd24ucGwKQEAgLTQ4LDYgKzQ4LDcgQEAgJG5vZGVfcHVibGlzaGVyLT5hcHBlbmRf Y29uZigKIAkncG9zdGdyZXNxbC5jb25mJywgcXsKIGNoZWNrcG9pbnRfdGltZW91dCA9IDFoCiBh dXRvdmFjdXVtID0gb2ZmCitsb2dfbWluX21lc3NhZ2VzID0gJ2RlYnVnMScKIH0pOwogJG5vZGVf cHVibGlzaGVyLT5zdGFydDsKIAotLSAKMi41MS4yCgo= --000000000000675088064dd0ae95 Content-Type: application/octet-stream; name="v2-0002-Add-trace_logical_decoding_messages-GUC-to-contro.patch" Content-Disposition: attachment; filename="v2-0002-Add-trace_logical_decoding_messages-GUC-to-contro.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mn5h0mkc1 RnJvbSAyMDc2MmY4OGFkOTVlYTFhM2QwOTM1MmUyOTQ5OTNlMGFiN2QwZDE5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFdlZCwgMjUgTWFyIDIwMjYgMTE6MDI6MTcgKzA5MDAKU3ViamVjdDogW1BBVENIIHYyIDIv Ml0gQWRkIHRyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2FnZXMgR1VDIHRvIGNvbnRyb2wKIGxv Z2ljYWwgZGVjb2RpbmcgbG9nZ2luZwoKVGhpcyBjb21taXQgaW50cm9kdWNlcyBhIG5ldyBHVUMs IHRyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2FnZXMsIHRvIGNvbnRyb2wKdGhlIGxvZ2dpbmcg b2YgbG9naWNhbCBkZWNvZGluZyBkZWJ1ZyBtZXNzYWdlcy4gVGhpcyBpcyBzaW1pbGFyIHRvIHRo ZSBmb3JtZXIKdHJhY2VfcmVjb3ZlcnlfbWVzc2FnZXMgZm9yIHJlY292ZXJ5IGRlYnVnIG1lc3Nh Z2VzLgoKVGhpcyBwYXJhbWV0ZXIgb3ZlcnJpZGVzIGxvZ19taW5fbWVzc2FnZXMgZm9yIGxvZ2lj YWwgZGVjb2RpbmcgbWVzc2FnZXMgb25seQphbmQgaXMgaW50ZW5kZWQgZm9yIGRlYnVnZ2luZy4g VmFsaWQgdmFsdWVzIGFyZSBERUJVRzUgdGhyb3VnaCBERUJVRzEsIGFuZCBMT0cuCk1lc3NhZ2Vz IGF0IHRoZSBjb25maWd1cmVkIGxldmVsIG9yIGhpZ2hlciBhcmUgbG9nZ2VkIGFzIGlmIHRoZXkg d2VyZSBhdApMT0cgbGV2ZWwuIFRoZSBkZWZhdWx0IGlzIERFQlVHMS4KClNvbWUgbG9naWNhbCBk ZWNvZGluZyBtZXNzYWdlcyAoZS5nLiwgImxvZ2ljYWwgZGVjb2RpbmcgZm91bmQgY29uc2lzdGVu dApwb2ludCIpIGFyZSBsb3ctbGV2ZWwgYW5kIHdlcmUgcHJldmlvdXNseSBjb25zaWRlcmVkIHRv byB2ZXJib3NlIGZvciBMT0cuCkhvd2V2ZXIsIGJhc2VkIG9uIGRpc2N1c3Npb24sIHNvbWUgdXNl cnMgc3RpbGwgZmluZCBpdCB1c2VmdWwgdG8gc2VlIHRoZXNlCm1lc3NhZ2VzIGF0IExPRyBsZXZl bCBmb3IgZGVidWdnaW5nLiBUaGVyZWZvcmUsIHdpdGggdGhlIGRlZmF1bHQgc2V0dGluZwooREVC VUcxKSwgdGhlc2UgbWVzc2FnZXMgYXJlIGxvZ2dlZCBhdCBMT0cgbGV2ZWwuIE9uIHRoZSBvdGhl ciBoYW5kLApzZXR0aW5nIHRyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2FnZXMgdG8gTE9HIGNh biBzdXBwcmVzcyB0aGVtLgotLS0KIGRvYy9zcmMvc2dtbC9jb25maWcuc2dtbCAgICAgICAgICAg ICAgICAgICAgIHwgMjUgKysrKysrKysrKysrKysrKysrKysKIHNyYy9iYWNrZW5kL3JlcGxpY2F0 aW9uL2xvZ2ljYWwvbG9naWNhbC5jICAgIHwgIDIgKy0KIHNyYy9iYWNrZW5kL3JlcGxpY2F0aW9u L2xvZ2ljYWwvbG9naWNhbGN0bC5jIHwgMjQgKysrKysrKysrKysrKysrKysrKwogc3JjL2JhY2tl bmQvcmVwbGljYXRpb24vbG9naWNhbC9zbmFwYnVpbGQuYyAgfCAgOCArKystLS0tCiBzcmMvYmFj a2VuZC91dGlscy9taXNjL2d1Y19wYXJhbWV0ZXJzLmRhdCAgICB8IDExICsrKysrKysrKwogc3Jj L2JhY2tlbmQvdXRpbHMvbWlzYy9ndWNfdGFibGVzLmMgICAgICAgICAgfCAgMSArCiBzcmMvaW5j bHVkZS9yZXBsaWNhdGlvbi9sb2dpY2FsY3RsLmggICAgICAgICB8ICAzICsrKwogNyBmaWxlcyBj aGFuZ2VkLCA2OSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Rv Yy9zcmMvc2dtbC9jb25maWcuc2dtbCBiL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbAppbmRleCA4 Y2RkODI2ZmJkMy4uYjQ4YTgwYzU1MDggMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9jb25maWcu c2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwKQEAgLTEyNTk1LDYgKzEyNTk1LDMx IEBAIGR5bmFtaWNfbGlicmFyeV9wYXRoID0gJy91c3IvbG9jYWwvbGliL3Bvc3RncmVzcWw6JGxp YmRpcicKICAgICAgIDwvbGlzdGl0ZW0+CiAgICAgIDwvdmFybGlzdGVudHJ5PgogCisgICAgIDx2 YXJsaXN0ZW50cnkgaWQ9Imd1Yy10cmFjZS1sb2dpY2FsLWRlY29kaW5nLW1lc3NhZ2VzIiB4cmVm bGFiZWw9InRyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2FnZXMiPgorICAgICAgPHRlcm0+PHZh cm5hbWU+dHJhY2VfbG9naWNhbF9kZWNvZGluZ19tZXNzYWdlczwvdmFybmFtZT4gKDx0eXBlPmVu dW08L3R5cGU+KQorICAgICAgPGluZGV4dGVybT4KKyAgICAgICA8cHJpbWFyeT48dmFybmFtZT50 cmFjZV9sb2dpY2FsX2RlY29kaW5nX21lc3NhZ2VzPC92YXJuYW1lPiBjb25maWd1cmF0aW9uIHBh cmFtZXRlcjwvcHJpbWFyeT4KKyAgICAgIDwvaW5kZXh0ZXJtPgorICAgICAgPC90ZXJtPgorICAg ICAgPGxpc3RpdGVtPgorICAgICAgIDxwYXJhPgorICAgICAgICBFbmFibGVzIGxvZ2dpbmcgb2Yg bG9naWNhbCBkZWNvZGluZy1yZWxhdGVkIGRlYnVnZ2luZyBvdXRwdXQgdGhhdAorICAgICAgICBv dGhlcndpc2Ugd291bGQgbm90IGJlIGxvZ2dlZC4gIFRoaXMgcGFyYW1ldGVyIGFsbG93cyB0aGUg dXNlciB0bworICAgICAgICBvdmVycmlkZSB0aGUgbm9ybWFsIHNldHRpbmcgb2YgPHhyZWYgbGlu a2VuZD0iZ3VjLWxvZy1taW4tbWVzc2FnZXMiLz4sCisgICAgICAgIGJ1dCBvbmx5IGZvciBzcGVj aWZpYyBtZXNzYWdlcy4gIFRoaXMgaXMgaW50ZW5kZWQgZm9yIHVzZSBpbiBkZWJ1Z2dpbmcKKyAg ICAgICAgbG9naWNhbCBkZWNvZGluZy4gIFZhbGlkIHZhbHVlcyBhcmUgPGxpdGVyYWw+REVCVUc1 PC9saXRlcmFsPiwKKyAgICAgICAgPGxpdGVyYWw+REVCVUc0PC9saXRlcmFsPiwgPGxpdGVyYWw+ REVCVUczPC9saXRlcmFsPiwKKyAgICAgICAgPGxpdGVyYWw+REVCVUcyPC9saXRlcmFsPiwgPGxp dGVyYWw+REVCVUcxPC9saXRlcmFsPiwgYW5kCisgICAgICAgIDxsaXRlcmFsPkxPRzwvbGl0ZXJh bD4uICBUaGUgc2V0dGluZyB2YWx1ZXMgY2F1c2UgbG9naWNhbAorICAgICAgICBkZWNvZGluZy1y ZWxhdGVkIGRlYnVnIG1lc3NhZ2VzIG9mIHRoYXQgcHJpb3JpdHkgb3IgaGlnaGVyIHRvIGJlIGxv Z2dlZAorICAgICAgICBhcyB0aG91Z2ggdGhleSBoYWQgPGxpdGVyYWw+TE9HPC9saXRlcmFsPiBw cmlvcml0eTsgZm9yIGNvbW1vbiBzZXR0aW5ncworICAgICAgICBvZiA8dmFybmFtZT5sb2dfbWlu X21lc3NhZ2VzPC92YXJuYW1lPiB0aGlzIHJlc3VsdHMgaW4gdW5jb25kaXRpb25hbGx5CisgICAg ICAgIHNlbmRpbmcgdGhlbSB0byB0aGUgc2VydmVyIGxvZy4KKyAgICAgICAgVGhlIGRlZmF1bHQg aXMgPGxpdGVyYWw+REVCVUcxPC9saXRlcmFsPi4KKyAgICAgICA8L3BhcmE+CisgICAgICA8L2xp c3RpdGVtPgorICAgICA8L3Zhcmxpc3RlbnRyeT4KKwogICAgICA8dmFybGlzdGVudHJ5IGlkPSJn dWMtdHJhY2Utbm90aWZ5IiB4cmVmbGFiZWw9InRyYWNlX25vdGlmeSI+CiAgICAgICA8dGVybT48 dmFybmFtZT50cmFjZV9ub3RpZnk8L3Zhcm5hbWU+ICg8dHlwZT5ib29sZWFuPC90eXBlPikKICAg ICAgIDxpbmRleHRlcm0+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dp Y2FsL2xvZ2ljYWwuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbG9naWNhbC5j CmluZGV4IGYyMGQwYzU0MmYzLi43ZDNjMGRhNzBmNiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv cmVwbGljYXRpb24vbG9naWNhbC9sb2dpY2FsLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRp b24vbG9naWNhbC9sb2dpY2FsLmMKQEAgLTU5OCw3ICs1OTgsNyBAQCBDcmVhdGVEZWNvZGluZ0Nv bnRleHQoWExvZ1JlY1B0ciBzdGFydF9sc24sCiAKIAljdHgtPnJlb3JkZXItPm91dHB1dF9yZXdy aXRlcyA9IGN0eC0+b3B0aW9ucy5yZWNlaXZlX3Jld3JpdGVzOwogCi0JZXJlcG9ydChERUJVRzEs CisJZXJlcG9ydCh0cmFjZV9sb2dpY2FsX2RlY29kaW5nKERFQlVHMSksCiAJCQkoZXJybXNnKCJz dGFydGluZyBsb2dpY2FsIGRlY29kaW5nIGZvciBzbG90IFwiJXNcIiIsCiAJCQkJCU5hbWVTdHIo c2xvdC0+ZGF0YS5uYW1lKSksCiAJCQkgZXJyZGV0YWlsKCJTdHJlYW1pbmcgdHJhbnNhY3Rpb25z IGNvbW1pdHRpbmcgYWZ0ZXIgJVgvJTA4WCwgcmVhZGluZyBXQUwgZnJvbSAlWC8lMDhYLiIsCmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL2xvZ2ljYWxjdGwuYyBi L3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbG9naWNhbGN0bC5jCmluZGV4IDRlMjky OTUxMjAxLi5kNzM1YTYzZDgyOCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24v bG9naWNhbC9sb2dpY2FsY3RsLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNh bC9sb2dpY2FsY3RsLmMKQEAgLTExNiw2ICsxMTYsOSBAQCBib29sCQlYTG9nTG9naWNhbEluZm8g PSBmYWxzZTsKICAqLwogc3RhdGljIGJvb2wgWExvZ0xvZ2ljYWxJbmZvVXBkYXRlUGVuZGluZyA9 IGZhbHNlOwogCisvKiBHVUMgdmFyaWFibGVzICovCitpbnQJCQl0cmFjZV9sb2dpY2FsX2RlY29k aW5nX21lc3NhZ2VzID0gREVCVUcxOworCiBzdGF0aWMgdm9pZCB1cGRhdGVfeGxvZ19sb2dpY2Fs X2luZm8odm9pZCk7CiBzdGF0aWMgdm9pZCBhYm9ydF9sb2dpY2FsX2RlY29kaW5nX2FjdGl2YXRp b24oaW50IGNvZGUsIERhdHVtIGFyZyk7CiBzdGF0aWMgdm9pZCB3cml0ZV9sb2dpY2FsX2RlY29k aW5nX3N0YXR1c191cGRhdGVfcmVjb3JkKGJvb2wgc3RhdHVzKTsKQEAgLTYzOCwzICs2NDEsMjQg QEAgVXBkYXRlTG9naWNhbERlY29kaW5nU3RhdHVzRW5kT2ZSZWNvdmVyeSh2b2lkKQogCiAJSU5K RUNUSU9OX1BPSU5UKCJzdGFydHVwLWxvZ2ljYWwtZGVjb2Rpbmctc3RhdHVzLWNoYW5nZS1lbmQt b2YtcmVjb3ZlcnkiLCBOVUxMKTsKIH0KKworLyoKKyAqIEFkanVzdCB0aGUgbGV2ZWwgb2YgYSBs b2dpY2FsIGRlY29kaW5nLXJlbGF0ZWQgbWVzc2FnZSBwZXIKKyAqIHRyYWNlX2xvZ2ljYWxfZGVj b2RpbmdfbWVzc2FnZXMuCisgKgorICogVGhlIGFyZ3VtZW50IGlzIHRoZSBkZWZhdWx0IGxvZyBs ZXZlbCBvZiB0aGUgbWVzc2FnZSwgZWcsIERFQlVHMi4gIChUaGlzCisgKiBzaG91bGQgb25seSBi ZSBhcHBsaWVkIHRvIERFQlVHbiBsb2cgbWVzc2FnZXMsIG90aGVyd2lzZSBpdCdzIGEgbm8tb3Au KQorICogSWYgdGhlIGxldmVsIGlzID49IHRyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2FnZXMs IHdlIHJldHVybiBMT0csIGNhdXNpbmcKKyAqIHRoZSBtZXNzYWdlIHRvIGJlIGxvZ2dlZCB1bmNv bmRpdGlvbmFsbHkgKGZvciBtb3N0IHNldHRpbmdzIG9mCisgKiBsb2dfbWluX21lc3NhZ2VzKS4g IE90aGVyd2lzZSwgd2UgcmV0dXJuIHRoZSBhcmd1bWVudCB1bmNoYW5nZWQuCisgKiBUaGUgbWVz c2FnZSB3aWxsIHRoZW4gYmUgc2hvd24gYmFzZWQgb24gdGhlIHNldHRpbmcgb2YgbG9nX21pbl9t ZXNzYWdlcy4KKyAqLworaW50Cit0cmFjZV9sb2dpY2FsX2RlY29kaW5nKGludCB0cmFjZV9sZXZl bCkKK3sKKwlpZiAodHJhY2VfbGV2ZWwgPCBMT0cgJiYKKwkJdHJhY2VfbGV2ZWwgPj0gdHJhY2Vf bG9naWNhbF9kZWNvZGluZ19tZXNzYWdlcykKKwkJcmV0dXJuIExPRzsKKworCXJldHVybiB0cmFj ZV9sZXZlbDsKK30KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwv c25hcGJ1aWxkLmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3NuYXBidWlsZC5j CmluZGV4IGI0MjY5YTNiMTAyLi42Yzg3OGNiY2ZkMCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv cmVwbGljYXRpb24vbG9naWNhbC9zbmFwYnVpbGQuYworKysgYi9zcmMvYmFja2VuZC9yZXBsaWNh dGlvbi9sb2dpY2FsL3NuYXBidWlsZC5jCkBAIC0xMzEyLDcgKzEzMTIsNyBAQCBTbmFwQnVpbGRG aW5kU25hcHNob3QoU25hcEJ1aWxkICpidWlsZGVyLCBYTG9nUmVjUHRyIGxzbiwgeGxfcnVubmlu Z194YWN0cyAqcnVubgogCQlidWlsZGVyLT5zdGF0ZSA9IFNOQVBCVUlMRF9DT05TSVNURU5UOwog CQlidWlsZGVyLT5uZXh0X3BoYXNlX2F0ID0gSW52YWxpZFRyYW5zYWN0aW9uSWQ7CiAKLQkJZXJl cG9ydChERUJVRzEsCisJCWVyZXBvcnQodHJhY2VfbG9naWNhbF9kZWNvZGluZyhERUJVRzEpLAog CQkJCWVycm1zZygibG9naWNhbCBkZWNvZGluZyBmb3VuZCBjb25zaXN0ZW50IHBvaW50IGF0ICVY LyUwOFgiLAogCQkJCQkgICBMU05fRk9STUFUX0FSR1MobHNuKSksCiAJCQkJZXJyZGV0YWlsKCJU aGVyZSBhcmUgbm8gcnVubmluZyB0cmFuc2FjdGlvbnMuIikpOwpAQCAtMTM4NSw3ICsxMzg1LDcg QEAgU25hcEJ1aWxkRmluZFNuYXBzaG90KFNuYXBCdWlsZCAqYnVpbGRlciwgWExvZ1JlY1B0ciBs c24sIHhsX3J1bm5pbmdfeGFjdHMgKnJ1bm4KIAkJYnVpbGRlci0+c3RhdGUgPSBTTkFQQlVJTERf RlVMTF9TTkFQU0hPVDsKIAkJYnVpbGRlci0+bmV4dF9waGFzZV9hdCA9IHJ1bm5pbmctPm5leHRY aWQ7CiAKLQkJZXJlcG9ydChMT0csCisJCWVyZXBvcnQodHJhY2VfbG9naWNhbF9kZWNvZGluZyhE RUJVRzEpLAogCQkJCWVycm1zZygibG9naWNhbCBkZWNvZGluZyBmb3VuZCBpbml0aWFsIGNvbnNp c3RlbnQgcG9pbnQgYXQgJVgvJTA4WCIsCiAJCQkJCSAgIExTTl9GT1JNQVRfQVJHUyhsc24pKSwK IAkJCQllcnJkZXRhaWwoIldhaXRpbmcgZm9yIHRyYW5zYWN0aW9ucyAoYXBwcm94aW1hdGVseSAl ZCkgb2xkZXIgdGhhbiAldSB0byBlbmQuIiwKQEAgLTE0MDksNyArMTQwOSw3IEBAIFNuYXBCdWls ZEZpbmRTbmFwc2hvdChTbmFwQnVpbGQgKmJ1aWxkZXIsIFhMb2dSZWNQdHIgbHNuLCB4bF9ydW5u aW5nX3hhY3RzICpydW5uCiAJCWJ1aWxkZXItPnN0YXRlID0gU05BUEJVSUxEX0NPTlNJU1RFTlQ7 CiAJCWJ1aWxkZXItPm5leHRfcGhhc2VfYXQgPSBJbnZhbGlkVHJhbnNhY3Rpb25JZDsKIAotCQll cmVwb3J0KERFQlVHMSwKKwkJZXJlcG9ydCh0cmFjZV9sb2dpY2FsX2RlY29kaW5nKERFQlVHMSks CiAJCQkJZXJybXNnKCJsb2dpY2FsIGRlY29kaW5nIGZvdW5kIGNvbnNpc3RlbnQgcG9pbnQgYXQg JVgvJTA4WCIsCiAJCQkJCSAgIExTTl9GT1JNQVRfQVJHUyhsc24pKSwKIAkJCQllcnJkZXRhaWwo IlRoZXJlIGFyZSBubyBvbGQgdHJhbnNhY3Rpb25zIGFueW1vcmUuIikpOwpAQCAtMTkxNSw3ICsx OTE1LDcgQEAgU25hcEJ1aWxkUmVzdG9yZShTbmFwQnVpbGQgKmJ1aWxkZXIsIFhMb2dSZWNQdHIg bHNuKQogCiAJQXNzZXJ0KGJ1aWxkZXItPnN0YXRlID09IFNOQVBCVUlMRF9DT05TSVNURU5UKTsK IAotCWVyZXBvcnQoREVCVUcxLAorCWVyZXBvcnQodHJhY2VfbG9naWNhbF9kZWNvZGluZyhERUJV RzEpLAogCQkJZXJybXNnKCJsb2dpY2FsIGRlY29kaW5nIGZvdW5kIGNvbnNpc3RlbnQgcG9pbnQg YXQgJVgvJTA4WCIsCiAJCQkJICAgTFNOX0ZPUk1BVF9BUkdTKGxzbikpLAogCQkJZXJyZGV0YWls KCJMb2dpY2FsIGRlY29kaW5nIHdpbGwgYmVnaW4gdXNpbmcgc2F2ZWQgc25hcHNob3QuIikpOwpk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9ndWNfcGFyYW1ldGVycy5kYXQgYi9z cmMvYmFja2VuZC91dGlscy9taXNjL2d1Y19wYXJhbWV0ZXJzLmRhdAppbmRleCAwYzk4NTRhZDhm Yy4uMDRjZDBkOGMzYmUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjX3Bh cmFtZXRlcnMuZGF0CisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjX3BhcmFtZXRlcnMu ZGF0CkBAIC0zMDM5LDYgKzMwMzksMTcgQEAKICAgaWZkZWYgPT4gJ0xPQ0tfREVCVUcnLAogfSwK IAorIyBjbGllbnRfbWVzc2FnZV9sZXZlbF9vcHRpb25zIGFsbG93cyB0b28gbWFueSB2YWx1ZXMs IHJlYWxseSwgYnV0CisjIGl0J3Mgbm90IHdvcnRoIGhhdmluZyBhIHNlcGFyYXRlIG9wdGlvbnMg YXJyYXkgZm9yIHRoaXMuCit7IG5hbWUgPT4gJ3RyYWNlX2xvZ2ljYWxfZGVjb2RpbmdfbWVzc2Fn ZXMnLCB0eXBlID0+ICdlbnVtJywgY29udGV4dCA9PiAnUEdDX1VTRVJTRVQnLCBncm91cCA9PiAn REVWRUxPUEVSX09QVElPTlMnLAorICBzaG9ydF9kZXNjID0+ICdFbmFibGVzIGxvZ2dpbmcgb2Yg bG9naWNhbCBkZWNvZGluZy1yZWxhdGVkIGRlYnVnZ2luZyBpbmZvcm1hdGlvbi4nLAorICBsb25n X2Rlc2MgPT4gJ0VhY2ggbGV2ZWwgaW5jbHVkZXMgYWxsIHRoZSBsZXZlbHMgdGhhdCBmb2xsb3cg aXQuIFRoZSBsYXRlciB0aGUgbGV2ZWwsIHRoZSBmZXdlciBtZXNzYWdlcyBhcmUgc2VudC4nLAor ICBmbGFncyA9PiAnR1VDX05PVF9JTl9TQU1QTEUnLAorICB2YXJpYWJsZSA9PiAndHJhY2VfbG9n aWNhbF9kZWNvZGluZ19tZXNzYWdlcycsCisgIGJvb3RfdmFsID0+ICdERUJVRzEnLAorICBvcHRp b25zID0+ICdjbGllbnRfbWVzc2FnZV9sZXZlbF9vcHRpb25zJywKK30sCisKIHsgbmFtZSA9PiAn dHJhY2VfbHdsb2NrcycsIHR5cGUgPT4gJ2Jvb2wnLCBjb250ZXh0ID0+ICdQR0NfU1VTRVQnLCBn cm91cCA9PiAnREVWRUxPUEVSX09QVElPTlMnLAogICBzaG9ydF9kZXNjID0+ICdFbWl0cyBpbmZv cm1hdGlvbiBhYm91dCBsaWdodHdlaWdodCBsb2NrIHVzYWdlLicsCiAgIGZsYWdzID0+ICdHVUNf Tk9UX0lOX1NBTVBMRScsCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Y190 YWJsZXMuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjX3RhYmxlcy5jCmluZGV4IDFlMTRi N2I0YWYwLi44ZTgzMDIxYWZhMyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9n dWNfdGFibGVzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9ndWNfdGFibGVzLmMKQEAg LTcyLDYgKzcyLDcgQEAKICNpbmNsdWRlICJwb3N0bWFzdGVyL3N5c2xvZ2dlci5oIgogI2luY2x1 ZGUgInBvc3RtYXN0ZXIvd2Fsc3VtbWFyaXplci5oIgogI2luY2x1ZGUgInBvc3RtYXN0ZXIvd2Fs d3JpdGVyLmgiCisjaW5jbHVkZSAicmVwbGljYXRpb24vbG9naWNhbGN0bC5oIgogI2luY2x1ZGUg InJlcGxpY2F0aW9uL2xvZ2ljYWxsYXVuY2hlci5oIgogI2luY2x1ZGUgInJlcGxpY2F0aW9uL3Ns b3QuaCIKICNpbmNsdWRlICJyZXBsaWNhdGlvbi9zbG90c3luYy5oIgpkaWZmIC0tZ2l0IGEvc3Jj L2luY2x1ZGUvcmVwbGljYXRpb24vbG9naWNhbGN0bC5oIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRp b24vbG9naWNhbGN0bC5oCmluZGV4IDQ5NTU1NGM1MzJjLi42YjJkYjViYTI3MyAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vbG9naWNhbGN0bC5oCisrKyBiL3NyYy9pbmNsdWRl L3JlcGxpY2F0aW9uL2xvZ2ljYWxjdGwuaApAQCAtMTQsNiArMTQsOCBAQAogI2lmbmRlZiBMT0dJ Q0FMQ1RMX0gKICNkZWZpbmUgTE9HSUNBTENUTF9ICiAKK2V4dGVybiBQR0RMTElNUE9SVCBpbnQg dHJhY2VfbG9naWNhbF9kZWNvZGluZ19tZXNzYWdlczsKKwogZXh0ZXJuIFNpemUgTG9naWNhbERl Y29kaW5nQ3RsU2htZW1TaXplKHZvaWQpOwogZXh0ZXJuIHZvaWQgTG9naWNhbERlY29kaW5nQ3Rs U2htZW1Jbml0KHZvaWQpOwogZXh0ZXJuIHZvaWQgU3RhcnR1cExvZ2ljYWxEZWNvZGluZ1N0YXR1 cyhib29sIGxhc3Rfc3RhdHVzKTsKQEAgLTI4LDUgKzMwLDYgQEAgZXh0ZXJuIHZvaWQgUmVxdWVz dERpc2FibGVMb2dpY2FsRGVjb2Rpbmcodm9pZCk7CiBleHRlcm4gdm9pZCBEaXNhYmxlTG9naWNh bERlY29kaW5nSWZOZWNlc3Nhcnkodm9pZCk7CiBleHRlcm4gdm9pZCBEaXNhYmxlTG9naWNhbERl Y29kaW5nKHZvaWQpOwogZXh0ZXJuIHZvaWQgVXBkYXRlTG9naWNhbERlY29kaW5nU3RhdHVzRW5k T2ZSZWNvdmVyeSh2b2lkKTsKK2V4dGVybiBpbnQJdHJhY2VfbG9naWNhbF9kZWNvZGluZyhpbnQg dHJhY2VfbGV2ZWwpOwogCiAjZW5kaWYKLS0gCjIuNTEuMgoK --000000000000675088064dd0ae95--