<?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>168840</bug_id>
          
          <creation_ts>2017-02-24 12:58:18 -0800</creation_ts>
          <short_desc>Media: notify clients when autoplay is denied</short_desc>
          <delta_ts>2017-02-27 08:46:48 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Matt Rajca">mrajca</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1280835</commentid>
    <comment_count>0</comment_count>
    <who name="Matt Rajca">mrajca</who>
    <bug_when>2017-02-24 12:58:18 -0800</bug_when>
    <thetext>Tell clients when autoplay is denied due to restrictions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1280837</commentid>
    <comment_count>1</comment_count>
      <attachid>302680</attachid>
    <who name="Matt Rajca">mrajca</who>
    <bug_when>2017-02-24 13:02:17 -0800</bug_when>
    <thetext>Created attachment 302680
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1280852</commentid>
    <comment_count>2</comment_count>
      <attachid>302680</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-02-24 13:49:50 -0800</bug_when>
    <thetext>Comment on attachment 302680
Patch

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

&gt; Source/WebCore/html/HTMLMediaElement.cpp:2425
&gt; +            if (Page* page = document().page())

Darin would say &quot;auto*&quot;

&gt; Source/WebCore/page/AutoplayEvent.h:30
&gt; +enum {

I think we should make this enum class AutoplayEvent and cast it to uint32_t for IPC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1280890</commentid>
    <comment_count>3</comment_count>
    <who name="Matt Rajca">mrajca</who>
    <bug_when>2017-02-24 15:08:51 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 302680 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=302680&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/HTMLMediaElement.cpp:2425
&gt; &gt; +            if (Page* page = document().page())
&gt; 
&gt; Darin would say &quot;auto*&quot;
&gt; 
&gt; &gt; Source/WebCore/page/AutoplayEvent.h:30
&gt; &gt; +enum {
&gt; 
&gt; I think we should make this enum class AutoplayEvent and cast it to uint32_t
&gt; for IPC.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281386</commentid>
    <comment_count>4</comment_count>
    <who name="Matt Rajca">mrajca</who>
    <bug_when>2017-02-27 08:46:48 -0800</bug_when>
    <thetext>Committed: r212982</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>302680</attachid>
            <date>2017-02-24 13:02:17 -0800</date>
            <delta_ts>2017-02-24 13:49:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-168840-20170224125926.patch</filename>
            <type>text/plain</type>
            <size>24302</size>
            <attacher name="Matt Rajca">mrajca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEyODQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGFiODk1N2Y4N2JjNjYx
MDhmMjU4Mzk4NzU2ZjdhZTk4NTU4MTZlOS4uYjM1YTEzNGQzOGVkMDhhZGI1ZTJlZmFkY2Y5MTMy
M2MxMTk5YzE1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTAyLTI0ICBNYXR0
IFJhamNhICA8bXJhamNhQGFwcGxlLmNvbT4KKworICAgICAgICBNZWRpYTogbm90aWZ5IGNsaWVu
dHMgd2hlbiBhdXRvcGxheSBpcyBkZW5pZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2ODg0MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZGVkIEFQSSB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6c2V0UmVhZHlTdGF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpwbGF5KToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnBsYXlJbnRlcm5hbCk6CisgICAgICAgICogcGFn
ZS9BdXRvcGxheUV2ZW50Lmg6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvQ2hyb21lQ2xpZW50Lmg6
CisKIDIwMTctMDItMjIgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtXaW5dIENvbXBpbGUgZml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDY0Mzk5MTEyNWFkNzE0YmVi
MWRiYTIxZGYwZTA3YjkxY2RjMWY2Y2EuLjA2MjNhYmQxYmNiYjQ4ZmI1YmM5MWNiMTVhYzExOGNm
NjA5OGRhNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxNy0wMi0yNCAgTWF0dCBS
YWpjYSAgPG1yYWpjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTWVkaWE6IG5vdGlmeSBjbGllbnRz
IHdoZW4gYXV0b3BsYXkgaXMgZGVuaWVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjg4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJVUlDbGllbnQuaDoKKyAgICAgICAg
KEFQSTo6VUlDbGllbnQ6OmhhbmRsZUF1dG9wbGF5RXZlbnQpOgorICAgICAgICAoQVBJOjpVSUNs
aWVudDo6ZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1cmUp
OiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwOgorICAgICAg
ICAoV0tQYWdlU2V0UGFnZVVJQ2xpZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQ
YWdlVUlDbGllbnQuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpoYW5kbGVBdXRvcGxheUV2ZW50KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRQbGF5TWVkaWFQcmV2ZW50ZWRGcm9tUGxheWlu
Z1dpdGhvdXRVc2VyR2VzdHVyZSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW46
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9wbGF5RXZlbnQp
OgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmRpZFBsYXlNZWRpYVByZXZlbnRl
ZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOgorCiAyMDE3LTAyLTIyICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl0gQ2FsbCBwcm9j
ZXNzRGlkQmVjb21lVW5yZXNwb25zaXZlIGRlbGVnYXRlIHdoZW4gYSBiYWNrZ3JvdW5kIHByb2Nl
c3MgaXMgdW5yZXNwb25zaXZlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKaW5kZXggMzk1NTNmODgzZGEyN2NlMzViNWQ1ZTU4ZTU2NTQzNmE0
MzRkMTk3OS4uM2UxNDY2M2E5M2FkMjI3YzBiZmI0YzYzMGY3OGRlODdhYTNkZGU5NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAt
NTc4OCw2ICs1Nzg4LDcgQEAKIAkJQzk2RjVFQzcxQjU4NzIyNjAwOTFFQTlEIC8qIE1lZGlhU2Vz
c2lvbkludGVycnVwdGlvblByb3ZpZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEM5NkY1RUMzMUI1ODcyMjYwMDkxRUE5RCAvKiBNZWRpYVNlc3Np
b25JbnRlcnJ1cHRpb25Qcm92aWRlci5jcHAgKi87IH07CiAJCUM5NkY1RUM4MUI1ODcyMjYwMDkx
RUE5RCAvKiBNZWRpYVNlc3Npb25JbnRlcnJ1cHRpb25Qcm92aWRlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzk2RjVFQzQxQjU4NzIyNjAwOTFFQTlE
IC8qIE1lZGlhU2Vzc2lvbkludGVycnVwdGlvblByb3ZpZGVyLmggKi87IH07CiAJCUM5OTA1ODEz
MUUzMkM3NUYwMDczQkREQSAvKiBTdWNjZXNzT3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM5OTA1ODEyMUUzMkI3MzQwMDczQkREQSAvKiBTdWNjZXNz
T3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
OUQ0NjcwNTFFNjBDNDY1MDA4MTk1RkIgLyogQXV0b3BsYXlFdmVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzlENDY3MDQxRTYwQzNFQjAwODE5NUZC
IC8qIEF1dG9wbGF5RXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlDOUQ4NTFGMDFCMzlEQzc4MDA4NTA2MkUgLyogTWVkaWFTZXNzaW9uTWV0
YWRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM5
RDg1MUVFMUIzOURDNzgwMDg1MDYyRSAvKiBNZWRpYVNlc3Npb25NZXRhZGF0YS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUM5REFEQkNCMUIxRDNC
OTcwMDFGMTdEOCAvKiBKU01lZGlhU2Vzc2lvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDOURBREJDOTFCMUQzQjI1MDAxRjE3RDggLyogSlNNZWRp
YVNlc3Npb24uY3BwICovOyB9OwogCQlDOUY4N0NGRTFCMjhGNDBFMDA5NzlCODMgLyogTWVkaWFT
ZXNzaW9uRXZlbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDOUY4N0NGRDFCMjhFNUY2MDA5NzlCODMgLyogTWVkaWFTZXNzaW9uRXZlbnRzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTEzODcwLDYg
KzEzODcxLDcgQEAKIAkJQzk2RjVFQzMxQjU4NzIyNjAwOTFFQTlEIC8qIE1lZGlhU2Vzc2lvbklu
dGVycnVwdGlvblByb3ZpZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1lZGlhU2Vzc2lvbkludGVycnVwdGlvblByb3ZpZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQzk2RjVFQzQxQjU4NzIyNjAwOTFFQTlEIC8qIE1lZGlhU2Vzc2lvbklu
dGVycnVwdGlvblByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1l
ZGlhU2Vzc2lvbkludGVycnVwdGlvblByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUM5OTA1ODEyMUUzMkI3MzQwMDczQkREQSAvKiBTdWNjZXNzT3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU3VjY2Vzc09yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM5RDQ2NzA0
MUU2MEMzRUIwMDgxOTVGQiAvKiBBdXRvcGxheUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dG9w
bGF5RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzlEODUxRUUxQjM5REM3
ODAwODUwNjJFIC8qIE1lZGlhU2Vzc2lvbk1ldGFkYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1lZGlhU2Vzc2lvbk1ldGFkYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUM5REFEQkM5MUIxRDNCMjUwMDFGMTdEOCAvKiBKU01lZGlhU2Vzc2lvbi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhU2Vzc2lvbi5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM5REFEQkNBMUIxRDNCMjUwMDFGMTdEOCAv
KiBKU01lZGlhU2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01l
ZGlhU2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTgxOTUsNiArMTgx
OTcsNyBAQAogCQkJCTcyNEVFNTRGMURDN0YyNUIwMEE5MUZGQiAvKiBBY3Rpdml0eVN0YXRlQ2hh
bmdlT2JzZXJ2ZXIuaCAqLywKIAkJCQlCQ0Y0OENFNjEzNzBEMTE0MDA0RTg3RDYgLyogQWRqdXN0
Vmlld1NpemVPck5vdC5oICovLAogCQkJCUNFREExMkQ2MTUyQ0ExQ0IwMEQ5RTA4RCAvKiBBbHRl
cm5hdGl2ZVRleHRDbGllbnQuaCAqLywKKwkJCQlDOUQ0NjcwNDFFNjBDM0VCMDA4MTk1RkIgLyog
QXV0b3BsYXlFdmVudC5oICovLAogCQkJCTQ1ODMwRDRCMTY3OUI0RjgwMEFDRjhDMyAvKiBBdXRv
c2Nyb2xsQ29udHJvbGxlci5jcHAgKi8sCiAJCQkJNDU4MzBENEMxNjc5QjRGODAwQUNGOEMzIC8q
IEF1dG9zY3JvbGxDb250cm9sbGVyLmggKi8sCiAJCQkJQkMxMjRFRTQwQzI2NDFDRDAwOUUyMzQ5
IC8qIEJhclByb3AuY3BwICovLApAQCAtMjc5NTEsNiArMjc5NTQsNyBAQAogCQkJCTVFMkM0MzYx
MUJDRUUzMjMwMDAxRTJCQyAvKiBSVENSdHBTZW5kZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTVF
MkM0MzVGMUJDRUUzMUUwMDAxRTJCQyAvKiBSVENSdHBTZW5kZXJSZWNlaXZlckJhc2UuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTVFNUUyQjE0MUNGQzNFNzUwMDBDMEQ4NSAvKiBSVENSdHBUcmFuc2Nl
aXZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzlENDY3MDUxRTYwQzQ2NTAwODE5NUZCIC8qIEF1
dG9wbGF5RXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTI2MTdEMTREMUMwMDQyMEFB
MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTA3OEUwOTQz
MTdEMTZFMUMwMDQyMEFBMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwNzhFMDk0NDE3RDE2RTFDMDA0MjBBQTEgLyogUlRDU2Vzc2lvbkRl
c2NyaXB0aW9uUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcAppbmRleCA3ZmEwMTZkZGZlOGY5YjQ2NTUxZGM0YWZhYjUyMDQ0YjU1
YTgwNDc5Li5jOWYxYWM4YjkzMGU1MTQ5NDUxZDYyNjdiODc2ZjQ1Y2I0ZjhkZTZmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTI0MTksOSArMjQxOSwxMyBA
QCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnNldFJlYWR5U3RhdGUoTWVkaWFQbGF5ZXI6OlJlYWR5
U3RhdGUgc3RhdGUpCiAgICAgICAgICAgICBtX3BsYXliYWNrU3RhcnRlZFRpbWUgPSBjdXJyZW50
TWVkaWFUaW1lKCkudG9Eb3VibGUoKTsKICAgICAgICAgICAgIHNjaGVkdWxlRXZlbnQoZXZlbnRO
YW1lcygpLnBsYXlFdmVudCk7CiAgICAgICAgICAgICBzY2hlZHVsZU5vdGlmeUFib3V0UGxheWlu
ZygpOwotICAgICAgICB9IGVsc2UgaWYgKHN1Y2Nlc3MudmFsdWUoKSA9PSBNZWRpYVBsYXliYWNr
RGVuaWFsUmVhc29uOjpVc2VyR2VzdHVyZVJlcXVpcmVkKQorICAgICAgICB9IGVsc2UgaWYgKHN1
Y2Nlc3MudmFsdWUoKSA9PSBNZWRpYVBsYXliYWNrRGVuaWFsUmVhc29uOjpVc2VyR2VzdHVyZVJl
cXVpcmVkKSB7CiAgICAgICAgICAgICBtX3ByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJH
ZXN0dXJlID0gdHJ1ZTsKIAorICAgICAgICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBkb2N1bWVudCgp
LnBhZ2UoKSkKKyAgICAgICAgICAgICAgICBwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5oYW5kbGVB
dXRvcGxheUV2ZW50KERpZFByZXZlbnRNZWRpYUZyb21QbGF5aW5nKTsKKyAgICAgICAgfQorCiAg
ICAgICAgIHNob3VsZFVwZGF0ZURpc3BsYXlTdGF0ZSA9IHRydWU7CiAgICAgfQogCkBAIC0zMDk5
LDggKzMxMDMsMTIgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5KERPTVByb21pc2U8dm9p
ZD4mJiBwcm9taXNlKQogCiAgICAgYXV0byBzdWNjZXNzID0gbV9tZWRpYVNlc3Npb24tPnBsYXli
YWNrUGVybWl0dGVkKCp0aGlzKTsKICAgICBpZiAoIXN1Y2Nlc3MpIHsKLSAgICAgICAgaWYgKHN1
Y2Nlc3MudmFsdWUoKSA9PSBNZWRpYVBsYXliYWNrRGVuaWFsUmVhc29uOjpVc2VyR2VzdHVyZVJl
cXVpcmVkKQorICAgICAgICBpZiAoc3VjY2Vzcy52YWx1ZSgpID09IE1lZGlhUGxheWJhY2tEZW5p
YWxSZWFzb246OlVzZXJHZXN0dXJlUmVxdWlyZWQpIHsKICAgICAgICAgICAgIG1fcHJldmVudGVk
RnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1cmUgPSB0cnVlOworCisgICAgICAgICAgICBpZiAo
UGFnZSogcGFnZSA9IGRvY3VtZW50KCkucGFnZSgpKQorICAgICAgICAgICAgICAgIHBhZ2UtPmNo
cm9tZSgpLmNsaWVudCgpLmhhbmRsZUF1dG9wbGF5RXZlbnQoRGlkUHJldmVudE1lZGlhRnJvbVBs
YXlpbmcpOworICAgICAgICB9CiAgICAgICAgIHByb21pc2UucmVqZWN0KE5vdEFsbG93ZWRFcnJv
cik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0zMTI3LDggKzMxMzUsMTIgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjpwbGF5KCkKIAogICAgIGF1dG8gc3VjY2VzcyA9IG1fbWVkaWFTZXNz
aW9uLT5wbGF5YmFja1Blcm1pdHRlZCgqdGhpcyk7CiAgICAgaWYgKCFzdWNjZXNzKSB7Ci0gICAg
ICAgIGlmIChzdWNjZXNzLnZhbHVlKCkgPT0gTWVkaWFQbGF5YmFja0RlbmlhbFJlYXNvbjo6VXNl
ckdlc3R1cmVSZXF1aXJlZCkKKyAgICAgICAgaWYgKHN1Y2Nlc3MudmFsdWUoKSA9PSBNZWRpYVBs
YXliYWNrRGVuaWFsUmVhc29uOjpVc2VyR2VzdHVyZVJlcXVpcmVkKSB7CiAgICAgICAgICAgICBt
X3ByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0dXJlID0gdHJ1ZTsKKworICAgICAg
ICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBkb2N1bWVudCgpLnBhZ2UoKSkKKyAgICAgICAgICAgICAg
ICBwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5oYW5kbGVBdXRvcGxheUV2ZW50KERpZFByZXZlbnRN
ZWRpYUZyb21QbGF5aW5nKTsKKyAgICAgICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQogICAg
IGlmIChTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpKQpA
QCAtMzE5Nyw3ICszMjA5LDcgQEAgYm9vbCBIVE1MTWVkaWFFbGVtZW50OjpwbGF5SW50ZXJuYWwo
KQogCiAgICAgaWYgKFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1l
ZGlhKCkgJiYgbV9wcmV2ZW50ZWRGcm9tUGxheWluZ1dpdGhvdXRVc2VyR2VzdHVyZSkgewogICAg
ICAgICBpZiAoUGFnZSogcGFnZSA9IGRvY3VtZW50KCkucGFnZSgpKQotICAgICAgICAgICAgcGFn
ZS0+Y2hyb21lKCkuY2xpZW50KCkuZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRo
b3V0VXNlckdlc3R1cmUoKTsKKyAgICAgICAgICAgIHBhZ2UtPmNocm9tZSgpLmNsaWVudCgpLmhh
bmRsZUF1dG9wbGF5RXZlbnQoRGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmcpOwogICAg
ICAgICBtX3ByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0dXJlID0gZmFsc2U7CiAg
ICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0F1dG9wbGF5RXZlbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQXV0b3BsYXlFdmVudC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNhOGM2Yzcw
YzgwMGJmMTFjZjkzMmE3YjEzMWI5Y2U2N2NmNGE3ZDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0F1dG9wbGF5RXZlbnQuaApAQCAtMCwwICsxLDM2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworZW51bSB7CisgICAgRGlkUHJldmVudE1lZGlhRnJvbVBsYXlp
bmcsCisgICAgRGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmcsCit9OwordHlwZWRlZiB1
aW50MzJfdCBBdXRvcGxheUV2ZW50OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9DaHJvbWVDbGllbnQuaAppbmRleCAxYTQyOThjNTAzY2JmNTY3NzdjMzRkYTZiOTFhMjQy
Mjk1YTQ5NmE0Li5iMDgwYTk1ODk1OWU0NTY1Y2YwMmM3ZjQwODA3ZjhjNDQwMmYwMWY3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTIyLDYgKzIyLDcgQEAKICNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSAiQVhPYmplY3RDYWNoZS5oIgorI2luY2x1ZGUgIkF1dG9wbGF5RXZlbnQu
aCIKICNpbmNsdWRlICJDdXJzb3IuaCIKICNpbmNsdWRlICJEYXRhYmFzZURldGFpbHMuaCIKICNp
bmNsdWRlICJEaXNwbGF5UmVmcmVzaE1vbml0b3IuaCIKQEAgLTQyMCw3ICs0MjEsNyBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCBib29sIHNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhj
b25zdCBGcmFtZVZpZXcmKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAgICAgdmlydHVhbCB2
b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFn
cywgdWludDY0X3QpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRQbGF5TWVkaWFQcmV2ZW50ZWRG
cm9tUGxheWluZ1dpdGhvdXRVc2VyR2VzdHVyZSgpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBoYW5k
bGVBdXRvcGxheUV2ZW50KEF1dG9wbGF5RXZlbnQpIHsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NF
U1NJT04pCiAgICAgdmlydHVhbCB2b2lkIGhhc01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVs
ZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9BUElVSUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9B
UElVSUNsaWVudC5oCmluZGV4IDQ0YTNlMjJlZmZlMmQ3ZTA0NGRmZDE4YTUxYWYxMDQxNmFkM2Vh
YjguLjM3ZWI3MmQ5NDc3MzNkN2RlZGFmYThmNGE4MjZiZTU2MDJiYWI4M2EgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJVUlDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVVJQ2xpZW50LmgKQEAgLTE1Miw3ICsxNTIsNyBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGlzUGxheWluZ0F1ZGlvRGlkQ2hhbmdlKFdlYktpdDo6
V2ViUGFnZVByb3h5JikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZEJlZ2luQ2FwdHVyZVNlc3Np
b24oKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkRW5kQ2FwdHVyZVNlc3Npb24oKSB7IH0KLSAg
ICB2aXJ0dWFsIHZvaWQgZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRob3V0VXNl
ckdlc3R1cmUoV2ViS2l0OjpXZWJQYWdlUHJveHkmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaGFu
ZGxlQXV0b3BsYXlFdmVudChXZWJLaXQ6OldlYlBhZ2VQcm94eSYsIFdlYkNvcmU6OkF1dG9wbGF5
RXZlbnQpIHsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NFU1NJT04pCiAgICAgdmlydHVhbCB2b2lk
IG1lZGlhU2Vzc2lvbk1ldGFkYXRhRGlkQ2hhbmdlKFdlYktpdDo6V2ViUGFnZVByb3h5JiwgV2Vi
S2l0OjpXZWJNZWRpYVNlc3Npb25NZXRhZGF0YSopIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tQYWdlLmNwcAppbmRleCA1NjJiYzRhMWEzYzBiMmZiZGQwYmE1Mzk0NWY0MmU0
NTdhNTcwNzM1Li5jNWJhNGY1MmIxYWE3ZTU4ZWE5OWU3OGFmNDMwZDdkZWQ1MDVlNGFjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcApAQCAtMjI0MiwxMiArMjI0
MiwxMiBAQCB2b2lkIFdLUGFnZVNldFBhZ2VVSUNsaWVudChXS1BhZ2VSZWYgcGFnZVJlZiwgY29u
c3QgV0tQYWdlVUlDbGllbnRCYXNlKiB3a0NsaWVudAogICAgICAgICB9CiAjZW5kaWYKIAotICAg
ICAgICB2b2lkIGRpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0
dXJlKFdlYlBhZ2VQcm94eSYgcGFnZSkgb3ZlcnJpZGUKKyAgICAgICAgdm9pZCBoYW5kbGVBdXRv
cGxheUV2ZW50KFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViQ29yZTo6QXV0b3BsYXlFdmVudCBldmVu
dCkgb3ZlcnJpZGUKICAgICAgICAgewotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC5kaWRQbGF5
TWVkaWFQcmV2ZW50ZWRGcm9tUGxheWluZ1dpdGhvdXRVc2VyR2VzdHVyZSkKKyAgICAgICAgICAg
IGlmICghbV9jbGllbnQuaGFuZGxlQXV0b3BsYXlFdmVudCkKICAgICAgICAgICAgICAgICByZXR1
cm47CiAKLSAgICAgICAgICAgIG1fY2xpZW50LmRpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21QbGF5
aW5nV2l0aG91dFVzZXJHZXN0dXJlKHRvQVBJKCZwYWdlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJ
bmZvKTsKKyAgICAgICAgICAgIG1fY2xpZW50LmhhbmRsZUF1dG9wbGF5RXZlbnQodG9BUEkoJnBh
Z2UpLCBldmVudCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKICAgICAgICAgfQogICAgIH07
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VVSUNs
aWVudC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVVJQ2xpZW50LmgK
aW5kZXggMjFmNTFhODgyMzAzNzE2ZDI5ZDI5Njk4ZTkxNGIzYzkxYmEyMGQwYy4uNTgyZjFiOTVl
ZGNhNzMyMzkwNGIwZTY5NjAwZTkzOGU5YmJlNmIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVVJQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUGFnZVVJQ2xpZW50LmgKQEAgLTQ4LDYgKzQ4LDEyIEBAIGVudW0g
ewogfTsKIHR5cGVkZWYgdWludDMyX3QgV0tQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbjsKIAor
ZW51bSB7CisgICAga1dLQXV0b3BsYXlFdmVudERpZFByZXZlbnRGcm9tQXV0b3BsYXlpbmcsCisg
ICAga1dLQXV0b3BsYXlFdmVudERpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21BdXRvcGxheWluZywK
K307Cit0eXBlZGVmIHVpbnQzMl90IFdLQXV0b3BsYXlFdmVudDsKKwogV0tfRVhQT1JUIFdLVHlw
ZUlEIFdLUGFnZVJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbFJlc3VsdExpc3RlbmVyR2V0VHlw
ZUlEKCk7CiBXS19FWFBPUlQgdm9pZCBXS1BhZ2VSdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWxS
ZXN1bHRMaXN0ZW5lckNhbGwoV0tQYWdlUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsUmVzdWx0
TGlzdGVuZXJSZWYgbGlzdGVuZXIsIGJvb2wgcmVzdWx0KTsKIApAQCAtMTAyLDcgKzEwOCw3IEBA
IHR5cGVkZWYgdm9pZCAoKldLUGFnZURlY2lkZVBvbGljeUZvclVzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0Q2FsbGJhY2spKFdLUGFnZVJlCiB0eXBlZGVmIHZvaWQgKCpXS0NoZWNrVXNlck1lZGlh
UGVybWlzc2lvbkNhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgV0tGcmFtZVJlZiBmcmFtZSwgV0tT
ZWN1cml0eU9yaWdpblJlZiB1c2VyTWVkaWFEb2N1bWVudE9yaWdpbiwgV0tTZWN1cml0eU9yaWdp
blJlZiB0b3BMZXZlbERvY3VtZW50T3JpZ2luLCBXS1VzZXJNZWRpYVBlcm1pc3Npb25DaGVja1Jl
ZiBkZXZpY2VzUmVxdWVzdCwgY29uc3Qgdm9pZCAqY2xpZW50SW5mbyk7CiB0eXBlZGVmIHZvaWQg
KCpXS1BhZ2VEaWRDbGlja0F1dG9GaWxsQnV0dG9uQ2FsbGJhY2spKFdLUGFnZVJlZiBwYWdlLCBX
S1R5cGVSZWYgdXNlckRhdGEsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogdHlwZWRlZiB2b2lk
ICgqV0tQYWdlTWVkaWFTZXNzaW9uTWV0YWRhdGFEaWRDaGFuZ2VDYWxsYmFjaykoV0tQYWdlUmVm
IHBhZ2UsIFdLTWVkaWFTZXNzaW9uTWV0YWRhdGFSZWYgbWV0YWRhdGEsIGNvbnN0IHZvaWQqIGNs
aWVudEluZm8pOwotdHlwZWRlZiB2b2lkICgqV0tEaWRQbGF5TWVkaWFQcmV2ZW50ZWRGcm9tUGxh
eWluZ1dpdGhvdXRVc2VyR2VzdHVyZSkoV0tQYWdlUmVmIHBhZ2UsIGNvbnN0IHZvaWQqIGNsaWVu
dEluZm8pOwordHlwZWRlZiB2b2lkICgqV0tIYW5kbGVBdXRvcGxheUV2ZW50Q2FsbGJhY2spKFdL
UGFnZVJlZiBwYWdlLCBXS0F1dG9wbGF5RXZlbnQgZXZlbnQsIGNvbnN0IHZvaWQqIGNsaWVudElu
Zm8pOwogdHlwZWRlZiB2b2lkICgqV0tGdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmVDYWxsYmFj
aykoV0tQYWdlUmVmIHBhZ2UsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOwogCiB0eXBlZGVmIHZv
aWQgKCpXS1JlcXVlc3RQb2ludGVyTG9ja0NhbGxiYWNrKShXS1BhZ2VSZWYgcGFnZSwgY29uc3Qg
dm9pZCogY2xpZW50SW5mbyk7CkBAIC04MTYsNyArODIyLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgV0tQ
YWdlVUlDbGllbnRWOSB7CiAgICAgV0tEaWRMb3NlUG9pbnRlckxvY2tDYWxsYmFjayAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWRMb3NlUG9pbnRlckxvY2s7CiAKICAg
ICAvLyBWZXJzaW9uIDkuCi0gICAgV0tEaWRQbGF5TWVkaWFQcmV2ZW50ZWRGcm9tUGxheWluZ1dp
dGhvdXRVc2VyR2VzdHVyZSAgICAgICAgICAgICAgICBkaWRQbGF5TWVkaWFQcmV2ZW50ZWRGcm9t
UGxheWluZ1dpdGhvdXRVc2VyR2VzdHVyZTsKKyAgICBXS0hhbmRsZUF1dG9wbGF5RXZlbnRDYWxs
YmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUF1dG9wbGF5
RXZlbnQ7CiB9IFdLUGFnZVVJQ2xpZW50Vjk7CiAgICAgCiAjaWZkZWYgX19jcGx1c3BsdXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYmU0ZWQzZGZjNmFk
MWIwMmM0NjYwN2JkZWU5MTY1YmExYWE3Mjc3ZS4uOGMzM2NkMjA5NjY4ODhhZmFhN2RiMTI4MDUy
NzYxNDBmZDkwNjA4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHAKQEAgLTY1MjgsOSArNjUyOCw5IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojpmb2N1c2VkQ29udGVu
dE1lZGlhRWxlbWVudERpZENoYW5nZSh1aW50NjRfdCBlbGVtZW50SUQpCiB9CiAjZW5kaWYKIAot
dm9pZCBXZWJQYWdlUHJveHk6OmRpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91
dFVzZXJHZXN0dXJlKCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVBdXRvcGxheUV2ZW50KEF1
dG9wbGF5RXZlbnQgZXZlbnQpCiB7Ci0gICAgbV91aUNsaWVudC0+ZGlkUGxheU1lZGlhUHJldmVu
dGVkRnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1cmUoKnRoaXMpOworICAgIG1fdWlDbGllbnQt
PmhhbmRsZUF1dG9wbGF5RXZlbnQoKnRoaXMsIHN0YXRpY19jYXN0PFdlYkNvcmU6OkF1dG9wbGF5
RXZlbnQ+KGV2ZW50KSk7CiB9CiAKICNpZiBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggZTVhZDgyMGIyNmQwNTBmNDhhOWJhZTE2MTM2OWJl
Y2RkMTI5YmZhOS4uZjI1ZTM0ZjRhNWNjYjA5N2I3NGExMDk4NGExYjVmYTJhOWMwZjkzNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtNjIsNiArNjIsNyBAQAog
I2luY2x1ZGUgIldlYlByb2Nlc3NMaWZldGltZVRyYWNrZXIuaCIKICNpbmNsdWRlICJXZWJzaXRl
UG9saWNpZXMuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0FjdGl2aXR5U3RhdGUuaD4KKyNpbmNsdWRl
IDxXZWJDb3JlL0F1dG9wbGF5RXZlbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0NvbG9yLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9EcmFnQWN0aW9ucy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRXZlbnRU
cmFja2luZ1JlZ2lvbnMuaD4KQEAgLTEwNjIsNyArMTA2Myw3IEBAIHB1YmxpYzoKICAgICBib29s
IGhhc0FjdGl2ZUF1ZGlvU3RyZWFtKCkgY29uc3QgeyByZXR1cm4gbV9tZWRpYVN0YXRlICYgV2Vi
Q29yZTo6TWVkaWFQcm9kdWNlcjo6SGFzQWN0aXZlQXVkaW9DYXB0dXJlRGV2aWNlOyB9CiAgICAg
Ym9vbCBoYXNBY3RpdmVWaWRlb1N0cmVhbSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVkaWFTdGF0ZSAm
IFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Okhhc0FjdGl2ZVZpZGVvQ2FwdHVyZURldmljZTsgfQog
ICAgIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncyBtZWRpYVN0YXRlRmxh
Z3MoKSBjb25zdCB7IHJldHVybiBtX21lZGlhU3RhdGU7IH0KLSAgICB2b2lkIGRpZFBsYXlNZWRp
YVByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0dXJlKCk7CisgICAgdm9pZCBoYW5k
bGVBdXRvcGxheUV2ZW50KFdlYkNvcmU6OkF1dG9wbGF5RXZlbnQpOwogCiAjaWYgUExBVEZPUk0o
TUFDKQogICAgIHZvaWQgdmlkZW9Db250cm9sc01hbmFnZXJEaWRDaGFuZ2UoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDVh
MTRhYzhjNjU4MmQzNGU0ZjE2MjNiOWUwOTE4NjM0OWUxNWE4ODYuLjk5M2IxZGU5NmExYjUzOWFj
YTkyNjc0MDFlNDkyZDc3MzQ0YjU5NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtNDQwLDcgKzQ0MCw3IEBAIG1lc3NhZ2Vz
IC0+IFdlYlBhZ2VQcm94eSB7CiAjZW5kaWYKIAogICAgIElzUGxheWluZ01lZGlhRGlkQ2hhbmdl
KHVuc2lnbmVkIHN0YXRlLCB1aW50NjRfdCBzb3VyY2VFbGVtZW50SUQpCi0gICAgRGlkUGxheU1l
ZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1cmUoKQorICAgIEhhbmRsZUF1
dG9wbGF5RXZlbnQodWludDMyX3QgZXZlbnQpCiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikK
ICAgICBIYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50c0RpZENoYW5nZShib29s
IHN0YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDA5MTI4MDg5OTNmNGQ1Mjc4ZGQ4
OGI5MGUwMmJlYzkyOTE5NDJlZDIuLjZmYjJjNzYyZjQ0MzM2MmQyY2QyOTMxYjZkM2JhNDBiNzhk
ZWEyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTEwODMsOSArMTA4Myw5IEBAIHZv
aWQgV2ViQ2hyb21lQ2xpZW50Ojppc1BsYXlpbmdNZWRpYURpZENoYW5nZShNZWRpYVByb2R1Y2Vy
OjpNZWRpYVN0YXRlRmxhZ3Mgc3RhCiAgICAgbV9wYWdlLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6SXNQbGF5aW5nTWVkaWFEaWRDaGFuZ2Uoc3RhdGUsIHNvdXJjZUVsZW1lbnRJRCkpOwog
fQogCi12b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlp
bmdXaXRob3V0VXNlckdlc3R1cmUoKQordm9pZCBXZWJDaHJvbWVDbGllbnQ6OmhhbmRsZUF1dG9w
bGF5RXZlbnQoQXV0b3BsYXlFdmVudCBldmVudCkKIHsKLSAgICBtX3BhZ2Uuc2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpEaWRQbGF5TWVkaWFQcmV2ZW50ZWRGcm9tUGxheWluZ1dpdGhvdXRV
c2VyR2VzdHVyZSgpKTsKKyAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpI
YW5kbGVBdXRvcGxheUV2ZW50KGV2ZW50KSk7CiB9CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lP
TikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oCmluZGV4IGEyZDVlN2NjNGJmMDgzYTQwYjJiNWY3NWM1YTQ3
OGY3ZTA1ODgzMzUuLmE1MTRiMjk5NDg4ODQyYmNmOTI0NTg5MTNiMDM3OWIzZWFmOWViYWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMjk3LDcgKzI5Nyw3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZVZpZXcoY29uc3QgV2ViQ29yZTo6RnJhbWVW
aWV3JikgY29uc3QgZmluYWw7CiAKICAgICB2b2lkIGlzUGxheWluZ01lZGlhRGlkQ2hhbmdlKFdl
YkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncywgdWludDY0X3QpIGZpbmFsOwot
ICAgIHZvaWQgZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1
cmUoKSBmaW5hbDsKKyAgICB2b2lkIGhhbmRsZUF1dG9wbGF5RXZlbnQoV2ViQ29yZTo6QXV0b3Bs
YXlFdmVudCkgZmluYWw7CiAKICNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTikKICAgICB2b2lkIGhh
c01lZGlhU2Vzc2lvbldpdGhBY3RpdmVNZWRpYUVsZW1lbnRzRGlkQ2hhbmdlKGJvb2wpIGZpbmFs
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDAy
NzdmMzM4ZjczZTlhNGZlOTlhOTQyZmFmZjNmNzZhZmEwMDJmY2EuLjkxNTc3Mjk2NjE4M2I4NGI4
MGMwNjkyNTI2NjhmOTQzOGRiMDkyNzYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysg
Yi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNy0wMi0yNCAgTWF0dCBSYWpj
YSAgPG1yYWpjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTWVkaWE6IG5vdGlmeSBjbGllbnRzIHdo
ZW4gYXV0b3BsYXkgaXMgZGVuaWVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjg4NDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0MkNvY29hL1dlYnNpdGVQ
b2xpY2llcy5tbToKKyAgICAgICAgKGhhbmRsZUF1dG9wbGF5RXZlbnQpOgorICAgICAgICAocnVu
VW50aWxSZWNlaXZlc0F1dG9wbGF5RXZlbnQpOgorICAgICAgICAoVEVTVCk6IEFkZGVkLgorCiAy
MDE3LTAyLTIzICBNYXR0IFJhamNhICA8bXJhamNhQGFwcGxlLmNvbT4KIAogICAgICAgICBBUEkg
dGVzdCBXZWJLaXQyLldlYnNpdGVQb2xpY2llc1BsYXlBZnRlclByZXZlbnRlZEF1dG9wbGF5IGlz
IHRpbWluZyBvdXQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
MkNvY29hL1dlYnNpdGVQb2xpY2llcy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0MkNvY29hL1dlYnNpdGVQb2xpY2llcy5tbQppbmRleCBiNzAwNzQzZjY5YjJhNThiMTllNWVh
MDg2Yzg2NmQwNTczYmIxNjg4Li41MjU5OGRmMThmYjdmOTE5ZDRiNDgxNTJhOTVhMDg5MGM4MWQx
OWE5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDJDb2NvYS9X
ZWJzaXRlUG9saWNpZXMubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
Q29jb2EvV2Vic2l0ZVBvbGljaWVzLm1tCkBAIC00NSw2ICs0NSw3IEBAIEBlbmQKIAogc3RhdGlj
IGJvb2wgZG9uZUNvbXBpbGluZzsKIHN0YXRpYyBib29sIHJlY2VpdmVkQWxlcnQ7CitzdGF0aWMg
c3RkOjpvcHRpb25hbDxXS0F1dG9wbGF5RXZlbnQ+IHJlY2VpdmVkQXV0b3BsYXlFdmVudDsKIHN0
YXRpYyBzaXplX3QgYWxlcnRDb3VudDsKIAogQGludGVyZmFjZSBDb250ZW50QmxvY2tpbmdXZWJz
aXRlUG9saWNpZXNEZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0ZSwgV0tV
SURlbGVnYXRlPgpAQCAtMjQ3LDkgKzI0OCwxNSBAQCBURVNUKFdlYktpdDIsIFdlYnNpdGVQb2xp
Y2llc0F1dG9wbGF5RW5hYmxlZCkKIH0KIAogI2lmIFBMQVRGT1JNKE1BQykKLXN0YXRpYyB2b2lk
IGRpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJHZXN0dXJlKFdLUGFn
ZVJlZiBwYWdlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQorc3RhdGljIHZvaWQgaGFuZGxlQXV0
b3BsYXlFdmVudChXS1BhZ2VSZWYgcGFnZSwgV0tBdXRvcGxheUV2ZW50IGV2ZW50LCBjb25zdCB2
b2lkKiBjbGllbnRJbmZvKQogewotICAgIHJlY2VpdmVkQWxlcnQgPSB0cnVlOworICAgIHJlY2Vp
dmVkQXV0b3BsYXlFdmVudCA9IGV2ZW50OworfQorCitzdGF0aWMgdm9pZCBydW5VbnRpbFJlY2Vp
dmVzQXV0b3BsYXlFdmVudChXS0F1dG9wbGF5RXZlbnQgZXZlbnQpCit7CisgICAgd2hpbGUgKCFy
ZWNlaXZlZEF1dG9wbGF5RXZlbnQgfHwgKnJlY2VpdmVkQXV0b3BsYXlFdmVudCAhPSBldmVudCkK
KyAgICAgICAgQ0ZSdW5Mb29wUnVuSW5Nb2RlKGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSwgMC4xLCB0
cnVlKTsKIH0KIAogVEVTVChXZWJLaXQyLCBXZWJzaXRlUG9saWNpZXNQbGF5QWZ0ZXJQcmV2ZW50
ZWRBdXRvcGxheSkKQEAgLTI2NywzMCArMjc0LDM0IEBAIFRFU1QoV2ViS2l0MiwgV2Vic2l0ZVBv
bGljaWVzUGxheUFmdGVyUHJldmVudGVkQXV0b3BsYXkpCiAgICAgbWVtc2V0KCZ1aUNsaWVudCwg
MCwgc2l6ZW9mKHVpQ2xpZW50KSk7CiAKICAgICB1aUNsaWVudC5iYXNlLnZlcnNpb24gPSA5Owot
ICAgIHVpQ2xpZW50LmRpZFBsYXlNZWRpYVByZXZlbnRlZEZyb21QbGF5aW5nV2l0aG91dFVzZXJH
ZXN0dXJlID0gZGlkUGxheU1lZGlhUHJldmVudGVkRnJvbVBsYXlpbmdXaXRob3V0VXNlckdlc3R1
cmU7CisgICAgdWlDbGllbnQuaGFuZGxlQXV0b3BsYXlFdmVudCA9IGhhbmRsZUF1dG9wbGF5RXZl
bnQ7CiAKICAgICBXS1BhZ2VTZXRQYWdlVUlDbGllbnQoW3dlYlZpZXcgX3BhZ2VGb3JUZXN0aW5n
XSwgJnVpQ2xpZW50LmJhc2UpOwogICAgIE5TUG9pbnQgcGxheUJ1dHRvbkNsaWNrUG9pbnQgPSBO
U01ha2VQb2ludCgyMCwgMjU2KTsKIAotICAgIHJlY2VpdmVkQWxlcnQgPSBmYWxzZTsKKyAgICBy
ZWNlaXZlZEF1dG9wbGF5RXZlbnQgPSBzdGQ6Om51bGxvcHQ7CiAgICAgTlNVUkxSZXF1ZXN0ICpq
c1BsYXlSZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbW05TQnVuZGxlIG1h
aW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAianMtcGxheS13aXRoLWNvbnRyb2xzIiB3aXRoRXh0
ZW5zaW9uOkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXV07
CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6anNQbGF5UmVxdWVzdF07CiAgICAgW3dlYlZpZXcg
d2FpdEZvck1lc3NhZ2U6QCJsb2FkZWQiXTsKKyAgICBydW5VbnRpbFJlY2VpdmVzQXV0b3BsYXlF
dmVudChrV0tBdXRvcGxheUV2ZW50RGlkUHJldmVudEZyb21BdXRvcGxheWluZyk7CisKICAgICBb
d2ViVmlldyBtb3VzZURvd25BdFBvaW50OnBsYXlCdXR0b25DbGlja1BvaW50IHNpbXVsYXRlUHJl
c3N1cmU6Tk9dOwogICAgIFt3ZWJWaWV3IG1vdXNlVXBBdFBvaW50OnBsYXlCdXR0b25DbGlja1Bv
aW50XTsKLSAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJnJlY2VpdmVkQWxlcnQpOworICAg
IHJ1blVudGlsUmVjZWl2ZXNBdXRvcGxheUV2ZW50KGtXS0F1dG9wbGF5RXZlbnREaWRQbGF5TWVk
aWFQcmV2ZW50ZWRGcm9tQXV0b3BsYXlpbmcpOwogCi0gICAgcmVjZWl2ZWRBbGVydCA9IGZhbHNl
OworICAgIHJlY2VpdmVkQXV0b3BsYXlFdmVudCA9IHN0ZDo6bnVsbG9wdDsKICAgICBbd2ViVmll
dyBsb2FkSFRNTFN0cmluZzpAIiIgYmFzZVVSTDpuaWxdOwogCiAgICAgTlNVUkxSZXF1ZXN0ICph
dXRvcGxheVJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltbTlNCdW5kbGUg
bWFpbkJ1bmRsZV0gVVJMRm9yUmVzb3VyY2U6QCJhdXRvcGxheS13aXRoLWNvbnRyb2xzIiB3aXRo
RXh0ZW5zaW9uOkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMi
XV07CiAgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6YXV0b3BsYXlSZXF1ZXN0XTsKICAgICBbd2Vi
VmlldyB3YWl0Rm9yTWVzc2FnZTpAImxvYWRlZCJdOworICAgIHJ1blVudGlsUmVjZWl2ZXNBdXRv
cGxheUV2ZW50KGtXS0F1dG9wbGF5RXZlbnREaWRQcmV2ZW50RnJvbUF1dG9wbGF5aW5nKTsKKwog
ICAgIFt3ZWJWaWV3IG1vdXNlRG93bkF0UG9pbnQ6cGxheUJ1dHRvbkNsaWNrUG9pbnQgc2ltdWxh
dGVQcmVzc3VyZTpOT107CiAgICAgW3dlYlZpZXcgbW91c2VVcEF0UG9pbnQ6cGxheUJ1dHRvbkNs
aWNrUG9pbnRdOwotICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRBbGVydCk7
CisgICAgcnVuVW50aWxSZWNlaXZlc0F1dG9wbGF5RXZlbnQoa1dLQXV0b3BsYXlFdmVudERpZFBs
YXlNZWRpYVByZXZlbnRlZEZyb21BdXRvcGxheWluZyk7CiAKLSAgICByZWNlaXZlZEFsZXJ0ID0g
ZmFsc2U7CisgICAgcmVjZWl2ZWRBdXRvcGxheUV2ZW50ID0gc3RkOjpudWxsb3B0OwogICAgIFt3
ZWJWaWV3IGxvYWRIVE1MU3RyaW5nOkAiIiBiYXNlVVJMOm5pbF07CiAKICAgICBOU1VSTFJlcXVl
c3QgKm5vQXV0b3BsYXlSZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbW05T
QnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAibm8tYXV0b3BsYXktd2l0aC1jb250
cm9scyIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEku
cmVzb3VyY2VzIl1dOwpAQCAtMjk5LDcgKzMxMCw3IEBAIFRFU1QoV2ViS2l0MiwgV2Vic2l0ZVBv
bGljaWVzUGxheUFmdGVyUHJldmVudGVkQXV0b3BsYXkpCiAgICAgW3dlYlZpZXcgbW91c2VEb3du
QXRQb2ludDpwbGF5QnV0dG9uQ2xpY2tQb2ludCBzaW11bGF0ZVByZXNzdXJlOk5PXTsKICAgICBb
d2ViVmlldyBtb3VzZVVwQXRQb2ludDpwbGF5QnV0dG9uQ2xpY2tQb2ludF07CiAgICAgW3dlYlZp
ZXcgd2FpdEZvck1lc3NhZ2U6QCJwbGF5ZWQiXTsKLSAgICBBU1NFUlRfRkFMU0UocmVjZWl2ZWRB
bGVydCk7CisgICAgQVNTRVJUX1RSVUUocmVjZWl2ZWRBdXRvcGxheUV2ZW50ID09IHN0ZDo6bnVs
bG9wdCk7CiB9CiAjZW5kaWYKIAo=
</data>
<flag name="review"
          id="324393"
          type_id="1"
          status="+"
          setter="achristensen"
    />
          </attachment>
      

    </bug>

</bugzilla>