<?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>53190</bug_id>
          
          <creation_ts>2011-01-26 13:33:33 -0800</creation_ts>
          <short_desc>Change the rest of HTMLMediaElement shadow DOM parts to use shadowPseudoId.</short_desc>
          <delta_ts>2011-02-08 10:35:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>53136</dependson>
          <blocked>53020</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>340438</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-01-26 13:33:33 -0800</bug_when>
    <thetext>Change the rest of HTMLMediaElement shadow DOM parts to use shadowPseudoId.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>340441</commentid>
    <comment_count>1</comment_count>
      <attachid>80228</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-01-26 13:44:21 -0800</bug_when>
    <thetext>Created attachment 80228
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>340448</commentid>
    <comment_count>2</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-01-26 13:56:55 -0800</bug_when>
    <thetext>Apologies that the patch doesn&apos;t apply. I&apos;ll resubmit to ews once bug 53190 and bug 53136 land and make sure I don&apos;t break stuff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>340584</commentid>
    <comment_count>3</comment_count>
      <attachid>80228</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-26 16:44:55 -0800</bug_when>
    <thetext>Comment on attachment 80228
Patch

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

&gt; Source/WebCore/rendering/MediaControlElements.cpp:96
&gt; +        RefPtr&lt;RenderStyle&gt; timelineContainerStyle = document()-&gt;styleSelector()-&gt;styleForElement(this, 0, true);
&gt;          renderer()-&gt;setStyle(timelineContainerStyle);

You should release the style to avoid a tiny bit of reference count churn or not use the local variable at all here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>340598</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-26 17:03:34 -0800</bug_when>
    <thetext>Attachment 80228 did not build on mac:
Build output: http://queues.webkit.org/results/7632211</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347497</commentid>
    <comment_count>5</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-02-08 10:35:32 -0800</bug_when>
    <thetext>Committed r77954: &lt;http://trac.webkit.org/changeset/77954&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>80228</attachid>
            <date>2011-01-26 13:44:21 -0800</date>
            <delta_ts>2011-01-26 16:44:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53190-20110126134419.patch</filename>
            <type>text/plain</type>
            <size>29055</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzNGE0NGRlNzU0OTUyM2FmYWFlYWViOTA1MjYzNWRjZjRhMzdiM2U4Li5i
MGU2NDY4NjcwYzcwNzdmNTRjYzQxNWQ3NzYwZDg1NDk0YjU1YmMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNzUgQEAKKzIwMTEtMDEtMjYgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBDaGFuZ2UgdGhlIHJlc3Qgb2YgSFRNTE1lZGlhRWxlbWVudCBzaGFkb3cgRE9NIHBhcnRzIHRv
IHVzZSBzaGFkb3dQc2V1ZG9JZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUzMTkwCisKKyAgICAgICAgVGhpcyBpcyB0aGUgc2Vjb25kIHBhcnQgb2Yg
cmVmYWN0b3JpbmcgdGhlIEhUTUxNZWRpYUVsZW1lbnQgdG8gdXNlIG5ldworICAgICAgICBzaGFk
b3cgRE9NLiBUaGUgY2hhbmdlcyBhcmUgbWFpbmx5IG1lY2hhbmljYWwsIGV4Y2VwdCBmb3IgbmVl
ZGluZyB0bworICAgICAgICBhZGQgYSBuZXcgbWV0aG9kIHRvIFJlbmRlclRoZW1lLCB3aGljaCBp
bmRpY2F0ZXMgd2hldGhlciBvciBub3Qgc3RhdHVzCisgICAgICAgIGRpc3BsYXkgaXMgYmVpbmcg
dXNlZCBieSBpdC4gUHJldmlvdXNseSwgd2UgcmVsaWVkIG9uIGV4aXN0ZW5jZSBvZiBhIGNhY2hl
ZAorICAgICAgICBwc2V1ZG8gc3R5bGUuCisKKyAgICAgICAgUmVmYWN0b3JpbmcsIGNvdmVyZWQg
YnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBjc3MvQ1NTU2VsZWN0b3IuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTU2VsZWN0b3I6OnBzZXVkb0lkKTogUmVtb3ZlZCBub3ctdW51c2Vk
IGVudW0gdmFsdWVzLgorICAgICAgICAoV2ViQ29yZTo6bmFtZVRvUHNldWRvVHlwZU1hcCk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6Q1NTU2VsZWN0b3I6OmV4dHJhY3RQc2V1ZG9UeXBlKTog
RGl0dG8uCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmg6IERpdHRvLgorICAgICAgICAqIHJl
bmRlcmluZy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YUNvbnRyb2xTaGFkb3dSb290RWxlbWVudDo6dXBkYXRlU3R5bGUpOiBDaGFuZ2VkIHRvIHVzZSB0
aGUKKyAgICAgICAgICAgIHN0YW5kYXJkIHN0eWxlIHJlc29sdXRpb24uCisgICAgICAgIChXZWJD
b3JlOjpNZWRpYUNvbnRyb2xTaGFkb3dSb290RWxlbWVudDo6c2hhZG93UHNldWRvSWQpOiBBZGRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbEVsZW1lbnQ6Ok1lZGlhQ29udHJvbEVs
ZW1lbnQpOiBSZW1vdmVkIHRoZSBzd2l0Y2ggc3RhdGVtZW50CisgICAgICAgICAgICB0aGF0IGlz
IG5vIGxvbmdlciBuZWNlc3NhcnkuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xFbGVt
ZW50OjpzdHlsZUZvckVsZW1lbnQpOiBDaGFuZ2VkIHRvIHVzZSB0aGUgc3RhbmRhcmQKKyAgICAg
ICAgICAgIHN0eWxlIHJlc29sdXRpb24uCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6Ok1lZGlhQ29udHJvbFBhbmVsRWxlbWVudCk6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpjcmVhdGUpOiBBZGRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6ZGlzcGxheVR5cGUpOiBBZGRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6c2hhZG93UHNl
dWRvSWQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRpbWVsaW5lQ29u
dGFpbmVyRWxlbWVudDo6TWVkaWFDb250cm9sVGltZWxpbmVDb250YWluZXJFbGVtZW50KToKKyAg
ICAgICAgICAgIFJlbW92ZWQgUHNldWRvSWQgY29uc3RydWN0b3IgYXJnLgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sVGltZWxpbmVDb250YWluZXJFbGVtZW50OjpyZW5kZXJlcklzTmVl
ZGVkKToKKyAgICAgICAgICAgIENoYW5nZWQgdG8gdXNlIHRoZSBuZXdseS1wbHVtYmVkIHVzZXNN
ZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5IGhlbHBlci4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
Q29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudDo6ZGlzcGxheVR5cGUpOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRpbWVsaW5lQ29udGFpbmVyRWxlbWVudDo6c2hh
ZG93UHNldWRvSWQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFZvbHVt
ZVNsaWRlckNvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckNvbnRhaW5l
ckVsZW1lbnQpOgorICAgICAgICAgICAgUmVtb3ZlZCBQc2V1ZG9JZCBjb25zdHJ1Y3RvciBhcmcu
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJDb250YWluZXJFbGVt
ZW50OjpkaXNwbGF5VHlwZSk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
Vm9sdW1lU2xpZGVyQ29udGFpbmVyRWxlbWVudDo6c2hhZG93UHNldWRvSWQpOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50OjpNZWRpYUNv
bnRyb2xTdGF0dXNEaXNwbGF5RWxlbWVudCk6CisgICAgICAgICAgICBSZW1vdmVkIFBzZXVkb0lk
IGNvbnN0cnVjdG9yIGFyZy4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFN0YXR1c0Rp
c3BsYXlFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKTogQ2hhbmdlZCB0bworICAgICAgICAgICAg
dXNlIHRoZSBuZXdseS1wbHVtYmVkIHVzZXNNZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5IGhlbHBl
ci4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50Ojpk
aXNwbGF5VHlwZSk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sU3RhdHVz
RGlzcGxheUVsZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKTogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVEaXNwbGF5
RWxlbWVudCk6CisgICAgICAgICAgICBSZW1vdmVkIFBzZXVkb0lkIGNvbnN0cnVjdG9yIGFyZy4K
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFRpbWVSZW1haW5pbmdEaXNwbGF5RWxlbWVu
dDo6Y3JlYXRlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUaW1lUmVt
YWluaW5nRGlzcGxheUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVSZW1haW5pbmdEaXNwbGF5RWxl
bWVudCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sVGltZVJlbWFpbmlu
Z0Rpc3BsYXlFbGVtZW50OjpkaXNwbGF5VHlwZSk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sVGltZVJlbWFpbmluZ0Rpc3BsYXlFbGVtZW50OjpzaGFkb3dQc2V1ZG9JZCk6
IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5
RWxlbWVudDo6Y3JlYXRlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xD
dXJyZW50VGltZURpc3BsYXlFbGVtZW50OjpNZWRpYUNvbnRyb2xDdXJyZW50VGltZURpc3BsYXlF
bGVtZW50KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xDdXJyZW50VGlt
ZURpc3BsYXlFbGVtZW50OjpkaXNwbGF5VHlwZSk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudDo6c2hhZG93UHNldWRvSWQpOiBB
ZGRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvTWVkaWFDb250cm9sRWxlbWVudHMuaDogQWRkZWQv
Y2hhbmdlZCBkZWZzIGFjY29yZGluZ2x5LgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJNZWRp
YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNZWRpYTo6Y3JlYXRlUGFuZWwpOiBDaGFu
Z2VkIHRvIHVzZSB0aGUgbmV3bHktYWRkZWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50LgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTWVkaWE6OmNyZWF0ZUN1cnJlbnRUaW1lRGlzcGxheSk6IENo
YW5nZWQgdG8gdXNlIHRoZSBuZXdseS1hZGRlZAorICAgICAgICAgICAgTWVkaWFDb250cm9sQ3Vy
cmVudFRpbWVEaXNwbGF5RWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1lZGlhOjpj
cmVhdGVUaW1lUmVtYWluaW5nRGlzcGxheSk6IENoYW5nZWQgdG8gdXNlIHRoZSBuZXdseS1hZGRl
ZAorICAgICAgICAgICAgTWVkaWFDb250cm9sVGltZVJlbWFpbmluZ0Rpc3BsYXlFbGVtZW50Lgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWU6OnVzZXNNZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5KTogQWRkZWQuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLmg6IEFkZGVkIGRlZi4KKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVGhlbWVNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1h
Yzo6dXNlc01lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXkpOiBBZGRlZC4KKyAgICAgICAgKiByZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDogUmVtb3ZlZCBub3ctdW51c2VkIGVu
dW0gdmFsdWVzLgorCiAyMDExLTAxLTI1ICBEaW1pdHJpIEdsYXprb3YgIDxkZ2xhemtvdkBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCA4Mjc0NmNkMDAyYjk1MzNjYzIwNzUyZDFkYzY2ZTll
YmI4ZjdmOTdhLi40ODg4YWRiOTdlZGQ2NDJlYjg4OTU0ZDEyZTE3ZDFmMmZjNzM3MTJiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTE2MSwxOCArMTYxLDYgQEAgUHNldWRvSWQg
Q1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVkb1R5cGUgdHlwZSkKICAgICAgICAgcmV0dXJuIFNF
QVJDSF9SRVNVTFRTX0RFQ09SQVRJT047CiAgICAgY2FzZSBQc2V1ZG9TZWFyY2hSZXN1bHRzQnV0
dG9uOgogICAgICAgICByZXR1cm4gU0VBUkNIX1JFU1VMVFNfQlVUVE9OOwotICAgIGNhc2UgUHNl
dWRvTWVkaWFDb250cm9sc1BhbmVsOgotICAgICAgICByZXR1cm4gTUVESUFfQ09OVFJPTFNfUEFO
RUw7Ci0gICAgY2FzZSBQc2V1ZG9NZWRpYUNvbnRyb2xzVGltZWxpbmVDb250YWluZXI6Ci0gICAg
ICAgIHJldHVybiBNRURJQV9DT05UUk9MU19USU1FTElORV9DT05UQUlORVI7Ci0gICAgY2FzZSBQ
c2V1ZG9NZWRpYUNvbnRyb2xzVm9sdW1lU2xpZGVyQ29udGFpbmVyOgotICAgICAgICByZXR1cm4g
TUVESUFfQ09OVFJPTFNfVk9MVU1FX1NMSURFUl9DT05UQUlORVI7Ci0gICAgY2FzZSBQc2V1ZG9N
ZWRpYUNvbnRyb2xzQ3VycmVudFRpbWVEaXNwbGF5OgotICAgICAgICByZXR1cm4gTUVESUFfQ09O
VFJPTFNfQ1VSUkVOVF9USU1FX0RJU1BMQVk7Ci0gICAgY2FzZSBQc2V1ZG9NZWRpYUNvbnRyb2xz
VGltZVJlbWFpbmluZ0Rpc3BsYXk6Ci0gICAgICAgIHJldHVybiBNRURJQV9DT05UUk9MU19USU1F
X1JFTUFJTklOR19ESVNQTEFZOwotICAgIGNhc2UgUHNldWRvTWVkaWFDb250cm9sc1N0YXR1c0Rp
c3BsYXk6Ci0gICAgICAgIHJldHVybiBNRURJQV9DT05UUk9MU19TVEFUVVNfRElTUExBWTsKICAg
ICBjYXNlIFBzZXVkb1Njcm9sbGJhcjoKICAgICAgICAgcmV0dXJuIFNDUk9MTEJBUjsKICAgICBj
YXNlIFBzZXVkb1Njcm9sbGJhckJ1dHRvbjoKQEAgLTM0NywxMiArMzM1LDYgQEAgc3RhdGljIEhh
c2hNYXA8QXRvbWljU3RyaW5nSW1wbCosIENTU1NlbGVjdG9yOjpQc2V1ZG9UeXBlPiogbmFtZVRv
UHNldWRvVHlwZU1hcCgKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgbGFz
dE9mVHlwZSwgKCJsYXN0LW9mLXR5cGUiKSk7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9t
aWNTdHJpbmcsIGxpbmssICgibGluayIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21p
Y1N0cmluZywgbGFuZywgKCJsYW5nKCIpKTsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21p
Y1N0cmluZywgbWVkaWFDb250cm9sc1BhbmVsLCAoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFu
ZWwiKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIG1lZGlhQ29udHJv
bHNTdGF0dXNEaXNwbGF5LCAoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhdHVzLWRpc3BsYXki
KSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIG1lZGlhQ29udHJvbHNU
aW1lbGluZUNvbnRhaW5lciwgKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRh
aW5lciIpKTsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgbWVkaWFDb250
cm9sc1ZvbHVtZVNsaWRlckNvbnRhaW5lciwgKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVt
ZS1zbGlkZXItY29udGFpbmVyIikpOwotICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3Ry
aW5nLCBtZWRpYUNvbnRyb2xzQ3VycmVudFRpbWVEaXNwbGF5LCAoIi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXkiKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChB
dG9taWNTdHJpbmcsIG1lZGlhQ29udHJvbHNUaW1lUmVtYWluaW5nRGlzcGxheSwgKCItd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXRpbWUtcmVtYWluaW5nLWRpc3BsYXkiKSk7CiAgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIG5vdFN0ciwgKCJub3QoIikpOwogICAgIERFRklORV9T
VEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBvbmx5Q2hpbGQsICgib25seS1jaGlsZCIpKTsKICAg
ICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgb25seU9mVHlwZSwgKCJvbmx5LW9m
LXR5cGUiKSk7CkBAIC00NTMsMTIgKzQzNSw2IEBAIHN0YXRpYyBIYXNoTWFwPEF0b21pY1N0cmlu
Z0ltcGwqLCBDU1NTZWxlY3Rvcjo6UHNldWRvVHlwZT4qIG5hbWVUb1BzZXVkb1R5cGVNYXAoCiAg
ICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChpbm5lclNwaW5CdXR0b24uaW1wbCgpLCBDU1NT
ZWxlY3Rvcjo6UHNldWRvSW5uZXJTcGluQnV0dG9uKTsKICAgICAgICAgbmFtZVRvUHNldWRvVHlw
ZS0+c2V0KGxpbmsuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvTGluayk7CiAgICAgICAgIG5h
bWVUb1BzZXVkb1R5cGUtPnNldChsYW5nLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb0xhbmcp
OwotICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5zZXQobWVkaWFDb250cm9sc1BhbmVsLmltcGwo
KSwgQ1NTU2VsZWN0b3I6OlBzZXVkb01lZGlhQ29udHJvbHNQYW5lbCk7Ci0gICAgICAgIG5hbWVU
b1BzZXVkb1R5cGUtPnNldChtZWRpYUNvbnRyb2xzQ3VycmVudFRpbWVEaXNwbGF5LmltcGwoKSwg
Q1NTU2VsZWN0b3I6OlBzZXVkb01lZGlhQ29udHJvbHNDdXJyZW50VGltZURpc3BsYXkpOwotICAg
ICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5zZXQobWVkaWFDb250cm9sc1RpbWVSZW1haW5pbmdEaXNw
bGF5LmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb01lZGlhQ29udHJvbHNUaW1lUmVtYWluaW5n
RGlzcGxheSk7Ci0gICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChtZWRpYUNvbnRyb2xzU3Rh
dHVzRGlzcGxheS5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9NZWRpYUNvbnRyb2xzU3RhdHVz
RGlzcGxheSk7Ci0gICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChtZWRpYUNvbnRyb2xzVGlt
ZWxpbmVDb250YWluZXIuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvTWVkaWFDb250cm9sc1Rp
bWVsaW5lQ29udGFpbmVyKTsKLSAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KG1lZGlhQ29u
dHJvbHNWb2x1bWVTbGlkZXJDb250YWluZXIuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvTWVk
aWFDb250cm9sc1ZvbHVtZVNsaWRlckNvbnRhaW5lcik7CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5
cGUtPnNldChub3RTdHIuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvTm90KTsKICAgICAgICAg
bmFtZVRvUHNldWRvVHlwZS0+c2V0KG50aENoaWxkLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVk
b050aENoaWxkKTsKICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KG50aE9mVHlwZS5pbXBs
KCksIENTU1NlbGVjdG9yOjpQc2V1ZG9OdGhPZlR5cGUpOwpAQCAtNTUyLDEyICs1MjgsNiBAQCB2
b2lkIENTU1NlbGVjdG9yOjpleHRyYWN0UHNldWRvVHlwZSgpIGNvbnN0CiAgICAgY2FzZSBQc2V1
ZG9JbnB1dFNwZWVjaEJ1dHRvbjoKICNlbmRpZgogICAgIGNhc2UgUHNldWRvSW5uZXJTcGluQnV0
dG9uOgotICAgIGNhc2UgUHNldWRvTWVkaWFDb250cm9sc1BhbmVsOgotICAgIGNhc2UgUHNldWRv
TWVkaWFDb250cm9sc0N1cnJlbnRUaW1lRGlzcGxheToKLSAgICBjYXNlIFBzZXVkb01lZGlhQ29u
dHJvbHNUaW1lUmVtYWluaW5nRGlzcGxheToKLSAgICBjYXNlIFBzZXVkb01lZGlhQ29udHJvbHNT
dGF0dXNEaXNwbGF5OgotICAgIGNhc2UgUHNldWRvTWVkaWFDb250cm9sc1RpbWVsaW5lQ29udGFp
bmVyOgotICAgIGNhc2UgUHNldWRvTWVkaWFDb250cm9sc1ZvbHVtZVNsaWRlckNvbnRhaW5lcjoK
ICAgICBjYXNlIFBzZXVkb01ldGVySG9yaXpvbnRhbEJhcjoKICAgICBjYXNlIFBzZXVkb01ldGVy
SG9yaXpvbnRhbE9wdGltdW06CiAgICAgY2FzZSBQc2V1ZG9NZXRlckhvcml6b250YWxTdWJvcHRp
bWFsOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuaAppbmRleCA0MmI1OTMxMWMyNjg0MGViYWFlYmNh
OWM1MTY2YTQzYjU3OWYzZDVkLi42ZDRiNzIyNTBkOWVhN2Y1ZTMzOTYwZjJiZWQ5OGY1MmE1Y2I0
ZTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuaApAQCAtMTgzLDEyICsxODMsNiBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICBQc2V1ZG9TZWFyY2hEZWNvcmF0aW9uLAogICAg
ICAgICAgICAgUHNldWRvU2VhcmNoUmVzdWx0c0RlY29yYXRpb24sCiAgICAgICAgICAgICBQc2V1
ZG9TZWFyY2hSZXN1bHRzQnV0dG9uLAotICAgICAgICAgICAgUHNldWRvTWVkaWFDb250cm9sc1Bh
bmVsLAotICAgICAgICAgICAgUHNldWRvTWVkaWFDb250cm9sc1RpbWVsaW5lQ29udGFpbmVyLAot
ICAgICAgICAgICAgUHNldWRvTWVkaWFDb250cm9sc1ZvbHVtZVNsaWRlckNvbnRhaW5lciwKLSAg
ICAgICAgICAgIFBzZXVkb01lZGlhQ29udHJvbHNDdXJyZW50VGltZURpc3BsYXksCi0gICAgICAg
ICAgICBQc2V1ZG9NZWRpYUNvbnRyb2xzVGltZVJlbWFpbmluZ0Rpc3BsYXksCi0gICAgICAgICAg
ICBQc2V1ZG9NZWRpYUNvbnRyb2xzU3RhdHVzRGlzcGxheSwKICAgICAgICAgICAgIFBzZXVkb01l
dGVySG9yaXpvbnRhbEJhciwKICAgICAgICAgICAgIFBzZXVkb01ldGVyVmVydGljYWxCYXIsCiAg
ICAgICAgICAgICBQc2V1ZG9NZXRlckhvcml6b250YWxPcHRpbXVtLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKaW5kZXggYmE3YWJkNDYz
YTMwNjlkYTAyYWMzZDdhYWRhNGRiNzQ2Y2RjYTYwMi4uODA4OTMwYTJlY2NmMTA5MDcxNjE3NzA3
OGMzOTA5ZjY0MjVjODhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL01l
ZGlhQ29udHJvbEVsZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTWVk
aWFDb250cm9sRWxlbWVudHMuY3BwCkBAIC05Miw3ICs5Miw3IEBAIFBhc3NSZWZQdHI8TWVkaWFD
b250cm9sU2hhZG93Um9vdEVsZW1lbnQ+IE1lZGlhQ29udHJvbFNoYWRvd1Jvb3RFbGVtZW50Ojpj
cmVhdGUoCiB2b2lkIE1lZGlhQ29udHJvbFNoYWRvd1Jvb3RFbGVtZW50Ojp1cGRhdGVTdHlsZSgp
CiB7CiAgICAgaWYgKHJlbmRlcmVyKCkpIHsKLSAgICAgICAgUmVuZGVyU3R5bGUqIHRpbWVsaW5l
Q29udGFpbmVyU3R5bGUgPSBzaGFkb3dIb3N0KCktPnJlbmRlcmVyKCktPmdldENhY2hlZFBzZXVk
b1N0eWxlKE1FRElBX0NPTlRST0xTX1RJTUVMSU5FX0NPTlRBSU5FUik7CisgICAgICAgIFJlZlB0
cjxSZW5kZXJTdHlsZT4gdGltZWxpbmVDb250YWluZXJTdHlsZSA9IGRvY3VtZW50KCktPnN0eWxl
U2VsZWN0b3IoKS0+c3R5bGVGb3JFbGVtZW50KHRoaXMsIDAsIHRydWUpOwogICAgICAgICByZW5k
ZXJlcigpLT5zZXRTdHlsZSh0aW1lbGluZUNvbnRhaW5lclN0eWxlKTsKICAgICB9CiB9CkBAIC0x
MDQsNDIgKzEwNCwxOSBAQCB2b2lkIE1lZGlhQ29udHJvbFNoYWRvd1Jvb3RFbGVtZW50OjpkZXRh
Y2goKQogICAgIHNldFNoYWRvd0hvc3QoMCk7CiB9CiAKK2NvbnN0IEF0b21pY1N0cmluZyYgTWVk
aWFDb250cm9sU2hhZG93Um9vdEVsZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKCkgY29uc3QKK3sKKyAg
ICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgaWQsICgiLXdlYmtpdC1tZWRpYS1j
b250cm9scy10aW1lbGluZS1jb250YWluZXIiKSk7CisgICAgcmV0dXJuIGlkOworfQorCiAvLyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLU1lZGlhQ29udHJvbEVsZW1lbnQ6Ok1lZGlh
Q29udHJvbEVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50LCBQc2V1ZG9JZCBw
c2V1ZG8pCitNZWRpYUNvbnRyb2xFbGVtZW50OjpNZWRpYUNvbnRyb2xFbGVtZW50KEhUTUxNZWRp
YUVsZW1lbnQqIG1lZGlhRWxlbWVudCkKICAgICA6IEhUTUxEaXZFbGVtZW50KGRpdlRhZywgbWVk
aWFFbGVtZW50LT5kb2N1bWVudCgpKQogICAgICwgbV9tZWRpYUVsZW1lbnQobWVkaWFFbGVtZW50
KQotICAgICwgbV9wc2V1ZG9TdHlsZUlkKHBzZXVkbykKIHsKICAgICBzZXRJbkRvY3VtZW50KCk7
Ci0gICAgc3dpdGNoIChwc2V1ZG8pIHsKLSAgICBjYXNlIE1FRElBX0NPTlRST0xTX0NVUlJFTlRf
VElNRV9ESVNQTEFZOgotICAgICAgICBtX2Rpc3BsYXlUeXBlID0gTWVkaWFDdXJyZW50VGltZURp
c3BsYXk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgTUVESUFfQ09OVFJPTFNfVElNRV9SRU1B
SU5JTkdfRElTUExBWToKLSAgICAgICAgbV9kaXNwbGF5VHlwZSA9IE1lZGlhVGltZVJlbWFpbmlu
Z0Rpc3BsYXk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgTUVESUFfQ09OVFJPTFNfVElNRUxJ
TkVfQ09OVEFJTkVSOgotICAgICAgICBtX2Rpc3BsYXlUeXBlID0gTWVkaWFUaW1lbGluZUNvbnRh
aW5lcjsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBNRURJQV9DT05UUk9MU19TVEFUVVNfRElT
UExBWToKLSAgICAgICAgbV9kaXNwbGF5VHlwZSA9IE1lZGlhU3RhdHVzRGlzcGxheTsKLSAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBNRURJQV9DT05UUk9MU19QQU5FTDoKLSAgICAgICAgbV9kaXNw
bGF5VHlwZSA9IE1lZGlhQ29udHJvbHNQYW5lbDsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBN
RURJQV9DT05UUk9MU19WT0xVTUVfU0xJREVSX0NPTlRBSU5FUjoKLSAgICAgICAgbV9kaXNwbGF5
VHlwZSA9IE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyOwotICAgICAgICBicmVhazsKLSAgICBk
ZWZhdWx0OgotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgYnJlYWs7Ci0g
ICAgfQotfQotCi1QYXNzUmVmUHRyPE1lZGlhQ29udHJvbEVsZW1lbnQ+IE1lZGlhQ29udHJvbEVs
ZW1lbnQ6OmNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQsIFBzZXVkb0lkIHBz
ZXVkb1N0eWxlSWQpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xFbGVt
ZW50KG1lZGlhRWxlbWVudCwgcHNldWRvU3R5bGVJZCkpOwogfQogCiB2b2lkIE1lZGlhQ29udHJv
bEVsZW1lbnQ6OmF0dGFjaFRvUGFyZW50KEVsZW1lbnQqIHBhcmVudCkKQEAgLTE1OCw3ICsxMzUs
NyBAQCB2b2lkIE1lZGlhQ29udHJvbEVsZW1lbnQ6OnVwZGF0ZSgpCiAKIFBhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IE1lZGlhQ29udHJvbEVsZW1lbnQ6OnN0eWxlRm9yRWxlbWVudCgpCiB7Ci0gICAg
UmVuZGVyU3R5bGUqIHN0eWxlID0gbV9tZWRpYUVsZW1lbnQtPnJlbmRlcmVyKCktPmdldENhY2hl
ZFBzZXVkb1N0eWxlKG1fcHNldWRvU3R5bGVJZCk7CisgICAgUmVmUHRyPFJlbmRlclN0eWxlPiBz
dHlsZSA9IGRvY3VtZW50KCktPnN0eWxlU2VsZWN0b3IoKS0+c3R5bGVGb3JFbGVtZW50KHRoaXMs
IDAsIHRydWUpOwogICAgIGlmICghc3R5bGUpCiAgICAgICAgIHJldHVybiAwOwogICAgIApAQCAt
MjI2LDggKzIwMywzMSBAQCB2b2lkIE1lZGlhQ29udHJvbEVsZW1lbnQ6OnVwZGF0ZVN0eWxlKCkK
IAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCitpbmxpbmUgTWVkaWFDb250cm9s
UGFuZWxFbGVtZW50OjpNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCog
bWVkaWFFbGVtZW50KQorICAgIDogTWVkaWFDb250cm9sRWxlbWVudChtZWRpYUVsZW1lbnQpCit7
Cit9CisKK1Bhc3NSZWZQdHI8TWVkaWFDb250cm9sUGFuZWxFbGVtZW50PiBNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6OmNyZWF0ZShIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQpCit7Cisg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQobWVkaWFFbGVt
ZW50KSk7Cit9CisKK01lZGlhQ29udHJvbEVsZW1lbnRUeXBlIE1lZGlhQ29udHJvbFBhbmVsRWxl
bWVudDo6ZGlzcGxheVR5cGUoKSBjb25zdAoreworICAgIHJldHVybiBNZWRpYUNvbnRyb2xzUGFu
ZWw7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50Ojpz
aGFkb3dQc2V1ZG9JZCgpIGNvbnN0Cit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNT
dHJpbmcsIGlkLCAoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwiKSk7CisgICAgcmV0dXJu
IGlkOworfQorCisvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKIGlubGluZSBNZWRp
YUNvbnRyb2xUaW1lbGluZUNvbnRhaW5lckVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVsaW5lQ29u
dGFpbmVyRWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQpCi0gICAgOiBNZWRp
YUNvbnRyb2xFbGVtZW50KG1lZGlhRWxlbWVudCwgTUVESUFfQ09OVFJPTFNfVElNRUxJTkVfQ09O
VEFJTkVSKQorICAgIDogTWVkaWFDb250cm9sRWxlbWVudChtZWRpYUVsZW1lbnQpCiB7CiB9CiAK
QEAgLTI0MSwyMCArMjQxLDI5IEBAIGJvb2wgTWVkaWFDb250cm9sVGltZWxpbmVDb250YWluZXJF
bGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKFJlbmRlclN0eWxlKiBzdHlsZSkKICAgICBpZiAoIU1l
ZGlhQ29udHJvbEVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoc3R5bGUpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKLSAgICAvLyBUaGlzIGlzIGZvciBNZWRpYUNvbnRyb2xsZXJUaGVtZUNsYXNz
aWM6Ci0gICAgLy8gSWYgdGhlcmUgaXMgbm8gc3R5bGUgZm9yIE1lZGlhQ29udHJvbFN0YXR1c0Rp
c3BsYXlFbGVtZW50IHN0eWxlLCBkb24ndCBoaWRlCi0gICAgLy8gdGhlIHRpbWVsaW5lLgotICAg
IGlmICghbWVkaWFFbGVtZW50KCktPnJlbmRlcmVyKCktPmdldENhY2hlZFBzZXVkb1N0eWxlKE1F
RElBX0NPTlRST0xTX1NUQVRVU19ESVNQTEFZKSkKKyAgICAvLyBBbHdheXMgc2hvdyB0aGUgdGlt
ZWxpbmUgaWYgdGhlIHRoZW1lIGRvZXNuJ3QgdXNlIHN0YXR1cyBkaXNwbGF5IChNZWRpYUNvbnRy
b2xsZXJUaGVtZUNsYXNzaWMsIGZvciBpbnN0YW5jZSkuCisgICAgaWYgKCFkb2N1bWVudCgpLT5w
YWdlKCktPnRoZW1lKCktPnVzZXNNZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5KCkpCiAgICAgICAg
IHJldHVybiB0cnVlOwogCiAgICAgZmxvYXQgZHVyYXRpb24gPSBtZWRpYUVsZW1lbnQoKS0+ZHVy
YXRpb24oKTsKICAgICByZXR1cm4gIWlzbmFuKGR1cmF0aW9uKSAmJiAhaXNpbmYoZHVyYXRpb24p
OwogfQogCitNZWRpYUNvbnRyb2xFbGVtZW50VHlwZSBNZWRpYUNvbnRyb2xUaW1lbGluZUNvbnRh
aW5lckVsZW1lbnQ6OmRpc3BsYXlUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTWVkaWFUaW1l
bGluZUNvbnRhaW5lcjsKK30KKworY29uc3QgQXRvbWljU3RyaW5nJiBNZWRpYUNvbnRyb2xUaW1l
bGluZUNvbnRhaW5lckVsZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKCkgY29uc3QKK3sKKyAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgaWQsICgiLXdlYmtpdC1tZWRpYS1jb250cm9s
cy10aW1lbGluZS1jb250YWluZXIiKSk7CisgICAgcmV0dXJuIGlkOworfQorCiAvLyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIGlubGluZSBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJD
b250YWluZXJFbGVtZW50OjpNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJDb250YWluZXJFbGVtZW50
KEhUTUxNZWRpYUVsZW1lbnQqIG1lZGlhRWxlbWVudCkKLSAgICA6IE1lZGlhQ29udHJvbEVsZW1l
bnQobWVkaWFFbGVtZW50LCBNRURJQV9DT05UUk9MU19WT0xVTUVfU0xJREVSX0NPTlRBSU5FUikK
KyAgICA6IE1lZGlhQ29udHJvbEVsZW1lbnQobWVkaWFFbGVtZW50KQogICAgICwgbV9pc1Zpc2li
bGUoZmFsc2UpCiAgICAgLCBtX3goMCkKICAgICAsIG1feSgwKQpAQCAtMjk5LDEwICszMDgsMjEg
QEAgYm9vbCBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJDb250YWluZXJFbGVtZW50OjpoaXRUZXN0
KGNvbnN0IEludFBvaW50JiBhYnNQb2ludCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK01lZGlh
Q29udHJvbEVsZW1lbnRUeXBlIE1lZGlhQ29udHJvbFZvbHVtZVNsaWRlckNvbnRhaW5lckVsZW1l
bnQ6OmRpc3BsYXlUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTWVkaWFWb2x1bWVTbGlkZXJD
b250YWluZXI7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgTWVkaWFDb250cm9sVm9sdW1lU2xp
ZGVyQ29udGFpbmVyRWxlbWVudDo6c2hhZG93UHNldWRvSWQoKSBjb25zdAoreworICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBpZCwgKCItd2Via2l0LW1lZGlhLWNvbnRyb2xz
LXZvbHVtZS1zbGlkZXItY29udGFpbmVyIikpOworICAgIHJldHVybiBpZDsKK30KKwogLy8gLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBpbmxpbmUgTWVkaWFDb250cm9sU3RhdHVzRGlz
cGxheUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50KEhUTUxNZWRpYUVs
ZW1lbnQqIG1lZGlhRWxlbWVudCkKLSAgICA6IE1lZGlhQ29udHJvbEVsZW1lbnQobWVkaWFFbGVt
ZW50LCBNRURJQV9DT05UUk9MU19TVEFUVVNfRElTUExBWSkKKyAgICA6IE1lZGlhQ29udHJvbEVs
ZW1lbnQobWVkaWFFbGVtZW50KQogICAgICwgbV9zdGF0ZUJlaW5nRGlzcGxheWVkKE5vdGhpbmcp
CiB7CiB9CkBAIC0zNDUsMTIgKzM2NSwyMyBAQCB2b2lkIE1lZGlhQ29udHJvbFN0YXR1c0Rpc3Bs
YXlFbGVtZW50Ojp1cGRhdGUoKQogCiBib29sIE1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVt
ZW50OjpyZW5kZXJlcklzTmVlZGVkKFJlbmRlclN0eWxlKiBzdHlsZSkKIHsKLSAgICBpZiAoIU1l
ZGlhQ29udHJvbEVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoc3R5bGUpKQorICAgIGlmICghTWVk
aWFDb250cm9sRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSkgfHwgIWRvY3VtZW50KCkt
PnBhZ2UoKS0+dGhlbWUoKS0+dXNlc01lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXkoKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogICAgIGZsb2F0IGR1cmF0aW9uID0gbWVkaWFFbGVtZW50KCktPmR1
cmF0aW9uKCk7CiAgICAgcmV0dXJuIChpc25hbihkdXJhdGlvbikgfHwgaXNpbmYoZHVyYXRpb24p
KTsKIH0KIAorTWVkaWFDb250cm9sRWxlbWVudFR5cGUgTWVkaWFDb250cm9sU3RhdHVzRGlzcGxh
eUVsZW1lbnQ6OmRpc3BsYXlUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTWVkaWFTdGF0dXNE
aXNwbGF5OworfQorCitjb25zdCBBdG9taWNTdHJpbmcmIE1lZGlhQ29udHJvbFN0YXR1c0Rpc3Bs
YXlFbGVtZW50OjpzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0Cit7CisgICAgREVGSU5FX1NUQVRJQ19M
T0NBTChBdG9taWNTdHJpbmcsIGlkLCAoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhdHVzLWRp
c3BsYXkiKSk7CisgICAgcmV0dXJuIGlkOworfQorCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCiAgICAgCiBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQ6Ok1lZGlhQ29udHJvbElucHV0
RWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQsIE1lZGlhQ29udHJvbEVsZW1l
bnRUeXBlIGRpc3BsYXlUeXBlKQpAQCAtODkyLDE4ICs5MjMsMTMgQEAgY29uc3QgQXRvbWljU3Ry
aW5nJiBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuQnV0dG9uRWxlbWVudDo6c2hhZG93UHNldWRvSWQo
KSBjb25zdAogCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLWlubGluZSBNZWRp
YUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVu
dChIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQsIFBzZXVkb0lkIHBzZXVkbykKLSAgICA6
IE1lZGlhQ29udHJvbEVsZW1lbnQobWVkaWFFbGVtZW50LCBwc2V1ZG8pCitpbmxpbmUgTWVkaWFD
b250cm9sVGltZURpc3BsYXlFbGVtZW50OjpNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQo
SFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVtZW50KQorICAgIDogTWVkaWFDb250cm9sRWxlbWVu
dChtZWRpYUVsZW1lbnQpCiAgICAgLCBtX2N1cnJlbnRWYWx1ZSgwKQogICAgICwgbV9pc1Zpc2li
bGUodHJ1ZSkKIHsKIH0KIAotUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1l
bnQ+IE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKEhUTUxNZWRpYUVsZW1l
bnQqIG1lZGlhRWxlbWVudCwgUHNldWRvSWQgcHNldWRvU3R5bGVJZCkKLXsKLSAgICByZXR1cm4g
YWRvcHRSZWYobmV3IE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVudChtZWRpYUVsZW1lbnQs
IHBzZXVkb1N0eWxlSWQpKTsKLX0KLQogUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gTWVkaWFDb250
cm9sVGltZURpc3BsYXlFbGVtZW50OjpzdHlsZUZvckVsZW1lbnQoKQogewogICAgIFJlZlB0cjxS
ZW5kZXJTdHlsZT4gc3R5bGUgPSBNZWRpYUNvbnRyb2xFbGVtZW50OjpzdHlsZUZvckVsZW1lbnQo
KTsKQEAgLTkzNCw2ICs5NjAsNTIgQEAgdm9pZCBNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1l
bnQ6OnNldEN1cnJlbnRWYWx1ZShmbG9hdCB0aW1lKQogICAgIG1fY3VycmVudFZhbHVlID0gdGlt
ZTsKIH0KIAorLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitQYXNzUmVmUHRyPE1l
ZGlhQ29udHJvbFRpbWVSZW1haW5pbmdEaXNwbGF5RWxlbWVudD4gTWVkaWFDb250cm9sVGltZVJl
bWFpbmluZ0Rpc3BsYXlFbGVtZW50OjpjcmVhdGUoSFRNTE1lZGlhRWxlbWVudCogbWVkaWFFbGVt
ZW50KQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFDb250cm9sVGltZVJlbWFpbmlu
Z0Rpc3BsYXlFbGVtZW50KG1lZGlhRWxlbWVudCkpOworfQorCitNZWRpYUNvbnRyb2xUaW1lUmVt
YWluaW5nRGlzcGxheUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVSZW1haW5pbmdEaXNwbGF5RWxl
bWVudChIVE1MTWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQpCisgICAgOiBNZWRpYUNvbnRyb2xU
aW1lRGlzcGxheUVsZW1lbnQobWVkaWFFbGVtZW50KQoreworfQorCitNZWRpYUNvbnRyb2xFbGVt
ZW50VHlwZSBNZWRpYUNvbnRyb2xUaW1lUmVtYWluaW5nRGlzcGxheUVsZW1lbnQ6OmRpc3BsYXlU
eXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTWVkaWFUaW1lUmVtYWluaW5nRGlzcGxheTsKK30K
KworY29uc3QgQXRvbWljU3RyaW5nJiBNZWRpYUNvbnRyb2xUaW1lUmVtYWluaW5nRGlzcGxheUVs
ZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKCkgY29uc3QKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FM
KEF0b21pY1N0cmluZywgaWQsICgiLXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lLXJlbWFpbmlu
Zy1kaXNwbGF5IikpOworICAgIHJldHVybiBpZDsKK30KKworLy8gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQorCitQYXNzUmVmUHRyPE1lZGlhQ29udHJvbEN1cnJlbnRUaW1lRGlzcGxheUVs
ZW1lbnQ+IE1lZGlhQ29udHJvbEN1cnJlbnRUaW1lRGlzcGxheUVsZW1lbnQ6OmNyZWF0ZShIVE1M
TWVkaWFFbGVtZW50KiBtZWRpYUVsZW1lbnQpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBN
ZWRpYUNvbnRyb2xDdXJyZW50VGltZURpc3BsYXlFbGVtZW50KG1lZGlhRWxlbWVudCkpOworfQor
CitNZWRpYUNvbnRyb2xDdXJyZW50VGltZURpc3BsYXlFbGVtZW50OjpNZWRpYUNvbnRyb2xDdXJy
ZW50VGltZURpc3BsYXlFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqIG1lZGlhRWxlbWVudCkKKyAg
ICA6IE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVudChtZWRpYUVsZW1lbnQpCit7Cit9CisK
K01lZGlhQ29udHJvbEVsZW1lbnRUeXBlIE1lZGlhQ29udHJvbEN1cnJlbnRUaW1lRGlzcGxheUVs
ZW1lbnQ6OmRpc3BsYXlUeXBlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gTWVkaWFDdXJyZW50VGlt
ZURpc3BsYXk7Cit9CisKK2NvbnN0IEF0b21pY1N0cmluZyYgTWVkaWFDb250cm9sQ3VycmVudFRp
bWVEaXNwbGF5RWxlbWVudDo6c2hhZG93UHNldWRvSWQoKSBjb25zdAoreworICAgIERFRklORV9T
VEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBpZCwgKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1
cnJlbnQtdGltZS1kaXNwbGF5IikpOworICAgIHJldHVybiBpZDsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFZJREVPKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL01lZGlhQ29udHJvbEVsZW1lbnRzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvTWVkaWFDb250cm9sRWxlbWVudHMuaAppbmRleCBjMzI1M2M0MmU3ZTAxNTc0
NzBlMTk1MDUzNjk0MzJlYzUyZjU5OGNjLi5kMDBlMWYzYTEwNWE0NjE0MzcwY2M2MTZmMjAxYTE0
MzRlZjdkMWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTWVkaWFDb250
cm9sRWxlbWVudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTWVkaWFDb250cm9s
RWxlbWVudHMuaApAQCAtODAsMjUgKzgwLDI0IEBAIHB1YmxpYzoKICAgICAKIHByaXZhdGU6CiAg
ICAgTWVkaWFDb250cm9sU2hhZG93Um9vdEVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCopOworICAg
IHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0OwogfTsK
IAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBjbGFzcyBNZWRpYUNvbnRyb2xF
bGVtZW50IDogcHVibGljIEhUTUxEaXZFbGVtZW50IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxNZWRpYUNvbnRyb2xFbGVtZW50PiBjcmVhdGUoSFRNTE1lZGlhRWxlbWVudCosIFBz
ZXVkb0lkKTsKLQogICAgIHZpcnR1YWwgdm9pZCBhdHRhY2goKTsKICAgICB2b2lkIGF0dGFjaFRv
UGFyZW50KEVsZW1lbnQqKTsKICAgICB2b2lkIHVwZGF0ZSgpOwogICAgIHZvaWQgdXBkYXRlU3R5
bGUoKTsKIAotICAgIE1lZGlhQ29udHJvbEVsZW1lbnRUeXBlIGRpc3BsYXlUeXBlKCkgY29uc3Qg
eyByZXR1cm4gbV9kaXNwbGF5VHlwZTsgfQorICAgIHZpcnR1YWwgTWVkaWFDb250cm9sRWxlbWVu
dFR5cGUgZGlzcGxheVR5cGUoKSBjb25zdCA9IDA7CiAKICAgICBIVE1MTWVkaWFFbGVtZW50KiBt
ZWRpYUVsZW1lbnQoKSBjb25zdCB7IHJldHVybiBtX21lZGlhRWxlbWVudDsgfQogCiBwcm90ZWN0
ZWQ6Ci0gICAgTWVkaWFDb250cm9sRWxlbWVudChIVE1MTWVkaWFFbGVtZW50KiwgUHNldWRvSWQp
OworICAgIE1lZGlhQ29udHJvbEVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCopOwogCiAgICAgdmly
dHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoUmVuZGVyU3R5bGUqKTsKIApAQCAtMTA4LDE5ICsx
MDcsMzIgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGJvb2wgaXNNZWRpYUNvbnRyb2xFbGVtZW50
KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgSFRNTE1lZGlhRWxlbWVudCogbV9tZWRp
YUVsZW1lbnQ7ICAgCi0gICAgUHNldWRvSWQgbV9wc2V1ZG9TdHlsZUlkOwotICAgIE1lZGlhQ29u
dHJvbEVsZW1lbnRUeXBlIG1fZGlzcGxheVR5cGU7ICAvLyBzb21lIGVsZW1lbnRzIGNhbiBzaG93
IG11bHRpcGxlIHR5cGVzIChlLmcuIHBsYXkvcGF1c2UpCiB9OwogCiAvLyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCiAKK2NsYXNzIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudCA6IHB1Ymxp
YyBNZWRpYUNvbnRyb2xFbGVtZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxN
ZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50Kik7CisKK3By
aXZhdGU6CisgICAgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqKTsK
KyAgICB2aXJ0dWFsIE1lZGlhQ29udHJvbEVsZW1lbnRUeXBlIGRpc3BsYXlUeXBlKCkgY29uc3Q7
CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIHNoYWRvd1BzZXVkb0lkKCkgY29uc3Q7
Cit9OworCisKKy8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogY2xhc3MgTWVkaWFD
b250cm9sVGltZWxpbmVDb250YWluZXJFbGVtZW50IDogcHVibGljIE1lZGlhQ29udHJvbEVsZW1l
bnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5l
Q29udGFpbmVyRWxlbWVudD4gY3JlYXRlKEhUTUxNZWRpYUVsZW1lbnQqKTsKIAogcHJpdmF0ZToK
ICAgICBNZWRpYUNvbnRyb2xUaW1lbGluZUNvbnRhaW5lckVsZW1lbnQoSFRNTE1lZGlhRWxlbWVu
dCopOworICAgIHZpcnR1YWwgTWVkaWFDb250cm9sRWxlbWVudFR5cGUgZGlzcGxheVR5cGUoKSBj
b25zdDsKICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChSZW5kZXJTdHlsZSopOwor
ICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0Owog
fTsKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTM3LDYgKzE0OSw4IEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJDb250YWlu
ZXJFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIE1lZGlhQ29udHJvbEVs
ZW1lbnRUeXBlIGRpc3BsYXlUeXBlKCkgY29uc3Q7CisgICAgdmlydHVhbCBjb25zdCBBdG9taWNT
dHJpbmcmIHNoYWRvd1BzZXVkb0lkKCkgY29uc3Q7CiAKICAgICBib29sIG1faXNWaXNpYmxlOwog
ICAgIGludCBtX3gsIG1feTsKQEAgLTE1Myw3ICsxNjcsOSBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIE1lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXlFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQqKTsK
IAorICAgIHZpcnR1YWwgTWVkaWFDb250cm9sRWxlbWVudFR5cGUgZGlzcGxheVR5cGUoKSBjb25z
dDsKICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChSZW5kZXJTdHlsZSopOworICAg
IHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBzaGFkb3dQc2V1ZG9JZCgpIGNvbnN0OwogCiAg
ICAgZW51bSBTdGF0ZUJlaW5nRGlzcGxheWVkIHsgTm90aGluZywgTG9hZGluZywgTGl2ZUJyb2Fk
Y2FzdCB9OwogICAgIFN0YXRlQmVpbmdEaXNwbGF5ZWQgbV9zdGF0ZUJlaW5nRGlzcGxheWVkOwpA
QCAtMzczLDE2ICszODksMTUgQEAgcHJpdmF0ZToKIAogY2xhc3MgTWVkaWFDb250cm9sVGltZURp
c3BsYXlFbGVtZW50IDogcHVibGljIE1lZGlhQ29udHJvbEVsZW1lbnQgewogcHVibGljOgotICAg
IHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVudD4gY3JlYXRl
KEhUTUxNZWRpYUVsZW1lbnQqLCBQc2V1ZG9JZCk7Ci0KICAgICB2b2lkIHNldFZpc2libGUoYm9v
bCk7CiAKICAgICB2b2lkIHNldEN1cnJlbnRWYWx1ZShmbG9hdCk7CiAgICAgZmxvYXQgY3VycmVu
dFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jdXJyZW50VmFsdWU7IH0KIAotcHJpdmF0ZToKLSAg
ICBNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCosIFBzZXVk
b0lkKTsKK3Byb3RlY3RlZDoKKyAgICBNZWRpYUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQoSFRN
TE1lZGlhRWxlbWVudCopOwogCitwcml2YXRlOgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxSZW5k
ZXJTdHlsZT4gc3R5bGVGb3JFbGVtZW50KCk7CiAgICAgZmxvYXQgbV9jdXJyZW50VmFsdWU7CiAg
ICAgYm9vbCBtX2lzVmlzaWJsZTsKQEAgLTM5MCw2ICs0MDUsMzIgQEAgcHJpdmF0ZToKIAogLy8g
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCitjbGFzcyBNZWRpYUNvbnRyb2xUaW1lUmVt
YWluaW5nRGlzcGxheUVsZW1lbnQgOiBwdWJsaWMgTWVkaWFDb250cm9sVGltZURpc3BsYXlFbGVt
ZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xUaW1lUmVt
YWluaW5nRGlzcGxheUVsZW1lbnQ+IGNyZWF0ZShIVE1MTWVkaWFFbGVtZW50Kik7CisKK3ByaXZh
dGU6CisgICAgTWVkaWFDb250cm9sVGltZVJlbWFpbmluZ0Rpc3BsYXlFbGVtZW50KEhUTUxNZWRp
YUVsZW1lbnQqKTsKKworICAgIHZpcnR1YWwgTWVkaWFDb250cm9sRWxlbWVudFR5cGUgZGlzcGxh
eVR5cGUoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgc2hhZG93UHNl
dWRvSWQoKSBjb25zdDsKK307CisKKy8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwor
Y2xhc3MgTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNwbGF5RWxlbWVudCA6IHB1YmxpYyBNZWRp
YUNvbnRyb2xUaW1lRGlzcGxheUVsZW1lbnQgeworcHVibGljOgorICAgIHN0YXRpYyBQYXNzUmVm
UHRyPE1lZGlhQ29udHJvbEN1cnJlbnRUaW1lRGlzcGxheUVsZW1lbnQ+IGNyZWF0ZShIVE1MTWVk
aWFFbGVtZW50Kik7CisKK3ByaXZhdGU6CisgICAgTWVkaWFDb250cm9sQ3VycmVudFRpbWVEaXNw
bGF5RWxlbWVudChIVE1MTWVkaWFFbGVtZW50Kik7CisKKyAgICB2aXJ0dWFsIE1lZGlhQ29udHJv
bEVsZW1lbnRUeXBlIGRpc3BsYXlUeXBlKCkgY29uc3Q7CisgICAgdmlydHVhbCBjb25zdCBBdG9t
aWNTdHJpbmcmIHNoYWRvd1BzZXVkb0lkKCkgY29uc3Q7Cit9OworCisvLyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCisKIGNsYXNzIFJlbmRlck1lZGlhQ29udHJvbFNoYWRvd1Jvb3QgOiBw
dWJsaWMgUmVuZGVyQmxvY2sgewogcHVibGljOgogICAgIFJlbmRlck1lZGlhQ29udHJvbFNoYWRv
d1Jvb3QoRWxlbWVudCogZSkgOiBSZW5kZXJCbG9jayhlKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTWVkaWEuY3BwCmluZGV4IDcwYjFiMzM2YjA5YzlkYmUwN2EyMTdmMjY3OTU3
ZDg5ZjY0ZTFkMDMuLjkxODA2NDcwY2ZhNjEyYjRhYjFmYTFiMTRmZDNhYmI0MWE5NjRhOWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZWRpYS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lZGlhLmNwcApAQCAtMTgzLDcgKzE4Myw3
IEBAIHZvaWQgUmVuZGVyTWVkaWE6OmNyZWF0ZUNvbnRyb2xzU2hhZG93Um9vdCgpCiB2b2lkIFJl
bmRlck1lZGlhOjpjcmVhdGVQYW5lbCgpCiB7CiAgICAgQVNTRVJUKCFtX3BhbmVsKTsKLSAgICBt
X3BhbmVsID0gTWVkaWFDb250cm9sRWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCgpLCBNRURJ
QV9DT05UUk9MU19QQU5FTCk7CisgICAgbV9wYW5lbCA9IE1lZGlhQ29udHJvbFBhbmVsRWxlbWVu
dDo6Y3JlYXRlKG1lZGlhRWxlbWVudCgpKTsKICAgICBtX3BhbmVsLT5hdHRhY2hUb1BhcmVudCht
X2NvbnRyb2xzU2hhZG93Um9vdC5nZXQoKSk7CiB9CiAKQEAgLTI4NiwxNCArMjg2LDE0IEBAIHZv
aWQgUmVuZGVyTWVkaWE6OmNyZWF0ZVZvbHVtZVNsaWRlck11dGVCdXR0b24oKQogdm9pZCBSZW5k
ZXJNZWRpYTo6Y3JlYXRlQ3VycmVudFRpbWVEaXNwbGF5KCkKIHsKICAgICBBU1NFUlQoIW1fY3Vy
cmVudFRpbWVEaXNwbGF5KTsKLSAgICBtX2N1cnJlbnRUaW1lRGlzcGxheSA9IE1lZGlhQ29udHJv
bFRpbWVEaXNwbGF5RWxlbWVudDo6Y3JlYXRlKG1lZGlhRWxlbWVudCgpLCBNRURJQV9DT05UUk9M
U19DVVJSRU5UX1RJTUVfRElTUExBWSk7CisgICAgbV9jdXJyZW50VGltZURpc3BsYXkgPSBNZWRp
YUNvbnRyb2xDdXJyZW50VGltZURpc3BsYXlFbGVtZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KCkp
OwogICAgIG1fY3VycmVudFRpbWVEaXNwbGF5LT5hdHRhY2hUb1BhcmVudChtX3RpbWVsaW5lQ29u
dGFpbmVyLmdldCgpKTsKIH0KIAogdm9pZCBSZW5kZXJNZWRpYTo6Y3JlYXRlVGltZVJlbWFpbmlu
Z0Rpc3BsYXkoKQogewogICAgIEFTU0VSVCghbV90aW1lUmVtYWluaW5nRGlzcGxheSk7Ci0gICAg
bV90aW1lUmVtYWluaW5nRGlzcGxheSA9IE1lZGlhQ29udHJvbFRpbWVEaXNwbGF5RWxlbWVudDo6
Y3JlYXRlKG1lZGlhRWxlbWVudCgpLCBNRURJQV9DT05UUk9MU19USU1FX1JFTUFJTklOR19ESVNQ
TEFZKTsKKyAgICBtX3RpbWVSZW1haW5pbmdEaXNwbGF5ID0gTWVkaWFDb250cm9sVGltZVJlbWFp
bmluZ0Rpc3BsYXlFbGVtZW50OjpjcmVhdGUobWVkaWFFbGVtZW50KCkpOwogICAgIG1fdGltZVJl
bWFpbmluZ0Rpc3BsYXktPmF0dGFjaFRvUGFyZW50KG1fdGltZWxpbmVDb250YWluZXIuZ2V0KCkp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCmluZGV4IGQ1MGE5YzRi
Nzk5MzdjMmFkZjg1ODI4YzE2MmZiNDY2ZWRkNGNiZWMuLmIwMmEyYmYzNmFmOWRlMDczNjFiNDA1
MjVkMjA5MjUwYjhiMjY0ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5o
CkBAIC0xODAsNiArMTgwLDcgQEAgcHVibGljOgogICAgIC8vIE1lZGlhIGNvbnRyb2xzCiAgICAg
dmlydHVhbCBib29sIGhpdFRlc3RNZWRpYUNvbnRyb2xQYXJ0KFJlbmRlck9iamVjdCosIGNvbnN0
IEludFBvaW50JiBhYnNQb2ludCk7CiAgICAgdmlydHVhbCBib29sIHNob3VsZFJlbmRlck1lZGlh
Q29udHJvbFBhcnQoQ29udHJvbFBhcnQsIEVsZW1lbnQqKTsKKyAgICB2aXJ0dWFsIGJvb2wgdXNl
c01lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXkoKSB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1
YWwgZG91YmxlIG1lZGlhQ29udHJvbHNGYWRlSW5EdXJhdGlvbigpIHsgcmV0dXJuIDAuMTsgfQog
ICAgIHZpcnR1YWwgZG91YmxlIG1lZGlhQ29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSB7IHJldHVy
biAwLjM7IH0KICAgICB2aXJ0dWFsIFN0cmluZyBmb3JtYXRNZWRpYUNvbnRyb2xzVGltZShmbG9h
dCB0aW1lKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJUaGVtZU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLmgK
aW5kZXggOTU2NjFiOGFiZWQyMDljMTExMWNlMDBkMDE4YTY1Y2Q2MjUxOTViNy4uNjYwYzI3ZGM5
OWZkNTgyNjQzNjM5NTk1MDBjMWI0OTcyNjYxYWRkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRoZW1lTWFjLmgKQEAgLTE2NCw2ICsxNjQsNyBAQCBwcm90ZWN0ZWQ6CiAgICAg
dmlydHVhbCBTdHJpbmcgZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCgpOwogCiAgICAgdmly
dHVhbCBib29sIHNob3VsZFJlbmRlck1lZGlhQ29udHJvbFBhcnQoQ29udHJvbFBhcnQsIEVsZW1l
bnQqKTsKKyAgICB2aXJ0dWFsIGJvb2wgdXNlc01lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXkoKTsK
ICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0TWVkaWFTbGlkZXJUaHVtYlNpemUoUmVuZGVyT2JqZWN0
KikgY29uc3Q7CiAgICAgdmlydHVhbCBJbnRQb2ludCB2b2x1bWVTbGlkZXJPZmZzZXRGcm9tTXV0
ZUJ1dHRvbihOb2RlKiwgY29uc3QgSW50U2l6ZSYpIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KaW5kZXggNjA1ZTk1ODZlODIzZDU3ZjJk
ZDUzOTRmZmJhZjFiZGIyOGRlNmY4My4uZGYzNWFlOTI4NWY1ZGEyZjFiZDVjODM3NjU3MTExZWIw
M2FhMjdlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQpA
QCAtMTk4MSw2ICsxOTgxLDExIEBAIGJvb2wgUmVuZGVyVGhlbWVNYWM6OnNob3VsZFJlbmRlck1l
ZGlhQ29udHJvbFBhcnQoQ29udHJvbFBhcnQgcGFydCwgRWxlbWVudCogZWxlCiAgICAgcmV0dXJu
IFJlbmRlclRoZW1lOjpzaG91bGRSZW5kZXJNZWRpYUNvbnRyb2xQYXJ0KHBhcnQsIGVsZW1lbnQp
OwogfQogCitib29sIFJlbmRlclRoZW1lTWFjOjp1c2VzTWVkaWFDb250cm9sU3RhdHVzRGlzcGxh
eSgpCit7CisgICAgcmV0dXJuIG1lZGlhQ29udHJvbGxlclRoZW1lKCkgPT0gTWVkaWFDb250cm9s
bGVyVGhlbWVRdWlja1RpbWU7Cit9CisKIEludFBvaW50IFJlbmRlclRoZW1lTWFjOjp2b2x1bWVT
bGlkZXJPZmZzZXRGcm9tTXV0ZUJ1dHRvbihOb2RlKiBtdXRlQnV0dG9uLCBjb25zdCBJbnRTaXpl
JiBzaXplKSBjb25zdAogewogICAgIHN0YXRpYyBjb25zdCBpbnQgeE9mZnNldCA9IC00OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3Rh
bnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFu
dHMuaAppbmRleCA2MzNkNDgyNGE5ZWQxYjE1ZWUyNDM5YzJiMGQ5OWYzOTE0YjBkZGVmLi5mZWI4
ZWViN2I3ZmQxOGUwYmQ0YTAzYTJhODZiZWFkMWQ1OTg3YzNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtNjgs
OSArNjgsOCBAQCBlbnVtIFN0eWxlRGlmZmVyZW5jZUNvbnRleHRTZW5zaXRpdmVQcm9wZXJ0eSB7
CiBlbnVtIFBzZXVkb0lkIHsKICAgICAvLyBUaGUgb3JkZXIgbXVzdCBiZSBOT1AgSUQsIHB1Ymxp
YyBJRHMsIGFuZCB0aGVuIGludGVybmFsIElEcy4KICAgICBOT1BTRVVETywgRklSU1RfTElORSwg
RklSU1RfTEVUVEVSLCBCRUZPUkUsIEFGVEVSLCBTRUxFQ1RJT04sIEZJUlNUX0xJTkVfSU5IRVJJ
VEVELCBTQ1JPTExCQVIsIEZJTEVfVVBMT0FEX0JVVFRPTiwgSU5QVVRfUExBQ0VIT0xERVIsCi0g
ICAgU0VBUkNIX0NBTkNFTF9CVVRUT04sIFNFQVJDSF9ERUNPUkFUSU9OLCBTRUFSQ0hfUkVTVUxU
U19ERUNPUkFUSU9OLCBTRUFSQ0hfUkVTVUxUU19CVVRUT04sIE1FRElBX0NPTlRST0xTX1BBTkVM
LAotICAgIE1FRElBX0NPTlRST0xTX1RJTUVMSU5FX0NPTlRBSU5FUiwgTUVESUFfQ09OVFJPTFNf
Vk9MVU1FX1NMSURFUl9DT05UQUlORVIsIE1FRElBX0NPTlRST0xTX0NVUlJFTlRfVElNRV9ESVNQ
TEFZLCBNRURJQV9DT05UUk9MU19USU1FX1JFTUFJTklOR19ESVNQTEFZLCAKLSAgICBNRURJQV9D
T05UUk9MU19TVEFUVVNfRElTUExBWSwgU0NST0xMQkFSX1RIVU1CLCBTQ1JPTExCQVJfQlVUVE9O
LCBTQ1JPTExCQVJfVFJBQ0ssIFNDUk9MTEJBUl9UUkFDS19QSUVDRSwgU0NST0xMQkFSX0NPUk5F
UiwgUkVTSVpFUiwKKyAgICBTRUFSQ0hfQ0FOQ0VMX0JVVFRPTiwgU0VBUkNIX0RFQ09SQVRJT04s
IFNFQVJDSF9SRVNVTFRTX0RFQ09SQVRJT04sIFNFQVJDSF9SRVNVTFRTX0JVVFRPTiwKKyAgICBT
Q1JPTExCQVJfVEhVTUIsIFNDUk9MTEJBUl9CVVRUT04sIFNDUk9MTEJBUl9UUkFDSywgU0NST0xM
QkFSX1RSQUNLX1BJRUNFLCBTQ1JPTExCQVJfQ09STkVSLCBSRVNJWkVSLAogICAgIElOUFVUX0xJ
U1RfQlVUVE9OLCBJTlBVVF9TUEVFQ0hfQlVUVE9OLCBJTk5FUl9TUElOX0JVVFRPTiwgT1VURVJf
U1BJTl9CVVRUT04sIFZJU0lURURfTElOSywgUFJPR1JFU1NfQkFSX1ZBTFVFLAogICAgIE1FVEVS
X0hPUklaT05UQUxfQkFSLCBNRVRFUl9IT1JJWk9OVEFMX09QVElNVU0sIE1FVEVSX0hPUklaT05U
QUxfU1VCT1BUSU1BTCwgTUVURVJfSE9SSVpPTlRBTF9FVkVOX0xFU1NfR09PRCwKICAgICBNRVRF
Ul9WRVJUSUNBTF9CQVIsIE1FVEVSX1ZFUlRJQ0FMX09QVElNVU0sIE1FVEVSX1ZFUlRJQ0FMX1NV
Qk9QVElNQUwsIE1FVEVSX1ZFUlRJQ0FMX0VWRU5fTEVTU19HT09ELCAK
</data>
<flag name="review"
          id="71693"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>