<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>197914</bug_id>
          
          <creation_ts>2019-05-15 07:14:41 -0700</creation_ts>
          <short_desc>[ews-build] Enabling uploading EWS archives to S3</short_desc>
          <delta_ts>2019-05-15 15:22:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=174198</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>jbedard</cc>
    
    <cc>kocsen_chung</cc>
    
    <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1536408</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 07:14:41 -0700</bug_when>
    <thetext>Add script to enable uploading EWS archives to S3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536409</commentid>
    <comment_count>1</comment_count>
      <attachid>369949</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 07:16:09 -0700</bug_when>
    <thetext>Created attachment 369949
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536455</commentid>
    <comment_count>2</comment_count>
      <attachid>369949</attachid>
    <who name="Kocsen Chung">kocsen_chung</who>
    <bug_when>2019-05-15 09:45:47 -0700</bug_when>
    <thetext>Comment on attachment 369949
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=369949&amp;action=review

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:5
&gt; +import os.path

We&apos;re you looking for: 

```python
from os import path
```

I say this because i see uses of `os.path` down there, and if you&apos;re using `os` then there is no need for this line.

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:20
&gt; +    if archive:

args is already making sure this is not None, so this is a superfluous check.

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:27
&gt; +parser = argparse.ArgumentParser(add_help=True)

Even though it&apos;s a simple script I think it may be adequate to put the argument parsing and the main routing into a main() function.

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:34
&gt; +head, tail = os.path.split(str(args.archive))

I think we can trust `args.archive` will be a string right? This would make the `str()` call unnecessary.

Also, I know the documentation says this is a head and the tail, but this makes the reader assume the tail is longer. I think it may be more descriptive to rename these to `dirname, basename` respectively.

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:35
&gt; +minifiedArchive = head + &apos;/minified-&apos; + tail

`os.path.join()` could be safer here, since it seems head is not guaranteed to have the trailing slash stripped out of it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536470</commentid>
    <comment_count>3</comment_count>
      <attachid>369949</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-15 10:13:22 -0700</bug_when>
    <thetext>Comment on attachment 369949
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=369949&amp;action=review

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:5
&gt; +import os.path

As Kocsen pointed out, we don&apos;t need os.path, just import os, since we use os.path

&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:27
&gt; +parser = argparse.ArgumentParser(add_help=True)

We usually guard actual script code with __main__

&gt;&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:27
&gt;&gt; +parser.add_argument(&apos;--patch_id&apos;, action=&quot;store&quot;, required=True, help=&apos;patch_id of the patch&apos;)
&gt; 
&gt; Even though it&apos;s a simple script I think it may be adequate to put the argument parsing and the main routing into a main() function.

If not that, at least guard this with __main__

&gt;&gt; Tools/BuildSlaveSupport/ews-build/transfer-ews-archive-to-s3:34
&gt;&gt;  minifiedArchive = head + &apos;/minified-&apos; + tail
&gt; 
&gt; I think we can trust `args.archive` will be a string right? This would make the `str()` call unnecessary.
&gt; 
&gt; Also, I know the documentation says this is a head and the tail, but this makes the reader assume the tail is longer. I think it may be more descriptive to rename these to `dirname, basename` respectively.

Can we trust it&apos;s not a unicode string, though?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536491</commentid>
    <comment_count>4</comment_count>
      <attachid>369970</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 10:40:12 -0700</bug_when>
    <thetext>Created attachment 369970
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536493</commentid>
    <comment_count>5</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 10:41:45 -0700</bug_when>
    <thetext>Incorporated review comments.

Also created a new &apos;Shared&apos; folder, and moved transfer-archive-to-s3 to Shared folder (instead of creating another copy).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536507</commentid>
    <comment_count>6</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 11:27:54 -0700</bug_when>
    <thetext>For some reason svn-apply is not able to handle the file move. I will look separately. Meanwhile, please review the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536519</commentid>
    <comment_count>7</comment_count>
      <attachid>369977</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 11:53:36 -0700</bug_when>
    <thetext>Created attachment 369977
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536570</commentid>
    <comment_count>8</comment_count>
      <attachid>369977</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-15 13:46:01 -0700</bug_when>
    <thetext>Comment on attachment 369977
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=369977&amp;action=review

This patch is super broken....&apos;Tools/BuildSlaveSupport/Shared/transfer-archive-to-s3&apos; is in the patch 3 times, what&apos;s going on?

&gt; Tools/BuildSlaveSupport/Shared/transfer-archive-to-s3:34
&gt; +    parser.add_argument(&apos;--ews&apos;, action=&apos;store_true&apos;)

This argument feels especially weird since it&apos;s implied by --patch-id, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536588</commentid>
    <comment_count>9</comment_count>
      <attachid>369991</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 14:20:11 -0700</bug_when>
    <thetext>Created attachment 369991
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536589</commentid>
    <comment_count>10</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 14:22:43 -0700</bug_when>
    <thetext>&gt; This argument feels especially weird since it&apos;s implied by --patch-id, right?
Removed &apos;--ews&apos; parameter. --patch_id / --revision determine the appropriate S3 bucket now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536590</commentid>
    <comment_count>11</comment_count>
      <attachid>369991</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-05-15 14:24:11 -0700</bug_when>
    <thetext>Comment on attachment 369991
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=369991&amp;action=review

&gt; Tools/BuildSlaveSupport/Shared/transfer-archive-to-s3:43
&gt; +    S3_BUCKET = S3_DEFAULT_BUCKET

Seems like S3_BUCKET shouldn&apos;t be capitalized now that it isn&apos;t a constant.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536618</commentid>
    <comment_count>12</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-05-15 15:21:27 -0700</bug_when>
    <thetext>Committed r245359: &lt;https://trac.webkit.org/changeset/245359&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536619</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-15 15:22:41 -0700</bug_when>
    <thetext>&lt;rdar://problem/50829090&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369949</attachid>
            <date>2019-05-15 07:16:09 -0700</date>
            <delta_ts>2019-05-15 10:40:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197914-20190515101608.patch</filename>
            <type>text/plain</type>
            <size>5005</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0NTMyMSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDEyIEBACisyMDE5LTA1LTE1ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBbZXdzLWJ1aWxkXSBFbmFibGluZyB1cGxvYWRpbmcgRVdTIGFyY2hpdmVz
IHRvIFMzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTc5MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IEJ1aWxkU2xhdmVTdXBwb3J0L2V3cy1idWlsZC90cmFuc2Zlci1ld3MtYXJjaGl2ZS10by1zMzog
Q29waWVkIGZyb20gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvdHJhbnNmZXItYXJjaGl2ZS10by1zMy4KKwogMjAxOS0wNS0xNCAgQW5keSBFc3RlcyAgPGFl
c3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFBheV0gUGF5bWVudCBBUElzIHNob3Vs
ZCBiZSBjb21wbGV0ZWx5IGRpc2FibGVkIGluIHdlYiB2aWV3cyBpbnRvIHdoaWNoIGNsaWVudHMg
aGF2ZSBpbmplY3RlZCB1c2VyIHNjcmlwdHMKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0
L2V3cy1idWlsZC90cmFuc2Zlci1ld3MtYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYnVpbGQvdHJhbnNmZXItZXdzLWFyY2hpdmUtdG8tczMJ
KHJldmlzaW9uIDI0NTMyMSkJKGZyb20gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Vi
a2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10by1zMzoyNDUzMjEpCisrKyBUb29scy9C
dWlsZFNsYXZlU3VwcG9ydC9ld3MtYnVpbGQvdHJhbnNmZXItZXdzLWFyY2hpdmUtdG8tczMJKHdv
cmtpbmcgY29weSkKQEAgLTAsMCArMSw0MSBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCitpbXBv
cnQgYXJncGFyc2UKK2ltcG9ydCBib3RvMworaW1wb3J0IG9zCitpbXBvcnQgb3MucGF0aAoraW1w
b3J0IHN5cworCitTM19CVUNLRVQgPSAnYXJjaGl2ZXMud2Via2l0Lm9yZycKK1MzX01JTklGSUVE
X0JVQ0tFVCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJraXQub3JnJworUzNfUkVHSU9OX1BSRUZJ
WCA9ICdodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tJworCitkZWYgdXBsb2FkVG9T
MyhhcmNoaXZlX3BhdGgsIGJ1Y2tldCwgaWRlbnRpZmllciwgcmV2aXNpb24pOgorICAgIHByaW50
ICdUcmFuc2ZlcnJpbmcge30gdG8gUzMuLi4nLmZvcm1hdChhcmNoaXZlX3BhdGgpCisgICAga2V5
ID0gJy8nLmpvaW4oW2lkZW50aWZpZXIsIHJldmlzaW9uICsgJy56aXAnXSkKKyAgICBwcmludCAn
XHRTMyBCdWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZvcm1hdChidWNrZXQsIGtleSkKKyAgICBz
My51cGxvYWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQorICAgIHByaW50KCdcdFMz
IFVSTDoge30ve30ve30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQsIGtleSkpCisK
K2RlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUpOgorICAgIGlmIGFyY2hpdmU6CisgICAgICAgIGlm
IG9zLnBhdGguZXhpc3RzKGFyY2hpdmUpOgorCSAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAg
ZWxzZToKKyAgICAgICAgICAgIHByaW50ICdXQVJOSU5HOiBBcmNoaXZlIGRvZXMgbm90IGV4aXN0
OiB7fScuZm9ybWF0KGFyY2hpdmUpCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKwkKK3BhcnNl
ciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCitwYXJzZXIuYWRkX2Fy
Z3VtZW50KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9
J1JldmlzaW9uIG51bWJlciBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQorcGFyc2VyLmFkZF9hcmd1
bWVudCgnLS1pZGVudGlmaWVyJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9
J1MzIGRlc3RpbmF0aW9uIGlkZW50aWZpZXIsIGluIHRoZSBmb3JtIG9mIGZ1bGxQbGF0Zm9ybS1h
cmNoaXRlY3R1cmUtY29uZmlndXJhdGlvbi4gW21hYy1zaWVycmEteDg2XzY0LXJlbGVhc2VdJykK
K3BhcnNlci5hZGRfYXJndW1lbnQoJy0tYXJjaGl2ZScsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdQYXRoIHRvIHRoZSBmdWxsIHNpemUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIz
NDU2LnppcF0nKQorYXJncyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKKworCitoZWFkLCB0YWlsID0g
b3MucGF0aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkKK21pbmlmaWVkQXJjaGl2ZSA9IGhlYWQg
KyAnL21pbmlmaWVkLScgKyB0YWlsCitzMyA9IGJvdG8zLmNsaWVudCgnczMnKQorCitpZiBhcmNo
aXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6CisgICAgdXBsb2FkVG9TMyhhcmdzLmFyY2hpdmUsIFMz
X0JVQ0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9uKQoraWYgYXJjaGl2ZUV4aXN0
cyhtaW5pZmllZEFyY2hpdmUpOgorICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNoaXZlLCBTM19N
SU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYnVp
bGQvdHJhbnNmZXItZXdzLWFyY2hpdmUtdG8tczMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvZXdzLWJ1aWxkL3RyYW5zZmVyLWV3cy1hcmNoaXZlLXRvLXMzCShyZXZpc2lv
biAyNDUzMjEpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9ld3MtYnVpbGQvdHJhbnNmZXIt
ZXdzLWFyY2hpdmUtdG8tczMJKHdvcmtpbmcgY29weSkKQEAgLTUsMTMgKzUsMTIgQEAgaW1wb3J0
IG9zCiBpbXBvcnQgb3MucGF0aAogaW1wb3J0IHN5cwogCi1TM19CVUNLRVQgPSAnYXJjaGl2ZXMu
d2Via2l0Lm9yZycKLVMzX01JTklGSUVEX0JVQ0tFVCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJr
aXQub3JnJworUzNfQlVDS0VUID0gJ2V3cy1hcmNoaXZlcy53ZWJraXQub3JnJwogUzNfUkVHSU9O
X1BSRUZJWCA9ICdodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tJwogCi1kZWYgdXBs
b2FkVG9TMyhhcmNoaXZlX3BhdGgsIGJ1Y2tldCwgaWRlbnRpZmllciwgcmV2aXNpb24pOgorZGVm
IHVwbG9hZFRvUzMoYXJjaGl2ZV9wYXRoLCBidWNrZXQsIGlkZW50aWZpZXIsIHBhdGNoX2lkKToK
ICAgICBwcmludCAnVHJhbnNmZXJyaW5nIHt9IHRvIFMzLi4uJy5mb3JtYXQoYXJjaGl2ZV9wYXRo
KQotICAgIGtleSA9ICcvJy5qb2luKFtpZGVudGlmaWVyLCByZXZpc2lvbiArICcuemlwJ10pCisg
ICAga2V5ID0gJy8nLmpvaW4oW2lkZW50aWZpZXIsIHBhdGNoX2lkICsgJy56aXAnXSkKICAgICBw
cmludCAnXHRTMyBCdWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZvcm1hdChidWNrZXQsIGtleSkK
ICAgICBzMy51cGxvYWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQogICAgIHByaW50
KCdcdFMzIFVSTDoge30ve30ve30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQsIGtl
eSkpCkBAIC0yNSw3ICsyNCw3IEBAIGRlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUpOgogICAgICAg
ICAgICAgcmV0dXJuIEZhbHNlCiAJCiBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihh
ZGRfaGVscD1UcnVlKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsIGFjdGlvbj0i
c3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgZm9yIHRoZSBidWls
dCBhcmNoaXZlJykKK3BhcnNlci5hZGRfYXJndW1lbnQoJy0tcGF0Y2hfaWQnLCBhY3Rpb249InN0
b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0ncGF0Y2hfaWQgb2YgdGhlIHBhdGNoJykKIHBhcnNl
ci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1U
cnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxs
UGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1y
ZWxlYXNlXScpCiBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0b3Jl
IiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUuIFtw
YXRoL3RvLzEyMzQ1Ni56aXBdJykKIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCkBAIC0zNSw3
ICszNCw2IEBAIGhlYWQsIHRhaWwgPSBvcy5wYXRoLnNwbGl0KHN0cihhcmdzLmFyY2gKIG1pbmlm
aWVkQXJjaGl2ZSA9IGhlYWQgKyAnL21pbmlmaWVkLScgKyB0YWlsCiBzMyA9IGJvdG8zLmNsaWVu
dCgnczMnKQogCi1pZiBhcmNoaXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6Ci0gICAgdXBsb2FkVG9T
MyhhcmdzLmFyY2hpdmUsIFMzX0JVQ0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9u
KQotaWYgYXJjaGl2ZUV4aXN0cyhtaW5pZmllZEFyY2hpdmUpOgotICAgIHVwbG9hZFRvUzMobWlu
aWZpZWRBcmNoaXZlLCBTM19NSU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5y
ZXZpc2lvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitpZiBub3QgYXJjaGl2ZUV4aXN0
cyhhcmdzLmFyY2hpdmUpOgorICAgIHN5cy5leGl0KDEpCit1cGxvYWRUb1MzKGFyZ3MuYXJjaGl2
ZSwgUzNfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucGF0Y2hfaWQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369970</attachid>
            <date>2019-05-15 10:40:12 -0700</date>
            <delta_ts>2019-05-15 11:53:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197914-20190515134011.patch</filename>
            <type>text/plain</type>
            <size>12002</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0NTMyNykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE4IEBACisyMDE5LTA1LTE1ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBbZXdzLWJ1aWxkXSBFbmFibGluZyB1cGxvYWRpbmcgRVdTIGFyY2hpdmVz
IHRvIFMzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTc5MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IEJ1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZDogQWRkZWQuCisgICAgICAgICogQnVpbGRTbGF2ZVN1
cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6IE1vdmVkIGZyb20gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10
by1zMy4KKyAgICAgICAgKGFyY2hpdmVFeGlzdHMpOiBSZXBsYWNlIHRhYiB3aXRoIHNwYWNlLgor
ICAgICAgICAobWFpbik6IEFkZGVkIG1haW4gbWV0aG9kLgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoVHJhbnNm
ZXJUb1MzKTogVXBkYXRlZCBwYXRjaCB0byB0aGUgc2NyaXB0LgorICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6
IE1vdmVkIHRvIFNoYXJlZCBmb2xkZXIuCisKIDIwMTktMDUtMTUgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIENvbnN0YW50IGNyYXNoZXMgdW5kZXIgV2ViUGFn
ZTo6aXNUaHJvdHRsZWFibGUoKSBhZnRlciByMjQ1Mjk5CkluZGV4OiBUb29scy9CdWlsZFNsYXZl
U3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNp
b24gMjQ1MzIxKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFy
Y2hpdmUtdG8tczMJKHdvcmtpbmcgY29weSkKQEAgLTIsMTAgKzIsMTAgQEAKIGltcG9ydCBhcmdw
YXJzZQogaW1wb3J0IGJvdG8zCiBpbXBvcnQgb3MKLWltcG9ydCBvcy5wYXRoCiBpbXBvcnQgc3lz
CiAKLVMzX0JVQ0tFVCA9ICdhcmNoaXZlcy53ZWJraXQub3JnJworUzNfREVGQVVMVF9CVUNLRVQg
PSAnYXJjaGl2ZXMud2Via2l0Lm9yZycKK1MzX0VXU19CVUNLRVQgPSAnZXdzLWFyY2hpdmVzLndl
YmtpdC5vcmcnCiBTM19NSU5JRklFRF9CVUNLRVQgPSAnbWluaWZpZWQtYXJjaGl2ZXMud2Via2l0
Lm9yZycKIFMzX1JFR0lPTl9QUkVGSVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdz
LmNvbScKIApAQCAtMTksMjMgKzE5LDMyIEBAIGRlZiB1cGxvYWRUb1MzKGFyY2hpdmVfcGF0aCwg
YnVja2V0LCBpZGUKIGRlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUpOgogICAgIGlmIGFyY2hpdmU6
CiAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGFyY2hpdmUpOgotCSAgICAgICAgcmV0dXJuIFRy
dWUKKyAgICAgICAgICAgIHJldHVybiBUcnVlCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBw
cmludCAnV0FSTklORzogQXJjaGl2ZSBkb2VzIG5vdCBleGlzdDoge30nLmZvcm1hdChhcmNoaXZl
KQogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0JCi1wYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVu
dFBhcnNlcihhZGRfaGVscD1UcnVlKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbics
IGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgZm9y
IHRoZSBidWlsdCBhcmNoaXZlJykKLXBhcnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcics
IGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVu
dGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3Vy
YXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1yZWxlYXNlXScpCi1wYXJzZXIuYWRkX2FyZ3VtZW50
KCctLWFyY2hpdmUnLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUGF0aCB0
byB0aGUgZnVsbCBzaXplIGFyY2hpdmUuIFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykKLWFyZ3MgPSBw
YXJzZXIucGFyc2VfYXJncygpCi0KLQotaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQoc3RyKGFy
Z3MuYXJjaGl2ZSkpCi1taW5pZmllZEFyY2hpdmUgPSBoZWFkICsgJy9taW5pZmllZC0nICsgdGFp
bAotczMgPSBib3RvMy5jbGllbnQoJ3MzJykKLQotaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hp
dmUpOgotICAgIHVwbG9hZFRvUzMoYXJncy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRp
ZmllciwgYXJncy5yZXZpc2lvbikKLWlmIGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNoaXZlKToK
LSAgICB1cGxvYWRUb1MzKG1pbmlmaWVkQXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VULCBhcmdz
LmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQor
CitkZWYgbWFpbigpOgorICAgIHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9o
ZWxwPVRydWUpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsICctLXBhdGNo
X2lkJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1JldmlzaW9uIG51bWJl
ciBvciBwYXRjaF9pZCBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQorICAgIHBhcnNlci5hZGRfYXJn
dW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxw
PSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxsUGxhdGZvcm0t
YXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1yZWxlYXNlXScp
CisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hcmNoaXZlJywgYWN0aW9uPSJzdG9yZSIsIHJl
cXVpcmVkPVRydWUsIGhlbHA9J1BhdGggdG8gdGhlIGZ1bGwgc2l6ZSBhcmNoaXZlLiBbcGF0aC90
by8xMjM0NTYuemlwXScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1ld3MnLCBhY3Rpb249
J3N0b3JlX3RydWUnKQorICAgIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCisKKworICAgIHBh
cmVudGRpciwgZmlsZW5hbWUgPSBvcy5wYXRoLnNwbGl0KHN0cihhcmdzLmFyY2hpdmUpKQorICAg
IG1pbmlmaWVkQXJjaGl2ZSA9IG9zLnBhdGguam9pbihwYXJlbnRkaXIsICdtaW5pZmllZC0nICsg
ZmlsZW5hbWUpCisgICAgczMgPSBib3RvMy5jbGllbnQoJ3MzJykKKworICAgIFMzX0JVQ0tFVCA9
IFMzX0RFRkFVTFRfQlVDS0VUCisgICAgaWYgYXJncy5ld3M6CisgICAgICAgIFMzX0JVQ0tFVCA9
IFMzX0VXU19CVUNLRVQKKworICAgIGlmIGFyY2hpdmVFeGlzdHMoYXJncy5hcmNoaXZlKToKKyAg
ICAgICAgdXBsb2FkVG9TMyhhcmdzLmFyY2hpdmUsIFMzX0JVQ0tFVCwgYXJncy5pZGVudGlmaWVy
LCBhcmdzLnJldmlzaW9uKQorICAgIGlmIG5vdCBhcmdzLmV3cyBhbmQgYXJjaGl2ZUV4aXN0cyht
aW5pZmllZEFyY2hpdmUpOgorICAgICAgICB1cGxvYWRUb1MzKG1pbmlmaWVkQXJjaGl2ZSwgUzNf
TUlOSUZJRURfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pCisKK2lmIF9f
bmFtZV9fID09ICJfX21haW5fXyI6CisgICAgbWFpbigpCkluZGV4OiBUb29scy9CdWlsZFNsYXZl
U3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNp
b24gMjQ1MzIxKQkoZnJvbSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy90cmFuc2Zlci1hcmNoaXZlLXRvLXMzOjI0NTMyMSkKKysrIFRvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMzCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsNDEgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbgoraW1wb3J0IGFyZ3BhcnNlCitp
bXBvcnQgYm90bzMKK2ltcG9ydCBvcworaW1wb3J0IG9zLnBhdGgKK2ltcG9ydCBzeXMKKworUzNf
QlVDS0VUID0gJ2FyY2hpdmVzLndlYmtpdC5vcmcnCitTM19NSU5JRklFRF9CVUNLRVQgPSAnbWlu
aWZpZWQtYXJjaGl2ZXMud2Via2l0Lm9yZycKK1MzX1JFR0lPTl9QUkVGSVggPSAnaHR0cHM6Ly9z
My11cy13ZXN0LTIuYW1hem9uYXdzLmNvbScKKworZGVmIHVwbG9hZFRvUzMoYXJjaGl2ZV9wYXRo
LCBidWNrZXQsIGlkZW50aWZpZXIsIHJldmlzaW9uKToKKyAgICBwcmludCAnVHJhbnNmZXJyaW5n
IHt9IHRvIFMzLi4uJy5mb3JtYXQoYXJjaGl2ZV9wYXRoKQorICAgIGtleSA9ICcvJy5qb2luKFtp
ZGVudGlmaWVyLCByZXZpc2lvbiArICcuemlwJ10pCisgICAgcHJpbnQgJ1x0UzMgQnVja2V0OiB7
fVxuXHRTMyBLZXk6IHt9Jy5mb3JtYXQoYnVja2V0LCBrZXkpCisgICAgczMudXBsb2FkX2ZpbGUo
YXJjaGl2ZV9wYXRoLCBidWNrZXQsIGtleSkKKyAgICBwcmludCgnXHRTMyBVUkw6IHt9L3t9L3t9
Jy5mb3JtYXQoUzNfUkVHSU9OX1BSRUZJWCwgYnVja2V0LCBrZXkpKQorCitkZWYgYXJjaGl2ZUV4
aXN0cyhhcmNoaXZlKToKKyAgICBpZiBhcmNoaXZlOgorICAgICAgICBpZiBvcy5wYXRoLmV4aXN0
cyhhcmNoaXZlKToKKwkgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIGVsc2U6CisgICAgICAg
ICAgICBwcmludCAnV0FSTklORzogQXJjaGl2ZSBkb2VzIG5vdCBleGlzdDoge30nLmZvcm1hdChh
cmNoaXZlKQorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisJCitwYXJzZXIgPSBhcmdwYXJzZS5B
cmd1bWVudFBhcnNlcihhZGRfaGVscD1UcnVlKQorcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZp
c2lvbicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1i
ZXIgZm9yIHRoZSBidWlsdCBhcmNoaXZlJykKK3BhcnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRp
ZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlv
biBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNv
bmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1yZWxlYXNlXScpCitwYXJzZXIuYWRkX2Fy
Z3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0n
UGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUuIFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykKK2Fy
Z3MgPSBwYXJzZXIucGFyc2VfYXJncygpCisKKworaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQo
c3RyKGFyZ3MuYXJjaGl2ZSkpCittaW5pZmllZEFyY2hpdmUgPSBoZWFkICsgJy9taW5pZmllZC0n
ICsgdGFpbAorczMgPSBib3RvMy5jbGllbnQoJ3MzJykKKworaWYgYXJjaGl2ZUV4aXN0cyhhcmdz
LmFyY2hpdmUpOgorICAgIHVwbG9hZFRvUzMoYXJncy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3Mu
aWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKK2lmIGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNo
aXZlKToKKyAgICB1cGxvYWRUb1MzKG1pbmlmaWVkQXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VU
LCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hp
dmUtdG8tczMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3Ry
YW5zZmVyLWFyY2hpdmUtdG8tczMJKHJldmlzaW9uIDI0NTMyMSkKKysrIFRvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMzCSh3b3JraW5nIGNvcHkpCkBA
IC0yLDEwICsyLDEwIEBACiBpbXBvcnQgYXJncGFyc2UKIGltcG9ydCBib3RvMwogaW1wb3J0IG9z
Ci1pbXBvcnQgb3MucGF0aAogaW1wb3J0IHN5cwogCi1TM19CVUNLRVQgPSAnYXJjaGl2ZXMud2Vi
a2l0Lm9yZycKK1MzX0RFRkFVTFRfQlVDS0VUID0gJ2FyY2hpdmVzLndlYmtpdC5vcmcnCitTM19F
V1NfQlVDS0VUID0gJ2V3cy1hcmNoaXZlcy53ZWJraXQub3JnJwogUzNfTUlOSUZJRURfQlVDS0VU
ID0gJ21pbmlmaWVkLWFyY2hpdmVzLndlYmtpdC5vcmcnCiBTM19SRUdJT05fUFJFRklYID0gJ2h0
dHBzOi8vczMtdXMtd2VzdC0yLmFtYXpvbmF3cy5jb20nCiAKQEAgLTE5LDIzICsxOSwzMiBAQCBk
ZWYgdXBsb2FkVG9TMyhhcmNoaXZlX3BhdGgsIGJ1Y2tldCwgaWRlCiBkZWYgYXJjaGl2ZUV4aXN0
cyhhcmNoaXZlKToKICAgICBpZiBhcmNoaXZlOgogICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhh
cmNoaXZlKToKLQkgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgICAgICByZXR1cm4gVHJ1ZQog
ICAgICAgICBlbHNlOgogICAgICAgICAgICAgcHJpbnQgJ1dBUk5JTkc6IEFyY2hpdmUgZG9lcyBu
b3QgZXhpc3Q6IHt9Jy5mb3JtYXQoYXJjaGl2ZSkKICAgICAgICAgICAgIHJldHVybiBGYWxzZQot
CQotcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIoYWRkX2hlbHA9VHJ1ZSkKLXBhcnNl
ci5hZGRfYXJndW1lbnQoJy0tcmV2aXNpb24nLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1
ZSwgaGVscD0nUmV2aXNpb24gbnVtYmVyIGZvciB0aGUgYnVpbHQgYXJjaGl2ZScpCi1wYXJzZXIu
YWRkX2FyZ3VtZW50KCctLWlkZW50aWZpZXInLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1
ZSwgaGVscD0nUzMgZGVzdGluYXRpb24gaWRlbnRpZmllciwgaW4gdGhlIGZvcm0gb2YgZnVsbFBs
YXRmb3JtLWFyY2hpdGVjdHVyZS1jb25maWd1cmF0aW9uLiBbbWFjLXNpZXJyYS14ODZfNjQtcmVs
ZWFzZV0nKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hcmNoaXZlJywgYWN0aW9uPSJzdG9yZSIs
IHJlcXVpcmVkPVRydWUsIGhlbHA9J1BhdGggdG8gdGhlIGZ1bGwgc2l6ZSBhcmNoaXZlLiBbcGF0
aC90by8xMjM0NTYuemlwXScpCi1hcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQotCi0KLWhlYWQs
IHRhaWwgPSBvcy5wYXRoLnNwbGl0KHN0cihhcmdzLmFyY2hpdmUpKQotbWluaWZpZWRBcmNoaXZl
ID0gaGVhZCArICcvbWluaWZpZWQtJyArIHRhaWwKLXMzID0gYm90bzMuY2xpZW50KCdzMycpCi0K
LWlmIGFyY2hpdmVFeGlzdHMoYXJncy5hcmNoaXZlKToKLSAgICB1cGxvYWRUb1MzKGFyZ3MuYXJj
aGl2ZSwgUzNfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pCi1pZiBhcmNo
aXZlRXhpc3RzKG1pbmlmaWVkQXJjaGl2ZSk6Ci0gICAgdXBsb2FkVG9TMyhtaW5pZmllZEFyY2hp
dmUsIFMzX01JTklGSUVEX0JVQ0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9uKQpc
IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKworZGVmIG1haW4oKToKKyAgICBwYXJzZXIgPSBh
cmdwYXJzZS5Bcmd1bWVudFBhcnNlcihhZGRfaGVscD1UcnVlKQorICAgIHBhcnNlci5hZGRfYXJn
dW1lbnQoJy0tcmV2aXNpb24nLCAnLS1wYXRjaF9pZCcsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgb3IgcGF0Y2hfaWQgZm9yIHRoZSBidWlsdCBh
cmNoaXZlJykKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWlkZW50aWZpZXInLCBhY3Rpb249
InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUzMgZGVzdGluYXRpb24gaWRlbnRpZmllciwg
aW4gdGhlIGZvcm0gb2YgZnVsbFBsYXRmb3JtLWFyY2hpdGVjdHVyZS1jb25maWd1cmF0aW9uLiBb
bWFjLXNpZXJyYS14ODZfNjQtcmVsZWFzZV0nKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0t
YXJjaGl2ZScsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdQYXRoIHRvIHRo
ZSBmdWxsIHNpemUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIzNDU2LnppcF0nKQorICAgIHBhcnNlci5h
ZGRfYXJndW1lbnQoJy0tZXdzJywgYWN0aW9uPSdzdG9yZV90cnVlJykKKyAgICBhcmdzID0gcGFy
c2VyLnBhcnNlX2FyZ3MoKQorCisKKyAgICBwYXJlbnRkaXIsIGZpbGVuYW1lID0gb3MucGF0aC5z
cGxpdChzdHIoYXJncy5hcmNoaXZlKSkKKyAgICBtaW5pZmllZEFyY2hpdmUgPSBvcy5wYXRoLmpv
aW4ocGFyZW50ZGlyLCAnbWluaWZpZWQtJyArIGZpbGVuYW1lKQorICAgIHMzID0gYm90bzMuY2xp
ZW50KCdzMycpCisKKyAgICBTM19CVUNLRVQgPSBTM19ERUZBVUxUX0JVQ0tFVAorICAgIGlmIGFy
Z3MuZXdzOgorICAgICAgICBTM19CVUNLRVQgPSBTM19FV1NfQlVDS0VUCisKKyAgICBpZiBhcmNo
aXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6CisgICAgICAgIHVwbG9hZFRvUzMoYXJncy5hcmNoaXZl
LCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKKyAgICBpZiBub3Qg
YXJncy5ld3MgYW5kIGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNoaXZlKToKKyAgICAgICAgdXBs
b2FkVG9TMyhtaW5pZmllZEFyY2hpdmUsIFMzX01JTklGSUVEX0JVQ0tFVCwgYXJncy5pZGVudGlm
aWVyLCBhcmdzLnJldmlzaW9uKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIG1h
aW4oKQpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvc3RlcHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQu
d2Via2l0Lm9yZy1jb25maWcvc3RlcHMucHkJKHJldmlzaW9uIDI0NTMyMSkKKysrIFRvb2xzL0J1
aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5CSh3b3JraW5n
IGNvcHkpCkBAIC04NzQsNyArODc0LDcgQEAgY2xhc3MgVHJhbnNmZXJUb1MzKG1hc3Rlci5NYXN0
ZXJTaGVsbENvbQogICAgIG1pbmlmaWVkQXJjaGl2ZSA9IFdpdGhQcm9wZXJ0aWVzKCJhcmNoaXZl
cy8lKGZ1bGxQbGF0Zm9ybSlzLSUoYXJjaGl0ZWN0dXJlKXMtJShjb25maWd1cmF0aW9uKXMvbWlu
aWZpZWQtJShnb3RfcmV2aXNpb24pcy56aXAiKQogICAgIGlkZW50aWZpZXIgPSBXaXRoUHJvcGVy
dGllcygiJShmdWxsUGxhdGZvcm0pcy0lKGFyY2hpdGVjdHVyZSlzLSUoY29uZmlndXJhdGlvbilz
IikKICAgICByZXZpc2lvbiA9IFdpdGhQcm9wZXJ0aWVzKCIlKGdvdF9yZXZpc2lvbilzIikKLSAg
ICBjb21tYW5kID0gWyJweXRob24iLCAiLi90cmFuc2Zlci1hcmNoaXZlLXRvLXMzIiwgIi0tcmV2
aXNpb24iLCByZXZpc2lvbiwgIi0taWRlbnRpZmllciIsIGlkZW50aWZpZXIsICItLWFyY2hpdmUi
LCBhcmNoaXZlXQorICAgIGNvbW1hbmQgPSBbInB5dGhvbiIsICIuLi9TaGFyZWQvdHJhbnNmZXIt
YXJjaGl2ZS10by1zMyIsICItLXJldmlzaW9uIiwgcmV2aXNpb24sICItLWlkZW50aWZpZXIiLCBp
ZGVudGlmaWVyLCAiLS1hcmNoaXZlIiwgYXJjaGl2ZV0KICAgICBoYWx0T25GYWlsdXJlID0gVHJ1
ZQogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsICoqa3dhcmdzKToKSW5kZXg6IFRvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8t
czMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9y
Zy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNpb24gMjQ1MzIxKQorKysgVG9v
bHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJj
aGl2ZS10by1zMwkobm9uZXhpc3RlbnQpCkBAIC0xLDQxICswLDAgQEAKLSMhL3Vzci9iaW4vZW52
IHB5dGhvbgotaW1wb3J0IGFyZ3BhcnNlCi1pbXBvcnQgYm90bzMKLWltcG9ydCBvcwotaW1wb3J0
IG9zLnBhdGgKLWltcG9ydCBzeXMKLQotUzNfQlVDS0VUID0gJ2FyY2hpdmVzLndlYmtpdC5vcmcn
Ci1TM19NSU5JRklFRF9CVUNLRVQgPSAnbWluaWZpZWQtYXJjaGl2ZXMud2Via2l0Lm9yZycKLVMz
X1JFR0lPTl9QUkVGSVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbScKLQot
ZGVmIHVwbG9hZFRvUzMoYXJjaGl2ZV9wYXRoLCBidWNrZXQsIGlkZW50aWZpZXIsIHJldmlzaW9u
KToKLSAgICBwcmludCAnVHJhbnNmZXJyaW5nIHt9IHRvIFMzLi4uJy5mb3JtYXQoYXJjaGl2ZV9w
YXRoKQotICAgIGtleSA9ICcvJy5qb2luKFtpZGVudGlmaWVyLCByZXZpc2lvbiArICcuemlwJ10p
Ci0gICAgcHJpbnQgJ1x0UzMgQnVja2V0OiB7fVxuXHRTMyBLZXk6IHt9Jy5mb3JtYXQoYnVja2V0
LCBrZXkpCi0gICAgczMudXBsb2FkX2ZpbGUoYXJjaGl2ZV9wYXRoLCBidWNrZXQsIGtleSkKLSAg
ICBwcmludCgnXHRTMyBVUkw6IHt9L3t9L3t9Jy5mb3JtYXQoUzNfUkVHSU9OX1BSRUZJWCwgYnVj
a2V0LCBrZXkpKQotCi1kZWYgYXJjaGl2ZUV4aXN0cyhhcmNoaXZlKToKLSAgICBpZiBhcmNoaXZl
OgotICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhhcmNoaXZlKToKLQkgICAgICAgIHJldHVybiBU
cnVlCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBwcmludCAnV0FSTklORzogQXJjaGl2ZSBk
b2VzIG5vdCBleGlzdDoge30nLmZvcm1hdChhcmNoaXZlKQotICAgICAgICAgICAgcmV0dXJuIEZh
bHNlCi0JCi1wYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihhZGRfaGVscD1UcnVlKQot
cGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgZm9yIHRoZSBidWlsdCBhcmNoaXZlJykKLXBh
cnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBm
dWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82
NC1yZWxlYXNlXScpCi1wYXJzZXIuYWRkX2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0
b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUu
IFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykKLWFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCi0KLQot
aGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQoc3RyKGFyZ3MuYXJjaGl2ZSkpCi1taW5pZmllZEFy
Y2hpdmUgPSBoZWFkICsgJy9taW5pZmllZC0nICsgdGFpbAotczMgPSBib3RvMy5jbGllbnQoJ3Mz
JykKLQotaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hpdmUpOgotICAgIHVwbG9hZFRvUzMoYXJn
cy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKLWlm
IGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNoaXZlKToKLSAgICB1cGxvYWRUb1MzKG1pbmlmaWVk
QXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNp
b24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369977</attachid>
            <date>2019-05-15 11:53:36 -0700</date>
            <delta_ts>2019-05-15 14:20:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197914-20190515145335.patch</filename>
            <type>text/plain</type>
            <size>12588</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0NTMyNykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE4IEBACisyMDE5LTA1LTE1ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBbZXdzLWJ1aWxkXSBFbmFibGluZyB1cGxvYWRpbmcgRVdTIGFyY2hpdmVz
IHRvIFMzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTc5MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IEJ1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZDogQWRkZWQuCisgICAgICAgICogQnVpbGRTbGF2ZVN1
cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6IE1vdmVkIGZyb20gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10
by1zMy4KKyAgICAgICAgKGFyY2hpdmVFeGlzdHMpOiBSZXBsYWNlIHRhYiB3aXRoIHNwYWNlLgor
ICAgICAgICAobWFpbik6IEFkZGVkIG1haW4gbWV0aG9kLgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoVHJhbnNm
ZXJUb1MzKTogVXBkYXRlZCBwYXRjaCB0byB0aGUgc2NyaXB0LgorICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6
IE1vdmVkIHRvIFNoYXJlZCBmb2xkZXIuCisKIDIwMTktMDUtMTUgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIENvbnN0YW50IGNyYXNoZXMgdW5kZXIgV2ViUGFn
ZTo6aXNUaHJvdHRsZWFibGUoKSBhZnRlciByMjQ1Mjk5CkluZGV4OiBUb29scy9CdWlsZFNsYXZl
U3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNp
b24gMjQ1MzIxKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFy
Y2hpdmUtdG8tczMJKHdvcmtpbmcgY29weSkKQEAgLTIsMTAgKzIsMTAgQEAKIGltcG9ydCBhcmdw
YXJzZQogaW1wb3J0IGJvdG8zCiBpbXBvcnQgb3MKLWltcG9ydCBvcy5wYXRoCiBpbXBvcnQgc3lz
CiAKLVMzX0JVQ0tFVCA9ICdhcmNoaXZlcy53ZWJraXQub3JnJworUzNfREVGQVVMVF9CVUNLRVQg
PSAnYXJjaGl2ZXMud2Via2l0Lm9yZycKK1MzX0VXU19CVUNLRVQgPSAnZXdzLWFyY2hpdmVzLndl
YmtpdC5vcmcnCiBTM19NSU5JRklFRF9CVUNLRVQgPSAnbWluaWZpZWQtYXJjaGl2ZXMud2Via2l0
Lm9yZycKIFMzX1JFR0lPTl9QUkVGSVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdz
LmNvbScKIApAQCAtMTMsMjkgKzEzLDM3IEBAIGRlZiB1cGxvYWRUb1MzKGFyY2hpdmVfcGF0aCwg
YnVja2V0LCBpZGUKICAgICBwcmludCAnVHJhbnNmZXJyaW5nIHt9IHRvIFMzLi4uJy5mb3JtYXQo
YXJjaGl2ZV9wYXRoKQogICAgIGtleSA9ICcvJy5qb2luKFtpZGVudGlmaWVyLCByZXZpc2lvbiAr
ICcuemlwJ10pCiAgICAgcHJpbnQgJ1x0UzMgQnVja2V0OiB7fVxuXHRTMyBLZXk6IHt9Jy5mb3Jt
YXQoYnVja2V0LCBrZXkpCisgICAgczMgPSBib3RvMy5jbGllbnQoJ3MzJykKICAgICBzMy51cGxv
YWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQogICAgIHByaW50KCdcdFMzIFVSTDog
e30ve30ve30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQsIGtleSkpCiAKIGRlZiBh
cmNoaXZlRXhpc3RzKGFyY2hpdmUpOgogICAgIGlmIGFyY2hpdmU6CiAgICAgICAgIGlmIG9zLnBh
dGguZXhpc3RzKGFyY2hpdmUpOgotCSAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgICAgIHJl
dHVybiBUcnVlCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBwcmludCAnV0FSTklORzogQXJj
aGl2ZSBkb2VzIG5vdCBleGlzdDoge30nLmZvcm1hdChhcmNoaXZlKQogICAgICAgICAgICAgcmV0
dXJuIEZhbHNlCi0JCi1wYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihhZGRfaGVscD1U
cnVlKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsIGFjdGlvbj0ic3RvcmUiLCBy
ZXF1aXJlZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgZm9yIHRoZSBidWlsdCBhcmNoaXZl
JykKLXBhcnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCBy
ZXF1aXJlZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9y
bSBvZiBmdWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJh
LXg4Nl82NC1yZWxlYXNlXScpCi1wYXJzZXIuYWRkX2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rp
b249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFy
Y2hpdmUuIFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykKLWFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygp
Ci0KLQotaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQoc3RyKGFyZ3MuYXJjaGl2ZSkpCi1taW5p
ZmllZEFyY2hpdmUgPSBoZWFkICsgJy9taW5pZmllZC0nICsgdGFpbAotczMgPSBib3RvMy5jbGll
bnQoJ3MzJykKLQotaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hpdmUpOgotICAgIHVwbG9hZFRv
UzMoYXJncy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lv
bikKLWlmIGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNoaXZlKToKLSAgICB1cGxvYWRUb1MzKG1p
bmlmaWVkQXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3Mu
cmV2aXNpb24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitkZWYgbWFpbigpOgorICAg
IHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCisgICAgcGFy
c2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsICctLXBhdGNoX2lkJywgYWN0aW9uPSJzdG9y
ZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1JldmlzaW9uIG51bWJlciBvciBwYXRjaF9pZCBmb3Ig
dGhlIGJ1aWx0IGFyY2hpdmUnKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmll
cicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBp
ZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZp
Z3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1yZWxlYXNlXScpCisgICAgcGFyc2VyLmFkZF9h
cmd1bWVudCgnLS1hcmNoaXZlJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9
J1BhdGggdG8gdGhlIGZ1bGwgc2l6ZSBhcmNoaXZlLiBbcGF0aC90by8xMjM0NTYuemlwXScpCisg
ICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1ld3MnLCBhY3Rpb249J3N0b3JlX3RydWUnKQorICAg
IGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCisKKyAgICBwYXJlbnRkaXIsIGZpbGVuYW1lID0g
b3MucGF0aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkKKyAgICBtaW5pZmllZEFyY2hpdmUgPSBv
cy5wYXRoLmpvaW4ocGFyZW50ZGlyLCAnbWluaWZpZWQtJyArIGZpbGVuYW1lKQorCisgICAgUzNf
QlVDS0VUID0gUzNfREVGQVVMVF9CVUNLRVQKKyAgICBpZiBhcmdzLmV3czoKKyAgICAgICAgUzNf
QlVDS0VUID0gUzNfRVdTX0JVQ0tFVAorCisgICAgaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hp
dmUpOgorICAgICAgICB1cGxvYWRUb1MzKGFyZ3MuYXJjaGl2ZSwgUzNfQlVDS0VULCBhcmdzLmlk
ZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pCisgICAgaWYgbm90IGFyZ3MuZXdzIGFuZCBhcmNoaXZl
RXhpc3RzKG1pbmlmaWVkQXJjaGl2ZSk6CisgICAgICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNo
aXZlLCBTM19NSU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikK
KworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICBtYWluKCkKSW5kZXg6IFRvb2xzL0J1
aWxkU2xhdmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMz
CShyZXZpc2lvbiAyNDUzMjEpCShmcm9tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndl
YmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6MjQ1MzIxKQorKysgVG9vbHMv
QnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczMJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw0MSBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCitpbXBvcnQgYXJn
cGFyc2UKK2ltcG9ydCBib3RvMworaW1wb3J0IG9zCitpbXBvcnQgb3MucGF0aAoraW1wb3J0IHN5
cworCitTM19CVUNLRVQgPSAnYXJjaGl2ZXMud2Via2l0Lm9yZycKK1MzX01JTklGSUVEX0JVQ0tF
VCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJraXQub3JnJworUzNfUkVHSU9OX1BSRUZJWCA9ICdo
dHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tJworCitkZWYgdXBsb2FkVG9TMyhhcmNo
aXZlX3BhdGgsIGJ1Y2tldCwgaWRlbnRpZmllciwgcmV2aXNpb24pOgorICAgIHByaW50ICdUcmFu
c2ZlcnJpbmcge30gdG8gUzMuLi4nLmZvcm1hdChhcmNoaXZlX3BhdGgpCisgICAga2V5ID0gJy8n
LmpvaW4oW2lkZW50aWZpZXIsIHJldmlzaW9uICsgJy56aXAnXSkKKyAgICBwcmludCAnXHRTMyBC
dWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZvcm1hdChidWNrZXQsIGtleSkKKyAgICBzMy51cGxv
YWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQorICAgIHByaW50KCdcdFMzIFVSTDog
e30ve30ve30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQsIGtleSkpCisKK2RlZiBh
cmNoaXZlRXhpc3RzKGFyY2hpdmUpOgorICAgIGlmIGFyY2hpdmU6CisgICAgICAgIGlmIG9zLnBh
dGguZXhpc3RzKGFyY2hpdmUpOgorCSAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgZWxzZToK
KyAgICAgICAgICAgIHByaW50ICdXQVJOSU5HOiBBcmNoaXZlIGRvZXMgbm90IGV4aXN0OiB7fScu
Zm9ybWF0KGFyY2hpdmUpCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKwkKK3BhcnNlciA9IGFy
Z3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCitwYXJzZXIuYWRkX2FyZ3VtZW50
KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1Jldmlz
aW9uIG51bWJlciBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQorcGFyc2VyLmFkZF9hcmd1bWVudCgn
LS1pZGVudGlmaWVyJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1MzIGRl
c3RpbmF0aW9uIGlkZW50aWZpZXIsIGluIHRoZSBmb3JtIG9mIGZ1bGxQbGF0Zm9ybS1hcmNoaXRl
Y3R1cmUtY29uZmlndXJhdGlvbi4gW21hYy1zaWVycmEteDg2XzY0LXJlbGVhc2VdJykKK3BhcnNl
ci5hZGRfYXJndW1lbnQoJy0tYXJjaGl2ZScsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVl
LCBoZWxwPSdQYXRoIHRvIHRoZSBmdWxsIHNpemUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIzNDU2Lnpp
cF0nKQorYXJncyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKKworCitoZWFkLCB0YWlsID0gb3MucGF0
aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkKK21pbmlmaWVkQXJjaGl2ZSA9IGhlYWQgKyAnL21p
bmlmaWVkLScgKyB0YWlsCitzMyA9IGJvdG8zLmNsaWVudCgnczMnKQorCitpZiBhcmNoaXZlRXhp
c3RzKGFyZ3MuYXJjaGl2ZSk6CisgICAgdXBsb2FkVG9TMyhhcmdzLmFyY2hpdmUsIFMzX0JVQ0tF
VCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9uKQoraWYgYXJjaGl2ZUV4aXN0cyhtaW5p
ZmllZEFyY2hpdmUpOgorICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNoaXZlLCBTM19NSU5JRklF
RF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNm
ZXItYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9T
aGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNpb24gMjQ1MzIxKQorKysgVG9vbHMv
QnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczMJKHdvcmtpbmcg
Y29weSkKQEAgLTIsMTAgKzIsMTAgQEAKIGltcG9ydCBhcmdwYXJzZQogaW1wb3J0IGJvdG8zCiBp
bXBvcnQgb3MKLWltcG9ydCBvcy5wYXRoCiBpbXBvcnQgc3lzCiAKLVMzX0JVQ0tFVCA9ICdhcmNo
aXZlcy53ZWJraXQub3JnJworUzNfREVGQVVMVF9CVUNLRVQgPSAnYXJjaGl2ZXMud2Via2l0Lm9y
ZycKK1MzX0VXU19CVUNLRVQgPSAnZXdzLWFyY2hpdmVzLndlYmtpdC5vcmcnCiBTM19NSU5JRklF
RF9CVUNLRVQgPSAnbWluaWZpZWQtYXJjaGl2ZXMud2Via2l0Lm9yZycKIFMzX1JFR0lPTl9QUkVG
SVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbScKIApAQCAtMTMsMjkgKzEz
LDM3IEBAIGRlZiB1cGxvYWRUb1MzKGFyY2hpdmVfcGF0aCwgYnVja2V0LCBpZGUKICAgICBwcmlu
dCAnVHJhbnNmZXJyaW5nIHt9IHRvIFMzLi4uJy5mb3JtYXQoYXJjaGl2ZV9wYXRoKQogICAgIGtl
eSA9ICcvJy5qb2luKFtpZGVudGlmaWVyLCByZXZpc2lvbiArICcuemlwJ10pCiAgICAgcHJpbnQg
J1x0UzMgQnVja2V0OiB7fVxuXHRTMyBLZXk6IHt9Jy5mb3JtYXQoYnVja2V0LCBrZXkpCisgICAg
czMgPSBib3RvMy5jbGllbnQoJ3MzJykKICAgICBzMy51cGxvYWRfZmlsZShhcmNoaXZlX3BhdGgs
IGJ1Y2tldCwga2V5KQogICAgIHByaW50KCdcdFMzIFVSTDoge30ve30ve30nLmZvcm1hdChTM19S
RUdJT05fUFJFRklYLCBidWNrZXQsIGtleSkpCiAKIGRlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUp
OgogICAgIGlmIGFyY2hpdmU6CiAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGFyY2hpdmUpOgot
CSAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgICAgIHJldHVybiBUcnVlCiAgICAgICAgIGVs
c2U6CiAgICAgICAgICAgICBwcmludCAnV0FSTklORzogQXJjaGl2ZSBkb2VzIG5vdCBleGlzdDog
e30nLmZvcm1hdChhcmNoaXZlKQogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0JCi1wYXJzZXIg
PSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihhZGRfaGVscD1UcnVlKQotcGFyc2VyLmFkZF9hcmd1
bWVudCgnLS1yZXZpc2lvbicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdS
ZXZpc2lvbiBudW1iZXIgZm9yIHRoZSBidWlsdCBhcmNoaXZlJykKLXBhcnNlci5hZGRfYXJndW1l
bnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdT
MyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBmdWxsUGxhdGZvcm0tYXJj
aGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82NC1yZWxlYXNlXScpCi1w
YXJzZXIuYWRkX2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9
VHJ1ZSwgaGVscD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUuIFtwYXRoL3RvLzEyMzQ1
Ni56aXBdJykKLWFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCi0KLQotaGVhZCwgdGFpbCA9IG9z
LnBhdGguc3BsaXQoc3RyKGFyZ3MuYXJjaGl2ZSkpCi1taW5pZmllZEFyY2hpdmUgPSBoZWFkICsg
Jy9taW5pZmllZC0nICsgdGFpbAotczMgPSBib3RvMy5jbGllbnQoJ3MzJykKLQotaWYgYXJjaGl2
ZUV4aXN0cyhhcmdzLmFyY2hpdmUpOgotICAgIHVwbG9hZFRvUzMoYXJncy5hcmNoaXZlLCBTM19C
VUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKLWlmIGFyY2hpdmVFeGlzdHMo
bWluaWZpZWRBcmNoaXZlKToKLSAgICB1cGxvYWRUb1MzKG1pbmlmaWVkQXJjaGl2ZSwgUzNfTUlO
SUZJRURfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQorCitkZWYgbWFpbigpOgorICAgIHBhcnNlciA9IGFyZ3BhcnNlLkFy
Z3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1y
ZXZpc2lvbicsICctLXBhdGNoX2lkJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhl
bHA9J1JldmlzaW9uIG51bWJlciBvciBwYXRjaF9pZCBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQor
ICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCBy
ZXF1aXJlZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9y
bSBvZiBmdWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJh
LXg4Nl82NC1yZWxlYXNlXScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hcmNoaXZlJywg
YWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1BhdGggdG8gdGhlIGZ1bGwgc2l6
ZSBhcmNoaXZlLiBbcGF0aC90by8xMjM0NTYuemlwXScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVu
dCgnLS1ld3MnLCBhY3Rpb249J3N0b3JlX3RydWUnKQorICAgIGFyZ3MgPSBwYXJzZXIucGFyc2Vf
YXJncygpCisKKyAgICBwYXJlbnRkaXIsIGZpbGVuYW1lID0gb3MucGF0aC5zcGxpdChzdHIoYXJn
cy5hcmNoaXZlKSkKKyAgICBtaW5pZmllZEFyY2hpdmUgPSBvcy5wYXRoLmpvaW4ocGFyZW50ZGly
LCAnbWluaWZpZWQtJyArIGZpbGVuYW1lKQorCisgICAgUzNfQlVDS0VUID0gUzNfREVGQVVMVF9C
VUNLRVQKKyAgICBpZiBhcmdzLmV3czoKKyAgICAgICAgUzNfQlVDS0VUID0gUzNfRVdTX0JVQ0tF
VAorCisgICAgaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hpdmUpOgorICAgICAgICB1cGxvYWRU
b1MzKGFyZ3MuYXJjaGl2ZSwgUzNfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNp
b24pCisgICAgaWYgbm90IGFyZ3MuZXdzIGFuZCBhcmNoaXZlRXhpc3RzKG1pbmlmaWVkQXJjaGl2
ZSk6CisgICAgICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNoaXZlLCBTM19NSU5JRklFRF9CVUNL
RVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKKworaWYgX19uYW1lX18gPT0gIl9f
bWFpbl9fIjoKKyAgICBtYWluKCkKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxk
LndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5CShyZXZpc2lvbiAyNDUz
MjEpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9z
dGVwcy5weQkod29ya2luZyBjb3B5KQpAQCAtODc0LDcgKzg3NCw3IEBAIGNsYXNzIFRyYW5zZmVy
VG9TMyhtYXN0ZXIuTWFzdGVyU2hlbGxDb20KICAgICBtaW5pZmllZEFyY2hpdmUgPSBXaXRoUHJv
cGVydGllcygiYXJjaGl2ZXMvJShmdWxsUGxhdGZvcm0pcy0lKGFyY2hpdGVjdHVyZSlzLSUoY29u
ZmlndXJhdGlvbilzL21pbmlmaWVkLSUoZ290X3JldmlzaW9uKXMuemlwIikKICAgICBpZGVudGlm
aWVyID0gV2l0aFByb3BlcnRpZXMoIiUoZnVsbFBsYXRmb3JtKXMtJShhcmNoaXRlY3R1cmUpcy0l
KGNvbmZpZ3VyYXRpb24pcyIpCiAgICAgcmV2aXNpb24gPSBXaXRoUHJvcGVydGllcygiJShnb3Rf
cmV2aXNpb24pcyIpCi0gICAgY29tbWFuZCA9IFsicHl0aG9uIiwgIi4vdHJhbnNmZXItYXJjaGl2
ZS10by1zMyIsICItLXJldmlzaW9uIiwgcmV2aXNpb24sICItLWlkZW50aWZpZXIiLCBpZGVudGlm
aWVyLCAiLS1hcmNoaXZlIiwgYXJjaGl2ZV0KKyAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi4v
U2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczMiLCAiLS1yZXZpc2lvbiIsIHJldmlzaW9uLCAi
LS1pZGVudGlmaWVyIiwgaWRlbnRpZmllciwgIi0tYXJjaGl2ZSIsIGFyY2hpdmVdCiAgICAgaGFs
dE9uRmFpbHVyZSA9IFRydWUKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqKmt3YXJncyk6Cklu
ZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy90cmFu
c2Zlci1hcmNoaXZlLXRvLXMzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczMJKHJldmlzaW9u
IDI0NTMyMSkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29u
ZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczMJKG5vbmV4aXN0ZW50KQpAQCAtMSw0MSArMCwwIEBA
Ci0jIS91c3IvYmluL2VudiBweXRob24KLWltcG9ydCBhcmdwYXJzZQotaW1wb3J0IGJvdG8zCi1p
bXBvcnQgb3MKLWltcG9ydCBvcy5wYXRoCi1pbXBvcnQgc3lzCi0KLVMzX0JVQ0tFVCA9ICdhcmNo
aXZlcy53ZWJraXQub3JnJwotUzNfTUlOSUZJRURfQlVDS0VUID0gJ21pbmlmaWVkLWFyY2hpdmVz
LndlYmtpdC5vcmcnCi1TM19SRUdJT05fUFJFRklYID0gJ2h0dHBzOi8vczMtdXMtd2VzdC0yLmFt
YXpvbmF3cy5jb20nCi0KLWRlZiB1cGxvYWRUb1MzKGFyY2hpdmVfcGF0aCwgYnVja2V0LCBpZGVu
dGlmaWVyLCByZXZpc2lvbik6Ci0gICAgcHJpbnQgJ1RyYW5zZmVycmluZyB7fSB0byBTMy4uLicu
Zm9ybWF0KGFyY2hpdmVfcGF0aCkKLSAgICBrZXkgPSAnLycuam9pbihbaWRlbnRpZmllciwgcmV2
aXNpb24gKyAnLnppcCddKQotICAgIHByaW50ICdcdFMzIEJ1Y2tldDoge31cblx0UzMgS2V5OiB7
fScuZm9ybWF0KGJ1Y2tldCwga2V5KQotICAgIHMzLnVwbG9hZF9maWxlKGFyY2hpdmVfcGF0aCwg
YnVja2V0LCBrZXkpCi0gICAgcHJpbnQoJ1x0UzMgVVJMOiB7fS97fS97fScuZm9ybWF0KFMzX1JF
R0lPTl9QUkVGSVgsIGJ1Y2tldCwga2V5KSkKLQotZGVmIGFyY2hpdmVFeGlzdHMoYXJjaGl2ZSk6
Ci0gICAgaWYgYXJjaGl2ZToKLSAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoYXJjaGl2ZSk6Ci0J
ICAgICAgICByZXR1cm4gVHJ1ZQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcHJpbnQgJ1dB
Uk5JTkc6IEFyY2hpdmUgZG9lcyBub3QgZXhpc3Q6IHt9Jy5mb3JtYXQoYXJjaGl2ZSkKLSAgICAg
ICAgICAgIHJldHVybiBGYWxzZQotCQotcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIo
YWRkX2hlbHA9VHJ1ZSkKLXBhcnNlci5hZGRfYXJndW1lbnQoJy0tcmV2aXNpb24nLCBhY3Rpb249
InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUmV2aXNpb24gbnVtYmVyIGZvciB0aGUgYnVp
bHQgYXJjaGl2ZScpCi1wYXJzZXIuYWRkX2FyZ3VtZW50KCctLWlkZW50aWZpZXInLCBhY3Rpb249
InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUzMgZGVzdGluYXRpb24gaWRlbnRpZmllciwg
aW4gdGhlIGZvcm0gb2YgZnVsbFBsYXRmb3JtLWFyY2hpdGVjdHVyZS1jb25maWd1cmF0aW9uLiBb
bWFjLXNpZXJyYS14ODZfNjQtcmVsZWFzZV0nKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1hcmNo
aXZlJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1BhdGggdG8gdGhlIGZ1
bGwgc2l6ZSBhcmNoaXZlLiBbcGF0aC90by8xMjM0NTYuemlwXScpCi1hcmdzID0gcGFyc2VyLnBh
cnNlX2FyZ3MoKQotCi0KLWhlYWQsIHRhaWwgPSBvcy5wYXRoLnNwbGl0KHN0cihhcmdzLmFyY2hp
dmUpKQotbWluaWZpZWRBcmNoaXZlID0gaGVhZCArICcvbWluaWZpZWQtJyArIHRhaWwKLXMzID0g
Ym90bzMuY2xpZW50KCdzMycpCi0KLWlmIGFyY2hpdmVFeGlzdHMoYXJncy5hcmNoaXZlKToKLSAg
ICB1cGxvYWRUb1MzKGFyZ3MuYXJjaGl2ZSwgUzNfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFy
Z3MucmV2aXNpb24pCi1pZiBhcmNoaXZlRXhpc3RzKG1pbmlmaWVkQXJjaGl2ZSk6Ci0gICAgdXBs
b2FkVG9TMyhtaW5pZmllZEFyY2hpdmUsIFMzX01JTklGSUVEX0JVQ0tFVCwgYXJncy5pZGVudGlm
aWVyLCBhcmdzLnJldmlzaW9uKQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369991</attachid>
            <date>2019-05-15 14:20:11 -0700</date>
            <delta_ts>2019-05-15 14:24:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197914-20190515172009.patch</filename>
            <type>text/plain</type>
            <size>12811</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0NTM0MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE4IEBACisyMDE5LTA1LTE1ICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBbZXdzLWJ1aWxkXSBFbmFibGluZyB1cGxvYWRpbmcgRVdTIGFyY2hpdmVz
IHRvIFMzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
OTc5MTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IEJ1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZDogQWRkZWQuCisgICAgICAgICogQnVpbGRTbGF2ZVN1
cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6IE1vdmVkIGZyb20gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10
by1zMy4KKyAgICAgICAgKGFyY2hpdmVFeGlzdHMpOiBSZXBsYWNlIHRhYiB3aXRoIHNwYWNlLgor
ICAgICAgICAobWFpbik6IEFkZGVkIG1haW4gbWV0aG9kLgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoVHJhbnNm
ZXJUb1MzKTogVXBkYXRlZCBwYXRoIHRvIHRoZSBzY3JpcHQuCisgICAgICAgICogQnVpbGRTbGF2
ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXItYXJjaGl2ZS10by1zMzog
TW92ZWQgdG8gU2hhcmVkIGZvbGRlci4KKwogMjAxOS0wNS0xNSAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBpbnB1dG1vZGU9Im51bWVyaWMiIHNob3Vs
ZCBzaG93IGEgbnVtYmVyIHBhZCB3aXRoIGRpZ2l0cyAwLTksIGluc3RlYWQgb2YgdGhlIG51bWVy
aWMga2V5cGxhbmUKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zl
ci1hcmNoaXZlLXRvLXMzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L1No
YXJlZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMzCShyZXZpc2lvbiAyNDUzNDIpCisrKyBUb29scy9C
dWlsZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkod29ya2luZyBj
b3B5KQpAQCAtMiwxMCArMiwxMCBAQAogaW1wb3J0IGFyZ3BhcnNlCiBpbXBvcnQgYm90bzMKIGlt
cG9ydCBvcwotaW1wb3J0IG9zLnBhdGgKIGltcG9ydCBzeXMKIAotUzNfQlVDS0VUID0gJ2FyY2hp
dmVzLndlYmtpdC5vcmcnCitTM19ERUZBVUxUX0JVQ0tFVCA9ICdhcmNoaXZlcy53ZWJraXQub3Jn
JworUzNfRVdTX0JVQ0tFVCA9ICdld3MtYXJjaGl2ZXMud2Via2l0Lm9yZycKIFMzX01JTklGSUVE
X0JVQ0tFVCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJraXQub3JnJwogUzNfUkVHSU9OX1BSRUZJ
WCA9ICdodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tJwogCkBAIC0xMywyOSArMTMs
NDAgQEAgZGVmIHVwbG9hZFRvUzMoYXJjaGl2ZV9wYXRoLCBidWNrZXQsIGlkZQogICAgIHByaW50
ICdUcmFuc2ZlcnJpbmcge30gdG8gUzMuLi4nLmZvcm1hdChhcmNoaXZlX3BhdGgpCiAgICAga2V5
ID0gJy8nLmpvaW4oW2lkZW50aWZpZXIsIHJldmlzaW9uICsgJy56aXAnXSkKICAgICBwcmludCAn
XHRTMyBCdWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZvcm1hdChidWNrZXQsIGtleSkKKyAgICBz
MyA9IGJvdG8zLmNsaWVudCgnczMnKQogICAgIHMzLnVwbG9hZF9maWxlKGFyY2hpdmVfcGF0aCwg
YnVja2V0LCBrZXkpCiAgICAgcHJpbnQoJ1x0UzMgVVJMOiB7fS97fS97fScuZm9ybWF0KFMzX1JF
R0lPTl9QUkVGSVgsIGJ1Y2tldCwga2V5KSkKIAogZGVmIGFyY2hpdmVFeGlzdHMoYXJjaGl2ZSk6
CiAgICAgaWYgYXJjaGl2ZToKICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoYXJjaGl2ZSk6Ci0J
ICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgZWxz
ZToKICAgICAgICAgICAgIHByaW50ICdXQVJOSU5HOiBBcmNoaXZlIGRvZXMgbm90IGV4aXN0OiB7
fScuZm9ybWF0KGFyY2hpdmUpCiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKLQkKLXBhcnNlciA9
IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCi1wYXJzZXIuYWRkX2FyZ3Vt
ZW50KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1Jl
dmlzaW9uIG51bWJlciBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQotcGFyc2VyLmFkZF9hcmd1bWVu
dCgnLS1pZGVudGlmaWVyJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1Mz
IGRlc3RpbmF0aW9uIGlkZW50aWZpZXIsIGluIHRoZSBmb3JtIG9mIGZ1bGxQbGF0Zm9ybS1hcmNo
aXRlY3R1cmUtY29uZmlndXJhdGlvbi4gW21hYy1zaWVycmEteDg2XzY0LXJlbGVhc2VdJykKLXBh
cnNlci5hZGRfYXJndW1lbnQoJy0tYXJjaGl2ZScsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1U
cnVlLCBoZWxwPSdQYXRoIHRvIHRoZSBmdWxsIHNpemUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIzNDU2
LnppcF0nKQotYXJncyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKLQotCi1oZWFkLCB0YWlsID0gb3Mu
cGF0aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkKLW1pbmlmaWVkQXJjaGl2ZSA9IGhlYWQgKyAn
L21pbmlmaWVkLScgKyB0YWlsCi1zMyA9IGJvdG8zLmNsaWVudCgnczMnKQotCi1pZiBhcmNoaXZl
RXhpc3RzKGFyZ3MuYXJjaGl2ZSk6Ci0gICAgdXBsb2FkVG9TMyhhcmdzLmFyY2hpdmUsIFMzX0JV
Q0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9uKQotaWYgYXJjaGl2ZUV4aXN0cyht
aW5pZmllZEFyY2hpdmUpOgotICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNoaXZlLCBTM19NSU5J
RklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCisKK2RlZiBtYWluKCk6CisgICAgcGFyc2VyID0gYXJncGFyc2UuQXJn
dW1lbnRQYXJzZXIoYWRkX2hlbHA9VHJ1ZSkKKworICAgIGdyb3VwID0gcGFyc2VyLmFkZF9tdXR1
YWxseV9leGNsdXNpdmVfZ3JvdXAocmVxdWlyZWQ9VHJ1ZSkKKyAgICBncm91cC5hZGRfYXJndW1l
bnQoJy0tcmV2aXNpb24nLCBhY3Rpb249InN0b3JlIiwgaGVscD0nUmV2aXNpb24gbnVtYmVyIG9y
IHBhdGNoX2lkIGZvciB0aGUgYnVpbHQgYXJjaGl2ZScpCisgICAgZ3JvdXAuYWRkX2FyZ3VtZW50
KCctLXBhdGNoX2lkJywgYWN0aW9uPSJzdG9yZSIsIGhlbHA9J3BhdGNoX2lkIG9mIHRoZSBwYXRj
aCcpCisKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWlkZW50aWZpZXInLCBhY3Rpb249InN0
b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUzMgZGVzdGluYXRpb24gaWRlbnRpZmllciwgaW4g
dGhlIGZvcm0gb2YgZnVsbFBsYXRmb3JtLWFyY2hpdGVjdHVyZS1jb25maWd1cmF0aW9uLiBbbWFj
LXNpZXJyYS14ODZfNjQtcmVsZWFzZV0nKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy0tYXJj
aGl2ZScsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdQYXRoIHRvIHRoZSBm
dWxsIHNpemUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIzNDU2LnppcF0nKQorICAgIGFyZ3MgPSBwYXJz
ZXIucGFyc2VfYXJncygpCisKKyAgICBwYXJlbnRkaXIsIGZpbGVuYW1lID0gb3MucGF0aC5zcGxp
dChzdHIoYXJncy5hcmNoaXZlKSkKKyAgICBtaW5pZmllZEFyY2hpdmUgPSBvcy5wYXRoLmpvaW4o
cGFyZW50ZGlyLCAnbWluaWZpZWQtJyArIGZpbGVuYW1lKQorCisgICAgUzNfQlVDS0VUID0gUzNf
REVGQVVMVF9CVUNLRVQKKyAgICBpZiBhcmdzLnBhdGNoX2lkOgorICAgICAgICBTM19CVUNLRVQg
PSBTM19FV1NfQlVDS0VUCisKKyAgICBpZiBhcmNoaXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6Cisg
ICAgICAgIHVwbG9hZFRvUzMoYXJncy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRpZmll
ciwgYXJncy5yZXZpc2lvbiBvciBhcmdzLnBhdGNoX2lkKQorICAgIGlmIG5vdCBhcmdzLnBhdGNo
X2lkIGFuZCBhcmNoaXZlRXhpc3RzKG1pbmlmaWVkQXJjaGl2ZSk6CisgICAgICAgIHVwbG9hZFRv
UzMobWluaWZpZWRBcmNoaXZlLCBTM19NSU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwg
YXJncy5yZXZpc2lvbikKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICBtYWluKCkK
SW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zlci1hcmNoaXZlLXRv
LXMzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L1NoYXJlZC90cmFuc2Zl
ci1hcmNoaXZlLXRvLXMzCShyZXZpc2lvbiAyNDUzNDIpCShmcm9tIFRvb2xzL0J1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3RyYW5zZmVyLWFyY2hpdmUtdG8tczM6MjQ1
MzQyKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUt
dG8tczMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MSBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0
aG9uCitpbXBvcnQgYXJncGFyc2UKK2ltcG9ydCBib3RvMworaW1wb3J0IG9zCitpbXBvcnQgb3Mu
cGF0aAoraW1wb3J0IHN5cworCitTM19CVUNLRVQgPSAnYXJjaGl2ZXMud2Via2l0Lm9yZycKK1Mz
X01JTklGSUVEX0JVQ0tFVCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJraXQub3JnJworUzNfUkVH
SU9OX1BSRUZJWCA9ICdodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tJworCitkZWYg
dXBsb2FkVG9TMyhhcmNoaXZlX3BhdGgsIGJ1Y2tldCwgaWRlbnRpZmllciwgcmV2aXNpb24pOgor
ICAgIHByaW50ICdUcmFuc2ZlcnJpbmcge30gdG8gUzMuLi4nLmZvcm1hdChhcmNoaXZlX3BhdGgp
CisgICAga2V5ID0gJy8nLmpvaW4oW2lkZW50aWZpZXIsIHJldmlzaW9uICsgJy56aXAnXSkKKyAg
ICBwcmludCAnXHRTMyBCdWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZvcm1hdChidWNrZXQsIGtl
eSkKKyAgICBzMy51cGxvYWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQorICAgIHBy
aW50KCdcdFMzIFVSTDoge30ve30ve30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQs
IGtleSkpCisKK2RlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUpOgorICAgIGlmIGFyY2hpdmU6Cisg
ICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGFyY2hpdmUpOgorCSAgICAgICAgcmV0dXJuIFRydWUK
KyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHByaW50ICdXQVJOSU5HOiBBcmNoaXZlIGRvZXMg
bm90IGV4aXN0OiB7fScuZm9ybWF0KGFyY2hpdmUpCisgICAgICAgICAgICByZXR1cm4gRmFsc2UK
KwkKK3BhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCitwYXJz
ZXIuYWRkX2FyZ3VtZW50KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRy
dWUsIGhlbHA9J1JldmlzaW9uIG51bWJlciBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQorcGFyc2Vy
LmFkZF9hcmd1bWVudCgnLS1pZGVudGlmaWVyJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRy
dWUsIGhlbHA9J1MzIGRlc3RpbmF0aW9uIGlkZW50aWZpZXIsIGluIHRoZSBmb3JtIG9mIGZ1bGxQ
bGF0Zm9ybS1hcmNoaXRlY3R1cmUtY29uZmlndXJhdGlvbi4gW21hYy1zaWVycmEteDg2XzY0LXJl
bGVhc2VdJykKK3BhcnNlci5hZGRfYXJndW1lbnQoJy0tYXJjaGl2ZScsIGFjdGlvbj0ic3RvcmUi
LCByZXF1aXJlZD1UcnVlLCBoZWxwPSdQYXRoIHRvIHRoZSBmdWxsIHNpemUgYXJjaGl2ZS4gW3Bh
dGgvdG8vMTIzNDU2LnppcF0nKQorYXJncyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKKworCitoZWFk
LCB0YWlsID0gb3MucGF0aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkKK21pbmlmaWVkQXJjaGl2
ZSA9IGhlYWQgKyAnL21pbmlmaWVkLScgKyB0YWlsCitzMyA9IGJvdG8zLmNsaWVudCgnczMnKQor
CitpZiBhcmNoaXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6CisgICAgdXBsb2FkVG9TMyhhcmdzLmFy
Y2hpdmUsIFMzX0JVQ0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJldmlzaW9uKQoraWYgYXJj
aGl2ZUV4aXN0cyhtaW5pZmllZEFyY2hpdmUpOgorICAgIHVwbG9hZFRvUzMobWluaWZpZWRBcmNo
aXZlLCBTM19NSU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9y
dC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9TaGFyZWQvdHJhbnNmZXItYXJjaGl2ZS10by1zMwkocmV2aXNpb24gMjQ1
MzQyKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvU2hhcmVkL3RyYW5zZmVyLWFyY2hpdmUt
dG8tczMJKHdvcmtpbmcgY29weSkKQEAgLTIsMTAgKzIsMTAgQEAKIGltcG9ydCBhcmdwYXJzZQog
aW1wb3J0IGJvdG8zCiBpbXBvcnQgb3MKLWltcG9ydCBvcy5wYXRoCiBpbXBvcnQgc3lzCiAKLVMz
X0JVQ0tFVCA9ICdhcmNoaXZlcy53ZWJraXQub3JnJworUzNfREVGQVVMVF9CVUNLRVQgPSAnYXJj
aGl2ZXMud2Via2l0Lm9yZycKK1MzX0VXU19CVUNLRVQgPSAnZXdzLWFyY2hpdmVzLndlYmtpdC5v
cmcnCiBTM19NSU5JRklFRF9CVUNLRVQgPSAnbWluaWZpZWQtYXJjaGl2ZXMud2Via2l0Lm9yZycK
IFMzX1JFR0lPTl9QUkVGSVggPSAnaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbScK
IApAQCAtMTMsMjkgKzEzLDQwIEBAIGRlZiB1cGxvYWRUb1MzKGFyY2hpdmVfcGF0aCwgYnVja2V0
LCBpZGUKICAgICBwcmludCAnVHJhbnNmZXJyaW5nIHt9IHRvIFMzLi4uJy5mb3JtYXQoYXJjaGl2
ZV9wYXRoKQogICAgIGtleSA9ICcvJy5qb2luKFtpZGVudGlmaWVyLCByZXZpc2lvbiArICcuemlw
J10pCiAgICAgcHJpbnQgJ1x0UzMgQnVja2V0OiB7fVxuXHRTMyBLZXk6IHt9Jy5mb3JtYXQoYnVj
a2V0LCBrZXkpCisgICAgczMgPSBib3RvMy5jbGllbnQoJ3MzJykKICAgICBzMy51cGxvYWRfZmls
ZShhcmNoaXZlX3BhdGgsIGJ1Y2tldCwga2V5KQogICAgIHByaW50KCdcdFMzIFVSTDoge30ve30v
e30nLmZvcm1hdChTM19SRUdJT05fUFJFRklYLCBidWNrZXQsIGtleSkpCiAKIGRlZiBhcmNoaXZl
RXhpc3RzKGFyY2hpdmUpOgogICAgIGlmIGFyY2hpdmU6CiAgICAgICAgIGlmIG9zLnBhdGguZXhp
c3RzKGFyY2hpdmUpOgotCSAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgICAgIHJldHVybiBU
cnVlCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBwcmludCAnV0FSTklORzogQXJjaGl2ZSBk
b2VzIG5vdCBleGlzdDoge30nLmZvcm1hdChhcmNoaXZlKQogICAgICAgICAgICAgcmV0dXJuIEZh
bHNlCi0JCi1wYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihhZGRfaGVscD1UcnVlKQot
cGFyc2VyLmFkZF9hcmd1bWVudCgnLS1yZXZpc2lvbicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdSZXZpc2lvbiBudW1iZXIgZm9yIHRoZSBidWlsdCBhcmNoaXZlJykKLXBh
cnNlci5hZGRfYXJndW1lbnQoJy0taWRlbnRpZmllcicsIGFjdGlvbj0ic3RvcmUiLCByZXF1aXJl
ZD1UcnVlLCBoZWxwPSdTMyBkZXN0aW5hdGlvbiBpZGVudGlmaWVyLCBpbiB0aGUgZm9ybSBvZiBm
dWxsUGxhdGZvcm0tYXJjaGl0ZWN0dXJlLWNvbmZpZ3VyYXRpb24uIFttYWMtc2llcnJhLXg4Nl82
NC1yZWxlYXNlXScpCi1wYXJzZXIuYWRkX2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0
b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVscD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUu
IFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykKLWFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCi0KLQot
aGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQoc3RyKGFyZ3MuYXJjaGl2ZSkpCi1taW5pZmllZEFy
Y2hpdmUgPSBoZWFkICsgJy9taW5pZmllZC0nICsgdGFpbAotczMgPSBib3RvMy5jbGllbnQoJ3Mz
JykKLQotaWYgYXJjaGl2ZUV4aXN0cyhhcmdzLmFyY2hpdmUpOgotICAgIHVwbG9hZFRvUzMoYXJn
cy5hcmNoaXZlLCBTM19CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwgYXJncy5yZXZpc2lvbikKLWlm
IGFyY2hpdmVFeGlzdHMobWluaWZpZWRBcmNoaXZlKToKLSAgICB1cGxvYWRUb1MzKG1pbmlmaWVk
QXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VULCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNp
b24pClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorCitkZWYgbWFpbigpOgorICAgIHBhcnNl
ciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPVRydWUpCisKKyAgICBncm91cCA9
IHBhcnNlci5hZGRfbXV0dWFsbHlfZXhjbHVzaXZlX2dyb3VwKHJlcXVpcmVkPVRydWUpCisgICAg
Z3JvdXAuYWRkX2FyZ3VtZW50KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9yZSIsIGhlbHA9J1Jl
dmlzaW9uIG51bWJlciBvciBwYXRjaF9pZCBmb3IgdGhlIGJ1aWx0IGFyY2hpdmUnKQorICAgIGdy
b3VwLmFkZF9hcmd1bWVudCgnLS1wYXRjaF9pZCcsIGFjdGlvbj0ic3RvcmUiLCBoZWxwPSdwYXRj
aF9pZCBvZiB0aGUgcGF0Y2gnKQorCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1pZGVudGlm
aWVyJywgYWN0aW9uPSJzdG9yZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1MzIGRlc3RpbmF0aW9u
IGlkZW50aWZpZXIsIGluIHRoZSBmb3JtIG9mIGZ1bGxQbGF0Zm9ybS1hcmNoaXRlY3R1cmUtY29u
ZmlndXJhdGlvbi4gW21hYy1zaWVycmEteDg2XzY0LXJlbGVhc2VdJykKKyAgICBwYXJzZXIuYWRk
X2FyZ3VtZW50KCctLWFyY2hpdmUnLCBhY3Rpb249InN0b3JlIiwgcmVxdWlyZWQ9VHJ1ZSwgaGVs
cD0nUGF0aCB0byB0aGUgZnVsbCBzaXplIGFyY2hpdmUuIFtwYXRoL3RvLzEyMzQ1Ni56aXBdJykK
KyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorCisgICAgcGFyZW50ZGlyLCBmaWxlbmFt
ZSA9IG9zLnBhdGguc3BsaXQoc3RyKGFyZ3MuYXJjaGl2ZSkpCisgICAgbWluaWZpZWRBcmNoaXZl
ID0gb3MucGF0aC5qb2luKHBhcmVudGRpciwgJ21pbmlmaWVkLScgKyBmaWxlbmFtZSkKKworICAg
IFMzX0JVQ0tFVCA9IFMzX0RFRkFVTFRfQlVDS0VUCisgICAgaWYgYXJncy5wYXRjaF9pZDoKKyAg
ICAgICAgUzNfQlVDS0VUID0gUzNfRVdTX0JVQ0tFVAorCisgICAgaWYgYXJjaGl2ZUV4aXN0cyhh
cmdzLmFyY2hpdmUpOgorICAgICAgICB1cGxvYWRUb1MzKGFyZ3MuYXJjaGl2ZSwgUzNfQlVDS0VU
LCBhcmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24gb3IgYXJncy5wYXRjaF9pZCkKKyAgICBp
ZiBub3QgYXJncy5wYXRjaF9pZCBhbmQgYXJjaGl2ZUV4aXN0cyhtaW5pZmllZEFyY2hpdmUpOgor
ICAgICAgICB1cGxvYWRUb1MzKG1pbmlmaWVkQXJjaGl2ZSwgUzNfTUlOSUZJRURfQlVDS0VULCBh
cmdzLmlkZW50aWZpZXIsIGFyZ3MucmV2aXNpb24pCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5f
XyI6CisgICAgbWFpbigpCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJr
aXQub3JnLWNvbmZpZy9zdGVwcy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3Vw
cG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9zdGVwcy5weQkocmV2aXNpb24gMjQ1MzQyKQor
KysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvc3RlcHMu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTg3NCw3ICs4NzQsNyBAQCBjbGFzcyBUcmFuc2ZlclRvUzMo
bWFzdGVyLk1hc3RlclNoZWxsQ29tCiAgICAgbWluaWZpZWRBcmNoaXZlID0gV2l0aFByb3BlcnRp
ZXMoImFyY2hpdmVzLyUoZnVsbFBsYXRmb3JtKXMtJShhcmNoaXRlY3R1cmUpcy0lKGNvbmZpZ3Vy
YXRpb24pcy9taW5pZmllZC0lKGdvdF9yZXZpc2lvbilzLnppcCIpCiAgICAgaWRlbnRpZmllciA9
IFdpdGhQcm9wZXJ0aWVzKCIlKGZ1bGxQbGF0Zm9ybSlzLSUoYXJjaGl0ZWN0dXJlKXMtJShjb25m
aWd1cmF0aW9uKXMiKQogICAgIHJldmlzaW9uID0gV2l0aFByb3BlcnRpZXMoIiUoZ290X3Jldmlz
aW9uKXMiKQotICAgIGNvbW1hbmQgPSBbInB5dGhvbiIsICIuL3RyYW5zZmVyLWFyY2hpdmUtdG8t
czMiLCAiLS1yZXZpc2lvbiIsIHJldmlzaW9uLCAiLS1pZGVudGlmaWVyIiwgaWRlbnRpZmllciwg
Ii0tYXJjaGl2ZSIsIGFyY2hpdmVdCisgICAgY29tbWFuZCA9IFsicHl0aG9uIiwgIi4uL1NoYXJl
ZC90cmFuc2Zlci1hcmNoaXZlLXRvLXMzIiwgIi0tcmV2aXNpb24iLCByZXZpc2lvbiwgIi0taWRl
bnRpZmllciIsIGlkZW50aWZpZXIsICItLWFyY2hpdmUiLCBhcmNoaXZlXQogICAgIGhhbHRPbkZh
aWx1cmUgPSBUcnVlCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgpJbmRleDog
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvdHJhbnNmZXIt
YXJjaGl2ZS10by1zMwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWls
ZC53ZWJraXQub3JnLWNvbmZpZy90cmFuc2Zlci1hcmNoaXZlLXRvLXMzCShyZXZpc2lvbiAyNDUz
NDIpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy90
cmFuc2Zlci1hcmNoaXZlLXRvLXMzCShub25leGlzdGVudCkKQEAgLTEsNDEgKzAsMCBAQAotIyEv
dXNyL2Jpbi9lbnYgcHl0aG9uCi1pbXBvcnQgYXJncGFyc2UKLWltcG9ydCBib3RvMwotaW1wb3J0
IG9zCi1pbXBvcnQgb3MucGF0aAotaW1wb3J0IHN5cwotCi1TM19CVUNLRVQgPSAnYXJjaGl2ZXMu
d2Via2l0Lm9yZycKLVMzX01JTklGSUVEX0JVQ0tFVCA9ICdtaW5pZmllZC1hcmNoaXZlcy53ZWJr
aXQub3JnJwotUzNfUkVHSU9OX1BSRUZJWCA9ICdodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25h
d3MuY29tJwotCi1kZWYgdXBsb2FkVG9TMyhhcmNoaXZlX3BhdGgsIGJ1Y2tldCwgaWRlbnRpZmll
ciwgcmV2aXNpb24pOgotICAgIHByaW50ICdUcmFuc2ZlcnJpbmcge30gdG8gUzMuLi4nLmZvcm1h
dChhcmNoaXZlX3BhdGgpCi0gICAga2V5ID0gJy8nLmpvaW4oW2lkZW50aWZpZXIsIHJldmlzaW9u
ICsgJy56aXAnXSkKLSAgICBwcmludCAnXHRTMyBCdWNrZXQ6IHt9XG5cdFMzIEtleToge30nLmZv
cm1hdChidWNrZXQsIGtleSkKLSAgICBzMy51cGxvYWRfZmlsZShhcmNoaXZlX3BhdGgsIGJ1Y2tl
dCwga2V5KQotICAgIHByaW50KCdcdFMzIFVSTDoge30ve30ve30nLmZvcm1hdChTM19SRUdJT05f
UFJFRklYLCBidWNrZXQsIGtleSkpCi0KLWRlZiBhcmNoaXZlRXhpc3RzKGFyY2hpdmUpOgotICAg
IGlmIGFyY2hpdmU6Ci0gICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGFyY2hpdmUpOgotCSAgICAg
ICAgcmV0dXJuIFRydWUKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHByaW50ICdXQVJOSU5H
OiBBcmNoaXZlIGRvZXMgbm90IGV4aXN0OiB7fScuZm9ybWF0KGFyY2hpdmUpCi0gICAgICAgICAg
ICByZXR1cm4gRmFsc2UKLQkKLXBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9o
ZWxwPVRydWUpCi1wYXJzZXIuYWRkX2FyZ3VtZW50KCctLXJldmlzaW9uJywgYWN0aW9uPSJzdG9y
ZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1JldmlzaW9uIG51bWJlciBmb3IgdGhlIGJ1aWx0IGFy
Y2hpdmUnKQotcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1pZGVudGlmaWVyJywgYWN0aW9uPSJzdG9y
ZSIsIHJlcXVpcmVkPVRydWUsIGhlbHA9J1MzIGRlc3RpbmF0aW9uIGlkZW50aWZpZXIsIGluIHRo
ZSBmb3JtIG9mIGZ1bGxQbGF0Zm9ybS1hcmNoaXRlY3R1cmUtY29uZmlndXJhdGlvbi4gW21hYy1z
aWVycmEteDg2XzY0LXJlbGVhc2VdJykKLXBhcnNlci5hZGRfYXJndW1lbnQoJy0tYXJjaGl2ZScs
IGFjdGlvbj0ic3RvcmUiLCByZXF1aXJlZD1UcnVlLCBoZWxwPSdQYXRoIHRvIHRoZSBmdWxsIHNp
emUgYXJjaGl2ZS4gW3BhdGgvdG8vMTIzNDU2LnppcF0nKQotYXJncyA9IHBhcnNlci5wYXJzZV9h
cmdzKCkKLQotCi1oZWFkLCB0YWlsID0gb3MucGF0aC5zcGxpdChzdHIoYXJncy5hcmNoaXZlKSkK
LW1pbmlmaWVkQXJjaGl2ZSA9IGhlYWQgKyAnL21pbmlmaWVkLScgKyB0YWlsCi1zMyA9IGJvdG8z
LmNsaWVudCgnczMnKQotCi1pZiBhcmNoaXZlRXhpc3RzKGFyZ3MuYXJjaGl2ZSk6Ci0gICAgdXBs
b2FkVG9TMyhhcmdzLmFyY2hpdmUsIFMzX0JVQ0tFVCwgYXJncy5pZGVudGlmaWVyLCBhcmdzLnJl
dmlzaW9uKQotaWYgYXJjaGl2ZUV4aXN0cyhtaW5pZmllZEFyY2hpdmUpOgotICAgIHVwbG9hZFRv
UzMobWluaWZpZWRBcmNoaXZlLCBTM19NSU5JRklFRF9CVUNLRVQsIGFyZ3MuaWRlbnRpZmllciwg
YXJncy5yZXZpc2lvbikKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>
<flag name="review"
          id="386007"
          type_id="1"
          status="+"
          setter="jbedard"
    />
          </attachment>
      

    </bug>

</bugzilla>