<?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>169959</bug_id>
          
          <creation_ts>2017-03-22 09:44:03 -0700</creation_ts>
          <short_desc>webkitpy: SimulatedDevices should be persistent within a test run</short_desc>
          <delta_ts>2017-03-27 08:14:31 -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>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          <cc>buildbot</cc>
    
    <cc>glenn</cc>
    
    <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1290068</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-03-22 09:44:03 -0700</bug_when>
    <thetext>SimulatedDevices are re-built every time &apos;xcrun simctl list&apos; is run.  Instead, SimulatedDevices should be updated with the newer information but remain persistent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290088</commentid>
    <comment_count>1</comment_count>
      <attachid>305105</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-03-22 10:18:55 -0700</bug_when>
    <thetext>Created attachment 305105
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290225</commentid>
    <comment_count>2</comment_count>
      <attachid>305132</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-03-22 15:25:38 -0700</bug_when>
    <thetext>Created attachment 305132
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1290470</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-03-23 09:37:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/31221144&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1291467</commentid>
    <comment_count>4</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2017-03-27 08:14:25 -0700</bug_when>
    <thetext>A different approach is going to be used for this issue.  Marking as invalid and resolved.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305105</attachid>
            <date>2017-03-22 10:18:55 -0700</date>
            <delta_ts>2017-03-22 15:25:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169959-20170322101854.patch</filename>
            <type>text/plain</type>
            <size>34135</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIxNDIzNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDUyIEBACisyMDE3LTAzLTIxICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogU2ltdWxhdGVkRGV2aWNlcyBzaG91bGQgYmUgcGVyc2lz
dGVudCB3aXRoaW4gYSB0ZXN0IHJ1bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTY5OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgRWFjaCB0aW1lIHJlZnJlc2ggaXMgY2FsbGVkLCBuZXcgZGV2aWNlcyBh
cmUgaW5zdGFudGlhdGVkLiAgSW5zdGVhZCwgd2Ugc2hvdWxkCisgICAgICAgIHVwZGF0ZSB0aGUg
b2xkIG9uZXMuICBUaGVyZSBtYXBwaW5nIGZyb20gVURJRCB0byBkZXZpY2Ugb2JqZWN0IHNob3Vs
ZCBiZSAxLXRvLTEuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL2RldmljZS5w
eToKKyAgICAgICAgKERldmljZS5fX2luaXRfXyk6IFNldCBkZXZpY2UgYXZhaWxhYmlsaXR5IHRv
IGZhbHNlIGJ5IGRlZmF1bHQuCisgICAgICAgIChEZXZpY2UpOgorICAgICAgICAoRGV2aWNlLnVw
ZGF0ZSk6IFVwZGF0ZSBkZXZpY2UgYXZhaWxhYmlsaXR5LgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkveGNvZGUvc2ltdWxhdGVkX2RldmljZS5weToKKyAgICAgICAgKFNpbXVsYXRlZERldmlj
ZS5fX2luaXRfXyk6IEluaXRpYWxpemUgZGV2aWNlIGF2YWlsYWJpbGl0eSB3aXRoIHVwZGF0ZSBm
dW5jdGlvbi4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRvci5weToK
KyAgICAgICAgKERldmljZVR5cGUuX19pbml0X18pOiBJbml0aWFsaXplIG5hbWUgd2l0aCB1cGRh
dGUgZnVuY3Rpb24uCisgICAgICAgIChEZXZpY2VUeXBlKToKKyAgICAgICAgKERldmljZVR5cGUu
dXBkYXRlKTogVXBkYXRlIG5hbWUuCisgICAgICAgIChEZXZpY2VUeXBlLmZyb21fbmFtZSk6IFVw
ZGF0ZSB0byBkaWN0aW9uYXJ5IGltcGxlbWVudGF0aW9uLgorICAgICAgICAoRGV2aWNlVHlwZS5m
cm9tX2lkZW50aWZpZXIpOiBBY2Nlc3MgZGlyZWN0bHkgZnJvbSBkaWN0aW9uYXJ5LgorICAgICAg
ICAoUnVudGltZS5fX2luaXRfXyk6IEluaXRpYWxpemUgdmVyc2lvbiwgYXZhaWxhYmlsaXR5IGFu
ZCBpbnRlcm5hbCBmbGFnIHdpdGggdXBkYXRlCisgICAgICAgIGZ1bmN0aW9uLgorICAgICAgICAo
UnVudGltZSk6CisgICAgICAgIChSdW50aW1lLnVwZGF0ZSk6IFVwZGF0ZSBydW50aW1lIHZlcnNp
b24sIGF2YWlsYWJpbGl0eSBhbmQgaW50ZXJuYWwgZmxhZy4KKyAgICAgICAgKFJ1bnRpbWUuZnJv
bV9pZGVudGlmaWVyKTogQWNjZXNzIGRpcmVjdGx5IGZyb20gZGljdGlvbmFyeS4KKyAgICAgICAg
KFNpbXVsYXRvcik6CisgICAgICAgIChTaW11bGF0b3IuX19pbml0X18pOiBNYWtlIHJ1bnRpbWVz
IGFuZCBkZXZpY2VfdHlwZXMgY2xhc3MgdmFyaWFibGVzLgorICAgICAgICAoU2ltdWxhdG9yLnJl
ZnJlc2gpOiBSZXNldCBhdmFpbGFiaWxpdHkgZmxhZyBvZiBhbGwgZGV2aWNlcy4KKyAgICAgICAg
KFNpbXVsYXRvci5fcGFyc2VfZGV2aWNlX3R5cGVzKTogT25seSByZS1jcmVhdGUgYSBkZXZpY2Ug
dHlwZSBpZiBpdCBkb2VzIG5vdCB5ZXQKKyAgICAgICAgZXhpc3QuICBPdGhlcndpc2UsIHVwZGF0
ZSBleGlzdGluZyByZWNvcmQuCisgICAgICAgIChTaW11bGF0b3IuX3BhcnNlX3J1bnRpbWVzKTog
T25seSByZS1jcmVhdGUgYSBydW50aW1lIGlmIGl0IGRvZXMgbm90IHlldAorICAgICAgICBleGlz
dC4gIE90aGVyd2lzZSwgdXBkYXRlIGV4aXN0aW5nIHJlY29yZC4KKyAgICAgICAgKFNpbXVsYXRv
ci5fcGFyc2VfZGV2aWNlcyk6IE9ubHkgcmUtY3JlYXRlIGEgZGV2aWNlIGlmIGl0IGRvZXMgbm90
IHlldCBleGlzdC4KKyAgICAgICAgT3RoZXJ3aXNlLCB1cGRhdGUgZXhpc3RpbmcgcmVjb3JkLgor
ICAgICAgICAoU2ltdWxhdG9yLmRldmljZV90eXBlKTogVXBkYXRlIGl0ZXJhdGlvbiB0byBkaWN0
aW9uYXJ5IGltcGxlbWVudGF0aW9uLgorICAgICAgICAoU2ltdWxhdG9yLnJ1bnRpbWUpOiBDb252
ZXJ0IHRvIHN0YXRpYyBtZXRob2QsIHVwZGF0ZSBpdGVyYXRpb24gdG8gZGljdGlvbmFyeQorICAg
ICAgICBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKFNpbXVsYXRvci5maW5kX2RldmljZV9ieV91
ZGlkKTogRGlyZWN0bHkgYWNjZXNzIGRpY3Rpb25hcnkuCisgICAgICAgIChTaW11bGF0b3IuY3Vy
cmVudF9kZXZpY2UpOiBVcGRhdGUgaXRlcmF0aW9uIHRvIGRpY3Rpb25hcnkgaW1wbGVtZW50YXRp
b24uCisgICAgICAgIChTaW11bGF0b3IuZGV2aWNlKTogRGl0dG8uCisgICAgICAgIChTaW11bGF0
b3IuYXZhaWxhYmxlX3J1bnRpbWVzKTogRGl0dG8uCisgICAgICAgIChTaW11bGF0b3IuZGV2aWNl
cyk6IFJldHVybiBkaWN0aW9uYXJ5IG9mIGRldmljZXMuCisgICAgICAgIChTaW11bGF0b3IubGF0
ZXN0X2F2YWlsYWJsZV9ydW50aW1lKTogVXBkYXRlIHRvIGRpY3Rpb25hcnkgaW1wbGVtZW50YXRp
b24uCisgICAgICAgIChTaW11bGF0b3IuX19yZXByX18pOiBVc2UgY2xhc3MgdmFyaWFibGVzIGlu
c3RlYWQgb2YgaW1wbGVtZW50YXRpb24gdmFyaWFibGVzLgorICAgICAgICAoU2ltdWxhdG9yLl9f
c3RyX18pOiBEaXR0by4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRv
cl91bml0dGVzdC5weTogVXBkYXRlIHVuaXQgdGVzdHMuCisKIDIwMTctMDMtMjEgIEFha2FzaCBK
YWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgogCiAgICAgICAgIGV3cyBzaG91bGQgaW5kaWNh
dGUgaW4gbG9ncyB3aGVuIGl0IGZhaWxzIHRvIHBhcnNlX2J1Z19pZF9mcm9tX2F0dGFjaG1lbnRf
cGFnZQpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9kZXZpY2UucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9kZXZpY2UucHkJKHJldmlzaW9u
IDIxNDIyNikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvZGV2aWNlLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw2ICsyNiwxMCBAQCBjbGFzcyBEZXZpY2Uob2JqZWN0KToKICAgICAg
ICAgc2VsZi5faG9zdCA9IGhvc3QKICAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBz
ZWxmLnVkaWQgPSB1ZGlkCisgICAgICAgIHNlbGYuYXZhaWxhYmxlID0gRmFsc2UKKworICAgIGRl
ZiB1cGRhdGUoc2VsZiwgYXZhaWxhYmxlKToKKyAgICAgICAgc2VsZi5hdmFpbGFibGUgPSBhdmFp
bGFibGUKIAogICAgIGRlZiBpbnN0YWxsX2FwcChzZWxmLCBhcHBfcGF0aCwgZW52PU5vbmUpOgog
ICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCkluZGV4OiBUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3hjb2RlL3NpbXVsYXRlZF9kZXZpY2UucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS94Y29kZS9zaW11bGF0ZWRfZGV2aWNlLnB5CShyZXZpc2lvbiAyMTQyMjYp
CisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRlZF9kZXZpY2UucHkJKHdv
cmtpbmcgY29weSkKQEAgLTUzLDggKzUzLDggQEAgY2xhc3MgU2ltdWxhdGVkRGV2aWNlKERldmlj
ZSk6CiAgICAgICAgIDp0eXBlIGhvc3Q6IEhvc3QKICAgICAgICAgIiIiCiAgICAgICAgIHN1cGVy
KFNpbXVsYXRlZERldmljZSwgc2VsZikuX19pbml0X18obmFtZSwgdWRpZCwgaG9zdCkKLSAgICAg
ICAgc2VsZi5hdmFpbGFibGUgPSBhdmFpbGFibGUKICAgICAgICAgc2VsZi5ydW50aW1lID0gcnVu
dGltZQorICAgICAgICBzZWxmLnVwZGF0ZShhdmFpbGFibGUpCiAKICAgICBAcHJvcGVydHkKICAg
ICBkZWYgc3RhdGUoc2VsZik6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3Np
bXVsYXRvci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3Np
bXVsYXRvci5weQkocmV2aXNpb24gMjE0MjI2KQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS94
Y29kZS9zaW11bGF0b3IucHkJKHdvcmtpbmcgY29weSkKQEAgLTUyLDggKzUyLDExIEBAIGNsYXNz
IERldmljZVR5cGUob2JqZWN0KToKICAgICAgICAgOnBhcmFtIGlkZW50aWZpZXI6IFRoZSBDb3Jl
U2ltdWxhdG9yIGlkZW50aWZpZXIuCiAgICAgICAgIDp0eXBlIGlkZW50aWZpZXI6IHN0cgogICAg
ICAgICAiIiIKLSAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBzZWxmLmlkZW50aWZp
ZXIgPSBpZGVudGlmaWVyCisgICAgICAgIHNlbGYudXBkYXRlKG5hbWUpCisKKyAgICBkZWYgdXBk
YXRlKHNlbGYsIG5hbWUpOgorICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCiAKICAgICBAY2xhc3Nt
ZXRob2QKICAgICBkZWYgZnJvbV9uYW1lKGNscywgbmFtZSk6CkBAIC02NCwzNSArNjcsMjAgQEAg
Y2xhc3MgRGV2aWNlVHlwZShvYmplY3QpOgogICAgICAgICA6cnR5cGU6IERldmljZVR5cGUKICAg
ICAgICAgIiIiCiAgICAgICAgIGlkZW50aWZpZXIgPSBOb25lCi0gICAgICAgIGZvciBkZXZpY2Vf
dHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2Vf
dHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXMuaXRlcml0ZW1zKCk6CiAgICAgICAgICAg
ICBpZiBkZXZpY2VfdHlwZS5uYW1lID09IG5hbWU6Ci0gICAgICAgICAgICAgICAgaWRlbnRpZmll
ciA9IGRldmljZV90eXBlLmlkZW50aWZpZXIKLSAgICAgICAgICAgICAgICBicmVhawotCi0gICAg
ICAgIGlmIGlkZW50aWZpZXIgaXMgTm9uZToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcign
QSBkZXZpY2UgdHlwZSB3aXRoIG5hbWUgIntuYW1lfSIgZG9lcyBub3QgZXhpc3QuJy5mb3JtYXQo
bmFtZT1uYW1lKSkKLQotICAgICAgICByZXR1cm4gRGV2aWNlVHlwZShuYW1lLCBpZGVudGlmaWVy
KQorICAgICAgICAgICAgICAgIHJldHVybiBkZXZpY2VfdHlwZQorICAgICAgICByYWlzZSBUeXBl
RXJyb3IoJ0EgZGV2aWNlIHR5cGUgd2l0aCBuYW1lICJ7bmFtZX0iIGRvZXMgbm90IGV4aXN0Licu
Zm9ybWF0KG5hbWU9bmFtZSkpCiAKICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYgZnJvbV9pZGVu
dGlmaWVyKGNscywgaWRlbnRpZmllcik6CiAgICAgICAgICIiIgogICAgICAgICA6cGFyYW0gaWRl
bnRpZmllcjogVGhlIENvcmVTaW11bGF0b3IgaWRlbnRpZmllciBmb3IgdGhlIGRlc2lyZWQgcnVu
dGltZS4KICAgICAgICAgOnR5cGUgaWRlbnRpZmllcjogc3RyCi0gICAgICAgIDpyZXR1cm5zOiBB
IGBSdW50aW1lYCBvYmplY3Qgd2l0aHQgdGhlIHNwZWNpZmllZCBpZGVudGlmaWVyIG9yIHRocm93
cyBhIFR5cGVFcnJvciBpZiBpdCBkb2Vzbid0IGV4aXN0LgorICAgICAgICA6cmV0dXJuczogQSBg
UnVudGltZWAgb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCBpZGVudGlmaWVyLgogICAgICAgICA6
cnR5cGU6IERldmljZVR5cGUKICAgICAgICAgIiIiCi0gICAgICAgIG5hbWUgPSBOb25lCi0gICAg
ICAgIGZvciBkZXZpY2VfdHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXM6Ci0gICAgICAg
ICAgICBpZiBkZXZpY2VfdHlwZS5pZGVudGlmaWVyID09IGlkZW50aWZpZXI6Ci0gICAgICAgICAg
ICAgICAgbmFtZSA9IGRldmljZV90eXBlLm5hbWUKLSAgICAgICAgICAgICAgICBicmVhawotCi0g
ICAgICAgIGlmIG5hbWUgaXMgTm9uZToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignQSBk
ZXZpY2UgdHlwZSB3aXRoIGlkZW50aWZpZXIgIntpZGVudGlmaWVyfSIgZG9lcyBub3QgZXhpc3Qu
Jy5mb3JtYXQoCi0gICAgICAgICAgICAgICAgaWRlbnRpZmllcj1pZGVudGlmaWVyKSkKLQotICAg
ICAgICByZXR1cm4gRGV2aWNlVHlwZShuYW1lLCBpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4g
U2ltdWxhdG9yLmRldmljZV90eXBlc1tpZGVudGlmaWVyXQogCiAgICAgZGVmIF9fZXFfXyhzZWxm
LCBvdGhlcik6CiAgICAgICAgIHJldHVybiAoc2VsZi5uYW1lID09IG90aGVyLm5hbWUpIGFuZCAo
c2VsZi5pZGVudGlmaWVyID09IG90aGVyLmlkZW50aWZpZXIpCkBAIC0xMjIsMTAgKzExMCwxMyBA
QCBjbGFzcyBSdW50aW1lKG9iamVjdCk6CiAgICAgICAgIDpwYXJhbSBpc19pbnRlcm5hbF9ydW50
aW1lOiBXaGV0aGVyIHRoZSBydW50aW1lIGlzIGFuIEFwcGxlIGludGVybmFsIHJ1bnRpbWUKICAg
ICAgICAgOnR5cGUgaXNfaW50ZXJuYWxfcnVudGltZTogYm9vbAogICAgICAgICAiIiIKLSAgICAg
ICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgogICAgICAgICBzZWxmLmlkZW50aWZpZXIgPSBpZGVu
dGlmaWVyCisgICAgICAgIHNlbGYuZGV2aWNlcyA9IGRldmljZXMgb3Ige30KKyAgICAgICAgc2Vs
Zi51cGRhdGUodmVyc2lvbiwgYXZhaWxhYmxlLCBpc19pbnRlcm5hbF9ydW50aW1lKQorCisgICAg
ZGVmIHVwZGF0ZShzZWxmLCB2ZXJzaW9uLCBhdmFpbGFibGUsIGlzX2ludGVybmFsX3J1bnRpbWU9
RmFsc2UpOgorICAgICAgICBzZWxmLnZlcnNpb24gPSB2ZXJzaW9uCiAgICAgICAgIHNlbGYuYXZh
aWxhYmxlID0gYXZhaWxhYmxlCi0gICAgICAgIHNlbGYuZGV2aWNlcyA9IGRldmljZXMgb3IgW10K
ICAgICAgICAgc2VsZi5pc19pbnRlcm5hbF9ydW50aW1lID0gaXNfaW50ZXJuYWxfcnVudGltZQog
CiAgICAgQGNsYXNzbWV0aG9kCkBAIC0xMzcsMTMgKzEyOCwxMCBAQCBjbGFzcyBSdW50aW1lKG9i
amVjdCk6CiAgICAgICAgICIiIgogICAgICAgICA6cGFyYW0gaWRlbnRpZmllcjogVGhlIGlkZW50
aWZpZXIgZm9yIHRoZSBkZXNpcmVkIENvcmVTaW11bGF0b3IgcnVudGltZS4KICAgICAgICAgOnR5
cGUgaWRlbnRpZmllcjogc3RyCi0gICAgICAgIDpyZXR1cm5zOiBBIGBSdW50aW1lYCBvYmplY3Qg
d2l0aCB0aGUgc3BlY2lmaWVkIGlkZW50aWZpZXIgb3IgdGhyb3dzIGEgVHlwZUVycm9yIGlmIGl0
IGRvZXNuJ3QgZXhpc3QuCisgICAgICAgIDpyZXR1cm5zOiBBIGBSdW50aW1lYCBvYmplY3Qgd2l0
aCB0aGUgc3BlY2lmaWVkIGlkZW50aWZpZXIuCiAgICAgICAgIDpydHlwZTogUnVudGltZQogICAg
ICAgICAiIiIKLSAgICAgICAgZm9yIHJ1bnRpbWUgaW4gU2ltdWxhdG9yKCkucnVudGltZXM6Ci0g
ICAgICAgICAgICBpZiBydW50aW1lLmlkZW50aWZpZXIgPT0gaWRlbnRpZmllcjoKLSAgICAgICAg
ICAgICAgICByZXR1cm4gcnVudGltZQotICAgICAgICByYWlzZSBUeXBlRXJyb3IoJ0EgcnVudGlt
ZSB3aXRoIGlkZW50aWZpZXIgIntpZGVudGlmaWVyfSIgZG9lcyBub3QgZXhpc3QuJy5mb3JtYXQo
aWRlbnRpZmllcj1pZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIFNpbXVsYXRvci5ydW50aW1l
c1tpZGVudGlmaWVyXQogCiAgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CiAgICAgICAgIHJl
dHVybiAoc2VsZi52ZXJzaW9uID09IG90aGVyLnZlcnNpb24pIGFuZCAoc2VsZi5pZGVudGlmaWVy
ID09IG90aGVyLmlkZW50aWZpZXIpIGFuZCAoc2VsZi5pc19pbnRlcm5hbF9ydW50aW1lID09IG90
aGVyLmlzX2ludGVybmFsX3J1bnRpbWUpCkBAIC0xODQsNiArMTcyLDkgQEAgY2xhc3MgU2ltdWxh
dG9yKG9iamVjdCk6CiAgICAgbWFuYWdlZF9kZXZpY2VzID0ge30KICAgICBEZXZpY2UgPSBOb25l
CiAKKyAgICBydW50aW1lcyA9IHt9CisgICAgZGV2aWNlX3R5cGVzID0ge30KKwogICAgIGRlZiBf
X2luaXRfXyhzZWxmLCBob3N0PU5vbmUpOgogICAgICAgICAjIEZJWE1FOiBUaGlzIGNpcmN1bGFy
IGltcG9ydCBzaG91bGQgYmUgcmVzb2x2ZWQuCiAgICAgICAgIGlmIG5vdCBTaW11bGF0b3IuRGV2
aWNlOgpAQCAtMTkxLDggKzE4Miw2IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICAgICAgU2ltdWxhdG9yLkRldmljZSA9IFNpbXVsYXRlZERldmljZQogCiAgICAgICAgIHNlbGYu
X2hvc3QgPSBob3N0IG9yIEhvc3QoKQotICAgICAgICBzZWxmLnJ1bnRpbWVzID0gW10KLSAgICAg
ICAgc2VsZi5kZXZpY2VfdHlwZXMgPSBbXQogICAgICAgICBzZWxmLnJlZnJlc2goKQogCiAgICAg
IyBLZWVwIHRoZXNlIGNvbnN0YW50cyBzeW5jaHJvbml6ZWQgd2l0aCB0aGUgU2ltRGV2aWNlU3Rh
dGUgY29uc3RhbnRzIGluIENvcmVTaW11bGF0b3IvU2ltRGV2aWNlLmguCkBAIC0yOTIsNiArMjgx
LDggQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgICIiIgogICAgICAgICBSZWZy
ZXNoIHJ1bnRpbWUgYW5kIGRldmljZSB0eXBlIGluZm9ybWF0aW9uIGZyb20gYGBzaW1jdGwgbGlz
dGBgLgogICAgICAgICAiIiIKKyAgICAgICAgZm9yIF8sIGRldmljZSBpbiBzZWxmLmRldmljZXMu
aXRlcml0ZW1zKCk6CisgICAgICAgICAgICBkZXZpY2UudXBkYXRlKEZhbHNlKQogICAgICAgICBs
aW5lcyA9IHNlbGYuX2hvc3QucGxhdGZvcm0ueGNvZGVfc2ltY3RsX2xpc3QoKQogICAgICAgICBp
ZiBub3QgbGluZXM6CiAgICAgICAgICAgICByZXR1cm4KQEAgLTMxMyw5ICszMDQsMTIgQEAgY2xh
c3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgICAgICAgICAgaWYgbGluZSAhPSAnPT0gUnVu
dGltZXMgPT0nOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0V4cGVj
dGVkID09IFJ1bnRpbWVzID09IGhlYWRlciBidXQgZ290OiAie30iJy5mb3JtYXQobGluZSkpCiAg
ICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIGRldmljZV90eXBlID0gRGV2aWNlVHlw
ZShuYW1lPWRldmljZV90eXBlX21hdGNoLmdyb3VwKCduYW1lJykucnN0cmlwKCksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcj1kZXZpY2VfdHlwZV9tYXRj
aC5ncm91cCgnaWRlbnRpZmllcicpKQotICAgICAgICAgICAgc2VsZi5kZXZpY2VfdHlwZXMuYXBw
ZW5kKGRldmljZV90eXBlKQorICAgICAgICAgICAgaWRlbnRpZmllciA9IGRldmljZV90eXBlX21h
dGNoLmdyb3VwKCdpZGVudGlmaWVyJykKKyAgICAgICAgICAgIG5hbWUgPSBkZXZpY2VfdHlwZV9t
YXRjaC5ncm91cCgnbmFtZScpLnJzdHJpcCgpCisgICAgICAgICAgICBpZiBpZGVudGlmaWVyIGlu
IFNpbXVsYXRvci5kZXZpY2VfdHlwZXM6CisgICAgICAgICAgICAgICAgU2ltdWxhdG9yLmRldmlj
ZV90eXBlc1tpZGVudGlmaWVyXS51cGRhdGUobmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAg
ICAgICAgICAgICAgU2ltdWxhdG9yLmRldmljZV90eXBlc1tpZGVudGlmaWVyXSA9IERldmljZVR5
cGUobmFtZT1uYW1lLCBpZGVudGlmaWVyPWlkZW50aWZpZXIpCiAKICAgICAgICAgc2VsZi5fcGFy
c2VfcnVudGltZXMobGluZXMpCiAKQEAgLTMzMywxMSArMzI3LDE4IEBAIGNsYXNzIFNpbXVsYXRv
cihvYmplY3QpOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0V4cGVj
dGVkID09IERldmljZXMgPT0gaGVhZGVyIGJ1dCBnb3Q6ICJ7fSInLmZvcm1hdChsaW5lKSkKICAg
ICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgdmVyc2lvbiA9IHR1cGxlKG1hcChpbnQs
IHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ3ZlcnNpb24nKS5zcGxpdCgnLicpKSkKLSAgICAgICAgICAg
IHJ1bnRpbWUgPSBSdW50aW1lKHZlcnNpb249dmVyc2lvbiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGlkZW50aWZpZXI9cnVudGltZV9tYXRjaC5ncm91cCgnaWRlbnRpZmllcicpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlPXJ1bnRpbWVfbWF0Y2guZ3Jv
dXAoJ2F2YWlsYWJpbGl0eScpIGlzIE5vbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpc19pbnRlcm5hbF9ydW50aW1lPWJvb2wocnVudGltZV9tYXRjaC5ncm91cCgnaW50ZXJuYWwn
KSkpCi0gICAgICAgICAgICBzZWxmLnJ1bnRpbWVzLmFwcGVuZChydW50aW1lKQorICAgICAgICAg
ICAgaWRlbnRpZmllciA9IHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ2lkZW50aWZpZXInKQorICAgICAg
ICAgICAgYXZhaWxhYmxlID0gKHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ2F2YWlsYWJpbGl0eScpIGlz
IE5vbmUpCisgICAgICAgICAgICBpc19pbnRlcm5hbF9ydW50aW1lID0gYm9vbChydW50aW1lX21h
dGNoLmdyb3VwKCdpbnRlcm5hbCcpKQorICAgICAgICAgICAgaWYgaWRlbnRpZmllciBpbiBTaW11
bGF0b3IucnVudGltZXM6CisgICAgICAgICAgICAgICAgU2ltdWxhdG9yLnJ1bnRpbWVzW2lkZW50
aWZpZXJdLnVwZGF0ZSh2ZXJzaW9uLCBhdmFpbGFibGUsIGlzX2ludGVybmFsX3J1bnRpbWUpCisg
ICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIFNpbXVsYXRvci5ydW50aW1lc1tpZGVu
dGlmaWVyXSA9IFJ1bnRpbWUoCisgICAgICAgICAgICAgICAgICAgIHZlcnNpb249dmVyc2lvbiwK
KyAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcj1pZGVudGlmaWVyLAorICAgICAgICAgICAg
ICAgICAgICBhdmFpbGFibGU9YXZhaWxhYmxlLAorICAgICAgICAgICAgICAgICAgICBpc19pbnRl
cm5hbF9ydW50aW1lPWlzX2ludGVybmFsX3J1bnRpbWUpCisKICAgICAgICAgc2VsZi5fcGFyc2Vf
ZGV2aWNlcyhsaW5lcykKIAogICAgIGRlZiBfcGFyc2VfZGV2aWNlcyhzZWxmLCBsaW5lcyk6CkBA
IC0zNjcsMTIgKzM2OCwxNyBAQCBjbGFzcyBTaW11bGF0b3Iob2JqZWN0KToKICAgICAgICAgICAg
ICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdFeHBlY3RlZCA9PSBEZXZpY2UgUGFpcnMgPT0g
aGVhZGVyIGJ1dCBnb3Q6ICJ7fSInLmZvcm1hdChsaW5lKSkKICAgICAgICAgICAgICAgICBicmVh
awogICAgICAgICAgICAgaWYgY3VycmVudF9ydW50aW1lOgotICAgICAgICAgICAgICAgIGRldmlj
ZSA9IFNpbXVsYXRvci5EZXZpY2UobmFtZT1kZXZpY2VfbWF0Y2guZ3JvdXAoJ25hbWUnKS5yc3Ry
aXAoKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWRpZD1kZXZpY2VfbWF0Y2gu
Z3JvdXAoJ3VkaWQnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxl
PWRldmljZV9tYXRjaC5ncm91cCgnYXZhaWxhYmlsaXR5JykgaXMgTm9uZSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcnVudGltZT1jdXJyZW50X3J1bnRpbWUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGhvc3Q9c2VsZi5faG9zdCkKLSAgICAgICAgICAgICAgICBj
dXJyZW50X3J1bnRpbWUuZGV2aWNlcy5hcHBlbmQoZGV2aWNlKQorICAgICAgICAgICAgICAgIHVk
aWQgPSBkZXZpY2VfbWF0Y2guZ3JvdXAoJ3VkaWQnKQorICAgICAgICAgICAgICAgIGF2YWlsYWJs
ZSA9IChkZXZpY2VfbWF0Y2guZ3JvdXAoJ2F2YWlsYWJpbGl0eScpIGlzIE5vbmUpCisgICAgICAg
ICAgICAgICAgaWYgdWRpZCBpbiBjdXJyZW50X3J1bnRpbWUuZGV2aWNlczoKKyAgICAgICAgICAg
ICAgICAgICAgY3VycmVudF9ydW50aW1lLmRldmljZXNbdWRpZF0udXBkYXRlKGF2YWlsYWJsZSkK
KyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBjdXJyZW50X3J1bnRp
bWUuZGV2aWNlc1t1ZGlkXSA9IFNpbXVsYXRvci5EZXZpY2UoCisgICAgICAgICAgICAgICAgICAg
ICAgICBuYW1lPWRldmljZV9tYXRjaC5ncm91cCgnbmFtZScpLnJzdHJpcCgpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgdWRpZD11ZGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxh
YmxlPWF2YWlsYWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWU9Y3VycmVudF9y
dW50aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgaG9zdD1zZWxmLl9ob3N0KQogCiAgICAg
ZGVmIGRldmljZV90eXBlKHNlbGYsIG5hbWU9Tm9uZSwgaWRlbnRpZmllcj1Ob25lKToKICAgICAg
ICAgIiIiCkBAIC0zODMsNyArMzg5LDcgQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAg
ICAgIDpyZXR1cm46IEEgZGV2aWNlIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgYW5kL29y
IGlkZW50aWZpZXIsIG9yIE5vbmUgaWYgb25lIGRvZXNuJ3QgZXhpc3QgYXMgc3VjaC4KICAgICAg
ICAgOnJ0eXBlOiBEZXZpY2VUeXBlCiAgICAgICAgICIiIgotICAgICAgICBmb3IgZGV2aWNlX3R5
cGUgaW4gc2VsZi5kZXZpY2VfdHlwZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2VfdHlwZSBpbiBz
ZWxmLmRldmljZV90eXBlcy5pdGVyaXRlbXMoKToKICAgICAgICAgICAgIGlmIG5hbWUgYW5kIGRl
dmljZV90eXBlLm5hbWUgIT0gbmFtZToKICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAg
ICAgICAgaWYgaWRlbnRpZmllciBhbmQgZGV2aWNlX3R5cGUuaWRlbnRpZmllciAhPSBpZGVudGlm
aWVyOgpAQCAtMzkxLDcgKzM5Nyw4IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICAgICAgcmV0dXJuIGRldmljZV90eXBlCiAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBkZWYg
cnVudGltZShzZWxmLCB2ZXJzaW9uPU5vbmUsIGlkZW50aWZpZXI9Tm9uZSwgaXNfaW50ZXJuYWxf
cnVudGltZT1Ob25lKToKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIHJ1bnRpbWUodmVyc2lv
bj1Ob25lLCBpZGVudGlmaWVyPU5vbmUsIGlzX2ludGVybmFsX3J1bnRpbWU9Tm9uZSk6CiAgICAg
ICAgICIiIgogICAgICAgICA6cGFyYW0gdmVyc2lvbjogVGhlIGlPUyB2ZXJzaW9uIG9mIHRoZSBk
ZXNpcmVkIHJ1bnRpbWUuCiAgICAgICAgIDp0eXBlIHZlcnNpb246IHR1cGxlCkBAIC00MDMsNyAr
NDEwLDcgQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgIGlmIHZlcnNpb24gaXMg
Tm9uZSBhbmQgaWRlbnRpZmllciBpcyBOb25lOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9y
KCdNdXN0IHN1cHBseSB2ZXJzaW9uIGFuZC9vciBpZGVudGlmaWVyLicpCiAKLSAgICAgICAgZm9y
IHJ1bnRpbWUgaW4gc2VsZi5ydW50aW1lczoKKyAgICAgICAgZm9yIF8sIHJ1bnRpbWUgaW4gU2lt
dWxhdG9yLnJ1bnRpbWVzLml0ZXJpdGVtcygpOgogICAgICAgICAgICAgaWYgdmVyc2lvbiBhbmQg
cnVudGltZS52ZXJzaW9uICE9IHZlcnNpb246CiAgICAgICAgICAgICAgICAgY29udGludWUKICAg
ICAgICAgICAgIGlmIGlzX2ludGVybmFsX3J1bnRpbWUgYW5kIHJ1bnRpbWUuaXNfaW50ZXJuYWxf
cnVudGltZSAhPSBpc19pbnRlcm5hbF9ydW50aW1lOgpAQCAtNDIwLDE1ICs0MjcsMTQgQEAgY2xh
c3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgIDpyZXR1cm46IFRoZSBgRGV2aWNlYCB3aXRo
IHRoZSBzcGVjaWZpZWQgVURJRC4KICAgICAgICAgOnJ0eXBlOiBEZXZpY2UKICAgICAgICAgIiIi
Ci0gICAgICAgIGZvciBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzOgotICAgICAgICAgICAgaWYgZGV2
aWNlLnVkaWQgPT0gdWRpZDoKLSAgICAgICAgICAgICAgICByZXR1cm4gZGV2aWNlCisgICAgICAg
IGlmIHVkaWQgaW4gc2VsZi5kZXZpY2VzOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuZGV2aWNl
c1t1ZGlkXQogICAgICAgICByZXR1cm4gTm9uZQogCiAgICAgZGVmIGN1cnJlbnRfZGV2aWNlKHNl
bGYpOgogICAgICAgICAjIEZJWE1FOiBGaW5kIHRoZSBzaW11bGF0b3IgZGV2aWNlIHRoYXQgd2Fz
IGJvb3RlZCBieSBTaW11bGF0b3IuYXBwLiBGb3Igbm93LCBwaWNrIHNvbWUgYm9vdGVkIHNpbXVs
YXRvciBkZXZpY2UsIHdoaWNoCiAgICAgICAgICMgbWF5IGhhdmUgYmVlbiBib290ZWQgdXNpbmcg
dGhlIHNpbWN0bCBjb21tYW5kIGxpbmUgdG9vbC4KLSAgICAgICAgZm9yIGRldmljZSBpbiBzZWxm
LmRldmljZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzLml0ZXJpdGVt
cygpOgogICAgICAgICAgICAgaWYgZGV2aWNlLnN0YXRlID09IFNpbXVsYXRvci5EZXZpY2VTdGF0
ZS5CT09URUQ6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGRldmljZQogICAgICAgICByZXR1cm4g
Tm9uZQpAQCAtNDQ2LDcgKzQ1Miw3IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICBpZiBuYW1lIGlzIE5vbmUgYW5kIHJ1bnRpbWUgaXMgTm9uZToKICAgICAgICAgICAgIHJhaXNl
IFR5cGVFcnJvcignTXVzdCBzdXBwbHkgbmFtZSBhbmQvb3IgcnVudGltZS4nKQogCi0gICAgICAg
IGZvciBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzOgorICAgICAgICBmb3IgZGV2aWNlIGluIHNlbGYu
ZGV2aWNlcy5pdGVyaXRlbXMoKToKICAgICAgICAgICAgIGlmIHNob3VsZF9pZ25vcmVfdW5hdmFp
bGFibGVfZGV2aWNlcyBhbmQgbm90IGRldmljZS5hdmFpbGFibGU6CiAgICAgICAgICAgICAgICAg
Y29udGludWUKICAgICAgICAgICAgIGlmIG5hbWUgYW5kIGRldmljZS5uYW1lICE9IG5hbWU6CkBA
IC00NjIsMTUgKzQ2OCwxOCBAQCBjbGFzcyBTaW11bGF0b3Iob2JqZWN0KToKICAgICAgICAgOnJl
dHVybjogQW4gaXRlcmF0b3Igb2YgYWxsIGF2YWlsYWJsZSBydW50aW1lcy4KICAgICAgICAgOnJ0
eXBlOiBpdGVyCiAgICAgICAgICIiIgotICAgICAgICByZXR1cm4gaXRlcnRvb2xzLmlmaWx0ZXIo
bGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWUuYXZhaWxhYmxlLCBzZWxmLnJ1bnRpbWVzKQorICAgICAg
ICByZXR1cm4gaXRlcnRvb2xzLmlmaWx0ZXIobGFtYmRhIGVudHJ5OiBlbnRyeVsxXS5hdmFpbGFi
bGUsIFNpbXVsYXRvci5ydW50aW1lcy5pdGVyaXRlbXMoKSkKIAogICAgIEBwcm9wZXJ0eQogICAg
IGRlZiBkZXZpY2VzKHNlbGYpOgogICAgICAgICAiIiIKLSAgICAgICAgOnJldHVybjogQW4gaXRl
cmF0b3Igb2YgYWxsIGRldmljZXMgZnJvbSBhbGwgcnVudGltZXMuCi0gICAgICAgIDpydHlwZTog
aXRlcgorICAgICAgICA6cmV0dXJuOiBBbiBkaWN0aW9uYXJ5IG9mIGFsbCBkZXZpY2VzIGZyb20g
YWxsIHJ1bnRpbWVzLgorICAgICAgICA6cnR5cGU6IGRpY3Rpb25hcnkKICAgICAgICAgIiIiCi0g
ICAgICAgIHJldHVybiBpdGVydG9vbHMuY2hhaW4oKltydW50aW1lLmRldmljZXMgZm9yIHJ1bnRp
bWUgaW4gc2VsZi5ydW50aW1lc10pCisgICAgICAgIHJlc3VsdCA9IHt9CisgICAgICAgIGZvciBf
LCBydW50aW1lIGluIFNpbXVsYXRvci5ydW50aW1lcy5pdGVyaXRlbXMoKToKKyAgICAgICAgICAg
IHJlc3VsdC51cGRhdGUocnVudGltZS5kZXZpY2VzKQorICAgICAgICByZXR1cm4gcmVzdWx0CiAK
ICAgICBAcHJvcGVydHkKICAgICBkZWYgbGF0ZXN0X2F2YWlsYWJsZV9ydW50aW1lKHNlbGYpOgpA
QCAtNDc4LDkgKzQ4Nyw5IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAgICA6cmV0
dXJuOiBSZXR1cm5zIGEgUnVudGltZSBvYmplY3Qgd2l0aCB0aGUgaGlnaGVzdCB2ZXJzaW9uLgog
ICAgICAgICA6cnR5cGU6IFJ1bnRpbWUgb3IgTm9uZQogICAgICAgICAiIiIKLSAgICAgICAgaWYg
bm90IHNlbGYucnVudGltZXM6CisgICAgICAgIGlmIG5vdCBTaW11bGF0b3IucnVudGltZXM6CiAg
ICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICByZXR1cm4gc29ydGVkKHNlbGYuYXZhaWxh
YmxlX3J1bnRpbWVzLCBrZXk9bGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWUudmVyc2lvbiwgcmV2ZXJz
ZT1UcnVlKVswXQorICAgICAgICByZXR1cm4gc29ydGVkKHNlbGYuYXZhaWxhYmxlX3J1bnRpbWVz
LCBrZXk9bGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWVbMV0udmVyc2lvbiwgcmV2ZXJzZT1UcnVlKVsw
XVsxXQogCiAgICAgZGVmIGxvb2t1cF9vcl9jcmVhdGVfZGV2aWNlKHNlbGYsIG5hbWUsIGRldmlj
ZV90eXBlLCBydW50aW1lKToKICAgICAgICAgIiIiCkBAIC01MTAsMTIgKzUxOSwxMiBAQCBjbGFz
cyBTaW11bGF0b3Iob2JqZWN0KToKIAogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKICAgICAgICAg
cmV0dXJuICc8aU9TIFNpbXVsYXRvcjoge251bV9ydW50aW1lc30gcnVudGltZXMsIHtudW1fZGV2
aWNlX3R5cGVzfSBkZXZpY2UgdHlwZXM+Jy5mb3JtYXQoCi0gICAgICAgICAgICBudW1fcnVudGlt
ZXM9bGVuKHNlbGYucnVudGltZXMpLAotICAgICAgICAgICAgbnVtX2RldmljZV90eXBlcz1sZW4o
c2VsZi5kZXZpY2VfdHlwZXMpKQorICAgICAgICAgICAgbnVtX3J1bnRpbWVzPWxlbihTaW11bGF0
b3IucnVudGltZXMpLAorICAgICAgICAgICAgbnVtX2RldmljZV90eXBlcz1sZW4oU2ltdWxhdG9y
LmRldmljZV90eXBlcykpCiAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKICAgICAgICAgZGVzY3Jp
cHRpb24gPSBbJ2lPUyBTaW11bGF0b3I6J10KLSAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0
ciwgc2VsZi5ydW50aW1lcykKLSAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgc2VsZi5k
ZXZpY2VfdHlwZXMpCisgICAgICAgIGRlc2NyaXB0aW9uICs9IG1hcChzdHIsIFNpbXVsYXRvci5y
dW50aW1lcykKKyAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgU2ltdWxhdG9yLmRldmlj
ZV90eXBlcykKICAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgc2VsZi5kZXZpY2VzKQog
ICAgICAgICByZXR1cm4gJ1xuJy5qb2luKGRlc2NyaXB0aW9uKQpJbmRleDogVG9vbHMvU2NyaXB0
cy93ZWJraXRweS94Y29kZS9zaW11bGF0b3JfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9zaW11bGF0b3JfdW5pdHRlc3QucHkJKHJldmlzaW9u
IDIxNDIyNikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvc2ltdWxhdG9yX3VuaXR0
ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC03OSwxNzUgKzc5LDE4MiBAQCBBcHBsZSBUViAxMDgw
cCAoNTUyODFBQkUtOUMyNy00MzhCLUFENTAtCiAgICAgICAgIHNpbXVsYXRvciA9IFNpbXVsYXRv
cihob3N0PXNlbGYuX2hvc3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMTIsIGxlbihzaW11
bGF0b3IuZGV2aWNlX3R5cGVzKSkKIAotICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVfNHMgPSBz
aW11bGF0b3IuZGV2aWNlX3R5cGVzWzBdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV80cyA9
IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmlj
ZVR5cGUuaVBob25lLTRzJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDRzJywg
ZGV2aWNlX3R5cGVfaXBob25lXzRzLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2Nv
bS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBob25lLTRzJywgZGV2aWNlX3R5
cGVfaXBob25lXzRzLmlkZW50aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzUg
PSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzFdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV81
ID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2
aWNlVHlwZS5pUGhvbmUtNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1Jywg
ZGV2aWNlX3R5cGVfaXBob25lXzUubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29t
LmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNScsIGRldmljZV90eXBl
X2lwaG9uZV81LmlkZW50aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzVzID0g
c2ltdWxhdG9yLmRldmljZV90eXBlc1syXQorICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVfNXMg
PSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZp
Y2VUeXBlLmlQaG9uZS01cyddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1cycs
IGRldmljZV90eXBlX2lwaG9uZV81cy5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdj
b20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS01cycsIGRldmljZV90
eXBlX2lwaG9uZV81cy5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2lwaG9uZV82
X3BsdXMgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzNdCisgICAgICAgIGRldmljZV90eXBlX2lw
aG9uZV82X3BsdXMgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNpbXVs
YXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS02LVBsdXMnXQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKCdpUGhvbmUgNiBQbHVzJywgZGV2aWNlX3R5cGVfaXBob25lXzZfcGx1cy5uYW1lKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VU
eXBlLmlQaG9uZS02LVBsdXMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNl9wbHVzLmlkZW50aWZpZXIp
CiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzYgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVz
WzRdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV82ID0gc2ltdWxhdG9yLmRldmljZV90eXBl
c1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNiddCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA2JywgZGV2aWNlX3R5cGVfaXBob25lXzYubmFt
ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2lt
RGV2aWNlVHlwZS5pUGhvbmUtNicsIGRldmljZV90eXBlX2lwaG9uZV82LmlkZW50aWZpZXIpCiAK
LSAgICAgICAgZGV2aWNlX3R5cGVfaXBhZF8yID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s1XQor
ICAgICAgICBkZXZpY2VfdHlwZV9pcGFkXzIgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20u
YXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQYWQtMiddCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoJ2lQYWQgMicsIGRldmljZV90eXBlX2lwYWRfMi5uYW1lKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQ
YWQtMicsIGRldmljZV90eXBlX2lwYWRfMi5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90
eXBlX2lwYWRfcmV0aW5hID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s2XQorICAgICAgICBkZXZp
Y2VfdHlwZV9pcGFkX3JldGluYSA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBsZS5D
b3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1SZXRpbmEnXQogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKCdpUGFkIFJldGluYScsIGRldmljZV90eXBlX2lwYWRfcmV0aW5hLm5hbWUpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmlj
ZVR5cGUuaVBhZC1SZXRpbmEnLCBkZXZpY2VfdHlwZV9pcGFkX3JldGluYS5pZGVudGlmaWVyKQog
Ci0gICAgICAgIGRldmljZV90eXBlX2lwYWRfYWlyID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s3
XQorICAgICAgICBkZXZpY2VfdHlwZV9pcGFkX2FpciA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNb
J2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1BaXInXQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIEFpcicsIGRldmljZV90eXBlX2lwYWRfYWlyLm5hbWUp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURl
dmljZVR5cGUuaVBhZC1BaXInLCBkZXZpY2VfdHlwZV9pcGFkX2Fpci5pZGVudGlmaWVyKQogCi0g
ICAgICAgIGRldmljZV90eXBlX2lwYWRfcHJvID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s4XQor
ICAgICAgICBkZXZpY2VfdHlwZV9pcGFkX3BybyA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2Nv
bS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1Qcm8tLTktNy1pbmNoLSdd
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQYWQgUHJvICg5LjctaW5jaCknLCBkZXZpY2Vf
dHlwZV9pcGFkX3Byby5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUu
Q29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQYWQtUHJvLS05LTctaW5jaC0nLCBkZXZpY2Vf
dHlwZV9pcGFkX3Byby5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2FwcGxlX3R2
XzEwODBwID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s5XQorICAgICAgICBkZXZpY2VfdHlwZV9h
cHBsZV90dl8xMDgwcCA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBsZS5Db3JlU2lt
dWxhdG9yLlNpbURldmljZVR5cGUuQXBwbGUtVFYtMTA4MHAnXQogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKCdBcHBsZSBUViAxMDgwcCcsIGRldmljZV90eXBlX2FwcGxlX3R2XzEwODBwLm5hbWUp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURl
dmljZVR5cGUuQXBwbGUtVFYtMTA4MHAnLCBkZXZpY2VfdHlwZV9hcHBsZV90dl8xMDgwcC5pZGVu
dGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzM4bW0gPSBzaW11bGF0
b3IuZGV2aWNlX3R5cGVzWzEwXQorICAgICAgICBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF8zOG1t
ID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2
aWNlVHlwZS5BcHBsZS1XYXRjaC0zOG1tJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQXBw
bGUgV2F0Y2ggLSAzOG1tJywgZGV2aWNlX3R5cGVfYXBwbGVfd2F0Y2hfMzhtbS5uYW1lKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VU
eXBlLkFwcGxlLVdhdGNoLTM4bW0nLCBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF8zOG1tLmlkZW50
aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfYXBwbGVfd2F0Y2hfNDJtbSA9IHNpbXVsYXRv
ci5kZXZpY2VfdHlwZXNbMTFdCisgICAgICAgIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzQybW0g
PSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZp
Y2VUeXBlLkFwcGxlLVdhdGNoLTQybW0nXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBcHBs
ZSBXYXRjaCAtIDQybW0nLCBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF80Mm1tLm5hbWUpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5
cGUuQXBwbGUtV2F0Y2gtNDJtbScsIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzQybW0uaWRlbnRp
ZmllcikKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDUsIGxlbihzaW11bGF0b3IucnVudGlt
ZXMpKQogCi0gICAgICAgIHJ1bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNbMF0KKyAg
ICAgICAgcnVudGltZV9pb3NfOCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVT
aW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn
Y29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGltZV9pb3Nf
OC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfaW9z
XzguYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1lX2lv
c184LmlzX2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUo
WzgsIDBdKSwgcnVudGltZV9pb3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KDExLCBsZW4ocnVudGltZV9pb3NfOC5kZXZpY2VzKSkKIAotICAgICAgICBkZXZpY2VfaXBob25l
XzRzID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzBdCisgICAgICAgIGRldmljZV9pcGhvbmVfNHMg
PSBydW50aW1lX2lvc184LmRldmljZXNbJzY4RDlBNzkyLUUzQTktNDYyQi1CMjExLTc2MkM2QTVE
Mzc3OSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA0cycsIGRldmljZV9pcGhv
bmVfNHMubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnNjhEOUE3OTItRTNBOS00NjJC
LUIyMTEtNzYyQzZBNUQzNzc5JywgZGV2aWNlX2lwaG9uZV80cy51ZGlkKQogICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNHMuYXZhaWxhYmxlKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9pcGhvbmVfNHMucnVudGltZSkK
IAotICAgICAgICBkZXZpY2VfaXBob25lXzUgPSBydW50aW1lX2lvc184LmRldmljZXNbMV0KKyAg
ICAgICAgZGV2aWNlX2lwaG9uZV81ID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWycxQzM3NjdGRi1D
MjY4LTQ5NjEtQjZEQS1GNEY3NUU5OUVGNUQnXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdp
UGhvbmUgNScsIGRldmljZV9pcGhvbmVfNS5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KCcxQzM3NjdGRi1DMjY4LTQ5NjEtQjZEQS1GNEY3NUU5OUVGNUQnLCBkZXZpY2VfaXBob25lXzUu
dWRpZCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBob25lXzUuYXZh
aWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9p
cGhvbmVfNS5ydW50aW1lKQogCi0gICAgICAgIGRldmljZV9pcGhvbmVfNXMgPSBydW50aW1lX2lv
c184LmRldmljZXNbMl0KKyAgICAgICAgZGV2aWNlX2lwaG9uZV81cyA9IHJ1bnRpbWVfaW9zXzgu
ZGV2aWNlc1snMkExQ0IzNjMtOUEwOS00NDM4LUI5QkUtOUM0MkJEMjA4RjcyJ10KICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDVzJywgZGV2aWNlX2lwaG9uZV81cy5uYW1lKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCcyQTFDQjM2My05QTA5LTQ0MzgtQjlCRS05QzQyQkQyMDhG
NzInLCBkZXZpY2VfaXBob25lXzVzLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1
ZSwgZGV2aWNlX2lwaG9uZV81cy5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81cy5ydW50aW1lKQogCi0gICAgICAgIGRldmlj
ZV9pcGhvbmVfNXNfd2Via2l0X3Rlc3RlciA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1szXQorICAg
ICAgICBkZXZpY2VfaXBob25lXzVzX3dlYmtpdF90ZXN0ZXIgPSBydW50aW1lX2lvc184LmRldmlj
ZXNbJzc5QkE5MjA2LUUwQjYtNEQwRS1CMEU4LUE4OEUyRDQ1NTE1RCddCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoJ2lQaG9uZSA1cyBXZWJLaXQgVGVzdGVyJywgZGV2aWNlX2lwaG9uZV81c193
ZWJraXRfdGVzdGVyLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzc5QkE5MjA2LUUw
QjYtNEQwRS1CMEU4LUE4OEUyRDQ1NTE1RCcsIGRldmljZV9pcGhvbmVfNXNfd2Via2l0X3Rlc3Rl
ci51ZGlkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNXNf
d2Via2l0X3Rlc3Rlci5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGlt
ZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81c193ZWJraXRfdGVzdGVyLnJ1bnRpbWUpCiAKLSAgICAg
ICAgZGV2aWNlX2lwaG9uZV82X3BsdXMgPSBydW50aW1lX2lvc184LmRldmljZXNbNF0KKyAgICAg
ICAgZGV2aWNlX2lwaG9uZV82X3BsdXMgPSBydW50aW1lX2lvc184LmRldmljZXNbJzdGODAzOUJF
LUQ0QTAtNDI0NS05RDU2LUFGOTQ0MTNGRDZGNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
J2lQaG9uZSA2IFBsdXMnLCBkZXZpY2VfaXBob25lXzZfcGx1cy5uYW1lKQogICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKCc3RjgwMzlCRS1ENEEwLTQyNDUtOUQ1Ni1BRjk0NDEzRkQ2RjUnLCBkZXZp
Y2VfaXBob25lXzZfcGx1cy51ZGlkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRl
dmljZV9pcGhvbmVfNl9wbHVzLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChy
dW50aW1lX2lvc184LCBkZXZpY2VfaXBob25lXzZfcGx1cy5ydW50aW1lKQogCi0gICAgICAgIGRl
dmljZV9pcGhvbmVfNiA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s1XQorICAgICAgICBkZXZpY2Vf
aXBob25lXzYgPSBydW50aW1lX2lvc184LmRldmljZXNbJzdCRjlGODM1LTBDRUEtNEVFMy1CRDE1
LUE2MkJEOUY0QjY5MSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA2JywgZGV2
aWNlX2lwaG9uZV82Lm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzdCRjlGODM1LTBD
RUEtNEVFMy1CRDE1LUE2MkJEOUY0QjY5MScsIGRldmljZV9pcGhvbmVfNi51ZGlkKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNi5hdmFpbGFibGUpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV82LnJ1bnRp
bWUpCiAKLSAgICAgICAgZGV2aWNlX2lwYWRfMiA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s2XQor
ICAgICAgICBkZXZpY2VfaXBhZF8yID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWycyOTY3QzU0Ri1B
NDk5LTQwNDMtQTgyQy04QzFGNUFEQkI0QTknXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdp
UGFkIDInLCBkZXZpY2VfaXBhZF8yLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzI5
NjdDNTRGLUE0OTktNDA0My1BODJDLThDMUY1QURCQjRBOScsIGRldmljZV9pcGFkXzIudWRpZCkK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBhZF8yLmF2YWlsYWJsZSkK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50aW1lX2lvc184LCBkZXZpY2VfaXBhZF8yLnJ1
bnRpbWUpCiAKLSAgICAgICAgZGV2aWNlX2lwYWRfcmV0aW5hID0gcnVudGltZV9pb3NfOC5kZXZp
Y2VzWzddCisgICAgICAgIGRldmljZV9pcGFkX3JldGluYSA9IHJ1bnRpbWVfaW9zXzguZGV2aWNl
c1snNzMzRkM3MUUtMjJGNC00MDc3LUJGNzktMjVDMjdFQTg4MUZDJ10KICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbCgnaVBhZCBSZXRpbmEnLCBkZXZpY2VfaXBhZF9yZXRpbmEubmFtZSkKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnNzMzRkM3MUUtMjJGNC00MDc3LUJGNzktMjVDMjdFQTg4MUZD
JywgZGV2aWNlX2lwYWRfcmV0aW5hLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1
ZSwgZGV2aWNlX2lwYWRfcmV0aW5hLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bChydW50aW1lX2lvc184LCBkZXZpY2VfaXBhZF9yZXRpbmEucnVudGltZSkKIAotICAgICAgICBk
ZXZpY2VfaXBhZF9haXIgPSBydW50aW1lX2lvc184LmRldmljZXNbOF0KKyAgICAgICAgZGV2aWNl
X2lwYWRfYWlyID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWyc2NzI2Njg0MS04MkYzLTQ1NDUtQUVE
Ni01NjhCMTE3RTQxQTgnXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIEFpcicsIGRl
dmljZV9pcGFkX2Fpci5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCc2NzI2Njg0MS04
MkYzLTQ1NDUtQUVENi01NjhCMTE3RTQxQTgnLCBkZXZpY2VfaXBhZF9haXIudWRpZCkKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBhZF9haXIuYXZhaWxhYmxlKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9pcGFkX2Fpci5ydW50
aW1lKQogCi0gICAgICAgIGRldmljZV9pcGFkX3BybyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s5
XQorICAgICAgICBkZXZpY2VfaXBhZF9wcm8gPSBydW50aW1lX2lvc184LmRldmljZXNbJ0RFQkQ1
MEI4LTA1NjYtNEQ3QS1CQ0RCLTQxMzRDRkU1REE0MCddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoJ2lQYWQgUHJvICg5LjcgaW5jaCknLCBkZXZpY2VfaXBhZF9wcm8ubmFtZSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCgnREVCRDUwQjgtMDU2Ni00RDdBLUJDREItNDEzNENGRTVEQTQwJywg
ZGV2aWNlX2lwYWRfcHJvLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2
aWNlX2lwYWRfcHJvLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50aW1l
X2lvc184LCBkZXZpY2VfaXBhZF9wcm8ucnVudGltZSkKIAotICAgICAgICBkZXZpY2VfaXBob25l
XzcgPSBydW50aW1lX2lvc184LmRldmljZXNbMTBdCisgICAgICAgIGRldmljZV9pcGhvbmVfNyA9
IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1snMkFFNThCQkUtMDk5NS00MzI2LTlCNjUtMkY0MTNFMkUz
M0RDJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDcnLCBkZXZpY2VfaXBob25l
XzcubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnMkFFNThCQkUtMDk5NS00MzI2LTlC
NjUtMkY0MTNFMkUzM0RDJywgZGV2aWNlX2lwaG9uZV83LnVkaWQpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoRmFsc2UsIGRldmljZV9pcGhvbmVfNy5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV83LnJ1bnRpbWUpCiAKLSAg
ICAgICAgcnVudGltZV9pb3NfOF9pbnRlcm5hbCA9IHNpbXVsYXRvci5ydW50aW1lc1sxXQorICAg
ICAgICBydW50aW1lX2lvc184X2ludGVybmFsID0gc2ltdWxhdG9yLnJ1bnRpbWVzWydjb20uYXBw
bGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04LTAtSW50ZXJuYWwnXQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04
LTAtSW50ZXJuYWwnLCBydW50aW1lX2lvc184X2ludGVybmFsLmlkZW50aWZpZXIpCiAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoRmFsc2UsIHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwuYXZhaWxhYmxl
KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwu
aXNfaW50ZXJuYWxfcnVudGltZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZShbOCwg
MF0pLCBydW50aW1lX2lvc184X2ludGVybmFsLnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoMCwgbGVuKHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwuZGV2aWNlcykpCiAKLSAgICAgICAg
cnVudGltZV9pb3NfOF80ID0gc2ltdWxhdG9yLnJ1bnRpbWVzWzJdCisgICAgICAgIHJ1bnRpbWVf
aW9zXzhfNCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2lt
UnVudGltZS5pT1MtOC00J10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNv
cmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC00JywgcnVudGltZV9pb3NfOF80LmlkZW50aWZp
ZXIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgcnVudGltZV9pb3NfOF80LmF2YWls
YWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGYWxzZSwgcnVudGltZV9pb3NfOF80Lmlz
X2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoWzgsIDRd
KSwgcnVudGltZV9pb3NfOF80LnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMCwg
bGVuKHJ1bnRpbWVfaW9zXzhfNC5kZXZpY2VzKSkKIAotICAgICAgICBydW50aW1lX3R2b3NfOSA9
IHNpbXVsYXRvci5ydW50aW1lc1szXQorICAgICAgICBydW50aW1lX3R2b3NfOSA9IHNpbXVsYXRv
ci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS50dk9TLTktMCdd
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbVJ1
bnRpbWUudHZPUy05LTAnLCBydW50aW1lX3R2b3NfOS5pZGVudGlmaWVyKQogICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfdHZvc185LmF2YWlsYWJsZSkKICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbChGYWxzZSwgcnVudGltZV90dm9zXzkuaXNfaW50ZXJuYWxfcnVudGltZSkK
ICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZShbOSwgMF0pLCBydW50aW1lX3R2b3NfOS52
ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihydW50aW1lX3R2b3NfOS5k
ZXZpY2VzKSkKIAotICAgICAgICBkZXZpY2VfYXBwbGVfdHZfMTA4MHAgPSBydW50aW1lX3R2b3Nf
OS5kZXZpY2VzWzBdCisgICAgICAgIGRldmljZV9hcHBsZV90dl8xMDgwcCA9IHJ1bnRpbWVfdHZv
c185LmRldmljZXNbJzU1MjgxQUJFLTlDMjctNDM4Qi1BRDUwLUM1NDBEN0JDNEJBQyddCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFRWIDEwODBwJywgZGV2aWNlX2FwcGxlX3R2XzEw
ODBwLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzU1MjgxQUJFLTlDMjctNDM4Qi1B
RDUwLUM1NDBEN0JDNEJBQycsIGRldmljZV9hcHBsZV90dl8xMDgwcC51ZGlkKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9hcHBsZV90dl8xMDgwcC5hdmFpbGFibGUpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV90dm9zXzksIGRldmljZV9hcHBsZV90dl8x
MDgwcC5ydW50aW1lKQogCi0gICAgICAgIHJ1bnRpbWVfd2F0Y2hvc18yID0gc2ltdWxhdG9yLnJ1
bnRpbWVzWzRdCisgICAgICAgIHJ1bnRpbWVfd2F0Y2hvc18yID0gc2ltdWxhdG9yLnJ1bnRpbWVz
Wydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLndhdGNoT1MtMi0wJ10KICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS53
YXRjaE9TLTItMCcsIHJ1bnRpbWVfd2F0Y2hvc18yLmlkZW50aWZpZXIpCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoVHJ1ZSwgcnVudGltZV93YXRjaG9zXzIuYXZhaWxhYmxlKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1lX3dhdGNob3NfMi5pc19pbnRlcm5hbF9ydW50
aW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR1cGxlKFsyLCAwXSksIHJ1bnRpbWVfd2F0
Y2hvc18yLnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMiwgbGVuKHJ1bnRpbWVf
d2F0Y2hvc18yLmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9hcHBsZV93YXRjaF8zOG1tID0g
cnVudGltZV93YXRjaG9zXzIuZGV2aWNlc1swXQorICAgICAgICBkZXZpY2VfYXBwbGVfd2F0Y2hf
MzhtbSA9IHJ1bnRpbWVfd2F0Y2hvc18yLmRldmljZXNbJzAwMTM4Q0QyLUQzMEMtNDM4MC1BMzBF
LUE3MEI4OEUxQTNDNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFdhdGNoIC0g
MzhtbScsIGRldmljZV9hcHBsZV93YXRjaF8zOG1tLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoJzAwMTM4Q0QyLUQzMEMtNDM4MC1BMzBFLUE3MEI4OEUxQTNDNScsIGRldmljZV9hcHBs
ZV93YXRjaF8zOG1tLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNl
X2FwcGxlX3dhdGNoXzM4bW0uYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1
bnRpbWVfd2F0Y2hvc18yLCBkZXZpY2VfYXBwbGVfd2F0Y2hfMzhtbS5ydW50aW1lKQogCi0gICAg
ICAgIGRldmljZV9hcHBsZV93YXRjaF80Mm1tID0gcnVudGltZV93YXRjaG9zXzIuZGV2aWNlc1sx
XQorICAgICAgICBkZXZpY2VfYXBwbGVfd2F0Y2hfNDJtbSA9IHJ1bnRpbWVfd2F0Y2hvc18yLmRl
dmljZXNbJzE4NkFEODVFLTlCRTUtNDczNC1CQzMzLURGNTA0ODRBQUZGMCddCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFdhdGNoIC0gNDJtbScsIGRldmljZV9hcHBsZV93YXRjaF80
Mm1tLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzE4NkFEODVFLTlCRTUtNDczNC1C
QzMzLURGNTA0ODRBQUZGMCcsIGRldmljZV9hcHBsZV93YXRjaF80Mm1tLnVkaWQpCiAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNlX2FwcGxlX3dhdGNoXzQybW0uYXZhaWxhYmxl
KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfd2F0Y2hvc18yLCBkZXZpY2VfYXBw
bGVfd2F0Y2hfNDJtbS5ydW50aW1lKQogCisgICAgICAgICMgVGVzdCBpdGVyYXRpbmcgdGhyb3Vn
aCBydW50aW1lcworICAgICAgICBmb3IgaWRlbnRpZmllciwgcnVudGltZSBpbiBzaW11bGF0b3Iu
YXZhaWxhYmxlX3J1bnRpbWVzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpZGVudGlm
aWVyLCBydW50aW1lLmlkZW50aWZpZXIpCisKKyAgICAgICAgIyBUZXN0IGdyYWJiaW5nIGxhdGVz
dCBydW50aW1lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxh
dG9yLlNpbVJ1bnRpbWUudHZPUy05LTAnLCBzaW11bGF0b3IubGF0ZXN0X2F2YWlsYWJsZV9ydW50
aW1lLmlkZW50aWZpZXIpCisKICAgICBkZWYgdGVzdF9pbnZhbGlkX2RldmljZV90eXBlc19oZWFk
ZXIoc2VsZik6CiAgICAgICAgICIiIiBUZXN0cyB0aGF0IGFuIGludmFsaWQgRGV2aWNlIFR5cGVz
IGhlYWRlciB0aHJvd3MgYW4gZXhjZXB0aW9uICIiIgogICAgICAgICBzZWxmLl9zZXRfZXhwZWN0
ZWRfeGNydW5fc2ltY3RsX2xpc3QoJycnWFggRGV2aWNlIFR5cGVzIFhYCkBAIC0yOTcsMjYgKzMw
NCwyNiBAQCBpT1MgOC4wIEludGVybmFsICg4LjAgLSBVbmtub3duKSAoY29tLmFwCiAgICAgICAg
IHNpbXVsYXRvciA9IFNpbXVsYXRvcihob3N0PXNlbGYuX2hvc3QpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoMSwgbGVuKHNpbXVsYXRvci5kZXZpY2VfdHlwZXMpKQogCi0gICAgICAgIGRldmlj
ZV90eXBlX2lwaG9uZV80cyA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbMF0KKyAgICAgICAgZGV2
aWNlX3R5cGVfaXBob25lXzRzID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxlLkNv
cmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNHMnXQogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMubmFtZSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5p
UGhvbmUtNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMuaWRlbnRpZmllcikKIAogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKDIsIGxlbihzaW11bGF0b3IucnVudGltZXMpKQogCi0gICAgICAgIHJ1
bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNbMF0KKyAgICAgICAgcnVudGltZV9pb3Nf
OCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGlt
ZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11
bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGltZV9pb3NfOC5pZGVudGlmaWVyKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfaW9zXzguYXZhaWxhYmxlKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1lX2lvc184LmlzX2ludGVybmFsX3J1
bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoWzgsIDBdKSwgcnVudGltZV9p
b3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihydW50aW1lX2lv
c184LmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9pcGhvbmVfNHMgPSBydW50aW1lX2lvc184
LmRldmljZXNbMF0KKyAgICAgICAgZGV2aWNlX2lwaG9uZV80cyA9IHJ1bnRpbWVfaW9zXzguZGV2
aWNlc1snMjcxQkJFQUMtMTgyNi00Q0UxLUIzQUYtODNGMzVDREQxRDgyJ10KICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbCgnaVBob25lIDRzJywgZGV2aWNlX2lwaG9uZV80cy5uYW1lKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCcyNzFCQkVBQy0xODI2LTRDRTEtQjNBRi04M0YzNUNERDFEODIn
LCBkZXZpY2VfaXBob25lXzRzLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwg
ZGV2aWNlX2lwaG9uZV80cy5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVu
dGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV80cy5ydW50aW1lKQogCi0gICAgICAgIHJ1bnRpbWVf
aW9zXzhfaW50ZXJuYWwgPSBzaW11bGF0b3IucnVudGltZXNbMV0KKyAgICAgICAgcnVudGltZV9p
b3NfOF9pbnRlcm5hbCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0
b3IuU2ltUnVudGltZS5pT1MtOC0wLUludGVybmFsJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wLUludGVybmFsJywg
cnVudGltZV9pb3NfOF9pbnRlcm5hbC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKEZhbHNlLCBydW50aW1lX2lvc184X2ludGVybmFsLmF2YWlsYWJsZSkKICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbChUcnVlLCBydW50aW1lX2lvc184X2ludGVybmFsLmlzX2ludGVybmFsX3J1
bnRpbWUpCkBAIC0zMzgsMjAgKzM0NSwyMCBAQCBpT1MgOC4wIEludGVybmFsICg4LjAgLSBVbmtu
b3duKSAoY29tLmFwCiAgICAgICAgIHNpbXVsYXRvciA9IFNpbXVsYXRvcihob3N0PXNlbGYuX2hv
c3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHNpbXVsYXRvci5kZXZpY2VfdHlw
ZXMpKQogCi0gICAgICAgIGRldmljZV90eXBlX2lwaG9uZV80cyA9IHNpbXVsYXRvci5kZXZpY2Vf
dHlwZXNbMF0KKyAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzRzID0gc2ltdWxhdG9yLmRldmlj
ZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNHMn
XQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2VfdHlwZV9pcGhv
bmVfNHMubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11
bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMuaWRl
bnRpZmllcikKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihzaW11bGF0b3IucnVu
dGltZXMpKQogCi0gICAgICAgIHJ1bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNbMF0K
KyAgICAgICAgcnVudGltZV9pb3NfOCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNv
cmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGltZV9p
b3NfOC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVf
aW9zXzguYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1l
X2lvc184LmlzX2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVw
bGUoWzgsIDBdKSwgcnVudGltZV9pb3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKDEsIGxlbihydW50aW1lX2lvc184LmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9pcGhv
bmVfNHMgPSBydW50aW1lX2lvc184LmRldmljZXNbMF0KKyAgICAgICAgZGV2aWNlX2lwaG9uZV80
cyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1snMjcxQkJFQUMtMTgyNi00Q0UxLUIzQUYtODNGMzVD
REQxRDgyJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDRzJywgZGV2aWNlX2lw
aG9uZV80cy5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcyNzFCQkVBQy0xODI2LTRD
RTEtQjNBRi04M0YzNUNERDFEODInLCBkZXZpY2VfaXBob25lXzRzLnVkaWQpCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNlX2lwaG9uZV80cy5hdmFpbGFibGUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>305132</attachid>
            <date>2017-03-22 15:25:38 -0700</date>
            <delta_ts>2017-03-27 08:14:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-169959-20170322152537.patch</filename>
            <type>text/plain</type>
            <size>34138</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIxNDIzNSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDUyIEBACisyMDE3LTAzLTIxICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNv
bT4KKworICAgICAgICB3ZWJraXRweTogU2ltdWxhdGVkRGV2aWNlcyBzaG91bGQgYmUgcGVyc2lz
dGVudCB3aXRoaW4gYSB0ZXN0IHJ1bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTY5OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgRWFjaCB0aW1lIHJlZnJlc2ggaXMgY2FsbGVkLCBuZXcgZGV2aWNlcyBh
cmUgaW5zdGFudGlhdGVkLiAgSW5zdGVhZCwgd2Ugc2hvdWxkCisgICAgICAgIHVwZGF0ZSB0aGUg
b2xkIG9uZXMuICBUaGVyZSBtYXBwaW5nIGZyb20gVURJRCB0byBkZXZpY2Ugb2JqZWN0IHNob3Vs
ZCBiZSAxLXRvLTEuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL2RldmljZS5w
eToKKyAgICAgICAgKERldmljZS5fX2luaXRfXyk6IFNldCBkZXZpY2UgYXZhaWxhYmlsaXR5IHRv
IGZhbHNlIGJ5IGRlZmF1bHQuCisgICAgICAgIChEZXZpY2UpOgorICAgICAgICAoRGV2aWNlLnVw
ZGF0ZSk6IFVwZGF0ZSBkZXZpY2UgYXZhaWxhYmlsaXR5LgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkveGNvZGUvc2ltdWxhdGVkX2RldmljZS5weToKKyAgICAgICAgKFNpbXVsYXRlZERldmlj
ZS5fX2luaXRfXyk6IEluaXRpYWxpemUgZGV2aWNlIGF2YWlsYWJpbGl0eSB3aXRoIHVwZGF0ZSBm
dW5jdGlvbi4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRvci5weToK
KyAgICAgICAgKERldmljZVR5cGUuX19pbml0X18pOiBJbml0aWFsaXplIG5hbWUgd2l0aCB1cGRh
dGUgZnVuY3Rpb24uCisgICAgICAgIChEZXZpY2VUeXBlKToKKyAgICAgICAgKERldmljZVR5cGUu
dXBkYXRlKTogVXBkYXRlIG5hbWUuCisgICAgICAgIChEZXZpY2VUeXBlLmZyb21fbmFtZSk6IFVw
ZGF0ZSB0byBkaWN0aW9uYXJ5IGltcGxlbWVudGF0aW9uLgorICAgICAgICAoRGV2aWNlVHlwZS5m
cm9tX2lkZW50aWZpZXIpOiBBY2Nlc3MgZGlyZWN0bHkgZnJvbSBkaWN0aW9uYXJ5LgorICAgICAg
ICAoUnVudGltZS5fX2luaXRfXyk6IEluaXRpYWxpemUgdmVyc2lvbiwgYXZhaWxhYmlsaXR5IGFu
ZCBpbnRlcm5hbCBmbGFnIHdpdGggdXBkYXRlCisgICAgICAgIGZ1bmN0aW9uLgorICAgICAgICAo
UnVudGltZSk6CisgICAgICAgIChSdW50aW1lLnVwZGF0ZSk6IFVwZGF0ZSBydW50aW1lIHZlcnNp
b24sIGF2YWlsYWJpbGl0eSBhbmQgaW50ZXJuYWwgZmxhZy4KKyAgICAgICAgKFJ1bnRpbWUuZnJv
bV9pZGVudGlmaWVyKTogQWNjZXNzIGRpcmVjdGx5IGZyb20gZGljdGlvbmFyeS4KKyAgICAgICAg
KFNpbXVsYXRvcik6CisgICAgICAgIChTaW11bGF0b3IuX19pbml0X18pOiBNYWtlIHJ1bnRpbWVz
IGFuZCBkZXZpY2VfdHlwZXMgY2xhc3MgdmFyaWFibGVzLgorICAgICAgICAoU2ltdWxhdG9yLnJl
ZnJlc2gpOiBSZXNldCBhdmFpbGFiaWxpdHkgZmxhZyBvZiBhbGwgZGV2aWNlcy4KKyAgICAgICAg
KFNpbXVsYXRvci5fcGFyc2VfZGV2aWNlX3R5cGVzKTogT25seSByZS1jcmVhdGUgYSBkZXZpY2Ug
dHlwZSBpZiBpdCBkb2VzIG5vdCB5ZXQKKyAgICAgICAgZXhpc3QuICBPdGhlcndpc2UsIHVwZGF0
ZSBleGlzdGluZyByZWNvcmQuCisgICAgICAgIChTaW11bGF0b3IuX3BhcnNlX3J1bnRpbWVzKTog
T25seSByZS1jcmVhdGUgYSBydW50aW1lIGlmIGl0IGRvZXMgbm90IHlldAorICAgICAgICBleGlz
dC4gIE90aGVyd2lzZSwgdXBkYXRlIGV4aXN0aW5nIHJlY29yZC4KKyAgICAgICAgKFNpbXVsYXRv
ci5fcGFyc2VfZGV2aWNlcyk6IE9ubHkgcmUtY3JlYXRlIGEgZGV2aWNlIGlmIGl0IGRvZXMgbm90
IHlldCBleGlzdC4KKyAgICAgICAgT3RoZXJ3aXNlLCB1cGRhdGUgZXhpc3RpbmcgcmVjb3JkLgor
ICAgICAgICAoU2ltdWxhdG9yLmRldmljZV90eXBlKTogVXBkYXRlIGl0ZXJhdGlvbiB0byBkaWN0
aW9uYXJ5IGltcGxlbWVudGF0aW9uLgorICAgICAgICAoU2ltdWxhdG9yLnJ1bnRpbWUpOiBDb252
ZXJ0IHRvIHN0YXRpYyBtZXRob2QsIHVwZGF0ZSBpdGVyYXRpb24gdG8gZGljdGlvbmFyeQorICAg
ICAgICBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKFNpbXVsYXRvci5maW5kX2RldmljZV9ieV91
ZGlkKTogRGlyZWN0bHkgYWNjZXNzIGRpY3Rpb25hcnkuCisgICAgICAgIChTaW11bGF0b3IuY3Vy
cmVudF9kZXZpY2UpOiBVcGRhdGUgaXRlcmF0aW9uIHRvIGRpY3Rpb25hcnkgaW1wbGVtZW50YXRp
b24uCisgICAgICAgIChTaW11bGF0b3IuZGV2aWNlKTogRGl0dG8uCisgICAgICAgIChTaW11bGF0
b3IuYXZhaWxhYmxlX3J1bnRpbWVzKTogRGl0dG8uCisgICAgICAgIChTaW11bGF0b3IuZGV2aWNl
cyk6IFJldHVybiBkaWN0aW9uYXJ5IG9mIGRldmljZXMuCisgICAgICAgIChTaW11bGF0b3IubGF0
ZXN0X2F2YWlsYWJsZV9ydW50aW1lKTogVXBkYXRlIHRvIGRpY3Rpb25hcnkgaW1wbGVtZW50YXRp
b24uCisgICAgICAgIChTaW11bGF0b3IuX19yZXByX18pOiBVc2UgY2xhc3MgdmFyaWFibGVzIGlu
c3RlYWQgb2YgaW1wbGVtZW50YXRpb24gdmFyaWFibGVzLgorICAgICAgICAoU2ltdWxhdG9yLl9f
c3RyX18pOiBEaXR0by4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRv
cl91bml0dGVzdC5weTogVXBkYXRlIHVuaXQgdGVzdHMuCisKIDIwMTctMDMtMjEgIEFha2FzaCBK
YWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgogCiAgICAgICAgIGV3cyBzaG91bGQgaW5kaWNh
dGUgaW4gbG9ncyB3aGVuIGl0IGZhaWxzIHRvIHBhcnNlX2J1Z19pZF9mcm9tX2F0dGFjaG1lbnRf
cGFnZQpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9kZXZpY2UucHkKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9kZXZpY2UucHkJKHJldmlzaW9u
IDIxNDIyNikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvZGV2aWNlLnB5CSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw2ICsyNiwxMCBAQCBjbGFzcyBEZXZpY2Uob2JqZWN0KToKICAgICAg
ICAgc2VsZi5faG9zdCA9IGhvc3QKICAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBz
ZWxmLnVkaWQgPSB1ZGlkCisgICAgICAgIHNlbGYuYXZhaWxhYmxlID0gRmFsc2UKKworICAgIGRl
ZiB1cGRhdGUoc2VsZiwgYXZhaWxhYmxlKToKKyAgICAgICAgc2VsZi5hdmFpbGFibGUgPSBhdmFp
bGFibGUKIAogICAgIGRlZiBpbnN0YWxsX2FwcChzZWxmLCBhcHBfcGF0aCwgZW52PU5vbmUpOgog
ICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCkluZGV4OiBUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3hjb2RlL3NpbXVsYXRlZF9kZXZpY2UucHkKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS94Y29kZS9zaW11bGF0ZWRfZGV2aWNlLnB5CShyZXZpc2lvbiAyMTQyMjYp
CisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRlZF9kZXZpY2UucHkJKHdv
cmtpbmcgY29weSkKQEAgLTUzLDggKzUzLDggQEAgY2xhc3MgU2ltdWxhdGVkRGV2aWNlKERldmlj
ZSk6CiAgICAgICAgIDp0eXBlIGhvc3Q6IEhvc3QKICAgICAgICAgIiIiCiAgICAgICAgIHN1cGVy
KFNpbXVsYXRlZERldmljZSwgc2VsZikuX19pbml0X18obmFtZSwgdWRpZCwgaG9zdCkKLSAgICAg
ICAgc2VsZi5hdmFpbGFibGUgPSBhdmFpbGFibGUKICAgICAgICAgc2VsZi5ydW50aW1lID0gcnVu
dGltZQorICAgICAgICBzZWxmLnVwZGF0ZShhdmFpbGFibGUpCiAKICAgICBAcHJvcGVydHkKICAg
ICBkZWYgc3RhdGUoc2VsZik6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3Np
bXVsYXRvci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3Np
bXVsYXRvci5weQkocmV2aXNpb24gMjE0MjI2KQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS94
Y29kZS9zaW11bGF0b3IucHkJKHdvcmtpbmcgY29weSkKQEAgLTUyLDggKzUyLDExIEBAIGNsYXNz
IERldmljZVR5cGUob2JqZWN0KToKICAgICAgICAgOnBhcmFtIGlkZW50aWZpZXI6IFRoZSBDb3Jl
U2ltdWxhdG9yIGlkZW50aWZpZXIuCiAgICAgICAgIDp0eXBlIGlkZW50aWZpZXI6IHN0cgogICAg
ICAgICAiIiIKLSAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBzZWxmLmlkZW50aWZp
ZXIgPSBpZGVudGlmaWVyCisgICAgICAgIHNlbGYudXBkYXRlKG5hbWUpCisKKyAgICBkZWYgdXBk
YXRlKHNlbGYsIG5hbWUpOgorICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCiAKICAgICBAY2xhc3Nt
ZXRob2QKICAgICBkZWYgZnJvbV9uYW1lKGNscywgbmFtZSk6CkBAIC02NCwzNSArNjcsMjAgQEAg
Y2xhc3MgRGV2aWNlVHlwZShvYmplY3QpOgogICAgICAgICA6cnR5cGU6IERldmljZVR5cGUKICAg
ICAgICAgIiIiCiAgICAgICAgIGlkZW50aWZpZXIgPSBOb25lCi0gICAgICAgIGZvciBkZXZpY2Vf
dHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2Vf
dHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXMuaXRlcml0ZW1zKCk6CiAgICAgICAgICAg
ICBpZiBkZXZpY2VfdHlwZS5uYW1lID09IG5hbWU6Ci0gICAgICAgICAgICAgICAgaWRlbnRpZmll
ciA9IGRldmljZV90eXBlLmlkZW50aWZpZXIKLSAgICAgICAgICAgICAgICBicmVhawotCi0gICAg
ICAgIGlmIGlkZW50aWZpZXIgaXMgTm9uZToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcign
QSBkZXZpY2UgdHlwZSB3aXRoIG5hbWUgIntuYW1lfSIgZG9lcyBub3QgZXhpc3QuJy5mb3JtYXQo
bmFtZT1uYW1lKSkKLQotICAgICAgICByZXR1cm4gRGV2aWNlVHlwZShuYW1lLCBpZGVudGlmaWVy
KQorICAgICAgICAgICAgICAgIHJldHVybiBkZXZpY2VfdHlwZQorICAgICAgICByYWlzZSBUeXBl
RXJyb3IoJ0EgZGV2aWNlIHR5cGUgd2l0aCBuYW1lICJ7bmFtZX0iIGRvZXMgbm90IGV4aXN0Licu
Zm9ybWF0KG5hbWU9bmFtZSkpCiAKICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYgZnJvbV9pZGVu
dGlmaWVyKGNscywgaWRlbnRpZmllcik6CiAgICAgICAgICIiIgogICAgICAgICA6cGFyYW0gaWRl
bnRpZmllcjogVGhlIENvcmVTaW11bGF0b3IgaWRlbnRpZmllciBmb3IgdGhlIGRlc2lyZWQgcnVu
dGltZS4KICAgICAgICAgOnR5cGUgaWRlbnRpZmllcjogc3RyCi0gICAgICAgIDpyZXR1cm5zOiBB
IGBSdW50aW1lYCBvYmplY3Qgd2l0aHQgdGhlIHNwZWNpZmllZCBpZGVudGlmaWVyIG9yIHRocm93
cyBhIFR5cGVFcnJvciBpZiBpdCBkb2Vzbid0IGV4aXN0LgorICAgICAgICA6cmV0dXJuczogQSBg
UnVudGltZWAgb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCBpZGVudGlmaWVyLgogICAgICAgICA6
cnR5cGU6IERldmljZVR5cGUKICAgICAgICAgIiIiCi0gICAgICAgIG5hbWUgPSBOb25lCi0gICAg
ICAgIGZvciBkZXZpY2VfdHlwZSBpbiBTaW11bGF0b3IoKS5kZXZpY2VfdHlwZXM6Ci0gICAgICAg
ICAgICBpZiBkZXZpY2VfdHlwZS5pZGVudGlmaWVyID09IGlkZW50aWZpZXI6Ci0gICAgICAgICAg
ICAgICAgbmFtZSA9IGRldmljZV90eXBlLm5hbWUKLSAgICAgICAgICAgICAgICBicmVhawotCi0g
ICAgICAgIGlmIG5hbWUgaXMgTm9uZToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignQSBk
ZXZpY2UgdHlwZSB3aXRoIGlkZW50aWZpZXIgIntpZGVudGlmaWVyfSIgZG9lcyBub3QgZXhpc3Qu
Jy5mb3JtYXQoCi0gICAgICAgICAgICAgICAgaWRlbnRpZmllcj1pZGVudGlmaWVyKSkKLQotICAg
ICAgICByZXR1cm4gRGV2aWNlVHlwZShuYW1lLCBpZGVudGlmaWVyKQorICAgICAgICByZXR1cm4g
U2ltdWxhdG9yLmRldmljZV90eXBlc1tpZGVudGlmaWVyXQogCiAgICAgZGVmIF9fZXFfXyhzZWxm
LCBvdGhlcik6CiAgICAgICAgIHJldHVybiAoc2VsZi5uYW1lID09IG90aGVyLm5hbWUpIGFuZCAo
c2VsZi5pZGVudGlmaWVyID09IG90aGVyLmlkZW50aWZpZXIpCkBAIC0xMjIsMTAgKzExMCwxMyBA
QCBjbGFzcyBSdW50aW1lKG9iamVjdCk6CiAgICAgICAgIDpwYXJhbSBpc19pbnRlcm5hbF9ydW50
aW1lOiBXaGV0aGVyIHRoZSBydW50aW1lIGlzIGFuIEFwcGxlIGludGVybmFsIHJ1bnRpbWUKICAg
ICAgICAgOnR5cGUgaXNfaW50ZXJuYWxfcnVudGltZTogYm9vbAogICAgICAgICAiIiIKLSAgICAg
ICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgogICAgICAgICBzZWxmLmlkZW50aWZpZXIgPSBpZGVu
dGlmaWVyCisgICAgICAgIHNlbGYuZGV2aWNlcyA9IGRldmljZXMgb3Ige30KKyAgICAgICAgc2Vs
Zi51cGRhdGUodmVyc2lvbiwgYXZhaWxhYmxlLCBpc19pbnRlcm5hbF9ydW50aW1lKQorCisgICAg
ZGVmIHVwZGF0ZShzZWxmLCB2ZXJzaW9uLCBhdmFpbGFibGUsIGlzX2ludGVybmFsX3J1bnRpbWU9
RmFsc2UpOgorICAgICAgICBzZWxmLnZlcnNpb24gPSB2ZXJzaW9uCiAgICAgICAgIHNlbGYuYXZh
aWxhYmxlID0gYXZhaWxhYmxlCi0gICAgICAgIHNlbGYuZGV2aWNlcyA9IGRldmljZXMgb3IgW10K
ICAgICAgICAgc2VsZi5pc19pbnRlcm5hbF9ydW50aW1lID0gaXNfaW50ZXJuYWxfcnVudGltZQog
CiAgICAgQGNsYXNzbWV0aG9kCkBAIC0xMzcsMTMgKzEyOCwxMCBAQCBjbGFzcyBSdW50aW1lKG9i
amVjdCk6CiAgICAgICAgICIiIgogICAgICAgICA6cGFyYW0gaWRlbnRpZmllcjogVGhlIGlkZW50
aWZpZXIgZm9yIHRoZSBkZXNpcmVkIENvcmVTaW11bGF0b3IgcnVudGltZS4KICAgICAgICAgOnR5
cGUgaWRlbnRpZmllcjogc3RyCi0gICAgICAgIDpyZXR1cm5zOiBBIGBSdW50aW1lYCBvYmplY3Qg
d2l0aCB0aGUgc3BlY2lmaWVkIGlkZW50aWZpZXIgb3IgdGhyb3dzIGEgVHlwZUVycm9yIGlmIGl0
IGRvZXNuJ3QgZXhpc3QuCisgICAgICAgIDpyZXR1cm5zOiBBIGBSdW50aW1lYCBvYmplY3Qgd2l0
aCB0aGUgc3BlY2lmaWVkIGlkZW50aWZpZXIuCiAgICAgICAgIDpydHlwZTogUnVudGltZQogICAg
ICAgICAiIiIKLSAgICAgICAgZm9yIHJ1bnRpbWUgaW4gU2ltdWxhdG9yKCkucnVudGltZXM6Ci0g
ICAgICAgICAgICBpZiBydW50aW1lLmlkZW50aWZpZXIgPT0gaWRlbnRpZmllcjoKLSAgICAgICAg
ICAgICAgICByZXR1cm4gcnVudGltZQotICAgICAgICByYWlzZSBUeXBlRXJyb3IoJ0EgcnVudGlt
ZSB3aXRoIGlkZW50aWZpZXIgIntpZGVudGlmaWVyfSIgZG9lcyBub3QgZXhpc3QuJy5mb3JtYXQo
aWRlbnRpZmllcj1pZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuIFNpbXVsYXRvci5ydW50aW1l
c1tpZGVudGlmaWVyXQogCiAgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CiAgICAgICAgIHJl
dHVybiAoc2VsZi52ZXJzaW9uID09IG90aGVyLnZlcnNpb24pIGFuZCAoc2VsZi5pZGVudGlmaWVy
ID09IG90aGVyLmlkZW50aWZpZXIpIGFuZCAoc2VsZi5pc19pbnRlcm5hbF9ydW50aW1lID09IG90
aGVyLmlzX2ludGVybmFsX3J1bnRpbWUpCkBAIC0xODQsNiArMTcyLDkgQEAgY2xhc3MgU2ltdWxh
dG9yKG9iamVjdCk6CiAgICAgbWFuYWdlZF9kZXZpY2VzID0ge30KICAgICBEZXZpY2UgPSBOb25l
CiAKKyAgICBydW50aW1lcyA9IHt9CisgICAgZGV2aWNlX3R5cGVzID0ge30KKwogICAgIGRlZiBf
X2luaXRfXyhzZWxmLCBob3N0PU5vbmUpOgogICAgICAgICAjIEZJWE1FOiBUaGlzIGNpcmN1bGFy
IGltcG9ydCBzaG91bGQgYmUgcmVzb2x2ZWQuCiAgICAgICAgIGlmIG5vdCBTaW11bGF0b3IuRGV2
aWNlOgpAQCAtMTkxLDggKzE4Miw2IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICAgICAgU2ltdWxhdG9yLkRldmljZSA9IFNpbXVsYXRlZERldmljZQogCiAgICAgICAgIHNlbGYu
X2hvc3QgPSBob3N0IG9yIEhvc3QoKQotICAgICAgICBzZWxmLnJ1bnRpbWVzID0gW10KLSAgICAg
ICAgc2VsZi5kZXZpY2VfdHlwZXMgPSBbXQogICAgICAgICBzZWxmLnJlZnJlc2goKQogCiAgICAg
IyBLZWVwIHRoZXNlIGNvbnN0YW50cyBzeW5jaHJvbml6ZWQgd2l0aCB0aGUgU2ltRGV2aWNlU3Rh
dGUgY29uc3RhbnRzIGluIENvcmVTaW11bGF0b3IvU2ltRGV2aWNlLmguCkBAIC0yOTIsNiArMjgx
LDggQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgICIiIgogICAgICAgICBSZWZy
ZXNoIHJ1bnRpbWUgYW5kIGRldmljZSB0eXBlIGluZm9ybWF0aW9uIGZyb20gYGBzaW1jdGwgbGlz
dGBgLgogICAgICAgICAiIiIKKyAgICAgICAgZm9yIF8sIGRldmljZSBpbiBzZWxmLmRldmljZXMu
aXRlcml0ZW1zKCk6CisgICAgICAgICAgICBkZXZpY2UudXBkYXRlKEZhbHNlKQogICAgICAgICBs
aW5lcyA9IHNlbGYuX2hvc3QucGxhdGZvcm0ueGNvZGVfc2ltY3RsX2xpc3QoKQogICAgICAgICBp
ZiBub3QgbGluZXM6CiAgICAgICAgICAgICByZXR1cm4KQEAgLTMxMyw5ICszMDQsMTIgQEAgY2xh
c3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgICAgICAgICAgaWYgbGluZSAhPSAnPT0gUnVu
dGltZXMgPT0nOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0V4cGVj
dGVkID09IFJ1bnRpbWVzID09IGhlYWRlciBidXQgZ290OiAie30iJy5mb3JtYXQobGluZSkpCiAg
ICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIGRldmljZV90eXBlID0gRGV2aWNlVHlw
ZShuYW1lPWRldmljZV90eXBlX21hdGNoLmdyb3VwKCduYW1lJykucnN0cmlwKCksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcj1kZXZpY2VfdHlwZV9tYXRj
aC5ncm91cCgnaWRlbnRpZmllcicpKQotICAgICAgICAgICAgc2VsZi5kZXZpY2VfdHlwZXMuYXBw
ZW5kKGRldmljZV90eXBlKQorICAgICAgICAgICAgaWRlbnRpZmllciA9IGRldmljZV90eXBlX21h
dGNoLmdyb3VwKCdpZGVudGlmaWVyJykKKyAgICAgICAgICAgIG5hbWUgPSBkZXZpY2VfdHlwZV9t
YXRjaC5ncm91cCgnbmFtZScpLnJzdHJpcCgpCisgICAgICAgICAgICBpZiBpZGVudGlmaWVyIGlu
IFNpbXVsYXRvci5kZXZpY2VfdHlwZXM6CisgICAgICAgICAgICAgICAgU2ltdWxhdG9yLmRldmlj
ZV90eXBlc1tpZGVudGlmaWVyXS51cGRhdGUobmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAg
ICAgICAgICAgICAgU2ltdWxhdG9yLmRldmljZV90eXBlc1tpZGVudGlmaWVyXSA9IERldmljZVR5
cGUobmFtZT1uYW1lLCBpZGVudGlmaWVyPWlkZW50aWZpZXIpCiAKICAgICAgICAgc2VsZi5fcGFy
c2VfcnVudGltZXMobGluZXMpCiAKQEAgLTMzMywxMSArMzI3LDE4IEBAIGNsYXNzIFNpbXVsYXRv
cihvYmplY3QpOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0V4cGVj
dGVkID09IERldmljZXMgPT0gaGVhZGVyIGJ1dCBnb3Q6ICJ7fSInLmZvcm1hdChsaW5lKSkKICAg
ICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgdmVyc2lvbiA9IHR1cGxlKG1hcChpbnQs
IHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ3ZlcnNpb24nKS5zcGxpdCgnLicpKSkKLSAgICAgICAgICAg
IHJ1bnRpbWUgPSBSdW50aW1lKHZlcnNpb249dmVyc2lvbiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGlkZW50aWZpZXI9cnVudGltZV9tYXRjaC5ncm91cCgnaWRlbnRpZmllcicpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlPXJ1bnRpbWVfbWF0Y2guZ3Jv
dXAoJ2F2YWlsYWJpbGl0eScpIGlzIE5vbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpc19pbnRlcm5hbF9ydW50aW1lPWJvb2wocnVudGltZV9tYXRjaC5ncm91cCgnaW50ZXJuYWwn
KSkpCi0gICAgICAgICAgICBzZWxmLnJ1bnRpbWVzLmFwcGVuZChydW50aW1lKQorICAgICAgICAg
ICAgaWRlbnRpZmllciA9IHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ2lkZW50aWZpZXInKQorICAgICAg
ICAgICAgYXZhaWxhYmxlID0gKHJ1bnRpbWVfbWF0Y2guZ3JvdXAoJ2F2YWlsYWJpbGl0eScpIGlz
IE5vbmUpCisgICAgICAgICAgICBpc19pbnRlcm5hbF9ydW50aW1lID0gYm9vbChydW50aW1lX21h
dGNoLmdyb3VwKCdpbnRlcm5hbCcpKQorICAgICAgICAgICAgaWYgaWRlbnRpZmllciBpbiBTaW11
bGF0b3IucnVudGltZXM6CisgICAgICAgICAgICAgICAgU2ltdWxhdG9yLnJ1bnRpbWVzW2lkZW50
aWZpZXJdLnVwZGF0ZSh2ZXJzaW9uLCBhdmFpbGFibGUsIGlzX2ludGVybmFsX3J1bnRpbWUpCisg
ICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIFNpbXVsYXRvci5ydW50aW1lc1tpZGVu
dGlmaWVyXSA9IFJ1bnRpbWUoCisgICAgICAgICAgICAgICAgICAgIHZlcnNpb249dmVyc2lvbiwK
KyAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcj1pZGVudGlmaWVyLAorICAgICAgICAgICAg
ICAgICAgICBhdmFpbGFibGU9YXZhaWxhYmxlLAorICAgICAgICAgICAgICAgICAgICBpc19pbnRl
cm5hbF9ydW50aW1lPWlzX2ludGVybmFsX3J1bnRpbWUpCisKICAgICAgICAgc2VsZi5fcGFyc2Vf
ZGV2aWNlcyhsaW5lcykKIAogICAgIGRlZiBfcGFyc2VfZGV2aWNlcyhzZWxmLCBsaW5lcyk6CkBA
IC0zNjcsMTIgKzM2OCwxNyBAQCBjbGFzcyBTaW11bGF0b3Iob2JqZWN0KToKICAgICAgICAgICAg
ICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdFeHBlY3RlZCA9PSBEZXZpY2UgUGFpcnMgPT0g
aGVhZGVyIGJ1dCBnb3Q6ICJ7fSInLmZvcm1hdChsaW5lKSkKICAgICAgICAgICAgICAgICBicmVh
awogICAgICAgICAgICAgaWYgY3VycmVudF9ydW50aW1lOgotICAgICAgICAgICAgICAgIGRldmlj
ZSA9IFNpbXVsYXRvci5EZXZpY2UobmFtZT1kZXZpY2VfbWF0Y2guZ3JvdXAoJ25hbWUnKS5yc3Ry
aXAoKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWRpZD1kZXZpY2VfbWF0Y2gu
Z3JvdXAoJ3VkaWQnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxl
PWRldmljZV9tYXRjaC5ncm91cCgnYXZhaWxhYmlsaXR5JykgaXMgTm9uZSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcnVudGltZT1jdXJyZW50X3J1bnRpbWUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGhvc3Q9c2VsZi5faG9zdCkKLSAgICAgICAgICAgICAgICBj
dXJyZW50X3J1bnRpbWUuZGV2aWNlcy5hcHBlbmQoZGV2aWNlKQorICAgICAgICAgICAgICAgIHVk
aWQgPSBkZXZpY2VfbWF0Y2guZ3JvdXAoJ3VkaWQnKQorICAgICAgICAgICAgICAgIGF2YWlsYWJs
ZSA9IChkZXZpY2VfbWF0Y2guZ3JvdXAoJ2F2YWlsYWJpbGl0eScpIGlzIE5vbmUpCisgICAgICAg
ICAgICAgICAgaWYgdWRpZCBpbiBjdXJyZW50X3J1bnRpbWUuZGV2aWNlczoKKyAgICAgICAgICAg
ICAgICAgICAgY3VycmVudF9ydW50aW1lLmRldmljZXNbdWRpZF0udXBkYXRlKGF2YWlsYWJsZSkK
KyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBjdXJyZW50X3J1bnRp
bWUuZGV2aWNlc1t1ZGlkXSA9IFNpbXVsYXRvci5EZXZpY2UoCisgICAgICAgICAgICAgICAgICAg
ICAgICBuYW1lPWRldmljZV9tYXRjaC5ncm91cCgnbmFtZScpLnJzdHJpcCgpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgdWRpZD11ZGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxh
YmxlPWF2YWlsYWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWU9Y3VycmVudF9y
dW50aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgaG9zdD1zZWxmLl9ob3N0KQogCiAgICAg
ZGVmIGRldmljZV90eXBlKHNlbGYsIG5hbWU9Tm9uZSwgaWRlbnRpZmllcj1Ob25lKToKICAgICAg
ICAgIiIiCkBAIC0zODMsNyArMzg5LDcgQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAg
ICAgIDpyZXR1cm46IEEgZGV2aWNlIHR5cGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgYW5kL29y
IGlkZW50aWZpZXIsIG9yIE5vbmUgaWYgb25lIGRvZXNuJ3QgZXhpc3QgYXMgc3VjaC4KICAgICAg
ICAgOnJ0eXBlOiBEZXZpY2VUeXBlCiAgICAgICAgICIiIgotICAgICAgICBmb3IgZGV2aWNlX3R5
cGUgaW4gc2VsZi5kZXZpY2VfdHlwZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2VfdHlwZSBpbiBz
ZWxmLmRldmljZV90eXBlcy5pdGVyaXRlbXMoKToKICAgICAgICAgICAgIGlmIG5hbWUgYW5kIGRl
dmljZV90eXBlLm5hbWUgIT0gbmFtZToKICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAg
ICAgICAgaWYgaWRlbnRpZmllciBhbmQgZGV2aWNlX3R5cGUuaWRlbnRpZmllciAhPSBpZGVudGlm
aWVyOgpAQCAtMzkxLDcgKzM5Nyw4IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICAgICAgcmV0dXJuIGRldmljZV90eXBlCiAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBkZWYg
cnVudGltZShzZWxmLCB2ZXJzaW9uPU5vbmUsIGlkZW50aWZpZXI9Tm9uZSwgaXNfaW50ZXJuYWxf
cnVudGltZT1Ob25lKToKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIHJ1bnRpbWUodmVyc2lv
bj1Ob25lLCBpZGVudGlmaWVyPU5vbmUsIGlzX2ludGVybmFsX3J1bnRpbWU9Tm9uZSk6CiAgICAg
ICAgICIiIgogICAgICAgICA6cGFyYW0gdmVyc2lvbjogVGhlIGlPUyB2ZXJzaW9uIG9mIHRoZSBk
ZXNpcmVkIHJ1bnRpbWUuCiAgICAgICAgIDp0eXBlIHZlcnNpb246IHR1cGxlCkBAIC00MDMsNyAr
NDEwLDcgQEAgY2xhc3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgIGlmIHZlcnNpb24gaXMg
Tm9uZSBhbmQgaWRlbnRpZmllciBpcyBOb25lOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9y
KCdNdXN0IHN1cHBseSB2ZXJzaW9uIGFuZC9vciBpZGVudGlmaWVyLicpCiAKLSAgICAgICAgZm9y
IHJ1bnRpbWUgaW4gc2VsZi5ydW50aW1lczoKKyAgICAgICAgZm9yIF8sIHJ1bnRpbWUgaW4gU2lt
dWxhdG9yLnJ1bnRpbWVzLml0ZXJpdGVtcygpOgogICAgICAgICAgICAgaWYgdmVyc2lvbiBhbmQg
cnVudGltZS52ZXJzaW9uICE9IHZlcnNpb246CiAgICAgICAgICAgICAgICAgY29udGludWUKICAg
ICAgICAgICAgIGlmIGlzX2ludGVybmFsX3J1bnRpbWUgYW5kIHJ1bnRpbWUuaXNfaW50ZXJuYWxf
cnVudGltZSAhPSBpc19pbnRlcm5hbF9ydW50aW1lOgpAQCAtNDIwLDE1ICs0MjcsMTQgQEAgY2xh
c3MgU2ltdWxhdG9yKG9iamVjdCk6CiAgICAgICAgIDpyZXR1cm46IFRoZSBgRGV2aWNlYCB3aXRo
IHRoZSBzcGVjaWZpZWQgVURJRC4KICAgICAgICAgOnJ0eXBlOiBEZXZpY2UKICAgICAgICAgIiIi
Ci0gICAgICAgIGZvciBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzOgotICAgICAgICAgICAgaWYgZGV2
aWNlLnVkaWQgPT0gdWRpZDoKLSAgICAgICAgICAgICAgICByZXR1cm4gZGV2aWNlCisgICAgICAg
IGlmIHVkaWQgaW4gc2VsZi5kZXZpY2VzOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuZGV2aWNl
c1t1ZGlkXQogICAgICAgICByZXR1cm4gTm9uZQogCiAgICAgZGVmIGN1cnJlbnRfZGV2aWNlKHNl
bGYpOgogICAgICAgICAjIEZJWE1FOiBGaW5kIHRoZSBzaW11bGF0b3IgZGV2aWNlIHRoYXQgd2Fz
IGJvb3RlZCBieSBTaW11bGF0b3IuYXBwLiBGb3Igbm93LCBwaWNrIHNvbWUgYm9vdGVkIHNpbXVs
YXRvciBkZXZpY2UsIHdoaWNoCiAgICAgICAgICMgbWF5IGhhdmUgYmVlbiBib290ZWQgdXNpbmcg
dGhlIHNpbWN0bCBjb21tYW5kIGxpbmUgdG9vbC4KLSAgICAgICAgZm9yIGRldmljZSBpbiBzZWxm
LmRldmljZXM6CisgICAgICAgIGZvciBfLCBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzLml0ZXJpdGVt
cygpOgogICAgICAgICAgICAgaWYgZGV2aWNlLnN0YXRlID09IFNpbXVsYXRvci5EZXZpY2VTdGF0
ZS5CT09URUQ6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGRldmljZQogICAgICAgICByZXR1cm4g
Tm9uZQpAQCAtNDQ2LDcgKzQ1Miw3IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAg
ICBpZiBuYW1lIGlzIE5vbmUgYW5kIHJ1bnRpbWUgaXMgTm9uZToKICAgICAgICAgICAgIHJhaXNl
IFR5cGVFcnJvcignTXVzdCBzdXBwbHkgbmFtZSBhbmQvb3IgcnVudGltZS4nKQogCi0gICAgICAg
IGZvciBkZXZpY2UgaW4gc2VsZi5kZXZpY2VzOgorICAgICAgICBmb3IgXywgZGV2aWNlIGluIHNl
bGYuZGV2aWNlcy5pdGVyaXRlbXMoKToKICAgICAgICAgICAgIGlmIHNob3VsZF9pZ25vcmVfdW5h
dmFpbGFibGVfZGV2aWNlcyBhbmQgbm90IGRldmljZS5hdmFpbGFibGU6CiAgICAgICAgICAgICAg
ICAgY29udGludWUKICAgICAgICAgICAgIGlmIG5hbWUgYW5kIGRldmljZS5uYW1lICE9IG5hbWU6
CkBAIC00NjIsMTUgKzQ2OCwxOCBAQCBjbGFzcyBTaW11bGF0b3Iob2JqZWN0KToKICAgICAgICAg
OnJldHVybjogQW4gaXRlcmF0b3Igb2YgYWxsIGF2YWlsYWJsZSBydW50aW1lcy4KICAgICAgICAg
OnJ0eXBlOiBpdGVyCiAgICAgICAgICIiIgotICAgICAgICByZXR1cm4gaXRlcnRvb2xzLmlmaWx0
ZXIobGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWUuYXZhaWxhYmxlLCBzZWxmLnJ1bnRpbWVzKQorICAg
ICAgICByZXR1cm4gaXRlcnRvb2xzLmlmaWx0ZXIobGFtYmRhIGVudHJ5OiBlbnRyeVsxXS5hdmFp
bGFibGUsIFNpbXVsYXRvci5ydW50aW1lcy5pdGVyaXRlbXMoKSkKIAogICAgIEBwcm9wZXJ0eQog
ICAgIGRlZiBkZXZpY2VzKHNlbGYpOgogICAgICAgICAiIiIKLSAgICAgICAgOnJldHVybjogQW4g
aXRlcmF0b3Igb2YgYWxsIGRldmljZXMgZnJvbSBhbGwgcnVudGltZXMuCi0gICAgICAgIDpydHlw
ZTogaXRlcgorICAgICAgICA6cmV0dXJuOiBBbiBkaWN0aW9uYXJ5IG9mIGFsbCBkZXZpY2VzIGZy
b20gYWxsIHJ1bnRpbWVzLgorICAgICAgICA6cnR5cGU6IGRpY3Rpb25hcnkKICAgICAgICAgIiIi
Ci0gICAgICAgIHJldHVybiBpdGVydG9vbHMuY2hhaW4oKltydW50aW1lLmRldmljZXMgZm9yIHJ1
bnRpbWUgaW4gc2VsZi5ydW50aW1lc10pCisgICAgICAgIHJlc3VsdCA9IHt9CisgICAgICAgIGZv
ciBfLCBydW50aW1lIGluIFNpbXVsYXRvci5ydW50aW1lcy5pdGVyaXRlbXMoKToKKyAgICAgICAg
ICAgIHJlc3VsdC51cGRhdGUocnVudGltZS5kZXZpY2VzKQorICAgICAgICByZXR1cm4gcmVzdWx0
CiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgbGF0ZXN0X2F2YWlsYWJsZV9ydW50aW1lKHNlbGYp
OgpAQCAtNDc4LDkgKzQ4Nyw5IEBAIGNsYXNzIFNpbXVsYXRvcihvYmplY3QpOgogICAgICAgICA6
cmV0dXJuOiBSZXR1cm5zIGEgUnVudGltZSBvYmplY3Qgd2l0aCB0aGUgaGlnaGVzdCB2ZXJzaW9u
LgogICAgICAgICA6cnR5cGU6IFJ1bnRpbWUgb3IgTm9uZQogICAgICAgICAiIiIKLSAgICAgICAg
aWYgbm90IHNlbGYucnVudGltZXM6CisgICAgICAgIGlmIG5vdCBTaW11bGF0b3IucnVudGltZXM6
CiAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICByZXR1cm4gc29ydGVkKHNlbGYuYXZh
aWxhYmxlX3J1bnRpbWVzLCBrZXk9bGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWUudmVyc2lvbiwgcmV2
ZXJzZT1UcnVlKVswXQorICAgICAgICByZXR1cm4gc29ydGVkKHNlbGYuYXZhaWxhYmxlX3J1bnRp
bWVzLCBrZXk9bGFtYmRhIHJ1bnRpbWU6IHJ1bnRpbWVbMV0udmVyc2lvbiwgcmV2ZXJzZT1UcnVl
KVswXVsxXQogCiAgICAgZGVmIGxvb2t1cF9vcl9jcmVhdGVfZGV2aWNlKHNlbGYsIG5hbWUsIGRl
dmljZV90eXBlLCBydW50aW1lKToKICAgICAgICAgIiIiCkBAIC01MTAsMTIgKzUxOSwxMiBAQCBj
bGFzcyBTaW11bGF0b3Iob2JqZWN0KToKIAogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKICAgICAg
ICAgcmV0dXJuICc8aU9TIFNpbXVsYXRvcjoge251bV9ydW50aW1lc30gcnVudGltZXMsIHtudW1f
ZGV2aWNlX3R5cGVzfSBkZXZpY2UgdHlwZXM+Jy5mb3JtYXQoCi0gICAgICAgICAgICBudW1fcnVu
dGltZXM9bGVuKHNlbGYucnVudGltZXMpLAotICAgICAgICAgICAgbnVtX2RldmljZV90eXBlcz1s
ZW4oc2VsZi5kZXZpY2VfdHlwZXMpKQorICAgICAgICAgICAgbnVtX3J1bnRpbWVzPWxlbihTaW11
bGF0b3IucnVudGltZXMpLAorICAgICAgICAgICAgbnVtX2RldmljZV90eXBlcz1sZW4oU2ltdWxh
dG9yLmRldmljZV90eXBlcykpCiAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKICAgICAgICAgZGVz
Y3JpcHRpb24gPSBbJ2lPUyBTaW11bGF0b3I6J10KLSAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFw
KHN0ciwgc2VsZi5ydW50aW1lcykKLSAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgc2Vs
Zi5kZXZpY2VfdHlwZXMpCisgICAgICAgIGRlc2NyaXB0aW9uICs9IG1hcChzdHIsIFNpbXVsYXRv
ci5ydW50aW1lcykKKyAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgU2ltdWxhdG9yLmRl
dmljZV90eXBlcykKICAgICAgICAgZGVzY3JpcHRpb24gKz0gbWFwKHN0ciwgc2VsZi5kZXZpY2Vz
KQogICAgICAgICByZXR1cm4gJ1xuJy5qb2luKGRlc2NyaXB0aW9uKQpJbmRleDogVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS94Y29kZS9zaW11bGF0b3JfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvU2NyaXB0cy93ZWJraXRweS94Y29kZS9zaW11bGF0b3JfdW5pdHRlc3QucHkJKHJldmlz
aW9uIDIxNDIyNikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvc2ltdWxhdG9yX3Vu
aXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC03OSwxNzUgKzc5LDE4MiBAQCBBcHBsZSBUViAx
MDgwcCAoNTUyODFBQkUtOUMyNy00MzhCLUFENTAtCiAgICAgICAgIHNpbXVsYXRvciA9IFNpbXVs
YXRvcihob3N0PXNlbGYuX2hvc3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMTIsIGxlbihz
aW11bGF0b3IuZGV2aWNlX3R5cGVzKSkKIAotICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVfNHMg
PSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzBdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV80
cyA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURl
dmljZVR5cGUuaVBob25lLTRzJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDRz
JywgZGV2aWNlX3R5cGVfaXBob25lXzRzLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
J2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBob25lLTRzJywgZGV2aWNl
X3R5cGVfaXBob25lXzRzLmlkZW50aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25l
XzUgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzFdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9u
ZV81ID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2lt
RGV2aWNlVHlwZS5pUGhvbmUtNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1
JywgZGV2aWNlX3R5cGVfaXBob25lXzUubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn
Y29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNScsIGRldmljZV90
eXBlX2lwaG9uZV81LmlkZW50aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzVz
ID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1syXQorICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVf
NXMgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1E
ZXZpY2VUeXBlLmlQaG9uZS01cyddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1
cycsIGRldmljZV90eXBlX2lwaG9uZV81cy5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS01cycsIGRldmlj
ZV90eXBlX2lwaG9uZV81cy5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2lwaG9u
ZV82X3BsdXMgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzNdCisgICAgICAgIGRldmljZV90eXBl
X2lwaG9uZV82X3BsdXMgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNp
bXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS02LVBsdXMnXQogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKCdpUGhvbmUgNiBQbHVzJywgZGV2aWNlX3R5cGVfaXBob25lXzZfcGx1cy5uYW1lKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZp
Y2VUeXBlLmlQaG9uZS02LVBsdXMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNl9wbHVzLmlkZW50aWZp
ZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzYgPSBzaW11bGF0b3IuZGV2aWNlX3R5
cGVzWzRdCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV82ID0gc2ltdWxhdG9yLmRldmljZV90
eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNiddCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA2JywgZGV2aWNlX3R5cGVfaXBob25lXzYu
bmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3Iu
U2ltRGV2aWNlVHlwZS5pUGhvbmUtNicsIGRldmljZV90eXBlX2lwaG9uZV82LmlkZW50aWZpZXIp
CiAKLSAgICAgICAgZGV2aWNlX3R5cGVfaXBhZF8yID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s1
XQorICAgICAgICBkZXZpY2VfdHlwZV9pcGFkXzIgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydj
b20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQYWQtMiddCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoJ2lQYWQgMicsIGRldmljZV90eXBlX2lwYWRfMi5uYW1lKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBl
LmlQYWQtMicsIGRldmljZV90eXBlX2lwYWRfMi5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmlj
ZV90eXBlX2lwYWRfcmV0aW5hID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s2XQorICAgICAgICBk
ZXZpY2VfdHlwZV9pcGFkX3JldGluYSA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBs
ZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1SZXRpbmEnXQogICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKCdpUGFkIFJldGluYScsIGRldmljZV90eXBlX2lwYWRfcmV0aW5hLm5hbWUp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURl
dmljZVR5cGUuaVBhZC1SZXRpbmEnLCBkZXZpY2VfdHlwZV9pcGFkX3JldGluYS5pZGVudGlmaWVy
KQogCi0gICAgICAgIGRldmljZV90eXBlX2lwYWRfYWlyID0gc2ltdWxhdG9yLmRldmljZV90eXBl
c1s3XQorICAgICAgICBkZXZpY2VfdHlwZV9pcGFkX2FpciA9IHNpbXVsYXRvci5kZXZpY2VfdHlw
ZXNbJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1BaXInXQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIEFpcicsIGRldmljZV90eXBlX2lwYWRfYWlyLm5h
bWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNp
bURldmljZVR5cGUuaVBhZC1BaXInLCBkZXZpY2VfdHlwZV9pcGFkX2Fpci5pZGVudGlmaWVyKQog
Ci0gICAgICAgIGRldmljZV90eXBlX2lwYWRfcHJvID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s4
XQorICAgICAgICBkZXZpY2VfdHlwZV9pcGFkX3BybyA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNb
J2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1Qcm8tLTktNy1pbmNo
LSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQYWQgUHJvICg5LjctaW5jaCknLCBkZXZp
Y2VfdHlwZV9pcGFkX3Byby5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBw
bGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQYWQtUHJvLS05LTctaW5jaC0nLCBkZXZp
Y2VfdHlwZV9pcGFkX3Byby5pZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2FwcGxl
X3R2XzEwODBwID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s5XQorICAgICAgICBkZXZpY2VfdHlw
ZV9hcHBsZV90dl8xMDgwcCA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbJ2NvbS5hcHBsZS5Db3Jl
U2ltdWxhdG9yLlNpbURldmljZVR5cGUuQXBwbGUtVFYtMTA4MHAnXQogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKCdBcHBsZSBUViAxMDgwcCcsIGRldmljZV90eXBlX2FwcGxlX3R2XzEwODBwLm5h
bWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNp
bURldmljZVR5cGUuQXBwbGUtVFYtMTA4MHAnLCBkZXZpY2VfdHlwZV9hcHBsZV90dl8xMDgwcC5p
ZGVudGlmaWVyKQogCi0gICAgICAgIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzM4bW0gPSBzaW11
bGF0b3IuZGV2aWNlX3R5cGVzWzEwXQorICAgICAgICBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF8z
OG1tID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2lt
RGV2aWNlVHlwZS5BcHBsZS1XYXRjaC0zOG1tJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn
QXBwbGUgV2F0Y2ggLSAzOG1tJywgZGV2aWNlX3R5cGVfYXBwbGVfd2F0Y2hfMzhtbS5uYW1lKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZp
Y2VUeXBlLkFwcGxlLVdhdGNoLTM4bW0nLCBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF8zOG1tLmlk
ZW50aWZpZXIpCiAKLSAgICAgICAgZGV2aWNlX3R5cGVfYXBwbGVfd2F0Y2hfNDJtbSA9IHNpbXVs
YXRvci5kZXZpY2VfdHlwZXNbMTFdCisgICAgICAgIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzQy
bW0gPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1E
ZXZpY2VUeXBlLkFwcGxlLVdhdGNoLTQybW0nXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdB
cHBsZSBXYXRjaCAtIDQybW0nLCBkZXZpY2VfdHlwZV9hcHBsZV93YXRjaF80Mm1tLm5hbWUpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmlj
ZVR5cGUuQXBwbGUtV2F0Y2gtNDJtbScsIGRldmljZV90eXBlX2FwcGxlX3dhdGNoXzQybW0uaWRl
bnRpZmllcikKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDUsIGxlbihzaW11bGF0b3IucnVu
dGltZXMpKQogCi0gICAgICAgIHJ1bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNbMF0K
KyAgICAgICAgcnVudGltZV9pb3NfOCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNv
cmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGltZV9p
b3NfOC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVf
aW9zXzguYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1l
X2lvc184LmlzX2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVw
bGUoWzgsIDBdKSwgcnVudGltZV9pb3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKDExLCBsZW4ocnVudGltZV9pb3NfOC5kZXZpY2VzKSkKIAotICAgICAgICBkZXZpY2VfaXBo
b25lXzRzID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzBdCisgICAgICAgIGRldmljZV9pcGhvbmVf
NHMgPSBydW50aW1lX2lvc184LmRldmljZXNbJzY4RDlBNzkyLUUzQTktNDYyQi1CMjExLTc2MkM2
QTVEMzc3OSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA0cycsIGRldmljZV9p
cGhvbmVfNHMubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnNjhEOUE3OTItRTNBOS00
NjJCLUIyMTEtNzYyQzZBNUQzNzc5JywgZGV2aWNlX2lwaG9uZV80cy51ZGlkKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNHMuYXZhaWxhYmxlKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9pcGhvbmVfNHMucnVudGlt
ZSkKIAotICAgICAgICBkZXZpY2VfaXBob25lXzUgPSBydW50aW1lX2lvc184LmRldmljZXNbMV0K
KyAgICAgICAgZGV2aWNlX2lwaG9uZV81ID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWycxQzM3NjdG
Ri1DMjY4LTQ5NjEtQjZEQS1GNEY3NUU5OUVGNUQnXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KCdpUGhvbmUgNScsIGRldmljZV9pcGhvbmVfNS5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKCcxQzM3NjdGRi1DMjY4LTQ5NjEtQjZEQS1GNEY3NUU5OUVGNUQnLCBkZXZpY2VfaXBob25l
XzUudWRpZCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBob25lXzUu
YXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmlj
ZV9pcGhvbmVfNS5ydW50aW1lKQogCi0gICAgICAgIGRldmljZV9pcGhvbmVfNXMgPSBydW50aW1l
X2lvc184LmRldmljZXNbMl0KKyAgICAgICAgZGV2aWNlX2lwaG9uZV81cyA9IHJ1bnRpbWVfaW9z
XzguZGV2aWNlc1snMkExQ0IzNjMtOUEwOS00NDM4LUI5QkUtOUM0MkJEMjA4RjcyJ10KICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDVzJywgZGV2aWNlX2lwaG9uZV81cy5uYW1lKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcyQTFDQjM2My05QTA5LTQ0MzgtQjlCRS05QzQyQkQy
MDhGNzInLCBkZXZpY2VfaXBob25lXzVzLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
VHJ1ZSwgZGV2aWNlX2lwaG9uZV81cy5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81cy5ydW50aW1lKQogCi0gICAgICAgIGRl
dmljZV9pcGhvbmVfNXNfd2Via2l0X3Rlc3RlciA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1szXQor
ICAgICAgICBkZXZpY2VfaXBob25lXzVzX3dlYmtpdF90ZXN0ZXIgPSBydW50aW1lX2lvc184LmRl
dmljZXNbJzc5QkE5MjA2LUUwQjYtNEQwRS1CMEU4LUE4OEUyRDQ1NTE1RCddCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1cyBXZWJLaXQgVGVzdGVyJywgZGV2aWNlX2lwaG9uZV81
c193ZWJraXRfdGVzdGVyLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzc5QkE5MjA2
LUUwQjYtNEQwRS1CMEU4LUE4OEUyRDQ1NTE1RCcsIGRldmljZV9pcGhvbmVfNXNfd2Via2l0X3Rl
c3Rlci51ZGlkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVf
NXNfd2Via2l0X3Rlc3Rlci5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVu
dGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81c193ZWJraXRfdGVzdGVyLnJ1bnRpbWUpCiAKLSAg
ICAgICAgZGV2aWNlX2lwaG9uZV82X3BsdXMgPSBydW50aW1lX2lvc184LmRldmljZXNbNF0KKyAg
ICAgICAgZGV2aWNlX2lwaG9uZV82X3BsdXMgPSBydW50aW1lX2lvc184LmRldmljZXNbJzdGODAz
OUJFLUQ0QTAtNDI0NS05RDU2LUFGOTQ0MTNGRDZGNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoJ2lQaG9uZSA2IFBsdXMnLCBkZXZpY2VfaXBob25lXzZfcGx1cy5uYW1lKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKCc3RjgwMzlCRS1ENEEwLTQyNDUtOUQ1Ni1BRjk0NDEzRkQ2RjUnLCBk
ZXZpY2VfaXBob25lXzZfcGx1cy51ZGlkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUs
IGRldmljZV9pcGhvbmVfNl9wbHVzLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bChydW50aW1lX2lvc184LCBkZXZpY2VfaXBob25lXzZfcGx1cy5ydW50aW1lKQogCi0gICAgICAg
IGRldmljZV9pcGhvbmVfNiA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s1XQorICAgICAgICBkZXZp
Y2VfaXBob25lXzYgPSBydW50aW1lX2lvc184LmRldmljZXNbJzdCRjlGODM1LTBDRUEtNEVFMy1C
RDE1LUE2MkJEOUY0QjY5MSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA2Jywg
ZGV2aWNlX2lwaG9uZV82Lm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzdCRjlGODM1
LTBDRUEtNEVFMy1CRDE1LUE2MkJEOUY0QjY5MScsIGRldmljZV9pcGhvbmVfNi51ZGlkKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNi5hdmFpbGFibGUpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV82LnJ1
bnRpbWUpCiAKLSAgICAgICAgZGV2aWNlX2lwYWRfMiA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s2
XQorICAgICAgICBkZXZpY2VfaXBhZF8yID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWycyOTY3QzU0
Ri1BNDk5LTQwNDMtQTgyQy04QzFGNUFEQkI0QTknXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KCdpUGFkIDInLCBkZXZpY2VfaXBhZF8yLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
JzI5NjdDNTRGLUE0OTktNDA0My1BODJDLThDMUY1QURCQjRBOScsIGRldmljZV9pcGFkXzIudWRp
ZCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBhZF8yLmF2YWlsYWJs
ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50aW1lX2lvc184LCBkZXZpY2VfaXBhZF8y
LnJ1bnRpbWUpCiAKLSAgICAgICAgZGV2aWNlX2lwYWRfcmV0aW5hID0gcnVudGltZV9pb3NfOC5k
ZXZpY2VzWzddCisgICAgICAgIGRldmljZV9pcGFkX3JldGluYSA9IHJ1bnRpbWVfaW9zXzguZGV2
aWNlc1snNzMzRkM3MUUtMjJGNC00MDc3LUJGNzktMjVDMjdFQTg4MUZDJ10KICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbCgnaVBhZCBSZXRpbmEnLCBkZXZpY2VfaXBhZF9yZXRpbmEubmFtZSkKICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnNzMzRkM3MUUtMjJGNC00MDc3LUJGNzktMjVDMjdFQTg4
MUZDJywgZGV2aWNlX2lwYWRfcmV0aW5hLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
VHJ1ZSwgZGV2aWNlX2lwYWRfcmV0aW5hLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChydW50aW1lX2lvc184LCBkZXZpY2VfaXBhZF9yZXRpbmEucnVudGltZSkKIAotICAgICAg
ICBkZXZpY2VfaXBhZF9haXIgPSBydW50aW1lX2lvc184LmRldmljZXNbOF0KKyAgICAgICAgZGV2
aWNlX2lwYWRfYWlyID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWyc2NzI2Njg0MS04MkYzLTQ1NDUt
QUVENi01NjhCMTE3RTQxQTgnXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIEFpcics
IGRldmljZV9pcGFkX2Fpci5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCc2NzI2Njg0
MS04MkYzLTQ1NDUtQUVENi01NjhCMTE3RTQxQTgnLCBkZXZpY2VfaXBhZF9haXIudWRpZCkKICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBhZF9haXIuYXZhaWxhYmxlKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9pcGFkX2Fpci5y
dW50aW1lKQogCi0gICAgICAgIGRldmljZV9pcGFkX3BybyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNl
c1s5XQorICAgICAgICBkZXZpY2VfaXBhZF9wcm8gPSBydW50aW1lX2lvc184LmRldmljZXNbJ0RF
QkQ1MEI4LTA1NjYtNEQ3QS1CQ0RCLTQxMzRDRkU1REE0MCddCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoJ2lQYWQgUHJvICg5LjcgaW5jaCknLCBkZXZpY2VfaXBhZF9wcm8ubmFtZSkKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnREVCRDUwQjgtMDU2Ni00RDdBLUJDREItNDEzNENGRTVEQTQw
JywgZGV2aWNlX2lwYWRfcHJvLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwg
ZGV2aWNlX2lwYWRfcHJvLmF2YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50
aW1lX2lvc184LCBkZXZpY2VfaXBhZF9wcm8ucnVudGltZSkKIAotICAgICAgICBkZXZpY2VfaXBo
b25lXzcgPSBydW50aW1lX2lvc184LmRldmljZXNbMTBdCisgICAgICAgIGRldmljZV9pcGhvbmVf
NyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1snMkFFNThCQkUtMDk5NS00MzI2LTlCNjUtMkY0MTNF
MkUzM0RDJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDcnLCBkZXZpY2VfaXBo
b25lXzcubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnMkFFNThCQkUtMDk5NS00MzI2
LTlCNjUtMkY0MTNFMkUzM0RDJywgZGV2aWNlX2lwaG9uZV83LnVkaWQpCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoRmFsc2UsIGRldmljZV9pcGhvbmVfNy5hdmFpbGFibGUpCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV83LnJ1bnRpbWUpCiAK
LSAgICAgICAgcnVudGltZV9pb3NfOF9pbnRlcm5hbCA9IHNpbXVsYXRvci5ydW50aW1lc1sxXQor
ICAgICAgICBydW50aW1lX2lvc184X2ludGVybmFsID0gc2ltdWxhdG9yLnJ1bnRpbWVzWydjb20u
YXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04LTAtSW50ZXJuYWwnXQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlP
Uy04LTAtSW50ZXJuYWwnLCBydW50aW1lX2lvc184X2ludGVybmFsLmlkZW50aWZpZXIpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoRmFsc2UsIHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwuYXZhaWxh
YmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfaW9zXzhfaW50ZXJu
YWwuaXNfaW50ZXJuYWxfcnVudGltZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZShb
OCwgMF0pLCBydW50aW1lX2lvc184X2ludGVybmFsLnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoMCwgbGVuKHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwuZGV2aWNlcykpCiAKLSAgICAg
ICAgcnVudGltZV9pb3NfOF80ID0gc2ltdWxhdG9yLnJ1bnRpbWVzWzJdCisgICAgICAgIHJ1bnRp
bWVfaW9zXzhfNCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3Iu
U2ltUnVudGltZS5pT1MtOC00J10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxl
LkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC00JywgcnVudGltZV9pb3NfOF80LmlkZW50
aWZpZXIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgcnVudGltZV9pb3NfOF80LmF2
YWlsYWJsZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGYWxzZSwgcnVudGltZV9pb3NfOF80
LmlzX2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoWzgs
IDRdKSwgcnVudGltZV9pb3NfOF80LnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
MCwgbGVuKHJ1bnRpbWVfaW9zXzhfNC5kZXZpY2VzKSkKIAotICAgICAgICBydW50aW1lX3R2b3Nf
OSA9IHNpbXVsYXRvci5ydW50aW1lc1szXQorICAgICAgICBydW50aW1lX3R2b3NfOSA9IHNpbXVs
YXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS50dk9TLTkt
MCddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNp
bVJ1bnRpbWUudHZPUy05LTAnLCBydW50aW1lX3R2b3NfOS5pZGVudGlmaWVyKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfdHZvc185LmF2YWlsYWJsZSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChGYWxzZSwgcnVudGltZV90dm9zXzkuaXNfaW50ZXJuYWxfcnVudGlt
ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZShbOSwgMF0pLCBydW50aW1lX3R2b3Nf
OS52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihydW50aW1lX3R2b3Nf
OS5kZXZpY2VzKSkKIAotICAgICAgICBkZXZpY2VfYXBwbGVfdHZfMTA4MHAgPSBydW50aW1lX3R2
b3NfOS5kZXZpY2VzWzBdCisgICAgICAgIGRldmljZV9hcHBsZV90dl8xMDgwcCA9IHJ1bnRpbWVf
dHZvc185LmRldmljZXNbJzU1MjgxQUJFLTlDMjctNDM4Qi1BRDUwLUM1NDBEN0JDNEJBQyddCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFRWIDEwODBwJywgZGV2aWNlX2FwcGxlX3R2
XzEwODBwLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzU1MjgxQUJFLTlDMjctNDM4
Qi1BRDUwLUM1NDBEN0JDNEJBQycsIGRldmljZV9hcHBsZV90dl8xMDgwcC51ZGlkKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9hcHBsZV90dl8xMDgwcC5hdmFpbGFibGUp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV90dm9zXzksIGRldmljZV9hcHBsZV90
dl8xMDgwcC5ydW50aW1lKQogCi0gICAgICAgIHJ1bnRpbWVfd2F0Y2hvc18yID0gc2ltdWxhdG9y
LnJ1bnRpbWVzWzRdCisgICAgICAgIHJ1bnRpbWVfd2F0Y2hvc18yID0gc2ltdWxhdG9yLnJ1bnRp
bWVzWydjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLndhdGNoT1MtMi0wJ10KICAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGlt
ZS53YXRjaE9TLTItMCcsIHJ1bnRpbWVfd2F0Y2hvc18yLmlkZW50aWZpZXIpCiAgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgcnVudGltZV93YXRjaG9zXzIuYXZhaWxhYmxlKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1lX3dhdGNob3NfMi5pc19pbnRlcm5hbF9y
dW50aW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR1cGxlKFsyLCAwXSksIHJ1bnRpbWVf
d2F0Y2hvc18yLnZlcnNpb24pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMiwgbGVuKHJ1bnRp
bWVfd2F0Y2hvc18yLmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9hcHBsZV93YXRjaF8zOG1t
ID0gcnVudGltZV93YXRjaG9zXzIuZGV2aWNlc1swXQorICAgICAgICBkZXZpY2VfYXBwbGVfd2F0
Y2hfMzhtbSA9IHJ1bnRpbWVfd2F0Y2hvc18yLmRldmljZXNbJzAwMTM4Q0QyLUQzMEMtNDM4MC1B
MzBFLUE3MEI4OEUxQTNDNSddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFdhdGNo
IC0gMzhtbScsIGRldmljZV9hcHBsZV93YXRjaF8zOG1tLm5hbWUpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoJzAwMTM4Q0QyLUQzMEMtNDM4MC1BMzBFLUE3MEI4OEUxQTNDNScsIGRldmljZV9h
cHBsZV93YXRjaF8zOG1tLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2
aWNlX2FwcGxlX3dhdGNoXzM4bW0uYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KHJ1bnRpbWVfd2F0Y2hvc18yLCBkZXZpY2VfYXBwbGVfd2F0Y2hfMzhtbS5ydW50aW1lKQogCi0g
ICAgICAgIGRldmljZV9hcHBsZV93YXRjaF80Mm1tID0gcnVudGltZV93YXRjaG9zXzIuZGV2aWNl
c1sxXQorICAgICAgICBkZXZpY2VfYXBwbGVfd2F0Y2hfNDJtbSA9IHJ1bnRpbWVfd2F0Y2hvc18y
LmRldmljZXNbJzE4NkFEODVFLTlCRTUtNDczNC1CQzMzLURGNTA0ODRBQUZGMCddCiAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoJ0FwcGxlIFdhdGNoIC0gNDJtbScsIGRldmljZV9hcHBsZV93YXRj
aF80Mm1tLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzE4NkFEODVFLTlCRTUtNDcz
NC1CQzMzLURGNTA0ODRBQUZGMCcsIGRldmljZV9hcHBsZV93YXRjaF80Mm1tLnVkaWQpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNlX2FwcGxlX3dhdGNoXzQybW0uYXZhaWxh
YmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfd2F0Y2hvc18yLCBkZXZpY2Vf
YXBwbGVfd2F0Y2hfNDJtbS5ydW50aW1lKQogCisgICAgICAgICMgVGVzdCBpdGVyYXRpbmcgdGhy
b3VnaCBydW50aW1lcworICAgICAgICBmb3IgaWRlbnRpZmllciwgcnVudGltZSBpbiBzaW11bGF0
b3IuYXZhaWxhYmxlX3J1bnRpbWVzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpZGVu
dGlmaWVyLCBydW50aW1lLmlkZW50aWZpZXIpCisKKyAgICAgICAgIyBUZXN0IGdyYWJiaW5nIGxh
dGVzdCBydW50aW1lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2lt
dWxhdG9yLlNpbVJ1bnRpbWUudHZPUy05LTAnLCBzaW11bGF0b3IubGF0ZXN0X2F2YWlsYWJsZV9y
dW50aW1lLmlkZW50aWZpZXIpCisKICAgICBkZWYgdGVzdF9pbnZhbGlkX2RldmljZV90eXBlc19o
ZWFkZXIoc2VsZik6CiAgICAgICAgICIiIiBUZXN0cyB0aGF0IGFuIGludmFsaWQgRGV2aWNlIFR5
cGVzIGhlYWRlciB0aHJvd3MgYW4gZXhjZXB0aW9uICIiIgogICAgICAgICBzZWxmLl9zZXRfZXhw
ZWN0ZWRfeGNydW5fc2ltY3RsX2xpc3QoJycnWFggRGV2aWNlIFR5cGVzIFhYCkBAIC0yOTcsMjYg
KzMwNCwyNiBAQCBpT1MgOC4wIEludGVybmFsICg4LjAgLSBVbmtub3duKSAoY29tLmFwCiAgICAg
ICAgIHNpbXVsYXRvciA9IFNpbXVsYXRvcihob3N0PXNlbGYuX2hvc3QpCiAgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoMSwgbGVuKHNpbXVsYXRvci5kZXZpY2VfdHlwZXMpKQogCi0gICAgICAgIGRl
dmljZV90eXBlX2lwaG9uZV80cyA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbMF0KKyAgICAgICAg
ZGV2aWNlX3R5cGVfaXBob25lXzRzID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1snY29tLmFwcGxl
LkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNHMnXQogICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMubmFtZSkKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlw
ZS5pUGhvbmUtNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMuaWRlbnRpZmllcikKIAogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihzaW11bGF0b3IucnVudGltZXMpKQogCi0gICAgICAg
IHJ1bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNbMF0KKyAgICAgICAgcnVudGltZV9p
b3NfOCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVu
dGltZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVT
aW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGltZV9pb3NfOC5pZGVudGlmaWVyKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRpbWVfaW9zXzguYXZhaWxhYmxlKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50aW1lX2lvc184LmlzX2ludGVybmFs
X3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoWzgsIDBdKSwgcnVudGlt
ZV9pb3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihydW50aW1l
X2lvc184LmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9pcGhvbmVfNHMgPSBydW50aW1lX2lv
c184LmRldmljZXNbMF0KKyAgICAgICAgZGV2aWNlX2lwaG9uZV80cyA9IHJ1bnRpbWVfaW9zXzgu
ZGV2aWNlc1snMjcxQkJFQUMtMTgyNi00Q0UxLUIzQUYtODNGMzVDREQxRDgyJ10KICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDRzJywgZGV2aWNlX2lwaG9uZV80cy5uYW1lKQogICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKCcyNzFCQkVBQy0xODI2LTRDRTEtQjNBRi04M0YzNUNERDFE
ODInLCBkZXZpY2VfaXBob25lXzRzLnVkaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1
ZSwgZGV2aWNlX2lwaG9uZV80cy5hdmFpbGFibGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV80cy5ydW50aW1lKQogCi0gICAgICAgIHJ1bnRp
bWVfaW9zXzhfaW50ZXJuYWwgPSBzaW11bGF0b3IucnVudGltZXNbMV0KKyAgICAgICAgcnVudGlt
ZV9pb3NfOF9pbnRlcm5hbCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxlLkNvcmVTaW11
bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wLUludGVybmFsJ10KICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wLUludGVybmFs
JywgcnVudGltZV9pb3NfOF9pbnRlcm5hbC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKEZhbHNlLCBydW50aW1lX2lvc184X2ludGVybmFsLmF2YWlsYWJsZSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChUcnVlLCBydW50aW1lX2lvc184X2ludGVybmFsLmlzX2ludGVybmFs
X3J1bnRpbWUpCkBAIC0zMzgsMjAgKzM0NSwyMCBAQCBpT1MgOC4wIEludGVybmFsICg4LjAgLSBV
bmtub3duKSAoY29tLmFwCiAgICAgICAgIHNpbXVsYXRvciA9IFNpbXVsYXRvcihob3N0PXNlbGYu
X2hvc3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHNpbXVsYXRvci5kZXZpY2Vf
dHlwZXMpKQogCi0gICAgICAgIGRldmljZV90eXBlX2lwaG9uZV80cyA9IHNpbXVsYXRvci5kZXZp
Y2VfdHlwZXNbMF0KKyAgICAgICAgZGV2aWNlX3R5cGVfaXBob25lXzRzID0gc2ltdWxhdG9yLmRl
dmljZV90eXBlc1snY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUt
NHMnXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2VfdHlwZV9p
cGhvbmVfNHMubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVT
aW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMu
aWRlbnRpZmllcikKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihzaW11bGF0b3Iu
cnVudGltZXMpKQogCi0gICAgICAgIHJ1bnRpbWVfaW9zXzggPSBzaW11bGF0b3IucnVudGltZXNb
MF0KKyAgICAgICAgcnVudGltZV9pb3NfOCA9IHNpbXVsYXRvci5ydW50aW1lc1snY29tLmFwcGxl
LkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJ10KICAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltUnVudGltZS5pT1MtOC0wJywgcnVudGlt
ZV9pb3NfOC5pZGVudGlmaWVyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIHJ1bnRp
bWVfaW9zXzguYXZhaWxhYmxlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBydW50
aW1lX2lvc184LmlzX2ludGVybmFsX3J1bnRpbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
dHVwbGUoWzgsIDBdKSwgcnVudGltZV9pb3NfOC52ZXJzaW9uKQogICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFsKDEsIGxlbihydW50aW1lX2lvc184LmRldmljZXMpKQogCi0gICAgICAgIGRldmljZV9p
cGhvbmVfNHMgPSBydW50aW1lX2lvc184LmRldmljZXNbMF0KKyAgICAgICAgZGV2aWNlX2lwaG9u
ZV80cyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1snMjcxQkJFQUMtMTgyNi00Q0UxLUIzQUYtODNG
MzVDREQxRDgyJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDRzJywgZGV2aWNl
X2lwaG9uZV80cy5uYW1lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcyNzFCQkVBQy0xODI2
LTRDRTEtQjNBRi04M0YzNUNERDFEODInLCBkZXZpY2VfaXBob25lXzRzLnVkaWQpCiAgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNlX2lwaG9uZV80cy5hdmFpbGFibGUpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>