<?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>21055</bug_id>
          
          <creation_ts>2008-09-24 05:14:14 -0700</creation_ts>
          <short_desc>not invoked functions</short_desc>
          <delta_ts>2008-11-10 02:05:29 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</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>Trivial</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gabriella Toth">gtoth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>92505</commentid>
    <comment_count>0</comment_count>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-24 05:14:14 -0700</bug_when>
    <thetext>I performed static source code analysis on WebKit and found 6 functions which are not invoked at all, therefore they can be deleted.

The list of functions:
    * start_iter (JavaScriptCore/wtf/AVLTree.h,  line: 168, Lines of Code (LOC) = 49)
    * setStandardAttributes (WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp, line: 72, LOC = 53)
    * scrollTo (WebCore/page/FrameView.cpp, line 565, LOC = 64)
    * canReplaceChild (WebCore/dom/Document.cpp, line 2002, LOC = 84)
    * statementListInitializeVariableAccessStack (JavaScriptCore/kjs/nodes.cpp, line 1103, LOC = 16)
    * callOnMainThreadAndWait (JavaScriptCore/wtf/MainThread.cpp, line 106, LOC = 21)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92506</commentid>
    <comment_count>1</comment_count>
      <attachid>23748</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-24 05:15:27 -0700</bug_when>
    <thetext>Created attachment 23748
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92607</commentid>
    <comment_count>2</comment_count>
      <attachid>23748</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-09-24 15:20:22 -0700</bug_when>
    <thetext>Comment on attachment 23748
proposed patch

Some of these should probably have ifdefs around them (like USE(SVG_FILTERS), but I don&apos;t think all of these should be deleted.  We should address these each with separate patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92687</commentid>
    <comment_count>3</comment_count>
      <attachid>23785</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-25 01:49:14 -0700</bug_when>
    <thetext>Created attachment 23785
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92688</commentid>
    <comment_count>4</comment_count>
      <attachid>23786</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-25 01:49:57 -0700</bug_when>
    <thetext>Created attachment 23786
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92689</commentid>
    <comment_count>5</comment_count>
      <attachid>23787</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-25 01:50:32 -0700</bug_when>
    <thetext>Created attachment 23787
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92691</commentid>
    <comment_count>6</comment_count>
      <attachid>23788</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-25 02:22:35 -0700</bug_when>
    <thetext>Created attachment 23788
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92692</commentid>
    <comment_count>7</comment_count>
      <attachid>23789</attachid>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-09-25 02:47:32 -0700</bug_when>
    <thetext>Created attachment 23789
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92714</commentid>
    <comment_count>8</comment_count>
      <attachid>23789</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-09-25 07:30:32 -0700</bug_when>
    <thetext>Comment on attachment 23789
proposed patch

The callOnMainThreadAndWait function was added only 3 weeks ago and it the ground work for future tasks that will use it. r36056</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>92716</commentid>
    <comment_count>9</comment_count>
      <attachid>23787</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-09-25 07:36:53 -0700</bug_when>
    <thetext>Comment on attachment 23787
proposed patch

The Document::canReplaceChild method is replaces the base-class Node::canReplaceChild version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>93235</commentid>
    <comment_count>10</comment_count>
      <attachid>23788</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-09-29 09:12:05 -0700</bug_when>
    <thetext>Comment on attachment 23788
proposed patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>93369</commentid>
    <comment_count>11</comment_count>
      <attachid>23786</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-09-30 07:48:52 -0700</bug_when>
    <thetext>Comment on attachment 23786
proposed patch

FrameView::scrollTo() has been recently removed by Hyatt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95142</commentid>
    <comment_count>12</comment_count>
      <attachid>23788</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-10-12 19:16:11 -0700</bug_when>
    <thetext>Comment on attachment 23788
proposed patch

Clearing the review flag because this has been landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>95724</commentid>
    <comment_count>13</comment_count>
      <attachid>23785</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-10-17 04:10:11 -0700</bug_when>
    <thetext>Comment on attachment 23785
proposed patch

I don&apos;t think we should remove AVLTree::start_iter just because it isn&apos;t used today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98132</commentid>
    <comment_count>14</comment_count>
    <who name="Gabriella Toth">gtoth</who>
    <bug_when>2008-11-10 02:05:29 -0800</bug_when>
    <thetext>Ok. It can be closed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23748</attachid>
            <date>2008-09-24 05:15:27 -0700</date>
            <delta_ts>2008-09-24 15:20:22 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_notinvokedfunctions</filename>
            <type>text/plain</type>
            <size>15113</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDM2ODQ3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDgtMDktMjQgIEdhYnJpZWxs
YSBUb3RoICA8Z3RvdGhAaW5mLnUtc3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCQorCWRlbGV0ZWQgbm90LWludm9rZWQgZnVuY3Rpb25zLgorCisgICAg
ICAgICoga2pzL25vZGVzLmNwcDoKKyAgICAgICAgKiB3dGYvQVZMVHJlZS5oOgorICAgICAgICAq
IHd0Zi9NYWluVGhyZWFkLmNwcDoKKyAgICAgICAgKiB3dGYvTWFpblRocmVhZC5oOgorCiAyMDA4
LTA5LTI0ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ranMvbm9kZXMuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rlcy5jcHAJKHJldmlzaW9uIDM2
ODQ3KQorKysgSmF2YVNjcmlwdENvcmUva2pzL25vZGVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTEwMCwyMyArMTEwMCw2IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzdGF0ZW1lbnRMaXN0UHVzaEZJ
Rk8KICAgICB9CiB9CiAKLXN0YXRpYyBpbmxpbmUgTm9kZSogc3RhdGVtZW50TGlzdEluaXRpYWxp
emVWYXJpYWJsZUFjY2Vzc1N0YWNrKFN0YXRlbWVudFZlY3RvciYgc3RhdGVtZW50cywgRGVjbGFy
YXRpb25TdGFja3M6Ok5vZGVTdGFjayYgc3RhY2spCi17Ci0gICAgaWYgKHN0YXRlbWVudHMuaXNF
bXB0eSgpKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIFN0YXRlbWVudFZlY3Rvcjo6aXRlcmF0
b3IgaXQgPSBzdGF0ZW1lbnRzLmVuZCgpOwotICAgIFN0YXRlbWVudFZlY3Rvcjo6aXRlcmF0b3Ig
YmVnaW4gPSBzdGF0ZW1lbnRzLmJlZ2luKCk7Ci0gICAgU3RhdGVtZW50VmVjdG9yOjppdGVyYXRv
ciBiZWdpblBsdXNPbmUgPSBiZWdpbiArIDE7Ci0KLSAgICB3aGlsZSAoaXQgIT0gYmVnaW5QbHVz
T25lKSB7Ci0gICAgICAgIC0taXQ7Ci0gICAgICAgIHN0YWNrLmFwcGVuZCgoKml0KS5nZXQoKSk7
Ci0gICAgfQotCi0gICAgcmV0dXJuICgqYmVnaW4pLmdldCgpOwotfQotCiAvLyAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0gQmxvY2tOb2RlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQogCiBCbG9ja05vZGU6OkJsb2NrTm9kZShKU0dsb2JhbERhdGEqIGdsb2JhbERh
dGEsIFNvdXJjZUVsZW1lbnRzKiBjaGlsZHJlbikKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9B
VkxUcmVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL0FWTFRyZWUuaAkocmV2
aXNpb24gMzY4NDcpCisrKyBKYXZhU2NyaXB0Q29yZS93dGYvQVZMVHJlZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xNjUsNTYgKzE2NSw2IEBAIHB1YmxpYzoKICAgICAgICAgLy8gaW52YWxpZC4gICAo
RGVwdGggaXMgemVyby1iYXNlLikKICAgICAgICAgSXRlcmF0b3IoKSB7IGRlcHRoID0gfjBVOyB9
CiAKLSAgICAgICAgdm9pZCBzdGFydF9pdGVyKEFWTFRyZWUgJnRyZWUsIGtleSBrLCBTZWFyY2hU
eXBlIHN0ID0gRVFVQUwpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIE1hc2sgb2YgaGlnaCBi
aXQgaW4gYW4gaW50LgotICAgICAgICAgICAgY29uc3QgaW50IE1BU0tfSElHSF9CSVQgPSAoaW50
KSB+ICgofiAodW5zaWduZWQpIDApID4+IDEpOwotCi0gICAgICAgICAgICAvLyBTYXZlIHRoZSB0
cmVlIHRoYXQgd2UncmUgZ29pbmcgdG8gaXRlcmF0ZSB0aHJvdWdoIGluIGEKLSAgICAgICAgICAg
IC8vIG1lbWJlciB2YXJpYWJsZS4KLSAgICAgICAgICAgIHRyZWVfID0gJnRyZWU7Ci0KLSAgICAg
ICAgICAgIGludCBjbXAsIHRhcmdldF9jbXA7Ci0gICAgICAgICAgICBoYW5kbGUgaCA9IHRyZWVf
LT5hYnMucm9vdDsKLSAgICAgICAgICAgIHVuc2lnbmVkIGQgPSAwOwotCi0gICAgICAgICAgICBk
ZXB0aCA9IH4wVTsKLQotICAgICAgICAgICAgaWYgKGggPT0gbnVsbCgpKQotICAgICAgICAgICAg
ICAvLyBUcmVlIGlzIGVtcHR5LgotICAgICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgICAg
IGlmIChzdCAmIExFU1MpCi0gICAgICAgICAgICAgIC8vIEtleSBjYW4gYmUgZ3JlYXRlciB0aGFu
IGtleSBvZiBzdGFydGluZyBub2RlLgotICAgICAgICAgICAgICB0YXJnZXRfY21wID0gMTsKLSAg
ICAgICAgICAgIGVsc2UgaWYgKHN0ICYgR1JFQVRFUikKLSAgICAgICAgICAgICAgLy8gS2V5IGNh
biBiZSBsZXNzIHRoYW4ga2V5IG9mIHN0YXJ0aW5nIG5vZGUuCi0gICAgICAgICAgICAgIHRhcmdl
dF9jbXAgPSAtMTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgLy8gS2V5IG11c3Qg
YmUgc2FtZSBhcyBrZXkgb2Ygc3RhcnRpbmcgbm9kZS4KLSAgICAgICAgICAgICAgdGFyZ2V0X2Nt
cCA9IDA7Ci0KLSAgICAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgICAgICBjbXAgPSBj
bXBfa19uKGssIGgpOwotICAgICAgICAgICAgICAgIGlmIChjbXAgPT0gMCkgewotICAgICAgICAg
ICAgICAgICAgICBpZiAoc3QgJiBFUVVBTCkgewotICAgICAgICAgICAgICAgICAgICAgICAgLy8g
RXF1YWwgbm9kZSB3YXMgc291Z2h0IGFuZCBmb3VuZCBhcyBzdGFydGluZyBub2RlLgotICAgICAg
ICAgICAgICAgICAgICAgICAgZGVwdGggPSBkOwotICAgICAgICAgICAgICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgY21wID0gLXRh
cmdldF9jbXA7Ci0gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0YXJnZXRfY21wICE9IDApCi0g
ICAgICAgICAgICAgICAgICAgIGlmICghKChjbXAgXiB0YXJnZXRfY21wKSAmIE1BU0tfSElHSF9C
SVQpKQotICAgICAgICAgICAgICAgICAgICAgICAgLy8gY21wIGFuZCB0YXJnZXRfY21wIGFyZSBi
b3RoIG5lZ2F0aXZlIG9yIGJvdGggcG9zaXRpdmUuCi0gICAgICAgICAgICAgICAgICAgICAgICBk
ZXB0aCA9IGQ7Ci0gICAgICAgICAgICAgICAgICAgIGggPSBjbXAgPCAwID8gZ2V0X2x0KGgpIDog
Z2V0X2d0KGgpOwotICAgICAgICAgICAgICAgICAgICBpZiAoaCA9PSBudWxsKCkpCi0gICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgYnJhbmNoW2RdID0g
Y21wID4gMDsKLSAgICAgICAgICAgICAgICAgICAgcGF0aF9oW2QrK10gPSBoOwotICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIH0KLQogICAgICAgICB2b2lkIHN0YXJ0X2l0ZXJfbGVhc3Qo
QVZMVHJlZSAmdHJlZSkKICAgICAgICAgewogICAgICAgICAgICAgdHJlZV8gPSAmdHJlZTsKSW5k
ZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9NYWluVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZh
U2NyaXB0Q29yZS93dGYvTWFpblRocmVhZC5jcHAJKHJldmlzaW9uIDM2ODQ3KQorKysgSmF2YVNj
cmlwdENvcmUvd3RmL01haW5UaHJlYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDMsMjggKzEw
Myw2IEBAIHZvaWQgY2FsbE9uTWFpblRocmVhZChNYWluVGhyZWFkRnVuY3Rpb24KICAgICBzY2hl
ZHVsZURpc3BhdGNoRnVuY3Rpb25zT25NYWluVGhyZWFkKCk7CiB9CiAKLXZvaWQgY2FsbE9uTWFp
blRocmVhZEFuZFdhaXQoTWFpblRocmVhZEZ1bmN0aW9uKiBmdW5jdGlvbiwgdm9pZCogY29udGV4
dCkKLXsKLSAgICBBU1NFUlQoZnVuY3Rpb24pOwotCi0gICAgaWYgKGlzTWFpblRocmVhZCgpKSB7
Ci0gICAgICAgIGZ1bmN0aW9uKGNvbnRleHQpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0g
ICAgVGhyZWFkQ29uZGl0aW9uIHN5bmNGbGFnOwotICAgIE11dGV4IGNvbmRpdGlvbk11dGV4Owot
Ci0gICAgewotICAgICAgICBNdXRleExvY2tlciBsb2NrZXIobWFpblRocmVhZEZ1bmN0aW9uUXVl
dWVNdXRleCgpKTsKLSAgICAgICAgZnVuY3Rpb25RdWV1ZSgpLmFwcGVuZChGdW5jdGlvbldpdGhD
b250ZXh0KGZ1bmN0aW9uLCBjb250ZXh0LCAmc3luY0ZsYWcpKTsKLSAgICAgICAgY29uZGl0aW9u
TXV0ZXgubG9jaygpOwotICAgIH0KLQotICAgIHNjaGVkdWxlRGlzcGF0Y2hGdW5jdGlvbnNPbk1h
aW5UaHJlYWQoKTsKLSAgICBzeW5jRmxhZy53YWl0KGNvbmRpdGlvbk11dGV4KTsKLX0KLQogdm9p
ZCBzZXRNYWluVGhyZWFkQ2FsbGJhY2tzUGF1c2VkKGJvb2wgcGF1c2VkKQogewogICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CkluZGV4OiBKYXZhU2NyaXB0Q29yZS93dGYvTWFpblRocmVhZC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3d0Zi9NYWluVGhyZWFkLmgJKHJldmlzaW9u
IDM2ODQ3KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL01haW5UaHJlYWQuaAkod29ya2luZyBjb3B5
KQpAQCAtMzcsNyArMzcsNiBAQCBjbGFzcyBNdXRleDsKIHR5cGVkZWYgdm9pZCBNYWluVGhyZWFk
RnVuY3Rpb24odm9pZCopOwogCiB2b2lkIGNhbGxPbk1haW5UaHJlYWQoTWFpblRocmVhZEZ1bmN0
aW9uKiwgdm9pZCogY29udGV4dCk7Ci12b2lkIGNhbGxPbk1haW5UaHJlYWRBbmRXYWl0KE1haW5U
aHJlYWRGdW5jdGlvbiosIHZvaWQqIGNvbnRleHQpOwogCiB2b2lkIHNldE1haW5UaHJlYWRDYWxs
YmFja3NQYXVzZWQoYm9vbCBwYXVzZWQpOwogCkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMzY4NDcpCisrKyBXZWJDb3Jl
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDA4LTA5LTI0IEdh
YnJpZWxsYSBUb3RoICA8Z3RvdGhAaW5mLnUtc3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURE
RUQgT1IgQ0hBTkdFRAorCisJCWRlbGV0ZWQgbm90LWludm9rZWQgZnVuY3Rpb25zCisJCQorICAg
ICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAg
ICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6Cisg
ICAgICAgICogc3ZnL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5jcHA6Cisg
ICAgICAgICogc3ZnL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5oOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzOjpjb250
ZXh0RWxlbWVudCk6CisKIDIwMDgtMDktMjMgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4
QHBsZXlvLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbHAgVG9rZXIuIExhbmRlZCBieSBK
YW4gQWxvbnpvLgpJbmRleDogV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkocmV2aXNpb24gMzY4NDcpCisrKyBXZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5OTUsOTEgKzE5OTUsNiBAQCBib29s
IERvY3VtZW50OjpjaGlsZFR5cGVBbGxvd2VkKE5vZGVUeXBlCiAgICAgcmV0dXJuIGZhbHNlOwog
fQogCi1ib29sIERvY3VtZW50OjpjYW5SZXBsYWNlQ2hpbGQoTm9kZSogbmV3Q2hpbGQsIE5vZGUq
IG9sZENoaWxkKQotewotICAgIGlmICghb2xkQ2hpbGQpCi0gICAgICAgIC8vIENvbnRhaW5lck5v
ZGU6OnJlcGxhY2VDaGlsZCB3aWxsIHJhaXNlIGEgTk9UX0ZPVU5EX0VSUi4KLSAgICAgICAgcmV0
dXJuIHRydWU7Ci0KLSAgICBpZiAob2xkQ2hpbGQtPm5vZGVUeXBlKCkgPT0gbmV3Q2hpbGQtPm5v
ZGVUeXBlKCkpCi0gICAgICAgIHJldHVybiB0cnVlOwotCi0gICAgaW50IG51bURvY3R5cGVzID0g
MDsKLSAgICBpbnQgbnVtRWxlbWVudHMgPSAwOwotCi0gICAgLy8gRmlyc3QsIGNoZWNrIGhvdyBt
YW55IGRvY3R5cGVzIGFuZCBlbGVtZW50cyB3ZSBoYXZlLCBub3QgY291bnRpbmcKLSAgICAvLyB0
aGUgY2hpbGQgd2UncmUgYWJvdXQgdG8gcmVtb3ZlLgotICAgIGZvciAoTm9kZSogYyA9IGZpcnN0
Q2hpbGQoKTsgYzsgYyA9IGMtPm5leHRTaWJsaW5nKCkpIHsKLSAgICAgICAgaWYgKGMgPT0gb2xk
Q2hpbGQpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgCi0gICAgICAgIHN3aXRjaCAo
Yy0+bm9kZVR5cGUoKSkgewotICAgICAgICAgICAgY2FzZSBET0NVTUVOVF9UWVBFX05PREU6Ci0g
ICAgICAgICAgICAgICAgbnVtRG9jdHlwZXMrKzsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgICAgIGNhc2UgRUxFTUVOVF9OT0RFOgotICAgICAgICAgICAgICAgIG51bUVsZW1lbnRz
Kys7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBkZWZhdWx0OgotICAgICAg
ICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotICAgIAotICAgIC8vIFRoZW4sIHNl
ZSBob3cgbWFueSBkb2N0eXBlcyBhbmQgZWxlbWVudHMgbWlnaHQgYmUgYWRkZWQgYnkgdGhlIG5l
dyBjaGlsZC4KLSAgICBpZiAobmV3Q2hpbGQtPm5vZGVUeXBlKCkgPT0gRE9DVU1FTlRfRlJBR01F
TlRfTk9ERSkgewotICAgICAgICBmb3IgKE5vZGUqIGMgPSBmaXJzdENoaWxkKCk7IGM7IGMgPSBj
LT5uZXh0U2libGluZygpKSB7Ci0gICAgICAgICAgICBzd2l0Y2ggKGMtPm5vZGVUeXBlKCkpIHsK
LSAgICAgICAgICAgICAgICBjYXNlIEFUVFJJQlVURV9OT0RFOgotICAgICAgICAgICAgICAgIGNh
c2UgQ0RBVEFfU0VDVElPTl9OT0RFOgotICAgICAgICAgICAgICAgIGNhc2UgRE9DVU1FTlRfRlJB
R01FTlRfTk9ERToKLSAgICAgICAgICAgICAgICBjYXNlIERPQ1VNRU5UX05PREU6Ci0gICAgICAg
ICAgICAgICAgY2FzZSBFTlRJVFlfTk9ERToKLSAgICAgICAgICAgICAgICBjYXNlIEVOVElUWV9S
RUZFUkVOQ0VfTk9ERToKLSAgICAgICAgICAgICAgICBjYXNlIE5PVEFUSU9OX05PREU6Ci0gICAg
ICAgICAgICAgICAgY2FzZSBURVhUX05PREU6Ci0gICAgICAgICAgICAgICAgY2FzZSBYUEFUSF9O
QU1FU1BBQ0VfTk9ERToKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICAgICAgICAgIGNhc2UgQ09NTUVOVF9OT0RFOgotICAgICAgICAgICAgICAgIGNhc2UgUFJPQ0VT
U0lOR19JTlNUUlVDVElPTl9OT0RFOgotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAg
ICAgICAgICAgICBjYXNlIERPQ1VNRU5UX1RZUEVfTk9ERToKLSAgICAgICAgICAgICAgICAgICAg
bnVtRG9jdHlwZXMrKzsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAg
ICAgY2FzZSBFTEVNRU5UX05PREU6Ci0gICAgICAgICAgICAgICAgICAgIG51bUVsZW1lbnRzKys7
Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0g
ICAgfSBlbHNlIHsKLSAgICAgICAgc3dpdGNoIChuZXdDaGlsZC0+bm9kZVR5cGUoKSkgewotICAg
ICAgICAgICAgY2FzZSBBVFRSSUJVVEVfTk9ERToKLSAgICAgICAgICAgIGNhc2UgQ0RBVEFfU0VD
VElPTl9OT0RFOgotICAgICAgICAgICAgY2FzZSBET0NVTUVOVF9GUkFHTUVOVF9OT0RFOgotICAg
ICAgICAgICAgY2FzZSBET0NVTUVOVF9OT0RFOgotICAgICAgICAgICAgY2FzZSBFTlRJVFlfTk9E
RToKLSAgICAgICAgICAgIGNhc2UgRU5USVRZX1JFRkVSRU5DRV9OT0RFOgotICAgICAgICAgICAg
Y2FzZSBOT1RBVElPTl9OT0RFOgotICAgICAgICAgICAgY2FzZSBURVhUX05PREU6Ci0gICAgICAg
ICAgICBjYXNlIFhQQVRIX05BTUVTUEFDRV9OT0RFOgotICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICAgICAgICAgIGNhc2UgQ09NTUVOVF9OT0RFOgotICAgICAgICAgICAgY2FzZSBQ
Uk9DRVNTSU5HX0lOU1RSVUNUSU9OX05PREU6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgICAgICAgICBjYXNlIERPQ1VNRU5UX1RZUEVfTk9ERToKLSAgICAgICAgICAgICAgICBu
dW1Eb2N0eXBlcysrOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBF
TEVNRU5UX05PREU6Ci0gICAgICAgICAgICAgICAgbnVtRWxlbWVudHMrKzsKLSAgICAgICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgfSAgICAgICAgICAgICAgICAKLSAgICB9Ci0gICAgICAgIAot
ICAgIGlmIChudW1FbGVtZW50cyA+IDEgfHwgbnVtRG9jdHlwZXMgPiAxKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KIFBhc3NSZWZQdHI8Tm9kZT4g
RG9jdW1lbnQ6OmNsb25lTm9kZShib29sIC8qZGVlcCovKQogewogICAgIC8vIFNwZWMgc2F5cyBj
bG9uaW5nIERvY3VtZW50IG5vZGVzIGlzICJpbXBsZW1lbnRhdGlvbiBkZXBlbmRlbnQiCkluZGV4
OiBXZWJDb3JlL2RvbS9Eb2N1bWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RvY3Vt
ZW50LmgJKHJldmlzaW9uIDM2ODQ3KQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnQuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDczLDggKzQ3Myw2IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgYm9vbCBj
aGlsZFR5cGVBbGxvd2VkKE5vZGVUeXBlKTsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8Tm9kZT4g
Y2xvbmVOb2RlKGJvb2wgZGVlcCk7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgY2FuUmVwbGFjZUNoaWxk
KE5vZGUqIG5ld0NoaWxkLCBOb2RlKiBvbGRDaGlsZCk7CiAgICAgCiAgICAgU3R5bGVTaGVldExp
c3QqIHN0eWxlU2hlZXRzKCk7CiAKSW5kZXg6IFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCShyZXZpc2lvbiAzNjg0NykK
KysrIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NjIsNzEg
KzU2Miw2IEBAIHZvaWQgRnJhbWVWaWV3OjpyZW1vdmVXaWRnZXRUb1VwZGF0ZShSZW4KIC8vCiAv
Ly8vLy8vLy8vLy8vLy8vLwogCi1ib29sIEZyYW1lVmlldzo6c2Nyb2xsVG8oY29uc3QgSW50UmVj
dCYgYm91bmRzKQotewotICAgIGludCB4LCB5LCB4ZSwgeWU7Ci0gICAgeCA9IGJvdW5kcy54KCk7
Ci0gICAgeSA9IGJvdW5kcy55KCk7Ci0gICAgeGUgPSBib3VuZHMucmlnaHQoKSAtIDE7Ci0gICAg
eWUgPSBib3VuZHMuYm90dG9tKCkgLSAxOwotICAgIAotICAgIGludCBkZWx0YXg7Ci0gICAgaW50
IGRlbHRheTsKLQotICAgIGludCBjdXJIZWlnaHQgPSB2aXNpYmxlSGVpZ2h0KCk7Ci0gICAgaW50
IGN1cldpZHRoID0gdmlzaWJsZVdpZHRoKCk7Ci0KLSAgICBpZiAoeWUgLSB5PmN1ckhlaWdodC1k
LT5tX2JvcmRlclkpCi0gICAgICAgIHllID0geSArIGN1ckhlaWdodCAtIGQtPm1fYm9yZGVyWTsK
LQotICAgIGlmICh4ZSAtIHg+Y3VyV2lkdGgtZC0+bV9ib3JkZXJYKQotICAgICAgICB4ZSA9IHgg
KyBjdXJXaWR0aCAtIGQtPm1fYm9yZGVyWDsKLQotICAgIC8vIGlzIHhwb3Mgb2YgdGFyZ2V0IGxl
ZnQgb2YgdGhlIHZpZXcncyBib3JkZXI/Ci0gICAgaWYgKHggPCBjb250ZW50c1goKSArIGQtPm1f
Ym9yZGVyWCkKLSAgICAgICAgZGVsdGF4ID0geCAtIGNvbnRlbnRzWCgpIC0gZC0+bV9ib3JkZXJY
OwotICAgIC8vIGlzIHhwb3Mgb2YgdGFyZ2V0IHJpZ2h0IG9mIHRoZSB2aWV3J3MgcmlnaHQgYm9y
ZGVyPwotICAgIGVsc2UgaWYgKHhlICsgZC0+bV9ib3JkZXJYID4gY29udGVudHNYKCkgKyBjdXJX
aWR0aCkKLSAgICAgICAgZGVsdGF4ID0geGUgKyBkLT5tX2JvcmRlclggLSAoY29udGVudHNYKCkg
KyBjdXJXaWR0aCk7Ci0gICAgZWxzZQotICAgICAgICBkZWx0YXggPSAwOwotCi0gICAgLy8gaXMg
eXBvcyBvZiB0YXJnZXQgYWJvdmUgdXBwZXIgYm9yZGVyPwotICAgIGlmICh5IDwgY29udGVudHNZ
KCkgKyBkLT5tX2JvcmRlclkpCi0gICAgICAgIGRlbHRheSA9IHkgLSBjb250ZW50c1koKSAtIGQt
Pm1fYm9yZGVyWTsKLSAgICAvLyBpcyB5cG9zIG9mIHRhcmdldCBiZWxvdyBsb3dlciBib3JkZXI/
Ci0gICAgZWxzZSBpZiAoeWUgKyBkLT5tX2JvcmRlclkgPiBjb250ZW50c1koKSArIGN1ckhlaWdo
dCkKLSAgICAgICAgZGVsdGF5ID0geWUgKyBkLT5tX2JvcmRlclkgLSAoY29udGVudHNZKCkgKyBj
dXJIZWlnaHQpOwotICAgIGVsc2UKLSAgICAgICAgZGVsdGF5ID0gMDsKLQotICAgIGludCBtYXh4
ID0gY3VyV2lkdGggLSBkLT5tX2JvcmRlclg7Ci0gICAgaW50IG1heHkgPSBjdXJIZWlnaHQgLSBk
LT5tX2JvcmRlclk7Ci0KLSAgICBpbnQgc2Nyb2xsWCA9IGRlbHRheCA+IDAgPyAoZGVsdGF4ID4g
bWF4eCA/IG1heHggOiBkZWx0YXgpIDogZGVsdGF4ID09IDAgPyAwIDogKGRlbHRheCA+IC1tYXh4
ID8gZGVsdGF4IDogLW1heHgpOwotICAgIGludCBzY3JvbGxZID0gZGVsdGF5ID4gMCA/IChkZWx0
YXkgPiBtYXh5ID8gbWF4eSA6IGRlbHRheSkgOiBkZWx0YXkgPT0gMCA/IDAgOiAoZGVsdGF5ID4g
LW1heHkgPyBkZWx0YXkgOiAtbWF4eSk7Ci0KLSAgICBpZiAoY29udGVudHNYKCkgKyBzY3JvbGxY
IDwgMCkKLSAgICAgICAgc2Nyb2xsWCA9IC1jb250ZW50c1goKTsKLSAgICBlbHNlIGlmIChjb250
ZW50c1dpZHRoKCkgLSB2aXNpYmxlV2lkdGgoKSAtIGNvbnRlbnRzWCgpIDwgc2Nyb2xsWCkKLSAg
ICAgICAgc2Nyb2xsWCA9IGNvbnRlbnRzV2lkdGgoKSAtIHZpc2libGVXaWR0aCgpIC0gY29udGVu
dHNYKCk7Ci0KLSAgICBpZiAoY29udGVudHNZKCkgKyBzY3JvbGxZIDwgMCkKLSAgICAgICAgc2Ny
b2xsWSA9IC1jb250ZW50c1koKTsKLSAgICBlbHNlIGlmIChjb250ZW50c0hlaWdodCgpIC0gdmlz
aWJsZUhlaWdodCgpIC0gY29udGVudHNZKCkgPCBzY3JvbGxZKQotICAgICAgICBzY3JvbGxZID0g
Y29udGVudHNIZWlnaHQoKSAtIHZpc2libGVIZWlnaHQoKSAtIGNvbnRlbnRzWSgpOwotCi0gICAg
c2Nyb2xsQnkoc2Nyb2xsWCwgc2Nyb2xsWSk7Ci0KLSAgICAvLyBnZW5lcmF0ZSBhYnMoc2Nyb2xs
LikKLSAgICBpZiAoc2Nyb2xsWCA8IDApCi0gICAgICAgIHNjcm9sbFggPSAtc2Nyb2xsWDsKLSAg
ICBpZiAoc2Nyb2xsWSA8IDApCi0gICAgICAgIHNjcm9sbFkgPSAtc2Nyb2xsWTsKLQotICAgIHJl
dHVybiBzY3JvbGxYICE9IG1heHggJiYgc2Nyb2xsWSAhPSBtYXh5OwotfQotCiB2b2lkIEZyYW1l
Vmlldzo6c2V0TWVkaWFUeXBlKGNvbnN0IFN0cmluZyYgbWVkaWFUeXBlKQogewogICAgIGQtPm1f
bWVkaWFUeXBlID0gbWVkaWFUeXBlOwpJbmRleDogV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAkocmV2aXNpb24gMzY4NDcpCisr
KyBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTE1Nyw4ICsxNTcs
NiBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCBib29sIGlzRnJhbWVWaWV3KCkgY29uc3Q7CiAK
LSAgICBib29sIHNjcm9sbFRvKGNvbnN0IEludFJlY3QmKTsKLQogICAgIGJvb2wgdXNlU2xvd1Jl
cGFpbnRzKCkgY29uc3Q7CiAKICAgICB2b2lkIGFwcGx5T3ZlcmZsb3dUb1ZpZXdwb3J0KFJlbmRl
ck9iamVjdCosIFNjcm9sbGJhck1vZGUmIGhNb2RlLCBTY3JvbGxiYXJNb2RlJiB2TW9kZSk7Cklu
ZGV4OiBXZWJDb3JlL3N2Zy9TVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3ZnL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0
cmlidXRlcy5jcHAJKHJldmlzaW9uIDM2ODQ3KQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyUHJp
bWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjksNjAgKzY5
LDYgQEAgdm9pZCBTVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZQogICAgICAgICBy
ZXR1cm4gU1ZHU3R5bGVkRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUoYXR0cik7CiB9CiAK
LXZvaWQgU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzOjpzZXRTdGFuZGFyZEF0
dHJpYnV0ZXMoU1ZHRmlsdGVyRWZmZWN0KiBmaWx0ZXJFZmZlY3QpIGNvbnN0Ci17Ci0gICAgQVNT
RVJUKGZpbHRlckVmZmVjdCk7Ci0gICAgaWYgKCFmaWx0ZXJFZmZlY3QpCi0gICAgICAgIHJldHVy
bjsKLQotICAgIEFTU0VSVChmaWx0ZXJFZmZlY3QtPmZpbHRlcigpKTsKLQotICAgIGZsb2F0IF94
LCBfeSwgX3dpZHRoLCBfaGVpZ2h0OwotCi0gICAgaWYgKGZpbHRlckVmZmVjdC0+ZmlsdGVyKCkt
PmVmZmVjdEJvdW5kaW5nQm94TW9kZSgpKSB7Ci0gICAgICAgIF94ID0geCgpLnZhbHVlQXNQZXJj
ZW50YWdlKCk7Ci0gICAgICAgIF95ID0geSgpLnZhbHVlQXNQZXJjZW50YWdlKCk7Ci0gICAgICAg
IF93aWR0aCA9IHdpZHRoKCkudmFsdWVBc1BlcmNlbnRhZ2UoKTsKLSAgICAgICAgX2hlaWdodCA9
IGhlaWdodCgpLnZhbHVlQXNQZXJjZW50YWdlKCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8g
V2UgbmVlZCB0byByZXNvbHZlIGFueSBwZXJjZW50YWdlcyBpbiBmaWx0ZXIgcmVjdCBzcGFjZS4K
LSAgICAgICAgaWYgKHgoKS51bml0VHlwZSgpID09IExlbmd0aFR5cGVQZXJjZW50YWdlKSB7Ci0g
ICAgICAgICAgICBmaWx0ZXJFZmZlY3QtPnNldFhCb3VuZGluZ0JveE1vZGUodHJ1ZSk7Ci0gICAg
ICAgICAgICBfeCA9IHgoKS52YWx1ZUFzUGVyY2VudGFnZSgpOwotICAgICAgICB9IGVsc2Ugewot
ICAgICAgICAgICAgZmlsdGVyRWZmZWN0LT5zZXRYQm91bmRpbmdCb3hNb2RlKGZhbHNlKTsKLSAg
ICAgICAgICAgIF94ID0geCgpLnZhbHVlKHRoaXMpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYg
KHkoKS51bml0VHlwZSgpID09IExlbmd0aFR5cGVQZXJjZW50YWdlKSB7Ci0gICAgICAgICAgICBm
aWx0ZXJFZmZlY3QtPnNldFlCb3VuZGluZ0JveE1vZGUodHJ1ZSk7Ci0gICAgICAgICAgICBfeSA9
IHkoKS52YWx1ZUFzUGVyY2VudGFnZSgpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ZmlsdGVyRWZmZWN0LT5zZXRZQm91bmRpbmdCb3hNb2RlKGZhbHNlKTsKLSAgICAgICAgICAgIF95
ID0geSgpLnZhbHVlKHRoaXMpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKHdpZHRoKCkudW5p
dFR5cGUoKSA9PSBMZW5ndGhUeXBlUGVyY2VudGFnZSkgewotICAgICAgICAgICAgZmlsdGVyRWZm
ZWN0LT5zZXRXaWR0aEJvdW5kaW5nQm94TW9kZSh0cnVlKTsKLSAgICAgICAgICAgIF93aWR0aCA9
IHdpZHRoKCkudmFsdWVBc1BlcmNlbnRhZ2UoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICAgIGZpbHRlckVmZmVjdC0+c2V0V2lkdGhCb3VuZGluZ0JveE1vZGUoZmFsc2UpOwotICAgICAg
ICAgICAgX3dpZHRoID0gd2lkdGgoKS52YWx1ZSh0aGlzKTsKLSAgICAgICAgfQotCi0gICAgICAg
IGlmIChoZWlnaHQoKS51bml0VHlwZSgpID09IExlbmd0aFR5cGVQZXJjZW50YWdlKSB7Ci0gICAg
ICAgICAgICBmaWx0ZXJFZmZlY3QtPnNldEhlaWdodEJvdW5kaW5nQm94TW9kZSh0cnVlKTsKLSAg
ICAgICAgICAgIF9oZWlnaHQgPSBoZWlnaHQoKS52YWx1ZUFzUGVyY2VudGFnZSgpOwotICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgZmlsdGVyRWZmZWN0LT5zZXRIZWlnaHRCb3VuZGluZ0Jv
eE1vZGUoZmFsc2UpOwotICAgICAgICAgICAgX2hlaWdodCA9IGhlaWdodCgpLnZhbHVlKHRoaXMp
OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgZmlsdGVyRWZmZWN0LT5zZXRTdWJSZWdpb24oRmxv
YXRSZWN0KF94LCBfeSwgX3dpZHRoLCBfaGVpZ2h0KSk7Ci0gICAgZmlsdGVyRWZmZWN0LT5zZXRS
ZXN1bHQocmVzdWx0KCkpOwotfQotCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUoU1ZHKQpJbmRleDog
V2ViQ29yZS9zdmcvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9zdmcvU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVz
LmgJKHJldmlzaW9uIDM2ODQ3KQorKysgV2ViQ29yZS9zdmcvU1ZHRmlsdGVyUHJpbWl0aXZlU3Rh
bmRhcmRBdHRyaWJ1dGVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDcgKzQ4LDYgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogCiAgICAgcHJvdGVjdGVkOgogICAgICAgICB2aXJ0dWFsIGNvbnN0IFNW
R0VsZW1lbnQqIGNvbnRleHRFbGVtZW50KCkgY29uc3QgeyByZXR1cm4gdGhpczsgfQotICAgICAg
ICB2b2lkIHNldFN0YW5kYXJkQXR0cmlidXRlcyhTVkdGaWx0ZXJFZmZlY3QqKSBjb25zdDsKIAog
ICAgIHByaXZhdGU6CiAgICAgICAgIEFOSU1BVEVEX1BST1BFUlRZX0RFQ0xBUkFUSU9OUyhTVkdG
aWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMsIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5k
YXJkQXR0cmlidXRlc0lkZW50aWZpZXIsIFNWR05hbWVzOjp4QXR0clN0cmluZywgU1ZHTGVuZ3Ro
LCBYLCB4KQo=
</data>
<flag name="review"
          id="10675"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23785</attachid>
            <date>2008-09-25 01:49:14 -0700</date>
            <delta_ts>2008-10-17 04:10:11 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_start_iter</filename>
            <type>text/plain</type>
            <size>2592</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDM2ODg0KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsOSBAQAorMjAwOC0wOS0yNSAgR2FicmllbGxh
IFRvdGggIDxndG90aEBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvQVZMVHJlZS5oOiBkZWxldGVkIG5vdCBpbnZv
a2VkIGZ1bmN0aW9uOiBzdGFydF9pdGVyCisKIDIwMDgtMDktMjQgIEdlb2ZmcmV5IEdhcmVuICA8
Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYWNpZWogU3RhY2hvd2lh
ay4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9BVkxUcmVlLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2
YVNjcmlwdENvcmUvd3RmL0FWTFRyZWUuaAkocmV2aXNpb24gMzY4ODQpCisrKyBKYXZhU2NyaXB0
Q29yZS93dGYvQVZMVHJlZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNjUsNTYgKzE2NSw2IEBAIHB1
YmxpYzoKICAgICAgICAgLy8gaW52YWxpZC4gICAoRGVwdGggaXMgemVyby1iYXNlLikKICAgICAg
ICAgSXRlcmF0b3IoKSB7IGRlcHRoID0gfjBVOyB9CiAKLSAgICAgICAgdm9pZCBzdGFydF9pdGVy
KEFWTFRyZWUgJnRyZWUsIGtleSBrLCBTZWFyY2hUeXBlIHN0ID0gRVFVQUwpCi0gICAgICAgIHsK
LSAgICAgICAgICAgIC8vIE1hc2sgb2YgaGlnaCBiaXQgaW4gYW4gaW50LgotICAgICAgICAgICAg
Y29uc3QgaW50IE1BU0tfSElHSF9CSVQgPSAoaW50KSB+ICgofiAodW5zaWduZWQpIDApID4+IDEp
OwotCi0gICAgICAgICAgICAvLyBTYXZlIHRoZSB0cmVlIHRoYXQgd2UncmUgZ29pbmcgdG8gaXRl
cmF0ZSB0aHJvdWdoIGluIGEKLSAgICAgICAgICAgIC8vIG1lbWJlciB2YXJpYWJsZS4KLSAgICAg
ICAgICAgIHRyZWVfID0gJnRyZWU7Ci0KLSAgICAgICAgICAgIGludCBjbXAsIHRhcmdldF9jbXA7
Ci0gICAgICAgICAgICBoYW5kbGUgaCA9IHRyZWVfLT5hYnMucm9vdDsKLSAgICAgICAgICAgIHVu
c2lnbmVkIGQgPSAwOwotCi0gICAgICAgICAgICBkZXB0aCA9IH4wVTsKLQotICAgICAgICAgICAg
aWYgKGggPT0gbnVsbCgpKQotICAgICAgICAgICAgICAvLyBUcmVlIGlzIGVtcHR5LgotICAgICAg
ICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgICAgIGlmIChzdCAmIExFU1MpCi0gICAgICAgICAg
ICAgIC8vIEtleSBjYW4gYmUgZ3JlYXRlciB0aGFuIGtleSBvZiBzdGFydGluZyBub2RlLgotICAg
ICAgICAgICAgICB0YXJnZXRfY21wID0gMTsKLSAgICAgICAgICAgIGVsc2UgaWYgKHN0ICYgR1JF
QVRFUikKLSAgICAgICAgICAgICAgLy8gS2V5IGNhbiBiZSBsZXNzIHRoYW4ga2V5IG9mIHN0YXJ0
aW5nIG5vZGUuCi0gICAgICAgICAgICAgIHRhcmdldF9jbXAgPSAtMTsKLSAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgLy8gS2V5IG11c3QgYmUgc2FtZSBhcyBrZXkgb2Ygc3RhcnRpbmcg
bm9kZS4KLSAgICAgICAgICAgICAgdGFyZ2V0X2NtcCA9IDA7Ci0KLSAgICAgICAgICAgIGZvciAo
OzspIHsKLSAgICAgICAgICAgICAgICBjbXAgPSBjbXBfa19uKGssIGgpOwotICAgICAgICAgICAg
ICAgIGlmIChjbXAgPT0gMCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoc3QgJiBFUVVBTCkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXF1YWwgbm9kZSB3YXMgc291Z2h0IGFuZCBm
b3VuZCBhcyBzdGFydGluZyBub2RlLgotICAgICAgICAgICAgICAgICAgICAgICAgZGVwdGggPSBk
OwotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAgICAgICAgY21wID0gLXRhcmdldF9jbXA7Ci0gICAgICAgICAgICAgICAg
fSBlbHNlIGlmICh0YXJnZXRfY21wICE9IDApCi0gICAgICAgICAgICAgICAgICAgIGlmICghKChj
bXAgXiB0YXJnZXRfY21wKSAmIE1BU0tfSElHSF9CSVQpKQotICAgICAgICAgICAgICAgICAgICAg
ICAgLy8gY21wIGFuZCB0YXJnZXRfY21wIGFyZSBib3RoIG5lZ2F0aXZlIG9yIGJvdGggcG9zaXRp
dmUuCi0gICAgICAgICAgICAgICAgICAgICAgICBkZXB0aCA9IGQ7Ci0gICAgICAgICAgICAgICAg
ICAgIGggPSBjbXAgPCAwID8gZ2V0X2x0KGgpIDogZ2V0X2d0KGgpOwotICAgICAgICAgICAgICAg
ICAgICBpZiAoaCA9PSBudWxsKCkpCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgICAgICAgICAgICAgYnJhbmNoW2RdID0gY21wID4gMDsKLSAgICAgICAgICAgICAgICAg
ICAgcGF0aF9oW2QrK10gPSBoOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLQog
ICAgICAgICB2b2lkIHN0YXJ0X2l0ZXJfbGVhc3QoQVZMVHJlZSAmdHJlZSkKICAgICAgICAgewog
ICAgICAgICAgICAgdHJlZV8gPSAmdHJlZTsK
</data>
<flag name="review"
          id="10699"
          type_id="1"
          status="-"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23786</attachid>
            <date>2008-09-25 01:49:57 -0700</date>
            <delta_ts>2008-09-30 07:48:52 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_scrollTo</filename>
            <type>text/plain</type>
            <size>3461</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjg4NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMDgtMDktMjUgIEdhYnJpZWxsYSBUb3RoICA8Z3RvdGhAaW5mLnUt
c3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQgT1IgQ0hBTkdFRAorCQkKKwkJZGVsZXRl
ZCBub3QgaW52b2tlZCBmdW5jdGlvbjogc2Nyb2xsVG8gCisKKyAgICAgICAgKiBwYWdlL0ZyYW1l
Vmlldy5jcHA6CisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuaDoKKwogMjAwOC0wOS0yNSAgRGFu
IEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmUg
SHlhdHQuCkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkocmV2aXNpb24gMzY4ODQpCisrKyBXZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTYyLDcxICs1NjIsNiBAQCB2b2lk
IEZyYW1lVmlldzo6cmVtb3ZlV2lkZ2V0VG9VcGRhdGUoUmVuCiAvLwogLy8vLy8vLy8vLy8vLy8v
Ly8KIAotYm9vbCBGcmFtZVZpZXc6OnNjcm9sbFRvKGNvbnN0IEludFJlY3QmIGJvdW5kcykKLXsK
LSAgICBpbnQgeCwgeSwgeGUsIHllOwotICAgIHggPSBib3VuZHMueCgpOwotICAgIHkgPSBib3Vu
ZHMueSgpOwotICAgIHhlID0gYm91bmRzLnJpZ2h0KCkgLSAxOwotICAgIHllID0gYm91bmRzLmJv
dHRvbSgpIC0gMTsKLSAgICAKLSAgICBpbnQgZGVsdGF4OwotICAgIGludCBkZWx0YXk7Ci0KLSAg
ICBpbnQgY3VySGVpZ2h0ID0gdmlzaWJsZUhlaWdodCgpOwotICAgIGludCBjdXJXaWR0aCA9IHZp
c2libGVXaWR0aCgpOwotCi0gICAgaWYgKHllIC0geT5jdXJIZWlnaHQtZC0+bV9ib3JkZXJZKQot
ICAgICAgICB5ZSA9IHkgKyBjdXJIZWlnaHQgLSBkLT5tX2JvcmRlclk7Ci0KLSAgICBpZiAoeGUg
LSB4PmN1cldpZHRoLWQtPm1fYm9yZGVyWCkKLSAgICAgICAgeGUgPSB4ICsgY3VyV2lkdGggLSBk
LT5tX2JvcmRlclg7Ci0KLSAgICAvLyBpcyB4cG9zIG9mIHRhcmdldCBsZWZ0IG9mIHRoZSB2aWV3
J3MgYm9yZGVyPwotICAgIGlmICh4IDwgY29udGVudHNYKCkgKyBkLT5tX2JvcmRlclgpCi0gICAg
ICAgIGRlbHRheCA9IHggLSBjb250ZW50c1goKSAtIGQtPm1fYm9yZGVyWDsKLSAgICAvLyBpcyB4
cG9zIG9mIHRhcmdldCByaWdodCBvZiB0aGUgdmlldydzIHJpZ2h0IGJvcmRlcj8KLSAgICBlbHNl
IGlmICh4ZSArIGQtPm1fYm9yZGVyWCA+IGNvbnRlbnRzWCgpICsgY3VyV2lkdGgpCi0gICAgICAg
IGRlbHRheCA9IHhlICsgZC0+bV9ib3JkZXJYIC0gKGNvbnRlbnRzWCgpICsgY3VyV2lkdGgpOwot
ICAgIGVsc2UKLSAgICAgICAgZGVsdGF4ID0gMDsKLQotICAgIC8vIGlzIHlwb3Mgb2YgdGFyZ2V0
IGFib3ZlIHVwcGVyIGJvcmRlcj8KLSAgICBpZiAoeSA8IGNvbnRlbnRzWSgpICsgZC0+bV9ib3Jk
ZXJZKQotICAgICAgICBkZWx0YXkgPSB5IC0gY29udGVudHNZKCkgLSBkLT5tX2JvcmRlclk7Ci0g
ICAgLy8gaXMgeXBvcyBvZiB0YXJnZXQgYmVsb3cgbG93ZXIgYm9yZGVyPwotICAgIGVsc2UgaWYg
KHllICsgZC0+bV9ib3JkZXJZID4gY29udGVudHNZKCkgKyBjdXJIZWlnaHQpCi0gICAgICAgIGRl
bHRheSA9IHllICsgZC0+bV9ib3JkZXJZIC0gKGNvbnRlbnRzWSgpICsgY3VySGVpZ2h0KTsKLSAg
ICBlbHNlCi0gICAgICAgIGRlbHRheSA9IDA7Ci0KLSAgICBpbnQgbWF4eCA9IGN1cldpZHRoIC0g
ZC0+bV9ib3JkZXJYOwotICAgIGludCBtYXh5ID0gY3VySGVpZ2h0IC0gZC0+bV9ib3JkZXJZOwot
Ci0gICAgaW50IHNjcm9sbFggPSBkZWx0YXggPiAwID8gKGRlbHRheCA+IG1heHggPyBtYXh4IDog
ZGVsdGF4KSA6IGRlbHRheCA9PSAwID8gMCA6IChkZWx0YXggPiAtbWF4eCA/IGRlbHRheCA6IC1t
YXh4KTsKLSAgICBpbnQgc2Nyb2xsWSA9IGRlbHRheSA+IDAgPyAoZGVsdGF5ID4gbWF4eSA/IG1h
eHkgOiBkZWx0YXkpIDogZGVsdGF5ID09IDAgPyAwIDogKGRlbHRheSA+IC1tYXh5ID8gZGVsdGF5
IDogLW1heHkpOwotCi0gICAgaWYgKGNvbnRlbnRzWCgpICsgc2Nyb2xsWCA8IDApCi0gICAgICAg
IHNjcm9sbFggPSAtY29udGVudHNYKCk7Ci0gICAgZWxzZSBpZiAoY29udGVudHNXaWR0aCgpIC0g
dmlzaWJsZVdpZHRoKCkgLSBjb250ZW50c1goKSA8IHNjcm9sbFgpCi0gICAgICAgIHNjcm9sbFgg
PSBjb250ZW50c1dpZHRoKCkgLSB2aXNpYmxlV2lkdGgoKSAtIGNvbnRlbnRzWCgpOwotCi0gICAg
aWYgKGNvbnRlbnRzWSgpICsgc2Nyb2xsWSA8IDApCi0gICAgICAgIHNjcm9sbFkgPSAtY29udGVu
dHNZKCk7Ci0gICAgZWxzZSBpZiAoY29udGVudHNIZWlnaHQoKSAtIHZpc2libGVIZWlnaHQoKSAt
IGNvbnRlbnRzWSgpIDwgc2Nyb2xsWSkKLSAgICAgICAgc2Nyb2xsWSA9IGNvbnRlbnRzSGVpZ2h0
KCkgLSB2aXNpYmxlSGVpZ2h0KCkgLSBjb250ZW50c1koKTsKLQotICAgIHNjcm9sbEJ5KHNjcm9s
bFgsIHNjcm9sbFkpOwotCi0gICAgLy8gZ2VuZXJhdGUgYWJzKHNjcm9sbC4pCi0gICAgaWYgKHNj
cm9sbFggPCAwKQotICAgICAgICBzY3JvbGxYID0gLXNjcm9sbFg7Ci0gICAgaWYgKHNjcm9sbFkg
PCAwKQotICAgICAgICBzY3JvbGxZID0gLXNjcm9sbFk7Ci0KLSAgICByZXR1cm4gc2Nyb2xsWCAh
PSBtYXh4ICYmIHNjcm9sbFkgIT0gbWF4eTsKLX0KLQogdm9pZCBGcmFtZVZpZXc6OnNldE1lZGlh
VHlwZShjb25zdCBTdHJpbmcmIG1lZGlhVHlwZSkKIHsKICAgICBkLT5tX21lZGlhVHlwZSA9IG1l
ZGlhVHlwZTsKSW5kZXg6IFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgJKHJldmlzaW9uIDM2ODg0KQorKysgV2ViQ29yZS9wYWdl
L0ZyYW1lVmlldy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNTcsOCArMTU3LDYgQEAgcHJpdmF0ZToK
IAogICAgIHZpcnR1YWwgYm9vbCBpc0ZyYW1lVmlldygpIGNvbnN0OwogCi0gICAgYm9vbCBzY3Jv
bGxUbyhjb25zdCBJbnRSZWN0Jik7Ci0KICAgICBib29sIHVzZVNsb3dSZXBhaW50cygpIGNvbnN0
OwogCiAgICAgdm9pZCBhcHBseU92ZXJmbG93VG9WaWV3cG9ydChSZW5kZXJPYmplY3QqLCBTY3Jv
bGxiYXJNb2RlJiBoTW9kZSwgU2Nyb2xsYmFyTW9kZSYgdk1vZGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23787</attachid>
            <date>2008-09-25 01:50:32 -0700</date>
            <delta_ts>2008-09-25 07:36:53 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_canReplaceChild</filename>
            <type>text/plain</type>
            <size>4037</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjg4OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMDgtMDktMjUgIEdhYnJpZWxsYSBUb3RoICA8Z3RvdGhAaW5mLnUt
c3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdBUk5JTkc6IE5PIFRFU1QgQ0FTRVMgQURERUQgT1IgQ0hBTkdFRAorCQkKKyAgICAgICAg
ZGVsZXRlZCBub3QgaW52b2tlZCBmdW5jdGlvbjogY2FuUmVwbGFjZUNoaWxkIAorCisgICAgICAg
ICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKwogMjAwOC0w
OS0yNCAgRGF2aWQgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDg0CkluZGV4OiBXZWJDb3JlL2RvbS9E
b2N1bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZp
c2lvbiAzNjg4NCkKKysrIFdlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTk5NSw5MSArMTk5NSw2IEBAIGJvb2wgRG9jdW1lbnQ6OmNoaWxkVHlwZUFsbG93ZWQoTm9k
ZVR5cGUKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWJvb2wgRG9jdW1lbnQ6OmNhblJlcGxhY2VD
aGlsZChOb2RlKiBuZXdDaGlsZCwgTm9kZSogb2xkQ2hpbGQpCi17Ci0gICAgaWYgKCFvbGRDaGls
ZCkKLSAgICAgICAgLy8gQ29udGFpbmVyTm9kZTo6cmVwbGFjZUNoaWxkIHdpbGwgcmFpc2UgYSBO
T1RfRk9VTkRfRVJSLgotICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIGlmIChvbGRDaGlsZC0+
bm9kZVR5cGUoKSA9PSBuZXdDaGlsZC0+bm9kZVR5cGUoKSkKLSAgICAgICAgcmV0dXJuIHRydWU7
Ci0KLSAgICBpbnQgbnVtRG9jdHlwZXMgPSAwOwotICAgIGludCBudW1FbGVtZW50cyA9IDA7Ci0K
LSAgICAvLyBGaXJzdCwgY2hlY2sgaG93IG1hbnkgZG9jdHlwZXMgYW5kIGVsZW1lbnRzIHdlIGhh
dmUsIG5vdCBjb3VudGluZwotICAgIC8vIHRoZSBjaGlsZCB3ZSdyZSBhYm91dCB0byByZW1vdmUu
Ci0gICAgZm9yIChOb2RlKiBjID0gZmlyc3RDaGlsZCgpOyBjOyBjID0gYy0+bmV4dFNpYmxpbmco
KSkgewotICAgICAgICBpZiAoYyA9PSBvbGRDaGlsZCkKLSAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICAKLSAgICAgICAgc3dpdGNoIChjLT5ub2RlVHlwZSgpKSB7Ci0gICAgICAgICAgICBj
YXNlIERPQ1VNRU5UX1RZUEVfTk9ERToKLSAgICAgICAgICAgICAgICBudW1Eb2N0eXBlcysrOwot
ICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBFTEVNRU5UX05PREU6Ci0g
ICAgICAgICAgICAgICAgbnVtRWxlbWVudHMrKzsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAg
ICB9Ci0gICAgCi0gICAgLy8gVGhlbiwgc2VlIGhvdyBtYW55IGRvY3R5cGVzIGFuZCBlbGVtZW50
cyBtaWdodCBiZSBhZGRlZCBieSB0aGUgbmV3IGNoaWxkLgotICAgIGlmIChuZXdDaGlsZC0+bm9k
ZVR5cGUoKSA9PSBET0NVTUVOVF9GUkFHTUVOVF9OT0RFKSB7Ci0gICAgICAgIGZvciAoTm9kZSog
YyA9IGZpcnN0Q2hpbGQoKTsgYzsgYyA9IGMtPm5leHRTaWJsaW5nKCkpIHsKLSAgICAgICAgICAg
IHN3aXRjaCAoYy0+bm9kZVR5cGUoKSkgewotICAgICAgICAgICAgICAgIGNhc2UgQVRUUklCVVRF
X05PREU6Ci0gICAgICAgICAgICAgICAgY2FzZSBDREFUQV9TRUNUSU9OX05PREU6Ci0gICAgICAg
ICAgICAgICAgY2FzZSBET0NVTUVOVF9GUkFHTUVOVF9OT0RFOgotICAgICAgICAgICAgICAgIGNh
c2UgRE9DVU1FTlRfTk9ERToKLSAgICAgICAgICAgICAgICBjYXNlIEVOVElUWV9OT0RFOgotICAg
ICAgICAgICAgICAgIGNhc2UgRU5USVRZX1JFRkVSRU5DRV9OT0RFOgotICAgICAgICAgICAgICAg
IGNhc2UgTk9UQVRJT05fTk9ERToKLSAgICAgICAgICAgICAgICBjYXNlIFRFWFRfTk9ERToKLSAg
ICAgICAgICAgICAgICBjYXNlIFhQQVRIX05BTUVTUEFDRV9OT0RFOgotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICAgICAgY2FzZSBDT01NRU5UX05PREU6Ci0g
ICAgICAgICAgICAgICAgY2FzZSBQUk9DRVNTSU5HX0lOU1RSVUNUSU9OX05PREU6Ci0gICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIGNhc2UgRE9DVU1FTlRfVFlQRV9O
T0RFOgotICAgICAgICAgICAgICAgICAgICBudW1Eb2N0eXBlcysrOwotICAgICAgICAgICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBjYXNlIEVMRU1FTlRfTk9ERToKLSAgICAgICAg
ICAgICAgICAgICAgbnVtRWxlbWVudHMrKzsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICBzd2l0Y2ggKG5l
d0NoaWxkLT5ub2RlVHlwZSgpKSB7Ci0gICAgICAgICAgICBjYXNlIEFUVFJJQlVURV9OT0RFOgot
ICAgICAgICAgICAgY2FzZSBDREFUQV9TRUNUSU9OX05PREU6Ci0gICAgICAgICAgICBjYXNlIERP
Q1VNRU5UX0ZSQUdNRU5UX05PREU6Ci0gICAgICAgICAgICBjYXNlIERPQ1VNRU5UX05PREU6Ci0g
ICAgICAgICAgICBjYXNlIEVOVElUWV9OT0RFOgotICAgICAgICAgICAgY2FzZSBFTlRJVFlfUkVG
RVJFTkNFX05PREU6Ci0gICAgICAgICAgICBjYXNlIE5PVEFUSU9OX05PREU6Ci0gICAgICAgICAg
ICBjYXNlIFRFWFRfTk9ERToKLSAgICAgICAgICAgIGNhc2UgWFBBVEhfTkFNRVNQQUNFX05PREU6
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgY2FzZSBDT01NRU5U
X05PREU6Ci0gICAgICAgICAgICBjYXNlIFBST0NFU1NJTkdfSU5TVFJVQ1RJT05fTk9ERToKLSAg
ICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgICAgIGNhc2UgRE9DVU1FTlRfVFlQ
RV9OT0RFOgotICAgICAgICAgICAgICAgIG51bURvY3R5cGVzKys7Ci0gICAgICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgICAgICBjYXNlIEVMRU1FTlRfTk9ERToKLSAgICAgICAgICAgICAgICBu
dW1FbGVtZW50cysrOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9ICAgICAgICAg
ICAgICAgIAotICAgIH0KLSAgICAgICAgCi0gICAgaWYgKG51bUVsZW1lbnRzID4gMSB8fCBudW1E
b2N0eXBlcyA+IDEpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAKLSAgICByZXR1cm4gdHJ1
ZTsKLX0KLQogUGFzc1JlZlB0cjxOb2RlPiBEb2N1bWVudDo6Y2xvbmVOb2RlKGJvb2wgLypkZWVw
Ki8pCiB7CiAgICAgLy8gU3BlYyBzYXlzIGNsb25pbmcgRG9jdW1lbnQgbm9kZXMgaXMgImltcGxl
bWVudGF0aW9uIGRlcGVuZGVudCIKSW5kZXg6IFdlYkNvcmUvZG9tL0RvY3VtZW50LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9kb20vRG9jdW1lbnQuaAkocmV2aXNpb24gMzY4ODQpCisrKyBXZWJD
b3JlL2RvbS9Eb2N1bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC00NzMsOCArNDczLDYgQEAgcHVi
bGljOgogCiAgICAgdmlydHVhbCBib29sIGNoaWxkVHlwZUFsbG93ZWQoTm9kZVR5cGUpOwogICAg
IHZpcnR1YWwgUGFzc1JlZlB0cjxOb2RlPiBjbG9uZU5vZGUoYm9vbCBkZWVwKTsKLQotICAgIHZp
cnR1YWwgYm9vbCBjYW5SZXBsYWNlQ2hpbGQoTm9kZSogbmV3Q2hpbGQsIE5vZGUqIG9sZENoaWxk
KTsKICAgICAKICAgICBTdHlsZVNoZWV0TGlzdCogc3R5bGVTaGVldHMoKTsKIAo=
</data>
<flag name="review"
          id="10701"
          type_id="1"
          status="-"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23788</attachid>
            <date>2008-09-25 02:22:35 -0700</date>
            <delta_ts>2008-10-12 19:16:11 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_statementListInitializeVariableAccessStack</filename>
            <type>text/plain</type>
            <size>1425</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDM2ODkwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTEgQEAKKzIwMDgtMDktMjUgIEdhYnJpZWxs
YSBUb3RoICA8Z3RvdGhAaW5mLnUtc3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCQkKKwkJZGVsZXRlZCBub3QgaW52b2tlZCBmdW5jdGlvbjogc3RhdGVt
ZW50TGlzdEluaXRpYWxpemVWYXJpYWJsZUFjY2Vzc1N0YWNrCisgICAgICAKKyAgICAgICAgKiBr
anMvbm9kZXMuY3BwOgorCiAyMDA4LTA5LTI0ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqIFN0YWNob3dpYWsuCkluZGV4OiBK
YXZhU2NyaXB0Q29yZS9ranMvbm9kZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3Jl
L2tqcy9ub2Rlcy5jcHAJKHJldmlzaW9uIDM2ODg0KQorKysgSmF2YVNjcmlwdENvcmUva2pzL25v
ZGVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTEwMSwyMyArMTEwMSw2IEBAIHN0YXRpYyBpbmxp
bmUgdm9pZCBzdGF0ZW1lbnRMaXN0UHVzaEZJRk8KICAgICB9CiB9CiAKLXN0YXRpYyBpbmxpbmUg
Tm9kZSogc3RhdGVtZW50TGlzdEluaXRpYWxpemVWYXJpYWJsZUFjY2Vzc1N0YWNrKFN0YXRlbWVu
dFZlY3RvciYgc3RhdGVtZW50cywgRGVjbGFyYXRpb25TdGFja3M6Ok5vZGVTdGFjayYgc3RhY2sp
Ci17Ci0gICAgaWYgKHN0YXRlbWVudHMuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gMDsKLQot
ICAgIFN0YXRlbWVudFZlY3Rvcjo6aXRlcmF0b3IgaXQgPSBzdGF0ZW1lbnRzLmVuZCgpOwotICAg
IFN0YXRlbWVudFZlY3Rvcjo6aXRlcmF0b3IgYmVnaW4gPSBzdGF0ZW1lbnRzLmJlZ2luKCk7Ci0g
ICAgU3RhdGVtZW50VmVjdG9yOjppdGVyYXRvciBiZWdpblBsdXNPbmUgPSBiZWdpbiArIDE7Ci0K
LSAgICB3aGlsZSAoaXQgIT0gYmVnaW5QbHVzT25lKSB7Ci0gICAgICAgIC0taXQ7Ci0gICAgICAg
IHN0YWNrLmFwcGVuZCgoKml0KS5nZXQoKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuICgqYmVnaW4p
LmdldCgpOwotfQotCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQmxvY2tOb2Rl
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBCbG9ja05vZGU6OkJsb2Nr
Tm9kZShKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEsIFNvdXJjZUVsZW1lbnRzKiBjaGlsZHJlbikK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23789</attachid>
            <date>2008-09-25 02:47:32 -0700</date>
            <delta_ts>2008-09-25 07:30:32 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>patch_callOnMainThreadAndWait</filename>
            <type>text/plain</type>
            <size>1922</size>
            <attacher name="Gabriella Toth">gtoth</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDM2ODkwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDgtMDktMjUgIEdhYnJpZWxs
YSBUb3RoICA8Z3RvdGhAaW5mLnUtc3plZ2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCQkKKyAgICAgICAgZGVsZXRlZCBub3QgaW52b2tlZCBmdW5jdGlvbjog
Y2FsbE9uTWFpblRocmVhZEFuZFdhaXQJCQorIAorICAgICAgICAqIHd0Zi9NYWluVGhyZWFkLmNw
cDoKKyAgICAgICAgKiB3dGYvTWFpblRocmVhZC5oOgorCiAyMDA4LTA5LTI0ICBHZW9mZnJleSBH
YXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqIFN0
YWNob3dpYWsuCkluZGV4OiBKYXZhU2NyaXB0Q29yZS93dGYvTWFpblRocmVhZC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL01haW5UaHJlYWQuY3BwCShyZXZpc2lvbiAzNjg4
NCkKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9NYWluVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTAzLDI4ICsxMDMsNiBAQCB2b2lkIGNhbGxPbk1haW5UaHJlYWQoTWFpblRocmVhZEZ1bmN0
aW9uCiAgICAgc2NoZWR1bGVEaXNwYXRjaEZ1bmN0aW9uc09uTWFpblRocmVhZCgpOwogfQogCi12
b2lkIGNhbGxPbk1haW5UaHJlYWRBbmRXYWl0KE1haW5UaHJlYWRGdW5jdGlvbiogZnVuY3Rpb24s
IHZvaWQqIGNvbnRleHQpCi17Ci0gICAgQVNTRVJUKGZ1bmN0aW9uKTsKLQotICAgIGlmIChpc01h
aW5UaHJlYWQoKSkgewotICAgICAgICBmdW5jdGlvbihjb250ZXh0KTsKLSAgICAgICAgcmV0dXJu
OwotICAgIH0KLQotICAgIFRocmVhZENvbmRpdGlvbiBzeW5jRmxhZzsKLSAgICBNdXRleCBjb25k
aXRpb25NdXRleDsKLQotICAgIHsKLSAgICAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1haW5UaHJl
YWRGdW5jdGlvblF1ZXVlTXV0ZXgoKSk7Ci0gICAgICAgIGZ1bmN0aW9uUXVldWUoKS5hcHBlbmQo
RnVuY3Rpb25XaXRoQ29udGV4dChmdW5jdGlvbiwgY29udGV4dCwgJnN5bmNGbGFnKSk7Ci0gICAg
ICAgIGNvbmRpdGlvbk11dGV4LmxvY2soKTsKLSAgICB9Ci0KLSAgICBzY2hlZHVsZURpc3BhdGNo
RnVuY3Rpb25zT25NYWluVGhyZWFkKCk7Ci0gICAgc3luY0ZsYWcud2FpdChjb25kaXRpb25NdXRl
eCk7Ci19Ci0KIHZvaWQgc2V0TWFpblRocmVhZENhbGxiYWNrc1BhdXNlZChib29sIHBhdXNlZCkK
IHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpJbmRleDogSmF2YVNjcmlwdENvcmUvd3Rm
L01haW5UaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvTWFpblRocmVh
ZC5oCShyZXZpc2lvbiAzNjg4NCkKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9NYWluVGhyZWFkLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTM3LDcgKzM3LDYgQEAgY2xhc3MgTXV0ZXg7CiB0eXBlZGVmIHZv
aWQgTWFpblRocmVhZEZ1bmN0aW9uKHZvaWQqKTsKIAogdm9pZCBjYWxsT25NYWluVGhyZWFkKE1h
aW5UaHJlYWRGdW5jdGlvbiosIHZvaWQqIGNvbnRleHQpOwotdm9pZCBjYWxsT25NYWluVGhyZWFk
QW5kV2FpdChNYWluVGhyZWFkRnVuY3Rpb24qLCB2b2lkKiBjb250ZXh0KTsKIAogdm9pZCBzZXRN
YWluVGhyZWFkQ2FsbGJhY2tzUGF1c2VkKGJvb2wgcGF1c2VkKTsKIAo=
</data>
<flag name="review"
          id="10703"
          type_id="1"
          status="-"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>