Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1as8F5-0007fS-KR for pgadmin-hackers@arkaria.postgresql.org; Mon, 18 Apr 2016 12:25:27 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1as8F4-0004ja-Tt for pgadmin-hackers@arkaria.postgresql.org; Mon, 18 Apr 2016 12:25:26 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1as8F3-0004jT-FL for pgadmin-hackers@postgresql.org; Mon, 18 Apr 2016 12:25:25 +0000 Received: from mail-qg0-x232.google.com ([2607:f8b0:400d:c04::232]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1as8Ev-00038k-JK for pgadmin-hackers@postgresql.org; Mon, 18 Apr 2016 12:25:24 +0000 Received: by mail-qg0-x232.google.com with SMTP id f105so114484366qge.2 for ; Mon, 18 Apr 2016 05:25:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:date:message-id:subject:from:to:cc; bh=g7GjHGLwgizMA9/kZKZEctM9hwJSAjJDX9Mdlagvqhs=; b=K1hQDFGdXdSwgWZtxTF+pVomCp9KhoSjpCkqnLXune7g86w/M3aehtbgcEbyfETrSe ijLMgA0zXbpFqanVnrM4LtxDIfsqSYIGQA4DojtvMyk41w0wNt7l8/qXcuLQ3jM58M6j El/iLUr8cuiA+Q7b6AcVYliCBaH7dEoRHxEfPxDMOo9vLp4qEblFbl1MPj+kdQVj7Kk7 dthJju5va2aivtdfi3sZ2YYsHC+/cFlCRLsHHHMN09PeTbb8gZbBX5FKCKu0Lyg2eG+5 9VUJ6/2lMJMaOUGBOuul+4f78Izst+0/FMseSQKl+xW3emIh2NBSuxDPzvGE9G0MMv0y W+OA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to:cc; bh=g7GjHGLwgizMA9/kZKZEctM9hwJSAjJDX9Mdlagvqhs=; b=U/9cp2iPnQTSNqL+5TNstXMF1m9bWR9WjUlWS3cKrbE7PK/VJNaA7Fl/AB/ib5qLVa LsOv+EFqnBlaB0jg7FSPsulAxsMvW1443hLv/aC1Mr1y9SMRW/ura9FA3d6OkcRcEta2 2d6hF6P9VDFHv9GxCwDsje0v11vVK2TzYjF95Wb8OoEUyn7nTtouRlx62eETdM/X5H+Q KgUVk9zbypbk6nTQwW7RYWa62P4gVr2E43Q/dWpcaZ5Vm1U27ZhysKCvSk8H/qJ3dKtK Ywb37yICmLkLdmiwr6fq1+m32XFNJrXf91KFKAEun2T0578QpWAhzAq2U6dncIeHi8xV aF3g== X-Gm-Message-State: AOPr4FWxZ7WTod6bptcOTJIjJWQI3O54/eJSBDZBBaNS3pa2EZBx+tWBwDLD4RBuLnv5snyZ3t/bKDRg+VmVsR3N MIME-Version: 1.0 X-Received: by 10.140.223.199 with SMTP id t190mr25738777qhb.90.1460982316348; Mon, 18 Apr 2016 05:25:16 -0700 (PDT) Received: by 10.140.30.163 with HTTP; Mon, 18 Apr 2016 05:25:16 -0700 (PDT) Date: Mon, 18 Apr 2016 17:55:16 +0530 Message-ID: Subject: Patch for pgAdmin4 package on Mac OS X From: Sandeep Thakkar To: pgadmin-hackers , Dave Page Cc: Hamid Quddus Content-Type: multipart/mixed; boundary=001a11373c3cfdfcfa0530c1730d X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --001a11373c3cfdfcfa0530c1730d Content-Type: multipart/alternative; boundary=001a11373c3cfdfceb0530c1730b --001a11373c3cfdfceb0530c1730b Content-Type: text/plain; charset=UTF-8 Hi Team, Dave, Attached herewith are two patches. pgadmin4-mac-bundle.patch - This includes scripts to build Mac app bundle and DMG for pgAdmin4. This is the tree of the generated app bundle: ---- $ find pgAdmin4.app/ -maxdepth 3 -type d pgAdmin4.app/ pgAdmin4.app//ContentspgAdmin4.app//Contents/Frameworks pgAdmin4.app//Contents/Frameworks/Python.framework pgAdmin4.app//Contents/Frameworks/QtCore.framework pgAdmin4.app//Contents/Frameworks/QtDBus.framework pgAdmin4.app//Contents/Frameworks/QtGui.framework pgAdmin4.app//Contents/Frameworks/QtMultimedia.framework pgAdmin4.app//Contents/Frameworks/QtMultimediaWidgets.framework pgAdmin4.app//Contents/Frameworks/QtNetwork.framework pgAdmin4.app//Contents/Frameworks/QtOpenGL.framework pgAdmin4.app//Contents/Frameworks/QtPositioning.framework pgAdmin4.app//Contents/Frameworks/QtPrintSupport.framework pgAdmin4.app//Contents/Frameworks/QtQml.framework pgAdmin4.app//Contents/Frameworks/QtQuick.framework pgAdmin4.app//Contents/Frameworks/QtSensors.framework pgAdmin4.app//Contents/Frameworks/QtSql.framework pgAdmin4.app//Contents/Frameworks/QtWebChannel.framework pgAdmin4.app//Contents/Frameworks/QtWebKit.framework pgAdmin4.app//Contents/Frameworks/QtWebKitWidgets.framework pgAdmin4.app//Contents/Frameworks/QtWidgets.framework pgAdmin4.app//Contents/MacOS pgAdmin4.app//Contents/PlugIns pgAdmin4.app//Contents/PlugIns/platforms pgAdmin4.app//Contents/Resources pgAdmin4.app//Contents/Resources/venv pgAdmin4.app//Contents/Resources/web --- pgadmin4-fixpath-mac.patch - This is for runtime/Server.cpp to fix the path where the runtime looks for web application path in app bundle. Kindly review and suggest the changes required. Thanks. -- Sandeep Thakkar --001a11373c3cfdfceb0530c1730b Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Team, Dave,

Attached herewith are tw= o patches.=C2=A0

pgadmin4-mac-bundle.patch - This=C2=A0includes scripts to build Mac app bundle and DMG for pgAdmin4. This is the= tree of the generated app bundle:

----
$ find pgAdmin4.app/ -= maxdepth 3 -type d
pgAdmin4.app/
pgAdmin4.app//ContentspgAdmin4.app//= Contents/Frameworks
pgAdmin4.app//Contents/Frameworks/Python.frameworkpgAdmin4.app//Contents/Frameworks/QtCore.framework
pgAdmin4.app= //Contents/Frameworks/QtDBus.framework
pgAdmin4.app//Contents/Frameworks= /QtGui.framework
pgAdmin4.app//Contents/Frameworks/QtMultimedia.framewor= k
pgAdmin4.app//Contents/Frameworks/QtMultimediaWidgets.framework
pgA= dmin4.app//Contents/Frameworks/QtNetwork.framework
pgAdmin4.app//Content= s/Frameworks/QtOpenGL.framework
pgAdmin4.app//Contents/Frameworks/QtPosi= tioning.framework
pgAdmin4.app//Contents/Frameworks/QtPrintSupport.frame= work
pgAdmin4.app//Contents/Frameworks/QtQml.framework
pgAdmin4.app//= Contents/Frameworks/QtQuick.framework
pgAdmin4.app//Contents/Frameworks/= QtSensors.framework
pgAdmin4.app//Contents/Frameworks/QtSql.frameworkpgAdmin4.app//Contents/Frameworks/QtWebChannel.framework
pgAdmin4.app//= Contents/Frameworks/QtWebKit.framework
pgAdmin4.app//Contents/Frameworks= /QtWebKitWidgets.framework
pgAdmin4.app//Contents/Frameworks/QtWidgets.f= ramework
pgAdmin4.app//Contents/MacOS
pgAdmin4.app//Contents/PlugIns<= br>pgAdmin4.app//Contents/PlugIns/platforms
pgAdmin4.app//Contents/Resou= rces
pgAdmin4.app//Contents/Resources/venv
pgAdmin4.app//Contents/Res= ources/web
---

pgadmin4-fixpath-mac.patch - This=C2=A0is for runtime/Server.cpp to fix the path where the runtime looks for web= application path in app bundle.


Kindly r= eview and suggest the changes required.=C2=A0 Thanks.

-= -
Sand= eep Thakkar

--001a11373c3cfdfceb0530c1730b-- --001a11373c3cfdfcfa0530c1730d Content-Type: application/octet-stream; name="pgadmin4-fixpath-mac.patch" Content-Disposition: attachment; filename="pgadmin4-fixpath-mac.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_in5ykjn80 ZGlmZiAtLWdpdCBhL3J1bnRpbWUvU2VydmVyLmNwcCBiL3J1bnRpbWUvU2Vy dmVyLmNwcAppbmRleCA3NzMwMTg0Li5kMjVjN2JmIDEwMDY0NAotLS0gYS9y dW50aW1lL1NlcnZlci5jcHAKKysrIGIvcnVudGltZS9TZXJ2ZXIuY3BwCkBA IC04NSw3ICs4NSw3IEBAIGJvb2wgU2VydmVyOjpJbml0KCkKICAgICBRU3Ry aW5nTGlzdCBwYXRoczsKICAgICBwYXRocy5hcHBlbmQoIi4uL3dlYi8iKTsg Ly8gTGludXggc291cmNlIHRyZWUKICAgICBwYXRocy5hcHBlbmQoIi4uLy4u L3dlYi8iKTsgLy8gV2luZG93cyBzb3VyY2UgdHJlZQotICAgIHBhdGhzLmFw cGVuZCgiLi4vLi4vLi4vLi4vd2ViLyIpOyAvLyBNYWMgc291cmNlIHRyZWUg KGluIHRoZSBhcHAgYnVuZGxlKQorICAgIHBhdGhzLmFwcGVuZCgiLi4vUmVz b3VyY2VzL3dlYi8iKTsgLy8gTWFjIHNvdXJjZSB0cmVlIChpbiB0aGUgYXBw IGJ1bmRsZSkKICAgICBwYXRocy5hcHBlbmQoc2V0dGluZ3MudmFsdWUoIkFw cGxpY2F0aW9uUGF0aCIpLnRvU3RyaW5nKCkpOyAvLyBTeXN0ZW0gY29uZmln dXJlZCB2YWx1ZQogICAgIHBhdGhzLmFwcGVuZCgiIik7IC8vIFNob3VsZCBi ZSBsYXN0IQogCg== --001a11373c3cfdfcfa0530c1730d Content-Type: application/octet-stream; name="pgadmin4-mac-bundle.patch" Content-Disposition: attachment; filename="pgadmin4-mac-bundle.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_in5ykjnm1 ZGlmZiAtLWdpdCBhL2J1aWxkLW1hYy5zaCBiL2J1aWxkLW1hYy5zaApuZXcg ZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5iZmE5OTk0Ci0tLSAv ZGV2L251bGwKKysrIGIvYnVpbGQtbWFjLnNoCkBAIC0wLDAgKzEsMTI0IEBA CisjIS9iaW4vYmFzaAorCisjIEJ1aWxkIHNjcmlwdCB0byBjcmVhdGUgTWFj IEFwcCBCdW5kbGUgYW5kIERNRyBmb3IgcGdBZG1pbjQgcnVudGltZQorCitl eHBvcnQgV0Q9JChjZCBgZGlybmFtZSAkMGAgJiYgcHdkKQorZXhwb3J0IEJV SUxEUk9PVD0kV0QKK2V4cG9ydCBWSVJUVUFMRU5WPXZlbnYKKworaWYgWyAi eCRQWVRIT05fSE9NRSIgPT0gIngiIF07IHRoZW4KKyAgICBlY2hvICJQWVRI T05fSE9NRSBub3Qgc2V0LiBTZXR0aW5nIGl0IHRvIGRlZmF1bHQiCisgICAg ZXhwb3J0IFBZVEhPTl9IT01FPS9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtz L1B5dGhvbi5mcmFtZXdvcmsvVmVyc2lvbnMvMi43CisgICAgZXhwb3J0IFBZ VEhPTl9WRVJTSU9OPTI3CitmaQorCisjIENoZWNrIGlmIFB5dGhvbiBpcyB3 b3JraW5nIGFuZCBjYWxjdWxhdGUgUFlUSE9OX1ZFUlNJT04KK2lmICRQWVRI T05fSE9NRS9iaW4vcHl0aG9uMiAtViA+IC9kZXYvbnVsbCAyPiYxOyB0aGVu CisgICAgZXhwb3J0IFBZVEhPTl9WRVJTSU9OPWAkUFlUSE9OX0hPTUUvYmlu L3B5dGhvbjIgLVYgMj4mMSB8IGF3ayAne3ByaW50ICQyfScgfCBjdXQgLWQi LiIgLWYxLTIgfCBzZWQgJ3MvXC4vLydgCitlbGlmICRQWVRIT05fSE9NRS9i aW4vcHl0aG9uMyAtViA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgZXhw b3J0IFBZVEhPTl9WRVJTSU9OPWAkUFlUSE9OX0hPTUUvYmluL3B5dGhvbjMg LVYgMj4mMSB8IGF3ayAne3ByaW50ICQyfScgfCBjdXQgLWQiLiIgLWYxLTIg fCBzZWQgJ3MvXC4vLydgCitlbHNlCisgICAgZWNobyAiRXJyb3I6IFB5dGhv biBpbnN0YWxsYXRpb24gbWlzc2luZyEiCisgICAgZXhpdCAxCitmaQorCitp ZiBbICIkUFlUSE9OX1ZFUlNJT04iIC1ndCAiMzQiIC1hICIkUFlUSE9OX1ZF UlNJT04iIC1sdCAiMjYiIF07IHRoZW4KKyAgICBlY2hvICJQeXRob24gdmVy c2lvbiBub3Qgc3VwcG9ydGVkIgorICAgIGV4aXQgMgorZmkKKworaWYgWyAi JFBZVEhPTl9WRVJTSU9OIiAtZ2UgIjMwIiBdOyB0aGVuCisgICAgZXhwb3J0 IFBZVEhPTj0kUFlUSE9OX0hPTUUvYmluL3B5dGhvbjMKKyAgICBleHBvcnQg UElQPXBpcDMKKyAgICBleHBvcnQgUkVRVUlSRU1FTlRTPXJlcXVpcmVtZW50 c19weTMudHh0CitlbHNlCisgICAgZXhwb3J0IFBZVEhPTj0kUFlUSE9OX0hP TUUvYmluL3B5dGhvbjIKKyAgICBleHBvcnQgUElQPXBpcAorICAgIGV4cG9y dCBSRVFVSVJFTUVOVFM9cmVxdWlyZW1lbnRzX3B5Mi50eHQKK2ZpCisKK2lm IFsgIngkUVRESVIiID09ICJ4IiBdOyB0aGVuCisgICAgZWNobyAiUVRESVIg bm90IHNldC4gU2V0dGluZyBpdCB0byBkZWZhdWx0IgorICAgIGV4cG9ydCBR VERJUj0vb3B0L2xvY2FsL2xpYmV4ZWMvcXQ1CitmaQorZXhwb3J0IFFNQUtF PSRRVERJUi9iaW4vcW1ha2UKK2lmICEgJFFNQUtFIC0tdmVyc2lvbiA+IC9k ZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgZWNobyAiRXJyb3I6IHFtYWtlIG5v dCBmb3VuZC4gUVQgaW5zdGFsbGF0aW9uIGlzIG5vdCBwcmVzZW50IG9yIGlu Y29tcGxldGUuIgorICAgIGV4aXQgMQorZmkKKworaWYgWyAieCRQR0RJUiIg PT0gIngiIF07IHRoZW4KKyAgICBlY2hvICJQR0RJUiBub3Qgc2V0LiBTZXR0 aW5nIGl0IHRvIGRlZmF1bHQiCisgICAgZXhwb3J0IFBHRElSPS9vcHQvbG9j YWwvbGliL3Bvc3RncmVzcWw5NQorZmkKK2V4cG9ydCBQQVRIPSRQR0RJUi9i aW46JFBBVEgKKworX2dldF92ZXJzaW9uKCkgeworICAgIGV4cG9ydCBwZ2Fk bWluNF9tYWpvcj1gZ3JlcCAiXkFQUF9NQUpPUiIgd2ViL2NvbmZpZy5weSB8 IGN1dCAtZCI9IiAtZjIgfCBzZWQgJ3MvIC8vZydgCisgICAgZXhwb3J0IHBn YWRtaW40X21pbm9yPWBncmVwICJeQVBQX01JTk9SIiB3ZWIvY29uZmlnLnB5 IHwgY3V0IC1kIj0iIC1mMiB8IHNlZCAncy8gLy9nJ2AKKyAgICBleHBvcnQg cGdhZG1pbjRfcmV2aXNpb249YGdyZXAgIl5BUFBfUkVWSVNJT04iIHdlYi9j b25maWcucHkgfCBjdXQgLWQiPSIgLWYyIHwgc2VkICdzLyAvL2cnYAorICAg IGV4cG9ydCBMT05HX1ZFUj0kcGdhZG1pbjRfbWFqb3IuJHBnYWRtaW40X21p bm9yLiRwZ2FkbWluNF9yZXZpc2lvbgorICAgIGV4cG9ydCBTSE9SVF9WRVI9 YGVjaG8gJExPTkdfVkVSIHwgY3V0IC1kIC4gLWYxLDJgCisgICAgZXhwb3J0 IHBnYWRtaW40X3N1ZmZpeD1gZ3JlcCAiXkFQUF9TVUZGSVgiIHdlYi9jb25m aWcucHkgfCBjdXQgLWQiPSIgLWYyIHwgc2VkICdzLyAvL2cnIHwgc2VkICJz LycvL2ciYAorICAgIGlmIFsgISAteiAkcGdhZG1pbjRfc3VmZml4IF07IHRo ZW4KKyAgICAgICAgZXhwb3J0IExPTkdfVkVSPSRMT05HX1ZFUi0kcGdhZG1p bjRfc3VmZml4CisgICAgZmkKK30KKworX2NsZWFudXAoKSB7CisgICAgZWNo byAiQ2xlYW5pbmcgdXAgdGhlIG9sZCBlbnZpcm9ubWVudCBhbmQgYXBwIGJ1 bmRsZSIKKyAgICBybSAtcmYgJEJVSUxEUk9PVC8kVklSVFVBTEVOVgorICAg IHJtIC1yZiAkQlVJTERST09UL3J1bnRpbWUvcGdBZG1pbjQuYXBwCisgICAg cm0gLXJmICRCVUlMRFJPT1QvcGdBZG1pbjQuYXBwCisgICAgcm0gLWYgJEJV SUxEUk9PVC9wZ0FkbWluNC5kbWcKK30KKworX2NyZWF0ZV9weXRob25fdmly dHVhbGVudigpIHsKKyAgICBjZCAkQlVJTERST09UCisgICAgdGVzdCAtZCAk VklSVFVBTEVOViB8fCB2aXJ0dWFsZW52IC1wICRQWVRIT04gJFZJUlRVQUxF TlYKKyAgICBzb3VyY2UgJFZJUlRVQUxFTlYvYmluL2FjdGl2YXRlCisgICAg JFBJUCBpbnN0YWxsIC1yICRCVUlMRFJPT1QvJFJFUVVJUkVNRU5UUyB8fCAo ZWNobyAiUElQIGluc3RhbGwgZmFpbGVkLiBQbGVhc2UgcmVzb2x2ZSB0aGUg aXNzdWUgYW5kIHJlcnVuIHRoZSBzY3JpcHQiOyBleGl0IDMpCit9CisKK19i dWlsZF9ydW50aW1lKCkgeworICAgIF9jcmVhdGVfcHl0aG9uX3ZpcnR1YWxl bnYgfHwgZXhpdCAzCisgICAgY2QgJEJVSUxEUk9PVC93ZWIKKyAgICBzZWQg LWUgJ3MvU0VSVkVSX01PREUgPSBUcnVlL1NFUlZFUl9NT0RFID0gRmFsc2Uv JyBjb25maWcucHkgPiBjb25maWdfbG9jYWwucHkKKyAgICBweXRob24gc2V0 dXAucHkKKyAgICBjZCAkQlVJTERST09UL3J1bnRpbWUKKyAgICAkUU1BS0UK KyAgICBtYWtlCisgICAgY3AgLXBSIHBnQWRtaW40LmFwcCAkQlVJTERST09U Cit9CisKK19jb21wbGV0ZV9idW5kbGUoKSB7CisgICAgY2QgJEJVSUxEUk9P VC9wa2cvbWFjCisgICAgdGVzdCAtZCAkQlVJTERST09UL3BnQWRtaW40LmFw cC9Db250ZW50cy9SZXNvdXJjZXMgfHwgbWtkaXIgLXAgJEJVSUxEUk9PVC9w Z0FkbWluNC5hcHAvQ29udGVudHMvUmVzb3VyY2VzCisgICAgCisgICAgIyBS ZXBsYWNlIHRoZSBwbGFjZSBob2xkZXJzIHdpdGggdGhlIGN1cnJlbnQgdmVy c2lvbgorICAgIHNlZCAtZSAicy9QR0FETUlOX0xPTkdfVkVSU0lPTi8kTE9O R19WRVIvZyIgLWUgInMvUEdBRE1JTl9TSE9SVF9WRVJTSU9OLyRTSE9SVF9W RVIvZyIgcGdhZG1pbi5JbmZvLnBsaXN0LmluID4gcGdhZG1pbi5JbmZvLnBs aXN0CisKKyAgICAjIGNvcHkgUHl0aG9uIHByaXZhdGUgZW52aXJvbm1lbnQg dG8gYXBwIGJ1bmRsZQorICAgIGNwIC1wUiAkQlVJTERST09ULyRWSVJUVUFM RU5WICRCVUlMRFJPT1QvcGdBZG1pbjQuYXBwL0NvbnRlbnRzL1Jlc291cmNl cy8KKworICAgICMgcmVtb3ZlIHRoZSBweXRob24gYmluIGZyb20gYXBwIGJ1 bmRsZSBhcyBpdCBpcyBub3QgbmVlZGVkCisgICAgcm0gLXJmICRCVUlMRFJP T1QvcGdBZG1pbjQuYXBwL0NvbnRlbnRzL1Jlc291cmNlcy8kVklSVFVBTEVO Vi9iaW4gJEJVSUxEUk9PVC9wZ0FkbWluNC5hcHAvQ29udGVudHMvUmVzb3Vy Y2VzLyRWSVJUVUFMRU5WLy5QeXRob24KKworICAgICMgcnVuIGNvbXBsZXRl LWJ1bmRsZSB0byBjb3B5IHRoZSBkZXBlbmRlbnQgbGlicmFyaWVzIGFuZCBm cmFtZXdvcmtzIGFuZCBmaXggdGhlIHJwYXRocworICAgIC4vY29tcGxldGUt YnVuZGxlLnNoICRCVUlMRFJPT1QvcGdBZG1pbjQuYXBwCisKKyAgICAjIGNv cHkgdGhlIHdlYiBkaXJlY3RvcnkgdG8gdGhlIGJ1bmRsZSBhcyBpdCBpcyBy ZXF1aXJlZCBieSBydW50aW1lCisgICAgY3AgLXBSICRCVUlMRFJPT1Qvd2Vi ICRCVUlMRFJPT1QvcGdBZG1pbjQuYXBwL0NvbnRlbnRzL1Jlc291cmNlcy8K KworfQorCitfY3JlYXRlX2RtZygpIHsKKyAgICBjZCAkQlVJTERST09UCisg ICAgc2ggLi9wa2cvbWFjL2NyZWF0ZS1kbWcuc2gKK30KKworX2dldF92ZXJz aW9uCitfY2xlYW51cAorX2J1aWxkX3J1bnRpbWUKK19jb21wbGV0ZV9idW5k bGUKK19jcmVhdGVfZG1nCmRpZmYgLS1naXQgYS9wa2cvbWFjLy5EU19TdG9y ZSBiL3BrZy9tYWMvLkRTX1N0b3JlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjc4NjFlMjkKQmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBh bmQgYi9wa2cvbWFjLy5EU19TdG9yZSBkaWZmZXIKZGlmZiAtLWdpdCBhL3Br Zy9tYWMvLmdpdGlnbm9yZSBiL3BrZy9tYWMvLmdpdGlnbm9yZQpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDI5Y2IwCi0tLSAvZGV2 L251bGwKKysrIGIvcGtnL21hYy8uZ2l0aWdub3JlCkBAIC0wLDAgKzEsMyBA QAorIyBHbG9iYWwgZXhjbHVkZXMgYWNyb3NzIGFsbCBzdWJkaXJlY3Rvcmll cworZGVidWcucGdhZG1pbi5JbmZvLnBsaXN0CitwZ2FkbWluLkluZm8ucGxp c3QKZGlmZiAtLWdpdCBhL3BrZy9tYWMvUGtnSW5mbyBiL3BrZy9tYWMvUGtn SW5mbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZDA0 MjEwCi0tLSAvZGV2L251bGwKKysrIGIvcGtnL21hYy9Qa2dJbmZvCkBAIC0w LDAgKzEgQEAKK0FQUEw/Pz8/ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls ZQpkaWZmIC0tZ2l0IGEvcGtnL21hYy9SRUFETUUgYi9wa2cvbWFjL1JFQURN RQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzA5MjE4 Ci0tLSAvZGV2L251bGwKKysrIGIvcGtnL21hYy9SRUFETUUKQEAgLTAsMCAr MSwyMSBAQAorCitJbnN0cnVjdGlvbnMgb24gaG93IHRvIGJ1aWxkIHRoZSBw Z0FkbWluNC5kbWcgb24gTWFjIE9TIFgKKworUmVxdWlyZWQgUGFja2FnZXMg KEVpdGhlciBidWlsZCB0aGUgc291cmNlcyBvciBnZXQgdGhlbSBmcm9tIG1h Y3BvcnRzKToKKworMS4gUHl0aG9uIGluc3RhbGxhdGlvbgorLSBQeXRob24g Mi42IG9yIGFib3ZlIGZyb20gaHR0cHM6Ly93d3cucHl0aG9uLm9yZy8KKwor Mi4gUVQgaW5zdGFsbGF0aW9uCistIFF0IDQgb3IgNSBmcm9tIGh0dHA6Ly93 d3cucXQuaW8vCisKKzMuIFBvc3RncmVTUUwgaW5zdGFsbGF0aW9uCistIFBv c3RncmVTUUwgOS4xIG9yIGFib3ZlIGZyb20gaHR0cDovL3d3dy5wb3N0Z3Jl c3FsLm9yZy8KKworQnVpbGRpbmc6CisKKzEuIHNldCBQWVRIT05fSE9NRSBl bnZpcm9ubWVudCB2YXJpYWJsZSB0byB0aGUgUHl0aG9uIHJvb3QgaW5zdGFs bGF0aW9uIGRpcmVjdG9yeQorMi4gc2V0IFFURElSIGVudmlyb25tZW50IHZh cmlhYmxlIHRvIHRoZSBRVCByb290IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkK KzMuIHNldCBQR0RJUiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byB0aGUgUG9z dGdyZVNRTCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis0LiBHbyB0byBwZ0Fk bWluNCByb290IGRpcmVjdG9yeSBhbmQgcnVuIGJ1aWxkLW1hYy5zaC4gVGhp cyB3aWxsIGNvbXBpbGUgdGhlIHJ1bnRpbWUKK2FuZCBjcmVhdGUgdGhlIGFw cCBidW5kbGUgcGdBZG1pbjQuYXBwIGFuZCBETUcgcGdBZG1pbjQuZG1nIGlu IHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KZGlmZiAtLWdpdCBhL3BrZy9tYWMv Y29tcGxldGUtYnVuZGxlLnNoIGIvcGtnL21hYy9jb21wbGV0ZS1idW5kbGUu c2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYWRhZGY0 YwotLS0gL2Rldi9udWxsCisrKyBiL3BrZy9tYWMvY29tcGxldGUtYnVuZGxl LnNoCkBAIC0wLDAgKzEsMTI3IEBACisjIS9iaW4vc2gKKworYnVuZGxlPSIk MSIKKworaWYgISB0ZXN0IC1kICIkYnVuZGxlIiA7IHRoZW4KKwllY2hvICIk YnVuZGxlIGlzIG5vIGJ1bmRsZSEiID4mMgorCWV4aXQgMQorZmkKKworCit0 ZXN0IC1kICIkYnVuZGxlL0NvbnRlbnRzL1Jlc291cmNlcyIgfHwgbWtkaXIg LXAgIiRidW5kbGUvQ29udGVudHMvUmVzb3VyY2VzIiB8fCBleGl0IDEKKyMg Q3JlYXRlIHF0LmNvbmYgc28gdGhhdCBhcHAga25vd3Mgd2hlcmUgdGhlIFBs dWdpbnMgYXJlIHByZXNlbnQKK2NhdCA+PiAiJGJ1bmRsZS9Db250ZW50cy9S ZXNvdXJjZXMvcXQuY29uZiIgPDwgRU9GCitbUGF0aHNdCitQbHVnaW5zID0g UGx1Z0lucworRU9GCisKK3Rlc3QgLWQgIiRidW5kbGUvQ29udGVudHMvRnJh bWV3b3JrcyIgfHwgbWtkaXIgLXAgIiRidW5kbGUvQ29udGVudHMvRnJhbWV3 b3JrcyIgfHwgZXhpdCAxCit0ZXN0IC1kICIkYnVuZGxlL0NvbnRlbnRzL1Bs dWdJbnMvcGxhdGZvcm1zIiB8fCBta2RpciAtcCAiJGJ1bmRsZS9Db250ZW50 cy9QbHVnSW5zL3BsYXRmb3JtcyIgfHwgZXhpdCAxCitjcCAtZiAkUVRESVIv cGx1Z2lucy9wbGF0Zm9ybXMvbGlicWNvY29hLmR5bGliICIkYnVuZGxlL0Nv bnRlbnRzL1BsdWdJbnMvcGxhdGZvcm1zIgorY3AgLWYgJFBHRElSL2xpYnBx LjUuZHlsaWIgIiRidW5kbGUvQ29udGVudHMvRnJhbWV3b3JrcyIgfHwgKGVj aG8gbGlicHEuNS5keWxpYiBub3QgZm91bmQgaW4gJFBHRElSOyBleGl0IDEp CisKK2Z1bmN0aW9uIENvbXBsZXRlU2luZ2xlQXBwKCkgeworCWxvY2FsIGJ1 bmRsZT0kMSB0YWc9JChiYXNlbmFtZSAiJDEiKSB0b2RvIHRvZG9fb2xkIGZ3 X3JlbHBhdGggbGliIGxpYl9ibiBuZXN0ZWRfYXBwIG5hX3JlbHBhdGgKKwor CWVjaG8gIkNvbXBsZXRpbmcgYXBwOiAkYnVuZGxlIgorCXB1c2hkICIkYnVu ZGxlIiA+IC9kZXYvbnVsbAorCisJI1dlIHNraXAgbmVzdGVkIGFwcHMgaGVy ZSAtIHRob3NlIGFyZSB0cmVhdGVkIHNwZWNpYWxseQorCXRvZG89JChmaWxl IGBmaW5kIC4vIC1wZXJtICswMTExICEgLXR5cGUgZCAhIC1wYXRoICIqLmFw cC8qIiAhIC1uYW1lICIqLmFwcCJgIHwgZ3JlcCAtRSAiTWFjaC1PIDY0LWJp dCIgfCBhd2sgLUYgJzp8ICcgJ3tPUlM9IiAiOyBwcmludCAkMX0nIHwgdW5p cSkKKworCWVjaG8gIkFwcDogJHRhZzogRm91bmQgZXhlY3V0YWJsZXM6ICR0 b2RvIgorCXdoaWxlIHRlc3QgIiR0b2RvIiAhPSAiIjsgZG8KKwkJdG9kb19v bGQ9JHRvZG8gOworCQl0b2RvPSIiIDsKKwkJZm9yIHRvZG9fb2JqIGluICR0 b2RvX29sZDsgZG8KKwkJCWVjaG8gIkFwcDogJHRhZzogUG9zdC1wcm9jZXNz aW5nOiAkdG9kb19vYmoiCisKKwkJCSNGaWd1cmUgb3V0IHRoZSByZWxhdGl2 ZSBwYXRoIGZyb20gdG9kb19vYmogdG8gQ29udGVudHMvRnJhbWV3b3Jrcwor CQkJZndfcmVscGF0aD0kKGVjaG8gIiR0b2RvX29iaiIgfFwKKwkJCQlzZWQg LW4gJ3N8XlwoXC4vLypcKVwoXChbXi9dW14vXSovXCkqXClbXi9dW14vXSok fFwyfGdwJyB8IFwKKwkJCQlzZWQgLW4gJ3N8W14vXVteL10qL3wuLi98Z3An IFwKKwkJCSkiQ29udGVudHMvRnJhbWV3b3JrcyIKKwkJCWZ3X3JlbHBhdGhf b2xkPSRmd19yZWxwYXRoCisKKwkJCWZ3X2xvYz0iQ29udGVudHMvRnJhbWV3 b3JrcyIKKworCQkJI0ZpbmQgYWxsIGxpYnJhcmllcyAkdG9kb19vYmogZGVw ZW5kcyBvbiwgYnV0IHNraXAgc3lzdGVtIGxpYnJhcmllcworCQkJZm9yIGxp YiBpbiAkKAorCQkJCW90b29sIC1MICR0b2RvX29iaiB8IFwKKwkJCQlncmVw ICJRdFx8ZHlsaWJcfEZyYW1ld29ya3NcfFBsdWdJbnMiIHwgZ3JlcCAtdiAi OiIgfCBzZWQgJ3MvKC4qLy8nIHwgZWdyZXAgLXYgJygvdXNyL2xpYil8KC9T eXN0ZW0pfEBleGVjdXRhYmxlX3BhdGhAJyBcCisJCQkpICQob3Rvb2wgLUwg JHRvZG9fb2JqIHwgZ3JlcCAiUHl0aG9uIiB8IGdyZXAgLXYgIjoiIHwgc2Vk ICdzLyguKi8vJyBcCisJCQkpOyBkbworCQkJCWlmIGVjaG8gJGxpYiB8IGdy ZXAgIlBsdWdJbnNcfGxpYnFjb2NvYSIgID4gL2Rldi9udWxsOyB0aGVuCisJ CQkJCWxpYl9sb2M9IkNvbnRlbnRzL1BsdWdJbnMvcGxhdGZvcm1zIgorCQkJ CWVsaWYgZWNobyAkbGliIHwgZ3JlcCAiUXQiID4gL2Rldi9udWxsOyB0aGVu CisJCQkJCXF0ZndfcGF0aD0iJChkaXJuYW1lICRsaWIgfCBzZWQgJ3N8Lipc KFF0LipmcmFtZXdvcmtcKXxcMXwnKSIKKwkJCQkJbGliX2xvYz0iQ29udGVu dHMvRnJhbWV3b3Jrcy8kcXRmd19wYXRoIgorCQkJCQlpZiBbICIkKGJhc2Vu YW1lICR0b2RvX29iaikiID0gIiRsaWIiIF07IHRoZW4KKwkJCQkJCWxpYl9s b2M9IiQoZGlybmFtZSAkdG9kb19vYmopIgorCQkJCQkJcXRmd19wYXRoPSQo ZWNobyAkbGliX2xvYyB8IHNlZCAncy9Db250ZW50c1wvRnJhbWV3b3Jrc1wv Ly8nKQorCQkJCQlmaQorCQkJCWVsaWYgZWNobyAkbGliIHwgZ3JlcCAiUHl0 aG9uIiA+IC9kZXYvbnVsbDsgdGhlbgorCQkJCQlweWZ3X3BhdGg9IiQoZGly bmFtZSAkbGliIHwgc2VkICdzfC4qXChQeXRob24uKmZyYW1ld29ya1wpfFwx fCcpIgorCQkJCQlsaWJfbG9jPSJDb250ZW50cy9GcmFtZXdvcmtzLyRweWZ3 X3BhdGgiCisJCQkJCWlmIFsgIiQoYmFzZW5hbWUgJHRvZG9fb2JqKSIgPSAi JGxpYiIgXTsgdGhlbgorCQkJCQkJbGliX2xvYz0iJChkaXJuYW1lICR0b2Rv X29iaikiCisJCQkJCQlweWZ3X3BhdGg9JChlY2hvICRsaWJfbG9jIHwgc2Vk ICdzL0NvbnRlbnRzXC9GcmFtZXdvcmtzXC8vLycpCisJCQkJCWZpCisJCQkJ ZWxzZQorCQkJCQlsaWJfbG9jPSJDb250ZW50cy9GcmFtZXdvcmtzIgorCQkJ CWZpCisJCQkJbGliX2JuPSIkKGJhc2VuYW1lICIkbGliIikiIDsKKwkJCQlp ZiAhIHRlc3QgLWYgIiRsaWJfbG9jLyRsaWJfYm4iOyB0aGVuCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2ZpbGU9 IiIKKwkJCQkJdGFyZ2V0X3BhdGg9IiIKKwkJCQkJZWNobyAiQXBwOiAkdGFn OiBBZGRpbmcgc3ltbGluazogJGxpYl9ibiAoYmVjYXVzZSBvZjogJHRvZG9f b2JqKSIKKwkJCQkJaWYgZWNobyAkbGliIHwgZ3JlcCBRdCA+IC9kZXYvbnVs bCB8fCBlY2hvICRsaWIgfCBncmVwIFB5dGhvbiA+IC9kZXYvbnVsbCA7IHRo ZW4KKwkJCQkJCWNwIC1SICQoZGlybmFtZSAkbGliKS8uLi8uLi8uLi8kbGli X2JuLmZyYW1ld29yayAiJGZ3X2xvYy8iCisJCQkJCWVsc2UKKwkJCQkJCWNw IC1SICIkbGliIiAiJGxpYl9sb2MvJGxpYl9ibiIKKwkJCQkJZmkKKwkJCQkJ aWYgISB0ZXN0IC1MICIkbGliX2xvYy8kbGliX2JuIjsgdGhlbgorCQkJCQkJ Y2htb2QgNzU1ICIkbGliX2xvYy8kbGliX2JuIgorCQkJCQllbHNlCisJCQkJ CQl0YXJnZXRfZmlsZT0kKHJlYWRsaW5rICIkbGliIikKKwkJCQkJCXRhcmdl dF9wYXRoPSQoZGlybmFtZSAiJGxpYiIpLyR0YXJnZXRfZmlsZQorCQkJCQkg ICAgICAgIGVjaG8gIkFwcDogJHRhZzogQWRkaW5nIHN5bWxpbmsgdGFyZ2V0 OiAkdGFyZ2V0X3BhdGgiCisJCQkJCQljcCAiJHRhcmdldF9wYXRoIiAiJGxp Yl9sb2MvJHRhcmdldF9maWxlIgorCQkJCQkJY2htb2QgNzU1ICIkbGliX2xv Yy8kdGFyZ2V0X2ZpbGUiCisJCQkJCWZpCisJCQkJCWVjaG8gIlJld3JpdGlu ZyBJRCBpbiAkbGliX2xvYy8kbGliX2JuIHRvICRsaWJfYm4iCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFsbF9uYW1l X3Rvb2wgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLWlkICIkbGliX2JuIiBcCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJGxpYl9sb2MvJGxp Yl9ibiIgfHwgZXhpdCAxCisJCQkJCXRvZG89IiR0b2RvIC4vJGxpYl9sb2Mv JGxpYl9ibiIKKwkJCQlmaQorCQkJCWlmIGVjaG8gJGxpYiB8IGdyZXAgUXQg PiAvZGV2L251bGwgOyB0aGVuCisJCQkJCWZ3X3JlbHBhdGg9IiRmd19yZWxw YXRoLyRxdGZ3X3BhdGgiCisJCQkJZmkKKwkJCQlpZiBlY2hvICRsaWIgfCBn cmVwIFB5dGhvbiA+IC9kZXYvbnVsbCA7IHRoZW4KKwkJCQkJZndfcmVscGF0 aD0iJGZ3X3JlbHBhdGgvJHB5ZndfcGF0aCIKKwkJCQlmaQorCQkJCWVjaG8g IlJld3JpdGluZyBsaWJyYXJ5ICRsaWIgdG8gQGxvYWRlcl9wYXRoLyRmd19y ZWxwYXRoLyRsaWJfYm4gaW4gJHRvZG9fb2JqIgorCQkJCWluc3RhbGxfbmFt ZV90b29sIC1jaGFuZ2UgXAorCQkJCQkiJGxpYiIgXAorCQkJCQkiQGxvYWRl cl9wYXRoLyRmd19yZWxwYXRoLyRsaWJfYm4iIFwKKwkJCQkJIiR0b2RvX29i aiIgfHwgZXhpdCAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGluc3RhbGxfbmFtZV90b29sIC1jaGFuZ2UgXAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICIkdGFyZ2V0X3BhdGgiIFwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQGxvYWRl cl9wYXRoLyRmd19yZWxwYXRoLyR0YXJnZXRfZmlsZSIgXAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIkdG9kb19vYmoiIHx8 IGV4aXQgMQorCQkJCWZ3X3JlbHBhdGg9IiRmd19yZWxwYXRoX29sZCIKKwkJ CWRvbmUKKwkJZG9uZQorCWRvbmUKKworCSMgRml4IHRoZSBycGF0aHMgZm9y IHBzeWNvcGcgbW9kdWxlCisJZmluZCAkYnVuZGxlL0NvbnRlbnRzL1Jlc291 cmNlcy92ZW52LyAtbmFtZSBfcHN5Y29wZy5zbyB8IHhhcmdzIGluc3RhbGxf bmFtZV90b29sIC1jaGFuZ2UgbGlicHEuNS5keWxpYiBAbG9hZGVyX3BhdGgv Li4vLi4vLi4vLi4vLi4vLi4vRnJhbWV3b3Jrcy9saWJwcS41LmR5bGliCisJ ZmluZCAkYnVuZGxlL0NvbnRlbnRzL1Jlc291cmNlcy92ZW52LyAtbmFtZSBf cHN5Y29wZy5zbyB8IHhhcmdzIGluc3RhbGxfbmFtZV90b29sIC1jaGFuZ2Ug bGlic3NsLjEuMC4wLmR5bGliIEBsb2FkZXJfcGF0aC8uLi8uLi8uLi8uLi8u Li8uLi9GcmFtZXdvcmtzL2xpYnNzbC4xLjAuMC5keWxpYgorCWZpbmQgJGJ1 bmRsZS9Db250ZW50cy9SZXNvdXJjZXMvdmVudi8gLW5hbWUgX3BzeWNvcGcu c28gfCB4YXJncyBpbnN0YWxsX25hbWVfdG9vbCAtY2hhbmdlIGxpYmNyeXB0 by4xLjAuMC5keWxpYiBAbG9hZGVyX3BhdGgvLi4vLi4vLi4vLi4vLi4vLi4v RnJhbWV3b3Jrcy9saWJjcnlwdG8uMS4wLjAuZHlsaWIKKworCWVjaG8gIkFw cCBjb21wbGV0ZWQ6ICRidW5kbGUiCisJcG9wZCA+IC9kZXYvbnVsbAorfQor CitDb21wbGV0ZVNpbmdsZUFwcCAiJGJ1bmRsZSIKZGlmZiAtLWdpdCBhL3Br Zy9tYWMvY3JlYXRlLWRtZy5zaCBiL3BrZy9tYWMvY3JlYXRlLWRtZy5zaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYmY4ZTU0Ci0t LSAvZGV2L251bGwKKysrIGIvcGtnL21hYy9jcmVhdGUtZG1nLnNoCkBAIC0w LDAgKzEsMzIgQEAKKyMhL2Jpbi9zaAorRE1HX1NPVVJDRVM9Ii4vcGdBZG1p bjQuYXBwIgorRE1HX0xJQ0VOQ0U9Li9wa2cvbWFjL2xpY2VuY2UucgorRE1H X0lNQUdFPS4vcGdBZG1pbjQuZG1nCitETUdfTkFNRT1wZ0FkbWluNAorSERJ VVRJTD0vdXNyL2Jpbi9oZGl1dGlsCitSRVo9Ii91c3IvYmluL1JleiAvU3lz dGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3JrL1ZlcnNp b25zL0EvSGVhZGVycy8qLnIiCisKK0RNR19ESVI9JERNR19JTUFHRS5zcmMK KworaWYgdGVzdCAtZSAiJERNR19ESVIiOyB0aGVuCisJZWNobyAiRGlyZWN0 b3J5ICRETUdfRElSIGFscmVhZHkgZXhpc3RzLiBQbGVhc2UgZGVsZXRlIGl0 IG1hbnVhbGx5LiIgPiYyCisJZXhpdCAxCitmaQorCitlY2hvICJDbGVhbmlu ZyB1cCIKK3JtIC1mICIkRE1HX0lNQUdFIiB8fCBleGl0IDEKK21rZGlyICIk RE1HX0RJUiIgfHwgZXhpdCAxCisKK2VjaG8gIkNvcHlpbmcgZGF0YSBpbnRv IHRlbXBvcmFyeSBkaXJlY3RvcnkiCitmb3Igc3JjIGluICRETUdfU09VUkNF UzsgZG8KKwljcCAtUiAiJHNyYyIgIiRETUdfRElSIiB8fCBleGl0IDEKK2Rv bmUKKworZWNobyAiQ3JlYXRpbmcgaW1hZ2UiCiskSERJVVRJTCBjcmVhdGUg LXF1aWV0IC1zcmNmb2xkZXIgIiRETUdfRElSIiAtZm9ybWF0IFVEWk8gLXZv bG5hbWUgIiRETUdfTkFNRSIgLW92ICIkRE1HX0lNQUdFIiB8fCBleGl0IDEK K3JtIC1yZiAiJERNR19ESVIiIHx8IGV4aXQgMQorCitlY2hvICJBdHRhY2hp bmcgTGljZW5zZSB0byBpbWFnZSIKKyRIRElVVElMIHVuZmxhdHRlbiAtcXVp ZXQgIiRETUdfSU1BR0UiIHx8IGV4aXQgMQorJFJFWiAiJERNR19MSUNFTkNF IiAtYSAtbyAiJERNR19JTUFHRSIgfHwgZXhpdCAxCiskSERJVVRJTCBmbGF0 dGVuIC1xdWlldCAiJERNR19JTUFHRSIgfHwgZXhpdCAxCmRpZmYgLS1naXQg YS9wa2cvbWFjL2xpY2VuY2UuciBiL3BrZy9tYWMvbGljZW5jZS5yCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyZDMxZjEKLS0tIC9k ZXYvbnVsbAorKysgYi9wa2cvbWFjL2xpY2VuY2UucgpAQCAtMCwwICsxLDQy IEBACitkYXRhICdMUGljJyAoNTAwMCkgew0KKwkkIjAwMDAgMDAwMSAwMDAw IDAwMDAgMDAwMCINCit9Ow0KKw0KK3Jlc291cmNlICdTVFIjJyAoNTAwMCwg IkVuZ2xpc2ggYnV0dG9ucyIpIHsNCisgICAgeyAgIC8qIGFycmF5IFN0cmlu Z0FycmF5OiA5IGVsZW1lbnRzICovDQorICAgICAgICAvKiBbMV0gKi8NCisg ICAgICAgICJFbmdsaXNoIiwNCisgICAgICAgIC8qIFsyXSAqLw0KKyAgICAg ICAgIkFncmVlIiwNCisgICAgICAgIC8qIFszXSAqLw0KKyAgICAgICAgIkRp c2FncmVlIiwNCisgICAgICAgIC8qIFs0XSAqLw0KKyAgICAgICAgIlByaW50 IiwNCisgICAgICAgIC8qIFs1XSAqLw0KKyAgICAgICAgIlNhdmUuLi4iLA0K KyAgICAgICAgLyogWzZdICovDQorICAgICAgICAiSU1QT1JUQU5UIC0gUmVh ZCB0aGlzIExpY2Vuc2UgQWdyZWVtZW50IGNhcmVmdWxseSBiZWZvcmUgY2xp Y2tpbmcgb24gIg0KKyAgICAgICAgInRoZSBcIkFncmVlXCIgYnV0dG9uLiAg QnkgY2xpY2tpbmcgb24gdGhlIFwiQWdyZWVcIiBidXR0b24sIHlvdSBhZ3Jl ZSAiDQorICAgICAgICAidG8gYmUgYm91bmQgYnkgdGhlIHRlcm1zIG9mIHRo ZSBMaWNlbnNlIEFncmVlbWVudC4iLA0KKyAgICAgICAgLyogWzddICovDQor ICAgICAgICAiU29mdHdhcmUgTGljZW5zZSBBZ3JlZW1lbnQiLA0KKyAgICAg ICAgLyogWzhdICovDQorICAgICAgICAiVGhpcyB0ZXh0IGNhbm5vdCBiZSBz YXZlZC4gVGhpcyBkaXNrIG1heSBiZSBmdWxsIG9yIGxvY2tlZCwgb3IgdGhl IGZpbGUgIg0KKyAgICAgICAgIm1heSBiZSBsb2NrZWQuIiwNCisgICAgICAg IC8qIFs5XSAqLw0KKyAgICAgICAgIlVuYWJsZSB0byBwcmludC4gTWFrZSBz dXJlIHlvdSd2ZSBzZWxlY3RlZCBhIHByaW50ZXIuIg0KKyAgICB9DQorfTsN CisNCitkYXRhICdURVhUJyAoNTAwMCwgIkVuZ2xpc2giKSB7DQorICAgICJw Z0FkbWluIDRcbiINCisgICAgIlxuIg0KKyAgICAiQ29weXJpZ2h0IChDKSAy MDE2LCBUaGUgcGdBZG1pbiBEZXZlbG9wbWVudCBUZWFtXG4iDQorICAgICJc biINCisgICAgIlBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFu ZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgYW5kIGl0cyBkb2N1bWVudGF0 aW9uIGZvciBhbnkgcHVycG9zZSwgd2l0aG91dCBmZWUsIGFuZCB3aXRob3V0 IGEgd3JpdHRlbiBhZ3JlZW1lbnQgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3Zp ZGVkIHRoYXQgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMg cGFyYWdyYXBoIGFuZCB0aGUgZm9sbG93aW5nIHR3byBwYXJhZ3JhcGhzIGFw cGVhciBpbiBhbGwgY29waWVzLlxuIg0KKyAgICAiXG4iDQorICAgICJJTiBO TyBFVkVOVCBTSEFMTCBUSEUgUEdBRE1JTiBERVZFTE9QTUVOVCBURUFNIEJF IExJQUJMRSBUTyBBTlkgUEFSVFkgRk9SIERJUkVDVCwgSU5ESVJFQ1QsIFNQ RUNJQUwsIElOQ0lERU5UQUwsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUywg SU5DTFVESU5HIExPU1QgUFJPRklUUywgQVJJU0lORyBPVVQgT0YgVEhFIFVT RSBPRiBUSElTIFNPRlRXQVJFIEFORCBJVFMgRE9DVU1FTlRBVElPTiwgRVZF TiBJRiBUSEUgUEdBRE1JTiBERVZFTE9QTUVOVCBURUFNIEhBUyBCRUVOIEFE VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLlxuIg0K KyAgICAiXG4iDQorICAgICJUSEUgUEdBRE1JTiBERVZFTE9QTUVOVCBURUFN IFNQRUNJRklDQUxMWSBESVNDTEFJTVMgQU5ZIFdBUlJBTlRJRVMsIElOQ0xV RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU SUNVTEFSIFBVUlBPU0UuIFRIRSBTT0ZUV0FSRSBQUk9WSURFRCBIRVJFVU5E RVIgSVMgT04gQU4gXCJBUyBJU1wiIEJBU0lTLCBBTkQgVEhFIFBHQURNSU4g REVWRUxPUE1FTlQgVEVBTSBIQVMgTk8gT0JMSUdBVElPTlMgVE8gUFJPVklE RSBNQUlOVEVOQU5DRSwgU1VQUE9SVCwgVVBEQVRFUywgRU5IQU5DRU1FTlRT LCBPUiBNT0RJRklDQVRJT05TLlxuIg0KK307DQorDQpkaWZmIC0tZ2l0IGEv cGtnL21hYy9wZ0FkbWluNC5pY25zIGIvcGtnL21hYy9wZ0FkbWluNC5pY25z Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJjZmM4NjgK QmluYXJ5IGZpbGVzIC9kZXYvbnVsbCBhbmQgYi9wa2cvbWFjL3BnQWRtaW40 LmljbnMgZGlmZmVyCmRpZmYgLS1naXQgYS9wa2cvbWFjL3BnYWRtaW4uSW5m by5wbGlzdCBiL3BrZy9tYWMvcGdhZG1pbi5JbmZvLnBsaXN0Cm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmNDQyYzEKLS0tIC9kZXYv bnVsbAorKysgYi9wa2cvbWFjL3BnYWRtaW4uSW5mby5wbGlzdApAQCAtMCww ICsxLDY5IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYt OCI/PgorPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUgQ29tcHV0 ZXIvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20v RFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+Cis8cGxpc3QgdmVyc2lvbj0i MS4wIj4KKzxkaWN0PgorCTxrZXk+Q0ZCdW5kbGVEZXZlbG9wbWVudFJlZ2lv bjwva2V5PgorCTxzdHJpbmc+RW5nbGlzaDwvc3RyaW5nPgorCTxrZXk+Q0ZC dW5kbGVEb2N1bWVudFR5cGVzPC9rZXk+CisJPGFycmF5PgorCQk8ZGljdD4K KwkJCTxrZXk+Q0ZCdW5kbGVUeXBlRXh0ZW5zaW9uczwva2V5PgorCQkJPGFy cmF5PgorCQkJCTxzdHJpbmc+c3FsPC9zdHJpbmc+CisJCQk8L2FycmF5Pgor CQkJPGtleT5DRkJ1bmRsZVR5cGVJY29uRmlsZTwva2V5PgorCQkJPHN0cmlu Zz5zcWwuaWNuczwvc3RyaW5nPgorCQkJPGtleT5DRkJ1bmRsZVR5cGVOYW1l PC9rZXk+CisJCQk8c3RyaW5nPnBnQWRtaW40IFNRTCBRdWVyeTwvc3RyaW5n PgorCQkJPGtleT5DRkJ1bmRsZVR5cGVSb2xlPC9rZXk+CisJCQk8c3RyaW5n PkVkaXRvcjwvc3RyaW5nPgorCQkJPGtleT5MU0l0ZW1Db250ZW50VHlwZXM8 L2tleT4KKwkJCTxhcnJheT4KKwkJCQk8c3RyaW5nPm9yZy5wb3N0Z3Jlc3Fs LnBnYWRtaW4uc3FsPC9zdHJpbmc+CisJCQk8L2FycmF5PgorCQk8L2RpY3Q+ CisJPC9hcnJheT4KKwk8a2V5PkNGQnVuZGxlRXhlY3V0YWJsZTwva2V5Pgor CTxzdHJpbmc+cGdBZG1pbjQ8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlR2V0 SW5mb1N0cmluZzwva2V5PgorCTxzdHJpbmc+cGdBZG1pbjQgMS4wLjAtZGV2 PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUljb25GaWxlPC9rZXk+CisJPHN0 cmluZz5wZ0FkbWluNC5pY25zPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUlk ZW50aWZpZXI8L2tleT4KKwk8c3RyaW5nPm9yZy5wb3N0Z3Jlc3FsLnBnYWRt aW48L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlSW5mb0RpY3Rpb25hcnlWZXJz aW9uPC9rZXk+CisJPHN0cmluZz42LjA8L3N0cmluZz4KKwk8a2V5PkNGQnVu ZGxlUGFja2FnZVR5cGU8L2tleT4KKwk8c3RyaW5nPkFQUEw8L3N0cmluZz4K Kwk8a2V5PkNGQnVuZGxlU2hvcnRWZXJzaW9uU3RyaW5nPC9rZXk+CisJPHN0 cmluZz4xLjA8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlU2lnbmF0dXJlPC9r ZXk+CisJPHN0cmluZz4/Pz8/PC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVZl cnNpb248L2tleT4KKwk8c3RyaW5nPjEuMC4wLWRldjwvc3RyaW5nPgorCTxr ZXk+Q1NSZXNvdXJjZXNGaWxlTWFwcGVkPC9rZXk+CisJPHRydWUvPgorCTxr ZXk+VVRFeHBvcnRlZFR5cGVEZWNsYXJhdGlvbnM8L2tleT4KKwk8YXJyYXk+ CisJCTxkaWN0PgorCQkJPGtleT5VVFR5cGVDb25mb3Jtc1RvPC9rZXk+CisJ CQk8YXJyYXk+CisJCQkJPHN0cmluZz5wdWJsaWMudXRmOC1wbGFpbi10ZXh0 PC9zdHJpbmc+CisJCQk8L2FycmF5PgorCQkJPGtleT5VVFR5cGVEZXNjcmlw dGlvbjwva2V5PgorCQkJPHN0cmluZz5wZ0FkbWluNCBTUUwgUXVlcnk8L3N0 cmluZz4KKwkJCTxrZXk+VVRUeXBlSWNvbkZpbGU8L2tleT4KKwkJCTxzdHJp bmc+c3FsLmljbnM8L3N0cmluZz4KKwkJCTxrZXk+VVRUeXBlSWRlbnRpZmll cjwva2V5PgorCQkJPHN0cmluZz5vcmcucG9zdGdyZXNxbC5wZ2FkbWluLnNx bDwvc3RyaW5nPgorCQkJPGtleT5VVFR5cGVUYWdTcGVjaWZpY2F0aW9uPC9r ZXk+CisJCQk8ZGljdD4KKwkJCQk8a2V5PnB1YmxpYy5maWxlbmFtZS1leHRl bnNpb248L2tleT4KKwkJCQk8YXJyYXk+CisJCQkJCTxzdHJpbmc+c3FsPC9z dHJpbmc+CisJCQkJPC9hcnJheT4KKwkJCTwvZGljdD4KKwkJPC9kaWN0Pgor CTwvYXJyYXk+Cis8L2RpY3Q+Cis8L3BsaXN0PgpkaWZmIC0tZ2l0IGEvcGtn L21hYy9wZ2FkbWluLkluZm8ucGxpc3QuaW4gYi9wa2cvbWFjL3BnYWRtaW4u SW5mby5wbGlzdC5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi5jYzhjMDdhCi0tLSAvZGV2L251bGwKKysrIGIvcGtnL21hYy9wZ2Fk bWluLkluZm8ucGxpc3QuaW4KQEAgLTAsMCArMSw2OSBAQAorPD94bWwgdmVy c2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KKzwhRE9DVFlQRSBwbGlz dCBQVUJMSUMgIi0vL0FwcGxlIENvbXB1dGVyLy9EVEQgUExJU1QgMS4wLy9F TiIgImh0dHA6Ly93d3cuYXBwbGUuY29tL0RURHMvUHJvcGVydHlMaXN0LTEu MC5kdGQiPgorPHBsaXN0IHZlcnNpb249IjEuMCI+Cis8ZGljdD4KKwk8a2V5 PkNGQnVuZGxlRGV2ZWxvcG1lbnRSZWdpb248L2tleT4KKwk8c3RyaW5nPkVu Z2xpc2g8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlRG9jdW1lbnRUeXBlczwv a2V5PgorCTxhcnJheT4KKwkJPGRpY3Q+CisJCQk8a2V5PkNGQnVuZGxlVHlw ZUV4dGVuc2lvbnM8L2tleT4KKwkJCTxhcnJheT4KKwkJCQk8c3RyaW5nPnNx bDwvc3RyaW5nPgorCQkJPC9hcnJheT4KKwkJCTxrZXk+Q0ZCdW5kbGVUeXBl SWNvbkZpbGU8L2tleT4KKwkJCTxzdHJpbmc+c3FsLmljbnM8L3N0cmluZz4K KwkJCTxrZXk+Q0ZCdW5kbGVUeXBlTmFtZTwva2V5PgorCQkJPHN0cmluZz5w Z0FkbWluNCBTUUwgUXVlcnk8L3N0cmluZz4KKwkJCTxrZXk+Q0ZCdW5kbGVU eXBlUm9sZTwva2V5PgorCQkJPHN0cmluZz5FZGl0b3I8L3N0cmluZz4KKwkJ CTxrZXk+TFNJdGVtQ29udGVudFR5cGVzPC9rZXk+CisJCQk8YXJyYXk+CisJ CQkJPHN0cmluZz5vcmcucG9zdGdyZXNxbC5wZ2FkbWluLnNxbDwvc3RyaW5n PgorCQkJPC9hcnJheT4KKwkJPC9kaWN0PgorCTwvYXJyYXk+CisJPGtleT5D RkJ1bmRsZUV4ZWN1dGFibGU8L2tleT4KKwk8c3RyaW5nPnBnQWRtaW40PC9z dHJpbmc+CisJPGtleT5DRkJ1bmRsZUdldEluZm9TdHJpbmc8L2tleT4KKwk8 c3RyaW5nPnBnQWRtaW40IFBHQURNSU5fTE9OR19WRVJTSU9OPC9zdHJpbmc+ CisJPGtleT5DRkJ1bmRsZUljb25GaWxlPC9rZXk+CisJPHN0cmluZz5wZ0Fk bWluNC5pY25zPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZUlkZW50aWZpZXI8 L2tleT4KKwk8c3RyaW5nPm9yZy5wb3N0Z3Jlc3FsLnBnYWRtaW48L3N0cmlu Zz4KKwk8a2V5PkNGQnVuZGxlSW5mb0RpY3Rpb25hcnlWZXJzaW9uPC9rZXk+ CisJPHN0cmluZz42LjA8L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlUGFja2Fn ZVR5cGU8L2tleT4KKwk8c3RyaW5nPkFQUEw8L3N0cmluZz4KKwk8a2V5PkNG QnVuZGxlU2hvcnRWZXJzaW9uU3RyaW5nPC9rZXk+CisJPHN0cmluZz5QR0FE TUlOX1NIT1JUX1ZFUlNJT048L3N0cmluZz4KKwk8a2V5PkNGQnVuZGxlU2ln bmF0dXJlPC9rZXk+CisJPHN0cmluZz4/Pz8/PC9zdHJpbmc+CisJPGtleT5D RkJ1bmRsZVZlcnNpb248L2tleT4KKwk8c3RyaW5nPlBHQURNSU5fTE9OR19W RVJTSU9OPC9zdHJpbmc+CisJPGtleT5DU1Jlc291cmNlc0ZpbGVNYXBwZWQ8 L2tleT4KKwk8dHJ1ZS8+CisJPGtleT5VVEV4cG9ydGVkVHlwZURlY2xhcmF0 aW9uczwva2V5PgorCTxhcnJheT4KKwkJPGRpY3Q+CisJCQk8a2V5PlVUVHlw ZUNvbmZvcm1zVG88L2tleT4KKwkJCTxhcnJheT4KKwkJCQk8c3RyaW5nPnB1 YmxpYy51dGY4LXBsYWluLXRleHQ8L3N0cmluZz4KKwkJCTwvYXJyYXk+CisJ CQk8a2V5PlVUVHlwZURlc2NyaXB0aW9uPC9rZXk+CisJCQk8c3RyaW5nPnBn QWRtaW40IFNRTCBRdWVyeTwvc3RyaW5nPgorCQkJPGtleT5VVFR5cGVJY29u RmlsZTwva2V5PgorCQkJPHN0cmluZz5zcWwuaWNuczwvc3RyaW5nPgorCQkJ PGtleT5VVFR5cGVJZGVudGlmaWVyPC9rZXk+CisJCQk8c3RyaW5nPm9yZy5w b3N0Z3Jlc3FsLnBnYWRtaW4uc3FsPC9zdHJpbmc+CisJCQk8a2V5PlVUVHlw ZVRhZ1NwZWNpZmljYXRpb248L2tleT4KKwkJCTxkaWN0PgorCQkJCTxrZXk+ cHVibGljLmZpbGVuYW1lLWV4dGVuc2lvbjwva2V5PgorCQkJCTxhcnJheT4K KwkJCQkJPHN0cmluZz5zcWw8L3N0cmluZz4KKwkJCQk8L2FycmF5PgorCQkJ PC9kaWN0PgorCQk8L2RpY3Q+CisJPC9hcnJheT4KKzwvZGljdD4KKzwvcGxp c3Q+CmRpZmYgLS1naXQgYS9wa2cvbWFjL3NxbC5pY25zIGIvcGtnL21hYy9z cWwuaWNucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44 MTA4YTRkCkJpbmFyeSBmaWxlcyAvZGV2L251bGwgYW5kIGIvcGtnL21hYy9z cWwuaWNucyBkaWZmZXIK --001a11373c3cfdfcfa0530c1730d Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers --001a11373c3cfdfcfa0530c1730d--