<?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>208910</bug_id>
          
          <creation_ts>2020-03-11 03:12:38 -0700</creation_ts>
          <short_desc>GPUProcess should ensure UIProcess granted capture access to a WebProcess making a capture request</short_desc>
          <delta_ts>2020-03-12 06:42:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebRTC</component>
          <version>WebKit 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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1628582</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-11 03:12:38 -0700</bug_when>
    <thetext>GPUProcess should ensure UIProcess granted capture access to a WebProcess making a capture request</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628583</commentid>
    <comment_count>1</comment_count>
      <attachid>393215</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-11 03:19:49 -0700</bug_when>
    <thetext>Created attachment 393215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628589</commentid>
    <comment_count>2</comment_count>
      <attachid>393220</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-11 04:16:25 -0700</bug_when>
    <thetext>Created attachment 393220
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629154</commentid>
    <comment_count>3</comment_count>
      <attachid>393220</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-12 06:42:00 -0700</bug_when>
    <thetext>Comment on attachment 393220
Patch

Clearing flags on attachment: 393220

Committed r258322: &lt;https://trac.webkit.org/changeset/258322&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629155</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-12 06:42:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629156</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-12 06:42:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/60369165&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393215</attachid>
            <date>2020-03-11 03:19:49 -0700</date>
            <delta_ts>2020-03-11 04:16:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208910-20200311111947.patch</filename>
            <type>text/plain</type>
            <size>21474</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBiNzE2ZWQ0YzMyYmQ0YmRi
MDFlNjExNjM3YmU3MzMxZjA2Y2M1MDQuLmJlMjQ3YTgyMGJjMzNmODZmNmVhYmIzYTU2M2E5MDI4
ODU5NDU1YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjAtMDMtMTEgIHlvdWVubiBm
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEdQVVByb2Nlc3Mgc2hvdWxkIGVu
c3VyZSBVSVByb2Nlc3MgZ3JhbnRlZCBjYXB0dXJlIGFjY2VzcyB0byBhIFdlYlByb2Nlc3MgbWFr
aW5nIGEgY2FwdHVyZSByZXF1ZXN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDg5MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBXaGVuIFVJUHJvY2VzcyByZWNlaXZlcyBhIGdldFVzZXJNZWRpYSByZXF1
ZXN0LCBpdCB3aWxsIHNlbmQgdG8gR1BVUHJvY2VzcyBhIG5vdGlmaWNhdGlvbiBvZiB3aGF0IGlz
IGFsbG93ZWQuCisgICAgICAgIEdQVVByb2Nlc3Mgc3RvcmVzIGZvciBlYWNoIGNvbm5lY3Rpb24g
dG8gd2ViIHByb2Nlc3Mgd2hldGhlciBtaWNyb3Bob25lLCBjYW1lcmEgYW5kL29yIGRpc3BsYXkg
YXJlIGFsbG93ZWQuCisgICAgICAgIFdlIGRvIG5vdCBkaXNhYmxlIGFjY2VzcyBmb3IgYSBnaXZl
biBwcm9jZXNzIGZvciBub3cuCisgICAgICAgIEEgZnV0dXJlIHJlZmFjdG9yaW5nIHNob3VsZCBw
cm9iYWJseSBzdHJlYW1saW5lIHRoZSBpbXBsZW1lbnRhdGlvbiBzbyB0aGF0LCBpbiBjYXNlIGNh
cHR1cmUgaGFwcGVucyBpbiBHUFVQcm9jZXNzLAorICAgICAgICBHUFVQcm9jZXNzIHJlY2VpdmVz
IHRoZSBnZXRVc2VyTWVkaWEgcmVxdWVzdCwgYXNrcyBwZXJtaXNzaW9uIHRvIFVJUHJvY2VzcyBh
bmQsIHVwb24gZ3JhbnRlZCBwZXJtaXNzaW9uLCBjcmVhdGVzIGRpcmVjdGx5IHRoZSBzb3VyY2Vz
LgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp1cGRhdGVDYXB0dXJlQWNjZXNzKToKKyAgICAgICAg
KiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaDoKKyAgICAgICAgKFdlYktp
dDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6YWxsb3dzQXVkaW9DYXB0dXJlIGNvbnN0KToK
KyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6YWxsb3dzVmlkZW9D
YXB0dXJlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6YWxsb3dzRGlzcGxheUNhcHR1cmUgY29uc3QpOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6OmNyZWF0ZUdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjp1cGRhdGVD
YXB0dXJlQWNjZXNzKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MuaDoKKyAgICAg
ICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9j
ZXNzL0NvY29hL1VzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5OjpjcmVhdGVNZWRpYVNvdXJjZUZvckNh
cHR1cmVEZXZpY2VXaXRoQ29uc3RyYWludHMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9V
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0dQVS9H
UFVQcm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzUHJveHk6OnVw
ZGF0ZUNhcHR1cmVBY2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1By
b3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHk6OmZpbmlzaEdyYW50aW5nUmVxdWVzdCk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOgorCiAyMDIwLTAzLTEw
ICB5b3Vlbm4gZmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgU2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyIHN5bmMgSVBDCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5kZXggZmJhYTM5ZmUy
ZWZiNGQzMjA5MzFkYzhjYzljNDVkMGVlY2JkY2JmYS4uZWQzZGMxODE1YzNhNDMwODE3MTY1MmMy
OTAxZGVlNTkzMmFkZTI5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtMTExLDE5ICsxMTEsMzIgQEAgcHJp
dmF0ZToKICAgICB2b2lkIGFkZE1lc3NhZ2VSZWNlaXZlcihJUEM6OlN0cmluZ1JlZmVyZW5jZSBt
ZXNzYWdlUmVjZWl2ZXJOYW1lLCBJUEM6Ok1lc3NhZ2VSZWNlaXZlciYgcmVjZWl2ZXIpIGZpbmFs
IHsgfQogICAgIHZvaWQgcmVtb3ZlTWVzc2FnZVJlY2VpdmVyKElQQzo6U3RyaW5nUmVmZXJlbmNl
IG1lc3NhZ2VSZWNlaXZlck5hbWUpIGZpbmFsIHsgfQogICAgIElQQzo6Q29ubmVjdGlvbiYgY29u
bmVjdGlvbigpIGZpbmFsIHsgcmV0dXJuIG1fcHJvY2Vzcy5jb25uZWN0aW9uKCk7IH0KLSNpZiBQ
TEFURk9STShJT1MpCi0gICAgdm9pZCB3aWxsU3RhcnRDYW1lcmFDYXB0dXJlKCkgZmluYWwKKyAg
ICBib29sIHdpbGxTdGFydENhcHR1cmUoQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSB0eXBlKSBj
b25zdCBmaW5hbAogICAgIHsKLSAgICAgICAgaWYgKG1fcHJvdmlkZWRQcmVzZW50aW5nQXBwbGlj
YXRpb25QSUQpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIG1fcHJvdmlkZWRQcmVzZW50
aW5nQXBwbGljYXRpb25QSUQgPSB0cnVlOwotICAgICAgICBNZWRpYVNlc3Npb25NYW5hZ2VyaU9T
Ojpwcm92aWRlUHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCk7CisgICAgICAgIHN3aXRjaCAodHlw
ZSkgeworICAgICAgICBjYXNlIENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6OlVua25vd246Cisg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIGNhc2UgQ2FwdHVyZURldmljZTo6RGV2
aWNlVHlwZTo6TWljcm9waG9uZToKKyAgICAgICAgICAgIHJldHVybiBtX3Byb2Nlc3MuYWxsb3dz
QXVkaW9DYXB0dXJlKCk7CisgICAgICAgIGNhc2UgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6
Q2FtZXJhOgorICAgICAgICAgICAgaWYgKCFtX3Byb2Nlc3MuYWxsb3dzVmlkZW9DYXB0dXJlKCkp
CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworI2lmIFBMQVRGT1JNKElPUykKKyAgICAg
ICAgICAgIE1lZGlhU2Vzc2lvbk1hbmFnZXJpT1M6OnByb3ZpZGVQcmVzZW50aW5nQXBwbGljYXRp
b25QSUQoKTsKKyNlbmRpZgorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpTY3JlZW46Cisg
ICAgICAgICAgICByZXR1cm4gbV9wcm9jZXNzLmFsbG93c0Rpc3BsYXlDYXB0dXJlKCk7CisgICAg
ICAgIGNhc2UgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6V2luZG93OgorICAgICAgICAgICAg
cmV0dXJuIG1fcHJvY2Vzcy5hbGxvd3NEaXNwbGF5Q2FwdHVyZSgpOworICAgICAgICB9CiAgICAg
fQogCisgICAgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgbV9wcm9jZXNzOworI2lmIFBMQVRG
T1JNKElPUykKICAgICBib29sIG1fcHJvdmlkZWRQcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyBm
YWxzZSB9OwogI2VuZGlmCi0KLSAgICBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBtX3Byb2Nl
c3M7CiB9OwogI2VuZGlmCiAKQEAgLTQ4NSw2ICs0OTgsMTMgQEAgdm9pZCBHUFVDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmll
bnRhdGkKIHsKICAgICB1c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkuc2V0T3JpZW50YXRp
b24ob3JpZW50YXRpb24pOwogfQorCit2b2lkIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnVw
ZGF0ZUNhcHR1cmVBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVv
Q2FwdHVyZSwgYm9vbCBhbGxvd0Rpc3BsYXlDYXB0dXJlKQoreworICAgIG1fYWxsb3dzQXVkaW9D
YXB0dXJlIHw9IGFsbG93QXVkaW9DYXB0dXJlOworICAgIG1fYWxsb3dzVmlkZW9DYXB0dXJlIHw9
IGFsbG93VmlkZW9DYXB0dXJlOworICAgIG1fYWxsb3dzRGlzcGxheUNhcHR1cmUgfD0gYWxsb3dE
aXNwbGF5Q2FwdHVyZTsKK30KICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNz
LmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5o
CmluZGV4IDJlYzhjZDU2ZDJjMzE2NjVlYWNjZGViOWUxODI2NTc4YTgxNWE1YTguLjUwMzhkMmQw
MDViYTQyZjFmODM5MDlmY2FiNDIwYTQyNzY4OGFhYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtODQsNiArODQs
MTAgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKICAgICB2b2lkIHNldE9y
aWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsKKyAgICB2b2lk
IHVwZGF0ZUNhcHR1cmVBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1Zp
ZGVvQ2FwdHVyZSwgYm9vbCBhbGxvd0Rpc3BsYXlDYXB0dXJlKTsKKyAgICBib29sIGFsbG93c0F1
ZGlvQ2FwdHVyZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzQXVkaW9DYXB0dXJlOyB9CisgICAg
Ym9vbCBhbGxvd3NWaWRlb0NhcHR1cmUoKSBjb25zdCB7IHJldHVybiBtX2FsbG93c1ZpZGVvQ2Fw
dHVyZTsgfQorICAgIGJvb2wgYWxsb3dzRGlzcGxheUNhcHR1cmUoKSBjb25zdCB7IHJldHVybiBt
X2FsbG93c0Rpc3BsYXlDYXB0dXJlOyB9CiAjZW5kaWYKIAogI2lmIEVOQUJMRShFTkNSWVBURURf
TUVESUEpCkBAIC0xNjYsNiArMTcwLDExIEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRy
PFJlbW90ZVNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllck1hbmFnZXI+IG1fc2FtcGxlQnVmZmVyRGlz
cGxheUxheWVyTWFuYWdlcjsKICNlbmRpZgogI2VuZGlmCisjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKKyAgICBib29sIG1fYWxsb3dzQXVkaW9DYXB0dXJlIHsgZmFsc2UgfTsKKyAgICBib29sIG1f
YWxsb3dzVmlkZW9DYXB0dXJlIHsgZmFsc2UgfTsKKyAgICBib29sIG1fYWxsb3dzRGlzcGxheUNh
cHR1cmUgeyBmYWxzZSB9OworI2VuZGlmCiAjaWYgUExBVEZPUk0oQ09DT0EpICYmIFVTRShMSUJX
RUJSVEMpCiAgICAgc3RkOjp1bmlxdWVfcHRyPExpYldlYlJUQ0NvZGVjc1Byb3h5PiBtX2xpYldl
YlJUQ0NvZGVjc1Byb3h5OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvR1BVUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vz
cy5jcHAKaW5kZXggOTZmYTk1MjdjMzg1NWNmOWI0NWE1NTc4M2I4MzM5MzVmNWMwZWQ4Yi4uMjcw
NWYyYWRhNjMyOTlmYzEyMjVjNGY3NmNlMDcxZGQ4MmUzZjljNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9HUFVQcm9jZXNzLmNwcApAQCAtNzksNiArNzksMTIgQEAgdm9pZCBHUFVQcm9jZXNz
OjpjcmVhdGVHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKFByb2Nlc3NJZGVudGlmaWVyIGlkZW50
aWZpZXIsIFAKIAogICAgIGF1dG8gbmV3Q29ubmVjdGlvbiA9IEdQVUNvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OmNyZWF0ZSgqdGhpcywgaWRlbnRpZmllciwgaXBjQ29ubmVjdGlvbi0+Zmlyc3QsIHNl
c3Npb25JRCk7CiAKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIC8vIEZJWE1FOiBXZSBz
aG91bGQgcmVmYWN0b3IgY29kZSB0byBnbyBmcm9tIFdlYlByb2Nlc3MgLT4gR1BVUHJvY2VzcyAt
PiBVSVByb2Nlc3Mgd2hlbiBnZXRVc2VyTWVkaWEgaXMgY2FsbGVkIGluc3RlYWQgb2YgZ29pbmcg
ZnJvbSBXZWJQcm9jZXNzIC0+IFVJUHJvY2VzcyBkaXJlY3RseS4KKyAgICBhdXRvIGFjY2VzcyA9
IG1fbWVkaWFDYXB0dXJlQWNjZXNzTWFwLnRha2UoaWRlbnRpZmllcik7CisgICAgbmV3Q29ubmVj
dGlvbi0+dXBkYXRlQ2FwdHVyZUFjY2VzcyhhY2Nlc3MuYWxsb3dBdWRpb0NhcHR1cmUsIGFjY2Vz
cy5hbGxvd1ZpZGVvQ2FwdHVyZSwgYWNjZXNzLmFsbG93RGlzcGxheUNhcHR1cmUpOworI2VuZGlm
CisKICAgICBBU1NFUlQoIW1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb25zLmNvbnRhaW5zKGlkZW50aWZp
ZXIpKTsKICAgICBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy5hZGQoaWRlbnRpZmllciwgV1RGTW92
ZShuZXdDb25uZWN0aW9uKSk7CiAKQEAgLTE3OSw2ICsxODUsMjEgQEAgdm9pZCBHUFVQcm9jZXNz
OjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbikKICAg
ICBmb3IgKGF1dG8mIGNvbm5lY3Rpb24gOiBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy52YWx1ZXMo
KSkKICAgICAgICAgY29ubmVjdGlvbi0+c2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUob3Jp
ZW50YXRpb24pOwogfQorCit2b2lkIEdQVVByb2Nlc3M6OnVwZGF0ZUNhcHR1cmVBY2Nlc3MoYm9v
bCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9vbCBhbGxvd0Rp
c3BsYXlDYXB0dXJlLCBQcm9jZXNzSWRlbnRpZmllciBwcm9jZXNzSUQsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogY29ubmVj
dGlvbiA9IHdlYlByb2Nlc3NDb25uZWN0aW9uKHByb2Nlc3NJRCkpIHsKKyAgICAgICAgY29ubmVj
dGlvbi0+dXBkYXRlQ2FwdHVyZUFjY2VzcyhhbGxvd0F1ZGlvQ2FwdHVyZSwgYWxsb3dWaWRlb0Nh
cHR1cmUsIGFsbG93RGlzcGxheUNhcHR1cmUpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoKTsKKyAgICB9CisKKyAgICBhdXRvJiBhY2Nlc3MgPSBtX21lZGlhQ2FwdHVyZUFjY2Vz
c01hcC5hZGQocHJvY2Vzc0lELCBNZWRpYUNhcHR1cmVBY2Nlc3MgeyBhbGxvd0F1ZGlvQ2FwdHVy
ZSwgYWxsb3dWaWRlb0NhcHR1cmUsIGFsbG93RGlzcGxheUNhcHR1cmUgfSkuaXRlcmF0b3ItPnZh
bHVlOworICAgIGFjY2Vzcy5hbGxvd0F1ZGlvQ2FwdHVyZSB8PSBhbGxvd0F1ZGlvQ2FwdHVyZTsK
KyAgICBhY2Nlc3MuYWxsb3dWaWRlb0NhcHR1cmUgfD0gYWxsb3dWaWRlb0NhcHR1cmU7CisgICAg
YWNjZXNzLmFsbG93RGlzcGxheUNhcHR1cmUgfD0gYWxsb3dEaXNwbGF5Q2FwdHVyZTsKKworICAg
IGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CiAjZW5kaWYKIAogdm9pZCBHUFVQcm9jZXNzOjphZGRT
ZXNzaW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgR1BVUHJvY2Vzc1Nlc3Npb25QYXJhbWV0
ZXJzJiYgcGFyYW1ldGVycykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5oCmluZGV4
IGNkYzA4NGY1MzI4ZWQ0NTcyMjA3NDIzMmM4MTAwNjhkMzJlOGZiZTguLmQyMDg5MTU5N2Q4ZTk3
YzNkZTRhNzlmYzBiNjkyZTc1NjRhYmY2NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9HUFVQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVBy
b2Nlc3MuaApAQCAtOTgsMTEgKzk4LDIxIEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICB2b2lkIHNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWQoYm9vbCk7CiAgICAg
dm9pZCBzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbik7
CisgICAgdm9pZCB1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJv
b2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAjZW5kaWYK
IAogICAgIC8vIENvbm5lY3Rpb25zIHRvIFdlYlByb2Nlc3Nlcy4KICAgICBIYXNoTWFwPFdlYkNv
cmU6OlByb2Nlc3NJZGVudGlmaWVyLCBSZWY8R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcz4+IG1f
d2ViUHJvY2Vzc0Nvbm5lY3Rpb25zOwogCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBz
dHJ1Y3QgTWVkaWFDYXB0dXJlQWNjZXNzIHsKKyAgICAgICAgYm9vbCBhbGxvd0F1ZGlvQ2FwdHVy
ZSB7IGZhbHNlIH07CisgICAgICAgIGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUgeyBmYWxzZSB9Owor
ICAgICAgICBib29sIGFsbG93RGlzcGxheUNhcHR1cmUgeyBmYWxzZSB9OworICAgIH07CisgICAg
SGFzaE1hcDxXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgTWVkaWFDYXB0dXJlQWNjZXNzPiBt
X21lZGlhQ2FwdHVyZUFjY2Vzc01hcDsKKyNlbmRpZgorCiAgICAgc3RydWN0IEdQVVNlc3Npb24g
ewogICAgICAgICBTdHJpbmcgbWVkaWFDYWNoZURpcmVjdG9yeTsKICNpZiBFTkFCTEUoTEVHQUNZ
X0VOQ1JZUFRFRF9NRURJQSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9H
UFVQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nl
c3MubWVzc2FnZXMuaW4KaW5kZXggNzc2YzhlODA4Mzc2NWNjYmE4MWQ5ODY4NzNiZDg1MDZlNzIz
ZmEzOS4uM2YwYmY4MzFjOWJmODg5NTBjM2JiYzAyNjY0YTE0NDNiZWJmN2UzYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTM4LDYg
KzM4LDcgQEAgbWVzc2FnZXMgLT4gR1BVUHJvY2VzcyB7CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKICAgICBTZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkKGJvb2wgaXNFbmFibGVkKQogICAg
IFNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsKKyAg
ICBVcGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJvb2wgYWxsb3dW
aWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29yZTo6UHJvY2Vzc0lk
ZW50aWZpZXIgcHJvY2Vzc0lEKSAtPiAoKSBBc3luYwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJv
eHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2FwdHVyZU1h
bmFnZXJQcm94eS5jcHAKaW5kZXggZDFlNmI5OWVkZmU5MDFiMTg5MDM3NjgzZDE0YTA0NGY0MDcw
YTUyZi4uYWZkMWM2MDA1NjQxNTBhNDk5OWU1NjdhOTVhNzJhNzNlMzY5ZGQyNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2Fw
dHVyZU1hbmFnZXJQcm94eS5jcHAKQEAgLTE3OSw2ICsxNzksOSBAQCBVc2VyTWVkaWFDYXB0dXJl
TWFuYWdlclByb3h5Ojp+VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eSgpCiAKIHZvaWQgVXNl
ck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6Y3JlYXRlTWVkaWFTb3VyY2VGb3JDYXB0dXJlRGV2
aWNlV2l0aENvbnN0cmFpbnRzKFJlYWx0aW1lTWVkaWFTb3VyY2VJZGVudGlmaWVyIGlkLCBjb25z
dCBDYXB0dXJlRGV2aWNlJiBkZXZpY2UsIFN0cmluZyYmIGhhc2hTYWx0LCBjb25zdCBNZWRpYUNv
bnN0cmFpbnRzJiBjb25zdHJhaW50cywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sIHN1Y2Nl
ZWRlZCwgU3RyaW5nIGludmFsaWRDb25zdHJhaW50cywgV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZVNldHRpbmdzJiYsIFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDYXBhYmlsaXRpZXMm
Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb25Qcm94eS0+
d2lsbFN0YXJ0Q2FwdHVyZShkZXZpY2UudHlwZSgpKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGZhbHNlLCAiUmVxdWVzdCBpcyBub3QgYWxsb3dlZCJfcywgUmVhbHRpbWVNZWRp
YVNvdXJjZVNldHRpbmdzIHsgfSwgeyB9KTsKKwogICAgIENhcHR1cmVTb3VyY2VPckVycm9yIHNv
dXJjZU9yRXJyb3I7CiAgICAgc3dpdGNoIChkZXZpY2UudHlwZSgpKSB7CiAgICAgY2FzZSBXZWJD
b3JlOjpDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lOgpAQCAtMTg2LDEwICsx
ODksOCBAQCB2b2lkIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHk6OmNyZWF0ZU1lZGlhU291
cmNlRm9yQ2FwdHVyZURldmljZVdpdGhDb25zdHJhaQogICAgICAgICBicmVhazsKICAgICBjYXNl
IFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6OkNhbWVyYToKICAgICAgICAgc291
cmNlT3JFcnJvciA9IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLnZpZGVv
Q2FwdHVyZUZhY3RvcnkoKS5jcmVhdGVWaWRlb0NhcHR1cmVTb3VyY2UoZGV2aWNlLCBXVEZNb3Zl
KGhhc2hTYWx0KSwgJmNvbnN0cmFpbnRzKTsKLSAgICAgICAgaWYgKHNvdXJjZU9yRXJyb3IpIHsK
KyAgICAgICAgaWYgKHNvdXJjZU9yRXJyb3IpCiAgICAgICAgICAgICBzb3VyY2VPckVycm9yLmNh
cHR1cmVTb3VyY2UtPm1vbml0b3JPcmllbnRhdGlvbihtX29yaWVudGF0aW9uTm90aWZpZXIpOwot
ICAgICAgICAgICAgbV9jb25uZWN0aW9uUHJveHktPndpbGxTdGFydENhbWVyYUNhcHR1cmUoKTsK
LSAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIFdlYkNvcmU6OkNhcHR1cmVEZXZp
Y2U6OkRldmljZVR5cGU6OlNjcmVlbjoKICAgICBjYXNlIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6
OkRldmljZVR5cGU6OldpbmRvdzoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1VzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1VzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuaAppbmRleCAyY2QxMDI3
MTA1OWY2MzY2OWMwOWMyZWM5YTIxYTcwZGFkYzI0NGFiLi43OTQ5OGVlNDViODIyZTI2NGIwNGFk
Y2Y4OTA2MGJmMWQwNzExMDcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5oCkBAIC0zMCw2ICsz
MCw3IEBACiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZl
ci5oIgogI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyLmgiCisjaW5jbHVkZSA8V2Vi
Q29yZS9DYXB0dXJlRGV2aWNlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9PcmllbnRhdGlvbk5vdGlm
aWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZWFsdGltZU1lZGlhU291cmNlLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9SZWFsdGltZU1lZGlhU291cmNlSWRlbnRpZmllci5oPgpAQCAtNTMsNyArNTQs
NyBAQCBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgdm9pZCBhZGRNZXNzYWdlUmVjZWl2ZXIoSVBD
OjpTdHJpbmdSZWZlcmVuY2UsIElQQzo6TWVzc2FnZVJlY2VpdmVyJikgPSAwOwogICAgICAgICB2
aXJ0dWFsIHZvaWQgcmVtb3ZlTWVzc2FnZVJlY2VpdmVyKElQQzo6U3RyaW5nUmVmZXJlbmNlKSA9
IDA7CiAgICAgICAgIHZpcnR1YWwgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKCkgPSAwOwot
ICAgICAgICB2aXJ0dWFsIHZvaWQgd2lsbFN0YXJ0Q2FtZXJhQ2FwdHVyZSgpIHsgfQorICAgICAg
ICB2aXJ0dWFsIGJvb2wgd2lsbFN0YXJ0Q2FwdHVyZShXZWJDb3JlOjpDYXB0dXJlRGV2aWNlOjpE
ZXZpY2VUeXBlKSBjb25zdCA9IDA7CiAgICAgICAgIHZpcnR1YWwgTG9nZ2VyJiBsb2dnZXIoKSA9
IDA7CiAgICAgfTsKICAgICBleHBsaWNpdCBVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KFVu
aXF1ZVJlZjxDb25uZWN0aW9uUHJveHk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNwcAppbmRleCAyNDMzODdhYWFhNDc5Njc1OTQxNWMxYzBj
NjUxYzhiYmNjMmE3MDg0Li42ODY5MDQyZTdmOTdhMDcyMzRmMGJmNDhkMzRhMWE5ODlmZjA1MmE5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmNw
cApAQCAtMTU0LDYgKzE1NCwxMSBAQCB2b2lkIEdQVVByb2Nlc3NQcm94eTo6c2V0T3JpZW50YXRp
b25Gb3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pCiAgICAgbV9vcmllbnRhdGlv
biA9IG9yaWVudGF0aW9uOwogICAgIHNlbmQoTWVzc2FnZXM6OkdQVVByb2Nlc3M6OlNldE9yaWVu
dGF0aW9uRm9yTWVkaWFDYXB0dXJlIHsgb3JpZW50YXRpb24gfSwgMCk7CiB9CisKK3ZvaWQgR1BV
UHJvY2Vzc1Byb3h5Ojp1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUs
IGJvb2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29y
ZTo6UHJvY2Vzc0lkZW50aWZpZXIgcHJvY2Vzc0lELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2Vz
OjpHUFVQcm9jZXNzOjpVcGRhdGVDYXB0dXJlQWNjZXNzIHsgYWxsb3dBdWRpb0NhcHR1cmUsIGFs
bG93VmlkZW9DYXB0dXJlLCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBwcm9jZXNzSUQgfSwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQogI2VuZGlmCiAKIHZvaWQgR1BVUHJvY2Vzc1Byb3h5
OjpnZXRMYXVuY2hPcHRpb25zKFByb2Nlc3NMYXVuY2hlcjo6TGF1bmNoT3B0aW9ucyYgbGF1bmNo
T3B0aW9ucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9j
ZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHku
aAppbmRleCBhODVmMmIyMDEwYTZlNGIzMTE2NGQ2YzYwZjUwMmQwNGY5YWU5NTUxLi45MDBkZjBi
ZTU5M2Q4M2U1NGI2YmZkODI1MTI4MzA2NDRiZDZhZjE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgc2V0VXNlTW9ja0NhcHR1cmVEZXZp
Y2VzKGJvb2wpOwogICAgIHZvaWQgc2V0T3JpZW50YXRpb25Gb3JNZWRpYUNhcHR1cmUodWludDY0
X3Qgb3JpZW50YXRpb24pOworICAgIHZvaWQgdXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93
QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNh
cHR1cmUsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYpOwogI2VuZGlmCiAKICAgICB2b2lkIHJlbW92ZVNlc3Npb24oUEFMOjpTZXNzaW9uSUQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lv
blJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3BwCmluZGV4IDk3YTFlNDIyZWEwMGQ2
OTAzOGYxZDM5YTRjYzE5MTA5YWQzOWRmYjkuLjkxNTUzOWZkOGQ3ZjY1ZjE0MzUxYWQyZjUwNzc1
MGYzNzUwNDUxYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRp
YVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5jcHAKQEAgLTIz
NiwzMiArMjM2LDM5IEBAIHZvaWQgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJv
eHk6OmZpbmlzaEdyYW50aW5nUmVxdWVzdChVc2VyTWVkaWFQZXJtCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBpZiAocmVxdWVzdC5yZXF1ZXN0VHlwZSgpID09IE1lZGlhU3RyZWFtUmVx
dWVzdDo6VHlwZTo6VXNlck1lZGlhKQotICAgICAgICBtX2dyYW50ZWRSZXF1ZXN0cy5hcHBlbmQo
bWFrZVJlZihyZXF1ZXN0KSk7CisgICAgbV9wYWdlLndpbGxTdGFydENhcHR1cmUocmVxdWVzdCwg
W3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhpcyksIHN0cm9uZ1JlcXVlc3QgPSBtYWtl
UmVmKHJlcXVlc3QpXSgpIG11dGFibGUgeworICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAg
ICAgICAgcmV0dXJuOwogCi0gICAgLy8gRklYTUU6IG1faGFzRmlsdGVyZWREZXZpY2VMaXN0IHdp
bGwgdHJpZ2dlciBvbmRldmljZWNoYW5nZSBldmVudHMgZm9yIHZhcmlvdXMgZG9jdW1lbnRzIGZy
b20gZGlmZmVyZW50IG9yaWdpbnMuCi0gICAgaWYgKG1faGFzRmlsdGVyZWREZXZpY2VMaXN0KQot
ICAgICAgICBjYXB0dXJlRGV2aWNlc0NoYW5nZWQoUGVybWlzc2lvbkluZm86OkdyYW50ZWQpOwot
ICAgIG1faGFzRmlsdGVyZWREZXZpY2VMaXN0ID0gZmFsc2U7CisgICAgICAgIGF1dG8mIHJlcXVl
c3QgPSBzdHJvbmdSZXF1ZXN0LmdldCgpOwogCi0gICAgKyttX2hhc1BlbmRpbmdDYXB0dXJlOwor
ICAgICAgICBpZiAocmVxdWVzdC5yZXF1ZXN0VHlwZSgpID09IE1lZGlhU3RyZWFtUmVxdWVzdDo6
VHlwZTo6VXNlck1lZGlhKQorICAgICAgICAgICAgbV9ncmFudGVkUmVxdWVzdHMuYXBwZW5kKG1h
a2VSZWYocmVxdWVzdCkpOwogCi0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsK
KyAgICAgICAgLy8gRklYTUU6IG1faGFzRmlsdGVyZWREZXZpY2VMaXN0IHdpbGwgdHJpZ2dlciBv
bmRldmljZWNoYW5nZSBldmVudHMgZm9yIHZhcmlvdXMgZG9jdW1lbnRzIGZyb20gZGlmZmVyZW50
IG9yaWdpbnMuCisgICAgICAgIGlmIChtX2hhc0ZpbHRlcmVkRGV2aWNlTGlzdCkKKyAgICAgICAg
ICAgIGNhcHR1cmVEZXZpY2VzQ2hhbmdlZChQZXJtaXNzaW9uSW5mbzo6R3JhbnRlZCk7CisgICAg
ICAgIG1faGFzRmlsdGVyZWREZXZpY2VMaXN0ID0gZmFsc2U7CisKKyAgICAgICAgKyttX2hhc1Bl
bmRpbmdDYXB0dXJlOworCisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoYW5kbGU7
CiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgaWYgKCFtX2hhc0NyZWF0ZWRTYW5kYm94RXh0ZW5z
aW9uRm9yVENDRCkgewotICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JN
YWNoTG9va3VwKCJjb20uYXBwbGUudGNjZCIsIG1fcGFnZS5wcm9jZXNzKCkuY29ubmVjdGlvbigp
LT5nZXRBdWRpdFRva2VuKCksIGhhbmRsZSk7Ci0gICAgICAgIG1faGFzQ3JlYXRlZFNhbmRib3hF
eHRlbnNpb25Gb3JUQ0NEID0gdHJ1ZTsKLSAgICB9CisgICAgICAgIGlmICghbV9oYXNDcmVhdGVk
U2FuZGJveEV4dGVuc2lvbkZvclRDQ0QpIHsKKyAgICAgICAgICAgIFNhbmRib3hFeHRlbnNpb246
OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS50Y2NkIiwgbV9wYWdlLnByb2Nl
c3MoKS5jb25uZWN0aW9uKCktPmdldEF1ZGl0VG9rZW4oKSwgaGFuZGxlKTsKKyAgICAgICAgICAg
IG1faGFzQ3JlYXRlZFNhbmRib3hFeHRlbnNpb25Gb3JUQ0NEID0gdHJ1ZTsKKyAgICAgICAgfQog
I2VuZGlmCiAKLSAgICBtX3BhZ2UucHJvY2VzcygpLmNvbm5lY3Rpb24oKS0+c2VuZFdpdGhBc3lu
Y1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpVc2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkIHsgcmVx
dWVzdC51c2VyTWVkaWFJRCgpLCByZXF1ZXN0LmF1ZGlvRGV2aWNlKCksIHJlcXVlc3QudmlkZW9E
ZXZpY2UoKSwgcmVxdWVzdC5kZXZpY2VJZGVudGlmaWVySGFzaFNhbHQoKSwgaGFuZGxlIH0sIFt0
aGlzLCB3ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKHRoaXMpXSB7Ci0gICAgICAgIGlmICghd2Vha1Ro
aXMpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIGlmICghLS1tX2hhc1BlbmRpbmdDYXB0
dXJlKQotICAgICAgICAgICAgVXNlck1lZGlhUHJvY2Vzc01hbmFnZXI6OnNpbmdsZXRvbigpLnJl
dm9rZVNhbmRib3hFeHRlbnNpb25zSWZOZWVkZWQocGFnZSgpLnByb2Nlc3MoKSk7Ci0gICAgfSwg
bV9wYWdlLndlYlBhZ2VJRCgpKTsKKyAgICAgICAgbV9wYWdlLnByb2Nlc3MoKS5jb25uZWN0aW9u
KCktPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6VXNlck1lZGlhQWNjZXNz
V2FzR3JhbnRlZCB7IHJlcXVlc3QudXNlck1lZGlhSUQoKSwgcmVxdWVzdC5hdWRpb0RldmljZSgp
LCByZXF1ZXN0LnZpZGVvRGV2aWNlKCksIHJlcXVlc3QuZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0
KCksIGhhbmRsZSB9LCBbdGhpcywgd2Vha1RoaXMgPSBXVEZNb3ZlKHdlYWtUaGlzKV0geworICAg
ICAgICAgICAgaWYgKCF3ZWFrVGhpcykKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAg
ICAgICBpZiAoIS0tbV9oYXNQZW5kaW5nQ2FwdHVyZSkKKyAgICAgICAgICAgICAgICBVc2VyTWVk
aWFQcm9jZXNzTWFuYWdlcjo6c2luZ2xldG9uKCkucmV2b2tlU2FuZGJveEV4dGVuc2lvbnNJZk5l
ZWRlZChwYWdlKCkucHJvY2VzcygpKTsKKyAgICAgICAgfSwgbV9wYWdlLndlYlBhZ2VJRCgpKTsK
IAotICAgIHByb2Nlc3NOZXh0VXNlck1lZGlhUmVxdWVzdElmTmVlZGVkKCk7CisgICAgICAgIHBy
b2Nlc3NOZXh0VXNlck1lZGlhUmVxdWVzdElmTmVlZGVkKCk7CisgICAgfSk7CiB9CiAKIHZvaWQg
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHk6OnJlc2V0QWNjZXNzKE9wdGlv
bmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCmluZGV4IDI2ZWZiYjM5MGIzODE2M2U5OGY2ODgzOTFjZjc0NTNjNzk3MGE5
M2UuLmY2ZTY0MWUwZTIyZWI4NjRmMGY4MThhOTgzNDM3MDk3MDQ3Y2FjODcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNzkxMCw2ICs3OTEwLDIwIEBAIHZv
aWQgV2ViUGFnZVByb3h5OjpzZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkT3ZlcnJpZGUoT3B0
aW9uYWw8Ym9vbD4gZW5hYmxlZCkKIHsKICAgICB1c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXIoKS5zZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkT3ZlcnJpZGUoZW5hYmxlZCk7CiB9
CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp3aWxsU3RhcnRDYXB0dXJlKGNvbnN0IFVzZXJNZWRpYVBl
cm1pc3Npb25SZXF1ZXN0UHJveHkmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
JiBjYWxsYmFjaykKK3sKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisgICAgaWYgKCFwcmVmZXJl
bmNlcygpLmNhcHR1cmVWaWRlb0luR1BVUHJvY2Vzc0VuYWJsZWQoKSAmJiAhcHJlZmVyZW5jZXMo
KS5jYXB0dXJlQXVkaW9JbkdQVVByb2Nlc3NFbmFibGVkKCkpCisgICAgICAgIHJldHVybiBjYWxs
YmFjaygpOworCisgICAgYXV0byYgZ3B1UHJvY2VzcyA9IEdQVVByb2Nlc3NQcm94eTo6c2luZ2xl
dG9uKCk7CisgICAgZ3B1UHJvY2Vzcy51cGRhdGVDYXB0dXJlQWNjZXNzKHJlcXVlc3QucmVxdWly
ZXNBdWRpb0NhcHR1cmUoKSwgcmVxdWVzdC5yZXF1aXJlc1ZpZGVvQ2FwdHVyZSgpLCByZXF1ZXN0
LnJlcXVpcmVzRGlzcGxheUNhcHR1cmUoKSwgbV9wcm9jZXNzLT5jb3JlUHJvY2Vzc0lkZW50aWZp
ZXIoKSwgV1RGTW92ZShjYWxsYmFjaykpOworI2Vsc2UKKyAgICBjYWxsYmFjaygpOworI2VuZGlm
Cit9CisKICNlbmRpZgogCiB2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBlcm1p
c3Npb25Gb3JGcmFtZSh1aW50NjRfdCB1c2VyTWVkaWFJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgIHVzZXJNZWRpYURvY3VtZW50
T3JpZ2luRGF0YSwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BMZXZlbERv
Y3VtZW50T3JpZ2luRGF0YSwgV2ViQ29yZTo6TWVkaWFTdHJlYW1SZXF1ZXN0JiYgcmVxdWVzdCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggYzdiNmVjNDg3YTY2YmM5
MmIyZWI3ZjU4ZDg2Yzk1NjQ2Y2FkYmZjNC4uZTA0MGUwNDJlZTIyOGFlMzJlYzY0ZDMzNjVkNTZj
ZWQxN2NmMzdjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTI5
NSwyMyArMjk1LDI0IEBAIGNsYXNzIFdlYkNvbnRleHRNZW51UHJveHk7CiBjbGFzcyBXZWJFZGl0
Q29tbWFuZFByb3h5OwogY2xhc3MgV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eTsKIGNsYXNzIFBs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsKLWNsYXNzIFdlYk5hdmlnYXRpb25TdGF0ZTsKK2Ns
YXNzIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHk7CiBjbGFzcyBWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyUHJveHk7CiBjbGFzcyBXZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JQcm94eTsK
IGNsYXNzIFdlYkJhY2tGb3J3YXJkQ2FjaGU7CitjbGFzcyBXZWJEZXZpY2VPcmllbnRhdGlvblVw
ZGF0ZVByb3ZpZGVyUHJveHk7CiBjbGFzcyBXZWJLZXlib2FyZEV2ZW50OwotY2xhc3MgV2ViVVJM
U2NoZW1lSGFuZGxlcjsKIGNsYXNzIFdlYk1vdXNlRXZlbnQ7CitjbGFzcyBXZWJOYXZpZ2F0aW9u
U3RhdGU7CiBjbGFzcyBXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lclByb3h5OwogY2xhc3MgV2Vi
UGFnZURlYnVnZ2FibGU7CiBjbGFzcyBXZWJQYWdlR3JvdXA7CiBjbGFzcyBXZWJQYWdlSW5zcGVj
dG9yQ29udHJvbGxlcjsKIGNsYXNzIFdlYlByb2Nlc3NQcm94eTsKK2NsYXNzIFdlYlVSTFNjaGVt
ZUhhbmRsZXI7CiBjbGFzcyBXZWJVc2VyQ29udGVudENvbnRyb2xsZXJQcm94eTsKK2NsYXNzIFdl
YlZpZXdEaWRNb3ZlVG9XaW5kb3dPYnNlcnZlcjsKIGNsYXNzIFdlYldoZWVsRXZlbnQ7CiBjbGFz
cyBXZWJzaXRlRGF0YVN0b3JlOwotY2xhc3MgV2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92
aWRlclByb3h5OwotY2xhc3MgV2ViVmlld0RpZE1vdmVUb1dpbmRvd09ic2VydmVyOwogCiBzdHJ1
Y3QgQXR0cmlidXRlZFN0cmluZzsKIHN0cnVjdCBXZWJCYWNrRm9yd2FyZExpc3RDb3VudHM7CkBA
IC0xNjc2LDYgKzE2NzcsNyBAQCBwdWJsaWM6CiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQog
ICAgIHZvaWQgc2V0TW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZE92ZXJyaWRlKE9wdGlvbmFsPGJv
b2w+KTsKKyAgICB2b2lkIHdpbGxTdGFydENhcHR1cmUoY29uc3QgVXNlck1lZGlhUGVybWlzc2lv
blJlcXVlc3RQcm94eSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAjZW5kaWYKIAog
ICAgIHZvaWQgbWF5YmVJbml0aWFsaXplU2FuZGJveEV4dGVuc2lvbkhhbmRsZShXZWJQcm9jZXNz
UHJveHkmLCBjb25zdCBVUkwmLCBjb25zdCBVUkwmIHJlc291cmNlRGlyZWN0b3J5VVJMLCBTYW5k
Ym94RXh0ZW5zaW9uOjpIYW5kbGUmLCBib29sIGNoZWNrQXNzdW1lZFJlYWRBY2Nlc3NUb1Jlc291
cmNlVVJMID0gdHJ1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5
LmNwcAppbmRleCBlNDYyMzdlMGFjN2VhNjcwNjljYmMwOWUyMTQyODI2OTU3ZmY3NWFkLi40ZTEy
YzQ2OWMxNjhmNzJjNTRmOWQwOTBiMzc5OWYzODk2ZGE1ODhmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKQEAgLTE2OCw2ICsxNjgsMTEgQEAgcHJpdmF0
ZToKICAgICAgICAgfQogICAgICAgICByZXR1cm4gKm1fbG9nZ2VyOwogICAgIH0KKyAgICBib29s
IHdpbGxTdGFydENhcHR1cmUoQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSkgY29uc3QgZmluYWwK
KyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgdmFsaWRhdGUgdGhpcyBpcyBncmFu
dGVkLgorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAKICAgICBSZWZQdHI8TG9nZ2VyPiBt
X2xvZ2dlcjsKICAgICBXZWJQcm9jZXNzUHJveHkmIG1fcHJvY2VzczsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393220</attachid>
            <date>2020-03-11 04:16:25 -0700</date>
            <delta_ts>2020-03-12 06:42:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208910-20200311121624.patch</filename>
            <type>text/plain</type>
            <size>21401</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDBiNzE2ZWQ0YzMyYmQ0YmRi
MDFlNjExNjM3YmU3MzMxZjA2Y2M1MDQuLmJlMjQ3YTgyMGJjMzNmODZmNmVhYmIzYTU2M2E5MDI4
ODU5NDU1YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjAtMDMtMTEgIHlvdWVubiBm
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEdQVVByb2Nlc3Mgc2hvdWxkIGVu
c3VyZSBVSVByb2Nlc3MgZ3JhbnRlZCBjYXB0dXJlIGFjY2VzcyB0byBhIFdlYlByb2Nlc3MgbWFr
aW5nIGEgY2FwdHVyZSByZXF1ZXN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDg5MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBXaGVuIFVJUHJvY2VzcyByZWNlaXZlcyBhIGdldFVzZXJNZWRpYSByZXF1
ZXN0LCBpdCB3aWxsIHNlbmQgdG8gR1BVUHJvY2VzcyBhIG5vdGlmaWNhdGlvbiBvZiB3aGF0IGlz
IGFsbG93ZWQuCisgICAgICAgIEdQVVByb2Nlc3Mgc3RvcmVzIGZvciBlYWNoIGNvbm5lY3Rpb24g
dG8gd2ViIHByb2Nlc3Mgd2hldGhlciBtaWNyb3Bob25lLCBjYW1lcmEgYW5kL29yIGRpc3BsYXkg
YXJlIGFsbG93ZWQuCisgICAgICAgIFdlIGRvIG5vdCBkaXNhYmxlIGFjY2VzcyBmb3IgYSBnaXZl
biBwcm9jZXNzIGZvciBub3cuCisgICAgICAgIEEgZnV0dXJlIHJlZmFjdG9yaW5nIHNob3VsZCBw
cm9iYWJseSBzdHJlYW1saW5lIHRoZSBpbXBsZW1lbnRhdGlvbiBzbyB0aGF0LCBpbiBjYXNlIGNh
cHR1cmUgaGFwcGVucyBpbiBHUFVQcm9jZXNzLAorICAgICAgICBHUFVQcm9jZXNzIHJlY2VpdmVz
IHRoZSBnZXRVc2VyTWVkaWEgcmVxdWVzdCwgYXNrcyBwZXJtaXNzaW9uIHRvIFVJUHJvY2VzcyBh
bmQsIHVwb24gZ3JhbnRlZCBwZXJtaXNzaW9uLCBjcmVhdGVzIGRpcmVjdGx5IHRoZSBzb3VyY2Vz
LgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBHUFVQ
cm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpH
UFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp1cGRhdGVDYXB0dXJlQWNjZXNzKToKKyAgICAgICAg
KiBHUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaDoKKyAgICAgICAgKFdlYktp
dDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6YWxsb3dzQXVkaW9DYXB0dXJlIGNvbnN0KToK
KyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6YWxsb3dzVmlkZW9D
YXB0dXJlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6YWxsb3dzRGlzcGxheUNhcHR1cmUgY29uc3QpOgorICAgICAgICAqIEdQVVByb2Nlc3MvR1BV
UHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OkdQVVByb2Nlc3M6OmNyZWF0ZUdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzOjp1cGRhdGVD
YXB0dXJlQWNjZXNzKToKKyAgICAgICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MuaDoKKyAgICAg
ICAgKiBHUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9j
ZXNzL0NvY29hL1VzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpVc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5OjpjcmVhdGVNZWRpYVNvdXJjZUZvckNh
cHR1cmVEZXZpY2VXaXRoQ29uc3RyYWludHMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9V
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0dQVS9H
UFVQcm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpHUFVQcm9jZXNzUHJveHk6OnVw
ZGF0ZUNhcHR1cmVBY2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9HUFUvR1BVUHJvY2Vzc1By
b3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFu
YWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6VXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHk6OmZpbmlzaEdyYW50aW5nUmVxdWVzdCk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOgorCiAyMDIwLTAzLTEw
ICB5b3Vlbm4gZmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgU2Ft
cGxlQnVmZmVyRGlzcGxheUxheWVyIHN5bmMgSVBDCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAKaW5kZXggZmJhYTM5ZmUy
ZWZiNGQzMjA5MzFkYzhjYzljNDVkMGVlY2JkY2JmYS4uZjRhZTMzNWQyZjgyOWFhMWJiOTI2ZWE1
MjI3NDlhOTM3MTE3MGMyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcApAQCAtMTExLDE3ICsxMTEsMjcgQEAgcHJp
dmF0ZToKICAgICB2b2lkIGFkZE1lc3NhZ2VSZWNlaXZlcihJUEM6OlN0cmluZ1JlZmVyZW5jZSBt
ZXNzYWdlUmVjZWl2ZXJOYW1lLCBJUEM6Ok1lc3NhZ2VSZWNlaXZlciYgcmVjZWl2ZXIpIGZpbmFs
IHsgfQogICAgIHZvaWQgcmVtb3ZlTWVzc2FnZVJlY2VpdmVyKElQQzo6U3RyaW5nUmVmZXJlbmNl
IG1lc3NhZ2VSZWNlaXZlck5hbWUpIGZpbmFsIHsgfQogICAgIElQQzo6Q29ubmVjdGlvbiYgY29u
bmVjdGlvbigpIGZpbmFsIHsgcmV0dXJuIG1fcHJvY2Vzcy5jb25uZWN0aW9uKCk7IH0KLSNpZiBQ
TEFURk9STShJT1MpCi0gICAgdm9pZCB3aWxsU3RhcnRDYW1lcmFDYXB0dXJlKCkgZmluYWwKKyAg
ICBib29sIHdpbGxTdGFydENhcHR1cmUoQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSB0eXBlKSBj
b25zdCBmaW5hbAogICAgIHsKLSAgICAgICAgaWYgKG1fcHJvdmlkZWRQcmVzZW50aW5nQXBwbGlj
YXRpb25QSUQpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIG1fcHJvdmlkZWRQcmVzZW50
aW5nQXBwbGljYXRpb25QSUQgPSB0cnVlOwotICAgICAgICBNZWRpYVNlc3Npb25NYW5hZ2VyaU9T
Ojpwcm92aWRlUHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCk7Ci0gICAgfQotCi0gICAgYm9vbCBt
X3Byb3ZpZGVkUHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsgZmFsc2UgfTsKKyAgICAgICAgc3dp
dGNoICh0eXBlKSB7CisgICAgICAgIGNhc2UgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6VW5r
bm93bjoKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgY2FzZSBDYXB0dXJlRGV2
aWNlOjpEZXZpY2VUeXBlOjpNaWNyb3Bob25lOgorICAgICAgICAgICAgcmV0dXJuIG1fcHJvY2Vz
cy5hbGxvd3NBdWRpb0NhcHR1cmUoKTsKKyAgICAgICAgY2FzZSBDYXB0dXJlRGV2aWNlOjpEZXZp
Y2VUeXBlOjpDYW1lcmE6CisgICAgICAgICAgICBpZiAoIW1fcHJvY2Vzcy5hbGxvd3NWaWRlb0Nh
cHR1cmUoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisjaWYgUExBVEZPUk0oSU9T
KQorICAgICAgICAgICAgTWVkaWFTZXNzaW9uTWFuYWdlcmlPUzo6cHJvdmlkZVByZXNlbnRpbmdB
cHBsaWNhdGlvblBJRCgpOwogI2VuZGlmCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGU6OlNj
cmVlbjoKKyAgICAgICAgICAgIHJldHVybiBtX3Byb2Nlc3MuYWxsb3dzRGlzcGxheUNhcHR1cmUo
KTsKKyAgICAgICAgY2FzZSBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlOjpXaW5kb3c6CisgICAg
ICAgICAgICByZXR1cm4gbV9wcm9jZXNzLmFsbG93c0Rpc3BsYXlDYXB0dXJlKCk7CisgICAgICAg
IH0KKyAgICB9CiAKICAgICBHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBtX3Byb2Nlc3M7CiB9
OwpAQCAtNDg1LDYgKzQ5NSwxMyBAQCB2b2lkIEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNl
dE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aQogewogICAgIHVz
ZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoKS5zZXRPcmllbnRhdGlvbihvcmllbnRhdGlvbik7
CiB9CisKK3ZvaWQgR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vz
cyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFs
bG93RGlzcGxheUNhcHR1cmUpCit7CisgICAgbV9hbGxvd3NBdWRpb0NhcHR1cmUgfD0gYWxsb3dB
dWRpb0NhcHR1cmU7CisgICAgbV9hbGxvd3NWaWRlb0NhcHR1cmUgfD0gYWxsb3dWaWRlb0NhcHR1
cmU7CisgICAgbV9hbGxvd3NEaXNwbGF5Q2FwdHVyZSB8PSBhbGxvd0Rpc3BsYXlDYXB0dXJlOwor
fQogI2VuZGlmCiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL0dQVUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9HUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKaW5kZXggMmVjOGNkNTZk
MmMzMTY2NWVhY2NkZWI5ZTE4MjY1NzhhODE1YTVhOC4uNTAzOGQyZDAwNWJhNDJmMWY4MzkwOWZj
YWI0MjBhNDI3Njg4YWFhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQ
VUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3Mv
R1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCkBAIC04NCw2ICs4NCwxMCBAQCBwdWJsaWM6CiAK
ICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQgc2V0T3JpZW50YXRpb25Gb3JNZWRp
YUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pOworICAgIHZvaWQgdXBkYXRlQ2FwdHVyZUFj
Y2Vzcyhib29sIGFsbG93QXVkaW9DYXB0dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29s
IGFsbG93RGlzcGxheUNhcHR1cmUpOworICAgIGJvb2wgYWxsb3dzQXVkaW9DYXB0dXJlKCkgY29u
c3QgeyByZXR1cm4gbV9hbGxvd3NBdWRpb0NhcHR1cmU7IH0KKyAgICBib29sIGFsbG93c1ZpZGVv
Q2FwdHVyZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzVmlkZW9DYXB0dXJlOyB9CisgICAgYm9v
bCBhbGxvd3NEaXNwbGF5Q2FwdHVyZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzRGlzcGxheUNh
cHR1cmU7IH0KICNlbmRpZgogCiAjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKQEAgLTE2Niw2
ICsxNzAsMTEgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlU2FtcGxlQnVm
ZmVyRGlzcGxheUxheWVyTWFuYWdlcj4gbV9zYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXJNYW5hZ2Vy
OwogI2VuZGlmCiAjZW5kaWYKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIGJvb2wgbV9h
bGxvd3NBdWRpb0NhcHR1cmUgeyBmYWxzZSB9OworICAgIGJvb2wgbV9hbGxvd3NWaWRlb0NhcHR1
cmUgeyBmYWxzZSB9OworICAgIGJvb2wgbV9hbGxvd3NEaXNwbGF5Q2FwdHVyZSB7IGZhbHNlIH07
CisjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkgJiYgVVNFKExJQldFQlJUQykKICAgICBzdGQ6
OnVuaXF1ZV9wdHI8TGliV2ViUlRDQ29kZWNzUHJveHk+IG1fbGliV2ViUlRDQ29kZWNzUHJveHk7
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmNwcAppbmRleCA5NmZh
OTUyN2MzODU1Y2Y5YjQ1YTU1NzgzYjgzMzkzNWY1YzBlZDhiLi4yNzA1ZjJhZGE2MzI5OWZjMTIy
NWM0Zjc2Y2UwNzFkZDgyZTNmOWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nl
c3MvR1BVUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nl
c3MuY3BwCkBAIC03OSw2ICs3OSwxMiBAQCB2b2lkIEdQVVByb2Nlc3M6OmNyZWF0ZUdQVUNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MoUHJvY2Vzc0lkZW50aWZpZXIgaWRlbnRpZmllciwgUAogCiAgICAg
YXV0byBuZXdDb25uZWN0aW9uID0gR1BVQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlKCp0
aGlzLCBpZGVudGlmaWVyLCBpcGNDb25uZWN0aW9uLT5maXJzdCwgc2Vzc2lvbklEKTsKIAorI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgLy8gRklYTUU6IFdlIHNob3VsZCByZWZhY3RvciBj
b2RlIHRvIGdvIGZyb20gV2ViUHJvY2VzcyAtPiBHUFVQcm9jZXNzIC0+IFVJUHJvY2VzcyB3aGVu
IGdldFVzZXJNZWRpYSBpcyBjYWxsZWQgaW5zdGVhZCBvZiBnb2luZyBmcm9tIFdlYlByb2Nlc3Mg
LT4gVUlQcm9jZXNzIGRpcmVjdGx5LgorICAgIGF1dG8gYWNjZXNzID0gbV9tZWRpYUNhcHR1cmVB
Y2Nlc3NNYXAudGFrZShpZGVudGlmaWVyKTsKKyAgICBuZXdDb25uZWN0aW9uLT51cGRhdGVDYXB0
dXJlQWNjZXNzKGFjY2Vzcy5hbGxvd0F1ZGlvQ2FwdHVyZSwgYWNjZXNzLmFsbG93VmlkZW9DYXB0
dXJlLCBhY2Nlc3MuYWxsb3dEaXNwbGF5Q2FwdHVyZSk7CisjZW5kaWYKKwogICAgIEFTU0VSVCgh
bV93ZWJQcm9jZXNzQ29ubmVjdGlvbnMuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgIG1fd2Vi
UHJvY2Vzc0Nvbm5lY3Rpb25zLmFkZChpZGVudGlmaWVyLCBXVEZNb3ZlKG5ld0Nvbm5lY3Rpb24p
KTsKIApAQCAtMTc5LDYgKzE4NSwyMSBAQCB2b2lkIEdQVVByb2Nlc3M6OnNldE9yaWVudGF0aW9u
Rm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKQogICAgIGZvciAoYXV0byYgY29u
bmVjdGlvbiA6IG1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb25zLnZhbHVlcygpKQogICAgICAgICBjb25u
ZWN0aW9uLT5zZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZShvcmllbnRhdGlvbik7CiB9CisK
K3ZvaWQgR1BVUHJvY2Vzczo6dXBkYXRlQ2FwdHVyZUFjY2Vzcyhib29sIGFsbG93QXVkaW9DYXB0
dXJlLCBib29sIGFsbG93VmlkZW9DYXB0dXJlLCBib29sIGFsbG93RGlzcGxheUNhcHR1cmUsIFBy
b2Nlc3NJZGVudGlmaWVyIHByb2Nlc3NJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBjb25uZWN0aW9uID0gd2ViUHJvY2Vz
c0Nvbm5lY3Rpb24ocHJvY2Vzc0lEKSkgeworICAgICAgICBjb25uZWN0aW9uLT51cGRhdGVDYXB0
dXJlQWNjZXNzKGFsbG93QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYWxsb3dEaXNw
bGF5Q2FwdHVyZSk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0K
KworICAgIGF1dG8mIGFjY2VzcyA9IG1fbWVkaWFDYXB0dXJlQWNjZXNzTWFwLmFkZChwcm9jZXNz
SUQsIE1lZGlhQ2FwdHVyZUFjY2VzcyB7IGFsbG93QXVkaW9DYXB0dXJlLCBhbGxvd1ZpZGVvQ2Fw
dHVyZSwgYWxsb3dEaXNwbGF5Q2FwdHVyZSB9KS5pdGVyYXRvci0+dmFsdWU7CisgICAgYWNjZXNz
LmFsbG93QXVkaW9DYXB0dXJlIHw9IGFsbG93QXVkaW9DYXB0dXJlOworICAgIGFjY2Vzcy5hbGxv
d1ZpZGVvQ2FwdHVyZSB8PSBhbGxvd1ZpZGVvQ2FwdHVyZTsKKyAgICBhY2Nlc3MuYWxsb3dEaXNw
bGF5Q2FwdHVyZSB8PSBhbGxvd0Rpc3BsYXlDYXB0dXJlOworCisgICAgY29tcGxldGlvbkhhbmRs
ZXIoKTsKK30KICNlbmRpZgogCiB2b2lkIEdQVVByb2Nlc3M6OmFkZFNlc3Npb24oUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBHUFVQcm9jZXNzU2Vzc2lvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJz
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MuaCBiL1Nv
dXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9HUFVQcm9jZXNzLmgKaW5kZXggY2RjMDg0ZjUzMjhlZDQ1
NzIyMDc0MjMyYzgxMDA2OGQzMmU4ZmJlOC4uZDIwODkxNTk3ZDhlOTdjM2RlNGE3OWZjMGI2OTJl
NzU2NGFiZjY2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nl
c3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5oCkBAIC05OCwx
MSArOTgsMjEgQEAgcHJpdmF0ZToKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIHZvaWQg
c2V0TW9ja0NhcHR1cmVEZXZpY2VzRW5hYmxlZChib29sKTsKICAgICB2b2lkIHNldE9yaWVudGF0
aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0aW9uKTsKKyAgICB2b2lkIHVwZGF0
ZUNhcHR1cmVBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2Fw
dHVyZSwgYm9vbCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmll
ciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKICNlbmRpZgogCiAgICAgLy8gQ29ubmVj
dGlvbnMgdG8gV2ViUHJvY2Vzc2VzLgogICAgIEhhc2hNYXA8V2ViQ29yZTo6UHJvY2Vzc0lkZW50
aWZpZXIsIFJlZjxHUFVDb25uZWN0aW9uVG9XZWJQcm9jZXNzPj4gbV93ZWJQcm9jZXNzQ29ubmVj
dGlvbnM7CiAKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHN0cnVjdCBNZWRpYUNhcHR1
cmVBY2Nlc3MgeworICAgICAgICBib29sIGFsbG93QXVkaW9DYXB0dXJlIHsgZmFsc2UgfTsKKyAg
ICAgICAgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSB7IGZhbHNlIH07CisgICAgICAgIGJvb2wgYWxs
b3dEaXNwbGF5Q2FwdHVyZSB7IGZhbHNlIH07CisgICAgfTsKKyAgICBIYXNoTWFwPFdlYkNvcmU6
OlByb2Nlc3NJZGVudGlmaWVyLCBNZWRpYUNhcHR1cmVBY2Nlc3M+IG1fbWVkaWFDYXB0dXJlQWNj
ZXNzTWFwOworI2VuZGlmCisKICAgICBzdHJ1Y3QgR1BVU2Vzc2lvbiB7CiAgICAgICAgIFN0cmlu
ZyBtZWRpYUNhY2hlRGlyZWN0b3J5OwogI2lmIEVOQUJMRShMRUdBQ1lfRU5DUllQVEVEX01FRElB
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL0dQVVByb2Nlc3MubWVzc2Fn
ZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgpp
bmRleCA3NzZjOGU4MDgzNzY1Y2NiYTgxZDk4Njg3M2JkODUwNmU3MjNmYTM5Li4zZjBiZjgzMWM5
YmY4ODk1MGMzYmJjMDI2NjRhMTQ0M2JlYmY3ZTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0dQVVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvR1BVUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtMzgsNiArMzgsNyBAQCBtZXNzYWdl
cyAtPiBHUFVQcm9jZXNzIHsKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIFNldE1vY2tD
YXB0dXJlRGV2aWNlc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpCiAgICAgU2V0T3JpZW50YXRpb25G
b3JNZWRpYUNhcHR1cmUodWludDY0X3Qgb3JpZW50YXRpb24pOworICAgIFVwZGF0ZUNhcHR1cmVB
Y2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVvQ2FwdHVyZSwgYm9v
bCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBwcm9jZXNz
SUQpIC0+ICgpIEFzeW5jCiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvVXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmNwcApp
bmRleCBkMWU2Yjk5ZWRmZTkwMWIxODkwMzc2ODNkMTRhMDQ0ZjQwNzBhNTJmLi5hZmQxYzYwMDU2
NDE1MGE0OTk5ZTU2N2E5NWE3MmE3M2UzNjlkZDI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9Vc2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5
LmNwcApAQCAtMTc5LDYgKzE3OSw5IEBAIFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHk6On5V
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5KCkKIAogdm9pZCBVc2VyTWVkaWFDYXB0dXJlTWFu
YWdlclByb3h5OjpjcmVhdGVNZWRpYVNvdXJjZUZvckNhcHR1cmVEZXZpY2VXaXRoQ29uc3RyYWlu
dHMoUmVhbHRpbWVNZWRpYVNvdXJjZUlkZW50aWZpZXIgaWQsIGNvbnN0IENhcHR1cmVEZXZpY2Um
IGRldmljZSwgU3RyaW5nJiYgaGFzaFNhbHQsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGNvbnN0
cmFpbnRzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wgc3VjY2VlZGVkLCBTdHJpbmcgaW52
YWxpZENvbnN0cmFpbnRzLCBXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlU2V0dGluZ3MmJiwg
V2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNhcGFiaWxpdGllcyYmKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKIHsKKyAgICBpZiAoIW1fY29ubmVjdGlvblByb3h5LT53aWxsU3RhcnRDYXB0dXJl
KGRldmljZS50eXBlKCkpKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoZmFsc2Us
ICJSZXF1ZXN0IGlzIG5vdCBhbGxvd2VkIl9zLCBSZWFsdGltZU1lZGlhU291cmNlU2V0dGluZ3Mg
eyB9LCB7IH0pOworCiAgICAgQ2FwdHVyZVNvdXJjZU9yRXJyb3Igc291cmNlT3JFcnJvcjsKICAg
ICBzd2l0Y2ggKGRldmljZS50eXBlKCkpIHsKICAgICBjYXNlIFdlYkNvcmU6OkNhcHR1cmVEZXZp
Y2U6OkRldmljZVR5cGU6Ok1pY3JvcGhvbmU6CkBAIC0xODYsMTAgKzE4OSw4IEBAIHZvaWQgVXNl
ck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eTo6Y3JlYXRlTWVkaWFTb3VyY2VGb3JDYXB0dXJlRGV2
aWNlV2l0aENvbnN0cmFpCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgV2ViQ29yZTo6Q2FwdHVy
ZURldmljZTo6RGV2aWNlVHlwZTo6Q2FtZXJhOgogICAgICAgICBzb3VyY2VPckVycm9yID0gUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2luZ2xldG9uKCkudmlkZW9DYXB0dXJlRmFjdG9yeSgp
LmNyZWF0ZVZpZGVvQ2FwdHVyZVNvdXJjZShkZXZpY2UsIFdURk1vdmUoaGFzaFNhbHQpLCAmY29u
c3RyYWludHMpOwotICAgICAgICBpZiAoc291cmNlT3JFcnJvcikgeworICAgICAgICBpZiAoc291
cmNlT3JFcnJvcikKICAgICAgICAgICAgIHNvdXJjZU9yRXJyb3IuY2FwdHVyZVNvdXJjZS0+bW9u
aXRvck9yaWVudGF0aW9uKG1fb3JpZW50YXRpb25Ob3RpZmllcik7Ci0gICAgICAgICAgICBtX2Nv
bm5lY3Rpb25Qcm94eS0+d2lsbFN0YXJ0Q2FtZXJhQ2FwdHVyZSgpOwotICAgICAgICB9CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6
U2NyZWVuOgogICAgIGNhc2UgV2ViQ29yZTo6Q2FwdHVyZURldmljZTo6RGV2aWNlVHlwZTo6V2lu
ZG93OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNlck1lZGlh
Q2FwdHVyZU1hbmFnZXJQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVXNl
ck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5oCmluZGV4IDJjZDEwMjcxMDU5ZjYzNjY5YzA5YzJl
YzlhMjFhNzBkYWRjMjQ0YWIuLjc5NDk4ZWU0NWI4MjJlMjY0YjA0YWRjZjg5MDYwYmYxZDA3MTEw
NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1VzZXJNZWRpYUNh
cHR1cmVNYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9V
c2VyTWVkaWFDYXB0dXJlTWFuYWdlclByb3h5LmgKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRl
ICJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCiAjaW5jbHVkZSAi
VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXIuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0NhcHR1cmVEZXZp
Y2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL09yaWVudGF0aW9uTm90aWZpZXIuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL1JlYWx0aW1lTWVkaWFTb3VyY2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1JlYWx0
aW1lTWVkaWFTb3VyY2VJZGVudGlmaWVyLmg+CkBAIC01Myw3ICs1NCw3IEBAIHB1YmxpYzoKICAg
ICAgICAgdmlydHVhbCB2b2lkIGFkZE1lc3NhZ2VSZWNlaXZlcihJUEM6OlN0cmluZ1JlZmVyZW5j
ZSwgSVBDOjpNZXNzYWdlUmVjZWl2ZXImKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCByZW1v
dmVNZXNzYWdlUmVjZWl2ZXIoSVBDOjpTdHJpbmdSZWZlcmVuY2UpID0gMDsKICAgICAgICAgdmly
dHVhbCBJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24oKSA9IDA7Ci0gICAgICAgIHZpcnR1YWwg
dm9pZCB3aWxsU3RhcnRDYW1lcmFDYXB0dXJlKCkgeyB9CisgICAgICAgIHZpcnR1YWwgYm9vbCB3
aWxsU3RhcnRDYXB0dXJlKFdlYkNvcmU6OkNhcHR1cmVEZXZpY2U6OkRldmljZVR5cGUpIGNvbnN0
ID0gMDsKICAgICAgICAgdmlydHVhbCBMb2dnZXImIGxvZ2dlcigpID0gMDsKICAgICB9OwogICAg
IGV4cGxpY2l0IFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyUHJveHkoVW5pcXVlUmVmPENvbm5lY3Rp
b25Qcm94eT4mJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BV
UHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNz
UHJveHkuY3BwCmluZGV4IDI0MzM4N2FhYWE0Nzk2NzU5NDE1YzFjMGM2NTFjOGJiY2MyYTcwODQu
LjY4NjkwNDJlN2Y5N2EwNzIzNGYwYmY0OGQzNGExYTk4OWZmMDUyYTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0dQVS9HUFVQcm9jZXNzUHJveHkuY3BwCkBAIC0xNTQsNiArMTU0
LDExIEBAIHZvaWQgR1BVUHJvY2Vzc1Byb3h5OjpzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVy
ZSh1aW50NjRfdCBvcmllbnRhdGlvbikKICAgICBtX29yaWVudGF0aW9uID0gb3JpZW50YXRpb247
CiAgICAgc2VuZChNZXNzYWdlczo6R1BVUHJvY2Vzczo6U2V0T3JpZW50YXRpb25Gb3JNZWRpYUNh
cHR1cmUgeyBvcmllbnRhdGlvbiB9LCAwKTsKIH0KKwordm9pZCBHUFVQcm9jZXNzUHJveHk6OnVw
ZGF0ZUNhcHR1cmVBY2Nlc3MoYm9vbCBhbGxvd0F1ZGlvQ2FwdHVyZSwgYm9vbCBhbGxvd1ZpZGVv
Q2FwdHVyZSwgYm9vbCBhbGxvd0Rpc3BsYXlDYXB0dXJlLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRp
ZmllciBwcm9jZXNzSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OkdQVVByb2Nlc3M6OlVw
ZGF0ZUNhcHR1cmVBY2Nlc3MgeyBhbGxvd0F1ZGlvQ2FwdHVyZSwgYWxsb3dWaWRlb0NhcHR1cmUs
IGFsbG93RGlzcGxheUNhcHR1cmUsIHByb2Nlc3NJRCB9LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKSk7Cit9CiAjZW5kaWYKIAogdm9pZCBHUFVQcm9jZXNzUHJveHk6OmdldExhdW5jaE9wdGlv
bnMoUHJvY2Vzc0xhdW5jaGVyOjpMYXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpb25zKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvR1BVL0dQVVByb2Nlc3NQcm94eS5oCmluZGV4IGE4NWYyYjIw
MTBhNmU0YjMxMTY0ZDZjNjBmNTAyZDA0ZjlhZTk1NTEuLjkwMGRmMGJlNTkzZDgzZTU0YjZiZmQ4
MjUxMjgzMDY0NGJkNmFmMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0dQ
VS9HUFVQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9HUFUvR1BV
UHJvY2Vzc1Byb3h5LmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgogI2lmIEVOQUJMRShNRURJ
QV9TVFJFQU0pCiAgICAgdm9pZCBzZXRVc2VNb2NrQ2FwdHVyZURldmljZXMoYm9vbCk7CiAgICAg
dm9pZCBzZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSh1aW50NjRfdCBvcmllbnRhdGlvbik7
CisgICAgdm9pZCB1cGRhdGVDYXB0dXJlQWNjZXNzKGJvb2wgYWxsb3dBdWRpb0NhcHR1cmUsIGJv
b2wgYWxsb3dWaWRlb0NhcHR1cmUsIGJvb2wgYWxsb3dEaXNwbGF5Q2FwdHVyZSwgV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAjZW5kaWYK
IAogICAgIHZvaWQgcmVtb3ZlU2Vzc2lvbihQQUw6OlNlc3Npb25JRCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Vc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXJQcm94eS5jcHAKaW5kZXggOTdhMWU0MjJlYTAwZDY5MDM4ZjFkMzlhNGNjMTkx
MDlhZDM5ZGZiOS4uOTE1NTM5ZmQ4ZDdmNjVmMTQzNTFhZDJmNTA3NzUwZjM3NTA0NTFiNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1VzZXJNZWRp
YVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmNwcApAQCAtMjM2LDMyICsyMzYsMzkgQEAg
dm9pZCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6ZmluaXNoR3JhbnRp
bmdSZXF1ZXN0KFVzZXJNZWRpYVBlcm0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlm
IChyZXF1ZXN0LnJlcXVlc3RUeXBlKCkgPT0gTWVkaWFTdHJlYW1SZXF1ZXN0OjpUeXBlOjpVc2Vy
TWVkaWEpCi0gICAgICAgIG1fZ3JhbnRlZFJlcXVlc3RzLmFwcGVuZChtYWtlUmVmKHJlcXVlc3Qp
KTsKKyAgICBtX3BhZ2Uud2lsbFN0YXJ0Q2FwdHVyZShyZXF1ZXN0LCBbdGhpcywgd2Vha1RoaXMg
PSBtYWtlV2Vha1B0cih0aGlzKSwgc3Ryb25nUmVxdWVzdCA9IG1ha2VSZWYocmVxdWVzdCldKCkg
bXV0YWJsZSB7CisgICAgICAgIGlmICghd2Vha1RoaXMpCisgICAgICAgICAgICByZXR1cm47CiAK
LSAgICAvLyBGSVhNRTogbV9oYXNGaWx0ZXJlZERldmljZUxpc3Qgd2lsbCB0cmlnZ2VyIG9uZGV2
aWNlY2hhbmdlIGV2ZW50cyBmb3IgdmFyaW91cyBkb2N1bWVudHMgZnJvbSBkaWZmZXJlbnQgb3Jp
Z2lucy4KLSAgICBpZiAobV9oYXNGaWx0ZXJlZERldmljZUxpc3QpCi0gICAgICAgIGNhcHR1cmVE
ZXZpY2VzQ2hhbmdlZChQZXJtaXNzaW9uSW5mbzo6R3JhbnRlZCk7Ci0gICAgbV9oYXNGaWx0ZXJl
ZERldmljZUxpc3QgPSBmYWxzZTsKKyAgICAgICAgYXV0byYgcmVxdWVzdCA9IHN0cm9uZ1JlcXVl
c3QuZ2V0KCk7CiAKLSAgICArK21faGFzUGVuZGluZ0NhcHR1cmU7CisgICAgICAgIGlmIChyZXF1
ZXN0LnJlcXVlc3RUeXBlKCkgPT0gTWVkaWFTdHJlYW1SZXF1ZXN0OjpUeXBlOjpVc2VyTWVkaWEp
CisgICAgICAgICAgICBtX2dyYW50ZWRSZXF1ZXN0cy5hcHBlbmQobWFrZVJlZihyZXF1ZXN0KSk7
CiAKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGFuZGxlOworICAgICAgICAvLyBGSVhN
RTogbV9oYXNGaWx0ZXJlZERldmljZUxpc3Qgd2lsbCB0cmlnZ2VyIG9uZGV2aWNlY2hhbmdlIGV2
ZW50cyBmb3IgdmFyaW91cyBkb2N1bWVudHMgZnJvbSBkaWZmZXJlbnQgb3JpZ2lucy4KKyAgICAg
ICAgaWYgKG1faGFzRmlsdGVyZWREZXZpY2VMaXN0KQorICAgICAgICAgICAgY2FwdHVyZURldmlj
ZXNDaGFuZ2VkKFBlcm1pc3Npb25JbmZvOjpHcmFudGVkKTsKKyAgICAgICAgbV9oYXNGaWx0ZXJl
ZERldmljZUxpc3QgPSBmYWxzZTsKKworICAgICAgICArK21faGFzUGVuZGluZ0NhcHR1cmU7CisK
KyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhhbmRsZTsKICNpZiBQTEFURk9STShD
T0NPQSkKLSAgICBpZiAoIW1faGFzQ3JlYXRlZFNhbmRib3hFeHRlbnNpb25Gb3JUQ0NEKSB7Ci0g
ICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5h
cHBsZS50Y2NkIiwgbV9wYWdlLnByb2Nlc3MoKS5jb25uZWN0aW9uKCktPmdldEF1ZGl0VG9rZW4o
KSwgaGFuZGxlKTsKLSAgICAgICAgbV9oYXNDcmVhdGVkU2FuZGJveEV4dGVuc2lvbkZvclRDQ0Qg
PSB0cnVlOwotICAgIH0KKyAgICAgICAgaWYgKCFtX2hhc0NyZWF0ZWRTYW5kYm94RXh0ZW5zaW9u
Rm9yVENDRCkgeworICAgICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9y
TWFjaExvb2t1cCgiY29tLmFwcGxlLnRjY2QiLCBtX3BhZ2UucHJvY2VzcygpLmNvbm5lY3Rpb24o
KS0+Z2V0QXVkaXRUb2tlbigpLCBoYW5kbGUpOworICAgICAgICAgICAgbV9oYXNDcmVhdGVkU2Fu
ZGJveEV4dGVuc2lvbkZvclRDQ0QgPSB0cnVlOworICAgICAgICB9CiAjZW5kaWYKIAotICAgIG1f
cGFnZS5wcm9jZXNzKCkuY29ubmVjdGlvbigpLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
OldlYlBhZ2U6OlVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQgeyByZXF1ZXN0LnVzZXJNZWRpYUlE
KCksIHJlcXVlc3QuYXVkaW9EZXZpY2UoKSwgcmVxdWVzdC52aWRlb0RldmljZSgpLCByZXF1ZXN0
LmRldmljZUlkZW50aWZpZXJIYXNoU2FsdCgpLCBoYW5kbGUgfSwgW3RoaXMsIHdlYWtUaGlzID0g
bWFrZVdlYWtQdHIodGhpcyldIHsKLSAgICAgICAgaWYgKCF3ZWFrVGhpcykKLSAgICAgICAgICAg
IHJldHVybjsKLSAgICAgICAgaWYgKCEtLW1faGFzUGVuZGluZ0NhcHR1cmUpCi0gICAgICAgICAg
ICBVc2VyTWVkaWFQcm9jZXNzTWFuYWdlcjo6c2luZ2xldG9uKCkucmV2b2tlU2FuZGJveEV4dGVu
c2lvbnNJZk5lZWRlZChwYWdlKCkucHJvY2VzcygpKTsKLSAgICB9LCBtX3BhZ2Uud2ViUGFnZUlE
KCkpOworICAgICAgICBtX3BhZ2UucHJvY2VzcygpLmNvbm5lY3Rpb24oKS0+c2VuZFdpdGhBc3lu
Y1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpVc2VyTWVkaWFBY2Nlc3NXYXNHcmFudGVkIHsgcmVx
dWVzdC51c2VyTWVkaWFJRCgpLCByZXF1ZXN0LmF1ZGlvRGV2aWNlKCksIHJlcXVlc3QudmlkZW9E
ZXZpY2UoKSwgcmVxdWVzdC5kZXZpY2VJZGVudGlmaWVySGFzaFNhbHQoKSwgaGFuZGxlIH0sIFt0
aGlzLCB3ZWFrVGhpcyA9IFdURk1vdmUod2Vha1RoaXMpXSB7CisgICAgICAgICAgICBpZiAoIXdl
YWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIGlmICghLS1tX2hh
c1BlbmRpbmdDYXB0dXJlKQorICAgICAgICAgICAgICAgIFVzZXJNZWRpYVByb2Nlc3NNYW5hZ2Vy
OjpzaW5nbGV0b24oKS5yZXZva2VTYW5kYm94RXh0ZW5zaW9uc0lmTmVlZGVkKHBhZ2UoKS5wcm9j
ZXNzKCkpOworICAgICAgICB9LCBtX3BhZ2Uud2ViUGFnZUlEKCkpOwogCi0gICAgcHJvY2Vzc05l
eHRVc2VyTWVkaWFSZXF1ZXN0SWZOZWVkZWQoKTsKKyAgICAgICAgcHJvY2Vzc05leHRVc2VyTWVk
aWFSZXF1ZXN0SWZOZWVkZWQoKTsKKyAgICB9KTsKIH0KIAogdm9pZCBVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXJQcm94eTo6cmVzZXRBY2Nlc3MoT3B0aW9uYWw8RnJhbWVJZGVudGlm
aWVyPiBmcmFtZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5k
ZXggMjZlZmJiMzkwYjM4MTYzZTk4ZjY4ODM5MWNmNzQ1M2M3OTcwYTkzZS4uZjZlNjQxZTBlMjJl
Yjg2NGYwZjgxOGE5ODM0MzcwOTcwNDdjYWM4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuY3BwCkBAIC03OTEwLDYgKzc5MTAsMjAgQEAgdm9pZCBXZWJQYWdlUHJveHk6
OnNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWRPdmVycmlkZShPcHRpb25hbDxib29sPiBlbmFi
bGVkKQogewogICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLnNldE1vY2tD
YXB0dXJlRGV2aWNlc0VuYWJsZWRPdmVycmlkZShlbmFibGVkKTsKIH0KKwordm9pZCBXZWJQYWdl
UHJveHk6OndpbGxTdGFydENhcHR1cmUoY29uc3QgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RQ
cm94eSYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQorewor
I2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAgICBpZiAoIXByZWZlcmVuY2VzKCkuY2FwdHVyZVZp
ZGVvSW5HUFVQcm9jZXNzRW5hYmxlZCgpICYmICFwcmVmZXJlbmNlcygpLmNhcHR1cmVBdWRpb0lu
R1BVUHJvY2Vzc0VuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7CisKKyAgICBh
dXRvJiBncHVQcm9jZXNzID0gR1BVUHJvY2Vzc1Byb3h5OjpzaW5nbGV0b24oKTsKKyAgICBncHVQ
cm9jZXNzLnVwZGF0ZUNhcHR1cmVBY2Nlc3MocmVxdWVzdC5yZXF1aXJlc0F1ZGlvQ2FwdHVyZSgp
LCByZXF1ZXN0LnJlcXVpcmVzVmlkZW9DYXB0dXJlKCksIHJlcXVlc3QucmVxdWlyZXNEaXNwbGF5
Q2FwdHVyZSgpLCBtX3Byb2Nlc3MtPmNvcmVQcm9jZXNzSWRlbnRpZmllcigpLCBXVEZNb3ZlKGNh
bGxiYWNrKSk7CisjZWxzZQorICAgIGNhbGxiYWNrKCk7CisjZW5kaWYKK30KKwogI2VuZGlmCiAK
IHZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0VXNlck1lZGlhUGVybWlzc2lvbkZvckZyYW1lKHVp
bnQ2NF90IHVzZXJNZWRpYUlELCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgV2ViQ29y
ZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiAgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLCBjb25z
dCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRPcmlnaW5EYXRh
LCBXZWJDb3JlOjpNZWRpYVN0cmVhbVJlcXVlc3QmJiByZXF1ZXN0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBjN2I2ZWM0ODdhNjZiYzkyYjJlYjdmNThkODZjOTU2
NDZjYWRiZmM0Li5lMDQwZTA0MmVlMjI4YWUzMmVjNjRkMzM2NWQ1NmNlZDE3Y2YzN2M1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMjk1LDIzICsyOTUsMjQgQEAg
Y2xhc3MgV2ViQ29udGV4dE1lbnVQcm94eTsKIGNsYXNzIFdlYkVkaXRDb21tYW5kUHJveHk7CiBj
bGFzcyBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5OwogY2xhc3MgUGxheWJhY2tTZXNzaW9uTWFu
YWdlclByb3h5OwotY2xhc3MgV2ViTmF2aWdhdGlvblN0YXRlOworY2xhc3MgVXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RQcm94eTsKIGNsYXNzIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTsK
IGNsYXNzIFdlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRvclByb3h5OwogY2xhc3MgV2ViQmFja0Zv
cndhcmRDYWNoZTsKK2NsYXNzIFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXJQcm94
eTsKIGNsYXNzIFdlYktleWJvYXJkRXZlbnQ7Ci1jbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyOwog
Y2xhc3MgV2ViTW91c2VFdmVudDsKK2NsYXNzIFdlYk5hdmlnYXRpb25TdGF0ZTsKIGNsYXNzIFdl
Yk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyUHJveHk7CiBjbGFzcyBXZWJQYWdlRGVidWdnYWJsZTsK
IGNsYXNzIFdlYlBhZ2VHcm91cDsKIGNsYXNzIFdlYlBhZ2VJbnNwZWN0b3JDb250cm9sbGVyOwog
Y2xhc3MgV2ViUHJvY2Vzc1Byb3h5OworY2xhc3MgV2ViVVJMU2NoZW1lSGFuZGxlcjsKIGNsYXNz
IFdlYlVzZXJDb250ZW50Q29udHJvbGxlclByb3h5OworY2xhc3MgV2ViVmlld0RpZE1vdmVUb1dp
bmRvd09ic2VydmVyOwogY2xhc3MgV2ViV2hlZWxFdmVudDsKIGNsYXNzIFdlYnNpdGVEYXRhU3Rv
cmU7Ci1jbGFzcyBXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHk7Ci1jbGFz
cyBXZWJWaWV3RGlkTW92ZVRvV2luZG93T2JzZXJ2ZXI7CiAKIHN0cnVjdCBBdHRyaWJ1dGVkU3Ry
aW5nOwogc3RydWN0IFdlYkJhY2tGb3J3YXJkTGlzdENvdW50czsKQEAgLTE2NzYsNiArMTY3Nyw3
IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdm9pZCBzZXRNb2Nr
Q2FwdHVyZURldmljZXNFbmFibGVkT3ZlcnJpZGUoT3B0aW9uYWw8Ym9vbD4pOworICAgIHZvaWQg
d2lsbFN0YXJ0Q2FwdHVyZShjb25zdCBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdFByb3h5Jiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKICNlbmRpZgogCiAgICAgdm9pZCBtYXliZUlu
aXRpYWxpemVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKFdlYlByb2Nlc3NQcm94eSYsIGNvbnN0IFVS
TCYsIGNvbnN0IFVSTCYgcmVzb3VyY2VEaXJlY3RvcnlVUkwsIFNhbmRib3hFeHRlbnNpb246Okhh
bmRsZSYsIGJvb2wgY2hlY2tBc3N1bWVkUmVhZEFjY2Vzc1RvUmVzb3VyY2VVUkwgPSB0cnVlKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCmluZGV4IGU0NjIz
N2UwYWM3ZWE2NzA2OWNiYzA5ZTIxNDI4MjY5NTdmZjc1YWQuLjRlMTJjNDY5YzE2OGY3MmM1NGY5
ZDA5MGIzNzk5ZjM4OTZkYTU4OGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Byb3h5LmNwcApAQCAtMTY4LDYgKzE2OCwxMSBAQCBwcml2YXRlOgogICAgICAgICB9CiAg
ICAgICAgIHJldHVybiAqbV9sb2dnZXI7CiAgICAgfQorICAgIGJvb2wgd2lsbFN0YXJ0Q2FwdHVy
ZShDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlKSBjb25zdCBmaW5hbAorICAgIHsKKyAgICAgICAg
Ly8gRklYTUU6IFdlIHNob3VsZCB2YWxpZGF0ZSB0aGlzIGlzIGdyYW50ZWQuCisgICAgICAgIHJl
dHVybiB0cnVlOworICAgIH0KIAogICAgIFJlZlB0cjxMb2dnZXI+IG1fbG9nZ2VyOwogICAgIFdl
YlByb2Nlc3NQcm94eSYgbV9wcm9jZXNzOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>