<?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>40980</bug_id>
          
          <creation_ts>2010-06-22 04:34:50 -0700</creation_ts>
          <short_desc>Web Inspector: null is not properly handled when evaluated in console (V8 only)</short_desc>
          <delta_ts>2010-06-24 01:57:37 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Andrey Kosyakov">caseq</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>pfeldman</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>241214</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-22 04:34:50 -0700</bug_when>
    <thetext>Injected script does not handle evaluation of null values properly. 
  
&gt; null
TypeError: Cannot read property &apos;constructor&apos; of null</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241259</commentid>
    <comment_count>1</comment_count>
      <attachid>59369</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-22 08:22:15 -0700</bug_when>
    <thetext>Created attachment 59369
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241308</commentid>
    <comment_count>2</comment_count>
      <attachid>59384</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-22 10:03:28 -0700</bug_when>
    <thetext>Created attachment 59384
patch (more different types of objects added)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241392</commentid>
    <comment_count>3</comment_count>
      <attachid>59384</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-22 12:37:11 -0700</bug_when>
    <thetext>Comment on attachment 59384
patch (more different types of objects added)

WebCore/inspector/front-end/InjectedScript.js:604
 +              objectText = type;
So you always return &quot;function&quot; for functions that have poor toString. Old code was smarter (before it got regressed). It was doing Object.prototype.toString(obj) on objects like this (which was evolved into &quot;[object Function]&quot; or similar). Then, className was extracting the &quot;Function&quot; part. I think we should fix the regression in the InjectedScript._toString first (see Safari 4 code for that). Note that there were some reservations wrt Object lifetime that were making Object.prototype.toString call problematic.

Maybe we should simplify the code as you suggested, but I don&apos;t think returning &quot;function&quot; for all objects like this is a good idea.


WebCore/inspector/front-end/InjectedScript.js: 
 +          if (typeof obj !== &quot;object&quot;)
I think this will break chromium interactive tests. Take a look at r58956. I know that typeof null is in fact &quot;object&quot;, so the fix in r58956 itself was arguable. Probably this needs a more strict check such as  (obj === null || typeof obj !== &quot;object&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241414</commentid>
    <comment_count>4</comment_count>
      <attachid>59369</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-22 13:22:41 -0700</bug_when>
    <thetext>Comment on attachment 59369
patch

Cleared Yury Semikhatsky&apos;s review+ from obsolete attachment 59369 so that this bug does not appear in http://webkit.org/pending-commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241779</commentid>
    <comment_count>5</comment_count>
      <attachid>59497</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-23 02:58:21 -0700</bug_when>
    <thetext>Created attachment 59497
patch (fixed abbreviation, always use toString for all functions)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241782</commentid>
    <comment_count>6</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-23 03:02:45 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 59384 [details])
&gt; WebCore/inspector/front-end/InjectedScript.js:604
&gt;  +              objectText = type;
&gt; So you always return &quot;function&quot; for functions that have poor toString. Old code was smarter (before it got regressed). It was doing Object.prototype.toString(obj) on objects like this (which was evolved into &quot;[object Function]&quot; or similar). Then, className was extracting the &quot;Function&quot; part. I think we should fix the regression in the InjectedScript._toString first (see Safari 4 code for that). Note that there were some reservations wrt Object lifetime that were making Object.prototype.toString call problematic.
&gt; 
&gt; Maybe we should simplify the code as you suggested, but I don&apos;t think returning &quot;function&quot; for all objects like this is a good idea.

As agreed offline -- there&apos;s not much sense in displaying &quot;Function&quot; rather than &quot;function&quot; for some functions; We choose to use function&apos;s toString() whatever it is.

&gt; WebCore/inspector/front-end/InjectedScript.js: 
&gt;  +          if (typeof obj !== &quot;object&quot;)
&gt; I think this will break chromium interactive tests. Take a look at r58956. I know that typeof null is in fact &quot;object&quot;, so the fix in r58956 itself was arguable. Probably this needs a more strict check such as  (obj === null || typeof obj !== &quot;object&quot;)

I don&apos;t think so -- the problem was because we were calling _className always, without regard to what _type() returns. Now we only call it for objects, and only if these are not nulls (null is treated as special type &quot;null&quot; by _type()).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241805</commentid>
    <comment_count>7</comment_count>
      <attachid>59497</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-23 04:56:28 -0700</bug_when>
    <thetext>Comment on attachment 59497
patch (fixed abbreviation, always use toString for all functions)

WebCore/inspector/front-end/InjectedScript.js:604
 +              objectText = /.*/.exec(obj)[0].replace(/ +$/g, &quot;&quot;);
did you mean exec(objectText) here?

LayoutTests/inspector/console-tests-expected.txt:37
 +  console-tests.html:22null console-message console-js-source console-log-level
I would expect to see console-formatted-null in the list of styles.

LayoutTests/platform/chromium/inspector/console-tests-expected.txt:1
 +  CONSOLE MESSAGE: line 9: log
Given that there is a handful of mismatches wrt WebKit, I would extract them into separate test so that we could reuse most of the standard expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241834</commentid>
    <comment_count>8</comment_count>
      <attachid>59510</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2010-06-23 07:02:40 -0700</bug_when>
    <thetext>Created attachment 59510
patch (separated tests with platform-specific expectations, fixed nits)

Re adding styles for type-specific formatting to tests expectation -- we agreed not to do it now, as it is logically unrelated to this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241840</commentid>
    <comment_count>9</comment_count>
      <attachid>59510</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-06-23 07:15:51 -0700</bug_when>
    <thetext>Comment on attachment 59510
patch (separated tests with platform-specific expectations, fixed nits)

WebCore/inspector/front-end/InjectedScript.js:604
 +              objectText = /.*/.exec(objectText)[0].replace(/ +$/g, &quot;&quot;);
Please add a comment describing what the regexp does or better rewrite the code to make its intent clear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242383</commentid>
    <comment_count>10</comment_count>
      <attachid>59510</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-06-24 01:57:26 -0700</bug_when>
    <thetext>Comment on attachment 59510
patch (separated tests with platform-specific expectations, fixed nits)

Clearing flags on attachment: 59510

Committed r61748: &lt;http://trac.webkit.org/changeset/61748&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>242384</commentid>
    <comment_count>11</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-06-24 01:57:37 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59369</attachid>
            <date>2010-06-22 08:22:15 -0700</date>
            <delta_ts>2010-06-22 13:22:41 -0700</delta_ts>
            <desc>patch</desc>
            <filename>null.patch</filename>
            <type>text/plain</type>
            <size>5038</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTYxNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYtMjIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBGaXhlZCBldmFsdWF0aW9uICYgbG9nZ2luZyBvZiBudWxsIHZhbHVlcyBpbiBjb25zb2xlLgor
ICAgICAgICBDaGFuZ2VkIGhhbmRsaW5nIG9mIG51bGwgYW5kIHVuZGVmaW5lZCBpbiBTY3JpcHRW
YWx1ZTo6dG9TdHJpbmcoKQorICAgICAgICB0byBtYXRjaCBKU0MgYmluZGluZ3MgKGkuZS4gIm51
bGwiIGFuZCAidW5kZWZpbmVkIGluc3RlYWQgb2YgIiIpLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5ODAKKworICAgICAgICAqIGJpbmRpbmdzL3Y4
L1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdFZhbHVlOjp0b1N0cmlu
Zyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qczoKKyAg
ICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3IpOgorCiAyMDEwLTA2LTIyICBZdXRhIEtp
dGFtdXJhICA8eXV0YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFsZXhl
eSBQcm9za3VyeWFrb3YuCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkocmV2
aXNpb24gNjE2MDkpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBib29sIFNjcmlwdFZhbHVlOjpnZXRTdHJpbmco
U3RyaW5nJiByZXN1CiAKIFN0cmluZyBTY3JpcHRWYWx1ZTo6dG9TdHJpbmcoU2NyaXB0U3RhdGUq
KSBjb25zdAogewotICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbENoZWNrKG1fdmFs
dWUpOworICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmcobV92YWx1ZSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3Rl
ZFNjcmlwdC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5q
ZWN0ZWRTY3JpcHQuanMJKHJldmlzaW9uIDYxNjA5KQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0luamVjdGVkU2NyaXB0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC01ODUsMTQgKzU4NSwx
MyBAQCBJbmplY3RlZFNjcmlwdC5fdHlwZSA9IGZ1bmN0aW9uKG9iaikKIAogSW5qZWN0ZWRTY3Jp
cHQuX2Rlc2NyaWJlID0gZnVuY3Rpb24ob2JqLCBhYmJyZXZpYXRlZCkKIHsKLSAgICB2YXIgdHlw
ZTEgPSBJbmplY3RlZFNjcmlwdC5fdHlwZShvYmopOwotICAgIHZhciB0eXBlMiA9IEluamVjdGVk
U2NyaXB0Ll9jbGFzc05hbWUob2JqKTsKKyAgICB2YXIgdHlwZSA9IEluamVjdGVkU2NyaXB0Ll90
eXBlKG9iaik7CiAKLSAgICBzd2l0Y2ggKHR5cGUxKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAg
ICAgY2FzZSAib2JqZWN0IjoKICAgICBjYXNlICJub2RlIjoKICAgICBjYXNlICJhcnJheSI6Ci0g
ICAgICAgIHJldHVybiB0eXBlMjsKKyAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9jbGFz
c05hbWUob2JqKTsKICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICBpZiAoIWFiYnJldmlhdGVk
KQogICAgICAgICAgICAgcmV0dXJuIG9iajsKQEAgLTYwMiw5ICs2MDEsOSBAQCBJbmplY3RlZFNj
cmlwdC5fZGVzY3JpYmUgPSBmdW5jdGlvbihvYmosCiAgICAgY2FzZSAiZnVuY3Rpb24iOgogICAg
ICAgICB2YXIgb2JqZWN0VGV4dCA9IEluamVjdGVkU2NyaXB0Ll90b1N0cmluZyhvYmopOwogICAg
ICAgICBpZiAoIS9eZnVuY3Rpb24gLy50ZXN0KG9iamVjdFRleHQpKQotICAgICAgICAgICAgb2Jq
ZWN0VGV4dCA9ICh0eXBlMiA9PSAib2JqZWN0IikgPyB0eXBlMSA6IHR5cGUyOworICAgICAgICAg
ICAgb2JqZWN0VGV4dCA9IHR5cGU7CiAgICAgICAgIGVsc2UgaWYgKGFiYnJldmlhdGVkKQotICAg
ICAgICAgICAgb2JqZWN0VGV4dCA9IC8uKi8uZXhlYyhvYmopWzBdLnJlcGxhY2UoLyArJC9nLCAi
Iik7CisgICAgICAgICAgICBvYmplY3RUZXh0ID0gb2JqZWN0VGV4dC5yZXBsYWNlKC8gKyQvZywg
IiIpOwogICAgICAgICByZXR1cm4gb2JqZWN0VGV4dDsKICAgICBkZWZhdWx0OgogICAgICAgICBy
ZXR1cm4gSW5qZWN0ZWRTY3JpcHQuX3RvU3RyaW5nKG9iaik7CkBAIC02MjgsOSArNjI3LDcgQEAg
SW5qZWN0ZWRTY3JpcHQuX2NsYXNzTmFtZSA9IGZ1bmN0aW9uKG9iagogICAgICAgICByZXR1cm4g
c3RyLnJlcGxhY2UoL15cW29iamVjdCAoLiopXF0kL2ksICIkMSIpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIC8vIFY4Ci0gICAgICAgIGlmICh0eXBlb2Ygb2JqICE9PSAib2JqZWN0IikKLSAgICAg
ICAgICAgIHJldHVybiAibnVsbCI7Ci0gICAgICAgIHJldHVybiBvYmouY29uc3RydWN0b3IubmFt
ZSB8fCAiT2JqZWN0IjsKKyAgICAgICAgcmV0dXJuIG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29u
c3RydWN0b3IubmFtZSB8fCAiT2JqZWN0IjsKICAgICB9CiB9CiAKSW5kZXg6IExheW91dFRlc3Rz
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9u
IDYxNjE3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMTIgQEAKKzIwMTAtMDYtMjIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgQWRkZWQg
dGVzdHMgZm9yIGNvbnNvbGUubG9nKG51bGwpICYgY29uc29sZS5sb2codW5kZWZpbmVkKQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5ODAKKworICAg
ICAgICAqIGluc3BlY3Rvci9jb25zb2xlLXRlc3RzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvY29uc29sZS10ZXN0cy5odG1sOgorCiAyMDEwLTA2LTIyICBZdXJ5IFNlbWlraGF0
c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZl
bGRtYW4uCkluZGV4OiBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MTYwOSkKKysrIExheW91dFRlc3RzL2luc3BlY3Rvci9j
b25zb2xlLXRlc3RzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtOSw2ICs5LDggQEAg
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAogQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDE1OiByZXBlYXRlZAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAogQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDIwOiAxCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjI6IG51bGwKK0NP
TlNPTEUgTUVTU0FHRTogbGluZSAyMzogdW5kZWZpbmVkCiBUZXN0cyB0aGF0IGNvbnNvbGUgbG9n
Z2luZyBkdW1wcyBwcm9wZXIgbWVzc2FnZXMuCiAKIGNvbnNvbGUtdGVzdHMuaHRtbDo5bG9nIGNv
bnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbApAQCAtMjMs
NCArMjUsNiBAQCBjb25zb2xlLXRlc3RzLmh0bWw6MThncm91cCBjb25zb2xlLW1lc3NhCiAgY29u
c29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCiBjb25zb2xl
LXRlc3RzLmh0bWw6MjAxIDIgMyBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29u
c29sZS1sb2ctbGV2ZWwKIGNvbnNvbGUtdGVzdHMuaHRtbDoyMWdyb3VwQ29sbGFwc2VkIGNvbnNv
bGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbCBjb25zb2xlLWdy
b3VwLXRpdGxlCitjb25zb2xlLXRlc3RzLmh0bWw6MjJudWxsIGNvbnNvbGUtbWVzc2FnZSBjb25z
b2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjIzdW5k
ZWZpbmVkIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZl
bAogCkluZGV4OiBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLmh0bWwJKHJldmlz
aW9uIDYxNjA5KQorKysgTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTksNiArMTksOCBAQCBmdW5jdGlvbiBkb2l0KCkKICAgICBjb25z
b2xlLmdyb3VwRW5kKCk7CiAgICAgY29uc29sZS5sb2coJzEnLCAnMicsICczJyk7CiAgICAgY29u
c29sZS5ncm91cENvbGxhcHNlZCgnZ3JvdXBDb2xsYXBzZWQnKTsKKyAgICBjb25zb2xlLmxvZyhu
dWxsKTsKKyAgICBjb25zb2xlLmxvZyh1bmRlZmluZWQpOwogCiAgICAgZHVtcENvbnNvbGVNZXNz
YWdlc1dpdGhDbGFzc2VzKCk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59384</attachid>
            <date>2010-06-22 10:03:28 -0700</date>
            <delta_ts>2010-06-23 02:58:21 -0700</delta_ts>
            <desc>patch (more different types of objects added)</desc>
            <filename>null.patch</filename>
            <type>text/plain</type>
            <size>9375</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTYxOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYtMjIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBGaXhlZCBldmFsdWF0aW9uICYgbG9nZ2luZyBvZiBudWxsIHZhbHVlcyBpbiBjb25zb2xlLgor
ICAgICAgICBDaGFuZ2VkIGhhbmRsaW5nIG9mIG51bGwgYW5kIHVuZGVmaW5lZCBpbiBTY3JpcHRW
YWx1ZTo6dG9TdHJpbmcoKQorICAgICAgICB0byBtYXRjaCBKU0MgYmluZGluZ3MgKGkuZS4gIm51
bGwiIGFuZCAidW5kZWZpbmVkIGluc3RlYWQgb2YgIiIpLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5ODAKKworICAgICAgICAqIGJpbmRpbmdzL3Y4
L1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdFZhbHVlOjp0b1N0cmlu
Zyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qczoKKyAg
ICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3IpOgorCiAyMDEwLTA2LTA0ICBEaW1pdHJp
IEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkocmV2aXNp
b24gNjE2MDkpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBib29sIFNjcmlwdFZhbHVlOjpnZXRTdHJpbmcoU3Ry
aW5nJiByZXN1CiAKIFN0cmluZyBTY3JpcHRWYWx1ZTo6dG9TdHJpbmcoU2NyaXB0U3RhdGUqKSBj
b25zdAogewotICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbENoZWNrKG1fdmFsdWUp
OworICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmcobV92YWx1ZSk7CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNj
cmlwdC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0
ZWRTY3JpcHQuanMJKHJldmlzaW9uIDYxNjA5KQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0luamVjdGVkU2NyaXB0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC01ODUsMTQgKzU4NSwxMyBA
QCBJbmplY3RlZFNjcmlwdC5fdHlwZSA9IGZ1bmN0aW9uKG9iaikKIAogSW5qZWN0ZWRTY3JpcHQu
X2Rlc2NyaWJlID0gZnVuY3Rpb24ob2JqLCBhYmJyZXZpYXRlZCkKIHsKLSAgICB2YXIgdHlwZTEg
PSBJbmplY3RlZFNjcmlwdC5fdHlwZShvYmopOwotICAgIHZhciB0eXBlMiA9IEluamVjdGVkU2Ny
aXB0Ll9jbGFzc05hbWUob2JqKTsKKyAgICB2YXIgdHlwZSA9IEluamVjdGVkU2NyaXB0Ll90eXBl
KG9iaik7CiAKLSAgICBzd2l0Y2ggKHR5cGUxKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAg
Y2FzZSAib2JqZWN0IjoKICAgICBjYXNlICJub2RlIjoKICAgICBjYXNlICJhcnJheSI6Ci0gICAg
ICAgIHJldHVybiB0eXBlMjsKKyAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9jbGFzc05h
bWUob2JqKTsKICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICBpZiAoIWFiYnJldmlhdGVkKQog
ICAgICAgICAgICAgcmV0dXJuIG9iajsKQEAgLTYwMiw5ICs2MDEsOSBAQCBJbmplY3RlZFNjcmlw
dC5fZGVzY3JpYmUgPSBmdW5jdGlvbihvYmosCiAgICAgY2FzZSAiZnVuY3Rpb24iOgogICAgICAg
ICB2YXIgb2JqZWN0VGV4dCA9IEluamVjdGVkU2NyaXB0Ll90b1N0cmluZyhvYmopOwogICAgICAg
ICBpZiAoIS9eZnVuY3Rpb24gLy50ZXN0KG9iamVjdFRleHQpKQotICAgICAgICAgICAgb2JqZWN0
VGV4dCA9ICh0eXBlMiA9PSAib2JqZWN0IikgPyB0eXBlMSA6IHR5cGUyOworICAgICAgICAgICAg
b2JqZWN0VGV4dCA9IHR5cGU7CiAgICAgICAgIGVsc2UgaWYgKGFiYnJldmlhdGVkKQotICAgICAg
ICAgICAgb2JqZWN0VGV4dCA9IC8uKi8uZXhlYyhvYmopWzBdLnJlcGxhY2UoLyArJC9nLCAiIik7
CisgICAgICAgICAgICBvYmplY3RUZXh0ID0gb2JqZWN0VGV4dC5yZXBsYWNlKC8gKyQvZywgIiIp
OwogICAgICAgICByZXR1cm4gb2JqZWN0VGV4dDsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1
cm4gSW5qZWN0ZWRTY3JpcHQuX3RvU3RyaW5nKG9iaik7CkBAIC02MjgsOSArNjI3LDcgQEAgSW5q
ZWN0ZWRTY3JpcHQuX2NsYXNzTmFtZSA9IGZ1bmN0aW9uKG9iagogICAgICAgICByZXR1cm4gc3Ry
LnJlcGxhY2UoL15cW29iamVjdCAoLiopXF0kL2ksICIkMSIpOwogICAgIH0gZWxzZSB7CiAgICAg
ICAgIC8vIFY4Ci0gICAgICAgIGlmICh0eXBlb2Ygb2JqICE9PSAib2JqZWN0IikKLSAgICAgICAg
ICAgIHJldHVybiAibnVsbCI7Ci0gICAgICAgIHJldHVybiBvYmouY29uc3RydWN0b3IubmFtZSB8
fCAiT2JqZWN0IjsKKyAgICAgICAgcmV0dXJuIG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29uc3Ry
dWN0b3IubmFtZSB8fCAiT2JqZWN0IjsKICAgICB9CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDYx
NjE4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMTAtMDYtMjIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCB0
ZXN0cyBmb3IgY29uc29sZS5sb2cobnVsbCkgJiBjb25zb2xlLmxvZyh1bmRlZmluZWQpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDk4MAorCisgICAg
ICAgICogaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGlu
c3BlY3Rvci9jb25zb2xlLXRlc3RzLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0v
aW5zcGVjdG9yOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3Iv
Y29uc29sZS10ZXN0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorCiAyMDEwLTA2LTIyICBZdXJ5IFNl
bWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFBh
dmVsIEZlbGRtYW4uCkluZGV4OiBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUt
dGVzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA2MTYwOSkKKysrIExheW91dFRlc3RzL2luc3Bl
Y3Rvci9jb25zb2xlLXRlc3RzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtOSw2ICs5
LDE3IEBAIENPTlNPTEUgTUVTU0FHRTogbGluZSAxNTogcmVwZWF0ZWQKIENPTlNPTEUgTUVTU0FH
RTogbGluZSAxNTogcmVwZWF0ZWQKIENPTlNPTEUgTUVTU0FHRTogbGluZSAxNTogcmVwZWF0ZWQK
IENPTlNPTEUgTUVTU0FHRTogbGluZSAyMDogMQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDIyOiBu
dWxsCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IHVuZGVmaW5lZAorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDI0OiBbb2JqZWN0IEhUTUxEb2N1bWVudF0KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAy
NTogW29iamVjdCBEb2N1bWVudENvbnN0cnVjdG9yXQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI2
OiBmdW5jdGlvbiBjcmVhdGVFbGVtZW50KCkgeworICAgIFtuYXRpdmUgY29kZV0KK30KK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAyNzogZnVuY3Rpb24gKCkgeyB9CitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMjg6IGZ1bmN0aW9uIGYoKSB7IH0KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyOTogMSwyLDMK
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAzMDogL3JlZ2V4cC4qLwogVGVzdHMgdGhhdCBjb25zb2xl
IGxvZ2dpbmcgZHVtcHMgcHJvcGVyIG1lc3NhZ2VzLgogCiBjb25zb2xlLXRlc3RzLmh0bWw6OWxv
ZyBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKQEAg
LTIzLDQgKzM0LDE1IEBAIGNvbnNvbGUtdGVzdHMuaHRtbDoxOGdyb3VwIGNvbnNvbGUtbWVzc2EK
ICBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKIGNv
bnNvbGUtdGVzdHMuaHRtbDoyMDEgMiAzIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJj
ZSBjb25zb2xlLWxvZy1sZXZlbAogY29uc29sZS10ZXN0cy5odG1sOjIxZ3JvdXBDb2xsYXBzZWQg
Y29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsIGNvbnNv
bGUtZ3JvdXAtdGl0bGUKK2NvbnNvbGUtdGVzdHMuaHRtbDoyMm51bGwgY29uc29sZS1tZXNzYWdl
IGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6
MjN1bmRlZmluZWQgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9n
LWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjREb2N1bWVudCBjb25zb2xlLW1lc3NhZ2UgY29u
c29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyNURv
Y3VtZW50Q29uc3RydWN0b3IgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNv
bGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjZmdW5jdGlvbiBjcmVhdGVFbGVtZW50
KCkgeworICAgIFtuYXRpdmUgY29kZV0KK30gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291
cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjdmdW5jdGlvbiAoKSB7
IH0gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitj
b25zb2xlLXRlc3RzLmh0bWw6MjhmdW5jdGlvbiBmKCkgeyB9IGNvbnNvbGUtbWVzc2FnZSBjb25z
b2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjI5WzEs
IDIsIDNdIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZl
bAorY29uc29sZS10ZXN0cy5odG1sOjMwL3JlZ2V4cC4qLyBjb25zb2xlLW1lc3NhZ2UgY29uc29s
ZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKIApJbmRleDogTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL2NvbnNvbGUtdGVzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbnNwZWN0
b3IvY29uc29sZS10ZXN0cy5odG1sCShyZXZpc2lvbiA2MTYwOSkKKysrIExheW91dFRlc3RzL2lu
c3BlY3Rvci9jb25zb2xlLXRlc3RzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDE1
IEBAIGZ1bmN0aW9uIGRvaXQoKQogICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTsKICAgICBjb25zb2xl
LmxvZygnMScsICcyJywgJzMnKTsKICAgICBjb25zb2xlLmdyb3VwQ29sbGFwc2VkKCdncm91cENv
bGxhcHNlZCcpOwotCisgICAgY29uc29sZS5sb2cobnVsbCk7CisgICAgY29uc29sZS5sb2codW5k
ZWZpbmVkKTsKKyAgICBjb25zb2xlLmxvZyhkb2N1bWVudCk7CisgICAgY29uc29sZS5sb2coRG9j
dW1lbnQpOworICAgIGNvbnNvbGUubG9nKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQpOworICAgIGNv
bnNvbGUubG9nKGZ1bmN0aW9uKCkgeyB9KTsKKyAgICBjb25zb2xlLmxvZyhmdW5jdGlvbiBmKCkg
eyB9KTsKKyAgICBjb25zb2xlLmxvZyhbMSwgMiwgM10pOworICAgIGNvbnNvbGUubG9nKC9yZWdl
eHAuKi8pOwogICAgIGR1bXBDb25zb2xlTWVzc2FnZXNXaXRoQ2xhc3NlcygpOwogfQogCkluZGV4
OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0v
aW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQzIEBACitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgOTogbG9nCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTA6IGRlYnVnCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTE6IGluZm8KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMjogd2FybgorQ09OU09M
RSBNRVNTQUdFOiBsaW5lIDEzOiBlcnJvcgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBl
YXRlZAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAorQ09OU09MRSBNRVNTQUdF
OiBsaW5lIDE1OiByZXBlYXRlZAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDIwOiAxCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjI6IG51bGwKK0NPTlNPTEUgTUVTU0FHRTog
bGluZSAyMzogdW5kZWZpbmVkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjQ6IFtvYmplY3QgSFRN
TERvY3VtZW50XQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI1OiBmdW5jdGlvbiBEb2N1bWVudCgp
IHsgW25hdGl2ZSBjb2RlXSB9CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjY6IGZ1bmN0aW9uIGNy
ZWF0ZUVsZW1lbnQoKSB7IFtuYXRpdmUgY29kZV0gfQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI3
OiBmdW5jdGlvbiAoKSB7IH0KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyODogZnVuY3Rpb24gZigp
IHsgfQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI5OiAxLDIsMworQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDMwOiAvcmVnZXhwLiovCitUZXN0cyB0aGF0IGNvbnNvbGUgbG9nZ2luZyBkdW1wcyBwcm9w
ZXIgbWVzc2FnZXMuCisKK2NvbnNvbGUtdGVzdHMuaHRtbDo5bG9nIGNvbnNvbGUtbWVzc2FnZSBj
b25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjEw
ZGVidWcgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVs
Citjb25zb2xlLXRlc3RzLmh0bWw6MTFpbmZvIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNv
dXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjEyd2FybiBjb25zb2xl
LW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS13YXJuaW5nLWxldmVsCitjb25zb2xl
LXRlc3RzLmh0bWw6MTNlcnJvciBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29u
c29sZS1lcnJvci1sZXZlbAorNWNvbnNvbGUtdGVzdHMuaHRtbDoxNXJlcGVhdGVkIGNvbnNvbGUt
bWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbCByZXBlYXRlZC1tZXNz
YWdlCitjb25zb2xlLXRlc3RzLmh0bWw6MTdjb3VudDogMSBjb25zb2xlLW1lc3NhZ2UgY29uc29s
ZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoxN2NvdW50
OiAyIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAor
Y29uc29sZS10ZXN0cy5odG1sOjE4Z3JvdXAgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291
cmNlIGNvbnNvbGUtbG9nLWxldmVsIGNvbnNvbGUtZ3JvdXAtdGl0bGUKKyBjb25zb2xlLW1lc3Nh
Z2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRt
bDoyMDEgMiAzIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1s
ZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjIxZ3JvdXBDb2xsYXBzZWQgY29uc29sZS1tZXNzYWdl
IGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsIGNvbnNvbGUtZ3JvdXAtdGl0bGUK
K2NvbnNvbGUtdGVzdHMuaHRtbDoyMm51bGwgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291
cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjN1bmRlZmluZWQgY29u
c29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xl
LXRlc3RzLmh0bWw6MjREb2N1bWVudCBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2Ug
Y29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyNWZ1bmN0aW9uIERvY3VtZW50
KCkgeyBbbmF0aXZlIGNvZGVdIH0gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNv
bnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjZmdW5jdGlvbiBjcmVhdGVFbGVt
ZW50KCkgeyBbbmF0aXZlIGNvZGVdIH0gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNl
IGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjdmdW5jdGlvbiAoKSB7IH0g
Y29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25z
b2xlLXRlc3RzLmh0bWw6MjhmdW5jdGlvbiBmKCkgeyB9IGNvbnNvbGUtbWVzc2FnZSBjb25zb2xl
LWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjI5WzEsIDIs
IDNdIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAor
Y29uc29sZS10ZXN0cy5odG1sOjMwL3JlZ2V4cC4qLyBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1q
cy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwK
</data>
<flag name="review"
          id="46207"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59497</attachid>
            <date>2010-06-23 02:58:21 -0700</date>
            <delta_ts>2010-06-23 07:02:40 -0700</delta_ts>
            <desc>patch (fixed abbreviation, always use toString for all functions)</desc>
            <filename>null.patch</filename>
            <type>text/plain</type>
            <size>9299</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTYxOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYtMjIgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBGaXhlZCBldmFsdWF0aW9uICYgbG9nZ2luZyBvZiBudWxsIHZhbHVlcyBpbiBjb25zb2xlLgor
ICAgICAgICBDaGFuZ2VkIGhhbmRsaW5nIG9mIG51bGwgYW5kIHVuZGVmaW5lZCBpbiBTY3JpcHRW
YWx1ZTo6dG9TdHJpbmcoKQorICAgICAgICB0byBtYXRjaCBKU0MgYmluZGluZ3MgKGkuZS4gIm51
bGwiIGFuZCAidW5kZWZpbmVkIGluc3RlYWQgb2YgIiIpLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA5ODAKKworICAgICAgICAqIGJpbmRpbmdzL3Y4
L1NjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdFZhbHVlOjp0b1N0cmlu
Zyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qczoKKyAg
ICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3IpOgorCiAyMDEwLTA2LTA0ICBEaW1pdHJp
IEdsYXprb3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkocmV2aXNp
b24gNjE2MDkpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBib29sIFNjcmlwdFZhbHVlOjpnZXRTdHJpbmcoU3Ry
aW5nJiByZXN1CiAKIFN0cmluZyBTY3JpcHRWYWx1ZTo6dG9TdHJpbmcoU2NyaXB0U3RhdGUqKSBj
b25zdAogewotICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbENoZWNrKG1fdmFsdWUp
OworICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmcobV92YWx1ZSk7CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNj
cmlwdC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0
ZWRTY3JpcHQuanMJKHJldmlzaW9uIDYxNjA5KQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0luamVjdGVkU2NyaXB0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC01ODUsMTQgKzU4NSwxMyBA
QCBJbmplY3RlZFNjcmlwdC5fdHlwZSA9IGZ1bmN0aW9uKG9iaikKIAogSW5qZWN0ZWRTY3JpcHQu
X2Rlc2NyaWJlID0gZnVuY3Rpb24ob2JqLCBhYmJyZXZpYXRlZCkKIHsKLSAgICB2YXIgdHlwZTEg
PSBJbmplY3RlZFNjcmlwdC5fdHlwZShvYmopOwotICAgIHZhciB0eXBlMiA9IEluamVjdGVkU2Ny
aXB0Ll9jbGFzc05hbWUob2JqKTsKKyAgICB2YXIgdHlwZSA9IEluamVjdGVkU2NyaXB0Ll90eXBl
KG9iaik7CiAKLSAgICBzd2l0Y2ggKHR5cGUxKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAgICAg
Y2FzZSAib2JqZWN0IjoKICAgICBjYXNlICJub2RlIjoKICAgICBjYXNlICJhcnJheSI6Ci0gICAg
ICAgIHJldHVybiB0eXBlMjsKKyAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9jbGFzc05h
bWUob2JqKTsKICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICBpZiAoIWFiYnJldmlhdGVkKQog
ICAgICAgICAgICAgcmV0dXJuIG9iajsKQEAgLTYwMSw5ICs2MDAsNyBAQCBJbmplY3RlZFNjcmlw
dC5fZGVzY3JpYmUgPSBmdW5jdGlvbihvYmosCiAgICAgICAgIHJldHVybiAiXCIiICsgb2JqICsg
IlwiIjsKICAgICBjYXNlICJmdW5jdGlvbiI6CiAgICAgICAgIHZhciBvYmplY3RUZXh0ID0gSW5q
ZWN0ZWRTY3JpcHQuX3RvU3RyaW5nKG9iaik7Ci0gICAgICAgIGlmICghL15mdW5jdGlvbiAvLnRl
c3Qob2JqZWN0VGV4dCkpCi0gICAgICAgICAgICBvYmplY3RUZXh0ID0gKHR5cGUyID09ICJvYmpl
Y3QiKSA/IHR5cGUxIDogdHlwZTI7Ci0gICAgICAgIGVsc2UgaWYgKGFiYnJldmlhdGVkKQorICAg
ICAgICBpZiAoYWJicmV2aWF0ZWQpCiAgICAgICAgICAgICBvYmplY3RUZXh0ID0gLy4qLy5leGVj
KG9iailbMF0ucmVwbGFjZSgvICskL2csICIiKTsKICAgICAgICAgcmV0dXJuIG9iamVjdFRleHQ7
CiAgICAgZGVmYXVsdDoKQEAgLTYyOCw5ICs2MjUsNyBAQCBJbmplY3RlZFNjcmlwdC5fY2xhc3NO
YW1lID0gZnVuY3Rpb24ob2JqCiAgICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgvXlxbb2JqZWN0
ICguKilcXSQvaSwgIiQxIik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gVjgKLSAgICAgICAg
aWYgKHR5cGVvZiBvYmogIT09ICJvYmplY3QiKQotICAgICAgICAgICAgcmV0dXJuICJudWxsIjsK
LSAgICAgICAgcmV0dXJuIG9iai5jb25zdHJ1Y3Rvci5uYW1lIHx8ICJPYmplY3QiOworICAgICAg
ICByZXR1cm4gb2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3Rvci5uYW1lIHx8ICJPYmpl
Y3QiOwogICAgIH0KIH0KIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjE2MTgpCisrKyBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0wNi0yMiAg
QW5kcmV5IEtvc3lha292ICA8Y2FzZXFAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBjb25zb2xlLmxv
ZyhudWxsKSAmIGNvbnNvbGUubG9nKHVuZGVmaW5lZCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTgwCisKKyAgICAgICAgKiBpbnNwZWN0b3IvY29u
c29sZS10ZXN0cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL2NvbnNvbGUtdGVz
dHMuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3I6IEFkZGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisKIDIwMTAtMDYtMjIgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0Bj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KSW5kZXg6
IExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDYxNjA5KQorKysgTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC05LDYgKzksMTcgQEAgQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE1OiByZXBlYXRlZAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRl
ZAogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1OiByZXBlYXRlZAogQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDIwOiAxCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjI6IG51bGwKK0NPTlNPTEUgTUVTU0FH
RTogbGluZSAyMzogdW5kZWZpbmVkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjQ6IFtvYmplY3Qg
SFRNTERvY3VtZW50XQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI1OiBbb2JqZWN0IERvY3VtZW50
Q29uc3RydWN0b3JdCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjY6IGZ1bmN0aW9uIGNyZWF0ZUVs
ZW1lbnQoKSB7CisgICAgW25hdGl2ZSBjb2RlXQorfQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI3
OiBmdW5jdGlvbiAoKSB7IH0KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyODogZnVuY3Rpb24gZigp
IHsgfQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI5OiAxLDIsMworQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDMwOiAvcmVnZXhwLiovCiBUZXN0cyB0aGF0IGNvbnNvbGUgbG9nZ2luZyBkdW1wcyBwcm9w
ZXIgbWVzc2FnZXMuCiAKIGNvbnNvbGUtdGVzdHMuaHRtbDo5bG9nIGNvbnNvbGUtbWVzc2FnZSBj
b25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbApAQCAtMjMsNCArMzQsMTUgQEAgY29u
c29sZS10ZXN0cy5odG1sOjE4Z3JvdXAgY29uc29sZS1tZXNzYQogIGNvbnNvbGUtbWVzc2FnZSBj
b25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAogY29uc29sZS10ZXN0cy5odG1sOjIw
MSAyIDMgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVs
CiBjb25zb2xlLXRlc3RzLmh0bWw6MjFncm91cENvbGxhcHNlZCBjb25zb2xlLW1lc3NhZ2UgY29u
c29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwgY29uc29sZS1ncm91cC10aXRsZQorY29u
c29sZS10ZXN0cy5odG1sOjIybnVsbCBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2Ug
Y29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyM3VuZGVmaW5lZCBjb25zb2xl
LW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVz
dHMuaHRtbDoyNERvY3VtZW50IGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25z
b2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjI1RG9jdW1lbnRDb25zdHJ1Y3RvciBj
b25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNv
bGUtdGVzdHMuaHRtbDoyNmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQoKSB7CisgICAgW25hdGl2ZSBj
b2RlXQorfSBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2
ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyN2Z1bmN0aW9uICgpIHsgfSBjb25zb2xlLW1lc3NhZ2Ug
Y29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoy
OGZ1bmN0aW9uIGYoKSB7IH0gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNv
bGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjlbMSwgMiwgM10gY29uc29sZS1tZXNz
YWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0
bWw6MzAvcmVnZXhwLiovIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xl
LWxvZy1sZXZlbAogCkluZGV4OiBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLmh0
bWwJKHJldmlzaW9uIDYxNjA5KQorKysgTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVz
dHMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTksNyArMTksMTUgQEAgZnVuY3Rpb24gZG9pdCgp
CiAgICAgY29uc29sZS5ncm91cEVuZCgpOwogICAgIGNvbnNvbGUubG9nKCcxJywgJzInLCAnMycp
OwogICAgIGNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQoJ2dyb3VwQ29sbGFwc2VkJyk7Ci0KKyAgICBj
b25zb2xlLmxvZyhudWxsKTsKKyAgICBjb25zb2xlLmxvZyh1bmRlZmluZWQpOworICAgIGNvbnNv
bGUubG9nKGRvY3VtZW50KTsKKyAgICBjb25zb2xlLmxvZyhEb2N1bWVudCk7CisgICAgY29uc29s
ZS5sb2coZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7CisgICAgY29uc29sZS5sb2coZnVuY3Rpb24o
KSB7IH0pOworICAgIGNvbnNvbGUubG9nKGZ1bmN0aW9uIGYoKSB7IH0pOworICAgIGNvbnNvbGUu
bG9nKFsxLCAyLCAzXSk7CisgICAgY29uc29sZS5sb2coL3JlZ2V4cC4qLyk7CiAgICAgZHVtcENv
bnNvbGVNZXNzYWdlc1dpdGhDbGFzc2VzKCk7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3IvY29uc29sZS10
ZXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9j
aHJvbWl1bS9pbnNwZWN0b3IvY29uc29sZS10ZXN0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsNDMgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSA5OiBsb2cKK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxMDogZGVidWcKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMTogaW5mbwor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDEyOiB3YXJuCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTM6
IGVycm9yCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTU6IHJlcGVhdGVkCitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMTU6IHJlcGVhdGVkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTU6IHJlcGVhdGVk
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTU6IHJlcGVhdGVkCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMTU6IHJlcGVhdGVkCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjA6IDEKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAyMjogbnVsbAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDIzOiB1bmRlZmluZWQK
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNDogW29iamVjdCBIVE1MRG9jdW1lbnRdCitDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMjU6IGZ1bmN0aW9uIERvY3VtZW50KCkgeyBbbmF0aXZlIGNvZGVdIH0K
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNjogZnVuY3Rpb24gY3JlYXRlRWxlbWVudCgpIHsgW25h
dGl2ZSBjb2RlXSB9CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjc6IGZ1bmN0aW9uICgpIHsgfQor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDI4OiBmdW5jdGlvbiBmKCkgeyB9CitDT05TT0xFIE1FU1NB
R0U6IGxpbmUgMjk6IDEsMiwzCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzA6IC9yZWdleHAuKi8K
K1Rlc3RzIHRoYXQgY29uc29sZSBsb2dnaW5nIGR1bXBzIHByb3BlciBtZXNzYWdlcy4KKworY29u
c29sZS10ZXN0cy5odG1sOjlsb2cgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNv
bnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MTBkZWJ1ZyBjb25zb2xlLW1lc3Nh
Z2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRt
bDoxMWluZm8gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxl
dmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MTJ3YXJuIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpz
LXNvdXJjZSBjb25zb2xlLXdhcm5pbmctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoxM2Vycm9y
IGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWVycm9yLWxldmVsCis1
Y29uc29sZS10ZXN0cy5odG1sOjE1cmVwZWF0ZWQgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMt
c291cmNlIGNvbnNvbGUtbG9nLWxldmVsIHJlcGVhdGVkLW1lc3NhZ2UKK2NvbnNvbGUtdGVzdHMu
aHRtbDoxN2NvdW50OiAxIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xl
LWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjE3Y291bnQ6IDIgY29uc29sZS1tZXNzYWdl
IGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6
MThncm91cCBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2
ZWwgY29uc29sZS1ncm91cC10aXRsZQorIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJj
ZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjIwMSAyIDMgY29uc29sZS1t
ZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3Rz
Lmh0bWw6MjFncm91cENvbGxhcHNlZCBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2Ug
Y29uc29sZS1sb2ctbGV2ZWwgY29uc29sZS1ncm91cC10aXRsZQorY29uc29sZS10ZXN0cy5odG1s
OjIybnVsbCBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2
ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyM3VuZGVmaW5lZCBjb25zb2xlLW1lc3NhZ2UgY29uc29s
ZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyNERvY3Vt
ZW50IGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAor
Y29uc29sZS10ZXN0cy5odG1sOjI1ZnVuY3Rpb24gRG9jdW1lbnQoKSB7IFtuYXRpdmUgY29kZV0g
fSBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2Nv
bnNvbGUtdGVzdHMuaHRtbDoyNmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQoKSB7IFtuYXRpdmUgY29k
ZV0gfSBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwK
K2NvbnNvbGUtdGVzdHMuaHRtbDoyN2Z1bmN0aW9uICgpIHsgfSBjb25zb2xlLW1lc3NhZ2UgY29u
c29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyOGZ1
bmN0aW9uIGYoKSB7IH0gY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUt
bG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjlbMSwgMiwgM10gY29uc29sZS1tZXNzYWdl
IGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6
MzAvcmVnZXhwLiovIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxv
Zy1sZXZlbAo=
</data>
<flag name="review"
          id="46388"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59510</attachid>
            <date>2010-06-23 07:02:40 -0700</date>
            <delta_ts>2010-06-24 01:57:26 -0700</delta_ts>
            <desc>patch (separated tests with platform-specific expectations, fixed nits)</desc>
            <filename>null.patch</filename>
            <type>text/plain</type>
            <size>8148</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTY4NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYtMjMgIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBGaXhlZCBldmFsdWF0aW9uICYgbG9nZ2luZyBvZiBudWxsIHZhbHVlcyBpbiBjb25zb2xlLgor
ICAgICAgICBDaGFuZ2VkIGhhbmRsaW5nIG9mIG51bGwgYW5kIHVuZGVmaW5lZCBpbiBTY3JpcHRW
YWx1ZTo6dG9TdHJpbmcoKQorICAgICAgICB0byBtYXRjaCBKU0MgYmluZGluZ3MgKGkuZS4gIm51
bGwiIGFuZCAidW5kZWZpbmVkIiBpbnN0ZWFkIG9mICIiKS4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTgwCisKKyAgICAgICAgKiBiaW5kaW5ncy92
OC9TY3JpcHRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRWYWx1ZTo6dG9TdHJp
bmcpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRTY3JpcHQuanM6Cisg
ICAgICAgIChpbmplY3RlZFNjcmlwdENvbnN0cnVjdG9yKToKKwogMjAxMC0wNi0yMyAgTWlraGFp
bCBOYWdhbm92ICA8bW5hZ2Fub3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IFBhdmVsIEZlbGRtYW4uCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkocmV2
aXNpb24gNjE2MDkpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdFZhbHVlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjMsNyArNjMsNyBAQCBib29sIFNjcmlwdFZhbHVlOjpnZXRTdHJpbmco
U3RyaW5nJiByZXN1CiAKIFN0cmluZyBTY3JpcHRWYWx1ZTo6dG9TdHJpbmcoU2NyaXB0U3RhdGUq
KSBjb25zdAogewotICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbENoZWNrKG1fdmFs
dWUpOworICAgIHJldHVybiB0b1dlYkNvcmVTdHJpbmcobV92YWx1ZSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3Rl
ZFNjcmlwdC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5q
ZWN0ZWRTY3JpcHQuanMJKHJldmlzaW9uIDYxNjA5KQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0luamVjdGVkU2NyaXB0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC01ODUsMTQgKzU4NSwx
MyBAQCBJbmplY3RlZFNjcmlwdC5fdHlwZSA9IGZ1bmN0aW9uKG9iaikKIAogSW5qZWN0ZWRTY3Jp
cHQuX2Rlc2NyaWJlID0gZnVuY3Rpb24ob2JqLCBhYmJyZXZpYXRlZCkKIHsKLSAgICB2YXIgdHlw
ZTEgPSBJbmplY3RlZFNjcmlwdC5fdHlwZShvYmopOwotICAgIHZhciB0eXBlMiA9IEluamVjdGVk
U2NyaXB0Ll9jbGFzc05hbWUob2JqKTsKKyAgICB2YXIgdHlwZSA9IEluamVjdGVkU2NyaXB0Ll90
eXBlKG9iaik7CiAKLSAgICBzd2l0Y2ggKHR5cGUxKSB7CisgICAgc3dpdGNoICh0eXBlKSB7CiAg
ICAgY2FzZSAib2JqZWN0IjoKICAgICBjYXNlICJub2RlIjoKICAgICBjYXNlICJhcnJheSI6Ci0g
ICAgICAgIHJldHVybiB0eXBlMjsKKyAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Ll9jbGFz
c05hbWUob2JqKTsKICAgICBjYXNlICJzdHJpbmciOgogICAgICAgICBpZiAoIWFiYnJldmlhdGVk
KQogICAgICAgICAgICAgcmV0dXJuIG9iajsKQEAgLTYwMSwxMCArNjAwLDggQEAgSW5qZWN0ZWRT
Y3JpcHQuX2Rlc2NyaWJlID0gZnVuY3Rpb24ob2JqLAogICAgICAgICByZXR1cm4gIlwiIiArIG9i
aiArICJcIiI7CiAgICAgY2FzZSAiZnVuY3Rpb24iOgogICAgICAgICB2YXIgb2JqZWN0VGV4dCA9
IEluamVjdGVkU2NyaXB0Ll90b1N0cmluZyhvYmopOwotICAgICAgICBpZiAoIS9eZnVuY3Rpb24g
Ly50ZXN0KG9iamVjdFRleHQpKQotICAgICAgICAgICAgb2JqZWN0VGV4dCA9ICh0eXBlMiA9PSAi
b2JqZWN0IikgPyB0eXBlMSA6IHR5cGUyOwotICAgICAgICBlbHNlIGlmIChhYmJyZXZpYXRlZCkK
LSAgICAgICAgICAgIG9iamVjdFRleHQgPSAvLiovLmV4ZWMob2JqKVswXS5yZXBsYWNlKC8gKyQv
ZywgIiIpOworICAgICAgICBpZiAoYWJicmV2aWF0ZWQpCisgICAgICAgICAgICBvYmplY3RUZXh0
ID0gLy4qLy5leGVjKG9iamVjdFRleHQpWzBdLnJlcGxhY2UoLyArJC9nLCAiIik7CiAgICAgICAg
IHJldHVybiBvYmplY3RUZXh0OwogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBJbmplY3Rl
ZFNjcmlwdC5fdG9TdHJpbmcob2JqKTsKQEAgLTYyOCw5ICs2MjUsNyBAQCBJbmplY3RlZFNjcmlw
dC5fY2xhc3NOYW1lID0gZnVuY3Rpb24ob2JqCiAgICAgICAgIHJldHVybiBzdHIucmVwbGFjZSgv
Xlxbb2JqZWN0ICguKilcXSQvaSwgIiQxIik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gVjgK
LSAgICAgICAgaWYgKHR5cGVvZiBvYmogIT09ICJvYmplY3QiKQotICAgICAgICAgICAgcmV0dXJu
ICJudWxsIjsKLSAgICAgICAgcmV0dXJuIG9iai5jb25zdHJ1Y3Rvci5uYW1lIHx8ICJPYmplY3Qi
OworICAgICAgICByZXR1cm4gb2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3Rvci5uYW1l
IHx8ICJPYmplY3QiOwogICAgIH0KIH0KIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNjE2ODQpCisrKyBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAx
MC0wNi0yMyAgQW5kcmV5IEtvc3lha292ICA8Y2FzZXFAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBy
ZXByZXNlbnRhdGlvbiBvZiB2YXJpb3VzIEpTIHZhbHVlcyBpbiBjb25zb2xlIGxvZy4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTgwCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvY29uc29sZS1sb2ctbmF0aXZlLWZ1bmNzLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGluc3BlY3Rvci9jb25zb2xlLXRlc3RzLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0vaW5zcGVjdG9yOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9p
bnNwZWN0b3IvY29uc29sZS1sb2ctbmF0aXZlLWZ1bmNzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisK
IDIwMTAtMDYtMjMgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CiAK
ICAgICAgICAgTm90IHJldmlld2VkLiBGb3Jnb3QgdG8gdXBkYXRlIHJlc3VsdCBvZiBmYXN0L3hw
YXRoL25hbWVzcGFjZS12cy1wcmVkaWNhdGUuaHRtbCBhZnRlciB0aGUgU1ZHIHJlbmRlcmVyIGNy
ZWF0aW9uIGNoYW5nZXMuCkluZGV4OiBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS1sb2ct
bmF0aXZlLWZ1bmNzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvY29uc29sZS1sb2ctbmF0aXZlLWZ1bmNzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xlLWxvZy1uYXRpdmUtZnVuY3MtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgOTogW29iamVjdCBEb2N1bWVudENvbnN0cnVjdG9yXQorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDEwOiBmdW5jdGlvbiBjcmVhdGVFbGVtZW50KCkgeworICAgIFtuYXRpdmUgY29kZV0KK30KK1Rl
c3RzIHRoYXQgY29uc29sZSBsb2dnaW5nIGR1bXBzIHByb3BlciBtZXNzYWdlcy4KKworY29uc29s
ZS1sb2ctbmF0aXZlLWZ1bmNzLmh0bWw6OURvY3VtZW50Q29uc3RydWN0b3IgY29uc29sZS1tZXNz
YWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLWxvZy1uYXRp
dmUtZnVuY3MuaHRtbDoxMGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQoKSB7CisgICAgW25hdGl2ZSBj
b2RlXQorfSBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2
ZWwKKwpJbmRleDogTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVzdHMtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xlLXRlc3RzLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gNjE2MDkpCisrKyBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29u
c29sZS10ZXN0cy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTksNiArOSwxNiBAQCBD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMTU6IHJlcGVhdGVkCiBDT05TT0xFIE1FU1NBR0U6IGxpbmUg
MTU6IHJlcGVhdGVkCiBDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTU6IHJlcGVhdGVkCiBDT05TT0xF
IE1FU1NBR0U6IGxpbmUgMjA6IDEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyMjogW29iamVjdCBP
YmplY3RdCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjM6IDQyCitDT05TT0xFIE1FU1NBR0U6IGxp
bmUgMjQ6IHRydWUKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNTogbnVsbAorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDI2OiB1bmRlZmluZWQKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAyNzogW29iamVj
dCBIVE1MRG9jdW1lbnRdCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMjg6IGZ1bmN0aW9uICgpIHsg
fQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDI5OiBmdW5jdGlvbiBmKCkgeyB9CitDT05TT0xFIE1F
U1NBR0U6IGxpbmUgMzA6IDEsMiwzCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzE6IC9yZWdleHAu
Ki8KIFRlc3RzIHRoYXQgY29uc29sZSBsb2dnaW5nIGR1bXBzIHByb3BlciBtZXNzYWdlcy4KIAog
Y29uc29sZS10ZXN0cy5odG1sOjlsb2cgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNl
IGNvbnNvbGUtbG9nLWxldmVsCkBAIC0yMyw0ICszMywxNCBAQCBjb25zb2xlLXRlc3RzLmh0bWw6
MThncm91cCBjb25zb2xlLW1lc3NhCiAgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNl
IGNvbnNvbGUtbG9nLWxldmVsCiBjb25zb2xlLXRlc3RzLmh0bWw6MjAxIDIgMyBjb25zb2xlLW1l
c3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKIGNvbnNvbGUtdGVzdHMu
aHRtbDoyMWdyb3VwQ29sbGFwc2VkIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBj
b25zb2xlLWxvZy1sZXZlbCBjb25zb2xlLWdyb3VwLXRpdGxlCitjb25zb2xlLXRlc3RzLmh0bWw6
MjJPYmplY3QgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxl
dmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjM0MiBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1z
b3VyY2UgY29uc29sZS1sb2ctbGV2ZWwKK2NvbnNvbGUtdGVzdHMuaHRtbDoyNHRydWUgY29uc29s
ZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRl
c3RzLmh0bWw6MjVudWxsIGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xl
LWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjI2dW5kZWZpbmVkIGNvbnNvbGUtbWVzc2Fn
ZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1s
OjI3RG9jdW1lbnQgY29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9n
LWxldmVsCitjb25zb2xlLXRlc3RzLmh0bWw6MjhmdW5jdGlvbiAoKSB7IH0gY29uc29sZS1tZXNz
YWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCitjb25zb2xlLXRlc3RzLmh0
bWw6MjlmdW5jdGlvbiBmKCkgeyB9IGNvbnNvbGUtbWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBj
b25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0cy5odG1sOjMwWzEsIDIsIDNdIGNvbnNvbGUt
bWVzc2FnZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS10ZXN0
cy5odG1sOjMxL3JlZ2V4cC4qLyBjb25zb2xlLW1lc3NhZ2UgY29uc29sZS1qcy1zb3VyY2UgY29u
c29sZS1sb2ctbGV2ZWwKIApJbmRleDogTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtdGVz
dHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9pbnNwZWN0b3IvY29uc29sZS10ZXN0
cy5odG1sCShyZXZpc2lvbiA2MTYwOSkKKysrIExheW91dFRlc3RzL2luc3BlY3Rvci9jb25zb2xl
LXRlc3RzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDE2IEBAIGZ1bmN0aW9uIGRv
aXQoKQogICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTsKICAgICBjb25zb2xlLmxvZygnMScsICcyJywg
JzMnKTsKICAgICBjb25zb2xlLmdyb3VwQ29sbGFwc2VkKCdncm91cENvbGxhcHNlZCcpOwotCisg
ICAgY29uc29sZS5sb2coeyBwcm9wZXJ0eTogInZhbHVlIiB9KTsKKyAgICBjb25zb2xlLmxvZyg0
Mik7CisgICAgY29uc29sZS5sb2codHJ1ZSk7CisgICAgY29uc29sZS5sb2cobnVsbCk7CisgICAg
Y29uc29sZS5sb2codW5kZWZpbmVkKTsKKyAgICBjb25zb2xlLmxvZyhkb2N1bWVudCk7CisgICAg
Y29uc29sZS5sb2coZnVuY3Rpb24oKSB7IH0pOworICAgIGNvbnNvbGUubG9nKGZ1bmN0aW9uIGYo
KSB7IH0pOworICAgIGNvbnNvbGUubG9nKFsxLCAyLCAzXSk7CisgICAgY29uc29sZS5sb2coL3Jl
Z2V4cC4qLyk7CiAgICAgZHVtcENvbnNvbGVNZXNzYWdlc1dpdGhDbGFzc2VzKCk7CiB9CiAKSW5k
ZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2luc3BlY3Rvci9jb25zb2xlLWxvZy1u
YXRpdmUtZnVuY3MtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtL2luc3BlY3Rvci9jb25zb2xlLWxvZy1uYXRpdmUtZnVuY3MtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vaW5zcGVj
dG9yL2NvbnNvbGUtbG9nLW5hdGl2ZS1mdW5jcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsNyBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDk6IGZ1bmN0aW9uIERvY3VtZW50
KCkgeyBbbmF0aXZlIGNvZGVdIH0KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxMDogZnVuY3Rpb24g
Y3JlYXRlRWxlbWVudCgpIHsgW25hdGl2ZSBjb2RlXSB9CitUZXN0cyB0aGF0IGNvbnNvbGUgbG9n
Z2luZyBkdW1wcyBwcm9wZXIgbWVzc2FnZXMuCisKK2NvbnNvbGUtbG9nLW5hdGl2ZS1mdW5jcy5o
dG1sOjlmdW5jdGlvbiBEb2N1bWVudCgpIHsgW25hdGl2ZSBjb2RlXSB9IGNvbnNvbGUtbWVzc2Fn
ZSBjb25zb2xlLWpzLXNvdXJjZSBjb25zb2xlLWxvZy1sZXZlbAorY29uc29sZS1sb2ctbmF0aXZl
LWZ1bmNzLmh0bWw6MTBmdW5jdGlvbiBjcmVhdGVFbGVtZW50KCkgeyBbbmF0aXZlIGNvZGVdIH0g
Y29uc29sZS1tZXNzYWdlIGNvbnNvbGUtanMtc291cmNlIGNvbnNvbGUtbG9nLWxldmVsCisK
</data>

          </attachment>
      

    </bug>

</bugzilla>