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 1vtJMX-00Fusa-1G for pgsql-hackers@arkaria.postgresql.org; Fri, 20 Feb 2026 05:47:37 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vtJMW-006fyY-0g for pgsql-hackers@arkaria.postgresql.org; Fri, 20 Feb 2026 05:47:36 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vtJMV-006fyQ-29 for pgsql-hackers@lists.postgresql.org; Fri, 20 Feb 2026 05:47:35 +0000 Received: from siberian.tulip.relay.mailchannels.net ([23.83.218.246]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vtJMR-00000000JlB-0Cu1 for pgsql-hackers@postgresql.org; Fri, 20 Feb 2026 05:47:34 +0000 X-Sender-Id: hostingeremail|x-authuser|david@pgbackrest.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 406D34617C0; Fri, 20 Feb 2026 05:47:30 +0000 (UTC) Received: from fr-int-smtpout20.hostinger.io (100-101-111-62.trex-nlb.outbound.svc.cluster.local [100.101.111.62]) (Authenticated sender: hostingeremail) by relay.mailchannels.net (Postfix) with ESMTPA id 43D294614BC; Fri, 20 Feb 2026 05:47:29 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; d=mailchannels.net; s=arc-2022; cv=none; t=1771566449; b=9dLcn5ap3lWPfpBz8OagNBXgAvu9Ol5z669M/KyQCxOcyjQazGPiAgagm+BcqYVCHJ1Qfu NNC1R87d2cDzvuYOVOwI4Hx3AQq4WWhMaEp1yEM3WhnW8DHRMBpnWOEs5+qelSTch+lckw KmjatOP0/S0BhFLJB3qfsvW1Ph7JieUNTkumvNWuCvZuYwivyItYe3bxTzyX5MPtBfT+h+ 0uvYoN5jrHeE6PyrLb/25ldgUWeNmbZZRdPfzqRIWf4TTTiUv+dVJqzg88cSFOhHCFEo86 eOsZ17DAQeYDiWuMFrZ1oB2qRApW7sIeypFCFdxIqJILUbkm78VsysoQ1HH/iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1771566449; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references:dkim-signature; bh=A1Zfz7qO+ToWFcDNzRTyYhcD15JIgsUJxGhjbdW5H9g=; b=kZbe2oW+rv9jsTOvsz/FwzdCXJfSH6qXKq1qzVT7Z+GEJe0s9o8KrTdJv/nZuHLrKGi3Nz /8EVoXa7KXbtDlXT3JxVLFjXKcmugC8wcvFfTxh61NsU9bFWAjn5/6leGdiAhGANNVN3Hv Ftl8ya8hKq+mfpSY+rOjtzDTS2c5ye+WQycYmrlYx+1/U25Wd6pe25rh3XfZYPKag9BLKt I4itz2nM01TOdFIZP8pAxIQ8d7+3xjK4gt3rZ/BiulWM54r7rHN+Q84z8IfARCV20s9/oc Ox2I4FSBKPZkHSIC5lG8G4y/WYFq97g2ffHBvEkXs5gxxc9FfeIksEaiPURpjA== ARC-Authentication-Results: i=1; rspamd-84c84ff4fc-l5bqt; auth=pass smtp.auth=hostingeremail smtp.mailfrom=david@pgbackrest.org X-Sender-Id: hostingeremail|x-authuser|david@pgbackrest.org X-MC-Relay: Neutral X-MailChannels-SenderId: hostingeremail|x-authuser|david@pgbackrest.org X-MailChannels-Auth-Id: hostingeremail X-Lettuce-Name: 26f26fef0256ddbf_1771566450123_1500480997 X-MC-Loop-Signature: 1771566450123:2928924745 X-MC-Ingress-Time: 1771566450123 Received: from fr-int-smtpout20.hostinger.io (fr-int-smtpout20.hostinger.io [148.222.54.36]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.101.111.62 (trex/7.1.3); Fri, 20 Feb 2026 05:47:30 +0000 Received: from [10.5.0.2] (unknown [185.216.231.117]) (Authenticated sender: david@pgbackrest.org) by smtp.hostinger.com (smtp.hostinger.com) with ESMTPSA id 4fHK5V2Ptlz1xrp; Fri, 20 Feb 2026 05:47:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgbackrest.org; s=hostingermail1; t=1771566447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=A1Zfz7qO+ToWFcDNzRTyYhcD15JIgsUJxGhjbdW5H9g=; b=YcfO4jdDmR236YNp3xdVfFFnlVDlCCi9H6KHzZ+/9m9g5S6AV9QDhglk16T4Y65dLwvu5O ngKtOn0i9qfvaUVZE2N1ODhlPI7BZEauEV6YHyRbLy3z0Wdsk03Fnm5R62j+53Gi/hrAN6 DXYXmtk5QuOKfa4qaGsjSHEaPUS9MgZjGjnvZGzMK5r/g7JswU3tUIgX8kTaUR2zroulau kgf9vAly2gDAHctEYJOeUhU6EW/BfWWy9nXfZ51eCXeh0Y07QfEI97KJK7jgG7KDnHqhqT rPtG7D/T2DtVtB9ue0Wj8UTvPa2vPq52ew/05ih9EazkHRkp6uX5UbLggbAwfA== Content-Type: multipart/mixed; boundary="------------4G9a864H1e9yvauCZR47gzMf" Message-ID: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Return pg_control from pg_backup_stop(). From: David Steele To: Michael Paquier Cc: Pg Hackers References: <83f5295e-082d-432c-92a4-365707bd2296@pgbackrest.org> <1248c005-b693-494a-8d7a-68bc7d482679@pgbackrest.org> <8b8aa673-fcef-4e14-a05d-0885283ef1b8@pgbackrest.org> Content-Language: en-US In-Reply-To: <8b8aa673-fcef-4e14-a05d-0885283ef1b8@pgbackrest.org> Date: Fri, 20 Feb 2026 05:47:26 +0000 (UTC) X-CM-Envelope: MS4xfKmir77wXYW4BJZTQKkwpPgW845FMdULWR0wr1o6O6Gbp3pzFgFkw/Nn5b7gFbL5AHt06l5hHnp671HkjbOm6ibPX4RJKev4gwVQXfXBcjzVkUW4Mr3o qOIhBmgOeF2r+aRV+sku6XmYNtO8TLL+3+oIyi71kzgXztUg053BpPxLEHlP7NIBS4QIolx5JdUl3mYyw7cExJbPcb0g04PyoYAKtHr3OK9HyEAHPR+7sHEd X-CM-Analysis: v=2.4 cv=GMJaEfNK c=1 sm=1 tr=0 ts=6997f56f a=+Jx7PF/Ig9cTSiVk8psDuw==:117 a=+Jx7PF/Ig9cTSiVk8psDuw==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=Mf6YOPrGis1_NfuiRbEA:9 a=QEXdDO2ut3YA:10 a=1wDIiH70AAAA:8 a=JohDp9xLRQvFQJ1YrgkA:9 a=B2y7HmGcmWMA:10 a=u-ezU-SPt5tCR3mi_5QA:9 a=uCsh6WI2SJRHIg0NT2Eg:22 X-AuthUser: david@pgbackrest.org List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------4G9a864H1e9yvauCZR47gzMf Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 2/20/26 10:10, David Steele wrote: > On 8/7/25 05:30, David Steele wrote: >> On 1/24/25 13:43, David Steele wrote: >>> >>> Rebased and improved a comment and an error. >> Rebased to fix breakage caused by the split of func.sgml in 4e23c9e. > > > Rebased to implement simplification added by "Simplify creation of > built-in functions with default arguments" (759b03b2). With the patches this time! Regards, -David --------------4G9a864H1e9yvauCZR47gzMf Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v7-01-basebackup.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v7-01-basebackup.patch" Content-Transfer-Encoding: base64 RnJvbSBmNDA0MzQ3MmE3YWNiNGM3NDU2NmFjMTcwMjZkMGU0YjYyNDVhYTU4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgMjAgRmViIDIwMjYgMDI6NTk6NTIgKzAwMDAKU3ViamVjdDogQWRk IHBnX2NvbnRyb2wgZmxhZyB0byBwcmV2ZW50IHJlY292ZXJ5IHdpdGhvdXQgYmFja3VwX2xh YmVsLgoKSGFyZGVuIHJlY292ZXJ5IGJ5IGFkZGluZyBhIGZsYWcgdG8gcGdfY29udHJvbCB0 byBpbmRpY2F0ZSB0aGF0IGJhY2t1cF9sYWJlbCBpcwpyZXF1aXJlZC4gVGhpcyBwcmV2ZW50 cyB0aGUgdXNlciBmcm9tIGRlbGV0aW5nIGJhY2t1cF9sYWJlbCByZXN1bHRpbmcgaW4gYW4K aW5jb25zaXN0ZW50IHJlY292ZXJ5LgoKQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGUg Y29weSBvZiBwZ19jb250cm9sIHVzZWQgYnkgcGdfYmFzZWJhY2t1cCBpcwpndWFyYW50ZWVk IG5vdCB0byBiZSB0b3JuLgoKVGhpcyBmdW5jdGlvbmFsaXR5IGlzIGxpbWl0ZWQgdG8gcGdf YmFzZWJhY2t1cCAob3IgYW55IHNvZnR3YXJlIGNvbWZvcnRhYmxlCndpdGggbW9kaWZ5aW5n IHBnX2NvbnRyb2wpLgoKQ29udHJvbCBhbmQgY2F0YWxvZyB2ZXJzaW9uIGJ1bXBzIGFyZSBy ZXF1aXJlZC4KLS0tCiBkb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLWluZm8uc2dtbCAgICAgICAg ICB8ICA1ICsrKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgICAgICAg ICB8IDIzICsrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJh bnNhbS94bG9ncmVjb3ZlcnkuYyB8IDEwICsrKysrKysrKy0KIHNyYy9iYWNrZW5kL2JhY2t1 cC9iYXNlYmFja3VwLmMgICAgICAgICAgIHwgMTUgKysrKysrLS0tLS0tLS0tCiBzcmMvYmFj a2VuZC91dGlscy9taXNjL3BnX2NvbnRyb2xkYXRhLmMgICB8ICA3ICsrKysrLS0KIHNyYy9i aW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRhdGEuYyAgIHwgIDIgKysKIHNyYy9iaW4v cGdfcmVzZXR3YWwvcGdfcmVzZXR3YWwuYyAgICAgICAgIHwgIDEgKwogc3JjL2Jpbi9wZ19y ZXdpbmQvcGdfcmV3aW5kLmMgICAgICAgICAgICAgfCAgMSArCiBzcmMvaW5jbHVkZS9hY2Nl c3MveGxvZy5oICAgICAgICAgICAgICAgICB8ICAxICsKIHNyYy9pbmNsdWRlL2NhdGFsb2cv cGdfY29udHJvbC5oICAgICAgICAgIHwgIDQgKysrKwogc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdCAgICAgICAgICAgfCAgNiArKystLS0KIHNyYy90ZXN0L3JlY292ZXJ5L3Qv MDAyX2FyY2hpdmluZy5wbCAgICAgIHwgMjAgKysrKysrKysrKysrKysrKysrKysKIDEyIGZp bGVzIGNoYW5nZWQsIDgwIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtaW5mby5zZ21sIGIvZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1pbmZvLnNnbWwKaW5kZXggMjk0ZjQ1ZTgyYTMuLjJlNzhkMjgyMjFjIDEw MDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZnVuYy9mdW5jLWluZm8uc2dtbAorKysgYi9kb2Mv c3JjL3NnbWwvZnVuYy9mdW5jLWluZm8uc2dtbApAQCAtMzY0Niw2ICszNjQ2LDExIEBAIGFj bCAgICAgIHwge3Bvc3RncmVzPWFyd2REeHRtL3Bvc3RncmVzLGZvbz1yL3Bvc3RncmVzfQog ICAgICAgIDxlbnRyeT48dHlwZT5ib29sZWFuPC90eXBlPjwvZW50cnk+CiAgICAgICA8L3Jv dz4KIAorICAgICAgPHJvdz4KKyAgICAgICA8ZW50cnk+PHN0cnVjdGZpZWxkPmJhY2t1cF9s YWJlbF9yZXF1aXJlZDwvc3RydWN0ZmllbGQ+PC9lbnRyeT4KKyAgICAgICA8ZW50cnk+PHR5 cGU+Ym9vbGVhbjwvdHlwZT48L2VudHJ5PgorICAgICAgPC9yb3c+CisKICAgICAgPC90Ym9k eT4KICAgICA8L3Rncm91cD4KICAgIDwvdGFibGU+CmRpZmYgLS1naXQgYS9zcmMvYmFja2Vu ZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94 bG9nLmMKaW5kZXggMTNjY2U5YjQ5ZjEuLmJhYmI3NmI0NzEwIDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNz L3RyYW5zYW0veGxvZy5jCkBAIC05NTg2LDYgKzk1ODYsMjkgQEAgZG9fcGdfYWJvcnRfYmFj a3VwKGludCBjb2RlLCBEYXR1bSBhcmcpCiAJfQogfQogCisvKgorICogQ3JlYXRlIGEgY29u c2lzdGVudCBjb3B5IG9mIGNvbnRyb2wgZGF0YSB0byBiZSB1c2VkIGZvciBiYWNrdXAgYW5k IHVwZGF0ZSBpdAorICogdG8gcmVxdWlyZSBhIGJhY2t1cCBsYWJlbCBmb3IgcmVjb3Zlcnku IEFsc28gcmVjYWxjdWxhdGUgdGhlIENSQy4KKyAqLwordm9pZAorYmFja3VwX2NvbnRyb2xf ZmlsZSh1aW50OF90ICpjb250cm9sRmlsZSkKK3sKKwlDb250cm9sRmlsZURhdGEgKmNvbnRy b2xEYXRhID0gKChDb250cm9sRmlsZURhdGEgKiljb250cm9sRmlsZSk7CisKKwltZW1zZXQo Y29udHJvbEZpbGUgKyBzaXplb2YoQ29udHJvbEZpbGVEYXRhKSwgMCwKKwkJICAgUEdfQ09O VFJPTF9GSUxFX1NJWkUgLSBzaXplb2YoQ29udHJvbEZpbGVEYXRhKSk7CisKKwlMV0xvY2tB Y3F1aXJlKENvbnRyb2xGaWxlTG9jaywgTFdfU0hBUkVEKTsKKwltZW1jcHkoY29udHJvbEZp bGUsIENvbnRyb2xGaWxlLCBzaXplb2YoQ29udHJvbEZpbGVEYXRhKSk7CisJTFdMb2NrUmVs ZWFzZShDb250cm9sRmlsZUxvY2spOworCisJY29udHJvbERhdGEtPmJhY2t1cExhYmVsUmVx dWlyZWQgPSB0cnVlOworCisJSU5JVF9DUkMzMkMoY29udHJvbERhdGEtPmNyYyk7CisJQ09N UF9DUkMzMkMoY29udHJvbERhdGEtPmNyYywgY29udHJvbEZpbGUsIG9mZnNldG9mKENvbnRy b2xGaWxlRGF0YSwgY3JjKSk7CisJRklOX0NSQzMyQyhjb250cm9sRGF0YS0+Y3JjKTsKK30K KwogLyoKICAqIFJlZ2lzdGVyIGEgaGFuZGxlciB0aGF0IHdpbGwgd2FybiBhYm91dCB1bnRl cm1pbmF0ZWQgYmFja3VwcyBhdCBlbmQgb2YKICAqIHNlc3Npb24sIHVubGVzcyB0aGlzIGhh cyBhbHJlYWR5IGJlZW4gZG9uZS4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90 cmFuc2FtL3hsb2dyZWNvdmVyeS5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxv Z3JlY292ZXJ5LmMKaW5kZXggYzBjMjc0NGQ0NWIuLjE4YTBkYjYxMWU2IDEwMDY0NAotLS0g YS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYworKysgYi9zcmMv YmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYwpAQCAtNzEwLDcgKzcxMCwx NCBAQCBJbml0V2FsUmVjb3ZlcnkoQ29udHJvbEZpbGVEYXRhICpDb250cm9sRmlsZSwgYm9v bCAqd2FzU2h1dGRvd25fcHRyLAogCX0KIAllbHNlCiAJewotCQkvKiBObyBiYWNrdXBfbGFi ZWwgZmlsZSBoYXMgYmVlbiBmb3VuZCBpZiB3ZSBhcmUgaGVyZS4gKi8KKwkJLyoKKwkJICog Tm8gYmFja3VwX2xhYmVsIGZpbGUgaGFzIGJlZW4gZm91bmQgaWYgd2UgYXJlIGhlcmUuIEVy cm9yIGlmIHRoZQorCQkgKiBjb250cm9sIGZpbGUgcmVxdWlyZXMgYmFja3VwX2xhYmVsLgor CQkgKi8KKwkJaWYgKENvbnRyb2xGaWxlLT5iYWNrdXBMYWJlbFJlcXVpcmVkKQorCQkJZXJl cG9ydChGQVRBTCwKKwkJCQkJKGVycm1zZygiY291bGQgbm90IGZpbmQgYmFja3VwX2xhYmVs IHJlcXVpcmVkIGZvciByZWNvdmVyeSIpLAorCQkJCQkgZXJyaGludCgiYmFja3VwX2xhYmVs IG11c3QgYmUgcHJlc2VudCBmb3IgcmVjb3ZlcnkgdG8gcHJvY2VlZCIpKSk7CiAKIAkJLyoK IAkJICogSWYgdGFibGVzcGFjZV9tYXAgZmlsZSBpcyBwcmVzZW50IHdpdGhvdXQgYmFja3Vw X2xhYmVsIGZpbGUsIHRoZXJlCkBAIC05OTUsNiArMTAwMiw3IEBAIEluaXRXYWxSZWNvdmVy eShDb250cm9sRmlsZURhdGEgKkNvbnRyb2xGaWxlLCBib29sICp3YXNTaHV0ZG93bl9wdHIs CiAJCXsKIAkJCUNvbnRyb2xGaWxlLT5iYWNrdXBTdGFydFBvaW50ID0gY2hlY2tQb2ludC5y ZWRvOwogCQkJQ29udHJvbEZpbGUtPmJhY2t1cEVuZFJlcXVpcmVkID0gYmFja3VwRW5kUmVx dWlyZWQ7CisJCQlDb250cm9sRmlsZS0+YmFja3VwTGFiZWxSZXF1aXJlZCA9IGZhbHNlOwog CiAJCQlpZiAoYmFja3VwRnJvbVN0YW5kYnkpCiAJCQl7CmRpZmYgLS1naXQgYS9zcmMvYmFj a2VuZC9iYWNrdXAvYmFzZWJhY2t1cC5jIGIvc3JjL2JhY2tlbmQvYmFja3VwL2Jhc2ViYWNr dXAuYwppbmRleCAyZDc0YzY0ODMzNS4uZjU0Yzg3OTMwOTAgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2JhY2t1cC9iYXNlYmFja3VwLmMKKysrIGIvc3JjL2JhY2tlbmQvYmFja3VwL2Jh c2ViYWNrdXAuYwpAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1ZGUgImJhY2t1cC9iYXNlYmFj a3VwX2luY3JlbWVudGFsLmgiCiAjaW5jbHVkZSAiYmFja3VwL2Jhc2ViYWNrdXBfc2luay5o IgogI2luY2x1ZGUgImJhY2t1cC9iYXNlYmFja3VwX3RhcmdldC5oIgorI2luY2x1ZGUgImNh dGFsb2cvcGdfY29udHJvbC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfdGFibGVzcGFjZV9k LmgiCiAjaW5jbHVkZSAiY29tbWFuZHMvZGVmcmVtLmgiCiAjaW5jbHVkZSAiY29tbW9uL2Nv bXByZXNzaW9uLmgiCkBAIC0zMzEsOSArMzMyLDkgQEAgcGVyZm9ybV9iYXNlX2JhY2t1cChi YXNlYmFja3VwX29wdGlvbnMgKm9wdCwgYmJzaW5rICpzaW5rLAogCiAJCQlpZiAodGktPnBh dGggPT0gTlVMTCkKIAkJCXsKLQkJCQlzdHJ1Y3Qgc3RhdCBzdGF0YnVmOwogCQkJCWJvb2wJ CXNlbmR0YmxzcGNsaW5rcyA9IHRydWU7CiAJCQkJY2hhcgkgICAqYmFja3VwX2xhYmVsOwor CQkJCXVpbnQ4X3QgY29udHJvbEZpbGVbUEdfQ09OVFJPTF9GSUxFX1NJWkVdOwogCiAJCQkJ YmJzaW5rX2JlZ2luX2FyY2hpdmUoc2luaywgImJhc2UudGFyIik7CiAKQEAgLTM1NiwxNCAr MzU3LDEwIEBAIHBlcmZvcm1fYmFzZV9iYWNrdXAoYmFzZWJhY2t1cF9vcHRpb25zICpvcHQs IGJic2luayAqc2luaywKIAkJCQkJCXNlbmR0YmxzcGNsaW5rcywgJm1hbmlmZXN0LCBJbnZh bGlkT2lkLCBpYik7CiAKIAkJCQkvKiAuLi4gYW5kIHBnX2NvbnRyb2wgYWZ0ZXIgZXZlcnl0 aGluZyBlbHNlLiAqLwotCQkJCWlmIChsc3RhdChYTE9HX0NPTlRST0xfRklMRSwgJnN0YXRi dWYpICE9IDApCi0JCQkJCWVyZXBvcnQoRVJST1IsCi0JCQkJCQkJKGVycmNvZGVfZm9yX2Zp bGVfYWNjZXNzKCksCi0JCQkJCQkJIGVycm1zZygiY291bGQgbm90IHN0YXQgZmlsZSBcIiVz XCI6ICVtIiwKLQkJCQkJCQkJCVhMT0dfQ09OVFJPTF9GSUxFKSkpOwotCQkJCXNlbmRGaWxl KHNpbmssIFhMT0dfQ09OVFJPTF9GSUxFLCBYTE9HX0NPTlRST0xfRklMRSwgJnN0YXRidWYs Ci0JCQkJCQkgZmFsc2UsIEludmFsaWRPaWQsIEludmFsaWRPaWQsCi0JCQkJCQkgSW52YWxp ZFJlbEZpbGVOdW1iZXIsIDAsICZtYW5pZmVzdCwgMCwgTlVMTCwgMCk7CisJCQkJYmFja3Vw X2NvbnRyb2xfZmlsZShjb250cm9sRmlsZSk7CisJCQkJc2VuZEZpbGVXaXRoQ29udGVudChz aW5rLCBYTE9HX0NPTlRST0xfRklMRSwKKwkJCQkJCQkJCShjaGFyICopY29udHJvbEZpbGUs IFBHX0NPTlRST0xfRklMRV9TSVpFLAorCQkJCQkJCQkJJm1hbmlmZXN0KTsKIAkJCX0KIAkJ CWVsc2UKIAkJCXsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcGdfY29u dHJvbGRhdGEuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcGdfY29udHJvbGRhdGEuYwpp bmRleCBjNmQ5Y2JiMTU3Ny4uYzJjMTllYjc3ZGYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L3V0aWxzL21pc2MvcGdfY29udHJvbGRhdGEuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9t aXNjL3BnX2NvbnRyb2xkYXRhLmMKQEAgLTE2Miw4ICsxNjIsOCBAQCBwZ19jb250cm9sX2No ZWNrcG9pbnQoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19jb250cm9sX3JlY292ZXJ5 KFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0JRGF0dW0JCXZhbHVlc1s1XTsKLQlib29sCQludWxs c1s1XTsKKwlEYXR1bQkJdmFsdWVzWzZdOworCWJvb2wJCW51bGxzWzZdOwogCVR1cGxlRGVz Ywl0dXBkZXNjOwogCUhlYXBUdXBsZQlodHVwOwogCUNvbnRyb2xGaWxlRGF0YSAqQ29udHJv bEZpbGU7CkBAIC0xOTUsNiArMTk1LDkgQEAgcGdfY29udHJvbF9yZWNvdmVyeShQR19GVU5D VElPTl9BUkdTKQogCXZhbHVlc1s0XSA9IEJvb2xHZXREYXR1bShDb250cm9sRmlsZS0+YmFj a3VwRW5kUmVxdWlyZWQpOwogCW51bGxzWzRdID0gZmFsc2U7CiAKKwl2YWx1ZXNbNV0gPSBC b29sR2V0RGF0dW0oQ29udHJvbEZpbGUtPmJhY2t1cExhYmVsUmVxdWlyZWQpOworCW51bGxz WzVdID0gZmFsc2U7CisKIAlodHVwID0gaGVhcF9mb3JtX3R1cGxlKHR1cGRlc2MsIHZhbHVl cywgbnVsbHMpOwogCiAJUEdfUkVUVVJOX0RBVFVNKEhlYXBUdXBsZUdldERhdHVtKGh0dXAp KTsKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRhdGEu YyBiL3NyYy9iaW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRhdGEuYwppbmRleCBhNDA2 MDMwOWFlMC4uNTkxOWRkNThmZWQgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfY29udHJvbGRh dGEvcGdfY29udHJvbGRhdGEuYworKysgYi9zcmMvYmluL3BnX2NvbnRyb2xkYXRhL3BnX2Nv bnRyb2xkYXRhLmMKQEAgLTMwMSw2ICszMDEsOCBAQCBtYWluKGludCBhcmdjLCBjaGFyICph cmd2W10pCiAJCSAgIExTTl9GT1JNQVRfQVJHUyhDb250cm9sRmlsZS0+YmFja3VwRW5kUG9p bnQpKTsKIAlwcmludGYoXygiRW5kLW9mLWJhY2t1cCByZWNvcmQgcmVxdWlyZWQ6ICAgICAg ICAlc1xuIiksCiAJCSAgIENvbnRyb2xGaWxlLT5iYWNrdXBFbmRSZXF1aXJlZCA/IF8oInll cyIpIDogXygibm8iKSk7CisJcHJpbnRmKF8oIkJhY2t1cCBsYWJlbCByZXF1aXJlZDogICAg ICAgICAgICAgICAgJXNcbiIpLAorCQkgICBDb250cm9sRmlsZS0+YmFja3VwTGFiZWxSZXF1 aXJlZCA/IF8oInllcyIpIDogXygibm8iKSk7CiAJcHJpbnRmKF8oIndhbF9sZXZlbCBzZXR0 aW5nOiAgICAgICAgICAgICAgICAgICAgJXNcbiIpLAogCQkgICB3YWxfbGV2ZWxfc3RyKENv bnRyb2xGaWxlLT53YWxfbGV2ZWwpKTsKIAlwcmludGYoXygid2FsX2xvZ19oaW50cyBzZXR0 aW5nOiAgICAgICAgICAgICAgICAlc1xuIiksCmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX3Jl c2V0d2FsL3BnX3Jlc2V0d2FsLmMgYi9zcmMvYmluL3BnX3Jlc2V0d2FsL3BnX3Jlc2V0d2Fs LmMKaW5kZXggODVkYzQzZDRjZGIuLjVlZGRlYmUyN2YyIDEwMDY0NAotLS0gYS9zcmMvYmlu L3BnX3Jlc2V0d2FsL3BnX3Jlc2V0d2FsLmMKKysrIGIvc3JjL2Jpbi9wZ19yZXNldHdhbC9w Z19yZXNldHdhbC5jCkBAIC05MTgsNiArOTE4LDcgQEAgUmV3cml0ZUNvbnRyb2xGaWxlKHZv aWQpCiAJQ29udHJvbEZpbGUuYmFja3VwU3RhcnRQb2ludCA9IEludmFsaWRYTG9nUmVjUHRy OwogCUNvbnRyb2xGaWxlLmJhY2t1cEVuZFBvaW50ID0gSW52YWxpZFhMb2dSZWNQdHI7CiAJ Q29udHJvbEZpbGUuYmFja3VwRW5kUmVxdWlyZWQgPSBmYWxzZTsKKwlDb250cm9sRmlsZS5i YWNrdXBMYWJlbFJlcXVpcmVkID0gZmFsc2U7CiAKIAkvKgogCSAqIEZvcmNlIHRoZSBkZWZh dWx0cyBmb3IgbWF4Xyogc2V0dGluZ3MuIFRoZSB2YWx1ZXMgZG9uJ3QgcmVhbGx5IG1hdHRl cgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19yZXdpbmQvcGdfcmV3aW5kLmMgYi9zcmMvYmlu L3BnX3Jld2luZC9wZ19yZXdpbmQuYwppbmRleCBkMGFhZmQ3ZTdhNi4uZDViNDliMmEyNmIg MTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfcmV3aW5kL3BnX3Jld2luZC5jCisrKyBiL3NyYy9i aW4vcGdfcmV3aW5kL3BnX3Jld2luZC5jCkBAIC03MzYsNiArNzM2LDcgQEAgcGVyZm9ybV9y ZXdpbmQoZmlsZW1hcF90ICpmaWxlbWFwLCByZXdpbmRfc291cmNlICpzb3VyY2UsCiAJQ29u dHJvbEZpbGVfbmV3Lm1pblJlY292ZXJ5UG9pbnQgPSBlbmRyZWM7CiAJQ29udHJvbEZpbGVf bmV3Lm1pblJlY292ZXJ5UG9pbnRUTEkgPSBlbmR0bGk7CiAJQ29udHJvbEZpbGVfbmV3LnN0 YXRlID0gREJfSU5fQVJDSElWRV9SRUNPVkVSWTsKKwlDb250cm9sRmlsZV9uZXcuYmFja3Vw TGFiZWxSZXF1aXJlZCA9IHRydWU7CiAJaWYgKCFkcnlfcnVuKQogCQl1cGRhdGVfY29udHJv bGZpbGUoZGF0YWRpcl90YXJnZXQsICZDb250cm9sRmlsZV9uZXcsIGRvX3N5bmMpOwogfQpk aWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvYWNjZXNzL3hsb2cuaCBiL3NyYy9pbmNsdWRlL2Fj Y2Vzcy94bG9nLmgKaW5kZXggZmRmYjU3MjQ2N2IuLjg0ZWM1YWFiZGZkIDEwMDY0NAotLS0g YS9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZy5oCisrKyBiL3NyYy9pbmNsdWRlL2FjY2Vzcy94 bG9nLmgKQEAgLTMxMSw2ICszMTEsNyBAQCBleHRlcm4gdm9pZCBkb19wZ19iYWNrdXBfc3Rh cnQoY29uc3QgY2hhciAqYmFja3VwaWRzdHIsIGJvb2wgZmFzdCwKIAkJCQkJCQkgICBTdHJp bmdJbmZvIHRibHNwY21hcGZpbGUpOwogZXh0ZXJuIHZvaWQgZG9fcGdfYmFja3VwX3N0b3Ao QmFja3VwU3RhdGUgKnN0YXRlLCBib29sIHdhaXRmb3JhcmNoaXZlKTsKIGV4dGVybiB2b2lk IGRvX3BnX2Fib3J0X2JhY2t1cChpbnQgY29kZSwgRGF0dW0gYXJnKTsKK2V4dGVybiB2b2lk IGJhY2t1cF9jb250cm9sX2ZpbGUodWludDhfdCAqY29udHJvbEZpbGUpOwogZXh0ZXJuIHZv aWQgcmVnaXN0ZXJfcGVyc2lzdGVudF9hYm9ydF9iYWNrdXBfaGFuZGxlcih2b2lkKTsKIGV4 dGVybiBTZXNzaW9uQmFja3VwU3RhdGUgZ2V0X2JhY2t1cF9zdGF0dXModm9pZCk7CiAKZGlm ZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29udHJvbC5oIGIvc3JjL2luY2x1 ZGUvY2F0YWxvZy9wZ19jb250cm9sLmgKaW5kZXggNzUwM2RiMWFmNTEuLjI2NjE4MTYyYTdi IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnRyb2wuaAorKysgYi9z cmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnRyb2wuaApAQCAtMTY2LDEyICsxNjYsMTYgQEAg dHlwZWRlZiBzdHJ1Y3QgQ29udHJvbEZpbGVEYXRhCiAJICogSWYgYmFja3VwRW5kUmVxdWly ZWQgaXMgdHJ1ZSwgd2Uga25vdyBmb3Igc3VyZSB0aGF0IHdlJ3JlIHJlc3RvcmluZwogCSAq IGZyb20gYSBiYWNrdXAsIGFuZCBtdXN0IHNlZSBhIGJhY2t1cC1lbmQgcmVjb3JkIGJlZm9y ZSB3ZSBjYW4gc2FmZWx5CiAJICogc3RhcnQgdXAuCisJICoKKwkgKiBJZiBiYWNrdXBMYWJl bFJlcXVpcmVkIGlzIHRydWUsIHRoZW4gYSBiYWNrdXBfbGFiZWwgZmlsZSBtdXN0IGJlCisJ ICogcHJlc2VudCBpbiBvcmRlciBmb3IgcmVjb3ZlcnkgdG8gcHJvY2VlZC4KIAkgKi8KIAlY TG9nUmVjUHRyCW1pblJlY292ZXJ5UG9pbnQ7CiAJVGltZUxpbmVJRAltaW5SZWNvdmVyeVBv aW50VExJOwogCVhMb2dSZWNQdHIJYmFja3VwU3RhcnRQb2ludDsKIAlYTG9nUmVjUHRyCWJh Y2t1cEVuZFBvaW50OwogCWJvb2wJCWJhY2t1cEVuZFJlcXVpcmVkOworCWJvb2wJCWJhY2t1 cExhYmVsUmVxdWlyZWQ7CiAKIAkvKgogCSAqIFBhcmFtZXRlciBzZXR0aW5ncyB0aGF0IGRl dGVybWluZSBpZiB0aGUgV0FMIGNhbiBiZSB1c2VkIGZvciBhcmNoaXZhbApkaWZmIC0tZ2l0 IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2NhdGFs b2cvcGdfcHJvYy5kYXQKaW5kZXggZGFjNDA5OTJjYmMuLjNjMzY4NDMzNjE1IDEwMDY0NAot LS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTEyNDM3LDkgKzEyNDM3LDkgQEAKIHsgb2lkID0+ ICczNDQzJywKICAgZGVzY3IgPT4gJ3BnX2NvbnRyb2xkYXRhIHJlY292ZXJ5IHN0YXRlIGlu Zm9ybWF0aW9uIGFzIGEgZnVuY3Rpb24nLAogICBwcm9uYW1lID0+ICdwZ19jb250cm9sX3Jl Y292ZXJ5JywgcHJvdm9sYXRpbGUgPT4gJ3YnLCBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLAot ICBwcm9hcmd0eXBlcyA9PiAnJywgcHJvYWxsYXJndHlwZXMgPT4gJ3twZ19sc24saW50NCxw Z19sc24scGdfbHNuLGJvb2x9JywKLSAgcHJvYXJnbW9kZXMgPT4gJ3tvLG8sbyxvLG99JywK LSAgcHJvYXJnbmFtZXMgPT4gJ3ttaW5fcmVjb3ZlcnlfZW5kX2xzbixtaW5fcmVjb3Zlcnlf ZW5kX3RpbWVsaW5lLGJhY2t1cF9zdGFydF9sc24sYmFja3VwX2VuZF9sc24sZW5kX29mX2Jh Y2t1cF9yZWNvcmRfcmVxdWlyZWR9JywKKyAgcHJvYXJndHlwZXMgPT4gJycsIHByb2FsbGFy Z3R5cGVzID0+ICd7cGdfbHNuLGludDQscGdfbHNuLHBnX2xzbixib29sLGJvb2x9JywKKyAg cHJvYXJnbW9kZXMgPT4gJ3tvLG8sbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAne21p bl9yZWNvdmVyeV9lbmRfbHNuLG1pbl9yZWNvdmVyeV9lbmRfdGltZWxpbmUsYmFja3VwX3N0 YXJ0X2xzbixiYWNrdXBfZW5kX2xzbixlbmRfb2ZfYmFja3VwX3JlY29yZF9yZXF1aXJlZCxi YWNrdXBfbGFiZWxfcmVxdWlyZWR9JywKICAgcHJvc3JjID0+ICdwZ19jb250cm9sX3JlY292 ZXJ5JyB9LAogCiB7IG9pZCA9PiAnMzQ0NCcsCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWNv dmVyeS90LzAwMl9hcmNoaXZpbmcucGwgYi9zcmMvdGVzdC9yZWNvdmVyeS90LzAwMl9hcmNo aXZpbmcucGwKaW5kZXggYWE0MGY1OGU2ZDYuLjk5NjNkMTM0NzNlIDEwMDY0NAotLS0gYS9z cmMvdGVzdC9yZWNvdmVyeS90LzAwMl9hcmNoaXZpbmcucGwKKysrIGIvc3JjL3Rlc3QvcmVj b3ZlcnkvdC8wMDJfYXJjaGl2aW5nLnBsCkBAIC00MSw2ICs0MSwyNiBAQCAkbm9kZV9zdGFu ZGJ5LT5hcHBlbmRfY29uZigKIGFyY2hpdmVfY2xlYW51cF9jb21tYW5kID0gJ2VjaG8gYXJj aGl2ZV9jbGVhbnVwX2RvbmUgPiAkYXJjaGl2ZV9jbGVhbnVwX2NvbW1hbmRfZmlsZScKIHJl Y292ZXJ5X2VuZF9jb21tYW5kID0gJ2VjaG8gcmVjb3ZlcnlfZW5kZWRfZG9uZSA+ICRyZWNv dmVyeV9lbmRfY29tbWFuZF9maWxlJwogKSk7CisKKyMgUmVuYW1lIGJhY2t1cF9sYWJlbCB0 byB2ZXJpZnkgdGhhdCByZWNvdmVyeSB3aWxsIG5vdCBzdGFydCB3aXRob3V0IGl0CityZW5h bWUoIiRkYXRhX2Rpci9iYWNrdXBfbGFiZWwiLCAiJGRhdGFfZGlyL2JhY2t1cF9sYWJlbC50 bXAiKQorICBvciBCQUlMX09VVCAiY291bGQgbm90IG1vdmUgJGRhdGFfZGlyL2JhY2t1cF9s YWJlbCI7CisKK215ICRyZXMgPSBydW5fbG9nKAorCVsKKwkJJ3BnX2N0bCcsICctRCcsICRu b2RlX3N0YW5kYnktPmRhdGFfZGlyLCAnLWwnLAorCQkkbm9kZV9zdGFuZGJ5LT5sb2dmaWxl LCAnc3RhcnQnCisJXSk7CitvayghJHJlcywgJ2ludmFsaWQgcmVjb3Zlcnkgc3RhcnR1cCBm YWlscycpOworCitteSAkbG9nZmlsZSA9IHNsdXJwX2ZpbGUoJG5vZGVfc3RhbmRieS0+bG9n ZmlsZSgpKTsKK29rKCRsb2dmaWxlID1+IHFyL2NvdWxkIG5vdCBmaW5kIGJhY2t1cF9sYWJl bCByZXF1aXJlZCBmb3IgcmVjb3ZlcnkvLAorCSdjb3VsZCBub3QgZmluZCBiYWNrdXBfbGFi ZWwgcmVxdWlyZWQgZm9yIHJlY292ZXJ5Jyk7CisKKyMgUmVzdG9yZSBiYWNrdXBfbGFiZWwg c28gcmVjb3ZlcnkgcHJvY2VlZHMgbm9ybWFsbHkKK3JlbmFtZSgiJGRhdGFfZGlyL2JhY2t1 cF9sYWJlbC50bXAiLCAiJGRhdGFfZGlyL2JhY2t1cF9sYWJlbCIpCisgIG9yIEJBSUxfT1VU ICJjb3VsZCBub3QgbW92ZSAkZGF0YV9kaXIvYmFja3VwX2xhYmVsIjsKKwogJG5vZGVfc3Rh bmRieS0+c3RhcnQ7CiAKICMgQ3JlYXRlIHNvbWUgY29udGVudCBvbiBwcmltYXJ5Ci0tIAoy LjM0LjEKCg== --------------4G9a864H1e9yvauCZR47gzMf Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v7-02-sql.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v7-02-sql.patch" Content-Transfer-Encoding: base64 RnJvbSBlNjU0YzQ0YWFjODFjMmFhNWI3MGIwM2E2MjA2N2IwY2FlZGNhZTFjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgMjAgRmViIDIwMjYgMDI6NTk6NTIgKzAwMDAKU3ViamVjdDogUmV0 dXJuIHBnX2NvbnRyb2wgZnJvbSBwZ19iYWNrdXBfc3RvcCgpLgoKSGFyZGVuIHJlY292ZXJ5 IGJ5IHJldHVybmluZyBhIGNvcHkgb2YgcGdfY29udHJvbCBmcm9tIHBnX2JhY2t1cF9zdG9w KCkgdGhhdCBoYXMKYSBmbGFnIHNldCB0byBwcmV2ZW50IHJlY292ZXJ5IGlmIHRoZSBiYWNr dXBfbGFiZWwgZmlsZSBpcyBtaXNzaW5nLiBJbnN0ZWFkIG9mCmJhY2t1cCBzb2Z0d2FyZSBj b3B5aW5nIHBnX2NvbnRyb2wgZnJvbSBQR0RBVEEsIGl0IHN0b3JlcyBhbiB1cGRhdGVkIHZl cnNpb24KdGhhdCBpcyByZXR1cm5lZCBmcm9tIHBnX2JhY2t1cF9zdG9wKCkuIFRoaXMgaXMg YmV0dGVyIGZvciB0aGUgZm9sbG93aW5nCnJlYXNvbnM6CgoqIFRoZSB1c2VyIGNhbiBubyBs b25nZXIgcmVtb3ZlIGJhY2t1cF9sYWJlbCBhbmQgZ2V0IHdoYXQgbG9va3MgbGlrZSBhCnN1 Y2Nlc3NmdWwgcmVjb3ZlcnkgKHdoaWxlIGFsbW9zdCBjZXJ0YWlubHkgY2F1c2luZyBjb3Jy dXB0aW9uKS4gSWYgYmFja3VwX2xhYmVsCmlzIHJlbW92ZWQgdGhlIGNsdXN0ZXIgd2lsbCBu b3Qgc3RhcnQuIFRoZSB1c2VyIG1heSB0cnkgcGdfcmVzZXR3YWwsIGJ1dCB0aGF0CnRvb2wg bWFrZXMgaXQgcHJldHR5IGNsZWFyIHRoYXQgY29ycnVwdGlvbiB3aWxsIHJlc3VsdCBmcm9t IGl0cyB1c2UuCgoqIFdlIGRvbid0IG5lZWQgdG8gd29ycnkgYWJvdXQgYmFja3VwIHNvZnR3 YXJlIHNlZWluZyBhIHRvcm4gY29weSBvZiBwZ19jb250cm9sLApzaW5jZSBQb3N0Z3JlcyBj YW4gc2FmZWx5IHJlYWQgaXQgb3V0IG9mIG1lbW9yeSBhbmQgcHJvdmlkZSBhIHZhbGlkIGNv cHkgdmlhCnBnX2JhY2t1cF9zdG9wKCkuIFRoaXMgc29sdmVzIHRvcm4gcmVhZHMgd2l0aG91 dCBuZWVkaW5nIHRvIHdyaXRlIHBnX2NvbnRyb2wgdmlhCmEgdGVtcCBmaWxlLCB3aGljaCBt YXkgYWZmZWN0IHBlcmZvcm1hbmNlIG9uIGEgc3RhbmRieS4KCiogRm9yIGJhY2t1cCBmcm9t IHN0YW5kYnksIHdlIG5vIGxvbmdlciBuZWVkIHRvIGluc3RydWN0IHRoZSBiYWNrdXAgc29m dHdhcmUgdG8KY29weSBwZ19jb250cm9sIGxhc3QuIEluIGZhY3QgdGhlIGJhY2t1cCBzb2Z0 d2FyZSBzaG91bGQgbm90IGNvcHkgcGdfY29udHJvbCBmcm9tClBHREFUQSBhdCBhbGwuCgpU aGVzZSBjaGFuZ2VzIGhhdmUgbm8gaW1wYWN0IG9uIGN1cnJlbnQgYmFja3VwIHNvZnR3YXJl IGFuZCB0aGV5IGFyZSBmcmVlIHRvIHVzZQp0aGUgcGdfY29udHJvbCBhdmFpbGFibGUgZnJv bSBwZ19zdG9wX2JhY2t1cCgpIG9yIGNvbnRpbnVlIHRvIHVzZSBwZ19jb250cm9sIGZyb20K UEdEQVRBLiBPZiBjb3Vyc2UgdGhleSB3aWxsIG1pc3MgdGhlIGJlbmVmaXRzIG9mIGdldHRp bmcgYSBjb25zaXN0ZW50IGNvcHkgb2YKcGdfY29udHJvbCBhbmQgdGhlIGJhY2t1cF9sYWJl bCBjaGVja2luZywgYnV0IHdpbGwgYmUgbm8gd29yc2Ugb2ZmIHRoYW4gYmVmb3JlLgoKQ2F0 YWxvZyB2ZXJzaW9uIGJ1bXAgaXMgcmVxdWlyZWQuCi0tLQogZG9jL3NyYy9zZ21sL2JhY2t1 cC5zZ21sICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrLQogc3JjL2JhY2tlbmQvYWNj ZXNzL3RyYW5zYW0veGxvZ2Z1bmNzLmMgICAgICB8IDIwICsrKystLQogc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdCAgICAgICAgICAgICB8ICA0ICstCiBzcmMvdGVzdC9yZWNv dmVyeS90LzA0Ml9sb3dfbGV2ZWxfYmFja3VwLnBsIHwgNjcgKysrKysrKysrKysrKysrKysr KystCiA0IGZpbGVzIGNoYW5nZWQsIDk3IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9iYWNrdXAuc2dtbCBiL2RvYy9zcmMvc2dt bC9iYWNrdXAuc2dtbAppbmRleCAxNjg0NDRlY2NjNS4uNjc5NzRiN2IxYjYgMTAwNjQ0Ci0t LSBhL2RvYy9zcmMvc2dtbC9iYWNrdXAuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvYmFja3Vw LnNnbWwKQEAgLTEwMjcsOSArMTAyNywxMiBAQCBTRUxFQ1QgKiBGUk9NIHBnX2JhY2t1cF9z dG9wKHdhaXRfZm9yX2FyY2hpdmUgPT4gdHJ1ZSk7CiAgICAgIHZhbHVlcy4gVGhlIHNlY29u ZCBvZiB0aGVzZSBmaWVsZHMgc2hvdWxkIGJlIHdyaXR0ZW4gdG8gYSBmaWxlIG5hbWVkCiAg ICAgIDxmaWxlbmFtZT5iYWNrdXBfbGFiZWw8L2ZpbGVuYW1lPiBpbiB0aGUgcm9vdCBkaXJl Y3Rvcnkgb2YgdGhlIGJhY2t1cC4gVGhlCiAgICAgIHRoaXJkIGZpZWxkIHNob3VsZCBiZSB3 cml0dGVuIHRvIGEgZmlsZSBuYW1lZAotICAgICA8ZmlsZW5hbWU+dGFibGVzcGFjZV9tYXA8 L2ZpbGVuYW1lPiB1bmxlc3MgdGhlIGZpZWxkIGlzIGVtcHR5LiBUaGVzZSBmaWxlcyBhcmUK KyAgICAgPGZpbGVuYW1lPnRhYmxlc3BhY2VfbWFwPC9maWxlbmFtZT4gdW5sZXNzIHRoZSBm aWVsZCBpcyBlbXB0eS4gVGhlIGZvdXJ0aAorICAgICBmaWVsZCBzaG91bGQgYmUgd3JpdHRl biBpbnRvIGEgZmlsZSBuYW1lZAorICAgICA8ZmlsZW5hbWU+Z2xvYmFsL3BnX2NvbnRyb2w8 L2ZpbGVuYW1lPiAob3ZlcndyaXRpbmcgdGhlIGV4aXN0aW5nIGZpbGUgd2hlbgorICAgICBw cmVzZW50KS4gVGhlc2UgZmlsZXMgYXJlCiAgICAgIHZpdGFsIHRvIHRoZSBiYWNrdXAgd29y a2luZyBhbmQgbXVzdCBiZSB3cml0dGVuIGJ5dGUgZm9yIGJ5dGUgd2l0aG91dAotICAgICBt b2RpZmljYXRpb24sIHdoaWNoIG1heSByZXF1aXJlIG9wZW5pbmcgdGhlIGZpbGUgaW4gYmlu YXJ5IG1vZGUuCisgICAgIG1vZGlmaWNhdGlvbiwgd2hpY2ggd2lsbCByZXF1aXJlIG9wZW5p bmcgdGhlIGZpbGUgaW4gYmluYXJ5IG1vZGUuCiAgICAgPC9wYXJhPgogICAgPC9saXN0aXRl bT4KICAgIDxsaXN0aXRlbT4KQEAgLTExMDEsNyArMTEwNCwxNiBAQCBTRUxFQ1QgKiBGUk9N IHBnX2JhY2t1cF9zdG9wKHdhaXRfZm9yX2FyY2hpdmUgPT4gdHJ1ZSk7CiAgICA8L3BhcmE+ CiAKICAgIDxwYXJhPgotICAgIFlvdSBzaG91bGQsIGhvd2V2ZXIsIG9taXQgZnJvbSB0aGUg YmFja3VwIHRoZSBmaWxlcyB3aXRoaW4gdGhlCisgICAgWW91IHNob3VsZCBleGNsdWRlIDxm aWxlbmFtZT5nbG9iYWwvcGdfY29udHJvbDwvZmlsZW5hbWU+IGZyb20geW91ciBiYWNrdXAK KyAgICBhbmQgcHV0IHRoZSBjb250ZW50cyBvZiB0aGUgPHBhcmFtZXRlcj5jb250cm9sZmls ZTwvcGFyYW1ldGVyPiBjb2x1bW4KKyAgICByZXR1cm5lZCBmcm9tIDxmdW5jdGlvbj5wZ19i YWNrdXBfc3RvcDwvZnVuY3Rpb24+IGluIHlvdXIgYmFja3VwIGF0CisgICAgPGZpbGVuYW1l Pmdsb2JhbC9wZ19jb250cm9sPC9maWxlbmFtZT4uIFRoaXMgdmVyc2lvbiBvZiBwZ19jb250 cm9sIGNvbnRhaW5zCisgICAgc2FmZWd1YXJkcyBhZ2FpbnN0IHJlY292ZXJ5IHdpdGhvdXQg YmFja3VwX2xhYmVsIHByZXNlbnQgYW5kIGlzIGd1YXJhbnRlZWQKKyAgICBub3QgdG8gYmUg dG9ybi4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAgWW91IHNob3VsZCBhbHNvIG9t aXQgZnJvbSB0aGUgYmFja3VwIHRoZSBmaWxlcyB3aXRoaW4gdGhlCiAgICAgY2x1c3Rlcidz IDxmaWxlbmFtZT5wZ193YWwvPC9maWxlbmFtZT4gc3ViZGlyZWN0b3J5LiAgVGhpcwogICAg IHNsaWdodCBhZGp1c3RtZW50IGlzIHdvcnRod2hpbGUgYmVjYXVzZSBpdCByZWR1Y2VzIHRo ZSByaXNrCiAgICAgb2YgbWlzdGFrZXMgd2hlbiByZXN0b3JpbmcuICBUaGlzIGlzIGVhc3kg dG8gYXJyYW5nZSBpZgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0v eGxvZ2Z1bmNzLmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nZnVuY3MuYwpp bmRleCAyZWZlNDEwNWVmYi4uZTdlN2MwYjE4ZTUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L2FjY2Vzcy90cmFuc2FtL3hsb2dmdW5jcy5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90 cmFuc2FtL3hsb2dmdW5jcy5jCkBAIC0xMTMsOSArMTEzLDExIEBAIHBnX2JhY2t1cF9zdGFy dChQR19GVU5DVElPTl9BUkdTKQogICoKICAqIFRoZSBiYWNrdXBfbGFiZWwgY29udGFpbnMg dGhlIHVzZXItc3VwcGxpZWQgbGFiZWwgc3RyaW5nICh0eXBpY2FsbHkgdGhpcwogICogd291 bGQgYmUgdXNlZCB0byB0ZWxsIHdoZXJlIHRoZSBiYWNrdXAgZHVtcCB3aWxsIGJlIHN0b3Jl ZCksIHRoZSBzdGFydGluZwotICogdGltZSwgc3RhcnRpbmcgV0FMIGxvY2F0aW9uIGZvciB0 aGUgZHVtcCBhbmQgc28gb24uICBJdCBpcyB0aGUgY2FsbGVyJ3MKLSAqIHJlc3BvbnNpYmls aXR5IHRvIHdyaXRlIHRoZSBiYWNrdXBfbGFiZWwgYW5kIHRhYmxlc3BhY2VfbWFwIGZpbGVz IGluIHRoZQotICogZGF0YSBmb2xkZXIgdGhhdCB3aWxsIGJlIHJlc3RvcmVkIGZyb20gdGhp cyBiYWNrdXAuCisgKiB0aW1lLCBzdGFydGluZyBXQUwgbG9jYXRpb24gZm9yIHRoZSBkdW1w IGFuZCBzbyBvbi4gIFRoZSBwZ19jb250cm9sIGZpbGUKKyAqIGNvbnRhaW5zIGEgY29uc2lz dGVudCBjb3B5IG9mIHBnX2NvbnRyb2wgdGhhdCBhbHNvIGhhcyBhIHNhZmVndWFyZCBhZ2Fp bnN0CisgKiBiZWluZyB1c2VkIHdpdGhvdXQgYmFja3VwX2xhYmVsLiAgSXQgaXMgdGhlIGNh bGxlcidzIHJlc3BvbnNpYmlsaXR5IHRvIHdyaXRlCisgKiB0aGUgYmFja3VwX2xhYmVsLCBw Z19jb250cm9sLCBhbmQgdGFibGVzcGFjZV9tYXAgZmlsZXMgaW4gdGhlIGRhdGEgZm9sZGVy CisgKiB0aGF0IHdpbGwgYmUgcmVzdG9yZWQgZnJvbSB0aGlzIGJhY2t1cC4KICAqCiAgKiBQ ZXJtaXNzaW9uIGNoZWNraW5nIGZvciB0aGlzIGZ1bmN0aW9uIGlzIG1hbmFnZWQgdGhyb3Vn aCB0aGUgbm9ybWFsCiAgKiBHUkFOVCBzeXN0ZW0uCkBAIC0xMjMsMTIgKzEyNSwxNCBAQCBw Z19iYWNrdXBfc3RhcnQoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19iYWNrdXBfc3Rv cChQR19GVU5DVElPTl9BUkdTKQogewotI2RlZmluZSBQR19CQUNLVVBfU1RPUF9WMl9DT0xT IDMKKyNkZWZpbmUgUEdfQkFDS1VQX1NUT1BfVjJfQ09MUyA0CiAJVHVwbGVEZXNjCXR1cGRl c2M7CiAJRGF0dW0JCXZhbHVlc1tQR19CQUNLVVBfU1RPUF9WMl9DT0xTXSA9IHswfTsKIAli b29sCQludWxsc1tQR19CQUNLVVBfU1RPUF9WMl9DT0xTXSA9IHswfTsKIAlib29sCQl3YWl0 Zm9yYXJjaGl2ZSA9IFBHX0dFVEFSR19CT09MKDApOwogCWNoYXIJICAgKmJhY2t1cF9sYWJl bDsKKwlieXRlYQkgICAqcGdfY29udHJvbF9ieXRlYTsKKwl1aW50OF90CQlwZ19jb250cm9s W1BHX0NPTlRST0xfRklMRV9TSVpFXTsKIAlTZXNzaW9uQmFja3VwU3RhdGUgc3RhdHVzID0g Z2V0X2JhY2t1cF9zdGF0dXMoKTsKIAogCS8qIEluaXRpYWxpemUgYXR0cmlidXRlcyBpbmZv cm1hdGlvbiBpbiB0aGUgdHVwbGUgZGVzY3JpcHRvciAqLwpAQCAtMTUwLDkgKzE1NCwxNyBA QCBwZ19iYWNrdXBfc3RvcChQR19GVU5DVElPTl9BUkdTKQogCS8qIEJ1aWxkIHRoZSBjb250 ZW50cyBvZiBiYWNrdXBfbGFiZWwgKi8KIAliYWNrdXBfbGFiZWwgPSBidWlsZF9iYWNrdXBf Y29udGVudChiYWNrdXBfc3RhdGUsIGZhbHNlKTsKIAorCS8qIEJ1aWxkIHRoZSBjb250ZW50 cyBvZiBwZ19jb250cm9sICovCisJYmFja3VwX2NvbnRyb2xfZmlsZShwZ19jb250cm9sKTsK KworCXBnX2NvbnRyb2xfYnl0ZWEgPSAoYnl0ZWEgKikgcGFsbG9jKFBHX0NPTlRST0xfRklM RV9TSVpFICsgVkFSSERSU1opOworCVNFVF9WQVJTSVpFKHBnX2NvbnRyb2xfYnl0ZWEsIFBH X0NPTlRST0xfRklMRV9TSVpFICsgVkFSSERSU1opOworCW1lbWNweShWQVJEQVRBKHBnX2Nv bnRyb2xfYnl0ZWEpLCBwZ19jb250cm9sLCBQR19DT05UUk9MX0ZJTEVfU0laRSk7CisKIAl2 YWx1ZXNbMF0gPSBMU05HZXREYXR1bShiYWNrdXBfc3RhdGUtPnN0b3Bwb2ludCk7CiAJdmFs dWVzWzFdID0gQ1N0cmluZ0dldFRleHREYXR1bShiYWNrdXBfbGFiZWwpOwogCXZhbHVlc1sy XSA9IENTdHJpbmdHZXRUZXh0RGF0dW0odGFibGVzcGFjZV9tYXAtPmRhdGEpOworCXZhbHVl c1szXSA9IFBvaW50ZXJHZXREYXR1bShwZ19jb250cm9sX2J5dGVhKTsKIAogCS8qIERlYWxs b2NhdGUgYmFja3VwLXJlbGF0ZWQgdmFyaWFibGVzICovCiAJcGZyZWUoYmFja3VwX2xhYmVs KTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMv aW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4IDNjMzY4NDMzNjE1Li5jODk5Njc2 MTNhNSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysg Yi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBAIC02NzQxLDggKzY3NDEsOCBA QAogeyBvaWQgPT4gJzI3MzknLCBkZXNjciA9PiAnZmluaXNoIHRha2luZyBhbiBvbmxpbmUg YmFja3VwJywKICAgcHJvbmFtZSA9PiAncGdfYmFja3VwX3N0b3AnLCBwcm92b2xhdGlsZSA9 PiAndicsIHByb3BhcmFsbGVsID0+ICdyJywKICAgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywg cHJvYXJndHlwZXMgPT4gJ2Jvb2wnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAne2Jvb2wscGdf bHNuLHRleHQsdGV4dH0nLCBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG99JywKLSAgcHJvYXJn bmFtZXMgPT4gJ3t3YWl0X2Zvcl9hcmNoaXZlLGxzbixsYWJlbGZpbGUsc3BjbWFwZmlsZX0n LAorICBwcm9hbGxhcmd0eXBlcyA9PiAne2Jvb2wscGdfbHNuLHRleHQsdGV4dCxieXRlYX0n LCBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAne3dh aXRfZm9yX2FyY2hpdmUsbHNuLGxhYmVsZmlsZSxzcGNtYXBmaWxlLGNvbnRyb2xmaWxlfScs CiAgIHByb2FyZ2RlZmF1bHRzID0+ICd7dHJ1ZX0nLAogICBwcm9zcmMgPT4gJ3BnX2JhY2t1 cF9zdG9wJyB9LAogeyBvaWQgPT4gJzM0MzYnLCBkZXNjciA9PiAncHJvbW90ZSBzdGFuZGJ5 IHNlcnZlcicsCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWNvdmVyeS90LzA0Ml9sb3dfbGV2 ZWxfYmFja3VwLnBsIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wNDJfbG93X2xldmVsX2JhY2t1 cC5wbAppbmRleCBkZjRhZTAyOWZlNi4uMzRjNmY0NDYxYWYgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlY292ZXJ5L3QvMDQyX2xvd19sZXZlbF9iYWNrdXAucGwKKysrIGIvc3JjL3Rlc3Qv cmVjb3ZlcnkvdC8wNDJfbG93X2xldmVsX2JhY2t1cC5wbApAQCAtMTMsNiArMTMsNDIgQEAg dXNlIFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXI7CiB1c2UgUG9zdGdyZVNRTDo6VGVzdDo6 VXRpbHM7CiB1c2UgVGVzdDo6TW9yZTsKIAorIyBEZWNvZGUgaGV4IHRvIGJpbmFyeQorc3Vi IGRlY29kZV9oZXgKK3sKKwlteSAoJGVuY29kZWQpID0gQF87CisJbXkgJGRlY29kZWQ7CisK KwkkZW5jb2RlZCA9fiBzL15ccyt8XHMrJC8vZzsKKworCWZvciAobXkgJGlkeCA9IDA7ICRp ZHggPCBsZW5ndGgoJGVuY29kZWQpOyAkaWR4ICs9IDIpCisJeworCQkkZGVjb2RlZCAuPSBw YWNrKCdDJywgaGV4KHN1YnN0cigkZW5jb2RlZCwgJGlkeCwgMikpKTsKKwl9CisKKwlyZXR1 cm4gJGRlY29kZWQ7Cit9CisKKyMgR2V0IGJhY2t1cF9sYWJlbC9wZ19jb250cm9sIGZyb20g cGdfc3RvcF9iYWNrdXAoKQorc3ViIHN0b3BfYmFja3VwX3Jlc3VsdAoreworCW15ICgkcHNx bCkgPSBAXzsKKworCW15ICRlbmNvZGVkID0gJHBzcWwtPnF1ZXJ5X3NhZmUoCisJCSJzZWxl Y3QgZW5jb2RlKGxhYmVsZmlsZTo6Ynl0ZWEsICdoZXgnKSB8fCAnLCcgfHwgIiAuCisJCSIg ICAgICAgZW5jb2RlKGNvbnRyb2xmaWxlLCAnaGV4JykiIC4KKwkJIiAgZnJvbSBwZ19iYWNr dXBfc3RvcCgpIik7CisKKwlteSBAcmVzdWx0OworCisgICAgZm9yZWFjaCBteSAkY29sdW1u IChzcGxpdCgnLCcsICRlbmNvZGVkKSkKKwl7CisJCXB1c2goQHJlc3VsdCwgZGVjb2RlX2hl eCgkY29sdW1uKSk7CisJfQorCisJcmV0dXJuIEByZXN1bHQ7Cit9CisKICMgU3RhcnQgcHJp bWFyeSBub2RlIHdpdGggYXJjaGl2aW5nLgogbXkgJG5vZGVfcHJpbWFyeSA9IFBvc3RncmVT UUw6OlRlc3Q6OkNsdXN0ZXItPm5ldygncHJpbWFyeScpOwogJG5vZGVfcHJpbWFyeS0+aW5p dChoYXNfYXJjaGl2aW5nID0+IDEsIGFsbG93c19zdHJlYW1pbmcgPT4gMSk7CkBAIC04MCw4 ICsxMTYsNyBAQCBteSAkc3RvcF9zZWdtZW50X25hbWUgPSAkbm9kZV9wcmltYXJ5LT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKIAknU0VMRUNUIHBnX3dhbGZpbGVfbmFtZShwZ19jdXJyZW50 X3dhbF9sc24oKSknKTsKIAogIyBTdG9wIGJhY2t1cCBhbmQgZ2V0IGJhY2t1cF9sYWJlbCwg dGhlIGxhc3Qgc2VnbWVudCBpcyBhcmNoaXZlZC4KLW15ICRiYWNrdXBfbGFiZWwgPQotICAk cHNxbC0+cXVlcnlfc2FmZSgic2VsZWN0IGxhYmVsZmlsZSBmcm9tIHBnX2JhY2t1cF9zdG9w KCkiKTsKKyhteSAkYmFja3VwX2xhYmVsLCBteSAkcGdfY29udHJvbCkgPSBzdG9wX2JhY2t1 cF9yZXN1bHQoJHBzcWwpOwogCiAkcHNxbC0+cXVpdDsKIApAQCAtMTE4LDEwICsxNTMsMzYg QEAgb2soICRub2RlX3JlcGxpY2EtPmxvZ19jb250YWlucygKICRub2RlX3JlcGxpY2EtPnRl YXJkb3duX25vZGU7CiAkbm9kZV9yZXBsaWNhLT5jbGVhbl9ub2RlOwogCisjIFNhdmUgb25s eSBwZ19jb250cm9sIGludG8gdGhlIGJhY2t1cCB0byBkZW1vbnN0cmF0ZSB0aGF0IHBnX2Nv bnRyb2wgcmV0dXJuZWQKKyMgZnJvbSBwZ19zdG9wX2JhY2t1cCgpIHdpbGwgb25seSBwZXJm b3JtIHJlY292ZXJ5IHdoZW4gYmFja3VwX2xhYmVsIGlzIHByZXNlbnQuCitvcGVuKG15ICRm aCwgIj4iLCAiJGJhY2t1cF9kaXIvZ2xvYmFsL3BnX2NvbnRyb2wiKQorICBvciBkaWUgImNv dWxkIG5vdCBvcGVuIHBnX2NvbnRyb2wiOworYmlubW9kZSgkZmgpOworc3lzd3JpdGUoJGZo LCAkcGdfY29udHJvbCk7CitjbG9zZSgkZmgpOworCiskbm9kZV9yZXBsaWNhID0gUG9zdGdy ZVNRTDo6VGVzdDo6Q2x1c3Rlci0+bmV3KCdyZXBsaWNhX2ZhaWwyJyk7Ciskbm9kZV9yZXBs aWNhLT5pbml0X2Zyb21fYmFja3VwKCRub2RlX3ByaW1hcnksICRiYWNrdXBfbmFtZSwKKwlo YXNfcmVzdG9yaW5nID0+IDEpOworCitteSAkcmVzID0gcnVuX2xvZygKKwlbCisJCSdwZ19j dGwnLCAnLUQnLCAkbm9kZV9yZXBsaWNhLT5kYXRhX2RpciwgJy1sJywKKwkJJG5vZGVfcmVw bGljYS0+bG9nZmlsZSwgJ3N0YXJ0JworCV0pOworb2soISRyZXMsICdpbnZhbGlkIHJlY292 ZXJ5IHN0YXJ0dXAgZmFpbHMnKTsKKworbXkgJGxvZ2ZpbGUgPSBzbHVycF9maWxlKCRub2Rl X3JlcGxpY2EtPmxvZ2ZpbGUoKSk7CitvaygkbG9nZmlsZSA9fiBxci9jb3VsZCBub3QgZmlu ZCBiYWNrdXBfbGFiZWwgcmVxdWlyZWQgZm9yIHJlY292ZXJ5LywKKwknY291bGQgbm90IGZp bmQgYmFja3VwX2xhYmVsIHJlcXVpcmVkIGZvciByZWNvdmVyeScpOworCiskbm9kZV9yZXBs aWNhLT50ZWFyZG93bl9ub2RlOworJG5vZGVfcmVwbGljYS0+Y2xlYW5fbm9kZTsKKwogIyBT YXZlIGJhY2t1cF9sYWJlbCBpbnRvIHRoZSBiYWNrdXAgZGlyZWN0b3J5IGFuZCByZWNvdmVy IHVzaW5nIHRoZSBwcmltYXJ5J3MKICMgYXJjaGl2ZS4gIFRoaXMgdGltZSByZWNvdmVyeSB3 aWxsIHN1Y2NlZWQgYW5kIHRoZSBjYW5hcnkgdGFibGUgd2lsbCBiZQogIyBwcmVzZW50Lgot b3BlbiBteSAkZmgsICI+PiIsICIkYmFja3VwX2Rpci9iYWNrdXBfbGFiZWwiCitvcGVuICRm aCwgIj4+IiwgIiRiYWNrdXBfZGlyL2JhY2t1cF9sYWJlbCIKICAgb3IgZGllICJjb3VsZCBu b3Qgb3BlbiBiYWNrdXBfbGFiZWwiOwogIyBCaW5hcnkgbW9kZSBpcyByZXF1aXJlZCBmb3Ig V2luZG93cywgYXMgdGhlIGJhY2t1cF9sYWJlbCBwYXJzaW5nIGlzIG5vdAogIyBhYmxlIHRv IGNvcGUgd2l0aCBDUkxGcy4KLS0gCjIuMzQuMQoK --------------4G9a864H1e9yvauCZR47gzMf--