<?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>195750</bug_id>
          
          <creation_ts>2019-03-14 10:57:45 -0700</creation_ts>
          <short_desc>Add WebsitePolicy for the client to specify the device orientation &amp; motion access policy</short_desc>
          <delta_ts>2019-03-14 13:41:21 -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>WebKit2</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>
          <dependson>195731</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>kangil.han</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1516535</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-14 10:57:45 -0700</bug_when>
    <thetext>Add WebsitePolicy for the client to specify the device orientation &amp; motion access policy. If the client already knows access to the device motion &amp; orientation API will be granted / denied, it can let WebKit know via WebsitePolicies so that WebKit will not ask the client when the permission is requested by JS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516559</commentid>
    <comment_count>1</comment_count>
      <attachid>364671</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-14 11:51:53 -0700</bug_when>
    <thetext>Created attachment 364671
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516564</commentid>
    <comment_count>2</comment_count>
      <attachid>364672</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-14 11:58:25 -0700</bug_when>
    <thetext>Created attachment 364672
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516601</commentid>
    <comment_count>3</comment_count>
      <attachid>364672</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-03-14 13:12:07 -0700</bug_when>
    <thetext>Comment on attachment 364672
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516616</commentid>
    <comment_count>4</comment_count>
      <attachid>364672</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-14 13:40:15 -0700</bug_when>
    <thetext>Comment on attachment 364672
Patch

Clearing flags on attachment: 364672

Committed r242960: &lt;https://trac.webkit.org/changeset/242960&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516617</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-03-14 13:40:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1516621</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-14 13:41:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/48899622&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364671</attachid>
            <date>2019-03-14 11:51:53 -0700</date>
            <delta_ts>2019-03-14 11:58:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195750-20190314115152.patch</filename>
            <type>text/plain</type>
            <size>26144</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyOTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFhZTlhMzc0N2ZjMjcz
NDkyNzEzNjE1MTlkMzU1ZWYzZDVjZTBhMi4uZTViYjNhMmM1NGJmY2Y2NjY4YTg1ODdkY2IwYmFm
MGViYzczMjNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE5LTAzLTE0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFdlYnNpdGVQb2xpY3kg
Zm9yIHRoZSBjbGllbnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9yaWVudGF0aW9uICYgbW90aW9u
IGFjY2VzcyBwb2xpY3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE5NTc1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBXZWJzaXRlUG9saWN5IGZvciB0aGUgY2xpZW50IHRvIHNwZWNpZnkgdGhlIGRl
dmljZSBvcmllbnRhdGlvbiAmIG1vdGlvbiBhY2Nlc3MgcG9saWN5LiBJZgorICAgICAgICB0aGUg
Y2xpZW50IGFscmVhZHkga25vd3MgYWNjZXNzIHRvIHRoZSBkZXZpY2UgbW90aW9uICYgb3JpZW50
YXRpb24gQVBJIHdpbGwgYmUgZ3JhbnRlZCAvIGRlbmllZCwKKyAgICAgICAgaXQgY2FuIGxldCBX
ZWJLaXQga25vdyB2aWEgV2Vic2l0ZVBvbGljaWVzIHNvIHRoYXQgV2ViS2l0IHdpbGwgbm90IGFz
ayB0aGUgY2xpZW50IHdoZW4gdGhlCisgICAgICAgIHBlcm1pc3Npb24gaXMgcmVxdWVzdGVkIGJ5
IEpTLgorCisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29u
dHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlv
bkFjY2Vzc0NvbnRyb2xsZXI6OnNob3VsZEFsbG93QWNjZXNzKToKKyAgICAgICAgKFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcjo6c2V0QWNjZXNzU3Rh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3ND
b250cm9sbGVyOjphY2Nlc3NTdGF0ZSBjb25zdCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVu
dGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5oOgorICAgICAgICAqIGxvYWRlci9Eb2N1
bWVudExvYWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmRldmljZU9y
aWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OnNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUp
OgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdp
bmRvdzo6aXNBbGxvd2VkVG9Vc2VEZXZpY2VNb3Rpb25PcmllbnRhdGlvbiBjb25zdCk6CisKIDIw
MTktMDMtMTMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBEZXZp
Y2Ugb3JpZW50YXRpb24ncyBwZXJtaXNzaW9uIHNob3VsZCBvbmx5IHJlcXVpcmUgYSB1c2VyIGdl
c3R1cmUgdG8gcHJvbXB0IHRoZSB1c2VyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDgwMTI0MTJkOTJhMWEyOWFlYjhi
NjQ3ODkzOTljZDE2MGRlMWYyN2IuLmQ5M2E3ZWFkYTg5MDQ2NjM0YzJmNDg0OGMwMmU0N2RlMGFm
YTc2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTktMDMtMTQgIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgV2Vic2l0ZVBvbGljeSBmb3IgdGhl
IGNsaWVudCB0byBzcGVjaWZ5IHRoZSBkZXZpY2Ugb3JpZW50YXRpb24gJiBtb3Rpb24gYWNjZXNz
IHBvbGljeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk1NzUwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkIFdlYnNpdGVQb2xpY3kgZm9yIHRoZSBjbGllbnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9y
aWVudGF0aW9uICYgbW90aW9uIGFjY2VzcyBwb2xpY3kuIElmCisgICAgICAgIHRoZSBjbGllbnQg
YWxyZWFkeSBrbm93cyBhY2Nlc3MgdG8gdGhlIGRldmljZSBtb3Rpb24gJiBvcmllbnRhdGlvbiBB
UEkgd2lsbCBiZSBncmFudGVkIC8gZGVuaWVkLAorICAgICAgICBpdCBjYW4gbGV0IFdlYktpdCBr
bm93IHZpYSBXZWJzaXRlUG9saWNpZXMgc28gdGhhdCBXZWJLaXQgd2lsbCBub3QgYXNrIHRoZSBj
bGllbnQgd2hlbiB0aGUKKyAgICAgICAgcGVybWlzc2lvbiBpcyByZXF1ZXN0ZWQgYnkgSlMuCisK
KyAgICAgICAgKiBTaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYnNpdGVQb2xpY2llc0RhdGE6OmVuY29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6
OldlYnNpdGVQb2xpY2llc0RhdGE6OmRlY29kZSk6CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVQ
b2xpY2llc0RhdGE6OmFwcGx5VG9Eb2N1bWVudExvYWRlcik6CisgICAgICAgICogU2hhcmVkL1dl
YnNpdGVQb2xpY2llc0RhdGEuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVQ
b2xpY2llcy5jcHA6CisgICAgICAgIChBUEk6OldlYnNpdGVQb2xpY2llczo6ZGF0YSk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVQb2xpY2llcy5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLV2Vic2l0ZVBvbGljaWVzLm1tOgorICAgICAgICAoLVtfV0tXZWJzaXRl
UG9saWNpZXMgc2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3k6XSk6Cisg
ICAgICAgICgtW19XS1dlYnNpdGVQb2xpY2llcyBkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFj
Y2Vzc1BvbGljeV0pOgorCiAyMDE5LTAzLTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KIAogICAgICAgICBDaGVjayBJREIgcXVvdGEgdXNhZ2UgdGhyb3VnaCBRdW90YU1hbmFn
ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1v
dGlvbkFjY2Vzc0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKaW5kZXggMmI2OTg0OWNlZGViODNl
NWNmMzkwMzA2MGRjZmE4YzU1YTU5MDczZS4uZDg2YzE2MDBmYjNkNTlhNDIxZGI5NjliNGRiNThh
NzE0OTk4MTRlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKQEAgLTMyLDYg
KzMyLDcgQEAKICNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNsdWRlICJET01XaW5kb3cu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAj
aW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1
cmVJbmRpY2F0b3IuaCIKQEAgLTQ2LDggKzQ3LDkgQEAgRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rp
b25BY2Nlc3NDb250cm9sbGVyOjpEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnQK
IAogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6OnNob3Vs
ZEFsbG93QWNjZXNzKEZ1bmN0aW9uPHZvaWQoRXhjZXB0aW9uT3I8Ym9vbD4gZ3JhbnRlZCk+JiYg
Y2FsbGJhY2spCiB7Ci0gICAgaWYgKG1fYWNjZXNzU3RhdGUpCi0gICAgICAgIHJldHVybiBjYWxs
YmFjaygqbV9hY2Nlc3NTdGF0ZSk7CisgICAgaWYgKGF1dG8gYWNjZXNzU3RhdGUgPSB0aGlzLT5h
Y2Nlc3NTdGF0ZSgpKQorICAgICAgICByZXR1cm4gY2FsbGJhY2soKmFjY2Vzc1N0YXRlKTsKKyAg
ICBBU1NFUlQobV9kb2N1bWVudC5mcmFtZSgpKTsKIAogICAgIGlmICghVXNlckdlc3R1cmVJbmRp
Y2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm4gY2FsbGJhY2so
RXhjZXB0aW9uIHsgTm90QWxsb3dlZEVycm9yLCAiUmVxdWVzdGluZyBkZXZpY2Ugb3JpZW50YXRp
b24gb3IgbW90aW9uIGFjY2VzcyByZXF1aXJlcyBhIHVzZXIgZ2VzdHVyZSJfcyB9KTsKQEAgLTU2
LDE1ICs1OCwxMSBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJv
bGxlcjo6c2hvdWxkQWxsb3dBY2Nlc3MoRnVuY3Rpb248dm9pZAogICAgIGlmICghcGFnZSkKICAg
ICAgICAgcmV0dXJuIGNhbGxiYWNrKGZhbHNlKTsKIAotICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1
bWVudC5mcmFtZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiBjYWxsYmFjayhm
YWxzZSk7Ci0KICAgICBtX3BlbmRpbmdSZXF1ZXN0cy5hcHBlbmQoV1RGTW92ZShjYWxsYmFjaykp
OwogICAgIGlmIChtX3BlbmRpbmdSZXF1ZXN0cy5zaXplKCkgPiAxKQogICAgICAgICByZXR1cm47
CiAKLSAgICBwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5zaG91bGRBbGxvd0RldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzKCpmcmFtZSwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIo
KnRoaXMpXShib29sIGdyYW50ZWQpIG11dGFibGUgeworICAgIHBhZ2UtPmNocm9tZSgpLmNsaWVu
dCgpLnNob3VsZEFsbG93RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3MoKm1fZG9jdW1l
bnQuZnJhbWUoKSwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpXShib29sIGdy
YW50ZWQpIG11dGFibGUgewogICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAgICBzZXRB
Y2Nlc3NTdGF0ZShncmFudGVkKTsKICAgICB9KTsKQEAgLTcyLDkgKzcwLDkgQEAgdm9pZCBEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6OnNob3VsZEFsbG93QWNjZXNz
KEZ1bmN0aW9uPHZvaWQKIAogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0Nv
bnRyb2xsZXI6OnNldEFjY2Vzc1N0YXRlKGJvb2wgZ3JhbnRlZCkKIHsKLSAgICBBU1NFUlQoIW1f
YWNjZXNzU3RhdGUpOwotCi0gICAgbV9hY2Nlc3NTdGF0ZSA9IGdyYW50ZWQ7CisgICAgYXV0byog
ZnJhbWUgPSBtX2RvY3VtZW50LmZyYW1lKCk7CisgICAgaWYgKGZyYW1lICYmIGZyYW1lLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpKQorICAgICAgICBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKS0+c2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZShncmFudGVk
KTsKIAogICAgIGF1dG8gcGVuZGluZ1JlcXVlc3RzID0gV1RGTW92ZShtX3BlbmRpbmdSZXF1ZXN0
cyk7CiAgICAgZm9yIChhdXRvJiByZXF1ZXN0IDogcGVuZGluZ1JlcXVlc3RzKQpAQCAtODksNiAr
ODcsMTIgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6
OnNldEFjY2Vzc1N0YXRlKGJvb2wgZ3JhbnRlZCkKICAgICB9CiB9CiAKK09wdGlvbmFsPGJvb2w+
IERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcjo6YWNjZXNzU3RhdGUo
KSBjb25zdAoreworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudC5mcmFtZSgpOworICAgIHJl
dHVybiBmcmFtZSAmJiBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA/IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5kZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1N0YXRlKCkgOiBmYWxzZTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIu
aAppbmRleCA0YTFkZTkxNTk2NzVmMmE4M2QzNWE5NzVlYTRkNTI0NGI0YWZhN2JjLi5lNTk5Y2Fk
MDVhMzliYzQ3NDJlMGJlMzkyNzExOWMxNTA0NTM0NDc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29u
dHJvbGxlci5oCkBAIC00MSwxNCArNDEsMTMgQEAgY2xhc3MgRGV2aWNlT3JpZW50YXRpb25BbmRN
b3Rpb25BY2Nlc3NDb250cm9sbGVyIDogcHVibGljIENhbk1ha2VXZWFrUHRyPERldmljZU8KIHB1
YmxpYzoKICAgICBleHBsaWNpdCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRy
b2xsZXIoRG9jdW1lbnQmKTsKIAotICAgIGNvbnN0IE9wdGlvbmFsPGJvb2w+JiBhY2Nlc3NTdGF0
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWNjZXNzU3RhdGU7IH0KKyAgICBPcHRpb25hbDxib29sPiBh
Y2Nlc3NTdGF0ZSgpIGNvbnN0OwogICAgIHZvaWQgc2hvdWxkQWxsb3dBY2Nlc3MoRnVuY3Rpb248
dm9pZChFeGNlcHRpb25Pcjxib29sPiBncmFudGVkKT4mJik7CiAKIHByaXZhdGU6CiAgICAgdm9p
ZCBzZXRBY2Nlc3NTdGF0ZShib29sKTsKIAogICAgIERvY3VtZW50JiBtX2RvY3VtZW50OwotICAg
IE9wdGlvbmFsPGJvb2w+IG1fYWNjZXNzU3RhdGU7CiAgICAgVmVjdG9yPEZ1bmN0aW9uPHZvaWQo
Ym9vbCk+PiBtX3BlbmRpbmdSZXF1ZXN0czsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmgKaW5kZXggODFjNjA0ODQ1YWNlNzg1MzRmYzg1ZmFmODU1ZmFjMTQyY2ZkODRh
ZC4uMDE5ZDFiNTA5MGMxM2MwZGVkZDljODgxZWVlODEyODQyM2YwZDZmYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTI2Miw4ICsyNjIsOCBAQCBwdWJsaWM6CiAg
ICAgYm9vbCB1c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV91
c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkOyB9CiAgICAgdm9pZCBzZXRVc2VyQ29udGVudEV4
dGVuc2lvbnNFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX3VzZXJDb250ZW50RXh0ZW5zaW9uc0Vu
YWJsZWQgPSBlbmFibGVkOyB9CiAKLSAgICBib29sIGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKCkgY29uc3QgeyByZXR1cm4gbV9kZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZDsgfQot
ICAgIHZvaWQgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7
IG1fZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQgPSBlbmFibGVkOyB9CisgICAgY29uc3Qg
T3B0aW9uYWw8Ym9vbD4mIGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSBj
b25zdCB7IHJldHVybiBtX2RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7IH0K
KyAgICB2b2lkIHNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoY29uc3Qg
T3B0aW9uYWw8Ym9vbD4mIHN0YXRlKSB7IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nl
c3NTdGF0ZSA9IHN0YXRlOyB9CiAKICAgICBBdXRvcGxheVBvbGljeSBhdXRvcGxheVBvbGljeSgp
IGNvbnN0IHsgcmV0dXJuIG1fYXV0b3BsYXlQb2xpY3k7IH0KICAgICB2b2lkIHNldEF1dG9wbGF5
UG9saWN5KEF1dG9wbGF5UG9saWN5IHBvbGljeSkgeyBtX2F1dG9wbGF5UG9saWN5ID0gcG9saWN5
OyB9CkBAIC01NTIsNyArNTUyLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9jdXN0b21KYXZh
U2NyaXB0VXNlckFnZW50QXNTaXRlU3BlY2lmaWNRdWlya3M7CiAgICAgU3RyaW5nIG1fY3VzdG9t
TmF2aWdhdG9yUGxhdGZvcm07CiAgICAgYm9vbCBtX3VzZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJs
ZWQgeyB0cnVlIH07Ci0gICAgYm9vbCBtX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsg
dHJ1ZSB9OworICAgIE9wdGlvbmFsPGJvb2w+IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25B
Y2Nlc3NTdGF0ZTsKICAgICBBdXRvcGxheVBvbGljeSBtX2F1dG9wbGF5UG9saWN5IHsgQXV0b3Bs
YXlQb2xpY3k6OkRlZmF1bHQgfTsKICAgICBPcHRpb25TZXQ8QXV0b3BsYXlRdWlyaz4gbV9hbGxv
d2VkQXV0b3BsYXlRdWlya3M7CiAgICAgUG9wVXBQb2xpY3kgbV9wb3BVcFBvbGljeSB7IFBvcFVw
UG9saWN5OjpEZWZhdWx0IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggOGMzMWRi
ZDA1Y2EzOWI4NGFjYTBjMjBiZjdkNmM2NmM3NWYyZTM5Yy4uNGQ3YjNhZmU3ZWM5MTY0ZWJkMDMx
YThiZmMwMDQ1NWNlNTU2OWEzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01X
aW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtMTg0
MCw3ICsxODQwLDcgQEAgRGV2aWNlTW90aW9uQ29udHJvbGxlciogRE9NV2luZG93OjpkZXZpY2VN
b3Rpb25Db250cm9sbGVyKCkgY29uc3QKIAogYm9vbCBET01XaW5kb3c6OmlzQWxsb3dlZFRvVXNl
RGV2aWNlTW90aW9uT3JpZW50YXRpb24oU3RyaW5nJiBtZXNzYWdlKSBjb25zdAogewotICAgIGlm
ICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+c2V0dGluZ3MoKS5kZXZpY2VPcmllbnRhdGlvbkV2ZW50
RW5hYmxlZCgpIHx8ICFkb2N1bWVudCgpIHx8ICFkb2N1bWVudCgpLT5sb2FkZXIoKSB8fCAhZG9j
dW1lbnQoKS0+bG9hZGVyKCktPmRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKCkpIHsKKyAg
ICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnNldHRpbmdzKCkuZGV2aWNlT3JpZW50YXRpb25F
dmVudEVuYWJsZWQoKSkgewogICAgICAgICBtZXNzYWdlID0gIkFQSSBpcyBkaXNhYmxlZCJfczsK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYnNpdGVQb2xpY2llc0RhdGEuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
c2l0ZVBvbGljaWVzRGF0YS5jcHAKaW5kZXggNmIzYjAyZGE5ZjY2MmNiODk5NzkxNmVjMDhjMmU3
ZWI0YzE3ZmUxMi4uYTg4NTI4OTk3YmQwMGI5NWY1ZTlmYzYxODk0MTE2ZTBjMDEzNzE1NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHAKQEAgLTM3LDgg
KzM3LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiB2b2lkIFdlYnNpdGVQb2xpY2llc0RhdGE6OmVu
Y29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiB7CiAgICAgZW5jb2RlciA8PCBjb250
ZW50QmxvY2tlcnNFbmFibGVkOwotICAgIGVuY29kZXIgPDwgZGV2aWNlT3JpZW50YXRpb25FdmVu
dEVuYWJsZWQ7CiAgICAgZW5jb2RlciA8PCBhdXRvcGxheVBvbGljeTsKKyAgICBlbmNvZGVyIDw8
IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CiAgICAgZW5jb2RlciA8PCBh
bGxvd2VkQXV0b3BsYXlRdWlya3M7CiAgICAgZW5jb2RlciA8PCBjdXN0b21IZWFkZXJGaWVsZHM7
CiAgICAgZW5jb2RlciA8PCBwb3BVcFBvbGljeTsKQEAgLTU0LDE2ICs1NCwxNiBAQCBPcHRpb25h
bDxXZWJzaXRlUG9saWNpZXNEYXRhPiBXZWJzaXRlUG9saWNpZXNEYXRhOjpkZWNvZGUoSVBDOjpE
ZWNvZGVyJiBkZWNvZGVyKQogICAgIGRlY29kZXIgPj4gY29udGVudEJsb2NrZXJzRW5hYmxlZDsK
ICAgICBpZiAoIWNvbnRlbnRCbG9ja2Vyc0VuYWJsZWQpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7Ci0KLSAgICBPcHRpb25hbDxib29sPiBkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxl
ZDsKLSAgICBkZWNvZGVyID4+IGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkOwotICAgIGlm
ICghZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQpCi0gICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAgICAgCiAgICAgT3B0aW9uYWw8V2Vic2l0ZUF1dG9wbGF5UG9saWN5PiBhdXRvcGxh
eVBvbGljeTsKICAgICBkZWNvZGVyID4+IGF1dG9wbGF5UG9saWN5OwogICAgIGlmICghYXV0b3Bs
YXlQb2xpY3kpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBPcHRpb25hbDxP
cHRpb25hbDxib29sPj4gZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZTsKKyAg
ICBkZWNvZGVyID4+IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CisgICAg
aWYgKCFkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKQorICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OwogICAgIAogICAgIE9wdGlvbmFsPE9wdGlvblNldDxXZWJzaXRlQXV0
b3BsYXlRdWlyaz4+IGFsbG93ZWRBdXRvcGxheVF1aXJrczsKICAgICBkZWNvZGVyID4+IGFsbG93
ZWRBdXRvcGxheVF1aXJrczsKQEAgLTEwMiw5ICsxMDIsOSBAQCBPcHRpb25hbDxXZWJzaXRlUG9s
aWNpZXNEYXRhPiBXZWJzaXRlUG9saWNpZXNEYXRhOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNv
ZGVyKQogICAgIAogICAgIHJldHVybiB7IHsKICAgICAgICAgV1RGTW92ZSgqY29udGVudEJsb2Nr
ZXJzRW5hYmxlZCksCi0gICAgICAgIFdURk1vdmUoKmRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKSwKICAgICAgICAgV1RGTW92ZSgqYWxsb3dlZEF1dG9wbGF5UXVpcmtzKSwKICAgICAgICAg
V1RGTW92ZSgqYXV0b3BsYXlQb2xpY3kpLAorICAgICAgICBXVEZNb3ZlKCpkZXZpY2VPcmllbnRh
dGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKSwKICAgICAgICAgV1RGTW92ZSgqY3VzdG9tSGVhZGVy
RmllbGRzKSwKICAgICAgICAgV1RGTW92ZSgqcG9wVXBQb2xpY3kpLAogICAgICAgICBXVEZNb3Zl
KCp3ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyksCkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBX
ZWJzaXRlUG9saWNpZXNEYXRhOjphcHBseVRvRG9jdW1lbnRMb2FkZXIoV2Vic2l0ZVBvbGljaWVz
RGF0YSYmIHdlYnNpdGVQb2wKICAgICBkb2N1bWVudExvYWRlci5zZXRDdXN0b21Vc2VyQWdlbnQo
d2Vic2l0ZVBvbGljaWVzLmN1c3RvbVVzZXJBZ2VudCk7CiAgICAgZG9jdW1lbnRMb2FkZXIuc2V0
Q3VzdG9tSmF2YVNjcmlwdFVzZXJBZ2VudEFzU2l0ZVNwZWNpZmljUXVpcmtzKHdlYnNpdGVQb2xp
Y2llcy5jdXN0b21KYXZhU2NyaXB0VXNlckFnZW50QXNTaXRlU3BlY2lmaWNRdWlya3MpOwogICAg
IGRvY3VtZW50TG9hZGVyLnNldEN1c3RvbU5hdmlnYXRvclBsYXRmb3JtKHdlYnNpdGVQb2xpY2ll
cy5jdXN0b21OYXZpZ2F0b3JQbGF0Zm9ybSk7Ci0gICAgZG9jdW1lbnRMb2FkZXIuc2V0RGV2aWNl
T3JpZW50YXRpb25FdmVudEVuYWJsZWQod2Vic2l0ZVBvbGljaWVzLmRldmljZU9yaWVudGF0aW9u
RXZlbnRFbmFibGVkKTsKKyAgICBkb2N1bWVudExvYWRlci5zZXREZXZpY2VPcmllbnRhdGlvbkFu
ZE1vdGlvbkFjY2Vzc1N0YXRlKHdlYnNpdGVQb2xpY2llcy5kZXZpY2VPcmllbnRhdGlvbkFuZE1v
dGlvbkFjY2Vzc1N0YXRlKTsKICAgICAKICAgICAvLyBPbmx5IHNldFVzZXJDb250ZW50RXh0ZW5z
aW9uc0VuYWJsZWQgaWYgaXQgaGFzbid0IGFscmVhZHkgYmVlbiBkaXNhYmxlZCBieSByZWxvYWRp
bmcgd2l0aG91dCBjb250ZW50IGJsb2NrZXJzLgogICAgIGlmIChkb2N1bWVudExvYWRlci51c2Vy
Q29udGVudEV4dGVuc2lvbnNFbmFibGVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJzaXRlUG9saWNpZXNEYXRhLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJzaXRl
UG9saWNpZXNEYXRhLmgKaW5kZXggYzI3MTFhOTRhOGNmYjNlNGI2N2NjZThkOTExNGFkNjI3OGJm
MWRlZi4uZDNkZDAwNWI0ZjRjODY1ZGQzZGFhMDg2Y2U0MjA1Y2M3MDc1NDM3MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYnNpdGVQb2xpY2llc0RhdGEuaApAQCAtNDcsOSArNDcsOSBAQCBz
dHJ1Y3QgV2Vic2l0ZVBvbGljaWVzRGF0YSB7CiAgICAgc3RhdGljIHZvaWQgYXBwbHlUb0RvY3Vt
ZW50TG9hZGVyKFdlYnNpdGVQb2xpY2llc0RhdGEmJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIm
KTsKIAogICAgIGJvb2wgY29udGVudEJsb2NrZXJzRW5hYmxlZCB7IHRydWUgfTsKLSAgICBib29s
IGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsgdHJ1ZSB9OwogICAgIE9wdGlvblNldDxX
ZWJzaXRlQXV0b3BsYXlRdWlyaz4gYWxsb3dlZEF1dG9wbGF5UXVpcmtzOwogICAgIFdlYnNpdGVB
dXRvcGxheVBvbGljeSBhdXRvcGxheVBvbGljeSB7IFdlYnNpdGVBdXRvcGxheVBvbGljeTo6RGVm
YXVsdCB9OworICAgIE9wdGlvbmFsPGJvb2w+IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNj
ZXNzU3RhdGU7CiAgICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4gY3VzdG9tSGVh
ZGVyRmllbGRzOwogICAgIFdlYnNpdGVQb3BVcFBvbGljeSBwb3BVcFBvbGljeSB7IFdlYnNpdGVQ
b3BVcFBvbGljeTo6RGVmYXVsdCB9OwogICAgIE9wdGlvbmFsPFdlYnNpdGVEYXRhU3RvcmVQYXJh
bWV0ZXJzPiB3ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVQb2xpY2llcy5jcHAKaW5kZXggYzYzY2UwNmZiNzMy
ZmY0MDczZTZiMTM0MzNkODRhOTUzZTdkN2NmYi4uODZmY2FjMDZlNTJjYmZkNWMxZTFmMzA3Nzlh
OWUxNDE4N2QyMTI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVdlYnNpdGVQb2xpY2llcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVdlYnNpdGVQb2xpY2llcy5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgV2ViS2l0OjpXZWJzaXRlUG9s
aWNpZXNEYXRhIFdlYnNpdGVQb2xpY2llczo6ZGF0YSgpCiAgICAgT3B0aW9uYWw8V2ViS2l0OjpX
ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycz4gcGFyYW1ldGVyczsKICAgICBpZiAobV93ZWJzaXRl
RGF0YVN0b3JlKQogICAgICAgICBwYXJhbWV0ZXJzID0gbV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJz
aXRlRGF0YVN0b3JlKCkucGFyYW1ldGVycygpOwotICAgIHJldHVybiB7IGNvbnRlbnRCbG9ja2Vy
c0VuYWJsZWQoKSwgZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQoKSwgYWxsb3dlZEF1dG9w
bGF5UXVpcmtzKCksIGF1dG9wbGF5UG9saWN5KCksCisgICAgcmV0dXJuIHsgY29udGVudEJsb2Nr
ZXJzRW5hYmxlZCgpLCBhbGxvd2VkQXV0b3BsYXlRdWlya3MoKSwgYXV0b3BsYXlQb2xpY3koKSwg
ZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSgpLAogICAgICAgICBjdXN0b21I
ZWFkZXJGaWVsZHMoKSwgcG9wVXBQb2xpY3koKSwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgbV9jdXN0
b21Vc2VyQWdlbnQsIG1fY3VzdG9tSmF2YVNjcmlwdFVzZXJBZ2VudEFzU2l0ZVNwZWNpZmljUXVp
cmtzLCBtX2N1c3RvbU5hdmlnYXRvclBsYXRmb3JtIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaAppbmRleCBlYTk4ZDI1ZjAxZGUz
ODE5ZDUzODYyYzdiYTk1NThiYWVlNGM5YzFlLi43ZWRhMTlkNGUxOWY0MWYyMDM3NWMxOGU5MjQ2
YjQwMmIzMjNiZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
V2Vic2l0ZVBvbGljaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVdl
YnNpdGVQb2xpY2llcy5oCkBAIC00OSwxNSArNDksMTUgQEAgcHVibGljOgogCiAgICAgYm9vbCBj
b250ZW50QmxvY2tlcnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50QmxvY2tlcnNF
bmFibGVkOyB9CiAgICAgdm9pZCBzZXRDb250ZW50QmxvY2tlcnNFbmFibGVkKGJvb2wgZW5hYmxl
ZCkgeyBtX2NvbnRlbnRCbG9ja2Vyc0VuYWJsZWQgPSBlbmFibGVkOyB9Ci0KLSAgICBib29sIGRl
dmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9kZXZpY2VPcmll
bnRhdGlvbkV2ZW50RW5hYmxlZDsgfQotICAgIHZvaWQgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVu
dEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQg
PSBlbmFibGVkOyB9CiAgICAgCiAgICAgT3B0aW9uU2V0PFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5
UXVpcms+IGFsbG93ZWRBdXRvcGxheVF1aXJrcygpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dlZEF1
dG9wbGF5UXVpcmtzOyB9CiAgICAgdm9pZCBzZXRBbGxvd2VkQXV0b3BsYXlRdWlya3MoT3B0aW9u
U2V0PFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5UXVpcms+IHF1aXJrcykgeyBtX2FsbG93ZWRBdXRv
cGxheVF1aXJrcyA9IHF1aXJrczsgfQogICAgIAogICAgIFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5
UG9saWN5IGF1dG9wbGF5UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9hdXRvcGxheVBvbGljeTsg
fQogICAgIHZvaWQgc2V0QXV0b3BsYXlQb2xpY3koV2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlQb2xp
Y3kgcG9saWN5KSB7IG1fYXV0b3BsYXlQb2xpY3kgPSBwb2xpY3k7IH0KKworICAgIGNvbnN0IE9w
dGlvbmFsPGJvb2w+JiBkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKCkgY29u
c3QgeyByZXR1cm4gbV9kZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlOyB9Cisg
ICAgdm9pZCBzZXREZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKE9wdGlvbmFs
PGJvb2w+IHN0YXRlKSB7IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSA9
IHN0YXRlOyB9CiAgICAgCiAgICAgY29uc3QgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVs
ZD4mIGN1c3RvbUhlYWRlckZpZWxkcygpIGNvbnN0IHsgcmV0dXJuIG1fY3VzdG9tSGVhZGVyRmll
bGRzOyB9CiAgICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4mJiB0YWtlQ3VzdG9t
SGVhZGVyRmllbGRzKCkgeyByZXR1cm4gV1RGTW92ZShtX2N1c3RvbUhlYWRlckZpZWxkcyk7IH0K
QEAgLTg0LDkgKzg0LDkgQEAgcHJpdmF0ZToKICAgICBXZWJzaXRlUG9saWNpZXMoYm9vbCBjb250
ZW50QmxvY2tlcnNFbmFibGVkLCBPcHRpb25TZXQ8V2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlRdWly
az4sIFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5UG9saWN5LCBWZWN0b3I8V2ViQ29yZTo6SFRUUEhl
YWRlckZpZWxkPiYmLCBXZWJLaXQ6OldlYnNpdGVQb3BVcFBvbGljeSwgUmVmUHRyPFdlYnNpdGVE
YXRhU3RvcmU+JiYpOwogCiAgICAgYm9vbCBtX2NvbnRlbnRCbG9ja2Vyc0VuYWJsZWQgeyB0cnVl
IH07Ci0gICAgYm9vbCBtX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsgdHJ1ZSB9Owog
ICAgIE9wdGlvblNldDxXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVF1aXJrPiBtX2FsbG93ZWRBdXRv
cGxheVF1aXJrczsKICAgICBXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVBvbGljeSBtX2F1dG9wbGF5
UG9saWN5IHsgV2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBP
cHRpb25hbDxib29sPiBtX2RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CiAg
ICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4gbV9jdXN0b21IZWFkZXJGaWVsZHM7
CiAgICAgV2ViS2l0OjpXZWJzaXRlUG9wVXBQb2xpY3kgbV9wb3BVcFBvbGljeSB7IFdlYktpdDo6
V2Vic2l0ZVBvcFVwUG9saWN5OjpEZWZhdWx0IH07CiAgICAgUmVmUHRyPFdlYnNpdGVEYXRhU3Rv
cmU+IG1fd2Vic2l0ZURhdGFTdG9yZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMuaAppbmRleCBiYWI2OGIyZmE4ODM5MmNh
ODA1YTE3ODQ1Nzc5MmQ5MDJlZjQxZmIyLi4zNGEzMDY5YmNmZmE0NjliYTBiZjgzZGFlNWM0YTg1
NTdkNWM5ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLV2Vic2l0ZVBvbGljaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1dlYnNpdGVQb2xpY2llcy5oCkBAIC00NSw2ICs0NSwxMiBAQCB0eXBlZGVmIE5TX09Q
VElPTlMoTlNVSW50ZWdlciwgX1dLV2Vic2l0ZVBvcFVwUG9saWN5KSB7CiAgICAgX1dLV2Vic2l0
ZVBvcFVwUG9saWN5QmxvY2ssCiB9IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9z
KDEyLjApKTsKIAordHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9XS1dlYnNpdGVEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSkgeworICAgIF9XS1dlYnNpdGVEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeUFzaywKKyAgICBfV0tXZWJzaXRlRGV2
aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudCwKKyAgICBfV0tXZWJzaXRl
RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lEZW55LAorfSBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CisKIEBjbGFzcyBXS1dlYnNpdGVEYXRh
U3RvcmU7CiAKIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTIuMyksIGlvcygxMC4zKSkK
QEAgLTU5LDYgKzY1LDYgQEAgV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4zKSwgaW9z
KDEwLjMpKQogQHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5TU3RyaW5nICpjdXN0b21Vc2Vy
QWdlbnQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
KSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNTdHJpbmcgKmN1c3RvbUphdmFTY3Jp
cHRVc2VyQWdlbnRBc1NpdGVTcGVjaWZpY1F1aXJrcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5
KSBOU1N0cmluZyAqY3VzdG9tTmF2aWdhdG9yUGxhdGZvcm0gV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYykg
Qk9PTCBkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBf
V0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kgZGV2aWNlT3Jp
ZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tf
TUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMubW0gYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0ZVBvbGljaWVzLm1tCmluZGV4IDZi
NzgwZTNmYTAxZTkxMjQ2Y2I3NjMxNGU1YjM4ZDFkNzI5NjQ5YjYuLmQ1ZTljOTE4MjMzNTg3YTZk
MDFlOTY4OThjNjE5ZTIyYTg3NzJlYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVQb2xpY2llcy5tbQpAQCAtNTcsMTYgKzU3LDYg
QEAgLSAoQk9PTCljb250ZW50QmxvY2tlcnNFbmFibGVkCiAgICAgcmV0dXJuIF93ZWJzaXRlUG9s
aWNpZXMtPmNvbnRlbnRCbG9ja2Vyc0VuYWJsZWQoKTsKIH0KIAotLSAodm9pZClzZXREZXZpY2VP
cmllbnRhdGlvbkV2ZW50RW5hYmxlZDooQk9PTClkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxl
ZAotewotICAgIF93ZWJzaXRlUG9saWNpZXMtPnNldERldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKTsKLX0KLQotLSAoQk9PTClkZXZpY2VP
cmllbnRhdGlvbkV2ZW50RW5hYmxlZAotewotICAgIHJldHVybiBfd2Vic2l0ZVBvbGljaWVzLT5k
ZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZCgpOwotfQotCiAtICh2b2lkKXNldEFsbG93ZWRB
dXRvcGxheVF1aXJrczooX1dLV2Vic2l0ZUF1dG9wbGF5UXVpcmspYWxsb3dlZFF1aXJrcwogewog
ICAgIE9wdGlvblNldDxXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVF1aXJrPiBxdWlya3M7CkBAIC0x
MzgsNiArMTI4LDI4IEBAIC0gKF9XS1dlYnNpdGVBdXRvcGxheVBvbGljeSlhdXRvcGxheVBvbGlj
eQogICAgIH0KIH0KIAorLSAodm9pZClzZXREZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1BvbGljeTooX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5
KXBvbGljeQoreworICAgIHN3aXRjaCAocG9saWN5KSB7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2
aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lBc2s6CisgICAgICAgIF93ZWJzaXRl
UG9saWNpZXMtPnNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoV1RGOjpu
dWxsb3B0KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudDoKKyAgICAgICAgX3dlYnNpdGVQb2xpY2ll
cy0+c2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSh0cnVlKTsKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25B
Y2Nlc3NQb2xpY3lEZW55OgorICAgICAgICBfd2Vic2l0ZVBvbGljaWVzLT5zZXREZXZpY2VPcmll
bnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKGZhbHNlKTsKKyAgICAgICAgYnJlYWs7CisgICAg
fQorfQorCistIChfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xp
Y3kpZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kKK3sKKyAgICBpZiAoIV93
ZWJzaXRlUG9saWNpZXMtPmRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSkK
KyAgICAgICAgcmV0dXJuIF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1BvbGljeUFzazsKKyAgICByZXR1cm4gKl93ZWJzaXRlUG9saWNpZXMtPmRldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSA/IF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFu
ZE1vdGlvbkFjY2Vzc1BvbGljeUdyYW50IDogX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5k
TW90aW9uQWNjZXNzUG9saWN5RGVueTsKK30KKwogLSAodm9pZClzZXRQb3BVcFBvbGljeTooX1dL
V2Vic2l0ZVBvcFVwUG9saWN5KXBvbGljeQogewogICAgIHN3aXRjaCAocG9saWN5KSB7CmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmFjZmZkYmIx
ODlhZTVmMzE2NDg5MDcxODYyNGE2MTE2ZmI4NDQwNS4uMWNkZDIwMWZmZGM3ZmM4NTI3ZjRhMDVm
ODY5MTY5NzExN2I0MWVjZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTAzLTE0ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFdlYnNpdGVQb2xpY3kgZm9yIHRoZSBjbGll
bnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9yaWVudGF0aW9uICYgbW90aW9uIGFjY2VzcyBwb2xp
Y3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTc1
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBB
UEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvV2Vic2l0ZVBvbGljaWVzLm1tOgorICAgICAgICAoLVtXZWJzaXRlUG9saWNpZXNEZXZp
Y2VPcmllbnRhdGlvbkRlbGVnYXRlIGluaXRXaXRoRGV2aWNlT3JpZW50YXRpb25BY2Nlc3NQb2xp
Y3k6XSk6CisgICAgICAgICgtW1dlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRGVsZWdh
dGUgX3dlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbjp1c2VySW5mbzpkZWNp
c2lvbkhhbmRsZXI6XSk6CisgICAgICAgICgtW1dlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0
aW9uVUlEZWxlZ2F0ZSBfd2ViVmlldzpzaG91bGRBbGxvd0RldmljZU9yaWVudGF0aW9uQW5kTW90
aW9uQWNjZXNzUmVxdWVzdGVkQnlGcmFtZTpkZWNpc2lvbkhhbmRsZXI6XSk6CisKIDIwMTktMDMt
MTMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgYSBTZXJ2
aWNlV29ya2VyIHByb2Nlc3MgcGVyIHJlZ2lzdHJhYmxlIGRvbWFpbgpkaWZmIC0tZ2l0IGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlUG9saWNpZXMubW0gYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQpp
bmRleCBmMTQyOTNiNGE2OTViMTEyODgyYThjMWM1ODc4MDA5NTlmOGI1NGE2Li4yYTQ3NmNmMmUw
YjIzMmMzM2M2MjVkNDVlYzcwNTA2NmJkYWI2ZjhlIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQpAQCAtMTI0
NiwyNCArMTI0NiwyNCBAQCBhZGRFdmVudExpc3RlbmVyKCJkZXZpY2VvcmllbnRhdGlvbiIsIChl
dmVudCkgPT4gewogKVRFU1RSRVNPVVJDRSI7CiAKIEBpbnRlcmZhY2UgV2Vic2l0ZVBvbGljaWVz
RGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0
ZT4gewotICAgIEJPT0wgX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkOworICAgIF9XS1dl
YnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSBfYWNjZXNzUG9saWN5
OwogfQotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJs
ZWQ6KEJPT0wpZW5hYmxlZDsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aERldmljZU9yaWVudGF0
aW9uQWNjZXNzUG9saWN5OihfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nl
c3NQb2xpY3kpYWNjZXNzUG9saWN5OwogQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2Vic2l0ZVBv
bGljaWVzRGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZQogCi0tIChpbnN0YW5jZXR5cGUpaW5pdFdp
dGhEZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZDooQk9PTCllbmFibGVkCistIChpbnN0YW5j
ZXR5cGUpaW5pdFdpdGhEZXZpY2VPcmllbnRhdGlvbkFjY2Vzc1BvbGljeTooX1dLV2Vic2l0ZURl
dmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5KWFjY2Vzc1BvbGljeQogewogICAg
IHNlbGYgPSBbc3VwZXIgaW5pdF07Ci0gICAgX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVk
ID0gZW5hYmxlZDsKKyAgICBfYWNjZXNzUG9saWN5ID0gYWNjZXNzUG9saWN5OwogICAgIHJldHVy
biBzZWxmOwogfQogCiAtICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb246KFdLTmF2aWdhdGlvbkFjdGlvbiAqKW5hdmlnYXRp
b25BY3Rpb24gdXNlckluZm86KGlkIDxOU1NlY3VyZUNvZGluZz4pdXNlckluZm8gZGVjaXNpb25I
YW5kbGVyOih2b2lkICheKShXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3ksIF9XS1dlYnNpdGVQb2xp
Y2llcyAqKSlkZWNpc2lvbkhhbmRsZXIKIHsKICAgICBfV0tXZWJzaXRlUG9saWNpZXMgKndlYnNp
dGVQb2xpY2llcyA9IFtbW19XS1dlYnNpdGVQb2xpY2llcyBhbGxvY10gaW5pdF0gYXV0b3JlbGVh
c2VdOwotICAgIFt3ZWJzaXRlUG9saWNpZXMgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJs
ZWQ6X2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkXTsKKyAgICBbd2Vic2l0ZVBvbGljaWVz
IHNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5Ol9hY2Nlc3NQb2xpY3ld
OwogCiAgICAgZGVjaXNpb25IYW5kbGVyKFdLTmF2aWdhdGlvbkFjdGlvblBvbGljeUFsbG93LCB3
ZWJzaXRlUG9saWNpZXMpOwogfQpAQCAtMTI3NSw2ICsxMjc1LDggQEAgLSAodm9pZCl3ZWJWaWV3
OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRpZEZpbmlzaE5hdmlnYXRpb246KFdLTmF2aWdhdGlvbiAq
KW5hdmlnYXQKIAogQGVuZAogCitzdGF0aWMgYm9vbCBjYWxsZWRTaG91bGRBbGxvd0RldmljZU9y
aWVudGF0aW9uQW5kTW90aW9uQWNjZXNzRGVsZWdhdGUgPSBmYWxzZTsKKwogQGludGVyZmFjZSBX
ZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvblVJRGVsZWdhdGUgOiBOU09iamVjdCA8V0tV
SURlbGVnYXRlUHJpdmF0ZT4gewogfQogQGVuZApAQCAtMTI4MywxMiArMTI4NSwxMyBAQCBAaW1w
bGVtZW50YXRpb24gV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25VSURlbGVnYXRlCiAK
IC0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc2hvdWxkQWxsb3dEZXZpY2VP
cmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1JlcXVlc3RlZEJ5RnJhbWU6KFdLRnJhbWVJbmZvICop
cmVxdWVzdGluZ0ZyYW1lIGRlY2lzaW9uSGFuZGxlcjoodm9pZCAoXikoQk9PTCkpZGVjaXNpb25I
YW5kbGVyCiB7CisgICAgY2FsbGVkU2hvdWxkQWxsb3dEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlv
bkFjY2Vzc0RlbGVnYXRlID0gdHJ1ZTsKICAgICBkZWNpc2lvbkhhbmRsZXIoWUVTKTsKIH0KIAog
QGVuZAogCi1zdGF0aWMgdm9pZCBydW5XZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2
ZW50VGVzdChib29sIHdlYnNpdGVQb2xpY3lWYWx1ZSkKK3N0YXRpYyB2b2lkIHJ1bldlYnNpdGVQ
b2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRUZXN0KF9XS1dlYnNpdGVEZXZpY2VPcmllbnRh
dGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSBhY2Nlc3NQb2xpY3kpCiB7CiAgICAgYXV0byBjb25m
aWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRd
KTsKIApAQCAtMTI5OCw3ICsxMzAxLDcgQEAgc3RhdGljIHZvaWQgcnVuV2Vic2l0ZVBvbGljaWVz
RGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3QoYm9vbCB3ZWJzaXRlUG9saWN5VmFsdWUKIAogICAg
IGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZy
YW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlv
bi5nZXQoKV0pOwogCi0gICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXZWJzaXRlUG9saWNp
ZXNEZXZpY2VPcmllbnRhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0V2l0aERldmljZU9yaWVudGF0
aW9uRXZlbnRFbmFibGVkOndlYnNpdGVQb2xpY3lWYWx1ZV0pOworICAgIGF1dG8gZGVsZWdhdGUg
PSBhZG9wdE5TKFtbV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdFdpdGhEZXZpY2VPcmllbnRhdGlvbkFjY2Vzc1BvbGljeTphY2Nlc3NQb2xpY3ldKTsK
ICAgICBbd2ViVmlldyBzZXROYXZpZ2F0aW9uRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOwogICAg
IGF1dG8gdWlEZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRh
dGlvblVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRl
OnVpRGVsZWdhdGUuZ2V0KCldOwpAQCAtMTMyMSw3ICsxMzI0LDEyIEBAIHN0YXRpYyB2b2lkIHJ1
bldlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRUZXN0KGJvb2wgd2Vic2l0ZVBv
bGljeVZhbHVlCiAKICAgICBbd2ViVmlldyBfc2ltdWxhdGVEZXZpY2VPcmllbnRhdGlvbkNoYW5n
ZVdpdGhBbHBoYToxLjAgYmV0YToyLjAgZ2FtbWE6My4wXTsKIAotICAgIGlmICh3ZWJzaXRlUG9s
aWN5VmFsdWUpCisgICAgaWYgKGFjY2Vzc1BvbGljeSA9PSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lBc2spCisgICAgICAgIEVYUEVDVF9UUlVFKGNhbGxl
ZFNob3VsZEFsbG93RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NEZWxlZ2F0ZSk7Cisg
ICAgZWxzZQorICAgICAgICBFWFBFQ1RfRkFMU0UoY2FsbGVkU2hvdWxkQWxsb3dEZXZpY2VPcmll
bnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0RlbGVnYXRlKTsKKworICAgIGlmIChhY2Nlc3NQb2xpY3kg
IT0gX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5RGVueSkK
ICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkaWRSZWNlaXZlTWVzc2FnZSk7CiAg
ICAgZWxzZSB7CiAgICAgICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnNsZWVwKDAuMSk7CkBAIC0x
MzI5LDE0ICsxMzM3LDE5IEBAIHN0YXRpYyB2b2lkIHJ1bldlYnNpdGVQb2xpY2llc0RldmljZU9y
aWVudGF0aW9uRXZlbnRUZXN0KGJvb2wgd2Vic2l0ZVBvbGljeVZhbHVlCiAgICAgfQogfQogCi1U
RVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQp
CitURVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25HcmFudEFjY2Vz
cykKK3sKKyAgICBydW5XZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50VGVzdChf
V0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudCk7Cit9
CisKK1RFU1QoV2ViS2l0LCBXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkRlbnlBY2Nl
c3MpCiB7Ci0gICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3Qo
dHJ1ZSk7CisgICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3Qo
X1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5RGVueSk7CiB9
CiAKLVRFU1QoV2ViS2l0LCBXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50RGlz
YWJsZWQpCitURVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25Bc2tB
Y2Nlc3MpCiB7Ci0gICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRl
c3QoZmFsc2UpOworICAgIHJ1bldlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRU
ZXN0KF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeUFzayk7
CiB9CiAKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>364672</attachid>
            <date>2019-03-14 11:58:25 -0700</date>
            <delta_ts>2019-03-14 13:40:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195750-20190314115824.patch</filename>
            <type>text/plain</type>
            <size>26144</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyOTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGFhZTlhMzc0N2ZjMjcz
NDkyNzEzNjE1MTlkMzU1ZWYzZDVjZTBhMi4uZTViYjNhMmM1NGJmY2Y2NjY4YTg1ODdkY2IwYmFm
MGViYzczMjNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE5LTAzLTE0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFdlYnNpdGVQb2xpY3kg
Zm9yIHRoZSBjbGllbnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9yaWVudGF0aW9uICYgbW90aW9u
IGFjY2VzcyBwb2xpY3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE5NTc1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZCBXZWJzaXRlUG9saWN5IGZvciB0aGUgY2xpZW50IHRvIHNwZWNpZnkgdGhlIGRl
dmljZSBvcmllbnRhdGlvbiAmIG1vdGlvbiBhY2Nlc3MgcG9saWN5LiBJZgorICAgICAgICB0aGUg
Y2xpZW50IGFscmVhZHkga25vd3MgYWNjZXNzIHRvIHRoZSBkZXZpY2UgbW90aW9uICYgb3JpZW50
YXRpb24gQVBJIHdpbGwgYmUgZ3JhbnRlZCAvIGRlbmllZCwKKyAgICAgICAgaXQgY2FuIGxldCBX
ZWJLaXQga25vdyB2aWEgV2Vic2l0ZVBvbGljaWVzIHNvIHRoYXQgV2ViS2l0IHdpbGwgbm90IGFz
ayB0aGUgY2xpZW50IHdoZW4gdGhlCisgICAgICAgIHBlcm1pc3Npb24gaXMgcmVxdWVzdGVkIGJ5
IEpTLgorCisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29u
dHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlv
bkFjY2Vzc0NvbnRyb2xsZXI6OnNob3VsZEFsbG93QWNjZXNzKToKKyAgICAgICAgKFdlYkNvcmU6
OkRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcjo6c2V0QWNjZXNzU3Rh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3ND
b250cm9sbGVyOjphY2Nlc3NTdGF0ZSBjb25zdCk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVu
dGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5oOgorICAgICAgICAqIGxvYWRlci9Eb2N1
bWVudExvYWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmRldmljZU9y
aWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXI6OnNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUp
OgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdp
bmRvdzo6aXNBbGxvd2VkVG9Vc2VEZXZpY2VNb3Rpb25PcmllbnRhdGlvbiBjb25zdCk6CisKIDIw
MTktMDMtMTMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBEZXZp
Y2Ugb3JpZW50YXRpb24ncyBwZXJtaXNzaW9uIHNob3VsZCBvbmx5IHJlcXVpcmUgYSB1c2VyIGdl
c3R1cmUgdG8gcHJvbXB0IHRoZSB1c2VyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDgwMTI0MTJkOTJhMWEyOWFlYjhi
NjQ3ODkzOTljZDE2MGRlMWYyN2IuLmQ5M2E3ZWFkYTg5MDQ2NjM0YzJmNDg0OGMwMmU0N2RlMGFm
YTc2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTktMDMtMTQgIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgV2Vic2l0ZVBvbGljeSBmb3IgdGhl
IGNsaWVudCB0byBzcGVjaWZ5IHRoZSBkZXZpY2Ugb3JpZW50YXRpb24gJiBtb3Rpb24gYWNjZXNz
IHBvbGljeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTk1NzUwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkIFdlYnNpdGVQb2xpY3kgZm9yIHRoZSBjbGllbnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9y
aWVudGF0aW9uICYgbW90aW9uIGFjY2VzcyBwb2xpY3kuIElmCisgICAgICAgIHRoZSBjbGllbnQg
YWxyZWFkeSBrbm93cyBhY2Nlc3MgdG8gdGhlIGRldmljZSBtb3Rpb24gJiBvcmllbnRhdGlvbiBB
UEkgd2lsbCBiZSBncmFudGVkIC8gZGVuaWVkLAorICAgICAgICBpdCBjYW4gbGV0IFdlYktpdCBr
bm93IHZpYSBXZWJzaXRlUG9saWNpZXMgc28gdGhhdCBXZWJLaXQgd2lsbCBub3QgYXNrIHRoZSBj
bGllbnQgd2hlbiB0aGUKKyAgICAgICAgcGVybWlzc2lvbiBpcyByZXF1ZXN0ZWQgYnkgSlMuCisK
KyAgICAgICAgKiBTaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYnNpdGVQb2xpY2llc0RhdGE6OmVuY29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6
OldlYnNpdGVQb2xpY2llc0RhdGE6OmRlY29kZSk6CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVQ
b2xpY2llc0RhdGE6OmFwcGx5VG9Eb2N1bWVudExvYWRlcik6CisgICAgICAgICogU2hhcmVkL1dl
YnNpdGVQb2xpY2llc0RhdGEuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVQ
b2xpY2llcy5jcHA6CisgICAgICAgIChBUEk6OldlYnNpdGVQb2xpY2llczo6ZGF0YSk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVQb2xpY2llcy5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLV2Vic2l0ZVBvbGljaWVzLm1tOgorICAgICAgICAoLVtfV0tXZWJzaXRl
UG9saWNpZXMgc2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3k6XSk6Cisg
ICAgICAgICgtW19XS1dlYnNpdGVQb2xpY2llcyBkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFj
Y2Vzc1BvbGljeV0pOgorCiAyMDE5LTAzLTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxl
LmNvbT4KIAogICAgICAgICBDaGVjayBJREIgcXVvdGEgdXNhZ2UgdGhyb3VnaCBRdW90YU1hbmFn
ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1v
dGlvbkFjY2Vzc0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKaW5kZXggMmI2OTg0OWNlZGViODNl
NWNmMzkwMzA2MGRjZmE4YzU1YTU5MDczZS4uZDg2YzE2MDBmYjNkNTlhNDIxZGI5NjliNGRiNThh
NzE0OTk4MTRlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHAKQEAgLTMyLDYg
KzMyLDcgQEAKICNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNsdWRlICJET01XaW5kb3cu
aCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAj
aW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiVXNlckdlc3R1
cmVJbmRpY2F0b3IuaCIKQEAgLTQ2LDggKzQ3LDkgQEAgRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rp
b25BY2Nlc3NDb250cm9sbGVyOjpEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnQK
IAogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6OnNob3Vs
ZEFsbG93QWNjZXNzKEZ1bmN0aW9uPHZvaWQoRXhjZXB0aW9uT3I8Ym9vbD4gZ3JhbnRlZCk+JiYg
Y2FsbGJhY2spCiB7Ci0gICAgaWYgKG1fYWNjZXNzU3RhdGUpCi0gICAgICAgIHJldHVybiBjYWxs
YmFjaygqbV9hY2Nlc3NTdGF0ZSk7CisgICAgaWYgKGF1dG8gYWNjZXNzU3RhdGUgPSB0aGlzLT5h
Y2Nlc3NTdGF0ZSgpKQorICAgICAgICByZXR1cm4gY2FsbGJhY2soKmFjY2Vzc1N0YXRlKTsKKyAg
ICBBU1NFUlQobV9kb2N1bWVudC5mcmFtZSgpKTsKIAogICAgIGlmICghVXNlckdlc3R1cmVJbmRp
Y2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm4gY2FsbGJhY2so
RXhjZXB0aW9uIHsgTm90QWxsb3dlZEVycm9yLCAiUmVxdWVzdGluZyBkZXZpY2Ugb3JpZW50YXRp
b24gb3IgbW90aW9uIGFjY2VzcyByZXF1aXJlcyBhIHVzZXIgZ2VzdHVyZSJfcyB9KTsKQEAgLTU2
LDE1ICs1OCwxMSBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJv
bGxlcjo6c2hvdWxkQWxsb3dBY2Nlc3MoRnVuY3Rpb248dm9pZAogICAgIGlmICghcGFnZSkKICAg
ICAgICAgcmV0dXJuIGNhbGxiYWNrKGZhbHNlKTsKIAotICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1
bWVudC5mcmFtZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiBjYWxsYmFjayhm
YWxzZSk7Ci0KICAgICBtX3BlbmRpbmdSZXF1ZXN0cy5hcHBlbmQoV1RGTW92ZShjYWxsYmFjaykp
OwogICAgIGlmIChtX3BlbmRpbmdSZXF1ZXN0cy5zaXplKCkgPiAxKQogICAgICAgICByZXR1cm47
CiAKLSAgICBwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5zaG91bGRBbGxvd0RldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzKCpmcmFtZSwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIo
KnRoaXMpXShib29sIGdyYW50ZWQpIG11dGFibGUgeworICAgIHBhZ2UtPmNocm9tZSgpLmNsaWVu
dCgpLnNob3VsZEFsbG93RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3MoKm1fZG9jdW1l
bnQuZnJhbWUoKSwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpXShib29sIGdy
YW50ZWQpIG11dGFibGUgewogICAgICAgICBpZiAod2Vha1RoaXMpCiAgICAgICAgICAgICBzZXRB
Y2Nlc3NTdGF0ZShncmFudGVkKTsKICAgICB9KTsKQEAgLTcyLDkgKzcwLDkgQEAgdm9pZCBEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6OnNob3VsZEFsbG93QWNjZXNz
KEZ1bmN0aW9uPHZvaWQKIAogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0Nv
bnRyb2xsZXI6OnNldEFjY2Vzc1N0YXRlKGJvb2wgZ3JhbnRlZCkKIHsKLSAgICBBU1NFUlQoIW1f
YWNjZXNzU3RhdGUpOwotCi0gICAgbV9hY2Nlc3NTdGF0ZSA9IGdyYW50ZWQ7CisgICAgYXV0byog
ZnJhbWUgPSBtX2RvY3VtZW50LmZyYW1lKCk7CisgICAgaWYgKGZyYW1lICYmIGZyYW1lLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpKQorICAgICAgICBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKS0+c2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZShncmFudGVk
KTsKIAogICAgIGF1dG8gcGVuZGluZ1JlcXVlc3RzID0gV1RGTW92ZShtX3BlbmRpbmdSZXF1ZXN0
cyk7CiAgICAgZm9yIChhdXRvJiByZXF1ZXN0IDogcGVuZGluZ1JlcXVlc3RzKQpAQCAtODksNiAr
ODcsMTIgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXI6
OnNldEFjY2Vzc1N0YXRlKGJvb2wgZ3JhbnRlZCkKICAgICB9CiB9CiAKK09wdGlvbmFsPGJvb2w+
IERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcjo6YWNjZXNzU3RhdGUo
KSBjb25zdAoreworICAgIGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudC5mcmFtZSgpOworICAgIHJl
dHVybiBmcmFtZSAmJiBmcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSA/IGZyYW1lLT5s
b2FkZXIoKS5kb2N1bWVudExvYWRlcigpLT5kZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1N0YXRlKCkgOiBmYWxzZTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIu
aAppbmRleCA0YTFkZTkxNTk2NzVmMmE4M2QzNWE5NzVlYTRkNTI0NGI0YWZhN2JjLi5lNTk5Y2Fk
MDVhMzliYzQ3NDJlMGJlMzkyNzExOWMxNTA0NTM0NDc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29u
dHJvbGxlci5oCkBAIC00MSwxNCArNDEsMTMgQEAgY2xhc3MgRGV2aWNlT3JpZW50YXRpb25BbmRN
b3Rpb25BY2Nlc3NDb250cm9sbGVyIDogcHVibGljIENhbk1ha2VXZWFrUHRyPERldmljZU8KIHB1
YmxpYzoKICAgICBleHBsaWNpdCBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRy
b2xsZXIoRG9jdW1lbnQmKTsKIAotICAgIGNvbnN0IE9wdGlvbmFsPGJvb2w+JiBhY2Nlc3NTdGF0
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWNjZXNzU3RhdGU7IH0KKyAgICBPcHRpb25hbDxib29sPiBh
Y2Nlc3NTdGF0ZSgpIGNvbnN0OwogICAgIHZvaWQgc2hvdWxkQWxsb3dBY2Nlc3MoRnVuY3Rpb248
dm9pZChFeGNlcHRpb25Pcjxib29sPiBncmFudGVkKT4mJik7CiAKIHByaXZhdGU6CiAgICAgdm9p
ZCBzZXRBY2Nlc3NTdGF0ZShib29sKTsKIAogICAgIERvY3VtZW50JiBtX2RvY3VtZW50OwotICAg
IE9wdGlvbmFsPGJvb2w+IG1fYWNjZXNzU3RhdGU7CiAgICAgVmVjdG9yPEZ1bmN0aW9uPHZvaWQo
Ym9vbCk+PiBtX3BlbmRpbmdSZXF1ZXN0czsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50TG9hZGVyLmgKaW5kZXggODFjNjA0ODQ1YWNlNzg1MzRmYzg1ZmFmODU1ZmFjMTQyY2ZkODRh
ZC4uMDE5ZDFiNTA5MGMxM2MwZGVkZDljODgxZWVlODEyODQyM2YwZDZmYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTI2Miw4ICsyNjIsOCBAQCBwdWJsaWM6CiAg
ICAgYm9vbCB1c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV91
c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkOyB9CiAgICAgdm9pZCBzZXRVc2VyQ29udGVudEV4
dGVuc2lvbnNFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX3VzZXJDb250ZW50RXh0ZW5zaW9uc0Vu
YWJsZWQgPSBlbmFibGVkOyB9CiAKLSAgICBib29sIGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKCkgY29uc3QgeyByZXR1cm4gbV9kZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZDsgfQot
ICAgIHZvaWQgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7
IG1fZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQgPSBlbmFibGVkOyB9CisgICAgY29uc3Qg
T3B0aW9uYWw8Ym9vbD4mIGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSBj
b25zdCB7IHJldHVybiBtX2RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7IH0K
KyAgICB2b2lkIHNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoY29uc3Qg
T3B0aW9uYWw8Ym9vbD4mIHN0YXRlKSB7IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nl
c3NTdGF0ZSA9IHN0YXRlOyB9CiAKICAgICBBdXRvcGxheVBvbGljeSBhdXRvcGxheVBvbGljeSgp
IGNvbnN0IHsgcmV0dXJuIG1fYXV0b3BsYXlQb2xpY3k7IH0KICAgICB2b2lkIHNldEF1dG9wbGF5
UG9saWN5KEF1dG9wbGF5UG9saWN5IHBvbGljeSkgeyBtX2F1dG9wbGF5UG9saWN5ID0gcG9saWN5
OyB9CkBAIC01NTIsNyArNTUyLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9jdXN0b21KYXZh
U2NyaXB0VXNlckFnZW50QXNTaXRlU3BlY2lmaWNRdWlya3M7CiAgICAgU3RyaW5nIG1fY3VzdG9t
TmF2aWdhdG9yUGxhdGZvcm07CiAgICAgYm9vbCBtX3VzZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJs
ZWQgeyB0cnVlIH07Ci0gICAgYm9vbCBtX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsg
dHJ1ZSB9OworICAgIE9wdGlvbmFsPGJvb2w+IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25B
Y2Nlc3NTdGF0ZTsKICAgICBBdXRvcGxheVBvbGljeSBtX2F1dG9wbGF5UG9saWN5IHsgQXV0b3Bs
YXlQb2xpY3k6OkRlZmF1bHQgfTsKICAgICBPcHRpb25TZXQ8QXV0b3BsYXlRdWlyaz4gbV9hbGxv
d2VkQXV0b3BsYXlRdWlya3M7CiAgICAgUG9wVXBQb2xpY3kgbV9wb3BVcFBvbGljeSB7IFBvcFVw
UG9saWN5OjpEZWZhdWx0IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggOGMzMWRi
ZDA1Y2EzOWI4NGFjYTBjMjBiZjdkNmM2NmM3NWYyZTM5Yy4uNGQ3YjNhZmU3ZWM5MTY0ZWJkMDMx
YThiZmMwMDQ1NWNlNTU2OWEzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01X
aW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtMTg0
MCw3ICsxODQwLDcgQEAgRGV2aWNlTW90aW9uQ29udHJvbGxlciogRE9NV2luZG93OjpkZXZpY2VN
b3Rpb25Db250cm9sbGVyKCkgY29uc3QKIAogYm9vbCBET01XaW5kb3c6OmlzQWxsb3dlZFRvVXNl
RGV2aWNlTW90aW9uT3JpZW50YXRpb24oU3RyaW5nJiBtZXNzYWdlKSBjb25zdAogewotICAgIGlm
ICghZnJhbWUoKSB8fCAhZnJhbWUoKS0+c2V0dGluZ3MoKS5kZXZpY2VPcmllbnRhdGlvbkV2ZW50
RW5hYmxlZCgpIHx8ICFkb2N1bWVudCgpIHx8ICFkb2N1bWVudCgpLT5sb2FkZXIoKSB8fCAhZG9j
dW1lbnQoKS0+bG9hZGVyKCktPmRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKCkpIHsKKyAg
ICBpZiAoIWZyYW1lKCkgfHwgIWZyYW1lKCktPnNldHRpbmdzKCkuZGV2aWNlT3JpZW50YXRpb25F
dmVudEVuYWJsZWQoKSkgewogICAgICAgICBtZXNzYWdlID0gIkFQSSBpcyBkaXNhYmxlZCJfczsK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYnNpdGVQb2xpY2llc0RhdGEuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
c2l0ZVBvbGljaWVzRGF0YS5jcHAKaW5kZXggNmIzYjAyZGE5ZjY2MmNiODk5NzkxNmVjMDhjMmU3
ZWI0YzE3ZmUxMi4uYTg4NTI4OTk3YmQwMGI5NWY1ZTlmYzYxODk0MTE2ZTBjMDEzNzE1NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5jcHAKQEAgLTM3LDgg
KzM3LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiB2b2lkIFdlYnNpdGVQb2xpY2llc0RhdGE6OmVu
Y29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiB7CiAgICAgZW5jb2RlciA8PCBjb250
ZW50QmxvY2tlcnNFbmFibGVkOwotICAgIGVuY29kZXIgPDwgZGV2aWNlT3JpZW50YXRpb25FdmVu
dEVuYWJsZWQ7CiAgICAgZW5jb2RlciA8PCBhdXRvcGxheVBvbGljeTsKKyAgICBlbmNvZGVyIDw8
IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CiAgICAgZW5jb2RlciA8PCBh
bGxvd2VkQXV0b3BsYXlRdWlya3M7CiAgICAgZW5jb2RlciA8PCBjdXN0b21IZWFkZXJGaWVsZHM7
CiAgICAgZW5jb2RlciA8PCBwb3BVcFBvbGljeTsKQEAgLTU0LDE2ICs1NCwxNiBAQCBPcHRpb25h
bDxXZWJzaXRlUG9saWNpZXNEYXRhPiBXZWJzaXRlUG9saWNpZXNEYXRhOjpkZWNvZGUoSVBDOjpE
ZWNvZGVyJiBkZWNvZGVyKQogICAgIGRlY29kZXIgPj4gY29udGVudEJsb2NrZXJzRW5hYmxlZDsK
ICAgICBpZiAoIWNvbnRlbnRCbG9ja2Vyc0VuYWJsZWQpCiAgICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7Ci0KLSAgICBPcHRpb25hbDxib29sPiBkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxl
ZDsKLSAgICBkZWNvZGVyID4+IGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkOwotICAgIGlm
ICghZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQpCi0gICAgICAgIHJldHVybiBXVEY6Om51
bGxvcHQ7CiAgICAgCiAgICAgT3B0aW9uYWw8V2Vic2l0ZUF1dG9wbGF5UG9saWN5PiBhdXRvcGxh
eVBvbGljeTsKICAgICBkZWNvZGVyID4+IGF1dG9wbGF5UG9saWN5OwogICAgIGlmICghYXV0b3Bs
YXlQb2xpY3kpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisKKyAgICBPcHRpb25hbDxP
cHRpb25hbDxib29sPj4gZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZTsKKyAg
ICBkZWNvZGVyID4+IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CisgICAg
aWYgKCFkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKQorICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OwogICAgIAogICAgIE9wdGlvbmFsPE9wdGlvblNldDxXZWJzaXRlQXV0
b3BsYXlRdWlyaz4+IGFsbG93ZWRBdXRvcGxheVF1aXJrczsKICAgICBkZWNvZGVyID4+IGFsbG93
ZWRBdXRvcGxheVF1aXJrczsKQEAgLTEwMiw5ICsxMDIsOSBAQCBPcHRpb25hbDxXZWJzaXRlUG9s
aWNpZXNEYXRhPiBXZWJzaXRlUG9saWNpZXNEYXRhOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNv
ZGVyKQogICAgIAogICAgIHJldHVybiB7IHsKICAgICAgICAgV1RGTW92ZSgqY29udGVudEJsb2Nr
ZXJzRW5hYmxlZCksCi0gICAgICAgIFdURk1vdmUoKmRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKSwKICAgICAgICAgV1RGTW92ZSgqYWxsb3dlZEF1dG9wbGF5UXVpcmtzKSwKICAgICAgICAg
V1RGTW92ZSgqYXV0b3BsYXlQb2xpY3kpLAorICAgICAgICBXVEZNb3ZlKCpkZXZpY2VPcmllbnRh
dGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKSwKICAgICAgICAgV1RGTW92ZSgqY3VzdG9tSGVhZGVy
RmllbGRzKSwKICAgICAgICAgV1RGTW92ZSgqcG9wVXBQb2xpY3kpLAogICAgICAgICBXVEZNb3Zl
KCp3ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyksCkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBX
ZWJzaXRlUG9saWNpZXNEYXRhOjphcHBseVRvRG9jdW1lbnRMb2FkZXIoV2Vic2l0ZVBvbGljaWVz
RGF0YSYmIHdlYnNpdGVQb2wKICAgICBkb2N1bWVudExvYWRlci5zZXRDdXN0b21Vc2VyQWdlbnQo
d2Vic2l0ZVBvbGljaWVzLmN1c3RvbVVzZXJBZ2VudCk7CiAgICAgZG9jdW1lbnRMb2FkZXIuc2V0
Q3VzdG9tSmF2YVNjcmlwdFVzZXJBZ2VudEFzU2l0ZVNwZWNpZmljUXVpcmtzKHdlYnNpdGVQb2xp
Y2llcy5jdXN0b21KYXZhU2NyaXB0VXNlckFnZW50QXNTaXRlU3BlY2lmaWNRdWlya3MpOwogICAg
IGRvY3VtZW50TG9hZGVyLnNldEN1c3RvbU5hdmlnYXRvclBsYXRmb3JtKHdlYnNpdGVQb2xpY2ll
cy5jdXN0b21OYXZpZ2F0b3JQbGF0Zm9ybSk7Ci0gICAgZG9jdW1lbnRMb2FkZXIuc2V0RGV2aWNl
T3JpZW50YXRpb25FdmVudEVuYWJsZWQod2Vic2l0ZVBvbGljaWVzLmRldmljZU9yaWVudGF0aW9u
RXZlbnRFbmFibGVkKTsKKyAgICBkb2N1bWVudExvYWRlci5zZXREZXZpY2VPcmllbnRhdGlvbkFu
ZE1vdGlvbkFjY2Vzc1N0YXRlKHdlYnNpdGVQb2xpY2llcy5kZXZpY2VPcmllbnRhdGlvbkFuZE1v
dGlvbkFjY2Vzc1N0YXRlKTsKICAgICAKICAgICAvLyBPbmx5IHNldFVzZXJDb250ZW50RXh0ZW5z
aW9uc0VuYWJsZWQgaWYgaXQgaGFzbid0IGFscmVhZHkgYmVlbiBkaXNhYmxlZCBieSByZWxvYWRp
bmcgd2l0aG91dCBjb250ZW50IGJsb2NrZXJzLgogICAgIGlmIChkb2N1bWVudExvYWRlci51c2Vy
Q29udGVudEV4dGVuc2lvbnNFbmFibGVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJzaXRlUG9saWNpZXNEYXRhLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJzaXRl
UG9saWNpZXNEYXRhLmgKaW5kZXggYzI3MTFhOTRhOGNmYjNlNGI2N2NjZThkOTExNGFkNjI3OGJm
MWRlZi4uZDNkZDAwNWI0ZjRjODY1ZGQzZGFhMDg2Y2U0MjA1Y2M3MDc1NDM3MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZVBvbGljaWVzRGF0YS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYnNpdGVQb2xpY2llc0RhdGEuaApAQCAtNDcsOSArNDcsOSBAQCBz
dHJ1Y3QgV2Vic2l0ZVBvbGljaWVzRGF0YSB7CiAgICAgc3RhdGljIHZvaWQgYXBwbHlUb0RvY3Vt
ZW50TG9hZGVyKFdlYnNpdGVQb2xpY2llc0RhdGEmJiwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIm
KTsKIAogICAgIGJvb2wgY29udGVudEJsb2NrZXJzRW5hYmxlZCB7IHRydWUgfTsKLSAgICBib29s
IGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsgdHJ1ZSB9OwogICAgIE9wdGlvblNldDxX
ZWJzaXRlQXV0b3BsYXlRdWlyaz4gYWxsb3dlZEF1dG9wbGF5UXVpcmtzOwogICAgIFdlYnNpdGVB
dXRvcGxheVBvbGljeSBhdXRvcGxheVBvbGljeSB7IFdlYnNpdGVBdXRvcGxheVBvbGljeTo6RGVm
YXVsdCB9OworICAgIE9wdGlvbmFsPGJvb2w+IGRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNj
ZXNzU3RhdGU7CiAgICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4gY3VzdG9tSGVh
ZGVyRmllbGRzOwogICAgIFdlYnNpdGVQb3BVcFBvbGljeSBwb3BVcFBvbGljeSB7IFdlYnNpdGVQ
b3BVcFBvbGljeTo6RGVmYXVsdCB9OwogICAgIE9wdGlvbmFsPFdlYnNpdGVEYXRhU3RvcmVQYXJh
bWV0ZXJzPiB3ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVQb2xpY2llcy5jcHAKaW5kZXggYzYzY2UwNmZiNzMy
ZmY0MDczZTZiMTM0MzNkODRhOTUzZTdkN2NmYi4uODZmY2FjMDZlNTJjYmZkNWMxZTFmMzA3Nzlh
OWUxNDE4N2QyMTI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVdlYnNpdGVQb2xpY2llcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVdlYnNpdGVQb2xpY2llcy5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgV2ViS2l0OjpXZWJzaXRlUG9s
aWNpZXNEYXRhIFdlYnNpdGVQb2xpY2llczo6ZGF0YSgpCiAgICAgT3B0aW9uYWw8V2ViS2l0OjpX
ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycz4gcGFyYW1ldGVyczsKICAgICBpZiAobV93ZWJzaXRl
RGF0YVN0b3JlKQogICAgICAgICBwYXJhbWV0ZXJzID0gbV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJz
aXRlRGF0YVN0b3JlKCkucGFyYW1ldGVycygpOwotICAgIHJldHVybiB7IGNvbnRlbnRCbG9ja2Vy
c0VuYWJsZWQoKSwgZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQoKSwgYWxsb3dlZEF1dG9w
bGF5UXVpcmtzKCksIGF1dG9wbGF5UG9saWN5KCksCisgICAgcmV0dXJuIHsgY29udGVudEJsb2Nr
ZXJzRW5hYmxlZCgpLCBhbGxvd2VkQXV0b3BsYXlRdWlya3MoKSwgYXV0b3BsYXlQb2xpY3koKSwg
ZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSgpLAogICAgICAgICBjdXN0b21I
ZWFkZXJGaWVsZHMoKSwgcG9wVXBQb2xpY3koKSwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgbV9jdXN0
b21Vc2VyQWdlbnQsIG1fY3VzdG9tSmF2YVNjcmlwdFVzZXJBZ2VudEFzU2l0ZVNwZWNpZmljUXVp
cmtzLCBtX2N1c3RvbU5hdmlnYXRvclBsYXRmb3JtIH07CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlUG9saWNpZXMuaAppbmRleCBlYTk4ZDI1ZjAxZGUz
ODE5ZDUzODYyYzdiYTk1NThiYWVlNGM5YzFlLi43ZWRhMTlkNGUxOWY0MWYyMDM3NWMxOGU5MjQ2
YjQwMmIzMjNiZDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
V2Vic2l0ZVBvbGljaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVdl
YnNpdGVQb2xpY2llcy5oCkBAIC00OSwxNSArNDksMTUgQEAgcHVibGljOgogCiAgICAgYm9vbCBj
b250ZW50QmxvY2tlcnNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZW50QmxvY2tlcnNF
bmFibGVkOyB9CiAgICAgdm9pZCBzZXRDb250ZW50QmxvY2tlcnNFbmFibGVkKGJvb2wgZW5hYmxl
ZCkgeyBtX2NvbnRlbnRCbG9ja2Vyc0VuYWJsZWQgPSBlbmFibGVkOyB9Ci0KLSAgICBib29sIGRl
dmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9kZXZpY2VPcmll
bnRhdGlvbkV2ZW50RW5hYmxlZDsgfQotICAgIHZvaWQgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVu
dEVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQg
PSBlbmFibGVkOyB9CiAgICAgCiAgICAgT3B0aW9uU2V0PFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5
UXVpcms+IGFsbG93ZWRBdXRvcGxheVF1aXJrcygpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dlZEF1
dG9wbGF5UXVpcmtzOyB9CiAgICAgdm9pZCBzZXRBbGxvd2VkQXV0b3BsYXlRdWlya3MoT3B0aW9u
U2V0PFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5UXVpcms+IHF1aXJrcykgeyBtX2FsbG93ZWRBdXRv
cGxheVF1aXJrcyA9IHF1aXJrczsgfQogICAgIAogICAgIFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5
UG9saWN5IGF1dG9wbGF5UG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9hdXRvcGxheVBvbGljeTsg
fQogICAgIHZvaWQgc2V0QXV0b3BsYXlQb2xpY3koV2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlQb2xp
Y3kgcG9saWN5KSB7IG1fYXV0b3BsYXlQb2xpY3kgPSBwb2xpY3k7IH0KKworICAgIGNvbnN0IE9w
dGlvbmFsPGJvb2w+JiBkZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKCkgY29u
c3QgeyByZXR1cm4gbV9kZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlOyB9Cisg
ICAgdm9pZCBzZXREZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKE9wdGlvbmFs
PGJvb2w+IHN0YXRlKSB7IG1fZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSA9
IHN0YXRlOyB9CiAgICAgCiAgICAgY29uc3QgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVs
ZD4mIGN1c3RvbUhlYWRlckZpZWxkcygpIGNvbnN0IHsgcmV0dXJuIG1fY3VzdG9tSGVhZGVyRmll
bGRzOyB9CiAgICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4mJiB0YWtlQ3VzdG9t
SGVhZGVyRmllbGRzKCkgeyByZXR1cm4gV1RGTW92ZShtX2N1c3RvbUhlYWRlckZpZWxkcyk7IH0K
QEAgLTg0LDkgKzg0LDkgQEAgcHJpdmF0ZToKICAgICBXZWJzaXRlUG9saWNpZXMoYm9vbCBjb250
ZW50QmxvY2tlcnNFbmFibGVkLCBPcHRpb25TZXQ8V2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlRdWly
az4sIFdlYktpdDo6V2Vic2l0ZUF1dG9wbGF5UG9saWN5LCBWZWN0b3I8V2ViQ29yZTo6SFRUUEhl
YWRlckZpZWxkPiYmLCBXZWJLaXQ6OldlYnNpdGVQb3BVcFBvbGljeSwgUmVmUHRyPFdlYnNpdGVE
YXRhU3RvcmU+JiYpOwogCiAgICAgYm9vbCBtX2NvbnRlbnRCbG9ja2Vyc0VuYWJsZWQgeyB0cnVl
IH07Ci0gICAgYm9vbCBtX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkIHsgdHJ1ZSB9Owog
ICAgIE9wdGlvblNldDxXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVF1aXJrPiBtX2FsbG93ZWRBdXRv
cGxheVF1aXJrczsKICAgICBXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVBvbGljeSBtX2F1dG9wbGF5
UG9saWN5IHsgV2ViS2l0OjpXZWJzaXRlQXV0b3BsYXlQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBP
cHRpb25hbDxib29sPiBtX2RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGU7CiAg
ICAgVmVjdG9yPFdlYkNvcmU6OkhUVFBIZWFkZXJGaWVsZD4gbV9jdXN0b21IZWFkZXJGaWVsZHM7
CiAgICAgV2ViS2l0OjpXZWJzaXRlUG9wVXBQb2xpY3kgbV9wb3BVcFBvbGljeSB7IFdlYktpdDo6
V2Vic2l0ZVBvcFVwUG9saWN5OjpEZWZhdWx0IH07CiAgICAgUmVmUHRyPFdlYnNpdGVEYXRhU3Rv
cmU+IG1fd2Vic2l0ZURhdGFTdG9yZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMuaAppbmRleCBiYWI2OGIyZmE4ODM5MmNh
ODA1YTE3ODQ1Nzc5MmQ5MDJlZjQxZmIyLi4zNGEzMDY5YmNmZmE0NjliYTBiZjgzZGFlNWM0YTg1
NTdkNWM5ZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
X1dLV2Vic2l0ZVBvbGljaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1dlYnNpdGVQb2xpY2llcy5oCkBAIC00NSw2ICs0NSwxMiBAQCB0eXBlZGVmIE5TX09Q
VElPTlMoTlNVSW50ZWdlciwgX1dLV2Vic2l0ZVBvcFVwUG9saWN5KSB7CiAgICAgX1dLV2Vic2l0
ZVBvcFVwUG9saWN5QmxvY2ssCiB9IFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9z
KDEyLjApKTsKIAordHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9XS1dlYnNpdGVEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSkgeworICAgIF9XS1dlYnNpdGVEZXZp
Y2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeUFzaywKKyAgICBfV0tXZWJzaXRlRGV2
aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudCwKKyAgICBfV0tXZWJzaXRl
RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lEZW55LAorfSBXS19BUElfQVZB
SUxBQkxFKG1hY29zeCgxMC4xNCksIGlvcygxMi4wKSk7CisKIEBjbGFzcyBXS1dlYnNpdGVEYXRh
U3RvcmU7CiAKIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvc3goMTAuMTIuMyksIGlvcygxMC4zKSkK
QEAgLTU5LDYgKzY1LDYgQEAgV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeCgxMC4xMi4zKSwgaW9z
KDEwLjMpKQogQHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5TU3RyaW5nICpjdXN0b21Vc2Vy
QWdlbnQgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJB
KSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNTdHJpbmcgKmN1c3RvbUphdmFTY3Jp
cHRVc2VyQWdlbnRBc1NpdGVTcGVjaWZpY1F1aXJrcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5
KSBOU1N0cmluZyAqY3VzdG9tTmF2aWdhdG9yUGxhdGZvcm0gV0tfQVBJX0FWQUlMQUJMRShtYWNv
c3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYykg
Qk9PTCBkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZCBXS19BUElfQVZBSUxBQkxFKG1hY29z
eChXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBf
V0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kgZGV2aWNlT3Jp
ZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tf
TUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMubW0gYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0ZVBvbGljaWVzLm1tCmluZGV4IDZi
NzgwZTNmYTAxZTkxMjQ2Y2I3NjMxNGU1YjM4ZDFkNzI5NjQ5YjYuLmQ1ZTljOTE4MjMzNTg3YTZk
MDFlOTY4OThjNjE5ZTIyYTg3NzJlYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tXZWJzaXRlUG9saWNpZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS1dlYnNpdGVQb2xpY2llcy5tbQpAQCAtNTcsMTYgKzU3LDYg
QEAgLSAoQk9PTCljb250ZW50QmxvY2tlcnNFbmFibGVkCiAgICAgcmV0dXJuIF93ZWJzaXRlUG9s
aWNpZXMtPmNvbnRlbnRCbG9ja2Vyc0VuYWJsZWQoKTsKIH0KIAotLSAodm9pZClzZXREZXZpY2VP
cmllbnRhdGlvbkV2ZW50RW5hYmxlZDooQk9PTClkZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxl
ZAotewotICAgIF93ZWJzaXRlUG9saWNpZXMtPnNldERldmljZU9yaWVudGF0aW9uRXZlbnRFbmFi
bGVkKGRldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkKTsKLX0KLQotLSAoQk9PTClkZXZpY2VP
cmllbnRhdGlvbkV2ZW50RW5hYmxlZAotewotICAgIHJldHVybiBfd2Vic2l0ZVBvbGljaWVzLT5k
ZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZCgpOwotfQotCiAtICh2b2lkKXNldEFsbG93ZWRB
dXRvcGxheVF1aXJrczooX1dLV2Vic2l0ZUF1dG9wbGF5UXVpcmspYWxsb3dlZFF1aXJrcwogewog
ICAgIE9wdGlvblNldDxXZWJLaXQ6OldlYnNpdGVBdXRvcGxheVF1aXJrPiBxdWlya3M7CkBAIC0x
MzgsNiArMTI4LDI4IEBAIC0gKF9XS1dlYnNpdGVBdXRvcGxheVBvbGljeSlhdXRvcGxheVBvbGlj
eQogICAgIH0KIH0KIAorLSAodm9pZClzZXREZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1BvbGljeTooX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5
KXBvbGljeQoreworICAgIHN3aXRjaCAocG9saWN5KSB7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2
aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lBc2s6CisgICAgICAgIF93ZWJzaXRl
UG9saWNpZXMtPnNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoV1RGOjpu
dWxsb3B0KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudDoKKyAgICAgICAgX3dlYnNpdGVQb2xpY2ll
cy0+c2V0RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NTdGF0ZSh0cnVlKTsKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25B
Y2Nlc3NQb2xpY3lEZW55OgorICAgICAgICBfd2Vic2l0ZVBvbGljaWVzLT5zZXREZXZpY2VPcmll
bnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKGZhbHNlKTsKKyAgICAgICAgYnJlYWs7CisgICAg
fQorfQorCistIChfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xp
Y3kpZGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3kKK3sKKyAgICBpZiAoIV93
ZWJzaXRlUG9saWNpZXMtPmRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSkK
KyAgICAgICAgcmV0dXJuIF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vz
c1BvbGljeUFzazsKKyAgICByZXR1cm4gKl93ZWJzaXRlUG9saWNpZXMtPmRldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzU3RhdGUoKSA/IF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFu
ZE1vdGlvbkFjY2Vzc1BvbGljeUdyYW50IDogX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5k
TW90aW9uQWNjZXNzUG9saWN5RGVueTsKK30KKwogLSAodm9pZClzZXRQb3BVcFBvbGljeTooX1dL
V2Vic2l0ZVBvcFVwUG9saWN5KXBvbGljeQogewogICAgIHN3aXRjaCAocG9saWN5KSB7CmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmFjZmZkYmIx
ODlhZTVmMzE2NDg5MDcxODYyNGE2MTE2ZmI4NDQwNS4uMWNkZDIwMWZmZGM3ZmM4NTI3ZjRhMDVm
ODY5MTY5NzExN2I0MWVjZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTAzLTE0ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIFdlYnNpdGVQb2xpY3kgZm9yIHRoZSBjbGll
bnQgdG8gc3BlY2lmeSB0aGUgZGV2aWNlIG9yaWVudGF0aW9uICYgbW90aW9uIGFjY2VzcyBwb2xp
Y3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTc1
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBB
UEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvV2Vic2l0ZVBvbGljaWVzLm1tOgorICAgICAgICAoLVtXZWJzaXRlUG9saWNpZXNEZXZp
Y2VPcmllbnRhdGlvbkRlbGVnYXRlIGluaXRXaXRoRGV2aWNlT3JpZW50YXRpb25BY2Nlc3NQb2xp
Y3k6XSk6CisgICAgICAgICgtW1dlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRGVsZWdh
dGUgX3dlYlZpZXc6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbjp1c2VySW5mbzpkZWNp
c2lvbkhhbmRsZXI6XSk6CisgICAgICAgICgtW1dlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0
aW9uVUlEZWxlZ2F0ZSBfd2ViVmlldzpzaG91bGRBbGxvd0RldmljZU9yaWVudGF0aW9uQW5kTW90
aW9uQWNjZXNzUmVxdWVzdGVkQnlGcmFtZTpkZWNpc2lvbkhhbmRsZXI6XSk6CisKIDIwMTktMDMt
MTMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgYSBTZXJ2
aWNlV29ya2VyIHByb2Nlc3MgcGVyIHJlZ2lzdHJhYmxlIGRvbWFpbgpkaWZmIC0tZ2l0IGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlUG9saWNpZXMubW0gYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQpp
bmRleCBmMTQyOTNiNGE2OTViMTEyODgyYThjMWM1ODc4MDA5NTlmOGI1NGE2Li4yYTQ3NmNmMmUw
YjIzMmMzM2M2MjVkNDVlYzcwNTA2NmJkYWI2ZjhlIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVQb2xpY2llcy5tbQpAQCAtMTI0
NiwyNCArMTI0NiwyNCBAQCBhZGRFdmVudExpc3RlbmVyKCJkZXZpY2VvcmllbnRhdGlvbiIsIChl
dmVudCkgPT4gewogKVRFU1RSRVNPVVJDRSI7CiAKIEBpbnRlcmZhY2UgV2Vic2l0ZVBvbGljaWVz
RGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZSA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxlZ2F0
ZT4gewotICAgIEJPT0wgX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkOworICAgIF9XS1dl
YnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSBfYWNjZXNzUG9saWN5
OwogfQotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJs
ZWQ6KEJPT0wpZW5hYmxlZDsKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aERldmljZU9yaWVudGF0
aW9uQWNjZXNzUG9saWN5OihfV0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nl
c3NQb2xpY3kpYWNjZXNzUG9saWN5OwogQGVuZAogCiBAaW1wbGVtZW50YXRpb24gV2Vic2l0ZVBv
bGljaWVzRGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZQogCi0tIChpbnN0YW5jZXR5cGUpaW5pdFdp
dGhEZXZpY2VPcmllbnRhdGlvbkV2ZW50RW5hYmxlZDooQk9PTCllbmFibGVkCistIChpbnN0YW5j
ZXR5cGUpaW5pdFdpdGhEZXZpY2VPcmllbnRhdGlvbkFjY2Vzc1BvbGljeTooX1dLV2Vic2l0ZURl
dmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5KWFjY2Vzc1BvbGljeQogewogICAg
IHNlbGYgPSBbc3VwZXIgaW5pdF07Ci0gICAgX2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVk
ID0gZW5hYmxlZDsKKyAgICBfYWNjZXNzUG9saWN5ID0gYWNjZXNzUG9saWN5OwogICAgIHJldHVy
biBzZWxmOwogfQogCiAtICh2b2lkKV93ZWJWaWV3OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRlY2lk
ZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb246KFdLTmF2aWdhdGlvbkFjdGlvbiAqKW5hdmlnYXRp
b25BY3Rpb24gdXNlckluZm86KGlkIDxOU1NlY3VyZUNvZGluZz4pdXNlckluZm8gZGVjaXNpb25I
YW5kbGVyOih2b2lkICheKShXS05hdmlnYXRpb25BY3Rpb25Qb2xpY3ksIF9XS1dlYnNpdGVQb2xp
Y2llcyAqKSlkZWNpc2lvbkhhbmRsZXIKIHsKICAgICBfV0tXZWJzaXRlUG9saWNpZXMgKndlYnNp
dGVQb2xpY2llcyA9IFtbW19XS1dlYnNpdGVQb2xpY2llcyBhbGxvY10gaW5pdF0gYXV0b3JlbGVh
c2VdOwotICAgIFt3ZWJzaXRlUG9saWNpZXMgc2V0RGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJs
ZWQ6X2RldmljZU9yaWVudGF0aW9uRXZlbnRFbmFibGVkXTsKKyAgICBbd2Vic2l0ZVBvbGljaWVz
IHNldERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5Ol9hY2Nlc3NQb2xpY3ld
OwogCiAgICAgZGVjaXNpb25IYW5kbGVyKFdLTmF2aWdhdGlvbkFjdGlvblBvbGljeUFsbG93LCB3
ZWJzaXRlUG9saWNpZXMpOwogfQpAQCAtMTI3NSw2ICsxMjc1LDggQEAgLSAodm9pZCl3ZWJWaWV3
OihXS1dlYlZpZXcgKil3ZWJWaWV3IGRpZEZpbmlzaE5hdmlnYXRpb246KFdLTmF2aWdhdGlvbiAq
KW5hdmlnYXQKIAogQGVuZAogCitzdGF0aWMgYm9vbCBjYWxsZWRTaG91bGRBbGxvd0RldmljZU9y
aWVudGF0aW9uQW5kTW90aW9uQWNjZXNzRGVsZWdhdGUgPSBmYWxzZTsKKwogQGludGVyZmFjZSBX
ZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvblVJRGVsZWdhdGUgOiBOU09iamVjdCA8V0tV
SURlbGVnYXRlUHJpdmF0ZT4gewogfQogQGVuZApAQCAtMTI4MywxMiArMTI4NSwxMyBAQCBAaW1w
bGVtZW50YXRpb24gV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25VSURlbGVnYXRlCiAK
IC0gKHZvaWQpX3dlYlZpZXc6KFdLV2ViVmlldyAqKXdlYlZpZXcgc2hvdWxkQWxsb3dEZXZpY2VP
cmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1JlcXVlc3RlZEJ5RnJhbWU6KFdLRnJhbWVJbmZvICop
cmVxdWVzdGluZ0ZyYW1lIGRlY2lzaW9uSGFuZGxlcjoodm9pZCAoXikoQk9PTCkpZGVjaXNpb25I
YW5kbGVyCiB7CisgICAgY2FsbGVkU2hvdWxkQWxsb3dEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlv
bkFjY2Vzc0RlbGVnYXRlID0gdHJ1ZTsKICAgICBkZWNpc2lvbkhhbmRsZXIoWUVTKTsKIH0KIAog
QGVuZAogCi1zdGF0aWMgdm9pZCBydW5XZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2
ZW50VGVzdChib29sIHdlYnNpdGVQb2xpY3lWYWx1ZSkKK3N0YXRpYyB2b2lkIHJ1bldlYnNpdGVQ
b2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRUZXN0KF9XS1dlYnNpdGVEZXZpY2VPcmllbnRh
dGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeSBhY2Nlc3NQb2xpY3kpCiB7CiAgICAgYXV0byBjb25m
aWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRd
KTsKIApAQCAtMTI5OCw3ICsxMzAxLDcgQEAgc3RhdGljIHZvaWQgcnVuV2Vic2l0ZVBvbGljaWVz
RGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3QoYm9vbCB3ZWJzaXRlUG9saWN5VmFsdWUKIAogICAg
IGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZy
YW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246Y29uZmlndXJhdGlv
bi5nZXQoKV0pOwogCi0gICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXZWJzaXRlUG9saWNp
ZXNEZXZpY2VPcmllbnRhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0V2l0aERldmljZU9yaWVudGF0
aW9uRXZlbnRFbmFibGVkOndlYnNpdGVQb2xpY3lWYWx1ZV0pOworICAgIGF1dG8gZGVsZWdhdGUg
PSBhZG9wdE5TKFtbV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdFdpdGhEZXZpY2VPcmllbnRhdGlvbkFjY2Vzc1BvbGljeTphY2Nlc3NQb2xpY3ldKTsK
ICAgICBbd2ViVmlldyBzZXROYXZpZ2F0aW9uRGVsZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOwogICAg
IGF1dG8gdWlEZWxlZ2F0ZSA9IGFkb3B0TlMoW1tXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRh
dGlvblVJRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBbd2ViVmlldyBzZXRVSURlbGVnYXRl
OnVpRGVsZWdhdGUuZ2V0KCldOwpAQCAtMTMyMSw3ICsxMzI0LDEyIEBAIHN0YXRpYyB2b2lkIHJ1
bldlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRUZXN0KGJvb2wgd2Vic2l0ZVBv
bGljeVZhbHVlCiAKICAgICBbd2ViVmlldyBfc2ltdWxhdGVEZXZpY2VPcmllbnRhdGlvbkNoYW5n
ZVdpdGhBbHBoYToxLjAgYmV0YToyLjAgZ2FtbWE6My4wXTsKIAotICAgIGlmICh3ZWJzaXRlUG9s
aWN5VmFsdWUpCisgICAgaWYgKGFjY2Vzc1BvbGljeSA9PSBfV0tXZWJzaXRlRGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lBc2spCisgICAgICAgIEVYUEVDVF9UUlVFKGNhbGxl
ZFNob3VsZEFsbG93RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NEZWxlZ2F0ZSk7Cisg
ICAgZWxzZQorICAgICAgICBFWFBFQ1RfRkFMU0UoY2FsbGVkU2hvdWxkQWxsb3dEZXZpY2VPcmll
bnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0RlbGVnYXRlKTsKKworICAgIGlmIChhY2Nlc3NQb2xpY3kg
IT0gX1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5RGVueSkK
ICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkaWRSZWNlaXZlTWVzc2FnZSk7CiAg
ICAgZWxzZSB7CiAgICAgICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnNsZWVwKDAuMSk7CkBAIC0x
MzI5LDE0ICsxMzM3LDE5IEBAIHN0YXRpYyB2b2lkIHJ1bldlYnNpdGVQb2xpY2llc0RldmljZU9y
aWVudGF0aW9uRXZlbnRUZXN0KGJvb2wgd2Vic2l0ZVBvbGljeVZhbHVlCiAgICAgfQogfQogCi1U
RVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudEVuYWJsZWQp
CitURVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25HcmFudEFjY2Vz
cykKK3sKKyAgICBydW5XZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50VGVzdChf
V0tXZWJzaXRlRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NQb2xpY3lHcmFudCk7Cit9
CisKK1RFU1QoV2ViS2l0LCBXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkRlbnlBY2Nl
c3MpCiB7Ci0gICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3Qo
dHJ1ZSk7CisgICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRlc3Qo
X1dLV2Vic2l0ZURldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzUG9saWN5RGVueSk7CiB9
CiAKLVRFU1QoV2ViS2l0LCBXZWJzaXRlUG9saWNpZXNEZXZpY2VPcmllbnRhdGlvbkV2ZW50RGlz
YWJsZWQpCitURVNUKFdlYktpdCwgV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25Bc2tB
Y2Nlc3MpCiB7Ci0gICAgcnVuV2Vic2l0ZVBvbGljaWVzRGV2aWNlT3JpZW50YXRpb25FdmVudFRl
c3QoZmFsc2UpOworICAgIHJ1bldlYnNpdGVQb2xpY2llc0RldmljZU9yaWVudGF0aW9uRXZlbnRU
ZXN0KF9XS1dlYnNpdGVEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1BvbGljeUFzayk7
CiB9CiAKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>