<?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>219972</bug_id>
          
          <creation_ts>2020-12-16 19:52:10 -0800</creation_ts>
          <short_desc>SpeechRecognitionRemoteRealtimeMediaSourceManager should not issue sandbox extension for mocked devices</short_desc>
          <delta_ts>2020-12-18 12:33:20 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sihui Liu">sihui_liu</reporter>
          <assigned_to name="Sihui Liu">sihui_liu</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1715303</commentid>
    <comment_count>0</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-16 19:52:10 -0800</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715305</commentid>
    <comment_count>1</comment_count>
      <attachid>416383</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-16 19:58:49 -0800</bug_when>
    <thetext>Created attachment 416383
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715312</commentid>
    <comment_count>2</comment_count>
      <attachid>416387</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-16 20:27:42 -0800</bug_when>
    <thetext>Created attachment 416387
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715405</commentid>
    <comment_count>3</comment_count>
      <attachid>416426</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-17 09:12:26 -0800</bug_when>
    <thetext>Created attachment 416426
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715576</commentid>
    <comment_count>4</comment_count>
      <attachid>416426</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-12-17 15:06:36 -0800</bug_when>
    <thetext>Comment on attachment 416426
Patch

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

&gt; Source/WebCore/platform/mediastream/CaptureDevice.h:70
&gt; +    bool mocked() const { return m_mocked; }
&gt; +    void setMocked(bool mocked) { m_mocked = mocked; }

Nit: I think `mockDevice` or `isMockDevice` would be better than `mocked`

&gt; Source/WebCore/platform/mediastream/CaptureDevice.h:133
&gt; +    bool m_mocked { false };

Is there any reason to not add this to the encoder and decoder methods?

&gt; Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSourceManager.h:76
&gt; +    HashSet&lt;WebCore::RealtimeMediaSourceIdentifier&gt; m_sourcesNeedSandboxExtension;

Nit: `m_sourcesNeedingSandboxExtension` might be a better name.

&gt; Source/WebKit/UIProcess/SpeechRecognitionServer.h:85
&gt; +    SpeechRecognitionCheckIfMockSpeechRecognitionEnabled m_checkIfmockSpeechRecognitionEnabled;

s/m_checkIfmock/m_checkIfMock/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715730</commentid>
    <comment_count>5</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-18 09:12:15 -0800</bug_when>
    <thetext>(In reply to Eric Carlson from comment #4)
&gt; Comment on attachment 416426 [details]
&gt; Patch

Thanks for the review!

&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=416426&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediastream/CaptureDevice.h:70
&gt; &gt; +    bool mocked() const { return m_mocked; }
&gt; &gt; +    void setMocked(bool mocked) { m_mocked = mocked; }
&gt; 
&gt; Nit: I think `mockDevice` or `isMockDevice` would be better than `mocked`

Will update.

&gt; 
&gt; &gt; Source/WebCore/platform/mediastream/CaptureDevice.h:133
&gt; &gt; +    bool m_mocked { false };
&gt; 
&gt; Is there any reason to not add this to the encoder and decoder methods?

Nope, will add

&gt; 
&gt; &gt; Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSourceManager.h:76
&gt; &gt; +    HashSet&lt;WebCore::RealtimeMediaSourceIdentifier&gt; m_sourcesNeedSandboxExtension;
&gt; 
&gt; Nit: `m_sourcesNeedingSandboxExtension` might be a better name.

Will update!

&gt; 
&gt; &gt; Source/WebKit/UIProcess/SpeechRecognitionServer.h:85
&gt; &gt; +    SpeechRecognitionCheckIfMockSpeechRecognitionEnabled m_checkIfmockSpeechRecognitionEnabled;
&gt; 
&gt; s/m_checkIfmock/m_checkIfMock/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715771</commentid>
    <comment_count>6</comment_count>
      <attachid>416534</attachid>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2020-12-18 11:33:51 -0800</bug_when>
    <thetext>Created attachment 416534
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715785</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-12-18 12:32:28 -0800</bug_when>
    <thetext>Committed r270986: &lt;https://trac.webkit.org/changeset/270986&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 416534.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1715786</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-18 12:33:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/72477329&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416383</attachid>
            <date>2020-12-16 19:58:49 -0800</date>
            <delta_ts>2020-12-16 20:32:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219972-20201216195847.patch</filename>
            <type>text/plain</type>
            <size>11991</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwODk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2QzZmQ0Njk1ZDA5ZjE0
OGYyMTFmZmI1OTVhYzIyMzIzMmFhYWU2MS4uOGUxYmRlNzFiZjE0ZDg1NTI5MDQxZDhmM2QzYTBk
Y2M2OTM1NmVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEyLTE2ICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFNwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIgc2hvdWxkIG5vdCBpc3N1ZSBzYW5kYm94
IGV4dGVuc2lvbiBmb3IgbW9ja2VkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTk3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmlj
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6bW9ja2VkIGNvbnN0KTogQWRk
IGEgbWVtYmVyIGluIENhcHR1cmVEZXZpY2UgdG8gaW5kaWNhdGUgaWYgaXQncyBtb2NrZWQgZGV2
aWNlLgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6c2V0TW9ja2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvQ2FwdHVyZURldmljZSk6CisKIDIwMjAtMTItMTYgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDogVXBkYXRlIGxpc3Qg
aGV1cmlzdGljcyB0byBpbmNsdWRlIGxpbmtlZCBsaXN0cyBpbnNpZGUgbmF2aWdhdGlvbiBjb250
YWluZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGU4ODczMWM5NGM0NzEwOGNkNjY5OWFlNjUzOTEzOWQzMThjZWU4
M2IuLmE3OGE4Y2MxYmY2NzMzZGNiOGM2YTA4NWYyMjRlMmQ0MjA2NDY2ZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMTItMTYgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5j
b20+CisKKyAgICAgICAgU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlciBzaG91bGQgbm90IGlzc3VlIHNhbmRib3ggZXh0ZW5zaW9uIGZvciBtb2NrZWQgZGV2
aWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5
OTcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJLaXQ6OlNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXI6OnN0YXJ0UHJvY2Vz
c2luZ1JlcXVlc3QpOiBXZSBuZWVkIHRvIHN5bmMgdGhlIHByZWZlcmVuY2Ugbm90IG9ubHkKKyAg
ICAgICAgb24gd2hlbiBtb2NrQ2FwdHVyZURldmljZXNFbmFibGVkIGlzIHNldCwgYnV0IGFsc28g
d2hlbiBpdCBpcyB1bnNldC4KKyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25S
ZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlNw
ZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OmFkZFNvdXJj
ZSk6IEdyYW50IHNhbmRib3ggZXh0ZW5zaW9ucyB0byB3ZWIgcHJvY2VzcworICAgICAgICB3aGVu
IHRoZSBmaXJzdCBzb3VyY2UgdGhhdCB1c2VzIGEgcmVhbCBkZXZpY2UgaXMgY3JlYXRlZC4KKyAg
ICAgICAgKFdlYktpdDo6U3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlcjo6cmVtb3ZlU291cmNlKTogUmV2b2tlIHNhbmRib3ggZXh0ZW5zaW9ucyBmcm9tIHdl
YiAKKyAgICAgICAgcHJvY2VzcyB3aGVuIHRoZSBsYXN0IHNvdXJjZSB0aGF0IHVzZXMgYSByZWFs
IGRldmljZSBpcyBkZWxldGUuCisgICAgICAgICogVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuY3BwOiBDb3JyZWN0IGEgdHlwby4KKyAgICAgICAgKFdl
YktpdDo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaDogQ29ycmVjdCBh
IHR5cG8KKwogMjAyMC0xMi0xNSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBDYWxscyB0byBzZXRGaXhlZExheW91dFNpemUoKSBzaG91bGQgbm90IGJl
IGluc2lkZSBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCmluZGV4IDU0ZThhYWNkNGU2MjM1
ZDhlNGU5MmYzNDM0Y2E4OTI0YmVmNDliOTEuLjlmNjA1NTAyNWZiNzM0ODg3YTIxYjYyYzFmNGQz
NDJhNzVlNGFiMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9DYXB0dXJlRGV2aWNlLmgKQEAgLTY2LDYgKzY2LDkgQEAgcHVibGljOgogICAgIGJvb2wg
aXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4gbV9kZWZhdWx0OyB9CiAgICAgdm9pZCBzZXRJc0Rl
ZmF1bHQoYm9vbCBpc0RlZmF1bHQpIHsgbV9kZWZhdWx0ID0gaXNEZWZhdWx0OyB9CiAKKyAgICBi
b29sIG1vY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fbW9ja2VkOyB9CisgICAgdm9pZCBzZXRNb2Nr
ZWQoYm9vbCBtb2NrZWQpIHsgbV9tb2NrZWQgPSBtb2NrZWQ7IH0KKwogICAgIGV4cGxpY2l0IG9w
ZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX3R5cGUgIT0gRGV2aWNlVHlwZTo6VW5rbm93
bjsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKQEAgLTEyNyw2ICsxMzAsNyBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBtX2dyb3VwSWQ7CiAgICAgYm9vbCBtX2VuYWJsZWQgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9kZWZhdWx0IHsgZmFsc2UgfTsKKyAgICBib29sIG1fbW9jayB7IGZhbHNl
IH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
Y3BwCmluZGV4IDI1ZjUyMDNkNGEyYTg4MGU4NGJiMmM5ZWYyZDg1MTU0MDkwOTVkZDMuLmVhY2Nl
OTAyNWNiNjYyZTY3YTE0ZWM2Y2YxYWViNTQ4ZGM3NzFkYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXIuY3BwCkBAIC0yNzQsNiArMjc0LDcgQEAgc3RhdGljIENhcHR1cmVEZXZpY2UgdG9DYXB0
dXJlRGV2aWNlKGNvbnN0IE1vY2tNZWRpYURldmljZSYgZGV2aWNlKQogewogICAgIGF1dG8gY2Fw
dHVyZURldmljZSA9IGRldmljZS5jYXB0dXJlRGV2aWNlKCk7CiAgICAgY2FwdHVyZURldmljZS5z
ZXRFbmFibGVkKHRydWUpOworICAgIGNhcHR1cmVEZXZpY2Uuc2V0TW9ja2VkKHRydWUpOwogICAg
IHJldHVybiBjYXB0dXJlRGV2aWNlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwCmlu
ZGV4IDY0MTU0N2I0ZDBmNGZiYTUyYWNlOGVmN2I2NTQ4Nzc2NWRkNDk2MzYuLmM2NjlhOWU3NmZh
OTg2YjcwNDAwYjc2NmUzMmMxN2FiMTk0MmZiNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIu
Y3BwCkBAIC0xMDMsOCArMTAzLDggQEAgdm9pZCBTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25N
YW5hZ2VyOjpzdGFydFByb2Nlc3NpbmdSZXF1ZXN0KCkKICAgICBtX21pY3JvcGhvbmVDaGVjayA9
IGNvbXB1dGVNaWNyb3Bob25lQWNjZXNzKCk7CiAgICAgbV9zcGVlY2hSZWNvZ25pdGlvblNlcnZp
Y2VDaGVjayA9IGNvbXB1dGVTcGVlY2hSZWNvZ25pdGlvblNlcnZpY2VBY2Nlc3MoKTsKIAorICAg
IG1fcGFnZS5zeW5jSWZNb2NrRGV2aWNlc0VuYWJsZWRDaGFuZ2VkKCk7CiAgICAgaWYgKG1fcGFn
ZS5wcmVmZXJlbmNlcygpLm1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoKSkgewotICAgICAgICBt
X3BhZ2Uuc3luY0lmTW9ja0RldmljZXNFbmFibGVkQ2hhbmdlZCgpOwogICAgICAgICBtX21pY3Jv
cGhvbmVDaGVjayA9IENoZWNrUmVzdWx0OjpHcmFudGVkOwogICAgICAgICBtX3NwZWVjaFJlY29n
bml0aW9uU2VydmljZUNoZWNrID0gQ2hlY2tSZXN1bHQ6OkdyYW50ZWQ7CiAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFs
dGltZU1lZGlhU291cmNlTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVl
Y2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcAppbmRleCBh
NzUxMGE2ZjM3NzIwZDJmMTk4NzhiMWFhYWY3ZTg1NmViYTgxZjY0Li45NGU3ZmRkY2RmODBkNzBk
NTI3OTkyMWVkYzJkMjQyMDY5ZDkxNjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJl
YWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcApAQCAtNDQsMTQgKzQ0LDE2IEBAIHZvaWQgU3Bl
ZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlcjo6YWRkU291cmNl
KFNwZWVjaFJlY29nbml0CiAgICAgQVNTRVJUKCFtX3NvdXJjZXMuY29udGFpbnMoaWRlbnRpZmll
cikpOwogICAgIG1fc291cmNlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQdHIoc291cmNlKSk7
CiAKLSNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJT05TKSAmJiBVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQotICAgIGlmICghbV9oYXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMpIHsKLSAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZUZvclRDQ0Q7Ci0gICAgICAgIFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS50Y2NkIl9zLCBt
X2Nvbm5lY3Rpb24tPmdldEF1ZGl0VG9rZW4oKSwgaGFuZGxlRm9yVENDRCk7Ci0gICAgICAgIFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGVGb3JNaWNyb3Bob25lOwotICAgICAgICBTYW5k
Ym94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUu
d2Via2l0Lm1pY3JvcGhvbmUiX3MsIGhhbmRsZUZvck1pY3JvcGhvbmUpOwotICAgICAgICBzZW5k
KE1lc3NhZ2VzOjpTcGVlY2hSZWNvZ25pdGlvblJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpH
cmFudFNhbmRib3hFeHRlbnNpb25zKGhhbmRsZUZvclRDQ0QsIGhhbmRsZUZvck1pY3JvcGhvbmUp
KTsKLSAgICAgICAgbV9oYXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMgPSB0cnVlOworI2lmIEVO
QUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCisgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmlzTW9jaygp
KSB7CisgICAgICAgIG1fc291cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uLmFkZChpZGVudGlmaWVy
KTsKKyAgICAgICAgaWYgKG1fc291cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uLnNpemUoKSA9PSAx
KSB7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9yVENDRDsK
KyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAo
ImNvbS5hcHBsZS50Y2NkIl9zLCBtX2Nvbm5lY3Rpb24tPmdldEF1ZGl0VG9rZW4oKSwgaGFuZGxl
Rm9yVENDRCk7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9y
TWljcm9waG9uZTsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZv
ckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSJfcywgaGFuZGxl
Rm9yTWljcm9waG9uZSk7CisgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpTcGVlY2hSZWNvZ25p
dGlvblJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpHcmFudFNhbmRib3hFeHRlbnNpb25zKGhh
bmRsZUZvclRDQ0QsIGhhbmRsZUZvck1pY3JvcGhvbmUpKTsKKyAgICAgICAgfQogICAgIH0KICNl
bmRpZgogCkBAIC02NCwxMCArNjYsMTAgQEAgdm9pZCBTcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJl
YWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpyZW1vdmVTb3VyY2UoU3BlZWNoUmVjb2cKICAgICBB
U1NFUlQobV9zb3VyY2VzLmdldChpZGVudGlmaWVyKSA9PSAmc291cmNlKTsKICAgICBtX3NvdXJj
ZXMucmVtb3ZlKGlkZW50aWZpZXIpOwogCi0jaWYgRU5BQkxFKFNBTkRCT1hfRVhURU5TSU9OUykg
JiYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSAgICBpZiAobV9zb3VyY2VzLmlzRW1wdHkoKSAm
JiBtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucykgewotICAgICAgICBzZW5kKE1lc3NhZ2Vz
OjpTcGVlY2hSZWNvZ25pdGlvblJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpSZXZva2VTYW5k
Ym94RXh0ZW5zaW9ucygpKTsKLSAgICAgICAgbV9oYXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMg
PSBmYWxzZTsKKyNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJT05TKQorICAgIGlmIChtX3NvdXJj
ZXNOZWVkU2FuZGJveEV4dGVuc2lvbi5yZW1vdmUoaWRlbnRpZmllcikpIHsKKyAgICAgICAgaWYg
KG1fc291cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHNl
bmQoTWVzc2FnZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6
OlJldm9rZVNhbmRib3hFeHRlbnNpb25zKCkpOwogICAgIH0KICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1l
TWVkaWFTb3VyY2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNv
Z25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmgKaW5kZXggZjRiNGQ4ODFl
ZjljYjkxNTc5MzM1ZDg4YzVlMjNhNDg5ZDhiMDA3NC4uODA5Y2ZmZjZmNDBmYTIyNDNlNjI2NDVi
NjIwOGNjN2FlYWRiNGVlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3Bl
ZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlci5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRp
YVNvdXJjZU1hbmFnZXIuaApAQCAtNzMsNyArNzMsNyBAQCBwcml2YXRlOgogCiAgICAgUmVmPElQ
Qzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwogICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUlkZW50aWZpZXIsIFdlYWtQdHI8U3BlZWNoUmVjb2duaXRpb25SZW1vdGVS
ZWFsdGltZU1lZGlhU291cmNlPj4gbV9zb3VyY2VzOwotICAgIGJvb2wgbV9oYXNHcmFudGVkU2Fu
ZGJveEV4dGVuc2lvbnMgeyBmYWxzZSB9OworICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUlkZW50aWZpZXI+IG1fc291cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uOwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5jcHAKaW5kZXggNmE2ZWU4NDhlMmNhNjk1M2E3ZGIx
YzY5M2IxOTIwMDdkYzFkZGViYy4uMGQwNTBjZTZkMThkYmVhZTgzNDAwNWNiOTA1Yjk3ZWRmODA3
OGVkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRp
b25TZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0
aW9uU2VydmVyLmNwcApAQCAtMzcsNyArMzcsNyBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiAKIAot
U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJlZjxJUEM6
OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbiwgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiBwZXJt
aXNzaW9uQ2hlY2tlciwgU3BlZWNoUmVjb2duaXRpb25DaGVja0lmbW9ja1NwZWVjaFJlY29nbml0
aW9uRW5hYmxlZCYmIGNoZWNrSWZFbmFibGVkCitTcGVlY2hSZWNvZ25pdGlvblNlcnZlcjo6U3Bl
ZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uLCBT
cGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIgaWRlbnRpZmllciwgU3BlZWNoUmVjb2du
aXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmIHBlcm1pc3Npb25DaGVja2VyLCBTcGVlY2hSZWNvZ25p
dGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYgY2hlY2tJZkVuYWJsZWQK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICwgUmVhbHRpbWVNZWRpYVNvdXJjZUNyZWF0
ZUZ1bmN0aW9uJiYgZnVuY3Rpb24KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmgKaW5kZXggZWIxMDIzYTIxZTY4ZDAwMmE3MmQy
YmM5NmNhNmQyNTdiNGI0NTcxMS4uM2I0ODk3NDFjOWY2ODRhNWEzOGMyMDJjZjVhNDdkZjYyMjA1
YjNiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRp
b25TZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlv
blNlcnZlci5oCkBAIC00NywxNiArNDcsMTYgQEAgZW51bSBjbGFzcyBTcGVlY2hSZWNvZ25pdGlv
blBlcm1pc3Npb25EZWNpc2lvbiA6IGJvb2w7CiAKIHVzaW5nIFNwZWVjaFJlY29nbml0aW9uU2Vy
dmVySWRlbnRpZmllciA9IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyOwogdXNpbmcgU3BlZWNoUmVj
b2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciA9IEZ1bmN0aW9uPHZvaWQoY29uc3QgV2ViQ29yZTo6
Q2xpZW50T3JpZ2luJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTcGVlY2hSZWNvZ25pdGlvblBl
cm1pc3Npb25EZWNpc2lvbik+JiYpPjsKLXVzaW5nIFNwZWVjaFJlY29nbml0aW9uQ2hlY2tJZm1v
Y2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQgPSBGdW5jdGlvbjxib29sKCk+OwordXNpbmcgU3Bl
ZWNoUmVjb2duaXRpb25DaGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCA9IEZ1bmN0
aW9uPGJvb2woKT47CiAKIGNsYXNzIFNwZWVjaFJlY29nbml0aW9uU2VydmVyIDogcHVibGljIENh
bk1ha2VXZWFrUHRyPFNwZWVjaFJlY29nbml0aW9uU2VydmVyPiwgcHVibGljIElQQzo6TWVzc2Fn
ZVJlY2VpdmVyLCBwcml2YXRlIElQQzo6TWVzc2FnZVNlbmRlciB7CiAgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB1c2lu
ZyBSZWFsdGltZU1lZGlhU291cmNlQ3JlYXRlRnVuY3Rpb24gPSBGdW5jdGlvbjxXZWJDb3JlOjpD
YXB0dXJlU291cmNlT3JFcnJvcigpPjsKLSAgICBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8
SVBDOjpDb25uZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIsIFNw
ZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVjb2duaXRpb25DaGVj
a0lmbW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmLCBSZWFsdGltZU1lZGlhU291cmNlQ3Jl
YXRlRnVuY3Rpb24mJik7CisgICAgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQQzo6Q29u
bmVjdGlvbj4mJiwgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXJJZGVudGlmaWVyLCBTcGVlY2hSZWNv
Z25pdGlvblBlcm1pc3Npb25DaGVja2VyJiYsIFNwZWVjaFJlY29nbml0aW9uQ2hlY2tJZk1vY2tT
cGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQmJiwgUmVhbHRpbWVNZWRpYVNvdXJjZUNyZWF0ZUZ1bmN0
aW9uJiYpOwogI2Vsc2UKLSAgICBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8SVBDOjpDb25u
ZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIsIFNwZWVjaFJlY29n
bml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVjb2duaXRpb25DaGVja0lmbW9ja1Nw
ZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmKTsKKyAgICBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcihS
ZWY8SVBDOjpDb25uZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIs
IFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVjb2duaXRpb25D
aGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmKTsKICNlbmRpZgogCiAgICAgdm9p
ZCBzdGFydChXZWJDb3JlOjpTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlm
aWVyLCBTdHJpbmcmJiBsYW5nLCBib29sIGNvbnRpbnVvdXMsIGJvb2wgaW50ZXJpbVJlc3VsdHMs
IHVpbnQ2NF90IG1heEFsdGVybmF0aXZlcywgV2ViQ29yZTo6Q2xpZW50T3JpZ2luJiYpOwpAQCAt
ODIsNyArODIsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8V2ViQ29yZTo6U3BlZWNoUmVjb2du
aXRpb25Db25uZWN0aW9uQ2xpZW50SWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6
OlNwZWVjaFJlY29nbml0aW9uUmVxdWVzdD4+IG1fcmVxdWVzdHM7CiAgICAgU3BlZWNoUmVjb2du
aXRpb25QZXJtaXNzaW9uQ2hlY2tlciBtX3Blcm1pc3Npb25DaGVja2VyOwogICAgIHN0ZDo6dW5p
cXVlX3B0cjxXZWJDb3JlOjpTcGVlY2hSZWNvZ25pemVyPiBtX3JlY29nbml6ZXI7Ci0gICAgU3Bl
ZWNoUmVjb2duaXRpb25DaGVja0lmbW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCBtX2NoZWNr
SWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkOworICAgIFNwZWVjaFJlY29nbml0aW9uQ2hl
Y2tJZk1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQgbV9jaGVja0lmbW9ja1NwZWVjaFJlY29n
bml0aW9uRW5hYmxlZDsKICAgICBib29sIG1faXNSZXNldHRpbmcgeyBmYWxzZSB9OwogCiAjaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkK
</data>
<flag name="commit-queue"
          id="433907"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416387</attachid>
            <date>2020-12-16 20:27:42 -0800</date>
            <delta_ts>2020-12-17 09:12:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219972-20201216202741.patch</filename>
            <type>text/plain</type>
            <size>11993</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwODk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2QzZmQ0Njk1ZDA5ZjE0
OGYyMTFmZmI1OTVhYzIyMzIzMmFhYWU2MS4uOGUxYmRlNzFiZjE0ZDg1NTI5MDQxZDhmM2QzYTBk
Y2M2OTM1NmVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEyLTE2ICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFNwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIgc2hvdWxkIG5vdCBpc3N1ZSBzYW5kYm94
IGV4dGVuc2lvbiBmb3IgbW9ja2VkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTk3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmlj
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6bW9ja2VkIGNvbnN0KTogQWRk
IGEgbWVtYmVyIGluIENhcHR1cmVEZXZpY2UgdG8gaW5kaWNhdGUgaWYgaXQncyBtb2NrZWQgZGV2
aWNlLgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6c2V0TW9ja2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvQ2FwdHVyZURldmljZSk6CisKIDIwMjAtMTItMTYgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDogVXBkYXRlIGxpc3Qg
aGV1cmlzdGljcyB0byBpbmNsdWRlIGxpbmtlZCBsaXN0cyBpbnNpZGUgbmF2aWdhdGlvbiBjb250
YWluZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGU4ODczMWM5NGM0NzEwOGNkNjY5OWFlNjUzOTEzOWQzMThjZWU4
M2IuLmE3OGE4Y2MxYmY2NzMzZGNiOGM2YTA4NWYyMjRlMmQ0MjA2NDY2ZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMTItMTYgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5j
b20+CisKKyAgICAgICAgU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlciBzaG91bGQgbm90IGlzc3VlIHNhbmRib3ggZXh0ZW5zaW9uIGZvciBtb2NrZWQgZGV2
aWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5
OTcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJLaXQ6OlNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXI6OnN0YXJ0UHJvY2Vz
c2luZ1JlcXVlc3QpOiBXZSBuZWVkIHRvIHN5bmMgdGhlIHByZWZlcmVuY2Ugbm90IG9ubHkKKyAg
ICAgICAgb24gd2hlbiBtb2NrQ2FwdHVyZURldmljZXNFbmFibGVkIGlzIHNldCwgYnV0IGFsc28g
d2hlbiBpdCBpcyB1bnNldC4KKyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25S
ZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlNw
ZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OmFkZFNvdXJj
ZSk6IEdyYW50IHNhbmRib3ggZXh0ZW5zaW9ucyB0byB3ZWIgcHJvY2VzcworICAgICAgICB3aGVu
IHRoZSBmaXJzdCBzb3VyY2UgdGhhdCB1c2VzIGEgcmVhbCBkZXZpY2UgaXMgY3JlYXRlZC4KKyAg
ICAgICAgKFdlYktpdDo6U3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlcjo6cmVtb3ZlU291cmNlKTogUmV2b2tlIHNhbmRib3ggZXh0ZW5zaW9ucyBmcm9tIHdl
YiAKKyAgICAgICAgcHJvY2VzcyB3aGVuIHRoZSBsYXN0IHNvdXJjZSB0aGF0IHVzZXMgYSByZWFs
IGRldmljZSBpcyBkZWxldGUuCisgICAgICAgICogVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuY3BwOiBDb3JyZWN0IGEgdHlwby4KKyAgICAgICAgKFdl
YktpdDo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaDogQ29ycmVjdCBh
IHR5cG8KKwogMjAyMC0xMi0xNSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBDYWxscyB0byBzZXRGaXhlZExheW91dFNpemUoKSBzaG91bGQgbm90IGJl
IGluc2lkZSBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCmluZGV4IDU0ZThhYWNkNGU2MjM1
ZDhlNGU5MmYzNDM0Y2E4OTI0YmVmNDliOTEuLmJhMTEyNDc3MDk4Mzk3MGUyYjI5ZWVhM2QyNzZj
ODA0NjA0ZGJlMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9DYXB0dXJlRGV2aWNlLmgKQEAgLTY2LDYgKzY2LDkgQEAgcHVibGljOgogICAgIGJvb2wg
aXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4gbV9kZWZhdWx0OyB9CiAgICAgdm9pZCBzZXRJc0Rl
ZmF1bHQoYm9vbCBpc0RlZmF1bHQpIHsgbV9kZWZhdWx0ID0gaXNEZWZhdWx0OyB9CiAKKyAgICBi
b29sIG1vY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fbW9ja2VkOyB9CisgICAgdm9pZCBzZXRNb2Nr
ZWQoYm9vbCBtb2NrZWQpIHsgbV9tb2NrZWQgPSBtb2NrZWQ7IH0KKwogICAgIGV4cGxpY2l0IG9w
ZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX3R5cGUgIT0gRGV2aWNlVHlwZTo6VW5rbm93
bjsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKQEAgLTEyNyw2ICsxMzAsNyBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBtX2dyb3VwSWQ7CiAgICAgYm9vbCBtX2VuYWJsZWQgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9kZWZhdWx0IHsgZmFsc2UgfTsKKyAgICBib29sIG1fbW9ja2VkIHsgZmFs
c2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5jcHAKaW5kZXggMjVmNTIwM2Q0YTJhODgwZTg0YmIyYzllZjJkODUxNTQwOTA5NWRkMy4uZWFj
Y2U5MDI1Y2I2NjJlNjdhMTRlYzZjZjFhZWI1NDhkYzc3MWRiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlci5jcHAKQEAgLTI3NCw2ICsyNzQsNyBAQCBzdGF0aWMgQ2FwdHVyZURldmljZSB0b0Nh
cHR1cmVEZXZpY2UoY29uc3QgTW9ja01lZGlhRGV2aWNlJiBkZXZpY2UpCiB7CiAgICAgYXV0byBj
YXB0dXJlRGV2aWNlID0gZGV2aWNlLmNhcHR1cmVEZXZpY2UoKTsKICAgICBjYXB0dXJlRGV2aWNl
LnNldEVuYWJsZWQodHJ1ZSk7CisgICAgY2FwdHVyZURldmljZS5zZXRNb2NrZWQodHJ1ZSk7CiAg
ICAgcmV0dXJuIGNhcHR1cmVEZXZpY2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHAK
aW5kZXggNjQxNTQ3YjRkMGY0ZmJhNTJhY2U4ZWY3YjY1NDg3NzY1ZGQ0OTYzNi4uYzY2OWE5ZTc2
ZmE5ODZiNzA0MDBiNzY2ZTMyYzE3YWIxOTQyZmI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdl
ci5jcHAKQEAgLTEwMyw4ICsxMDMsOCBAQCB2b2lkIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lv
bk1hbmFnZXI6OnN0YXJ0UHJvY2Vzc2luZ1JlcXVlc3QoKQogICAgIG1fbWljcm9waG9uZUNoZWNr
ID0gY29tcHV0ZU1pY3JvcGhvbmVBY2Nlc3MoKTsKICAgICBtX3NwZWVjaFJlY29nbml0aW9uU2Vy
dmljZUNoZWNrID0gY29tcHV0ZVNwZWVjaFJlY29nbml0aW9uU2VydmljZUFjY2VzcygpOwogCisg
ICAgbV9wYWdlLnN5bmNJZk1vY2tEZXZpY2VzRW5hYmxlZENoYW5nZWQoKTsKICAgICBpZiAobV9w
YWdlLnByZWZlcmVuY2VzKCkubW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZCgpKSB7Ci0gICAgICAg
IG1fcGFnZS5zeW5jSWZNb2NrRGV2aWNlc0VuYWJsZWRDaGFuZ2VkKCk7CiAgICAgICAgIG1fbWlj
cm9waG9uZUNoZWNrID0gQ2hlY2tSZXN1bHQ6OkdyYW50ZWQ7CiAgICAgICAgIG1fc3BlZWNoUmVj
b2duaXRpb25TZXJ2aWNlQ2hlY2sgPSBDaGVja1Jlc3VsdDo6R3JhbnRlZDsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJl
YWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Nw
ZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuY3BwCmluZGV4
IGE3NTEwYTZmMzc3MjBkMmYxOTg3OGIxYWFhZjdlODU2ZWJhODFmNjQuLjk0ZTdmZGRjZGY4MGQ3
MGQ1Mjc5OTIxZWRjMmQyNDIwNjlkOTE2NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3Rl
UmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuY3BwCkBAIC00NCwxNCArNDQsMTYgQEAgdm9pZCBT
cGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjphZGRTb3Vy
Y2UoU3BlZWNoUmVjb2duaXQKICAgICBBU1NFUlQoIW1fc291cmNlcy5jb250YWlucyhpZGVudGlm
aWVyKSk7CiAgICAgbV9zb3VyY2VzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihzb3VyY2Up
KTsKIAotI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpICYmIFVTRShBUFBMRV9JTlRFUk5B
TF9TREspCi0gICAgaWYgKCFtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucykgewotICAgICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9yVENDRDsKLSAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLnRjY2QiX3Ms
IG1fY29ubmVjdGlvbi0+Z2V0QXVkaXRUb2tlbigpLCBoYW5kbGVGb3JUQ0NEKTsKLSAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZUZvck1pY3JvcGhvbmU7Ci0gICAgICAgIFNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBs
ZS53ZWJraXQubWljcm9waG9uZSJfcywgaGFuZGxlRm9yTWljcm9waG9uZSk7Ci0gICAgICAgIHNl
bmQoTWVzc2FnZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6
OkdyYW50U2FuZGJveEV4dGVuc2lvbnMoaGFuZGxlRm9yVENDRCwgaGFuZGxlRm9yTWljcm9waG9u
ZSkpOwotICAgICAgICBtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucyA9IHRydWU7CisjaWYg
RU5BQkxFKFNBTkRCT1hfRVhURU5TSU9OUykKKyAgICBpZiAoIWNhcHR1cmVEZXZpY2UuaXNNb2Nr
KCkpIHsKKyAgICAgICAgbV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uYWRkKGlkZW50aWZp
ZXIpOworICAgICAgICBpZiAobV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uc2l6ZSgpID09
IDEpIHsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGVGb3JUQ0NE
OworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1
cCgiY29tLmFwcGxlLnRjY2QiX3MsIG1fY29ubmVjdGlvbi0+Z2V0QXVkaXRUb2tlbigpLCBoYW5k
bGVGb3JUQ0NEKTsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGVG
b3JNaWNyb3Bob25lOworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxl
Rm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBoYW5k
bGVGb3JNaWNyb3Bob25lKTsKKyAgICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OlNwZWVjaFJlY29n
bml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OkdyYW50U2FuZGJveEV4dGVuc2lvbnMo
aGFuZGxlRm9yVENDRCwgaGFuZGxlRm9yTWljcm9waG9uZSkpOworICAgICAgICB9CiAgICAgfQog
I2VuZGlmCiAKQEAgLTY0LDEwICs2NiwxMCBAQCB2b2lkIFNwZWVjaFJlY29nbml0aW9uUmVtb3Rl
UmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OnJlbW92ZVNvdXJjZShTcGVlY2hSZWNvZwogICAg
IEFTU0VSVChtX3NvdXJjZXMuZ2V0KGlkZW50aWZpZXIpID09ICZzb3VyY2UpOwogICAgIG1fc291
cmNlcy5yZW1vdmUoaWRlbnRpZmllcik7CiAKLSNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJT05T
KSAmJiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotICAgIGlmIChtX3NvdXJjZXMuaXNFbXB0eSgp
ICYmIG1faGFzR3JhbnRlZFNhbmRib3hFeHRlbnNpb25zKSB7Ci0gICAgICAgIHNlbmQoTWVzc2Fn
ZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OlJldm9rZVNh
bmRib3hFeHRlbnNpb25zKCkpOwotICAgICAgICBtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9u
cyA9IGZhbHNlOworI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCisgICAgaWYgKG1fc291
cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uLnJlbW92ZShpZGVudGlmaWVyKSkgeworICAgICAgICBp
ZiAobV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uaXNFbXB0eSgpKQorICAgICAgICAgICAg
c2VuZChNZXNzYWdlczo6U3BlZWNoUmVjb2duaXRpb25SZWFsdGltZU1lZGlhU291cmNlTWFuYWdl
cjo6UmV2b2tlU2FuZGJveEV4dGVuc2lvbnMoKSk7CiAgICAgfQogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRp
bWVNZWRpYVNvdXJjZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJl
Y29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuaAppbmRleCBmNGI0ZDg4
MWVmOWNiOTE1NzkzMzVkODhjNWUyM2E0ODlkOGIwMDc0Li44MDljZmZmNmY0MGZhMjI0M2U2MjY0
NWI2MjA4Y2M3YWVhZGI0ZWVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9T
cGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1l
ZGlhU291cmNlTWFuYWdlci5oCkBAIC03Myw3ICs3Myw3IEBAIHByaXZhdGU6CiAKICAgICBSZWY8
SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpSZWFs
dGltZU1lZGlhU291cmNlSWRlbnRpZmllciwgV2Vha1B0cjxTcGVlY2hSZWNvZ25pdGlvblJlbW90
ZVJlYWx0aW1lTWVkaWFTb3VyY2U+PiBtX3NvdXJjZXM7Ci0gICAgYm9vbCBtX2hhc0dyYW50ZWRT
YW5kYm94RXh0ZW5zaW9ucyB7IGZhbHNlIH07CisgICAgSGFzaFNldDxXZWJDb3JlOjpSZWFsdGlt
ZU1lZGlhU291cmNlSWRlbnRpZmllcj4gbV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb247CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmNwcAppbmRleCA2YTZlZTg0OGUyY2E2OTUzYTdk
YjFjNjkzYjE5MjAwN2RjMWRkZWJjLi4wZDA1MGNlNmQxOGRiZWFlODM0MDA1Y2I5MDViOTdlZGY4
MDc4ZWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25p
dGlvblNlcnZlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2du
aXRpb25TZXJ2ZXIuY3BwCkBAIC0zNyw3ICszNyw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
Ci1TcGVlY2hSZWNvZ25pdGlvblNlcnZlcjo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQ
Qzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmIHBl
cm1pc3Npb25DaGVja2VyLCBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2du
aXRpb25FbmFibGVkJiYgY2hlY2tJZkVuYWJsZWQKK1NwZWVjaFJlY29nbml0aW9uU2VydmVyOjpT
cGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rpb24s
IFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciBpZGVudGlmaWVyLCBTcGVlY2hSZWNv
Z25pdGlvblBlcm1pc3Npb25DaGVja2VyJiYgcGVybWlzc2lvbkNoZWNrZXIsIFNwZWVjaFJlY29n
bml0aW9uQ2hlY2tJZk1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQmJiBjaGVja0lmRW5hYmxl
ZAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgLCBSZWFsdGltZU1lZGlhU291cmNlQ3Jl
YXRlRnVuY3Rpb24mJiBmdW5jdGlvbgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaAppbmRleCBlYjEwMjNhMjFlNjhkMDAyYTcy
ZDJiYzk2Y2E2ZDI1N2I0YjQ1NzExLi4zYjQ4OTc0MWM5ZjY4NGE1YTM4YzIwMmNmNWE0N2RmNjIy
MDViM2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25p
dGlvblNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0
aW9uU2VydmVyLmgKQEAgLTQ3LDE2ICs0NywxNiBAQCBlbnVtIGNsYXNzIFNwZWVjaFJlY29nbml0
aW9uUGVybWlzc2lvbkRlY2lzaW9uIDogYm9vbDsKIAogdXNpbmcgU3BlZWNoUmVjb2duaXRpb25T
ZXJ2ZXJJZGVudGlmaWVyID0gV2ViQ29yZTo6UGFnZUlkZW50aWZpZXI7CiB1c2luZyBTcGVlY2hS
ZWNvZ25pdGlvblBlcm1pc3Npb25DaGVja2VyID0gRnVuY3Rpb248dm9pZChjb25zdCBXZWJDb3Jl
OjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFNwZWVjaFJlY29nbml0aW9u
UGVybWlzc2lvbkRlY2lzaW9uKT4mJik+OwotdXNpbmcgU3BlZWNoUmVjb2duaXRpb25DaGVja0lm
bW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCA9IEZ1bmN0aW9uPGJvb2woKT47Cit1c2luZyBT
cGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkID0gRnVu
Y3Rpb248Ym9vbCgpPjsKIAogY2xhc3MgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIgOiBwdWJsaWMg
Q2FuTWFrZVdlYWtQdHI8U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI+LCBwdWJsaWMgSVBDOjpNZXNz
YWdlUmVjZWl2ZXIsIHByaXZhdGUgSVBDOjpNZXNzYWdlU2VuZGVyIHsKICAgICBXVEZfTUFLRV9G
QVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHVz
aW5nIFJlYWx0aW1lTWVkaWFTb3VyY2VDcmVhdGVGdW5jdGlvbiA9IEZ1bmN0aW9uPFdlYkNvcmU6
OkNhcHR1cmVTb3VyY2VPckVycm9yKCk+OwotICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJl
ZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciwg
U3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlvbkNo
ZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYsIFJlYWx0aW1lTWVkaWFTb3VyY2VD
cmVhdGVGdW5jdGlvbiYmKTsKKyAgICBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8SVBDOjpD
b25uZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIsIFNwZWVjaFJl
Y29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVjb2duaXRpb25DaGVja0lmTW9j
a1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmLCBSZWFsdGltZU1lZGlhU291cmNlQ3JlYXRlRnVu
Y3Rpb24mJik7CiAjZWxzZQotICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJlZjxJUEM6OkNv
bm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciwgU3BlZWNoUmVj
b2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2Nr
U3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYpOworICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVy
KFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmll
ciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlv
bkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYpOwogI2VuZGlmCiAKICAgICB2
b2lkIHN0YXJ0KFdlYkNvcmU6OlNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbkNsaWVudElkZW50
aWZpZXIsIFN0cmluZyYmIGxhbmcsIGJvb2wgY29udGludW91cywgYm9vbCBpbnRlcmltUmVzdWx0
cywgdWludDY0X3QgbWF4QWx0ZXJuYXRpdmVzLCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mJik7CkBA
IC04Miw3ICs4Miw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpTcGVlY2hSZWNv
Z25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29y
ZTo6U3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0Pj4gbV9yZXF1ZXN0czsKICAgICBTcGVlY2hSZWNv
Z25pdGlvblBlcm1pc3Npb25DaGVja2VyIG1fcGVybWlzc2lvbkNoZWNrZXI7CiAgICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OlNwZWVjaFJlY29nbml6ZXI+IG1fcmVjb2duaXplcjsKLSAgICBT
cGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkIG1fY2hl
Y2tJZm1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQ7CisgICAgU3BlZWNoUmVjb2duaXRpb25D
aGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCBtX2NoZWNrSWZtb2NrU3BlZWNoUmVj
b2duaXRpb25FbmFibGVkOwogICAgIGJvb2wgbV9pc1Jlc2V0dGluZyB7IGZhbHNlIH07CiAKICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416426</attachid>
            <date>2020-12-17 09:12:26 -0800</date>
            <delta_ts>2020-12-18 11:33:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219972-20201217091225.patch</filename>
            <type>text/plain</type>
            <size>11993</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwODk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2QzZmQ0Njk1ZDA5ZjE0
OGYyMTFmZmI1OTVhYzIyMzIzMmFhYWU2MS4uOGUxYmRlNzFiZjE0ZDg1NTI5MDQxZDhmM2QzYTBk
Y2M2OTM1NmVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEyLTE2ICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFNwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIgc2hvdWxkIG5vdCBpc3N1ZSBzYW5kYm94
IGV4dGVuc2lvbiBmb3IgbW9ja2VkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTk3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmlj
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6bW9ja2VkIGNvbnN0KTogQWRk
IGEgbWVtYmVyIGluIENhcHR1cmVEZXZpY2UgdG8gaW5kaWNhdGUgaWYgaXQncyBtb2NrZWQgZGV2
aWNlLgorICAgICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6c2V0TW9ja2VkKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvQ2FwdHVyZURldmljZSk6CisKIDIwMjAtMTItMTYgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDogVXBkYXRlIGxpc3Qg
aGV1cmlzdGljcyB0byBpbmNsdWRlIGxpbmtlZCBsaXN0cyBpbnNpZGUgbmF2aWdhdGlvbiBjb250
YWluZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IGU4ODczMWM5NGM0NzEwOGNkNjY5OWFlNjUzOTEzOWQzMThjZWU4
M2IuLmE3OGE4Y2MxYmY2NzMzZGNiOGM2YTA4NWYyMjRlMmQ0MjA2NDY2ZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMTItMTYgIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5j
b20+CisKKyAgICAgICAgU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlciBzaG91bGQgbm90IGlzc3VlIHNhbmRib3ggZXh0ZW5zaW9uIGZvciBtb2NrZWQgZGV2
aWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5
OTcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJLaXQ6OlNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXI6OnN0YXJ0UHJvY2Vz
c2luZ1JlcXVlc3QpOiBXZSBuZWVkIHRvIHN5bmMgdGhlIHByZWZlcmVuY2Ugbm90IG9ubHkKKyAg
ICAgICAgb24gd2hlbiBtb2NrQ2FwdHVyZURldmljZXNFbmFibGVkIGlzIHNldCwgYnV0IGFsc28g
d2hlbiBpdCBpcyB1bnNldC4KKyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25S
ZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlNw
ZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OmFkZFNvdXJj
ZSk6IEdyYW50IHNhbmRib3ggZXh0ZW5zaW9ucyB0byB3ZWIgcHJvY2VzcworICAgICAgICB3aGVu
IHRoZSBmaXJzdCBzb3VyY2UgdGhhdCB1c2VzIGEgcmVhbCBkZXZpY2UgaXMgY3JlYXRlZC4KKyAg
ICAgICAgKFdlYktpdDo6U3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlcjo6cmVtb3ZlU291cmNlKTogUmV2b2tlIHNhbmRib3ggZXh0ZW5zaW9ucyBmcm9tIHdl
YiAKKyAgICAgICAgcHJvY2VzcyB3aGVuIHRoZSBsYXN0IHNvdXJjZSB0aGF0IHVzZXMgYSByZWFs
IGRldmljZSBpcyBkZWxldGUuCisgICAgICAgICogVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuY3BwOiBDb3JyZWN0IGEgdHlwby4KKyAgICAgICAgKFdl
YktpdDo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaDogQ29ycmVjdCBh
IHR5cG8KKwogMjAyMC0xMi0xNSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBDYWxscyB0byBzZXRGaXhlZExheW91dFNpemUoKSBzaG91bGQgbm90IGJl
IGluc2lkZSBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCmluZGV4IDU0ZThhYWNkNGU2MjM1
ZDhlNGU5MmYzNDM0Y2E4OTI0YmVmNDliOTEuLmJhMTEyNDc3MDk4Mzk3MGUyYjI5ZWVhM2QyNzZj
ODA0NjA0ZGJlMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9DYXB0dXJlRGV2aWNlLmgKQEAgLTY2LDYgKzY2LDkgQEAgcHVibGljOgogICAgIGJvb2wg
aXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4gbV9kZWZhdWx0OyB9CiAgICAgdm9pZCBzZXRJc0Rl
ZmF1bHQoYm9vbCBpc0RlZmF1bHQpIHsgbV9kZWZhdWx0ID0gaXNEZWZhdWx0OyB9CiAKKyAgICBi
b29sIG1vY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fbW9ja2VkOyB9CisgICAgdm9pZCBzZXRNb2Nr
ZWQoYm9vbCBtb2NrZWQpIHsgbV9tb2NrZWQgPSBtb2NrZWQ7IH0KKwogICAgIGV4cGxpY2l0IG9w
ZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX3R5cGUgIT0gRGV2aWNlVHlwZTo6VW5rbm93
bjsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKQEAgLTEyNyw2ICsxMzAsNyBAQCBwcml2
YXRlOgogICAgIFN0cmluZyBtX2dyb3VwSWQ7CiAgICAgYm9vbCBtX2VuYWJsZWQgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9kZWZhdWx0IHsgZmFsc2UgfTsKKyAgICBib29sIG1fbW9ja2VkIHsgZmFs
c2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5jcHAKaW5kZXggMjVmNTIwM2Q0YTJhODgwZTg0YmIyYzllZjJkODUxNTQwOTA5NWRkMy4uZWFj
Y2U5MDI1Y2I2NjJlNjdhMTRlYzZjZjFhZWI1NDhkYzc3MWRiYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlci5jcHAKQEAgLTI3NCw2ICsyNzQsNyBAQCBzdGF0aWMgQ2FwdHVyZURldmljZSB0b0Nh
cHR1cmVEZXZpY2UoY29uc3QgTW9ja01lZGlhRGV2aWNlJiBkZXZpY2UpCiB7CiAgICAgYXV0byBj
YXB0dXJlRGV2aWNlID0gZGV2aWNlLmNhcHR1cmVEZXZpY2UoKTsKICAgICBjYXB0dXJlRGV2aWNl
LnNldEVuYWJsZWQodHJ1ZSk7CisgICAgY2FwdHVyZURldmljZS5zZXRNb2NrZWQodHJ1ZSk7CiAg
ICAgcmV0dXJuIGNhcHR1cmVEZXZpY2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHAK
aW5kZXggNjQxNTQ3YjRkMGY0ZmJhNTJhY2U4ZWY3YjY1NDg3NzY1ZGQ0OTYzNi4uYzY2OWE5ZTc2
ZmE5ODZiNzA0MDBiNzY2ZTMyYzE3YWIxOTQyZmI1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdl
ci5jcHAKQEAgLTEwMyw4ICsxMDMsOCBAQCB2b2lkIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lv
bk1hbmFnZXI6OnN0YXJ0UHJvY2Vzc2luZ1JlcXVlc3QoKQogICAgIG1fbWljcm9waG9uZUNoZWNr
ID0gY29tcHV0ZU1pY3JvcGhvbmVBY2Nlc3MoKTsKICAgICBtX3NwZWVjaFJlY29nbml0aW9uU2Vy
dmljZUNoZWNrID0gY29tcHV0ZVNwZWVjaFJlY29nbml0aW9uU2VydmljZUFjY2VzcygpOwogCisg
ICAgbV9wYWdlLnN5bmNJZk1vY2tEZXZpY2VzRW5hYmxlZENoYW5nZWQoKTsKICAgICBpZiAobV9w
YWdlLnByZWZlcmVuY2VzKCkubW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZCgpKSB7Ci0gICAgICAg
IG1fcGFnZS5zeW5jSWZNb2NrRGV2aWNlc0VuYWJsZWRDaGFuZ2VkKCk7CiAgICAgICAgIG1fbWlj
cm9waG9uZUNoZWNrID0gQ2hlY2tSZXN1bHQ6OkdyYW50ZWQ7CiAgICAgICAgIG1fc3BlZWNoUmVj
b2duaXRpb25TZXJ2aWNlQ2hlY2sgPSBDaGVja1Jlc3VsdDo6R3JhbnRlZDsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJl
YWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Nw
ZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuY3BwCmluZGV4
IGE3NTEwYTZmMzc3MjBkMmYxOTg3OGIxYWFhZjdlODU2ZWJhODFmNjQuLmE2N2MzNTdhNmIyMjE1
MzIyYzQyZTM1ODFmZTJjYWFjMTQ2YTFjNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3Rl
UmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuY3BwCkBAIC00NCwxNCArNDQsMTYgQEAgdm9pZCBT
cGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjphZGRTb3Vy
Y2UoU3BlZWNoUmVjb2duaXQKICAgICBBU1NFUlQoIW1fc291cmNlcy5jb250YWlucyhpZGVudGlm
aWVyKSk7CiAgICAgbV9zb3VyY2VzLmFkZChpZGVudGlmaWVyLCBtYWtlV2Vha1B0cihzb3VyY2Up
KTsKIAotI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpICYmIFVTRShBUFBMRV9JTlRFUk5B
TF9TREspCi0gICAgaWYgKCFtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucykgewotICAgICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9yVENDRDsKLSAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLnRjY2QiX3Ms
IG1fY29ubmVjdGlvbi0+Z2V0QXVkaXRUb2tlbigpLCBoYW5kbGVGb3JUQ0NEKTsKLSAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZUZvck1pY3JvcGhvbmU7Ci0gICAgICAgIFNh
bmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdlbmVyaWNFeHRlbnNpb24oImNvbS5hcHBs
ZS53ZWJraXQubWljcm9waG9uZSJfcywgaGFuZGxlRm9yTWljcm9waG9uZSk7Ci0gICAgICAgIHNl
bmQoTWVzc2FnZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6
OkdyYW50U2FuZGJveEV4dGVuc2lvbnMoaGFuZGxlRm9yVENDRCwgaGFuZGxlRm9yTWljcm9waG9u
ZSkpOwotICAgICAgICBtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucyA9IHRydWU7CisjaWYg
RU5BQkxFKFNBTkRCT1hfRVhURU5TSU9OUykKKyAgICBpZiAoIWNhcHR1cmVEZXZpY2UubW9ja2Vk
KCkpIHsKKyAgICAgICAgbV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uYWRkKGlkZW50aWZp
ZXIpOworICAgICAgICBpZiAobV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uc2l6ZSgpID09
IDEpIHsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGVGb3JUQ0NE
OworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1
cCgiY29tLmFwcGxlLnRjY2QiX3MsIG1fY29ubmVjdGlvbi0+Z2V0QXVkaXRUb2tlbigpLCBoYW5k
bGVGb3JUQ0NEKTsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGVG
b3JNaWNyb3Bob25lOworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxl
Rm9yR2VuZXJpY0V4dGVuc2lvbigiY29tLmFwcGxlLndlYmtpdC5taWNyb3Bob25lIl9zLCBoYW5k
bGVGb3JNaWNyb3Bob25lKTsKKyAgICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OlNwZWVjaFJlY29n
bml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OkdyYW50U2FuZGJveEV4dGVuc2lvbnMo
aGFuZGxlRm9yVENDRCwgaGFuZGxlRm9yTWljcm9waG9uZSkpOworICAgICAgICB9CiAgICAgfQog
I2VuZGlmCiAKQEAgLTY0LDEwICs2NiwxMCBAQCB2b2lkIFNwZWVjaFJlY29nbml0aW9uUmVtb3Rl
UmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OnJlbW92ZVNvdXJjZShTcGVlY2hSZWNvZwogICAg
IEFTU0VSVChtX3NvdXJjZXMuZ2V0KGlkZW50aWZpZXIpID09ICZzb3VyY2UpOwogICAgIG1fc291
cmNlcy5yZW1vdmUoaWRlbnRpZmllcik7CiAKLSNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJT05T
KSAmJiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotICAgIGlmIChtX3NvdXJjZXMuaXNFbXB0eSgp
ICYmIG1faGFzR3JhbnRlZFNhbmRib3hFeHRlbnNpb25zKSB7Ci0gICAgICAgIHNlbmQoTWVzc2Fn
ZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXI6OlJldm9rZVNh
bmRib3hFeHRlbnNpb25zKCkpOwotICAgICAgICBtX2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9u
cyA9IGZhbHNlOworI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCisgICAgaWYgKG1fc291
cmNlc05lZWRTYW5kYm94RXh0ZW5zaW9uLnJlbW92ZShpZGVudGlmaWVyKSkgeworICAgICAgICBp
ZiAobV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb24uaXNFbXB0eSgpKQorICAgICAgICAgICAg
c2VuZChNZXNzYWdlczo6U3BlZWNoUmVjb2duaXRpb25SZWFsdGltZU1lZGlhU291cmNlTWFuYWdl
cjo6UmV2b2tlU2FuZGJveEV4dGVuc2lvbnMoKSk7CiAgICAgfQogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRp
bWVNZWRpYVNvdXJjZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJl
Y29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuaAppbmRleCBmNGI0ZDg4
MWVmOWNiOTE1NzkzMzVkODhjNWUyM2E0ODlkOGIwMDc0Li44MDljZmZmNmY0MGZhMjI0M2U2MjY0
NWI2MjA4Y2M3YWVhZGI0ZWVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9T
cGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1l
ZGlhU291cmNlTWFuYWdlci5oCkBAIC03Myw3ICs3Myw3IEBAIHByaXZhdGU6CiAKICAgICBSZWY8
SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5lY3Rpb247CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpSZWFs
dGltZU1lZGlhU291cmNlSWRlbnRpZmllciwgV2Vha1B0cjxTcGVlY2hSZWNvZ25pdGlvblJlbW90
ZVJlYWx0aW1lTWVkaWFTb3VyY2U+PiBtX3NvdXJjZXM7Ci0gICAgYm9vbCBtX2hhc0dyYW50ZWRT
YW5kYm94RXh0ZW5zaW9ucyB7IGZhbHNlIH07CisgICAgSGFzaFNldDxXZWJDb3JlOjpSZWFsdGlt
ZU1lZGlhU291cmNlSWRlbnRpZmllcj4gbV9zb3VyY2VzTmVlZFNhbmRib3hFeHRlbnNpb247CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmNwcAppbmRleCA2YTZlZTg0OGUyY2E2OTUzYTdk
YjFjNjkzYjE5MjAwN2RjMWRkZWJjLi4wZDA1MGNlNmQxOGRiZWFlODM0MDA1Y2I5MDViOTdlZGY4
MDc4ZWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25p
dGlvblNlcnZlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2du
aXRpb25TZXJ2ZXIuY3BwCkBAIC0zNyw3ICszNyw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIAog
Ci1TcGVlY2hSZWNvZ25pdGlvblNlcnZlcjo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQ
Qzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmIHBl
cm1pc3Npb25DaGVja2VyLCBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2du
aXRpb25FbmFibGVkJiYgY2hlY2tJZkVuYWJsZWQKK1NwZWVjaFJlY29nbml0aW9uU2VydmVyOjpT
cGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rpb24s
IFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciBpZGVudGlmaWVyLCBTcGVlY2hSZWNv
Z25pdGlvblBlcm1pc3Npb25DaGVja2VyJiYgcGVybWlzc2lvbkNoZWNrZXIsIFNwZWVjaFJlY29n
bml0aW9uQ2hlY2tJZk1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQmJiBjaGVja0lmRW5hYmxl
ZAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgLCBSZWFsdGltZU1lZGlhU291cmNlQ3Jl
YXRlRnVuY3Rpb24mJiBmdW5jdGlvbgogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaAppbmRleCBlYjEwMjNhMjFlNjhkMDAyYTcy
ZDJiYzk2Y2E2ZDI1N2I0YjQ1NzExLi4zYjQ4OTc0MWM5ZjY4NGE1YTM4YzIwMmNmNWE0N2RmNjIy
MDViM2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25p
dGlvblNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0
aW9uU2VydmVyLmgKQEAgLTQ3LDE2ICs0NywxNiBAQCBlbnVtIGNsYXNzIFNwZWVjaFJlY29nbml0
aW9uUGVybWlzc2lvbkRlY2lzaW9uIDogYm9vbDsKIAogdXNpbmcgU3BlZWNoUmVjb2duaXRpb25T
ZXJ2ZXJJZGVudGlmaWVyID0gV2ViQ29yZTo6UGFnZUlkZW50aWZpZXI7CiB1c2luZyBTcGVlY2hS
ZWNvZ25pdGlvblBlcm1pc3Npb25DaGVja2VyID0gRnVuY3Rpb248dm9pZChjb25zdCBXZWJDb3Jl
OjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFNwZWVjaFJlY29nbml0aW9u
UGVybWlzc2lvbkRlY2lzaW9uKT4mJik+OwotdXNpbmcgU3BlZWNoUmVjb2duaXRpb25DaGVja0lm
bW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCA9IEZ1bmN0aW9uPGJvb2woKT47Cit1c2luZyBT
cGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkID0gRnVu
Y3Rpb248Ym9vbCgpPjsKIAogY2xhc3MgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIgOiBwdWJsaWMg
Q2FuTWFrZVdlYWtQdHI8U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI+LCBwdWJsaWMgSVBDOjpNZXNz
YWdlUmVjZWl2ZXIsIHByaXZhdGUgSVBDOjpNZXNzYWdlU2VuZGVyIHsKICAgICBXVEZfTUFLRV9G
QVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHVz
aW5nIFJlYWx0aW1lTWVkaWFTb3VyY2VDcmVhdGVGdW5jdGlvbiA9IEZ1bmN0aW9uPFdlYkNvcmU6
OkNhcHR1cmVTb3VyY2VPckVycm9yKCk+OwotICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJl
ZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciwg
U3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlvbkNo
ZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYsIFJlYWx0aW1lTWVkaWFTb3VyY2VD
cmVhdGVGdW5jdGlvbiYmKTsKKyAgICBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcihSZWY8SVBDOjpD
b25uZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIsIFNwZWVjaFJl
Y29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVjb2duaXRpb25DaGVja0lmTW9j
a1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmLCBSZWFsdGltZU1lZGlhU291cmNlQ3JlYXRlRnVu
Y3Rpb24mJik7CiAjZWxzZQotICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJlZjxJUEM6OkNv
bm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmllciwgU3BlZWNoUmVj
b2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2Nr
U3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYpOworICAgIFNwZWVjaFJlY29nbml0aW9uU2VydmVy
KFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRlbnRpZmll
ciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNvZ25pdGlv
bkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYpOwogI2VuZGlmCiAKICAgICB2
b2lkIHN0YXJ0KFdlYkNvcmU6OlNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbkNsaWVudElkZW50
aWZpZXIsIFN0cmluZyYmIGxhbmcsIGJvb2wgY29udGludW91cywgYm9vbCBpbnRlcmltUmVzdWx0
cywgdWludDY0X3QgbWF4QWx0ZXJuYXRpdmVzLCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mJik7CkBA
IC04Miw3ICs4Miw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpTcGVlY2hSZWNv
Z25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29y
ZTo6U3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0Pj4gbV9yZXF1ZXN0czsKICAgICBTcGVlY2hSZWNv
Z25pdGlvblBlcm1pc3Npb25DaGVja2VyIG1fcGVybWlzc2lvbkNoZWNrZXI7CiAgICAgc3RkOjp1
bmlxdWVfcHRyPFdlYkNvcmU6OlNwZWVjaFJlY29nbml6ZXI+IG1fcmVjb2duaXplcjsKLSAgICBT
cGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkIG1fY2hl
Y2tJZm1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQ7CisgICAgU3BlZWNoUmVjb2duaXRpb25D
aGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCBtX2NoZWNrSWZtb2NrU3BlZWNoUmVj
b2duaXRpb25FbmFibGVkOwogICAgIGJvb2wgbV9pc1Jlc2V0dGluZyB7IGZhbHNlIH07CiAKICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>416534</attachid>
            <date>2020-12-18 11:33:51 -0800</date>
            <delta_ts>2020-12-18 12:32:28 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-219972-20201218113350.patch</filename>
            <type>text/plain</type>
            <size>13835</size>
            <attacher name="Sihui Liu">sihui_liu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwOTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjY1MWMyZmQzOTg2OTJj
YWIyZDQ3YWM3ZDUzYTEzY2UxN2Y3MDZhYS4uYjJhZWU5Y2Q3NmU4NmFlMTM1NTJkYWIyZjY3ODU4
OTg5YzZlMjkyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIwLTEyLTE4ICBTaWh1
aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUuY29tPgorCisgICAgICAgIFNwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIgc2hvdWxkIG5vdCBpc3N1ZSBzYW5kYm94
IGV4dGVuc2lvbiBmb3IgbW9ja2VkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTk3MgorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMg
Q2FybHNvbi4KKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OmlzTW9ja0RldmljZSBjb25zdCk6
IEFkZCBhIG1lbWJlciBpbiBDYXB0dXJlRGV2aWNlIHRvIGluZGljYXRlIGlmIGl0J3MgbW9ja2Vk
IGRldmljZS4KKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OnNldElzTW9ja0Rldmlj
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjplbmNvZGUgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6ZGVjb2RlKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OnRvQ2FwdHVyZURldmljZSk6CisKIDIwMjAtMTItMTggIExhdXJvIE1vdXJhICA8bG1vdXJh
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW1dQRV0gVW5yZXZpZXdlZCBidWlsZGZpeCBhZnRlciBy
MjcwOTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCmluZGV4IDE3MjJiNzJhMzkzMTVjNmRhZTIyMGVkYjBiNTljYzU5MjYyZmRi
OTguLjFiZGJmOWNhZTgzMWZjNmZkY2NiOGIzM2Q3NGQzNzRhZGRlMzM0YTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMTItMTggIFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5j
b20+CisKKyAgICAgICAgU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlciBzaG91bGQgbm90IGlzc3VlIHNhbmRib3ggZXh0ZW5zaW9uIGZvciBtb2NrZWQgZGV2
aWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE5
OTcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBDYXJsc29uLgorCisgICAgICAgICogVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwOgorICAgICAgICAo
V2ViS2l0OjpTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyOjpzdGFydFByb2Nlc3Np
bmdSZXF1ZXN0KTogV2UgbmVlZCB0byBzeW5jIHRoZSBwcmVmZXJlbmNlIG5vdCBvbmx5CisgICAg
ICAgIG9uIHdoZW4gbW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZCBpcyBzZXQsIGJ1dCBhbHNvIHdo
ZW4gaXQgaXMgdW5zZXQuCisgICAgICAgICogVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVt
b3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpTcGVl
Y2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjphZGRTb3VyY2Up
OiBHcmFudCBzYW5kYm94IGV4dGVuc2lvbnMgdG8gd2ViIHByb2Nlc3MKKyAgICAgICAgd2hlbiB0
aGUgZmlyc3Qgc291cmNlIHRoYXQgdXNlcyBhIHJlYWwgZGV2aWNlIGlzIGNyZWF0ZWQuCisgICAg
ICAgIChXZWJLaXQ6OlNwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZU1h
bmFnZXI6OnJlbW92ZVNvdXJjZSk6IFJldm9rZSBzYW5kYm94IGV4dGVuc2lvbnMgZnJvbSB3ZWIg
CisgICAgICAgIHByb2Nlc3Mgd2hlbiB0aGUgbGFzdCBzb3VyY2UgdGhhdCB1c2VzIGEgcmVhbCBk
ZXZpY2UgaXMgZGVsZXRlLgorICAgICAgICAqIFVJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJl
bW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmg6CisgICAgICAgICogVUlQcm9jZXNzL1Nw
ZWVjaFJlY29nbml0aW9uU2VydmVyLmNwcDogQ29ycmVjdCBhIHR5cG8uCisgICAgICAgIChXZWJL
aXQ6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyOjpTcGVlY2hSZWNvZ25pdGlvblNlcnZlcik6Cisg
ICAgICAgICogVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmg6IENvcnJlY3QgYSB0
eXBvCisKIDIwMjAtMTItMTcgIEtpbW1vIEtpbm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4K
IAogICAgICAgICBSRUdSRVNTSU9OIChyMjY4Mzg2KTogU25hcHNob3RzIG9mIFdlYkdMIGNvbnRl
bnQgaW4gdGhlIHRhYiBwaWNrZXIgZG9uJ3Qgd29yayAoYmxhY2sgbWFwIG9uIEdvb2dsZSBNYXBz
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVy
ZURldmljZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vQ2FwdHVyZURl
dmljZS5oCmluZGV4IDU0ZThhYWNkNGU2MjM1ZDhlNGU5MmYzNDM0Y2E4OTI0YmVmNDliOTEuLmE5
NGYwOGJmOGVjZDA1Yjc0YTdjOGNhYzU5MDIzMWMyNzRlMzFjOTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmgKQEAgLTY2LDYg
KzY2LDkgQEAgcHVibGljOgogICAgIGJvb2wgaXNEZWZhdWx0KCkgY29uc3QgeyByZXR1cm4gbV9k
ZWZhdWx0OyB9CiAgICAgdm9pZCBzZXRJc0RlZmF1bHQoYm9vbCBpc0RlZmF1bHQpIHsgbV9kZWZh
dWx0ID0gaXNEZWZhdWx0OyB9CiAKKyAgICBib29sIGlzTW9ja0RldmljZSgpIGNvbnN0IHsgcmV0
dXJuIG1faXNNb2NrRGV2aWNlOyB9CisgICAgdm9pZCBzZXRJc01vY2tEZXZpY2UoYm9vbCBpc01v
Y2tEZXZpY2UpIHsgbV9pc01vY2tEZXZpY2UgPSBpc01vY2tEZXZpY2U7IH0KKwogICAgIGV4cGxp
Y2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX3R5cGUgIT0gRGV2aWNlVHlwZTo6
VW5rbm93bjsgfQogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKQEAgLTc4LDYgKzgxLDcgQEAg
cHVibGljOgogICAgICAgICBlbmNvZGVyIDw8IG1fZW5hYmxlZDsKICAgICAgICAgZW5jb2RlciA8
PCBtX2RlZmF1bHQ7CiAgICAgICAgIGVuY29kZXIgPDwgbV90eXBlOworICAgICAgICBlbmNvZGVy
IDw8IG1faXNNb2NrRGV2aWNlOwogICAgIH0KIAogICAgIHRlbXBsYXRlIDxjbGFzcyBEZWNvZGVy
PgpAQCAtMTEzLDkgKzExNywxNSBAQCBwdWJsaWM6CiAgICAgICAgIGlmICghdHlwZSkKICAgICAg
ICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaXNN
b2NrRGV2aWNlOworICAgICAgICBkZWNvZGVyID4+IGlzTW9ja0RldmljZTsKKyAgICAgICAgaWYg
KCFpc01vY2tEZXZpY2UpCisgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCiAgICAg
ICAgIE9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IGRldmljZSA9IHt7IFdURk1vdmUoKnBlcnNpc3Rl
bnRJZCksIFdURk1vdmUoKnR5cGUpLCBXVEZNb3ZlKCpsYWJlbCksIFdURk1vdmUoKmdyb3VwSWQp
IH19OwogICAgICAgICBkZXZpY2UtPnNldEVuYWJsZWQoKmVuYWJsZWQpOwogICAgICAgICBkZXZp
Y2UtPnNldElzRGVmYXVsdCgqaXNEZWZhdWx0KTsKKyAgICAgICAgZGV2aWNlLT5zZXRJc01vY2tE
ZXZpY2UoKmlzTW9ja0RldmljZSk7CiAgICAgICAgIHJldHVybiBkZXZpY2U7CiAgICAgfQogI2Vu
ZGlmCkBAIC0xMjcsNiArMTM3LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9ncm91cElkOwog
ICAgIGJvb2wgbV9lbmFibGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fZGVmYXVsdCB7IGZhbHNl
IH07CisgICAgYm9vbCBtX2lzTW9ja0RldmljZSB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCmluZGV4IDI1ZjUyMDNkNGEy
YTg4MGU4NGJiMmM5ZWYyZDg1MTU0MDkwOTVkZDMuLjE0ZjRjNmViMThlYWJiOTI4MGRiMDEzM2Q0
ZDQwMWNmYTk5ZTFjMWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCkBAIC0yNzQsNiAr
Mjc0LDcgQEAgc3RhdGljIENhcHR1cmVEZXZpY2UgdG9DYXB0dXJlRGV2aWNlKGNvbnN0IE1vY2tN
ZWRpYURldmljZSYgZGV2aWNlKQogewogICAgIGF1dG8gY2FwdHVyZURldmljZSA9IGRldmljZS5j
YXB0dXJlRGV2aWNlKCk7CiAgICAgY2FwdHVyZURldmljZS5zZXRFbmFibGVkKHRydWUpOworICAg
IGNhcHR1cmVEZXZpY2Uuc2V0SXNNb2NrRGV2aWNlKHRydWUpOwogICAgIHJldHVybiBjYXB0dXJl
RGV2aWNlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hS
ZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwCmluZGV4IDY0MTU0N2I0ZDBm
NGZiYTUyYWNlOGVmN2I2NTQ4Nzc2NWRkNDk2MzYuLmM2NjlhOWU3NmZhOTg2YjcwNDAwYjc2NmUz
MmMxN2FiMTk0MmZiNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVj
aFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuY3BwCkBAIC0xMDMsOCAr
MTAzLDggQEAgdm9pZCBTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyOjpzdGFydFBy
b2Nlc3NpbmdSZXF1ZXN0KCkKICAgICBtX21pY3JvcGhvbmVDaGVjayA9IGNvbXB1dGVNaWNyb3Bo
b25lQWNjZXNzKCk7CiAgICAgbV9zcGVlY2hSZWNvZ25pdGlvblNlcnZpY2VDaGVjayA9IGNvbXB1
dGVTcGVlY2hSZWNvZ25pdGlvblNlcnZpY2VBY2Nlc3MoKTsKIAorICAgIG1fcGFnZS5zeW5jSWZN
b2NrRGV2aWNlc0VuYWJsZWRDaGFuZ2VkKCk7CiAgICAgaWYgKG1fcGFnZS5wcmVmZXJlbmNlcygp
Lm1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoKSkgewotICAgICAgICBtX3BhZ2Uuc3luY0lmTW9j
a0RldmljZXNFbmFibGVkQ2hhbmdlZCgpOwogICAgICAgICBtX21pY3JvcGhvbmVDaGVjayA9IENo
ZWNrUmVzdWx0OjpHcmFudGVkOwogICAgICAgICBtX3NwZWVjaFJlY29nbml0aW9uU2VydmljZUNo
ZWNrID0gQ2hlY2tSZXN1bHQ6OkdyYW50ZWQ7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNl
TWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJl
bW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcAppbmRleCBhNzUxMGE2ZjM3NzIwZDJm
MTk4NzhiMWFhYWY3ZTg1NmViYTgxZjY0Li5jZjZmZTQyM2Q3OGI3NjI5YjdmOTlkNWMxZmJlZGJj
MTVjYWJjYjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNv
Z25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3Vy
Y2VNYW5hZ2VyLmNwcApAQCAtNDQsMTQgKzQ0LDE2IEBAIHZvaWQgU3BlZWNoUmVjb2duaXRpb25S
ZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlcjo6YWRkU291cmNlKFNwZWVjaFJlY29nbml0
CiAgICAgQVNTRVJUKCFtX3NvdXJjZXMuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgIG1fc291
cmNlcy5hZGQoaWRlbnRpZmllciwgbWFrZVdlYWtQdHIoc291cmNlKSk7CiAKLSNpZiBFTkFCTEUo
U0FOREJPWF9FWFRFTlNJT05TKSAmJiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotICAgIGlmICgh
bV9oYXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMpIHsKLSAgICAgICAgU2FuZGJveEV4dGVuc2lv
bjo6SGFuZGxlIGhhbmRsZUZvclRDQ0Q7Ci0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS50Y2NkIl9zLCBtX2Nvbm5lY3Rpb24tPmdl
dEF1ZGl0VG9rZW4oKSwgaGFuZGxlRm9yVENDRCk7Ci0gICAgICAgIFNhbmRib3hFeHRlbnNpb246
OkhhbmRsZSBoYW5kbGVGb3JNaWNyb3Bob25lOwotICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpj
cmVhdGVIYW5kbGVGb3JHZW5lcmljRXh0ZW5zaW9uKCJjb20uYXBwbGUud2Via2l0Lm1pY3JvcGhv
bmUiX3MsIGhhbmRsZUZvck1pY3JvcGhvbmUpOwotICAgICAgICBzZW5kKE1lc3NhZ2VzOjpTcGVl
Y2hSZWNvZ25pdGlvblJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpHcmFudFNhbmRib3hFeHRl
bnNpb25zKGhhbmRsZUZvclRDQ0QsIGhhbmRsZUZvck1pY3JvcGhvbmUpKTsKLSAgICAgICAgbV9o
YXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMgPSB0cnVlOworI2lmIEVOQUJMRShTQU5EQk9YX0VY
VEVOU0lPTlMpCisgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmlzTW9ja0RldmljZSgpKSB7CisgICAg
ICAgIG1fc291cmNlc05lZWRpbmdTYW5kYm94RXh0ZW5zaW9uLmFkZChpZGVudGlmaWVyKTsKKyAg
ICAgICAgaWYgKG1fc291cmNlc05lZWRpbmdTYW5kYm94RXh0ZW5zaW9uLnNpemUoKSA9PSAxKSB7
CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9yVENDRDsKKyAg
ICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNv
bS5hcHBsZS50Y2NkIl9zLCBtX2Nvbm5lY3Rpb24tPmdldEF1ZGl0VG9rZW4oKSwgaGFuZGxlRm9y
VENDRCk7CisgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlRm9yTWlj
cm9waG9uZTsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvckdl
bmVyaWNFeHRlbnNpb24oImNvbS5hcHBsZS53ZWJraXQubWljcm9waG9uZSJfcywgaGFuZGxlRm9y
TWljcm9waG9uZSk7CisgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpTcGVlY2hSZWNvZ25pdGlv
blJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpHcmFudFNhbmRib3hFeHRlbnNpb25zKGhhbmRs
ZUZvclRDQ0QsIGhhbmRsZUZvck1pY3JvcGhvbmUpKTsKKyAgICAgICAgfQogICAgIH0KICNlbmRp
ZgogCkBAIC02NCwxMCArNjYsMTAgQEAgdm9pZCBTcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0
aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpyZW1vdmVTb3VyY2UoU3BlZWNoUmVjb2cKICAgICBBU1NF
UlQobV9zb3VyY2VzLmdldChpZGVudGlmaWVyKSA9PSAmc291cmNlKTsKICAgICBtX3NvdXJjZXMu
cmVtb3ZlKGlkZW50aWZpZXIpOwogCi0jaWYgRU5BQkxFKFNBTkRCT1hfRVhURU5TSU9OUykgJiYg
VVNFKEFQUExFX0lOVEVSTkFMX1NESykKLSAgICBpZiAobV9zb3VyY2VzLmlzRW1wdHkoKSAmJiBt
X2hhc0dyYW50ZWRTYW5kYm94RXh0ZW5zaW9ucykgewotICAgICAgICBzZW5kKE1lc3NhZ2VzOjpT
cGVlY2hSZWNvZ25pdGlvblJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyOjpSZXZva2VTYW5kYm94
RXh0ZW5zaW9ucygpKTsKLSAgICAgICAgbV9oYXNHcmFudGVkU2FuZGJveEV4dGVuc2lvbnMgPSBm
YWxzZTsKKyNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJT05TKQorICAgIGlmIChtX3NvdXJjZXNO
ZWVkaW5nU2FuZGJveEV4dGVuc2lvbi5yZW1vdmUoaWRlbnRpZmllcikpIHsKKyAgICAgICAgaWYg
KG1fc291cmNlc05lZWRpbmdTYW5kYm94RXh0ZW5zaW9uLmlzRW1wdHkoKSkKKyAgICAgICAgICAg
IHNlbmQoTWVzc2FnZXM6OlNwZWVjaFJlY29nbml0aW9uUmVhbHRpbWVNZWRpYVNvdXJjZU1hbmFn
ZXI6OlJldm9rZVNhbmRib3hFeHRlbnNpb25zKCkpOwogICAgIH0KICNlbmRpZgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0
aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hS
ZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmgKaW5kZXggZjRiNGQ4
ODFlZjljYjkxNTc5MzM1ZDg4YzVlMjNhNDg5ZDhiMDA3NC4uMDg5YTVhYjRhYWRjOWUyZGJhZjM3
Zjg3NGQ4ZjkzZWNiYTUxNTUxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
U3BlZWNoUmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVN
ZWRpYVNvdXJjZU1hbmFnZXIuaApAQCAtNzMsNyArNzMsNyBAQCBwcml2YXRlOgogCiAgICAgUmVm
PElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwogICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVh
bHRpbWVNZWRpYVNvdXJjZUlkZW50aWZpZXIsIFdlYWtQdHI8U3BlZWNoUmVjb2duaXRpb25SZW1v
dGVSZWFsdGltZU1lZGlhU291cmNlPj4gbV9zb3VyY2VzOwotICAgIGJvb2wgbV9oYXNHcmFudGVk
U2FuZGJveEV4dGVuc2lvbnMgeyBmYWxzZSB9OworICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUlkZW50aWZpZXI+IG1fc291cmNlc05lZWRpbmdTYW5kYm94RXh0ZW5zaW9u
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5jcHAKaW5kZXggNmE2ZWU4NDhlMmNhNjk1
M2E3ZGIxYzY5M2IxOTIwMDdkYzFkZGViYy4uZmM0ZGJjZjRkZjNlYzg1MzJkMTRmZjM0NzczM2E2
ZTAyMDM4ODNhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVj
b2duaXRpb25TZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1NwZWVjaFJl
Y29nbml0aW9uU2VydmVyLmNwcApAQCAtMzcsNyArMzcsNyBAQAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKIAotU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI6OlNwZWVjaFJlY29nbml0aW9uU2VydmVyKFJl
ZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbiwgU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXIm
JiBwZXJtaXNzaW9uQ2hlY2tlciwgU3BlZWNoUmVjb2duaXRpb25DaGVja0lmbW9ja1NwZWVjaFJl
Y29nbml0aW9uRW5hYmxlZCYmIGNoZWNrSWZFbmFibGVkCitTcGVlY2hSZWNvZ25pdGlvblNlcnZl
cjo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0
aW9uLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklkZW50aWZpZXIgaWRlbnRpZmllciwgU3BlZWNo
UmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmIHBlcm1pc3Npb25DaGVja2VyLCBTcGVlY2hS
ZWNvZ25pdGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYgY2hlY2tJZkVu
YWJsZWQKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICwgUmVhbHRpbWVNZWRpYVNvdXJj
ZUNyZWF0ZUZ1bmN0aW9uJiYgZnVuY3Rpb24KICNlbmRpZgpAQCAtNDUsNyArNDUsNyBAQCBTcGVl
Y2hSZWNvZ25pdGlvblNlcnZlcjo6U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIoUmVmPElQQzo6Q29u
bmVjdGlvbj4mJiBjb25uZWN0aQogICAgIDogbV9jb25uZWN0aW9uKFdURk1vdmUoY29ubmVjdGlv
bikpCiAgICAgLCBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKICAgICAsIG1fcGVybWlzc2lvbkNo
ZWNrZXIoV1RGTW92ZShwZXJtaXNzaW9uQ2hlY2tlcikpCi0gICAgLCBtX2NoZWNrSWZtb2NrU3Bl
ZWNoUmVjb2duaXRpb25FbmFibGVkKFdURk1vdmUoY2hlY2tJZkVuYWJsZWQpKQorICAgICwgbV9j
aGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZChXVEZNb3ZlKGNoZWNrSWZFbmFibGVk
KSkKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgICwgbV9yZWFsdGltZU1lZGlhU291cmNl
Q3JlYXRlRnVuY3Rpb24oV1RGTW92ZShmdW5jdGlvbikpCiAjZW5kaWYKQEAgLTEyNSw3ICsxMjUs
NyBAQCB2b2lkIFNwZWVjaFJlY29nbml0aW9uU2VydmVyOjpoYW5kbGVSZXF1ZXN0KFdlYkNvcmU6
OlNwZWVjaFJlY29nbml0aW9uUmVxdWVzdCYgcgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgYm9vbCBtb2NrRGV2aWNlQ2FwdHVyZXNFbmFibGVkID0gbV9jaGVja0lmbW9ja1NwZWVjaFJl
Y29nbml0aW9uRW5hYmxlZCgpOworICAgIGJvb2wgbW9ja0RldmljZUNhcHR1cmVzRW5hYmxlZCA9
IG1fY2hlY2tJZk1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQoKTsKICAgICBtX3JlY29nbml6
ZXItPnN0YXJ0KGNsaWVudElkZW50aWZpZXIsIHNvdXJjZU9yRXJyb3Iuc291cmNlKCksIG1vY2tE
ZXZpY2VDYXB0dXJlc0VuYWJsZWQsIHJlcXVlc3QubGFuZygpLCByZXF1ZXN0LmNvbnRpbnVvdXMo
KSwgcmVxdWVzdC5pbnRlcmltUmVzdWx0cygpLCByZXF1ZXN0Lm1heEFsdGVybmF0aXZlcygpKTsK
ICNlbHNlCiAgICAgbV9yZXF1ZXN0cy5yZW1vdmUoY2xpZW50SWRlbnRpZmllcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3BlZWNoUmVjb2duaXRpb25TZXJ2ZXIuaAppbmRleCBl
YjEwMjNhMjFlNjhkMDAyYTcyZDJiYzk2Y2E2ZDI1N2I0YjQ1NzExLi5mZGRhYWM4MTdmZjMyZmY0
ZDgyM2MzZWViZDQ0NDg4N2FjYThmOGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9TcGVlY2hSZWNvZ25pdGlvblNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1NwZWVjaFJlY29nbml0aW9uU2VydmVyLmgKQEAgLTQ3LDE2ICs0NywxNiBAQCBlbnVtIGNs
YXNzIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkRlY2lzaW9uIDogYm9vbDsKIAogdXNpbmcg
U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXJJZGVudGlmaWVyID0gV2ViQ29yZTo6UGFnZUlkZW50aWZp
ZXI7CiB1c2luZyBTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25DaGVja2VyID0gRnVuY3Rpb248
dm9pZChjb25zdCBXZWJDb3JlOjpDbGllbnRPcmlnaW4mLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkRlY2lzaW9uKT4mJik+OwotdXNpbmcgU3BlZWNo
UmVjb2duaXRpb25DaGVja0lmbW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCA9IEZ1bmN0aW9u
PGJvb2woKT47Cit1c2luZyBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2du
aXRpb25FbmFibGVkID0gRnVuY3Rpb248Ym9vbCgpPjsKIAogY2xhc3MgU3BlZWNoUmVjb2duaXRp
b25TZXJ2ZXIgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8U3BlZWNoUmVjb2duaXRpb25TZXJ2ZXI+
LCBwdWJsaWMgSVBDOjpNZXNzYWdlUmVjZWl2ZXIsIHByaXZhdGUgSVBDOjpNZXNzYWdlU2VuZGVy
IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogICAgIHVzaW5nIFJlYWx0aW1lTWVkaWFTb3VyY2VDcmVhdGVGdW5jdGlvbiA9
IEZ1bmN0aW9uPFdlYkNvcmU6OkNhcHR1cmVTb3VyY2VPckVycm9yKCk+OwotICAgIFNwZWVjaFJl
Y29nbml0aW9uU2VydmVyKFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9u
U2VydmVySWRlbnRpZmllciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBT
cGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYsIFJl
YWx0aW1lTWVkaWFTb3VyY2VDcmVhdGVGdW5jdGlvbiYmKTsKKyAgICBTcGVlY2hSZWNvZ25pdGlv
blNlcnZlcihSZWY8SVBDOjpDb25uZWN0aW9uPiYmLCBTcGVlY2hSZWNvZ25pdGlvblNlcnZlcklk
ZW50aWZpZXIsIFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkNoZWNrZXImJiwgU3BlZWNoUmVj
b2duaXRpb25DaGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCYmLCBSZWFsdGltZU1l
ZGlhU291cmNlQ3JlYXRlRnVuY3Rpb24mJik7CiAjZWxzZQotICAgIFNwZWVjaFJlY29nbml0aW9u
U2VydmVyKFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0aW9uU2VydmVySWRl
bnRpZmllciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYmLCBTcGVlY2hSZWNv
Z25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYpOworICAgIFNwZWVj
aFJlY29nbml0aW9uU2VydmVyKFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYsIFNwZWVjaFJlY29nbml0
aW9uU2VydmVySWRlbnRpZmllciwgU3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uQ2hlY2tlciYm
LCBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkJiYp
OwogI2VuZGlmCiAKICAgICB2b2lkIHN0YXJ0KFdlYkNvcmU6OlNwZWVjaFJlY29nbml0aW9uQ29u
bmVjdGlvbkNsaWVudElkZW50aWZpZXIsIFN0cmluZyYmIGxhbmcsIGJvb2wgY29udGludW91cywg
Ym9vbCBpbnRlcmltUmVzdWx0cywgdWludDY0X3QgbWF4QWx0ZXJuYXRpdmVzLCBXZWJDb3JlOjpD
bGllbnRPcmlnaW4mJik7CkBAIC04Miw3ICs4Miw3IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxX
ZWJDb3JlOjpTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLCBzdGQ6
OnVuaXF1ZV9wdHI8V2ViQ29yZTo6U3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0Pj4gbV9yZXF1ZXN0
czsKICAgICBTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25DaGVja2VyIG1fcGVybWlzc2lvbkNo
ZWNrZXI7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OlNwZWVjaFJlY29nbml6ZXI+IG1f
cmVjb2duaXplcjsKLSAgICBTcGVlY2hSZWNvZ25pdGlvbkNoZWNrSWZtb2NrU3BlZWNoUmVjb2du
aXRpb25FbmFibGVkIG1fY2hlY2tJZm1vY2tTcGVlY2hSZWNvZ25pdGlvbkVuYWJsZWQ7CisgICAg
U3BlZWNoUmVjb2duaXRpb25DaGVja0lmTW9ja1NwZWVjaFJlY29nbml0aW9uRW5hYmxlZCBtX2No
ZWNrSWZNb2NrU3BlZWNoUmVjb2duaXRpb25FbmFibGVkOwogICAgIGJvb2wgbV9pc1Jlc2V0dGlu
ZyB7IGZhbHNlIH07CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>