<?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>202639</bug_id>
          
          <creation_ts>2019-10-07 09:13:08 -0700</creation_ts>
          <short_desc>results.webkit.org: Start reporting results</short_desc>
          <delta_ts>2019-11-04 17:04:17 -0800</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>WebKit Nightly Build</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=202928</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=203829</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="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>dean_johnson</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jlewis3</cc>
    
    <cc>lingho</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1577370</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-07 09:13:08 -0700</bug_when>
    <thetext>We should start reporting test results to the new results.webkit.org.

To do this, we have to pass an API key through from the master to each test run which uploads results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577380</commentid>
    <comment_count>1</comment_count>
      <attachid>380335</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-07 09:58:24 -0700</bug_when>
    <thetext>Created attachment 380335
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577423</commentid>
    <comment_count>2</comment_count>
      <attachid>380335</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2019-10-07 12:04:29 -0700</bug_when>
    <thetext>Comment on attachment 380335
Patch

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

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/loadConfig.py:52
&gt; +    results_server_api_key = passwords.get(&apos;RESULTS_SERVER_API_KEY&apos;)

We usually use lower case for config json keys?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577447</commentid>
    <comment_count>3</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-07 13:07:35 -0700</bug_when>
    <thetext>Committed r250784: &lt;https://trac.webkit.org/changeset/250784&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577448</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-10-07 13:08:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/56047710&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577885</commentid>
    <comment_count>5</comment_count>
    <who name="Matt Lewis">jlewis3</who>
    <bug_when>2019-10-08 12:38:49 -0700</bug_when>
    <thetext>Reverted r250784 for reason:

Broke running layout tests.

Committed r250851: &lt;https://trac.webkit.org/changeset/250851&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1577886</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-08 12:42:20 -0700</bug_when>
    <thetext>(In reply to Matt Lewis from comment #5)
&gt; Reverted r250784 for reason:
&gt; 
&gt; Broke running layout tests.
&gt; 
&gt; Committed r250851: &lt;https://trac.webkit.org/changeset/250851&gt;

This was at my request. Don&apos;t want to be rushed when root-causing this failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578029</commentid>
    <comment_count>7</comment_count>
      <attachid>380483</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-08 17:25:33 -0700</bug_when>
    <thetext>Created attachment 380483
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578255</commentid>
    <comment_count>8</comment_count>
      <attachid>380536</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-09 09:03:43 -0700</bug_when>
    <thetext>Created attachment 380536
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578368</commentid>
    <comment_count>9</comment_count>
      <attachid>380561</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-09 13:33:37 -0700</bug_when>
    <thetext>Created attachment 380561
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578378</commentid>
    <comment_count>10</comment_count>
      <attachid>380561</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2019-10-09 14:09:24 -0700</bug_when>
    <thetext>Comment on attachment 380561
Patch

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

&gt; Tools/Scripts/webkitpy/results/upload_unittest.py:129
&gt; +        with mock.patch(&apos;requests.post&apos;, new=lambda url, headers={}, data={}: self.MockResponse()):

Is this syntax valid? `data={}: self.MockResponse()`?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578379</commentid>
    <comment_count>11</comment_count>
      <attachid>380561</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2019-10-09 14:10:55 -0700</bug_when>
    <thetext>Comment on attachment 380561
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/results/upload_unittest.py:129
&gt;&gt; +        with mock.patch(&apos;requests.post&apos;, new=lambda url, headers={}, data={}: self.MockResponse()):
&gt; 
&gt; Is this syntax valid? `data={}: self.MockResponse()`?

Never mind. Missed `lambda`</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1578639</commentid>
    <comment_count>12</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-10-10 07:47:15 -0700</bug_when>
    <thetext>Committed r250966: &lt;https://trac.webkit.org/changeset/250966&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380335</attachid>
            <date>2019-10-07 09:58:24 -0700</date>
            <delta_ts>2019-10-08 17:25:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202639-20191007095823.patch</filename>
            <type>text/plain</type>
            <size>9344</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1MDc3NCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDE5LTEwLTA3ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN0YXJ0IHJlcG9ydGluZyByZXN1bHRz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI2MzkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHk6CisgICAg
ICAgIChsb2FkQnVpbGRlckNvbmZpZyk6IExvYWQgQVBJIGtleSBmb3IgcmVzdWx0cy53ZWJraXQu
b3JnLgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L21ha2VfcGFzc3dvcmRzX2pzb24ucHk6CisgICAgICAgIChjcmVhdGVfbW9ja19zbGF2ZV9wYXNz
d29yZHNfZGljdCk6IEFkZCBtb2NrIGZvciBBUEkga2V5LgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoUnVuV2Vi
S2l0VGVzdHMpOiBTdGFydCByZXBvcnRpbmcgdG8gcmVzdWx0cy53ZWJraXQub3JnLgorICAgICAg
ICAoUnVuV2ViS2l0VGVzdHMuX19pbml0X18pOiBEbyBub3QgcHJpbnQgdGhlIGVudmlyb25tZW50
IHRvIGhpZGUgdGhlIEFQSSBrZXkuCisgICAgICAgIChSdW5XZWJLaXRUZXN0cy5zdGFydCk6IEFk
ZCB0aGUgQVBJIGtleSB0byB0aGUgZW52aXJvbm1lbnQuCisgICAgICAgIChSdW5BUElUZXN0cyk6
IFN0YXJ0IHJlcG9ydGluZyB0byByZXN1bHRzLndlYmtpdC5vcmcuCisgICAgICAgIChSdW5BUElU
ZXN0cy5fX2luaXRfXyk6IERvIG5vdCBwcmludCB0aGUgZW52aXJvbm1lbnQgdG8gaGlkZSB0aGUg
QVBJIGtleS4KKyAgICAgICAgKFJ1bkFQSVRlc3RzLnN0YXJ0KTogQWRkIHRoZSBBUEkga2V5IHRv
IHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzKTogU3RhcnQgcmVwb3J0
aW5nIHRvIHJlc3VsdHMud2Via2l0Lm9yZy4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzLl9faW5p
dF9fKTogRG8gbm90IHByaW50IHRoZSBlbnZpcm9ubWVudCB0byBoaWRlIHRoZSBBUEkga2V5Lgor
ICAgICAgICAoUnVuUHl0aG9uVGVzdHMuc3RhcnQpOiBBZGQgdGhlIEFQSSBrZXkgdG8gdGhlIGVu
dmlyb25tZW50LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQucHk6
CisgICAgICAgIChVcGxvYWQpOgorICAgICAgICAoVXBsb2FkLnVwbG9hZCk6IEFkZCBBUElfS0VZ
LCBpZiBpdCBleGlzdHMsIHRvIHRoZSByZXF1ZXN0LgorICAgICAgICAoVXBsb2FkLnVwbG9hZF9h
cmNoaXZlKTogRGl0dG8uCisKIDIwMTktMTAtMDcgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBw
bGUuY29tPgogCiAgICAgICAgIFtpT1NdIFVubXV0aW5nIGNhcHR1cmUgb2YgYSBwYWdlIGlzIG5v
dCB3b3JraW5nCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9sb2FkQ29uZmlnLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHkJKHJldmlzaW9uIDI1MDc3
NCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xv
YWRDb25maWcucHkJKHdvcmtpbmcgY29weSkKQEAgLTQ5LDggKzQ5LDExIEBAIGRlZiBsb2FkQnVp
bGRlckNvbmZpZyhjLCB0ZXN0X21vZGVfaXNfZW4KICAgICAgICAgcGFzc3dvcmRzID0gbWFrZV9w
YXNzd29yZHNfanNvbi5jcmVhdGVfbW9ja19zbGF2ZV9wYXNzd29yZHNfZGljdCgpCiAgICAgZWxz
ZToKICAgICAgICAgcGFzc3dvcmRzID0ganNvbi5sb2FkKG9wZW4oJ3Bhc3N3b3Jkcy5qc29uJykp
Ci0gICAgY29uZmlnID0ganNvbi5sb2FkKG9wZW4oJ2NvbmZpZy5qc29uJykpCisgICAgcmVzdWx0
c19zZXJ2ZXJfYXBpX2tleSA9IHBhc3N3b3Jkcy5nZXQoJ1JFU1VMVFNfU0VSVkVSX0FQSV9LRVkn
KQorICAgIGlmIHJlc3VsdHNfc2VydmVyX2FwaV9rZXk6CisgICAgICAgIG9zLmVudmlyb25bJ1JF
U1VMVFNfU0VSVkVSX0FQSV9LRVknXSA9IHJlc3VsdHNfc2VydmVyX2FwaV9rZXkKIAorICAgIGNv
bmZpZyA9IGpzb24ubG9hZChvcGVuKCdjb25maWcuanNvbicpKQogICAgIGNbJ3NsYXZlcyddID0g
W0J1aWxkU2xhdmUoc2xhdmVbJ25hbWUnXSwgcGFzc3dvcmRzW3NsYXZlWyduYW1lJ11dLCBtYXhf
YnVpbGRzPTEpIGZvciBzbGF2ZSBpbiBjb25maWdbJ3NsYXZlcyddXQogCiAgICAgY1snc2NoZWR1
bGVycyddID0gW10KSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5v
cmctY29uZmlnL21ha2VfcGFzc3dvcmRzX2pzb24ucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZV9wYXNzd29yZHNfanNv
bi5weQkocmV2aXNpb24gMjUwNzc0KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQu
d2Via2l0Lm9yZy1jb25maWcvbWFrZV9wYXNzd29yZHNfanNvbi5weQkod29ya2luZyBjb3B5KQpA
QCAtMzEsNyArMzEsOSBAQCBpbXBvcnQgbWQ1CiBkZWYgY3JlYXRlX21vY2tfc2xhdmVfcGFzc3dv
cmRzX2RpY3QoKToKICAgICB3aXRoIG9wZW4oJ2NvbmZpZy5qc29uJywgJ3InKSBhcyBjb25maWdf
anNvbjoKICAgICAgICAgY29uZmlnX2RpY3QgPSBqc29uLmxvYWQoY29uZmlnX2pzb24pCi0gICAg
cmV0dXJuIGRpY3QoWyhzbGF2ZVsnbmFtZSddLCAnMTIzNCcpIGZvciBzbGF2ZSBpbiBjb25maWdf
ZGljdFsnc2xhdmVzJ11dKQorICAgIHJlc3VsdCA9IGRpY3QoWyhzbGF2ZVsnbmFtZSddLCAnMTIz
NCcpIGZvciBzbGF2ZSBpbiBjb25maWdfZGljdFsnc2xhdmVzJ11dKQorICAgIHJlc3VsdFsnUkVT
VUxUU19TRVJWRVJfQVBJX0tFWSddID0gJ2FwaS1rZXknCisgICAgcmV0dXJuIHJlc3VsdAogCiBp
ZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHdpdGggb3BlbigncGFzc3dvcmRzLmpzb24n
LCAndycpIGFzIHBhc3N3b3Jkc19maWxlOgpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQv
YnVpbGQud2Via2l0Lm9yZy1jb25maWcvc3RlcHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvc3RlcHMucHkJKHJldmlzaW9u
IDI1MDc3NCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29u
ZmlnL3N0ZXBzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw4IEBAIGltcG9ydCB1cmxs
aWIKIEFQUExFX1dFQktJVF9BV1NfUFJPWFkgPSAiaHR0cDovL3Byb3h5MDEud2Via2l0Lm9yZzoz
MTI4IgogUzNVUkwgPSAiaHR0cHM6Ly9zMy11cy13ZXN0LTIuYW1hem9uYXdzLmNvbS8iCiBXaXRo
UHJvcGVydGllcyA9IHByb3BlcnRpZXMuV2l0aFByb3BlcnRpZXMKK1JFU1VMVFNfV0VCS0lUID0g
J2h0dHBzOi8vcmVzdWx0cy53ZWJraXQub3JnJworUkVTVUxUU19TRVJWRVJfQVBJX0tFWSA9ICdS
RVNVTFRTX1NFUlZFUl9BUElfS0VZJwogCiAKIGNsYXNzIFRlc3RXaXRoRmFpbHVyZUNvdW50KHNo
ZWxsLlRlc3QpOgpAQCAtNDE2LDEzICs0MTgsMjIgQEAgY2xhc3MgUnVuV2ViS2l0VGVzdHMoc2hl
bGwuVGVzdCk6CiAgICAgICAgICAgICAgICAiLS1jbG9iYmVyLW9sZC1yZXN1bHRzIiwKICAgICAg
ICAgICAgICAgICItLWJ1aWxkZXItbmFtZSIsIFdpdGhQcm9wZXJ0aWVzKCIlKGJ1aWxkZXJuYW1l
KXMiKSwKICAgICAgICAgICAgICAgICItLWJ1aWxkLW51bWJlciIsIFdpdGhQcm9wZXJ0aWVzKCIl
KGJ1aWxkbnVtYmVyKXMiKSwKKyAgICAgICAgICAgICAgICItLWJ1aWxkYm90LXdvcmtlciIsIFdp
dGhQcm9wZXJ0aWVzKCIlKHNsYXZlbmFtZSlzIiksCiAgICAgICAgICAgICAgICAiLS1tYXN0ZXIt
bmFtZSIsICJ3ZWJraXQub3JnIiwKKyAgICAgICAgICAgICAgICItLWJ1aWxkYm90LW1hc3RlciIs
ICJidWlsZC53ZWJraXQub3JnIiwKKyAgICAgICAgICAgICAgICItLXJlcG9ydCIsIFJFU1VMVFNf
V0VCS0lULAogICAgICAgICAgICAgICAgIi0tdGVzdC1yZXN1bHRzLXNlcnZlciIsICJ3ZWJraXQt
dGVzdC1yZXN1bHRzLndlYmtpdC5vcmciLAogICAgICAgICAgICAgICAgIi0tZXhpdC1hZnRlci1u
LWNyYXNoZXMtb3ItdGltZW91dHMiLCAiNTAiLAogICAgICAgICAgICAgICAgIi0tZXhpdC1hZnRl
ci1uLWZhaWx1cmVzIiwgIjUwMCIsCiAgICAgICAgICAgICAgICBXaXRoUHJvcGVydGllcygiLS0l
KGNvbmZpZ3VyYXRpb24pcyIpXQogCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3
YXJncyk6CisgICAgICAgIGt3YXJnc1snbG9nRW52aXJvbiddID0gRmFsc2UKKyAgICAgICAgc2hl
bGwuVGVzdC5fX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisKICAgICBkZWYgc3RhcnQo
c2VsZik6CisgICAgICAgIHNlbGYuc2xhdmVFbnZpcm9ubWVudFtSRVNVTFRTX1NFUlZFUl9BUElf
S0VZXSA9IG9zLmdldGVudihSRVNVTFRTX1NFUlZFUl9BUElfS0VZKQorCiAgICAgICAgIHBsYXRm
b3JtID0gc2VsZi5nZXRQcm9wZXJ0eSgncGxhdGZvcm0nKQogICAgICAgICBhcHBlbmRDdXN0b21U
ZXN0aW5nRmxhZ3Moc2VsZiwgcGxhdGZvcm0sIHNlbGYuZ2V0UHJvcGVydHkoJ2RldmljZV9tb2Rl
bCcpKQogICAgICAgICBhZGRpdGlvbmFsQXJndW1lbnRzID0gc2VsZi5nZXRQcm9wZXJ0eSgnYWRk
aXRpb25hbEFyZ3VtZW50cycpCkBAIC01MzAsMTAgKzU0MSwyNiBAQCBjbGFzcyBSdW5BUElUZXN0
cyhUZXN0V2l0aEZhaWx1cmVDb3VudCk6CiAgICAgbmFtZSA9ICJydW4tYXBpLXRlc3RzIgogICAg
IGRlc2NyaXB0aW9uID0gWyJhcGkgdGVzdHMgcnVubmluZyJdCiAgICAgZGVzY3JpcHRpb25Eb25l
ID0gWyJhcGktdGVzdHMiXQotICAgIGNvbW1hbmQgPSBbInB5dGhvbiIsICIuL1Rvb2xzL1Njcmlw
dHMvcnVuLWFwaS10ZXN0cyIsICItLW5vLWJ1aWxkIiwgV2l0aFByb3BlcnRpZXMoIi0tJShjb25m
aWd1cmF0aW9uKXMiKSwgIi0tdmVyYm9zZSJdCisgICAgY29tbWFuZCA9IFsKKyAgICAgICAgInB5
dGhvbiIsCisgICAgICAgICIuL1Rvb2xzL1NjcmlwdHMvcnVuLWFwaS10ZXN0cyIsCisgICAgICAg
ICItLW5vLWJ1aWxkIiwKKyAgICAgICAgV2l0aFByb3BlcnRpZXMoIi0tJShjb25maWd1cmF0aW9u
KXMiKSwKKyAgICAgICAgIi0tdmVyYm9zZSIsCisgICAgICAgICItLWJ1aWxkYm90LW1hc3RlciIs
ICJidWlsZC53ZWJraXQub3JnIiwKKyAgICAgICAgIi0tYnVpbGRlci1uYW1lIiwgV2l0aFByb3Bl
cnRpZXMoIiUoYnVpbGRlcm5hbWUpcyIpLAorICAgICAgICAiLS1idWlsZC1udW1iZXIiLCBXaXRo
UHJvcGVydGllcygiJShidWlsZG51bWJlcilzIiksCisgICAgICAgICItLWJ1aWxkYm90LXdvcmtl
ciIsIFdpdGhQcm9wZXJ0aWVzKCIlKHNsYXZlbmFtZSlzIiksCisgICAgICAgICItLXJlcG9ydCIs
IFJFU1VMVFNfV0VCS0lULAorICAgIF0KICAgICBmYWlsZWRUZXN0c0Zvcm1hdFN0cmluZyA9ICIl
ZCBhcGkgdGVzdCVzIGZhaWxlZCBvciB0aW1lZCBvdXQiCiAKKyAgICBkZWYgX19pbml0X18oc2Vs
ZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAga3dhcmdzWydsb2dFbnZpcm9uJ10gPSBGYWxz
ZQorICAgICAgICBUZXN0V2l0aEZhaWx1cmVDb3VudC5fX2luaXRfXyhzZWxmLCAqYXJncywgKipr
d2FyZ3MpCisKICAgICBkZWYgc3RhcnQoc2VsZik6CisgICAgICAgIHNlbGYuc2xhdmVFbnZpcm9u
bWVudFtSRVNVTFRTX1NFUlZFUl9BUElfS0VZXSA9IG9zLmdldGVudihSRVNVTFRTX1NFUlZFUl9B
UElfS0VZKQogICAgICAgICBhcHBlbmRDdXN0b21UZXN0aW5nRmxhZ3Moc2VsZiwgc2VsZi5nZXRQ
cm9wZXJ0eSgncGxhdGZvcm0nKSwgc2VsZi5nZXRQcm9wZXJ0eSgnZGV2aWNlX21vZGVsJykpCiAg
ICAgICAgIHJldHVybiBzaGVsbC5UZXN0LnN0YXJ0KHNlbGYpCiAKQEAgLTU1MCwxMCArNTc3LDI2
IEBAIGNsYXNzIFJ1blB5dGhvblRlc3RzKFRlc3RXaXRoRmFpbHVyZUNvdW4KICAgICBuYW1lID0g
IndlYmtpdHB5LXRlc3QiCiAgICAgZGVzY3JpcHRpb24gPSBbInB5dGhvbi10ZXN0cyBydW5uaW5n
Il0KICAgICBkZXNjcmlwdGlvbkRvbmUgPSBbInB5dGhvbi10ZXN0cyJdCi0gICAgY29tbWFuZCA9
IFsicHl0aG9uIiwgIi4vVG9vbHMvU2NyaXB0cy90ZXN0LXdlYmtpdHB5IiwgIi0tdmVyYm9zZSIs
IFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCisgICAgY29tbWFuZCA9IFsK
KyAgICAgICAgInB5dGhvbiIsCisgICAgICAgICIuL1Rvb2xzL1NjcmlwdHMvdGVzdC13ZWJraXRw
eSIsCisgICAgICAgICItLXZlcmJvc2UiLAorICAgICAgICBXaXRoUHJvcGVydGllcygiLS0lKGNv
bmZpZ3VyYXRpb24pcyIpLAorICAgICAgICAiLS1idWlsZGJvdC1tYXN0ZXIiLCAiYnVpbGQud2Vi
a2l0Lm9yZyIsCisgICAgICAgICItLWJ1aWxkZXItbmFtZSIsIFdpdGhQcm9wZXJ0aWVzKCIlKGJ1
aWxkZXJuYW1lKXMiKSwKKyAgICAgICAgIi0tYnVpbGQtbnVtYmVyIiwgV2l0aFByb3BlcnRpZXMo
IiUoYnVpbGRudW1iZXIpcyIpLAorICAgICAgICAiLS1idWlsZGJvdC13b3JrZXIiLCBXaXRoUHJv
cGVydGllcygiJShzbGF2ZW5hbWUpcyIpLAorICAgICAgICAiLS1yZXBvcnQiLCBSRVNVTFRTX1dF
QktJVCwKKyAgICBdCiAgICAgZmFpbGVkVGVzdHNGb3JtYXRTdHJpbmcgPSAiJWQgcHl0aG9uIHRl
c3QlcyBmYWlsZWQiCiAKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToK
KyAgICAgICAga3dhcmdzWydsb2dFbnZpcm9uJ10gPSBGYWxzZQorICAgICAgICBUZXN0V2l0aEZh
aWx1cmVDb3VudC5fX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisKICAgICBkZWYgc3Rh
cnQoc2VsZik6CisgICAgICAgIHNlbGYuc2xhdmVFbnZpcm9ubWVudFtSRVNVTFRTX1NFUlZFUl9B
UElfS0VZXSA9IG9zLmdldGVudihSRVNVTFRTX1NFUlZFUl9BUElfS0VZKQorCiAgICAgICAgIHBs
YXRmb3JtID0gc2VsZi5nZXRQcm9wZXJ0eSgncGxhdGZvcm0nKQogICAgICAgICAjIFB5dGhvbiB0
ZXN0cyBhcmUgZmxha3kgb24gdGhlIEdUSyBidWlsZGVycywgcnVubmluZyB0aGVtIHNlcmlhbGx5
CiAgICAgICAgICMgaGVscHMgYW5kIGRvZXMgbm90IHNpZ25pZmljYW50bHkgcHJvbG9uZyB0aGUg
Y3ljbGUgdGltZS4KSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQu
cHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3VwbG9hZC5w
eQkocmV2aXNpb24gMjUwNzc0KQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3Vw
bG9hZC5weQkod29ya2luZyBjb3B5KQpAQCAtMjIsNiArMjIsNyBAQAogCiBpbXBvcnQgd2Via2l0
cHkudGhpcmRwYXJ0eS5hdXRvaW5zdGFsbGVkLnJlcXVlc3RzCiAKK2ltcG9ydCBvcwogaW1wb3J0
IGpzb24KIGltcG9ydCByZXF1ZXN0cwogaW1wb3J0IHN5cwpAQCAtMzEsNiArMzIsNyBAQCBpbXBv
cnQgcGxhdGZvcm0gYXMgaG9zdF9wbGF0Zm9ybQogCiAKIGNsYXNzIFVwbG9hZChvYmplY3QpOgor
ICAgIEFQSV9LRVkgPSBvcy5nZXRlbnYoJ1JFU1VMVFNfU0VSVkVSX0FQSV9LRVknKQogICAgIFVQ
TE9BRF9FTkRQT0lOVCA9ICcvYXBpL3VwbG9hZCcKICAgICBBUkNISVZFX1VQTE9BRF9FTkRQT0lO
VCA9ICcvYXBpL3VwbG9hZC9hcmNoaXZlJwogICAgIEJVSUxEQk9UX0RFVEFJTFMgPSBbJ2J1aWxk
Ym90LW1hc3RlcicsICdidWlsZGVyLW5hbWUnLCAnYnVpbGQtbnVtYmVyJywgJ2J1aWxkYm90LXdv
cmtlciddCkBAIC0xNjksNyArMTcxLDEwIEBAIGNsYXNzIFVwbG9hZChvYmplY3QpOgogCiAgICAg
ZGVmIHVwbG9hZChzZWxmLCBob3N0bmFtZSwgbG9nX2xpbmVfZnVuYz1sYW1iZGEgdmFsOiBzeXMu
c3Rkb3V0LndyaXRlKHZhbCArICdcbicpKToKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgcmVz
cG9uc2UgPSByZXF1ZXN0cy5wb3N0KCd7fXt9Jy5mb3JtYXQoaG9zdG5hbWUsIHNlbGYuVVBMT0FE
X0VORFBPSU5UKSwgZGF0YT1qc29uLmR1bXBzKHNlbGYsIGNscz1VcGxvYWQuRW5jb2RlcikpCisg
ICAgICAgICAgICBkYXRhID0gVXBsb2FkLkVuY29kZXIoKS5kZWZhdWx0KHNlbGYpCisgICAgICAg
ICAgICBpZiBzZWxmLkFQSV9LRVk6CisgICAgICAgICAgICAgICAgZGF0YVsnYXBpX2tleSddID0g
c2VsZi5BUElfS0VZCisgICAgICAgICAgICByZXNwb25zZSA9IHJlcXVlc3RzLnBvc3QoJ3t9e30n
LmZvcm1hdChob3N0bmFtZSwgc2VsZi5VUExPQURfRU5EUE9JTlQpLCBkYXRhPWpzb24uZHVtcHMo
ZGF0YSkpCiAgICAgICAgIGV4Y2VwdCByZXF1ZXN0cy5leGNlcHRpb25zLkNvbm5lY3Rpb25FcnJv
cjoKICAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogNCArICdGYWlsZWQgdG8gdXBsb2Fk
IHRvIHt9LCByZXN1bHRzIHNlcnZlciBub3Qgb25saW5lJy5mb3JtYXQoaG9zdG5hbWUpKQogICAg
ICAgICAgICAgcmV0dXJuIEZhbHNlCkBAIC0xOTUsNiArMjAwLDggQEAgY2xhc3MgVXBsb2FkKG9i
amVjdCk6CiAgICAgICAgICAgICApCiAgICAgICAgICAgICBpZiBzZWxmLnRpbWVzdGFtcDoKICAg
ICAgICAgICAgICAgICBtZXRhX2RhdGFbJ3RpbWVzdGFtcCddID0gc2VsZi50aW1lc3RhbXAKKyAg
ICAgICAgICAgIGlmIHNlbGYuQVBJX0tFWToKKyAgICAgICAgICAgICAgICBtZXRhX2RhdGFbJ2Fw
aV9rZXknXSA9IHNlbGYuQVBJX0tFWQogICAgICAgICAgICAgcmVzcG9uc2UgPSByZXF1ZXN0cy5w
b3N0KAogICAgICAgICAgICAgICAgICd7fXt9Jy5mb3JtYXQoaG9zdG5hbWUsIHNlbGYuQVJDSElW
RV9VUExPQURfRU5EUE9JTlQpLAogICAgICAgICAgICAgICAgIGRhdGE9bWV0YV9kYXRhLAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380483</attachid>
            <date>2019-10-08 17:25:33 -0700</date>
            <delta_ts>2019-10-09 09:03:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202639-20191008172533.patch</filename>
            <type>text/plain</type>
            <size>13487</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1MDg3NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDE5LTEwLTA4ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN0YXJ0IHJlcG9ydGluZyByZXN1bHRz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI2MzkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHk6CisgICAg
ICAgIChsb2FkQnVpbGRlckNvbmZpZyk6IExvYWQgQVBJIGtleSBmb3IgcmVzdWx0cy53ZWJraXQu
b3JnLgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L21ha2VfcGFzc3dvcmRzX2pzb24ucHk6CisgICAgICAgIChjcmVhdGVfbW9ja19zbGF2ZV9wYXNz
d29yZHNfZGljdCk6IEFkZCBtb2NrIGZvciBBUEkga2V5LgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoUnVuV2Vi
S2l0VGVzdHMpOiBTdGFydCByZXBvcnRpbmcgdG8gcmVzdWx0cy53ZWJraXQub3JnLgorICAgICAg
ICAoUnVuV2ViS2l0VGVzdHMuX19pbml0X18pOiBEbyBub3QgcHJpbnQgdGhlIGVudmlyb25tZW50
IHRvIGhpZGUgdGhlIEFQSSBrZXkuCisgICAgICAgIChSdW5XZWJLaXRUZXN0cy5zdGFydCk6IEFk
ZCB0aGUgQVBJIGtleSB0byB0aGUgZW52aXJvbm1lbnQuCisgICAgICAgIChSdW5BUElUZXN0cyk6
IFN0YXJ0IHJlcG9ydGluZyB0byByZXN1bHRzLndlYmtpdC5vcmcuCisgICAgICAgIChSdW5BUElU
ZXN0cy5fX2luaXRfXyk6IERvIG5vdCBwcmludCB0aGUgZW52aXJvbm1lbnQgdG8gaGlkZSB0aGUg
QVBJIGtleS4KKyAgICAgICAgKFJ1bkFQSVRlc3RzLnN0YXJ0KTogQWRkIHRoZSBBUEkga2V5IHRv
IHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzKTogU3RhcnQgcmVwb3J0
aW5nIHRvIHJlc3VsdHMud2Via2l0Lm9yZy4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzLl9faW5p
dF9fKTogRG8gbm90IHByaW50IHRoZSBlbnZpcm9ubWVudCB0byBoaWRlIHRoZSBBUEkga2V5Lgor
ICAgICAgICAoUnVuUHl0aG9uVGVzdHMuc3RhcnQpOiBBZGQgdGhlIEFQSSBrZXkgdG8gdGhlIGVu
dmlyb25tZW50LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQucHk6
CisgICAgICAgIChVcGxvYWQpOgorICAgICAgICAoVXBsb2FkLnVwbG9hZCk6IEFkZCBBUElfS0VZ
LCBpZiBpdCBleGlzdHMsIHRvIHRoZSByZXF1ZXN0LgorICAgICAgICAoVXBsb2FkLnVwbG9hZF9h
cmNoaXZlKTogRGl0dG8uCisKIDIwMTktMTAtMDggIEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRA
YXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIyNTAzNzUpOiBbb2xkIEVXU10gSlND
IEVXUyBpcyBhbHdheXMgbWFya2luZyBQYXRjaGVzIGFzIHN1Y2Nlc3MKSW5kZXg6IFRvb2xzL0J1
aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvbG9hZENvbmZpZy5weQkocmV2aXNpb24gMjUwODc3KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbG9hZENvbmZpZy5weQkod29ya2luZyBjb3B5
KQpAQCAtNDksOCArNDksMTEgQEAgZGVmIGxvYWRCdWlsZGVyQ29uZmlnKGMsIHRlc3RfbW9kZV9p
c19lbgogICAgICAgICBwYXNzd29yZHMgPSBtYWtlX3Bhc3N3b3Jkc19qc29uLmNyZWF0ZV9tb2Nr
X3NsYXZlX3Bhc3N3b3Jkc19kaWN0KCkKICAgICBlbHNlOgogICAgICAgICBwYXNzd29yZHMgPSBq
c29uLmxvYWQob3BlbigncGFzc3dvcmRzLmpzb24nKSkKLSAgICBjb25maWcgPSBqc29uLmxvYWQo
b3BlbignY29uZmlnLmpzb24nKSkKKyAgICByZXN1bHRzX3NlcnZlcl9hcGlfa2V5ID0gcGFzc3dv
cmRzLmdldCgnUkVTVUxUU19TRVJWRVJfQVBJX0tFWScpCisgICAgaWYgcmVzdWx0c19zZXJ2ZXJf
YXBpX2tleToKKyAgICAgICAgb3MuZW52aXJvblsnUkVTVUxUU19TRVJWRVJfQVBJX0tFWSddID0g
cmVzdWx0c19zZXJ2ZXJfYXBpX2tleQogCisgICAgY29uZmlnID0ganNvbi5sb2FkKG9wZW4oJ2Nv
bmZpZy5qc29uJykpCiAgICAgY1snc2xhdmVzJ10gPSBbQnVpbGRTbGF2ZShzbGF2ZVsnbmFtZSdd
LCBwYXNzd29yZHNbc2xhdmVbJ25hbWUnXV0sIG1heF9idWlsZHM9MSkgZm9yIHNsYXZlIGluIGNv
bmZpZ1snc2xhdmVzJ11dCiAKICAgICBjWydzY2hlZHVsZXJzJ10gPSBbXQpJbmRleDogVG9vbHMv
QnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZV9wYXNzd29yZHNf
anNvbi5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJr
aXQub3JnLWNvbmZpZy9tYWtlX3Bhc3N3b3Jkc19qc29uLnB5CShyZXZpc2lvbiAyNTA4NzcpCisr
KyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYWtlX3Bh
c3N3b3Jkc19qc29uLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zMSw3ICszMSw5IEBAIGltcG9ydCBt
ZDUKIGRlZiBjcmVhdGVfbW9ja19zbGF2ZV9wYXNzd29yZHNfZGljdCgpOgogICAgIHdpdGggb3Bl
bignY29uZmlnLmpzb24nLCAncicpIGFzIGNvbmZpZ19qc29uOgogICAgICAgICBjb25maWdfZGlj
dCA9IGpzb24ubG9hZChjb25maWdfanNvbikKLSAgICByZXR1cm4gZGljdChbKHNsYXZlWyduYW1l
J10sICcxMjM0JykgZm9yIHNsYXZlIGluIGNvbmZpZ19kaWN0WydzbGF2ZXMnXV0pCisgICAgcmVz
dWx0ID0gZGljdChbKHNsYXZlWyduYW1lJ10sICcxMjM0JykgZm9yIHNsYXZlIGluIGNvbmZpZ19k
aWN0WydzbGF2ZXMnXV0pCisgICAgcmVzdWx0WydSRVNVTFRTX1NFUlZFUl9BUElfS0VZJ10gPSAn
YXBpLWtleScKKyAgICByZXR1cm4gcmVzdWx0CiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6
CiAgICAgd2l0aCBvcGVuKCdwYXNzd29yZHMuanNvbicsICd3JykgYXMgcGFzc3dvcmRzX2ZpbGU6
CkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9z
dGVwcy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJr
aXQub3JnLWNvbmZpZy9zdGVwcy5weQkocmV2aXNpb24gMjUwODc3KQorKysgVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvc3RlcHMucHkJKHdvcmtpbmcgY29w
eSkKQEAgLTM1LDYgKzM1LDggQEAgaW1wb3J0IHVybGxpYgogQVBQTEVfV0VCS0lUX0FXU19QUk9Y
WSA9ICJodHRwOi8vcHJveHkwMS53ZWJraXQub3JnOjMxMjgiCiBTM1VSTCA9ICJodHRwczovL3Mz
LXVzLXdlc3QtMi5hbWF6b25hd3MuY29tLyIKIFdpdGhQcm9wZXJ0aWVzID0gcHJvcGVydGllcy5X
aXRoUHJvcGVydGllcworUkVTVUxUU19XRUJLSVQgPSAnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5v
cmcnCitSRVNVTFRTX1NFUlZFUl9BUElfS0VZID0gJ1JFU1VMVFNfU0VSVkVSX0FQSV9LRVknCiAK
IAogY2xhc3MgVGVzdFdpdGhGYWlsdXJlQ291bnQoc2hlbGwuVGVzdCk6CkBAIC00MTYsMTMgKzQx
OCwyMiBAQCBjbGFzcyBSdW5XZWJLaXRUZXN0cyhzaGVsbC5UZXN0KToKICAgICAgICAgICAgICAg
ICItLWNsb2JiZXItb2xkLXJlc3VsdHMiLAogICAgICAgICAgICAgICAgIi0tYnVpbGRlci1uYW1l
IiwgV2l0aFByb3BlcnRpZXMoIiUoYnVpbGRlcm5hbWUpcyIpLAogICAgICAgICAgICAgICAgIi0t
YnVpbGQtbnVtYmVyIiwgV2l0aFByb3BlcnRpZXMoIiUoYnVpbGRudW1iZXIpcyIpLAorICAgICAg
ICAgICAgICAgIi0tYnVpbGRib3Qtd29ya2VyIiwgV2l0aFByb3BlcnRpZXMoIiUoc2xhdmVuYW1l
KXMiKSwKICAgICAgICAgICAgICAgICItLW1hc3Rlci1uYW1lIiwgIndlYmtpdC5vcmciLAorICAg
ICAgICAgICAgICAgIi0tYnVpbGRib3QtbWFzdGVyIiwgImJ1aWxkLndlYmtpdC5vcmciLAorICAg
ICAgICAgICAgICAgIi0tcmVwb3J0IiwgUkVTVUxUU19XRUJLSVQsCiAgICAgICAgICAgICAgICAi
LS10ZXN0LXJlc3VsdHMtc2VydmVyIiwgIndlYmtpdC10ZXN0LXJlc3VsdHMud2Via2l0Lm9yZyIs
CiAgICAgICAgICAgICAgICAiLS1leGl0LWFmdGVyLW4tY3Jhc2hlcy1vci10aW1lb3V0cyIsICI1
MCIsCiAgICAgICAgICAgICAgICAiLS1leGl0LWFmdGVyLW4tZmFpbHVyZXMiLCAiNTAwIiwKICAg
ICAgICAgICAgICAgIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCiAKKyAg
ICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAga3dhcmdzWyds
b2dFbnZpcm9uJ10gPSBGYWxzZQorICAgICAgICBzaGVsbC5UZXN0Ll9faW5pdF9fKHNlbGYsICph
cmdzLCAqKmt3YXJncykKKwogICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgc2VsZi5zbGF2
ZUVudmlyb25tZW50W1JFU1VMVFNfU0VSVkVSX0FQSV9LRVldID0gb3MuZ2V0ZW52KFJFU1VMVFNf
U0VSVkVSX0FQSV9LRVkpCisKICAgICAgICAgcGxhdGZvcm0gPSBzZWxmLmdldFByb3BlcnR5KCdw
bGF0Zm9ybScpCiAgICAgICAgIGFwcGVuZEN1c3RvbVRlc3RpbmdGbGFncyhzZWxmLCBwbGF0Zm9y
bSwgc2VsZi5nZXRQcm9wZXJ0eSgnZGV2aWNlX21vZGVsJykpCiAgICAgICAgIGFkZGl0aW9uYWxB
cmd1bWVudHMgPSBzZWxmLmdldFByb3BlcnR5KCdhZGRpdGlvbmFsQXJndW1lbnRzJykKQEAgLTUz
MCwxMCArNTQxLDI2IEBAIGNsYXNzIFJ1bkFQSVRlc3RzKFRlc3RXaXRoRmFpbHVyZUNvdW50KToK
ICAgICBuYW1lID0gInJ1bi1hcGktdGVzdHMiCiAgICAgZGVzY3JpcHRpb24gPSBbImFwaSB0ZXN0
cyBydW5uaW5nIl0KICAgICBkZXNjcmlwdGlvbkRvbmUgPSBbImFwaS10ZXN0cyJdCi0gICAgY29t
bWFuZCA9IFsicHl0aG9uIiwgIi4vVG9vbHMvU2NyaXB0cy9ydW4tYXBpLXRlc3RzIiwgIi0tbm8t
YnVpbGQiLCBXaXRoUHJvcGVydGllcygiLS0lKGNvbmZpZ3VyYXRpb24pcyIpLCAiLS12ZXJib3Nl
Il0KKyAgICBjb21tYW5kID0gWworICAgICAgICAicHl0aG9uIiwKKyAgICAgICAgIi4vVG9vbHMv
U2NyaXB0cy9ydW4tYXBpLXRlc3RzIiwKKyAgICAgICAgIi0tbm8tYnVpbGQiLAorICAgICAgICBX
aXRoUHJvcGVydGllcygiLS0lKGNvbmZpZ3VyYXRpb24pcyIpLAorICAgICAgICAiLS12ZXJib3Nl
IiwKKyAgICAgICAgIi0tYnVpbGRib3QtbWFzdGVyIiwgImJ1aWxkLndlYmtpdC5vcmciLAorICAg
ICAgICAiLS1idWlsZGVyLW5hbWUiLCBXaXRoUHJvcGVydGllcygiJShidWlsZGVybmFtZSlzIiks
CisgICAgICAgICItLWJ1aWxkLW51bWJlciIsIFdpdGhQcm9wZXJ0aWVzKCIlKGJ1aWxkbnVtYmVy
KXMiKSwKKyAgICAgICAgIi0tYnVpbGRib3Qtd29ya2VyIiwgV2l0aFByb3BlcnRpZXMoIiUoc2xh
dmVuYW1lKXMiKSwKKyAgICAgICAgIi0tcmVwb3J0IiwgUkVTVUxUU19XRUJLSVQsCisgICAgXQog
ICAgIGZhaWxlZFRlc3RzRm9ybWF0U3RyaW5nID0gIiVkIGFwaSB0ZXN0JXMgZmFpbGVkIG9yIHRp
bWVkIG91dCIKIAorICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAg
ICAgICBrd2FyZ3NbJ2xvZ0Vudmlyb24nXSA9IEZhbHNlCisgICAgICAgIFRlc3RXaXRoRmFpbHVy
ZUNvdW50Ll9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3YXJncykKKwogICAgIGRlZiBzdGFydChz
ZWxmKToKKyAgICAgICAgc2VsZi5zbGF2ZUVudmlyb25tZW50W1JFU1VMVFNfU0VSVkVSX0FQSV9L
RVldID0gb3MuZ2V0ZW52KFJFU1VMVFNfU0VSVkVSX0FQSV9LRVkpCiAgICAgICAgIGFwcGVuZEN1
c3RvbVRlc3RpbmdGbGFncyhzZWxmLCBzZWxmLmdldFByb3BlcnR5KCdwbGF0Zm9ybScpLCBzZWxm
LmdldFByb3BlcnR5KCdkZXZpY2VfbW9kZWwnKSkKICAgICAgICAgcmV0dXJuIHNoZWxsLlRlc3Qu
c3RhcnQoc2VsZikKIApAQCAtNTUwLDEwICs1NzcsMjYgQEAgY2xhc3MgUnVuUHl0aG9uVGVzdHMo
VGVzdFdpdGhGYWlsdXJlQ291bgogICAgIG5hbWUgPSAid2Via2l0cHktdGVzdCIKICAgICBkZXNj
cmlwdGlvbiA9IFsicHl0aG9uLXRlc3RzIHJ1bm5pbmciXQogICAgIGRlc2NyaXB0aW9uRG9uZSA9
IFsicHl0aG9uLXRlc3RzIl0KLSAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi9Ub29scy9TY3Jp
cHRzL3Rlc3Qtd2Via2l0cHkiLCAiLS12ZXJib3NlIiwgV2l0aFByb3BlcnRpZXMoIi0tJShjb25m
aWd1cmF0aW9uKXMiKV0KKyAgICBjb21tYW5kID0gWworICAgICAgICAicHl0aG9uIiwKKyAgICAg
ICAgIi4vVG9vbHMvU2NyaXB0cy90ZXN0LXdlYmtpdHB5IiwKKyAgICAgICAgIi0tdmVyYm9zZSIs
CisgICAgICAgIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIiksCisgICAgICAg
ICItLWJ1aWxkYm90LW1hc3RlciIsICJidWlsZC53ZWJraXQub3JnIiwKKyAgICAgICAgIi0tYnVp
bGRlci1uYW1lIiwgV2l0aFByb3BlcnRpZXMoIiUoYnVpbGRlcm5hbWUpcyIpLAorICAgICAgICAi
LS1idWlsZC1udW1iZXIiLCBXaXRoUHJvcGVydGllcygiJShidWlsZG51bWJlcilzIiksCisgICAg
ICAgICItLWJ1aWxkYm90LXdvcmtlciIsIFdpdGhQcm9wZXJ0aWVzKCIlKHNsYXZlbmFtZSlzIiks
CisgICAgICAgICItLXJlcG9ydCIsIFJFU1VMVFNfV0VCS0lULAorICAgIF0KICAgICBmYWlsZWRU
ZXN0c0Zvcm1hdFN0cmluZyA9ICIlZCBweXRob24gdGVzdCVzIGZhaWxlZCIKIAorICAgIGRlZiBf
X2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBrd2FyZ3NbJ2xvZ0Vudmly
b24nXSA9IEZhbHNlCisgICAgICAgIFRlc3RXaXRoRmFpbHVyZUNvdW50Ll9faW5pdF9fKHNlbGYs
ICphcmdzLCAqKmt3YXJncykKKwogICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgc2VsZi5z
bGF2ZUVudmlyb25tZW50W1JFU1VMVFNfU0VSVkVSX0FQSV9LRVldID0gb3MuZ2V0ZW52KFJFU1VM
VFNfU0VSVkVSX0FQSV9LRVkpCisKICAgICAgICAgcGxhdGZvcm0gPSBzZWxmLmdldFByb3BlcnR5
KCdwbGF0Zm9ybScpCiAgICAgICAgICMgUHl0aG9uIHRlc3RzIGFyZSBmbGFreSBvbiB0aGUgR1RL
IGJ1aWxkZXJzLCBydW5uaW5nIHRoZW0gc2VyaWFsbHkKICAgICAgICAgIyBoZWxwcyBhbmQgZG9l
cyBub3Qgc2lnbmlmaWNhbnRseSBwcm9sb25nIHRoZSBjeWNsZSB0aW1lLgpJbmRleDogVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3VwbG9hZC5weQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2FkLnB5CShyZXZpc2lvbiAyNTA4NzcpCisrKyBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2FkLnB5CSh3b3JraW5nIGNvcHkpCkBA
IC0yMiw2ICsyMiw3IEBACiAKIGltcG9ydCB3ZWJraXRweS50aGlyZHBhcnR5LmF1dG9pbnN0YWxs
ZWQucmVxdWVzdHMKIAoraW1wb3J0IG9zCiBpbXBvcnQganNvbgogaW1wb3J0IHJlcXVlc3RzCiBp
bXBvcnQgc3lzCkBAIC0zMSw2ICszMiw3IEBAIGltcG9ydCBwbGF0Zm9ybSBhcyBob3N0X3BsYXRm
b3JtCiAKIAogY2xhc3MgVXBsb2FkKG9iamVjdCk6CisgICAgQVBJX0tFWSA9IG9zLmdldGVudign
UkVTVUxUU19TRVJWRVJfQVBJX0tFWScpCiAgICAgVVBMT0FEX0VORFBPSU5UID0gJy9hcGkvdXBs
b2FkJwogICAgIEFSQ0hJVkVfVVBMT0FEX0VORFBPSU5UID0gJy9hcGkvdXBsb2FkL2FyY2hpdmUn
CiAgICAgQlVJTERCT1RfREVUQUlMUyA9IFsnYnVpbGRib3QtbWFzdGVyJywgJ2J1aWxkZXItbmFt
ZScsICdidWlsZC1udW1iZXInLCAnYnVpbGRib3Qtd29ya2VyJ10KQEAgLTE2OSw3ICsxNzEsMTQg
QEAgY2xhc3MgVXBsb2FkKG9iamVjdCk6CiAKICAgICBkZWYgdXBsb2FkKHNlbGYsIGhvc3RuYW1l
LCBsb2dfbGluZV9mdW5jPWxhbWJkYSB2YWw6IHN5cy5zdGRvdXQud3JpdGUodmFsICsgJ1xuJykp
OgogICAgICAgICB0cnk6Ci0gICAgICAgICAgICByZXNwb25zZSA9IHJlcXVlc3RzLnBvc3QoJ3t9
e30nLmZvcm1hdChob3N0bmFtZSwgc2VsZi5VUExPQURfRU5EUE9JTlQpLCBkYXRhPWpzb24uZHVt
cHMoc2VsZiwgY2xzPVVwbG9hZC5FbmNvZGVyKSkKKyAgICAgICAgICAgIGRhdGEgPSBVcGxvYWQu
RW5jb2RlcigpLmRlZmF1bHQoc2VsZikKKyAgICAgICAgICAgIGlmIHNlbGYuQVBJX0tFWToKKyAg
ICAgICAgICAgICAgICBkYXRhWydhcGlfa2V5J10gPSBzZWxmLkFQSV9LRVkKKyAgICAgICAgICAg
IHJlc3BvbnNlID0gcmVxdWVzdHMucG9zdCgKKyAgICAgICAgICAgICAgICAne317fScuZm9ybWF0
KGhvc3RuYW1lLCBzZWxmLlVQTE9BRF9FTkRQT0lOVCksCisgICAgICAgICAgICAgICAgaGVhZGVy
cz17J0NvbnRlbnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ30sCisgICAgICAgICAgICAgICAg
ZGF0YT1qc29uLmR1bXBzKGRhdGEpLAorICAgICAgICAgICAgKQogICAgICAgICBleGNlcHQgcmVx
dWVzdHMuZXhjZXB0aW9ucy5Db25uZWN0aW9uRXJyb3I6CiAgICAgICAgICAgICBsb2dfbGluZV9m
dW5jKCcgJyAqIDQgKyAnRmFpbGVkIHRvIHVwbG9hZCB0byB7fSwgcmVzdWx0cyBzZXJ2ZXIgbm90
IG9ubGluZScuZm9ybWF0KGhvc3RuYW1lKSkKICAgICAgICAgICAgIHJldHVybiBGYWxzZQpAQCAt
MTc5LDcgKzE4OCwxMSBAQCBjbGFzcyBVcGxvYWQob2JqZWN0KToKIAogICAgICAgICBpZiByZXNw
b25zZS5zdGF0dXNfY29kZSAhPSAyMDA6CiAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAq
IDQgKyAnRXJyb3IgdXBsb2FkaW5nIHRvIHt9Jy5mb3JtYXQoaG9zdG5hbWUpKQotICAgICAgICAg
ICAgbG9nX2xpbmVfZnVuYygnICcgKiA4ICsgcmVzcG9uc2UuanNvbigpLmdldCgnZGVzY3JpcHRp
b24nKSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcg
JyAqIDggKyByZXNwb25zZS5qc29uKCkuZ2V0KCdkZXNjcmlwdGlvbicpKQorICAgICAgICAgICAg
ZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gcmVzcG9uc2Uu
dGV4dC5zcGxpdGxpbmVzKCk6CisgICAgICAgICAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAn
ICogOCArIGxpbmUpCiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIAogICAgICAgICBsb2dfbGlu
ZV9mdW5jKCcgJyAqIDQgKyAnVXBsb2FkZWQgcmVzdWx0cyB0byB7fScuZm9ybWF0KGhvc3RuYW1l
KSkKQEAgLTE5NSw4ICsyMDgsMTEgQEAgY2xhc3MgVXBsb2FkKG9iamVjdCk6CiAgICAgICAgICAg
ICApCiAgICAgICAgICAgICBpZiBzZWxmLnRpbWVzdGFtcDoKICAgICAgICAgICAgICAgICBtZXRh
X2RhdGFbJ3RpbWVzdGFtcCddID0gc2VsZi50aW1lc3RhbXAKKyAgICAgICAgICAgIGlmIHNlbGYu
QVBJX0tFWToKKyAgICAgICAgICAgICAgICBtZXRhX2RhdGFbJ2FwaV9rZXknXSA9IHNlbGYuQVBJ
X0tFWQogICAgICAgICAgICAgcmVzcG9uc2UgPSByZXF1ZXN0cy5wb3N0KAogICAgICAgICAgICAg
ICAgICd7fXt9Jy5mb3JtYXQoaG9zdG5hbWUsIHNlbGYuQVJDSElWRV9VUExPQURfRU5EUE9JTlQp
LAorICAgICAgICAgICAgICAgIGhlYWRlcnM9eydDb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24v
b2N0ZXQtc3RyZWFtJ30sCiAgICAgICAgICAgICAgICAgZGF0YT1tZXRhX2RhdGEsCiAgICAgICAg
ICAgICAgICAgZmlsZXM9ZGljdChmaWxlPWFyY2hpdmUpLAogICAgICAgICAgICAgKQpAQCAtMjEw
LDcgKzIyNiwxMSBAQCBjbGFzcyBVcGxvYWQob2JqZWN0KToKIAogICAgICAgICBpZiByZXNwb25z
ZS5zdGF0dXNfY29kZSAhPSAyMDA6CiAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDQg
KyAnRXJyb3IgdXBsb2FkaW5nIGFyY2hpdmUgdG8ge30nLmZvcm1hdChob3N0bmFtZSkpCi0gICAg
ICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDggKyByZXNwb25zZS5qc29uKCkuZ2V0KCdkZXNj
cmlwdGlvbicpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGxvZ19saW5lX2Z1
bmMoJyAnICogOCArIHJlc3BvbnNlLmpzb24oKS5nZXQoJ2Rlc2NyaXB0aW9uJykpCisgICAgICAg
ICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiByZXNw
b25zZS50ZXh0LnNwbGl0bGluZXMoKToKKyAgICAgICAgICAgICAgICAgICAgbG9nX2xpbmVfZnVu
YygnICcgKiA4ICsgbGluZSkKICAgICAgICAgICAgIHJldHVybiBGYWxzZQogCiAgICAgICAgIGxv
Z19saW5lX2Z1bmMoJyAnICogNCArICdVcGxvYWRlZCB0ZXN0IGFyY2hpdmUgdG8ge30nLmZvcm1h
dChob3N0bmFtZSkpCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2Fk
X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcmVzdWx0
cy91cGxvYWRfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI1MDg3NykKKysrIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvcmVzdWx0cy91cGxvYWRfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTEy
NiwxNSArMTI2LDE1IEBAIGNsYXNzIFVwbG9hZFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAg
ICAgICAgICAgKV0sCiAgICAgICAgICkKIAotICAgICAgICB3aXRoIG1vY2sucGF0Y2goJ3JlcXVl
c3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgZGF0YTogc2VsZi5Nb2NrUmVzcG9uc2UoKSk6Cisg
ICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBo
ZWFkZXJzLCBkYXRhOiBzZWxmLk1vY2tSZXNwb25zZSgpKToKICAgICAgICAgICAgIHNlbGYuYXNz
ZXJ0VHJ1ZSh1cGxvYWQudXBsb2FkKCdodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZycsIGxvZ19s
aW5lX2Z1bmM9bGFtYmRhIF86IE5vbmUpKQogCi0gICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVx
dWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBkYXRhOiBzZWxmLnJhaXNlX3JlcXVlc3RzX0Nv
bm5lY3Rpb25FcnJvcigpKToKKyAgICAgICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0
JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRlcnMsIGRhdGE6IHNlbGYucmFpc2VfcmVxdWVzdHNfQ29u
bmVjdGlvbkVycm9yKCkpOgogICAgICAgICAgICAgbGluZXMgPSBbXQogICAgICAgICAgICAgc2Vs
Zi5hc3NlcnRGYWxzZSh1cGxvYWQudXBsb2FkKCdodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZycs
IGxvZ19saW5lX2Z1bmM9bGFtYmRhIGxpbmU6IGxpbmVzLmFwcGVuZChsaW5lKSkpCiAgICAgICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKFsnICcgKiA0ICsgJ0ZhaWxlZCB0byB1cGxvYWQgdG8gaHR0
cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcsIHJlc3VsdHMgc2VydmVyIG5vdCBvbmxpbmUnXSwgbGlu
ZXMpCiAKLSAgICAgICAgbW9ja180MDQgPSBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3
PWxhbWJkYSB1cmwsIGRhdGE6IHNlbGYuTW9ja1Jlc3BvbnNlKAorICAgICAgICBtb2NrXzQwNCA9
IG1vY2sucGF0Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycywgZGF0
YTogc2VsZi5Nb2NrUmVzcG9uc2UoCiAgICAgICAgICAgICBzdGF0dXNfY29kZT00MDQsCiAgICAg
ICAgICAgICB0ZXh0PWpzb24uZHVtcHMoZGljdChkZXNjcmlwdGlvbj0nTm8gc3VjaCBhZGRyZXNz
JykpLAogICAgICAgICApKQpAQCAtMjI3LDE1ICsyMjcsMTUgQEAgY2xhc3MgVXBsb2FkVGVzdCh1
bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICAgICApXSwKICAgICAgICAgKQogCi0gICAgICAg
IHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBkYXRhLCBm
aWxlczogc2VsZi5Nb2NrUmVzcG9uc2UoKSk6CisgICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVx
dWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBoZWFkZXJzLCBkYXRhLCBmaWxlczogc2VsZi5N
b2NrUmVzcG9uc2UoKSk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodXBsb2FkLnVwbG9h
ZF9hcmNoaXZlKCdodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZycsIGFyY2hpdmU9J2NvbnRlbnQn
LCBsb2dfbGluZV9mdW5jPWxhbWJkYSBfOiBOb25lKSkKIAotICAgICAgICB3aXRoIG1vY2sucGF0
Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgZGF0YSwgZmlsZXM6IHNlbGYucmFp
c2VfcmVxdWVzdHNfQ29ubmVjdGlvbkVycm9yKCkpOgorICAgICAgICB3aXRoIG1vY2sucGF0Y2go
J3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycywgZGF0YSwgZmlsZXM6IHNl
bGYucmFpc2VfcmVxdWVzdHNfQ29ubmVjdGlvbkVycm9yKCkpOgogICAgICAgICAgICAgbGluZXMg
PSBbXQogICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh1cGxvYWQudXBsb2FkX2FyY2hpdmUo
J2h0dHBzOi8vcmVzdWx0cy53ZWJraXQub3JnJywgYXJjaGl2ZT0nY29udGVudCcsIGxvZ19saW5l
X2Z1bmM9bGFtYmRhIGxpbmU6IGxpbmVzLmFwcGVuZChsaW5lKSkpCiAgICAgICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKFsnICcgKiA0ICsgJ0ZhaWxlZCB0byB1cGxvYWQgdGVzdCBhcmNoaXZlIHRv
IGh0dHBzOi8vcmVzdWx0cy53ZWJraXQub3JnLCByZXN1bHRzIHNlcnZlciBub3Qgb25saW5lJ10s
IGxpbmVzKQogCi0gICAgICAgIG1vY2tfNDA0ID0gbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcs
IG5ldz1sYW1iZGEgdXJsLCBkYXRhLCBmaWxlczogc2VsZi5Nb2NrUmVzcG9uc2UoCisgICAgICAg
IG1vY2tfNDA0ID0gbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBo
ZWFkZXJzLCBkYXRhLCBmaWxlczogc2VsZi5Nb2NrUmVzcG9uc2UoCiAgICAgICAgICAgICBzdGF0
dXNfY29kZT00MDQsCiAgICAgICAgICAgICB0ZXh0PWpzb24uZHVtcHMoZGljdChkZXNjcmlwdGlv
bj0nTm8gc3VjaCBhZGRyZXNzJykpLAogICAgICAgICApKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380536</attachid>
            <date>2019-10-09 09:03:43 -0700</date>
            <delta_ts>2019-10-09 13:33:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202639-20191009090342.patch</filename>
            <type>text/plain</type>
            <size>13453</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1MDkxMikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDE5LTEwLTA5ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN0YXJ0IHJlcG9ydGluZyByZXN1bHRz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI2MzkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHk6CisgICAg
ICAgIChsb2FkQnVpbGRlckNvbmZpZyk6IExvYWQgQVBJIGtleSBmb3IgcmVzdWx0cy53ZWJraXQu
b3JnLgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L21ha2VfcGFzc3dvcmRzX2pzb24ucHk6CisgICAgICAgIChjcmVhdGVfbW9ja19zbGF2ZV9wYXNz
d29yZHNfZGljdCk6IEFkZCBtb2NrIGZvciBBUEkga2V5LgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoUnVuV2Vi
S2l0VGVzdHMpOiBTdGFydCByZXBvcnRpbmcgdG8gcmVzdWx0cy53ZWJraXQub3JnLgorICAgICAg
ICAoUnVuV2ViS2l0VGVzdHMuX19pbml0X18pOiBEbyBub3QgcHJpbnQgdGhlIGVudmlyb25tZW50
IHRvIGhpZGUgdGhlIEFQSSBrZXkuCisgICAgICAgIChSdW5XZWJLaXRUZXN0cy5zdGFydCk6IEFk
ZCB0aGUgQVBJIGtleSB0byB0aGUgZW52aXJvbm1lbnQuCisgICAgICAgIChSdW5BUElUZXN0cyk6
IFN0YXJ0IHJlcG9ydGluZyB0byByZXN1bHRzLndlYmtpdC5vcmcuCisgICAgICAgIChSdW5BUElU
ZXN0cy5fX2luaXRfXyk6IERvIG5vdCBwcmludCB0aGUgZW52aXJvbm1lbnQgdG8gaGlkZSB0aGUg
QVBJIGtleS4KKyAgICAgICAgKFJ1bkFQSVRlc3RzLnN0YXJ0KTogQWRkIHRoZSBBUEkga2V5IHRv
IHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzKTogU3RhcnQgcmVwb3J0
aW5nIHRvIHJlc3VsdHMud2Via2l0Lm9yZy4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzLl9faW5p
dF9fKTogRG8gbm90IHByaW50IHRoZSBlbnZpcm9ubWVudCB0byBoaWRlIHRoZSBBUEkga2V5Lgor
ICAgICAgICAoUnVuUHl0aG9uVGVzdHMuc3RhcnQpOiBBZGQgdGhlIEFQSSBrZXkgdG8gdGhlIGVu
dmlyb25tZW50LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQucHk6
CisgICAgICAgIChVcGxvYWQpOgorICAgICAgICAoVXBsb2FkLnVwbG9hZCk6IEFkZCBBUElfS0VZ
LCBpZiBpdCBleGlzdHMsIHRvIHRoZSByZXF1ZXN0LgorICAgICAgICAoVXBsb2FkLnVwbG9hZF9h
cmNoaXZlKTogRGl0dG8uCisKIDIwMTktMTAtMDkgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSB0ZXN0UnVubmVyLnNldFdlYlJUQ1VuaWZpZWRQbGFu
RW5hYmxlZApJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1j
b25maWcvbG9hZENvbmZpZy5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9y
dC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9sb2FkQ29uZmlnLnB5CShyZXZpc2lvbiAyNTA5MTIp
CisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9sb2Fk
Q29uZmlnLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00OSw4ICs0OSwxMSBAQCBkZWYgbG9hZEJ1aWxk
ZXJDb25maWcoYywgdGVzdF9tb2RlX2lzX2VuCiAgICAgICAgIHBhc3N3b3JkcyA9IG1ha2VfcGFz
c3dvcmRzX2pzb24uY3JlYXRlX21vY2tfc2xhdmVfcGFzc3dvcmRzX2RpY3QoKQogICAgIGVsc2U6
CiAgICAgICAgIHBhc3N3b3JkcyA9IGpzb24ubG9hZChvcGVuKCdwYXNzd29yZHMuanNvbicpKQot
ICAgIGNvbmZpZyA9IGpzb24ubG9hZChvcGVuKCdjb25maWcuanNvbicpKQorICAgIHJlc3VsdHNf
c2VydmVyX2FwaV9rZXkgPSBwYXNzd29yZHMuZ2V0KCdyZXN1bHRzLXNlcnZlci1hcGkta2V5JykK
KyAgICBpZiByZXN1bHRzX3NlcnZlcl9hcGlfa2V5OgorICAgICAgICBvcy5lbnZpcm9uWydSRVNV
TFRTX1NFUlZFUl9BUElfS0VZJ10gPSByZXN1bHRzX3NlcnZlcl9hcGlfa2V5CiAKKyAgICBjb25m
aWcgPSBqc29uLmxvYWQob3BlbignY29uZmlnLmpzb24nKSkKICAgICBjWydzbGF2ZXMnXSA9IFtC
dWlsZFNsYXZlKHNsYXZlWyduYW1lJ10sIHBhc3N3b3Jkc1tzbGF2ZVsnbmFtZSddXSwgbWF4X2J1
aWxkcz0xKSBmb3Igc2xhdmUgaW4gY29uZmlnWydzbGF2ZXMnXV0KIAogICAgIGNbJ3NjaGVkdWxl
cnMnXSA9IFtdCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9tYWtlX3Bhc3N3b3Jkc19qc29uLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21ha2VfcGFzc3dvcmRzX2pzb24u
cHkJKHJldmlzaW9uIDI1MDkxMikKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndl
YmtpdC5vcmctY29uZmlnL21ha2VfcGFzc3dvcmRzX2pzb24ucHkJKHdvcmtpbmcgY29weSkKQEAg
LTMxLDcgKzMxLDkgQEAgaW1wb3J0IG1kNQogZGVmIGNyZWF0ZV9tb2NrX3NsYXZlX3Bhc3N3b3Jk
c19kaWN0KCk6CiAgICAgd2l0aCBvcGVuKCdjb25maWcuanNvbicsICdyJykgYXMgY29uZmlnX2pz
b246CiAgICAgICAgIGNvbmZpZ19kaWN0ID0ganNvbi5sb2FkKGNvbmZpZ19qc29uKQotICAgIHJl
dHVybiBkaWN0KFsoc2xhdmVbJ25hbWUnXSwgJzEyMzQnKSBmb3Igc2xhdmUgaW4gY29uZmlnX2Rp
Y3RbJ3NsYXZlcyddXSkKKyAgICByZXN1bHQgPSBkaWN0KFsoc2xhdmVbJ25hbWUnXSwgJzEyMzQn
KSBmb3Igc2xhdmUgaW4gY29uZmlnX2RpY3RbJ3NsYXZlcyddXSkKKyAgICByZXN1bHRbJ3Jlc3Vs
dHMtc2VydmVyLWFwaS1rZXknXSA9ICdhcGkta2V5JworICAgIHJldHVybiByZXN1bHQKIAogaWYg
X19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICB3aXRoIG9wZW4oJ3Bhc3N3b3Jkcy5qc29uJywg
J3cnKSBhcyBwYXNzd29yZHNfZmlsZToKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1
aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5CShyZXZpc2lvbiAy
NTA5MTIpCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZp
Zy9zdGVwcy5weQkod29ya2luZyBjb3B5KQpAQCAtMzUsNiArMzUsOCBAQCBpbXBvcnQgdXJsbGli
CiBBUFBMRV9XRUJLSVRfQVdTX1BST1hZID0gImh0dHA6Ly9wcm94eTAxLndlYmtpdC5vcmc6MzEy
OCIKIFMzVVJMID0gImh0dHBzOi8vczMtdXMtd2VzdC0yLmFtYXpvbmF3cy5jb20vIgogV2l0aFBy
b3BlcnRpZXMgPSBwcm9wZXJ0aWVzLldpdGhQcm9wZXJ0aWVzCitSRVNVTFRTX1dFQktJVCA9ICdo
dHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZycKK1JFU1VMVFNfU0VSVkVSX0FQSV9LRVkgPSAnUkVT
VUxUU19TRVJWRVJfQVBJX0tFWScKIAogCiBjbGFzcyBUZXN0V2l0aEZhaWx1cmVDb3VudChzaGVs
bC5UZXN0KToKQEAgLTQxNiwxMyArNDE4LDIyIEBAIGNsYXNzIFJ1bldlYktpdFRlc3RzKHNoZWxs
LlRlc3QpOgogICAgICAgICAgICAgICAgIi0tY2xvYmJlci1vbGQtcmVzdWx0cyIsCiAgICAgICAg
ICAgICAgICAiLS1idWlsZGVyLW5hbWUiLCBXaXRoUHJvcGVydGllcygiJShidWlsZGVybmFtZSlz
IiksCiAgICAgICAgICAgICAgICAiLS1idWlsZC1udW1iZXIiLCBXaXRoUHJvcGVydGllcygiJShi
dWlsZG51bWJlcilzIiksCisgICAgICAgICAgICAgICAiLS1idWlsZGJvdC13b3JrZXIiLCBXaXRo
UHJvcGVydGllcygiJShzbGF2ZW5hbWUpcyIpLAogICAgICAgICAgICAgICAgIi0tbWFzdGVyLW5h
bWUiLCAid2Via2l0Lm9yZyIsCisgICAgICAgICAgICAgICAiLS1idWlsZGJvdC1tYXN0ZXIiLCAi
YnVpbGQud2Via2l0Lm9yZyIsCisgICAgICAgICAgICAgICAiLS1yZXBvcnQiLCBSRVNVTFRTX1dF
QktJVCwKICAgICAgICAgICAgICAgICItLXRlc3QtcmVzdWx0cy1zZXJ2ZXIiLCAid2Via2l0LXRl
c3QtcmVzdWx0cy53ZWJraXQub3JnIiwKICAgICAgICAgICAgICAgICItLWV4aXQtYWZ0ZXItbi1j
cmFzaGVzLW9yLXRpbWVvdXRzIiwgIjUwIiwKICAgICAgICAgICAgICAgICItLWV4aXQtYWZ0ZXIt
bi1mYWlsdXJlcyIsICI1MDAiLAogICAgICAgICAgICAgICAgV2l0aFByb3BlcnRpZXMoIi0tJShj
b25maWd1cmF0aW9uKXMiKV0KIAorICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2Fy
Z3MpOgorICAgICAgICBrd2FyZ3NbJ2xvZ0Vudmlyb24nXSA9IEZhbHNlCisgICAgICAgIHNoZWxs
LlRlc3QuX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKQorCiAgICAgZGVmIHN0YXJ0KHNl
bGYpOgorICAgICAgICBzZWxmLnNsYXZlRW52aXJvbm1lbnRbUkVTVUxUU19TRVJWRVJfQVBJX0tF
WV0gPSBvcy5nZXRlbnYoUkVTVUxUU19TRVJWRVJfQVBJX0tFWSkKKwogICAgICAgICBwbGF0Zm9y
bSA9IHNlbGYuZ2V0UHJvcGVydHkoJ3BsYXRmb3JtJykKICAgICAgICAgYXBwZW5kQ3VzdG9tVGVz
dGluZ0ZsYWdzKHNlbGYsIHBsYXRmb3JtLCBzZWxmLmdldFByb3BlcnR5KCdkZXZpY2VfbW9kZWwn
KSkKICAgICAgICAgYWRkaXRpb25hbEFyZ3VtZW50cyA9IHNlbGYuZ2V0UHJvcGVydHkoJ2FkZGl0
aW9uYWxBcmd1bWVudHMnKQpAQCAtNTMwLDEwICs1NDEsMjYgQEAgY2xhc3MgUnVuQVBJVGVzdHMo
VGVzdFdpdGhGYWlsdXJlQ291bnQpOgogICAgIG5hbWUgPSAicnVuLWFwaS10ZXN0cyIKICAgICBk
ZXNjcmlwdGlvbiA9IFsiYXBpIHRlc3RzIHJ1bm5pbmciXQogICAgIGRlc2NyaXB0aW9uRG9uZSA9
IFsiYXBpLXRlc3RzIl0KLSAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi9Ub29scy9TY3JpcHRz
L3J1bi1hcGktdGVzdHMiLCAiLS1uby1idWlsZCIsIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmln
dXJhdGlvbilzIiksICItLXZlcmJvc2UiXQorICAgIGNvbW1hbmQgPSBbCisgICAgICAgICJweXRo
b24iLAorICAgICAgICAiLi9Ub29scy9TY3JpcHRzL3J1bi1hcGktdGVzdHMiLAorICAgICAgICAi
LS1uby1idWlsZCIsCisgICAgICAgIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilz
IiksCisgICAgICAgICItLXZlcmJvc2UiLAorICAgICAgICAiLS1idWlsZGJvdC1tYXN0ZXIiLCAi
YnVpbGQud2Via2l0Lm9yZyIsCisgICAgICAgICItLWJ1aWxkZXItbmFtZSIsIFdpdGhQcm9wZXJ0
aWVzKCIlKGJ1aWxkZXJuYW1lKXMiKSwKKyAgICAgICAgIi0tYnVpbGQtbnVtYmVyIiwgV2l0aFBy
b3BlcnRpZXMoIiUoYnVpbGRudW1iZXIpcyIpLAorICAgICAgICAiLS1idWlsZGJvdC13b3JrZXIi
LCBXaXRoUHJvcGVydGllcygiJShzbGF2ZW5hbWUpcyIpLAorICAgICAgICAiLS1yZXBvcnQiLCBS
RVNVTFRTX1dFQktJVCwKKyAgICBdCiAgICAgZmFpbGVkVGVzdHNGb3JtYXRTdHJpbmcgPSAiJWQg
YXBpIHRlc3QlcyBmYWlsZWQgb3IgdGltZWQgb3V0IgogCisgICAgZGVmIF9faW5pdF9fKHNlbGYs
ICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIGt3YXJnc1snbG9nRW52aXJvbiddID0gRmFsc2UK
KyAgICAgICAgVGVzdFdpdGhGYWlsdXJlQ291bnQuX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dh
cmdzKQorCiAgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICBzZWxmLnNsYXZlRW52aXJvbm1l
bnRbUkVTVUxUU19TRVJWRVJfQVBJX0tFWV0gPSBvcy5nZXRlbnYoUkVTVUxUU19TRVJWRVJfQVBJ
X0tFWSkKICAgICAgICAgYXBwZW5kQ3VzdG9tVGVzdGluZ0ZsYWdzKHNlbGYsIHNlbGYuZ2V0UHJv
cGVydHkoJ3BsYXRmb3JtJyksIHNlbGYuZ2V0UHJvcGVydHkoJ2RldmljZV9tb2RlbCcpKQogICAg
ICAgICByZXR1cm4gc2hlbGwuVGVzdC5zdGFydChzZWxmKQogCkBAIC01NTAsMTAgKzU3NywyNiBA
QCBjbGFzcyBSdW5QeXRob25UZXN0cyhUZXN0V2l0aEZhaWx1cmVDb3VuCiAgICAgbmFtZSA9ICJ3
ZWJraXRweS10ZXN0IgogICAgIGRlc2NyaXB0aW9uID0gWyJweXRob24tdGVzdHMgcnVubmluZyJd
CiAgICAgZGVzY3JpcHRpb25Eb25lID0gWyJweXRob24tdGVzdHMiXQotICAgIGNvbW1hbmQgPSBb
InB5dGhvbiIsICIuL1Rvb2xzL1NjcmlwdHMvdGVzdC13ZWJraXRweSIsICItLXZlcmJvc2UiLCBX
aXRoUHJvcGVydGllcygiLS0lKGNvbmZpZ3VyYXRpb24pcyIpXQorICAgIGNvbW1hbmQgPSBbCisg
ICAgICAgICJweXRob24iLAorICAgICAgICAiLi9Ub29scy9TY3JpcHRzL3Rlc3Qtd2Via2l0cHki
LAorICAgICAgICAiLS12ZXJib3NlIiwKKyAgICAgICAgV2l0aFByb3BlcnRpZXMoIi0tJShjb25m
aWd1cmF0aW9uKXMiKSwKKyAgICAgICAgIi0tYnVpbGRib3QtbWFzdGVyIiwgImJ1aWxkLndlYmtp
dC5vcmciLAorICAgICAgICAiLS1idWlsZGVyLW5hbWUiLCBXaXRoUHJvcGVydGllcygiJShidWls
ZGVybmFtZSlzIiksCisgICAgICAgICItLWJ1aWxkLW51bWJlciIsIFdpdGhQcm9wZXJ0aWVzKCIl
KGJ1aWxkbnVtYmVyKXMiKSwKKyAgICAgICAgIi0tYnVpbGRib3Qtd29ya2VyIiwgV2l0aFByb3Bl
cnRpZXMoIiUoc2xhdmVuYW1lKXMiKSwKKyAgICAgICAgIi0tcmVwb3J0IiwgUkVTVUxUU19XRUJL
SVQsCisgICAgXQogICAgIGZhaWxlZFRlc3RzRm9ybWF0U3RyaW5nID0gIiVkIHB5dGhvbiB0ZXN0
JXMgZmFpbGVkIgogCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6Cisg
ICAgICAgIGt3YXJnc1snbG9nRW52aXJvbiddID0gRmFsc2UKKyAgICAgICAgVGVzdFdpdGhGYWls
dXJlQ291bnQuX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKQorCiAgICAgZGVmIHN0YXJ0
KHNlbGYpOgorICAgICAgICBzZWxmLnNsYXZlRW52aXJvbm1lbnRbUkVTVUxUU19TRVJWRVJfQVBJ
X0tFWV0gPSBvcy5nZXRlbnYoUkVTVUxUU19TRVJWRVJfQVBJX0tFWSkKKwogICAgICAgICBwbGF0
Zm9ybSA9IHNlbGYuZ2V0UHJvcGVydHkoJ3BsYXRmb3JtJykKICAgICAgICAgIyBQeXRob24gdGVz
dHMgYXJlIGZsYWt5IG9uIHRoZSBHVEsgYnVpbGRlcnMsIHJ1bm5pbmcgdGhlbSBzZXJpYWxseQog
ICAgICAgICAjIGhlbHBzIGFuZCBkb2VzIG5vdCBzaWduaWZpY2FudGx5IHByb2xvbmcgdGhlIGN5
Y2xlIHRpbWUuCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2FkLnB5
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQucHkJ
KHJldmlzaW9uIDI1MDkxMikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxv
YWQucHkJKHdvcmtpbmcgY29weSkKQEAgLTIyLDYgKzIyLDcgQEAKIAogaW1wb3J0IHdlYmtpdHB5
LnRoaXJkcGFydHkuYXV0b2luc3RhbGxlZC5yZXF1ZXN0cwogCitpbXBvcnQgb3MKIGltcG9ydCBq
c29uCiBpbXBvcnQgcmVxdWVzdHMKIGltcG9ydCBzeXMKQEAgLTMxLDYgKzMyLDcgQEAgaW1wb3J0
IHBsYXRmb3JtIGFzIGhvc3RfcGxhdGZvcm0KIAogCiBjbGFzcyBVcGxvYWQob2JqZWN0KToKKyAg
ICBBUElfS0VZID0gb3MuZ2V0ZW52KCdSRVNVTFRTX1NFUlZFUl9BUElfS0VZJykKICAgICBVUExP
QURfRU5EUE9JTlQgPSAnL2FwaS91cGxvYWQnCiAgICAgQVJDSElWRV9VUExPQURfRU5EUE9JTlQg
PSAnL2FwaS91cGxvYWQvYXJjaGl2ZScKICAgICBCVUlMREJPVF9ERVRBSUxTID0gWydidWlsZGJv
dC1tYXN0ZXInLCAnYnVpbGRlci1uYW1lJywgJ2J1aWxkLW51bWJlcicsICdidWlsZGJvdC13b3Jr
ZXInXQpAQCAtMTY5LDcgKzE3MSwxNCBAQCBjbGFzcyBVcGxvYWQob2JqZWN0KToKIAogICAgIGRl
ZiB1cGxvYWQoc2VsZiwgaG9zdG5hbWUsIGxvZ19saW5lX2Z1bmM9bGFtYmRhIHZhbDogc3lzLnN0
ZG91dC53cml0ZSh2YWwgKyAnXG4nKSk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHJlc3Bv
bnNlID0gcmVxdWVzdHMucG9zdCgne317fScuZm9ybWF0KGhvc3RuYW1lLCBzZWxmLlVQTE9BRF9F
TkRQT0lOVCksIGRhdGE9anNvbi5kdW1wcyhzZWxmLCBjbHM9VXBsb2FkLkVuY29kZXIpKQorICAg
ICAgICAgICAgZGF0YSA9IFVwbG9hZC5FbmNvZGVyKCkuZGVmYXVsdChzZWxmKQorICAgICAgICAg
ICAgaWYgc2VsZi5BUElfS0VZOgorICAgICAgICAgICAgICAgIGRhdGFbJ2FwaV9rZXknXSA9IHNl
bGYuQVBJX0tFWQorICAgICAgICAgICAgcmVzcG9uc2UgPSByZXF1ZXN0cy5wb3N0KAorICAgICAg
ICAgICAgICAgICd7fXt9Jy5mb3JtYXQoaG9zdG5hbWUsIHNlbGYuVVBMT0FEX0VORFBPSU5UKSwK
KyAgICAgICAgICAgICAgICBoZWFkZXJzPXsnQ29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pz
b24nfSwKKyAgICAgICAgICAgICAgICBkYXRhPWpzb24uZHVtcHMoZGF0YSksCisgICAgICAgICAg
ICApCiAgICAgICAgIGV4Y2VwdCByZXF1ZXN0cy5leGNlcHRpb25zLkNvbm5lY3Rpb25FcnJvcjoK
ICAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogNCArICdGYWlsZWQgdG8gdXBsb2FkIHRv
IHt9LCByZXN1bHRzIHNlcnZlciBub3Qgb25saW5lJy5mb3JtYXQoaG9zdG5hbWUpKQogICAgICAg
ICAgICAgcmV0dXJuIEZhbHNlCkBAIC0xNzksNyArMTg4LDExIEBAIGNsYXNzIFVwbG9hZChvYmpl
Y3QpOgogCiAgICAgICAgIGlmIHJlc3BvbnNlLnN0YXR1c19jb2RlICE9IDIwMDoKICAgICAgICAg
ICAgIGxvZ19saW5lX2Z1bmMoJyAnICogNCArICdFcnJvciB1cGxvYWRpbmcgdG8ge30nLmZvcm1h
dChob3N0bmFtZSkpCi0gICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDggKyByZXNwb25z
ZS5qc29uKCkuZ2V0KCdkZXNjcmlwdGlvbicpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAg
ICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogOCArIHJlc3BvbnNlLmpzb24oKS5nZXQoJ2Rlc2Ny
aXB0aW9uJykpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAg
ICBmb3IgbGluZSBpbiByZXNwb25zZS50ZXh0LnNwbGl0bGluZXMoKToKKyAgICAgICAgICAgICAg
ICAgICAgbG9nX2xpbmVfZnVuYygnICcgKiA4ICsgbGluZSkKICAgICAgICAgICAgIHJldHVybiBG
YWxzZQogCiAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogNCArICdVcGxvYWRlZCByZXN1bHRz
IHRvIHt9Jy5mb3JtYXQoaG9zdG5hbWUpKQpAQCAtMTk1LDggKzIwOCwxMSBAQCBjbGFzcyBVcGxv
YWQob2JqZWN0KToKICAgICAgICAgICAgICkKICAgICAgICAgICAgIGlmIHNlbGYudGltZXN0YW1w
OgogICAgICAgICAgICAgICAgIG1ldGFfZGF0YVsndGltZXN0YW1wJ10gPSBzZWxmLnRpbWVzdGFt
cAorICAgICAgICAgICAgaWYgc2VsZi5BUElfS0VZOgorICAgICAgICAgICAgICAgIG1ldGFfZGF0
YVsnYXBpX2tleSddID0gc2VsZi5BUElfS0VZCiAgICAgICAgICAgICByZXNwb25zZSA9IHJlcXVl
c3RzLnBvc3QoCiAgICAgICAgICAgICAgICAgJ3t9e30nLmZvcm1hdChob3N0bmFtZSwgc2VsZi5B
UkNISVZFX1VQTE9BRF9FTkRQT0lOVCksCisgICAgICAgICAgICAgICAgaGVhZGVycz17J0NvbnRl
bnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nfSwKICAgICAgICAgICAgICAgICBk
YXRhPW1ldGFfZGF0YSwKICAgICAgICAgICAgICAgICBmaWxlcz1kaWN0KGZpbGU9YXJjaGl2ZSks
CiAgICAgICAgICAgICApCkBAIC0yMTAsNyArMjI2LDExIEBAIGNsYXNzIFVwbG9hZChvYmplY3Qp
OgogCiAgICAgICAgIGlmIHJlc3BvbnNlLnN0YXR1c19jb2RlICE9IDIwMDoKICAgICAgICAgICAg
IGxvZ19saW5lX2Z1bmMoJyAnICogNCArICdFcnJvciB1cGxvYWRpbmcgYXJjaGl2ZSB0byB7fScu
Zm9ybWF0KGhvc3RuYW1lKSkKLSAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogOCArIHJl
c3BvbnNlLmpzb24oKS5nZXQoJ2Rlc2NyaXB0aW9uJykpCisgICAgICAgICAgICB0cnk6CisgICAg
ICAgICAgICAgICAgbG9nX2xpbmVfZnVuYygnICcgKiA4ICsgcmVzcG9uc2UuanNvbigpLmdldCgn
ZGVzY3JpcHRpb24nKSkKKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAg
ICAgICAgIGZvciBsaW5lIGluIHJlc3BvbnNlLnRleHQuc3BsaXRsaW5lcygpOgorICAgICAgICAg
ICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDggKyBsaW5lKQogICAgICAgICAgICAgcmV0
dXJuIEZhbHNlCiAKICAgICAgICAgbG9nX2xpbmVfZnVuYygnICcgKiA0ICsgJ1VwbG9hZGVkIHRl
c3QgYXJjaGl2ZSB0byB7fScuZm9ybWF0KGhvc3RuYW1lKSkKSW5kZXg6IFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvcmVzdWx0cy91cGxvYWRfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3VwbG9hZF91bml0dGVzdC5weQkocmV2aXNpb24gMjUw
OTEyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3VwbG9hZF91bml0dGVzdC5w
eQkod29ya2luZyBjb3B5KQpAQCAtMTI2LDE1ICsxMjYsMTUgQEAgY2xhc3MgVXBsb2FkVGVzdCh1
bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICAgICApXSwKICAgICAgICAgKQogCi0gICAgICAg
IHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBkYXRhOiBz
ZWxmLk1vY2tSZXNwb25zZSgpKToKKyAgICAgICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5w
b3N0JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRlcnMsIGRhdGE6IHNlbGYuTW9ja1Jlc3BvbnNlKCkp
OgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVwbG9hZC51cGxvYWQoJ2h0dHBzOi8vcmVz
dWx0cy53ZWJraXQub3JnJywgbG9nX2xpbmVfZnVuYz1sYW1iZGEgXzogTm9uZSkpCiAKLSAgICAg
ICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGRhdGE6
IHNlbGYucmFpc2VfcmVxdWVzdHNfQ29ubmVjdGlvbkVycm9yKCkpOgorICAgICAgICB3aXRoIG1v
Y2sucGF0Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycywgZGF0YTog
c2VsZi5yYWlzZV9yZXF1ZXN0c19Db25uZWN0aW9uRXJyb3IoKSk6CiAgICAgICAgICAgICBsaW5l
cyA9IFtdCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHVwbG9hZC51cGxvYWQoJ2h0dHBz
Oi8vcmVzdWx0cy53ZWJraXQub3JnJywgbG9nX2xpbmVfZnVuYz1sYW1iZGEgbGluZTogbGluZXMu
YXBwZW5kKGxpbmUpKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWycgJyAqIDQgKyAn
RmFpbGVkIHRvIHVwbG9hZCB0byBodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZywgcmVzdWx0cyBz
ZXJ2ZXIgbm90IG9ubGluZSddLCBsaW5lcykKIAotICAgICAgICBtb2NrXzQwNCA9IG1vY2sucGF0
Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgZGF0YTogc2VsZi5Nb2NrUmVzcG9u
c2UoCisgICAgICAgIG1vY2tfNDA0ID0gbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1s
YW1iZGEgdXJsLCBoZWFkZXJzLCBkYXRhOiBzZWxmLk1vY2tSZXNwb25zZSgKICAgICAgICAgICAg
IHN0YXR1c19jb2RlPTQwNCwKICAgICAgICAgICAgIHRleHQ9anNvbi5kdW1wcyhkaWN0KGRlc2Ny
aXB0aW9uPSdObyBzdWNoIGFkZHJlc3MnKSksCiAgICAgICAgICkpCkBAIC0yMjcsMTUgKzIyNywx
NSBAQCBjbGFzcyBVcGxvYWRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgICld
LAogICAgICAgICApCiAKLSAgICAgICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0Jywg
bmV3PWxhbWJkYSB1cmwsIGRhdGEsIGZpbGVzOiBzZWxmLk1vY2tSZXNwb25zZSgpKToKKyAgICAg
ICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRl
cnMsIGRhdGEsIGZpbGVzOiBzZWxmLk1vY2tSZXNwb25zZSgpKToKICAgICAgICAgICAgIHNlbGYu
YXNzZXJ0VHJ1ZSh1cGxvYWQudXBsb2FkX2FyY2hpdmUoJ2h0dHBzOi8vcmVzdWx0cy53ZWJraXQu
b3JnJywgYXJjaGl2ZT0nY29udGVudCcsIGxvZ19saW5lX2Z1bmM9bGFtYmRhIF86IE5vbmUpKQog
Ci0gICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJs
LCBkYXRhLCBmaWxlczogc2VsZi5yYWlzZV9yZXF1ZXN0c19Db25uZWN0aW9uRXJyb3IoKSk6Cisg
ICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1iZGEgdXJsLCBo
ZWFkZXJzLCBkYXRhLCBmaWxlczogc2VsZi5yYWlzZV9yZXF1ZXN0c19Db25uZWN0aW9uRXJyb3Io
KSk6CiAgICAgICAgICAgICBsaW5lcyA9IFtdCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNl
KHVwbG9hZC51cGxvYWRfYXJjaGl2ZSgnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcnLCBhcmNo
aXZlPSdjb250ZW50JywgbG9nX2xpbmVfZnVuYz1sYW1iZGEgbGluZTogbGluZXMuYXBwZW5kKGxp
bmUpKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWycgJyAqIDQgKyAnRmFpbGVkIHRv
IHVwbG9hZCB0ZXN0IGFyY2hpdmUgdG8gaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcsIHJlc3Vs
dHMgc2VydmVyIG5vdCBvbmxpbmUnXSwgbGluZXMpCiAKLSAgICAgICAgbW9ja180MDQgPSBtb2Nr
LnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGRhdGEsIGZpbGVzOiBzZWxm
Lk1vY2tSZXNwb25zZSgKKyAgICAgICAgbW9ja180MDQgPSBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5w
b3N0JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRlcnMsIGRhdGEsIGZpbGVzOiBzZWxmLk1vY2tSZXNw
b25zZSgKICAgICAgICAgICAgIHN0YXR1c19jb2RlPTQwNCwKICAgICAgICAgICAgIHRleHQ9anNv
bi5kdW1wcyhkaWN0KGRlc2NyaXB0aW9uPSdObyBzdWNoIGFkZHJlc3MnKSksCiAgICAgICAgICkp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380561</attachid>
            <date>2019-10-09 13:33:37 -0700</date>
            <delta_ts>2019-10-09 14:11:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202639-20191009133336.patch</filename>
            <type>text/plain</type>
            <size>13458</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI1MDkyMSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDE5LTEwLTA5ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN0YXJ0IHJlcG9ydGluZyByZXN1bHRz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI2MzkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJ1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHk6CisgICAg
ICAgIChsb2FkQnVpbGRlckNvbmZpZyk6IExvYWQgQVBJIGtleSBmb3IgcmVzdWx0cy53ZWJraXQu
b3JnLgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L21ha2VfcGFzc3dvcmRzX2pzb24ucHk6CisgICAgICAgIChjcmVhdGVfbW9ja19zbGF2ZV9wYXNz
d29yZHNfZGljdCk6IEFkZCBtb2NrIGZvciBBUEkga2V5LgorICAgICAgICAqIEJ1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3N0ZXBzLnB5OgorICAgICAgICAoUnVuV2Vi
S2l0VGVzdHMpOiBTdGFydCByZXBvcnRpbmcgdG8gcmVzdWx0cy53ZWJraXQub3JnLgorICAgICAg
ICAoUnVuV2ViS2l0VGVzdHMuX19pbml0X18pOiBEbyBub3QgcHJpbnQgdGhlIGVudmlyb25tZW50
IHRvIGhpZGUgdGhlIEFQSSBrZXkuCisgICAgICAgIChSdW5XZWJLaXRUZXN0cy5zdGFydCk6IEFk
ZCB0aGUgQVBJIGtleSB0byB0aGUgZW52aXJvbm1lbnQuCisgICAgICAgIChSdW5BUElUZXN0cyk6
IFN0YXJ0IHJlcG9ydGluZyB0byByZXN1bHRzLndlYmtpdC5vcmcuCisgICAgICAgIChSdW5BUElU
ZXN0cy5fX2luaXRfXyk6IERvIG5vdCBwcmludCB0aGUgZW52aXJvbm1lbnQgdG8gaGlkZSB0aGUg
QVBJIGtleS4KKyAgICAgICAgKFJ1bkFQSVRlc3RzLnN0YXJ0KTogQWRkIHRoZSBBUEkga2V5IHRv
IHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzKTogU3RhcnQgcmVwb3J0
aW5nIHRvIHJlc3VsdHMud2Via2l0Lm9yZy4KKyAgICAgICAgKFJ1blB5dGhvblRlc3RzLl9faW5p
dF9fKTogRG8gbm90IHByaW50IHRoZSBlbnZpcm9ubWVudCB0byBoaWRlIHRoZSBBUEkga2V5Lgor
ICAgICAgICAoUnVuUHl0aG9uVGVzdHMuc3RhcnQpOiBBZGQgdGhlIEFQSSBrZXkgdG8gdGhlIGVu
dmlyb25tZW50LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcmVzdWx0cy91cGxvYWQucHk6
CisgICAgICAgIChVcGxvYWQpOgorICAgICAgICAoVXBsb2FkLnVwbG9hZCk6IEFkZCBBUElfS0VZ
LCBpZiBpdCBleGlzdHMsIHRvIHRoZSByZXF1ZXN0LgorICAgICAgICAoVXBsb2FkLnVwbG9hZF9h
cmNoaXZlKTogRGl0dG8uCisKIDIwMTktMTAtMDkgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUu
Y29tPgogCiAgICAgICAgIFByb3ZpZGUgYW4gYWx0ZXJuYXRlIGNvbW1hbmQtbGluZSBmbGFnIGZv
ciB0aW1lb3V0IGluIHJ1bi13ZWJraXQtdGVzdHMKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL2xvYWRDb25maWcucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbG9hZENvbmZp
Zy5weQkocmV2aXNpb24gMjUwOTIxKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQu
d2Via2l0Lm9yZy1jb25maWcvbG9hZENvbmZpZy5weQkod29ya2luZyBjb3B5KQpAQCAtNDksOCAr
NDksMTEgQEAgZGVmIGxvYWRCdWlsZGVyQ29uZmlnKGMsIHRlc3RfbW9kZV9pc19lbgogICAgICAg
ICBwYXNzd29yZHMgPSBtYWtlX3Bhc3N3b3Jkc19qc29uLmNyZWF0ZV9tb2NrX3NsYXZlX3Bhc3N3
b3Jkc19kaWN0KCkKICAgICBlbHNlOgogICAgICAgICBwYXNzd29yZHMgPSBqc29uLmxvYWQob3Bl
bigncGFzc3dvcmRzLmpzb24nKSkKLSAgICBjb25maWcgPSBqc29uLmxvYWQob3BlbignY29uZmln
Lmpzb24nKSkKKyAgICByZXN1bHRzX3NlcnZlcl9hcGlfa2V5ID0gcGFzc3dvcmRzLmdldCgncmVz
dWx0cy1zZXJ2ZXItYXBpLWtleScpCisgICAgaWYgcmVzdWx0c19zZXJ2ZXJfYXBpX2tleToKKyAg
ICAgICAgb3MuZW52aXJvblsnUkVTVUxUU19TRVJWRVJfQVBJX0tFWSddID0gcmVzdWx0c19zZXJ2
ZXJfYXBpX2tleQogCisgICAgY29uZmlnID0ganNvbi5sb2FkKG9wZW4oJ2NvbmZpZy5qc29uJykp
CiAgICAgY1snc2xhdmVzJ10gPSBbQnVpbGRTbGF2ZShzbGF2ZVsnbmFtZSddLCBwYXNzd29yZHNb
c2xhdmVbJ25hbWUnXV0sIG1heF9idWlsZHM9MSkgZm9yIHNsYXZlIGluIGNvbmZpZ1snc2xhdmVz
J11dCiAKICAgICBjWydzY2hlZHVsZXJzJ10gPSBbXQpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZV9wYXNzd29yZHNfanNvbi5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZp
Zy9tYWtlX3Bhc3N3b3Jkc19qc29uLnB5CShyZXZpc2lvbiAyNTA5MjEpCisrKyBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYWtlX3Bhc3N3b3Jkc19qc29u
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zMSw3ICszMSw5IEBAIGltcG9ydCBtZDUKIGRlZiBjcmVh
dGVfbW9ja19zbGF2ZV9wYXNzd29yZHNfZGljdCgpOgogICAgIHdpdGggb3BlbignY29uZmlnLmpz
b24nLCAncicpIGFzIGNvbmZpZ19qc29uOgogICAgICAgICBjb25maWdfZGljdCA9IGpzb24ubG9h
ZChjb25maWdfanNvbikKLSAgICByZXR1cm4gZGljdChbKHNsYXZlWyduYW1lJ10sICcxMjM0Jykg
Zm9yIHNsYXZlIGluIGNvbmZpZ19kaWN0WydzbGF2ZXMnXV0pCisgICAgcmVzdWx0ID0gZGljdChb
KHNsYXZlWyduYW1lJ10sICcxMjM0JykgZm9yIHNsYXZlIGluIGNvbmZpZ19kaWN0WydzbGF2ZXMn
XV0pCisgICAgcmVzdWx0WydyZXN1bHRzLXNlcnZlci1hcGkta2V5J10gPSAnYXBpLWtleScKKyAg
ICByZXR1cm4gcmVzdWx0CiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgd2l0aCBv
cGVuKCdwYXNzd29yZHMuanNvbicsICd3JykgYXMgcGFzc3dvcmRzX2ZpbGU6CkluZGV4OiBUb29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9zdGVwcy5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZp
Zy9zdGVwcy5weQkocmV2aXNpb24gMjUwOTIxKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQv
YnVpbGQud2Via2l0Lm9yZy1jb25maWcvc3RlcHMucHkJKHdvcmtpbmcgY29weSkKQEAgLTM1LDYg
KzM1LDggQEAgaW1wb3J0IHVybGxpYgogQVBQTEVfV0VCS0lUX0FXU19QUk9YWSA9ICJodHRwOi8v
cHJveHkwMS53ZWJraXQub3JnOjMxMjgiCiBTM1VSTCA9ICJodHRwczovL3MzLXVzLXdlc3QtMi5h
bWF6b25hd3MuY29tLyIKIFdpdGhQcm9wZXJ0aWVzID0gcHJvcGVydGllcy5XaXRoUHJvcGVydGll
cworUkVTVUxUU19XRUJLSVQgPSAnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcnCitSRVNVTFRT
X1NFUlZFUl9BUElfS0VZID0gJ1JFU1VMVFNfU0VSVkVSX0FQSV9LRVknCiAKIAogY2xhc3MgVGVz
dFdpdGhGYWlsdXJlQ291bnQoc2hlbGwuVGVzdCk6CkBAIC00MTYsMTMgKzQxOCwyMiBAQCBjbGFz
cyBSdW5XZWJLaXRUZXN0cyhzaGVsbC5UZXN0KToKICAgICAgICAgICAgICAgICItLWNsb2JiZXIt
b2xkLXJlc3VsdHMiLAogICAgICAgICAgICAgICAgIi0tYnVpbGRlci1uYW1lIiwgV2l0aFByb3Bl
cnRpZXMoIiUoYnVpbGRlcm5hbWUpcyIpLAogICAgICAgICAgICAgICAgIi0tYnVpbGQtbnVtYmVy
IiwgV2l0aFByb3BlcnRpZXMoIiUoYnVpbGRudW1iZXIpcyIpLAorICAgICAgICAgICAgICAgIi0t
YnVpbGRib3Qtd29ya2VyIiwgV2l0aFByb3BlcnRpZXMoIiUoc2xhdmVuYW1lKXMiKSwKICAgICAg
ICAgICAgICAgICItLW1hc3Rlci1uYW1lIiwgIndlYmtpdC5vcmciLAorICAgICAgICAgICAgICAg
Ii0tYnVpbGRib3QtbWFzdGVyIiwgImJ1aWxkLndlYmtpdC5vcmciLAorICAgICAgICAgICAgICAg
Ii0tcmVwb3J0IiwgUkVTVUxUU19XRUJLSVQsCiAgICAgICAgICAgICAgICAiLS10ZXN0LXJlc3Vs
dHMtc2VydmVyIiwgIndlYmtpdC10ZXN0LXJlc3VsdHMud2Via2l0Lm9yZyIsCiAgICAgICAgICAg
ICAgICAiLS1leGl0LWFmdGVyLW4tY3Jhc2hlcy1vci10aW1lb3V0cyIsICI1MCIsCiAgICAgICAg
ICAgICAgICAiLS1leGl0LWFmdGVyLW4tZmFpbHVyZXMiLCAiNTAwIiwKICAgICAgICAgICAgICAg
IFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCiAKKyAgICBkZWYgX19pbml0
X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAga3dhcmdzWydsb2dFbnZpcm9uJ10g
PSBGYWxzZQorICAgICAgICBzaGVsbC5UZXN0Ll9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3YXJn
cykKKwogICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgc2VsZi5zbGF2ZUVudmlyb25tZW50
W1JFU1VMVFNfU0VSVkVSX0FQSV9LRVldID0gb3MuZ2V0ZW52KFJFU1VMVFNfU0VSVkVSX0FQSV9L
RVkpCisKICAgICAgICAgcGxhdGZvcm0gPSBzZWxmLmdldFByb3BlcnR5KCdwbGF0Zm9ybScpCiAg
ICAgICAgIGFwcGVuZEN1c3RvbVRlc3RpbmdGbGFncyhzZWxmLCBwbGF0Zm9ybSwgc2VsZi5nZXRQ
cm9wZXJ0eSgnZGV2aWNlX21vZGVsJykpCiAgICAgICAgIGFkZGl0aW9uYWxBcmd1bWVudHMgPSBz
ZWxmLmdldFByb3BlcnR5KCdhZGRpdGlvbmFsQXJndW1lbnRzJykKQEAgLTUzMCwxMCArNTQxLDI2
IEBAIGNsYXNzIFJ1bkFQSVRlc3RzKFRlc3RXaXRoRmFpbHVyZUNvdW50KToKICAgICBuYW1lID0g
InJ1bi1hcGktdGVzdHMiCiAgICAgZGVzY3JpcHRpb24gPSBbImFwaSB0ZXN0cyBydW5uaW5nIl0K
ICAgICBkZXNjcmlwdGlvbkRvbmUgPSBbImFwaS10ZXN0cyJdCi0gICAgY29tbWFuZCA9IFsicHl0
aG9uIiwgIi4vVG9vbHMvU2NyaXB0cy9ydW4tYXBpLXRlc3RzIiwgIi0tbm8tYnVpbGQiLCBXaXRo
UHJvcGVydGllcygiLS0lKGNvbmZpZ3VyYXRpb24pcyIpLCAiLS12ZXJib3NlIl0KKyAgICBjb21t
YW5kID0gWworICAgICAgICAicHl0aG9uIiwKKyAgICAgICAgIi4vVG9vbHMvU2NyaXB0cy9ydW4t
YXBpLXRlc3RzIiwKKyAgICAgICAgIi0tbm8tYnVpbGQiLAorICAgICAgICBXaXRoUHJvcGVydGll
cygiLS0lKGNvbmZpZ3VyYXRpb24pcyIpLAorICAgICAgICAiLS12ZXJib3NlIiwKKyAgICAgICAg
Ii0tYnVpbGRib3QtbWFzdGVyIiwgImJ1aWxkLndlYmtpdC5vcmciLAorICAgICAgICAiLS1idWls
ZGVyLW5hbWUiLCBXaXRoUHJvcGVydGllcygiJShidWlsZGVybmFtZSlzIiksCisgICAgICAgICIt
LWJ1aWxkLW51bWJlciIsIFdpdGhQcm9wZXJ0aWVzKCIlKGJ1aWxkbnVtYmVyKXMiKSwKKyAgICAg
ICAgIi0tYnVpbGRib3Qtd29ya2VyIiwgV2l0aFByb3BlcnRpZXMoIiUoc2xhdmVuYW1lKXMiKSwK
KyAgICAgICAgIi0tcmVwb3J0IiwgUkVTVUxUU19XRUJLSVQsCisgICAgXQogICAgIGZhaWxlZFRl
c3RzRm9ybWF0U3RyaW5nID0gIiVkIGFwaSB0ZXN0JXMgZmFpbGVkIG9yIHRpbWVkIG91dCIKIAor
ICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBrd2FyZ3Nb
J2xvZ0Vudmlyb24nXSA9IEZhbHNlCisgICAgICAgIFRlc3RXaXRoRmFpbHVyZUNvdW50Ll9faW5p
dF9fKHNlbGYsICphcmdzLCAqKmt3YXJncykKKwogICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAg
ICAgc2VsZi5zbGF2ZUVudmlyb25tZW50W1JFU1VMVFNfU0VSVkVSX0FQSV9LRVldID0gb3MuZ2V0
ZW52KFJFU1VMVFNfU0VSVkVSX0FQSV9LRVkpCiAgICAgICAgIGFwcGVuZEN1c3RvbVRlc3RpbmdG
bGFncyhzZWxmLCBzZWxmLmdldFByb3BlcnR5KCdwbGF0Zm9ybScpLCBzZWxmLmdldFByb3BlcnR5
KCdkZXZpY2VfbW9kZWwnKSkKICAgICAgICAgcmV0dXJuIHNoZWxsLlRlc3Quc3RhcnQoc2VsZikK
IApAQCAtNTUwLDEwICs1NzcsMjYgQEAgY2xhc3MgUnVuUHl0aG9uVGVzdHMoVGVzdFdpdGhGYWls
dXJlQ291bgogICAgIG5hbWUgPSAid2Via2l0cHktdGVzdCIKICAgICBkZXNjcmlwdGlvbiA9IFsi
cHl0aG9uLXRlc3RzIHJ1bm5pbmciXQogICAgIGRlc2NyaXB0aW9uRG9uZSA9IFsicHl0aG9uLXRl
c3RzIl0KLSAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi9Ub29scy9TY3JpcHRzL3Rlc3Qtd2Vi
a2l0cHkiLCAiLS12ZXJib3NlIiwgV2l0aFByb3BlcnRpZXMoIi0tJShjb25maWd1cmF0aW9uKXMi
KV0KKyAgICBjb21tYW5kID0gWworICAgICAgICAicHl0aG9uIiwKKyAgICAgICAgIi4vVG9vbHMv
U2NyaXB0cy90ZXN0LXdlYmtpdHB5IiwKKyAgICAgICAgIi0tdmVyYm9zZSIsCisgICAgICAgIFdp
dGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIiksCisgICAgICAgICItLWJ1aWxkYm90
LW1hc3RlciIsICJidWlsZC53ZWJraXQub3JnIiwKKyAgICAgICAgIi0tYnVpbGRlci1uYW1lIiwg
V2l0aFByb3BlcnRpZXMoIiUoYnVpbGRlcm5hbWUpcyIpLAorICAgICAgICAiLS1idWlsZC1udW1i
ZXIiLCBXaXRoUHJvcGVydGllcygiJShidWlsZG51bWJlcilzIiksCisgICAgICAgICItLWJ1aWxk
Ym90LXdvcmtlciIsIFdpdGhQcm9wZXJ0aWVzKCIlKHNsYXZlbmFtZSlzIiksCisgICAgICAgICIt
LXJlcG9ydCIsIFJFU1VMVFNfV0VCS0lULAorICAgIF0KICAgICBmYWlsZWRUZXN0c0Zvcm1hdFN0
cmluZyA9ICIlZCBweXRob24gdGVzdCVzIGZhaWxlZCIKIAorICAgIGRlZiBfX2luaXRfXyhzZWxm
LCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBrd2FyZ3NbJ2xvZ0Vudmlyb24nXSA9IEZhbHNl
CisgICAgICAgIFRlc3RXaXRoRmFpbHVyZUNvdW50Ll9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3
YXJncykKKwogICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgc2VsZi5zbGF2ZUVudmlyb25t
ZW50W1JFU1VMVFNfU0VSVkVSX0FQSV9LRVldID0gb3MuZ2V0ZW52KFJFU1VMVFNfU0VSVkVSX0FQ
SV9LRVkpCisKICAgICAgICAgcGxhdGZvcm0gPSBzZWxmLmdldFByb3BlcnR5KCdwbGF0Zm9ybScp
CiAgICAgICAgICMgUHl0aG9uIHRlc3RzIGFyZSBmbGFreSBvbiB0aGUgR1RLIGJ1aWxkZXJzLCBy
dW5uaW5nIHRoZW0gc2VyaWFsbHkKICAgICAgICAgIyBoZWxwcyBhbmQgZG9lcyBub3Qgc2lnbmlm
aWNhbnRseSBwcm9sb25nIHRoZSBjeWNsZSB0aW1lLgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9yZXN1bHRzL3VwbG9hZC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3Jlc3VsdHMvdXBsb2FkLnB5CShyZXZpc2lvbiAyNTA5MjEpCisrKyBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2FkLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yMiw2ICsyMiw3
IEBACiAKIGltcG9ydCB3ZWJraXRweS50aGlyZHBhcnR5LmF1dG9pbnN0YWxsZWQucmVxdWVzdHMK
IAoraW1wb3J0IG9zCiBpbXBvcnQganNvbgogaW1wb3J0IHJlcXVlc3RzCiBpbXBvcnQgc3lzCkBA
IC0zMSw2ICszMiw3IEBAIGltcG9ydCBwbGF0Zm9ybSBhcyBob3N0X3BsYXRmb3JtCiAKIAogY2xh
c3MgVXBsb2FkKG9iamVjdCk6CisgICAgQVBJX0tFWSA9IG9zLmdldGVudignUkVTVUxUU19TRVJW
RVJfQVBJX0tFWScpCiAgICAgVVBMT0FEX0VORFBPSU5UID0gJy9hcGkvdXBsb2FkJwogICAgIEFS
Q0hJVkVfVVBMT0FEX0VORFBPSU5UID0gJy9hcGkvdXBsb2FkL2FyY2hpdmUnCiAgICAgQlVJTERC
T1RfREVUQUlMUyA9IFsnYnVpbGRib3QtbWFzdGVyJywgJ2J1aWxkZXItbmFtZScsICdidWlsZC1u
dW1iZXInLCAnYnVpbGRib3Qtd29ya2VyJ10KQEAgLTE2OSw3ICsxNzEsMTQgQEAgY2xhc3MgVXBs
b2FkKG9iamVjdCk6CiAKICAgICBkZWYgdXBsb2FkKHNlbGYsIGhvc3RuYW1lLCBsb2dfbGluZV9m
dW5jPWxhbWJkYSB2YWw6IHN5cy5zdGRvdXQud3JpdGUodmFsICsgJ1xuJykpOgogICAgICAgICB0
cnk6Ci0gICAgICAgICAgICByZXNwb25zZSA9IHJlcXVlc3RzLnBvc3QoJ3t9e30nLmZvcm1hdCho
b3N0bmFtZSwgc2VsZi5VUExPQURfRU5EUE9JTlQpLCBkYXRhPWpzb24uZHVtcHMoc2VsZiwgY2xz
PVVwbG9hZC5FbmNvZGVyKSkKKyAgICAgICAgICAgIGRhdGEgPSBVcGxvYWQuRW5jb2RlcigpLmRl
ZmF1bHQoc2VsZikKKyAgICAgICAgICAgIGlmIHNlbGYuQVBJX0tFWToKKyAgICAgICAgICAgICAg
ICBkYXRhWydhcGlfa2V5J10gPSBzZWxmLkFQSV9LRVkKKyAgICAgICAgICAgIHJlc3BvbnNlID0g
cmVxdWVzdHMucG9zdCgKKyAgICAgICAgICAgICAgICAne317fScuZm9ybWF0KGhvc3RuYW1lLCBz
ZWxmLlVQTE9BRF9FTkRQT0lOVCksCisgICAgICAgICAgICAgICAgaGVhZGVycz17J0NvbnRlbnQt
dHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ30sCisgICAgICAgICAgICAgICAgZGF0YT1qc29uLmR1
bXBzKGRhdGEpLAorICAgICAgICAgICAgKQogICAgICAgICBleGNlcHQgcmVxdWVzdHMuZXhjZXB0
aW9ucy5Db25uZWN0aW9uRXJyb3I6CiAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDQg
KyAnRmFpbGVkIHRvIHVwbG9hZCB0byB7fSwgcmVzdWx0cyBzZXJ2ZXIgbm90IG9ubGluZScuZm9y
bWF0KGhvc3RuYW1lKSkKICAgICAgICAgICAgIHJldHVybiBGYWxzZQpAQCAtMTc5LDcgKzE4OCwx
MSBAQCBjbGFzcyBVcGxvYWQob2JqZWN0KToKIAogICAgICAgICBpZiByZXNwb25zZS5zdGF0dXNf
Y29kZSAhPSAyMDA6CiAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDQgKyAnRXJyb3Ig
dXBsb2FkaW5nIHRvIHt9Jy5mb3JtYXQoaG9zdG5hbWUpKQotICAgICAgICAgICAgbG9nX2xpbmVf
ZnVuYygnICcgKiA4ICsgcmVzcG9uc2UuanNvbigpLmdldCgnZGVzY3JpcHRpb24nKSkKKyAgICAg
ICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDggKyByZXNw
b25zZS5qc29uKCkuZ2V0KCdkZXNjcmlwdGlvbicpKQorICAgICAgICAgICAgZXhjZXB0IFZhbHVl
RXJyb3I6CisgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gcmVzcG9uc2UudGV4dC5zcGxpdGxp
bmVzKCk6CisgICAgICAgICAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogOCArIGxpbmUp
CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIAogICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAq
IDQgKyAnVXBsb2FkZWQgcmVzdWx0cyB0byB7fScuZm9ybWF0KGhvc3RuYW1lKSkKQEAgLTE5NSw2
ICsyMDgsOSBAQCBjbGFzcyBVcGxvYWQob2JqZWN0KToKICAgICAgICAgICAgICkKICAgICAgICAg
ICAgIGlmIHNlbGYudGltZXN0YW1wOgogICAgICAgICAgICAgICAgIG1ldGFfZGF0YVsndGltZXN0
YW1wJ10gPSBzZWxmLnRpbWVzdGFtcAorICAgICAgICAgICAgaWYgc2VsZi5BUElfS0VZOgorICAg
ICAgICAgICAgICAgIG1ldGFfZGF0YVsnYXBpX2tleSddID0gc2VsZi5BUElfS0VZCisgICAgICAg
ICAgICBtZXRhX2RhdGFbJ0NvbnRlbnQtdHlwZSddID0gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVh
bScKICAgICAgICAgICAgIHJlc3BvbnNlID0gcmVxdWVzdHMucG9zdCgKICAgICAgICAgICAgICAg
ICAne317fScuZm9ybWF0KGhvc3RuYW1lLCBzZWxmLkFSQ0hJVkVfVVBMT0FEX0VORFBPSU5UKSwK
ICAgICAgICAgICAgICAgICBkYXRhPW1ldGFfZGF0YSwKQEAgLTIxMCw3ICsyMjYsMTEgQEAgY2xh
c3MgVXBsb2FkKG9iamVjdCk6CiAKICAgICAgICAgaWYgcmVzcG9uc2Uuc3RhdHVzX2NvZGUgIT0g
MjAwOgogICAgICAgICAgICAgbG9nX2xpbmVfZnVuYygnICcgKiA0ICsgJ0Vycm9yIHVwbG9hZGlu
ZyBhcmNoaXZlIHRvIHt9Jy5mb3JtYXQoaG9zdG5hbWUpKQotICAgICAgICAgICAgbG9nX2xpbmVf
ZnVuYygnICcgKiA4ICsgcmVzcG9uc2UuanNvbigpLmdldCgnZGVzY3JpcHRpb24nKSkKKyAgICAg
ICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAqIDggKyByZXNw
b25zZS5qc29uKCkuZ2V0KCdkZXNjcmlwdGlvbicpKQorICAgICAgICAgICAgZXhjZXB0IFZhbHVl
RXJyb3I6CisgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gcmVzcG9uc2UudGV4dC5zcGxpdGxp
bmVzKCk6CisgICAgICAgICAgICAgICAgICAgIGxvZ19saW5lX2Z1bmMoJyAnICogOCArIGxpbmUp
CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIAogICAgICAgICBsb2dfbGluZV9mdW5jKCcgJyAq
IDQgKyAnVXBsb2FkZWQgdGVzdCBhcmNoaXZlIHRvIHt9Jy5mb3JtYXQoaG9zdG5hbWUpKQpJbmRl
eDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9yZXN1bHRzL3VwbG9hZF91bml0dGVzdC5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMvdXBsb2FkX3VuaXR0ZXN0
LnB5CShyZXZpc2lvbiAyNTA5MjEpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Jlc3VsdHMv
dXBsb2FkX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0xMjYsMTUgKzEyNiwxNSBAQCBj
bGFzcyBVcGxvYWRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgICldLAogICAg
ICAgICApCiAKLSAgICAgICAgd2l0aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxh
bWJkYSB1cmwsIGRhdGE6IHNlbGYuTW9ja1Jlc3BvbnNlKCkpOgorICAgICAgICB3aXRoIG1vY2su
cGF0Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycz17fSwgZGF0YT17
fTogc2VsZi5Nb2NrUmVzcG9uc2UoKSk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodXBs
b2FkLnVwbG9hZCgnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcnLCBsb2dfbGluZV9mdW5jPWxh
bWJkYSBfOiBOb25lKSkKIAotICAgICAgICB3aXRoIG1vY2sucGF0Y2goJ3JlcXVlc3RzLnBvc3Qn
LCBuZXc9bGFtYmRhIHVybCwgZGF0YTogc2VsZi5yYWlzZV9yZXF1ZXN0c19Db25uZWN0aW9uRXJy
b3IoKSk6CisgICAgICAgIHdpdGggbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1i
ZGEgdXJsLCBoZWFkZXJzPXt9LCBkYXRhPXt9OiBzZWxmLnJhaXNlX3JlcXVlc3RzX0Nvbm5lY3Rp
b25FcnJvcigpKToKICAgICAgICAgICAgIGxpbmVzID0gW10KICAgICAgICAgICAgIHNlbGYuYXNz
ZXJ0RmFsc2UodXBsb2FkLnVwbG9hZCgnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcnLCBsb2df
bGluZV9mdW5jPWxhbWJkYSBsaW5lOiBsaW5lcy5hcHBlbmQobGluZSkpKQogICAgICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChbJyAnICogNCArICdGYWlsZWQgdG8gdXBsb2FkIHRvIGh0dHBzOi8v
cmVzdWx0cy53ZWJraXQub3JnLCByZXN1bHRzIHNlcnZlciBub3Qgb25saW5lJ10sIGxpbmVzKQog
Ci0gICAgICAgIG1vY2tfNDA0ID0gbW9jay5wYXRjaCgncmVxdWVzdHMucG9zdCcsIG5ldz1sYW1i
ZGEgdXJsLCBkYXRhOiBzZWxmLk1vY2tSZXNwb25zZSgKKyAgICAgICAgbW9ja180MDQgPSBtb2Nr
LnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRlcnM9e30sIGRhdGE9
e306IHNlbGYuTW9ja1Jlc3BvbnNlKAogICAgICAgICAgICAgc3RhdHVzX2NvZGU9NDA0LAogICAg
ICAgICAgICAgdGV4dD1qc29uLmR1bXBzKGRpY3QoZGVzY3JpcHRpb249J05vIHN1Y2ggYWRkcmVz
cycpKSwKICAgICAgICAgKSkKQEAgLTIyNywxNSArMjI3LDE1IEBAIGNsYXNzIFVwbG9hZFRlc3Qo
dW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICAgICAgKV0sCiAgICAgICAgICkKIAotICAgICAg
ICB3aXRoIG1vY2sucGF0Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgZGF0YSwg
ZmlsZXM6IHNlbGYuTW9ja1Jlc3BvbnNlKCkpOgorICAgICAgICB3aXRoIG1vY2sucGF0Y2goJ3Jl
cXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycz17fSwgZGF0YT17fSwgZmlsZXM9
e306IHNlbGYuTW9ja1Jlc3BvbnNlKCkpOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVw
bG9hZC51cGxvYWRfYXJjaGl2ZSgnaHR0cHM6Ly9yZXN1bHRzLndlYmtpdC5vcmcnLCBhcmNoaXZl
PSdjb250ZW50JywgbG9nX2xpbmVfZnVuYz1sYW1iZGEgXzogTm9uZSkpCiAKLSAgICAgICAgd2l0
aCBtb2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGRhdGEsIGZpbGVz
OiBzZWxmLnJhaXNlX3JlcXVlc3RzX0Nvbm5lY3Rpb25FcnJvcigpKToKKyAgICAgICAgd2l0aCBt
b2NrLnBhdGNoKCdyZXF1ZXN0cy5wb3N0JywgbmV3PWxhbWJkYSB1cmwsIGhlYWRlcnM9e30sIGRh
dGE9e30sIGZpbGVzPXt9OiBzZWxmLnJhaXNlX3JlcXVlc3RzX0Nvbm5lY3Rpb25FcnJvcigpKToK
ICAgICAgICAgICAgIGxpbmVzID0gW10KICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UodXBs
b2FkLnVwbG9hZF9hcmNoaXZlKCdodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZycsIGFyY2hpdmU9
J2NvbnRlbnQnLCBsb2dfbGluZV9mdW5jPWxhbWJkYSBsaW5lOiBsaW5lcy5hcHBlbmQobGluZSkp
KQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJyAnICogNCArICdGYWlsZWQgdG8gdXBs
b2FkIHRlc3QgYXJjaGl2ZSB0byBodHRwczovL3Jlc3VsdHMud2Via2l0Lm9yZywgcmVzdWx0cyBz
ZXJ2ZXIgbm90IG9ubGluZSddLCBsaW5lcykKIAotICAgICAgICBtb2NrXzQwNCA9IG1vY2sucGF0
Y2goJ3JlcXVlc3RzLnBvc3QnLCBuZXc9bGFtYmRhIHVybCwgZGF0YSwgZmlsZXM6IHNlbGYuTW9j
a1Jlc3BvbnNlKAorICAgICAgICBtb2NrXzQwNCA9IG1vY2sucGF0Y2goJ3JlcXVlc3RzLnBvc3Qn
LCBuZXc9bGFtYmRhIHVybCwgaGVhZGVycz17fSwgZGF0YT17fSwgZmlsZXM9e306IHNlbGYuTW9j
a1Jlc3BvbnNlKAogICAgICAgICAgICAgc3RhdHVzX2NvZGU9NDA0LAogICAgICAgICAgICAgdGV4
dD1qc29uLmR1bXBzKGRpY3QoZGVzY3JpcHRpb249J05vIHN1Y2ggYWRkcmVzcycpKSwKICAgICAg
ICAgKSkK
</data>
<flag name="review"
          id="396310"
          type_id="1"
          status="+"
          setter="dewei_zhu"
    />
          </attachment>
      

    </bug>

</bugzilla>