<?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>225319</bug_id>
          
          <creation_ts>2021-05-03 11:37:07 -0700</creation_ts>
          <short_desc>Dynamically pass capture sandbox extensions to GPUProcess</short_desc>
          <delta_ts>2021-08-09 09:47:39 -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>WebRTC</component>
          <version>WebKit Local 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>
          
          <blocked>228827</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1756249</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-03 11:37:07 -0700</bug_when>
    <thetext>Dynamically pass capture sandbox extensions to GPUProcess</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756251</commentid>
    <comment_count>1</comment_count>
      <attachid>427581</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-03 11:40:27 -0700</bug_when>
    <thetext>Created attachment 427581
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756474</commentid>
    <comment_count>2</comment_count>
      <attachid>427645</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-04 01:45:11 -0700</bug_when>
    <thetext>Created attachment 427645
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756485</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-04 03:06:32 -0700</bug_when>
    <thetext>&lt;rdar://76855590&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756486</commentid>
    <comment_count>4</comment_count>
      <attachid>427647</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-04 03:09:52 -0700</bug_when>
    <thetext>Created attachment 427647
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756540</commentid>
    <comment_count>5</comment_count>
      <attachid>427647</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-05-04 08:35:29 -0700</bug_when>
    <thetext>Comment on attachment 427647
Patch

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

&gt; Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp:190
&gt; +            SandboxExtension::createHandleForMachLookup(&quot;com.apple.applecamerad&quot;_s, WTF::nullopt, appleCameraServicePathSandboxExtensionHandle);
&gt; +            extensions.append(WTFMove(appleCameraServicePathSandboxExtensionHandle));
&gt; +#if HAVE(ADDITIONAL_APPLE_CAMERA_SERVICE)
&gt; +            SandboxExtension::Handle additionalAppleCameraServicePathSandboxExtensionHandle;
&gt; +            SandboxExtension::createHandleForMachLookup(&quot;com.apple.appleh13camerad&quot;_s, WTF::nullopt, additionalAppleCameraServicePathSandboxExtensionHandle);

It would be good to release log and not set `m_hasSentCameraSandboxExtension` if we can&apos;t create either of these like we do for &quot;com.apple.webkit.camera&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756830</commentid>
    <comment_count>6</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-05 00:28:05 -0700</bug_when>
    <thetext>(In reply to Eric Carlson from comment #5)
&gt; Comment on attachment 427647 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=427647&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp:190
&gt; &gt; +            SandboxExtension::createHandleForMachLookup(&quot;com.apple.applecamerad&quot;_s, WTF::nullopt, appleCameraServicePathSandboxExtensionHandle);
&gt; &gt; +            extensions.append(WTFMove(appleCameraServicePathSandboxExtensionHandle));
&gt; &gt; +#if HAVE(ADDITIONAL_APPLE_CAMERA_SERVICE)
&gt; &gt; +            SandboxExtension::Handle additionalAppleCameraServicePathSandboxExtensionHandle;
&gt; &gt; +            SandboxExtension::createHandleForMachLookup(&quot;com.apple.appleh13camerad&quot;_s, WTF::nullopt, additionalAppleCameraServicePathSandboxExtensionHandle);
&gt; 
&gt; It would be good to release log and not set
&gt; `m_hasSentCameraSandboxExtension` if we can&apos;t create either of these like we
&gt; do for &quot;com.apple.webkit.camera&quot;.

OK, will do</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756832</commentid>
    <comment_count>7</comment_count>
      <attachid>427735</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-05 00:30:15 -0700</bug_when>
    <thetext>Created attachment 427735
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756837</commentid>
    <comment_count>8</comment_count>
      <attachid>427737</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-05 01:00:04 -0700</bug_when>
    <thetext>Created attachment 427737
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1756863</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-05 01:53:39 -0700</bug_when>
    <thetext>Committed r277010 (237326@main): &lt;https://commits.webkit.org/237326@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427737.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427581</attachid>
            <date>2021-05-03 11:40:27 -0700</date>
            <delta_ts>2021-05-04 01:45:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225319-20210503204005.patch</filename>
            <type>text/plain</type>
            <size>15750</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ1YWJlYzgyNjc4NzY3Y2Q1
MzRlYjhkOThkZDk1MWNhNzRjNmM4MTIuLjlkYjA0ODNiMWRkY2RkOTI5Mjc4MzZhZGFhNWMyZTRl
NWY1MWE0ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDUtMDMgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIER5bmFtaWNhbGx5IHBhc3MgY2Fw
dHVyZSBzYW5kYm94IGV4dGVuc2lvbnMgdG8gR1BVUHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MzE5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBzdXJlIHRvIHNlbmQgdGhlIHNhbmRi
b3ggZXh0ZW5zaW9ucyBmb3IgYWxsIFdLV2ViVmlldyBhcHBsaWNhdGlvbnMuCisgICAgICAgIFdl
IGRvIHNvIG9uY2Ugd2UgYXJlIHJlYWR5IHRvIHN0YXJ0IGNhcHR1cmUgc2luY2UgVENDIGFjY2Vz
cyBzaG91bGQgaGF2ZSBiZWVuIGdyYW50ZWQgYXQgdGhhdCBwb2ludC4KKyAgICAgICAgTWFudWFs
bHkgdGVzdGVkLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6R1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MpOgorICAgICAgICAo
V2ViS2l0OjpHUFVQcm9jZXNzOjp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL0dQVVByb2Nlc3MuaDoKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVz
c2FnZXMuaW46CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6
ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6R1BVUHJvY2Vzc1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6aXNTYWZhcmkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpzaG91
bGRDcmVhdGVDYW1lcmFTYW5kYm94RXh0ZW5zaW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktp
dDo6c2hvdWxkQ3JlYXRlTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pOiBEZWxldGVkLgorICAg
ICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5Lmg6CisKIDIwMjEtMDUtMDMgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBPcHRpb25TZXQg
Zm9yIE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVVByb2Nlc3MuY3BwCmluZGV4IGVmOTc1NWU0YzU5NTRjNzA4NGQ1NjI5YTliZjFhYjgxYjE1
YzU3Y2YuLmU4Nzc0ZTBkZjRiNzFjNGQxOTE1OTIyMDYzZjFiNjU0NjVjODdiYWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKQEAgLTIwMywxOCArMjAzLDEwIEBAIHZv
aWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MoR1BVUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycyYmIHBhcmFtZXRlcnMpCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHNl
dE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQocGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmlj
ZXMpOwotICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJz
LmNhbWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGVD
YW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQURESVRJ
T05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1l
UGVybWFuZW50bHkocGFyYW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNh
bmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCi0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tF
TikKKyNpZiBQTEFURk9STShNQUMpCiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1h
bmVudGx5KHBhcmFtZXRlcnMubWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lm
IFBMQVRGT1JNKElPUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHko
cGFyYW1ldGVycy50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogI2VuZGlmCisj
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKIAogI2lmIFVTRShTQU5EQk9YX0VYVEVOU0lP
TlNfRk9SX0NBQ0hFX0FORF9URU1QX0RJUkVDVE9SWV9BQ0NFU1MpCiAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuY29udGFpbmVyQ2FjaGVzRGlyZWN0
b3J5RXh0ZW5zaW9uSGFuZGxlKTsKQEAgLTI5MSw2ICsyODMsMTIgQEAgdm9pZCBHUFVQcm9jZXNz
Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dW
aWRlb0NhcHQKICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogfQogCit2b2lkIEdQVVByb2Nlc3M6
OnVwZGF0ZVNhbmRib3hBY2Nlc3MoY29uc3QgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4mIGV4dGVuc2lvbnMpCit7CisgICAgZm9yIChhdXRvJiBleHRlbnNpb24gOiBleHRlbnNpb25z
KQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoZXh0ZW5zaW9u
KTsKK30KKwogdm9pZCBHUFVQcm9jZXNzOjphZGRNb2NrTWVkaWFEZXZpY2UoY29uc3QgV2ViQ29y
ZTo6TW9ja01lZGlhRGV2aWNlJiBkZXZpY2UpCiB7CiAgICAgTW9ja1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI6OmFkZERldmljZShkZXZpY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL0dQVVByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9j
ZXNzLmgKaW5kZXggMjdjZDJjZDQwOGQ2NzJiOTkyNWQzNDVjYjdlNzI2YzIzOGRiMTFhOC4uYmQy
MmZmZTczMGNhNzUzZDgxYWE3NzZiOTRlY2YxMjcwYjU5M2JhMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvR1BVUHJvY2Vzcy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9D
RVNTKQogCiAjaW5jbHVkZSAiQXV4aWxpYXJ5UHJvY2Vzcy5oIgorI2luY2x1ZGUgIlNhbmRib3hF
eHRlbnNpb24uaCIKICNpbmNsdWRlICJXZWJQYWdlUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9MaWJXZWJSVENFbnVtVHJhaXRzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UaW1l
ci5oPgpAQCAtMTIzLDYgKzEyNCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRNb2NrQ2FwdHVy
ZURldmljZXNFbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0T3JpZW50YXRpb25Gb3JNZWRpYUNh
cHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pOwogICAgIHZvaWQgdXBkYXRlQ2FwdHVyZUFjY2Vz
cyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFs
bG93RGlzcGxheUNhcHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXBkYXRlU2FuZGJveEFjY2Vzcyhjb25zdCBW
ZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYpOwogICAgIHZvaWQgYWRkTW9ja01lZGlh
RGV2aWNlKGNvbnN0IFdlYkNvcmU6Ok1vY2tNZWRpYURldmljZSYpOwogICAgIHZvaWQgY2xlYXJN
b2NrTWVkaWFEZXZpY2VzKCk7CiAgICAgdm9pZCByZW1vdmVNb2NrTWVkaWFEZXZpY2UoY29uc3Qg
U3RyaW5nJiBwZXJzaXN0ZW50SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCBkM2YwNzU3NTkxZmQ4NmQwODA4ZDE4N2FlMTczYzZi
YWQzYTJlYzIwLi5hMjliZThkZThjMzM3NDc3MGI3ZTU2MWVjZjJmMGE0OTU0YjQxYjZmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgor
KysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAt
MzksNiArMzksNyBAQCBtZXNzYWdlcyAtPiBHUFVQcm9jZXNzIHsKICNpZiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogICAgIFNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQp
CiAgICAgU2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24p
OworICAgIFVwZGF0ZVNhbmRib3hBY2Nlc3MoVmVjdG9yPFdlYktpdDo6U2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlPiBleHRlbnNpb25zKTsKICAgICBVcGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxs
b3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5
Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lEKSAtPiAoKSBBc3lu
YwogICAgIEFkZE1vY2tNZWRpYURldmljZShzdHJ1Y3QgV2ViQ29yZTo6TW9ja01lZGlhRGV2aWNl
IGRldmljZSk7CiAgICAgQ2xlYXJNb2NrTWVkaWFEZXZpY2VzKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAK
aW5kZXggNWNlNjQ1ZTg3Mjk4NmVmN2JlZjg2OGRhYjJmNTE3YTMyYTlmNTIxYS4uMGM2NWUxMzlj
M2FiMzkzMGYzZWIzZWM2OWE0Mzg1NTFiZjdhNmI2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAt
NDMsMTYgKzQzLDggQEAgdm9pZCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUo
SVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogewogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgZW5jb2RlciA8PCB1c2VNb2NrQ2FwdHVyZURldmljZXM7Ci0gICAgZW5jb2RlciA8PCBj
YW1lcmFTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0gICAg
ZW5jb2RlciA8PCBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsK
LSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgZW5jb2RlciA8
PCBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7
Ci0jZW5kaWYKLSNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykK
ICAgICBlbmNvZGVyIDw8IG1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIFBM
QVRGT1JNKElPUykKLSAgICBlbmNvZGVyIDw8IHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIGVuY29kZXIgPDwgcGFyZW50UElEOwpAQCAtNjgsMjEgKzYwLDkg
QEAgYm9vbCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVy
JiBkZWNvZGVyLCBHUFVQcm9jZXNzQ3JlYXQKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LnVzZU1vY2tDYXB0dXJlRGV2aWNlcykpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW1lcmFT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2lmIEhBVkUo
QVVESVRfVE9LRU4pCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuYXBwbGVDYW1lcmFT
ZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0jaWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQotICAgIGlmICghZGVj
b2Rlci5kZWNvZGUocmVzdWx0LmFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJv
eEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotI2VuZGlm
IC8vIEhBVkUoQVVESVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUocmVzdWx0Lm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotI2lmIFBMQVRGT1JNKElPUykKLSAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKHJlc3VsdC50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogI2VuZGlmCiAjZW5kaWYKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5wYXJl
bnRQSUQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggZDMxMzcxYjQ5ZWNhNzBiYWY4NTIwYTE2N2QzOTBm
OTQwYThlMDNmZS4uOWZmYWZjMTJjOThiZDcxYjQ4ZDEyZjUwYTFlMmQ2NDkwMzcwNGM5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oCkBAIC00MSwxNiArNDEsOCBAQCBzdHJ1Y3QgR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycyB7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgdXNlTW9j
a0NhcHR1cmVEZXZpY2VzIHsgZmFsc2UgfTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
Y2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4
dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0Up
Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZp
Y2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNlbmRpZgotI2VuZGlmIC8vIEhBVkUoQVVE
SVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBtaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBQTEFURk9STShJT1MpCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIFByb2Nlc3NJRCBwYXJlbnRQSUQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwCmluZGV4IGVmYzg1NjdiMmMzYjVj
MTJhNzRlYjhmODMzNDA4YmZlYjU3NWQ3NjMuLjMwYTJhYTNiNzBkMWQxZDNmM2QyNmI1MjlhYTQy
NDcxMTA4MDRhMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQ
cm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9j
ZXNzUHJveHkuY3BwCkBAIC02NCwzNSArNjQsNiBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RhdGljIGlubGluZSBib29sIGlzU2FmYXJpKCkKLXsK
LSAgICBib29sIGlzU2FmYXJpID0gZmFsc2U7Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAg
ICBpZiAoSU9TQXBwbGljYXRpb246OmlzTW9iaWxlU2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJp
ID0gdHJ1ZTsKLSNlbGlmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAoTWFjQXBwbGljYXRpb246Omlz
U2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJpID0gdHJ1ZTsKLSNlbmRpZgotICAgIHJldHVybiBp
c1NhZmFyaTsKLX0KLQotc3RhdGljIGlubGluZSBib29sIHNob3VsZENyZWF0ZUNhbWVyYVNhbmRi
b3hFeHRlbnNpb24oKQotewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgY2hlY2sgZm9yICJjb20u
YXBwbGUuc2VjdXJpdHkuZGV2aWNlLmNhbWVyYSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1Nh
ZmFyaSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0
YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRDcmVhdGVNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbigp
Ci17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZCBjaGVjayBmb3IgImNvbS5hcHBsZS5zZWN1cml0
eS5kZXZpY2UubWljcm9waG9uZSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1NhZmFyaSgpKQot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KICNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKSAmJiBIQVZFKEFVRElUX1RPS0VOKQogc3RhdGljIGJvb2wgc2hvdWxkQ3Jl
YXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVuc2lvbigpCiB7CkBAIC0xNTQsMjggKzEy
NSwxNSBAQCBHUFVQcm9jZXNzUHJveHk6OkdQVVByb2Nlc3NQcm94eSgpCiAgICAgR1BVUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgcGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmljZXMgPSBtX3VzZU1vY2tDYXB0dXJl
RGV2aWNlczsKLQotICAgIGJvb2wgbmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uID0gc2hvdWxk
Q3JlYXRlQ2FtZXJhU2FuZGJveEV4dGVuc2lvbigpOwotICAgIGJvb2wgbmVlZHNNaWNyb3Bob25l
U2FuZGJveEV4dGVuc2lvbiA9IHNob3VsZENyZWF0ZU1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9u
KCk7Ci0gICAgaWYgKG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbikKLSAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndl
YmtpdC5jYW1lcmEiX3MsIHBhcmFtZXRlcnMuY2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7
Ci0gICAgaWYgKG5lZWRzTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pCisjaWYgUExBVEZPUk0o
TUFDKQorICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBhbmQgcmVsYXRlZCBwYXJhbWV0ZXIgd2hl
biA8cmRhcjovL3Byb2JsZW0vMjk0NDgzNjg+IGlzIGZpeGVkLgorICAgIGlmIChNYWNBcHBsaWNh
dGlvbjo6aXNTYWZhcmkoKSkgewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5k
bGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUud2Via2l0Lm1pY3JvcGhvbmUiX3MsIHBh
cmFtZXRlcnMubWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotCi0jaWYgSEFWRShB
VURJVF9UT0tFTikKLSAgICBpZiAobmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uICYmIHNob3Vs
ZENyZWF0ZUFwcGxlQ2FtZXJhU2VydmljZVNhbmRib3hFeHRlbnNpb24oKSkgewotICAgICAgICBT
YW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwKCJjb20uYXBwbGUuYXBw
bGVjYW1lcmFkIl9zLCBXVEY6Om51bGxvcHQsIHBhcmFtZXRlcnMuYXBwbGVDYW1lcmFTZXJ2aWNl
UGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9D
QU1FUkFfU0VSVklDRSkKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
TWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxlaDEzY2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBw
YXJhbWV0ZXJzLmFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lv
bkhhbmRsZSk7Ci0jZW5kaWYKKyAgICAgICAgbV9oYXNTZW50TWljcm9waG9uZVNhbmRib3hFeHRl
bnNpb24gPSB0cnVlOwogICAgIH0KLSNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQotCi0jaWYg
UExBVEZPUk0oSU9TKQotICAgIGlmIChuZWVkc0NhbWVyYVNhbmRib3hFeHRlbnNpb24gfHwgbmVl
ZHNNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbikKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6
Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLnRjY2QiX3MsIFdURjo6bnVsbG9w
dCwgcGFyYW1ldGVycy50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKICNlbmRpZgogI2VuZGlm
IC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCisKICAgICBwYXJhbWV0ZXJzLnBhcmVudFBJRCA9IGdl
dEN1cnJlbnRQcm9jZXNzSUQoKTsKIAogI2lmIFVTRShTQU5EQk9YX0VYVEVOU0lPTlNfRk9SX0NB
Q0hFX0FORF9URU1QX0RJUkVDVE9SWV9BQ0NFU1MpCkBAIC0yMTMsOCArMTcxLDYzIEBAIHZvaWQg
R1BVUHJvY2Vzc1Byb3h5OjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBv
cmllbnRhdGlvbikKICAgICBzZW5kKE1lc3NhZ2VzOjpHUFVQcm9jZXNzOjpTZXRPcmllbnRhdGlv
bkZvck1lZGlhQ2FwdHVyZSB7IG9yaWVudGF0aW9uIH0sIDApOwogfQogCit2b2lkIEdQVVByb2Nl
c3NQcm94eTo6dXBkYXRlU2FuZGJveEFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29s
IGFsbG93VmlkZW9DYXB0dXJlKQoreworICAgIFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5k
bGU+IGV4dGVuc2lvbnM7CisjaWYgUExBVEZPUk0oQ09DT0EpCisKKyAgICBpZiAoYWxsb3dWaWRl
b0NhcHR1cmUgJiYgIW1faGFzU2VudENhbWVyYVNhbmRib3hFeHRlbnNpb24pIHsKKyNpZiBIQVZF
KEFVRElUX1RPS0VOKQorICAgICAgICBpZiAoc2hvdWxkQ3JlYXRlQXBwbGVDYW1lcmFTZXJ2aWNl
U2FuZGJveEV4dGVuc2lvbigpKSB7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5k
bGUgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAg
ICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwKCJjb20uYXBw
bGUuYXBwbGVjYW1lcmFkIl9zLCBXVEY6Om51bGxvcHQsIGFwcGxlQ2FtZXJhU2VydmljZVBhdGhT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAgICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdU
Rk1vdmUoYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyNp
ZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCisgICAgICAgICAgICBTYW5k
Ym94RXh0ZW5zaW9uOjpIYW5kbGUgYWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlOworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRl
SGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxlaDEzY2FtZXJhZCJfcywgV1RGOjpu
dWxsb3B0LCBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25I
YW5kbGUpOworICAgICAgICAgICAgZXh0ZW5zaW9ucy5hcHBlbmQoV1RGTW92ZShhZGRpdGlvbmFs
QXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyNlbmRpZgor
ICAgICAgICB9CisjZW5kaWYgLy8gSEFWRShBVURJVF9UT0tFTikKKyAgICAgICAgU2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgIGJvb2wgZGlk
Q3JlYXRlU2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZv
ckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJraXQuY2FtZXJhIl9zLCBzYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAgUkVMRUFTRV9MT0dfRVJST1JfSUYoZGlkQ3JlYXRlU2Fu
ZGJveEV4dGVuc2lvbiwgV2ViUlRDLCAiVW5hYmxlIHRvIGNyZWF0ZSBjb20uYXBwbGUud2Via2l0
LmNhbWVyYSBzYW5kYm94IGV4dGVuc2lvbiIpOworICAgICAgICBpZiAoZGlkQ3JlYXRlU2FuZGJv
eEV4dGVuc2lvbikgeworICAgICAgICAgICAgbV9oYXNTZW50Q2FtZXJhU2FuZGJveEV4dGVuc2lv
biA9IHRydWU7CisgICAgICAgICAgICBleHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hF
eHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoYWxsb3dBdWRpb0Nh
cHR1cmUgJiYgIW1faGFzU2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlOworICAgICAg
ICBib29sIGRpZENyZWF0ZVNhbmRib3hFeHRlbnNpb24gPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVh
dGVIYW5kbGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUud2Via2l0Lm1pY3JvcGhvbmUi
X3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpOworICAgICAgICBSRUxFQVNFX0xPR19FUlJPUl9J
RihkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uLCBXZWJSVEMsICJVbmFibGUgdG8gY3JlYXRlIGNv
bS5hcHBsZS53ZWJraXQubWljcm9waG9uZSBzYW5kYm94IGV4dGVuc2lvbiIpOworICAgICAgICBp
ZiAoZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICAgICAgbV9oYXNTZW50TWlj
cm9waG9uZVNhbmRib3hFeHRlbnNpb24gPSB0cnVlOworICAgICAgICAgICAgZXh0ZW5zaW9ucy5h
cHBlbmQoV1RGTW92ZShzYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSk7CisgICAgICAgIH0KKyAgICB9
CisKKyNpZiBQTEFURk9STShJT1MpCisgICAgaWYgKCFtX2hhc1NlbnRUQ0NEU2FuZGJveEV4dGVu
c2lvbikgeworICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lv
bkhhbmRsZTsKKyAgICAgICAgYm9vbCBkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLnRj
Y2QiX3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpOworICAgICAgICBSRUxFQVNFX0xPR19FUlJP
Ul9JRihkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uLCBXZWJSVEMsICJVbmFibGUgdG8gY3JlYXRl
IGNvbS5hcHBsZS50Y2NkIHNhbmRib3ggZXh0ZW5zaW9uIik7CisgICAgICAgIGlmIChkaWRDcmVh
dGVTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgICAgICBtX2hhc1NlbnRUQ0NEU2FuZGJveEV4
dGVuc2lvbiA9IHRydWU7CisgICAgICAgICAgICBleHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNh
bmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZiAvLyBQTEFU
Rk9STShJT1MpCisKKyAgICBpZiAoZXh0ZW5zaW9ucy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVy
bjsKKyAgICBzZW5kKE1lc3NhZ2VzOjpHUFVQcm9jZXNzOjpVcGRhdGVTYW5kYm94QWNjZXNzIHsg
ZXh0ZW5zaW9ucyB9LCAwKTsKKyNlbmRpZiAvLyBQTEFURk9STShDT0NPQSkKK30KKwogdm9pZCBH
UFVQcm9jZXNzUHJveHk6OnVwZGF0ZUNhcHR1cmVBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVy
ZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBXZWJD
b3JlOjpQcm9jZXNzSWRlbnRpZmllciBwcm9jZXNzSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKKyAgICB1cGRhdGVTYW5kYm94QWNjZXNzKGFsbG93
QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2FwdHVyZSk7CiAgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpHUFVQcm9jZXNzOjpVcGRhdGVDYXB0dXJlQWNjZXNzIHsgYWxsb3dBdWRpb0Nh
cHR1cmUsIGFsbG93VmlkZW9DYXB0dXJlLCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBwcm9jZXNzSUQg
fSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKaW5kZXggNGJiMDFkZWJiNzg0YmMzOGQwZWE3
MzQ1OTlkNTAzY2Y5YmM1Y2IyNS4uYzljY2E3YmQ1MTc4NzFkOTRjMzg2ODE4MzkxYTkwZTFjOWRj
ZmI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQ
cm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHku
aApAQCAtMTIwLDYgKzEyMCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCB0ZXJtaW5hdGVXZWJQcm9j
ZXNzKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyKTsKICAgICB2b2lkIHByb2Nlc3NJc1JlYWR5
VG9FeGl0KCk7CiAKKyAgICB2b2lkIHVwZGF0ZVNhbmRib3hBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlv
Q2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSk7CisKICNpZiBIQVZFKFZJU0lCSUxJVFlf
UFJPUEFHQVRJT05fVklFVykKICAgICB2b2lkIGRpZENyZWF0ZUNvbnRleHRGb3JWaXNpYmlsaXR5
UHJvcGFnYXRpb24oV2ViUGFnZVByb3h5SWRlbnRpZmllciwgV2ViQ29yZTo6UGFnZUlkZW50aWZp
ZXIsIExheWVySG9zdGluZ0NvbnRleHRJRCk7CiAjZW5kaWYKQEAgLTEyOSw2ICsxMzEsMTEgQEAg
cHJpdmF0ZToKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgbV91c2VNb2NrQ2Fw
dHVyZURldmljZXMgeyBmYWxzZSB9OwogICAgIHVpbnQ2NF90IG1fb3JpZW50YXRpb24geyAwIH07
CisjZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBib29sIG1faGFzU2VudFRDQ0RTYW5k
Ym94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFzU2VudENhbWVyYVNhbmRib3hF
eHRlbnNpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNTZW50TWljcm9waG9uZVNhbmRib3hF
eHRlbnNpb24geyBmYWxzZSB9OwogI2VuZGlmCiAgICAgSGFzaFNldDxQQUw6OlNlc3Npb25JRD4g
bV9zZXNzaW9uSURzOwogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427645</attachid>
            <date>2021-05-04 01:45:11 -0700</date>
            <delta_ts>2021-05-04 03:09:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225319-20210504104509.patch</filename>
            <type>text/plain</type>
            <size>15831</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDkyN2I3YjRkNGM1MjExNTgy
NjQzZjJkNzBhMWEyZDQyYmM0NTM5NzYuLjk3MjM5MjJlODkzYjE4Y2FkOTc5NWRmZWU3Yjc3N2Nk
YmJhMjY4MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDUtMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIER5bmFtaWNhbGx5IHBhc3MgY2Fw
dHVyZSBzYW5kYm94IGV4dGVuc2lvbnMgdG8gR1BVUHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MzE5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBzdXJlIHRvIHNlbmQgdGhlIHNhbmRi
b3ggZXh0ZW5zaW9ucyBmb3IgYWxsIFdLV2ViVmlldyBhcHBsaWNhdGlvbnMuCisgICAgICAgIFdl
IGRvIHNvIG9uY2Ugd2UgYXJlIHJlYWR5IHRvIHN0YXJ0IGNhcHR1cmUgc2luY2UgVENDIGFjY2Vz
cyBzaG91bGQgaGF2ZSBiZWVuIGdyYW50ZWQgYXQgdGhhdCBwb2ludC4KKyAgICAgICAgTWFudWFs
bHkgdGVzdGVkLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6R1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MpOgorICAgICAgICAo
V2ViS2l0OjpHUFVQcm9jZXNzOjp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL0dQVVByb2Nlc3MuaDoKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVz
c2FnZXMuaW46CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6
ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6R1BVUHJvY2Vzc1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6aXNTYWZhcmkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpzaG91
bGRDcmVhdGVDYW1lcmFTYW5kYm94RXh0ZW5zaW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktp
dDo6c2hvdWxkQ3JlYXRlTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pOiBEZWxldGVkLgorICAg
ICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5Lmg6CisKIDIwMjEtMDUtMDMgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBPcHRpb25TZXQg
Zm9yIE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVVByb2Nlc3MuY3BwCmluZGV4IGVmOTc1NWU0YzU5NTRjNzA4NGQ1NjI5YTliZjFhYjgxYjE1
YzU3Y2YuLmU4Nzc0ZTBkZjRiNzFjNGQxOTE1OTIyMDYzZjFiNjU0NjVjODdiYWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKQEAgLTIwMywxOCArMjAzLDEwIEBAIHZv
aWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MoR1BVUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycyYmIHBhcmFtZXRlcnMpCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHNl
dE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQocGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmlj
ZXMpOwotICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJz
LmNhbWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGVD
YW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQURESVRJ
T05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1l
UGVybWFuZW50bHkocGFyYW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNh
bmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCi0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tF
TikKKyNpZiBQTEFURk9STShNQUMpCiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1h
bmVudGx5KHBhcmFtZXRlcnMubWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lm
IFBMQVRGT1JNKElPUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHko
cGFyYW1ldGVycy50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogI2VuZGlmCisj
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKIAogI2lmIFVTRShTQU5EQk9YX0VYVEVOU0lP
TlNfRk9SX0NBQ0hFX0FORF9URU1QX0RJUkVDVE9SWV9BQ0NFU1MpCiAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuY29udGFpbmVyQ2FjaGVzRGlyZWN0
b3J5RXh0ZW5zaW9uSGFuZGxlKTsKQEAgLTI5MSw2ICsyODMsMTIgQEAgdm9pZCBHUFVQcm9jZXNz
Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dW
aWRlb0NhcHQKICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogfQogCit2b2lkIEdQVVByb2Nlc3M6
OnVwZGF0ZVNhbmRib3hBY2Nlc3MoY29uc3QgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4mIGV4dGVuc2lvbnMpCit7CisgICAgZm9yIChhdXRvJiBleHRlbnNpb24gOiBleHRlbnNpb25z
KQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoZXh0ZW5zaW9u
KTsKK30KKwogdm9pZCBHUFVQcm9jZXNzOjphZGRNb2NrTWVkaWFEZXZpY2UoY29uc3QgV2ViQ29y
ZTo6TW9ja01lZGlhRGV2aWNlJiBkZXZpY2UpCiB7CiAgICAgTW9ja1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI6OmFkZERldmljZShkZXZpY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL0dQVVByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9j
ZXNzLmgKaW5kZXggMjdjZDJjZDQwOGQ2NzJiOTkyNWQzNDVjYjdlNzI2YzIzOGRiMTFhOC4uYmQy
MmZmZTczMGNhNzUzZDgxYWE3NzZiOTRlY2YxMjcwYjU5M2JhMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvR1BVUHJvY2Vzcy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9D
RVNTKQogCiAjaW5jbHVkZSAiQXV4aWxpYXJ5UHJvY2Vzcy5oIgorI2luY2x1ZGUgIlNhbmRib3hF
eHRlbnNpb24uaCIKICNpbmNsdWRlICJXZWJQYWdlUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9MaWJXZWJSVENFbnVtVHJhaXRzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UaW1l
ci5oPgpAQCAtMTIzLDYgKzEyNCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRNb2NrQ2FwdHVy
ZURldmljZXNFbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0T3JpZW50YXRpb25Gb3JNZWRpYUNh
cHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pOwogICAgIHZvaWQgdXBkYXRlQ2FwdHVyZUFjY2Vz
cyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFs
bG93RGlzcGxheUNhcHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXBkYXRlU2FuZGJveEFjY2Vzcyhjb25zdCBW
ZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYpOwogICAgIHZvaWQgYWRkTW9ja01lZGlh
RGV2aWNlKGNvbnN0IFdlYkNvcmU6Ok1vY2tNZWRpYURldmljZSYpOwogICAgIHZvaWQgY2xlYXJN
b2NrTWVkaWFEZXZpY2VzKCk7CiAgICAgdm9pZCByZW1vdmVNb2NrTWVkaWFEZXZpY2UoY29uc3Qg
U3RyaW5nJiBwZXJzaXN0ZW50SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCBkM2YwNzU3NTkxZmQ4NmQwODA4ZDE4N2FlMTczYzZi
YWQzYTJlYzIwLi5hMjliZThkZThjMzM3NDc3MGI3ZTU2MWVjZjJmMGE0OTU0YjQxYjZmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgor
KysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAt
MzksNiArMzksNyBAQCBtZXNzYWdlcyAtPiBHUFVQcm9jZXNzIHsKICNpZiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogICAgIFNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQp
CiAgICAgU2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24p
OworICAgIFVwZGF0ZVNhbmRib3hBY2Nlc3MoVmVjdG9yPFdlYktpdDo6U2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlPiBleHRlbnNpb25zKTsKICAgICBVcGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxs
b3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5
Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lEKSAtPiAoKSBBc3lu
YwogICAgIEFkZE1vY2tNZWRpYURldmljZShzdHJ1Y3QgV2ViQ29yZTo6TW9ja01lZGlhRGV2aWNl
IGRldmljZSk7CiAgICAgQ2xlYXJNb2NrTWVkaWFEZXZpY2VzKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAK
aW5kZXggNWNlNjQ1ZTg3Mjk4NmVmN2JlZjg2OGRhYjJmNTE3YTMyYTlmNTIxYS4uMGM2NWUxMzlj
M2FiMzkzMGYzZWIzZWM2OWE0Mzg1NTFiZjdhNmI2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAt
NDMsMTYgKzQzLDggQEAgdm9pZCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUo
SVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogewogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgZW5jb2RlciA8PCB1c2VNb2NrQ2FwdHVyZURldmljZXM7Ci0gICAgZW5jb2RlciA8PCBj
YW1lcmFTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0gICAg
ZW5jb2RlciA8PCBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsK
LSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgZW5jb2RlciA8
PCBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7
Ci0jZW5kaWYKLSNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykK
ICAgICBlbmNvZGVyIDw8IG1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIFBM
QVRGT1JNKElPUykKLSAgICBlbmNvZGVyIDw8IHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIGVuY29kZXIgPDwgcGFyZW50UElEOwpAQCAtNjgsMjEgKzYwLDkg
QEAgYm9vbCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVy
JiBkZWNvZGVyLCBHUFVQcm9jZXNzQ3JlYXQKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LnVzZU1vY2tDYXB0dXJlRGV2aWNlcykpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW1lcmFT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2lmIEhBVkUo
QVVESVRfVE9LRU4pCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuYXBwbGVDYW1lcmFT
ZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0jaWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQotICAgIGlmICghZGVj
b2Rlci5kZWNvZGUocmVzdWx0LmFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJv
eEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotI2VuZGlm
IC8vIEhBVkUoQVVESVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUocmVzdWx0Lm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotI2lmIFBMQVRGT1JNKElPUykKLSAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKHJlc3VsdC50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogI2VuZGlmCiAjZW5kaWYKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5wYXJl
bnRQSUQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggZDMxMzcxYjQ5ZWNhNzBiYWY4NTIwYTE2N2QzOTBm
OTQwYThlMDNmZS4uOWZmYWZjMTJjOThiZDcxYjQ4ZDEyZjUwYTFlMmQ2NDkwMzcwNGM5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oCkBAIC00MSwxNiArNDEsOCBAQCBzdHJ1Y3QgR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycyB7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgdXNlTW9j
a0NhcHR1cmVEZXZpY2VzIHsgZmFsc2UgfTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
Y2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4
dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0Up
Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZp
Y2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNlbmRpZgotI2VuZGlmIC8vIEhBVkUoQVVE
SVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBtaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBQTEFURk9STShJT1MpCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIFByb2Nlc3NJRCBwYXJlbnRQSUQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwCmluZGV4IGVmYzg1NjdiMmMzYjVj
MTJhNzRlYjhmODMzNDA4YmZlYjU3NWQ3NjMuLjNiOWRmODBmZDFkOGE4M2M3MjA4MmE0MWZhMTY1
ZmM2MTE2YzBlZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQ
cm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9j
ZXNzUHJveHkuY3BwCkBAIC02NCwzNSArNjQsNiBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RhdGljIGlubGluZSBib29sIGlzU2FmYXJpKCkKLXsK
LSAgICBib29sIGlzU2FmYXJpID0gZmFsc2U7Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAg
ICBpZiAoSU9TQXBwbGljYXRpb246OmlzTW9iaWxlU2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJp
ID0gdHJ1ZTsKLSNlbGlmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAoTWFjQXBwbGljYXRpb246Omlz
U2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJpID0gdHJ1ZTsKLSNlbmRpZgotICAgIHJldHVybiBp
c1NhZmFyaTsKLX0KLQotc3RhdGljIGlubGluZSBib29sIHNob3VsZENyZWF0ZUNhbWVyYVNhbmRi
b3hFeHRlbnNpb24oKQotewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgY2hlY2sgZm9yICJjb20u
YXBwbGUuc2VjdXJpdHkuZGV2aWNlLmNhbWVyYSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1Nh
ZmFyaSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0
YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRDcmVhdGVNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbigp
Ci17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZCBjaGVjayBmb3IgImNvbS5hcHBsZS5zZWN1cml0
eS5kZXZpY2UubWljcm9waG9uZSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1NhZmFyaSgpKQot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KICNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKSAmJiBIQVZFKEFVRElUX1RPS0VOKQogc3RhdGljIGJvb2wgc2hvdWxkQ3Jl
YXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVuc2lvbigpCiB7CkBAIC0xNTQsMjggKzEy
NSwxNSBAQCBHUFVQcm9jZXNzUHJveHk6OkdQVVByb2Nlc3NQcm94eSgpCiAgICAgR1BVUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgcGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmljZXMgPSBtX3VzZU1vY2tDYXB0dXJl
RGV2aWNlczsKLQotICAgIGJvb2wgbmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uID0gc2hvdWxk
Q3JlYXRlQ2FtZXJhU2FuZGJveEV4dGVuc2lvbigpOwotICAgIGJvb2wgbmVlZHNNaWNyb3Bob25l
U2FuZGJveEV4dGVuc2lvbiA9IHNob3VsZENyZWF0ZU1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9u
KCk7Ci0gICAgaWYgKG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbikKLSAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndl
YmtpdC5jYW1lcmEiX3MsIHBhcmFtZXRlcnMuY2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7
Ci0gICAgaWYgKG5lZWRzTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pCisjaWYgUExBVEZPUk0o
TUFDKQorICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBhbmQgcmVsYXRlZCBwYXJhbWV0ZXIgd2hl
biA8cmRhcjovL3Byb2JsZW0vMjk0NDgzNjg+IGlzIGZpeGVkLgorICAgIGlmIChNYWNBcHBsaWNh
dGlvbjo6aXNTYWZhcmkoKSAmJiAhbV91c2VNb2NrQ2FwdHVyZURldmljZXMpIHsKICAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFw
cGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBwYXJhbWV0ZXJzLm1pY3JvcGhvbmVTYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKTsKLQotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0gICAgaWYgKG5lZWRzQ2Ft
ZXJhU2FuZGJveEV4dGVuc2lvbiAmJiBzaG91bGRDcmVhdGVBcHBsZUNhbWVyYVNlcnZpY2VTYW5k
Ym94RXh0ZW5zaW9uKCkpIHsKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxl
Rm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxlY2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBw
YXJhbWV0ZXJzLmFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsK
LSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgICAgIFNhbmRi
b3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5hcHBsZWgx
M2NhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgcGFyYW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1l
cmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCisgICAgICAgIG1f
aGFzU2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uID0gdHJ1ZTsKICAgICB9Ci0jZW5kaWYg
Ly8gSEFWRShBVURJVF9UT0tFTikKLQotI2lmIFBMQVRGT1JNKElPUykKLSAgICBpZiAobmVlZHND
YW1lcmFTYW5kYm94RXh0ZW5zaW9uIHx8IG5lZWRzTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24p
Ci0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNv
bS5hcHBsZS50Y2NkIl9zLCBXVEY6Om51bGxvcHQsIHBhcmFtZXRlcnMudGNjU2FuZGJveEV4dGVu
c2lvbkhhbmRsZSk7CiAjZW5kaWYKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQorCiAg
ICAgcGFyYW1ldGVycy5wYXJlbnRQSUQgPSBnZXRDdXJyZW50UHJvY2Vzc0lEKCk7CiAKICNpZiBV
U0UoU0FOREJPWF9FWFRFTlNJT05TX0ZPUl9DQUNIRV9BTkRfVEVNUF9ESVJFQ1RPUllfQUNDRVNT
KQpAQCAtMjEzLDggKzE3MSw2NiBAQCB2b2lkIEdQVVByb2Nlc3NQcm94eTo6c2V0T3JpZW50YXRp
b25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pCiAgICAgc2VuZChNZXNzYWdl
czo6R1BVUHJvY2Vzczo6U2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUgeyBvcmllbnRhdGlv
biB9LCAwKTsKIH0KIAordm9pZCBHUFVQcm9jZXNzUHJveHk6OnVwZGF0ZVNhbmRib3hBY2Nlc3Mo
Ym9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSkKK3sKKyAgICBp
ZiAobV91c2VNb2NrQ2FwdHVyZURldmljZXMpCisgICAgICAgIHJldHVybjsKKworICAgIFZlY3Rv
cjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+IGV4dGVuc2lvbnM7CisjaWYgUExBVEZPUk0oQ09D
T0EpCisKKyAgICBpZiAoYWxsb3dWaWRlb0NhcHR1cmUgJiYgIW1faGFzU2VudENhbWVyYVNhbmRi
b3hFeHRlbnNpb24pIHsKKyNpZiBIQVZFKEFVRElUX1RPS0VOKQorICAgICAgICBpZiAoc2hvdWxk
Q3JlYXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVuc2lvbigpKSB7CisgICAgICAgICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5k
bGVGb3JNYWNoTG9va3VwKCJjb20uYXBwbGUuYXBwbGVjYW1lcmFkIl9zLCBXVEY6Om51bGxvcHQs
IGFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAg
ICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKTsKKyNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NF
UlZJQ0UpCisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYWRkaXRpb25hbEFw
cGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOworICAgICAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmFw
cGxlaDEzY2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2
aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOworICAgICAgICAgICAgZXh0ZW5zaW9ucy5h
cHBlbmQoV1RGTW92ZShhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRl
bnNpb25IYW5kbGUpKTsKKyNlbmRpZgorICAgICAgICB9CisjZW5kaWYgLy8gSEFWRShBVURJVF9U
T0tFTikKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25I
YW5kbGU7CisgICAgICAgIGJvb2wgZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJr
aXQuY2FtZXJhIl9zLCBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAgUkVMRUFTRV9M
T0dfRVJST1JfSUYoZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbiwgV2ViUlRDLCAiVW5hYmxlIHRv
IGNyZWF0ZSBjb20uYXBwbGUud2Via2l0LmNhbWVyYSBzYW5kYm94IGV4dGVuc2lvbiIpOworICAg
ICAgICBpZiAoZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICAgICAgbV9oYXNT
ZW50Q2FtZXJhU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7CisgICAgICAgICAgICBleHRlbnNpb25z
LmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorICAg
IH0KKyAgICBpZiAoYWxsb3dBdWRpb0NhcHR1cmUgJiYgIW1faGFzU2VudE1pY3JvcGhvbmVTYW5k
Ym94RXh0ZW5zaW9uKSB7CisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94
RXh0ZW5zaW9uSGFuZGxlOworICAgICAgICBib29sIGRpZENyZWF0ZVNhbmRib3hFeHRlbnNpb24g
PSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20u
YXBwbGUud2Via2l0Lm1pY3JvcGhvbmUiX3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpOworICAg
ICAgICBSRUxFQVNFX0xPR19FUlJPUl9JRihkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uLCBXZWJS
VEMsICJVbmFibGUgdG8gY3JlYXRlIGNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSBzYW5kYm94
IGV4dGVuc2lvbiIpOworICAgICAgICBpZiAoZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbikgewor
ICAgICAgICAgICAgbV9oYXNTZW50TWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24gPSB0cnVlOwor
ICAgICAgICAgICAgZXh0ZW5zaW9ucy5hcHBlbmQoV1RGTW92ZShzYW5kYm94RXh0ZW5zaW9uSGFu
ZGxlKSk7CisgICAgICAgIH0KKyAgICB9CisKKyNpZiBQTEFURk9STShJT1MpCisgICAgaWYgKCFt
X2hhc1NlbnRUQ0NEU2FuZGJveEV4dGVuc2lvbikgeworICAgICAgICBTYW5kYm94RXh0ZW5zaW9u
OjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKKyAgICAgICAgYm9vbCBkaWRDcmVhdGVT
YW5kYm94RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJp
Y0V4dGVuc2lvbigiY29tLmFwcGxlLnRjY2QiX3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwor
ICAgICAgICBSRUxFQVNFX0xPR19FUlJPUl9JRihkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uLCBX
ZWJSVEMsICJVbmFibGUgdG8gY3JlYXRlIGNvbS5hcHBsZS50Y2NkIHNhbmRib3ggZXh0ZW5zaW9u
Iik7CisgICAgICAgIGlmIChkaWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgICAg
ICBtX2hhc1NlbnRUQ0NEU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7CisgICAgICAgICAgICBleHRl
bnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAg
fQorICAgIH0KKyNlbmRpZiAvLyBQTEFURk9STShJT1MpCisKKyAgICBpZiAoZXh0ZW5zaW9ucy5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKyAgICBzZW5kKE1lc3NhZ2VzOjpHUFVQcm9jZXNz
OjpVcGRhdGVTYW5kYm94QWNjZXNzIHsgZXh0ZW5zaW9ucyB9LCAwKTsKKyNlbmRpZiAvLyBQTEFU
Rk9STShDT0NPQSkKK30KKwogdm9pZCBHUFVQcm9jZXNzUHJveHk6OnVwZGF0ZUNhcHR1cmVBY2Nl
c3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBh
bGxvd0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBwcm9jZXNzSUQs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKKyAgICB1
cGRhdGVTYW5kYm94QWNjZXNzKGFsbG93QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2FwdHVyZSk7
CiAgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpHUFVQcm9jZXNzOjpVcGRhdGVDYXB0
dXJlQWNjZXNzIHsgYWxsb3dBdWRpb0NhcHR1cmUsIGFsbG93VmlkZW9DYXB0dXJlLCBhbGxvd0Rp
c3BsYXlDYXB0dXJlLCBwcm9jZXNzSUQgfSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1By
b3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKaW5k
ZXggNGJiMDFkZWJiNzg0YmMzOGQwZWE3MzQ1OTlkNTAzY2Y5YmM1Y2IyNS4uYzljY2E3YmQ1MTc4
NzFkOTRjMzg2ODE4MzkxYTkwZTFjOWRjZmI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaApAQCAtMTIwLDYgKzEyMCw4IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCB0ZXJtaW5hdGVXZWJQcm9jZXNzKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyKTsK
ICAgICB2b2lkIHByb2Nlc3NJc1JlYWR5VG9FeGl0KCk7CiAKKyAgICB2b2lkIHVwZGF0ZVNhbmRi
b3hBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSk7
CisKICNpZiBIQVZFKFZJU0lCSUxJVFlfUFJPUEFHQVRJT05fVklFVykKICAgICB2b2lkIGRpZENy
ZWF0ZUNvbnRleHRGb3JWaXNpYmlsaXR5UHJvcGFnYXRpb24oV2ViUGFnZVByb3h5SWRlbnRpZmll
ciwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIExheWVySG9zdGluZ0NvbnRleHRJRCk7CiAjZW5k
aWYKQEAgLTEyOSw2ICsxMzEsMTEgQEAgcHJpdmF0ZToKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogICAgIGJvb2wgbV91c2VNb2NrQ2FwdHVyZURldmljZXMgeyBmYWxzZSB9OwogICAgIHVpbnQ2
NF90IG1fb3JpZW50YXRpb24geyAwIH07CisjZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICBib29sIG1faGFzU2VudFRDQ0RTYW5kYm94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKKyAgICBib29s
IG1faGFzU2VudENhbWVyYVNhbmRib3hFeHRlbnNpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9o
YXNTZW50TWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24geyBmYWxzZSB9OwogI2VuZGlmCiAgICAg
SGFzaFNldDxQQUw6OlNlc3Npb25JRD4gbV9zZXNzaW9uSURzOwogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427647</attachid>
            <date>2021-05-04 03:09:52 -0700</date>
            <delta_ts>2021-05-05 00:30:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225319-20210504120945.patch</filename>
            <type>text/plain</type>
            <size>15803</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDkyN2I3YjRkNGM1MjExNTgy
NjQzZjJkNzBhMWEyZDQyYmM0NTM5NzYuLjk3MjM5MjJlODkzYjE4Y2FkOTc5NWRmZWU3Yjc3N2Nk
YmJhMjY4MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDUtMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIER5bmFtaWNhbGx5IHBhc3MgY2Fw
dHVyZSBzYW5kYm94IGV4dGVuc2lvbnMgdG8gR1BVUHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MzE5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBzdXJlIHRvIHNlbmQgdGhlIHNhbmRi
b3ggZXh0ZW5zaW9ucyBmb3IgYWxsIFdLV2ViVmlldyBhcHBsaWNhdGlvbnMuCisgICAgICAgIFdl
IGRvIHNvIG9uY2Ugd2UgYXJlIHJlYWR5IHRvIHN0YXJ0IGNhcHR1cmUgc2luY2UgVENDIGFjY2Vz
cyBzaG91bGQgaGF2ZSBiZWVuIGdyYW50ZWQgYXQgdGhhdCBwb2ludC4KKyAgICAgICAgTWFudWFs
bHkgdGVzdGVkLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6R1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MpOgorICAgICAgICAo
V2ViS2l0OjpHUFVQcm9jZXNzOjp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL0dQVVByb2Nlc3MuaDoKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVz
c2FnZXMuaW46CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6
ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6R1BVUHJvY2Vzc1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVTYW5kYm94QWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6R1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKToKKyAg
ICAgICAgKFdlYktpdDo6aXNTYWZhcmkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpzaG91
bGRDcmVhdGVDYW1lcmFTYW5kYm94RXh0ZW5zaW9uKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktp
dDo6c2hvdWxkQ3JlYXRlTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pOiBEZWxldGVkLgorICAg
ICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5Lmg6CisKIDIwMjEtMDUtMDMgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBPcHRpb25TZXQg
Zm9yIE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L0dQVVByb2Nlc3MuY3BwCmluZGV4IGVmOTc1NWU0YzU5NTRjNzA4NGQ1NjI5YTliZjFhYjgxYjE1
YzU3Y2YuLmU4Nzc0ZTBkZjRiNzFjNGQxOTE1OTIyMDYzZjFiNjU0NjVjODdiYWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKQEAgLTIwMywxOCArMjAzLDEwIEBAIHZv
aWQgR1BVUHJvY2Vzczo6aW5pdGlhbGl6ZUdQVVByb2Nlc3MoR1BVUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycyYmIHBhcmFtZXRlcnMpCiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHNl
dE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQocGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmlj
ZXMpOwotICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJz
LmNhbWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuYXBwbGVD
YW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQURESVRJ
T05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1l
UGVybWFuZW50bHkocGFyYW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNh
bmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCi0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tF
TikKKyNpZiBQTEFURk9STShNQUMpCiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1h
bmVudGx5KHBhcmFtZXRlcnMubWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lm
IFBMQVRGT1JNKElPUykKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHko
cGFyYW1ldGVycy50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogI2VuZGlmCisj
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKIAogI2lmIFVTRShTQU5EQk9YX0VYVEVOU0lP
TlNfRk9SX0NBQ0hFX0FORF9URU1QX0RJUkVDVE9SWV9BQ0NFU1MpCiAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuY29udGFpbmVyQ2FjaGVzRGlyZWN0
b3J5RXh0ZW5zaW9uSGFuZGxlKTsKQEAgLTI5MSw2ICsyODMsMTIgQEAgdm9pZCBHUFVQcm9jZXNz
Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dW
aWRlb0NhcHQKICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogfQogCit2b2lkIEdQVVByb2Nlc3M6
OnVwZGF0ZVNhbmRib3hBY2Nlc3MoY29uc3QgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4mIGV4dGVuc2lvbnMpCit7CisgICAgZm9yIChhdXRvJiBleHRlbnNpb24gOiBleHRlbnNpb25z
KQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoZXh0ZW5zaW9u
KTsKK30KKwogdm9pZCBHUFVQcm9jZXNzOjphZGRNb2NrTWVkaWFEZXZpY2UoY29uc3QgV2ViQ29y
ZTo6TW9ja01lZGlhRGV2aWNlJiBkZXZpY2UpCiB7CiAgICAgTW9ja1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI6OmFkZERldmljZShkZXZpY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9H
UFVQcm9jZXNzL0dQVVByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9j
ZXNzLmgKaW5kZXggMjdjZDJjZDQwOGQ2NzJiOTkyNWQzNDVjYjdlNzI2YzIzOGRiMTFhOC4uYmQy
MmZmZTczMGNhNzUzZDgxYWE3NzZiOTRlY2YxMjcwYjU5M2JhMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvR1BVUHJvY2Vzcy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaWYgRU5BQkxFKEdQVV9QUk9D
RVNTKQogCiAjaW5jbHVkZSAiQXV4aWxpYXJ5UHJvY2Vzcy5oIgorI2luY2x1ZGUgIlNhbmRib3hF
eHRlbnNpb24uaCIKICNpbmNsdWRlICJXZWJQYWdlUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9MaWJXZWJSVENFbnVtVHJhaXRzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UaW1l
ci5oPgpAQCAtMTIzLDYgKzEyNCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRNb2NrQ2FwdHVy
ZURldmljZXNFbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0T3JpZW50YXRpb25Gb3JNZWRpYUNh
cHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pOwogICAgIHZvaWQgdXBkYXRlQ2FwdHVyZUFjY2Vz
cyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFs
bG93RGlzcGxheUNhcHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXBkYXRlU2FuZGJveEFjY2Vzcyhjb25zdCBW
ZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYpOwogICAgIHZvaWQgYWRkTW9ja01lZGlh
RGV2aWNlKGNvbnN0IFdlYkNvcmU6Ok1vY2tNZWRpYURldmljZSYpOwogICAgIHZvaWQgY2xlYXJN
b2NrTWVkaWFEZXZpY2VzKCk7CiAgICAgdm9pZCByZW1vdmVNb2NrTWVkaWFEZXZpY2UoY29uc3Qg
U3RyaW5nJiBwZXJzaXN0ZW50SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCBkM2YwNzU3NTkxZmQ4NmQwODA4ZDE4N2FlMTczYzZi
YWQzYTJlYzIwLi5hMjliZThkZThjMzM3NDc3MGI3ZTU2MWVjZjJmMGE0OTU0YjQxYjZmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgor
KysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAt
MzksNiArMzksNyBAQCBtZXNzYWdlcyAtPiBHUFVQcm9jZXNzIHsKICNpZiBFTkFCTEUoTUVESUFf
U1RSRUFNKQogICAgIFNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQp
CiAgICAgU2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24p
OworICAgIFVwZGF0ZVNhbmRib3hBY2Nlc3MoVmVjdG9yPFdlYktpdDo6U2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlPiBleHRlbnNpb25zKTsKICAgICBVcGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxs
b3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5
Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lEKSAtPiAoKSBBc3lu
YwogICAgIEFkZE1vY2tNZWRpYURldmljZShzdHJ1Y3QgV2ViQ29yZTo6TW9ja01lZGlhRGV2aWNl
IGRldmljZSk7CiAgICAgQ2xlYXJNb2NrTWVkaWFEZXZpY2VzKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9T
b3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAK
aW5kZXggNWNlNjQ1ZTg3Mjk4NmVmN2JlZjg2OGRhYjJmNTE3YTMyYTlmNTIxYS4uMGM2NWUxMzlj
M2FiMzkzMGYzZWIzZWM2OWE0Mzg1NTFiZjdhNmI2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAt
NDMsMTYgKzQzLDggQEAgdm9pZCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUo
SVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogewogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgZW5jb2RlciA8PCB1c2VNb2NrQ2FwdHVyZURldmljZXM7Ci0gICAgZW5jb2RlciA8PCBj
YW1lcmFTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIEhBVkUoQVVESVRfVE9LRU4pCi0gICAg
ZW5jb2RlciA8PCBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsK
LSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgZW5jb2RlciA8
PCBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7
Ci0jZW5kaWYKLSNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykK
ICAgICBlbmNvZGVyIDw8IG1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwotI2lmIFBM
QVRGT1JNKElPUykKLSAgICBlbmNvZGVyIDw8IHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIGVuY29kZXIgPDwgcGFyZW50UElEOwpAQCAtNjgsMjEgKzYwLDkg
QEAgYm9vbCBHUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVy
JiBkZWNvZGVyLCBHUFVQcm9jZXNzQ3JlYXQKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LnVzZU1vY2tDYXB0dXJlRGV2aWNlcykpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKLSAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW1lcmFT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotI2lmIEhBVkUo
QVVESVRfVE9LRU4pCi0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuYXBwbGVDYW1lcmFT
ZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7
Ci0jaWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQotICAgIGlmICghZGVj
b2Rlci5kZWNvZGUocmVzdWx0LmFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJv
eEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNlbmRpZgotI2VuZGlm
IC8vIEhBVkUoQVVESVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUocmVzdWx0Lm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotI2lmIFBMQVRGT1JNKElPUykKLSAgICBpZiAoIWRlY29kZXIuZGVj
b2RlKHJlc3VsdC50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZh
bHNlOwogI2VuZGlmCiAjZW5kaWYKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5wYXJl
bnRQSUQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggZDMxMzcxYjQ5ZWNhNzBiYWY4NTIwYTE2N2QzOTBm
OTQwYThlMDNmZS4uOWZmYWZjMTJjOThiZDcxYjQ4ZDEyZjUwYTFlMmQ2NDkwMzcwNGM5MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oCkBAIC00MSwxNiArNDEsOCBAQCBzdHJ1Y3QgR1BVUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycyB7CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGJvb2wgdXNlTW9j
a0NhcHR1cmVEZXZpY2VzIHsgZmFsc2UgfTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
Y2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4
dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0Up
Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZp
Y2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNlbmRpZgotI2VuZGlmIC8vIEhBVkUoQVVE
SVRfVE9LRU4pCisjaWYgUExBVEZPUk0oTUFDKQogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBtaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBQTEFURk9STShJT1MpCi0g
ICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHRjY1NhbmRib3hFeHRlbnNpb25IYW5kbGU7CiAj
ZW5kaWYKICNlbmRpZgogICAgIFByb2Nlc3NJRCBwYXJlbnRQSUQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwCmluZGV4IGVmYzg1NjdiMmMzYjVj
MTJhNzRlYjhmODMzNDA4YmZlYjU3NWQ3NjMuLmY1NTQzNGY4NDI5NjRiNjUzZTkwNmZjYTgyMzJi
ZTM2M2NiN2RjMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQ
cm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9j
ZXNzUHJveHkuY3BwCkBAIC02NCwzNSArNjQsNiBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RhdGljIGlubGluZSBib29sIGlzU2FmYXJpKCkKLXsK
LSAgICBib29sIGlzU2FmYXJpID0gZmFsc2U7Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAg
ICBpZiAoSU9TQXBwbGljYXRpb246OmlzTW9iaWxlU2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJp
ID0gdHJ1ZTsKLSNlbGlmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAoTWFjQXBwbGljYXRpb246Omlz
U2FmYXJpKCkpCi0gICAgICAgIGlzU2FmYXJpID0gdHJ1ZTsKLSNlbmRpZgotICAgIHJldHVybiBp
c1NhZmFyaTsKLX0KLQotc3RhdGljIGlubGluZSBib29sIHNob3VsZENyZWF0ZUNhbWVyYVNhbmRi
b3hFeHRlbnNpb24oKQotewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgY2hlY2sgZm9yICJjb20u
YXBwbGUuc2VjdXJpdHkuZGV2aWNlLmNhbWVyYSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1Nh
ZmFyaSgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0
YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRDcmVhdGVNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbigp
Ci17Ci0gICAgLy8gRklYTUU6IFdlIHNob3VsZCBjaGVjayBmb3IgImNvbS5hcHBsZS5zZWN1cml0
eS5kZXZpY2UubWljcm9waG9uZSIgZW50aXRsZW1lbnQuCi0gICAgaWYgKCFpc1NhZmFyaSgpKQot
ICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KICNpZiBFTkFCTEUo
TUVESUFfU1RSRUFNKSAmJiBIQVZFKEFVRElUX1RPS0VOKQogc3RhdGljIGJvb2wgc2hvdWxkQ3Jl
YXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVuc2lvbigpCiB7CkBAIC0xNTQsMjggKzEy
NSwxNSBAQCBHUFVQcm9jZXNzUHJveHk6OkdQVVByb2Nlc3NQcm94eSgpCiAgICAgR1BVUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CiAgICAgcGFyYW1ldGVycy51c2VNb2NrQ2FwdHVyZURldmljZXMgPSBtX3VzZU1vY2tDYXB0dXJl
RGV2aWNlczsKLQotICAgIGJvb2wgbmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uID0gc2hvdWxk
Q3JlYXRlQ2FtZXJhU2FuZGJveEV4dGVuc2lvbigpOwotICAgIGJvb2wgbmVlZHNNaWNyb3Bob25l
U2FuZGJveEV4dGVuc2lvbiA9IHNob3VsZENyZWF0ZU1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9u
KCk7Ci0gICAgaWYgKG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbikKLSAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndl
YmtpdC5jYW1lcmEiX3MsIHBhcmFtZXRlcnMuY2FtZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7
Ci0gICAgaWYgKG5lZWRzTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pCisjaWYgUExBVEZPUk0o
TUFDKQorICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBhbmQgcmVsYXRlZCBwYXJhbWV0ZXIgd2hl
biA8cmRhcjovL3Byb2JsZW0vMjk0NDgzNjg+IGlzIGZpeGVkLgorICAgIGlmIChNYWNBcHBsaWNh
dGlvbjo6aXNTYWZhcmkoKSkgewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5k
bGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUud2Via2l0Lm1pY3JvcGhvbmUiX3MsIHBh
cmFtZXRlcnMubWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotCi0jaWYgSEFWRShB
VURJVF9UT0tFTikKLSAgICBpZiAobmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uICYmIHNob3Vs
ZENyZWF0ZUFwcGxlQ2FtZXJhU2VydmljZVNhbmRib3hFeHRlbnNpb24oKSkgewotICAgICAgICBT
YW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwKCJjb20uYXBwbGUuYXBw
bGVjYW1lcmFkIl9zLCBXVEY6Om51bGxvcHQsIHBhcmFtZXRlcnMuYXBwbGVDYW1lcmFTZXJ2aWNl
UGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwotI2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9D
QU1FUkFfU0VSVklDRSkKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
TWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxlaDEzY2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBw
YXJhbWV0ZXJzLmFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lv
bkhhbmRsZSk7Ci0jZW5kaWYKKyAgICAgICAgbV9oYXNTZW50TWljcm9waG9uZVNhbmRib3hFeHRl
bnNpb24gPSB0cnVlOwogICAgIH0KLSNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQotCi0jaWYg
UExBVEZPUk0oSU9TKQotICAgIGlmIChuZWVkc0NhbWVyYVNhbmRib3hFeHRlbnNpb24gfHwgbmVl
ZHNNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbikKLSAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6
Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLnRjY2QiX3MsIFdURjo6bnVsbG9w
dCwgcGFyYW1ldGVycy50Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKICNlbmRpZgogI2VuZGlm
IC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCisKICAgICBwYXJhbWV0ZXJzLnBhcmVudFBJRCA9IGdl
dEN1cnJlbnRQcm9jZXNzSUQoKTsKIAogI2lmIFVTRShTQU5EQk9YX0VYVEVOU0lPTlNfRk9SX0NB
Q0hFX0FORF9URU1QX0RJUkVDVE9SWV9BQ0NFU1MpCkBAIC0yMTMsOCArMTcxLDY2IEBAIHZvaWQg
R1BVUHJvY2Vzc1Byb3h5OjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBv
cmllbnRhdGlvbikKICAgICBzZW5kKE1lc3NhZ2VzOjpHUFVQcm9jZXNzOjpTZXRPcmllbnRhdGlv
bkZvck1lZGlhQ2FwdHVyZSB7IG9yaWVudGF0aW9uIH0sIDApOwogfQogCit2b2lkIEdQVVByb2Nl
c3NQcm94eTo6dXBkYXRlU2FuZGJveEFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29s
IGFsbG93VmlkZW9DYXB0dXJlKQoreworICAgIGlmIChtX3VzZU1vY2tDYXB0dXJlRGV2aWNlcykK
KyAgICAgICAgcmV0dXJuOworCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgVmVjdG9yPFNhbmRi
b3hFeHRlbnNpb246OkhhbmRsZT4gZXh0ZW5zaW9uczsKKworICAgIGlmIChhbGxvd1ZpZGVvQ2Fw
dHVyZSAmJiAhbV9oYXNTZW50Q2FtZXJhU2FuZGJveEV4dGVuc2lvbikgeworI2lmIEhBVkUoQVVE
SVRfVE9LRU4pCisgICAgICAgIGlmIChzaG91bGRDcmVhdGVBcHBsZUNhbWVyYVNlcnZpY2VTYW5k
Ym94RXh0ZW5zaW9uKCkpIHsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBh
cHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKKyAgICAgICAgICAg
IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5h
cHBsZWNhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpOworICAgICAgICAgICAgZXh0ZW5zaW9ucy5hcHBlbmQoV1RGTW92
ZShhcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOworI2lmIEhB
VkUoQURESVRJT05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKKyAgICAgICAgICAgIFNhbmRib3hF
eHRlbnNpb246OkhhbmRsZSBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5k
bGVGb3JNYWNoTG9va3VwKCJjb20uYXBwbGUuYXBwbGVoMTNjYW1lcmFkIl9zLCBXVEY6Om51bGxv
cHQsIGFkZGl0aW9uYWxBcHBsZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSk7CisgICAgICAgICAgICBleHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKGFkZGl0aW9uYWxBcHBs
ZUNhbWVyYVNlcnZpY2VQYXRoU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOworI2VuZGlmCisgICAg
ICAgIH0KKyNlbmRpZiAvLyBIQVZFKEFVRElUX1RPS0VOKQorICAgICAgICBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUgc2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKKyAgICAgICAgYm9vbCBkaWRDcmVh
dGVTYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2Vu
ZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5jYW1lcmEiX3MsIHNhbmRib3hFeHRlbnNp
b25IYW5kbGUpOworICAgICAgICBSRUxFQVNFX0xPR19FUlJPUl9JRihkaWRDcmVhdGVTYW5kYm94
RXh0ZW5zaW9uLCBXZWJSVEMsICJVbmFibGUgdG8gY3JlYXRlIGNvbS5hcHBsZS53ZWJraXQuY2Ft
ZXJhIHNhbmRib3ggZXh0ZW5zaW9uIik7CisgICAgICAgIGlmIChkaWRDcmVhdGVTYW5kYm94RXh0
ZW5zaW9uKSB7CisgICAgICAgICAgICBtX2hhc1NlbnRDYW1lcmFTYW5kYm94RXh0ZW5zaW9uID0g
dHJ1ZTsKKyAgICAgICAgICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoc2FuZGJveEV4dGVu
c2lvbkhhbmRsZSkpOworICAgICAgICB9CisgICAgfQorICAgIGlmIChhbGxvd0F1ZGlvQ2FwdHVy
ZSAmJiAhbV9oYXNTZW50TWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pIHsKKyAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgIGJv
b2wgZGlkQ3JlYXRlU2FuZGJveEV4dGVuc2lvbiA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhh
bmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSJfcywg
c2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGKGRp
ZENyZWF0ZVNhbmRib3hFeHRlbnNpb24sIFdlYlJUQywgIlVuYWJsZSB0byBjcmVhdGUgY29tLmFw
cGxlLndlYmtpdC5taWNyb3Bob25lIHNhbmRib3ggZXh0ZW5zaW9uIik7CisgICAgICAgIGlmIChk
aWRDcmVhdGVTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgICAgICBtX2hhc1NlbnRNaWNyb3Bo
b25lU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7CisgICAgICAgICAgICBleHRlbnNpb25zLmFwcGVu
ZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorICAgIH0KKwor
I2lmIFBMQVRGT1JNKElPUykKKyAgICBpZiAoIW1faGFzU2VudFRDQ0RTYW5kYm94RXh0ZW5zaW9u
KSB7CisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFu
ZGxlOworICAgICAgICBib29sIGRpZENyZWF0ZVNhbmRib3hFeHRlbnNpb24gPSBTYW5kYm94RXh0
ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUudGNjZCJf
cywgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lG
KGRpZENyZWF0ZVNhbmRib3hFeHRlbnNpb24sIFdlYlJUQywgIlVuYWJsZSB0byBjcmVhdGUgY29t
LmFwcGxlLnRjY2Qgc2FuZGJveCBleHRlbnNpb24iKTsKKyAgICAgICAgaWYgKGRpZENyZWF0ZVNh
bmRib3hFeHRlbnNpb24pIHsKKyAgICAgICAgICAgIG1faGFzU2VudFRDQ0RTYW5kYm94RXh0ZW5z
aW9uID0gdHJ1ZTsKKyAgICAgICAgICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoc2FuZGJv
eEV4dGVuc2lvbkhhbmRsZSkpOworICAgICAgICB9CisgICAgfQorI2VuZGlmIC8vIFBMQVRGT1JN
KElPUykKKworICAgIGlmIChleHRlbnNpb25zLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIHNlbmQoTWVzc2FnZXM6OkdQVVByb2Nlc3M6OlVwZGF0ZVNhbmRib3hBY2Nlc3MgeyBleHRl
bnNpb25zIH0sIDApOworI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKQorfQorCiB2b2lkIEdQVVBy
b2Nlc3NQcm94eTo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBi
b29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUsIFdlYkNvcmU6
OlByb2Nlc3NJZGVudGlmaWVyIHByb2Nlc3NJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQogeworICAgIHVwZGF0ZVNhbmRib3hBY2Nlc3MoYWxsb3dBdWRp
b0NhcHR1cmUsIGFsbG93VmlkZW9DYXB0dXJlKTsKICAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6OkdQVVByb2Nlc3M6OlVwZGF0ZUNhcHR1cmVBY2Nlc3MgeyBhbGxvd0F1ZGlvQ2FwdHVy
ZSwgYWxsb3dWaWRlb0NhcHR1cmUsIGFsbG93RGlzcGxheUNhcHR1cmUsIHByb2Nlc3NJRCB9LCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaAppbmRleCA0YmIwMWRlYmI3ODRiYzM4ZDBlYTczNDU5
OWQ1MDNjZjliYzVjYjI1Li5jOWNjYTdiZDUxNzg3MWQ5NGMzODY4MTgzOTFhOTBlMWM5ZGNmYjUx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCkBA
IC0xMjAsNiArMTIwLDggQEAgcHJpdmF0ZToKICAgICB2b2lkIHRlcm1pbmF0ZVdlYlByb2Nlc3Mo
V2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIpOwogICAgIHZvaWQgcHJvY2Vzc0lzUmVhZHlUb0V4
aXQoKTsKIAorICAgIHZvaWQgdXBkYXRlU2FuZGJveEFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0
dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlKTsKKwogI2lmIEhBVkUoVklTSUJJTElUWV9QUk9Q
QUdBVElPTl9WSUVXKQogICAgIHZvaWQgZGlkQ3JlYXRlQ29udGV4dEZvclZpc2liaWxpdHlQcm9w
YWdhdGlvbihXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwg
TGF5ZXJIb3N0aW5nQ29udGV4dElEKTsKICNlbmRpZgpAQCAtMTI5LDYgKzEzMSwxMSBAQCBwcml2
YXRlOgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgYm9vbCBtX3VzZU1vY2tDYXB0dXJl
RGV2aWNlcyB7IGZhbHNlIH07CiAgICAgdWludDY0X3QgbV9vcmllbnRhdGlvbiB7IDAgfTsKKyNl
bmRpZgorI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGJvb2wgbV9oYXNTZW50VENDRFNhbmRib3hF
eHRlbnNpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9oYXNTZW50Q2FtZXJhU2FuZGJveEV4dGVu
c2lvbiB7IGZhbHNlIH07CisgICAgYm9vbCBtX2hhc1NlbnRNaWNyb3Bob25lU2FuZGJveEV4dGVu
c2lvbiB7IGZhbHNlIH07CiAjZW5kaWYKICAgICBIYXNoU2V0PFBBTDo6U2Vzc2lvbklEPiBtX3Nl
c3Npb25JRHM7CiB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427735</attachid>
            <date>2021-05-05 00:30:15 -0700</date>
            <delta_ts>2021-05-05 00:59:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225319-20210505093011.patch</filename>
            <type>text/plain</type>
            <size>16342</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDkyN2I3YjRkNGM1MjExNTgy
NjQzZjJkNzBhMWEyZDQyYmM0NTM5NzYuLjRhMjU5YjM3M2RmYzU4NzI5ZTQ1N2U4MWFkNTYxODRh
NTAzZjYyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDUtMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIER5bmFtaWNhbGx5IHBhc3MgY2Fw
dHVyZSBzYW5kYm94IGV4dGVuc2lvbnMgdG8gR1BVUHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MzE5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIE1ha2Ugc3VyZSB0byBzZW5kIHRoZSBzYW5kYm94
IGV4dGVuc2lvbnMgZm9yIGFsbCBXS1dlYlZpZXcgYXBwbGljYXRpb25zLgorICAgICAgICBXZSBk
byBzbyBvbmNlIHdlIGFyZSByZWFkeSB0byBzdGFydCBjYXB0dXJlIHNpbmNlIFRDQyBhY2Nlc3Mg
c2hvdWxkIGhhdmUgYmVlbiBncmFudGVkIGF0IHRoYXQgcG9pbnQuCisgICAgICAgIE1hbnVhbGx5
IHRlc3RlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHA6CisgICAgICAg
IChXZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVHUFVQcm9jZXNzKToKKyAgICAgICAgKFdl
YktpdDo6R1BVUHJvY2Vzczo6dXBkYXRlU2FuZGJveEFjY2Vzcyk6CisgICAgICAgICogR1BVUHJv
Y2Vzcy9HUFVQcm9jZXNzLmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnM6OmRlY29kZSk6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzUHJveHk6OkdQVVByb2Nlc3NQcm94eSk6CisgICAg
ICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6dXBkYXRlU2FuZGJveEFjY2Vzcyk6CisgICAg
ICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyk6CisgICAg
ICAgIChXZWJLaXQ6OmlzU2FmYXJpKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6c2hvdWxk
Q3JlYXRlQ2FtZXJhU2FuZGJveEV4dGVuc2lvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6
OnNob3VsZENyZWF0ZU1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oOgorCiAyMDIxLTA1LTAzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgT3B0aW9uU2V0IGZv
ciBNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLmNwcAppbmRleCBlZjk3NTVlNGM1OTU0YzcwODRkNTYyOWE5YmYxYWI4MWIxNWM1
N2NmLi5lODc3NGUwZGY0YjcxYzRkMTkxNTkyMjA2M2YxYjY1NDY1Yzg3YmFkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCkBAIC0yMDMsMTggKzIwMywxMCBAQCB2b2lk
IEdQVVByb2Nlc3M6OmluaXRpYWxpemVHUFVQcm9jZXNzKEdQVVByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMmJiBwYXJhbWV0ZXJzKQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBzZXRN
b2NrQ2FwdHVyZURldmljZXNFbmFibGVkKHBhcmFtZXRlcnMudXNlTW9ja0NhcHR1cmVEZXZpY2Vz
KTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5j
YW1lcmFTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAg
IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmFwcGxlQ2Ft
ZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFERElUSU9O
QUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBl
cm1hbmVudGx5KHBhcmFtZXRlcnMuYWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgotI2VuZGlmIC8vIEhBVkUoQVVESVRfVE9LRU4p
CisjaWYgUExBVEZPUk0oTUFDKQogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5l
bnRseShwYXJhbWV0ZXJzLm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBQ
TEFURk9STShJT1MpCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBh
cmFtZXRlcnMudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7Ci0jZW5kaWYKICNlbmRpZgorI2Vu
ZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCiAKICNpZiBVU0UoU0FOREJPWF9FWFRFTlNJT05T
X0ZPUl9DQUNIRV9BTkRfVEVNUF9ESVJFQ1RPUllfQUNDRVNTKQogICAgIFNhbmRib3hFeHRlbnNp
b246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvbnRhaW5lckNhY2hlc0RpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSk7CkBAIC0yOTEsNiArMjgzLDEyIEBAIHZvaWQgR1BVUHJvY2Vzczo6
dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93Vmlk
ZW9DYXB0CiAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKIH0KIAordm9pZCBHUFVQcm9jZXNzOjp1
cGRhdGVTYW5kYm94QWNjZXNzKGNvbnN0IFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+
JiBleHRlbnNpb25zKQoreworICAgIGZvciAoYXV0byYgZXh0ZW5zaW9uIDogZXh0ZW5zaW9ucykK
KyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGV4dGVuc2lvbik7
Cit9CisKIHZvaWQgR1BVUHJvY2Vzczo6YWRkTW9ja01lZGlhRGV2aWNlKGNvbnN0IFdlYkNvcmU6
Ok1vY2tNZWRpYURldmljZSYgZGV2aWNlKQogewogICAgIE1vY2tSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjphZGREZXZpY2UoZGV2aWNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9HUFVQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vz
cy5oCmluZGV4IDI3Y2QyY2Q0MDhkNjcyYjk5MjVkMzQ1Y2I3ZTcyNmMyMzhkYjExYTguLmJkMjJm
ZmU3MzBjYTc1M2Q4MWFhNzc2Yjk0ZWNmMTI3MGI1OTNiYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVVByb2Nlc3MuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VT
UykKIAogI2luY2x1ZGUgIkF1eGlsaWFyeVByb2Nlc3MuaCIKKyNpbmNsdWRlICJTYW5kYm94RXh0
ZW5zaW9uLmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvTGliV2ViUlRDRW51bVRyYWl0cy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVGltZXIu
aD4KQEAgLTEyMyw2ICsxMjQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0TW9ja0NhcHR1cmVE
ZXZpY2VzRW5hYmxlZChib29sKTsKICAgICB2b2lkIHNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0
dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsKICAgICB2b2lkIHVwZGF0ZUNhcHR1cmVBY2Nlc3Mo
Ym9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBhbGxv
d0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHVwZGF0ZVNhbmRib3hBY2Nlc3MoY29uc3QgVmVj
dG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4mKTsKICAgICB2b2lkIGFkZE1vY2tNZWRpYURl
dmljZShjb25zdCBXZWJDb3JlOjpNb2NrTWVkaWFEZXZpY2UmKTsKICAgICB2b2lkIGNsZWFyTW9j
a01lZGlhRGV2aWNlcygpOwogICAgIHZvaWQgcmVtb3ZlTW9ja01lZGlhRGV2aWNlKGNvbnN0IFN0
cmluZyYgcGVyc2lzdGVudElkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9HUFVQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVBy
b2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggZDNmMDc1NzU5MWZkODZkMDgwOGQxODdhZTE3M2M2YmFk
M2EyZWMyMC4uYTI5YmU4ZGU4YzMzNzQ3NzBiN2U1NjFlY2YyZjBhNDk1NGI0MWI2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTM5
LDYgKzM5LDcgQEAgbWVzc2FnZXMgLT4gR1BVUHJvY2VzcyB7CiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICBTZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkKGJvb2wgaXNFbmFibGVkKQog
ICAgIFNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsK
KyAgICBVcGRhdGVTYW5kYm94QWNjZXNzKFZlY3RvcjxXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246
OkhhbmRsZT4gZXh0ZW5zaW9ucyk7CiAgICAgVXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93
QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNh
cHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHByb2Nlc3NJRCkgLT4gKCkgQXN5bmMK
ICAgICBBZGRNb2NrTWVkaWFEZXZpY2Uoc3RydWN0IFdlYkNvcmU6Ok1vY2tNZWRpYURldmljZSBk
ZXZpY2UpOwogICAgIENsZWFyTW9ja01lZGlhRGV2aWNlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmlu
ZGV4IDVjZTY0NWU4NzI5ODZlZjdiZWY4NjhkYWIyZjUxN2EzMmE5ZjUyMWEuLjBjNjVlMTM5YzNh
YjM5MzBmM2ViM2VjNjlhNDM4NTUxYmY3YTZiNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTQz
LDE2ICs0Myw4IEBAIHZvaWQgR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKElQ
Qzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKIHsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
ICAgIGVuY29kZXIgPDwgdXNlTW9ja0NhcHR1cmVEZXZpY2VzOwotICAgIGVuY29kZXIgPDwgY2Ft
ZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAgIGVu
Y29kZXIgPDwgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0j
aWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQotICAgIGVuY29kZXIgPDwg
YWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwot
I2VuZGlmCi0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tFTikKKyNpZiBQTEFURk9STShNQUMpCiAg
ICAgZW5jb2RlciA8PCBtaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBQTEFU
Rk9STShJT1MpCi0gICAgZW5jb2RlciA8PCB0Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwogI2Vu
ZGlmCiAjZW5kaWYKICAgICBlbmNvZGVyIDw8IHBhcmVudFBJRDsKQEAgLTY4LDIxICs2MCw5IEBA
IGJvb2wgR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYg
ZGVjb2RlciwgR1BVUHJvY2Vzc0NyZWF0CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBp
ZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC51c2VNb2NrQ2FwdHVyZURldmljZXMpKQogICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuY2FtZXJhU2Fu
ZGJveEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNpZiBIQVZFKEFV
RElUX1RPS0VOKQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmFwcGxlQ2FtZXJhU2Vy
dmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
I2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKLSAgICBpZiAoIWRlY29k
ZXIuZGVjb2RlKHJlc3VsdC5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLSNlbmRpZiAv
LyBIQVZFKEFVRElUX1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykKICAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKHJlc3VsdC5taWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKLSNpZiBQTEFURk9STShJT1MpCi0gICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShyZXN1bHQudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKICNlbmRpZgogI2VuZGlmCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQucGFyZW50
UElEKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IGQzMTM3MWI0OWVjYTcwYmFmODUyMGExNjdkMzkwZjk0
MGE4ZTAzZmUuLjlmZmFmYzEyYzk4YmQ3MWI0OGQxMmY1MGExZTJkNjQ5MDM3MDRjOTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaApAQCAtNDEsMTYgKzQxLDggQEAgc3RydWN0IEdQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMgewogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBib29sIHVzZU1vY2tD
YXB0dXJlRGV2aWNlcyB7IGZhbHNlIH07Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNh
bWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jaWYgSEFWRShBVURJVF9UT0tFTikKLSAgICBT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRl
bnNpb25IYW5kbGU7Ci0jaWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQot
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNl
UGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jZW5kaWYKLSNlbmRpZiAvLyBIQVZFKEFVRElU
X1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
bWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jaWYgUExBVEZPUk0oSU9TKQotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSB0Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwogI2Vu
ZGlmCiAjZW5kaWYKICAgICBQcm9jZXNzSUQgcGFyZW50UElEOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcAppbmRleCBlZmM4NTY3YjJjM2I1YzEy
YTc0ZWI4ZjgzMzQwOGJmZWI1NzVkNzYzLi5jZWE0ZjkyYTMwNmMzNTE5MWJiMGIyMzU5YzExOTAz
Y2Y4NmI2MzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJv
Y2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vz
c1Byb3h5LmNwcApAQCAtNjQsMzUgKzY0LDYgQEAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1NhZmFyaSgpCi17Ci0g
ICAgYm9vbCBpc1NhZmFyaSA9IGZhbHNlOwotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAg
aWYgKElPU0FwcGxpY2F0aW9uOjppc01vYmlsZVNhZmFyaSgpKQotICAgICAgICBpc1NhZmFyaSA9
IHRydWU7Ci0jZWxpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKE1hY0FwcGxpY2F0aW9uOjppc1Nh
ZmFyaSgpKQotICAgICAgICBpc1NhZmFyaSA9IHRydWU7Ci0jZW5kaWYKLSAgICByZXR1cm4gaXNT
YWZhcmk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRDcmVhdGVDYW1lcmFTYW5kYm94
RXh0ZW5zaW9uKCkKLXsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGNoZWNrIGZvciAiY29tLmFw
cGxlLnNlY3VyaXR5LmRldmljZS5jYW1lcmEiIGVudGl0bGVtZW50LgotICAgIGlmICghaXNTYWZh
cmkoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiB0cnVlOwotfQotCi1zdGF0
aWMgaW5saW5lIGJvb2wgc2hvdWxkQ3JlYXRlTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24oKQot
ewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgY2hlY2sgZm9yICJjb20uYXBwbGUuc2VjdXJpdHku
ZGV2aWNlLm1pY3JvcGhvbmUiIGVudGl0bGVtZW50LgotICAgIGlmICghaXNTYWZhcmkoKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiB0cnVlOwotfQotCiAjaWYgRU5BQkxFKE1F
RElBX1NUUkVBTSkgJiYgSEFWRShBVURJVF9UT0tFTikKIHN0YXRpYyBib29sIHNob3VsZENyZWF0
ZUFwcGxlQ2FtZXJhU2VydmljZVNhbmRib3hFeHRlbnNpb24oKQogewpAQCAtMTU0LDI4ICsxMjUs
MTUgQEAgR1BVUHJvY2Vzc1Byb3h5OjpHUFVQcm9jZXNzUHJveHkoKQogICAgIEdQVVByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
ICAgIHBhcmFtZXRlcnMudXNlTW9ja0NhcHR1cmVEZXZpY2VzID0gbV91c2VNb2NrQ2FwdHVyZURl
dmljZXM7Ci0KLSAgICBib29sIG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbiA9IHNob3VsZENy
ZWF0ZUNhbWVyYVNhbmRib3hFeHRlbnNpb24oKTsKLSAgICBib29sIG5lZWRzTWljcm9waG9uZVNh
bmRib3hFeHRlbnNpb24gPSBzaG91bGRDcmVhdGVNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbigp
OwotICAgIGlmIChuZWVkc0NhbWVyYVNhbmRib3hFeHRlbnNpb24pCi0gICAgICAgIFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJr
aXQuY2FtZXJhIl9zLCBwYXJhbWV0ZXJzLmNhbWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwot
ICAgIGlmIChuZWVkc01pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKQorI2lmIFBMQVRGT1JNKE1B
QykKKyAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgYW5kIHJlbGF0ZWQgcGFyYW1ldGVyIHdoZW4g
PHJkYXI6Ly9wcm9ibGVtLzI5NDQ4MzY4PiBpcyBmaXhlZC4KKyAgICBpZiAoTWFjQXBwbGljYXRp
b246OmlzU2FmYXJpKCkpIHsKICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxl
Rm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBwYXJh
bWV0ZXJzLm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLQotI2lmIEhBVkUoQVVE
SVRfVE9LRU4pCi0gICAgaWYgKG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbiAmJiBzaG91bGRD
cmVhdGVBcHBsZUNhbWVyYVNlcnZpY2VTYW5kYm94RXh0ZW5zaW9uKCkpIHsKLSAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxl
Y2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBwYXJhbWV0ZXJzLmFwcGxlQ2FtZXJhU2VydmljZVBh
dGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FN
RVJBX1NFUlZJQ0UpCi0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1h
Y2hMb29rdXAoImNvbS5hcHBsZS5hcHBsZWgxM2NhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgcGFy
YW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25I
YW5kbGUpOwotI2VuZGlmCisgICAgICAgIG1faGFzU2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5z
aW9uID0gdHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tFTikKLQotI2lmIFBM
QVRGT1JNKElPUykKLSAgICBpZiAobmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uIHx8IG5lZWRz
TWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pCi0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNy
ZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS50Y2NkIl9zLCBXVEY6Om51bGxvcHQs
IHBhcmFtZXRlcnMudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7CiAjZW5kaWYKICNlbmRpZiAv
LyBFTkFCTEUoTUVESUFfU1RSRUFNKQorCiAgICAgcGFyYW1ldGVycy5wYXJlbnRQSUQgPSBnZXRD
dXJyZW50UHJvY2Vzc0lEKCk7CiAKICNpZiBVU0UoU0FOREJPWF9FWFRFTlNJT05TX0ZPUl9DQUNI
RV9BTkRfVEVNUF9ESVJFQ1RPUllfQUNDRVNTKQpAQCAtMjEzLDggKzE3MSw4NyBAQCB2b2lkIEdQ
VVByb2Nlc3NQcm94eTo6c2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3Jp
ZW50YXRpb24pCiAgICAgc2VuZChNZXNzYWdlczo6R1BVUHJvY2Vzczo6U2V0T3JpZW50YXRpb25G
b3JNZWRpYUNhcHR1cmUgeyBvcmllbnRhdGlvbiB9LCAwKTsKIH0KIAorc3RhdGljIGlubGluZSBi
b29sIGFkZENhbWVyYVNhbmRib3hFeHRlbnNpb25zKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpI
YW5kbGU+JiBleHRlbnNpb25zKQoreworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFu
ZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5jYW1lcmEiX3MsIHNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJUQywg
IlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLndlYmtpdC5jYW1lcmEgc2FuZGJveCBleHRlbnNp
b24iKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyNpZiBIQVZFKEFVRElUX1RPS0VO
KQorICAgICAgICBpZiAoc2hvdWxkQ3JlYXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVu
c2lvbigpKSB7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGVDYW1l
cmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBpZiAoIVNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5hcHBs
ZWNhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoV2Vi
UlRDLCAiVW5hYmxlIHRvIGNyZWF0ZSBjb20uYXBwbGUuYXBwbGVjYW1lcmFkIHNhbmRib3ggZXh0
ZW5zaW9uIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQor
I2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKKyAgICAgICAgICAgIFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZSBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNh
bmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBpZiAoIVNhbmRib3hFeHRlbnNpb246
OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5hcHBsZWgxM2NhbWVyYWQiX3Ms
IFdURjo6bnVsbG9wdCwgYWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKSkgeworICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJU
QywgIlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLmFwcGxlaDEzY2FtZXJhZCBzYW5kYm94IGV4
dGVuc2lvbiIpOworICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoYWRkaXRpb25hbEFwcGxlQ2Ft
ZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSk7CisjZW5kaWYKKyAgICAgICAg
ICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorI2VuZGlmIC8vIEhBVkUoQVVESVRfVE9L
RU4pCisKKyAgICBleHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5k
bGUpKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGlubGluZSBib29sIGFkZE1pY3Jv
cGhvbmVTYW5kYm94RXh0ZW5zaW9uKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiBl
eHRlbnNpb25zKQoreworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5z
aW9uSGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2Vu
ZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBzYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKSkgeworICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMsICJVbmFi
bGUgdG8gY3JlYXRlIGNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSBzYW5kYm94IGV4dGVuc2lv
biIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGV4dGVuc2lvbnMuYXBwZW5k
KFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOworICAgIHJldHVybiB0cnVlOworfQor
CisjaWYgUExBVEZPUk0oSU9TKQorc3RhdGljIGlubGluZSBib29sIGFkZFRDQ0RTYW5kYm94RXh0
ZW5zaW9uKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiBleHRlbnNpb25zKQorewor
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlOworICAg
IGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigi
Y29tLmFwcGxlLnRjY2QiX3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgIFJF
TEVBU0VfTE9HX0VSUk9SKFdlYlJUQywgIlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLnRjY2Qg
c2FuZGJveCBleHRlbnNpb24iKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBl
eHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKyNlbmRpZgorCit2b2lkIEdQVVByb2Nlc3NQcm94eTo6dXBkYXRlU2Fu
ZGJveEFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJl
KQoreworICAgIGlmIChtX3VzZU1vY2tDYXB0dXJlRGV2aWNlcykKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4gZXh0ZW5zaW9uczsKKworICAgIGlmIChhbGxvd1ZpZGVvQ2FwdHVyZSAmJiAhbV9oYXNTZW50
Q2FtZXJhU2FuZGJveEV4dGVuc2lvbiAmJiBhZGRDYW1lcmFTYW5kYm94RXh0ZW5zaW9ucyhleHRl
bnNpb25zKSkKKyAgICAgICAgbV9oYXNTZW50Q2FtZXJhU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7
CisKKyAgICBpZiAoYWxsb3dBdWRpb0NhcHR1cmUgJiYgIW1faGFzU2VudE1pY3JvcGhvbmVTYW5k
Ym94RXh0ZW5zaW9uICYmIGFkZE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKGV4dGVuc2lvbnMp
KQorICAgICAgICBtX2hhc1NlbnRNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7CisK
KyNpZiBQTEFURk9STShJT1MpCisgICAgaWYgKChhbGxvd0F1ZGlvQ2FwdHVyZSB8fCBhbGxvd1Zp
ZGVvQ2FwdHVyZSkgJiYgIW1faGFzU2VudFRDQ0RTYW5kYm94RXh0ZW5zaW9uICYmIGFkZFRDQ0RT
YW5kYm94RXh0ZW5zaW9uKGV4dGVuc2lvbnMpKQorICAgICAgICBtX2hhc1NlbnRUQ0NEU2FuZGJv
eEV4dGVuc2lvbiA9IHRydWU7CisjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQorCisgICAgaWYgKCFl
eHRlbnNpb25zLmlzRW1wdHkoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6R1BVUHJvY2Vzczo6
VXBkYXRlU2FuZGJveEFjY2VzcyB7IGV4dGVuc2lvbnMgfSwgMCk7CisjZW5kaWYgLy8gUExBVEZP
Uk0oQ09DT0EpCit9CisKIHZvaWQgR1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNz
KGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxs
b3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lELCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CisgICAgdXBk
YXRlU2FuZGJveEFjY2VzcyhhbGxvd0F1ZGlvQ2FwdHVyZSwgYWxsb3dWaWRlb0NhcHR1cmUpOwog
ICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6R1BVUHJvY2Vzczo6VXBkYXRlQ2FwdHVy
ZUFjY2VzcyB7IGFsbG93QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYWxsb3dEaXNw
bGF5Q2FwdHVyZSwgcHJvY2Vzc0lEIH0sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94
eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCmluZGV4
IDRiYjAxZGViYjc4NGJjMzhkMGVhNzM0NTk5ZDUwM2NmOWJjNWNiMjUuLmM5Y2NhN2JkNTE3ODcx
ZDk0YzM4NjgxODM5MWE5MGUxYzlkY2ZiNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKQEAgLTEyMCw2ICsxMjAsOCBAQCBwcml2YXRlOgogICAg
IHZvaWQgdGVybWluYXRlV2ViUHJvY2VzcyhXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllcik7CiAg
ICAgdm9pZCBwcm9jZXNzSXNSZWFkeVRvRXhpdCgpOwogCisgICAgdm9pZCB1cGRhdGVTYW5kYm94
QWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUpOwor
CiAjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCiAgICAgdm9pZCBkaWRDcmVh
dGVDb250ZXh0Rm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIs
IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBMYXllckhvc3RpbmdDb250ZXh0SUQpOwogI2VuZGlm
CkBAIC0xMjksNiArMTMxLDExIEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
ICAgICBib29sIG1fdXNlTW9ja0NhcHR1cmVEZXZpY2VzIHsgZmFsc2UgfTsKICAgICB1aW50NjRf
dCBtX29yaWVudGF0aW9uIHsgMCB9OworI2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAg
Ym9vbCBtX2hhc1NlbnRUQ0NEU2FuZGJveEV4dGVuc2lvbiB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2hhc1NlbnRDYW1lcmFTYW5kYm94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFz
U2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKICNlbmRpZgogICAgIEhh
c2hTZXQ8UEFMOjpTZXNzaW9uSUQ+IG1fc2Vzc2lvbklEczsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427737</attachid>
            <date>2021-05-05 01:00:04 -0700</date>
            <delta_ts>2021-05-05 01:53:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225319-20210505100001.patch</filename>
            <type>text/plain</type>
            <size>16342</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDkyN2I3YjRkNGM1MjExNTgy
NjQzZjJkNzBhMWEyZDQyYmM0NTM5NzYuLjRhMjU5YjM3M2RmYzU4NzI5ZTQ1N2U4MWFkNTYxODRh
NTAzZjYyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDUtMDQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIER5bmFtaWNhbGx5IHBhc3MgY2Fw
dHVyZSBzYW5kYm94IGV4dGVuc2lvbnMgdG8gR1BVUHJvY2VzcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1MzE5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgIE1ha2Ugc3VyZSB0byBzZW5kIHRoZSBzYW5kYm94
IGV4dGVuc2lvbnMgZm9yIGFsbCBXS1dlYlZpZXcgYXBwbGljYXRpb25zLgorICAgICAgICBXZSBk
byBzbyBvbmNlIHdlIGFyZSByZWFkeSB0byBzdGFydCBjYXB0dXJlIHNpbmNlIFRDQyBhY2Nlc3Mg
c2hvdWxkIGhhdmUgYmVlbiBncmFudGVkIGF0IHRoYXQgcG9pbnQuCisgICAgICAgIE1hbnVhbGx5
IHRlc3RlZC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHA6CisgICAgICAg
IChXZWJLaXQ6OkdQVVByb2Nlc3M6OmluaXRpYWxpemVHUFVQcm9jZXNzKToKKyAgICAgICAgKFdl
YktpdDo6R1BVUHJvY2Vzczo6dXBkYXRlU2FuZGJveEFjY2Vzcyk6CisgICAgICAgICogR1BVUHJv
Y2Vzcy9HUFVQcm9jZXNzLmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cy5jcHA6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnM6OmRlY29kZSk6CisgICAgICAgICogR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzUHJveHk6OkdQVVByb2Nlc3NQcm94eSk6CisgICAg
ICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6dXBkYXRlU2FuZGJveEFjY2Vzcyk6CisgICAg
ICAgIChXZWJLaXQ6OkdQVVByb2Nlc3NQcm94eTo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyk6CisgICAg
ICAgIChXZWJLaXQ6OmlzU2FmYXJpKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYktpdDo6c2hvdWxk
Q3JlYXRlQ2FtZXJhU2FuZGJveEV4dGVuc2lvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6
OnNob3VsZENyZWF0ZU1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oOgorCiAyMDIxLTA1LTAzICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgT3B0aW9uU2V0IGZv
ciBNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLmNwcAppbmRleCBlZjk3NTVlNGM1OTU0YzcwODRkNTYyOWE5YmYxYWI4MWIxNWM1
N2NmLi5lODc3NGUwZGY0YjcxYzRkMTkxNTkyMjA2M2YxYjY1NDY1Yzg3YmFkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCkBAIC0yMDMsMTggKzIwMywxMCBAQCB2b2lk
IEdQVVByb2Nlc3M6OmluaXRpYWxpemVHUFVQcm9jZXNzKEdQVVByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMmJiBwYXJhbWV0ZXJzKQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBzZXRN
b2NrQ2FwdHVyZURldmljZXNFbmFibGVkKHBhcmFtZXRlcnMudXNlTW9ja0NhcHR1cmVEZXZpY2Vz
KTsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5j
YW1lcmFTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAg
IFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmFwcGxlQ2Ft
ZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFERElUSU9O
QUxfQVBQTEVfQ0FNRVJBX1NFUlZJQ0UpCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBl
cm1hbmVudGx5KHBhcmFtZXRlcnMuYWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgotI2VuZGlmIC8vIEhBVkUoQVVESVRfVE9LRU4p
CisjaWYgUExBVEZPUk0oTUFDKQogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5l
bnRseShwYXJhbWV0ZXJzLm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBQ
TEFURk9STShJT1MpCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBh
cmFtZXRlcnMudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7Ci0jZW5kaWYKICNlbmRpZgorI2Vu
ZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCiAKICNpZiBVU0UoU0FOREJPWF9FWFRFTlNJT05T
X0ZPUl9DQUNIRV9BTkRfVEVNUF9ESVJFQ1RPUllfQUNDRVNTKQogICAgIFNhbmRib3hFeHRlbnNp
b246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvbnRhaW5lckNhY2hlc0RpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSk7CkBAIC0yOTEsNiArMjgzLDEyIEBAIHZvaWQgR1BVUHJvY2Vzczo6
dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93Vmlk
ZW9DYXB0CiAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKIH0KIAordm9pZCBHUFVQcm9jZXNzOjp1
cGRhdGVTYW5kYm94QWNjZXNzKGNvbnN0IFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+
JiBleHRlbnNpb25zKQoreworICAgIGZvciAoYXV0byYgZXh0ZW5zaW9uIDogZXh0ZW5zaW9ucykK
KyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGV4dGVuc2lvbik7
Cit9CisKIHZvaWQgR1BVUHJvY2Vzczo6YWRkTW9ja01lZGlhRGV2aWNlKGNvbnN0IFdlYkNvcmU6
Ok1vY2tNZWRpYURldmljZSYgZGV2aWNlKQogewogICAgIE1vY2tSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjphZGREZXZpY2UoZGV2aWNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9HUFVQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vz
cy5oCmluZGV4IDI3Y2QyY2Q0MDhkNjcyYjk5MjVkMzQ1Y2I3ZTcyNmMyMzhkYjExYTguLmJkMjJm
ZmU3MzBjYTc1M2Q4MWFhNzc2Yjk0ZWNmMTI3MGI1OTNiYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL0dQVVByb2Nlc3MuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VT
UykKIAogI2luY2x1ZGUgIkF1eGlsaWFyeVByb2Nlc3MuaCIKKyNpbmNsdWRlICJTYW5kYm94RXh0
ZW5zaW9uLmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvTGliV2ViUlRDRW51bVRyYWl0cy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVGltZXIu
aD4KQEAgLTEyMyw2ICsxMjQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0TW9ja0NhcHR1cmVE
ZXZpY2VzRW5hYmxlZChib29sKTsKICAgICB2b2lkIHNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0
dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsKICAgICB2b2lkIHVwZGF0ZUNhcHR1cmVBY2Nlc3Mo
Ym9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBhbGxv
d0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHVwZGF0ZVNhbmRib3hBY2Nlc3MoY29uc3QgVmVj
dG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4mKTsKICAgICB2b2lkIGFkZE1vY2tNZWRpYURl
dmljZShjb25zdCBXZWJDb3JlOjpNb2NrTWVkaWFEZXZpY2UmKTsKICAgICB2b2lkIGNsZWFyTW9j
a01lZGlhRGV2aWNlcygpOwogICAgIHZvaWQgcmVtb3ZlTW9ja01lZGlhRGV2aWNlKGNvbnN0IFN0
cmluZyYgcGVyc2lzdGVudElkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9HUFVQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVBy
b2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggZDNmMDc1NzU5MWZkODZkMDgwOGQxODdhZTE3M2M2YmFk
M2EyZWMyMC4uYTI5YmU4ZGU4YzMzNzQ3NzBiN2U1NjFlY2YyZjBhNDk1NGI0MWI2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTM5
LDYgKzM5LDcgQEAgbWVzc2FnZXMgLT4gR1BVUHJvY2VzcyB7CiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICBTZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkKGJvb2wgaXNFbmFibGVkKQog
ICAgIFNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsK
KyAgICBVcGRhdGVTYW5kYm94QWNjZXNzKFZlY3RvcjxXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246
OkhhbmRsZT4gZXh0ZW5zaW9ucyk7CiAgICAgVXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93
QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNh
cHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHByb2Nlc3NJRCkgLT4gKCkgQXN5bmMK
ICAgICBBZGRNb2NrTWVkaWFEZXZpY2Uoc3RydWN0IFdlYkNvcmU6Ok1vY2tNZWRpYURldmljZSBk
ZXZpY2UpOwogICAgIENsZWFyTW9ja01lZGlhRGV2aWNlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmlu
ZGV4IDVjZTY0NWU4NzI5ODZlZjdiZWY4NjhkYWIyZjUxN2EzMmE5ZjUyMWEuLjBjNjVlMTM5YzNh
YjM5MzBmM2ViM2VjNjlhNDM4NTUxYmY3YTZiNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTQz
LDE2ICs0Myw4IEBAIHZvaWQgR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKElQ
Qzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKIHsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
ICAgIGVuY29kZXIgPDwgdXNlTW9ja0NhcHR1cmVEZXZpY2VzOwotICAgIGVuY29kZXIgPDwgY2Ft
ZXJhU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBIQVZFKEFVRElUX1RPS0VOKQotICAgIGVu
Y29kZXIgPDwgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0j
aWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQotICAgIGVuY29kZXIgPDwg
YWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwot
I2VuZGlmCi0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tFTikKKyNpZiBQTEFURk9STShNQUMpCiAg
ICAgZW5jb2RlciA8PCBtaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKLSNpZiBQTEFU
Rk9STShJT1MpCi0gICAgZW5jb2RlciA8PCB0Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwogI2Vu
ZGlmCiAjZW5kaWYKICAgICBlbmNvZGVyIDw8IHBhcmVudFBJRDsKQEAgLTY4LDIxICs2MCw5IEBA
IGJvb2wgR1BVUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYg
ZGVjb2RlciwgR1BVUHJvY2Vzc0NyZWF0CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBp
ZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC51c2VNb2NrQ2FwdHVyZURldmljZXMpKQogICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuY2FtZXJhU2Fu
ZGJveEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSNpZiBIQVZFKEFV
RElUX1RPS0VOKQotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmFwcGxlQ2FtZXJhU2Vy
dmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwot
I2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKLSAgICBpZiAoIWRlY29k
ZXIuZGVjb2RlKHJlc3VsdC5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGUpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLSNlbmRpZiAv
LyBIQVZFKEFVRElUX1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykKICAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKHJlc3VsdC5taWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKLSNpZiBQTEFURk9STShJT1MpCi0gICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShyZXN1bHQudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKICNlbmRpZgogI2VuZGlmCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQucGFyZW50
UElEKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IGQzMTM3MWI0OWVjYTcwYmFmODUyMGExNjdkMzkwZjk0
MGE4ZTAzZmUuLjlmZmFmYzEyYzk4YmQ3MWI0OGQxMmY1MGExZTJkNjQ5MDM3MDRjOTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaApAQCAtNDEsMTYgKzQxLDggQEAgc3RydWN0IEdQVVByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMgewogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICBib29sIHVzZU1vY2tD
YXB0dXJlRGV2aWNlcyB7IGZhbHNlIH07Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNh
bWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jaWYgSEFWRShBVURJVF9UT0tFTikKLSAgICBT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRl
bnNpb25IYW5kbGU7Ci0jaWYgSEFWRShBRERJVElPTkFMX0FQUExFX0NBTUVSQV9TRVJWSUNFKQot
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNl
UGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jZW5kaWYKLSNlbmRpZiAvLyBIQVZFKEFVRElU
X1RPS0VOKQorI2lmIFBMQVRGT1JNKE1BQykKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
bWljcm9waG9uZVNhbmRib3hFeHRlbnNpb25IYW5kbGU7Ci0jaWYgUExBVEZPUk0oSU9TKQotICAg
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSB0Y2NTYW5kYm94RXh0ZW5zaW9uSGFuZGxlOwogI2Vu
ZGlmCiAjZW5kaWYKICAgICBQcm9jZXNzSUQgcGFyZW50UElEOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcAppbmRleCBlZmM4NTY3YjJjM2I1YzEy
YTc0ZWI4ZjgzMzQwOGJmZWI1NzVkNzYzLi5jZWE0ZjkyYTMwNmMzNTE5MWJiMGIyMzU5YzExOTAz
Y2Y4NmI2MzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJv
Y2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vz
c1Byb3h5LmNwcApAQCAtNjQsMzUgKzY0LDYgQEAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc1NhZmFyaSgpCi17Ci0g
ICAgYm9vbCBpc1NhZmFyaSA9IGZhbHNlOwotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAg
aWYgKElPU0FwcGxpY2F0aW9uOjppc01vYmlsZVNhZmFyaSgpKQotICAgICAgICBpc1NhZmFyaSA9
IHRydWU7Ci0jZWxpZiBQTEFURk9STShNQUMpCi0gICAgaWYgKE1hY0FwcGxpY2F0aW9uOjppc1Nh
ZmFyaSgpKQotICAgICAgICBpc1NhZmFyaSA9IHRydWU7Ci0jZW5kaWYKLSAgICByZXR1cm4gaXNT
YWZhcmk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRDcmVhdGVDYW1lcmFTYW5kYm94
RXh0ZW5zaW9uKCkKLXsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGNoZWNrIGZvciAiY29tLmFw
cGxlLnNlY3VyaXR5LmRldmljZS5jYW1lcmEiIGVudGl0bGVtZW50LgotICAgIGlmICghaXNTYWZh
cmkoKSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiB0cnVlOwotfQotCi1zdGF0
aWMgaW5saW5lIGJvb2wgc2hvdWxkQ3JlYXRlTWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24oKQot
ewotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgY2hlY2sgZm9yICJjb20uYXBwbGUuc2VjdXJpdHku
ZGV2aWNlLm1pY3JvcGhvbmUiIGVudGl0bGVtZW50LgotICAgIGlmICghaXNTYWZhcmkoKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiB0cnVlOwotfQotCiAjaWYgRU5BQkxFKE1F
RElBX1NUUkVBTSkgJiYgSEFWRShBVURJVF9UT0tFTikKIHN0YXRpYyBib29sIHNob3VsZENyZWF0
ZUFwcGxlQ2FtZXJhU2VydmljZVNhbmRib3hFeHRlbnNpb24oKQogewpAQCAtMTU0LDI4ICsxMjUs
MTUgQEAgR1BVUHJvY2Vzc1Byb3h5OjpHUFVQcm9jZXNzUHJveHkoKQogICAgIEdQVVByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
ICAgIHBhcmFtZXRlcnMudXNlTW9ja0NhcHR1cmVEZXZpY2VzID0gbV91c2VNb2NrQ2FwdHVyZURl
dmljZXM7Ci0KLSAgICBib29sIG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbiA9IHNob3VsZENy
ZWF0ZUNhbWVyYVNhbmRib3hFeHRlbnNpb24oKTsKLSAgICBib29sIG5lZWRzTWljcm9waG9uZVNh
bmRib3hFeHRlbnNpb24gPSBzaG91bGRDcmVhdGVNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbigp
OwotICAgIGlmIChuZWVkc0NhbWVyYVNhbmRib3hFeHRlbnNpb24pCi0gICAgICAgIFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJr
aXQuY2FtZXJhIl9zLCBwYXJhbWV0ZXJzLmNhbWVyYVNhbmRib3hFeHRlbnNpb25IYW5kbGUpOwot
ICAgIGlmIChuZWVkc01pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKQorI2lmIFBMQVRGT1JNKE1B
QykKKyAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgYW5kIHJlbGF0ZWQgcGFyYW1ldGVyIHdoZW4g
PHJkYXI6Ly9wcm9ibGVtLzI5NDQ4MzY4PiBpcyBmaXhlZC4KKyAgICBpZiAoTWFjQXBwbGljYXRp
b246OmlzU2FmYXJpKCkpIHsKICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxl
Rm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBwYXJh
bWV0ZXJzLm1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLQotI2lmIEhBVkUoQVVE
SVRfVE9LRU4pCi0gICAgaWYgKG5lZWRzQ2FtZXJhU2FuZGJveEV4dGVuc2lvbiAmJiBzaG91bGRD
cmVhdGVBcHBsZUNhbWVyYVNlcnZpY2VTYW5kYm94RXh0ZW5zaW9uKCkpIHsKLSAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmFwcGxl
Y2FtZXJhZCJfcywgV1RGOjpudWxsb3B0LCBwYXJhbWV0ZXJzLmFwcGxlQ2FtZXJhU2VydmljZVBh
dGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBIQVZFKEFERElUSU9OQUxfQVBQTEVfQ0FN
RVJBX1NFUlZJQ0UpCi0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1h
Y2hMb29rdXAoImNvbS5hcHBsZS5hcHBsZWgxM2NhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgcGFy
YW1ldGVycy5hZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25I
YW5kbGUpOwotI2VuZGlmCisgICAgICAgIG1faGFzU2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5z
aW9uID0gdHJ1ZTsKICAgICB9Ci0jZW5kaWYgLy8gSEFWRShBVURJVF9UT0tFTikKLQotI2lmIFBM
QVRGT1JNKElPUykKLSAgICBpZiAobmVlZHNDYW1lcmFTYW5kYm94RXh0ZW5zaW9uIHx8IG5lZWRz
TWljcm9waG9uZVNhbmRib3hFeHRlbnNpb24pCi0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNy
ZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS50Y2NkIl9zLCBXVEY6Om51bGxvcHQs
IHBhcmFtZXRlcnMudGNjU2FuZGJveEV4dGVuc2lvbkhhbmRsZSk7CiAjZW5kaWYKICNlbmRpZiAv
LyBFTkFCTEUoTUVESUFfU1RSRUFNKQorCiAgICAgcGFyYW1ldGVycy5wYXJlbnRQSUQgPSBnZXRD
dXJyZW50UHJvY2Vzc0lEKCk7CiAKICNpZiBVU0UoU0FOREJPWF9FWFRFTlNJT05TX0ZPUl9DQUNI
RV9BTkRfVEVNUF9ESVJFQ1RPUllfQUNDRVNTKQpAQCAtMjEzLDggKzE3MSw4NyBAQCB2b2lkIEdQ
VVByb2Nlc3NQcm94eTo6c2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3Jp
ZW50YXRpb24pCiAgICAgc2VuZChNZXNzYWdlczo6R1BVUHJvY2Vzczo6U2V0T3JpZW50YXRpb25G
b3JNZWRpYUNhcHR1cmUgeyBvcmllbnRhdGlvbiB9LCAwKTsKIH0KIAorc3RhdGljIGlubGluZSBi
b29sIGFkZENhbWVyYVNhbmRib3hFeHRlbnNpb25zKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpI
YW5kbGU+JiBleHRlbnNpb25zKQoreworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFu
ZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5jYW1lcmEiX3MsIHNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJUQywg
IlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLndlYmtpdC5jYW1lcmEgc2FuZGJveCBleHRlbnNp
b24iKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyNpZiBIQVZFKEFVRElUX1RPS0VO
KQorICAgICAgICBpZiAoc2hvdWxkQ3JlYXRlQXBwbGVDYW1lcmFTZXJ2aWNlU2FuZGJveEV4dGVu
c2lvbigpKSB7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgYXBwbGVDYW1l
cmFTZXJ2aWNlUGF0aFNhbmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBpZiAoIVNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5hcHBs
ZWNhbWVyYWQiX3MsIFdURjo6bnVsbG9wdCwgYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRib3hF
eHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgICAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoV2Vi
UlRDLCAiVW5hYmxlIHRvIGNyZWF0ZSBjb20uYXBwbGUuYXBwbGVjYW1lcmFkIHNhbmRib3ggZXh0
ZW5zaW9uIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQor
I2lmIEhBVkUoQURESVRJT05BTF9BUFBMRV9DQU1FUkFfU0VSVklDRSkKKyAgICAgICAgICAgIFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZSBhZGRpdGlvbmFsQXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNh
bmRib3hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgICAgICBpZiAoIVNhbmRib3hFeHRlbnNpb246
OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5hcHBsZWgxM2NhbWVyYWQiX3Ms
IFdURjo6bnVsbG9wdCwgYWRkaXRpb25hbEFwcGxlQ2FtZXJhU2VydmljZVBhdGhTYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKSkgeworICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SKFdlYlJU
QywgIlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLmFwcGxlaDEzY2FtZXJhZCBzYW5kYm94IGV4
dGVuc2lvbiIpOworICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoYWRkaXRpb25hbEFwcGxlQ2Ft
ZXJhU2VydmljZVBhdGhTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKSk7CisjZW5kaWYKKyAgICAgICAg
ICAgIGV4dGVuc2lvbnMuYXBwZW5kKFdURk1vdmUoYXBwbGVDYW1lcmFTZXJ2aWNlUGF0aFNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICAgICAgfQorI2VuZGlmIC8vIEhBVkUoQVVESVRfVE9L
RU4pCisKKyAgICBleHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5k
bGUpKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGlubGluZSBib29sIGFkZE1pY3Jv
cGhvbmVTYW5kYm94RXh0ZW5zaW9uKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiBl
eHRlbnNpb25zKQoreworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5z
aW9uSGFuZGxlOworICAgIGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2Vu
ZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBzYW5kYm94RXh0
ZW5zaW9uSGFuZGxlKSkgeworICAgICAgICBSRUxFQVNFX0xPR19FUlJPUihXZWJSVEMsICJVbmFi
bGUgdG8gY3JlYXRlIGNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSBzYW5kYm94IGV4dGVuc2lv
biIpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGV4dGVuc2lvbnMuYXBwZW5k
KFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOworICAgIHJldHVybiB0cnVlOworfQor
CisjaWYgUExBVEZPUk0oSU9TKQorc3RhdGljIGlubGluZSBib29sIGFkZFRDQ0RTYW5kYm94RXh0
ZW5zaW9uKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiBleHRlbnNpb25zKQorewor
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlOworICAg
IGlmICghU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yR2VuZXJpY0V4dGVuc2lvbigi
Y29tLmFwcGxlLnRjY2QiX3MsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKSB7CisgICAgICAgIFJF
TEVBU0VfTE9HX0VSUk9SKFdlYlJUQywgIlVuYWJsZSB0byBjcmVhdGUgY29tLmFwcGxlLnRjY2Qg
c2FuZGJveCBleHRlbnNpb24iKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBl
eHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKyNlbmRpZgorCit2b2lkIEdQVVByb2Nlc3NQcm94eTo6dXBkYXRlU2Fu
ZGJveEFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJl
KQoreworICAgIGlmIChtX3VzZU1vY2tDYXB0dXJlRGV2aWNlcykKKyAgICAgICAgcmV0dXJuOwor
CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4gZXh0ZW5zaW9uczsKKworICAgIGlmIChhbGxvd1ZpZGVvQ2FwdHVyZSAmJiAhbV9oYXNTZW50
Q2FtZXJhU2FuZGJveEV4dGVuc2lvbiAmJiBhZGRDYW1lcmFTYW5kYm94RXh0ZW5zaW9ucyhleHRl
bnNpb25zKSkKKyAgICAgICAgbV9oYXNTZW50Q2FtZXJhU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7
CisKKyAgICBpZiAoYWxsb3dBdWRpb0NhcHR1cmUgJiYgIW1faGFzU2VudE1pY3JvcGhvbmVTYW5k
Ym94RXh0ZW5zaW9uICYmIGFkZE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uKGV4dGVuc2lvbnMp
KQorICAgICAgICBtX2hhc1NlbnRNaWNyb3Bob25lU2FuZGJveEV4dGVuc2lvbiA9IHRydWU7CisK
KyNpZiBQTEFURk9STShJT1MpCisgICAgaWYgKChhbGxvd0F1ZGlvQ2FwdHVyZSB8fCBhbGxvd1Zp
ZGVvQ2FwdHVyZSkgJiYgIW1faGFzU2VudFRDQ0RTYW5kYm94RXh0ZW5zaW9uICYmIGFkZFRDQ0RT
YW5kYm94RXh0ZW5zaW9uKGV4dGVuc2lvbnMpKQorICAgICAgICBtX2hhc1NlbnRUQ0NEU2FuZGJv
eEV4dGVuc2lvbiA9IHRydWU7CisjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQorCisgICAgaWYgKCFl
eHRlbnNpb25zLmlzRW1wdHkoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6R1BVUHJvY2Vzczo6
VXBkYXRlU2FuZGJveEFjY2VzcyB7IGV4dGVuc2lvbnMgfSwgMCk7CisjZW5kaWYgLy8gUExBVEZP
Uk0oQ09DT0EpCit9CisKIHZvaWQgR1BVUHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNz
KGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxs
b3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lELCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CisgICAgdXBk
YXRlU2FuZGJveEFjY2VzcyhhbGxvd0F1ZGlvQ2FwdHVyZSwgYWxsb3dWaWRlb0NhcHR1cmUpOwog
ICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6R1BVUHJvY2Vzczo6VXBkYXRlQ2FwdHVy
ZUFjY2VzcyB7IGFsbG93QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYWxsb3dEaXNw
bGF5Q2FwdHVyZSwgcHJvY2Vzc0lEIH0sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94
eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCmluZGV4
IDRiYjAxZGViYjc4NGJjMzhkMGVhNzM0NTk5ZDUwM2NmOWJjNWNiMjUuLmM5Y2NhN2JkNTE3ODcx
ZDk0YzM4NjgxODM5MWE5MGUxYzlkY2ZiNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKQEAgLTEyMCw2ICsxMjAsOCBAQCBwcml2YXRlOgogICAg
IHZvaWQgdGVybWluYXRlV2ViUHJvY2VzcyhXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllcik7CiAg
ICAgdm9pZCBwcm9jZXNzSXNSZWFkeVRvRXhpdCgpOwogCisgICAgdm9pZCB1cGRhdGVTYW5kYm94
QWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUpOwor
CiAjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCiAgICAgdm9pZCBkaWRDcmVh
dGVDb250ZXh0Rm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIs
IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBMYXllckhvc3RpbmdDb250ZXh0SUQpOwogI2VuZGlm
CkBAIC0xMjksNiArMTMxLDExIEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
ICAgICBib29sIG1fdXNlTW9ja0NhcHR1cmVEZXZpY2VzIHsgZmFsc2UgfTsKICAgICB1aW50NjRf
dCBtX29yaWVudGF0aW9uIHsgMCB9OworI2VuZGlmCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAg
Ym9vbCBtX2hhc1NlbnRUQ0NEU2FuZGJveEV4dGVuc2lvbiB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2hhc1NlbnRDYW1lcmFTYW5kYm94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1faGFz
U2VudE1pY3JvcGhvbmVTYW5kYm94RXh0ZW5zaW9uIHsgZmFsc2UgfTsKICNlbmRpZgogICAgIEhh
c2hTZXQ8UEFMOjpTZXNzaW9uSUQ+IG1fc2Vzc2lvbklEczsKIH07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>