<?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>200146</bug_id>
          
          <creation_ts>2019-07-25 17:13:45 -0700</creation_ts>
          <short_desc>results.webkit.org: Support buildbot 0.8 CI links</short_desc>
          <delta_ts>2019-07-29 09:18:38 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>commit-queue</cc>
    
    <cc>ryanhaddad</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1555980</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-25 17:13:45 -0700</bug_when>
    <thetext>At the moment, the results database only supports buildbot 0.9 and above. We should add a factory for buildbot 0.8 too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555981</commentid>
    <comment_count>1</comment_count>
      <attachid>374926</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-25 17:19:34 -0700</bug_when>
    <thetext>Created attachment 374926
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556103</commentid>
    <comment_count>2</comment_count>
      <attachid>374926</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 08:30:17 -0700</bug_when>
    <thetext>Comment on attachment 374926
Patch

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

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:210
&gt; +class OldBuildbotURLFactory(object):

Old is relative. After few years, Buildbot 1 or Buildbot 2 might seem old. Better to name it something like: BuildbotEightURLFactory

In http://trac.webkit.org/browser/webkit/trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js#L74, we used VERSION_LESS_THAN_09, but that name seems more relevant to flag name rather than class name.

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:217
&gt; +        if builder_name and not worker_name:

Should we add an assert/log here that should_fetch should always be False here?

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:219
&gt; +                return self.SCHEME + urllib.parse.quote(f&apos;{self.master}/builders/{builder_name}/builds/{build_number}&apos;)

why not just have self.SCHEME also inside urlib.parse.quote to keep the complete url together.

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:223
&gt; +        return None

what if both builder_name and worker_name is passed? We should atleast return an error message or log an error.

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context_unittest.py:262
&gt; +        self.assertEqual(&apos;https://build.webkit.org/builders/Apple%20Mojave%20Release%20%28Build%29/builds/7170&apos;, factory.url(builder_name=&apos;Apple Mojave Release (Build)&apos;, build_number=7170))

Please add a test case for the scenario when both builder_name and worker_name are specified. Also for the case when none of them is specified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556110</commentid>
    <comment_count>3</comment_count>
      <attachid>374926</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-26 08:49:18 -0700</bug_when>
    <thetext>Comment on attachment 374926
Patch

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

&gt;&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:217
&gt;&gt; +        if builder_name and not worker_name:
&gt; 
&gt; Should we add an assert/log here that should_fetch should always be False here?

No, because this class needs to be a drop in replacement for BuildbotURLFactory, which needs to talk to the buildbot instance to construct URLs. That&apos;s basically what should_fetch is used for, it&apos;s value doesn&apos;t matter in this class.

&gt;&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:219
&gt;&gt; +                return self.SCHEME + urllib.parse.quote(f&apos;{self.master}/builders/{builder_name}/builds/{build_number}&apos;)
&gt; 
&gt; why not just have self.SCHEME also inside urlib.parse.quote to keep the complete url together.

Because urlib.parse.quote will escape :

&gt;&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:223
&gt;&gt; +        return None
&gt; 
&gt; what if both builder_name and worker_name is passed? We should atleast return an error message or log an error.

We really don&apos;t want to actually return an error message, the error would get saved in the database as the url. We can&apos;t raise an exception because this would prevent the URLs from being saved into the database. We could log an error, but we didn&apos;t do that in BuildbotURLFactory (so we&apos;d need to do it there too). The caller is aware that this function could return None (more likely with BuildbotURLFactory than it is with this class anyways, since it will return None if the builder_name/worker_name doesn&apos;t exist) so I don&apos;t know how helpful logging the error would be. We can add that if you&apos;d like, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556115</commentid>
    <comment_count>4</comment_count>
      <attachid>374967</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-26 08:58:22 -0700</bug_when>
    <thetext>Created attachment 374967
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556148</commentid>
    <comment_count>5</comment_count>
      <attachid>374926</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 10:39:55 -0700</bug_when>
    <thetext>Comment on attachment 374926
Patch

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

&gt;&gt;&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:223
&gt;&gt;&gt; +        return None
&gt;&gt; 
&gt;&gt; what if both builder_name and worker_name is passed? We should atleast return an error message or log an error.
&gt; 
&gt; We really don&apos;t want to actually return an error message, the error would get saved in the database as the url. We can&apos;t raise an exception because this would prevent the URLs from being saved into the database. We could log an error, but we didn&apos;t do that in BuildbotURLFactory (so we&apos;d need to do it there too). The caller is aware that this function could return None (more likely with BuildbotURLFactory than it is with this class anyways, since it will return None if the builder_name/worker_name doesn&apos;t exist) so I don&apos;t know how helpful logging the error would be. We can add that if you&apos;d like, though.

Yeah, let&apos;s add a log (in both the classes). Add it, would make it clear in the code as well, that case is currently hidden in the if-else, and reading the code doesn&apos;t make it obvious. We can occasionally grep the logs for such error message to find out if this condition ever happened.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556150</commentid>
    <comment_count>6</comment_count>
      <attachid>374967</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 10:40:29 -0700</bug_when>
    <thetext>Comment on attachment 374967
Patch

r+ with comment about adding a log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556157</commentid>
    <comment_count>7</comment_count>
      <attachid>374974</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-26 11:00:23 -0700</bug_when>
    <thetext>Created attachment 374974
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556159</commentid>
    <comment_count>8</comment_count>
      <attachid>374974</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 11:08:06 -0700</bug_when>
    <thetext>Comment on attachment 374974
Patch

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

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context.py:225
&gt; +        logging.error(&apos;No URL can be generated for the provided combination&apos;)

I preferred specific elif, something like:

elif builder_name and worker_name:
    logging.error(&apos;Both builder_name and worker_name provided to generate URL, please provide only one.&apos;)

better yet, maybe just default to constructing builder_name url, if both builder_name and worker_name are provided.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556173</commentid>
    <comment_count>9</comment_count>
      <attachid>374978</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-26 11:34:50 -0700</bug_when>
    <thetext>Created attachment 374978
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556175</commentid>
    <comment_count>10</comment_count>
      <attachid>374978</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 11:41:43 -0700</bug_when>
    <thetext>Comment on attachment 374978
Patch

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

lgtm

&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context_unittest.py:255
&gt; +            self.assertEqual(&apos;https://build.webkit.org/#/builders/1&apos;, factory.url(builder_name=&apos;Mojave-Release-Builder&apos;, worker_name=&apos;builder1&apos;, should_fetch=True))

Nit: we should also test the case when builder_name is provided but worker_name is not provided.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556186</commentid>
    <comment_count>11</comment_count>
      <attachid>374978</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-07-26 11:53:42 -0700</bug_when>
    <thetext>Comment on attachment 374978
Patch

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

&gt;&gt; Tools/resultsdbpy/resultsdbpy/model/ci_context_unittest.py:255
&gt;&gt; +            self.assertEqual(&apos;https://build.webkit.org/#/builders/1&apos;, factory.url(builder_name=&apos;Mojave-Release-Builder&apos;, worker_name=&apos;builder1&apos;, should_fetch=True))
&gt; 
&gt; Nit: we should also test the case when builder_name is provided but worker_name is not provided.

We already do, line 235</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556188</commentid>
    <comment_count>12</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2019-07-26 11:56:39 -0700</bug_when>
    <thetext>&gt; We already do, line 235
ok, wasn&apos;t easily visible in the review window. lgtm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556198</commentid>
    <comment_count>13</comment_count>
      <attachid>374978</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-26 12:19:42 -0700</bug_when>
    <thetext>Comment on attachment 374978
Patch

Clearing flags on attachment: 374978

Committed r247870: &lt;https://trac.webkit.org/changeset/247870&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556199</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-26 12:19:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556578</commentid>
    <comment_count>15</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-29 09:18:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/53664310&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374926</attachid>
            <date>2019-07-25 17:19:34 -0700</date>
            <delta_ts>2019-07-26 08:58:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200146-20190725171933.patch</filename>
            <type>text/plain</type>
            <size>4446</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0Nzg0NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDE5LTA3LTI1ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN1cHBvcnQgYnVpbGRib3QgMC44IENJ
IGxpbmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDAxNDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHk6CisgICAgICAgIChP
bGRCdWlsZGJvdFVSTEZhY3RvcnkpOiBCdWlsZGJvdCAwLjggbGluayBmYWN0b3J5LgorICAgICAg
ICAoT2xkQnVpbGRib3RVUkxGYWN0b3J5Ll9faW5pdF9fKToKKyAgICAgICAgKE9sZEJ1aWxkYm90
VVJMRmFjdG9yeS51cmwpOgorICAgICAgICAqIHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVs
L2NpX2NvbnRleHRfdW5pdHRlc3QucHk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdC50ZXN0X29s
ZF9idWlsZGVyX3VybCk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdCk6CisgICAgICAgIChVUkxG
YWN0b3J5VGVzdC50ZXN0X29sZF93b3JrZXJfdXJsKToKKwogMjAxOS0wNy0yNSAgWmhpZmVpIEZh
bmcgIDx6aGlmZWlfZmFuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgW1RpbWVsaW5lXTogTWFrZSB0
aW1lbGluZSBoZWFkZXIgd2lkdGggYXV0b21hdGljLCBpbnN0ZWFkIG9mIGZpeGVkIHdpZHRoCklu
ZGV4OiBUb29scy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jaV9jb250ZXh0LnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRl
eHQucHkJKHJldmlzaW9uIDI0Nzg0MykKKysrIFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5
L21vZGVsL2NpX2NvbnRleHQucHkJKHdvcmtpbmcgY29weSkKQEAgLTI1LDYgKzI1LDcgQEAgaW1w
b3J0IGpzb24KIGltcG9ydCByZXF1ZXN0cwogaW1wb3J0IHN5cwogaW1wb3J0IHRpbWUKK2ltcG9y
dCB1cmxsaWIucGFyc2UKIAogZnJvbSBjYXNzYW5kcmEuY3FsZW5naW5lIGltcG9ydCBjb2x1bW5z
CiBmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQpAQCAtMjA2LDYgKzIwNywyMiBAQCBjbGFz
cyBDSUNvbnRleHQoVXBsb2FkQ2FsbGJhY2tDb250ZXh0KToKICAgICAgICAgcmV0dXJuIHNlbGYu
X2ZpbmRfdXJscyhzZWxmLlVSTHNCeVN0YXJ0VGltZSwgKmFyZ3MsICoqa3dhcmdzKQogCiAKK2Ns
YXNzIE9sZEJ1aWxkYm90VVJMRmFjdG9yeShvYmplY3QpOgorICAgIFNDSEVNRSA9ICdodHRwczov
LycKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBtYXN0ZXIpOgorICAgICAgICBzZWxmLm1hc3Rl
ciA9IG1hc3RlcgorCisgICAgZGVmIHVybChzZWxmLCBidWlsZGVyX25hbWU9Tm9uZSwgYnVpbGRf
bnVtYmVyPU5vbmUsIHdvcmtlcl9uYW1lPU5vbmUsIHNob3VsZF9mZXRjaD1GYWxzZSk6CisgICAg
ICAgIGlmIGJ1aWxkZXJfbmFtZSBhbmQgbm90IHdvcmtlcl9uYW1lOgorICAgICAgICAgICAgaWYg
YnVpbGRfbnVtYmVyOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLlNDSEVNRSArIHVybGxp
Yi5wYXJzZS5xdW90ZShmJ3tzZWxmLm1hc3Rlcn0vYnVpbGRlcnMve2J1aWxkZXJfbmFtZX0vYnVp
bGRzL3tidWlsZF9udW1iZXJ9JykKKyAgICAgICAgICAgIHJldHVybiBzZWxmLlNDSEVNRSArIHVy
bGxpYi5wYXJzZS5xdW90ZShmJ3tzZWxmLm1hc3Rlcn0vYnVpbGRlcnMve2J1aWxkZXJfbmFtZX0n
KQorICAgICAgICBlbGlmIHdvcmtlcl9uYW1lIGFuZCBub3QgYnVpbGRlcl9uYW1lIGFuZCBub3Qg
YnVpbGRfbnVtYmVyOgorICAgICAgICAgICAgcmV0dXJuIGYne3NlbGYuU0NIRU1FfXtzZWxmLm1h
c3Rlcn0vYnVpbGRzbGF2ZXMve3dvcmtlcl9uYW1lfScKKyAgICAgICAgcmV0dXJuIE5vbmUKKwor
CiBjbGFzcyBCdWlsZGJvdFVSTEZhY3Rvcnkob2JqZWN0KToKICAgICBTQ0hFTUUgPSAnaHR0cHM6
Ly8nCiAgICAgQlVJTERFUl9LRVkgPSAnX2J1aWxkZXJfJwpJbmRleDogVG9vbHMvcmVzdWx0c2Ri
cHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dF91bml0dGVzdC5weQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jaV9jb250ZXh0X3VuaXR0ZXN0
LnB5CShyZXZpc2lvbiAyNDc4NDMpCisrKyBUb29scy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9t
b2RlbC9jaV9jb250ZXh0X3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0yOSw3ICsyOSw3
IEBAIGltcG9ydCB1bml0dGVzdAogZnJvbSBmYWtlcmVkaXMgaW1wb3J0IEZha2VTdHJpY3RSZWRp
cwogZnJvbSByZWRpcyBpbXBvcnQgU3RyaWN0UmVkaXMKIGZyb20gcmVzdWx0c2RicHkubW9kZWwu
Y2Fzc2FuZHJhX2NvbnRleHQgaW1wb3J0IENhc3NhbmRyYUNvbnRleHQKLWZyb20gcmVzdWx0c2Ri
cHkubW9kZWwuY2lfY29udGV4dCBpbXBvcnQgQnVpbGRib3RVUkxGYWN0b3J5LCBDSUNvbnRleHQK
K2Zyb20gcmVzdWx0c2RicHkubW9kZWwuY2lfY29udGV4dCBpbXBvcnQgQnVpbGRib3RVUkxGYWN0
b3J5LCBDSUNvbnRleHQsIE9sZEJ1aWxkYm90VVJMRmFjdG9yeQogZnJvbSByZXN1bHRzZGJweS5j
b250cm9sbGVyLmNvbmZpZ3VyYXRpb24gaW1wb3J0IENvbmZpZ3VyYXRpb24KIGZyb20gcmVzdWx0
c2RicHkubW9kZWwubW9ja19jYXNzYW5kcmFfY29udGV4dCBpbXBvcnQgTW9ja0Nhc3NhbmRyYUNv
bnRleHQKIGZyb20gcmVzdWx0c2RicHkubW9kZWwubW9ja19tb2RlbF9mYWN0b3J5IGltcG9ydCBN
b2NrTW9kZWxGYWN0b3J5CkBAIC0yNTUsNiArMjU1LDE3IEBAIGNsYXNzIFVSTEZhY3RvcnlUZXN0
KFdhaXRGb3JEb2NrZXJUZXN0Q2EKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZhY3Rv
cnkudXJsKGJ1aWxkZXJfbmFtZT0nTW9qYXZlLVJlbGVhc2UtQnVpbGRlcicsIGJ1aWxkX251bWJl
cj0xLCB3b3JrZXJfbmFtZT0nYnVpbGRlcjEnLCBzaG91bGRfZmV0Y2g9VHJ1ZSkpCiAgICAgICAg
ICAgICBzZWxmLmFzc2VydElzTm9uZShmYWN0b3J5LnVybChidWlsZF9udW1iZXI9MSwgd29ya2Vy
X25hbWU9J2J1aWxkZXIxJywgc2hvdWxkX2ZldGNoPVRydWUpKQogCisgICAgZGVmIHRlc3Rfb2xk
X2J1aWxkZXJfdXJsKHNlbGYpOgorICAgICAgICBmYWN0b3J5ID0gT2xkQnVpbGRib3RVUkxGYWN0
b3J5KG1hc3Rlcj0nYnVpbGQud2Via2l0Lm9yZycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
J2h0dHBzOi8vYnVpbGQud2Via2l0Lm9yZy9idWlsZGVycy9BcHBsZSUyME1vamF2ZSUyMFJlbGVh
c2UlMjBXSzIlMjAlMjhUZXN0cyUyOScsIGZhY3RvcnkudXJsKGJ1aWxkZXJfbmFtZT0nQXBwbGUg
TW9qYXZlIFJlbGVhc2UgV0syIChUZXN0cyknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn
aHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzL0FwcGxlJTIwTW9qYXZlJTIwUmVsZWFz
ZSUyMCUyOEJ1aWxkJTI5JywgZmFjdG9yeS51cmwoYnVpbGRlcl9uYW1lPSdBcHBsZSBNb2phdmUg
UmVsZWFzZSAoQnVpbGQpJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2h0dHBzOi8vYnVp
bGQud2Via2l0Lm9yZy9idWlsZGVycy9BcHBsZSUyME1vamF2ZSUyMFJlbGVhc2UlMjAlMjhCdWls
ZCUyOS9idWlsZHMvNzE3MCcsIGZhY3RvcnkudXJsKGJ1aWxkZXJfbmFtZT0nQXBwbGUgTW9qYXZl
IFJlbGVhc2UgKEJ1aWxkKScsIGJ1aWxkX251bWJlcj03MTcwKSkKKworICAgIGRlZiB0ZXN0X29s
ZF93b3JrZXJfdXJsKHNlbGYpOgorICAgICAgICBmYWN0b3J5ID0gT2xkQnVpbGRib3RVUkxGYWN0
b3J5KG1hc3Rlcj0nYnVpbGQud2Via2l0Lm9yZycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
J2h0dHBzOi8vYnVpbGQud2Via2l0Lm9yZy9idWlsZHNsYXZlcy9ib3Q2MTAnLCBmYWN0b3J5LnVy
bCh3b3JrZXJfbmFtZT0nYm90NjEwJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2h0dHBz
Oi8vYnVpbGQud2Via2l0Lm9yZy9idWlsZHNsYXZlcy9ib3Q2MTEnLCBmYWN0b3J5LnVybCh3b3Jr
ZXJfbmFtZT0nYm90NjExJykpCisKIAogY2xhc3MgQ0lDb250ZXh0VGVzdChXYWl0Rm9yRG9ja2Vy
VGVzdENhc2UpOgogICAgIEtFWVNQQUNFID0gJ3N1aXRlX2NvbnRleHRfdGVzdF9rZXlzcGFjZScK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374967</attachid>
            <date>2019-07-26 08:58:22 -0700</date>
            <delta_ts>2019-07-26 11:00:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200146-20190726085819.patch</filename>
            <type>text/plain</type>
            <size>4633</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0Nzg2MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDE5LTA3LTI2ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN1cHBvcnQgYnVpbGRib3QgMC44IENJ
IGxpbmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDAxNDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHk6CisgICAgICAgIChC
dWlsZGJvdEVpZ2h0VVJMRmFjdG9yeSk6IEJ1aWxkYm90IDAuOCBsaW5rIGZhY3RvcnkuCisgICAg
ICAgIChCdWlsZGJvdEVpZ2h0VVJMRmFjdG9yeS5fX2luaXRfXyk6CisgICAgICAgIChCdWlsZGJv
dEVpZ2h0VVJMRmFjdG9yeS51cmwpOgorICAgICAgICAqIHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5
L21vZGVsL2NpX2NvbnRleHRfdW5pdHRlc3QucHk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdC50
ZXN0X29sZF9idWlsZGVyX3VybCk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdCk6CisgICAgICAg
IChVUkxGYWN0b3J5VGVzdC50ZXN0X29sZF93b3JrZXJfdXJsKToKKwogMjAxOS0wNy0yNCAgSmll
d2VuIFRhbiAgPGppZXdlbl90YW5AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYlBhZ2VQcm94eTo6
cmVjZWl2ZWRQb2xpY3lEZWNpc2lvbiBzaG91bGQgY2hlY2sgbmF2aWdhdGlvbiBJRCBiZWZvcmUg
Y2xlYXIgcGVuZGluZ0FQSVJlcXVlc3QKSW5kZXg6IFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNk
YnB5L21vZGVsL2NpX2NvbnRleHQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvcmVzdWx0c2RicHkv
cmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkocmV2aXNpb24gMjQ3ODYyKQorKysgVG9v
bHMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkod29ya2luZyBj
b3B5KQpAQCAtMjUsNiArMjUsNyBAQCBpbXBvcnQganNvbgogaW1wb3J0IHJlcXVlc3RzCiBpbXBv
cnQgc3lzCiBpbXBvcnQgdGltZQoraW1wb3J0IHVybGxpYi5wYXJzZQogCiBmcm9tIGNhc3NhbmRy
YS5jcWxlbmdpbmUgaW1wb3J0IGNvbHVtbnMKIGZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1l
CkBAIC0yMDYsNiArMjA3LDIyIEBAIGNsYXNzIENJQ29udGV4dChVcGxvYWRDYWxsYmFja0NvbnRl
eHQpOgogICAgICAgICByZXR1cm4gc2VsZi5fZmluZF91cmxzKHNlbGYuVVJMc0J5U3RhcnRUaW1l
LCAqYXJncywgKiprd2FyZ3MpCiAKIAorY2xhc3MgQnVpbGRib3RFaWdodFVSTEZhY3Rvcnkob2Jq
ZWN0KToKKyAgICBTQ0hFTUUgPSAnaHR0cHM6Ly8nCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwg
bWFzdGVyKToKKyAgICAgICAgc2VsZi5tYXN0ZXIgPSBtYXN0ZXIKKworICAgIGRlZiB1cmwoc2Vs
ZiwgYnVpbGRlcl9uYW1lPU5vbmUsIGJ1aWxkX251bWJlcj1Ob25lLCB3b3JrZXJfbmFtZT1Ob25l
LCBzaG91bGRfZmV0Y2g9RmFsc2UpOgorICAgICAgICBpZiBidWlsZGVyX25hbWUgYW5kIG5vdCB3
b3JrZXJfbmFtZToKKyAgICAgICAgICAgIGlmIGJ1aWxkX251bWJlcjoKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc2VsZi5TQ0hFTUUgKyB1cmxsaWIucGFyc2UucXVvdGUoZid7c2VsZi5tYXN0ZXJ9
L2J1aWxkZXJzL3tidWlsZGVyX25hbWV9L2J1aWxkcy97YnVpbGRfbnVtYmVyfScpCisgICAgICAg
ICAgICByZXR1cm4gc2VsZi5TQ0hFTUUgKyB1cmxsaWIucGFyc2UucXVvdGUoZid7c2VsZi5tYXN0
ZXJ9L2J1aWxkZXJzL3tidWlsZGVyX25hbWV9JykKKyAgICAgICAgZWxpZiB3b3JrZXJfbmFtZSBh
bmQgbm90IGJ1aWxkZXJfbmFtZSBhbmQgbm90IGJ1aWxkX251bWJlcjoKKyAgICAgICAgICAgIHJl
dHVybiBmJ3tzZWxmLlNDSEVNRX17c2VsZi5tYXN0ZXJ9L2J1aWxkc2xhdmVzL3t3b3JrZXJfbmFt
ZX0nCisgICAgICAgIHJldHVybiBOb25lCisKKwogY2xhc3MgQnVpbGRib3RVUkxGYWN0b3J5KG9i
amVjdCk6CiAgICAgU0NIRU1FID0gJ2h0dHBzOi8vJwogICAgIEJVSUxERVJfS0VZID0gJ19idWls
ZGVyXycKSW5kZXg6IFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRl
eHRfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvcmVzdWx0c2RicHkvcmVzdWx0c2Ri
cHkvbW9kZWwvY2lfY29udGV4dF91bml0dGVzdC5weQkocmV2aXNpb24gMjQ3ODYyKQorKysgVG9v
bHMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dF91bml0dGVzdC5weQko
d29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQCBpbXBvcnQgdW5pdHRlc3QKIGZyb20gZmFr
ZXJlZGlzIGltcG9ydCBGYWtlU3RyaWN0UmVkaXMKIGZyb20gcmVkaXMgaW1wb3J0IFN0cmljdFJl
ZGlzCiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLmNhc3NhbmRyYV9jb250ZXh0IGltcG9ydCBDYXNz
YW5kcmFDb250ZXh0Ci1mcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLmNpX2NvbnRleHQgaW1wb3J0IEJ1
aWxkYm90VVJMRmFjdG9yeSwgQ0lDb250ZXh0Citmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLmNpX2Nv
bnRleHQgaW1wb3J0IEJ1aWxkYm90VVJMRmFjdG9yeSwgQ0lDb250ZXh0LCBCdWlsZGJvdEVpZ2h0
VVJMRmFjdG9yeQogZnJvbSByZXN1bHRzZGJweS5jb250cm9sbGVyLmNvbmZpZ3VyYXRpb24gaW1w
b3J0IENvbmZpZ3VyYXRpb24KIGZyb20gcmVzdWx0c2RicHkubW9kZWwubW9ja19jYXNzYW5kcmFf
Y29udGV4dCBpbXBvcnQgTW9ja0Nhc3NhbmRyYUNvbnRleHQKIGZyb20gcmVzdWx0c2RicHkubW9k
ZWwubW9ja19tb2RlbF9mYWN0b3J5IGltcG9ydCBNb2NrTW9kZWxGYWN0b3J5CkBAIC0yNTUsNiAr
MjU1LDE5IEBAIGNsYXNzIFVSTEZhY3RvcnlUZXN0KFdhaXRGb3JEb2NrZXJUZXN0Q2EKICAgICAg
ICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZhY3RvcnkudXJsKGJ1aWxkZXJfbmFtZT0nTW9qYXZl
LVJlbGVhc2UtQnVpbGRlcicsIGJ1aWxkX251bWJlcj0xLCB3b3JrZXJfbmFtZT0nYnVpbGRlcjEn
LCBzaG91bGRfZmV0Y2g9VHJ1ZSkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmYWN0
b3J5LnVybChidWlsZF9udW1iZXI9MSwgd29ya2VyX25hbWU9J2J1aWxkZXIxJywgc2hvdWxkX2Zl
dGNoPVRydWUpKQogCisgICAgZGVmIHRlc3Rfb2xkX2J1aWxkZXJfdXJsKHNlbGYpOgorICAgICAg
ICBmYWN0b3J5ID0gQnVpbGRib3RFaWdodFVSTEZhY3RvcnkobWFzdGVyPSdidWlsZC53ZWJraXQu
b3JnJykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51cmwoKSkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzL0FwcGxl
JTIwTW9qYXZlJTIwUmVsZWFzZSUyMFdLMiUyMCUyOFRlc3RzJTI5JywgZmFjdG9yeS51cmwoYnVp
bGRlcl9uYW1lPSdBcHBsZSBNb2phdmUgUmVsZWFzZSBXSzIgKFRlc3RzKScpKQorICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRlcnMvQXBwbGUl
MjBNb2phdmUlMjBSZWxlYXNlJTIwJTI4QnVpbGQlMjknLCBmYWN0b3J5LnVybChidWlsZGVyX25h
bWU9J0FwcGxlIE1vamF2ZSBSZWxlYXNlIChCdWlsZCknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzL0FwcGxlJTIwTW9qYXZlJTIw
UmVsZWFzZSUyMCUyOEJ1aWxkJTI5L2J1aWxkcy83MTcwJywgZmFjdG9yeS51cmwoYnVpbGRlcl9u
YW1lPSdBcHBsZSBNb2phdmUgUmVsZWFzZSAoQnVpbGQpJywgYnVpbGRfbnVtYmVyPTcxNzApKQor
CisgICAgZGVmIHRlc3Rfb2xkX3dvcmtlcl91cmwoc2VsZik6CisgICAgICAgIGZhY3RvcnkgPSBC
dWlsZGJvdEVpZ2h0VVJMRmFjdG9yeShtYXN0ZXI9J2J1aWxkLndlYmtpdC5vcmcnKQorICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRzbGF2ZXMv
Ym90NjEwJywgZmFjdG9yeS51cmwod29ya2VyX25hbWU9J2JvdDYxMCcpKQorICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRzbGF2ZXMvYm90NjEx
JywgZmFjdG9yeS51cmwod29ya2VyX25hbWU9J2JvdDYxMScpKQorICAgICAgICBzZWxmLmFzc2Vy
dElzTm9uZShmYWN0b3J5LnVybChidWlsZGVyX25hbWU9J0FwcGxlIE1vamF2ZSBSZWxlYXNlIFdL
MiAoVGVzdHMpJywgd29ya2VyX25hbWU9J2JvdDYxMCcpKQorCiAKIGNsYXNzIENJQ29udGV4dFRl
c3QoV2FpdEZvckRvY2tlclRlc3RDYXNlKToKICAgICBLRVlTUEFDRSA9ICdzdWl0ZV9jb250ZXh0
X3Rlc3Rfa2V5c3BhY2UnCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374974</attachid>
            <date>2019-07-26 11:00:23 -0700</date>
            <delta_ts>2019-07-26 11:34:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200146-20190726110023.patch</filename>
            <type>text/plain</type>
            <size>5357</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0Nzg2NCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDE5LTA3LTI2ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN1cHBvcnQgYnVpbGRib3QgMC44IENJ
IGxpbmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDAxNDYKKworICAgICAgICBSZXZpZXdlZCBieSBBYWthc2ggSmFpbi4KKworICAgICAgICAqIHJl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHk6CisgICAgICAgIChCdWls
ZGJvdEVpZ2h0VVJMRmFjdG9yeSk6IEJ1aWxkYm90IDAuOCBsaW5rIGZhY3RvcnkuCisgICAgICAg
IChCdWlsZGJvdEVpZ2h0VVJMRmFjdG9yeS5fX2luaXRfXyk6CisgICAgICAgIChCdWlsZGJvdEVp
Z2h0VVJMRmFjdG9yeS51cmwpOgorICAgICAgICAqIHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21v
ZGVsL2NpX2NvbnRleHRfdW5pdHRlc3QucHk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdC50ZXN0
X29sZF9idWlsZGVyX3VybCk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdCk6CisgICAgICAgIChV
UkxGYWN0b3J5VGVzdC50ZXN0X29sZF93b3JrZXJfdXJsKToKKwogMjAxOS0wNy0yNiAgSm9uYXRo
YW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgRm9sbG93LXVwIGZpeDog
cmVzdWx0cy53ZWJraXQub3JnOiBDb2xvciBzaG91bGQgYmUgdGhlIHdvcnN0IHJlc3VsdCwgY291
bnQgc2hvdWxkIGluY2x1ZGUgYWxsIHJlc3VsdHMKSW5kZXg6IFRvb2xzL3Jlc3VsdHNkYnB5L3Jl
c3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkocmV2aXNpb24gMjQ3ODY0KQor
KysgVG9vbHMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkod29y
a2luZyBjb3B5KQpAQCAtMjIsOSArMjIsMTEgQEAKIAogaW1wb3J0IGNhbGVuZGFyCiBpbXBvcnQg
anNvbgoraW1wb3J0IGxvZ2dpbmcKIGltcG9ydCByZXF1ZXN0cwogaW1wb3J0IHN5cwogaW1wb3J0
IHRpbWUKK2ltcG9ydCB1cmxsaWIucGFyc2UKIAogZnJvbSBjYXNzYW5kcmEuY3FsZW5naW5lIGlt
cG9ydCBjb2x1bW5zCiBmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQpAQCAtMjA2LDYgKzIw
OCwyNCBAQCBjbGFzcyBDSUNvbnRleHQoVXBsb2FkQ2FsbGJhY2tDb250ZXh0KToKICAgICAgICAg
cmV0dXJuIHNlbGYuX2ZpbmRfdXJscyhzZWxmLlVSTHNCeVN0YXJ0VGltZSwgKmFyZ3MsICoqa3dh
cmdzKQogCiAKK2NsYXNzIEJ1aWxkYm90RWlnaHRVUkxGYWN0b3J5KG9iamVjdCk6CisgICAgU0NI
RU1FID0gJ2h0dHBzOi8vJworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1hc3Rlcik6CisgICAg
ICAgIHNlbGYubWFzdGVyID0gbWFzdGVyCisKKyAgICBkZWYgdXJsKHNlbGYsIGJ1aWxkZXJfbmFt
ZT1Ob25lLCBidWlsZF9udW1iZXI9Tm9uZSwgd29ya2VyX25hbWU9Tm9uZSwgc2hvdWxkX2ZldGNo
PUZhbHNlKToKKyAgICAgICAgaWYgYnVpbGRlcl9uYW1lIGFuZCBub3Qgd29ya2VyX25hbWU6Cisg
ICAgICAgICAgICBpZiBidWlsZF9udW1iZXI6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYu
U0NIRU1FICsgdXJsbGliLnBhcnNlLnF1b3RlKGYne3NlbGYubWFzdGVyfS9idWlsZGVycy97YnVp
bGRlcl9uYW1lfS9idWlsZHMve2J1aWxkX251bWJlcn0nKQorICAgICAgICAgICAgcmV0dXJuIHNl
bGYuU0NIRU1FICsgdXJsbGliLnBhcnNlLnF1b3RlKGYne3NlbGYubWFzdGVyfS9idWlsZGVycy97
YnVpbGRlcl9uYW1lfScpCisgICAgICAgIGVsaWYgd29ya2VyX25hbWUgYW5kIG5vdCBidWlsZGVy
X25hbWUgYW5kIG5vdCBidWlsZF9udW1iZXI6CisgICAgICAgICAgICByZXR1cm4gZid7c2VsZi5T
Q0hFTUV9e3NlbGYubWFzdGVyfS9idWlsZHNsYXZlcy97d29ya2VyX25hbWV9JworCisgICAgICAg
IGxvZ2dpbmcuZXJyb3IoJ05vIFVSTCBjYW4gYmUgZ2VuZXJhdGVkIGZvciB0aGUgcHJvdmlkZWQg
Y29tYmluYXRpb24nKQorICAgICAgICByZXR1cm4gTm9uZQorCisKIGNsYXNzIEJ1aWxkYm90VVJM
RmFjdG9yeShvYmplY3QpOgogICAgIFNDSEVNRSA9ICdodHRwczovLycKICAgICBCVUlMREVSX0tF
WSA9ICdfYnVpbGRlcl8nCkBAIC0yNjYsNyArMjg2LDcgQEAgY2xhc3MgQnVpbGRib3RVUkxGYWN0
b3J5KG9iamVjdCk6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl93b3JrZXJfdXJs
KHdvcmtlcl9pZD13b3JrZXJfaWQuZGVjb2RlKCd1dGYtOCcpKQogCiAgICAgICAgICAgICBlbHNl
OgotICAgICAgICAgICAgICAgICMgV2UgY2FuJ3QgZ2VuZXJhdGUgYSBVUkwgZm9yIHRoZSBwcm92
aWRlZCBjb21iaW5hdGlvbgorICAgICAgICAgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ05vIFVSTCBj
YW4gYmUgZ2VuZXJhdGVkIGZvciB0aGUgcHJvdmlkZWQgY29tYmluYXRpb24nKQogICAgICAgICAg
ICAgICAgIHJldHVybiBOb25lCiAKICAgICAgICAgICAgIGlmIG5vdCBzaG91bGRfZmV0Y2g6CkBA
IC0yNzQsNCArMjk0LDUgQEAgY2xhc3MgQnVpbGRib3RVUkxGYWN0b3J5KG9iamVjdCk6CiAgICAg
ICAgICAgICBzZWxmLmZldGNoKCkKICAgICAgICAgICAgIHNob3VsZF9mZXRjaCA9IEZhbHNlCiAK
KyAgICAgICAgbG9nZ2luZy5lcnJvcihmJ0NvdWxkIG5vdCBnZW5lcmF0ZSBVUkwgZm9yIENJIGxp
bmtzIGZyb20ge3NlbGYubWFzdGVyfScpCiAgICAgICAgIHJldHVybiBOb25lCkluZGV4OiBUb29s
cy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jaV9jb250ZXh0X3VuaXR0ZXN0LnB5Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRl
eHRfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI0Nzg2NCkKKysrIFRvb2xzL3Jlc3VsdHNkYnB5L3Jl
c3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHRfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAg
LTI5LDcgKzI5LDcgQEAgaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIGZha2VyZWRpcyBpbXBvcnQgRmFr
ZVN0cmljdFJlZGlzCiBmcm9tIHJlZGlzIGltcG9ydCBTdHJpY3RSZWRpcwogZnJvbSByZXN1bHRz
ZGJweS5tb2RlbC5jYXNzYW5kcmFfY29udGV4dCBpbXBvcnQgQ2Fzc2FuZHJhQ29udGV4dAotZnJv
bSByZXN1bHRzZGJweS5tb2RlbC5jaV9jb250ZXh0IGltcG9ydCBCdWlsZGJvdFVSTEZhY3Rvcnks
IENJQ29udGV4dAorZnJvbSByZXN1bHRzZGJweS5tb2RlbC5jaV9jb250ZXh0IGltcG9ydCBCdWls
ZGJvdFVSTEZhY3RvcnksIENJQ29udGV4dCwgQnVpbGRib3RFaWdodFVSTEZhY3RvcnkKIGZyb20g
cmVzdWx0c2RicHkuY29udHJvbGxlci5jb25maWd1cmF0aW9uIGltcG9ydCBDb25maWd1cmF0aW9u
CiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLm1vY2tfY2Fzc2FuZHJhX2NvbnRleHQgaW1wb3J0IE1v
Y2tDYXNzYW5kcmFDb250ZXh0CiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLm1vY2tfbW9kZWxfZmFj
dG9yeSBpbXBvcnQgTW9ja01vZGVsRmFjdG9yeQpAQCAtMjU1LDYgKzI1NSwxOSBAQCBjbGFzcyBV
UkxGYWN0b3J5VGVzdChXYWl0Rm9yRG9ja2VyVGVzdENhCiAgICAgICAgICAgICBzZWxmLmFzc2Vy
dElzTm9uZShmYWN0b3J5LnVybChidWlsZGVyX25hbWU9J01vamF2ZS1SZWxlYXNlLUJ1aWxkZXIn
LCBidWlsZF9udW1iZXI9MSwgd29ya2VyX25hbWU9J2J1aWxkZXIxJywgc2hvdWxkX2ZldGNoPVRy
dWUpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51cmwoYnVpbGRfbnVt
YmVyPTEsIHdvcmtlcl9uYW1lPSdidWlsZGVyMScsIHNob3VsZF9mZXRjaD1UcnVlKSkKIAorICAg
IGRlZiB0ZXN0X29sZF9idWlsZGVyX3VybChzZWxmKToKKyAgICAgICAgZmFjdG9yeSA9IEJ1aWxk
Ym90RWlnaHRVUkxGYWN0b3J5KG1hc3Rlcj0nYnVpbGQud2Via2l0Lm9yZycpCisgICAgICAgIHNl
bGYuYXNzZXJ0SXNOb25lKGZhY3RvcnkudXJsKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
J2h0dHBzOi8vYnVpbGQud2Via2l0Lm9yZy9idWlsZGVycy9BcHBsZSUyME1vamF2ZSUyMFJlbGVh
c2UlMjBXSzIlMjAlMjhUZXN0cyUyOScsIGZhY3RvcnkudXJsKGJ1aWxkZXJfbmFtZT0nQXBwbGUg
TW9qYXZlIFJlbGVhc2UgV0syIChUZXN0cyknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn
aHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzL0FwcGxlJTIwTW9qYXZlJTIwUmVsZWFz
ZSUyMCUyOEJ1aWxkJTI5JywgZmFjdG9yeS51cmwoYnVpbGRlcl9uYW1lPSdBcHBsZSBNb2phdmUg
UmVsZWFzZSAoQnVpbGQpJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2h0dHBzOi8vYnVp
bGQud2Via2l0Lm9yZy9idWlsZGVycy9BcHBsZSUyME1vamF2ZSUyMFJlbGVhc2UlMjAlMjhCdWls
ZCUyOS9idWlsZHMvNzE3MCcsIGZhY3RvcnkudXJsKGJ1aWxkZXJfbmFtZT0nQXBwbGUgTW9qYXZl
IFJlbGVhc2UgKEJ1aWxkKScsIGJ1aWxkX251bWJlcj03MTcwKSkKKworICAgIGRlZiB0ZXN0X29s
ZF93b3JrZXJfdXJsKHNlbGYpOgorICAgICAgICBmYWN0b3J5ID0gQnVpbGRib3RFaWdodFVSTEZh
Y3RvcnkobWFzdGVyPSdidWlsZC53ZWJraXQub3JnJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkc2xhdmVzL2JvdDYxMCcsIGZhY3Rvcnku
dXJsKHdvcmtlcl9uYW1lPSdib3Q2MTAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaHR0
cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkc2xhdmVzL2JvdDYxMScsIGZhY3RvcnkudXJsKHdv
cmtlcl9uYW1lPSdib3Q2MTEnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51
cmwoYnVpbGRlcl9uYW1lPSdBcHBsZSBNb2phdmUgUmVsZWFzZSBXSzIgKFRlc3RzKScsIHdvcmtl
cl9uYW1lPSdib3Q2MTAnKSkKKwogCiBjbGFzcyBDSUNvbnRleHRUZXN0KFdhaXRGb3JEb2NrZXJU
ZXN0Q2FzZSk6CiAgICAgS0VZU1BBQ0UgPSAnc3VpdGVfY29udGV4dF90ZXN0X2tleXNwYWNlJwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374978</attachid>
            <date>2019-07-26 11:34:50 -0700</date>
            <delta_ts>2019-07-26 12:19:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200146-20190726113449.patch</filename>
            <type>text/plain</type>
            <size>6729</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI0Nzg2NCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDE5LTA3LTI2ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICByZXN1bHRzLndlYmtpdC5vcmc6IFN1cHBvcnQgYnVpbGRib3QgMC44IENJ
IGxpbmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDAxNDYKKworICAgICAgICBSZXZpZXdlZCBieSBBYWthc2ggSmFpbi4KKworICAgICAgICAqIHJl
c3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHk6CisgICAgICAgIChCdWls
ZGJvdEVpZ2h0VVJMRmFjdG9yeSk6IEJ1aWxkYm90IDAuOCBsaW5rIGZhY3RvcnkuCisgICAgICAg
IChCdWlsZGJvdEVpZ2h0VVJMRmFjdG9yeS5fX2luaXRfXyk6CisgICAgICAgIChCdWlsZGJvdEVp
Z2h0VVJMRmFjdG9yeS51cmwpOgorICAgICAgICAqIHJlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21v
ZGVsL2NpX2NvbnRleHRfdW5pdHRlc3QucHk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdC50ZXN0
X29sZF9idWlsZGVyX3VybCk6CisgICAgICAgIChVUkxGYWN0b3J5VGVzdCk6CisgICAgICAgIChV
UkxGYWN0b3J5VGVzdC50ZXN0X29sZF93b3JrZXJfdXJsKToKKwogMjAxOS0wNy0yNiAgSm9uYXRo
YW4gQmVkYXJkICA8amJlZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgRm9sbG93LXVwIGZpeDog
cmVzdWx0cy53ZWJraXQub3JnOiBDb2xvciBzaG91bGQgYmUgdGhlIHdvcnN0IHJlc3VsdCwgY291
bnQgc2hvdWxkIGluY2x1ZGUgYWxsIHJlc3VsdHMKSW5kZXg6IFRvb2xzL3Jlc3VsdHNkYnB5L3Jl
c3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHQucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvcmVzdWx0
c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkocmV2aXNpb24gMjQ3ODY0KQor
KysgVG9vbHMvcmVzdWx0c2RicHkvcmVzdWx0c2RicHkvbW9kZWwvY2lfY29udGV4dC5weQkod29y
a2luZyBjb3B5KQpAQCAtMjIsOSArMjIsMTEgQEAKIAogaW1wb3J0IGNhbGVuZGFyCiBpbXBvcnQg
anNvbgoraW1wb3J0IGxvZ2dpbmcKIGltcG9ydCByZXF1ZXN0cwogaW1wb3J0IHN5cwogaW1wb3J0
IHRpbWUKK2ltcG9ydCB1cmxsaWIucGFyc2UKIAogZnJvbSBjYXNzYW5kcmEuY3FsZW5naW5lIGlt
cG9ydCBjb2x1bW5zCiBmcm9tIGRhdGV0aW1lIGltcG9ydCBkYXRldGltZQpAQCAtMjA2LDYgKzIw
OCwyMyBAQCBjbGFzcyBDSUNvbnRleHQoVXBsb2FkQ2FsbGJhY2tDb250ZXh0KToKICAgICAgICAg
cmV0dXJuIHNlbGYuX2ZpbmRfdXJscyhzZWxmLlVSTHNCeVN0YXJ0VGltZSwgKmFyZ3MsICoqa3dh
cmdzKQogCiAKK2NsYXNzIEJ1aWxkYm90RWlnaHRVUkxGYWN0b3J5KG9iamVjdCk6CisgICAgU0NI
RU1FID0gJ2h0dHBzOi8vJworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1hc3Rlcik6CisgICAg
ICAgIHNlbGYubWFzdGVyID0gbWFzdGVyCisKKyAgICBkZWYgdXJsKHNlbGYsIGJ1aWxkZXJfbmFt
ZT1Ob25lLCBidWlsZF9udW1iZXI9Tm9uZSwgd29ya2VyX25hbWU9Tm9uZSwgc2hvdWxkX2ZldGNo
PUZhbHNlKToKKyAgICAgICAgaWYgYnVpbGRlcl9uYW1lOgorICAgICAgICAgICAgaWYgYnVpbGRf
bnVtYmVyOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLlNDSEVNRSArIHVybGxpYi5wYXJz
ZS5xdW90ZShmJ3tzZWxmLm1hc3Rlcn0vYnVpbGRlcnMve2J1aWxkZXJfbmFtZX0vYnVpbGRzL3ti
dWlsZF9udW1iZXJ9JykKKyAgICAgICAgICAgIHJldHVybiBzZWxmLlNDSEVNRSArIHVybGxpYi5w
YXJzZS5xdW90ZShmJ3tzZWxmLm1hc3Rlcn0vYnVpbGRlcnMve2J1aWxkZXJfbmFtZX0nKQorICAg
ICAgICBlbGlmIHdvcmtlcl9uYW1lOgorICAgICAgICAgICAgcmV0dXJuIGYne3NlbGYuU0NIRU1F
fXtzZWxmLm1hc3Rlcn0vYnVpbGRzbGF2ZXMve3dvcmtlcl9uYW1lfScKKworICAgICAgICByZXR1
cm4gTm9uZQorCisKIGNsYXNzIEJ1aWxkYm90VVJMRmFjdG9yeShvYmplY3QpOgogICAgIFNDSEVN
RSA9ICdodHRwczovLycKICAgICBCVUlMREVSX0tFWSA9ICdfYnVpbGRlcl8nCkBAIC0yNTMsMjUg
KzI3MiwyMiBAQCBjbGFzcyBCdWlsZGJvdFVSTEZhY3Rvcnkob2JqZWN0KToKICAgICAgICAgICAg
IHNob3VsZF9mZXRjaCA9IEZhbHNlCiAKICAgICAgICAgd2hpbGUgVHJ1ZToKLSAgICAgICAgICAg
IGlmIGJ1aWxkZXJfbmFtZSBhbmQgbm90IHdvcmtlcl9uYW1lOgorICAgICAgICAgICAgaWYgYnVp
bGRlcl9uYW1lOgogICAgICAgICAgICAgICAgIGJ1aWxkZXJfaWQgPSBzZWxmLnJlZGlzLmdldChm
J3tzZWxmLm1hc3Rlcn1fe3NlbGYuQlVJTERFUl9LRVl9X3tidWlsZGVyX25hbWV9JykKICAgICAg
ICAgICAgICAgICBpZiBidWlsZGVyX2lkOgogICAgICAgICAgICAgICAgICAgICBpZiBidWlsZF9u
dW1iZXI6CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fYnVpbGRfdXJsKGJ1
aWxkZXJfaWQ9YnVpbGRlcl9pZC5kZWNvZGUoJ3V0Zi04JyksIGJ1aWxkX251bWJlcj1idWlsZF9u
dW1iZXIpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9idWlsZGVyX3VybChidWls
ZGVyX2lkPWJ1aWxkZXJfaWQuZGVjb2RlKCd1dGYtOCcpKQogCi0gICAgICAgICAgICBlbGlmIHdv
cmtlcl9uYW1lIGFuZCBub3QgYnVpbGRlcl9uYW1lIGFuZCBub3QgYnVpbGRfbnVtYmVyOgorICAg
ICAgICAgICAgZWxpZiB3b3JrZXJfbmFtZToKICAgICAgICAgICAgICAgICB3b3JrZXJfaWQgPSBz
ZWxmLnJlZGlzLmdldChmJ3tzZWxmLm1hc3Rlcn1fe3NlbGYuV09SS0VSX0tFWX1fe3dvcmtlcl9u
YW1lfScpCiAgICAgICAgICAgICAgICAgaWYgd29ya2VyX2lkOgogICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gc2VsZi5fd29ya2VyX3VybCh3b3JrZXJfaWQ9d29ya2VyX2lkLmRlY29kZSgndXRm
LTgnKSkKIAotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAjIFdlIGNhbid0IGdl
bmVyYXRlIGEgVVJMIGZvciB0aGUgcHJvdmlkZWQgY29tYmluYXRpb24KLSAgICAgICAgICAgICAg
ICByZXR1cm4gTm9uZQotCiAgICAgICAgICAgICBpZiBub3Qgc2hvdWxkX2ZldGNoOgogICAgICAg
ICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICBzZWxmLmZldGNoKCkKICAgICAgICAgICAgIHNo
b3VsZF9mZXRjaCA9IEZhbHNlCiAKKyAgICAgICAgbG9nZ2luZy5lcnJvcihmJ0NvdWxkIG5vdCBn
ZW5lcmF0ZSBVUkwgZm9yIENJIGxpbmtzIGZyb20ge3NlbGYubWFzdGVyfScpCiAgICAgICAgIHJl
dHVybiBOb25lCkluZGV4OiBUb29scy9yZXN1bHRzZGJweS9yZXN1bHRzZGJweS9tb2RlbC9jaV9j
b250ZXh0X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3Vs
dHNkYnB5L21vZGVsL2NpX2NvbnRleHRfdW5pdHRlc3QucHkJKHJldmlzaW9uIDI0Nzg2NCkKKysr
IFRvb2xzL3Jlc3VsdHNkYnB5L3Jlc3VsdHNkYnB5L21vZGVsL2NpX2NvbnRleHRfdW5pdHRlc3Qu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcgKzI5LDcgQEAgaW1wb3J0IHVuaXR0ZXN0CiBmcm9t
IGZha2VyZWRpcyBpbXBvcnQgRmFrZVN0cmljdFJlZGlzCiBmcm9tIHJlZGlzIGltcG9ydCBTdHJp
Y3RSZWRpcwogZnJvbSByZXN1bHRzZGJweS5tb2RlbC5jYXNzYW5kcmFfY29udGV4dCBpbXBvcnQg
Q2Fzc2FuZHJhQ29udGV4dAotZnJvbSByZXN1bHRzZGJweS5tb2RlbC5jaV9jb250ZXh0IGltcG9y
dCBCdWlsZGJvdFVSTEZhY3RvcnksIENJQ29udGV4dAorZnJvbSByZXN1bHRzZGJweS5tb2RlbC5j
aV9jb250ZXh0IGltcG9ydCBCdWlsZGJvdFVSTEZhY3RvcnksIENJQ29udGV4dCwgQnVpbGRib3RF
aWdodFVSTEZhY3RvcnkKIGZyb20gcmVzdWx0c2RicHkuY29udHJvbGxlci5jb25maWd1cmF0aW9u
IGltcG9ydCBDb25maWd1cmF0aW9uCiBmcm9tIHJlc3VsdHNkYnB5Lm1vZGVsLm1vY2tfY2Fzc2Fu
ZHJhX2NvbnRleHQgaW1wb3J0IE1vY2tDYXNzYW5kcmFDb250ZXh0CiBmcm9tIHJlc3VsdHNkYnB5
Lm1vZGVsLm1vY2tfbW9kZWxfZmFjdG9yeSBpbXBvcnQgTW9ja01vZGVsRmFjdG9yeQpAQCAtMjUx
LDkgKzI1MSwyMyBAQCBjbGFzcyBVUkxGYWN0b3J5VGVzdChXYWl0Rm9yRG9ja2VyVGVzdENhCiAg
ICAgZGVmIHRlc3RfaW52YWxpZF9jb21iaW5hdGlvbnMoc2VsZiwgcmVkaXM9U3RyaWN0UmVkaXMp
OgogICAgICAgICB3aXRoIHNlbGYubW9jaygpOgogICAgICAgICAgICAgZmFjdG9yeSA9IEJ1aWxk
Ym90VVJMRmFjdG9yeShtYXN0ZXI9J2J1aWxkLndlYmtpdC5vcmcnLCByZWRpcz1yZWRpcygpKQot
ICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51cmwoYnVpbGRlcl9uYW1lPSdN
b2phdmUtUmVsZWFzZS1CdWlsZGVyJywgd29ya2VyX25hbWU9J2J1aWxkZXIxJywgc2hvdWxkX2Zl
dGNoPVRydWUpKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51cmwoYnVp
bGRlcl9uYW1lPSdNb2phdmUtUmVsZWFzZS1CdWlsZGVyJywgYnVpbGRfbnVtYmVyPTEsIHdvcmtl
cl9uYW1lPSdidWlsZGVyMScsIHNob3VsZF9mZXRjaD1UcnVlKSkKLSAgICAgICAgICAgIHNlbGYu
YXNzZXJ0SXNOb25lKGZhY3RvcnkudXJsKGJ1aWxkX251bWJlcj0xLCB3b3JrZXJfbmFtZT0nYnVp
bGRlcjEnLCBzaG91bGRfZmV0Y2g9VHJ1ZSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9u
ZShmYWN0b3J5LnVybChzaG91bGRfZmV0Y2g9VHJ1ZSkpCisgICAgICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvIy9idWlsZGVycy8xJywgZmFjdG9yeS51
cmwoYnVpbGRlcl9uYW1lPSdNb2phdmUtUmVsZWFzZS1CdWlsZGVyJywgd29ya2VyX25hbWU9J2J1
aWxkZXIxJywgc2hvdWxkX2ZldGNoPVRydWUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnLyMvYnVpbGRlcnMvMS9idWlsZHMvMScsIGZhY3Rv
cnkudXJsKGJ1aWxkZXJfbmFtZT0nTW9qYXZlLVJlbGVhc2UtQnVpbGRlcicsIGJ1aWxkX251bWJl
cj0xLCB3b3JrZXJfbmFtZT0nYnVpbGRlcjEnLCBzaG91bGRfZmV0Y2g9VHJ1ZSkpCisgICAgICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvIy93b3JrZXJz
LzEnLCBmYWN0b3J5LnVybChidWlsZF9udW1iZXI9MSwgd29ya2VyX25hbWU9J2J1aWxkZXIxJywg
c2hvdWxkX2ZldGNoPVRydWUpKQorCisgICAgZGVmIHRlc3Rfb2xkX2J1aWxkZXJfdXJsKHNlbGYp
OgorICAgICAgICBmYWN0b3J5ID0gQnVpbGRib3RFaWdodFVSTEZhY3RvcnkobWFzdGVyPSdidWls
ZC53ZWJraXQub3JnJykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmFjdG9yeS51cmwoKSkK
KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxk
ZXJzL0FwcGxlJTIwTW9qYXZlJTIwUmVsZWFzZSUyMFdLMiUyMCUyOFRlc3RzJTI5JywgZmFjdG9y
eS51cmwoYnVpbGRlcl9uYW1lPSdBcHBsZSBNb2phdmUgUmVsZWFzZSBXSzIgKFRlc3RzKScpKQor
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRl
cnMvQXBwbGUlMjBNb2phdmUlMjBSZWxlYXNlJTIwJTI4QnVpbGQlMjknLCBmYWN0b3J5LnVybChi
dWlsZGVyX25hbWU9J0FwcGxlIE1vamF2ZSBSZWxlYXNlIChCdWlsZCknKSkKKyAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbCgnaHR0cHM6Ly9idWlsZC53ZWJraXQub3JnL2J1aWxkZXJzL0FwcGxlJTIw
TW9qYXZlJTIwUmVsZWFzZSUyMCUyOEJ1aWxkJTI5L2J1aWxkcy83MTcwJywgZmFjdG9yeS51cmwo
YnVpbGRlcl9uYW1lPSdBcHBsZSBNb2phdmUgUmVsZWFzZSAoQnVpbGQpJywgYnVpbGRfbnVtYmVy
PTcxNzApKQorCisgICAgZGVmIHRlc3Rfb2xkX3dvcmtlcl91cmwoc2VsZik6CisgICAgICAgIGZh
Y3RvcnkgPSBCdWlsZGJvdEVpZ2h0VVJMRmFjdG9yeShtYXN0ZXI9J2J1aWxkLndlYmtpdC5vcmcn
KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVp
bGRzbGF2ZXMvYm90NjEwJywgZmFjdG9yeS51cmwod29ya2VyX25hbWU9J2JvdDYxMCcpKQorICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRzbGF2
ZXMvYm90NjExJywgZmFjdG9yeS51cmwod29ya2VyX25hbWU9J2JvdDYxMScpKQorICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCdodHRwczovL2J1aWxkLndlYmtpdC5vcmcvYnVpbGRlcnMvQXBwbGUl
MjBNb2phdmUlMjBSZWxlYXNlJTIwV0syJTIwJTI4VGVzdHMlMjknLCBmYWN0b3J5LnVybChidWls
ZGVyX25hbWU9J0FwcGxlIE1vamF2ZSBSZWxlYXNlIFdLMiAoVGVzdHMpJywgd29ya2VyX25hbWU9
J2JvdDYxMCcpKQogCiAKIGNsYXNzIENJQ29udGV4dFRlc3QoV2FpdEZvckRvY2tlclRlc3RDYXNl
KToK
</data>

          </attachment>
      

    </bug>

</bugzilla>