<?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>155962</bug_id>
          
          <creation_ts>2016-03-28 19:29:16 -0700</creation_ts>
          <short_desc>[OS X] [RTL Scrollbars] Overlay RTL scrollbars animate in from the wrong side</short_desc>
          <delta_ts>2016-04-05 11:14:35 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>155999</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jonlee</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1178612</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-28 19:29:16 -0700</bug_when>
    <thetext>[OS X] [RTL Scrollbars] Overlay RTL scrollbars animate in from the wrong side</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178613</commentid>
    <comment_count>1</comment_count>
      <attachid>275077</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-28 19:35:57 -0700</bug_when>
    <thetext>Created attachment 275077
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178614</commentid>
    <comment_count>2</comment_count>
      <attachid>275078</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-28 19:43:56 -0700</bug_when>
    <thetext>Created attachment 275078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178624</commentid>
    <comment_count>3</comment_count>
      <attachid>275078</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-03-28 21:46:13 -0700</bug_when>
    <thetext>Comment on attachment 275078
Patch

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

&gt; Source/WebCore/platform/mac/ScrollAnimatorMac.mm:1307
&gt; +        m_scrollableArea.setScrollbarDirection(newVerticalPainter);

Can we rename the &quot;painter&quot;s please? Very confusing to pass a &quot;painter&quot; to something that apparently takes a scrollbar.

&gt; Source/WebCore/platform/mac/ScrollableAreaMac.mm:57
&gt; +void ScrollableArea::setScrollbarDirection(NSScrollerImp *scroller) const

Not sure I like the term &quot;direction&quot; here. I would prefer setScrollbarLayoutDirection().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178696</commentid>
    <comment_count>4</comment_count>
      <attachid>275078</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-29 10:14:03 -0700</bug_when>
    <thetext>Comment on attachment 275078
Patch

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

&gt;&gt; Source/WebCore/platform/mac/ScrollAnimatorMac.mm:1307
&gt;&gt; +        m_scrollableArea.setScrollbarDirection(newVerticalPainter);
&gt; 
&gt; Can we rename the &quot;painter&quot;s please? Very confusing to pass a &quot;painter&quot; to something that apparently takes a scrollbar.

Yeah, good idea. However, doing this rename is pretty big, so I&apos;ll do it in a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178697</commentid>
    <comment_count>5</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-29 10:16:25 -0700</bug_when>
    <thetext>Committed r198784: &lt;http://trac.webkit.org/changeset/198784&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178888</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-29 17:38:07 -0700</bug_when>
    <thetext>Rolled out in https://bugs.webkit.org/show_bug.cgi?id=155999</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178926</commentid>
    <comment_count>7</comment_count>
      <attachid>275166</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-29 19:46:02 -0700</bug_when>
    <thetext>Created attachment 275166
Needs to disable Settings::setMockScrollbarsEnabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178961</commentid>
    <comment_count>8</comment_count>
      <attachid>275178</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-29 21:27:27 -0700</bug_when>
    <thetext>Created attachment 275178
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1178968</commentid>
    <comment_count>9</comment_count>
      <attachid>275178</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-03-29 21:44:34 -0700</bug_when>
    <thetext>Comment on attachment 275178
Patch

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

&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:69
&gt; +    bool scrollbarPainterIsRTL(Scrollbar&amp;);

Didn&apos;t we decide to get rid of the &quot;painter&quot; terminology?

&gt; Source/WebCore/rendering/RenderTreeAsText.cpp:633
&gt; +                ts &lt;&lt; &quot; RTL&quot;;

I think this is a bit confusing. To me this would imply &quot;scrollbars on the left&quot;, rather than &quot;scrollbar has RTL layout direction&quot;.

&gt; LayoutTests/fast/scrolling/rtl-scrollbars-animation-property.html:1
&gt; +&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ dontMockScrollbars=true ] --&gt;

Why the [ dontMockScrollbars=true ] as well as setMockScrollbarsEnabled(false) ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179068</commentid>
    <comment_count>10</comment_count>
      <attachid>275178</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-03-30 09:09:54 -0700</bug_when>
    <thetext>Comment on attachment 275178
Patch

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

Despite the concerns from both Simon and me, I am going to mark this review+ but you should probably fix the things he asked about.

&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:67
&gt; +    void didCreateScrollerImp(Scrollbar&amp;);

This should be a static member function.

&gt;&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:69
&gt;&gt; +    bool scrollbarPainterIsRTL(Scrollbar&amp;);
&gt; 
&gt; Didn&apos;t we decide to get rid of the &quot;painter&quot; terminology?

How about just calling this isLayoutDirectionRTL?

This should be a static member function.

Annoying to have this here just for logging purposes.

Would be better to paragraph this with the other ScrollerImp function just above, I think. Omit the blank line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179101</commentid>
    <comment_count>11</comment_count>
      <attachid>275178</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-30 10:44:14 -0700</bug_when>
    <thetext>Comment on attachment 275178
Patch

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

&gt;&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:67
&gt;&gt; +    void didCreateScrollerImp(Scrollbar&amp;);
&gt; 
&gt; This should be a static member function.

I don&apos;t think it can be static because the implementation calls painterForScrollbar().

&gt;&gt;&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:69
&gt;&gt;&gt; +    bool scrollbarPainterIsRTL(Scrollbar&amp;);
&gt;&gt; 
&gt;&gt; Didn&apos;t we decide to get rid of the &quot;painter&quot; terminology?
&gt; 
&gt; How about just calling this isLayoutDirectionRTL?
&gt; 
&gt; This should be a static member function.
&gt; 
&gt; Annoying to have this here just for logging purposes.
&gt; 
&gt; Would be better to paragraph this with the other ScrollerImp function just above, I think. Omit the blank line.

Same comment about painterForScrollbar().

&gt;&gt; LayoutTests/fast/scrolling/rtl-scrollbars-animation-property.html:1
&gt;&gt; +&lt;!DOCTYPE html&gt;&lt;!-- webkit-test-runner [ dontMockScrollbars=true ] --&gt;
&gt; 
&gt; Why the [ dontMockScrollbars=true ] as well as setMockScrollbarsEnabled(false) ?

Whoops, this is left over from an older version of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179103</commentid>
    <comment_count>12</comment_count>
      <attachid>275201</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-30 10:49:09 -0700</bug_when>
    <thetext>Created attachment 275201
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179120</commentid>
    <comment_count>13</comment_count>
      <attachid>275201</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-03-30 11:34:09 -0700</bug_when>
    <thetext>Comment on attachment 275201
Patch for committing

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

&gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:67
&gt; +    static void didCreateScrollerImp(Scrollbar&amp;);

Oops, you said this wouldn’t work!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179128</commentid>
    <comment_count>14</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-30 11:53:48 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Comment on attachment 275201 [details]
&gt; Patch for committing
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=275201&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mac/ScrollbarThemeMac.h:67
&gt; &gt; +    static void didCreateScrollerImp(Scrollbar&amp;);
&gt; 
&gt; Oops, you said this wouldn’t work!

:(

Whoops.

I only compiled this on El Capitan.... where it doesn&apos;t call the non-static function. (This is why I posted the patch so I can do more investigation today)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1179211</commentid>
    <comment_count>15</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-03-30 15:19:06 -0700</bug_when>
    <thetext>Committed r198859: &lt;http://trac.webkit.org/changeset/198859&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180158</commentid>
    <comment_count>16</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2016-04-03 02:57:50 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Committed r198859: &lt;http://trac.webkit.org/changeset/198859&gt;

Follow-up gardening fixes:

EFL: r198944  &lt;http://trac.webkit.org/changeset/198944&gt;
GTK/iOS-Simulator/Windows: r198982  &lt;http://trac.webkit.org/changeset/198982&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180160</commentid>
    <comment_count>17</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2016-04-03 02:59:13 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; Committed r198859: &lt;http://trac.webkit.org/changeset/198859&gt;
&gt; 
&gt; Follow-up gardening fixes:
&gt; 
&gt; EFL: r198944  &lt;http://trac.webkit.org/changeset/198944&gt;
&gt; GTK/iOS-Simulator/Windows: r198982  &lt;http://trac.webkit.org/changeset/198982&gt;

See:  &lt;http://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;revision=198981&amp;tests=fast%2Fscrolling%2Frtl-scrollbars-animation-property.html&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180654</commentid>
    <comment_count>18</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-04-04 19:50:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/25118321&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180708</commentid>
    <comment_count>19</comment_count>
      <attachid>275201</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2016-04-04 22:16:04 -0700</bug_when>
    <thetext>Comment on attachment 275201
Patch for committing

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

&gt; LayoutTests/platform/mac/fast/scrolling/rtl-scrollbars-animation-property-expected.txt:8
&gt; +layer at (0,0) size 785x2000
&gt; +  RenderView at (0,0) size 785x600
&gt; +layer at (0,0) size 785x216
&gt; +  RenderBlock {HTML} at (0,0) size 785x216
&gt; +    RenderBody {BODY} at (8,8) size 769x200
&gt; +layer at (8,8) size 200x200 clip at (8,8) size 185x185 scrollHeight 2000
&gt; +  RenderBlock (relative positioned) {DIV} at (0,0) size 200x200
&gt; +layer at (8,8) size 1x2000 backgroundClip at (8,8) size 185x185 clip at (8,8) size 185x185

Hi Myles. Post-land question:

Could you help me to understand how this test result ensures RTL animation correctness?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180885</commentid>
    <comment_count>20</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-04-05 11:14:35 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; Comment on attachment 275201 [details]
&gt; Patch for committing
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=275201&amp;action=review
&gt; 
&gt; &gt; LayoutTests/platform/mac/fast/scrolling/rtl-scrollbars-animation-property-expected.txt:8
&gt; &gt; +layer at (0,0) size 785x2000
&gt; &gt; +  RenderView at (0,0) size 785x600
&gt; &gt; +layer at (0,0) size 785x216
&gt; &gt; +  RenderBlock {HTML} at (0,0) size 785x216
&gt; &gt; +    RenderBody {BODY} at (8,8) size 769x200
&gt; &gt; +layer at (8,8) size 200x200 clip at (8,8) size 185x185 scrollHeight 2000
&gt; &gt; +  RenderBlock (relative positioned) {DIV} at (0,0) size 200x200
&gt; &gt; +layer at (8,8) size 1x2000 backgroundClip at (8,8) size 185x185 clip at (8,8) size 185x185
&gt; 
&gt; Hi Myles. Post-land question:
&gt; 
&gt; Could you help me to understand how this test result ensures RTL animation
&gt; correctness?

RTL scrollbars are only supported on certain operating systems, and this file is not used on those operating systems. (On those operating systems, the -expected.txt has a line that says &quot;layer at (8,8) size 200x200 clip at (23,8) size 185x185 scrollHeight 2000 scrollbarHasRTLLayoutDirection&quot;)

On OS X, we don&apos;t have any infrastructure to actually test the animation itself (because the animation is implemented by another framework on OS X). Instead, this test just makes sure that we set the appropriate state to tell the other framework to do the correct animation.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275077</attachid>
            <date>2016-03-28 19:35:57 -0700</date>
            <delta_ts>2016-03-28 19:43:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155962-20160328193600.patch</filename>
            <type>text/plain</type>
            <size>8722</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk4NzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQ3NGYyNTlkYWFmMGZj
Zjc2YzIzZDZkNGZhYTI3M2YxY2Q1YzJmYy4uNmEzYzlkZjYzNTJmMjg4NmZhNTc3ZjlmNDZhMWVj
NDRiNzAxYjdjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM2IEBACiAyMDE2LTAzLTI4ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKKyAgICAgICAgW09TIFhdIFtS
VEwgU2Nyb2xsYmFyc10gT3ZlcmxheSBSVEwgc2Nyb2xsYmFycyBhbmltYXRlIGluIGZyb20gdGhl
IHdyb25nIHNpZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1NTk2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdlIGNhbiBjb250cm9sIHRoZSBhbmltYXRpb24gZGlyZWN0aW9uIHdpdGggdGhlIE5TU2Ny
b2xsZXJJbXAgcHJvcGVydHkKKyAgICAgICAgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbi4K
KworICAgICAgICBOb3QgdGVzdGFibGUuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxhYmxl
QXJlYS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6c2V0U2Nyb2xsYmFy
RGlyZWN0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6Omhvcml6b250YWxTY3JvbGxiYXIpOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OnZlcnRpY2FsU2Nyb2xsYmFyKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjp0aWxlZEJhY2tpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9ySG9yaXpvbnRhbFNjcm9sbGJhcik6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JWZXJ0aWNhbFNjcm9sbGJhcik6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JTY3JvbGxpbmcpOgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yU2Nyb2xsQ29ybmVyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpsYXllckZvck92ZXJoYW5nQXJlYXMpOgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjp1cGRhdGVTY3JvbGxlclN0eWxlKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxhYmxlQXJlYTo6c2V0U2Nyb2xsYmFyRGlyZWN0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxiYXJU
aGVtZU1hYzo6cmVnaXN0ZXJTY3JvbGxiYXIpOgorICAgICAgICAqIHBsYXRmb3JtL3NwaS9tYWMv
TlNTY3JvbGxlckltcFNQSS5oOgorCisyMDE2LTAzLTI4ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CisKICAgICAgICAgW1JUTCBTY3JvbGxiYXJzXSBQb3NpdGlvbjpz
dGlja3kgY2FuIGJlIHBvc2l0aW9uZWQgdW5kZXIgdmVydGljYWwgUlRMIHNjcm9sbGJhcgogICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1OTQ5CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oCmluZGV4IDhmOGU4M2MyYTMyZWM3
ZjE3NzM4ODkwNzY4YzViZDZhNGZkODNiNmQuLjMxNWE0NWJiYzY4MDgxYTBmMWJiZDE5ZWUxMGU1
ZGM2NzFiOWJhYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFi
bGVBcmVhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaApA
QCAtMjksNiArMjksMTAgQEAKICNpbmNsdWRlICJTY3JvbGxiYXIuaCIKICNpbmNsdWRlIDx3dGYv
VmVjdG9yLmg+CiAKKyNpZiBQTEFURk9STShDT0NPQSkKK09CSkNfQ0xBU1MgTlNTY3JvbGxlcklt
cDsKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZsb2F0UG9pbnQ7CkBA
IC0xODAsOCArMTg0LDggQEAgcHVibGljOgogICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhckludHJ1
c2lvbigpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEludFNpemUgc2Nyb2xsYmFySW50cnVz
aW9uKCkgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogaG9yaXpvbnRhbFNjcm9sbGJh
cigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogdmVydGljYWxT
Y3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBTY3JvbGxiYXIqIGhv
cml6b250YWxTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVh
bCBTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsg
fQogCiAgICAgY29uc3QgSW50UG9pbnQmIHNjcm9sbE9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1f
c2Nyb2xsT3JpZ2luOyB9CiAgICAgYm9vbCBzY3JvbGxPcmlnaW5DaGFuZ2VkKCkgY29uc3QgeyBy
ZXR1cm4gbV9zY3JvbGxPcmlnaW5DaGFuZ2VkOyB9CkBAIC0yOTMsMTUgKzI5NywxNSBAQCBwdWJs
aWM6CiAgICAgYm9vbCBpc1Bpbm5lZFZlcnRpY2FsbHlJbkRpcmVjdGlvbihpbnQgdmVydGljYWxT
Y3JvbGxEZWx0YSkgY29uc3Q7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgVGlsZWRCYWNraW5nKiB0
aWxlZEJhY2tpbmcoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBUaWxlZEJhY2tp
bmcqIHRpbGVkQmFja2luZygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAgIC8vIFRy
dWUgaWYgc2Nyb2xsaW5nIGhhcHBlbnMgYnkgbW92aW5nIGNvbXBvc2l0aW5nIGxheWVycy4KICAg
ICB2aXJ0dWFsIGJvb2wgdXNlc0NvbXBvc2l0ZWRTY3JvbGxpbmcoKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQogICAgIC8vIFRydWUgaWYgdGhlIGNvbnRlbnRzIGNhbiBiZSBzY3JvbGxlZCBhc3lu
Y2hyb25vdXNseSAoaS5lLiBieSBhIFNjcm9sbGluZ0Nvb3JkaW5hdG9yKS4KICAgICB2aXJ0dWFs
IGJvb2wgdXNlc0FzeW5jU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAg
IHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JIb3Jpem9udGFsU2Nyb2xsYmFyKCkgY29u
c3QgeyByZXR1cm4gMDsgfQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JWZXJ0
aWNhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNz
TGF5ZXIqIGxheWVyRm9ySG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIG51bGxw
dHI7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yVmVydGljYWxTY3JvbGxi
YXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CiAKICAgICBib29sIGhhc0xheWVyRm9ySG9y
aXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0OwogICAgIGJvb2wgaGFzTGF5ZXJGb3JWZXJ0aWNhbFNj
cm9sbGJhcigpIGNvbnN0OwpAQCAtMzE0LDYgKzMxOCw5IEBAIHB1YmxpYzoKIAogICAgIGJvb2wg
dmVydGljYWxTY3JvbGxiYXJJc09uTGVmdCgpIGNvbnN0OwogICAgIHN0YXRpYyBib29sIHN5c3Rl
bUxhbmd1YWdlSXNSVEwoKTsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIHNldFNjcm9s
bGJhckRpcmVjdGlvbihOU1Njcm9sbGVySW1wICopIGNvbnN0OworI2VuZGlmCiAKIHByb3RlY3Rl
ZDoKICAgICBXRUJDT1JFX0VYUE9SVCBTY3JvbGxhYmxlQXJlYSgpOwpAQCAtMzI3LDEwICszMzQs
MTAgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBpbnZhbGlkYXRlU2Nyb2xsQ29ybmVy
UmVjdChjb25zdCBJbnRSZWN0JikgPSAwOwogCiAgICAgZnJpZW5kIGNsYXNzIFNjcm9sbGluZ0Nv
b3JkaW5hdG9yOwotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JTY3JvbGxpbmco
KSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAgdmlydHVhbCBHcmFwaGljc0xheWVyKiBsYXllckZv
clNjcm9sbENvcm5lcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNz
TGF5ZXIqIGxheWVyRm9yU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsgfQorICAg
IHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JTY3JvbGxDb3JuZXIoKSBjb25zdCB7IHJl
dHVybiBudWxscHRyOyB9CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotICAgIHZpcnR1YWwg
R3JhcGhpY3NMYXllciogbGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKCkgY29uc3QgeyByZXR1cm4gMDsg
fQorICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKCkgY29u
c3QgeyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlmCiAKICAgICBib29sIGhhc0xheWVyRm9yU2Ny
b2xsQ29ybmVyKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Ny
b2xsQW5pbWF0b3JNYWMubW0KaW5kZXggNDlhZjg5ODk5NzdiN2U0OTEyODM1YTFlMTkzZTBiZWIy
OTMzMDIyZC4uZmExMTczZWI0ZjQ4YmE5NTgwNjgzZTZiOGMwNzNiNTcxOTM2YzVkYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQpAQCAt
MTMwNCw2ICsxMzA0LDcgQEAgdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJT
dHlsZSgpCiAKICAgICAgICAgTlNTY3JvbGxlckltcCAqb2xkVmVydGljYWxQYWludGVyID0gW21f
c2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXIgdmVydGljYWxTY3JvbGxlckltcF07CiAgICAgICAg
IE5TU2Nyb2xsZXJJbXAgKm5ld1ZlcnRpY2FsUGFpbnRlciA9IFtOU1Njcm9sbGVySW1wIHNjcm9s
bGVySW1wV2l0aFN0eWxlOm5ld1N0eWxlIGNvbnRyb2xTaXplOihOU0NvbnRyb2xTaXplKXZlcnRp
Y2FsU2Nyb2xsYmFyLT5jb250cm9sU2l6ZSgpIGhvcml6b250YWw6Tk8gcmVwbGFjaW5nU2Nyb2xs
ZXJJbXA6b2xkVmVydGljYWxQYWludGVyXTsKKyAgICAgICAgbV9zY3JvbGxhYmxlQXJlYS5zZXRT
Y3JvbGxiYXJEaXJlY3Rpb24obmV3VmVydGljYWxQYWludGVyKTsKIAogICAgICAgICBbbV9zY3Jv
bGxiYXJQYWludGVyQ29udHJvbGxlciBzZXRWZXJ0aWNhbFNjcm9sbGVySW1wOm5ld1ZlcnRpY2Fs
UGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQYWludGVyRm9yU2Nyb2xsYmFyKCp2
ZXJ0aWNhbFNjcm9sbGJhciwgbmV3VmVydGljYWxQYWludGVyKTsKQEAgLTEzMjAsNiArMTMyMSw3
IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQogCiAgICAg
ICAgIE5TU2Nyb2xsZXJJbXAgKm9sZEhvcml6b250YWxQYWludGVyID0gW21fc2Nyb2xsYmFyUGFp
bnRlckNvbnRyb2xsZXIgaG9yaXpvbnRhbFNjcm9sbGVySW1wXTsKICAgICAgICAgTlNTY3JvbGxl
ckltcCAqbmV3SG9yaXpvbnRhbFBhaW50ZXIgPSBbTlNTY3JvbGxlckltcCBzY3JvbGxlckltcFdp
dGhTdHlsZTpuZXdTdHlsZSBjb250cm9sU2l6ZTooTlNDb250cm9sU2l6ZSlob3Jpem9udGFsU2Ny
b2xsYmFyLT5jb250cm9sU2l6ZSgpIGhvcml6b250YWw6WUVTIHJlcGxhY2luZ1Njcm9sbGVySW1w
Om9sZEhvcml6b250YWxQYWludGVyXTsKKyAgICAgICAgbV9zY3JvbGxhYmxlQXJlYS5zZXRTY3Jv
bGxiYXJEaXJlY3Rpb24obmV3SG9yaXpvbnRhbFBhaW50ZXIpOwogCiAgICAgICAgIFttX3Njcm9s
bGJhclBhaW50ZXJDb250cm9sbGVyIHNldEhvcml6b250YWxTY3JvbGxlckltcDpuZXdIb3Jpem9u
dGFsUGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQYWludGVyRm9yU2Nyb2xsYmFy
KCpob3Jpem9udGFsU2Nyb2xsYmFyLCBuZXdIb3Jpem9udGFsUGFpbnRlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW0KaW5kZXggMjdlNTVh
ZTk5Njg4MjgxYzg1NDU2MGI2NzdlYzg2ZWY1NTFlZDVkOS4uZGVlNzAxNDMxMTdjZmI4MzNiMmU3
MzQ5ZGMyNmVkMjNmZTRhNDE3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbGFibGVBcmVhTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9TY3JvbGxhYmxlQXJlYU1hYy5tbQpAQCAtNTQsNCArNTQsMTMgQEAgYm9vbCBTY3JvbGxhYmxl
QXJlYTo6c3lzdGVtTGFuZ3VhZ2VJc1JUTCgpCiAjZW5kaWYKIH0KIAordm9pZCBTY3JvbGxhYmxl
QXJlYTo6c2V0U2Nyb2xsYmFyRGlyZWN0aW9uKE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGVyKSBjb25z
dAoreworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDEyMDAKKyAgICBzY3JvbGxlci51c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID0g
dmVydGljYWxTY3JvbGxiYXJJc09uTGVmdCgpID8gTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0
aW9uUmlnaHRUb0xlZnQgOiBOU1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25MZWZ0VG9SaWdo
dDsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1hYy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1hYy5tbQppbmRleCBlODZjMjcy
MzdlNzFmOTZkYWY2NTY5ZWViY2ZlMTg2MDZkNTM2YjczLi5jMWMxMDA3ZDAzNTk2OWNjYmU5YjU2
NDQ4OGE5ZWVjMWFjMmNlMzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsYmFyVGhlbWVNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbGJhclRoZW1lTWFjLm1tCkBAIC0xNjAsNiArMTYwLDcgQEAgdm9pZCBTY3JvbGxiYXJU
aGVtZU1hYzo6cmVnaXN0ZXJTY3JvbGxiYXIoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCiAKICAgICBi
b29sIGlzSG9yaXpvbnRhbCA9IHNjcm9sbGJhci5vcmllbnRhdGlvbigpID09IEhvcml6b250YWxT
Y3JvbGxiYXI7CiAgICAgTlNTY3JvbGxlckltcCAqc2Nyb2xsYmFyUGFpbnRlciA9IFtOU1Njcm9s
bGVySW1wIHNjcm9sbGVySW1wV2l0aFN0eWxlOnJlY29tbWVuZGVkU2Nyb2xsZXJTdHlsZSgpIGNv
bnRyb2xTaXplOnNjcm9sbGJhckNvbnRyb2xTaXplVG9OU0NvbnRyb2xTaXplKHNjcm9sbGJhci5j
b250cm9sU2l6ZSgpKSBob3Jpem9udGFsOmlzSG9yaXpvbnRhbCByZXBsYWNpbmdTY3JvbGxlcklt
cDpuaWxdOworICAgIHNjcm9sbGJhci5zY3JvbGxhYmxlQXJlYSgpLnNldFNjcm9sbGJhckRpcmVj
dGlvbihzY3JvbGxiYXJQYWludGVyKTsKICAgICBzY3JvbGxiYXJNYXAoKS0+YWRkKCZzY3JvbGxi
YXIsIHNjcm9sbGJhclBhaW50ZXIpOwogICAgIHVwZGF0ZUVuYWJsZWRTdGF0ZShzY3JvbGxiYXIp
OwogICAgIHVwZGF0ZVNjcm9sbGJhck92ZXJsYXlTdHlsZShzY3JvbGxiYXIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaAppbmRleCAw
YjYzMThhYzAyNzE3OTFiMTIyN2VmNWMwZTU5OWRjOTgwOTg0MGM2Li44ZGNmYmJiZDUwZDBkNTVk
MmM2MDkyYmYyZmY5MTRiOTc1NjI1MDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaApAQCAtNzksNiArNzksNyBAQCB0eXBlZGVm
IE5TVUludGVnZXIgTlNPdmVybGF5U2Nyb2xsZXJTdGF0ZTsKIEBwcm9wZXJ0eShyZWFkb25seSkg
Q0dGbG9hdCBrbm9iTWluTGVuZ3RoOwogQHByb3BlcnR5KHJlYWRvbmx5KSBDR0Zsb2F0IGtub2JP
dmVybGFwRW5kSW5zZXQ7CiBAcHJvcGVydHkocmVhZG9ubHkpIENHRmxvYXQgdHJhY2tPdmVybGFw
RW5kSW5zZXQ7CitAcHJvcGVydHkgTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHVzZXJJ
bnRlcmZhY2VMYXlvdXREaXJlY3Rpb247CiAtIChOU1JlY3QpcmVjdEZvclBhcnQ6KE5TU2Nyb2xs
ZXJQYXJ0KXBhcnRDb2RlOwogLSAodm9pZClkcmF3S25vYlNsb3RJblJlY3Q6KE5TUmVjdClzbG90
UmVjdCBoaWdobGlnaHQ6KEJPT0wpZmxhZyBhbHBoYTooQ0dGbG9hdClhbHBoYTsKIC0gKHZvaWQp
ZHJhd0tub2JTbG90SW5SZWN0OihOU1JlY3Qpc2xvdFJlY3QgaGlnaGxpZ2h0OihCT09MKWZsYWc7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275078</attachid>
            <date>2016-03-28 19:43:56 -0700</date>
            <delta_ts>2016-03-29 19:45:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155962-20160328194359.patch</filename>
            <type>text/plain</type>
            <size>8732</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk4NzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQ3NGYyNTlkYWFmMGZj
Zjc2YzIzZDZkNGZhYTI3M2YxY2Q1YzJmYy4uNmEzYzlkZjYzNTJmMjg4NmZhNTc3ZjlmNDZhMWVj
NDRiNzAxYjdjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM2IEBACiAyMDE2LTAzLTI4ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKKyAgICAgICAgW09TIFhdIFtS
VEwgU2Nyb2xsYmFyc10gT3ZlcmxheSBSVEwgc2Nyb2xsYmFycyBhbmltYXRlIGluIGZyb20gdGhl
IHdyb25nIHNpZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1NTk2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdlIGNhbiBjb250cm9sIHRoZSBhbmltYXRpb24gZGlyZWN0aW9uIHdpdGggdGhlIE5TU2Ny
b2xsZXJJbXAgcHJvcGVydHkKKyAgICAgICAgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbi4K
KworICAgICAgICBOb3QgdGVzdGFibGUuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxhYmxl
QXJlYS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6c2V0U2Nyb2xsYmFy
RGlyZWN0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6Omhvcml6b250YWxTY3JvbGxiYXIpOgorICAgICAg
ICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OnZlcnRpY2FsU2Nyb2xsYmFyKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjp0aWxlZEJhY2tpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9ySG9yaXpvbnRhbFNjcm9sbGJhcik6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JWZXJ0aWNhbFNjcm9sbGJhcik6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JTY3JvbGxpbmcpOgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yU2Nyb2xsQ29ybmVyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpsYXllckZvck92ZXJoYW5nQXJlYXMpOgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjp1cGRhdGVTY3JvbGxlclN0eWxlKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxhYmxlQXJlYTo6c2V0U2Nyb2xsYmFyRGlyZWN0aW9uKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxiYXJU
aGVtZU1hYzo6cmVnaXN0ZXJTY3JvbGxiYXIpOgorICAgICAgICAqIHBsYXRmb3JtL3NwaS9tYWMv
TlNTY3JvbGxlckltcFNQSS5oOgorCisyMDE2LTAzLTI4ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CisKICAgICAgICAgW1JUTCBTY3JvbGxiYXJzXSBQb3NpdGlvbjpz
dGlja3kgY2FuIGJlIHBvc2l0aW9uZWQgdW5kZXIgdmVydGljYWwgUlRMIHNjcm9sbGJhcgogICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1OTQ5CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oCmluZGV4IDhmOGU4M2MyYTMyZWM3
ZjE3NzM4ODkwNzY4YzViZDZhNGZkODNiNmQuLjMxNWE0NWJiYzY4MDgxYTBmMWJiZDE5ZWUxMGU1
ZGM2NzFiOWJhYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFi
bGVBcmVhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaApA
QCAtMjksNiArMjksMTAgQEAKICNpbmNsdWRlICJTY3JvbGxiYXIuaCIKICNpbmNsdWRlIDx3dGYv
VmVjdG9yLmg+CiAKKyNpZiBQTEFURk9STShDT0NPQSkKK09CSkNfQ0xBU1MgTlNTY3JvbGxlcklt
cDsKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZsb2F0UG9pbnQ7CkBA
IC0xODAsOCArMTg0LDggQEAgcHVibGljOgogICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhckludHJ1
c2lvbigpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEludFNpemUgc2Nyb2xsYmFySW50cnVz
aW9uKCkgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogaG9yaXpvbnRhbFNjcm9sbGJh
cigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogdmVydGljYWxT
Y3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBTY3JvbGxiYXIqIGhv
cml6b250YWxTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVh
bCBTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsg
fQogCiAgICAgY29uc3QgSW50UG9pbnQmIHNjcm9sbE9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1f
c2Nyb2xsT3JpZ2luOyB9CiAgICAgYm9vbCBzY3JvbGxPcmlnaW5DaGFuZ2VkKCkgY29uc3QgeyBy
ZXR1cm4gbV9zY3JvbGxPcmlnaW5DaGFuZ2VkOyB9CkBAIC0yOTMsMTUgKzI5NywxNSBAQCBwdWJs
aWM6CiAgICAgYm9vbCBpc1Bpbm5lZFZlcnRpY2FsbHlJbkRpcmVjdGlvbihpbnQgdmVydGljYWxT
Y3JvbGxEZWx0YSkgY29uc3Q7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgVGlsZWRCYWNraW5nKiB0
aWxlZEJhY2tpbmcoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBUaWxlZEJhY2tp
bmcqIHRpbGVkQmFja2luZygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAgIC8vIFRy
dWUgaWYgc2Nyb2xsaW5nIGhhcHBlbnMgYnkgbW92aW5nIGNvbXBvc2l0aW5nIGxheWVycy4KICAg
ICB2aXJ0dWFsIGJvb2wgdXNlc0NvbXBvc2l0ZWRTY3JvbGxpbmcoKSBjb25zdCB7IHJldHVybiBm
YWxzZTsgfQogICAgIC8vIFRydWUgaWYgdGhlIGNvbnRlbnRzIGNhbiBiZSBzY3JvbGxlZCBhc3lu
Y2hyb25vdXNseSAoaS5lLiBieSBhIFNjcm9sbGluZ0Nvb3JkaW5hdG9yKS4KICAgICB2aXJ0dWFs
IGJvb2wgdXNlc0FzeW5jU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAg
IHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JIb3Jpem9udGFsU2Nyb2xsYmFyKCkgY29u
c3QgeyByZXR1cm4gMDsgfQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JWZXJ0
aWNhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNz
TGF5ZXIqIGxheWVyRm9ySG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIG51bGxw
dHI7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yVmVydGljYWxTY3JvbGxi
YXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CiAKICAgICBib29sIGhhc0xheWVyRm9ySG9y
aXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0OwogICAgIGJvb2wgaGFzTGF5ZXJGb3JWZXJ0aWNhbFNj
cm9sbGJhcigpIGNvbnN0OwpAQCAtMzE0LDYgKzMxOCw5IEBAIHB1YmxpYzoKIAogICAgIGJvb2wg
dmVydGljYWxTY3JvbGxiYXJJc09uTGVmdCgpIGNvbnN0OwogICAgIHN0YXRpYyBib29sIHN5c3Rl
bUxhbmd1YWdlSXNSVEwoKTsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIHNldFNjcm9s
bGJhckRpcmVjdGlvbihOU1Njcm9sbGVySW1wICopIGNvbnN0OworI2VuZGlmCiAKIHByb3RlY3Rl
ZDoKICAgICBXRUJDT1JFX0VYUE9SVCBTY3JvbGxhYmxlQXJlYSgpOwpAQCAtMzI3LDEwICszMzQs
MTAgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBpbnZhbGlkYXRlU2Nyb2xsQ29ybmVy
UmVjdChjb25zdCBJbnRSZWN0JikgPSAwOwogCiAgICAgZnJpZW5kIGNsYXNzIFNjcm9sbGluZ0Nv
b3JkaW5hdG9yOwotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JTY3JvbGxpbmco
KSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAgdmlydHVhbCBHcmFwaGljc0xheWVyKiBsYXllckZv
clNjcm9sbENvcm5lcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNz
TGF5ZXIqIGxheWVyRm9yU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsgfQorICAg
IHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JTY3JvbGxDb3JuZXIoKSBjb25zdCB7IHJl
dHVybiBudWxscHRyOyB9CiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotICAgIHZpcnR1YWwg
R3JhcGhpY3NMYXllciogbGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKCkgY29uc3QgeyByZXR1cm4gMDsg
fQorICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKCkgY29u
c3QgeyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlmCiAKICAgICBib29sIGhhc0xheWVyRm9yU2Ny
b2xsQ29ybmVyKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Ny
b2xsQW5pbWF0b3JNYWMubW0KaW5kZXggNDlhZjg5ODk5NzdiN2U0OTEyODM1YTFlMTkzZTBiZWIy
OTMzMDIyZC4uZmExMTczZWI0ZjQ4YmE5NTgwNjgzZTZiOGMwNzNiNTcxOTM2YzVkYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQpAQCAt
MTMwNCw2ICsxMzA0LDcgQEAgdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJT
dHlsZSgpCiAKICAgICAgICAgTlNTY3JvbGxlckltcCAqb2xkVmVydGljYWxQYWludGVyID0gW21f
c2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXIgdmVydGljYWxTY3JvbGxlckltcF07CiAgICAgICAg
IE5TU2Nyb2xsZXJJbXAgKm5ld1ZlcnRpY2FsUGFpbnRlciA9IFtOU1Njcm9sbGVySW1wIHNjcm9s
bGVySW1wV2l0aFN0eWxlOm5ld1N0eWxlIGNvbnRyb2xTaXplOihOU0NvbnRyb2xTaXplKXZlcnRp
Y2FsU2Nyb2xsYmFyLT5jb250cm9sU2l6ZSgpIGhvcml6b250YWw6Tk8gcmVwbGFjaW5nU2Nyb2xs
ZXJJbXA6b2xkVmVydGljYWxQYWludGVyXTsKKyAgICAgICAgbV9zY3JvbGxhYmxlQXJlYS5zZXRT
Y3JvbGxiYXJEaXJlY3Rpb24obmV3VmVydGljYWxQYWludGVyKTsKIAogICAgICAgICBbbV9zY3Jv
bGxiYXJQYWludGVyQ29udHJvbGxlciBzZXRWZXJ0aWNhbFNjcm9sbGVySW1wOm5ld1ZlcnRpY2Fs
UGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQYWludGVyRm9yU2Nyb2xsYmFyKCp2
ZXJ0aWNhbFNjcm9sbGJhciwgbmV3VmVydGljYWxQYWludGVyKTsKQEAgLTEzMjAsNiArMTMyMSw3
IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQogCiAgICAg
ICAgIE5TU2Nyb2xsZXJJbXAgKm9sZEhvcml6b250YWxQYWludGVyID0gW21fc2Nyb2xsYmFyUGFp
bnRlckNvbnRyb2xsZXIgaG9yaXpvbnRhbFNjcm9sbGVySW1wXTsKICAgICAgICAgTlNTY3JvbGxl
ckltcCAqbmV3SG9yaXpvbnRhbFBhaW50ZXIgPSBbTlNTY3JvbGxlckltcCBzY3JvbGxlckltcFdp
dGhTdHlsZTpuZXdTdHlsZSBjb250cm9sU2l6ZTooTlNDb250cm9sU2l6ZSlob3Jpem9udGFsU2Ny
b2xsYmFyLT5jb250cm9sU2l6ZSgpIGhvcml6b250YWw6WUVTIHJlcGxhY2luZ1Njcm9sbGVySW1w
Om9sZEhvcml6b250YWxQYWludGVyXTsKKyAgICAgICAgbV9zY3JvbGxhYmxlQXJlYS5zZXRTY3Jv
bGxiYXJEaXJlY3Rpb24obmV3SG9yaXpvbnRhbFBhaW50ZXIpOwogCiAgICAgICAgIFttX3Njcm9s
bGJhclBhaW50ZXJDb250cm9sbGVyIHNldEhvcml6b250YWxTY3JvbGxlckltcDpuZXdIb3Jpem9u
dGFsUGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQYWludGVyRm9yU2Nyb2xsYmFy
KCpob3Jpem9udGFsU2Nyb2xsYmFyLCBuZXdIb3Jpem9udGFsUGFpbnRlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYWJsZUFyZWFNYWMubW0KaW5kZXggMjdlNTVh
ZTk5Njg4MjgxYzg1NDU2MGI2NzdlYzg2ZWY1NTFlZDVkOS4uYjhkMmE4MjcyYmZmNDBhODgwNmMz
MDlhMzBlMDA5NDE1ZGFkMGE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbGFibGVBcmVhTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9TY3JvbGxhYmxlQXJlYU1hYy5tbQpAQCAtNTQsNCArNTQsMTMgQEAgYm9vbCBTY3JvbGxhYmxl
QXJlYTo6c3lzdGVtTGFuZ3VhZ2VJc1JUTCgpCiAjZW5kaWYKIH0KIAordm9pZCBTY3JvbGxhYmxl
QXJlYTo6c2V0U2Nyb2xsYmFyRGlyZWN0aW9uKE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGVyKSBjb25z
dAoreworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDEyMDAKKyAgICBzY3JvbGxlci51c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID0g
dmVydGljYWxTY3JvbGxiYXJJc09uTGVmdCgpID8gTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0
aW9uUmlnaHRUb0xlZnQgOiBOU1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25MZWZ0VG9SaWdo
dDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKHNjcm9sbGVyKTsKKyNlbmRpZgorfQorCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW0KaW5k
ZXggZTg2YzI3MjM3ZTcxZjk2ZGFmNjU2OWVlYmNmZTE4NjA2ZDUzNmI3My4uYzFjMTAwN2QwMzU5
NjljY2JlOWI1NjQ0ODhhOWVlYzFhYzJjZTM3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1hYy5tbQpAQCAtMTYwLDYgKzE2MCw3IEBAIHZvaWQg
U2Nyb2xsYmFyVGhlbWVNYWM6OnJlZ2lzdGVyU2Nyb2xsYmFyKFNjcm9sbGJhciYgc2Nyb2xsYmFy
KQogCiAgICAgYm9vbCBpc0hvcml6b250YWwgPSBzY3JvbGxiYXIub3JpZW50YXRpb24oKSA9PSBI
b3Jpem9udGFsU2Nyb2xsYmFyOwogICAgIE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGJhclBhaW50ZXIg
PSBbTlNTY3JvbGxlckltcCBzY3JvbGxlckltcFdpdGhTdHlsZTpyZWNvbW1lbmRlZFNjcm9sbGVy
U3R5bGUoKSBjb250cm9sU2l6ZTpzY3JvbGxiYXJDb250cm9sU2l6ZVRvTlNDb250cm9sU2l6ZShz
Y3JvbGxiYXIuY29udHJvbFNpemUoKSkgaG9yaXpvbnRhbDppc0hvcml6b250YWwgcmVwbGFjaW5n
U2Nyb2xsZXJJbXA6bmlsXTsKKyAgICBzY3JvbGxiYXIuc2Nyb2xsYWJsZUFyZWEoKS5zZXRTY3Jv
bGxiYXJEaXJlY3Rpb24oc2Nyb2xsYmFyUGFpbnRlcik7CiAgICAgc2Nyb2xsYmFyTWFwKCktPmFk
ZCgmc2Nyb2xsYmFyLCBzY3JvbGxiYXJQYWludGVyKTsKICAgICB1cGRhdGVFbmFibGVkU3RhdGUo
c2Nyb2xsYmFyKTsKICAgICB1cGRhdGVTY3JvbGxiYXJPdmVybGF5U3R5bGUoc2Nyb2xsYmFyKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9tYWMvTlNTY3JvbGxlcklt
cFNQSS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJ
LmgKaW5kZXggMGI2MzE4YWMwMjcxNzkxYjEyMjdlZjVjMGU1OTlkYzk4MDk4NDBjNi4uOGRjZmJi
YmQ1MGQwZDU1ZDJjNjA5MmJmMmZmOTE0Yjk3NTYyNTAwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmgKQEAgLTc5LDYgKzc5LDcg
QEAgdHlwZWRlZiBOU1VJbnRlZ2VyIE5TT3ZlcmxheVNjcm9sbGVyU3RhdGU7CiBAcHJvcGVydHko
cmVhZG9ubHkpIENHRmxvYXQga25vYk1pbkxlbmd0aDsKIEBwcm9wZXJ0eShyZWFkb25seSkgQ0dG
bG9hdCBrbm9iT3ZlcmxhcEVuZEluc2V0OwogQHByb3BlcnR5KHJlYWRvbmx5KSBDR0Zsb2F0IHRy
YWNrT3ZlcmxhcEVuZEluc2V0OworQHByb3BlcnR5IE5TVXNlckludGVyZmFjZUxheW91dERpcmVj
dGlvbiB1c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uOwogLSAoTlNSZWN0KXJlY3RGb3JQYXJ0
OihOU1Njcm9sbGVyUGFydClwYXJ0Q29kZTsKIC0gKHZvaWQpZHJhd0tub2JTbG90SW5SZWN0OihO
U1JlY3Qpc2xvdFJlY3QgaGlnaGxpZ2h0OihCT09MKWZsYWcgYWxwaGE6KENHRmxvYXQpYWxwaGE7
CiAtICh2b2lkKWRyYXdLbm9iU2xvdEluUmVjdDooTlNSZWN0KXNsb3RSZWN0IGhpZ2hsaWdodDoo
Qk9PTClmbGFnOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275166</attachid>
            <date>2016-03-29 19:46:02 -0700</date>
            <delta_ts>2016-03-29 21:27:24 -0700</delta_ts>
            <desc>Needs to disable Settings::setMockScrollbarsEnabled</desc>
            <filename>bug-155962-20160329194605.patch</filename>
            <type>text/plain</type>
            <size>10552</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk4ODE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjA3N2VmMGJhMzMwZGIz
ODU5NmQyYjY5MDA1MjJmMzJlZDgzOTFmNi4uYmJjMzliMzJiZjdlOGU3NTMxYWY2NjZhN2M1Mzk1
NzI4NTZhM2RmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTAzLTI5ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW09TIFhdIFtS
VEwgU2Nyb2xsYmFyc10gT3ZlcmxheSBSVEwgc2Nyb2xsYmFycyBhbmltYXRlIGluIGZyb20gdGhl
IHdyb25nIHNpZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1NTk2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cyAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYWJs
ZUFyZWEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpob3Jpem9udGFsU2Ny
b2xsYmFyKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjp2ZXJ0aWNhbFNjcm9s
bGJhcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6dGlsZWRCYWNraW5nKToK
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpsYXllckZvckhvcml6b250YWxTY3Jv
bGxiYXIpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yVmVydGlj
YWxTY3JvbGxiYXIpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9y
U2Nyb2xsaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVBcmVhOjpsYXllckZvclNj
cm9sbENvcm5lcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JP
dmVyaGFuZ0FyZWFzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMu
bW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJT
dHlsZSk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmg6CisgICAg
ICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsYmFyVGhlbWVNYWM6OmRpZENyZWF0ZVNjcm9sbGVySW1wKToKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbGJhclRoZW1lTWFjOjpyZWdpc3RlclNjcm9sbGJhcik6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxiYXJUaGVtZU1hYzo6c2Nyb2xsYmFyUGFpbnRlcklzUlRMKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaDoKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3cml0ZSk6CisK
IDIwMTYtMDMtMjkgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4K
IAogICAgICAgICBSRUdSRVNTSU9OIChyMTk4NzgyKTogQ0dJbWFnZVNvdXJjZVVwZGF0ZURhdGEo
KSBpcyBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBkYXRhIGV2ZXJ5IHRpbWUgSW1hZ2VTb3Vy
Y2U6OnNldERhdGEoKSBpcyBjYWxsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbGFibGVBcmVhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxl
QXJlYS5oCmluZGV4IDhmOGU4M2MyYTMyZWM3ZjE3NzM4ODkwNzY4YzViZDZhNGZkODNiNmQuLmU3
MjU2YjEwYjE2ZTYzN2E1MzQ2MzliNDY1N2Q3MWI1M2ZhY2FmYjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaApAQCAtMTgwLDggKzE4MCw4IEBAIHB1YmxpYzoKICAg
ICBpbnQgdmVydGljYWxTY3JvbGxiYXJJbnRydXNpb24oKSBjb25zdDsKICAgICBXRUJDT1JFX0VY
UE9SVCBJbnRTaXplIHNjcm9sbGJhckludHJ1c2lvbigpIGNvbnN0OwogCi0gICAgdmlydHVhbCBT
Y3JvbGxiYXIqIGhvcml6b250YWxTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAg
dmlydHVhbCBTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gMDsg
fQorICAgIHZpcnR1YWwgU2Nyb2xsYmFyKiBob3Jpem9udGFsU2Nyb2xsYmFyKCkgY29uc3QgeyBy
ZXR1cm4gbnVsbHB0cjsgfQorICAgIHZpcnR1YWwgU2Nyb2xsYmFyKiB2ZXJ0aWNhbFNjcm9sbGJh
cigpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAgIGNvbnN0IEludFBvaW50JiBzY3Jv
bGxPcmlnaW4oKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbE9yaWdpbjsgfQogICAgIGJvb2wgc2Ny
b2xsT3JpZ2luQ2hhbmdlZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsT3JpZ2luQ2hhbmdlZDsg
fQpAQCAtMjkzLDE1ICsyOTMsMTUgQEAgcHVibGljOgogICAgIGJvb2wgaXNQaW5uZWRWZXJ0aWNh
bGx5SW5EaXJlY3Rpb24oaW50IHZlcnRpY2FsU2Nyb2xsRGVsdGEpIGNvbnN0OwogI2VuZGlmCiAK
LSAgICB2aXJ0dWFsIFRpbGVkQmFja2luZyogdGlsZWRCYWNraW5nKCkgY29uc3QgeyByZXR1cm4g
MDsgfQorICAgIHZpcnR1YWwgVGlsZWRCYWNraW5nKiB0aWxlZEJhY2tpbmcoKSBjb25zdCB7IHJl
dHVybiBudWxscHRyOyB9CiAKICAgICAvLyBUcnVlIGlmIHNjcm9sbGluZyBoYXBwZW5zIGJ5IG1v
dmluZyBjb21wb3NpdGluZyBsYXllcnMuCiAgICAgdmlydHVhbCBib29sIHVzZXNDb21wb3NpdGVk
U2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICAvLyBUcnVlIGlmIHRoZSBj
b250ZW50cyBjYW4gYmUgc2Nyb2xsZWQgYXN5bmNocm9ub3VzbHkgKGkuZS4gYnkgYSBTY3JvbGxp
bmdDb29yZGluYXRvcikuCiAgICAgdmlydHVhbCBib29sIHVzZXNBc3luY1Njcm9sbGluZygpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVy
Rm9ySG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLSAgICB2aXJ0dWFs
IEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVy
biAwOyB9CisgICAgdmlydHVhbCBHcmFwaGljc0xheWVyKiBsYXllckZvckhvcml6b250YWxTY3Jv
bGxiYXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVhbCBHcmFwaGljc0xh
eWVyKiBsYXllckZvclZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsg
fQogCiAgICAgYm9vbCBoYXNMYXllckZvckhvcml6b250YWxTY3JvbGxiYXIoKSBjb25zdDsKICAg
ICBib29sIGhhc0xheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSBjb25zdDsKQEAgLTMyNywxMCAr
MzI3LDEwIEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgaW52YWxpZGF0ZVNjcm9sbENv
cm5lclJlY3QoY29uc3QgSW50UmVjdCYpID0gMDsKIAogICAgIGZyaWVuZCBjbGFzcyBTY3JvbGxp
bmdDb29yZGluYXRvcjsKLSAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yU2Nyb2xs
aW5nKCkgY29uc3QgeyByZXR1cm4gMDsgfQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5
ZXJGb3JTY3JvbGxDb3JuZXIoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBHcmFw
aGljc0xheWVyKiBsYXllckZvclNjcm9sbGluZygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0K
KyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yU2Nyb2xsQ29ybmVyKCkgY29uc3Qg
eyByZXR1cm4gbnVsbHB0cjsgfQogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICB2aXJ0
dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yT3ZlcmhhbmdBcmVhcygpIGNvbnN0IHsgcmV0dXJu
IDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yT3ZlcmhhbmdBcmVhcygp
IGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KICNlbmRpZgogCiAgICAgYm9vbCBoYXNMYXllckZv
clNjcm9sbENvcm5lcigpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLm1tCmluZGV4IDBkMDRjMmUwMTE2ZDgzY2JiMTRiNjEyYzg1N2Jm
NDY3MzY5MjBmNzMuLjQ1OTUxYTI2ZmU1YWUzY2FhMWNiNjNjMGIwNzk2MGU2Mzk2OTkzZTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0K
QEAgLTEzMDMsNiArMTMwMyw3IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9s
bGVyU3R5bGUoKQogCiAgICAgICAgIFttX3Njcm9sbGVySW1wUGFpciBzZXRWZXJ0aWNhbFNjcm9s
bGVySW1wOm5ld1ZlcnRpY2FsUGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQYWlu
dGVyRm9yU2Nyb2xsYmFyKCp2ZXJ0aWNhbFNjcm9sbGJhciwgbmV3VmVydGljYWxQYWludGVyKTsK
KyAgICAgICAgbWFjVGhlbWUtPmRpZENyZWF0ZVNjcm9sbGVySW1wKCp2ZXJ0aWNhbFNjcm9sbGJh
cik7CiAKICAgICAgICAgLy8gVGhlIGRpZmZlcmVudCBzY3JvbGxiYXIgc3R5bGVzIGhhdmUgZGlm
ZmVyZW50IHRoaWNrbmVzc2VzLCBzbyB3ZSBtdXN0IHJlLXNldCB0aGUgCiAgICAgICAgIC8vIGZy
YW1lUmVjdCB0byB0aGUgbmV3IHRoaWNrbmVzcywgYW5kIHRoZSByZS1sYXlvdXQgYmVsb3cgd2ls
bCBlbnN1cmUgdGhlIHBvc2l0aW9uCkBAIC0xMzE5LDYgKzEzMjAsNyBAQCB2b2lkIFNjcm9sbEFu
aW1hdG9yTWFjOjp1cGRhdGVTY3JvbGxlclN0eWxlKCkKIAogICAgICAgICBbbV9zY3JvbGxlcklt
cFBhaXIgc2V0SG9yaXpvbnRhbFNjcm9sbGVySW1wOm5ld0hvcml6b250YWxQYWludGVyXTsKICAg
ICAgICAgbWFjVGhlbWUtPnNldE5ld1BhaW50ZXJGb3JTY3JvbGxiYXIoKmhvcml6b250YWxTY3Jv
bGxiYXIsIG5ld0hvcml6b250YWxQYWludGVyKTsKKyAgICAgICAgbWFjVGhlbWUtPmRpZENyZWF0
ZVNjcm9sbGVySW1wKCpob3Jpem9udGFsU2Nyb2xsYmFyKTsKIAogICAgICAgICAvLyBUaGUgZGlm
ZmVyZW50IHNjcm9sbGJhciBzdHlsZXMgaGF2ZSBkaWZmZXJlbnQgdGhpY2tuZXNzZXMsIHNvIHdl
IG11c3QgcmUtc2V0IHRoZSAKICAgICAgICAgLy8gZnJhbWVSZWN0IHRvIHRoZSBuZXcgdGhpY2tu
ZXNzLCBhbmQgdGhlIHJlLWxheW91dCBiZWxvdyB3aWxsIGVuc3VyZSB0aGUgcG9zaXRpb24KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1hYy5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKaW5kZXgg
ZTk5MmExNTI5MzNiYjc2YmYxMDZiOGVlZjcyOGIzOWM2OWExNmM3NS4uYzA2ZDBhODQwZTMyZDU2
YzE5NTJiNjQ2NThiMDM5MzljYjEwODE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKQEAgLTY0LDYgKzY0LDEwIEBAIHB1YmxpYzoKICAg
ICBzdGF0aWMgYm9vbCBpc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXIoKTsKICAgICBzdGF0aWMg
dm9pZCBzZXRJc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXIoYm9vbCk7CiAKKyAgICB2b2lkIGRp
ZENyZWF0ZVNjcm9sbGVySW1wKFNjcm9sbGJhciYpOworCisgICAgYm9vbCBzY3JvbGxiYXJQYWlu
dGVySXNSVEwoU2Nyb2xsYmFyJik7CisKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCiAgICAg
V0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0VXBPdmVyaGFuZ0FyZWFCYWNrZ3JvdW5kKENB
TGF5ZXIgKiwgY29uc3QgQ29sb3ImIGN1c3RvbUJhY2tncm91bmRDb2xvciA9IENvbG9yKCkpOwog
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHJlbW92ZU92ZXJoYW5nQXJlYUJhY2tncm91
bmQoQ0FMYXllciAqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9T
Y3JvbGxiYXJUaGVtZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxi
YXJUaGVtZU1hYy5tbQppbmRleCBhMjYwNDExOThlYzBkZDUzYmJjMjY4ZGNkOTI5YWVjYzU3Yzgw
ZTUyLi40OTMwYjBlOWU4MTI5YTBmYjA2OTA3ZTc2NzVlNTRiNzQwYjM5ZTBkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW0KKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tCkBAIC0xNTMs
NiArMTUzLDE3IEBAIHN0YXRpYyBOU0NvbnRyb2xTaXplIHNjcm9sbGJhckNvbnRyb2xTaXplVG9O
U0NvbnRyb2xTaXplKFNjcm9sbGJhckNvbnRyb2xTaXplIGNvCiAjcHJhZ21hIGNsYW5nIGRpYWdu
b3N0aWMgcG9wCiB9CiAKK3ZvaWQgU2Nyb2xsYmFyVGhlbWVNYWM6OmRpZENyZWF0ZVNjcm9sbGVy
SW1wKFNjcm9sbGJhciYgc2Nyb2xsYmFyKQoreworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNf
T1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBOU1Njcm9sbGVySW1wICpz
Y3JvbGxlckltcCA9IHBhaW50ZXJGb3JTY3JvbGxiYXIoc2Nyb2xsYmFyKTsKKyAgICBBU1NFUlQo
c2Nyb2xsZXJJbXApOworICAgIHNjcm9sbGVySW1wLnVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rp
b24gPSBzY3JvbGxiYXIuc2Nyb2xsYWJsZUFyZWEoKS52ZXJ0aWNhbFNjcm9sbGJhcklzT25MZWZ0
KCkgPyBOU1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25SaWdodFRvTGVmdCA6IE5TVXNlcklu
dGVyZmFjZUxheW91dERpcmVjdGlvbkxlZnRUb1JpZ2h0OworI2Vsc2UKKyAgICBVTlVTRURfUEFS
QU0oc2Nyb2xsYmFyKTsKKyNlbmRpZgorfQorCiB2b2lkIFNjcm9sbGJhclRoZW1lTWFjOjpyZWdp
c3RlclNjcm9sbGJhcihTY3JvbGxiYXImIHNjcm9sbGJhcikKIHsKICAgICBpZiAoc2Nyb2xsYmFy
LmlzQ3VzdG9tU2Nyb2xsYmFyKCkpCkBAIC0xNjEsNiArMTcyLDcgQEAgdm9pZCBTY3JvbGxiYXJU
aGVtZU1hYzo6cmVnaXN0ZXJTY3JvbGxiYXIoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCiAgICAgYm9v
bCBpc0hvcml6b250YWwgPSBzY3JvbGxiYXIub3JpZW50YXRpb24oKSA9PSBIb3Jpem9udGFsU2Ny
b2xsYmFyOwogICAgIE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGVySW1wID0gW05TU2Nyb2xsZXJJbXAg
c2Nyb2xsZXJJbXBXaXRoU3R5bGU6cmVjb21tZW5kZWRTY3JvbGxlclN0eWxlKCkgY29udHJvbFNp
emU6c2Nyb2xsYmFyQ29udHJvbFNpemVUb05TQ29udHJvbFNpemUoc2Nyb2xsYmFyLmNvbnRyb2xT
aXplKCkpIGhvcml6b250YWw6aXNIb3Jpem9udGFsIHJlcGxhY2luZ1Njcm9sbGVySW1wOm5pbF07
CiAgICAgc2Nyb2xsYmFyTWFwKCktPmFkZCgmc2Nyb2xsYmFyLCBzY3JvbGxlckltcCk7CisgICAg
ZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoc2Nyb2xsYmFyKTsKICAgICB1cGRhdGVFbmFibGVkU3RhdGUo
c2Nyb2xsYmFyKTsKICAgICB1cGRhdGVTY3JvbGxiYXJPdmVybGF5U3R5bGUoc2Nyb2xsYmFyKTsK
IH0KQEAgLTE4Miw2ICsxOTQsMTggQEAgTlNTY3JvbGxlckltcCAqU2Nyb2xsYmFyVGhlbWVNYWM6
OnBhaW50ZXJGb3JTY3JvbGxiYXIoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCiAgICAgcmV0dXJuIHNj
cm9sbGJhck1hcCgpLT5nZXQoJnNjcm9sbGJhcikuZ2V0KCk7CiB9CiAKK2Jvb2wgU2Nyb2xsYmFy
VGhlbWVNYWM6OnNjcm9sbGJhclBhaW50ZXJJc1JUTChTY3JvbGxiYXImIHNjcm9sbGJhcikKK3sK
KyNpZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTAxMjAwCisgICAgTlNTY3JvbGxlckltcCAqc2Nyb2xsZXJJbXAgPSBwYWludGVyRm9yU2Nyb2xs
YmFyKHNjcm9sbGJhcik7CisgICAgQVNTRVJUKHNjcm9sbGVySW1wKTsKKyAgICByZXR1cm4gc2Ny
b2xsZXJJbXAudXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiA9PSBOU1VzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb25SaWdodFRvTGVmdDsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKHNjcm9s
bGJhcik7CisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKIHN0YXRpYyBib29sIGdfaXND
dXJyZW50bHlEcmF3aW5nSW50b0xheWVyOwogICAgIAogYm9vbCBTY3JvbGxiYXJUaGVtZU1hYzo6
aXNDdXJyZW50bHlEcmF3aW5nSW50b0xheWVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3NwaS9tYWMvTlNTY3JvbGxlckltcFNQSS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmgKaW5kZXggMGI2MzE4YWMwMjcxNzkxYjEy
MjdlZjVjMGU1OTlkYzk4MDk4NDBjNi4uOGRjZmJiYmQ1MGQwZDU1ZDJjNjA5MmJmMmZmOTE0Yjk3
NTYyNTAwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Nj
cm9sbGVySW1wU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Nj
cm9sbGVySW1wU1BJLmgKQEAgLTc5LDYgKzc5LDcgQEAgdHlwZWRlZiBOU1VJbnRlZ2VyIE5TT3Zl
cmxheVNjcm9sbGVyU3RhdGU7CiBAcHJvcGVydHkocmVhZG9ubHkpIENHRmxvYXQga25vYk1pbkxl
bmd0aDsKIEBwcm9wZXJ0eShyZWFkb25seSkgQ0dGbG9hdCBrbm9iT3ZlcmxhcEVuZEluc2V0Owog
QHByb3BlcnR5KHJlYWRvbmx5KSBDR0Zsb2F0IHRyYWNrT3ZlcmxhcEVuZEluc2V0OworQHByb3Bl
cnR5IE5TVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiB1c2VySW50ZXJmYWNlTGF5b3V0RGly
ZWN0aW9uOwogLSAoTlNSZWN0KXJlY3RGb3JQYXJ0OihOU1Njcm9sbGVyUGFydClwYXJ0Q29kZTsK
IC0gKHZvaWQpZHJhd0tub2JTbG90SW5SZWN0OihOU1JlY3Qpc2xvdFJlY3QgaGlnaGxpZ2h0OihC
T09MKWZsYWcgYWxwaGE6KENHRmxvYXQpYWxwaGE7CiAtICh2b2lkKWRyYXdLbm9iU2xvdEluUmVj
dDooTlNSZWN0KXNsb3RSZWN0IGhpZ2hsaWdodDooQk9PTClmbGFnOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCmluZGV4IDE3Y2UwN2IzZTE1MWQxYzVh
Mzk3Y2U4NzkyNjAzZWUwZTkxODM2YWQuLmMwODQxMDQ1NmFiMWQwY2M5Y2MzM2RlYWM5ODFkNDJm
MjQwNGJhMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVl
QXNUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4
dC5jcHAKQEAgLTcyLDYgKzcyLDEwIEBACiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1
ZGUgPHd0Zi91bmljb2RlL0NoYXJhY3Rlck5hbWVzLmg+CiAKKyNpZiBQTEFURk9STShNQUMpCisj
aW5jbHVkZSAiU2Nyb2xsYmFyVGhlbWVNYWMuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIHVzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7CkBAIC02MjEsNiArNjI1LDE0IEBAIHN0
YXRpYyB2b2lkIHdyaXRlKFRleHRTdHJlYW0mIHRzLCBjb25zdCBSZW5kZXJMYXllciYgbGF5ZXIs
IGNvbnN0IExheW91dFJlY3QmIGxhCiAgICAgICAgICAgICB0cyA8PCAiIHNjcm9sbFdpZHRoICIg
PDwgbGF5ZXIuc2Nyb2xsV2lkdGgoKTsKICAgICAgICAgaWYgKGxheWVyLnJlbmRlckJveCgpICYm
IHJvdW5kVG9JbnQobGF5ZXIucmVuZGVyQm94KCktPmNsaWVudEhlaWdodCgpKSAhPSBsYXllci5z
Y3JvbGxIZWlnaHQoKSkKICAgICAgICAgICAgIHRzIDw8ICIgc2Nyb2xsSGVpZ2h0ICIgPDwgbGF5
ZXIuc2Nyb2xsSGVpZ2h0KCk7CisjaWYgUExBVEZPUk0oTUFDKQorICAgICAgICBTY3JvbGxiYXJU
aGVtZSYgc2Nyb2xsYmFyVGhlbWUgPSBTY3JvbGxiYXJUaGVtZTo6dGhlbWUoKTsKKyAgICAgICAg
aWYgKCFzY3JvbGxiYXJUaGVtZS5pc01vY2tUaGVtZSgpICYmIGxheWVyLmhhc1ZlcnRpY2FsU2Ny
b2xsYmFyKCkpIHsKKyAgICAgICAgICAgIFNjcm9sbGJhclRoZW1lTWFjJiBtYWNUaGVtZSA9ICpz
dGF0aWNfY2FzdDxTY3JvbGxiYXJUaGVtZU1hYyo+KCZzY3JvbGxiYXJUaGVtZSk7CisgICAgICAg
ICAgICBpZiAobWFjVGhlbWUuc2Nyb2xsYmFyUGFpbnRlcklzUlRMKCpsYXllci52ZXJ0aWNhbFNj
cm9sbGJhcigpKSkKKyAgICAgICAgICAgICAgICB0cyA8PCAiIFJUTCI7CisgICAgICAgIH0KKyNl
bmRpZgogICAgIH0KIAogICAgIGlmIChwYWludFBoYXNlID09IExheWVyUGFpbnRQaGFzZUJhY2tn
cm91bmQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275178</attachid>
            <date>2016-03-29 21:27:27 -0700</date>
            <delta_ts>2016-03-30 09:09:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-155962-20160329212731.patch</filename>
            <type>text/plain</type>
            <size>15870</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk4ODE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjA3N2VmMGJhMzMwZGIz
ODU5NmQyYjY5MDA1MjJmMzJlZDgzOTFmNi4uZTRjMDA1NWUxMzE1Y2I1MzhkZTM4NGFmMWFlZDAx
ZmJkMTNlMWVlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE2LTAzLTI5ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW09TIFhdIFtS
VEwgU2Nyb2xsYmFyc10gT3ZlcmxheSBSVEwgc2Nyb2xsYmFycyBhbmltYXRlIGluIGZyb20gdGhl
IHdyb25nIHNpZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1NTk2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdlIGNhbiBjb250cm9sIHRoZSBhbmltYXRpb24gZGlyZWN0aW9uIHdpdGggdGhlIE5TU2Ny
b2xsZXJJbXAgcHJvcGVydHkKKyAgICAgICAgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbi4K
KworICAgICAgICBUaGlzIHBhdGNoIGFsc28gYWRkcyBhbiBJbnRlcm5hbHMgZnVuY3Rpb24gdG8g
c2V0IHdoZXRoZXIgb3Igbm90IHdlCisgICAgICAgIHNob3VsZCBtb2NrIHRoZSBzY3JvbGxiYXJz
LiBOb3QgbW9ja2luZyB0aGUgc2Nyb2xsYmFycyBpcyByZXF1aXJlZAorICAgICAgICB0byB1c2Ug
TlNTY3JvbGxlckltcHMuCisKKyAgICAgICAgVGVzdDogZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9s
bGJhcnMtYW5pbWF0aW9uLXByb3BlcnR5Lmh0bWwKKworICAgICAgICAqIHBsYXRmb3JtL1Njcm9s
bGFibGVBcmVhLmg6IFVzZSBudWxscHRyIGluc3RlYWQgb2YgMC4KKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGFibGVBcmVhOjpob3Jpem9udGFsU2Nyb2xsYmFyKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGFibGVBcmVhOjp2ZXJ0aWNhbFNjcm9sbGJhcik6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxhYmxlQXJlYTo6dGlsZWRCYWNraW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFi
bGVBcmVhOjpsYXllckZvckhvcml6b250YWxTY3JvbGxiYXIpOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIpOgorICAgICAgICAoV2Vi
Q29yZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yU2Nyb2xsaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbGFibGVBcmVhOjpsYXllckZvclNjcm9sbENvcm5lcik6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJTdHlsZSk6IFNldCB0aGUgZGlyZWN0aW9uCisg
ICAgICAgIG9mIHRoZSBuZXcgTlNTY3JvbGxlckltcHMuCisgICAgICAgICogcGxhdGZvcm0vbWFj
L1Njcm9sbGJhclRoZW1lTWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRo
ZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyVGhlbWVNYWM6OmRpZENyZWF0
ZVNjcm9sbGVySW1wKTogU2V0IHRoZSBkaXJlY3Rpb24KKyAgICAgICAgb2YgYW4gTlNTY3JvbGxl
ckltcC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhclRoZW1lTWFjOjpyZWdpc3RlclNjcm9s
bGJhcik6IENhbGwKKyAgICAgICAgZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoKS4KKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbGJhclRoZW1lTWFjOjpzY3JvbGxiYXJQYWludGVySXNSVEwpOiBVc2VkIGZv
ciB0ZXN0aW5nLAorICAgICAgICB0byB0ZWxsIGlmIHRoZSBzY3JvbGxlcidzIGRpcmVjdGlvbiBp
cyBSVEwuCisgICAgICAgICogcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmg6Cisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6d3JpdGUpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkludGVybmFsczo6c2V0TW9ja1Njcm9sbGJhcnNFbmFibGVkKTogVXNlZCBmb3IgdGVz
dGluZy4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3Rpbmcv
SW50ZXJuYWxzLmlkbDoKKwogMjAxNi0wMy0yOSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhh
bGxhd2FAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04gKHIxOTg3ODIpOiBDR0ltYWdl
U291cmNlVXBkYXRlRGF0YSgpIGlzIGNhbGxlZCB0d2ljZSB3aXRoIHRoZSBzYW1lIGRhdGEgZXZl
cnkgdGltZSBJbWFnZVNvdXJjZTo6c2V0RGF0YSgpIGlzIGNhbGxlZApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbGFibGVBcmVhLmgKaW5kZXggOGY4ZTgzYzJhMzJlYzdmMTc3Mzg4OTA3Njhj
NWJkNmE0ZmQ4M2I2ZC4uZTcyNTZiMTBiMTZlNjM3YTUzNDYzOWI0NjU3ZDcxYjUzZmFjYWZiOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oCkBAIC0xODAsOCArMTgw
LDggQEAgcHVibGljOgogICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhckludHJ1c2lvbigpIGNvbnN0
OwogICAgIFdFQkNPUkVfRVhQT1JUIEludFNpemUgc2Nyb2xsYmFySW50cnVzaW9uKCkgY29uc3Q7
CiAKLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogaG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsg
cmV0dXJuIDA7IH0KLSAgICB2aXJ0dWFsIFNjcm9sbGJhciogdmVydGljYWxTY3JvbGxiYXIoKSBj
b25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBTY3JvbGxiYXIqIGhvcml6b250YWxTY3Jv
bGxiYXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVhbCBTY3JvbGxiYXIq
IHZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsgfQogCiAgICAgY29u
c3QgSW50UG9pbnQmIHNjcm9sbE9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsT3JpZ2lu
OyB9CiAgICAgYm9vbCBzY3JvbGxPcmlnaW5DaGFuZ2VkKCkgY29uc3QgeyByZXR1cm4gbV9zY3Jv
bGxPcmlnaW5DaGFuZ2VkOyB9CkBAIC0yOTMsMTUgKzI5MywxNSBAQCBwdWJsaWM6CiAgICAgYm9v
bCBpc1Bpbm5lZFZlcnRpY2FsbHlJbkRpcmVjdGlvbihpbnQgdmVydGljYWxTY3JvbGxEZWx0YSkg
Y29uc3Q7CiAjZW5kaWYKIAotICAgIHZpcnR1YWwgVGlsZWRCYWNraW5nKiB0aWxlZEJhY2tpbmco
KSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBUaWxlZEJhY2tpbmcqIHRpbGVkQmFj
a2luZygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAgIC8vIFRydWUgaWYgc2Nyb2xs
aW5nIGhhcHBlbnMgYnkgbW92aW5nIGNvbXBvc2l0aW5nIGxheWVycy4KICAgICB2aXJ0dWFsIGJv
b2wgdXNlc0NvbXBvc2l0ZWRTY3JvbGxpbmcoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAg
IC8vIFRydWUgaWYgdGhlIGNvbnRlbnRzIGNhbiBiZSBzY3JvbGxlZCBhc3luY2hyb25vdXNseSAo
aS5lLiBieSBhIFNjcm9sbGluZ0Nvb3JkaW5hdG9yKS4KICAgICB2aXJ0dWFsIGJvb2wgdXNlc0Fz
eW5jU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwgR3Jh
cGhpY3NMYXllciogbGF5ZXJGb3JIb3Jpem9udGFsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4g
MDsgfQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JWZXJ0aWNhbFNjcm9sbGJh
cigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVy
Rm9ySG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KKyAgICB2
aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSBjb25zdCB7
IHJldHVybiBudWxscHRyOyB9CiAKICAgICBib29sIGhhc0xheWVyRm9ySG9yaXpvbnRhbFNjcm9s
bGJhcigpIGNvbnN0OwogICAgIGJvb2wgaGFzTGF5ZXJGb3JWZXJ0aWNhbFNjcm9sbGJhcigpIGNv
bnN0OwpAQCAtMzI3LDEwICszMjcsMTAgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBp
bnZhbGlkYXRlU2Nyb2xsQ29ybmVyUmVjdChjb25zdCBJbnRSZWN0JikgPSAwOwogCiAgICAgZnJp
ZW5kIGNsYXNzIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOwotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXll
ciogbGF5ZXJGb3JTY3JvbGxpbmcoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0gICAgdmlydHVhbCBH
cmFwaGljc0xheWVyKiBsYXllckZvclNjcm9sbENvcm5lcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0K
KyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yU2Nyb2xsaW5nKCkgY29uc3QgeyBy
ZXR1cm4gbnVsbHB0cjsgfQorICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JTY3Jv
bGxDb3JuZXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CiAjaWYgRU5BQkxFKFJVQkJFUl9C
QU5ESU5HKQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJGb3JPdmVyaGFuZ0FyZWFz
KCkgY29uc3QgeyByZXR1cm4gMDsgfQorICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciogbGF5ZXJG
b3JPdmVyaGFuZ0FyZWFzKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0cjsgfQogI2VuZGlmCiAKICAg
ICBib29sIGhhc0xheWVyRm9yU2Nyb2xsQ29ybmVyKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0KaW5kZXggMGQwNGMyZTAxMTZk
ODNjYmIxNGI2MTJjODU3YmY0NjczNjkyMGY3My4uNDU5NTFhMjZmZTVhZTNjYWExY2I2M2MwYjA3
OTYwZTYzOTY5OTNlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Nj
cm9sbEFuaW1hdG9yTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3Jv
bGxBbmltYXRvck1hYy5tbQpAQCAtMTMwMyw2ICsxMzAzLDcgQEAgdm9pZCBTY3JvbGxBbmltYXRv
ck1hYzo6dXBkYXRlU2Nyb2xsZXJTdHlsZSgpCiAKICAgICAgICAgW21fc2Nyb2xsZXJJbXBQYWly
IHNldFZlcnRpY2FsU2Nyb2xsZXJJbXA6bmV3VmVydGljYWxQYWludGVyXTsKICAgICAgICAgbWFj
VGhlbWUtPnNldE5ld1BhaW50ZXJGb3JTY3JvbGxiYXIoKnZlcnRpY2FsU2Nyb2xsYmFyLCBuZXdW
ZXJ0aWNhbFBhaW50ZXIpOworICAgICAgICBtYWNUaGVtZS0+ZGlkQ3JlYXRlU2Nyb2xsZXJJbXAo
KnZlcnRpY2FsU2Nyb2xsYmFyKTsKIAogICAgICAgICAvLyBUaGUgZGlmZmVyZW50IHNjcm9sbGJh
ciBzdHlsZXMgaGF2ZSBkaWZmZXJlbnQgdGhpY2tuZXNzZXMsIHNvIHdlIG11c3QgcmUtc2V0IHRo
ZSAKICAgICAgICAgLy8gZnJhbWVSZWN0IHRvIHRoZSBuZXcgdGhpY2tuZXNzLCBhbmQgdGhlIHJl
LWxheW91dCBiZWxvdyB3aWxsIGVuc3VyZSB0aGUgcG9zaXRpb24KQEAgLTEzMTksNiArMTMyMCw3
IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQogCiAgICAg
ICAgIFttX3Njcm9sbGVySW1wUGFpciBzZXRIb3Jpem9udGFsU2Nyb2xsZXJJbXA6bmV3SG9yaXpv
bnRhbFBhaW50ZXJdOwogICAgICAgICBtYWNUaGVtZS0+c2V0TmV3UGFpbnRlckZvclNjcm9sbGJh
cigqaG9yaXpvbnRhbFNjcm9sbGJhciwgbmV3SG9yaXpvbnRhbFBhaW50ZXIpOworICAgICAgICBt
YWNUaGVtZS0+ZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoKmhvcml6b250YWxTY3JvbGxiYXIpOwogCiAg
ICAgICAgIC8vIFRoZSBkaWZmZXJlbnQgc2Nyb2xsYmFyIHN0eWxlcyBoYXZlIGRpZmZlcmVudCB0
aGlja25lc3Nlcywgc28gd2UgbXVzdCByZS1zZXQgdGhlIAogICAgICAgICAvLyBmcmFtZVJlY3Qg
dG8gdGhlIG5ldyB0aGlja25lc3MsIGFuZCB0aGUgcmUtbGF5b3V0IGJlbG93IHdpbGwgZW5zdXJl
IHRoZSBwb3NpdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Nj
cm9sbGJhclRoZW1lTWFjLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFy
VGhlbWVNYWMuaAppbmRleCBlOTkyYTE1MjkzM2JiNzZiZjEwNmI4ZWVmNzI4YjM5YzY5YTE2Yzc1
Li5jMDZkMGE4NDBlMzJkNTZjMTk1MmI2NDY1OGIwMzkzOWNiMTA4MTVlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMuaApAQCAtNjQsNiArNjQs
MTAgQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIGlzQ3VycmVudGx5RHJhd2luZ0ludG9MYXll
cigpOwogICAgIHN0YXRpYyB2b2lkIHNldElzQ3VycmVudGx5RHJhd2luZ0ludG9MYXllcihib29s
KTsKIAorICAgIHZvaWQgZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoU2Nyb2xsYmFyJik7CisKKyAgICBi
b29sIHNjcm9sbGJhclBhaW50ZXJJc1JUTChTY3JvbGxiYXImKTsKKwogI2lmIEVOQUJMRShSVUJC
RVJfQkFORElORykKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRVcE92ZXJoYW5n
QXJlYUJhY2tncm91bmQoQ0FMYXllciAqLCBjb25zdCBDb2xvciYgY3VzdG9tQmFja2dyb3VuZENv
bG9yID0gQ29sb3IoKSk7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgcmVtb3ZlT3Zl
cmhhbmdBcmVhQmFja2dyb3VuZChDQUxheWVyICopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tCmluZGV4IGEyNjA0MTE5OGVjMGRkNTNiYmMy
NjhkY2Q5MjlhZWNjNTdjODBlNTIuLjQ5MzBiMGU5ZTgxMjlhMGZiMDY5MDdlNzY3NWU1NGI3NDBi
MzllMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJU
aGVtZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhl
bWVNYWMubW0KQEAgLTE1Myw2ICsxNTMsMTcgQEAgc3RhdGljIE5TQ29udHJvbFNpemUgc2Nyb2xs
YmFyQ29udHJvbFNpemVUb05TQ29udHJvbFNpemUoU2Nyb2xsYmFyQ29udHJvbFNpemUgY28KICNw
cmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AKIH0KIAordm9pZCBTY3JvbGxiYXJUaGVtZU1hYzo6
ZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCit7CisjaWYgUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTIwMAorICAg
IE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGVySW1wID0gcGFpbnRlckZvclNjcm9sbGJhcihzY3JvbGxi
YXIpOworICAgIEFTU0VSVChzY3JvbGxlckltcCk7CisgICAgc2Nyb2xsZXJJbXAudXNlckludGVy
ZmFjZUxheW91dERpcmVjdGlvbiA9IHNjcm9sbGJhci5zY3JvbGxhYmxlQXJlYSgpLnZlcnRpY2Fs
U2Nyb2xsYmFySXNPbkxlZnQoKSA/IE5TVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvblJpZ2h0
VG9MZWZ0IDogTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uTGVmdFRvUmlnaHQ7CisjZWxz
ZQorICAgIFVOVVNFRF9QQVJBTShzY3JvbGxiYXIpOworI2VuZGlmCit9CisKIHZvaWQgU2Nyb2xs
YmFyVGhlbWVNYWM6OnJlZ2lzdGVyU2Nyb2xsYmFyKFNjcm9sbGJhciYgc2Nyb2xsYmFyKQogewog
ICAgIGlmIChzY3JvbGxiYXIuaXNDdXN0b21TY3JvbGxiYXIoKSkKQEAgLTE2MSw2ICsxNzIsNyBA
QCB2b2lkIFNjcm9sbGJhclRoZW1lTWFjOjpyZWdpc3RlclNjcm9sbGJhcihTY3JvbGxiYXImIHNj
cm9sbGJhcikKICAgICBib29sIGlzSG9yaXpvbnRhbCA9IHNjcm9sbGJhci5vcmllbnRhdGlvbigp
ID09IEhvcml6b250YWxTY3JvbGxiYXI7CiAgICAgTlNTY3JvbGxlckltcCAqc2Nyb2xsZXJJbXAg
PSBbTlNTY3JvbGxlckltcCBzY3JvbGxlckltcFdpdGhTdHlsZTpyZWNvbW1lbmRlZFNjcm9sbGVy
U3R5bGUoKSBjb250cm9sU2l6ZTpzY3JvbGxiYXJDb250cm9sU2l6ZVRvTlNDb250cm9sU2l6ZShz
Y3JvbGxiYXIuY29udHJvbFNpemUoKSkgaG9yaXpvbnRhbDppc0hvcml6b250YWwgcmVwbGFjaW5n
U2Nyb2xsZXJJbXA6bmlsXTsKICAgICBzY3JvbGxiYXJNYXAoKS0+YWRkKCZzY3JvbGxiYXIsIHNj
cm9sbGVySW1wKTsKKyAgICBkaWRDcmVhdGVTY3JvbGxlckltcChzY3JvbGxiYXIpOwogICAgIHVw
ZGF0ZUVuYWJsZWRTdGF0ZShzY3JvbGxiYXIpOwogICAgIHVwZGF0ZVNjcm9sbGJhck92ZXJsYXlT
dHlsZShzY3JvbGxiYXIpOwogfQpAQCAtMTgyLDYgKzE5NCwxOCBAQCBOU1Njcm9sbGVySW1wICpT
Y3JvbGxiYXJUaGVtZU1hYzo6cGFpbnRlckZvclNjcm9sbGJhcihTY3JvbGxiYXImIHNjcm9sbGJh
cikKICAgICByZXR1cm4gc2Nyb2xsYmFyTWFwKCktPmdldCgmc2Nyb2xsYmFyKS5nZXQoKTsKIH0K
IAorYm9vbCBTY3JvbGxiYXJUaGVtZU1hYzo6c2Nyb2xsYmFyUGFpbnRlcklzUlRMKFNjcm9sbGJh
ciYgc2Nyb2xsYmFyKQoreworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9O
X01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBOU1Njcm9sbGVySW1wICpzY3JvbGxlckltcCA9
IHBhaW50ZXJGb3JTY3JvbGxiYXIoc2Nyb2xsYmFyKTsKKyAgICBBU1NFUlQoc2Nyb2xsZXJJbXAp
OworICAgIHJldHVybiBzY3JvbGxlckltcC51c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID09
IE5TVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvblJpZ2h0VG9MZWZ0OworI2Vsc2UKKyAgICBV
TlVTRURfUEFSQU0oc2Nyb2xsYmFyKTsKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwog
c3RhdGljIGJvb2wgZ19pc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXI7CiAgICAgCiBib29sIFNj
cm9sbGJhclRoZW1lTWFjOjppc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXIoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaAppbmRleCAw
YjYzMThhYzAyNzE3OTFiMTIyN2VmNWMwZTU5OWRjOTgwOTg0MGM2Li44ZGNmYmJiZDUwZDBkNTVk
MmM2MDkyYmYyZmY5MTRiOTc1NjI1MDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaApAQCAtNzksNiArNzksNyBAQCB0eXBlZGVm
IE5TVUludGVnZXIgTlNPdmVybGF5U2Nyb2xsZXJTdGF0ZTsKIEBwcm9wZXJ0eShyZWFkb25seSkg
Q0dGbG9hdCBrbm9iTWluTGVuZ3RoOwogQHByb3BlcnR5KHJlYWRvbmx5KSBDR0Zsb2F0IGtub2JP
dmVybGFwRW5kSW5zZXQ7CiBAcHJvcGVydHkocmVhZG9ubHkpIENHRmxvYXQgdHJhY2tPdmVybGFw
RW5kSW5zZXQ7CitAcHJvcGVydHkgTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHVzZXJJ
bnRlcmZhY2VMYXlvdXREaXJlY3Rpb247CiAtIChOU1JlY3QpcmVjdEZvclBhcnQ6KE5TU2Nyb2xs
ZXJQYXJ0KXBhcnRDb2RlOwogLSAodm9pZClkcmF3S25vYlNsb3RJblJlY3Q6KE5TUmVjdClzbG90
UmVjdCBoaWdobGlnaHQ6KEJPT0wpZmxhZyBhbHBoYTooQ0dGbG9hdClhbHBoYTsKIC0gKHZvaWQp
ZHJhd0tub2JTbG90SW5SZWN0OihOU1JlY3Qpc2xvdFJlY3QgaGlnaGxpZ2h0OihCT09MKWZsYWc7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHAKaW5kZXgg
MTdjZTA3YjNlMTUxZDFjNWEzOTdjZTg3OTI2MDNlZTBlOTE4MzZhZC4uYzA4NDEwNDU2YWIxZDBj
YzljYzMzZGVhYzk4MWQ0MmYyNDA0YmExYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRyZWVBc1RleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUcmVlQXNUZXh0LmNwcApAQCAtNzIsNiArNzIsMTAgQEAKICNpbmNsdWRlIDx3dGYv
VmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIAorI2lm
IFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxiYXJUaGVtZU1hYy5oIgorI2VuZGlmCisK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTYy
MSw2ICs2MjUsMTQgQEAgc3RhdGljIHZvaWQgd3JpdGUoVGV4dFN0cmVhbSYgdHMsIGNvbnN0IFJl
bmRlckxheWVyJiBsYXllciwgY29uc3QgTGF5b3V0UmVjdCYgbGEKICAgICAgICAgICAgIHRzIDw8
ICIgc2Nyb2xsV2lkdGggIiA8PCBsYXllci5zY3JvbGxXaWR0aCgpOwogICAgICAgICBpZiAobGF5
ZXIucmVuZGVyQm94KCkgJiYgcm91bmRUb0ludChsYXllci5yZW5kZXJCb3goKS0+Y2xpZW50SGVp
Z2h0KCkpICE9IGxheWVyLnNjcm9sbEhlaWdodCgpKQogICAgICAgICAgICAgdHMgPDwgIiBzY3Jv
bGxIZWlnaHQgIiA8PCBsYXllci5zY3JvbGxIZWlnaHQoKTsKKyNpZiBQTEFURk9STShNQUMpCisg
ICAgICAgIFNjcm9sbGJhclRoZW1lJiBzY3JvbGxiYXJUaGVtZSA9IFNjcm9sbGJhclRoZW1lOjp0
aGVtZSgpOworICAgICAgICBpZiAoIXNjcm9sbGJhclRoZW1lLmlzTW9ja1RoZW1lKCkgJiYgbGF5
ZXIuaGFzVmVydGljYWxTY3JvbGxiYXIoKSkgeworICAgICAgICAgICAgU2Nyb2xsYmFyVGhlbWVN
YWMmIG1hY1RoZW1lID0gKnN0YXRpY19jYXN0PFNjcm9sbGJhclRoZW1lTWFjKj4oJnNjcm9sbGJh
clRoZW1lKTsKKyAgICAgICAgICAgIGlmIChtYWNUaGVtZS5zY3JvbGxiYXJQYWludGVySXNSVEwo
KmxheWVyLnZlcnRpY2FsU2Nyb2xsYmFyKCkpKQorICAgICAgICAgICAgICAgIHRzIDw8ICIgUlRM
IjsKKyAgICAgICAgfQorI2VuZGlmCiAgICAgfQogCiAgICAgaWYgKHBhaW50UGhhc2UgPT0gTGF5
ZXJQYWludFBoYXNlQmFja2dyb3VuZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1N2ExNjlhZDU1MjBlNzlkNTAyNjQ4YmJmNTBlOTAzMmY4MjhjYjMzLi45ZjIzNTNlNTFh
YTVkMjQ5MDY0MWZjZDEwMWZiNTljMWI2YWM5ZTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC0yNzM3LDYgKzI3MzcsMTEgQEAgdm9pZCBJbnRlcm5hbHM6OnNldFVzZXNN
b2NrU2Nyb2xsQW5pbWF0b3IoYm9vbCBlbmFibGVkKQogICAgIFdlYkNvcmU6OlNldHRpbmdzOjpz
ZXRVc2VzTW9ja1Njcm9sbEFuaW1hdG9yKGVuYWJsZWQpOwogfQogCit2b2lkIEludGVybmFsczo6
c2V0TW9ja1Njcm9sbGJhcnNFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBXZWJDb3JlOjpT
ZXR0aW5nczo6c2V0TW9ja1Njcm9sbGJhcnNFbmFibGVkKGVuYWJsZWQpOworfQorCiB2b2lkIElu
dGVybmFsczo6Zm9yY2VSZWxvYWQoYm9vbCBlbmRUb0VuZCkKIHsKICAgICBmcmFtZSgpLT5sb2Fk
ZXIoKS5yZWxvYWQoZW5kVG9FbmQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXgg
YWI5YjQ3MTdiMGQyYjY0ZGI4NjkxOWM0Y2U4MTljZjczOTU5NjMxYS4uM2E0YzUyNTk5OWM4ODBm
N2MwYTUzNDJhODQwYTYyNGNlYWFjYTJjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
CkBAIC0zNDgsOCArMzQ4LDkgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc0Zyb21DdXJyZW50V29y
bGQoRGVwcmVjYXRlZDo6U2NyaXB0VmFsdWUpIGNvbnN0OwogCi0gICAgdm9pZCBzZXRVc2VzT3Zl
cmxheVNjcm9sbGJhcnMoYm9vbCBlbmFibGVkKTsKLSAgICB2b2lkIHNldFVzZXNNb2NrU2Nyb2xs
QW5pbWF0b3IoYm9vbCBlbmFibGVkKTsKKyAgICB2b2lkIHNldFVzZXNPdmVybGF5U2Nyb2xsYmFy
cyhib29sKTsKKyAgICB2b2lkIHNldFVzZXNNb2NrU2Nyb2xsQW5pbWF0b3IoYm9vbCk7CisgICAg
dm9pZCBzZXRNb2NrU2Nyb2xsYmFyc0VuYWJsZWQoYm9vbCk7CiAKICAgICBTdHJpbmcgZ2V0Q3Vy
cmVudEN1cnNvckluZm8oRXhjZXB0aW9uQ29kZSYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5pZGwKaW5kZXggMzBkNjRiMWJmYzAyZTJlMDI3NjMyNmUyOWI1Y2QzZTI1NzllZDRjOS4u
YWIxMmNmODU1OGQwNDEzYjQ5YjQ0ZDFkZDYyOWU2ZWUyZjIzYTU5ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMzUwLDYgKzM1MCw3IEBAIGVudW0gQXV0b0ZpbGxCdXR0
b25UeXBlIHsKIAogICAgIHZvaWQgc2V0VXNlc092ZXJsYXlTY3JvbGxiYXJzKGJvb2xlYW4gZW5h
YmxlZCk7CiAgICAgdm9pZCBzZXRVc2VzTW9ja1Njcm9sbEFuaW1hdG9yKGJvb2xlYW4gZW5hYmxl
ZCk7CisgICAgdm9pZCBzZXRNb2NrU2Nyb2xsYmFyc0VuYWJsZWQoYm9vbGVhbiBlbmFibGVkKTsK
IAogICAgIHZvaWQgZm9yY2VSZWxvYWQoYm9vbGVhbiBlbmRUb0VuZCk7CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNTZi
ZGQyMzRkYWZiNWQxYjlhZTE1N2I0ZTRmOGVlNTAwODk4MTk5Li4wYWZlMWMzYjYxYWVmMTMyYTAz
NzE5Mjk1MGFjN2ZjYTY1YjY5NzRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTYtMDMtMjkg
IE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAgICBbT1Mg
WF0gW1JUTCBTY3JvbGxiYXJzXSBPdmVybGF5IFJUTCBzY3JvbGxiYXJzIGFuaW1hdGUgaW4gZnJv
bSB0aGUgd3Jvbmcgc2lkZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTU1OTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhpcyB0ZXN0IG9ubHkgcHJpbnRzIHRoZSAiUlRMIiB0b2tlbiB3aGVuIHJ1bm5p
bmcgb24gY2VydGFpbiBPU2VzLgorCisgICAgICAgICogZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9s
bGJhcnMtYW5pbWF0aW9uLXByb3BlcnR5Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy9mYXN0L3Njcm9sbGluZy9ydGwtc2Nyb2xsYmFycy1hbmltYXRpb24tcHJvcGVydHktZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAxNi0wMy0yOSAgRGFuYSBCdXJrYXJ0IGFuZCBNYXR0aGV3
IEhhbnNvbiAgPGRidXJrYXJ0QGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBK
UyBQcmV0dHlQcmludGluZyBpbiBkby93aGlsZSBsb29wcywgIndoaWxlIiBzaG91bGQgYmUgb24g
dGhlIHNhbWUgbGluZSBhcyAifSIgaWYgdGhlcmUgd2FzIGEgY2xvc2luZyBicmFjZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9sbGJhcnMtYW5pbWF0aW9u
LXByb3BlcnR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Njcm9sbGluZy9ydGwtc2Nyb2xsYmFy
cy1hbmltYXRpb24tcHJvcGVydHkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NTY2NDE0MTM3MjE1Mjk0ZTM5
YWU5MzI0NWJmZjJmNzQ3NWZlNmMyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9zY3JvbGxpbmcvcnRsLXNjcm9sbGJhcnMtYW5pbWF0aW9uLXByb3BlcnR5Lmh0bWwKQEAgLTAs
MCArMSwxNSBAQAorPCFET0NUWVBFIGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBkb250
TW9ja1Njcm9sbGJhcnM9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAo
d2luZG93LmludGVybmFscykKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldE1vY2tTY3JvbGxiYXJz
RW5hYmxlZChmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0i
d2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDIwMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93
OiBzY3JvbGw7Ij4KKzxkaXYgc3R5bGU9IndpZHRoOiAxcHg7IGhlaWdodDogMjAwMHB4OyBwb3Np
dGlvbjogYWJzb2x1dGU7IGxlZnQ6IDBweDsgdG9wOiAwcHg7Ij48L2Rpdj4KKzwvZGl2PgorPGRp
diBzdHlsZT0id2lkdGg6IDFweDsgaGVpZ2h0OiAyMDAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsg
bGVmdDogMHB4OyB0b3A6IDBweDsiPjwvZGl2PgorPC9ib2R5PgorPGh0bWw+ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zh
c3Qvc2Nyb2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlvbi1wcm9wZXJ0eS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9sbGJh
cnMtYW5pbWF0aW9uLXByb3BlcnR5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNDk1MGFhM2I1
OGRkMDg4ODc5Y2Y4MTcxMWY3OGZkYmRkMTE2YjVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3Qvc2Nyb2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlv
bi1wcm9wZXJ0eS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorbGF5ZXIgYXQgKDAsMCkg
c2l6ZSA3ODV4MjAwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgNzg1eDYwMAorbGF5ZXIg
YXQgKDAsMCkgc2l6ZSA3ODV4MjE2CisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXpl
IDc4NXgyMTYKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc2OXgyMDAKK2xh
eWVyIGF0ICg4LDgpIHNpemUgMjAweDIwMCBjbGlwIGF0ICg4LDgpIHNpemUgMTg1eDE4NSBzY3Jv
bGxIZWlnaHQgMjAwMAorICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9zaXRpb25lZCkge0RJVn0g
YXQgKDAsMCkgc2l6ZSAyMDB4MjAwCitsYXllciBhdCAoOCw4KSBzaXplIDF4MjAwMCBiYWNrZ3Jv
dW5kQ2xpcCBhdCAoOCw4KSBzaXplIDE4NXgxODUgY2xpcCBhdCAoOCw4KSBzaXplIDE4NXgxODUK
KyAgUmVuZGVyQmxvY2sgKHBvc2l0aW9uZWQpIHtESVZ9IGF0ICgwLDApIHNpemUgMXgyMDAwCits
YXllciBhdCAoMCwwKSBzaXplIDF4MjAwMAorICBSZW5kZXJCbG9jayAocG9zaXRpb25lZCkge0RJ
Vn0gYXQgKDAsMCkgc2l6ZSAxeDIwMDAK
</data>
<flag name="review"
          id="299550"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275201</attachid>
            <date>2016-03-30 10:49:09 -0700</date>
            <delta_ts>2016-03-30 10:49:09 -0700</delta_ts>
            <desc>Patch for committing</desc>
            <filename>bug-155962-20160330104910.patch</filename>
            <type>text/plain</type>
            <size>15832</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk4ODQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmEzMmE1NmY3MDI4Y2Q5
NzFkMTBhNjJkNmI3OTYxMTMyZmE2NjAxYi4uNDQ3MjQ1M2ZiOGM2YmY1OWJlZjYyZDc0OWUxMzU3
Yzc0YThjYzkxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQ5IEBACiAyMDE2LTAzLTMwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKKyAgICAgICAgW09TIFhdIFtS
VEwgU2Nyb2xsYmFyc10gT3ZlcmxheSBSVEwgc2Nyb2xsYmFycyBhbmltYXRlIGluIGZyb20gdGhl
IHdyb25nIHNpZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1NTk2MgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IFdlIGNhbiBjb250cm9sIHRoZSBhbmltYXRpb24gZGlyZWN0aW9uIHdpdGggdGhlIE5TU2Nyb2xs
ZXJJbXAgcHJvcGVydHkKKyAgICAgICAgdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbi4KKwor
ICAgICAgICBUaGlzIHBhdGNoIGFsc28gYWRkcyBhbiBJbnRlcm5hbHMgZnVuY3Rpb24gdG8gc2V0
IHdoZXRoZXIgb3Igbm90IHdlCisgICAgICAgIHNob3VsZCBtb2NrIHRoZSBzY3JvbGxiYXJzLiBO
b3QgbW9ja2luZyB0aGUgc2Nyb2xsYmFycyBpcyByZXF1aXJlZAorICAgICAgICB0byB1c2UgTlNT
Y3JvbGxlckltcHMuCisKKyAgICAgICAgVGVzdDogZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9sbGJh
cnMtYW5pbWF0aW9uLXByb3BlcnR5Lmh0bWwKKworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGFi
bGVBcmVhLmg6IFVzZSBudWxscHRyIGluc3RlYWQgb2YgMC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbGFibGVBcmVhOjpob3Jpem9udGFsU2Nyb2xsYmFyKToKKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbGFibGVBcmVhOjp2ZXJ0aWNhbFNjcm9sbGJhcik6CisgICAgICAgIChXZWJDb3JlOjpTY3Jv
bGxhYmxlQXJlYTo6dGlsZWRCYWNraW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGFibGVB
cmVhOjpsYXllckZvckhvcml6b250YWxTY3JvbGxiYXIpOgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsYWJsZUFyZWE6OmxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsYWJsZUFyZWE6OmxheWVyRm9yU2Nyb2xsaW5nKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGFibGVBcmVhOjpsYXllckZvclNjcm9sbENvcm5lcik6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxhYmxlQXJlYTo6bGF5ZXJGb3JPdmVyaGFuZ0FyZWFzKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxB
bmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJTdHlsZSk6IFNldCB0aGUgZGlyZWN0aW9uCisgICAg
ICAgIG9mIHRoZSBuZXcgTlNTY3JvbGxlckltcHMuCisgICAgICAgICogcGxhdGZvcm0vbWFjL1Nj
cm9sbGJhclRoZW1lTWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1l
TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyVGhlbWVNYWM6OmRpZENyZWF0ZVNj
cm9sbGVySW1wKTogU2V0IHRoZSBkaXJlY3Rpb24KKyAgICAgICAgb2YgYW4gTlNTY3JvbGxlcklt
cC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhclRoZW1lTWFjOjpyZWdpc3RlclNjcm9sbGJh
cik6IENhbGwKKyAgICAgICAgZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoKS4KKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbGJhclRoZW1lTWFjOjppc0xheW91dERpcmVjdGlvblJUTCk6IFVzZWQgZm9yIHRl
c3RpbmcsCisgICAgICAgIHRvIHRlbGwgaWYgdGhlIHNjcm9sbGVyJ3MgZGlyZWN0aW9uIGlzIFJU
TC4KKyAgICAgICAgKiBwbGF0Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaDoKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3
cml0ZSk6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SW50ZXJuYWxzOjpzZXRNb2NrU2Nyb2xsYmFyc0VuYWJsZWQpOiBVc2VkIGZvciB0ZXN0aW5n
LgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRl
cm5hbHMuaWRsOgorCisyMDE2LTAzLTMwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CisKICAgICAgICAgW09TIFhdIFtSVEwgU2Nyb2xsYmFyc10gTGlzdCBib3hlcyBz
aG91bGQgb2JleSBSVEwgc2Nyb2xsYmFycwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTU1OTkxCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbGFibGVBcmVhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxh
YmxlQXJlYS5oCmluZGV4IDRmNjgzMmI5ODA1ZmEzMjA0NmI2NDJhYjdiN2I0YTVjMjRiZWMwNmYu
LmUyMzFmNmIzZmM4NzAyZjUxMzExNzNkY2QyYjUxNWUxZDRkNGY5MDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaApAQCAtMTgwLDggKzE4MCw4IEBAIHB1YmxpYzoK
ICAgICBpbnQgdmVydGljYWxTY3JvbGxiYXJJbnRydXNpb24oKSBjb25zdDsKICAgICBXRUJDT1JF
X0VYUE9SVCBJbnRTaXplIHNjcm9sbGJhckludHJ1c2lvbigpIGNvbnN0OwogCi0gICAgdmlydHVh
bCBTY3JvbGxiYXIqIGhvcml6b250YWxTY3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0g
ICAgdmlydHVhbCBTY3JvbGxiYXIqIHZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4g
MDsgfQorICAgIHZpcnR1YWwgU2Nyb2xsYmFyKiBob3Jpem9udGFsU2Nyb2xsYmFyKCkgY29uc3Qg
eyByZXR1cm4gbnVsbHB0cjsgfQorICAgIHZpcnR1YWwgU2Nyb2xsYmFyKiB2ZXJ0aWNhbFNjcm9s
bGJhcigpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KIAogICAgIGNvbnN0IEludFBvaW50JiBz
Y3JvbGxPcmlnaW4oKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbE9yaWdpbjsgfQogICAgIGJvb2wg
c2Nyb2xsT3JpZ2luQ2hhbmdlZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsT3JpZ2luQ2hhbmdl
ZDsgfQpAQCAtMjkzLDE1ICsyOTMsMTUgQEAgcHVibGljOgogICAgIGJvb2wgaXNQaW5uZWRWZXJ0
aWNhbGx5SW5EaXJlY3Rpb24oaW50IHZlcnRpY2FsU2Nyb2xsRGVsdGEpIGNvbnN0OwogI2VuZGlm
CiAKLSAgICB2aXJ0dWFsIFRpbGVkQmFja2luZyogdGlsZWRCYWNraW5nKCkgY29uc3QgeyByZXR1
cm4gMDsgfQorICAgIHZpcnR1YWwgVGlsZWRCYWNraW5nKiB0aWxlZEJhY2tpbmcoKSBjb25zdCB7
IHJldHVybiBudWxscHRyOyB9CiAKICAgICAvLyBUcnVlIGlmIHNjcm9sbGluZyBoYXBwZW5zIGJ5
IG1vdmluZyBjb21wb3NpdGluZyBsYXllcnMuCiAgICAgdmlydHVhbCBib29sIHVzZXNDb21wb3Np
dGVkU2Nyb2xsaW5nKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICAvLyBUcnVlIGlmIHRo
ZSBjb250ZW50cyBjYW4gYmUgc2Nyb2xsZWQgYXN5bmNocm9ub3VzbHkgKGkuZS4gYnkgYSBTY3Jv
bGxpbmdDb29yZGluYXRvcikuCiAgICAgdmlydHVhbCBib29sIHVzZXNBc3luY1Njcm9sbGluZygp
IGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxh
eWVyRm9ySG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLSAgICB2aXJ0
dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSBjb25zdCB7IHJl
dHVybiAwOyB9CisgICAgdmlydHVhbCBHcmFwaGljc0xheWVyKiBsYXllckZvckhvcml6b250YWxT
Y3JvbGxiYXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVhbCBHcmFwaGlj
c0xheWVyKiBsYXllckZvclZlcnRpY2FsU2Nyb2xsYmFyKCkgY29uc3QgeyByZXR1cm4gbnVsbHB0
cjsgfQogCiAgICAgYm9vbCBoYXNMYXllckZvckhvcml6b250YWxTY3JvbGxiYXIoKSBjb25zdDsK
ICAgICBib29sIGhhc0xheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSBjb25zdDsKQEAgLTMyNywx
MCArMzI3LDEwIEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgaW52YWxpZGF0ZVNjcm9s
bENvcm5lclJlY3QoY29uc3QgSW50UmVjdCYpID0gMDsKIAogICAgIGZyaWVuZCBjbGFzcyBTY3Jv
bGxpbmdDb29yZGluYXRvcjsKLSAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yU2Ny
b2xsaW5nKCkgY29uc3QgeyByZXR1cm4gMDsgfQotICAgIHZpcnR1YWwgR3JhcGhpY3NMYXllciog
bGF5ZXJGb3JTY3JvbGxDb3JuZXIoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgdmlydHVhbCBH
cmFwaGljc0xheWVyKiBsYXllckZvclNjcm9sbGluZygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7
IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yU2Nyb2xsQ29ybmVyKCkgY29u
c3QgeyByZXR1cm4gbnVsbHB0cjsgfQogI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICB2
aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yT3ZlcmhhbmdBcmVhcygpIGNvbnN0IHsgcmV0
dXJuIDA7IH0KKyAgICB2aXJ0dWFsIEdyYXBoaWNzTGF5ZXIqIGxheWVyRm9yT3ZlcmhhbmdBcmVh
cygpIGNvbnN0IHsgcmV0dXJuIG51bGxwdHI7IH0KICNlbmRpZgogCiAgICAgYm9vbCBoYXNMYXll
ckZvclNjcm9sbENvcm5lcigpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCmluZGV4IDBkMDRjMmUwMTE2ZDgzY2JiMTRiNjEyYzg1
N2JmNDY3MzY5MjBmNzMuLjQ1OTUxYTI2ZmU1YWUzY2FhMWNiNjNjMGIwNzk2MGU2Mzk2OTkzZTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1h
Yy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMu
bW0KQEAgLTEzMDMsNiArMTMwMyw3IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNj
cm9sbGVyU3R5bGUoKQogCiAgICAgICAgIFttX3Njcm9sbGVySW1wUGFpciBzZXRWZXJ0aWNhbFNj
cm9sbGVySW1wOm5ld1ZlcnRpY2FsUGFpbnRlcl07CiAgICAgICAgIG1hY1RoZW1lLT5zZXROZXdQ
YWludGVyRm9yU2Nyb2xsYmFyKCp2ZXJ0aWNhbFNjcm9sbGJhciwgbmV3VmVydGljYWxQYWludGVy
KTsKKyAgICAgICAgbWFjVGhlbWUtPmRpZENyZWF0ZVNjcm9sbGVySW1wKCp2ZXJ0aWNhbFNjcm9s
bGJhcik7CiAKICAgICAgICAgLy8gVGhlIGRpZmZlcmVudCBzY3JvbGxiYXIgc3R5bGVzIGhhdmUg
ZGlmZmVyZW50IHRoaWNrbmVzc2VzLCBzbyB3ZSBtdXN0IHJlLXNldCB0aGUgCiAgICAgICAgIC8v
IGZyYW1lUmVjdCB0byB0aGUgbmV3IHRoaWNrbmVzcywgYW5kIHRoZSByZS1sYXlvdXQgYmVsb3cg
d2lsbCBlbnN1cmUgdGhlIHBvc2l0aW9uCkBAIC0xMzE5LDYgKzEzMjAsNyBAQCB2b2lkIFNjcm9s
bEFuaW1hdG9yTWFjOjp1cGRhdGVTY3JvbGxlclN0eWxlKCkKIAogICAgICAgICBbbV9zY3JvbGxl
ckltcFBhaXIgc2V0SG9yaXpvbnRhbFNjcm9sbGVySW1wOm5ld0hvcml6b250YWxQYWludGVyXTsK
ICAgICAgICAgbWFjVGhlbWUtPnNldE5ld1BhaW50ZXJGb3JTY3JvbGxiYXIoKmhvcml6b250YWxT
Y3JvbGxiYXIsIG5ld0hvcml6b250YWxQYWludGVyKTsKKyAgICAgICAgbWFjVGhlbWUtPmRpZENy
ZWF0ZVNjcm9sbGVySW1wKCpob3Jpem9udGFsU2Nyb2xsYmFyKTsKIAogICAgICAgICAvLyBUaGUg
ZGlmZmVyZW50IHNjcm9sbGJhciBzdHlsZXMgaGF2ZSBkaWZmZXJlbnQgdGhpY2tuZXNzZXMsIHNv
IHdlIG11c3QgcmUtc2V0IHRoZSAKICAgICAgICAgLy8gZnJhbWVSZWN0IHRvIHRoZSBuZXcgdGhp
Y2tuZXNzLCBhbmQgdGhlIHJlLWxheW91dCBiZWxvdyB3aWxsIGVuc3VyZSB0aGUgcG9zaXRpb24K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1h
Yy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKaW5k
ZXggZTk5MmExNTI5MzNiYjc2YmYxMDZiOGVlZjcyOGIzOWM2OWExNmM3NS4uMjk1ZTcyNjAxYjll
YWMwZWVjYjIyZGFjNmQ1MzRlODhiM2ZhODk5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLmgKQEAgLTY0LDYgKzY0LDkgQEAgcHVibGljOgog
ICAgIHN0YXRpYyBib29sIGlzQ3VycmVudGx5RHJhd2luZ0ludG9MYXllcigpOwogICAgIHN0YXRp
YyB2b2lkIHNldElzQ3VycmVudGx5RHJhd2luZ0ludG9MYXllcihib29sKTsKIAorICAgIHN0YXRp
YyB2b2lkIGRpZENyZWF0ZVNjcm9sbGVySW1wKFNjcm9sbGJhciYpOworICAgIGJvb2wgaXNMYXlv
dXREaXJlY3Rpb25SVEwoU2Nyb2xsYmFyJik7CisKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcp
CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0VXBPdmVyaGFuZ0FyZWFCYWNrZ3Jv
dW5kKENBTGF5ZXIgKiwgY29uc3QgQ29sb3ImIGN1c3RvbUJhY2tncm91bmRDb2xvciA9IENvbG9y
KCkpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHJlbW92ZU92ZXJoYW5nQXJlYUJh
Y2tncm91bmQoQ0FMYXllciAqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9TY3JvbGxiYXJUaGVtZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9T
Y3JvbGxiYXJUaGVtZU1hYy5tbQppbmRleCBhMjYwNDExOThlYzBkZDUzYmJjMjY4ZGNkOTI5YWVj
YzU3YzgwZTUyLi5mMjM5NjYxZjk1ZDBjZmY5MmI2MDlhYjJlY2M3MTE5YmUyODA5NmQ5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tCkBA
IC0xNTMsNiArMTUzLDE3IEBAIHN0YXRpYyBOU0NvbnRyb2xTaXplIHNjcm9sbGJhckNvbnRyb2xT
aXplVG9OU0NvbnRyb2xTaXplKFNjcm9sbGJhckNvbnRyb2xTaXplIGNvCiAjcHJhZ21hIGNsYW5n
IGRpYWdub3N0aWMgcG9wCiB9CiAKK3ZvaWQgU2Nyb2xsYmFyVGhlbWVNYWM6OmRpZENyZWF0ZVNj
cm9sbGVySW1wKFNjcm9sbGJhciYgc2Nyb2xsYmFyKQoreworI2lmIFBMQVRGT1JNKE1BQykgJiYg
X19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBOU1Njcm9sbGVy
SW1wICpzY3JvbGxlckltcCA9IHBhaW50ZXJGb3JTY3JvbGxiYXIoc2Nyb2xsYmFyKTsKKyAgICBB
U1NFUlQoc2Nyb2xsZXJJbXApOworICAgIHNjcm9sbGVySW1wLnVzZXJJbnRlcmZhY2VMYXlvdXRE
aXJlY3Rpb24gPSBzY3JvbGxiYXIuc2Nyb2xsYWJsZUFyZWEoKS52ZXJ0aWNhbFNjcm9sbGJhcklz
T25MZWZ0KCkgPyBOU1VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb25SaWdodFRvTGVmdCA6IE5T
VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbkxlZnRUb1JpZ2h0OworI2Vsc2UKKyAgICBVTlVT
RURfUEFSQU0oc2Nyb2xsYmFyKTsKKyNlbmRpZgorfQorCiB2b2lkIFNjcm9sbGJhclRoZW1lTWFj
OjpyZWdpc3RlclNjcm9sbGJhcihTY3JvbGxiYXImIHNjcm9sbGJhcikKIHsKICAgICBpZiAoc2Ny
b2xsYmFyLmlzQ3VzdG9tU2Nyb2xsYmFyKCkpCkBAIC0xNjEsNiArMTcyLDcgQEAgdm9pZCBTY3Jv
bGxiYXJUaGVtZU1hYzo6cmVnaXN0ZXJTY3JvbGxiYXIoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCiAg
ICAgYm9vbCBpc0hvcml6b250YWwgPSBzY3JvbGxiYXIub3JpZW50YXRpb24oKSA9PSBIb3Jpem9u
dGFsU2Nyb2xsYmFyOwogICAgIE5TU2Nyb2xsZXJJbXAgKnNjcm9sbGVySW1wID0gW05TU2Nyb2xs
ZXJJbXAgc2Nyb2xsZXJJbXBXaXRoU3R5bGU6cmVjb21tZW5kZWRTY3JvbGxlclN0eWxlKCkgY29u
dHJvbFNpemU6c2Nyb2xsYmFyQ29udHJvbFNpemVUb05TQ29udHJvbFNpemUoc2Nyb2xsYmFyLmNv
bnRyb2xTaXplKCkpIGhvcml6b250YWw6aXNIb3Jpem9udGFsIHJlcGxhY2luZ1Njcm9sbGVySW1w
Om5pbF07CiAgICAgc2Nyb2xsYmFyTWFwKCktPmFkZCgmc2Nyb2xsYmFyLCBzY3JvbGxlckltcCk7
CisgICAgZGlkQ3JlYXRlU2Nyb2xsZXJJbXAoc2Nyb2xsYmFyKTsKICAgICB1cGRhdGVFbmFibGVk
U3RhdGUoc2Nyb2xsYmFyKTsKICAgICB1cGRhdGVTY3JvbGxiYXJPdmVybGF5U3R5bGUoc2Nyb2xs
YmFyKTsKIH0KQEAgLTE4Miw2ICsxOTQsMTggQEAgTlNTY3JvbGxlckltcCAqU2Nyb2xsYmFyVGhl
bWVNYWM6OnBhaW50ZXJGb3JTY3JvbGxiYXIoU2Nyb2xsYmFyJiBzY3JvbGxiYXIpCiAgICAgcmV0
dXJuIHNjcm9sbGJhck1hcCgpLT5nZXQoJnNjcm9sbGJhcikuZ2V0KCk7CiB9CiAKK2Jvb2wgU2Ny
b2xsYmFyVGhlbWVNYWM6OmlzTGF5b3V0RGlyZWN0aW9uUlRMKFNjcm9sbGJhciYgc2Nyb2xsYmFy
KQoreworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMDEyMDAKKyAgICBOU1Njcm9sbGVySW1wICpzY3JvbGxlckltcCA9IHBhaW50ZXJGb3JT
Y3JvbGxiYXIoc2Nyb2xsYmFyKTsKKyAgICBBU1NFUlQoc2Nyb2xsZXJJbXApOworICAgIHJldHVy
biBzY3JvbGxlckltcC51c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID09IE5TVXNlckludGVy
ZmFjZUxheW91dERpcmVjdGlvblJpZ2h0VG9MZWZ0OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0o
c2Nyb2xsYmFyKTsKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwogc3RhdGljIGJvb2wg
Z19pc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXI7CiAgICAgCiBib29sIFNjcm9sbGJhclRoZW1l
TWFjOjppc0N1cnJlbnRseURyYXdpbmdJbnRvTGF5ZXIoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vc3BpL21hYy9OU1Njcm9sbGVySW1wU1BJLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcGkvbWFjL05TU2Nyb2xsZXJJbXBTUEkuaAppbmRleCAwYjYzMThhYzAyNzE3
OTFiMTIyN2VmNWMwZTU5OWRjOTgwOTg0MGM2Li44ZGNmYmJiZDUwZDBkNTVkMmM2MDkyYmYyZmY5
MTRiOTc1NjI1MDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvbWFj
L05TU2Nyb2xsZXJJbXBTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvbWFj
L05TU2Nyb2xsZXJJbXBTUEkuaApAQCAtNzksNiArNzksNyBAQCB0eXBlZGVmIE5TVUludGVnZXIg
TlNPdmVybGF5U2Nyb2xsZXJTdGF0ZTsKIEBwcm9wZXJ0eShyZWFkb25seSkgQ0dGbG9hdCBrbm9i
TWluTGVuZ3RoOwogQHByb3BlcnR5KHJlYWRvbmx5KSBDR0Zsb2F0IGtub2JPdmVybGFwRW5kSW5z
ZXQ7CiBAcHJvcGVydHkocmVhZG9ubHkpIENHRmxvYXQgdHJhY2tPdmVybGFwRW5kSW5zZXQ7CitA
cHJvcGVydHkgTlNVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHVzZXJJbnRlcmZhY2VMYXlv
dXREaXJlY3Rpb247CiAtIChOU1JlY3QpcmVjdEZvclBhcnQ6KE5TU2Nyb2xsZXJQYXJ0KXBhcnRD
b2RlOwogLSAodm9pZClkcmF3S25vYlNsb3RJblJlY3Q6KE5TUmVjdClzbG90UmVjdCBoaWdobGln
aHQ6KEJPT0wpZmxhZyBhbHBoYTooQ0dGbG9hdClhbHBoYTsKIC0gKHZvaWQpZHJhd0tub2JTbG90
SW5SZWN0OihOU1JlY3Qpc2xvdFJlY3QgaGlnaGxpZ2h0OihCT09MKWZsYWc7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVHJlZUFzVGV4dC5jcHAKaW5kZXggMTdjZTA3YjNlMTUx
ZDFjNWEzOTdjZTg3OTI2MDNlZTBlOTE4MzZhZC4uMTZkNzQ5Yjc2YmFmZGYwOTFjMmY4ODRlMjFl
MzRhNzA5ZWEwMjI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRyZWVBc1RleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUcmVl
QXNUZXh0LmNwcApAQCAtNzIsNiArNzIsMTAgQEAKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAj
aW5jbHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIAorI2lmIFBMQVRGT1JNKE1B
QykKKyNpbmNsdWRlICJTY3JvbGxiYXJUaGVtZU1hYy5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTYyMSw2ICs2MjUsMTQg
QEAgc3RhdGljIHZvaWQgd3JpdGUoVGV4dFN0cmVhbSYgdHMsIGNvbnN0IFJlbmRlckxheWVyJiBs
YXllciwgY29uc3QgTGF5b3V0UmVjdCYgbGEKICAgICAgICAgICAgIHRzIDw8ICIgc2Nyb2xsV2lk
dGggIiA8PCBsYXllci5zY3JvbGxXaWR0aCgpOwogICAgICAgICBpZiAobGF5ZXIucmVuZGVyQm94
KCkgJiYgcm91bmRUb0ludChsYXllci5yZW5kZXJCb3goKS0+Y2xpZW50SGVpZ2h0KCkpICE9IGxh
eWVyLnNjcm9sbEhlaWdodCgpKQogICAgICAgICAgICAgdHMgPDwgIiBzY3JvbGxIZWlnaHQgIiA8
PCBsYXllci5zY3JvbGxIZWlnaHQoKTsKKyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIFNjcm9s
bGJhclRoZW1lJiBzY3JvbGxiYXJUaGVtZSA9IFNjcm9sbGJhclRoZW1lOjp0aGVtZSgpOworICAg
ICAgICBpZiAoIXNjcm9sbGJhclRoZW1lLmlzTW9ja1RoZW1lKCkgJiYgbGF5ZXIuaGFzVmVydGlj
YWxTY3JvbGxiYXIoKSkgeworICAgICAgICAgICAgU2Nyb2xsYmFyVGhlbWVNYWMmIG1hY1RoZW1l
ID0gKnN0YXRpY19jYXN0PFNjcm9sbGJhclRoZW1lTWFjKj4oJnNjcm9sbGJhclRoZW1lKTsKKyAg
ICAgICAgICAgIGlmIChtYWNUaGVtZS5pc0xheW91dERpcmVjdGlvblJUTCgqbGF5ZXIudmVydGlj
YWxTY3JvbGxiYXIoKSkpCisgICAgICAgICAgICAgICAgdHMgPDwgIiBzY3JvbGxiYXJIYXNSVExM
YXlvdXREaXJlY3Rpb24iOworICAgICAgICB9CisjZW5kaWYKICAgICB9CiAKICAgICBpZiAocGFp
bnRQaGFzZSA9PSBMYXllclBhaW50UGhhc2VCYWNrZ3JvdW5kKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuY3BwCmluZGV4IDU3YTE2OWFkNTUyMGU3OWQ1MDI2NDhiYmY1MGU5MDMyZjgyOGNi
MzMuLjlmMjM1M2U1MWFhNWQyNDkwNjQxZmNkMTAxZmI1OWMxYjZhYzllNjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTI3MzcsNiArMjczNywxMSBAQCB2b2lkIEludGVy
bmFsczo6c2V0VXNlc01vY2tTY3JvbGxBbmltYXRvcihib29sIGVuYWJsZWQpCiAgICAgV2ViQ29y
ZTo6U2V0dGluZ3M6OnNldFVzZXNNb2NrU2Nyb2xsQW5pbWF0b3IoZW5hYmxlZCk7CiB9CiAKK3Zv
aWQgSW50ZXJuYWxzOjpzZXRNb2NrU2Nyb2xsYmFyc0VuYWJsZWQoYm9vbCBlbmFibGVkKQorewor
ICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRNb2NrU2Nyb2xsYmFyc0VuYWJsZWQoZW5hYmxlZCk7
Cit9CisKIHZvaWQgSW50ZXJuYWxzOjpmb3JjZVJlbG9hZChib29sIGVuZFRvRW5kKQogewogICAg
IGZyYW1lKCktPmxvYWRlcigpLnJlbG9hZChlbmRUb0VuZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaAppbmRleCBhYjliNDcxN2IwZDJiNjRkYjg2OTE5YzRjZTgxOWNmNzM5NTk2MzFhLi4z
YTRjNTI1OTk5Yzg4MGY3YzBhNTM0MmE4NDBhNjI0Y2VhYWNhMmNkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmgKQEAgLTM0OCw4ICszNDgsOSBAQCBwdWJsaWM6CiAKICAgICBib29sIGlz
RnJvbUN1cnJlbnRXb3JsZChEZXByZWNhdGVkOjpTY3JpcHRWYWx1ZSkgY29uc3Q7CiAKLSAgICB2
b2lkIHNldFVzZXNPdmVybGF5U2Nyb2xsYmFycyhib29sIGVuYWJsZWQpOwotICAgIHZvaWQgc2V0
VXNlc01vY2tTY3JvbGxBbmltYXRvcihib29sIGVuYWJsZWQpOworICAgIHZvaWQgc2V0VXNlc092
ZXJsYXlTY3JvbGxiYXJzKGJvb2wpOworICAgIHZvaWQgc2V0VXNlc01vY2tTY3JvbGxBbmltYXRv
cihib29sKTsKKyAgICB2b2lkIHNldE1vY2tTY3JvbGxiYXJzRW5hYmxlZChib29sKTsKIAogICAg
IFN0cmluZyBnZXRDdXJyZW50Q3Vyc29ySW5mbyhFeGNlcHRpb25Db2RlJik7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAppbmRleCAyNDI2YzY2MGIwOWZmYjhiZTI5NTI0ZTcyNWY3
YTNkMDMxZTdiOTNiLi4xOGMzMGM1NzBkZjQzNTIxMjk3NTY4YzRjZTUwNDU3MzAwNDVhZWM5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCkBAIC0zNTEsNiArMzUxLDcgQEAgZW51
bSBBdXRvRmlsbEJ1dHRvblR5cGUgewogCiAgICAgdm9pZCBzZXRVc2VzT3ZlcmxheVNjcm9sbGJh
cnMoYm9vbGVhbiBlbmFibGVkKTsKICAgICB2b2lkIHNldFVzZXNNb2NrU2Nyb2xsQW5pbWF0b3Io
Ym9vbGVhbiBlbmFibGVkKTsKKyAgICB2b2lkIHNldE1vY2tTY3JvbGxiYXJzRW5hYmxlZChib29s
ZWFuIGVuYWJsZWQpOwogCiAgICAgdm9pZCBmb3JjZVJlbG9hZChib29sZWFuIGVuZFRvRW5kKTsK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCmluZGV4IDU4ZDYxZDgzYjRhMWQyNTBlYTc5YTY3YmNmNjFjZjY0YTY0OTJjM2QuLjFlMTlm
OTExZDBmNWQ2OTZkMGQ2MDY0YWI1NzIxMTc1NWY2MTVlMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxNyBA
QAogMjAxNi0wMy0zMCAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgog
CisgICAgICAgIFtPUyBYXSBbUlRMIFNjcm9sbGJhcnNdIE92ZXJsYXkgUlRMIHNjcm9sbGJhcnMg
YW5pbWF0ZSBpbiBmcm9tIHRoZSB3cm9uZyBzaWRlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTU5NjIKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KKworICAgICAgICBUaGlzIHRlc3Qgb25seSBwcmludHMgdGhlICJSVEwiIHRva2Vu
IHdoZW4gcnVubmluZyBvbiBjZXJ0YWluIE9TZXMuCisKKyAgICAgICAgKiBmYXN0L3Njcm9sbGlu
Zy9ydGwtc2Nyb2xsYmFycy1hbmltYXRpb24tcHJvcGVydHkuaHRtbDogQWRkZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL2Zhc3Qvc2Nyb2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlvbi1w
cm9wZXJ0eS1leHBlY3RlZC50eHQ6IEFkZGVkLgorCisyMDE2LTAzLTMwICBNeWxlcyBDLiBNYXhm
aWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKICAgICAgICAgW09TIFhdIFtSVEwgU2Nyb2xs
YmFyc10gTGlzdCBib3hlcyBzaG91bGQgb2JleSBSVEwgc2Nyb2xsYmFycwogICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU1OTkxCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3Qvc2Nyb2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlvbi1wcm9w
ZXJ0eS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zY3JvbGxpbmcvcnRsLXNjcm9sbGJhcnMtYW5p
bWF0aW9uLXByb3BlcnR5Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTZjNjlhMmZlYTNlYzc5ZmE3YjNmOTQ3
YzRhMTYwNTlmMzM1OWEzYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2Ny
b2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlvbi1wcm9wZXJ0eS5odG1sCkBAIC0wLDAgKzEs
MTUgQEAKKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgcnRsU2Nyb2xs
YmFycz10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50
ZXJuYWxzKQorICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0TW9ja1Njcm9sbGJhcnNFbmFibGVkKGZh
bHNlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAw
cHg7IGhlaWdodDogMjAwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IHNjcm9sbDsi
PgorPGRpdiBzdHlsZT0id2lkdGg6IDFweDsgaGVpZ2h0OiAyMDAwcHg7IHBvc2l0aW9uOiBhYnNv
bHV0ZTsgbGVmdDogMHB4OyB0b3A6IDBweDsiPjwvZGl2PgorPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMXB4OyBoZWlnaHQ6IDIwMDBweDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwcHg7
IHRvcDogMHB4OyI+PC9kaXY+Cis8L2JvZHk+Cis8aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9mYXN0L3Njcm9sbGluZy9ydGwtc2Nyb2xsYmFycy1hbmltYXRpb24t
cHJvcGVydHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3Qvc2Ny
b2xsaW5nL3J0bC1zY3JvbGxiYXJzLWFuaW1hdGlvbi1wcm9wZXJ0eS1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYjQ5NTBhYTNiNThkZDA4ODg3OWNmODE3MTFmNzhmZGJkZDExNmI1YwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L3Njcm9sbGluZy9ydGwt
c2Nyb2xsYmFycy1hbmltYXRpb24tcHJvcGVydHktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEg
QEAKK2xheWVyIGF0ICgwLDApIHNpemUgNzg1eDIwMDAKKyAgUmVuZGVyVmlldyBhdCAoMCwwKSBz
aXplIDc4NXg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgNzg1eDIxNgorICBSZW5kZXJCbG9jayB7
SFRNTH0gYXQgKDAsMCkgc2l6ZSA3ODV4MjE2CisgICAgUmVuZGVyQm9keSB7Qk9EWX0gYXQgKDgs
OCkgc2l6ZSA3Njl4MjAwCitsYXllciBhdCAoOCw4KSBzaXplIDIwMHgyMDAgY2xpcCBhdCAoOCw4
KSBzaXplIDE4NXgxODUgc2Nyb2xsSGVpZ2h0IDIwMDAKKyAgUmVuZGVyQmxvY2sgKHJlbGF0aXZl
IHBvc2l0aW9uZWQpIHtESVZ9IGF0ICgwLDApIHNpemUgMjAweDIwMAorbGF5ZXIgYXQgKDgsOCkg
c2l6ZSAxeDIwMDAgYmFja2dyb3VuZENsaXAgYXQgKDgsOCkgc2l6ZSAxODV4MTg1IGNsaXAgYXQg
KDgsOCkgc2l6ZSAxODV4MTg1CisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVkKSB7RElWfSBhdCAo
MCwwKSBzaXplIDF4MjAwMAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSAxeDIwMDAKKyAgUmVuZGVyQmxv
Y2sgKHBvc2l0aW9uZWQpIHtESVZ9IGF0ICgwLDApIHNpemUgMXgyMDAwCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>