<?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>141358</bug_id>
          
          <creation_ts>2015-02-07 10:48:03 -0800</creation_ts>
          <short_desc>[iOS] Make Simulator class testable</short_desc>
          <delta_ts>2015-02-07 16:44:43 -0800</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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>141365</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>glenn</cc>
    
    <cc>jake.nielsen.webkit</cc>
    
    <cc>jhoneycutt</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1067537</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-07 10:48:03 -0800</bug_when>
    <thetext>Need to make the Simulator class testable so that another bug can be fixed by writing a new failing test, then fixing that test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067538</commentid>
    <comment_count>1</comment_count>
      <attachid>246210</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-07 10:58:26 -0800</bug_when>
    <thetext>Created attachment 246210
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067540</commentid>
    <comment_count>2</comment_count>
      <attachid>246210</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-02-07 11:08:55 -0800</bug_when>
    <thetext>Comment on attachment 246210
Patch v1

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067598</commentid>
    <comment_count>3</comment_count>
      <attachid>246210</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-07 16:14:14 -0800</bug_when>
    <thetext>Comment on attachment 246210
Patch v1

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

&gt; Tools/Scripts/webkitpy/xcode/simulator_unittest.py:24
&gt; +import os
&gt; +import re

These imports are not needed.  Will remove them before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067604</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-07 16:44:43 -0800</bug_when>
    <thetext>Committed r179788: &lt;http://trac.webkit.org/changeset/179788&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246210</attachid>
            <date>2015-02-07 10:58:26 -0800</date>
            <delta_ts>2015-02-07 11:08:55 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-141358-20150207105826.patch</filename>
            <type>text/plain</type>
            <size>17816</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc5Nzc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjY1NjBmNGY3OWJkODM4NmI0NmU0ZTM5Njk0ZGM3MDVj
NTdmMWI0Zi4uMzE3MTUxZjZjOWZmOGQxNWFkYjQ1YTA4MjlkYThhZmFhZmZmZWI2MyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5
IEBACisyMDE1LTAyLTA3ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAg
ICAgICAgW2lPU10gTWFrZSBTaW11bGF0b3IgY2xhc3MgdGVzdGFibGUKKyAgICAgICAgPGh0dHA6
Ly93ZWJraXQub3JnL2IvMTQxMzU4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL3BsYXRmb3Jt
aW5mby5weToKKyAgICAgICAgKFBsYXRmb3JtSW5mby54Y29kZV9zaW1jdGxfbGlzdCk6IE1vdmUg
YHhjcnVuIHNpbWN0bCBsaXN0YAorICAgICAgICBjb21tYW5kIHRvIGhlcmUgZnJvbSBTaW11bGF0
b3IucmVmcmVzaCgpIGluIHhjb2RlL3NpbXVsYXRvci5weQorICAgICAgICBzbyB0aGF0IHRoZSBv
dXRwdXQgb2YgdGhlIGNvbW1hbmQgY2FuIGJlIG1vY2tlZC4KKworICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0Zm9ybWluZm9fbW9jay5weToKKyAgICAgICAgKE1v
Y2tQbGF0Zm9ybUluZm8uX19pbml0X18pOiBTZXQgc2VsZi5leHBlY3RlZF94Y29kZV9zaW1jdGxf
bGlzdAorICAgICAgICB0byBOb25lLgorICAgICAgICAoTW9ja1BsYXRmb3JtSW5mby54Y29kZV9z
aW1jdGxfbGlzdCk6IEFkZCBtZXRob2QgdGhhdCByZXR1cm5zCisgICAgICAgIHNlbGYuZXhwZWN0
ZWRfeGNvZGVfc2ltY3RsX2xpc3QgZXhwZWN0YXRpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3hjb2RlL3NpbXVsYXRvci5weTogQWRkIG1pc3NpbmcgY29weXJpZ2h0CisgICAgICAg
IGFuZCBsaWNlbnNlIGhlYWRlci4KKyAgICAgICAgKFNpbXVsYXRvci5fX2luaXRfXyk6IEFkZCBv
cHRpb25hbCAnaG9zdCcgcGFyYW1ldGVyIHRvIG1ha2UgaXQKKyAgICAgICAgcG9zc2libGUgdG8g
cGFzcyBpbiBhIG1vY2sgb2JqZWN0IGZvciB0ZXN0aW5nLiAgU2V0IHNlbGYuX2hvc3QKKyAgICAg
ICAgdG8gJ2hvc3QnIHBhcmFtZXRlciBvciBjcmVhdGUgSG9zdCgpIG9iamVjdC4KKyAgICAgICAg
KFNpbXVsYXRvci5yZWZyZXNoKTogQ2FsbCBuZXcgUGxhdGZvcm1JbmZvLnhjb2RlX3NpbWN0bF9s
aXN0KCkKKyAgICAgICAgbWV0aG9kLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS94Y29k
ZS9zaW11bGF0b3JfdW5pdHRlc3QucHk6IEFkZCB1bml0IHRlc3QKKyAgICAgICAgZm9yIGN1cnJl
bnQgY29kZS4KKyAgICAgICAgKFNpbXVsYXRvclRlc3QpOgorICAgICAgICAoU2ltdWxhdG9yVGVz
dC5zZXRVcCk6CisgICAgICAgIChTaW11bGF0b3JUZXN0Ll9zZXRfZXhwZWN0ZWRfeGNydW5fc2lt
Y3RsX2xpc3QpOgorICAgICAgICAoU2ltdWxhdG9yVGVzdC50ZXN0X3NpbXVsYXRvcl9kZXZpY2Vf
dHlwZXMpOgorICAgICAgICAodGVzdF9pbnZhbGlkX2RldmljZV90eXBlc19oZWFkZXIpOgorICAg
ICAgICAodGVzdF9pbnZhbGlkX3J1bnRpbWVzX2hlYWRlcik6CisgICAgICAgICh0ZXN0X2ludmFs
aWRfZGV2aWNlc19oZWFkZXIpOgorCiAyMDE1LTAyLTA2ICBEYW5hIEJ1cmthcnQgIDxkYnVya2Fy
dEBhcHBsZS5jb20+CiAKICAgICAgICAgZGFzaGJvYXJkOiBCdWlsZGJvdFRlc3RlclF1ZXVlVmll
dyBjcmFzaGVzT25seSBsb2dpYyBpcyB3cm9uZwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9jb21tb24vc3lzdGVtL3BsYXRmb3JtaW5mby5weSBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0Zm9ybWluZm8ucHkKaW5kZXggOTJkNjJhOGZlYWY5NzU5
NjQzMDg1Mjc3Y2I0ODJhYjQ5NWQ5NjYzOC4uMjY3NGRlYjBiYjU5YmY0YWM1YWRhZTQ0NWQzMjRk
NWNhMTEyNDQxOCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lz
dGVtL3BsYXRmb3JtaW5mby5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9z
eXN0ZW0vcGxhdGZvcm1pbmZvLnB5CkBAIC0xMjUsNiArMTI1LDEyIEBAIGNsYXNzIFBsYXRmb3Jt
SW5mbyhvYmplY3QpOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29t
bWFuZChbInhjcnVuIiwgIi0tc2RrIiwgc2RrX25hbWUsICItLXNob3ctc2RrLXZlcnNpb24iXSwg
cmV0dXJuX3N0ZGVycj1GYWxzZSwgZXJyb3JfaGFuZGxlcj1FeGVjdXRpdmUuaWdub3JlX2Vycm9y
KS5yc3RyaXAoKQogICAgICAgICByZXR1cm4gJycKIAorICAgIGRlZiB4Y29kZV9zaW1jdGxfbGlz
dChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuaXNfbWFjKCk6CisgICAgICAgICAgICByZXR1
cm4gKCkKKyAgICAgICAgb3V0cHV0ID0gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFsneGNy
dW4nLCAnc2ltY3RsJywgJ2xpc3QnXSwgcmV0dXJuX3N0ZGVycj1GYWxzZSkKKyAgICAgICAgcmV0
dXJuIChsaW5lIGZvciBsaW5lIGluIG91dHB1dC5zcGxpdGxpbmVzKCkpCisKICAgICBkZWYgX2Rl
dGVybWluZV9vc19uYW1lKHNlbGYsIHN5c19wbGF0Zm9ybSk6CiAgICAgICAgIGlmIHN5c19wbGF0
Zm9ybSA9PSAnZGFyd2luJzoKICAgICAgICAgICAgIHJldHVybiAnbWFjJwpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL3BsYXRmb3JtaW5mb19tb2NrLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL3BsYXRmb3JtaW5mb19tb2Nr
LnB5CmluZGV4IDIxYTY5MjI2NWUwZDVjMTZjYjFkODIyODllNzEyYTY3OWU3YmU4ODUuLjE0ZmUz
Y2Q2NzhiMzYwNTRhNTE2MTdlYzI3MjI1MjYwZDM5MGFiYzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9wbGF0Zm9ybWluZm9fbW9jay5weQorKysgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vcGxhdGZvcm1pbmZvX21vY2sucHkK
QEAgLTMxLDYgKzMxLDcgQEAgY2xhc3MgTW9ja1BsYXRmb3JtSW5mbyhvYmplY3QpOgogICAgIGRl
ZiBfX2luaXRfXyhzZWxmLCBvc19uYW1lPSdtYWMnLCBvc192ZXJzaW9uPSdzbm93bGVvcGFyZCcp
OgogICAgICAgICBzZWxmLm9zX25hbWUgPSBvc19uYW1lCiAgICAgICAgIHNlbGYub3NfdmVyc2lv
biA9IG9zX3ZlcnNpb24KKyAgICAgICAgc2VsZi5leHBlY3RlZF94Y29kZV9zaW1jdGxfbGlzdCA9
IE5vbmUKIAogICAgIGRlZiBpc19tYWMoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLm9zX25h
bWUgPT0gJ21hYycKQEAgLTU4LDMgKzU5LDYgQEAgY2xhc3MgTW9ja1BsYXRmb3JtSW5mbyhvYmpl
Y3QpOgogCiAgICAgZGVmIHhjb2RlX3Nka192ZXJzaW9uKHNlbGYsIHNka19uYW1lKToKICAgICAg
ICAgcmV0dXJuICc4LjEnCisKKyAgICBkZWYgeGNvZGVfc2ltY3RsX2xpc3Qoc2VsZik6CisgICAg
ICAgIHJldHVybiBzZWxmLmV4cGVjdGVkX3hjb2RlX3NpbWN0bF9saXN0CmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRvci5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkveGNvZGUvc2ltdWxhdG9yLnB5CmluZGV4IGIxMTNmNTYxNWZlNWQwMTY4M2M1YmIx
MjRhYjE2ZDAwYjdiYmY3NWYuLmRkNzNhZTM2ZTMwZjA2NDg0OGVkNDkyZTNlYTBhMmMxMDIyY2U2
MjMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvc2ltdWxhdG9yLnB5
CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkveGNvZGUvc2ltdWxhdG9yLnB5CkBAIC0xLDMg
KzEsMjUgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDE0LCAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAx
LiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisj
ICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyMgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorIyBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUworIyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisjIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTgorIyBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworIyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKwog
aW1wb3J0IGl0ZXJ0b29scwogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcwpAQCAtNiw2ICsyOCw4
IEBAIGltcG9ydCByZQogaW1wb3J0IHN1YnByb2Nlc3MKIGltcG9ydCB0aW1lCiAKK2Zyb20gd2Vi
a2l0cHkuY29tbW9uLmhvc3QgaW1wb3J0IEhvc3QKKwogX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2Vy
KF9fbmFtZV9fKQogCiAiIiIKQEAgLTIxNiw3ICsyNDAsOCBAQCBjbGFzcyBTaW11bGF0b3Iob2Jq
ZWN0KToKICAgICBkZXZpY2VzX3JlID0gcmUuY29tcGlsZSgKICAgICAgICAgJ1xzKig/UDxuYW1l
PlteKF0rIClcKCg/UDx1ZGlkPlteKV0rKVwpIFwoKD9QPHN0YXRlPlteKV0rKVwpKCBcKCg/UDxh
dmFpbGFiaWxpdHk+W14pXSspXCkpPycpCiAKLSAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAg
ZGVmIF9faW5pdF9fKHNlbGYsIGhvc3Q9Tm9uZSk6CisgICAgICAgIHNlbGYuX2hvc3QgPSBob3N0
IG9yIEhvc3QoKQogICAgICAgICBzZWxmLnJ1bnRpbWVzID0gW10KICAgICAgICAgc2VsZi5kZXZp
Y2VfdHlwZXMgPSBbXQogICAgICAgICBzZWxmLnJlZnJlc2goKQpAQCAtMjUxLDE0ICsyNzYsNyBA
QCBjbGFzcyBTaW11bGF0b3Iob2JqZWN0KToKICAgICAgICAgIiIiCiAgICAgICAgIFJlZnJlc2gg
cnVudGltZSBhbmQgZGV2aWNlIHR5cGUgaW5mb3JtYXRpb24gZnJvbSBgYHNpbWN0bCBsaXN0YGAu
CiAgICAgICAgICIiIgotICAgICAgICBjb21tYW5kID0gWyd4Y3J1bicsICdzaW1jdGwnLCAnbGlz
dCddCi0gICAgICAgIHNpbWN0bF9wID0gc3VicHJvY2Vzcy5Qb3Blbihjb21tYW5kLCBzdGRvdXQ9
c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQotICAgICAgICBzdGRvdXQs
IHN0ZGVyciA9IHNpbWN0bF9wLmNvbW11bmljYXRlKCkKLSAgICAgICAgaWYgc2ltY3RsX3AucmV0
dXJuY29kZSAhPSAwOgotICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKAotICAgICAgICAg
ICAgICAgICd7Y29tbWFuZH0gZmFpbGVkOlxue3N0ZG91dH1cbntzdGRlcnJ9Jy5mb3JtYXQoY29t
bWFuZD0nICcuam9pbihjb21tYW5kKSwgc3Rkb3V0PXN0ZG91dCwgc3RkZXJyPXN0ZGVycikpCi0K
LSAgICAgICAgbGluZXMgPSAobGluZSBmb3IgbGluZSBpbiBzdGRvdXQuc3BsaXRsaW5lcygpKQor
ICAgICAgICBsaW5lcyA9IHNlbGYuX2hvc3QucGxhdGZvcm0ueGNvZGVfc2ltY3RsX2xpc3QoKQog
ICAgICAgICBkZXZpY2VfdHlwZXNfaGVhZGVyID0gbmV4dChsaW5lcykKICAgICAgICAgaWYgZGV2
aWNlX3R5cGVzX2hlYWRlciAhPSAnPT0gRGV2aWNlIFR5cGVzID09JzoKICAgICAgICAgICAgIHJh
aXNlIFJ1bnRpbWVFcnJvcignRXhwZWN0ZWQgPT0gRGV2aWNlIFR5cGVzID09IGhlYWRlciBidXQg
Z290OiAie30iJy5mb3JtYXQoZGV2aWNlX3R5cGVzX2hlYWRlcikpCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRvcl91bml0dGVzdC5weSBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkveGNvZGUvc2ltdWxhdG9yX3VuaXR0ZXN0LnB5Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM4
YTJiMTRhMmQzNjJiMDBjYmQwNTMxMjc3YTVkMTA0YjVjZjhlOGYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3hjb2RlL3NpbXVsYXRvcl91bml0dGVzdC5weQpAQCAt
MCwwICsxLDIwMCBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorIyAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMg
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorIyBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisjIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisjIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTCisjIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyMgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OCisjIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisjIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitp
bXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHVuaXR0ZXN0CisKK2Zyb20gd2Via2l0cHkuY29t
bW9uLmhvc3RfbW9jayBpbXBvcnQgTW9ja0hvc3QKK2Zyb20gd2Via2l0cHkueGNvZGUuc2ltdWxh
dG9yIGltcG9ydCBTaW11bGF0b3IKKworCitjbGFzcyBTaW11bGF0b3JUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgIiIiIFNldCB1cCBtZXRo
b2QgZm9yIFNpbXVsYXRvclRlc3QgIiIiCisgICAgICAgIHNlbGYuX2hvc3QgPSBNb2NrSG9zdCgp
CisKKyAgICBkZWYgX3NldF9leHBlY3RlZF94Y3J1bl9zaW1jdGxfbGlzdChzZWxmLCBsaW5lcyk6
CisgICAgICAgIHNlbGYuX2hvc3QucGxhdGZvcm0uZXhwZWN0ZWRfeGNvZGVfc2ltY3RsX2xpc3Qg
PSAobGluZSBmb3IgbGluZSBpbiBsaW5lcy5zcGxpdGxpbmVzKCkpCisKKyAgICBkZWYgdGVzdF9z
aW11bGF0b3JfZGV2aWNlX3R5cGVzKHNlbGYpOgorICAgICAgICAiIiIgVGVzdHMgdGhhdCB2YWxp
ZCBgeGNydW4gc2ltY3RsIGxpc3RgIG91dHB1dCBpcyBwYXJzZWQgYXMgZXhwZWN0ZWQgIiIiCisg
ICAgICAgIHNlbGYuX3NldF9leHBlY3RlZF94Y3J1bl9zaW1jdGxfbGlzdCgnJyc9PSBEZXZpY2Ug
VHlwZXMgPT0KK2lQaG9uZSA0cyAoY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNlVHlw
ZS5pUGhvbmUtNHMpCitpUGhvbmUgNSAoY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2aWNl
VHlwZS5pUGhvbmUtNSkKK2lQaG9uZSA1cyAoY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2ltRGV2
aWNlVHlwZS5pUGhvbmUtNXMpCitpUGhvbmUgNiBQbHVzIChjb20uYXBwbGUuQ29yZVNpbXVsYXRv
ci5TaW1EZXZpY2VUeXBlLmlQaG9uZS02LVBsdXMpCitpUGhvbmUgNiAoY29tLmFwcGxlLkNvcmVT
aW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGhvbmUtNikKK2lQYWQgMiAoY29tLmFwcGxlLkNvcmVT
aW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGFkLTIpCitpUGFkIFJldGluYSAoY29tLmFwcGxlLkNv
cmVTaW11bGF0b3IuU2ltRGV2aWNlVHlwZS5pUGFkLVJldGluYSkKK2lQYWQgQWlyIChjb20uYXBw
bGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQYWQtQWlyKQorPT0gUnVudGltZXMgPT0K
K2lPUyA4LjAgKDguMCAtIDEyQTQ2NSkgKGNvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbVJ1bnRp
bWUuaU9TLTgtMCkKK2lPUyA4LjAgSW50ZXJuYWwgKDguMCAtIFVua25vd24pIChjb20uYXBwbGUu
Q29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04LTAtSW50ZXJuYWwpICh1bmF2YWlsYWJsZSwg
cnVudGltZSBwYXRoIG5vdCBmb3VuZCkKKz09IERldmljZXMgPT0KKy0tIGlPUyA4LjAgLS0KKyAg
ICBpUGhvbmUgNHMgKDY4RDlBNzkyLUUzQTktNDYyQi1CMjExLTc2MkM2QTVEMzc3OSkgKFNodXRk
b3duKQorICAgIGlQaG9uZSA1ICgxQzM3NjdGRi1DMjY4LTQ5NjEtQjZEQS1GNEY3NUU5OUVGNUQp
IChTaHV0ZG93bikKKyAgICBpUGhvbmUgNXMgKDJBMUNCMzYzLTlBMDktNDQzOC1COUJFLTlDNDJC
RDIwOEY3MikgKFNodXRkb3duKQorICAgIGlQaG9uZSA1cyBXZWJLaXQgVGVzdGVyICg3OUJBOTIw
Ni1FMEI2LTREMEUtQjBFOC1BODhFMkQ0NTUxNUQpIChCb290ZWQpCisgICAgaVBob25lIDYgUGx1
cyAoN0Y4MDM5QkUtRDRBMC00MjQ1LTlENTYtQUY5NDQxM0ZENkY1KSAoU2h1dGRvd24pCisgICAg
aVBob25lIDYgKDdCRjlGODM1LTBDRUEtNEVFMy1CRDE1LUE2MkJEOUY0QjY5MSkgKFNodXRkb3du
KQorICAgIGlQYWQgMiAoMjk2N0M1NEYtQTQ5OS00MDQzLUE4MkMtOEMxRjVBREJCNEE5KSAoU2h1
dGRvd24pCisgICAgaVBhZCBSZXRpbmEgKDczM0ZDNzFFLTIyRjQtNDA3Ny1CRjc5LTI1QzI3RUE4
ODFGQykgKFNodXRkb3duKQorICAgIGlQYWQgQWlyICg2NzI2Njg0MS04MkYzLTQ1NDUtQUVENi01
NjhCMTE3RTQxQTgpIChTaHV0ZG93bikKKy0tIGlPUyA4LjAgSW50ZXJuYWwgLS0KKycnJykKKyAg
ICAgICAgc2ltdWxhdG9yID0gU2ltdWxhdG9yKGhvc3Q9c2VsZi5faG9zdCkKKyAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbCg4LCBsZW4oc2ltdWxhdG9yLmRldmljZV90eXBlcykpCisKKyAgICAgICAg
ZGV2aWNlX3R5cGVfaXBob25lXzRzID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1swXQorICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMubmFt
ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnY29tLmFwcGxlLkNvcmVTaW11bGF0b3IuU2lt
RGV2aWNlVHlwZS5pUGhvbmUtNHMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNHMuaWRlbnRpZmllcikK
KworICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVfNSA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNb
MV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDUnLCBkZXZpY2VfdHlwZV9pcGhv
bmVfNS5uYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVs
YXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS01JywgZGV2aWNlX3R5cGVfaXBob25lXzUuaWRlbnRp
ZmllcikKKworICAgICAgICBkZXZpY2VfdHlwZV9pcGhvbmVfNXMgPSBzaW11bGF0b3IuZGV2aWNl
X3R5cGVzWzJdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1cycsIGRldmljZV90
eXBlX2lwaG9uZV81cy5uYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUu
Q29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBlLmlQaG9uZS01cycsIGRldmljZV90eXBlX2lwaG9u
ZV81cy5pZGVudGlmaWVyKQorCisgICAgICAgIGRldmljZV90eXBlX2lwaG9uZV82X3BsdXMgPSBz
aW11bGF0b3IuZGV2aWNlX3R5cGVzWzNdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9u
ZSA2IFBsdXMnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNl9wbHVzLm5hbWUpCisgICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBob25l
LTYtUGx1cycsIGRldmljZV90eXBlX2lwaG9uZV82X3BsdXMuaWRlbnRpZmllcikKKworICAgICAg
ICBkZXZpY2VfdHlwZV9pcGhvbmVfNiA9IHNpbXVsYXRvci5kZXZpY2VfdHlwZXNbNF0KKyAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDYnLCBkZXZpY2VfdHlwZV9pcGhvbmVfNi5uYW1l
KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1E
ZXZpY2VUeXBlLmlQaG9uZS02JywgZGV2aWNlX3R5cGVfaXBob25lXzYuaWRlbnRpZmllcikKKwor
ICAgICAgICBkZXZpY2VfdHlwZV9pcGFkXzIgPSBzaW11bGF0b3IuZGV2aWNlX3R5cGVzWzVdCisg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQYWQgMicsIGRldmljZV90eXBlX2lwYWRfMi5uYW1l
KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1E
ZXZpY2VUeXBlLmlQYWQtMicsIGRldmljZV90eXBlX2lwYWRfMi5pZGVudGlmaWVyKQorCisgICAg
ICAgIGRldmljZV90eXBlX2lwYWRfcmV0aW5hID0gc2ltdWxhdG9yLmRldmljZV90eXBlc1s2XQor
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIFJldGluYScsIGRldmljZV90eXBlX2lwYWRf
cmV0aW5hLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5hcHBsZS5Db3JlU2lt
dWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1SZXRpbmEnLCBkZXZpY2VfdHlwZV9pcGFkX3JldGlu
YS5pZGVudGlmaWVyKQorCisgICAgICAgIGRldmljZV90eXBlX2lwYWRfYWlyID0gc2ltdWxhdG9y
LmRldmljZV90eXBlc1s3XQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIEFpcicsIGRl
dmljZV90eXBlX2lwYWRfYWlyLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2NvbS5h
cHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBhZC1BaXInLCBkZXZpY2VfdHlwZV9p
cGFkX2Fpci5pZGVudGlmaWVyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMiwgbGVuKHNp
bXVsYXRvci5ydW50aW1lcykpCisKKyAgICAgICAgcnVudGltZV9pb3NfOCA9IHNpbXVsYXRvci5y
dW50aW1lc1swXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29yZVNpbXVs
YXRvci5TaW1SdW50aW1lLmlPUy04LTAnLCBydW50aW1lX2lvc184LmlkZW50aWZpZXIpCisgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgcnVudGltZV9pb3NfOC5hdmFpbGFibGUpCisgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwoRmFsc2UsIHJ1bnRpbWVfaW9zXzguaXNfaW50ZXJuYWxfcnVu
dGltZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZShbOCwgMF0pLCBydW50aW1lX2lv
c184LnZlcnNpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoOSwgbGVuKHJ1bnRpbWVfaW9z
XzguZGV2aWNlcykpCisKKyAgICAgICAgZGV2aWNlX2lwaG9uZV80cyA9IHJ1bnRpbWVfaW9zXzgu
ZGV2aWNlc1swXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdpUGhvbmUgNHMnLCBkZXZpY2Vf
aXBob25lXzRzLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzY4RDlBNzkyLUUzQTkt
NDYyQi1CMjExLTc2MkM2QTVEMzc3OScsIGRldmljZV9pcGhvbmVfNHMudWRpZCkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZpY2VfaXBob25lXzRzLmF2YWlsYWJsZSkKKyAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChydW50aW1lX2lvc184LCBkZXZpY2VfaXBob25lXzRzLnJ1bnRp
bWUpCisKKyAgICAgICAgZGV2aWNlX2lwaG9uZV81ID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzFd
CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1JywgZGV2aWNlX2lwaG9uZV81Lm5h
bWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzFDMzc2N0ZGLUMyNjgtNDk2MS1CNkRBLUY0
Rjc1RTk5RUY1RCcsIGRldmljZV9pcGhvbmVfNS51ZGlkKQorICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKFRydWUsIGRldmljZV9pcGhvbmVfNS5hdmFpbGFibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81LnJ1bnRpbWUpCisKKyAgICAgICAg
ZGV2aWNlX2lwaG9uZV81cyA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1syXQorICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKCdpUGhvbmUgNXMnLCBkZXZpY2VfaXBob25lXzVzLm5hbWUpCisgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoJzJBMUNCMzYzLTlBMDktNDQzOC1COUJFLTlDNDJCRDIwOEY3Mics
IGRldmljZV9pcGhvbmVfNXMudWRpZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBk
ZXZpY2VfaXBob25lXzVzLmF2YWlsYWJsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50
aW1lX2lvc184LCBkZXZpY2VfaXBob25lXzVzLnJ1bnRpbWUpCisKKyAgICAgICAgZGV2aWNlX2lw
aG9uZV81c193ZWJraXRfdGVzdGVyID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzNdCisgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA1cyBXZWJLaXQgVGVzdGVyJywgZGV2aWNlX2lwaG9u
ZV81c193ZWJraXRfdGVzdGVyLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzc5QkE5
MjA2LUUwQjYtNEQwRS1CMEU4LUE4OEUyRDQ1NTE1RCcsIGRldmljZV9pcGhvbmVfNXNfd2Via2l0
X3Rlc3Rlci51ZGlkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhv
bmVfNXNfd2Via2l0X3Rlc3Rlci5hdmFpbGFibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV81c193ZWJraXRfdGVzdGVyLnJ1bnRpbWUpCisK
KyAgICAgICAgZGV2aWNlX2lwaG9uZV82X3BsdXMgPSBydW50aW1lX2lvc184LmRldmljZXNbNF0K
KyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaVBob25lIDYgUGx1cycsIGRldmljZV9pcGhvbmVf
Nl9wbHVzLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzdGODAzOUJFLUQ0QTAtNDI0
NS05RDU2LUFGOTQ0MTNGRDZGNScsIGRldmljZV9pcGhvbmVfNl9wbHVzLnVkaWQpCisgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgZGV2aWNlX2lwaG9uZV82X3BsdXMuYXZhaWxhYmxlKQor
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJ1bnRpbWVfaW9zXzgsIGRldmljZV9pcGhvbmVfNl9w
bHVzLnJ1bnRpbWUpCisKKyAgICAgICAgZGV2aWNlX2lwaG9uZV82ID0gcnVudGltZV9pb3NfOC5k
ZXZpY2VzWzVdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQaG9uZSA2JywgZGV2aWNlX2lw
aG9uZV82Lm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzdCRjlGODM1LTBDRUEtNEVF
My1CRDE1LUE2MkJEOUY0QjY5MScsIGRldmljZV9pcGhvbmVfNi51ZGlkKQorICAgICAgICBzZWxm
LmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGhvbmVfNi5hdmFpbGFibGUpCisgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lwaG9uZV82LnJ1bnRpbWUpCisK
KyAgICAgICAgZGV2aWNlX2lwYWRfMiA9IHJ1bnRpbWVfaW9zXzguZGV2aWNlc1s2XQorICAgICAg
ICBzZWxmLmFzc2VydEVxdWFsKCdpUGFkIDInLCBkZXZpY2VfaXBhZF8yLm5hbWUpCisgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwoJzI5NjdDNTRGLUE0OTktNDA0My1BODJDLThDMUY1QURCQjRBOScs
IGRldmljZV9pcGFkXzIudWRpZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBkZXZp
Y2VfaXBhZF8yLmF2YWlsYWJsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChydW50aW1lX2lv
c184LCBkZXZpY2VfaXBhZF8yLnJ1bnRpbWUpCisKKyAgICAgICAgZGV2aWNlX2lwYWRfcmV0aW5h
ID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQ
YWQgUmV0aW5hJywgZGV2aWNlX2lwYWRfcmV0aW5hLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoJzczM0ZDNzFFLTIyRjQtNDA3Ny1CRjc5LTI1QzI3RUE4ODFGQycsIGRldmljZV9pcGFk
X3JldGluYS51ZGlkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGFk
X3JldGluYS5hdmFpbGFibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3Nf
OCwgZGV2aWNlX2lwYWRfcmV0aW5hLnJ1bnRpbWUpCisKKyAgICAgICAgZGV2aWNlX2lwYWRfYWly
ID0gcnVudGltZV9pb3NfOC5kZXZpY2VzWzhdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2lQ
YWQgQWlyJywgZGV2aWNlX2lwYWRfYWlyLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
JzY3MjY2ODQxLTgyRjMtNDU0NS1BRUQ2LTU2OEIxMTdFNDFBOCcsIGRldmljZV9pcGFkX2Fpci51
ZGlkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUsIGRldmljZV9pcGFkX2Fpci5hdmFp
bGFibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnVudGltZV9pb3NfOCwgZGV2aWNlX2lw
YWRfYWlyLnJ1bnRpbWUpCisKKyAgICAgICAgcnVudGltZV9pb3NfOF9pbnRlcm5hbCA9IHNpbXVs
YXRvci5ydW50aW1lc1sxXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdjb20uYXBwbGUuQ29y
ZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04LTAtSW50ZXJuYWwnLCBydW50aW1lX2lvc184X2lu
dGVybmFsLmlkZW50aWZpZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRmFsc2UsIHJ1bnRp
bWVfaW9zXzhfaW50ZXJuYWwuYXZhaWxhYmxlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRy
dWUsIHJ1bnRpbWVfaW9zXzhfaW50ZXJuYWwuaXNfaW50ZXJuYWxfcnVudGltZSkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCh0dXBsZShbOCwgMF0pLCBydW50aW1lX2lvc184X2ludGVybmFsLnZl
cnNpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMCwgbGVuKHJ1bnRpbWVfaW9zXzhfaW50
ZXJuYWwuZGV2aWNlcykpCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2RldmljZV90eXBlc19oZWFk
ZXIoc2VsZik6CisgICAgICAgICIiIiBUZXN0cyB0aGF0IGFuIGludmFsaWQgRGV2aWNlIFR5cGVz
IGhlYWRlciB0aHJvd3MgYW4gZXhjZXB0aW9uICIiIgorICAgICAgICBzZWxmLl9zZXRfZXhwZWN0
ZWRfeGNydW5fc2ltY3RsX2xpc3QoJycnWFggRGV2aWNlIFR5cGVzIFhYCisnJycpCisgICAgICAg
IHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAg
IFNpbXVsYXRvcihob3N0PXNlbGYuX2hvc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0V4
cGVjdGVkID09IERldmljZSBUeXBlcyA9PSBoZWFkZXIgYnV0IGdvdDogIlhYIERldmljZSBUeXBl
cyBYWCInLCBjbS5leGNlcHRpb24ubWVzc2FnZSkKKworICAgIGRlZiB0ZXN0X2ludmFsaWRfcnVu
dGltZXNfaGVhZGVyKHNlbGYpOgorICAgICAgICAiIiIgVGVzdHMgdGhhdCBhbiBpbnZhbGlkIFJ1
bnRpbWVzIGhlYWRlciB0aHJvd3MgYW4gZXhjZXB0aW9uICIiIgorICAgICAgICBzZWxmLl9zZXRf
ZXhwZWN0ZWRfeGNydW5fc2ltY3RsX2xpc3QoJycnPT0gRGV2aWNlIFR5cGVzID09CitpUGhvbmUg
NHMgKGNvbS5hcHBsZS5Db3JlU2ltdWxhdG9yLlNpbURldmljZVR5cGUuaVBob25lLTRzKQorWFgg
UnVudGltZXMgWFgKKycnJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1l
RXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgU2ltdWxhdG9yKGhvc3Q9c2VsZi5faG9zdCkKKyAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnRXhwZWN0ZWQgPT0gUnVudGltZXMgPT0gaGVhZGVyIGJ1
dCBnb3Q6ICJYWCBSdW50aW1lcyBYWCInLCBjbS5leGNlcHRpb24ubWVzc2FnZSkKKworICAgIGRl
ZiB0ZXN0X2ludmFsaWRfZGV2aWNlc19oZWFkZXIoc2VsZik6CisgICAgICAgICIiIiBUZXN0cyB0
aGF0IGFuIGludmFsaWQgRGV2aWNlcyBoZWFkZXIgdGhyb3dzIGFuIGV4Y2VwdGlvbiAiIiIKKyAg
ICAgICAgc2VsZi5fc2V0X2V4cGVjdGVkX3hjcnVuX3NpbWN0bF9saXN0KCcnJz09IERldmljZSBU
eXBlcyA9PQoraVBob25lIDRzIChjb20uYXBwbGUuQ29yZVNpbXVsYXRvci5TaW1EZXZpY2VUeXBl
LmlQaG9uZS00cykKKz09IFJ1bnRpbWVzID09CitpT1MgOC4wICg4LjAgLSAxMkE0NjUpIChjb20u
YXBwbGUuQ29yZVNpbXVsYXRvci5TaW1SdW50aW1lLmlPUy04LTApCitYWCBEZXZpY2VzIFhYCisn
JycpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToK
KyAgICAgICAgICAgIFNpbXVsYXRvcihob3N0PXNlbGYuX2hvc3QpCisgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwoJ0V4cGVjdGVkID09IERldmljZXMgPT0gaGVhZGVyIGJ1dCBnb3Q6ICJYWCBEZXZp
Y2VzIFhYIicsIGNtLmV4Y2VwdGlvbi5tZXNzYWdlKQo=
</data>
<flag name="review"
          id="271140"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>