<?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>96031</bug_id>
          
          <creation_ts>2012-09-06 15:09:32 -0700</creation_ts>
          <short_desc>Fix RenderBox::availableHeight to subtract scrollbars in the right places</short_desc>
          <delta_ts>2012-09-07 16:27:07 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>93655</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Ojan Vafai">ojan</assigned_to>
          <cc>eric</cc>
    
    <cc>esprehn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hyatt</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>rakuco</cc>
    
    <cc>roger_fong</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>713751</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-06 15:09:32 -0700</bug_when>
    <thetext>Fix RenderBox::availableHeight to subtract scrollbars in the right places</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713755</commentid>
    <comment_count>1</comment_count>
      <attachid>162599</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-06 15:13:47 -0700</bug_when>
    <thetext>Created attachment 162599
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713799</commentid>
    <comment_count>2</comment_count>
      <attachid>162599</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-09-06 16:07:29 -0700</bug_when>
    <thetext>Comment on attachment 162599
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        Tests: fast/block/positioning/percent-top-left-on-relative-position.html
&gt; +               fast/css/nested-percent-height-on-replaced.html

Can you verify that Firefox and IE agree with this?  I think this change is correct, but it would be nice to corroborate.

&gt; LayoutTests/ChangeLog:13
&gt; +        * platform/chromium-linux/fast/css/percent-top-value-with-relative-position-expected.png:
&gt; +        * platform/chromium-win/fast/css/percent-top-value-with-relative-position-expected.txt:

Can you explain why this changed in the ChangeLog?

Is there a Win result that will also need rebaseline?  Should we mark it as such in TestExpectations?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713817</commentid>
    <comment_count>3</comment_count>
      <attachid>162599</attachid>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2012-09-06 16:17:52 -0700</bug_when>
    <thetext>Comment on attachment 162599
Patch

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

&gt; Source/WebCore/rendering/RenderBox.cpp:-2345
&gt; -        // the percentage is calculated with respect to the height of the padding box of that element

Why is this explicit bug fix not needed anymore? The new code doesn&apos;t seem to check containingBlock()-&gt;availableLogicalHeight()

&gt; Source/WebCore/rendering/RenderBox.cpp:2344
&gt; +        return std::max(LayoutUnit(0), computeContentBoxLogicalHeight(heightIncludingScrollbar) - scrollbarLogicalHeight());

Would be nice to be consistent and use std::max&lt;LayoutUnit&gt;(...) or std::max(LayoutUnit(0). You&apos;ve done it both ways in this patch.

&gt; LayoutTests/platform/chromium-win/fast/css/percent-top-value-with-relative-position-expected.txt:7
&gt; +layer at (8,300) size 784x20

That&apos;s cute, 8px is half the 16px scrollbar track size. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714788</commentid>
    <comment_count>4</comment_count>
      <attachid>162828</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 11:26:14 -0700</bug_when>
    <thetext>Created attachment 162828
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714791</commentid>
    <comment_count>5</comment_count>
      <attachid>162830</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 11:27:53 -0700</bug_when>
    <thetext>Created attachment 162830
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714900</commentid>
    <comment_count>6</comment_count>
      <attachid>162599</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 13:21:49 -0700</bug_when>
    <thetext>Comment on attachment 162599
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:9
&gt;&gt; +               fast/css/nested-percent-height-on-replaced.html
&gt; 
&gt; Can you verify that Firefox and IE agree with this?  I think this change is correct, but it would be nice to corroborate.

Yup. Added to the ChangeLog.

&gt;&gt; Source/WebCore/rendering/RenderBox.cpp:-2345
&gt;&gt; -        // the percentage is calculated with respect to the height of the padding box of that element
&gt; 
&gt; Why is this explicit bug fix not needed anymore? The new code doesn&apos;t seem to check containingBlock()-&gt;availableLogicalHeight()

This comment is confusing. The fix for the bug was adding the containingBlockLogicalHeightForPositioned call.

&gt;&gt; Source/WebCore/rendering/RenderBox.cpp:2344
&gt;&gt; +        return std::max(LayoutUnit(0), computeContentBoxLogicalHeight(heightIncludingScrollbar) - scrollbarLogicalHeight());
&gt; 
&gt; Would be nice to be consistent and use std::max&lt;LayoutUnit&gt;(...) or std::max(LayoutUnit(0). You&apos;ve done it both ways in this patch.

Lol. I copy-pasted from two different places. :) Will fix both to std::max&lt;LayoutUnit&gt;(...).

&gt;&gt; LayoutTests/ChangeLog:13
&gt;&gt; +        * platform/chromium-win/fast/css/percent-top-value-with-relative-position-expected.txt:
&gt; 
&gt; Can you explain why this changed in the ChangeLog?
&gt; 
&gt; Is there a Win result that will also need rebaseline?  Should we mark it as such in TestExpectations?

Good point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714940</commentid>
    <comment_count>7</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 13:54:29 -0700</bug_when>
    <thetext>Committed r127915: &lt;http://trac.webkit.org/changeset/127915&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>715090</commentid>
    <comment_count>8</comment_count>
    <who name="Roger Fong">roger_fong</who>
    <bug_when>2012-09-07 16:10:53 -0700</bug_when>
    <thetext>
&gt; Can you explain why this changed in the ChangeLog?
&gt; 
&gt; Is there a Win result that will also need rebaseline?  Should we mark it as such in TestExpectations?

Also curious as to why there is a difference between Mac and Win.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>715099</commentid>
    <comment_count>9</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 16:21:34 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; &gt; Can you explain why this changed in the ChangeLog?
&gt; &gt; 
&gt; &gt; Is there a Win result that will also need rebaseline?  Should we mark it as such in TestExpectations?
&gt; 
&gt; Also curious as to why there is a difference between Mac and Win.

Platform text layout differences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>715104</commentid>
    <comment_count>10</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-09-07 16:27:07 -0700</bug_when>
    <thetext>Rebaselines landed in http://trac.webkit.org/changeset/127935</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162599</attachid>
            <date>2012-09-06 15:13:47 -0700</date>
            <delta_ts>2012-09-07 13:21:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96031-20120906151327.patch</filename>
            <type>text/plain</type>
            <size>12924</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3NzQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTY0ODQxOTcyZDQwMmQ2
NWE3NjJjNTk4NDY3Yjc3ZGVjMjQxNTk1MS4uZmRhZmFmMDZmNGNkNTI2YTg5ODUyNzA3MDA0MzI0
OWI3YTMxOGY0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA5LTA2ICBPamFu
IFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IFJlbmRlckJveDo6YXZh
aWxhYmxlSGVpZ2h0IHRvIHN1YnRyYWN0IHNjcm9sbGJhcnMgaW4gdGhlIHJpZ2h0IHBsYWNlcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYwMzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0czogZmFz
dC9ibG9jay9wb3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0LW9uLXJlbGF0aXZlLXBvc2l0aW9u
Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvY3NzL25lc3RlZC1wZXJjZW50LWhlaWdodC1vbi1y
ZXBsYWNlZC5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJveDo6Y29tcHV0ZVBlcmNlbnRhZ2VMb2dpY2FsSGVpZ2h0KToK
KyAgICAgICAgU3VidHJhY3Qgc2Nyb2xsYmFycyB3aGVuIHJlY3VycmluZyBvbiBwZXJjZW50YWdl
IGhlaWdodHMuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbXB1dGVSZXBsYWNlZExv
Z2ljYWxIZWlnaHRVc2luZyk6CisgICAgICAgIFRoaXMgaXMgdGhlIHdyb25nIHBsYWNlIHRvIHN1
YnRyYWN0IHNjcm9sbGJhcnMuIGF2YWlsYWJsZUxvZ2ljYWxIZWlnaHQKKyAgICAgICAgc2hvdWxk
IHJldHVybiBhIHZhbHVlIHRoYXQgZG9lc24ndCBpbmNsdWRlIHNjcm9sbGJhcnMuCisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJCb3g6OmF2YWlsYWJsZUxvZ2ljYWxIZWlnaHRVc2luZyk6CisgICAg
ICAgIFN1YnRyYWN0IHNjcm9sbGJhcnMgZnJvbSBzcGVjaWZpZWQgaGVpZ2h0cy4gQWxzbywgY29u
c29saWRhdGUgdGhlIGNvZGUgdG8KKyAgICAgICAgdXNlIGNvbXB1dGVDb250ZW50TG9naWNhbEhl
aWdodFVzaW5nLiBUaGlzIG1ha2VzIHBlcmNlbnRhZ2UgaGVpZ2h0cyB1c2UKKyAgICAgICAgdGhl
IHJpZ2h0IGNvbnRhaW5pbmdCbG9jayBpbiBxdWlya3MgbW9kZSBhbmQgbWFrZXMgdmlld3BvcnQg
cGVyY2VudGFnZSBoZWlnaHRzIHdvcmsuCisKIDIwMTItMDktMDYgIEV1Z2VuZSBLbHl1Y2huaWtv
diAgPGV1c3Rhcy5idWdAZ21haWwuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFRpbWVs
aW5lOiBjYWNoZSAiZmlsdGVyZWRSZWNvcmRzIiBmb3IgYmV0dGVyIHNjcm9sbGluZyBwZXJmb3Jt
YW5jZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKaW5kZXggYzhjYTdjODZk
ODNhMzQ5ZTgzNGIyMDFiNjY1OTlkNzhlZmVkMTFmNC4uMTA2ZjRmMzQxNGNjZDI4ZDc4NGY0Nzg4
ZjBhOTQ3OWY2NWIzYjg4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAK
QEAgLTIxNzMsOSArMjE3MywxMSBAQCBMYXlvdXRVbml0IFJlbmRlckJveDo6Y29tcHV0ZVBlcmNl
bnRhZ2VMb2dpY2FsSGVpZ2h0KGNvbnN0IExlbmd0aCYgaGVpZ2h0KSBjb25zdAogICAgICAgICBy
ZXN1bHQgPSBtYXg8TGF5b3V0VW5pdD4oMCwgY29udGVudEJveEhlaWdodFdpdGhTY3JvbGxiYXIg
LSBjYi0+c2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKTsKICAgICB9IGVsc2UgaWYgKGNic3R5bGUt
PmxvZ2ljYWxIZWlnaHQoKS5pc1BlcmNlbnQoKSAmJiAhaXNPdXRPZkZsb3dQb3NpdGlvbmVkV2l0
aFNwZWNpZmllZEhlaWdodCkgewogICAgICAgICAvLyBXZSBuZWVkIHRvIHJlY3VyIGFuZCBjb21w
dXRlIHRoZSBwZXJjZW50YWdlIGhlaWdodCBmb3Igb3VyIGNvbnRhaW5pbmcgYmxvY2suCi0gICAg
ICAgIHJlc3VsdCA9IGNiLT5jb21wdXRlUGVyY2VudGFnZUxvZ2ljYWxIZWlnaHQoY2JzdHlsZS0+
bG9naWNhbEhlaWdodCgpKTsKLSAgICAgICAgaWYgKHJlc3VsdCAhPSAtMSkKLSAgICAgICAgICAg
IHJlc3VsdCA9IGNiLT5jb21wdXRlQ29udGVudEJveExvZ2ljYWxIZWlnaHQocmVzdWx0KTsKKyAg
ICAgICAgTGF5b3V0VW5pdCBoZWlnaHRXaXRoU2Nyb2xsYmFyID0gY2ItPmNvbXB1dGVQZXJjZW50
YWdlTG9naWNhbEhlaWdodChjYnN0eWxlLT5sb2dpY2FsSGVpZ2h0KCkpOworICAgICAgICBpZiAo
aGVpZ2h0V2l0aFNjcm9sbGJhciAhPSAtMSkgeworICAgICAgICAgICAgTGF5b3V0VW5pdCBjb250
ZW50Qm94SGVpZ2h0V2l0aFNjcm9sbGJhciA9IGNiLT5jb21wdXRlQ29udGVudEJveExvZ2ljYWxI
ZWlnaHQoaGVpZ2h0V2l0aFNjcm9sbGJhcik7CisgICAgICAgICAgICByZXN1bHQgPSBtYXg8TGF5
b3V0VW5pdD4oMCwgY29udGVudEJveEhlaWdodFdpdGhTY3JvbGxiYXIgLSBjYi0+c2Nyb2xsYmFy
TG9naWNhbEhlaWdodCgpKTsKKyAgICAgICAgfQogICAgIH0gZWxzZSBpZiAoY2ItPmlzUmVuZGVy
VmlldygpIHx8IChjYi0+aXNCb2R5KCkgJiYgZG9jdW1lbnQoKS0+aW5RdWlya3NNb2RlKCkpIHx8
IGlzT3V0T2ZGbG93UG9zaXRpb25lZFdpdGhTcGVjaWZpZWRIZWlnaHQpIHsKICAgICAgICAgLy8g
RG9uJ3QgYWxsb3cgdGhpcyB0byBhZmZlY3QgdGhlIGJsb2NrJyBoZWlnaHQoKSBtZW1iZXIgdmFy
aWFibGUsIHNpbmNlIHRoaXMKICAgICAgICAgLy8gY2FuIGdldCBjYWxsZWQgd2hpbGUgdGhlIGJs
b2NrIGlzIHN0aWxsIGxheWluZyBvdXQgaXRzIGtpZHMuCkBAIC0yMzA1LDEwICsyMzA3LDcgQEAg
TGF5b3V0VW5pdCBSZW5kZXJCb3g6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHRVc2luZyhT
aXplVHlwZSBzaXplVHlwZSwgTGVuZ3QKICAgICAgICAgICAgICAgICAgICAgY2IgPSBjYi0+Y29u
dGFpbmluZ0Jsb2NrKCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAg
ICAgICAgYXZhaWxhYmxlSGVpZ2h0ID0gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KHZh
bHVlRm9yTGVuZ3RoKGxvZ2ljYWxIZWlnaHQsIGF2YWlsYWJsZUhlaWdodCkpOwotICAgICAgICAg
ICAgaWYgKGNiLT5pc0JveCgpICYmIGNiLT5zdHlsZSgpLT5sb2dpY2FsSGVpZ2h0KCkuaXNGaXhl
ZCgpKQotICAgICAgICAgICAgICAgIGF2YWlsYWJsZUhlaWdodCA9IG1heDxMYXlvdXRVbml0Pigw
LCBhdmFpbGFibGVIZWlnaHQgLSB0b1JlbmRlckJveChjYiktPnNjcm9sbGJhckxvZ2ljYWxIZWln
aHQoKSk7Ci0gICAgICAgICAgICByZXR1cm4gYXZhaWxhYmxlSGVpZ2h0OworICAgICAgICAgICAg
cmV0dXJuIGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodCh2YWx1ZUZvckxlbmd0aChsb2dp
Y2FsSGVpZ2h0LCBhdmFpbGFibGVIZWlnaHQpKTsKICAgICAgICAgfQogICAgICAgICBjYXNlIFZp
ZXdwb3J0UGVyY2VudGFnZVdpZHRoOgogICAgICAgICBjYXNlIFZpZXdwb3J0UGVyY2VudGFnZUhl
aWdodDoKQEAgLTIzMjYsOSArMjMyNSw2IEBAIExheW91dFVuaXQgUmVuZGVyQm94OjphdmFpbGFi
bGVMb2dpY2FsSGVpZ2h0KCkgY29uc3QKIAogTGF5b3V0VW5pdCBSZW5kZXJCb3g6OmF2YWlsYWJs
ZUxvZ2ljYWxIZWlnaHRVc2luZyhjb25zdCBMZW5ndGgmIGgpIGNvbnN0CiB7Ci0gICAgaWYgKGgu
aXNGaXhlZCgpKQotICAgICAgICByZXR1cm4gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0
KGgudmFsdWUoKSk7Ci0KICAgICBpZiAoaXNSZW5kZXJWaWV3KCkpCiAgICAgICAgIHJldHVybiBp
c0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gdG9SZW5kZXJWaWV3KHRoaXMpLT5mcmFtZVZpZXco
KS0+dmlzaWJsZUhlaWdodCgpIDogdG9SZW5kZXJWaWV3KHRoaXMpLT5mcmFtZVZpZXcoKS0+dmlz
aWJsZVdpZHRoKCk7CiAKQEAgLTIzMzgsMTkgKzIzMzQsMTYgQEAgTGF5b3V0VW5pdCBSZW5kZXJC
b3g6OmF2YWlsYWJsZUxvZ2ljYWxIZWlnaHRVc2luZyhjb25zdCBMZW5ndGgmIGgpIGNvbnN0CiAg
ICAgaWYgKGlzVGFibGVDZWxsKCkgJiYgKGguaXNBdXRvKCkgfHwgaC5pc1BlcmNlbnQoKSkpCiAg
ICAgICAgIHJldHVybiBvdmVycmlkZUxvZ2ljYWxDb250ZW50SGVpZ2h0KCk7CiAKLSAgICBpZiAo
aC5pc1BlcmNlbnQoKSkgewotICAgICAgICBMYXlvdXRVbml0IGF2YWlsYWJsZUhlaWdodDsKLSAg
ICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MDQ2Ci0g
ICAgICAgIC8vIEZvciBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgZWxlbWVudHMgd2hvc2UgY29udGFp
bmluZyBibG9jayBpcyBiYXNlZCBvbiBhIGJsb2NrLWxldmVsIGVsZW1lbnQsCi0gICAgICAgIC8v
IHRoZSBwZXJjZW50YWdlIGlzIGNhbGN1bGF0ZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBoZWlnaHQg
b2YgdGhlIHBhZGRpbmcgYm94IG9mIHRoYXQgZWxlbWVudAotICAgICAgICBpZiAoaXNPdXRPZkZs
b3dQb3NpdGlvbmVkKCkpCi0gICAgICAgICAgICBhdmFpbGFibGVIZWlnaHQgPSBjb250YWluaW5n
QmxvY2tMb2dpY2FsSGVpZ2h0Rm9yUG9zaXRpb25lZChjb250YWluaW5nQmxvY2soKSk7Ci0gICAg
ICAgIGVsc2UKLSAgICAgICAgICAgIGF2YWlsYWJsZUhlaWdodCA9IGNvbnRhaW5pbmdCbG9jaygp
LT5hdmFpbGFibGVMb2dpY2FsSGVpZ2h0KCk7CisgICAgaWYgKGguaXNQZXJjZW50KCkgJiYgaXNP
dXRPZkZsb3dQb3NpdGlvbmVkKCkpIHsKKyAgICAgICAgTGF5b3V0VW5pdCBhdmFpbGFibGVIZWln
aHQgPSBjb250YWluaW5nQmxvY2tMb2dpY2FsSGVpZ2h0Rm9yUG9zaXRpb25lZChjb250YWluaW5n
QmxvY2soKSk7CiAgICAgICAgIHJldHVybiBjb21wdXRlQ29udGVudEJveExvZ2ljYWxIZWlnaHQo
dmFsdWVGb3JMZW5ndGgoaCwgYXZhaWxhYmxlSGVpZ2h0KSk7CiAgICAgfQogCi0gICAgLy8gRklY
TUU6IFdlIGNhbid0IGp1c3QgY2hlY2sgdG9wL2JvdHRvbSBoZXJlLgorICAgIExheW91dFVuaXQg
aGVpZ2h0SW5jbHVkaW5nU2Nyb2xsYmFyID0gY29tcHV0ZUNvbnRlbnRMb2dpY2FsSGVpZ2h0VXNp
bmcoTWFpbk9yUHJlZmVycmVkU2l6ZSwgaCk7CisgICAgaWYgKGhlaWdodEluY2x1ZGluZ1Njcm9s
bGJhciAhPSAtMSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bWF4KExheW91dFVuaXQoMCksIGNvbXB1
dGVDb250ZW50Qm94TG9naWNhbEhlaWdodChoZWlnaHRJbmNsdWRpbmdTY3JvbGxiYXIpIC0gc2Ny
b2xsYmFyTG9naWNhbEhlaWdodCgpKTsKKworICAgIC8vIEZJWE1FOiBDaGVjayBsb2dpY2FsVG9w
L2xvZ2ljYWxCb3R0b20gaGVyZSB0byBjb3JyZWN0bHkgaGFuZGxlIHZlcnRpY2FsIHdyaXRpbmct
bW9kZS4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDY1
MDAKICAgICBpZiAoaXNSZW5kZXJCbG9jaygpICYmIGlzT3V0T2ZGbG93UG9zaXRpb25lZCgpICYm
IHN0eWxlKCktPmhlaWdodCgpLmlzQXV0bygpICYmICEoc3R5bGUoKS0+dG9wKCkuaXNBdXRvKCkg
fHwgc3R5bGUoKS0+Ym90dG9tKCkuaXNBdXRvKCkpKSB7CiAgICAgICAgIFJlbmRlckJsb2NrKiBi
bG9jayA9IGNvbnN0X2Nhc3Q8UmVuZGVyQmxvY2sqPih0b1JlbmRlckJsb2NrKHRoaXMpKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCAyNTg1YWIzNWY4ZThmMGUxMDU3OTE5OGIwYTUwMWI3ZjVkNzkxMWUyLi5mMDkyOWU4M2U1
MGRlMjI2NmU1OTllOGM3N2Q1MjgzZGZhYWU2ZmQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTItMDktMDYgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBGaXgg
UmVuZGVyQm94OjphdmFpbGFibGVIZWlnaHQgdG8gc3VidHJhY3Qgc2Nyb2xsYmFycyBpbiB0aGUg
cmlnaHQgcGxhY2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05NjAzMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogZmFzdC9ibG9jay9wb3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0LW9uLXJlbGF0aXZl
LXBvc2l0aW9uLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvYmxvY2svcG9z
aXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3NpdGlvbi5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9uZXN0ZWQtcGVyY2VudC1oZWlnaHQtb24tcmVwbGFjZWQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy9uZXN0ZWQtcGVyY2VudC1o
ZWlnaHQtb24tcmVwbGFjZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0tbGludXgvZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlv
bi1leHBlY3RlZC5wbmc6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvY3Nz
L3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0ZWQudHh0Ogor
CiAyMDEyLTA5LTA2ICBNaWtoYWlsIFBvemRueWFrb3YgIDxtaWtoYWlsLnBvemRueWFrb3ZAaW50
ZWwuY29tPgogCiAgICAgICAgIFtFRkxdIEdhcmRlbmluZyBhZnRlciByMTI3NzI4LCByMTI3NTM0
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQt
dG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3Np
dGlvbi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1MWRiOTBlZjY4NTAzOTA2ODM0YzhlOTdi
ZDFjZjJlNGVjNmRiMTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2Nr
L3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0
ZWQuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzdHlsZT4KK2h0bWws
Ym9keSB7CisgICAgbWFyZ2luOiAwOworICAgIHBhZGRpbmc6IDA7Cit9CisuY29udGFpbmVyIHsK
KyAgICBoZWlnaHQ6IDUwcHg7CisgICAgd2lkdGg6IDUwcHg7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogb3JhbmdlOworICAgIGJvcmRlcjogMXB4IHNvbGlkOworfQorLmNoaWxkIHsKKyAgICBtYXJn
aW46IDIwJTsKKyAgICBoZWlnaHQ6IDEwcHg7CisgICAgd2lkdGg6IDEwcHg7CisgICAgYmFja2dy
b3VuZC1jb2xvcjogc2FsbW9uOworfQorPC9zdHlsZT4KKzxkaXYgY2xhc3M9ImNvbnRhaW5lciI+
CisgICAgPGRpdiBjbGFzcz0iY2hpbGQiPjwvZGl2PgorPC9kaXY+Cis8YnI+Cis8ZGl2IGNsYXNz
PSJjb250YWluZXIiIHN0eWxlPSJvdmVyZmxvdzpzY3JvbGwiPgorICAgIDxkaXYgY2xhc3M9ImNo
aWxkIj48L2Rpdj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9w
b3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0LW9uLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVs
YXRpdmUtcG9zaXRpb24uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYTZhMDA5N2VkYjBiZGM1NTVkOWNlNjFm
ODAzZTJhNjM4NDY2ODIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9j
ay9wb3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0LW9uLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwK
QEAgLTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8c3R5bGU+Citib2R5IHsKKyAgICBt
YXJnaW46IDA7Cit9CisuY29udGFpbmVyIHsKKyAgICBib3JkZXI6IDFweCBzb2xpZDsKKyAgICBo
ZWlnaHQ6IDUwcHg7CisgICAgd2lkdGg6IDUwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogb3Jh
bmdlOworfQorLmNoaWxkIHsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgdG9wOiAyMCU7
CisgICAgbGVmdDogMjAlOworICAgIGhlaWdodDogMTBweDsKKyAgICB3aWR0aDogMTBweDsKKyAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb247Cit9Cis8L3N0eWxlPgorPGRpdiBjbGFzcz0iY29u
dGFpbmVyIj4KKyAgICA8ZGl2IGNsYXNzPSJjaGlsZCI+PC9kaXY+Cis8L2Rpdj4KKzxicj4KKzxk
aXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9Im92ZXJmbG93OnNjcm9sbCI+CisgICAgPGRpdiBj
bGFzcz0iY2hpbGQiPjwvZGl2PgorPC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy9uZXN0ZWQtcGVyY2VudC1oZWlnaHQtb24tcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi44MDMzYThjNDRhNjMzMDE0MWNkYmFjMGJiYmQ1N2VlZTgxNjMw
Y2VkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNl
bnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKK1BBU1MK
KworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQt
aGVpZ2h0LW9uLXJlcGxhY2VkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtcGVy
Y2VudC1oZWlnaHQtb24tcmVwbGFjZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZmEzZjZmZGZjZTE4N2Yy
NTZhY2E4NGFmOTAyNzc2NjU3NWZkMTgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLmh0bWwKQEAgLTAsMCAr
MSw2MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2No
ZWNrLWxheW91dC5qcyI+PC9zY3JpcHQ+Cis8Ym9keT4KKworPGRpdiBzdHlsZT0ib3ZlcmZsb3c6
IHNjcm9sbDsgaGVpZ2h0OiAyMDBweDsgd2lkdGg6IDQwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBz
YWxtb24iPgorICAgIDxkaXYgc3R5bGU9Im92ZXJmbG93OiBzY3JvbGw7IGhlaWdodDogMTAwJTsg
YmFja2dyb3VuZC1jb2xvcjogcHVycGxlIj4KKyAgICAgICAgPGRpdiBzdHlsZT0ib3ZlcmZsb3c6
IHNjcm9sbDsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJwbGUiPgorICAgICAg
ICAgICAgPGRpdiBzdHlsZT0iYm9yZGVyOiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBi
YWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2UiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rp
dj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJvdmVyZmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDIwMHB4
OyB3aWR0aDogNDAwcHg7IGJhY2tncm91bmQtY29sb3I6IHNhbG1vbiI+CisgICAgPGRpdiBzdHls
ZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJw
bGUiPgorICAgICAgICA8ZGl2IHN0eWxlPSJvdmVyZmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDEwMCU7
IGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTtsaW5lLWhlaWdodDogMCI+CisgICAgICAgICAgICA8
aWZyYW1lIHN0eWxlPSJib3JkZXI6IDA7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IGJhY2tn
cm91bmQtY29sb3I6IG9yYW5nZSI+PC9pZnJhbWU+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2
PgorPC9kaXY+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CisKK3ZhciBkdW1teSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2RpdicpOworZHVtbXkuc3R5bGUub3ZlcmZsb3cgPSAic2Nyb2xsIjsKK2RvY3VtZW50LmJvZHku
YXBwZW5kQ2hpbGQoZHVtbXkpOwordmFyIHNjcm9sbGJhcldpZHRoID0gZHVtbXkub2Zmc2V0V2lk
dGggLSBkdW1teS5jbGllbnRXaWR0aDsKK2RvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZHVtbXkp
OworCitmdW5jdGlvbiBzZXRFeHBlY3RlZChub2RlLCB3aWR0aCwgaGVpZ2h0KQoreworICAgIG5v
ZGUuc2V0QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVkLXdpZHRoJywgd2lkdGgpOworICAgIG5vZGUu
c2V0QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVkLWhlaWdodCcsIGhlaWdodCk7Cit9CisKK3ZhciBj
b250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnYm9keSA+IGRpdicpOworZm9y
ICh2YXIgaSA9IDA7IGkgPCBjb250YWluZXJzLmxlbmd0aDsgaSsrKSB7CisgICAgdmFyIHdpZHRo
ID0gY29udGFpbmVyc1tpXS5vZmZzZXRXaWR0aDsKKyAgICB2YXIgaGVpZ2h0ID0gY29udGFpbmVy
c1tpXS5vZmZzZXRIZWlnaHQ7CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAgICBo
ZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAgdmFyIGZpcnN0ID0gY29udGFpbmVyc1tpXS5x
dWVyeVNlbGVjdG9yKCdkaXYnKTsKKyAgICBzZXRFeHBlY3RlZChmaXJzdCwgd2lkdGgsIGhlaWdo
dCk7CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xs
YmFyV2lkdGg7CisgICAgdmFyIHNlY29uZCA9IGZpcnN0LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOwor
ICAgIHNldEV4cGVjdGVkKHNlY29uZCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICB3aWR0aCAtPSBz
Y3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAgdmFyIHRo
aXJkID0gc2Vjb25kLnF1ZXJ5U2VsZWN0b3IoJyonKTsKKyAgICBzZXRFeHBlY3RlZCh0aGlyZCwg
d2lkdGgsIGhlaWdodCk7Cit9CisKK2NoZWNrTGF5b3V0KCdib2R5ID4gZGl2JykKKzwvc2NyaXB0
PgorCis8L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbGludXgvZmFzdC9jc3MvcGVyY2VudC10b3AtdmFs
dWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0
aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnBuZwppbmRleCA0OTBjYjhmZjQ3YzhlOTA1M2Y3ZTRhMWQw
MTVhMjVmYTA2Y2IyMzU4Li5iOWZmODVkN2MyYWZmNGYyMmUzM2E2ZWVjMDRjY2MyNDkwNmUxNjhh
IDEwMDY0NApHSVQgYmluYXJ5IHBhdGNoCmRlbHRhIDc5CnpjbWV5VkBsI2BoayYxO3VudVZkNm5X
ZHA9VnhwT0dZTkM7JE1VcktiTDFMMUhRSlQ0aHJEZ1Yja0NffDh6T2ltRAppV2MkUUIqP356Xz82
M0lHUXA1QTZTcUA8Z0s7WUA+PWQjV3pwJFB5bFo1cmhPCgpkZWx0YSA3OQp6Y21leVZAbCNgaGt4
R2hUVDlTY1RxTlJtZG56NS1fTnxIZ2NmdGlfXnY3dGV0aUQ5YXRNWEswOyF3VmIzek9oYnIKaVV7
Yy1lIX1mXys/NjNHd2RCZ0wxZUBkaG5mV1h0JCZ0O3VjTEs2VGU4NSooeAoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9wZXJjZW50LXRvcC12
YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0
aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnR4dAppbmRleCAxZTk3ZjY2MjRjZDJlNmE5YTFlZjhjYWE4
ZDgzYjYwNDI4MjNlMmUyLi43Zjk2NGIwMDg2MmY3NDJkYWU1NDkyMmVjYmYwYTViNDFmOTVmODFi
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9jc3Mv
cGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvY3NzL3BlcmNlbnQtdG9w
LXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0ZWQudHh0CkBAIC00LDcgKzQsNyBA
QCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgw
LDApIHNpemUgODAweDYwMAogICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0
eDU4NAogICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4NTg0Ci1sYXll
ciBhdCAoOCwzMDgpIHNpemUgNzg0eDIwCitsYXllciBhdCAoOCwzMDApIHNpemUgNzg0eDIwCiAg
IFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDc4
NHgyMAogICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDM3OXgxOQogICAgICAg
dGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMzc5OiAiVGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgdGV4
dCBpcyByZW5kZXJlZCBpbiB0aGUgbWlkZGxlIG9mIHRoZSBwYWdlLiIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162828</attachid>
            <date>2012-09-07 11:26:14 -0700</date>
            <delta_ts>2012-09-07 11:27:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96031-20120907112553.patch</filename>
            <type>text/plain</type>
            <size>17116</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3ODkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDUxZjBmZTJhNjM3MjFm
NTIzZDhkNWQwYzkzODBlMDI1Y2E2OTI3Ni4uNTgxYWUyZDc1NWM5ZThjZmNjMThhMjliNmJkMDky
YTExYWRkZTA5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA5LTA3ICBPamFu
IFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IFJlbmRlckJveDo6YXZh
aWxhYmxlSGVpZ2h0IHRvIHN1YnRyYWN0IHNjcm9sbGJhcnMgaW4gdGhlIHJpZ2h0IHBsYWNlcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYwMzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIG1hdGNo
ZXMgRmlyZWZveCAxNSBhbmQgSUU5IHJlbmRlcmluZyBmb3IgdGhlIHR3byBuZXcgdGVzdHMuCisK
KyAgICAgICAgVGVzdHM6IGZhc3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1v
bi1yZWxhdGl2ZS1wb3NpdGlvbi5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9uZXN0ZWQt
cGVyY2VudC1oZWlnaHQtb24tcmVwbGFjZWQuaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbXB1dGVQZXJjZW50
YWdlTG9naWNhbEhlaWdodCk6CisgICAgICAgIFN1YnRyYWN0IHNjcm9sbGJhcnMgd2hlbiByZWN1
cnJpbmcgb24gcGVyY2VudGFnZSBoZWlnaHRzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94
Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0VXNpbmcpOgorICAgICAgICBUaGlzIGlzIHRo
ZSB3cm9uZyBwbGFjZSB0byBzdWJ0cmFjdCBzY3JvbGxiYXJzLiBhdmFpbGFibGVMb2dpY2FsSGVp
Z2h0CisgICAgICAgIHNob3VsZCByZXR1cm4gYSB2YWx1ZSB0aGF0IGRvZXNuJ3QgaW5jbHVkZSBz
Y3JvbGxiYXJzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjphdmFpbGFibGVMb2dpY2Fs
SGVpZ2h0VXNpbmcpOgorICAgICAgICBTdWJ0cmFjdCBzY3JvbGxiYXJzIGZyb20gc3BlY2lmaWVk
IGhlaWdodHMuIEFsc28sIGNvbnNvbGlkYXRlIHRoZSBjb2RlIHRvCisgICAgICAgIHVzZSBjb21w
dXRlQ29udGVudExvZ2ljYWxIZWlnaHRVc2luZy4gVGhpcyBtYWtlcyBwZXJjZW50YWdlIGhlaWdo
dHMgdXNlCisgICAgICAgIHRoZSByaWdodCBjb250YWluaW5nQmxvY2sgaW4gcXVpcmtzIG1vZGUg
YW5kIG1ha2VzIHZpZXdwb3J0IHBlcmNlbnRhZ2UgaGVpZ2h0cyB3b3JrLgorCiAyMDEyLTA5LTA3
ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBSZW1vdmUgZGVhZCBDQ0FjdGl2ZUdlc3R1cmVBbmltYXRpb24gY29kZSBhbmQgcmVsYXRl
ZCBjbGFzc2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IDE3MmM0
NWZmNGRkYjlhODUwMzZkZTJiZGI4Y2NmOTI1NWI5M2JmODkuLmE2M2YyZmJmMjIyNDRkZDAzY2M3
MjI2NjBkNWU1NzFhY2UyYTQ0ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
Y3BwCkBAIC0yMTA2LDcgKzIxMDYsNyBAQCBMYXlvdXRVbml0IFJlbmRlckJveDo6Y29tcHV0ZUxv
Z2ljYWxDbGllbnRIZWlnaHQoU2l6ZVR5cGUgaGVpZ2h0VHlwZSwgY29uc3QgTGVuZwogICAgIExh
eW91dFVuaXQgaGVpZ2h0SW5jbHVkaW5nU2Nyb2xsYmFyID0gY29tcHV0ZUNvbnRlbnRMb2dpY2Fs
SGVpZ2h0VXNpbmcoaGVpZ2h0VHlwZSwgaGVpZ2h0KTsKICAgICBpZiAoaGVpZ2h0SW5jbHVkaW5n
U2Nyb2xsYmFyID09IC0xKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgcmV0dXJuIHN0ZDo6bWF4
KExheW91dFVuaXQoMCksIGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodChoZWlnaHRJbmNs
dWRpbmdTY3JvbGxiYXIpIC0gc2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKTsKKyAgICByZXR1cm4g
c3RkOjptYXg8TGF5b3V0VW5pdD4oMCwgY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KGhl
aWdodEluY2x1ZGluZ1Njcm9sbGJhcikgLSBzY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpOwogfQog
CiBMYXlvdXRVbml0IFJlbmRlckJveDo6Y29tcHV0ZUNvbnRlbnRMb2dpY2FsSGVpZ2h0VXNpbmco
U2l6ZVR5cGUgaGVpZ2h0VHlwZSwgY29uc3QgTGVuZ3RoJiBoZWlnaHQpIGNvbnN0CkBAIC0yMTc4
LDkgKzIxNzgsMTEgQEAgTGF5b3V0VW5pdCBSZW5kZXJCb3g6OmNvbXB1dGVQZXJjZW50YWdlTG9n
aWNhbEhlaWdodChjb25zdCBMZW5ndGgmIGhlaWdodCkgY29uc3QKICAgICAgICAgcmVzdWx0ID0g
bWF4PExheW91dFVuaXQ+KDAsIGNvbnRlbnRCb3hIZWlnaHRXaXRoU2Nyb2xsYmFyIC0gY2ItPnNj
cm9sbGJhckxvZ2ljYWxIZWlnaHQoKSk7CiAgICAgfSBlbHNlIGlmIChjYnN0eWxlLT5sb2dpY2Fs
SGVpZ2h0KCkuaXNQZXJjZW50KCkgJiYgIWlzT3V0T2ZGbG93UG9zaXRpb25lZFdpdGhTcGVjaWZp
ZWRIZWlnaHQpIHsKICAgICAgICAgLy8gV2UgbmVlZCB0byByZWN1ciBhbmQgY29tcHV0ZSB0aGUg
cGVyY2VudGFnZSBoZWlnaHQgZm9yIG91ciBjb250YWluaW5nIGJsb2NrLgotICAgICAgICByZXN1
bHQgPSBjYi0+Y29tcHV0ZVBlcmNlbnRhZ2VMb2dpY2FsSGVpZ2h0KGNic3R5bGUtPmxvZ2ljYWxI
ZWlnaHQoKSk7Ci0gICAgICAgIGlmIChyZXN1bHQgIT0gLTEpCi0gICAgICAgICAgICByZXN1bHQg
PSBjYi0+Y29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KHJlc3VsdCk7CisgICAgICAgIExh
eW91dFVuaXQgaGVpZ2h0V2l0aFNjcm9sbGJhciA9IGNiLT5jb21wdXRlUGVyY2VudGFnZUxvZ2lj
YWxIZWlnaHQoY2JzdHlsZS0+bG9naWNhbEhlaWdodCgpKTsKKyAgICAgICAgaWYgKGhlaWdodFdp
dGhTY3JvbGxiYXIgIT0gLTEpIHsKKyAgICAgICAgICAgIExheW91dFVuaXQgY29udGVudEJveEhl
aWdodFdpdGhTY3JvbGxiYXIgPSBjYi0+Y29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KGhl
aWdodFdpdGhTY3JvbGxiYXIpOworICAgICAgICAgICAgcmVzdWx0ID0gbWF4PExheW91dFVuaXQ+
KDAsIGNvbnRlbnRCb3hIZWlnaHRXaXRoU2Nyb2xsYmFyIC0gY2ItPnNjcm9sbGJhckxvZ2ljYWxI
ZWlnaHQoKSk7CisgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKGNiLT5pc1JlbmRlclZpZXcoKSB8
fCAoY2ItPmlzQm9keSgpICYmIGRvY3VtZW50KCktPmluUXVpcmtzTW9kZSgpKSB8fCBpc091dE9m
Rmxvd1Bvc2l0aW9uZWRXaXRoU3BlY2lmaWVkSGVpZ2h0KSB7CiAgICAgICAgIC8vIERvbid0IGFs
bG93IHRoaXMgdG8gYWZmZWN0IHRoZSBibG9jaycgaGVpZ2h0KCkgbWVtYmVyIHZhcmlhYmxlLCBz
aW5jZSB0aGlzCiAgICAgICAgIC8vIGNhbiBnZXQgY2FsbGVkIHdoaWxlIHRoZSBibG9jayBpcyBz
dGlsbCBsYXlpbmcgb3V0IGl0cyBraWRzLgpAQCAtMjMxMCwxMCArMjMxMiw3IEBAIExheW91dFVu
aXQgUmVuZGVyQm94Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0VXNpbmcoU2l6ZVR5cGUg
c2l6ZVR5cGUsIExlbmd0CiAgICAgICAgICAgICAgICAgICAgIGNiID0gY2ItPmNvbnRhaW5pbmdC
bG9jaygpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGF2
YWlsYWJsZUhlaWdodCA9IGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodCh2YWx1ZUZvckxl
bmd0aChsb2dpY2FsSGVpZ2h0LCBhdmFpbGFibGVIZWlnaHQpKTsKLSAgICAgICAgICAgIGlmIChj
Yi0+aXNCb3goKSAmJiBjYi0+c3R5bGUoKS0+bG9naWNhbEhlaWdodCgpLmlzRml4ZWQoKSkKLSAg
ICAgICAgICAgICAgICBhdmFpbGFibGVIZWlnaHQgPSBtYXg8TGF5b3V0VW5pdD4oMCwgYXZhaWxh
YmxlSGVpZ2h0IC0gdG9SZW5kZXJCb3goY2IpLT5zY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpOwot
ICAgICAgICAgICAgcmV0dXJuIGF2YWlsYWJsZUhlaWdodDsKKyAgICAgICAgICAgIHJldHVybiBj
b21wdXRlQ29udGVudEJveExvZ2ljYWxIZWlnaHQodmFsdWVGb3JMZW5ndGgobG9naWNhbEhlaWdo
dCwgYXZhaWxhYmxlSGVpZ2h0KSk7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBWaWV3cG9ydFBl
cmNlbnRhZ2VXaWR0aDoKICAgICAgICAgY2FzZSBWaWV3cG9ydFBlcmNlbnRhZ2VIZWlnaHQ6CkBA
IC0yMzMxLDkgKzIzMzAsNiBAQCBMYXlvdXRVbml0IFJlbmRlckJveDo6YXZhaWxhYmxlTG9naWNh
bEhlaWdodCgpIGNvbnN0CiAKIExheW91dFVuaXQgUmVuZGVyQm94OjphdmFpbGFibGVMb2dpY2Fs
SGVpZ2h0VXNpbmcoY29uc3QgTGVuZ3RoJiBoKSBjb25zdAogewotICAgIGlmIChoLmlzRml4ZWQo
KSkKLSAgICAgICAgcmV0dXJuIGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodChoLnZhbHVl
KCkpOwotCiAgICAgaWYgKGlzUmVuZGVyVmlldygpKQogICAgICAgICByZXR1cm4gaXNIb3Jpem9u
dGFsV3JpdGluZ01vZGUoKSA/IHRvUmVuZGVyVmlldyh0aGlzKS0+ZnJhbWVWaWV3KCktPnZpc2li
bGVIZWlnaHQoKSA6IHRvUmVuZGVyVmlldyh0aGlzKS0+ZnJhbWVWaWV3KCktPnZpc2libGVXaWR0
aCgpOwogCkBAIC0yMzQzLDE5ICsyMzM5LDE2IEBAIExheW91dFVuaXQgUmVuZGVyQm94OjphdmFp
bGFibGVMb2dpY2FsSGVpZ2h0VXNpbmcoY29uc3QgTGVuZ3RoJiBoKSBjb25zdAogICAgIGlmIChp
c1RhYmxlQ2VsbCgpICYmIChoLmlzQXV0bygpIHx8IGguaXNQZXJjZW50KCkpKQogICAgICAgICBy
ZXR1cm4gb3ZlcnJpZGVMb2dpY2FsQ29udGVudEhlaWdodCgpOwogCi0gICAgaWYgKGguaXNQZXJj
ZW50KCkpIHsKLSAgICAgICAgTGF5b3V0VW5pdCBhdmFpbGFibGVIZWlnaHQ7Ci0gICAgICAgIC8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDA0NgotICAgICAgICAv
LyBGb3IgYWJzb2x1dGVseSBwb3NpdGlvbmVkIGVsZW1lbnRzIHdob3NlIGNvbnRhaW5pbmcgYmxv
Y2sgaXMgYmFzZWQgb24gYSBibG9jay1sZXZlbCBlbGVtZW50LAotICAgICAgICAvLyB0aGUgcGVy
Y2VudGFnZSBpcyBjYWxjdWxhdGVkIHdpdGggcmVzcGVjdCB0byB0aGUgaGVpZ2h0IG9mIHRoZSBw
YWRkaW5nIGJveCBvZiB0aGF0IGVsZW1lbnQKLSAgICAgICAgaWYgKGlzT3V0T2ZGbG93UG9zaXRp
b25lZCgpKQotICAgICAgICAgICAgYXZhaWxhYmxlSGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrTG9n
aWNhbEhlaWdodEZvclBvc2l0aW9uZWQoY29udGFpbmluZ0Jsb2NrKCkpOwotICAgICAgICBlbHNl
Ci0gICAgICAgICAgICBhdmFpbGFibGVIZWlnaHQgPSBjb250YWluaW5nQmxvY2soKS0+YXZhaWxh
YmxlTG9naWNhbEhlaWdodCgpOworICAgIGlmIChoLmlzUGVyY2VudCgpICYmIGlzT3V0T2ZGbG93
UG9zaXRpb25lZCgpKSB7CisgICAgICAgIExheW91dFVuaXQgYXZhaWxhYmxlSGVpZ2h0ID0gY29u
dGFpbmluZ0Jsb2NrTG9naWNhbEhlaWdodEZvclBvc2l0aW9uZWQoY29udGFpbmluZ0Jsb2NrKCkp
OwogICAgICAgICByZXR1cm4gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KHZhbHVlRm9y
TGVuZ3RoKGgsIGF2YWlsYWJsZUhlaWdodCkpOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBXZSBj
YW4ndCBqdXN0IGNoZWNrIHRvcC9ib3R0b20gaGVyZS4KKyAgICBMYXlvdXRVbml0IGhlaWdodElu
Y2x1ZGluZ1Njcm9sbGJhciA9IGNvbXB1dGVDb250ZW50TG9naWNhbEhlaWdodFVzaW5nKE1haW5P
clByZWZlcnJlZFNpemUsIGgpOworICAgIGlmIChoZWlnaHRJbmNsdWRpbmdTY3JvbGxiYXIgIT0g
LTEpCisgICAgICAgIHJldHVybiBzdGQ6Om1heDxMYXlvdXRVbml0PigwLCBjb21wdXRlQ29udGVu
dEJveExvZ2ljYWxIZWlnaHQoaGVpZ2h0SW5jbHVkaW5nU2Nyb2xsYmFyKSAtIHNjcm9sbGJhckxv
Z2ljYWxIZWlnaHQoKSk7CisKKyAgICAvLyBGSVhNRTogQ2hlY2sgbG9naWNhbFRvcC9sb2dpY2Fs
Qm90dG9tIGhlcmUgdG8gY29ycmVjdGx5IGhhbmRsZSB2ZXJ0aWNhbCB3cml0aW5nLW1vZGUuCiAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2NTAwCiAgICAg
aWYgKGlzUmVuZGVyQmxvY2soKSAmJiBpc091dE9mRmxvd1Bvc2l0aW9uZWQoKSAmJiBzdHlsZSgp
LT5oZWlnaHQoKS5pc0F1dG8oKSAmJiAhKHN0eWxlKCktPnRvcCgpLmlzQXV0bygpIHx8IHN0eWxl
KCktPmJvdHRvbSgpLmlzQXV0bygpKSkgewogICAgICAgICBSZW5kZXJCbG9jayogYmxvY2sgPSBj
b25zdF9jYXN0PFJlbmRlckJsb2NrKj4odG9SZW5kZXJCbG9jayh0aGlzKSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMWIx
MWU4Y2ZiYmNjYzhkYzAxNGQyMmM2OWRkNjY4YjFjMDJmYWVmMi4uY2NkOWU4Y2QwOTQ2ZTBhZmY0
NzU1ZjQ3Y2Y3YjJmYjc0NWJhMWRmMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA5LTA3
ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IFJlbmRlckJv
eDo6YXZhaWxhYmxlSGVpZ2h0IHRvIHN1YnRyYWN0IHNjcm9sbGJhcnMgaW4gdGhlIHJpZ2h0IHBs
YWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYw
MzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZh
c3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3NpdGlv
bi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24uaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9u
LXJlcGxhY2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4
L2Zhc3QvY3NzL3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0
ZWQucG5nOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9wZXJjZW50
LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
VGhpcyBpcyBub3cgY29ycmVjdGx5IGNlbnRlcmluZyB0aGUgNTAlLiBJdCBtb3ZlZCB1cCA4cHgg
YmVjYXVzZSB0aGF0IGlzIGhhbGYgb2YgdGhlIHNjcm9sbGJhciBoZWlnaHQuCisKIDIwMTItMDkt
MDcgIEZhZHkgU2FtdWVsICA8ZnNhbXVlbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCByZWJhc2VsaW5lIGZvciBjaHJvbWl1bSBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRp
dmUtcG9zaXRpb24tZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRp
b25pbmcvcGVyY2VudC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3NpdGlvbi1leHBlY3RlZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmQ1MWRiOTBlZjY4NTAzOTA2ODM0YzhlOTdiZDFjZjJlNGVjNmRiMTYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNl
bnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsx
LDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxzdHlsZT4KK2h0bWwsYm9keSB7CisgICAgbWFyZ2lu
OiAwOworICAgIHBhZGRpbmc6IDA7Cit9CisuY29udGFpbmVyIHsKKyAgICBoZWlnaHQ6IDUwcHg7
CisgICAgd2lkdGg6IDUwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOworICAgIGJv
cmRlcjogMXB4IHNvbGlkOworfQorLmNoaWxkIHsKKyAgICBtYXJnaW46IDIwJTsKKyAgICBoZWln
aHQ6IDEwcHg7CisgICAgd2lkdGg6IDEwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogc2FsbW9u
OworfQorPC9zdHlsZT4KKzxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CisgICAgPGRpdiBjbGFzcz0i
Y2hpbGQiPjwvZGl2PgorPC9kaXY+Cis8YnI+Cis8ZGl2IGNsYXNzPSJjb250YWluZXIiIHN0eWxl
PSJvdmVyZmxvdzpzY3JvbGwiPgorICAgIDxkaXYgY2xhc3M9ImNoaWxkIj48L2Rpdj4KKzwvZGl2
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9wZXJjZW50
LXRvcC1sZWZ0LW9uLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Js
b2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24uaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zYTZhMDA5N2VkYjBiZGM1NTVkOWNlNjFmODAzZTJhNjM4NDY2ODIyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9wZXJj
ZW50LXRvcC1sZWZ0LW9uLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwKQEAgLTAsMCArMSwyNyBAQAor
PCFET0NUWVBFIGh0bWw+Cis8c3R5bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9CisuY29u
dGFpbmVyIHsKKyAgICBib3JkZXI6IDFweCBzb2xpZDsKKyAgICBoZWlnaHQ6IDUwcHg7CisgICAg
d2lkdGg6IDUwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOworfQorLmNoaWxkIHsK
KyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgdG9wOiAyMCU7CisgICAgbGVmdDogMjAlOwor
ICAgIGhlaWdodDogMTBweDsKKyAgICB3aWR0aDogMTBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9y
OiBzYWxtb247Cit9Cis8L3N0eWxlPgorPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KKyAgICA8ZGl2
IGNsYXNzPSJjaGlsZCI+PC9kaXY+Cis8L2Rpdj4KKzxicj4KKzxkaXYgY2xhc3M9ImNvbnRhaW5l
ciIgc3R5bGU9Im92ZXJmbG93OnNjcm9sbCI+CisgICAgPGRpdiBjbGFzcz0iY2hpbGQiPjwvZGl2
PgorPC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtcGVyY2Vu
dC1oZWlnaHQtb24tcmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
bmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44MDMzYThjNDRhNjMzMDE0MWNkYmFjMGJiYmQ1N2VlZTgxNjMwY2VkCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxh
Y2VkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAKK1BBU1MKKworUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2Vk
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtcGVyY2VudC1oZWlnaHQtb24tcmVw
bGFjZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZmEzZjZmZGZjZTE4N2YyNTZhY2E4NGFmOTAyNzc2NjU3
NWZkMTgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBl
cmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLmh0bWwKQEAgLTAsMCArMSw2MSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2NoZWNrLWxheW91dC5qcyI+PC9z
Y3JpcHQ+Cis8Ym9keT4KKworPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAy
MDBweDsgd2lkdGg6IDQwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb24iPgorICAgIDxkaXYg
c3R5bGU9Im92ZXJmbG93OiBzY3JvbGw7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZC1jb2xvcjog
cHVycGxlIj4KKyAgICAgICAgPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAx
MDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJwbGUiPgorICAgICAgICAgICAgPGRpdiBzdHlsZT0i
Ym9yZGVyOiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBv
cmFuZ2UiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8ZGl2
IHN0eWxlPSJvdmVyZmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDIwMHB4OyB3aWR0aDogNDAwcHg7IGJh
Y2tncm91bmQtY29sb3I6IHNhbG1vbiI+CisgICAgPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9s
bDsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJwbGUiPgorICAgICAgICA8ZGl2
IHN0eWxlPSJvdmVyZmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6
IHB1cnBsZTtsaW5lLWhlaWdodDogMCI+CisgICAgICAgICAgICA8aWZyYW1lIHN0eWxlPSJib3Jk
ZXI6IDA7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6IG9yYW5n
ZSI+PC9pZnJhbWU+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxzY3Jp
cHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKK3ZhciBkdW1teSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworZHVtbXkuc3R5
bGUub3ZlcmZsb3cgPSAic2Nyb2xsIjsKK2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZHVtbXkp
OwordmFyIHNjcm9sbGJhcldpZHRoID0gZHVtbXkub2Zmc2V0V2lkdGggLSBkdW1teS5jbGllbnRX
aWR0aDsKK2RvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZHVtbXkpOworCitmdW5jdGlvbiBzZXRF
eHBlY3RlZChub2RlLCB3aWR0aCwgaGVpZ2h0KQoreworICAgIG5vZGUuc2V0QXR0cmlidXRlKCdk
YXRhLWV4cGVjdGVkLXdpZHRoJywgd2lkdGgpOworICAgIG5vZGUuc2V0QXR0cmlidXRlKCdkYXRh
LWV4cGVjdGVkLWhlaWdodCcsIGhlaWdodCk7Cit9CisKK3ZhciBjb250YWluZXJzID0gZG9jdW1l
bnQucXVlcnlTZWxlY3RvckFsbCgnYm9keSA+IGRpdicpOworZm9yICh2YXIgaSA9IDA7IGkgPCBj
b250YWluZXJzLmxlbmd0aDsgaSsrKSB7CisgICAgdmFyIHdpZHRoID0gY29udGFpbmVyc1tpXS5v
ZmZzZXRXaWR0aDsKKyAgICB2YXIgaGVpZ2h0ID0gY29udGFpbmVyc1tpXS5vZmZzZXRIZWlnaHQ7
CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xsYmFy
V2lkdGg7CisgICAgdmFyIGZpcnN0ID0gY29udGFpbmVyc1tpXS5xdWVyeVNlbGVjdG9yKCdkaXYn
KTsKKyAgICBzZXRFeHBlY3RlZChmaXJzdCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICB3aWR0aCAt
PSBzY3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAgdmFy
IHNlY29uZCA9IGZpcnN0LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOworICAgIHNldEV4cGVjdGVkKHNl
Y29uZCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAg
ICBoZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAgdmFyIHRoaXJkID0gc2Vjb25kLnF1ZXJ5
U2VsZWN0b3IoJyonKTsKKyAgICBzZXRFeHBlY3RlZCh0aGlyZCwgd2lkdGgsIGhlaWdodCk7Cit9
CisKK2NoZWNrTGF5b3V0KCdib2R5ID4gZGl2JykKKzwvc2NyaXB0PgorCis8L2JvZHk+ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Y2hyb21pdW0tbGludXgvZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1w
b3NpdGlvbi1leHBlY3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51
eC9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVj
dGVkLnBuZwppbmRleCA0OTBjYjhmZjQ3YzhlOTA1M2Y3ZTRhMWQwMTVhMjVmYTA2Y2IyMzU4Li5i
OWZmODVkN2MyYWZmNGYyMmUzM2E2ZWVjMDRjY2MyNDkwNmUxNjhhIDEwMDY0NApHSVQgYmluYXJ5
IHBhdGNoCmRlbHRhIDc5CnpjbWV5VkBsI2BoayYxO3VudVZkNm5XZHA9VnhwT0dZTkM7JE1Vckti
TDFMMUhRSlQ0aHJEZ1Yja0NffDh6T2ltRAppV2MkUUIqP356Xz82M0lHUXA1QTZTcUA8Z0s7WUA+
PWQjV3pwJFB5bFo1cmhPCgpkZWx0YSA3OQp6Y21leVZAbCNgaGt4R2hUVDlTY1RxTlJtZG56NS1f
TnxIZ2NmdGlfXnY3dGV0aUQ5YXRNWEswOyF3VmIzek9oYnIKaVV7Yy1lIX1mXys/NjNHd2RCZ0wx
ZUBkaG5mV1h0JCZ0O3VjTEs2VGU4NSooeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZl
LXBvc2l0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdp
bi9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVj
dGVkLnR4dAppbmRleCAxZTk3ZjY2MjRjZDJlNmE5YTFlZjhjYWE4ZDgzYjYwNDI4MjNlMmUyLi43
Zjk2NGIwMDg2MmY3NDJkYWU1NDkyMmVjYmYwYTViNDFmOTVmODFiIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUt
d2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0td2luL2Zhc3QvY3NzL3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRp
dmUtcG9zaXRpb24tZXhwZWN0ZWQudHh0CkBAIC00LDcgKzQsNyBAQCBsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKICAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDYwMAog
ICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDU4NAogICAgICAgUmVuZGVy
QmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSA3ODR4NTg0Ci1sYXllciBhdCAoOCwzMDgpIHNpemUg
Nzg0eDIwCitsYXllciBhdCAoOCwzMDApIHNpemUgNzg0eDIwCiAgIFJlbmRlckJsb2NrIChyZWxh
dGl2ZSBwb3NpdGlvbmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDc4NHgyMAogICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDM3OXgxOQogICAgICAgdGV4dCBydW4gYXQgKDAsMCkg
d2lkdGggMzc5OiAiVGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgdGV4dCBpcyByZW5kZXJlZCBpbiB0
aGUgbWlkZGxlIG9mIHRoZSBwYWdlLiIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1
bS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGY5MzU2NzZiMDFmYjgyN2VhMjBhNjMzYjQ3M2QzZDYy
YzJlODZjOGYuLjA5ZDM5ZDMyNjU4ZTJiNjNiM2Y0NzgzZGJhZGUxZDdkYzdjNGFhYjggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzU5
OSwzICszNTk5LDUgQEAgQlVHV0s5NTgxMyA6IGZhc3QvaW5uZXJIVE1ML2lubmVySFRNTC1pZnJh
bWUuaHRtbCA9IFRFWFQgUEFTUwogQlVHV0s5NjA0MSBMSU5VWCA6IHBsYXRmb3JtL2Nocm9taXVt
LWxpbnV4L2NvbXBvc2l0aW5nL2dlc3R1cmVzID0gUEFTUyBJTUFHRQogQlVHV0s5NjA0MSBMSU5V
WCA6IGh0dHAvdGVzdHMvY2FjaGUvc3RvcHBlZC1yZXZhbGlkYXRpb24uaHRtbCA9IE1JU1NJTkcg
UEFTUwogQlVHQ1I4ODg5NCBCVUdXSzk2MDQxIFNMT1cgTElOVVggOiBodHRwL3Rlc3RzL2NhY2hl
L3N1YnJlc291cmNlLWV4cGlyYXRpb24tMS5odG1sID0gTUlTU0lORyBQQVNTCisKK0JVR19PSkFO
IE1BQyBXSU4gOiBmYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0
aW9uLmh0bWwgPSBJTUFHRStURVhUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9l
ZmwvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0
YXRpb25zCmluZGV4IDllNTk4NDMzNzAwNmU0MjY0ZTU4ZTljMmE0YWM5ODc4MmJiYWQyNzkuLmE4
MzczZDUwNTBiNThkMzhmOTZlYWNjMWIyOTBiN2U1NDg2YTY2YzQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCkBAIC0xMDg5LDMgKzEwODksNSBAQCBCVUdXSzk1
ODEzIDogZmFzdC9pbm5lckhUTUwvaW5uZXJIVE1MLWlmcmFtZS5odG1sID0gVEVYVAogCiAvLyBF
RkwgZG9lcyBub3QgeWV0IHN1cHBvcnQgZ2xvYmFsIHNlbGVjdGlvbgogQlVHV0s4ODIzOCBTS0lQ
IDogZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWdsb2JhbC1zZWxlY3Rpb24uaHRtbCA9IFRFWFQK
KworQlVHX09KQU4gOiBmYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBv
c2l0aW9uLmh0bWwgPSBURVhUIElNQUdFK1RFWFQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rl
c3RFeHBlY3RhdGlvbnMKaW5kZXggZjcxN2NlNTJkZTIyN2E0N2M2ZTgxMDUzMGFmMzJiMDQwMDlh
ZmYwNi4uYTYzMjJlNWQ0ODM5YTMzYzRkODU2MTUwYjBmYTE0MGY3MWJmMWY0NiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEzMDgsNiArMTMwOCw4IEBA
IEJVR1dLOTU1MzAgOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2luYWN0aXZlLWRvY3VtZW50LXdpdGgt
ZW1wdHktc2VjdXJpdHktb3JpZ2luLmh0CiAKIEJVR1dLODgyMzggOiBlZGl0aW5nL3Bhc3RlYm9h
cmQvcGFzdGUtZ2xvYmFsLXNlbGVjdGlvbi5odG1sID0gVEVYVAogCitCVUdfT0pBTiA6IGZhc3Qv
Y3NzL3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24uaHRtbCA9IFRFWFQg
SU1BR0UrVEVYVAorCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIC8vIEVuZCBv
ZiBUZXN0cyBmYWlsaW5nCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYmZlOGFjOWNjZWY2ZGMw
MGQ5ZDQ5MzcwZDYwMWVmMmNmMzkyZDZkMS4uZmJjNzJmY2IxYzhkY2YwZGNiODBjZTI2ZDlhYjY2
YzU3OGVmYzY5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMK
QEAgLTM3MSwzICszNzEsNSBAQCBCVUdXSzgwMzk0IDogZmFzdC9ibG9jay9tYXJnaW4tY29sbGFw
c2UvYmxvY2staW5zaWRlLWlubGluZS8wMjUuaHRtbCA9IFRFWFQKIEJVR1dLOTQ0NTggU0tJUCA6
IGZhc3QvZXZlbnRzL21lc3NhZ2UtcG9ydC1jb25zdHJ1Y3Rvci1mb3ItZGVsZXRlZC1kb2N1bWVu
dC5odG1sID0gUEFTUwogCiBCVUdXSzk1NTAxIFNLSVAgOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2lu
YWN0aXZlLWRvY3VtZW50LXdpdGgtZW1wdHktc2VjdXJpdHktb3JpZ2luLmh0bWwgPSBUSU1FT1VU
CisKK0JVR19PSkFOIDogZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1w
b3NpdGlvbi5odG1sID0gVEVYVCBJTUFHRStURVhUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBhY2E1YTY1ZmQyYzI5Y2ViZDQ4MTE2ZWQ0Mzk5MzkyMWJmZGRm
NjUyLi44ZmI3ZDJkMjMzNDNhODEyNzNmYTExNjVjMWE1ZDE5Yzk2YjQyOGNlIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL3F0L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE0MCwzICsxNDAsNSBAQCBCVUdX
Szk0MDA0IDogY3NzMi4xLzIwMTEwMzIzL2M1NDEtd29yZC1zcC0wMDAuaHRtID0gSU1BR0UKIEJV
R1dLOTQwMDUgOiBjc3MyLjEvMjAxMTAzMjMvd29yZC1zcGFjaW5nLXJlbW92ZS1zcGFjZS0wMDMu
aHRtID0gSU1BR0UKIEJVR1dLOTQwMDUgOiBjc3MyLjEvMjAxMTAzMjMvd29yZC1zcGFjaW5nLXJl
bW92ZS1zcGFjZS0wMDYuaHRtID0gSU1BR0UKIEJVR1dLOTQwMDYgOiBmYXN0L2Nzcy93b3JkLXNw
YWNpbmctY2hhcmFjdGVycy1jb21wbGV4LXRleHQuaHRtbCA9IElNQUdFCisKK0JVR19PSkFOIDog
ZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi5odG1sID0g
VEVYVCBJTUFHRStURVhUCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162830</attachid>
            <date>2012-09-07 11:27:53 -0700</date>
            <delta_ts>2012-09-07 13:28:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96031-20120907112733.patch</filename>
            <type>text/plain</type>
            <size>17161</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3ODkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDUxZjBmZTJhNjM3MjFm
NTIzZDhkNWQwYzkzODBlMDI1Y2E2OTI3Ni4uNTgxYWUyZDc1NWM5ZThjZmNjMThhMjliNmJkMDky
YTExYWRkZTA5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA5LTA3ICBPamFu
IFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IFJlbmRlckJveDo6YXZh
aWxhYmxlSGVpZ2h0IHRvIHN1YnRyYWN0IHNjcm9sbGJhcnMgaW4gdGhlIHJpZ2h0IHBsYWNlcwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYwMzEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIG1hdGNo
ZXMgRmlyZWZveCAxNSBhbmQgSUU5IHJlbmRlcmluZyBmb3IgdGhlIHR3byBuZXcgdGVzdHMuCisK
KyAgICAgICAgVGVzdHM6IGZhc3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1v
bi1yZWxhdGl2ZS1wb3NpdGlvbi5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy9uZXN0ZWQt
cGVyY2VudC1oZWlnaHQtb24tcmVwbGFjZWQuaHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OmNvbXB1dGVQZXJjZW50
YWdlTG9naWNhbEhlaWdodCk6CisgICAgICAgIFN1YnRyYWN0IHNjcm9sbGJhcnMgd2hlbiByZWN1
cnJpbmcgb24gcGVyY2VudGFnZSBoZWlnaHRzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94
Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0VXNpbmcpOgorICAgICAgICBUaGlzIGlzIHRo
ZSB3cm9uZyBwbGFjZSB0byBzdWJ0cmFjdCBzY3JvbGxiYXJzLiBhdmFpbGFibGVMb2dpY2FsSGVp
Z2h0CisgICAgICAgIHNob3VsZCByZXR1cm4gYSB2YWx1ZSB0aGF0IGRvZXNuJ3QgaW5jbHVkZSBz
Y3JvbGxiYXJzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjphdmFpbGFibGVMb2dpY2Fs
SGVpZ2h0VXNpbmcpOgorICAgICAgICBTdWJ0cmFjdCBzY3JvbGxiYXJzIGZyb20gc3BlY2lmaWVk
IGhlaWdodHMuIEFsc28sIGNvbnNvbGlkYXRlIHRoZSBjb2RlIHRvCisgICAgICAgIHVzZSBjb21w
dXRlQ29udGVudExvZ2ljYWxIZWlnaHRVc2luZy4gVGhpcyBtYWtlcyBwZXJjZW50YWdlIGhlaWdo
dHMgdXNlCisgICAgICAgIHRoZSByaWdodCBjb250YWluaW5nQmxvY2sgaW4gcXVpcmtzIG1vZGUg
YW5kIG1ha2VzIHZpZXdwb3J0IHBlcmNlbnRhZ2UgaGVpZ2h0cyB3b3JrLgorCiAyMDEyLTA5LTA3
ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBSZW1vdmUgZGVhZCBDQ0FjdGl2ZUdlc3R1cmVBbmltYXRpb24gY29kZSBhbmQgcmVsYXRl
ZCBjbGFzc2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IDE3MmM0
NWZmNGRkYjlhODUwMzZkZTJiZGI4Y2NmOTI1NWI5M2JmODkuLmE2M2YyZmJmMjIyNDRkZDAzY2M3
MjI2NjBkNWU1NzFhY2UyYTQ0ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
Y3BwCkBAIC0yMTA2LDcgKzIxMDYsNyBAQCBMYXlvdXRVbml0IFJlbmRlckJveDo6Y29tcHV0ZUxv
Z2ljYWxDbGllbnRIZWlnaHQoU2l6ZVR5cGUgaGVpZ2h0VHlwZSwgY29uc3QgTGVuZwogICAgIExh
eW91dFVuaXQgaGVpZ2h0SW5jbHVkaW5nU2Nyb2xsYmFyID0gY29tcHV0ZUNvbnRlbnRMb2dpY2Fs
SGVpZ2h0VXNpbmcoaGVpZ2h0VHlwZSwgaGVpZ2h0KTsKICAgICBpZiAoaGVpZ2h0SW5jbHVkaW5n
U2Nyb2xsYmFyID09IC0xKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgcmV0dXJuIHN0ZDo6bWF4
KExheW91dFVuaXQoMCksIGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodChoZWlnaHRJbmNs
dWRpbmdTY3JvbGxiYXIpIC0gc2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKTsKKyAgICByZXR1cm4g
c3RkOjptYXg8TGF5b3V0VW5pdD4oMCwgY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KGhl
aWdodEluY2x1ZGluZ1Njcm9sbGJhcikgLSBzY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpOwogfQog
CiBMYXlvdXRVbml0IFJlbmRlckJveDo6Y29tcHV0ZUNvbnRlbnRMb2dpY2FsSGVpZ2h0VXNpbmco
U2l6ZVR5cGUgaGVpZ2h0VHlwZSwgY29uc3QgTGVuZ3RoJiBoZWlnaHQpIGNvbnN0CkBAIC0yMTc4
LDkgKzIxNzgsMTEgQEAgTGF5b3V0VW5pdCBSZW5kZXJCb3g6OmNvbXB1dGVQZXJjZW50YWdlTG9n
aWNhbEhlaWdodChjb25zdCBMZW5ndGgmIGhlaWdodCkgY29uc3QKICAgICAgICAgcmVzdWx0ID0g
bWF4PExheW91dFVuaXQ+KDAsIGNvbnRlbnRCb3hIZWlnaHRXaXRoU2Nyb2xsYmFyIC0gY2ItPnNj
cm9sbGJhckxvZ2ljYWxIZWlnaHQoKSk7CiAgICAgfSBlbHNlIGlmIChjYnN0eWxlLT5sb2dpY2Fs
SGVpZ2h0KCkuaXNQZXJjZW50KCkgJiYgIWlzT3V0T2ZGbG93UG9zaXRpb25lZFdpdGhTcGVjaWZp
ZWRIZWlnaHQpIHsKICAgICAgICAgLy8gV2UgbmVlZCB0byByZWN1ciBhbmQgY29tcHV0ZSB0aGUg
cGVyY2VudGFnZSBoZWlnaHQgZm9yIG91ciBjb250YWluaW5nIGJsb2NrLgotICAgICAgICByZXN1
bHQgPSBjYi0+Y29tcHV0ZVBlcmNlbnRhZ2VMb2dpY2FsSGVpZ2h0KGNic3R5bGUtPmxvZ2ljYWxI
ZWlnaHQoKSk7Ci0gICAgICAgIGlmIChyZXN1bHQgIT0gLTEpCi0gICAgICAgICAgICByZXN1bHQg
PSBjYi0+Y29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KHJlc3VsdCk7CisgICAgICAgIExh
eW91dFVuaXQgaGVpZ2h0V2l0aFNjcm9sbGJhciA9IGNiLT5jb21wdXRlUGVyY2VudGFnZUxvZ2lj
YWxIZWlnaHQoY2JzdHlsZS0+bG9naWNhbEhlaWdodCgpKTsKKyAgICAgICAgaWYgKGhlaWdodFdp
dGhTY3JvbGxiYXIgIT0gLTEpIHsKKyAgICAgICAgICAgIExheW91dFVuaXQgY29udGVudEJveEhl
aWdodFdpdGhTY3JvbGxiYXIgPSBjYi0+Y29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KGhl
aWdodFdpdGhTY3JvbGxiYXIpOworICAgICAgICAgICAgcmVzdWx0ID0gbWF4PExheW91dFVuaXQ+
KDAsIGNvbnRlbnRCb3hIZWlnaHRXaXRoU2Nyb2xsYmFyIC0gY2ItPnNjcm9sbGJhckxvZ2ljYWxI
ZWlnaHQoKSk7CisgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKGNiLT5pc1JlbmRlclZpZXcoKSB8
fCAoY2ItPmlzQm9keSgpICYmIGRvY3VtZW50KCktPmluUXVpcmtzTW9kZSgpKSB8fCBpc091dE9m
Rmxvd1Bvc2l0aW9uZWRXaXRoU3BlY2lmaWVkSGVpZ2h0KSB7CiAgICAgICAgIC8vIERvbid0IGFs
bG93IHRoaXMgdG8gYWZmZWN0IHRoZSBibG9jaycgaGVpZ2h0KCkgbWVtYmVyIHZhcmlhYmxlLCBz
aW5jZSB0aGlzCiAgICAgICAgIC8vIGNhbiBnZXQgY2FsbGVkIHdoaWxlIHRoZSBibG9jayBpcyBz
dGlsbCBsYXlpbmcgb3V0IGl0cyBraWRzLgpAQCAtMjMxMCwxMCArMjMxMiw3IEBAIExheW91dFVu
aXQgUmVuZGVyQm94Ojpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0VXNpbmcoU2l6ZVR5cGUg
c2l6ZVR5cGUsIExlbmd0CiAgICAgICAgICAgICAgICAgICAgIGNiID0gY2ItPmNvbnRhaW5pbmdC
bG9jaygpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGF2
YWlsYWJsZUhlaWdodCA9IGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodCh2YWx1ZUZvckxl
bmd0aChsb2dpY2FsSGVpZ2h0LCBhdmFpbGFibGVIZWlnaHQpKTsKLSAgICAgICAgICAgIGlmIChj
Yi0+aXNCb3goKSAmJiBjYi0+c3R5bGUoKS0+bG9naWNhbEhlaWdodCgpLmlzRml4ZWQoKSkKLSAg
ICAgICAgICAgICAgICBhdmFpbGFibGVIZWlnaHQgPSBtYXg8TGF5b3V0VW5pdD4oMCwgYXZhaWxh
YmxlSGVpZ2h0IC0gdG9SZW5kZXJCb3goY2IpLT5zY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpOwot
ICAgICAgICAgICAgcmV0dXJuIGF2YWlsYWJsZUhlaWdodDsKKyAgICAgICAgICAgIHJldHVybiBj
b21wdXRlQ29udGVudEJveExvZ2ljYWxIZWlnaHQodmFsdWVGb3JMZW5ndGgobG9naWNhbEhlaWdo
dCwgYXZhaWxhYmxlSGVpZ2h0KSk7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBWaWV3cG9ydFBl
cmNlbnRhZ2VXaWR0aDoKICAgICAgICAgY2FzZSBWaWV3cG9ydFBlcmNlbnRhZ2VIZWlnaHQ6CkBA
IC0yMzMxLDkgKzIzMzAsNiBAQCBMYXlvdXRVbml0IFJlbmRlckJveDo6YXZhaWxhYmxlTG9naWNh
bEhlaWdodCgpIGNvbnN0CiAKIExheW91dFVuaXQgUmVuZGVyQm94OjphdmFpbGFibGVMb2dpY2Fs
SGVpZ2h0VXNpbmcoY29uc3QgTGVuZ3RoJiBoKSBjb25zdAogewotICAgIGlmIChoLmlzRml4ZWQo
KSkKLSAgICAgICAgcmV0dXJuIGNvbXB1dGVDb250ZW50Qm94TG9naWNhbEhlaWdodChoLnZhbHVl
KCkpOwotCiAgICAgaWYgKGlzUmVuZGVyVmlldygpKQogICAgICAgICByZXR1cm4gaXNIb3Jpem9u
dGFsV3JpdGluZ01vZGUoKSA/IHRvUmVuZGVyVmlldyh0aGlzKS0+ZnJhbWVWaWV3KCktPnZpc2li
bGVIZWlnaHQoKSA6IHRvUmVuZGVyVmlldyh0aGlzKS0+ZnJhbWVWaWV3KCktPnZpc2libGVXaWR0
aCgpOwogCkBAIC0yMzQzLDE5ICsyMzM5LDE2IEBAIExheW91dFVuaXQgUmVuZGVyQm94OjphdmFp
bGFibGVMb2dpY2FsSGVpZ2h0VXNpbmcoY29uc3QgTGVuZ3RoJiBoKSBjb25zdAogICAgIGlmIChp
c1RhYmxlQ2VsbCgpICYmIChoLmlzQXV0bygpIHx8IGguaXNQZXJjZW50KCkpKQogICAgICAgICBy
ZXR1cm4gb3ZlcnJpZGVMb2dpY2FsQ29udGVudEhlaWdodCgpOwogCi0gICAgaWYgKGguaXNQZXJj
ZW50KCkpIHsKLSAgICAgICAgTGF5b3V0VW5pdCBhdmFpbGFibGVIZWlnaHQ7Ci0gICAgICAgIC8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDA0NgotICAgICAgICAv
LyBGb3IgYWJzb2x1dGVseSBwb3NpdGlvbmVkIGVsZW1lbnRzIHdob3NlIGNvbnRhaW5pbmcgYmxv
Y2sgaXMgYmFzZWQgb24gYSBibG9jay1sZXZlbCBlbGVtZW50LAotICAgICAgICAvLyB0aGUgcGVy
Y2VudGFnZSBpcyBjYWxjdWxhdGVkIHdpdGggcmVzcGVjdCB0byB0aGUgaGVpZ2h0IG9mIHRoZSBw
YWRkaW5nIGJveCBvZiB0aGF0IGVsZW1lbnQKLSAgICAgICAgaWYgKGlzT3V0T2ZGbG93UG9zaXRp
b25lZCgpKQotICAgICAgICAgICAgYXZhaWxhYmxlSGVpZ2h0ID0gY29udGFpbmluZ0Jsb2NrTG9n
aWNhbEhlaWdodEZvclBvc2l0aW9uZWQoY29udGFpbmluZ0Jsb2NrKCkpOwotICAgICAgICBlbHNl
Ci0gICAgICAgICAgICBhdmFpbGFibGVIZWlnaHQgPSBjb250YWluaW5nQmxvY2soKS0+YXZhaWxh
YmxlTG9naWNhbEhlaWdodCgpOworICAgIGlmIChoLmlzUGVyY2VudCgpICYmIGlzT3V0T2ZGbG93
UG9zaXRpb25lZCgpKSB7CisgICAgICAgIExheW91dFVuaXQgYXZhaWxhYmxlSGVpZ2h0ID0gY29u
dGFpbmluZ0Jsb2NrTG9naWNhbEhlaWdodEZvclBvc2l0aW9uZWQoY29udGFpbmluZ0Jsb2NrKCkp
OwogICAgICAgICByZXR1cm4gY29tcHV0ZUNvbnRlbnRCb3hMb2dpY2FsSGVpZ2h0KHZhbHVlRm9y
TGVuZ3RoKGgsIGF2YWlsYWJsZUhlaWdodCkpOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBXZSBj
YW4ndCBqdXN0IGNoZWNrIHRvcC9ib3R0b20gaGVyZS4KKyAgICBMYXlvdXRVbml0IGhlaWdodElu
Y2x1ZGluZ1Njcm9sbGJhciA9IGNvbXB1dGVDb250ZW50TG9naWNhbEhlaWdodFVzaW5nKE1haW5P
clByZWZlcnJlZFNpemUsIGgpOworICAgIGlmIChoZWlnaHRJbmNsdWRpbmdTY3JvbGxiYXIgIT0g
LTEpCisgICAgICAgIHJldHVybiBzdGQ6Om1heDxMYXlvdXRVbml0PigwLCBjb21wdXRlQ29udGVu
dEJveExvZ2ljYWxIZWlnaHQoaGVpZ2h0SW5jbHVkaW5nU2Nyb2xsYmFyKSAtIHNjcm9sbGJhckxv
Z2ljYWxIZWlnaHQoKSk7CisKKyAgICAvLyBGSVhNRTogQ2hlY2sgbG9naWNhbFRvcC9sb2dpY2Fs
Qm90dG9tIGhlcmUgdG8gY29ycmVjdGx5IGhhbmRsZSB2ZXJ0aWNhbCB3cml0aW5nLW1vZGUuCiAg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2NTAwCiAgICAg
aWYgKGlzUmVuZGVyQmxvY2soKSAmJiBpc091dE9mRmxvd1Bvc2l0aW9uZWQoKSAmJiBzdHlsZSgp
LT5oZWlnaHQoKS5pc0F1dG8oKSAmJiAhKHN0eWxlKCktPnRvcCgpLmlzQXV0bygpIHx8IHN0eWxl
KCktPmJvdHRvbSgpLmlzQXV0bygpKSkgewogICAgICAgICBSZW5kZXJCbG9jayogYmxvY2sgPSBj
b25zdF9jYXN0PFJlbmRlckJsb2NrKj4odG9SZW5kZXJCbG9jayh0aGlzKSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMWIx
MWU4Y2ZiYmNjYzhkYzAxNGQyMmM2OWRkNjY4YjFjMDJmYWVmMi4uODEwZGIxN2MwMzRjMzhmODFm
NTAxYTZlZmRlOGVkYzZmMzRhNGI4OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA5LTA3
ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgRml4IFJlbmRlckJv
eDo6YXZhaWxhYmxlSGVpZ2h0IHRvIHN1YnRyYWN0IHNjcm9sbGJhcnMgaW4gdGhlIHJpZ2h0IHBs
YWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTYw
MzEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZh
c3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2VudC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3NpdGlv
bi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Jsb2NrL3Bvc2l0aW9uaW5n
L3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24uaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9u
LXJlcGxhY2VkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4
L2Zhc3QvY3NzL3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0
ZWQucG5nOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9wZXJjZW50
LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
VGhpcyBpcyBub3cgY29ycmVjdGx5IGNlbnRlcmluZyB0aGUgNTAlLiBJdCBtb3ZlZCB1cCA4cHgg
YmVjYXVzZSB0aGF0IGlzIGhhbGYgb2YgdGhlIGJvZHkncyBtYXJnaW4uCisgICAgICAgIFRoaXMg
bWF0Y2hlcyBvdGhlciBGaXJlZm94IDE1IGFuZCBJRTkuCisKIDIwMTItMDktMDcgIEZhZHkgU2Ft
dWVsICA8ZnNhbXVlbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCByZWJhc2Vs
aW5lIGZvciBjaHJvbWl1bSBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24t
ZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYmxvY2svcG9zaXRpb25pbmcvcGVyY2Vu
dC10b3AtbGVmdC1vbi1yZWxhdGl2ZS1wb3NpdGlvbi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmQ1MWRiOTBlZjY4NTAzOTA2ODM0YzhlOTdiZDFjZjJlNGVjNmRiMTYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9uaW5nL3BlcmNlbnQtdG9wLWxlZnQt
b24tcmVsYXRpdmUtcG9zaXRpb24tZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxzdHlsZT4KK2h0bWwsYm9keSB7CisgICAgbWFyZ2luOiAwOworICAgIHBh
ZGRpbmc6IDA7Cit9CisuY29udGFpbmVyIHsKKyAgICBoZWlnaHQ6IDUwcHg7CisgICAgd2lkdGg6
IDUwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOworICAgIGJvcmRlcjogMXB4IHNv
bGlkOworfQorLmNoaWxkIHsKKyAgICBtYXJnaW46IDIwJTsKKyAgICBoZWlnaHQ6IDEwcHg7Cisg
ICAgd2lkdGg6IDEwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogc2FsbW9uOworfQorPC9zdHls
ZT4KKzxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CisgICAgPGRpdiBjbGFzcz0iY2hpbGQiPjwvZGl2
PgorPC9kaXY+Cis8YnI+Cis8ZGl2IGNsYXNzPSJjb250YWluZXIiIHN0eWxlPSJvdmVyZmxvdzpz
Y3JvbGwiPgorICAgIDxkaXYgY2xhc3M9ImNoaWxkIj48L2Rpdj4KKzwvZGl2PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0LW9u
LXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Jsb2NrL3Bvc2l0aW9u
aW5nL3BlcmNlbnQtdG9wLWxlZnQtb24tcmVsYXRpdmUtcG9zaXRpb24uaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zYTZhMDA5N2VkYjBiZGM1NTVkOWNlNjFmODAzZTJhNjM4NDY2ODIyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ibG9jay9wb3NpdGlvbmluZy9wZXJjZW50LXRvcC1sZWZ0
LW9uLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0
bWw+Cis8c3R5bGU+Citib2R5IHsKKyAgICBtYXJnaW46IDA7Cit9CisuY29udGFpbmVyIHsKKyAg
ICBib3JkZXI6IDFweCBzb2xpZDsKKyAgICBoZWlnaHQ6IDUwcHg7CisgICAgd2lkdGg6IDUwcHg7
CisgICAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOworfQorLmNoaWxkIHsKKyAgICBwb3NpdGlv
bjogcmVsYXRpdmU7CisgICAgdG9wOiAyMCU7CisgICAgbGVmdDogMjAlOworICAgIGhlaWdodDog
MTBweDsKKyAgICB3aWR0aDogMTBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb247Cit9
Cis8L3N0eWxlPgorPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KKyAgICA8ZGl2IGNsYXNzPSJjaGls
ZCI+PC9kaXY+Cis8L2Rpdj4KKzxicj4KKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9Im92
ZXJmbG93OnNjcm9sbCI+CisgICAgPGRpdiBjbGFzcz0iY2hpbGQiPjwvZGl2PgorPC9kaXY+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtcGVyY2VudC1oZWlnaHQtb24t
cmVwbGFjZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNl
bnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MDMzYThjNDRh
NjMzMDE0MWNkYmFjMGJiYmQ1N2VlZTgxNjMwY2VkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDMgQEAKK1BBU1MKKworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0LW9uLXJlcGxhY2VkLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2Nzcy9uZXN0ZWQtcGVyY2VudC1oZWlnaHQtb24tcmVwbGFjZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yZmEzZjZmZGZjZTE4N2YyNTZhY2E4NGFmOTAyNzc2NjU3NWZkMTgxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvbmVzdGVkLXBlcmNlbnQtaGVpZ2h0
LW9uLXJlcGxhY2VkLmh0bWwKQEAgLTAsMCArMSw2MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2NoZWNrLWxheW91dC5qcyI+PC9zY3JpcHQ+Cis8Ym9k
eT4KKworPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAyMDBweDsgd2lkdGg6
IDQwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb24iPgorICAgIDxkaXYgc3R5bGU9Im92ZXJm
bG93OiBzY3JvbGw7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZC1jb2xvcjogcHVycGxlIj4KKyAg
ICAgICAgPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3Jv
dW5kLWNvbG9yOiBwdXJwbGUiPgorICAgICAgICAgICAgPGRpdiBzdHlsZT0iYm9yZGVyOiAwOyBo
ZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2UiPjwvZGl2
PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IHN0eWxlPSJvdmVy
Zmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDIwMHB4OyB3aWR0aDogNDAwcHg7IGJhY2tncm91bmQtY29s
b3I6IHNhbG1vbiI+CisgICAgPGRpdiBzdHlsZT0ib3ZlcmZsb3c6IHNjcm9sbDsgaGVpZ2h0OiAx
MDAlOyBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJwbGUiPgorICAgICAgICA8ZGl2IHN0eWxlPSJvdmVy
Zmxvdzogc2Nyb2xsOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTtsaW5l
LWhlaWdodDogMCI+CisgICAgICAgICAgICA8aWZyYW1lIHN0eWxlPSJib3JkZXI6IDA7IGhlaWdo
dDogMTAwJTsgd2lkdGg6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZSI+PC9pZnJhbWU+
CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQ+CitpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKK3ZhciBkdW1t
eSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworZHVtbXkuc3R5bGUub3ZlcmZsb3cg
PSAic2Nyb2xsIjsKK2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZHVtbXkpOwordmFyIHNjcm9s
bGJhcldpZHRoID0gZHVtbXkub2Zmc2V0V2lkdGggLSBkdW1teS5jbGllbnRXaWR0aDsKK2RvY3Vt
ZW50LmJvZHkucmVtb3ZlQ2hpbGQoZHVtbXkpOworCitmdW5jdGlvbiBzZXRFeHBlY3RlZChub2Rl
LCB3aWR0aCwgaGVpZ2h0KQoreworICAgIG5vZGUuc2V0QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVk
LXdpZHRoJywgd2lkdGgpOworICAgIG5vZGUuc2V0QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVkLWhl
aWdodCcsIGhlaWdodCk7Cit9CisKK3ZhciBjb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxl
Y3RvckFsbCgnYm9keSA+IGRpdicpOworZm9yICh2YXIgaSA9IDA7IGkgPCBjb250YWluZXJzLmxl
bmd0aDsgaSsrKSB7CisgICAgdmFyIHdpZHRoID0gY29udGFpbmVyc1tpXS5vZmZzZXRXaWR0aDsK
KyAgICB2YXIgaGVpZ2h0ID0gY29udGFpbmVyc1tpXS5vZmZzZXRIZWlnaHQ7CisKKyAgICB3aWR0
aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAg
dmFyIGZpcnN0ID0gY29udGFpbmVyc1tpXS5xdWVyeVNlbGVjdG9yKCdkaXYnKTsKKyAgICBzZXRF
eHBlY3RlZChmaXJzdCwgd2lkdGgsIGhlaWdodCk7CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJX
aWR0aDsKKyAgICBoZWlnaHQgLT0gc2Nyb2xsYmFyV2lkdGg7CisgICAgdmFyIHNlY29uZCA9IGZp
cnN0LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOworICAgIHNldEV4cGVjdGVkKHNlY29uZCwgd2lkdGgs
IGhlaWdodCk7CisKKyAgICB3aWR0aCAtPSBzY3JvbGxiYXJXaWR0aDsKKyAgICBoZWlnaHQgLT0g
c2Nyb2xsYmFyV2lkdGg7CisgICAgdmFyIHRoaXJkID0gc2Vjb25kLnF1ZXJ5U2VsZWN0b3IoJyon
KTsKKyAgICBzZXRFeHBlY3RlZCh0aGlyZCwgd2lkdGgsIGhlaWdodCk7Cit9CisKK2NoZWNrTGF5
b3V0KCdib2R5ID4gZGl2JykKKzwvc2NyaXB0PgorCis8L2JvZHk+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tbGlu
dXgvZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi1leHBl
Y3RlZC5wbmcgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L2Nzcy9w
ZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnBuZwppbmRl
eCA0OTBjYjhmZjQ3YzhlOTA1M2Y3ZTRhMWQwMTVhMjVmYTA2Y2IyMzU4Li5iOWZmODVkN2MyYWZm
NGYyMmUzM2E2ZWVjMDRjY2MyNDkwNmUxNjhhIDEwMDY0NApHSVQgYmluYXJ5IHBhdGNoCmRlbHRh
IDc5CnpjbWV5VkBsI2BoayYxO3VudVZkNm5XZHA9VnhwT0dZTkM7JE1VcktiTDFMMUhRSlQ0aHJE
Z1Yja0NffDh6T2ltRAppV2MkUUIqP356Xz82M0lHUXA1QTZTcUA8Z0s7WUA+PWQjV3pwJFB5bFo1
cmhPCgpkZWx0YSA3OQp6Y21leVZAbCNgaGt4R2hUVDlTY1RxTlJtZG56NS1fTnxIZ2NmdGlfXnY3
dGV0aUQ5YXRNWEswOyF3VmIzek9oYnIKaVV7Yy1lIX1mXys/NjNHd2RCZ0wxZUBkaG5mV1h0JCZ0
O3VjTEs2VGU4NSooeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVt
LXdpbi9mYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2Nzcy9w
ZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLWV4cGVjdGVkLnR4dAppbmRl
eCAxZTk3ZjY2MjRjZDJlNmE5YTFlZjhjYWE4ZDgzYjYwNDI4MjNlMmUyLi43Zjk2NGIwMDg2MmY3
NDJkYWU1NDkyMmVjYmYwYTViNDFmOTVmODFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2
ZS1wb3NpdGlvbi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0td2luL2Zhc3QvY3NzL3BlcmNlbnQtdG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24t
ZXhwZWN0ZWQudHh0CkBAIC00LDcgKzQsNyBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAK
ICAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgODAweDYwMAogICAgIFJlbmRlckJv
ZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzg0eDU4NAogICAgICAgUmVuZGVyQmxvY2sge0RJVn0g
YXQgKDAsMCkgc2l6ZSA3ODR4NTg0Ci1sYXllciBhdCAoOCwzMDgpIHNpemUgNzg0eDIwCitsYXll
ciBhdCAoOCwzMDApIHNpemUgNzg0eDIwCiAgIFJlbmRlckJsb2NrIChyZWxhdGl2ZSBwb3NpdGlv
bmVkKSB7RElWfSBhdCAoMCwwKSBzaXplIDc4NHgyMAogICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMCwwKSBzaXplIDM3OXgxOQogICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMzc5OiAi
VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgdGV4dCBpcyByZW5kZXJlZCBpbiB0aGUgbWlkZGxlIG9m
IHRoZSBwYWdlLiIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0
YXRpb25zCmluZGV4IGY5MzU2NzZiMDFmYjgyN2VhMjBhNjMzYjQ3M2QzZDYyYzJlODZjOGYuLjA5
ZDM5ZDMyNjU4ZTJiNjNiM2Y0NzgzZGJhZGUxZDdkYzdjNGFhYjggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzU5OSwzICszNTk5LDUg
QEAgQlVHV0s5NTgxMyA6IGZhc3QvaW5uZXJIVE1ML2lubmVySFRNTC1pZnJhbWUuaHRtbCA9IFRF
WFQgUEFTUwogQlVHV0s5NjA0MSBMSU5VWCA6IHBsYXRmb3JtL2Nocm9taXVtLWxpbnV4L2NvbXBv
c2l0aW5nL2dlc3R1cmVzID0gUEFTUyBJTUFHRQogQlVHV0s5NjA0MSBMSU5VWCA6IGh0dHAvdGVz
dHMvY2FjaGUvc3RvcHBlZC1yZXZhbGlkYXRpb24uaHRtbCA9IE1JU1NJTkcgUEFTUwogQlVHQ1I4
ODg5NCBCVUdXSzk2MDQxIFNMT1cgTElOVVggOiBodHRwL3Rlc3RzL2NhY2hlL3N1YnJlc291cmNl
LWV4cGlyYXRpb24tMS5odG1sID0gTUlTU0lORyBQQVNTCisKK0JVR19PSkFOIE1BQyBXSU4gOiBm
YXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwgPSBJ
TUFHRStURVhUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVj
dGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IDllNTk4NDMzNzAwNmU0MjY0ZTU4ZTljMmE0YWM5ODc4MmJiYWQyNzkuLmE4MzczZDUwNTBiNThk
MzhmOTZlYWNjMWIyOTBiN2U1NDg2YTY2YzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9U
ZXN0RXhwZWN0YXRpb25zCkBAIC0xMDg5LDMgKzEwODksNSBAQCBCVUdXSzk1ODEzIDogZmFzdC9p
bm5lckhUTUwvaW5uZXJIVE1MLWlmcmFtZS5odG1sID0gVEVYVAogCiAvLyBFRkwgZG9lcyBub3Qg
eWV0IHN1cHBvcnQgZ2xvYmFsIHNlbGVjdGlvbgogQlVHV0s4ODIzOCBTS0lQIDogZWRpdGluZy9w
YXN0ZWJvYXJkL3Bhc3RlLWdsb2JhbC1zZWxlY3Rpb24uaHRtbCA9IFRFWFQKKworQlVHX09KQU4g
OiBmYXN0L2Nzcy9wZXJjZW50LXRvcC12YWx1ZS13aXRoLXJlbGF0aXZlLXBvc2l0aW9uLmh0bWwg
PSBURVhUIElNQUdFK1RFWFQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMKaW5kZXggZjcxN2NlNTJkZTIyN2E0N2M2ZTgxMDUzMGFmMzJiMDQwMDlhZmYwNi4uYTYzMjJl
NWQ0ODM5YTMzYzRkODU2MTUwYjBmYTE0MGY3MWJmMWY0NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEzMDgsNiArMTMwOCw4IEBAIEJVR1dLOTU1MzAg
OiBodHRwL3Rlc3RzL3NlY3VyaXR5L2luYWN0aXZlLWRvY3VtZW50LXdpdGgtZW1wdHktc2VjdXJp
dHktb3JpZ2luLmh0CiAKIEJVR1dLODgyMzggOiBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtZ2xv
YmFsLXNlbGVjdGlvbi5odG1sID0gVEVYVAogCitCVUdfT0pBTiA6IGZhc3QvY3NzL3BlcmNlbnQt
dG9wLXZhbHVlLXdpdGgtcmVsYXRpdmUtcG9zaXRpb24uaHRtbCA9IFRFWFQgSU1BR0UrVEVYVAor
CiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIC8vIEVuZCBvZiBUZXN0cyBmYWls
aW5nCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYmZlOGFjOWNjZWY2ZGMwMGQ5ZDQ5MzcwZDYw
MWVmMmNmMzkyZDZkMS4uZmJjNzJmY2IxYzhkY2YwZGNiODBjZTI2ZDlhYjY2YzU3OGVmYzY5OCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTM3MSwzICsz
NzEsNSBAQCBCVUdXSzgwMzk0IDogZmFzdC9ibG9jay9tYXJnaW4tY29sbGFwc2UvYmxvY2staW5z
aWRlLWlubGluZS8wMjUuaHRtbCA9IFRFWFQKIEJVR1dLOTQ0NTggU0tJUCA6IGZhc3QvZXZlbnRz
L21lc3NhZ2UtcG9ydC1jb25zdHJ1Y3Rvci1mb3ItZGVsZXRlZC1kb2N1bWVudC5odG1sID0gUEFT
UwogCiBCVUdXSzk1NTAxIFNLSVAgOiBodHRwL3Rlc3RzL3NlY3VyaXR5L2luYWN0aXZlLWRvY3Vt
ZW50LXdpdGgtZW1wdHktc2VjdXJpdHktb3JpZ2luLmh0bWwgPSBUSU1FT1VUCisKK0JVR19PSkFO
IDogZmFzdC9jc3MvcGVyY2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi5odG1s
ID0gVEVYVCBJTUFHRStURVhUCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvVGVzdEV4cGVjdGF0aW9u
cwppbmRleCBhY2E1YTY1ZmQyYzI5Y2ViZDQ4MTE2ZWQ0Mzk5MzkyMWJmZGRmNjUyLi44ZmI3ZDJk
MjMzNDNhODEyNzNmYTExNjVjMWE1ZDE5Yzk2YjQyOGNlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9xdC9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L3F0L1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTE0MCwzICsxNDAsNSBAQCBCVUdXSzk0MDA0IDogY3Nz
Mi4xLzIwMTEwMzIzL2M1NDEtd29yZC1zcC0wMDAuaHRtID0gSU1BR0UKIEJVR1dLOTQwMDUgOiBj
c3MyLjEvMjAxMTAzMjMvd29yZC1zcGFjaW5nLXJlbW92ZS1zcGFjZS0wMDMuaHRtID0gSU1BR0UK
IEJVR1dLOTQwMDUgOiBjc3MyLjEvMjAxMTAzMjMvd29yZC1zcGFjaW5nLXJlbW92ZS1zcGFjZS0w
MDYuaHRtID0gSU1BR0UKIEJVR1dLOTQwMDYgOiBmYXN0L2Nzcy93b3JkLXNwYWNpbmctY2hhcmFj
dGVycy1jb21wbGV4LXRleHQuaHRtbCA9IElNQUdFCisKK0JVR19PSkFOIDogZmFzdC9jc3MvcGVy
Y2VudC10b3AtdmFsdWUtd2l0aC1yZWxhdGl2ZS1wb3NpdGlvbi5odG1sID0gVEVYVCBJTUFHRStU
RVhUCg==
</data>
<flag name="review"
          id="174062"
          type_id="1"
          status="+"
          setter="tony"
    />
          </attachment>
      

    </bug>

</bugzilla>