<?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>224239</bug_id>
          
          <creation_ts>2021-04-06 10:06:17 -0700</creation_ts>
          <short_desc>[WebXR] Introduce XRDeviceIdentifier and XRDeviceInfo to be used to communicate device info</short_desc>
          <delta_ts>2021-04-08 13:35:53 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ada Chan">adachan</reporter>
          <assigned_to name="Ada Chan">adachan</assigned_to>
          <cc>dino</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1747486</commentid>
    <comment_count>0</comment_count>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-06 10:06:17 -0700</bug_when>
    <thetext>[WebXR] Introduce XRDeviceIdentifier and XRDeviceInfo to be used to communicate device info</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747507</commentid>
    <comment_count>1</comment_count>
      <attachid>425298</attachid>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-06 10:27:59 -0700</bug_when>
    <thetext>Created attachment 425298
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747523</commentid>
    <comment_count>2</comment_count>
      <attachid>425298</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-04-06 10:54:23 -0700</bug_when>
    <thetext>Comment on attachment 425298
Patch

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

&gt; Source/WebKit/Shared/Cocoa/XRDeviceInfo.mm:41
&gt; +    encoder &lt;&lt; static_cast&lt;uint64_t&gt;(features.size());
&gt; +    for (auto feature : features)
&gt; +        encoder &lt;&lt; feature;

Odd, WebKit2&apos;s ArgumentCoders.h totally has a VectorArgumentCoder. Do you need this custom implementation?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747549</commentid>
    <comment_count>3</comment_count>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-06 11:42:34 -0700</bug_when>
    <thetext>(In reply to Tim Horton from comment #2)
&gt; Comment on attachment 425298 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=425298&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/Shared/Cocoa/XRDeviceInfo.mm:41
&gt; &gt; +    encoder &lt;&lt; static_cast&lt;uint64_t&gt;(features.size());
&gt; &gt; +    for (auto feature : features)
&gt; &gt; +        encoder &lt;&lt; feature;
&gt; 
&gt; Odd, WebKit2&apos;s ArgumentCoders.h totally has a VectorArgumentCoder. Do you
&gt; need this custom implementation?

Ah, I did not realize that. I&apos;ll update the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747551</commentid>
    <comment_count>4</comment_count>
      <attachid>425306</attachid>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-06 11:46:02 -0700</bug_when>
    <thetext>Created attachment 425306
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748059</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-07 14:08:33 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 425306 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748061</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-07 14:12:43 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 425306 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748080</commentid>
    <comment_count>7</comment_count>
      <attachid>425443</attachid>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-07 14:52:40 -0700</bug_when>
    <thetext>Created attachment 425443
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748115</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-07 15:55:59 -0700</bug_when>
    <thetext>Committed r275640: &lt;https://commits.webkit.org/r275640&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425443.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748116</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-07 15:56:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/76369842&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748355</commentid>
    <comment_count>10</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-08 10:50:10 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748356</commentid>
    <comment_count>11</comment_count>
      <attachid>425520</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-08 10:50:12 -0700</bug_when>
    <thetext>Created attachment 425520
Unreviewed build fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748357</commentid>
    <comment_count>12</comment_count>
    <who name="Ada Chan">adachan</who>
    <bug_when>2021-04-08 10:51:00 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #11)
&gt; Created attachment 425520 [details]
&gt; Unreviewed build fix

Thanks Wenson!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1748377</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-08 11:21:26 -0700</bug_when>
    <thetext>Committed r275663 (236299@main): &lt;https://commits.webkit.org/236299@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425520.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425298</attachid>
            <date>2021-04-06 10:27:59 -0700</date>
            <delta_ts>2021-04-06 11:46:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224239-20210406102759.patch</filename>
            <type>text/plain</type>
            <size>17287</size>
            <attacher name="Ada Chan">adachan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGY1ZDY3NTE3ZmYyMGM3NWM4
NzBlNjJlMDE4OWFhMmI5ZDllNGI1ODEuLjU5ZGJjYzZjY2U4YThhYjAyOGUxZGJkZjRkZGM1MmZi
NWQwMTVjMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDQtMDYgIEFkYSBDaGFu
ICA8YWRhLmNoYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJYUl0gSW50cm9kdWNlIFhSRGV2
aWNlSWRlbnRpZmllciBhbmQgWFJEZXZpY2VJbmZvIHRvIGJlIHVzZWQgdG8gY29tbXVuaWNhdGUg
ZGV2aWNlIGluZm8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNDIzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFRoZXNlIGNsYXNzZXMgYXJlIGNvZGFibGUgc28gdGhleSBjYW4gYmUgdXNlZCBpbiBtZXNz
YWdlcyBhY3Jvc3MgVUkvd2ViIHByb2Nlc3MgYm91bmRhcnkuCisgICAgICAgIEluIGEgZnV0dXJl
IHBhdGNoLCB0aGVzZSBjbGFzc2VzIHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgZGV2aWNlIG9iamVj
dHMgcmV0dXJuZWQgZnJvbQorICAgICAgICBXZWJDaHJvbWVDbGllbnQ6OmVudW1lcmF0ZUltbWVy
c2l2ZVhSRGV2aWNlcygpLgorCisgICAgICAgICogU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRlbnRp
Zmllci5oOiBBZGRlZC4KKyAgICAgICAgVGhpcyBjb2RhYmxlIHR5cGUgd2lsbCBiZSB1c2VkIHRv
IGlkZW50aWZ5IGEgZGV2aWNlLgorICAgICAgICAqIFNoYXJlZC9Db2NvYS9YUkRldmljZUluZm8u
aDogQWRkZWQuCisgICAgICAgICogU2hhcmVkL0NvY29hL1hSRGV2aWNlSW5mby5tbTogQWRkZWQu
CisgICAgICAgIChXZWJLaXQ6OlhSRGV2aWNlSW5mbzo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAg
KFdlYktpdDo6WFJEZXZpY2VJbmZvOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJDb3Jl
QXJndW1lbnRDb2RlcnMuaDoKKyAgICAgICAgQWRkIEVudW1UcmFpdHMgZm9yIFBsYXRmb3JtWFI6
OlJlZmVyZW5jZVNwYWNlVHlwZSBzbyB3ZSBjYW4gZW5jb2RlIGl0LgorICAgICAgICAqIFNvdXJj
ZXNDb2NvYS50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisKIDIwMjEtMDQtMDIgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0dQVVBdIFBvd2VyIHJlZ3Jlc3Npb246IGF1ZGlvIGhhcmR3YXJlIGlzIGNvbmZpZ3VyZWQg
Zm9yIDEyOCBmcmFtZSBwcmVmZXJyZWQgYnVmZmVyIHNpemUgZHVyaW5nIFZpZGVvQXVkaW8gcGxh
eWJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRl
bnRpZmllci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJZGVudGlmaWVy
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzgxOGJiMmJhZGNjZWE0MzNhZmRiYTg1ZWQwYjY4Y2RlZTk5ZDE2NAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRl
bnRpZmllci5oCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShXRUJYUikKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisK
K25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIFhSRGV2aWNlSWRlbnRpZmllclR5cGUgeyB9Owor
dXNpbmcgWFJEZXZpY2VJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxYUkRldmljZUlkZW50
aWZpZXJUeXBlPjsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQlhSKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLmggYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9Db2NvYS9YUkRldmljZUluZm8uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NTc2YjFmN2ZlMWFjNmUx
NGY5MTBhODQ1ODUyZGU0ZGE2NWE5ZTYwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLmgKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQlhSKQorCisjaW5jbHVkZSAiWFJEZXZp
Y2VJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVhSLmg+CisKK25hbWVz
cGFjZSBJUEMgeworY2xhc3MgRGVjb2RlcjsKK2NsYXNzIEVuY29kZXI7Cit9CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitzdHJ1Y3QgWFJEZXZpY2VJbmZvIHsKKyAgICBYUkRldmljZUlkZW50aWZp
ZXIgaWRlbnRpZmllcjsKKyAgICBib29sIHN1cHBvcnRzT3JpZW50YXRpb25UcmFja2luZyB7IGZh
bHNlIH07CisgICAgYm9vbCBzdXBwb3J0c1N0ZXJlb1JlbmRlcmluZyB7IGZhbHNlIH07CisgICAg
UGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0dXJlTGlzdCBmZWF0dXJlczsKKworICAgIHZvaWQgZW5j
b2RlKElQQzo6RW5jb2RlciYpIGNvbnN0OworICAgIHN0YXRpYyBPcHRpb25hbDxYUkRldmljZUlu
Zm8+IGRlY29kZShJUEM6OkRlY29kZXImKTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAor
CisjZW5kaWYgLy8gRU5BQkxFKFdFQlhSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvQ29jb2EvWFJEZXZpY2VJbmZvLm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJE
ZXZpY2VJbmZvLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4NTRhZjZjYjEwYjRhNjU0ZTVkOWVmN2UyNjVkYjNh
OWMxODQyM2UKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9Y
UkRldmljZUluZm8ubW0KQEAgLTAsMCArMSw3MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorI2ltcG9ydCAiWFJEZXZpY2VJbmZvLmgiCisKKyNpZiBFTkFCTEUoV0VCWFIpCisK
KyNpbXBvcnQgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsK
Kwordm9pZCBYUkRldmljZUluZm86OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0
Cit7CisgICAgZW5jb2RlciA8PCBpZGVudGlmaWVyIDw8IHN1cHBvcnRzT3JpZW50YXRpb25UcmFj
a2luZyA8PCBzdXBwb3J0c1N0ZXJlb1JlbmRlcmluZzsKKworICAgIGVuY29kZXIgPDwgc3RhdGlj
X2Nhc3Q8dWludDY0X3Q+KGZlYXR1cmVzLnNpemUoKSk7CisgICAgZm9yIChhdXRvIGZlYXR1cmUg
OiBmZWF0dXJlcykKKyAgICAgICAgZW5jb2RlciA8PCBmZWF0dXJlOworfQorCitPcHRpb25hbDxY
UkRldmljZUluZm8+IFhSRGV2aWNlSW5mbzo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlcikK
K3sKKyAgICBYUkRldmljZUluZm8gZGV2aWNlRmVhdHVyZXM7CisgICAgaWYgKCFkZWNvZGVyLmRl
Y29kZShkZXZpY2VGZWF0dXJlcy5pZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVs
bG9wdDsKKworICAgIGlmICghZGVjb2Rlci5kZWNvZGUoZGV2aWNlRmVhdHVyZXMuc3VwcG9ydHNP
cmllbnRhdGlvblRyYWNraW5nKSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAg
IGlmICghZGVjb2Rlci5kZWNvZGUoZGV2aWNlRmVhdHVyZXMuc3VwcG9ydHNTdGVyZW9SZW5kZXJp
bmcpKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgdWludDY0X3QgZmVhdHVy
ZVNpemU7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShmZWF0dXJlU2l6ZSkpCisgICAgICAgIHJl
dHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBmb3IgKHVpbnQ2NF90IGkgPSAwOyBpIDwgZmVhdHVy
ZVNpemU7ICsraSkgeworICAgICAgICBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGUgc3Bh
Y2VUeXBlOworICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHNwYWNlVHlwZSkpCisgICAgICAg
ICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAgICAgICBkZXZpY2VGZWF0dXJlcy5mZWF0dXJl
cy5hcHBlbmQoc3BhY2VUeXBlKTsKKyAgICB9CisKKyAgICByZXR1cm4gZGV2aWNlRmVhdHVyZXM7
Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShXRUJYUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKaW5kZXggNDVkNjFmNzA1Yzg4NzViYWMxYTI4OWM1
ZDAzZWFkOGE4ODRjNWI5Yi4uYmIzMjQ5MDc5MzRmMzBmYTRiNzdmMzJiYzczYmEzMmY0OTg0Mjhm
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
LmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKQEAg
LTc0LDYgKzc0LDEwIEBACiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc1R5cGVzR0wuaD4KICNl
bmRpZgogCisjaWYgRU5BQkxFKFdFQlhSKQorI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1YUi5o
PgorI2VuZGlmCisKICNpZiBQTEFURk9STShDT0NPQSkKIG5hbWVzcGFjZSBXVEYgewogY2xhc3Mg
TWFjaFNlbmRSaWdodDsKQEAgLTEwMzUsNCArMTAzOSwxOSBAQCB0ZW1wbGF0ZSA8PiBzdHJ1Y3Qg
RW51bVRyYWl0czxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6U2ltdWxhdGVkRXZlbnRGb3JU
ZXN0aQogfTsKICNlbmRpZgogCisjaWYgRU5BQkxFKFdFQlhSKQorCit0ZW1wbGF0ZTw+IHN0cnVj
dCBFbnVtVHJhaXRzPFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZT4geworICAgIHVzaW5n
IHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNl
VHlwZSwKKyAgICAgICAgUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpWaWV3ZXIsCisg
ICAgICAgIFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZTo6TG9jYWwsCisgICAgICAgIFBs
YXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZTo6TG9jYWxGbG9vciwKKyAgICAgICAgUGxhdGZv
cm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpCb3VuZGVkRmxvb3IsCisgICAgICAgIFBsYXRmb3Jt
WFI6OlJlZmVyZW5jZVNwYWNlVHlwZTo6VW5ib3VuZGVkCisgICAgPjsKK307CisKKyNlbmRpZgor
CiB9IC8vIG5hbWVzcGFjZSBXVEYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0Nv
Y29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCA0YmExYWNkOWQ3
Njg2MzFjYmUzMGM4M2UzYjgxMThlMTYxOTk3YjdmLi5iMzIwNzhjZDFiZDZjMmYwZDgxMjI2MjI1
MmRjYmEwNGQxOTQ1MGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50
eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CkBAIC0xODAsNiArMTgwLDcg
QEAgU2hhcmVkL0NvY29hL1dLTlNVUkxFeHRyYXMubW0KIFNoYXJlZC9Db2NvYS9XS05TVVJMUmVx
dWVzdC5tbQogU2hhcmVkL0NvY29hL1dLT2JqZWN0Lm1tCiBTaGFyZWQvQ29jb2EvV2ViUHJlZmVy
ZW5jZXNEZWZhdWx0VmFsdWVzQ29jb2EubW0KK1NoYXJlZC9Db2NvYS9YUkRldmljZUluZm8ubW0K
IAogU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNl
RW50cnlQb2ludC5tbQogU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2Vydmlj
ZS9YUENTZXJ2aWNlTWFpbi5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggMjMzZDcwMmYzZjk1ZWJkMGY5NDZiNjkzMzk3YThlZTFkMjQ5
ZGExMC4uOTcxMWViNmMzMTQ1NmE0MTMzODUxYWI0MzQwNzE3NWQ5YmUyMTM3YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDk2LDYg
KzEwOTYsOSBAQAogCQk1MUZBRUMzQTFCMDY1NzYzMDAwOUM0RTcgLyogQXV4aWxpYXJ5UHJvY2Vz
c01lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MUZBRUMzNzFCMDY1NzMxMDAwOUM0RTcgLyogQXV4aWxpYXJ5UHJvY2Vzc01lc3NhZ2VzLmgg
Ki87IH07CiAJCTUxRkFFQzNCMUIwNjU3NjgwMDA5QzRFNyAvKiBBdXhpbGlhcnlQcm9jZXNzTWVz
c2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUxRkFFQzM2MUIwNjU3MzEwMDA5QzRFNyAvKiBBdXhpbGlhcnlQcm9jZXNzTWVzc2Fn
ZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJNTFGRDE4QjYxNjUxRkJBRDAwREJFMUNFIC8qIE5ldHdv
cmtSZXNvdXJjZUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTFGRDE4QjQxNjUxRkJBRDAwREJFMUNFIC8qIE5ldHdvcmtSZXNvdXJjZUxvYWRl
ci5oICovOyB9OworCQk1MjUwODBCMDI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJbmZvLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI1MDgwQUQy
NjFCREU2QjAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5tbSAqLzsgfTsKKwkJNTI1MDgwQjEyNjFC
REU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI1MDgwQUUyNjFCREU2QjAwNjc4QUVFIC8qIFhS
RGV2aWNlSWRlbnRpZmllci5oICovOyB9OworCQk1MjUwODBCMjI2MUJERTZDMDA2NzhBRUUgLyog
WFJEZXZpY2VJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MjUwODBBRjI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJbmZvLmggKi87IH07CiAJ
CTUyNzJENEM5MUU3MzVGMDkwMEVCNDI5MCAvKiBXS1Byb3RlY3Rpb25TcGFjZU5TLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MjcyRDRDNzFFNzM1RjA5
MDBFQjQyOTAgLyogV0tQcm90ZWN0aW9uU3BhY2VOUy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUyOEMzN0MxMTk1Q0JCMUEwMEQ4QjlDQyAvKiBX
S0JhY2tGb3J3YXJkTGlzdFByaXZhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFBOUYyODEwMTk1OEY0NzgwMDhDQUM3MiAvKiBXS0JhY2tGb3J3YXJk
TGlzdFByaXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk1MkQ1QTFCMDFDNTc0OTVBMDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MkQ1QTFBQTFDNTc0OTRFMDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lmgg
Ki87IH07CkBAIC00MTQzLDYgKzQxNDYsOSBAQAogCQk1MUZCMDkwMjE2M0EzQjFDMDBFQzMyNEEg
LyogTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IE5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjsgcGF0aCA9IE5ldHdvcmsvTmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUZE
MThCMzE2NTFGQkFEMDBEQkUxQ0UgLyogTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxRkQxOEI0MTY1MUZCQUQwMERCRTFDRSAv
KiBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTmV0d29ya1Jlc291cmNlTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUyNTA4MEFEMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUluZm8ubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBYUkRldmljZUluZm8ubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUyNTA4MEFFMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUlk
ZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJEZXZpY2VJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyNTA4MEFGMjYxQkRFNkMw
MDY3OEFFRSAvKiBYUkRldmljZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gWFJEZXZpY2VJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUyNzJENEM3
MUU3MzVGMDkwMEVCNDI5MCAvKiBXS1Byb3RlY3Rpb25TcGFjZU5TLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IFdLUHJvdGVjdGlvblNwYWNlTlMuaDsgcGF0aCA9IG1hYy9XS1By
b3RlY3Rpb25TcGFjZU5TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUyNzJENEM4
MUU3MzVGMDkwMEVCNDI5MCAvKiBXS1Byb3RlY3Rpb25TcGFjZU5TLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tQcm90ZWN0aW9uU3BhY2VOUy5tbTsgcGF0aCA9
IG1hYy9XS1Byb3RlY3Rpb25TcGFjZU5TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk1MkQ1QTFBQTFDNTc0OTRFMDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXJQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODIxOCw2ICs4MjI0LDkg
QEAKIAkJCQlDMTREMzA2NTI0Qjc5NEU3MDA0ODAzODcgLyogWFBDRW5kcG9pbnQubW0gKi8sCiAJ
CQkJQzE0RDMwNjgyNEI3OTRFNzAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Q2xpZW50LmggKi8sCiAJ
CQkJQzE0RDMwNjYyNEI3OTRFNzAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Q2xpZW50Lm1tICovLAor
CQkJCTUyNTA4MEFFMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUlkZW50aWZpZXIuaCAqLywK
KwkJCQk1MjUwODBBRjI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJbmZvLmggKi8sCisJCQkJ
NTI1MDgwQUQyNjFCREU2QjAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5tbSAqLywKIAkJCSk7CiAJ
CQluYW1lID0gY29jb2E7CiAJCQlwYXRoID0gQ29jb2E7CkBAIC05MjY3LDEwICs5Mjc2LDEwIEBA
CiAJCQkJNTMyMTU5NEYxREJBRTZENzAwNTRBQTNDIC8qIE5ldHdvcmtEYXRhVGFza0NvY29hLmgg
Ki8sCiAJCQkJNUNCQzlCOEIxQzY1MjU3MzAwQThGRENGIC8qIE5ldHdvcmtEYXRhVGFza0NvY29h
Lm1tICovLAogCQkJCTdFQzRGMEY5MThFNEE5NDUwMDgwNTZBRiAvKiBOZXR3b3JrUHJvY2Vzc0Nv
Y29hLm1tICovLAotCQkJCTUzMjE1OTUwMURCQUU2RDcwMDU0QUEzQyAvKiBOZXR3b3JrU2Vzc2lv
bkNvY29hLmggKi8sCi0JCQkJNUMyMENCOUIxQkIwRENEMjAwODk1QkIxIC8qIE5ldHdvcmtTZXNz
aW9uQ29jb2EubW0gKi8sCiAJCQkJNTE4MzI0NzgyNjE1QjAwRDAwM0YyMzlFIC8qIE5ldHdvcmtT
Y2hlbWVVUkxQcm90b2NvbC5oICovLAogCQkJCTUxODMyNDc5MjYxNUIwMEQwMDNGMjM5RSAvKiBO
ZXR3b3JrU2NoZW1lVVJMUHJvdG9jb2wubW0gKi8sCisJCQkJNTMyMTU5NTAxREJBRTZENzAwNTRB
QTNDIC8qIE5ldHdvcmtTZXNzaW9uQ29jb2EuaCAqLywKKwkJCQk1QzIwQ0I5QjFCQjBEQ0QyMDA4
OTVCQjEgLyogTmV0d29ya1Nlc3Npb25Db2NvYS5tbSAqLywKIAkJCQk0MTI4N0Q0QzIyNUMwNUM1
MDA5QTNFMjYgLyogV2ViU29ja2V0VGFza0NvY29hLmggKi8sCiAJCQkJNDEyODdENEIyMjVDMDVD
NDAwOUEzRTI2IC8qIFdlYlNvY2tldFRhc2tDb2NvYS5tbSAqLywKIAkJCSk7CkBAIC0xMTY3NSw3
ICsxMTY4NCw2IEBACiAJCQkJMzE3RkU3QzUxQzQ4N0E2QzAwQTBDQTg5IC8qIEFQSUV4cGVyaW1l
bnRhbEZlYXR1cmUuaCBpbiBIZWFkZXJzICovLAogCQkJCTAwQjk2NjE2MThFMjRDQkEwMENFMUY4
OCAvKiBBUElGaW5kQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkyREQ2N0EyRTFCRDgxOTcz
MDA1M0IyNTEgLyogQVBJRmluZE1hdGNoZXNDbGllbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCTUx
ODMyNDdEMjYxNjhGRjcwMDNGMjM5RSAvKiBOZXR3b3JrVVJMU2NoZW1lVGFzay5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMzdFMjVENkUxOEZERTVENjAwNUQzQTAwIC8qIEFQSUZvcm1DbGllbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTFBQzEzMzcyMTg1NjZDN0MwMEYzRUMwNSAvKiBBUElGcmFtZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkRGOUVFRTYxQTc4MUZCNDAwQjZDRkJFIC8qIEFQ
SUZyYW1lSW5mby5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMTk5Niw2ICsxMjAwNCw4IEBACiAJCQkJ
NUMyMENCQTAxQkIxRUNEODAwODk1QkIxIC8qIE5ldHdvcmtTZXNzaW9uLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1MzIxNTk1NTFEQkFFNzI5MDA1NEFBM0MgLyogTmV0d29ya1Nlc3Npb25Db2NvYS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNDE3OTE1QjkyMjU3MDQ2RjAwRDZGOTdFIC8qIE5ldHdvcmtT
b2NrZXRDaGFubmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTgzMjQ3QzI2MTY4QzYyMDAzRjIz
OUUgLyogTmV0d29ya1VSTFNjaGVtZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODMy
NDdEMjYxNjhGRjcwMDNGMjM5RSAvKiBOZXR3b3JrVVJMU2NoZW1lVGFzay5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNTcwREFBQzIyMzAzNzMwMzAwRThGQzA0IC8qIE5mY0Nvbm5lY3Rpb24uaCBpbiBI
ZWFkZXJzICovLAogCQkJCTU3MERBQUFFMjMwMjZGNUMwMEU4RkMwNCAvKiBOZmNTZXJ2aWNlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMUEyRUM1NjE0ODk5QzA5MDA4MTBENzEgLyogTm90aWZpY2F0
aW9uUGVybWlzc2lvblJlcXVlc3QuaCBpbiBIZWFkZXJzICovLApAQCAtMTI4MjYsNyArMTI4MzYs
NiBAQAogCQkJCTBGQ0I0RTY4MThCQkUzRDkwMDBGQ0ZDOSAvKiBXS1RleHRJbnB1dFdpbmRvd0Nv
bnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUNFMjEyMTVGMjQwRUU1NzEwMDZFRDQ0MyAv
KiBXS1RleHRQbGFjZWhvbGRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0U0NTk0NUMyNDBGODg1
NTAwNzgwMTlGIC8qIFdLVGV4dFNlbGVjdGlvblJlY3QuaCBpbiBIZWFkZXJzICovLAotCQkJCTUx
ODMyNDdDMjYxNjhDNjIwMDNGMjM5RSAvKiBOZXR3b3JrVVJMU2NoZW1lSGFuZGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkVCNkZDMDEyMDMwMjE5NjAwMTdFNjE5IC8qIFdLVGltZVBpY2tlclZp
ZXdDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3MUE2NzZBNjIyQzYyMzI1MDA3RDYy
OTUgLyogV0tUb3VjaEFjdGlvbkdlc3R1cmVSZWNvZ25pemVyLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQzQwNzYwODEyNEZGMDI3MDA2OEYyMEEgLyogV0tUeXBlLmggaW4gSGVhZGVycyAqLywKQEAg
LTEyOTIxLDYgKzEyOTMwLDggQEAKIAkJCQlDMTVFNkNCMzI0QjdCRTZGMDBFNTAxQTIgLyogWFBD
RW5kcG9pbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUMxNUU2Q0I0MjRCN0JFNzYwMEU1MDFBMiAv
KiBYUENFbmRwb2ludENsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNCRUNERTgxNkI2NDE2
ODAwMDQ3QTFBIC8qIFhQQ1NlcnZpY2VFbnRyeVBvaW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1
MjUwODBCMTI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJZGVudGlmaWVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1MjUwODBCMjI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJbmZvLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTE0MzEwLDYgKzE0MzIxLDcgQEAKIAkJCQlDRTIxMjE2MDI0MEVFNTcx
MDA2RUQ0NDMgLyogV0tUZXh0UGxhY2Vob2xkZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQlDMTRE
MzA2OTI0Qjc5QkUwMDA0ODAzODcgLyogWFBDRW5kcG9pbnQubW0gaW4gU291cmNlcyAqLywKIAkJ
CQlDMTREMzA2QTI0Qjc5QkU0MDA0ODAzODcgLyogWFBDRW5kcG9pbnRDbGllbnQubW0gaW4gU291
cmNlcyAqLywKKwkJCQk1MjUwODBCMDI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJbmZvLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vz
c2luZyA9IDA7CiAJCX07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425306</attachid>
            <date>2021-04-06 11:46:02 -0700</date>
            <delta_ts>2021-04-07 14:52:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224239-20210406114601.patch</filename>
            <type>text/plain</type>
            <size>16925</size>
            <attacher name="Ada Chan">adachan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGY1ZDY3NTE3ZmYyMGM3NWM4
NzBlNjJlMDE4OWFhMmI5ZDllNGI1ODEuLjU5ZGJjYzZjY2U4YThhYjAyOGUxZGJkZjRkZGM1MmZi
NWQwMTVjMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDQtMDYgIEFkYSBDaGFu
ICA8YWRhLmNoYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJYUl0gSW50cm9kdWNlIFhSRGV2
aWNlSWRlbnRpZmllciBhbmQgWFJEZXZpY2VJbmZvIHRvIGJlIHVzZWQgdG8gY29tbXVuaWNhdGUg
ZGV2aWNlIGluZm8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNDIzOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFRoZXNlIGNsYXNzZXMgYXJlIGNvZGFibGUgc28gdGhleSBjYW4gYmUgdXNlZCBpbiBtZXNz
YWdlcyBhY3Jvc3MgVUkvd2ViIHByb2Nlc3MgYm91bmRhcnkuCisgICAgICAgIEluIGEgZnV0dXJl
IHBhdGNoLCB0aGVzZSBjbGFzc2VzIHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgZGV2aWNlIG9iamVj
dHMgcmV0dXJuZWQgZnJvbQorICAgICAgICBXZWJDaHJvbWVDbGllbnQ6OmVudW1lcmF0ZUltbWVy
c2l2ZVhSRGV2aWNlcygpLgorCisgICAgICAgICogU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRlbnRp
Zmllci5oOiBBZGRlZC4KKyAgICAgICAgVGhpcyBjb2RhYmxlIHR5cGUgd2lsbCBiZSB1c2VkIHRv
IGlkZW50aWZ5IGEgZGV2aWNlLgorICAgICAgICAqIFNoYXJlZC9Db2NvYS9YUkRldmljZUluZm8u
aDogQWRkZWQuCisgICAgICAgICogU2hhcmVkL0NvY29hL1hSRGV2aWNlSW5mby5tbTogQWRkZWQu
CisgICAgICAgIChXZWJLaXQ6OlhSRGV2aWNlSW5mbzo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAg
KFdlYktpdDo6WFJEZXZpY2VJbmZvOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJDb3Jl
QXJndW1lbnRDb2RlcnMuaDoKKyAgICAgICAgQWRkIEVudW1UcmFpdHMgZm9yIFBsYXRmb3JtWFI6
OlJlZmVyZW5jZVNwYWNlVHlwZSBzbyB3ZSBjYW4gZW5jb2RlIGl0LgorICAgICAgICAqIFNvdXJj
ZXNDb2NvYS50eHQ6CisgICAgICAgICogV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisKIDIwMjEtMDQtMDIgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0dQVVBdIFBvd2VyIHJlZ3Jlc3Npb246IGF1ZGlvIGhhcmR3YXJlIGlzIGNvbmZpZ3VyZWQg
Zm9yIDEyOCBmcmFtZSBwcmVmZXJyZWQgYnVmZmVyIHNpemUgZHVyaW5nIFZpZGVvQXVkaW8gcGxh
eWJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRl
bnRpZmllci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJZGVudGlmaWVy
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzgxOGJiMmJhZGNjZWE0MzNhZmRiYTg1ZWQwYjY4Y2RlZTk5ZDE2NAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRl
bnRpZmllci5oCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShXRUJYUikKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisK
K25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIFhSRGV2aWNlSWRlbnRpZmllclR5cGUgeyB9Owor
dXNpbmcgWFJEZXZpY2VJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxYUkRldmljZUlkZW50
aWZpZXJUeXBlPjsKKworfQorCisjZW5kaWYgLy8gRU5BQkxFKFdFQlhSKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLmggYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9Db2NvYS9YUkRldmljZUluZm8uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NTc2YjFmN2ZlMWFjNmUx
NGY5MTBhODQ1ODUyZGU0ZGE2NWE5ZTYwCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLmgKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKFdFQlhSKQorCisjaW5jbHVkZSAiWFJEZXZp
Y2VJZGVudGlmaWVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVhSLmg+CisKK25hbWVz
cGFjZSBJUEMgeworY2xhc3MgRGVjb2RlcjsKK2NsYXNzIEVuY29kZXI7Cit9CisKK25hbWVzcGFj
ZSBXZWJLaXQgeworCitzdHJ1Y3QgWFJEZXZpY2VJbmZvIHsKKyAgICBYUkRldmljZUlkZW50aWZp
ZXIgaWRlbnRpZmllcjsKKyAgICBib29sIHN1cHBvcnRzT3JpZW50YXRpb25UcmFja2luZyB7IGZh
bHNlIH07CisgICAgYm9vbCBzdXBwb3J0c1N0ZXJlb1JlbmRlcmluZyB7IGZhbHNlIH07CisgICAg
UGxhdGZvcm1YUjo6RGV2aWNlOjpGZWF0dXJlTGlzdCBmZWF0dXJlczsKKworICAgIHZvaWQgZW5j
b2RlKElQQzo6RW5jb2RlciYpIGNvbnN0OworICAgIHN0YXRpYyBPcHRpb25hbDxYUkRldmljZUlu
Zm8+IGRlY29kZShJUEM6OkRlY29kZXImKTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAor
CisjZW5kaWYgLy8gRU5BQkxFKFdFQlhSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvQ29jb2EvWFJEZXZpY2VJbmZvLm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJE
ZXZpY2VJbmZvLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ5NmVmMDA0MTE3MzkxOWVhOTViMmUxNDZlMzUzNzI2
ZDU5NzdhYzcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9Y
UkRldmljZUluZm8ubW0KQEAgLTAsMCArMSw2MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNv
bmZpZy5oIgorI2ltcG9ydCAiWFJEZXZpY2VJbmZvLmgiCisKKyNpZiBFTkFCTEUoV0VCWFIpCisK
KyNpbXBvcnQgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsK
Kwordm9pZCBYUkRldmljZUluZm86OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0
Cit7CisgICAgZW5jb2RlciA8PCBpZGVudGlmaWVyIDw8IHN1cHBvcnRzT3JpZW50YXRpb25UcmFj
a2luZyA8PCBzdXBwb3J0c1N0ZXJlb1JlbmRlcmluZyA8PCBmZWF0dXJlczsKK30KKworT3B0aW9u
YWw8WFJEZXZpY2VJbmZvPiBYUkRldmljZUluZm86OmRlY29kZShJUEM6OkRlY29kZXImIGRlY29k
ZXIpCit7CisgICAgWFJEZXZpY2VJbmZvIGRldmljZUZlYXR1cmVzOworICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUoZGV2aWNlRmVhdHVyZXMuaWRlbnRpZmllcikpCisgICAgICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7CisKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGRldmljZUZlYXR1cmVzLnN1cHBv
cnRzT3JpZW50YXRpb25UcmFja2luZykpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisK
KyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGRldmljZUZlYXR1cmVzLnN1cHBvcnRzU3RlcmVvUmVu
ZGVyaW5nKSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKworICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUoZGV2aWNlRmVhdHVyZXMuZmVhdHVyZXMpKQorICAgICAgICByZXR1cm4gV1RGOjpu
dWxsb3B0OworCisgICAgcmV0dXJuIGRldmljZUZlYXR1cmVzOworfQorCit9CisKKyNlbmRpZiAv
LyBFTkFCTEUoV0VCWFIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3Jl
QXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENv
ZGVycy5oCmluZGV4IDQ1ZDYxZjcwNWM4ODc1YmFjMWEyODljNWQwM2VhZDhhODg0YzViOWIuLmJi
MzI0OTA3OTM0ZjMwZmE0Yjc3ZjMyYmM3M2JhMzJmNDk4NDI4ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCkBAIC03NCw2ICs3NCwxMCBAQAogI2lu
Y2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NUeXBlc0dMLmg+CiAjZW5kaWYKIAorI2lmIEVOQUJMRShX
RUJYUikKKyNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtWFIuaD4KKyNlbmRpZgorCiAjaWYgUExB
VEZPUk0oQ09DT0EpCiBuYW1lc3BhY2UgV1RGIHsKIGNsYXNzIE1hY2hTZW5kUmlnaHQ7CkBAIC0x
MDM1LDQgKzEwMzksMTkgQEAgdGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0R0w6OlNpbXVsYXRlZEV2ZW50Rm9yVGVzdGkKIH07CiAjZW5kaWYKIAor
I2lmIEVOQUJMRShXRUJYUikKKwordGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxQbGF0Zm9y
bVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU+IHsKKyAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVz
PAorICAgICAgICBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGUsCisgICAgICAgIFBsYXRm
b3JtWFI6OlJlZmVyZW5jZVNwYWNlVHlwZTo6Vmlld2VyLAorICAgICAgICBQbGF0Zm9ybVhSOjpS
ZWZlcmVuY2VTcGFjZVR5cGU6OkxvY2FsLAorICAgICAgICBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VT
cGFjZVR5cGU6OkxvY2FsRmxvb3IsCisgICAgICAgIFBsYXRmb3JtWFI6OlJlZmVyZW5jZVNwYWNl
VHlwZTo6Qm91bmRlZEZsb29yLAorICAgICAgICBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5
cGU6OlVuYm91bmRlZAorICAgID47Cit9OworCisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV1RG
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2Vi
S2l0L1NvdXJjZXNDb2NvYS50eHQKaW5kZXggNGJhMWFjZDlkNzY4NjMxY2JlMzBjODNlM2I4MTE4
ZTE2MTk5N2I3Zi4uYjMyMDc4Y2QxYmQ2YzJmMGQ4MTIyNjIyNTJkY2JhMDRkMTk0NTBhOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9XZWJL
aXQvU291cmNlc0NvY29hLnR4dApAQCAtMTgwLDYgKzE4MCw3IEBAIFNoYXJlZC9Db2NvYS9XS05T
VVJMRXh0cmFzLm1tCiBTaGFyZWQvQ29jb2EvV0tOU1VSTFJlcXVlc3QubW0KIFNoYXJlZC9Db2Nv
YS9XS09iamVjdC5tbQogU2hhcmVkL0NvY29hL1dlYlByZWZlcmVuY2VzRGVmYXVsdFZhbHVlc0Nv
Y29hLm1tCitTaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLm1tCiAKIFNoYXJlZC9FbnRyeVBvaW50
VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQubW0KIFNoYXJl
ZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDIzM2Q3MDJmM2Y5NWViZDBmOTQ2YjY5MzM5N2E4ZWUxZDI0OWRhMTAuLjk3MTFlYjZjMzE0NTZh
NDEzMzg1MWFiNDM0MDcxNzVkOWJlMjEzN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTA5Niw2ICsxMDk2LDkgQEAKIAkJNTFGQUVD
M0ExQjA2NTc2MzAwMDlDNEU3IC8qIEF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlcy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGQUVDMzcxQjA2NTczMTAw
MDlDNEU3IC8qIEF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlcy5oICovOyB9OwogCQk1MUZBRUMzQjFC
MDY1NzY4MDAwOUM0RTcgLyogQXV4aWxpYXJ5UHJvY2Vzc01lc3NhZ2VSZWNlaXZlci5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUZBRUMzNjFCMDY1
NzMxMDAwOUM0RTcgLyogQXV4aWxpYXJ5UHJvY2Vzc01lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07
CiAJCTUxRkQxOEI2MTY1MUZCQUQwMERCRTFDRSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRkQxOEI0MTY1
MUZCQUQwMERCRTFDRSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCAqLzsgfTsKKwkJNTI1MDgw
QjAyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5tbSBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNTA4MEFEMjYxQkRFNkIwMDY3OEFFRSAvKiBY
UkRldmljZUluZm8ubW0gKi87IH07CisJCTUyNTA4MEIxMjYxQkRFNkMwMDY3OEFFRSAvKiBYUkRl
dmljZUlkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUyNTA4MEFFMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUlkZW50aWZpZXIuaCAq
LzsgfTsKKwkJNTI1MDgwQjIyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI1MDgwQUYyNjFCREU2
QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oICovOyB9OwogCQk1MjcyRDRDOTFFNzM1RjA5MDBF
QjQyOTAgLyogV0tQcm90ZWN0aW9uU3BhY2VOUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTI3MkQ0QzcxRTczNUYwOTAwRUI0MjkwIC8qIFdLUHJvdGVj
dGlvblNwYWNlTlMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk1MjhDMzdDMTE5NUNCQjFBMDBEOEI5Q0MgLyogV0tCYWNrRm9yd2FyZExpc3RQcml2
YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTlG
MjgxMDE5NThGNDc4MDA4Q0FDNzIgLyogV0tCYWNrRm9yd2FyZExpc3RQcml2YXRlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTJENUExQjAxQzU3
NDk1QTAwREUzNEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTJENUExQUExQzU3NDk0RTAwREUz
NEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oICovOyB9OwpAQCAtNDE0Myw2ICs0
MTQ2LDkgQEAKIAkJNTFGQjA5MDIxNjNBM0IxQzAwRUMzMjRBIC8qIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbi5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2Fn
ZXMuaW47IHBhdGggPSBOZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5p
bjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFGRDE4QjMxNjUxRkJBRDAwREJFMUNF
IC8qIE5ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1MUZEMThCNDE2NTFGQkFEMDBEQkUxQ0UgLyogTmV0d29ya1Jlc291cmNlTG9h
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtSZXNvdXJjZUxv
YWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MjUwODBBRDI2MUJERTZCMDA2
NzhBRUUgLyogWFJEZXZpY2VJbmZvLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gWFJEZXZpY2VJbmZvLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MjUwODBBRTI2MUJERTZCMDA2NzhBRUUgLyogWFJEZXZpY2VJZGVudGlmaWVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSRGV2aWNlSWRlbnRpZmllci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MjUwODBBRjI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJ
bmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSRGV2aWNlSW5mby5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MjcyRDRDNzFFNzM1RjA5MDBFQjQyOTAgLyog
V0tQcm90ZWN0aW9uU3BhY2VOUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBX
S1Byb3RlY3Rpb25TcGFjZU5TLmg7IHBhdGggPSBtYWMvV0tQcm90ZWN0aW9uU3BhY2VOUy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MjcyRDRDODFFNzM1RjA5MDBFQjQyOTAgLyog
V0tQcm90ZWN0aW9uU3BhY2VOUy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
bmFtZSA9IFdLUHJvdGVjdGlvblNwYWNlTlMubW07IHBhdGggPSBtYWMvV0tQcm90ZWN0aW9uU3Bh
Y2VOUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTJENUExQUExQzU3NDk0RTAw
REUzNEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTgyMTgsNiArODIyNCw5IEBACiAJCQkJQzE0RDMwNjUyNEI3
OTRFNzAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Lm1tICovLAogCQkJCUMxNEQzMDY4MjRCNzk0RTcw
MDQ4MDM4NyAvKiBYUENFbmRwb2ludENsaWVudC5oICovLAogCQkJCUMxNEQzMDY2MjRCNzk0RTcw
MDQ4MDM4NyAvKiBYUENFbmRwb2ludENsaWVudC5tbSAqLywKKwkJCQk1MjUwODBBRTI2MUJERTZC
MDA2NzhBRUUgLyogWFJEZXZpY2VJZGVudGlmaWVyLmggKi8sCisJCQkJNTI1MDgwQUYyNjFCREU2
QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oICovLAorCQkJCTUyNTA4MEFEMjYxQkRFNkIwMDY3
OEFFRSAvKiBYUkRldmljZUluZm8ubW0gKi8sCiAJCQkpOwogCQkJbmFtZSA9IGNvY29hOwogCQkJ
cGF0aCA9IENvY29hOwpAQCAtOTI2NywxMCArOTI3NiwxMCBAQAogCQkJCTUzMjE1OTRGMURCQUU2
RDcwMDU0QUEzQyAvKiBOZXR3b3JrRGF0YVRhc2tDb2NvYS5oICovLAogCQkJCTVDQkM5QjhCMUM2
NTI1NzMwMEE4RkRDRiAvKiBOZXR3b3JrRGF0YVRhc2tDb2NvYS5tbSAqLywKIAkJCQk3RUM0RjBG
OTE4RTRBOTQ1MDA4MDU2QUYgLyogTmV0d29ya1Byb2Nlc3NDb2NvYS5tbSAqLywKLQkJCQk1MzIx
NTk1MDFEQkFFNkQ3MDA1NEFBM0MgLyogTmV0d29ya1Nlc3Npb25Db2NvYS5oICovLAotCQkJCTVD
MjBDQjlCMUJCMERDRDIwMDg5NUJCMSAvKiBOZXR3b3JrU2Vzc2lvbkNvY29hLm1tICovLAogCQkJ
CTUxODMyNDc4MjYxNUIwMEQwMDNGMjM5RSAvKiBOZXR3b3JrU2NoZW1lVVJMUHJvdG9jb2wuaCAq
LywKIAkJCQk1MTgzMjQ3OTI2MTVCMDBEMDAzRjIzOUUgLyogTmV0d29ya1NjaGVtZVVSTFByb3Rv
Y29sLm1tICovLAorCQkJCTUzMjE1OTUwMURCQUU2RDcwMDU0QUEzQyAvKiBOZXR3b3JrU2Vzc2lv
bkNvY29hLmggKi8sCisJCQkJNUMyMENCOUIxQkIwRENEMjAwODk1QkIxIC8qIE5ldHdvcmtTZXNz
aW9uQ29jb2EubW0gKi8sCiAJCQkJNDEyODdENEMyMjVDMDVDNTAwOUEzRTI2IC8qIFdlYlNvY2tl
dFRhc2tDb2NvYS5oICovLAogCQkJCTQxMjg3RDRCMjI1QzA1QzQwMDlBM0UyNiAvKiBXZWJTb2Nr
ZXRUYXNrQ29jb2EubW0gKi8sCiAJCQkpOwpAQCAtMTE2NzUsNyArMTE2ODQsNiBAQAogCQkJCTMx
N0ZFN0M1MUM0ODdBNkMwMEEwQ0E4OSAvKiBBUElFeHBlcmltZW50YWxGZWF0dXJlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwMEI5NjYxNjE4RTI0Q0JBMDBDRTFGODggLyogQVBJRmluZENsaWVudC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMkRENjdBMkUxQkQ4MTk3MzAwNTNCMjUxIC8qIEFQSUZpbmRN
YXRjaGVzQ2xpZW50LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MTgzMjQ3RDI2MTY4RkY3MDAzRjIz
OUUgLyogTmV0d29ya1VSTFNjaGVtZVRhc2suaCBpbiBIZWFkZXJzICovLAogCQkJCTM3RTI1RDZF
MThGREU1RDYwMDVEM0EwMCAvKiBBUElGb3JtQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkx
QUMxMzM3MjE4NTY2QzdDMDBGM0VDMDUgLyogQVBJRnJhbWVIYW5kbGUuaCBpbiBIZWFkZXJzICov
LAogCQkJCTJERjlFRUU2MUE3ODFGQjQwMEI2Q0ZCRSAvKiBBUElGcmFtZUluZm8uaCBpbiBIZWFk
ZXJzICovLApAQCAtMTE5OTYsNiArMTIwMDQsOCBAQAogCQkJCTVDMjBDQkEwMUJCMUVDRDgwMDg5
NUJCMSAvKiBOZXR3b3JrU2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTMyMTU5NTUxREJB
RTcyOTAwNTRBQTNDIC8qIE5ldHdvcmtTZXNzaW9uQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTQxNzkxNUI5MjI1NzA0NkYwMEQ2Rjk3RSAvKiBOZXR3b3JrU29ja2V0Q2hhbm5lbC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTE4MzI0N0MyNjE2OEM2MjAwM0YyMzlFIC8qIE5ldHdvcmtVUkxTY2hl
bWVIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTgzMjQ3RDI2MTY4RkY3MDAzRjIzOUUg
LyogTmV0d29ya1VSTFNjaGVtZVRhc2suaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MERBQUMyMjMw
MzczMDMwMEU4RkMwNCAvKiBOZmNDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1NzBE
QUFBRTIzMDI2RjVDMDBFOEZDMDQgLyogTmZjU2VydmljZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MzFBMkVDNTYxNDg5OUMwOTAwODEwRDcxIC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0
LmggaW4gSGVhZGVycyAqLywKQEAgLTEyODI2LDcgKzEyODM2LDYgQEAKIAkJCQkwRkNCNEU2ODE4
QkJFM0Q5MDAwRkNGQzkgLyogV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlDRTIxMjE1RjI0MEVFNTcxMDA2RUQ0NDMgLyogV0tUZXh0UGxhY2Vob2xkZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCUNFNDU5NDVDMjQwRjg4NTUwMDc4MDE5RiAvKiBXS1RleHRT
ZWxlY3Rpb25SZWN0LmggaW4gSGVhZGVycyAqLywKLQkJCQk1MTgzMjQ3QzI2MTY4QzYyMDAzRjIz
OUUgLyogTmV0d29ya1VSTFNjaGVtZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTJFQjZG
QzAxMjAzMDIxOTYwMDE3RTYxOSAvKiBXS1RpbWVQaWNrZXJWaWV3Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNzFBNjc2QTYyMkM2MjMyNTAwN0Q2Mjk1IC8qIFdLVG91Y2hBY3Rpb25H
ZXN0dXJlUmVjb2duaXplci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM0MDc2MDgxMjRGRjAyNzAw
NjhGMjBBIC8qIFdLVHlwZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMjkyMSw2ICsxMjkzMCw4IEBA
CiAJCQkJQzE1RTZDQjMyNEI3QkU2RjAwRTUwMUEyIC8qIFhQQ0VuZHBvaW50LmggaW4gSGVhZGVy
cyAqLywKIAkJCQlDMTVFNkNCNDI0QjdCRTc2MDBFNTAxQTIgLyogWFBDRW5kcG9pbnRDbGllbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDQkVDREU4MTZCNjQxNjgwMDA0N0ExQSAvKiBYUENTZXJ2
aWNlRW50cnlQb2ludC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTI1MDgwQjEyNjFCREU2QzAwNjc4
QUVFIC8qIFhSRGV2aWNlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTI1MDgwQjIy
NjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oIGluIEhlYWRlcnMgKi8sCiAJCQkpOwog
CQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CkBAIC0xNDMx
MCw2ICsxNDMyMSw3IEBACiAJCQkJQ0UyMTIxNjAyNDBFRTU3MTAwNkVENDQzIC8qIFdLVGV4dFBs
YWNlaG9sZGVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQzE0RDMwNjkyNEI3OUJFMDAwNDgwMzg3
IC8qIFhQQ0VuZHBvaW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQzE0RDMwNkEyNEI3OUJFNDAw
NDgwMzg3IC8qIFhQQ0VuZHBvaW50Q2xpZW50Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTI1MDgw
QjAyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5tbSBpbiBTb3VyY2VzICovLAogCQkJ
KTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425443</attachid>
            <date>2021-04-07 14:52:40 -0700</date>
            <delta_ts>2021-04-07 15:56:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224239-20210407145239.patch</filename>
            <type>text/plain</type>
            <size>15150</size>
            <attacher name="Ada Chan">adachan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NjI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZiNWNlNTcyZjUzOTdkN2Zj
NGRiNGNlNzYzNzE2ZTUzZWIxMmIxNGYuLmNlZDRmMTJhMDcyZWY1M2IzMTMwNmE0Y2IwZWQ0MzQ1
NzgxODViNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMjEtMDQtMDcgIEFkYSBDaGFu
ICA8YWRhLmNoYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJYUl0gSW50cm9kdWNlIFhSRGV2
aWNlSWRlbnRpZmllciBhbmQgWFJEZXZpY2VJbmZvIHRvIGJlIHVzZWQgdG8gY29tbXVuaWNhdGUg
ZGV2aWNlIGluZm8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyNDIzOQorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAg
VGhlc2UgY2xhc3NlcyBhcmUgY29kYWJsZSBzbyB0aGV5IGNhbiBiZSB1c2VkIGluIG1lc3NhZ2Vz
IGFjcm9zcyBVSS93ZWIgcHJvY2VzcyBib3VuZGFyeS4KKyAgICAgICAgSW4gYSBmdXR1cmUgcGF0
Y2gsIHRoZXNlIGNsYXNzZXMgd2lsbCBiZSB1c2VkIHRvIGNyZWF0ZSBkZXZpY2Ugb2JqZWN0cyBy
ZXR1cm5lZCBmcm9tCisgICAgICAgIFdlYkNocm9tZUNsaWVudDo6ZW51bWVyYXRlSW1tZXJzaXZl
WFJEZXZpY2VzKCkuCisKKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvWFJEZXZpY2VJZGVudGlmaWVy
Lmg6IEFkZGVkLgorICAgICAgICBUaGlzIGNvZGFibGUgdHlwZSB3aWxsIGJlIHVzZWQgdG8gaWRl
bnRpZnkgYSBkZXZpY2UuCisgICAgICAgICogU2hhcmVkL0NvY29hL1hSRGV2aWNlSW5mby5oOiBB
ZGRlZC4KKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvWFJEZXZpY2VJbmZvLm1tOiBBZGRlZC4KKyAg
ICAgICAgKFdlYktpdDo6WFJEZXZpY2VJbmZvOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpYUkRldmljZUluZm86OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1
bWVudENvZGVycy5oOgorICAgICAgICBBZGQgRW51bVRyYWl0cyBmb3IgUGxhdGZvcm1YUjo6UmVm
ZXJlbmNlU3BhY2VUeXBlIHNvIHdlIGNhbiBlbmNvZGUgaXQuCisgICAgICAgICogU291cmNlc0Nv
Y29hLnR4dDoKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwog
MjAyMS0wNC0wNyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbQ29jb2FdIEluY29ycmVjdCBzZWxlY3RvciB1c2VkIHRvIHNldCBsb2dnaW5nIGxldmVsCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9YUkRldmljZUlkZW50aWZpZXIu
aCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSWRlbnRpZmllci5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmM4MThiYjJiYWRjY2VhNDMzYWZkYmE4NWVkMGI2OGNkZWU5OWQxNjQKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9YUkRldmljZUlkZW50aWZpZXIu
aApAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBFTkFC
TEUoV0VCWFIpCisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3Bh
Y2UgV2ViS2l0IHsKKworZW51bSBYUkRldmljZUlkZW50aWZpZXJUeXBlIHsgfTsKK3VzaW5nIFhS
RGV2aWNlSWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8WFJEZXZpY2VJZGVudGlmaWVyVHlw
ZT47CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShXRUJYUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSW5mby5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQv
Q29jb2EvWFJEZXZpY2VJbmZvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDU3NmIxZjdmZTFhYzZlMTRmOTEwYTg0
NTg1MmRlNGRhNjVhOWU2MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0NvY29hL1hSRGV2aWNlSW5mby5oCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2lmIEVOQUJMRShXRUJYUikKKworI2luY2x1ZGUgIlhSRGV2aWNlSWRlbnRp
Zmllci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1YUi5oPgorCituYW1lc3BhY2UgSVBD
IHsKK2NsYXNzIERlY29kZXI7CitjbGFzcyBFbmNvZGVyOworfQorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworc3RydWN0IFhSRGV2aWNlSW5mbyB7CisgICAgWFJEZXZpY2VJZGVudGlmaWVyIGlkZW50
aWZpZXI7CisgICAgYm9vbCBzdXBwb3J0c09yaWVudGF0aW9uVHJhY2tpbmcgeyBmYWxzZSB9Owor
ICAgIGJvb2wgc3VwcG9ydHNTdGVyZW9SZW5kZXJpbmcgeyBmYWxzZSB9OworICAgIFBsYXRmb3Jt
WFI6OkRldmljZTo6RmVhdHVyZUxpc3QgZmVhdHVyZXM7CisKKyAgICB2b2lkIGVuY29kZShJUEM6
OkVuY29kZXImKSBjb25zdDsKKyAgICBzdGF0aWMgT3B0aW9uYWw8WFJEZXZpY2VJbmZvPiBkZWNv
ZGUoSVBDOjpEZWNvZGVyJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI2VuZGlm
IC8vIEVOQUJMRShXRUJYUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29h
L1hSRGV2aWNlSW5mby5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1hSRGV2aWNlSW5m
by5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5kOTZlZjAwNDExNzM5MTllYTk1YjJlMTQ2ZTM1MzcyNmQ1OTc3YWM3
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvWFJEZXZpY2VJ
bmZvLm1tCkBAIC0wLDAgKzEsNjAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIK
KyNpbXBvcnQgIlhSRGV2aWNlSW5mby5oIgorCisjaWYgRU5BQkxFKFdFQlhSKQorCisjaW1wb3J0
ICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3ZvaWQg
WFJEZXZpY2VJbmZvOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAoreworICAg
IGVuY29kZXIgPDwgaWRlbnRpZmllciA8PCBzdXBwb3J0c09yaWVudGF0aW9uVHJhY2tpbmcgPDwg
c3VwcG9ydHNTdGVyZW9SZW5kZXJpbmcgPDwgZmVhdHVyZXM7Cit9CisKK09wdGlvbmFsPFhSRGV2
aWNlSW5mbz4gWFJEZXZpY2VJbmZvOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQorewor
ICAgIFhSRGV2aWNlSW5mbyBkZXZpY2VGZWF0dXJlczsKKyAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGRldmljZUZlYXR1cmVzLmlkZW50aWZpZXIpKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0
OworCisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShkZXZpY2VGZWF0dXJlcy5zdXBwb3J0c09yaWVu
dGF0aW9uVHJhY2tpbmcpKQorICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworCisgICAgaWYg
KCFkZWNvZGVyLmRlY29kZShkZXZpY2VGZWF0dXJlcy5zdXBwb3J0c1N0ZXJlb1JlbmRlcmluZykp
CisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KGRldmljZUZlYXR1cmVzLmZlYXR1cmVzKSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
KworICAgIHJldHVybiBkZXZpY2VGZWF0dXJlczsKK30KKworfQorCisjZW5kaWYgLy8gRU5BQkxF
KFdFQlhSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50
Q29kZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaApp
bmRleCA0NWQ2MWY3MDVjODg3NWJhYzFhMjg5YzVkMDNlYWQ4YTg4NGM1YjliLi5iYjMyNDkwNzkz
NGYzMGZhNGI3N2YzMmJjNzNiYTMyZjQ5ODQyOGYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaApAQCAtNzQsNiArNzQsMTAgQEAKICNpbmNsdWRlIDxX
ZWJDb3JlL0dyYXBoaWNzVHlwZXNHTC5oPgogI2VuZGlmCiAKKyNpZiBFTkFCTEUoV0VCWFIpCisj
aW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVhSLmg+CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKENP
Q09BKQogbmFtZXNwYWNlIFdURiB7CiBjbGFzcyBNYWNoU2VuZFJpZ2h0OwpAQCAtMTAzNSw0ICsx
MDM5LDE5IEBAIHRlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMOjpTaW11bGF0ZWRFdmVudEZvclRlc3RpCiB9OwogI2VuZGlmCiAKKyNpZiBFTkFC
TEUoV0VCWFIpCisKK3RlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8UGxhdGZvcm1YUjo6UmVm
ZXJlbmNlU3BhY2VUeXBlPiB7CisgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKKyAgICAg
ICAgUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlLAorICAgICAgICBQbGF0Zm9ybVhSOjpS
ZWZlcmVuY2VTcGFjZVR5cGU6OlZpZXdlciwKKyAgICAgICAgUGxhdGZvcm1YUjo6UmVmZXJlbmNl
U3BhY2VUeXBlOjpMb2NhbCwKKyAgICAgICAgUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBl
OjpMb2NhbEZsb29yLAorICAgICAgICBQbGF0Zm9ybVhSOjpSZWZlcmVuY2VTcGFjZVR5cGU6OkJv
dW5kZWRGbG9vciwKKyAgICAgICAgUGxhdGZvcm1YUjo6UmVmZXJlbmNlU3BhY2VUeXBlOjpVbmJv
dW5kZWQKKyAgICA+OworfTsKKworI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdURgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9Tb3Vy
Y2VzQ29jb2EudHh0CmluZGV4IGI5ZjBmNGIxZmUwMzU1ZWFmMTE5NTdmNjdlOWQxZjI0MjY2OTI5
MzkuLmY2ZTE2ZjJiYzg0YzBkNTBhNjY1NWE3MzM2ZmM5ZjI2YjRkNjRhNDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNDb2NvYS50eHQKQEAgLTE4MCw2ICsxODAsNyBAQCBTaGFyZWQvQ29jb2EvV0tOU1VSTEV4dHJh
cy5tbQogU2hhcmVkL0NvY29hL1dLTlNVUkxSZXF1ZXN0Lm1tCiBTaGFyZWQvQ29jb2EvV0tPYmpl
Y3QubW0KIFNoYXJlZC9Db2NvYS9XZWJQcmVmZXJlbmNlc0RlZmF1bHRWYWx1ZXNDb2NvYS5tbQor
U2hhcmVkL0NvY29hL1hSRGV2aWNlSW5mby5tbQogCiBTaGFyZWQvRW50cnlQb2ludFV0aWxpdGll
cy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tCiBTaGFyZWQvRW50cnlQ
b2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4MjA5NWEy
NmNjZDA4NGQyZDRlYzRiZTZmMmMyZjUwMzNlOTBjZTQ4Li4yODMwZGEyMzA3NjY1MjMzMDBhMTYz
ZTE1ZGQ1MmZjOTg0MTI4N2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOTYsNiArMTA5Niw5IEBACiAJCTUxRkFFQzNBMUIwNjU3
NjMwMDA5QzRFNyAvKiBBdXhpbGlhcnlQcm9jZXNzTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRkFFQzM3MUIwNjU3MzEwMDA5QzRFNyAv
KiBBdXhpbGlhcnlQcm9jZXNzTWVzc2FnZXMuaCAqLzsgfTsKIAkJNTFGQUVDM0IxQjA2NTc2ODAw
MDlDNEU3IC8qIEF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGQUVDMzYxQjA2NTczMTAwMDlD
NEU3IC8qIEF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwogCQk1MUZE
MThCNjE2NTFGQkFEMDBEQkUxQ0UgLyogTmV0d29ya1Jlc291cmNlTG9hZGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUZEMThCNDE2NTFGQkFEMDBE
QkUxQ0UgLyogTmV0d29ya1Jlc291cmNlTG9hZGVyLmggKi87IH07CisJCTUyNTA4MEIwMjYxQkRF
NkMwMDY3OEFFRSAvKiBYUkRldmljZUluZm8ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MjUwODBBRDI2MUJERTZCMDA2NzhBRUUgLyogWFJEZXZpY2VJ
bmZvLm1tICovOyB9OworCQk1MjUwODBCMTI2MUJERTZDMDA2NzhBRUUgLyogWFJEZXZpY2VJZGVu
dGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MjUwODBBRTI2MUJERTZCMDA2NzhBRUUgLyogWFJEZXZpY2VJZGVudGlmaWVyLmggKi87IH07CisJ
CTUyNTA4MEIyMjYxQkRFNkMwMDY3OEFFRSAvKiBYUkRldmljZUluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNTA4MEFGMjYxQkRFNkMwMDY3OEFF
RSAvKiBYUkRldmljZUluZm8uaCAqLzsgfTsKIAkJNTI3MkQ0QzkxRTczNUYwOTAwRUI0MjkwIC8q
IFdLUHJvdGVjdGlvblNwYWNlTlMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUyNzJENEM3MUU3MzVGMDkwMEVCNDI5MCAvKiBXS1Byb3RlY3Rpb25TcGFj
ZU5TLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
NTI4QzM3QzExOTVDQkIxQTAwRDhCOUNDIC8qIFdLQmFja0ZvcndhcmRMaXN0UHJpdmF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE5RjI4MTAxOTU4
RjQ3ODAwOENBQzcyIC8qIFdLQmFja0ZvcndhcmRMaXN0UHJpdmF0ZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUyRDVBMUIwMUM1NzQ5NUEwMERF
MzRBMyAvKiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyRDVBMUFBMUM1NzQ5NEUwMERFMzRBMyAvKiBW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCAqLzsgfTsKQEAgLTQxNTIsNiArNDE1NSw5IEBA
CiAJCTUxRkIwOTAyMTYzQTNCMUMwMEVDMzI0QSAvKiBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24u
bWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBuYW1lID0gTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluOyBw
YXRoID0gTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW47IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxRkQxOEIzMTY1MUZCQUQwMERCRTFDRSAvKiBOZXR3
b3JrUmVzb3VyY2VMb2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNTFGRDE4QjQxNjUxRkJBRDAwREJFMUNFIC8qIE5ldHdvcmtSZXNvdXJjZUxvYWRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTI1MDgwQUQyNjFCREU2QjAwNjc4QUVFIC8q
IFhSRGV2aWNlSW5mby5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFhSRGV2aWNlSW5mby5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTI1MDgwQUUy
NjFCREU2QjAwNjc4QUVFIC8qIFhSRGV2aWNlSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBYUkRldmljZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTI1MDgwQUYyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUkRldmljZUluZm8uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTI3MkQ0QzcxRTczNUYwOTAwRUI0MjkwIC8qIFdLUHJvdGVj
dGlvblNwYWNlTlMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tQcm90ZWN0
aW9uU3BhY2VOUy5oOyBwYXRoID0gbWFjL1dLUHJvdGVjdGlvblNwYWNlTlMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTI3MkQ0QzgxRTczNUYwOTAwRUI0MjkwIC8qIFdLUHJvdGVj
dGlvblNwYWNlTlMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBX
S1Byb3RlY3Rpb25TcGFjZU5TLm1tOyBwYXRoID0gbWFjL1dLUHJvdGVjdGlvblNwYWNlTlMubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUyRDVBMUFBMUM1NzQ5NEUwMERFMzRBMyAv
KiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC02MDcwLDEwICs2MDc2LDEwIEBACiAJCQkJNTc0MkEyRjcyNTM1NjEzRjAw
QjdCQTE0IC8qIGNvbS5hcHBsZS5XZWJLaXQuV2ViQXV0aG4ueHBjICovLAogCQkJCTM3MkVCQjQ2
MjAxN0U2NDMwMDA4NTA2NCAvKiBjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1l
bnQueHBjICovLAogCQkJCUJDM0RFNDY2MTVBOTE3NjMwMDhEMjZGQyAvKiBjb20uYXBwbGUuV2Vi
S2l0LldlYkNvbnRlbnQueHBjICovLAorCQkJCUNEOTU0OTM1MjYxNTkwMDQwMDgzNzJEOSAvKiBs
aWJXZWJLaXRTd2lmdC5keWxpYiAqLywKIAkJCQlBMTZFNjYwMDI1ODE5MzA4MDBFRTE3NDkgLyog
TWVkaWFGb3JtYXRSZWFkZXIuYnVuZGxlICovLAogCQkJCTFBQzI1RkIwMTJBNDhFQTcwMEJEMjY3
MSAvKiBQbHVnaW5Qcm9jZXNzU2hpbS5keWxpYiAqLywKIAkJCQk4REMyRUY1QjA0ODZBNjk0MDA5
OEIyMTYgLyogV2ViS2l0LmZyYW1ld29yayAqLywKLQkJCQlDRDk1NDkzNTI2MTU5MDA0MDA4Mzcy
RDkgLyogbGliV2ViS2l0U3dpZnQuZHlsaWIgKi8sCiAJCQkpOwogCQkJbmFtZSA9IFByb2R1Y3Rz
OwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTgyNDAsNiArODI0Niw5IEBACiAJCQkJ
QzE0RDMwNjUyNEI3OTRFNzAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Lm1tICovLAogCQkJCUMxNEQz
MDY4MjRCNzk0RTcwMDQ4MDM4NyAvKiBYUENFbmRwb2ludENsaWVudC5oICovLAogCQkJCUMxNEQz
MDY2MjRCNzk0RTcwMDQ4MDM4NyAvKiBYUENFbmRwb2ludENsaWVudC5tbSAqLywKKwkJCQk1MjUw
ODBBRTI2MUJERTZCMDA2NzhBRUUgLyogWFJEZXZpY2VJZGVudGlmaWVyLmggKi8sCisJCQkJNTI1
MDgwQUYyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oICovLAorCQkJCTUyNTA4MEFE
MjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUluZm8ubW0gKi8sCiAJCQkpOwogCQkJbmFtZSA9
IGNvY29hOwogCQkJcGF0aCA9IENvY29hOwpAQCAtMTI5NTYsNiArMTI5NjUsOCBAQAogCQkJCUMx
NUU2Q0IzMjRCN0JFNkYwMEU1MDFBMiAvKiBYUENFbmRwb2ludC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQzE1RTZDQjQyNEI3QkU3NjAwRTUwMUEyIC8qIFhQQ0VuZHBvaW50Q2xpZW50LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQ0JFQ0RFODE2QjY0MTY4MDAwNDdBMUEgLyogWFBDU2VydmljZUVudHJ5
UG9pbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUyNTA4MEIxMjYxQkRFNkMwMDY3OEFFRSAvKiBY
UkRldmljZUlkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUyNTA4MEIyMjYxQkRFNkMw
MDY3OEFFRSAvKiBYUkRldmljZUluZm8uaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMTQ0MjUsNiArMTQ0
MzYsNyBAQAogCQkJCUNFMjEyMTYwMjQwRUU1NzEwMDZFRDQ0MyAvKiBXS1RleHRQbGFjZWhvbGRl
ci5tbSBpbiBTb3VyY2VzICovLAogCQkJCUMxNEQzMDY5MjRCNzlCRTAwMDQ4MDM4NyAvKiBYUENF
bmRwb2ludC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUMxNEQzMDZBMjRCNzlCRTQwMDQ4MDM4NyAv
KiBYUENFbmRwb2ludENsaWVudC5tbSBpbiBTb3VyY2VzICovLAorCQkJCTUyNTA4MEIwMjYxQkRF
NkMwMDY3OEFFRSAvKiBYUkRldmljZUluZm8ubW0gaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425520</attachid>
            <date>2021-04-08 10:50:12 -0700</date>
            <delta_ts>2021-04-08 13:35:53 -0700</delta_ts>
            <desc>Unreviewed build fix</desc>
            <filename>bug-224239-20210408105011.patch</filename>
            <type>text/plain</type>
            <size>2733</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NjYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDlkNWJmOGRiMDYyMWRmYWUx
MWI3YTc1YzhjYzBhODhjMTcwZmE1MzEuLjYzM2ZlYWY2NGVhZDM0MTcyMTYyNjBiMmVkZjFlZGM5
YjM2NjRmMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDQtMDggIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgZml4
IHRoZSBpbnRlcm5hbCBidWlsZCBhZnRlciByMjc1NjQwCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQyMzkKKworICAgICAgICAqIFdlYktpdC54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICBUaGlzIHNvdXJjZSBmaWxlIHdhcyBhZGRl
ZCB0byB0aGUgcHJvamVjdCBhcyBhIGNvbXBpbGF0aW9uIHRhcmdldCwgYnV0IGl0IGFsc28gYXBw
ZWFycyBpbiB1bmlmaWVkIHNvdXJjZXM7IHRoaXMKKyAgICAgICAgY2F1c2VzIHRoZSBgZW5jb2Rl
YCBhbmQgYGRlY29kZWAgbWV0aG9kcyB0byBiZSBkZWZpbmVkIHR3aWNlLCBsZWFkaW5nIHRvIGEg
bGlua2VyIGVycm9yLiBGaXggdGhpcyBieSBvbmx5CisgICAgICAgIGluY2x1ZGluZyBpdCBhcyBh
IHVuaWZpZWQgc291cmNlLgorCiAyMDIxLTA0LTA4ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBsb2dnaW5nIGZvciBpbnZlc3RpZ2F0aW5nIGh0dHAv
dGVzdHMvSW5kZXhlZERCL3N0b3JhZ2UtbGltaXQtMS5odG1sIGZhaWx1cmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDI4MzBkYTIzMDc2
NjUyMzMwMGExNjNlMTVkZDUyZmM5ODQxMjg3YzEuLjk2YWU2NDkyMDZhOWE5OWM4MTZmODc2ZTc1
OWRjMzY0ODlmYmE1MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMTA5Niw3ICsxMDk2LDYgQEAKIAkJNTFGQUVDM0ExQjA2NTc2MzAw
MDlDNEU3IC8qIEF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGQUVDMzcxQjA2NTczMTAwMDlDNEU3IC8qIEF1
eGlsaWFyeVByb2Nlc3NNZXNzYWdlcy5oICovOyB9OwogCQk1MUZBRUMzQjFCMDY1NzY4MDAwOUM0
RTcgLyogQXV4aWxpYXJ5UHJvY2Vzc01lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUZBRUMzNjFCMDY1NzMxMDAwOUM0RTcg
LyogQXV4aWxpYXJ5UHJvY2Vzc01lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJCTUxRkQxOEI2
MTY1MUZCQUQwMERCRTFDRSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRkQxOEI0MTY1MUZCQUQwMERCRTFD
RSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCAqLzsgfTsKLQkJNTI1MDgwQjAyNjFCREU2QzAw
Njc4QUVFIC8qIFhSRGV2aWNlSW5mby5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUyNTA4MEFEMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUluZm8u
bW0gKi87IH07CiAJCTUyNTA4MEIxMjYxQkRFNkMwMDY3OEFFRSAvKiBYUkRldmljZUlkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNTA4
MEFFMjYxQkRFNkIwMDY3OEFFRSAvKiBYUkRldmljZUlkZW50aWZpZXIuaCAqLzsgfTsKIAkJNTI1
MDgwQjIyNjFCREU2QzAwNjc4QUVFIC8qIFhSRGV2aWNlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI1MDgwQUYyNjFCREU2QzAwNjc4QUVFIC8q
IFhSRGV2aWNlSW5mby5oICovOyB9OwogCQk1MjcyRDRDOTFFNzM1RjA5MDBFQjQyOTAgLyogV0tQ
cm90ZWN0aW9uU3BhY2VOUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTI3MkQ0QzcxRTczNUYwOTAwRUI0MjkwIC8qIFdLUHJvdGVjdGlvblNwYWNlTlMu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQ0
MzYsNyArMTQ0MzUsNiBAQAogCQkJCUNFMjEyMTYwMjQwRUU1NzEwMDZFRDQ0MyAvKiBXS1RleHRQ
bGFjZWhvbGRlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCUMxNEQzMDY5MjRCNzlCRTAwMDQ4MDM4
NyAvKiBYUENFbmRwb2ludC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUMxNEQzMDZBMjRCNzlCRTQw
MDQ4MDM4NyAvKiBYUENFbmRwb2ludENsaWVudC5tbSBpbiBTb3VyY2VzICovLAotCQkJCTUyNTA4
MEIwMjYxQkRFNkMwMDY3OEFFRSAvKiBYUkRldmljZUluZm8ubW0gaW4gU291cmNlcyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsK
</data>
<flag name="commit-queue"
          id="445520"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>