Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jNuwc-0008Fw-ED for pgadmin-hackers@arkaria.postgresql.org; Mon, 13 Apr 2020 08:59:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jNuwb-0005H3-6c for pgadmin-hackers@arkaria.postgresql.org; Mon, 13 Apr 2020 08:59:53 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jNuwa-0005Bs-MJ for pgadmin-hackers@lists.postgresql.org; Mon, 13 Apr 2020 08:59:52 +0000 Received: from mail-lj1-x242.google.com ([2a00:1450:4864:20::242]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1jNuwX-0002oA-Lb for pgadmin-hackers@postgresql.org; Mon, 13 Apr 2020 08:59:51 +0000 Received: by mail-lj1-x242.google.com with SMTP id z26so7985722ljz.11 for ; Mon, 13 Apr 2020 01:59:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FTrcwpryztucxHHVJcUmAVUVAJdX3gt4HROH27tEtWY=; b=Nx7hAeXFMZiDHlhAuHscMDHu0hwQNCUg/TH9HgpM+9Tw0bnPNB0pNthTPaYJi+SmO8 8S4jvghCUkSxPornz4ENe6d1EDLNPmgnOIQKmX4g5mSNEnPxqUgM6JchUOzDv+EefyGo qyS781MQ05yFuNI45Wass80vVKkl6ibFxlZyu4seM1TvR7MCqyOOmjS7pLPtv3XMyW3X Fuge342RLT9t3T+RpGRvDw86j21JyjfOZ3fFp3olnBaGEe/SFT5nrzPw+ddMkKFiQab4 s7mFNcIU2B8vf/HIa61qz486Ha4+Zr8pwQDpSsrD0ohSMld6+J7ccChWNixvOhXcE2Ym sTQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FTrcwpryztucxHHVJcUmAVUVAJdX3gt4HROH27tEtWY=; b=q21veHO3o1n3wSNogGHmt/aIvsO9VJzYbvFwoxVjQYWL+T3lKPR2PgcLg3xXF4HpLp 01VQd64qAl8KkMHQhyyeSvIm0qgM6o73afni4XrqRGO05tSt3rSRSoEbziTad7wN2XsI U+nUuvZmsQ/zdxWpmcuD18OmQ/iIf1CljzSJstgUZQIW4pXnHxzFOb63IxDJAJLVE/kb Bdh8IJAHXAttaXTwpKEKojxrEcXnx4KF+Im6QaZbBw3UgO52OZPCut9Hz2b2kw2Y3J4l R0glhPcvrc/hLdFdLmSckvWtcmFepBV+Hm4S30gds/elvDmbCdO2C6wul1qEuMFfOt66 rahA== X-Gm-Message-State: AGi0PuY9jFI+eTRi/y6UGXuBho2VVaJcu3e+/U7AqNJkTwS0fIr+wyOM Db6H7UNPVedXPcuCQ0srnkNkmn5ziQXTD9DYbdNVM7sO3j4jRFQX/bcCgs6xeay1U7FJFrquuEc 5H2tRo/yefnhx4RgF6DkTHjYvBvyHS8smxMzAOAAt0Om3ALqLmpQf9Ti7GwkBfP0LqBV4u3i6a3 zWpXNpg0ZmgusLh1xJwEcFvemh0RFSrBtjcFrN6BgWHiVp8wEha7U= X-Google-Smtp-Source: APiQypKUossmNVaaK9VmN0ilkOSPrH5lIxwY9IAfKNv25YEH140vphnCE9MifMuRHAMl8tFezHl9czGJbKhtEJOdLrk= X-Received: by 2002:a2e:9055:: with SMTP id n21mr9760540ljg.183.1586768387787; Mon, 13 Apr 2020 01:59:47 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Khushboo Vashi Date: Mon, 13 Apr 2020 14:29:40 +0530 Message-ID: Subject: Re: [pgAdmin4][Patch]: RM 5053 - Getting an error while changing the columns in the existing view To: Akshay Joshi Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary="00000000000018a9b305a3284e7b" 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 --00000000000018a9b305a3284e7b Content-Type: multipart/alternative; boundary="00000000000018a9b105a3284e79" --00000000000018a9b105a3284e79 Content-Type: text/plain; charset="UTF-8" Hi, Please find the attached patch to fix the test cases due to this patch. Also, this functionality will not be applicable on EPAS server as we can change the view definition without dropping it. Thanks, Khushboo On Wed, Apr 8, 2020 at 11:42 AM Akshay Joshi wrote: > Thanks, patch applied. > > On Wed, Apr 8, 2020 at 10:58 AM Khushboo Vashi < > khushboo.vashi@enterprisedb.com> wrote: > >> Hi Akshay, >> >> Please find the attached updated patch. >> >> Thanks, >> Khushboo >> >> On Tue, Apr 7, 2020 at 11:43 AM Akshay Joshi < >> akshay.joshi@enterprisedb.com> wrote: >> >>> Hi Khushboo >>> >>> The warning message is not showing up. Please fix and resend the patch. >>> >>> On Tue, Apr 7, 2020 at 10:00 AM Khushboo Vashi < >>> khushboo.vashi@enterprisedb.com> wrote: >>> >>>> Hi Akshay, >>>> >>>> Please find the attached updated patch. >>>> >>>> On Tue, Mar 24, 2020 at 2:47 PM Akshay Joshi < >>>> akshay.joshi@enterprisedb.com> wrote: >>>> >>>>> Hi Khushboo >>>>> >>>>> On Tue, Mar 24, 2020 at 1:47 PM Khushboo Vashi < >>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>> >>>>>> Hi Akshay, >>>>>> >>>>>> On Tue, Jan 14, 2020 at 11:47 AM Akshay Joshi < >>>>>> akshay.joshi@enterprisedb.com> wrote: >>>>>> >>>>>>> Hi Khushboo >>>>>>> >>>>>>> Following are the review comments: >>>>>>> >>>>>>> - Fix the PEP8 issue. >>>>>>> - Drop query should be part of the jinja template for >>>>>>> consistency. Currently, it is added through the python file. >>>>>>> >>>>>>> The Delete query is already in the template file, I have just reused >>>>>> the delete call and merged the SQL queries in the python file. >>>>>> >>>>>>> >>>>>>> - Any changes in the view code should not warn the user >>>>>>> "Changing the columns in a view requires dropping...." and we should not >>>>>>> drop the view. For example, I have only change the WHERE clause or added >>>>>>> 'ORDER BY'. >>>>>>> >>>>>>> I have tested but couldn't reproduce this issue. Can you please >>>>>> let me know the proper use case? >>>>>> >>>>> >>>>> Create a view with 'SELECT 1;' as code. Then change the code to >>>>> 'SELECT 1234;' and click on the Save button. >>>>> Warning popup is displayed "Changing the columns in a view....". >>>>> Click on the 'Yes' button and check the OID of the view. You will get the >>>>> same OID, it means view is not recreated. >>>>> >>>>> >>>> I can reproduce this issue with the given SQL but the problem is as per >>>> the PostgreSQL documentation, (Ref: >>>> https://www.postgresql.org/docs/12/sql-createview.html) >>>> >>>> "CREATE OR REPLACE VIEW is similar, but if a view of the same name >>>> already exists, it is replaced. The new query must generate the same >>>> columns that were generated by the existing view query (that is, the same >>>> column names in the same order and with the same data types), but it may >>>> add additional columns to the end of the list. The calculations giving rise >>>> to the output columns may be completely different." >>>> >>>> So, I put a check on the columns and if the column is changed, the >>>> message will popup. >>>> >>>> In case of the example given by you, the column name is not changed as >>>> if you don't give the column name it will be default and I think view would >>>> have the column names properly. >>>> >>>> >>>>> I have observed below error in the browser while changing the >>>>> code: >>>>> view.js:241 Uncaught TypeError: Cannot read property >>>>> 'replace' of undefined >>>>> at child.onChange (view.js:241) >>>>> at HTMLDivElement.dispatch (jquery.js:5237) >>>>> at HTMLDivElement.elemData.handle (jquery.js:5044) >>>>> >>>>> Fixed. >>>> >>>> Thanks, >>>> Khushboo >>>> >>>>> >>>>>> Thanks, >>>>>> Khushboo >>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>>> On Tue, Jan 14, 2020 at 10:27 AM Khushboo Vashi < >>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> Please find the attached patch for RM #5053 - Getting an error >>>>>>>> while changing the columns in the existing view. >>>>>>>> >>>>>>>> PostgreSQL doesn't allow to change the view columns. So, while >>>>>>>> performing this task the existing view should be dropped first and then >>>>>>>> recreate it and also user will get a warning first. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> Khushboo >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Thanks & Regards* >>>>>>> *Akshay Joshi* >>>>>>> >>>>>>> *Sr. Software Architect* >>>>>>> *EnterpriseDB Software India Private Limited* >>>>>>> *Mobile: +91 976-788-8246* >>>>>>> >>>>>> >>>>> >>>>> -- >>>>> *Thanks & Regards* >>>>> *Akshay Joshi* >>>>> >>>>> *Sr. Software Architect* >>>>> *EnterpriseDB Software India Private Limited* >>>>> *Mobile: +91 976-788-8246* >>>>> >>>> >>> >>> -- >>> *Thanks & Regards* >>> *Akshay Joshi* >>> >>> *Sr. Software Architect* >>> *EnterpriseDB Software India Private Limited* >>> *Mobile: +91 976-788-8246* >>> >> > > -- > *Thanks & Regards* > *Akshay Joshi* > > *Sr. Software Architect* > *EnterpriseDB Software India Private Limited* > *Mobile: +91 976-788-8246* > --00000000000018a9b105a3284e79 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

Please find the attached patch to f= ix the test cases due to this patch.
Also, this functionality wil= l not be applicable on EPAS server as we can change the view definition wit= hout dropping it.

Thanks,
Khushboo
=

= On Wed, Apr 8, 2020 at 11:42 AM Akshay Joshi <akshay.joshi@enterprisedb.com> wrote:
Thanks= , patch applied.=C2=A0

On Wed, Apr 8, 2020 at 10:58 AM Khushboo Vashi &l= t;khus= hboo.vashi@enterprisedb.com> wrote:
Hi Akshay,

P= lease find the attached updated patch.

Thanks,
Khushboo

On Tue, Apr 7, 2020 at 11:43 AM Akshay Joshi <akshay.joshi@= enterprisedb.com> wrote:
Hi=C2=A0Khushboo

The wa= rning message is not showing=C2=A0up. Please fix and resend the patch.

On Tue, Apr 7, 2020 at 10:00 AM Khushboo Vashi <khushboo.vashi@enterprisedb.c= om> wrote:
Hi Akshay,

Please find the= attached updated patch.

On Tue, Mar 24, 2020 at 2:47 PM Akshay Joshi <akshay.jos= hi@enterprisedb.com> wrote:
Hi=C2=A0Khushboo
=
On Tue= , Mar 24, 2020 at 1:47 PM Khushboo Vashi <khushboo.vashi@enterprisedb.com&= gt; wrote:
Hi Akshay,

On Tue, Jan 14, 2020 at 11:47 AM Aks= hay Joshi <akshay.joshi@enterprisedb.com> wrote:
Hi=C2=A0Khushboo
Following are the review comments:
  • Fix the P= EP8 issue.
  • Drop query should be part of the jinja template for cons= istency. Currently, it is added through the python file.
The Delete query is already in the template file, I ha= ve just reused the delete call and merged the SQL queries in the python fil= e.=C2=A0
  • Any changes in the view code should not warn the user &q= uot;Changing the columns in a view requires dropping...." and we shoul= d not drop the view. For example, I have only change the WHERE clause or ad= ded 'ORDER BY'.=C2=A0
I have= tested but=C2=A0 couldn't reproduce this issue.=C2=A0 Can you please l= et me know the proper use case?

=C2=A0 =C2=A0Create a view with 'SELECT 1;' as code. Then ch= ange the code to 'SELECT 1234;' and click on the Save button.=C2=A0=
=C2=A0 =C2=A0Warning popup is displayed "Changing the colum= ns in a view....". Click on the 'Yes' button and check the OID= of the view. You will get the same OID, it means view is not recreated.
=C2=A0 =C2=A0=C2=A0
I can reprod= uce this issue with the given SQL but the problem is as per the PostgreSQL = documentation, (Ref:=C2=A0https://www.postgresql.org/docs/12/sql-= createview.html)

"CREATE OR REPLACE VIEW=C2= =A0is similar, but if a view of the same name already exists, it is replace= d. The new query must generate the same columns that were generated by the = existing view query (that is, the same column names in the same order and w= ith the same data types), but it may add additional columns to the end of t= he list. The calculations giving rise to the output columns may be complete= ly different."

So, I put a check on th= e columns and if the column is changed, the message will popup.
<= br>
In case of the example given by you, the column name is not c= hanged as if you don't give the column name it will be default and I th= ink view would have the column names properly.
=C2=A0
=C2=A0 =C2=A0 I have observed below error in the brow= ser while changing the code:=C2=A0
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 view.js:241 Uncaught TypeError: Cannot read property 'rep= lace' of undefined
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 a= t child.onChange (view.js:241)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= at HTMLDivElement.dispatch (jquery.js:5237)
=C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 at HTMLDivElement.elemData.handle (jquery.js:5044)

Fixed.=C2=A0
=

Thanks,
Khushboo
<= div class=3D"gmail_quote">

Thanks,
Khushboo
= =C2=A0

On Tue, Jan 14, 2020 at 10:27 AM Khu= shboo Vashi <khushboo.vashi@enterprisedb.com> wrote:
Hi,

Please find the attached patch for RM #5053 -=C2=A0Getting an error= while changing the columns in the existing view.

= PostgreSQL doesn't allow to change the view columns. So, while performi= ng this task the existing view should be dropped first and then recreate it= and also user will get a warning first.

Thanks,
Khushboo


--
Thanks & Regards
Akshay Joshi
<= font color=3D"#3333FF">Sr. Software Architect=
<= font color=3D"#000000" face=3D"arial, sans-serif">EnterpriseDB Software = India Private Limited
Mobile: +91 976-788-8246=


--
Thanks & Regards
Akshay Joshi
<= font color=3D"#3333FF">Sr. Software Architect=
<= font color=3D"#000000" face=3D"arial, sans-serif">EnterpriseDB Software = India Private Limited
Mobile: +91 976-788-8246=


--
Thanks & Regards
Akshay Joshi
<= font color=3D"#3333FF">Sr. Software Architect=
<= font color=3D"#000000" face=3D"arial, sans-serif">EnterpriseDB Software = India Private Limited
Mobile: +91 976-788-8246=


--
Thanks & Regards
Akshay Joshi
<= font color=3D"#3333FF">Sr. Software Architect=
<= font color=3D"#000000" face=3D"arial, sans-serif">EnterpriseDB Software = India Private Limited
Mobile: +91 976-788-8246=
--00000000000018a9b105a3284e79-- --00000000000018a9b305a3284e7b Content-Type: application/octet-stream; name="RM_5053_test_case_fixes.patch" Content-Disposition: attachment; filename="RM_5053_test_case_fixes.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k8y8v1pt0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3ZpZXdzL19faW5pdF9fLnB5IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdmlld3MvX19pbml0X18ucHkK aW5kZXggYWEwM2IwMmIwLi45NTVhZjhiYzEgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL19faW5pdF9f LnB5CisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL3ZpZXdzL19faW5pdF9fLnB5CkBAIC00OTYsNyArNDk2LDcgQEAgY2xhc3Mg Vmlld05vZGUoUEdDaGlsZE5vZGVWaWV3LCBWYWN1dW1TZXR0aW5ncywgU2NoZW1hRGlmZk9iamVj dENvbXBhcmUpOgogICAgICAgICAgICAgICAgICAgICAgICAgIkNvdWxkIG5vdCBmaW5kIHRoZSBy ZXF1aXJlZCBwYXJhbWV0ZXIgKCVzKS4iKSAlIGFyZwogICAgICAgICAgICAgICAgICkKICAgICAg ICAgdHJ5OgotICAgICAgICAgICAgU1FMLCBuYW1lT3JFcnJvciA9IHNlbGYuZ2V0U1FMKGdpZCwg c2lkLCBkaWQsIHNjaWQsIGRhdGEpCisgICAgICAgICAgICBTUUwsIG5hbWVPckVycm9yID0gc2Vs Zi5nZXRTUUwoZ2lkLCBzaWQsIGRpZCwgZGF0YSkKICAgICAgICAgICAgIGlmIFNRTCBpcyBOb25l OgogICAgICAgICAgICAgICAgIHJldHVybiBuYW1lT3JFcnJvcgogICAgICAgICAgICAgU1FMID0g U1FMLnN0cmlwKCdcbicpLnN0cmlwKCcgJykKQEAgLTU0MSw3ICs1NDEsNyBAQCBjbGFzcyBWaWV3 Tm9kZShQR0NoaWxkTm9kZVZpZXcsIFZhY3V1bVNldHRpbmdzLCBTY2hlbWFEaWZmT2JqZWN0Q29t cGFyZSk6CiAgICAgICAgICAgICByZXF1ZXN0LmRhdGEsIGVuY29kaW5nPSd1dGYtOCcKICAgICAg ICAgKQogICAgICAgICB0cnk6Ci0gICAgICAgICAgICBTUUwsIG5hbWUgPSBzZWxmLmdldFNRTChn aWQsIHNpZCwgZGlkLCBzY2lkLCBkYXRhLCB2aWQpCisgICAgICAgICAgICBTUUwsIG5hbWUgPSBz ZWxmLmdldFNRTChnaWQsIHNpZCwgZGlkLCBkYXRhLCB2aWQpCiAgICAgICAgICAgICBpZiBTUUwg aXMgTm9uZToKICAgICAgICAgICAgICAgICByZXR1cm4gbmFtZQogICAgICAgICAgICAgU1FMID0g U1FMLnN0cmlwKCdcbicpLnN0cmlwKCcgJykKQEAgLTY3OCw3ICs2NzgsNyBAQCBjbGFzcyBWaWV3 Tm9kZShQR0NoaWxkTm9kZVZpZXcsIFZhY3V1bVNldHRpbmdzLCBTY2hlbWFEaWZmT2JqZWN0Q29t cGFyZSk6CiAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgICAgICBk YXRhW2tdID0gdgogCi0gICAgICAgIHNxbCwgbmFtZU9yRXJyb3IgPSBzZWxmLmdldFNRTChnaWQs IHNpZCwgZGlkLCBzY2lkLCBkYXRhLCB2aWQpCisgICAgICAgIHNxbCwgbmFtZU9yRXJyb3IgPSBz ZWxmLmdldFNRTChnaWQsIHNpZCwgZGlkLCBkYXRhLCB2aWQpCiAgICAgICAgIGlmIHNxbCBpcyBO b25lOgogICAgICAgICAgICAgcmV0dXJuIG5hbWVPckVycm9yCiAKQEAgLTY5Miw3ICs2OTIsNyBA QCBjbGFzcyBWaWV3Tm9kZShQR0NoaWxkTm9kZVZpZXcsIFZhY3V1bVNldHRpbmdzLCBTY2hlbWFE aWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgICAgICBzdGF0dXM9MjAwCiAgICAgICAgICkKIAot ICAgIGRlZiBnZXRTUUwoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgZGF0YSwgdmlkPU5vbmUp OgorICAgIGRlZiBnZXRTUUwoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgZGF0YSwgdmlkPU5vbmUpOgog ICAgICAgICAiIiIKICAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGdlbmVyYXRlIHNxbCBmcm9t IG1vZGVsIGRhdGEKICAgICAgICAgIiIiCkBAIC03MTYsMjIgKzcxNiw2IEBAIGNsYXNzIFZpZXdO b2RlKFBHQ2hpbGROb2RlVmlldywgVmFjdXVtU2V0dGluZ3MsIFNjaGVtYURpZmZPYmplY3RDb21w YXJlKToKICAgICAgICAgICAgIGlmICdzY2hlbWEnIG5vdCBpbiBkYXRhOgogICAgICAgICAgICAg ICAgIGRhdGFbJ3NjaGVtYSddID0gcmVzWydyb3dzJ11bMF1bJ3NjaGVtYSddCiAKLSAgICAgICAg ICAgIERFTF9TUUwgPSBOb25lCi0gICAgICAgICAgICBpZiAnZGVmaW5pdGlvbicgaW4gZGF0YToK LSAgICAgICAgICAgICAgICBuZXdfZGVmID0gcmUuc3ViKHIiXFciLCAiIiwgZGF0YVsnZGVmaW5p dGlvbiddKS5zcGxpdCgnRlJPTScpCi0gICAgICAgICAgICAgICAgb2xkX2RlZiA9IHJlLnN1Yihy IlxXIiwgIiIsIHJlc1sncm93cyddWzBdWydkZWZpbml0aW9uJ10KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICkuc3BsaXQoJ0ZST00nKQotICAgICAgICAgICAgICAgIGlmICdkZWZp bml0aW9uJyBpbiBkYXRhIGFuZCAoCi0gICAgICAgICAgICAgICAgICAgICAgICBsZW4ob2xkX2Rl ZikgPiAxIG9yIGxlbihuZXdfZGVmKSA+IDEKLSAgICAgICAgICAgICAgICApIGFuZCgKLSAgICAg ICAgICAgICAgICAgICAgICAgIG9sZF9kZWZbMF0gIT0gbmV3X2RlZlswXSBhbmQKLSAgICAgICAg ICAgICAgICAgICAgICAgIG9sZF9kZWZbMF0gbm90IGluIG5ld19kZWZbMF0KLSAgICAgICAgICAg ICAgICApOgotICAgICAgICAgICAgICAgICAgICBERUxfU1FMID0gc2VsZi5kZWxldGUoZ2lkPWdp ZCwgc2lkPXNpZCwgZGlkPWRpZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNjaWQ9c2NpZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHZpZD12aWQsIG9ubHlfc3FsPVRydWUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICkKLQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGFjbHMg PSByZW5kZXJfdGVtcGxhdGUoCiAgICAgICAgICAgICAgICAgICAgICIvIi5qb2luKFtzZWxmLnRl bXBsYXRlX3BhdGgsICdzcWwvYWxsb3dlZF9wcml2cy5qc29uJ10pCkBAIC03NTAsMTQgKzczNCw1 MyBAQCBjbGFzcyBWaWV3Tm9kZShQR0NoaWxkTm9kZVZpZXcsIFZhY3V1bVNldHRpbmdzLCBTY2hl bWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVth Y2xjb2xdW2tleV0gPSBwYXJzZV9wcml2X3RvX2RiKAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBkYXRhW2FjbGNvbF1ba2V5XSwgYWxsb3dlZGFjbFsnYWNsJ10KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICBkYXRhWydkZWxfc3FsJ10gPSBGYWxzZQor ICAgICAgICAgICAgb2xkX2RhdGFbJ2FjbF9zcWwnXSA9ICcnCisKKyAgICAgICAgICAgIGlmICdk ZWZpbml0aW9uJyBpbiBkYXRhIGFuZCBzZWxmLm1hbmFnZXIuc2VydmVyX3R5cGUgPT0gJ3BnJzoK KyAgICAgICAgICAgICAgICBuZXdfZGVmID0gcmUuc3ViKHIiXFciLCAiIiwgZGF0YVsnZGVmaW5p dGlvbiddKS5zcGxpdCgnRlJPTScpCisgICAgICAgICAgICAgICAgb2xkX2RlZiA9IHJlLnN1Yihy IlxXIiwgIiIsIHJlc1sncm93cyddWzBdWydkZWZpbml0aW9uJ10KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICkuc3BsaXQoJ0ZST00nKQorICAgICAgICAgICAgICAgIGlmICdkZWZp bml0aW9uJyBpbiBkYXRhIGFuZCAoCisgICAgICAgICAgICAgICAgICAgICAgICBsZW4ob2xkX2Rl ZikgPiAxIG9yIGxlbihuZXdfZGVmKSA+IDEKKyAgICAgICAgICAgICAgICApIGFuZCgKKyAgICAg ICAgICAgICAgICAgICAgICAgIG9sZF9kZWZbMF0gIT0gbmV3X2RlZlswXSBhbmQKKyAgICAgICAg ICAgICAgICAgICAgICAgIG9sZF9kZWZbMF0gbm90IGluIG5ld19kZWZbMF0KKyAgICAgICAgICAg ICAgICApOgorICAgICAgICAgICAgICAgICAgICBkYXRhWydkZWxfc3FsJ10gPSBUcnVlCisKKyAg ICAgICAgICAgICAgICAgICAgIyBJZiB3ZSBkcm9wIGFuZCByZWNyZWF0ZSB0aGUgdmlldywgdGhl CisgICAgICAgICAgICAgICAgICAgICMgcHJpdmlsZWdlcyBtdXN0IGJlIHJlc3RvcmVkCisKKyAg ICAgICAgICAgICAgICAgICAgIyBGZXRjaCBhbGwgcHJpdmlsZWdlcyBmb3IgdmlldworICAgICAg ICAgICAgICAgICAgICBzcWxfYWNsID0gcmVuZGVyX3RlbXBsYXRlKCIvIi5qb2luKAorICAgICAg ICAgICAgICAgICAgICAgICAgW3NlbGYudGVtcGxhdGVfcGF0aCwgJ3NxbC9hY2wuc3FsJ10pLCB2 aWQ9dmlkKQorICAgICAgICAgICAgICAgICAgICBzdGF0dXMsIGRhdGFjbHJlcyA9IHNlbGYuY29u bi5leGVjdXRlX2RpY3Qoc3FsX2FjbCkKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHN0YXR1 czoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpbnRlcm5hbF9zZXJ2ZXJfZXJyb3Io ZXJyb3Jtc2c9cmVzKQorCisgICAgICAgICAgICAgICAgICAgIGZvciByb3cgaW4gZGF0YWNscmVz Wydyb3dzJ106CisgICAgICAgICAgICAgICAgICAgICAgICBwcml2ID0gcGFyc2VfcHJpdl9mcm9t X2RiKHJvdykKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc1sncm93cyddWzBdLnNldGRlZmF1 bHQocm93WydkZWZ0eXBlJ10sIFtdCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICkuYXBwZW5kKHByaXYpCisKKyAgICAgICAgICAgICAgICAgICAgb2xk X2RhdGEudXBkYXRlKHJlc1sncm93cyddWzBdKQorCisgICAgICAgICAgICAgICAgICAgICMgUHJp dmlsZWdlcworICAgICAgICAgICAgICAgICAgICBmb3IgYWNsY29sIGluIGFjbHM6CisgICAgICAg ICAgICAgICAgICAgICAgICBpZiBhY2xjb2wgaW4gb2xkX2RhdGE6CisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYWxsb3dlZGFjbCA9IGFjbHNbYWNsY29sXQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG9sZF9kYXRhW2FjbGNvbF0gPSBwYXJzZV9wcml2X3RvX2RiKAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBvbGRfZGF0YVthY2xjb2xdLCBhbGxvd2VkYWNsWydhY2wn XSkKKworICAgICAgICAgICAgICAgICAgICBvbGRfZGF0YVsnYWNsX3NxbCddID0gcmVuZGVyX3Rl bXBsYXRlKCIvIi5qb2luKAorICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGYudGVtcGxhdGVf cGF0aCwgJ3NxbC9ncmFudC5zcWwnXSksIGRhdGE9b2xkX2RhdGEpCiAKICAgICAgICAgICAgIHRy eToKICAgICAgICAgICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxhdGUoIi8iLmpvaW4oCiAgICAg ICAgICAgICAgICAgICAgIFtzZWxmLnRlbXBsYXRlX3BhdGgsICdzcWwvdXBkYXRlLnNxbCddKSwg ZGF0YT1kYXRhLAogICAgICAgICAgICAgICAgICAgICBvX2RhdGE9b2xkX2RhdGEsIGNvbm49c2Vs Zi5jb25uKQogCi0gICAgICAgICAgICAgICAgaWYgREVMX1NRTDoKLSAgICAgICAgICAgICAgICAg ICAgU1FMID0gREVMX1NRTCArIFNRTAogICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBl OgogICAgICAgICAgICAgICAgIGN1cnJlbnRfYXBwLmxvZ2dlci5leGNlcHRpb24oZSkKICAgICAg ICAgICAgICAgICByZXR1cm4gTm9uZSwgaW50ZXJuYWxfc2VydmVyX2Vycm9yKGVycm9ybXNnPXN0 cihlKSkKQEAgLTE0NTcsNyArMTQ4MCw3IEBAIGNsYXNzIFZpZXdOb2RlKFBHQ2hpbGROb2RlVmll dywgVmFjdXVtU2V0dGluZ3MsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgaWYg ZGF0YToKICAgICAgICAgICAgIGlmIGRpZmZfc2NoZW1hOgogICAgICAgICAgICAgICAgIGRhdGFb J3NjaGVtYSddID0gZGlmZl9zY2hlbWEKLSAgICAgICAgICAgIHNxbCwgbmFtZU9yRXJyb3IgPSBz ZWxmLmdldFNRTChnaWQsIHNpZCwgZGlkLCBzY2lkLCBkYXRhLCBvaWQpCisgICAgICAgICAgICBz cWwsIG5hbWVPckVycm9yID0gc2VsZi5nZXRTUUwoZ2lkLCBzaWQsIGRpZCwgZGF0YSwgb2lkKQog ICAgICAgICAgICAgaWYgc3FsLmZpbmQoJ0RST1AgVklFVycpICE9IC0xOgogICAgICAgICAgICAg ICAgIHNxbCA9IGdldHRleHQoIiIiCiAtLSBDaGFuZ2luZyB0aGUgY29sdW1ucyBpbiBhIHZpZXcg cmVxdWlyZXMgZHJvcHBpbmcgYW5kIHJlLWNyZWF0aW5nIHRoZSB2aWV3LgpAQCAtMTUzOSw3ICsx NTYyLDcgQEAgY2xhc3MgTVZpZXdOb2RlKFZpZXdOb2RlLCBWYWN1dW1TZXR0aW5ncyk6CiAgICAg ICAgICAgICAnOS4zX3BsdXMnCiAgICAgICAgICkKIAotICAgIGRlZiBnZXRTUUwoc2VsZiwgZ2lk LCBzaWQsIGRpZCwgc2NpZCwgZGF0YSwgdmlkPU5vbmUpOgorICAgIGRlZiBnZXRTUUwoc2VsZiwg Z2lkLCBzaWQsIGRpZCwgZGF0YSwgdmlkPU5vbmUpOgogICAgICAgICAiIiIKICAgICAgICAgVGhp cyBmdW5jdGlvbiB3aWxsIGdlbmVyYXRlIHNxbCBmcm9tIG1vZGVsIGRhdGEKICAgICAgICAgIiIi CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy92aWV3cy9zdGF0aWMvanMvdmlldy5qcyBiL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3N0YXRp Yy9qcy92aWV3LmpzCmluZGV4IGVmOGFjNzRjYi4uZTdkYWNlZjQ3IDEwMDY0NAotLS0gYS93ZWIv cGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92 aWV3cy9zdGF0aWMvanMvdmlldy5qcworKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9n cm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy9zdGF0aWMvanMvdmlldy5qcwpA QCAtMTU4LDcgKzE1OCw3IEBAIGRlZmluZSgncGdhZG1pbi5ub2RlLnZpZXcnLCBbCiAgICAgICAg ICAgY29udHJvbDogQmFja2Zvcm0uU3FsQ29kZUNvbnRyb2wuZXh0ZW5kKHsKICAgICAgICAgICAg IG9uQ2hhbmdlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgQmFja2Zvcm0uU3FsQ29kZUNv bnRyb2wucHJvdG90eXBlLm9uQ2hhbmdlLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7Ci0gICAgICAg ICAgICAgIGlmKHRoaXMubW9kZWwgJiYgdGhpcy5tb2RlbC5jaGFuZ2VkKSB7CisgICAgICAgICAg ICAgIGlmKHRoaXMubW9kZWwgJiYgdGhpcy5tb2RlbC5jaGFuZ2VkICYmIHRoaXMubW9kZWwubm9k ZV9pbmZvLnNlcnZlci5zZXJ2ZXJfdHlwZSA9PSAncGcnKSB7CiAgICAgICAgICAgICAgICAgaWYo dGhpcy5tb2RlbC5vcmlnU2Vzc0F0dHJzICYmICh0aGlzLm1vZGVsLmNoYW5nZWQuZGVmaW5pdGlv biAhPSB0aGlzLm1vZGVsLm9yaWdTZXNzQXR0cnMuZGVmaW5pdGlvbikpIHsKICAgICAgICAgICAg ICAgICAgIGxldCBvbGRfZGVmID0gdGhpcy5tb2RlbC5vcmlnU2Vzc0F0dHJzLmRlZmluaXRpb24u cmVwbGFjZSgvXHMvZ2ksICcnKS5zcGxpdCgnRlJPTScpLAogICAgICAgICAgICAgICAgICAgICBu ZXdfZGVmID0gW107CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZW1wbGF0ZXMvdmlld3MvcGcvOS40 X3BsdXMvc3FsL2RlbGV0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZW1wbGF0ZXMvdmlld3MvcGcvOS40X3Bs dXMvc3FsL2RlbGV0ZS5zcWwKaW5kZXggYjFjMTczZjk4Li43ODhhMGMyYTYgMTAwNjQ0Ci0tLSBh L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL3ZpZXdzL3RlbXBsYXRlcy92aWV3cy9wZy85LjRfcGx1cy9zcWwvZGVsZXRlLnNxbAorKysg Yi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2No ZW1hcy92aWV3cy90ZW1wbGF0ZXMvdmlld3MvcGcvOS40X3BsdXMvc3FsL2RlbGV0ZS5zcWwKQEAg LTksNSArOSw1IEBAIExFRlQgSk9JTiBwZ19uYW1lc3BhY2UgbnNwIE9OIGMucmVsbmFtZXNwYWNl ID0gbnNwLm9pZAogV0hFUkUKICAgICBjLnJlbGZpbGVub2RlID0ge3sgdmlkIH19OwogeyUgZWxp ZiAobmFtZSBhbmQgbnNwbmFtZSkgJX0KLURST1AgVklFVyB7eyBjb25ufHF0SWRlbnQobnNwbmFt ZSwgbmFtZSkgfX0geyUgaWYgY2FzY2FkZSAlfSBDQVNDQURFIHslIGVuZGlmICV9OworRFJPUCBW SUVXIHt7IGNvbm58cXRJZGVudChuc3BuYW1lLCBuYW1lKSB9fXslIGlmIGNhc2NhZGUgJX0gQ0FT Q0FERSB7JSBlbmRpZiAlfTsKIHslIGVuZGlmICV9CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9i cm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZW1w bGF0ZXMvdmlld3MvcGcvOS40X3BsdXMvc3FsL3VwZGF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZW1wbGF0 ZXMvdmlld3MvcGcvOS40X3BsdXMvc3FsL3VwZGF0ZS5zcWwKaW5kZXggNzU3NjYwMGM5Li5lMzI4 YWQzY2YgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2 ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3RlbXBsYXRlcy92aWV3cy9wZy85LjRfcGx1cy9z cWwvdXBkYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZW1wbGF0ZXMvdmlld3MvcGcvOS40X3BsdXMv c3FsL3VwZGF0ZS5zcWwKQEAgLTEzLDExICsxMywxMCBAQCBBTFRFUiBWSUVXIHt7IGNvbm58cXRJ ZGVudChvX2RhdGEuc2NoZW1hLCBvX2RhdGEubmFtZSkgfX0KIEFMVEVSIFZJRVcge3sgY29ubnxx dElkZW50KG9fZGF0YS5zY2hlbWEsIHZpZXdfbmFtZSApIH19CiAgICAgU0VUIFNDSEVNQSB7eyBj b25ufHF0SWRlbnQoZGF0YS5zY2hlbWEpIH19OwogeyUgZW5kaWYgJX0KLXslIGlmIGRhdGEub3du ZXIgYW5kIGRhdGEub3duZXIgIT0gb19kYXRhLm93bmVyICV9Ci1BTFRFUiBUQUJMRSB7eyBjb25u fHF0SWRlbnQodmlld19zY2hlbWEsIHZpZXdfbmFtZSkgfX0KLSAgICBPV05FUiBUTyB7eyBjb25u fHF0SWRlbnQoZGF0YS5vd25lcikgfX07Ci17JSBlbmRpZiAlfQogeyUgaWYgZGVmIGFuZCBkZWYg IT0gb19kYXRhLmRlZmluaXRpb24ucnN0cmlwKCc7JykgJX0KK3slIGlmIGRhdGEuZGVsX3NxbCAl fQorRFJPUCBWSUVXIHt7IGNvbm58cXRJZGVudCh2aWV3X3NjaGVtYSwgdmlld19uYW1lKSB9fTsK K3slIGVuZGlmICV9CiBDUkVBVEUgT1IgUkVQTEFDRSBWSUVXIHt7IGNvbm58cXRJZGVudCh2aWV3 X3NjaGVtYSwgdmlld19uYW1lKSB9fQogeyUgaWYgKChkYXRhLmNoZWNrX29wdGlvbiBhbmQgZGF0 YS5jaGVja19vcHRpb24ubG93ZXIoKSAhPSAnbm8nKSBvciBkYXRhLnNlY3VyaXR5X2JhcnJpZXIp ICV9CiAgICAgV0lUSCAoeyUgaWYgKGRhdGEuY2hlY2tfb3B0aW9uIG9yIG9fZGF0YS5jaGVja19v cHRpb24pICV9Y2hlY2tfb3B0aW9uPXt7IGRhdGEuY2hlY2tfb3B0aW9uIGlmIGRhdGEuY2hlY2tf b3B0aW9uIGVsc2Ugb19kYXRhLmNoZWNrX29wdGlvbiB9fXt7JywgJyB9fXslIGVuZGlmICV9c2Vj dXJpdHlfYmFycmllcj17eyBkYXRhLnNlY3VyaXR5X2JhcnJpZXJ8bG93ZXIgaWYgZGF0YS5zZWN1 cml0eV9iYXJyaWVyIGlzIGRlZmluZWQgZWxzZSBvX2RhdGEuc2VjdXJpdHlfYmFycmllcnxkZWZh dWx0KCdmYWxzZScsICd0cnVlJyl8bG93ZXIgfX0pCkBAIC0zNiwxMyArMzUsMjMgQEAgQUxURVIg VklFVyB7eyBjb25ufHF0SWRlbnQodmlld19zY2hlbWEsIHZpZXdfbmFtZSkgfX0KIEFMVEVSIFZJ RVcge3sgY29ubnxxdElkZW50KHZpZXdfc2NoZW1hLCB2aWV3X25hbWUpIH19IFJFU0VUIChjaGVj a19vcHRpb24pOwogeyUgZW5kaWYgJX0KIHslIGVuZGlmICV9Cit7JSBpZiBkYXRhLm93bmVyIGFu ZCBkYXRhLm93bmVyICE9IG9fZGF0YS5vd25lciAlfQorQUxURVIgVEFCTEUge3sgY29ubnxxdElk ZW50KHZpZXdfc2NoZW1hLCB2aWV3X25hbWUpIH19CisgICAgT1dORVIgVE8ge3sgY29ubnxxdElk ZW50KGRhdGEub3duZXIpIH19OworeyUgZW5kaWYgJX0KIHslIHNldCBvbGRfY29tbWVudCA9IG9f ZGF0YS5jb21tZW50fGRlZmF1bHQoJycsIHRydWUpICV9CiB7JSBpZiAoZGF0YS5jb21tZW50IGlz IGRlZmluZWQgYW5kIChkYXRhLmNvbW1lbnQgIT0gb2xkX2NvbW1lbnQpKSAlfQogCiBDT01NRU5U IE9OIFZJRVcge3sgY29ubnxxdElkZW50KHZpZXdfc2NoZW1hLCB2aWV3X25hbWUpIH19CiAgICAg SVMge3sgZGF0YS5jb21tZW50fHF0TGl0ZXJhbCB9fTsKK3slIGVsaWYgIGRhdGEuZGVsX3NxbCA9 PSBUcnVlICV9CitDT01NRU5UIE9OIFZJRVcge3sgY29ubnxxdElkZW50KHZpZXdfc2NoZW1hLCB2 aWV3X25hbWUpIH19CisgICAgSVMge3sgb2xkX2NvbW1lbnR8cXRMaXRlcmFsIH19OwogeyUgZW5k aWYgJX0KIHsjIFRoZSBTUUwgZ2VuZXJhdGVkIGJlbG93IHdpbGwgY2hhbmdlIHByaXZpbGVnZXMg I30KK3slIGlmIG9fZGF0YS5hY2xfc3FsIGFuZCBvX2RhdGEuYWNsX3NxbCAhPSAnJyAlfQore3tv X2RhdGFbJ2FjbF9zcWwnXX19Cit7JSBlbmRpZiAlfQogeyUgaWYgZGF0YS5kYXRhY2wgJX0KIHsl IGlmICdkZWxldGVkJyBpbiBkYXRhLmRhdGFjbCAlfQogeyUgZm9yIHByaXYgaW4gZGF0YS5kYXRh Y2wuZGVsZXRlZCAlfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3BsdXMvYWx0 ZXJfdmlld19hZGRfc29tZV9wcml2X21zcWwuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3Bs dXMvYWx0ZXJfdmlld19hZGRfc29tZV9wcml2X21zcWwuc3FsCmluZGV4IDI4NWJiMjI2OC4uZGMw NWM5ODJjIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy92aWV3cy90ZXN0cy9wZy85LjRfcGx1cy9hbHRlcl92aWV3 X2FkZF9zb21lX3ByaXZfbXNxbC5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3BsdXMv YWx0ZXJfdmlld19hZGRfc29tZV9wcml2X21zcWwuc3FsCkBAIC0xICsxLDUgQEAKK0FMVEVSIFZJ RVcgcHVibGljLiJ0ZXN0dmlld18kJXt9W10oKSYqXiFAIiInYFwvIyIKKyAgICBTRVQgKHNlY3Vy aXR5X2JhcnJpZXI9dHJ1ZSk7CitBTFRFUiBWSUVXIHB1YmxpYy4idGVzdHZpZXdfJCV7fVtdKCkm Kl4hQCIiJ2BcLyMiCisgICAgU0VUIChjaGVja19vcHRpb249Y2FzY2FkZWQpOwogR1JBTlQgU0VM RUNUIE9OIFRBQkxFIHB1YmxpYy4idGVzdHZpZXdfJCV7fVtdKCkmKl4hQCIiJ2BcLyMiIFRPIFBV QkxJQzsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2 ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3Rlc3RzL3BnLzkuNF9wbHVzL2FsdGVyX3ZpZXdf ZGVmaW5pdGlvbl9tc3FsLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3Rlc3RzL3BnLzkuNF9wbHVzL2FsdGVyX3Zp ZXdfZGVmaW5pdGlvbl9tc3FsLnNxbAppbmRleCBhYTU3NzAyMGUuLjBjMTNkNzQxZiAxMDA2NDQK LS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3BsdXMvYWx0ZXJfdmlld19kZWZpbml0aW9uX21z cWwuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3Rlc3RzL3BnLzkuNF9wbHVzL2FsdGVyX3ZpZXdfZGVmaW5p dGlvbl9tc3FsLnNxbApAQCAtMSwzICsxLDcgQEAKK0RST1AgVklFVyBwdWJsaWMuInRlc3R2aWV3 XyQle31bXSgpJipeIUAiIidgXC8jIjsKIENSRUFURSBPUiBSRVBMQUNFIFZJRVcgcHVibGljLiJ0 ZXN0dmlld18kJXt9W10oKSYqXiFAIiInYFwvIyIKICAgICBBUwogICAgIFNFTEVDVCAqIEZST00g dGVzdF92aWV3X3RhYmxlOworQ09NTUVOVCBPTiBWSUVXIHB1YmxpYy4idGVzdHZpZXdfJCV7fVtd KCkmKl4hQCIiJ2BcLyMiCisgICAgSVMgJ1Rlc3Rjb21tZW50LXVwZGF0ZWQnOworR1JBTlQgQUxM IE9OIFRBQkxFIHB1YmxpYy4idGVzdHZpZXdfJCV7fVtdKCkmKl4hQCIiJ2BcLyMiIFRPIHBvc3Rn cmVzOwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3BsdXMvdGVzdHMuanNvbiBi L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL3ZpZXdzL3Rlc3RzL3BnLzkuNF9wbHVzL3Rlc3RzLmpzb24KaW5kZXggMTgwZGJmYWQ4Li4x NGUxMjE2NTMgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3ZpZXdzL3Rlc3RzL3BnLzkuNF9wbHVzL3Rlc3RzLmpz b24KKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvdmlld3MvdGVzdHMvcGcvOS40X3BsdXMvdGVzdHMuanNvbgpAQCAtNTcsNiAr NTcsMTggQEAKICAgICAgICJleHBlY3RlZF9zcWxfZmlsZSI6ICJhbHRlcl92aWV3LnNxbCIsCiAg ICAgICAiZXhwZWN0ZWRfbXNxbF9maWxlIjogImFsdGVyX3ZpZXdfbXNxbC5zcWwiCiAgICAgfSwK KyAgICB7CisgICAgICAidHlwZSI6ICJhbHRlciIsCisgICAgICAibmFtZSI6ICJBbHRlciBWaWV3 IChjaGFuZ2luZyBjb2RlKSIsCisgICAgICAiZW5kcG9pbnQiOiAiTk9ERS12aWV3Lm9ial9pZCIs CisgICAgICAic3FsX2VuZHBvaW50IjogIk5PREUtdmlldy5zcWxfaWQiLAorICAgICAgIm1zcWxf ZW5kcG9pbnQiOiAiTk9ERS12aWV3Lm1zcWxfaWQiLAorICAgICAgImRhdGEiOiB7CisgICAgICAg ICJkZWZpbml0aW9uIjogIlNFTEVDVCAqIEZST00gdGVzdF92aWV3X3RhYmxlOyIKKyAgICAgIH0s CisgICAgICAiZXhwZWN0ZWRfc3FsX2ZpbGUiOiAiYWx0ZXJfdmlld19kZWZpbml0aW9uLnNxbCIs CisgICAgICAiZXhwZWN0ZWRfbXNxbF9maWxlIjogImFsdGVyX3ZpZXdfZGVmaW5pdGlvbl9tc3Fs LnNxbCIKKyAgICB9LAogICAgIHsKICAgICAgICJ0eXBlIjogImFsdGVyIiwKICAgICAgICJuYW1l IjogIkFsdGVyIFZpZXcgKGFkZGluZyBwcml2aWxlZ2VzKSIsCkBAIC02NCw2ICs3NiwxMiBAQAog ICAgICAgInNxbF9lbmRwb2ludCI6ICJOT0RFLXZpZXcuc3FsX2lkIiwKICAgICAgICJtc3FsX2Vu ZHBvaW50IjogIk5PREUtdmlldy5tc3FsX2lkIiwKICAgICAgICJkYXRhIjogeworICAgICAgICAi bmFtZSI6ICJ0ZXN0dmlld18kJXt9W10oKSYqXiFAXCInYFxcLyMiLAorICAgICAgICAib3duZXIi OiAicG9zdGdyZXMiLAorICAgICAgICAic2NoZW1hIjogInB1YmxpYyIsCisgICAgICAgICJjaGVj a19vcHRpb24iOiAiY2FzY2FkZWQiLAorICAgICAgICAic2VjdXJpdHlfYmFycmllciI6IHRydWUs CisgICAgICAgICJjb21tZW50IjoiVGVzdGNvbW1lbnQtdXBkYXRlZCIsCiAgICAgICAgICJkYXRh Y2wiOnsKICAgICAgICAgICAgICJhZGRlZCI6WwogICAgICAgICAgICAgICAgIHsK --00000000000018a9b305a3284e7b--