<?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>128958</bug_id>
          
          <creation_ts>2014-02-17 23:41:28 -0800</creation_ts>
          <short_desc>Add support for the isolation property</short_desc>
          <delta_ts>2014-03-03 23:49:23 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</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>129661</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mihai Tica">mitica</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>d-r</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>fmalita</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mihnea</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>981809</commentid>
    <comment_count>0</comment_count>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-17 23:41:28 -0800</bug_when>
    <thetext>The isolation property is part of the CSS Blending specification: http://dev.w3.org/fxtf/compositing-1/#isolation

Parse and implement a prefixed version of the property. The allowed values for -webkit-isolation are isolate and auto(default).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>981817</commentid>
    <comment_count>1</comment_count>
      <attachid>224476</attachid>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-18 00:16:33 -0800</bug_when>
    <thetext>Created attachment 224476
Patch V1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>981825</commentid>
    <comment_count>2</comment_count>
      <attachid>224479</attachid>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-18 00:34:54 -0800</bug_when>
    <thetext>Created attachment 224479
Patch V2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>981976</commentid>
    <comment_count>3</comment_count>
      <attachid>224479</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-18 10:25:44 -0800</bug_when>
    <thetext>Comment on attachment 224479
Patch V2

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

&gt; Source/WebCore/css/CSSPrimitiveValueMappings.h:4158
&gt; +template&lt;&gt; inline CSSPrimitiveValue::CSSPrimitiveValue(Isolation i)

Short variable names like &quot;i&quot; are not consistent with WebKit style. We tend to prefer e.g like &quot;isolation&quot;.

&gt; Source/WebCore/css/CSSPrimitiveValueMappings.h:4169
&gt; +    switch (i) {
&gt; +    case IsolationAuto:
&gt; +        m_value.valueID = CSSValueAuto;
&gt; +        break;
&gt; +    case IsolationIsolate:
&gt; +        m_value.valueID = CSSValueIsolate;
&gt; +        break;
&gt; +    }

We should have a default case here with ASSERT_NOT_REACHED(), just like we do when converting in the other direction.

&gt; Source/WebCore/rendering/style/RenderStyle.h:974
&gt; +    void setIsolation(Isolation v) { rareNonInheritedData.access()-&gt;m_isolation = v; }

Using rareNonInheritedData.access() like this will force the RenderStyle to create its own unique copy of the StyleRareNonInheritedData. If you look at other setters in this file, they use a macro (SET_VAR) that first checks if the value being written is identical to the existing one, and avoids a copy in that case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>982283</commentid>
    <comment_count>4</comment_count>
      <attachid>224608</attachid>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-19 01:19:01 -0800</bug_when>
    <thetext>Created attachment 224608
Patch V3

Addressed issues highlighted by Andreas Kling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>982421</commentid>
    <comment_count>5</comment_count>
      <attachid>224608</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2014-02-19 10:44:28 -0800</bug_when>
    <thetext>Comment on attachment 224608
Patch V3

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

&gt; Source/WebCore/rendering/style/RenderStyle.h:975
&gt; +    bool hasIsolation() const { return rareNonInheritedData-&gt;m_isolation != IsolationAuto; }

Won&apos;t this crash if rareNonInheritedData hasn&apos;t been allocated?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>982727</commentid>
    <comment_count>6</comment_count>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-20 01:13:13 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 224608 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=224608&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/style/RenderStyle.h:975
&gt; &gt; +    bool hasIsolation() const { return rareNonInheritedData-&gt;m_isolation != IsolationAuto; }
&gt; 
&gt; Won&apos;t this crash if rareNonInheritedData hasn&apos;t been allocated?

All of RenderStyle&apos;s constructors initialise a valid rareNonInheritedData member, so I don&apos;t think this will crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983874</commentid>
    <comment_count>7</comment_count>
      <attachid>225055</attachid>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-24 05:44:16 -0800</bug_when>
    <thetext>Created attachment 225055
Patch V4

Add SVG implementation. Add additional tests for HTML and SVG. Please have another look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983901</commentid>
    <comment_count>8</comment_count>
      <attachid>225055</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-02-24 07:22:05 -0800</bug_when>
    <thetext>Comment on attachment 225055
Patch V4

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

The patch looks good to me. Just two snippets. I give the other reviewers some time to review the patch as well before giving my r+. Maybe Simon has more comments.

&gt; Source/WebCore/rendering/style/RenderStyle.h:974
&gt; +    void setBlendMode(BlendMode v) { SET_VAR(rareNonInheritedData, m_effectiveBlendMode, v); }
&gt;      bool hasBlendMode() const { return static_cast&lt;BlendMode&gt;(rareNonInheritedData-&gt;m_effectiveBlendMode) != BlendModeNormal; }
&gt; +
&gt; +    Isolation isolation() const { return static_cast&lt;Isolation&gt;(rareNonInheritedData-&gt;m_isolation); }
&gt; +    void setIsolation(Isolation v) { SET_VAR(rareNonInheritedData, m_isolation, v); }

should still have longer names like blendMode and isolation instead of v. Regardless of the use elsewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>983914</commentid>
    <comment_count>9</comment_count>
      <attachid>225068</attachid>
    <who name="Mihai Tica">mitica</who>
    <bug_when>2014-02-24 08:24:43 -0800</bug_when>
    <thetext>Created attachment 225068
Patch V4. Addressed Dirk&apos;s comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985102</commentid>
    <comment_count>10</comment_count>
      <attachid>225068</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-02-27 04:37:24 -0800</bug_when>
    <thetext>Comment on attachment 225068
Patch V4. Addressed Dirk&apos;s comments

LGTM. Since no further review comments came from Simon and kling: r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985106</commentid>
    <comment_count>11</comment_count>
      <attachid>225068</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-27 05:09:55 -0800</bug_when>
    <thetext>Comment on attachment 225068
Patch V4. Addressed Dirk&apos;s comments

Clearing flags on attachment: 225068

Committed r164795: &lt;http://trac.webkit.org/changeset/164795&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985107</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-27 05:09:59 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985449</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-02-27 21:03:09 -0800</bug_when>
    <thetext>css3/compositing/isolation-isolate-blended-child.html test added in this patch fails every time on one of the bots. Filed bug 129468.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224476</attachid>
            <date>2014-02-18 00:16:33 -0800</date>
            <delta_ts>2014-02-18 00:34:44 -0800</delta_ts>
            <desc>Patch V1</desc>
            <filename>bug-128958-20140218101639.patch</filename>
            <type>text/plain</type>
            <size>18335</size>
            <attacher name="Mihai Tica">mitica</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0MjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDg3ZTE1NzgyYzIyOGFm
YTQ2MjlhMWNmYjM3ZDNhYjI5NmY3ODVhZC4uNTBjM2ZmZGZmOTQ4MzE1OTkzZWI5Mjc5OTk5ZDQ2
YTg4MjVhZWQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE0LTAyLTE3ICBNaWhh
aSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJz
ZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhcnNlIHRoZSBp
c29sYXRpb24gcHJvcGVydHksIHBhcnQgb2YgdGhlIENTUyBCbGVuZGluZyBhbmQgY29tcG9zaXRp
bmcgc3BlYy4KKyAgICAgICAgVGhlIGltcGxlbWVudGF0aW9uIGNvbnNpc3RzIG9mIGFkZGluZyBj
cmVhdGluZyBhIHN0YWNraW5nIGNvbnRleHQgZm9yIGVhY2gKKyAgICAgICAgZWxlbWVudCBoYXZp
bmcgaXNvbGF0aW9uOiBpc29sYXRlLiBUaGUgZGVmYXVsdCBpc29sYXRpb246IGF1dG8gaGFzIG5v
IGVmZmVjdC4KKworICAgICAgICBUZXN0czogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNv
bGF0ZS1zaW1wbGUuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9pc29sYXRp
b24tcGFyc2luZy5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Omlz
S2V5d29yZFByb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24pOgorICAg
ICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOiBBZGQgLXdlYmtpdC1pc29sYXRpb24uCisg
ICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46IEFkZCB0aGUgaXNvbGF0ZSB2YWx1ZS4K
KyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6IEV4cGxpY2l0bHkgc2V0IGlzb2xhdGlvbjppc29s
YXRlIHRvIGNyZWF0ZSBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgICogcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFu
Z2VSZXF1aXJlc0xheWVyUmVwYWludCk6IENoYW5naW5nIGlzb2xhdGlvbiBzaG91bGQgdHJpZ2dl
ciBhIHJlcGFpbnQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6IFNl
dHRlcnMgYW5kIGdldHRlcnMgZm9yIGlzb2xhdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogQWRkIElzb2xhdGlvbiBlbnVtLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDogQWRkIG1faXNv
bGF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oOgorCiAyMDE0LTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNh
c25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEZp
eCBtaXNzaW5nIGxheW91dCBpbiBmbGV4aWJsZSBhbmQgY29udGVudCBzaXplZCBjb2x1bW5zCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CmluZGV4IDUxYTc5YmYyNTI2ZmM1OTJkNDZjZGEwMGY2NDBjZmJhMjY4MTA0YjguLmRkOTA2MDhl
MDQ2NDFlYmZmZTc0ODU1OTYxMmQyNzdlNzg0NzViMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0yMjgsNiArMjI4LDcg
QEAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQcm9wZXJ0aWVzW10gPSB7CiAg
ICAgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwKICNpZiBFTkFCTEUoQ1NTX0NPTVBP
U0lUSU5HKQogICAgIENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlLAorICAgIENTU1Byb3BlcnR5
V2Via2l0SXNvbGF0aW9uLAogI2VuZGlmCiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJGaXQs
CiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jpem9udGFsU3BhY2luZywKQEAgLTI4NDYs
NiArMjg0Nyw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6
OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAjaWYgRU5BQkxFKENTU19DT01Q
T1NJVElORykKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJsZW5kTW9kZToKICAgICAg
ICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+YmxlbmRNb2Rl
KCkpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAgICAgICAg
ICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5pc29sYXRpb24oKSk7
CiAjZW5kaWYKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRCbGVuZE1vZGU6IHsK
ICAgICAgICAgICAgIGNvbnN0IEZpbGxMYXllciogbGF5ZXJzID0gc3R5bGUtPmJhY2tncm91bmRM
YXllcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggNjZlMGUyMWNiNTBiZjg2Yjlj
YWFjMDdiZGM5NmI5NzMzOWRjZmZkYy4uZDExYWM1MzQzYWZlY2ViYTE5NjM0MWU2YjJkZjRmYWYz
M2NhMDQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTgxMCw2ICs4MTAsMTAgQEAg
c3RhdGljIGlubGluZSBib29sIGlzVmFsaWRLZXl3b3JkUHJvcGVydHlBbmRWYWx1ZShDU1NQcm9w
ZXJ0eUlEIHByb3BlcnR5SWQsIGludAogICAgICAgICAgICAgfHwgdmFsdWVJRCA9PSBDU1NWYWx1
ZUx1bWlub3NpdHkpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRpb246CisgICAgICAgIGlmIChwYXJzZXJD
b250ZXh0LmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkICYmICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0
byB8fCB2YWx1ZUlEID09IENTU1ZhbHVlSXNvbGF0ZSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVyRml0OgogICAgICAgICBpZiAodmFsdWVJRCA9PSBDU1NWYWx1ZUJvcmRlciB8fCB2YWx1ZUlE
ID09IENTU1ZhbHVlTGluZXMpCkBAIC0xMDc5LDYgKzEwODMsNyBAQCBzdGF0aWMgaW5saW5lIGJv
b2wgaXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpCiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdEFwcGVhcmFuY2U6CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElO
RykKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlOgorICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRJc29sYXRpb246CiAjZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
QmFja2ZhY2VWaXNpYmlsaXR5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRl
clN0eWxlOgpAQCAtMjQxNSw2ICsyNDIwLDEwIEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgaWYgKGNzc0Nv
bXBvc2l0aW5nRW5hYmxlZCgpKQogICAgICAgICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwog
ICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAg
ICAgICBpZiAoY3NzQ29tcG9zaXRpbmdFbmFibGVkKCkpCisgICAgICAgICAgICB2YWxpZFByaW1p
dGl2ZSA9IHRydWU7CisgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEZsZXg6IHsKICAgICAgICAgU2hvcnRoYW5kU2NvcGUgc2NvcGUodGhpcywgcHJvcElk
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBp
bmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmlu
ZGV4IDgzNjcxYjQ2YzI4N2FiN2ZiYzg4ZTc4NGFlOTljMTI4NzBhN2ZmZWEuLjI2MTRlZDkzOGE5
YmQxZTMwNGU5ZjZkM2I1YmUzZTE1YTllZjVkNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNDE1NSw2ICs0MTU1LDM2IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBCbGVuZE1vZGUoKSBjb25z
dAogICAgIHJldHVybiBCbGVuZE1vZGVOb3JtYWw7CiB9CiAKK3RlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShJc29sYXRpb24gaSkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQoreworICAgIG1fcHJpbWl0aXZlVW5pdFR5cGUgPSBDU1Nf
VkFMVUVfSUQ7CisgICAgc3dpdGNoIChpKSB7CisgICAgY2FzZSBJc29sYXRpb25BdXRvOgorICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUF1dG87CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgSXNvbGF0aW9uSXNvbGF0ZToKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFs
dWVJc29sYXRlOworICAgICAgICBicmVhazsKKyAgICB9Cit9CisKK3RlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24oKSBjb25zdAoreworICAgIEFT
U0VSVChpc1ZhbHVlSUQoKSk7CisgICAgc3dpdGNoIChtX3ZhbHVlLnZhbHVlSUQpIHsKKyAgICBj
YXNlIENTU1ZhbHVlQXV0bzoKKyAgICAgICAgcmV0dXJuIElzb2xhdGlvbkF1dG87CisgICAgY2Fz
ZSBDU1NWYWx1ZUlzb2xhdGU6CisgICAgICAgIHJldHVybiBJc29sYXRpb25Jc29sYXRlOworICAg
IGRlZmF1bHQ6CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgIHJldHVybiBJc29sYXRpb25BdXRvOworfQorCiB0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoTGluZUNhcCBlKQogICAgIDogQ1NT
VmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVz
LmluCmluZGV4IDNlZjA1MjQ0MTVmOWJjZjRhZWYzN2FjNDVkZjA4NzNlOWY1NjM3MmEuLjEwNzcw
ZjZhYmM0Mjg1M2U0Y2I2ODY5MjM5Mjk4YjJkNzkzNzllMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0eU5hbWVzLmluCkBAIC0yODMsNiArMjgzLDcgQEAgei1pbmRleAogI2VuZGlmCiAj
aWYgZGVmaW5lZChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAmJiBFTkFCTEVfQ1NTX0NPTVBPU0lU
SU5HCiAtd2Via2l0LWJsZW5kLW1vZGUKKy13ZWJraXQtaXNvbGF0aW9uCiAjZW5kaWYKICNpZiBk
ZWZpbmVkKEVOQUJMRV9DU1NfRklMVEVSUykgJiYgRU5BQkxFX0NTU19GSUxURVJTCiAtd2Via2l0
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMu
aW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgppbmRleCAzOGFkMTc2
N2VjN2Q3ZjFlNjVlZjBiMzg5YmZkMjBhYTAyMzRkMmYyLi5lMTQwMGE3YzVjMGI2OWM0Mzg5YzM1
ZGJkNzc0OTI4MmJiNjFmNjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5p
bgpAQCAtMTAyNCw2ICsxMDI0LDEwIEBAIHNhdHVyYXRpb24KIGNvbG9yCiBsdW1pbm9zaXR5CiAK
Ky8vIGlzb2xhdGlvbgorLy8gYXV0bworaXNvbGF0ZQorCiAvLyBvYmplY3QtZml0CiAvLyBmaWxs
CiAvLyBjb250YWluCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0
eWxlQnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRl
ci5jcHAKaW5kZXggNTgzYTVkYjc4ZTRhNTBjMjg4OTdkOWUxY2FkNDVhZTkzZGQyOGMzZS4uOTA3
YmUwYWM1YjMzZGNiNDI4ZjM0ZjRmZTk5NmU4ODk0NTNmZTcwMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcApAQCAtMjQ4OCw2ICsyNDg4LDcgQEAg
RGVwcmVjYXRlZFN0eWxlQnVpbGRlcjo6RGVwcmVjYXRlZFN0eWxlQnVpbGRlcigpCiAgICAgc2V0
UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3VuZFNpemUsIENTU1Byb3Bl
cnR5QmFja2dyb3VuZFNpemUpOwogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgc2V0
UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlLCBBcHBseVByb3BlcnR5
RGVmYXVsdDxCbGVuZE1vZGUsICZSZW5kZXJTdHlsZTo6YmxlbmRNb2RlLCBCbGVuZE1vZGUsICZS
ZW5kZXJTdHlsZTo6c2V0QmxlbmRNb2RlLCBCbGVuZE1vZGUsICZSZW5kZXJTdHlsZTo6aW5pdGlh
bEJsZW5kTW9kZT46OmNyZWF0ZUhhbmRsZXIoKSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENT
U1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uLCBBcHBseVByb3BlcnR5RGVmYXVsdDxJc29sYXRpb24s
ICZSZW5kZXJTdHlsZTo6aXNvbGF0aW9uLCBJc29sYXRpb24sICZSZW5kZXJTdHlsZTo6c2V0SXNv
bGF0aW9uLCBJc29sYXRpb24sICZSZW5kZXJTdHlsZTo6aW5pdGlhbElzb2xhdGlvbj46OmNyZWF0
ZUhhbmRsZXIoKSk7CiAjZW5kaWYKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlX
ZWJraXRCb3JkZXJGaXQsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEVCb3JkZXJGaXQsICZSZW5kZXJT
dHlsZTo6Ym9yZGVyRml0LCBFQm9yZGVyRml0LCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckZpdCwg
RUJvcmRlckZpdCwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyRml0Pjo6Y3JlYXRlSGFuZGxl
cigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jp
em9udGFsU3BhY2luZywgQXBwbHlQcm9wZXJ0eUNvbXB1dGVMZW5ndGg8c2hvcnQsICZSZW5kZXJT
dHlsZTo6aG9yaXpvbnRhbEJvcmRlclNwYWNpbmcsICZSZW5kZXJTdHlsZTo6c2V0SG9yaXpvbnRh
bEJvcmRlclNwYWNpbmcsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEhvcml6b250YWxCb3JkZXJTcGFj
aW5nPjo6Y3JlYXRlSGFuZGxlcigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApp
bmRleCBkODJiYzc0ZDYxMjU1M2Y0MmU5MjllOTU2MmYzOTcxOWQwZGYzMDg3Li4xZDI1NzY1M2Ni
MmIzYzA2ZDE2MGRmNTZmYTg3NWMyOGIxMTNkMWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwCkBAIC0xMjM4LDYgKzEyMzgsNyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFkanVz
dFJlbmRlclN0eWxlKFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUmIHBhcgog
ICAgICAgICB8fCBzdHlsZS5ib3hSZWZsZWN0KCkKICAgICAgICAgfHwgc3R5bGUuaGFzRmlsdGVy
KCkKICAgICAgICAgfHwgc3R5bGUuaGFzQmxlbmRNb2RlKCkKKyAgICAgICAgfHwgc3R5bGUuaGFz
SXNvbGF0aW9uKCkKICAgICAgICAgfHwgc3R5bGUucG9zaXRpb24oKSA9PSBTdGlja3lQb3NpdGlv
bgogICAgICAgICB8fCAoc3R5bGUucG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uICYmIGUgJiYg
ZS0+ZG9jdW1lbnQoKS5wYWdlKCkgJiYgZS0+ZG9jdW1lbnQoKS5wYWdlKCktPnNldHRpbmdzKCku
Zml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoKSkKICAgICAgICAgfHwgc3R5bGUu
aGFzRmxvd0Zyb20oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5jcHAKaW5kZXggMTMzYWI0OTBlZGUyNDk2ZmI5M2I4MmUwZTE3ZThhOGQ2NjhlZjkxZi4u
YmE4MjlmNmI1MjRkZjZjMTcyZTQ5YmU5MzExZGJjOGI5ZjVjMzk5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC02NzksNiArNjc5LDkg
QEAgYm9vbCBSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWlyZXNMYXllclJlcGFpbnQoY29uc3QgUmVu
ZGVyU3R5bGUqIG90aGVyLCB1bnNpZ25lZCYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQog
ICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9lZmZlY3RpdmVCbGVuZE1vZGUgIT0gb3Ro
ZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSkKICAgICAgICAg
cmV0dXJuIHRydWU7CisKKyAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1faXNvbGF0aW9u
ICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24pCisgICAgICAgIHJl
dHVybiB0cnVlOwogI2VuZGlmCiAKICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm9wYWNp
dHkgIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5vcGFjaXR5KSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IGY2YzQzZTYzZjk4ZTRl
MGQzYTJkOTZhN2I0MzJkZGZkOWUxNzc0NzguLmEzNTJlZGU2NDRlMTBmZDc2ZmJhNWM1ZmFiNmZk
YjhmNDA3OTQ2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oCkBAIC05NjksNyArOTY5LDEzIEBAIHB1YmxpYzoKICAgICBCbGVuZE1vZGUgYmxlbmRN
b2RlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8QmxlbmRNb2RlPihyYXJlTm9uSW5oZXJp
dGVkRGF0YS0+bV9lZmZlY3RpdmVCbGVuZE1vZGUpOyB9CiAgICAgdm9pZCBzZXRCbGVuZE1vZGUo
QmxlbmRNb2RlIHYpIHsgcmFyZU5vbkluaGVyaXRlZERhdGEuYWNjZXNzKCktPm1fZWZmZWN0aXZl
QmxlbmRNb2RlID0gdjsgfQogICAgIGJvb2wgaGFzQmxlbmRNb2RlKCkgY29uc3QgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8QmxlbmRNb2RlPihyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9lZmZlY3RpdmVC
bGVuZE1vZGUpICE9IEJsZW5kTW9kZU5vcm1hbDsgfQorCisgICAgSXNvbGF0aW9uIGlzb2xhdGlv
bigpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PElzb2xhdGlvbj4ocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1faXNvbGF0aW9uKTsgfQorICAgIHZvaWQgc2V0SXNvbGF0aW9uKElzb2xhdGlvbiB2
KSB7IHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLT5tX2lzb2xhdGlvbiA9IHY7IH0KKyAg
ICBib29sIGhhc0lzb2xhdGlvbigpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRh
LT5tX2lzb2xhdGlvbiAhPSBJc29sYXRpb25BdXRvOyB9CiAjZWxzZQorICAgIElzb2xhdGlvbiBp
c29sYXRpb24oKSBjb25zdCB7IHJldHVybiBJc29sYXRpb25BdXRvOyB9CisgICAgYm9vbCBoYXNJ
c29sYXRpb24oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIGJvb2wgaGFzQmxlbmRNb2Rl
KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogIApAQCAtMTgxNiw2ICsxODIyLDcg
QEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBzdGF0
aWMgQmxlbmRNb2RlIGluaXRpYWxCbGVuZE1vZGUoKSB7IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7
IH0KKyAgICBzdGF0aWMgSXNvbGF0aW9uIGluaXRpYWxJc29sYXRpb24oKSB7IHJldHVybiBJc29s
YXRpb25BdXRvOyB9CiAjZW5kaWYKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKaW5kZXggNzA0YWRlMDZh
MzA1YThmODBiOWVmNjg4YjBiODM3YTFjY2Y0YWIzZS4uNWMxMjU5NGMyNGYwYTA2NGRkNzY2ZDEx
ZWU3NTlmMDE2ZDMxM2Y3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAgLTU1MCw2ICs1NTAsMTAgQEAgZW51bSBU
ZXh0SW5kZW50TGluZSB7IFRleHRJbmRlbnRGaXJzdExpbmUsIFRleHRJbmRlbnRFYWNoTGluZSB9
OwogZW51bSBUZXh0SW5kZW50VHlwZSB7IFRleHRJbmRlbnROb3JtYWwsIFRleHRJbmRlbnRIYW5n
aW5nIH07CiAjZW5kaWYKIAorI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCitlbnVtIElzb2xh
dGlvbiB7IElzb2xhdGlvbkF1dG8sIElzb2xhdGlvbklzb2xhdGUgfTsKKyNlbmRpZgorCiAvLyBG
aWxsLCBTdHJva2UsIFZpZXdCb3ggYXJlIGp1c3QgdXNlZCBmb3IgU1ZHLgogZW51bSBMYXlvdXRC
b3ggeyBCb3hNaXNzaW5nID0gMCwgTWFyZ2luQm94LCBCb3JkZXJCb3gsIFBhZGRpbmdCb3gsIENv
bnRlbnRCb3gsIEZpbGwsIFN0cm9rZSwgVmlld0JveCB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5j
cHAKaW5kZXggOGJlYzE2Mjk1NmE4MmY1ZjViZjQxMjQ5MTQzNTBjMGRkYmMwNzY0My4uNjJjMWM5
NGEwZDdmZjQ2YjQzNzA0ODllN2UxMjBhNjE0MWE2OGE0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRh
LmNwcApAQCAtOTIsNiArOTIsNyBAQCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhKCkKICAgICAsIG1fYXNwZWN0UmF0aW9UeXBlKFJlbmRlclN0eWxl
Ojppbml0aWFsQXNwZWN0UmF0aW9UeXBlKCkpCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykK
ICAgICAsIG1fZWZmZWN0aXZlQmxlbmRNb2RlKFJlbmRlclN0eWxlOjppbml0aWFsQmxlbmRNb2Rl
KCkpCisgICAgLCBtX2lzb2xhdGlvbihSZW5kZXJTdHlsZTo6aW5pdGlhbElzb2xhdGlvbigpKQog
I2VuZGlmCiAgICAgLCBtX29iamVjdEZpdChSZW5kZXJTdHlsZTo6aW5pdGlhbE9iamVjdEZpdCgp
KQogewpAQCAtMTcyLDYgKzE3Myw3IEBAIGlubGluZSBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRh
OjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKGNvbnN0IFN0eWxlUmFyZU5vbkluCiAgICAgLCBt
X2FzcGVjdFJhdGlvVHlwZShvLm1fYXNwZWN0UmF0aW9UeXBlKQogI2lmIEVOQUJMRShDU1NfQ09N
UE9TSVRJTkcpCiAgICAgLCBtX2VmZmVjdGl2ZUJsZW5kTW9kZShvLm1fZWZmZWN0aXZlQmxlbmRN
b2RlKQorICAgICwgbV9pc29sYXRpb24oby5tX2lzb2xhdGlvbikKICNlbmRpZgogICAgICwgbV9v
YmplY3RGaXQoby5tX29iamVjdEZpdCkKIHsKQEAgLTI2Miw2ICsyNjQsNyBAQCBib29sIFN0eWxl
UmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YSYgbykgYwogICAgICAgICAmJiAhbV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24g
JiYgIW8ubV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24KICNpZiBFTkFCTEUoQ1NTX0NPTVBP
U0lUSU5HKQogICAgICAgICAmJiBtX2VmZmVjdGl2ZUJsZW5kTW9kZSA9PSBvLm1fZWZmZWN0aXZl
QmxlbmRNb2RlCisgICAgICAgICYmIG1faXNvbGF0aW9uID09IG8ubV9pc29sYXRpb24KICNlbmRp
ZgogICAgICAgICAmJiBtX2FzcGVjdFJhdGlvVHlwZSA9PSBvLm1fYXNwZWN0UmF0aW9UeXBlCiAg
ICAgICAgICYmIG1fb2JqZWN0Rml0ID09IG8ubV9vYmplY3RGaXQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEu
aAppbmRleCBjM2JhNTI2MTVmOGZlNTM2NTkyZWRhOWZiZmVmYmI1ZTA3ZThiZDZmLi45MjliM2Ex
Njg5NzA0ZGQ4ZmY2ODVjN2U3ZTg4NTlkZGFiM2RjZWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgK
QEAgLTE5NCw2ICsxOTQsNyBAQCBwdWJsaWM6CiAKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5H
KQogICAgIHVuc2lnbmVkIG1fZWZmZWN0aXZlQmxlbmRNb2RlOiA1OyAvLyBFQmxlbmRNb2RlCisg
ICAgdW5zaWduZWQgbV9pc29sYXRpb24gOiAxOyAvLyBJc29sYXRpb24KICNlbmRpZgogCiAgICAg
dW5zaWduZWQgbV9vYmplY3RGaXQgOiAzOyAvLyBPYmplY3RGaXQKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4ZGYzMTc1YmJi
YjA3MWNjYmZjOThjYTAxNDdmYzBmZTZjOGYzMmU5Li44YmRkNTg5ZjcyZmQwOGRkZjMxMzNkZTE4
YTQ5NWJlY2ExNGNhMjZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTQtMDItMTcgIE1paGFp
IFRpY2EgIDxtaXRpY2FAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgQmxlbmRpbmddIFBhcnNl
IGFuZCBpbXBsZW1lbnQgdGhlIC13ZWJraXQtaXNvbGF0aW9uIENTUyBwcm9wZXJ0eS4KKworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI4OTU4CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjc3MzL2NvbXBv
c2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLmh0bWw6IENo
ZWNrIGJvdGggdGhlIGNvbXBvc2l0ZWQgYW5kIG5vbi1jb21wb3NpdGVkIHBhdGgKKyAgICAgICAg
ICAgIGZvciB0aGUgY3JlYXRpb24gb2YgYSBzdGFja2luZyBjb250ZXh0IHdoZW4gc2V0dGluZyAt
d2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZS4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lz
b2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21w
b3NpdGluZy9pc29sYXRpb24tcGFyc2luZy5odG1sOiBUZXN0IGlmIC13ZWJraXQtaXNvbGF0aW9u
IGlzIHByb3Blcmx5IHBhcnNlZC4KKwogMjAxNC0wMi0xNyAgTWljaGHFgiBQYWt1xYJhIHZlbCBS
dXRrYSAgPG0ucGFrdWxhQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgRUZMIGdh
cmRlbmluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRp
b24taXNvbGF0ZS1zaW1wbGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3Np
dGluZy9pc29sYXRpb24taXNvbGF0ZS1zaW1wbGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY4
OWNmZDgzNTNmNmE0MjQ1NDc3NzU2NTcwNWQ5NzcyZDdiNzBjNTAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBsZS1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitQQVNTIDAgaXMgMAorUEFTUyAwIGlzIDAKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBs
ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1z
aW1wbGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZjI0YzBkOGU4ZjM1M2EwN2E2ODJkZmViM2M2MmUxYzkw
NTkxYjEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9p
c29sYXRpb24taXNvbGF0ZS1zaW1wbGUuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUg
SFRNTD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisgICAgZGl2IHsKKyAgICAgICAgd2lkdGg6
IDEwcHg7CisgICAgICAgIGhlaWdodDogMTBweDsKKyAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47
CisgICAgICAgIC13ZWJraXQtaXNvbGF0aW9uOmlzb2xhdGU7CisgICAgfQorPC9zdHlsZT4KKzwh
LS0gSXNvbGF0aW9uIHNob3VsZCBjcmVhdGUgYSBzdGFja2luZyBjb250ZXh0LiBUZXN0IGlmICJp
c29sYXRpb246aXNvbGF0ZSIgc2V0cyB0aGUgekluZGV4IHRvIDAsIGluc3RlYWQgb2YgdGhlIGRl
ZmF1bHQgImF1dG8iIHZhbHVlLiAtLT4KKzxib2R5PgorICAgIDxkaXYgaWQ9Imlzb2xhdG9yIj48
L2Rpdj4KKyAgICA8ZGl2IGlkPSJpc29sYXRvcl9jb21wb3NpdGVkIiBzdHlsZT0iLXdlYmtpdC10
cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7Ij48L2Rpdj4KKworICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAg
Ly8gTm9uIGNvbXBvc2l0ZWQgcGF0aC4KKyAgICAgICAgdmFyIHpJbmRleCA9IGdldENvbXB1dGVk
U3R5bGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlzb2xhdG9yIikpLnpJbmRleDsKKyAgICAg
ICAgc2hvdWxkQmVaZXJvKHpJbmRleCk7CisKKyAgICAgICAgLy8gQ29tcG9zaXRlZCBwYXRoLgor
ICAgICAgICB6SW5kZXggPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJpc29sYXRvcl9jb21wb3NpdGVkIikpLnpJbmRleDsKKyAgICAgICAgc2hvdWxkQmVaZXJvKHpJ
bmRleCk7CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmctZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjA5OTVlYzQ4YTk2NzAzOTIwOWZlZjliMDM3MDY5MmM1YzY5NmZkNTUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlv
bi1wYXJzaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDggQEAKK1BBU1Mgc2V0UHJvcGVydHko
ImF1dG8iKSBpcyAiYXV0byIKK1BBU1Mgc2V0UHJvcGVydHkoImlzb2xhdGUiKSBpcyAiaXNvbGF0
ZSIKK1BBU1Mgc2V0UHJvcGVydHkoIiIpIGlzICJhdXRvIgorUEFTUyBzZXRQcm9wZXJ0eSgicnVi
YmlzaCIpIGlzICJhdXRvIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNv
bGF0aW9uLXBhcnNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0
aW9uLXBhcnNpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NTI5ZGVhNWU5ZDA2MDI0ZGRiZmRhZjk3ZmQ5
NTNhZmRiYjYyMGRiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3Np
dGluZy9pc29sYXRpb24tcGFyc2luZy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8Ym9keT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisgICAgICAgIGZ1bmN0aW9uIHNldFBy
b3BlcnR5KHZhbHVlKSB7CisgICAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgnZGl2Jyk7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7
CisgICAgICAgICAgICBkaXYuc3R5bGUuc2V0UHJvcGVydHkoIi13ZWJraXQtaXNvbGF0aW9uIiwg
dmFsdWUpOworCisgICAgICAgICAgICB2YXIgY29tcHV0ZWRWYWx1ZSA9IGdldENvbXB1dGVkU3R5
bGUoZGl2KS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LWlzb2xhdGlvbiIpOworICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkaXYpOworCisgICAgICAgICAgICByZXR1cm4g
Y29tcHV0ZWRWYWx1ZTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIHRlc3QodmFsdWUs
IGV4cGVjdGVkKSB7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3NldFByb3Bl
cnR5KCInICsgdmFsdWUgKyAnIiknLCBleHBlY3RlZCk7CisgICAgICAgIH0KKworICAgICAgICB0
ZXN0KCJhdXRvIiwgImF1dG8iKTsKKyAgICAgICAgdGVzdCgiaXNvbGF0ZSIsICJpc29sYXRlIik7
CisgICAgICAgIHRlc3QoIiIsICJhdXRvIik7CisgICAgICAgIHRlc3QoInJ1YmJpc2giLCAiYXV0
byIpOworICAgIDwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224479</attachid>
            <date>2014-02-18 00:34:54 -0800</date>
            <delta_ts>2014-02-19 01:18:52 -0800</delta_ts>
            <desc>Patch V2</desc>
            <filename>bug-128958-20140218103500.patch</filename>
            <type>text/plain</type>
            <size>18297</size>
            <attacher name="Mihai Tica">mitica</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0MjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDg3ZTE1NzgyYzIyOGFm
YTQ2MjlhMWNmYjM3ZDNhYjI5NmY3ODVhZC4uNTBjM2ZmZGZmOTQ4MzE1OTkzZWI5Mjc5OTk5ZDQ2
YTg4MjVhZWQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE0LTAyLTE3ICBNaWhh
aSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJz
ZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhcnNlIHRoZSBp
c29sYXRpb24gcHJvcGVydHksIHBhcnQgb2YgdGhlIENTUyBCbGVuZGluZyBhbmQgY29tcG9zaXRp
bmcgc3BlYy4KKyAgICAgICAgVGhlIGltcGxlbWVudGF0aW9uIGNvbnNpc3RzIG9mIGFkZGluZyBj
cmVhdGluZyBhIHN0YWNraW5nIGNvbnRleHQgZm9yIGVhY2gKKyAgICAgICAgZWxlbWVudCBoYXZp
bmcgaXNvbGF0aW9uOiBpc29sYXRlLiBUaGUgZGVmYXVsdCBpc29sYXRpb246IGF1dG8gaGFzIG5v
IGVmZmVjdC4KKworICAgICAgICBUZXN0czogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNv
bGF0ZS1zaW1wbGUuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9pc29sYXRp
b24tcGFyc2luZy5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Omlz
S2V5d29yZFByb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24pOgorICAg
ICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOiBBZGQgLXdlYmtpdC1pc29sYXRpb24uCisg
ICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46IEFkZCB0aGUgaXNvbGF0ZSB2YWx1ZS4K
KyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6IEV4cGxpY2l0bHkgc2V0IGlzb2xhdGlvbjppc29s
YXRlIHRvIGNyZWF0ZSBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgICogcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFu
Z2VSZXF1aXJlc0xheWVyUmVwYWludCk6IENoYW5naW5nIGlzb2xhdGlvbiBzaG91bGQgdHJpZ2dl
ciBhIHJlcGFpbnQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6IFNl
dHRlcnMgYW5kIGdldHRlcnMgZm9yIGlzb2xhdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogQWRkIElzb2xhdGlvbiBlbnVtLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDogQWRkIG1faXNv
bGF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oOgorCiAyMDE0LTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNh
c25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIEZp
eCBtaXNzaW5nIGxheW91dCBpbiBmbGV4aWJsZSBhbmQgY29udGVudCBzaXplZCBjb2x1bW5zCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CmluZGV4IDUxYTc5YmYyNTI2ZmM1OTJkNDZjZGEwMGY2NDBjZmJhMjY4MTA0YjguLmRkOTA2MDhl
MDQ2NDFlYmZmZTc0ODU1OTYxMmQyNzdlNzg0NzViMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0yMjgsNiArMjI4LDcg
QEAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQcm9wZXJ0aWVzW10gPSB7CiAg
ICAgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwKICNpZiBFTkFCTEUoQ1NTX0NPTVBP
U0lUSU5HKQogICAgIENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlLAorICAgIENTU1Byb3BlcnR5
V2Via2l0SXNvbGF0aW9uLAogI2VuZGlmCiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJGaXQs
CiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jpem9udGFsU3BhY2luZywKQEAgLTI4NDYs
NiArMjg0Nyw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6
OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAjaWYgRU5BQkxFKENTU19DT01Q
T1NJVElORykKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJsZW5kTW9kZToKICAgICAg
ICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+YmxlbmRNb2Rl
KCkpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAgICAgICAg
ICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5pc29sYXRpb24oKSk7
CiAjZW5kaWYKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmRCbGVuZE1vZGU6IHsK
ICAgICAgICAgICAgIGNvbnN0IEZpbGxMYXllciogbGF5ZXJzID0gc3R5bGUtPmJhY2tncm91bmRM
YXllcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggNjZlMGUyMWNiNTBiZjg2Yjlj
YWFjMDdiZGM5NmI5NzMzOWRjZmZkYy4uZDExYWM1MzQzYWZlY2ViYTE5NjM0MWU2YjJkZjRmYWYz
M2NhMDQ4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTgxMCw2ICs4MTAsMTAgQEAg
c3RhdGljIGlubGluZSBib29sIGlzVmFsaWRLZXl3b3JkUHJvcGVydHlBbmRWYWx1ZShDU1NQcm9w
ZXJ0eUlEIHByb3BlcnR5SWQsIGludAogICAgICAgICAgICAgfHwgdmFsdWVJRCA9PSBDU1NWYWx1
ZUx1bWlub3NpdHkpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRpb246CisgICAgICAgIGlmIChwYXJzZXJD
b250ZXh0LmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkICYmICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0
byB8fCB2YWx1ZUlEID09IENTU1ZhbHVlSXNvbGF0ZSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVyRml0OgogICAgICAgICBpZiAodmFsdWVJRCA9PSBDU1NWYWx1ZUJvcmRlciB8fCB2YWx1ZUlE
ID09IENTU1ZhbHVlTGluZXMpCkBAIC0xMDc5LDYgKzEwODMsNyBAQCBzdGF0aWMgaW5saW5lIGJv
b2wgaXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpCiAgICAgY2Fz
ZSBDU1NQcm9wZXJ0eVdlYmtpdEFwcGVhcmFuY2U6CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElO
RykKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlOgorICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRJc29sYXRpb246CiAjZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0
QmFja2ZhY2VWaXNpYmlsaXR5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRl
clN0eWxlOgpAQCAtMjQxNSw2ICsyNDIwLDEwIEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVl
KENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGltcG9ydGFudCkKICAgICAgICAgaWYgKGNzc0Nv
bXBvc2l0aW5nRW5hYmxlZCgpKQogICAgICAgICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwog
ICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAg
ICAgICBpZiAoY3NzQ29tcG9zaXRpbmdFbmFibGVkKCkpCisgICAgICAgICAgICB2YWxpZFByaW1p
dGl2ZSA9IHRydWU7CisgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVdlYmtpdEZsZXg6IHsKICAgICAgICAgU2hvcnRoYW5kU2NvcGUgc2NvcGUodGhpcywgcHJvcElk
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBp
bmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmlu
ZGV4IDgzNjcxYjQ2YzI4N2FiN2ZiYzg4ZTc4NGFlOTljMTI4NzBhN2ZmZWEuLjI2MTRlZDkzOGE5
YmQxZTMwNGU5ZjZkM2I1YmUzZTE1YTllZjVkNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNDE1NSw2ICs0MTU1LDM2IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBCbGVuZE1vZGUoKSBjb25z
dAogICAgIHJldHVybiBCbGVuZE1vZGVOb3JtYWw7CiB9CiAKK3RlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShJc29sYXRpb24gaSkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQoreworICAgIG1fcHJpbWl0aXZlVW5pdFR5cGUgPSBDU1Nf
VkFMVUVfSUQ7CisgICAgc3dpdGNoIChpKSB7CisgICAgY2FzZSBJc29sYXRpb25BdXRvOgorICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUF1dG87CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgSXNvbGF0aW9uSXNvbGF0ZToKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFs
dWVJc29sYXRlOworICAgICAgICBicmVhazsKKyAgICB9Cit9CisKK3RlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24oKSBjb25zdAoreworICAgIEFT
U0VSVChpc1ZhbHVlSUQoKSk7CisgICAgc3dpdGNoIChtX3ZhbHVlLnZhbHVlSUQpIHsKKyAgICBj
YXNlIENTU1ZhbHVlQXV0bzoKKyAgICAgICAgcmV0dXJuIElzb2xhdGlvbkF1dG87CisgICAgY2Fz
ZSBDU1NWYWx1ZUlzb2xhdGU6CisgICAgICAgIHJldHVybiBJc29sYXRpb25Jc29sYXRlOworICAg
IGRlZmF1bHQ6CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgIHJldHVybiBJc29sYXRpb25BdXRvOworfQorCiB0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoTGluZUNhcCBlKQogICAgIDogQ1NT
VmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJvcGVydHlOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVz
LmluCmluZGV4IDNlZjA1MjQ0MTVmOWJjZjRhZWYzN2FjNDVkZjA4NzNlOWY1NjM3MmEuLjEwNzcw
ZjZhYmM0Mjg1M2U0Y2I2ODY5MjM5Mjk4YjJkNzkzNzllMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcm9wZXJ0eU5hbWVzLmluCkBAIC0yODMsNiArMjgzLDcgQEAgei1pbmRleAogI2VuZGlmCiAj
aWYgZGVmaW5lZChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKSAmJiBFTkFCTEVfQ1NTX0NPTVBPU0lU
SU5HCiAtd2Via2l0LWJsZW5kLW1vZGUKKy13ZWJraXQtaXNvbGF0aW9uCiAjZW5kaWYKICNpZiBk
ZWZpbmVkKEVOQUJMRV9DU1NfRklMVEVSUykgJiYgRU5BQkxFX0NTU19GSUxURVJTCiAtd2Via2l0
LWZpbHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMu
aW4gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgppbmRleCAzOGFkMTc2
N2VjN2Q3ZjFlNjVlZjBiMzg5YmZkMjBhYTAyMzRkMmYyLi5lMTQwMGE3YzVjMGI2OWM0Mzg5YzM1
ZGJkNzc0OTI4MmJiNjFmNjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVLZXl3b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5p
bgpAQCAtMTAyNCw2ICsxMDI0LDEwIEBAIHNhdHVyYXRpb24KIGNvbG9yCiBsdW1pbm9zaXR5CiAK
Ky8vIGlzb2xhdGlvbgorLy8gYXV0bworaXNvbGF0ZQorCiAvLyBvYmplY3QtZml0CiAvLyBmaWxs
CiAvLyBjb250YWluCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0
eWxlQnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRl
ci5jcHAKaW5kZXggNTgzYTVkYjc4ZTRhNTBjMjg4OTdkOWUxY2FkNDVhZTkzZGQyOGMzZS4uOTA3
YmUwYWM1YjMzZGNiNDI4ZjM0ZjRmZTk5NmU4ODk0NTNmZTcwMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcApAQCAtMjQ4OCw2ICsyNDg4LDcgQEAg
RGVwcmVjYXRlZFN0eWxlQnVpbGRlcjo6RGVwcmVjYXRlZFN0eWxlQnVpbGRlcigpCiAgICAgc2V0
UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0QmFja2dyb3VuZFNpemUsIENTU1Byb3Bl
cnR5QmFja2dyb3VuZFNpemUpOwogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgc2V0
UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0QmxlbmRNb2RlLCBBcHBseVByb3BlcnR5
RGVmYXVsdDxCbGVuZE1vZGUsICZSZW5kZXJTdHlsZTo6YmxlbmRNb2RlLCBCbGVuZE1vZGUsICZS
ZW5kZXJTdHlsZTo6c2V0QmxlbmRNb2RlLCBCbGVuZE1vZGUsICZSZW5kZXJTdHlsZTo6aW5pdGlh
bEJsZW5kTW9kZT46OmNyZWF0ZUhhbmRsZXIoKSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENT
U1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uLCBBcHBseVByb3BlcnR5RGVmYXVsdDxJc29sYXRpb24s
ICZSZW5kZXJTdHlsZTo6aXNvbGF0aW9uLCBJc29sYXRpb24sICZSZW5kZXJTdHlsZTo6c2V0SXNv
bGF0aW9uLCBJc29sYXRpb24sICZSZW5kZXJTdHlsZTo6aW5pdGlhbElzb2xhdGlvbj46OmNyZWF0
ZUhhbmRsZXIoKSk7CiAjZW5kaWYKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlX
ZWJraXRCb3JkZXJGaXQsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEVCb3JkZXJGaXQsICZSZW5kZXJT
dHlsZTo6Ym9yZGVyRml0LCBFQm9yZGVyRml0LCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckZpdCwg
RUJvcmRlckZpdCwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyRml0Pjo6Y3JlYXRlSGFuZGxl
cigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jp
em9udGFsU3BhY2luZywgQXBwbHlQcm9wZXJ0eUNvbXB1dGVMZW5ndGg8c2hvcnQsICZSZW5kZXJT
dHlsZTo6aG9yaXpvbnRhbEJvcmRlclNwYWNpbmcsICZSZW5kZXJTdHlsZTo6c2V0SG9yaXpvbnRh
bEJvcmRlclNwYWNpbmcsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEhvcml6b250YWxCb3JkZXJTcGFj
aW5nPjo6Y3JlYXRlSGFuZGxlcigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApp
bmRleCBkODJiYzc0ZDYxMjU1M2Y0MmU5MjllOTU2MmYzOTcxOWQwZGYzMDg3Li4xZDI1NzY1M2Ni
MmIzYzA2ZDE2MGRmNTZmYTg3NWMyOGIxMTNkMWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwCkBAIC0xMjM4LDYgKzEyMzgsNyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFkanVz
dFJlbmRlclN0eWxlKFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgUmVuZGVyU3R5bGUmIHBhcgog
ICAgICAgICB8fCBzdHlsZS5ib3hSZWZsZWN0KCkKICAgICAgICAgfHwgc3R5bGUuaGFzRmlsdGVy
KCkKICAgICAgICAgfHwgc3R5bGUuaGFzQmxlbmRNb2RlKCkKKyAgICAgICAgfHwgc3R5bGUuaGFz
SXNvbGF0aW9uKCkKICAgICAgICAgfHwgc3R5bGUucG9zaXRpb24oKSA9PSBTdGlja3lQb3NpdGlv
bgogICAgICAgICB8fCAoc3R5bGUucG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uICYmIGUgJiYg
ZS0+ZG9jdW1lbnQoKS5wYWdlKCkgJiYgZS0+ZG9jdW1lbnQoKS5wYWdlKCktPnNldHRpbmdzKCku
Zml4ZWRQb3NpdGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoKSkKICAgICAgICAgfHwgc3R5bGUu
aGFzRmxvd0Zyb20oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5jcHAKaW5kZXggMTMzYWI0OTBlZGUyNDk2ZmI5M2I4MmUwZTE3ZThhOGQ2NjhlZjkxZi4u
YmE4MjlmNmI1MjRkZjZjMTcyZTQ5YmU5MzExZGJjOGI5ZjVjMzk5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC02NzksNiArNjc5LDkg
QEAgYm9vbCBSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWlyZXNMYXllclJlcGFpbnQoY29uc3QgUmVu
ZGVyU3R5bGUqIG90aGVyLCB1bnNpZ25lZCYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQog
ICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9lZmZlY3RpdmVCbGVuZE1vZGUgIT0gb3Ro
ZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSkKICAgICAgICAg
cmV0dXJuIHRydWU7CisKKyAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1faXNvbGF0aW9u
ICE9IG90aGVyLT5yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24pCisgICAgICAgIHJl
dHVybiB0cnVlOwogI2VuZGlmCiAKICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm9wYWNp
dHkgIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5vcGFjaXR5KSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IGY2YzQzZTYzZjk4ZTRl
MGQzYTJkOTZhN2I0MzJkZGZkOWUxNzc0NzguLmEzNTJlZGU2NDRlMTBmZDc2ZmJhNWM1ZmFiNmZk
YjhmNDA3OTQ2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oCkBAIC05NjksNyArOTY5LDEzIEBAIHB1YmxpYzoKICAgICBCbGVuZE1vZGUgYmxlbmRN
b2RlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8QmxlbmRNb2RlPihyYXJlTm9uSW5oZXJp
dGVkRGF0YS0+bV9lZmZlY3RpdmVCbGVuZE1vZGUpOyB9CiAgICAgdm9pZCBzZXRCbGVuZE1vZGUo
QmxlbmRNb2RlIHYpIHsgcmFyZU5vbkluaGVyaXRlZERhdGEuYWNjZXNzKCktPm1fZWZmZWN0aXZl
QmxlbmRNb2RlID0gdjsgfQogICAgIGJvb2wgaGFzQmxlbmRNb2RlKCkgY29uc3QgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8QmxlbmRNb2RlPihyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9lZmZlY3RpdmVC
bGVuZE1vZGUpICE9IEJsZW5kTW9kZU5vcm1hbDsgfQorCisgICAgSXNvbGF0aW9uIGlzb2xhdGlv
bigpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PElzb2xhdGlvbj4ocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1faXNvbGF0aW9uKTsgfQorICAgIHZvaWQgc2V0SXNvbGF0aW9uKElzb2xhdGlvbiB2
KSB7IHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2VzcygpLT5tX2lzb2xhdGlvbiA9IHY7IH0KKyAg
ICBib29sIGhhc0lzb2xhdGlvbigpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRh
LT5tX2lzb2xhdGlvbiAhPSBJc29sYXRpb25BdXRvOyB9CiAjZWxzZQorICAgIElzb2xhdGlvbiBp
c29sYXRpb24oKSBjb25zdCB7IHJldHVybiBJc29sYXRpb25BdXRvOyB9CisgICAgYm9vbCBoYXNJ
c29sYXRpb24oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIGJvb2wgaGFzQmxlbmRNb2Rl
KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogIApAQCAtMTgxNiw2ICsxODIyLDcg
QEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBzdGF0
aWMgQmxlbmRNb2RlIGluaXRpYWxCbGVuZE1vZGUoKSB7IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7
IH0KKyAgICBzdGF0aWMgSXNvbGF0aW9uIGluaXRpYWxJc29sYXRpb24oKSB7IHJldHVybiBJc29s
YXRpb25BdXRvOyB9CiAjZW5kaWYKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKaW5kZXggNzA0YWRlMDZh
MzA1YThmODBiOWVmNjg4YjBiODM3YTFjY2Y0YWIzZS4uMGM2NGRkYjVjZDk4NjQwNWNmYjFjNGNk
ZjY0YmU5YWVlYzBkYTQ5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAgLTU1MCw2ICs1NTAsOCBAQCBlbnVtIFRl
eHRJbmRlbnRMaW5lIHsgVGV4dEluZGVudEZpcnN0TGluZSwgVGV4dEluZGVudEVhY2hMaW5lIH07
CiBlbnVtIFRleHRJbmRlbnRUeXBlIHsgVGV4dEluZGVudE5vcm1hbCwgVGV4dEluZGVudEhhbmdp
bmcgfTsKICNlbmRpZgogCitlbnVtIElzb2xhdGlvbiB7IElzb2xhdGlvbkF1dG8sIElzb2xhdGlv
bklzb2xhdGUgfTsKKwogLy8gRmlsbCwgU3Ryb2tlLCBWaWV3Qm94IGFyZSBqdXN0IHVzZWQgZm9y
IFNWRy4KIGVudW0gTGF5b3V0Qm94IHsgQm94TWlzc2luZyA9IDAsIE1hcmdpbkJveCwgQm9yZGVy
Qm94LCBQYWRkaW5nQm94LCBDb250ZW50Qm94LCBGaWxsLCBTdHJva2UsIFZpZXdCb3ggfTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbklu
aGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDhiZWMxNjI5NTZhODJmNWY1YmY0MTI0OTE0MzUw
YzBkZGJjMDc2NDMuLjYyYzFjOTRhMGQ3ZmY0NmI0MzcwNDg5ZTdlMTIwYTYxNDFhNjhhNDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVS
YXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTkyLDYgKzkyLDcgQEAgU3R5bGVSYXJlTm9uSW5o
ZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSgpCiAgICAgLCBtX2FzcGVjdFJh
dGlvVHlwZShSZW5kZXJTdHlsZTo6aW5pdGlhbEFzcGVjdFJhdGlvVHlwZSgpKQogI2lmIEVOQUJM
RShDU1NfQ09NUE9TSVRJTkcpCiAgICAgLCBtX2VmZmVjdGl2ZUJsZW5kTW9kZShSZW5kZXJTdHls
ZTo6aW5pdGlhbEJsZW5kTW9kZSgpKQorICAgICwgbV9pc29sYXRpb24oUmVuZGVyU3R5bGU6Omlu
aXRpYWxJc29sYXRpb24oKSkKICNlbmRpZgogICAgICwgbV9vYmplY3RGaXQoUmVuZGVyU3R5bGU6
OmluaXRpYWxPYmplY3RGaXQoKSkKIHsKQEAgLTE3Miw2ICsxNzMsNyBAQCBpbmxpbmUgU3R5bGVS
YXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YShjb25zdCBTdHls
ZVJhcmVOb25JbgogICAgICwgbV9hc3BlY3RSYXRpb1R5cGUoby5tX2FzcGVjdFJhdGlvVHlwZSkK
ICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgICwgbV9lZmZlY3RpdmVCbGVuZE1vZGUo
by5tX2VmZmVjdGl2ZUJsZW5kTW9kZSkKKyAgICAsIG1faXNvbGF0aW9uKG8ubV9pc29sYXRpb24p
CiAjZW5kaWYKICAgICAsIG1fb2JqZWN0Rml0KG8ubV9vYmplY3RGaXQpCiB7CkBAIC0yNjIsNiAr
MjY0LDcgQEAgYm9vbCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KGNvbnN0
IFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEmIG8pIGMKICAgICAgICAgJiYgIW1fcnVubmluZ0Fj
Y2VsZXJhdGVkQW5pbWF0aW9uICYmICFvLm1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uCiAj
aWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICAgICAgJiYgbV9lZmZlY3RpdmVCbGVuZE1v
ZGUgPT0gby5tX2VmZmVjdGl2ZUJsZW5kTW9kZQorICAgICAgICAmJiBtX2lzb2xhdGlvbiA9PSBv
Lm1faXNvbGF0aW9uCiAjZW5kaWYKICAgICAgICAgJiYgbV9hc3BlY3RSYXRpb1R5cGUgPT0gby5t
X2FzcGVjdFJhdGlvVHlwZQogICAgICAgICAmJiBtX29iamVjdEZpdCA9PSBvLm1fb2JqZWN0Rml0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5v
bkluaGVyaXRlZERhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmgKaW5kZXggYzNiYTUyNjE1ZjhmZTUzNjU5MmVkYTlmYmZlZmJi
NWUwN2U4YmQ2Zi4uOTI5YjNhMTY4OTcwNGRkOGZmNjg1YzdlN2U4ODU5ZGRhYjNkY2VjNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVy
aXRlZERhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YS5oCkBAIC0xOTQsNiArMTk0LDcgQEAgcHVibGljOgogCiAjaWYgRU5B
QkxFKENTU19DT01QT1NJVElORykKICAgICB1bnNpZ25lZCBtX2VmZmVjdGl2ZUJsZW5kTW9kZTog
NTsgLy8gRUJsZW5kTW9kZQorICAgIHVuc2lnbmVkIG1faXNvbGF0aW9uIDogMTsgLy8gSXNvbGF0
aW9uCiAjZW5kaWYKIAogICAgIHVuc2lnbmVkIG1fb2JqZWN0Rml0IDogMzsgLy8gT2JqZWN0Rml0
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggOGRmMzE3NWJiYmIwNzFjY2JmYzk4Y2EwMTQ3ZmMwZmU2YzhmMzJlOS4uOGJkZDU4
OWY3MmZkMDhkZGYzMTMzZGUxOGE0OTViZWNhMTRjYTI2YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDE0LTAyLTE3ICBNaWhhaSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBb
Q1NTIEJsZW5kaW5nXSBQYXJzZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBD
U1MgcHJvcGVydHkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEyODk1OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1zaW1wbGUtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29s
YXRlLXNpbXBsZS5odG1sOiBDaGVjayBib3RoIHRoZSBjb21wb3NpdGVkIGFuZCBub24tY29tcG9z
aXRlZCBwYXRoCisgICAgICAgICAgICBmb3IgdGhlIGNyZWF0aW9uIG9mIGEgc3RhY2tpbmcgY29u
dGV4dCB3aGVuIHNldHRpbmcgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGUuCisgICAgICAgICog
Y3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmcuaHRtbDogVGVzdCBp
ZiAtd2Via2l0LWlzb2xhdGlvbiBpcyBwcm9wZXJseSBwYXJzZWQuCisKIDIwMTQtMDItMTcgIE1p
Y2hhxYIgUGFrdcWCYSB2ZWwgUnV0a2EgIDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KIAogICAgICAg
ICBVbnJldmlld2VkIEVGTCBnYXJkZW5pbmcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
Y29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5mODljZmQ4MzUzZjZhNDI0NTQ3Nzc1NjU3MDVkOTc3MmQ3YjcwYzUw
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRp
b24taXNvbGF0ZS1zaW1wbGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorUEFTUyAwIGlz
IDAKK1BBU1MgMCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29s
YXRpb24taXNvbGF0ZS1zaW1wbGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcv
aXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWYyNGMwZDhlOGYzNTNh
MDdhNjgyZGZlYjNjNjJlMWM5MDU5MWIxMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLmh0bWwKQEAgLTAsMCAr
MSwyOCBAQAorPCFET0NUWVBFIEhUTUw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorICAgIGRp
diB7CisgICAgICAgIHdpZHRoOiAxMHB4OworICAgICAgICBoZWlnaHQ6IDEwcHg7CisgICAgICAg
IGJhY2tncm91bmQ6IGdyZWVuOworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjppc29sYXRlOwor
ICAgIH0KKzwvc3R5bGU+Cis8IS0tIElzb2xhdGlvbiBzaG91bGQgY3JlYXRlIGEgc3RhY2tpbmcg
Y29udGV4dC4gVGVzdCBpZiAiaXNvbGF0aW9uOmlzb2xhdGUiIHNldHMgdGhlIHpJbmRleCB0byAw
LCBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0ICJhdXRvIiB2YWx1ZS4gLS0+Cis8Ym9keT4KKyAgICA8
ZGl2IGlkPSJpc29sYXRvciI+PC9kaXY+CisgICAgPGRpdiBpZD0iaXNvbGF0b3JfY29tcG9zaXRl
ZCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyI+PC9kaXY+CisKKyAg
ICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQ+CisgICAgICAgIC8vIE5vbiBjb21wb3NpdGVkIHBhdGguCisgICAgICAgIHZhciB6
SW5kZXggPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpc29sYXRv
ciIpKS56SW5kZXg7CisgICAgICAgIHNob3VsZEJlWmVybyh6SW5kZXgpOworCisgICAgICAgIC8v
IENvbXBvc2l0ZWQgcGF0aC4KKyAgICAgICAgekluZGV4ID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiaXNvbGF0b3JfY29tcG9zaXRlZCIpKS56SW5kZXg7CisgICAg
ICAgIHNob3VsZEJlWmVybyh6SW5kZXgpOworICAgIDwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFy
c2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlv
bi1wYXJzaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOTk1ZWM0OGE5NjcwMzkyMDlmZWY5
YjAzNzA2OTJjNWM2OTZmZDU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9j
b21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw4IEBA
CitQQVNTIHNldFByb3BlcnR5KCJhdXRvIikgaXMgImF1dG8iCitQQVNTIHNldFByb3BlcnR5KCJp
c29sYXRlIikgaXMgImlzb2xhdGUiCitQQVNTIHNldFByb3BlcnR5KCIiKSBpcyAiYXV0byIKK1BB
U1Mgc2V0UHJvcGVydHkoInJ1YmJpc2giKSBpcyAiYXV0byIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
c3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODUyOWRlYTVl
OWQwNjAyNGRkYmZkYWY5N2ZkOTUzYWZkYmI2MjBkYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmcuaHRtbApAQCAtMCwwICsx
LDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+CisgICAgPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAg
ICAgICBmdW5jdGlvbiBzZXRQcm9wZXJ0eSh2YWx1ZSkgeworICAgICAgICAgICAgdmFyIGRpdiA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChkaXYpOworICAgICAgICAgICAgZGl2LnN0eWxlLnNldFByb3BlcnR5KCIt
d2Via2l0LWlzb2xhdGlvbiIsIHZhbHVlKTsKKworICAgICAgICAgICAgdmFyIGNvbXB1dGVkVmFs
dWUgPSBnZXRDb21wdXRlZFN0eWxlKGRpdikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC1pc29s
YXRpb24iKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2KTsKKwor
ICAgICAgICAgICAgcmV0dXJuIGNvbXB1dGVkVmFsdWU7CisgICAgICAgIH0KKworICAgICAgICBm
dW5jdGlvbiB0ZXN0KHZhbHVlLCBleHBlY3RlZCkgeworICAgICAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCdzZXRQcm9wZXJ0eSgiJyArIHZhbHVlICsgJyIpJywgZXhwZWN0ZWQpOworICAg
ICAgICB9CisKKyAgICAgICAgdGVzdCgiYXV0byIsICJhdXRvIik7CisgICAgICAgIHRlc3QoImlz
b2xhdGUiLCAiaXNvbGF0ZSIpOworICAgICAgICB0ZXN0KCIiLCAiYXV0byIpOworICAgICAgICB0
ZXN0KCJydWJiaXNoIiwgImF1dG8iKTsKKyAgICA8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224608</attachid>
            <date>2014-02-19 01:19:01 -0800</date>
            <delta_ts>2014-02-24 05:44:06 -0800</delta_ts>
            <desc>Patch V3</desc>
            <filename>bug-128958-20140219111921.patch</filename>
            <type>text/plain</type>
            <size>18713</size>
            <attacher name="Mihai Tica">mitica</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0MzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI1MzAzZDg5NzFhOTFh
YjE0MWUzMTM5NmJlN2JiZDY1ZGUyNTc3OS4uYjk3YjhhMDg5ZGE1NmRlODBiNDI5NWMxN2ZkMzQ3
ZjZkMTc4MTAyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE0LTAyLTE5ICBNaWhh
aSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJz
ZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhcnNlIHRoZSBp
c29sYXRpb24gcHJvcGVydHksIHBhcnQgb2YgdGhlIENTUyBCbGVuZGluZyBhbmQgY29tcG9zaXRp
bmcgc3BlYy4KKyAgICAgICAgVGhlIGltcGxlbWVudGF0aW9uIGNvbnNpc3RzIG9mIGFkZGluZyBj
cmVhdGluZyBhIHN0YWNraW5nIGNvbnRleHQgZm9yIGVhY2gKKyAgICAgICAgZWxlbWVudCBoYXZp
bmcgaXNvbGF0aW9uOiBpc29sYXRlLiBUaGUgZGVmYXVsdCBpc29sYXRpb246IGF1dG8gaGFzIG5v
IGVmZmVjdC4KKworICAgICAgICBUZXN0czogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNv
bGF0ZS1zaW1wbGUuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9pc29sYXRp
b24tcGFyc2luZy5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Omlz
S2V5d29yZFByb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24pOgorICAg
ICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOiBBZGQgLXdlYmtpdC1pc29sYXRpb24uCisg
ICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46IEFkZCB0aGUgaXNvbGF0ZSB2YWx1ZS4K
KyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6IEV4cGxpY2l0bHkgc2V0IGlzb2xhdGlvbjppc29s
YXRlIHRvIGNyZWF0ZSBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgICogcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFu
Z2VSZXF1aXJlc0xheWVyUmVwYWludCk6IENoYW5naW5nIGlzb2xhdGlvbiBzaG91bGQgdHJpZ2dl
ciBhIHJlcGFpbnQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6IFNl
dHRlcnMgYW5kIGdldHRlcnMgZm9yIGlzb2xhdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogQWRkIElzb2xhdGlvbiBlbnVtLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDogQWRkIG1faXNv
bGF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oOgorCiAyMDE0LTAyLTE5ICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxpZnkgUExBVEZPUk0oTUFDKSAmJiAhUExB
VEZPUk0oSU9TKSBhbmQgc2ltaWxhciBleHByZXNzaW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCA0ZTg3ZGMyMzdkZTI5
ZWMyOGVkM2EzMzAxMTk2NWYzYWVhNjJlODNmLi4wOWQzM2M0Yzk2OTE3Y2IzYWE1NjQ0MTk0MmI4
M2ZiN2ZjOWVhZGI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRT
dHlsZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRT
dHlsZURlY2xhcmF0aW9uLmNwcApAQCAtMjI4LDYgKzIyOCw3IEBAIHN0YXRpYyBjb25zdCBDU1NQ
cm9wZXJ0eUlEIGNvbXB1dGVkUHJvcGVydGllc1tdID0gewogICAgIENTU1Byb3BlcnR5V2Via2l0
QmFja2dyb3VuZFNpemUsCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBDU1NQcm9w
ZXJ0eVdlYmtpdEJsZW5kTW9kZSwKKyAgICBDU1NQcm9wZXJ0eVdlYmtpdElzb2xhdGlvbiwKICNl
bmRpZgogICAgIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRml0LAogICAgIENTU1Byb3BlcnR5V2Vi
a2l0Qm9yZGVySG9yaXpvbnRhbFNwYWNpbmcsCkBAIC0yODQyLDYgKzI4NDMsOCBAQCBQYXNzUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1By
b3BlcnR5SUQgcHJvcGVydAogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRCbGVuZE1vZGU6CiAgICAgICAgICAgICByZXR1cm4gY3NzVmFs
dWVQb29sKCkuY3JlYXRlVmFsdWUoc3R5bGUtPmJsZW5kTW9kZSgpKTsKKyAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdElzb2xhdGlvbjoKKyAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBv
b2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+aXNvbGF0aW9uKCkpOwogI2VuZGlmCiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQmxlbmRNb2RlOiB7CiAgICAgICAgICAgICBjb25zdCBG
aWxsTGF5ZXIqIGxheWVycyA9IHN0eWxlLT5iYWNrZ3JvdW5kTGF5ZXJzKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQYXJzZXIuY3BwCmluZGV4IDY2ZTBlMjFjYjUwYmY4NmI5Y2FhYzA3YmRjOTZiOTczMzlkY2Zm
ZGMuLmQxMWFjNTM0M2FmZWNlYmExOTYzNDFlNmIyZGY0ZmFmMzNjYTA0ODUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXIuY3BwCkBAIC04MTAsNiArODEwLDEwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBp
c1ZhbGlkS2V5d29yZFByb3BlcnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkLCBp
bnQKICAgICAgICAgICAgIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVMdW1pbm9zaXR5KSkKICAgICAg
ICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1Byb3BlcnR5
V2Via2l0SXNvbGF0aW9uOgorICAgICAgICBpZiAocGFyc2VyQ29udGV4dC5pc0NTU0NvbXBvc2l0
aW5nRW5hYmxlZCAmJiAodmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG8gfHwgdmFsdWVJRCA9PSBDU1NW
YWx1ZUlzb2xhdGUpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIGJyZWFrOwog
I2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckZpdDoKICAgICAgICAgaWYg
KHZhbHVlSUQgPT0gQ1NTVmFsdWVCb3JkZXIgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUxpbmVzKQpA
QCAtMTA3OSw2ICsxMDgzLDcgQEAgc3RhdGljIGlubGluZSBib29sIGlzS2V5d29yZFByb3BlcnR5
SUQoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkKQogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRB
cHBlYXJhbmNlOgogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVdlYmtpdEJsZW5kTW9kZToKKyAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9u
OgogI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEJhY2tmYWNlVmlzaWJpbGl0eToK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQWZ0ZXJTdHlsZToKQEAgLTI0MTUsNiAr
MjQyMCwxMCBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJ
ZCwgYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGlmIChjc3NDb21wb3NpdGluZ0VuYWJsZWQoKSkK
ICAgICAgICAgICAgIHZhbGlkUHJpbWl0aXZlID0gdHJ1ZTsKICAgICAgICAgYnJlYWs7CisgICAg
Y2FzZSBDU1NQcm9wZXJ0eVdlYmtpdElzb2xhdGlvbjoKKyAgICAgICAgaWYgKGNzc0NvbXBvc2l0
aW5nRW5hYmxlZCgpKQorICAgICAgICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOworICAgICAg
ICBicmVhazsKICNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRGbGV4OiB7CiAgICAg
ICAgIFNob3J0aGFuZFNjb3BlIHNjb3BlKHRoaXMsIHByb3BJZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCA4MzY3MWI0NmMyODdhYjdm
YmM4OGU3ODRhZTk5YzEyODcwYTdmZmVhLi4wMDA2MTZmMjg3YWQwN2E5Yjc3YmUzOGM5NzYzYWQ1
NmEwOGY4ZjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1h
cHBpbmdzLmgKQEAgLTQxNTUsNiArNDE1NSwzOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgQmxlbmRNb2RlKCkgY29uc3QKICAgICByZXR1cm4gQmxlbmRN
b2RlTm9ybWFsOwogfQogCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoSXNvbGF0aW9uIGlzb2xhdGlvbikKKyAgICA6IENTU1ZhbHVlKFByaW1p
dGl2ZUNsYXNzKQoreworICAgIG1fcHJpbWl0aXZlVW5pdFR5cGUgPSBDU1NfVkFMVUVfSUQ7Cisg
ICAgc3dpdGNoIChpc29sYXRpb24pIHsKKyAgICBjYXNlIElzb2xhdGlvbkF1dG86CisgICAgICAg
IG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQXV0bzsKKyAgICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBJc29sYXRpb25Jc29sYXRlOgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUlz
b2xhdGU7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIH0KK30KKwordGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIElzb2xhdGlvbigpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzVmFsdWVJRCgp
KTsKKyAgICBzd2l0Y2ggKG1fdmFsdWUudmFsdWVJRCkgeworICAgIGNhc2UgQ1NTVmFsdWVBdXRv
OgorICAgICAgICByZXR1cm4gSXNvbGF0aW9uQXV0bzsKKyAgICBjYXNlIENTU1ZhbHVlSXNvbGF0
ZToKKyAgICAgICAgcmV0dXJuIElzb2xhdGlvbklzb2xhdGU7CisgICAgZGVmYXVsdDoKKyAgICAg
ICAgYnJlYWs7CisgICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJu
IElzb2xhdGlvbkF1dG87Cit9CisKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NQcmltaXRpdmVWYWx1ZShMaW5lQ2FwIGUpCiAgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVz
LmluIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXggM2VmMDUy
NDQxNWY5YmNmNGFlZjM3YWM0NWRmMDg3M2U5ZjU2MzcyYS4uMTA3NzBmNmFiYzQyODUzZTRjYjY4
NjkyMzkyOThiMmQ3OTM3OWUxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
b3BlcnR5TmFtZXMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMu
aW4KQEAgLTI4Myw2ICsyODMsNyBAQCB6LWluZGV4CiAjZW5kaWYKICNpZiBkZWZpbmVkKEVOQUJM
RV9DU1NfQ09NUE9TSVRJTkcpICYmIEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcKIC13ZWJraXQtYmxl
bmQtbW9kZQorLXdlYmtpdC1pc29sYXRpb24KICNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NT
U19GSUxURVJTKSAmJiBFTkFCTEVfQ1NTX0ZJTFRFUlMKIC13ZWJraXQtZmlsdGVyCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDM4YWQxNzY3ZWM3ZDdmMWU2NWVmMGIz
ODliZmQyMGFhMDIzNGQyZjIuLmUxNDAwYTdjNWMwYjY5YzQzODljMzVkYmQ3NzQ5MjgyYmI2MWY2
NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC0xMDI0LDYgKzEw
MjQsMTAgQEAgc2F0dXJhdGlvbgogY29sb3IKIGx1bWlub3NpdHkKIAorLy8gaXNvbGF0aW9uCisv
LyBhdXRvCitpc29sYXRlCisKIC8vIG9iamVjdC1maXQKIC8vIGZpbGwKIC8vIGNvbnRhaW4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAppbmRleCA1ODNh
NWRiNzhlNGE1MGMyODg5N2Q5ZTFjYWQ0NWFlOTNkZDI4YzNlLi45MDdiZTBhYzViMzNkY2I0Mjhm
MzRmNGZlOTk2ZTg4OTQ1M2ZlNzAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVw
cmVjYXRlZFN0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0
ZWRTdHlsZUJ1aWxkZXIuY3BwCkBAIC0yNDg4LDYgKzI0ODgsNyBAQCBEZXByZWNhdGVkU3R5bGVC
dWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKCkKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIo
Q1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6
ZSk7CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIo
Q1NTUHJvcGVydHlXZWJraXRCbGVuZE1vZGUsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEJsZW5kTW9k
ZSwgJlJlbmRlclN0eWxlOjpibGVuZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjpzZXRC
bGVuZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQmxlbmRNb2RlPjo6Y3Jl
YXRlSGFuZGxlcigpKTsKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRJ
c29sYXRpb24sIEFwcGx5UHJvcGVydHlEZWZhdWx0PElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjpp
c29sYXRpb24sIElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjpzZXRJc29sYXRpb24sIElzb2xhdGlv
biwgJlJlbmRlclN0eWxlOjppbml0aWFsSXNvbGF0aW9uPjo6Y3JlYXRlSGFuZGxlcigpKTsKICNl
bmRpZgogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckZpdCwg
QXBwbHlQcm9wZXJ0eURlZmF1bHQ8RUJvcmRlckZpdCwgJlJlbmRlclN0eWxlOjpib3JkZXJGaXQs
IEVCb3JkZXJGaXQsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyRml0LCBFQm9yZGVyRml0LCAmUmVu
ZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJGaXQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFBy
b3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckhvcml6b250YWxTcGFjaW5nLCBB
cHBseVByb3BlcnR5Q29tcHV0ZUxlbmd0aDxzaG9ydCwgJlJlbmRlclN0eWxlOjpob3Jpem9udGFs
Qm9yZGVyU3BhY2luZywgJlJlbmRlclN0eWxlOjpzZXRIb3Jpem9udGFsQm9yZGVyU3BhY2luZywg
JlJlbmRlclN0eWxlOjppbml0aWFsSG9yaXpvbnRhbEJvcmRlclNwYWNpbmc+OjpjcmVhdGVIYW5k
bGVyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDIyYTZiZGUwZTA2
Mjg1MDAwNTI1NzA5ZDVhODJhZTkwOTQ1Mjg2MmIuLjhkNWFkYjVjYzRmYzBmZjAyNDIxNTI5NDVk
YTY5Njk0ZjQxYWI4ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTEy
MzgsNiArMTIzOCw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUoUmVu
ZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgcGFyCiAgICAgICAgIHx8IHN0eWxl
LmJveFJlZmxlY3QoKQogICAgICAgICB8fCBzdHlsZS5oYXNGaWx0ZXIoKQogICAgICAgICB8fCBz
dHlsZS5oYXNCbGVuZE1vZGUoKQorICAgICAgICB8fCBzdHlsZS5oYXNJc29sYXRpb24oKQogICAg
ICAgICB8fCBzdHlsZS5wb3NpdGlvbigpID09IFN0aWNreVBvc2l0aW9uCiAgICAgICAgIHx8IChz
dHlsZS5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gJiYgZSAmJiBlLT5kb2N1bWVudCgpLnBh
Z2UoKSAmJiBlLT5kb2N1bWVudCgpLnBhZ2UoKS0+c2V0dGluZ3MoKS5maXhlZFBvc2l0aW9uQ3Jl
YXRlc1N0YWNraW5nQ29udGV4dCgpKQogICAgICAgICB8fCBzdHlsZS5oYXNGbG93RnJvbSgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCAx
MzNhYjQ5MGVkZTI0OTZmYjkzYjgyZTBlMTdlOGE4ZDY2OGVmOTFmLi5iYTgyOWY2YjUyNGRmNmMx
NzJlNDliZTkzMTFkYmM4YjlmNWMzOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTY3OSw2ICs2NzksOSBAQCBib29sIFJlbmRlclN0
eWxlOjpjaGFuZ2VSZXF1aXJlc0xheWVyUmVwYWludChjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIs
IHVuc2lnbmVkJgogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgaWYgKHJhcmVOb25J
bmhlcml0ZWREYXRhLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSAhPSBvdGhlci0+cmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKKwor
ICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24gIT0gb3RoZXItPnJhcmVO
b25Jbmhlcml0ZWREYXRhLT5tX2lzb2xhdGlvbikKKyAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5k
aWYKIAogICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+b3BhY2l0eSAhPSBvdGhlci0+cmFy
ZU5vbkluaGVyaXRlZERhdGEtPm9wYWNpdHkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggNzdhN2FkZTg1ODBjMzA1OTNkZWMzMGYxMmViYTdl
M2JhNmFlMjBjNi4uZGEzZTMxMzVhNjEzOGZlOTQzNDU4OThkYmUxZmE0ODBmYWJmMTBkOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTk2Nywx
MSArOTY3LDE4IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAg
QmxlbmRNb2RlIGJsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEJsZW5kTW9k
ZT4ocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKTsgfQotICAgIHZv
aWQgc2V0QmxlbmRNb2RlKEJsZW5kTW9kZSB2KSB7IHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2Vz
cygpLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSA9IHY7IH0KKyAgICB2b2lkIHNldEJsZW5kTW9kZShC
bGVuZE1vZGUgdikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX2VmZmVjdGl2ZUJs
ZW5kTW9kZSwgdik7IH0KICAgICBib29sIGhhc0JsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0
YXRpY19jYXN0PEJsZW5kTW9kZT4ocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZWZmZWN0aXZlQmxl
bmRNb2RlKSAhPSBCbGVuZE1vZGVOb3JtYWw7IH0KKworICAgIElzb2xhdGlvbiBpc29sYXRpb24o
KSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxJc29sYXRpb24+KHJhcmVOb25Jbmhlcml0ZWRE
YXRhLT5tX2lzb2xhdGlvbik7IH0KKyAgICB2b2lkIHNldElzb2xhdGlvbihJc29sYXRpb24gdikg
eyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX2lzb2xhdGlvbiwgdik7IH0KKyAgICBi
b29sIGhhc0lzb2xhdGlvbigpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5t
X2lzb2xhdGlvbiAhPSBJc29sYXRpb25BdXRvOyB9CiAjZWxzZQogICAgIEJsZW5kTW9kZSBibGVu
ZE1vZGUoKSBjb25zdCB7IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7IH0KICAgICBib29sIGhhc0Js
ZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisKKyAgICBJc29sYXRpb24gaXNvbGF0
aW9uKCkgY29uc3QgeyByZXR1cm4gSXNvbGF0aW9uQXV0bzsgfQorICAgIGJvb2wgaGFzSXNvbGF0
aW9uKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogIAogI2lmIFVTRShSVExfU0NS
T0xMQkFSKQpAQCAtMTgxNyw2ICsxODI0LDcgQEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxF
KENTU19DT01QT1NJVElORykKICAgICBzdGF0aWMgQmxlbmRNb2RlIGluaXRpYWxCbGVuZE1vZGUo
KSB7IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7IH0KKyAgICBzdGF0aWMgSXNvbGF0aW9uIGluaXRp
YWxJc29sYXRpb24oKSB7IHJldHVybiBJc29sYXRpb25BdXRvOyB9CiAjZW5kaWYKIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
Q29uc3RhbnRzLmgKaW5kZXggNzA0YWRlMDZhMzA1YThmODBiOWVmNjg4YjBiODM3YTFjY2Y0YWIz
ZS4uMGM2NGRkYjVjZDk4NjQwNWNmYjFjNGNkZjY0YmU5YWVlYzBkYTQ5MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgK
QEAgLTU1MCw2ICs1NTAsOCBAQCBlbnVtIFRleHRJbmRlbnRMaW5lIHsgVGV4dEluZGVudEZpcnN0
TGluZSwgVGV4dEluZGVudEVhY2hMaW5lIH07CiBlbnVtIFRleHRJbmRlbnRUeXBlIHsgVGV4dElu
ZGVudE5vcm1hbCwgVGV4dEluZGVudEhhbmdpbmcgfTsKICNlbmRpZgogCitlbnVtIElzb2xhdGlv
biB7IElzb2xhdGlvbkF1dG8sIElzb2xhdGlvbklzb2xhdGUgfTsKKwogLy8gRmlsbCwgU3Ryb2tl
LCBWaWV3Qm94IGFyZSBqdXN0IHVzZWQgZm9yIFNWRy4KIGVudW0gTGF5b3V0Qm94IHsgQm94TWlz
c2luZyA9IDAsIE1hcmdpbkJveCwgQm9yZGVyQm94LCBQYWRkaW5nQm94LCBDb250ZW50Qm94LCBG
aWxsLCBTdHJva2UsIFZpZXdCb3ggfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDhi
ZWMxNjI5NTZhODJmNWY1YmY0MTI0OTE0MzUwYzBkZGJjMDc2NDMuLjYyYzFjOTRhMGQ3ZmY0NmI0
MzcwNDg5ZTdlMTIwYTYxNDFhNjhhNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTky
LDYgKzkyLDcgQEAgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YSgpCiAgICAgLCBtX2FzcGVjdFJhdGlvVHlwZShSZW5kZXJTdHlsZTo6aW5pdGlhbEFz
cGVjdFJhdGlvVHlwZSgpKQogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgLCBtX2Vm
ZmVjdGl2ZUJsZW5kTW9kZShSZW5kZXJTdHlsZTo6aW5pdGlhbEJsZW5kTW9kZSgpKQorICAgICwg
bV9pc29sYXRpb24oUmVuZGVyU3R5bGU6OmluaXRpYWxJc29sYXRpb24oKSkKICNlbmRpZgogICAg
ICwgbV9vYmplY3RGaXQoUmVuZGVyU3R5bGU6OmluaXRpYWxPYmplY3RGaXQoKSkKIHsKQEAgLTE3
Miw2ICsxNzMsNyBAQCBpbmxpbmUgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YShjb25zdCBTdHlsZVJhcmVOb25JbgogICAgICwgbV9hc3BlY3RSYXRp
b1R5cGUoby5tX2FzcGVjdFJhdGlvVHlwZSkKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQog
ICAgICwgbV9lZmZlY3RpdmVCbGVuZE1vZGUoby5tX2VmZmVjdGl2ZUJsZW5kTW9kZSkKKyAgICAs
IG1faXNvbGF0aW9uKG8ubV9pc29sYXRpb24pCiAjZW5kaWYKICAgICAsIG1fb2JqZWN0Rml0KG8u
bV9vYmplY3RGaXQpCiB7CkBAIC0yNjIsNiArMjY0LDcgQEAgYm9vbCBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhOjpvcGVyYXRvcj09KGNvbnN0IFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEmIG8p
IGMKICAgICAgICAgJiYgIW1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uICYmICFvLm1fcnVu
bmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAg
ICAgICAgJiYgbV9lZmZlY3RpdmVCbGVuZE1vZGUgPT0gby5tX2VmZmVjdGl2ZUJsZW5kTW9kZQor
ICAgICAgICAmJiBtX2lzb2xhdGlvbiA9PSBvLm1faXNvbGF0aW9uCiAjZW5kaWYKICAgICAgICAg
JiYgbV9hc3BlY3RSYXRpb1R5cGUgPT0gby5tX2FzcGVjdFJhdGlvVHlwZQogICAgICAgICAmJiBt
X29iamVjdEZpdCA9PSBvLm1fb2JqZWN0Rml0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKaW5kZXggYzNi
YTUyNjE1ZjhmZTUzNjU5MmVkYTlmYmZlZmJiNWUwN2U4YmQ2Zi4uOTI5YjNhMTY4OTcwNGRkOGZm
Njg1YzdlN2U4ODU5ZGRhYjNkY2VjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCkBAIC0xOTQsNiAr
MTk0LDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICB1bnNp
Z25lZCBtX2VmZmVjdGl2ZUJsZW5kTW9kZTogNTsgLy8gRUJsZW5kTW9kZQorICAgIHVuc2lnbmVk
IG1faXNvbGF0aW9uIDogMTsgLy8gSXNvbGF0aW9uCiAjZW5kaWYKIAogICAgIHVuc2lnbmVkIG1f
b2JqZWN0Rml0IDogMzsgLy8gT2JqZWN0Rml0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2IyZDk2NTBhMGZiZWNhNTZmMjYy
NGRmMDhiZDg0MmRhYzYzNGJmOS4uZTg2OTMzMGExYmYzZmFmZDIxZjZmNzQwZDJiMmZlNmE4NmQ3
OGZkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE0LTAyLTE5ICBNaWhhaSBUaWNhICA8bWl0
aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJzZSBhbmQgaW1wbGVt
ZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgaWYgLXdlYmtpdC1pc29sYXRp
b24gaXMgcGFyc2VkLiBUZXN0IGlmIHNldHRpbmcgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGUg
dHJpZ2dlcnMgdGhlCisgICAgICAgIGNyZWF0aW9uIG9mIGEgbmV3IHN0YWNraW5nIGNvbnRleHQu
CisKKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBsZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9u
LWlzb2xhdGUtc2ltcGxlLmh0bWw6IENoZWNrIGJvdGggdGhlIGNvbXBvc2l0ZWQgYW5kIG5vbi1j
b21wb3NpdGVkIHBhdGgKKyAgICAgICAgICAgIGZvciB0aGUgY3JlYXRpb24gb2YgYSBzdGFja2lu
ZyBjb250ZXh0IHdoZW4gc2V0dGluZyAtd2Via2l0LWlzb2xhdGlvbjogaXNvbGF0ZS4KKyAgICAg
ICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy5odG1sOiBU
ZXN0IGlmIC13ZWJraXQtaXNvbGF0aW9uIGlzIHByb3Blcmx5IHBhcnNlZC4KKwogMjAxNC0wMi0x
OCAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBXaW5kb3dz
IGdhcmRlbmluZzogQWRkIGFubm90YXRpb25zIGZvciBEZWJ1ZyBjYXNlLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1zaW1wbGUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0
ZS1zaW1wbGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY4OWNmZDgzNTNmNmE0MjQ1NDc3NzU2
NTcwNWQ5NzcyZDdiNzBjNTAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBsZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw2IEBACitQQVNTIDAgaXMgMAorUEFTUyAwIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLXNpbXBsZS5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1zaW1wbGUuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lZjI0YzBkOGU4ZjM1M2EwN2E2ODJkZmViM2M2MmUxYzkwNTkxYjEyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1zaW1w
bGUuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+
Cis8c3R5bGU+CisgICAgZGl2IHsKKyAgICAgICAgd2lkdGg6IDEwcHg7CisgICAgICAgIGhlaWdo
dDogMTBweDsKKyAgICAgICAgYmFja2dyb3VuZDogZ3JlZW47CisgICAgICAgIC13ZWJraXQtaXNv
bGF0aW9uOmlzb2xhdGU7CisgICAgfQorPC9zdHlsZT4KKzwhLS0gSXNvbGF0aW9uIHNob3VsZCBj
cmVhdGUgYSBzdGFja2luZyBjb250ZXh0LiBUZXN0IGlmICJpc29sYXRpb246aXNvbGF0ZSIgc2V0
cyB0aGUgekluZGV4IHRvIDAsIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgImF1dG8iIHZhbHVlLiAt
LT4KKzxib2R5PgorICAgIDxkaXYgaWQ9Imlzb2xhdG9yIj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJp
c29sYXRvcl9jb21wb3NpdGVkIiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVoo
MCk7Ij48L2Rpdj4KKworICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgLy8gTm9uIGNvbXBvc2l0ZWQgcGF0
aC4KKyAgICAgICAgdmFyIHpJbmRleCA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImlzb2xhdG9yIikpLnpJbmRleDsKKyAgICAgICAgc2hvdWxkQmVaZXJvKHpJbmRl
eCk7CisKKyAgICAgICAgLy8gQ29tcG9zaXRlZCBwYXRoLgorICAgICAgICB6SW5kZXggPSBnZXRD
b21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpc29sYXRvcl9jb21wb3NpdGVk
IikpLnpJbmRleDsKKyAgICAgICAgc2hvdWxkQmVaZXJvKHpJbmRleCk7CisgICAgPC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0
aW5nL2lzb2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvY29t
cG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA5OTVl
YzQ4YTk2NzAzOTIwOWZlZjliMDM3MDY5MmM1YzY5NmZkNTUKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDggQEAKK1BBU1Mgc2V0UHJvcGVydHkoImF1dG8iKSBpcyAiYXV0byIKK1BB
U1Mgc2V0UHJvcGVydHkoImlzb2xhdGUiKSBpcyAiaXNvbGF0ZSIKK1BBU1Mgc2V0UHJvcGVydHko
IiIpIGlzICJhdXRvIgorUEFTUyBzZXRQcm9wZXJ0eSgicnViYmlzaCIpIGlzICJhdXRvIgorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmcuaHRtbCBi
L0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmcuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44NTI5ZGVhNWU5ZDA2MDI0ZGRiZmRhZjk3ZmQ5NTNhZmRiYjYyMGRiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2lu
Zy5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0Pgor
ICAgIDxzY3JpcHQ+CisgICAgICAgIGZ1bmN0aW9uIHNldFByb3BlcnR5KHZhbHVlKSB7CisgICAg
ICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7CisgICAgICAgICAgICBkaXYuc3R5
bGUuc2V0UHJvcGVydHkoIi13ZWJraXQtaXNvbGF0aW9uIiwgdmFsdWUpOworCisgICAgICAgICAg
ICB2YXIgY29tcHV0ZWRWYWx1ZSA9IGdldENvbXB1dGVkU3R5bGUoZGl2KS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LWlzb2xhdGlvbiIpOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1v
dmVDaGlsZChkaXYpOworCisgICAgICAgICAgICByZXR1cm4gY29tcHV0ZWRWYWx1ZTsKKyAgICAg
ICAgfQorCisgICAgICAgIGZ1bmN0aW9uIHRlc3QodmFsdWUsIGV4cGVjdGVkKSB7CisgICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3NldFByb3BlcnR5KCInICsgdmFsdWUgKyAnIikn
LCBleHBlY3RlZCk7CisgICAgICAgIH0KKworICAgICAgICB0ZXN0KCJhdXRvIiwgImF1dG8iKTsK
KyAgICAgICAgdGVzdCgiaXNvbGF0ZSIsICJpc29sYXRlIik7CisgICAgICAgIHRlc3QoIiIsICJh
dXRvIik7CisgICAgICAgIHRlc3QoInJ1YmJpc2giLCAiYXV0byIpOworICAgIDwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225055</attachid>
            <date>2014-02-24 05:44:16 -0800</date>
            <delta_ts>2014-02-24 12:34:50 -0800</delta_ts>
            <desc>Patch V4</desc>
            <filename>bug-128958-20140224154452.patch</filename>
            <type>text/plain</type>
            <size>26388</size>
            <attacher name="Mihai Tica">mitica</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0NTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjUyMGE3MWViNDI5YTZj
NGFmYWI1NDdhZDlhZDAxZGY2Y2U5NTU1MC4uODcwZDgyYmYwMjgwNzU2N2MwNGM3Mzg3YTU5ZjJj
NGNmMTJhODNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE0LTAyLTI0ICBNaWhh
aSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJz
ZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhcnNlIGFuZCBp
bXBsZW1lbnQgLXdlYmtpdC1pc29sYXRpb24sIHBhcnQgb2YgdGhlIENTUyBCbGVuZGluZyBhbmQg
Q29tcG9zaXRpbmcgc3BlYy4KKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGZ1bmN0aW9uYWxpdHkg
Zm9yIEhUTUwgYW5kIFNWRy4KKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGUgcmVz
dHJpY3RzIGFueSBjaGlsZCBlbGVtZW50cyBmcm9tIGJsZW5kaW5nIHdpdGggYW55IG9mIHRoZSBj
b250ZW50IG91dHNpZGUgdGhlIGlzb2xhdGVkIHBhcmVudCBlbGVtZW50LgorCisgICAgICAgIFRl
c3RzOiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLWJsZW5kZWQtY2hpbGQuaHRt
bAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy5odG1s
CisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC5o
dG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24taXNvbGF0
ZWQtZ3JvdXAuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0
aW9uLXNpbXBsZS5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Omlz
S2V5d29yZFByb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24pOgorICAg
ICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOiBBZGQgLXdlYmtpdC1pc29sYXRpb24uCisg
ICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46IEFkZCB0aGUgaXNvbGF0ZSB2YWx1ZS4K
KyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6IEV4cGxpY2l0bHkgc2V0IGlzb2xhdGlvbjppc29s
YXRlIHRvIGNyZWF0ZSBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgICogcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFu
Z2VSZXF1aXJlc0xheWVyUmVwYWludCk6IENoYW5naW5nIGlzb2xhdGlvbiBzaG91bGQgdHJpZ2dl
ciBhIHJlcGFpbnQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6IFNl
dHRlcnMgYW5kIGdldHRlcnMgZm9yIGlzb2xhdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogQWRkIElzb2xhdGlvbiBlbnVtLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDogQWRkIG1faXNv
bGF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvU1ZHUmVu
ZGVyaW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZW5kZXJpbmdDb250ZXh0
OjpwcmVwYXJlVG9SZW5kZXJTVkdDb250ZW50KTogSWYgaXNvbGF0ZWQsIHBhaW50IGluIGEgdHJh
bnNwYXJlbmN5IGxheWVyLgorCiAyMDE0LTAyLTI0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHJlZHVuZGFudCBzZXR0aW5nIGluIEZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0
ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0
eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDEyMzMxZDRmZjkxNTcwNGY1NmQ5YjE0ZTkxMmY0Mzk1
NGU4ZmNiYzcuLjMyNWNkNTg4ODZjZTVhZWZkMzA5MDRiOTA3MGY2OWE1NzNiMTZlN2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CkBAIC0yMjgsNiArMjI4LDcgQEAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQ
cm9wZXJ0aWVzW10gPSB7CiAgICAgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwKICNp
ZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgIENTU1Byb3BlcnR5V2Via2l0TWl4QmxlbmRN
b2RlLAorICAgIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uLAogI2VuZGlmCiAgICAgQ1NTUHJv
cGVydHlXZWJraXRCb3JkZXJGaXQsCiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jpem9u
dGFsU3BhY2luZywKQEAgLTI4NDIsNiArMjg0Myw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENv
bXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0
CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdE1peEJsZW5kTW9kZToKICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVh
dGVWYWx1ZShzdHlsZS0+YmxlbmRNb2RlKCkpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0SXNvbGF0aW9uOgorICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKHN0eWxlLT5pc29sYXRpb24oKSk7CiAjZW5kaWYKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eUJhY2tncm91bmRCbGVuZE1vZGU6IHsKICAgICAgICAgICAgIGNvbnN0IEZpbGxMYXllciogbGF5
ZXJzID0gc3R5bGUtPmJhY2tncm91bmRMYXllcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAK
aW5kZXggMGRmOGY5OWU1YzhkNTgwMjU0NzNmOWU0MzU5MjExN2JkYWY0MmYzZS4uZDk3M2Y3ZDNh
ZjQwNmM1Mzk5MjQ2OTllMmUzYTU5ZGY5NzBmMDI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKQEAgLTgxMCw2ICs4MTAsMTAgQEAgc3RhdGljIGlubGluZSBib29sIGlzVmFsaWRLZXl3b3Jk
UHJvcGVydHlBbmRWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQsIGludAogICAgICAgICAg
ICAgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUx1bWlub3NpdHkpKQogICAgICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRp
b246CisgICAgICAgIGlmIChwYXJzZXJDb250ZXh0LmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkICYm
ICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0byB8fCB2YWx1ZUlEID09IENTU1ZhbHVlSXNvbGF0ZSkp
CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRml0OgogICAgICAgICBpZiAodmFsdWVJRCA9PSBD
U1NWYWx1ZUJvcmRlciB8fCB2YWx1ZUlEID09IENTU1ZhbHVlTGluZXMpCkBAIC0xMDc5LDYgKzEw
ODMsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5SWQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEFwcGVhcmFuY2U6CiAj
aWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWl4
QmxlbmRNb2RlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRpb246CiAjZW5kaWYK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmFja2ZhY2VWaXNpYmlsaXR5OgogICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlclN0eWxlOgpAQCAtMjQxNSw2ICsyNDIwLDEwIEBA
IGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGlt
cG9ydGFudCkKICAgICAgICAgaWYgKGNzc0NvbXBvc2l0aW5nRW5hYmxlZCgpKQogICAgICAgICAg
ICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwogICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAgICAgICBpZiAoY3NzQ29tcG9zaXRpbmdFbmFibGVk
KCkpCisgICAgICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgIGJyZWFrOwog
I2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZsZXg6IHsKICAgICAgICAgU2hvcnRo
YW5kU2NvcGUgc2NvcGUodGhpcywgcHJvcElkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmluZGV4IDgzNjcxYjQ2YzI4N2FiN2ZiYzg4ZTc4NGFl
OTljMTI4NzBhN2ZmZWEuLjAwMDYxNmYyODdhZDA3YTliNzdiZTM4Yzk3NjNhZDU2YTA4ZjhmMzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApA
QCAtNDE1NSw2ICs0MTU1LDM4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpvcGVyYXRvciBCbGVuZE1vZGUoKSBjb25zdAogICAgIHJldHVybiBCbGVuZE1vZGVOb3JtYWw7
CiB9CiAKK3RlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShJc29sYXRpb24gaXNvbGF0aW9uKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3Mp
Cit7CisgICAgbV9wcmltaXRpdmVVbml0VHlwZSA9IENTU19WQUxVRV9JRDsKKyAgICBzd2l0Y2gg
KGlzb2xhdGlvbikgeworICAgIGNhc2UgSXNvbGF0aW9uQXV0bzoKKyAgICAgICAgbV92YWx1ZS52
YWx1ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAgICBicmVhazsKKyAgICBjYXNlIElzb2xhdGlv
bklzb2xhdGU6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSXNvbGF0ZTsKKyAg
ICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgfQorfQorCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgSXNvbGF0aW9uKCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaXNWYWx1ZUlEKCkpOworICAgIHN3
aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7CisgICAgY2FzZSBDU1NWYWx1ZUF1dG86CisgICAgICAg
IHJldHVybiBJc29sYXRpb25BdXRvOworICAgIGNhc2UgQ1NTVmFsdWVJc29sYXRlOgorICAgICAg
ICByZXR1cm4gSXNvbGF0aW9uSXNvbGF0ZTsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVhazsK
KyAgICB9CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gSXNvbGF0aW9u
QXV0bzsKK30KKwogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKExpbmVDYXAgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4gYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgppbmRleCBmNWMxOTllNzYxN2YyNjYz
NDFkMGYxYmQ2NzUxMTA4NDAyNGMyN2ZiLi4xOWU1MzVkY2U1MTQ0MzZkOGM3OGFiOTk4NjY0Njk2
OWNkYWE2NDU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1l
cy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgpAQCAtMjgz
LDYgKzI4Myw3IEBAIHotaW5kZXgKICNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19DT01Q
T1NJVElORykgJiYgRU5BQkxFX0NTU19DT01QT1NJVElORwogLXdlYmtpdC1taXgtYmxlbmQtbW9k
ZQorLXdlYmtpdC1pc29sYXRpb24KICNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19GSUxU
RVJTKSAmJiBFTkFCTEVfQ1NTX0ZJTFRFUlMKIC13ZWJraXQtZmlsdGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDM4YWQxNzY3ZWM3ZDdmMWU2NWVmMGIzODliZmQy
MGFhMDIzNGQyZjIuLmUxNDAwYTdjNWMwYjY5YzQzODljMzVkYmQ3NzQ5MjgyYmI2MWY2NjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC0xMDI0LDYgKzEwMjQsMTAg
QEAgc2F0dXJhdGlvbgogY29sb3IKIGx1bWlub3NpdHkKIAorLy8gaXNvbGF0aW9uCisvLyBhdXRv
Citpc29sYXRlCisKIC8vIG9iamVjdC1maXQKIC8vIGZpbGwKIC8vIGNvbnRhaW4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAppbmRleCBlOWE5MjQ2NmNh
OTUzZmVkZWJlNmUwNDAzMjM5MGU1NGMxMjk4ZGE4Li42MjIwZWYzOTc5NWUyMmY1MWIxYTc2ZTMy
YjBjYjM2MWYxMDYyNDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHls
ZUJ1aWxkZXIuY3BwCkBAIC0yNDg4LDYgKzI0ODgsNyBAQCBEZXByZWNhdGVkU3R5bGVCdWlsZGVy
OjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKCkKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJv
cGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZSk7CiAj
aWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJv
cGVydHlXZWJraXRNaXhCbGVuZE1vZGUsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEJsZW5kTW9kZSwg
JlJlbmRlclN0eWxlOjpibGVuZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjpzZXRCbGVu
ZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQmxlbmRNb2RlPjo6Y3JlYXRl
SGFuZGxlcigpKTsKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRJc29s
YXRpb24sIEFwcGx5UHJvcGVydHlEZWZhdWx0PElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjppc29s
YXRpb24sIElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjpzZXRJc29sYXRpb24sIElzb2xhdGlvbiwg
JlJlbmRlclN0eWxlOjppbml0aWFsSXNvbGF0aW9uPjo6Y3JlYXRlSGFuZGxlcigpKTsKICNlbmRp
ZgogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckZpdCwgQXBw
bHlQcm9wZXJ0eURlZmF1bHQ8RUJvcmRlckZpdCwgJlJlbmRlclN0eWxlOjpib3JkZXJGaXQsIEVC
b3JkZXJGaXQsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyRml0LCBFQm9yZGVyRml0LCAmUmVuZGVy
U3R5bGU6OmluaXRpYWxCb3JkZXJGaXQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3Bl
cnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckhvcml6b250YWxTcGFjaW5nLCBBcHBs
eVByb3BlcnR5Q29tcHV0ZUxlbmd0aDxzaG9ydCwgJlJlbmRlclN0eWxlOjpob3Jpem9udGFsQm9y
ZGVyU3BhY2luZywgJlJlbmRlclN0eWxlOjpzZXRIb3Jpem9udGFsQm9yZGVyU3BhY2luZywgJlJl
bmRlclN0eWxlOjppbml0aWFsSG9yaXpvbnRhbEJvcmRlclNwYWNpbmc+OjpjcmVhdGVIYW5kbGVy
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDA4M2NhZTFhNTEwMDg4
NmY3OTBlZjY4YTgwNDY3YTVlYzcxY2I1ZWEuLjJjZWQzMjE3MzdlZjQ3ZTU3ZTQxN2MxNmM1ZDZm
ZjI5ZDczMzQ1NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTEyMzgs
NiArMTIzOCw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUoUmVuZGVy
U3R5bGUmIHN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgcGFyCiAgICAgICAgIHx8IHN0eWxlLmJv
eFJlZmxlY3QoKQogICAgICAgICB8fCBzdHlsZS5oYXNGaWx0ZXIoKQogICAgICAgICB8fCBzdHls
ZS5oYXNCbGVuZE1vZGUoKQorICAgICAgICB8fCBzdHlsZS5oYXNJc29sYXRpb24oKQogICAgICAg
ICB8fCBzdHlsZS5wb3NpdGlvbigpID09IFN0aWNreVBvc2l0aW9uCiAgICAgICAgIHx8IChzdHls
ZS5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gJiYgZSAmJiBlLT5kb2N1bWVudCgpLnBhZ2Uo
KSAmJiBlLT5kb2N1bWVudCgpLnBhZ2UoKS0+c2V0dGluZ3MoKS5maXhlZFBvc2l0aW9uQ3JlYXRl
c1N0YWNraW5nQ29udGV4dCgpKQogICAgICAgICB8fCBzdHlsZS5oYXNGbG93RnJvbSgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCAxMzNh
YjQ5MGVkZTI0OTZmYjkzYjgyZTBlMTdlOGE4ZDY2OGVmOTFmLi5iYTgyOWY2YjUyNGRmNmMxNzJl
NDliZTkzMTFkYmM4YjlmNWMzOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTY3OSw2ICs2NzksOSBAQCBib29sIFJlbmRlclN0eWxl
OjpjaGFuZ2VSZXF1aXJlc0xheWVyUmVwYWludChjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIsIHVu
c2lnbmVkJgogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgaWYgKHJhcmVOb25Jbmhl
cml0ZWREYXRhLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24gIT0gb3RoZXItPnJhcmVOb25J
bmhlcml0ZWREYXRhLT5tX2lzb2xhdGlvbikKKyAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYK
IAogICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+b3BhY2l0eSAhPSBvdGhlci0+cmFyZU5v
bkluaGVyaXRlZERhdGEtPm9wYWNpdHkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggNzdhN2FkZTg1ODBjMzA1OTNkZWMzMGYxMmViYTdlM2Jh
NmFlMjBjNi4uZGEzZTMxMzVhNjEzOGZlOTQzNDU4OThkYmUxZmE0ODBmYWJmMTBkOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTk2NywxMSAr
OTY3LDE4IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgQmxl
bmRNb2RlIGJsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEJsZW5kTW9kZT4o
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKTsgfQotICAgIHZvaWQg
c2V0QmxlbmRNb2RlKEJsZW5kTW9kZSB2KSB7IHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2Vzcygp
LT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSA9IHY7IH0KKyAgICB2b2lkIHNldEJsZW5kTW9kZShCbGVu
ZE1vZGUgdikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX2VmZmVjdGl2ZUJsZW5k
TW9kZSwgdik7IH0KICAgICBib29sIGhhc0JsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRp
Y19jYXN0PEJsZW5kTW9kZT4ocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRN
b2RlKSAhPSBCbGVuZE1vZGVOb3JtYWw7IH0KKworICAgIElzb2xhdGlvbiBpc29sYXRpb24oKSBj
b25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxJc29sYXRpb24+KHJhcmVOb25Jbmhlcml0ZWREYXRh
LT5tX2lzb2xhdGlvbik7IH0KKyAgICB2b2lkIHNldElzb2xhdGlvbihJc29sYXRpb24gdikgeyBT
RVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX2lzb2xhdGlvbiwgdik7IH0KKyAgICBib29s
IGhhc0lzb2xhdGlvbigpIGNvbnN0IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2lz
b2xhdGlvbiAhPSBJc29sYXRpb25BdXRvOyB9CiAjZWxzZQogICAgIEJsZW5kTW9kZSBibGVuZE1v
ZGUoKSBjb25zdCB7IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7IH0KICAgICBib29sIGhhc0JsZW5k
TW9kZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisKKyAgICBJc29sYXRpb24gaXNvbGF0aW9u
KCkgY29uc3QgeyByZXR1cm4gSXNvbGF0aW9uQXV0bzsgfQorICAgIGJvb2wgaGFzSXNvbGF0aW9u
KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNlbmRpZgogIAogI2lmIFVTRShSVExfU0NST0xM
QkFSKQpAQCAtMTgxNyw2ICsxODI0LDcgQEAgcHVibGljOgogI2VuZGlmCiAjaWYgRU5BQkxFKENT
U19DT01QT1NJVElORykKICAgICBzdGF0aWMgQmxlbmRNb2RlIGluaXRpYWxCbGVuZE1vZGUoKSB7
IHJldHVybiBCbGVuZE1vZGVOb3JtYWw7IH0KKyAgICBzdGF0aWMgSXNvbGF0aW9uIGluaXRpYWxJ
c29sYXRpb24oKSB7IHJldHVybiBJc29sYXRpb25BdXRvOyB9CiAjZW5kaWYKIAogcHJpdmF0ZToK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNv
bnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29u
c3RhbnRzLmgKaW5kZXggNzA0YWRlMDZhMzA1YThmODBiOWVmNjg4YjBiODM3YTFjY2Y0YWIzZS4u
MGM2NGRkYjVjZDk4NjQwNWNmYjFjNGNkZjY0YmU5YWVlYzBkYTQ5MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAg
LTU1MCw2ICs1NTAsOCBAQCBlbnVtIFRleHRJbmRlbnRMaW5lIHsgVGV4dEluZGVudEZpcnN0TGlu
ZSwgVGV4dEluZGVudEVhY2hMaW5lIH07CiBlbnVtIFRleHRJbmRlbnRUeXBlIHsgVGV4dEluZGVu
dE5vcm1hbCwgVGV4dEluZGVudEhhbmdpbmcgfTsKICNlbmRpZgogCitlbnVtIElzb2xhdGlvbiB7
IElzb2xhdGlvbkF1dG8sIElzb2xhdGlvbklzb2xhdGUgfTsKKwogLy8gRmlsbCwgU3Ryb2tlLCBW
aWV3Qm94IGFyZSBqdXN0IHVzZWQgZm9yIFNWRy4KIGVudW0gTGF5b3V0Qm94IHsgQm94TWlzc2lu
ZyA9IDAsIE1hcmdpbkJveCwgQm9yZGVyQm94LCBQYWRkaW5nQm94LCBDb250ZW50Qm94LCBGaWxs
LCBTdHJva2UsIFZpZXdCb3ggfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCmluZGV4IDhiZWMx
NjI5NTZhODJmNWY1YmY0MTI0OTE0MzUwYzBkZGJjMDc2NDMuLjYyYzFjOTRhMGQ3ZmY0NmI0Mzcw
NDg5ZTdlMTIwYTYxNDFhNjhhNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTkyLDYg
KzkyLDcgQEAgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVk
RGF0YSgpCiAgICAgLCBtX2FzcGVjdFJhdGlvVHlwZShSZW5kZXJTdHlsZTo6aW5pdGlhbEFzcGVj
dFJhdGlvVHlwZSgpKQogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgLCBtX2VmZmVj
dGl2ZUJsZW5kTW9kZShSZW5kZXJTdHlsZTo6aW5pdGlhbEJsZW5kTW9kZSgpKQorICAgICwgbV9p
c29sYXRpb24oUmVuZGVyU3R5bGU6OmluaXRpYWxJc29sYXRpb24oKSkKICNlbmRpZgogICAgICwg
bV9vYmplY3RGaXQoUmVuZGVyU3R5bGU6OmluaXRpYWxPYmplY3RGaXQoKSkKIHsKQEAgLTE3Miw2
ICsxNzMsNyBAQCBpbmxpbmUgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9u
SW5oZXJpdGVkRGF0YShjb25zdCBTdHlsZVJhcmVOb25JbgogICAgICwgbV9hc3BlY3RSYXRpb1R5
cGUoby5tX2FzcGVjdFJhdGlvVHlwZSkKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAg
ICwgbV9lZmZlY3RpdmVCbGVuZE1vZGUoby5tX2VmZmVjdGl2ZUJsZW5kTW9kZSkKKyAgICAsIG1f
aXNvbGF0aW9uKG8ubV9pc29sYXRpb24pCiAjZW5kaWYKICAgICAsIG1fb2JqZWN0Rml0KG8ubV9v
YmplY3RGaXQpCiB7CkBAIC0yNjIsNiArMjY0LDcgQEAgYm9vbCBTdHlsZVJhcmVOb25Jbmhlcml0
ZWREYXRhOjpvcGVyYXRvcj09KGNvbnN0IFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEmIG8pIGMK
ICAgICAgICAgJiYgIW1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uICYmICFvLm1fcnVubmlu
Z0FjY2VsZXJhdGVkQW5pbWF0aW9uCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICAg
ICAgJiYgbV9lZmZlY3RpdmVCbGVuZE1vZGUgPT0gby5tX2VmZmVjdGl2ZUJsZW5kTW9kZQorICAg
ICAgICAmJiBtX2lzb2xhdGlvbiA9PSBvLm1faXNvbGF0aW9uCiAjZW5kaWYKICAgICAgICAgJiYg
bV9hc3BlY3RSYXRpb1R5cGUgPT0gby5tX2FzcGVjdFJhdGlvVHlwZQogICAgICAgICAmJiBtX29i
amVjdEZpdCA9PSBvLm1fb2JqZWN0Rml0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmgKaW5kZXggYzNiYTUy
NjE1ZjhmZTUzNjU5MmVkYTlmYmZlZmJiNWUwN2U4YmQ2Zi4uOTI5YjNhMTY4OTcwNGRkOGZmNjg1
YzdlN2U4ODU5ZGRhYjNkY2VjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oCkBAIC0xOTQsNiArMTk0
LDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICB1bnNpZ25l
ZCBtX2VmZmVjdGl2ZUJsZW5kTW9kZTogNTsgLy8gRUJsZW5kTW9kZQorICAgIHVuc2lnbmVkIG1f
aXNvbGF0aW9uIDogMTsgLy8gSXNvbGF0aW9uCiAjZW5kaWYKIAogICAgIHVuc2lnbmVkIG1fb2Jq
ZWN0Rml0IDogMzsgLy8gT2JqZWN0Rml0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3ZnL1NWR1JlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N2Zy9TVkdSZW5kZXJpbmdDb250ZXh0LmNwcAppbmRleCBlZGI0OWE3YTBmZjA5ZjhmOGJj
M2JjNmIzODQ5MzJiNWFjNzM3MWQ5Li41NTAzYTdkMWEyNGEwYmFlZWY2YzhjNzUzMGExOTE5MzQw
MjkwYmRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1JlbmRl
cmluZ0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVu
ZGVyaW5nQ29udGV4dC5jcHAKQEAgLTEwNCw2ICsxMDQsNyBAQCB2b2lkIFNWR1JlbmRlcmluZ0Nv
bnRleHQ6OnByZXBhcmVUb1JlbmRlclNWR0NvbnRlbnQoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIs
IFBhaQogICAgIGZsb2F0IG9wYWNpdHkgPSBpc1JlbmRlcmluZ01hc2sgPyAxIDogc3R5bGUub3Bh
Y2l0eSgpOwogICAgIGNvbnN0IFNoYWRvd0RhdGEqIHNoYWRvdyA9IHN2Z1N0eWxlLnNoYWRvdygp
OwogICAgIGJvb2wgaGFzQmxlbmRNb2RlID0gc3R5bGUuaGFzQmxlbmRNb2RlKCk7CisgICAgYm9v
bCBoYXNJc29sYXRpb24gPSBzdHlsZS5oYXNJc29sYXRpb24oKTsKICAgICBib29sIGlzb2xhdGVN
YXNrRm9yQmxlbmRpbmcgPSBmYWxzZTsKIAogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCkBA
IC0xMTMsMTEgKzExNCwxMSBAQCB2b2lkIFNWR1JlbmRlcmluZ0NvbnRleHQ6OnByZXBhcmVUb1Jl
bmRlclNWR0NvbnRlbnQoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIsIFBhaQogICAgIH0KICNlbmRp
ZgogCi0gICAgaWYgKG9wYWNpdHkgPCAxIHx8IHNoYWRvdyB8fCBoYXNCbGVuZE1vZGUgfHwgaXNv
bGF0ZU1hc2tGb3JCbGVuZGluZykgeworICAgIGlmIChvcGFjaXR5IDwgMSB8fCBzaGFkb3cgfHwg
aGFzQmxlbmRNb2RlIHx8IGlzb2xhdGVNYXNrRm9yQmxlbmRpbmcgfHwgaGFzSXNvbGF0aW9uKSB7
CiAgICAgICAgIEZsb2F0UmVjdCByZXBhaW50UmVjdCA9IG1fcmVuZGVyZXItPnJlcGFpbnRSZWN0
SW5Mb2NhbENvb3JkaW5hdGVzKCk7CiAgICAgICAgIG1fcGFpbnRJbmZvLT5jb250ZXh0LT5jbGlw
KHJlcGFpbnRSZWN0KTsKIAotICAgICAgICBpZiAob3BhY2l0eSA8IDEgfHwgaGFzQmxlbmRNb2Rl
IHx8IGlzb2xhdGVNYXNrRm9yQmxlbmRpbmcpIHsKKyAgICAgICAgaWYgKG9wYWNpdHkgPCAxIHx8
IGhhc0JsZW5kTW9kZSB8fCBpc29sYXRlTWFza0ZvckJsZW5kaW5nIHx8IGhhc0lzb2xhdGlvbikg
ewogCiAgICAgICAgICAgICBpZiAoaGFzQmxlbmRNb2RlKQogICAgICAgICAgICAgICAgIG1fcGFp
bnRJbmZvLT5jb250ZXh0LT5zZXRDb21wb3NpdGVPcGVyYXRpb24obV9wYWludEluZm8tPmNvbnRl
eHQtPmNvbXBvc2l0ZU9wZXJhdGlvbigpLCBzdHlsZS5ibGVuZE1vZGUoKSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNDgx
NzA5OTYyMTEyOGUzNGY0MjQzZjQzYzQ5YTBhNWMyZmQ4OTYxYy4uNzVlM2IwM2YzMzc1MmVkYTgw
NDgyNDM4YTExOTcwMmNjZTIzNjJkOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE0LTAyLTI0
ICBNaWhhaSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KIAorICAgICAgICBbQ1NTIEJsZW5kaW5n
XSBQYXJzZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHku
CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1
OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Qg
cGFyc2luZyBvZiAtd2Via2l0LWlzb2xhdGlvbi4gVGVzdCBpZiBzZXR0aW5nIC13ZWJraXQtaXNv
bGF0aW9uOiBpc29sYXRlIGNyZWF0cyBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgIFRlc3Qg
Zm9yIFNWRyBhbmQgSFRNTCB0aGF0IGJsZW5kaW5nIGlzIHJlc3RyaWN0ZWQgdG8gdGhlIGNvbnRl
bnRzIG9mIGFuIGlzb2xhdGVkIHBhcmVudCBlbGVtZW50LgorCisgICAgICAgICogY3NzMy9jb21w
b3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxkLWV4cGVjdGVkLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtYmxlbmRl
ZC1jaGlsZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlv
bi1pc29sYXRlLXNpbXBsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29t
cG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGNzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1kZWZhdWx0LWV4cGVjdGVkLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1kZWZhdWx0
Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1p
c29sYXRlZC1ncm91cC1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBv
c2l0aW5nL3N2Zy1pc29sYXRpb24taXNvbGF0ZWQtZ3JvdXAuaHRtbDogQWRkZWQuCisgICAgICAg
ICogY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLXNpbXBsZS1leHBlY3RlZC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tc2ltcGxlLmh0
bWw6IEFkZGVkLgorCisyMDE0LTAyLTI0ICBNaWhhaSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4K
KwogICAgICAgICBbQ1NTIEJsZW5kaW5nXSBBbiBlbGVtZW50IGhhdmluZyAtd2Via2l0LW1peC1i
bGVuZC1tb2RlIHNob3VsZCBvbmx5IGJsZW5kIHdpdGggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYXJl
bnQgc3RhY2tpbmcgY29udGV4dAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTI5MTU0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9z
aXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtYmxlbmRlZC1jaGlsZC1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxk
LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzkzMTZlYWUzZDg0YjU2YzJmZDQ4NTM0MmY0ZThl
Y2I0Zjg0MThiNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRp
bmcvaXNvbGF0aW9uLWlzb2xhdGUtYmxlbmRlZC1jaGlsZC1leHBlY3RlZC5odG1sCkBAIC0wLDAg
KzEsMjkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxlPgorICAgIGRpdiB7CisgICAgICAgIG1h
cmdpbjogMjBweDsKKyAgICAgICAgd2lkdGg6IDEzMHB4OworICAgICAgICBoZWlnaHQ6IDEzMHB4
OworICAgIH0KKworICAgIC5wYXJlbnQgeworICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoNTUsIDU1
LCA1NSk7CisgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKKyAgICAgICAgd2lkdGg6IDMwMHB4Owor
ICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgIH0KKworICAgIC5pc29sYXRvciB7CisgICAgICAg
IHBvc2l0aW9uOiBmaXhlZDsKKyAgICAgICAgei1pbmRleDogMDsKKyAgICAgICAgYmFja2dyb3Vu
ZDogdmlvbGV0OworICAgIH0KKworICAgIC5jaGlsZCB7CisgICAgICAgIG1hcmdpbi10b3A6IDBw
eDsKKyAgICAgICAgLXdlYmtpdC1taXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7CisgICAgICAgIGJh
Y2tncm91bmQ6IG9saXZlOworICAgIH0KKworPC9zdHlsZT4KKzxkaXYgY2xhc3M9InBhcmVudCI+
PGRpdiBjbGFzcz0iaXNvbGF0b3IiPjxkaXYgY2xhc3M9ImNoaWxkIj48L2Rpdj48L2Rpdj48L2Rp
dj4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlz
b2xhdGUtYmxlbmRlZC1jaGlsZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9p
c29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjY4YWUxY2Y5
NjIwZGViZDBhNDRkOTlmMmY0NTNmYTkyYjM2OTMyMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtYmxlbmRlZC1jaGlsZC5o
dG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQRSBIVE1MPgorPCEtLSBUZXN0IHRvIGVuc3Vy
ZSB0aGF0ICItd2Via2l0LWlzb2xhdGlvbjppc29sYXRlIiBjcmVhdGVzIGEgc3RhY2tpbmcgY29u
dGV4dCwgdGh1cyBwcmV2ZW50aW5nIGJsZW5kaW5nIHdpdGggdGhlIHBhcmVudCBlbGVtZW50LiAt
LT4KKzxzdHlsZT4KKyAgICBkaXYgeworICAgICAgICBtYXJnaW46IDIwcHg7CisgICAgICAgIHdp
ZHRoOiAxMzBweDsKKyAgICAgICAgaGVpZ2h0OiAxMzBweDsKKyAgICB9CisKKyAgICAucGFyZW50
IHsKKyAgICAgICAgYmFja2dyb3VuZDogcmdiKDU1LCA1NSwgNTUpOworICAgICAgICBwb3NpdGlv
bjogZml4ZWQ7CisgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgaGVpZ2h0OiAzMDBweDsK
KyAgICB9CisKKyAgICAuaXNvbGF0b3IgeworICAgICAgICAtd2Via2l0LWlzb2xhdGlvbjogaXNv
bGF0ZTsKKyAgICAgICAgYmFja2dyb3VuZDogdmlvbGV0OworICAgIH0KKworICAgIC5jaGlsZCB7
CisgICAgICAgIC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5OworICAgICAgICBiYWNr
Z3JvdW5kOiBvbGl2ZTsKKyAgICB9CisKKzwvc3R5bGU+Cis8ZGl2IGNsYXNzPSJwYXJlbnQiPjxk
aXYgY2xhc3M9Imlzb2xhdG9yIj48ZGl2IGNsYXNzPSJjaGlsZCI+PC9kaXY+PC9kaXY+PC9kaXY+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29s
YXRlLXNpbXBsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lz
b2xhdGlvbi1pc29sYXRlLXNpbXBsZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjg5Y2ZkODM1
M2Y2YTQyNDU0Nzc3NTY1NzA1ZDk3NzJkN2I3MGM1MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDYgQEAKK1BBU1MgMCBpcyAwCitQQVNTIDAgaXMgMAorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMDk5NWVjNDhhOTY3MDM5MjA5ZmVmOWIwMzcwNjkyYzVjNjk2ZmQ1
NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0
aW9uLXBhcnNpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorUEFTUyBzZXRQcm9wZXJ0
eSgiYXV0byIpIGlzICJhdXRvIgorUEFTUyBzZXRQcm9wZXJ0eSgiaXNvbGF0ZSIpIGlzICJpc29s
YXRlIgorUEFTUyBzZXRQcm9wZXJ0eSgiIikgaXMgImF1dG8iCitQQVNTIHNldFByb3BlcnR5KCJy
dWJiaXNoIikgaXMgImF1dG8iCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9p
c29sYXRpb24tcGFyc2luZy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29s
YXRpb24tcGFyc2luZy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1MjlkZWE1ZTlkMDYwMjRkZGJmZGFmOTdm
ZDk1M2FmZGJiNjIwZGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBv
c2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWwKQEAgLTAsMCArMSwyNyBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxib2R5PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgZnVuY3Rpb24gc2V0
UHJvcGVydHkodmFsdWUpIHsKKyAgICAgICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCdkaXYnKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGl2
KTsKKyAgICAgICAgICAgIGRpdi5zdHlsZS5zZXRQcm9wZXJ0eSgiLXdlYmtpdC1pc29sYXRpb24i
LCB2YWx1ZSk7CisKKyAgICAgICAgICAgIHZhciBjb21wdXRlZFZhbHVlID0gZ2V0Q29tcHV0ZWRT
dHlsZShkaXYpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtaXNvbGF0aW9uIik7CisgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRpdik7CisKKyAgICAgICAgICAgIHJldHVy
biBjb21wdXRlZFZhbHVlOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gdGVzdCh2YWx1
ZSwgZXhwZWN0ZWQpIHsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygnc2V0UHJv
cGVydHkoIicgKyB2YWx1ZSArICciKScsIGV4cGVjdGVkKTsKKyAgICAgICAgfQorCisgICAgICAg
IHRlc3QoImF1dG8iLCAiYXV0byIpOworICAgICAgICB0ZXN0KCJpc29sYXRlIiwgImlzb2xhdGUi
KTsKKyAgICAgICAgdGVzdCgiIiwgImF1dG8iKTsKKyAgICAgICAgdGVzdCgicnViYmlzaCIsICJh
dXRvIik7CisgICAgPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC1leHBlY3RlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWRlZmF1bHQt
ZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NWQxNWZmZDgzNDU3YzkzZGFlNmFjOTJhYzg2YmIy
OWFjNDBjNWVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGlu
Zy9zdmctaXNvbGF0aW9uLWRlZmF1bHQtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDQgQEAKKzwh
RE9DVFlQRSBIVE1MPgorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdp
ZHRoPSI0MDBweCIgaGVpZ2h0PSI0MDBweCIgc3R5bGU9ImJhY2tncm91bmQ6IGdyZWVuIj4KKyAg
ICA8cmVjdCB4PSIxMDAiIHk9IjEwMCIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIHN0eWxlPSJm
aWxsOiBibHVlOyAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBtdWx0aXBseSIvPgorPC9zdmc+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVm
YXVsdC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWRl
ZmF1bHQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYjZiZjUxNzEwYjBlOGU2NTVhZjFkNTBiZmVkMDIwMWMx
Y2EzOGZkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9z
dmctaXNvbGF0aW9uLWRlZmF1bHQuaHRtbApAQCAtMCwwICsxLDcgQEAKKzwhRE9DVFlQRSBIVE1M
PgorPCEtLSBUZXN0IHRoZSBkZWZhdWx0IGJlaGF2aW91ciBvZiBpc29sYXRpb24gd2l0aCB0d28g
c2ltcGxlIGVsZW1lbnRzLiBUaGUgdGVzdCBwYXNzZXMgaWYgdGhlIHNtYWxsIHNxdWFyZSBpcyBk
cmF3biB3aXRoIGJsYWNrIChibGVuZGluZyBpcyBwZXJmb3JtZWQgc2luY2UgdGhlIGVsZW1lbnQg
aXMgbm90IGlzb2xhdGVkKS4gLS0+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAw
L3N2ZyIgd2lkdGg9IjQwMHB4IiBoZWlnaHQ9IjQwMHB4IiBzdHlsZT0iYmFja2dyb3VuZDogZ3Jl
ZW4iPgorICAgIDxnIHN0eWxlPSItd2Via2l0LWlzb2xhdGlvbjogYXV0byI+CisgICAgICAgIDxy
ZWN0IHg9IjEwMCIgeT0iMTAwIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgc3R5bGU9ImZpbGw6
IGJsdWU7IC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5Ii8+CisgICAgPC9nPgorPC9z
dmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRp
b24taXNvbGF0ZWQtZ3JvdXAtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9z
aXRpbmcvc3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC1leHBlY3RlZC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjA1MDI0YTgyOTRhYjZiZTZjNWNkMzY4NzhiODM3ZjRlZWQwMTk2MzkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24taXNvbGF0
ZWQtZ3JvdXAtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDggQEAKKzwhRE9DVFlQRSBIVE1MPgor
PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgd2lk
dGg9IjQwMHB4IiBoZWlnaHQ9IjQwMHB4IiBzdHlsZT0iYmFja2dyb3VuZDogZ3JlZW4iPgorICAg
IDxnPgorICAgICAgICA8cmVjdCB4PSI1MCIgeT0iNTAiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAw
IiBzdHlsZT0iZmlsbDogb3JhbmdlOyIvPgorICAgICAgICA8cmVjdCB4PSIxMDAiIHk9IjEwMCIg
d2lkdGg9IjI1MCIgaGVpZ2h0PSIyNTAiIHN0eWxlPSJmaWxsOiBibHVlOyIvPgorICAgICAgICA8
cmVjdCB4PSIxMDAiIHk9IjEwMCIgd2lkdGg9IjE1MCIgaGVpZ2h0PSIxNTAiIHN0eWxlPSJmaWxs
OiBvcmFuZ2U7IC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7Ii8+CisgICAgPC9n
PgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1p
c29sYXRpb24taXNvbGF0ZWQtZ3JvdXAuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRp
bmcvc3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZlOGY3ZTJh
YWQ4NzZhNjEyZjYxNTk3MDM0Y2RkZWYxMmY2NWQxZTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24taXNvbGF0ZWQtZ3JvdXAuaHRt
bApAQCAtMCwwICsxLDkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPCEtLSBUZXN0IGJlaGF2aW91ciBv
ZiBpc29sYXRpb24gZm9yIG92ZXJsYXBwaW5nIGVsZW1lbnRzIHdpdGhpbiBncm91cHMuIFRoZSB0
ZXN0IHBhc3NlcyBpZiB0aGVyZSBhcmUgbm8gcmVjdHMgZHJhd24gd2l0aCByZWQuCitUaGlzIGlt
cGxpZXMgdGhhdCB0aGUgaXNvbGF0aW9uIGlzIHBlcmZvcm1lZCBhY2NvcmRpbmdseSwgbWVhbmlu
ZyB0aGUgb3JhbmdlIHJlY3QgZG9lc24ndCBibGVuZCB3aXRoIHRoZSBiYWNrZ3JvdW5kIGNvbG9y
LiAtLT4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNDAw
cHgiIGhlaWdodD0iNDAwcHgiIHN0eWxlPSJiYWNrZ3JvdW5kOiBncmVlbiI+CisgICAgPGcgc3R5
bGU9Ii13ZWJraXQtaXNvbGF0aW9uOiBpc29sYXRlOyI+CisgICAgICAgIDxyZWN0IHg9IjEwMCIg
eT0iMTAwIiB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgc3R5bGU9ImZpbGw6IGJsdWU7Ii8+Cisg
ICAgICAgIDxyZWN0IHg9IjUwIiB5PSI1MCIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIHN0eWxl
PSJmaWxsOiBvcmFuZ2U7IC13ZWJraXQtbWl4LWJsZW5kLW1vZGU6IGRpZmZlcmVuY2U7Ii8+Cisg
ICAgPC9nPgorPC9zdmc+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5n
L3N2Zy1pc29sYXRpb24tc2ltcGxlLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tc2ltcGxlLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTg5N2M5M2RhODkxNWIzOWU1MjEyMGRkNmRmMTA5YmY5NjM5OGZiOQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1zaW1wbGUtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN2ZyB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MDBweCIgaGVpZ2h0PSI0MDBweCIg
c3R5bGU9ImJhY2tncm91bmQ6IGdyZWVuIj4KKyAgICA8Zz4KKyAgICAgICAgPHJlY3QgeD0iMTAw
IiB5PSIxMDAiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiBzdHlsZT0iZmlsbDogYmx1ZTsiLz4K
KyAgICA8L2c+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRp
bmcvc3ZnLWlzb2xhdGlvbi1zaW1wbGUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRp
bmcvc3ZnLWlzb2xhdGlvbi1zaW1wbGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZTE0ODY3NGQ1NGJlOWIz
MTczY2VjMWJmZTM4NjRlM2U0MjI5OWM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLXNpbXBsZS5odG1sCkBAIC0wLDAgKzEsNyBA
QAorPCFET0NUWVBFIEhUTUw+Cis8IS0tIFRlc3QgaXNvbGF0aW9uIHdpdGggdHdvIHNpbXBsZSBl
bGVtZW50cy4gVGhlIHRlc3QgcGFzc2VzIGlmIHRoZSBzbWFsbCBzcXVhcmUgaXMgZHJhd24gd2l0
aCBibHVlIChubyBibGVuZGluZyBpcyBwZXJmb3JtZWQgc2luY2UgdGhlIGVsZW1lbnQgaXMgaXNv
bGF0ZWQpLiAtLT4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0
aD0iNDAwcHgiIGhlaWdodD0iNDAwcHgiIHN0eWxlPSJiYWNrZ3JvdW5kOiBncmVlbiI+CisgICAg
PGcgc3R5bGU9Ii13ZWJraXQtaXNvbGF0aW9uOiBpc29sYXRlIj4KKyAgICAgICAgPHJlY3QgeD0i
MTAwIiB5PSIxMDAiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiBzdHlsZT0iZmlsbDogYmx1ZTsg
LXdlYmtpdC1taXgtYmxlbmQtbW9kZTogbXVsdGlwbHkiLz4KKyAgICA8L2c+Cis8L3N2Zz4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225068</attachid>
            <date>2014-02-24 08:24:43 -0800</date>
            <delta_ts>2014-02-27 05:09:55 -0800</delta_ts>
            <desc>Patch V4. Addressed Dirk&apos;s comments</desc>
            <filename>bug-128958-20140224182519.patch</filename>
            <type>text/plain</type>
            <size>26420</size>
            <attacher name="Mihai Tica">mitica</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0NTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjUyMGE3MWViNDI5YTZj
NGFmYWI1NDdhZDlhZDAxZGY2Y2U5NTU1MC4uODcwZDgyYmYwMjgwNzU2N2MwNGM3Mzg3YTU5ZjJj
NGNmMTJhODNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE0LTAyLTI0ICBNaWhh
aSBUaWNhICA8bWl0aWNhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIEJsZW5kaW5nXSBQYXJz
ZSBhbmQgaW1wbGVtZW50IHRoZSAtd2Via2l0LWlzb2xhdGlvbiBDU1MgcHJvcGVydHkuCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODk1OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhcnNlIGFuZCBp
bXBsZW1lbnQgLXdlYmtpdC1pc29sYXRpb24sIHBhcnQgb2YgdGhlIENTUyBCbGVuZGluZyBhbmQg
Q29tcG9zaXRpbmcgc3BlYy4KKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGZ1bmN0aW9uYWxpdHkg
Zm9yIEhUTUwgYW5kIFNWRy4KKyAgICAgICAgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGUgcmVz
dHJpY3RzIGFueSBjaGlsZCBlbGVtZW50cyBmcm9tIGJsZW5kaW5nIHdpdGggYW55IG9mIHRoZSBj
b250ZW50IG91dHNpZGUgdGhlIGlzb2xhdGVkIHBhcmVudCBlbGVtZW50LgorCisgICAgICAgIFRl
c3RzOiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLWJsZW5kZWQtY2hpbGQuaHRt
bAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy5odG1s
CisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC5o
dG1sCisgICAgICAgICAgICAgICBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24taXNvbGF0
ZWQtZ3JvdXAuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0
aW9uLXNpbXBsZS5odG1sCisKKyAgICAgICAgKiBjc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3Bl
cnR5VmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6Omlz
S2V5d29yZFByb3BlcnR5SUQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBJc29sYXRpb24pOgorICAg
ICAgICAqIGNzcy9DU1NQcm9wZXJ0eU5hbWVzLmluOiBBZGQgLXdlYmtpdC1pc29sYXRpb24uCisg
ICAgICAgICogY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46IEFkZCB0aGUgaXNvbGF0ZSB2YWx1ZS4K
KyAgICAgICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJl
c29sdmVyOjphZGp1c3RSZW5kZXJTdHlsZSk6IEV4cGxpY2l0bHkgc2V0IGlzb2xhdGlvbjppc29s
YXRlIHRvIGNyZWF0ZSBhIHN0YWNraW5nIGNvbnRleHQuCisgICAgICAgICogcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpjaGFu
Z2VSZXF1aXJlc0xheWVyUmVwYWludCk6IENoYW5naW5nIGlzb2xhdGlvbiBzaG91bGQgdHJpZ2dl
ciBhIHJlcGFpbnQuCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6IFNl
dHRlcnMgYW5kIGdldHRlcnMgZm9yIGlzb2xhdGlvbi4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogQWRkIElzb2xhdGlvbiBlbnVtLgorICAgICAgICAq
IHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcDogQWRkIG1faXNv
bGF0aW9uLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJhcmVOb25J
bmhlcml0ZWREYXRhOjpvcGVyYXRvcj09KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvU1ZHUmVu
ZGVyaW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdSZW5kZXJpbmdDb250ZXh0
OjpwcmVwYXJlVG9SZW5kZXJTVkdDb250ZW50KTogSWYgaXNvbGF0ZWQsIHBhaW50IGluIGEgdHJh
bnNwYXJlbmN5IGxheWVyLgorCiAyMDE0LTAyLTI0ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBh
cHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHJlZHVuZGFudCBzZXR0aW5nIGluIEZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0
ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0
eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDEyMzMxZDRmZjkxNTcwNGY1NmQ5YjE0ZTkxMmY0Mzk1
NGU4ZmNiYzcuLjMyNWNkNTg4ODZjZTVhZWZkMzA5MDRiOTA3MGY2OWE1NzNiMTZlN2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CkBAIC0yMjgsNiArMjI4LDcgQEAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQ
cm9wZXJ0aWVzW10gPSB7CiAgICAgQ1NTUHJvcGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwKICNp
ZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgIENTU1Byb3BlcnR5V2Via2l0TWl4QmxlbmRN
b2RlLAorICAgIENTU1Byb3BlcnR5V2Via2l0SXNvbGF0aW9uLAogI2VuZGlmCiAgICAgQ1NTUHJv
cGVydHlXZWJraXRCb3JkZXJGaXQsCiAgICAgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJIb3Jpem9u
dGFsU3BhY2luZywKQEAgLTI4NDIsNiArMjg0Myw4IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENv
bXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0
CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdE1peEJsZW5kTW9kZToKICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVh
dGVWYWx1ZShzdHlsZS0+YmxlbmRNb2RlKCkpOworICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0SXNvbGF0aW9uOgorICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZh
bHVlKHN0eWxlLT5pc29sYXRpb24oKSk7CiAjZW5kaWYKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eUJhY2tncm91bmRCbGVuZE1vZGU6IHsKICAgICAgICAgICAgIGNvbnN0IEZpbGxMYXllciogbGF5
ZXJzID0gc3R5bGUtPmJhY2tncm91bmRMYXllcnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAK
aW5kZXggMGRmOGY5OWU1YzhkNTgwMjU0NzNmOWU0MzU5MjExN2JkYWY0MmYzZS4uZDk3M2Y3ZDNh
ZjQwNmM1Mzk5MjQ2OTllMmUzYTU5ZGY5NzBmMDI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKQEAgLTgxMCw2ICs4MTAsMTAgQEAgc3RhdGljIGlubGluZSBib29sIGlzVmFsaWRLZXl3b3Jk
UHJvcGVydHlBbmRWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQsIGludAogICAgICAgICAg
ICAgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUx1bWlub3NpdHkpKQogICAgICAgICAgICAgcmV0dXJu
IHRydWU7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRp
b246CisgICAgICAgIGlmIChwYXJzZXJDb250ZXh0LmlzQ1NTQ29tcG9zaXRpbmdFbmFibGVkICYm
ICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0byB8fCB2YWx1ZUlEID09IENTU1ZhbHVlSXNvbGF0ZSkp
CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBj
YXNlIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyRml0OgogICAgICAgICBpZiAodmFsdWVJRCA9PSBD
U1NWYWx1ZUJvcmRlciB8fCB2YWx1ZUlEID09IENTU1ZhbHVlTGluZXMpCkBAIC0xMDc5LDYgKzEw
ODMsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNLZXl3b3JkUHJvcGVydHlJRChDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5SWQpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEFwcGVhcmFuY2U6CiAj
aWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0TWl4
QmxlbmRNb2RlOgorICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRJc29sYXRpb246CiAjZW5kaWYK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0QmFja2ZhY2VWaXNpYmlsaXR5OgogICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlclN0eWxlOgpAQCAtMjQxNSw2ICsyNDIwLDEwIEBA
IGJvb2wgQ1NTUGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcElkLCBib29sIGlt
cG9ydGFudCkKICAgICAgICAgaWYgKGNzc0NvbXBvc2l0aW5nRW5hYmxlZCgpKQogICAgICAgICAg
ICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwogICAgICAgICBicmVhazsKKyAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0SXNvbGF0aW9uOgorICAgICAgICBpZiAoY3NzQ29tcG9zaXRpbmdFbmFibGVk
KCkpCisgICAgICAgICAgICB2YWxpZFByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgIGJyZWFrOwog
I2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZsZXg6IHsKICAgICAgICAgU2hvcnRo
YW5kU2NvcGUgc2NvcGUodGhpcywgcHJvcElkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCmluZGV4IDgzNjcxYjQ2YzI4N2FiN2ZiYzg4ZTc4NGFl
OTljMTI4NzBhN2ZmZWEuLjAwMDYxNmYyODdhZDA3YTliNzdiZTM4Yzk3NjNhZDU2YTA4ZjhmMzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApA
QCAtNDE1NSw2ICs0MTU1LDM4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpvcGVyYXRvciBCbGVuZE1vZGUoKSBjb25zdAogICAgIHJldHVybiBCbGVuZE1vZGVOb3JtYWw7
CiB9CiAKK3RlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShJc29sYXRpb24gaXNvbGF0aW9uKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3Mp
Cit7CisgICAgbV9wcmltaXRpdmVVbml0VHlwZSA9IENTU19WQUxVRV9JRDsKKyAgICBzd2l0Y2gg
KGlzb2xhdGlvbikgeworICAgIGNhc2UgSXNvbGF0aW9uQXV0bzoKKyAgICAgICAgbV92YWx1ZS52
YWx1ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAgICBicmVhazsKKyAgICBjYXNlIElzb2xhdGlv
bklzb2xhdGU6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSXNvbGF0ZTsKKyAg
ICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgfQorfQorCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgSXNvbGF0aW9uKCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaXNWYWx1ZUlEKCkpOworICAgIHN3
aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7CisgICAgY2FzZSBDU1NWYWx1ZUF1dG86CisgICAgICAg
IHJldHVybiBJc29sYXRpb25BdXRvOworICAgIGNhc2UgQ1NTVmFsdWVJc29sYXRlOgorICAgICAg
ICByZXR1cm4gSXNvbGF0aW9uSXNvbGF0ZTsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVhazsK
KyAgICB9CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gSXNvbGF0aW9u
QXV0bzsKK30KKwogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKExpbmVDYXAgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4gYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgppbmRleCBmNWMxOTllNzYxN2YyNjYz
NDFkMGYxYmQ2NzUxMTA4NDAyNGMyN2ZiLi4xOWU1MzVkY2U1MTQ0MzZkOGM3OGFiOTk4NjY0Njk2
OWNkYWE2NDU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1l
cy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgpAQCAtMjgz
LDYgKzI4Myw3IEBAIHotaW5kZXgKICNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19DT01Q
T1NJVElORykgJiYgRU5BQkxFX0NTU19DT01QT1NJVElORwogLXdlYmtpdC1taXgtYmxlbmQtbW9k
ZQorLXdlYmtpdC1pc29sYXRpb24KICNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19GSUxU
RVJTKSAmJiBFTkFCTEVfQ1NTX0ZJTFRFUlMKIC13ZWJraXQtZmlsdGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDM4YWQxNzY3ZWM3ZDdmMWU2NWVmMGIzODliZmQy
MGFhMDIzNGQyZjIuLmUxNDAwYTdjNWMwYjY5YzQzODljMzVkYmQ3NzQ5MjgyYmI2MWY2NjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC0xMDI0LDYgKzEwMjQsMTAg
QEAgc2F0dXJhdGlvbgogY29sb3IKIGx1bWlub3NpdHkKIAorLy8gaXNvbGF0aW9uCisvLyBhdXRv
Citpc29sYXRlCisKIC8vIG9iamVjdC1maXQKIC8vIGZpbGwKIC8vIGNvbnRhaW4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAppbmRleCBlOWE5MjQ2NmNh
OTUzZmVkZWJlNmUwNDAzMjM5MGU1NGMxMjk4ZGE4Li42MjIwZWYzOTc5NWUyMmY1MWIxYTc2ZTMy
YjBjYjM2MWYxMDYyNDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHls
ZUJ1aWxkZXIuY3BwCkBAIC0yNDg4LDYgKzI0ODgsNyBAQCBEZXByZWNhdGVkU3R5bGVCdWlsZGVy
OjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKCkKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJv
cGVydHlXZWJraXRCYWNrZ3JvdW5kU2l6ZSwgQ1NTUHJvcGVydHlCYWNrZ3JvdW5kU2l6ZSk7CiAj
aWYgRU5BQkxFKENTU19DT01QT1NJVElORykKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJv
cGVydHlXZWJraXRNaXhCbGVuZE1vZGUsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEJsZW5kTW9kZSwg
JlJlbmRlclN0eWxlOjpibGVuZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjpzZXRCbGVu
ZE1vZGUsIEJsZW5kTW9kZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQmxlbmRNb2RlPjo6Y3JlYXRl
SGFuZGxlcigpKTsKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRJc29s
YXRpb24sIEFwcGx5UHJvcGVydHlEZWZhdWx0PElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjppc29s
YXRpb24sIElzb2xhdGlvbiwgJlJlbmRlclN0eWxlOjpzZXRJc29sYXRpb24sIElzb2xhdGlvbiwg
JlJlbmRlclN0eWxlOjppbml0aWFsSXNvbGF0aW9uPjo6Y3JlYXRlSGFuZGxlcigpKTsKICNlbmRp
ZgogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckZpdCwgQXBw
bHlQcm9wZXJ0eURlZmF1bHQ8RUJvcmRlckZpdCwgJlJlbmRlclN0eWxlOjpib3JkZXJGaXQsIEVC
b3JkZXJGaXQsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyRml0LCBFQm9yZGVyRml0LCAmUmVuZGVy
U3R5bGU6OmluaXRpYWxCb3JkZXJGaXQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3Bl
cnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckhvcml6b250YWxTcGFjaW5nLCBBcHBs
eVByb3BlcnR5Q29tcHV0ZUxlbmd0aDxzaG9ydCwgJlJlbmRlclN0eWxlOjpob3Jpem9udGFsQm9y
ZGVyU3BhY2luZywgJlJlbmRlclN0eWxlOjpzZXRIb3Jpem9udGFsQm9yZGVyU3BhY2luZywgJlJl
bmRlclN0eWxlOjppbml0aWFsSG9yaXpvbnRhbEJvcmRlclNwYWNpbmc+OjpjcmVhdGVIYW5kbGVy
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDA4M2NhZTFhNTEwMDg4
NmY3OTBlZjY4YTgwNDY3YTVlYzcxY2I1ZWEuLjJjZWQzMjE3MzdlZjQ3ZTU3ZTQxN2MxNmM1ZDZm
ZjI5ZDczMzQ1NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTEyMzgs
NiArMTIzOCw3IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YWRqdXN0UmVuZGVyU3R5bGUoUmVuZGVy
U3R5bGUmIHN0eWxlLCBjb25zdCBSZW5kZXJTdHlsZSYgcGFyCiAgICAgICAgIHx8IHN0eWxlLmJv
eFJlZmxlY3QoKQogICAgICAgICB8fCBzdHlsZS5oYXNGaWx0ZXIoKQogICAgICAgICB8fCBzdHls
ZS5oYXNCbGVuZE1vZGUoKQorICAgICAgICB8fCBzdHlsZS5oYXNJc29sYXRpb24oKQogICAgICAg
ICB8fCBzdHlsZS5wb3NpdGlvbigpID09IFN0aWNreVBvc2l0aW9uCiAgICAgICAgIHx8IChzdHls
ZS5wb3NpdGlvbigpID09IEZpeGVkUG9zaXRpb24gJiYgZSAmJiBlLT5kb2N1bWVudCgpLnBhZ2Uo
KSAmJiBlLT5kb2N1bWVudCgpLnBhZ2UoKS0+c2V0dGluZ3MoKS5maXhlZFBvc2l0aW9uQ3JlYXRl
c1N0YWNraW5nQ29udGV4dCgpKQogICAgICAgICB8fCBzdHlsZS5oYXNGbG93RnJvbSgpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCAxMzNh
YjQ5MGVkZTI0OTZmYjkzYjgyZTBlMTdlOGE4ZDY2OGVmOTFmLi5iYTgyOWY2YjUyNGRmNmMxNzJl
NDliZTkzMTFkYmM4YjlmNWMzOTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTY3OSw2ICs2NzksOSBAQCBib29sIFJlbmRlclN0eWxl
OjpjaGFuZ2VSZXF1aXJlc0xheWVyUmVwYWludChjb25zdCBSZW5kZXJTdHlsZSogb3RoZXIsIHVu
c2lnbmVkJgogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgaWYgKHJhcmVOb25Jbmhl
cml0ZWREYXRhLT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24gIT0gb3RoZXItPnJhcmVOb25J
bmhlcml0ZWREYXRhLT5tX2lzb2xhdGlvbikKKyAgICAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYK
IAogICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+b3BhY2l0eSAhPSBvdGhlci0+cmFyZU5v
bkluaGVyaXRlZERhdGEtPm9wYWNpdHkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggNzdhN2FkZTg1ODBjMzA1OTNkZWMzMGYxMmViYTdlM2Jh
NmFlMjBjNi4uMWMwYzg3NDU1ZWFkOWQzN2I0YTkyNWI5M2QyMTNmMzMwNGJhOWE3YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTk2NywxMSAr
OTY3LDE4IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgQmxl
bmRNb2RlIGJsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEJsZW5kTW9kZT4o
cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fZWZmZWN0aXZlQmxlbmRNb2RlKTsgfQotICAgIHZvaWQg
c2V0QmxlbmRNb2RlKEJsZW5kTW9kZSB2KSB7IHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2Vzcygp
LT5tX2VmZmVjdGl2ZUJsZW5kTW9kZSA9IHY7IH0KKyAgICB2b2lkIHNldEJsZW5kTW9kZShCbGVu
ZE1vZGUgYmxlbmRNb2RlKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERhdGEsIG1fZWZmZWN0
aXZlQmxlbmRNb2RlLCBibGVuZE1vZGUpOyB9CiAgICAgYm9vbCBoYXNCbGVuZE1vZGUoKSBjb25z
dCB7IHJldHVybiBzdGF0aWNfY2FzdDxCbGVuZE1vZGU+KHJhcmVOb25Jbmhlcml0ZWREYXRhLT5t
X2VmZmVjdGl2ZUJsZW5kTW9kZSkgIT0gQmxlbmRNb2RlTm9ybWFsOyB9CisKKyAgICBJc29sYXRp
b24gaXNvbGF0aW9uKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8SXNvbGF0aW9uPihyYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV9pc29sYXRpb24pOyB9CisgICAgdm9pZCBzZXRJc29sYXRpb24o
SXNvbGF0aW9uIGlzb2xhdGlvbikgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWREYXRhLCBtX2lz
b2xhdGlvbiwgaXNvbGF0aW9uKTsgfQorICAgIGJvb2wgaGFzSXNvbGF0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1faXNvbGF0aW9uICE9IElzb2xhdGlvbkF1dG87
IH0KICNlbHNlCiAgICAgQmxlbmRNb2RlIGJsZW5kTW9kZSgpIGNvbnN0IHsgcmV0dXJuIEJsZW5k
TW9kZU5vcm1hbDsgfQogICAgIGJvb2wgaGFzQmxlbmRNb2RlKCkgY29uc3QgeyByZXR1cm4gZmFs
c2U7IH0KKworICAgIElzb2xhdGlvbiBpc29sYXRpb24oKSBjb25zdCB7IHJldHVybiBJc29sYXRp
b25BdXRvOyB9CisgICAgYm9vbCBoYXNJc29sYXRpb24oKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQogI2VuZGlmCiAgCiAjaWYgVVNFKFJUTF9TQ1JPTExCQVIpCkBAIC0xODE3LDYgKzE4MjQsNyBA
QCBwdWJsaWM6CiAjZW5kaWYKICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgIHN0YXRp
YyBCbGVuZE1vZGUgaW5pdGlhbEJsZW5kTW9kZSgpIHsgcmV0dXJuIEJsZW5kTW9kZU5vcm1hbDsg
fQorICAgIHN0YXRpYyBJc29sYXRpb24gaW5pdGlhbElzb2xhdGlvbigpIHsgcmV0dXJuIElzb2xh
dGlvbkF1dG87IH0KICNlbmRpZgogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAppbmRleCA3MDRhZGUwNmEz
MDVhOGY4MGI5ZWY2ODhiMGI4MzdhMWNjZjRhYjNlLi4wYzY0ZGRiNWNkOTg2NDA1Y2ZiMWM0Y2Rm
NjRiZTlhZWVjMGRhNDkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtNTUwLDYgKzU1MCw4IEBAIGVudW0gVGV4
dEluZGVudExpbmUgeyBUZXh0SW5kZW50Rmlyc3RMaW5lLCBUZXh0SW5kZW50RWFjaExpbmUgfTsK
IGVudW0gVGV4dEluZGVudFR5cGUgeyBUZXh0SW5kZW50Tm9ybWFsLCBUZXh0SW5kZW50SGFuZ2lu
ZyB9OwogI2VuZGlmCiAKK2VudW0gSXNvbGF0aW9uIHsgSXNvbGF0aW9uQXV0bywgSXNvbGF0aW9u
SXNvbGF0ZSB9OworCiAvLyBGaWxsLCBTdHJva2UsIFZpZXdCb3ggYXJlIGp1c3QgdXNlZCBmb3Ig
U1ZHLgogZW51bSBMYXlvdXRCb3ggeyBCb3hNaXNzaW5nID0gMCwgTWFyZ2luQm94LCBCb3JkZXJC
b3gsIFBhZGRpbmdCb3gsIENvbnRlbnRCb3gsIEZpbGwsIFN0cm9rZSwgVmlld0JveCB9OwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5o
ZXJpdGVkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJl
Tm9uSW5oZXJpdGVkRGF0YS5jcHAKaW5kZXggOGJlYzE2Mjk1NmE4MmY1ZjViZjQxMjQ5MTQzNTBj
MGRkYmMwNzY0My4uNjJjMWM5NGEwZDdmZjQ2YjQzNzA0ODllN2UxMjBhNjE0MWE2OGE0MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVy
aXRlZERhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmNwcApAQCAtOTIsNiArOTIsNyBAQCBTdHlsZVJhcmVOb25Jbmhl
cml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKCkKICAgICAsIG1fYXNwZWN0UmF0
aW9UeXBlKFJlbmRlclN0eWxlOjppbml0aWFsQXNwZWN0UmF0aW9UeXBlKCkpCiAjaWYgRU5BQkxF
KENTU19DT01QT1NJVElORykKICAgICAsIG1fZWZmZWN0aXZlQmxlbmRNb2RlKFJlbmRlclN0eWxl
Ojppbml0aWFsQmxlbmRNb2RlKCkpCisgICAgLCBtX2lzb2xhdGlvbihSZW5kZXJTdHlsZTo6aW5p
dGlhbElzb2xhdGlvbigpKQogI2VuZGlmCiAgICAgLCBtX29iamVjdEZpdChSZW5kZXJTdHlsZTo6
aW5pdGlhbE9iamVjdEZpdCgpKQogewpAQCAtMTcyLDYgKzE3Myw3IEBAIGlubGluZSBTdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKGNvbnN0IFN0eWxl
UmFyZU5vbkluCiAgICAgLCBtX2FzcGVjdFJhdGlvVHlwZShvLm1fYXNwZWN0UmF0aW9UeXBlKQog
I2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCiAgICAgLCBtX2VmZmVjdGl2ZUJsZW5kTW9kZShv
Lm1fZWZmZWN0aXZlQmxlbmRNb2RlKQorICAgICwgbV9pc29sYXRpb24oby5tX2lzb2xhdGlvbikK
ICNlbmRpZgogICAgICwgbV9vYmplY3RGaXQoby5tX29iamVjdEZpdCkKIHsKQEAgLTI2Miw2ICsy
NjQsNyBAQCBib29sIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3Qg
U3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSYgbykgYwogICAgICAgICAmJiAhbV9ydW5uaW5nQWNj
ZWxlcmF0ZWRBbmltYXRpb24gJiYgIW8ubV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24KICNp
ZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgICAgICAmJiBtX2VmZmVjdGl2ZUJsZW5kTW9k
ZSA9PSBvLm1fZWZmZWN0aXZlQmxlbmRNb2RlCisgICAgICAgICYmIG1faXNvbGF0aW9uID09IG8u
bV9pc29sYXRpb24KICNlbmRpZgogICAgICAgICAmJiBtX2FzcGVjdFJhdGlvVHlwZSA9PSBvLm1f
YXNwZWN0UmF0aW9UeXBlCiAgICAgICAgICYmIG1fb2JqZWN0Rml0ID09IG8ubV9vYmplY3RGaXQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9u
SW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCBjM2JhNTI2MTVmOGZlNTM2NTkyZWRhOWZiZmVmYmI1
ZTA3ZThiZDZmLi45MjliM2ExNjg5NzA0ZGQ4ZmY2ODVjN2U3ZTg4NTlkZGFiM2RjZWM1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJp
dGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVO
b25Jbmhlcml0ZWREYXRhLmgKQEAgLTE5NCw2ICsxOTQsNyBAQCBwdWJsaWM6CiAKICNpZiBFTkFC
TEUoQ1NTX0NPTVBPU0lUSU5HKQogICAgIHVuc2lnbmVkIG1fZWZmZWN0aXZlQmxlbmRNb2RlOiA1
OyAvLyBFQmxlbmRNb2RlCisgICAgdW5zaWduZWQgbV9pc29sYXRpb24gOiAxOyAvLyBJc29sYXRp
b24KICNlbmRpZgogCiAgICAgdW5zaWduZWQgbV9vYmplY3RGaXQgOiAzOyAvLyBPYmplY3RGaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVuZGVyaW5nQ29u
dGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1JlbmRlcmluZ0NvbnRl
eHQuY3BwCmluZGV4IGVkYjQ5YTdhMGZmMDlmOGY4YmMzYmM2YjM4NDkzMmI1YWM3MzcxZDkuLjU1
MDNhN2QxYTI0YTBiYWVlZjZjOGM3NTMwYTE5MTkzNDAyOTBiZGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdSZW5kZXJpbmdDb250ZXh0LmNwcApAQCAtMTA0
LDYgKzEwNCw3IEBAIHZvaWQgU1ZHUmVuZGVyaW5nQ29udGV4dDo6cHJlcGFyZVRvUmVuZGVyU1ZH
Q29udGVudChSZW5kZXJFbGVtZW50JiByZW5kZXJlciwgUGFpCiAgICAgZmxvYXQgb3BhY2l0eSA9
IGlzUmVuZGVyaW5nTWFzayA/IDEgOiBzdHlsZS5vcGFjaXR5KCk7CiAgICAgY29uc3QgU2hhZG93
RGF0YSogc2hhZG93ID0gc3ZnU3R5bGUuc2hhZG93KCk7CiAgICAgYm9vbCBoYXNCbGVuZE1vZGUg
PSBzdHlsZS5oYXNCbGVuZE1vZGUoKTsKKyAgICBib29sIGhhc0lzb2xhdGlvbiA9IHN0eWxlLmhh
c0lzb2xhdGlvbigpOwogICAgIGJvb2wgaXNvbGF0ZU1hc2tGb3JCbGVuZGluZyA9IGZhbHNlOwog
CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKQEAgLTExMywxMSArMTE0LDExIEBAIHZvaWQg
U1ZHUmVuZGVyaW5nQ29udGV4dDo6cHJlcGFyZVRvUmVuZGVyU1ZHQ29udGVudChSZW5kZXJFbGVt
ZW50JiByZW5kZXJlciwgUGFpCiAgICAgfQogI2VuZGlmCiAKLSAgICBpZiAob3BhY2l0eSA8IDEg
fHwgc2hhZG93IHx8IGhhc0JsZW5kTW9kZSB8fCBpc29sYXRlTWFza0ZvckJsZW5kaW5nKSB7Cisg
ICAgaWYgKG9wYWNpdHkgPCAxIHx8IHNoYWRvdyB8fCBoYXNCbGVuZE1vZGUgfHwgaXNvbGF0ZU1h
c2tGb3JCbGVuZGluZyB8fCBoYXNJc29sYXRpb24pIHsKICAgICAgICAgRmxvYXRSZWN0IHJlcGFp
bnRSZWN0ID0gbV9yZW5kZXJlci0+cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMoKTsKICAg
ICAgICAgbV9wYWludEluZm8tPmNvbnRleHQtPmNsaXAocmVwYWludFJlY3QpOwogCi0gICAgICAg
IGlmIChvcGFjaXR5IDwgMSB8fCBoYXNCbGVuZE1vZGUgfHwgaXNvbGF0ZU1hc2tGb3JCbGVuZGlu
ZykgeworICAgICAgICBpZiAob3BhY2l0eSA8IDEgfHwgaGFzQmxlbmRNb2RlIHx8IGlzb2xhdGVN
YXNrRm9yQmxlbmRpbmcgfHwgaGFzSXNvbGF0aW9uKSB7CiAKICAgICAgICAgICAgIGlmIChoYXNC
bGVuZE1vZGUpCiAgICAgICAgICAgICAgICAgbV9wYWludEluZm8tPmNvbnRleHQtPnNldENvbXBv
c2l0ZU9wZXJhdGlvbihtX3BhaW50SW5mby0+Y29udGV4dC0+Y29tcG9zaXRlT3BlcmF0aW9uKCks
IHN0eWxlLmJsZW5kTW9kZSgpKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA0ODE3MDk5NjIxMTI4ZTM0ZjQyNDNmNDNjNDlh
MGE1YzJmZDg5NjFjLi43NWUzYjAzZjMzNzUyZWRhODA0ODI0MzhhMTE5NzAyY2NlMjM2MmQ4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDUgKzEsMjggQEAKIDIwMTQtMDItMjQgIE1paGFpIFRpY2EgIDxtaXRpY2FAYWRv
YmUuY29tPgogCisgICAgICAgIFtDU1MgQmxlbmRpbmddIFBhcnNlIGFuZCBpbXBsZW1lbnQgdGhl
IC13ZWJraXQtaXNvbGF0aW9uIENTUyBwcm9wZXJ0eS4KKworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI4OTU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdCBwYXJzaW5nIG9mIC13ZWJraXQtaXNvbGF0
aW9uLiBUZXN0IGlmIHNldHRpbmcgLXdlYmtpdC1pc29sYXRpb246IGlzb2xhdGUgY3JlYXRzIGEg
c3RhY2tpbmcgY29udGV4dC4KKyAgICAgICAgVGVzdCBmb3IgU1ZHIGFuZCBIVE1MIHRoYXQgYmxl
bmRpbmcgaXMgcmVzdHJpY3RlZCB0byB0aGUgY29udGVudHMgb2YgYW4gaXNvbGF0ZWQgcGFyZW50
IGVsZW1lbnQuCisKKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRl
LWJsZW5kZWQtY2hpbGQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21w
b3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxkLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2lu
Zy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvaXNvbGF0
aW9uLXBhcnNpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9jb21wb3NpdGluZy9zdmct
aXNvbGF0aW9uLWRlZmF1bHQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9j
b21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWRlZmF1bHQuaHRtbDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWlzb2xhdGVkLWdyb3VwLWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1pc29s
YXRlZC1ncm91cC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NvbXBvc2l0aW5nL3N2Zy1p
c29sYXRpb24tc2ltcGxlLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY29t
cG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1zaW1wbGUuaHRtbDogQWRkZWQuCisKKzIwMTQtMDItMjQg
IE1paGFpIFRpY2EgIDxtaXRpY2FAYWRvYmUuY29tPgorCiAgICAgICAgIFtDU1MgQmxlbmRpbmdd
IEFuIGVsZW1lbnQgaGF2aW5nIC13ZWJraXQtbWl4LWJsZW5kLW1vZGUgc2hvdWxkIG9ubHkgYmxl
bmQgd2l0aCB0aGUgY29udGVudHMgb2YgdGhlIHBhcmVudCBzdGFja2luZyBjb250ZXh0CiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjkxNTQKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1i
bGVuZGVkLWNoaWxkLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5n
L2lzb2xhdGlvbi1pc29sYXRlLWJsZW5kZWQtY2hpbGQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jOTMxNmVhZTNkODRiNTZjMmZkNDg1MzQyZjRlOGVjYjRmODQxOGI1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1ibGVu
ZGVkLWNoaWxkLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyOSBAQAorPCFET0NUWVBFIEhUTUw+
Cis8c3R5bGU+CisgICAgZGl2IHsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAgICB3aWR0
aDogMTMwcHg7CisgICAgICAgIGhlaWdodDogMTMwcHg7CisgICAgfQorCisgICAgLnBhcmVudCB7
CisgICAgICAgIGJhY2tncm91bmQ6IHJnYig1NSwgNTUsIDU1KTsKKyAgICAgICAgcG9zaXRpb246
IGZpeGVkOworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIGhlaWdodDogMzAwcHg7Cisg
ICAgfQorCisgICAgLmlzb2xhdG9yIHsKKyAgICAgICAgcG9zaXRpb246IGZpeGVkOworICAgICAg
ICB6LWluZGV4OiAwOworICAgICAgICBiYWNrZ3JvdW5kOiB2aW9sZXQ7CisgICAgfQorCisgICAg
LmNoaWxkIHsKKyAgICAgICAgbWFyZ2luLXRvcDogMHB4OworICAgICAgICAtd2Via2l0LW1peC1i
bGVuZC1tb2RlOiBtdWx0aXBseTsKKyAgICAgICAgYmFja2dyb3VuZDogb2xpdmU7CisgICAgfQor
Cis8L3N0eWxlPgorPGRpdiBjbGFzcz0icGFyZW50Ij48ZGl2IGNsYXNzPSJpc29sYXRvciI+PGRp
diBjbGFzcz0iY2hpbGQiPjwvZGl2PjwvZGl2PjwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1pc29sYXRlLWJsZW5kZWQt
Y2hpbGQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNjhhZTFjZjk2MjBkZWJkMGE0NGQ5OWYyZjQ1M2ZhOTJi
MzY5MzIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9p
c29sYXRpb24taXNvbGF0ZS1ibGVuZGVkLWNoaWxkLmh0bWwKQEAgLTAsMCArMSwyOCBAQAorPCFE
T0NUWVBFIEhUTUw+Cis8IS0tIFRlc3QgdG8gZW5zdXJlIHRoYXQgIi13ZWJraXQtaXNvbGF0aW9u
Omlzb2xhdGUiIGNyZWF0ZXMgYSBzdGFja2luZyBjb250ZXh0LCB0aHVzIHByZXZlbnRpbmcgYmxl
bmRpbmcgd2l0aCB0aGUgcGFyZW50IGVsZW1lbnQuIC0tPgorPHN0eWxlPgorICAgIGRpdiB7Cisg
ICAgICAgIG1hcmdpbjogMjBweDsKKyAgICAgICAgd2lkdGg6IDEzMHB4OworICAgICAgICBoZWln
aHQ6IDEzMHB4OworICAgIH0KKworICAgIC5wYXJlbnQgeworICAgICAgICBiYWNrZ3JvdW5kOiBy
Z2IoNTUsIDU1LCA1NSk7CisgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKKyAgICAgICAgd2lkdGg6
IDMwMHB4OworICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgIH0KKworICAgIC5pc29sYXRvciB7
CisgICAgICAgIC13ZWJraXQtaXNvbGF0aW9uOiBpc29sYXRlOworICAgICAgICBiYWNrZ3JvdW5k
OiB2aW9sZXQ7CisgICAgfQorCisgICAgLmNoaWxkIHsKKyAgICAgICAgLXdlYmtpdC1taXgtYmxl
bmQtbW9kZTogbXVsdGlwbHk7CisgICAgICAgIGJhY2tncm91bmQ6IG9saXZlOworICAgIH0KKwor
PC9zdHlsZT4KKzxkaXYgY2xhc3M9InBhcmVudCI+PGRpdiBjbGFzcz0iaXNvbGF0b3IiPjxkaXYg
Y2xhc3M9ImNoaWxkIj48L2Rpdj48L2Rpdj48L2Rpdj4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLWlzb2xhdGUtc2ltcGxlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODljZmQ4MzUzZjZhNDI0NTQ3Nzc1NjU3MDVkOTc3MmQ3
YjcwYzUwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9p
c29sYXRpb24taXNvbGF0ZS1zaW1wbGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorUEFT
UyAwIGlzIDAKK1BBU1MgMCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGlu
Zy9pc29sYXRpb24tcGFyc2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBv
c2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wOTk1ZWM0
OGE5NjcwMzkyMDlmZWY5YjAzNzA2OTJjNWM2OTZmZDU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9pc29sYXRpb24tcGFyc2luZy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw4IEBACitQQVNTIHNldFByb3BlcnR5KCJhdXRvIikgaXMgImF1dG8iCitQQVNT
IHNldFByb3BlcnR5KCJpc29sYXRlIikgaXMgImlzb2xhdGUiCitQQVNTIHNldFByb3BlcnR5KCIi
KSBpcyAiYXV0byIKK1BBU1Mgc2V0UHJvcGVydHkoInJ1YmJpc2giKSBpcyAiYXV0byIKK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL2lzb2xhdGlvbi1wYXJzaW5nLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uODUyOWRlYTVlOWQwNjAyNGRkYmZkYWY5N2ZkOTUzYWZkYmI2MjBkYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvaXNvbGF0aW9uLXBhcnNpbmcu
aHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cisg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKyAg
ICA8c2NyaXB0PgorICAgICAgICBmdW5jdGlvbiBzZXRQcm9wZXJ0eSh2YWx1ZSkgeworICAgICAg
ICAgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYpOworICAgICAgICAgICAgZGl2LnN0eWxl
LnNldFByb3BlcnR5KCItd2Via2l0LWlzb2xhdGlvbiIsIHZhbHVlKTsKKworICAgICAgICAgICAg
dmFyIGNvbXB1dGVkVmFsdWUgPSBnZXRDb21wdXRlZFN0eWxlKGRpdikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC1pc29sYXRpb24iKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3Zl
Q2hpbGQoZGl2KTsKKworICAgICAgICAgICAgcmV0dXJuIGNvbXB1dGVkVmFsdWU7CisgICAgICAg
IH0KKworICAgICAgICBmdW5jdGlvbiB0ZXN0KHZhbHVlLCBleHBlY3RlZCkgeworICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdzZXRQcm9wZXJ0eSgiJyArIHZhbHVlICsgJyIpJywg
ZXhwZWN0ZWQpOworICAgICAgICB9CisKKyAgICAgICAgdGVzdCgiYXV0byIsICJhdXRvIik7Cisg
ICAgICAgIHRlc3QoImlzb2xhdGUiLCAiaXNvbGF0ZSIpOworICAgICAgICB0ZXN0KCIiLCAiYXV0
byIpOworICAgICAgICB0ZXN0KCJydWJiaXNoIiwgImF1dG8iKTsKKyAgICA8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcv
c3ZnLWlzb2xhdGlvbi1kZWZhdWx0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Nv
bXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljg1ZDE1ZmZkODM0NTdjOTNkYWU2YWM5MmFjODZiYjI5YWM0MGM1ZWYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC1l
eHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsNCBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3ZnIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjQwMHB4IiBoZWlnaHQ9IjQwMHB4
IiBzdHlsZT0iYmFja2dyb3VuZDogZ3JlZW4iPgorICAgIDxyZWN0IHg9IjEwMCIgeT0iMTAwIiB3
aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgc3R5bGU9ImZpbGw6IGJsdWU7IC13ZWJraXQtbWl4LWJs
ZW5kLW1vZGU6IG11bHRpcGx5Ii8+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1kZWZhdWx0Lmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNi
NmJmNTE3MTBiMGU4ZTY1NWFmMWQ1MGJmZWQwMjAxYzFjYTM4ZmQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29sYXRpb24tZGVmYXVsdC5odG1s
CkBAIC0wLDAgKzEsNyBAQAorPCFET0NUWVBFIEhUTUw+Cis8IS0tIFRlc3QgdGhlIGRlZmF1bHQg
YmVoYXZpb3VyIG9mIGlzb2xhdGlvbiB3aXRoIHR3byBzaW1wbGUgZWxlbWVudHMuIFRoZSB0ZXN0
IHBhc3NlcyBpZiB0aGUgc21hbGwgc3F1YXJlIGlzIGRyYXduIHdpdGggYmxhY2sgKGJsZW5kaW5n
IGlzIHBlcmZvcm1lZCBzaW5jZSB0aGUgZWxlbWVudCBpcyBub3QgaXNvbGF0ZWQpLiAtLT4KKzxz
dmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNDAwcHgiIGhlaWdo
dD0iNDAwcHgiIHN0eWxlPSJiYWNrZ3JvdW5kOiBncmVlbiI+CisgICAgPGcgc3R5bGU9Ii13ZWJr
aXQtaXNvbGF0aW9uOiBhdXRvIj4KKyAgICAgICAgPHJlY3QgeD0iMTAwIiB5PSIxMDAiIHdpZHRo
PSIyMDAiIGhlaWdodD0iMjAwIiBzdHlsZT0iZmlsbDogYmx1ZTsgLXdlYmtpdC1taXgtYmxlbmQt
bW9kZTogbXVsdGlwbHkiLz4KKyAgICA8L2c+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC1leHBlY3Rl
ZC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWlzb2xh
dGVkLWdyb3VwLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDUwMjRhODI5NGFiNmJlNmM1Y2Qz
Njg3OGI4MzdmNGVlZDAxOTYzOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMv
Y29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC1leHBlY3RlZC5odG1sCkBA
IC0wLDAgKzEsOCBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iNDAwcHgiIGhlaWdodD0iNDAwcHgi
IHN0eWxlPSJiYWNrZ3JvdW5kOiBncmVlbiI+CisgICAgPGc+CisgICAgICAgIDxyZWN0IHg9IjUw
IiB5PSI1MCIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIHN0eWxlPSJmaWxsOiBvcmFuZ2U7Ii8+
CisgICAgICAgIDxyZWN0IHg9IjEwMCIgeT0iMTAwIiB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIg
c3R5bGU9ImZpbGw6IGJsdWU7Ii8+CisgICAgICAgIDxyZWN0IHg9IjEwMCIgeT0iMTAwIiB3aWR0
aD0iMTUwIiBoZWlnaHQ9IjE1MCIgc3R5bGU9ImZpbGw6IG9yYW5nZTsgLXdlYmtpdC1taXgtYmxl
bmQtbW9kZTogZGlmZmVyZW5jZTsiLz4KKyAgICA8L2c+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLWlzb2xhdGVk
LWdyb3VwLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmU4ZjdlMmFhZDg3NmE2MTJmNjE1OTcwMzRjZGRlZjEy
ZjY1ZDFlNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcv
c3ZnLWlzb2xhdGlvbi1pc29sYXRlZC1ncm91cC5odG1sCkBAIC0wLDAgKzEsOSBAQAorPCFET0NU
WVBFIEhUTUw+Cis8IS0tIFRlc3QgYmVoYXZpb3VyIG9mIGlzb2xhdGlvbiBmb3Igb3ZlcmxhcHBp
bmcgZWxlbWVudHMgd2l0aGluIGdyb3Vwcy4gVGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGFyZSBu
byByZWN0cyBkcmF3biB3aXRoIHJlZC4KK1RoaXMgaW1wbGllcyB0aGF0IHRoZSBpc29sYXRpb24g
aXMgcGVyZm9ybWVkIGFjY29yZGluZ2x5LCBtZWFuaW5nIHRoZSBvcmFuZ2UgcmVjdCBkb2Vzbid0
IGJsZW5kIHdpdGggdGhlIGJhY2tncm91bmQgY29sb3IuIC0tPgorPHN2ZyB4bWxucz0iaHR0cDov
L3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MDBweCIgaGVpZ2h0PSI0MDBweCIgc3R5bGU9
ImJhY2tncm91bmQ6IGdyZWVuIj4KKyAgICA8ZyBzdHlsZT0iLXdlYmtpdC1pc29sYXRpb246IGlz
b2xhdGU7Ij4KKyAgICAgICAgPHJlY3QgeD0iMTAwIiB5PSIxMDAiIHdpZHRoPSIyNTAiIGhlaWdo
dD0iMjUwIiBzdHlsZT0iZmlsbDogYmx1ZTsiLz4KKyAgICAgICAgPHJlY3QgeD0iNTAiIHk9IjUw
IiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgc3R5bGU9ImZpbGw6IG9yYW5nZTsgLXdlYmtpdC1t
aXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsiLz4KKyAgICA8L2c+Cis8L3N2Zz4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1zaW1wbGUtZXhw
ZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY29tcG9zaXRpbmcvc3ZnLWlzb2xhdGlvbi1z
aW1wbGUtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45ODk3YzkzZGE4OTE1YjM5ZTUyMTIwZGQ2
ZGYxMDliZjk2Mzk4ZmI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21w
b3NpdGluZy9zdmctaXNvbGF0aW9uLXNpbXBsZS1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsNiBA
QAorPCFET0NUWVBFIEhUTUw+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
ZyIgd2lkdGg9IjQwMHB4IiBoZWlnaHQ9IjQwMHB4IiBzdHlsZT0iYmFja2dyb3VuZDogZ3JlZW4i
PgorICAgIDxnPgorICAgICAgICA8cmVjdCB4PSIxMDAiIHk9IjEwMCIgd2lkdGg9IjIwMCIgaGVp
Z2h0PSIyMDAiIHN0eWxlPSJmaWxsOiBibHVlOyIvPgorICAgIDwvZz4KKzwvc3ZnPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLXNpbXBsZS5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jb21wb3NpdGluZy9zdmctaXNvbGF0aW9uLXNpbXBsZS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjJlMTQ4Njc0ZDU0YmU5YjMxNzNjZWMxYmZlMzg2NGUzZTQyMjk5YzQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NvbXBvc2l0aW5nL3N2Zy1pc29s
YXRpb24tc2ltcGxlLmh0bWwKQEAgLTAsMCArMSw3IEBACis8IURPQ1RZUEUgSFRNTD4KKzwhLS0g
VGVzdCBpc29sYXRpb24gd2l0aCB0d28gc2ltcGxlIGVsZW1lbnRzLiBUaGUgdGVzdCBwYXNzZXMg
aWYgdGhlIHNtYWxsIHNxdWFyZSBpcyBkcmF3biB3aXRoIGJsdWUgKG5vIGJsZW5kaW5nIGlzIHBl
cmZvcm1lZCBzaW5jZSB0aGUgZWxlbWVudCBpcyBpc29sYXRlZCkuIC0tPgorPHN2ZyB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MDBweCIgaGVpZ2h0PSI0MDBweCIg
c3R5bGU9ImJhY2tncm91bmQ6IGdyZWVuIj4KKyAgICA8ZyBzdHlsZT0iLXdlYmtpdC1pc29sYXRp
b246IGlzb2xhdGUiPgorICAgICAgICA8cmVjdCB4PSIxMDAiIHk9IjEwMCIgd2lkdGg9IjIwMCIg
aGVpZ2h0PSIyMDAiIHN0eWxlPSJmaWxsOiBibHVlOyAtd2Via2l0LW1peC1ibGVuZC1tb2RlOiBt
dWx0aXBseSIvPgorICAgIDwvZz4KKzwvc3ZnPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>