<?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>172324</bug_id>
          
          <creation_ts>2017-05-18 17:15:48 -0700</creation_ts>
          <short_desc>Align MockRealtimeMediaSourceCenter with RealtimeMediaSourceCenter</short_desc>
          <delta_ts>2017-05-19 14:41:55 -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>Media</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></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>jer.noble</cc>
    
    <cc>jonlee</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1310352</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-05-18 17:15:48 -0700</bug_when>
    <thetext>We should strive to make them the same</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310354</commentid>
    <comment_count>1</comment_count>
      <attachid>310577</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-05-18 17:16:20 -0700</bug_when>
    <thetext>Created attachment 310577
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310605</commentid>
    <comment_count>2</comment_count>
      <attachid>310658</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-05-19 08:22:04 -0700</bug_when>
    <thetext>Created attachment 310658
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310648</commentid>
    <comment_count>3</comment_count>
      <attachid>310671</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-05-19 10:12:55 -0700</bug_when>
    <thetext>Created attachment 310671
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310743</commentid>
    <comment_count>4</comment_count>
      <attachid>310671</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-05-19 13:29:36 -0700</bug_when>
    <thetext>Comment on attachment 310671
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        Removing most of MockRealtimeMediaSourceCenter implementation.

Nit: &quot;Removing&quot; =&gt; &quot;Remove&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310769</commentid>
    <comment_count>5</comment_count>
      <attachid>310699</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-05-19 14:25:53 -0700</bug_when>
    <thetext>Created attachment 310699
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310777</commentid>
    <comment_count>6</comment_count>
      <attachid>310699</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-19 14:41:54 -0700</bug_when>
    <thetext>Comment on attachment 310699
Patch for landing

Clearing flags on attachment: 310699

Committed r217151: &lt;http://trac.webkit.org/changeset/217151&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1310778</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-19 14:41:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310577</attachid>
            <date>2017-05-18 17:16:20 -0700</date>
            <delta_ts>2017-05-19 08:22:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172324-20170518171618.patch</filename>
            <type>text/plain</type>
            <size>17691</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3MDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
Y3BwCmluZGV4IGNiMDkyZjViMjg1M2RkYzVjMWUyYmIxMDRjNjk4Y2RjNWQ0Y2ZhNzIuLjI0YWFm
MzBjOTRiM2E1MjRmMGEwZWNhOTgwYmI3OGY1ZjkwNTdjZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXIuY3BwCkBAIC0zNSw2ICszNSw4IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQogCisjaW5jbHVkZSAiQ2FwdHVyZURldmljZU1hbmFnZXIuaCIKKyNpbmNsdWRlICJMb2dn
aW5nLmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW1Qcml2YXRlLmgiCiAjaW5jbHVkZSA8d3RmL1NI
QTEuaD4KIApAQCAtNjgsMTIgKzcwLDY1IEBAIHZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
cjo6c2V0U2hhcmVkU3RyZWFtQ2VudGVyT3ZlcnJpZGUoUmVhbHRpbWVNZWRpYVNvdXJjCiAKIFJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIoKQogewor
ICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNXaWR0aCh0cnVlKTsKKyAgICBt
X3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzSGVpZ2h0KHRydWUpOworICAgIG1fc3Vw
cG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNBc3BlY3RSYXRpbyh0cnVlKTsKKyAgICBtX3N1
cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRnJhbWVSYXRlKHRydWUpOworICAgIG1fc3Vw
cG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNGYWNpbmdNb2RlKHRydWUpOworICAgIG1fc3Vw
cG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNWb2x1bWUodHJ1ZSk7CisgICAgbV9zdXBwb3J0
ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0RldmljZUlkKHRydWUpOwogfQogCiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjp+UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcigpCiB7CiB9CiAKK3Zv
aWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6Y3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFT
dHJlYW1IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZp
Y2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRz
KiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFp
bnRzKQoreworICAgIFZlY3RvcjxSZWY8UmVhbHRpbWVNZWRpYVNvdXJjZT4+IGF1ZGlvU291cmNl
czsKKyAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiB2aWRlb1NvdXJjZXM7Cisg
ICAgU3RyaW5nIGludmFsaWRDb25zdHJhaW50OworCisgICAgaWYgKCFhdWRpb0RldmljZUlELmlz
RW1wdHkoKSkgeworICAgICAgICBhdXRvIGF1ZGlvU291cmNlID0gYXVkaW9GYWN0b3J5KCkuY3Jl
YXRlQXVkaW9DYXB0dXJlU291cmNlKGF1ZGlvRGV2aWNlSUQsIGF1ZGlvQ29uc3RyYWludHMpOwor
ICAgICAgICBpZiAoYXVkaW9Tb3VyY2UpCisgICAgICAgICAgICBhdWRpb1NvdXJjZXMuYXBwZW5k
KGF1ZGlvU291cmNlLnNvdXJjZSgpKTsKKyAgICAgICAgZWxzZSB7CisjaWYgIUxPR19ESVNBQkxF
RAorICAgICAgICAgICAgaWYgKCFhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2UuaXNFbXB0eSgpKQor
ICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNy
ZWF0ZU1lZGlhU3RyZWFtKCVwKSwgYXVkaW8gY29uc3RyYWludHMgZmFpbGVkIHRvIGFwcGx5OiAl
cyIsIHRoaXMsIGF1ZGlvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyNlbmRp
ZgorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKCF2aWRlb0RldmljZUlELmlzRW1wdHko
KSkgeworICAgICAgICBhdXRvIHZpZGVvU291cmNlID0gdmlkZW9GYWN0b3J5KCkuY3JlYXRlVmlk
ZW9DYXB0dXJlU291cmNlKHZpZGVvRGV2aWNlSUQsIHZpZGVvQ29uc3RyYWludHMpOworICAgICAg
ICBpZiAodmlkZW9Tb3VyY2UpCisgICAgICAgICAgICB2aWRlb1NvdXJjZXMuYXBwZW5kKHZpZGVv
U291cmNlLnNvdXJjZSgpKTsKKyAgICAgICAgZWxzZSB7CisjaWYgIUxPR19ESVNBQkxFRAorICAg
ICAgICAgICAgaWYgKCF2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0ZU1l
ZGlhU3RyZWFtKCVwKSwgdmlkZW8gY29uc3RyYWludHMgZmFpbGVkIHRvIGFwcGx5OiAlcyIsIHRo
aXMsIHZpZGVvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyNlbmRpZgorICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIH0KKyAgICB9CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihNZWRpYVN0cmVhbVBy
aXZhdGU6OmNyZWF0ZShhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNlcykpOworfQorCitWZWN0b3I8
Q2FwdHVyZURldmljZT4gUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6Z2V0TWVkaWFTdHJlYW1E
ZXZpY2VzKCkKK3sKKyAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gcmVzdWx0OworCisgICAgcmVz
dWx0LmFwcGVuZFZlY3RvcihhdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkuZ2V0QXVkaW9Tb3Vy
Y2VzSW5mbygpKTsKKyAgICByZXN1bHQuYXBwZW5kVmVjdG9yKHZpZGVvQ2FwdHVyZURldmljZU1h
bmFnZXIoKS5nZXRWaWRlb1NvdXJjZXNJbmZvKCkpOworCisgICAgcmV0dXJuIHJlc3VsdDsKK30K
Kwogdm9pZCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXRBdWRpb0ZhY3RvcnkoUmVhbHRp
bWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgZmFjdG9yeSkKIHsKICAgICBtX2F1
ZGlvRmFjdG9yeSA9ICZmYWN0b3J5OwpAQCAtMTgwLDkgKzIzNSwyMCBAQCBzdGQ6Om9wdGlvbmFs
PENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1cmVEZXZpY2VX
aXRoVW5pcXVlSQogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiB9CiAKLUV4Y2VwdGlvbk9yPHZv
aWQ+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERldmljZUVuYWJsZWQoY29uc3QgU3Ry
aW5nJiwgYm9vbCkKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OnNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiBpZCwgYm9vbCBlbmFibGVkKQogewotICAg
IHJldHVybiBFeGNlcHRpb24geyBOT1RfRk9VTkRfRVJSLCBBU0NJSUxpdGVyYWwoIk5vdCBpbXBs
ZW1lbnRlZCEiKSB9OworICAgIGZvciAoYXV0byYgY2FwdHVyZURldmljZSA6IGdldE1lZGlhU3Ry
ZWFtRGV2aWNlcygpKSB7CisgICAgICAgIGlmIChpZCA9PSBjYXB0dXJlRGV2aWNlLnBlcnNpc3Rl
bnRJZCgpKSB7CisgICAgICAgICAgICBpZiAoZW5hYmxlZCAhPSBjYXB0dXJlRGV2aWNlLmVuYWJs
ZWQoKSkgeworICAgICAgICAgICAgICAgIGNhcHR1cmVEZXZpY2Uuc2V0RW5hYmxlZChlbmFibGVk
KTsKKyAgICAgICAgICAgICAgICBjYXB0dXJlRGV2aWNlc0NoYW5nZWQoKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJl
dHVybiBFeGNlcHRpb24geyBOT1RfRk9VTkRfRVJSIH07CiB9CiAKIFJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI6OkRldmljZXNDaGFuZ2VkT2JzZXJ2ZXJUb2tlbiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjphZGREZXZpY2VzQ2hhbmdlZE9ic2VydmVyKHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiYm
IG9ic2VydmVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCmluZGV4IDcyMGY2YzE0NzJj
NjFiYTcxYzQ2ZWM0MDljYzViMTllYjlmODdjZjMuLmEzYzQwMDk5ZDMyMjdmYThhMzQ2YWUxZmRj
NzVjNDI3NjhkM2E0ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKQEAgLTYzLDE1
ICs2MywxOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHZhbGlkYXRlUmVxdWVzdENvbnN0
cmFpbnRzKFZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYsIEludmFsaWRDb25zdHJhaW50c0hhbmRs
ZXImJiwgY29uc3QgTWVkaWFDb25zdHJhaW50cyYgYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVk
aWFDb25zdHJhaW50cyYgdmlkZW9Db25zdHJhaW50cyk7CiAKICAgICB1c2luZyBOZXdNZWRpYVN0
cmVhbUhhbmRsZXIgPSBzdGQ6OmZ1bmN0aW9uPHZvaWQoUmVmUHRyPE1lZGlhU3RyZWFtUHJpdmF0
ZT4mJik+OwotICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVNZWRpYVN0cmVhbShOZXdNZWRpYVN0cmVh
bUhhbmRsZXImJiwgY29uc3QgU3RyaW5nJiBhdWRpb0RldmljZUlELCBjb25zdCBTdHJpbmcmIHZp
ZGVvRGV2aWNlSUQsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIGF1ZGlvQ29uc3RyYWludHMsIGNv
bnN0IE1lZGlhQ29uc3RyYWludHMqIHZpZGVvQ29uc3RyYWludHMpID0gMDsKKyAgICB2b2lkIGNy
ZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFuZGxlciYmLCBjb25zdCBTdHJpbmcmIGF1
ZGlvRGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25z
dHJhaW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9D
b25zdHJhaW50cyk7CiAKLSAgICB2aXJ0dWFsIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBnZXRNZWRp
YVN0cmVhbURldmljZXMoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgVmVjdG9yPENhcHR1cmVE
ZXZpY2U+IGdldE1lZGlhU3RyZWFtRGV2aWNlcygpOwogICAgIAotICAgIHZpcnR1YWwgY29uc3Qg
UmVhbHRpbWVNZWRpYVNvdXJjZVN1cHBvcnRlZENvbnN0cmFpbnRzJiBzdXBwb3J0ZWRDb25zdHJh
aW50cygpIHsgcmV0dXJuIG1fc3VwcG9ydGVkQ29uc3RyYWludHM7IH0KKyAgICBjb25zdCBSZWFs
dGltZU1lZGlhU291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMmIHN1cHBvcnRlZENvbnN0cmFpbnRz
KCkgeyByZXR1cm4gbV9zdXBwb3J0ZWRDb25zdHJhaW50czsgfQogCiAgICAgdmlydHVhbCBSZWFs
dGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0QXVkaW9GYWN0b3J5
KCkgPSAwOwogICAgIHZpcnR1YWwgUmVhbHRpbWVNZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJlRmFj
dG9yeSYgZGVmYXVsdFZpZGVvRmFjdG9yeSgpID0gMDsKIAorICAgIHZpcnR1YWwgQ2FwdHVyZURl
dmljZU1hbmFnZXImIGRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgPSAwOworICAg
IHZpcnR1YWwgQ2FwdHVyZURldmljZU1hbmFnZXImIGRlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkgPSAwOworCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRBdWRpb0ZhY3Rvcnko
UmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYpOwogICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgdW5zZXRBdWRpb0ZhY3RvcnkoUmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9D
YXB0dXJlRmFjdG9yeSYpOwogICAgIFdFQkNPUkVfRVhQT1JUIFJlYWx0aW1lTWVkaWFTb3VyY2U6
OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGF1ZGlvRmFjdG9yeSgpOwpAQCAtODAsOSArODMsNiBAQCBw
dWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1bnNldFZpZGVvRmFjdG9yeShSZWFsdGlt
ZU1lZGlhU291cmNlOjpWaWRlb0NhcHR1cmVGYWN0b3J5Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQg
UmVhbHRpbWVNZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCk7
CiAKLSAgICB2aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBkZWZhdWx0QXVkaW9DYXB0dXJl
RGV2aWNlTWFuYWdlcigpID0gMDsKLSAgICB2aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBk
ZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsKLQogICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgc2V0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcihDYXB0dXJlRGV2aWNlTWFuYWdl
ciYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgdW5zZXRBdWRpb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyKENhcHR1cmVEZXZpY2VNYW5hZ2VyJik7CiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKTsKQEAgLTkzLDcgKzkzLDcgQEAgcHVibGljOgogCiAg
ICAgU3RyaW5nIGhhc2hTdHJpbmdXaXRoU2FsdChjb25zdCBTdHJpbmcmIGlkLCBjb25zdCBTdHJp
bmcmIGhhc2hTYWx0KTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGQ6Om9wdGlvbmFsPENhcHR1cmVE
ZXZpY2U+IGNhcHR1cmVEZXZpY2VXaXRoVW5pcXVlSUQoY29uc3QgU3RyaW5nJiBpZCwgY29uc3Qg
U3RyaW5nJiBoYXNoU2FsdCk7Ci0gICAgdmlydHVhbCBFeGNlcHRpb25Pcjx2b2lkPiBzZXREZXZp
Y2VFbmFibGVkKGNvbnN0IFN0cmluZyYsIGJvb2wpOworICAgIFdFQkNPUkVfRVhQT1JUIEV4Y2Vw
dGlvbk9yPHZvaWQ+IHNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiwgYm9vbCk7CiAKICAg
ICB1c2luZyBEZXZpY2VzQ2hhbmdlZE9ic2VydmVyVG9rZW4gPSB1bnNpZ25lZDsKICAgICBEZXZp
Y2VzQ2hhbmdlZE9ic2VydmVyVG9rZW4gYWRkRGV2aWNlc0NoYW5nZWRPYnNlcnZlcihzdGQ6OmZ1
bmN0aW9uPHZvaWQoKT4mJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYy5jcHAKaW5kZXggMmVmOTUwYjQ2Yjk3OGJlYzQ0YTc0ZTQyOTg5MjFhNDQwYTA4ZGNlOC4u
ZDdkNzM4OWFkZGMyNGFlZWI3ZDVkMDY4YTdkMjI1ZGE1OGQ0MjIyYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21h
Yy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcApAQCAtNjQsMTYgKzY0LDkgQEAgUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlciYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6cGxhdGZv
cm1DZW50ZXIoKQogCiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjKCkKIHsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBv
cnRzV2lkdGgodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0hl
aWdodCh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzQXNwZWN0
UmF0aW8odHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0ZyYW1l
UmF0ZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRmFjaW5n
TW9kZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzVm9sdW1l
KHRydWUpOwogICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNTYW1wbGVSYXRl
KGZhbHNlKTsKICAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzU2FtcGxlU2l6
ZShmYWxzZSk7CiAgICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0VjaG9DYW5j
ZWxsYXRpb24oZmFsc2UpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNE
ZXZpY2VJZCh0cnVlKTsKICAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzR3Jv
dXBJZCh0cnVlKTsKIH0KIApAQCAtODEsNTEgKzc0LDYgQEAgUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYzo6flJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKQogewogfQogCi12b2lkIFJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3Ry
ZWFtSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNl
SUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJhaW50cyog
YXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25zdHJhaW50
cykKLXsKLSAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiBhdWRpb1NvdXJjZXM7
Ci0gICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gdmlkZW9Tb3VyY2VzOwotICAg
IFN0cmluZyBpbnZhbGlkQ29uc3RyYWludDsKLQotICAgIGlmICghYXVkaW9EZXZpY2VJRC5pc0Vt
cHR5KCkpIHsKLSAgICAgICAgYXV0byBhdWRpb1NvdXJjZSA9IGF1ZGlvRmFjdG9yeSgpLmNyZWF0
ZUF1ZGlvQ2FwdHVyZVNvdXJjZShhdWRpb0RldmljZUlELCBhdWRpb0NvbnN0cmFpbnRzKTsKLSAg
ICAgICAgaWYgKGF1ZGlvU291cmNlKQotICAgICAgICAgICAgYXVkaW9Tb3VyY2VzLmFwcGVuZChh
dWRpb1NvdXJjZS5zb3VyY2UoKSk7Ci0gICAgICAgIGVsc2UgewotI2lmICFMT0dfRElTQUJMRUQK
LSAgICAgICAgICAgIGlmICghYXVkaW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKLSAg
ICAgICAgICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpj
cmVhdGVNZWRpYVN0cmVhbSglcCksIGF1ZGlvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTog
JXMiLCB0aGlzLCBhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7Ci0jZW5k
aWYKLSAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOwotICAgICAgICAgICAg
cmV0dXJuOwotICAgICAgICB9Ci0gICAgfQotICAgIGlmICghdmlkZW9EZXZpY2VJRC5pc0VtcHR5
KCkpIHsKLSAgICAgICAgYXV0byB2aWRlb1NvdXJjZSA9IHZpZGVvRmFjdG9yeSgpLmNyZWF0ZVZp
ZGVvQ2FwdHVyZVNvdXJjZSh2aWRlb0RldmljZUlELCB2aWRlb0NvbnN0cmFpbnRzKTsKLSAgICAg
ICAgaWYgKHZpZGVvU291cmNlKQotICAgICAgICAgICAgdmlkZW9Tb3VyY2VzLmFwcGVuZCh2aWRl
b1NvdXJjZS5zb3VyY2UoKSk7Ci0gICAgICAgIGVsc2UgewotI2lmICFMT0dfRElTQUJMRUQKLSAg
ICAgICAgICAgIGlmICghdmlkZW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKLSAgICAg
ICAgICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpjcmVh
dGVNZWRpYVN0cmVhbSglcCksIHZpZGVvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTogJXMi
LCB0aGlzLCB2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7Ci0jZW5kaWYK
LSAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOwotICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgY29tcGxldGlvbkhhbmRsZXIoTWVkaWFTdHJl
YW1Qcml2YXRlOjpjcmVhdGUoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpKTsKLX0KLQotVmVj
dG9yPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmdldE1lZGlh
U3RyZWFtRGV2aWNlcygpCi17Ci0gICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IHJlc3VsdDsKLQot
ICAgIHJlc3VsdC5hcHBlbmRWZWN0b3IoYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpLmdldEF1
ZGlvU291cmNlc0luZm8oKSk7Ci0gICAgcmVzdWx0LmFwcGVuZFZlY3Rvcih2aWRlb0NhcHR1cmVE
ZXZpY2VNYW5hZ2VyKCkuZ2V0VmlkZW9Tb3VyY2VzSW5mbygpKTsKLQotICAgIHJldHVybiByZXN1
bHQ7Ci19CiAKIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmRlZmF1bHRBdWRpb0ZhY3RvcnkoKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXJNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmgKaW5kZXggZDBmODA5MjU4ODVmOTNi
MDYxZTQ1YjU3NzMzYTE1OGRhNjI4ZDI1Ny4uODViYmZlNDQ1ZTE0ZjA2MmYwYTlmNTFlZWE2MzQy
N2Q5ZjY1ODQ1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5o
CkBAIC01MCw5ICs1MCw2IEBAIHByaXZhdGU6CiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYygpOwogICAgIH5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCk7CiAKLSAgICB2b2lk
IGNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFuZGxlciYmLCBjb25zdCBTdHJpbmcm
IGF1ZGlvRGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFD
b25zdHJhaW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlk
ZW9Db25zdHJhaW50cykgZmluYWw7Ci0gICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IGdldE1lZGlh
U3RyZWFtRGV2aWNlcygpIGZpbmFsOwotCiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9D
YXB0dXJlRmFjdG9yeSYgZGVmYXVsdEF1ZGlvRmFjdG9yeSgpIGZpbmFsOwogICAgIFJlYWx0aW1l
TWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRWaWRlb0ZhY3RvcnkoKSBm
aW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCA3ZmMyZDdjYzgwOTZkNjBj
MjhiZGEyNjI4MTRlN2NkZTdjNWRjNGEyLi44OTlhNmQ0NzAxZjc3ODRiODMxNDM2MzU4ZmQyN2Qw
OWFjZmFhNzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtNTQsNzUgKzU0LDYg
QEAgdm9pZCBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0TW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXJFbmFibGVkKGJvb2wKICAgICB9CiB9CiAKLU1vY2tSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcigpCi17Ci0gICAgbV9z
dXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1dpZHRoKHRydWUpOwotICAgIG1fc3VwcG9y
dGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNIZWlnaHQodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRD
b25zdHJhaW50cy5zZXRTdXBwb3J0c0FzcGVjdFJhdGlvKHRydWUpOwotICAgIG1fc3VwcG9ydGVk
Q29uc3RyYWludHMuc2V0U3VwcG9ydHNGcmFtZVJhdGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRD
b25zdHJhaW50cy5zZXRTdXBwb3J0c0ZhY2luZ01vZGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRD
b25zdHJhaW50cy5zZXRTdXBwb3J0c1ZvbHVtZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0
cmFpbnRzLnNldFN1cHBvcnRzRGV2aWNlSWQodHJ1ZSk7Ci19Ci0KLXZvaWQgTW9ja1JlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFuZGxl
ciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNlSUQsIGNvbnN0
IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJhaW50cyogYXVkaW9Db25z
dHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25zdHJhaW50cykKLXsKLSAg
ICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiBhdWRpb1NvdXJjZXM7Ci0gICAgVmVj
dG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gdmlkZW9Tb3VyY2VzOwotCi0gICAgaWYgKCFh
dWRpb0RldmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZp
Y2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6YXVkaW9EZXZpY2VzKCkpIHsKLSAgICAgICAg
ICAgIGlmICghY2FwdHVyZURldmljZS5lbmFibGVkKCkpCi0gICAgICAgICAgICAgICAgY29udGlu
dWU7Ci0KLSAgICAgICAgICAgIGlmIChhdWRpb0RldmljZUlEID09IGNhcHR1cmVEZXZpY2UucGVy
c2lzdGVudElkKCkpIHsKLSAgICAgICAgICAgICAgICBhdXRvIHNvdXJjZU9yRXJyb3IgPSBNb2Nr
UmVhbHRpbWVBdWRpb1NvdXJjZTo6Y3JlYXRlKGNhcHR1cmVEZXZpY2UubGFiZWwoKSwgYXVkaW9D
b25zdHJhaW50cyk7Ci0gICAgICAgICAgICAgICAgaWYgKHNvdXJjZU9yRXJyb3IpCi0gICAgICAg
ICAgICAgICAgICAgIGF1ZGlvU291cmNlcy5hcHBlbmQoc291cmNlT3JFcnJvci5zb3VyY2UoKSk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoIXZpZGVvRGV2aWNl
SUQuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgY2FwdHVyZURldmljZSA6IE1vY2tS
ZWFsdGltZU1lZGlhU291cmNlOjp2aWRlb0RldmljZXMoKSkgewotICAgICAgICAgICAgaWYgKCFj
YXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLQotICAg
ICAgICAgICAgaWYgKHZpZGVvRGV2aWNlSUQgPT0gY2FwdHVyZURldmljZS5wZXJzaXN0ZW50SWQo
KSkgewotICAgICAgICAgICAgICAgIGF1dG8gc291cmNlT3JFcnJvciA9IE1vY2tSZWFsdGltZVZp
ZGVvU291cmNlOjpjcmVhdGUoY2FwdHVyZURldmljZS5sYWJlbCgpLCB2aWRlb0NvbnN0cmFpbnRz
KTsKLSAgICAgICAgICAgICAgICBpZiAoc291cmNlT3JFcnJvcikKLSAgICAgICAgICAgICAgICAg
ICAgdmlkZW9Tb3VyY2VzLmFwcGVuZChzb3VyY2VPckVycm9yLnNvdXJjZSgpKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmICh2aWRlb1NvdXJjZXMuaXNFbXB0eSgp
ICYmIGF1ZGlvU291cmNlcy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51
bGxwdHIpOwotICAgIGVsc2UKLSAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoTWVkaWFTdHJlYW1Q
cml2YXRlOjpjcmVhdGUoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpKTsKLX0KLQotVmVjdG9y
PENhcHR1cmVEZXZpY2U+IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpnZXRNZWRpYVN0
cmVhbURldmljZXMoKQotewotICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBzb3VyY2VzOwotCi0g
ICAgZm9yIChhdXRvJiBjYXB0dXJlRGV2aWNlIDogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2U6OmF1
ZGlvRGV2aWNlcygpKSB7Ci0gICAgICAgIGlmICghY2FwdHVyZURldmljZS5lbmFibGVkKCkpCi0g
ICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBzb3VyY2VzLmFwcGVuZChjYXB0dXJlRGV2
aWNlKTsKLSAgICB9Ci0KLSAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZTo6dmlkZW9EZXZpY2VzKCkpIHsKLSAgICAgICAgaWYgKCFjYXB0dXJlRGV2
aWNlLmVuYWJsZWQoKSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIHNvdXJjZXMu
YXBwZW5kKGNhcHR1cmVEZXZpY2UpOwotICAgIH0KLQotICAgIHJldHVybiBzb3VyY2VzOwotfQot
CiBSZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6ZGVmYXVsdEF1ZGlvRmFjdG9yeSgpCiB7CiAgICAgcmV0dXJuIE1v
Y2tSZWFsdGltZUF1ZGlvU291cmNlOjpmYWN0b3J5KCk7CkBAIC0xNDMsMjAgKzc0LDEzIEBAIENh
cHR1cmVEZXZpY2VNYW5hZ2VyJiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGVmYXVs
dFZpZGVvQ2FwdHVyZURldmljZU1hCiAgICAgcmV0dXJuIG1fZGVmYXVsdFZpZGVvQ2FwdHVyZURl
dmljZU1hbmFnZXI7CiB9CiAKLUV4Y2VwdGlvbk9yPHZvaWQ+IE1vY2tSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyOjpzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYgaWQsIGJvb2wgZW5hYmxl
ZCkKK1ZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
Ok1vY2tDYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y2FwdHVyZURldmljZXMoKQogewotICAgIGZvciAo
YXV0byYgY2FwdHVyZURldmljZSA6IGdldE1lZGlhU3RyZWFtRGV2aWNlcygpKSB7Ci0gICAgICAg
IGlmIChpZCA9PSBjYXB0dXJlRGV2aWNlLnBlcnNpc3RlbnRJZCgpKSB7Ci0gICAgICAgICAgICBp
ZiAoZW5hYmxlZCAhPSBjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkgewotICAgICAgICAgICAgICAg
IGNhcHR1cmVEZXZpY2Uuc2V0RW5hYmxlZChlbmFibGVkKTsKLSAgICAgICAgICAgICAgICBjYXB0
dXJlRGV2aWNlc0NoYW5nZWQoKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgcmV0dXJu
IHsgfTsKLSAgICAgICAgfQorICAgIGlmICghbV9kZXZpY2VzLnNpemUoKSkgeworICAgICAgICBt
X2RldmljZXMuYXBwZW5kVmVjdG9yKE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjphdWRpb0Rldmlj
ZXMoKSk7CisgICAgICAgIG1fZGV2aWNlcy5hcHBlbmRWZWN0b3IoTW9ja1JlYWx0aW1lTWVkaWFT
b3VyY2U6OnZpZGVvRGV2aWNlcygpKTsKICAgICB9Ci0KLSAgICByZXR1cm4gRXhjZXB0aW9uIHsg
Tk9UX0ZPVU5EX0VSUiB9OworICAgIHJldHVybiBtX2RldmljZXM7CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9j
a1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCA3Y2UyNTkxN2YxMjg2NGEx
NTNkZmQ2NGI2Yzg5NGJhZDJmNTM5MGZiLi4wMzc0NjJiZjNhZTVmZjk4MWU4ODliMGMzYWQxYjIw
NDQwZDk5YTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC00MSwxNyArNDEsMTUgQEAg
cHJpdmF0ZToKICAgICBmcmllbmQgTmV2ZXJEZXN0cm95ZWQ8TW9ja1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXI+OwogICAgIE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyKCk7CiAKLSAgICBW
ZWN0b3I8Q2FwdHVyZURldmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkgZmluYWw7Ci0gICAg
dm9pZCBjcmVhdGVNZWRpYVN0cmVhbShOZXdNZWRpYVN0cmVhbUhhbmRsZXImJiwgY29uc3QgU3Ry
aW5nJiBhdWRpb0RldmljZUlELCBjb25zdCBTdHJpbmcmIHZpZGVvRGV2aWNlSUQsIGNvbnN0IE1l
ZGlhQ29uc3RyYWludHMqIGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMq
IHZpZGVvQ29uc3RyYWludHMpIGZpbmFsOwotCiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVk
aW9DYXB0dXJlRmFjdG9yeSYgZGVmYXVsdEF1ZGlvRmFjdG9yeSgpIGZpbmFsOwogICAgIFJlYWx0
aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRWaWRlb0ZhY3Rvcnko
KSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdEF1ZGlvQ2FwdHVyZURl
dmljZU1hbmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdFZp
ZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKIAotICAgIEV4Y2VwdGlvbk9yPHZvaWQ+
IHNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGJvb2wpIGZpbmFs
OwotCiAgICAgY2xhc3MgTW9ja0NhcHR1cmVEZXZpY2VNYW5hZ2VyIGZpbmFsIDogcHVibGljIENh
cHR1cmVEZXZpY2VNYW5hZ2VyIHsKKyAgICBwdWJsaWM6CisgICAgICAgIHZvaWQgc2V0RGV2aWNl
cyhWZWN0b3I8Q2FwdHVyZURldmljZT4mJiBkZXZpY2VzKSB7IG1fZGV2aWNlcyA9IFdURk1vdmUo
ZGV2aWNlcyk7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNl
PiYgY2FwdHVyZURldmljZXMoKSBmaW5hbCB7IHJldHVybiBtX2RldmljZXM7IH0KIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9tb2NrLW1lZGlhLXNvdXJjZS13ZWJh
dWRpby5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9tb2NrLW1lZGlhLXNvdXJj
ZS13ZWJhdWRpby5odG1sCmluZGV4IDBmMzk3MDVmMTYyMDFiZWVmMjU2N2ExYWUyOTA1YTBhOGFm
MzczZGYuLmNlOGFiZWZkMjc4M2RiZmIzNjBjNjg5YzU3ZThkYzM2ODc3NmVjNGYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vbW9jay1tZWRpYS1zb3VyY2Utd2ViYXVk
aW8uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL21vY2stbWVkaWEtc291
cmNlLXdlYmF1ZGlvLmh0bWwKQEAgLTY0LDggKzY0LDggQEAKICAgICAgICAgICAgICAgICB0ZXN0
LmRvbmUoKTsKICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgIHZhciB0aW1lb3V0ID0gc2V0
VGltZW91dChkb25lLCAzMDAwKTsKLSAgICAgICAgICAgIHZhciBpbnRlcnZhbCA9IHNldEludGVy
dmFsKGFuYWx5c2UsIDEwMDAgLyAzMCk7CisgICAgICAgICAgICB2YXIgdGltZW91dCA9IHNldFRp
bWVvdXQoKCkgPT4geyBkb25lKCk7IH0sIDMwMDApOworICAgICAgICAgICAgdmFyIGludGVydmFs
ID0gc2V0SW50ZXJ2YWwoKCkgPT4geyBhbmFseXNlKCk7IH0sIDEwMDAgLyAzMCk7CiAgICAgICAg
ICAgICBhbmFseXNlKCk7CiAgICAgICAgIH0pOwogICAgIH0sICJCYXNpYyBnZXRVc2VyTWVkaWEg
dG8gV2ViIEF1ZGlvIHRlc3QiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310658</attachid>
            <date>2017-05-19 08:22:04 -0700</date>
            <delta_ts>2017-05-19 10:12:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172324-20170519082202.patch</filename>
            <type>text/plain</type>
            <size>25294</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3MDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDAzNWRiY2RlMjVlYmZk
ZWQwMGZlM2MzNDRjMWRmOWNkMTUyYjE3Yy4uOTYzNDA5MDc0NjY3NDJkZjc5NWRmZjZiNTM0Y2Vk
ODE3MDZmYzI3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMwIEBACiAyMDE3LTA1LTE4ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAorICAgICAgICBBbGlnbiBNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlciB3aXRoIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMyNAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBvZiBi
ZWhhdmlvci4KKyAgICAgICAgUmVtb3ZpbmcgbW9zdCBvZiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlciBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgTmV4dCBzdGVwIHNob3VsZCBiZSB0byBy
ZW1vdmUgaXQgZW50aXJlbHkgYW5kIHVzZSB0aGUgZmFjdG9yeSBzZXR0ZXJzIGluc3RlYWQuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OlJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlcjo6Y3JlYXRlTWVkaWFTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6Z2V0TWVkaWFTdHJlYW1EZXZpY2VzKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERldmljZUVuYWJsZWQpOgorICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnN1cHBvcnRlZENv
bnN0cmFpbnRzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlck1hYy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5o
OgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6Ok1v
Y2tDYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y2FwdHVyZURldmljZXMpOgorICAgICAgICAqIHBsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoKKworMjAxNy0wNS0xOCAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKICAgICAgICAgQWRkIFJUQ1BlZXJD
b25uZWN0aW9uIGNvbm5lY3Rpb24gc3RhdGUgY2hhbmdlIGxvZ2dpbmcKICAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMxNAogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYzlkNjI5MTgx
ZDZjZDQxM2EwY2QyY2YwYTRkODQ1YTFiMDE3MzcxYi4uMWM2OGQ4NDkyNmVkNTE5MzQ4ZGUzYzU0
MDRmOGZjNTU2YzRmMmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgzLDkgKzI4Myw5IEBACiAJCTA3RDYzNzQwMUJCMEIx
MTMwMDI1NkNFOSAvKiBXZWJBdWRpb1NvdXJjZVByb3ZpZGVyQVZGT2JqQy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENjM3M0UxQkIwQjExMzAwMjU2
Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDdENjM3NDExQkIwQjExMzAwMjU2Q0U5
IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENjM3M0YxQkIwQjExMzAwMjU2Q0U5IC8qIFdl
YkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tICovOyB9OwogCQkwN0Q2QTRFRjFCRUNGMkQy
MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENkE0RUQxQkVDRjJEMjAwMTc0MTQ2IC8q
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmNwcCAqLzsgfTsKLQkJMDdENkE0RjAxQkVDRjJEMjAw
MTc0MTQ2IC8qIE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRFRTFCRUNGMkQyMDAxNzQxNDYgLyogTW9j
a1JlYWx0aW1lTWVkaWFTb3VyY2UuaCAqLzsgfTsKKwkJMDdENkE0RjAxQkVDRjJEMjAwMTc0MTQ2
IC8qIE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRFRTFCRUNGMkQyMDAxNzQxNDYgLyogTW9ja1JlYWx0
aW1lTWVkaWFTb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQkwN0Q2QTRGMzFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9T
b3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDdENkE0RjExQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmNwcCAq
LzsgfTsKLQkJMDdENkE0RjQxQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291
cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2
QTRGMjFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCAqLzsgfTsK
KwkJMDdENkE0RjQxQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRGMjFC
RUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwN0Q2QTRGODFCRjIzMDdEMDAx
NzQxNDYgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENkE0RjYxQkYyMzA3RDAwMTc0MTQ2IC8q
IEF1ZGlvVHJhY2tQcml2YXRlTWVkaWFTdHJlYW0uaCAqLzsgfTsKIAkJMDdFMTE2QjExNDg5QzlB
MTAwRUM1QUNFIC8qIEpTVGV4dFRyYWNrQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RTExNkIwMTQ4OUM5QTEwMEVDNUFDRSAvKiBKU1Rl
eHRUcmFja0N1c3RvbS5jcHAgKi87IH07CiAJCTA3RTExNzA3MTQ4OUVCRUIwMEVDNUFDRSAvKiBK
U1RleHRUcmFja0N1ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwN0UxMTcwNjE0ODlFQkVCMDBFQzVBQ0UgLyogSlNUZXh0VHJhY2tDdWVD
dXN0b20uY3BwICovOyB9OwpAQCAtMjk0LDcgKzI5NCw3IEBACiAJCTA3RTlFMTMwMThGNjJCMzcw
MDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFOUUxMkYxOEY2MkIzNzAw
MTFBM0E0IC8qIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAgKi87IH07CiAJ
CTA3RURDM0VFMUFBQ0I3NUQwMDk4M0VCNSAvKiBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFREMzRUQxQUFD
Qjc1RDAwOTgzRUI1IC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0gKi87IH07CiAJCTA3RUU3
NkVCMUJFOTZEQjAwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0VFNzZFOTFCRTk2REIw
MDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwICovOyB9OwotCQkwN0VFNzZF
QzFCRTk2REIwMDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkVBMUJFOTZEQjAwMEY4
OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oICovOyB9OworCQkwN0VFNzZFQzFCRTk2
REIwMDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkVBMUJFOTZEQjAwMEY4OTEzMyAv
KiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA3RUU3NkVGMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVh
bHRpbWVWaWRlb1NvdXJjZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDdFRTc2RUQxQkVBNjE5ODAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVv
U291cmNlTWFjLmggKi87IH07CiAJCTA3RUU3NkYwMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVh
bHRpbWVWaWRlb1NvdXJjZU1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3RUU3NkVFMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRl
b1NvdXJjZU1hYy5tbSAqLzsgfTsKIAkJMDdGMEI5N0ExQUM1REIzMzAwRTUzNUQ5IC8qIEFWS2l0
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Yw
Qjk3OTFBQzVEQjMzMDBFNTM1RDkgLyogQVZLaXRTUEkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNw
cAppbmRleCBjYjA5MmY1YjI4NTNkZGM1YzFlMmJiMTA0YzY5OGNkYzVkNGNmYTcyLi4yNGFhZjMw
Yzk0YjNhNTI0ZjBhMGVjYTk4MGJiNzhmNWY5MDU3Y2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmNwcApAQCAtMzUsNiArMzUsOCBAQAogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKIAorI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAiTG9nZ2lu
Zy5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgogI2luY2x1ZGUgPHd0Zi9TSEEx
Lmg+CiAKQEAgLTY4LDEyICs3MCw2NSBAQCB2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OnNldFNoYXJlZFN0cmVhbUNlbnRlck92ZXJyaWRlKFJlYWx0aW1lTWVkaWFTb3VyYwogCiBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyKCkKIHsKKyAg
ICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzV2lkdGgodHJ1ZSk7CisgICAgbV9z
dXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0hlaWdodCh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzQXNwZWN0UmF0aW8odHJ1ZSk7CisgICAgbV9zdXBw
b3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0ZyYW1lUmF0ZSh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRmFjaW5nTW9kZSh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzVm9sdW1lKHRydWUpOworICAgIG1fc3VwcG9ydGVk
Q29uc3RyYWludHMuc2V0U3VwcG9ydHNEZXZpY2VJZCh0cnVlKTsKIH0KIAogUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6flJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIoKQogewogfQogCit2b2lk
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3Ry
ZWFtSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNl
SUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJhaW50cyog
YXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25zdHJhaW50
cykKK3sKKyAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiBhdWRpb1NvdXJjZXM7
CisgICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gdmlkZW9Tb3VyY2VzOworICAg
IFN0cmluZyBpbnZhbGlkQ29uc3RyYWludDsKKworICAgIGlmICghYXVkaW9EZXZpY2VJRC5pc0Vt
cHR5KCkpIHsKKyAgICAgICAgYXV0byBhdWRpb1NvdXJjZSA9IGF1ZGlvRmFjdG9yeSgpLmNyZWF0
ZUF1ZGlvQ2FwdHVyZVNvdXJjZShhdWRpb0RldmljZUlELCBhdWRpb0NvbnN0cmFpbnRzKTsKKyAg
ICAgICAgaWYgKGF1ZGlvU291cmNlKQorICAgICAgICAgICAgYXVkaW9Tb3VyY2VzLmFwcGVuZChh
dWRpb1NvdXJjZS5zb3VyY2UoKSk7CisgICAgICAgIGVsc2UgeworI2lmICFMT0dfRElTQUJMRUQK
KyAgICAgICAgICAgIGlmICghYXVkaW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjcmVh
dGVNZWRpYVN0cmVhbSglcCksIGF1ZGlvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTogJXMi
LCB0aGlzLCBhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7CisjZW5kaWYK
KyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfQorICAgIGlmICghdmlkZW9EZXZpY2VJRC5pc0VtcHR5KCkp
IHsKKyAgICAgICAgYXV0byB2aWRlb1NvdXJjZSA9IHZpZGVvRmFjdG9yeSgpLmNyZWF0ZVZpZGVv
Q2FwdHVyZVNvdXJjZSh2aWRlb0RldmljZUlELCB2aWRlb0NvbnN0cmFpbnRzKTsKKyAgICAgICAg
aWYgKHZpZGVvU291cmNlKQorICAgICAgICAgICAgdmlkZW9Tb3VyY2VzLmFwcGVuZCh2aWRlb1Nv
dXJjZS5zb3VyY2UoKSk7CisgICAgICAgIGVsc2UgeworI2lmICFMT0dfRElTQUJMRUQKKyAgICAg
ICAgICAgIGlmICghdmlkZW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKKyAgICAgICAg
ICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjcmVhdGVNZWRp
YVN0cmVhbSglcCksIHZpZGVvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTogJXMiLCB0aGlz
LCB2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7CisjZW5kaWYKKyAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOworICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICB9CisgICAgfQorCisgICAgY29tcGxldGlvbkhhbmRsZXIoTWVkaWFTdHJlYW1Qcml2
YXRlOjpjcmVhdGUoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpKTsKK30KKworVmVjdG9yPENh
cHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmdldE1lZGlhU3RyZWFtRGV2
aWNlcygpCit7CisgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IHJlc3VsdDsKKworICAgIHJlc3Vs
dC5hcHBlbmRWZWN0b3IoYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpLmdldEF1ZGlvU291cmNl
c0luZm8oKSk7CisgICAgcmVzdWx0LmFwcGVuZFZlY3Rvcih2aWRlb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyKCkuZ2V0VmlkZW9Tb3VyY2VzSW5mbygpKTsKKworICAgIHJldHVybiByZXN1bHQ7Cit9CisK
IHZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0b3J5KFJlYWx0aW1l
TWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpCiB7CiAgICAgbV9hdWRp
b0ZhY3RvcnkgPSAmZmFjdG9yeTsKQEAgLTE4MCw5ICsyMzUsMjAgQEAgc3RkOjpvcHRpb25hbDxD
YXB0dXJlRGV2aWNlPiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjYXB0dXJlRGV2aWNlV2l0
aFVuaXF1ZUkKICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogfQogCi1FeGNlcHRpb25Pcjx2b2lk
PiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmlu
ZyYsIGJvb2wpCitFeGNlcHRpb25Pcjx2b2lkPiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpz
ZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYgaWQsIGJvb2wgZW5hYmxlZCkKIHsKLSAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgTk9UX0ZPVU5EX0VSUiwgQVNDSUlMaXRlcmFsKCJOb3QgaW1wbGVt
ZW50ZWQhIikgfTsKKyAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBnZXRNZWRpYVN0cmVh
bURldmljZXMoKSkgeworICAgICAgICBpZiAoaWQgPT0gY2FwdHVyZURldmljZS5wZXJzaXN0ZW50
SWQoKSkgeworICAgICAgICAgICAgaWYgKGVuYWJsZWQgIT0gY2FwdHVyZURldmljZS5lbmFibGVk
KCkpIHsKKyAgICAgICAgICAgICAgICBjYXB0dXJlRGV2aWNlLnNldEVuYWJsZWQoZW5hYmxlZCk7
CisgICAgICAgICAgICAgICAgY2FwdHVyZURldmljZXNDaGFuZ2VkKCk7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIHJldHVybiB7IH07CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1
cm4gRXhjZXB0aW9uIHsgTk9UX0ZPVU5EX0VSUiB9OwogfQogCiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpEZXZpY2VzQ2hhbmdlZE9ic2VydmVyVG9rZW4gUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlcjo6YWRkRGV2aWNlc0NoYW5nZWRPYnNlcnZlcihzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4mJiBv
YnNlcnZlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCA3MjBmNmMxNDcyYzYx
YmE3MWM0NmVjNDA5Y2M1YjE5ZWI5Zjg3Y2YzLi5hM2M0MDA5OWQzMjI3ZmE4YTM0NmFlMWZkYzc1
YzQyNzY4ZDNhNDg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC02MywxNSAr
NjMsMTggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCB2YWxpZGF0ZVJlcXVlc3RDb25zdHJh
aW50cyhWYWxpZENvbnN0cmFpbnRzSGFuZGxlciYmLCBJbnZhbGlkQ29uc3RyYWludHNIYW5kbGVy
JiYsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlh
Q29uc3RyYWludHMmIHZpZGVvQ29uc3RyYWludHMpOwogCiAgICAgdXNpbmcgTmV3TWVkaWFTdHJl
YW1IYW5kbGVyID0gc3RkOjpmdW5jdGlvbjx2b2lkKFJlZlB0cjxNZWRpYVN0cmVhbVByaXZhdGU+
JiYpPjsKLSAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1I
YW5kbGVyJiYsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRl
b0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25z
dCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSA9IDA7CisgICAgdm9pZCBjcmVh
dGVNZWRpYVN0cmVhbShOZXdNZWRpYVN0cmVhbUhhbmRsZXImJiwgY29uc3QgU3RyaW5nJiBhdWRp
b0RldmljZUlELCBjb25zdCBTdHJpbmcmIHZpZGVvRGV2aWNlSUQsIGNvbnN0IE1lZGlhQ29uc3Ry
YWludHMqIGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIHZpZGVvQ29u
c3RyYWludHMpOwogCi0gICAgdmlydHVhbCBWZWN0b3I8Q2FwdHVyZURldmljZT4gZ2V0TWVkaWFT
dHJlYW1EZXZpY2VzKCkgPSAwOworICAgIFdFQkNPUkVfRVhQT1JUIFZlY3RvcjxDYXB0dXJlRGV2
aWNlPiBnZXRNZWRpYVN0cmVhbURldmljZXMoKTsKICAgICAKLSAgICB2aXJ0dWFsIGNvbnN0IFJl
YWx0aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWlu
dHMoKSB7IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CisgICAgY29uc3QgUmVhbHRp
bWVNZWRpYVNvdXJjZVN1cHBvcnRlZENvbnN0cmFpbnRzJiBzdXBwb3J0ZWRDb25zdHJhaW50cygp
IHsgcmV0dXJuIG1fc3VwcG9ydGVkQ29uc3RyYWludHM7IH0KIAogICAgIHZpcnR1YWwgUmVhbHRp
bWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgZGVmYXVsdEF1ZGlvRmFjdG9yeSgp
ID0gMDsKICAgICB2aXJ0dWFsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3Rv
cnkmIGRlZmF1bHRWaWRlb0ZhY3RvcnkoKSA9IDA7CiAKKyAgICB2aXJ0dWFsIENhcHR1cmVEZXZp
Y2VNYW5hZ2VyJiBkZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsKKyAgICB2
aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBkZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNlTWFu
YWdlcigpID0gMDsKKwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0QXVkaW9GYWN0b3J5KFJl
YWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmKTsKICAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIHVuc2V0QXVkaW9GYWN0b3J5KFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmKTsKICAgICBXRUJDT1JFX0VYUE9SVCBSZWFsdGltZU1lZGlhU291cmNlOjpB
dWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnkoKTsKQEAgLTgwLDkgKzgzLDYgQEAgcHVi
bGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgdW5zZXRWaWRlb0ZhY3RvcnkoUmVhbHRpbWVN
ZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJlRmFjdG9yeSYpOwogICAgIFdFQkNPUkVfRVhQT1JUIFJl
YWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvRmFjdG9yeSgpOwog
Ci0gICAgdmlydHVhbCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdEF1ZGlvQ2FwdHVyZURl
dmljZU1hbmFnZXIoKSA9IDA7Ci0gICAgdmlydHVhbCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVm
YXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKSA9IDA7Ci0KICAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIHNldEF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoQ2FwdHVyZURldmljZU1hbmFnZXIm
KTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHVuc2V0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdl
cihDYXB0dXJlRGV2aWNlTWFuYWdlciYpOwogICAgIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBhdWRp
b0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCk7CkBAIC05Myw3ICs5Myw3IEBAIHB1YmxpYzoKIAogICAg
IFN0cmluZyBoYXNoU3RyaW5nV2l0aFNhbHQoY29uc3QgU3RyaW5nJiBpZCwgY29uc3QgU3RyaW5n
JiBoYXNoU2FsdCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RkOjpvcHRpb25hbDxDYXB0dXJlRGV2
aWNlPiBjYXB0dXJlRGV2aWNlV2l0aFVuaXF1ZUlEKGNvbnN0IFN0cmluZyYgaWQsIGNvbnN0IFN0
cmluZyYgaGFzaFNhbHQpOwotICAgIHZpcnR1YWwgRXhjZXB0aW9uT3I8dm9pZD4gc2V0RGV2aWNl
RW5hYmxlZChjb25zdCBTdHJpbmcmLCBib29sKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBFeGNlcHRp
b25Pcjx2b2lkPiBzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYsIGJvb2wpOwogCiAgICAg
dXNpbmcgRGV2aWNlc0NoYW5nZWRPYnNlcnZlclRva2VuID0gdW5zaWduZWQ7CiAgICAgRGV2aWNl
c0NoYW5nZWRPYnNlcnZlclRva2VuIGFkZERldmljZXNDaGFuZ2VkT2JzZXJ2ZXIoc3RkOjpmdW5j
dGlvbjx2b2lkKCk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJN
YWMuY3BwCmluZGV4IDJlZjk1MGI0NmI5NzhiZWM0NGE3NGU0Mjk4OTIxYTQ0MGEwOGRjZTguLmQ3
ZDczODlhZGRjMjRhZWViN2Q1ZDA2OGE3ZDIyNWRhNThkNDIyMmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTWFjLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMv
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5jcHAKQEAgLTY0LDE2ICs2NCw5IEBAIFJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXImIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnBsYXRmb3Jt
Q2VudGVyKCkKIAogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlck1hYygpCiB7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0
c1dpZHRoKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNIZWln
aHQodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0FzcGVjdFJh
dGlvKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNGcmFtZVJh
dGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0ZhY2luZ01v
ZGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1ZvbHVtZSh0
cnVlKTsKICAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzU2FtcGxlUmF0ZShm
YWxzZSk7CiAgICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1NhbXBsZVNpemUo
ZmFsc2UpOwogICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNFY2hvQ2FuY2Vs
bGF0aW9uKGZhbHNlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRGV2
aWNlSWQodHJ1ZSk7CiAgICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0dyb3Vw
SWQodHJ1ZSk7CiB9CiAKQEAgLTgxLDUxICs3NCw2IEBAIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJNYWM6On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCkKIHsKIH0KIAotdm9pZCBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpjcmVhdGVNZWRpYVN0cmVhbShOZXdNZWRpYVN0cmVh
bUhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlciwgY29uc3QgU3RyaW5nJiBhdWRpb0RldmljZUlE
LCBjb25zdCBTdHJpbmcmIHZpZGVvRGV2aWNlSUQsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIGF1
ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIHZpZGVvQ29uc3RyYWludHMp
Ci17Ci0gICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gYXVkaW9Tb3VyY2VzOwot
ICAgIFZlY3RvcjxSZWY8UmVhbHRpbWVNZWRpYVNvdXJjZT4+IHZpZGVvU291cmNlczsKLSAgICBT
dHJpbmcgaW52YWxpZENvbnN0cmFpbnQ7Ci0KLSAgICBpZiAoIWF1ZGlvRGV2aWNlSUQuaXNFbXB0
eSgpKSB7Ci0gICAgICAgIGF1dG8gYXVkaW9Tb3VyY2UgPSBhdWRpb0ZhY3RvcnkoKS5jcmVhdGVB
dWRpb0NhcHR1cmVTb3VyY2UoYXVkaW9EZXZpY2VJRCwgYXVkaW9Db25zdHJhaW50cyk7Ci0gICAg
ICAgIGlmIChhdWRpb1NvdXJjZSkKLSAgICAgICAgICAgIGF1ZGlvU291cmNlcy5hcHBlbmQoYXVk
aW9Tb3VyY2Uuc291cmNlKCkpOwotICAgICAgICBlbHNlIHsKLSNpZiAhTE9HX0RJU0FCTEVECi0g
ICAgICAgICAgICBpZiAoIWF1ZGlvU291cmNlLmVycm9yTWVzc2FnZS5pc0VtcHR5KCkpCi0gICAg
ICAgICAgICAgICAgTE9HKE1lZGlhLCAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6Y3Jl
YXRlTWVkaWFTdHJlYW0oJXApLCBhdWRpbyBjb25zdHJhaW50cyBmYWlsZWQgdG8gYXBwbHk6ICVz
IiwgdGhpcywgYXVkaW9Tb3VyY2UuZXJyb3JNZXNzYWdlLnV0ZjgoKS5kYXRhKCkpOwotI2VuZGlm
Ci0gICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihudWxscHRyKTsKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgfQotICAgIH0KLSAgICBpZiAoIXZpZGVvRGV2aWNlSUQuaXNFbXB0eSgp
KSB7Ci0gICAgICAgIGF1dG8gdmlkZW9Tb3VyY2UgPSB2aWRlb0ZhY3RvcnkoKS5jcmVhdGVWaWRl
b0NhcHR1cmVTb3VyY2UodmlkZW9EZXZpY2VJRCwgdmlkZW9Db25zdHJhaW50cyk7Ci0gICAgICAg
IGlmICh2aWRlb1NvdXJjZSkKLSAgICAgICAgICAgIHZpZGVvU291cmNlcy5hcHBlbmQodmlkZW9T
b3VyY2Uuc291cmNlKCkpOwotICAgICAgICBlbHNlIHsKLSNpZiAhTE9HX0RJU0FCTEVECi0gICAg
ICAgICAgICBpZiAoIXZpZGVvU291cmNlLmVycm9yTWVzc2FnZS5pc0VtcHR5KCkpCi0gICAgICAg
ICAgICAgICAgTE9HKE1lZGlhLCAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6Y3JlYXRl
TWVkaWFTdHJlYW0oJXApLCB2aWRlbyBjb25zdHJhaW50cyBmYWlsZWQgdG8gYXBwbHk6ICVzIiwg
dGhpcywgdmlkZW9Tb3VyY2UuZXJyb3JNZXNzYWdlLnV0ZjgoKS5kYXRhKCkpOwotI2VuZGlmCi0g
ICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihudWxscHRyKTsKLSAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGNvbXBsZXRpb25IYW5kbGVyKE1lZGlhU3RyZWFt
UHJpdmF0ZTo6Y3JlYXRlKGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2VzKSk7Ci19Ci0KLVZlY3Rv
cjxDYXB0dXJlRGV2aWNlPiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpnZXRNZWRpYVN0
cmVhbURldmljZXMoKQotewotICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiByZXN1bHQ7Ci0KLSAg
ICByZXN1bHQuYXBwZW5kVmVjdG9yKGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKS5nZXRBdWRp
b1NvdXJjZXNJbmZvKCkpOwotICAgIHJlc3VsdC5hcHBlbmRWZWN0b3IodmlkZW9DYXB0dXJlRGV2
aWNlTWFuYWdlcigpLmdldFZpZGVvU291cmNlc0luZm8oKSk7Ci0KLSAgICByZXR1cm4gcmVzdWx0
OwotfQogCiBSZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjOjpkZWZhdWx0QXVkaW9GYWN0b3J5KCkKIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9t
YWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5oCmluZGV4IGQwZjgwOTI1ODg1ZjkzYjA2
MWU0NWI1NzczM2ExNThkYTYyOGQyNTcuLjg1YmJmZTQ0NWUxNGYwNjJmMGE5ZjUxZWVhNjM0Mjdk
OWY2NTg0NTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaApA
QCAtNTAsOSArNTAsNiBAQCBwcml2YXRlOgogICAgIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJN
YWMoKTsKICAgICB+UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYygpOwogCi0gICAgdm9pZCBj
cmVhdGVNZWRpYVN0cmVhbShOZXdNZWRpYVN0cmVhbUhhbmRsZXImJiwgY29uc3QgU3RyaW5nJiBh
dWRpb0RldmljZUlELCBjb25zdCBTdHJpbmcmIHZpZGVvRGV2aWNlSUQsIGNvbnN0IE1lZGlhQ29u
c3RyYWludHMqIGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIHZpZGVv
Q29uc3RyYWludHMpIGZpbmFsOwotICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBnZXRNZWRpYVN0
cmVhbURldmljZXMoKSBmaW5hbDsKLQogICAgIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIGRlZmF1bHRBdWRpb0ZhY3RvcnkoKSBmaW5hbDsKICAgICBSZWFsdGltZU1l
ZGlhU291cmNlOjpWaWRlb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0VmlkZW9GYWN0b3J5KCkgZmlu
YWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9N
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAKaW5kZXggN2ZjMmQ3Y2M4MDk2ZDYwYzI4
YmRhMjYyODE0ZTdjZGU3YzVkYzRhMi4uNGVmZGY3MmNmYWNhYzhhZWVmN2ZlYzU1YjEyNzkwMDgw
ZDgzMDY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAKQEAgLTU0LDExMSArNTQsNiBA
QCB2b2lkIE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXRNb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlckVuYWJsZWQoYm9vbAogICAgIH0KIH0KIAotTW9ja1JlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXI6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyKCkKLXsKLSAgICBtX3N1
cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzV2lkdGgodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0
ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0hlaWdodCh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENv
bnN0cmFpbnRzLnNldFN1cHBvcnRzQXNwZWN0UmF0aW8odHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRD
b25zdHJhaW50cy5zZXRTdXBwb3J0c0ZyYW1lUmF0ZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENv
bnN0cmFpbnRzLnNldFN1cHBvcnRzRmFjaW5nTW9kZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENv
bnN0cmFpbnRzLnNldFN1cHBvcnRzVm9sdW1lKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3Ry
YWludHMuc2V0U3VwcG9ydHNEZXZpY2VJZCh0cnVlKTsKLX0KLQotdm9pZCBNb2NrUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6Y3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVy
JiYgY29tcGxldGlvbkhhbmRsZXIsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3Qg
U3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0
cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKQotewotICAg
IFZlY3RvcjxSZWY8UmVhbHRpbWVNZWRpYVNvdXJjZT4+IGF1ZGlvU291cmNlczsKLSAgICBWZWN0
b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiB2aWRlb1NvdXJjZXM7Ci0KLSAgICBpZiAoIWF1
ZGlvRGV2aWNlSUQuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgY2FwdHVyZURldmlj
ZSA6IE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjphdWRpb0RldmljZXMoKSkgewotICAgICAgICAg
ICAgaWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAgICAgICAgICAgICAgICBjb250aW51
ZTsKLQotICAgICAgICAgICAgaWYgKGF1ZGlvRGV2aWNlSUQgPT0gY2FwdHVyZURldmljZS5wZXJz
aXN0ZW50SWQoKSkgewotICAgICAgICAgICAgICAgIGF1dG8gc291cmNlT3JFcnJvciA9IE1vY2tS
ZWFsdGltZUF1ZGlvU291cmNlOjpjcmVhdGUoY2FwdHVyZURldmljZS5sYWJlbCgpLCBhdWRpb0Nv
bnN0cmFpbnRzKTsKLSAgICAgICAgICAgICAgICBpZiAoc291cmNlT3JFcnJvcikKLSAgICAgICAg
ICAgICAgICAgICAgYXVkaW9Tb3VyY2VzLmFwcGVuZChzb3VyY2VPckVycm9yLnNvdXJjZSgpKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmICghdmlkZW9EZXZpY2VJ
RC5pc0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBjYXB0dXJlRGV2aWNlIDogTW9ja1Jl
YWx0aW1lTWVkaWFTb3VyY2U6OnZpZGVvRGV2aWNlcygpKSB7Ci0gICAgICAgICAgICBpZiAoIWNh
cHR1cmVEZXZpY2UuZW5hYmxlZCgpKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAg
ICAgICAgICBpZiAodmlkZW9EZXZpY2VJRCA9PSBjYXB0dXJlRGV2aWNlLnBlcnNpc3RlbnRJZCgp
KSB7Ci0gICAgICAgICAgICAgICAgYXV0byBzb3VyY2VPckVycm9yID0gTW9ja1JlYWx0aW1lVmlk
ZW9Tb3VyY2U6OmNyZWF0ZShjYXB0dXJlRGV2aWNlLmxhYmVsKCksIHZpZGVvQ29uc3RyYWludHMp
OwotICAgICAgICAgICAgICAgIGlmIChzb3VyY2VPckVycm9yKQotICAgICAgICAgICAgICAgICAg
ICB2aWRlb1NvdXJjZXMuYXBwZW5kKHNvdXJjZU9yRXJyb3Iuc291cmNlKCkpOwotICAgICAgICAg
ICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKHZpZGVvU291cmNlcy5pc0VtcHR5KCkg
JiYgYXVkaW9Tb3VyY2VzLmlzRW1wdHkoKSkKLSAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVs
bHB0cik7Ci0gICAgZWxzZQotICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihNZWRpYVN0cmVhbVBy
aXZhdGU6OmNyZWF0ZShhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNlcykpOwotfQotCi1WZWN0b3I8
Q2FwdHVyZURldmljZT4gTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmdldE1lZGlhU3Ry
ZWFtRGV2aWNlcygpCi17Ci0gICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IHNvdXJjZXM7Ci0KLSAg
ICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6YXVk
aW9EZXZpY2VzKCkpIHsKLSAgICAgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIHNvdXJjZXMuYXBwZW5kKGNhcHR1cmVEZXZp
Y2UpOwotICAgIH0KLQotICAgIGZvciAoYXV0byYgY2FwdHVyZURldmljZSA6IE1vY2tSZWFsdGlt
ZU1lZGlhU291cmNlOjp2aWRlb0RldmljZXMoKSkgewotICAgICAgICBpZiAoIWNhcHR1cmVEZXZp
Y2UuZW5hYmxlZCgpKQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgc291cmNlcy5h
cHBlbmQoY2FwdHVyZURldmljZSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHNvdXJjZXM7Ci19Ci0K
LVJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIE1vY2tSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjpkZWZhdWx0QXVkaW9GYWN0b3J5KCkKLXsKLSAgICByZXR1cm4gTW9j
a1JlYWx0aW1lQXVkaW9Tb3VyY2U6OmZhY3RvcnkoKTsKLX0KLQotUmVhbHRpbWVNZWRpYVNvdXJj
ZTo6VmlkZW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmRl
ZmF1bHRWaWRlb0ZhY3RvcnkoKQotewotICAgIHJldHVybiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJj
ZTo6ZmFjdG9yeSgpOwotfQotCi1DYXB0dXJlRGV2aWNlTWFuYWdlciYgTW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXI6OmRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKLXsKLSAg
ICByZXR1cm4gbV9kZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsKLX0KLQotQ2FwdHVy
ZURldmljZU1hbmFnZXImIE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkZWZhdWx0Vmlk
ZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpCi17Ci0gICAgcmV0dXJuIG1fZGVmYXVsdFZpZGVvQ2Fw
dHVyZURldmljZU1hbmFnZXI7Ci19Ci0KLUV4Y2VwdGlvbk9yPHZvaWQ+IE1vY2tSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjpzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYgaWQsIGJvb2wg
ZW5hYmxlZCkKLXsKLSAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBnZXRNZWRpYVN0cmVh
bURldmljZXMoKSkgewotICAgICAgICBpZiAoaWQgPT0gY2FwdHVyZURldmljZS5wZXJzaXN0ZW50
SWQoKSkgewotICAgICAgICAgICAgaWYgKGVuYWJsZWQgIT0gY2FwdHVyZURldmljZS5lbmFibGVk
KCkpIHsKLSAgICAgICAgICAgICAgICBjYXB0dXJlRGV2aWNlLnNldEVuYWJsZWQoZW5hYmxlZCk7
Ci0gICAgICAgICAgICAgICAgY2FwdHVyZURldmljZXNDaGFuZ2VkKCk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIHJldHVybiB7IH07Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1
cm4gRXhjZXB0aW9uIHsgTk9UX0ZPVU5EX0VSUiB9OwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5oCmluZGV4IDdjZTI1OTE3ZjEyODY0YTE1M2RmZDY0YjZjODk0YmFkMmY1MzkwZmIuLmRmYTVl
ZTA0Mzc5ZDhhODIwZjk0OWRlMDhjY2NhNzY4ZmU5MjMzOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyLmgKQEAgLTI5LDYgKzI5LDggQEAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogCiAjaW5j
bHVkZSAiQ2FwdHVyZURldmljZU1hbmFnZXIuaCIKKyNpbmNsdWRlICJNb2NrUmVhbHRpbWVBdWRp
b1NvdXJjZS5oIgorI2luY2x1ZGUgIk1vY2tSZWFsdGltZVZpZGVvU291cmNlLmgiCiAjaW5jbHVk
ZSAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC0zOCwyOCArNDAsMjUgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lk
IHNldE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyRW5hYmxlZChib29sKTsKIAogcHJpdmF0
ZToKKyAgICBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcigpID0gZGVmYXVsdDsKICAgICBm
cmllbmQgTmV2ZXJEZXN0cm95ZWQ8TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI+OwotICAg
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyKCk7CiAKLSAgICBWZWN0b3I8Q2FwdHVyZURl
dmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkgZmluYWw7Ci0gICAgdm9pZCBjcmVhdGVNZWRp
YVN0cmVhbShOZXdNZWRpYVN0cmVhbUhhbmRsZXImJiwgY29uc3QgU3RyaW5nJiBhdWRpb0Rldmlj
ZUlELCBjb25zdCBTdHJpbmcmIHZpZGVvRGV2aWNlSUQsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMq
IGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMqIHZpZGVvQ29uc3RyYWlu
dHMpIGZpbmFsOworICAgIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3Rvcnkm
IGRlZmF1bHRBdWRpb0ZhY3RvcnkoKSBmaW5hbCB7IHJldHVybiBNb2NrUmVhbHRpbWVBdWRpb1Nv
dXJjZTo6ZmFjdG9yeSgpOyB9CisgICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJl
RmFjdG9yeSYgZGVmYXVsdFZpZGVvRmFjdG9yeSgpIGZpbmFsIHsgcmV0dXJuIE1vY2tSZWFsdGlt
ZVZpZGVvU291cmNlOjpmYWN0b3J5KCk7IH0KKyAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVm
YXVsdEF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbCB7IHJldHVybiBtX2RlZmF1bHRB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOyB9CisgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGRl
ZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgZmluYWwgeyByZXR1cm4gbV9kZWZhdWx0
VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQogCi0gICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6
QXVkaW9DYXB0dXJlRmFjdG9yeSYgZGVmYXVsdEF1ZGlvRmFjdG9yeSgpIGZpbmFsOwotICAgIFJl
YWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRWaWRlb0ZhY3Rv
cnkoKSBmaW5hbDsKLSAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdEF1ZGlvQ2FwdHVy
ZURldmljZU1hbmFnZXIoKSBmaW5hbDsKLSAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVs
dFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKLQotICAgIEV4Y2VwdGlvbk9yPHZv
aWQ+IHNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiBwZXJzaXN0ZW50SUQsIGJvb2wpIGZp
bmFsOwotCi0gICAgY2xhc3MgTW9ja0NhcHR1cmVEZXZpY2VNYW5hZ2VyIGZpbmFsIDogcHVibGlj
IENhcHR1cmVEZXZpY2VNYW5hZ2VyIHsKKyAgICBjbGFzcyBNb2NrQXVkaW9DYXB0dXJlRGV2aWNl
TWFuYWdlciBmaW5hbCA6IHB1YmxpYyBDYXB0dXJlRGV2aWNlTWFuYWdlciB7CiAgICAgcHJpdmF0
ZToKLSAgICAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBjYXB0dXJlRGV2aWNlcygpIGZpbmFs
IHsgcmV0dXJuIG1fZGV2aWNlczsgfQotCi0gICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBt
X2RldmljZXM7CisgICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgY2FwdHVyZURldmljZXMo
KSBmaW5hbCB7IHJldHVybiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6YXVkaW9EZXZpY2VzKCk7
IH0KKyAgICB9OworICAgIGNsYXNzIE1vY2tWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyIGZpbmFs
IDogcHVibGljIENhcHR1cmVEZXZpY2VNYW5hZ2VyIHsKKyAgICBwcml2YXRlOgorICAgICAgICBW
ZWN0b3I8Q2FwdHVyZURldmljZT4mIGNhcHR1cmVEZXZpY2VzKCkgZmluYWwgeyByZXR1cm4gTW9j
a1JlYWx0aW1lTWVkaWFTb3VyY2U6OnZpZGVvRGV2aWNlcygpOyB9CiAgICAgfTsKIAotICAgIE1v
Y2tDYXB0dXJlRGV2aWNlTWFuYWdlciBtX2RlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2Vy
OwotICAgIE1vY2tDYXB0dXJlRGV2aWNlTWFuYWdlciBtX2RlZmF1bHRWaWRlb0NhcHR1cmVEZXZp
Y2VNYW5hZ2VyOworICAgIE1vY2tBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyIG1fZGVmYXVsdEF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI7CisgICAgTW9ja1ZpZGVvQ2FwdHVyZURldmljZU1hbmFn
ZXIgbV9kZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsKIH07CiAKIH0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBl
YzEzMTQwNzQwOTlmMWFjYTlkZWQ1ODdmNmEyYTNiODMxM2NiZjk4Li5jZTNmNWM0M2Q1MWMxNjc4
ZTFhYTRkNzk5NTM0YWZlZTY3Y2I4NGViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTctMDUt
MTggIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEFsaWduIE1v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyIHdpdGggUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcyMzI0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0
L21lZGlhc3RyZWFtL21vY2stbWVkaWEtc291cmNlLXdlYmF1ZGlvLmh0bWw6CisKIDIwMTctMDUt
MTggIE1pZ3VlbCBHb21leiAgPG1hZ29tZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkIEdUSysgZ2FyZGVuaW5nLiBVcGRhdGUgZXhwZWN0YXRpb25zIG9mIHRlc3RzIGZhaWxpbmcg
YWZ0ZXIgcjIxNzAzOS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0v
bW9jay1tZWRpYS1zb3VyY2Utd2ViYXVkaW8uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFz
dHJlYW0vbW9jay1tZWRpYS1zb3VyY2Utd2ViYXVkaW8uaHRtbAppbmRleCAwZjM5NzA1ZjE2MjAx
YmVlZjI1NjdhMWFlMjkwNWEwYThhZjM3M2RmLi5jZThhYmVmZDI3ODNkYmZiMzYwYzY4OWM1N2U4
ZGMzNjg3NzZlYzRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL21v
Y2stbWVkaWEtc291cmNlLXdlYmF1ZGlvLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRp
YXN0cmVhbS9tb2NrLW1lZGlhLXNvdXJjZS13ZWJhdWRpby5odG1sCkBAIC02NCw4ICs2NCw4IEBA
CiAgICAgICAgICAgICAgICAgdGVzdC5kb25lKCk7CiAgICAgICAgICAgICB9OwogCi0gICAgICAg
ICAgICB2YXIgdGltZW91dCA9IHNldFRpbWVvdXQoZG9uZSwgMzAwMCk7Ci0gICAgICAgICAgICB2
YXIgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbChhbmFseXNlLCAxMDAwIC8gMzApOworICAgICAgICAg
ICAgdmFyIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHsgZG9uZSgpOyB9LCAzMDAwKTsKKyAg
ICAgICAgICAgIHZhciBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHsgYW5hbHlzZSgpOyB9
LCAxMDAwIC8gMzApOwogICAgICAgICAgICAgYW5hbHlzZSgpOwogICAgICAgICB9KTsKICAgICB9
LCAiQmFzaWMgZ2V0VXNlck1lZGlhIHRvIFdlYiBBdWRpbyB0ZXN0Iik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310671</attachid>
            <date>2017-05-19 10:12:55 -0700</date>
            <delta_ts>2017-05-19 14:25:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-172324-20170519101253.patch</filename>
            <type>text/plain</type>
            <size>25310</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3MDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDAzNWRiY2RlMjVlYmZk
ZWQwMGZlM2MzNDRjMWRmOWNkMTUyYjE3Yy4uOTYzNDA5MDc0NjY3NDJkZjc5NWRmZjZiNTM0Y2Vk
ODE3MDZmYzI3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMwIEBACiAyMDE3LTA1LTE4ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAorICAgICAgICBBbGlnbiBNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlciB3aXRoIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMyNAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBvZiBi
ZWhhdmlvci4KKyAgICAgICAgUmVtb3ZpbmcgbW9zdCBvZiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlciBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgTmV4dCBzdGVwIHNob3VsZCBiZSB0byBy
ZW1vdmUgaXQgZW50aXJlbHkgYW5kIHVzZSB0aGUgZmFjdG9yeSBzZXR0ZXJzIGluc3RlYWQuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OlJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlcjo6Y3JlYXRlTWVkaWFTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6Z2V0TWVkaWFTdHJlYW1EZXZpY2VzKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERldmljZUVuYWJsZWQpOgorICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnN1cHBvcnRlZENv
bnN0cmFpbnRzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlck1hYy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5o
OgorICAgICAgICAqIHBsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6Ok1v
Y2tDYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y2FwdHVyZURldmljZXMpOgorICAgICAgICAqIHBsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoKKworMjAxNy0wNS0xOCAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKICAgICAgICAgQWRkIFJUQ1BlZXJD
b25uZWN0aW9uIGNvbm5lY3Rpb24gc3RhdGUgY2hhbmdlIGxvZ2dpbmcKICAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMxNAogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYzlkNjI5MTgx
ZDZjZDQxM2EwY2QyY2YwYTRkODQ1YTFiMDE3MzcxYi4uMWM2OGQ4NDkyNmVkNTE5MzQ4ZGUzYzU0
MDRmOGZjNTU2YzRmMmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjgzLDkgKzI4Myw5IEBACiAJCTA3RDYzNzQwMUJCMEIx
MTMwMDI1NkNFOSAvKiBXZWJBdWRpb1NvdXJjZVByb3ZpZGVyQVZGT2JqQy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENjM3M0UxQkIwQjExMzAwMjU2
Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDdENjM3NDExQkIwQjExMzAwMjU2Q0U5
IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENjM3M0YxQkIwQjExMzAwMjU2Q0U5IC8qIFdl
YkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tICovOyB9OwogCQkwN0Q2QTRFRjFCRUNGMkQy
MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENkE0RUQxQkVDRjJEMjAwMTc0MTQ2IC8q
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmNwcCAqLzsgfTsKLQkJMDdENkE0RjAxQkVDRjJEMjAw
MTc0MTQ2IC8qIE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRFRTFCRUNGMkQyMDAxNzQxNDYgLyogTW9j
a1JlYWx0aW1lTWVkaWFTb3VyY2UuaCAqLzsgfTsKKwkJMDdENkE0RjAxQkVDRjJEMjAwMTc0MTQ2
IC8qIE1vY2tSZWFsdGltZU1lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRFRTFCRUNGMkQyMDAxNzQxNDYgLyogTW9ja1JlYWx0
aW1lTWVkaWFTb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQkwN0Q2QTRGMzFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9T
b3VyY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDdENkE0RjExQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmNwcCAq
LzsgfTsKLQkJMDdENkE0RjQxQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291
cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2
QTRGMjFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCAqLzsgfTsK
KwkJMDdENkE0RjQxQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRGMjFC
RUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwN0Q2QTRGODFCRjIzMDdEMDAx
NzQxNDYgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENkE0RjYxQkYyMzA3RDAwMTc0MTQ2IC8q
IEF1ZGlvVHJhY2tQcml2YXRlTWVkaWFTdHJlYW0uaCAqLzsgfTsKIAkJMDdFMTE2QjExNDg5QzlB
MTAwRUM1QUNFIC8qIEpTVGV4dFRyYWNrQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RTExNkIwMTQ4OUM5QTEwMEVDNUFDRSAvKiBKU1Rl
eHRUcmFja0N1c3RvbS5jcHAgKi87IH07CiAJCTA3RTExNzA3MTQ4OUVCRUIwMEVDNUFDRSAvKiBK
U1RleHRUcmFja0N1ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwN0UxMTcwNjE0ODlFQkVCMDBFQzVBQ0UgLyogSlNUZXh0VHJhY2tDdWVD
dXN0b20uY3BwICovOyB9OwpAQCAtMjk0LDcgKzI5NCw3IEBACiAJCTA3RTlFMTMwMThGNjJCMzcw
MDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFOUUxMkYxOEY2MkIzNzAw
MTFBM0E0IC8qIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAgKi87IH07CiAJ
CTA3RURDM0VFMUFBQ0I3NUQwMDk4M0VCNSAvKiBNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFREMzRUQxQUFD
Qjc1RDAwOTgzRUI1IC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMubW0gKi87IH07CiAJCTA3RUU3
NkVCMUJFOTZEQjAwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0VFNzZFOTFCRTk2REIw
MDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwICovOyB9OwotCQkwN0VFNzZF
QzFCRTk2REIwMDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkVBMUJFOTZEQjAwMEY4
OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oICovOyB9OworCQkwN0VFNzZFQzFCRTk2
REIwMDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkVBMUJFOTZEQjAwMEY4OTEzMyAv
KiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA3RUU3NkVGMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVh
bHRpbWVWaWRlb1NvdXJjZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDdFRTc2RUQxQkVBNjE5ODAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVv
U291cmNlTWFjLmggKi87IH07CiAJCTA3RUU3NkYwMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVh
bHRpbWVWaWRlb1NvdXJjZU1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3RUU3NkVFMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRl
b1NvdXJjZU1hYy5tbSAqLzsgfTsKIAkJMDdGMEI5N0ExQUM1REIzMzAwRTUzNUQ5IC8qIEFWS2l0
U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Yw
Qjk3OTFBQzVEQjMzMDBFNTM1RDkgLyogQVZLaXRTUEkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNw
cAppbmRleCBjYjA5MmY1YjI4NTNkZGM1YzFlMmJiMTA0YzY5OGNkYzVkNGNmYTcyLi4yNGFhZjMw
Yzk0YjNhNTI0ZjBhMGVjYTk4MGJiNzhmNWY5MDU3Y2UwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmNwcApAQCAtMzUsNiArMzUsOCBAQAogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKIAorI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAiTG9nZ2lu
Zy5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtUHJpdmF0ZS5oIgogI2luY2x1ZGUgPHd0Zi9TSEEx
Lmg+CiAKQEAgLTY4LDEyICs3MCw2NSBAQCB2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OnNldFNoYXJlZFN0cmVhbUNlbnRlck92ZXJyaWRlKFJlYWx0aW1lTWVkaWFTb3VyYwogCiBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyKCkKIHsKKyAg
ICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzV2lkdGgodHJ1ZSk7CisgICAgbV9z
dXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0hlaWdodCh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzQXNwZWN0UmF0aW8odHJ1ZSk7CisgICAgbV9zdXBw
b3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0ZyYW1lUmF0ZSh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRmFjaW5nTW9kZSh0cnVlKTsKKyAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzVm9sdW1lKHRydWUpOworICAgIG1fc3VwcG9ydGVk
Q29uc3RyYWludHMuc2V0U3VwcG9ydHNEZXZpY2VJZCh0cnVlKTsKIH0KIAogUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6flJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIoKQogewogfQogCit2b2lk
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3Ry
ZWFtSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNl
SUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJhaW50cyog
YXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25zdHJhaW50
cykKK3sKKyAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiBhdWRpb1NvdXJjZXM7
CisgICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gdmlkZW9Tb3VyY2VzOworICAg
IFN0cmluZyBpbnZhbGlkQ29uc3RyYWludDsKKworICAgIGlmICghYXVkaW9EZXZpY2VJRC5pc0Vt
cHR5KCkpIHsKKyAgICAgICAgYXV0byBhdWRpb1NvdXJjZSA9IGF1ZGlvRmFjdG9yeSgpLmNyZWF0
ZUF1ZGlvQ2FwdHVyZVNvdXJjZShhdWRpb0RldmljZUlELCBhdWRpb0NvbnN0cmFpbnRzKTsKKyAg
ICAgICAgaWYgKGF1ZGlvU291cmNlKQorICAgICAgICAgICAgYXVkaW9Tb3VyY2VzLmFwcGVuZChh
dWRpb1NvdXJjZS5zb3VyY2UoKSk7CisgICAgICAgIGVsc2UgeworI2lmICFMT0dfRElTQUJMRUQK
KyAgICAgICAgICAgIGlmICghYXVkaW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjcmVh
dGVNZWRpYVN0cmVhbSglcCksIGF1ZGlvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTogJXMi
LCB0aGlzLCBhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7CisjZW5kaWYK
KyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfQorICAgIGlmICghdmlkZW9EZXZpY2VJRC5pc0VtcHR5KCkp
IHsKKyAgICAgICAgYXV0byB2aWRlb1NvdXJjZSA9IHZpZGVvRmFjdG9yeSgpLmNyZWF0ZVZpZGVv
Q2FwdHVyZVNvdXJjZSh2aWRlb0RldmljZUlELCB2aWRlb0NvbnN0cmFpbnRzKTsKKyAgICAgICAg
aWYgKHZpZGVvU291cmNlKQorICAgICAgICAgICAgdmlkZW9Tb3VyY2VzLmFwcGVuZCh2aWRlb1Nv
dXJjZS5zb3VyY2UoKSk7CisgICAgICAgIGVsc2UgeworI2lmICFMT0dfRElTQUJMRUQKKyAgICAg
ICAgICAgIGlmICghdmlkZW9Tb3VyY2UuZXJyb3JNZXNzYWdlLmlzRW1wdHkoKSkKKyAgICAgICAg
ICAgICAgICBMT0coTWVkaWEsICJSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjcmVhdGVNZWRp
YVN0cmVhbSglcCksIHZpZGVvIGNvbnN0cmFpbnRzIGZhaWxlZCB0byBhcHBseTogJXMiLCB0aGlz
LCB2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UudXRmOCgpLmRhdGEoKSk7CisjZW5kaWYKKyAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOworICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICB9CisgICAgfQorCisgICAgY29tcGxldGlvbkhhbmRsZXIoTWVkaWFTdHJlYW1Qcml2
YXRlOjpjcmVhdGUoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpKTsKK30KKworVmVjdG9yPENh
cHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmdldE1lZGlhU3RyZWFtRGV2
aWNlcygpCit7CisgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IHJlc3VsdDsKKworICAgIHJlc3Vs
dC5hcHBlbmRWZWN0b3IoYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpLmdldEF1ZGlvU291cmNl
c0luZm8oKSk7CisgICAgcmVzdWx0LmFwcGVuZFZlY3Rvcih2aWRlb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyKCkuZ2V0VmlkZW9Tb3VyY2VzSW5mbygpKTsKKworICAgIHJldHVybiByZXN1bHQ7Cit9CisK
IHZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0b3J5KFJlYWx0aW1l
TWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpCiB7CiAgICAgbV9hdWRp
b0ZhY3RvcnkgPSAmZmFjdG9yeTsKQEAgLTE4MCw5ICsyMzUsMjAgQEAgc3RkOjpvcHRpb25hbDxD
YXB0dXJlRGV2aWNlPiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpjYXB0dXJlRGV2aWNlV2l0
aFVuaXF1ZUkKICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogfQogCi1FeGNlcHRpb25Pcjx2b2lk
PiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmlu
ZyYsIGJvb2wpCitFeGNlcHRpb25Pcjx2b2lkPiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpz
ZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYgaWQsIGJvb2wgZW5hYmxlZCkKIHsKLSAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgTk9UX0ZPVU5EX0VSUiwgQVNDSUlMaXRlcmFsKCJOb3QgaW1wbGVt
ZW50ZWQhIikgfTsKKyAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBnZXRNZWRpYVN0cmVh
bURldmljZXMoKSkgeworICAgICAgICBpZiAoaWQgPT0gY2FwdHVyZURldmljZS5wZXJzaXN0ZW50
SWQoKSkgeworICAgICAgICAgICAgaWYgKGVuYWJsZWQgIT0gY2FwdHVyZURldmljZS5lbmFibGVk
KCkpIHsKKyAgICAgICAgICAgICAgICBjYXB0dXJlRGV2aWNlLnNldEVuYWJsZWQoZW5hYmxlZCk7
CisgICAgICAgICAgICAgICAgY2FwdHVyZURldmljZXNDaGFuZ2VkKCk7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIHJldHVybiB7IH07CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1
cm4gRXhjZXB0aW9uIHsgTk9UX0ZPVU5EX0VSUiB9OwogfQogCiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpEZXZpY2VzQ2hhbmdlZE9ic2VydmVyVG9rZW4gUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlcjo6YWRkRGV2aWNlc0NoYW5nZWRPYnNlcnZlcihzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4mJiBv
YnNlcnZlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCA3MjBmNmMxNDcyYzYx
YmE3MWM0NmVjNDA5Y2M1YjE5ZWI5Zjg3Y2YzLi40YTFjMTRhYTAwZWQ0YjJkYmFhODRmNTY0MDY4
ZjNkOGE4OGY2OTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0
cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC02MywxNSAr
NjMsMTggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCB2YWxpZGF0ZVJlcXVlc3RDb25zdHJh
aW50cyhWYWxpZENvbnN0cmFpbnRzSGFuZGxlciYmLCBJbnZhbGlkQ29uc3RyYWludHNIYW5kbGVy
JiYsIGNvbnN0IE1lZGlhQ29uc3RyYWludHMmIGF1ZGlvQ29uc3RyYWludHMsIGNvbnN0IE1lZGlh
Q29uc3RyYWludHMmIHZpZGVvQ29uc3RyYWludHMpOwogCiAgICAgdXNpbmcgTmV3TWVkaWFTdHJl
YW1IYW5kbGVyID0gc3RkOjpmdW5jdGlvbjx2b2lkKFJlZlB0cjxNZWRpYVN0cmVhbVByaXZhdGU+
JiYpPjsKLSAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1I
YW5kbGVyJiYsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRl
b0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25z
dCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIGNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFuZGxlciYmLCBjb25zdCBTdHJp
bmcmIGF1ZGlvRGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVk
aWFDb25zdHJhaW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyog
dmlkZW9Db25zdHJhaW50cyk7CiAKLSAgICB2aXJ0dWFsIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiBn
ZXRNZWRpYVN0cmVhbURldmljZXMoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgdmlydHVhbCBW
ZWN0b3I8Q2FwdHVyZURldmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCk7CiAgICAgCi0gICAg
dmlydHVhbCBjb25zdCBSZWFsdGltZU1lZGlhU291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMmIHN1
cHBvcnRlZENvbnN0cmFpbnRzKCkgeyByZXR1cm4gbV9zdXBwb3J0ZWRDb25zdHJhaW50czsgfQor
ICAgIGNvbnN0IFJlYWx0aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9y
dGVkQ29uc3RyYWludHMoKSB7IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CiAKICAg
ICB2aXJ0dWFsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1
bHRBdWRpb0ZhY3RvcnkoKSA9IDA7CiAgICAgdmlydHVhbCBSZWFsdGltZU1lZGlhU291cmNlOjpW
aWRlb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0VmlkZW9GYWN0b3J5KCkgPSAwOwogCisgICAgdmly
dHVhbCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdEF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXIoKSA9IDA7CisgICAgdmlydHVhbCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdFZpZGVv
Q2FwdHVyZURldmljZU1hbmFnZXIoKSA9IDA7CisKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNl
dEF1ZGlvRmFjdG9yeShSZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5Jik7
CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1bnNldEF1ZGlvRmFjdG9yeShSZWFsdGltZU1lZGlh
U291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVhbHRp
bWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCk7CkBAIC04
MCw5ICs4Myw2IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHVuc2V0VmlkZW9G
YWN0b3J5KFJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmKTsKICAgICBX
RUJDT1JFX0VYUE9SVCBSZWFsdGltZU1lZGlhU291cmNlOjpWaWRlb0NhcHR1cmVGYWN0b3J5JiB2
aWRlb0ZhY3RvcnkoKTsKIAotICAgIHZpcnR1YWwgQ2FwdHVyZURldmljZU1hbmFnZXImIGRlZmF1
bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgPSAwOwotICAgIHZpcnR1YWwgQ2FwdHVyZURl
dmljZU1hbmFnZXImIGRlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgPSAwOwotCiAg
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKENhcHR1
cmVEZXZpY2VNYW5hZ2VyJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1bnNldEF1ZGlvQ2Fw
dHVyZURldmljZU1hbmFnZXIoQ2FwdHVyZURldmljZU1hbmFnZXImKTsKICAgICBDYXB0dXJlRGV2
aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpOwpAQCAtOTMsNyArOTMsNyBA
QCBwdWJsaWM6CiAKICAgICBTdHJpbmcgaGFzaFN0cmluZ1dpdGhTYWx0KGNvbnN0IFN0cmluZyYg
aWQsIGNvbnN0IFN0cmluZyYgaGFzaFNhbHQpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0ZDo6b3B0
aW9uYWw8Q2FwdHVyZURldmljZT4gY2FwdHVyZURldmljZVdpdGhVbmlxdWVJRChjb25zdCBTdHJp
bmcmIGlkLCBjb25zdCBTdHJpbmcmIGhhc2hTYWx0KTsKLSAgICB2aXJ0dWFsIEV4Y2VwdGlvbk9y
PHZvaWQ+IHNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiwgYm9vbCk7CisgICAgV0VCQ09S
RV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0RGV2aWNlRW5hYmxlZChjb25zdCBTdHJpbmcm
LCBib29sKTsKIAogICAgIHVzaW5nIERldmljZXNDaGFuZ2VkT2JzZXJ2ZXJUb2tlbiA9IHVuc2ln
bmVkOwogICAgIERldmljZXNDaGFuZ2VkT2JzZXJ2ZXJUb2tlbiBhZGREZXZpY2VzQ2hhbmdlZE9i
c2VydmVyKHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiYmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFj
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTWFjLmNwcAppbmRleCAyZWY5NTBiNDZiOTc4YmVjNDRhNzRlNDI5ODky
MWE0NDBhMDhkY2U4Li5kN2Q3Mzg5YWRkYzI0YWVlYjdkNWQwNjhhN2QyMjVkYTU4ZDQyMjJhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlck1hYy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwCkBAIC02NCwx
NiArNjQsOSBAQCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyJiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpwbGF0Zm9ybUNlbnRlcigpCiAKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6
OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKQogewotICAgIG1fc3VwcG9ydGVkQ29uc3Ry
YWludHMuc2V0U3VwcG9ydHNXaWR0aCh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRz
LnNldFN1cHBvcnRzSGVpZ2h0KHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0
U3VwcG9ydHNBc3BlY3RSYXRpbyh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNl
dFN1cHBvcnRzRnJhbWVSYXRlKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0
U3VwcG9ydHNGYWNpbmdNb2RlKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0
U3VwcG9ydHNWb2x1bWUodHJ1ZSk7CiAgICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBw
b3J0c1NhbXBsZVJhdGUoZmFsc2UpOwogICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3Vw
cG9ydHNTYW1wbGVTaXplKGZhbHNlKTsKICAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1
cHBvcnRzRWNob0NhbmNlbGxhdGlvbihmYWxzZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50
cy5zZXRTdXBwb3J0c0RldmljZUlkKHRydWUpOwogICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMu
c2V0U3VwcG9ydHNHcm91cElkKHRydWUpOwogfQogCkBAIC04MSw1MSArNzQsNiBAQCBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjOjp+UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYygpCiB7
CiB9CiAKLXZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6Y3JlYXRlTWVkaWFTdHJl
YW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIsIGNvbnN0IFN0cmlu
ZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRp
YUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2
aWRlb0NvbnN0cmFpbnRzKQotewotICAgIFZlY3RvcjxSZWY8UmVhbHRpbWVNZWRpYVNvdXJjZT4+
IGF1ZGlvU291cmNlczsKLSAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiB2aWRl
b1NvdXJjZXM7Ci0gICAgU3RyaW5nIGludmFsaWRDb25zdHJhaW50OwotCi0gICAgaWYgKCFhdWRp
b0RldmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBhdXRvIGF1ZGlvU291cmNlID0gYXVkaW9G
YWN0b3J5KCkuY3JlYXRlQXVkaW9DYXB0dXJlU291cmNlKGF1ZGlvRGV2aWNlSUQsIGF1ZGlvQ29u
c3RyYWludHMpOwotICAgICAgICBpZiAoYXVkaW9Tb3VyY2UpCi0gICAgICAgICAgICBhdWRpb1Nv
dXJjZXMuYXBwZW5kKGF1ZGlvU291cmNlLnNvdXJjZSgpKTsKLSAgICAgICAgZWxzZSB7Ci0jaWYg
IUxPR19ESVNBQkxFRAotICAgICAgICAgICAgaWYgKCFhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2Uu
aXNFbXB0eSgpKQotICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJNYWM6OmNyZWF0ZU1lZGlhU3RyZWFtKCVwKSwgYXVkaW8gY29uc3RyYWludHMgZmFp
bGVkIHRvIGFwcGx5OiAlcyIsIHRoaXMsIGF1ZGlvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCku
ZGF0YSgpKTsKLSNlbmRpZgotICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7
Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgaWYgKCF2aWRlb0Rl
dmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBhdXRvIHZpZGVvU291cmNlID0gdmlkZW9GYWN0
b3J5KCkuY3JlYXRlVmlkZW9DYXB0dXJlU291cmNlKHZpZGVvRGV2aWNlSUQsIHZpZGVvQ29uc3Ry
YWludHMpOwotICAgICAgICBpZiAodmlkZW9Tb3VyY2UpCi0gICAgICAgICAgICB2aWRlb1NvdXJj
ZXMuYXBwZW5kKHZpZGVvU291cmNlLnNvdXJjZSgpKTsKLSAgICAgICAgZWxzZSB7Ci0jaWYgIUxP
R19ESVNBQkxFRAotICAgICAgICAgICAgaWYgKCF2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UuaXNF
bXB0eSgpKQotICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWM6OmNyZWF0ZU1lZGlhU3RyZWFtKCVwKSwgdmlkZW8gY29uc3RyYWludHMgZmFpbGVk
IHRvIGFwcGx5OiAlcyIsIHRoaXMsIHZpZGVvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCkuZGF0
YSgpKTsKLSNlbmRpZgotICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7Ci0g
ICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBjb21wbGV0aW9uSGFu
ZGxlcihNZWRpYVN0cmVhbVByaXZhdGU6OmNyZWF0ZShhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNl
cykpOwotfQotCi1WZWN0b3I8Q2FwdHVyZURldmljZT4gUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYzo6Z2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkKLXsKLSAgICBWZWN0b3I8Q2FwdHVyZURldmlj
ZT4gcmVzdWx0OwotCi0gICAgcmVzdWx0LmFwcGVuZFZlY3RvcihhdWRpb0NhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkuZ2V0QXVkaW9Tb3VyY2VzSW5mbygpKTsKLSAgICByZXN1bHQuYXBwZW5kVmVjdG9y
KHZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKS5nZXRWaWRlb1NvdXJjZXNJbmZvKCkpOwotCi0g
ICAgcmV0dXJuIHJlc3VsdDsKLX0KIAogUmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJl
RmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGVmYXVsdEF1ZGlvRmFjdG9y
eSgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9t
YWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaAppbmRleCBk
MGY4MDkyNTg4NWY5M2IwNjFlNDViNTc3MzNhMTU4ZGE2MjhkMjU3Li44NWJiZmU0NDVlMTRmMDYy
ZjBhOWY1MWVlYTYzNDI3ZDlmNjU4NDU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyTWFjLmgKQEAgLTUwLDkgKzUwLDYgQEAgcHJpdmF0ZToKICAgICBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTWFjKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMo
KTsKIAotICAgIHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVyJiYs
IGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlE
LCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNv
bnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSBmaW5hbDsKLSAgICBWZWN0b3I8Q2FwdHVyZURl
dmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkgZmluYWw7Ci0KICAgICBSZWFsdGltZU1lZGlh
U291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0QXVkaW9GYWN0b3J5KCkgZmluYWw7
CiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJlRmFjdG9yeSYgZGVmYXVsdFZp
ZGVvRmFjdG9yeSgpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCmluZGV4IDdm
YzJkN2NjODA5NmQ2MGMyOGJkYTI2MjgxNGU3Y2RlN2M1ZGM0YTIuLjRlZmRmNzJjZmFjYWM4YWVl
ZjdmZWM1NWIxMjc5MDA4MGQ4MzA2ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3BwCkBA
IC01NCwxMTEgKzU0LDYgQEAgdm9pZCBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0
TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJFbmFibGVkKGJvb2wKICAgICB9CiB9CiAKLU1v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
cigpCi17Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1dpZHRoKHRydWUp
OwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNIZWlnaHQodHJ1ZSk7Ci0g
ICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0FzcGVjdFJhdGlvKHRydWUpOwot
ICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNGcmFtZVJhdGUodHJ1ZSk7Ci0g
ICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0ZhY2luZ01vZGUodHJ1ZSk7Ci0g
ICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1ZvbHVtZSh0cnVlKTsKLSAgICBt
X3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRGV2aWNlSWQodHJ1ZSk7Ci19Ci0KLXZv
aWQgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKE5ld01l
ZGlhU3RyZWFtSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBTdHJpbmcmIGF1ZGlv
RGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJh
aW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25z
dHJhaW50cykKLXsKLSAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiBhdWRpb1Nv
dXJjZXM7Ci0gICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291cmNlPj4gdmlkZW9Tb3VyY2Vz
OwotCi0gICAgaWYgKCFhdWRpb0RldmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1
dG8mIGNhcHR1cmVEZXZpY2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6YXVkaW9EZXZpY2Vz
KCkpIHsKLSAgICAgICAgICAgIGlmICghY2FwdHVyZURldmljZS5lbmFibGVkKCkpCi0gICAgICAg
ICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIGlmIChhdWRpb0RldmljZUlEID09IGNh
cHR1cmVEZXZpY2UucGVyc2lzdGVudElkKCkpIHsKLSAgICAgICAgICAgICAgICBhdXRvIHNvdXJj
ZU9yRXJyb3IgPSBNb2NrUmVhbHRpbWVBdWRpb1NvdXJjZTo6Y3JlYXRlKGNhcHR1cmVEZXZpY2Uu
bGFiZWwoKSwgYXVkaW9Db25zdHJhaW50cyk7Ci0gICAgICAgICAgICAgICAgaWYgKHNvdXJjZU9y
RXJyb3IpCi0gICAgICAgICAgICAgICAgICAgIGF1ZGlvU291cmNlcy5hcHBlbmQoc291cmNlT3JF
cnJvci5zb3VyY2UoKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBp
ZiAoIXZpZGVvRGV2aWNlSUQuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgY2FwdHVy
ZURldmljZSA6IE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjp2aWRlb0RldmljZXMoKSkgewotICAg
ICAgICAgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAgICAgICAgICAgICAgICBj
b250aW51ZTsKLQotICAgICAgICAgICAgaWYgKHZpZGVvRGV2aWNlSUQgPT0gY2FwdHVyZURldmlj
ZS5wZXJzaXN0ZW50SWQoKSkgewotICAgICAgICAgICAgICAgIGF1dG8gc291cmNlT3JFcnJvciA9
IE1vY2tSZWFsdGltZVZpZGVvU291cmNlOjpjcmVhdGUoY2FwdHVyZURldmljZS5sYWJlbCgpLCB2
aWRlb0NvbnN0cmFpbnRzKTsKLSAgICAgICAgICAgICAgICBpZiAoc291cmNlT3JFcnJvcikKLSAg
ICAgICAgICAgICAgICAgICAgdmlkZW9Tb3VyY2VzLmFwcGVuZChzb3VyY2VPckVycm9yLnNvdXJj
ZSgpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmICh2aWRlb1Nv
dXJjZXMuaXNFbXB0eSgpICYmIGF1ZGlvU291cmNlcy5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKG51bGxwdHIpOwotICAgIGVsc2UKLSAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoTWVkaWFTdHJlYW1Qcml2YXRlOjpjcmVhdGUoYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMp
KTsKLX0KLQotVmVjdG9yPENhcHR1cmVEZXZpY2U+IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyOjpnZXRNZWRpYVN0cmVhbURldmljZXMoKQotewotICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNl
PiBzb3VyY2VzOwotCi0gICAgZm9yIChhdXRvJiBjYXB0dXJlRGV2aWNlIDogTW9ja1JlYWx0aW1l
TWVkaWFTb3VyY2U6OmF1ZGlvRGV2aWNlcygpKSB7Ci0gICAgICAgIGlmICghY2FwdHVyZURldmlj
ZS5lbmFibGVkKCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBzb3VyY2VzLmFw
cGVuZChjYXB0dXJlRGV2aWNlKTsKLSAgICB9Ci0KLSAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZp
Y2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6dmlkZW9EZXZpY2VzKCkpIHsKLSAgICAgICAg
aWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0g
ICAgICAgIHNvdXJjZXMuYXBwZW5kKGNhcHR1cmVEZXZpY2UpOwotICAgIH0KLQotICAgIHJldHVy
biBzb3VyY2VzOwotfQotCi1SZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5
JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGVmYXVsdEF1ZGlvRmFjdG9yeSgpCi17
Ci0gICAgcmV0dXJuIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlOjpmYWN0b3J5KCk7Ci19Ci0KLVJl
YWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIE1vY2tSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyOjpkZWZhdWx0VmlkZW9GYWN0b3J5KCkKLXsKLSAgICByZXR1cm4gTW9ja1Jl
YWx0aW1lVmlkZW9Tb3VyY2U6OmZhY3RvcnkoKTsKLX0KLQotQ2FwdHVyZURldmljZU1hbmFnZXIm
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNl
TWFuYWdlcigpCi17Ci0gICAgcmV0dXJuIG1fZGVmYXVsdEF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXI7Ci19Ci0KLUNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlcjo6ZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKQotewotICAgIHJldHVybiBt
X2RlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOwotfQotCi1FeGNlcHRpb25Pcjx2b2lk
PiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0RGV2aWNlRW5hYmxlZChjb25zdCBT
dHJpbmcmIGlkLCBib29sIGVuYWJsZWQpCi17Ci0gICAgZm9yIChhdXRvJiBjYXB0dXJlRGV2aWNl
IDogZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkpIHsKLSAgICAgICAgaWYgKGlkID09IGNhcHR1cmVE
ZXZpY2UucGVyc2lzdGVudElkKCkpIHsKLSAgICAgICAgICAgIGlmIChlbmFibGVkICE9IGNhcHR1
cmVEZXZpY2UuZW5hYmxlZCgpKSB7Ci0gICAgICAgICAgICAgICAgY2FwdHVyZURldmljZS5zZXRF
bmFibGVkKGVuYWJsZWQpOwotICAgICAgICAgICAgICAgIGNhcHR1cmVEZXZpY2VzQ2hhbmdlZCgp
OwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICByZXR1cm4geyB9OwotICAgICAgICB9Ci0g
ICAgfQotCi0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5PVF9GT1VORF9FUlIgfTsKLX0KLQogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCA3Y2UyNTkxN2YxMjg2NGExNTNkZmQ2NGI2Yzg5NGJh
ZDJmNTM5MGZiLi5kZmE1ZWUwNDM3OWQ4YTgyMGY5NDlkZTA4Y2NjYTc2OGZlOTIzMzlhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC0yOSw2ICsyOSw4IEBACiAjaWYgRU5BQkxFKE1FRElB
X1NUUkVBTSkKIAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAi
TW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCIKKyNpbmNsdWRlICJNb2NrUmVhbHRpbWVWaWRlb1Nv
dXJjZS5oIgogI2luY2x1ZGUgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewpAQCAtMzgsMjggKzQwLDI1IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgdm9pZCBzZXRNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckVuYWJsZWQo
Ym9vbCk7CiAKIHByaXZhdGU6CisgICAgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIoKSA9
IGRlZmF1bHQ7CiAgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPE1vY2tSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyPjsKLSAgICBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcigpOwogCi0gICAg
VmVjdG9yPENhcHR1cmVEZXZpY2U+IGdldE1lZGlhU3RyZWFtRGV2aWNlcygpIGZpbmFsOwotICAg
IHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVyJiYsIGNvbnN0IFN0
cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBN
ZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRz
KiB2aWRlb0NvbnN0cmFpbnRzKSBmaW5hbDsKKyAgICBSZWFsdGltZU1lZGlhU291cmNlOjpBdWRp
b0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0QXVkaW9GYWN0b3J5KCkgZmluYWwgeyByZXR1cm4gTW9j
a1JlYWx0aW1lQXVkaW9Tb3VyY2U6OmZhY3RvcnkoKTsgfQorICAgIFJlYWx0aW1lTWVkaWFTb3Vy
Y2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRWaWRlb0ZhY3RvcnkoKSBmaW5hbCB7IHJl
dHVybiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZTo6ZmFjdG9yeSgpOyB9CisgICAgQ2FwdHVyZURl
dmljZU1hbmFnZXImIGRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgZmluYWwgeyBy
ZXR1cm4gbV9kZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQorICAgIENhcHR1cmVE
ZXZpY2VNYW5hZ2VyJiBkZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsIHsg
cmV0dXJuIG1fZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXI7IH0KIAotICAgIFJlYWx0
aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRBdWRpb0ZhY3Rvcnko
KSBmaW5hbDsKLSAgICBSZWFsdGltZU1lZGlhU291cmNlOjpWaWRlb0NhcHR1cmVGYWN0b3J5JiBk
ZWZhdWx0VmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGRl
ZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgZmluYWw7Ci0gICAgQ2FwdHVyZURldmlj
ZU1hbmFnZXImIGRlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgZmluYWw7Ci0KLSAg
ICBFeGNlcHRpb25Pcjx2b2lkPiBzZXREZXZpY2VFbmFibGVkKGNvbnN0IFN0cmluZyYgcGVyc2lz
dGVudElELCBib29sKSBmaW5hbDsKLQotICAgIGNsYXNzIE1vY2tDYXB0dXJlRGV2aWNlTWFuYWdl
ciBmaW5hbCA6IHB1YmxpYyBDYXB0dXJlRGV2aWNlTWFuYWdlciB7CisgICAgY2xhc3MgTW9ja0F1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgZmluYWwgOiBwdWJsaWMgQ2FwdHVyZURldmljZU1hbmFn
ZXIgewogICAgIHByaXZhdGU6Ci0gICAgICAgIFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgY2FwdHVy
ZURldmljZXMoKSBmaW5hbCB7IHJldHVybiBtX2RldmljZXM7IH0KLQotICAgICAgICBWZWN0b3I8
Q2FwdHVyZURldmljZT4gbV9kZXZpY2VzOworICAgICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4m
IGNhcHR1cmVEZXZpY2VzKCkgZmluYWwgeyByZXR1cm4gTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2U6
OmF1ZGlvRGV2aWNlcygpOyB9CisgICAgfTsKKyAgICBjbGFzcyBNb2NrVmlkZW9DYXB0dXJlRGV2
aWNlTWFuYWdlciBmaW5hbCA6IHB1YmxpYyBDYXB0dXJlRGV2aWNlTWFuYWdlciB7CisgICAgcHJp
dmF0ZToKKyAgICAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBjYXB0dXJlRGV2aWNlcygpIGZp
bmFsIHsgcmV0dXJuIE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjp2aWRlb0RldmljZXMoKTsgfQog
ICAgIH07CiAKLSAgICBNb2NrQ2FwdHVyZURldmljZU1hbmFnZXIgbV9kZWZhdWx0QXVkaW9DYXB0
dXJlRGV2aWNlTWFuYWdlcjsKLSAgICBNb2NrQ2FwdHVyZURldmljZU1hbmFnZXIgbV9kZWZhdWx0
VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsKKyAgICBNb2NrQXVkaW9DYXB0dXJlRGV2aWNlTWFu
YWdlciBtX2RlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOworICAgIE1vY2tWaWRlb0Nh
cHR1cmVEZXZpY2VNYW5hZ2VyIG1fZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXI7CiB9
OwogCiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggZWMxMzE0MDc0MDk5ZjFhY2E5ZGVkNTg3ZjZhMmEzYjgzMTNjYmY5OC4u
Y2UzZjVjNDNkNTFjMTY3OGUxYWE0ZDc5OTUzNGFmZWU2N2NiODRlYiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDEyIEBACisyMDE3LTA1LTE4ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKwor
ICAgICAgICBBbGlnbiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlciB3aXRoIFJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3MjMyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogZmFzdC9tZWRpYXN0cmVhbS9tb2NrLW1lZGlhLXNvdXJjZS13ZWJhdWRpby5o
dG1sOgorCiAyMDE3LTA1LTE4ICBNaWd1ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCBHVEsrIGdhcmRlbmluZy4gVXBkYXRlIGV4cGVjdGF0aW9ucyBv
ZiB0ZXN0cyBmYWlsaW5nIGFmdGVyIHIyMTcwMzkuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L21lZGlhc3RyZWFtL21vY2stbWVkaWEtc291cmNlLXdlYmF1ZGlvLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L21lZGlhc3RyZWFtL21vY2stbWVkaWEtc291cmNlLXdlYmF1ZGlvLmh0bWwKaW5k
ZXggMGYzOTcwNWYxNjIwMWJlZWYyNTY3YTFhZTI5MDVhMGE4YWYzNzNkZi4uY2U4YWJlZmQyNzgz
ZGJmYjM2MGM2ODljNTdlOGRjMzY4Nzc2ZWM0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9tZWRpYXN0cmVhbS9tb2NrLW1lZGlhLXNvdXJjZS13ZWJhdWRpby5odG1sCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vbW9jay1tZWRpYS1zb3VyY2Utd2ViYXVkaW8uaHRtbApA
QCAtNjQsOCArNjQsOCBAQAogICAgICAgICAgICAgICAgIHRlc3QuZG9uZSgpOwogICAgICAgICAg
ICAgfTsKIAotICAgICAgICAgICAgdmFyIHRpbWVvdXQgPSBzZXRUaW1lb3V0KGRvbmUsIDMwMDAp
OwotICAgICAgICAgICAgdmFyIGludGVydmFsID0gc2V0SW50ZXJ2YWwoYW5hbHlzZSwgMTAwMCAv
IDMwKTsKKyAgICAgICAgICAgIHZhciB0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7IGRvbmUo
KTsgfSwgMzAwMCk7CisgICAgICAgICAgICB2YXIgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9
PiB7IGFuYWx5c2UoKTsgfSwgMTAwMCAvIDMwKTsKICAgICAgICAgICAgIGFuYWx5c2UoKTsKICAg
ICAgICAgfSk7CiAgICAgfSwgIkJhc2ljIGdldFVzZXJNZWRpYSB0byBXZWIgQXVkaW8gdGVzdCIp
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310699</attachid>
            <date>2017-05-19 14:25:53 -0700</date>
            <delta_ts>2017-05-19 14:41:54 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-172324-20170519142549.patch</filename>
            <type>text/plain</type>
            <size>25227</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3MTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGY5ZGUyZWZlZDU0ZWFl
MzYyYzhhYjQ0ZTRhMTQ3NTgzZTMxNjhkYi4uN2ZiNzNkM2E2MzUxNzUzZjQ1OTdlYjgxMDVjMWZh
N2FhMjA3MzZhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE3LTA1LTE5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGlnbiBNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlciB3aXRoIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMyNAorCisgICAg
ICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICBObyBjaGFuZ2Ugb2YgYmVo
YXZpb3IuCisgICAgICAgIFJlbW92ZSBtb3N0IG9mIE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyIGltcGxlbWVudGF0aW9uLgorICAgICAgICBOZXh0IHN0ZXAgc2hvdWxkIGJlIHRvIHJlbW92
ZSBpdCBlbnRpcmVseSBhbmQgdXNlIHRoZSBmYWN0b3J5IHNldHRlcnMgaW5zdGVhZC4KKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcik6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpjcmVhdGVNZWRpYVN0cmVhbSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjpnZXRNZWRpYVN0cmVhbURldmljZXMpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0RGV2aWNlRW5hYmxlZCk6CisgICAgICAg
ICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c3VwcG9ydGVkQ29uc3Ry
YWludHMpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJNYWM6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMpOgorICAgICAgICAqIHBs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6TW9ja0Nh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpjYXB0dXJlRGV2aWNlcyk6CisgICAgICAgICogcGxhdGZvcm0v
bW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oOgorCiAyMDE3LTA1LTE5ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIFNhbWVTaXplQXNJ
bmxpbmVCb3ggd2l0aCB0aGUgY29ycmVjdCBJbmxpbmVCb3hCaXRmaWVsZHMgYml0cy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBi
ZDUyYjJlYjVhMjMzOWU1MGIxNDM1ZjVkZTRhZjc4YTczNTc5NmVlLi4wNDE5NDhmMTU0NmZhNzI4
ZjQ4MGM2Y2M4OWUwNTdiMTdmZjU4MTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yODMsOSArMjgzLDkgQEAKIAkJMDdENjM3
NDAxQkIwQjExMzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2MzczRTFCQjBC
MTEzMDAyNTZDRTkgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwN0Q2Mzc0MTFCQjBCMTEz
MDAyNTZDRTkgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2MzczRjFCQjBCMTEzMDAyNTZD
RTkgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMubW0gKi87IH07CiAJCTA3RDZBNEVG
MUJFQ0YyRDIwMDE3NDE0NiAvKiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRFRDFCRUNGMkQyMDAx
NzQxNDYgLyogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2UuY3BwICovOyB9OwotCQkwN0Q2QTRGMDFC
RUNGMkQyMDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RDZBNEVFMUJFQ0YyRDIwMDE3NDE0
NiAvKiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZS5oICovOyB9OworCQkwN0Q2QTRGMDFCRUNGMkQy
MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RDZBNEVFMUJFQ0YyRDIwMDE3NDE0NiAvKiBN
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTA3RDZBNEYzMUJFRDVGODgwMDE3NDE0NiAvKiBNb2NrUmVhbHRp
bWVBdWRpb1NvdXJjZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwN0Q2QTRGMTFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3Vy
Y2UuY3BwICovOyB9OwotCQkwN0Q2QTRGNDFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1l
QXVkaW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3RDZBNEYyMUJFRDVGODgwMDE3NDE0NiAvKiBNb2NrUmVhbHRpbWVBdWRpb1NvdXJjZS5o
ICovOyB9OworCQkwN0Q2QTRGNDFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9T
b3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
RDZBNEYyMUJFRDVGODgwMDE3NDE0NiAvKiBNb2NrUmVhbHRpbWVBdWRpb1NvdXJjZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3RDZBNEY4MUJG
MjMwN0QwMDE3NDE0NiAvKiBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlhU3RyZWFtLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0Q2QTRGNjFCRjIzMDdEMDAx
NzQxNDYgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oICovOyB9OwogCQkwN0UxMTZC
MTE0ODlDOUExMDBFQzVBQ0UgLyogSlNUZXh0VHJhY2tDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFMTE2QjAxNDg5QzlBMTAwRUM1QUNF
IC8qIEpTVGV4dFRyYWNrQ3VzdG9tLmNwcCAqLzsgfTsKIAkJMDdFMTE3MDcxNDg5RUJFQjAwRUM1
QUNFIC8qIEpTVGV4dFRyYWNrQ3VlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RTExNzA2MTQ4OUVCRUIwMEVDNUFDRSAvKiBKU1RleHRU
cmFja0N1ZUN1c3RvbS5jcHAgKi87IH07CkBAIC0yOTQsNyArMjk0LDcgQEAKIAkJMDdFOUUxMzAx
OEY2MkIzNzAwMTFBM0E0IC8qIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0U5RTEyRjE4
RjYyQjM3MDAxMUEzQTQgLyogSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlQVZGLmNwcCAq
LzsgfTsKIAkJMDdFREMzRUUxQUFDQjc1RDAwOTgzRUI1IC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJN
YWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0VE
QzNFRDFBQUNCNzVEMDA5ODNFQjUgLyogTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5tbSAqLzsgfTsK
IAkJMDdFRTc2RUIxQkU5NkRCMDAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkU5
MUJFOTZEQjAwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5jcHAgKi87IH07Ci0J
CTA3RUU3NkVDMUJFOTZEQjAwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFRTc2RUExQkU5
NkRCMDAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmggKi87IH07CisJCTA3RUU3
NkVDMUJFOTZEQjAwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFRTc2RUExQkU5NkRCMDAw
Rjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDdFRTc2RUYxQkVBNjE5ODAwRjg5MTMzIC8q
IE1vY2tSZWFsdGltZVZpZGVvU291cmNlTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwN0VFNzZFRDFCRUE2MTk4MDBGODkxMzMgLyogTW9ja1JlYWx0
aW1lVmlkZW9Tb3VyY2VNYWMuaCAqLzsgfTsKIAkJMDdFRTc2RjAxQkVBNjE5ODAwRjg5MTMzIC8q
IE1vY2tSZWFsdGltZVZpZGVvU291cmNlTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDdFRTc2RUUxQkVBNjE5ODAwRjg5MTMzIC8qIE1vY2tSZWFs
dGltZVZpZGVvU291cmNlTWFjLm1tICovOyB9OwogCQkwN0YwQjk3QTFBQzVEQjMzMDBFNTM1RDkg
LyogQVZLaXRTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3RjBCOTc5MUFDNURCMzMwMEU1MzVEOSAvKiBBVktpdFNQSS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXIuY3BwCmluZGV4IDM3ZDQ2OGI3ODEwNmY1M2RhNTgyZjE4NGNlNjgyY2I2NjZiNjMxZmYu
LjAyNWM0ZWMzZDE1N2ZlYjZjM2UxZGRkNmY1MWQ5NWI1NjdmODFiMmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXIuY3BwCkBAIC0zNSw2ICszNSw4IEBACiAKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogCisjaW5jbHVkZSAiQ2FwdHVyZURldmljZU1hbmFnZXIuaCIKKyNpbmNsdWRl
ICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW1Qcml2YXRlLmgiCiAjaW5jbHVkZSA8
d3RmL1NIQTEuaD4KIApAQCAtNjgsMTIgKzcwLDY1IEBAIHZvaWQgUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6c2V0U2hhcmVkU3RyZWFtQ2VudGVyT3ZlcnJpZGUoUmVhbHRpbWVNZWRpYVNvdXJj
CiAKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIo
KQogeworICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNXaWR0aCh0cnVlKTsK
KyAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzSGVpZ2h0KHRydWUpOworICAg
IG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNBc3BlY3RSYXRpbyh0cnVlKTsKKyAg
ICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRnJhbWVSYXRlKHRydWUpOworICAg
IG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNGYWNpbmdNb2RlKHRydWUpOworICAg
IG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNWb2x1bWUodHJ1ZSk7CisgICAgbV9z
dXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0RldmljZUlkKHRydWUpOwogfQogCiBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjp+UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcigpCiB7CiB9
CiAKK3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6Y3JlYXRlTWVkaWFTdHJlYW0oTmV3
TWVkaWFTdHJlYW1IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIsIGNvbnN0IFN0cmluZyYgYXVk
aW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0
cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0Nv
bnN0cmFpbnRzKQoreworICAgIFZlY3RvcjxSZWY8UmVhbHRpbWVNZWRpYVNvdXJjZT4+IGF1ZGlv
U291cmNlczsKKyAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVkaWFTb3VyY2U+PiB2aWRlb1NvdXJj
ZXM7CisgICAgU3RyaW5nIGludmFsaWRDb25zdHJhaW50OworCisgICAgaWYgKCFhdWRpb0Rldmlj
ZUlELmlzRW1wdHkoKSkgeworICAgICAgICBhdXRvIGF1ZGlvU291cmNlID0gYXVkaW9GYWN0b3J5
KCkuY3JlYXRlQXVkaW9DYXB0dXJlU291cmNlKGF1ZGlvRGV2aWNlSUQsIGF1ZGlvQ29uc3RyYWlu
dHMpOworICAgICAgICBpZiAoYXVkaW9Tb3VyY2UpCisgICAgICAgICAgICBhdWRpb1NvdXJjZXMu
YXBwZW5kKGF1ZGlvU291cmNlLnNvdXJjZSgpKTsKKyAgICAgICAgZWxzZSB7CisjaWYgIUxPR19E
SVNBQkxFRAorICAgICAgICAgICAgaWYgKCFhdWRpb1NvdXJjZS5lcnJvck1lc3NhZ2UuaXNFbXB0
eSgpKQorICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXI6OmNyZWF0ZU1lZGlhU3RyZWFtKCVwKSwgYXVkaW8gY29uc3RyYWludHMgZmFpbGVkIHRvIGFw
cGx5OiAlcyIsIHRoaXMsIGF1ZGlvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCkuZGF0YSgpKTsK
KyNlbmRpZgorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKCF2aWRlb0RldmljZUlELmlz
RW1wdHkoKSkgeworICAgICAgICBhdXRvIHZpZGVvU291cmNlID0gdmlkZW9GYWN0b3J5KCkuY3Jl
YXRlVmlkZW9DYXB0dXJlU291cmNlKHZpZGVvRGV2aWNlSUQsIHZpZGVvQ29uc3RyYWludHMpOwor
ICAgICAgICBpZiAodmlkZW9Tb3VyY2UpCisgICAgICAgICAgICB2aWRlb1NvdXJjZXMuYXBwZW5k
KHZpZGVvU291cmNlLnNvdXJjZSgpKTsKKyAgICAgICAgZWxzZSB7CisjaWYgIUxPR19ESVNBQkxF
RAorICAgICAgICAgICAgaWYgKCF2aWRlb1NvdXJjZS5lcnJvck1lc3NhZ2UuaXNFbXB0eSgpKQor
ICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNy
ZWF0ZU1lZGlhU3RyZWFtKCVwKSwgdmlkZW8gY29uc3RyYWludHMgZmFpbGVkIHRvIGFwcGx5OiAl
cyIsIHRoaXMsIHZpZGVvU291cmNlLmVycm9yTWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKKyNlbmRp
ZgorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIobnVsbHB0cik7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICB9CisKKyAgICBjb21wbGV0aW9uSGFuZGxlcihNZWRpYVN0
cmVhbVByaXZhdGU6OmNyZWF0ZShhdWRpb1NvdXJjZXMsIHZpZGVvU291cmNlcykpOworfQorCitW
ZWN0b3I8Q2FwdHVyZURldmljZT4gUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6Z2V0TWVkaWFT
dHJlYW1EZXZpY2VzKCkKK3sKKyAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gcmVzdWx0OworCisg
ICAgcmVzdWx0LmFwcGVuZFZlY3RvcihhdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkuZ2V0QXVk
aW9Tb3VyY2VzSW5mbygpKTsKKyAgICByZXN1bHQuYXBwZW5kVmVjdG9yKHZpZGVvQ2FwdHVyZURl
dmljZU1hbmFnZXIoKS5nZXRWaWRlb1NvdXJjZXNJbmZvKCkpOworCisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KKwogdm9pZCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXRBdWRpb0ZhY3Rvcnko
UmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgZmFjdG9yeSkKIHsKICAg
ICBtX2F1ZGlvRmFjdG9yeSA9ICZmYWN0b3J5OwpAQCAtMTgwLDkgKzIzNSwyMCBAQCBzdGQ6Om9w
dGlvbmFsPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1cmVE
ZXZpY2VXaXRoVW5pcXVlSQogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiB9CiAKLUV4Y2VwdGlv
bk9yPHZvaWQ+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERldmljZUVuYWJsZWQoY29u
c3QgU3RyaW5nJiwgYm9vbCkKK0V4Y2VwdGlvbk9yPHZvaWQ+IFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OnNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiBpZCwgYm9vbCBlbmFibGVkKQog
ewotICAgIHJldHVybiBFeGNlcHRpb24geyBOT1RfRk9VTkRfRVJSLCBBU0NJSUxpdGVyYWwoIk5v
dCBpbXBsZW1lbnRlZCEiKSB9OworICAgIGZvciAoYXV0byYgY2FwdHVyZURldmljZSA6IGdldE1l
ZGlhU3RyZWFtRGV2aWNlcygpKSB7CisgICAgICAgIGlmIChpZCA9PSBjYXB0dXJlRGV2aWNlLnBl
cnNpc3RlbnRJZCgpKSB7CisgICAgICAgICAgICBpZiAoZW5hYmxlZCAhPSBjYXB0dXJlRGV2aWNl
LmVuYWJsZWQoKSkgeworICAgICAgICAgICAgICAgIGNhcHR1cmVEZXZpY2Uuc2V0RW5hYmxlZChl
bmFibGVkKTsKKyAgICAgICAgICAgICAgICBjYXB0dXJlRGV2aWNlc0NoYW5nZWQoKTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgcmV0dXJuIHsgfTsKKyAgICAgICAgfQorICAgIH0KKwor
ICAgIHJldHVybiBFeGNlcHRpb24geyBOT1RfRk9VTkRfRVJSIH07CiB9CiAKIFJlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXI6OkRldmljZXNDaGFuZ2VkT2JzZXJ2ZXJUb2tlbiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyOjphZGREZXZpY2VzQ2hhbmdlZE9ic2VydmVyKHN0ZDo6ZnVuY3Rpb248dm9p
ZCgpPiYmIG9ic2VydmVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVk
aWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCmluZGV4IDliYTE0
YjU3YjMxNzNkMGZiYTAwYjQ5N2QzYjViNTY0MTQwYjc3MWIuLjEyMWE3ZjE3NDMwZWNlMTI0OTU0
NzNhYmQ0MDU1MzlhN2YwZjE1YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKQEAg
LTYzLDE1ICs2MywxOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHZhbGlkYXRlUmVxdWVz
dENvbnN0cmFpbnRzKFZhbGlkQ29uc3RyYWludHNIYW5kbGVyJiYsIEludmFsaWRDb25zdHJhaW50
c0hhbmRsZXImJiwgY29uc3QgTWVkaWFDb25zdHJhaW50cyYgYXVkaW9Db25zdHJhaW50cywgY29u
c3QgTWVkaWFDb25zdHJhaW50cyYgdmlkZW9Db25zdHJhaW50cywgU3RyaW5nJiYpOwogCiAgICAg
dXNpbmcgTmV3TWVkaWFTdHJlYW1IYW5kbGVyID0gc3RkOjpmdW5jdGlvbjx2b2lkKFJlZlB0cjxN
ZWRpYVN0cmVhbVByaXZhdGU+JiYpPjsKLSAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlTWVkaWFTdHJl
YW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVyJiYsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwg
Y29uc3QgU3RyaW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRp
b0NvbnN0cmFpbnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIGNyZWF0ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFu
ZGxlciYmLCBjb25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9E
ZXZpY2VJRCwgY29uc3QgTWVkaWFDb25zdHJhaW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3Qg
TWVkaWFDb25zdHJhaW50cyogdmlkZW9Db25zdHJhaW50cyk7CiAKLSAgICB2aXJ0dWFsIFZlY3Rv
cjxDYXB0dXJlRGV2aWNlPiBnZXRNZWRpYVN0cmVhbURldmljZXMoKSA9IDA7CisgICAgV0VCQ09S
RV9FWFBPUlQgdmlydHVhbCBWZWN0b3I8Q2FwdHVyZURldmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZp
Y2VzKCk7CiAgICAgCi0gICAgdmlydHVhbCBjb25zdCBSZWFsdGltZU1lZGlhU291cmNlU3VwcG9y
dGVkQ29uc3RyYWludHMmIHN1cHBvcnRlZENvbnN0cmFpbnRzKCkgeyByZXR1cm4gbV9zdXBwb3J0
ZWRDb25zdHJhaW50czsgfQorICAgIGNvbnN0IFJlYWx0aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRD
b25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWludHMoKSB7IHJldHVybiBtX3N1cHBvcnRlZENv
bnN0cmFpbnRzOyB9CiAKICAgICB2aXJ0dWFsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIGRlZmF1bHRBdWRpb0ZhY3RvcnkoKSA9IDA7CiAgICAgdmlydHVhbCBSZWFs
dGltZU1lZGlhU291cmNlOjpWaWRlb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0VmlkZW9GYWN0b3J5
KCkgPSAwOwogCisgICAgdmlydHVhbCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgZGVmYXVsdEF1ZGlv
Q2FwdHVyZURldmljZU1hbmFnZXIoKSA9IDA7CisgICAgdmlydHVhbCBDYXB0dXJlRGV2aWNlTWFu
YWdlciYgZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKSA9IDA7CisKICAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHNldEF1ZGlvRmFjdG9yeShSZWFsdGltZU1lZGlhU291cmNlOjpBdWRp
b0NhcHR1cmVGYWN0b3J5Jik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB1bnNldEF1ZGlvRmFj
dG9yeShSZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5Jik7CiAgICAgV0VC
Q09SRV9FWFBPUlQgUmVhbHRpbWVNZWRpYVNvdXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVk
aW9GYWN0b3J5KCk7CkBAIC04MCw5ICs4Myw2IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIHVuc2V0VmlkZW9GYWN0b3J5KFJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVy
ZUZhY3RvcnkmKTsKICAgICBXRUJDT1JFX0VYUE9SVCBSZWFsdGltZU1lZGlhU291cmNlOjpWaWRl
b0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnkoKTsKIAotICAgIHZpcnR1YWwgQ2FwdHVyZURl
dmljZU1hbmFnZXImIGRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgPSAwOwotICAg
IHZpcnR1YWwgQ2FwdHVyZURldmljZU1hbmFnZXImIGRlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkgPSAwOwotCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRBdWRpb0NhcHR1cmVE
ZXZpY2VNYW5hZ2VyKENhcHR1cmVEZXZpY2VNYW5hZ2VyJik7CiAgICAgV0VCQ09SRV9FWFBPUlQg
dm9pZCB1bnNldEF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoQ2FwdHVyZURldmljZU1hbmFnZXIm
KTsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigp
OwpAQCAtOTMsNyArOTMsNyBAQCBwdWJsaWM6CiAKICAgICBTdHJpbmcgaGFzaFN0cmluZ1dpdGhT
YWx0KGNvbnN0IFN0cmluZyYgaWQsIGNvbnN0IFN0cmluZyYgaGFzaFNhbHQpOwogICAgIFdFQkNP
UkVfRVhQT1JUIHN0ZDo6b3B0aW9uYWw8Q2FwdHVyZURldmljZT4gY2FwdHVyZURldmljZVdpdGhV
bmlxdWVJRChjb25zdCBTdHJpbmcmIGlkLCBjb25zdCBTdHJpbmcmIGhhc2hTYWx0KTsKLSAgICB2
aXJ0dWFsIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldERldmljZUVuYWJsZWQoY29uc3QgU3RyaW5nJiwg
Ym9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgRXhjZXB0aW9uT3I8dm9pZD4gc2V0RGV2aWNlRW5h
YmxlZChjb25zdCBTdHJpbmcmLCBib29sKTsKIAogICAgIHVzaW5nIERldmljZXNDaGFuZ2VkT2Jz
ZXJ2ZXJUb2tlbiA9IHVuc2lnbmVkOwogICAgIERldmljZXNDaGFuZ2VkT2JzZXJ2ZXJUb2tlbiBh
ZGREZXZpY2VzQ2hhbmdlZE9ic2VydmVyKHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiYmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTWFjLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcAppbmRleCAyZWY5NTBiNDZi
OTc4YmVjNDRhNzRlNDI5ODkyMWE0NDBhMDhkY2U4Li5kN2Q3Mzg5YWRkYzI0YWVlYjdkNWQwNjhh
N2QyMjVkYTU4ZDQyMjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJNYWMuY3BwCkBAIC02NCwxNiArNjQsOSBAQCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyJiBS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpwbGF0Zm9ybUNlbnRlcigpCiAKIFJlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXJNYWM6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKQogewotICAg
IG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNXaWR0aCh0cnVlKTsKLSAgICBtX3N1
cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzSGVpZ2h0KHRydWUpOwotICAgIG1fc3VwcG9y
dGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNBc3BlY3RSYXRpbyh0cnVlKTsKLSAgICBtX3N1cHBv
cnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRnJhbWVSYXRlKHRydWUpOwotICAgIG1fc3VwcG9y
dGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNGYWNpbmdNb2RlKHRydWUpOwotICAgIG1fc3VwcG9y
dGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNWb2x1bWUodHJ1ZSk7CiAgICAgbV9zdXBwb3J0ZWRD
b25zdHJhaW50cy5zZXRTdXBwb3J0c1NhbXBsZVJhdGUoZmFsc2UpOwogICAgIG1fc3VwcG9ydGVk
Q29uc3RyYWludHMuc2V0U3VwcG9ydHNTYW1wbGVTaXplKGZhbHNlKTsKICAgICBtX3N1cHBvcnRl
ZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRWNob0NhbmNlbGxhdGlvbihmYWxzZSk7Ci0gICAgbV9z
dXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0RldmljZUlkKHRydWUpOwogICAgIG1fc3Vw
cG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNHcm91cElkKHRydWUpOwogfQogCkBAIC04MSw1
MSArNzQsNiBAQCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp+UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlck1hYygpCiB7CiB9CiAKLXZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1h
Yzo6Y3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1IYW5kbGVyJiYgY29tcGxldGlvbkhh
bmRsZXIsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRlb0Rl
dmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25zdCBN
ZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKQotewotICAgIFZlY3RvcjxSZWY8UmVh
bHRpbWVNZWRpYVNvdXJjZT4+IGF1ZGlvU291cmNlczsKLSAgICBWZWN0b3I8UmVmPFJlYWx0aW1l
TWVkaWFTb3VyY2U+PiB2aWRlb1NvdXJjZXM7Ci0gICAgU3RyaW5nIGludmFsaWRDb25zdHJhaW50
OwotCi0gICAgaWYgKCFhdWRpb0RldmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBhdXRvIGF1
ZGlvU291cmNlID0gYXVkaW9GYWN0b3J5KCkuY3JlYXRlQXVkaW9DYXB0dXJlU291cmNlKGF1ZGlv
RGV2aWNlSUQsIGF1ZGlvQ29uc3RyYWludHMpOwotICAgICAgICBpZiAoYXVkaW9Tb3VyY2UpCi0g
ICAgICAgICAgICBhdWRpb1NvdXJjZXMuYXBwZW5kKGF1ZGlvU291cmNlLnNvdXJjZSgpKTsKLSAg
ICAgICAgZWxzZSB7Ci0jaWYgIUxPR19ESVNBQkxFRAotICAgICAgICAgICAgaWYgKCFhdWRpb1Nv
dXJjZS5lcnJvck1lc3NhZ2UuaXNFbXB0eSgpKQotICAgICAgICAgICAgICAgIExPRyhNZWRpYSwg
IlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmNyZWF0ZU1lZGlhU3RyZWFtKCVwKSwgYXVk
aW8gY29uc3RyYWludHMgZmFpbGVkIHRvIGFwcGx5OiAlcyIsIHRoaXMsIGF1ZGlvU291cmNlLmVy
cm9yTWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKLSNlbmRpZgotICAgICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIobnVsbHB0cik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICB9
Ci0gICAgaWYgKCF2aWRlb0RldmljZUlELmlzRW1wdHkoKSkgewotICAgICAgICBhdXRvIHZpZGVv
U291cmNlID0gdmlkZW9GYWN0b3J5KCkuY3JlYXRlVmlkZW9DYXB0dXJlU291cmNlKHZpZGVvRGV2
aWNlSUQsIHZpZGVvQ29uc3RyYWludHMpOwotICAgICAgICBpZiAodmlkZW9Tb3VyY2UpCi0gICAg
ICAgICAgICB2aWRlb1NvdXJjZXMuYXBwZW5kKHZpZGVvU291cmNlLnNvdXJjZSgpKTsKLSAgICAg
ICAgZWxzZSB7Ci0jaWYgIUxPR19ESVNBQkxFRAotICAgICAgICAgICAgaWYgKCF2aWRlb1NvdXJj
ZS5lcnJvck1lc3NhZ2UuaXNFbXB0eSgpKQotICAgICAgICAgICAgICAgIExPRyhNZWRpYSwgIlJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmNyZWF0ZU1lZGlhU3RyZWFtKCVwKSwgdmlkZW8g
Y29uc3RyYWludHMgZmFpbGVkIHRvIGFwcGx5OiAlcyIsIHRoaXMsIHZpZGVvU291cmNlLmVycm9y
TWVzc2FnZS51dGY4KCkuZGF0YSgpKTsKLSNlbmRpZgotICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIobnVsbHB0cik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICB9Ci0K
LSAgICBjb21wbGV0aW9uSGFuZGxlcihNZWRpYVN0cmVhbVByaXZhdGU6OmNyZWF0ZShhdWRpb1Nv
dXJjZXMsIHZpZGVvU291cmNlcykpOwotfQotCi1WZWN0b3I8Q2FwdHVyZURldmljZT4gUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6Z2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkKLXsKLSAgICBW
ZWN0b3I8Q2FwdHVyZURldmljZT4gcmVzdWx0OwotCi0gICAgcmVzdWx0LmFwcGVuZFZlY3Rvcihh
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkuZ2V0QXVkaW9Tb3VyY2VzSW5mbygpKTsKLSAgICBy
ZXN1bHQuYXBwZW5kVmVjdG9yKHZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIoKS5nZXRWaWRlb1Nv
dXJjZXNJbmZvKCkpOwotCi0gICAgcmV0dXJuIHJlc3VsdDsKLX0KIAogUmVhbHRpbWVNZWRpYVNv
dXJjZTo6QXVkaW9DYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6
ZGVmYXVsdEF1ZGlvRmFjdG9yeSgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWMuaAppbmRleCBkMGY4MDkyNTg4NWY5M2IwNjFlNDViNTc3MzNhMTU4ZGE2MjhkMjU3
Li44NWJiZmU0NDVlMTRmMDYyZjBhOWY1MWVlYTYzNDI3ZDlmNjU4NDU4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlck1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21h
Yy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmgKQEAgLTUwLDkgKzUwLDYgQEAgcHJpdmF0
ZToKICAgICBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCk7CiAgICAgflJlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXJNYWMoKTsKIAotICAgIHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVk
aWFTdHJlYW1IYW5kbGVyJiYsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3Ry
aW5nJiB2aWRlb0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFp
bnRzLCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSBmaW5hbDsKLSAg
ICBWZWN0b3I8Q2FwdHVyZURldmljZT4gZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkgZmluYWw7Ci0K
ICAgICBSZWFsdGltZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0QXVk
aW9GYWN0b3J5KCkgZmluYWw7CiAgICAgUmVhbHRpbWVNZWRpYVNvdXJjZTo6VmlkZW9DYXB0dXJl
RmFjdG9yeSYgZGVmYXVsdFZpZGVvRmFjdG9yeSgpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXIuY3BwCmluZGV4IDdmYzJkN2NjODA5NmQ2MGMyOGJkYTI2MjgxNGU3Y2RlN2M1ZGM0YTIu
LjRlZmRmNzJjZmFjYWM4YWVlZjdmZWM1NWIxMjc5MDA4MGQ4MzA2ODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXIuY3BwCkBAIC01NCwxMTEgKzU0LDYgQEAgdm9pZCBNb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6c2V0TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJFbmFibGVkKGJv
b2wKICAgICB9CiB9CiAKLU1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcigpCi17Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRT
dXBwb3J0c1dpZHRoKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9y
dHNIZWlnaHQodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0Fz
cGVjdFJhdGlvKHRydWUpOwotICAgIG1fc3VwcG9ydGVkQ29uc3RyYWludHMuc2V0U3VwcG9ydHNG
cmFtZVJhdGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c0Zh
Y2luZ01vZGUodHJ1ZSk7Ci0gICAgbV9zdXBwb3J0ZWRDb25zdHJhaW50cy5zZXRTdXBwb3J0c1Zv
bHVtZSh0cnVlKTsKLSAgICBtX3N1cHBvcnRlZENvbnN0cmFpbnRzLnNldFN1cHBvcnRzRGV2aWNl
SWQodHJ1ZSk7Ci19Ci0KLXZvaWQgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNyZWF0
ZU1lZGlhU3RyZWFtKE5ld01lZGlhU3RyZWFtSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBj
b25zdCBTdHJpbmcmIGF1ZGlvRGV2aWNlSUQsIGNvbnN0IFN0cmluZyYgdmlkZW9EZXZpY2VJRCwg
Y29uc3QgTWVkaWFDb25zdHJhaW50cyogYXVkaW9Db25zdHJhaW50cywgY29uc3QgTWVkaWFDb25z
dHJhaW50cyogdmlkZW9Db25zdHJhaW50cykKLXsKLSAgICBWZWN0b3I8UmVmPFJlYWx0aW1lTWVk
aWFTb3VyY2U+PiBhdWRpb1NvdXJjZXM7Ci0gICAgVmVjdG9yPFJlZjxSZWFsdGltZU1lZGlhU291
cmNlPj4gdmlkZW9Tb3VyY2VzOwotCi0gICAgaWYgKCFhdWRpb0RldmljZUlELmlzRW1wdHkoKSkg
ewotICAgICAgICBmb3IgKGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNv
dXJjZTo6YXVkaW9EZXZpY2VzKCkpIHsKLSAgICAgICAgICAgIGlmICghY2FwdHVyZURldmljZS5l
bmFibGVkKCkpCi0gICAgICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgICAgIGlmIChh
dWRpb0RldmljZUlEID09IGNhcHR1cmVEZXZpY2UucGVyc2lzdGVudElkKCkpIHsKLSAgICAgICAg
ICAgICAgICBhdXRvIHNvdXJjZU9yRXJyb3IgPSBNb2NrUmVhbHRpbWVBdWRpb1NvdXJjZTo6Y3Jl
YXRlKGNhcHR1cmVEZXZpY2UubGFiZWwoKSwgYXVkaW9Db25zdHJhaW50cyk7Ci0gICAgICAgICAg
ICAgICAgaWYgKHNvdXJjZU9yRXJyb3IpCi0gICAgICAgICAgICAgICAgICAgIGF1ZGlvU291cmNl
cy5hcHBlbmQoc291cmNlT3JFcnJvci5zb3VyY2UoKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
IH0KLSAgICB9Ci0KLSAgICBpZiAoIXZpZGVvRGV2aWNlSUQuaXNFbXB0eSgpKSB7Ci0gICAgICAg
IGZvciAoYXV0byYgY2FwdHVyZURldmljZSA6IE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjp2aWRl
b0RldmljZXMoKSkgewotICAgICAgICAgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkK
LSAgICAgICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICAgICAgaWYgKHZpZGVvRGV2aWNl
SUQgPT0gY2FwdHVyZURldmljZS5wZXJzaXN0ZW50SWQoKSkgewotICAgICAgICAgICAgICAgIGF1
dG8gc291cmNlT3JFcnJvciA9IE1vY2tSZWFsdGltZVZpZGVvU291cmNlOjpjcmVhdGUoY2FwdHVy
ZURldmljZS5sYWJlbCgpLCB2aWRlb0NvbnN0cmFpbnRzKTsKLSAgICAgICAgICAgICAgICBpZiAo
c291cmNlT3JFcnJvcikKLSAgICAgICAgICAgICAgICAgICAgdmlkZW9Tb3VyY2VzLmFwcGVuZChz
b3VyY2VPckVycm9yLnNvdXJjZSgpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0K
LQotICAgIGlmICh2aWRlb1NvdXJjZXMuaXNFbXB0eSgpICYmIGF1ZGlvU291cmNlcy5pc0VtcHR5
KCkpCi0gICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKG51bGxwdHIpOwotICAgIGVsc2UKLSAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoTWVkaWFTdHJlYW1Qcml2YXRlOjpjcmVhdGUoYXVkaW9Tb3Vy
Y2VzLCB2aWRlb1NvdXJjZXMpKTsKLX0KLQotVmVjdG9yPENhcHR1cmVEZXZpY2U+IE1vY2tSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjpnZXRNZWRpYVN0cmVhbURldmljZXMoKQotewotICAgIFZl
Y3RvcjxDYXB0dXJlRGV2aWNlPiBzb3VyY2VzOwotCi0gICAgZm9yIChhdXRvJiBjYXB0dXJlRGV2
aWNlIDogTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2U6OmF1ZGlvRGV2aWNlcygpKSB7Ci0gICAgICAg
IGlmICghY2FwdHVyZURldmljZS5lbmFibGVkKCkpCi0gICAgICAgICAgICBjb250aW51ZTsKLQot
ICAgICAgICBzb3VyY2VzLmFwcGVuZChjYXB0dXJlRGV2aWNlKTsKLSAgICB9Ci0KLSAgICBmb3Ig
KGF1dG8mIGNhcHR1cmVEZXZpY2UgOiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZTo6dmlkZW9EZXZp
Y2VzKCkpIHsKLSAgICAgICAgaWYgKCFjYXB0dXJlRGV2aWNlLmVuYWJsZWQoKSkKLSAgICAgICAg
ICAgIGNvbnRpbnVlOwotCi0gICAgICAgIHNvdXJjZXMuYXBwZW5kKGNhcHR1cmVEZXZpY2UpOwot
ICAgIH0KLQotICAgIHJldHVybiBzb3VyY2VzOwotfQotCi1SZWFsdGltZU1lZGlhU291cmNlOjpB
dWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGVmYXVs
dEF1ZGlvRmFjdG9yeSgpCi17Ci0gICAgcmV0dXJuIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlOjpm
YWN0b3J5KCk7Ci19Ci0KLVJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3Rvcnkm
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkZWZhdWx0VmlkZW9GYWN0b3J5KCkKLXsK
LSAgICByZXR1cm4gTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2U6OmZhY3RvcnkoKTsKLX0KLQotQ2Fw
dHVyZURldmljZU1hbmFnZXImIE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkZWZhdWx0
QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpCi17Ci0gICAgcmV0dXJuIG1fZGVmYXVsdEF1ZGlv
Q2FwdHVyZURldmljZU1hbmFnZXI7Ci19Ci0KLUNhcHR1cmVEZXZpY2VNYW5hZ2VyJiBNb2NrUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFnZXIo
KQotewotICAgIHJldHVybiBtX2RlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOwotfQot
Ci1FeGNlcHRpb25Pcjx2b2lkPiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0RGV2
aWNlRW5hYmxlZChjb25zdCBTdHJpbmcmIGlkLCBib29sIGVuYWJsZWQpCi17Ci0gICAgZm9yIChh
dXRvJiBjYXB0dXJlRGV2aWNlIDogZ2V0TWVkaWFTdHJlYW1EZXZpY2VzKCkpIHsKLSAgICAgICAg
aWYgKGlkID09IGNhcHR1cmVEZXZpY2UucGVyc2lzdGVudElkKCkpIHsKLSAgICAgICAgICAgIGlm
IChlbmFibGVkICE9IGNhcHR1cmVEZXZpY2UuZW5hYmxlZCgpKSB7Ci0gICAgICAgICAgICAgICAg
Y2FwdHVyZURldmljZS5zZXRFbmFibGVkKGVuYWJsZWQpOwotICAgICAgICAgICAgICAgIGNhcHR1
cmVEZXZpY2VzQ2hhbmdlZCgpOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICByZXR1cm4g
eyB9OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5PVF9GT1VO
RF9FUlIgfTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxF
KE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2sv
TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCA3Y2UyNTkxN2YxMjg2
NGExNTNkZmQ2NGI2Yzg5NGJhZDJmNTM5MGZiLi5kZmE1ZWUwNDM3OWQ4YTgyMGY5NDlkZTA4Y2Nj
YTc2OGZlOTIzMzlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL01v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC0yOSw2ICsyOSw4IEBA
CiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIAogI2luY2x1ZGUgIkNhcHR1cmVEZXZpY2VNYW5h
Z2VyLmgiCisjaW5jbHVkZSAiTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCIKKyNpbmNsdWRlICJN
b2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5oIgogI2luY2x1ZGUgIlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzgsMjggKzQwLDI1IEBAIHB1Ymxp
YzoKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRNb2NrUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlckVuYWJsZWQoYm9vbCk7CiAKIHByaXZhdGU6CisgICAgTW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXIoKSA9IGRlZmF1bHQ7CiAgICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPE1v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyPjsKLSAgICBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcigpOwogCi0gICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+IGdldE1lZGlhU3RyZWFtRGV2
aWNlcygpIGZpbmFsOwotICAgIHZvaWQgY3JlYXRlTWVkaWFTdHJlYW0oTmV3TWVkaWFTdHJlYW1I
YW5kbGVyJiYsIGNvbnN0IFN0cmluZyYgYXVkaW9EZXZpY2VJRCwgY29uc3QgU3RyaW5nJiB2aWRl
b0RldmljZUlELCBjb25zdCBNZWRpYUNvbnN0cmFpbnRzKiBhdWRpb0NvbnN0cmFpbnRzLCBjb25z
dCBNZWRpYUNvbnN0cmFpbnRzKiB2aWRlb0NvbnN0cmFpbnRzKSBmaW5hbDsKKyAgICBSZWFsdGlt
ZU1lZGlhU291cmNlOjpBdWRpb0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0QXVkaW9GYWN0b3J5KCkg
ZmluYWwgeyByZXR1cm4gTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2U6OmZhY3RvcnkoKTsgfQorICAg
IFJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvQ2FwdHVyZUZhY3RvcnkmIGRlZmF1bHRWaWRlb0Zh
Y3RvcnkoKSBmaW5hbCB7IHJldHVybiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZTo6ZmFjdG9yeSgp
OyB9CisgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VN
YW5hZ2VyKCkgZmluYWwgeyByZXR1cm4gbV9kZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdl
cjsgfQorICAgIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBkZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNl
TWFuYWdlcigpIGZpbmFsIHsgcmV0dXJuIG1fZGVmYXVsdFZpZGVvQ2FwdHVyZURldmljZU1hbmFn
ZXI7IH0KIAotICAgIFJlYWx0aW1lTWVkaWFTb3VyY2U6OkF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGRl
ZmF1bHRBdWRpb0ZhY3RvcnkoKSBmaW5hbDsKLSAgICBSZWFsdGltZU1lZGlhU291cmNlOjpWaWRl
b0NhcHR1cmVGYWN0b3J5JiBkZWZhdWx0VmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgQ2FwdHVy
ZURldmljZU1hbmFnZXImIGRlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkgZmluYWw7
Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGRlZmF1bHRWaWRlb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyKCkgZmluYWw7Ci0KLSAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXREZXZpY2VFbmFibGVkKGNv
bnN0IFN0cmluZyYgcGVyc2lzdGVudElELCBib29sKSBmaW5hbDsKLQotICAgIGNsYXNzIE1vY2tD
YXB0dXJlRGV2aWNlTWFuYWdlciBmaW5hbCA6IHB1YmxpYyBDYXB0dXJlRGV2aWNlTWFuYWdlciB7
CisgICAgY2xhc3MgTW9ja0F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgZmluYWwgOiBwdWJsaWMg
Q2FwdHVyZURldmljZU1hbmFnZXIgewogICAgIHByaXZhdGU6Ci0gICAgICAgIFZlY3RvcjxDYXB0
dXJlRGV2aWNlPiYgY2FwdHVyZURldmljZXMoKSBmaW5hbCB7IHJldHVybiBtX2RldmljZXM7IH0K
LQotICAgICAgICBWZWN0b3I8Q2FwdHVyZURldmljZT4gbV9kZXZpY2VzOworICAgICAgICBWZWN0
b3I8Q2FwdHVyZURldmljZT4mIGNhcHR1cmVEZXZpY2VzKCkgZmluYWwgeyByZXR1cm4gTW9ja1Jl
YWx0aW1lTWVkaWFTb3VyY2U6OmF1ZGlvRGV2aWNlcygpOyB9CisgICAgfTsKKyAgICBjbGFzcyBN
b2NrVmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlciBmaW5hbCA6IHB1YmxpYyBDYXB0dXJlRGV2aWNl
TWFuYWdlciB7CisgICAgcHJpdmF0ZToKKyAgICAgICAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBj
YXB0dXJlRGV2aWNlcygpIGZpbmFsIHsgcmV0dXJuIE1vY2tSZWFsdGltZU1lZGlhU291cmNlOjp2
aWRlb0RldmljZXMoKTsgfQogICAgIH07CiAKLSAgICBNb2NrQ2FwdHVyZURldmljZU1hbmFnZXIg
bV9kZWZhdWx0QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsKLSAgICBNb2NrQ2FwdHVyZURldmlj
ZU1hbmFnZXIgbV9kZWZhdWx0VmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsKKyAgICBNb2NrQXVk
aW9DYXB0dXJlRGV2aWNlTWFuYWdlciBtX2RlZmF1bHRBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2Vy
OworICAgIE1vY2tWaWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyIG1fZGVmYXVsdFZpZGVvQ2FwdHVy
ZURldmljZU1hbmFnZXI7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMGU2MmQ5NGIyMzZjY2U3NjYwNjJiMjNj
MTI1N2Q2NmNmMTE5MGI3NC4uYzU2MmZkY2NlNGUwODFkZGNlZmJlZTVjMWI4NTYxYTEwOTM0Njk5
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE3LTA1LTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91
ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGlnbiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlciB3aXRoIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MjMyNAorCisgICAgICAgIFJldmlld2VkIGJ5
IEVyaWMgQ2FybHNvbi4KKworICAgICAgICAqIGZhc3QvbWVkaWFzdHJlYW0vbW9jay1tZWRpYS1z
b3VyY2Utd2ViYXVkaW8uaHRtbDoKKwogMjAxNy0wNS0xOSAgQWxleGV5IFByb3NrdXJ5YWtvdiAg
PGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBNYW55IENTUyBqcy10ZXN0cyB1c2Ugd2FpdFVudGls
RG9uZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9tb2NrLW1lZGlh
LXNvdXJjZS13ZWJhdWRpby5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9tZWRpYXN0cmVhbS9tb2Nr
LW1lZGlhLXNvdXJjZS13ZWJhdWRpby5odG1sCmluZGV4IDBmMzk3MDVmMTYyMDFiZWVmMjU2N2Ex
YWUyOTA1YTBhOGFmMzczZGYuLmNlOGFiZWZkMjc4M2RiZmIzNjBjNjg5YzU3ZThkYzM2ODc3NmVj
NGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvbWVkaWFzdHJlYW0vbW9jay1tZWRpYS1z
b3VyY2Utd2ViYXVkaW8uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L21lZGlhc3RyZWFtL21v
Y2stbWVkaWEtc291cmNlLXdlYmF1ZGlvLmh0bWwKQEAgLTY0LDggKzY0LDggQEAKICAgICAgICAg
ICAgICAgICB0ZXN0LmRvbmUoKTsKICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgIHZhciB0
aW1lb3V0ID0gc2V0VGltZW91dChkb25lLCAzMDAwKTsKLSAgICAgICAgICAgIHZhciBpbnRlcnZh
bCA9IHNldEludGVydmFsKGFuYWx5c2UsIDEwMDAgLyAzMCk7CisgICAgICAgICAgICB2YXIgdGlt
ZW91dCA9IHNldFRpbWVvdXQoKCkgPT4geyBkb25lKCk7IH0sIDMwMDApOworICAgICAgICAgICAg
dmFyIGludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4geyBhbmFseXNlKCk7IH0sIDEwMDAgLyAz
MCk7CiAgICAgICAgICAgICBhbmFseXNlKCk7CiAgICAgICAgIH0pOwogICAgIH0sICJCYXNpYyBn
ZXRVc2VyTWVkaWEgdG8gV2ViIEF1ZGlvIHRlc3QiKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>