<?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>12249</bug_id>
          
          <creation_ts>2007-01-13 03:23:52 -0800</creation_ts>
          <short_desc>FCKeditor: &lt;hr&gt;, &lt;ul&gt; and &lt;ol&gt; have id=&quot;undefined&quot;</short_desc>
          <delta_ts>2007-04-19 06:29:14 -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>HTML Editing</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.fckeditor.net/nightly/browsers_test.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NeedsReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>9915</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter>webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>35235</commentid>
    <comment_count>0</comment_count>
    <who name="">webkit</who>
    <bug_when>2007-01-13 03:23:52 -0800</bug_when>
    <thetext>Open the URL and create, by using the toolbar buttons, bulleted/numbered lists or include horizontal rules.

Switch to source. You will see that the &lt;hr&gt;, &lt;ul&gt; and &lt;ol&gt; have id=&quot;undefined&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19771</commentid>
    <comment_count>1</comment_count>
      <attachid>13556</attachid>
    <who name="">webkit</who>
    <bug_when>2007-03-09 04:17:16 -0800</bug_when>
    <thetext>Created attachment 13556
Test Case for &lt;hr&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19772</commentid>
    <comment_count>2</comment_count>
    <who name="">webkit</who>
    <bug_when>2007-03-09 04:21:52 -0800</bug_when>
    <thetext>While working on the Test Case, I found out that actually the id value is &quot;false&quot; and not &quot;undefined&quot;. Probably FCKeditor is transform the boolean false in a &quot;undefined&quot; string in some way.

In any case, the id=&quot;false&quot; is not desirable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19713</commentid>
    <comment_count>3</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2007-03-09 13:54:06 -0800</bug_when>
    <thetext>The execCommands to insert these types of elements expect a string as the third argument execCommand((commandID, userInterface, value)), and use that argument to set the id of the inserted element.  At first I thought that FCKEditor might be omitting the value argument (which we support) since we turn omitted string arguments into &quot;undefined&quot;, but then I found that FCKEditor is *actually* passing &quot;undefined&quot; for value.  The reason you don&apos;t see id=&quot;undefined&quot; in FireFox is because they ignore the value parameter and don&apos;t use it to set the id of inserted elements, as per the spec.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19714</commentid>
    <comment_count>4</comment_count>
      <attachid>13566</attachid>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2007-03-09 13:55:07 -0800</bug_when>
    <thetext>Created attachment 13566
testcase demonstrating the bug in FF</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19715</commentid>
    <comment_count>5</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2007-03-09 13:56:06 -0800</bug_when>
    <thetext>Seems like we&apos;re behaving correctly, closing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19728</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2007-03-09 16:21:40 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; The reason you don&apos;t see id=&quot;undefined&quot; in
&gt; FireFox is because they ignore the value parameter and don&apos;t use it to set the
&gt; id of inserted elements, as per the spec.

Filed this b.m.o. bug:

https://bugzilla.mozilla.org/show_bug.cgi?id=373406

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19689</commentid>
    <comment_count>7</comment_count>
    <who name="">webkit</who>
    <bug_when>2007-03-10 02:45:39 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Seems like we&apos;re behaving correctly, closing.

According to the only &quot;standards&quot; we have regarding it, only the first parameter is required. The rest is optional. Check this out:
http://msdn.microsoft.com/workshop/author/dhtml/reference/constants/inserthorizontalrule.asp

So it is correct to call document.execCommand(&apos;InsertHorizontalRule&apos;). Actually this is its most common usage, as it is quite uncommon to require an id for those elements (developers would be forced to implement a unique id provider logic just to avoid id duplications).

Just to correct my last comment, the TC is giving id=&quot;false&quot; because it is actually passing &quot;false&quot; as the third parameter, instead of null. I&apos;ll be attaching a new TC which gives id=&quot;undefined&quot; instead, by just omitting that parameter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19690</commentid>
    <comment_count>8</comment_count>
      <attachid>13574</attachid>
    <who name="">webkit</who>
    <bug_when>2007-03-10 02:48:03 -0800</bug_when>
    <thetext>Created attachment 13574
TC for id=&quot;undefined&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19622</commentid>
    <comment_count>9</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2007-03-10 13:00:23 -0800</bug_when>
    <thetext>&gt; So it is correct to call document.execCommand(&apos;InsertHorizontalRule&apos;). Actually
&gt; this is its most common usage, as it is quite uncommon to require an id for
&gt; those elements (developers would be forced to implement a unique id provider
&gt; logic just to avoid id duplications).

You&apos;re right, if you omit the third parameter you see a bug, but on our end, it appears that FCKEditor is *actually passing* a second and third parameter, *not omitting them*.  Can you confirm this?  If this is the case then we&apos;re behaving correctly, setting the id to what we&apos;re given for the third parameter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19586</commentid>
    <comment_count>10</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-10 13:35:43 -0800</bug_when>
    <thetext>I think the problem is in incorrect execCommand definition in Document.idl, verifying a fix now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19584</commentid>
    <comment_count>11</comment_count>
      <attachid>13580</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-10 14:00:54 -0800</bug_when>
    <thetext>Created attachment 13580
fix the test case

This fixes the test case, but not the original issue. As Justin says, it seems that &quot;undefined&quot; is actually given as a parameter to execCommand().

Please also note that Firefox does not pass this test case (and I haven&apos;t tested with IE).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19571</commentid>
    <comment_count>12</comment_count>
    <who name="">webkit</who>
    <bug_when>2007-03-10 15:12:51 -0800</bug_when>
    <thetext>The FCKeditor implementation could be reduced to something like this:

----

function ExecCommand( command, commandParam )
{
    document.execCommand( command, false, commandParam ) ;
}

ExecCommand(&apos;InsertHorizontalRule&apos;) ;

----

Obviously the implementation is much more complex than that, but the essence is that we have a generic ExecCommand that is called for all execCommand needs.

In the above case, commandParam is &quot;undefined&quot;. By ECMA definition, &quot;undefined == null&quot;. Calling back the execCommand definition for InsertHorizontalRule, the second and third parameters may be omitted or *set to null*.

I believe this is the way IE understands it, as it doesn&apos;t produce a id=&quot;undefined&quot;, and I think it would be the right approach to not behave differently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19524</commentid>
    <comment_count>13</comment_count>
      <attachid>13580</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-03-10 20:14:11 -0800</bug_when>
    <thetext>Comment on attachment 13580
fix the test case

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19533</commentid>
    <comment_count>14</comment_count>
      <attachid>13580</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-11 00:25:23 -0800</bug_when>
    <thetext>Comment on attachment 13580
fix the test case

I have now verified that the test passes in WinIE; committed revision 20101.

Clearing review flag from the landed fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19512</commentid>
    <comment_count>15</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-11 10:58:06 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; By ECMA definition, &quot;undefined == null&quot;. Calling back the execCommand definition for
&gt; InsertHorizontalRule, the second and third parameters may be omitted or *set to null*.

While it is true that &quot;undefined == null&quot;, this doesn&apos;t mean that &quot;undefined&quot; and &quot;null&quot; are the same. For example, they give different results when converted to string.

Looks like IE has a non-documented quirk when converting to what they call a &quot;variant&quot; (see &lt;http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/execcommand.asp&gt;) - they treat undefined as null in this particular case. I&apos;m not sure if it can be expressed in IDL, CC&apos;ing Sam Weinig to comment on this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19493</commentid>
    <comment_count>16</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-03-11 14:24:23 -0700</bug_when>
    <thetext>Disregarding the issue of conversion from undefined to null in the IDL for a moment for a moment, it seems we still don&apos;t have the correct behavior for null.  As far as I can tell, according to MS&apos;s &quot;spec&quot; calling

  document.execCommand(&apos;InsertHorizontalRule&apos;, false, null);

should be the same as calling

  document.execCommand(&apos;InsertHorizontalRule&apos;);

due to the text &quot;Optional. String that specifies an id attribute for the horizontal line. May be set to null or omitted.&quot;

Now, regarding the conversion issue, I don&apos;t think we have an extended attribute (those things we enclose in square brackets ie. [ConvertNullToNullString]) but adding one is not that difficult.  I am going to add a test case that illustrate the first point in moment. </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19479</commentid>
    <comment_count>17</comment_count>
      <attachid>13588</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-03-11 14:26:56 -0700</bug_when>
    <thetext>Created attachment 13588
Testcase with null 3rd param</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19491</commentid>
    <comment_count>18</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-11 22:39:44 -0700</bug_when>
    <thetext>After looking at the MS documentation a bit more, I&apos;m now wondering if execCommand just needs a custom implementation.

Different commands have different types for the third parameter, and converting null JS strings to null Strings won&apos;t help much if the expected parameter type is a number. Also, for many commands, all the parameters are documented as required (although that might be a lie - I&apos;ve tried BackColor, and IE didn&apos;t complain about missing parameters).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19071</commentid>
    <comment_count>19</comment_count>
      <attachid>13614</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-03-13 12:25:18 -0700</bug_when>
    <thetext>Created attachment 13614
unfinished patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19074</commentid>
    <comment_count>20</comment_count>
      <attachid>13614</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-03-13 12:41:53 -0700</bug_when>
    <thetext>Comment on attachment 13614
unfinished patch

It&apos;s usually not good to base things on argCount. Instead it&apos;s better to look at whether args are undefined. Passing undefined should normally have the same behavior as not passing additional arguments at all. Since undefined toBoolean becomes false, and undefined to valueToStringWithUndefinedOrNullCheck becomes a null strings I don&apos;t think we need the if statements at all in JSDocument::execCommand. If we need them, why?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18387</commentid>
    <comment_count>21</comment_count>
      <attachid>13666</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-03-16 08:23:29 -0700</bug_when>
    <thetext>Created attachment 13666
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18051</commentid>
    <comment_count>22</comment_count>
      <attachid>13718</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-03-20 11:17:15 -0700</bug_when>
    <thetext>Created attachment 13718
more updated patch

I&apos;ve further updated the patch to support optional arguments for Objective-C (in the hack-a-licious way that we do it for the time being) and changed the test case so that it doesn&apos;t rely on a WebKit quirk of selecting the contents of an editable context on initial focus().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>17966</commentid>
    <comment_count>23</comment_count>
      <attachid>13718</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-03-21 09:34:05 -0700</bug_when>
    <thetext>Comment on attachment 13718
more updated patch

OK, r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>14225</commentid>
    <comment_count>24</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2007-04-18 12:53:14 -0700</bug_when>
    <thetext>Sam you should land this when you get a chance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>14128</commentid>
    <comment_count>25</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2007-04-19 06:29:14 -0700</bug_when>
    <thetext>Landed in r20948.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13556</attachid>
            <date>2007-03-09 04:17:16 -0800</date>
            <delta_ts>2007-03-10 02:48:03 -0800</delta_ts>
            <desc>Test Case for &lt;hr&gt;</desc>
            <filename>hr_undefined.html</filename>
            <type>text/html</type>
            <size>668</size>
            <attacher>webkit</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25h
bC5kdGQiPg0KPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPg0KPGhl
YWQ+DQoJPHRpdGxlPlNhZmFyaSBCdWdzIC0gSFIgd2l0aCBpZD1mYWxzZTwvdGl0bGU+DQoJPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KDQp3aW5kb3cub25sb2FkID0gZnVuY3Rpb24o
KQ0Kew0KCWRvY3VtZW50LmRlc2lnbk1vZGUgPSAnb24nIDsNCgkNCgkvLyBUaGlzIGFsZXJ0IGlz
IGhlcmUganVzdCB0byBwbGFjZSB0aGUgZm9jdXMgaW4gdGhlIGVkaXRhYmxlIGRvY3VtZW50Lg0K
CWFsZXJ0KCAnQ2xpY2sgT0sgdG8gaW5zZXJ0IHRoZSA8aHI+JyApIDsJDQoNCglkb2N1bWVudC5l
eGVjQ29tbWFuZCggJ0luc2VydEhvcml6b250YWxSdWxlJywgZmFsc2UsIGZhbHNlICkgOw0KCQ0K
CWFsZXJ0KCAnVGhlIHJlc3VsdGluZyBIVE1MIGlzOiBcbicgKyBkb2N1bWVudC5ib2R5LmlubmVy
SFRNTCArICdcblRoZSBkZXNpcmVkIEhUTUwgaXM6XG48aHIgLz4nICApIDsNCn0NCg0KCTwvc2Ny
aXB0Pg0KPC9oZWFkPg0KPGJvZHk+DQo8L2JvZHk+DQo8L2h0bWw+DQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13566</attachid>
            <date>2007-03-09 13:55:07 -0800</date>
            <delta_ts>2007-03-09 13:55:07 -0800</delta_ts>
            <desc>testcase demonstrating the bug in FF</desc>
            <filename>12249.html</filename>
            <type>text/html</type>
            <size>374</size>
            <attacher name="Justin Garcia">justin.garcia</attacher>
            
              <data encoding="base64">PGJvZHk+CjxzY3JpcHQ+CmRvY3VtZW50LmRlc2lnbk1vZGUgPSAib24iOwpib2R5ID0gZG9jdW1l
bnQuYm9keTsKcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOwpyYW5nZS5zZXRTdGFydChi
b2R5LCAwKTsKcmFuZ2Uuc2V0RW5kKGJvZHksIDApOwp3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuYWRk
UmFuZ2UocmFuZ2UpOwppZCA9ICJmb28iCmRvY3VtZW50LmV4ZWNDb21tYW5kKCJJbnNlcnRIb3Jp
em9udGFsUnVsZSIsIGZhbHNlLCBpZCk7CmlmICghZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQp
KQogICAgYWxlcnQoIkZhaWx1cmU6IElEIHdhc24ndCBzZXQuIik7CmVsc2UKICAgIGFsZXJ0KCJT
dWNjZXNzOiBJRCB3YXMgc2V0LiIpOwo8L3NjcmlwdD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13574</attachid>
            <date>2007-03-10 02:48:03 -0800</date>
            <delta_ts>2007-03-10 02:48:03 -0800</delta_ts>
            <desc>TC for id=&quot;undefined&quot;</desc>
            <filename>hr_undefined.html</filename>
            <type>text/html</type>
            <size>654</size>
            <attacher>webkit</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25h
bC5kdGQiPg0KPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPg0KPGhl
YWQ+DQoJPHRpdGxlPlNhZmFyaSBCdWdzIC0gSFIgd2l0aCBpZD1mYWxzZTwvdGl0bGU+DQoJPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KDQp3aW5kb3cub25sb2FkID0gZnVuY3Rpb24o
KQ0Kew0KCWRvY3VtZW50LmRlc2lnbk1vZGUgPSAnb24nIDsNCgkNCgkvLyBUaGlzIGFsZXJ0IGlz
IGhlcmUganVzdCB0byBwbGFjZSB0aGUgZm9jdXMgaW4gdGhlIGVkaXRhYmxlIGRvY3VtZW50Lg0K
CWFsZXJ0KCAnQ2xpY2sgT0sgdG8gaW5zZXJ0IHRoZSA8aHI+JyApIDsJDQoNCglkb2N1bWVudC5l
eGVjQ29tbWFuZCggJ0luc2VydEhvcml6b250YWxSdWxlJyApIDsNCgkNCglhbGVydCggJ1RoZSBy
ZXN1bHRpbmcgSFRNTCBpczogXG4nICsgZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgKyAnXG5UaGUg
ZGVzaXJlZCBIVE1MIGlzOlxuPGhyIC8+JyAgKSA7DQp9DQoNCgk8L3NjcmlwdD4NCjwvaGVhZD4N
Cjxib2R5Pg0KPC9ib2R5Pg0KPC9odG1sPg0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13580</attachid>
            <date>2007-03-10 14:00:54 -0800</date>
            <delta_ts>2007-03-11 00:25:23 -0800</delta_ts>
            <desc>fix the test case</desc>
            <filename>12249_1.txt</filename>
            <type>text/plain</type>
            <size>4303</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMDk2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDctMDMtMTEgIEFsZXhleSBQcm9za3VyeWFr
b3YgIDxhcEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMjQ5
CisgICAgICAgIEZDS2VkaXRvcjogPGhyPiwgPHVsPiBhbmQgPG9sPiBoYXZlIGlkPSJ1bmRlZmlu
ZWQiCisKKyAgICAgICAgKiBlZGl0aW5nL2V4ZWNDb21tYW5kL2RlZmF1bHQtcGFyYW1ldGVycy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvZGVmYXVs
dC1wYXJhbWV0ZXJzLmh0bWw6IEFkZGVkLgorCiAyMDA3LTAzLTA5ICBEYXJpbiBBZGxlciAgPGRh
cmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKdXN0aW4uCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2RlZmF1bHQtcGFyYW1ldGVycy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9kZWZhdWx0
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRp
dGluZy9leGVjQ29tbWFuZC9kZWZhdWx0LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDMgQEAKK1Rlc3QgZm9yIGJ1ZyAxMjI0OTogRkNLZWRpdG9yOiA8aHI+
LCA8dWw+IGFuZCA8b2w+IGhhdmUgaWQ9InVuZGVmaW5lZCIuCisKK1NVQ0NFU1MKClByb3BlcnR5
IGNoYW5nZXMgb246IExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvZGVmYXVsdC1wYXJh
bWV0ZXJzLWV4cGVjdGVkLnR4dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5hbWU6IHN2bjptaW1lLXR5cGUKICAgKyB0
ZXh0L3BsYWluCk5hbWU6IHN2bjplb2wtc3R5bGUKICAgKyBuYXRpdmUKCkluZGV4OiBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2RlZmF1bHQtcGFyYW1ldGVycy5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvZGVmYXVsdC1wYXJhbWV0ZXJz
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2Rl
ZmF1bHQtcGFyYW1ldGVycy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8aHRt
bD4KKzxib2R5PgorPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTIyNDkiPmJ1ZyAxMjI0OTwvYT46CitGQ0tlZGl0b3I6ICZsdDtocj4s
ICZsdDt1bD4gYW5kICZsdDtvbD4gaGF2ZSBpZD0idW5kZWZpbmVkIi48L3A+Cis8ZGl2IGlkPSJk
aXYiIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+PC9kaXY+CisKKzxzY3JpcHQ+CitpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisKK3RyeSB7CisgIHZhciBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iik7
CisgIGRpdi5mb2N1cygpOworCisgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCJJbnNlcnRIb3Jpem9u
dGFsUnVsZSIpOworCisgIGlmIChkaXYuaW5uZXJIVE1MLm1hdGNoKC8uKnVuZGVmaW5lZC4qLykp
CisgICAgZG9jdW1lbnQud3JpdGUoIkZBSUxVUkUiKTsKKyAgZWxzZQorICAgIGRvY3VtZW50Lndy
aXRlKCJTVUNDRVNTIik7Cit9IGNhdGNoIChleCkgeworICBkb2N1bWVudC53cml0ZShleCk7Cit9
Cis8L3NjcmlwdD4KKzwvYm9keT4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Vk
aXRpbmcvZXhlY0NvbW1hbmQvZGVmYXVsdC1wYXJhbWV0ZXJzLmh0bWwKX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1l
OiBzdm46bWltZS10eXBlCiAgICsgdGV4dC9odG1sCgpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMDk2KQorKysgV2Vi
Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAwNy0wMy0x
MSAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTIyNDkKKyAgICAgICAgRkNLZWRpdG9yOiA8aHI+LCA8dWw+IGFuZCA8
b2w+IGhhdmUgaWQ9InVuZGVmaW5lZCIKKworICAgICAgICBUaGlzIGZpeGVzIHRoZSBhdHRhY2hl
ZCByZWR1Y3Rpb24sIGJ1dCBub3QgdGhlIG9yaWdpbmFsIGlzc3VlLgorCisgICAgICAgICogZG9t
L0RvY3VtZW50Lmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmlkbDoKKyAgICAgICAgTWFrZSBz
ZWNvbmQgYW5kIHRoaXJkIGV4ZWNDb21tYW5kKCkgcGFyYW1ldGVycyBvcHRpb25hbC4KKwogMjAw
Ny0wMy0wOSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgSnVzdGluLgpJbmRleDogV2ViQ29yZS9kb20vRG9jdW1lbnQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2RvbS9Eb2N1bWVudC5oCShyZXZpc2lvbiAyMDA5MSkKKysrIFdlYkNvcmUvZG9t
L0RvY3VtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTU0OSw3ICs1NDksNyBAQCBwdWJsaWM6CiAK
ICAgICBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdDsKICAgICAKLSAgICBib29sIGV4ZWNDb21tYW5k
KGNvbnN0IFN0cmluZyYgY29tbWFuZCwgYm9vbCB1c2VySW50ZXJmYWNlLCBjb25zdCBTdHJpbmcm
IHZhbHVlKTsKKyAgICBib29sIGV4ZWNDb21tYW5kKGNvbnN0IFN0cmluZyYgY29tbWFuZCwgYm9v
bCB1c2VySW50ZXJmYWNlID0gZmFsc2UsIGNvbnN0IFN0cmluZyYgdmFsdWUgPSBTdHJpbmcoKSk7
CiAgICAgYm9vbCBxdWVyeUNvbW1hbmRFbmFibGVkKGNvbnN0IFN0cmluZyYgY29tbWFuZCk7CiAg
ICAgYm9vbCBxdWVyeUNvbW1hbmRJbmRldGVybShjb25zdCBTdHJpbmcmIGNvbW1hbmQpOwogICAg
IGJvb2wgcXVlcnlDb21tYW5kU3RhdGUoY29uc3QgU3RyaW5nJiBjb21tYW5kKTsKSW5kZXg6IFdl
YkNvcmUvZG9tL0RvY3VtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1bWVu
dC5pZGwJKHJldmlzaW9uIDIwMDkxKQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMjgsOCArMTI4LDggQEAgbW9kdWxlIGNvcmUgewogICAgICAgICAvLyBD
b21tb24gZXh0ZW5zaW9ucwogCiAgICAgICAgIGJvb2xlYW4gZXhlY0NvbW1hbmQoaW4gRE9NU3Ry
aW5nIGNvbW1hbmQsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJvb2xlYW4gdXNl
ckludGVyZmFjZSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIHZh
bHVlKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBbT3B0aW9uYWxdIGJvb2xlYW4g
dXNlckludGVyZmFjZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gW09wdGlvbmFs
XSBET01TdHJpbmcgdmFsdWUpOwogICAgICAgICBib29sZWFuIHF1ZXJ5Q29tbWFuZEVuYWJsZWQo
aW4gRE9NU3RyaW5nIGNvbW1hbmQpOwogICAgICAgICBib29sZWFuIHF1ZXJ5Q29tbWFuZEluZGV0
ZXJtKGluIERPTVN0cmluZyBjb21tYW5kKTsKICAgICAgICAgYm9vbGVhbiBxdWVyeUNvbW1hbmRT
dGF0ZShpbiBET01TdHJpbmcgY29tbWFuZCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13588</attachid>
            <date>2007-03-11 14:26:56 -0700</date>
            <delta_ts>2007-03-11 14:26:56 -0700</delta_ts>
            <desc>Testcase with null 3rd param</desc>
            <filename>hr_null.html</filename>
            <type>text/html</type>
            <size>692</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25h
bC5kdGQiPg0KPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPg0KPGhl
YWQ+DQogICAgPHRpdGxlPlNhZmFyaSBCdWdzIC0gSFIgd2l0aCBpZD1mYWxzZTwvdGl0bGU+DQog
ICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KDQp3aW5kb3cub25sb2FkID0gZnVu
Y3Rpb24oKQ0Kew0KICAgIGRvY3VtZW50LmRlc2lnbk1vZGUgPSAnb24nIDsNCg0KICAgIC8vIFRo
aXMgYWxlcnQgaXMgaGVyZSBqdXN0IHRvIHBsYWNlIHRoZSBmb2N1cyBpbiB0aGUgZWRpdGFibGUg
ZG9jdW1lbnQuDQogICAgYWxlcnQoICdDbGljayBPSyB0byBpbnNlcnQgdGhlIDxocj4nICkgOyAg
ICANCg0KICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCAnSW5zZXJ0SG9yaXpvbnRhbFJ1bGUnLCBm
YWxzZSwgbnVsbCApIDsNCg0KICAgIGFsZXJ0KCAnVGhlIHJlc3VsdGluZyBIVE1MIGlzOiBcbicg
KyBkb2N1bWVudC5ib2R5LmlubmVySFRNTCArICdcblRoZSBkZXNpcmVkIEhUTUwgaXM6XG48aHIg
Lz4nICApIDsNCn0NCg0KICAgIDwvc2NyaXB0Pg0KPC9oZWFkPg0KPGJvZHk+DQo8L2JvZHk+DQo8
L2h0bWw+DQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13614</attachid>
            <date>2007-03-13 12:25:18 -0700</date>
            <delta_ts>2007-03-16 08:23:29 -0700</delta_ts>
            <desc>unfinished patch</desc>
            <filename>execComPatch.diff</filename>
            <type>text/plain</type>
            <size>4553</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lv
biAyMDEzMikKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3
b3JraW5nIGNvcHkpCkBAIC04OTE4LDggKzg5MTgsOCBAQAogCQkJCTE0REZCMzNGMEE3REY3NjMw
MDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8sCiAJCQkJOTNGOEIzMDYwQTMwMEZFQTAwRjYx
QUI4IC8qIENvZGVHZW5lcmF0b3JKUy5wbSAqLywKIAkJCQkxQTlFRjQ1NjBBMUI5NTdEMDAzMzJC
NjMgLyogSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwICovLAotCQkJCUUxMEI5
MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5oICovLAogCQkJ
CUUxMEI5M0MyMEI3M0MyOTEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5jcHAg
Ki8sCisJCQkJRTEwQjkzN0IwQjczQzAwQTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29s
dmVyLmggKi8sCiAJCQkJOTI5MjY0NzYwQjYxRkM3MjAwQjQxRDM0IC8qIEpTRG9jdW1lbnRDdXN0
b20uY3BwICovLAogCQkJCTkzOEU2NUY2MDlGMDk4NUQwMDhBNDhFQyAvKiBKU0hUTUxFbGVtZW50
V3JhcHBlckZhY3RvcnkuY3BwICovLAogCQkJCTkzOEU2NUYwMDlGMDk4NDAwMDhBNDhFQyAvKiBK
U0hUTUxFbGVtZW50V3JhcHBlckZhY3RvcnkuaCAqLywKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mv
anMvSlNEb2N1bWVudEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RvY3VtZW50Q3VzdG9tLmNwcAkocmV2aXNpb24gMjAxMzIpCisrKyBXZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRG9jdW1lbnRDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNiBA
QAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSwgSW5jLgorICogQ29weXJpZ2h0IChD
KSAyMDA3IFNhbXVlbCBXZWluaWcgPHNhbUB3ZWJraXQub3JnPgogICoKICAqIFRoaXMgbGlicmFy
eSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1v
ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
CkBAIC0yMCwxNiArMjEsMzUgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJKU0Rv
Y3VtZW50LmgiCiAKLSNpbmNsdWRlICJranNfYmluZGluZy5oIgogI2luY2x1ZGUgIkRvY3VtZW50
LmgiCisjaW5jbHVkZSAia2pzX2JpbmRpbmcuaCIKKwordXNpbmcgbmFtZXNwYWNlIEtKUzsKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiB2b2lkIEpTRG9jdW1lbnQ6Om1hcmsoKQogewogICAgIERP
TU9iamVjdDo6bWFyaygpOwotICAgIEtKUzo6U2NyaXB0SW50ZXJwcmV0ZXI6Om1hcmtET01Ob2Rl
c0ZvckRvY3VtZW50KHN0YXRpY19jYXN0PERvY3VtZW50Kj4oaW1wbCgpKSk7CisgICAgU2NyaXB0
SW50ZXJwcmV0ZXI6Om1hcmtET01Ob2Rlc0ZvckRvY3VtZW50KHN0YXRpY19jYXN0PERvY3VtZW50
Kj4oaW1wbCgpKSk7CiB9Ci0gICAgCisKK0pTVmFsdWUqIEpTRG9jdW1lbnQ6OmV4ZWNDb21tYW5k
KEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgTGlzdCYgYXJncykKK3sKKyAgICBEb2N1bWVudCogaW1w
ID0gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihpbXBsKCkpOworCisgICAgaW50IGFyZ3NDb3VudCA9
IGFyZ3Muc2l6ZSgpOworCisgICAgU3RyaW5nIGNvbW1hbmQgPSBhcmdzWzBdLT50b1N0cmluZyhl
eGVjKTsKKyAgICBpZiAoYXJnc0NvdW50ID09IDEpCisgICAgICAgIHJldHVybiBqc0Jvb2xlYW4o
aW1wLT5leGVjQ29tbWFuZChjb21tYW5kKSk7CisKKyAgICBib29sIHVzZXJJbnRlcmZhY2UgPSBh
cmdzWzFdLT50b0Jvb2xlYW4oZXhlYyk7CisgICAgaWYgKGFyZ3NDb3VudCA9PSAyKQorICAgICAg
ICByZXR1cm4ganNCb29sZWFuKGltcC0+ZXhlY0NvbW1hbmQoY29tbWFuZCwgdXNlckludGVyZmFj
ZSkpOworCisgICAgU3RyaW5nIHZhbHVlID0gdmFsdWVUb1N0cmluZ1dpdGhVbmRlZmluZWRPck51
bGxDaGVjayhleGVjLCBhcmdzWzJdKTsKKyAgICByZXR1cm4ganNCb29sZWFuKGltcC0+ZXhlY0Nv
bW1hbmQoY29tbWFuZCwgdXNlckludGVyZmFjZSwgdmFsdWUpKTsKIH0KIAorfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5jcHAJKHJldmlzaW9u
IDIwMTMyKQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTMyMiw2ICszMjIsMTMgQEAgU3RyaW5nIHZhbHVlVG9TdHJpbmdXaXRoTnVsbENo
ZWNrKEV4ZWNTdAogICAgIHJldHVybiB2YWwtPnRvU3RyaW5nKGV4ZWMpOwogfQogCitTdHJpbmcg
dmFsdWVUb1N0cmluZ1dpdGhVbmRlZmluZWRPck51bGxDaGVjayhFeGVjU3RhdGUqIGV4ZWMsIEpT
VmFsdWUqIHZhbCkKK3sKKyAgICBpZiAodmFsLT5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAg
ICByZXR1cm4gU3RyaW5nKCk7CisgICAgcmV0dXJuIHZhbC0+dG9TdHJpbmcoZXhlYyk7Cit9CisK
IHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBleGNlcHRpb25OYW1lc1tdID0gewogICAgIDAsCiAg
ICAgIklOREVYX1NJWkVfRVJSIiwKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMva2pzX2JpbmRp
bmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19iaW5kaW5nLmgJKHJl
dmlzaW9uIDIwMTMyKQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNDcsNiArMTQ3LDcgQEAgbmFtZXNwYWNlIEtKUyB7CiAgICAgSlNWYWx1
ZSoganNTdHJpbmdPclVuZGVmaW5lZChjb25zdCBXZWJDb3JlOjpTdHJpbmcmKTsgLy8gdW5kZWZp
bmVkIGlmIHRoZSBzdHJpbmcgaXMgbnVsbAogICAgIEpTVmFsdWUqIGpzU3RyaW5nT3JGYWxzZShj
b25zdCBXZWJDb3JlOjpTdHJpbmcmKTsgLy8gYm9vbGVhbiBmYWxzZSBpZiB0aGUgc3RyaW5nIGlz
IG51bGwKICAgICBXZWJDb3JlOjpTdHJpbmcgdmFsdWVUb1N0cmluZ1dpdGhOdWxsQ2hlY2soRXhl
Y1N0YXRlKiwgSlNWYWx1ZSopOyAvLyBudWxsIFN0cmluZyBpZiB0aGUgdmFsdWUgaXMgbnVsbAor
ICAgIFdlYkNvcmU6OlN0cmluZyB2YWx1ZVRvU3RyaW5nV2l0aFVuZGVmaW5lZE9yTnVsbENoZWNr
KEV4ZWNTdGF0ZSosIEpTVmFsdWUqKTsgLy8gbnVsbCBTdHJpbmcgaWYgdGhlIHZhbHVlIGlzIG51
bGwgb3IgdW5kZWZpbmVkCiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gaW5saW5lIEpTVmFs
dWUqIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBQYXNzUmVmUHRyPFQ+IHB0cikgeyByZXR1cm4gdG9K
UyhleGVjLCBwdHIuZ2V0KCkpOyB9CiAgIApJbmRleDogV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRs
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAkocmV2aXNpb24gMjAxMzIp
CisrKyBXZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTEyNyw5ICsx
MjcsOSBAQCBtb2R1bGUgY29yZSB7CiAKICAgICAgICAgLy8gQ29tbW9uIGV4dGVuc2lvbnMKIAot
ICAgICAgICBib29sZWFuIGV4ZWNDb21tYW5kKGluIERPTVN0cmluZyBjb21tYW5kLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBbT3B0aW9uYWxdIGJvb2xlYW4gdXNlckludGVyZmFj
ZSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gW09wdGlvbmFsXSBET01TdHJpbmcg
dmFsdWUpOworICAgICAgICBbQ3VzdG9tXSBib29sZWFuIGV4ZWNDb21tYW5kKGluIERPTVN0cmlu
ZyBjb21tYW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIFtPcHRp
b25hbF0gYm9vbGVhbiB1c2VySW50ZXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGluIFtPcHRpb25hbF0gRE9NU3RyaW5nIHZhbHVlKTsKICAgICAgICAgYm9vbGVh
biBxdWVyeUNvbW1hbmRFbmFibGVkKGluIERPTVN0cmluZyBjb21tYW5kKTsKICAgICAgICAgYm9v
bGVhbiBxdWVyeUNvbW1hbmRJbmRldGVybShpbiBET01TdHJpbmcgY29tbWFuZCk7CiAgICAgICAg
IGJvb2xlYW4gcXVlcnlDb21tYW5kU3RhdGUoaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13666</attachid>
            <date>2007-03-16 08:23:29 -0700</date>
            <delta_ts>2007-03-20 11:17:15 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>execComPatch4.diff</filename>
            <type>text/plain</type>
            <size>14736</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMjM3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDctMDMtMTYgIFNhbSBXZWluaWcgIDxzYW1A
d2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAtIFRlc3QgZm9yIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEy
MjQ5CisgICAgICAgICAgRkNLZWRpdG9yOiA8aHI+LCA8dWw+IGFuZCA8b2w+IGhhdmUgaWQ9InVu
ZGVmaW5lZCIKKworICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNvbWJp
bmF0aW9ucy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1h
bmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy5odG1sOiBBZGRlZC4KKwogMjAwNy0wMy0xNSAgSnVz
dGluIEdhcmNpYSAgPGp1c3Rpbi5nYXJjaWFAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IGpvaG4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRz
LWNvbWJpbmF0aW9ucy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRp
dGluZy9leGVjQ29tbWFuZC9hcmd1bWVudHMtY29tYmluYXRpb25zLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNv
bWJpbmF0aW9ucy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTQgQEAKK1Ro
ZXNlIGFyZSB0ZXN0cyBmb3IgdGVzdGluZyB0aGUgaG93IGV4ZWNDb21tYW5kKCkgd29ya3Mgd2l0
aCBkaWZmZXJlbnQgY29tYmluYXRpb25zIG9mIGFyZ3VtZW50cy4gVGhlICJJbnNlcnRIb3Jpem9u
dGFsUnVsZSIgY29tbWFuZCB3YXMgY2hvc2VuIGFyYml0cmFyaWx5IGJlY2F1c2UgaXQgd2FzIHdo
YXQgSSB3YXMgd29ya2luZyBvbiBhdCB0aGUgdGltZSwgYnV0IHRoZSByZXN1bHRzIHNob3VsZCBi
ZSBwYXJhbGxlbGVkIGluIHRoZSBvdGhlciBjb21tYW5kcyBhcyB3ZWxsLgorCitDT05TT0xFCisK
K1BBU1MgPGhyPjwvaHI+IGlzIDxocj48L2hyPgorUEFTUyA8aHI+PC9ocj4gaXMgPGhyPjwvaHI+
CitQQVNTIDxociBpZD0iZm9vIj48L2hyPiBpcyA8aHIgaWQ9ImZvbyI+PC9ocj4KK1BBU1MgPGhy
IGlkPSJmb28iPjwvaHI+IGlzIDxociBpZD0iZm9vIj48L2hyPgorUEFTUyA8aHIgaWQ9IiI+PC9o
cj4gaXMgPGhyIGlkPSIiPjwvaHI+CitQQVNTIDxocj48L2hyPiBpcyA8aHI+PC9ocj4KK1BBU1Mg
PGhyPjwvaHI+IGlzIDxocj48L2hyPgorUEFTUyA8aHIgaWQ9IjAiPjwvaHI+IGlzIDxociBpZD0i
MCI+PC9ocj4KK1BBU1MgPGhyPjwvaHI+IGlzIDxocj48L2hyPgorCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2FyZ3VtZW50cy1jb21iaW5hdGlvbnMuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2FyZ3VtZW50cy1jb21iaW5h
dGlvbnMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZXhlY0NvbW1h
bmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDkz
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+
RXhlY0NvbW1hbmQgYXJndW1lbnQgY29tYmluYXRpb25zPC90aXRsZT4KKyAgICAgICAgPHN0eWxl
PgorICAgICAgICAgICAgLnBhc3MgeyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IGdyZWVuOyB9
CisgICAgICAgICAgICAuZmFpbCB7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogcmVkOyB9Cisg
ICAgICAgICAgICAjY29uc29sZSB7IHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsgZm9udC1mYW1pbHk6
IG1vbm9zcGFjZTsgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7IHBhZGRpbmc6IDEwcHg7IG1hcmdp
bi1ib3R0b206IDIwcHg7IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICAgICAgPHNjcmlwdCB0eXBl
PSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgZnVuY3Rpb24gZGVidWcobXNnKQorICAg
ICAgICAgICAgeworICAgICAgICAgICAgICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgic3BhbiIpOworICAgICAgICAgICAgICAgIHNwYW4uaW5uZXJIVE1MID0gbXNnICsgJzxi
cj4nOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIiku
YXBwZW5kQ2hpbGQoc3Bhbik7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9u
IGVzY2FwZUhUTUwodGV4dCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICByZXR1cm4g
dGV4dC5yZXBsYWNlKC8mL2csICImYW1wOyIpLnJlcGxhY2UoLzwvZywgIiZsdDsiKTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gdGVzdFBhc3NlZChtc2cpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoJzxzcGFuIGNsYXNzPSJwYXNzIj5QQVNTPC9z
cGFuPiAnICsgbXNnICsgJzwvc3Bhbj4nKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ZnVuY3Rpb24gdGVzdEZhaWxlZChtc2cpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
ZGVidWcoJzxzcGFuIGNsYXNzPSJmYWlsIj5GQUlMPC9zcGFuPiAnICsgbXNnICsgJzwvc3Bhbj4n
KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEVxdWFscyhhLCBi
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmIChhID09IGIpIHsKKyAgICAgICAg
ICAgICAgICAgICAgdGVzdFBhc3NlZChlc2NhcGVIVE1MKGEpICsgIiA8Yj5pczwvYj4gIiArIGVz
Y2FwZUhUTUwoYikpOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
ICAgIHRlc3RGYWlsZWQoIjxiPmV4cGVjdGVkIG91dHB1dCB3YXM8L2I+ICIgKyBlc2NhcGVIVE1M
KGEpICsgIiA8Yj5zaG91bGQgaGF2ZSBiZWVuPC9iPiAiICsgZXNjYXBlSFRNTChiKSk7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0
KGNvZGVUb0V2YWwsIGV4cGVjdGVkT3V0cHV0KQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIHZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3REaXYnKTsKKyAgICAgICAg
ICAgICAgICBlLmZvY3VzKCk7CisgICAgICAgICAgICAgICAgZXZhbChjb2RlVG9FdmFsKTsKKyAg
ICAgICAgICAgICAgICB0ZXN0RXF1YWxzKGUuaW5uZXJIVE1MLCBleHBlY3RlZE91dHB1dCk7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3RzKCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQor
ICAgICAgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgICAgICAgICAgLy8gVGVzdCB3aXRoIDEgYXJndW1lbnQuCisgICAgICAgICAgICAg
ICAgdGVzdCgnZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2VydEhvcml6b250YWxSdWxlIiknLCAn
PGhyPjwvaHI+Jyk7CisKKyAgICAgICAgICAgICAgICAvLyBUZXN0IHdpdGggMiBhcmd1bWVudHMu
CisgICAgICAgICAgICAgICAgdGVzdCgnZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2VydEhvcml6
b250YWxSdWxlIiwgZmFsc2UpJywgJzxocj48L2hyPicpOworCisgICAgICAgICAgICAgICAgLy8g
VGVzdCB3aXRoIDMgYXJndW1lbnRzLgorICAgICAgICAgICAgICAgIHRlc3QoJ2RvY3VtZW50LmV4
ZWNDb21tYW5kKCJJbnNlcnRIb3Jpem9udGFsUnVsZSIsIGZhbHNlLCAiZm9vIiknLCAnPGhyIGlk
PSJmb28iPjwvaHI+Jyk7CisKKyAgICAgICAgICAgICAgICAvLyBUZXN0IHdpdGggNCBhcmd1bWVu
dHMuIChzaG91bGQgaWdub3JlIHRoZSBmb3VydGggYXJndW1lbnQgc2lsZW50bHkpCisgICAgICAg
ICAgICAgICAgdGVzdCgnZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2VydEhvcml6b250YWxSdWxl
IiwgZmFsc2UsICJmb28iLCAiYmFyIiknLCAnPGhyIGlkPSJmb28iPjwvaHI+Jyk7CisKKyAgICAg
ICAgICAgICAgICAvLyBUZXN0IGVtcHR5IFN0cmluZyAzcmQgcGFyYW1ldGVyLiAoYWRkcyBlbXBy
dHkgaWQgdmFsdWUpCisgICAgICAgICAgICAgICAgdGVzdCgnZG9jdW1lbnQuZXhlY0NvbW1hbmQo
Ikluc2VydEhvcml6b250YWxSdWxlIiwgZmFsc2UsICIiKScsICc8aHIgaWQ9IiI+PC9ocj4nKTsK
KworICAgICAgICAgICAgICAgIC8vIFRlc3QgbnVsbCAzcmQgcGFyYW1ldGVyLiAoc2hvdWxkIHRy
ZWF0IGFzIGlmIG9ubHkgdHdvIGFyZ3VtZW50cyB3ZXJlIHBhc3NlZCwgc2FtZSBhcyB1bmRlZmlu
ZWQpCisgICAgICAgICAgICAgICAgdGVzdCgnZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkluc2VydEhv
cml6b250YWxSdWxlIiwgZmFsc2UsIG51bGwpJywgJzxocj48L2hyPicpOworCisgICAgICAgICAg
ICAgICAgLy8gVGVzdCB1bmRlZmluZWQgM3JkIHBhcmFtZXRlci4gKHNob3VsZCB0cmVhdCBhcyBp
ZiBvbmx5IHR3byBhcmd1bWVudHMgd2VyZSBwYXNzZWQsIHNhbWUgYXMgbnVsbCkKKyAgICAgICAg
ICAgICAgICB0ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRhbFJ1bGUi
LCBmYWxzZSwgdW5kZWZpbmVkKScsICc8aHI+PC9ocj4nKTsKKworICAgICAgICAgICAgICAgIC8v
IFRlc3QgMCBmb3IgM3JkIHBhcmFtZXRlci4gKG5vdGhpbmcgc3BlY2lhbCwgaWQgdmFsdWUgc2hv
dWxkIGVxdWFsIHRoZSBzdHJpbmcgMCkKKyAgICAgICAgICAgICAgICB0ZXN0KCdkb2N1bWVudC5l
eGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRhbFJ1bGUiLCBmYWxzZSwgMCknLCAnPGhyIGlkPSIw
Ij48L2hyPicpOworCisgICAgICAgICAgICAgICAgLy8gVGVzdCB1bmRlZmluZWQgM3JkIHBhcmFt
ZXRlciBpbXBsaWNpdGx5IHVzaW5nIGhlbHBlciBmdW5jdGlvbi4gKHNob3VsZCB0cmVhdCBhcyBp
ZiBvbmx5IHR3byBhcmd1bWVudHMgd2VyZSBwYXNzZWQsIHNhbWUgYXMgbnVsbCkKKyAgICAgICAg
ICAgICAgICB0ZXN0KCdmdW5jdGlvbiBFeGVjQ29tbWFuZChjb21tYW5kLCBjb21tYW5kUGFyYW0p
IHsgZG9jdW1lbnQuZXhlY0NvbW1hbmQoY29tbWFuZCwgZmFsc2UsIGNvbW1hbmRQYXJhbSk7IH0g
RXhlY0NvbW1hbmQoIkluc2VydEhvcml6b250YWxSdWxlIik7JywgJzxocj48L2hyPicpOworICAg
ICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25s
b2FkPSJydW5UZXN0cygpOyI+CisgICAgICAgIDxwPlRoZXNlIGFyZSB0ZXN0cyBmb3IgdGVzdGlu
ZyB0aGUgaG93IGV4ZWNDb21tYW5kKCkgd29ya3Mgd2l0aCBkaWZmZXJlbnQgY29tYmluYXRpb25z
IG9mIGFyZ3VtZW50cy4gVGhlICJJbnNlcnRIb3Jpem9udGFsUnVsZSIgY29tbWFuZCB3YXMgCisg
ICAgICAgICAgICBjaG9zZW4gYXJiaXRyYXJpbHkgYmVjYXVzZSBpdCB3YXMgd2hhdCBJIHdhcyB3
b3JraW5nIG9uIGF0IHRoZSB0aW1lLCBidXQgdGhlIHJlc3VsdHMgc2hvdWxkIGJlIHBhcmFsbGVs
ZWQgaW4gdGhlIG90aGVyIGNvbW1hbmRzIGFzIHdlbGwuPC9wPgorCisgICAgICAgIDxoND5DT05T
T0xFPC9oND4KKyAgICAgICAgPGRpdiBpZD0nY29uc29sZSc+PC9kaXY+CisKKyAgICAgICAgPGRp
diBpZD0idGVzdERpdiIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj48L2Rpdj4KKyAgICA8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L0NoYW5nZUxvZwkocmV2aXNpb24gMjAyMzcpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDA3LTAzLTE2ICBTYW0gV2VpbmlnICA8c2FtQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgLSBQYXRjaCBmb3IgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIy
NDkKKyAgICAgICAgICBGQ0tlZGl0b3I6IDxocj4sIDx1bD4gYW5kIDxvbD4gaGF2ZSBpZD0idW5k
ZWZpbmVkIgorCisgICAgICAgIENvbnZlcnQgdW5kZWZpbmVkIGFuZCBudWxsIHRvIGEgbnVsbCBz
dHJpbmcgZm9yIHRoaXJkIGFyZ3VtZW50IG9mCisgICAgICAgIGV4ZWNDb21tYW5kKCk7IAorCisg
ICAgICAgIFRlc3Q6IGVkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy5o
dG1sCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogYmluZGluZ3MvanMva2pzX2JpbmRpbmcuY3BwOgorICAgICAgICAoS0pTOjp2YWx1ZVRv
U3RyaW5nV2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9r
anNfYmluZGluZy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5pZGw6CisKIDIwMDctMDMtMTYgIExhcnMgS25v
bGwgPGxhcnNAdHJvbGx0ZWNoLmNvbT4KIAogICAgICAgICBkb24ndCB1c2UgI2ltcG9ydCBpbiAu
Y3BwIGZpbGVzLgpJbmRleDogV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oJKHJldmlzaW9uIDIwMjM3KQorKysgV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTg5MzUsOCArODkzNSw4IEBACiAJCQkJMTRERkIz
M0YwQTdERjc2MzAwMThGNzY5IC8qIERlcml2ZWQgU291cmNlcyAqLywKIAkJCQk5M0Y4QjMwNjBB
MzAwRkVBMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvckpTLnBtICovLAogCQkJCTFBOUVGNDU2MEEx
Qjk1N0QwMDMzMkI2MyAvKiBKU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAgKi8s
Ci0JCQkJRTEwQjkzN0IwQjczQzAwQTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVy
LmggKi8sCiAJCQkJRTEwQjkzQzIwQjczQzI5MTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jl
c29sdmVyLmNwcCAqLywKKwkJCQlFMTBCOTM3QjBCNzNDMDBBMDAzRUQ4OTAgLyogSlNDdXN0b21Y
UGF0aE5TUmVzb2x2ZXIuaCAqLywKIAkJCQk5MjkyNjQ3NjBCNjFGQzcyMDBCNDFEMzQgLyogSlNE
b2N1bWVudEN1c3RvbS5jcHAgKi8sCiAJCQkJOTM4RTY1RjYwOUYwOTg1RDAwOEE0OEVDIC8qIEpT
SFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5jcHAgKi8sCiAJCQkJOTM4RTY1RjAwOUYwOTg0MDAw
OEE0OEVDIC8qIEpTSFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oICovLApJbmRleDogV2ViQ29y
ZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5k
aW5ncy9qcy9ranNfYmluZGluZy5jcHAJKHJldmlzaW9uIDIwMjM3KQorKysgV2ViQ29yZS9iaW5k
aW5ncy9qcy9ranNfYmluZGluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw3IEBACiAg
KiAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEtERSBsaWJyYXJpZXMKICAqICBDb3B5cmlnaHQg
KEMpIDE5OTktMjAwMSBIYXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQogICogIENvcHlyaWdo
dCAoQykgMjAwNCwgMjAwNSwgMjAwNiBBcHBsZSBDb21wdXRlciwgSW5jLgorICogIENvcHlyaWdo
dCAoQykgMjAwNyBTYW11ZWwgV2VpbmlnIDxzYW1Ad2Via2l0Lm9yZz4KICAqCiAgKiAgVGhpcyBs
aWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgog
ICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQ
dWJsaWMKQEAgLTMyMiw2ICszMjMsMTMgQEAgU3RyaW5nIHZhbHVlVG9TdHJpbmdXaXRoTnVsbENo
ZWNrKEV4ZWNTdAogICAgIHJldHVybiB2YWwtPnRvU3RyaW5nKGV4ZWMpOwogfQogCitTdHJpbmcg
dmFsdWVUb1N0cmluZ1dpdGhVbmRlZmluZWRPck51bGxDaGVjayhFeGVjU3RhdGUqIGV4ZWMsIEpT
VmFsdWUqIHZhbCkKK3sKKyAgICBpZiAodmFsLT5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAg
ICByZXR1cm4gU3RyaW5nKCk7CisgICAgcmV0dXJuIHZhbC0+dG9TdHJpbmcoZXhlYyk7Cit9CisK
IHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBleGNlcHRpb25OYW1lc1tdID0gewogICAgIDAsCiAg
ICAgIklOREVYX1NJWkVfRVJSIiwKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMva2pzX2JpbmRp
bmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19iaW5kaW5nLmgJKHJl
dmlzaW9uIDIwMjM3KQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zLDYgKzMsNyBAQAogICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBL
REUgbGlicmFyaWVzCiAgKiAgQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgSGFycmkgUG9ydGVuIChw
b3J0ZW5Aa2RlLm9yZykKICAqICBDb3B5cmlnaHQgKEMpIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYg
QXBwbGUgQ29tcHV0ZXIsIEluYy4KKyAqICBDb3B5cmlnaHQgKEMpIDIwMDcgU2FtdWVsIFdlaW5p
ZyA8c2FtQHdlYmtpdC5vcmc+CiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhl
IHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC0xNDcsNiArMTQ4LDcg
QEAgbmFtZXNwYWNlIEtKUyB7CiAgICAgSlNWYWx1ZSoganNTdHJpbmdPclVuZGVmaW5lZChjb25z
dCBXZWJDb3JlOjpTdHJpbmcmKTsgLy8gdW5kZWZpbmVkIGlmIHRoZSBzdHJpbmcgaXMgbnVsbAog
ICAgIEpTVmFsdWUqIGpzU3RyaW5nT3JGYWxzZShjb25zdCBXZWJDb3JlOjpTdHJpbmcmKTsgLy8g
Ym9vbGVhbiBmYWxzZSBpZiB0aGUgc3RyaW5nIGlzIG51bGwKICAgICBXZWJDb3JlOjpTdHJpbmcg
dmFsdWVUb1N0cmluZ1dpdGhOdWxsQ2hlY2soRXhlY1N0YXRlKiwgSlNWYWx1ZSopOyAvLyBudWxs
IFN0cmluZyBpZiB0aGUgdmFsdWUgaXMgbnVsbAorICAgIFdlYkNvcmU6OlN0cmluZyB2YWx1ZVRv
U3RyaW5nV2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKEV4ZWNTdGF0ZSosIEpTVmFsdWUqKTsgLy8g
bnVsbCBTdHJpbmcgaWYgdGhlIHZhbHVlIGlzIG51bGwgb3IgdW5kZWZpbmVkCiAKICAgICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgVD4gaW5saW5lIEpTVmFsdWUqIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBQ
YXNzUmVmUHRyPFQ+IHB0cikgeyByZXR1cm4gdG9KUyhleGVjLCBwdHIuZ2V0KCkpOyB9CiAgIApJ
bmRleDogV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCShyZXZp
c2lvbiAyMDIzNykKKysrIFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMu
cG0JKHdvcmtpbmcgY29weSkKQEAgLTEsNyArMSw3IEBACiAjCiAjIENvcHlyaWdodCAoQykgMjAw
NSwgMjAwNiwgMjAwNyBOaWtvbGFzIFppbW1lcm1hbm4gPHppbW1lcm1hbm5Aa2RlLm9yZz4KICMg
Q29weXJpZ2h0IChDKSAyMDA2IEFuZGVycyBDYXJsc3NvbiA8YW5kZXJzY2FAbWFjLmNvbT4KLSMg
Q29weXJpZ2h0IChDKSAyMDA2IFNhbXVlbCBXZWluaWcgPHNhbS53ZWluaWdAZ21haWwuY29tPgor
IyBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcgU2FtdWVsIFdlaW5pZyA8c2FtQHdlYmtpdC5vcmc+
CiAjIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292IDxhcEB3ZWJraXQub3Jn
PgogIyBDb3B5cmlnaHQgKEMpIDIwMDYgQXBwbGUgQ29tcHV0ZXIsIEluYy4KICMKQEAgLTEyNjcs
NiArMTI2Nyw3IEBAIHN1YiBKU1ZhbHVlVG9OYXRpdmUKICAgICByZXR1cm4gIiR2YWx1ZS0+dG9T
dHJpbmcoZXhlYykiIGlmICR0eXBlIGVxICJBdG9taWNTdHJpbmciOwogICAgIGlmICgkdHlwZSBl
cSAiRE9NU3RyaW5nIikgewogICAgICAgICByZXR1cm4gInZhbHVlVG9TdHJpbmdXaXRoTnVsbENo
ZWNrKGV4ZWMsICR2YWx1ZSkiIGlmICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJD
b252ZXJ0TnVsbFRvTnVsbFN0cmluZyJ9OworICAgICAgICByZXR1cm4gInZhbHVlVG9TdHJpbmdX
aXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2soZXhlYywgJHZhbHVlKSIgaWYgJHNpZ25hdHVyZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkNvbnZlcnRVbmRlZmluZWRPck51bGxUb051bGxTdHJpbmcifTsK
ICAgICAgICAgcmV0dXJuICIkdmFsdWUtPnRvU3RyaW5nKGV4ZWMpIjsKICAgICB9CiAKSW5kZXg6
IFdlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1
bWVudC5pZGwJKHJldmlzaW9uIDIwMjM3KQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNiBB
cHBsZSBDb21wdXRlciwgSW5jLgotICogQ29weXJpZ2h0IChDKSAyMDA2IFNhbXVlbCBXZWluaWcg
PHNhbS53ZWluaWdAZ21haWwuY29tPgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3IFNhbXVl
bCBXZWluaWcgPHNhbUB3ZWJraXQub3JnPgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRl
ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zNSw3ICsz
NSw3IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgQ29tbWVudCAgICAgICAgICAgIGNyZWF0ZUNv
bW1lbnQoaW4gRE9NU3RyaW5nIGRhdGEpOwogICAgICAgICBDREFUQVNlY3Rpb24gICAgICAgY3Jl
YXRlQ0RBVEFTZWN0aW9uKGluIERPTVN0cmluZyBkYXRhKQogICAgICAgICAgICAgcmFpc2VzKERP
TUV4Y2VwdGlvbik7Ci0gICAgICAgIFtPbGRTdHlsZU9iakNdIFByb2Nlc3NpbmdJbnN0cnVjdGlv
biBjcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oaW4gRE9NU3RyaW5nIHRhcmdldCwgCisgICAg
ICAgIFtPbGRTdHlsZU9iakNdIFByb2Nlc3NpbmdJbnN0cnVjdGlvbiBjcmVhdGVQcm9jZXNzaW5n
SW5zdHJ1Y3Rpb24oaW4gRE9NU3RyaW5nIHRhcmdldCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01T
dHJpbmcgZGF0YSkKICAgICAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICAgICAg
QXR0ciAgICAgICAgICAgICAgIGNyZWF0ZUF0dHJpYnV0ZShpbiBET01TdHJpbmcgbmFtZSkKQEAg
LTg2LDE1ICs4NiwxNSBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIC8vIERPTSBMZXZlbCAyIFRy
YW52ZXJzYWwgYW5kIFJhbmdlIChEb2N1bWVudFRyYXZlcnNhbCBpbnRlcmZhY2UpCiAKICNpZiAh
ZGVmaW5lZChMQU5HVUFHRV9PQkpFQ1RJVkVfQykKLSAgICAgICAgTm9kZUl0ZXJhdG9yICAgICAg
IGNyZWF0ZU5vZGVJdGVyYXRvcihpbiBOb2RlIHJvb3QsIAorICAgICAgICBOb2RlSXRlcmF0b3Ig
ICAgICAgY3JlYXRlTm9kZUl0ZXJhdG9yKGluIE5vZGUgcm9vdCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1bnNpZ25lZCBsb25nIHdoYXRUb1Nob3cs
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gTm9kZUZp
bHRlciBmaWx0ZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gYm9vbGVhbiBlbnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCiAgICAgICAgICAgICByYWlz
ZXMoRE9NRXhjZXB0aW9uKTsKLSAgICAgICAgVHJlZVdhbGtlciBjcmVhdGVUcmVlV2Fsa2VyKGlu
IE5vZGUgcm9vdCwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1bnNp
Z25lZCBsb25nIHdoYXRUb1Nob3csIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gTm9kZUZpbHRlciBmaWx0ZXIsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gYm9vbGVhbiBlbnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCisgICAgICAgIFRyZWVX
YWxrZXIgICAgICAgICBjcmVhdGVUcmVlV2Fsa2VyKGluIE5vZGUgcm9vdCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gdW5zaWduZWQgbG9uZyB3aGF0VG9T
aG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBOb2Rl
RmlsdGVyIGZpbHRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gYm9vbGVhbiBlbnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCiAgICAgICAgICAgICByYWlz
ZXMoRE9NRXhjZXB0aW9uKTsKICNlbmRpZgogCkBAIC0xMDgsNyArMTA4LDcgQEAgbW9kdWxlIGNv
cmUgewogCiAgICAgICAgIC8vIERPTSBMZXZlbCAyIFN0eWxlIChEb2N1bWVudENTUyBpbnRlcmZh
Y2UpCiAKLSAgICAgICAgW09sZFN0eWxlT2JqQ10gQ1NTU3R5bGVEZWNsYXJhdGlvbiBnZXRPdmVy
cmlkZVN0eWxlKGluIEVsZW1lbnQgZWxlbWVudCwgCisgICAgICAgIFtPbGRTdHlsZU9iakNdIENT
U1N0eWxlRGVjbGFyYXRpb24gZ2V0T3ZlcnJpZGVTdHlsZShpbiBFbGVtZW50IGVsZW1lbnQsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbiBET01TdHJpbmcgcHNldWRvRWxlbWVudCk7CiAKICNpZmRlZiBFTkFCTEVfWFBBVEgKQEAg
LTExOCw3ICsxMTgsNyBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgICAgICByYWlzZXMoRE9NRXhj
ZXB0aW9uKTsKICAgICAgICAgWFBhdGhOU1Jlc29sdmVyICAgIGNyZWF0ZU5TUmVzb2x2ZXIoaW4g
Tm9kZSBub2RlUmVzb2x2ZXIpOwogICAgICAgICBbT2xkU3R5bGVPYmpDXSBYUGF0aFJlc3VsdCBl
dmFsdWF0ZShpbiBET01TdHJpbmcgZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW4gTm9kZSBjb250ZXh0Tm9kZSwgCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIE5vZGUgY29udGV4dE5vZGUsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIFhQYXRoTlNSZXNvbHZl
ciByZXNvbHZlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW4gdW5zaWduZWQgc2hvcnQgdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW4gWFBhdGhSZXN1bHQgaW5SZXN1bHQpCkBAIC0xMjcsOSArMTI3LDkgQEAg
bW9kdWxlIGNvcmUgewogCiAgICAgICAgIC8vIENvbW1vbiBleHRlbnNpb25zCiAKLSAgICAgICAg
Ym9vbGVhbiBleGVjQ29tbWFuZChpbiBET01TdHJpbmcgY29tbWFuZCwgCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW4gW09wdGlvbmFsXSBib29sZWFuIHVzZXJJbnRlcmZhY2UsIAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGluIFtPcHRpb25hbF0gRE9NU3RyaW5nIHZhbHVlKTsK
KyAgICAgICAgYm9vbGVhbiBleGVjQ29tbWFuZChpbiBET01TdHJpbmcgY29tbWFuZCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFuIHVzZXJJbnRlcmZhY2UsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW4gW0NvbnZlcnRVbmRlZmluZWRPck51bGxUb051bGxTdHJp
bmddIERPTVN0cmluZyB2YWx1ZSk7CiAgICAgICAgIGJvb2xlYW4gcXVlcnlDb21tYW5kRW5hYmxl
ZChpbiBET01TdHJpbmcgY29tbWFuZCk7CiAgICAgICAgIGJvb2xlYW4gcXVlcnlDb21tYW5kSW5k
ZXRlcm0oaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwogICAgICAgICBib29sZWFuIHF1ZXJ5Q29tbWFu
ZFN0YXRlKGluIERPTVN0cmluZyBjb21tYW5kKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>13718</attachid>
            <date>2007-03-20 11:17:15 -0700</date>
            <delta_ts>2007-03-21 09:34:05 -0700</delta_ts>
            <desc>more updated patch</desc>
            <filename>execComPatch5.diff</filename>
            <type>text/plain</type>
            <size>15555</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMzQ1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDctMDMtMjAgIFNhbSBXZWluaWcgIDxzYW1A
d2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAtIFRlc3QgZm9yIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEy
MjQ5CisgICAgICAgICAgRkNLZWRpdG9yOiA8aHI+LCA8dWw+IGFuZCA8b2w+IGhhdmUgaWQ9InVu
ZGVmaW5lZCIKKworICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNvbWJp
bmF0aW9ucy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZXhlY0NvbW1h
bmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy5odG1sOiBBZGRlZC4KKwogMjAwNy0wMy0yMCAgQWxl
eGV5IFByb3NrdXJ5YWtvdiAgPGFwQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4uCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2FyZ3VtZW50cy1j
b21iaW5hdGlvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRp
bmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5kL2FyZ3VtZW50cy1jb21i
aW5hdGlvbnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE0IEBACitUaGVz
ZSBhcmUgdGVzdHMgZm9yIHRlc3RpbmcgdGhlIGhvdyBleGVjQ29tbWFuZCgpIHdvcmtzIHdpdGgg
ZGlmZmVyZW50IGNvbWJpbmF0aW9ucyBvZiBhcmd1bWVudHMuIFRoZSAiSW5zZXJ0SG9yaXpvbnRh
bFJ1bGUiIGNvbW1hbmQgd2FzIGNob3NlbiBhcmJpdHJhcmlseSBiZWNhdXNlIGl0IHdhcyB3aGF0
IEkgd2FzIHdvcmtpbmcgb24gYXQgdGhlIHRpbWUsIGJ1dCB0aGUgcmVzdWx0cyBzaG91bGQgYmUg
cGFyYWxsZWxlZCBpbiB0aGUgb3RoZXIgY29tbWFuZHMgYXMgd2VsbC4KKworQ09OU09MRQorCitQ
QVNTIDxocj48L2hyPiBpcyA8aHI+PC9ocj4KK1BBU1MgPGhyPjwvaHI+IGlzIDxocj48L2hyPgor
UEFTUyA8aHIgaWQ9ImZvbyI+PC9ocj4gaXMgPGhyIGlkPSJmb28iPjwvaHI+CitQQVNTIDxociBp
ZD0iZm9vIj48L2hyPiBpcyA8aHIgaWQ9ImZvbyI+PC9ocj4KK1BBU1MgPGhyIGlkPSIiPjwvaHI+
IGlzIDxociBpZD0iIj48L2hyPgorUEFTUyA8aHI+PC9ocj4gaXMgPGhyPjwvaHI+CitQQVNTIDxo
cj48L2hyPiBpcyA8aHI+PC9ocj4KK1BBU1MgPGhyIGlkPSIwIj48L2hyPiBpcyA8aHIgaWQ9IjAi
PjwvaHI+CitQQVNTIDxocj48L2hyPiBpcyA8aHI+PC9ocj4KKwpJbmRleDogTGF5b3V0VGVzdHMv
ZWRpdGluZy9leGVjQ29tbWFuZC9hcmd1bWVudHMtY29tYmluYXRpb25zLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9leGVjQ29tbWFuZC9hcmd1bWVudHMtY29tYmluYXRp
b25zLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2V4ZWNDb21tYW5k
L2FyZ3VtZW50cy1jb21iaW5hdGlvbnMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw5MyBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHRpdGxlPkV4
ZWNDb21tYW5kIGFyZ3VtZW50IGNvbWJpbmF0aW9uczwvdGl0bGU+CisgICAgICAgIDxzdHlsZT4K
KyAgICAgICAgICAgIC5wYXNzIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiBncmVlbjsgfQor
ICAgICAgICAgICAgLmZhaWwgeyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IHJlZDsgfQorICAg
ICAgICAgICAgI2NvbnNvbGUgeyBib3JkZXI6IDFweCBzb2xpZCBibGFjazsgcGFkZGluZzogMTBw
eDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfQorICAgICAgICA8L3N0eWxlPgorICAgICAgICA8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBmdW5jdGlvbiBkZWJ1Zyht
c2cpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIHNwYW4gPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAgICAgICAgICAgICAgc3Bhbi5pbm5lckhUTUwgPSBt
c2cgKyAnPGJyPic7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnNvbGUiKS5hcHBlbmRDaGlsZChzcGFuKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ZnVuY3Rpb24gZXNjYXBlSFRNTCh0ZXh0KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IHJldHVybiB0ZXh0LnJlcGxhY2UoLyYvZywgIiZhbXA7IikucmVwbGFjZSgvPC9nLCAiJmx0OyIp
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0UGFzc2VkKG1zZykK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkZWJ1ZygnPHNwYW4gY2xhc3M9InBhc3Mi
PlBBU1M8L3NwYW4+ICcgKyBtc2cgKyAnPC9zcGFuPicpOworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICBmdW5jdGlvbiB0ZXN0RmFpbGVkKG1zZykKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBkZWJ1ZygnPHNwYW4gY2xhc3M9ImZhaWwiPkZBSUw8L3NwYW4+ICcgKyBtc2cgKyAn
PC9zcGFuPicpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RXF1
YWxzKGEsIGIpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYgKGEgPT0gYikgewor
ICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKGVzY2FwZUhUTUwoYSkgKyAiIDxiPmlzPC9i
PiAiICsgZXNjYXBlSFRNTChiKSk7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAgICAgICAgdGVzdEZhaWxlZCgiPGI+ZXhwZWN0ZWQgb3V0cHV0IHdhczwvYj4gIiArIGVz
Y2FwZUhUTUwoYSkgKyAiIDxiPnNob3VsZCBoYXZlIGJlZW48L2I+ICIgKyBlc2NhcGVIVE1MKGIp
KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0
aW9uIHRlc3QoY29kZVRvRXZhbCwgZXhwZWN0ZWRPdXRwdXQpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAg
ICAgICAgICAgICBlLnNldEF0dHJpYnV0ZSgnY29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKKyAg
ICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpOworICAgICAgICAgICAg
ICAgIGUuZm9jdXMoKTsKKyAgICAgICAgICAgICAgICBldmFsKGNvZGVUb0V2YWwpOworICAgICAg
ICAgICAgICAgIHRlc3RFcXVhbHMoZS5pbm5lckhUTUwsIGV4cGVjdGVkT3V0cHV0KTsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgZnVuY3Rpb24gcnVuVGVzdHMoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAg
ICAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAg
ICAgICAgICAgICAgICAvLyBUZXN0IHdpdGggMSBhcmd1bWVudC4KKyAgICAgICAgICAgICAgICB0
ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRhbFJ1bGUiKScsICc8aHI+
PC9ocj4nKTsKKworICAgICAgICAgICAgICAgIC8vIFRlc3Qgd2l0aCAyIGFyZ3VtZW50cy4KKyAg
ICAgICAgICAgICAgICB0ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRh
bFJ1bGUiLCBmYWxzZSknLCAnPGhyPjwvaHI+Jyk7CisKKyAgICAgICAgICAgICAgICAvLyBUZXN0
IHdpdGggMyBhcmd1bWVudHMuCisgICAgICAgICAgICAgICAgdGVzdCgnZG9jdW1lbnQuZXhlY0Nv
bW1hbmQoIkluc2VydEhvcml6b250YWxSdWxlIiwgZmFsc2UsICJmb28iKScsICc8aHIgaWQ9ImZv
byI+PC9ocj4nKTsKKworICAgICAgICAgICAgICAgIC8vIFRlc3Qgd2l0aCA0IGFyZ3VtZW50cy4g
KHNob3VsZCBpZ25vcmUgdGhlIGZvdXJ0aCBhcmd1bWVudCBzaWxlbnRseSkKKyAgICAgICAgICAg
ICAgICB0ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRhbFJ1bGUiLCBm
YWxzZSwgImZvbyIsICJiYXIiKScsICc8aHIgaWQ9ImZvbyI+PC9ocj4nKTsKKworICAgICAgICAg
ICAgICAgIC8vIFRlc3QgZW1wdHkgU3RyaW5nIDNyZCBwYXJhbWV0ZXIuIChhZGRzIGVtcHJ0eSBp
ZCB2YWx1ZSkKKyAgICAgICAgICAgICAgICB0ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5z
ZXJ0SG9yaXpvbnRhbFJ1bGUiLCBmYWxzZSwgIiIpJywgJzxociBpZD0iIj48L2hyPicpOworCisg
ICAgICAgICAgICAgICAgLy8gVGVzdCBudWxsIDNyZCBwYXJhbWV0ZXIuIChzaG91bGQgdHJlYXQg
YXMgaWYgb25seSB0d28gYXJndW1lbnRzIHdlcmUgcGFzc2VkLCBzYW1lIGFzIHVuZGVmaW5lZCkK
KyAgICAgICAgICAgICAgICB0ZXN0KCdkb2N1bWVudC5leGVjQ29tbWFuZCgiSW5zZXJ0SG9yaXpv
bnRhbFJ1bGUiLCBmYWxzZSwgbnVsbCknLCAnPGhyPjwvaHI+Jyk7CisKKyAgICAgICAgICAgICAg
ICAvLyBUZXN0IHVuZGVmaW5lZCAzcmQgcGFyYW1ldGVyLiAoc2hvdWxkIHRyZWF0IGFzIGlmIG9u
bHkgdHdvIGFyZ3VtZW50cyB3ZXJlIHBhc3NlZCwgc2FtZSBhcyBudWxsKQorICAgICAgICAgICAg
ICAgIHRlc3QoJ2RvY3VtZW50LmV4ZWNDb21tYW5kKCJJbnNlcnRIb3Jpem9udGFsUnVsZSIsIGZh
bHNlLCB1bmRlZmluZWQpJywgJzxocj48L2hyPicpOworCisgICAgICAgICAgICAgICAgLy8gVGVz
dCAwIGZvciAzcmQgcGFyYW1ldGVyLiAobm90aGluZyBzcGVjaWFsLCBpZCB2YWx1ZSBzaG91bGQg
ZXF1YWwgdGhlIHN0cmluZyAwKQorICAgICAgICAgICAgICAgIHRlc3QoJ2RvY3VtZW50LmV4ZWND
b21tYW5kKCJJbnNlcnRIb3Jpem9udGFsUnVsZSIsIGZhbHNlLCAwKScsICc8aHIgaWQ9IjAiPjwv
aHI+Jyk7CisKKyAgICAgICAgICAgICAgICAvLyBUZXN0IHVuZGVmaW5lZCAzcmQgcGFyYW1ldGVy
IGltcGxpY2l0bHkgdXNpbmcgaGVscGVyIGZ1bmN0aW9uLiAoc2hvdWxkIHRyZWF0IGFzIGlmIG9u
bHkgdHdvIGFyZ3VtZW50cyB3ZXJlIHBhc3NlZCwgc2FtZSBhcyBudWxsKQorICAgICAgICAgICAg
ICAgIHRlc3QoJ2Z1bmN0aW9uIEV4ZWNDb21tYW5kKGNvbW1hbmQsIGNvbW1hbmRQYXJhbSkgeyBk
b2N1bWVudC5leGVjQ29tbWFuZChjb21tYW5kLCBmYWxzZSwgY29tbWFuZFBhcmFtKTsgfSBFeGVj
Q29tbWFuZCgiSW5zZXJ0SG9yaXpvbnRhbFJ1bGUiKTsnLCAnPGhyPjwvaHI+Jyk7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9
InJ1blRlc3RzKCk7Ij4KKyAgICAgICAgPHA+VGhlc2UgYXJlIHRlc3RzIGZvciB0ZXN0aW5nIHRo
ZSBob3cgZXhlY0NvbW1hbmQoKSB3b3JrcyB3aXRoIGRpZmZlcmVudCBjb21iaW5hdGlvbnMgb2Yg
YXJndW1lbnRzLiBUaGUgIkluc2VydEhvcml6b250YWxSdWxlIiBjb21tYW5kIHdhcyAKKyAgICAg
ICAgICAgIGNob3NlbiBhcmJpdHJhcmlseSBiZWNhdXNlIGl0IHdhcyB3aGF0IEkgd2FzIHdvcmtp
bmcgb24gYXQgdGhlIHRpbWUsIGJ1dCB0aGUgcmVzdWx0cyBzaG91bGQgYmUgcGFyYWxsZWxlZCBp
biB0aGUgb3RoZXIgY29tbWFuZHMgYXMgd2VsbC48L3A+CisKKyAgICAgICAgPGg0PkNPTlNPTEU8
L2g0PgorICAgICAgICA8cHJlIGlkPSdjb25zb2xlJz48L3ByZT4KKyAgICA8L2JvZHk+Cis8L2h0
bWw+CkluZGV4OiBXZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL0NoYW5n
ZUxvZwkocmV2aXNpb24gMjAzNDUpCisrKyBXZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDIyIEBACisyMDA3LTAzLTIwICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBQ
YXRjaCBmb3IgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyNDkKKyAg
ICAgICAgICBGQ0tlZGl0b3I6IDxocj4sIDx1bD4gYW5kIDxvbD4gaGF2ZSBpZD0idW5kZWZpbmVk
IgorCisgICAgICAgIENvbnZlcnQgdW5kZWZpbmVkIGFuZCBudWxsIHRvIGEgbnVsbCBzdHJpbmcg
Zm9yIHRoaXJkIGFyZ3VtZW50IG9mCisgICAgICAgIGV4ZWNDb21tYW5kKCk7IAorCisgICAgICAg
IFRlc3Q6IGVkaXRpbmcvZXhlY0NvbW1hbmQvYXJndW1lbnRzLWNvbWJpbmF0aW9ucy5odG1sCisK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICog
YmluZGluZ3MvanMva2pzX2JpbmRpbmcuY3BwOgorICAgICAgICAoS0pTOjp2YWx1ZVRvU3RyaW5n
V2l0aFVuZGVmaW5lZE9yTnVsbENoZWNrKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9ranNfYmlu
ZGluZy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgor
ICAgICAgICAqIGRvbS9Eb2N1bWVudC5pZGw6CisKIDIwMDctMDMtMjAgIEFsZXhleSBQcm9za3Vy
eWFrb3YgIDxhcEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluLgpJbmRl
eDogV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDIw
MzQ1KQorKysgV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtp
bmcgY29weSkKQEAgLTg5NjMsOCArODk2Myw4IEBACiAJCQkJMTRERkIzM0YwQTdERjc2MzAwMThG
NzY5IC8qIERlcml2ZWQgU291cmNlcyAqLywKIAkJCQk5M0Y4QjMwNjBBMzAwRkVBMDBGNjFBQjgg
LyogQ29kZUdlbmVyYXRvckpTLnBtICovLAogCQkJCTFBOUVGNDU2MEExQjk1N0QwMDMzMkI2MyAv
KiBKU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAgKi8sCi0JCQkJRTEwQjkzN0Iw
QjczQzAwQTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmggKi8sCiAJCQkJRTEw
QjkzQzIwQjczQzI5MTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmNwcCAqLywK
KwkJCQlFMTBCOTM3QjBCNzNDMDBBMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIu
aCAqLywKIAkJCQk5MjkyNjQ3NjBCNjFGQzcyMDBCNDFEMzQgLyogSlNEb2N1bWVudEN1c3RvbS5j
cHAgKi8sCiAJCQkJOTM4RTY1RjYwOUYwOTg1RDAwOEE0OEVDIC8qIEpTSFRNTEVsZW1lbnRXcmFw
cGVyRmFjdG9yeS5jcHAgKi8sCiAJCQkJOTM4RTY1RjAwOUYwOTg0MDAwOEE0OEVDIC8qIEpTSFRN
TEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oICovLApJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9r
anNfYmluZGluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmlu
ZGluZy5jcHAJKHJldmlzaW9uIDIwMzQ1KQorKysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmlu
ZGluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw3IEBACiAgKiAgVGhpcyBmaWxlIGlz
IHBhcnQgb2YgdGhlIEtERSBsaWJyYXJpZXMKICAqICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBI
YXJyaSBQb3J0ZW4gKHBvcnRlbkBrZGUub3JnKQogICogIENvcHlyaWdodCAoQykgMjAwNCwgMjAw
NSwgMjAwNiBBcHBsZSBDb21wdXRlciwgSW5jLgorICogIENvcHlyaWdodCAoQykgMjAwNyBTYW11
ZWwgV2VpbmlnIDxzYW1Ad2Via2l0Lm9yZz4KICAqCiAgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUg
c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogIG1vZGlmeSBpdCB1
bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKQEAgLTMyMiw2
ICszMjMsMTMgQEAgU3RyaW5nIHZhbHVlVG9TdHJpbmdXaXRoTnVsbENoZWNrKEV4ZWNTdAogICAg
IHJldHVybiB2YWwtPnRvU3RyaW5nKGV4ZWMpOwogfQogCitTdHJpbmcgdmFsdWVUb1N0cmluZ1dp
dGhVbmRlZmluZWRPck51bGxDaGVjayhFeGVjU3RhdGUqIGV4ZWMsIEpTVmFsdWUqIHZhbCkKK3sK
KyAgICBpZiAodmFsLT5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICByZXR1cm4gU3RyaW5n
KCk7CisgICAgcmV0dXJuIHZhbC0+dG9TdHJpbmcoZXhlYyk7Cit9CisKIHN0YXRpYyBjb25zdCBj
aGFyKiBjb25zdCBleGNlcHRpb25OYW1lc1tdID0gewogICAgIDAsCiAgICAgIklOREVYX1NJWkVf
RVJSIiwKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvanMva2pzX2JpbmRpbmcuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc19iaW5kaW5nLmgJKHJldmlzaW9uIDIwMzQ1KQor
KysgV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfYmluZGluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0z
LDYgKzMsNyBAQAogICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBLREUgbGlicmFyaWVzCiAg
KiAgQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgSGFycmkgUG9ydGVuIChwb3J0ZW5Aa2RlLm9yZykK
ICAqICBDb3B5cmlnaHQgKEMpIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYgQXBwbGUgQ29tcHV0ZXIs
IEluYy4KKyAqICBDb3B5cmlnaHQgKEMpIDIwMDcgU2FtdWVsIFdlaW5pZyA8c2FtQHdlYmtpdC5v
cmc+CiAgKgogICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKICAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCkBAIC0xNDcsNiArMTQ4LDcgQEAgbmFtZXNwYWNlIEtK
UyB7CiAgICAgSlNWYWx1ZSoganNTdHJpbmdPclVuZGVmaW5lZChjb25zdCBXZWJDb3JlOjpTdHJp
bmcmKTsgLy8gdW5kZWZpbmVkIGlmIHRoZSBzdHJpbmcgaXMgbnVsbAogICAgIEpTVmFsdWUqIGpz
U3RyaW5nT3JGYWxzZShjb25zdCBXZWJDb3JlOjpTdHJpbmcmKTsgLy8gYm9vbGVhbiBmYWxzZSBp
ZiB0aGUgc3RyaW5nIGlzIG51bGwKICAgICBXZWJDb3JlOjpTdHJpbmcgdmFsdWVUb1N0cmluZ1dp
dGhOdWxsQ2hlY2soRXhlY1N0YXRlKiwgSlNWYWx1ZSopOyAvLyBudWxsIFN0cmluZyBpZiB0aGUg
dmFsdWUgaXMgbnVsbAorICAgIFdlYkNvcmU6OlN0cmluZyB2YWx1ZVRvU3RyaW5nV2l0aFVuZGVm
aW5lZE9yTnVsbENoZWNrKEV4ZWNTdGF0ZSosIEpTVmFsdWUqKTsgLy8gbnVsbCBTdHJpbmcgaWYg
dGhlIHZhbHVlIGlzIG51bGwgb3IgdW5kZWZpbmVkCiAKICAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4gaW5saW5lIEpTVmFsdWUqIHRvSlMoRXhlY1N0YXRlKiBleGVjLCBQYXNzUmVmUHRyPFQ+IHB0
cikgeyByZXR1cm4gdG9KUyhleGVjLCBwdHIuZ2V0KCkpOyB9CiAgIApJbmRleDogV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCShyZXZpc2lvbiAyMDM0NSkKKysr
IFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0JKHdvcmtpbmcgY29w
eSkKQEAgLTEsNyArMSw3IEBACiAjCiAjIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAwNyBO
aWtvbGFzIFppbW1lcm1hbm4gPHppbW1lcm1hbm5Aa2RlLm9yZz4KICMgQ29weXJpZ2h0IChDKSAy
MDA2IEFuZGVycyBDYXJsc3NvbiA8YW5kZXJzY2FAbWFjLmNvbT4KLSMgQ29weXJpZ2h0IChDKSAy
MDA2IFNhbXVlbCBXZWluaWcgPHNhbS53ZWluaWdAZ21haWwuY29tPgorIyBDb3B5cmlnaHQgKEMp
IDIwMDYsIDIwMDcgU2FtdWVsIFdlaW5pZyA8c2FtQHdlYmtpdC5vcmc+CiAjIENvcHlyaWdodCAo
QykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292IDxhcEB3ZWJraXQub3JnPgogIyBDb3B5cmlnaHQg
KEMpIDIwMDYgQXBwbGUgQ29tcHV0ZXIsIEluYy4KICMKQEAgLTEyNzEsNiArMTI3MSw3IEBAIHN1
YiBKU1ZhbHVlVG9OYXRpdmUKICAgICByZXR1cm4gIiR2YWx1ZS0+dG9TdHJpbmcoZXhlYykiIGlm
ICR0eXBlIGVxICJBdG9taWNTdHJpbmciOwogICAgIGlmICgkdHlwZSBlcSAiRE9NU3RyaW5nIikg
ewogICAgICAgICByZXR1cm4gInZhbHVlVG9TdHJpbmdXaXRoTnVsbENoZWNrKGV4ZWMsICR2YWx1
ZSkiIGlmICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDb252ZXJ0TnVsbFRvTnVs
bFN0cmluZyJ9OworICAgICAgICByZXR1cm4gInZhbHVlVG9TdHJpbmdXaXRoVW5kZWZpbmVkT3JO
dWxsQ2hlY2soZXhlYywgJHZhbHVlKSIgaWYgJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkNvbnZlcnRVbmRlZmluZWRPck51bGxUb051bGxTdHJpbmcifTsKICAgICAgICAgcmV0dXJu
ICIkdmFsdWUtPnRvU3RyaW5nKGV4ZWMpIjsKICAgICB9CiAKSW5kZXg6IFdlYkNvcmUvZG9tL0Rv
Y3VtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwJKHJldmlz
aW9uIDIwMzQ1KQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNiBBcHBsZSBDb21wdXRlciwg
SW5jLgotICogQ29weXJpZ2h0IChDKSAyMDA2IFNhbXVlbCBXZWluaWcgPHNhbS53ZWluaWdAZ21h
aWwuY29tPgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3IFNhbXVlbCBXZWluaWcgPHNhbUB3
ZWJraXQub3JnPgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zNSw3ICszNSw3IEBAIG1vZHVsZSBj
b3JlIHsKICAgICAgICAgQ29tbWVudCAgICAgICAgICAgIGNyZWF0ZUNvbW1lbnQoaW4gRE9NU3Ry
aW5nIGRhdGEpOwogICAgICAgICBDREFUQVNlY3Rpb24gICAgICAgY3JlYXRlQ0RBVEFTZWN0aW9u
KGluIERPTVN0cmluZyBkYXRhKQogICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0g
ICAgICAgIFtPbGRTdHlsZU9iakNdIFByb2Nlc3NpbmdJbnN0cnVjdGlvbiBjcmVhdGVQcm9jZXNz
aW5nSW5zdHJ1Y3Rpb24oaW4gRE9NU3RyaW5nIHRhcmdldCwgCisgICAgICAgIFtPbGRTdHlsZU9i
akNdIFByb2Nlc3NpbmdJbnN0cnVjdGlvbiBjcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oaW4g
RE9NU3RyaW5nIHRhcmdldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgZGF0YSkKICAg
ICAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgQXR0ciAgICAgICAgICAg
ICAgIGNyZWF0ZUF0dHJpYnV0ZShpbiBET01TdHJpbmcgbmFtZSkKQEAgLTg2LDE1ICs4NiwxNSBA
QCBtb2R1bGUgY29yZSB7CiAgICAgICAgIC8vIERPTSBMZXZlbCAyIFRyYW52ZXJzYWwgYW5kIFJh
bmdlIChEb2N1bWVudFRyYXZlcnNhbCBpbnRlcmZhY2UpCiAKICNpZiAhZGVmaW5lZChMQU5HVUFH
RV9PQkpFQ1RJVkVfQykKLSAgICAgICAgTm9kZUl0ZXJhdG9yICAgICAgIGNyZWF0ZU5vZGVJdGVy
YXRvcihpbiBOb2RlIHJvb3QsIAorICAgICAgICBOb2RlSXRlcmF0b3IgICAgICAgY3JlYXRlTm9k
ZUl0ZXJhdG9yKGluIE5vZGUgcm9vdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbiB1bnNpZ25lZCBsb25nIHdoYXRUb1Nob3csCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gTm9kZUZpbHRlciBmaWx0ZXIsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBl
bnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9u
KTsKLSAgICAgICAgVHJlZVdhbGtlciBjcmVhdGVUcmVlV2Fsa2VyKGluIE5vZGUgcm9vdCwgCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1bnNpZ25lZCBsb25nIHdoYXRU
b1Nob3csIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gTm9kZUZpbHRl
ciBmaWx0ZXIsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVh
biBlbnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCisgICAgICAgIFRyZWVXYWxrZXIgICAgICAgICBj
cmVhdGVUcmVlV2Fsa2VyKGluIE5vZGUgcm9vdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW4gdW5zaWduZWQgbG9uZyB3aGF0VG9TaG93LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBOb2RlRmlsdGVyIGZpbHRlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBl
bnRpdHlSZWZlcmVuY2VFeHBhbnNpb24pCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9u
KTsKICNlbmRpZgogCkBAIC0xMDgsNyArMTA4LDcgQEAgbW9kdWxlIGNvcmUgewogCiAgICAgICAg
IC8vIERPTSBMZXZlbCAyIFN0eWxlIChEb2N1bWVudENTUyBpbnRlcmZhY2UpCiAKLSAgICAgICAg
W09sZFN0eWxlT2JqQ10gQ1NTU3R5bGVEZWNsYXJhdGlvbiBnZXRPdmVycmlkZVN0eWxlKGluIEVs
ZW1lbnQgZWxlbWVudCwgCisgICAgICAgIFtPbGRTdHlsZU9iakNdIENTU1N0eWxlRGVjbGFyYXRp
b24gZ2V0T3ZlcnJpZGVTdHlsZShpbiBFbGVtZW50IGVsZW1lbnQsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcg
cHNldWRvRWxlbWVudCk7CiAKICNpZmRlZiBFTkFCTEVfWFBBVEgKQEAgLTExOCw3ICsxMTgsNyBA
QCBtb2R1bGUgY29yZSB7CiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAg
ICAgWFBhdGhOU1Jlc29sdmVyICAgIGNyZWF0ZU5TUmVzb2x2ZXIoaW4gTm9kZSBub2RlUmVzb2x2
ZXIpOwogICAgICAgICBbT2xkU3R5bGVPYmpDXSBYUGF0aFJlc3VsdCBldmFsdWF0ZShpbiBET01T
dHJpbmcgZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gTm9kZSBjb250ZXh0Tm9kZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluIE5vZGUgY29udGV4dE5vZGUsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGluIFhQYXRoTlNSZXNvbHZlciByZXNvbHZlciwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gdW5zaWduZWQgc2hv
cnQgdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
WFBhdGhSZXN1bHQgaW5SZXN1bHQpCkBAIC0xMjcsMTMgKzEyNywyMSBAQCBtb2R1bGUgY29yZSB7
CiAKICAgICAgICAgLy8gQ29tbW9uIGV4dGVuc2lvbnMKIAotICAgICAgICBib29sZWFuIGV4ZWND
b21tYW5kKGluIERPTVN0cmluZyBjb21tYW5kLCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbiBbT3B0aW9uYWxdIGJvb2xlYW4gdXNlckludGVyZmFjZSwgCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW4gW09wdGlvbmFsXSBET01TdHJpbmcgdmFsdWUpOwotICAgICAgICBib29s
ZWFuIHF1ZXJ5Q29tbWFuZEVuYWJsZWQoaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwotICAgICAgICBi
b29sZWFuIHF1ZXJ5Q29tbWFuZEluZGV0ZXJtKGluIERPTVN0cmluZyBjb21tYW5kKTsKLSAgICAg
ICAgYm9vbGVhbiBxdWVyeUNvbW1hbmRTdGF0ZShpbiBET01TdHJpbmcgY29tbWFuZCk7Ci0gICAg
ICAgIGJvb2xlYW4gcXVlcnlDb21tYW5kU3VwcG9ydGVkKGluIERPTVN0cmluZyBjb21tYW5kKTsK
KyAgICAgICAgYm9vbGVhbiAgICAgICAgICAgIGV4ZWNDb21tYW5kKGluIERPTVN0cmluZyBjb21t
YW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiB1
c2VySW50ZXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
W0NvbnZlcnRVbmRlZmluZWRPck51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB2YWx1ZSk7CisK
KyNpZiBkZWZpbmVkKExBTkdVQUdFX09CSkVDVElWRV9DKQorICAgICAgICAvLyBGSVhNRTogcmVt
b3ZlIHRoZSB0aGVzZSB0d28gdmVyc2lvbnMgb25jZSBbT3B0aW9uYWxdIGlzIGltcGxlbWVudGVk
IGZvciBPYmplY3RpdmUtQy4KKyAgICAgICAgYm9vbGVhbiAgICAgICAgICAgIGV4ZWNDb21tYW5k
KGluIERPTVN0cmluZyBjb21tYW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gYm9vbGVhbiB1c2VySW50ZXJmYWNlKTsKKyAgICAgICAgYm9vbGVhbiAgICAgICAg
ICAgIGV4ZWNDb21tYW5kKGluIERPTVN0cmluZyBjb21tYW5kKTsKKyNlbmRpZgorCisgICAgICAg
IGJvb2xlYW4gICAgICAgICAgICBxdWVyeUNvbW1hbmRFbmFibGVkKGluIERPTVN0cmluZyBjb21t
YW5kKTsKKyAgICAgICAgYm9vbGVhbiAgICAgICAgICAgIHF1ZXJ5Q29tbWFuZEluZGV0ZXJtKGlu
IERPTVN0cmluZyBjb21tYW5kKTsKKyAgICAgICAgYm9vbGVhbiAgICAgICAgICAgIHF1ZXJ5Q29t
bWFuZFN0YXRlKGluIERPTVN0cmluZyBjb21tYW5kKTsKKyAgICAgICAgYm9vbGVhbiAgICAgICAg
ICAgIHF1ZXJ5Q29tbWFuZFN1cHBvcnRlZChpbiBET01TdHJpbmcgY29tbWFuZCk7CiAgICAgICAg
IFtDb252ZXJ0TnVsbFN0cmluZ1RvPUZhbHNlXSBET01TdHJpbmcgcXVlcnlDb21tYW5kVmFsdWUo
aW4gRE9NU3RyaW5nIGNvbW1hbmQpOwogCiAgICAgICAgIC8vIElFIGV4dGVuc2lvbnMK
</data>
<flag name="review"
          id="5462"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>