<?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>8080</bug_id>
          
          <creation_ts>2006-03-30 08:28:17 -0800</creation_ts>
          <short_desc>NodeList (and other DOM lists) items are not enumeratable using for..in</short_desc>
          <delta_ts>2008-02-05 20:39:08 -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>WebCore JavaScript</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robin Daugherty">robin</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>ap</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ian</cc>
    
    <cc>mikel.walters</cc>
    
    <cc>sam</cc>
    
    <cc>unik</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>37975</commentid>
    <comment_count>0</comment_count>
    <who name="Robin Daugherty">robin</who>
    <bug_when>2006-03-30 08:28:17 -0800</bug_when>
    <thetext>I get a nodeList from getElementsByName, getElementsByTagName, etc.  I then want to step through the list.  In IE and Firefox, I can use a for...in statement to step through the nodeList as an array.  However, in Safari and latest Nightly of WebKit, the for...in statement does nothing.  Silently.

(Not sure whether this should be in Javascript or HTML DOM.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37976</commentid>
    <comment_count>1</comment_count>
      <attachid>7392</attachid>
    <who name="Robin Daugherty">robin</who>
    <bug_when>2006-03-30 08:30:25 -0800</bug_when>
    <thetext>Created attachment 7392
Sample page demonstrating both broken and working methods of stepping through nodeList.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>36519</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-01-07 08:45:28 -0800</bug_when>
    <thetext>Please note the values that get enumerated by for...in in Firefox: {0, 1, 2, 3, 4, length, item, namedItem}. In TOT WebKit, we get just {length, item}.

So, while WebKit may have a problem with property enumeration, this doesn&apos;t look like a valid way to iterate a NodeList.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>20467</commentid>
    <comment_count>3</comment_count>
    <who name="Alex Unigovsky">unik</who>
    <bug_when>2007-03-02 19:19:28 -0800</bug_when>
    <thetext>The thing I can confirm is that typeof(SomeObject.getElementsByTagName(&apos;sometag&apos;)) is &apos;function&apos; instead of an &apos;object&apos;. Confirmed on Safari 2.0.4 and nightly 19940.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69056</commentid>
    <comment_count>4</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2008-02-01 08:29:36 -0800</bug_when>
    <thetext>*** Bug 17137 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69057</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2008-02-01 08:30:25 -0800</bug_when>
    <thetext>NodeList, HTMLCollection and StyleSheetList are also affected by this.  See bug 17137 for more info.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69537</commentid>
    <comment_count>6</comment_count>
      <attachid>18948</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2008-02-05 20:03:05 -0800</bug_when>
    <thetext>Created attachment 18948
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69538</commentid>
    <comment_count>7</comment_count>
      <attachid>18948</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2008-02-05 20:08:09 -0800</bug_when>
    <thetext>Comment on attachment 18948
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69541</commentid>
    <comment_count>8</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2008-02-05 20:39:08 -0800</bug_when>
    <thetext>Landed in r30034.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>7392</attachid>
            <date>2006-03-30 08:30:25 -0800</date>
            <delta_ts>2006-03-30 08:30:25 -0800</delta_ts>
            <desc>Sample page demonstrating both broken and working methods of stepping through nodeList.</desc>
            <filename>test.html</filename>
            <type>text/html</type>
            <size>874</size>
            <attacher name="Robin Daugherty">robin</attacher>
            
              <data encoding="base64">PGh0bWw+Cgk8aGVhZD4KCQk8dGl0bGU+VGVzdDwvdGl0bGU+CgkJPHNjcmlwdCB0eXBlPSd0ZXh0
L2phdmFzY3JpcHQnPgoJCQlmdW5jdGlvbiBpbnZlcnRfYWxsX2ZvcmluKCkKCQkJewoJCQkJdmFy
IGl0ZW1zID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ0lOUFVUJyk7CgkJCQlmb3Io
aSBpbiBpdGVtcykgewoJCQkJCWl0ZW1zW2ldLmNoZWNrZWQ9IWl0ZW1zW2ldLmNoZWNrZWQKCQkJ
CX0KCQkJfQoJCQlmdW5jdGlvbiBpbnZlcnRfYWxsX2ZvcigpCgkJCXsKCQkJCXZhciBpdGVtcyA9
IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdJTlBVVCcpOwoJCQkJZm9yKGk9MDsgaTxp
dGVtcy5sZW5ndGg7IGkrKykgewoJCQkJCWl0ZW1zW2ldLmNoZWNrZWQ9IWl0ZW1zW2ldLmNoZWNr
ZWQKCQkJCX0KCQkJfQoJCTwvc2NyaXB0PgoJCTwvaGVhZD4KCTxib2R5PgoJCTxmb3JtIGFjdGlv
bj0nJyBtZXRob2Q9J3Bvc3QnPgoJCQk8aW5wdXQgdHlwZT0nY2hlY2tib3gnIG5hbWU9J3N0dWZm
MScgdmFsdWU9JzEnIC8+Q2hlY2sgMQoJCQk8aW5wdXQgdHlwZT0nY2hlY2tib3gnIG5hbWU9J3N0
dWZmMicgdmFsdWU9JzInIC8+Q2hlY2sgMgoJCQk8aW5wdXQgdHlwZT0nY2hlY2tib3gnIG5hbWU9
J3N0dWZmMycgdmFsdWU9JzMnIC8+Q2hlY2sgMwoJCQk8L2Zvcm0+CgkJPGlucHV0IHR5cGU9J2J1
dHRvbicgb25jbGljaz0naW52ZXJ0X2FsbF9mb3JpbigpOycgdmFsdWU9J0ludmVydCBDaGVja2Jv
eGVzIChmb3IuLi5pbiknIC8+CgkJPGlucHV0IHR5cGU9J2J1dHRvbicgb25jbGljaz0naW52ZXJ0
X2FsbF9mb3IoKTsnIHZhbHVlPSdJbnZlcnQgQ2hlY2tib3hlcyAoc3RhbmRhcmQgZm9yKScgLz4K
CQk8L2JvZHk+Cgk8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18948</attachid>
            <date>2008-02-05 20:03:05 -0800</date>
            <delta_ts>2008-02-05 20:08:09 -0800</delta_ts>
            <desc>patch</desc>
            <filename>listEnumeration.diff</filename>
            <type>text/plain</type>
            <size>21865</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDMwMDMzKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDgtMDItMDUgIFNhbSBXZWlu
aWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBGaXggZm9yIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgwODAKKyAgICAgICAgTm9kZUxpc3QgKGFuZCBvdGhlciBET00gbGlzdHMpIGl0ZW1zIGFy
ZSBub3QgZW51bWVyYXRhYmxlIHVzaW5nIGZvci4uaW4KKworICAgICAgICAqIEphdmFTY3JpcHRD
b3JlLmV4cDoKKwogMjAwOC0wMi0wNSAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpJbmRleDogSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUuZXhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRD
b3JlLmV4cAkocmV2aXNpb24gMzAwMzMpCisrKyBKYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS5leHAJKHdvcmtpbmcgY29weSkKQEAgLTE4MCw2ICsxODAsNyBAQCBfX1pOM0tKUzZwYXJzZXJF
dgogX19aTjNLSlM3Q1N0cmluZ0QxRXYKIF9fWk4zS0pTN1VTdHJpbmczUmVwNG51bGxFCiBfX1pO
M0tKUzdVU3RyaW5nM1JlcDdkZXN0cm95RXYKK19fWk4zS0pTN1VTdHJpbmc0ZnJvbUVqCiBfX1pO
M0tKUzdVU3RyaW5nNmFwcGVuZEVSS1MwXwogX19aTjNLSlM3VVN0cmluZ0MxRVBLTlNfNVVDaGFy
RWkKIF9fWk4zS0pTN1VTdHJpbmdDMUVQS2MKSW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAzMDAzMykKKysrIFdlYkNvcmUv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjggQEAKKzIwMDgtMDItMDUgIFNh
bSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBGaXggZm9yIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTgwODAKKyAgICAgICAgTm9kZUxpc3QgKGFuZCBvdGhlciBET00gbGlzdHMpIGl0
ZW1zIGFyZSBub3QgZW51bWVyYXRhYmxlIHVzaW5nIGZvci4uaW4KKworICAgICAgICAtIE1hdGNo
IEZpcmVmb3ggd2hlbiBlbnVtZXJhdGluZyBET00gaW50ZXJmYWNlcyB3aXRoIGluZGV4R2V0dGVy
cyAoc3VwcG9ydCBmb3IgCisgICAgICAgICAgdGhlIGFycmF5IGJyYWNrZXQsIG5vZGVMaXN0WzBd
LCBub3RhdGlvbikgYnkgaW5jbHVkaW5nIGFsbCB0aGUgaXRlbXMgaW4gdGhlCisgICAgICAgICAg
bGlzdCBiZWZvcmUgdGhlIGF0dHJpYnV0ZXMgYW5kIG1ldGhvZHMgb2YgdGhlIGludGVyZmFjZS4K
KworICAgICAgICBUZXN0OiBmYXN0L2RvbS9kb21MaXN0RW51bWVyYXRpb24uaHRtbAorCisgICAg
ICAgICogRm9yd2FyZGluZ0hlYWRlcnMva2pzL1Byb3BlcnR5TmFtZUFycmF5Lmg6IEFkZGVkLgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkpTRE9NV2luZG93OjpjdXN0b21HZXRQcm9wZXJ0eU5hbWVzKTogVXNlIHRoZSBuZXcg
Y3VzdG9tIG1ldGhvZCBtb2RlbC4gCisgICAgICAgICogYmluZGluZ3MvanMvSlNIaXN0b3J5Q3Vz
dG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSGlzdG9yeTo6Y3VzdG9tR2V0UHJvcGVydHlO
YW1lcyk6IGRpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOiBJbnN0ZWFkIG9mIGp1c3QgYWRkaW5nIGEgZGVjbGFyYXRpb24gb2YKKyAgICAgICAgZ2V0
UHJvcGVyeU5hbWVzIGFuZCBpbXBsZW1lbnRpbmcgdGhlIG1ldGhvZCBpbiB0aGUgQ3VzdG9tLmNw
cCwgbW92ZSB0byBhIHRoZSAKKyAgICAgICAgbW9kZWwgdXNlZCBieSBnZW5lcmF0ZWQgZ2V0T3du
UHJvcGVydHlTbG90KCkgYW5kIHB1dCgpIHdoZXJlIHRoZSBjdXN0b20gY29kZQorICAgICAgICBp
cyB3cml0dGVuIGluIGEgc2VwYXJhdGUgY3VzdG9tR2V0UHJvcGVydHlOYW1lcyB3aGljaCByZXR1
cm5zIGEgYm9vbCBpbmRpY2F0aW5nCisgICAgICAgIHdoZXRoZXIgdG8gY2FsbCB1cCB0byB0aGUg
YmFzZSBjbGFzcy4gIFRoaXMgZW5hYmxlcyBhZGRpbmcgdGhlIGxpc3QgaW5kZXhlcworICAgICAg
ICB0byB0aGUgUHJvcGVydHlOYW1lQXJyYXkgZm9yIGludGVyZmFjZXMgd2l0aCBpbmRleEdldHRl
cnMgYXV0b21hdGljYWxseS4KKwogMjAwOC0wMi0wNSAgU2FtdWVsIFdlaW5pZyAgPHNhbUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogV2ViQ29y
ZS9Gb3J3YXJkaW5nSGVhZGVycy9ranMvUHJvcGVydHlOYW1lQXJyYXkuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL2tqcy9Qcm9wZXJ0eU5hbWVBcnJheS5oCShyZXZp
c2lvbiAwKQorKysgV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy9ranMvUHJvcGVydHlOYW1lQXJy
YXkuaAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSBAQAorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L1Byb3BlcnR5TmFtZUFycmF5Lmg+CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2lu
ZG93Q3VzdG9tLmNwcAkocmV2aXNpb24gMzAwMzMpCisrKyBXZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NV2luZG93Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI1LDEyICsxMjUsMTIgQEAg
Ym9vbCBKU0RPTVdpbmRvdzo6ZGVsZXRlUHJvcGVydHkoRXhlY1N0YQogICAgIHJldHVybiBCYXNl
OjpkZWxldGVQcm9wZXJ0eShleGVjLCBwcm9wZXJ0eU5hbWUpOwogfQogCi12b2lkIEpTRE9NV2lu
ZG93OjpnZXRQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lQXJyYXkm
IHByb3BlcnR5TmFtZXMpCitib29sIEpTRE9NV2luZG93OjpjdXN0b21HZXRQcm9wZXJ0eU5hbWVz
KEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lQXJyYXkmKQogewogICAgIC8vIE9ubHkgYWxs
b3cgdGhlIHdpbmRvdyB0byBlbnVtZXJhdGVkIGJ5IGZyYW1lcyBpbiB0aGUgc2FtZSBvcmlnaW4u
CiAgICAgaWYgKCFhbGxvd3NBY2Nlc3NGcm9tKGV4ZWMpKQotICAgICAgICByZXR1cm47Ci0gICAg
QmFzZTo6Z2V0UHJvcGVydHlOYW1lcyhleGVjLCBwcm9wZXJ0eU5hbWVzKTsKKyAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgcmV0dXJuIGZhbHNlOwogfQogCiBKU1ZhbHVlKiBKU0RPTVdpbmRvdzo6
cG9zdE1lc3NhZ2UoRXhlY1N0YXRlKiBleGVjLCBjb25zdCBMaXN0JiBhcmdzKQpJbmRleDogV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hpc3RvcnlDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvYmluZGluZ3MvanMvSlNIaXN0b3J5Q3VzdG9tLmNwcAkocmV2aXNpb24gMzAwMzMpCisrKyBX
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTg0LDEyICs4NCwxMiBAQCBib29sIEpTSGlzdG9yeTo6ZGVsZXRlUHJvcGVydHkoRXhlY1N0YXRl
CiAgICAgcmV0dXJuIEJhc2U6OmRlbGV0ZVByb3BlcnR5KGV4ZWMsIHByb3BlcnR5TmFtZSk7CiB9
CiAKLXZvaWQgSlNIaXN0b3J5OjpnZXRQcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0ZSogZXhlYywgUHJv
cGVydHlOYW1lQXJyYXkmIHByb3BlcnR5TmFtZXMpCitib29sIEpTSGlzdG9yeTo6Y3VzdG9tR2V0
UHJvcGVydHlOYW1lcyhFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZUFycmF5JikKIHsKICAg
ICAvLyBPbmx5IGFsbG93IHRoZSBoaXN0b3J5IG9iamVjdCB0byBlbnVtZXJhdGVkIGJ5IGZyYW1l
cyBpbiB0aGUgc2FtZSBvcmlnaW4uCiAgICAgaWYgKCFhbGxvd3NBY2Nlc3NGcm9tRnJhbWUoZXhl
YywgaW1wbCgpLT5mcmFtZSgpKSkKLSAgICAgICAgcmV0dXJuOwotICAgIEJhc2U6OmdldFByb3Bl
cnR5TmFtZXMoZXhlYywgcHJvcGVydHlOYW1lcyk7CisgICAgICAgIHJldHVybiB0cnVlOworICAg
IHJldHVybiBmYWxzZTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCShyZXZpc2lvbiAzMDAzMykK
KysrIFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0JKHdvcmtpbmcg
Y29weSkKQEAgLTM2OSw3ICszNjksOCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgIHZpcnR1YWwgYm9vbCBkZWxldGVQcm9wZXJ0eShLSlM6OkV4ZWNT
dGF0ZSosIGNvbnN0IEtKUzo6SWRlbnRpZmllciYpO1xuIikgaWYgJGRhdGFOb2RlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tRGVsZXRlUHJvcGVydHkifTsKIAogICAgICMgQ3VzdG9tIGdl
dFByb3BlcnR5TmFtZXMgZnVuY3Rpb24KLSAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHZp
cnR1YWwgdm9pZCBnZXRQcm9wZXJ0eU5hbWVzKEtKUzo6RXhlY1N0YXRlKiwgS0pTOjpQcm9wZXJ0
eU5hbWVBcnJheSYpO1xuIikgaWYgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tR2V0UHJvcGVydHlOYW1lcyJ9OworICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgdmly
dHVhbCB2b2lkIGdldFByb3BlcnR5TmFtZXMoS0pTOjpFeGVjU3RhdGUqLCBLSlM6OlByb3BlcnR5
TmFtZUFycmF5Jik7XG4iKSBpZiAoJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tR2V0UHJvcGVydHlOYW1lcyJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Ikhhc0luZGV4R2V0dGVyIn0pOworICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgYm9vbCBj
dXN0b21HZXRQcm9wZXJ0eU5hbWVzKEtKUzo6RXhlY1N0YXRlKiwgS0pTOjpQcm9wZXJ0eU5hbWVB
cnJheSYpO1xuIikgaWYgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0
UHJvcGVydHlOYW1lcyJ9OwogCiAgICAgIyBDb25zdHJ1Y3RvciBvYmplY3QgZ2V0dGVyCiAgICAg
cHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgS0pTOjpKU1ZhbHVlKiBnZXRDb25zdHJ1
Y3RvcihLSlM6OkV4ZWNTdGF0ZSopO1xuIikgaWYgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiR2VuZXJhdGVDb25zdHJ1Y3RvciJ9OwpAQCAtNTg3LDYgKzU4OCw4IEBAIHN1YiBHZW5l
cmF0ZUltcGxlbWVudGF0aW9uCiAgICAgcHVzaChAaW1wbENvbnRlbnRIZWFkZXIsICIjaW5jbHVk
ZSBcIiRjbGFzc05hbWUuaFwiXG5cbiIpOwogICAgIHB1c2goQGltcGxDb250ZW50SGVhZGVyLCAi
I2luY2x1ZGUgPHd0Zi9HZXRQdHIuaD5cblxuIik7CiAKKyAgICBwdXNoKEBpbXBsQ29udGVudEhl
YWRlciwgIiNpbmNsdWRlIDxranMvUHJvcGVydHlOYW1lQXJyYXkuaD5cbiIpIGlmICRkYXRhTm9k
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ikhhc0luZGV4R2V0dGVyIn07CisKICAgICBBZGRJbmNs
dWRlc0ZvclR5cGUoJGludGVyZmFjZU5hbWUpOwogCiAgICAgQGltcGxDb250ZW50ID0gKCk7CkBA
IC0xMDU1LDEwICsxMDU4LDI1IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAg
IH0KICAgICB9CiAKKyAgICBpZiAoJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tR2V0UHJvcGVydHlOYW1lcyJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
Ikhhc0luZGV4R2V0dGVyIn0pIHsKKyAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICJ2b2lkICR7
Y2xhc3NOYW1lfTo6Z2V0UHJvcGVydHlOYW1lcyhFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFt
ZUFycmF5JiBwcm9wZXJ0eU5hbWVzKVxuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
e1xuIik7CisgICAgICAgIGlmICgkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0
b21HZXRQcm9wZXJ0eU5hbWVzIn0pIHsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAi
ICAgIGlmIChjdXN0b21HZXRQcm9wZXJ0eU5hbWVzKGV4ZWMsIHByb3BlcnR5TmFtZXMpKVxuIik7
CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgcmV0dXJuO1xuIik7Cisg
ICAgICAgIH0KKyAgICAgICAgaWYgKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ikhh
c0luZGV4R2V0dGVyIn0pIHsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBzdGF0aWNfY2FzdDwke2ltcGxDbGFzc05hbWV9Kj4oaW1w
bCgpKS0+bGVuZ3RoKCk7ICsraSlcbiIpOworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICIgICAgICAgIHByb3BlcnR5TmFtZXMuYWRkKElkZW50aWZpZXI6OmZyb20oaSkpO1xuIik7Cisg
ICAgICAgIH0KKyAgICAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgIEJhc2U6OmdldFByb3Bl
cnR5TmFtZXMoZXhlYywgcHJvcGVydHlOYW1lcyk7XG4iKTsKKyAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJ9XG5cbiIpOworICAgIH0KKwogICAgIGlmICgkZGF0YU5vZGUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJHZW5lcmF0ZUNvbnN0cnVjdG9yIn0pIHsKICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnQsICJKU1ZhbHVlKiAke2NsYXNzTmFtZX06OmdldENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSog
ZXhlYylcbntcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICByZXR1cm4gS0pT
OjpjYWNoZUdsb2JhbE9iamVjdDwke2NsYXNzTmFtZX1Db25zdHJ1Y3Rvcj4oZXhlYywgXCJbWyR7
aW50ZXJmYWNlTmFtZX0uY29uc3RydWN0b3JdXVwiKTtcbiIpOwotICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgIn1cbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7CiAg
ICAgfQogCiAgICAgIyBGdW5jdGlvbnMKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDMwMDMzKQorKysgTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDgt
MDItMDUgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0IGZvciBodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04MDgwCisgICAgICAgIE5vZGVMaXN0IChhbmQgb3RoZXIgRE9N
IGxpc3RzKSBpdGVtcyBhcmUgbm90IGVudW1lcmF0YWJsZSB1c2luZyBmb3IuLmluCisKKyAgICAg
ICAgKiBmYXN0L2RvbS9kb21MaXN0RW51bWVyYXRpb24uaHRtbDogQWRkZWQuCisgICAgICAgICog
ZmFzdC9kb20vcmVzb3VyY2VzL2RvbUxpc3RFbnVtZXJhdGlvbi5qczogQWRkZWQuCisKIDIwMDgt
MDItMDUgIE5pa29sYXMgWmltbWVybWFubiAgPHppbW1lcm1hbm5Aa2RlLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBPbGl2ZXIuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9kb21MaXN0
RW51bWVyYXRpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9kb21M
aXN0RW51bWVyYXRpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9t
L2RvbUxpc3RFbnVtZXJhdGlvbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxo
ZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2RvbUxpc3RF
bnVtZXJhdGlvbi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9yZXNvdXJjZXMvZG9tTGlzdEVudW1lcmF0aW9uLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL3Jlc291cmNlcy9kb21MaXN0RW51bWVyYXRpb24uanMJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXNvdXJjZXMvZG9tTGlzdEVu
dW1lcmF0aW9uLmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5NCBAQAorZGVzY3JpcHRpb24o
CisnVGhpcyB0ZXN0cyBlbnVtZXJhdGluZyB0aGUgZWxlbWVudHMgb2YgRE9NIGxpc3RzLicKKyk7
CisKK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOworCisvLyBDcmVhdGUgYSB0ZXN0aW5nIGVudmlybm9tZW50IHRo
YXQgY2FuIGJlIGNsZWFudXAgdXAgZWFzaWx5LgordmFyIHRlc3RpbmdHcm91bmQgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGVzdGlu
Z0dyb3VuZCk7CisKK2Z1bmN0aW9uIGNyZWF0ZUZyb21NYXJrdXAobWFya3VwKQoreworICAgIHZh
ciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgdmFyIGZyYWdtZW50Q29udGFp
bmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgcmFuZ2Uuc2VsZWN0Tm9k
ZUNvbnRlbnRzKGZyYWdtZW50Q29udGFpbmVyKTsKKyAgICB0ZXN0aW5nR3JvdW5kLmFwcGVuZENo
aWxkKGZyYWdtZW50Q29udGFpbmVyKTsKKyAgICB2YXIgZnJhZ21lbnQgPSByYW5nZS5jcmVhdGVD
b250ZXh0dWFsRnJhZ21lbnQobWFya3VwKTsKKyAgICBmcmFnbWVudENvbnRhaW5lci5hcHBlbmRD
aGlsZChmcmFnbWVudCk7CisgICAgcmV0dXJuIGZyYWdtZW50Q29udGFpbmVyLmZpcnN0Q2hpbGQ7
Cit9CisKK2Z1bmN0aW9uIHNldHVwKCkKK3sKKyAgICB2YXIgaGVhZCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07CisKKyAgICAvLyAyIGFkZGl0aW9uYWwgPHN0eWxl
PnMgbmVlZGVkIGZvciBTdHlsZVNoZWV0TGlzdCB0ZXN0IChvbmUgaXMgaW5jbHVkZWQgaW4gdGhl
IHRlbXBsYXRlKS4KKyAgICAvLyAzIHJ1bGVzIG5lZWRlZCBpbiB0aGUgZmlyc3QgYWRkdGlvbmFs
IDxzdHlsZT4gZm9yIHRoZSBDU1NSdWxlTGlzdCB0ZXN0LgorICAgIC8vIDMgZGVjbGFyYXRpb25z
IG5lZWRlZCBpbiB0aGUgZmlyc3QgcnVsZSBuZWVkZWQgZm9yIHRoZSBDU1NTdHlsZURlY2xhcmF0
aW9uIHRlc3QuCisgICAgLy8gQG1lZGlhIHJ1bGUgaW4gdGhlIHNlY29uZCBhZGR0aW9uYWwgPHN0
eWxlPiBmb3IgdGhlIE1lZGlhTGlzdCB0ZXN0LgorICAgIGhlYWQuYXBwZW5kQ2hpbGQoY3JlYXRl
RnJvbU1hcmt1cCgiPHN0eWxlPiBvbCB7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgY29s
b3I6IGdyZWVuOyB9IG9sIHsgfSBvbCB7IH0gPC9zdHlsZT4iKSk7CisgICAgaGVhZC5hcHBlbmRD
aGlsZChjcmVhdGVGcm9tTWFya3VwKCI8c3R5bGU+IEBtZWRpYSBzY3JlZW4sIHByb2plY3Rvciwg
cHJpbnRlciB7IG9sIHsgfSB9IDwvc3R5bGU+IikpOworCisgICAgLy8gMyA8b2w+cyBmb3IgTm9k
ZUxpc3QgdGVzdC4KKyAgICAvLyAzIGF0dHJpYnV0ZXMgaW4gdGhlIGZpcnN0IDxvbD4gZm9yIHRo
ZSBOYW1lZE5vZGVNYXAgdGVzdC4KKyAgICB0ZXN0aW5nR3JvdW5kLmFwcGVuZENoaWxkKGNyZWF0
ZUZyb21NYXJrdXAoIjxvbCBjbGFzcz0nZm9vJyBpZD0nYmFyJyBuYW1lPSdiYXonPjwvb2w+Iikp
OworICAgIHRlc3RpbmdHcm91bmQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
b2wnKSk7CisgICAgdGVzdGluZ0dyb3VuZC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdvbCcpKTsKKworICAgIC8vIDMgPGZvcm0+cyBmb3IgZm9ybXMgZm9yIEhUTUxDb2xsZWN0
aW9uIHRlc3QuCisgICAgdmFyIGZvcm0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdmb3JtJyk7
CisgICAgdGVzdGluZ0dyb3VuZC5hcHBlbmRDaGlsZChmb3JtKTsKKyAgICB0ZXN0aW5nR3JvdW5k
LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Zvcm0nKSk7CisgICAgdGVzdGlu
Z0dyb3VuZC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdmb3JtJykpOworCisg
ICAgLy8gMyA8c2VsZWN0PnMgZm9yIEhUTUxGb3JtRWxlbWVudCB0ZXN0LgorICAgIHZhciBzZWxl
Y3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzZWxlY3QnKTsKKyAgICBmb3JtLmFwcGVuZENo
aWxkKHNlbGVjdCk7CisgICAgZm9ybS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdzZWxlY3QnKSk7CisgICAgZm9ybS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdzZWxlY3QnKSk7CisKKyAgICAvLyAzIDxvcHRpb24+cyBmb3IgSFRNTFNlbGVjdEVsZW1lbnQg
dGVzdC4KKyAgICBzZWxlY3QuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnb3B0
aW9uJykpOworICAgIHNlbGVjdC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdv
cHRpb24nKSk7CisgICAgc2VsZWN0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J29wdGlvbicpKTsKKworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGVzdGluZ0dyb3Vu
ZCk7Cit9CisKK2Z1bmN0aW9uIGl0ZXJhdGVMaXN0KGxpc3QpCit7CisgICAgZGVidWcoIiIpOwor
ICAgIGRlYnVnKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChsaXN0KSk7CisgICAgdmFy
IGEgPSBuZXcgQXJyYXkoKTsKKyAgICBmb3IgKHZhciBpIGluIGxpc3QpIHsKKyAgICAgICAgLy9k
ZWJ1ZyhpICsgIjogIiArIGxpc3RbaV0pOworICAgICAgICBhLnB1c2goeyJpIiA6IGksICJpdGVt
IiA6IGxpc3RbaV19KTsKKyAgICB9CisgICAgcmV0dXJuIGE7Cit9CisKKy8vICoqIEZpcmVmb3gg
RE9FUyBpbmNsdWRlIHRoZSBpbmRleEdldHRlciByZXN1bHRzIGluIGVudW1lcmF0aW9uICoqCisv
LyBOb2RlTGlzdAorLy8gSFRNTENvbGxlY3Rpb24KKy8vIENTU1J1bGVMaXN0CisvLyBDU1NTdHls
ZURlY2xhcmF0aW9uCisvLyBDU1NWYWx1ZUxpc3QKKy8vIFN0eWxlU2hlZXRMaXN0CisvLyBNZWRp
YUxpc3QKKy8vIE5hbWVkTm9kZU1hcAorLy8gSFRNTEZvcm1FbGVtZW50CisvLyBIVE1MU2VsZWN0
RWxlbWVudAorCisvLyAqKiBGaXJlZm94IERPRVNOJ1QgaW5jbHVkZSB0aGUgaW5kZXhHZXR0ZXIg
cmVzdWx0cyBpbiBlbnVtZXJhdGlvbiAqKgorLy8gV2luZG93CisKK3NldHVwKCk7CisKK3ZhciBy
ZXN1bHRBcnJheSA9IG5ldyBBcnJheSgpOworCisvLyBOb2RlTGlzdAordmFyIG5vZGVMaXN0ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ29sJyk7CityZXN1bHRBcnJheSA9IGl0ZXJh
dGVMaXN0KG5vZGVMaXN0KTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheS5sZW5ndGgiLCAiNSIpOwor
c2hvdWxkQmUoInJlc3VsdEFycmF5WzBdLmkiLCAiJzAnIik7CitzaG91bGRCZSgicmVzdWx0QXJy
YXlbMF0uaXRlbSIsICJub2RlTGlzdC5pdGVtKDApIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlb
MV0uaSIsICInMSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsxXS5pdGVtIiwgIm5vZGVMaXN0
Lml0ZW0oMSkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pIiwgIicyJyIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzJdLml0ZW0iLCAibm9kZUxpc3QuaXRlbSgyKSIpOworc2hvdWxkQmUo
InJlc3VsdEFycmF5WzNdLmkiLCAiJ2xlbmd0aCciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsz
XS5pdGVtIiwgIm5vZGVMaXN0Lmxlbmd0aCIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzRdLmki
LCAiJ2l0ZW0nIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNF0uaXRlbSIsICJub2RlTGlzdC5p
dGVtIik7CisKKy8vIEhUTUxDb2xsZWN0aW9uCit2YXIgaHRtbENvbGxlY3Rpb24gPSBkb2N1bWVu
dC5mb3JtczsKK3Jlc3VsdEFycmF5ID0gaXRlcmF0ZUxpc3QoaHRtbENvbGxlY3Rpb24pOworc2hv
dWxkQmUoInJlc3VsdEFycmF5Lmxlbmd0aCIsICI3Iik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlb
MF0uaSIsICInMCciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVswXS5pdGVtIiwgImh0bWxDb2xs
ZWN0aW9uLml0ZW0oMCkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsxXS5pIiwgIicxJyIpOwor
c2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAiaHRtbENvbGxlY3Rpb24uaXRlbSgxKSIp
Oworc2hvdWxkQmUoInJlc3VsdEFycmF5WzJdLmkiLCAiJzInIik7CitzaG91bGRCZSgicmVzdWx0
QXJyYXlbMl0uaXRlbSIsICJodG1sQ29sbGVjdGlvbi5pdGVtKDIpIik7CitzaG91bGRCZSgicmVz
dWx0QXJyYXlbM10uaSIsICInbGVuZ3RoJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzNdLml0
ZW0iLCAiaHRtbENvbGxlY3Rpb24ubGVuZ3RoIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNF0u
aSIsICInbmFtZWRJdGVtJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzRdLml0ZW0iLCAiaHRt
bENvbGxlY3Rpb24ubmFtZWRJdGVtIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNV0uaSIsICIn
dGFncyciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs1XS5pdGVtIiwgImh0bWxDb2xsZWN0aW9u
LnRhZ3MiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs2XS5pIiwgIidpdGVtJyIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzZdLml0ZW0iLCAiaHRtbENvbGxlY3Rpb24uaXRlbSIpOworCisvLyBO
YW1lZE5vZGVNYXAKK3ZhciBuYW1lZE5vZGVNYXAgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgnb2wnKVswXS5hdHRyaWJ1dGVzOworcmVzdWx0QXJyYXkgPSBpdGVyYXRlTGlzdChuYW1l
ZE5vZGVNYXApOworc2hvdWxkQmUoInJlc3VsdEFycmF5Lmxlbmd0aCIsICIxMSIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzBdLmkiLCAiJzAnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMF0u
aXRlbSIsICJuYW1lZE5vZGVNYXAuaXRlbSgwKSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFd
LmkiLCAiJzEnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMV0uaXRlbSIsICJuYW1lZE5vZGVN
YXAuaXRlbSgxKSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzJdLmkiLCAiJzInIik7CitzaG91
bGRCZSgicmVzdWx0QXJyYXlbMl0uaXRlbSIsICJuYW1lZE5vZGVNYXAuaXRlbSgyKSIpOworc2hv
dWxkQmUoInJlc3VsdEFycmF5WzNdLmkiLCAiJ2xlbmd0aCciKTsKK3Nob3VsZEJlKCJyZXN1bHRB
cnJheVszXS5pdGVtIiwgIm5hbWVkTm9kZU1hcC5sZW5ndGgiKTsKK3Nob3VsZEJlKCJyZXN1bHRB
cnJheVs0XS5pIiwgIidyZW1vdmVOYW1lZEl0ZW1OUyciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJh
eVs0XS5pdGVtIiwgIm5hbWVkTm9kZU1hcC5yZW1vdmVOYW1lZEl0ZW1OUyIpOworc2hvdWxkQmUo
InJlc3VsdEFycmF5WzVdLmkiLCAiJ2dldE5hbWVkSXRlbSciKTsKK3Nob3VsZEJlKCJyZXN1bHRB
cnJheVs1XS5pdGVtIiwgIm5hbWVkTm9kZU1hcC5nZXROYW1lZEl0ZW0iKTsKK3Nob3VsZEJlKCJy
ZXN1bHRBcnJheVs2XS5pIiwgIidyZW1vdmVOYW1lZEl0ZW0nIik7CitzaG91bGRCZSgicmVzdWx0
QXJyYXlbNl0uaXRlbSIsICJuYW1lZE5vZGVNYXAucmVtb3ZlTmFtZWRJdGVtIik7CitzaG91bGRC
ZSgicmVzdWx0QXJyYXlbN10uaSIsICInZ2V0TmFtZWRJdGVtTlMnIik7CitzaG91bGRCZSgicmVz
dWx0QXJyYXlbN10uaXRlbSIsICJuYW1lZE5vZGVNYXAuZ2V0TmFtZWRJdGVtTlMiKTsKK3Nob3Vs
ZEJlKCJyZXN1bHRBcnJheVs4XS5pIiwgIidzZXROYW1lZEl0ZW1OUyciKTsKK3Nob3VsZEJlKCJy
ZXN1bHRBcnJheVs4XS5pdGVtIiwgIm5hbWVkTm9kZU1hcC5zZXROYW1lZEl0ZW1OUyIpOworc2hv
dWxkQmUoInJlc3VsdEFycmF5WzldLmkiLCAiJ3NldE5hbWVkSXRlbSciKTsKK3Nob3VsZEJlKCJy
ZXN1bHRBcnJheVs5XS5pdGVtIiwgIm5hbWVkTm9kZU1hcC5zZXROYW1lZEl0ZW0iKTsKK3Nob3Vs
ZEJlKCJyZXN1bHRBcnJheVsxMF0uaSIsICInaXRlbSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJh
eVsxMF0uaXRlbSIsICJuYW1lZE5vZGVNYXAuaXRlbSIpOworCisvLyBIVE1MRm9ybUVsZW1lbnQK
K3ZhciBodG1sRm9ybUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnZm9y
bScpWzBdOworcmVzdWx0QXJyYXkgPSBpdGVyYXRlTGlzdChodG1sRm9ybUVsZW1lbnQpOworc2hv
dWxkQmUoInJlc3VsdEFycmF5Lmxlbmd0aCIsICIxMTMiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJh
eVswXS5pIiwgIicwJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzBdLml0ZW0iLCAiZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NlbGVjdCcpWzBdIik7CitzaG91bGRCZSgicmVzdWx0
QXJyYXlbMV0uaSIsICInMSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsxXS5pdGVtIiwgImRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKVsxXSIpOworc2hvdWxkQmUoInJl
c3VsdEFycmF5WzJdLmkiLCAiJzInIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMl0uaXRlbSIs
ICJkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2VsZWN0JylbMl0iKTsKK3Nob3VsZEJl
KCJyZXN1bHRBcnJheVszXS5pIiwgIidtZXRob2QnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlb
M10uaXRlbSIsICJodG1sRm9ybUVsZW1lbnQubWV0aG9kIik7CitkZWJ1ZygiLi4uZWxsaWRlZCB0
aGUgcmVtYWluaW5nIDEwOSIpOworCisvLyBIVE1MU2VsZWN0RWxlbWVudAordmFyIGh0bWxTZWxl
Y3RFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NlbGVjdCcpWzBdOwor
cmVzdWx0QXJyYXkgPSBpdGVyYXRlTGlzdChodG1sU2VsZWN0RWxlbWVudCk7CitzaG91bGRCZSgi
cmVzdWx0QXJyYXkubGVuZ3RoIiwgIjExNyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzBdLmki
LCAiJzAnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMF0uaXRlbSIsICJkb2N1bWVudC5nZXRF
bGVtZW50c0J5VGFnTmFtZSgnb3B0aW9uJylbMF0iKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsx
XS5pIiwgIicxJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAiZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoJ29wdGlvbicpWzFdIik7CitzaG91bGRCZSgicmVzdWx0QXJy
YXlbMl0uaSIsICInMiciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pdGVtIiwgImRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdvcHRpb24nKVsyXSIpOworc2hvdWxkQmUoInJlc3Vs
dEFycmF5WzNdLmkiLCAiJ2Rpc2FibGVkJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzNdLml0
ZW0iLCAiaHRtbFNlbGVjdEVsZW1lbnQuZGlzYWJsZWQiKTsKK2RlYnVnKCIuLi5lbGxpZGVkIHRo
ZSByZW1haW5pbmcgMTEzIik7CisKKy8vIFN0eWxlU2hlZXRMaXN0Cit2YXIgc3R5bGVTaGVldExp
c3QgPSBkb2N1bWVudC5zdHlsZVNoZWV0czsKK3Jlc3VsdEFycmF5ID0gaXRlcmF0ZUxpc3Qoc3R5
bGVTaGVldExpc3QpOworc2hvdWxkQmUoInJlc3VsdEFycmF5Lmxlbmd0aCIsICI1Iik7CitzaG91
bGRCZSgicmVzdWx0QXJyYXlbMF0uaSIsICInMCciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsw
XS5pdGVtIiwgInN0eWxlU2hlZXRMaXN0Lml0ZW0oMCkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJh
eVsxXS5pIiwgIicxJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAic3R5bGVT
aGVldExpc3QuaXRlbSgxKSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzJdLmkiLCAiJzInIik7
CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMl0uaXRlbSIsICJzdHlsZVNoZWV0TGlzdC5pdGVtKDIp
Iik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbM10uaSIsICInbGVuZ3RoJyIpOworc2hvdWxkQmUo
InJlc3VsdEFycmF5WzNdLml0ZW0iLCAic3R5bGVTaGVldExpc3QubGVuZ3RoIik7CitzaG91bGRC
ZSgicmVzdWx0QXJyYXlbNF0uaSIsICInaXRlbSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs0
XS5pdGVtIiwgInN0eWxlU2hlZXRMaXN0Lml0ZW0iKTsKKworLy8gQ1NTUnVsZUxpc3QKK3ZhciBj
c3NSdWxlTGlzdCA9IGRvY3VtZW50LnN0eWxlU2hlZXRzWzFdLmNzc1J1bGVzOworcmVzdWx0QXJy
YXkgPSBpdGVyYXRlTGlzdChjc3NSdWxlTGlzdCk7CitzaG91bGRCZSgicmVzdWx0QXJyYXkubGVu
Z3RoIiwgIjUiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVswXS5pIiwgIicwJyIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzBdLml0ZW0iLCAiY3NzUnVsZUxpc3QuaXRlbSgwKSIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzFdLmkiLCAiJzEnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMV0u
aXRlbSIsICJjc3NSdWxlTGlzdC5pdGVtKDEpIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMl0u
aSIsICInMiciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pdGVtIiwgImNzc1J1bGVMaXN0
Lml0ZW0oMikiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVszXS5pIiwgIidsZW5ndGgnIik7Citz
aG91bGRCZSgicmVzdWx0QXJyYXlbM10uaXRlbSIsICJjc3NSdWxlTGlzdC5sZW5ndGgiKTsKK3No
b3VsZEJlKCJyZXN1bHRBcnJheVs0XS5pIiwgIidpdGVtJyIpOworc2hvdWxkQmUoInJlc3VsdEFy
cmF5WzRdLml0ZW0iLCAiY3NzUnVsZUxpc3QuaXRlbSIpOworCisvLyBDU1NTdHlsZURlY2xhcmF0
aW9uCisvL2RlYnVnKGVzY2FwZUhUTUwoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3N0
eWxlJykpKTsKK3ZhciBjc3NTdHlsZURlY2xhcmF0aW9uID0gZG9jdW1lbnQuc3R5bGVTaGVldHNb
MV0uY3NzUnVsZXNbMF0uc3R5bGU7CityZXN1bHRBcnJheSA9IGl0ZXJhdGVMaXN0KGNzc1N0eWxl
RGVjbGFyYXRpb24pOworc2hvdWxkQmUoInJlc3VsdEFycmF5Lmxlbmd0aCIsICIxNCIpOworc2hv
dWxkQmUoInJlc3VsdEFycmF5WzBdLmkiLCAiJzAnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlb
MF0uaXRlbSIsICJjc3NTdHlsZURlY2xhcmF0aW9uLml0ZW0oMCkiKTsKK3Nob3VsZEJlKCJyZXN1
bHRBcnJheVsxXS5pIiwgIicxJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAi
Y3NzU3R5bGVEZWNsYXJhdGlvbi5pdGVtKDEpIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbMl0u
aSIsICInMiciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pdGVtIiwgImNzc1N0eWxlRGVj
bGFyYXRpb24uaXRlbSgyKSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzNdLmkiLCAiJ2xlbmd0
aCciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVszXS5pdGVtIiwgImNzc1N0eWxlRGVjbGFyYXRp
b24ubGVuZ3RoIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNF0uaSIsICInY3NzVGV4dCciKTsK
K3Nob3VsZEJlKCJyZXN1bHRBcnJheVs0XS5pdGVtIiwgImNzc1N0eWxlRGVjbGFyYXRpb24uY3Nz
VGV4dCIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzVdLmkiLCAiJ3BhcmVudFJ1bGUnIik7Citz
aG91bGRCZSgicmVzdWx0QXJyYXlbNV0uaXRlbSIsICJjc3NTdHlsZURlY2xhcmF0aW9uLnBhcmVu
dFJ1bGUiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs2XS5pIiwgIidyZW1vdmVQcm9wZXJ0eSci
KTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs2XS5pdGVtIiwgImNzc1N0eWxlRGVjbGFyYXRpb24u
cmVtb3ZlUHJvcGVydHkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs3XS5pIiwgIidnZXRQcm9w
ZXJ0eVByaW9yaXR5JyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzddLml0ZW0iLCAiY3NzU3R5
bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVByaW9yaXR5Iik7CitzaG91bGRCZSgicmVzdWx0QXJy
YXlbOF0uaSIsICInZ2V0UHJvcGVydHlWYWx1ZSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs4
XS5pdGVtIiwgImNzc1N0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzldLmkiLCAiJ2dldFByb3BlcnR5U2hvcnRoYW5kJyIpOworc2hvdWxk
QmUoInJlc3VsdEFycmF5WzldLml0ZW0iLCAiY3NzU3R5bGVEZWNsYXJhdGlvbi5nZXRQcm9wZXJ0
eVNob3J0aGFuZCIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzEwXS5pIiwgIidnZXRQcm9wZXJ0
eUNTU1ZhbHVlJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzEwXS5pdGVtIiwgImNzc1N0eWxl
RGVjbGFyYXRpb24uZ2V0UHJvcGVydHlDU1NWYWx1ZSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5
WzExXS5pIiwgIidpc1Byb3BlcnR5SW1wbGljaXQnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlb
MTFdLml0ZW0iLCAiY3NzU3R5bGVEZWNsYXJhdGlvbi5pc1Byb3BlcnR5SW1wbGljaXQiKTsKK3No
b3VsZEJlKCJyZXN1bHRBcnJheVsxMl0uaSIsICInaXRlbSciKTsKK3Nob3VsZEJlKCJyZXN1bHRB
cnJheVsxMl0uaXRlbSIsICJjc3NTdHlsZURlY2xhcmF0aW9uLml0ZW0iKTsKK3Nob3VsZEJlKCJy
ZXN1bHRBcnJheVsxM10uaSIsICInc2V0UHJvcGVydHknIik7CitzaG91bGRCZSgicmVzdWx0QXJy
YXlbMTNdLml0ZW0iLCAiY3NzU3R5bGVEZWNsYXJhdGlvbi5zZXRQcm9wZXJ0eSIpOworCisvLyBD
U1NWYWx1ZUxpc3QKK3ZhciBjc3NWYWx1ZUxpc3QgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShk
b2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnb2wnKVswXSkuZ2V0UHJvcGVydHlDU1NWYWx1
ZSgnYm9yZGVyLXNwYWNpbmcnKTsKK3Jlc3VsdEFycmF5ID0gaXRlcmF0ZUxpc3QoY3NzVmFsdWVM
aXN0KTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheS5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJy
ZXN1bHRBcnJheVswXS5pIiwgIicwJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzBdLml0ZW0i
LCAiY3NzVmFsdWVMaXN0Lml0ZW0oMCkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsxXS5pIiwg
IicxJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAiY3NzVmFsdWVMaXN0Lml0
ZW0oMSkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pIiwgIidsZW5ndGgnIik7CitzaG91
bGRCZSgicmVzdWx0QXJyYXlbMl0uaXRlbSIsICJjc3NWYWx1ZUxpc3QubGVuZ3RoIik7CitzaG91
bGRCZSgicmVzdWx0QXJyYXlbM10uaSIsICInY3NzVGV4dCciKTsKK3Nob3VsZEJlKCJyZXN1bHRB
cnJheVszXS5pdGVtIiwgImNzc1ZhbHVlTGlzdC5jc3NUZXh0Iik7CitzaG91bGRCZSgicmVzdWx0
QXJyYXlbNF0uaSIsICInY3NzVmFsdWVUeXBlJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzRd
Lml0ZW0iLCAiY3NzVmFsdWVMaXN0LmNzc1ZhbHVlVHlwZSIpOworc2hvdWxkQmUoInJlc3VsdEFy
cmF5WzVdLmkiLCAiJ2l0ZW0nIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNV0uaXRlbSIsICJj
c3NWYWx1ZUxpc3QuaXRlbSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzZdLmkiLCAiJ0NTU19D
VVNUT00nIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNl0uaXRlbSIsICJjc3NWYWx1ZUxpc3Qu
Q1NTX0NVU1RPTSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzddLmkiLCAiJ0NTU19QUklNSVRJ
VkVfVkFMVUUnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbN10uaXRlbSIsICJjc3NWYWx1ZUxp
c3QuQ1NTX1BSSU1JVElWRV9WQUxVRSIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzhdLmkiLCAi
J0NTU19JTkhFUklUJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzhdLml0ZW0iLCAiY3NzVmFs
dWVMaXN0LkNTU19JTkhFUklUIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbOV0uaSIsICInQ1NT
X1ZBTFVFX0xJU1QnIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbOV0uaXRlbSIsICJjc3NWYWx1
ZUxpc3QuQ1NTX1ZBTFVFX0xJU1QiKTsKKworLy8gTWVkaWFMaXN0Cit2YXIgbWVkaWFMaXN0ID0g
ZG9jdW1lbnQuc3R5bGVTaGVldHNbMl0uY3NzUnVsZXNbMF0ubWVkaWE7CityZXN1bHRBcnJheSA9
IGl0ZXJhdGVMaXN0KG1lZGlhTGlzdCk7CitzaG91bGRCZSgicmVzdWx0QXJyYXkubGVuZ3RoIiwg
IjgiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVswXS5pIiwgIicwJyIpOworc2hvdWxkQmUoInJl
c3VsdEFycmF5WzBdLml0ZW0iLCAibWVkaWFMaXN0Lml0ZW0oMCkiKTsKK3Nob3VsZEJlKCJyZXN1
bHRBcnJheVsxXS5pIiwgIicxJyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzFdLml0ZW0iLCAi
bWVkaWFMaXN0Lml0ZW0oMSkiKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVsyXS5pIiwgIicyJyIp
Oworc2hvdWxkQmUoInJlc3VsdEFycmF5WzJdLml0ZW0iLCAibWVkaWFMaXN0Lml0ZW0oMikiKTsK
K3Nob3VsZEJlKCJyZXN1bHRBcnJheVszXS5pIiwgIidsZW5ndGgnIik7CitzaG91bGRCZSgicmVz
dWx0QXJyYXlbM10uaXRlbSIsICJtZWRpYUxpc3QubGVuZ3RoIik7CitzaG91bGRCZSgicmVzdWx0
QXJyYXlbNF0uaSIsICInbWVkaWFUZXh0JyIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzRdLml0
ZW0iLCAibWVkaWFMaXN0Lm1lZGlhVGV4dCIpOworc2hvdWxkQmUoInJlc3VsdEFycmF5WzVdLmki
LCAiJ2FwcGVuZE1lZGl1bSciKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs1XS5pdGVtIiwgIm1l
ZGlhTGlzdC5hcHBlbmRNZWRpdW0iKTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs2XS5pIiwgIidk
ZWxldGVNZWRpdW0nIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbNl0uaXRlbSIsICJtZWRpYUxp
c3QuZGVsZXRlTWVkaXVtIik7CitzaG91bGRCZSgicmVzdWx0QXJyYXlbN10uaSIsICInaXRlbSci
KTsKK3Nob3VsZEJlKCJyZXN1bHRBcnJheVs3XS5pdGVtIiwgIm1lZGlhTGlzdC5pdGVtIik7CisK
K2RlYnVnKCIiKTsKKworZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0ZXN0aW5nR3JvdW5kKTsK
KwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cg==
</data>
<flag name="review"
          id="8279"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>