<?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>238837</bug_id>
          
          <creation_ts>2022-04-05 14:26:49 -0700</creation_ts>
          <short_desc>[WebXR] Add a new enum type to represent session features</short_desc>
          <delta_ts>2022-04-05 22:32:16 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ada Chan">adachan</reporter>
          <assigned_to name="Ada Chan">adachan</assigned_to>
          <cc>dino</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1858575</commentid>
    <comment_count>0</comment_count>
    <who name="Ada Chan">adachan</who>
    <bug_when>2022-04-05 14:26:49 -0700</bug_when>
    <thetext>[WebXR] Add a new enum type to represent session features</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858580</commentid>
    <comment_count>1</comment_count>
    <who name="Ada Chan">adachan</who>
    <bug_when>2022-04-05 14:33:06 -0700</bug_when>
    <thetext>Currently the implementation only supports ReferenceSpaceTypes as possible session features. Add a new enum type to represent session features, and includes &quot;hand-tracking&quot; in session feature parsing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858641</commentid>
    <comment_count>2</comment_count>
      <attachid>456763</attachid>
    <who name="Ada Chan">adachan</who>
    <bug_when>2022-04-05 16:23:52 -0700</bug_when>
    <thetext>Created attachment 456763
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858695</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-05 22:31:16 -0700</bug_when>
    <thetext>Committed r292449 (249300@main): &lt;https://commits.webkit.org/249300@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 456763.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1858696</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-04-05 22:32:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/91335606&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>456763</attachid>
            <date>2022-04-05 16:23:52 -0700</date>
            <delta_ts>2022-04-05 22:31:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-238837-20220405162351.patch</filename>
            <type>text/plain</type>
            <size>37576</size>
            <attacher name="Ada Chan">adachan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyMzU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWFlYTFhMzg3ODY5YzYw
ZDZlNzY0ZjI4NzUxMDQxNzBlOGVkNjkxOS4uNzcwZmU5NTEwOGUyNTJiYTRiYzI3ODQyNmMwMWMz
ZDE5MzY2ZmMwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDIyLTA0LTA1ICBBZGEg
Q2hhbiAgPGFkYWNoYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJYUl0gQWRkIGEgbmV3IGVu
dW0gdHlwZSB0byByZXByZXNlbnQgc2Vzc2lvbiBmZWF0dXJlcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM4ODM3CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogaHR0cC93cHQvd2VieHIveHJEZXZp
Y2VfcmVxdWVzdFNlc3Npb25faGFuZF90cmFja2luZ19mZWF0dXJlLmh0dHBzLmh0bWwKKworICAg
ICAgICBBZGQgYSBuZXcgZW51bSB0eXBlLCBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZSwgdG8g
cmVwcmVzZW50IHNlc3Npb24gZmVhdHVyZXMuCisgICAgICAgIEl0IGluY2x1ZGVzIHRoZSBSZWZl
cmVuY2VTcGFjZVR5cGVzIGFuZCB0aGUgaGFuZC10cmFja2luZyBmZWF0dXJlIGZvciBub3cuCisK
KyAgICAgICAgRml4IHRoZSBhbGdvcml0aG0gdG8gcmVzb2x2ZSB0aGUgcmVxdWVzdGVkIGZlYXR1
cmVzIHRvIHJlY29nbml6ZSBoYW5kLXRyYWNraW5nCisgICAgICAgIGFzIGEgZmVhdHVyZSB0aGF0
IHJlcXVpcmVzIGV4cGxpY2l0IGNvbnNlbnQuCisKKyAgICAgICAgKiBNb2R1bGVzL3dlYnhyL1dl
YlhSU2Vzc2lvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJYUlNlc3Npb246OnJlZmVyZW5j
ZVNwYWNlSXNTdXBwb3J0ZWQgY29uc3QpOgorICAgICAgICBDb252ZXJ0IHRoZSBYUlJlZmVyZW5j
ZVNwYWNlVHlwZSB0byBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZSBmaXJzdCBiZWZvcmUKKyAg
ICAgICAgY2hlY2tpbmcgYWdhaW5zdCB0aGUgZmVhdHVyZSBsaXN0LgorICAgICAgICAqIE1vZHVs
ZXMvd2VieHIvV2ViWFJTeXN0ZW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViWFJTeXN0ZW06
OmlubGluZVNlc3Npb25SZXF1ZXN0SXNBbGxvd2VkRm9yR2xvYmFsT2JqZWN0IGNvbnN0KToKKyAg
ICAgICAgVXNlIFBsYXRmb3JtWFI6OnBhcnNlU2Vzc2lvbkZlYXR1cmVEZXNjcmlwdG9yKCkgdG8g
cGFyc2UgdGhlIGZlYXR1cmUgc3RyaW5nLgorICAgICAgICAoV2ViQ29yZTo6ZmVhdHVyZVJlcXVp
cmVzRXhwbGljaXRDb25zZW50KToKKyAgICAgICAgUmV0dXJucyB0cnVlIGZvciB0aGUgaGFuZCB0
cmFja2luZyBmZWF0dXJlLgorICAgICAgICAoV2ViQ29yZTo6V2ViWFJTeXN0ZW06OmlzRmVhdHVy
ZVN1cHBvcnRlZCBjb25zdCk6CisgICAgICAgIENoZWNrIHdoZXRoZXIgdGhlIGRldmljZSBzdXBw
b3J0cyB0aGUgZmVhdHVyZS4gRm9yIGhhbmQtdHJhY2tpbmcsIG1ha2Ugc3VyZQorICAgICAgICB0
aGUgaGFuZCBpbnB1dCBtb2R1bGUgc2V0dGluZyBpcyBlbmFibGVkLgorICAgICAgICAoV2ViQ29y
ZTo6V2ViWFJTeXN0ZW06OnJlc29sdmVSZXF1ZXN0ZWRGZWF0dXJlcyBjb25zdCk6CisgICAgICAg
IFVwZGF0ZSB0aGUgc3RyaW5nIGNvbnZlcnNpb24gYmV0d2VlbiBKUyBhbmQgV1RGOjpTdHJpbmcg
bm93IHRoYXQgZmVhdHVyZXMgY2Fubm90CisgICAgICAgIGJlIHBhcnNlZCBhcyBYUlJlZmVyZW5j
ZVNwYWNlVHlwZSBlbnVtLiBJZiB0aGUgZmVhdHVyZSByZXF1aXJlcyBleHBsaWNpdCBjb25zZW50
CisgICAgICAgIGFuZCBpdCdzIG5vdCBhbHJlYWR5IGluIHRoZSBncmFudGVkIGxpc3QsIGFkZCBp
dCB0byBjb25zZW50UmVxdWlyZWQgb3IgY29uc2VudE9wdGlvbmFsCisgICAgICAgIGRlcGVuZGlu
ZyBvbiB3aGV0aGVyIGl0J3Mgc3BlY2lmaWVkIGFzIHJlcXVpcmVkLgorICAgICAgICAoV2ViQ29y
ZTo6V2ViWFJTeXN0ZW06OnJlc29sdmVGZWF0dXJlUGVybWlzc2lvbnMgY29uc3QpOgorICAgICAg
ICBJZiBhIGZlYXR1cmUgaXMgcmVxdWlyZWQgYnV0IG5vdCBnaXZlbiBhIGNsZWFyIHNpZ25hbCBv
ZiB1c2VyIGludGVudCwgdGhlIHNlc3Npb24KKyAgICAgICAgc2hvdWxkIG5vdCBiZSBjcmVhdGVk
LgorICAgICAgICAoV2ViQ29yZTo6V2ViWFJTeXN0ZW06OkR1bW15SW5saW5lRGV2aWNlOjpEdW1t
eUlubGluZURldmljZSk6CisgICAgICAgIFVwZGF0ZWQgdG8gdXNlIFBsYXRmb3JtWFI6OlNlc3Np
b25GZWF0dXJlLgorICAgICAgICAqIE1vZHVsZXMvd2VieHIvV2ViWFJTeXN0ZW0uaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS94ci9QbGF0Zm9ybVhSLmg6CisgICAgICAgIChQbGF0Zm9ybVhSOjpzZXNz
aW9uRmVhdHVyZUZyb21SZWZlcmVuY2VTcGFjZVR5cGUpOgorICAgICAgICAoUGxhdGZvcm1YUjo6
cGFyc2VTZXNzaW9uRmVhdHVyZURlc2NyaXB0b3IpOgorICAgICAgICBQYXJzZSBmZWF0dXJlIHN0
cmluZyB0byByZXR1cm4gUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmUuCisgICAgICAgIChQbGF0
Zm9ybVhSOjpzZXNzaW9uRmVhdHVyZURlc2NyaXB0b3IpOgorICAgICAgICBSZXR1cm4gZmVhdHVy
ZSBzdHJpbmcgZnJvbSBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZS4KKyAgICAgICAgKFBsYXRm
b3JtWFI6OkRldmljZTo6c3VwcG9ydHMgY29uc3QpOgorICAgICAgICBSZWFkIGZyb20gdGhlIG1f
c3VwcG9ydGVkRmVhdHVyZXNNYXAuCisgICAgICAgIChQbGF0Zm9ybVhSOjpEZXZpY2U6OnNldFN1
cHBvcnRlZEZlYXR1cmVzKToKKyAgICAgICAgV3JpdGUgdG8gdGhlIG1fc3VwcG9ydGVkRmVhdHVy
ZXNNYXAuCisgICAgICAgIChQbGF0Zm9ybVhSOjpEZXZpY2U6OnN1cHBvcnRlZEZlYXR1cmVzIGNv
bnN0KToKKyAgICAgICAgUmVhZCBmcm9tIHRoZSBtX3N1cHBvcnRlZEZlYXR1cmVzTWFwLgorICAg
ICAgICAqIHBsYXRmb3JtL3hyL29wZW54ci9QbGF0Zm9ybVhST3BlblhSLmNwcDoKKyAgICAgICAg
KFBsYXRmb3JtWFI6Ok9wZW5YUkRldmljZTo6Y29sbGVjdFN1cHBvcnRlZEZlYXR1cmVzIGNvbnN0
KToKKyAgICAgICAgVXBkYXRlZCB0byB1c2UgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmUuCisg
ICAgICAgICogdGVzdGluZy9XZWJYUlRlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViWFJU
ZXN0OjpzaW11bGF0ZURldmljZUNvbm5lY3Rpb24pOgorICAgICAgICBVcGRhdGVkIHRvIHBhcnNl
IGZlYXR1cmUgc3RyaW5nIHRvIFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlLgorCiAyMDIyLTA0
LTA0ICBNYXR0IFdvb2Ryb3cgIDxtYXR0d29vZHJvd0BhcHBsZS5jb20+CiAKICAgICAgICAgaW50
ZXJzZWN0c1dpdGhBbmNlc3RvciBzaG91bGQgdGFrZSBmcmFnbWVudGVkIGJveGVzIGludG8gYWNj
b3VudC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTUwMTAwMjU5NTY3MmQwMzZhZDhlYjRkZDg0ZmYxOTgwYWRlYjI0
YS4uMDViM2Y0NGEzZTEyM2I2Njk1NDUzMzU1NGVmMWYxMDFmMGZiZTI5MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyNiBAQAorMjAyMi0wNC0wNSAgQWRhIENoYW4gIDxhZGFjaGFuQGFwcGxlLmNvbT4K
KworICAgICAgICBbV2ViWFJdIEFkZCBhIG5ldyBlbnVtIHR5cGUgdG8gcmVwcmVzZW50IHNlc3Np
b24gZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIzODgzNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBhIG5ldyBfV0tYUlNlc3Npb25GZWF0dXJlRmxhZ3MgZW50cnkgZm9yIGhhbmQtdHJh
Y2tpbmcuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAg
KHR5cGVzX3RoYXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFyZWQpOgorICAgICAgICAoaGVhZGVy
c19mb3JfdHlwZSk6CisgICAgICAgICogU2hhcmVkL1hSL1hSRGV2aWNlUHJveHkuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpYUkRldmljZVByb3h5OjpYUkRldmljZVByb3h5KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL0NvY29hL1dLVUlEZWxlZ2F0ZVByaXZhdGUuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQ29jb2EvVUlEZWxlZ2F0ZS5tbToKKyAgICAgICAgKFdlYktpdDo6dG9XS1hSU2Vzc2lv
bkZlYXR1cmVGbGFncyk6CisgICAgICAgIChXZWJLaXQ6OnRvUGxhdGZvcm1YUkZlYXR1cmVzKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlBsYXRmb3JtWFJTeXN0ZW06OnJlcXVlc3RQZXJtaXNzaW9uT25TZXNzaW9uRmVhdHVy
ZXMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9YUi9QbGF0Zm9ybVhSU3lzdGVtLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL1hSL1BsYXRmb3JtWFJTeXN0ZW0ubWVzc2FnZXMuaW46CisKIDIwMjItMDQt
MDQgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW21h
Y09TXSBbV0syXSBBZGQgcGx1bWJpbmcgdG8gZXh0cmFjdCB2aWRlbyBmcmFtZXMgaW4gZWxlbWVu
dCBmdWxsc2NyZWVuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnhyL1dl
YlhSU2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnhyL1dlYlhSU2Vzc2lv
bi5jcHAKaW5kZXggZmUyMjZhOTM0NjVmM2Y0OTViOTViMGRkNjUzYTRiZjI3MTMwYzUzYi4uZjBj
ZTU4Y2MyMjUwZmY3ZDFmNGYwNGIzOWYzMGJiZjlmMDJlMjNiYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJ4ci9XZWJYUlNlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2VieHIvV2ViWFJTZXNzaW9uLmNwcApAQCAtMTY2LDcgKzE2Niw3IEBAIEV4
Y2VwdGlvbk9yPHZvaWQ+IFdlYlhSU2Vzc2lvbjo6dXBkYXRlUmVuZGVyU3RhdGUoY29uc3QgWFJS
ZW5kZXJTdGF0ZUluaXQmIG5ld1N0CiBib29sIFdlYlhSU2Vzc2lvbjo6cmVmZXJlbmNlU3BhY2VJ
c1N1cHBvcnRlZChYUlJlZmVyZW5jZVNwYWNlVHlwZSB0eXBlKSBjb25zdAogewogICAgIC8vIDEu
IElmIHR5cGUgaXMgbm90IGNvbnRhaW5lZCBpbiBzZXNzaW9u4oCZcyBYUiBkZXZpY2UncyBsaXN0
IG9mIGVuYWJsZWQgZmVhdHVyZXMgZm9yIG1vZGUgcmV0dXJuIGZhbHNlLgotICAgIGlmICghbV9y
ZXF1ZXN0ZWRGZWF0dXJlcy5jb250YWlucyh0eXBlKSkKKyAgICBpZiAoIW1fcmVxdWVzdGVkRmVh
dHVyZXMuY29udGFpbnMoc2Vzc2lvbkZlYXR1cmVGcm9tUmVmZXJlbmNlU3BhY2VUeXBlKHR5cGUp
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgLy8gMi4gSWYgdHlwZSBpcyB2aWV3ZXIs
IHJldHVybiB0cnVlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJ4ci9X
ZWJYUlN5c3RlbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnhyL1dlYlhSU3lzdGVt
LmNwcAppbmRleCAyYTcwNjU2M2YzN2Y4M2FjOTk5ZWNhNDFjZTdhMjdiOTk0OWFhZGVjLi4xMWFm
ZDQyYTAwNGZmYjk3ZGQ4MmY2ZGRhMmQ3Yzg3ZDI3NWVhYTUyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYnhyL1dlYlhSU3lzdGVtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYnhyL1dlYlhSU3lzdGVtLmNwcApAQCAtNDcsNyArNDcsOSBAQAogI2luY2x1
ZGUgIldlYlhSU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlhSUmVmZXJlbmNlU3BhY2VUeXBlLmgiCiAj
aW5jbHVkZSAiWFJTZXNzaW9uSW5pdC5oIgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQ0pT
VmFsdWUuaD4KICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0dsb2JhbE9iamVjdC5oPgorI2lu
Y2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL0lzb01hbGxv
Y0lubGluZXMuaD4KICNpbmNsdWRlIDx3dGYvU2NvcGUuaD4KIApAQCAtMjIyLDggKzIyNCw5IEBA
IGJvb2wgV2ViWFJTeXN0ZW06OmlubGluZVNlc3Npb25SZXF1ZXN0SXNBbGxvd2VkRm9yR2xvYmFs
T2JqZWN0KERPTVdpbmRvdyYgZ2xvYmFsCiAgICAgICAgIGlmIChmZWF0dXJlcy5pc0VtcHR5KCkp
CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgaWYgKGZlYXR1cmVzLnNpemUoKSA9
PSAxICYmIGRvY3VtZW50Lmdsb2JhbE9iamVjdCgpKSB7Ci0gICAgICAgICAgICBhdXRvIGZlYXR1
cmUgPSBwYXJzZUVudW1lcmF0aW9uPFhSUmVmZXJlbmNlU3BhY2VUeXBlPigqZG9jdW1lbnQuZ2xv
YmFsT2JqZWN0KCksIGZlYXR1cmVzLmZpcnN0KCkpOwotICAgICAgICAgICAgaWYgKGZlYXR1cmUg
PT0gWFJSZWZlcmVuY2VTcGFjZVR5cGU6OlZpZXdlcikKKyAgICAgICAgICAgIGF1dG8gZmVhdHVy
ZVN0cmluZyA9IGZlYXR1cmVzLmZpcnN0KCkudG9XVEZTdHJpbmcoZG9jdW1lbnQuZ2xvYmFsT2Jq
ZWN0KCkpOworICAgICAgICAgICAgYXV0byBzZXNzaW9uRmVhdHVyZSA9IFBsYXRmb3JtWFI6OnBh
cnNlU2Vzc2lvbkZlYXR1cmVEZXNjcmlwdG9yKGZlYXR1cmVTdHJpbmcpOworICAgICAgICAgICAg
aWYgKHNlc3Npb25GZWF0dXJlICYmICpzZXNzaW9uRmVhdHVyZSA9PSBQbGF0Zm9ybVhSOjpTZXNz
aW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlVmlld2VyKQogICAgICAgICAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTI1MCw2ICsy
NTMsMzMgQEAgc3RydWN0IFdlYlhSU3lzdGVtOjpSZXNvbHZlZFJlcXVlc3RlZEZlYXR1cmVzIHsK
ICAgICBGZWF0dXJlTGlzdCByZXF1ZXN0ZWQ7CiB9OwogCitzdGF0aWMgYm9vbCBmZWF0dXJlUmVx
dWlyZXNFeHBsaWNpdENvbnNlbnQoUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmUgZmVhdHVyZSkK
K3sKKyNpZiBFTkFCTEUoV0VCWFJfSEFORFMpCisgICAgaWYgKGZlYXR1cmUgPT0gUGxhdGZvcm1Y
Ujo6U2Vzc2lvbkZlYXR1cmU6OkhhbmRUcmFja2luZykKKyAgICAgICAgcmV0dXJuIHRydWU7Cisj
ZWxzZQorICAgIFVOVVNFRF9QQVJBTShmZWF0dXJlKTsKKyNlbmRpZgorICAgIHJldHVybiBmYWxz
ZTsKK30KKworYm9vbCBXZWJYUlN5c3RlbTo6aXNGZWF0dXJlU3VwcG9ydGVkKFBsYXRmb3JtWFI6
OlNlc3Npb25GZWF0dXJlIGZlYXR1cmUsIFhSU2Vzc2lvbk1vZGUgbW9kZSwgY29uc3QgUGxhdGZv
cm1YUjo6RGV2aWNlJiBkZXZpY2UpIGNvbnN0Cit7CisgICAgaWYgKCFkZXZpY2Uuc3VwcG9ydGVk
RmVhdHVyZXMobW9kZSkuY29udGFpbnMoZmVhdHVyZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KworI2lmIEVOQUJMRShXRUJYUl9IQU5EUykKKyAgICBpZiAoZmVhdHVyZSA9PSBQbGF0Zm9ybVhS
OjpTZXNzaW9uRmVhdHVyZTo6SGFuZFRyYWNraW5nKSB7CisgICAgICAgIGF1dG8gc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCA9IHRoaXMtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICAgICAg
aWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0IHx8ICFzY3JpcHRFeGVjdXRpb25Db250ZXh0LT5z
ZXR0aW5nc1ZhbHVlcygpLndlYlhSSGFuZElucHV0TW9kdWxlRW5hYmxlZCkKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiB0cnVlOworfQorCiAj
ZGVmaW5lIFJFVFVSTl9GQUxTRV9PUl9DT05USU5VRShtdXN0UmV0dXJuKSB7IFwKICAgICBpZiAo
bXVzdFJldHVybikge1wKICAgICAgICAgcmV0dXJuIGZhbHNlOyBcCkBAIC0yNzcsMTYgKzMwNywx
NiBAQCBzdGQ6Om9wdGlvbmFsPFdlYlhSU3lzdGVtOjpSZXNvbHZlZFJlcXVlc3RlZEZlYXR1cmVz
PiBXZWJYUlN5c3RlbTo6cmVzb2x2ZVJlcXVlcwogICAgIC8vICAgIHdpdGggbW9kZSB0byB0aGUg
aW5kaWNhdGVkIGZlYXR1cmUgbGlzdCBpZiBpdCBpcyBub3QgYWxyZWFkeSBwcmVzZW50LgogICAg
IC8vIGh0dHBzOi8vaW1tZXJzaXZlLXdlYi5naXRodWIuaW8vd2VieHIvI2RlZmF1bHQtZmVhdHVy
ZXMKICAgICBhdXRvIHJlcXVpcmVkRmVhdHVyZXNXaXRoRGVmYXVsdEZlYXR1cmVzID0gaW5pdC5y
ZXF1aXJlZEZlYXR1cmVzOwotICAgIHJlcXVpcmVkRmVhdHVyZXNXaXRoRGVmYXVsdEZlYXR1cmVz
LmFwcGVuZChjb252ZXJ0RW51bWVyYXRpb25Ub0pTKGdsb2JhbE9iamVjdCwgWFJSZWZlcmVuY2VT
cGFjZVR5cGU6OlZpZXdlcikpOworICAgIHJlcXVpcmVkRmVhdHVyZXNXaXRoRGVmYXVsdEZlYXR1
cmVzLmFwcGVuZChKU0M6OmpzU3RyaW5nV2l0aENhY2hlKGdsb2JhbE9iamVjdC52bSgpLCBQbGF0
Zm9ybVhSOjpzZXNzaW9uRmVhdHVyZURlc2NyaXB0b3IoUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1
cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVZpZXdlcikpKTsKICAgICBpZiAobW9kZSA9PSBYUlNlc3Np
b25Nb2RlOjpJbW1lcnNpdmVBciB8fCBtb2RlID09IFhSU2Vzc2lvbk1vZGU6OkltbWVyc2l2ZVZy
KQotICAgICAgICByZXF1aXJlZEZlYXR1cmVzV2l0aERlZmF1bHRGZWF0dXJlcy5hcHBlbmQoY29u
dmVydEVudW1lcmF0aW9uVG9KUyhnbG9iYWxPYmplY3QsIFhSUmVmZXJlbmNlU3BhY2VUeXBlOjpM
b2NhbCkpOworICAgICAgICByZXF1aXJlZEZlYXR1cmVzV2l0aERlZmF1bHRGZWF0dXJlcy5hcHBl
bmQoSlNDOjpqc1N0cmluZ1dpdGhDYWNoZShnbG9iYWxPYmplY3Qudm0oKSwgUGxhdGZvcm1YUjo6
c2Vzc2lvbkZlYXR1cmVEZXNjcmlwdG9yKFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlOjpSZWZl
cmVuY2VTcGFjZVR5cGVMb2NhbCkpKTsKIAogICAgIC8vIDcuIEZvciBlYWNoIGZlYXR1cmUgaW4g
cmVxdWlyZWRGZWF0dXJlc3xvcHRpb25hbEZlYXR1cmVzIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBz
dGVwczoKICAgICAvLyA4LiBGb3IgZWFjaCBmZWF0dXJlIGluIG9wdGlvbmFsRmVhdHVyZXMgcGVy
Zm9ybSB0aGUgZm9sbG93aW5nIHN0ZXBzOgogICAgIC8vIFdlJ3JlIG1lcmdpbmcgYm90aCBsb29w
cyBpbiBhIHNpbmdsZSBsYW1iZGEuIFRoZSBvbmx5IGRpZmZlcmVuY2UgaXMgdGhhdCBhIGZhaWx1
cmUgb24gYW55IHJlcXVpcmVkIGZlYXR1cmVzCiAgICAgLy8gaW1wbGllcyBjYW5jZWxsaW5nIHRo
ZSB3aG9sZSBwcm9jZXNzIHdoaWxlIGZhaWx1cmVzIGluIG9wdGlvbmFsIGZlYXR1cmVzIGFyZSBq
dXN0IHNraXBwZWQuCiAgICAgZW51bSBjbGFzcyBQYXJzaW5nTW9kZSB7IFN0cmljdCwgTG9vc2Ug
fTsKLSAgICBhdXRvIHBhcnNlRmVhdHVyZXMgPSBbJmRldmljZSwgJmdsb2JhbE9iamVjdCwgbW9k
ZSwgJnJlc29sdmVkRmVhdHVyZXNdIChjb25zdCBKU0ZlYXR1cmVMaXN0JiBzZXNzaW9uRmVhdHVy
ZXMsIFBhcnNpbmdNb2RlIHBhcnNpbmdNb2RlKSAtPiBib29sIHsKKyAgICBhdXRvIHBhcnNlRmVh
dHVyZXMgPSBbdGhpcywgJmRldmljZSwgJmdsb2JhbE9iamVjdCwgbW9kZSwgJnJlc29sdmVkRmVh
dHVyZXNdIChjb25zdCBKU0ZlYXR1cmVMaXN0JiBzZXNzaW9uRmVhdHVyZXMsIFBhcnNpbmdNb2Rl
IHBhcnNpbmdNb2RlKSAtPiBib29sIHsKICAgICAgICAgYm9vbCByZXR1cm5PbkZhaWx1cmUgPSBw
YXJzaW5nTW9kZSA9PSBQYXJzaW5nTW9kZTo6U3RyaWN0OwogICAgICAgICBmb3IgKGNvbnN0IGF1
dG8mIHNlc3Npb25GZWF0dXJlIDogc2Vzc2lvbkZlYXR1cmVzKSB7CiAgICAgICAgICAgICAvLyAx
LiBJZiB0aGUgZmVhdHVyZSBpcyBudWxsLCBjb250aW51ZSB0byB0aGUgbmV4dCBlbnRyeS4KQEAg
LTMwMCw3ICszMzAsOCBAQCBzdGQ6Om9wdGlvbmFsPFdlYlhSU3lzdGVtOjpSZXNvbHZlZFJlcXVl
c3RlZEZlYXR1cmVzPiBXZWJYUlN5c3RlbTo6cmVzb2x2ZVJlcXVlcwogICAgICAgICAgICAgLy8g
ICAyLjEuIExldCBzIGJlIHRoZSByZXN1bHQgb2YgY2FsbGluZyA/IFRvU3RyaW5nKGZlYXR1cmUp
LgogICAgICAgICAgICAgLy8gICAyLjIuIElmIHMgaXMgbm90IGEgdmFsaWQgZmVhdHVyZSBkZXNj
cmlwdG9yIG9yIGlzIHVuZGVmaW5lZCwgKHJldHVybiBudWxsfGNvbnRpbnVlIHRvIG5leHQgZW50
cnkpLgogICAgICAgICAgICAgLy8gICAyLjMuIFNldCBmZWF0dXJlIHRvIHMuCi0gICAgICAgICAg
ICBhdXRvIGZlYXR1cmUgPSBwYXJzZUVudW1lcmF0aW9uPFhSUmVmZXJlbmNlU3BhY2VUeXBlPihn
bG9iYWxPYmplY3QsIHNlc3Npb25GZWF0dXJlKTsKKyAgICAgICAgICAgIGF1dG8gZmVhdHVyZVN0
cmluZyA9IHNlc3Npb25GZWF0dXJlLnRvV1RGU3RyaW5nKCZnbG9iYWxPYmplY3QpOworICAgICAg
ICAgICAgYXV0byBmZWF0dXJlID0gUGxhdGZvcm1YUjo6cGFyc2VTZXNzaW9uRmVhdHVyZURlc2Ny
aXB0b3IoZmVhdHVyZVN0cmluZyk7CiAgICAgICAgICAgICBpZiAoIWZlYXR1cmUpCiAgICAgICAg
ICAgICAgICAgUkVUVVJOX0ZBTFNFX09SX0NPTlRJTlVFKHJldHVybk9uRmFpbHVyZSk7CiAKQEAg
LTMxNSwxMiArMzQ2LDE5IEBAIHN0ZDo6b3B0aW9uYWw8V2ViWFJTeXN0ZW06OlJlc29sdmVkUmVx
dWVzdGVkRmVhdHVyZXM+IFdlYlhSU3lzdGVtOjpyZXNvbHZlUmVxdWVzCiAKICAgICAgICAgICAg
IC8vIDUuIElmIHNlc3Npb24ncyBYUiBkZXZpY2UgaXMgbm90IGNhcGFibGUgb2Ygc3VwcG9ydGlu
ZyB0aGUgZnVuY3Rpb25hbGl0eSBkZXNjcmliZWQgYnkgZmVhdHVyZSBvciB0aGUKICAgICAgICAg
ICAgIC8vICAgIHVzZXIgYWdlbnQgaGFzIG90aGVyd2lzZSBkZXRlcm1pbmVkIHRvIHJlamVjdCB0
aGUgZmVhdHVyZSwgKHJldHVybiBudWxsfGNvbnRpbnVlIHRvIG5leHQgZW50cnkpLgotICAgICAg
ICAgICAgaWYgKCFkZXZpY2UtPnN1cHBvcnRlZEZlYXR1cmVzKG1vZGUpLmNvbnRhaW5zKGZlYXR1
cmUudmFsdWUoKSkpCisgICAgICAgICAgICBpZiAoIWlzRmVhdHVyZVN1cHBvcnRlZChmZWF0dXJl
LnZhbHVlKCksIG1vZGUsICpkZXZpY2UpKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUxTRV9P
Ul9DT05USU5VRShyZXR1cm5PbkZhaWx1cmUpOwogCiAgICAgICAgICAgICAvLyA2LiBJZiB0aGUg
ZnVuY3Rpb25hbGl0eSBkZXNjcmliZWQgYnkgZmVhdHVyZSByZXF1aXJlcyBleHBsaWNpdCBjb25z
ZW50LCBhcHBlbmQgaXQgdG8gKGNvbnNlbnRSZXF1aXJlZHxjb25zZW50T3B0aW9uYWwpLgotICAg
ICAgICAgICAgLy8gNy4gRWxzZSBhcHBlbmQgZmVhdHVyZSB0byBncmFudGVkLgotICAgICAgICAg
ICAgcmVzb2x2ZWRGZWF0dXJlcy5ncmFudGVkLmFwcGVuZChmZWF0dXJlLnZhbHVlKCkpOworICAg
ICAgICAgICAgaWYgKGZlYXR1cmVSZXF1aXJlc0V4cGxpY2l0Q29uc2VudChmZWF0dXJlLnZhbHVl
KCkpKSB7CisgICAgICAgICAgICAgICAgaWYgKHBhcnNpbmdNb2RlID09IFBhcnNpbmdNb2RlOjpT
dHJpY3QpCisgICAgICAgICAgICAgICAgICAgIHJlc29sdmVkRmVhdHVyZXMuY29uc2VudFJlcXVp
cmVkLmFwcGVuZChmZWF0dXJlLnZhbHVlKCkpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgcmVzb2x2ZWRGZWF0dXJlcy5jb25zZW50T3B0aW9uYWwuYXBwZW5kKGZl
YXR1cmUudmFsdWUoKSk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIC8v
IDcuIEVsc2UgYXBwZW5kIGZlYXR1cmUgdG8gZ3JhbnRlZC4KKyAgICAgICAgICAgICAgICByZXNv
bHZlZEZlYXR1cmVzLmdyYW50ZWQuYXBwZW5kKGZlYXR1cmUudmFsdWUoKSk7CisgICAgICAgICAg
ICB9CiAKICAgICAgICAgICAgIC8vIGh0dHBzOi8vaW1tZXJzaXZlLXdlYi5naXRodWIuaW8vd2Vi
eHIvI3JlcXVlc3RlZC1mZWF0dXJlcwogICAgICAgICAgICAgLy8gVGhlIGNvbWJpbmVkIGxpc3Qg
b2YgZmVhdHVyZSBkZXNjcmlwdG9ycyBnaXZlbiBieSB0aGUgcmVxdWlyZWRGZWF0dXJlcyBhbmQg
b3B0aW9uYWxGZWF0dXJlcyBhcmUgY29sbGVjdGl2ZWx5IGNvbnNpZGVyZWQgdGhlIHJlcXVlc3Rl
ZCBmZWF0dXJlcyBmb3IgYW4gWFJTZXNzaW9uLgpAQCAtMzc3LDEyICs0MTUsMTkgQEAgdm9pZCBX
ZWJYUlN5c3RlbTo6cmVzb2x2ZUZlYXR1cmVQZXJtaXNzaW9ucyhYUlNlc3Npb25Nb2RlIG1vZGUs
IGNvbnN0IFhSU2Vzc2lvbkkKICAgICB9CiAKICAgICAvLyBGSVhNRTogUmVwbGFjZSB3aXRoIFBl
cm1pc3Npb25zIEFQSSBpbXBsZW1lbnRhdGlvbi4KLSAgICBkb2N1bWVudC0+cGFnZSgpLT5jaHJv
bWUoKS5jbGllbnQoKS5yZXF1ZXN0UGVybWlzc2lvbk9uWFJTZXNzaW9uRmVhdHVyZXMoZG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCkuZGF0YSgpLCBtb2RlLCByZXNvbHZlZEZlYXR1cmVzLT5ncmFu
dGVkLCByZXNvbHZlZEZlYXR1cmVzLT5jb25zZW50UmVxdWlyZWQsIHJlc29sdmVkRmVhdHVyZXMt
PmNvbnNlbnRPcHRpb25hbCwgW2RldmljZSwgbW9kZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oc3RkOjpvcHRpb25hbDxQbGF0Zm9ybVhSOjpEZXZpY2U6
OkZlYXR1cmVMaXN0PiYmIHVzZXJHcmFudGVkKSBtdXRhYmxlIHsKKyAgICBkb2N1bWVudC0+cGFn
ZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5yZXF1ZXN0UGVybWlzc2lvbk9uWFJTZXNzaW9uRmVhdHVy
ZXMoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkuZGF0YSgpLCBtb2RlLCByZXNvbHZlZEZlYXR1
cmVzLT5ncmFudGVkLCByZXNvbHZlZEZlYXR1cmVzLT5jb25zZW50UmVxdWlyZWQsIHJlc29sdmVk
RmVhdHVyZXMtPmNvbnNlbnRPcHRpb25hbCwgW2RldmljZSwgbW9kZSwgY29uc2VudFJlcXVpcmVk
ID0gV1RGTW92ZShyZXNvbHZlZEZlYXR1cmVzLT5jb25zZW50UmVxdWlyZWQpLCBjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShzdGQ6Om9wdGlvbmFsPFBsYXRm
b3JtWFI6OkRldmljZTo6RmVhdHVyZUxpc3Q+JiYgdXNlckdyYW50ZWQpIG11dGFibGUgewogICAg
ICAgICBpZiAoIXVzZXJHcmFudGVkKSB7CiAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihz
dGQ6Om51bGxvcHQpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKKyAgICAgICAg
Zm9yIChhdXRvIGZlYXR1cmVSZXF1aXJpbmdDb25zZW50IDogY29uc2VudFJlcXVpcmVkKSB7Cisg
ICAgICAgICAgICBpZiAoIXVzZXJHcmFudGVkLT5jb250YWlucyhmZWF0dXJlUmVxdWlyaW5nQ29u
c2VudCkpIHsKKyAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQp
OworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAg
ICAgICAgIC8vIDExLiBTZXQgc3RhdHVzJ3MgZ3JhbnRlZCB0byBncmFudGVkLgogICAgICAgICAv
LyAxMi4gU2V0IGRldmljZSdzIGxpc3Qgb2YgZW5hYmxlZCBmZWF0dXJlcyBmb3IgbW9kZSB0byBn
cmFudGVkLgogICAgICAgICAvLyAxMy4gU2V0IHN0YXR1cydzIHN0YXRlIHRvICJncmFudGVkIi4K
QEAgLTU1NSw3ICs2MDAsNyBAQCBwcml2YXRlOgogV2ViWFJTeXN0ZW06OkR1bW15SW5saW5lRGV2
aWNlOjpEdW1teUlubGluZURldmljZShTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBzY3JpcHRFeGVj
dXRpb25Db250ZXh0KQogICAgIDogQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoJnNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQpCiB7Ci0gICAgc2V0U3VwcG9ydGVkRmVhdHVyZXMoWFJTZXNzaW9uTW9k
ZTo6SW5saW5lLCB7IFhSUmVmZXJlbmNlU3BhY2VUeXBlOjpWaWV3ZXIgfSk7CisgICAgc2V0U3Vw
cG9ydGVkRmVhdHVyZXMoWFJTZXNzaW9uTW9kZTo6SW5saW5lLCB7IFBsYXRmb3JtWFI6OlNlc3Np
b25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVWaWV3ZXIgfSk7CiB9CiAKIHZvaWQgV2ViWFJT
eXN0ZW06OkR1bW15SW5saW5lRGV2aWNlOjpyZXF1ZXN0RnJhbWUoUGxhdGZvcm1YUjo6RGV2aWNl
OjpSZXF1ZXN0RnJhbWVDYWxsYmFjayYmIGNhbGxiYWNrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJ4ci9XZWJYUlN5c3RlbS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJ4ci9XZWJYUlN5c3RlbS5oCmluZGV4IDhiZWFiNGE4ODY4ODIwNWMwN2E4ZmY3YzUyNDk0
NjdlY2Y2ZTM1ZjYuLjc2ZGZhNjQ1ZWM1ODE2ZDRiY2UzOGE2NzU0MTYyNjZkOWFiYWEzY2EgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2VieHIvV2ViWFJTeXN0ZW0uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnhyL1dlYlhSU3lzdGVtLmgKQEAgLTEwMSw2ICsx
MDEsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgaW1tZXJzaXZlU2Vzc2lvblJlcXVlc3RJc0FsbG93
ZWRGb3JHbG9iYWxPYmplY3QoRE9NV2luZG93JiwgRG9jdW1lbnQmKSBjb25zdDsKICAgICBib29s
IGlubGluZVNlc3Npb25SZXF1ZXN0SXNBbGxvd2VkRm9yR2xvYmFsT2JqZWN0KERPTVdpbmRvdyYs
IERvY3VtZW50JiwgY29uc3QgWFJTZXNzaW9uSW5pdCYpIGNvbnN0OwogCisgICAgYm9vbCBpc0Zl
YXR1cmVTdXBwb3J0ZWQoUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmUsIFhSU2Vzc2lvbk1vZGUs
IGNvbnN0IFBsYXRmb3JtWFI6OkRldmljZSYpIGNvbnN0OwogICAgIHN0cnVjdCBSZXNvbHZlZFJl
cXVlc3RlZEZlYXR1cmVzOwogICAgIHN0ZDo6b3B0aW9uYWw8UmVzb2x2ZWRSZXF1ZXN0ZWRGZWF0
dXJlcz4gcmVzb2x2ZVJlcXVlc3RlZEZlYXR1cmVzKFhSU2Vzc2lvbk1vZGUsIGNvbnN0IFhSU2Vz
c2lvbkluaXQmLCBQbGF0Zm9ybVhSOjpEZXZpY2UqLCBKU0M6OkpTR2xvYmFsT2JqZWN0JikgY29u
c3Q7CiAgICAgdm9pZCByZXNvbHZlRmVhdHVyZVBlcm1pc3Npb25zKFhSU2Vzc2lvbk1vZGUsIGNv
bnN0IFhSU2Vzc2lvbkluaXQmLCBQbGF0Zm9ybVhSOjpEZXZpY2UqLCBKU0M6OkpTR2xvYmFsT2Jq
ZWN0JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPEZlYXR1cmVMaXN0PiYm
KT4mJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS94ci9QbGF0
Zm9ybVhSLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS94ci9QbGF0Zm9ybVhSLmgKaW5kZXgg
MjQ5OTE4OTJiNzcxOTdhNjk4ZDBmNjQ4NWRhNzFmZTNiYzI1NWYxNC4uOTNkMDNmOGFjOWEyMmUz
NDdhOGIzZjY0MDNmMTJmODRiMTdhZWM1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0veHIvUGxhdGZvcm1YUi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3hyL1Bs
YXRmb3JtWFIuaApAQCAtODQsNiArODQsODIgQEAgZW51bSBjbGFzcyBYUlRhcmdldFJheU1vZGUg
ewogICAgIFNjcmVlbiwKIH07CiAKKy8vIGh0dHBzOi8vaW1tZXJzaXZlLXdlYi5naXRodWIuaW8v
d2VieHIvI2ZlYXR1cmUtZGVzY3JpcHRvcgorZW51bSBjbGFzcyBTZXNzaW9uRmVhdHVyZSB7Cisg
ICAgUmVmZXJlbmNlU3BhY2VUeXBlVmlld2VyLAorICAgIFJlZmVyZW5jZVNwYWNlVHlwZUxvY2Fs
LAorICAgIFJlZmVyZW5jZVNwYWNlVHlwZUxvY2FsRmxvb3IsCisgICAgUmVmZXJlbmNlU3BhY2VU
eXBlQm91bmRlZEZsb29yLAorICAgIFJlZmVyZW5jZVNwYWNlVHlwZVVuYm91bmRlZCwKKyNpZiBF
TkFCTEUoV0VCWFJfSEFORFMpCisgICAgSGFuZFRyYWNraW5nLAorI2VuZGlmCit9OworCitpbmxp
bmUgU2Vzc2lvbkZlYXR1cmUgc2Vzc2lvbkZlYXR1cmVGcm9tUmVmZXJlbmNlU3BhY2VUeXBlKFJl
ZmVyZW5jZVNwYWNlVHlwZSByZWZlcmVuY2VTcGFjZVR5cGUpCit7CisgICAgc3dpdGNoIChyZWZl
cmVuY2VTcGFjZVR5cGUpIHsKKyAgICBjYXNlIFJlZmVyZW5jZVNwYWNlVHlwZTo6Vmlld2VyOgor
ICAgICAgICByZXR1cm4gU2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVZpZXdlcjsK
KyAgICBjYXNlIFJlZmVyZW5jZVNwYWNlVHlwZTo6TG9jYWw6CisgICAgICAgIHJldHVybiBTZXNz
aW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlTG9jYWw7CisgICAgY2FzZSBSZWZlcmVuY2VT
cGFjZVR5cGU6OkxvY2FsRmxvb3I6CisgICAgICAgIHJldHVybiBTZXNzaW9uRmVhdHVyZTo6UmVm
ZXJlbmNlU3BhY2VUeXBlTG9jYWxGbG9vcjsKKyAgICBjYXNlIFJlZmVyZW5jZVNwYWNlVHlwZTo6
Qm91bmRlZEZsb29yOgorICAgICAgICByZXR1cm4gU2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNw
YWNlVHlwZUJvdW5kZWRGbG9vcjsKKyAgICBjYXNlIFJlZmVyZW5jZVNwYWNlVHlwZTo6VW5ib3Vu
ZGVkOgorICAgICAgICByZXR1cm4gU2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVVu
Ym91bmRlZDsKKyAgICB9CisKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4g
U2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVZpZXdlcjsKK30KKworaW5saW5lIHN0
ZDo6b3B0aW9uYWw8U2Vzc2lvbkZlYXR1cmU+IHBhcnNlU2Vzc2lvbkZlYXR1cmVEZXNjcmlwdG9y
KGNvbnN0IFN0cmluZyYgc3RyaW5nKQoreworICAgIFN0cmluZyBmZWF0dXJlID0gc3RyaW5nLnN0
cmlwV2hpdGVTcGFjZSgpLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCk7CisKKyAgICBpZiAoZmVh
dHVyZSA9PSAidmlld2VyIl9zKQorICAgICAgICByZXR1cm4gU2Vzc2lvbkZlYXR1cmU6OlJlZmVy
ZW5jZVNwYWNlVHlwZVZpZXdlcjsKKyAgICBpZiAoZmVhdHVyZSA9PSAibG9jYWwiX3MpCisgICAg
ICAgIHJldHVybiBTZXNzaW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlTG9jYWw7CisgICAg
aWYgKGZlYXR1cmUgPT0gImxvY2FsLWZsb29yIl9zKQorICAgICAgICByZXR1cm4gU2Vzc2lvbkZl
YXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZUxvY2FsRmxvb3I7CisgICAgaWYgKGZlYXR1cmUgPT0g
ImJvdW5kZWQtZmxvb3IiX3MpCisgICAgICAgIHJldHVybiBTZXNzaW9uRmVhdHVyZTo6UmVmZXJl
bmNlU3BhY2VUeXBlQm91bmRlZEZsb29yOworICAgIGlmIChmZWF0dXJlID09ICJ1bmJvdW5kZWQi
X3MpCisgICAgICAgIHJldHVybiBTZXNzaW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlVW5i
b3VuZGVkOworI2lmIEVOQUJMRShXRUJYUl9IQU5EUykKKyAgICBpZiAoZmVhdHVyZSA9PSAiaGFu
ZC10cmFja2luZyJfcykKKyAgICAgICAgcmV0dXJuIFNlc3Npb25GZWF0dXJlOjpIYW5kVHJhY2tp
bmc7CisjZW5kaWYKKworICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Cit9CisKK2lubGluZSBTdHJp
bmcgc2Vzc2lvbkZlYXR1cmVEZXNjcmlwdG9yKFNlc3Npb25GZWF0dXJlIHNlc3Npb25GZWF0dXJl
KQoreworICAgIHN3aXRjaCAoc2Vzc2lvbkZlYXR1cmUpIHsKKyAgICBjYXNlIFNlc3Npb25GZWF0
dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVWaWV3ZXI6CisgICAgICAgIHJldHVybiAidmlld2VyIl9z
OworICAgIGNhc2UgU2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZUxvY2FsOgorICAg
ICAgICByZXR1cm4gImxvY2FsIl9zOworICAgIGNhc2UgU2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5j
ZVNwYWNlVHlwZUxvY2FsRmxvb3I6CisgICAgICAgIHJldHVybiAibG9jYWwtZmxvb3IiX3M7Cisg
ICAgY2FzZSBTZXNzaW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlQm91bmRlZEZsb29yOgor
ICAgICAgICByZXR1cm4gImJvdW5kZWQtZmxvb3IiX3M7CisgICAgY2FzZSBTZXNzaW9uRmVhdHVy
ZTo6UmVmZXJlbmNlU3BhY2VUeXBlVW5ib3VuZGVkOgorICAgICAgICByZXR1cm4gInVuYm91bmRl
ZCJfczsKKyNpZiBFTkFCTEUoV0VCWFJfSEFORFMpCisgICAgY2FzZSBTZXNzaW9uRmVhdHVyZTo6
SGFuZFRyYWNraW5nOgorICAgICAgICByZXR1cm4gImhhbmQtdHJhY2tpbmciX3M7CisjZW5kaWYK
KyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0
dXJuICIiX3M7CisgICAgfQorfQorCiAjaWYgRU5BQkxFKFdFQlhSX0hBTkRTKQogCiBlbnVtIGNs
YXNzIEhhbmRKb2ludCA6IHVuc2lnbmVkIHsKQEAgLTEyNCwxMCArMjAwLDEwIEBAIGNsYXNzIERl
dmljZSA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxEZXZpY2U+LCBwdWJsaWMgQ2FuTWFr
ZVdlYWtQdHI8RGV2aWNlCiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RGV2aWNlKCkgPSBkZWZhdWx0
OwogCi0gICAgdXNpbmcgRmVhdHVyZUxpc3QgPSBWZWN0b3I8UmVmZXJlbmNlU3BhY2VUeXBlPjsK
LSAgICBib29sIHN1cHBvcnRzKFNlc3Npb25Nb2RlIG1vZGUpIGNvbnN0IHsgcmV0dXJuIG1fZW5h
YmxlZEZlYXR1cmVzTWFwLmNvbnRhaW5zKG1vZGUpOyB9Ci0gICAgdm9pZCBzZXRTdXBwb3J0ZWRG
ZWF0dXJlcyhTZXNzaW9uTW9kZSBtb2RlLCBjb25zdCBGZWF0dXJlTGlzdCYgZmVhdHVyZXMpIHsg
bV9lbmFibGVkRmVhdHVyZXNNYXAuc2V0KG1vZGUsIGZlYXR1cmVzKTsgfQotICAgIEZlYXR1cmVM
aXN0IHN1cHBvcnRlZEZlYXR1cmVzKFNlc3Npb25Nb2RlIG1vZGUpIGNvbnN0IHsgcmV0dXJuIG1f
ZW5hYmxlZEZlYXR1cmVzTWFwLmdldChtb2RlKTsgfQorICAgIHVzaW5nIEZlYXR1cmVMaXN0ID0g
VmVjdG9yPFNlc3Npb25GZWF0dXJlPjsKKyAgICBib29sIHN1cHBvcnRzKFNlc3Npb25Nb2RlIG1v
ZGUpIGNvbnN0IHsgcmV0dXJuIG1fc3VwcG9ydGVkRmVhdHVyZXNNYXAuY29udGFpbnMobW9kZSk7
IH0KKyAgICB2b2lkIHNldFN1cHBvcnRlZEZlYXR1cmVzKFNlc3Npb25Nb2RlIG1vZGUsIGNvbnN0
IEZlYXR1cmVMaXN0JiBmZWF0dXJlcykgeyBtX3N1cHBvcnRlZEZlYXR1cmVzTWFwLnNldChtb2Rl
LCBmZWF0dXJlcyk7IH0KKyAgICBGZWF0dXJlTGlzdCBzdXBwb3J0ZWRGZWF0dXJlcyhTZXNzaW9u
TW9kZSBtb2RlKSBjb25zdCB7IHJldHVybiBtX3N1cHBvcnRlZEZlYXR1cmVzTWFwLmdldChtb2Rl
KTsgfQogICAgIHZvaWQgc2V0RW5hYmxlZEZlYXR1cmVzKFNlc3Npb25Nb2RlIG1vZGUsIGNvbnN0
IEZlYXR1cmVMaXN0JiBmZWF0dXJlcykgeyBtX2VuYWJsZWRGZWF0dXJlc01hcC5zZXQobW9kZSwg
ZmVhdHVyZXMpOyB9CiAgICAgRmVhdHVyZUxpc3QgZW5hYmxlZEZlYXR1cmVzKFNlc3Npb25Nb2Rl
IG1vZGUpIGNvbnN0IHsgcmV0dXJuIG1fZW5hYmxlZEZlYXR1cmVzTWFwLmdldChtb2RlKTsgfQog
CkBAIC03MDMsNiArNzc5LDIwIEBAIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8UGxhdGZv
cm1YUjo6WFJUYXJnZXRSYXlNb2RlPiB7CiAgICAgPjsKIH07CiAKK3RlbXBsYXRlPD4gc3RydWN0
IEVudW1UcmFpdHM8UGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU+IHsKKyAgICB1c2luZyB2YWx1
ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZSwKKyAg
ICAgICAgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVZpZXdl
ciwKKyAgICAgICAgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlw
ZUxvY2FsLAorICAgICAgICBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZTo6UmVmZXJlbmNlU3Bh
Y2VUeXBlTG9jYWxGbG9vciwKKyAgICAgICAgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OlJl
ZmVyZW5jZVNwYWNlVHlwZUJvdW5kZWRGbG9vciwKKyAgICAgICAgUGxhdGZvcm1YUjo6U2Vzc2lv
bkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVVuYm91bmRlZAorI2lmIEVOQUJMRShXRUJYUl9I
QU5EUykKKyAgICAgICAgLCBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZTo6SGFuZFRyYWNraW5n
CisjZW5kaWYKKyAgICA+OworfTsKKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3hyL29wZW54ci9QbGF0Zm9ybVhST3BlblhSLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3hyL29wZW54ci9QbGF0Zm9ybVhST3BlblhSLmNwcAppbmRleCBmZDY1
Mzc2MDFjMjQ2Yjc5ODJiYTA5MDBhNWZkZjAxOThjZDEzY2Y2Li41Y2UxYzUzNjdjOTc2ZWQ2NTQ0
NzExODk5NTYyZGQ2N2ZkMzIzZDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS94ci9vcGVueHIvUGxhdGZvcm1YUk9wZW5YUi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0veHIvb3BlbnhyL1BsYXRmb3JtWFJPcGVuWFIuY3BwCkBAIC0zNDQsMTkgKzM0NCwxOSBA
QCBEZXZpY2U6OkZlYXR1cmVMaXN0IE9wZW5YUkRldmljZTo6Y29sbGVjdFN1cHBvcnRlZEZlYXR1
cmVzKCkgY29uc3QKIAogICAgIC8vIGh0dHBzOi8vd3d3Lmtocm9ub3Mub3JnL3JlZ2lzdHJ5L09w
ZW5YUi9zcGVjcy8xLjAvbWFuL2h0bWwvWHJSZWZlcmVuY2VTcGFjZVR5cGUuaHRtbAogICAgIC8v
IE9wZW5YUiBydW50aW1lcyBtdXN0IHN1cHBvcnQgVmlld2VyIGFuZCBMb2NhbCBzcGFjZXMuCi0g
ICAgZmVhdHVyZXMuYXBwZW5kKFJlZmVyZW5jZVNwYWNlVHlwZTo6Vmlld2VyKTsKLSAgICBmZWF0
dXJlcy5hcHBlbmQoUmVmZXJlbmNlU3BhY2VUeXBlOjpMb2NhbCk7CisgICAgZmVhdHVyZXMuYXBw
ZW5kKFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVWaWV3ZXIp
OworICAgIGZlYXR1cmVzLmFwcGVuZChQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZTo6UmVmZXJl
bmNlU3BhY2VUeXBlTG9jYWwpOwogCiAgICAgLy8gTWFyayBMb2NhbEZsb29yIGFzIHN1cHBvcnRl
ZCByZWdhcmRsZXNzIGlmIFhSX1JFRkVSRU5DRV9TUEFDRV9UWVBFX1NUQUdFIGlzIGF2YWlsYWJs
ZS4KICAgICAvLyBUaGUgc3BlYyB1c2VzIGEgZXN0aW1hdGVkIGhlaWdodCBpZiB3ZSBkb24ndCBw
cm92aWRlIGEgZmxvb3IgdHJhbnNmb3JtIGluIGZyYW1lRGF0YS4KLSAgICBmZWF0dXJlcy5hcHBl
bmQoUmVmZXJlbmNlU3BhY2VUeXBlOjpMb2NhbEZsb29yKTsKKyAgICBmZWF0dXJlcy5hcHBlbmQo
UGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZUxvY2FsRmxvb3Ip
OwogCiAgICAgLy8gTWFyayBCb3VuZGVkRmxvb3IgYXMgc3VwcG9ydGVkIHJlZ2FyZGxlc3MgaWYg
WFJfUkVGRVJFTkNFX1NQQUNFX1RZUEVfU1RBR0UgaXMgYXZhaWxhYmxlLgogICAgIC8vIFRoZSBz
cGVjIGFsbG93cyByZXBvcnRpbmcgYW4gZW1wdHkgYXJyYXkgaWYgeHJHZXRSZWZlcmVuY2VTcGFj
ZUJvdW5kc1JlY3QgZmFpbHMuCi0gICAgZmVhdHVyZXMuYXBwZW5kKFJlZmVyZW5jZVNwYWNlVHlw
ZTo6Qm91bmRlZEZsb29yKTsKKyAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6U2Vzc2lv
bkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZUJvdW5kZWRGbG9vcik7CiAKICAgICBpZiAobV9l
eHRlbnNpb25zLmlzRXh0ZW5zaW9uU3VwcG9ydGVkKFhSX01TRlRfVU5CT1VOREVEX1JFRkVSRU5D
RV9TUEFDRV9FWFRFTlNJT05fTkFNRSkpCi0gICAgICAgIGZlYXR1cmVzLmFwcGVuZChSZWZlcmVu
Y2VTcGFjZVR5cGU6OlVuYm91bmRlZCk7CisgICAgICAgIGZlYXR1cmVzLmFwcGVuZChQbGF0Zm9y
bVhSOjpTZXNzaW9uRmVhdHVyZTo6UmVmZXJlbmNlU3BhY2VUeXBlVW5ib3VuZGVkKTsKIAogICAg
IHJldHVybiBmZWF0dXJlczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
V2ViWFJUZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvV2ViWFJUZXN0LmNwcAppbmRl
eCBiMGVhZjY0YzUwODI1N2U4Yzk5ZjEyYmY3Y2I3YTc2OGIwMWViYTRhLi41NDdjZGJjYzdmMTA3
NTVlN2RjNjJiZjdmMWE0MDMzN2Q1MWZlNzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL1dlYlhSVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9XZWJYUlRl
c3QuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbmNsdWRlICJKU1dlYkZha2VYUkRldmljZS5o
IgogI2luY2x1ZGUgIkpTWFJSZWZlcmVuY2VTcGFjZVR5cGUuaCIKKyNpbmNsdWRlICJQbGF0Zm9y
bVhSLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKICNpbmNsdWRlICJXZWJY
UlN5c3RlbS5oIgogI2luY2x1ZGUgIlhSU2Vzc2lvbk1vZGUuaCIKQEAgLTQ3LDEyICs0OCwxMyBA
QCB2b2lkIFdlYlhSVGVzdDo6c2ltdWxhdGVEZXZpY2VDb25uZWN0aW9uKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmIGNvbnRleHQsIGNvbnN0CiAKICAgICAgICAgZGV2aWNlLT5zZXRWaWV3cyhpbml0
LnZpZXdzKTsKIAotICAgICAgICBWZWN0b3I8WFJSZWZlcmVuY2VTcGFjZVR5cGU+IGZlYXR1cmVz
OworICAgICAgICBQbGF0Zm9ybVhSOjpEZXZpY2U6OkZlYXR1cmVMaXN0IGZlYXR1cmVzOwogICAg
ICAgICBpZiAoaW5pdC5zdXBwb3J0ZWRGZWF0dXJlcykgewogICAgICAgICAgICAgaWYgKGF1dG8q
IGdsb2JhbE9iamVjdCA9IGNvbnRleHQuZ2xvYmFsT2JqZWN0KCkpIHsKICAgICAgICAgICAgICAg
ICBmb3IgKGF1dG8mIGZlYXR1cmUgOiBpbml0LnN1cHBvcnRlZEZlYXR1cmVzLnZhbHVlKCkpIHsK
LSAgICAgICAgICAgICAgICAgICAgaWYgKGF1dG8gcmVmZXJlbmNlU3BhY2VUeXBlID0gcGFyc2VF
bnVtZXJhdGlvbjxYUlJlZmVyZW5jZVNwYWNlVHlwZT4oKmdsb2JhbE9iamVjdCwgZmVhdHVyZSkp
Ci0gICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlcy5hcHBlbmQocmVmZXJlbmNlU3BhY2VU
eXBlLnZhbHVlKCkpOworICAgICAgICAgICAgICAgICAgICBhdXRvIGZlYXR1cmVTdHJpbmcgPSBm
ZWF0dXJlLnRvV1RGU3RyaW5nKGdsb2JhbE9iamVjdCk7CisgICAgICAgICAgICAgICAgICAgIGlm
IChhdXRvIHNlc3Npb25GZWF0dXJlID0gUGxhdGZvcm1YUjo6cGFyc2VTZXNzaW9uRmVhdHVyZURl
c2NyaXB0b3IoZmVhdHVyZVN0cmluZykpCisgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJl
cy5hcHBlbmQoKnNlc3Npb25GZWF0dXJlKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICB9CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQv
bWVzc2FnZXMucHkgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5Cmlu
ZGV4IDQ3YjdiZDViMjU5OWM0N2E4NDkxYjY1MGFhMzAxMGNiMDVkNWI4ZWYuLmFkYzE2NGIwYzVh
ODEzZTk2YTQ3NzBlYzY1YzQzMjljYjE2ODA0NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dl
YmtpdC9tZXNzYWdlcy5weQpAQCAtMjY0LDYgKzI2NCw3IEBAIGRlZiB0eXBlc190aGF0X2Nhbm5v
dF9iZV9mb3J3YXJkX2RlY2xhcmVkKCk6CiAgICAgICAgICdNYWNoU2VuZFJpZ2h0JywKICAgICAg
ICAgJ01lZGlhVGltZScsCiAgICAgICAgICdQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGUn
LAorICAgICAgICAnUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmUnLAogICAgICAgICAnUGxhdGZv
cm1YUjo6U2Vzc2lvbk1vZGUnLAogICAgICAgICAnUGxhdGZvcm1YUjo6VmlzaWJpbGl0eVN0YXRl
JywKICAgICAgICAgJ1N0cmluZycsCkBAIC03NTQsNiArNzU1LDcgQEAgZGVmIGhlYWRlcnNfZm9y
X3R5cGUodHlwZSk6CiAgICAgICAgICdQQUw6OldlYkdQVTo6VmVydGV4U3RlcE1vZGUnOiBbJzxw
YWwvZ3JhcGhpY3MvV2ViR1BVL1dlYkdQVVZlcnRleFN0ZXBNb2RlLmg+J10sCiAgICAgICAgICdQ
bGF0Zm9ybVhSOjpEZXZpY2U6OkZyYW1lRGF0YSc6IFsnPFdlYkNvcmUvUGxhdGZvcm1YUi5oPidd
LAogICAgICAgICAnUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlJzogWyc8V2ViQ29yZS9Q
bGF0Zm9ybVhSLmg+J10sCisgICAgICAgICdQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZSc6IFsn
PFdlYkNvcmUvUGxhdGZvcm1YUi5oPiddLAogICAgICAgICAnUGxhdGZvcm1YUjo6U2Vzc2lvbk1v
ZGUnOiBbJzxXZWJDb3JlL1BsYXRmb3JtWFIuaD4nXSwKICAgICAgICAgJ1BsYXRmb3JtWFI6OlZp
c2liaWxpdHlTdGF0ZSc6IFsnPFdlYkNvcmUvUGxhdGZvcm1YUi5oPiddLAogICAgICAgICAnU2Vj
b25kcyc6IFsnPHd0Zi9TZWNvbmRzLmg+J10sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9YUi9YUkRldmljZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1hSL1hSRGV2
aWNlUHJveHkuY3BwCmluZGV4IDZhYmU3YTMwYmVmYzJkNmU1MzM4NDNmYWJmMmNkN2MzZTU5YjYy
OWEuLjgwZjA4NTMyMTBjNmQ0YmMyNDJkYTNhYWU4ZmRlMGIwYjFkNmZmN2UgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1hSL1hSRGV2aWNlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1hSL1hSRGV2aWNlUHJveHkuY3BwCkBAIC00OCw3ICs0OCw3IEBAIFhSRGV2
aWNlUHJveHk6OlhSRGV2aWNlUHJveHkoWFJEZXZpY2VJbmZvJiYgZGV2aWNlSW5mbywgUGxhdGZv
cm1YUlN5c3RlbVByb3h5JiB4CiAgICAgbV9zdXBwb3J0c09yaWVudGF0aW9uVHJhY2tpbmcgPSBk
ZXZpY2VJbmZvLnN1cHBvcnRzT3JpZW50YXRpb25UcmFja2luZzsKICAgICBtX3JlY29tbWVuZGVk
UmVzb2x1dGlvbiA9IGRldmljZUluZm8ucmVjb21tZW5kZWRSZXNvbHV0aW9uOwogICAgIGlmICgh
ZGV2aWNlSW5mby5mZWF0dXJlcy5pc0VtcHR5KCkpCi0gICAgICAgIHNldEVuYWJsZWRGZWF0dXJl
cyhTZXNzaW9uTW9kZTo6SW1tZXJzaXZlVnIsIGRldmljZUluZm8uZmVhdHVyZXMpOworICAgICAg
ICBzZXRTdXBwb3J0ZWRGZWF0dXJlcyhTZXNzaW9uTW9kZTo6SW1tZXJzaXZlVnIsIGRldmljZUlu
Zm8uZmVhdHVyZXMpOwogfQogCiB2b2lkIFhSRGV2aWNlUHJveHk6OnNlc3Npb25EaWRFbmQoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVUlEZWxlZ2F0
ZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1VJRGVsZWdh
dGVQcml2YXRlLmgKaW5kZXggMjUzZTViMmZkZDI5M2YzYWYyNDdjZGVhMDkxYzg4MDg2YzU3OWY3
Zi4uZGYwMTNjZWI4ZDk1OTFiOTQ3MTY3YjBhN2ZiYTM5M2M0ZjE1ZDViYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLVUlEZWxlZ2F0ZVByaXZhdGUuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tVSURlbGVnYXRlUHJpdmF0
ZS5oCkBAIC0xMDIsNiArMTAyLDcgQEAgdHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9X
S1hSU2Vzc2lvbkZlYXR1cmVGbGFncykgewogICAgIF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFnc1Jl
ZmVyZW5jZVNwYWNlVHlwZUxvY2FsRmxvb3IgPSAxIDw8IDIsCiAgICAgX1dLWFJTZXNzaW9uRmVh
dHVyZUZsYWdzUmVmZXJlbmNlU3BhY2VUeXBlQm91bmRlZEZsb29yID0gMSA8PCAzLAogICAgIF9X
S1hSU2Vzc2lvbkZlYXR1cmVGbGFnc1JlZmVyZW5jZVNwYWNlVHlwZVVuYm91bmRlZCA9IDEgPDwg
NCwKKyAgICBfV0tYUlNlc3Npb25GZWF0dXJlRmxhZ3NIYW5kVHJhY2tpbmcgPSAxIDw8IDUsCiB9
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAK
IHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIF9XS01vZGFsQ29udGFpbmVyRGVjaXNpb24pIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VJRGVsZWdhdGUubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9VSURlbGVnYXRlLm1tCmluZGV4IGYzOWUx
NmNiMDQ2NjQ2YTZmZTM3ZWQzZTY2ZGU2ODJhZTFiYWMyYWQuLjE5NDI0OTA4ODliOGJlODQxNjAw
ODdjMGYzODgzMDJmYmM2ZTk2ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1VJRGVsZWdhdGUubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
VUlEZWxlZ2F0ZS5tbQpAQCAtMTg1NCwxOSArMTg1NCwyMyBAQCBzdGF0aWMgX1dLWFJTZXNzaW9u
TW9kZSB0b1dLWFJTZXNzaW9uTW9kZShQbGF0Zm9ybVhSOjpTZXNzaW9uTW9kZSBtb2RlKQogICAg
IH0KIH0KIAotc3RhdGljIF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFncyB0b1dLWFJTZXNzaW9uRmVh
dHVyZUZsYWdzKFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZSBmZWF0dXJlKQorc3RhdGlj
IF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFncyB0b1dLWFJTZXNzaW9uRmVhdHVyZUZsYWdzKFBsYXRm
b3JtWFI6OlNlc3Npb25GZWF0dXJlIGZlYXR1cmUpCiB7CiAgICAgc3dpdGNoIChmZWF0dXJlKSB7
Ci0gICAgY2FzZSBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU6OlZpZXdlcjoKKyAgICBj
YXNlIFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVWaWV3ZXI6
CiAgICAgICAgIHJldHVybiBfV0tYUlNlc3Npb25GZWF0dXJlRmxhZ3NSZWZlcmVuY2VTcGFjZVR5
cGVWaWV3ZXI7Ci0gICAgY2FzZSBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU6OkxvY2Fs
OgorICAgIGNhc2UgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlw
ZUxvY2FsOgogICAgICAgICByZXR1cm4gX1dLWFJTZXNzaW9uRmVhdHVyZUZsYWdzUmVmZXJlbmNl
U3BhY2VUeXBlTG9jYWw7Ci0gICAgY2FzZSBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU6
OkxvY2FsRmxvb3I6CisgICAgY2FzZSBQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZTo6UmVmZXJl
bmNlU3BhY2VUeXBlTG9jYWxGbG9vcjoKICAgICAgICAgcmV0dXJuIF9XS1hSU2Vzc2lvbkZlYXR1
cmVGbGFnc1JlZmVyZW5jZVNwYWNlVHlwZUxvY2FsRmxvb3I7Ci0gICAgY2FzZSBQbGF0Zm9ybVhS
OjpSZWZlcmVuY2VTcGFjZVR5cGU6OkJvdW5kZWRGbG9vcjoKKyAgICBjYXNlIFBsYXRmb3JtWFI6
OlNlc3Npb25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVCb3VuZGVkRmxvb3I6CiAgICAgICAg
IHJldHVybiBfV0tYUlNlc3Npb25GZWF0dXJlRmxhZ3NSZWZlcmVuY2VTcGFjZVR5cGVCb3VuZGVk
Rmxvb3I7Ci0gICAgY2FzZSBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU6OlVuYm91bmRl
ZDoKKyAgICBjYXNlIFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5
cGVVbmJvdW5kZWQ6CiAgICAgICAgIHJldHVybiBfV0tYUlNlc3Npb25GZWF0dXJlRmxhZ3NSZWZl
cmVuY2VTcGFjZVR5cGVVbmJvdW5kZWQ7CisjaWYgRU5BQkxFKFdFQlhSX0hBTkRTKQorICAgIGNh
c2UgUGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU6OkhhbmRUcmFja2luZzoKKyAgICAgICAgcmV0
dXJuIF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFnc0hhbmRUcmFja2luZzsKKyNlbmRpZgogICAgIH0K
IH0KIApAQCAtMTg4NSwxNSArMTg4OSwxOSBAQCBzdGF0aWMgc3RkOjpvcHRpb25hbDxQbGF0Zm9y
bVhSOjpEZXZpY2U6OkZlYXR1cmVMaXN0PiB0b1BsYXRmb3JtWFJGZWF0dXJlcyhfV0tYUgogCiAg
ICAgUGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0dXJlTGlzdCBmZWF0dXJlczsKICAgICBpZiAoZmVh
dHVyZUZsYWdzICYgX1dLWFJTZXNzaW9uRmVhdHVyZUZsYWdzUmVmZXJlbmNlU3BhY2VUeXBlVmll
d2VyKQotICAgICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VU
eXBlOjpWaWV3ZXIpOworICAgICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6U2Vzc2lv
bkZlYXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZVZpZXdlcik7CiAgICAgaWYgKGZlYXR1cmVGbGFn
cyAmIF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFnc1JlZmVyZW5jZVNwYWNlVHlwZUxvY2FsKQotICAg
ICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpMb2Nh
bCk7CisgICAgICAgIGZlYXR1cmVzLmFwcGVuZChQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZTo6
UmVmZXJlbmNlU3BhY2VUeXBlTG9jYWwpOwogICAgIGlmIChmZWF0dXJlRmxhZ3MgJiBfV0tYUlNl
c3Npb25GZWF0dXJlRmxhZ3NSZWZlcmVuY2VTcGFjZVR5cGVMb2NhbEZsb29yKQotICAgICAgICBm
ZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpMb2NhbEZsb29y
KTsKKyAgICAgICAgZmVhdHVyZXMuYXBwZW5kKFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlOjpS
ZWZlcmVuY2VTcGFjZVR5cGVMb2NhbEZsb29yKTsKICAgICBpZiAoZmVhdHVyZUZsYWdzICYgX1dL
WFJTZXNzaW9uRmVhdHVyZUZsYWdzUmVmZXJlbmNlU3BhY2VUeXBlQm91bmRlZEZsb29yKQotICAg
ICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpCb3Vu
ZGVkRmxvb3IpOworICAgICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6U2Vzc2lvbkZl
YXR1cmU6OlJlZmVyZW5jZVNwYWNlVHlwZUJvdW5kZWRGbG9vcik7CiAgICAgaWYgKGZlYXR1cmVG
bGFncyAmIF9XS1hSU2Vzc2lvbkZlYXR1cmVGbGFnc1JlZmVyZW5jZVNwYWNlVHlwZVVuYm91bmRl
ZCkKLSAgICAgICAgZmVhdHVyZXMuYXBwZW5kKFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlw
ZTo6VW5ib3VuZGVkKTsKKyAgICAgICAgZmVhdHVyZXMuYXBwZW5kKFBsYXRmb3JtWFI6OlNlc3Np
b25GZWF0dXJlOjpSZWZlcmVuY2VTcGFjZVR5cGVVbmJvdW5kZWQpOworI2lmIEVOQUJMRShXRUJY
Ul9IQU5EUykKKyAgICBpZiAoZmVhdHVyZUZsYWdzICYgX1dLWFJTZXNzaW9uRmVhdHVyZUZsYWdz
SGFuZFRyYWNraW5nKQorICAgICAgICBmZWF0dXJlcy5hcHBlbmQoUGxhdGZvcm1YUjo6U2Vzc2lv
bkZlYXR1cmU6OkhhbmRUcmFja2luZyk7CisjZW5kaWYKICAgICByZXR1cm4gZmVhdHVyZXM7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1hSL1BsYXRmb3JtWFJTeXN0
ZW0uY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5jcHAK
aW5kZXggMDVmZWNkYjhmNGViYTg5NTYwMjI2YWQ3NjM4ZGI1MTU0OTMzN2I4Mi4uMDdhMWJiNjU4
OWM4MmUwMDRjZWMzZWMyMDg5MmM0NTg3NjIzNTRlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5jcHAKQEAgLTczLDcgKzczLDcgQEAgdm9pZCBQ
bGF0Zm9ybVhSU3lzdGVtOjplbnVtZXJhdGVJbW1lcnNpdmVYUkRldmljZXMoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChWZWN0b3IKICAgICB9KTsKIH0KIAotdm9pZCBQbGF0Zm9ybVhSU3lzdGVtOjpy
ZXF1ZXN0UGVybWlzc2lvbk9uU2Vzc2lvbkZlYXR1cmVzKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5
T3JpZ2luRGF0YSYgc2VjdXJpdHlPcmlnaW5EYXRhLCBQbGF0Zm9ybVhSOjpTZXNzaW9uTW9kZSBt
b2RlLCBjb25zdCBWZWN0b3I8UGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlPiYgZ3JhbnRl
ZCwgY29uc3QgVmVjdG9yPFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZT4mIGNvbnNlbnRS
ZXF1aXJlZCwgY29uc3QgVmVjdG9yPFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZT4mIGNv
bnNlbnRPcHRpb25hbCwgIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxQbGF0
Zm9ybVhSOjpEZXZpY2U6OkZlYXR1cmVMaXN0PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3Zv
aWQgUGxhdGZvcm1YUlN5c3RlbTo6cmVxdWVzdFBlcm1pc3Npb25PblNlc3Npb25GZWF0dXJlcyhj
b25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHNlY3VyaXR5T3JpZ2luRGF0YSwgUGxh
dGZvcm1YUjo6U2Vzc2lvbk1vZGUgbW9kZSwgY29uc3QgUGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0
dXJlTGlzdCYgZ3JhbnRlZCwgY29uc3QgUGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0dXJlTGlzdCYg
Y29uc2VudFJlcXVpcmVkLCBjb25zdCBQbGF0Zm9ybVhSOjpEZXZpY2U6OkZlYXR1cmVMaXN0JiBj
b25zZW50T3B0aW9uYWwsICBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8UGxh
dGZvcm1YUjo6RGV2aWNlOjpGZWF0dXJlTGlzdD4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7
CiAgICAgYXV0byogeHJDb29yZGluYXRvciA9IFBsYXRmb3JtWFJTeXN0ZW06OnhyQ29vcmRpbmF0
b3IoKTsKICAgICBpZiAoIXhyQ29vcmRpbmF0b3IpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1hSL1BsYXRmb3JtWFJTeXN0ZW0uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1hSL1BsYXRmb3JtWFJTeXN0ZW0uaAppbmRleCAzMDBiMjI0ZjFmZWRiMjU3N2M3ODYzMGM0
MDE2MWM5NzUyOTExYzMxLi42ZmFmYmExMWJjMjM3Nzg2NzlkNTQwNzEwMjBmYmU5MjQ5YWZiMGNl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9YUi9QbGF0Zm9ybVhSU3lzdGVt
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5oCkBA
IC02Myw3ICs2Myw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBNZXNzYWdlIGhhbmRsZXJzCiAgICAg
dm9pZCBlbnVtZXJhdGVJbW1lcnNpdmVYUkRldmljZXMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChW
ZWN0b3I8WFJEZXZpY2VJbmZvPiYmKT4mJik7Ci0gICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbk9u
U2Vzc2lvbkZlYXR1cmVzKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYsIFBsYXRm
b3JtWFI6OlNlc3Npb25Nb2RlLCBjb25zdCBWZWN0b3I8UGxhdGZvcm1YUjo6UmVmZXJlbmNlU3Bh
Y2VUeXBlPiYsIGNvbnN0IFZlY3RvcjxQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU+Jiwg
Y29uc3QgVmVjdG9yPFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZT4mLCAgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFBsYXRmb3JtWFI6OkRldmljZTo6RmVhdHVyZUxp
c3Q+JiYpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uT25TZXNzaW9uRmVhdHVyZXMo
Y29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiwgUGxhdGZvcm1YUjo6U2Vzc2lvbk1v
ZGUsIGNvbnN0IFBsYXRmb3JtWFI6OkRldmljZTo6RmVhdHVyZUxpc3QmLCBjb25zdCBQbGF0Zm9y
bVhSOjpEZXZpY2U6OkZlYXR1cmVMaXN0JiwgY29uc3QgUGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0
dXJlTGlzdCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxQbGF0Zm9ybVhS
OjpEZXZpY2U6OkZlYXR1cmVMaXN0PiYmKT4mJik7CiAgICAgdm9pZCBpbml0aWFsaXplVHJhY2tp
bmdBbmRSZW5kZXJpbmcoKTsKICAgICB2b2lkIHNodXREb3duVHJhY2tpbmdBbmRSZW5kZXJpbmco
KTsKICAgICB2b2lkIHJlcXVlc3RGcmFtZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFBsYXRmb3Jt
WFI6OkRldmljZTo6RnJhbWVEYXRhJiYpPiYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1hSL1BsYXRmb3JtWFJTeXN0ZW0ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9YUi9QbGF0Zm9ybVhSU3lzdGVtLm1lc3NhZ2VzLmluCmluZGV4IGZhZGQxZmRh
NzE4YjNlY2MxZDFhZWMyNmFjN2QzZTdiYjFkYjY2MDcuLmM2ZjQxNWE5OTYzN2ZjZGEwYWYxMjVk
YTYyODJkMjEzY2E2ZDdlOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1hS
L1BsYXRmb3JtWFJTeXN0ZW0ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvWFIvUGxhdGZvcm1YUlN5c3RlbS5tZXNzYWdlcy5pbgpAQCAtMjcsNyArMjcsNyBAQAogCiBt
ZXNzYWdlcyAtPiBQbGF0Zm9ybVhSU3lzdGVtIE5vdFJlZkNvdW50ZWQgewogICAgIEVudW1lcmF0
ZUltbWVyc2l2ZVhSRGV2aWNlcygpIC0+IChWZWN0b3I8V2ViS2l0OjpYUkRldmljZUluZm8+IGRl
dmljZXNJbmZvcykKLSAgICBSZXF1ZXN0UGVybWlzc2lvbk9uU2Vzc2lvbkZlYXR1cmVzKHN0cnVj
dCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgb3JpZ2luLCBQbGF0Zm9ybVhSOjpTZXNzaW9u
TW9kZSBtb2RlLCBWZWN0b3I8UGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlPiBncmFudGVk
LCBWZWN0b3I8UGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlPiBjb25zZW50UmVxdWlyZWQs
IFZlY3RvcjxQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU+IGNvbnNlbnRPcHRpb25hbCkg
LT4gKHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZT4+
IHVzZXJHcmFudGVkKQorICAgIFJlcXVlc3RQZXJtaXNzaW9uT25TZXNzaW9uRmVhdHVyZXMoc3Ry
dWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSBvcmlnaW4sIFBsYXRmb3JtWFI6OlNlc3Np
b25Nb2RlIG1vZGUsIFZlY3RvcjxQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZT4gZ3JhbnRlZCwg
VmVjdG9yPFBsYXRmb3JtWFI6OlNlc3Npb25GZWF0dXJlPiBjb25zZW50UmVxdWlyZWQsIFZlY3Rv
cjxQbGF0Zm9ybVhSOjpTZXNzaW9uRmVhdHVyZT4gY29uc2VudE9wdGlvbmFsKSAtPiAoc3RkOjpv
cHRpb25hbDxWZWN0b3I8UGxhdGZvcm1YUjo6U2Vzc2lvbkZlYXR1cmU+PiB1c2VyR3JhbnRlZCkK
ICAgICBJbml0aWFsaXplVHJhY2tpbmdBbmRSZW5kZXJpbmcoKQogICAgIFNodXREb3duVHJhY2tp
bmdBbmRSZW5kZXJpbmcoKQogICAgIFJlcXVlc3RGcmFtZSgpIC0+IChzdHJ1Y3QgUGxhdGZvcm1Y
Ujo6RGV2aWNlOjpGcmFtZURhdGEgZnJhbWVEYXRhKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU1MDgxZTQ4NmZjYTc0YjYy
ODNmZTExZmQ2NzdkY2RhYzBkNGZhYjEuLjM0NGFiY2VlMTA1NTY3MDE5ZDI0NzFjNDE0MDUwNzlj
YTBjYjRkNWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMi0wNC0wNSAgQWRhIENoYW4gIDxh
ZGFjaGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViWFJdIEFkZCBhIG5ldyBlbnVtIHR5cGUg
dG8gcmVwcmVzZW50IHNlc3Npb24gZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzODgzNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgbGlzdGluZyAiaGFuZC10cmFja2luZyIgYXMgYW4g
b3B0aW9uYWwgZmVhdHVyZSB3aGlsZSB0aGUgZGV2aWNlIGRvZXMgbm90CisgICAgICAgIHN1cHBv
cnQgaXQgYWxsb3dzIHRoZSBzZXNzaW9uIHRvIGJlIGNyZWF0ZWQuCisgICAgICAgIFRlc3QgbGlz
dGluZyAiaGFuZC10cmFja2luZyIgYXMgYSByZXF1aXJlZCBmZWF0dXJlIHdoaWxlIHRoZSBkZXZp
Y2UgZG9lcyBub3QKKyAgICAgICAgc3VwcG9ydCBpdCB3b3VsZCBub3QgY3JlYXRlIHRoZSBzZXNz
aW9uLgorCisgICAgICAgICogaHR0cC93cHQvd2VieHIvcmVzb3VyY2VzL3dlYnhyX3Rlc3RfY29u
c3RhbnRzX3NpbmdsZV92aWV3LmpzOgorICAgICAgICAqIGh0dHAvd3B0L3dlYnhyL3hyRGV2aWNl
X3JlcXVlc3RTZXNzaW9uX2hhbmRfdHJhY2tpbmdfZmVhdHVyZS5odHRwcy1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGh0dHAvd3B0L3dlYnhyL3hyRGV2aWNlX3JlcXVlc3RTZXNzaW9u
X2hhbmRfdHJhY2tpbmdfZmVhdHVyZS5odHRwcy5odG1sOiBBZGRlZC4KKwogMjAyMi0wNC0wNCAg
TWF0dGVvIEZsb3JlcyAgPG1hdHRlb19mbG9yZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFsgaU9T
IF0gaHR0cC93cHQvbWVkaWFyZWNvcmRlci9tdXRlLXRyYWNrcy5odG1sIGlzIGEgZmxha3kgY3Jh
c2gKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYnhyL3Jlc291cmNlcy93ZWJ4
cl90ZXN0X2NvbnN0YW50c19zaW5nbGVfdmlldy5qcyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dl
YnhyL3Jlc291cmNlcy93ZWJ4cl90ZXN0X2NvbnN0YW50c19zaW5nbGVfdmlldy5qcwppbmRleCAw
MzcyMGU1MGU1YTlkZWUxNmE5NTRjMTkzM2JiM2IzNzRhODkwN2E1Li5jYjhiZGZkOTlmMWEwYjEy
MjIxZTgwNGE4NTQxNTAzNjBmNjc2NjM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dw
dC93ZWJ4ci9yZXNvdXJjZXMvd2VieHJfdGVzdF9jb25zdGFudHNfc2luZ2xlX3ZpZXcuanMKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2VieHIvcmVzb3VyY2VzL3dlYnhyX3Rlc3RfY29uc3Rh
bnRzX3NpbmdsZV92aWV3LmpzCkBAIC0xMzQsNiArMTM0LDIwIEBAIGNvbnN0IEFMTF9GRUFUVVJF
UyA9IFsKICAgJ2xpZ2h0LWVzdGltYXRpb24nLAogICAnYW5jaG9ycycsCiAgICdkZXB0aC1zZW5z
aW5nJywKKyAgJ2hhbmQtdHJhY2tpbmcnLAorXTsKKworY29uc3QgQUxMX0ZFQVRVUkVTX05PX0hB
TkRfVFJBQ0tJTkcgPSBbCisgICd2aWV3ZXInLAorICAnbG9jYWwnLAorICAnbG9jYWwtZmxvb3In
LAorICAnYm91bmRlZC1mbG9vcicsCisgICd1bmJvdW5kZWQnLAorICAnaGl0LXRlc3QnLAorICAn
ZG9tLW92ZXJsYXknLAorICAnbGlnaHQtZXN0aW1hdGlvbicsCisgICdhbmNob3JzJywKKyAgJ2Rl
cHRoLXNlbnNpbmcnLAogXTsKIAogY29uc3QgVFJBQ0tFRF9JTU1FUlNJVkVfREVWSUNFID0gewpA
QCAtMTQ2LDYgKzE2MCwxNiBAQCBjb25zdCBUUkFDS0VEX0lNTUVSU0lWRV9ERVZJQ0UgPSB7CiAg
ICAgaW50ZXJhY3Rpb25Nb2RlOiAid29ybGQtc3BhY2UiCiB9OwogCitjb25zdCBUUkFDS0VEX0lN
TUVSU0lWRV9ERVZJQ0VfTk9fSEFORF9UUkFDS0lORyA9IHsKKyAgICBzdXBwb3J0c0ltbWVyc2l2
ZTogdHJ1ZSwKKyAgICBzdXBwb3J0ZWRNb2RlczogWyAiaW5saW5lIiwgImltbWVyc2l2ZS12ciJd
LAorICAgIHZpZXdzOiBWQUxJRF9WSUVXUywKKyAgICB2aWV3ZXJPcmlnaW46IElERU5USVRZX1RS
QU5TRk9STSwKKyAgICBzdXBwb3J0ZWRGZWF0dXJlczogQUxMX0ZFQVRVUkVTX05PX0hBTkRfVFJB
Q0tJTkcsCisgICAgZW52aXJvbm1lbnRCbGVuZE1vZGU6ICJvcGFxdWUiLAorICAgIGludGVyYWN0
aW9uTW9kZTogIndvcmxkLXNwYWNlIgorfTsKKwogY29uc3QgSU1NRVJTSVZFX0FSX0RFVklDRSA9
IHsKICAgc3VwcG9ydHNJbW1lcnNpdmU6IHRydWUsCiAgIHN1cHBvcnRlZE1vZGVzOiBbICJpbmxp
bmUiLCAiaW1tZXJzaXZlLWFyIl0sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93
ZWJ4ci94ckRldmljZV9yZXF1ZXN0U2Vzc2lvbl9oYW5kX3RyYWNraW5nX2ZlYXR1cmUuaHR0cHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2VieHIveHJEZXZpY2VfcmVxdWVz
dFNlc3Npb25faGFuZF90cmFja2luZ19mZWF0dXJlLmh0dHBzLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi41NDczNjcxZjFlNTdlMWJkNGUyOWZmMjMzY2QzYzkyMGVmNGZjNWRlCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2VieHIveHJEZXZpY2VfcmVxdWVzdFNlc3Np
b25faGFuZF90cmFja2luZ19mZWF0dXJlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUg
QEAKKworUEFTUyBUZXN0cyByZXF1ZXN0U2Vzc2lvbiBzaG91bGQgc3VjY2VlZCB3aGVuIGRldmlj
ZSBkb2VzIG5vdCBzdXBwb3J0IGhhbmQtdHJhY2tpbmcgYW5kIGhhbmQtdHJhY2tpbmcgaXMgYW4g
b3B0aW9uYWwgZmVhdHVyZSAtIHdlYmdsCitQQVNTIFRlc3RzIHJlcXVlc3RTZXNzaW9uIHNob3Vs
ZCBzdWNjZWVkIHdoZW4gZGV2aWNlIGRvZXMgbm90IHN1cHBvcnQgaGFuZC10cmFja2luZyBhbmQg
aGFuZC10cmFja2luZyBpcyBhbiBvcHRpb25hbCBmZWF0dXJlIC0gd2ViZ2wyCitQQVNTIFRlc3Rz
IHJlcXVlc3RTZXNzaW9uIHNob3VsZCBmYWlsIHdoZW4gZGV2aWNlIGRvZXMgbm90IHN1cHBvcnQg
aGFuZC10cmFja2luZyBhbmQgaGFuZC10cmFja2luZyBpcyBhIHJlcXVpcmVkIGZlYXR1cmUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2VieHIveHJEZXZpY2VfcmVxdWVzdFNl
c3Npb25faGFuZF90cmFja2luZ19mZWF0dXJlLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRw
L3dwdC93ZWJ4ci94ckRldmljZV9yZXF1ZXN0U2Vzc2lvbl9oYW5kX3RyYWNraW5nX2ZlYXR1cmUu
aHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YmUxNzczYjAyNGExMmJmZDY5NjJmMGEyYzlmM2RmYjU5
MTFiZTZjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2VieHIveHJE
ZXZpY2VfcmVxdWVzdFNlc3Npb25faGFuZF90cmFja2luZ19mZWF0dXJlLmh0dHBzLmh0bWwKQEAg
LTAsMCArMSwyNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9keT4KKyAgPHNjcmlwdCBzcmM9L3Jl
c291cmNlcy90ZXN0aGFybmVzcy5qcz48L3NjcmlwdD4KKyAgPHNjcmlwdCBzcmM9L3Jlc291cmNl
cy90ZXN0aGFybmVzc3JlcG9ydC5qcz48L3NjcmlwdD4KKyAgPHNjcmlwdCBzcmM9InJlc291cmNl
cy93ZWJ4cl91dGlsLmpzIj48L3NjcmlwdD4KKyAgPHNjcmlwdCBzcmM9InJlc291cmNlcy93ZWJ4
cl90ZXN0X2NvbnN0YW50c19zaW5nbGVfdmlldy5qcyI+PC9zY3JpcHQ+CisgIDxzY3JpcHQ+Cisg
ICAgeHJfc2Vzc2lvbl9wcm9taXNlX3Rlc3QoCisgICAgICAiVGVzdHMgcmVxdWVzdFNlc3Npb24g
c2hvdWxkIHN1Y2NlZWQgd2hlbiBkZXZpY2UgZG9lcyBub3Qgc3VwcG9ydCBoYW5kLXRyYWNraW5n
IGFuZCBoYW5kLXRyYWNraW5nIGlzIGFuIG9wdGlvbmFsIGZlYXR1cmUiLAorICAgICAgKHNlc3Np
b24pID0+IHsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoc2Vzc2lvbiwgbnVsbCk7CisgICAg
ICB9LCBUUkFDS0VEX0lNTUVSU0lWRV9ERVZJQ0VfTk9fSEFORF9UUkFDS0lORywgJ2ltbWVyc2l2
ZS12cicsIHsgb3B0aW9uYWxGZWF0dXJlczogWyJoYW5kLXRyYWNraW5nIl0gfSk7CisKKyAgICB4
cl9wcm9taXNlX3Rlc3QoCisgICAgICAiVGVzdHMgcmVxdWVzdFNlc3Npb24gc2hvdWxkIGZhaWwg
d2hlbiBkZXZpY2UgZG9lcyBub3Qgc3VwcG9ydCBoYW5kLXRyYWNraW5nIGFuZCBoYW5kLXRyYWNr
aW5nIGlzIGEgcmVxdWlyZWQgZmVhdHVyZSIsCisgICAgICAodCkgPT4geworICAgICAgICByZXR1
cm4gbmF2aWdhdG9yLnhyLnRlc3Quc2ltdWxhdGVEZXZpY2VDb25uZWN0aW9uKFRSQUNLRURfSU1N
RVJTSVZFX0RFVklDRV9OT19IQU5EX1RSQUNLSU5HKQorICAgICAgICAgIC50aGVuKChjb250cm9s
bGVyKSA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geworICAgICAgICAgICAgbmF2aWdhdG9y
LnhyLnRlc3Quc2ltdWxhdGVVc2VyQWN0aXZhdGlvbigoKSA9PiB7CisgICAgICAgICAgICAgIHJl
c29sdmUocHJvbWlzZV9yZWplY3RzX2RvbSgKKyAgICAgICAgICAgICAgICB0LCAiTm90U3VwcG9y
dGVkRXJyb3IiLAorICAgICAgICAgICAgICAgIG5hdmlnYXRvci54ci5yZXF1ZXN0U2Vzc2lvbign
aW1tZXJzaXZlLXZyJywgeyByZXF1aXJlZEZlYXR1cmVzOiBbImhhbmQtdHJhY2tpbmciXSB9KSkp
OworICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICB9KSk7CisgICAgICB9KTsKKyAgPC9zY3Jp
cHQ+Cis8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>