Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1igpCd-0002ev-De for pgadmin-hackers@arkaria.postgresql.org; Mon, 16 Dec 2019 12:10:19 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1igpCc-0002Hj-6n for pgadmin-hackers@arkaria.postgresql.org; Mon, 16 Dec 2019 12:10:18 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1igpCb-0002Hc-Kn for pgadmin-hackers@lists.postgresql.org; Mon, 16 Dec 2019 12:10:18 +0000 Received: from mail-ed1-x52a.google.com ([2a00:1450:4864:20::52a]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1igpCY-0001CC-Sw for pgadmin-hackers@postgresql.org; Mon, 16 Dec 2019 12:10:16 +0000 Received: by mail-ed1-x52a.google.com with SMTP id l8so4840783edw.1 for ; Mon, 16 Dec 2019 04:10:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=8UzwS7d+dkkeAs8yffruAftJyzS4Z3CUm6xJLHTrv5A=; b=hyEkAHc8jHpnLANXty+Y0430umvKj7ruuM5d7uucDuWEPk4NIuPoh8iI1WiCiwfkhe ILEQSMBJbiqjd6nki69ts/bPN9C85CsrXWKoKgp+kf1hhLw7KTSeX4esEa9rWLgJQf5A LlSnY+WM/J7XaljZb7EmBiB4Tad2rvxJblbCJ8rkG8gor+Y5bnE3fs6EurHir9szhXU7 UuVTaMGb0LsFnd9Pjj41wTJKEzyhiZrPMMBXM7P5/OxBD7a6hx2VtWVS/CMkfWu4+ZTJ RT2Eh3se6DqJf3eIKXbRaZTUtt7gHxB3haLujLgHWZjUmCwFBaSHv4SZV/Kqs0agv7Ld UNCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=8UzwS7d+dkkeAs8yffruAftJyzS4Z3CUm6xJLHTrv5A=; b=Mx2Ol75GNY3AvAA8R8pXTxEq+IFQUumYakdtpPy6x46V7yVgBgqXaebgpo6+XUrSEU LG3ataVoa6BZM1jegmJW6qSztbMJldB1El2WSaq+eAMS1+VH+/+/RAY8IP4ZjTA1xHRc dGCfd8AtPrzJG8it8/7HvJ/rw9V6lnYPqZhlOHU/PzPDFxrYgFqEDPsWQVFGShVtIrZ0 Z2EvS+lzB5wv7CDlpaYJWQcNKol6zyxvV1Nlq7q6ZMh8tdaF2s9HoWe91nHgETwcCouy pNxkKRxrvFSG+YY5voD55TEXDwBAg9EpncKW7t5CyHy0ivjeR3dniAy26slRb1d8QeTR cRzQ== X-Gm-Message-State: APjAAAUiW5M98Ewskt9x3Rygwp8+yno7nuaSEC936ceGz3FOdD70d2W9 W2NAd/zG1RVxeskiPJiTlTKXh34gABvJgPOcNYRursQ/8L6eM1Um0c2PvoyV2KVvZrhI7iAkBD1 gb8i1Pd9hcI+APYtnqyWr8be1Botse/7B8rHuuCIJ4vLzh0nQq8tkHXiRAdxewmwolQZpoYGC+H Nevb5LPXR8u2naggpiPRsrHcHw8q30clRPX84h493M/Ip8t1bLPH8cFUn1 X-Google-Smtp-Source: APXvYqxntoHz7lZgJd6l6cpmPMAf7aDCn+uTX5HWG0N4sEJlvlxIqqYsikjxnn5VBuTqn4wLfhUKdFFdTXENA/WEP3Q= X-Received: by 2002:a17:906:74d1:: with SMTP id z17mr31741450ejl.99.1576498213023; Mon, 16 Dec 2019 04:10:13 -0800 (PST) MIME-Version: 1.0 From: Aditya Toshniwal Date: Mon, 16 Dec 2019 17:39:37 +0530 Message-ID: Subject: [pgAdmin][RM4988] Refactoring of all the SQL files used by pgAdmin4 To: pgadmin-hackers Content-Type: multipart/mixed; boundary="000000000000fa31230599d11749" X-CLOUD-SEC-AV-Info: edb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000fa31230599d11749 Content-Type: multipart/alternative; boundary="000000000000fa31210599d11747" --000000000000fa31210599d11747 Content-Type: text/plain; charset="UTF-8" Hi Hackers, Attached patch which is related to RM4988, reduces the number of hits to edit_mode_types.sql (an expensive one). Currently, this is query is executed for every column one by one when table properties dialog is opened. I've added edit_mode_types_bulk.sql, which will fetch the edit types for all the distinct column types used in the table in a single DB trip and use that data for each column. Also, while generating RE-SQL for columns, edit_mode_types.sql will not be executed. This will definitely reduce time. Kindly review. -- Thanks and Regards, Aditya Toshniwal Sr. Software Engineer | EnterpriseDB India | Pune "Don't Complain about Heat, Plant a TREE" --000000000000fa31210599d11747 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,

<= font face=3D"verdana, sans-serif" color=3D"#000000">Attached patch which is= related to RM4988, reduces the number of hits to=C2=A0edit_mode_types.sql (an expensive on= e).
Currently, this is query is executed for every c= olumn one by one when table properties dialog is opened. I've added=C2= =A0edit_m= ode_types_bulk.sql, which will fetch the edit types for all the distinct co= lumn types used in the table in a single DB trip and use that data for each= column.
Also, while generating RE-SQL for columns,=C2= =A0edit_mode_types.sql wil= l not be executed.
This will definitely reduce time.

Kindly review.

--
Thanks and Regards,
Aditya Toshniwal
Sr. Software Engineer |=C2=A0EnterpriseDB India= |=C2=A0Pune
&q= uot;Don't Complain about Heat, Plant a TREE"
--000000000000fa31210599d11747-- --000000000000fa31230599d11749 Content-Type: application/octet-stream; name="RM4988.edit_types.patch" Content-Disposition: attachment; filename="RM4988.edit_types.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k48e9uzi0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb2x1bW5zL19faW5pdF9fLnB5IGIvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2Nv bHVtbnMvX19pbml0X18ucHkKaW5kZXggZWUwODI4MTBiLi5jMGM0MGU0MTcgMTAwNjQ0Ci0tLSBh L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL3RhYmxlcy9jb2x1bW5zL19faW5pdF9fLnB5CisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb2x1bW5zL19f aW5pdF9fLnB5CkBAIC03MTcsNyArNzE3LDEwIEBAIGNsYXNzIENvbHVtbnNWaWV3KFBHQ2hpbGRO b2RlVmlldywgRGF0YVR5cGVSZWFkZXIpOgogICAgICAgICAgICAgICAgICAgICBjb2x1bW5fdXRp bHMudHlwZV9mb3JtYXR0ZXIoZGF0YVsnY2x0eXBlJ10pCiAKICAgICAgICAgICAgICMgV2Ugd2ls bCBhZGQgdGFibGUgJiBzY2hlbWEgYXMgd2VsbAotICAgICAgICAgICAgZGF0YSA9IGNvbHVtbl91 dGlscy5jb2x1bW5fZm9ybWF0dGVyKHNlbGYuY29ubiwgdGlkLCBjbGlkLCBkYXRhKQorICAgICAg ICAgICAgIyBQYXNzaW5nIGVkaXRfdHlwZXNfbGlzdCBwYXJhbSBzbyB0aGF0IGl0IGRvZXMgbm90 IGZldGNoCisgICAgICAgICAgICAjIGVkaXQgdHlwZXMuIEl0IGlzIG5vdCByZXF1aXJlZCBoZXJl LgorICAgICAgICAgICAgZGF0YSA9IGNvbHVtbl91dGlscy5jb2x1bW5fZm9ybWF0dGVyKHNlbGYu Y29ubiwgdGlkLCBjbGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGRhdGEsIFtdKQogCiAgICAgICAgICAgICBTUUwsIG5hbWUgPSBzZWxmLmdldF9z cWwoc2NpZCwgdGlkLCBOb25lLCBkYXRhLCBpc19zcWw9VHJ1ZSkKICAgICAgICAgICAgIGlmIG5v dCBpc2luc3RhbmNlKFNRTCwgKHN0ciwgdW5pY29kZSkpOgpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRt aW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVz L2NvbHVtbnMvdXRpbHMucHkgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvY29sdW1ucy91dGlscy5weQppbmRleCBiYWQ5 MzgxNDIuLjE1YTMxNDNjNiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbHVtbnMvdXRpbHMucHkK KysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvdGFibGVzL2NvbHVtbnMvdXRpbHMucHkKQEAgLTY0LDcgKzY0LDggQEAgZGVmIGdl dF9wYXJlbnQoY29ubiwgdGlkLCB0ZW1wbGF0ZV9wYXRoPU5vbmUpOgogCiAKIEBnZXRfdGVtcGxh dGVfcGF0aAotZGVmIGNvbHVtbl9mb3JtYXR0ZXIoY29ubiwgdGlkLCBjbGlkLCBkYXRhLCB0ZW1w bGF0ZV9wYXRoPU5vbmUpOgorZGVmIGNvbHVtbl9mb3JtYXR0ZXIoY29ubiwgdGlkLCBjbGlkLCBk YXRhLCBlZGl0X3R5cGVzX2xpc3Q9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRl X3BhdGg9Tm9uZSk6CiAgICAgIiIiCiAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIHJldHVybiBmb3Jt YXR0ZWQgb3V0cHV0IG9mIHF1ZXJ5IHJlc3VsdAogICAgIGFzIHBlciBjbGllbnQgbW9kZWwgZm9y bWF0IGZvciBjb2x1bW4gbm9kZQpAQCAtMTQ0LDI1ICsxNDUsMTcgQEAgZGVmIGNvbHVtbl9mb3Jt YXR0ZXIoY29ubiwgdGlkLCBjbGlkLCBkYXRhLCB0ZW1wbGF0ZV9wYXRoPU5vbmUpOgogICAgICMg d2Ugd2lsbCBzZW5kIGZpbHRlcmVkIHR5cGVzIHJlbGF0ZWQgdG8gY3VycmVudCB0eXBlCiAgICAg dHlwZV9pZCA9IGRhdGFbJ2F0dHR5cGlkJ10KIAotICAgIFNRTCA9IHJlbmRlcl90ZW1wbGF0ZSgi LyIuam9pbihbdGVtcGxhdGVfcGF0aCwgJ2lzX3JlZmVyZW5jZWQuc3FsJ10pLAotICAgICAgICAg ICAgICAgICAgICAgICAgICB0aWQ9dGlkLCBjbGlkPWNsaWQpCi0KLSAgICBzdGF0dXMsIGlzX3Jl ZmVyZW5jZSA9IGNvbm4uZXhlY3V0ZV9zY2FsYXIoU1FMKQotCi0gICAgZWRpdF90eXBlc19saXN0 ID0gbGlzdCgpCi0gICAgIyBXZSB3aWxsIG5lZWQgcHJlc2VudCB0eXBlIGluIGVkaXQgbW9kZQot ICAgIGVkaXRfdHlwZXNfbGlzdC5hcHBlbmQoZGF0YVsnY2x0eXBlJ10pCi0KLSAgICBpZiBpbnQo aXNfcmVmZXJlbmNlKSA9PSAwOgorICAgIGlmIGVkaXRfdHlwZXNfbGlzdCBpcyBOb25lOgorICAg ICAgICBlZGl0X3R5cGVzX2xpc3QgPSBbXQogICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxhdGUo Ii8iLmpvaW4oW3RlbXBsYXRlX3BhdGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJ2VkaXRfbW9kZV90eXBlcy5zcWwnXSksCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0eXBlX2lkPXR5cGVfaWQpCiAgICAgICAgIHN0YXR1cywgcnNldCA9IGNvbm4uZXhl Y3V0ZV8yZGFycmF5KFNRTCkKKyAgICAgICAgZWRpdF90eXBlc19saXN0ID0gW3Jvd1sndHlwbmFt ZSddIGZvciByb3cgaW4gcnNldFsncm93cyddXQogCi0gICAgICAgIGZvciByb3cgaW4gcnNldFsn cm93cyddOgotICAgICAgICAgICAgZWRpdF90eXBlc19saXN0LmFwcGVuZChyb3dbJ3R5cG5hbWUn XSkKLQotICAgIGRhdGFbJ2VkaXRfdHlwZXMnXSA9IGVkaXRfdHlwZXNfbGlzdAorICAgICMgV2Ug d2lsbCBuZWVkIHByZXNlbnQgdHlwZSBpbiBlZGl0IG1vZGUKKyAgICBlZGl0X3R5cGVzX2xpc3Qu YXBwZW5kKGRhdGFbJ2NsdHlwZSddKQorICAgIGRhdGFbJ2VkaXRfdHlwZXNfbGlzdCddID0gZWRp dF90eXBlc19saXN0CiAKICAgICBkYXRhWydjbHR5cGUnXSA9IERhdGFUeXBlUmVhZGVyLnBhcnNl X3R5cGVfbmFtZShkYXRhWydjbHR5cGUnXSkKIApAQCAtMTkxLDkgKzE4NCwxMCBAQCBkZWYgZ2V0 X2Zvcm1hdHRlZF9jb2x1bW5zKGNvbm4sIHRpZCwgZGF0YSwgb3RoZXJfY29sdW1ucywKICAgICAg ICAgcmFpc2UgRXhjZXB0aW9uKHJlcykKIAogICAgIGFsbF9jb2x1bW5zID0gcmVzWydyb3dzJ10K LQorICAgIGVkaXRfdHlwZXMgPSB7fQogICAgICMgQWRkIGluaGVyaXRlZCBmcm9tIGRldGFpbHMg ZnJvbSBvdGhlciBjb2x1bW5zIC0gdHlwZSwgdGFibGUKICAgICBmb3IgY29sIGluIGFsbF9jb2x1 bW5zOgorICAgICAgICBlZGl0X3R5cGVzW2NvbFsnYXR0dHlwaWQnXV0gPSBbXQogICAgICAgICBm b3Igb3RoZXJfY29sIGluIG90aGVyX2NvbHVtbnM6CiAgICAgICAgICAgICBpZiBjb2xbJ25hbWUn XSA9PSBvdGhlcl9jb2xbJ25hbWUnXToKICAgICAgICAgICAgICAgICBjb2xbJ2luaGVyaXRlZGZy b20nICsgdGFibGVfb3JfdHlwZV0gPSBcCkBAIC0yMDIsOCArMTk2LDE3IEBAIGRlZiBnZXRfZm9y bWF0dGVkX2NvbHVtbnMoY29ubiwgdGlkLCBkYXRhLCBvdGhlcl9jb2x1bW5zLAogICAgIGRhdGFb J2NvbHVtbnMnXSA9IGFsbF9jb2x1bW5zCiAKICAgICBpZiAnY29sdW1ucycgaW4gZGF0YSBhbmQg bGVuKGRhdGFbJ2NvbHVtbnMnXSkgPiAwOgorICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxhdGUo Ii8iLmpvaW4oW3RlbXBsYXRlX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJ2VkaXRfbW9kZV90eXBlc19idWxrLnNxbCddKSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfaWRzPSIsIi5qb2luKG1hcChsYW1iZGEgeDogc3RyKHgpLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRfdHlw ZXMua2V5cygpKSkpCisgICAgICAgIHN0YXR1cywgcmVzID0gY29ubi5leGVjdXRlXzJkYXJyYXko U1FMKQorICAgICAgICBmb3Igcm93IGluIHJlc1sncm93cyddOgorICAgICAgICAgICAgZWRpdF90 eXBlc1tyb3dbJ21haW5fb2lkJ11dID0gcm93WydlZGl0X3R5cGVzJ10KKwogICAgICAgICBmb3Ig Y29sdW1uIGluIGRhdGFbJ2NvbHVtbnMnXToKLSAgICAgICAgICAgIGNvbHVtbl9mb3JtYXR0ZXIo Y29ubiwgdGlkLCBjb2x1bW5bJ2F0dG51bSddLCBjb2x1bW4pCisgICAgICAgICAgICBjb2x1bW5f Zm9ybWF0dGVyKGNvbm4sIHRpZCwgY29sdW1uWydhdHRudW0nXSwgY29sdW1uLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBlZGl0X3R5cGVzW2NvbFsnYXR0dHlwaWQnXV0pCiAKICAgICBy ZXR1cm4gZGF0YQogCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvdGVtcGxhdGVzL2NvbHVtbnMvc3Fs L2RlZmF1bHQvZWRpdF9tb2RlX3R5cGVzX2J1bGsuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9j b2x1bW5zL3NxbC9kZWZhdWx0L2VkaXRfbW9kZV90eXBlc19idWxrLnNxbApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAuLjJmZjE5MjE1NgotLS0gL2Rldi9udWxsCisrKyBiL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L3RhYmxlcy90ZW1wbGF0ZXMvY29sdW1ucy9zcWwvZGVmYXVsdC9lZGl0X21vZGVfdHlwZXNfYnVs ay5zcWwKQEAgLTAsMCArMSwxMyBAQAorU0VMRUNUIHQubWFpbl9vaWQsIEFSUkFZX0FHRyh0LnR5 cG5hbWUpIGFzIGVkaXRfdHlwZXMKK0ZST00KKyhTRUxFQ1QgcGMuY2FzdHNvdXJjZSBhcyBtYWlu X29pZCwgZm9ybWF0X3R5cGUodHQub2lkLE5VTEwpIEFTIHR5cG5hbWUKK0ZST00gcGdfdHlwZSB0 dAorICAgIEpPSU4gcGdfY2FzdCBwYyBPTiB0dC5vaWQ9cGMuY2FzdHRhcmdldAorICAgIFdIRVJF IHBjLmNhc3Rzb3VyY2UgaW4gKHt7dHlwZV9pZHN9fSkKKyAgICBBTkQgcGMuY2FzdGNvbnRleHQg SU4gKCdpJywgJ2EnKQorVU5JT04KK1NFTEVDVCB0dC50eXBiYXNldHlwZSBhcyBtYWluX29pZCwg Zm9ybWF0X3R5cGUodHQub2lkLE5VTEwpIEFTIHR5cG5hbWUKK0ZST00gcGdfdHlwZSB0dAorV0hF UkUgdHQudHlwYmFzZXR5cGUgIElOICh7e3R5cGVfaWRzfX0pCispIHQKK0dST1VQIEJZIHQubWFp bl9vaWQ7CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvdGVtcGxhdGVzL2NvbHVtbnMvc3FsL2RlZmF1 bHQvaXNfcmVmZXJlbmNlZC5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvdGVtcGxhdGVzL2NvbHVtbnMvc3FsL2Rl ZmF1bHQvaXNfcmVmZXJlbmNlZC5zcWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUy YTRmZmE4Ni4uMDAwMDAwMDAwCi0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90ZW1wbGF0ZXMvY29sdW1ucy9zcWwv ZGVmYXVsdC9pc19yZWZlcmVuY2VkLnNxbAorKysgL2Rldi9udWxsCkBAIC0xLDYgKzAsMCBAQAot U0VMRUNUIENPVU5UKDEpCi1GUk9NIHBnX2RlcGVuZCBkZXAKLSAgICBKT0lOIHBnX2NsYXNzIGNs IE9OIGRlcC5jbGFzc2lkPWNsLm9pZCBBTkQgcmVsbmFtZT0ncGdfcmV3cml0ZScKLSAgICBXSEVS RSByZWZvYmppZD0ge3t0aWR9fTo6b2lkCi0gICAgQU5EIGNsYXNzaWQ9J3BnX2NsYXNzJzo6cmVn Y2xhc3MKLSAgICBBTkQgcmVmb2Jqc3ViaWQ9IHt7Y2xpZHxxdExpdGVyYWx9fTsK --000000000000fa31230599d11749--