<?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>15442</bug_id>
          
          <creation_ts>2007-10-09 15:03:21 -0700</creation_ts>
          <short_desc>Cease &quot;hacking&quot; the scope chains of nested functions</short_desc>
          <delta_ts>2007-10-15 13:54:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>523.x (Safari 3)</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>14868</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          <cc>zwarich</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>58185</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-09 15:03:21 -0700</bug_when>
    <thetext>Broken off from bug 14868.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58186</commentid>
    <comment_count>1</comment_count>
      <attachid>16602</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-09 15:04:22 -0700</bug_when>
    <thetext>Created attachment 16602
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58187</commentid>
    <comment_count>2</comment_count>
      <attachid>16602</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-09 15:08:34 -0700</bug_when>
    <thetext>Comment on attachment 16602
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58188</commentid>
    <comment_count>3</comment_count>
      <attachid>16603</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-09 15:10:00 -0700</bug_when>
    <thetext>Created attachment 16603
Patch2

Slightly updated test case and ChangeLog to reflect the full scope of this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58189</commentid>
    <comment_count>4</comment_count>
      <attachid>16603</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-09 15:10:49 -0700</bug_when>
    <thetext>Comment on attachment 16603
Patch2

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58190</commentid>
    <comment_count>5</comment_count>
      <attachid>16604</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-09 15:13:28 -0700</bug_when>
    <thetext>Created attachment 16604
Patch3

This one includes the updated layout test results, too. (I guess I&apos;ll r+ it myself.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58191</commentid>
    <comment_count>6</comment_count>
      <attachid>16605</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-09 15:24:56 -0700</bug_when>
    <thetext>Created attachment 16605
Patch4

One more time with the right layout test results. This time for sure!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58599</commentid>
    <comment_count>7</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2007-10-15 13:54:10 -0700</bug_when>
    <thetext>Committed revision 26621.
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16602</attachid>
            <date>2007-10-09 15:04:22 -0700</date>
            <delta_ts>2007-10-09 15:10:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch-function-scope.txt</filename>
            <type>text/plain</type>
            <size>6630</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTc1KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMDctMTAtMDkgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZWQgc3VycHJpc2luZyBzZWxmLW5hbWVk
ICJoYWNrIiB0byBtYWtlIG5lc3RlZCBmdW5jdGlvbnMgYXZhaWxhYmxlIAorICAgICAgICBhcyBu
YW1lZCBwcm9wZXJ0aWVzIG9mIHRoZWlyIGNvbnRhaW5pbmcgZnVuY3Rpb25zLgorICAgICAgICAK
KyAgICAgICAgVGhlcmUgd2VyZSBhIGZldyByZWFzb25zIHRvIHJlbW92ZSB0aGlzICJoYWNrOiIK
KworICAgICAgICAxLiBJdCBjb250cmFkaWN0ZWQgRkYsIElFLCBhbmQgdGhlIEVDTUEgc3BlYy4K
KworICAgICAgICAyLiBJdCBpbmN1cnJlZCBhIHBlcmZvcm1hbmNlIHBlbmFsdHksIHNpbmNlIG1l
cmVseSBwYXJzaW5nIGEgZnVuY3Rpb24gCisgICAgICAgIHJlcXVpcmVkIHBhcnNpbmcgaXRzIGJv
ZHkgZm9yIG5lc3RlZCBmdW5jdGlvbnMgKGFuZCBzbyBvbikuCisKKyAgICAgICAgMy4gU1ZOIGhp
c3RvcnkgY29udGFpbnMgbm8gZXhwbGFuYXRpb24gZm9yIHdoeSBpdCB3YXMgYWRkZWQuIEl0IHdh
cyBqdXN0CisgICAgICAgIGxlZ2FjeSBjb2RlIGluIGEgbGFyZ2UgbWVyZ2UgYSBsb25nLCBsb25n
IHRpbWUgYWdvLgorCisgICAgICAgIFsgUGF0Y2ggYnJva2VuIG9mZiBmcm9tIGh0dHA6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODY4IF0KKworICAgICAgICAqIGtqcy9ub2Rl
cy5jcHA6CisgICAgICAgIChGdW5jRGVjbE5vZGU6OnByb2Nlc3NGdW5jRGVjbCk6CisKIDIwMDct
MTAtMDkgIExhcnMgS25vbGwgIDxsYXJzQHRyb2xsdGVjaC5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgU2ltb24uCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ranMvbm9kZXMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rlcy5jcHAJKHJldmlzaW9uIDI1ODE1KQorKysg
SmF2YVNjcmlwdENvcmUva2pzL25vZGVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQ4MywxNyAr
MjQ4Myw2IEBAIHZvaWQgRnVuY0RlY2xOb2RlOjpwcm9jZXNzRnVuY0RlY2woRXhlY1MKIAogICAv
LyBFQ01BIDEwLjIuMgogICBjb250ZXh0LT52YXJpYWJsZU9iamVjdCgpLT5wdXQoZXhlYywgaWRl
bnQsIGZ1bmMsIEludGVybmFsIHwgKGNvbnRleHQtPmNvZGVUeXBlKCkgPT0gRXZhbENvZGUgPyAw
IDogRG9udERlbGV0ZSkpOwotCi0gIGlmIChib2R5KSB7Ci0gICAgLy8gaGFjayB0aGUgc2NvcGUg
c28gdGhhdCB0aGUgZnVuY3Rpb24gZ2V0cyBwdXQgYXMgYSBwcm9wZXJ0eSBvZiBmdW5jLCBhbmQg
aXQncyBzY29wZQotICAgIC8vIGNvbnRhaW5zIHRoZSBmdW5jIGFzIHdlbGwgYXMgb3VyIGN1cnJl
bnQgc2NvcGUKLSAgICBKU09iamVjdCAqb2xkVmFyID0gY29udGV4dC0+dmFyaWFibGVPYmplY3Qo
KTsKLSAgICBjb250ZXh0LT5zZXRWYXJpYWJsZU9iamVjdChmdW5jKTsKLSAgICBjb250ZXh0LT5w
dXNoU2NvcGUoZnVuYyk7Ci0gICAgYm9keS0+cHJvY2Vzc0Z1bmNEZWNsKGV4ZWMpOwotICAgIGNv
bnRleHQtPnBvcFNjb3BlKCk7Ci0gICAgY29udGV4dC0+c2V0VmFyaWFibGVPYmplY3Qob2xkVmFy
KTsKLSAgfQogfQogCiBDb21wbGV0aW9uIEZ1bmNEZWNsTm9kZTo6ZXhlY3V0ZShFeGVjU3RhdGUg
KikKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTc1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMDctMTAtMDkgIEdlb2ZmcmV5IEdhcmVu
ICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZWQgc3VycHJpc2luZyBzZWxmLW5hbWVkICJoYWNr
IiB0byBtYWtlIG5lc3RlZCBmdW5jdGlvbnMgYXZhaWxhYmxlIAorICAgICAgICBhcyBuYW1lZCBw
cm9wZXJ0aWVzIG9mIHRoZWlyIGNvbnRhaW5pbmcgZnVuY3Rpb25zLgorICAgICAgICAKKyAgICAg
ICAgWyBQYXRjaCBicm9rZW4gb2ZmIGZyb20gaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTQ4NjggXQorCisgICAgICAgIENoYW5nZWQgdGhpcyB0ZXN0IHRvIHJlZmxlY3Qg
Y29ycmVjdCBiZWhhdmlvcjoKKworICAgICAgICAqIGZhc3QvanMva2RlL2Z1bmN0aW9uLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2pzL2tkZS9yZXNvdXJjZXMvZnVuY3Rpb24uanM6CisK
KyAgICAgICAgQWRkZWQgdGhpcyB0ZXN0IHRvIGZsZXNoIG91dCB0aGUgYmVoYXZpb3IgbW9yZToK
KworICAgICAgICAqIGZhc3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUuaHRtbDogQWRk
ZWQuCisKIDIwMDctMTAtMDkgIExhcnMgS25vbGwgIDxsYXJzQHRyb2xsdGVjaC5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgU2ltb24uCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3Rl
ZC1mdW5jdGlvbi1zY29wZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE5IEBACitUaGlzIHBhZ2UgdGVzdHMgdGhlIHNjb3Bl
IGluIHdoaWNoIGEgbmVzdGVkIGZ1bmN0aW9uIGlzIGF2YWlsYWJsZSBieSBuYW1lLgorCitCZWZv
cmUgcGFyc2luZyBmOg0KKy0tLS0tDQorUEFTUzogdHlwZW9mIGYgc2hvdWxkIGJlIGZ1bmN0aW9u
IGFuZCBpcy4NCitQQVNTOiB0eXBlb2YgZi5mMSBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBpcy4N
CisNCitBZnRlciBwYXJzaW5nIGYsIGJ1dCBiZWZvcmUgY2FsbGluZyBmOg0KKy0tLS0tDQorUEFT
UzogdHlwZW9mIGYgc2hvdWxkIGJlIGZ1bmN0aW9uIGFuZCBpcy4NCitQQVNTOiB0eXBlb2YgZi5m
MSBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBpcy4NCisNCitJbiBjYWxsIHRvIGY6DQorLS0tLS0N
CitQQVNTOiB0eXBlb2YgZiBzaG91bGQgYmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6IHR5cGVv
ZiBmMSBzaG91bGQgYmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6IHR5cGVvZiBmLmYxIHNob3Vs
ZCBiZSB1bmRlZmluZWQgYW5kIGlzLg0KK1BBU1M6IHR5cGVvZiB4IHNob3VsZCBiZSBudW1iZXIg
YW5kIGlzLg0KKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2Nv
cGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlv
bi1zY29wZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9uZXN0ZWQt
ZnVuY3Rpb24tc2NvcGUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw0NyBAQAorPHA+VGhp
cyBwYWdlIHRlc3RzIHRoZSBzY29wZSBpbiB3aGljaCBhIG5lc3RlZCBmdW5jdGlvbiBpcyBhdmFp
bGFibGUgYnkgbmFtZS48L3A+Cis8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KKworPHNjcmlwdD4K
K2Z1bmN0aW9uIGxvZyhzKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xl
IikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocyArICJcclxuIikpOworfQor
CitmdW5jdGlvbiBzaG91bGRCZShldmFsQSwgYSwgYikKK3sKKyAgICBpZiAoZXZhbEEgPT09IGIp
IHsKKyAgICAgICAgbG9nKCJQQVNTOiAiICsgYSArICIgc2hvdWxkIGJlICIgKyBiICsgIiBhbmQg
aXMuIik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgbG9nKCJGQUlMOiAiICsgYSArICIgc2hvdWxk
IGJlICIgKyBiICsgIiBidXQgaW5zdGVhZCBpcyAiICsgZXZhbEEgKyAiLiIpOworICAgIH0KK30K
KworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5kdW1wQXNUZXh0KCk7CisKK2xvZygiQmVmb3JlIHBhcnNpbmcgZjoiKTsKK2xvZygiLS0t
LS0iKTsKK3Nob3VsZEJlKHR5cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsKK3Nob3Vs
ZEJlKHR5cGVvZiBmLmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisKK2Z1bmN0aW9u
IGYoeCkKK3sKKyAgICBmdW5jdGlvbiBmMSgpIHsKKyAgICAgICAgbG9nKCJcclxuSW4gY2FsbCB0
byBmOiIpOworICAgICAgICBsb2coIi0tLS0tIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVvZiBm
LCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9mIGYxLCAi
dHlwZW9mIGYxIiwgImZ1bmN0aW9uIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVvZiBmLmYxLCAi
dHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVvZiB4LCAi
dHlwZW9mIHgiLCAibnVtYmVyIik7CisgICAgfQorCisgICAgZjEoKTsKK30KKworbG9nKCJcclxu
QWZ0ZXIgcGFyc2luZyBmLCBidXQgYmVmb3JlIGNhbGxpbmcgZjoiKTsKK2xvZygiLS0tLS0iKTsK
K3Nob3VsZEJlKHR5cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsKK3Nob3VsZEJlKHR5
cGVvZiBmLmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisKK2YoMSk7Cis8L3Njcmlw
dD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMva2RlL2Z1bmN0aW9uLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2tkZS9mdW5jdGlvbi1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9rZGUvZnVuY3Rpb24t
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBAIFBBU1Mgb3JnRnVu
Y0Nsb25lKCd3b3JsZCcpIGlzICdIZWxsbyB3b3IKIFBBU1MgZ3JvdXBDbG9uZSgxLCAyKSBpcyA5
CiBQQVNTIFN0cmluZyhNYXRoLnNpbikgaXMgc2luU3RyCiBQQVNTIHNoYWRvdygpIGlzIDIKLVBB
U1MgbmVzdGVkcmV0IGlzICdvdXRlciBuZXN0JworUEFTUyBuZXN0ZWRyZXQgaXMgJ2lubmVyIG5l
c3QnCiBQQVNTIG5vdF9uZXN0ZWRyZXQgaXMgJ2dsb2JhbCBuZXN0JwogUEFTUyBzYW1wbGUucHJv
dG90eXBlLnByb3RvdHlwZSBpcyB1bmRlZmluZWQuCiBQQVNTIHNhbXBsZS5wcm90b3R5cGUuY29u
c3RydWN0b3IgPT0gc2FtcGxlIGlzIHRydWUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMva2Rl
L3Jlc291cmNlcy9mdW5jdGlvbi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pz
L2tkZS9yZXNvdXJjZXMvZnVuY3Rpb24uanMJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5b3V0VGVz
dHMvZmFzdC9qcy9rZGUvcmVzb3VyY2VzL2Z1bmN0aW9uLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0x
NzgsMTAgKzE3OCwxMyBAQCB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJnbG9iYWwgbmVzdCI7CiAKIGZ1
bmN0aW9uIG5lc3RlZF9vdXRlcigpIHsKIAorICB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJpbm5lciBu
ZXN0IjsKKwogICBmdW5jdGlvbiBuZXN0ZWRfaW5uZXIoKSB7CiAgICAgcmV0dXJuIG5lc3RfcHJv
cGVydHk7CiAgIH0KIAorICByZXR1cm4gbmVzdGVkX2lubmVyOwogfQogCiBmdW5jdGlvbiBub3Rf
bmVzdGVkKCkgewpAQCAtMTkwLDkgKzE5Myw5IEBAIGZ1bmN0aW9uIG5vdF9uZXN0ZWQoKSB7CiAK
IG5lc3RlZF9vdXRlci5uZXN0X3Byb3BlcnR5ID0gIm91dGVyIG5lc3QiOwogCi12YXIgbmVzdGVk
ID0gbmVzdGVkX291dGVyLm5lc3RlZF9pbm5lcjsKK3ZhciBuZXN0ZWQgPSBuZXN0ZWRfb3V0ZXIo
KTsKIHZhciBuZXN0ZWRyZXQgPSBuZXN0ZWQoKTsKLXNob3VsZEJlKCJuZXN0ZWRyZXQiLCInb3V0
ZXIgbmVzdCciKTsKK3Nob3VsZEJlKCJuZXN0ZWRyZXQiLCInaW5uZXIgbmVzdCciKTsKIAogdmFy
IG5vdF9uZXN0ZWRyZXQgPSBub3RfbmVzdGVkKCk7CiBzaG91bGRCZSgibm90X25lc3RlZHJldCIs
IidnbG9iYWwgbmVzdCciKTsK
</data>
<flag name="review"
          id="7010"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16603</attachid>
            <date>2007-10-09 15:10:00 -0700</date>
            <delta_ts>2007-10-09 15:13:28 -0700</delta_ts>
            <desc>Patch2</desc>
            <filename>patch-function-scope.txt</filename>
            <type>text/plain</type>
            <size>6876</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTc1KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMDctMTAtMDkgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZWQgc3VycHJpc2luZyBzZWxmLW5hbWVk
ICJoYWNrIiB0aGF0IG1hZGUgbmVzdGVkIGZ1bmN0aW9ucyAKKyAgICAgICAgYXZhaWxhYmxlIGFz
IG5hbWVkIHByb3BlcnRpZXMgb2YgdGhlaXIgY29udGFpbmluZyBmdW5jdGlvbnMsIGFuZCBwbGFj
ZWQKKyAgICAgICAgY29udGFpbmluZyBmdW5jdGlvbiBvYmplY3RzIGluIHRoZSBzY29wZSBjaGFp
bnMgb2YgbmVzdGVkIGZ1bmN0aW9ucy4KKyAgICAgICAgCisgICAgICAgIFRoZXJlIHdlcmUgYSBm
ZXcgcmVhc29ucyB0byByZW1vdmUgdGhpcyAiaGFjazoiCisKKyAgICAgICAgMS4gSXQgY29udHJh
ZGljdGVkIEZGLCBJRSwgYW5kIHRoZSBFQ01BIHNwZWMuCisKKyAgICAgICAgMi4gSXQgaW5jdXJy
ZWQgYSBwZXJmb3JtYW5jZSBwZW5hbHR5LCBzaW5jZSBtZXJlbHkgcGFyc2luZyBhIGZ1bmN0aW9u
IAorICAgICAgICByZXF1aXJlZCBwYXJzaW5nIGl0cyBib2R5IGZvciBuZXN0ZWQgZnVuY3Rpb25z
IChhbmQgc28gb24pLgorCisgICAgICAgIDMuIFNWTiBoaXN0b3J5IGNvbnRhaW5zIG5vIGV4cGxh
bmF0aW9uIGZvciB3aHkgaXQgd2FzIGFkZGVkLiBJdCB3YXMganVzdAorICAgICAgICBsZWdhY3kg
Y29kZSBpbiBhIGxhcmdlIG1lcmdlIGEgbG9uZywgbG9uZyB0aW1lIGFnby4KKworICAgICAgICBb
IFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDg2OCBdCisKKyAgICAgICAgKiBranMvbm9kZXMuY3BwOgorICAgICAgICAoRnVuY0Rl
Y2xOb2RlOjpwcm9jZXNzRnVuY0RlY2wpOgorCiAyMDA3LTEwLTA5ICBMYXJzIEtub2xsICA8bGFy
c0B0cm9sbHRlY2guY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uLgpJbmRleDogSmF2
YVNjcmlwdENvcmUva2pzL25vZGVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9r
anMvbm9kZXMuY3BwCShyZXZpc2lvbiAyNTgxNSkKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rl
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0ODMsMTcgKzI0ODMsNiBAQCB2b2lkIEZ1bmNEZWNs
Tm9kZTo6cHJvY2Vzc0Z1bmNEZWNsKEV4ZWNTCiAKICAgLy8gRUNNQSAxMC4yLjIKICAgY29udGV4
dC0+dmFyaWFibGVPYmplY3QoKS0+cHV0KGV4ZWMsIGlkZW50LCBmdW5jLCBJbnRlcm5hbCB8IChj
b250ZXh0LT5jb2RlVHlwZSgpID09IEV2YWxDb2RlID8gMCA6IERvbnREZWxldGUpKTsKLQotICBp
ZiAoYm9keSkgewotICAgIC8vIGhhY2sgdGhlIHNjb3BlIHNvIHRoYXQgdGhlIGZ1bmN0aW9uIGdl
dHMgcHV0IGFzIGEgcHJvcGVydHkgb2YgZnVuYywgYW5kIGl0J3Mgc2NvcGUKLSAgICAvLyBjb250
YWlucyB0aGUgZnVuYyBhcyB3ZWxsIGFzIG91ciBjdXJyZW50IHNjb3BlCi0gICAgSlNPYmplY3Qg
Km9sZFZhciA9IGNvbnRleHQtPnZhcmlhYmxlT2JqZWN0KCk7Ci0gICAgY29udGV4dC0+c2V0VmFy
aWFibGVPYmplY3QoZnVuYyk7Ci0gICAgY29udGV4dC0+cHVzaFNjb3BlKGZ1bmMpOwotICAgIGJv
ZHktPnByb2Nlc3NGdW5jRGVjbChleGVjKTsKLSAgICBjb250ZXh0LT5wb3BTY29wZSgpOwotICAg
IGNvbnRleHQtPnNldFZhcmlhYmxlT2JqZWN0KG9sZFZhcik7Ci0gIH0KIH0KIAogQ29tcGxldGlv
biBGdW5jRGVjbE5vZGU6OmV4ZWN1dGUoRXhlY1N0YXRlICopCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjE3NSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIzIEBACisyMDA3LTEwLTA5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBS
ZW1vdmVkIHN1cnByaXNpbmcgc2VsZi1uYW1lZCAiaGFjayIgdGhhdCBtYWRlIG5lc3RlZCBmdW5j
dGlvbnMgCisgICAgICAgIGF2YWlsYWJsZSBhcyBuYW1lZCBwcm9wZXJ0aWVzIG9mIHRoZWlyIGNv
bnRhaW5pbmcgZnVuY3Rpb25zLCBhbmQgcGxhY2VkCisgICAgICAgIGNvbnRhaW5pbmcgZnVuY3Rp
b24gb2JqZWN0cyBpbiB0aGUgc2NvcGUgY2hhaW5zIG9mIG5lc3RlZCBmdW5jdGlvbnMuCisgICAg
ICAgIAorICAgICAgICBbIFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg2OCBdCisKKyAgICAgICAgQ2hhbmdlZCB0aGlzIHRlc3Qg
dG8gcmVmbGVjdCBjb3JyZWN0IGJlaGF2aW9yOgorCisgICAgICAgICogZmFzdC9qcy9rZGUvZnVu
Y3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMva2RlL3Jlc291cmNlcy9mdW5j
dGlvbi5qczoKKworICAgICAgICBBZGRlZCB0aGlzIHRlc3QgdG8gZmxlc2ggb3V0IHRoZSBiZWhh
dmlvciBtb3JlOgorCisgICAgICAgICogZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29w
ZS5odG1sOiBBZGRlZC4KKwogMjAwNy0xMC0wOSAgTGFycyBLbm9sbCAgPGxhcnNAdHJvbGx0ZWNo
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbi4KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTkgQEAKK1RoaXMgcGFnZSB0ZXN0
cyB0aGUgc2NvcGUgaW4gd2hpY2ggYSBuZXN0ZWQgZnVuY3Rpb24gaXMgYXZhaWxhYmxlIGJ5IG5h
bWUuCisKK0JlZm9yZSBwYXJzaW5nIGY6DQorLS0tLS0NCitQQVNTOiB0eXBlb2YgZiBzaG91bGQg
YmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6IHR5cGVvZiBmLmYxIHNob3VsZCBiZSB1bmRlZmlu
ZWQgYW5kIGlzLg0KKw0KK0FmdGVyIHBhcnNpbmcgZiwgYnV0IGJlZm9yZSBjYWxsaW5nIGY6DQor
LS0tLS0NCitQQVNTOiB0eXBlb2YgZiBzaG91bGQgYmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6
IHR5cGVvZiBmLmYxIHNob3VsZCBiZSB1bmRlZmluZWQgYW5kIGlzLg0KKw0KK0luIGNhbGwgdG8g
ZjoNCistLS0tLQ0KK1BBU1M6IHR5cGVvZiBmIHNob3VsZCBiZSBmdW5jdGlvbiBhbmQgaXMuDQor
UEFTUzogdHlwZW9mIGYxIHNob3VsZCBiZSBmdW5jdGlvbiBhbmQgaXMuDQorUEFTUzogdHlwZW9m
IGYuZjEgc2hvdWxkIGJlIHVuZGVmaW5lZCBhbmQgaXMuDQorUEFTUzogdHlwZW9mIHggc2hvdWxk
IGJlIG51bWJlciBhbmQgaXMuDQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1m
dW5jdGlvbi1zY29wZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMvbmVz
dGVkLWZ1bmN0aW9uLXNjb3BlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ5
IEBACis8cD5UaGlzIHBhZ2UgdGVzdHMgdGhlIHNjb3BlIGluIHdoaWNoIGEgbmVzdGVkIGZ1bmN0
aW9uIGlzIGF2YWlsYWJsZSBieSBuYW1lLjwvcD4KKzxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgor
Cis8c2NyaXB0PgorZnVuY3Rpb24gbG9nKHMpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImNvbnNvbGUiKS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzICsgIlxy
XG4iKSk7Cit9CisKK2Z1bmN0aW9uIHNob3VsZEJlKGV2YWxBLCBhLCBiKQoreworICAgIGlmIChl
dmFsQSA9PT0gYikgeworICAgICAgICBsb2coIlBBU1M6ICIgKyBhICsgIiBzaG91bGQgYmUgIiAr
IGIgKyAiIGFuZCBpcy4iKTsKKyAgICB9IGVsc2UgeworICAgICAgICBsb2coIkZBSUw6ICIgKyBh
ICsgIiBzaG91bGQgYmUgIiArIGIgKyAiIGJ1dCBpbnN0ZWFkIGlzICIgKyBldmFsQSArICIuIik7
CisgICAgfQorfQorCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworbG9nKCJCZWZvcmUgcGFyc2luZyBmOiIp
OworbG9nKCItLS0tLSIpOworc2hvdWxkQmUodHlwZW9mIGYsICJ0eXBlb2YgZiIsICJmdW5jdGlv
biIpOworc2hvdWxkQmUodHlwZW9mIGYuZjEsICJ0eXBlb2YgZi5mMSIsICJ1bmRlZmluZWQiKTsK
KworZnVuY3Rpb24gZih4KQoreworICAgIGZ1bmN0aW9uIGYxKCkgeworICAgICAgICBsb2coIlxy
XG5JbiBjYWxsIHRvIGY6Iik7CisgICAgICAgIGxvZygiLS0tLS0iKTsKKyAgICAgICAgc2hvdWxk
QmUodHlwZW9mIGYsICJ0eXBlb2YgZiIsICJmdW5jdGlvbiIpOworICAgICAgICBzaG91bGRCZSh0
eXBlb2YgZjEsICJ0eXBlb2YgZjEiLCAiZnVuY3Rpb24iKTsKKyAgICAgICAgc2hvdWxkQmUodHlw
ZW9mIGYuZjEsICJ0eXBlb2YgZi5mMSIsICJ1bmRlZmluZWQiKTsKKyAgICAgICAgc2hvdWxkQmUo
dHlwZW9mIHgsICJ0eXBlb2YgeCIsICJudW1iZXIiKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9m
IHksICJ0eXBlb2YgeSIsICJ1bmRlZmluZWQiKTsKKyAgICB9CisKKyAgICBmMSgpOworfQorZi55
ID0gMTsKKworbG9nKCJcclxuQWZ0ZXIgcGFyc2luZyBmLCBidXQgYmVmb3JlIGNhbGxpbmcgZjoi
KTsKK2xvZygiLS0tLS0iKTsKK3Nob3VsZEJlKHR5cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rp
b24iKTsKK3Nob3VsZEJlKHR5cGVvZiBmLmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7
CisKK2YoMSk7Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMva2RlL2Z1bmN0
aW9uLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2tkZS9m
dW5jdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5b3V0VGVzdHMvZmFz
dC9qcy9rZGUvZnVuY3Rpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICsz
NCw3IEBAIFBBU1Mgb3JnRnVuY0Nsb25lKCd3b3JsZCcpIGlzICdIZWxsbyB3b3IKIFBBU1MgZ3Jv
dXBDbG9uZSgxLCAyKSBpcyA5CiBQQVNTIFN0cmluZyhNYXRoLnNpbikgaXMgc2luU3RyCiBQQVNT
IHNoYWRvdygpIGlzIDIKLVBBU1MgbmVzdGVkcmV0IGlzICdvdXRlciBuZXN0JworUEFTUyBuZXN0
ZWRyZXQgaXMgJ2lubmVyIG5lc3QnCiBQQVNTIG5vdF9uZXN0ZWRyZXQgaXMgJ2dsb2JhbCBuZXN0
JwogUEFTUyBzYW1wbGUucHJvdG90eXBlLnByb3RvdHlwZSBpcyB1bmRlZmluZWQuCiBQQVNTIHNh
bXBsZS5wcm90b3R5cGUuY29uc3RydWN0b3IgPT0gc2FtcGxlIGlzIHRydWUKSW5kZXg6IExheW91
dFRlc3RzL2Zhc3QvanMva2RlL3Jlc291cmNlcy9mdW5jdGlvbi5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2pzL2tkZS9yZXNvdXJjZXMvZnVuY3Rpb24uanMJKHJldmlzaW9uIDI1
ODE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9rZGUvcmVzb3VyY2VzL2Z1bmN0aW9uLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC0xNzgsMTAgKzE3OCwxMyBAQCB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJn
bG9iYWwgbmVzdCI7CiAKIGZ1bmN0aW9uIG5lc3RlZF9vdXRlcigpIHsKIAorICB2YXIgbmVzdF9w
cm9wZXJ0eSA9ICJpbm5lciBuZXN0IjsKKwogICBmdW5jdGlvbiBuZXN0ZWRfaW5uZXIoKSB7CiAg
ICAgcmV0dXJuIG5lc3RfcHJvcGVydHk7CiAgIH0KIAorICByZXR1cm4gbmVzdGVkX2lubmVyOwog
fQogCiBmdW5jdGlvbiBub3RfbmVzdGVkKCkgewpAQCAtMTkwLDkgKzE5Myw5IEBAIGZ1bmN0aW9u
IG5vdF9uZXN0ZWQoKSB7CiAKIG5lc3RlZF9vdXRlci5uZXN0X3Byb3BlcnR5ID0gIm91dGVyIG5l
c3QiOwogCi12YXIgbmVzdGVkID0gbmVzdGVkX291dGVyLm5lc3RlZF9pbm5lcjsKK3ZhciBuZXN0
ZWQgPSBuZXN0ZWRfb3V0ZXIoKTsKIHZhciBuZXN0ZWRyZXQgPSBuZXN0ZWQoKTsKLXNob3VsZEJl
KCJuZXN0ZWRyZXQiLCInb3V0ZXIgbmVzdCciKTsKK3Nob3VsZEJlKCJuZXN0ZWRyZXQiLCInaW5u
ZXIgbmVzdCciKTsKIAogdmFyIG5vdF9uZXN0ZWRyZXQgPSBub3RfbmVzdGVkKCk7CiBzaG91bGRC
ZSgibm90X25lc3RlZHJldCIsIidnbG9iYWwgbmVzdCciKTsK
</data>
<flag name="review"
          id="7011"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16604</attachid>
            <date>2007-10-09 15:13:28 -0700</date>
            <delta_ts>2007-10-09 15:24:56 -0700</delta_ts>
            <desc>Patch3</desc>
            <filename>patch-function-scope.txt</filename>
            <type>text/plain</type>
            <size>6921</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTc1KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMDctMTAtMDkgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZWQgc3VycHJpc2luZyBzZWxmLW5hbWVk
ICJoYWNrIiB0aGF0IG1hZGUgbmVzdGVkIGZ1bmN0aW9ucyAKKyAgICAgICAgYXZhaWxhYmxlIGFz
IG5hbWVkIHByb3BlcnRpZXMgb2YgdGhlaXIgY29udGFpbmluZyBmdW5jdGlvbnMsIGFuZCBwbGFj
ZWQKKyAgICAgICAgY29udGFpbmluZyBmdW5jdGlvbiBvYmplY3RzIGluIHRoZSBzY29wZSBjaGFp
bnMgb2YgbmVzdGVkIGZ1bmN0aW9ucy4KKyAgICAgICAgCisgICAgICAgIFRoZXJlIHdlcmUgYSBm
ZXcgcmVhc29ucyB0byByZW1vdmUgdGhpcyAiaGFjazoiCisKKyAgICAgICAgMS4gSXQgY29udHJh
ZGljdGVkIEZGLCBJRSwgYW5kIHRoZSBFQ01BIHNwZWMuCisKKyAgICAgICAgMi4gSXQgaW5jdXJy
ZWQgYSBwZXJmb3JtYW5jZSBwZW5hbHR5LCBzaW5jZSBtZXJlbHkgcGFyc2luZyBhIGZ1bmN0aW9u
IAorICAgICAgICByZXF1aXJlZCBwYXJzaW5nIGl0cyBib2R5IGZvciBuZXN0ZWQgZnVuY3Rpb25z
IChhbmQgc28gb24pLgorCisgICAgICAgIDMuIFNWTiBoaXN0b3J5IGNvbnRhaW5zIG5vIGV4cGxh
bmF0aW9uIGZvciB3aHkgaXQgd2FzIGFkZGVkLiBJdCB3YXMganVzdAorICAgICAgICBsZWdhY3kg
Y29kZSBpbiBhIGxhcmdlIG1lcmdlIGEgbG9uZywgbG9uZyB0aW1lIGFnby4KKworICAgICAgICBb
IFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDg2OCBdCisKKyAgICAgICAgKiBranMvbm9kZXMuY3BwOgorICAgICAgICAoRnVuY0Rl
Y2xOb2RlOjpwcm9jZXNzRnVuY0RlY2wpOgorCiAyMDA3LTEwLTA5ICBMYXJzIEtub2xsICA8bGFy
c0B0cm9sbHRlY2guY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uLgpJbmRleDogSmF2
YVNjcmlwdENvcmUva2pzL25vZGVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9r
anMvbm9kZXMuY3BwCShyZXZpc2lvbiAyNTgxNSkKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rl
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0ODMsMTcgKzI0ODMsNiBAQCB2b2lkIEZ1bmNEZWNs
Tm9kZTo6cHJvY2Vzc0Z1bmNEZWNsKEV4ZWNTCiAKICAgLy8gRUNNQSAxMC4yLjIKICAgY29udGV4
dC0+dmFyaWFibGVPYmplY3QoKS0+cHV0KGV4ZWMsIGlkZW50LCBmdW5jLCBJbnRlcm5hbCB8IChj
b250ZXh0LT5jb2RlVHlwZSgpID09IEV2YWxDb2RlID8gMCA6IERvbnREZWxldGUpKTsKLQotICBp
ZiAoYm9keSkgewotICAgIC8vIGhhY2sgdGhlIHNjb3BlIHNvIHRoYXQgdGhlIGZ1bmN0aW9uIGdl
dHMgcHV0IGFzIGEgcHJvcGVydHkgb2YgZnVuYywgYW5kIGl0J3Mgc2NvcGUKLSAgICAvLyBjb250
YWlucyB0aGUgZnVuYyBhcyB3ZWxsIGFzIG91ciBjdXJyZW50IHNjb3BlCi0gICAgSlNPYmplY3Qg
Km9sZFZhciA9IGNvbnRleHQtPnZhcmlhYmxlT2JqZWN0KCk7Ci0gICAgY29udGV4dC0+c2V0VmFy
aWFibGVPYmplY3QoZnVuYyk7Ci0gICAgY29udGV4dC0+cHVzaFNjb3BlKGZ1bmMpOwotICAgIGJv
ZHktPnByb2Nlc3NGdW5jRGVjbChleGVjKTsKLSAgICBjb250ZXh0LT5wb3BTY29wZSgpOwotICAg
IGNvbnRleHQtPnNldFZhcmlhYmxlT2JqZWN0KG9sZFZhcik7Ci0gIH0KIH0KIAogQ29tcGxldGlv
biBGdW5jRGVjbE5vZGU6OmV4ZWN1dGUoRXhlY1N0YXRlICopCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjE3NSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIzIEBACisyMDA3LTEwLTA5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBS
ZW1vdmVkIHN1cnByaXNpbmcgc2VsZi1uYW1lZCAiaGFjayIgdGhhdCBtYWRlIG5lc3RlZCBmdW5j
dGlvbnMgCisgICAgICAgIGF2YWlsYWJsZSBhcyBuYW1lZCBwcm9wZXJ0aWVzIG9mIHRoZWlyIGNv
bnRhaW5pbmcgZnVuY3Rpb25zLCBhbmQgcGxhY2VkCisgICAgICAgIGNvbnRhaW5pbmcgZnVuY3Rp
b24gb2JqZWN0cyBpbiB0aGUgc2NvcGUgY2hhaW5zIG9mIG5lc3RlZCBmdW5jdGlvbnMuCisgICAg
ICAgIAorICAgICAgICBbIFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg2OCBdCisKKyAgICAgICAgQ2hhbmdlZCB0aGlzIHRlc3Qg
dG8gcmVmbGVjdCBjb3JyZWN0IGJlaGF2aW9yOgorCisgICAgICAgICogZmFzdC9qcy9rZGUvZnVu
Y3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMva2RlL3Jlc291cmNlcy9mdW5j
dGlvbi5qczoKKworICAgICAgICBBZGRlZCB0aGlzIHRlc3QgdG8gZmxlc2ggb3V0IHRoZSBiZWhh
dmlvciBtb3JlOgorCisgICAgICAgICogZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29w
ZS5odG1sOiBBZGRlZC4KKwogMjAwNy0xMC0wOSAgTGFycyBLbm9sbCAgPGxhcnNAdHJvbGx0ZWNo
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbi4KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjAgQEAKK1RoaXMgcGFnZSB0ZXN0
cyB0aGUgc2NvcGUgaW4gd2hpY2ggYSBuZXN0ZWQgZnVuY3Rpb24gaXMgYXZhaWxhYmxlIGJ5IG5h
bWUuCisKK0JlZm9yZSBwYXJzaW5nIGY6DQorLS0tLS0NCitQQVNTOiB0eXBlb2YgZiBzaG91bGQg
YmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6IHR5cGVvZiBmLmYxIHNob3VsZCBiZSB1bmRlZmlu
ZWQgYW5kIGlzLg0KKw0KK0FmdGVyIHBhcnNpbmcgZiwgYnV0IGJlZm9yZSBjYWxsaW5nIGY6DQor
LS0tLS0NCitQQVNTOiB0eXBlb2YgZiBzaG91bGQgYmUgZnVuY3Rpb24gYW5kIGlzLg0KK1BBU1M6
IHR5cGVvZiBmLmYxIHNob3VsZCBiZSB1bmRlZmluZWQgYW5kIGlzLg0KKw0KK0luIGNhbGwgdG8g
ZjoNCistLS0tLQ0KK1BBU1M6IHR5cGVvZiBmIHNob3VsZCBiZSBmdW5jdGlvbiBhbmQgaXMuDQor
UEFTUzogdHlwZW9mIGYxIHNob3VsZCBiZSBmdW5jdGlvbiBhbmQgaXMuDQorUEFTUzogdHlwZW9m
IGYuZjEgc2hvdWxkIGJlIHVuZGVmaW5lZCBhbmQgaXMuDQorUEFTUzogdHlwZW9mIHggc2hvdWxk
IGJlIG51bWJlciBhbmQgaXMuDQorUEFTUzogdHlwZW9mIHkgc2hvdWxkIGJlIHVuZGVmaW5lZCBh
bmQgaXMuDQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29w
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvanMvbmVzdGVkLWZ1bmN0aW9u
LXNjb3BlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1m
dW5jdGlvbi1zY29wZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ5IEBACis8cD5UaGlz
IHBhZ2UgdGVzdHMgdGhlIHNjb3BlIGluIHdoaWNoIGEgbmVzdGVkIGZ1bmN0aW9uIGlzIGF2YWls
YWJsZSBieSBuYW1lLjwvcD4KKzxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgorCis8c2NyaXB0Pgor
ZnVuY3Rpb24gbG9nKHMpCit7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUi
KS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzICsgIlxyXG4iKSk7Cit9CisK
K2Z1bmN0aW9uIHNob3VsZEJlKGV2YWxBLCBhLCBiKQoreworICAgIGlmIChldmFsQSA9PT0gYikg
eworICAgICAgICBsb2coIlBBU1M6ICIgKyBhICsgIiBzaG91bGQgYmUgIiArIGIgKyAiIGFuZCBp
cy4iKTsKKyAgICB9IGVsc2UgeworICAgICAgICBsb2coIkZBSUw6ICIgKyBhICsgIiBzaG91bGQg
YmUgIiArIGIgKyAiIGJ1dCBpbnN0ZWFkIGlzICIgKyBldmFsQSArICIuIik7CisgICAgfQorfQor
CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKworbG9nKCJCZWZvcmUgcGFyc2luZyBmOiIpOworbG9nKCItLS0t
LSIpOworc2hvdWxkQmUodHlwZW9mIGYsICJ0eXBlb2YgZiIsICJmdW5jdGlvbiIpOworc2hvdWxk
QmUodHlwZW9mIGYuZjEsICJ0eXBlb2YgZi5mMSIsICJ1bmRlZmluZWQiKTsKKworZnVuY3Rpb24g
Zih4KQoreworICAgIGZ1bmN0aW9uIGYxKCkgeworICAgICAgICBsb2coIlxyXG5JbiBjYWxsIHRv
IGY6Iik7CisgICAgICAgIGxvZygiLS0tLS0iKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9mIGYs
ICJ0eXBlb2YgZiIsICJmdW5jdGlvbiIpOworICAgICAgICBzaG91bGRCZSh0eXBlb2YgZjEsICJ0
eXBlb2YgZjEiLCAiZnVuY3Rpb24iKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9mIGYuZjEsICJ0
eXBlb2YgZi5mMSIsICJ1bmRlZmluZWQiKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9mIHgsICJ0
eXBlb2YgeCIsICJudW1iZXIiKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9mIHksICJ0eXBlb2Yg
eSIsICJ1bmRlZmluZWQiKTsKKyAgICB9CisKKyAgICBmMSgpOworfQorZi55ID0gMTsKKworbG9n
KCJcclxuQWZ0ZXIgcGFyc2luZyBmLCBidXQgYmVmb3JlIGNhbGxpbmcgZjoiKTsKK2xvZygiLS0t
LS0iKTsKK3Nob3VsZEJlKHR5cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsKK3Nob3Vs
ZEJlKHR5cGVvZiBmLmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisKK2YoMSk7Cis8
L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMva2RlL2Z1bmN0aW9uLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2tkZS9mdW5jdGlvbi1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9rZGUvZnVu
Y3Rpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBAIFBBU1Mg
b3JnRnVuY0Nsb25lKCd3b3JsZCcpIGlzICdIZWxsbyB3b3IKIFBBU1MgZ3JvdXBDbG9uZSgxLCAy
KSBpcyA5CiBQQVNTIFN0cmluZyhNYXRoLnNpbikgaXMgc2luU3RyCiBQQVNTIHNoYWRvdygpIGlz
IDIKLVBBU1MgbmVzdGVkcmV0IGlzICdvdXRlciBuZXN0JworUEFTUyBuZXN0ZWRyZXQgaXMgJ2lu
bmVyIG5lc3QnCiBQQVNTIG5vdF9uZXN0ZWRyZXQgaXMgJ2dsb2JhbCBuZXN0JwogUEFTUyBzYW1w
bGUucHJvdG90eXBlLnByb3RvdHlwZSBpcyB1bmRlZmluZWQuCiBQQVNTIHNhbXBsZS5wcm90b3R5
cGUuY29uc3RydWN0b3IgPT0gc2FtcGxlIGlzIHRydWUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
anMva2RlL3Jlc291cmNlcy9mdW5jdGlvbi5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2pzL2tkZS9yZXNvdXJjZXMvZnVuY3Rpb24uanMJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5
b3V0VGVzdHMvZmFzdC9qcy9rZGUvcmVzb3VyY2VzL2Z1bmN0aW9uLmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0xNzgsMTAgKzE3OCwxMyBAQCB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJnbG9iYWwgbmVzdCI7
CiAKIGZ1bmN0aW9uIG5lc3RlZF9vdXRlcigpIHsKIAorICB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJp
bm5lciBuZXN0IjsKKwogICBmdW5jdGlvbiBuZXN0ZWRfaW5uZXIoKSB7CiAgICAgcmV0dXJuIG5l
c3RfcHJvcGVydHk7CiAgIH0KIAorICByZXR1cm4gbmVzdGVkX2lubmVyOwogfQogCiBmdW5jdGlv
biBub3RfbmVzdGVkKCkgewpAQCAtMTkwLDkgKzE5Myw5IEBAIGZ1bmN0aW9uIG5vdF9uZXN0ZWQo
KSB7CiAKIG5lc3RlZF9vdXRlci5uZXN0X3Byb3BlcnR5ID0gIm91dGVyIG5lc3QiOwogCi12YXIg
bmVzdGVkID0gbmVzdGVkX291dGVyLm5lc3RlZF9pbm5lcjsKK3ZhciBuZXN0ZWQgPSBuZXN0ZWRf
b3V0ZXIoKTsKIHZhciBuZXN0ZWRyZXQgPSBuZXN0ZWQoKTsKLXNob3VsZEJlKCJuZXN0ZWRyZXQi
LCInb3V0ZXIgbmVzdCciKTsKK3Nob3VsZEJlKCJuZXN0ZWRyZXQiLCInaW5uZXIgbmVzdCciKTsK
IAogdmFyIG5vdF9uZXN0ZWRyZXQgPSBub3RfbmVzdGVkKCk7CiBzaG91bGRCZSgibm90X25lc3Rl
ZHJldCIsIidnbG9iYWwgbmVzdCciKTsK
</data>
<flag name="review"
          id="7012"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16605</attachid>
            <date>2007-10-09 15:24:56 -0700</date>
            <delta_ts>2007-10-09 15:24:56 -0700</delta_ts>
            <desc>Patch4</desc>
            <filename>patch-nested-function-scope.txt</filename>
            <type>text/plain</type>
            <size>7212</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2MTc1KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjYgQEAKKzIwMDctMTAtMDkgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIFJlbW92ZWQgc3VycHJpc2luZyBzZWxmLW5hbWVk
ICJoYWNrIiB0aGF0IG1hZGUgbmVzdGVkIGZ1bmN0aW9ucyAKKyAgICAgICAgYXZhaWxhYmxlIGFz
IG5hbWVkIHByb3BlcnRpZXMgb2YgdGhlaXIgY29udGFpbmluZyBmdW5jdGlvbnMsIGFuZCBwbGFj
ZWQKKyAgICAgICAgY29udGFpbmluZyBmdW5jdGlvbiBvYmplY3RzIGluIHRoZSBzY29wZSBjaGFp
bnMgb2YgbmVzdGVkIGZ1bmN0aW9ucy4KKyAgICAgICAgCisgICAgICAgIFRoZXJlIHdlcmUgYSBm
ZXcgcmVhc29ucyB0byByZW1vdmUgdGhpcyAiaGFjazoiCisKKyAgICAgICAgMS4gSXQgY29udHJh
ZGljdGVkIEZGLCBJRSwgYW5kIHRoZSBFQ01BIHNwZWMuCisKKyAgICAgICAgMi4gSXQgaW5jdXJy
ZWQgYSBwZXJmb3JtYW5jZSBwZW5hbHR5LCBzaW5jZSBtZXJlbHkgcGFyc2luZyBhIGZ1bmN0aW9u
IAorICAgICAgICByZXF1aXJlZCBwYXJzaW5nIGl0cyBib2R5IGZvciBuZXN0ZWQgZnVuY3Rpb25z
IChhbmQgc28gb24pLgorCisgICAgICAgIDMuIFNWTiBoaXN0b3J5IGNvbnRhaW5zIG5vIGV4cGxh
bmF0aW9uIGZvciB3aHkgaXQgd2FzIGFkZGVkLiBJdCB3YXMganVzdAorICAgICAgICBsZWdhY3kg
Y29kZSBpbiBhIGxhcmdlIG1lcmdlIGEgbG9uZywgbG9uZyB0aW1lIGFnby4KKworICAgICAgICBb
IFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNDg2OCBdCisKKyAgICAgICAgKiBranMvbm9kZXMuY3BwOgorICAgICAgICAoRnVuY0Rl
Y2xOb2RlOjpwcm9jZXNzRnVuY0RlY2wpOgorCiAyMDA3LTEwLTA5ICBMYXJzIEtub2xsICA8bGFy
c0B0cm9sbHRlY2guY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uLgpJbmRleDogSmF2
YVNjcmlwdENvcmUva2pzL25vZGVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9r
anMvbm9kZXMuY3BwCShyZXZpc2lvbiAyNTgxNSkKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9ub2Rl
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0ODMsMTcgKzI0ODMsNiBAQCB2b2lkIEZ1bmNEZWNs
Tm9kZTo6cHJvY2Vzc0Z1bmNEZWNsKEV4ZWNTCiAKICAgLy8gRUNNQSAxMC4yLjIKICAgY29udGV4
dC0+dmFyaWFibGVPYmplY3QoKS0+cHV0KGV4ZWMsIGlkZW50LCBmdW5jLCBJbnRlcm5hbCB8IChj
b250ZXh0LT5jb2RlVHlwZSgpID09IEV2YWxDb2RlID8gMCA6IERvbnREZWxldGUpKTsKLQotICBp
ZiAoYm9keSkgewotICAgIC8vIGhhY2sgdGhlIHNjb3BlIHNvIHRoYXQgdGhlIGZ1bmN0aW9uIGdl
dHMgcHV0IGFzIGEgcHJvcGVydHkgb2YgZnVuYywgYW5kIGl0J3Mgc2NvcGUKLSAgICAvLyBjb250
YWlucyB0aGUgZnVuYyBhcyB3ZWxsIGFzIG91ciBjdXJyZW50IHNjb3BlCi0gICAgSlNPYmplY3Qg
Km9sZFZhciA9IGNvbnRleHQtPnZhcmlhYmxlT2JqZWN0KCk7Ci0gICAgY29udGV4dC0+c2V0VmFy
aWFibGVPYmplY3QoZnVuYyk7Ci0gICAgY29udGV4dC0+cHVzaFNjb3BlKGZ1bmMpOwotICAgIGJv
ZHktPnByb2Nlc3NGdW5jRGVjbChleGVjKTsKLSAgICBjb250ZXh0LT5wb3BTY29wZSgpOwotICAg
IGNvbnRleHQtPnNldFZhcmlhYmxlT2JqZWN0KG9sZFZhcik7Ci0gIH0KIH0KIAogQ29tcGxldGlv
biBGdW5jRGVjbE5vZGU6OmV4ZWN1dGUoRXhlY1N0YXRlICopCkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
NjE3NSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIzIEBACisyMDA3LTEwLTA5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBS
ZW1vdmVkIHN1cnByaXNpbmcgc2VsZi1uYW1lZCAiaGFjayIgdGhhdCBtYWRlIG5lc3RlZCBmdW5j
dGlvbnMgCisgICAgICAgIGF2YWlsYWJsZSBhcyBuYW1lZCBwcm9wZXJ0aWVzIG9mIHRoZWlyIGNv
bnRhaW5pbmcgZnVuY3Rpb25zLCBhbmQgcGxhY2VkCisgICAgICAgIGNvbnRhaW5pbmcgZnVuY3Rp
b24gb2JqZWN0cyBpbiB0aGUgc2NvcGUgY2hhaW5zIG9mIG5lc3RlZCBmdW5jdGlvbnMuCisgICAg
ICAgIAorICAgICAgICBbIFBhdGNoIGJyb2tlbiBvZmYgZnJvbSBodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDg2OCBdCisKKyAgICAgICAgQ2hhbmdlZCB0aGlzIHRlc3Qg
dG8gcmVmbGVjdCBjb3JyZWN0IGJlaGF2aW9yOgorCisgICAgICAgICogZmFzdC9qcy9rZGUvZnVu
Y3Rpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMva2RlL3Jlc291cmNlcy9mdW5j
dGlvbi5qczoKKworICAgICAgICBBZGRlZCB0aGlzIHRlc3QgdG8gZmxlc2ggb3V0IHRoZSBiZWhh
dmlvciBtb3JlOgorCisgICAgICAgICogZmFzdC9qcy9uZXN0ZWQtZnVuY3Rpb24tc2NvcGUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29w
ZS5odG1sOiBBZGRlZC4KKwogMjAwNy0xMC0wOSAgTGFycyBLbm9sbCAgPGxhcnNAdHJvbGx0ZWNo
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbi4KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjAgQEAKK1RoaXMgcGFnZSB0ZXN0
cyBpc3N1ZXMgb2Ygc2NvcGUgd2l0aCBuZXN0ZWQgZnVuY3Rpb25zLgorCitCZWZvcmUgcGFyc2lu
ZyBmOgorLS0tLS0KK1BBU1M6IHR5cGVvZiBmIHNob3VsZCBiZSBmdW5jdGlvbiBhbmQgaXMuCitQ
QVNTOiB0eXBlb2YgZi5mMSBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBpcy4KKworQWZ0ZXIgcGFy
c2luZyBmLCBidXQgYmVmb3JlIGNhbGxpbmcgZjoKKy0tLS0tCitQQVNTOiB0eXBlb2YgZiBzaG91
bGQgYmUgZnVuY3Rpb24gYW5kIGlzLgorUEFTUzogdHlwZW9mIGYuZjEgc2hvdWxkIGJlIHVuZGVm
aW5lZCBhbmQgaXMuCisKK0luIGNhbGwgdG8gZjoKKy0tLS0tCitQQVNTOiB0eXBlb2YgZiBzaG91
bGQgYmUgZnVuY3Rpb24gYW5kIGlzLgorUEFTUzogdHlwZW9mIGYxIHNob3VsZCBiZSBmdW5jdGlv
biBhbmQgaXMuCitQQVNTOiB0eXBlb2YgZi5mMSBzaG91bGQgYmUgdW5kZWZpbmVkIGFuZCBpcy4K
K1BBU1M6IHR5cGVvZiB4IHNob3VsZCBiZSBudW1iZXIgYW5kIGlzLgorUEFTUzogdHlwZW9mIHkg
c2hvdWxkIGJlIHVuZGVmaW5lZCBhbmQgaXMuCisKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91
dFRlc3RzL2Zhc3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLWV4cGVjdGVkLnR4dApfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCk5hbWU6IHN2bjplb2wtc3R5bGUKICAgKyBuYXRpdmUKCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvanMvbmVzdGVkLWZ1bmN0aW9uLXNjb3BlLmh0bWwJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2pzL25lc3RlZC1mdW5jdGlvbi1zY29wZS5odG1sCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDQ5IEBACis8cD5UaGlzIHBhZ2UgdGVzdHMgaXNzdWVzIG9mIHNjb3BlIHdp
dGggbmVzdGVkIGZ1bmN0aW9ucy48L3A+Cis8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KKworPHNj
cmlwdD4KK2Z1bmN0aW9uIGxvZyhzKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
b25zb2xlIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocyArICJcclxuIikp
OworfQorCitmdW5jdGlvbiBzaG91bGRCZShldmFsQSwgYSwgYikKK3sKKyAgICBpZiAoZXZhbEEg
PT09IGIpIHsKKyAgICAgICAgbG9nKCJQQVNTOiAiICsgYSArICIgc2hvdWxkIGJlICIgKyBiICsg
IiBhbmQgaXMuIik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgbG9nKCJGQUlMOiAiICsgYSArICIg
c2hvdWxkIGJlICIgKyBiICsgIiBidXQgaW5zdGVhZCBpcyAiICsgZXZhbEEgKyAiLiIpOworICAg
IH0KK30KKworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKK2xvZygiQmVmb3JlIHBhcnNpbmcgZjoiKTsKK2xv
ZygiLS0tLS0iKTsKK3Nob3VsZEJlKHR5cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsK
K3Nob3VsZEJlKHR5cGVvZiBmLmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisKK2Z1
bmN0aW9uIGYoeCkKK3sKKyAgICBmdW5jdGlvbiBmMSgpIHsKKyAgICAgICAgbG9nKCJcclxuSW4g
Y2FsbCB0byBmOiIpOworICAgICAgICBsb2coIi0tLS0tIik7CisgICAgICAgIHNob3VsZEJlKHR5
cGVvZiBmLCAidHlwZW9mIGYiLCAiZnVuY3Rpb24iKTsKKyAgICAgICAgc2hvdWxkQmUodHlwZW9m
IGYxLCAidHlwZW9mIGYxIiwgImZ1bmN0aW9uIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVvZiBm
LmYxLCAidHlwZW9mIGYuZjEiLCAidW5kZWZpbmVkIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVv
ZiB4LCAidHlwZW9mIHgiLCAibnVtYmVyIik7CisgICAgICAgIHNob3VsZEJlKHR5cGVvZiB5LCAi
dHlwZW9mIHkiLCAidW5kZWZpbmVkIik7CisgICAgfQorCisgICAgZjEoKTsKK30KK2YueSA9IDE7
CisKK2xvZygiXHJcbkFmdGVyIHBhcnNpbmcgZiwgYnV0IGJlZm9yZSBjYWxsaW5nIGY6Iik7Cits
b2coIi0tLS0tIik7CitzaG91bGRCZSh0eXBlb2YgZiwgInR5cGVvZiBmIiwgImZ1bmN0aW9uIik7
CitzaG91bGRCZSh0eXBlb2YgZi5mMSwgInR5cGVvZiBmLmYxIiwgInVuZGVmaW5lZCIpOworCitm
KDEpOworPC9zY3JpcHQ+CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2pz
L25lc3RlZC1mdW5jdGlvbi1zY29wZS5odG1sCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTmFtZTogc3ZuOmVvbC1zdHls
ZQogICArIG5hdGl2ZQoKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvanMva2RlL2Z1bmN0aW9uLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2pzL2tkZS9mdW5jdGlv
bi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDI1ODE1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9qcy9r
ZGUvZnVuY3Rpb24tZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBA
IFBBU1Mgb3JnRnVuY0Nsb25lKCd3b3JsZCcpIGlzICdIZWxsbyB3b3IKIFBBU1MgZ3JvdXBDbG9u
ZSgxLCAyKSBpcyA5CiBQQVNTIFN0cmluZyhNYXRoLnNpbikgaXMgc2luU3RyCiBQQVNTIHNoYWRv
dygpIGlzIDIKLVBBU1MgbmVzdGVkcmV0IGlzICdvdXRlciBuZXN0JworUEFTUyBuZXN0ZWRyZXQg
aXMgJ2lubmVyIG5lc3QnCiBQQVNTIG5vdF9uZXN0ZWRyZXQgaXMgJ2dsb2JhbCBuZXN0JwogUEFT
UyBzYW1wbGUucHJvdG90eXBlLnByb3RvdHlwZSBpcyB1bmRlZmluZWQuCiBQQVNTIHNhbXBsZS5w
cm90b3R5cGUuY29uc3RydWN0b3IgPT0gc2FtcGxlIGlzIHRydWUKSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvanMva2RlL3Jlc291cmNlcy9mdW5jdGlvbi5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2pzL2tkZS9yZXNvdXJjZXMvZnVuY3Rpb24uanMJKHJldmlzaW9uIDI1ODE1KQor
KysgTGF5b3V0VGVzdHMvZmFzdC9qcy9rZGUvcmVzb3VyY2VzL2Z1bmN0aW9uLmpzCSh3b3JraW5n
IGNvcHkpCkBAIC0xNzgsMTAgKzE3OCwxMyBAQCB2YXIgbmVzdF9wcm9wZXJ0eSA9ICJnbG9iYWwg
bmVzdCI7CiAKIGZ1bmN0aW9uIG5lc3RlZF9vdXRlcigpIHsKIAorICB2YXIgbmVzdF9wcm9wZXJ0
eSA9ICJpbm5lciBuZXN0IjsKKwogICBmdW5jdGlvbiBuZXN0ZWRfaW5uZXIoKSB7CiAgICAgcmV0
dXJuIG5lc3RfcHJvcGVydHk7CiAgIH0KIAorICByZXR1cm4gbmVzdGVkX2lubmVyOwogfQogCiBm
dW5jdGlvbiBub3RfbmVzdGVkKCkgewpAQCAtMTkwLDkgKzE5Myw5IEBAIGZ1bmN0aW9uIG5vdF9u
ZXN0ZWQoKSB7CiAKIG5lc3RlZF9vdXRlci5uZXN0X3Byb3BlcnR5ID0gIm91dGVyIG5lc3QiOwog
Ci12YXIgbmVzdGVkID0gbmVzdGVkX291dGVyLm5lc3RlZF9pbm5lcjsKK3ZhciBuZXN0ZWQgPSBu
ZXN0ZWRfb3V0ZXIoKTsKIHZhciBuZXN0ZWRyZXQgPSBuZXN0ZWQoKTsKLXNob3VsZEJlKCJuZXN0
ZWRyZXQiLCInb3V0ZXIgbmVzdCciKTsKK3Nob3VsZEJlKCJuZXN0ZWRyZXQiLCInaW5uZXIgbmVz
dCciKTsKIAogdmFyIG5vdF9uZXN0ZWRyZXQgPSBub3RfbmVzdGVkKCk7CiBzaG91bGRCZSgibm90
X25lc3RlZHJldCIsIidnbG9iYWwgbmVzdCciKTsK
</data>
<flag name="review"
          id="7013"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>