<?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>80499</bug_id>
          
          <creation_ts>2012-03-07 00:12:25 -0800</creation_ts>
          <short_desc>[Forms] label.form attribute doesn&apos;t work</short_desc>
          <delta_ts>2012-03-16 06:05:57 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://jsfiddle.net/gDcAG/3/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>yosin</reporter>
          <assigned_to>yosin</assigned_to>
          <cc>ap</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>572633</commentid>
    <comment_count>0</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-07 00:12:25 -0800</bug_when>
    <thetext>According to the standard[1], the &quot;label&quot; element has &quot;form&quot; attribute in IDL.
However, in sample URI(http://jsfiddle.net/gDcAG/3/), JS expression label1.form returns null instead of HTMLFormElement object,
even if HTMLLabelElement.idl[2] has &quot;form&quot; attribute.

&quot;form&quot; attribute is implemented in HTMLElement.h[3] as virtualForm/findFormAncestor in HTMLElement.cpp[4].
In this implementation, &quot;label&quot; elements outside &quot;form&quot; elements don&apos;t work as expected.

== References ==
[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#the-label-element
[2] http://trac.webkit.org/browser/trunk/Source/WebCore/html/HTMLLabelElement.idl
[3] http://trac.webkit.org/browser/trunk/Source/WebCore/html/HTMLElement.h
[4] http://trac.webkit.org/browser/trunk/Source/WebCore/html/HTMLElement.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578213</commentid>
    <comment_count>1</comment_count>
      <attachid>131799</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-14 00:35:32 -0700</bug_when>
    <thetext>Created attachment 131799
Patch 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578231</commentid>
    <comment_count>2</comment_count>
      <attachid>131799</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-14 01:18:19 -0700</bug_when>
    <thetext>Comment on attachment 131799
Patch 1

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

&gt; Source/WebCore/html/HTMLLabelElement.cpp:88
&gt; +{

The code is very similar to FormAssociated::insertedIntoTree() and FormAssociated::resetFormOwner(). Please share the code.

&gt; LayoutTests/fast/forms/form-attribute-expected.txt:NaN
&gt;  PASS document.getElementsByTagName(&quot;button&quot;)[0].form is owner

Please remove FIXME in this file.

&gt; LayoutTests/fast/forms/label/label-form-attribute.html:1
&gt; +&lt;DOCTYPE HTML PUBLIC &quot;-//IETF//DTD HTML//EN&quot;&gt;

As you know, we already have some tests for &apos;form&apos; attribute.
I recommend add test cases for &apos;label&apos; to form-attribute.html and form-attribute-nonexistence-form-id.html, and remove this file.

&gt; LayoutTests/fast/forms/label/label-form-attribute.html:12
&gt; +var html = &apos;&lt;dvi id=outer&gt;&apos;;

typo: &lt;dvi&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578285</commentid>
    <comment_count>3</comment_count>
      <attachid>131817</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-14 03:11:35 -0700</bug_when>
    <thetext>Created attachment 131817
Patch 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579967</commentid>
    <comment_count>4</comment_count>
      <attachid>131817</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-15 17:49:16 -0700</bug_when>
    <thetext>Comment on attachment 131817
Patch 2

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

Please rebase the patch.  http://trac.webkit.org/changeset/110918 conflicts with this.

&gt; Source/WebCore/html/FormAssociatedElement.cpp:100
&gt; +    HTMLElement* element = toHTMLElement(this);
&gt; +    setForm(findAssociatedForm(element, m_form));

The variable &quot;element&quot; is not needed.  setForm(findAssociatedForm(toHTMLElement(this), m_form));

&gt; Source/WebCore/html/FormAssociatedElement.cpp:155
&gt; +    setForm(findAssociatedForm(element, m_form));

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580086</commentid>
    <comment_count>5</comment_count>
      <attachid>132187</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-15 20:57:25 -0700</bug_when>
    <thetext>Created attachment 132187
Patch 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580090</commentid>
    <comment_count>6</comment_count>
      <attachid>132187</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-15 21:00:52 -0700</bug_when>
    <thetext>Comment on attachment 132187
Patch 3

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

&gt; Source/WebCore/html/HTMLLabelElement.cpp:33
&gt; +#include &quot;HTMLFormControlElement.h&quot;
&gt; +#include &quot;HTMLFormElement.h&quot;

Do we need to include HTMLFormControlElement.h and HTMLFormElement.h?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580181</commentid>
    <comment_count>7</comment_count>
      <attachid>132210</attachid>
    <who name="">yosin</who>
    <bug_when>2012-03-15 23:23:55 -0700</bug_when>
    <thetext>Created attachment 132210
Patch 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580182</commentid>
    <comment_count>8</comment_count>
    <who name="">yosin</who>
    <bug_when>2012-03-15 23:24:35 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 132187 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=132187&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/HTMLLabelElement.cpp:33
&gt; &gt; +#include &quot;HTMLFormControlElement.h&quot;
&gt; &gt; +#include &quot;HTMLFormElement.h&quot;
&gt; 
&gt; Do we need to include HTMLFormControlElement.h and HTMLFormElement.h?

Removed. Thanks for catching this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580196</commentid>
    <comment_count>9</comment_count>
      <attachid>132210</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-03-15 23:46:48 -0700</bug_when>
    <thetext>Comment on attachment 132210
Patch 4

ok</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580437</commentid>
    <comment_count>10</comment_count>
      <attachid>132210</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-16 06:05:52 -0700</bug_when>
    <thetext>Comment on attachment 132210
Patch 4

Clearing flags on attachment: 132210

Committed r110996: &lt;http://trac.webkit.org/changeset/110996&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580438</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-16 06:05:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131799</attachid>
            <date>2012-03-14 00:35:32 -0700</date>
            <delta_ts>2012-03-14 03:11:30 -0700</delta_ts>
            <desc>Patch 1</desc>
            <filename>bug-80499-20120314163530.patch</filename>
            <type>text/plain</type>
            <size>6873</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwNjYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDg1ZGJiZjExNWZhNzA1
OGUyNjc3N2VkMzZhMDJhZWI5ZTViY2EyYS4uMTgyODZhMTc3OGQ0MWEyZGRlODAwOGFmMmYwODIx
ZjViOGNmMzI2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTAzLTE0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBsYWJl
bC5mb3JtIGF0dHJpYnV0ZSBkb2Vzbid0IHdvcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjaGFuZ2VzIGltcGxlbWVudGF0aW9uIG9m
IGxhYmVsLmZvcm0gb2YgSURMIGF0dHJpYnV0ZSB0bworICAgICAgICBjb21wdXRlIGl0IHRvIHRo
ZSBmb3JtIGVsZW1lbnQgc3BlY2lmaWVkIGJ5IHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUKKyAg
ICAgICAgb3IgZm9ybSBhbmNlc3RvciB3aGVuIHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUgaXNu
J3QgaW4gSFRNTC4KKworICAgICAgICBUZXN0OiBmYXN0L2Zvcm1zL2xhYmVsL2xhYmVsLWZvcm0t
YXR0cmlidXRlLmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb3JtKTogQWRkZWQuCisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuaDoKKyAgICAgICAg
KEhUTUxMYWJlbEVsZW1lbnQpOgorCiAyMDEyLTAzLTEzICBMdWtlIE1hY3BoZXJzb24gICA8bWFj
cGhlcnNvbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTW92ZSBvcGFjaXR5IGNsYW1waW5nIGlu
dG8gUmVuZGVyU3R5bGUgc2V0dGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVu
dC5jcHAKaW5kZXggYjQ3NDhkNjI2NTUwYjRlYmJlNDBhZDRhOWZkNDhlOTMwYmY4Njc4My4uNTJm
NjM1YjkxMTcxYjg1OTA5ZGZkNmM1NWVkMDBlYjVlNWIzZDg4NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC04NCw2ICs4NCwxOSBAQCBIVE1MRm9ybUNvbnRy
b2xFbGVtZW50KiBIVE1MTGFiZWxFbGVtZW50Ojpjb250cm9sKCkKICAgICByZXR1cm4gbm9kZUFz
TGFiZWxhYmxlRm9ybUNvbnRyb2wodHJlZVNjb3BlKCktPmdldEVsZW1lbnRCeUlkKGNvbnRyb2xJ
ZCkpOwogfQogCitIVE1MRm9ybUVsZW1lbnQqIEhUTUxMYWJlbEVsZW1lbnQ6OmZvcm0oKSBjb25z
dAoreworICAgIGNvbnN0IEF0b21pY1N0cmluZyYgZm9ybUlkID0gZ2V0QXR0cmlidXRlKGZvcm1B
dHRyKTsKKyAgICBpZiAoZm9ybUlkLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gSFRNTEVsZW1l
bnQ6OmZvcm0oKTsKKworICAgIGlmICghZG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisK
KyAgICBFbGVtZW50KiBlbGVtZW50ID0gZG9jdW1lbnQoKS0+Z2V0RWxlbWVudEJ5SWQoZm9ybUlk
KTsKKyAgICByZXR1cm4gZWxlbWVudCAmJiBlbGVtZW50LT5oYXNUYWdOYW1lKGZvcm1UYWcpID8g
c3RhdGljX2Nhc3Q8SFRNTEZvcm1FbGVtZW50Kj4oZWxlbWVudCkgOiAwOworfQorCiB2b2lkIEhU
TUxMYWJlbEVsZW1lbnQ6OnNldEFjdGl2ZShib29sIGRvd24sIGJvb2wgcGF1c2UpCiB7CiAgICAg
aWYgKGRvd24gPT0gYWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5o
CmluZGV4IDUyNjM3OWNkMDM5NTdiMzY4ZWQ4ZDZjNTg2ZGZmYWMyNDI1ZDVkNjQuLmRhOTI3NzE5
ZDg4ZDEyOTUwZDk5YjEyNzFjYjk4NTgxMDZkNDEwMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExhYmVsRWxlbWVudC5oCkBAIC0zNCw2ICszNCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFz
c1JlZlB0cjxIVE1MTGFiZWxFbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERv
Y3VtZW50Kik7CiAKICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50KiBjb250cm9sKCk7CisgICAg
SFRNTEZvcm1FbGVtZW50KiBmb3JtKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgSFRNTExhYmVs
RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZDliZjg0
Mzg0MmZlMzdiMDdkNGQ4MDdjMDExMjZkMTIzY2M3OWYwLi5lYWQxYjBjOGU1YmRlNzQxOTBlMzIz
YzUwOGQ3ODdiZGVmOTMxNWRiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysr
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMDMtMTQgIFlv
c2lmdW1pIElub3VlICA8eW9zaW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtGb3Jtc10gbGFi
ZWwuZm9ybSBhdHRyaWJ1dGUgZG9lc24ndCB3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDQ5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1leHBlY3Rl
ZC50eHQ6IENoYW5nZWQgZm9yIHJlc3VsdCBvZiB0aGUgImxhYmVsIiBlbGVtZW50LgorICAgICAg
ICAqIGZhc3QvZm9ybXMvbGFiZWwvbGFiZWwtZm9ybS1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2xhYmVsL2xhYmVsLWZvcm0tYXR0cmlidXRlLmh0
bWw6IEFkZGVkLgorCiAyMDEyLTAzLTEzICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgRlJFRUVFRURPT00hISEgTGFzdCBzZXQgb2YgYnVsayBDaHJvbWl1bS1MaW9u
IHJlYmFzZWxpbmVzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0
dHJpYnV0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmli
dXRlLWV4cGVjdGVkLnR4dAppbmRleCAzN2JjOTg5YWI3MjliM2NhMzYyZjBkYmRmNDViNTAxZDJi
ZmEzNzI0Li4yMTdlZDIzNzVkYjBjMDZiZGZiYmE5OGZlODhiZjhmYjM0ZDgyY2VkIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dApA
QCAtOSw3ICs5LDcgQEAgUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYnV0dG9u
IilbMF0uZm9ybSBpcyBvd25lcgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgi
ZmllbGRzZXQiKVswXS5mb3JtIGlzIG93bmVyCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRzQnlU
YWdOYW1lKCJpbnB1dCIpWzBdLmZvcm0gaXMgb3duZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoImtleWdlbiIpWzBdLmZvcm0gaXMgb3duZXIKLUZBSUwgZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoImxhYmVsIilbMF0uZm9ybSBzaG91bGQgYmUgW29iamVjdCBIVE1M
Rm9ybUVsZW1lbnRdLiBXYXMgbnVsbC4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05h
bWUoImxhYmVsIilbMF0uZm9ybSBpcyBvd25lcgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgibWV0ZXIiKVswXS5mb3JtIGlzIG93bmVyCiBQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRzQnlUYWdOYW1lKCJvYmplY3QiKVswXS5mb3JtIGlzIG93bmVyCiBQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRzQnlUYWdOYW1lKCJvdXRwdXQiKVswXS5mb3JtIGlzIG93bmVyCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2xhYmVsL2xhYmVsLWZvcm0tYXR0cmlidXRlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvbGFiZWwvbGFiZWwtZm9ybS1hdHRyaWJ1
dGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMyOGFkYzMxYjdlOTI1MzZkMDdmOGQ4MTA2NjMz
YzUzMTcyMjJiMDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2xh
YmVsL2xhYmVsLWZvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIzIEBACitU
ZXN0ICJmb3JtIiBhdHRyaWJ1dGUgb2YgdGhlICJsYWJlbCIgZWxlbWVudC4KKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK0J5IGZvcm0gYXR0cmlidXRlCitQQVNTIGxhYmVsMS5mb3Jt
LmlkIGlzICJmb3JtMSIKK0J5IGRvbSB0cmVlCitQQVNTIGxhYmVsMi5mb3JtLmlkIGlzICJmb3Jt
MiIKK0luc2VydCBsYWJlbCBlbGVtZW50CitQQVNTIGxhYmVsMy5mb3JtLmlkIGlzICJmb3JtMyIK
K1JlbW92ZSBsYWJlbCBlbGVtZW50CitQQVNTIGxhYmVsMy5mb3JtIGlzIG51bGwKK3NldEF0cmli
dXRlCitQQVNTIGxhYmVsMy5mb3JtLmlkIGlzICJmb3JtMiIKK3JlbW92ZUF0dHJpYnV0ZQorUEFT
UyBsYWJlbDMuZm9ybSBpcyBudWxsCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKK0xhYmVsMQorTGFiZWwyCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZm9ybXMvbGFiZWwvbGFiZWwtZm9ybS1hdHRyaWJ1dGUuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvZm9ybXMvbGFiZWwvbGFiZWwtZm9ybS1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
YzVjYWEwMzUxZDdjNGZjMjUyMjc4YjEyNzk2ZTFmNDFmY2E5NWI3Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9sYWJlbC9sYWJlbC1mb3JtLWF0dHJpYnV0ZS5odG1s
CkBAIC0wLDAgKzEsNTMgQEAKKzxET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRN
TC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0Pgor
ZGVzY3JpcHRpb24oJ1Rlc3QgImZvcm0iIGF0dHJpYnV0ZSBvZiB0aGUgImxhYmVsIiBlbGVtZW50
LicpOworCit2YXIgaHRtbCA9ICc8ZHZpIGlkPW91dGVyPic7CitodG1sICs9ICc8Zm9ybSBpZD1m
b3JtMT48L2Zvcm0+PGxhYmVsIGlkPWxhYmVsMSBmb3JtPWZvcm0xPkxhYmVsMTwvbGFiZWw+JzsK
K2h0bWwgKz0gJzxmb3JtIGlkPWZvcm0yPjxsYWJlbCBpZD1sYWJlbDI+TGFiZWwyPC9sYWJlbD48
L2Zvcm0+JzsKK2h0bWwgKz0gJzxmb3JtIGlkPWZvcm0zPjwvZm9ybT4nOworaHRtbCArPSAnPC9k
aXY+JzsKK3ZhciBwYXJlbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3BhcmVu
dC5pbm5lckhUTUwgPSBodG1sOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJlbnQpOwor
Cit2YXIgb3V0ZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3V0ZXInKTsKKworZGVidWco
IkJ5IGZvcm0gYXR0cmlidXRlIik7Cit2YXIgbGFiZWwxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ2xhYmVsMScpOworc2hvdWxkQmUoJ2xhYmVsMS5mb3JtLmlkJywgJyJmb3JtMSInKTsKKwor
ZGVidWcoIkJ5IGRvbSB0cmVlIik7Cit2YXIgbGFiZWwyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ2xhYmVsMicpOworc2hvdWxkQmUoJ2xhYmVsMi5mb3JtLmlkJywgJyJmb3JtMiInKTsKKwor
ZGVidWcoIkluc2VydCBsYWJlbCBlbGVtZW50Iik7Cit2YXIgZm9ybTMgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnZm9ybTMnKTsKK3ZhciBsYWJlbDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdsYWJlbCcpOworbGFiZWwzLmlkID0gJ2xhYmVsMyc7Citmb3JtMy5hcHBlbmRDaGlsZChsYWJl
bDMpOworc2hvdWxkQmUoJ2xhYmVsMy5mb3JtLmlkJywgJyJmb3JtMyInKTsKKworZGVidWcoIlJl
bW92ZSBsYWJlbCBlbGVtZW50Iik7Citmb3JtMy5yZW1vdmVDaGlsZChsYWJlbDMpOworc2hvdWxk
QmVOdWxsKCdsYWJlbDMuZm9ybScpOworCitkZWJ1Zygic2V0QXRyaWJ1dGUiKTsKK2xhYmVsMy5z
ZXRBdHRyaWJ1dGUoJ2Zvcm0nLCAnZm9ybTInKTsKK3Nob3VsZEJlKCdsYWJlbDMuZm9ybS5pZCcs
ICciZm9ybTIiJyk7CisKK2RlYnVnKCJyZW1vdmVBdHRyaWJ1dGUiKTsKK2xhYmVsMy5yZW1vdmVB
dHRyaWJ1dGUoJ2Zvcm0nKTsKK3Nob3VsZEJlTnVsbCgnbGFiZWwzLmZvcm0nKTsKKworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131817</attachid>
            <date>2012-03-14 03:11:35 -0700</date>
            <delta_ts>2012-03-15 20:57:17 -0700</delta_ts>
            <desc>Patch 2</desc>
            <filename>bug-80499-20120314191134.patch</filename>
            <type>text/plain</type>
            <size>21000</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwNjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzM2YmJiYWQxZmM1MDJk
YjQ5M2M5NDA1MjY0ODAwN2Y0YWViODc4Mi4uZjExMzY4NmFjYTBiODJjNzkwNjlmM2YwMDFjMzMy
NWU4MDk4YmMxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTAzLTE0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBsYWJl
bC5mb3JtIGF0dHJpYnV0ZSBkb2Vzbid0IHdvcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjaGFuZ2VzIGltcGxlbWVudGF0aW9uIG9m
IGxhYmVsLmZvcm0gb2YgSURMIGF0dHJpYnV0ZSB0bworICAgICAgICBjb21wdXRlIGl0IHRvIHRo
ZSBmb3JtIGVsZW1lbnQgc3BlY2lmaWVkIGJ5IHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUKKyAg
ICAgICAgb3IgZm9ybSBhbmNlc3RvciB3aGVuIHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUgaXNu
J3QgaW4gSFRNTC4KKworICAgICAgICBUaGlzIHBhdGNoIGludHJvZHVjZXMgbmV3IGZ1bmN0aW9u
IEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3JtCisgICAgICAgIGZvciBz
aGFyaW5nIGNvZGUgYW1vbmcgRm9ybUFzc29jaWF0ZUVsZW1lbnQ6Omluc2VydGVkSW50b1RyZWUs
IHJlc2V0Rm9ybU93bmVyCisgICAgICAgIGFuZCBIVE1MTGFiZWxFbGVtZW50Ojpmb3JtLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICog
aHRtbC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFz
c29jaWF0ZWRFbGVtZW50OjpmaW5kQXNzb2NpYXRlZEZvcm0pOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFzc29jaWF0ZWRFbGVtZW50OjppbnNlcnRl
ZEludG9UcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6cmVz
ZXRGb3JtT3duZXIpOgorICAgICAgICAqIGh0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50Lmg6Cisg
ICAgICAgIChGb3JtQXNzb2NpYXRlZEVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVs
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb3JtKTog
QWRkZWQuCisKIDIwMTItMDMtMTQgIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxp
YS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gQnVpbGQgZml4IGZvciBFRkwgYWZ0ZXIgcjEx
MDY2OS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmNwcApp
bmRleCBkMmYzZjRhYmM5MTdiODQ2NmY5OWNmMjVlMmYwZGI0MTY5ZjI5Njg1Li5mOWM4NTM1MjRh
ZjE5NGE0YzYyNmY5NmM0Y2ZkZGQ1ZGZlNGNlNjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuY3BwCkBAIC03NCwyNSArNzQsMzAgQEAgdm9pZCBGb3Jt
QXNzb2NpYXRlZEVsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKQogICAgICAgICBlbGVtZW50
LT5kb2N1bWVudCgpLT51bnJlZ2lzdGVyRm9ybUVsZW1lbnRXaXRoRm9ybUF0dHJpYnV0ZSh0aGlz
KTsKIH0KIAotdm9pZCBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6Omluc2VydGVkSW50b1RyZWUoKQor
SFRNTEZvcm1FbGVtZW50KiBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6OmZpbmRBc3NvY2lhdGVkRm9y
bShjb25zdCBIVE1MRWxlbWVudCogZWxlbWVudCwgSFRNTEZvcm1FbGVtZW50KiBjdXJyZW50QXNz
b2NpYXRlZEZvcm0pCiB7Ci0gICAgSFRNTEVsZW1lbnQqIGVsZW1lbnQgPSB0b0hUTUxFbGVtZW50
KHRoaXMpOwotICAgIGNvbnN0IEF0b21pY1N0cmluZyYgZm9ybUlkID0gZWxlbWVudC0+ZmFzdEdl
dEF0dHJpYnV0ZShmb3JtQXR0cik7Ci0gICAgaWYgKCFmb3JtSWQuaXNOdWxsKCkpIHsKKyAgICBj
b25zdCBBdG9taWNTdHJpbmcmIGZvcm1JZChlbGVtZW50LT5mYXN0R2V0QXR0cmlidXRlKGZvcm1B
dHRyKSk7CisgICAgaWYgKCFmb3JtSWQuaXNOdWxsKCkgJiYgZWxlbWVudC0+aW5Eb2N1bWVudCgp
KSB7CisgICAgICAgIC8vIFRoZSBIVE1MNSBzcGVjIHNheXMgdGhhdCB0aGUgZWxlbWVudCBzaG91
bGQgYmUgYXNzb2NpYXRlZCB3aXRoCisgICAgICAgIC8vIHRoZSBmaXJzdCBlbGVtZW50IGluIHRo
ZSBkb2N1bWVudCB0byBoYXZlIGFuIElEIHRoYXQgZXF1YWwgdG8KKyAgICAgICAgLy8gdGhlIHZh
bHVlIG9mIGZvcm0gYXR0cmlidXRlLCBzbyB3ZSBwdXQgdGhlIHJlc3VsdCBvZgorICAgICAgICAv
LyB0cmVlU2NvcGUoKS0+Z2V0RWxlbWVudEJ5SWQoKSBvdmVyIHRoZSBnaXZlbiBlbGVtZW50Lgog
ICAgICAgICBIVE1MRm9ybUVsZW1lbnQqIG5ld0Zvcm0gPSAwOwogICAgICAgICBFbGVtZW50KiBu
ZXdGb3JtQ2FuZGlkYXRlID0gZWxlbWVudC0+dHJlZVNjb3BlKCktPmdldEVsZW1lbnRCeUlkKGZv
cm1JZCk7CiAgICAgICAgIGlmIChuZXdGb3JtQ2FuZGlkYXRlICYmIG5ld0Zvcm1DYW5kaWRhdGUt
Pmhhc1RhZ05hbWUoZm9ybVRhZykpCiAgICAgICAgICAgICBuZXdGb3JtID0gc3RhdGljX2Nhc3Q8
SFRNTEZvcm1FbGVtZW50Kj4obmV3Rm9ybUNhbmRpZGF0ZSk7Ci0gICAgICAgIHNldEZvcm0obmV3
Rm9ybSk7Ci0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIG5ld0Zvcm07CiAgICAgfQot
ICAgIGlmICghbV9mb3JtKSB7Ci0gICAgICAgIC8vIFRoaXMgaGFuZGxlcyB0aGUgY2FzZSBvZiBh
IG5ldyBmb3JtIGVsZW1lbnQgYmVpbmcgY3JlYXRlZCBieQotICAgICAgICAvLyBKYXZhU2NyaXB0
IGFuZCBpbnNlcnRlZCBpbnNpZGUgYSBmb3JtLiAgSW4gdGhlIGNhc2Ugb2YgdGhlIHBhcnNlcgot
ICAgICAgICAvLyBzZXR0aW5nIGEgZm9ybSwgd2Ugd2lsbCBhbHJlYWR5IGhhdmUgYSBub24tbnVs
bCB2YWx1ZSBmb3IgbV9mb3JtLAotICAgICAgICAvLyBhbmQgc28gd2UgZG9uJ3QgbmVlZCB0byBk
byBhbnl0aGluZy4KLSAgICAgICAgc2V0Rm9ybShlbGVtZW50LT5maW5kRm9ybUFuY2VzdG9yKCkp
OworICAgIGlmICghY3VycmVudEFzc29jaWF0ZWRGb3JtKSB7CisgICAgICAgIHJldHVybiBlbGVt
ZW50LT5maW5kRm9ybUFuY2VzdG9yKCk7CiAgICAgfQorICAgIHJldHVybiBjdXJyZW50QXNzb2Np
YXRlZEZvcm07Cit9CisKK3ZvaWQgRm9ybUFzc29jaWF0ZWRFbGVtZW50OjppbnNlcnRlZEludG9U
cmVlKCkKK3sKKyAgICBIVE1MRWxlbWVudCogZWxlbWVudCA9IHRvSFRNTEVsZW1lbnQodGhpcyk7
CisgICAgc2V0Rm9ybShmaW5kQXNzb2NpYXRlZEZvcm0oZWxlbWVudCwgbV9mb3JtKSk7CiB9CiAK
IHN0YXRpYyBpbmxpbmUgTm9kZSogZmluZFJvb3QoTm9kZSogbikKQEAgLTE0NywyMyArMTUyLDcg
QEAgdm9pZCBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6OmZvcm1XaWxsQmVEZXN0cm95ZWQoKQogdm9p
ZCBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6OnJlc2V0Rm9ybU93bmVyKCkKIHsKICAgICBIVE1MRWxl
bWVudCogZWxlbWVudCA9IHRvSFRNTEVsZW1lbnQodGhpcyk7Ci0gICAgY29uc3QgQXRvbWljU3Ry
aW5nJiBmb3JtSWQoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShmb3JtQXR0cikpOwotICAgIGlm
IChtX2Zvcm0pIHsKLSAgICAgICAgaWYgKGZvcm1JZC5pc051bGwoKSkKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICB9Ci0gICAgSFRNTEZvcm1FbGVtZW50KiBuZXdGb3JtID0gMDsKLSAgICBpZiAo
IWZvcm1JZC5pc051bGwoKSAmJiBlbGVtZW50LT5pbkRvY3VtZW50KCkpIHsKLSAgICAgICAgLy8g
VGhlIEhUTUw1IHNwZWMgc2F5cyB0aGF0IHRoZSBlbGVtZW50IHNob3VsZCBiZSBhc3NvY2lhdGVk
IHdpdGgKLSAgICAgICAgLy8gdGhlIGZpcnN0IGVsZW1lbnQgaW4gdGhlIGRvY3VtZW50IHRvIGhh
dmUgYW4gSUQgdGhhdCBlcXVhbCB0bwotICAgICAgICAvLyB0aGUgdmFsdWUgb2YgZm9ybSBhdHRy
aWJ1dGUsIHNvIHdlIHB1dCB0aGUgcmVzdWx0IG9mCi0gICAgICAgIC8vIHRyZWVTY29wZSgpLT5n
ZXRFbGVtZW50QnlJZCgpIG92ZXIgdGhlIGdpdmVuIGVsZW1lbnQuCi0gICAgICAgIEVsZW1lbnQq
IGZpcnN0RWxlbWVudCA9IGVsZW1lbnQtPnRyZWVTY29wZSgpLT5nZXRFbGVtZW50QnlJZChmb3Jt
SWQpOwotICAgICAgICBpZiAoZmlyc3RFbGVtZW50ICYmIGZpcnN0RWxlbWVudC0+aGFzVGFnTmFt
ZShmb3JtVGFnKSkKLSAgICAgICAgICAgIG5ld0Zvcm0gPSBzdGF0aWNfY2FzdDxIVE1MRm9ybUVs
ZW1lbnQqPihmaXJzdEVsZW1lbnQpOwotICAgIH0gZWxzZQotICAgICAgICBuZXdGb3JtID0gZWxl
bWVudC0+ZmluZEZvcm1BbmNlc3RvcigpOwotICAgIHNldEZvcm0obmV3Rm9ybSk7CisgICAgc2V0
Rm9ybShmaW5kQXNzb2NpYXRlZEZvcm0oZWxlbWVudCwgbV9mb3JtKSk7CiB9CiAKIHZvaWQgRm9y
bUFzc29jaWF0ZWRFbGVtZW50Ojpmb3JtQXR0cmlidXRlQ2hhbmdlZCgpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuaAppbmRleCBiMzM2ZjM3M2MxNjYyMjBmZWFm
MGZhZDY0MjVhNDEzNmQ2OTY4ZmFiLi5iMmEzNWU5YzhhZTlmY2ZiZGM0ZDM2MzYwYWYzOTk2NTcw
MjMyMWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmgK
QEAgLTQxLDYgKzQxLDcgQEAgcHVibGljOgogICAgIHZvaWQgcmVmKCkgeyByZWZGb3JtQXNzb2Np
YXRlZEVsZW1lbnQoKTsgfQogICAgIHZvaWQgZGVyZWYoKSB7IGRlcmVmRm9ybUFzc29jaWF0ZWRF
bGVtZW50KCk7IH0KIAorICAgIHN0YXRpYyBIVE1MRm9ybUVsZW1lbnQqIGZpbmRBc3NvY2lhdGVk
Rm9ybShjb25zdCBIVE1MRWxlbWVudCosIEhUTUxGb3JtRWxlbWVudCopOwogICAgIEhUTUxGb3Jt
RWxlbWVudCogZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9ybTsgfQogICAgIFZhbGlkaXR5U3Rh
dGUqIHZhbGlkaXR5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExh
YmVsRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3Bw
CmluZGV4IGI0NzQ4ZDYyNjU1MGI0ZWJiZTQwYWQ0YTlmZDQ4ZTkzMGJmODY3ODMuLmZjNzA2NzMy
Mjc4MDQzMmI5ZTg0OTllYTg1MjE2NzcxYTBmZjAyN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50
LmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCisjaW5jbHVk
ZSAiRm9ybUFzc29jaWF0ZWRFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZvcm1Db250cm9sRWxl
bWVudC5oIgogI2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgpAQCAtODQsNiArODUsMTEgQEAgSFRNTEZvcm1Db250cm9sRWxlbWVudCogSFRNTExhYmVs
RWxlbWVudDo6Y29udHJvbCgpCiAgICAgcmV0dXJuIG5vZGVBc0xhYmVsYWJsZUZvcm1Db250cm9s
KHRyZWVTY29wZSgpLT5nZXRFbGVtZW50QnlJZChjb250cm9sSWQpKTsKIH0KIAorSFRNTEZvcm1F
bGVtZW50KiBIVE1MTGFiZWxFbGVtZW50Ojpmb3JtKCkgY29uc3QKK3sKKyAgICByZXR1cm4gRm9y
bUFzc29jaWF0ZWRFbGVtZW50OjpmaW5kQXNzb2NpYXRlZEZvcm0odGhpcywgMCk7Cit9CisKIHZv
aWQgSFRNTExhYmVsRWxlbWVudDo6c2V0QWN0aXZlKGJvb2wgZG93biwgYm9vbCBwYXVzZSkKIHsK
ICAgICBpZiAoZG93biA9PSBhY3RpdmUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExhYmVsRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVt
ZW50LmgKaW5kZXggNTI2Mzc5Y2QwMzk1N2IzNjhlZDhkNmM1ODZkZmZhYzI0MjVkNWQ2NC4uZGE5
Mjc3MTlkODhkMTI5NTBkOTliMTI3MWNiOTg1ODEwNmQ0MTAwNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTGFiZWxFbGVtZW50LmgKQEAgLTM0LDYgKzM0LDcgQEAgcHVibGljOgogICAgIHN0YXRp
YyBQYXNzUmVmUHRyPEhUTUxMYWJlbEVsZW1lbnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1l
JiwgRG9jdW1lbnQqKTsKIAogICAgIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQqIGNvbnRyb2woKTsK
KyAgICBIVE1MRm9ybUVsZW1lbnQqIGZvcm0oKSBjb25zdDsKIAogcHJpdmF0ZToKICAgICBIVE1M
TGFiZWxFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCopOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDEw
NWIwMzlmMzliYWQ3ZTUyZmM3OGRhNmY3N2NmZGY1MjZmMDcxZWUuLjg1NWQ5M2FhYTJlMjNlZmU4
YWRhNmI1Njk3Y2JhNzI1NGUwNDU2NzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wMy0x
NCAgWW9zaGlmdW1pIElub3VlICA8eW9zaW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtGb3Jt
c10gbGFiZWwuZm9ybSBhdHRyaWJ1dGUgZG9lc24ndCB3b3JrCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDQ5OQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggdXBkYXRlcyB0ZXN0IGNhc2Vz
IGFuZCBleHBlY3RhdGlvbiBmb3IgZnVuY3Rpb25hbCAKKyAgICAgICAgImZvcm0iIGF0dHJpYnV0
ZSBvZiB0aGUgImxhYmVsIiBlbGVtZW50LgorCisgICAgICAgICogZmFzdC9mb3Jtcy9mb3JtLWF0
dHJpYnV0ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0
ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9mb3Jt
cy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC5odG1sOgorICAgICAgICAqIGZh
c3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUuaHRtbDoKKwogMjAxMi0wMy0xNCAgS2VudGFybyBIYXJh
ICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV0dXJuIG51bGwgd2hlbiBzaG91
bGRBbGxvd0FjY2Vzc1RvTm9kZSgpIGZhaWxzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvZm9ybS1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0CmluZGV4IDM3YmM5ODlhYjcyOWIzY2EzNjJm
MGRiZGY0NWI1MDFkMmJmYTM3MjQuLjViMGVlZmEwMWYxMjQ1NjU3Y2Q1ZjA5ZTZkMWYyNzRlODRk
NTVjNzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUt
ZXhwZWN0ZWQudHh0CkBAIC00LDEyICs0LDExIEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFCiAK
IAogLSBDaGVja3MgdGhlIGV4aXN0ZW5jZSBvZiB0aGUgZm9ybSBhdHRyaWJ1dGUgZm9yIGVhY2gg
Zm9ybS1hc3NvY2lhdGVkIGVsZW1lbnRzLgotRklYTUU6IDxsYWJlbD4gZG9lc24ndCBzdXBwb3J0
IHRoZSBmb3JtIGF0dHJpYnV0ZSBmb3Igbm93LgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgiYnV0dG9uIilbMF0uZm9ybSBpcyBvd25lcgogUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50c0J5VGFnTmFtZSgiZmllbGRzZXQiKVswXS5mb3JtIGlzIG93bmVyCiBQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpbnB1dCIpWzBdLmZvcm0gaXMgb3duZXIKIFBBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImtleWdlbiIpWzBdLmZvcm0gaXMgb3duZXIKLUZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxhYmVsIilbMF0uZm9ybSBzaG91bGQg
YmUgW29iamVjdCBIVE1MRm9ybUVsZW1lbnRdLiBXYXMgbnVsbC4KK1BBU1MgZG9jdW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoImxhYmVsIilbMF0uZm9ybSBpcyBvd25lcgogUEFTUyBkb2N1bWVu
dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibWV0ZXIiKVswXS5mb3JtIGlzIG93bmVyCiBQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJvYmplY3QiKVswXS5mb3JtIGlzIG93bmVyCiBQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJvdXRwdXQiKVswXS5mb3JtIGlzIG93
bmVyCkBAIC0xOSwyMSArMTgsMzAgQEAgUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgidGV4dGFyZWEiKVswXS5mb3JtIGlzIG93bmVyCiAKIC0gRW5zdXJlcyB0aGF0IHRoZSBmb3Jt
IGF0dHJpYnV0ZSBwb2ludHMgdGhlIGZvcm0gb3duZXIgZXZlbiBpZiB0aGUgZWxlbWVudCBpcyB3
aXRoaW4gYW5vdGhlciBmb3JtIGVsZW1lbnQuCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIG93
bmVyCitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIG93bmVyCiAKIC0gRW5zdXJlcyB0aGF0IHRo
ZSBmb3JtIGF0dHJpYnV0ZSBvZiBhbGwgZm9ybS1hc3NvY2lhdGVkIGVsZW1lbnQgd2l0aCBvciB3
aXRvdXQgZm9ybSBhdHRyaWJ1dGUgcG9pbnRzIHRoZSBmb3JtIG93bmVyLgogUEFTUyBpbnB1dEVs
ZW1lbnQxLmZvcm0gaXMgb3duZXIKIFBBU1MgaW5wdXRFbGVtZW50Mi5mb3JtIGlzIG93bmVyCiBQ
QVNTIGlucHV0RWxlbWVudDMuZm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQxLmZvcm0g
aXMgb3duZXIKK1BBU1MgbGFiZWxFbGVtZW50Mi5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxl
bWVudDMuZm9ybSBpcyBvd25lcgogCiAtIEVuc3VyZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUg
cG9pbnRzIHRoZSBmb3JtIG93bmVyIGV2ZW4gaWYgdGhlIGZvcm0gZWxlbWVudCBpcyBuZXN0ZWQg
YW5vdGhlciBmb3JtIGVsZW1lbnQuCiBOT1RFOiBJdCBzZWVtcyB0aGF0IG5lc3RpbmcgZm9ybSBl
bGVtZW50cyBpcyBub3QgYWxsb3dlZCBzbyB3ZSBlbnN1cmUgZWFjaCBmb3JtLWFzc29jaWF0ZWQg
ZWxlbWVudHMgYXNzb2NpYXRlIHdpdGggdGhlIG91dG1vc3QgZm9ybSBlbGVtZW50LgogUEFTUyBp
bnB1dEVsZW1lbnQxLmZvcm0gaXMgb3duZXIKIFBBU1MgaW5wdXRFbGVtZW50Mi5mb3JtIGlzIG93
bmVyCiBQQVNTIGlucHV0RWxlbWVudDMuZm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQx
LmZvcm0gaXMgb3duZXIKK1BBU1MgbGFiZWxFbGVtZW50Mi5mb3JtIGlzIG93bmVyCitQQVNTIGxh
YmVsRWxlbWVudDMuZm9ybSBpcyBvd25lcgogCiAtIEVuc3VyZXMgd2hldGhlciB0aGUgZm9ybSBv
d25lciBpcyBzZXQgY29ycmVjdGx5IHdoZW4gdGhlIHZhbHVlIG9mIGZvcm0gYXR0cmlidXRlIG9m
IGEgZm9ybS1hc3NvY2lhdGVkIGVsZW1lbnQgY2hhbmdlZC4KIFBBU1MgaW5wdXRFbGVtZW50LmZv
cm0gaXMgZm9ybTEKIFBBU1MgaW5wdXRFbGVtZW50LmZvcm0gaXMgZm9ybTIKK1BBU1MgbGFiZWxF
bGVtZW50LmZvcm0gaXMgZm9ybTEKK1BBU1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgZm9ybTIKIFBB
U1Mgb2JqZWN0RWxlbWVudC5mb3JtIGlzIGZvcm0xCiBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBp
cyBmb3JtMgogCkBAIC00MSw2ICs0OSw5IEBAIFBBU1Mgb2JqZWN0RWxlbWVudC5mb3JtIGlzIGZv
cm0yCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIG51bGwKIFBBU1MgaW5wdXRFbGVtZW50LmZv
cm0gaXMgb3duZXIKIFBBU1MgaW5wdXRFbGVtZW50LmZvcm0gaXMgbnVsbAorUEFTUyBsYWJlbEVs
ZW1lbnQuZm9ybSBpcyBudWxsCitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIG93bmVyCitQQVNT
IGxhYmVsRWxlbWVudC5mb3JtIGlzIG51bGwKIFBBU1Mgb2JqZWN0RWxlbWVudC5mb3JtIGlzIG51
bGwKIFBBU1Mgb2JqZWN0RWxlbWVudC5mb3JtIGlzIG93bmVyCiBQQVNTIG9iamVjdEVsZW1lbnQu
Zm9ybSBpcyBudWxsCkBAIC00OSw4ICs2MCwxMSBAQCBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBp
cyBudWxsCiBQQVNTIG93bmVyLm5hbWUgaXMgImZpcnN0T3duZXIiCiBQQVNTIG93bmVyLm5hbWUg
aXMgInNlY29uZE93bmVyIgogUEFTUyBpbnB1dEVsZW1lbnQuZm9ybSBpcyBvd25lcgorUEFTUyBs
YWJlbEVsZW1lbnQuZm9ybSBpcyBvd25lcgogUEFTUyBpbnB1dEVsZW1lbnQuZm9ybSBpcyBudWxs
CitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIG51bGwKIFBBU1MgaW5wdXRFbGVtZW50LmZvcm0g
aXMgb3duZXIKK1BBU1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgb3duZXIKIFBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLW5vbmV4aXN0ZW5j
ZS1mb3JtLWlkLWV4cGVjdGVkLnR4dAppbmRleCBhNWI1Y2RmZTAyZDQwNmNiZjI5NWI1OWQ3Nzcz
YzI5MWZjZDhmMDEwLi42NGJmZDM1Y2ViYjNlYWI2YWRjNmU1MGM5MzkwNGNlZWE5MjYxMzg5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLW5vbmV4aXN0
ZW5jZS1mb3JtLWlkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zv
cm0tYXR0cmlidXRlLW5vbmV4aXN0ZW5jZS1mb3JtLWlkLWV4cGVjdGVkLnR4dApAQCAtMSwxMCAr
MSwxMyBAQAotVGhpcyBwYWdlIGVuc3VyZXMgdGhhdCA8aW5wdXQgZnJvbT0iWCI+IGRvbid0IGFz
c29jaWF0ZSB3aXRoIGFueSBmb3JtIGVsZW1lbnRzIHdoZW4gdGhlcmUgaXMgbm8gPGZvcm0gaWQ9
IlgiPi4KK1RoaXMgcGFnZSBlbnN1cmVzIHRoYXQgPGlucHV0IGZyb209IlgiPiBhbmQgPGxhYmVs
IGZyb209IlgiPiBkb24ndCBhc3NvY2lhdGUgd2l0aCBhbnkgZm9ybSBlbGVtZW50cyB3aGVuIHRo
ZXJlIGlzIG5vIDxmb3JtIGlkPSJYIj4uCiAKIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAog
Ci1QQVNTIGVsZW1lbnRTaG91bGRIYXZlRm9ybS5mb3JtIGlzIGZvcm0KLVBBU1MgZWxlbWVudFNo
b3VsZE5vdEhhdmVGb3JtLmZvcm0gaXMgbnVsbAorbGFiZWwxIGxhYmVsMgorUEFTUyBpbnB1dFNo
b3VsZEhhdmVGb3JtLmZvcm0gaXMgZm9ybQorUEFTUyBpbnB1dFNob3VsZE5vdEhhdmVGb3JtLmZv
cm0gaXMgbnVsbAorUEFTUyBsYWJlbFNob3VsZEhhdmVGb3JtLmZvcm0gaXMgZm9ybQorUEFTUyBs
YWJlbFNob3VsZE5vdEhhdmVGb3JtLmZvcm0gaXMgbnVsbAogUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLW5vbmV4aXN0ZW5jZS1mb3JtLWlkLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLW5vbmV4aXN0ZW5jZS1mb3JtLWlkLmh0bWwK
aW5kZXggZDU4MmI5ZGE2YjlkOGI2NWNhOTQwNDU1ZmY4ZjZiY2I2YWY2ZWEzMC4uYTEzY2E4MzM4
YTY4YWNjZWYxZmFmYTE1ZGJmN2E3MGFiOGEyZDY0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9uZXhpc3RlbmNlLWZvcm0t
aWQuaHRtbApAQCAtOCwxNiArOCwyMiBAQAogPGZvcm0gaWQ9ImZvcm0iPgogICAgIDxpbnB1dCB0
eXBlPSJoaWRkZW4iIGlkPSJpbnB1dDEiIHZhbHVlPSJ2YWx1ZTEiPgogICAgIDxpbnB1dCB0eXBl
PSJoaWRkZW4iIGlkPSJpbnB1dDIiIHZhbHVlPSJ2YWx1ZTIiIGZvcm09IlgiPgorICAgIDxsYWJl
bCBpZD0ibGFiZWwxIj5sYWJlbDE8L2xhYmVsPgorICAgIDxsYWJlbCBpZD0ibGFiZWwyIiBmb3Jt
PSJYIj5sYWJlbDI8L2xhYmVsPgogPC9mb3JtPgogPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CiA8
c2NyaXB0PgotZGVzY3JpcHRpb24oJ1RoaXMgcGFnZSBlbnN1cmVzIHRoYXQgJmx0O2lucHV0IGZy
b209IlgiJmd0OyBkb25cJ3QgYXNzb2NpYXRlIHdpdGggYW55IGZvcm0gZWxlbWVudHMgd2hlbiB0
aGVyZSBpcyBubyAmbHQ7Zm9ybSBpZD0iWCImZ3Q7LicpOworZGVzY3JpcHRpb24oJ1RoaXMgcGFn
ZSBlbnN1cmVzIHRoYXQgJmx0O2lucHV0IGZyb209IlgiJmd0OyBhbmQgJmx0O2xhYmVsIGZyb209
IlgiJmd0OyBkb25cJ3QgYXNzb2NpYXRlIHdpdGggYW55IGZvcm0gZWxlbWVudHMgd2hlbiB0aGVy
ZSBpcyBubyAmbHQ7Zm9ybSBpZD0iWCImZ3Q7LicpOwogCiB2YXIgZm9ybSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdmb3JtJyk7Ci12YXIgZWxlbWVudFNob3VsZEhhdmVGb3JtID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2lucHV0MScpOwotdmFyIGVsZW1lbnRTaG91bGROb3RIYXZlRm9y
bSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dDInKTsKLXNob3VsZEJlKCdlbGVtZW50
U2hvdWxkSGF2ZUZvcm0uZm9ybScsICdmb3JtJyk7Ci1zaG91bGRCZU51bGwoJ2VsZW1lbnRTaG91
bGROb3RIYXZlRm9ybS5mb3JtJyk7Cit2YXIgaW5wdXRTaG91bGRIYXZlRm9ybSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdpbnB1dDEnKTsKK3ZhciBpbnB1dFNob3VsZE5vdEhhdmVGb3JtID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lucHV0MicpOwordmFyIGxhYmVsU2hvdWxkSGF2ZUZv
cm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWwxJyk7Cit2YXIgbGFiZWxTaG91bGRO
b3RIYXZlRm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbDInKTsKK3Nob3VsZEJl
KCdpbnB1dFNob3VsZEhhdmVGb3JtLmZvcm0nLCAnZm9ybScpOworc2hvdWxkQmVOdWxsKCdpbnB1
dFNob3VsZE5vdEhhdmVGb3JtLmZvcm0nKTsKK3Nob3VsZEJlKCdsYWJlbFNob3VsZEhhdmVGb3Jt
LmZvcm0nLCAnZm9ybScpOworc2hvdWxkQmVOdWxsKCdsYWJlbFNob3VsZE5vdEhhdmVGb3JtLmZv
cm0nKTsKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L2Zvcm0tYXR0cmlidXRlLmh0bWwKaW5kZXggYjM4ZjZkZjRhNDEzZWQ5ODQyMjhkYmZjNzdiNWYw
ZjE1N2ViZjIyOC4uZDczMDUwYTMzMTQzZWVjNjRkZWMwMzI1ZjAwYjJmODY3ZTdlOWI1NiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS5odG1sCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUuaHRtbApAQCAtMTMsNyArMTMs
NiBAQCB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGNvbnRhaW5lcik7CiAKIGRlYnVnKCctIENoZWNrcyB0aGUg
ZXhpc3RlbmNlIG9mIHRoZSBmb3JtIGF0dHJpYnV0ZSBmb3IgZWFjaCBmb3JtLWFzc29jaWF0ZWQg
ZWxlbWVudHMuJyk7Ci1kZWJ1ZygnRklYTUU6ICZsdDtsYWJlbCZndDsgZG9lc25cJ3Qgc3VwcG9y
dCB0aGUgZm9ybSBhdHRyaWJ1dGUgZm9yIG5vdy4nKTsKIGNvbnRhaW5lci5pbm5lckhUTUwgPSAn
PGZvcm0gaWQ9b3duZXI+PC9mb3JtPicgKwogICAgICc8YnV0dG9uIG5hbWU9dmljdGltIGZvcm09
b3duZXIgLz4nICsKICAgICAnPGZpZWxkc2V0IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsK
QEAgLTQ1LDEwICs0NCwxNCBAQCBkZWJ1ZygnLSBFbnN1cmVzIHRoYXQgdGhlIGZvcm0gYXR0cmli
dXRlIHBvaW50cyB0aGUgZm9ybSBvd25lciBldmVuIGlmIHRoZSBlbGVtZQogY29udGFpbmVyLmlu
bmVySFRNTCA9ICc8Zm9ybSBpZD1vd25lcj48L2Zvcm0+JyArCiAgICAgJzxmb3JtIGlkPXNob3Vs
ZE5vdEJlT3duZXI+JyArCiAgICAgJyAgICA8aW5wdXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmlj
dGltIGZvcm09b3duZXIgLz4nICsKKyAgICAnICAgIDxsYWJlbCBpZD1sYWJlbEVsZW1lbnQgbmFt
ZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwogICAgICc8L2Zvcm0+JzsKIG93bmVyID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ293bmVyJyk7CiB2YXIgaW5wdXRFbGVtZW50ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2lucHV0RWxlbWVudCcpOwordmFyIGxhYmVsRWxlbWVudCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQnKTsKIHNob3VsZEJlKCdpbnB1dEVsZW1l
bnQuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywgJ293bmVy
Jyk7CisKIAogZGVidWcoJycpOwogZGVidWcoJy0gRW5zdXJlcyB0aGF0IHRoZSBmb3JtIGF0dHJp
YnV0ZSBvZiBhbGwgZm9ybS1hc3NvY2lhdGVkIGVsZW1lbnQgd2l0aCBvciB3aXRvdXQgZm9ybSBh
dHRyaWJ1dGUgcG9pbnRzIHRoZSBmb3JtIG93bmVyLicpOwpAQCAtNTYsMTQgKzU5LDIzIEBAIGNv
bnRhaW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9b3duZXI+JyArCiAgICAgJyAgICA8aW5wdXQg
aWQ9aW5wdXRFbGVtZW50MSBuYW1lPXZpY3RpbSAvPicgKwogICAgICcgICAgPGlucHV0IGlkPWlu
cHV0RWxlbWVudDIgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwogICAgICcgICAgPGlucHV0
IGlkPWlucHV0RWxlbWVudDMgbmFtZT12aWN0aW0gLz4nICsKKyAgICAnICAgIDxsYWJlbCBpZD1s
YWJlbEVsZW1lbnQxIG5hbWU9dmljdGltIC8+JyArCisgICAgJyAgICA8bGFiZWwgaWQ9bGFiZWxF
bGVtZW50MiBuYW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCisgICAgJyAgICA8bGFiZWwgaWQ9
bGFiZWxFbGVtZW50MyBuYW1lPXZpY3RpbSAvPicgKwogICAgICc8L2Zvcm0+JzsKIG93bmVyID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ293bmVyJyk7CiB2YXIgaW5wdXRFbGVtZW50MSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQxJyk7CiB2YXIgaW5wdXRFbGVtZW50
MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQyJyk7CiB2YXIgaW5wdXRF
bGVtZW50MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQzJyk7Cit2YXIg
bGFiZWxFbGVtZW50MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQxJyk7
Cit2YXIgbGFiZWxFbGVtZW50MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1l
bnQyJyk7Cit2YXIgbGFiZWxFbGVtZW50MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJl
bEVsZW1lbnQzJyk7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50MS5mb3JtJywgJ293bmVyJyk7CiBz
aG91bGRCZSgnaW5wdXRFbGVtZW50Mi5mb3JtJywgJ293bmVyJyk7CiBzaG91bGRCZSgnaW5wdXRF
bGVtZW50My5mb3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50MS5mb3JtJywg
J293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50Mi5mb3JtJywgJ293bmVyJyk7CitzaG91
bGRCZSgnbGFiZWxFbGVtZW50My5mb3JtJywgJ293bmVyJyk7CiAKIGRlYnVnKCcnKTsKIGRlYnVn
KCctIEVuc3VyZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUgcG9pbnRzIHRoZSBmb3JtIG93bmVy
IGV2ZW4gaWYgdGhlIGZvcm0gZWxlbWVudCBpcyBuZXN0ZWQgYW5vdGhlciBmb3JtIGVsZW1lbnQu
Jyk7CkBAIC03MywyMSArODUsMzEgQEAgY29udGFpbmVyLmlubmVySFRNTCA9ICc8Zm9ybSBpZD1v
d25lcj4nICsKICAgICAnICAgICAgICA8aW5wdXQgaWQ9aW5wdXRFbGVtZW50MSBuYW1lPXZpY3Rp
bSBmb3JtPW93bmVyIC8+JyArCiAgICAgJyAgICAgICAgPGlucHV0IGlkPWlucHV0RWxlbWVudDIg
bmFtZT12aWN0aW0gLz4nICsKICAgICAnICAgICAgICA8aW5wdXQgaWQ9aW5wdXRFbGVtZW50MyBu
YW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCisgICAgJyAgICAgICAgPGxhYmVsIGlkPWxhYmVs
RWxlbWVudDEgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKworICAgICcgICAgICAgIDxsYWJl
bCBpZD1sYWJlbEVsZW1lbnQyIG5hbWU9dmljdGltIC8+JyArCisgICAgJyAgICAgICAgPGxhYmVs
IGlkPWxhYmVsRWxlbWVudDMgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwogICAgICcgICAg
PC9mb3JtPicgKwogICAgICc8L2Zvcm0+JzsKIG93bmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ293bmVyJyk7CiBpbnB1dEVsZW1lbnQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lu
cHV0RWxlbWVudDEnKTsKIGlucHV0RWxlbWVudDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
aW5wdXRFbGVtZW50MicpOwogaW5wdXRFbGVtZW50MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdpbnB1dEVsZW1lbnQzJyk7CitsYWJlbEVsZW1lbnQxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoJ2xhYmVsRWxlbWVudDEnKTsKK2xhYmVsRWxlbWVudDIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnbGFiZWxFbGVtZW50MicpOworbGFiZWxFbGVtZW50MyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdsYWJlbEVsZW1lbnQzJyk7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50MS5mb3JtJywg
J293bmVyJyk7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50Mi5mb3JtJywgJ293bmVyJyk7CiBzaG91
bGRCZSgnaW5wdXRFbGVtZW50My5mb3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVt
ZW50MS5mb3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50Mi5mb3JtJywgJ293
bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50My5mb3JtJywgJ293bmVyJyk7CiAKIGRlYnVn
KCcnKTsKIGRlYnVnKCctIEVuc3VyZXMgd2hldGhlciB0aGUgZm9ybSBvd25lciBpcyBzZXQgY29y
cmVjdGx5IHdoZW4gdGhlIHZhbHVlIG9mIGZvcm0gYXR0cmlidXRlIG9mIGEgZm9ybS1hc3NvY2lh
dGVkIGVsZW1lbnQgY2hhbmdlZC4nKTsKIGNvbnRhaW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9
Zm9ybTE+PC9mb3JtPicgKwogICAgICc8Zm9ybSBpZD1mb3JtMj48L2Zvcm0+JyArCiAgICAgJzxp
bnB1dCBpZD1pbnB1dEVsZW1lbnQgbmFtZT12aWN0aW0gZm9ybT1mb3JtMSAvPicgKworICAgICc8
bGFiZWwgaWQ9bGFiZWxFbGVtZW50IG5hbWU9dmljdGltIGZvcm09Zm9ybTEgLz4nICsKICAgICAn
PG9iamVjdCBpZD1vYmplY3RFbGVtZW50IG5hbWU9dmljdGltIGZvcm09Zm9ybTE+PC9vYmplY3Q+
JzsKIHZhciBmb3JtMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmb3JtMScpOwogdmFyIGZv
cm0yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Zvcm0yJyk7CkBAIC05Niw2ICsxMTgsMTIg
QEAgc2hvdWxkQmUoJ2lucHV0RWxlbWVudC5mb3JtJywgJ2Zvcm0xJyk7CiBpbnB1dEVsZW1lbnQu
YXR0cmlidXRlc1snZm9ybSddLnZhbHVlID0gJ2Zvcm0yJzsKIHNob3VsZEJlKCdpbnB1dEVsZW1l
bnQuZm9ybScsICdmb3JtMicpOwogCisvLyBIVE1MYWJlbEVsZW1lbnQgaGFzIGl0cyBvd24gaW1w
bGVtZW50YXRpb24gb2YgZm9ybUF0dHIgcHJvY2Vzc2luZyBhbmQgc28gbmVlZHMgaXRzIG93biB0
ZXN0LgorbGFiZWxFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xhYmVsRWxlbWVu
dCcpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywgJ2Zvcm0xJyk7CitsYWJlbEVsZW1l
bnQuYXR0cmlidXRlc1snZm9ybSddLnZhbHVlID0gJ2Zvcm0yJzsKK3Nob3VsZEJlKCdsYWJlbEVs
ZW1lbnQuZm9ybScsICdmb3JtMicpOworCiAvLyBIVE1MT2JqZWN0RWxlbWVudCBoYXMgaXRzIG93
biBpbXBsZW1lbnRhdGlvbiBvZiBmb3JtQXR0ciBwcm9jZXNzaW5nIGFuZCBzbyBuZWVkcyBpdHMg
b3duIHRlc3QuCiBvYmplY3RFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29iamVj
dEVsZW1lbnQnKTsKIHNob3VsZEJlKCdvYmplY3RFbGVtZW50LmZvcm0nLCAnZm9ybTEnKTsKQEAg
LTEwNiw2ICsxMzQsNyBAQCBkZWJ1ZygnJyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHdoZXRoZXIgdGhl
IGZvcm0gb3duZXIgaXMgc2V0IGNvcnJlY3RseSB3aGVuIHRoZSB2YWx1ZSBvZiBmb3JtIGF0dHJp
YnV0ZSBpcyBhZGRlZC9yZW1vdmVkLicpOwogY29udGFpbmVyLmlubmVySFRNTCA9ICc8Zm9ybSBp
ZD1vd25lciBuYW1lPWZpcnN0T3duZXI+PC9mb3JtPicgKwogICAgICc8aW5wdXQgaWQ9aW5wdXRF
bGVtZW50IG5hbWU9dmljdGltIC8+JyArCisgICAgJzxsYWJlbCBpZD1sYWJlbEVsZW1lbnQgbmFt
ZT12aWN0aW0gLz4nICsKICAgICAnPG9iamVjdCBpZD1vYmplY3RFbGVtZW50IG5hbWU9dmljdGlt
Pjwvb2JqZWN0Pic7CiBvd25lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25lcicpOwog
aW5wdXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lucHV0RWxlbWVudCcpOwpA
QCAtMTE2LDYgKzE0NSwxNCBAQCBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0nLCAnb3duZXIn
KTsKIGlucHV0RWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2Zvcm0nKTsKIHNob3VsZEJlKCdpbnB1
dEVsZW1lbnQuZm9ybScsICdudWxsJyk7CiAKKy8vIEhUTUxMYWJlbEVsZW1lbnQgaGFzIGl0cyBv
d24gaW1wbGVtZW50YXRpb24gb2YgZm9ybUF0dHIgcHJvY2Vzc2luZyBhbmQgc28gbmVlZHMgaXRz
IG93biB0ZXN0LgorbGFiZWxFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xhYmVs
RWxlbWVudCcpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywgJ251bGwnKTsKK2xhYmVs
RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2Zvcm0nLCAnb3duZXInKTsKK3Nob3VsZEJlKCdsYWJlbEVs
ZW1lbnQuZm9ybScsICdvd25lcicpOworbGFiZWxFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnZm9y
bScpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywgJ251bGwnKTsKKwogLy8gSFRNTE9i
amVjdEVsZW1lbnQgaGFzIGl0cyBvd24gaW1wbGVtZW50YXRpb24gb2YgZm9ybUF0dHIgcHJvY2Vz
c2luZyBhbmQgc28gbmVlZHMgaXRzIG93biB0ZXN0Lgogb2JqZWN0RWxlbWVudCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdvYmplY3RFbGVtZW50Jyk7CiBzaG91bGRCZSgnb2JqZWN0RWxlbWVu
dC5mb3JtJywgJ251bGwnKTsKQEAgLTEyOCwxOCArMTY1LDIzIEBAIGRlYnVnKCcnKTsKIGRlYnVn
KCctIEVuc3VyZXMgd2hldGhlciB0aGUgZm9ybSBvd25lciBpcyBzZXQgY29ycmVjdGx5IHdoZW4g
dGhlIGZvcm0gb3duZXIgaXMgYWRkZWQvcmVtb3ZlZC4nKTsKIGNvbnRhaW5lci5pbm5lckhUTUwg
PSAnPGZvcm0gaWQ9b3duZXIgbmFtZT1maXJzdE93bmVyPjwvZm9ybT4nICsKICAgICAnPGZvcm0g
aWQ9b3duZXIgbmFtZT1zZWNvbmRPd25lcj48L2Zvcm0+JyArCi0gICAgJzxpbnB1dCBpZD1pbnB1
dEVsZW1lbnQgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPic7CisgICAgJzxpbnB1dCBpZD1pbnB1
dEVsZW1lbnQgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKworICAgICc8bGFiZWwgaWQ9bGFi
ZWxFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nOwogb3duZXIgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnb3duZXInKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygnb3duZXIubmFt
ZScsICdmaXJzdE93bmVyJyk7CiBpbnB1dEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnaW5wdXRFbGVtZW50Jyk7CitsYWJlbEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnbGFiZWxFbGVtZW50Jyk7CiBjb250YWluZXIucmVtb3ZlQ2hpbGQob3duZXIpOwogb3duZXIg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3duZXInKTsKIHNob3VsZEJlRXF1YWxUb1N0cmlu
Zygnb3duZXIubmFtZScsICdzZWNvbmRPd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudC5m
b3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnb3duZXInKTsK
IGNvbnRhaW5lci5yZW1vdmVDaGlsZChvd25lcik7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZv
cm0nLCAnbnVsbCcpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywgJ251bGwnKTsKIGNv
bnRhaW5lci5hcHBlbmRDaGlsZChvd25lcik7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0n
LCAnb3duZXInKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9ybScsICdvd25lcicpOwogPC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KIDwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132187</attachid>
            <date>2012-03-15 20:57:25 -0700</date>
            <delta_ts>2012-03-15 23:23:42 -0700</delta_ts>
            <desc>Patch 3</desc>
            <filename>bug-80499-20120316125723.patch</filename>
            <type>text/plain</type>
            <size>20383</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwOTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDIzYjJjNWRlOTVlMTMw
MGExMDg5YjkyY2U2ZDRkNjJiYWY3MDUxZS4uNzRkMTVhZDAyYmU3NzQ2MTU0Mzk0ZjhmMDBiNzI3
MjFkOWQyODU5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTAzLTE0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBsYWJl
bC5mb3JtIGF0dHJpYnV0ZSBkb2Vzbid0IHdvcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjaGFuZ2VzIGltcGxlbWVudGF0aW9uIG9m
IGxhYmVsLmZvcm0gb2YgSURMIGF0dHJpYnV0ZSB0bworICAgICAgICBjb21wdXRlIGl0IHRvIHRo
ZSBmb3JtIGVsZW1lbnQgc3BlY2lmaWVkIGJ5IHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUKKyAg
ICAgICAgb3IgZm9ybSBhbmNlc3RvciB3aGVuIHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUgaXNu
J3QgaW4gSFRNTC4KKworICAgICAgICBUaGlzIHBhdGNoIGludHJvZHVjZXMgbmV3IGZ1bmN0aW9u
IEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3JtCisgICAgICAgIGZvciBz
aGFyaW5nIGNvZGUgYW1vbmcgRm9ybUFzc29jaWF0ZUVsZW1lbnQ6Omluc2VydGVkSW50b1RyZWUs
IHJlc2V0Rm9ybU93bmVyCisgICAgICAgIGFuZCBIVE1MTGFiZWxFbGVtZW50Ojpmb3JtLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICog
aHRtbC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFz
c29jaWF0ZWRFbGVtZW50OjpmaW5kQXNzb2NpYXRlZEZvcm0pOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFzc29jaWF0ZWRFbGVtZW50OjppbnNlcnRl
ZEludG9UcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6cmVz
ZXRGb3JtT3duZXIpOgorICAgICAgICAqIGh0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50Lmg6Cisg
ICAgICAgIChGb3JtQXNzb2NpYXRlZEVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVs
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb3JtKTog
QWRkZWQuCisKIDIwMTItMDMtMTUgIFlvc2hpZnVtaSBJbm91ZSAgPHlvc2luQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBbRm9ybXNdIFRoZSAibWV0ZXIiIGVsZW1lbnQgc2hvdWxkIG5vdCBiZSBh
IGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Gb3JtQXNz
b2NpYXRlZEVsZW1lbnQuY3BwCmluZGV4IGU3ZWJlYmU3MmMyNzZjNjAyOTlmZTI3YWYwZDRlNjNk
YTI4ZDg2NGMuLjg2YjJiNjQ4YWNlZjU2ZTA4MjVjY2M0ZjFkZmFmZWNhZDZjNTBlZmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5jcHAKQEAgLTc0LDYg
Kzc0LDI3IEBAIHZvaWQgRm9ybUFzc29jaWF0ZWRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50
KCkKICAgICAgICAgZWxlbWVudC0+ZG9jdW1lbnQoKS0+dW5yZWdpc3RlckZvcm1FbGVtZW50V2l0
aEZvcm1BdHRyaWJ1dGUodGhpcyk7CiB9CiAKK0hUTUxGb3JtRWxlbWVudCogRm9ybUFzc29jaWF0
ZWRFbGVtZW50OjpmaW5kQXNzb2NpYXRlZEZvcm0oY29uc3QgSFRNTEVsZW1lbnQqIGVsZW1lbnQs
IEhUTUxGb3JtRWxlbWVudCogY3VycmVudEFzc29jaWF0ZWRGb3JtKQoreworICAgIGNvbnN0IEF0
b21pY1N0cmluZyYgZm9ybUlkKGVsZW1lbnQtPmZhc3RHZXRBdHRyaWJ1dGUoZm9ybUF0dHIpKTsK
KyAgICBpZiAoIWZvcm1JZC5pc051bGwoKSAmJiBlbGVtZW50LT5pbkRvY3VtZW50KCkpIHsKKyAg
ICAgICAgLy8gVGhlIEhUTUw1IHNwZWMgc2F5cyB0aGF0IHRoZSBlbGVtZW50IHNob3VsZCBiZSBh
c3NvY2lhdGVkIHdpdGgKKyAgICAgICAgLy8gdGhlIGZpcnN0IGVsZW1lbnQgaW4gdGhlIGRvY3Vt
ZW50IHRvIGhhdmUgYW4gSUQgdGhhdCBlcXVhbCB0bworICAgICAgICAvLyB0aGUgdmFsdWUgb2Yg
Zm9ybSBhdHRyaWJ1dGUsIHNvIHdlIHB1dCB0aGUgcmVzdWx0IG9mCisgICAgICAgIC8vIHRyZWVT
Y29wZSgpLT5nZXRFbGVtZW50QnlJZCgpIG92ZXIgdGhlIGdpdmVuIGVsZW1lbnQuCisgICAgICAg
IEhUTUxGb3JtRWxlbWVudCogbmV3Rm9ybSA9IDA7CisgICAgICAgIEVsZW1lbnQqIG5ld0Zvcm1D
YW5kaWRhdGUgPSBlbGVtZW50LT50cmVlU2NvcGUoKS0+Z2V0RWxlbWVudEJ5SWQoZm9ybUlkKTsK
KyAgICAgICAgaWYgKG5ld0Zvcm1DYW5kaWRhdGUgJiYgbmV3Rm9ybUNhbmRpZGF0ZS0+aGFzVGFn
TmFtZShmb3JtVGFnKSkKKyAgICAgICAgICAgIG5ld0Zvcm0gPSBzdGF0aWNfY2FzdDxIVE1MRm9y
bUVsZW1lbnQqPihuZXdGb3JtQ2FuZGlkYXRlKTsKKyAgICAgICAgcmV0dXJuIG5ld0Zvcm07Cisg
ICAgfQorCisgICAgaWYgKCFjdXJyZW50QXNzb2NpYXRlZEZvcm0pCisgICAgICAgIHJldHVybiBl
bGVtZW50LT5maW5kRm9ybUFuY2VzdG9yKCk7CisKKyAgICByZXR1cm4gY3VycmVudEFzc29jaWF0
ZWRGb3JtOworfQorCiB2b2lkIEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6aW5zZXJ0ZWRJbnRvVHJl
ZSgpCiB7CiAgICAgcmVzZXRGb3JtT3duZXIoKTsKQEAgLTEzMCwyNCArMTUxLDcgQEAgdm9pZCBG
b3JtQXNzb2NpYXRlZEVsZW1lbnQ6OmZvcm1XaWxsQmVEZXN0cm95ZWQoKQogCiB2b2lkIEZvcm1B
c3NvY2lhdGVkRWxlbWVudDo6cmVzZXRGb3JtT3duZXIoKQogewotICAgIEhUTUxFbGVtZW50KiBl
bGVtZW50ID0gdG9IVE1MRWxlbWVudCh0aGlzKTsKLSAgICBjb25zdCBBdG9taWNTdHJpbmcmIGZv
cm1JZChlbGVtZW50LT5mYXN0R2V0QXR0cmlidXRlKGZvcm1BdHRyKSk7Ci0gICAgaWYgKG1fZm9y
bSkgewotICAgICAgICBpZiAoZm9ybUlkLmlzTnVsbCgpKQotICAgICAgICAgICAgcmV0dXJuOwot
ICAgIH0KLSAgICBIVE1MRm9ybUVsZW1lbnQqIG5ld0Zvcm0gPSAwOwotICAgIGlmICghZm9ybUlk
LmlzTnVsbCgpICYmIGVsZW1lbnQtPmluRG9jdW1lbnQoKSkgewotICAgICAgICAvLyBUaGUgSFRN
TDUgc3BlYyBzYXlzIHRoYXQgdGhlIGVsZW1lbnQgc2hvdWxkIGJlIGFzc29jaWF0ZWQgd2l0aAot
ICAgICAgICAvLyB0aGUgZmlyc3QgZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQgdG8gaGF2ZSBhbiBJ
RCB0aGF0IGVxdWFsIHRvCi0gICAgICAgIC8vIHRoZSB2YWx1ZSBvZiBmb3JtIGF0dHJpYnV0ZSwg
c28gd2UgcHV0IHRoZSByZXN1bHQgb2YKLSAgICAgICAgLy8gdHJlZVNjb3BlKCktPmdldEVsZW1l
bnRCeUlkKCkgb3ZlciB0aGUgZ2l2ZW4gZWxlbWVudC4KLSAgICAgICAgRWxlbWVudCogZmlyc3RF
bGVtZW50ID0gZWxlbWVudC0+dHJlZVNjb3BlKCktPmdldEVsZW1lbnRCeUlkKGZvcm1JZCk7Ci0g
ICAgICAgIGlmIChmaXJzdEVsZW1lbnQgJiYgZmlyc3RFbGVtZW50LT5oYXNUYWdOYW1lKGZvcm1U
YWcpKQotICAgICAgICAgICAgbmV3Rm9ybSA9IHN0YXRpY19jYXN0PEhUTUxGb3JtRWxlbWVudCo+
KGZpcnN0RWxlbWVudCk7Ci0gICAgfSBlbHNlCi0gICAgICAgIG5ld0Zvcm0gPSBlbGVtZW50LT5m
aW5kRm9ybUFuY2VzdG9yKCk7Ci0gICAgc2V0Rm9ybShuZXdGb3JtKTsKKyAgICBzZXRGb3JtKGZp
bmRBc3NvY2lhdGVkRm9ybSh0b0hUTUxFbGVtZW50KHRoaXMpLCBtX2Zvcm0pKTsKIH0KIAogdm9p
ZCBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6OmZvcm1BdHRyaWJ1dGVDaGFuZ2VkKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oCmluZGV4IGIzMzZmMzczYzE2NjIy
MGZlYWYwZmFkNjQyNWE0MTM2ZDY5NjhmYWIuLmIyYTM1ZTljOGFlOWZjZmJkYzRkMzYzNjBhZjM5
OTY1NzAyMzIxZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0
ZWRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Gb3JtQXNzb2NpYXRlZEVsZW1l
bnQuaApAQCAtNDEsNiArNDEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCByZWYoKSB7IHJlZkZvcm1B
c3NvY2lhdGVkRWxlbWVudCgpOyB9CiAgICAgdm9pZCBkZXJlZigpIHsgZGVyZWZGb3JtQXNzb2Np
YXRlZEVsZW1lbnQoKTsgfQogCisgICAgc3RhdGljIEhUTUxGb3JtRWxlbWVudCogZmluZEFzc29j
aWF0ZWRGb3JtKGNvbnN0IEhUTUxFbGVtZW50KiwgSFRNTEZvcm1FbGVtZW50Kik7CiAgICAgSFRN
TEZvcm1FbGVtZW50KiBmb3JtKCkgY29uc3QgeyByZXR1cm4gbV9mb3JtOyB9CiAgICAgVmFsaWRp
dHlTdGF0ZSogdmFsaWRpdHkoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVu
dC5jcHAKaW5kZXggZDg4ZTczNzNkZDJjMGE4MDZhNzYzY2U5NzdiNjY3YWU1NzY2Y2E5Ny4uNWMx
NjdkZjAyOGIzODc3OTY4ODEyYWVhNzQwMDEzMjUzMDYzOTkwZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0yOCw3ICsyOCw5IEBACiAjaW5jbHVkZSAiRG9j
dW1lbnQuaCIKICNpbmNsdWRlICJFdmVudC5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKLSNp
bmNsdWRlICJMYWJlbGFibGVFbGVtZW50LmgiCisjaW5jbHVkZSAiRm9ybUFzc29jaWF0ZWRFbGVt
ZW50LmgiCisjaW5jbHVkZSAiSFRNTEZvcm1Db250cm9sRWxlbWVudC5oIgorI2luY2x1ZGUgIkhU
TUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC04Nyw2ICs4OSwxMSBAQCBMYWJlbGFibGVFbGVtZW50KiBIVE1MTGFiZWxFbGVt
ZW50Ojpjb250cm9sKCkKICAgICByZXR1cm4gbm9kZUFzTGFiZWxhYmxlRWxlbWVudCh0cmVlU2Nv
cGUoKS0+Z2V0RWxlbWVudEJ5SWQoY29udHJvbElkKSk7CiB9CiAKK0hUTUxGb3JtRWxlbWVudCog
SFRNTExhYmVsRWxlbWVudDo6Zm9ybSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIEZvcm1Bc3NvY2lh
dGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3JtKHRoaXMsIDApOworfQorCiB2b2lkIEhUTUxM
YWJlbEVsZW1lbnQ6OnNldEFjdGl2ZShib29sIGRvd24sIGJvb2wgcGF1c2UpCiB7CiAgICAgaWYg
KGRvd24gPT0gYWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxM
YWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCmlu
ZGV4IDFiNzdhYTJkNTYzOTJjZGEyZTk4NGNjMWJkMGU4NjVjOTYwMDkyNmIuLmE4MjFiMjUwNzdh
MTllYzRkNTg4MjQ0NTZkMjIwNWI3MmMzNGRmMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExh
YmVsRWxlbWVudC5oCkBAIC0zNCw2ICszNCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxIVE1MTGFiZWxFbGVtZW50PiBjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3Vt
ZW50Kik7CiAKICAgICBMYWJlbGFibGVFbGVtZW50KiBjb250cm9sKCk7CisgICAgSFRNTEZvcm1F
bGVtZW50KiBmb3JtKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgSFRNTExhYmVsRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyOGVhYTJlMjNmMzFiZmEz
NDlkMDAwYjUxZTQ2MmE5MTkyZWI5YzM0Li5iMGQwM2VhZDAwZDMwN2RjZjgwMjEwZGExNzhjNDFi
NTJmY2MwM2UzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTItMDMtMTQgIFlvc2hpZnVtaSBJ
bm91ZSAgPHlvc2luQGNocm9taXVtLm9yZz4KKworICAgICAgICBbRm9ybXNdIGxhYmVsLmZvcm0g
YXR0cmlidXRlIGRvZXNuJ3Qgd29yaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODA0OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUaGlzIHBhdGNoIHVwZGF0ZXMgdGVzdCBjYXNlcyBhbmQgZXhwZWN0YXRp
b24gZm9yIGZ1bmN0aW9uYWwgCisgICAgICAgICJmb3JtIiBhdHRyaWJ1dGUgb2YgdGhlICJsYWJl
bCIgZWxlbWVudC4KKworICAgICAgICAqIGZhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9uZXhpc3RlbmNl
LWZvcm0taWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1
dGUtbm9uZXhpc3RlbmNlLWZvcm0taWQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2Zvcm0t
YXR0cmlidXRlLmh0bWw6CisKIDIwMTItMDMtMTUgIFlvc2hpZnVtaSBJbm91ZSAgPHlvc2luQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBbRm9ybXNdIFRoZSAibWV0ZXIiIGVsZW1lbnQgc2hvdWxk
IG5vdCBiZSBhIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dAppbmRleCAwMzkyZTFiNTNjZjA0
ZWNkMzA5YTBiN2EwN2RhYmJkNTFiZjk4MjJhLi5iMTAyMDg5MjcxOTEzNTY4N2VkYTQ5ZjMxMWFl
ZjM1YjE1NTQ3NWJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0
cmlidXRlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0
cmlidXRlLWV4cGVjdGVkLnR4dApAQCAtNCwxMiArNCwxMSBAQCBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURQogCiAKIC0gQ2hlY2tzIHRoZSBleGlzdGVuY2Ugb2YgdGhlIGZvcm0gYXR0cmlidXRlIGZv
ciBlYWNoIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50cy4KLUZJWE1FOiA8bGFiZWw+IGRvZXNuJ3Qg
c3VwcG9ydCB0aGUgZm9ybSBhdHRyaWJ1dGUgZm9yIG5vdy4KIFBBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudHNCeVRhZ05hbWUoImJ1dHRvbiIpWzBdLmZvcm0gaXMgb3duZXIKIFBBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoImZpZWxkc2V0IilbMF0uZm9ybSBpcyBvd25lcgogUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW5wdXQiKVswXS5mb3JtIGlzIG93bmVyCiBQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJrZXlnZW4iKVswXS5mb3JtIGlzIG93
bmVyCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsYWJlbCIpWzBdLmZvcm0g
c2hvdWxkIGJlIFtvYmplY3QgSFRNTEZvcm1FbGVtZW50XS4gV2FzIG51bGwuCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsYWJlbCIpWzBdLmZvcm0gaXMgb3duZXIKIFBBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm9iamVjdCIpWzBdLmZvcm0gaXMgb3duZXIK
IFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm91dHB1dCIpWzBdLmZvcm0gaXMg
b3duZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInByb2dyZXNzIilbMF0u
Zm9ybSBpcyBvd25lcgpAQCAtMTgsMjEgKzE3LDMwIEBAIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoInRleHRhcmVhIilbMF0uZm9ybSBpcyBvd25lcgogCiAtIEVuc3VyZXMgdGhh
dCB0aGUgZm9ybSBhdHRyaWJ1dGUgcG9pbnRzIHRoZSBmb3JtIG93bmVyIGV2ZW4gaWYgdGhlIGVs
ZW1lbnQgaXMgd2l0aGluIGFub3RoZXIgZm9ybSBlbGVtZW50LgogUEFTUyBpbnB1dEVsZW1lbnQu
Zm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBvd25lcgogCiAtIEVuc3Vy
ZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUgb2YgYWxsIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50
IHdpdGggb3Igd2l0b3V0IGZvcm0gYXR0cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25lci4KIFBB
U1MgaW5wdXRFbGVtZW50MS5mb3JtIGlzIG93bmVyCiBQQVNTIGlucHV0RWxlbWVudDIuZm9ybSBp
cyBvd25lcgogUEFTUyBpbnB1dEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKK1BBU1MgbGFiZWxFbGVt
ZW50MS5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxlbWVudDIuZm9ybSBpcyBvd25lcgorUEFT
UyBsYWJlbEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKIAogLSBFbnN1cmVzIHRoYXQgdGhlIGZvcm0g
YXR0cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25lciBldmVuIGlmIHRoZSBmb3JtIGVsZW1lbnQg
aXMgbmVzdGVkIGFub3RoZXIgZm9ybSBlbGVtZW50LgogTk9URTogSXQgc2VlbXMgdGhhdCBuZXN0
aW5nIGZvcm0gZWxlbWVudHMgaXMgbm90IGFsbG93ZWQgc28gd2UgZW5zdXJlIGVhY2ggZm9ybS1h
c3NvY2lhdGVkIGVsZW1lbnRzIGFzc29jaWF0ZSB3aXRoIHRoZSBvdXRtb3N0IGZvcm0gZWxlbWVu
dC4KIFBBU1MgaW5wdXRFbGVtZW50MS5mb3JtIGlzIG93bmVyCiBQQVNTIGlucHV0RWxlbWVudDIu
Zm9ybSBpcyBvd25lcgogUEFTUyBpbnB1dEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKK1BBU1MgbGFi
ZWxFbGVtZW50MS5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxlbWVudDIuZm9ybSBpcyBvd25l
cgorUEFTUyBsYWJlbEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKIAogLSBFbnN1cmVzIHdoZXRoZXIg
dGhlIGZvcm0gb3duZXIgaXMgc2V0IGNvcnJlY3RseSB3aGVuIHRoZSB2YWx1ZSBvZiBmb3JtIGF0
dHJpYnV0ZSBvZiBhIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50IGNoYW5nZWQuCiBQQVNTIGlucHV0
RWxlbWVudC5mb3JtIGlzIGZvcm0xCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIGZvcm0yCitQ
QVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIGZvcm0xCitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlz
IGZvcm0yCiBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBpcyBmb3JtMQogUEFTUyBvYmplY3RFbGVt
ZW50LmZvcm0gaXMgZm9ybTIKIApAQCAtNDAsNiArNDgsOSBAQCBQQVNTIG9iamVjdEVsZW1lbnQu
Zm9ybSBpcyBmb3JtMgogUEFTUyBpbnB1dEVsZW1lbnQuZm9ybSBpcyBudWxsCiBQQVNTIGlucHV0
RWxlbWVudC5mb3JtIGlzIG93bmVyCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIG51bGwKK1BB
U1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgbnVsbAorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBv
d25lcgorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBudWxsCiBQQVNTIG9iamVjdEVsZW1lbnQu
Zm9ybSBpcyBudWxsCiBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBpcyBvd25lcgogUEFTUyBvYmpl
Y3RFbGVtZW50LmZvcm0gaXMgbnVsbApAQCAtNDgsOCArNTksMTEgQEAgUEFTUyBvYmplY3RFbGVt
ZW50LmZvcm0gaXMgbnVsbAogUEFTUyBvd25lci5uYW1lIGlzICJmaXJzdE93bmVyIgogUEFTUyBv
d25lci5uYW1lIGlzICJzZWNvbmRPd25lciIKIFBBU1MgaW5wdXRFbGVtZW50LmZvcm0gaXMgb3du
ZXIKK1BBU1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgb3duZXIKIFBBU1MgaW5wdXRFbGVtZW50LmZv
cm0gaXMgbnVsbAorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBudWxsCiBQQVNTIGlucHV0RWxl
bWVudC5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIG93bmVyCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9uZXhpc3RlbmNlLWZvcm0t
aWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1u
b25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQKaW5kZXggYTViNWNkZmUwMmQ0MDZjYmYy
OTViNTlkNzc3M2MyOTFmY2Q4ZjAxMC4uNjRiZmQzNWNlYmIzZWFiNmFkYzZlNTBjOTM5MDRjZWVh
OTI2MTM4OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0
ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQK
QEAgLTEsMTAgKzEsMTMgQEAKLVRoaXMgcGFnZSBlbnN1cmVzIHRoYXQgPGlucHV0IGZyb209Ilgi
PiBkb24ndCBhc3NvY2lhdGUgd2l0aCBhbnkgZm9ybSBlbGVtZW50cyB3aGVuIHRoZXJlIGlzIG5v
IDxmb3JtIGlkPSJYIj4uCitUaGlzIHBhZ2UgZW5zdXJlcyB0aGF0IDxpbnB1dCBmcm9tPSJYIj4g
YW5kIDxsYWJlbCBmcm9tPSJYIj4gZG9uJ3QgYXNzb2NpYXRlIHdpdGggYW55IGZvcm0gZWxlbWVu
dHMgd2hlbiB0aGVyZSBpcyBubyA8Zm9ybSBpZD0iWCI+LgogCiBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCiAKIAotUEFTUyBlbGVtZW50U2hvdWxkSGF2ZUZvcm0uZm9ybSBpcyBmb3JtCi1QQVNT
IGVsZW1lbnRTaG91bGROb3RIYXZlRm9ybS5mb3JtIGlzIG51bGwKK2xhYmVsMSBsYWJlbDIKK1BB
U1MgaW5wdXRTaG91bGRIYXZlRm9ybS5mb3JtIGlzIGZvcm0KK1BBU1MgaW5wdXRTaG91bGROb3RI
YXZlRm9ybS5mb3JtIGlzIG51bGwKK1BBU1MgbGFiZWxTaG91bGRIYXZlRm9ybS5mb3JtIGlzIGZv
cm0KK1BBU1MgbGFiZWxTaG91bGROb3RIYXZlRm9ybS5mb3JtIGlzIG51bGwKIFBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9y
bS1pZC5odG1sCmluZGV4IGQ1ODJiOWRhNmI5ZDhiNjVjYTk0MDQ1NWZmOGY2YmNiNmFmNmVhMzAu
LmExM2NhODMzOGE2OGFjY2VmMWZhZmExNWRiZjdhNzBhYjhhMmQ2NGYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9uZXhpc3RlbmNlLWZvcm0taWQu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLW5vbmV4aXN0
ZW5jZS1mb3JtLWlkLmh0bWwKQEAgLTgsMTYgKzgsMjIgQEAKIDxmb3JtIGlkPSJmb3JtIj4KICAg
ICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaW5wdXQxIiB2YWx1ZT0idmFsdWUxIj4KICAgICA8
aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaW5wdXQyIiB2YWx1ZT0idmFsdWUyIiBmb3JtPSJYIj4K
KyAgICA8bGFiZWwgaWQ9ImxhYmVsMSI+bGFiZWwxPC9sYWJlbD4KKyAgICA8bGFiZWwgaWQ9Imxh
YmVsMiIgZm9ybT0iWCI+bGFiZWwyPC9sYWJlbD4KIDwvZm9ybT4KIDxkaXYgaWQ9ImNvbnNvbGUi
PjwvZGl2PgogPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdUaGlzIHBhZ2UgZW5zdXJlcyB0aGF0ICZs
dDtpbnB1dCBmcm9tPSJYIiZndDsgZG9uXCd0IGFzc29jaWF0ZSB3aXRoIGFueSBmb3JtIGVsZW1l
bnRzIHdoZW4gdGhlcmUgaXMgbm8gJmx0O2Zvcm0gaWQ9IlgiJmd0Oy4nKTsKK2Rlc2NyaXB0aW9u
KCdUaGlzIHBhZ2UgZW5zdXJlcyB0aGF0ICZsdDtpbnB1dCBmcm9tPSJYIiZndDsgYW5kICZsdDts
YWJlbCBmcm9tPSJYIiZndDsgZG9uXCd0IGFzc29jaWF0ZSB3aXRoIGFueSBmb3JtIGVsZW1lbnRz
IHdoZW4gdGhlcmUgaXMgbm8gJmx0O2Zvcm0gaWQ9IlgiJmd0Oy4nKTsKIAogdmFyIGZvcm0gPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZm9ybScpOwotdmFyIGVsZW1lbnRTaG91bGRIYXZlRm9y
bSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dDEnKTsKLXZhciBlbGVtZW50U2hvdWxk
Tm90SGF2ZUZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXQyJyk7Ci1zaG91bGRC
ZSgnZWxlbWVudFNob3VsZEhhdmVGb3JtLmZvcm0nLCAnZm9ybScpOwotc2hvdWxkQmVOdWxsKCdl
bGVtZW50U2hvdWxkTm90SGF2ZUZvcm0uZm9ybScpOwordmFyIGlucHV0U2hvdWxkSGF2ZUZvcm0g
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXQxJyk7Cit2YXIgaW5wdXRTaG91bGROb3RI
YXZlRm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dDInKTsKK3ZhciBsYWJlbFNo
b3VsZEhhdmVGb3JtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xhYmVsMScpOwordmFyIGxh
YmVsU2hvdWxkTm90SGF2ZUZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWwyJyk7
CitzaG91bGRCZSgnaW5wdXRTaG91bGRIYXZlRm9ybS5mb3JtJywgJ2Zvcm0nKTsKK3Nob3VsZEJl
TnVsbCgnaW5wdXRTaG91bGROb3RIYXZlRm9ybS5mb3JtJyk7CitzaG91bGRCZSgnbGFiZWxTaG91
bGRIYXZlRm9ybS5mb3JtJywgJ2Zvcm0nKTsKK3Nob3VsZEJlTnVsbCgnbGFiZWxTaG91bGROb3RI
YXZlRm9ybS5mb3JtJyk7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS5odG1sCmluZGV4IDE0MjE4ZjE0M2VhZmQxZGMwMTFh
OGIwMDg3ODJkZDFlMzJmYjgyNjQuLjc5MDJiMGY5YTgyM2Q3OTllZWVmYzMxM2FlYWRiZDNlYWE5
OGJlMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLmh0bWwKQEAg
LTEzLDcgKzEzLDYgQEAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Rp
dicpOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChjb250YWluZXIpOwogCiBkZWJ1ZygnLSBD
aGVja3MgdGhlIGV4aXN0ZW5jZSBvZiB0aGUgZm9ybSBhdHRyaWJ1dGUgZm9yIGVhY2ggZm9ybS1h
c3NvY2lhdGVkIGVsZW1lbnRzLicpOwotZGVidWcoJ0ZJWE1FOiAmbHQ7bGFiZWwmZ3Q7IGRvZXNu
XCd0IHN1cHBvcnQgdGhlIGZvcm0gYXR0cmlidXRlIGZvciBub3cuJyk7CiBjb250YWluZXIuaW5u
ZXJIVE1MID0gJzxmb3JtIGlkPW93bmVyPjwvZm9ybT4nICsKICAgICAnPGJ1dHRvbiBuYW1lPXZp
Y3RpbSBmb3JtPW93bmVyIC8+JyArCiAgICAgJzxmaWVsZHNldCBuYW1lPXZpY3RpbSBmb3JtPW93
bmVyIC8+JyArCkBAIC00MywxMCArNDIsMTQgQEAgZGVidWcoJy0gRW5zdXJlcyB0aGF0IHRoZSBm
b3JtIGF0dHJpYnV0ZSBwb2ludHMgdGhlIGZvcm0gb3duZXIgZXZlbiBpZiB0aGUgZWxlbWUKIGNv
bnRhaW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9b3duZXI+PC9mb3JtPicgKwogICAgICc8Zm9y
bSBpZD1zaG91bGROb3RCZU93bmVyPicgKwogICAgICcgICAgPGlucHV0IGlkPWlucHV0RWxlbWVu
dCBuYW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCisgICAgJyAgICA8bGFiZWwgaWQ9bGFiZWxF
bGVtZW50IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsKICAgICAnPC9mb3JtPic7CiBvd25l
ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25lcicpOwogdmFyIGlucHV0RWxlbWVudCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQnKTsKK3ZhciBsYWJlbEVsZW1l
bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVtZW50Jyk7CiBzaG91bGRCZSgn
aW5wdXRFbGVtZW50LmZvcm0nLCAnb3duZXInKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9y
bScsICdvd25lcicpOworCiAKIGRlYnVnKCcnKTsKIGRlYnVnKCctIEVuc3VyZXMgdGhhdCB0aGUg
Zm9ybSBhdHRyaWJ1dGUgb2YgYWxsIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50IHdpdGggb3Igd2l0
b3V0IGZvcm0gYXR0cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25lci4nKTsKQEAgLTU0LDE0ICs1
NywyMyBAQCBjb250YWluZXIuaW5uZXJIVE1MID0gJzxmb3JtIGlkPW93bmVyPicgKwogICAgICcg
ICAgPGlucHV0IGlkPWlucHV0RWxlbWVudDEgbmFtZT12aWN0aW0gLz4nICsKICAgICAnICAgIDxp
bnB1dCBpZD1pbnB1dEVsZW1lbnQyIG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsKICAgICAn
ICAgIDxpbnB1dCBpZD1pbnB1dEVsZW1lbnQzIG5hbWU9dmljdGltIC8+JyArCisgICAgJyAgICA8
bGFiZWwgaWQ9bGFiZWxFbGVtZW50MSBuYW1lPXZpY3RpbSAvPicgKworICAgICcgICAgPGxhYmVs
IGlkPWxhYmVsRWxlbWVudDIgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKworICAgICcgICAg
PGxhYmVsIGlkPWxhYmVsRWxlbWVudDMgbmFtZT12aWN0aW0gLz4nICsKICAgICAnPC9mb3JtPic7
CiBvd25lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25lcicpOwogdmFyIGlucHV0RWxl
bWVudDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXRFbGVtZW50MScpOwogdmFyIGlu
cHV0RWxlbWVudDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXRFbGVtZW50MicpOwog
dmFyIGlucHV0RWxlbWVudDMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXRFbGVtZW50
MycpOwordmFyIGxhYmVsRWxlbWVudDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWxF
bGVtZW50MScpOwordmFyIGxhYmVsRWxlbWVudDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
bGFiZWxFbGVtZW50MicpOwordmFyIGxhYmVsRWxlbWVudDMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnbGFiZWxFbGVtZW50MycpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDEuZm9ybScsICdv
d25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDIuZm9ybScsICdvd25lcicpOwogc2hvdWxk
QmUoJ2lucHV0RWxlbWVudDMuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVu
dDEuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDIuZm9ybScsICdvd25l
cicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDMuZm9ybScsICdvd25lcicpOwogCiBkZWJ1Zygn
Jyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHRoYXQgdGhlIGZvcm0gYXR0cmlidXRlIHBvaW50cyB0aGUg
Zm9ybSBvd25lciBldmVuIGlmIHRoZSBmb3JtIGVsZW1lbnQgaXMgbmVzdGVkIGFub3RoZXIgZm9y
bSBlbGVtZW50LicpOwpAQCAtNzEsMjEgKzgzLDMxIEBAIGNvbnRhaW5lci5pbm5lckhUTUwgPSAn
PGZvcm0gaWQ9b3duZXI+JyArCiAgICAgJyAgICAgICAgPGlucHV0IGlkPWlucHV0RWxlbWVudDEg
bmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwogICAgICcgICAgICAgIDxpbnB1dCBpZD1pbnB1
dEVsZW1lbnQyIG5hbWU9dmljdGltIC8+JyArCiAgICAgJyAgICAgICAgPGlucHV0IGlkPWlucHV0
RWxlbWVudDMgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKworICAgICcgICAgICAgIDxsYWJl
bCBpZD1sYWJlbEVsZW1lbnQxIG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsKKyAgICAnICAg
ICAgICA8bGFiZWwgaWQ9bGFiZWxFbGVtZW50MiBuYW1lPXZpY3RpbSAvPicgKworICAgICcgICAg
ICAgIDxsYWJlbCBpZD1sYWJlbEVsZW1lbnQzIG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsK
ICAgICAnICAgIDwvZm9ybT4nICsKICAgICAnPC9mb3JtPic7CiBvd25lciA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdvd25lcicpOwogaW5wdXRFbGVtZW50MSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdpbnB1dEVsZW1lbnQxJyk7CiBpbnB1dEVsZW1lbnQyID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ2lucHV0RWxlbWVudDInKTsKIGlucHV0RWxlbWVudDMgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnaW5wdXRFbGVtZW50MycpOworbGFiZWxFbGVtZW50MSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQxJyk7CitsYWJlbEVsZW1lbnQyID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2xhYmVsRWxlbWVudDInKTsKK2xhYmVsRWxlbWVudDMgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVtZW50MycpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVu
dDEuZm9ybScsICdvd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDIuZm9ybScsICdvd25l
cicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDMuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUo
J2xhYmVsRWxlbWVudDEuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDIu
Zm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDMuZm9ybScsICdvd25lcicp
OwogCiBkZWJ1ZygnJyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHdoZXRoZXIgdGhlIGZvcm0gb3duZXIg
aXMgc2V0IGNvcnJlY3RseSB3aGVuIHRoZSB2YWx1ZSBvZiBmb3JtIGF0dHJpYnV0ZSBvZiBhIGZv
cm0tYXNzb2NpYXRlZCBlbGVtZW50IGNoYW5nZWQuJyk7CiBjb250YWluZXIuaW5uZXJIVE1MID0g
Jzxmb3JtIGlkPWZvcm0xPjwvZm9ybT4nICsKICAgICAnPGZvcm0gaWQ9Zm9ybTI+PC9mb3JtPicg
KwogICAgICc8aW5wdXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmljdGltIGZvcm09Zm9ybTEgLz4n
ICsKKyAgICAnPGxhYmVsIGlkPWxhYmVsRWxlbWVudCBuYW1lPXZpY3RpbSBmb3JtPWZvcm0xIC8+
JyArCiAgICAgJzxvYmplY3QgaWQ9b2JqZWN0RWxlbWVudCBuYW1lPXZpY3RpbSBmb3JtPWZvcm0x
Pjwvb2JqZWN0Pic7CiB2YXIgZm9ybTEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZm9ybTEn
KTsKIHZhciBmb3JtMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmb3JtMicpOwpAQCAtOTQs
NiArMTE2LDEyIEBAIHNob3VsZEJlKCdpbnB1dEVsZW1lbnQuZm9ybScsICdmb3JtMScpOwogaW5w
dXRFbGVtZW50LmF0dHJpYnV0ZXNbJ2Zvcm0nXS52YWx1ZSA9ICdmb3JtMic7CiBzaG91bGRCZSgn
aW5wdXRFbGVtZW50LmZvcm0nLCAnZm9ybTInKTsKIAorLy8gSFRNTGFiZWxFbGVtZW50IGhhcyBp
dHMgb3duIGltcGxlbWVudGF0aW9uIG9mIGZvcm1BdHRyIHByb2Nlc3NpbmcgYW5kIHNvIG5lZWRz
IGl0cyBvd24gdGVzdC4KK2xhYmVsRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCds
YWJlbEVsZW1lbnQnKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9ybScsICdmb3JtMScpOwor
bGFiZWxFbGVtZW50LmF0dHJpYnV0ZXNbJ2Zvcm0nXS52YWx1ZSA9ICdmb3JtMic7CitzaG91bGRC
ZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnZm9ybTInKTsKKwogLy8gSFRNTE9iamVjdEVsZW1lbnQg
aGFzIGl0cyBvd24gaW1wbGVtZW50YXRpb24gb2YgZm9ybUF0dHIgcHJvY2Vzc2luZyBhbmQgc28g
bmVlZHMgaXRzIG93biB0ZXN0Lgogb2JqZWN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdvYmplY3RFbGVtZW50Jyk7CiBzaG91bGRCZSgnb2JqZWN0RWxlbWVudC5mb3JtJywgJ2Zv
cm0xJyk7CkBAIC0xMDQsNiArMTMyLDcgQEAgZGVidWcoJycpOwogZGVidWcoJy0gRW5zdXJlcyB3
aGV0aGVyIHRoZSBmb3JtIG93bmVyIGlzIHNldCBjb3JyZWN0bHkgd2hlbiB0aGUgdmFsdWUgb2Yg
Zm9ybSBhdHRyaWJ1dGUgaXMgYWRkZWQvcmVtb3ZlZC4nKTsKIGNvbnRhaW5lci5pbm5lckhUTUwg
PSAnPGZvcm0gaWQ9b3duZXIgbmFtZT1maXJzdE93bmVyPjwvZm9ybT4nICsKICAgICAnPGlucHV0
IGlkPWlucHV0RWxlbWVudCBuYW1lPXZpY3RpbSAvPicgKworICAgICc8bGFiZWwgaWQ9bGFiZWxF
bGVtZW50IG5hbWU9dmljdGltIC8+JyArCiAgICAgJzxvYmplY3QgaWQ9b2JqZWN0RWxlbWVudCBu
YW1lPXZpY3RpbT48L29iamVjdD4nOwogb3duZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
b3duZXInKTsKIGlucHV0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVs
ZW1lbnQnKTsKQEAgLTExNCw2ICsxNDMsMTQgQEAgc2hvdWxkQmUoJ2lucHV0RWxlbWVudC5mb3Jt
JywgJ293bmVyJyk7CiBpbnB1dEVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdmb3JtJyk7CiBzaG91
bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0nLCAnbnVsbCcpOwogCisvLyBIVE1MTGFiZWxFbGVtZW50
IGhhcyBpdHMgb3duIGltcGxlbWVudGF0aW9uIG9mIGZvcm1BdHRyIHByb2Nlc3NpbmcgYW5kIHNv
IG5lZWRzIGl0cyBvd24gdGVzdC4KK2xhYmVsRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdsYWJlbEVsZW1lbnQnKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9ybScsICdudWxs
Jyk7CitsYWJlbEVsZW1lbnQuc2V0QXR0cmlidXRlKCdmb3JtJywgJ293bmVyJyk7CitzaG91bGRC
ZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnb3duZXInKTsKK2xhYmVsRWxlbWVudC5yZW1vdmVBdHRy
aWJ1dGUoJ2Zvcm0nKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9ybScsICdudWxsJyk7CisK
IC8vIEhUTUxPYmplY3RFbGVtZW50IGhhcyBpdHMgb3duIGltcGxlbWVudGF0aW9uIG9mIGZvcm1B
dHRyIHByb2Nlc3NpbmcgYW5kIHNvIG5lZWRzIGl0cyBvd24gdGVzdC4KIG9iamVjdEVsZW1lbnQg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb2JqZWN0RWxlbWVudCcpOwogc2hvdWxkQmUoJ29i
amVjdEVsZW1lbnQuZm9ybScsICdudWxsJyk7CkBAIC0xMjYsMTggKzE2MywyMyBAQCBkZWJ1Zygn
Jyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHdoZXRoZXIgdGhlIGZvcm0gb3duZXIgaXMgc2V0IGNvcnJl
Y3RseSB3aGVuIHRoZSBmb3JtIG93bmVyIGlzIGFkZGVkL3JlbW92ZWQuJyk7CiBjb250YWluZXIu
aW5uZXJIVE1MID0gJzxmb3JtIGlkPW93bmVyIG5hbWU9Zmlyc3RPd25lcj48L2Zvcm0+JyArCiAg
ICAgJzxmb3JtIGlkPW93bmVyIG5hbWU9c2Vjb25kT3duZXI+PC9mb3JtPicgKwotICAgICc8aW5w
dXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nOworICAgICc8aW5w
dXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsKKyAgICAnPGxh
YmVsIGlkPWxhYmVsRWxlbWVudCBuYW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JzsKIG93bmVyID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ293bmVyJyk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmco
J293bmVyLm5hbWUnLCAnZmlyc3RPd25lcicpOwogaW5wdXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2lucHV0RWxlbWVudCcpOworbGFiZWxFbGVtZW50ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2xhYmVsRWxlbWVudCcpOwogY29udGFpbmVyLnJlbW92ZUNoaWxkKG93bmVy
KTsKIG93bmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ293bmVyJyk7CiBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoJ293bmVyLm5hbWUnLCAnc2Vjb25kT3duZXInKTsKIHNob3VsZEJlKCdpbnB1
dEVsZW1lbnQuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudC5mb3JtJywg
J293bmVyJyk7CiBjb250YWluZXIucmVtb3ZlQ2hpbGQob3duZXIpOwogc2hvdWxkQmUoJ2lucHV0
RWxlbWVudC5mb3JtJywgJ251bGwnKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQuZm9ybScsICdu
dWxsJyk7CiBjb250YWluZXIuYXBwZW5kQ2hpbGQob3duZXIpOwogc2hvdWxkQmUoJ2lucHV0RWxl
bWVudC5mb3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnb3du
ZXInKTsKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132210</attachid>
            <date>2012-03-15 23:23:55 -0700</date>
            <delta_ts>2012-03-16 06:05:52 -0700</delta_ts>
            <desc>Patch 4</desc>
            <filename>bug-80499-20120316152353.patch</filename>
            <type>text/plain</type>
            <size>20344</size>
            <attacher>yosin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwOTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDIzYjJjNWRlOTVlMTMw
MGExMDg5YjkyY2U2ZDRkNjJiYWY3MDUxZS4uNDE3MDBhODNjOGQ0OTJjNDE3ZTM5ZTMzOTc1MTNm
ZjAxOGVjOGQ4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTAzLTE0ICBZb3No
aWZ1bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Zvcm1zXSBsYWJl
bC5mb3JtIGF0dHJpYnV0ZSBkb2Vzbid0IHdvcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjaGFuZ2VzIGltcGxlbWVudGF0aW9uIG9m
IGxhYmVsLmZvcm0gb2YgSURMIGF0dHJpYnV0ZSB0bworICAgICAgICBjb21wdXRlIGl0IHRvIHRo
ZSBmb3JtIGVsZW1lbnQgc3BlY2lmaWVkIGJ5IHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUKKyAg
ICAgICAgb3IgZm9ybSBhbmNlc3RvciB3aGVuIHRoZSAiZm9ybSIgSFRNTCBhdHRyaWJ1dGUgaXNu
J3QgaW4gSFRNTC4KKworICAgICAgICBUaGlzIHBhdGNoIGludHJvZHVjZXMgbmV3IGZ1bmN0aW9u
IEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3JtCisgICAgICAgIGZvciBz
aGFyaW5nIGNvZGUgYW1vbmcgRm9ybUFzc29jaWF0ZUVsZW1lbnQ6Omluc2VydGVkSW50b1RyZWUs
IHJlc2V0Rm9ybU93bmVyCisgICAgICAgIGFuZCBIVE1MTGFiZWxFbGVtZW50Ojpmb3JtLgorCisg
ICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICog
aHRtbC9Gb3JtQXNzb2NpYXRlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFz
c29jaWF0ZWRFbGVtZW50OjpmaW5kQXNzb2NpYXRlZEZvcm0pOiBBZGRlZC4KKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybUFzc29jaWF0ZWRFbGVtZW50OjppbnNlcnRl
ZEludG9UcmVlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6cmVz
ZXRGb3JtT3duZXIpOgorICAgICAgICAqIGh0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50Lmg6Cisg
ICAgICAgIChGb3JtQXNzb2NpYXRlZEVsZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVs
RWxlbWVudC5jcHA6IFJlbW92ZSB1bnVzZWQgaW5jbHVkZSBmaWxlcworICAgICAgICAoV2ViQ29y
ZTo6SFRNTExhYmVsRWxlbWVudDo6Zm9ybSk6IEFkZGVkLgorCiAyMDEyLTAzLTE1ICBZb3NoaWZ1
bWkgSW5vdWUgIDx5b3NpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Zvcm1zXSBUaGUgIm1l
dGVyIiBlbGVtZW50IHNob3VsZCBub3QgYmUgYSBmb3JtLWFzc29jaWF0ZWQgZWxlbWVudC4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmNwcAppbmRleCBlN2Vi
ZWJlNzJjMjc2YzYwMjk5ZmUyN2FmMGQ0ZTYzZGEyOGQ4NjRjLi44NmIyYjY0OGFjZWY1NmUwODI1
Y2NjNGYxZGZhZmVjYWQ2YzUwZWZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zv
cm1Bc3NvY2lhdGVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Gb3JtQXNz
b2NpYXRlZEVsZW1lbnQuY3BwCkBAIC03NCw2ICs3NCwyNyBAQCB2b2lkIEZvcm1Bc3NvY2lhdGVk
RWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpCiAgICAgICAgIGVsZW1lbnQtPmRvY3VtZW50
KCktPnVucmVnaXN0ZXJGb3JtRWxlbWVudFdpdGhGb3JtQXR0cmlidXRlKHRoaXMpOwogfQogCitI
VE1MRm9ybUVsZW1lbnQqIEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3Jt
KGNvbnN0IEhUTUxFbGVtZW50KiBlbGVtZW50LCBIVE1MRm9ybUVsZW1lbnQqIGN1cnJlbnRBc3Nv
Y2lhdGVkRm9ybSkKK3sKKyAgICBjb25zdCBBdG9taWNTdHJpbmcmIGZvcm1JZChlbGVtZW50LT5m
YXN0R2V0QXR0cmlidXRlKGZvcm1BdHRyKSk7CisgICAgaWYgKCFmb3JtSWQuaXNOdWxsKCkgJiYg
ZWxlbWVudC0+aW5Eb2N1bWVudCgpKSB7CisgICAgICAgIC8vIFRoZSBIVE1MNSBzcGVjIHNheXMg
dGhhdCB0aGUgZWxlbWVudCBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoCisgICAgICAgIC8vIHRo
ZSBmaXJzdCBlbGVtZW50IGluIHRoZSBkb2N1bWVudCB0byBoYXZlIGFuIElEIHRoYXQgZXF1YWwg
dG8KKyAgICAgICAgLy8gdGhlIHZhbHVlIG9mIGZvcm0gYXR0cmlidXRlLCBzbyB3ZSBwdXQgdGhl
IHJlc3VsdCBvZgorICAgICAgICAvLyB0cmVlU2NvcGUoKS0+Z2V0RWxlbWVudEJ5SWQoKSBvdmVy
IHRoZSBnaXZlbiBlbGVtZW50LgorICAgICAgICBIVE1MRm9ybUVsZW1lbnQqIG5ld0Zvcm0gPSAw
OworICAgICAgICBFbGVtZW50KiBuZXdGb3JtQ2FuZGlkYXRlID0gZWxlbWVudC0+dHJlZVNjb3Bl
KCktPmdldEVsZW1lbnRCeUlkKGZvcm1JZCk7CisgICAgICAgIGlmIChuZXdGb3JtQ2FuZGlkYXRl
ICYmIG5ld0Zvcm1DYW5kaWRhdGUtPmhhc1RhZ05hbWUoZm9ybVRhZykpCisgICAgICAgICAgICBu
ZXdGb3JtID0gc3RhdGljX2Nhc3Q8SFRNTEZvcm1FbGVtZW50Kj4obmV3Rm9ybUNhbmRpZGF0ZSk7
CisgICAgICAgIHJldHVybiBuZXdGb3JtOworICAgIH0KKworICAgIGlmICghY3VycmVudEFzc29j
aWF0ZWRGb3JtKQorICAgICAgICByZXR1cm4gZWxlbWVudC0+ZmluZEZvcm1BbmNlc3RvcigpOwor
CisgICAgcmV0dXJuIGN1cnJlbnRBc3NvY2lhdGVkRm9ybTsKK30KKwogdm9pZCBGb3JtQXNzb2Np
YXRlZEVsZW1lbnQ6Omluc2VydGVkSW50b1RyZWUoKQogewogICAgIHJlc2V0Rm9ybU93bmVyKCk7
CkBAIC0xMzAsMjQgKzE1MSw3IEBAIHZvaWQgRm9ybUFzc29jaWF0ZWRFbGVtZW50Ojpmb3JtV2ls
bEJlRGVzdHJveWVkKCkKIAogdm9pZCBGb3JtQXNzb2NpYXRlZEVsZW1lbnQ6OnJlc2V0Rm9ybU93
bmVyKCkKIHsKLSAgICBIVE1MRWxlbWVudCogZWxlbWVudCA9IHRvSFRNTEVsZW1lbnQodGhpcyk7
Ci0gICAgY29uc3QgQXRvbWljU3RyaW5nJiBmb3JtSWQoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0
ZShmb3JtQXR0cikpOwotICAgIGlmIChtX2Zvcm0pIHsKLSAgICAgICAgaWYgKGZvcm1JZC5pc051
bGwoKSkKLSAgICAgICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgSFRNTEZvcm1FbGVtZW50KiBu
ZXdGb3JtID0gMDsKLSAgICBpZiAoIWZvcm1JZC5pc051bGwoKSAmJiBlbGVtZW50LT5pbkRvY3Vt
ZW50KCkpIHsKLSAgICAgICAgLy8gVGhlIEhUTUw1IHNwZWMgc2F5cyB0aGF0IHRoZSBlbGVtZW50
IHNob3VsZCBiZSBhc3NvY2lhdGVkIHdpdGgKLSAgICAgICAgLy8gdGhlIGZpcnN0IGVsZW1lbnQg
aW4gdGhlIGRvY3VtZW50IHRvIGhhdmUgYW4gSUQgdGhhdCBlcXVhbCB0bwotICAgICAgICAvLyB0
aGUgdmFsdWUgb2YgZm9ybSBhdHRyaWJ1dGUsIHNvIHdlIHB1dCB0aGUgcmVzdWx0IG9mCi0gICAg
ICAgIC8vIHRyZWVTY29wZSgpLT5nZXRFbGVtZW50QnlJZCgpIG92ZXIgdGhlIGdpdmVuIGVsZW1l
bnQuCi0gICAgICAgIEVsZW1lbnQqIGZpcnN0RWxlbWVudCA9IGVsZW1lbnQtPnRyZWVTY29wZSgp
LT5nZXRFbGVtZW50QnlJZChmb3JtSWQpOwotICAgICAgICBpZiAoZmlyc3RFbGVtZW50ICYmIGZp
cnN0RWxlbWVudC0+aGFzVGFnTmFtZShmb3JtVGFnKSkKLSAgICAgICAgICAgIG5ld0Zvcm0gPSBz
dGF0aWNfY2FzdDxIVE1MRm9ybUVsZW1lbnQqPihmaXJzdEVsZW1lbnQpOwotICAgIH0gZWxzZQot
ICAgICAgICBuZXdGb3JtID0gZWxlbWVudC0+ZmluZEZvcm1BbmNlc3RvcigpOwotICAgIHNldEZv
cm0obmV3Rm9ybSk7CisgICAgc2V0Rm9ybShmaW5kQXNzb2NpYXRlZEZvcm0odG9IVE1MRWxlbWVu
dCh0aGlzKSwgbV9mb3JtKSk7CiB9CiAKIHZvaWQgRm9ybUFzc29jaWF0ZWRFbGVtZW50Ojpmb3Jt
QXR0cmlidXRlQ2hhbmdlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0Zvcm1B
c3NvY2lhdGVkRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9Gb3JtQXNzb2NpYXRlZEVs
ZW1lbnQuaAppbmRleCBiMzM2ZjM3M2MxNjYyMjBmZWFmMGZhZDY0MjVhNDEzNmQ2OTY4ZmFiLi5i
MmEzNWU5YzhhZTlmY2ZiZGM0ZDM2MzYwYWYzOTk2NTcwMjMyMWRlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0Zvcm1Bc3NvY2lhdGVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvRm9ybUFzc29jaWF0ZWRFbGVtZW50LmgKQEAgLTQxLDYgKzQxLDcgQEAgcHVibGlj
OgogICAgIHZvaWQgcmVmKCkgeyByZWZGb3JtQXNzb2NpYXRlZEVsZW1lbnQoKTsgfQogICAgIHZv
aWQgZGVyZWYoKSB7IGRlcmVmRm9ybUFzc29jaWF0ZWRFbGVtZW50KCk7IH0KIAorICAgIHN0YXRp
YyBIVE1MRm9ybUVsZW1lbnQqIGZpbmRBc3NvY2lhdGVkRm9ybShjb25zdCBIVE1MRWxlbWVudCos
IEhUTUxGb3JtRWxlbWVudCopOwogICAgIEhUTUxGb3JtRWxlbWVudCogZm9ybSgpIGNvbnN0IHsg
cmV0dXJuIG1fZm9ybTsgfQogICAgIFZhbGlkaXR5U3RhdGUqIHZhbGlkaXR5KCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IGQ4OGU3MzczZGQyYzBhODA2
YTc2M2NlOTc3YjY2N2FlNTc2NmNhOTcuLmMxMDIxYjM1ODdkYjg4YmE2NzdmMmRhNmExY2Y2NjQ0
YTg5ZjRmMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcApAQCAt
MjgsNyArMjgsNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIK
ICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCi0jaW5jbHVkZSAiTGFiZWxhYmxlRWxlbWVudC5oIgor
I2luY2x1ZGUgIkZvcm1Bc3NvY2lhdGVkRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04Nyw2ICs4NywxMSBAQCBMYWJlbGFibGVFbGVt
ZW50KiBIVE1MTGFiZWxFbGVtZW50Ojpjb250cm9sKCkKICAgICByZXR1cm4gbm9kZUFzTGFiZWxh
YmxlRWxlbWVudCh0cmVlU2NvcGUoKS0+Z2V0RWxlbWVudEJ5SWQoY29udHJvbElkKSk7CiB9CiAK
K0hUTUxGb3JtRWxlbWVudCogSFRNTExhYmVsRWxlbWVudDo6Zm9ybSgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIEZvcm1Bc3NvY2lhdGVkRWxlbWVudDo6ZmluZEFzc29jaWF0ZWRGb3JtKHRoaXMsIDAp
OworfQorCiB2b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OnNldEFjdGl2ZShib29sIGRvd24sIGJvb2wg
cGF1c2UpCiB7CiAgICAgaWYgKGRvd24gPT0gYWN0aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExhYmVsRWxlbWVudC5oCmluZGV4IDFiNzdhYTJkNTYzOTJjZGEyZTk4NGNjMWJkMGU4NjVjOTYw
MDkyNmIuLmE4MjFiMjUwNzdhMTllYzRkNTg4MjQ0NTZkMjIwNWI3MmMzNGRmMmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCkBAIC0zNCw2ICszNCw3IEBAIHB1YmxpYzoK
ICAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MTGFiZWxFbGVtZW50PiBjcmVhdGUoY29uc3QgUXVh
bGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CiAKICAgICBMYWJlbGFibGVFbGVtZW50KiBjb250cm9s
KCk7CisgICAgSFRNTEZvcm1FbGVtZW50KiBmb3JtKCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAg
SFRNTExhYmVsRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCAyOGVhYTJlMjNmMzFiZmEzNDlkMDAwYjUxZTQ2MmE5MTkyZWI5YzM0Li5iMGQwM2VhZDAwZDMw
N2RjZjgwMjEwZGExNzhjNDFiNTJmY2MwM2UzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTIt
MDMtMTQgIFlvc2hpZnVtaSBJbm91ZSAgPHlvc2luQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Rm9ybXNdIGxhYmVsLmZvcm0gYXR0cmlidXRlIGRvZXNuJ3Qgd29yaworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA0OTkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIHVwZGF0ZXMgdGVzdCBj
YXNlcyBhbmQgZXhwZWN0YXRpb24gZm9yIGZ1bmN0aW9uYWwgCisgICAgICAgICJmb3JtIiBhdHRy
aWJ1dGUgb2YgdGhlICJsYWJlbCIgZWxlbWVudC4KKworICAgICAgICAqIGZhc3QvZm9ybXMvZm9y
bS1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9ybXMvZm9ybS1hdHRy
aWJ1dGUtbm9uZXhpc3RlbmNlLWZvcm0taWQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qv
Zm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9uZXhpc3RlbmNlLWZvcm0taWQuaHRtbDoKKyAgICAgICAg
KiBmYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLmh0bWw6CisKIDIwMTItMDMtMTUgIFlvc2hpZnVt
aSBJbm91ZSAgPHlvc2luQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbRm9ybXNdIFRoZSAibWV0
ZXIiIGVsZW1lbnQgc2hvdWxkIG5vdCBiZSBhIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dApp
bmRleCAwMzkyZTFiNTNjZjA0ZWNkMzA5YTBiN2EwN2RhYmJkNTFiZjk4MjJhLi5iMTAyMDg5Mjcx
OTEzNTY4N2VkYTQ5ZjMxMWFlZjM1YjE1NTQ3NWJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Zvcm1zL2Zvcm0tYXR0cmlidXRlLWV4cGVjdGVkLnR4dApAQCAtNCwxMiArNCwxMSBAQCBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURQogCiAKIC0gQ2hlY2tzIHRoZSBleGlzdGVuY2Ugb2YgdGhl
IGZvcm0gYXR0cmlidXRlIGZvciBlYWNoIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50cy4KLUZJWE1F
OiA8bGFiZWw+IGRvZXNuJ3Qgc3VwcG9ydCB0aGUgZm9ybSBhdHRyaWJ1dGUgZm9yIG5vdy4KIFBB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJ1dHRvbiIpWzBdLmZvcm0gaXMgb3du
ZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImZpZWxkc2V0IilbMF0uZm9y
bSBpcyBvd25lcgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW5wdXQiKVsw
XS5mb3JtIGlzIG93bmVyCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJrZXln
ZW4iKVswXS5mb3JtIGlzIG93bmVyCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1l
KCJsYWJlbCIpWzBdLmZvcm0gc2hvdWxkIGJlIFtvYmplY3QgSFRNTEZvcm1FbGVtZW50XS4gV2Fz
IG51bGwuCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsYWJlbCIpWzBdLmZv
cm0gaXMgb3duZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm9iamVjdCIp
WzBdLmZvcm0gaXMgb3duZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIm91
dHB1dCIpWzBdLmZvcm0gaXMgb3duZXIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05h
bWUoInByb2dyZXNzIilbMF0uZm9ybSBpcyBvd25lcgpAQCAtMTgsMjEgKzE3LDMwIEBAIFBBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRleHRhcmVhIilbMF0uZm9ybSBpcyBvd25l
cgogCiAtIEVuc3VyZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUgcG9pbnRzIHRoZSBmb3JtIG93
bmVyIGV2ZW4gaWYgdGhlIGVsZW1lbnQgaXMgd2l0aGluIGFub3RoZXIgZm9ybSBlbGVtZW50Lgog
UEFTUyBpbnB1dEVsZW1lbnQuZm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBp
cyBvd25lcgogCiAtIEVuc3VyZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUgb2YgYWxsIGZvcm0t
YXNzb2NpYXRlZCBlbGVtZW50IHdpdGggb3Igd2l0b3V0IGZvcm0gYXR0cmlidXRlIHBvaW50cyB0
aGUgZm9ybSBvd25lci4KIFBBU1MgaW5wdXRFbGVtZW50MS5mb3JtIGlzIG93bmVyCiBQQVNTIGlu
cHV0RWxlbWVudDIuZm9ybSBpcyBvd25lcgogUEFTUyBpbnB1dEVsZW1lbnQzLmZvcm0gaXMgb3du
ZXIKK1BBU1MgbGFiZWxFbGVtZW50MS5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxlbWVudDIu
Zm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKIAogLSBFbnN1
cmVzIHRoYXQgdGhlIGZvcm0gYXR0cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25lciBldmVuIGlm
IHRoZSBmb3JtIGVsZW1lbnQgaXMgbmVzdGVkIGFub3RoZXIgZm9ybSBlbGVtZW50LgogTk9URTog
SXQgc2VlbXMgdGhhdCBuZXN0aW5nIGZvcm0gZWxlbWVudHMgaXMgbm90IGFsbG93ZWQgc28gd2Ug
ZW5zdXJlIGVhY2ggZm9ybS1hc3NvY2lhdGVkIGVsZW1lbnRzIGFzc29jaWF0ZSB3aXRoIHRoZSBv
dXRtb3N0IGZvcm0gZWxlbWVudC4KIFBBU1MgaW5wdXRFbGVtZW50MS5mb3JtIGlzIG93bmVyCiBQ
QVNTIGlucHV0RWxlbWVudDIuZm9ybSBpcyBvd25lcgogUEFTUyBpbnB1dEVsZW1lbnQzLmZvcm0g
aXMgb3duZXIKK1BBU1MgbGFiZWxFbGVtZW50MS5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxl
bWVudDIuZm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQzLmZvcm0gaXMgb3duZXIKIAog
LSBFbnN1cmVzIHdoZXRoZXIgdGhlIGZvcm0gb3duZXIgaXMgc2V0IGNvcnJlY3RseSB3aGVuIHRo
ZSB2YWx1ZSBvZiBmb3JtIGF0dHJpYnV0ZSBvZiBhIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50IGNo
YW5nZWQuCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIGZvcm0xCiBQQVNTIGlucHV0RWxlbWVu
dC5mb3JtIGlzIGZvcm0yCitQQVNTIGxhYmVsRWxlbWVudC5mb3JtIGlzIGZvcm0xCitQQVNTIGxh
YmVsRWxlbWVudC5mb3JtIGlzIGZvcm0yCiBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBpcyBmb3Jt
MQogUEFTUyBvYmplY3RFbGVtZW50LmZvcm0gaXMgZm9ybTIKIApAQCAtNDAsNiArNDgsOSBAQCBQ
QVNTIG9iamVjdEVsZW1lbnQuZm9ybSBpcyBmb3JtMgogUEFTUyBpbnB1dEVsZW1lbnQuZm9ybSBp
cyBudWxsCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIG93bmVyCiBQQVNTIGlucHV0RWxlbWVu
dC5mb3JtIGlzIG51bGwKK1BBU1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgbnVsbAorUEFTUyBsYWJl
bEVsZW1lbnQuZm9ybSBpcyBvd25lcgorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBudWxsCiBQ
QVNTIG9iamVjdEVsZW1lbnQuZm9ybSBpcyBudWxsCiBQQVNTIG9iamVjdEVsZW1lbnQuZm9ybSBp
cyBvd25lcgogUEFTUyBvYmplY3RFbGVtZW50LmZvcm0gaXMgbnVsbApAQCAtNDgsOCArNTksMTEg
QEAgUEFTUyBvYmplY3RFbGVtZW50LmZvcm0gaXMgbnVsbAogUEFTUyBvd25lci5uYW1lIGlzICJm
aXJzdE93bmVyIgogUEFTUyBvd25lci5uYW1lIGlzICJzZWNvbmRPd25lciIKIFBBU1MgaW5wdXRF
bGVtZW50LmZvcm0gaXMgb3duZXIKK1BBU1MgbGFiZWxFbGVtZW50LmZvcm0gaXMgb3duZXIKIFBB
U1MgaW5wdXRFbGVtZW50LmZvcm0gaXMgbnVsbAorUEFTUyBsYWJlbEVsZW1lbnQuZm9ybSBpcyBu
dWxsCiBQQVNTIGlucHV0RWxlbWVudC5mb3JtIGlzIG93bmVyCitQQVNTIGxhYmVsRWxlbWVudC5m
b3JtIGlzIG93bmVyCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09N
UExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUt
bm9uZXhpc3RlbmNlLWZvcm0taWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQKaW5kZXgg
YTViNWNkZmUwMmQ0MDZjYmYyOTViNTlkNzc3M2MyOTFmY2Q4ZjAxMC4uNjRiZmQzNWNlYmIzZWFi
NmFkYzZlNTBjOTM5MDRjZWVhOTI2MTM4OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9m
b3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9ybS1pZC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlzdGVuY2UtZm9y
bS1pZC1leHBlY3RlZC50eHQKQEAgLTEsMTAgKzEsMTMgQEAKLVRoaXMgcGFnZSBlbnN1cmVzIHRo
YXQgPGlucHV0IGZyb209IlgiPiBkb24ndCBhc3NvY2lhdGUgd2l0aCBhbnkgZm9ybSBlbGVtZW50
cyB3aGVuIHRoZXJlIGlzIG5vIDxmb3JtIGlkPSJYIj4uCitUaGlzIHBhZ2UgZW5zdXJlcyB0aGF0
IDxpbnB1dCBmcm9tPSJYIj4gYW5kIDxsYWJlbCBmcm9tPSJYIj4gZG9uJ3QgYXNzb2NpYXRlIHdp
dGggYW55IGZvcm0gZWxlbWVudHMgd2hlbiB0aGVyZSBpcyBubyA8Zm9ybSBpZD0iWCI+LgogCiBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCiAKIAotUEFTUyBlbGVtZW50U2hvdWxkSGF2ZUZvcm0u
Zm9ybSBpcyBmb3JtCi1QQVNTIGVsZW1lbnRTaG91bGROb3RIYXZlRm9ybS5mb3JtIGlzIG51bGwK
K2xhYmVsMSBsYWJlbDIKK1BBU1MgaW5wdXRTaG91bGRIYXZlRm9ybS5mb3JtIGlzIGZvcm0KK1BB
U1MgaW5wdXRTaG91bGROb3RIYXZlRm9ybS5mb3JtIGlzIG51bGwKK1BBU1MgbGFiZWxTaG91bGRI
YXZlRm9ybS5mb3JtIGlzIGZvcm0KK1BBU1MgbGFiZWxTaG91bGROb3RIYXZlRm9ybS5mb3JtIGlz
IG51bGwKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS1ub25leGlz
dGVuY2UtZm9ybS1pZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0
ZS1ub25leGlzdGVuY2UtZm9ybS1pZC5odG1sCmluZGV4IGQ1ODJiOWRhNmI5ZDhiNjVjYTk0MDQ1
NWZmOGY2YmNiNmFmNmVhMzAuLmExM2NhODMzOGE2OGFjY2VmMWZhZmExNWRiZjdhNzBhYjhhMmQ2
NGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9ybS1hdHRyaWJ1dGUtbm9u
ZXhpc3RlbmNlLWZvcm0taWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0t
YXR0cmlidXRlLW5vbmV4aXN0ZW5jZS1mb3JtLWlkLmh0bWwKQEAgLTgsMTYgKzgsMjIgQEAKIDxm
b3JtIGlkPSJmb3JtIj4KICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaW5wdXQxIiB2YWx1
ZT0idmFsdWUxIj4KICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iaW5wdXQyIiB2YWx1ZT0i
dmFsdWUyIiBmb3JtPSJYIj4KKyAgICA8bGFiZWwgaWQ9ImxhYmVsMSI+bGFiZWwxPC9sYWJlbD4K
KyAgICA8bGFiZWwgaWQ9ImxhYmVsMiIgZm9ybT0iWCI+bGFiZWwyPC9sYWJlbD4KIDwvZm9ybT4K
IDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgogPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCdUaGlzIHBh
Z2UgZW5zdXJlcyB0aGF0ICZsdDtpbnB1dCBmcm9tPSJYIiZndDsgZG9uXCd0IGFzc29jaWF0ZSB3
aXRoIGFueSBmb3JtIGVsZW1lbnRzIHdoZW4gdGhlcmUgaXMgbm8gJmx0O2Zvcm0gaWQ9IlgiJmd0
Oy4nKTsKK2Rlc2NyaXB0aW9uKCdUaGlzIHBhZ2UgZW5zdXJlcyB0aGF0ICZsdDtpbnB1dCBmcm9t
PSJYIiZndDsgYW5kICZsdDtsYWJlbCBmcm9tPSJYIiZndDsgZG9uXCd0IGFzc29jaWF0ZSB3aXRo
IGFueSBmb3JtIGVsZW1lbnRzIHdoZW4gdGhlcmUgaXMgbm8gJmx0O2Zvcm0gaWQ9IlgiJmd0Oy4n
KTsKIAogdmFyIGZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZm9ybScpOwotdmFyIGVs
ZW1lbnRTaG91bGRIYXZlRm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dDEnKTsK
LXZhciBlbGVtZW50U2hvdWxkTm90SGF2ZUZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
aW5wdXQyJyk7Ci1zaG91bGRCZSgnZWxlbWVudFNob3VsZEhhdmVGb3JtLmZvcm0nLCAnZm9ybScp
Owotc2hvdWxkQmVOdWxsKCdlbGVtZW50U2hvdWxkTm90SGF2ZUZvcm0uZm9ybScpOwordmFyIGlu
cHV0U2hvdWxkSGF2ZUZvcm0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXQxJyk7Cit2
YXIgaW5wdXRTaG91bGROb3RIYXZlRm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1
dDInKTsKK3ZhciBsYWJlbFNob3VsZEhhdmVGb3JtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2xhYmVsMScpOwordmFyIGxhYmVsU2hvdWxkTm90SGF2ZUZvcm0gPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgnbGFiZWwyJyk7CitzaG91bGRCZSgnaW5wdXRTaG91bGRIYXZlRm9ybS5mb3JtJywg
J2Zvcm0nKTsKK3Nob3VsZEJlTnVsbCgnaW5wdXRTaG91bGROb3RIYXZlRm9ybS5mb3JtJyk7Citz
aG91bGRCZSgnbGFiZWxTaG91bGRIYXZlRm9ybS5mb3JtJywgJ2Zvcm0nKTsKK3Nob3VsZEJlTnVs
bCgnbGFiZWxTaG91bGROb3RIYXZlRm9ybS5mb3JtJyk7CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgogPC9i
b2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb3JtLWF0dHJpYnV0ZS5odG1sCmluZGV4IDE0
MjE4ZjE0M2VhZmQxZGMwMTFhOGIwMDg3ODJkZDFlMzJmYjgyNjQuLjc5MDJiMGY5YTgyM2Q3OTll
ZWVmYzMxM2FlYWRiZDNlYWE5OGJlMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvZm9ybS1hdHRyaWJ1dGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Zvcm0t
YXR0cmlidXRlLmh0bWwKQEAgLTEzLDcgKzEzLDYgQEAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChjb250YWlu
ZXIpOwogCiBkZWJ1ZygnLSBDaGVja3MgdGhlIGV4aXN0ZW5jZSBvZiB0aGUgZm9ybSBhdHRyaWJ1
dGUgZm9yIGVhY2ggZm9ybS1hc3NvY2lhdGVkIGVsZW1lbnRzLicpOwotZGVidWcoJ0ZJWE1FOiAm
bHQ7bGFiZWwmZ3Q7IGRvZXNuXCd0IHN1cHBvcnQgdGhlIGZvcm0gYXR0cmlidXRlIGZvciBub3cu
Jyk7CiBjb250YWluZXIuaW5uZXJIVE1MID0gJzxmb3JtIGlkPW93bmVyPjwvZm9ybT4nICsKICAg
ICAnPGJ1dHRvbiBuYW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCiAgICAgJzxmaWVsZHNldCBu
YW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCkBAIC00MywxMCArNDIsMTQgQEAgZGVidWcoJy0g
RW5zdXJlcyB0aGF0IHRoZSBmb3JtIGF0dHJpYnV0ZSBwb2ludHMgdGhlIGZvcm0gb3duZXIgZXZl
biBpZiB0aGUgZWxlbWUKIGNvbnRhaW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9b3duZXI+PC9m
b3JtPicgKwogICAgICc8Zm9ybSBpZD1zaG91bGROb3RCZU93bmVyPicgKwogICAgICcgICAgPGlu
cHV0IGlkPWlucHV0RWxlbWVudCBuYW1lPXZpY3RpbSBmb3JtPW93bmVyIC8+JyArCisgICAgJyAg
ICA8bGFiZWwgaWQ9bGFiZWxFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3duZXIgLz4nICsKICAg
ICAnPC9mb3JtPic7CiBvd25lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25lcicpOwog
dmFyIGlucHV0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQn
KTsKK3ZhciBsYWJlbEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVt
ZW50Jyk7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0nLCAnb3duZXInKTsKK3Nob3VsZEJl
KCdsYWJlbEVsZW1lbnQuZm9ybScsICdvd25lcicpOworCiAKIGRlYnVnKCcnKTsKIGRlYnVnKCct
IEVuc3VyZXMgdGhhdCB0aGUgZm9ybSBhdHRyaWJ1dGUgb2YgYWxsIGZvcm0tYXNzb2NpYXRlZCBl
bGVtZW50IHdpdGggb3Igd2l0b3V0IGZvcm0gYXR0cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25l
ci4nKTsKQEAgLTU0LDE0ICs1NywyMyBAQCBjb250YWluZXIuaW5uZXJIVE1MID0gJzxmb3JtIGlk
PW93bmVyPicgKwogICAgICcgICAgPGlucHV0IGlkPWlucHV0RWxlbWVudDEgbmFtZT12aWN0aW0g
Lz4nICsKICAgICAnICAgIDxpbnB1dCBpZD1pbnB1dEVsZW1lbnQyIG5hbWU9dmljdGltIGZvcm09
b3duZXIgLz4nICsKICAgICAnICAgIDxpbnB1dCBpZD1pbnB1dEVsZW1lbnQzIG5hbWU9dmljdGlt
IC8+JyArCisgICAgJyAgICA8bGFiZWwgaWQ9bGFiZWxFbGVtZW50MSBuYW1lPXZpY3RpbSAvPicg
KworICAgICcgICAgPGxhYmVsIGlkPWxhYmVsRWxlbWVudDIgbmFtZT12aWN0aW0gZm9ybT1vd25l
ciAvPicgKworICAgICcgICAgPGxhYmVsIGlkPWxhYmVsRWxlbWVudDMgbmFtZT12aWN0aW0gLz4n
ICsKICAgICAnPC9mb3JtPic7CiBvd25lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25l
cicpOwogdmFyIGlucHV0RWxlbWVudDEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXRF
bGVtZW50MScpOwogdmFyIGlucHV0RWxlbWVudDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
aW5wdXRFbGVtZW50MicpOwogdmFyIGlucHV0RWxlbWVudDMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnaW5wdXRFbGVtZW50MycpOwordmFyIGxhYmVsRWxlbWVudDEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnbGFiZWxFbGVtZW50MScpOwordmFyIGxhYmVsRWxlbWVudDIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVtZW50MicpOwordmFyIGxhYmVsRWxlbWVudDMgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVtZW50MycpOwogc2hvdWxkQmUoJ2lucHV0
RWxlbWVudDEuZm9ybScsICdvd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDIuZm9ybScs
ICdvd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDMuZm9ybScsICdvd25lcicpOworc2hv
dWxkQmUoJ2xhYmVsRWxlbWVudDEuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxl
bWVudDIuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDMuZm9ybScsICdv
d25lcicpOwogCiBkZWJ1ZygnJyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHRoYXQgdGhlIGZvcm0gYXR0
cmlidXRlIHBvaW50cyB0aGUgZm9ybSBvd25lciBldmVuIGlmIHRoZSBmb3JtIGVsZW1lbnQgaXMg
bmVzdGVkIGFub3RoZXIgZm9ybSBlbGVtZW50LicpOwpAQCAtNzEsMjEgKzgzLDMxIEBAIGNvbnRh
aW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9b3duZXI+JyArCiAgICAgJyAgICAgICAgPGlucHV0
IGlkPWlucHV0RWxlbWVudDEgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwogICAgICcgICAg
ICAgIDxpbnB1dCBpZD1pbnB1dEVsZW1lbnQyIG5hbWU9dmljdGltIC8+JyArCiAgICAgJyAgICAg
ICAgPGlucHV0IGlkPWlucHV0RWxlbWVudDMgbmFtZT12aWN0aW0gZm9ybT1vd25lciAvPicgKwor
ICAgICcgICAgICAgIDxsYWJlbCBpZD1sYWJlbEVsZW1lbnQxIG5hbWU9dmljdGltIGZvcm09b3du
ZXIgLz4nICsKKyAgICAnICAgICAgICA8bGFiZWwgaWQ9bGFiZWxFbGVtZW50MiBuYW1lPXZpY3Rp
bSAvPicgKworICAgICcgICAgICAgIDxsYWJlbCBpZD1sYWJlbEVsZW1lbnQzIG5hbWU9dmljdGlt
IGZvcm09b3duZXIgLz4nICsKICAgICAnICAgIDwvZm9ybT4nICsKICAgICAnPC9mb3JtPic7CiBv
d25lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvd25lcicpOwogaW5wdXRFbGVtZW50MSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQxJyk7CiBpbnB1dEVsZW1lbnQy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lucHV0RWxlbWVudDInKTsKIGlucHV0RWxlbWVu
dDMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW5wdXRFbGVtZW50MycpOworbGFiZWxFbGVt
ZW50MSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQxJyk7CitsYWJlbEVs
ZW1lbnQyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xhYmVsRWxlbWVudDInKTsKK2xhYmVs
RWxlbWVudDMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGFiZWxFbGVtZW50MycpOwogc2hv
dWxkQmUoJ2lucHV0RWxlbWVudDEuZm9ybScsICdvd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxl
bWVudDIuZm9ybScsICdvd25lcicpOwogc2hvdWxkQmUoJ2lucHV0RWxlbWVudDMuZm9ybScsICdv
d25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVudDEuZm9ybScsICdvd25lcicpOworc2hvdWxk
QmUoJ2xhYmVsRWxlbWVudDIuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xhYmVsRWxlbWVu
dDMuZm9ybScsICdvd25lcicpOwogCiBkZWJ1ZygnJyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHdoZXRo
ZXIgdGhlIGZvcm0gb3duZXIgaXMgc2V0IGNvcnJlY3RseSB3aGVuIHRoZSB2YWx1ZSBvZiBmb3Jt
IGF0dHJpYnV0ZSBvZiBhIGZvcm0tYXNzb2NpYXRlZCBlbGVtZW50IGNoYW5nZWQuJyk7CiBjb250
YWluZXIuaW5uZXJIVE1MID0gJzxmb3JtIGlkPWZvcm0xPjwvZm9ybT4nICsKICAgICAnPGZvcm0g
aWQ9Zm9ybTI+PC9mb3JtPicgKwogICAgICc8aW5wdXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmlj
dGltIGZvcm09Zm9ybTEgLz4nICsKKyAgICAnPGxhYmVsIGlkPWxhYmVsRWxlbWVudCBuYW1lPXZp
Y3RpbSBmb3JtPWZvcm0xIC8+JyArCiAgICAgJzxvYmplY3QgaWQ9b2JqZWN0RWxlbWVudCBuYW1l
PXZpY3RpbSBmb3JtPWZvcm0xPjwvb2JqZWN0Pic7CiB2YXIgZm9ybTEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnZm9ybTEnKTsKIHZhciBmb3JtMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdmb3JtMicpOwpAQCAtOTQsNiArMTE2LDEyIEBAIHNob3VsZEJlKCdpbnB1dEVsZW1lbnQuZm9y
bScsICdmb3JtMScpOwogaW5wdXRFbGVtZW50LmF0dHJpYnV0ZXNbJ2Zvcm0nXS52YWx1ZSA9ICdm
b3JtMic7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0nLCAnZm9ybTInKTsKIAorLy8gSFRN
TGFiZWxFbGVtZW50IGhhcyBpdHMgb3duIGltcGxlbWVudGF0aW9uIG9mIGZvcm1BdHRyIHByb2Nl
c3NpbmcgYW5kIHNvIG5lZWRzIGl0cyBvd24gdGVzdC4KK2xhYmVsRWxlbWVudCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQnKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQu
Zm9ybScsICdmb3JtMScpOworbGFiZWxFbGVtZW50LmF0dHJpYnV0ZXNbJ2Zvcm0nXS52YWx1ZSA9
ICdmb3JtMic7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnZm9ybTInKTsKKwogLy8g
SFRNTE9iamVjdEVsZW1lbnQgaGFzIGl0cyBvd24gaW1wbGVtZW50YXRpb24gb2YgZm9ybUF0dHIg
cHJvY2Vzc2luZyBhbmQgc28gbmVlZHMgaXRzIG93biB0ZXN0Lgogb2JqZWN0RWxlbWVudCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdvYmplY3RFbGVtZW50Jyk7CiBzaG91bGRCZSgnb2JqZWN0
RWxlbWVudC5mb3JtJywgJ2Zvcm0xJyk7CkBAIC0xMDQsNiArMTMyLDcgQEAgZGVidWcoJycpOwog
ZGVidWcoJy0gRW5zdXJlcyB3aGV0aGVyIHRoZSBmb3JtIG93bmVyIGlzIHNldCBjb3JyZWN0bHkg
d2hlbiB0aGUgdmFsdWUgb2YgZm9ybSBhdHRyaWJ1dGUgaXMgYWRkZWQvcmVtb3ZlZC4nKTsKIGNv
bnRhaW5lci5pbm5lckhUTUwgPSAnPGZvcm0gaWQ9b3duZXIgbmFtZT1maXJzdE93bmVyPjwvZm9y
bT4nICsKICAgICAnPGlucHV0IGlkPWlucHV0RWxlbWVudCBuYW1lPXZpY3RpbSAvPicgKworICAg
ICc8bGFiZWwgaWQ9bGFiZWxFbGVtZW50IG5hbWU9dmljdGltIC8+JyArCiAgICAgJzxvYmplY3Qg
aWQ9b2JqZWN0RWxlbWVudCBuYW1lPXZpY3RpbT48L29iamVjdD4nOwogb3duZXIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnb3duZXInKTsKIGlucHV0RWxlbWVudCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdpbnB1dEVsZW1lbnQnKTsKQEAgLTExNCw2ICsxNDMsMTQgQEAgc2hvdWxkQmUo
J2lucHV0RWxlbWVudC5mb3JtJywgJ293bmVyJyk7CiBpbnB1dEVsZW1lbnQucmVtb3ZlQXR0cmli
dXRlKCdmb3JtJyk7CiBzaG91bGRCZSgnaW5wdXRFbGVtZW50LmZvcm0nLCAnbnVsbCcpOwogCisv
LyBIVE1MTGFiZWxFbGVtZW50IGhhcyBpdHMgb3duIGltcGxlbWVudGF0aW9uIG9mIGZvcm1BdHRy
IHByb2Nlc3NpbmcgYW5kIHNvIG5lZWRzIGl0cyBvd24gdGVzdC4KK2xhYmVsRWxlbWVudCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYWJlbEVsZW1lbnQnKTsKK3Nob3VsZEJlKCdsYWJlbEVs
ZW1lbnQuZm9ybScsICdudWxsJyk7CitsYWJlbEVsZW1lbnQuc2V0QXR0cmlidXRlKCdmb3JtJywg
J293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxFbGVtZW50LmZvcm0nLCAnb3duZXInKTsKK2xhYmVs
RWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2Zvcm0nKTsKK3Nob3VsZEJlKCdsYWJlbEVsZW1lbnQu
Zm9ybScsICdudWxsJyk7CisKIC8vIEhUTUxPYmplY3RFbGVtZW50IGhhcyBpdHMgb3duIGltcGxl
bWVudGF0aW9uIG9mIGZvcm1BdHRyIHByb2Nlc3NpbmcgYW5kIHNvIG5lZWRzIGl0cyBvd24gdGVz
dC4KIG9iamVjdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb2JqZWN0RWxlbWVu
dCcpOwogc2hvdWxkQmUoJ29iamVjdEVsZW1lbnQuZm9ybScsICdudWxsJyk7CkBAIC0xMjYsMTgg
KzE2MywyMyBAQCBkZWJ1ZygnJyk7CiBkZWJ1ZygnLSBFbnN1cmVzIHdoZXRoZXIgdGhlIGZvcm0g
b3duZXIgaXMgc2V0IGNvcnJlY3RseSB3aGVuIHRoZSBmb3JtIG93bmVyIGlzIGFkZGVkL3JlbW92
ZWQuJyk7CiBjb250YWluZXIuaW5uZXJIVE1MID0gJzxmb3JtIGlkPW93bmVyIG5hbWU9Zmlyc3RP
d25lcj48L2Zvcm0+JyArCiAgICAgJzxmb3JtIGlkPW93bmVyIG5hbWU9c2Vjb25kT3duZXI+PC9m
b3JtPicgKwotICAgICc8aW5wdXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3du
ZXIgLz4nOworICAgICc8aW5wdXQgaWQ9aW5wdXRFbGVtZW50IG5hbWU9dmljdGltIGZvcm09b3du
ZXIgLz4nICsKKyAgICAnPGxhYmVsIGlkPWxhYmVsRWxlbWVudCBuYW1lPXZpY3RpbSBmb3JtPW93
bmVyIC8+JzsKIG93bmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ293bmVyJyk7CiBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoJ293bmVyLm5hbWUnLCAnZmlyc3RPd25lcicpOwogaW5wdXRFbGVt
ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2lucHV0RWxlbWVudCcpOworbGFiZWxFbGVt
ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xhYmVsRWxlbWVudCcpOwogY29udGFpbmVy
LnJlbW92ZUNoaWxkKG93bmVyKTsKIG93bmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ293
bmVyJyk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ293bmVyLm5hbWUnLCAnc2Vjb25kT3duZXIn
KTsKIHNob3VsZEJlKCdpbnB1dEVsZW1lbnQuZm9ybScsICdvd25lcicpOworc2hvdWxkQmUoJ2xh
YmVsRWxlbWVudC5mb3JtJywgJ293bmVyJyk7CiBjb250YWluZXIucmVtb3ZlQ2hpbGQob3duZXIp
Owogc2hvdWxkQmUoJ2lucHV0RWxlbWVudC5mb3JtJywgJ251bGwnKTsKK3Nob3VsZEJlKCdsYWJl
bEVsZW1lbnQuZm9ybScsICdudWxsJyk7CiBjb250YWluZXIuYXBwZW5kQ2hpbGQob3duZXIpOwog
c2hvdWxkQmUoJ2lucHV0RWxlbWVudC5mb3JtJywgJ293bmVyJyk7CitzaG91bGRCZSgnbGFiZWxF
bGVtZW50LmZvcm0nLCAnb3duZXInKTsKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>