<?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>33352</bug_id>
          
          <creation_ts>2010-01-07 15:57:31 -0800</creation_ts>
          <short_desc>Passing array that is too large to set method of WebGLArrays does not throw an exception</short_desc>
          <delta_ts>2010-01-08 17:03:10 -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>WebGL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Marrin">cmarrin</reporter>
          <assigned_to name="Kenneth Russell">kbr</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>oliver</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>178425</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2010-01-07 15:57:31 -0800</bug_when>
    <thetext>The spec says it should but:

    var array = new WebGLFloatArray([1,2]);
    array.set([3, 4, 5]);

sets the array to [ 3, 4 ], rather than throwing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178453</commentid>
    <comment_count>1</comment_count>
      <attachid>46099</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-01-07 17:18:42 -0800</bug_when>
    <thetext>Created attachment 46099
Patch

Added needed range checks to JSC and V8 custom bindings. Expanded preexisting test suite for WebGLArrays and updated its expected results. Tested in WebKit and Chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178458</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-07 17:25:09 -0800</bug_when>
    <thetext>Attachment 46099 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/bindings/js/JSWebGLArrayHelper.h:35:  Alphabetical sorting problem.  [build/include_order] [4]
WebCore/bindings/js/JSWebGLArrayHelper.h:52:  One line control clauses should not use braces.  [whitespace/braces] [4]
WebCore/bindings/v8/custom/V8WebGLArrayCustom.h:179:  One line control clauses should not use braces.  [whitespace/braces] [4]
WebCore/bindings/v8/custom/V8WebGLArrayCustom.h:182:  One line control clauses should not use braces.  [whitespace/braces] [4]
Total errors found: 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178461</commentid>
    <comment_count>3</comment_count>
      <attachid>46101</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-01-07 17:36:27 -0800</bug_when>
    <thetext>Created attachment 46101
Revised patch

Fixed style errors in previous patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178465</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-07 17:41:14 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 46101 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178885</commentid>
    <comment_count>5</comment_count>
      <attachid>46101</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-08 17:03:02 -0800</bug_when>
    <thetext>Comment on attachment 46101
Revised patch

Clearing flags on attachment: 46101

Committed r53026: &lt;http://trac.webkit.org/changeset/53026&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>178886</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-01-08 17:03:10 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46099</attachid>
            <date>2010-01-07 17:18:42 -0800</date>
            <delta_ts>2010-01-07 17:36:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>arrays.patch</filename>
            <type>text/plain</type>
            <size>12493</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1Mjk2MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDEtMDcgIEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBh
c3NpbmcgYXJyYXkgdGhhdCBpcyB0b28gbGFyZ2UgdG8gc2V0IG1ldGhvZCBvZiBXZWJHTEFycmF5
cyBkb2VzIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMzUyCisKKyAgICAgICAgQWRkZWQgbmVlZGVkIHJhbmdl
IGNoZWNrcyB0byBKU0MgYW5kIFY4IGN1c3RvbSBiaW5kaW5ncy4gRXhwYW5kZWQKKyAgICAgICAg
cHJlZXhpc3RpbmcgdGVzdCBzdWl0ZSBmb3IgV2ViR0xBcnJheXMgYW5kIHVwZGF0ZWQgaXRzIGV4
cGVjdGVkCisgICAgICAgIHJlc3VsdHMuIFRlc3RlZCBpbiBXZWJLaXQgYW5kIENocm9taXVtLgor
CisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRz
Lmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV2ViR0xBcnJheUhlbHBlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6c2V0V2ViR0xBcnJheUZyb21BcnJheSk6CisgICAgICAgICogYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4V2ViR0xBcnJheUN1c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6c2V0
V2ViR0xBcnJheUZyb21BcnJheSk6CisKIDIwMTAtMDEtMDcgIEdlb2ZmcmV5IEdhcmVuICA8Z2dh
cmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDog
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dlYkdMQXJyYXlIZWxwZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2ViR0xBcnJheUhlbHBlci5oCShyZXZpc2lvbiA1Mjk1MikK
KysrIFdlYkNvcmUvYmluZGluZ3MvanMvSlNXZWJHTEFycmF5SGVscGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTMyLDYgKzMyLDggQEAKICNpbmNsdWRlIDxydW50aW1lL0Vycm9yLmg+CiAjaW5jbHVk
ZSA8cnVudGltZS9KU09iamVjdC5oPgogI2luY2x1ZGUgPHJ1bnRpbWUvSlNWYWx1ZS5oPgorI2lu
Y2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCkBAIC00NSwxMSArNDcsMTUgQEAgSlNDOjpKU1ZhbHVlIHNldFdl
YkdMQXJyYXlGcm9tQXJyYXkoSlNDOgogICAgICAgICBpZiAoYXJncy5zaXplKCkgPT0gMikKICAg
ICAgICAgICAgIG9mZnNldCA9IGFyZ3MuYXQoMSkudG9JbnQzMihleGVjKTsKICAgICAgICAgaW50
IGxlbmd0aCA9IGFycmF5LT5nZXQoZXhlYywgSlNDOjpJZGVudGlmaWVyKGV4ZWMsICJsZW5ndGgi
KSkudG9JbnQzMihleGVjKTsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkr
KykgewotICAgICAgICAgICAgSlNDOjpKU1ZhbHVlIHYgPSBhcnJheS0+Z2V0KGV4ZWMsIGkpOwot
ICAgICAgICAgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICAgICAgICAgIHJl
dHVybiBKU0M6OmpzVW5kZWZpbmVkKCk7Ci0gICAgICAgICAgICB3ZWJHTEFycmF5LT5zZXQoaSAr
IG9mZnNldCwgdi50b051bWJlcihleGVjKSk7CisgICAgICAgIGlmIChvZmZzZXQgKyBsZW5ndGgg
PiB3ZWJHTEFycmF5LT5sZW5ndGgoKSkgeworICAgICAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGV4
ZWMsIElOREVYX1NJWkVfRVJSKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGZvciAo
aW50IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgICAgICAgICBKU0M6OkpTVmFs
dWUgdiA9IGFycmF5LT5nZXQoZXhlYywgaSk7CisgICAgICAgICAgICAgICAgaWYgKGV4ZWMtPmhh
ZEV4Y2VwdGlvbigpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNDOjpqc1VuZGVmaW5l
ZCgpOworICAgICAgICAgICAgICAgIHdlYkdMQXJyYXktPnNldChpICsgb2Zmc2V0LCB2LnRvTnVt
YmVyKGV4ZWMpKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIHJldHVybiBK
U0M6OmpzVW5kZWZpbmVkKCk7CkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFdl
YkdMQXJyYXlDdXN0b20uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOFdlYkdMQXJyYXlDdXN0b20uaAkocmV2aXNpb24gNTI5NTIpCisrKyBXZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOFdlYkdMQXJyYXlDdXN0b20uaAkod29ya2luZyBjb3B5KQpAQCAtMTc0
LDggKzE3NCwxMiBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc2V0V2ViR0xBcnJheUZyb21BCiAg
ICAgICAgIGlmIChhcmdzLkxlbmd0aCgpID09IDIpCiAgICAgICAgICAgICBvZmZzZXQgPSB0b0lu
dDMyKGFyZ3NbMV0pOwogICAgICAgICB1aW50MzJfdCBsZW5ndGggPSB0b0ludDMyKGFycmF5LT5H
ZXQodjg6OlN0cmluZzo6TmV3KCJsZW5ndGgiKSkpOwotICAgICAgICBmb3IgKHVpbnQzMl90IGkg
PSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIHdlYkdMQXJyYXktPnNldChvZmZz
ZXQgKyBpLCBhcnJheS0+R2V0KHY4OjpJbnRlZ2VyOjpOZXcoaSkpLT5OdW1iZXJWYWx1ZSgpKTsK
KyAgICAgICAgaWYgKG9mZnNldCArIGxlbmd0aCA+IHdlYkdMQXJyYXktPmxlbmd0aCgpKSB7Cisg
ICAgICAgICAgICBWOFByb3h5OjpzZXRET01FeGNlcHRpb24oSU5ERVhfU0laRV9FUlIpOworICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgZm9yICh1aW50MzJfdCBpID0gMDsgaSA8IGxlbmd0
aDsgaSsrKSB7CisgICAgICAgICAgICAgICAgd2ViR0xBcnJheS0+c2V0KG9mZnNldCArIGksIGFy
cmF5LT5HZXQodjg6OkludGVnZXI6Ok5ldyhpKSktPk51bWJlclZhbHVlKCkpOworICAgICAgICAg
ICAgfQogICAgICAgICB9CiAgICAgfQogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1Mjk2MykKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEw
LTAxLTA3ICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQYXNzaW5nIGFycmF5IHRoYXQgaXMg
dG9vIGxhcmdlIHRvIHNldCBtZXRob2Qgb2YgV2ViR0xBcnJheXMgZG9lcyBub3QgdGhyb3cgYW4g
ZXhjZXB0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMzM1MgorCisgICAgICAgIEFkZGVkIG5lZWRlZCByYW5nZSBjaGVja3MgdG8gSlNDIGFuZCBW
OCBjdXN0b20gYmluZGluZ3MuIEV4cGFuZGVkCisgICAgICAgIHByZWV4aXN0aW5nIHRlc3Qgc3Vp
dGUgZm9yIFdlYkdMQXJyYXlzIGFuZCB1cGRhdGVkIGl0cyBleHBlY3RlZAorICAgICAgICByZXN1
bHRzLiBUZXN0ZWQgaW4gV2ViS2l0IGFuZCBDaHJvbWl1bS4KKworICAgICAgICAqIGZhc3QvY2Fu
dmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktc2V0LW91dC1vZi1ib3VuZHMuaHRtbDog
QWRkZWQuCisgICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktdW5pdC10ZXN0cy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktdW5pdC10ZXN0cy5o
dG1sOgorCiAyMDEwLTAxLTA3ICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0u
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERpcmsgU2NodWx6ZS4KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRzLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9hcnJheS1zZXQt
b3V0LW9mLWJvdW5kcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9m
YXN0L2NhbnZhcy93ZWJnbC9hcnJheS1zZXQtb3V0LW9mLWJvdW5kcy1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMzAgQEAKK1ZlcmlmaWVzIHRoYXQgYXR0ZW1wdGluZyB0byBz
ZXQgb3V0LW9mLWJvdW5kcyBlbGVtZW50cyBvZiBhIFdlYkdMQXJyYXkgZnJvbSBhIEphdmFTY3Jp
cHQgYXJyYXkgdGhyb3dzIGFuIGV4Y2VwdGlvbgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKK1JlZ3Jlc3Npb24gdGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTMzMzUyIDogUGFzc2luZyBhcnJheSB0aGF0IGlzIHRvbyBsYXJnZSB0byBzZXQgbWV0
aG9kIG9mIFdlYkdMQXJyYXlzIGRvZXMgbm90IHRocm93IGFuIGV4Y2VwdGlvbgorVGVzdGluZyBX
ZWJHTEJ5dGVBcnJheQorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgd2ViR0xB
cnJheS5zZXQoWzQsIDUsIDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJS
OiBET00gRXhjZXB0aW9uIDEuCitUZXN0aW5nIFdlYkdMVW5zaWduZWRCeXRlQXJyYXkKK1BBU1Mg
d2ViR0xBcnJheS5zZXQoWzQsIDVdLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJ
WkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitQQVNTIHdlYkdMQXJyYXkuc2V0KFs0LCA1LCA2XSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJTkRFWF9TSVpFX0VSUjogRE9NIEV4Y2VwdGlvbiAxLgor
VGVzdGluZyBXZWJHTFNob3J0QXJyYXkKK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQsIDVdLCAxKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitQ
QVNTIHdlYkdMQXJyYXkuc2V0KFs0LCA1LCA2XSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJTkRF
WF9TSVpFX0VSUjogRE9NIEV4Y2VwdGlvbiAxLgorVGVzdGluZyBXZWJHTFVuc2lnbmVkU2hvcnRB
cnJheQorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgd2ViR0xBcnJheS5zZXQo
WzQsIDUsIDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhj
ZXB0aW9uIDEuCitUZXN0aW5nIFdlYkdMSW50QXJyYXkKK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQs
IDVdLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0
aW9uIDEuCitQQVNTIHdlYkdMQXJyYXkuc2V0KFs0LCA1LCA2XSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBJTkRFWF9TSVpFX0VSUjogRE9NIEV4Y2VwdGlvbiAxLgorVGVzdGluZyBXZWJHTFVuc2ln
bmVkSW50QXJyYXkKK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQsIDVdLCAxKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitQQVNTIHdlYkdMQXJy
YXkuc2V0KFs0LCA1LCA2XSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJTkRFWF9TSVpFX0VSUjog
RE9NIEV4Y2VwdGlvbiAxLgorVGVzdGluZyBXZWJHTEZsb2F0QXJyYXkKK1BBU1Mgd2ViR0xBcnJh
eS5zZXQoWzQsIDVdLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBE
T00gRXhjZXB0aW9uIDEuCitQQVNTIHdlYkdMQXJyYXkuc2V0KFs0LCA1LCA2XSkgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBJTkRFWF9TSVpFX0VSUjogRE9NIEV4Y2VwdGlvbiAxLgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRzLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktc2V0LW91dC1vZi1i
b3VuZHMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmds
L2FycmF5LXNldC1vdXQtb2YtYm91bmRzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDIg
QEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyIvPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L3dlYmdsLXRlc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNj
cmlwdGlvbiI+PC9kaXY+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKwor
ZGVzY3JpcHRpb24oIlZlcmlmaWVzIHRoYXQgYXR0ZW1wdGluZyB0byBzZXQgb3V0LW9mLWJvdW5k
cyBlbGVtZW50cyBvZiBhIFdlYkdMQXJyYXkgZnJvbSBhIEphdmFTY3JpcHQgYXJyYXkgdGhyb3dz
IGFuIGV4Y2VwdGlvbiIpOworCitkZWJ1ZygnUmVncmVzc2lvbiB0ZXN0IGZvciA8YSBocmVmPSJo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMzNTIiPmh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzM1MjwvYT4gOiA8Y29kZT5QYXNzaW5nIGFy
cmF5IHRoYXQgaXMgdG9vIGxhcmdlIHRvIHNldCBtZXRob2Qgb2YgV2ViR0xBcnJheXMgZG9lcyBu
b3QgdGhyb3cgYW4gZXhjZXB0aW9uPC9jb2RlPicpOworCisvLyBHbG9iYWwgc2NvcGUgc28gc2hv
dWxkVGhyb3cgY2FuIHNlZSBpdAordmFyIHdlYkdMQXJyYXk7CisKK2Z1bmN0aW9uIG5lZ2F0aXZl
VGVzdFNldCh0eXBlTmFtZSkgeworICAgIHZhciB0eXBlID0gd2luZG93W3R5cGVOYW1lXTsKKyAg
ICB3ZWJHTEFycmF5ID0gbmV3IHR5cGUoWzIsIDNdKTsKKyAgICBkZWJ1ZygnVGVzdGluZyAnICsg
dHlwZU5hbWUpOworICAgIHNob3VsZFRocm93KCJ3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIik7
CisgICAgc2hvdWxkVGhyb3coIndlYkdMQXJyYXkuc2V0KFs0LCA1LCA2XSkiKTsKK30KKworbmVn
YXRpdmVUZXN0U2V0KCJXZWJHTEJ5dGVBcnJheSIpOworbmVnYXRpdmVUZXN0U2V0KCJXZWJHTFVu
c2lnbmVkQnl0ZUFycmF5Iik7CituZWdhdGl2ZVRlc3RTZXQoIldlYkdMU2hvcnRBcnJheSIpOwor
bmVnYXRpdmVUZXN0U2V0KCJXZWJHTFVuc2lnbmVkU2hvcnRBcnJheSIpOworbmVnYXRpdmVUZXN0
U2V0KCJXZWJHTEludEFycmF5Iik7CituZWdhdGl2ZVRlc3RTZXQoIldlYkdMVW5zaWduZWRJbnRB
cnJheSIpOworbmVnYXRpdmVUZXN0U2V0KCJXZWJHTEZsb2F0QXJyYXkiKTsKKworc3VjY2Vzc2Z1
bGx5UGFyc2VkID0gdHJ1ZTsKKworPC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5LXVuaXQtdGVzdHMtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5
LXVuaXQtdGVzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA1Mjk1MikKKysrIExheW91dFRlc3Rz
L2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5LXVuaXQtdGVzdHMtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xMCw2ICsxMCw3IEBAIFBBU1MgdGVzdCBXZWJHTEJ5dGVBcnJheSBPZmZzZXRz
QW5kU2l6ZXMKIFBBU1MgdGVzdCBXZWJHTEJ5dGVBcnJheSBTZXRGcm9tV2ViR0xBcnJheQogUEFT
UyBuZWdhdGl2ZVRlc3QgV2ViR0xCeXRlQXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgdGVz
dCBXZWJHTEJ5dGVBcnJheSBTZXRGcm9tQXJyYXkKK1BBU1MgbmVnYXRpdmVUZXN0IFdlYkdMQnl0
ZUFycmF5IFNldEZyb21BcnJheQogUEFTUyB0ZXN0IFdlYkdMQnl0ZUFycmF5IFNsaWNlCiBQQVNT
IG5lZ2F0aXZlVGVzdCBXZWJHTEJ5dGVBcnJheSBTbGljZQogUEFTUyB0ZXN0IFdlYkdMQnl0ZUFy
cmF5IEJvdW5kYXJ5Q29uZGl0aW9ucygtMTI4LCAtMTI4LCAxMjcsIDEyNykKQEAgLTIxLDYgKzIy
LDcgQEAgUEFTUyB0ZXN0IFdlYkdMRmxvYXRBcnJheSBPZmZzZXRzQW5kU2l6ZQogUEFTUyB0ZXN0
IFdlYkdMRmxvYXRBcnJheSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyBuZWdhdGl2ZVRlc3QgV2Vi
R0xGbG9hdEFycmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIHRlc3QgV2ViR0xGbG9hdEFycmF5
IFNldEZyb21BcnJheQorUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xGbG9hdEFycmF5IFNldEZyb21B
cnJheQogUEFTUyB0ZXN0IFdlYkdMRmxvYXRBcnJheSBTbGljZQogUEFTUyBuZWdhdGl2ZVRlc3Qg
V2ViR0xGbG9hdEFycmF5IFNsaWNlCiBQQVNTIHRlc3QgV2ViR0xGbG9hdEFycmF5IEJvdW5kYXJ5
Q29uZGl0aW9ucygtNTAwLCAtNTAwLCA1MDAsIDUwMCkKQEAgLTMyLDYgKzM0LDcgQEAgUEFTUyB0
ZXN0IFdlYkdMSW50QXJyYXkgT2Zmc2V0c0FuZFNpemVzCiBQQVNTIHRlc3QgV2ViR0xJbnRBcnJh
eSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xJbnRBcnJheSBTZXRG
cm9tV2ViR0xBcnJheQogUEFTUyB0ZXN0IFdlYkdMSW50QXJyYXkgU2V0RnJvbUFycmF5CitQQVNT
IG5lZ2F0aXZlVGVzdCBXZWJHTEludEFycmF5IFNldEZyb21BcnJheQogUEFTUyB0ZXN0IFdlYkdM
SW50QXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMSW50QXJyYXkgU2xpY2UKIFBB
U1MgdGVzdCBXZWJHTEludEFycmF5IEJvdW5kYXJ5Q29uZGl0aW9ucygtMjE0NzQ4MzY0OCwgLTIx
NDc0ODM2NDgsIDIxNDc0ODM2NDcsIDIxNDc0ODM2NDcpCkBAIC00Myw2ICs0Niw3IEBAIFBBU1Mg
dGVzdCBXZWJHTFNob3J0QXJyYXkgT2Zmc2V0c0FuZFNpemUKIFBBU1MgdGVzdCBXZWJHTFNob3J0
QXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMU2hvcnRBcnJh
eSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyB0ZXN0IFdlYkdMU2hvcnRBcnJheSBTZXRGcm9tQXJy
YXkKK1BBU1MgbmVnYXRpdmVUZXN0IFdlYkdMU2hvcnRBcnJheSBTZXRGcm9tQXJyYXkKIFBBU1Mg
dGVzdCBXZWJHTFNob3J0QXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMU2hvcnRB
cnJheSBTbGljZQogUEFTUyB0ZXN0IFdlYkdMU2hvcnRBcnJheSBCb3VuZGFyeUNvbmRpdGlvbnMo
LTMyNzY4LCAtMzI3NjgsIDMyNzY3LCAzMjc2NykKQEAgLTU0LDYgKzU4LDcgQEAgUEFTUyB0ZXN0
IFdlYkdMVW5zaWduZWRCeXRlQXJyYXkgT2Zmc2V0cwogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRC
eXRlQXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMVW5zaWdu
ZWRCeXRlQXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgdGVzdCBXZWJHTFVuc2lnbmVkQnl0
ZUFycmF5IFNldEZyb21BcnJheQorUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xVbnNpZ25lZEJ5dGVB
cnJheSBTZXRGcm9tQXJyYXkKIFBBU1MgdGVzdCBXZWJHTFVuc2lnbmVkQnl0ZUFycmF5IFNsaWNl
CiBQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTFVuc2lnbmVkQnl0ZUFycmF5IFNsaWNlCiBQQVNTIHRl
c3QgV2ViR0xVbnNpZ25lZEJ5dGVBcnJheSBCb3VuZGFyeUNvbmRpdGlvbnMoMCwgMCwgMjU1LCAy
NTUpCkBAIC02NSw2ICs3MCw3IEBAIFBBU1MgdGVzdCBXZWJHTFVuc2lnbmVkSW50QXJyYXkgT2Zm
c2V0c0EKIFBBU1MgdGVzdCBXZWJHTFVuc2lnbmVkSW50QXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkK
IFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBTZXRGcm9tV2ViR0xBcnJh
eQogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBTZXRGcm9tQXJyYXkKK1BBU1MgbmVn
YXRpdmVUZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBTZXRGcm9tQXJyYXkKIFBBU1MgdGVzdCBX
ZWJHTFVuc2lnbmVkSW50QXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMVW5zaWdu
ZWRJbnRBcnJheSBTbGljZQogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBCb3VuZGFy
eUNvbmRpdGlvbnMoMCwgMCwgNDI5NDk2NzI5NSwgNDI5NDk2NzI5NSkKQEAgLTc2LDYgKzgyLDcg
QEAgUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRTaG9ydEFycmF5IE9mZnNldAogUEFTUyB0ZXN0IFdl
YkdMVW5zaWduZWRTaG9ydEFycmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIG5lZ2F0aXZlVGVz
dCBXZWJHTFVuc2lnbmVkU2hvcnRBcnJheSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyB0ZXN0IFdl
YkdMVW5zaWduZWRTaG9ydEFycmF5IFNldEZyb21BcnJheQorUEFTUyBuZWdhdGl2ZVRlc3QgV2Vi
R0xVbnNpZ25lZFNob3J0QXJyYXkgU2V0RnJvbUFycmF5CiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25l
ZFNob3J0QXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMVW5zaWduZWRTaG9ydEFy
cmF5IFNsaWNlCiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25lZFNob3J0QXJyYXkgQm91bmRhcnlDb25k
aXRpb25zKDAsIDAsIDY1NTM1LCA2NTUzNSkKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvY2FudmFz
L3dlYmdsL2FycmF5LXVuaXQtdGVzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2NhbnZhcy93ZWJnbC9hcnJheS11bml0LXRlc3RzLmh0bWwJKHJldmlzaW9uIDUyOTUyKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktdW5pdC10ZXN0cy5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiw3IEBAIGZ1bmN0aW9uIGZhaWwoc3RyKSB7CiAgIGlm
IChzdHIpCiAgICAgZXhjID0gY3VycmVudGx5UnVubmluZyArICc6ICcgKyBzdHI7CiAgIGVsc2UK
LSAgICBleGMgPSBzdHI7CisgICAgZXhjID0gY3VycmVudGx5UnVubmluZzsKICAgdGVzdEZhaWxl
ZChleGMpOwogfQogCkBAIC0yODQsNiArMjg0LDI4IEBAIGZ1bmN0aW9uIHRlc3RTZXRGcm9tQXJy
YXkodHlwZSwgbmFtZSkgewogICB9CiB9CiAKK2Z1bmN0aW9uIG5lZ2F0aXZlVGVzdFNldEZyb21B
cnJheSh0eXBlLCBuYW1lKSB7CisgIHJ1bm5pbmcoJ25lZ2F0aXZlVGVzdCAnICsgbmFtZSArICcg
U2V0RnJvbUFycmF5Jyk7CisgIHRyeSB7CisgICAgdmFyIGFycmF5ID0gbmV3IHR5cGUoWzIsIDNd
KTsKKyAgICB0cnkgeworICAgICAgYXJyYXkuc2V0KFs0LCA1XSwgMSk7CisgICAgICBmYWlsKCk7
CisgICAgICByZXR1cm47CisgICAgfSBjYXRjaCAoZSkgeworICAgIH0KKyAgICB0cnkgeworICAg
ICAgYXJyYXkuc2V0KFs0LCA1LCA2XSk7CisgICAgICBmYWlsKCk7CisgICAgICByZXR1cm47Cisg
ICAgfSBjYXRjaCAoZSkgeworICAgIH0KKyAgICBwYXNzKCk7CisgIH0gY2F0Y2ggKGUpIHsKKyAg
ICBmYWlsKGUpOworICB9Cit9CisKIGZ1bmN0aW9uIHRlc3RTbGljZSh0eXBlLCBuYW1lKSB7CiAg
IHJ1bm5pbmcoJ3Rlc3QgJyArIG5hbWUgKyAnIFNsaWNlJyk7CiAgIHRyeSB7CkBAIC00MzAsNiAr
NDUyLDcgQEAgZnVuY3Rpb24gcnVuVGVzdHMoKSB7CiAgICAgdGVzdFNldEZyb21XZWJHTEFycmF5
KHR5cGUsIG5hbWUpOwogICAgIG5lZ2F0aXZlVGVzdFNldEZyb21XZWJHTEFycmF5KHR5cGUsIG5h
bWUpOwogICAgIHRlc3RTZXRGcm9tQXJyYXkodHlwZSwgbmFtZSk7CisgICAgbmVnYXRpdmVUZXN0
U2V0RnJvbUFycmF5KHR5cGUsIG5hbWUpOwogICAgIHRlc3RTbGljZSh0eXBlLCBuYW1lKTsKICAg
ICBuZWdhdGl2ZVRlc3RTbGljZSh0eXBlLCBuYW1lKTsKICAgICB0ZXN0Qm91bmRhcnlDb25kaXRp
b25zKHR5cGUsCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46101</attachid>
            <date>2010-01-07 17:36:27 -0800</date>
            <delta_ts>2010-01-08 17:03:01 -0800</delta_ts>
            <desc>Revised patch</desc>
            <filename>arrays.patch</filename>
            <type>text/plain</type>
            <size>12537</size>
            <attacher name="Kenneth Russell">kbr</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1Mjk2MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDEtMDcgIEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBh
c3NpbmcgYXJyYXkgdGhhdCBpcyB0b28gbGFyZ2UgdG8gc2V0IG1ldGhvZCBvZiBXZWJHTEFycmF5
cyBkb2VzIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMzUyCisKKyAgICAgICAgQWRkZWQgbmVlZGVkIHJhbmdl
IGNoZWNrcyB0byBKU0MgYW5kIFY4IGN1c3RvbSBiaW5kaW5ncy4gRXhwYW5kZWQKKyAgICAgICAg
cHJlZXhpc3RpbmcgdGVzdCBzdWl0ZSBmb3IgV2ViR0xBcnJheXMgYW5kIHVwZGF0ZWQgaXRzIGV4
cGVjdGVkCisgICAgICAgIHJlc3VsdHMuIFRlc3RlZCBpbiBXZWJLaXQgYW5kIENocm9taXVtLgor
CisgICAgICAgIFRlc3Q6IGZhc3QvY2FudmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRz
Lmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTV2ViR0xBcnJheUhlbHBlci5oOgorICAg
ICAgICAoV2ViQ29yZTo6c2V0V2ViR0xBcnJheUZyb21BcnJheSk6CisgICAgICAgICogYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4V2ViR0xBcnJheUN1c3RvbS5oOgorICAgICAgICAoV2ViQ29yZTo6c2V0
V2ViR0xBcnJheUZyb21BcnJheSk6CisKIDIwMTAtMDEtMDcgIEdlb2ZmcmV5IEdhcmVuICA8Z2dh
cmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDog
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU1dlYkdMQXJyYXlIZWxwZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTV2ViR0xBcnJheUhlbHBlci5oCShyZXZpc2lvbiA1Mjk1MikK
KysrIFdlYkNvcmUvYmluZGluZ3MvanMvSlNXZWJHTEFycmF5SGVscGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI3LDYgKzI3LDggQEAKICNpZm5kZWYgSlNXZWJHTEFycmF5SGVscGVyX2gKICNkZWZp
bmUgSlNXZWJHTEFycmF5SGVscGVyX2gKIAorI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNp
bmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlIDxpbnRlcnByZXRlci9DYWxsRnJhbWUu
aD4KICNpbmNsdWRlIDxydW50aW1lL0FyZ0xpc3QuaD4KICNpbmNsdWRlIDxydW50aW1lL0Vycm9y
Lmg+CkBAIC00NSwxMSArNDcsMTUgQEAgSlNDOjpKU1ZhbHVlIHNldFdlYkdMQXJyYXlGcm9tQXJy
YXkoSlNDOgogICAgICAgICBpZiAoYXJncy5zaXplKCkgPT0gMikKICAgICAgICAgICAgIG9mZnNl
dCA9IGFyZ3MuYXQoMSkudG9JbnQzMihleGVjKTsKICAgICAgICAgaW50IGxlbmd0aCA9IGFycmF5
LT5nZXQoZXhlYywgSlNDOjpJZGVudGlmaWVyKGV4ZWMsICJsZW5ndGgiKSkudG9JbnQzMihleGVj
KTsKLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewotICAgICAgICAg
ICAgSlNDOjpKU1ZhbHVlIHYgPSBhcnJheS0+Z2V0KGV4ZWMsIGkpOwotICAgICAgICAgICAgaWYg
KGV4ZWMtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICAgICAgICAgIHJldHVybiBKU0M6OmpzVW5k
ZWZpbmVkKCk7Ci0gICAgICAgICAgICB3ZWJHTEFycmF5LT5zZXQoaSArIG9mZnNldCwgdi50b051
bWJlcihleGVjKSk7CisgICAgICAgIGlmIChvZmZzZXQgKyBsZW5ndGggPiB3ZWJHTEFycmF5LT5s
ZW5ndGgoKSkKKyAgICAgICAgICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBJTkRFWF9TSVpFX0VS
Uik7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5n
dGg7IGkrKykgeworICAgICAgICAgICAgICAgIEpTQzo6SlNWYWx1ZSB2ID0gYXJyYXktPmdldChl
eGVjLCBpKTsKKyAgICAgICAgICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBKU0M6OmpzVW5kZWZpbmVkKCk7CisgICAgICAgICAgICAg
ICAgd2ViR0xBcnJheS0+c2V0KGkgKyBvZmZzZXQsIHYudG9OdW1iZXIoZXhlYykpOworICAgICAg
ICAgICAgfQogICAgICAgICB9CiAKICAgICAgICAgcmV0dXJuIEpTQzo6anNVbmRlZmluZWQoKTsK
SW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2ViR0xBcnJheUN1c3RvbS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2ViR0xBcnJheUN1c3Rv
bS5oCShyZXZpc2lvbiA1Mjk1MikKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2Vi
R0xBcnJheUN1c3RvbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNzQsOSArMTc0LDExIEBAIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBzZXRXZWJHTEFycmF5RnJvbUEKICAgICAgICAgaWYgKGFyZ3MuTGVu
Z3RoKCkgPT0gMikKICAgICAgICAgICAgIG9mZnNldCA9IHRvSW50MzIoYXJnc1sxXSk7CiAgICAg
ICAgIHVpbnQzMl90IGxlbmd0aCA9IHRvSW50MzIoYXJyYXktPkdldCh2ODo6U3RyaW5nOjpOZXco
Imxlbmd0aCIpKSk7Ci0gICAgICAgIGZvciAodWludDMyX3QgaSA9IDA7IGkgPCBsZW5ndGg7IGkr
KykgewotICAgICAgICAgICAgd2ViR0xBcnJheS0+c2V0KG9mZnNldCArIGksIGFycmF5LT5HZXQo
djg6OkludGVnZXI6Ok5ldyhpKSktPk51bWJlclZhbHVlKCkpOwotICAgICAgICB9CisgICAgICAg
IGlmIChvZmZzZXQgKyBsZW5ndGggPiB3ZWJHTEFycmF5LT5sZW5ndGgoKSkKKyAgICAgICAgICAg
IFY4UHJveHk6OnNldERPTUV4Y2VwdGlvbihJTkRFWF9TSVpFX0VSUik7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIGZvciAodWludDMyX3QgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykKKyAgICAg
ICAgICAgICAgICB3ZWJHTEFycmF5LT5zZXQob2Zmc2V0ICsgaSwgYXJyYXktPkdldCh2ODo6SW50
ZWdlcjo6TmV3KGkpKS0+TnVtYmVyVmFsdWUoKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIHY4OjpV
bmRlZmluZWQoKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyOTYzKQorKysgTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDEtMDcgIEtlbm5l
dGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFBhc3NpbmcgYXJyYXkgdGhhdCBpcyB0b28gbGFyZ2UgdG8g
c2V0IG1ldGhvZCBvZiBXZWJHTEFycmF5cyBkb2VzIG5vdCB0aHJvdyBhbiBleGNlcHRpb24KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMzUyCisKKyAg
ICAgICAgQWRkZWQgbmVlZGVkIHJhbmdlIGNoZWNrcyB0byBKU0MgYW5kIFY4IGN1c3RvbSBiaW5k
aW5ncy4gRXhwYW5kZWQKKyAgICAgICAgcHJlZXhpc3RpbmcgdGVzdCBzdWl0ZSBmb3IgV2ViR0xB
cnJheXMgYW5kIHVwZGF0ZWQgaXRzIGV4cGVjdGVkCisgICAgICAgIHJlc3VsdHMuIFRlc3RlZCBp
biBXZWJLaXQgYW5kIENocm9taXVtLgorCisgICAgICAgICogZmFzdC9jYW52YXMvd2ViZ2wvYXJy
YXktc2V0LW91dC1vZi1ib3VuZHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2NhbnZhcy93ZWJnbC9hcnJheS1zZXQtb3V0LW9mLWJvdW5kcy5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9hcnJheS11bml0LXRlc3RzLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9hcnJheS11bml0LXRlc3RzLmh0bWw6CisKIDIwMTAt
MDEtMDcgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1bHplLgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvd2ViZ2wvYXJyYXktc2V0LW91dC1vZi1ib3VuZHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dlYmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRz
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dl
YmdsL2FycmF5LXNldC1vdXQtb2YtYm91bmRzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwzMCBAQAorVmVyaWZpZXMgdGhhdCBhdHRlbXB0aW5nIHRvIHNldCBvdXQtb2YtYm91
bmRzIGVsZW1lbnRzIG9mIGEgV2ViR0xBcnJheSBmcm9tIGEgSmF2YVNjcmlwdCBhcnJheSB0aHJv
d3MgYW4gZXhjZXB0aW9uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUmVncmVzc2lv
biB0ZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMzNTIg
OiBQYXNzaW5nIGFycmF5IHRoYXQgaXMgdG9vIGxhcmdlIHRvIHNldCBtZXRob2Qgb2YgV2ViR0xB
cnJheXMgZG9lcyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uCitUZXN0aW5nIFdlYkdMQnl0ZUFycmF5
CitQQVNTIHdlYkdMQXJyYXkuc2V0KFs0LCA1XSwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJ
TkRFWF9TSVpFX0VSUjogRE9NIEV4Y2VwdGlvbiAxLgorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwg
NSwgNl0pIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRp
b24gMS4KK1Rlc3RpbmcgV2ViR0xVbnNpZ25lZEJ5dGVBcnJheQorUEFTUyB3ZWJHTEFycmF5LnNl
dChbNCwgNV0sIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBF
eGNlcHRpb24gMS4KK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQsIDUsIDZdKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitUZXN0aW5nIFdlYkdM
U2hvcnRBcnJheQorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgd2ViR0xBcnJh
eS5zZXQoWzQsIDUsIDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBE
T00gRXhjZXB0aW9uIDEuCitUZXN0aW5nIFdlYkdMVW5zaWduZWRTaG9ydEFycmF5CitQQVNTIHdl
YkdMQXJyYXkuc2V0KFs0LCA1XSwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBJTkRFWF9TSVpF
X0VSUjogRE9NIEV4Y2VwdGlvbiAxLgorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNSwgNl0pIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1Rl
c3RpbmcgV2ViR0xJbnRBcnJheQorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mg
d2ViR0xBcnJheS5zZXQoWzQsIDUsIDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJ
WkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitUZXN0aW5nIFdlYkdMVW5zaWduZWRJbnRBcnJheQor
UEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0sIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5E
RVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQsIDUs
IDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0aW9u
IDEuCitUZXN0aW5nIFdlYkdMRmxvYXRBcnJheQorUEFTUyB3ZWJHTEFycmF5LnNldChbNCwgNV0s
IDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSU5ERVhfU0laRV9FUlI6IERPTSBFeGNlcHRpb24g
MS4KK1BBU1Mgd2ViR0xBcnJheS5zZXQoWzQsIDUsIDZdKSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IElOREVYX1NJWkVfRVJSOiBET00gRXhjZXB0aW9uIDEuCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52
YXMvd2ViZ2wvYXJyYXktc2V0LW91dC1vZi1ib3VuZHMuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9hcnJheS1zZXQtb3V0LW9mLWJvdW5kcy5odG1sCShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktc2V0LW91
dC1vZi1ib3VuZHMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0MiBAQAorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIi8+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvd2ViZ2wtdGVzdC5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rp
dj4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorCitkZXNjcmlwdGlvbigi
VmVyaWZpZXMgdGhhdCBhdHRlbXB0aW5nIHRvIHNldCBvdXQtb2YtYm91bmRzIGVsZW1lbnRzIG9m
IGEgV2ViR0xBcnJheSBmcm9tIGEgSmF2YVNjcmlwdCBhcnJheSB0aHJvd3MgYW4gZXhjZXB0aW9u
Iik7CisKK2RlYnVnKCdSZWdyZXNzaW9uIHRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMzM1MiI+aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTMzMzUyPC9hPiA6IDxjb2RlPlBhc3NpbmcgYXJyYXkgdGhhdCBpcyB0
b28gbGFyZ2UgdG8gc2V0IG1ldGhvZCBvZiBXZWJHTEFycmF5cyBkb2VzIG5vdCB0aHJvdyBhbiBl
eGNlcHRpb248L2NvZGU+Jyk7CisKKy8vIEdsb2JhbCBzY29wZSBzbyBzaG91bGRUaHJvdyBjYW4g
c2VlIGl0Cit2YXIgd2ViR0xBcnJheTsKKworZnVuY3Rpb24gbmVnYXRpdmVUZXN0U2V0KHR5cGVO
YW1lKSB7CisgICAgdmFyIHR5cGUgPSB3aW5kb3dbdHlwZU5hbWVdOworICAgIHdlYkdMQXJyYXkg
PSBuZXcgdHlwZShbMiwgM10pOworICAgIGRlYnVnKCdUZXN0aW5nICcgKyB0eXBlTmFtZSk7Cisg
ICAgc2hvdWxkVGhyb3coIndlYkdMQXJyYXkuc2V0KFs0LCA1XSwgMSkiKTsKKyAgICBzaG91bGRU
aHJvdygid2ViR0xBcnJheS5zZXQoWzQsIDUsIDZdKSIpOworfQorCituZWdhdGl2ZVRlc3RTZXQo
IldlYkdMQnl0ZUFycmF5Iik7CituZWdhdGl2ZVRlc3RTZXQoIldlYkdMVW5zaWduZWRCeXRlQXJy
YXkiKTsKK25lZ2F0aXZlVGVzdFNldCgiV2ViR0xTaG9ydEFycmF5Iik7CituZWdhdGl2ZVRlc3RT
ZXQoIldlYkdMVW5zaWduZWRTaG9ydEFycmF5Iik7CituZWdhdGl2ZVRlc3RTZXQoIldlYkdMSW50
QXJyYXkiKTsKK25lZ2F0aXZlVGVzdFNldCgiV2ViR0xVbnNpZ25lZEludEFycmF5Iik7CituZWdh
dGl2ZVRlc3RTZXQoIldlYkdMRmxvYXRBcnJheSIpOworCitzdWNjZXNzZnVsbHlQYXJzZWQgPSB0
cnVlOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktdW5pdC10ZXN0cy1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXktdW5pdC10ZXN0cy1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDUyOTUyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMv
d2ViZ2wvYXJyYXktdW5pdC10ZXN0cy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEw
LDYgKzEwLDcgQEAgUEFTUyB0ZXN0IFdlYkdMQnl0ZUFycmF5IE9mZnNldHNBbmRTaXplcwogUEFT
UyB0ZXN0IFdlYkdMQnl0ZUFycmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIG5lZ2F0aXZlVGVz
dCBXZWJHTEJ5dGVBcnJheSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyB0ZXN0IFdlYkdMQnl0ZUFy
cmF5IFNldEZyb21BcnJheQorUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xCeXRlQXJyYXkgU2V0RnJv
bUFycmF5CiBQQVNTIHRlc3QgV2ViR0xCeXRlQXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRpdmVUZXN0
IFdlYkdMQnl0ZUFycmF5IFNsaWNlCiBQQVNTIHRlc3QgV2ViR0xCeXRlQXJyYXkgQm91bmRhcnlD
b25kaXRpb25zKC0xMjgsIC0xMjgsIDEyNywgMTI3KQpAQCAtMjEsNiArMjIsNyBAQCBQQVNTIHRl
c3QgV2ViR0xGbG9hdEFycmF5IE9mZnNldHNBbmRTaXplCiBQQVNTIHRlc3QgV2ViR0xGbG9hdEFy
cmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTEZsb2F0QXJyYXkg
U2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgdGVzdCBXZWJHTEZsb2F0QXJyYXkgU2V0RnJvbUFycmF5
CitQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTEZsb2F0QXJyYXkgU2V0RnJvbUFycmF5CiBQQVNTIHRl
c3QgV2ViR0xGbG9hdEFycmF5IFNsaWNlCiBQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTEZsb2F0QXJy
YXkgU2xpY2UKIFBBU1MgdGVzdCBXZWJHTEZsb2F0QXJyYXkgQm91bmRhcnlDb25kaXRpb25zKC01
MDAsIC01MDAsIDUwMCwgNTAwKQpAQCAtMzIsNiArMzQsNyBAQCBQQVNTIHRlc3QgV2ViR0xJbnRB
cnJheSBPZmZzZXRzQW5kU2l6ZXMKIFBBU1MgdGVzdCBXZWJHTEludEFycmF5IFNldEZyb21XZWJH
TEFycmF5CiBQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTEludEFycmF5IFNldEZyb21XZWJHTEFycmF5
CiBQQVNTIHRlc3QgV2ViR0xJbnRBcnJheSBTZXRGcm9tQXJyYXkKK1BBU1MgbmVnYXRpdmVUZXN0
IFdlYkdMSW50QXJyYXkgU2V0RnJvbUFycmF5CiBQQVNTIHRlc3QgV2ViR0xJbnRBcnJheSBTbGlj
ZQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xJbnRBcnJheSBTbGljZQogUEFTUyB0ZXN0IFdlYkdM
SW50QXJyYXkgQm91bmRhcnlDb25kaXRpb25zKC0yMTQ3NDgzNjQ4LCAtMjE0NzQ4MzY0OCwgMjE0
NzQ4MzY0NywgMjE0NzQ4MzY0NykKQEAgLTQzLDYgKzQ2LDcgQEAgUEFTUyB0ZXN0IFdlYkdMU2hv
cnRBcnJheSBPZmZzZXRzQW5kU2l6ZQogUEFTUyB0ZXN0IFdlYkdMU2hvcnRBcnJheSBTZXRGcm9t
V2ViR0xBcnJheQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xTaG9ydEFycmF5IFNldEZyb21XZWJH
TEFycmF5CiBQQVNTIHRlc3QgV2ViR0xTaG9ydEFycmF5IFNldEZyb21BcnJheQorUEFTUyBuZWdh
dGl2ZVRlc3QgV2ViR0xTaG9ydEFycmF5IFNldEZyb21BcnJheQogUEFTUyB0ZXN0IFdlYkdMU2hv
cnRBcnJheSBTbGljZQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xTaG9ydEFycmF5IFNsaWNlCiBQ
QVNTIHRlc3QgV2ViR0xTaG9ydEFycmF5IEJvdW5kYXJ5Q29uZGl0aW9ucygtMzI3NjgsIC0zMjc2
OCwgMzI3NjcsIDMyNzY3KQpAQCAtNTQsNiArNTgsNyBAQCBQQVNTIHRlc3QgV2ViR0xVbnNpZ25l
ZEJ5dGVBcnJheSBPZmZzZXRzCiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25lZEJ5dGVBcnJheSBTZXRG
cm9tV2ViR0xBcnJheQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xVbnNpZ25lZEJ5dGVBcnJheSBT
ZXRGcm9tV2ViR0xBcnJheQogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRCeXRlQXJyYXkgU2V0RnJv
bUFycmF5CitQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTFVuc2lnbmVkQnl0ZUFycmF5IFNldEZyb21B
cnJheQogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRCeXRlQXJyYXkgU2xpY2UKIFBBU1MgbmVnYXRp
dmVUZXN0IFdlYkdMVW5zaWduZWRCeXRlQXJyYXkgU2xpY2UKIFBBU1MgdGVzdCBXZWJHTFVuc2ln
bmVkQnl0ZUFycmF5IEJvdW5kYXJ5Q29uZGl0aW9ucygwLCAwLCAyNTUsIDI1NSkKQEAgLTY1LDYg
KzcwLDcgQEAgUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBPZmZzZXRzQQogUEFTUyB0
ZXN0IFdlYkdMVW5zaWduZWRJbnRBcnJheSBTZXRGcm9tV2ViR0xBcnJheQogUEFTUyBuZWdhdGl2
ZVRlc3QgV2ViR0xVbnNpZ25lZEludEFycmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIHRlc3Qg
V2ViR0xVbnNpZ25lZEludEFycmF5IFNldEZyb21BcnJheQorUEFTUyBuZWdhdGl2ZVRlc3QgV2Vi
R0xVbnNpZ25lZEludEFycmF5IFNldEZyb21BcnJheQogUEFTUyB0ZXN0IFdlYkdMVW5zaWduZWRJ
bnRBcnJheSBTbGljZQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xVbnNpZ25lZEludEFycmF5IFNs
aWNlCiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25lZEludEFycmF5IEJvdW5kYXJ5Q29uZGl0aW9ucygw
LCAwLCA0Mjk0OTY3Mjk1LCA0Mjk0OTY3Mjk1KQpAQCAtNzYsNiArODIsNyBAQCBQQVNTIHRlc3Qg
V2ViR0xVbnNpZ25lZFNob3J0QXJyYXkgT2Zmc2V0CiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25lZFNo
b3J0QXJyYXkgU2V0RnJvbVdlYkdMQXJyYXkKIFBBU1MgbmVnYXRpdmVUZXN0IFdlYkdMVW5zaWdu
ZWRTaG9ydEFycmF5IFNldEZyb21XZWJHTEFycmF5CiBQQVNTIHRlc3QgV2ViR0xVbnNpZ25lZFNo
b3J0QXJyYXkgU2V0RnJvbUFycmF5CitQQVNTIG5lZ2F0aXZlVGVzdCBXZWJHTFVuc2lnbmVkU2hv
cnRBcnJheSBTZXRGcm9tQXJyYXkKIFBBU1MgdGVzdCBXZWJHTFVuc2lnbmVkU2hvcnRBcnJheSBT
bGljZQogUEFTUyBuZWdhdGl2ZVRlc3QgV2ViR0xVbnNpZ25lZFNob3J0QXJyYXkgU2xpY2UKIFBB
U1MgdGVzdCBXZWJHTFVuc2lnbmVkU2hvcnRBcnJheSBCb3VuZGFyeUNvbmRpdGlvbnMoMCwgMCwg
NjU1MzUsIDY1NTM1KQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvYXJyYXkt
dW5pdC10ZXN0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dl
YmdsL2FycmF5LXVuaXQtdGVzdHMuaHRtbAkocmV2aXNpb24gNTI5NTIpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2NhbnZhcy93ZWJnbC9hcnJheS11bml0LXRlc3RzLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTMyLDcgKzMyLDcgQEAgZnVuY3Rpb24gZmFpbChzdHIpIHsKICAgaWYgKHN0cikKICAgICBl
eGMgPSBjdXJyZW50bHlSdW5uaW5nICsgJzogJyArIHN0cjsKICAgZWxzZQotICAgIGV4YyA9IHN0
cjsKKyAgICBleGMgPSBjdXJyZW50bHlSdW5uaW5nOwogICB0ZXN0RmFpbGVkKGV4Yyk7CiB9CiAK
QEAgLTI4NCw2ICsyODQsMjggQEAgZnVuY3Rpb24gdGVzdFNldEZyb21BcnJheSh0eXBlLCBuYW1l
KSB7CiAgIH0KIH0KIAorZnVuY3Rpb24gbmVnYXRpdmVUZXN0U2V0RnJvbUFycmF5KHR5cGUsIG5h
bWUpIHsKKyAgcnVubmluZygnbmVnYXRpdmVUZXN0ICcgKyBuYW1lICsgJyBTZXRGcm9tQXJyYXkn
KTsKKyAgdHJ5IHsKKyAgICB2YXIgYXJyYXkgPSBuZXcgdHlwZShbMiwgM10pOworICAgIHRyeSB7
CisgICAgICBhcnJheS5zZXQoWzQsIDVdLCAxKTsKKyAgICAgIGZhaWwoKTsKKyAgICAgIHJldHVy
bjsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgfQorICAgIHRyeSB7CisgICAgICBhcnJheS5zZXQo
WzQsIDUsIDZdKTsKKyAgICAgIGZhaWwoKTsKKyAgICAgIHJldHVybjsKKyAgICB9IGNhdGNoIChl
KSB7CisgICAgfQorICAgIHBhc3MoKTsKKyAgfSBjYXRjaCAoZSkgeworICAgIGZhaWwoZSk7Cisg
IH0KK30KKwogZnVuY3Rpb24gdGVzdFNsaWNlKHR5cGUsIG5hbWUpIHsKICAgcnVubmluZygndGVz
dCAnICsgbmFtZSArICcgU2xpY2UnKTsKICAgdHJ5IHsKQEAgLTQzMCw2ICs0NTIsNyBAQCBmdW5j
dGlvbiBydW5UZXN0cygpIHsKICAgICB0ZXN0U2V0RnJvbVdlYkdMQXJyYXkodHlwZSwgbmFtZSk7
CiAgICAgbmVnYXRpdmVUZXN0U2V0RnJvbVdlYkdMQXJyYXkodHlwZSwgbmFtZSk7CiAgICAgdGVz
dFNldEZyb21BcnJheSh0eXBlLCBuYW1lKTsKKyAgICBuZWdhdGl2ZVRlc3RTZXRGcm9tQXJyYXko
dHlwZSwgbmFtZSk7CiAgICAgdGVzdFNsaWNlKHR5cGUsIG5hbWUpOwogICAgIG5lZ2F0aXZlVGVz
dFNsaWNlKHR5cGUsIG5hbWUpOwogICAgIHRlc3RCb3VuZGFyeUNvbmRpdGlvbnModHlwZSwK
</data>

          </attachment>
      

    </bug>

</bugzilla>