<?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>25536</bug_id>
          
          <creation_ts>2009-05-03 23:49:11 -0700</creation_ts>
          <short_desc>WebKit needs to expose an Element::spellcheck attribute to javascript</short_desc>
          <delta_ts>2010-11-04 08:13:28 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.whatwg.org/specs/web-apps/current-work/#attr-spellcheck</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>14552</dependson>
          <blocked>48411</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>morrita</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>119781</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-05-03 23:49:11 -0700</bug_when>
    <thetext>WebKit needs to expose an Element::spellcheck attribute to javascript

Per HTML5:
http://www.whatwg.org/specs/web-apps/current-work/#attr-spellcheck</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300108</commentid>
    <comment_count>1</comment_count>
      <attachid>72002</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-27 04:06:43 -0700</bug_when>
    <thetext>Created attachment 72002
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300111</commentid>
    <comment_count>2</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-27 04:13:29 -0700</bug_when>
    <thetext>Dynamic spellcheck behavior change is not implemented at the patch. 
It is filed separately on Bug 48411.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300144</commentid>
    <comment_count>3</comment_count>
      <attachid>72002</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-10-27 05:24:14 -0700</bug_when>
    <thetext>Comment on attachment 72002
Patch

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

&gt; LayoutTests/editing/spelling/script-tests/spelling-attribute-change.js:25
&gt; +    shouldBe(&quot;layoutTestController.hasSpellingMarker(6, 2)&quot;, enabled ? &quot;true&quot; : &quot;false&quot;);

Some ports has no hasSpellingMarker() implementation, right? We need to skip the test on them.

&gt; WebCore/html/HTMLElement.cpp:735
&gt; +    setAttribute(HTMLNames::spellcheckAttr, enable ? &quot;true&quot; : &quot;false&quot;);

Need no HTMLNames::.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300307</commentid>
    <comment_count>4</comment_count>
      <attachid>72002</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-10-27 10:03:09 -0700</bug_when>
    <thetext>Comment on attachment 72002
Patch

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

&gt; WebCore/html/HTMLElement.idl:65
&gt; +                 attribute boolean spellcheck;

This should probably use the [Reflect] extended attribute which would mean you don&apos;t need the implementation of spellcheck/setSpellcheck in HTMLElement.h/cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300927</commentid>
    <comment_count>5</comment_count>
      <attachid>72154</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 00:48:29 -0700</bug_when>
    <thetext>Created attachment 72154
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300940</commentid>
    <comment_count>6</comment_count>
      <attachid>72158</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 01:26:47 -0700</bug_when>
    <thetext>Created attachment 72158
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300942</commentid>
    <comment_count>7</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 01:29:58 -0700</bug_when>
    <thetext>Hi, Kent-san, Sam, thank you for taking a look!
I updated the patch.

&gt; &gt; LayoutTests/editing/spelling/script-tests/spelling-attribute-change.js:25
&gt; &gt; +    shouldBe(&quot;layoutTestController.hasSpellingMarker(6, 2)&quot;, enabled ? &quot;true&quot; : &quot;false&quot;);
&gt; 
&gt; Some ports has no hasSpellingMarker() implementation, right? We need to skip the test on them.
Yes, only Mac, windows and chromium-mac support spellchecking.
Added skip entries for other ports.

&gt; 
&gt; &gt; WebCore/html/HTMLElement.cpp:735
&gt; &gt; +    setAttribute(HTMLNames::spellcheckAttr, enable ? &quot;true&quot; : &quot;false&quot;);
&gt; 
&gt; Need no HTMLNames::.
Removed.

&gt; &gt; WebCore/html/HTMLElement.idl:65
&gt; &gt; +                 attribute boolean spellcheck;
&gt; 
&gt; This should probably use the [Reflect] extended attribute which would mean you don&apos;t need the implementation of spellcheck/setSpellcheck in HTMLElement.h/cpp
Oh, I didn&apos;t notice this. Thank you pointing this out.
In this case, I&apos;d use explicit implementation
because spellcheck has nontrivial semantics like inheritance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300947</commentid>
    <comment_count>8</comment_count>
      <attachid>72158</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-10-28 01:42:11 -0700</bug_when>
    <thetext>Comment on attachment 72158
Patch

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

&gt; LayoutTests/fast/dom/HTMLElement/script-tests/spellcheck.js:50
&gt; +testFor(&quot;false&quot;, false, &quot;false&quot;, true, &quot;true&quot;);

Need more tests for other initialAttribute variations such as &quot;TRUE&quot; &quot;FALSE&quot;, &quot;&quot;, &quot;foobar&quot;, &quot;1&quot;, &quot;0&quot;, ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300959</commentid>
    <comment_count>9</comment_count>
      <attachid>72164</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 02:41:12 -0700</bug_when>
    <thetext>Created attachment 72164
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300961</commentid>
    <comment_count>10</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 02:42:22 -0700</bug_when>
    <thetext>Hi, thank you for another review!

&gt; Need more tests for other initialAttribute variations such as &quot;TRUE&quot; &quot;FALSE&quot;, &quot;&quot;, &quot;foobar&quot;, &quot;1&quot;, &quot;0&quot;, ...
Agreed and added more test cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300962</commentid>
    <comment_count>11</comment_count>
      <attachid>72164</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-10-28 02:45:39 -0700</bug_when>
    <thetext>Comment on attachment 72164
Patch

ok</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>300975</commentid>
    <comment_count>12</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-10-28 03:42:18 -0700</bug_when>
    <thetext>Committed r70763: &lt;http://trac.webkit.org/changeset/70763&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>303299</commentid>
    <comment_count>13</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-11-02 04:12:40 -0700</bug_when>
    <thetext>&gt; &gt; This should probably use the [Reflect] extended attribute which would mean you don&apos;t need the implementation of spellcheck/setSpellcheck in HTMLElement.h/cpp
&gt; Oh, I didn&apos;t notice this. Thank you pointing this out.
&gt; In this case, I&apos;d use explicit implementation
&gt; because spellcheck has nontrivial semantics like inheritance.

I don&apos;t understand what you mean here.  Can you explain what you mean by this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>304536</commentid>
    <comment_count>14</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2010-11-04 01:56:07 -0700</bug_when>
    <thetext>
&gt; I don&apos;t understand what you mean here.  Can you explain what you mean by this?

In my understanding, @spellcheck properety returns the spellcheck availability of the element,
instead of attribute value itself.
 
For example, Given:
&lt;div spellcheck=&quot;true&quot;&gt;
    &lt;div id=&quot;target&quot;&gt;foo&lt;/div&gt;
&lt;/div&gt;

with:
var target = document.getElementById(&quot;target&quot;);

In this case, target.spellcheck returns true. 
With [Reflect], this would return false because a missing attribute turns into false.
(... is right? I&apos;m not sure if I understand [Reflect] behavior precisely.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>304671</commentid>
    <comment_count>15</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-11-04 08:13:28 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; &gt; I don&apos;t understand what you mean here.  Can you explain what you mean by this?
&gt; 
&gt; In my understanding, @spellcheck properety returns the spellcheck availability of the element,
&gt; instead of attribute value itself.
&gt; 
&gt; For example, Given:
&gt; &lt;div spellcheck=&quot;true&quot;&gt;
&gt;     &lt;div id=&quot;target&quot;&gt;foo&lt;/div&gt;
&gt; &lt;/div&gt;
&gt; 
&gt; with:
&gt; var target = document.getElementById(&quot;target&quot;);
&gt; 
&gt; In this case, target.spellcheck returns true. 
&gt; With [Reflect], this would return false because a missing attribute turns into false.
&gt; (... is right? I&apos;m not sure if I understand [Reflect] behavior precisely.)

I see, thanks for the info.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72002</attachid>
            <date>2010-10-27 04:06:43 -0700</date>
            <delta_ts>2010-10-28 00:48:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-25536-20101027200641.patch</filename>
            <type>text/plain</type>
            <size>16530</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiM2NiNDE4Nzc1MjdlNWM0MzEyOTA1MWI2ZjU5YzhiMWNmZjBkYzU0Li40MjEzOTZk
ZDUzOGIwMjkwN2M0M2IyMWI0MGUwYzBiZTk1ZWQyYzZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTAtMTAtMjcgIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViS2l0IG5lZWRzIHRv
IGV4cG9zZSBhbiBFbGVtZW50OjpzcGVsbGNoZWNrIGF0dHJpYnV0ZSB0byBqYXZhc2NyaXB0Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU1MzYKKwor
ICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc2NyaXB0LXRlc3RzL3NwZWxsaW5nLWF0dHJpYnV0
ZS1jaGFuZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qczogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbDog
QWRkZWQuCisKIDIwMTAtMTAtMjYgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU3RldmUgQmxvY2suCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9lZGl0aW5nL3NwZWxsaW5nL3NjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hh
bmdlLmpzIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zcGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxp
bmctYXR0cmlidXRlLWNoYW5nZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGJmODBhMmNjNWMxYjUzMzQ4YTM1
MDkyMDEzN2I1YWRlNzJhZDNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zcGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5qcwpAQCAt
MCwwICsxLDg2IEBACitkZXNjcmlwdGlvbignVGVzdHMgaWYgdGhlIHNwZWxsY2hlY2tlciBiZWhh
dmlvciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0cmlidXRlIGNoYW5nZWQgYnkgdGhl
IHNjcmlwdC4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIp
OworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOwordmFyIHNlbCA9IGRvY3VtZW50
LmdldFNlbGVjdGlvbigpOworCitmdW5jdGlvbiB0ZXN0U3BlbGxDaGVja2luZ0VuYWJsZWQodGFy
Z2V0LCBlbmFibGVkKQoreworICAgIHRhcmdldC5zcGVsbGNoZWNrID0gZW5hYmxlZDsKKworICAg
IGlmICh0YXJnZXQudGFnTmFtZSA9PSAiU1BBTiIpIHsKKyAgICAgICAgdGFyZ2V0LmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJIZWxsbywiKSk7CisgICAgICAgIHNlbC5zZXRC
YXNlQW5kRXh0ZW50KHRhcmdldCwgNiwgdGFyZ2V0LCA2KTsKKyAgICB9IGVsc2UgaWYgKHRhcmdl
dC50YWdOYW1lID09ICJJTlBVVCIgfHwgdGFyZ2V0LnRhZ05hbWUgPT0gIlRFWFRBUkVBIikgewor
ICAgICAgICB0YXJnZXQuZm9jdXMoKTsKKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIklu
c2VydFRleHQiLCBmYWxzZSwgIkhlbGxvLCIpOworICAgIH0KKworICAgIGRvY3VtZW50LmV4ZWND
b21tYW5kKCJJbnNlcnRUZXh0IiwgZmFsc2UsICd6Jyk7CisgICAgZG9jdW1lbnQuZXhlY0NvbW1h
bmQoIkluc2VydFRleHQiLCBmYWxzZSwgJ3onKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgi
SW5zZXJ0VGV4dCIsIGZhbHNlLCAnICcpOworCisgICAgd2luZG93LnRhcmdldCA9IHRhcmdldDsK
KyAgICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCBlbmFibGVkID8gInRydWUiIDogImZh
bHNlIik7CisgICAgc2hvdWxkQmUoImxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFy
a2VyKDYsIDIpIiwgZW5hYmxlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworfQorCitmdW5jdGlvbiBj
cmVhdGVFbGVtZW50KHRhZ05hbWUsIHNwZWxsY2hlY2spCit7CisgICAgdmFyIHRhcmdldCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7CisgICAgaWYgKHRhZ05hbWUgPT0gIlNQQU4i
KQorICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiLCAidHJ1ZSIp
OworICAgIGlmIChzcGVsbGNoZWNrKQorICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJzcGVs
bGNoZWNrIiwgc3BlbGxjaGVjayk7CisgICAgcmV0dXJuIHRhcmdldDsKK30KKworZnVuY3Rpb24g
dGVzdEZvcih0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlLCBleHBlY3RhdGlvbikKK3sKKyAgICB2
YXIgdGFyZ2V0ID0gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlKTsKKyAg
ICBwYXJlbnQuYXBwZW5kQ2hpbGQodGFyZ2V0KTsKKworICAgIHRlc3RTcGVsbENoZWNraW5nRW5h
YmxlZCh0YXJnZXQsIGV4cGVjdGF0aW9uKTsKKyAgICBwYXJlbnQuaW5uZXJIVE1MID0gIiI7Cit9
CisKKy8vIGRlZmF1bHQgLT4gdHJ1ZQordGVzdEZvcigiU1BBTiIsIHVuZGVmaW5lZCwgdHJ1ZSk7
CisvLyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJTUEFOIiwgdW5kZWZpbmVkLCBmYWxzZSk7
CisvLyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCB0cnVlKTsKKy8vIHRydWUg
LT4gZmFsc2UKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCBmYWxzZSk7CisvLyBmYWxzZSAtPiB0cnVl
Cit0ZXN0Rm9yKCJTUEFOIiwgZmFsc2UsIHRydWUpOworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RG
b3IoIlNQQU4iLCBmYWxzZSwgZmFsc2UpOworCisvLyBkZWZhdWx0IC0+IHRydWUKK3Rlc3RGb3Io
IklOUFVUIiwgdW5kZWZpbmVkLCB0cnVlKTsKKy8vIGRlZmF1bHQgLT4gZmFsc2UKK3Rlc3RGb3Io
IklOUFVUIiwgdW5kZWZpbmVkLCBmYWxzZSk7CisvLyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIklO
UFVUIiwgdHJ1ZSwgdHJ1ZSk7CisvLyB0cnVlIC0+IGZhbHNlCit0ZXN0Rm9yKCJJTlBVVCIsIHRy
dWUsIGZhbHNlKTsKKy8vIGZhbHNlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIHRy
dWUpOworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIGZhbHNlKTsK
KworLy8gZGVmYXVsdCAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgdHJ1
ZSk7CisvLyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwg
ZmFsc2UpOworLy8gdHJ1ZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHRydWUsIHRydWUp
OworLy8gdHJ1ZSAtPiBmYWxzZQordGVzdEZvcigiVEVYVEFSRUEiLCB0cnVlLCBmYWxzZSk7Cisv
LyBmYWxzZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCB0cnVlKTsKKy8vIGZh
bHNlIC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCBmYWxzZSk7CisKK3ZhciBz
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zcGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZjI2ZjRmMjhjZGFmMjU2MTUyMzFlYWIwZGQyNDdmNTgyODE4ZmE1
MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctYXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NSBAQAorVGVzdHMg
aWYgdGhlIHNwZWxsY2hlY2tlciBiZWhhdmlvciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sg
YXR0cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNjcmlwdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0
Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5z
cGVsbGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5n
TWFya2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BB
U1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQor
UEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxl
ci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYs
IDIpIGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0
VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVs
bGluZ01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNl
CitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZh
bHNlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRy
b2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtl
cig2LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxh
eW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFz
U3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMg
dHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBp
cyB0cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RD
b250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5z
cGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdN
YXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFT
UyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQor
UEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVy
Lmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sg
aXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwg
MikgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5n
LWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3Bl
bGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQwOTRlMDY4NjczZjM2NDhi
NGNlNThhNzFkNGZjMTFkZjBmMmVkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbApAQCAtMCwwICsx
LDE0IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8
aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291
cmNlcy9qcy10ZXN0LXNlbGVjdGlvbi1zaGFyZWQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
PHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL3NwZWxsY2hlY2suanMgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5mNmQ2YjQ0N2U3OTYxMjYwN2VjNmU2ZGE5NDExY2JlZjRiNWNiOTg3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRl
c3RzL3NwZWxsY2hlY2suanMKQEAgLTAsMCArMSw1MiBAQAorZGVzY3JpcHRpb24oJ1Rlc3RzIHRo
ZSBzcGVsbGNoZWNrIGF0dHJpYnV0ZS4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOworCitm
dW5jdGlvbiB0ZXN0Rm9yKGluaXRpYWxBdHRyaWJ1dGUsIGluaXRpYWxFeHBlY3RhdGlvbiwgc2V0
VmFsdWUsIGxhc3RFeHBlY3RhdGlvbiwgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uKQoreworICAg
IHZhciB0YXJnZXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAgcGFyZW50
LmFwcGVuZENoaWxkKHRhcmdldCk7CisKKyAgICB3aW5kb3cudGFyZ2V0ID0gdGFyZ2V0OworICAg
IHdpbmRvdy5pbml0aWFsRXhwZWN0YXRpb24gPSBpbml0aWFsRXhwZWN0YXRpb247CisgICAgd2lu
ZG93Lmxhc3RFeHBlY3RhdGlvbiA9IGxhc3RFeHBlY3RhdGlvbjsKKyAgICB3aW5kb3cubGFzdEF0
dHJpYnV0ZUV4cGVjdGF0aW9uID0gbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uOworCisgICAgaWYg
KHVuZGVmaW5lZCAhPT0gaW5pdGlhbEF0dHJpYnV0ZSkKKyAgICAgICAgdGFyZ2V0LnNldEF0dHJp
YnV0ZSgic3BlbGxjaGVjayIsIGluaXRpYWxBdHRyaWJ1dGUpOworICAgIHNob3VsZEJlKCJ0YXJn
ZXQuc3BlbGxjaGVjayIsICJpbml0aWFsRXhwZWN0YXRpb24iKTsKKyAgICAKKyAgICBpZiAodW5k
ZWZpbmVkICE9PSBzZXRWYWx1ZSkKKyAgICAgICAgdGFyZ2V0LnNwZWxsY2hlY2sgPSBzZXRWYWx1
ZTsKKyAgICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCAibGFzdEV4cGVjdGF0aW9uIik7
CisgICAgc2hvdWxkQmUoInRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSIsICJsYXN0
QXR0cmlidXRlRXhwZWN0YXRpb24iKTsKKworICAgIHBhcmVudC5yZW1vdmVDaGlsZCh0YXJnZXQp
OworfQorCit0ZXN0Rm9yKHVuZGVmaW5lZCwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCBudWxsKTsK
K3Rlc3RGb3IodW5kZWZpbmVkLCB0cnVlLCBmYWxzZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZv
cih1bmRlZmluZWQsIHRydWUsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKHVuZGVmaW5l
ZCwgdHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOyAvLyAwIHdpbGwgYmUgY29lcmNlZCB0byBmYWxz
ZQordGVzdEZvcih1bmRlZmluZWQsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7IC8vIDAgd2lsbCBi
ZSBjb2VyY2VkIHRvIHRydWUKK3Rlc3RGb3IodW5kZWZpbmVkLCB0cnVlLCAiaW52YWxpZCIsIHRy
dWUsICJ0cnVlIik7IC8vIHN0cmluZyB3aWxsIGJlIGNvZXJjZWQgdG8gdHJ1ZQordGVzdEZvcih1
bmRlZmluZWQsIHRydWUsICJmYWxzZSIsIHRydWUsICJ0cnVlIik7IC8vIC4uLmV2ZW4gaWYgdGhl
IHN0cmluZyBpcyAiZmFsc2UiIChhcyBGaXJlZm94IGRvZXMpLiAKKwordGVzdEZvcigidHJ1ZSIs
IHRydWUsIHVuZGVmaW5lZCwgdHJ1ZSwgInRydWUiKTsKK3Rlc3RGb3IoInRydWUiLCB0cnVlLCBm
YWxzZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsIHRydWUsIHRydWUs
ICJ0cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOwordGVz
dEZvcigidHJ1ZSIsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1
ZSwgImludmFsaWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsICJmYWxz
ZSIsIHRydWUsICJ0cnVlIik7CisKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHVuZGVmaW5lZCwg
ZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAi
ZmFsc2UiKTsKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0
ZXN0Rm9yKCJmYWxzZSIsIGZhbHNlLCAwLCBmYWxzZSwgImZhbHNlIik7Cit0ZXN0Rm9yKCJmYWxz
ZSIsIGZhbHNlLCAxLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImlu
dmFsaWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImZhbHNlIiwg
dHJ1ZSwgInRydWUiKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2stZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmFiYmQ1N2FhODQ4YWRiNTViNjYzYjViNjY2YWJlODg1Y2NmMTdm
M2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9z
cGVsbGNoZWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcyIEBACitUZXN0cyB0aGUgc3BlbGxj
aGVjayBhdHRyaWJ1dGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRh
cmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxj
aGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0
QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxs
Y2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFz
dEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRB
dHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVs
bGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNo
ZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0
RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxh
c3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFs
RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQ
QVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQ
QVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0
QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3Bl
bGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3Bl
bGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFz
dEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBs
YXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlh
bEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgor
UEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgor
UEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0Lmdl
dEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNw
ZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3Nw
ZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxh
c3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMg
bGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRp
YWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24K
K1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24K
K1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5n
ZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5z
cGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdz
cGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdkYWU3NTljZjFi
N2MxOTU0Mzk5NDk4ZmM0ZmE1MTRmN2MzMTlkZTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKQEAgLTAsMCArMSwxMyBA
QAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+
Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRp
b24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10
ZXN0cy9zcGVsbGNoZWNrLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjkzMWU3
NjE1OGE3ZjA1ZTIwM2VhMWY2ZGY3MDRhNDRmN2ExOTRmMi4uYmFlODhjNGRmNzdmYTMwMjQ3MjRj
MWUyODExOGUyMmYxNDE0YWM0NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMC0xMC0yNyAgTU9SSVRBIEhh
amltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWJLaXQgbmVlZHMgdG8gZXhwb3NlIGFuIEVsZW1lbnQ6OnNw
ZWxsY2hlY2sgYXR0cmlidXRlIHRvIGphdmFzY3JpcHQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNTUzNgorCisgICAgICAgIFB1Ymxpc2hlZCBFbGVt
ZW50LnNwZWxsY2hlY2sgcHJvcGVydHkgb24gSURMLCBpbXBsZW1lbnRlZCBpdC4KKyAgICAgICAg
CisgICAgICAgIFRlc3RzOiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFu
Z2UuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5o
dG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxFbGVtZW50OjpzcGVsbGNoZWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50
OjpzZXRTcGVsbGNoZWNrKToKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmg6CisgICAgICAg
ICogaHRtbC9IVE1MRWxlbWVudC5pZGw6CisKIDIwMTAtMTAtMjYgIE5pa29sYXMgWmltbWVybWFu
biAgPG56aW1tZXJtYW5uQHJpbS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgUm9iIEJ1aXMu
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmNwcAppbmRleCAxNDgzZmJjZmFiZWZkNTJhYWVhNDEzY2FiMDZmNjZhNThi
ZDEwOWYyLi4xZWJjZmFmY2ZlNWIwMzc0NTc4NWZhZGIzMmE0MzM5OGFiOWVjYWE1IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5jcHAKQEAgLTcyNSw2ICs3MjUsMTcgQEAgdm9pZCBIVE1MRWxlbWVudDo6c2V0RHJh
Z2dhYmxlKGJvb2wgdmFsdWUpCiAgICAgc2V0QXR0cmlidXRlKGRyYWdnYWJsZUF0dHIsIHZhbHVl
ID8gInRydWUiIDogImZhbHNlIik7CiB9CiAKK2Jvb2wgSFRNTEVsZW1lbnQ6OnNwZWxsY2hlY2so
KSBjb25zdAoreworICAgIHJldHVybiBpc1NwZWxsQ2hlY2tpbmdFbmFibGVkKCk7Cit9CisKK3Zv
aWQgSFRNTEVsZW1lbnQ6OnNldFNwZWxsY2hlY2soYm9vbCBlbmFibGUpCit7CisgICAgc2V0QXR0
cmlidXRlKEhUTUxOYW1lczo6c3BlbGxjaGVja0F0dHIsIGVuYWJsZSA/ICJ0cnVlIiA6ICJmYWxz
ZSIpOworfQorCisKIHZvaWQgSFRNTEVsZW1lbnQ6OmNsaWNrKCkKIHsKICAgICBkaXNwYXRjaFNp
bXVsYXRlZENsaWNrKDAsIGZhbHNlLCBmYWxzZSk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwv
SFRNTEVsZW1lbnQuaCBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCmluZGV4IDUyZTllY2Zl
OWVmNzhmYjcyNzQxMzliMDMxMjVhNTQ4NWRmZjZiMGYuLjE2NjBlMmE2ZDRiZDI3ZTRlODEwOWM1
YTdlYWM1ZjMwN2M5MjVmMmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5o
CisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCkBAIC02Niw2ICs2Niw5IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXREcmFn
Z2FibGUoYm9vbCk7CiAKKyAgICBib29sIHNwZWxsY2hlY2soKSBjb25zdDsKKyAgICB2b2lkIHNl
dFNwZWxsY2hlY2soYm9vbCk7CisKICAgICB2b2lkIGNsaWNrKCk7CiAKICAgICB2aXJ0dWFsIHZv
aWQgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZFRvQW55RWxlbWVudCk7CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsIGIvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50Lmlk
bAppbmRleCBiMTI3YzUxNzI3NjViMThjODE4MDFiZGNlNmY1YTcwYTAyZTNkYThmLi43NzQyM2Zj
ZDA2MjQwOGJhOGI2NzUxMGRkNDI2MDdlNWNlYTgxZjA0IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSFRNTEVsZW1lbnQuaWRsCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwKQEAg
LTYyLDYgKzYyLDggQEAgbW9kdWxlIGh0bWwgewogICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUg
W0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgY29udGVudEVkaXRhYmxlOwogICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0NvbnRlbnRFZGl0YWJsZTsKIAorICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBzcGVsbGNoZWNrOworCiAjaWYgZGVmaW5l
ZChMQU5HVUFHRV9PQkpFQ1RJVkVfQykgJiYgTEFOR1VBR0VfT0JKRUNUSVZFX0MKICAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB0aXRsZURpc3BsYXlTdHJpbmc7CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72154</attachid>
            <date>2010-10-28 00:48:29 -0700</date>
            <delta_ts>2010-10-28 01:26:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-25536-20101028164827.patch</filename>
            <type>text/plain</type>
            <size>18779</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlODA1NzUyNTY2NTIyYjNlMzg2ZDM3MjgxZTU3YjdhYWEzM2E4ZTU1Li4yYzE2YTNl
NjIwZTVkNWMwOGEzNWY4NjZlZmExNTgzMGMwYzI1NDNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMTAtMjggIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViS2l0IG5lZWRzIHRv
IGV4cG9zZSBhbiBFbGVtZW50OjpzcGVsbGNoZWNrIGF0dHJpYnV0ZSB0byBqYXZhc2NyaXB0Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU1MzYKKwor
ICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc2NyaXB0LXRlc3RzL3NwZWxsaW5nLWF0dHJpYnV0
ZS1jaGFuZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qczogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0
L1NraXBwZWQ6CisKIDIwMTAtMTAtMjcgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NwZWxsaW5nL3NjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdl
LmpzIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zcGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGJmODBhMmNjNWMxYjUzMzQ4YTM1MDky
MDEzN2I1YWRlNzJhZDNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5qcwpAQCAtMCww
ICsxLDg2IEBACitkZXNjcmlwdGlvbignVGVzdHMgaWYgdGhlIHNwZWxsY2hlY2tlciBiZWhhdmlv
ciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNj
cmlwdC4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOwordmFyIHNlbCA9IGRvY3VtZW50Lmdl
dFNlbGVjdGlvbigpOworCitmdW5jdGlvbiB0ZXN0U3BlbGxDaGVja2luZ0VuYWJsZWQodGFyZ2V0
LCBlbmFibGVkKQoreworICAgIHRhcmdldC5zcGVsbGNoZWNrID0gZW5hYmxlZDsKKworICAgIGlm
ICh0YXJnZXQudGFnTmFtZSA9PSAiU1BBTiIpIHsKKyAgICAgICAgdGFyZ2V0LmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJIZWxsbywiKSk7CisgICAgICAgIHNlbC5zZXRCYXNl
QW5kRXh0ZW50KHRhcmdldCwgNiwgdGFyZ2V0LCA2KTsKKyAgICB9IGVsc2UgaWYgKHRhcmdldC50
YWdOYW1lID09ICJJTlBVVCIgfHwgdGFyZ2V0LnRhZ05hbWUgPT0gIlRFWFRBUkVBIikgeworICAg
ICAgICB0YXJnZXQuZm9jdXMoKTsKKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2Vy
dFRleHQiLCBmYWxzZSwgIkhlbGxvLCIpOworICAgIH0KKworICAgIGRvY3VtZW50LmV4ZWNDb21t
YW5kKCJJbnNlcnRUZXh0IiwgZmFsc2UsICd6Jyk7CisgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQo
Ikluc2VydFRleHQiLCBmYWxzZSwgJ3onKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5z
ZXJ0VGV4dCIsIGZhbHNlLCAnICcpOworCisgICAgd2luZG93LnRhcmdldCA9IHRhcmdldDsKKyAg
ICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCBlbmFibGVkID8gInRydWUiIDogImZhbHNl
Iik7CisgICAgc2hvdWxkQmUoImxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2Vy
KDYsIDIpIiwgZW5hYmxlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworfQorCitmdW5jdGlvbiBjcmVh
dGVFbGVtZW50KHRhZ05hbWUsIHNwZWxsY2hlY2spCit7CisgICAgdmFyIHRhcmdldCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7CisgICAgaWYgKHRhZ05hbWUgPT0gIlNQQU4iKQor
ICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiLCAidHJ1ZSIpOwor
ICAgIGlmIChzcGVsbGNoZWNrKQorICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJzcGVsbGNo
ZWNrIiwgc3BlbGxjaGVjayk7CisgICAgcmV0dXJuIHRhcmdldDsKK30KKworZnVuY3Rpb24gdGVz
dEZvcih0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlLCBleHBlY3RhdGlvbikKK3sKKyAgICB2YXIg
dGFyZ2V0ID0gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlKTsKKyAgICBw
YXJlbnQuYXBwZW5kQ2hpbGQodGFyZ2V0KTsKKworICAgIHRlc3RTcGVsbENoZWNraW5nRW5hYmxl
ZCh0YXJnZXQsIGV4cGVjdGF0aW9uKTsKKyAgICBwYXJlbnQuaW5uZXJIVE1MID0gIiI7Cit9CisK
Ky8vIGRlZmF1bHQgLT4gdHJ1ZQordGVzdEZvcigiU1BBTiIsIHVuZGVmaW5lZCwgdHJ1ZSk7Cisv
LyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJTUEFOIiwgdW5kZWZpbmVkLCBmYWxzZSk7Cisv
LyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCB0cnVlKTsKKy8vIHRydWUgLT4g
ZmFsc2UKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCBmYWxzZSk7CisvLyBmYWxzZSAtPiB0cnVlCit0
ZXN0Rm9yKCJTUEFOIiwgZmFsc2UsIHRydWUpOworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3Io
IlNQQU4iLCBmYWxzZSwgZmFsc2UpOworCisvLyBkZWZhdWx0IC0+IHRydWUKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCB0cnVlKTsKKy8vIGRlZmF1bHQgLT4gZmFsc2UKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCBmYWxzZSk7CisvLyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVU
IiwgdHJ1ZSwgdHJ1ZSk7CisvLyB0cnVlIC0+IGZhbHNlCit0ZXN0Rm9yKCJJTlBVVCIsIHRydWUs
IGZhbHNlKTsKKy8vIGZhbHNlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIHRydWUp
OworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIGZhbHNlKTsKKwor
Ly8gZGVmYXVsdCAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgdHJ1ZSk7
CisvLyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgZmFs
c2UpOworLy8gdHJ1ZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHRydWUsIHRydWUpOwor
Ly8gdHJ1ZSAtPiBmYWxzZQordGVzdEZvcigiVEVYVEFSRUEiLCB0cnVlLCBmYWxzZSk7CisvLyBm
YWxzZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCB0cnVlKTsKKy8vIGZhbHNl
IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCBmYWxzZSk7CisKK3ZhciBzdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjI2ZjRmMjhjZGFmMjU2MTUyMzFlYWIwZGQyNDdmNTgyODE4ZmE1Mgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NSBAQAorVGVzdHMgaWYg
dGhlIHNwZWxsY2hlY2tlciBiZWhhdmlvciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0
cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNjcmlwdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29u
dHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFy
a2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1Mg
bGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5o
YXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIp
IGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVz
dENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0
LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGlu
Z01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQ
QVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNl
CitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2
LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91
dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3Bl
bGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1
ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0
cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250
cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJr
ZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBs
YXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhh
c1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMg
ZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikg
aXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0
dHJpYnV0ZS1jaGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctYXR0cmlidXRlLWNoYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQwOTRlMDY4NjczZjM2NDhiNGNl
NThhNzFkNGZjMTFkZjBmMmVkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbApAQCAtMCwwICsxLDE0
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy9qcy10ZXN0LXNlbGVjdGlvbi1zaGFyZWQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCBzcmM9InNjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL3NwZWxsY2hlY2suanMgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mNmQ2YjQ0N2U3OTYxMjYwN2VjNmU2ZGE5NDExY2JlZjRiNWNiOTg3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3Rz
L3NwZWxsY2hlY2suanMKQEAgLTAsMCArMSw1MiBAQAorZGVzY3JpcHRpb24oJ1Rlc3RzIHRoZSBz
cGVsbGNoZWNrIGF0dHJpYnV0ZS4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOworCitmdW5j
dGlvbiB0ZXN0Rm9yKGluaXRpYWxBdHRyaWJ1dGUsIGluaXRpYWxFeHBlY3RhdGlvbiwgc2V0VmFs
dWUsIGxhc3RFeHBlY3RhdGlvbiwgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uKQoreworICAgIHZh
ciB0YXJnZXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAgcGFyZW50LmFw
cGVuZENoaWxkKHRhcmdldCk7CisKKyAgICB3aW5kb3cudGFyZ2V0ID0gdGFyZ2V0OworICAgIHdp
bmRvdy5pbml0aWFsRXhwZWN0YXRpb24gPSBpbml0aWFsRXhwZWN0YXRpb247CisgICAgd2luZG93
Lmxhc3RFeHBlY3RhdGlvbiA9IGxhc3RFeHBlY3RhdGlvbjsKKyAgICB3aW5kb3cubGFzdEF0dHJp
YnV0ZUV4cGVjdGF0aW9uID0gbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uOworCisgICAgaWYgKHVu
ZGVmaW5lZCAhPT0gaW5pdGlhbEF0dHJpYnV0ZSkKKyAgICAgICAgdGFyZ2V0LnNldEF0dHJpYnV0
ZSgic3BlbGxjaGVjayIsIGluaXRpYWxBdHRyaWJ1dGUpOworICAgIHNob3VsZEJlKCJ0YXJnZXQu
c3BlbGxjaGVjayIsICJpbml0aWFsRXhwZWN0YXRpb24iKTsKKyAgICAKKyAgICBpZiAodW5kZWZp
bmVkICE9PSBzZXRWYWx1ZSkKKyAgICAgICAgdGFyZ2V0LnNwZWxsY2hlY2sgPSBzZXRWYWx1ZTsK
KyAgICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCAibGFzdEV4cGVjdGF0aW9uIik7Cisg
ICAgc2hvdWxkQmUoInRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSIsICJsYXN0QXR0
cmlidXRlRXhwZWN0YXRpb24iKTsKKworICAgIHBhcmVudC5yZW1vdmVDaGlsZCh0YXJnZXQpOwor
fQorCit0ZXN0Rm9yKHVuZGVmaW5lZCwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCBudWxsKTsKK3Rl
c3RGb3IodW5kZWZpbmVkLCB0cnVlLCBmYWxzZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcih1
bmRlZmluZWQsIHRydWUsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKHVuZGVmaW5lZCwg
dHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOyAvLyAwIHdpbGwgYmUgY29lcmNlZCB0byBmYWxzZQor
dGVzdEZvcih1bmRlZmluZWQsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7IC8vIDAgd2lsbCBiZSBj
b2VyY2VkIHRvIHRydWUKK3Rlc3RGb3IodW5kZWZpbmVkLCB0cnVlLCAiaW52YWxpZCIsIHRydWUs
ICJ0cnVlIik7IC8vIHN0cmluZyB3aWxsIGJlIGNvZXJjZWQgdG8gdHJ1ZQordGVzdEZvcih1bmRl
ZmluZWQsIHRydWUsICJmYWxzZSIsIHRydWUsICJ0cnVlIik7IC8vIC4uLmV2ZW4gaWYgdGhlIHN0
cmluZyBpcyAiZmFsc2UiIChhcyBGaXJlZm94IGRvZXMpLiAKKwordGVzdEZvcigidHJ1ZSIsIHRy
dWUsIHVuZGVmaW5lZCwgdHJ1ZSwgInRydWUiKTsKK3Rlc3RGb3IoInRydWUiLCB0cnVlLCBmYWxz
ZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsIHRydWUsIHRydWUsICJ0
cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZv
cigidHJ1ZSIsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwg
ImludmFsaWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsICJmYWxzZSIs
IHRydWUsICJ0cnVlIik7CisKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHVuZGVmaW5lZCwgZmFs
c2UsICJmYWxzZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAiZmFs
c2UiKTsKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0
Rm9yKCJmYWxzZSIsIGZhbHNlLCAwLCBmYWxzZSwgImZhbHNlIik7Cit0ZXN0Rm9yKCJmYWxzZSIs
IGZhbHNlLCAxLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImludmFs
aWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImZhbHNlIiwgdHJ1
ZSwgInRydWUiKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2stZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmFiYmQ1N2FhODQ4YWRiNTViNjYzYjViNjY2YWJlODg1Y2NmMTdmM2MK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVs
bGNoZWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcyIEBACitUZXN0cyB0aGUgc3BlbGxjaGVj
ayBhdHRyaWJ1dGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRhcmdl
dC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVj
aycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0
cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0
aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJp
YnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJn
ZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hl
Y2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sg
aXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0
dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3Rh
dGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRy
aWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNo
ZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNo
ZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNr
IGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RB
dHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0
YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0
cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRh
cmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxj
aGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0
QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxs
Y2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFz
dEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRB
dHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVs
bGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdkYWU3NTljZjFiN2Mx
OTU0Mzk5NDk4ZmM0ZmE1MTRmN2MzMTlkZTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKQEAgLTAsMCArMSwxMyBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9zcGVsbGNoZWNrLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAppbmRl
eCBlYzY0YWRmMDRlNmI3MWRkZTFjN2E0ZWI4YzYxMWQ4NWNlYWI3YzFiLi5lOWUxZjgxNTY3ZjZl
NmQyZDEyOWEzMDQ0NDY4ZmE3Y2E2NzQ3OGQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC02OTAsNiArNjkwLDcgQEAg
QlVHMjM0OTcgTUFDIDogZWRpdGluZy9zZWxlY3Rpb24vdW5yZW5kZXJlZC0wMDIuaHRtbCA9IElN
QUdFCiBCVUcxMTU3NyBXSU4gTElOVVggOiBlZGl0aW5nL3NwZWxsaW5nL2lubGluZV9zcGVsbGlu
Z19tYXJrZXJzLmh0bWwgPSBGQUlMCiBCVUcxMTU3NyBXSU4gTElOVVggOiBlZGl0aW5nL3NwZWxs
aW5nL3NwZWxsY2hlY2stYXR0cmlidXRlLmh0bWwgPSBGQUlMCiBCVUcxMTU3NyBXSU4gTElOVVgg
OiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWxpbmVicmVhay5odG1sID0gRkFJTAorQlVHMTE1
NzcgV0lOIExJTlVYIDogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdl
Lmh0bWwgID0gRkFJTAogCiAvLyBUT0RPKGVyZyk6IEF0dGVtcHRlZCB0byByZWJhc2VsaW5lIHRo
ZXNlIHRlc3RzIGFzIHBhcnQgb2YgdGhlIGFib3ZlCiAvLyA0MzM0Njo0MzM2MSByZWJhc2VsaW5n
IGZyb20gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNDMzNTUuIFR1cm5lZApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCA2MmMyOTVjZTA3MmYzMmE5NDhmZDM1YjljYmUzNzg5
MzMxMDk3MzQ5Li44ZmQwMjBmZjQ2Njg5NTgwYTg1MGYwZjVjYWVmN2Y4Yzk0YmVjOTNhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZApAQCAtOTgxLDYgKzk4MSw3IEBAIGVkaXRpbmcvc3BlbGxp
bmcvc3BlbGxpbmctY29udGVudGVkaXRhYmxlLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctdGV4dGFyZWEuaHRtbAogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1iYWNrc3BhY2UtYmV0
d2Vlbi1saW5lcy5odG1sCiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWxpbmVicmVhay5odG1s
CitlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbAogZWRpdGlu
Zy9zdHlsZS81MDY1OTEwLmh0bWwKIGVkaXRpbmcvc3R5bGUvYXBwbGUtc3R5bGUtZWRpdGFibGUt
bWl4Lmh0bWwKIGVkaXRpbmcvc3R5bGUvYmxvY2stc3R5bGUtMDAxLmh0bWwKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCmluZGV4IDRhYjE5YjFkZWZkMjBjZThiY2NmNzFmNmE2NDQ1MGM4NDFhZDJkYTEu
LmZlNWJkNDY5MDFhMDc4OTFjMmU3MTgyMDgxMzFlZmVhMzI2OWE5MTEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
cXQvU2tpcHBlZApAQCAtMjI0NSw2ICsyMjQ1LDggQEAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGlu
Zy10ZXh0YXJlYS5odG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00NTQzNQogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1iYWNrc3BhY2UtYmV0d2Vlbi1saW5l
cy5odG1sCiAKK2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1s
CisKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwogIyBmYWlsaW5nIGVkaXRpbmcvc3R5bGUgdGVz
dHMKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmNmNhZTIwOTZkZjhhYWQyYmZiZjQ1NWYxZGE2
YzY5MjYyNmFkMzEyLi4zYjEyNWVlYjdlNjM3ZmYxOGNiYzQwOTQwZjk5NzQ2NzZkZGE3MzNhIDEw
MDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIxIEBACisyMDEwLTEwLTI3ICBNT1JJVEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdl
YktpdCBuZWVkcyB0byBleHBvc2UgYW4gRWxlbWVudDo6c3BlbGxjaGVjayBhdHRyaWJ1dGUgdG8g
amF2YXNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTI1NTM2CisKKyAgICAgICAgUHVibGlzaGVkIEVsZW1lbnQuc3BlbGxjaGVjayBwcm9wZXJ0
eSBvbiBJREwsIGltcGxlbWVudGVkIGl0LgorICAgICAgICAKKyAgICAgICAgVGVzdHM6IGVkaXRp
bmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKKworICAgICAgICAqIGh0bWwv
SFRNTEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6OnNwZWxsY2hl
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6OnNldFNwZWxsY2hlY2spOgorICAg
ICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmlk
bDoKKwogMjAxMC0xMC0yNyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCmluZGV4IDE0ODNmYmNm
YWJlZmQ1MmFhZWE0MTNjYWIwNmY2NmE1OGJkMTA5ZjIuLjFlYmNmYWZjZmU1YjAzNzQ1Nzg1ZmFk
YjMyYTQzMzk4YWI5ZWNhYTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtNzI1LDYgKzcyNSwxNyBA
QCB2b2lkIEhUTUxFbGVtZW50OjpzZXREcmFnZ2FibGUoYm9vbCB2YWx1ZSkKICAgICBzZXRBdHRy
aWJ1dGUoZHJhZ2dhYmxlQXR0ciwgdmFsdWUgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKIH0KIAorYm9v
bCBIVE1MRWxlbWVudDo6c3BlbGxjaGVjaygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGlzU3BlbGxD
aGVja2luZ0VuYWJsZWQoKTsKK30KKwordm9pZCBIVE1MRWxlbWVudDo6c2V0U3BlbGxjaGVjayhi
b29sIGVuYWJsZSkKK3sKKyAgICBzZXRBdHRyaWJ1dGUoSFRNTE5hbWVzOjpzcGVsbGNoZWNrQXR0
ciwgZW5hYmxlID8gInRydWUiIDogImZhbHNlIik7Cit9CisKKwogdm9pZCBIVE1MRWxlbWVudDo6
Y2xpY2soKQogewogICAgIGRpc3BhdGNoU2ltdWxhdGVkQ2xpY2soMCwgZmFsc2UsIGZhbHNlKTsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oIGIvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmgKaW5kZXggNTJlOWVjZmU5ZWY3OGZiNzI3NDEzOWIwMzEyNWE1NDg1ZGZmNmIw
Zi4uMTY2MGUyYTZkNGJkMjdlNGU4MTA5YzVhN2VhYzVmMzA3YzkyNWYyZSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50
LmgKQEAgLTY2LDYgKzY2LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBkcmFnZ2FibGUo
KSBjb25zdDsKICAgICB2b2lkIHNldERyYWdnYWJsZShib29sKTsKIAorICAgIGJvb2wgc3BlbGxj
aGVjaygpIGNvbnN0OworICAgIHZvaWQgc2V0U3BlbGxjaGVjayhib29sKTsKKwogICAgIHZvaWQg
Y2xpY2soKTsKIAogICAgIHZpcnR1YWwgdm9pZCBhY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kVG9B
bnlFbGVtZW50KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwgYi9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCmluZGV4IGIxMjdjNTE3Mjc2NWIxOGM4MTgwMWJk
Y2U2ZjVhNzBhMDJlM2RhOGYuLjc3NDIzZmNkMDYyNDA4YmE4YjY3NTEwZGQ0MjYwN2U1Y2VhODFm
MDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmlkbApAQCAtNjIsNiArNjIsOCBAQCBtb2R1bGUgaHRtbCB7CiAg
ICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0
cmluZyBjb250ZW50RWRpdGFibGU7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFu
IGlzQ29udGVudEVkaXRhYmxlOwogCisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBib29sZWFu
IHNwZWxsY2hlY2s7CisKICNpZiBkZWZpbmVkKExBTkdVQUdFX09CSkVDVElWRV9DKSAmJiBMQU5H
VUFHRV9PQkpFQ1RJVkVfQwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRp
dGxlRGlzcGxheVN0cmluZzsKICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72158</attachid>
            <date>2010-10-28 01:26:47 -0700</date>
            <delta_ts>2010-10-28 02:41:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-25536-20101028172645.patch</filename>
            <type>text/plain</type>
            <size>18768</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlODA1NzUyNTY2NTIyYjNlMzg2ZDM3MjgxZTU3YjdhYWEzM2E4ZTU1Li4yYzE2YTNl
NjIwZTVkNWMwOGEzNWY4NjZlZmExNTgzMGMwYzI1NDNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMTAtMjggIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViS2l0IG5lZWRzIHRv
IGV4cG9zZSBhbiBFbGVtZW50OjpzcGVsbGNoZWNrIGF0dHJpYnV0ZSB0byBqYXZhc2NyaXB0Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU1MzYKKwor
ICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc2NyaXB0LXRlc3RzL3NwZWxsaW5nLWF0dHJpYnV0
ZS1jaGFuZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qczogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0
L1NraXBwZWQ6CisKIDIwMTAtMTAtMjcgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NwZWxsaW5nL3NjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdl
LmpzIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zcGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGJmODBhMmNjNWMxYjUzMzQ4YTM1MDky
MDEzN2I1YWRlNzJhZDNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5qcwpAQCAtMCww
ICsxLDg2IEBACitkZXNjcmlwdGlvbignVGVzdHMgaWYgdGhlIHNwZWxsY2hlY2tlciBiZWhhdmlv
ciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNj
cmlwdC4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOwordmFyIHNlbCA9IGRvY3VtZW50Lmdl
dFNlbGVjdGlvbigpOworCitmdW5jdGlvbiB0ZXN0U3BlbGxDaGVja2luZ0VuYWJsZWQodGFyZ2V0
LCBlbmFibGVkKQoreworICAgIHRhcmdldC5zcGVsbGNoZWNrID0gZW5hYmxlZDsKKworICAgIGlm
ICh0YXJnZXQudGFnTmFtZSA9PSAiU1BBTiIpIHsKKyAgICAgICAgdGFyZ2V0LmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJIZWxsbywiKSk7CisgICAgICAgIHNlbC5zZXRCYXNl
QW5kRXh0ZW50KHRhcmdldCwgNiwgdGFyZ2V0LCA2KTsKKyAgICB9IGVsc2UgaWYgKHRhcmdldC50
YWdOYW1lID09ICJJTlBVVCIgfHwgdGFyZ2V0LnRhZ05hbWUgPT0gIlRFWFRBUkVBIikgeworICAg
ICAgICB0YXJnZXQuZm9jdXMoKTsKKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2Vy
dFRleHQiLCBmYWxzZSwgIkhlbGxvLCIpOworICAgIH0KKworICAgIGRvY3VtZW50LmV4ZWNDb21t
YW5kKCJJbnNlcnRUZXh0IiwgZmFsc2UsICd6Jyk7CisgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQo
Ikluc2VydFRleHQiLCBmYWxzZSwgJ3onKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5z
ZXJ0VGV4dCIsIGZhbHNlLCAnICcpOworCisgICAgd2luZG93LnRhcmdldCA9IHRhcmdldDsKKyAg
ICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCBlbmFibGVkID8gInRydWUiIDogImZhbHNl
Iik7CisgICAgc2hvdWxkQmUoImxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2Vy
KDYsIDIpIiwgZW5hYmxlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworfQorCitmdW5jdGlvbiBjcmVh
dGVFbGVtZW50KHRhZ05hbWUsIHNwZWxsY2hlY2spCit7CisgICAgdmFyIHRhcmdldCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7CisgICAgaWYgKHRhZ05hbWUgPT0gIlNQQU4iKQor
ICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiLCAidHJ1ZSIpOwor
ICAgIGlmIChzcGVsbGNoZWNrKQorICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJzcGVsbGNo
ZWNrIiwgc3BlbGxjaGVjayk7CisgICAgcmV0dXJuIHRhcmdldDsKK30KKworZnVuY3Rpb24gdGVz
dEZvcih0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlLCBleHBlY3RhdGlvbikKK3sKKyAgICB2YXIg
dGFyZ2V0ID0gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlKTsKKyAgICBw
YXJlbnQuYXBwZW5kQ2hpbGQodGFyZ2V0KTsKKworICAgIHRlc3RTcGVsbENoZWNraW5nRW5hYmxl
ZCh0YXJnZXQsIGV4cGVjdGF0aW9uKTsKKyAgICBwYXJlbnQuaW5uZXJIVE1MID0gIiI7Cit9CisK
Ky8vIGRlZmF1bHQgLT4gdHJ1ZQordGVzdEZvcigiU1BBTiIsIHVuZGVmaW5lZCwgdHJ1ZSk7Cisv
LyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJTUEFOIiwgdW5kZWZpbmVkLCBmYWxzZSk7Cisv
LyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCB0cnVlKTsKKy8vIHRydWUgLT4g
ZmFsc2UKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCBmYWxzZSk7CisvLyBmYWxzZSAtPiB0cnVlCit0
ZXN0Rm9yKCJTUEFOIiwgZmFsc2UsIHRydWUpOworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3Io
IlNQQU4iLCBmYWxzZSwgZmFsc2UpOworCisvLyBkZWZhdWx0IC0+IHRydWUKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCB0cnVlKTsKKy8vIGRlZmF1bHQgLT4gZmFsc2UKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCBmYWxzZSk7CisvLyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVU
IiwgdHJ1ZSwgdHJ1ZSk7CisvLyB0cnVlIC0+IGZhbHNlCit0ZXN0Rm9yKCJJTlBVVCIsIHRydWUs
IGZhbHNlKTsKKy8vIGZhbHNlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIHRydWUp
OworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIGZhbHNlKTsKKwor
Ly8gZGVmYXVsdCAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgdHJ1ZSk7
CisvLyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgZmFs
c2UpOworLy8gdHJ1ZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHRydWUsIHRydWUpOwor
Ly8gdHJ1ZSAtPiBmYWxzZQordGVzdEZvcigiVEVYVEFSRUEiLCB0cnVlLCBmYWxzZSk7CisvLyBm
YWxzZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCB0cnVlKTsKKy8vIGZhbHNl
IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCBmYWxzZSk7CisKK3ZhciBzdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjI2ZjRmMjhjZGFmMjU2MTUyMzFlYWIwZGQyNDdmNTgyODE4ZmE1Mgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NSBAQAorVGVzdHMgaWYg
dGhlIHNwZWxsY2hlY2tlciBiZWhhdmlvciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0
cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNjcmlwdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29u
dHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFy
a2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1Mg
bGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5o
YXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIp
IGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVz
dENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0
LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGlu
Z01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQ
QVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNl
CitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2
LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91
dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3Bl
bGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1
ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0
cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250
cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJr
ZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBs
YXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhh
c1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMg
ZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikg
aXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0
dHJpYnV0ZS1jaGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctYXR0cmlidXRlLWNoYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQwOTRlMDY4NjczZjM2NDhiNGNl
NThhNzFkNGZjMTFkZjBmMmVkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbApAQCAtMCwwICsxLDE0
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy9qcy10ZXN0LXNlbGVjdGlvbi1zaGFyZWQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCBzcmM9InNjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL3NwZWxsY2hlY2suanMgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mNmQ2YjQ0N2U3OTYxMjYwN2VjNmU2ZGE5NDExY2JlZjRiNWNiOTg3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3Rz
L3NwZWxsY2hlY2suanMKQEAgLTAsMCArMSw1MiBAQAorZGVzY3JpcHRpb24oJ1Rlc3RzIHRoZSBz
cGVsbGNoZWNrIGF0dHJpYnV0ZS4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOworCitmdW5j
dGlvbiB0ZXN0Rm9yKGluaXRpYWxBdHRyaWJ1dGUsIGluaXRpYWxFeHBlY3RhdGlvbiwgc2V0VmFs
dWUsIGxhc3RFeHBlY3RhdGlvbiwgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uKQoreworICAgIHZh
ciB0YXJnZXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAgcGFyZW50LmFw
cGVuZENoaWxkKHRhcmdldCk7CisKKyAgICB3aW5kb3cudGFyZ2V0ID0gdGFyZ2V0OworICAgIHdp
bmRvdy5pbml0aWFsRXhwZWN0YXRpb24gPSBpbml0aWFsRXhwZWN0YXRpb247CisgICAgd2luZG93
Lmxhc3RFeHBlY3RhdGlvbiA9IGxhc3RFeHBlY3RhdGlvbjsKKyAgICB3aW5kb3cubGFzdEF0dHJp
YnV0ZUV4cGVjdGF0aW9uID0gbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uOworCisgICAgaWYgKHVu
ZGVmaW5lZCAhPT0gaW5pdGlhbEF0dHJpYnV0ZSkKKyAgICAgICAgdGFyZ2V0LnNldEF0dHJpYnV0
ZSgic3BlbGxjaGVjayIsIGluaXRpYWxBdHRyaWJ1dGUpOworICAgIHNob3VsZEJlKCJ0YXJnZXQu
c3BlbGxjaGVjayIsICJpbml0aWFsRXhwZWN0YXRpb24iKTsKKyAgICAKKyAgICBpZiAodW5kZWZp
bmVkICE9PSBzZXRWYWx1ZSkKKyAgICAgICAgdGFyZ2V0LnNwZWxsY2hlY2sgPSBzZXRWYWx1ZTsK
KyAgICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCAibGFzdEV4cGVjdGF0aW9uIik7Cisg
ICAgc2hvdWxkQmUoInRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSIsICJsYXN0QXR0
cmlidXRlRXhwZWN0YXRpb24iKTsKKworICAgIHBhcmVudC5yZW1vdmVDaGlsZCh0YXJnZXQpOwor
fQorCit0ZXN0Rm9yKHVuZGVmaW5lZCwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCBudWxsKTsKK3Rl
c3RGb3IodW5kZWZpbmVkLCB0cnVlLCBmYWxzZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcih1
bmRlZmluZWQsIHRydWUsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKHVuZGVmaW5lZCwg
dHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOyAvLyAwIHdpbGwgYmUgY29lcmNlZCB0byBmYWxzZQor
dGVzdEZvcih1bmRlZmluZWQsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7IC8vIDAgd2lsbCBiZSBj
b2VyY2VkIHRvIHRydWUKK3Rlc3RGb3IodW5kZWZpbmVkLCB0cnVlLCAiaW52YWxpZCIsIHRydWUs
ICJ0cnVlIik7IC8vIHN0cmluZyB3aWxsIGJlIGNvZXJjZWQgdG8gdHJ1ZQordGVzdEZvcih1bmRl
ZmluZWQsIHRydWUsICJmYWxzZSIsIHRydWUsICJ0cnVlIik7IC8vIC4uLmV2ZW4gaWYgdGhlIHN0
cmluZyBpcyAiZmFsc2UiIChhcyBGaXJlZm94IGRvZXMpLiAKKwordGVzdEZvcigidHJ1ZSIsIHRy
dWUsIHVuZGVmaW5lZCwgdHJ1ZSwgInRydWUiKTsKK3Rlc3RGb3IoInRydWUiLCB0cnVlLCBmYWxz
ZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsIHRydWUsIHRydWUsICJ0
cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZv
cigidHJ1ZSIsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwg
ImludmFsaWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsICJmYWxzZSIs
IHRydWUsICJ0cnVlIik7CisKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHVuZGVmaW5lZCwgZmFs
c2UsICJmYWxzZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAiZmFs
c2UiKTsKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0
Rm9yKCJmYWxzZSIsIGZhbHNlLCAwLCBmYWxzZSwgImZhbHNlIik7Cit0ZXN0Rm9yKCJmYWxzZSIs
IGZhbHNlLCAxLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImludmFs
aWQiLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImZhbHNlIiwgdHJ1
ZSwgInRydWUiKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2stZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmFiYmQ1N2FhODQ4YWRiNTViNjYzYjViNjY2YWJlODg1Y2NmMTdmM2MK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVs
bGNoZWNrLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcyIEBACitUZXN0cyB0aGUgc3BlbGxjaGVj
ayBhdHRyaWJ1dGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHRhcmdl
dC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVj
aycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0
cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0
aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJp
YnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJn
ZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hl
Y2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sg
aXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0
dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3Rh
dGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRy
aWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNo
ZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNo
ZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNr
IGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RB
dHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0
YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0
cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRh
cmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxj
aGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0
QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxs
Y2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFz
dEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRB
dHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVs
bGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdkYWU3NTljZjFiN2Mx
OTU0Mzk5NDk4ZmM0ZmE1MTRmN2MzMTlkZTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKQEAgLTAsMCArMSwxMyBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InNjcmlwdC10ZXN0
cy9zcGVsbGNoZWNrLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAppbmRl
eCBlYzY0YWRmMDRlNmI3MWRkZTFjN2E0ZWI4YzYxMWQ4NWNlYWI3YzFiLi5lOWUxZjgxNTY3ZjZl
NmQyZDEyOWEzMDQ0NDY4ZmE3Y2E2NzQ3OGQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC02OTAsNiArNjkwLDcgQEAg
QlVHMjM0OTcgTUFDIDogZWRpdGluZy9zZWxlY3Rpb24vdW5yZW5kZXJlZC0wMDIuaHRtbCA9IElN
QUdFCiBCVUcxMTU3NyBXSU4gTElOVVggOiBlZGl0aW5nL3NwZWxsaW5nL2lubGluZV9zcGVsbGlu
Z19tYXJrZXJzLmh0bWwgPSBGQUlMCiBCVUcxMTU3NyBXSU4gTElOVVggOiBlZGl0aW5nL3NwZWxs
aW5nL3NwZWxsY2hlY2stYXR0cmlidXRlLmh0bWwgPSBGQUlMCiBCVUcxMTU3NyBXSU4gTElOVVgg
OiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWxpbmVicmVhay5odG1sID0gRkFJTAorQlVHMTE1
NzcgV0lOIExJTlVYIDogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdl
Lmh0bWwgID0gRkFJTAogCiAvLyBUT0RPKGVyZyk6IEF0dGVtcHRlZCB0byByZWJhc2VsaW5lIHRo
ZXNlIHRlc3RzIGFzIHBhcnQgb2YgdGhlIGFib3ZlCiAvLyA0MzM0Njo0MzM2MSByZWJhc2VsaW5n
IGZyb20gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNDMzNTUuIFR1cm5lZApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvU2tpcHBlZAppbmRleCA2MmMyOTVjZTA3MmYzMmE5NDhmZDM1YjljYmUzNzg5
MzMxMDk3MzQ5Li44ZmQwMjBmZjQ2Njg5NTgwYTg1MGYwZjVjYWVmN2Y4Yzk0YmVjOTNhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZApAQCAtOTgxLDYgKzk4MSw3IEBAIGVkaXRpbmcvc3BlbGxp
bmcvc3BlbGxpbmctY29udGVudGVkaXRhYmxlLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctdGV4dGFyZWEuaHRtbAogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1iYWNrc3BhY2UtYmV0
d2Vlbi1saW5lcy5odG1sCiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWxpbmVicmVhay5odG1s
CitlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbAogZWRpdGlu
Zy9zdHlsZS81MDY1OTEwLmh0bWwKIGVkaXRpbmcvc3R5bGUvYXBwbGUtc3R5bGUtZWRpdGFibGUt
bWl4Lmh0bWwKIGVkaXRpbmcvc3R5bGUvYmxvY2stc3R5bGUtMDAxLmh0bWwKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCmluZGV4IDRhYjE5YjFkZWZkMjBjZThiY2NmNzFmNmE2NDQ1MGM4NDFhZDJkYTEu
LmZlNWJkNDY5MDFhMDc4OTFjMmU3MTgyMDgxMzFlZmVhMzI2OWE5MTEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
cXQvU2tpcHBlZApAQCAtMjI0NSw2ICsyMjQ1LDggQEAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGlu
Zy10ZXh0YXJlYS5odG1sCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00NTQzNQogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1iYWNrc3BhY2UtYmV0d2Vlbi1saW5l
cy5odG1sCiAKK2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1s
CisKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwogIyBmYWlsaW5nIGVkaXRpbmcvc3R5bGUgdGVz
dHMKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0gIwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VM
b2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmNmNhZTIwOTZkZjhhYWQyYmZiZjQ1NWYxZGE2
YzY5MjYyNmFkMzEyLi4zYjEyNWVlYjdlNjM3ZmYxOGNiYzQwOTQwZjk5NzQ2NzZkZGE3MzNhIDEw
MDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIxIEBACisyMDEwLTEwLTI3ICBNT1JJVEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdl
YktpdCBuZWVkcyB0byBleHBvc2UgYW4gRWxlbWVudDo6c3BlbGxjaGVjayBhdHRyaWJ1dGUgdG8g
amF2YXNjcmlwdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTI1NTM2CisKKyAgICAgICAgUHVibGlzaGVkIEVsZW1lbnQuc3BlbGxjaGVjayBwcm9wZXJ0
eSBvbiBJREwsIGltcGxlbWVudGVkIGl0LgorICAgICAgICAKKyAgICAgICAgVGVzdHM6IGVkaXRp
bmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKKworICAgICAgICAqIGh0bWwv
SFRNTEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6OnNwZWxsY2hl
Y2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6OnNldFNwZWxsY2hlY2spOgorICAg
ICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmlk
bDoKKwogMjAxMC0xMC0yNyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCmluZGV4IDE0ODNmYmNm
YWJlZmQ1MmFhZWE0MTNjYWIwNmY2NmE1OGJkMTA5ZjIuLmJjNGJmMDc5MGVhZWExMTc3YTUwNGM1
ZmRjOGE5Mzk2ZTBhMjBhOWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5j
cHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcApAQCAtNzI1LDYgKzcyNSwxNyBA
QCB2b2lkIEhUTUxFbGVtZW50OjpzZXREcmFnZ2FibGUoYm9vbCB2YWx1ZSkKICAgICBzZXRBdHRy
aWJ1dGUoZHJhZ2dhYmxlQXR0ciwgdmFsdWUgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKIH0KIAorYm9v
bCBIVE1MRWxlbWVudDo6c3BlbGxjaGVjaygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGlzU3BlbGxD
aGVja2luZ0VuYWJsZWQoKTsKK30KKwordm9pZCBIVE1MRWxlbWVudDo6c2V0U3BlbGxjaGVjayhi
b29sIGVuYWJsZSkKK3sKKyAgICBzZXRBdHRyaWJ1dGUoc3BlbGxjaGVja0F0dHIsIGVuYWJsZSA/
ICJ0cnVlIiA6ICJmYWxzZSIpOworfQorCisKIHZvaWQgSFRNTEVsZW1lbnQ6OmNsaWNrKCkKIHsK
ICAgICBkaXNwYXRjaFNpbXVsYXRlZENsaWNrKDAsIGZhbHNlLCBmYWxzZSk7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaCBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5o
CmluZGV4IDUyZTllY2ZlOWVmNzhmYjcyNzQxMzliMDMxMjVhNTQ4NWRmZjZiMGYuLjE2NjBlMmE2
ZDRiZDI3ZTRlODEwOWM1YTdlYWM1ZjMwN2M5MjVmMmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRt
bC9IVE1MRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCkBAIC02Niw2
ICs2Niw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7CiAg
ICAgdm9pZCBzZXREcmFnZ2FibGUoYm9vbCk7CiAKKyAgICBib29sIHNwZWxsY2hlY2soKSBjb25z
dDsKKyAgICB2b2lkIHNldFNwZWxsY2hlY2soYm9vbCk7CisKICAgICB2b2lkIGNsaWNrKCk7CiAK
ICAgICB2aXJ0dWFsIHZvaWQgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZFRvQW55RWxlbWVudCk7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsIGIvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmlkbAppbmRleCBiMTI3YzUxNzI3NjViMThjODE4MDFiZGNlNmY1YTcwYTAy
ZTNkYThmLi43NzQyM2ZjZDA2MjQwOGJhOGI2NzUxMGRkNDI2MDdlNWNlYTgxZjA0IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5pZGwKQEAgLTYyLDYgKzYyLDggQEAgbW9kdWxlIGh0bWwgewogICAgICAgICAgICAg
ICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgY29udGVu
dEVkaXRhYmxlOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0NvbnRlbnRF
ZGl0YWJsZTsKIAorICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBzcGVsbGNoZWNr
OworCiAjaWYgZGVmaW5lZChMQU5HVUFHRV9PQkpFQ1RJVkVfQykgJiYgTEFOR1VBR0VfT0JKRUNU
SVZFX0MKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB0aXRsZURpc3BsYXlT
dHJpbmc7CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72164</attachid>
            <date>2010-10-28 02:41:12 -0700</date>
            <delta_ts>2010-10-28 02:45:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-25536-20101028184109.patch</filename>
            <type>text/plain</type>
            <size>23510</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlODA1NzUyNTY2NTIyYjNlMzg2ZDM3MjgxZTU3YjdhYWEzM2E4ZTU1Li4yYzE2YTNl
NjIwZTVkNWMwOGEzNWY4NjZlZmExNTgzMGMwYzI1NDNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMTAtMjggIE1PUklUQSBIYWppbWUgIDxtb3JyaXRhQGdvb2dsZS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViS2l0IG5lZWRzIHRv
IGV4cG9zZSBhbiBFbGVtZW50OjpzcGVsbGNoZWNrIGF0dHJpYnV0ZSB0byBqYXZhc2NyaXB0Lgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU1MzYKKwor
ICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc2NyaXB0LXRlc3RzL3NwZWxsaW5nLWF0dHJpYnV0
ZS1jaGFuZ2UuanM6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qczogQWRkZWQu
CisgICAgICAgICogZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0
OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL3F0
L1NraXBwZWQ6CisKIDIwMTAtMTAtMjcgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9lZGl0aW5nL3NwZWxsaW5nL3NjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdl
LmpzIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zcGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZGJmODBhMmNjNWMxYjUzMzQ4YTM1MDky
MDEzN2I1YWRlNzJhZDNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zY3JpcHQtdGVzdHMvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5qcwpAQCAtMCww
ICsxLDg2IEBACitkZXNjcmlwdGlvbignVGVzdHMgaWYgdGhlIHNwZWxsY2hlY2tlciBiZWhhdmlv
ciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNj
cmlwdC4nKTsKKwordmFyIHBhcmVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOwordmFyIHNlbCA9IGRvY3VtZW50Lmdl
dFNlbGVjdGlvbigpOworCitmdW5jdGlvbiB0ZXN0U3BlbGxDaGVja2luZ0VuYWJsZWQodGFyZ2V0
LCBlbmFibGVkKQoreworICAgIHRhcmdldC5zcGVsbGNoZWNrID0gZW5hYmxlZDsKKworICAgIGlm
ICh0YXJnZXQudGFnTmFtZSA9PSAiU1BBTiIpIHsKKyAgICAgICAgdGFyZ2V0LmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJIZWxsbywiKSk7CisgICAgICAgIHNlbC5zZXRCYXNl
QW5kRXh0ZW50KHRhcmdldCwgNiwgdGFyZ2V0LCA2KTsKKyAgICB9IGVsc2UgaWYgKHRhcmdldC50
YWdOYW1lID09ICJJTlBVVCIgfHwgdGFyZ2V0LnRhZ05hbWUgPT0gIlRFWFRBUkVBIikgeworICAg
ICAgICB0YXJnZXQuZm9jdXMoKTsKKyAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2Vy
dFRleHQiLCBmYWxzZSwgIkhlbGxvLCIpOworICAgIH0KKworICAgIGRvY3VtZW50LmV4ZWNDb21t
YW5kKCJJbnNlcnRUZXh0IiwgZmFsc2UsICd6Jyk7CisgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQo
Ikluc2VydFRleHQiLCBmYWxzZSwgJ3onKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5z
ZXJ0VGV4dCIsIGZhbHNlLCAnICcpOworCisgICAgd2luZG93LnRhcmdldCA9IHRhcmdldDsKKyAg
ICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCBlbmFibGVkID8gInRydWUiIDogImZhbHNl
Iik7CisgICAgc2hvdWxkQmUoImxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2Vy
KDYsIDIpIiwgZW5hYmxlZCA/ICJ0cnVlIiA6ICJmYWxzZSIpOworfQorCitmdW5jdGlvbiBjcmVh
dGVFbGVtZW50KHRhZ05hbWUsIHNwZWxsY2hlY2spCit7CisgICAgdmFyIHRhcmdldCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7CisgICAgaWYgKHRhZ05hbWUgPT0gIlNQQU4iKQor
ICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiLCAidHJ1ZSIpOwor
ICAgIGlmIChzcGVsbGNoZWNrKQorICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJzcGVsbGNo
ZWNrIiwgc3BlbGxjaGVjayk7CisgICAgcmV0dXJuIHRhcmdldDsKK30KKworZnVuY3Rpb24gdGVz
dEZvcih0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlLCBleHBlY3RhdGlvbikKK3sKKyAgICB2YXIg
dGFyZ2V0ID0gY3JlYXRlRWxlbWVudCh0YWdOYW1lLCBpbml0aWFsQXR0cmlidXRlKTsKKyAgICBw
YXJlbnQuYXBwZW5kQ2hpbGQodGFyZ2V0KTsKKworICAgIHRlc3RTcGVsbENoZWNraW5nRW5hYmxl
ZCh0YXJnZXQsIGV4cGVjdGF0aW9uKTsKKyAgICBwYXJlbnQuaW5uZXJIVE1MID0gIiI7Cit9CisK
Ky8vIGRlZmF1bHQgLT4gdHJ1ZQordGVzdEZvcigiU1BBTiIsIHVuZGVmaW5lZCwgdHJ1ZSk7Cisv
LyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJTUEFOIiwgdW5kZWZpbmVkLCBmYWxzZSk7Cisv
LyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCB0cnVlKTsKKy8vIHRydWUgLT4g
ZmFsc2UKK3Rlc3RGb3IoIlNQQU4iLCB0cnVlLCBmYWxzZSk7CisvLyBmYWxzZSAtPiB0cnVlCit0
ZXN0Rm9yKCJTUEFOIiwgZmFsc2UsIHRydWUpOworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3Io
IlNQQU4iLCBmYWxzZSwgZmFsc2UpOworCisvLyBkZWZhdWx0IC0+IHRydWUKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCB0cnVlKTsKKy8vIGRlZmF1bHQgLT4gZmFsc2UKK3Rlc3RGb3IoIklO
UFVUIiwgdW5kZWZpbmVkLCBmYWxzZSk7CisvLyB0cnVlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVU
IiwgdHJ1ZSwgdHJ1ZSk7CisvLyB0cnVlIC0+IGZhbHNlCit0ZXN0Rm9yKCJJTlBVVCIsIHRydWUs
IGZhbHNlKTsKKy8vIGZhbHNlIC0+IHRydWUKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIHRydWUp
OworLy8gZmFsc2UgLT4gZmFsc2UKK3Rlc3RGb3IoIklOUFVUIiwgZmFsc2UsIGZhbHNlKTsKKwor
Ly8gZGVmYXVsdCAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgdHJ1ZSk7
CisvLyBkZWZhdWx0IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHVuZGVmaW5lZCwgZmFs
c2UpOworLy8gdHJ1ZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIHRydWUsIHRydWUpOwor
Ly8gdHJ1ZSAtPiBmYWxzZQordGVzdEZvcigiVEVYVEFSRUEiLCB0cnVlLCBmYWxzZSk7CisvLyBm
YWxzZSAtPiB0cnVlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCB0cnVlKTsKKy8vIGZhbHNl
IC0+IGZhbHNlCit0ZXN0Rm9yKCJURVhUQVJFQSIsIGZhbHNlLCBmYWxzZSk7CisKK3ZhciBzdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9z
cGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjI2ZjRmMjhjZGFmMjU2MTUyMzFlYWIwZGQyNDdmNTgyODE4ZmE1Mgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
YXR0cmlidXRlLWNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0NSBAQAorVGVzdHMgaWYg
dGhlIHNwZWxsY2hlY2tlciBiZWhhdmlvciBjaGFuZ2UgYWZ0ZXIgdGhlIHNwZWxsY2hlY2sgYXR0
cmlidXRlIGNoYW5nZWQgYnkgdGhlIHNjcmlwdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29u
dHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFy
a2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1Mg
bGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5o
YXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIp
IGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVz
dENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0
LnNwZWxsY2hlY2sgaXMgdHJ1ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGlu
Z01hcmtlcig2LCAyKSBpcyB0cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQ
QVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNl
CitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBmYWxzZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2
LCAyKSBpcyBmYWxzZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91
dFRlc3RDb250cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3Bl
bGxpbmdNYXJrZXIoNiwgMikgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1
ZQorUEFTUyBsYXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyB0
cnVlCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGZhbHNlCitQQVNTIGxheW91dFRlc3RDb250
cm9sbGVyLmhhc1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIGZhbHNlCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIHRydWUKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJr
ZXIoNiwgMikgaXMgdHJ1ZQorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBmYWxzZQorUEFTUyBs
YXlvdXRUZXN0Q29udHJvbGxlci5oYXNTcGVsbGluZ01hcmtlcig2LCAyKSBpcyBmYWxzZQorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNTIGxheW91dFRlc3RDb250cm9sbGVyLmhh
c1NwZWxsaW5nTWFya2VyKDYsIDIpIGlzIHRydWUKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMg
ZmFsc2UKK1BBU1MgbGF5b3V0VGVzdENvbnRyb2xsZXIuaGFzU3BlbGxpbmdNYXJrZXIoNiwgMikg
aXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0
dHJpYnV0ZS1jaGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxp
bmctYXR0cmlidXRlLWNoYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQwOTRlMDY4NjczZjM2NDhiNGNl
NThhNzFkNGZjMTFkZjBmMmVkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJpYnV0ZS1jaGFuZ2UuaHRtbApAQCAtMCwwICsxLDE0
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy9qcy10ZXN0LXNlbGVjdGlvbi1zaGFyZWQuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCBzcmM9InNjcmlwdC10ZXN0cy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3RzL3NwZWxsY2hlY2suanMgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zY3JpcHQtdGVzdHMvc3BlbGxjaGVjay5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wNDg5NjNhMWFmNTcxZjkwOTFiY2NlZDJmZjJmYzY4MzhlZDZkYzM1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc2NyaXB0LXRlc3Rz
L3NwZWxsY2hlY2suanMKQEAgLTAsMCArMSwxMDMgQEAKK2Rlc2NyaXB0aW9uKCdUZXN0cyB0aGUg
c3BlbGxjaGVjayBhdHRyaWJ1dGUuJyk7CisKK3ZhciBwYXJlbnQgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTsKK2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocGFyZW50KTsKKworZnVu
Y3Rpb24gdGVzdEZvcihpbml0aWFsQXR0cmlidXRlLCBpbml0aWFsRXhwZWN0YXRpb24sIHNldFZh
bHVlLCBsYXN0RXhwZWN0YXRpb24sIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbikKK3sKKyAgICB2
YXIgdGFyZ2V0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOworICAgIHBhcmVudC5h
cHBlbmRDaGlsZCh0YXJnZXQpOworCisgICAgd2luZG93LnRhcmdldCA9IHRhcmdldDsKKyAgICB3
aW5kb3cuaW5pdGlhbEV4cGVjdGF0aW9uID0gaW5pdGlhbEV4cGVjdGF0aW9uOworICAgIHdpbmRv
dy5sYXN0RXhwZWN0YXRpb24gPSBsYXN0RXhwZWN0YXRpb247CisgICAgd2luZG93Lmxhc3RBdHRy
aWJ1dGVFeHBlY3RhdGlvbiA9IGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbjsKKworICAgIGlmICh1
bmRlZmluZWQgIT09IGluaXRpYWxBdHRyaWJ1dGUpCisgICAgICAgIHRhcmdldC5zZXRBdHRyaWJ1
dGUoInNwZWxsY2hlY2siLCBpbml0aWFsQXR0cmlidXRlKTsKKyAgICBzaG91bGRCZSgidGFyZ2V0
LnNwZWxsY2hlY2siLCAiaW5pdGlhbEV4cGVjdGF0aW9uIik7CisgICAgCisgICAgaWYgKHVuZGVm
aW5lZCAhPT0gc2V0VmFsdWUpCisgICAgICAgIHRhcmdldC5zcGVsbGNoZWNrID0gc2V0VmFsdWU7
CisgICAgc2hvdWxkQmUoInRhcmdldC5zcGVsbGNoZWNrIiwgImxhc3RFeHBlY3RhdGlvbiIpOwor
ICAgIHNob3VsZEJlKCJ0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykiLCAibGFzdEF0
dHJpYnV0ZUV4cGVjdGF0aW9uIik7CisKKyAgICBwYXJlbnQucmVtb3ZlQ2hpbGQodGFyZ2V0KTsK
K30KKworZnVuY3Rpb24gdGVzdFVzaW5nU2V0QXR0cmlidXRlcygpCit7CisgICAgdmFyIHRhcmdl
dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKKyAgICBwYXJlbnQuYXBwZW5kQ2hp
bGQodGFyZ2V0KTsKKyAgICB3aW5kb3cudGFyZ2V0ID0gdGFyZ2V0OworCisgICAgc2hvdWxkQmUo
InRhcmdldC5zcGVsbGNoZWNrIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgidGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIiwgIid0cnVlJyIpOworICAgIC8vIFNldCB1c2luZyBwcm9w
ZXJ0eS4KKyAgICB0YXJnZXQuc3BlbGxjaGVjayA9IGZhbHNlOworICAgIHNob3VsZEJlKCJ0YXJn
ZXQuc3BlbGxjaGVjayIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJ0YXJnZXQuZ2V0QXR0cmli
dXRlKCdzcGVsbGNoZWNrJykiLCAiJ2ZhbHNlJyIpOworICAgIC8vIFNldCB1c2luZyBzZXRBdHRy
aWJ1dGUoKS4KKyAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCJzcGVsbGNoZWNrIiwgInRydWUiKTsK
KyAgICBzaG91bGRCZSgidGFyZ2V0LnNwZWxsY2hlY2siLCAidHJ1ZSIpOworICAgIHNob3VsZEJl
KCJ0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykiLCAiJ3RydWUnIik7CisKKyAgICAv
LyBTZXQgdXNpbmcgc2V0QXR0cmlidXRlKCksIHZhbGlkIGJ1dCBub24gY2Fub25pY2FsIHZhbHVl
LgorICAgIHRhcmdldC5zcGVsbGNoZWNrID0gZmFsc2U7IC8vIGNsZWFyIGF0IGZpcnN0CisgICAg
dGFyZ2V0LnNldEF0dHJpYnV0ZSgic3BlbGxjaGVjayIsICJUUlVFIik7CisgICAgc2hvdWxkQmUo
InRhcmdldC5zcGVsbGNoZWNrIiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgidGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIiwgIidUUlVFJyIpOworICAgIC8vIFNldCB1c2luZyBzZXRB
dHRyaWJ1dGUoKSwgaW52YWxpZCB2YWx1ZS4KKyAgICB0YXJnZXQuc3BlbGxjaGVjayA9IGZhbHNl
OyAvLyBjbGVhciBhdCBmaXJzdAorICAgIHRhcmdldC5zZXRBdHRyaWJ1dGUoInNwZWxsY2hlY2si
LCAiSU5WQUxJRCIpOworICAgIHNob3VsZEJlKCJ0YXJnZXQuc3BlbGxjaGVjayIsICJ0cnVlIik7
CisgICAgc2hvdWxkQmUoInRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSIsICInSU5W
QUxJRCciKTsKKworICAgIHBhcmVudC5yZW1vdmVDaGlsZCh0YXJnZXQpOworfQorCit0ZXN0Rm9y
KHVuZGVmaW5lZCwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCBudWxsKTsKK3Rlc3RGb3IodW5kZWZp
bmVkLCB0cnVlLCBmYWxzZSwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcih1bmRlZmluZWQsIHRy
dWUsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKHVuZGVmaW5lZCwgdHJ1ZSwgMCwgZmFs
c2UsICJmYWxzZSIpOyAvLyAwIHdpbGwgYmUgY29lcmNlZCB0byBmYWxzZQordGVzdEZvcih1bmRl
ZmluZWQsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7IC8vIDAgd2lsbCBiZSBjb2VyY2VkIHRvIHRy
dWUKK3Rlc3RGb3IodW5kZWZpbmVkLCB0cnVlLCAiaW52YWxpZCIsIHRydWUsICJ0cnVlIik7IC8v
IHN0cmluZyB3aWxsIGJlIGNvZXJjZWQgdG8gdHJ1ZQordGVzdEZvcih1bmRlZmluZWQsIHRydWUs
ICJmYWxzZSIsIHRydWUsICJ0cnVlIik7IC8vIC4uLmV2ZW4gaWYgdGhlIHN0cmluZyBpcyAiZmFs
c2UiIChhcyBGaXJlZm94IGRvZXMpLiAKKwordGVzdEZvcigidHJ1ZSIsIHRydWUsIHVuZGVmaW5l
ZCwgdHJ1ZSwgInRydWUiKTsKK3Rlc3RGb3IoInRydWUiLCB0cnVlLCBmYWxzZSwgZmFsc2UsICJm
YWxzZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0
Rm9yKCJ0cnVlIiwgdHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigidHJ1ZSIsIHRy
dWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJ0cnVlIiwgdHJ1ZSwgImludmFsaWQiLCB0
cnVlLCAidHJ1ZSIpOwordGVzdEZvcigidHJ1ZSIsIHRydWUsICJmYWxzZSIsIHRydWUsICJ0cnVl
Iik7CisKK3Rlc3RGb3IoImZhbHNlIiwgZmFsc2UsIHVuZGVmaW5lZCwgZmFsc2UsICJmYWxzZSIp
OwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAiZmFsc2UiKTsKK3Rlc3RG
b3IoImZhbHNlIiwgZmFsc2UsIHRydWUsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJmYWxzZSIs
IGZhbHNlLCAwLCBmYWxzZSwgImZhbHNlIik7Cit0ZXN0Rm9yKCJmYWxzZSIsIGZhbHNlLCAxLCB0
cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImludmFsaWQiLCB0cnVlLCAi
dHJ1ZSIpOwordGVzdEZvcigiZmFsc2UiLCBmYWxzZSwgImZhbHNlIiwgdHJ1ZSwgInRydWUiKTsK
KworLy8gdmFyaW91cyBpbml0aWFsIHZhbHVlcwordGVzdEZvcigiIiwgdHJ1ZSwgdW5kZWZpbmVk
LCB0cnVlLCAiIik7Cit0ZXN0Rm9yKCIiLCB0cnVlLCAxLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZv
cigiVFJVRSIsIHRydWUsIHVuZGVmaW5lZCwgdHJ1ZSwgIlRSVUUiKTsKK3Rlc3RGb3IoIlRSVUUi
LCB0cnVlLCAxLCB0cnVlLCAidHJ1ZSIpOwordGVzdEZvcigiRkFMU0UiLCBmYWxzZSwgdW5kZWZp
bmVkLCBmYWxzZSwgIkZBTFNFIik7Cit0ZXN0Rm9yKCJGQUxTRSIsIGZhbHNlLCAwLCBmYWxzZSwg
ImZhbHNlIik7Cit0ZXN0Rm9yKCJpbnZhbGlkIiwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCAiaW52
YWxpZCIpOwordGVzdEZvcigiaW52YWxpZCIsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0
Rm9yKCJmYWxzZSAgIiwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCAiZmFsc2UgICIpOwordGVzdEZv
cigiZmFsc2UgICIsIHRydWUsIDEsIHRydWUsICJ0cnVlIik7Cit0ZXN0Rm9yKCJmYWxzZSAgIiwg
dHJ1ZSwgMCwgZmFsc2UsICJmYWxzZSIpOwordGVzdEZvcigiMCIsIHRydWUsIHVuZGVmaW5lZCwg
dHJ1ZSwgIjAiKTsKK3Rlc3RGb3IoIjAiLCB0cnVlLCAwLCBmYWxzZSwgImZhbHNlIik7Cit0ZXN0
Rm9yKCIxIiwgdHJ1ZSwgdW5kZWZpbmVkLCB0cnVlLCAiMSIpOwordGVzdEZvcigiMSIsIHRydWUs
IDAsIGZhbHNlLCAiZmFsc2UiKTsKKwordGVzdFVzaW5nU2V0QXR0cmlidXRlcygpOworCisKK3Zh
ciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
NjZmYWU0MGFmNWJhZGI4NzQwN2IyZmM0MjBkMWNlOGE1ZDE2ODRmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEVsZW1lbnQvc3BlbGxjaGVjay1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxMjcgQEAKK1Rlc3RzIHRoZSBzcGVsbGNoZWNrIGF0dHJpYnV0ZS4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMg
aW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3Rh
dGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJp
YnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3Rh
dGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFy
Z2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlv
bgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1
dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0
LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNr
IGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNr
JykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlz
IGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0
YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRy
aWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0
YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRh
cmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRp
b24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRh
cmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmli
dXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdl
dC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVj
aycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBp
cyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0
cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0
aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJp
YnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJn
ZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hl
Y2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sg
aXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0
dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3Rh
dGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRy
aWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFy
Z2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNo
ZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNo
ZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNr
IGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RB
dHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0
YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0
cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRh
cmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxj
aGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVj
ayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0
QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVj
dGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0
dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0
YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxs
Y2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hl
Y2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFz
dEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxF
eHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBl
Y3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BB
U1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRB
dHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1Mg
dGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVs
bGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVs
bGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNo
ZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0
RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxh
c3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFs
RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQ
QVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhw
ZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlhbEV4cGVjdGF0aW9uCitQ
QVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuZ2V0
QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4cGVjdGF0aW9uCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3Bl
bGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3Bl
bGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFTUyB0YXJnZXQuc3BlbGxj
aGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgbGFz
dEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyBs
YXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgaW5pdGlh
bEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGxhc3RFeHBlY3RhdGlvbgor
UEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgbGFzdEF0dHJpYnV0ZUV4
cGVjdGF0aW9uCitQQVNTIHRhcmdldC5zcGVsbGNoZWNrIGlzIGluaXRpYWxFeHBlY3RhdGlvbgor
UEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyBsYXN0RXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0Lmdl
dEF0dHJpYnV0ZSgnc3BlbGxjaGVjaycpIGlzIGxhc3RBdHRyaWJ1dGVFeHBlY3RhdGlvbgorUEFT
UyB0YXJnZXQuc3BlbGxjaGVjayBpcyBpbml0aWFsRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNw
ZWxsY2hlY2sgaXMgbGFzdEV4cGVjdGF0aW9uCitQQVNTIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3Nw
ZWxsY2hlY2snKSBpcyBsYXN0QXR0cmlidXRlRXhwZWN0YXRpb24KK1BBU1MgdGFyZ2V0LnNwZWxs
Y2hlY2sgaXMgdHJ1ZQorRkFJTCB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgc2hv
dWxkIGJlIHRydWUgKG9mIHR5cGUgc3RyaW5nKS4gV2FzIG51bGwgKG9mIHR5cGUgb2JqZWN0KS4K
K1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgZmFsc2UKK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0
ZSgnc3BlbGxjaGVjaycpIGlzICdmYWxzZScKK1BBU1MgdGFyZ2V0LnNwZWxsY2hlY2sgaXMgdHJ1
ZQorUEFTUyB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzcGVsbGNoZWNrJykgaXMgJ3RydWUnCitQQVNT
IHRhcmdldC5zcGVsbGNoZWNrIGlzIHRydWUKK1BBU1MgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3Bl
bGxjaGVjaycpIGlzICdUUlVFJworUEFTUyB0YXJnZXQuc3BlbGxjaGVjayBpcyB0cnVlCitQQVNT
IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3NwZWxsY2hlY2snKSBpcyAnSU5WQUxJRCcKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MRWxlbWVudC9zcGVsbGNoZWNrLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Rh
ZTc1OWNmMWI3YzE5NTQzOTk0OThmYzRmYTUxNGY3YzMxOWRlMAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbApAQCAtMCww
ICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
c2NyaXB0LXRlc3RzL3NwZWxsY2hlY2suanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3Rh
dGlvbnMudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlv
bnMudHh0CmluZGV4IGVjNjRhZGYwNGU2YjcxZGRlMWM3YTRlYjhjNjExZDg1Y2VhYjdjMWIuLmU5
ZTFmODE1NjdmNmU2ZDJkMTI5YTMwNDQ0NjhmYTdjYTY3NDc4ZDMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKQEAgLTY5MCw2
ICs2OTAsNyBAQCBCVUcyMzQ5NyBNQUMgOiBlZGl0aW5nL3NlbGVjdGlvbi91bnJlbmRlcmVkLTAw
Mi5odG1sID0gSU1BR0UKIEJVRzExNTc3IFdJTiBMSU5VWCA6IGVkaXRpbmcvc3BlbGxpbmcvaW5s
aW5lX3NwZWxsaW5nX21hcmtlcnMuaHRtbCA9IEZBSUwKIEJVRzExNTc3IFdJTiBMSU5VWCA6IGVk
aXRpbmcvc3BlbGxpbmcvc3BlbGxjaGVjay1hdHRyaWJ1dGUuaHRtbCA9IEZBSUwKIEJVRzExNTc3
IFdJTiBMSU5VWCA6IGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctbGluZWJyZWFrLmh0bWwgPSBG
QUlMCitCVUcxMTU3NyBXSU4gTElOVVggOiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWF0dHJp
YnV0ZS1jaGFuZ2UuaHRtbCAgPSBGQUlMCiAKIC8vIFRPRE8oZXJnKTogQXR0ZW1wdGVkIHRvIHJl
YmFzZWxpbmUgdGhlc2UgdGVzdHMgYXMgcGFydCBvZiB0aGUgYWJvdmUKIC8vIDQzMzQ2OjQzMzYx
IHJlYmFzZWxpbmcgZnJvbSBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC80MzM1NS4g
VHVybmVkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCmluZGV4IDYyYzI5NWNlMDcyZjMyYTk0OGZk
MzViOWNiZTM3ODkzMzEwOTczNDkuLjhmZDAyMGZmNDY2ODk1ODBhODUwZjBmNWNhZWY3ZjhjOTRi
ZWM5M2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCkBAIC05ODEsNiArOTgxLDcgQEAgZWRp
dGluZy9zcGVsbGluZy9zcGVsbGluZy1jb250ZW50ZWRpdGFibGUuaHRtbAogZWRpdGluZy9zcGVs
bGluZy9zcGVsbGluZy10ZXh0YXJlYS5odG1sCiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWJh
Y2tzcGFjZS1iZXR3ZWVuLWxpbmVzLmh0bWwKIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctbGlu
ZWJyZWFrLmh0bWwKK2VkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctYXR0cmlidXRlLWNoYW5nZS5o
dG1sCiBlZGl0aW5nL3N0eWxlLzUwNjU5MTAuaHRtbAogZWRpdGluZy9zdHlsZS9hcHBsZS1zdHls
ZS1lZGl0YWJsZS1taXguaHRtbAogZWRpdGluZy9zdHlsZS9ibG9jay1zdHlsZS0wMDEuaHRtbApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3F0L1NraXBwZWQKaW5kZXggNGFiMTliMWRlZmQyMGNlOGJjY2Y3MWY2YTY0NDUw
Yzg0MWFkMmRhMS4uZmU1YmQ0NjkwMWEwNzg5MWMyZTcxODIwODEzMWVmZWEzMjY5YTkxMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCkBAIC0yMjQ1LDYgKzIyNDUsOCBAQCBlZGl0aW5nL3NwZWxs
aW5nL3NwZWxsaW5nLXRleHRhcmVhLmh0bWwKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQ1NDM1CiBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWJhY2tzcGFjZS1i
ZXR3ZWVuLWxpbmVzLmh0bWwKIAorZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUt
Y2hhbmdlLmh0bWwKKwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAjCiAjIGZhaWxpbmcgZWRpdGlu
Zy9zdHlsZSB0ZXN0cwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAjCmRpZmYgLS1naXQgYS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGY2Y2FlMjA5NmRmOGFhZDJi
ZmJmNDU1ZjFkYTZjNjkyNjI2YWQzMTIuLjNiMTI1ZWViN2U2MzdmZjE4Y2JjNDA5NDBmOTk3NDY3
NmRkYTczM2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMTAtMjcgIE1PUklUQSBIYWppbWUgIDxtb3Jy
aXRhQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgV2ViS2l0IG5lZWRzIHRvIGV4cG9zZSBhbiBFbGVtZW50OjpzcGVsbGNoZWNrIGF0
dHJpYnV0ZSB0byBqYXZhc2NyaXB0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjU1MzYKKworICAgICAgICBQdWJsaXNoZWQgRWxlbWVudC5zcGVsbGNo
ZWNrIHByb3BlcnR5IG9uIElETCwgaW1wbGVtZW50ZWQgaXQuCisgICAgICAgIAorICAgICAgICBU
ZXN0czogZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1hdHRyaWJ1dGUtY2hhbmdlLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZG9tL0hUTUxFbGVtZW50L3NwZWxsY2hlY2suaHRtbAorCisgICAg
ICAgICogaHRtbC9IVE1MRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVu
dDo6c3BlbGxjaGVjayk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6c2V0U3BlbGxj
aGVjayk6CisgICAgICAgICogaHRtbC9IVE1MRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRN
TEVsZW1lbnQuaWRsOgorCiAyMDEwLTEwLTI3ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmNwcCBiL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAKaW5k
ZXggMTQ4M2ZiY2ZhYmVmZDUyYWFlYTQxM2NhYjA2ZjY2YTU4YmQxMDlmMi4uYmM0YmYwNzkwZWFl
YTExNzdhNTA0YzVmZGM4YTkzOTZlMGEyMGE5ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCkBAIC03MjUs
NiArNzI1LDE3IEBAIHZvaWQgSFRNTEVsZW1lbnQ6OnNldERyYWdnYWJsZShib29sIHZhbHVlKQog
ICAgIHNldEF0dHJpYnV0ZShkcmFnZ2FibGVBdHRyLCB2YWx1ZSA/ICJ0cnVlIiA6ICJmYWxzZSIp
OwogfQogCitib29sIEhUTUxFbGVtZW50OjpzcGVsbGNoZWNrKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gaXNTcGVsbENoZWNraW5nRW5hYmxlZCgpOworfQorCit2b2lkIEhUTUxFbGVtZW50OjpzZXRT
cGVsbGNoZWNrKGJvb2wgZW5hYmxlKQoreworICAgIHNldEF0dHJpYnV0ZShzcGVsbGNoZWNrQXR0
ciwgZW5hYmxlID8gInRydWUiIDogImZhbHNlIik7Cit9CisKKwogdm9pZCBIVE1MRWxlbWVudDo6
Y2xpY2soKQogewogICAgIGRpc3BhdGNoU2ltdWxhdGVkQ2xpY2soMCwgZmFsc2UsIGZhbHNlKTsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oIGIvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmgKaW5kZXggNTJlOWVjZmU5ZWY3OGZiNzI3NDEzOWIwMzEyNWE1NDg1ZGZmNmIw
Zi4uMTY2MGUyYTZkNGJkMjdlNGU4MTA5YzVhN2VhYzVmMzA3YzkyNWYyZSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50
LmgKQEAgLTY2LDYgKzY2LDkgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBkcmFnZ2FibGUo
KSBjb25zdDsKICAgICB2b2lkIHNldERyYWdnYWJsZShib29sKTsKIAorICAgIGJvb2wgc3BlbGxj
aGVjaygpIGNvbnN0OworICAgIHZvaWQgc2V0U3BlbGxjaGVjayhib29sKTsKKwogICAgIHZvaWQg
Y2xpY2soKTsKIAogICAgIHZpcnR1YWwgdm9pZCBhY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kVG9B
bnlFbGVtZW50KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwgYi9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCmluZGV4IGIxMjdjNTE3Mjc2NWIxOGM4MTgwMWJk
Y2U2ZjVhNzBhMDJlM2RhOGYuLjc3NDIzZmNkMDYyNDA4YmE4YjY3NTEwZGQ0MjYwN2U1Y2VhODFm
MDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmlkbApAQCAtNjIsNiArNjIsOCBAQCBtb2R1bGUgaHRtbCB7CiAg
ICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0
cmluZyBjb250ZW50RWRpdGFibGU7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFu
IGlzQ29udGVudEVkaXRhYmxlOwogCisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBib29sZWFu
IHNwZWxsY2hlY2s7CisKICNpZiBkZWZpbmVkKExBTkdVQUdFX09CSkVDVElWRV9DKSAmJiBMQU5H
VUFHRV9PQkpFQ1RJVkVfQwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHRp
dGxlRGlzcGxheVN0cmluZzsKICNlbmRpZgo=
</data>
<flag name="review"
          id="62369"
          type_id="1"
          status="+"
          setter="tkent"
    />
          </attachment>
      

    </bug>

</bugzilla>