<?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>98602</bug_id>
          
          <creation_ts>2012-10-06 10:52:37 -0700</creation_ts>
          <short_desc>webkitpy: Pass the `Listen&apos; Apache directive from webkitpy, not the httpd.conf files.</short_desc>
          <delta_ts>2013-07-18 11:24:10 -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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>98616</dependson>
          <blocked>98151</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Raphael Kubo da Costa (:rakuco)">rakuco</reporter>
          <assigned_to name="Raphael Kubo da Costa (:rakuco)">rakuco</assigned_to>
          <cc>abarth</cc>
    
    <cc>dbates</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>736256</commentid>
    <comment_count>0</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-06 10:52:37 -0700</bug_when>
    <thetext>webkitpy: Pass the `Listen&apos; Apache directive from Apache, not the httpd.conf files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736258</commentid>
    <comment_count>1</comment_count>
      <attachid>167459</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-06 10:58:20 -0700</bug_when>
    <thetext>Created attachment 167459
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736296</commentid>
    <comment_count>2</comment_count>
      <attachid>167459</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-10-06 15:38:58 -0700</bug_when>
    <thetext>Comment on attachment 167459
Patch

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

Sounds like a great win!

&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:930
&gt; +        return socket.has_ipv6

Is it safe to assume that if python will have ipv6 if and only if apache does?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736360</commentid>
    <comment_count>3</comment_count>
      <attachid>167459</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 06:12:17 -0700</bug_when>
    <thetext>Comment on attachment 167459
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:930
&gt;&gt; +        return socket.has_ipv6
&gt; 
&gt; Is it safe to assume that if python will have ipv6 if and only if apache does?

Not 100% safe, but the comment in, say, apache2-debian-httpd.conf, states that there should be a way to know if the system had IPV6 support -- I think the odds of someone building Python but not Apache with IPV6 support are not very high, especially if the system itself supports IPV6. We can always revisit that if the bots start experiencing problems as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736363</commentid>
    <comment_count>4</comment_count>
      <attachid>167459</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 06:19:19 -0700</bug_when>
    <thetext>Comment on attachment 167459
Patch

Clearing flags on attachment: 167459

Committed r130596: &lt;http://trac.webkit.org/changeset/130596&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736364</commentid>
    <comment_count>5</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 06:19:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736367</commentid>
    <comment_count>6</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 07:11:33 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 98616</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736371</commentid>
    <comment_count>7</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 07:18:29 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 167459 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=167459&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/base.py:930
&gt; &gt;&gt; +        return socket.has_ipv6
&gt; &gt; 
&gt; &gt; Is it safe to assume that if python will have ipv6 if and only if apache does?
&gt; 
&gt; Not 100% safe, but the comment in, say, apache2-debian-httpd.conf, states that there should be a way to know if the system had IPV6 support -- I think the odds of someone building Python but not Apache with IPV6 support are not very high, especially if the system itself supports IPV6. We can always revisit that if the bots start experiencing problems as well.

Sigh, it looks like I was too optimistic. At least the EFL bots (which run Ubuntu and thus apache2-debian-httpd.conf) have started failing:

  ServerError raised: Failed to start httpd: [Sun Oct 07 06:43:01 2012] [crit] (EAI 9)Address family for hostname not supported: alloc_listener: failed to set up sockaddr for ::1
  Syntax error on line 4 of -c/-C directives:
  Listen setup failed

I will need to take a closer look at this tomorrow when I have access to the bots. I have rolled it out for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736372</commentid>
    <comment_count>8</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-07 07:19:42 -0700</bug_when>
    <thetext>Reopening the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>751799</commentid>
    <comment_count>9</comment_count>
      <attachid>170875</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-26 03:37:32 -0700</bug_when>
    <thetext>Created attachment 170875
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>751806</commentid>
    <comment_count>10</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-26 03:43:43 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Created an attachment (id=170875) [details]
&gt; Patch

New attempt that tries to fix the problem reported in my comment 7. The failure reported, there,

  ServerError raised: Failed to start httpd: [Sun Oct 07 06:43:01 2012] [crit] (EAI 9)Address family for hostname not supported: alloc_listener: failed to set up sockaddr for ::1

comes from Apache&apos;s APR doing

  error = getaddrinfo(hostname, servname, &amp;hints, &amp;ai_list);

with AI_ADDRCONFIG set in hints.

The patch now tries to address that by performing the same call in Python and only setting up IPv6 addresses if that does not fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>751863</commentid>
    <comment_count>11</comment_count>
      <attachid>170888</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-26 04:38:09 -0700</bug_when>
    <thetext>Created attachment 170888
Same patch with a more meaningful title</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>752223</commentid>
    <comment_count>12</comment_count>
      <attachid>170888</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-26 11:41:17 -0700</bug_when>
    <thetext>Comment on attachment 170888
Same patch with a more meaningful title

Clearing flags on attachment: 170888

Committed r132678: &lt;http://trac.webkit.org/changeset/132678&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>752224</commentid>
    <comment_count>13</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-10-26 11:41:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>909810</commentid>
    <comment_count>14</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-07-18 11:24:10 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 170888 [details])
&gt; Clearing flags on attachment: 170888
&gt; 
&gt; Committed r132678: &lt;http://trac.webkit.org/changeset/132678&gt;

This patch broke tests that used port 8443 (SSL) and 8080 when run using old-run-webkit-tests. See bug #118854 for more details.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167459</attachid>
            <date>2012-10-06 10:58:20 -0700</date>
            <delta_ts>2012-10-26 03:37:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98602-20121006205548.patch</filename>
            <type>text/plain</type>
            <size>11909</size>
            <attacher name="Raphael Kubo da Costa (:rakuco)">rakuco</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDEzMDU4MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM3IEBACisyMDEyLTEwLTA2ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1
Ym8uZGEuY29zdGFAaW50ZWwuY29tPgorCisgICAgICAgIHdlYmtpdHB5OiBQYXNzIHRoZSBgTGlz
dGVuJyBBcGFjaGUgZGlyZWN0aXZlIGZyb20gQXBhY2hlLCBub3QgdGhlIGh0dHBkLmNvbmYgZmls
ZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODYw
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVuaWZ5
IGFsbCB0aGUgZGlmZmVyZW50IGBMaXN0ZW4nIGRpcmVjdGl2ZXMgcHJlc2VudCBpbiB0aGUgc2V2
ZXJhbAorICAgICAgICBodHRwZC5jb25mIGZpbGVzIHdlIGhhdmUgaW4gTGF5b3V0VGVzdHMvaHR0
cC9jb25mLiBGb3Igb25lLCB3ZQorICAgICAgICB3ZXJlIGFscmVhZHkgcGFzc2luZyBgTGlzdGVu
IDEyNy4wLjAuMTo4MDAwJyB2aWEgd2Via2l0cHkgYmVmb3JlLAorICAgICAgICBhbmQgb3Blbmlu
ZyB0aGUgb3RoZXIgcG9ydHMgZnJvbSB0aGUgY29uZiBmaWxlcy4KKworICAgICAgICBUaGUgY29u
ZmlndXJhdGlvbiBmaWxlcyBkaWZmZXJlZCBtb3N0bHkgaW4gdGhlIHdheSB0aGV5IGhhbmRsZWQK
KyAgICAgICAgSVBWNiBwb3J0cy4gU29tZSBvZiB0aGVtIGRpZCBub3QgbGlzdGVuIHRvIElQVjYg
cG9ydHMgYmVjYXVzZSB0aGUKKyAgICAgICAgc3lzdGVtcyB3aGljaCB1c2VkIHRoZW0gc29tZXRp
bWVzIGRpZCBub3QgaGF2ZSBJUFY2IHN1cHBvcnQuIFRoZQorICAgICAgICBgaHR0cF9zZXJ2ZXJf
c3VwcG9ydHNfaXB2NicgbWV0aG9kIGhhcyBiZWVuIGFkZGVkIHRvIFBvcnQgdG8KKyAgICAgICAg
YWRkcmVzcyB0aGF0LiBjeWd3aW4sIG9uIGl0cyB0dXJuLCBzdGlsbCBzZWVtcyB0byB1c2UgQXBh
Y2hlIDEuMywKKyAgICAgICAgd2hpY2ggZG9lcyBub3Qgc3VwcG9ydCBJUFY2IGF0IGFsbDsgdGhl
IG5ld2x5LWFkZGVkIG1ldGhvZCBoYXMgYQorICAgICAgICBzcGVjaWFsIGNhc2UgZm9yIHRoYXQu
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vcGxhdGZvcm1pbmZv
X21vY2sucHk6CisgICAgICAgIChNb2NrUGxhdGZvcm1JbmZvLmlzX2N5Z3dpbik6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5OgorICAgICAgICAo
UG9ydC5iYXNlbGluZV92ZXJzaW9uX2Rpcik6CisgICAgICAgIChQb3J0LnRvLnN0YXJ0X3dlYnNv
Y2tldF9zZXJ2ZXIpOgorICAgICAgICAoUG9ydC50byk6CisgICAgICAgIChQb3J0LnRvLmh0dHBf
c2VydmVyX3N1cHBvcnRzX2lwdjYpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvYmFzZV91bml0dGVzdC5weToKKyAgICAgICAgKFBvcnRUZXN0LnRlc3RfaHR0
cF9zZXJ2ZXJfc3VwcG9ydHNfaXB2Nik6CisgICAgICAgIChQb3J0VGVzdC50ZXN0X2J1aWxkX3Bh
dGgpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvYXBh
Y2hlX2h0dHBfc2VydmVyLnB5OgorICAgICAgICAoTGF5b3V0VGVzdEFwYWNoZUh0dHBkKToKKyAg
ICAgICAgKExheW91dFRlc3RBcGFjaGVIdHRwZC5fX2luaXRfXyk6CisKIDIwMTItMTAtMDUgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgQXR0ZW1wdCB0
byBmaXggdGhlIFNub3dMZW9wYXJkIGJ1aWxkIHRvIG1ha2luZyB0aGUgaW1wbGVtZW50YXRpb24g
b2YKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0Zm9ybWlu
Zm9fbW9jay5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9z
eXN0ZW0vcGxhdGZvcm1pbmZvX21vY2sucHkJKHJldmlzaW9uIDEzMDU4MikKKysrIFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0Zm9ybWluZm9fbW9jay5weQkod29ya2lu
ZyBjb3B5KQpAQCAtNDIsNyArNDIsNyBAQCBjbGFzcyBNb2NrUGxhdGZvcm1JbmZvKG9iamVjdCk6
CiAgICAgICAgIHJldHVybiBzZWxmLm9zX25hbWUgPT0gJ3dpbicKIAogICAgIGRlZiBpc19jeWd3
aW4oc2VsZik6Ci0gICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICByZXR1cm4gc2VsZi5vc19u
YW1lID09ICdjeWd3aW4nCiAKICAgICBkZWYgaXNfZnJlZWJzZChzZWxmKToKICAgICAgICAgcmV0
dXJuIHNlbGYub3NfbmFtZSA9PSAnZnJlZWJzZCcKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkJKHJldmlzaW9uIDEzMDU4MikKKysr
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQkod29ya2lu
ZyBjb3B5KQpAQCAtMzksNiArMzksNyBAQCBpbXBvcnQgb3MKIGltcG9ydCBvcGVyYXRvcgogaW1w
b3J0IG9wdHBhcnNlCiBpbXBvcnQgcmUKK2ltcG9ydCBzb2NrZXQKIGltcG9ydCBzeXMKIAogdHJ5
OgpAQCAtMjAzLDcgKzIwNCw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgYmFzZWxp
bmVfc2VhcmNoX3BhdGhzID0gc2VsZi5iYXNlbGluZV9zZWFyY2hfcGF0aCgpCiAgICAgICAgIHJl
dHVybiBiYXNlbGluZV9zZWFyY2hfcGF0aHNbMF0KIAotCiAgICAgZGVmIGJhc2VsaW5lX3NlYXJj
aF9wYXRoKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5nZXRfb3B0aW9uKCdhZGRpdGlvbmFs
X3BsYXRmb3JtX2RpcmVjdG9yeScsIFtdKSArIHNlbGYuX2NvbXBhcmVfYmFzZWxpbmUoKSArIHNl
bGYuZGVmYXVsdF9iYXNlbGluZV9zZWFyY2hfcGF0aCgpCiAKQEAgLTkyMyw2ICs5MjMsMTIgQEAg
Y2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICBzZXJ2ZXIuc3RhcnQoKQogICAgICAgICBzZWxm
Ll93ZWJzb2NrZXRfc2VydmVyID0gc2VydmVyCiAKKyAgICBkZWYgaHR0cF9zZXJ2ZXJfc3VwcG9y
dHNfaXB2NihzZWxmKToKKyAgICAgICAgIyBDeWd3aW4gaXMgdGhlIG9ubHkgcGxhdGZvcm0gdG8g
c3RpbGwgdXNlIEFwYWNoZSAxLjMsIHdoaWNoIG9ubHkgc3VwcG9ydHMgSVBWNC4KKyAgICAgICAg
aWYgc2VsZi5ob3N0LnBsYXRmb3JtLmlzX2N5Z3dpbigpOgorICAgICAgICAgICAgcmV0dXJuIEZh
bHNlCisgICAgICAgIHJldHVybiBzb2NrZXQuaGFzX2lwdjYKKwogICAgIGRlZiBhY3F1aXJlX2h0
dHBfbG9jayhzZWxmKToKICAgICAgICAgc2VsZi5faHR0cF9sb2NrID0gaHR0cF9sb2NrLkh0dHBM
b2NrKE5vbmUsIGZpbGVzeXN0ZW09c2VsZi5fZmlsZXN5c3RlbSwgZXhlY3V0aXZlPXNlbGYuX2V4
ZWN1dGl2ZSkKICAgICAgICAgc2VsZi5faHR0cF9sb2NrLndhaXRfZm9yX2h0dHBkX2xvY2soKQpJ
bmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlX3VuaXR0
ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvYmFzZV91bml0dGVzdC5weQkocmV2aXNpb24gMTMwNTgyKQorKysgVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNv
cHkpCkBAIC0zNzksNiArMzc5LDE0IEBAIGNsYXNzIFBvcnRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNl
KToKICAgICBkZWYgdGVzdF9vcGVyYXRpbmdfc3lzdGVtKHNlbGYpOgogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKCdtYWMnLCBzZWxmLm1ha2VfcG9ydCgpLm9wZXJhdGluZ19zeXN0ZW0oKSkKIAor
ICAgIGRlZiB0ZXN0X2h0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYoc2VsZik6CisgICAgICAgIHBv
cnQgPSBzZWxmLm1ha2VfcG9ydCgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwb3J0Lmh0dHBf
c2VydmVyX3N1cHBvcnRzX2lwdjYoKSkKKyAgICAgICAgcG9ydC5ob3N0LnBsYXRmb3JtLm9zX25h
bWUgPSAnY3lnd2luJworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHBvcnQuaHR0cF9zZXJ2ZXJf
c3VwcG9ydHNfaXB2NigpKQorICAgICAgICBwb3J0Lmhvc3QucGxhdGZvcm0ub3NfbmFtZSA9ICd3
aW4nCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwb3J0Lmh0dHBfc2VydmVyX3N1cHBvcnRzX2lw
djYoKSkKKwogICAgIGRlZiB0ZXN0X2NoZWNrX2h0dHBkX3N1Y2Nlc3Moc2VsZik6CiAgICAgICAg
IHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9TW9ja0V4ZWN1dGl2ZTIoKSkKICAgICAg
ICAgcG9ydC5fcGF0aF90b19hcGFjaGUgPSBsYW1iZGE6ICcvdXNyL3NiaW4vaHR0cGQnCkBAIC00
NTEsNiArNDU5LDUgQEAgY2xhc3MgUG9ydFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAg
ICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQob3B0aW9ucz1vcHRwYXJzZS5WYWx1ZXMoeydidWlsZF9k
aXJlY3RvcnknOiAnL215LWJ1aWxkLWRpcmVjdG9yeS8nfSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwocG9ydC5fYnVpbGRfcGF0aCgpLCAnL215LWJ1aWxkLWRpcmVjdG9yeS9SZWxlYXNlJykK
IAotCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHVuaXR0ZXN0Lm1haW4oKQpJbmRl
eDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9hcGFjaGVfaHR0
cF9zZXJ2ZXIucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvc2VydmVycy9hcGFjaGVfaHR0cF9zZXJ2ZXIucHkJKHJldmlzaW9uIDEzMDU4MikKKysr
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvYXBhY2hlX2h0dHBf
c2VydmVyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00Miw3ICs0Miw2IEBAIF9sb2cgPSBsb2dnaW5n
LmdldExvZ2dlcihfX25hbWVfXykKIAogCiBjbGFzcyBMYXlvdXRUZXN0QXBhY2hlSHR0cGQoaHR0
cF9zZXJ2ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6Ci0KICAgICBkZWYgX19pbml0X18oc2VsZiwg
cG9ydF9vYmosIG91dHB1dF9kaXIsIGFkZGl0aW9uYWxfZGlycz1Ob25lLCBudW1iZXJfb2Zfc2Vy
dmVycz1Ob25lKToKICAgICAgICAgIiIiQXJnczoKICAgICAgICAgICBwb3J0X29iajogaGFuZGxl
IHRvIHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyByb3V0aW5lcwpAQCAtNzcsNyArNzYsNiBAQCBjbGFz
cyBMYXlvdXRUZXN0QXBhY2hlSHR0cGQoaHR0cF9zZXJ2ZXJfCiAgICAgICAgICAgICAnLUMnLCAi
XCdEb2N1bWVudFJvb3QgXCIlc1wiXCciICUgZG9jdW1lbnRfcm9vdCwKICAgICAgICAgICAgICct
YycsICJcJ0FsaWFzIC9qcy10ZXN0LXJlc291cmNlcyBcIiVzXCInIiAlIGpzX3Rlc3RfcmVzb3Vy
Y2VzX2RpciwKICAgICAgICAgICAgICctYycsICJcJ0FsaWFzIC9tZWRpYS1yZXNvdXJjZXMgXCIl
c1wiJyIgJSBtZWRpYV9yZXNvdXJjZXNfZGlyLAotICAgICAgICAgICAgJy1DJywgIlwnTGlzdGVu
ICVzXCciICUgIjEyNy4wLjAuMTo4MDAwIiwKICAgICAgICAgICAgICctYycsICJcJ1R5cGVzQ29u
ZmlnIFwiJXNcIlwnIiAlIG1pbWVfdHlwZXNfcGF0aCwKICAgICAgICAgICAgICctYycsICJcJ0N1
c3RvbUxvZyBcIiVzXCIgY29tbW9uXCciICUgYWNjZXNzX2xvZywKICAgICAgICAgICAgICctYycs
ICJcJ0Vycm9yTG9nIFwiJXNcIlwnIiAlIGVycm9yX2xvZywKQEAgLTg1LDYgKzgzLDE2IEBAIGNs
YXNzIExheW91dFRlc3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl8KICAgICAgICAgICAgICctYycs
ICJcJ1BpZEZpbGUgJXMnIiAlIHNlbGYuX3BpZF9maWxlLAogICAgICAgICAgICAgJy1rJywgInN0
YXJ0Il0KIAorICAgICAgICBmb3IgbWFwcGluZyBpbiBzZWxmLl9tYXBwaW5nczoKKyAgICAgICAg
ICAgIHBvcnQgPSBtYXBwaW5nWydwb3J0J10KKworICAgICAgICAgICAgc3RhcnRfY21kICs9IFsn
LUMnLCAiXCdMaXN0ZW4gMTI3LjAuMC4xOiVkXCciICUgcG9ydF0KKyAgICAgICAgICAgICMgV2Ug
bGlzdGVuIHRvIGJvdGggSVB2NCBhbmQgSVB2NiBsb29wLWJhY2sgYWRkcmVzc2VzLCBidXQgaWdu
b3JlCisgICAgICAgICAgICAjIHJlcXVlc3RzIHRvIDgwMDAgZnJvbSByYW5kb20gdXNlcnMgb24g
bmV0d29yay4KKyAgICAgICAgICAgICMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zNzEwNAorICAgICAgICAgICAgaWYgc2VsZi5fcG9ydF9vYmouaHR0cF9zZXJ2
ZXJfc3VwcG9ydHNfaXB2NigpOgorICAgICAgICAgICAgICAgIHN0YXJ0X2NtZCArPSBbJy1DJywg
IlwnTGlzdGVuIFs6OjFdOiVkXCciICUgcG9ydF0KKwogICAgICAgICBpZiBhZGRpdGlvbmFsX2Rp
cnM6CiAgICAgICAgICAgICBmb3IgYWxpYXMsIHBhdGggaW4gYWRkaXRpb25hbF9kaXJzLml0ZXJp
dGVtcygpOgogICAgICAgICAgICAgICAgIHN0YXJ0X2NtZCArPSBbJy1jJywgIlwnQWxpYXMgJXMg
XCIlc1wiXCciICUgKGFsaWFzLCBwYXRoKSwKQEAgLTk4LDcgKzEwNiw2IEBAIGNsYXNzIExheW91
dFRlc3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl8KICAgICAgICAgICAgICAgICAgICAgICAgICAg
Jy1jJywgIlwnTWluU3BhcmVTZXJ2ZXJzICVkXCciICUgc2VsZi5fbnVtYmVyX29mX3NlcnZlcnMs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICctYycsICJcJ01heFNwYXJlU2VydmVycyAlZFwn
IiAlIHNlbGYuX251bWJlcl9vZl9zZXJ2ZXJzXQogCi0KICAgICAgICAgc3RvcF9jbWQgPSBbZXhl
Y3V0YWJsZSwKICAgICAgICAgICAgICctZicsICJcIiVzXCIiICUgc2VsZi5fZ2V0X2FwYWNoZV9j
b25maWdfZmlsZV9wYXRoKHRlc3RfZGlyLCBvdXRwdXRfZGlyKSwKICAgICAgICAgICAgICctYycs
ICJcJ1BpZEZpbGUgJXMnIiAlIHNlbGYuX3BpZF9maWxlLApJbmRleDogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTMw
NTgzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMTItMTAtMDYgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPHJhcGhhZWwua3Viby5k
YS5jb3N0YUBpbnRlbC5jb20+CisKKyAgICAgICAgd2Via2l0cHk6IFBhc3MgdGhlIGBMaXN0ZW4n
IEFwYWNoZSBkaXJlY3RpdmUgZnJvbSBBcGFjaGUsIG5vdCB0aGUgaHR0cGQuY29uZiBmaWxlcy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NjAyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL2Nv
bmYvYXBhY2hlMi1kZWJpYW4taHR0cGQuY29uZjogUmVtb3ZlIHRoZSBgTGlzdGVuJworICAgICAg
ICBkaXJlY3RpdmUgYW5kIHJlbGF0ZWQgY29tbWVudHMsIGl0IGlzIHBhc3NlZCB0byBodHRwZCBi
eSB3ZWJraXRweQorICAgICAgICBub3cuCisgICAgICAgICogaHR0cC9jb25mL2FwYWNoZTItaHR0
cGQuY29uZjogRGl0dG8uCisgICAgICAgICogaHR0cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mOiBE
aXR0by4KKyAgICAgICAgKiBodHRwL2NvbmYvZmVkb3JhLWh0dHBkLmNvbmY6IERpdHRvLgorCiAy
MDEyLTEwLTA2ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8uZGEuY29zdGFA
aW50ZWwuY29tPgogCiAgICAgICAgIFtFRkxdIEdhcmRlbmluZy4KSW5kZXg6IExheW91dFRlc3Rz
L2h0dHAvY29uZi9hcGFjaGUyLWRlYmlhbi1odHRwZC5jb25mCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvY29uZi9hcGFjaGUyLWRlYmlhbi1odHRwZC5jb25mCShyZXZpc2lvbiAxMzA1
ODIpCisrKyBMYXlvdXRUZXN0cy9odHRwL2NvbmYvYXBhY2hlMi1kZWJpYW4taHR0cGQuY29uZgko
d29ya2luZyBjb3B5KQpAQCAtMTMsMjQgKzEzLDggQEAgTWluU3BhcmVTZXJ2ZXJzIDEKIE1heFNw
YXJlU2VydmVycyA1CiBTdGFydFNlcnZlcnMgMQogTWF4Q2xpZW50cyAxNTAKLSMKIE1heFJlcXVl
c3RzUGVyQ2hpbGQgMTAwMDAwCiAKLSMgQ29uZmlndXJlZCBmcm9tIHRoZSBodHRwZCBjb21tYW5k
IGxpbmUgZm9yIFdlYktpdCBsYXlvdXQgdGVzdHMuCi0jIFBvcnQgODQ0MyBpcyBoYXJkLWNvZGVk
IGFzIGl0IGlzIG5lZWRlZCBmb3IgdGhlIEhUVFBTIGNvbmZpZ3VyYXRpb24gbGF0ZXIgb24uCi1M
aXN0ZW4gMTI3LjAuMC4xOjgwODAKLUxpc3RlbiAxMjcuMC4wLjE6ODQ0MwotIyBXZSBsaXN0ZW4g
dG8gYm90aCBJUHY0IGFuZCBJUHY2IGxvb3AtYmFjayBhZGRyZXNzZXMsIGJ1dCBpZ25vcmUKLSMg
cmVxdWVzdHMgdG8gODAwMCBmcm9tIHJhbmRvbSB1c2VycyBvbiBuZXR3b3JrLgotIyBTZWUgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM3MTA0Ci0jIEZJWE1FOiBUaGlz
IGJyZWFrcyB0aGUgR1RLLURlYnVnIGFuZCBDaHJvbWl1bS1MaW51eCBib3RzLgotIyBTdGFydGlu
ZyB1cCBhcGFjaGUgZmFpbHMgb24gdGhpcyBsaW5lIHdpdGggYSBzeW50YXggZXJyb3IuCi0jIE5l
ZWQgYSB3YXkgdG8gZGV0ZWN0IGlmIHRoZSBtYWNoaW5lIHN1cHBvcnRzIGlwdjYgYW5kIHRoZW4K
LSMgb25seSBkbyB0aGlzIGJpbmRpbmcgaW4gdGhhdCBjYXNlLgotI0xpc3RlbiBbOjoxXTo4MDAw
Ci0jTGlzdGVuIFs6OjFdOjgwODAKLSNMaXN0ZW4gWzo6MV06ODQ0MwotCiBMb2FkTW9kdWxlIG1p
bWVfbW9kdWxlICAgICAgICAvdXNyL2xpYi9hcGFjaGUyL21vZHVsZXMvbW9kX21pbWUuc28KIExv
YWRNb2R1bGUgbmVnb3RpYXRpb25fbW9kdWxlIC91c3IvbGliL2FwYWNoZTIvbW9kdWxlcy9tb2Rf
bmVnb3RpYXRpb24uc28KIExvYWRNb2R1bGUgaW5jbHVkZV9tb2R1bGUgICAgL3Vzci9saWIvYXBh
Y2hlMi9tb2R1bGVzL21vZF9pbmNsdWRlLnNvCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL2NvbmYv
YXBhY2hlMi1odHRwZC5jb25mCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvY29uZi9h
cGFjaGUyLWh0dHBkLmNvbmYJKHJldmlzaW9uIDEzMDU4MikKKysrIExheW91dFRlc3RzL2h0dHAv
Y29uZi9hcGFjaGUyLWh0dHBkLmNvbmYJKHdvcmtpbmcgY29weSkKQEAgLTE1LDE5ICsxNSw2IEBA
IFN0YXJ0U2VydmVycyAxCiBNYXhDbGllbnRzIDE1MAogTWF4UmVxdWVzdHNQZXJDaGlsZCAxMDAw
MDAKIAotIyBDb25maWd1cmVkIGZyb20gdGhlIGh0dHBkIGNvbW1hbmQgbGluZSBmb3IgV2ViS2l0
IGxheW91dCB0ZXN0cy4KLSMgUG9ydCA4NDQzIGlzIGhhcmQtY29kZWQgYXMgaXQgaXMgbmVlZGVk
IGZvciB0aGUgSFRUUFMgY29uZmlndXJhdGlvbiBsYXRlciBvbi4KLSMKLSNMaXN0ZW4gMzAwMAot
TGlzdGVuIDEyNy4wLjAuMTo4MDgwCi1MaXN0ZW4gMTI3LjAuMC4xOjg0NDMKLSMgV2UgbGlzdGVu
IHRvIGJvdGggSVB2NCBhbmQgSVB2NiBsb29wLWJhY2sgYWRkcmVzc2VzLCBidXQgaWdub3JlCi0j
IHJlcXVlc3RzIHRvIDgwMDAgZnJvbSByYW5kb20gdXNlcnMgb24gbmV0d29yay4KLSMgU2VlIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEwNAotTGlzdGVuIFs6OjFd
OjgwMDAKLUxpc3RlbiBbOjoxXTo4MDgwCi1MaXN0ZW4gWzo6MV06ODQ0MwotCiBMb2FkTW9kdWxl
IGF1dGh6X2hvc3RfbW9kdWxlIGxpYmV4ZWMvYXBhY2hlMi9tb2RfYXV0aHpfaG9zdC5zbwogTG9h
ZE1vZHVsZSBpbmNsdWRlX21vZHVsZSBsaWJleGVjL2FwYWNoZTIvbW9kX2luY2x1ZGUuc28KIExv
YWRNb2R1bGUgbG9nX2NvbmZpZ19tb2R1bGUgbGliZXhlYy9hcGFjaGUyL21vZF9sb2dfY29uZmln
LnNvCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL2NvbmYvY3lnd2luLWh0dHBkLmNvbmYKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mCShyZXZpc2lv
biAxMzA1ODIpCisrKyBMYXlvdXRUZXN0cy9odHRwL2NvbmYvY3lnd2luLWh0dHBkLmNvbmYJKHdv
cmtpbmcgY29weSkKQEAgLTE5LDEzICsxOSw2IEBAIFN0YXJ0U2VydmVycyAxCiBNYXhDbGllbnRz
IDE1MAogTWF4UmVxdWVzdHNQZXJDaGlsZCAxMDAwMDAKIAotIyBDb25maWd1cmVkIGZyb20gdGhl
IGh0dHBkIGNvbW1hbmQgbGluZSBmb3IgV2ViS2l0IGxheW91dCB0ZXN0cy4KLUxpc3RlbiAxMjcu
MC4wLjE6ODA4MAotIyBBcGFjaGUgMS4zIG9ubHkgc3VwcG9ydHMgSVB2NCwgc28gd2UgZG8gbm90
IGxpc3RlbiBvbiA6OjEgKElQdjYgbG9vcGJhY2spLgotIyBUaGlzIG1heSBjYXVzZSBmbGFreSB0
ZXN0cyBvbiBzeXN0ZW1zIHdoaWNoIHN1cHBvcnQgSVB2NiBpZiBsb2NhbGhvc3QgcmVzb2x2ZXMK
LSMgdG8gOjoxIGluIGFkZGl0aW9uIHRvIDEyNy4wLjAuMS4KLSMgU2VlIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEwNAotCiBMb2FkTW9kdWxlIGNvbmZpZ19sb2df
bW9kdWxlICBsaWIvYXBhY2hlL21vZF9sb2dfY29uZmlnLmRsbAogTG9hZE1vZHVsZSBtaW1lX21v
ZHVsZSAgICAgICAgbGliL2FwYWNoZS9tb2RfbWltZS5kbGwKIExvYWRNb2R1bGUgbmVnb3RpYXRp
b25fbW9kdWxlIGxpYi9hcGFjaGUvbW9kX25lZ290aWF0aW9uLmRsbApJbmRleDogTGF5b3V0VGVz
dHMvaHR0cC9jb25mL2ZlZG9yYS1odHRwZC5jb25mCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvY29uZi9mZWRvcmEtaHR0cGQuY29uZgkocmV2aXNpb24gMTMwNTgyKQorKysgTGF5b3V0
VGVzdHMvaHR0cC9jb25mL2ZlZG9yYS1odHRwZC5jb25mCSh3b3JraW5nIGNvcHkpCkBAIC0xNiwx
NSArMTYsNiBAQCBTdGFydFNlcnZlcnMgMQogTWF4Q2xpZW50cyAxNTAKIE1heFJlcXVlc3RzUGVy
Q2hpbGQgMTAwMDAwCiAKLUxpc3RlbiAxMjcuMC4wLjE6ODA4MAotTGlzdGVuIDEyNy4wLjAuMTo4
NDQzCi0jIFdlIGxpc3RlbiB0byBib3RoIElQdjQgYW5kIElQdjYgbG9vcC1iYWNrIGFkZHJlc3Nl
cywgYnV0IGlnbm9yZQotIyByZXF1ZXN0cyB0byA4MDAwIGZyb20gcmFuZG9tIHVzZXJzIG9uIG5l
dHdvcmsuCi0jIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzcx
MDQKLUxpc3RlbiBbOjoxXTo4MDAwCi1MaXN0ZW4gWzo6MV06ODA4MAotTGlzdGVuIFs6OjFdOjg0
NDMKLQogTG9hZE1vZHVsZSBhdXRoel9ob3N0X21vZHVsZSBtb2R1bGVzL21vZF9hdXRoel9ob3N0
LnNvCiBMb2FkTW9kdWxlIGluY2x1ZGVfbW9kdWxlIG1vZHVsZXMvbW9kX2luY2x1ZGUuc28KIExv
YWRNb2R1bGUgbG9nX2NvbmZpZ19tb2R1bGUgbW9kdWxlcy9tb2RfbG9nX2NvbmZpZy5zbwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>170875</attachid>
            <date>2012-10-26 03:37:32 -0700</date>
            <delta_ts>2012-10-26 04:38:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98602-20121026133443.patch</filename>
            <type>text/plain</type>
            <size>12849</size>
            <attacher name="Raphael Kubo da Costa (:rakuco)">rakuco</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDEzMjU4NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM5IEBACisyMDEyLTEwLTI2ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1
Ym8uZGEuY29zdGFAaW50ZWwuY29tPgorCisgICAgICAgIHdlYmtpdHB5OiBQYXNzIHRoZSBgTGlz
dGVuJyBBcGFjaGUgZGlyZWN0aXZlIGZyb20gQXBhY2hlLCBub3QgdGhlIGh0dHBkLmNvbmYgZmls
ZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODYw
MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVuaWZ5
IGFsbCB0aGUgZGlmZmVyZW50IGBMaXN0ZW4nIGRpcmVjdGl2ZXMgcHJlc2VudCBpbiB0aGUgc2V2
ZXJhbAorICAgICAgICBodHRwZC5jb25mIGZpbGVzIHdlIGhhdmUgaW4gTGF5b3V0VGVzdHMvaHR0
cC9jb25mLiBGb3Igb25lLCB3ZQorICAgICAgICB3ZXJlIGFscmVhZHkgcGFzc2luZyBgTGlzdGVu
IDEyNy4wLjAuMTo4MDAwJyB2aWEgd2Via2l0cHkgYmVmb3JlLAorICAgICAgICBhbmQgb3Blbmlu
ZyB0aGUgb3RoZXIgcG9ydHMgZnJvbSB0aGUgY29uZiBmaWxlcy4KKworICAgICAgICBUaGUgY29u
ZmlndXJhdGlvbiBmaWxlcyBkaWZmZXJlZCBtb3N0bHkgaW4gdGhlIHdheSB0aGV5IGhhbmRsZWQK
KyAgICAgICAgSVBWNiBwb3J0cy4gU29tZSBvZiB0aGVtIGRpZCBub3QgbGlzdGVuIHRvIElQVjYg
cG9ydHMgYmVjYXVzZSB0aGUKKyAgICAgICAgc3lzdGVtcyB3aGljaCB1c2VkIHRoZW0gc29tZXRp
bWVzIGRpZCBub3QgaGF2ZSBJUFY2IHN1cHBvcnQuIFRoZQorICAgICAgICBgaHR0cF9zZXJ2ZXJf
c3VwcG9ydHNfaXB2NicgbWV0aG9kIGhhcyBiZWVuIGFkZGVkIHRvIFBvcnQgdG8KKyAgICAgICAg
YWRkcmVzcyB0aGF0LiBjeWd3aW4sIG9uIGl0cyB0dXJuLCBzdGlsbCBzZWVtcyB0byB1c2UgQXBh
Y2hlIDEuMywKKyAgICAgICAgd2hpY2ggZG9lcyBub3Qgc3VwcG9ydCBJUFY2IGF0IGFsbDsgdGhl
IG5ld2x5LWFkZGVkIG1ldGhvZCBoYXMgYQorICAgICAgICBzcGVjaWFsIGNhc2UgZm9yIHRoYXQu
IFBsdXMsIHBlcmZvcm0gYSBzb2NrZXQuZ2V0YWRkcmluZm8oKSBjYWxsCisgICAgICAgIHRoZSBz
YW1lIHdheSBBcGFjaGUgaXRzZWxmIGRvZXMgc28gd2UgYXJlIHN1cmUgd2Ugb25seSBlbmFibGUg
SVBWNgorICAgICAgICB3aGVuIHNldHRpbmcgdGhhdCB1cCBpbiB0aGUgaHR0cGQgc2VydmVyIGlz
IG5vdCBnb2luZyB0byBmYWlsLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24v
c3lzdGVtL3BsYXRmb3JtaW5mb19tb2NrLnB5OgorICAgICAgICAoTW9ja1BsYXRmb3JtSW5mby5p
c19jeWd3aW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
YmFzZS5weToKKyAgICAgICAgKFBvcnQuYmFzZWxpbmVfdmVyc2lvbl9kaXIpOgorICAgICAgICAo
UG9ydC50by5zdGFydF93ZWJzb2NrZXRfc2VydmVyKToKKyAgICAgICAgKFBvcnQudG8pOgorICAg
ICAgICAoUG9ydC50by5odHRwX3NlcnZlcl9zdXBwb3J0c19pcHY2KToKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2VfdW5pdHRlc3QucHk6CisgICAgICAg
IChQb3J0VGVzdC50ZXN0X2h0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYpOgorICAgICAgICAoUG9y
dFRlc3QudGVzdF9idWlsZF9wYXRoKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9zZXJ2ZXJzL2FwYWNoZV9odHRwX3NlcnZlci5weToKKyAgICAgICAgKExheW91dFRl
c3RBcGFjaGVIdHRwZCk6CisgICAgICAgIChMYXlvdXRUZXN0QXBhY2hlSHR0cGQuX19pbml0X18p
OgorCiAyMDEyLTEwLTI2ICBYaWFvYm8gV2FuZyAgPHhid2FuZ0B0b3JjaG1vYmlsZS5jb20uY24+
CiAKICAgICAgICAgW0JsYWNrQmVycnldIFN1cHBvcnQgcGl4ZWwgdGVzdHMgZm9yIEJsYWNrQmVy
cnkgRFJUCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vcGxhdGZv
cm1pbmZvX21vY2sucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21t
b24vc3lzdGVtL3BsYXRmb3JtaW5mb19tb2NrLnB5CShyZXZpc2lvbiAxMzI1ODcpCisrKyBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vcGxhdGZvcm1pbmZvX21vY2sucHkJKHdv
cmtpbmcgY29weSkKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgTW9ja1BsYXRmb3JtSW5mbyhvYmpl
Y3QpOgogICAgICAgICByZXR1cm4gc2VsZi5vc19uYW1lID09ICd3aW4nCiAKICAgICBkZWYgaXNf
Y3lnd2luKHNlbGYpOgotICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgcmV0dXJuIHNlbGYu
b3NfbmFtZSA9PSAnY3lnd2luJwogCiAgICAgZGVmIGlzX2ZyZWVic2Qoc2VsZik6CiAgICAgICAg
IHJldHVybiBzZWxmLm9zX25hbWUgPT0gJ2ZyZWVic2QnCkluZGV4OiBUb29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CShyZXZpc2lvbiAxMzI1ODcp
CisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkJKHdv
cmtpbmcgY29weSkKQEAgLTIwNyw3ICsyMDcsNiBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAg
ICAgIGJhc2VsaW5lX3NlYXJjaF9wYXRocyA9IHNlbGYuYmFzZWxpbmVfc2VhcmNoX3BhdGgoKQog
ICAgICAgICByZXR1cm4gYmFzZWxpbmVfc2VhcmNoX3BhdGhzWzBdCiAKLQogICAgIGRlZiBiYXNl
bGluZV9zZWFyY2hfcGF0aChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuZ2V0X29wdGlvbign
YWRkaXRpb25hbF9wbGF0Zm9ybV9kaXJlY3RvcnknLCBbXSkgKyBzZWxmLl9jb21wYXJlX2Jhc2Vs
aW5lKCkgKyBzZWxmLmRlZmF1bHRfYmFzZWxpbmVfc2VhcmNoX3BhdGgoKQogCkBAIC05MjQsNiAr
OTIzLDEzIEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgc2VydmVyLnN0YXJ0KCkKICAg
ICAgICAgc2VsZi5fd2Vic29ja2V0X3NlcnZlciA9IHNlcnZlcgogCisgICAgZGVmIGh0dHBfc2Vy
dmVyX3N1cHBvcnRzX2lwdjYoc2VsZik6CisgICAgICAgICMgQ3lnd2luIGlzIHRoZSBvbmx5IHBs
YXRmb3JtIHRvIHN0aWxsIHVzZSBBcGFjaGUgMS4zLCB3aGljaCBvbmx5IHN1cHBvcnRzIElQVjQu
CisgICAgICAgICMgT25jZSBpdCBtb3ZlcyB0byBBcGFjaGUgMiwgd2UgY2FuIGRyb3AgdGhpcyBt
ZXRob2QgYWx0b2dldGhlci4KKyAgICAgICAgaWYgc2VsZi5ob3N0LnBsYXRmb3JtLmlzX2N5Z3dp
bigpOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisKICAg
ICBkZWYgYWNxdWlyZV9odHRwX2xvY2soc2VsZik6CiAgICAgICAgIHNlbGYuX2h0dHBfbG9jayA9
IGh0dHBfbG9jay5IdHRwTG9jayhOb25lLCBmaWxlc3lzdGVtPXNlbGYuX2ZpbGVzeXN0ZW0sIGV4
ZWN1dGl2ZT1zZWxmLl9leGVjdXRpdmUpCiAgICAgICAgIHNlbGYuX2h0dHBfbG9jay53YWl0X2Zv
cl9odHRwZF9sb2NrKCkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvYmFzZV91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2VfdW5pdHRlc3QucHkJKHJldmlzaW9uIDEzMjU4NykK
KysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZV91bml0dGVz
dC5weQkod29ya2luZyBjb3B5KQpAQCAtMzc5LDYgKzM3OSwxNCBAQCBjbGFzcyBQb3J0VGVzdCh1
bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHRlc3Rfb3BlcmF0aW5nX3N5c3RlbShzZWxmKToK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnbWFjJywgc2VsZi5tYWtlX3BvcnQoKS5vcGVyYXRp
bmdfc3lzdGVtKCkpCiAKKyAgICBkZWYgdGVzdF9odHRwX3NlcnZlcl9zdXBwb3J0c19pcHY2KHNl
bGYpOgorICAgICAgICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQoKQorICAgICAgICBzZWxmLmFzc2Vy
dFRydWUocG9ydC5odHRwX3NlcnZlcl9zdXBwb3J0c19pcHY2KCkpCisgICAgICAgIHBvcnQuaG9z
dC5wbGF0Zm9ybS5vc19uYW1lID0gJ2N5Z3dpbicKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShw
b3J0Lmh0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYoKSkKKyAgICAgICAgcG9ydC5ob3N0LnBsYXRm
b3JtLm9zX25hbWUgPSAnd2luJworICAgICAgICBzZWxmLmFzc2VydFRydWUocG9ydC5odHRwX3Nl
cnZlcl9zdXBwb3J0c19pcHY2KCkpCisKICAgICBkZWYgdGVzdF9jaGVja19odHRwZF9zdWNjZXNz
KHNlbGYpOgogICAgICAgICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQoZXhlY3V0aXZlPU1vY2tFeGVj
dXRpdmUyKCkpCiAgICAgICAgIHBvcnQuX3BhdGhfdG9fYXBhY2hlID0gbGFtYmRhOiAnL3Vzci9z
YmluL2h0dHBkJwpAQCAtNDUxLDYgKzQ1OSw1IEBAIGNsYXNzIFBvcnRUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKToKICAgICAgICAgcG9ydCA9IHNlbGYubWFrZV9wb3J0KG9wdGlvbnM9b3B0cGFyc2Uu
VmFsdWVzKHsnYnVpbGRfZGlyZWN0b3J5JzogJy9teS1idWlsZC1kaXJlY3RvcnkvJ30pKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQuX2J1aWxkX3BhdGgoKSwgJy9teS1idWlsZC1kaXJl
Y3RvcnkvUmVsZWFzZScpCiAKLQogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICB1bml0
dGVzdC5tYWluKCkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Nl
cnZlcnMvYXBhY2hlX2h0dHBfc2VydmVyLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvYXBhY2hlX2h0dHBfc2VydmVyLnB5CShyZXZp
c2lvbiAxMzI1ODcpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2
ZXJzL2FwYWNoZV9odHRwX3NlcnZlci5weQkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBA
QAogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcwogaW1wb3J0IHJlCitpbXBvcnQgc29ja2V0CiBp
bXBvcnQgc3lzCiAKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnNlcnZlcnMgaW1wb3J0IGh0
dHBfc2VydmVyX2Jhc2UKQEAgLTQyLDcgKzQzLDYgQEAgX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2Vy
KF9fbmFtZV9fKQogCiAKIGNsYXNzIExheW91dFRlc3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl9i
YXNlLkh0dHBTZXJ2ZXJCYXNlKToKLQogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0X29iaiwg
b3V0cHV0X2RpciwgYWRkaXRpb25hbF9kaXJzPU5vbmUsIG51bWJlcl9vZl9zZXJ2ZXJzPU5vbmUp
OgogICAgICAgICAiIiJBcmdzOgogICAgICAgICAgIHBvcnRfb2JqOiBoYW5kbGUgdG8gdGhlIHBs
YXRmb3JtLXNwZWNpZmljIHJvdXRpbmVzCkBAIC03Nyw3ICs3Nyw2IEBAIGNsYXNzIExheW91dFRl
c3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl8KICAgICAgICAgICAgICctQycsICJcJ0RvY3VtZW50
Um9vdCBcIiVzXCJcJyIgJSBkb2N1bWVudF9yb290LAogICAgICAgICAgICAgJy1jJywgIlwnQWxp
YXMgL2pzLXRlc3QtcmVzb3VyY2VzIFwiJXNcIiciICUganNfdGVzdF9yZXNvdXJjZXNfZGlyLAog
ICAgICAgICAgICAgJy1jJywgIlwnQWxpYXMgL21lZGlhLXJlc291cmNlcyBcIiVzXCInIiAlIG1l
ZGlhX3Jlc291cmNlc19kaXIsCi0gICAgICAgICAgICAnLUMnLCAiXCdMaXN0ZW4gJXNcJyIgJSAi
MTI3LjAuMC4xOjgwMDAiLAogICAgICAgICAgICAgJy1jJywgIlwnVHlwZXNDb25maWcgXCIlc1wi
XCciICUgbWltZV90eXBlc19wYXRoLAogICAgICAgICAgICAgJy1jJywgIlwnQ3VzdG9tTG9nIFwi
JXNcIiBjb21tb25cJyIgJSBhY2Nlc3NfbG9nLAogICAgICAgICAgICAgJy1jJywgIlwnRXJyb3JM
b2cgXCIlc1wiXCciICUgZXJyb3JfbG9nLApAQCAtODUsNiArODQsMzAgQEAgY2xhc3MgTGF5b3V0
VGVzdEFwYWNoZUh0dHBkKGh0dHBfc2VydmVyXwogICAgICAgICAgICAgJy1jJywgIlwnUGlkRmls
ZSAlcyciICUgc2VsZi5fcGlkX2ZpbGUsCiAgICAgICAgICAgICAnLWsnLCAic3RhcnQiXQogCisg
ICAgICAgIGVuYWJsZV9pcHY2ID0gc2VsZi5fcG9ydF9vYmouaHR0cF9zZXJ2ZXJfc3VwcG9ydHNf
aXB2NigpCisgICAgICAgICMgUGVyZm9ybSBwYXJ0IG9mIHRoZSBjaGVja3MgQXBhY2hlJ3MgQVBS
IGRvZXMgd2hlbiB0cnlpbmcgdG8gbGlzdGVuIHRvCisgICAgICAgICMgYSBzcGVjaWZpYyBob3N0
L3BvcnQuIFRoaXMgYWxsb3dzIHVzIHRvIGF2b2lkIHRyeWluZyB0byBsaXN0ZW4gdG8KKyAgICAg
ICAgIyBJUFY2IGFkZHJlc3NlcyB3aGVuIGl0IGZhaWxzIG9uIEFwYWNoZS4gQVBSIGl0c2VsZiB0
cmllcyB0byBjYWxsCisgICAgICAgICMgZ2V0YWRkcmluZm8oKSBhZ2FpbiB3aXRob3V0IEFJX0FE
RFJDT05GSUcgaWYgdGhlIGZpcnN0IGNhbGwgZmFpbHMKKyAgICAgICAgIyB3aXRoIEVCQURGTEFH
UywgYnV0IHRoYXQgaXMgbm90IGhvdyBpdCBub3JtYWxseSBmYWlscyBpbiBvdXIgdXNlCisgICAg
ICAgICMgY2FzZXMsIHNvIGlnbm9yZSB0aGF0IGZvciBub3cuCisgICAgICAgICMgU2VlIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODYwMiNjNworICAgICAgICB0cnk6
CisgICAgICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oJzo6MScsIDAsIDAsIDAsIDAsIHNvY2tl
dC5BSV9BRERSQ09ORklHKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBlbmFibGVfaXB2
NiA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1hcHBpbmcgaW4gc2VsZi5fbWFwcGluZ3M6CisgICAg
ICAgICAgICBwb3J0ID0gbWFwcGluZ1sncG9ydCddCisKKyAgICAgICAgICAgIHN0YXJ0X2NtZCAr
PSBbJy1DJywgIlwnTGlzdGVuIDEyNy4wLjAuMTolZFwnIiAlIHBvcnRdCisKKyAgICAgICAgICAg
ICMgV2UgbGlzdGVuIHRvIGJvdGggSVB2NCBhbmQgSVB2NiBsb29wLWJhY2sgYWRkcmVzc2VzLCBi
dXQgaWdub3JlCisgICAgICAgICAgICAjIHJlcXVlc3RzIHRvIDgwMDAgZnJvbSByYW5kb20gdXNl
cnMgb24gbmV0d29yay4KKyAgICAgICAgICAgICMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zNzEwNAorICAgICAgICAgICAgaWYgZW5hYmxlX2lwdjY6CisgICAg
ICAgICAgICAgICAgc3RhcnRfY21kICs9IFsnLUMnLCAiXCdMaXN0ZW4gWzo6MV06JWRcJyIgJSBw
b3J0XQorCiAgICAgICAgIGlmIGFkZGl0aW9uYWxfZGlyczoKICAgICAgICAgICAgIGZvciBhbGlh
cywgcGF0aCBpbiBhZGRpdGlvbmFsX2RpcnMuaXRlcml0ZW1zKCk6CiAgICAgICAgICAgICAgICAg
c3RhcnRfY21kICs9IFsnLWMnLCAiXCdBbGlhcyAlcyBcIiVzXCJcJyIgJSAoYWxpYXMsIHBhdGgp
LApAQCAtOTgsNyArMTIxLDYgQEAgY2xhc3MgTGF5b3V0VGVzdEFwYWNoZUh0dHBkKGh0dHBfc2Vy
dmVyXwogICAgICAgICAgICAgICAgICAgICAgICAgICAnLWMnLCAiXCdNaW5TcGFyZVNlcnZlcnMg
JWRcJyIgJSBzZWxmLl9udW1iZXJfb2Zfc2VydmVycywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJy1jJywgIlwnTWF4U3BhcmVTZXJ2ZXJzICVkXCciICUgc2VsZi5fbnVtYmVyX29mX3NlcnZl
cnNdCiAKLQogICAgICAgICBzdG9wX2NtZCA9IFtleGVjdXRhYmxlLAogICAgICAgICAgICAgJy1m
JywgIlwiJXNcIiIgJSBzZWxmLl9nZXRfYXBhY2hlX2NvbmZpZ19maWxlX3BhdGgodGVzdF9kaXIs
IG91dHB1dF9kaXIpLAogICAgICAgICAgICAgJy1jJywgIlwnUGlkRmlsZSAlcyciICUgc2VsZi5f
cGlkX2ZpbGUsCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMzI1ODcpCisrKyBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0xMC0yNiAgUmFwaGFl
bCBLdWJvIGRhIENvc3RhICA8cmFwaGFlbC5rdWJvLmRhLmNvc3RhQGludGVsLmNvbT4KKworICAg
ICAgICB3ZWJraXRweTogUGFzcyB0aGUgYExpc3RlbicgQXBhY2hlIGRpcmVjdGl2ZSBmcm9tIEFw
YWNoZSwgbm90IHRoZSBodHRwZC5jb25mIGZpbGVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg2MDIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvY29uZi9hcGFjaGUyLWRlYmlhbi1odHRwZC5j
b25mOiBSZW1vdmUgdGhlIGBMaXN0ZW4nCisgICAgICAgIGRpcmVjdGl2ZSBhbmQgcmVsYXRlZCBj
b21tZW50cywgaXQgaXMgcGFzc2VkIHRvIGh0dHBkIGJ5IHdlYmtpdHB5CisgICAgICAgIG5vdy4K
KyAgICAgICAgKiBodHRwL2NvbmYvYXBhY2hlMi1odHRwZC5jb25mOiBEaXR0by4KKyAgICAgICAg
KiBodHRwL2NvbmYvY3lnd2luLWh0dHBkLmNvbmY6IERpdHRvLgorICAgICAgICAqIGh0dHAvY29u
Zi9mZWRvcmEtaHR0cGQuY29uZjogRGl0dG8uCisKIDIwMTItMTAtMjYgIEtlbnQgVGFtdXJhICA8
dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0gVGVzdCBleHBlY3RhdGlv
biB1cGRhdGUuCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL2NvbmYvYXBhY2hlMi1kZWJpYW4taHR0
cGQuY29uZgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL2NvbmYvYXBhY2hlMi1kZWJp
YW4taHR0cGQuY29uZgkocmV2aXNpb24gMTMyNTg3KQorKysgTGF5b3V0VGVzdHMvaHR0cC9jb25m
L2FwYWNoZTItZGViaWFuLWh0dHBkLmNvbmYJKHdvcmtpbmcgY29weSkKQEAgLTEzLDI0ICsxMyw4
IEBAIE1pblNwYXJlU2VydmVycyAxCiBNYXhTcGFyZVNlcnZlcnMgNQogU3RhcnRTZXJ2ZXJzIDEK
IE1heENsaWVudHMgMTUwCi0jCiBNYXhSZXF1ZXN0c1BlckNoaWxkIDEwMDAwMAogCi0jIENvbmZp
Z3VyZWQgZnJvbSB0aGUgaHR0cGQgY29tbWFuZCBsaW5lIGZvciBXZWJLaXQgbGF5b3V0IHRlc3Rz
LgotIyBQb3J0IDg0NDMgaXMgaGFyZC1jb2RlZCBhcyBpdCBpcyBuZWVkZWQgZm9yIHRoZSBIVFRQ
UyBjb25maWd1cmF0aW9uIGxhdGVyIG9uLgotTGlzdGVuIDEyNy4wLjAuMTo4MDgwCi1MaXN0ZW4g
MTI3LjAuMC4xOjg0NDMKLSMgV2UgbGlzdGVuIHRvIGJvdGggSVB2NCBhbmQgSVB2NiBsb29wLWJh
Y2sgYWRkcmVzc2VzLCBidXQgaWdub3JlCi0jIHJlcXVlc3RzIHRvIDgwMDAgZnJvbSByYW5kb20g
dXNlcnMgb24gbmV0d29yay4KLSMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zNzEwNAotIyBGSVhNRTogVGhpcyBicmVha3MgdGhlIEdUSy1EZWJ1ZyBhbmQgQ2hy
b21pdW0tTGludXggYm90cy4KLSMgU3RhcnRpbmcgdXAgYXBhY2hlIGZhaWxzIG9uIHRoaXMgbGlu
ZSB3aXRoIGEgc3ludGF4IGVycm9yLgotIyBOZWVkIGEgd2F5IHRvIGRldGVjdCBpZiB0aGUgbWFj
aGluZSBzdXBwb3J0cyBpcHY2IGFuZCB0aGVuCi0jIG9ubHkgZG8gdGhpcyBiaW5kaW5nIGluIHRo
YXQgY2FzZS4KLSNMaXN0ZW4gWzo6MV06ODAwMAotI0xpc3RlbiBbOjoxXTo4MDgwCi0jTGlzdGVu
IFs6OjFdOjg0NDMKLQogTG9hZE1vZHVsZSBtaW1lX21vZHVsZSAgICAgICAgL3Vzci9saWIvYXBh
Y2hlMi9tb2R1bGVzL21vZF9taW1lLnNvCiBMb2FkTW9kdWxlIG5lZ290aWF0aW9uX21vZHVsZSAv
dXNyL2xpYi9hcGFjaGUyL21vZHVsZXMvbW9kX25lZ290aWF0aW9uLnNvCiBMb2FkTW9kdWxlIGlu
Y2x1ZGVfbW9kdWxlICAgIC91c3IvbGliL2FwYWNoZTIvbW9kdWxlcy9tb2RfaW5jbHVkZS5zbwpJ
bmRleDogTGF5b3V0VGVzdHMvaHR0cC9jb25mL2FwYWNoZTItaHR0cGQuY29uZgo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL2NvbmYvYXBhY2hlMi1odHRwZC5jb25mCShyZXZpc2lvbiAx
MzI1ODcpCisrKyBMYXlvdXRUZXN0cy9odHRwL2NvbmYvYXBhY2hlMi1odHRwZC5jb25mCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNSwxOSArMTUsNiBAQCBTdGFydFNlcnZlcnMgMQogTWF4Q2xpZW50cyAx
NTAKIE1heFJlcXVlc3RzUGVyQ2hpbGQgMTAwMDAwCiAKLSMgQ29uZmlndXJlZCBmcm9tIHRoZSBo
dHRwZCBjb21tYW5kIGxpbmUgZm9yIFdlYktpdCBsYXlvdXQgdGVzdHMuCi0jIFBvcnQgODQ0MyBp
cyBoYXJkLWNvZGVkIGFzIGl0IGlzIG5lZWRlZCBmb3IgdGhlIEhUVFBTIGNvbmZpZ3VyYXRpb24g
bGF0ZXIgb24uCi0jCi0jTGlzdGVuIDMwMDAKLUxpc3RlbiAxMjcuMC4wLjE6ODA4MAotTGlzdGVu
IDEyNy4wLjAuMTo4NDQzCi0jIFdlIGxpc3RlbiB0byBib3RoIElQdjQgYW5kIElQdjYgbG9vcC1i
YWNrIGFkZHJlc3NlcywgYnV0IGlnbm9yZQotIyByZXF1ZXN0cyB0byA4MDAwIGZyb20gcmFuZG9t
IHVzZXJzIG9uIG5ldHdvcmsuCi0jIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzcxMDQKLUxpc3RlbiBbOjoxXTo4MDAwCi1MaXN0ZW4gWzo6MV06ODA4MAotTGlz
dGVuIFs6OjFdOjg0NDMKLQogTG9hZE1vZHVsZSBhdXRoel9ob3N0X21vZHVsZSBsaWJleGVjL2Fw
YWNoZTIvbW9kX2F1dGh6X2hvc3Quc28KIExvYWRNb2R1bGUgaW5jbHVkZV9tb2R1bGUgbGliZXhl
Yy9hcGFjaGUyL21vZF9pbmNsdWRlLnNvCiBMb2FkTW9kdWxlIGxvZ19jb25maWdfbW9kdWxlIGxp
YmV4ZWMvYXBhY2hlMi9tb2RfbG9nX2NvbmZpZy5zbwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC9j
b25mL2N5Z3dpbi1odHRwZC5jb25mCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvY29u
Zi9jeWd3aW4taHR0cGQuY29uZgkocmV2aXNpb24gMTMyNTg3KQorKysgTGF5b3V0VGVzdHMvaHR0
cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mCSh3b3JraW5nIGNvcHkpCkBAIC0xOSwxMyArMTksNiBA
QCBTdGFydFNlcnZlcnMgMQogTWF4Q2xpZW50cyAxNTAKIE1heFJlcXVlc3RzUGVyQ2hpbGQgMTAw
MDAwCiAKLSMgQ29uZmlndXJlZCBmcm9tIHRoZSBodHRwZCBjb21tYW5kIGxpbmUgZm9yIFdlYktp
dCBsYXlvdXQgdGVzdHMuCi1MaXN0ZW4gMTI3LjAuMC4xOjgwODAKLSMgQXBhY2hlIDEuMyBvbmx5
IHN1cHBvcnRzIElQdjQsIHNvIHdlIGRvIG5vdCBsaXN0ZW4gb24gOjoxIChJUHY2IGxvb3BiYWNr
KS4KLSMgVGhpcyBtYXkgY2F1c2UgZmxha3kgdGVzdHMgb24gc3lzdGVtcyB3aGljaCBzdXBwb3J0
IElQdjYgaWYgbG9jYWxob3N0IHJlc29sdmVzCi0jIHRvIDo6MSBpbiBhZGRpdGlvbiB0byAxMjcu
MC4wLjEuCi0jIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzcx
MDQKLQogTG9hZE1vZHVsZSBjb25maWdfbG9nX21vZHVsZSAgbGliL2FwYWNoZS9tb2RfbG9nX2Nv
bmZpZy5kbGwKIExvYWRNb2R1bGUgbWltZV9tb2R1bGUgICAgICAgIGxpYi9hcGFjaGUvbW9kX21p
bWUuZGxsCiBMb2FkTW9kdWxlIG5lZ290aWF0aW9uX21vZHVsZSBsaWIvYXBhY2hlL21vZF9uZWdv
dGlhdGlvbi5kbGwKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvY29uZi9mZWRvcmEtaHR0cGQuY29u
Zgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL2NvbmYvZmVkb3JhLWh0dHBkLmNvbmYJ
KHJldmlzaW9uIDEzMjU4NykKKysrIExheW91dFRlc3RzL2h0dHAvY29uZi9mZWRvcmEtaHR0cGQu
Y29uZgkod29ya2luZyBjb3B5KQpAQCAtMTYsMTUgKzE2LDYgQEAgU3RhcnRTZXJ2ZXJzIDEKIE1h
eENsaWVudHMgMTUwCiBNYXhSZXF1ZXN0c1BlckNoaWxkIDEwMDAwMAogCi1MaXN0ZW4gMTI3LjAu
MC4xOjgwODAKLUxpc3RlbiAxMjcuMC4wLjE6ODQ0MwotIyBXZSBsaXN0ZW4gdG8gYm90aCBJUHY0
IGFuZCBJUHY2IGxvb3AtYmFjayBhZGRyZXNzZXMsIGJ1dCBpZ25vcmUKLSMgcmVxdWVzdHMgdG8g
ODAwMCBmcm9tIHJhbmRvbSB1c2VycyBvbiBuZXR3b3JrLgotIyBTZWUgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM3MTA0Ci1MaXN0ZW4gWzo6MV06ODAwMAotTGlzdGVu
IFs6OjFdOjgwODAKLUxpc3RlbiBbOjoxXTo4NDQzCi0KIExvYWRNb2R1bGUgYXV0aHpfaG9zdF9t
b2R1bGUgbW9kdWxlcy9tb2RfYXV0aHpfaG9zdC5zbwogTG9hZE1vZHVsZSBpbmNsdWRlX21vZHVs
ZSBtb2R1bGVzL21vZF9pbmNsdWRlLnNvCiBMb2FkTW9kdWxlIGxvZ19jb25maWdfbW9kdWxlIG1v
ZHVsZXMvbW9kX2xvZ19jb25maWcuc28K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>170888</attachid>
            <date>2012-10-26 04:38:09 -0700</date>
            <delta_ts>2012-10-26 11:41:17 -0700</delta_ts>
            <desc>Same patch with a more meaningful title</desc>
            <filename>bug-98602-20121026143519.patch</filename>
            <type>text/plain</type>
            <size>13471</size>
            <attacher name="Raphael Kubo da Costa (:rakuco)">rakuco</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMyNjE4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDhjODcwNmUzY2JjZTUwNWVmMDhkMGI1MmVkMjczMjJl
ZmU0OGVlMS4uOWMwNzYwYThhZWRiODZhMzdmNjcwYWY5MWYzYjRlY2QwMjdmYjlkNSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5
IEBACisyMDEyLTEwLTI2ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8uZGEu
Y29zdGFAaW50ZWwuY29tPgorCisgICAgICAgIHdlYmtpdHB5OiBQYXNzIHRoZSBgTGlzdGVuJyBB
cGFjaGUgZGlyZWN0aXZlIGZyb20gd2Via2l0cHksIG5vdCB0aGUgaHR0cGQuY29uZiBmaWxlcy4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NjAyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVW5pZnkgYWxs
IHRoZSBkaWZmZXJlbnQgYExpc3RlbicgZGlyZWN0aXZlcyBwcmVzZW50IGluIHRoZSBzZXZlcmFs
CisgICAgICAgIGh0dHBkLmNvbmYgZmlsZXMgd2UgaGF2ZSBpbiBMYXlvdXRUZXN0cy9odHRwL2Nv
bmYuIEZvciBvbmUsIHdlCisgICAgICAgIHdlcmUgYWxyZWFkeSBwYXNzaW5nIGBMaXN0ZW4gMTI3
LjAuMC4xOjgwMDAnIHZpYSB3ZWJraXRweSBiZWZvcmUsCisgICAgICAgIGFuZCBvcGVuaW5nIHRo
ZSBvdGhlciBwb3J0cyBmcm9tIHRoZSBjb25mIGZpbGVzLgorCisgICAgICAgIFRoZSBjb25maWd1
cmF0aW9uIGZpbGVzIGRpZmZlcmVkIG1vc3RseSBpbiB0aGUgd2F5IHRoZXkgaGFuZGxlZAorICAg
ICAgICBJUFY2IHBvcnRzLiBTb21lIG9mIHRoZW0gZGlkIG5vdCBsaXN0ZW4gdG8gSVBWNiBwb3J0
cyBiZWNhdXNlIHRoZQorICAgICAgICBzeXN0ZW1zIHdoaWNoIHVzZWQgdGhlbSBzb21ldGltZXMg
ZGlkIG5vdCBoYXZlIElQVjYgc3VwcG9ydC4gVGhlCisgICAgICAgIGBodHRwX3NlcnZlcl9zdXBw
b3J0c19pcHY2JyBtZXRob2QgaGFzIGJlZW4gYWRkZWQgdG8gUG9ydCB0bworICAgICAgICBhZGRy
ZXNzIHRoYXQuIGN5Z3dpbiwgb24gaXRzIHR1cm4sIHN0aWxsIHNlZW1zIHRvIHVzZSBBcGFjaGUg
MS4zLAorICAgICAgICB3aGljaCBkb2VzIG5vdCBzdXBwb3J0IElQVjYgYXQgYWxsOyB0aGUgbmV3
bHktYWRkZWQgbWV0aG9kIGhhcyBhCisgICAgICAgIHNwZWNpYWwgY2FzZSBmb3IgdGhhdC4gUGx1
cywgcGVyZm9ybSBhIHNvY2tldC5nZXRhZGRyaW5mbygpIGNhbGwKKyAgICAgICAgdGhlIHNhbWUg
d2F5IEFwYWNoZSBpdHNlbGYgZG9lcyBzbyB3ZSBhcmUgc3VyZSB3ZSBvbmx5IGVuYWJsZSBJUFY2
CisgICAgICAgIHdoZW4gc2V0dGluZyB0aGF0IHVwIGluIHRoZSBodHRwZCBzZXJ2ZXIgaXMgbm90
IGdvaW5nIHRvIGZhaWwuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0
ZW0vcGxhdGZvcm1pbmZvX21vY2sucHk6CisgICAgICAgIChNb2NrUGxhdGZvcm1JbmZvLmlzX2N5
Z3dpbik6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNl
LnB5OgorICAgICAgICAoUG9ydC5iYXNlbGluZV92ZXJzaW9uX2Rpcik6CisgICAgICAgIChQb3J0
LnRvLnN0YXJ0X3dlYnNvY2tldF9zZXJ2ZXIpOgorICAgICAgICAoUG9ydC50byk6CisgICAgICAg
IChQb3J0LnRvLmh0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYpOgorICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZV91bml0dGVzdC5weToKKyAgICAgICAgKFBv
cnRUZXN0LnRlc3RfaHR0cF9zZXJ2ZXJfc3VwcG9ydHNfaXB2Nik6CisgICAgICAgIChQb3J0VGVz
dC50ZXN0X2J1aWxkX3BhdGgpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3NlcnZlcnMvYXBhY2hlX2h0dHBfc2VydmVyLnB5OgorICAgICAgICAoTGF5b3V0VGVzdEFw
YWNoZUh0dHBkKToKKyAgICAgICAgKExheW91dFRlc3RBcGFjaGVIdHRwZC5fX2luaXRfXyk6CisK
IDIwMTItMTAtMjYgIFhpYW9ibyBXYW5nICA8eGJ3YW5nQHRvcmNobW9iaWxlLmNvbS5jbj4KIAog
ICAgICAgICBbQmxhY2tCZXJyeV0gU3VwcG9ydCBwaXhlbCB0ZXN0cyBmb3IgQmxhY2tCZXJyeSBE
UlQKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0
Zm9ybWluZm9fbW9jay5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9w
bGF0Zm9ybWluZm9fbW9jay5weQppbmRleCBkOGI5NmI4MjJiNGQ1OGQ4OWJmZjRhMzE0ZGM1MGZl
ODc5NTk0MjM3Li5iYzcyODEwY2ZjNjkxM2EzNjY3YThkYTU4MmExOGQ1ZjU1MTAxZDQ4IDEwMDY0
NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vcGxhdGZvcm1pbmZv
X21vY2sucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL3BsYXRm
b3JtaW5mb19tb2NrLnB5CkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIE1vY2tQbGF0Zm9ybUluZm8o
b2JqZWN0KToKICAgICAgICAgcmV0dXJuIHNlbGYub3NfbmFtZSA9PSAnd2luJwogCiAgICAgZGVm
IGlzX2N5Z3dpbihzZWxmKToKLSAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBz
ZWxmLm9zX25hbWUgPT0gJ2N5Z3dpbicKIAogICAgIGRlZiBpc19mcmVlYnNkKHNlbGYpOgogICAg
ICAgICByZXR1cm4gc2VsZi5vc19uYW1lID09ICdmcmVlYnNkJwpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5IGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9iYXNlLnB5CmluZGV4IGU5NGQ4N2VjNmIzN2Y5
ZTMwYWEwZTYzYmVlMzQ5ZDIzZDQyM2E3MTguLjM4NDhmNzc3ZTdjM2ViOTEyNjhiMDhhZWQxYzFi
YWQyNjI5OWI0ZGUgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvYmFzZS5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L2Jhc2UucHkKQEAgLTIwNyw3ICsyMDcsNiBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAg
ICAgICAgIGJhc2VsaW5lX3NlYXJjaF9wYXRocyA9IHNlbGYuYmFzZWxpbmVfc2VhcmNoX3BhdGgo
KQogICAgICAgICByZXR1cm4gYmFzZWxpbmVfc2VhcmNoX3BhdGhzWzBdCiAKLQogICAgIGRlZiBi
YXNlbGluZV9zZWFyY2hfcGF0aChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuZ2V0X29wdGlv
bignYWRkaXRpb25hbF9wbGF0Zm9ybV9kaXJlY3RvcnknLCBbXSkgKyBzZWxmLl9jb21wYXJlX2Jh
c2VsaW5lKCkgKyBzZWxmLmRlZmF1bHRfYmFzZWxpbmVfc2VhcmNoX3BhdGgoKQogCkBAIC05MjQs
NiArOTIzLDEzIEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgc2VydmVyLnN0YXJ0KCkK
ICAgICAgICAgc2VsZi5fd2Vic29ja2V0X3NlcnZlciA9IHNlcnZlcgogCisgICAgZGVmIGh0dHBf
c2VydmVyX3N1cHBvcnRzX2lwdjYoc2VsZik6CisgICAgICAgICMgQ3lnd2luIGlzIHRoZSBvbmx5
IHBsYXRmb3JtIHRvIHN0aWxsIHVzZSBBcGFjaGUgMS4zLCB3aGljaCBvbmx5IHN1cHBvcnRzIElQ
VjQuCisgICAgICAgICMgT25jZSBpdCBtb3ZlcyB0byBBcGFjaGUgMiwgd2UgY2FuIGRyb3AgdGhp
cyBtZXRob2QgYWx0b2dldGhlci4KKyAgICAgICAgaWYgc2VsZi5ob3N0LnBsYXRmb3JtLmlzX2N5
Z3dpbigpOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisK
ICAgICBkZWYgYWNxdWlyZV9odHRwX2xvY2soc2VsZik6CiAgICAgICAgIHNlbGYuX2h0dHBfbG9j
ayA9IGh0dHBfbG9jay5IdHRwTG9jayhOb25lLCBmaWxlc3lzdGVtPXNlbGYuX2ZpbGVzeXN0ZW0s
IGV4ZWN1dGl2ZT1zZWxmLl9leGVjdXRpdmUpCiAgICAgICAgIHNlbGYuX2h0dHBfbG9jay53YWl0
X2Zvcl9odHRwZF9sb2NrKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvYmFzZV91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvYmFzZV91bml0dGVzdC5weQppbmRleCBlOWIyZjA2MGRmNDA1NWUz
MmFjYTI3ZGNlMGQyMTBmYzg0YWU4OWMzLi42N2I2MWVhNDE3NTIyNzFlZTY3YmQyMmQ3YzM2NDky
YThiNDBjMDNmIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L2Jhc2VfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9iYXNlX3VuaXR0ZXN0LnB5CkBAIC0zNzksNiArMzc5LDE0IEBAIGNsYXNz
IFBvcnRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgdGVzdF9vcGVyYXRpbmdfc3lz
dGVtKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdtYWMnLCBzZWxmLm1ha2VfcG9y
dCgpLm9wZXJhdGluZ19zeXN0ZW0oKSkKIAorICAgIGRlZiB0ZXN0X2h0dHBfc2VydmVyX3N1cHBv
cnRzX2lwdjYoc2VsZik6CisgICAgICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydCgpCisgICAgICAg
IHNlbGYuYXNzZXJ0VHJ1ZShwb3J0Lmh0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYoKSkKKyAgICAg
ICAgcG9ydC5ob3N0LnBsYXRmb3JtLm9zX25hbWUgPSAnY3lnd2luJworICAgICAgICBzZWxmLmFz
c2VydEZhbHNlKHBvcnQuaHR0cF9zZXJ2ZXJfc3VwcG9ydHNfaXB2NigpKQorICAgICAgICBwb3J0
Lmhvc3QucGxhdGZvcm0ub3NfbmFtZSA9ICd3aW4nCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShw
b3J0Lmh0dHBfc2VydmVyX3N1cHBvcnRzX2lwdjYoKSkKKwogICAgIGRlZiB0ZXN0X2NoZWNrX2h0
dHBkX3N1Y2Nlc3Moc2VsZik6CiAgICAgICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRp
dmU9TW9ja0V4ZWN1dGl2ZTIoKSkKICAgICAgICAgcG9ydC5fcGF0aF90b19hcGFjaGUgPSBsYW1i
ZGE6ICcvdXNyL3NiaW4vaHR0cGQnCkBAIC00NTEsNiArNDU5LDUgQEAgY2xhc3MgUG9ydFRlc3Qo
dW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBwb3J0ID0gc2VsZi5tYWtlX3BvcnQob3B0aW9u
cz1vcHRwYXJzZS5WYWx1ZXMoeydidWlsZF9kaXJlY3RvcnknOiAnL215LWJ1aWxkLWRpcmVjdG9y
eS8nfSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5fYnVpbGRfcGF0aCgpLCAnL215
LWJ1aWxkLWRpcmVjdG9yeS9SZWxlYXNlJykKIAotCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18n
OgogICAgIHVuaXR0ZXN0Lm1haW4oKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvc2VydmVycy9hcGFjaGVfaHR0cF9zZXJ2ZXIucHkgYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2FwYWNoZV9odHRwX3NlcnZlci5weQpp
bmRleCBhNjE2ZmFiNWJhNDlmZmQ5ZTJhYzQ5YWYxNzE4ZjJhNDRlODdhOGE3Li43ZGVkZTkyYTZl
MWQ4ODE3ZDc0ODBkNWJhNDBiYjQ5NDZmNzE4NjQ2IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2FwYWNoZV9odHRwX3NlcnZlci5weQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2FwYWNoZV9odHRw
X3NlcnZlci5weQpAQCAtMzMsNiArMzMsNyBAQAogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcwog
aW1wb3J0IHJlCitpbXBvcnQgc29ja2V0CiBpbXBvcnQgc3lzCiAKIGZyb20gd2Via2l0cHkubGF5
b3V0X3Rlc3RzLnNlcnZlcnMgaW1wb3J0IGh0dHBfc2VydmVyX2Jhc2UKQEAgLTQyLDcgKzQzLDYg
QEAgX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fbmFtZV9fKQogCiAKIGNsYXNzIExheW91dFRl
c3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl9iYXNlLkh0dHBTZXJ2ZXJCYXNlKToKLQogICAgIGRl
ZiBfX2luaXRfXyhzZWxmLCBwb3J0X29iaiwgb3V0cHV0X2RpciwgYWRkaXRpb25hbF9kaXJzPU5v
bmUsIG51bWJlcl9vZl9zZXJ2ZXJzPU5vbmUpOgogICAgICAgICAiIiJBcmdzOgogICAgICAgICAg
IHBvcnRfb2JqOiBoYW5kbGUgdG8gdGhlIHBsYXRmb3JtLXNwZWNpZmljIHJvdXRpbmVzCkBAIC03
Nyw3ICs3Nyw2IEBAIGNsYXNzIExheW91dFRlc3RBcGFjaGVIdHRwZChodHRwX3NlcnZlcl9iYXNl
Lkh0dHBTZXJ2ZXJCYXNlKToKICAgICAgICAgICAgICctQycsICJcJ0RvY3VtZW50Um9vdCBcIiVz
XCJcJyIgJSBkb2N1bWVudF9yb290LAogICAgICAgICAgICAgJy1jJywgIlwnQWxpYXMgL2pzLXRl
c3QtcmVzb3VyY2VzIFwiJXNcIiciICUganNfdGVzdF9yZXNvdXJjZXNfZGlyLAogICAgICAgICAg
ICAgJy1jJywgIlwnQWxpYXMgL21lZGlhLXJlc291cmNlcyBcIiVzXCInIiAlIG1lZGlhX3Jlc291
cmNlc19kaXIsCi0gICAgICAgICAgICAnLUMnLCAiXCdMaXN0ZW4gJXNcJyIgJSAiMTI3LjAuMC4x
OjgwMDAiLAogICAgICAgICAgICAgJy1jJywgIlwnVHlwZXNDb25maWcgXCIlc1wiXCciICUgbWlt
ZV90eXBlc19wYXRoLAogICAgICAgICAgICAgJy1jJywgIlwnQ3VzdG9tTG9nIFwiJXNcIiBjb21t
b25cJyIgJSBhY2Nlc3NfbG9nLAogICAgICAgICAgICAgJy1jJywgIlwnRXJyb3JMb2cgXCIlc1wi
XCciICUgZXJyb3JfbG9nLApAQCAtODUsNiArODQsMzAgQEAgY2xhc3MgTGF5b3V0VGVzdEFwYWNo
ZUh0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgogICAgICAgICAgICAgJy1j
JywgIlwnUGlkRmlsZSAlcyciICUgc2VsZi5fcGlkX2ZpbGUsCiAgICAgICAgICAgICAnLWsnLCAi
c3RhcnQiXQogCisgICAgICAgIGVuYWJsZV9pcHY2ID0gc2VsZi5fcG9ydF9vYmouaHR0cF9zZXJ2
ZXJfc3VwcG9ydHNfaXB2NigpCisgICAgICAgICMgUGVyZm9ybSBwYXJ0IG9mIHRoZSBjaGVja3Mg
QXBhY2hlJ3MgQVBSIGRvZXMgd2hlbiB0cnlpbmcgdG8gbGlzdGVuIHRvCisgICAgICAgICMgYSBz
cGVjaWZpYyBob3N0L3BvcnQuIFRoaXMgYWxsb3dzIHVzIHRvIGF2b2lkIHRyeWluZyB0byBsaXN0
ZW4gdG8KKyAgICAgICAgIyBJUFY2IGFkZHJlc3NlcyB3aGVuIGl0IGZhaWxzIG9uIEFwYWNoZS4g
QVBSIGl0c2VsZiB0cmllcyB0byBjYWxsCisgICAgICAgICMgZ2V0YWRkcmluZm8oKSBhZ2FpbiB3
aXRob3V0IEFJX0FERFJDT05GSUcgaWYgdGhlIGZpcnN0IGNhbGwgZmFpbHMKKyAgICAgICAgIyB3
aXRoIEVCQURGTEFHUywgYnV0IHRoYXQgaXMgbm90IGhvdyBpdCBub3JtYWxseSBmYWlscyBpbiBv
dXIgdXNlCisgICAgICAgICMgY2FzZXMsIHNvIGlnbm9yZSB0aGF0IGZvciBub3cuCisgICAgICAg
ICMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODYwMiNjNwor
ICAgICAgICB0cnk6CisgICAgICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oJzo6MScsIDAsIDAs
IDAsIDAsIHNvY2tldC5BSV9BRERSQ09ORklHKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAg
ICBlbmFibGVfaXB2NiA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1hcHBpbmcgaW4gc2VsZi5fbWFw
cGluZ3M6CisgICAgICAgICAgICBwb3J0ID0gbWFwcGluZ1sncG9ydCddCisKKyAgICAgICAgICAg
IHN0YXJ0X2NtZCArPSBbJy1DJywgIlwnTGlzdGVuIDEyNy4wLjAuMTolZFwnIiAlIHBvcnRdCisK
KyAgICAgICAgICAgICMgV2UgbGlzdGVuIHRvIGJvdGggSVB2NCBhbmQgSVB2NiBsb29wLWJhY2sg
YWRkcmVzc2VzLCBidXQgaWdub3JlCisgICAgICAgICAgICAjIHJlcXVlc3RzIHRvIDgwMDAgZnJv
bSByYW5kb20gdXNlcnMgb24gbmV0d29yay4KKyAgICAgICAgICAgICMgU2VlIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEwNAorICAgICAgICAgICAgaWYgZW5hYmxl
X2lwdjY6CisgICAgICAgICAgICAgICAgc3RhcnRfY21kICs9IFsnLUMnLCAiXCdMaXN0ZW4gWzo6
MV06JWRcJyIgJSBwb3J0XQorCiAgICAgICAgIGlmIGFkZGl0aW9uYWxfZGlyczoKICAgICAgICAg
ICAgIGZvciBhbGlhcywgcGF0aCBpbiBhZGRpdGlvbmFsX2RpcnMuaXRlcml0ZW1zKCk6CiAgICAg
ICAgICAgICAgICAgc3RhcnRfY21kICs9IFsnLWMnLCAiXCdBbGlhcyAlcyBcIiVzXCJcJyIgJSAo
YWxpYXMsIHBhdGgpLApAQCAtOTgsNyArMTIxLDYgQEAgY2xhc3MgTGF5b3V0VGVzdEFwYWNoZUh0
dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgogICAgICAgICAgICAgICAgICAg
ICAgICAgICAnLWMnLCAiXCdNaW5TcGFyZVNlcnZlcnMgJWRcJyIgJSBzZWxmLl9udW1iZXJfb2Zf
c2VydmVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgJy1jJywgIlwnTWF4U3BhcmVTZXJ2
ZXJzICVkXCciICUgc2VsZi5fbnVtYmVyX29mX3NlcnZlcnNdCiAKLQogICAgICAgICBzdG9wX2Nt
ZCA9IFtleGVjdXRhYmxlLAogICAgICAgICAgICAgJy1mJywgIlwiJXNcIiIgJSBzZWxmLl9nZXRf
YXBhY2hlX2NvbmZpZ19maWxlX3BhdGgodGVzdF9kaXIsIG91dHB1dF9kaXIpLAogICAgICAgICAg
ICAgJy1jJywgIlwnUGlkRmlsZSAlcyciICUgc2VsZi5fcGlkX2ZpbGUsCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjAzYWEy
ZjgzMmRhNDk4YTY2NzdhODdiYzZiMWY4MzU3NDNlNWZiNi4uYzFiYjdkZjY0NGE4OWNmY2RiOTE1
OGE3NjJhNDc4NGRjZjBmODBkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEwLTI2ICBS
YXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8uZGEuY29zdGFAaW50ZWwuY29tPgor
CisgICAgICAgIHdlYmtpdHB5OiBQYXNzIHRoZSBgTGlzdGVuJyBBcGFjaGUgZGlyZWN0aXZlIGZy
b20gd2Via2l0cHksIG5vdCB0aGUgaHR0cGQuY29uZiBmaWxlcy4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NjAyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL2NvbmYvYXBhY2hlMi1kZWJpYW4t
aHR0cGQuY29uZjogUmVtb3ZlIHRoZSBgTGlzdGVuJworICAgICAgICBkaXJlY3RpdmUgYW5kIHJl
bGF0ZWQgY29tbWVudHMsIGl0IGlzIHBhc3NlZCB0byBodHRwZCBieSB3ZWJraXRweQorICAgICAg
ICBub3cuCisgICAgICAgICogaHR0cC9jb25mL2FwYWNoZTItaHR0cGQuY29uZjogRGl0dG8uCisg
ICAgICAgICogaHR0cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mOiBEaXR0by4KKyAgICAgICAgKiBo
dHRwL2NvbmYvZmVkb3JhLWh0dHBkLmNvbmY6IERpdHRvLgorCiAyMDEyLTEwLTI2ICBUYWthc2hp
IFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KIAogICAgICAgICBbU2hhZG93IERPTV0gTmVl
ZHMgQGhvc3QgcnVsZSBmb3IgU2hhZG93RE9NIHN0eWxpbmcKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvY29uZi9hcGFjaGUyLWRlYmlhbi1odHRwZC5jb25mIGIvTGF5b3V0VGVzdHMvaHR0
cC9jb25mL2FwYWNoZTItZGViaWFuLWh0dHBkLmNvbmYKaW5kZXggNTgyZTA0MGRjNzRiN2Q1YWI5
Y2JiNGRhMmIxMTVmOWViYTlhNmE3Yy4uZGRhZWFmMTcyYmRiZDhlMGJmMjc1MGI1ZTgyOWIyNGU0
NDA5NWQzYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC9jb25mL2FwYWNoZTItZGViaWFu
LWh0dHBkLmNvbmYKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC9jb25mL2FwYWNoZTItZGViaWFuLWh0
dHBkLmNvbmYKQEAgLTEzLDI0ICsxMyw4IEBAIE1pblNwYXJlU2VydmVycyAxCiBNYXhTcGFyZVNl
cnZlcnMgNQogU3RhcnRTZXJ2ZXJzIDEKIE1heENsaWVudHMgMTUwCi0jCiBNYXhSZXF1ZXN0c1Bl
ckNoaWxkIDEwMDAwMAogCi0jIENvbmZpZ3VyZWQgZnJvbSB0aGUgaHR0cGQgY29tbWFuZCBsaW5l
IGZvciBXZWJLaXQgbGF5b3V0IHRlc3RzLgotIyBQb3J0IDg0NDMgaXMgaGFyZC1jb2RlZCBhcyBp
dCBpcyBuZWVkZWQgZm9yIHRoZSBIVFRQUyBjb25maWd1cmF0aW9uIGxhdGVyIG9uLgotTGlzdGVu
IDEyNy4wLjAuMTo4MDgwCi1MaXN0ZW4gMTI3LjAuMC4xOjg0NDMKLSMgV2UgbGlzdGVuIHRvIGJv
dGggSVB2NCBhbmQgSVB2NiBsb29wLWJhY2sgYWRkcmVzc2VzLCBidXQgaWdub3JlCi0jIHJlcXVl
c3RzIHRvIDgwMDAgZnJvbSByYW5kb20gdXNlcnMgb24gbmV0d29yay4KLSMgU2VlIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEwNAotIyBGSVhNRTogVGhpcyBicmVh
a3MgdGhlIEdUSy1EZWJ1ZyBhbmQgQ2hyb21pdW0tTGludXggYm90cy4KLSMgU3RhcnRpbmcgdXAg
YXBhY2hlIGZhaWxzIG9uIHRoaXMgbGluZSB3aXRoIGEgc3ludGF4IGVycm9yLgotIyBOZWVkIGEg
d2F5IHRvIGRldGVjdCBpZiB0aGUgbWFjaGluZSBzdXBwb3J0cyBpcHY2IGFuZCB0aGVuCi0jIG9u
bHkgZG8gdGhpcyBiaW5kaW5nIGluIHRoYXQgY2FzZS4KLSNMaXN0ZW4gWzo6MV06ODAwMAotI0xp
c3RlbiBbOjoxXTo4MDgwCi0jTGlzdGVuIFs6OjFdOjg0NDMKLQogTG9hZE1vZHVsZSBtaW1lX21v
ZHVsZSAgICAgICAgL3Vzci9saWIvYXBhY2hlMi9tb2R1bGVzL21vZF9taW1lLnNvCiBMb2FkTW9k
dWxlIG5lZ290aWF0aW9uX21vZHVsZSAvdXNyL2xpYi9hcGFjaGUyL21vZHVsZXMvbW9kX25lZ290
aWF0aW9uLnNvCiBMb2FkTW9kdWxlIGluY2x1ZGVfbW9kdWxlICAgIC91c3IvbGliL2FwYWNoZTIv
bW9kdWxlcy9tb2RfaW5jbHVkZS5zbwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC9jb25m
L2FwYWNoZTItaHR0cGQuY29uZiBiL0xheW91dFRlc3RzL2h0dHAvY29uZi9hcGFjaGUyLWh0dHBk
LmNvbmYKaW5kZXggMDgxOGMxMDAxZGM1MjdjYWMxNTcwYWFiNTlmZWM3OGNlNWJiMTFjNC4uMjhm
ZGRmNzQ5ZDgwZjFhYTcyYjA0YWZkM2VjNTE1N2UzYzkxNmU0OSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC9jb25mL2FwYWNoZTItaHR0cGQuY29uZgorKysgYi9MYXlvdXRUZXN0cy9odHRw
L2NvbmYvYXBhY2hlMi1odHRwZC5jb25mCkBAIC0xNSwxOSArMTUsNiBAQCBTdGFydFNlcnZlcnMg
MQogTWF4Q2xpZW50cyAxNTAKIE1heFJlcXVlc3RzUGVyQ2hpbGQgMTAwMDAwCiAKLSMgQ29uZmln
dXJlZCBmcm9tIHRoZSBodHRwZCBjb21tYW5kIGxpbmUgZm9yIFdlYktpdCBsYXlvdXQgdGVzdHMu
Ci0jIFBvcnQgODQ0MyBpcyBoYXJkLWNvZGVkIGFzIGl0IGlzIG5lZWRlZCBmb3IgdGhlIEhUVFBT
IGNvbmZpZ3VyYXRpb24gbGF0ZXIgb24uCi0jCi0jTGlzdGVuIDMwMDAKLUxpc3RlbiAxMjcuMC4w
LjE6ODA4MAotTGlzdGVuIDEyNy4wLjAuMTo4NDQzCi0jIFdlIGxpc3RlbiB0byBib3RoIElQdjQg
YW5kIElQdjYgbG9vcC1iYWNrIGFkZHJlc3NlcywgYnV0IGlnbm9yZQotIyByZXF1ZXN0cyB0byA4
MDAwIGZyb20gcmFuZG9tIHVzZXJzIG9uIG5ldHdvcmsuCi0jIFNlZSBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzcxMDQKLUxpc3RlbiBbOjoxXTo4MDAwCi1MaXN0ZW4g
Wzo6MV06ODA4MAotTGlzdGVuIFs6OjFdOjg0NDMKLQogTG9hZE1vZHVsZSBhdXRoel9ob3N0X21v
ZHVsZSBsaWJleGVjL2FwYWNoZTIvbW9kX2F1dGh6X2hvc3Quc28KIExvYWRNb2R1bGUgaW5jbHVk
ZV9tb2R1bGUgbGliZXhlYy9hcGFjaGUyL21vZF9pbmNsdWRlLnNvCiBMb2FkTW9kdWxlIGxvZ19j
b25maWdfbW9kdWxlIGxpYmV4ZWMvYXBhY2hlMi9tb2RfbG9nX2NvbmZpZy5zbwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaHR0cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mIGIvTGF5b3V0VGVzdHMv
aHR0cC9jb25mL2N5Z3dpbi1odHRwZC5jb25mCmluZGV4IDlhOGYzNGZkZjFjMTgyZjNhMWEyY2M5
MjM0ODk5Y2FhYWQxZjZiZWMuLjIxNGJmNzI4MWUzMmY0ZTAyNmMzMTBlOGI3ZWFiMGUyZWI2MDgx
YWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvY29uZi9jeWd3aW4taHR0cGQuY29uZgor
KysgYi9MYXlvdXRUZXN0cy9odHRwL2NvbmYvY3lnd2luLWh0dHBkLmNvbmYKQEAgLTE5LDEzICsx
OSw2IEBAIFN0YXJ0U2VydmVycyAxCiBNYXhDbGllbnRzIDE1MAogTWF4UmVxdWVzdHNQZXJDaGls
ZCAxMDAwMDAKIAotIyBDb25maWd1cmVkIGZyb20gdGhlIGh0dHBkIGNvbW1hbmQgbGluZSBmb3Ig
V2ViS2l0IGxheW91dCB0ZXN0cy4KLUxpc3RlbiAxMjcuMC4wLjE6ODA4MAotIyBBcGFjaGUgMS4z
IG9ubHkgc3VwcG9ydHMgSVB2NCwgc28gd2UgZG8gbm90IGxpc3RlbiBvbiA6OjEgKElQdjYgbG9v
cGJhY2spLgotIyBUaGlzIG1heSBjYXVzZSBmbGFreSB0ZXN0cyBvbiBzeXN0ZW1zIHdoaWNoIHN1
cHBvcnQgSVB2NiBpZiBsb2NhbGhvc3QgcmVzb2x2ZXMKLSMgdG8gOjoxIGluIGFkZGl0aW9uIHRv
IDEyNy4wLjAuMS4KLSMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zNzEwNAotCiBMb2FkTW9kdWxlIGNvbmZpZ19sb2dfbW9kdWxlICBsaWIvYXBhY2hlL21vZF9s
b2dfY29uZmlnLmRsbAogTG9hZE1vZHVsZSBtaW1lX21vZHVsZSAgICAgICAgbGliL2FwYWNoZS9t
b2RfbWltZS5kbGwKIExvYWRNb2R1bGUgbmVnb3RpYXRpb25fbW9kdWxlIGxpYi9hcGFjaGUvbW9k
X25lZ290aWF0aW9uLmRsbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC9jb25mL2ZlZG9y
YS1odHRwZC5jb25mIGIvTGF5b3V0VGVzdHMvaHR0cC9jb25mL2ZlZG9yYS1odHRwZC5jb25mCmlu
ZGV4IDdiOTU4YTA5YWQ4OThiZDAxYzA0M2E1YTU0NDM4YWI1MDNjY2JjNzMuLjZlZWRiMzczNDE4
YzBjMzczNTRmYWFjNzQwZmNlOTRjZmQ0ZDgwMTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0
dHAvY29uZi9mZWRvcmEtaHR0cGQuY29uZgorKysgYi9MYXlvdXRUZXN0cy9odHRwL2NvbmYvZmVk
b3JhLWh0dHBkLmNvbmYKQEAgLTE2LDE1ICsxNiw2IEBAIFN0YXJ0U2VydmVycyAxCiBNYXhDbGll
bnRzIDE1MAogTWF4UmVxdWVzdHNQZXJDaGlsZCAxMDAwMDAKIAotTGlzdGVuIDEyNy4wLjAuMTo4
MDgwCi1MaXN0ZW4gMTI3LjAuMC4xOjg0NDMKLSMgV2UgbGlzdGVuIHRvIGJvdGggSVB2NCBhbmQg
SVB2NiBsb29wLWJhY2sgYWRkcmVzc2VzLCBidXQgaWdub3JlCi0jIHJlcXVlc3RzIHRvIDgwMDAg
ZnJvbSByYW5kb20gdXNlcnMgb24gbmV0d29yay4KLSMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zNzEwNAotTGlzdGVuIFs6OjFdOjgwMDAKLUxpc3RlbiBbOjox
XTo4MDgwCi1MaXN0ZW4gWzo6MV06ODQ0MwotCiBMb2FkTW9kdWxlIGF1dGh6X2hvc3RfbW9kdWxl
IG1vZHVsZXMvbW9kX2F1dGh6X2hvc3Quc28KIExvYWRNb2R1bGUgaW5jbHVkZV9tb2R1bGUgbW9k
dWxlcy9tb2RfaW5jbHVkZS5zbwogTG9hZE1vZHVsZSBsb2dfY29uZmlnX21vZHVsZSBtb2R1bGVz
L21vZF9sb2dfY29uZmlnLnNvCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>