<?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>88297</bug_id>
          
          <creation_ts>2012-06-04 23:40:40 -0700</creation_ts>
          <short_desc>Change the styling of the Chromium video controls</short_desc>
          <delta_ts>2012-06-13 17:50:24 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>87683</dependson>
    
    <dependson>87835</dependson>
          <blocked>84672</blocked>
    
    <blocked>88623</blocked>
    
    <blocked>88724</blocked>
    
    <blocked>88743</blocked>
    
    <blocked>88818</blocked>
    
    <blocked>89050</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Silvia Pfeiffer">silviapf</reporter>
          <assigned_to name="Silvia Pfeiffer">silviapf</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>eric</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ojan</cc>
    
    <cc>tkent</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>641219</commentid>
    <comment_count>0</comment_count>
    <who name="Silvia Pfeiffer">silviapf</who>
    <bug_when>2012-06-04 23:40:40 -0700</bug_when>
    <thetext>This is a third patch for the introduction of the new Chromium video controls, master bug at https://bugs.webkit.org/show_bug.cgi?id=84672 .

This does the actual visual update. As such, it includes the change of the CSS using the new flexbox and new styles, the removal of the now not needed controls background div, and the introduction of the new images for the buttons.

The visual update of the range sliders will be in a separate patch.

Not to land separately and to land after 87835.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642261</commentid>
    <comment_count>1</comment_count>
      <attachid>145954</attachid>
    <who name="Silvia Pfeiffer">silviapfeiffer1</who>
    <bug_when>2012-06-06 00:53:46 -0700</bug_when>
    <thetext>Created attachment 145954
Full patch for layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642267</commentid>
    <comment_count>2</comment_count>
      <attachid>145956</attachid>
    <who name="Silvia Pfeiffer">silviapf</who>
    <bug_when>2012-06-06 00:56:45 -0700</bug_when>
    <thetext>Created attachment 145956
Review this for the differences to the second patch

As it turns out, there are still too many changes to the new flexbox model, so I&apos;ve gone back to the old one, which is also more consistent with the other WebKit styles for video controls shadow DOM elements.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642558</commentid>
    <comment_count>3</comment_count>
      <attachid>145956</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-06-06 09:55:22 -0700</bug_when>
    <thetext>Comment on attachment 145956
Review this for the differences to the second patch

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

&gt; Source/WebCore/rendering/RenderMediaControlsChromium.cpp:278
&gt; +const int mediaSliderThumbWidth = 32;
&gt; +const int mediaSliderThumbHeight = 24;

Nit: you might want to add &quot;Timeline&quot; to these names to match the pattern used for the other names.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>643223</commentid>
    <comment_count>4</comment_count>
    <who name="Silvia Pfeiffer">silviapf</who>
    <bug_when>2012-06-06 22:47:56 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 145956 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=145956&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderMediaControlsChromium.cpp:278
&gt; &gt; +const int mediaSliderThumbWidth = 32;
&gt; &gt; +const int mediaSliderThumbHeight = 24;
&gt; 
&gt; Nit: you might want to add &quot;Timeline&quot; to these names to match the pattern used for the other names.

Thanks, will do when uploading the patch for landing rebased to the current codebase.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647439</commentid>
    <comment_count>5</comment_count>
    <who name="Silvia Pfeiffer">silviapf</who>
    <bug_when>2012-06-12 16:06:17 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 145956 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=145956&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderMediaControlsChromium.cpp:278
&gt; &gt; +const int mediaSliderThumbWidth = 32;
&gt; &gt; +const int mediaSliderThumbHeight = 24;
&gt; 
&gt; Nit: you might want to add &quot;Timeline&quot; to these names to match the pattern used for the other names.

Decided not to do this for consistency, since all constants and variable names in the media controls system for the timeline/transport are called &quot;mediaslider&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647448</commentid>
    <comment_count>6</comment_count>
      <attachid>147185</attachid>
    <who name="Silvia Pfeiffer">silviapfeiffer1</who>
    <bug_when>2012-06-12 16:14:11 -0700</bug_when>
    <thetext>Created attachment 147185
Patch for cq</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647799</commentid>
    <comment_count>7</comment_count>
      <attachid>147185</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-13 01:19:37 -0700</bug_when>
    <thetext>Comment on attachment 147185
Patch for cq

Clearing flags on attachment: 147185

Committed r120171: &lt;http://trac.webkit.org/changeset/120171&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647800</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-13 01:19:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145954</attachid>
            <date>2012-06-06 00:53:46 -0700</date>
            <delta_ts>2012-06-12 16:13:58 -0700</delta_ts>
            <desc>Full patch for layout tests</desc>
            <filename>bug-88297-20120606175344.patch</filename>
            <type>text/plain</type>
            <size>51572</size>
            <attacher name="Silvia Pfeiffer">silviapfeiffer1</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5NDUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjkwNTdjZWMxMmJmOTBh
OGJjYmNkYzk1MzZhZWI1ODI4YjE5NWQ5Yi4uYzc4M2EyY2RmN2RkMjYyYTYyOTE5NGZkZWQ1ZDQ5
MTg4MTRiZGUyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4MCBAQAorMjAxMi0wNi0wNiAgU2ls
dmlhIFBmZWlmZmVyICA8c2lsdmlhcGZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENoYW5nZSB0
aGUgc3R5bGluZyBvZiB0aGUgQ2hyb21pdW0gdmlkZW8gY29udHJvbHMuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODI5NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKGZpbmFsIHBh
dGNoIHdpbGwgY29udGFpbiB0aGUgcmViYXNlbGluZWQgdGVzdHMpCisKKyAgICAgICAgVGhlIENo
cm9tZSB2aWRlbyBjb250cm9scyBhcmUgcmVjZWl2aW5nIGEgdmlzdWFsIHVwZGF0ZS4gVGhpcyBw
YXRjaCBpbmNsdWRlcyBDU1MgY2hhbmdlcywKKyAgICAgICAgdGhlIHJlbW92YWwgb2YgdGhlIG5v
dyBubyBsb25nZXIgbmVlZGVkIGNvbnRyb2xzIGJhY2tncm91bmQgZGl2LCBhbmQgdGhlIGludHJv
ZHVjdGlvbiBvZgorICAgICAgICBuZXcgaW1hZ2VzIGZvciB0aGUgYnV0dG9ucy4KKworICAgICAg
ICAqIGNzcy9tZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3NzOgorICAgICAgICAoYXVkaW8pOgorICAg
ICAgICBBZGp1c3QgaGVpZ2h0IG9mIGF1ZGlvIGNvbnRyb2xzLgorICAgICAgICAoOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzKToKKyAgICAgICAgVXNlIGZsZXhib3ggb24gbWVkaWEgY29udHJvbHMg
c2hhZG93IERPTS4KKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xv
c3VyZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlKToKKyAgICAgICAg
QWRqdXN0IGhlaWdodCwgbWF4LXdpZHRoLCB0ZXh0LWluZGVudCBhbmQgYm94LXNpemluZywgYW5k
IHJlc2V0IHBhZGRpbmcgdG8gMC4KKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLWVuY2xvc3VyZSk6CisgICAgICAgIFVzZSA1cHggcGFkZGluZyBvbmx5IGZvciB2aWRlbyBj
b250cm9scyBhbmQgYWRqdXN0IGhlaWdodCBhY2NvcmRpbmdseS4KKyAgICAgICAgKGF1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1wYW5lbCk6CisgICAgICAgIFVzZSBmbGV4Ym94IG9uIHBhbmVsLCBhZGp1c3QgYm90dG9tIGFs
aWdubWVudCwgaGVpZ2h0LCBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBib3JkZXIgcmFkaXVzLgorICAg
ICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24sIHZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uKToKKyAgICAgICAgRGlzcGxheSBidXR0
b25zIGlubGluZSB3aXRoIGZpeGVkIHdpZHRoIGFuZCBoZWlnaHQsIHZlcnRpY2FsbHkgY2VudGVy
ZWQsIG5vIHBhZGRpbmcgYW5kCisgICAgICAgIDZweCBzcGFjZSB0byBuZXh0IGNvbnRyb2xzIGVs
ZW1lbnQgKHRoaXMgd2lsbCBiZSAxNXB4IGluY2wgdGhlIHNwYWNlIGluIHRoZSBpbWFnZSkuCisg
ICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0b24pOgorICAgICAgICBEaXNwbGF5IGJ1
dHRvbnMgaW5saW5lIHdpdGggZml4ZWQgd2lkdGggYW5kIGhlaWdodCwgdmVydGljYWxseSBjZW50
ZXJlZCwgbm8gcGFkZGluZyBhbmQKKyAgICAgICAgOXB4IHNwYWNlIHRvIG5leHQgY29udHJvbHMg
ZWxlbWVudCAodGhpcyB3aWxsIGJlIDE1cHggaW5jbCB0aGUgc3BhY2UgaW4gdGhlIGltYWdlKS4K
KyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNw
bGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1jdXJyZW50LXRpbWUtZGlzcGxheSk6
CisgICAgICAgIERpc3BsYXkgdGV4dCBhcyBibG9jaywgd2l0aG91dCBicm9kZXIsIGFkanVzdGVk
IGhlaWdodCwgZm9udC1mYW1pbHksIGZvbnQtc2l6ZSBhbmQgOXB4IHNwYWNlCisgICAgICAgIHRv
IG5leHQgY29udHJvbHMgZWxlbWVudCAodGhpcyB3aWxsIGJlIDE1cHggaW5jbCB0aGUgc3BhY2Ug
aW4gdGhlIGltYWdlKS4KKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRp
bWVsaW5lLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSk6CisgICAgICAg
IEFkanVzdCBoZWlnaHQsIHBhZGRpbmcsIGJhY2tncm91bmQtY29sb3IsIG1pbi13ZGl0aCBhbmQg
MTVweCBzcGFjZSB0byBuZXh0IGNvbnRyb2xzIGVsZW1lbnQuCisgICAgICAgIChhdWRpbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy12b2x1bWUtc2xpZGVyKToKKyAgICAgICAgQWRqdXN0IGhlaWdodCwgbWF4LSBhbmQg
bWluLXdpZHRoLCBiYWNrZ3JvdW5kLWNvbG9yIGFuZCAxNXB4IHNwYWNlIHRvIG5leHQgY29udHJv
bHMgZWxlbWVudC4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVu
dENocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50
Q2hyb21pdW06Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0pOgorICAgICAgICBSZW1v
dmUgdGltZWxpbmUgY29udGFpbmVyLCB3aGljaCBpcyBub3QgbmVjZXNzYXJ5IGFueSBsb25nZXIg
YmVjYXVzZSBvZiB0aGUgdXNlIG9mIGZsZXhib3guCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNv
bnRyb2xSb290RWxlbWVudENocm9taXVtOjpjcmVhdGUpOgorICAgICAgICBSZW1vdmUgdGltZWxp
bmUgY29udGFpbmVyLCB3aGljaCBpcyBub3QgbmVjZXNzYXJ5IGFueSBsb25nZXIgYmVjYXVzZSBv
ZiB0aGUgdXNlIG9mIGZsZXhib3guCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSb290
RWxlbWVudENocm9taXVtOjpzZXRNZWRpYUNvbnRyb2xsZXIpOgorICAgICAgICBSZW1vdmUgdGlt
ZWxpbmUgY29udGFpbmVyLCB3aGljaCBpcyBub3QgbmVjZXNzYXJ5IGFueSBsb25nZXIgYmVjYXVz
ZSBvZiB0aGUgdXNlIG9mIGZsZXhib3guCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xS
b290RWxlbWVudENocm9taXVtOjpyZXNldCk6CisgICAgICAgIFNob3cgdGhlIHRpbWVsaW5lIGlu
c3RlYWQgb2YgdGhlIHRpbWVsaW5lIGNvbnRhaW5lciB3aGVuIHJlc2V0dGluZy4KKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06OnJlcG9ydGVkRXJyb3Ip
OgorICAgICAgICBIaWRlIHRoZSB0aW1lbGluZSBpbnN0ZWFkIG9mIHRoZSB0aW1lbGluZSBjb250
YWluZXIgd2hlbiBydW5uaW5nIGludG8gYW4gZXJyb3IuCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwYWludE1l
ZGlhTXV0ZUJ1dHRvbik6CisgICAgICAgIEludHJvZHVjZSBuZXcgaW1hZ2UgcmVzb3VyY2VzIGZv
ciB0aGUgbXV0ZSBidXR0b24gYW5kIGFkanVzdCBpdCBiYXNlZCBvbiB2b2x1bWUgbGV2ZWxzLgor
ICAgICAgICAoV2ViQ29yZTo6cGFpbnRNZWRpYVBsYXlCdXR0b24pOgorICAgICAgICBJbnRyb2R1
Y2UgbmV3IGltYWdlIHJlc291cmNlcyBmb3IgdGhlIHBsYXkgYnV0dG9uLgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0TWVkaWFTbGlkZXJUaHVtYik6CisgICAgICAgIEludHJvZHVjZSBuZXcgaW1hZ2Ug
cmVzb3VyY2VzIGZvciB0aGUgcG9zaXRpb24gc2xpZGVyIHRodW1iLgorICAgICAgICAoV2ViQ29y
ZTo6cGFpbnRNZWRpYVZvbHVtZVNsaWRlclRodW1iKToKKyAgICAgICAgSW50cm9kdWNlIG5ldyBp
bWFnZSByZXNvdXJjZXMgZm9yIHRoZSB2b2x1bWUgc2xpZGVyIHRodW1iLgorICAgICAgICBSZW1v
dmUgdGltZWxpbmUgY29udGFpbmVyIHJlbmRlcmluZy4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRNZWRpYUNvbnRyb2xzUGFydCk6CisgICAgICAg
IEFkZCB0aW1lbGluZSBjb250YWluZXIgcGFpbnRpbmcgdG8gdGhlICJub3QgcmVhY2hlZCIgZWxl
bWVudHMuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgUHJvdmlkZSBzaXplIHNldHRpbmdz
IGZvciB0aGUgcG9zaXRpb24gYW5kIHZvbHVtZSBzbGlkZXJzLgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtOjphZGp1c3RNZWRpYVNsaWRlclRodW1iU2l6ZSk6
CisgICAgICAgIENhbGN1bGF0ZSBjb3JyZWN0IHdpZHRoIGFuZCBoZWlnaHQgc2V0dGluZ3MgZm9y
IHRoZSBuZXcgaW1hZ2UgcmVzb3VyY2VzIG9mIHRoZSBwb3NpdGlvbiBhbmQgdm9sdW1lCisgICAg
ICAgIHNsaWRlciB0aHVtYnMuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21p
dW1NYWMuaDoKKyAgICAgICAgKFJlbmRlclRoZW1lQ2hyb21pdW1NYWMpOgorICAgICAgICBSZW1v
dmUgdGltZWxpbmUgY29udGFpbmVyIHJlbmRlcmluZyAoaS5lLiB0aGUgbWVkaWEgY29udHJvbHMg
YmFja2dyb3VuZCkuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMu
bW06CisgICAgICAgIFJlbW92ZSB0aW1lbGluZSBjb250YWluZXIgcmVuZGVyaW5nIChpLmUuIHRo
ZSBtZWRpYSBjb250cm9scyBiYWNrZ3JvdW5kKS4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGhlbWVDaHJvbWl1bVNraWEuY3BwOgorICAgICAgICBSZW1vdmUgdGltZWxpbmUgY29udGFpbmVy
IHJlbmRlcmluZyAoaS5lLiB0aGUgbWVkaWEgY29udHJvbHMgYmFja2dyb3VuZCkuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lhLmg6CisgICAgICAgIChSZW5kZXJU
aGVtZUNocm9taXVtU2tpYSk6CisgICAgICAgIFJlbW92ZSB0aW1lbGluZSBjb250YWluZXIgcmVu
ZGVyaW5nIChpLmUuIHRoZSBtZWRpYSBjb250cm9scyBiYWNrZ3JvdW5kKS4KKworMjAxMi0wNi0w
NSAgU2lsdmlhIFBmZWlmZmVyICA8c2lsdmlhcGZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENo
YW5nZSB0aGUgdm9sdW1lIHNsaWRlciB0byBob3Jpem9udGFsIHJlbmRlcmluZyBmb3IgQ2hyb21l
IHZpZGVvIGNvbnRyb2xzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODc4MzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBObyBuZXcgdGVzdHMuICh2aXN1YWwgdXBkYXRlIHdpbGwgY29udGFpbiByZWJhc2Vs
aW5lZCB0ZXN0cykKKworICAgICAgICBUaGUgQ2hyb21lIHZpZGVvIGNvbnRyb2xzIGFyZSByZWNl
aXZpbmcgYSB2aXN1YWwgdXBkYXRlLiBUaGUgdm9sdW1lIHNsaWRlciBpcyBpbmNsdWRlZCBpbnRv
CisgICAgICAgIHRoZSBjb250cm9scyB3aXRoIGhvcml6b250YWwgcmVuZGVyaW5nLCB0aGUgdm9s
dW1lIHNsaWRlciBjb250YWluZXIgaXMgcmVtb3ZlZC4gVGhlIHZpc3VhbAorICAgICAgICB1cGRh
dGUgaXRzZWxmIGlzIGluIGEgc2VwYXJhdGUgcGF0Y2guCisKKyAgICAgICAgKiBjc3MvbWVkaWFD
b250cm9sc0Nocm9taXVtLmNzczoKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLW11dGUtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRv
bik6CisgICAgICAgIFJlbW92ZWQgcmVsYXRpdmUgcG9zaXRpb25pbmcgdG8gcmVuZGVyIGFsbCBj
b250cm9scyBlbGVtZW50cyBlcXVhbGx5IGluIERPTSBvcmRlci4KKyAgICAgICAgKGF1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1wbGF5LWJ1dHRvbik6CisgICAgICAgIFJlbW92ZWQgYWJzb2x1dGUgcG9zaXRpb25p
bmcgdG8gcmVuZGVyIGFsbCBjb250cm9scyBlbGVtZW50cyBlcXVhbGx5IGluIERPTSBvcmRlci4K
KyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5l
ciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFpbmVyKToKKyAg
ICAgICAgUmVtb3ZlZCBhYnNvbHV0ZSBwb3NpdGlvbmluZyB0byByZW5kZXIgYWxsIGNvbnRyb2xz
IGVsZW1lbnRzIGVxdWFsbHkgaW4gRE9NIG9yZGVyLgorICAgICAgICAoYXVkaW86Oi13ZWJraXQt
bWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlci1jb250YWluZXIsIHZpZGVvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItY29udGFpbmVyKToKKyAgICAgICAgUmVtb3ZlZCB2
b2x1bWUgc2xpZGVyIGNvbnRhaW5lciAtIGl0J3Mgbm90IG5lY2Vzc2FyeSBhbnkgbW9yZS4KKyAg
ICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5
LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1jdXJyZW50LXRpbWUtZGlzcGxheSk6Cisg
ICAgICAgIFJlbW92ZSBmbGV4Ym94IGFuZCBpbnRyb2R1Y2UgaW5saW5lIGRpc3BsYXkgdG8gYWx3
YXlzIGRpc3BsYXkgdGhpcyBmaWVsZC4KKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXZvbHVtZS1zbGlkZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVt
ZS1zbGlkZXIpOgorICAgICAgICBSZW1vdmVkIGFic29sdXRlIHBvc2l0aW9uaW5nIHRvIHJlbmRl
ciBhbGwgY29udHJvbHMgZWxlbWVudHMgZXF1YWxseSBpbiBET00gb3JkZXIuCisgICAgICAgICog
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpNZWRpYUNvbnRyb2xS
b290RWxlbWVudENocm9taXVtKToKKyAgICAgICAgUmVtb3ZlZCB2b2x1bWUgc2xpZGVyIGNvbnRh
aW5lciAtIGl0J3Mgbm90IG5lY2Vzc2FyeSBhbnkgbW9yZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06OmNyZWF0ZSk6CisgICAgICAgIEFwcGVuZGVk
IHRoZSB2b2x1bWUgc2xpZGVyIGFuZCB0aGUgbXV0ZSBidXR0b24gZGlyZWN0bHkgdG8gdGhlIHBh
bmVsLCByZW1vdmVkIHZvbHVtZSBzbGlkZXIgY29udGFpbmVyLgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6c2V0TWVkaWFDb250cm9sbGVyKToKKyAg
ICAgICAgUmVtb3ZlZCB2b2x1bWUgc2xpZGVyIGNvbnRhaW5lci4KKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06OnJlcG9ydGVkRXJyb3IpOgorICAgICAg
ICBSZW1vdmVkIHZvbHVtZSBzbGlkZXIgY29udGFpbmVyLgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6c2hvd1ZvbHVtZVNsaWRlcik6CisgICAgICAg
IFJlbW92ZWQgdm9sdW1lIHNsaWRlciBjb250YWluZXIuCisgICAgICAgICogaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5oOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtKToKKyAgICAgICAgUmVtb3Zl
ZCB2b2x1bWUgc2xpZGVyIGNvbnRhaW5lci4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9TbGlkZXJU
aHVtYkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aGFzVmVydGljYWxBcHBlYXJhbmNl
KToKKyAgICAgICAgQWxsb3cgdXNlIG9mIGhvcml6b250YWwgbWVkaWEgdm9sdW1lIHNsaWRlci4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNsaWRlclRodW1iOjpsYXlvdXQpOgorICAgICAgICBS
ZXVzZSBoYXNWZXJ0aWNhbEFwcGVhcmFuY2UgZnVuY3Rpb24uCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFWb2x1bWVTbGlkZXIpOgorICAgICAg
ICBDaGFuZ2UgbGluZSBkcmF3aW5nIGZyb20gdmVydGljYWwgdG8gaG9yaXpvbnRhbC4KKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRo
ZW1lOjp1c2VzVmVydGljYWxWb2x1bWVTbGlkZXIpOgorICAgICAgICBBZGQgdXNlc1ZlcnRpY2Fs
Vm9sdW1lU2xpZGVyIGZ1bmN0aW9uIHRvIGFsbG93IGhvcml6b250YWwgdm9sdW1lIHNsaWRlcnMu
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lQ2hyb21pdW1NYWM6OnVzZXNWZXJ0aWNhbFZvbHVtZVNsaWRl
cik6CisgICAgICAgIEFkZCB1c2VzVmVydGljYWxWb2x1bWVTbGlkZXIgZnVuY3Rpb24gdG8gYWxs
b3cgaG9yaXpvbnRhbCB2b2x1bWUgc2xpZGVycy4KKyAgICAgICAgQWRkIHVzZXNWZXJ0aWNhbFZv
bHVtZVNsaWRlciBmdW5jdGlvbiB0byBhbGxvdyBob3Jpem9udGFsIHZvbHVtZSBzbGlkZXJzLgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVGhlbWVDaHJvbWl1bVNraWE6OnVzZXNWZXJ0aWNhbFZvbHVtZVNsaWRl
cik6CisgICAgICAgIEFkZCB1c2VzVmVydGljYWxWb2x1bWVTbGlkZXIgZnVuY3Rpb24gdG8gYWxs
b3cgaG9yaXpvbnRhbCB2b2x1bWUgc2xpZGVycy4KKworMjAxMi0wNS0yOCAgU2lsdmlhIFBmZWlm
ZmVyICA8c2lsdmlhcGZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEludHJvZHVjZSBhbiBFbmNs
b3N1cmUgRWxlbWVudCBmb3IgQ2hyb21pdW0gdmlkZW8gY29udHJvbHMuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzY4MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgdGVzdHMuCisKKyAgICAg
ICAgVGhlIENocm9tZSB2aWRlbyBjb250cm9scyBhcmUgcmVjZWl2aW5nIGEgdmlzdWFsIHVwZGF0
ZS4gQSBuZXcgZW5jbG9zdXJlIGRpdiBpcyByZXF1aXJlZAorICAgICAgICB0byBwcm92aWRlIGZv
ciBhIG9mZnNldCBzcGFjZSBmcm9tIHRoZSB2aWRlbydzIGJvdW5kYXJpZXMuIFRoZSB2aXN1YWwg
dXBkYXRlIGl0c2VsZiBpcyBpbgorICAgICAgICBhIHNlcGFyYXRlIHBhdGNoLgorCisgICAgICAg
ICogY3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3M6CisgICAgICAgICh2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUpOgorICAgICAgICBJbnRyb2R1Y2UgQ1NTIGZvciBl
bmNsb3N1cmUgZGl2IHNvIGl0IGRvZXNuJ3Qgc2hvdyB5ZXQuCisgICAgICAgICogaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xDaHJvbWl1bUVuY2xvc3VyZUVsZW1lbnQ6Ok1lZGlhQ29udHJvbENocm9t
aXVtRW5jbG9zdXJlRWxlbWVudCk6CisgICAgICAgIERlZmluaXRpb24gb2YgdGhlIG5ldyBlbmNs
b3N1cmUgZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbENocm9taXVtRW5j
bG9zdXJlRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgRGVmaW5pdGlvbiBvZiBhIGNyZWF0ZSBv
cGVyYXRvciBmb3IgdGhlIG5ldyBlbmNsb3N1cmUgZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhQ29udHJvbENocm9taXVtRW5jbG9zdXJlRWxlbWVudDo6c2hhZG93UHNldWRvSWQpOgor
ICAgICAgICBEZWZpbml0aW9uIG9mIHRoZSBzaGFkb3dQc2V1ZG9JZCBvZiAtd2Via2l0LW1lZGlh
LWNvbnRyb2xzLWVuY2xvc3VyZSBmb3IgdGhlIGVuY2xvc3VyZSBkaXYuCisgICAgICAgIChXZWJD
b3JlOjpNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpNZWRpYUNvbnRyb2xSb290RWxl
bWVudENocm9taXVtKToKKyAgICAgICAgSW5pdGlhbGl6ZSBtZW1iZXIgZWxlbWVudCBmb3IgZW5j
bG9zdXJlIGRpdi4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hy
b21pdW06OmNyZWF0ZSk6CisgICAgICAgIEluc3RhbnRpYXRlIGVuY2xvc3VyZSBkaXYgYW5kIGFk
ZCBpbnRvIERPTSBiZXR3ZWVuIGNvbnRyb2xzIGFuZCBwYW5lbCBlbGVtZW50cy4KKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06OnNldE1lZGlhQ29udHJv
bGxlcik6CisgICAgICAgIFNldCBtZWRpYSBjb250cm9sbGVyIGZvciBlbmNsb3N1cmUgZGl2Lgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6Y3JlYXRl
VGV4dFRyYWNrRGlzcGxheSk6CisgICAgICAgIEluc2VydCB0ZXh0IHRyYWNrIGRpc3BsYXkgY29u
dGFpbmVyIHRvIGVuY2xvc3VyZSByYXRoZXIgdGhhbiBwYW5lbC4KKyAgICAgICAgKiBodG1sL3No
YWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKE1lZGlhQ29udHJvbENocm9taXVtRW5jbG9zdXJlRWxlbWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xDaHJvbWl1bUVuY2xvc3VyZUVsZW1lbnQ6OnNldE1l
ZGlhQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xDaHJvbWl1bUVu
Y2xvc3VyZUVsZW1lbnQ6Om1lZGlhQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YUNvbnRyb2xDaHJvbWl1bUVuY2xvc3VyZUVsZW1lbnQ6OmlzTWVkaWFDb250cm9sRWxlbWVudCk6
CisgICAgICAgIEFkZCBkZWNsYXJhdGlvbiBvZiB0aGUgbmV3IGVuY2xvc3VyZSBlbGVtZW50IGFu
ZCBpdHMgbWVtYmVyIGZ1bmN0aW9ucy4KKyAgICAgICAgKE1lZGlhQ29udHJvbFJvb3RFbGVtZW50
Q2hyb21pdW0pOgorICAgICAgICBBZGQgbWVtYmVyIHZhcmlhYmxlIHRvIGNvbnRyb2xzIHJvb3Qg
ZWxlbWVudCB0byBob2xkIHRoZSBlbmNsb3N1cmUgZWxlbWVudC4KKwogMjAxMi0wNi0wNCAgSHVn
byBQYXJlbnRlIExpbWEgIDxodWdvLmxpbWFAb3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBUdXJu
IExFR0FDWV9WSUVXUE9SVF9BREFQVElPTiBVU0UgZmxhZyBpbnRvIGFuIEVOQUJMRSBmbGFnLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3Mg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVkaWFDb250cm9sc0Nocm9taXVtLmNzcwppbmRleCA0MDkz
OThjNWQwY2NmMGM5ZDYzZjYwZTliNjkzNzJlOWEzOTI0ZDI2Li45ZWQ4Y2M3MzdiYjcyYTE3NWMw
ODJhNDg5Yzg0ZGQ1MjY3NDQ4YTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVk
aWFDb250cm9sc0Nocm9taXVtLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVkaWFDb250
cm9sc0Nocm9taXVtLmNzcwpAQCAtMzEsNyArMzEsNyBAQCBib2R5Oi13ZWJraXQtZnVsbC1wYWdl
LW1lZGlhIHsKIAogYXVkaW8gewogICAgIHdpZHRoOiAzMDBweDsKLSAgICBoZWlnaHQ6IDMycHg7
CisgICAgaGVpZ2h0OiAzMHB4OwogfQogCiBhdWRpbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSwg
dmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgewpAQCAtMzksOTEgKzM5LDc4IEBAIGF1ZGlv
Oi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhLCB2aWRlbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSB7
CiAgICAgbWF4LXdpZHRoOiAxMDAlOwogfQogCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1wYW5lbCwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwgewotICAgIC13ZWJr
aXQtdXNlci1zZWxlY3Q6IG5vbmU7Cis6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMgeworICAgIGRp
c3BsYXk6IC13ZWJraXQtYm94OworICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CiAg
ICAgLXdlYmtpdC1ib3gtcGFjazogZW5kOwotICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICBv
dmVyZmxvdzogdmlzaWJsZTsKLSAgICBib3R0b206IDA7CisgICAgLXdlYmtpdC1ib3gtYWxpZ246
IGNlbnRlcjsKK30KKworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUgewogICAgIHdpZHRoOiAxMDAl
OwotICAgIGhlaWdodDogMzJweDsKLSAgICB6LWluZGV4OiAwOwotICAgIGJhY2tncm91bmQtY29s
b3I6IHJnYmEoMCwgMCwgMCwgMC42KTsKKyAgICBtYXgtd2lkdGg6IDgwMHB4OworICAgIGhlaWdo
dDogMzBweDsKKyAgICBib3R0b206IDA7CisgICAgdGV4dC1pbmRlbnQ6IDA7CisgICAgcGFkZGlu
ZzogMDsKKyAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogfQogCi12aWRlbzotd2Via2l0LWZ1
bGwtcGFnZS1tZWRpYTo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCB7Ci0gICAgYm90dG9t
OiAwcHg7Cit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUgeworICAgIHBh
ZGRpbmc6IDBweCA1cHggNXB4IDVweDsKKyAgICBoZWlnaHQ6IDM1cHg7CiB9CiAKIGF1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1wYW5lbCB7Ci0gICAgLXdlYmtpdC1ib3gtYWxpZ246IGVuZDsKKyAgICBkaXNwbGF5OiAtd2Vi
a2l0LWJveDsKKyAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7CisgICAgLXdlYmtp
dC1ib3gtYWxpZ246IGNlbnRlcjsKKyAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7CisgICAg
Ym90dG9tOiBhdXRvOworICAgIGhlaWdodDogMzBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2JhKDIwLCAyMCwgMjAsIDAuOCk7CisgICAgYm9yZGVyLXJhZGl1czogNXB4OwogfQogCiBhdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtbXV0ZS1idXR0b24gewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEt
bXV0ZS1idXR0b247Ci0gICAgcG9zaXRpb246IHJlbGF0aXZlOwotICAgIHRvcDogYXV0bzsKLSAg
ICBib3R0b206IDA7Ci0gICAgcmlnaHQ6IDA7Ci0gICAgbGVmdDogYXV0bzsKLQotICAgIHdpZHRo
OiAzNHB4OwotICAgIGhlaWdodDogMzJweDsKKyAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgYm9y
ZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDM1cHg7
CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbjog
MCA2cHggMCAwOworICAgIHBhZGRpbmc6IDA7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1
dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1wbGF5LWJ1dHRvbjsKLQotICAg
IHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICB0b3A6IGF1dG87Ci0gICAgYm90dG9tOiA3cHg7Ci0g
ICAgbGVmdDogN3B4OwotICAgIHJpZ2h0OiA2cHg7Ci0KLSAgICB3aWR0aDogMThweDsKLSAgICBo
ZWlnaHQ6IDE5cHg7Ci19Ci0KLWF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5l
LWNvbnRhaW5lciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFp
bmVyIHsKLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXRpbWVsaW5lLWNvbnRhaW5lcjsK
LSAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwotICAgIC13ZWJraXQtYm94LW9yaWVudDog
aG9yaXpvbnRhbDsKLSAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwotICAgIC13ZWJraXQt
Ym94LXBhY2s6IGNlbnRlcjsKLSAgICAtd2Via2l0LWJveC1mbGV4OiAxOwotCi0gICAgcG9zaXRp
b246IGFic29sdXRlOwotICAgIHRvcDogYXV0bzsKLSAgICBib3R0b206IDA7Ci0gICAgbGVmdDog
MzBweDsKLSAgICByaWdodDogMzRweDsKLQotICAgIHdpZHRoOiBhdXRvOwotICAgIGhlaWdodDog
MzJweDsKLQotICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAw
LjIpOwotICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4y
KTsKKyAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXpp
bmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAg
IGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiA5cHg7CisgICAgbWFyZ2luLXJp
Z2h0OiA5cHg7CisgICAgcGFkZGluZzogMDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LWN1cnJlbnQtdGltZS1kaXNwbGF5IHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLWN1
cnJlbnQtdGltZS1kaXNwbGF5OwogICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7Ci0gICAg
ZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAgLXdlYmtpdC1ib3gtZmxleDogMDsKLSAgICAtd2Vi
a2l0LWJveC1wYWNrOiBjZW50ZXI7Ci0gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKLQot
ICAgIG92ZXJmbG93OiBoaWRkZW47CisgICAgZGlzcGxheTogYmxvY2s7CisgICAgYm9yZGVyOiBu
b25lOwogICAgIGN1cnNvcjogZGVmYXVsdDsKIAotICAgIGxpbmUtaGVpZ2h0OiAyMXB4OwotICAg
IGhlaWdodDogMjBweDsKLSAgICB3aWR0aDogNThweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAg
bWFyZ2luOiAwIDlweCAwIDA7CisgICAgcGFkZGluZzogMDsKIAotICAgIHRleHQtYWxpZ246IGNl
bnRlcjsKLSAgICBmb250LWZhbWlseTogQXJpYWw7Ci0gICAgZm9udC1zaXplOiAxNnB4OwotICAg
IGZvbnQtd2VpZ2h0OiBib2xkOworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIGZvbnQtZmFt
aWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOworICAgIGZvbnQtc2l6ZTogMTNweDsK
ICAgICBjb2xvcjogd2hpdGU7CiAKICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOwpAQCAtMTM3
LDQwICsxMjQsMjIgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1l
LWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2wKIGF1ZGlvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXRpbWVsaW5lLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1l
bGluZSB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1zbGlkZXI7CiAgICAgZGlzcGxh
eTogLXdlYmtpdC1ib3g7Ci0gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAtd2Via2l0
LWJveC1mbGV4OiAxOwotCi0gICAgcGFkZGluZzogMHB4OwotICAgIG1hcmdpbjogMHB4IDZweDsK
LSAgICBoZWlnaHQ6IDE4cHg7Ci0KLSAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1
NSwgMC4yKTsKLSAgICBib3JkZXItc3R5bGU6IHNvbGlkOwotICAgIGJvcmRlci13aWR0aDogMXB4
OwotICAgIGJvcmRlci1yYWRpdXM6IDJweDsKLSAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1
NSwgMjU1LCAyNTUsIDAuMDgpOwotICAgIGNvbG9yOiByZ2IoNTAsIDE0MCwgMjIzKTsKLX0KLQot
YXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlci1jb250YWluZXIsIHZp
ZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItY29udGFpbmVyIHsKLSAg
ICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXZvbHVtZS1zbGlkZXItY29udGFpbmVyOwotICAg
IHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICBib3R0b206IDMycHg7Ci0KLSAgICB3aWR0aDogMzRw
eDsKLSAgICBoZWlnaHQ6IDEwMHB4OwotCi0gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAw
LCAwLCAwLjYpOworICAgIGhlaWdodDogOHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAg
ICBwYWRkaW5nOiAwOworICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OworICAgIG1p
bi13aWR0aDogMjVweDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1l
LXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciB7CiAg
ICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS12b2x1bWUtc2xpZGVyOwotICAgIGRpc3BsYXk6
IGlubGluZTsKLSAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0KLSAgICB0b3A6IDEwcHg7Ci0gICAg
bGVmdDogMTJweDsKLQotICAgIHdpZHRoOiAxMHB4OwotICAgIGhlaWdodDogODBweDsKKyAgICBk
aXNwbGF5OiAtd2Via2l0LWJveDsKKyAgICAtd2Via2l0LWJveC1mbGV4OiAxOworICAgIGhlaWdo
dDogOHB4OworICAgIG1heC13aWR0aDogNzBweDsKKyAgICBtYXJnaW46IDAgMTVweCAwIDA7Cisg
ICAgcGFkZGluZzogMDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKKyAgICBt
aW4td2lkdGg6IDE1cHg7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0uY3BwCmluZGV4IGJkY2Q5
MTY0ZDg5ZGFkNGI3ZmQ3ODhkYWEyMmIzMzk2OGY5ZTAwYTUuLmM3NDVkNjMxOGFiNWM3OGYwMjcx
ZDNlYjUxOTA4OTA0YjU5ZWMzOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0uY3BwCkBAIC0y
OSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKFZJREVPKQogI2luY2x1ZGUgIk1lZGlhQ29udHJvbFJv
b3RFbGVtZW50Q2hyb21pdW0uaCIKIAorI2luY2x1ZGUgIkhUTUxEaXZFbGVtZW50LmgiCiAjaW5j
bHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1
ZGUgIk1lZGlhQ29udHJvbEVsZW1lbnRzLmgiCkBAIC00NSwxNyArNDYsMzMgQEAgdXNpbmcgbmFt
ZXNwYWNlIHN0ZDsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitNZWRpYUNvbnRyb2xDaHJvbWl1
bUVuY2xvc3VyZUVsZW1lbnQ6Ok1lZGlhQ29udHJvbENocm9taXVtRW5jbG9zdXJlRWxlbWVudChE
b2N1bWVudCogZG9jdW1lbnQpCisgICAgOiBIVE1MRGl2RWxlbWVudChIVE1MTmFtZXM6OmRpdlRh
ZywgZG9jdW1lbnQtPmRvY3VtZW50KCkpCisgICAgLCBtX21lZGlhQ29udHJvbGxlcigwKQorewor
fQorCitQYXNzUmVmUHRyPE1lZGlhQ29udHJvbENocm9taXVtRW5jbG9zdXJlRWxlbWVudD4gTWVk
aWFDb250cm9sQ2hyb21pdW1FbmNsb3N1cmVFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQqIGRvY3Vt
ZW50KQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFDb250cm9sQ2hyb21pdW1FbmNs
b3N1cmVFbGVtZW50KGRvY3VtZW50KSk7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgTWVkaWFD
b250cm9sQ2hyb21pdW1FbmNsb3N1cmVFbGVtZW50OjpzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0Cit7
CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIGlkLCAoIi13ZWJraXQtbWVk
aWEtY29udHJvbHMtZW5jbG9zdXJlIikpOworICAgIHJldHVybiBpZDsKK30KKwogTWVkaWFDb250
cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bShE
b2N1bWVudCogZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xzKGRvY3VtZW50KQogICAgICwg
bV9tZWRpYUNvbnRyb2xsZXIoMCkKICAgICAsIG1fcGxheUJ1dHRvbigwKQogICAgICwgbV9jdXJy
ZW50VGltZURpc3BsYXkoMCkKICAgICAsIG1fdGltZWxpbmUoMCkKLSAgICAsIG1fdGltZWxpbmVD
b250YWluZXIoMCkKICAgICAsIG1fcGFuZWxNdXRlQnV0dG9uKDApCiAgICAgLCBtX3ZvbHVtZVNs
aWRlcigwKQotICAgICwgbV92b2x1bWVTbGlkZXJDb250YWluZXIoMCkKICAgICAsIG1fcGFuZWwo
MCkKKyAgICAsIG1fZW5jbG9zdXJlKDApCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKQogICAgICwg
bV90ZXh0RGlzcGxheUNvbnRhaW5lcigwKQogICAgICwgbV90ZXh0VHJhY2tEaXNwbGF5KDApCkBA
IC03Nyw2ICs5NCw5IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1
bT4gTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6Y3JlCiAKICAgICBSZWZQdHI8TWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bT4gY29udHJvbHMgPSBhZG9wdFJlZihuZXcgTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bShkb2N1bWVudCkpOwogCisgICAgLy8gQ3JlYXRl
IGFuIGVuY2xvc2luZyBlbGVtZW50IGZvciB0aGUgcGFuZWwgc28gd2UgY2FuIHZpc3VhbGx5IG9m
ZnNldCB0aGUgY29udHJvbHMgY29ycmVjdGx5LgorICAgIFJlZlB0cjxNZWRpYUNvbnRyb2xDaHJv
bWl1bUVuY2xvc3VyZUVsZW1lbnQ+IGVuY2xvc3VyZSA9IE1lZGlhQ29udHJvbENocm9taXVtRW5j
bG9zdXJlRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKKwogICAgIFJlZlB0cjxNZWRpYUNvbnRy
b2xQYW5lbEVsZW1lbnQ+IHBhbmVsID0gTWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpjcmVhdGUo
ZG9jdW1lbnQpOwogCiAgICAgRXhjZXB0aW9uQ29kZSBlYzsKQEAgLTg3LDUyICsxMDcsMzcgQEAg
UGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtPiBNZWRpYUNvbnRyb2xS
b290RWxlbWVudENocm9taXVtOjpjcmUKICAgICBpZiAoZWMpCiAgICAgICAgIHJldHVybiAwOwog
Ci0gICAgUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudD4gdGltZWxp
bmVDb250YWluZXIgPSBNZWRpYUNvbnRyb2xUaW1lbGluZUNvbnRhaW5lckVsZW1lbnQ6OmNyZWF0
ZShkb2N1bWVudCk7Ci0KICAgICBSZWZQdHI8TWVkaWFDb250cm9sVGltZWxpbmVFbGVtZW50PiB0
aW1lbGluZSA9IE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBj
b250cm9scy5nZXQoKSk7CiAgICAgY29udHJvbHMtPm1fdGltZWxpbmUgPSB0aW1lbGluZS5nZXQo
KTsKLSAgICB0aW1lbGluZUNvbnRhaW5lci0+YXBwZW5kQ2hpbGQodGltZWxpbmUucmVsZWFzZSgp
LCBlYywgdHJ1ZSk7CisgICAgcGFuZWwtPmFwcGVuZENoaWxkKHRpbWVsaW5lLnJlbGVhc2UoKSwg
ZWMsIHRydWUpOwogICAgIGlmIChlYykKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBSZWZQdHI8
TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudD4gY3VycmVudFRpbWVEaXNwbGF5
ID0gTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50
KTsKICAgICBjb250cm9scy0+bV9jdXJyZW50VGltZURpc3BsYXkgPSBjdXJyZW50VGltZURpc3Bs
YXkuZ2V0KCk7Ci0gICAgdGltZWxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKGN1cnJlbnRUaW1l
RGlzcGxheS5yZWxlYXNlKCksIGVjLCB0cnVlKTsKKyAgICBwYW5lbC0+YXBwZW5kQ2hpbGQoY3Vy
cmVudFRpbWVEaXNwbGF5LnJlbGVhc2UoKSwgZWMsIHRydWUpOwogICAgIGlmIChlYykKICAgICAg
ICAgcmV0dXJuIDA7CiAKLSAgICBjb250cm9scy0+bV90aW1lbGluZUNvbnRhaW5lciA9IHRpbWVs
aW5lQ29udGFpbmVyLmdldCgpOwotICAgIHBhbmVsLT5hcHBlbmRDaGlsZCh0aW1lbGluZUNvbnRh
aW5lci5yZWxlYXNlKCksIGVjLCB0cnVlKTsKKyAgICBSZWZQdHI8TWVkaWFDb250cm9sUGFuZWxN
dXRlQnV0dG9uRWxlbWVudD4gcGFuZWxNdXRlQnV0dG9uID0gTWVkaWFDb250cm9sUGFuZWxNdXRl
QnV0dG9uRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBjb250cm9scy5nZXQoKSk7CisgICAgY29u
dHJvbHMtPm1fcGFuZWxNdXRlQnV0dG9uID0gcGFuZWxNdXRlQnV0dG9uLmdldCgpOworICAgIHBh
bmVsLT5hcHBlbmRDaGlsZChwYW5lbE11dGVCdXR0b24ucmVsZWFzZSgpLCBlYywgdHJ1ZSk7CiAg
ICAgaWYgKGVjKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIFJlZlB0cjxIVE1MRGl2RWxlbWVu
dD4gcGFuZWxWb2x1bWVDb250cm9sQ29udGFpbmVyID0gSFRNTERpdkVsZW1lbnQ6OmNyZWF0ZShk
b2N1bWVudCk7Ci0KLSAgICBSZWZQdHI8TWVkaWFDb250cm9sVm9sdW1lU2xpZGVyQ29udGFpbmVy
RWxlbWVudD4gdm9sdW1lU2xpZGVyQ29udGFpbmVyID0gTWVkaWFDb250cm9sVm9sdW1lU2xpZGVy
Q29udGFpbmVyRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKLQogICAgIFJlZlB0cjxNZWRpYUNv
bnRyb2xWb2x1bWVTbGlkZXJFbGVtZW50PiBzbGlkZXIgPSBNZWRpYUNvbnRyb2xWb2x1bWVTbGlk
ZXJFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQpOwogICAgIGNvbnRyb2xzLT5tX3ZvbHVtZVNsaWRl
ciA9IHNsaWRlci5nZXQoKTsKLSAgICB2b2x1bWVTbGlkZXJDb250YWluZXItPmFwcGVuZENoaWxk
KHNsaWRlci5yZWxlYXNlKCksIGVjLCB0cnVlKTsKKyAgICBwYW5lbC0+YXBwZW5kQ2hpbGQoc2xp
ZGVyLnJlbGVhc2UoKSwgZWMsIHRydWUpOwogICAgIGlmIChlYykKICAgICAgICAgcmV0dXJuIDA7
CiAKLSAgICBjb250cm9scy0+bV92b2x1bWVTbGlkZXJDb250YWluZXIgPSB2b2x1bWVTbGlkZXJD
b250YWluZXIuZ2V0KCk7Ci0gICAgcGFuZWxWb2x1bWVDb250cm9sQ29udGFpbmVyLT5hcHBlbmRD
aGlsZCh2b2x1bWVTbGlkZXJDb250YWluZXIucmVsZWFzZSgpLCBlYywgdHJ1ZSk7Ci0gICAgaWYg
KGVjKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIFJlZlB0cjxNZWRpYUNvbnRyb2xQYW5lbE11
dGVCdXR0b25FbGVtZW50PiBwYW5lbE11dGVCdXR0b24gPSBNZWRpYUNvbnRyb2xQYW5lbE11dGVC
dXR0b25FbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQsIGNvbnRyb2xzLmdldCgpKTsKLSAgICBjb250
cm9scy0+bV9wYW5lbE11dGVCdXR0b24gPSBwYW5lbE11dGVCdXR0b24uZ2V0KCk7Ci0gICAgcGFu
ZWxWb2x1bWVDb250cm9sQ29udGFpbmVyLT5hcHBlbmRDaGlsZChwYW5lbE11dGVCdXR0b24ucmVs
ZWFzZSgpLCBlYywgdHJ1ZSk7Ci0gICAgaWYgKGVjKQotICAgICAgICByZXR1cm4gMDsKLQotICAg
IHBhbmVsLT5hcHBlbmRDaGlsZChwYW5lbFZvbHVtZUNvbnRyb2xDb250YWluZXIsIGVjLCB0cnVl
KTsKKyAgICBjb250cm9scy0+bV9wYW5lbCA9IHBhbmVsLmdldCgpOworICAgIGVuY2xvc3VyZS0+
YXBwZW5kQ2hpbGQocGFuZWwucmVsZWFzZSgpLCBlYywgdHJ1ZSk7CiAgICAgaWYgKGVjKQogICAg
ICAgICByZXR1cm4gMDsKIAotICAgIGNvbnRyb2xzLT5tX3BhbmVsID0gcGFuZWwuZ2V0KCk7Ci0g
ICAgY29udHJvbHMtPmFwcGVuZENoaWxkKHBhbmVsLnJlbGVhc2UoKSwgZWMsIHRydWUpOworICAg
IGNvbnRyb2xzLT5tX2VuY2xvc3VyZSA9IGVuY2xvc3VyZS5nZXQoKTsKKyAgICBjb250cm9scy0+
YXBwZW5kQ2hpbGQoZW5jbG9zdXJlLnJlbGVhc2UoKSwgZWMsIHRydWUpOwogICAgIGlmIChlYykK
ICAgICAgICAgcmV0dXJuIDA7CiAKQEAgLTE1MSwxNiArMTU2LDE0IEBAIHZvaWQgTWVkaWFDb250
cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6c2V0TWVkaWFDb250cm9sbGVyKE1lZGlhQ29udHJvbGxl
ckludGVyZmFjCiAgICAgICAgIG1fY3VycmVudFRpbWVEaXNwbGF5LT5zZXRNZWRpYUNvbnRyb2xs
ZXIoY29udHJvbGxlcik7CiAgICAgaWYgKG1fdGltZWxpbmUpCiAgICAgICAgIG1fdGltZWxpbmUt
PnNldE1lZGlhQ29udHJvbGxlcihjb250cm9sbGVyKTsKLSAgICBpZiAobV90aW1lbGluZUNvbnRh
aW5lcikKLSAgICAgICAgbV90aW1lbGluZUNvbnRhaW5lci0+c2V0TWVkaWFDb250cm9sbGVyKGNv
bnRyb2xsZXIpOwogICAgIGlmIChtX3BhbmVsTXV0ZUJ1dHRvbikKICAgICAgICAgbV9wYW5lbE11
dGVCdXR0b24tPnNldE1lZGlhQ29udHJvbGxlcihjb250cm9sbGVyKTsKICAgICBpZiAobV92b2x1
bWVTbGlkZXIpCiAgICAgICAgIG1fdm9sdW1lU2xpZGVyLT5zZXRNZWRpYUNvbnRyb2xsZXIoY29u
dHJvbGxlcik7Ci0gICAgaWYgKG1fdm9sdW1lU2xpZGVyQ29udGFpbmVyKQotICAgICAgICBtX3Zv
bHVtZVNsaWRlckNvbnRhaW5lci0+c2V0TWVkaWFDb250cm9sbGVyKGNvbnRyb2xsZXIpOwogICAg
IGlmIChtX3BhbmVsKQogICAgICAgICBtX3BhbmVsLT5zZXRNZWRpYUNvbnRyb2xsZXIoY29udHJv
bGxlcik7CisgICAgaWYgKG1fZW5jbG9zdXJlKQorICAgICAgICBtX2VuY2xvc3VyZS0+c2V0TWVk
aWFDb250cm9sbGVyKGNvbnRyb2xsZXIpOwogI2lmIEVOQUJMRShWSURFT19UUkFDSykKICAgICBp
ZiAobV90ZXh0RGlzcGxheUNvbnRhaW5lcikKICAgICAgICAgbV90ZXh0RGlzcGxheUNvbnRhaW5l
ci0+c2V0TWVkaWFDb250cm9sbGVyKGNvbnRyb2xsZXIpOwpAQCAtMTc4LDcgKzE4MSw2IEBAIHZv
aWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6aGlkZSgpCiB7CiAgICAgbV9wYW5l
bC0+c2V0SXNEaXNwbGF5ZWQoZmFsc2UpOwogICAgIG1fcGFuZWwtPmhpZGUoKTsKLSAgICBtX3Zv
bHVtZVNsaWRlckNvbnRhaW5lci0+aGlkZSgpOwogfQogCiB2b2lkIE1lZGlhQ29udHJvbFJvb3RF
bGVtZW50Q2hyb21pdW06Om1ha2VPcGFxdWUoKQpAQCAtMTg5LDcgKzE5MSw2IEBAIHZvaWQgTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZU9wYXF1ZSgpCiB2b2lkIE1lZGlhQ29u
dHJvbFJvb3RFbGVtZW50Q2hyb21pdW06Om1ha2VUcmFuc3BhcmVudCgpCiB7CiAgICAgbV9wYW5l
bC0+bWFrZVRyYW5zcGFyZW50KCk7Ci0gICAgbV92b2x1bWVTbGlkZXJDb250YWluZXItPmhpZGUo
KTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpyZXNldCgpCkBA
IC0yMDIsNyArMjAzLDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpy
ZXNldCgpCiAKICAgICBmbG9hdCBkdXJhdGlvbiA9IG1fbWVkaWFDb250cm9sbGVyLT5kdXJhdGlv
bigpOwogICAgIG1fdGltZWxpbmUtPnNldER1cmF0aW9uKGR1cmF0aW9uKTsKLSAgICBtX3RpbWVs
aW5lQ29udGFpbmVyLT5zaG93KCk7CisgICAgbV90aW1lbGluZS0+c2hvdygpOwogICAgIG1fdGlt
ZWxpbmUtPnNldFBvc2l0aW9uKG1fbWVkaWFDb250cm9sbGVyLT5jdXJyZW50VGltZSgpKTsKICAg
ICB1cGRhdGVUaW1lRGlzcGxheSgpOwogCkBAIC0yNTksOSArMjYwLDkgQEAgdm9pZCBNZWRpYUNv
bnRyb2xSb290RWxlbWVudENocm9taXVtOjpyZXBvcnRlZEVycm9yKCkKICAgICBpZiAoIXBhZ2Up
CiAgICAgICAgIHJldHVybjsKIAotICAgIG1fdGltZWxpbmVDb250YWluZXItPmhpZGUoKTsKKyAg
ICBtX3RpbWVsaW5lLT5oaWRlKCk7CiAgICAgbV9wYW5lbE11dGVCdXR0b24tPmhpZGUoKTsKLSAg
ICBtX3ZvbHVtZVNsaWRlckNvbnRhaW5lci0+aGlkZSgpOworICAgIG1fdm9sdW1lU2xpZGVyLT5o
aWRlKCk7CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6dXBkYXRl
U3RhdHVzRGlzcGxheSgpCkBAIC0zMzEsNyArMzMyLDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290
RWxlbWVudENocm9taXVtOjpzaG93Vm9sdW1lU2xpZGVyKCkKICAgICBpZiAoIW1fbWVkaWFDb250
cm9sbGVyLT5oYXNBdWRpbygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX3ZvbHVtZVNsaWRl
ckNvbnRhaW5lci0+c2hvdygpOworICAgIG1fdm9sdW1lU2xpZGVyLT5zaG93KCk7CiB9CiAKICNp
ZiBFTkFCTEUoVklERU9fVFJBQ0spCkBAIC0zNDUsNyArMzQ2LDcgQEAgdm9pZCBNZWRpYUNvbnRy
b2xSb290RWxlbWVudENocm9taXVtOjpjcmVhdGVUZXh0VHJhY2tEaXNwbGF5KCkKIAogICAgIC8v
IEluc2VydCBpdCBiZWZvcmUgdGhlIGZpcnN0IGNvbnRyb2xsZXIgZWxlbWVudCBzbyBpdCBhbHdh
eXMgZGlzcGxheXMgYmVoaW5kIHRoZSBjb250cm9scy4KICAgICBFeGNlcHRpb25Db2RlIGVjOwot
ICAgIGluc2VydEJlZm9yZSh0ZXh0RGlzcGxheUNvbnRhaW5lci5yZWxlYXNlKCksIG1fcGFuZWws
IGVjLCB0cnVlKTsKKyAgICBpbnNlcnRCZWZvcmUodGV4dERpc3BsYXlDb250YWluZXIucmVsZWFz
ZSgpLCBtX2VuY2xvc3VyZSwgZWMsIHRydWUpOwogfQogCiB2b2lkIE1lZGlhQ29udHJvbFJvb3RF
bGVtZW50Q2hyb21pdW06OnNob3dUZXh0VHJhY2tEaXNwbGF5KCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0uaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21p
dW0uaAppbmRleCAzNjYxODZiNjVlMWY4MjU1NWJiMWY1NzFjNTY5YjM3Zjk0N2UwMWM5Li5jN2Zi
MzljZWMyOTNmNThjN2NlYTYwYzY1NzU4NDZiZDZkMjdmZTNkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJv
bWl1bS5oCkBAIC00Nyw4ICs0Nyw4IEBAIGNsYXNzIE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxl
bWVudDsKIGNsYXNzIE1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudDsKIGNsYXNz
IE1lZGlhQ29udHJvbE11dGVCdXR0b25FbGVtZW50OwogY2xhc3MgTWVkaWFDb250cm9sVm9sdW1l
U2xpZGVyRWxlbWVudDsKLWNsYXNzIE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckNvbnRhaW5lckVs
ZW1lbnQ7CiBjbGFzcyBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ7CitjbGFzcyBNZWRpYUNvbnRy
b2xDaHJvbWl1bUVuY2xvc3VyZUVsZW1lbnQ7CiBjbGFzcyBNZWRpYUNvbnRyb2xsZXJJbnRlcmZh
Y2U7CiBjbGFzcyBNZWRpYVBsYXllcjsKIApAQCAtNjAsNiArNjAsMjQgQEAgY2xhc3MgTWVkaWFD
b250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudDsKIGNsYXNzIE1lZGlhQ29udHJvbFRleHRU
cmFja0Rpc3BsYXlFbGVtZW50OwogI2VuZGlmCiAKK2NsYXNzIE1lZGlhQ29udHJvbENocm9taXVt
RW5jbG9zdXJlRWxlbWVudCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7CitwdWJsaWM6CisgICAg
c3RhdGljIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sQ2hyb21pdW1FbmNsb3N1cmVFbGVtZW50PiBj
cmVhdGUoRG9jdW1lbnQqKTsKKworICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBzaGFk
b3dQc2V1ZG9JZCgpIGNvbnN0OworCisgICAgdm9pZCBzZXRNZWRpYUNvbnRyb2xsZXIoTWVkaWFD
b250cm9sbGVySW50ZXJmYWNlKiBjb250cm9sbGVyKSB7IG1fbWVkaWFDb250cm9sbGVyID0gY29u
dHJvbGxlcjsgfQorICAgIE1lZGlhQ29udHJvbGxlckludGVyZmFjZSogbWVkaWFDb250cm9sbGVy
KCkgY29uc3QgeyByZXR1cm4gbV9tZWRpYUNvbnRyb2xsZXI7IH0KKworcHJvdGVjdGVkOgorICAg
IE1lZGlhQ29udHJvbENocm9taXVtRW5jbG9zdXJlRWxlbWVudChEb2N1bWVudCopOworCitwcml2
YXRlOgorICAgIHZpcnR1YWwgYm9vbCBpc01lZGlhQ29udHJvbEVsZW1lbnQoKSBjb25zdCB7IHJl
dHVybiB0cnVlOyB9CisKKyAgICBNZWRpYUNvbnRyb2xsZXJJbnRlcmZhY2UqIG1fbWVkaWFDb250
cm9sbGVyOworfTsKKwogY2xhc3MgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bSA6IHB1
YmxpYyBNZWRpYUNvbnRyb2xzIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRp
YUNvbnRyb2xSb290RWxlbWVudENocm9taXVtPiBjcmVhdGUoRG9jdW1lbnQqKTsKQEAgLTEyMCw4
ICsxMzgsOCBAQCBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxl
bWVudCogbV90aW1lbGluZUNvbnRhaW5lcjsKICAgICBNZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0
b25FbGVtZW50KiBtX3BhbmVsTXV0ZUJ1dHRvbjsKICAgICBNZWRpYUNvbnRyb2xWb2x1bWVTbGlk
ZXJFbGVtZW50KiBtX3ZvbHVtZVNsaWRlcjsKLSAgICBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJD
b250YWluZXJFbGVtZW50KiBtX3ZvbHVtZVNsaWRlckNvbnRhaW5lcjsKICAgICBNZWRpYUNvbnRy
b2xQYW5lbEVsZW1lbnQqIG1fcGFuZWw7CisgICAgTWVkaWFDb250cm9sQ2hyb21pdW1FbmNsb3N1
cmVFbGVtZW50KiBtX2VuY2xvc3VyZTsKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCiAgICAgTWVk
aWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudCogbV90ZXh0RGlzcGxheUNvbnRhaW5l
cjsKICAgICBNZWRpYUNvbnRyb2xUZXh0VHJhY2tEaXNwbGF5RWxlbWVudCogbV90ZXh0VHJhY2tE
aXNwbGF5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU2xpZGVyVGh1
bWJFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxl
bWVudC5jcHAKaW5kZXggODQyMmEzMDE5OTAyMjk5MTFiNThiNjAwNzhkZDE4MDk2NDVkOWQ3Yy4u
YTNiNmMzMmZkYjlmYjVlZTc2NWJlMTgyMTFjNGVhOWNlNDJmZDE4MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TbGlkZXJUaHVtYkVsZW1lbnQuY3BwCkBAIC02Miw3ICs2
MiwxMCBAQCBpbmxpbmUgc3RhdGljIGJvb2wgaGFzVmVydGljYWxBcHBlYXJhbmNlKEhUTUxJbnB1
dEVsZW1lbnQqIGlucHV0KQogewogICAgIEFTU0VSVChpbnB1dC0+cmVuZGVyZXIoKSk7CiAgICAg
UmVuZGVyU3R5bGUqIHNsaWRlclN0eWxlID0gaW5wdXQtPnJlbmRlcmVyKCktPnN0eWxlKCk7Ci0g
ICAgcmV0dXJuIHNsaWRlclN0eWxlLT5hcHBlYXJhbmNlKCkgPT0gU2xpZGVyVmVydGljYWxQYXJ0
IHx8IHNsaWRlclN0eWxlLT5hcHBlYXJhbmNlKCkgPT0gTWVkaWFWb2x1bWVTbGlkZXJQYXJ0Owor
ICAgIFJlbmRlclRoZW1lKiBzbGlkZXJUaGVtZSA9IGlucHV0LT5yZW5kZXJlcigpLT50aGVtZSgp
OworCisgICAgcmV0dXJuIHNsaWRlclN0eWxlLT5hcHBlYXJhbmNlKCkgPT0gU2xpZGVyVmVydGlj
YWxQYXJ0CisgICAgICAgIHx8IChzbGlkZXJTdHlsZS0+YXBwZWFyYW5jZSgpID09IE1lZGlhVm9s
dW1lU2xpZGVyUGFydCAmJiBzbGlkZXJUaGVtZS0+dXNlc1ZlcnRpY2FsVm9sdW1lU2xpZGVyKCkp
OwogfQogCiBTbGlkZXJUaHVtYkVsZW1lbnQqIHNsaWRlclRodW1iRWxlbWVudE9mKE5vZGUqIG5v
ZGUpCkBAIC0xMDgsNyArMTExLDcgQEAgdm9pZCBSZW5kZXJTbGlkZXJUaHVtYjo6bGF5b3V0KCkK
ICAgICAvLyBEbyBub3QgY2FzdCBub2RlKCkgdG8gU2xpZGVyVGh1bWJFbGVtZW50LiBUaGlzIHJl
bmRlcmVyIGlzIHVzZWQgZm9yCiAgICAgLy8gVHJhY2tMaW1pdEVsZW1lbnQgdG9vLgogICAgIEhU
TUxJbnB1dEVsZW1lbnQqIGlucHV0ID0gbm9kZSgpLT5zaGFkb3dBbmNlc3Rvck5vZGUoKS0+dG9J
bnB1dEVsZW1lbnQoKTsKLSAgICBib29sIGlzVmVydGljYWwgPSBzdHlsZSgpLT5hcHBlYXJhbmNl
KCkgPT0gU2xpZGVyVGh1bWJWZXJ0aWNhbFBhcnQgfHwgc3R5bGUoKS0+YXBwZWFyYW5jZSgpID09
IE1lZGlhVm9sdW1lU2xpZGVyVGh1bWJQYXJ0OworICAgIGJvb2wgaXNWZXJ0aWNhbCA9IGhhc1Zl
cnRpY2FsQXBwZWFyYW5jZShpbnB1dCk7CiAKICAgICBkb3VibGUgZnJhY3Rpb24gPSBzbGlkZXJQ
b3NpdGlvbihpbnB1dCkgKiAxMDA7CiAgICAgaWYgKGlzVmVydGljYWwpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3Bw
CmluZGV4IDcyZTEyYzg4MWJjNzNmZDA1ZTk2NWE5OGIwZGI5YmY2YjA4ZWU4ZmYuLmUzNzgyZDU4
N2ZhYzNlMTU4OTI3NWZkNjkwODE4OWY5MGVjZTgzM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCkBAIC03
NCwxNCArNzQsMjEgQEAgc3RhdGljIGJvb2wgcGFpbnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2Jq
ZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmYKICAgICBpZiAoIW1lZGlhRWxl
bWVudCkKICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN0YXRpYyBJbWFnZSogc291bmRGdWxs
ID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFTb3VuZEZ1bGwiKTsKLSAgICBzdGF0aWMgSW1hZ2Uq
IHNvdW5kTm9uZSA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU291bmROb25lIik7Ci0gICAgc3Rh
dGljIEltYWdlKiBzb3VuZERpc2FibGVkID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFTb3VuZERp
c2FibGVkIik7CisgICAgc3RhdGljIEltYWdlKiBzb3VuZExldmVsMyA9IHBsYXRmb3JtUmVzb3Vy
Y2UoIm1lZGlhcGxheWVyU291bmRMZXZlbDMiKTsKKyAgICBzdGF0aWMgSW1hZ2UqIHNvdW5kTGV2
ZWwyID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJTb3VuZExldmVsMiIpOworICAgIHN0
YXRpYyBJbWFnZSogc291bmRMZXZlbDEgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclNv
dW5kTGV2ZWwxIik7CisgICAgc3RhdGljIEltYWdlKiBzb3VuZERpc2FibGVkID0gcGxhdGZvcm1S
ZXNvdXJjZSgibWVkaWFwbGF5ZXJTb3VuZERpc2FibGVkIik7CiAKLSAgICBpZiAoIWhhc1NvdXJj
ZShtZWRpYUVsZW1lbnQpIHx8ICFtZWRpYUVsZW1lbnQtPmhhc0F1ZGlvKCkpCisgICAgaWYgKCFo
YXNTb3VyY2UobWVkaWFFbGVtZW50KSB8fCAhbWVkaWFFbGVtZW50LT5oYXNBdWRpbygpIHx8IG1l
ZGlhRWxlbWVudC0+bXV0ZWQoKSB8fCBtZWRpYUVsZW1lbnQtPnZvbHVtZSgpIDw9IDApCiAgICAg
ICAgIHJldHVybiBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0LCBzb3Vu
ZERpc2FibGVkKTsKIAotICAgIHJldHVybiBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250
ZXh0LCByZWN0LCBtZWRpYUVsZW1lbnQtPm11dGVkKCkgPyBzb3VuZE5vbmU6IHNvdW5kRnVsbCk7
CisgICAgaWYgKG1lZGlhRWxlbWVudC0+dm9sdW1lKCkgPD0gMC4zMykKKyAgICAgICAgcmV0dXJu
IHBhaW50TWVkaWFCdXR0b24ocGFpbnRJbmZvLmNvbnRleHQsIHJlY3QsIHNvdW5kTGV2ZWwxKTsK
KworICAgIGlmIChtZWRpYUVsZW1lbnQtPnZvbHVtZSgpIDw9IDAuNjYpCisgICAgICAgIHJldHVy
biBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0LCBzb3VuZExldmVsMik7
CisKKyAgICByZXR1cm4gcGFpbnRNZWRpYUJ1dHRvbihwYWludEluZm8uY29udGV4dCwgcmVjdCwg
c291bmRMZXZlbDMpOwogfQogCiBzdGF0aWMgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5k
ZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJl
Y3QmIHJlY3QpCkBAIC05MCw5ICs5Nyw5IEBAIHN0YXRpYyBib29sIHBhaW50TWVkaWFQbGF5QnV0
dG9uKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mCiAgICAg
aWYgKCFtZWRpYUVsZW1lbnQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN0YXRpYyBJ
bWFnZSogbWVkaWFQbGF5ID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFQbGF5Iik7Ci0gICAgc3Rh
dGljIEltYWdlKiBtZWRpYVBhdXNlID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFQYXVzZSIpOwot
ICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5RGlzYWJsZWQgPSBwbGF0Zm9ybVJlc291cmNlKCJt
ZWRpYVBsYXlEaXNhYmxlZCIpOworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5ID0gcGxhdGZv
cm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJQbGF5Iik7CisgICAgc3RhdGljIEltYWdlKiBtZWRpYVBh
dXNlID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJQYXVzZSIpOworICAgIHN0YXRpYyBJ
bWFnZSogbWVkaWFQbGF5RGlzYWJsZWQgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclBs
YXlEaXNhYmxlZCIpOwogCiAgICAgaWYgKCFoYXNTb3VyY2UobWVkaWFFbGVtZW50KSkKICAgICAg
ICAgcmV0dXJuIHBhaW50TWVkaWFCdXR0b24ocGFpbnRJbmZvLmNvbnRleHQsIHJlY3QsIG1lZGlh
UGxheURpc2FibGVkKTsKQEAgLTEwMiw3ICsxMDksNyBAQCBzdGF0aWMgYm9vbCBwYWludE1lZGlh
UGxheUJ1dHRvbihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludElu
ZgogCiBzdGF0aWMgSW1hZ2UqIGdldE1lZGlhU2xpZGVyVGh1bWIoKQogewotICAgIHN0YXRpYyBJ
bWFnZSogbWVkaWFTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU2xpZGVyVGh1
bWIiKTsKKyAgICBzdGF0aWMgSW1hZ2UqIG1lZGlhU2xpZGVyVGh1bWIgPSBwbGF0Zm9ybVJlc291
cmNlKCJtZWRpYXBsYXllclNsaWRlclRodW1iIik7CiAgICAgcmV0dXJuIG1lZGlhU2xpZGVyVGh1
bWI7CiB9CiAKQEAgLTIwMCw4ICsyMDcsOCBAQCBzdGF0aWMgYm9vbCBwYWludE1lZGlhVm9sdW1l
U2xpZGVyKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SQogICAg
IGlmIChvcmlnaW5hbENvbG9yICE9IENvbG9yOjp3aGl0ZSkKICAgICAgICAgY29udGV4dC0+c2V0
U3Ryb2tlQ29sb3IoQ29sb3I6OndoaXRlLCBDb2xvclNwYWNlRGV2aWNlUkdCKTsKIAotICAgIGlu
dCB4ID0gcmVjdC54KCkgKyByZWN0LndpZHRoKCkgLyAyOwotICAgIGNvbnRleHQtPmRyYXdMaW5l
KEludFBvaW50KHgsIHJlY3QueSgpKSwgIEludFBvaW50KHgsIHJlY3QueSgpICsgcmVjdC5oZWln
aHQoKSkpOworICAgIGludCB5ID0gcmVjdC55KCkgKyByZWN0LmhlaWdodCgpIC8gMjsKKyAgICBj
b250ZXh0LT5kcmF3TGluZShJbnRQb2ludChyZWN0LngoKSwgeSksICBJbnRQb2ludChyZWN0Lngo
KSArIHJlY3Qud2lkdGgoKSwgeSkpOwogCiAgICAgaWYgKG9yaWdpbmFsQ29sb3IgIT0gQ29sb3I6
OndoaXRlKQogICAgICAgICBjb250ZXh0LT5zZXRTdHJva2VDb2xvcihvcmlnaW5hbENvbG9yLCBD
b2xvclNwYWNlRGV2aWNlUkdCKTsKQEAgLTIxMCw0MyArMjE3LDEwIEBAIHN0YXRpYyBib29sIHBh
aW50TWVkaWFWb2x1bWVTbGlkZXIoUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5m
byYgcGFpbnRJCiAKIHN0YXRpYyBib29sIHBhaW50TWVkaWFWb2x1bWVTbGlkZXJUaHVtYihSZW5k
ZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJl
Y3QmIHJlY3QpCiB7Ci0gICAgc3RhdGljIEltYWdlKiBtZWRpYVZvbHVtZVNsaWRlclRodW1iID0g
cGxhdGZvcm1SZXNvdXJjZSgibWVkaWFWb2x1bWVTbGlkZXJUaHVtYiIpOworICAgIHN0YXRpYyBJ
bWFnZSogbWVkaWFWb2x1bWVTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhcGxh
eWVyVm9sdW1lU2xpZGVyVGh1bWIiKTsKICAgICByZXR1cm4gcGFpbnRNZWRpYUJ1dHRvbihwYWlu
dEluZm8uY29udGV4dCwgcmVjdCwgbWVkaWFWb2x1bWVTbGlkZXJUaHVtYik7CiB9CiAKLXN0YXRp
YyBib29sIHBhaW50TWVkaWFUaW1lbGluZUNvbnRhaW5lcihSZW5kZXJPYmplY3QqIG9iamVjdCwg
Y29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCi17Ci0gICAg
SFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50ID0gdG9QYXJlbnRNZWRpYUVsZW1lbnQob2Jq
ZWN0KTsKLSAgICBpZiAoIW1lZGlhRWxlbWVudCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0g
ICAgaWYgKCFyZWN0LmlzRW1wdHkoKSkgewotICAgICAgICBHcmFwaGljc0NvbnRleHQqIGNvbnRl
eHQgPSBwYWludEluZm8uY29udGV4dDsKLSAgICAgICAgQ29sb3Igb3JpZ2luYWxDb2xvciA9IGNv
bnRleHQtPnN0cm9rZUNvbG9yKCk7Ci0gICAgICAgIGZsb2F0IG9yaWdpbmFsVGhpY2tuZXNzID0g
Y29udGV4dC0+c3Ryb2tlVGhpY2tuZXNzKCk7Ci0gICAgICAgIFN0cm9rZVN0eWxlIG9yaWdpbmFs
U3R5bGUgPSBjb250ZXh0LT5zdHJva2VTdHlsZSgpOwotCi0gICAgICAgIGNvbnRleHQtPnNldFN0
cm9rZVN0eWxlKFNvbGlkU3Ryb2tlKTsKLQotICAgICAgICAvLyBEcmF3IHRoZSBsZWZ0IGJvcmRl
ciB1c2luZyBDU1MgZGVmaW5lZCB3aWR0aCBhbmQgY29sb3IuCi0gICAgICAgIGNvbnRleHQtPnNl
dFN0cm9rZVRoaWNrbmVzcyhvYmplY3QtPnN0eWxlKCktPmJvcmRlckxlZnRXaWR0aCgpKTsKLSAg
ICAgICAgY29udGV4dC0+c2V0U3Ryb2tlQ29sb3Iob2JqZWN0LT5zdHlsZSgpLT52aXNpdGVkRGVw
ZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCb3JkZXJMZWZ0Q29sb3IpLnJnYigpLCBDb2xvclNwYWNl
RGV2aWNlUkdCKTsKLSAgICAgICAgY29udGV4dC0+ZHJhd0xpbmUoSW50UG9pbnQocmVjdC54KCkg
KyAxLCByZWN0LnkoKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIEludFBvaW50KHJlY3Qu
eCgpICsgMSwgcmVjdC55KCkgKyByZWN0LmhlaWdodCgpKSk7Ci0KLSAgICAgICAgLy8gRHJhdyB0
aGUgcmlnaHQgYm9yZGVyIHVzaW5nIENTUyBkZWZpbmVkIHdpZHRoIGFuZCBjb2xvci4KLSAgICAg
ICAgY29udGV4dC0+c2V0U3Ryb2tlVGhpY2tuZXNzKG9iamVjdC0+c3R5bGUoKS0+Ym9yZGVyUmln
aHRXaWR0aCgpKTsKLSAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tlQ29sb3Iob2JqZWN0LT5zdHls
ZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCb3JkZXJSaWdodENvbG9yKS5y
Z2IoKSwgQ29sb3JTcGFjZURldmljZVJHQik7Ci0gICAgICAgIGNvbnRleHQtPmRyYXdMaW5lKElu
dFBvaW50KHJlY3QueCgpICsgcmVjdC53aWR0aCgpIC0gMSwgcmVjdC55KCkpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICBJbnRQb2ludChyZWN0LngoKSArIHJlY3Qud2lkdGgoKSAtIDEsIHJl
Y3QueSgpICsgcmVjdC5oZWlnaHQoKSkpOwotCi0gICAgICAgIGNvbnRleHQtPnNldFN0cm9rZUNv
bG9yKG9yaWdpbmFsQ29sb3IsIENvbG9yU3BhY2VEZXZpY2VSR0IpOwotICAgICAgICBjb250ZXh0
LT5zZXRTdHJva2VUaGlja25lc3Mob3JpZ2luYWxUaGlja25lc3MpOwotICAgICAgICBjb250ZXh0
LT5zZXRTdHJva2VTdHlsZShvcmlnaW5hbFN0eWxlKTsKLSAgICB9Ci0gICAgcmV0dXJuIHRydWU7
Ci19Ci0KIHN0YXRpYyBib29sIHBhaW50TWVkaWFGdWxsc2NyZWVuQnV0dG9uKFJlbmRlck9iamVj
dCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVj
dCkKIHsKICAgICBIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQgPSB0b1BhcmVudE1lZGlh
RWxlbWVudChvYmplY3QpOwpAQCAtMjc0LDggKzI0OCw2IEBAIGJvb2wgUmVuZGVyTWVkaWFDb250
cm9sc0Nocm9taXVtOjpwYWludE1lZGlhQ29udHJvbHNQYXJ0KE1lZGlhQ29udHJvbEVsZW1lbnRU
eXBlCiAgICAgICAgIHJldHVybiBwYWludE1lZGlhVm9sdW1lU2xpZGVyKG9iamVjdCwgcGFpbnRJ
bmZvLCByZWN0KTsKICAgICBjYXNlIE1lZGlhVm9sdW1lU2xpZGVyVGh1bWI6CiAgICAgICAgIHJl
dHVybiBwYWludE1lZGlhVm9sdW1lU2xpZGVyVGh1bWIob2JqZWN0LCBwYWludEluZm8sIHJlY3Qp
OwotICAgIGNhc2UgTWVkaWFUaW1lbGluZUNvbnRhaW5lcjoKLSAgICAgICAgcmV0dXJuIHBhaW50
TWVkaWFUaW1lbGluZUNvbnRhaW5lcihvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7CiAgICAgY2Fz
ZSBNZWRpYUVudGVyRnVsbHNjcmVlbkJ1dHRvbjoKICAgICBjYXNlIE1lZGlhRXhpdEZ1bGxzY3Jl
ZW5CdXR0b246CiAgICAgICAgIHJldHVybiBwYWludE1lZGlhRnVsbHNjcmVlbkJ1dHRvbihvYmpl
Y3QsIHBhaW50SW5mbywgcmVjdCk7CkBAIC0yODMsNiArMjU1LDcgQEAgYm9vbCBSZW5kZXJNZWRp
YUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250cm9sc1BhcnQoTWVkaWFDb250cm9sRWxl
bWVudFR5cGUKICAgICBjYXNlIE1lZGlhU2Vla0JhY2tCdXR0b246CiAgICAgY2FzZSBNZWRpYVNl
ZWtGb3J3YXJkQnV0dG9uOgogICAgIGNhc2UgTWVkaWFWb2x1bWVTbGlkZXJDb250YWluZXI6Cisg
ICAgY2FzZSBNZWRpYVRpbWVsaW5lQ29udGFpbmVyOgogICAgIGNhc2UgTWVkaWFDdXJyZW50VGlt
ZURpc3BsYXk6CiAgICAgY2FzZSBNZWRpYVRpbWVSZW1haW5pbmdEaXNwbGF5OgogICAgIGNhc2Ug
TWVkaWFDb250cm9sc1BhbmVsOgpAQCAtMzAxLDIxICsyNzQsMzMgQEAgYm9vbCBSZW5kZXJNZWRp
YUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250cm9sc1BhcnQoTWVkaWFDb250cm9sRWxl
bWVudFR5cGUKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2NvbnN0IGludCBtZWRpYVNsaWRlclRo
dW1iV2lkdGggPSAzMjsKK2NvbnN0IGludCBtZWRpYVNsaWRlclRodW1iSGVpZ2h0ID0gMjQ7Citj
b25zdCBpbnQgbWVkaWFWb2x1bWVTbGlkZXJUaHVtYldpZHRoID0gMjQ7Citjb25zdCBpbnQgbWVk
aWFWb2x1bWVTbGlkZXJUaHVtYkhlaWdodCA9IDI0OworCiB2b2lkIFJlbmRlck1lZGlhQ29udHJv
bHNDaHJvbWl1bTo6YWRqdXN0TWVkaWFTbGlkZXJUaHVtYlNpemUoUmVuZGVyU3R5bGUqIHN0eWxl
KQogewotICAgIHN0YXRpYyBJbWFnZSogbWVkaWFTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3Vy
Y2UoIm1lZGlhU2xpZGVyVGh1bWIiKTsKLSAgICBzdGF0aWMgSW1hZ2UqIG1lZGlhVm9sdW1lU2xp
ZGVyVGh1bWIgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYVZvbHVtZVNsaWRlclRodW1iIik7Cisg
ICAgc3RhdGljIEltYWdlKiBtZWRpYVNsaWRlclRodW1iID0gcGxhdGZvcm1SZXNvdXJjZSgibWVk
aWFwbGF5ZXJTbGlkZXJUaHVtYiIpOworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFWb2x1bWVTbGlk
ZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhcGxheWVyVm9sdW1lU2xpZGVyVGh1bWIi
KTsKKyAgICBpbnQgd2lkdGggPSAwOworICAgIGludCBoZWlnaHQgPSAwOwogCiAgICAgSW1hZ2Uq
IHRodW1iSW1hZ2UgPSAwOwotICAgIGlmIChzdHlsZS0+YXBwZWFyYW5jZSgpID09IE1lZGlhU2xp
ZGVyVGh1bWJQYXJ0KQorICAgIGlmIChzdHlsZS0+YXBwZWFyYW5jZSgpID09IE1lZGlhU2xpZGVy
VGh1bWJQYXJ0KSB7CiAgICAgICAgIHRodW1iSW1hZ2UgPSBtZWRpYVNsaWRlclRodW1iOwotICAg
IGVsc2UgaWYgKHN0eWxlLT5hcHBlYXJhbmNlKCkgPT0gTWVkaWFWb2x1bWVTbGlkZXJUaHVtYlBh
cnQpCisgICAgICAgIHdpZHRoID0gbWVkaWFTbGlkZXJUaHVtYldpZHRoOworICAgICAgICBoZWln
aHQgPSBtZWRpYVNsaWRlclRodW1iSGVpZ2h0OworICAgIH0gZWxzZSBpZiAoc3R5bGUtPmFwcGVh
cmFuY2UoKSA9PSBNZWRpYVZvbHVtZVNsaWRlclRodW1iUGFydCkgewogICAgICAgICB0aHVtYklt
YWdlID0gbWVkaWFWb2x1bWVTbGlkZXJUaHVtYjsKKyAgICAgICAgd2lkdGggPSBtZWRpYVZvbHVt
ZVNsaWRlclRodW1iV2lkdGg7CisgICAgICAgIGhlaWdodCA9IG1lZGlhVm9sdW1lU2xpZGVyVGh1
bWJIZWlnaHQ7CisgICAgfQogCiAgICAgZmxvYXQgem9vbUxldmVsID0gc3R5bGUtPmVmZmVjdGl2
ZVpvb20oKTsKICAgICBpZiAodGh1bWJJbWFnZSkgewotICAgICAgICBzdHlsZS0+c2V0V2lkdGgo
TGVuZ3RoKHN0YXRpY19jYXN0PGludD4odGh1bWJJbWFnZS0+d2lkdGgoKSAqIHpvb21MZXZlbCks
IEZpeGVkKSk7Ci0gICAgICAgIHN0eWxlLT5zZXRIZWlnaHQoTGVuZ3RoKHN0YXRpY19jYXN0PGlu
dD4odGh1bWJJbWFnZS0+aGVpZ2h0KCkgKiB6b29tTGV2ZWwpLCBGaXhlZCkpOworICAgICAgICBz
dHlsZS0+c2V0V2lkdGgoTGVuZ3RoKHN0YXRpY19jYXN0PGludD4od2lkdGggKiB6b29tTGV2ZWwp
LCBGaXhlZCkpOworICAgICAgICBzdHlsZS0+c2V0SGVpZ2h0KExlbmd0aChzdGF0aWNfY2FzdDxp
bnQ+KGhlaWdodCAqIHpvb21MZXZlbCksIEZpeGVkKSk7CiAgICAgfQogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCmluZGV4IGUzZTcxNDc1ZjA5YzUyZWNiNzFiNTY0Nzg5
ZGQ2YmJmZGI3ZTgyYjEuLmI2MGRkM2FmMTE4OGI5ZGU0MzE2Yjk4NmI2NmIyNTZmNWY1MTlhZWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCkBAIC0xOTgsNiArMTk4LDcg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBoYXNPd25EaXNhYmxlZFN0YXRlSGFuZGxpbmdG
b3IoQ29udHJvbFBhcnQpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29s
IHVzZXNNZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5KCkgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2
aXJ0dWFsIGJvb2wgdXNlc01lZGlhQ29udHJvbFZvbHVtZVNsaWRlcigpIGNvbnN0IHsgcmV0dXJu
IHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgdXNlc1ZlcnRpY2FsVm9sdW1lU2xpZGVyKCkgY29u
c3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHZpcnR1YWwgZG91YmxlIG1lZGlhQ29udHJvbHNGYWRl
SW5EdXJhdGlvbigpIHsgcmV0dXJuIDAuMTsgfQogICAgIHZpcnR1YWwgZG91YmxlIG1lZGlhQ29u
dHJvbHNGYWRlT3V0RHVyYXRpb24oKSB7IHJldHVybiAwLjM7IH0KICAgICB2aXJ0dWFsIFN0cmlu
ZyBmb3JtYXRNZWRpYUNvbnRyb2xzVGltZShmbG9hdCB0aW1lKSBjb25zdDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5oCmluZGV4IDJiNGM4
YzYzNWNjMjIzYzE4M2I1MThiMTJjZWFlZWY1MmZhYjBjNDMuLmFhOTRhNDI5Zjc5M2QxZjIyYTQ4
NzcwMWY5NzA0YTk1MjExZGEzMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lQ2hyb21pdW1NYWMuaApAQCAtNDIsNyArNDIsNiBAQCBwcm90ZWN0ZWQ6CiAg
ICAgdmlydHVhbCBib29sIHBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRp
YU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVj
dCYpOwogICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0
KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpOwotICAgIHZpcnR1YWwgYm9vbCBw
YWludE1lZGlhQ29udHJvbHNCYWNrZ3JvdW5kKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5m
byYsIGNvbnN0IEludFJlY3QmKTsKICAgICB2aXJ0dWFsIFN0cmluZyBleHRyYU1lZGlhQ29udHJv
bHNTdHlsZVNoZWV0KCk7CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQogICAgIHZpcnR1YWwg
U3RyaW5nIGV4dHJhRnVsbFNjcmVlblN0eWxlU2hlZXQoKTsKQEAgLTU1LDYgKzU0LDcgQEAgcHJv
dGVjdGVkOgogICAgIHZpcnR1YWwgSW50UG9pbnQgdm9sdW1lU2xpZGVyT2Zmc2V0RnJvbU11dGVC
dXR0b24oUmVuZGVyQm94KiwgY29uc3QgSW50U2l6ZSYpIGNvbnN0IE9WRVJSSURFOwogICAgIHZp
cnR1YWwgYm9vbCB1c2VzTWVkaWFDb250cm9sU3RhdHVzRGlzcGxheSgpIHsgcmV0dXJuIGZhbHNl
OyB9CiAgICAgdmlydHVhbCBib29sIGhhc093bkRpc2FibGVkU3RhdGVIYW5kbGluZ0ZvcihDb250
cm9sUGFydCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgYm9vbCB1c2VzVmVy
dGljYWxWb2x1bWVTbGlkZXIoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogI2VuZGlmCiAKICAg
ICB2aXJ0dWFsIGJvb2wgdXNlc1Rlc3RNb2RlRm9jdXNSaW5nQ29sb3IoKSBjb25zdDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1t
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMubW0KaW5k
ZXggYTc3ODIyOGM1NTIyZDZjMDI5NDI3MWVmMzdhOWI0NmM0MGNlZDU0Zi4uNWE1YWY0ZGE2NWFi
NGI0MDAwYTk1MDkzY2RjODVlNjc4NTZlZTQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMubW0KQEAgLTE3MywxMSArMTczLDYgQEAg
Ym9vbCBSZW5kZXJUaGVtZUNocm9taXVtTWFjOjpwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVy
T2JqZWN0KiBvYmplY3QsIGNvbnN0IFAKICAgICByZXR1cm4gUmVuZGVyTWVkaWFDb250cm9sc0No
cm9taXVtOjpwYWludE1lZGlhQ29udHJvbHNQYXJ0KE1lZGlhU2xpZGVyLCBvYmplY3QsIHBhaW50
SW5mbywgcmVjdCk7CiB9CiAKLWJvb2wgUmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6cGFpbnRNZWRp
YUNvbnRyb2xzQmFja2dyb3VuZChSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZv
JiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCi17Ci0gICAgcmV0dXJuIFJlbmRlck1l
ZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRNZWRpYUNvbnRyb2xzUGFydChNZWRpYVRpbWVsaW5l
Q29udGFpbmVyLCBvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7Ci19Ci0KIFN0cmluZyBSZW5kZXJU
aGVtZUNocm9taXVtTWFjOjpleHRyYU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0KCkKIHsKICAgICBy
ZXR1cm4gU3RyaW5nKG1lZGlhQ29udHJvbHNDaHJvbWl1bVVzZXJBZ2VudFN0eWxlU2hlZXQsIHNp
emVvZihtZWRpYUNvbnRyb2xzQ2hyb21pdW1Vc2VyQWdlbnRTdHlsZVNoZWV0KSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lhLmNwcApp
bmRleCA5MDJkYWQwMTM3N2U5MzU1YTUwMWI1OGUwZWM5MmU5YjFjYzllNWYxLi4xN2RmYThlNGVh
NjAxMDkwNDJhM2JiOGFmOTdiYWQ5MTc0YmE1YTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5jcHAKQEAgLTM3OCwxOCArMzc4
LDYgQEAgYm9vbCBSZW5kZXJUaGVtZUNocm9taXVtU2tpYTo6cGFpbnRTZWFyY2hGaWVsZFJlc3Vs
dHNCdXR0b24oUmVuZGVyT2JqZWN0KiBtYWduaWYKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWJv
b2wgUmVuZGVyVGhlbWVDaHJvbWl1bVNraWE6OnBhaW50TWVkaWFDb250cm9sc0JhY2tncm91bmQo
UmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBJ
bnRSZWN0JiByZWN0KQotewotI2lmIEVOQUJMRShWSURFTykKLSAgICByZXR1cm4gUmVuZGVyTWVk
aWFDb250cm9sc0Nocm9taXVtOjpwYWludE1lZGlhQ29udHJvbHNQYXJ0KE1lZGlhVGltZWxpbmVD
b250YWluZXIsIG9iamVjdCwgcGFpbnRJbmZvLCByZWN0KTsKLSNlbHNlCi0gICAgVU5VU0VEX1BB
UkFNKG9iamVjdCk7Ci0gICAgVU5VU0VEX1BBUkFNKHBhaW50SW5mbyk7Ci0gICAgVU5VU0VEX1BB
UkFNKHJlY3QpOwotICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotfQotCiBib29sIFJlbmRlclRo
ZW1lQ2hyb21pdW1Ta2lhOjpwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0KiBvYmpl
Y3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQogewog
I2lmIEVOQUJMRShWSURFTykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lQ2hyb21pdW1Ta2lhLmgKaW5kZXggYzUzMDZjMTJmNDljMGMyODQwNTUxZTYzNDkzNDMy
ZTk0NTRmMjAzZi4uZDEyZjJkMmQxMGMyMWRhYzg3MDg2OTlkNjhkY2NmOTg1Y2M1YmI2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lh
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lh
LmgKQEAgLTkxLDcgKzkxLDYgQEAgY2xhc3MgUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEgOiBwdWJs
aWMgUmVuZGVyVGhlbWUgewogICAgICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2VhcmNoRmllbGRS
ZXN1bHRzQnV0dG9uU3R5bGUoU3R5bGVSZXNvbHZlciosIFJlbmRlclN0eWxlKiwgRWxlbWVudCop
IGNvbnN0OwogICAgICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRTZWFyY2hGaWVsZFJlc3VsdHNCdXR0
b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpOwogCi0g
ICAgICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhQ29udHJvbHNCYWNrZ3JvdW5kKFJlbmRlck9i
amVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKICAgICAgICAgdmlydHVh
bCBib29sIHBhaW50TWVkaWFTbGlkZXJUcmFjayhSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludElu
Zm8mLCBjb25zdCBJbnRSZWN0Jik7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhVm9s
dW1lU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50
UmVjdCYpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2xpZGVyVGh1bWJTaXplKFJlbmRl
clN0eWxlKikgY29uc3Q7CkBAIC0xMjcsNiArMTI2LDcgQEAgY2xhc3MgUmVuZGVyVGhlbWVDaHJv
bWl1bVNraWEgOiBwdWJsaWMgUmVuZGVyVGhlbWUgewogI2lmIEVOQUJMRShWSURFTykKICAgICAg
ICAgLy8gTWVkaWEgY29udHJvbHMKICAgICAgICAgdmlydHVhbCBib29sIGhhc093bkRpc2FibGVk
U3RhdGVIYW5kbGluZ0ZvcihDb250cm9sUGFydCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAg
ICAgICB2aXJ0dWFsIGJvb2wgdXNlc1ZlcnRpY2FsVm9sdW1lU2xpZGVyKCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KICNlbmRpZgogCiAgICAgICAgIC8vIFByb3ZpZGUgYSB3YXkgdG8gcGFzcyB0
aGUgZGVmYXVsdCBmb250IHNpemUgZnJvbSB0aGUgU2V0dGluZ3Mgb2JqZWN0CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjVl
ZDk1MDM1NzFhNTEzNTVkNGNlNjVkMGFlZGYzNjhlN2FlYTBkYy4uZWViMGY0MmRhZGU1YjZiZTAw
MDUxNGQxNzI3YjI0MGM4ZDFiOTY1ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTA2LTA1
ICBTaWx2aWEgUGZlaWZmZXIgIDxzaWx2aWFwZkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2hh
bmdlIHRoZSB2b2x1bWUgc2xpZGVyIHRvIGhvcml6b250YWwgcmVuZGVyaW5nIGZvciBDaHJvbWUg
dmlkZW8gY29udHJvbHMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhlIENocm9tZSB2aWRlbyBjb250cm9scyBhcmUgcmVjZWl2aW5nIGEgdmlzdWFs
IHVwZGF0ZS4gVGhlIHZvbHVtZSBzbGlkZXIgaXMgaW5jbHVkZWQgaW50bworICAgICAgICB0aGUg
Y29udHJvbHMgd2l0aCBob3Jpem9udGFsIHJlbmRlcmluZywgdGhlIHZvbHVtZSBzbGlkZXIgY29u
dGFpbmVyIGlzIHJlbW92ZWQuIFRoZSB2aXN1YWwKKyAgICAgICAgdXBkYXRlIGl0c2VsZiBpcyBp
biBhIHNlcGFyYXRlIHBhdGNoLgorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4
cGVjdGF0aW9uczoKKyAgICAgICAgVGVtcG9yYXJpbHkgc2tpcCB0ZXN0cyByZWxhdGVkIHRvIHZv
bHVtZSBjb250cm9scyByZW5kZXJpbmcgZm9yIENocm9taXVtLgorCisyMDEyLTA1LTI4ICBTaWx2
aWEgUGZlaWZmZXIgIDxzaWx2aWFwZkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW50cm9kdWNl
IGFuIEVuY2xvc3VyZSBFbGVtZW50IGZvciBDaHJvbWl1bSB2aWRlbyBjb250cm9scy4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3NjgzCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2hhbmdlIGZ1bGxzY3Jl
ZW4vdmlkZW8tY29udHJvbHMtb3ZlcnJpZGUuaHRtbCwgbWVkaWEvbWVkaWEtY29udHJvbHMtaW52
YWxpZC11cmwuaHRtbCBhbmQKKyAgICAgICAgbWVkaWEvdHJhY2svdHJhY2stY3VlLXJlbmRlcmlu
Zy1zbmFwLXRvLWxpbmVzLW5vdC1zZXQuaHRtbCB0byBkZWFsIHdpdGggdGhlIG5ldyBlbmNsb3N1
cmUKKyAgICAgICAgZGl2IGluIENocm9taXVtIGNvbnRyb2xzIGFuZCB1c2UgdGhlIG1lZGlhQ29u
dHJvbHNFbGVtZW50KCkgaGVscGVyIGZ1bmN0aW9uIHRvIGZpbmQgZWxlbWVudHMKKyAgICAgICAg
aW5zaWRlIHRoZSBjb250cm9scy4KKyAgICAgICAgRmFpbCB2aWRlbyBjb250cm9scyB0ZXN0cyBp
biB0ZXN0IGV4cGVjdGF0aW9ucy4KKworICAgICAgICAqIGZ1bGxzY3JlZW4vdmlkZW8tY29udHJv
bHMtb3ZlcnJpZGUtZXhwZWN0ZWQudHh0OiBVcGRhdGVkLgorICAgICAgICAqIGZ1bGxzY3JlZW4v
dmlkZW8tY29udHJvbHMtb3ZlcnJpZGUuaHRtbDogVXNlIG1lZGlhQ29udHJvbHNFbGVtZW50IGhl
bHBlciBmdW5jdGlvbi4KKyAgICAgICAgKiBtZWRpYS9tZWRpYS1jb250cm9scy1pbnZhbGlkLXVy
bC5odG1sOiBVc2UgbWVkaWFDb250cm9sc0VsZW1lbnQgaGVscGVyIGZ1bmN0aW9uLgorICAgICAg
ICAqIG1lZGlhL3RyYWNrL3RyYWNrLWN1ZS1yZW5kZXJpbmctc25hcC10by1saW5lcy1ub3Qtc2V0
Lmh0bWw6IEhlaWdodCBpcyBwcm92aWRlZCBieSBlbmNsb3N1cmUgZWxlbWVudC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zOiBGYWlsIHZpZGVvIGNvbnRyb2xz
IHRlc3RzLgorCiAyMDEyLTA2LTA0ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkBhcHBsZS5jb20+
CiAKICAgICAgICAgU2tpcCBtb3JlIHRlc3RzIG9uIFdpbmRvd3MgdG8gZ2V0IHRoZSBib3RzIGdy
ZWVuZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mdWxsc2NyZWVuL3ZpZGVvLWNvbnRyb2xz
LW92ZXJyaWRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Z1bGxzY3JlZW4vdmlkZW8tY29u
dHJvbHMtb3ZlcnJpZGUtZXhwZWN0ZWQudHh0CmluZGV4IGYxOTJhMzkxNzNkNTRkMWQ5ZjUxYjE0
MWRhYTQxZWJlYTFmMjhmMmEuLjI2MzQ4YmI3ZTliZTg1ZGQ0N2UzODliNTBlNjRjM2EwYzRlMDcy
MzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Z1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtb3Zl
cnJpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Z1bGxzY3JlZW4vdmlkZW8tY29u
dHJvbHMtb3ZlcnJpZGUtZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIsNyBAQCBUaGlzIHRlc3RzIHRo
YXQgdGhlIHZpZGVvIGVsZW1lbnQncyAiY29udHJvbHMiIGF0dHJpYnV0ZSBpcyBvdmVycmlkZGVu
IGluIGZ1bGwgcwogCiBFVkVOVCh3ZWJraXRmdWxsc2NyZWVuY2hhbmdlKQogRVhQRUNURUQgKHNo
YWRvd1Jvb3QgPSBpbnRlcm5hbHMuc2hhZG93Um9vdCh2aWRlbykgIT0gJ251bGwnKSBPSwotRVhQ
RUNURUQgKHBhbmVsID0gc2hhZG93Um9vdC5maXJzdENoaWxkLmZpcnN0Q2hpbGQgIT0gJ251bGwn
KSBPSworRVhQRUNURUQgKHBhbmVsID0gbWVkaWFDb250cm9sc0VsZW1lbnQoc2hhZG93Um9vdC5m
aXJzdENoaWxkLCAnLXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCcpICE9ICdudWxsJykgT0sK
IEVYUEVDVEVEIChpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQocGFuZWwpID09ICctd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXBhbmVsJykgT0sKIEVYUEVDVEVEIChkb2N1bWVudC5kZWZhdWx0Vmlldy5n
ZXRDb21wdXRlZFN0eWxlKHBhbmVsKVsnZGlzcGxheSddICE9ICdub25lJykgT0sKIEVYUEVDVEVE
IChkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHBhbmVsKVsnaGVpZ2h0J10g
Pj0gJzIwcHgnKSBPSwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZnVsbHNjcmVlbi92aWRlby1j
b250cm9scy1vdmVycmlkZS5odG1sIGIvTGF5b3V0VGVzdHMvZnVsbHNjcmVlbi92aWRlby1jb250
cm9scy1vdmVycmlkZS5odG1sCmluZGV4IDcyMTRiYmEwN2ZkMzA3YzEyMjVmMmZlNWFmMWIzOGE1
N2RiMjA0MjEuLjQ3ZmE0ZmU0MWI0OTAxMDgxMmNhYzZhMjA2OTZhZGE0YmJiZjJlOTEgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Z1bGxzY3JlZW4vdmlkZW8tY29udHJvbHMtb3ZlcnJpZGUuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mdWxsc2NyZWVuL3ZpZGVvLWNvbnRyb2xzLW92ZXJyaWRlLmh0
bWwKQEAgLTIsNiArMiw3IEBACiAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IHRoZSB2aWRlbyBlbGVt
ZW50J3MgImNvbnRyb2xzIiBhdHRyaWJ1dGUgaXMgb3ZlcnJpZGRlbiBpbiBmdWxsIHNjcmVlbiBt
b2RlLCBhbmQgdGhhdCB0aGUgY29udHJvbHMgYXJlIGNvcnJlY3RseSBoaWRkZW4gdXBvbiBleGl0
aW5nIGZ1bGwgc2NyZWVuLiAgUHJlc3MgYW55IGtleSB0byBjb250aW51ZS48L3A+CiAgICAgPHZp
ZGVvIGlkPSJ2aWRlbyIgd2lkdGg9IjMwMCI+PC92aWRlbz4KICAgICA8c2NyaXB0IHNyYz0iZnVs
bC1zY3JlZW4tdGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL21lZGlhL21l
ZGlhLWNvbnRyb2xzLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgICAgICB2YXIgY2Fs
bGJhY2s7CiAgICAgICAgIHZhciBzaGFkb3dSb290OwpAQCAtMTksNyArMjAsNyBAQAogICAgICAg
ICB2YXIgdmlkZW9FbnRlcmVkRnVsbFNjcmVlbiA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAg
aWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInNo
YWRvd1Jvb3QgPSBpbnRlcm5hbHMuc2hhZG93Um9vdCh2aWRlbykiLCBudWxsLCAiIT0iKTsKLSAg
ICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInBhbmVsID0gc2hhZG93Um9vdC5maXJzdENoaWxk
LmZpcnN0Q2hpbGQiLCBudWxsLCAiIT0iKTsKKyAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQo
InBhbmVsID0gbWVkaWFDb250cm9sc0VsZW1lbnQoc2hhZG93Um9vdC5maXJzdENoaWxkLCAnLXdl
YmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCcpIiwgbnVsbCwgIiE9Iik7CiAgICAgICAgICAgICAg
ICAgdGVzdEV4cGVjdGVkKCJpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQocGFuZWwpIiwgIi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtcGFuZWwiKTsKICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQo
ImRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUocGFuZWwpWydkaXNwbGF5J10i
LCAnbm9uZScsICIhPSIpOwogICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiZG9jdW1lbnQu
ZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwYW5lbClbJ2hlaWdodCddIiwgJzIwcHgnLCAi
Pj0iKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWNvbnRyb2xzLWludmFs
aWQtdXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1jb250cm9scy1pbnZhbGlkLXVy
bC5odG1sCmluZGV4IDgyODY1ZWRkZWU3MmNiMjE1MGRhODkxNjg2NjYyMjAzMGJhZGVkNzQuLmNk
ZjY0Y2ZkNGM1YzEzYmNlZmY2ZjhmMjNiYzY3NGVhMmY5ZDUzZGQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL21lZGlhL21lZGlhLWNvbnRyb2xzLWludmFsaWQtdXJsLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvbWVkaWEtY29udHJvbHMtaW52YWxpZC11cmwuaHRtbApAQCAtMyw2ICszLDcg
QEAKICAgICA8aGVhZD4KICAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Njcmlw
dD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9bWVkaWEtY29udHJvbHMuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+
CiAgICAgICAgICAgICB2YXIgdmlkZW87CiAKQEAgLTE4LDI5ICsxOSwxNSBAQAogCiAgICAgICAg
ICAgICBmdW5jdGlvbiBnZXRUaW1lTGluZVZhbHVlKCkKICAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICB2YXIgdGltZWxpbmVDb250YWluZXI7Ci0gICAgICAgICAgICAgICAgdmFyIHRpbWVs
aW5lVmFsdWU7CisgICAgICAgICAgICAgICAgdmFyIHRpbWVsaW5lOworICAgICAgICAgICAgICAg
IHZhciBzaGFkb3dSb290ID0gaW50ZXJuYWxzLnNoYWRvd1Jvb3QodmlkZW8pOwogCi0gICAgICAg
ICAgICAgICAgdmFyIGNvbnRyb2xzU2hhZG93ID0gaW50ZXJuYWxzLnNoYWRvd1Jvb3QodmlkZW8p
LmZpcnN0Q2hpbGQuZmlyc3RDaGlsZDsKLSAgICAgICAgICAgICAgICBmb3IgKGNoaWxkID0gY29u
dHJvbHNTaGFkb3cuZmlyc3RDaGlsZDsgY2hpbGQ7IGNoaWxkID0gY2hpbGQubmV4dFNpYmxpbmcp
Ci0gICAgICAgICAgICAgICAgICAgIGlmIChpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQoY2hpbGQp
ID09ICItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lciIpIHsKLSAgICAg
ICAgICAgICAgICAgICAgICAgIHRpbWVsaW5lQ29udGFpbmVyID0gY2hpbGQ7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIHRpbWVsaW5lID0gbWVkaWFDb250cm9sc0VsZW1lbnQoc2hhZG93Um9vdC5maXJzdENoaWxk
LmZpcnN0Q2hpbGQsICctd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lJyk7CiAKLSAgICAg
ICAgICAgICAgICBpZighdGltZWxpbmVDb250YWluZXIpCi0gICAgICAgICAgICAgICAgICAgIHRo
cm93ICJGYWlsZCB0byBmaW5kIC13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFp
bmVyIjsKLQotICAgICAgICAgICAgICAgIGZvciAoY2hpbGQgPSB0aW1lbGluZUNvbnRhaW5lci5m
aXJzdENoaWxkOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC5uZXh0U2libGluZykKLSAgICAgICAgICAg
ICAgICAgICAgaWYgKGludGVybmFscy5zaGFkb3dQc2V1ZG9JZChjaGlsZCkgPT0gIi13ZWJraXQt
bWVkaWEtY29udHJvbHMtdGltZWxpbmUiKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0aW1l
bGluZVZhbHVlID0gY2hpbGQudmFsdWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsK
LSAgICAgICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgaWYoIXRpbWVsaW5lQ29u
dGFpbmVyKQorICAgICAgICAgICAgICAgIGlmKCF0aW1lbGluZSkKICAgICAgICAgICAgICAgICAg
ICAgdGhyb3cgIkZhaWxkIHRvIGZpbmQgLXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSI7
CiAKLSAgICAgICAgICAgICAgICByZXR1cm4gdGltZWxpbmVWYWx1ZTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gdGltZWxpbmUudmFsdWU7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGZ1
bmN0aW9uIGVycm9yKCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL3RyYWNr
LWN1ZS1yZW5kZXJpbmctc25hcC10by1saW5lcy1ub3Qtc2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS90cmFjay90cmFjay1jdWUtcmVuZGVyaW5nLXNuYXAtdG8tbGluZXMtbm90LXNldC5odG1s
CmluZGV4IDI5ZDVjODU3MWY2ODY4NzUzZDliNTIwM2IxZTEyZTkzYTI0NTYxODUuLjIyZWFmZTNl
OTU0NDYzNTUzMWUwZDIzOWFlNGFiNzNhMzNlMjcxOGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL3RyYWNrLWN1ZS1yZW5kZXJpbmctc25hcC10by1saW5lcy1ub3Qtc2V0Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svdHJhY2stY3VlLXJlbmRlcmluZy1zbmFw
LXRvLWxpbmVzLW5vdC1zZXQuaHRtbApAQCAtODksNyArODksMTAgQEAKICAgICAgICAgICAgIGZp
bmRNZWRpYUVsZW1lbnQoKTsKICAgICAgICAgICAgIHRlc3RUcmFjayA9IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoJ3RyYWNrJyk7CiAgICAgICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxl
KCd2aWRlbycsICcuLi9jb250ZW50L3Rlc3QnKTsKLSAgICAgICAgICAgIGNvbnRyb2xzUGFuZWxF
bGVtZW50ID0gbWVkaWFDb250cm9sc0VsZW1lbnQoaW50ZXJuYWxzLnNoYWRvd1Jvb3QodmlkZW8p
LmZpcnN0Q2hpbGQsICctd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsJyk7CisKKyAgICAgICAg
ICAgIC8vIEluIENocm9taXVtIGl0IGlzIHRoZSBlbmNsb3N1cmUgZWxlbWVudCwgd2hpY2ggcHJv
dmlkZXMgdGhlIGNvbnRyb2xzIGhlaWdodCwgb3RoZXJ3aXNlIHRoZSBwYW5lbDsKKyAgICAgICAg
ICAgIC8vIGJvdGggYXJlIHRoZSBzZWNvbmQgY2hpbGQgaW4gdGhlIHNoYWRvdyBET00uCisgICAg
ICAgICAgICBjb250cm9sc1BhbmVsRWxlbWVudCA9IGludGVybmFscy5zaGFkb3dSb290KHZpZGVv
KS5maXJzdENoaWxkLmZpcnN0Q2hpbGQ7CiAKICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnY2Fu
cGxheXRocm91Z2gnLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICBjdWVEaXNwbGF5Q29u
dGFpbmVyID0gdGV4dFRyYWNrRGlzcGxheUVsZW1lbnQodmlkZW8pOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOGQ5ZjIyZWQ2NThhYWRj
ZjYxNGQ1MWM0OTU5YmQ1YzQ4Y2I3YmMzYS4uNTRjZGJjZmZkZTk3OTVmYzdhM2UwNDcxNzMyODU4
YzVkMGQ5NTE4YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVz
dEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhw
ZWN0YXRpb25zCkBAIC03NzEsNiArNzcxLDExIEBAIFdPTlRGSVggU0tJUCA6IG1lZGlhL3ZpZGVv
LXNpemUtaW50cmluc2ljLXNjYWxlLmh0bWwgPSBUSU1FT1VUIEZBSUwKIC8vIERvZXNuJ3QgYXBw
bHkgdG8gQ2hyb21pdW0gKFF1aWNrVGltZS1zcGVjaWZpYyBiZWhhdmlvcikKIFdPTlRGSVggU0tJ
UCA6IG1lZGlhL3ZpZGVvLWRvZXMtbm90LWxvb3AuaHRtbCA9IFRJTUVPVVQKIAorLy8gRG9lc24n
dCBhcHBseSB0byBDaHJvbWl1bSBhbnkgbG9uZ2VyIC0gdm9sdW1lIHNsaWRlciBpcyBpbmxpbmUg
d2l0aCB2aWRlbyBjb250cm9scy4KK1dPTlRGSVggU0tJUCA6IG1lZGlhL3ZpZGVvLXZvbHVtZS1z
bGlkZXIuaHRtbCA9IEZBSUwKK1dPTlRGSVggU0tJUCA6IG1lZGlhL21lZGlhLXZvbHVtZS1zbGlk
ZXItcmVuZGVyZWQtYmVsb3cuaHRtbCA9IEZBSUwKK1dPTlRGSVggU0tJUCA6IG1lZGlhL21lZGlh
LXZvbHVtZS1zbGlkZXItcmVuZGVyZWQtbm9ybWFsLmh0bWwgPSBGQUlMCisKIC8vIFF1aWNrVGlt
ZSByZWZlcmVuY2UgbW92aWVzIG5vdCBzdXBwb3J0ZWQuCiBXT05URklYIFNLSVAgOiBodHRwL3Rl
c3RzL21lZGlhL3ZpZGVvLWNyb3NzLXNpdGUuaHRtbCA9IFBBU1MgRkFJTCBUSU1FT1VUCiAKQEAg
LTMwMzQsNiArMzAzOSwyNiBAQCBCVUdXSzczODY1IDogbWVkaWEvdHJhY2svdGV4dC10cmFjay1p
cy1yZWFjaGFibGUuaHRtbCA9IFRFWFQgQ1JBU0gKIEJVR1dLODE0MDIgV0lOIDogbWVkaWEvdHJh
Y2svdHJhY2stYWN0aXZlLWN1ZXMuaHRtbCA9IFBBU1MgVElNRU9VVAogQlVHV0s4Mzg4MiA6IG1l
ZGlhL3RyYWNrL3RyYWNrLW1vZGUuaHRtbCA9IFBBU1MgVEVYVCBUSU1FT1VUCiAKKy8vIE5lZWQg
cmViYXNlbGluZS4KK0JVR1dLODc2ODMgOiBmYXN0L2xheWVycy92aWRlby1sYXllci5odG1sID0g
RkFJTAorQlVHV0s4NzY4MyA6IGZ1bGxzY3JlZW4vZnVsbC1zY3JlZW4tc3RhY2tpbmctY29udGV4
dC5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1lZGlhL2F1ZGlvLWNvbnRyb2xzLXJlbmRlcmlu
Zy5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1lZGlhL2F1ZGlvLXJlcGFpbnQuaHRtbCA9IEZB
SUwKK0JVR1dLODc2ODMgOiBtZWRpYS9jb250cm9scy1hZnRlci1yZWxvYWQuaHRtbCA9IEZBSUwK
K0JVR1dLODc2ODMgOiBtZWRpYS9jb250cm9scy1sYXlvdXQtZGlyZWN0aW9uLmh0bWwgPSBGQUlM
CitCVUdXSzg3NjgzIDogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwgPSBGQUlMCitCVUdXSzg3
NjgzIDogbWVkaWEvY29udHJvbHMtc3R5bGluZy5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1l
ZGlhL2NvbnRyb2xzLXdpdGhvdXQtcHJlbG9hZC5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1l
ZGlhL21lZGlhLWNvbnRyb2xzLWNsb25lLmh0bWwgPSBGQUlMCitCVUdXSzg3NjgzIDogbWVkaWEv
bWVkaWEtZG9jdW1lbnQtYXVkaW8tcmVwYWludC5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1l
ZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmluZy5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1l
ZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0bWwgPSBGQUlMCitCVUdXSzg3NjgzIDogbWVkaWEv
dmlkZW8tZW1wdHktc291cmNlLmh0bWwgPSBGQUlMCitCVUdXSzg3NjgzIDogbWVkaWEvdmlkZW8t
bm8tYXVkaW8uaHRtbCA9IEZBSUwKK0JVR1dLODc2ODMgOiBtZWRpYS92aWRlby1wbGF5aW5nLWFu
ZC1wYXVzZS5odG1sID0gRkFJTAorQlVHV0s4NzY4MyA6IG1lZGlhL3ZpZGVvLXpvb20tY29udHJv
bHMuaHRtbCA9IEZBSUwKK0JVR1dLODc4MzUgOiBodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZl
cmVkLXJhbmdlLWNvbnRhaW5zLWN1cnJlbnRUaW1lLmh0bWwgPSBGQUlMCisKIEJVR1dLNzIyNzEg
U05PV0xFT1BBUkQgREVCVUcgOiBmYXN0L2RvbS9ub2RlLWl0ZXJhdG9yLXJlZmVyZW5jZS1ub2Rl
LW1vdmVkLWNyYXNoLmh0bWwgPSBQQVNTIENSQVNICiAKIEJVR1dLNzIzNzYgV0lOIDogZmFzdC9m
b3Jtcy9maWxlL2lucHV0LWZpbGUtbGFiZWwuaHRtbCA9IFRFWFQgUEFTUwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145956</attachid>
            <date>2012-06-06 00:56:45 -0700</date>
            <delta_ts>2012-06-12 23:48:44 -0700</delta_ts>
            <desc>Review this for the differences to the second patch</desc>
            <filename>patch3.diff</filename>
            <type>text/plain</type>
            <size>23921</size>
            <attacher name="Silvia Pfeiffer">silviapf</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0NjE1NDkzLi5jNzgzYTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzkg
QEAKKzIwMTItMDYtMDYgIFNpbHZpYSBQZmVpZmZlciAgPHNpbHZpYXBmQGNocm9taXVtLm9yZz4K
KworICAgICAgICBDaGFuZ2UgdGhlIHN0eWxpbmcgb2YgdGhlIENocm9taXVtIHZpZGVvIGNvbnRy
b2xzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODgy
OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBu
ZXcgdGVzdHMuIChmaW5hbCBwYXRjaCB3aWxsIGNvbnRhaW4gdGhlIHJlYmFzZWxpbmVkIHRlc3Rz
KQorCisgICAgICAgIFRoZSBDaHJvbWUgdmlkZW8gY29udHJvbHMgYXJlIHJlY2VpdmluZyBhIHZp
c3VhbCB1cGRhdGUuIFRoaXMgcGF0Y2ggaW5jbHVkZXMgQ1NTIGNoYW5nZXMsCisgICAgICAgIHRo
ZSByZW1vdmFsIG9mIHRoZSBub3cgbm8gbG9uZ2VyIG5lZWRlZCBjb250cm9scyBiYWNrZ3JvdW5k
IGRpdiwgYW5kIHRoZSBpbnRyb2R1Y3Rpb24gb2YKKyAgICAgICAgbmV3IGltYWdlcyBmb3IgdGhl
IGJ1dHRvbnMuCisKKyAgICAgICAgKiBjc3MvbWVkaWFDb250cm9sc0Nocm9taXVtLmNzczoKKyAg
ICAgICAgKGF1ZGlvKToKKyAgICAgICAgQWRqdXN0IGhlaWdodCBvZiBhdWRpbyBjb250cm9scy4K
KyAgICAgICAgKDo6LXdlYmtpdC1tZWRpYS1jb250cm9scyk6CisgICAgICAgIFVzZSBmbGV4Ym94
IG9uIG1lZGlhIGNvbnRyb2xzIHNoYWRvdyBET00uCisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1lbmNsb3N1cmUsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVu
Y2xvc3VyZSk6CisgICAgICAgIEFkanVzdCBoZWlnaHQsIG1heC13aWR0aCwgdGV4dC1pbmRlbnQg
YW5kIGJveC1zaXppbmcsIGFuZCByZXNldCBwYWRkaW5nIHRvIDAuCisgICAgICAgICh2aWRlbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUpOgorICAgICAgICBVc2UgNXB4IHBhZGRp
bmcgb25seSBmb3IgdmlkZW8gY29udHJvbHMgYW5kIGFkanVzdCBoZWlnaHQgYWNjb3JkaW5nbHku
CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwpOgorICAgICAgICBVc2UgZmxleGJveCBvbiBwYW5l
bCwgYWRqdXN0IGJvdHRvbSBhbGlnbm1lbnQsIGhlaWdodCwgYmFja2dyb3VuZCBjb2xvciBhbmQg
Ym9yZGVyIHJhZGl1cy4KKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11
dGUtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbik6Cisg
ICAgICAgIERpc3BsYXkgYnV0dG9ucyBpbmxpbmUgd2l0aCBmaXhlZCB3aWR0aCBhbmQgaGVpZ2h0
LCB2ZXJ0aWNhbGx5IGNlbnRlcmVkLCBubyBwYWRkaW5nIGFuZAorICAgICAgICA2cHggc3BhY2Ug
dG8gbmV4dCBjb250cm9scyBlbGVtZW50ICh0aGlzIHdpbGwgYmUgMTVweCBpbmNsIHRoZSBzcGFj
ZSBpbiB0aGUgaW1hZ2UpLgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
cGxheS1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uKToK
KyAgICAgICAgRGlzcGxheSBidXR0b25zIGlubGluZSB3aXRoIGZpeGVkIHdpZHRoIGFuZCBoZWln
aHQsIHZlcnRpY2FsbHkgY2VudGVyZWQsIG5vIHBhZGRpbmcgYW5kCisgICAgICAgIDlweCBzcGFj
ZSB0byBuZXh0IGNvbnRyb2xzIGVsZW1lbnQgKHRoaXMgd2lsbCBiZSAxNXB4IGluY2wgdGhlIHNw
YWNlIGluIHRoZSBpbWFnZSkuCisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1jdXJyZW50LXRpbWUtZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3Vy
cmVudC10aW1lLWRpc3BsYXkpOgorICAgICAgICBEaXNwbGF5IHRleHQgYXMgYmxvY2ssIHdpdGhv
dXQgYnJvZGVyLCBhZGp1c3RlZCBoZWlnaHQsIGZvbnQtZmFtaWx5LCBmb250LXNpemUgYW5kIDlw
eCBzcGFjZQorICAgICAgICB0byBuZXh0IGNvbnRyb2xzIGVsZW1lbnQgKHRoaXMgd2lsbCBiZSAx
NXB4IGluY2wgdGhlIHNwYWNlIGluIHRoZSBpbWFnZSkuCisgICAgICAgIChhdWRpbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy10aW1lbGluZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
dGltZWxpbmUpOgorICAgICAgICBBZGp1c3QgaGVpZ2h0LCBwYWRkaW5nLCBiYWNrZ3JvdW5kLWNv
bG9yLCBtaW4td2RpdGggYW5kIDE1cHggc3BhY2UgdG8gbmV4dCBjb250cm9scyBlbGVtZW50Lgor
ICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlcik6CisgICAgICAgIEFkanVz
dCBoZWlnaHQsIG1heC0gYW5kIG1pbi13aWR0aCwgYmFja2dyb3VuZC1jb2xvciBhbmQgMTVweCBz
cGFjZSB0byBuZXh0IGNvbnRyb2xzIGVsZW1lbnQuCisgICAgICAgICogaHRtbC9zaGFkb3cvTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9t
aXVtKToKKyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciwgd2hpY2ggaXMgbm90IG5l
Y2Vzc2FyeSBhbnkgbG9uZ2VyIGJlY2F1c2Ugb2YgdGhlIHVzZSBvZiBmbGV4Ym94LgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6Y3JlYXRlKToKKyAg
ICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciwgd2hpY2ggaXMgbm90IG5lY2Vzc2FyeSBh
bnkgbG9uZ2VyIGJlY2F1c2Ugb2YgdGhlIHVzZSBvZiBmbGV4Ym94LgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6c2V0TWVkaWFDb250cm9sbGVyKToK
KyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciwgd2hpY2ggaXMgbm90IG5lY2Vzc2Fy
eSBhbnkgbG9uZ2VyIGJlY2F1c2Ugb2YgdGhlIHVzZSBvZiBmbGV4Ym94LgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6cmVzZXQpOgorICAgICAgICBT
aG93IHRoZSB0aW1lbGluZSBpbnN0ZWFkIG9mIHRoZSB0aW1lbGluZSBjb250YWluZXIgd2hlbiBy
ZXNldHRpbmcuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9t
aXVtOjpyZXBvcnRlZEVycm9yKToKKyAgICAgICAgSGlkZSB0aGUgdGltZWxpbmUgaW5zdGVhZCBv
ZiB0aGUgdGltZWxpbmUgY29udGFpbmVyIHdoZW4gcnVubmluZyBpbnRvIGFuIGVycm9yLgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6cGFpbnRNZWRpYU11dGVCdXR0b24pOgorICAgICAgICBJbnRyb2R1Y2UgbmV3
IGltYWdlIHJlc291cmNlcyBmb3IgdGhlIG11dGUgYnV0dG9uIGFuZCBhZGp1c3QgaXQgYmFzZWQg
b24gdm9sdW1lIGxldmVscy4KKyAgICAgICAgKFdlYkNvcmU6OnBhaW50TWVkaWFQbGF5QnV0dG9u
KToKKyAgICAgICAgSW50cm9kdWNlIG5ldyBpbWFnZSByZXNvdXJjZXMgZm9yIHRoZSBwbGF5IGJ1
dHRvbi4KKyAgICAgICAgKFdlYkNvcmU6OmdldE1lZGlhU2xpZGVyVGh1bWIpOgorICAgICAgICBJ
bnRyb2R1Y2UgbmV3IGltYWdlIHJlc291cmNlcyBmb3IgdGhlIHBvc2l0aW9uIHNsaWRlciB0aHVt
Yi4KKyAgICAgICAgKFdlYkNvcmU6OnBhaW50TWVkaWFWb2x1bWVTbGlkZXJUaHVtYik6CisgICAg
ICAgIEludHJvZHVjZSBuZXcgaW1hZ2UgcmVzb3VyY2VzIGZvciB0aGUgdm9sdW1lIHNsaWRlciB0
aHVtYi4KKyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciByZW5kZXJpbmcuCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250
cm9sc1BhcnQpOgorICAgICAgICBBZGQgdGltZWxpbmUgY29udGFpbmVyIHBhaW50aW5nIHRvIHRo
ZSAibm90IHJlYWNoZWQiIGVsZW1lbnRzLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIFBy
b3ZpZGUgc2l6ZSBzZXR0aW5ncyBmb3IgdGhlIHBvc2l0aW9uIGFuZCB2b2x1bWUgc2xpZGVycy4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6YWRqdXN0TWVk
aWFTbGlkZXJUaHVtYlNpemUpOgorICAgICAgICBDYWxjdWxhdGUgY29ycmVjdCB3aWR0aCBhbmQg
aGVpZ2h0IHNldHRpbmdzIGZvciB0aGUgbmV3IGltYWdlIHJlc291cmNlcyBvZiB0aGUgcG9zaXRp
b24gYW5kIHZvbHVtZQorICAgICAgICBzbGlkZXIgdGh1bWJzLgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLmg6CisgICAgICAgIChSZW5kZXJUaGVtZUNocm9taXVt
TWFjKToKKyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciByZW5kZXJpbmcgKGkuZS4g
dGhlIG1lZGlhIGNvbnRyb2xzIGJhY2tncm91bmQpLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJUaGVtZUNocm9taXVtTWFjLm1tOgorICAgICAgICBSZW1vdmUgdGltZWxpbmUgY29udGFpbmVy
IHJlbmRlcmluZyAoaS5lLiB0aGUgbWVkaWEgY29udHJvbHMgYmFja2dyb3VuZCkuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lhLmNwcDoKKyAgICAgICAgUmVtb3Zl
IHRpbWVsaW5lIGNvbnRhaW5lciByZW5kZXJpbmcgKGkuZS4gdGhlIG1lZGlhIGNvbnRyb2xzIGJh
Y2tncm91bmQpLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5o
OgorICAgICAgICAoUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEpOgorICAgICAgICBSZW1vdmUgdGlt
ZWxpbmUgY29udGFpbmVyIHJlbmRlcmluZyAoaS5lLiB0aGUgbWVkaWEgY29udHJvbHMgYmFja2dy
b3VuZCkuCisKIDIwMTItMDYtMDUgIFNpbHZpYSBQZmVpZmZlciAgPHNpbHZpYXBmQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBDaGFuZ2UgdGhlIHZvbHVtZSBzbGlkZXIgdG8gaG9yaXpvbnRhbCBy
ZW5kZXJpbmcgZm9yIENocm9tZSB2aWRlbyBjb250cm9scy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3NzIGIvU291cmNlL1dlYkNvcmUvY3Nz
L21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKaW5kZXggNjViZjc4Ny4uOWVkOGNjNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKQEAgLTMxLDcgKzMx
LDcgQEAgYm9keTotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSB7CiAKIGF1ZGlvIHsKICAgICB3aWR0
aDogMzAwcHg7Ci0gICAgaGVpZ2h0OiAzMnB4OworICAgIGhlaWdodDogMzBweDsKIH0KIAogYXVk
aW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEsIHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlh
IHsKQEAgLTM5LDc1ICszOSw3OCBAQCBhdWRpbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSwgdmlk
ZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgewogICAgIG1heC13aWR0aDogMTAwJTsKIH0KIAot
YXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlLCB2aWRlbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1lbmNsb3N1cmUgewotICAgIHdpZHRoOiAxMDAlOwotICAgIGhlaWdodDog
MzJweDsKLSAgICBib3R0b206IDA7Cis6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMgeworICAgIGRp
c3BsYXk6IC13ZWJraXQtYm94OworICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7Cisg
ICAgLXdlYmtpdC1ib3gtcGFjazogZW5kOworICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7
CiB9CiAKLWF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1wYW5lbCB7Ci0gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsK
LSAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7Ci0gICAgcG9zaXRpb246IHJlbGF0aXZlOwotICAg
IG92ZXJmbG93OiB2aXNpYmxlOwotICAgIGJvdHRvbTogMDsKK2F1ZGlvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLWVuY2xvc3VyZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9z
dXJlIHsKICAgICB3aWR0aDogMTAwJTsKLSAgICBoZWlnaHQ6IDMycHg7Ci0gICAgei1pbmRleDog
MDsKLSAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7CisgICAgbWF4LXdp
ZHRoOiA4MDBweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgYm90dG9tOiAwOworICAgIHRleHQt
aW5kZW50OiAwOworICAgIHBhZGRpbmc6IDA7CisgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsK
IH0KIAotdmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWE6Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtcGFuZWwgewotICAgIGJvdHRvbTogMHB4OwordmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtZW5jbG9zdXJlIHsKKyAgICBwYWRkaW5nOiAwcHggNXB4IDVweCA1cHg7CisgICAgaGVpZ2h0
OiAzNXB4OwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwgewotICAgIC13ZWJraXQtYm94LWFsaWduOiBl
bmQ7CisgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7CisgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBo
b3Jpem9udGFsOworICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CisgICAgLXdlYmtpdC1i
b3gtcGFjazogY2VudGVyOworICAgIGJvdHRvbTogYXV0bzsKKyAgICBoZWlnaHQ6IDMwcHg7Cisg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjgpOworICAgIGJvcmRlci1y
YWRpdXM6IDVweDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0
b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uIHsKICAgICAtd2Vi
a2l0LWFwcGVhcmFuY2U6IG1lZGlhLW11dGUtYnV0dG9uOwotICAgIHdpZHRoOiAzNHB4OwotICAg
IGhlaWdodDogMzJweDsKKyAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgYm9yZGVyOiBub25lOwor
ICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDM1cHg7CisgICAgaGVpZ2h0
OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbjogMCA2cHggMCAwOwor
ICAgIHBhZGRpbmc6IDA7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXkt
YnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiB7CiAgICAg
LXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1wbGF5LWJ1dHRvbjsKLSAgICBtYXJnaW46IDdweCA4
cHggNnB4IDhweDsKLSAgICB3aWR0aDogMThweDsKLSAgICBoZWlnaHQ6IDE5cHg7Ci19Ci0KLWF1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lciwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFpbmVyIHsKLSAgICAtd2Via2l0LWFw
cGVhcmFuY2U6IG1lZGlhLXRpbWVsaW5lLWNvbnRhaW5lcjsKLSAgICAtd2Via2l0LXVzZXItc2Vs
ZWN0OiBub25lOwotICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKLSAgICAtd2Vi
a2l0LWJveC1hbGlnbjogY2VudGVyOwotICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKLSAg
ICAtd2Via2l0LWJveC1mbGV4OiAxOwotICAgIHdpZHRoOiBhdXRvOwotICAgIGhlaWdodDogMzJw
eDsKLQotICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIp
OwotICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsK
KyAgICBkaXNwbGF5OiBpbmxpbmU7CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6
IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxp
bmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiA5cHg7CisgICAgbWFyZ2luLXJpZ2h0
OiA5cHg7CisgICAgcGFkZGluZzogMDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtY3VycmVudC10aW1lLWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1
cnJlbnQtdGltZS1kaXNwbGF5IHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLWN1cnJl
bnQtdGltZS1kaXNwbGF5OwogICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7Ci0gICAgZGlz
cGxheTogaW5saW5lOwotCi0gICAgb3ZlcmZsb3c6IGhpZGRlbjsKKyAgICBkaXNwbGF5OiBibG9j
azsKKyAgICBib3JkZXI6IG5vbmU7CiAgICAgY3Vyc29yOiBkZWZhdWx0OwogCi0gICAgbGluZS1o
ZWlnaHQ6IDIxcHg7Ci0gICAgaGVpZ2h0OiAyMHB4OwotICAgIHdpZHRoOiA1OHB4OworICAgIGhl
aWdodDogMzBweDsKKyAgICBtYXJnaW46IDAgOXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOwogCi0g
ICAgdGV4dC1hbGlnbjogY2VudGVyOwotICAgIGZvbnQtZmFtaWx5OiBBcmlhbDsKLSAgICBmb250
LXNpemU6IDE2cHg7Ci0gICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgbGluZS1oZWlnaHQ6IDMw
cHg7CisgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7CisgICAg
Zm9udC1zaXplOiAxM3B4OwogICAgIGNvbG9yOiB3aGl0ZTsKIAogICAgIGxldHRlci1zcGFjaW5n
OiBub3JtYWw7CkBAIC0xMjEsMjYgKzEyNCwyMiBAQCBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1jdXJyZW50LXRpbWUtZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbAog
YXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUsIHZpZGVvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXRpbWVsaW5lIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXNs
aWRlcjsKICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICBib3gtc2l6aW5nOiBib3JkZXIt
Ym94OwogICAgIC13ZWJraXQtYm94LWZsZXg6IDE7Ci0KLSAgICBwYWRkaW5nOiAwcHg7Ci0gICAg
bWFyZ2luOiAwcHggNnB4OwotICAgIGhlaWdodDogMThweDsKLQotICAgIGJvcmRlci1jb2xvcjog
cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOwotICAgIGJvcmRlci1zdHlsZTogc29saWQ7Ci0gICAg
Ym9yZGVyLXdpZHRoOiAxcHg7Ci0gICAgYm9yZGVyLXJhZGl1czogMnB4OwotICAgIGJhY2tncm91
bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7Ci0gICAgY29sb3I6IHJnYig1MCwg
MTQwLCAyMjMpOworICAgIGhlaWdodDogOHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAg
ICBwYWRkaW5nOiAwOworICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OworICAgIG1p
bi13aWR0aDogMjVweDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1l
LXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciB7CiAg
ICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS12b2x1bWUtc2xpZGVyOwogICAgIGRpc3BsYXk6
IC13ZWJraXQtYm94OwogICAgIC13ZWJraXQtYm94LWZsZXg6IDE7Ci0gICAgbWFyZ2luLXJpZ2h0
OiA1cHg7Ci0gICAgbWF4LXdpZHRoOiAxMDBweDsKLSAgICBoZWlnaHQ6IDMycHg7CisgICAgaGVp
Z2h0OiA4cHg7CisgICAgbWF4LXdpZHRoOiA3MHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsK
KyAgICBwYWRkaW5nOiAwOworICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OworICAg
IG1pbi13aWR0aDogMTVweDsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKaW5kZXggNDY3
NGU5Yi4uYzc0NWQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKQEAgLTY5LDcgKzY5
LDYgQEAgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6TWVkaWFDb250cm9sUm9vdEVs
ZW1lbnRDaHJvbWl1bShEb2N1bWVudCogZG9jdW0KICAgICAsIG1fcGxheUJ1dHRvbigwKQogICAg
ICwgbV9jdXJyZW50VGltZURpc3BsYXkoMCkKICAgICAsIG1fdGltZWxpbmUoMCkKLSAgICAsIG1f
dGltZWxpbmVDb250YWluZXIoMCkKICAgICAsIG1fcGFuZWxNdXRlQnV0dG9uKDApCiAgICAgLCBt
X3ZvbHVtZVNsaWRlcigwKQogICAgICwgbV9wYW5lbCgwKQpAQCAtMTA4LDIyICsxMDcsMTUgQEAg
UGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtPiBNZWRpYUNvbnRyb2xS
b290RWxlbWVudENocm9taXVtOjpjcmUKICAgICBpZiAoZWMpCiAgICAgICAgIHJldHVybiAwOwog
Ci0gICAgUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudD4gdGltZWxp
bmVDb250YWluZXIgPSBNZWRpYUNvbnRyb2xUaW1lbGluZUNvbnRhaW5lckVsZW1lbnQ6OmNyZWF0
ZShkb2N1bWVudCk7Ci0KICAgICBSZWZQdHI8TWVkaWFDb250cm9sVGltZWxpbmVFbGVtZW50PiB0
aW1lbGluZSA9IE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50LCBj
b250cm9scy5nZXQoKSk7CiAgICAgY29udHJvbHMtPm1fdGltZWxpbmUgPSB0aW1lbGluZS5nZXQo
KTsKLSAgICB0aW1lbGluZUNvbnRhaW5lci0+YXBwZW5kQ2hpbGQodGltZWxpbmUucmVsZWFzZSgp
LCBlYywgdHJ1ZSk7CisgICAgcGFuZWwtPmFwcGVuZENoaWxkKHRpbWVsaW5lLnJlbGVhc2UoKSwg
ZWMsIHRydWUpOwogICAgIGlmIChlYykKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBSZWZQdHI8
TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudD4gY3VycmVudFRpbWVEaXNwbGF5
ID0gTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50
KTsKICAgICBjb250cm9scy0+bV9jdXJyZW50VGltZURpc3BsYXkgPSBjdXJyZW50VGltZURpc3Bs
YXkuZ2V0KCk7Ci0gICAgdGltZWxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKGN1cnJlbnRUaW1l
RGlzcGxheS5yZWxlYXNlKCksIGVjLCB0cnVlKTsKLSAgICBpZiAoZWMpCi0gICAgICAgIHJldHVy
biAwOwotCi0gICAgY29udHJvbHMtPm1fdGltZWxpbmVDb250YWluZXIgPSB0aW1lbGluZUNvbnRh
aW5lci5nZXQoKTsKLSAgICBwYW5lbC0+YXBwZW5kQ2hpbGQodGltZWxpbmVDb250YWluZXIucmVs
ZWFzZSgpLCBlYywgdHJ1ZSk7CisgICAgcGFuZWwtPmFwcGVuZENoaWxkKGN1cnJlbnRUaW1lRGlz
cGxheS5yZWxlYXNlKCksIGVjLCB0cnVlKTsKICAgICBpZiAoZWMpCiAgICAgICAgIHJldHVybiAw
OwogCkBAIC0xNjQsOCArMTU2LDYgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9t
aXVtOjpzZXRNZWRpYUNvbnRyb2xsZXIoTWVkaWFDb250cm9sbGVySW50ZXJmYWMKICAgICAgICAg
bV9jdXJyZW50VGltZURpc3BsYXktPnNldE1lZGlhQ29udHJvbGxlcihjb250cm9sbGVyKTsKICAg
ICBpZiAobV90aW1lbGluZSkKICAgICAgICAgbV90aW1lbGluZS0+c2V0TWVkaWFDb250cm9sbGVy
KGNvbnRyb2xsZXIpOwotICAgIGlmIChtX3RpbWVsaW5lQ29udGFpbmVyKQotICAgICAgICBtX3Rp
bWVsaW5lQ29udGFpbmVyLT5zZXRNZWRpYUNvbnRyb2xsZXIoY29udHJvbGxlcik7CiAgICAgaWYg
KG1fcGFuZWxNdXRlQnV0dG9uKQogICAgICAgICBtX3BhbmVsTXV0ZUJ1dHRvbi0+c2V0TWVkaWFD
b250cm9sbGVyKGNvbnRyb2xsZXIpOwogICAgIGlmIChtX3ZvbHVtZVNsaWRlcikKQEAgLTIxMyw3
ICsyMDMsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06OnJlc2V0KCkK
IAogICAgIGZsb2F0IGR1cmF0aW9uID0gbV9tZWRpYUNvbnRyb2xsZXItPmR1cmF0aW9uKCk7CiAg
ICAgbV90aW1lbGluZS0+c2V0RHVyYXRpb24oZHVyYXRpb24pOwotICAgIG1fdGltZWxpbmVDb250
YWluZXItPnNob3coKTsKKyAgICBtX3RpbWVsaW5lLT5zaG93KCk7CiAgICAgbV90aW1lbGluZS0+
c2V0UG9zaXRpb24obV9tZWRpYUNvbnRyb2xsZXItPmN1cnJlbnRUaW1lKCkpOwogICAgIHVwZGF0
ZVRpbWVEaXNwbGF5KCk7CiAKQEAgLTI3MCw3ICsyNjAsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFJv
b3RFbGVtZW50Q2hyb21pdW06OnJlcG9ydGVkRXJyb3IoKQogICAgIGlmICghcGFnZSkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgbV90aW1lbGluZUNvbnRhaW5lci0+aGlkZSgpOworICAgIG1fdGlt
ZWxpbmUtPmhpZGUoKTsKICAgICBtX3BhbmVsTXV0ZUJ1dHRvbi0+aGlkZSgpOwogICAgIG1fdm9s
dW1lU2xpZGVyLT5oaWRlKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCmluZGV4IGIwYzMwOGYuLmUzNzgy
ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRy
b2xzQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRp
YUNvbnRyb2xzQ2hyb21pdW0uY3BwCkBAIC03NCwxNCArNzQsMjEgQEAgc3RhdGljIGJvb2wgcGFp
bnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYg
cGFpbnRJbmYKICAgICBpZiAoIW1lZGlhRWxlbWVudCkKICAgICAgIHJldHVybiBmYWxzZTsKIAot
ICAgIHN0YXRpYyBJbWFnZSogc291bmRGdWxsID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFTb3Vu
ZEZ1bGwiKTsKLSAgICBzdGF0aWMgSW1hZ2UqIHNvdW5kTm9uZSA9IHBsYXRmb3JtUmVzb3VyY2Uo
Im1lZGlhU291bmROb25lIik7Ci0gICAgc3RhdGljIEltYWdlKiBzb3VuZERpc2FibGVkID0gcGxh
dGZvcm1SZXNvdXJjZSgibWVkaWFTb3VuZERpc2FibGVkIik7CisgICAgc3RhdGljIEltYWdlKiBz
b3VuZExldmVsMyA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhcGxheWVyU291bmRMZXZlbDMiKTsK
KyAgICBzdGF0aWMgSW1hZ2UqIHNvdW5kTGV2ZWwyID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFw
bGF5ZXJTb3VuZExldmVsMiIpOworICAgIHN0YXRpYyBJbWFnZSogc291bmRMZXZlbDEgPSBwbGF0
Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclNvdW5kTGV2ZWwxIik7CisgICAgc3RhdGljIEltYWdl
KiBzb3VuZERpc2FibGVkID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJTb3VuZERpc2Fi
bGVkIik7CiAKLSAgICBpZiAoIWhhc1NvdXJjZShtZWRpYUVsZW1lbnQpIHx8ICFtZWRpYUVsZW1l
bnQtPmhhc0F1ZGlvKCkpCisgICAgaWYgKCFoYXNTb3VyY2UobWVkaWFFbGVtZW50KSB8fCAhbWVk
aWFFbGVtZW50LT5oYXNBdWRpbygpIHx8IG1lZGlhRWxlbWVudC0+bXV0ZWQoKSB8fCBtZWRpYUVs
ZW1lbnQtPnZvbHVtZSgpIDw9IDApCiAgICAgICAgIHJldHVybiBwYWludE1lZGlhQnV0dG9uKHBh
aW50SW5mby5jb250ZXh0LCByZWN0LCBzb3VuZERpc2FibGVkKTsKIAotICAgIHJldHVybiBwYWlu
dE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0LCBtZWRpYUVsZW1lbnQtPm11dGVk
KCkgPyBzb3VuZE5vbmU6IHNvdW5kRnVsbCk7CisgICAgaWYgKG1lZGlhRWxlbWVudC0+dm9sdW1l
KCkgPD0gMC4zMykKKyAgICAgICAgcmV0dXJuIHBhaW50TWVkaWFCdXR0b24ocGFpbnRJbmZvLmNv
bnRleHQsIHJlY3QsIHNvdW5kTGV2ZWwxKTsKKworICAgIGlmIChtZWRpYUVsZW1lbnQtPnZvbHVt
ZSgpIDw9IDAuNjYpCisgICAgICAgIHJldHVybiBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5j
b250ZXh0LCByZWN0LCBzb3VuZExldmVsMik7CisKKyAgICByZXR1cm4gcGFpbnRNZWRpYUJ1dHRv
bihwYWludEluZm8uY29udGV4dCwgcmVjdCwgc291bmRMZXZlbDMpOwogfQogCiBzdGF0aWMgYm9v
bCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJ
bmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCkBAIC05MCw5ICs5Nyw5IEBAIHN0
YXRpYyBib29sIHBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25z
dCBQYWludEluZm8mIHBhaW50SW5mCiAgICAgaWYgKCFtZWRpYUVsZW1lbnQpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKIAotICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5ID0gcGxhdGZvcm1SZXNv
dXJjZSgibWVkaWFQbGF5Iik7Ci0gICAgc3RhdGljIEltYWdlKiBtZWRpYVBhdXNlID0gcGxhdGZv
cm1SZXNvdXJjZSgibWVkaWFQYXVzZSIpOwotICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5RGlz
YWJsZWQgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYVBsYXlEaXNhYmxlZCIpOworICAgIHN0YXRp
YyBJbWFnZSogbWVkaWFQbGF5ID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJQbGF5Iik7
CisgICAgc3RhdGljIEltYWdlKiBtZWRpYVBhdXNlID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFw
bGF5ZXJQYXVzZSIpOworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5RGlzYWJsZWQgPSBwbGF0
Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclBsYXlEaXNhYmxlZCIpOwogCiAgICAgaWYgKCFoYXNT
b3VyY2UobWVkaWFFbGVtZW50KSkKICAgICAgICAgcmV0dXJuIHBhaW50TWVkaWFCdXR0b24ocGFp
bnRJbmZvLmNvbnRleHQsIHJlY3QsIG1lZGlhUGxheURpc2FibGVkKTsKQEAgLTEwMiw3ICsxMDks
NyBAQCBzdGF0aWMgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3QqIG9iamVj
dCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZgogCiBzdGF0aWMgSW1hZ2UqIGdldE1lZGlhU2xp
ZGVyVGh1bWIoKQogewotICAgIHN0YXRpYyBJbWFnZSogbWVkaWFTbGlkZXJUaHVtYiA9IHBsYXRm
b3JtUmVzb3VyY2UoIm1lZGlhU2xpZGVyVGh1bWIiKTsKKyAgICBzdGF0aWMgSW1hZ2UqIG1lZGlh
U2xpZGVyVGh1bWIgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclNsaWRlclRodW1iIik7
CiAgICAgcmV0dXJuIG1lZGlhU2xpZGVyVGh1bWI7CiB9CiAKQEAgLTIxMCw0MyArMjE3LDEwIEBA
IHN0YXRpYyBib29sIHBhaW50TWVkaWFWb2x1bWVTbGlkZXIoUmVuZGVyT2JqZWN0KiBvYmplY3Qs
IGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJCiAKIHN0YXRpYyBib29sIHBhaW50TWVkaWFWb2x1bWVT
bGlkZXJUaHVtYihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludElu
Zm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgc3RhdGljIEltYWdlKiBtZWRpYVZvbHVt
ZVNsaWRlclRodW1iID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFWb2x1bWVTbGlkZXJUaHVtYiIp
OworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFWb2x1bWVTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVz
b3VyY2UoIm1lZGlhcGxheWVyVm9sdW1lU2xpZGVyVGh1bWIiKTsKICAgICByZXR1cm4gcGFpbnRN
ZWRpYUJ1dHRvbihwYWludEluZm8uY29udGV4dCwgcmVjdCwgbWVkaWFWb2x1bWVTbGlkZXJUaHVt
Yik7CiB9CiAKLXN0YXRpYyBib29sIHBhaW50TWVkaWFUaW1lbGluZUNvbnRhaW5lcihSZW5kZXJP
YmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3Qm
IHJlY3QpCi17Ci0gICAgSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50ID0gdG9QYXJlbnRN
ZWRpYUVsZW1lbnQob2JqZWN0KTsKLSAgICBpZiAoIW1lZGlhRWxlbWVudCkKLSAgICAgICAgcmV0
dXJuIGZhbHNlOwotCi0gICAgaWYgKCFyZWN0LmlzRW1wdHkoKSkgewotICAgICAgICBHcmFwaGlj
c0NvbnRleHQqIGNvbnRleHQgPSBwYWludEluZm8uY29udGV4dDsKLSAgICAgICAgQ29sb3Igb3Jp
Z2luYWxDb2xvciA9IGNvbnRleHQtPnN0cm9rZUNvbG9yKCk7Ci0gICAgICAgIGZsb2F0IG9yaWdp
bmFsVGhpY2tuZXNzID0gY29udGV4dC0+c3Ryb2tlVGhpY2tuZXNzKCk7Ci0gICAgICAgIFN0cm9r
ZVN0eWxlIG9yaWdpbmFsU3R5bGUgPSBjb250ZXh0LT5zdHJva2VTdHlsZSgpOwotCi0gICAgICAg
IGNvbnRleHQtPnNldFN0cm9rZVN0eWxlKFNvbGlkU3Ryb2tlKTsKLQotICAgICAgICAvLyBEcmF3
IHRoZSBsZWZ0IGJvcmRlciB1c2luZyBDU1MgZGVmaW5lZCB3aWR0aCBhbmQgY29sb3IuCi0gICAg
ICAgIGNvbnRleHQtPnNldFN0cm9rZVRoaWNrbmVzcyhvYmplY3QtPnN0eWxlKCktPmJvcmRlckxl
ZnRXaWR0aCgpKTsKLSAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tlQ29sb3Iob2JqZWN0LT5zdHls
ZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCb3JkZXJMZWZ0Q29sb3IpLnJn
YigpLCBDb2xvclNwYWNlRGV2aWNlUkdCKTsKLSAgICAgICAgY29udGV4dC0+ZHJhd0xpbmUoSW50
UG9pbnQocmVjdC54KCkgKyAxLCByZWN0LnkoKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
IEludFBvaW50KHJlY3QueCgpICsgMSwgcmVjdC55KCkgKyByZWN0LmhlaWdodCgpKSk7Ci0KLSAg
ICAgICAgLy8gRHJhdyB0aGUgcmlnaHQgYm9yZGVyIHVzaW5nIENTUyBkZWZpbmVkIHdpZHRoIGFu
ZCBjb2xvci4KLSAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tlVGhpY2tuZXNzKG9iamVjdC0+c3R5
bGUoKS0+Ym9yZGVyUmlnaHRXaWR0aCgpKTsKLSAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tlQ29s
b3Iob2JqZWN0LT5zdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCb3Jk
ZXJSaWdodENvbG9yKS5yZ2IoKSwgQ29sb3JTcGFjZURldmljZVJHQik7Ci0gICAgICAgIGNvbnRl
eHQtPmRyYXdMaW5lKEludFBvaW50KHJlY3QueCgpICsgcmVjdC53aWR0aCgpIC0gMSwgcmVjdC55
KCkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRQb2ludChyZWN0LngoKSArIHJlY3Qu
d2lkdGgoKSAtIDEsIHJlY3QueSgpICsgcmVjdC5oZWlnaHQoKSkpOwotCi0gICAgICAgIGNvbnRl
eHQtPnNldFN0cm9rZUNvbG9yKG9yaWdpbmFsQ29sb3IsIENvbG9yU3BhY2VEZXZpY2VSR0IpOwot
ICAgICAgICBjb250ZXh0LT5zZXRTdHJva2VUaGlja25lc3Mob3JpZ2luYWxUaGlja25lc3MpOwot
ICAgICAgICBjb250ZXh0LT5zZXRTdHJva2VTdHlsZShvcmlnaW5hbFN0eWxlKTsKLSAgICB9Ci0g
ICAgcmV0dXJuIHRydWU7Ci19Ci0KIHN0YXRpYyBib29sIHBhaW50TWVkaWFGdWxsc2NyZWVuQnV0
dG9uKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29u
c3QgSW50UmVjdCYgcmVjdCkKIHsKICAgICBIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQg
PSB0b1BhcmVudE1lZGlhRWxlbWVudChvYmplY3QpOwpAQCAtMjc0LDggKzI0OCw2IEBAIGJvb2wg
UmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtOjpwYWludE1lZGlhQ29udHJvbHNQYXJ0KE1lZGlh
Q29udHJvbEVsZW1lbnRUeXBlCiAgICAgICAgIHJldHVybiBwYWludE1lZGlhVm9sdW1lU2xpZGVy
KG9iamVjdCwgcGFpbnRJbmZvLCByZWN0KTsKICAgICBjYXNlIE1lZGlhVm9sdW1lU2xpZGVyVGh1
bWI6CiAgICAgICAgIHJldHVybiBwYWludE1lZGlhVm9sdW1lU2xpZGVyVGh1bWIob2JqZWN0LCBw
YWludEluZm8sIHJlY3QpOwotICAgIGNhc2UgTWVkaWFUaW1lbGluZUNvbnRhaW5lcjoKLSAgICAg
ICAgcmV0dXJuIHBhaW50TWVkaWFUaW1lbGluZUNvbnRhaW5lcihvYmplY3QsIHBhaW50SW5mbywg
cmVjdCk7CiAgICAgY2FzZSBNZWRpYUVudGVyRnVsbHNjcmVlbkJ1dHRvbjoKICAgICBjYXNlIE1l
ZGlhRXhpdEZ1bGxzY3JlZW5CdXR0b246CiAgICAgICAgIHJldHVybiBwYWludE1lZGlhRnVsbHNj
cmVlbkJ1dHRvbihvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7CkBAIC0yODMsNiArMjU1LDcgQEAg
Ym9vbCBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250cm9sc1BhcnQo
TWVkaWFDb250cm9sRWxlbWVudFR5cGUKICAgICBjYXNlIE1lZGlhU2Vla0JhY2tCdXR0b246CiAg
ICAgY2FzZSBNZWRpYVNlZWtGb3J3YXJkQnV0dG9uOgogICAgIGNhc2UgTWVkaWFWb2x1bWVTbGlk
ZXJDb250YWluZXI6CisgICAgY2FzZSBNZWRpYVRpbWVsaW5lQ29udGFpbmVyOgogICAgIGNhc2Ug
TWVkaWFDdXJyZW50VGltZURpc3BsYXk6CiAgICAgY2FzZSBNZWRpYVRpbWVSZW1haW5pbmdEaXNw
bGF5OgogICAgIGNhc2UgTWVkaWFDb250cm9sc1BhbmVsOgpAQCAtMzAxLDIxICsyNzQsMzMgQEAg
Ym9vbCBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250cm9sc1BhcnQo
TWVkaWFDb250cm9sRWxlbWVudFR5cGUKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2NvbnN0IGlu
dCBtZWRpYVNsaWRlclRodW1iV2lkdGggPSAzMjsKK2NvbnN0IGludCBtZWRpYVNsaWRlclRodW1i
SGVpZ2h0ID0gMjQ7Citjb25zdCBpbnQgbWVkaWFWb2x1bWVTbGlkZXJUaHVtYldpZHRoID0gMjQ7
Citjb25zdCBpbnQgbWVkaWFWb2x1bWVTbGlkZXJUaHVtYkhlaWdodCA9IDI0OworCiB2b2lkIFJl
bmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6YWRqdXN0TWVkaWFTbGlkZXJUaHVtYlNpemUoUmVu
ZGVyU3R5bGUqIHN0eWxlKQogewotICAgIHN0YXRpYyBJbWFnZSogbWVkaWFTbGlkZXJUaHVtYiA9
IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU2xpZGVyVGh1bWIiKTsKLSAgICBzdGF0aWMgSW1hZ2Uq
IG1lZGlhVm9sdW1lU2xpZGVyVGh1bWIgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYVZvbHVtZVNs
aWRlclRodW1iIik7CisgICAgc3RhdGljIEltYWdlKiBtZWRpYVNsaWRlclRodW1iID0gcGxhdGZv
cm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJTbGlkZXJUaHVtYiIpOworICAgIHN0YXRpYyBJbWFnZSog
bWVkaWFWb2x1bWVTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhcGxheWVyVm9s
dW1lU2xpZGVyVGh1bWIiKTsKKyAgICBpbnQgd2lkdGggPSAwOworICAgIGludCBoZWlnaHQgPSAw
OwogCiAgICAgSW1hZ2UqIHRodW1iSW1hZ2UgPSAwOwotICAgIGlmIChzdHlsZS0+YXBwZWFyYW5j
ZSgpID09IE1lZGlhU2xpZGVyVGh1bWJQYXJ0KQorICAgIGlmIChzdHlsZS0+YXBwZWFyYW5jZSgp
ID09IE1lZGlhU2xpZGVyVGh1bWJQYXJ0KSB7CiAgICAgICAgIHRodW1iSW1hZ2UgPSBtZWRpYVNs
aWRlclRodW1iOwotICAgIGVsc2UgaWYgKHN0eWxlLT5hcHBlYXJhbmNlKCkgPT0gTWVkaWFWb2x1
bWVTbGlkZXJUaHVtYlBhcnQpCisgICAgICAgIHdpZHRoID0gbWVkaWFTbGlkZXJUaHVtYldpZHRo
OworICAgICAgICBoZWlnaHQgPSBtZWRpYVNsaWRlclRodW1iSGVpZ2h0OworICAgIH0gZWxzZSBp
ZiAoc3R5bGUtPmFwcGVhcmFuY2UoKSA9PSBNZWRpYVZvbHVtZVNsaWRlclRodW1iUGFydCkgewog
ICAgICAgICB0aHVtYkltYWdlID0gbWVkaWFWb2x1bWVTbGlkZXJUaHVtYjsKKyAgICAgICAgd2lk
dGggPSBtZWRpYVZvbHVtZVNsaWRlclRodW1iV2lkdGg7CisgICAgICAgIGhlaWdodCA9IG1lZGlh
Vm9sdW1lU2xpZGVyVGh1bWJIZWlnaHQ7CisgICAgfQogCiAgICAgZmxvYXQgem9vbUxldmVsID0g
c3R5bGUtPmVmZmVjdGl2ZVpvb20oKTsKICAgICBpZiAodGh1bWJJbWFnZSkgewotICAgICAgICBz
dHlsZS0+c2V0V2lkdGgoTGVuZ3RoKHN0YXRpY19jYXN0PGludD4odGh1bWJJbWFnZS0+d2lkdGgo
KSAqIHpvb21MZXZlbCksIEZpeGVkKSk7Ci0gICAgICAgIHN0eWxlLT5zZXRIZWlnaHQoTGVuZ3Ro
KHN0YXRpY19jYXN0PGludD4odGh1bWJJbWFnZS0+aGVpZ2h0KCkgKiB6b29tTGV2ZWwpLCBGaXhl
ZCkpOworICAgICAgICBzdHlsZS0+c2V0V2lkdGgoTGVuZ3RoKHN0YXRpY19jYXN0PGludD4od2lk
dGggKiB6b29tTGV2ZWwpLCBGaXhlZCkpOworICAgICAgICBzdHlsZS0+c2V0SGVpZ2h0KExlbmd0
aChzdGF0aWNfY2FzdDxpbnQ+KGhlaWdodCAqIHpvb21MZXZlbCksIEZpeGVkKSk7CiAgICAgfQog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJv
bWl1bU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1N
YWMuaAppbmRleCA2NWJmYWIyLi5hYTk0YTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLmgKQEAgLTQyLDcgKzQyLDYgQEAgcHJvdGVj
dGVkOgogICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3Qq
LCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0Jik7CiAgICAgdmlydHVhbCBib29sIHBh
aW50TWVkaWFNdXRlQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0
IEludFJlY3QmKTsKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVNsaWRlclRyYWNrKFJlbmRl
ck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKLSAgICB2aXJ0dWFs
IGJvb2wgcGFpbnRNZWRpYUNvbnRyb2xzQmFja2dyb3VuZChSZW5kZXJPYmplY3QqLCBjb25zdCBQ
YWludEluZm8mLCBjb25zdCBJbnRSZWN0Jik7CiAgICAgdmlydHVhbCBTdHJpbmcgZXh0cmFNZWRp
YUNvbnRyb2xzU3R5bGVTaGVldCgpOwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICB2
aXJ0dWFsIFN0cmluZyBleHRyYUZ1bGxTY3JlZW5TdHlsZVNoZWV0KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1tCmluZGV4IGE3Nzgy
MjguLjVhNWFmNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZUNocm9taXVtTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZUNocm9taXVtTWFjLm1tCkBAIC0xNzMsMTEgKzE3Myw2IEBAIGJvb2wgUmVuZGVyVGhlbWVD
aHJvbWl1bU1hYzo6cGFpbnRNZWRpYVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCogb2JqZWN0LCBj
b25zdCBQCiAgICAgcmV0dXJuIFJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRNZWRp
YUNvbnRyb2xzUGFydChNZWRpYVNsaWRlciwgb2JqZWN0LCBwYWludEluZm8sIHJlY3QpOwogfQog
Ci1ib29sIFJlbmRlclRoZW1lQ2hyb21pdW1NYWM6OnBhaW50TWVkaWFDb250cm9sc0JhY2tncm91
bmQoUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25z
dCBJbnRSZWN0JiByZWN0KQotewotICAgIHJldHVybiBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21p
dW06OnBhaW50TWVkaWFDb250cm9sc1BhcnQoTWVkaWFUaW1lbGluZUNvbnRhaW5lciwgb2JqZWN0
LCBwYWludEluZm8sIHJlY3QpOwotfQotCiBTdHJpbmcgUmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6
ZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCgpCiB7CiAgICAgcmV0dXJuIFN0cmluZyhtZWRp
YUNvbnRyb2xzQ2hyb21pdW1Vc2VyQWdlbnRTdHlsZVNoZWV0LCBzaXplb2YobWVkaWFDb250cm9s
c0Nocm9taXVtVXNlckFnZW50U3R5bGVTaGVldCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lhLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5jcHAKaW5kZXggOTAyZGFkMC4uMTdk
ZmE4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hy
b21pdW1Ta2lhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVD
aHJvbWl1bVNraWEuY3BwCkBAIC0zNzgsMTggKzM3OCw2IEBAIGJvb2wgUmVuZGVyVGhlbWVDaHJv
bWl1bVNraWE6OnBhaW50U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uKFJlbmRlck9iamVjdCogbWFn
bmlmCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi1ib29sIFJlbmRlclRoZW1lQ2hyb21pdW1Ta2lh
OjpwYWludE1lZGlhQ29udHJvbHNCYWNrZ3JvdW5kKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25z
dCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKLXsKLSNpZiBFTkFC
TEUoVklERU8pCi0gICAgcmV0dXJuIFJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRN
ZWRpYUNvbnRyb2xzUGFydChNZWRpYVRpbWVsaW5lQ29udGFpbmVyLCBvYmplY3QsIHBhaW50SW5m
bywgcmVjdCk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShvYmplY3QpOwotICAgIFVOVVNFRF9Q
QVJBTShwYWludEluZm8pOwotICAgIFVOVVNFRF9QQVJBTShyZWN0KTsKLSAgICByZXR1cm4gZmFs
c2U7Ci0jZW5kaWYKLX0KLQogYm9vbCBSZW5kZXJUaGVtZUNocm9taXVtU2tpYTo6cGFpbnRNZWRp
YVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50
SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKICNpZiBFTkFCTEUoVklERU8pCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCmluZGV4
IGM4MTU5ZDQuLmQxMmYyZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCkBAIC05MSw3ICs5MSw2IEBAIGNsYXNzIFJlbmRlclRo
ZW1lQ2hyb21pdW1Ta2lhIDogcHVibGljIFJlbmRlclRoZW1lIHsKICAgICAgICAgdmlydHVhbCB2
b2lkIGFkanVzdFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvblN0eWxlKFN0eWxlUmVzb2x2ZXIqLCBS
ZW5kZXJTdHlsZSosIEVsZW1lbnQqKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIHBhaW50
U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKTsKIAotICAgICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYUNvbnRy
b2xzQmFja2dyb3VuZChSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRS
ZWN0Jik7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVy
T2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpOwogICAgICAgICB2aXJ0
dWFsIGJvb2wgcGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGFkanVz
dFNsaWRlclRodW1iU2l6ZShSZW5kZXJTdHlsZSopIGNvbnN0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>147185</attachid>
            <date>2012-06-12 16:14:11 -0700</date>
            <delta_ts>2012-06-13 01:19:37 -0700</delta_ts>
            <desc>Patch for cq</desc>
            <filename>bug-88297-20120613091409.patch</filename>
            <type>text/plain</type>
            <size>24672</size>
            <attacher name="Silvia Pfeiffer">silviapfeiffer1</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwMTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU3YzkzYjBlMGQ1YmE0
MTUxYzNmNjcwYmI3NjA2ZjE3Y2Y4YWI5YS4uMThmNTBkNGNmN2E2OGQ4ZTRjNzBlYjdhZjk4Mzdm
ZTU0MDg5ODEwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc5IEBACisyMDEyLTA2LTEyICBTaWx2
aWEgUGZlaWZmZXIgIDxzaWx2aWFwZkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2hhbmdlIHRo
ZSBzdHlsaW5nIG9mIHRoZSBDaHJvbWl1bSB2aWRlbyBjb250cm9scy4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4Mjk3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgZmluYWwgcGF0Y2gg
d2lsbCBjb250YWluIHRoZSByZWJhc2VsaW5lZCB0ZXN0cy4KKworICAgICAgICBUaGUgQ2hyb21l
IHZpZGVvIGNvbnRyb2xzIGFyZSByZWNlaXZpbmcgYSB2aXN1YWwgdXBkYXRlLiBUaGlzIHBhdGNo
IGluY2x1ZGVzIENTUyBjaGFuZ2VzLAorICAgICAgICB0aGUgcmVtb3ZhbCBvZiB0aGUgbm93IG5v
IGxvbmdlciBuZWVkZWQgY29udHJvbHMgYmFja2dyb3VuZCBkaXYsIGFuZCB0aGUgaW50cm9kdWN0
aW9uIG9mCisgICAgICAgIG5ldyBpbWFnZXMgZm9yIHRoZSBidXR0b25zLgorCisgICAgICAgICog
Y3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3M6CisgICAgICAgIChhdWRpbyk6CisgICAgICAg
IEFkanVzdCBoZWlnaHQgb2YgYXVkaW8gY29udHJvbHMuCisgICAgICAgICg6Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMpOgorICAgICAgICBVc2UgZmxleGJveCBvbiBtZWRpYSBjb250cm9scyBzaGFk
b3cgRE9NLgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJl
LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUpOgorICAgICAgICBBZGp1
c3QgaGVpZ2h0LCBtYXgtd2lkdGgsIHRleHQtaW5kZW50IGFuZCBib3gtc2l6aW5nLCBhbmQgcmVz
ZXQgcGFkZGluZyB0byAwLgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
ZW5jbG9zdXJlKToKKyAgICAgICAgVXNlIDVweCBwYWRkaW5nIG9ubHkgZm9yIHZpZGVvIGNvbnRy
b2xzIGFuZCBhZGp1c3QgaGVpZ2h0IGFjY29yZGluZ2x5LgorICAgICAgICAoYXVkaW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtcGFuZWwsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBh
bmVsKToKKyAgICAgICAgVXNlIGZsZXhib3ggb24gcGFuZWwsIGFkanVzdCBib3R0b20gYWxpZ25t
ZW50LCBoZWlnaHQsIGJhY2tncm91bmQgY29sb3IgYW5kIGJvcmRlciByYWRpdXMuCisgICAgICAg
IChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24pOgorICAgICAgICBEaXNwbGF5IGJ1dHRvbnMg
aW5saW5lIHdpdGggZml4ZWQgd2lkdGggYW5kIGhlaWdodCwgdmVydGljYWxseSBjZW50ZXJlZCwg
bm8gcGFkZGluZyBhbmQKKyAgICAgICAgNnB4IHNwYWNlIHRvIG5leHQgY29udHJvbHMgZWxlbWVu
dCAodGhpcyB3aWxsIGJlIDE1cHggaW5jbCB0aGUgc3BhY2UgaW4gdGhlIGltYWdlKS4KKyAgICAg
ICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbik6CisgICAgICAgIERpc3BsYXkgYnV0dG9u
cyBpbmxpbmUgd2l0aCBmaXhlZCB3aWR0aCBhbmQgaGVpZ2h0LCB2ZXJ0aWNhbGx5IGNlbnRlcmVk
LCBubyBwYWRkaW5nIGFuZAorICAgICAgICA5cHggc3BhY2UgdG8gbmV4dCBjb250cm9scyBlbGVt
ZW50ICh0aGlzIHdpbGwgYmUgMTVweCBpbmNsIHRoZSBzcGFjZSBpbiB0aGUgaW1hZ2UpLgorICAg
ICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXks
IHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5KToKKyAg
ICAgICAgRGlzcGxheSB0ZXh0IGFzIGJsb2NrLCB3aXRob3V0IGJyb2RlciwgYWRqdXN0ZWQgaGVp
Z2h0LCBmb250LWZhbWlseSwgZm9udC1zaXplIGFuZCA5cHggc3BhY2UKKyAgICAgICAgdG8gbmV4
dCBjb250cm9scyBlbGVtZW50ICh0aGlzIHdpbGwgYmUgMTVweCBpbmNsIHRoZSBzcGFjZSBpbiB0
aGUgaW1hZ2UpLgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxp
bmUsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lKToKKyAgICAgICAgQWRq
dXN0IGhlaWdodCwgcGFkZGluZywgYmFja2dyb3VuZC1jb2xvciwgbWluLXdkaXRoIGFuZCAxNXB4
IHNwYWNlIHRvIG5leHQgY29udHJvbHMgZWxlbWVudC4KKyAgICAgICAgKGF1ZGlvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLXZvbHVtZS1zbGlkZXIpOgorICAgICAgICBBZGp1c3QgaGVpZ2h0LCBtYXgtIGFuZCBtaW4t
d2lkdGgsIGJhY2tncm91bmQtY29sb3IgYW5kIDE1cHggc3BhY2UgdG8gbmV4dCBjb250cm9scyBl
bGVtZW50LgorICAgICAgICAqIGh0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hy
b21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJv
bWl1bTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bSk6CisgICAgICAgIFJlbW92ZSB0
aW1lbGluZSBjb250YWluZXIsIHdoaWNoIGlzIG5vdCBuZWNlc3NhcnkgYW55IGxvbmdlciBiZWNh
dXNlIG9mIHRoZSB1c2Ugb2YgZmxleGJveC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJv
bFJvb3RFbGVtZW50Q2hyb21pdW06OmNyZWF0ZSk6CisgICAgICAgIFJlbW92ZSB0aW1lbGluZSBj
b250YWluZXIsIHdoaWNoIGlzIG5vdCBuZWNlc3NhcnkgYW55IGxvbmdlciBiZWNhdXNlIG9mIHRo
ZSB1c2Ugb2YgZmxleGJveC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RFbGVt
ZW50Q2hyb21pdW06OnNldE1lZGlhQ29udHJvbGxlcik6CisgICAgICAgIFJlbW92ZSB0aW1lbGlu
ZSBjb250YWluZXIsIHdoaWNoIGlzIG5vdCBuZWNlc3NhcnkgYW55IGxvbmdlciBiZWNhdXNlIG9m
IHRoZSB1c2Ugb2YgZmxleGJveC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJvb3RF
bGVtZW50Q2hyb21pdW06OnJlc2V0KToKKyAgICAgICAgU2hvdyB0aGUgdGltZWxpbmUgaW5zdGVh
ZCBvZiB0aGUgdGltZWxpbmUgY29udGFpbmVyIHdoZW4gcmVzZXR0aW5nLgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6cmVwb3J0ZWRFcnJvcik6Cisg
ICAgICAgIEhpZGUgdGhlIHRpbWVsaW5lIGluc3RlYWQgb2YgdGhlIHRpbWVsaW5lIGNvbnRhaW5l
ciB3aGVuIHJ1bm5pbmcgaW50byBhbiBlcnJvci4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
TWVkaWFDb250cm9sc0Nocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBhaW50TWVkaWFN
dXRlQnV0dG9uKToKKyAgICAgICAgSW50cm9kdWNlIG5ldyBpbWFnZSByZXNvdXJjZXMgZm9yIHRo
ZSBtdXRlIGJ1dHRvbiBhbmQgYWRqdXN0IGl0IGJhc2VkIG9uIHZvbHVtZSBsZXZlbHMuCisgICAg
ICAgIChXZWJDb3JlOjpwYWludE1lZGlhUGxheUJ1dHRvbik6CisgICAgICAgIEludHJvZHVjZSBu
ZXcgaW1hZ2UgcmVzb3VyY2VzIGZvciB0aGUgcGxheSBidXR0b24uCisgICAgICAgIChXZWJDb3Jl
OjpnZXRNZWRpYVNsaWRlclRodW1iKToKKyAgICAgICAgSW50cm9kdWNlIG5ldyBpbWFnZSByZXNv
dXJjZXMgZm9yIHRoZSBwb3NpdGlvbiBzbGlkZXIgdGh1bWIuCisgICAgICAgIChXZWJDb3JlOjpw
YWludE1lZGlhVm9sdW1lU2xpZGVyVGh1bWIpOgorICAgICAgICBJbnRyb2R1Y2UgbmV3IGltYWdl
IHJlc291cmNlcyBmb3IgdGhlIHZvbHVtZSBzbGlkZXIgdGh1bWIuCisgICAgICAgIFJlbW92ZSB0
aW1lbGluZSBjb250YWluZXIgcmVuZGVyaW5nLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWVk
aWFDb250cm9sc0Nocm9taXVtOjpwYWludE1lZGlhQ29udHJvbHNQYXJ0KToKKyAgICAgICAgQWRk
IHRpbWVsaW5lIGNvbnRhaW5lciBwYWludGluZyB0byB0aGUgIm5vdCByZWFjaGVkIiBlbGVtZW50
cy4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICBQcm92aWRlIHNpemUgc2V0dGluZ3MgZm9y
IHRoZSBwb3NpdGlvbiBhbmQgdm9sdW1lIHNsaWRlcnMuCisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OmFkanVzdE1lZGlhU2xpZGVyVGh1bWJTaXplKToKKyAg
ICAgICAgQ2FsY3VsYXRlIGNvcnJlY3Qgd2lkdGggYW5kIGhlaWdodCBzZXR0aW5ncyBmb3IgdGhl
IG5ldyBpbWFnZSByZXNvdXJjZXMgb2YgdGhlIHBvc2l0aW9uIGFuZCB2b2x1bWUKKyAgICAgICAg
c2xpZGVyIHRodW1icy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1h
Yy5oOgorICAgICAgICAoUmVuZGVyVGhlbWVDaHJvbWl1bU1hYyk6CisgICAgICAgIFJlbW92ZSB0
aW1lbGluZSBjb250YWluZXIgcmVuZGVyaW5nIChpLmUuIHRoZSBtZWRpYSBjb250cm9scyBiYWNr
Z3JvdW5kKS4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5tbToK
KyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciByZW5kZXJpbmcgKGkuZS4gdGhlIG1l
ZGlhIGNvbnRyb2xzIGJhY2tncm91bmQpLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVt
ZUNocm9taXVtU2tpYS5jcHA6CisgICAgICAgIFJlbW92ZSB0aW1lbGluZSBjb250YWluZXIgcmVu
ZGVyaW5nIChpLmUuIHRoZSBtZWRpYSBjb250cm9scyBiYWNrZ3JvdW5kKS4KKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuaDoKKyAgICAgICAgKFJlbmRlclRoZW1l
Q2hyb21pdW1Ta2lhKToKKyAgICAgICAgUmVtb3ZlIHRpbWVsaW5lIGNvbnRhaW5lciByZW5kZXJp
bmcgKGkuZS4gdGhlIG1lZGlhIGNvbnRyb2xzIGJhY2tncm91bmQpLgorCiAyMDEyLTA2LTEyICBB
ZHJpZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CiAKICAgICAgICAgW2Nocm9taXVtXSBE
b24ndCBzZXQgdmlzaWJsZSBsYXllciByZWN0IGluIENDTGF5ZXJUcmVlSG9zdCBwYWludCBpdGVy
YXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzQ2hyb21p
dW0uY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKaW5k
ZXggNjViZjc4N2E1OTk3MDRlNzllMGE4NzFhYmVlNDcyYmU4NWEzZTc3YS4uOWVkOGNjNzM3YmI3
MmExNzVjMDgyYTQ4OWM4NGRkNTI2NzQ0OGE4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL21lZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL21l
ZGlhQ29udHJvbHNDaHJvbWl1bS5jc3MKQEAgLTMxLDcgKzMxLDcgQEAgYm9keTotd2Via2l0LWZ1
bGwtcGFnZS1tZWRpYSB7CiAKIGF1ZGlvIHsKICAgICB3aWR0aDogMzAwcHg7Ci0gICAgaGVpZ2h0
OiAzMnB4OworICAgIGhlaWdodDogMzBweDsKIH0KIAogYXVkaW86LXdlYmtpdC1mdWxsLXBhZ2Ut
bWVkaWEsIHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhIHsKQEAgLTM5LDc1ICszOSw3OCBA
QCBhdWRpbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSwgdmlkZW86LXdlYmtpdC1mdWxsLXBhZ2Ut
bWVkaWEgewogICAgIG1heC13aWR0aDogMTAwJTsKIH0KIAotYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtZW5jbG9zdXJlLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1
cmUgewotICAgIHdpZHRoOiAxMDAlOwotICAgIGhlaWdodDogMzJweDsKLSAgICBib3R0b206IDA7
Cis6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMgeworICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Owor
ICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7CisgICAgLXdlYmtpdC1ib3gtcGFjazog
ZW5kOworICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7CiB9CiAKLWF1ZGlvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5l
bCB7Ci0gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKLSAgICAtd2Via2l0LWJveC1wYWNr
OiBlbmQ7Ci0gICAgcG9zaXRpb246IHJlbGF0aXZlOwotICAgIG92ZXJmbG93OiB2aXNpYmxlOwot
ICAgIGJvdHRvbTogMDsKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSwg
dmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlIHsKICAgICB3aWR0aDogMTAw
JTsKLSAgICBoZWlnaHQ6IDMycHg7Ci0gICAgei1pbmRleDogMDsKLSAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7CisgICAgbWF4LXdpZHRoOiA4MDBweDsKKyAgICBoZWln
aHQ6IDMwcHg7CisgICAgYm90dG9tOiAwOworICAgIHRleHQtaW5kZW50OiAwOworICAgIHBhZGRp
bmc6IDA7CisgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKIH0KIAotdmlkZW86LXdlYmtpdC1m
dWxsLXBhZ2UtbWVkaWE6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwgewotICAgIGJvdHRv
bTogMHB4OwordmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlIHsKKyAgICBw
YWRkaW5nOiAwcHggNXB4IDVweCA1cHg7CisgICAgaGVpZ2h0OiAzNXB4OwogfQogCiBhdWRpbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtcGFuZWwgewotICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7CisgICAgZGlzcGxheTogLXdl
YmtpdC1ib3g7CisgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOworICAgIC13ZWJr
aXQtYm94LWFsaWduOiBjZW50ZXI7CisgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyOworICAg
IGJvdHRvbTogYXV0bzsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjog
cmdiYSgyMCwgMjAsIDIwLCAwLjgpOworICAgIGJvcmRlci1yYWRpdXM6IDVweDsKIH0KIAogYXVk
aW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24sIHZpZGVvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlh
LW11dGUtYnV0dG9uOwotICAgIHdpZHRoOiAzNHB4OwotICAgIGhlaWdodDogMzJweDsKKyAgICBk
aXNwbGF5OiBpbmxpbmU7CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRl
ci1ib3g7CisgICAgd2lkdGg6IDM1cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVp
Z2h0OiAzMHB4OworICAgIG1hcmdpbjogMCA2cHggMCAwOworICAgIHBhZGRpbmc6IDA7CiB9CiAK
IGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBt
ZWRpYS1wbGF5LWJ1dHRvbjsKLSAgICBtYXJnaW46IDdweCA4cHggNnB4IDhweDsKLSAgICB3aWR0
aDogMThweDsKLSAgICBoZWlnaHQ6IDE5cHg7Ci19Ci0KLWF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
dGltZWxpbmUtY29udGFpbmVyIHsKLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXRpbWVs
aW5lLWNvbnRhaW5lcjsKLSAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwotICAgIC13ZWJr
aXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDsKLSAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVy
OwotICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsKLSAgICAtd2Via2l0LWJveC1mbGV4OiAx
OwotICAgIHdpZHRoOiBhdXRvOwotICAgIGhlaWdodDogMzJweDsKLQotICAgIGJvcmRlci1sZWZ0
OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOwotICAgIGJvcmRlci1yaWdodDog
MXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsKKyAgICBkaXNwbGF5OiBpbmxpbmU7
CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lk
dGg6IDMwcHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAg
IG1hcmdpbi1sZWZ0OiA5cHg7CisgICAgbWFyZ2luLXJpZ2h0OiA5cHg7CisgICAgcGFkZGluZzog
MDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3Bs
YXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5IHsK
ICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLWN1cnJlbnQtdGltZS1kaXNwbGF5OwogICAg
IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7Ci0gICAgZGlzcGxheTogaW5saW5lOwotCi0gICAg
b3ZlcmZsb3c6IGhpZGRlbjsKKyAgICBkaXNwbGF5OiBibG9jazsKKyAgICBib3JkZXI6IG5vbmU7
CiAgICAgY3Vyc29yOiBkZWZhdWx0OwogCi0gICAgbGluZS1oZWlnaHQ6IDIxcHg7Ci0gICAgaGVp
Z2h0OiAyMHB4OwotICAgIHdpZHRoOiA1OHB4OworICAgIGhlaWdodDogMzBweDsKKyAgICBtYXJn
aW46IDAgOXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOwogCi0gICAgdGV4dC1hbGlnbjogY2VudGVy
OwotICAgIGZvbnQtZmFtaWx5OiBBcmlhbDsKLSAgICBmb250LXNpemU6IDE2cHg7Ci0gICAgZm9u
dC13ZWlnaHQ6IGJvbGQ7CisgICAgbGluZS1oZWlnaHQ6IDMwcHg7CisgICAgZm9udC1mYW1pbHk6
IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7CisgICAgZm9udC1zaXplOiAxM3B4OwogICAg
IGNvbG9yOiB3aGl0ZTsKIAogICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7CkBAIC0xMjEsMjYg
KzEyNCwyMiBAQCBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1jdXJyZW50LXRpbWUtZGlz
cGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbAogYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtdGltZWxpbmUsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5l
IHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXNsaWRlcjsKICAgICBkaXNwbGF5OiAt
d2Via2l0LWJveDsKLSAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgIC13ZWJraXQtYm94
LWZsZXg6IDE7Ci0KLSAgICBwYWRkaW5nOiAwcHg7Ci0gICAgbWFyZ2luOiAwcHggNnB4OwotICAg
IGhlaWdodDogMThweDsKLQotICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAw
LjIpOwotICAgIGJvcmRlci1zdHlsZTogc29saWQ7Ci0gICAgYm9yZGVyLXdpZHRoOiAxcHg7Ci0g
ICAgYm9yZGVyLXJhZGl1czogMnB4OwotICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAy
NTUsIDI1NSwgMC4wOCk7Ci0gICAgY29sb3I6IHJnYig1MCwgMTQwLCAyMjMpOworICAgIGhlaWdo
dDogOHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOworICAgIGJh
Y2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OworICAgIG1pbi13aWR0aDogMjVweDsKIH0KIAog
YXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNl
OiBtZWRpYS12b2x1bWUtc2xpZGVyOwogICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwogICAgIC13
ZWJraXQtYm94LWZsZXg6IDE7Ci0gICAgbWFyZ2luLXJpZ2h0OiA1cHg7Ci0gICAgbWF4LXdpZHRo
OiAxMDBweDsKLSAgICBoZWlnaHQ6IDMycHg7CisgICAgaGVpZ2h0OiA4cHg7CisgICAgbWF4LXdp
ZHRoOiA3MHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOworICAg
IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OworICAgIG1pbi13aWR0aDogMTVweDsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RF
bGVtZW50Q2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250
cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKaW5kZXggNjI0NTE0OWFiYTI4MWY1NjA3OGQ0OTE4
OTEyNDFhNjQ3N2FmMjA1MC4uN2UwN2NmMmU0NzQxZTNhZmVkNGRhMTgyZDYyZGVmZTNjNGNlMWQx
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9v
dEVsZW1lbnRDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKQEAgLTY5LDcgKzY5LDYgQEAgTWVkaWFD
b250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1
bShEb2N1bWVudCogZG9jdW0KICAgICAsIG1fcGxheUJ1dHRvbigwKQogICAgICwgbV9jdXJyZW50
VGltZURpc3BsYXkoMCkKICAgICAsIG1fdGltZWxpbmUoMCkKLSAgICAsIG1fdGltZWxpbmVDb250
YWluZXIoMCkKICAgICAsIG1fcGFuZWxNdXRlQnV0dG9uKDApCiAgICAgLCBtX3ZvbHVtZVNsaWRl
cigwKQogI2lmIEVOQUJMRShGVUxMU0NSRUVOX01FRElBX0NPTlRST0xTKQpAQCAtMTEwLDIyICsx
MDksMTUgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtPiBNZWRp
YUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpjcmUKICAgICBpZiAoZWMpCiAgICAgICAgIHJl
dHVybiAwOwogCi0gICAgUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVu
dD4gdGltZWxpbmVDb250YWluZXIgPSBNZWRpYUNvbnRyb2xUaW1lbGluZUNvbnRhaW5lckVsZW1l
bnQ6OmNyZWF0ZShkb2N1bWVudCk7Ci0KICAgICBSZWZQdHI8TWVkaWFDb250cm9sVGltZWxpbmVF
bGVtZW50PiB0aW1lbGluZSA9IE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6Y3JlYXRlKGRv
Y3VtZW50LCBjb250cm9scy5nZXQoKSk7CiAgICAgY29udHJvbHMtPm1fdGltZWxpbmUgPSB0aW1l
bGluZS5nZXQoKTsKLSAgICB0aW1lbGluZUNvbnRhaW5lci0+YXBwZW5kQ2hpbGQodGltZWxpbmUu
cmVsZWFzZSgpLCBlYywgdHJ1ZSk7CisgICAgcGFuZWwtPmFwcGVuZENoaWxkKHRpbWVsaW5lLnJl
bGVhc2UoKSwgZWMsIHRydWUpOwogICAgIGlmIChlYykKICAgICAgICAgcmV0dXJuIDA7CiAKICAg
ICBSZWZQdHI8TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudD4gY3VycmVudFRp
bWVEaXNwbGF5ID0gTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRl
KGRvY3VtZW50KTsKICAgICBjb250cm9scy0+bV9jdXJyZW50VGltZURpc3BsYXkgPSBjdXJyZW50
VGltZURpc3BsYXkuZ2V0KCk7Ci0gICAgdGltZWxpbmVDb250YWluZXItPmFwcGVuZENoaWxkKGN1
cnJlbnRUaW1lRGlzcGxheS5yZWxlYXNlKCksIGVjLCB0cnVlKTsKLSAgICBpZiAoZWMpCi0gICAg
ICAgIHJldHVybiAwOwotCi0gICAgY29udHJvbHMtPm1fdGltZWxpbmVDb250YWluZXIgPSB0aW1l
bGluZUNvbnRhaW5lci5nZXQoKTsKLSAgICBwYW5lbC0+YXBwZW5kQ2hpbGQodGltZWxpbmVDb250
YWluZXIucmVsZWFzZSgpLCBlYywgdHJ1ZSk7CisgICAgcGFuZWwtPmFwcGVuZENoaWxkKGN1cnJl
bnRUaW1lRGlzcGxheS5yZWxlYXNlKCksIGVjLCB0cnVlKTsKICAgICBpZiAoZWMpCiAgICAgICAg
IHJldHVybiAwOwogCkBAIC0xNzQsOCArMTY2LDYgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290RWxl
bWVudENocm9taXVtOjpzZXRNZWRpYUNvbnRyb2xsZXIoTWVkaWFDb250cm9sbGVySW50ZXJmYWMK
ICAgICAgICAgbV9jdXJyZW50VGltZURpc3BsYXktPnNldE1lZGlhQ29udHJvbGxlcihjb250cm9s
bGVyKTsKICAgICBpZiAobV90aW1lbGluZSkKICAgICAgICAgbV90aW1lbGluZS0+c2V0TWVkaWFD
b250cm9sbGVyKGNvbnRyb2xsZXIpOwotICAgIGlmIChtX3RpbWVsaW5lQ29udGFpbmVyKQotICAg
ICAgICBtX3RpbWVsaW5lQ29udGFpbmVyLT5zZXRNZWRpYUNvbnRyb2xsZXIoY29udHJvbGxlcik7
CiAgICAgaWYgKG1fcGFuZWxNdXRlQnV0dG9uKQogICAgICAgICBtX3BhbmVsTXV0ZUJ1dHRvbi0+
c2V0TWVkaWFDb250cm9sbGVyKGNvbnRyb2xsZXIpOwogICAgIGlmIChtX3ZvbHVtZVNsaWRlcikK
QEAgLTIyNyw3ICsyMTcsNyBAQCB2b2lkIE1lZGlhQ29udHJvbFJvb3RFbGVtZW50Q2hyb21pdW06
OnJlc2V0KCkKIAogICAgIGZsb2F0IGR1cmF0aW9uID0gbV9tZWRpYUNvbnRyb2xsZXItPmR1cmF0
aW9uKCk7CiAgICAgbV90aW1lbGluZS0+c2V0RHVyYXRpb24oZHVyYXRpb24pOwotICAgIG1fdGlt
ZWxpbmVDb250YWluZXItPnNob3coKTsKKyAgICBtX3RpbWVsaW5lLT5zaG93KCk7CiAgICAgbV90
aW1lbGluZS0+c2V0UG9zaXRpb24obV9tZWRpYUNvbnRyb2xsZXItPmN1cnJlbnRUaW1lKCkpOwog
ICAgIHVwZGF0ZVRpbWVEaXNwbGF5KCk7CiAKQEAgLTI4NywxMiArMjc3LDEyIEBAIHZvaWQgTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6cmVwb3J0ZWRFcnJvcigpCiAgICAgaWYgKCFw
YWdlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX3RpbWVsaW5lQ29udGFpbmVyLT5oaWRlKCk7
CisgICAgbV90aW1lbGluZS0+aGlkZSgpOwogICAgIG1fcGFuZWxNdXRlQnV0dG9uLT5oaWRlKCk7
CisgICAgbV92b2x1bWVTbGlkZXItPmhpZGUoKTsKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9NRURJ
QV9DT05UUk9MUykKICAgICBtX2Z1bGxzY3JlZW5CdXR0b24tPmhpZGUoKTsKICNlbmRpZgotICAg
IG1fdm9sdW1lU2xpZGVyLT5oaWRlKCk7CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1l
bnRDaHJvbWl1bTo6dXBkYXRlU3RhdHVzRGlzcGxheSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCmluZGV4IGIw
YzMwOGZiMjVjMGFiMWJiYTk3MzJiZjJjNzkyZGY1Mjk2MDkzNzQuLmUzNzgyZDU4N2ZhYzNlMTU4
OTI3NWZkNjkwODE4OWY5MGVjZTgzM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW0uY3BwCkBAIC03NCwxNCArNzQs
MjEgQEAgc3RhdGljIGJvb2wgcGFpbnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiBvYmpl
Y3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmYKICAgICBpZiAoIW1lZGlhRWxlbWVudCkKICAg
ICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN0YXRpYyBJbWFnZSogc291bmRGdWxsID0gcGxhdGZv
cm1SZXNvdXJjZSgibWVkaWFTb3VuZEZ1bGwiKTsKLSAgICBzdGF0aWMgSW1hZ2UqIHNvdW5kTm9u
ZSA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU291bmROb25lIik7Ci0gICAgc3RhdGljIEltYWdl
KiBzb3VuZERpc2FibGVkID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFTb3VuZERpc2FibGVkIik7
CisgICAgc3RhdGljIEltYWdlKiBzb3VuZExldmVsMyA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlh
cGxheWVyU291bmRMZXZlbDMiKTsKKyAgICBzdGF0aWMgSW1hZ2UqIHNvdW5kTGV2ZWwyID0gcGxh
dGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJTb3VuZExldmVsMiIpOworICAgIHN0YXRpYyBJbWFn
ZSogc291bmRMZXZlbDEgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclNvdW5kTGV2ZWwx
Iik7CisgICAgc3RhdGljIEltYWdlKiBzb3VuZERpc2FibGVkID0gcGxhdGZvcm1SZXNvdXJjZSgi
bWVkaWFwbGF5ZXJTb3VuZERpc2FibGVkIik7CiAKLSAgICBpZiAoIWhhc1NvdXJjZShtZWRpYUVs
ZW1lbnQpIHx8ICFtZWRpYUVsZW1lbnQtPmhhc0F1ZGlvKCkpCisgICAgaWYgKCFoYXNTb3VyY2Uo
bWVkaWFFbGVtZW50KSB8fCAhbWVkaWFFbGVtZW50LT5oYXNBdWRpbygpIHx8IG1lZGlhRWxlbWVu
dC0+bXV0ZWQoKSB8fCBtZWRpYUVsZW1lbnQtPnZvbHVtZSgpIDw9IDApCiAgICAgICAgIHJldHVy
biBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0LCBzb3VuZERpc2FibGVk
KTsKIAotICAgIHJldHVybiBwYWludE1lZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0
LCBtZWRpYUVsZW1lbnQtPm11dGVkKCkgPyBzb3VuZE5vbmU6IHNvdW5kRnVsbCk7CisgICAgaWYg
KG1lZGlhRWxlbWVudC0+dm9sdW1lKCkgPD0gMC4zMykKKyAgICAgICAgcmV0dXJuIHBhaW50TWVk
aWFCdXR0b24ocGFpbnRJbmZvLmNvbnRleHQsIHJlY3QsIHNvdW5kTGV2ZWwxKTsKKworICAgIGlm
IChtZWRpYUVsZW1lbnQtPnZvbHVtZSgpIDw9IDAuNjYpCisgICAgICAgIHJldHVybiBwYWludE1l
ZGlhQnV0dG9uKHBhaW50SW5mby5jb250ZXh0LCByZWN0LCBzb3VuZExldmVsMik7CisKKyAgICBy
ZXR1cm4gcGFpbnRNZWRpYUJ1dHRvbihwYWludEluZm8uY29udGV4dCwgcmVjdCwgc291bmRMZXZl
bDMpOwogfQogCiBzdGF0aWMgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3Qq
IG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3Qp
CkBAIC05MCw5ICs5Nyw5IEBAIHN0YXRpYyBib29sIHBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRl
ck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mCiAgICAgaWYgKCFtZWRp
YUVsZW1lbnQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHN0YXRpYyBJbWFnZSogbWVk
aWFQbGF5ID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFQbGF5Iik7Ci0gICAgc3RhdGljIEltYWdl
KiBtZWRpYVBhdXNlID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFQYXVzZSIpOwotICAgIHN0YXRp
YyBJbWFnZSogbWVkaWFQbGF5RGlzYWJsZWQgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYVBsYXlE
aXNhYmxlZCIpOworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFQbGF5ID0gcGxhdGZvcm1SZXNvdXJj
ZSgibWVkaWFwbGF5ZXJQbGF5Iik7CisgICAgc3RhdGljIEltYWdlKiBtZWRpYVBhdXNlID0gcGxh
dGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJQYXVzZSIpOworICAgIHN0YXRpYyBJbWFnZSogbWVk
aWFQbGF5RGlzYWJsZWQgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRpYXBsYXllclBsYXlEaXNhYmxl
ZCIpOwogCiAgICAgaWYgKCFoYXNTb3VyY2UobWVkaWFFbGVtZW50KSkKICAgICAgICAgcmV0dXJu
IHBhaW50TWVkaWFCdXR0b24ocGFpbnRJbmZvLmNvbnRleHQsIHJlY3QsIG1lZGlhUGxheURpc2Fi
bGVkKTsKQEAgLTEwMiw3ICsxMDksNyBAQCBzdGF0aWMgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRv
bihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZgogCiBzdGF0
aWMgSW1hZ2UqIGdldE1lZGlhU2xpZGVyVGh1bWIoKQogewotICAgIHN0YXRpYyBJbWFnZSogbWVk
aWFTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU2xpZGVyVGh1bWIiKTsKKyAg
ICBzdGF0aWMgSW1hZ2UqIG1lZGlhU2xpZGVyVGh1bWIgPSBwbGF0Zm9ybVJlc291cmNlKCJtZWRp
YXBsYXllclNsaWRlclRodW1iIik7CiAgICAgcmV0dXJuIG1lZGlhU2xpZGVyVGh1bWI7CiB9CiAK
QEAgLTIxMCw0MyArMjE3LDEwIEBAIHN0YXRpYyBib29sIHBhaW50TWVkaWFWb2x1bWVTbGlkZXIo
UmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJCiAKIHN0YXRpYyBi
b29sIHBhaW50TWVkaWFWb2x1bWVTbGlkZXJUaHVtYihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29u
c3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgc3Rh
dGljIEltYWdlKiBtZWRpYVZvbHVtZVNsaWRlclRodW1iID0gcGxhdGZvcm1SZXNvdXJjZSgibWVk
aWFWb2x1bWVTbGlkZXJUaHVtYiIpOworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFWb2x1bWVTbGlk
ZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhcGxheWVyVm9sdW1lU2xpZGVyVGh1bWIi
KTsKICAgICByZXR1cm4gcGFpbnRNZWRpYUJ1dHRvbihwYWludEluZm8uY29udGV4dCwgcmVjdCwg
bWVkaWFWb2x1bWVTbGlkZXJUaHVtYik7CiB9CiAKLXN0YXRpYyBib29sIHBhaW50TWVkaWFUaW1l
bGluZUNvbnRhaW5lcihSZW5kZXJPYmplY3QqIG9iamVjdCwgY29uc3QgUGFpbnRJbmZvJiBwYWlu
dEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCi17Ci0gICAgSFRNTE1lZGlhRWxlbWVudCogbWVk
aWFFbGVtZW50ID0gdG9QYXJlbnRNZWRpYUVsZW1lbnQob2JqZWN0KTsKLSAgICBpZiAoIW1lZGlh
RWxlbWVudCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgaWYgKCFyZWN0LmlzRW1wdHko
KSkgewotICAgICAgICBHcmFwaGljc0NvbnRleHQqIGNvbnRleHQgPSBwYWludEluZm8uY29udGV4
dDsKLSAgICAgICAgQ29sb3Igb3JpZ2luYWxDb2xvciA9IGNvbnRleHQtPnN0cm9rZUNvbG9yKCk7
Ci0gICAgICAgIGZsb2F0IG9yaWdpbmFsVGhpY2tuZXNzID0gY29udGV4dC0+c3Ryb2tlVGhpY2tu
ZXNzKCk7Ci0gICAgICAgIFN0cm9rZVN0eWxlIG9yaWdpbmFsU3R5bGUgPSBjb250ZXh0LT5zdHJv
a2VTdHlsZSgpOwotCi0gICAgICAgIGNvbnRleHQtPnNldFN0cm9rZVN0eWxlKFNvbGlkU3Ryb2tl
KTsKLQotICAgICAgICAvLyBEcmF3IHRoZSBsZWZ0IGJvcmRlciB1c2luZyBDU1MgZGVmaW5lZCB3
aWR0aCBhbmQgY29sb3IuCi0gICAgICAgIGNvbnRleHQtPnNldFN0cm9rZVRoaWNrbmVzcyhvYmpl
Y3QtPnN0eWxlKCktPmJvcmRlckxlZnRXaWR0aCgpKTsKLSAgICAgICAgY29udGV4dC0+c2V0U3Ry
b2tlQ29sb3Iob2JqZWN0LT5zdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVy
dHlCb3JkZXJMZWZ0Q29sb3IpLnJnYigpLCBDb2xvclNwYWNlRGV2aWNlUkdCKTsKLSAgICAgICAg
Y29udGV4dC0+ZHJhd0xpbmUoSW50UG9pbnQocmVjdC54KCkgKyAxLCByZWN0LnkoKSksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgIEludFBvaW50KHJlY3QueCgpICsgMSwgcmVjdC55KCkgKyBy
ZWN0LmhlaWdodCgpKSk7Ci0KLSAgICAgICAgLy8gRHJhdyB0aGUgcmlnaHQgYm9yZGVyIHVzaW5n
IENTUyBkZWZpbmVkIHdpZHRoIGFuZCBjb2xvci4KLSAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tl
VGhpY2tuZXNzKG9iamVjdC0+c3R5bGUoKS0+Ym9yZGVyUmlnaHRXaWR0aCgpKTsKLSAgICAgICAg
Y29udGV4dC0+c2V0U3Ryb2tlQ29sb3Iob2JqZWN0LT5zdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50
Q29sb3IoQ1NTUHJvcGVydHlCb3JkZXJSaWdodENvbG9yKS5yZ2IoKSwgQ29sb3JTcGFjZURldmlj
ZVJHQik7Ci0gICAgICAgIGNvbnRleHQtPmRyYXdMaW5lKEludFBvaW50KHJlY3QueCgpICsgcmVj
dC53aWR0aCgpIC0gMSwgcmVjdC55KCkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRQ
b2ludChyZWN0LngoKSArIHJlY3Qud2lkdGgoKSAtIDEsIHJlY3QueSgpICsgcmVjdC5oZWlnaHQo
KSkpOwotCi0gICAgICAgIGNvbnRleHQtPnNldFN0cm9rZUNvbG9yKG9yaWdpbmFsQ29sb3IsIENv
bG9yU3BhY2VEZXZpY2VSR0IpOwotICAgICAgICBjb250ZXh0LT5zZXRTdHJva2VUaGlja25lc3Mo
b3JpZ2luYWxUaGlja25lc3MpOwotICAgICAgICBjb250ZXh0LT5zZXRTdHJva2VTdHlsZShvcmln
aW5hbFN0eWxlKTsKLSAgICB9Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KIHN0YXRpYyBib29sIHBh
aW50TWVkaWFGdWxsc2NyZWVuQnV0dG9uKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWlu
dEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKICAgICBIVE1MTWVkaWFF
bGVtZW50KiBtZWRpYUVsZW1lbnQgPSB0b1BhcmVudE1lZGlhRWxlbWVudChvYmplY3QpOwpAQCAt
Mjc0LDggKzI0OCw2IEBAIGJvb2wgUmVuZGVyTWVkaWFDb250cm9sc0Nocm9taXVtOjpwYWludE1l
ZGlhQ29udHJvbHNQYXJ0KE1lZGlhQ29udHJvbEVsZW1lbnRUeXBlCiAgICAgICAgIHJldHVybiBw
YWludE1lZGlhVm9sdW1lU2xpZGVyKG9iamVjdCwgcGFpbnRJbmZvLCByZWN0KTsKICAgICBjYXNl
IE1lZGlhVm9sdW1lU2xpZGVyVGh1bWI6CiAgICAgICAgIHJldHVybiBwYWludE1lZGlhVm9sdW1l
U2xpZGVyVGh1bWIob2JqZWN0LCBwYWludEluZm8sIHJlY3QpOwotICAgIGNhc2UgTWVkaWFUaW1l
bGluZUNvbnRhaW5lcjoKLSAgICAgICAgcmV0dXJuIHBhaW50TWVkaWFUaW1lbGluZUNvbnRhaW5l
cihvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7CiAgICAgY2FzZSBNZWRpYUVudGVyRnVsbHNjcmVl
bkJ1dHRvbjoKICAgICBjYXNlIE1lZGlhRXhpdEZ1bGxzY3JlZW5CdXR0b246CiAgICAgICAgIHJl
dHVybiBwYWludE1lZGlhRnVsbHNjcmVlbkJ1dHRvbihvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7
CkBAIC0yODMsNiArMjU1LDcgQEAgYm9vbCBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBh
aW50TWVkaWFDb250cm9sc1BhcnQoTWVkaWFDb250cm9sRWxlbWVudFR5cGUKICAgICBjYXNlIE1l
ZGlhU2Vla0JhY2tCdXR0b246CiAgICAgY2FzZSBNZWRpYVNlZWtGb3J3YXJkQnV0dG9uOgogICAg
IGNhc2UgTWVkaWFWb2x1bWVTbGlkZXJDb250YWluZXI6CisgICAgY2FzZSBNZWRpYVRpbWVsaW5l
Q29udGFpbmVyOgogICAgIGNhc2UgTWVkaWFDdXJyZW50VGltZURpc3BsYXk6CiAgICAgY2FzZSBN
ZWRpYVRpbWVSZW1haW5pbmdEaXNwbGF5OgogICAgIGNhc2UgTWVkaWFDb250cm9sc1BhbmVsOgpA
QCAtMzAxLDIxICsyNzQsMzMgQEAgYm9vbCBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBh
aW50TWVkaWFDb250cm9sc1BhcnQoTWVkaWFDb250cm9sRWxlbWVudFR5cGUKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKK2NvbnN0IGludCBtZWRpYVNsaWRlclRodW1iV2lkdGggPSAzMjsKK2NvbnN0
IGludCBtZWRpYVNsaWRlclRodW1iSGVpZ2h0ID0gMjQ7Citjb25zdCBpbnQgbWVkaWFWb2x1bWVT
bGlkZXJUaHVtYldpZHRoID0gMjQ7Citjb25zdCBpbnQgbWVkaWFWb2x1bWVTbGlkZXJUaHVtYkhl
aWdodCA9IDI0OworCiB2b2lkIFJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6YWRqdXN0TWVk
aWFTbGlkZXJUaHVtYlNpemUoUmVuZGVyU3R5bGUqIHN0eWxlKQogewotICAgIHN0YXRpYyBJbWFn
ZSogbWVkaWFTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVzb3VyY2UoIm1lZGlhU2xpZGVyVGh1bWIi
KTsKLSAgICBzdGF0aWMgSW1hZ2UqIG1lZGlhVm9sdW1lU2xpZGVyVGh1bWIgPSBwbGF0Zm9ybVJl
c291cmNlKCJtZWRpYVZvbHVtZVNsaWRlclRodW1iIik7CisgICAgc3RhdGljIEltYWdlKiBtZWRp
YVNsaWRlclRodW1iID0gcGxhdGZvcm1SZXNvdXJjZSgibWVkaWFwbGF5ZXJTbGlkZXJUaHVtYiIp
OworICAgIHN0YXRpYyBJbWFnZSogbWVkaWFWb2x1bWVTbGlkZXJUaHVtYiA9IHBsYXRmb3JtUmVz
b3VyY2UoIm1lZGlhcGxheWVyVm9sdW1lU2xpZGVyVGh1bWIiKTsKKyAgICBpbnQgd2lkdGggPSAw
OworICAgIGludCBoZWlnaHQgPSAwOwogCiAgICAgSW1hZ2UqIHRodW1iSW1hZ2UgPSAwOwotICAg
IGlmIChzdHlsZS0+YXBwZWFyYW5jZSgpID09IE1lZGlhU2xpZGVyVGh1bWJQYXJ0KQorICAgIGlm
IChzdHlsZS0+YXBwZWFyYW5jZSgpID09IE1lZGlhU2xpZGVyVGh1bWJQYXJ0KSB7CiAgICAgICAg
IHRodW1iSW1hZ2UgPSBtZWRpYVNsaWRlclRodW1iOwotICAgIGVsc2UgaWYgKHN0eWxlLT5hcHBl
YXJhbmNlKCkgPT0gTWVkaWFWb2x1bWVTbGlkZXJUaHVtYlBhcnQpCisgICAgICAgIHdpZHRoID0g
bWVkaWFTbGlkZXJUaHVtYldpZHRoOworICAgICAgICBoZWlnaHQgPSBtZWRpYVNsaWRlclRodW1i
SGVpZ2h0OworICAgIH0gZWxzZSBpZiAoc3R5bGUtPmFwcGVhcmFuY2UoKSA9PSBNZWRpYVZvbHVt
ZVNsaWRlclRodW1iUGFydCkgewogICAgICAgICB0aHVtYkltYWdlID0gbWVkaWFWb2x1bWVTbGlk
ZXJUaHVtYjsKKyAgICAgICAgd2lkdGggPSBtZWRpYVZvbHVtZVNsaWRlclRodW1iV2lkdGg7Cisg
ICAgICAgIGhlaWdodCA9IG1lZGlhVm9sdW1lU2xpZGVyVGh1bWJIZWlnaHQ7CisgICAgfQogCiAg
ICAgZmxvYXQgem9vbUxldmVsID0gc3R5bGUtPmVmZmVjdGl2ZVpvb20oKTsKICAgICBpZiAodGh1
bWJJbWFnZSkgewotICAgICAgICBzdHlsZS0+c2V0V2lkdGgoTGVuZ3RoKHN0YXRpY19jYXN0PGlu
dD4odGh1bWJJbWFnZS0+d2lkdGgoKSAqIHpvb21MZXZlbCksIEZpeGVkKSk7Ci0gICAgICAgIHN0
eWxlLT5zZXRIZWlnaHQoTGVuZ3RoKHN0YXRpY19jYXN0PGludD4odGh1bWJJbWFnZS0+aGVpZ2h0
KCkgKiB6b29tTGV2ZWwpLCBGaXhlZCkpOworICAgICAgICBzdHlsZS0+c2V0V2lkdGgoTGVuZ3Ro
KHN0YXRpY19jYXN0PGludD4od2lkdGggKiB6b29tTGV2ZWwpLCBGaXhlZCkpOworICAgICAgICBz
dHlsZS0+c2V0SGVpZ2h0KExlbmd0aChzdGF0aWNfY2FzdDxpbnQ+KGhlaWdodCAqIHpvb21MZXZl
bCksIEZpeGVkKSk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lQ2hyb21pdW1NYWMuaAppbmRleCA2NWJmYWIyMTU3ZmNiMzE1YjliYWZiNWFj
MzE2ZDZjODVhZjFkOTU3Li5hYTk0YTQyOWY3OTNkMWYyMmE0ODc3MDFmOTcwNGE5NTIxMWRhMzE0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1
bU1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVt
TWFjLmgKQEAgLTQyLDcgKzQyLDYgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgYm9vbCBwYWlu
dE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJ
bnRSZWN0Jik7CiAgICAgdmlydHVhbCBib29sIHBhaW50TWVkaWFNdXRlQnV0dG9uKFJlbmRlck9i
amVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKICAgICB2aXJ0dWFsIGJv
b2wgcGFpbnRNZWRpYVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKTsKLSAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYUNvbnRyb2xzQmFj
a2dyb3VuZChSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0Jik7
CiAgICAgdmlydHVhbCBTdHJpbmcgZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCgpOwogI2lm
IEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICB2aXJ0dWFsIFN0cmluZyBleHRyYUZ1bGxTY3Jl
ZW5TdHlsZVNoZWV0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVGhlbWVDaHJvbWl1bU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZUNocm9taXVtTWFjLm1tCmluZGV4IGE3NzgyMjhjNTUyMmQ2YzAyOTQyNzFlZjM3YTliNDZj
NDBjZWQ1NGYuLjVhNWFmNGRhNjVhYjRiNDAwMGE5NTA5M2NkYzg1ZTY3ODU2ZWU0MTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1t
CkBAIC0xNzMsMTEgKzE3Myw2IEBAIGJvb2wgUmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6cGFpbnRN
ZWRpYVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQCiAgICAgcmV0dXJu
IFJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRNZWRpYUNvbnRyb2xzUGFydChNZWRp
YVNsaWRlciwgb2JqZWN0LCBwYWludEluZm8sIHJlY3QpOwogfQogCi1ib29sIFJlbmRlclRoZW1l
Q2hyb21pdW1NYWM6OnBhaW50TWVkaWFDb250cm9sc0JhY2tncm91bmQoUmVuZGVyT2JqZWN0KiBv
YmplY3QsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQot
ewotICAgIHJldHVybiBSZW5kZXJNZWRpYUNvbnRyb2xzQ2hyb21pdW06OnBhaW50TWVkaWFDb250
cm9sc1BhcnQoTWVkaWFUaW1lbGluZUNvbnRhaW5lciwgb2JqZWN0LCBwYWludEluZm8sIHJlY3Qp
OwotfQotCiBTdHJpbmcgUmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6ZXh0cmFNZWRpYUNvbnRyb2xz
U3R5bGVTaGVldCgpCiB7CiAgICAgcmV0dXJuIFN0cmluZyhtZWRpYUNvbnRyb2xzQ2hyb21pdW1V
c2VyQWdlbnRTdHlsZVNoZWV0LCBzaXplb2YobWVkaWFDb250cm9sc0Nocm9taXVtVXNlckFnZW50
U3R5bGVTaGVldCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lQ2hyb21pdW1Ta2lhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZUNocm9taXVtU2tpYS5jcHAKaW5kZXggMDM4NmMwMTM3NDFlN2VmM2MzNTExZDg4MjJmMDg5
YTdlZDEzNjczNC4uYzE1Zjk2ZGY0YmU0NmE0ODgyZWViMjAwYjA3ODNkNGQ2M2NjMzI1MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lh
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNr
aWEuY3BwCkBAIC0zNzgsMTggKzM3OCw2IEBAIGJvb2wgUmVuZGVyVGhlbWVDaHJvbWl1bVNraWE6
OnBhaW50U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uKFJlbmRlck9iamVjdCogbWFnbmlmCiAgICAg
cmV0dXJuIGZhbHNlOwogfQogCi1ib29sIFJlbmRlclRoZW1lQ2hyb21pdW1Ta2lhOjpwYWludE1l
ZGlhQ29udHJvbHNCYWNrZ3JvdW5kKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludElu
Zm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKLXsKLSNpZiBFTkFCTEUoVklERU8p
Ci0gICAgcmV0dXJuIFJlbmRlck1lZGlhQ29udHJvbHNDaHJvbWl1bTo6cGFpbnRNZWRpYUNvbnRy
b2xzUGFydChNZWRpYVRpbWVsaW5lQ29udGFpbmVyLCBvYmplY3QsIHBhaW50SW5mbywgcmVjdCk7
Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShvYmplY3QpOwotICAgIFVOVVNFRF9QQVJBTShwYWlu
dEluZm8pOwotICAgIFVOVVNFRF9QQVJBTShyZWN0KTsKLSAgICByZXR1cm4gZmFsc2U7Ci0jZW5k
aWYKLX0KLQogYm9vbCBSZW5kZXJUaGVtZUNocm9taXVtU2tpYTo6cGFpbnRNZWRpYVNsaWRlclRy
YWNrKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29u
c3QgSW50UmVjdCYgcmVjdCkKIHsKICNpZiBFTkFCTEUoVklERU8pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCmluZGV4IDFlYTA2ZmUz
MTk4YWE1YjE5ZTk5YTQyZmIwOThlODMzM2Q4NTU5ODQuLjUzZDZkMjMxNWJiZmYwNjU1ZmMxZmY2
ZDY5OWFlZDMzMTI1NzcxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZUNocm9taXVtU2tpYS5oCkBAIC05MSw3ICs5MSw2IEBAIGNsYXNzIFJlbmRlclRo
ZW1lQ2hyb21pdW1Ta2lhIDogcHVibGljIFJlbmRlclRoZW1lIHsKICAgICAgICAgdmlydHVhbCB2
b2lkIGFkanVzdFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvblN0eWxlKFN0eWxlUmVzb2x2ZXIqLCBS
ZW5kZXJTdHlsZSosIEVsZW1lbnQqKSBjb25zdDsKICAgICAgICAgdmlydHVhbCBib29sIHBhaW50
U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKTsKIAotICAgICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYUNvbnRy
b2xzQmFja2dyb3VuZChSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRS
ZWN0Jik7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVy
T2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpOwogICAgICAgICB2aXJ0
dWFsIGJvb2wgcGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGFkanVz
dFNsaWRlclRodW1iU2l6ZShSZW5kZXJTdHlsZSosIEVsZW1lbnQqKSBjb25zdDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>