<?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>225643</bug_id>
          
          <creation_ts>2021-05-11 01:55:09 -0700</creation_ts>
          <short_desc>Enumerate AVCaptureDevice list in a background thread</short_desc>
          <delta_ts>2021-05-12 01:05:28 -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>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hta</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1758853</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-11 01:55:09 -0700</bug_when>
    <thetext>Enumerate AVCaptureDevice list in a background thread</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758854</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-11 01:55:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/77820002&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758869</commentid>
    <comment_count>2</comment_count>
      <attachid>428262</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-05-11 04:14:15 -0700</bug_when>
    <thetext>Created attachment 428262
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759193</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-12 01:05:27 -0700</bug_when>
    <thetext>Committed r277361 (237619@main): &lt;https://commits.webkit.org/237619@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428262.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428262</attachid>
            <date>2021-05-11 04:14:15 -0700</date>
            <delta_ts>2021-05-12 01:05:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225643-20210511131413.patch</filename>
            <type>text/plain</type>
            <size>24258</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3MjU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTExZTAxNTI5YmI1YTky
ZGEwY2FhMjU3M2RkNTllZDRhZjkyMjZkYy4uMGZiOWQyMThlM2NhM2ZiYzQyYTZjMDEyY2M3NGI2
Zjg0MGY1MWViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIxLTA1LTExICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBFbnVtZXJhdGUgQVZDYXB0
dXJlRGV2aWNlIGxpc3QgaW4gYSBiYWNrZ3JvdW5kIHRocmVhZAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NjQzCisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS83NzgyMDAwMj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBFbnVtZXJhdGUgQVZDYXB0dXJlRGV2aWNlIGluIGEgYmFja2dyb3VuZCBxdWV1ZSBh
c3luY2hyb25vdXNseS4KKyAgICAgICAgRGVsYXkgZ2V0VXNlck1lZGlhIGFuZCBlbnVtZXJhdGVE
ZXZpY2VzIHVudGlsIHRoaXMgaXMgY29tcGxldGVkLgorCisgICAgICAgIFVwZGF0ZSBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyIGFjY29yZGluZ2x5IGFuZCBpbnRyb2R1Y2UgUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6ZW51bWVyYXRlRGV2aWNlcyBmb3IgdGhhdCBwdXJwb3NlLgorICAgICAg
ICBSZXBsYWNlIGdldENhcHR1cmVEZXZpY2VzIGJ5IGNvbXB1dGVDYXB0dXJlRGV2aWNlcyB0byBk
byB0aGUgYXN5bmMgY29tcHV0YXRpb24uCisgICAgICAgIENvbnRpbnVlIHVzaW5nIGNhcHR1cmVE
ZXZpY2VzKCkgZ2V0dGVycy4KKworICAgICAgICBNYW51YWxseSB0ZXN0ZWQuCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpDYXB0dXJlRGV2aWNlOjpDYXB0dXJlRGV2aWNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNhcHR1
cmVEZXZpY2U6Omlzb2xhdGVkQ29weSk6CisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0v
Q2FwdHVyZURldmljZU1hbmFnZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9S
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OmdldE1lZGlhU3RyZWFtRGV2aWNlcyk6CisgICAgICAgIChXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjplbnVtZXJhdGVEZXZpY2VzKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZhbGlkYXRlUmVxdWVzdENv
bnN0cmFpbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OnZhbGlkYXRlUmVxdWVzdENvbnN0cmFpbnRzQWZ0ZXJFbnVtZXJhdGlvbik6CisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VGYWN0b3J5Lmg6Cisg
ICAgICAgIChXZWJDb3JlOjpBdWRpb0NhcHR1cmVGYWN0b3J5Ojpjb21wdXRlU3BlYWtlckRldmlj
ZXMgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2UubW06CisgICAgICAgIChXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNh
cHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZSk6CisgICAgICAgICogcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0
dXJlRGV2aWNlTWFuYWdlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OkFWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZU1hbmFnZXI6OnNjaGVkdWxlVXBkYXRlQ2FwdHVyZURldmljZXMpOgorICAgICAg
ICAoV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29tcHV0ZUNh
cHR1cmVEZXZpY2VzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQVZDYXB0
dXJlRGV2aWNlTWFuYWdlci5oOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9B
VkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tOgorICAgICAgICAoV2ViQ29yZTo6QVZDYXB0dXJlRGV2
aWNlTWFuYWdlcjo6Y29tcHV0ZUNhcHR1cmVEZXZpY2VzKToKKyAgICAgICAgKFdlYkNvcmU6OkFW
Q2FwdHVyZURldmljZU1hbmFnZXI6OmNhcHR1cmVEZXZpY2VzKToKKyAgICAgICAgKFdlYkNvcmU6
OkFWQ2FwdHVyZURldmljZU1hbmFnZXI6OnVwZGF0ZUNhY2hlZEFWQ2FwdHVyZURldmljZXMpOgor
ICAgICAgICAoV2ViQ29yZTo6QVZDYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmV0cmlldmVDYXB0dXJl
RGV2aWNlcyk6CisgICAgICAgIChXZWJDb3JlOjpBVkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZy
ZXNoQ2FwdHVyZURldmljZXMpOgorICAgICAgICAoV2ViQ29yZTo6QVZDYXB0dXJlRGV2aWNlTWFu
YWdlcjo6QVZDYXB0dXJlRGV2aWNlTWFuYWdlcik6CisKIDIwMjEtMDUtMTAgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBhbiBpbnRlcm5hbCB1
bml0IHRvIHJlbmRlciBhdWRpbyBNZWRpYVN0cmVhbVRyYWNrKHMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9DYXB0dXJlRGV2aWNlLmgKaW5kZXggMTVjNmQ3
M2Y2MjFjNDllZmY4ODBlOWI4OWVlZGVjZjBhZDg1ZjA4Mi4uOWE4OGQxNmViYmY5M2VjNWVlZDY5
M2MxNzFhMjU4N2Y5MmUxNzllZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2UuaApAQCAtMzMsMTEgKzMzLDE0IEBAIGNsYXNzIENh
cHR1cmVEZXZpY2UgewogcHVibGljOgogICAgIGVudW0gY2xhc3MgRGV2aWNlVHlwZSB7IFVua25v
d24sIE1pY3JvcGhvbmUsIFNwZWFrZXIsIENhbWVyYSwgU2NyZWVuLCBXaW5kb3cgfTsKIAotICAg
IENhcHR1cmVEZXZpY2UoY29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SWQsIERldmljZVR5cGUgdHlw
ZSwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3QgU3RyaW5nJiBncm91cElkID0gZW1wdHlTdHJp
bmcoKSkKKyAgICBDYXB0dXJlRGV2aWNlKGNvbnN0IFN0cmluZyYgcGVyc2lzdGVudElkLCBEZXZp
Y2VUeXBlIHR5cGUsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IFN0cmluZyYgZ3JvdXBJZCA9
IGVtcHR5U3RyaW5nKCksIGJvb2wgaXNFbmFibGVkID0gZmFsc2UsIGJvb2wgaXNEZWZhdWx0ID0g
ZmFsc2UsIGJvb2wgaXNNb2NrID0gZmFsc2UpCiAgICAgICAgIDogbV9wZXJzaXN0ZW50SWQocGVy
c2lzdGVudElkKQogICAgICAgICAsIG1fdHlwZSh0eXBlKQogICAgICAgICAsIG1fbGFiZWwobGFi
ZWwpCiAgICAgICAgICwgbV9ncm91cElkKGdyb3VwSWQpCisgICAgICAgICwgbV9lbmFibGVkKGlz
RW5hYmxlZCkKKyAgICAgICAgLCBtX2RlZmF1bHQoaXNEZWZhdWx0KQorICAgICAgICAsIG1faXNN
b2NrRGV2aWNlKGlzTW9jaykKICAgICB7CiAgICAgfQogCkBAIC03MSw2ICs3NCw4IEBAIHB1Ymxp
YzoKIAogICAgIGV4cGxpY2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX3R5cGUg
IT0gRGV2aWNlVHlwZTo6VW5rbm93bjsgfQogCisgICAgQ2FwdHVyZURldmljZSBpc29sYXRlZENv
cHkoKSAmJjsKKwogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgdGVtcGxhdGU8Y2xhc3Mg
RW5jb2Rlcj4KICAgICB2b2lkIGVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdApAQCAtMTYw
LDYgKzE2NSwxOSBAQCBpbmxpbmUgYm9vbCBoYXZlRGV2aWNlc0NoYW5nZWQoY29uc3QgVmVjdG9y
PENhcHR1cmVEZXZpY2U+JiBvbGREZXZpY2VzLCBjb25zdCBWZQogICAgIHJldHVybiBmYWxzZTsK
IH0KIAoraW5saW5lIENhcHR1cmVEZXZpY2UgQ2FwdHVyZURldmljZTo6aXNvbGF0ZWRDb3B5KCkg
JiYKK3sKKyAgICByZXR1cm4geworICAgICAgICBXVEZNb3ZlKG1fcGVyc2lzdGVudElkKS5pc29s
YXRlZENvcHkoKSwKKyAgICAgICAgbV90eXBlLAorICAgICAgICBXVEZNb3ZlKG1fbGFiZWwpLmlz
b2xhdGVkQ29weSgpLAorICAgICAgICBXVEZNb3ZlKG1fZ3JvdXBJZCkuaXNvbGF0ZWRDb3B5KCks
CisgICAgICAgIG1fZW5hYmxlZCwKKyAgICAgICAgbV9kZWZhdWx0LAorICAgICAgICBtX2lzTW9j
a0RldmljZQorICAgIH07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2lmIEVOQUJM
RShNRURJQV9TVFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vQ2FwdHVyZURldmljZU1hbmFnZXIuaAppbmRleCA3NjIwYWQyNTdmNDgzZTMz
MjU3NTA3Nzc3NTNiMGNhMzM0NjVmNTRkLi5jN2FmZmI2OTA4NzlhYzAwNTU3YTU4MzA0MGEzN2E4
MTZhYzgyMzg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9DYXB0dXJlRGV2aWNlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogY2xhc3MgV0VCQ09SRV9FWFBPUlQgQ2FwdHVyZURldmljZU1hbmFnZXIg
ewogcHVibGljOgogICAgIHZpcnR1YWwgY29uc3QgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBjYXB0
dXJlRGV2aWNlcygpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZ2V0Q2FwdHVyZURldmljZXMoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8Q2FwdHVyZURldmljZT4mJik+JiYgY2FsbGJhY2sp
IHsgY2FsbGJhY2soY29weVRvVmVjdG9yKGNhcHR1cmVEZXZpY2VzKCkpKTsgfTsKKyAgICB2aXJ0
dWFsIHZvaWQgY29tcHV0ZUNhcHR1cmVEZXZpY2VzKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4m
JiBjYWxsYmFjaykgeyBjYWxsYmFjaygpOyB9CiAgICAgdmlydHVhbCBPcHRpb25hbDxDYXB0dXJl
RGV2aWNlPiBjYXB0dXJlRGV2aWNlV2l0aFBlcnNpc3RlbnRJRChDYXB0dXJlRGV2aWNlOjpEZXZp
Y2VUeXBlLCBjb25zdCBTdHJpbmcmKSB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KIAogcHJvdGVj
dGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCA1NDI2YzA2MGYxYWYx
MmNjYjE0Nzk1NTQxYTRmMWIzYjA4Mjg2OTVhLi5kZjIxN2RiYWVjZDQ2MWE5ZDliZTM4ZjU1YmM3
OTM1NWRiMmIyYjE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzgs
NiArMzgsNyBAQAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSAi
TG9nZ2luZy5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgorI2luY2x1ZGUgPHd0
Zi9DYWxsYmFja0FnZ3JlZ2F0b3IuaD4KICNpbmNsdWRlIDx3dGYvU0hBMS5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CkBAIC0xMTksNDYgKzEyMCwxNiBAQCB2b2lkIFJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKFJlZjxjb25zdCBMb2dnZXI+JiYgbG9nZ2VyLCBO
ZQogCiB2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmdldE1lZGlhU3RyZWFtRGV2aWNl
cyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmKT4mJiBjb21w
bGV0aW9uKQogewotICAgIGNsYXNzIENhcHR1cmVEZXZpY2VBY2N1bXVsYXRvciA6IHB1YmxpYyBS
ZWZDb3VudGVkPENhcHR1cmVEZXZpY2VBY2N1bXVsYXRvcj4gewotICAgIHB1YmxpYzoKLSAgICAg
ICAgc3RhdGljIFJlZjxDYXB0dXJlRGV2aWNlQWNjdW11bGF0b3I+IGNyZWF0ZShDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmKT4mJiBjb21wbGV0aW9uKQotICAg
ICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDYXB0dXJlRGV2aWNlQWNj
dW11bGF0b3IoV1RGTW92ZShjb21wbGV0aW9uKSkpOwotICAgICAgICB9CisgICAgZW51bWVyYXRl
RGV2aWNlcyh0cnVlLCB0cnVlLCB0cnVlLCB0cnVlLCBbdGhpcywgY29tcGxldGlvbiA9IFdURk1v
dmUoY29tcGxldGlvbildKCkgbXV0YWJsZSB7CisgICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNl
PiByZXN1bHRzOwogCi0gICAgICAgIH5DYXB0dXJlRGV2aWNlQWNjdW11bGF0b3IoKQotICAgICAg
ICB7Ci0gICAgICAgICAgICBtX2NvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUobV9yZXN1bHRzKSk7
Ci0gICAgICAgIH0KKyAgICAgICAgcmVzdWx0cy5hcHBlbmRWZWN0b3IoYXVkaW9DYXB0dXJlRmFj
dG9yeSgpLmF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKS5jYXB0dXJlRGV2aWNlcygpKTsKKyAg
ICAgICAgcmVzdWx0cy5hcHBlbmRWZWN0b3IodmlkZW9DYXB0dXJlRmFjdG9yeSgpLnZpZGVvQ2Fw
dHVyZURldmljZU1hbmFnZXIoKS5jYXB0dXJlRGV2aWNlcygpKTsKKyAgICAgICAgcmVzdWx0cy5h
cHBlbmRWZWN0b3IoZGlzcGxheUNhcHR1cmVGYWN0b3J5KCkuZGlzcGxheUNhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkuY2FwdHVyZURldmljZXMoKSk7CisgICAgICAgIHJlc3VsdHMuYXBwZW5kVmVjdG9y
KGF1ZGlvQ2FwdHVyZUZhY3RvcnkoKS5zcGVha2VyRGV2aWNlcygpKTsKIAotICAgICAgICBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmKT4gYWNjdW11bGF0ZSgp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1h
a2VSZWYoKnRoaXMpXSAoVmVjdG9yPENhcHR1cmVEZXZpY2U+JiYgcmVzdWx0KSB7Ci0gICAgICAg
ICAgICAgICAgbV9yZXN1bHRzLmFwcGVuZFZlY3RvcihXVEZNb3ZlKHJlc3VsdCkpOwotICAgICAg
ICAgICAgfTsKLSAgICAgICAgfQotCi0gICAgcHJpdmF0ZToKLSAgICAgICAgZXhwbGljaXQgQ2Fw
dHVyZURldmljZUFjY3VtdWxhdG9yKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVmVjdG9yPENhcHR1
cmVEZXZpY2U+JiYpPiYmIGNvbXBsZXRpb24pCi0gICAgICAgICAgICA6IG1fY29tcGxldGlvbkhh
bmRsZXIoV1RGTW92ZShjb21wbGV0aW9uKSkKLSAgICAgICAgewotICAgICAgICB9Ci0KLSAgICAg
ICAgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8Q2FwdHVyZURldmljZT4mJik+IG1fY29t
cGxldGlvbkhhbmRsZXI7Ci0gICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBtX3Jlc3VsdHM7
Ci0gICAgfTsKLQotICAgIGF1dG8gYWNjdW11bGF0b3IgPSBDYXB0dXJlRGV2aWNlQWNjdW11bGF0
b3I6OmNyZWF0ZShbY29tcGxldGlvbiA9IFdURk1vdmUoY29tcGxldGlvbildIChhdXRvJiYgZGV2
aWNlcykgbXV0YWJsZSB7Ci0gICAgICAgIGRldmljZXMucmVtb3ZlQWxsTWF0Y2hpbmcoW10gKGF1
dG8mIGNhcHR1cmVEZXZpY2UpIHsKLSAgICAgICAgICAgIHJldHVybiAhY2FwdHVyZURldmljZS5l
bmFibGVkKCk7Ci0gICAgICAgIH0pOwotICAgICAgICBjb21wbGV0aW9uKFdURk1vdmUoZGV2aWNl
cykpOworICAgICAgICBjb21wbGV0aW9uKFdURk1vdmUocmVzdWx0cykpOwogICAgIH0pOwotCi0g
ICAgYXVkaW9DYXB0dXJlRmFjdG9yeSgpLmF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKS5nZXRD
YXB0dXJlRGV2aWNlcyhhY2N1bXVsYXRvci0+YWNjdW11bGF0ZSgpKTsKLSAgICB2aWRlb0NhcHR1
cmVGYWN0b3J5KCkudmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpLmdldENhcHR1cmVEZXZpY2Vz
KGFjY3VtdWxhdG9yLT5hY2N1bXVsYXRlKCkpOwotICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeSgp
LmRpc3BsYXlDYXB0dXJlRGV2aWNlTWFuYWdlcigpLmdldENhcHR1cmVEZXZpY2VzKGFjY3VtdWxh
dG9yLT5hY2N1bXVsYXRlKCkpOwotICAgIGF1ZGlvQ2FwdHVyZUZhY3RvcnkoKS5nZXRTcGVha2Vy
RGV2aWNlcyhhY2N1bXVsYXRvci0+YWNjdW11bGF0ZSgpKTsKIH0KIAogc3RhdGljIHZvaWQgYWRk
U3RyaW5nVG9TSEExKFNIQTEmIHNoYTEsIGNvbnN0IFN0cmluZyYgc3RyaW5nKQpAQCAtMjc0LDcg
KzI0NSwzMSBAQCB2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmdldFVzZXJNZWRpYURl
dmljZXMoY29uc3QgTWVkaWFTdHJlYW1SZXF1ZXN0JiByZQogICAgIH0KIH0KIAordm9pZCBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjplbnVtZXJhdGVEZXZpY2VzKGJvb2wgc2hvdWxkRW51bWVy
YXRlQ2FtZXJhLCBib29sIHNob3VsZEVudW1lcmF0ZURpc3BsYXksIGJvb2wgc2hvdWxkRW51bWVy
YXRlTWljcm9waG9uZSwgYm9vbCBzaG91bGRFbnVtZXJhdGVTcGVha2VycywgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQoreworICAgIGF1dG8gY2FsbGJhY2tBZ2dyZWdhdG9y
ID0gQ2FsbGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjYWxsYmFjaykpOworICAgIGlm
IChzaG91bGRFbnVtZXJhdGVDYW1lcmEpCisgICAgICAgIHZpZGVvQ2FwdHVyZUZhY3RvcnkoKS52
aWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkuY29tcHV0ZUNhcHR1cmVEZXZpY2VzKFtjYWxsYmFj
a0FnZ3JlZ2F0b3JdIHsgfSk7CisgICAgaWYgKHNob3VsZEVudW1lcmF0ZURpc3BsYXkpCisgICAg
ICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeSgpLmRpc3BsYXlDYXB0dXJlRGV2aWNlTWFuYWdlcigp
LmNvbXB1dGVDYXB0dXJlRGV2aWNlcyhbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7IH0pOworICAgIGlm
IChzaG91bGRFbnVtZXJhdGVNaWNyb3Bob25lKQorICAgICAgICBhdWRpb0NhcHR1cmVGYWN0b3J5
KCkuYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpLmNvbXB1dGVDYXB0dXJlRGV2aWNlcyhbY2Fs
bGJhY2tBZ2dyZWdhdG9yXSB7IH0pOworICAgIGlmIChzaG91bGRFbnVtZXJhdGVTcGVha2VycykK
KyAgICAgICAgYXVkaW9DYXB0dXJlRmFjdG9yeSgpLmNvbXB1dGVTcGVha2VyRGV2aWNlcyhbY2Fs
bGJhY2tBZ2dyZWdhdG9yXSB7IH0pOworfQorCiB2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXI6OnZhbGlkYXRlUmVxdWVzdENvbnN0cmFpbnRzKFZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYg
dmFsaWRIYW5kbGVyLCBJbnZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYgaW52YWxpZEhhbmRsZXIs
IGNvbnN0IE1lZGlhU3RyZWFtUmVxdWVzdCYgcmVxdWVzdCwgU3RyaW5nJiYgZGV2aWNlSWRlbnRp
Zmllckhhc2hTYWx0KQoreworICAgIGJvb2wgc2hvdWxkRW51bWVyYXRlQ2FtZXJhID0gcmVxdWVz
dC52aWRlb0NvbnN0cmFpbnRzLmlzVmFsaWQ7CisgICAgYm9vbCBzaG91bGRFbnVtZXJhdGVEaXNw
bGF5ID0gcmVxdWVzdC50eXBlID09IE1lZGlhU3RyZWFtUmVxdWVzdDo6VHlwZTo6RGlzcGxheU1l
ZGlhOworICAgIGJvb2wgc2hvdWxkRW51bWVyYXRlTWljcm9waG9uZSA9IHJlcXVlc3QuYXVkaW9D
b25zdHJhaW50cy5pc1ZhbGlkOworICAgIGJvb2wgc2hvdWxkRW51bWVyYXRlU3BlYWtlcnMgPSBm
YWxzZTsKKyAgICBlbnVtZXJhdGVEZXZpY2VzKHNob3VsZEVudW1lcmF0ZUNhbWVyYSwgc2hvdWxk
RW51bWVyYXRlRGlzcGxheSwgc2hvdWxkRW51bWVyYXRlTWljcm9waG9uZSwgc2hvdWxkRW51bWVy
YXRlU3BlYWtlcnMsIFt0aGlzLCB2YWxpZEhhbmRsZXIgPSBXVEZNb3ZlKHZhbGlkSGFuZGxlciks
IGludmFsaWRIYW5kbGVyID0gV1RGTW92ZShpbnZhbGlkSGFuZGxlciksIHJlcXVlc3QsIGRldmlj
ZUlkZW50aWZpZXJIYXNoU2FsdCA9IFdURk1vdmUoZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KV0o
KSBtdXRhYmxlIHsKKyAgICAgICAgdmFsaWRhdGVSZXF1ZXN0Q29uc3RyYWludHNBZnRlckVudW1l
cmF0aW9uKFdURk1vdmUodmFsaWRIYW5kbGVyKSwgV1RGTW92ZShpbnZhbGlkSGFuZGxlciksIHJl
cXVlc3QsIFdURk1vdmUoZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KSk7CisgICAgfSk7Cit9CisK
K3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmFsaWRhdGVSZXF1ZXN0Q29uc3RyYWlu
dHNBZnRlckVudW1lcmF0aW9uKFZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYgdmFsaWRIYW5kbGVy
LCBJbnZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYgaW52YWxpZEhhbmRsZXIsIGNvbnN0IE1lZGlh
U3RyZWFtUmVxdWVzdCYgcmVxdWVzdCwgU3RyaW5nJiYgZGV2aWNlSWRlbnRpZmllckhhc2hTYWx0
KQogewogICAgIHN0cnVjdCB7CiAgICAgICAgIGJvb2wgb3BlcmF0b3IoKShjb25zdCBEZXZpY2VJ
bmZvJiBhLCBjb25zdCBEZXZpY2VJbmZvJiBiKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5o
CmluZGV4IDRiMTY4OTZmMWVhZGMwNTc5ODcxZTcwN2VmM2M2YzhiZmJlNjdjZjQuLmNhNjQxODY1
OTJlZmIxOTgwYWZkZjk2YmNmMmRkYTlmZTk3ZjRlOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyLmgKQEAgLTExNSw2ICsxMTUsOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBnZXREaXNw
bGF5TWVkaWFEZXZpY2VzKGNvbnN0IE1lZGlhU3RyZWFtUmVxdWVzdCYsIFZlY3RvcjxEZXZpY2VJ
bmZvPiYsIFN0cmluZyYpOwogICAgIHZvaWQgZ2V0VXNlck1lZGlhRGV2aWNlcyhjb25zdCBNZWRp
YVN0cmVhbVJlcXVlc3QmLCBTdHJpbmcmJiwgVmVjdG9yPERldmljZUluZm8+JiBhdWRpb0Rldmlj
ZXMsIFZlY3RvcjxEZXZpY2VJbmZvPiYgdmlkZW9EZXZpY2VzLCBTdHJpbmcmKTsKKyAgICB2b2lk
IHZhbGlkYXRlUmVxdWVzdENvbnN0cmFpbnRzQWZ0ZXJFbnVtZXJhdGlvbihWYWxpZENvbnN0cmFp
bnRzSGFuZGxlciYmLCBJbnZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYsIGNvbnN0IE1lZGlhU3Ry
ZWFtUmVxdWVzdCYsIFN0cmluZyYmKTsKKyAgICB2b2lkIGVudW1lcmF0ZURldmljZXMoYm9vbCBz
aG91bGRFbnVtZXJhdGVDYW1lcmEsIGJvb2wgc2hvdWxkRW51bWVyYXRlRGlzcGxheSwgYm9vbCBz
aG91bGRFbnVtZXJhdGVNaWNyb3Bob25lLCBib29sIHNob3VsZEVudW1lcmF0ZVNwZWFrZXJzLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwogCiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZVN1
cHBvcnRlZENvbnN0cmFpbnRzIG1fc3VwcG9ydGVkQ29uc3RyYWludHM7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VG
YWN0b3J5LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1l
ZGlhU291cmNlRmFjdG9yeS5oCmluZGV4IGRlMGM4MDY0ZmNjZGYyMjQ5ZmRmNzA3MTc3ZGNjN2I5
N2M3OTBlZTcuLmNjYmNhMDU3NjJjNDY2MDdkYzI0YmZhOTI5Mjc5NmE4ZTEzZDcxZDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFT
b3VyY2VGYWN0b3J5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
UmVhbHRpbWVNZWRpYVNvdXJjZUZhY3RvcnkuaApAQCAtNjMsNyArNjMsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCBDYXB0dXJlU291cmNlT3JFcnJvciBjcmVhdGVBdWRpb0NhcHR1cmVTb3VyY2Uo
Y29uc3QgQ2FwdHVyZURldmljZSYsIFN0cmluZyYmLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKikg
PSAwOwogICAgIHZpcnR1YWwgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmlj
ZU1hbmFnZXIoKSA9IDA7CiAgICAgdmlydHVhbCBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4m
IHNwZWFrZXJEZXZpY2VzKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBnZXRTcGVha2Vy
RGV2aWNlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmKT4m
JiBjb21wbGV0aW9uKSBjb25zdCB7IGNvbXBsZXRpb24oY29weVRvVmVjdG9yKHNwZWFrZXJEZXZp
Y2VzKCkpKTsgfQorICAgIHZpcnR1YWwgdm9pZCBjb21wdXRlU3BlYWtlckRldmljZXMoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKSBjb25zdCB7IGNhbGxiYWNrKCk7IH0KIAog
ICAgIGNsYXNzIEV4dGVuc2l2ZU9ic2VydmVyIDogcHVibGljIENhbk1ha2VXZWFrUHRyPEV4dGVu
c2l2ZU9ic2VydmVyPiB7IH07CiAgICAgdmlydHVhbCB2b2lkIGFkZEV4dGVuc2l2ZU9ic2VydmVy
KEV4dGVuc2l2ZU9ic2VydmVyJikgeyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2UubW0KaW5kZXggMjE4NjA5NWU5MmVjNTdlZmRkNGYyOGM3OGJmYWU1ODgyNzYzNDMz
Ni4uZTdkNzc4YmZhYzFkNmE1YjhlYTdiMTUzZTkxNmRkODA4YjVlZWRlNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2Fw
dHVyZURldmljZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9p
b3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLm1tCkBAIC00NSwxMSArNDUsOCBAQCBBVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShBVkF1
ZGlvU2Vzc2lvblBvcnREZXNjcgogfQogCiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2U6OkFW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZShjb25zdCBTdHJpbmcmIHBlcnNpc3RlbnRJZCwgRGV2
aWNlVHlwZSB0eXBlLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCBTdHJpbmcmIGdyb3VwSWQs
IGJvb2wgaXNFbmFibGVkLCBib29sIGlzRGVmYXVsdCwgYm9vbCBpc01vY2spCi0gICAgOiBDYXB0
dXJlRGV2aWNlKHBlcnNpc3RlbnRJZCwgdHlwZSwgbGFiZWwsIGdyb3VwSWQpCisgICAgOiBDYXB0
dXJlRGV2aWNlKHBlcnNpc3RlbnRJZCwgdHlwZSwgbGFiZWwsIGdyb3VwSWQsIGlzRW5hYmxlZCwg
aXNEZWZhdWx0LCBpc01vY2spCiB7Ci0gICAgc2V0RW5hYmxlZChpc0VuYWJsZWQpOwotICAgIHNl
dElzRGVmYXVsdChpc0RlZmF1bHQpOwotICAgIHNldElzTW9ja0RldmljZShpc01vY2spOwogfQog
CiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNl
Ojppc29sYXRlZENvcHkoKSAmJgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1
cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggNjlmODRiZjdlNWVlYzdmNzlkNzhkYzAwM2EyZGRjY2Jh
N2E2YzRkOS4uN2FiOTUwZDY1ZDVmODA2NjZmMWY0MGQzZDA4Njc5ZjNhODFjMDg1OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vaW9zL0FWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5oCkBAIC00
Nyw3ICs0Nyw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2
aWNlTWFuYWdlciYgc2luZ2xldG9uKCk7CiAKICAgICBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmlj
ZT4mIGNhcHR1cmVEZXZpY2VzKCkgZmluYWw7Ci0gICAgdm9pZCBnZXRDYXB0dXJlRGV2aWNlcyhD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYmKT4mJikgZmluYWw7
CisgICAgdm9pZCBjb21wdXRlQ2FwdHVyZURldmljZXMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmKSBmaW5hbDsKICAgICBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIHNwZWFrZXJEZXZp
Y2VzKCkgY29uc3QgeyByZXR1cm4gbV9zcGVha2VyRGV2aWNlczsgfQogICAgIE9wdGlvbmFsPENh
cHR1cmVEZXZpY2U+IGNhcHR1cmVEZXZpY2VXaXRoUGVyc2lzdGVudElEKENhcHR1cmVEZXZpY2U6
OkRldmljZVR5cGUsIGNvbnN0IFN0cmluZyYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9pb3MvQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlv
U2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tCmluZGV4IDIyM2M3NWRmNmQyZWNiYTQwMDhk
MzUwNDY2NzE2YWYwNTI2NWNkOGYuLjhhZmQ0ZTQ1ZGM1MjBkNmFmZGE4OTU0YzYwMzFkMGU3Zjk2
Y2UzZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lv
cy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2lvcy9BVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VN
YW5hZ2VyLm1tCkBAIC0xNDYsNyArMTQ2LDcgQEAgT3B0aW9uYWw8QVZBdWRpb1Nlc3Npb25DYXB0
dXJlRGV2aWNlPiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjphdWRpb1MKIAog
dm9pZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzY2hlZHVsZVVwZGF0ZUNh
cHR1cmVEZXZpY2VzKCkKIHsKLSAgICBnZXRDYXB0dXJlRGV2aWNlcyhbXSAoYXV0bykgeyB9KTsK
KyAgICBjb21wdXRlQ2FwdHVyZURldmljZXMoW10geyB9KTsKIH0KIAogdm9pZCBBVkF1ZGlvU2Vz
c2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCkBA
IC0xNjYsNyArMTY2LDcgQEAgdm9pZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
OjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCiAgICAgc2V0QXVkaW9DYXB0dXJlRGV2aWNl
cyhXVEZNb3ZlKG5ld0F1ZGlvRGV2aWNlcykuaXNvbGF0ZWRDb3B5KCkpOwogfQogCi12b2lkIEFW
QXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmdldENhcHR1cmVEZXZpY2VzKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoVmVjdG9yPENhcHR1cmVEZXZpY2U+JiYpPiYmIGNvbXBsZXRpb24p
Cit2b2lkIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXI6OmNvbXB1dGVDYXB0dXJl
RGV2aWNlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbikKIHsKICAgICBp
ZiAobV9hdWRpb1Nlc3Npb25TdGF0ZSA9PSBBdWRpb1Nlc3Npb25TdGF0ZTo6SW5hY3RpdmUpIHsK
ICAgICAgICAgbV9hdWRpb1Nlc3Npb25TdGF0ZSA9IEF1ZGlvU2Vzc2lvblN0YXRlOjpBY3RpdmU7
CkBAIC0xODAsNyArMTgwLDcgQEAgdm9pZCBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5h
Z2VyOjpnZXRDYXB0dXJlRGV2aWNlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2kKICAgICAgICAgYXV0
byBuZXdBdWRpb0RldmljZXMgPSByZXRyaWV2ZUF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VzKCk7
CiAgICAgICAgIGNhbGxPbldlYlRocmVhZE9yRGlzcGF0Y2hBc3luY09uTWFpblRocmVhZChtYWtl
QmxvY2tQdHIoW3RoaXMsIGNvbXBsZXRpb24gPSBXVEZNb3ZlKGNvbXBsZXRpb24pLCBuZXdBdWRp
b0RldmljZXMgPSBXVEZNb3ZlKG5ld0F1ZGlvRGV2aWNlcykuaXNvbGF0ZWRDb3B5KCldICgpIG11
dGFibGUgewogICAgICAgICAgICAgc2V0QXVkaW9DYXB0dXJlRGV2aWNlcyhXVEZNb3ZlKG5ld0F1
ZGlvRGV2aWNlcykpOwotICAgICAgICAgICAgY29tcGxldGlvbihjb3B5VG9WZWN0b3IoKm1fZGV2
aWNlcykpOworICAgICAgICAgICAgY29tcGxldGlvbigpOwogICAgICAgICB9KS5nZXQoKSk7CiAg
ICAgfSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9tYWMvQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL0FWQ2FwdHVyZURldmljZU1hbmFnZXIuaAppbmRleCBhYmRlM2E5NGMw
MTJlNDFlMDRiZmQ4MjBiMDQyMDlhMjUyMGJiM2FkLi4wYjJmNDE5OGJlYjIxZTMzZTRiOWVhM2Nh
ZGRiMTc2YTUwOWIyZjFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9tYWMvQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9BVkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTMz
LDYgKzMzLDcgQEAKICNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlU3VwcG9ydGVkQ29uc3Ry
YWludHMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KICNpbmNsdWRlIDx3dGYv
UmV0YWluUHRyLmg+CisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgogCiBPQkpDX0NMQVNTIEFWQ2FwdHVyZURldmljZTsKQEAgLTQ3LDEx
ICs0OCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIEFWQ2FwdHVyZURldmljZU1hbmFn
ZXIgZmluYWwgOiBwdWJsaWMgQ2FwdHVyZURldmljZU1hbmFnZXIgewogICAgIGZyaWVuZCBjbGFz
cyBOZXZlckRlc3Ryb3llZDxBVkNhcHR1cmVEZXZpY2VNYW5hZ2VyPjsKIHB1YmxpYzoKLSAgICBj
b25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIGNhcHR1cmVEZXZpY2VzKCkgZmluYWw7Ci0KICAg
ICBzdGF0aWMgQVZDYXB0dXJlRGV2aWNlTWFuYWdlciYgc2luZ2xldG9uKCk7CiAKLSAgICB2b2lk
IHJlZnJlc2hDYXB0dXJlRGV2aWNlcygpOworICAgIHZvaWQgcmVmcmVzaENhcHR1cmVEZXZpY2Vz
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiA9IFtdIHsgfSk7CiAKIHByaXZhdGU6CiAgICAg
c3RhdGljIGJvb2wgaXNBdmFpbGFibGUoKTsKQEAgLTU5LDE1ICs1OCwxOSBAQCBwcml2YXRlOgog
ICAgIEFWQ2FwdHVyZURldmljZU1hbmFnZXIoKTsKICAgICB+QVZDYXB0dXJlRGV2aWNlTWFuYWdl
cigpIGZpbmFsOwogCisgICAgdm9pZCBjb21wdXRlQ2FwdHVyZURldmljZXMoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKSBmaW5hbDsKKyAgICBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4m
IGNhcHR1cmVEZXZpY2VzKCkgZmluYWw7CisKICAgICB2b2lkIHJlZ2lzdGVyRm9yRGV2aWNlTm90
aWZpY2F0aW9ucygpOwotICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgY2FwdHVyZURldmljZXNJ
bnRlcm5hbCgpOwogICAgIHZvaWQgdXBkYXRlQ2FjaGVkQVZDYXB0dXJlRGV2aWNlcygpOwotICAg
IGJvb2wgaXNNYXRjaGluZ0V4aXN0aW5nQ2FwdHVyZURldmljZShBVkNhcHR1cmVEZXZpY2UqKTsK
KyAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gcmV0cmlldmVDYXB0dXJlRGV2aWNlcygpOwogCiAg
ICAgUmV0YWluUHRyPFdlYkNvcmVBVkNhcHR1cmVEZXZpY2VNYW5hZ2VyT2JzZXJ2ZXI+IG1fb2Jq
Y09ic2VydmVyOwogICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBtX2RldmljZXM7CiAgICAgUmV0
YWluUHRyPE5TTXV0YWJsZUFycmF5PiBtX2F2Q2FwdHVyZURldmljZXM7Ci0gICAgYm9vbCBtX25v
dGlmeVdoZW5EZXZpY2VMaXN0Q2hhbmdlcyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzSW5pdGlh
bGl6ZWQgeyBmYWxzZSB9OworCisgICAgUmVmPFdvcmtRdWV1ZT4gbV9kaXNwYXRjaFF1ZXVlOwog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL0FWQ2FwdHVyZURldmljZU1hbmFnZXIubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQVZDYXB0dXJlRGV2aWNlTWFuYWdl
ci5tbQppbmRleCBmNDFiNDYwN2RlOWE2NzMwZWMyOWUxOTI2MTJjYzM0MWI2ZmVhNzAwLi40Y2Jk
ZTQ0YjQ1MWVlNzNlYzk1NzRlZmI5NjllYWUwMzAzNGQzNzEwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvQVZDYXB0dXJl
RGV2aWNlTWFuYWdlci5tbQpAQCAtNTksMjUgKzU5LDIzIEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLQotVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBB
VkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjYXB0dXJlRGV2aWNlc0ludGVybmFsKCkKK3ZvaWQgQVZD
YXB0dXJlRGV2aWNlTWFuYWdlcjo6Y29tcHV0ZUNhcHR1cmVEZXZpY2VzKENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjYWxsYmFjaykKIHsKLSAgICBpZiAoIWlzQXZhaWxhYmxlKCkpCi0gICAg
ICAgIHJldHVybiBtX2RldmljZXM7Ci0KLSAgICBzdGF0aWMgYm9vbCBmaXJzdFRpbWUgPSB0cnVl
OwotICAgIGlmIChmaXJzdFRpbWUpIHsKLSAgICAgICAgZmlyc3RUaW1lID0gZmFsc2U7Ci0gICAg
ICAgIHJlZnJlc2hDYXB0dXJlRGV2aWNlcygpOwotICAgICAgICBtX25vdGlmeVdoZW5EZXZpY2VM
aXN0Q2hhbmdlcyA9IHRydWU7CisgICAgaWYgKCFtX2lzSW5pdGlhbGl6ZWQpIHsKKyAgICAgICAg
cmVmcmVzaENhcHR1cmVEZXZpY2VzKFt0aGlzLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2sp
XSgpIG11dGFibGUgeworICAgICAgICAgICAgbV9pc0luaXRpYWxpemVkID0gdHJ1ZTsKKyAgICAg
ICAgICAgIGNhbGxiYWNrKCk7CisgICAgICAgIH0pOworICAgICAgICByZXR1cm47CiAgICAgfQot
Ci0gICAgcmV0dXJuIG1fZGV2aWNlczsKKyAgICBjYWxsYmFjaygpOwogfQogCiBjb25zdCBWZWN0
b3I8Q2FwdHVyZURldmljZT4mIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OmNhcHR1cmVEZXZpY2Vz
KCkKIHsKLSAgICByZXR1cm4gY2FwdHVyZURldmljZXNJbnRlcm5hbCgpOworICAgIEFTU0VSVCht
X2lzSW5pdGlhbGl6ZWQpOworICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGKCFtX2lzSW5pdGlhbGl6
ZWQsIFdlYlJUQywgIlJldHJpZXZpbmcgQVZDYXB0dXJlRGV2aWNlTWFuYWdlciBsaXN0IGJlZm9y
ZSBpbml0aWFsaXphdGlvbiIpOworICAgIHJldHVybiBtX2RldmljZXM7CiB9CiAKIGlubGluZSBz
dGF0aWMgYm9vbCBkZXZpY2VJc0F2YWlsYWJsZShBVkNhcHR1cmVEZXZpY2UgKmRldmljZSkKQEAg
LTk1LDYgKzkzLDcgQEAgaW5saW5lIHN0YXRpYyBib29sIGRldmljZUlzQXZhaWxhYmxlKEFWQ2Fw
dHVyZURldmljZSAqZGV2aWNlKQogCiB2b2lkIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OnVwZGF0
ZUNhY2hlZEFWQ2FwdHVyZURldmljZXMoKQogeworICAgIEFTU0VSVCghaXNNYWluVGhyZWFkKCkp
OwogICAgIGF1dG8qIGN1cnJlbnREZXZpY2VzID0gW1BBTDo6Z2V0QVZDYXB0dXJlRGV2aWNlQ2xh
c3MoKSBkZXZpY2VzXTsKICAgICBhdXRvIGNoYW5nZWREZXZpY2VzID0gYWRvcHROUyhbW05TTXV0
YWJsZUFycmF5IGFsbG9jXSBpbml0XSk7CiAgICAgZm9yIChBVkNhcHR1cmVEZXZpY2UgKmNhY2hl
ZERldmljZSBpbiBtX2F2Q2FwdHVyZURldmljZXMuZ2V0KCkpIHsKQEAgLTEyOSwyOSArMTI4LDE3
IEBAIHN0YXRpYyBpbmxpbmUgQ2FwdHVyZURldmljZSB0b0NhcHR1cmVEZXZpY2UoQVZDYXB0dXJl
RGV2aWNlICpkZXZpY2UpCiAgICAgcmV0dXJuIGNhcHR1cmVEZXZpY2U7CiB9CiAKLWJvb2wgQVZD
YXB0dXJlRGV2aWNlTWFuYWdlcjo6aXNNYXRjaGluZ0V4aXN0aW5nQ2FwdHVyZURldmljZShBVkNh
cHR1cmVEZXZpY2UgKmRldmljZSkKLXsKLSAgICBhdXRvIGV4aXN0aW5nQ2FwdHVyZURldmljZSA9
IGNhcHR1cmVEZXZpY2VGcm9tUGVyc2lzdGVudElEKGRldmljZS51bmlxdWVJRCk7Ci0gICAgaWYg
KCFleGlzdGluZ0NhcHR1cmVEZXZpY2UpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJl
dHVybiBkZXZpY2VJc0F2YWlsYWJsZShkZXZpY2UpID09IGV4aXN0aW5nQ2FwdHVyZURldmljZS5l
bmFibGVkKCk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgYm9vbCBpc0RlZmF1bHRWaWRlb0NhcHR1cmVE
ZXZpY2VGaXJzdChjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIGRldmljZXMsIGNvbnN0IFN0
cmluZyYgZGVmYXVsdERldmljZUlEKQotewotICAgIGlmIChkZXZpY2VzLmlzRW1wdHkoKSkKLSAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiBkZXZpY2VzWzBdLnBlcnNpc3RlbnRJZCgp
ID09IGRlZmF1bHREZXZpY2VJRDsKLX0KLQogc3RhdGljIGlubGluZSBib29sIGlzVmlkZW9EZXZp
Y2UoQVZDYXB0dXJlRGV2aWNlICpkZXZpY2UpCiB7CiAgICAgcmV0dXJuIFtkZXZpY2UgaGFzTWVk
aWFUeXBlOkFWTWVkaWFUeXBlVmlkZW9dIHx8IFtkZXZpY2UgaGFzTWVkaWFUeXBlOkFWTWVkaWFU
eXBlTXV4ZWRdOwogfQogCi12b2lkIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OnJlZnJlc2hDYXB0
dXJlRGV2aWNlcygpCitWZWN0b3I8Q2FwdHVyZURldmljZT4gQVZDYXB0dXJlRGV2aWNlTWFuYWdl
cjo6cmV0cmlldmVDYXB0dXJlRGV2aWNlcygpCiB7CisgICAgQVNTRVJUKCFpc01haW5UaHJlYWQo
KSk7CisgICAgaWYgKCFpc0F2YWlsYWJsZSgpKQorICAgICAgICByZXR1cm4geyB9OworCiAgICAg
aWYgKCFtX2F2Q2FwdHVyZURldmljZXMpIHsKICAgICAgICAgbV9hdkNhcHR1cmVEZXZpY2VzID0g
YWRvcHROUyhbW05TTXV0YWJsZUFycmF5IGFsbG9jXSBpbml0XSk7CiAgICAgICAgIHJlZ2lzdGVy
Rm9yRGV2aWNlTm90aWZpY2F0aW9ucygpOwpAQCAtMTc4LDMxICsxNjUsNDAgQEAgdm9pZCBBVkNh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQ2FwdHVyZURldmljZXMoKQogICAgIH0KICNlbmRp
ZgogCi0gICAgYm9vbCBkZXZpY2VIYXNDaGFuZ2VkID0gZmFsc2U7CiAgICAgaWYgKGRlZmF1bHRW
aWRlb0RldmljZSkgewotICAgICAgICBkZXZpY2VMaXN0LmFwcGVuZCh0b0NhcHR1cmVEZXZpY2Uo
ZGVmYXVsdFZpZGVvRGV2aWNlKSk7Ci0gICAgICAgIGRldmljZUhhc0NoYW5nZWQgPSAhaXNEZWZh
dWx0VmlkZW9DYXB0dXJlRGV2aWNlRmlyc3QoY2FwdHVyZURldmljZXMoKSwgZGVmYXVsdFZpZGVv
RGV2aWNlLnVuaXF1ZUlEKTsKKyAgICAgICAgYXV0byBkZXZpY2UgPSB0b0NhcHR1cmVEZXZpY2Uo
ZGVmYXVsdFZpZGVvRGV2aWNlKTsKKyAgICAgICAgZGV2aWNlLnNldElzRGVmYXVsdCh0cnVlKTsK
KyAgICAgICAgZGV2aWNlTGlzdC5hcHBlbmQoV1RGTW92ZShkZXZpY2UpKTsKICAgICB9CiAgICAg
Zm9yIChBVkNhcHR1cmVEZXZpY2UgKnBsYXRmb3JtRGV2aWNlIGluIGN1cnJlbnREZXZpY2VzKSB7
Ci0gICAgICAgIGlmICghaXNWaWRlb0RldmljZShwbGF0Zm9ybURldmljZSkpCi0gICAgICAgICAg
ICBjb250aW51ZTsKLQotICAgICAgICBpZiAoIWRldmljZUhhc0NoYW5nZWQgJiYgIWlzTWF0Y2hp
bmdFeGlzdGluZ0NhcHR1cmVEZXZpY2UocGxhdGZvcm1EZXZpY2UpKQotICAgICAgICAgICAgZGV2
aWNlSGFzQ2hhbmdlZCA9IHRydWU7Ci0KLSAgICAgICAgaWYgKHBsYXRmb3JtRGV2aWNlLnVuaXF1
ZUlEID09IGRlZmF1bHRWaWRlb0RldmljZS51bmlxdWVJRCkKLSAgICAgICAgICAgIGNvbnRpbnVl
OwotCi0gICAgICAgIGRldmljZUxpc3QuYXBwZW5kKHRvQ2FwdHVyZURldmljZShwbGF0Zm9ybURl
dmljZSkpOworICAgICAgICBpZiAoaXNWaWRlb0RldmljZShwbGF0Zm9ybURldmljZSkgJiYgcGxh
dGZvcm1EZXZpY2UudW5pcXVlSUQgIT0gZGVmYXVsdFZpZGVvRGV2aWNlLnVuaXF1ZUlEKQorICAg
ICAgICAgICAgZGV2aWNlTGlzdC5hcHBlbmQodG9DYXB0dXJlRGV2aWNlKHBsYXRmb3JtRGV2aWNl
KSk7CiAgICAgfQorICAgIHJldHVybiBkZXZpY2VMaXN0OworfQogCi0gICAgaWYgKGRldmljZUhh
c0NoYW5nZWQgfHwgbV9kZXZpY2VzLnNpemUoKSAhPSBkZXZpY2VMaXN0LnNpemUoKSkgewotICAg
ICAgICBkZXZpY2VIYXNDaGFuZ2VkID0gdHJ1ZTsKLSAgICAgICAgbV9kZXZpY2VzID0gV1RGTW92
ZShkZXZpY2VMaXN0KTsKLSAgICB9Cit2b2lkIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OnJlZnJl
c2hDYXB0dXJlRGV2aWNlcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCit7
CisgICAgbV9kaXNwYXRjaFF1ZXVlLT5kaXNwYXRjaChbdGhpcywgY2FsbGJhY2sgPSBXVEZNb3Zl
KGNhbGxiYWNrKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNo
KFt0aGlzLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spLCBkZXZpY2VMaXN0ID0gcmV0cmll
dmVDYXB0dXJlRGV2aWNlcygpLmlzb2xhdGVkQ29weSgpXSgpIG11dGFibGUgeyAgICAgICAgICAg
IAorICAgICAgICAgICAgYm9vbCBkZXZpY2VIYXNDaGFuZ2VkID0gbV9kZXZpY2VzLnNpemUoKSAh
PSBkZXZpY2VMaXN0LnNpemUoKTsKKyAgICAgICAgICAgIGlmICghZGV2aWNlSGFzQ2hhbmdlZCkg
eworICAgICAgICAgICAgICAgIGZvciAoc2l6ZV90IGNwdHIgPSAwOyBjcHRyIDwgZGV2aWNlTGlz
dC5zaXplKCk7ICsrY3B0cikgeworICAgICAgICAgICAgICAgICAgICBpZiAobV9kZXZpY2VzW2Nw
dHJdLnBlcnNpc3RlbnRJZCgpICE9IGRldmljZUxpc3RbY3B0cl0ucGVyc2lzdGVudElkKCkgfHwg
bV9kZXZpY2VzW2NwdHJdLmVuYWJsZWQoKSAhPSBkZXZpY2VMaXN0W2NwdHJdLmVuYWJsZWQoKSkg
eworICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlSGFzQ2hhbmdlZCA9IHRydWU7CisgICAg
ICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KIAotICAgIGlmIChtX25vdGlmeVdoZW5EZXZpY2VM
aXN0Q2hhbmdlcyAmJiBkZXZpY2VIYXNDaGFuZ2VkKQotICAgICAgICBkZXZpY2VDaGFuZ2VkKCk7
CisgICAgICAgICAgICBpZiAoZGV2aWNlSGFzQ2hhbmdlZCkgeworICAgICAgICAgICAgICAgIG1f
ZGV2aWNlcyA9IFdURk1vdmUoZGV2aWNlTGlzdCk7CisgICAgICAgICAgICAgICAgaWYgKG1faXNJ
bml0aWFsaXplZCkKKyAgICAgICAgICAgICAgICAgICAgZGV2aWNlQ2hhbmdlZCgpOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgY2FsbGJhY2soKTsKKyAgICAgICAgfSk7CisgICAgfSk7CiB9
CiAKIGJvb2wgQVZDYXB0dXJlRGV2aWNlTWFuYWdlcjo6aXNBdmFpbGFibGUoKQpAQCAtMjE4LDYg
KzIxNCw3IEBAIEFWQ2FwdHVyZURldmljZU1hbmFnZXImIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6
OnNpbmdsZXRvbigpCiAKIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OkFWQ2FwdHVyZURldmljZU1h
bmFnZXIoKQogICAgIDogbV9vYmpjT2JzZXJ2ZXIoYWRvcHROUyhbW1dlYkNvcmVBVkNhcHR1cmVE
ZXZpY2VNYW5hZ2VyT2JzZXJ2ZXIgYWxsb2NdIGluaXRXaXRoQ2FsbGJhY2s6IHRoaXNdKSkKKyAg
ICAsIG1fZGlzcGF0Y2hRdWV1ZShXb3JrUXVldWU6OmNyZWF0ZSgiY29tLmFwcGxlLldlYktpdC5B
VkNhcHR1cmVEZXZpY2VNYW5hZ2VyIikpCiB7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>