<?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>27889</bug_id>
          
          <creation_ts>2009-07-31 10:30:17 -0700</creation_ts>
          <short_desc>[Chromium] RTL autocomplete popup is not layout correctly.</short_desc>
          <delta_ts>2009-08-21 11:03:05 -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>Layout and Rendering</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="Xiaomei Ji">xji</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aharon</cc>
    
    <cc>eric</cc>
    
    <cc>jcampan</cc>
    
    <cc>mitz</cc>
    
    <cc>playmobil</cc>
    
    <cc>xji</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>136196</commentid>
    <comment_count>0</comment_count>
      <attachid>33887</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-07-31 10:30:17 -0700</bug_when>
    <thetext>Created attachment 33887
test case

Steps to reproduce:

1. Open attached file &quot;RTL_Form_Autofill_Pop-up.html&quot; in Chrome.
2. Type some long text in the &quot;First name&quot; input box
   &gt;&gt;Say &quot;abcd abcd abcd abcd abcd abcd&quot;
3. Click &quot;Submit&quot;
4. Open the file again
5. Type the first letter &quot;a&quot;
6. The form autofill pop-up should show up now

Result:
The form autofill pop-up width is much longer than that of the input box, it is left-aligned, and extended all the way to the right.

Expected:
All other browsers (Fx, IE, Safari), the width of the form autofill pop-up is always the
same as the width of input box, and show ellipsis for the long text inside
the pop-up, so they don&apos;t have this problem, please refer the picture attached</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136197</commentid>
    <comment_count>1</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-07-31 10:31:09 -0700</bug_when>
    <thetext>related Chromium bug:
http://code.google.com/p/chromium/issues/detail?id=7323</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136689</commentid>
    <comment_count>2</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-03 10:21:48 -0700</bug_when>
    <thetext>I am not sure what should be the correct behavior.
Following are my observations and my questions:

1. In windows, Safari, FireFox, and IE all behave the same. They all display the items in the popup list in left-to-right direction, no matter whether the input field is an LTR or RTL field.
Using the attached test case, I tried to submit the following RTL text and Bidi text which begins with &apos;ש&apos; logically.
(from left-to-right is the logical order)  &quot;ששש abc נננ&quot;  
(logical order)                                   &quot;ששש abcdefg נננ hijklmn&quot;
(visual order)                                    &quot;שששששש ננננננ בבבבבבבבב&quot;

Attached the snapshot ( RTL_form_autofill_safari_windows.jpg) of Safari in Windows in autofill phase.

2. Safari in Mac and Chrome behave the same. They both extend the item display width beyond the input field width so no text truncation is needed.  And they use heuristics to determine the directionality of items in the popup list. The directionality is based on the first character with strong directionality.
They display the items correctly if the directionality of the first strong-directionality character matches the directionality of the input field, such as RTL input field with an item begins with Hebrew character. But they do not display items correctly if the directionalities do not match, such as an RTL input field with an item begins with English character.

Attached the snapshots of Chrome in Windows where the directionality matches (chrome_item_begin_with_Hebrew.jpg) and does not match (chrome_item_begin_with_a.jpg).


I am trying to change Chrome to behave the same (limit the display width to be the same as input field width by truncating item text) in Windows as other browsers. My questions are:

1. why all those browsers either assume the popup item&apos;s directionality as LTR or based on heuristics? Is there any specific reason? Should the popup item be displayed using the  input field&apos;s directionality?

2. What should be the correct behavior in Mac, should I leave Chrome as it is to be consistent with Safari in Mac. Or should I change it to be the same as FireFox in Mac? (FireFox always do text truncation to keep the item width the same as input field width, and it always assumes text item as LTR directionality, no matter in Windows or Mac)?  How about Linux?

3. Jay mentioned that we do not want to restrict the width of combo-box (&lt;select&gt; tag), but how about the text display directionality? Should it be different from autofill popup?


Thanks,
Xiaomei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136691</commentid>
    <comment_count>3</comment_count>
      <attachid>33986</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-03 10:22:35 -0700</bug_when>
    <thetext>Created attachment 33986
Safari in Windows (Fx and IE in windows are the same)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136692</commentid>
    <comment_count>4</comment_count>
      <attachid>33987</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-03 10:24:25 -0700</bug_when>
    <thetext>Created attachment 33987
Chrome, directionality of item (begins with Hebrew) and input field (RTL) are the same.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136693</commentid>
    <comment_count>5</comment_count>
      <attachid>33988</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-03 10:25:44 -0700</bug_when>
    <thetext>Created attachment 33988
Chrome, directionality of item (begins with &apos;a&apos;) and input field (RTL) are different</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137039</commentid>
    <comment_count>6</comment_count>
    <who name="Jay Campan">jcampan</who>
    <bug_when>2009-08-04 10:10:00 -0700</bug_when>
    <thetext>Some answers:
&gt;1. why all those browsers either assume the popup item&apos;s directionality as LTR
&gt;or based on heuristics? Is there any specific reason? Should the popup item be
&gt;displayed using the  input field&apos;s directionality?
I am not sure why that is the behavior of all browsers. It suspect just like in Chrome this is just not implemented and defaults to LTR.
I think that the popup item should be using the input field&apos;s directionality.

&gt;2. What should be the correct behavior in Mac, should I leave Chrome as it is
&gt;to be consistent with Safari in Mac. Or should I change it to be the same as
&gt;FireFox in Mac? (FireFox always do text truncation to keep the item width the
&gt;same as input field width, and it always assumes text item as LTR
&gt;directionality, no matter in Windows or Mac)?  How about Linux?
I think Chrome on all platforms should limit the size of the popup to the size of the input field and use truncation.

&gt;3. Jay mentioned that we do not want to restrict the width of combo-box
&gt;(&lt;select&gt; tag), but how about the text display directionality? Should it be
&gt;different from autofill popup?
I was making that point because the code for the popup is shared by the autofill and &lt;select&gt; combobox. So we want different behavior for the 2 cases: combox, no width restriction, autofill, width restricted to the input field&apos;s width.
The directionality of the combobox should be consistent with field&apos;s directionality as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137279</commentid>
    <comment_count>7</comment_count>
    <who name="Aharon (Vladimir) Lanin">aharon</who>
    <bug_when>2009-08-05 02:18:31 -0700</bug_when>
    <thetext>To prevent confusion on the directionality issue, I would suggest using simpler test strings: &quot;hi!&quot; and &quot;אא!&quot;. The directionality is LTR if the exclamation mark comes out on the right, and RTL if it comes out on the left.

&gt; 1. In windows, Safari, FireFox, and IE all behave the same. They all display
&gt; the items in the popup list in left-to-right direction, no matter whether the
&gt; input field is an LTR or RTL field.

That is not the result that I get:

Firefox 3.0.11: always in browser language directionality (i.e. LTR)
Safari 4.0.2: always in element directionality (i.e. RTL for the test page)
Opera 9.64: did not auto-complete
IE 7: did not auto-complete

Thus, Firefox, Safari, and Chrome on Windows all do different things.

It is important to point out that displaying a value in the right directionality is not a nice-to-have. In the wrong directionality, the value often comes out simply garbled. For example, displaying &quot;17 Main St.&quot; as &quot;.Main St 17&quot;, which is what comes out when it is displayed RTL, is simply wrong.

BTW, the current Chrome bug that the drop-down is always left-aligned, even for a dir=rtl align=right element, is also a bug. No one else does that. Chrome has the same bug for &lt;select&gt; elements.

In my opinion, it is Chrome&apos;s current behavior re directionality here that is the most useful. In most cases, a text input needs to be capable of accepting - and displaying correctly - both LTR and RTL values. Thus, our BiDi support recommendations for web pages is to add directionality auto-detection scripts to most inputs that after each keystroke check the directionality of the current input value and adjust its dir and align values accordingly. Thus, both LTR and RTL values could have been submitted in the past, and all need to be displayed correctly, so checking the directionality of each value in the dropdown as Chrome does is the best. Failing that, Safari&apos;s approach of using the element&apos;s current directionality for all the items in the dropdown is still pretty much ok, since the likelihood that any given user will have entered both LTR and RTL values for a single field is not very high. In fact, it is in fact probably the better approach when the page does not have the directionality auto-detection scripts I mentioned earlier. But Firefox&apos;s approach of always using the browser language&apos;s directionality is totally nonsensical: RTL pages taking consistently RTL inputs will always have the dropdown values garbled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137382</commentid>
    <comment_count>8</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-05 12:43:46 -0700</bug_when>
    <thetext>Hi Aharon,

Thanks for your reply.
Please see my comments inline.

(In reply to comment #7)
&gt; To prevent confusion on the directionality issue, I would suggest using simpler
&gt; test strings: &quot;hi!&quot; and &quot;אא!&quot;. The directionality is LTR if the exclamation
&gt; mark comes out on the right, and RTL if it comes out on the left.
&gt; 
&gt; &gt; 1. In windows, Safari, FireFox, and IE all behave the same. They all display
&gt; &gt; the items in the popup list in left-to-right direction, no matter whether the
&gt; &gt; input field is an LTR or RTL field.
&gt; 
&gt; That is not the result that I get:
&gt; 
&gt; Firefox 3.0.11: always in browser language directionality (i.e. LTR)
&gt; Safari 4.0.2: always in element directionality (i.e. RTL for the test page)
&gt; Opera 9.64: did not auto-complete
&gt; IE 7: did not auto-complete

I attached the display of &quot;שש!&quot; in Safari 4.0.2 in Windows.
It is displayed as RTL (the element directionality) in input field, but it is displayed as LTR in the pop-up list.

Looks IE8 supports auto-complete, but it displays &quot;hi!&quot; and &quot;שש!&quot; in the pop-up list as LTR using the test page.



&gt; 
&gt; Thus, Firefox, Safari, and Chrome on Windows all do different things.
&gt; 
&gt; It is important to point out that displaying a value in the right
&gt; directionality is not a nice-to-have. In the wrong directionality, the value
&gt; often comes out simply garbled. For example, displaying &quot;17 Main St.&quot; as &quot;.Main
&gt; St 17&quot;, which is what comes out when it is displayed RTL, is simply wrong.
&gt; 
&gt; BTW, the current Chrome bug that the drop-down is always left-aligned, even for
&gt; a dir=rtl align=right element, is also a bug. No one else does that. Chrome has
&gt; the same bug for &lt;select&gt; elements.

There are Chrome bugs on the wrong alignment for both autofill and &lt;select&gt;, and I will fix them in another patch.


&gt; 
&gt; In my opinion, it is Chrome&apos;s current behavior re directionality here that is
&gt; the most useful. In most cases, a text input needs to be capable of accepting 
&gt; and displaying correctly - both LTR and RTL values. 
&gt; Thus, our BiDi support
&gt; recommendations for web pages is to add directionality auto-detection scripts
&gt; to most inputs that after each keystroke check the directionality of the
&gt; current input value and adjust its dir and align values accordingly. Thus, both
&gt; LTR and RTL values could have been submitted in the past, and all need to be
&gt; displayed correctly, so checking the directionality of each value in the
&gt; dropdown as Chrome does is the best.



Do you mean even if the text input field is marked as RTL,
it should display &quot;hi!&quot; in such input field as LTR?
and/or it should displayed &quot;hi!&quot; as LTR in the pop-up list? 

If that is the case, what is the point of setting &quot;dir&quot; in the input field?
Or you mean &quot;dir&quot; should not be needed for autofill and &lt;select&gt;, a webpage should be using auto-detect script to detect/display its text directionality automatically?


If the auto-detect only applies to display text in pop-up list, that will cause in-consistency of the text displayed in input (or &lt;select&gt; box) and text displayed in the the pop-up list.

For example, the following &lt;select&gt;page:
https://bugs.webkit.org/attachment.cgi?id=14607&amp;action=view

If you select the 2nd item, you can see the text displayed in the option box (with &quot;English&quot; at very right) and text displayed in the pop-up list (&quot;English&quot; displayed at the very left) are laid-out different.

The text in option box is displayed as LTR (because the dir of &lt;select&gt; is LTR), and the same text in the pop-up list is displayed as RTL (because directionality is auto-detected using the first strong directional character&apos;s directionality).

In such case, what should be the correct behavior?
(In fact, Safari 4.0.2 display the text in RTL directionality in both option box and pop-up list, although I do not know how Safari does it? And why it can do such in &lt;select&gt; but not in autofill).
 

Thanks,
Xiaomei

&gt; Failing that, Safari&apos;s approach of using
&gt; the element&apos;s current directionality for all the items in the dropdown is still
&gt; pretty much ok, since the likelihood that any given user will have entered both
&gt; LTR and RTL values for a single field is not very high. In fact, it is in fact
&gt; probably the better approach when the page does not have the directionality
&gt; auto-detection scripts I mentioned earlier.
&gt; But Firefox&apos;s approach of always
&gt; using the browser language&apos;s directionality is totally nonsensical: RTL pages
&gt; taking consistently RTL inputs will always have the dropdown values garbled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137385</commentid>
    <comment_count>9</comment_count>
      <attachid>34161</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-05 12:46:32 -0700</bug_when>
    <thetext>Created attachment 34161
Safari 4.0.2 display &quot;!BA&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137551</commentid>
    <comment_count>10</comment_count>
    <who name="Aharon (Vladimir) Lanin">aharon</who>
    <bug_when>2009-08-06 02:49:16 -0700</bug_when>
    <thetext>(In reply to comment #8)
Please see my comments inline.

&gt; I attached the display of &quot;שש!&quot; in Safari 4.0.2 in Windows.
&gt; It is displayed as RTL (the element directionality) in input field, but it is
&gt; displayed as LTR in the pop-up list.

My mistake, you are right. I was looking at the input itself - I did not get the dropdown until I entered a few more values starting the same way.

&gt; Looks IE8 supports auto-complete, but it displays &quot;hi!&quot; and &quot;שש!&quot; in the pop-up
&gt; list as LTR using the test page.

I don&apos;t have IE8 yet. I guess it looks like all the browsers are using the browser language directionality, which I think is just terrible.

&gt; &gt; In my opinion, it is Chrome&apos;s current behavior re directionality here that is
&gt; &gt; the most useful. In most cases, a text input needs to be capable of accepting 
&gt; &gt; and displaying correctly - both LTR and RTL values. 
&gt; &gt; Thus, our BiDi support
&gt; &gt; recommendations for web pages is to add directionality auto-detection scripts
&gt; &gt; to most inputs that after each keystroke check the directionality of the
&gt; &gt; current input value and adjust its dir and align values accordingly. Thus, both
&gt; &gt; LTR and RTL values could have been submitted in the past, and all need to be
&gt; &gt; displayed correctly, so checking the directionality of each value in the
&gt; &gt; dropdown as Chrome does is the best.
&gt; 
&gt; 
&gt; 
&gt; Do you mean even if the text input field is marked as RTL,
&gt; it should display &quot;hi!&quot; in such input field as LTR?
&gt; and/or it should displayed &quot;hi!&quot; as LTR in the pop-up list? 

I meant that it should be displayed as LTR in the autofill dropdown, but RTL in the input - unless a page script changes input&apos;s dir at that point - as it does now.

&gt; If that is the case, what is the point of setting &quot;dir&quot; in the input field?

To control how the input itself is displayed, not the dropdown. That, of course raises the logical question: if that browser does directionality auto-detection on the dropdown values, shouldn&apos;t it do it for the input itself?

Jeremy raised this question outside of the dropdown context. My response was and is that this would be a good thing - but only if the page requested that the browser do so, e.g. via a new dir=auto value. There is a discussion going on re adding dir=auto or something like that to HTML5. I do not think it would be a good idea to do directionality auto-detection on input values without dir=auto, since it would interfere with the scripts that we put in to do that right now, and we would have to modify the scripts to make an exception for Chrome. Furthermore, doing auto-detection in inputs does not do anything for when the value is later displayed in another page. And I do not think it would be a good idea to implement dir=auto in Chrome before its design has been completed, since it would interfere with whatever the eventual standard will be. 

The reason that I do like directionality auto-detection on the autofill dropdown values is that unlike the input itself, the page has absolutely no control over these, and can not do auto-detection for them in script.

&gt; Or you mean &quot;dir&quot; should not be needed for autofill and &lt;select&gt;, a webpage
&gt; should be using auto-detect script to detect/display its text directionality
&gt; automatically?

Yes, I do think that in the current HTML standard, a webpage should be doing its own auto-detection in script on inputs. For &lt;select&gt;, whoever prepares the HTML of the &lt;option&gt;s - either the server or page script - should be using LRE|RLE and PDF to declare the ones that have directionality opposite to that of the &lt;select&gt;. (The dir attribute does not seem to work on &lt;option&gt; and you certainly don&apos;t want script fooling with it on the &lt;select&gt;, since it controls on which side the down arrow is displayed.) For autofill, however, the page simply has no control over the way the autofill values are displayed.

&gt; If the auto-detect only applies to display text in pop-up list, that will cause
&gt; in-consistency of the text displayed in input (or &lt;select&gt; box) and text
&gt; displayed in the the pop-up list.

Let&apos;s leave &lt;select&gt; out of it, it&apos;s different (see below). But for autofill, yes, the result is inconsistent when the page does not have script to update the input&apos;s dir. So, should we do what&apos;s best for the pages that don&apos;t have such script (unfortunately, that&apos;s most pages), or what&apos;s best for the pages that do? I am not sure... I don&apos;t see a way to please both. The simple answer is to do what&apos;s best for the majority, but that leaves no way for the page to achieve the truly correct behavior.

So for autofill my answer, unfortunately, is &quot;I don&apos;t know&quot;. However, I do know that the current behavior in the other browsers is bad. If you decide to take away the auto-detection in the autofill dropdown, please use the &lt;input&gt;&apos;s directionality for them, not the browser&apos;s.

Now, on to &lt;select&gt;.

&gt; 
&gt; For example, the following &lt;select&gt;page:
&gt; https://bugs.webkit.org/attachment.cgi?id=14607&amp;action=view
&gt; 
&gt; If you select the 2nd item, you can see the text displayed in the option box
&gt; (with &quot;English&quot; at very right) and text displayed in the pop-up list (&quot;English&quot;
&gt; displayed at the very left) are laid-out different.
&gt; 
&gt; The text in option box is displayed as LTR (because the dir of &lt;select&gt; is
&gt; LTR), and the same text in the pop-up list is displayed as RTL (because
&gt; directionality is auto-detected using the first strong directional character&apos;s
&gt; directionality).
&gt;
&gt; In such case, what should be the correct behavior?
&gt;
&gt; (In fact, Safari 4.0.2 display the text in RTL directionality in both option
&gt; box and pop-up list, although I do not know how Safari does it? And why it can
&gt; do such in &lt;select&gt; but not in autofill).

That really is quite interesting. I do not know what they are doing, but I like the outcome very much. It is exactly what I want. Note that when you select the second value in Safari, it gets displayed as RTL in the &lt;select&gt; too - there is no inconsistency. And what&apos;s best, I do not think that LRE|RLE + PDF in the &lt;option&gt; values, when present, would interfere with what Safari is doing.

It is quite possible that Safari chose to do this for &lt;select&gt;, but not for text inputs, precisely because of the collision with the text input&apos;s dir value, which is not an issue for &lt;select&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137684</commentid>
    <comment_count>11</comment_count>
      <attachid>34234</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-06 16:29:36 -0700</bug_when>
    <thetext>Created attachment 34234
patch w/ manual test

Since the change only affects Chromium&apos;s &lt;select&gt; and autofill, I do not think it can be auto-tested.
Please let me know otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137710</commentid>
    <comment_count>12</comment_count>
      <attachid>34240</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-06 18:11:49 -0700</bug_when>
    <thetext>Created attachment 34240
patch w/ manual test

1. Since the change only affects Chromium&apos;s &lt;select&gt; and autofill, I do not think it can be auto-tested.
Please let me know otherwise.

2. For autofill, I am using the input element&apos;s direction to display the item in drop-down list, mainly to keep the display in drop-down list consistent with the display in input field.
for &lt;select&gt;, I leave the directionality of item in drop-down list as auto-detected (as first strong directional character&apos;s direction).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137725</commentid>
    <comment_count>13</comment_count>
      <attachid>34234</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-06 18:36:37 -0700</bug_when>
    <thetext>Comment on attachment 34234
patch w/ manual test

Please obsolete old patches when uploading new ones.  bugzilla-tool will do this for you if you use it to post your patches.  See bugzilla-tool post-diff and bugzilla-tool post-commits.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137727</commentid>
    <comment_count>14</comment_count>
      <attachid>34240</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-06 18:40:02 -0700</bug_when>
    <thetext>Comment on attachment 34240
patch w/ manual test

This constructor will run at library load time and slow down Chromium&apos;s launch time:
+static const String kEllipses = &quot;...&quot;;

Style violation:
 55             : label(label), type(type), yOffset(0), ellipsesWidth(0) { }

Style:
 349         if ( totalWidth &gt; width)

Style violations, no argument names when not needed:
 410         void drawBidiTextWithinWidth(const Font&amp; font, const TextRun&amp; run, const FloatPoint&amp; point, int width);

I don&apos;t think I can actually review the code here.  I would need to study these files more.  r- for the style stuff.  Make sure to run check-webkit-style if you haven&apos;t already. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138040</commentid>
    <comment_count>15</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-07 12:28:49 -0700</bug_when>
    <thetext>Hi Eric,

Thanks for your review!

(In reply to comment #14)
&gt; (From update of attachment 34240 [details])
&gt; This constructor will run at library load time and slow down Chromium&apos;s launch
&gt; time:
&gt; +static const String kEllipses = &quot;...&quot;;

changed to use string literal locally (instead of using static const char*).


&gt; 
&gt; Style violation:
&gt;  55             : label(label), type(type), yOffset(0), ellipsesWidth(0) { }
&gt; 
&gt; Style:
&gt;  349         if ( totalWidth &gt; width)
&gt; 
&gt; Style violations, no argument names when not needed:
&gt;  410         void drawBidiTextWithinWidth(const Font&amp; font, const TextRun&amp; run,
&gt; const FloatPoint&amp; point, int width);

Done the style changes. Unfortunately, check-webkit-style can not catch them.


&gt; 
&gt; I don&apos;t think I can actually review the code here.  I would need to study these
&gt; files more.  r- for the style stuff.  Make sure to run check-webkit-style if
&gt; you haven&apos;t already. :)

I guess mitz could review the changes in GraphicsContext.
Jay (jcampan) probably could review the changes in PopupMenuChromium. Not sure whether Jay is webkit reviewer. But he is probably familiar with this piece of code, and I could certainly use his comments.

Thanks,
Xiaomei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138042</commentid>
    <comment_count>16</comment_count>
      <attachid>34313</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-07 12:29:42 -0700</bug_when>
    <thetext>Created attachment 34313
patch w/ manual test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138135</commentid>
    <comment_count>17</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-07 14:05:39 -0700</bug_when>
    <thetext>Jay is not a webkit reviewer, but his comments here would be most welcome.  Please ask him to comment on this bug as to if he believes this patch is correct or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138741</commentid>
    <comment_count>18</comment_count>
    <who name="Jay Campan">jcampan</who>
    <bug_when>2009-08-10 11:21:25 -0700</bug_when>
    <thetext>Here are my comments on the patch:

WebCore/platform/chromium/PopupMenuChromium.cpp
I think it would be better to make the RTL detection behavior not dependent on m_settings.restrictWidthOfListBox and instead being a new parameter of m_settings.
The idea would be to keep PopupMenuChromium generic and let the client decides which heuristic to use.

In paintRow() regarding the ellipsis code. That code seems non-specific to the autofill. Would it make sense to have GraphicsContext::drawBidiTextWithinWidth() draw the ellipsis (may be the method could have an extra-parameter specifying whether or not an ellipsis is desired)?
I am assuming the ellipsis ... is the same in all languages. If it is not, may be the extra-param could be a string of the ellipsis to use? (empty string for no ellipsis)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138883</commentid>
    <comment_count>19</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-10 19:30:16 -0700</bug_when>
    <thetext>Hi Jay,

Thanks for your comments!
Please see my reply inline.

(In reply to comment #18)
&gt; Here are my comments on the patch:
&gt; 
&gt; WebCore/platform/chromium/PopupMenuChromium.cpp
&gt; I think it would be better to make the RTL detection behavior not dependent on
&gt; m_settings.restrictWidthOfListBox and instead being a new parameter of
&gt; m_settings.
&gt; The idea would be to keep PopupMenuChromium generic and let the client decides
&gt; which heuristic to use.

Make sense. I&apos;ve updated.

&gt; 
&gt; In paintRow() regarding the ellipsis code. That code seems non-specific to the
&gt; autofill. Would it make sense to have
&gt; GraphicsContext::drawBidiTextWithinWidth() draw the ellipsis (may be the method
&gt; could have an extra-parameter specifying whether or not an ellipsis is
&gt; desired)?
&gt; I am assuming the ellipsis ... is the same in all languages. If it is not, may
&gt; be the extra-param could be a string of the ellipsis to use? (empty string for
&gt; no ellipsis)

Make sense. I&apos;ve moved the code inside GraphaicsContext::drawBidiText(WithinWidth).

And per Mitz&apos;s suggestion, I used StringTruncator instead of manually truncating the string and placing ellipses. The code is much elegant. One thing to note is that in StringTruncator, horizontal ellipses (U+2026) will always be drawn when text is truncated. I think that should be fine.

Thanks,
Xiaomei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138884</commentid>
    <comment_count>20</comment_count>
      <attachid>34536</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-10 19:36:16 -0700</bug_when>
    <thetext>Created attachment 34536
patch w/ manual test

updated patch per Jay and Mitz&apos;s suggestions:
1. add a new flag to indicate in what directionality text in popup will be drawn.
2. move draw ellispses with draw truncated text from PopupMenuChromium to GraphicsContext
3. use StringTruncator to prepare truncated text along with ellipses to be drawn.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138898</commentid>
    <comment_count>21</comment_count>
      <attachid>34536</attachid>
    <who name="">mitz</who>
    <bug_when>2009-08-10 21:09:06 -0700</bug_when>
    <thetext>Comment on attachment 34536
patch w/ manual test

Switching to StringTruncator is a move in the right direction, but I don’t think the GraphicsContext changes are good or necessary. GraphicsContext is not the place to create Strings and truncate them. The logical structure where drawBidiText calls drawBidiTextWithinWidth, which calls back into drawBidiText does not make much sense either. Also, if width != -1 (that is, the caller wants truncation), calling Font::floatWidth() once seems wasteful, as the StringTruncator should have the smarts to detect the case where no truncation is necessary.

I think your PopupListBox should handle the truncation, create a TextRun from the potentially-truncated String, and call drawBidiText with that. I also don’t understand why you need the ellipsesNeeded member. It seems like you could just always use the StringTruncator. It won’t truncate when unnecessary. If you find out that you need to optimize, then you can cache the actual truncated strings (rather than just a bit telling you whether to truncate).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139072</commentid>
    <comment_count>22</comment_count>
      <attachid>34585</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-11 12:58:04 -0700</bug_when>
    <thetext>Created attachment 34585
patch w/ manual test

updated per Mitz&apos;s suggestion:
1. revert changes in GraphicsContext
2. remove ellipseseNeeded in PopupItem. When restrcitWidthOfListBox, truncate string first and drawBidiText on truncated string in PopupMenuChromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139110</commentid>
    <comment_count>23</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-11 14:46:14 -0700</bug_when>
    <thetext>Hi Mitz:

One question on the ellipses appended in StringTruncator.
StringTruncator always append horizontal ellipses (U+2026) along with the truncated string. Will the Unicode character cause display problem?

Thanks,
xiaomei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139114</commentid>
    <comment_count>24</comment_count>
    <who name="">mitz</who>
    <bug_when>2009-08-11 14:50:37 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; StringTruncator always append horizontal ellipses (U+2026) along with the
&gt; truncated string. Will the Unicode character cause display problem?

drawBidiText() will use a fallback font if the specific font does not have a horizontal ellipses glyph. Text truncation in the render tree is also implemented using horizontal ellipses.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141638</commentid>
    <comment_count>25</comment_count>
      <attachid>34585</attachid>
    <who name="Jeremy Moskovich">playmobil</who>
    <bug_when>2009-08-19 16:52:11 -0700</bug_when>
    <thetext>Comment on attachment 34585
patch w/ manual test

Really, really great work on this - a few minor comments.

&gt; @@ -75,7 +76,10 @@ static const PopupContainerSettings drop
&gt;      true, // focusOnShow
&gt;      true, // setTextOnIndexChange
&gt;      true, // acceptOnAbandon
&gt; -    false // loopSelectionNavigation
&gt; +    false, // loopSelectionNavigation
&gt; +    false,  // restrictWidthOfListBox
Please align the comments with the ones above.

&gt; @@ -817,25 +821,32 @@ void PopupListBox::paintRow(GraphicsCont
&gt; +    // FIXME: http://b/1210481 We should get the padding of individual option
While you&apos;re here, could you change this to point at a bug on the public tracker?


&gt; @@ -87,6 +91,27 @@ namespace WebCore {
&gt; +        // Wheter restrict the width of the PopupListBox or not. We restrict
Perhaps:
&quot;&quot;&quot;
Should we restrict the width of the PopupListBox?
Autocomplete popups are restricted, combo-boxes (select tags) aren&apos;t.
&quot;&quot;&quot;
&gt; +        // We could either display the items in the drop-down using its DOM element&apos;s
&gt; +        // directionality, or we could display the items in the drop-down using heuristics:
could-&gt;can
&gt; +        // https://bugs.webkit.org/show_bug.cgi?id=27889 for detail.
details</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141906</commentid>
    <comment_count>26</comment_count>
      <attachid>34585</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-21 10:52:19 -0700</bug_when>
    <thetext>Comment on attachment 34585
patch w/ manual test

was r+&apos;ed by eric and landed.
I am resetting the flag due to bugzilla data lose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141907</commentid>
    <comment_count>27</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-21 10:52:36 -0700</bug_when>
    <thetext>Following comments were lost due to &quot;Mac OS Forge experienced database corruption during our maintenance reboot this evening and had to roll back to a backup from this  morning, August 20 at 2am.&quot;

And I am cleaning the review flag and set this bug as fixed.


--- Comment #27 from Jeremy Moskovich &lt;playmobil@google.com&gt;  2009-08-20 15:05:23 PDT ---
As far as I&apos;m concerned, LGTM!


--- Comment #28 from Eric Seidel &lt;eric@webkit.org&gt;  2009-08-20 15:07:56 PDT ---
(From update of attachment 35229)
With Jeremy&apos;s endorsement I&apos;m comfortable r+ing this.  It only affects
chromium.


--- Comment #29 from Eric Seidel &lt;eric@webkit.org&gt;  2009-08-20 15:22:49 PDT ---
(From update of attachment 35229)
Clearing flags on attachment: 35229

Committed r47599: &lt;http://trac.webkit.org/changeset/47599&gt;


--- Comment #30 from Eric Seidel &lt;eric@webkit.org&gt;  2009-08-20 15:22:57 PDT ---
All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>141910</commentid>
    <comment_count>28</comment_count>
      <attachid>38381</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2009-08-21 11:03:05 -0700</bug_when>
    <thetext>Created attachment 38381
patch w/ manual test

I just realized that original comment #26 with the landed patch was lost too.
Here it is, the last and landed patch. 
This is the one r+&apos;ed and landed, the one referred as attachment 35229 in comments 27-30.
It is based on attachment 34585 with the only difference as incorporating Jeremy&apos;s suggestion in comment #25.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>33887</attachid>
            <date>2009-07-31 10:30:17 -0700</date>
            <delta_ts>2009-07-31 10:30:17 -0700</delta_ts>
            <desc>test case</desc>
            <filename>RTL_Form_Autofill_Pop-up.html</filename>
            <type>text/html</type>
            <size>270</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">77u/PGh0bWwgZGlyPSJydGwiPg0KPGhlYWQ+DQo8L2hlYWQ+DQo8Ym9keT4NCjxmb3JtIGFjdGlv
bj0iZm9ybV9hY3Rpb24uYXNwIiBtZXRob2Q9ImdldCI+DQogIEZpcnN0IG5hbWU6IDxpbnB1dCB0
eXBlPSJ0ZXh0IiBuYW1lPSJmbmFtZSIgLz48YnIgLz4NCiAgTGFzdCBuYW1lOiA8aW5wdXQgdHlw
ZT0idGV4dCIgbmFtZT0ibG5hbWUiIC8+PGJyIC8+DQogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIHZh
bHVlPSJTdWJtaXQiIC8+DQo8L2Zvcm0+DQo8L2JvZHk+DQo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>33986</attachid>
            <date>2009-08-03 10:22:35 -0700</date>
            <delta_ts>2009-08-03 10:22:35 -0700</delta_ts>
            <desc>Safari in Windows (Fx and IE in windows are the same)</desc>
            <filename>RTL_form_autofill_safari_windows.jpg</filename>
            <type>image/jpeg</type>
            <size>32005</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCADbBBADASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDIfxDc
Xoka38VS2d7NbWojnm+07oAkYWaEsqEqWfD5TIbbyQcVowa7G0015PeG4ghWCGN9pBYrCgYAMAT8
4c5PuazPKjPWNfyrK1l2ie0jT5UYuxUdCRtx/M172DwUXWs3vc86eJfI7LZHqq/FCN2Ij0sbM4Uy
XIUkdsgKcfmanX4jqethCP8At7/+wryextZ7uXyoELvjPXAA9STwB7mtC90i+sIvMlCsg6sjZx+H
XHvjFehLK8shJQlo35v/ADPOWNxsk5R1Xoek3XxHS50q4sfsEC+dE8e/7XnG4EZxs96t/wDC1F/6
BkP/AIG//YV4u0jetWpNK1eKxF9Jp16loVDCdoGEZB6HdjGDW7yfAxsmvxf+ZEcfi5bP8D17/hai
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
ql/ath/z9w/99ij+1bD/AJ+4f++xQBdzRmqX9q2H/P3D/wB9ij+1bD/n7h/77FAF3NGapf2rYf8A
P3D/AN9ij+1bD/n7h/77FAF3NGapf2rYf8/cP/fYo/tWw/5+4f8AvsUAXc0Zql/ath/z9w/99ij+
1bD/AJ+4f++xQBdzRmqX9q2H/P3D/wB9ij+1bD/n7h/77FAF3NGapf2rYf8AP3D/AN9ij+1bD/n7
h/77FAF3NGapf2rYf8/cP/fYo/tWw/5+4f8AvsUAXc0Zql/ath/z9w/99ij+1bD/AJ+4f++xQBdz
RmqX9q2H/P3D/wB9ij+1bD/n7h/77FAF+M/vF+oryn9nz/WeJPpaf+1a9Jj1XT/NT/TIByOrivKP
gZq1ppcmv/ajOPMFtt8q3kl6ebnOxTjr3r0sL/utb/t38zCp/Ej8zFrI1r/XWv8AuS/yWtesjWv9
da/7kv8AJa97Bfxl6P8AI8t7M+rKKKK+TPZCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooo
oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAGSypDG0kjBVXk
k1knxTpIJH2jpR4pJGgz4OKq6FoWlT6FYyy6fbvI8KlmZASTit4xgoc0jKUpc3LEs/8ACVaT/wA/
FH/CVaT/AM/FT/8ACO6P/wBA22/79ij/AIR3R/8AoG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/
AM/FT/8ACO6P/wBA22/79ij/AIR3R/8AoG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8A
CO6P/wBA22/79ij/AIR3R/8AoG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8ACO6P/wBA
22/79ij/AIR3R/8AoG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8ACO6P/wBA22/79ij/
AIR3R/8AoG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8ACO6P/wBA22/79ij/AIR3R/8A
oG23/fsUXo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8ACO6P/wBA22/79ij/AIR3R/8AoG23/fsU
Xo9mFqvkQf8ACVaT/wA/FH/CVaT/AM/FT/8ACO6P/wBA22/79imS6FocELzTWFnHEilnd1ACgckk
noKV6PZhar5Ef/CVaT/z8Vo2d9b38XmW8gdfasmO08KSyxxRrpbySsFjRXQlyU3gAZ5Oz5vpz0qh
4OUR3epRINsazOFUdAN1U4QcW430EpTUkpdTrqK5mXxfKuvXmj2/hvWLq5tUSV2ie1ClGLBWBeZT
glW4IB45ArWsdVa9uFhbTr+2Y2yTlriIBVLEjyywJG8bckDIwRyc1zmxoUUVHDPDcBjDLHIEcoxR
gdrA4IOO4PagCSiiigAooooAK+cvhEcSa19Lf/2pX0bXzh8JTh9Z+lv/AO1K9bLv4NX/ALd/NnJi
t18/0Iax9b/11r/uy/yWtisfW/8AXWv+7L/Ja9bBfxl6P8jhezPq2iiivkz2QooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK
KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooo
oAKKKKACiiigDF8Vf8gCep/Dv/Iu6f8A9cF/lTfEcElzos8cS7mxnFc/pfi6Gw0u2tJLC6Z4YwhK
7cEj8a6EualZdzFu1S77Ha0Vyv8AwnNv/wBA67/8d/xo/wCE5t/+gdd/+O/41n7ORftInVUVyv8A
wnNv/wBA67/8d/xo/wCE5t/+gdd/+O/40ezkHtInVUVyv/Cc2/8A0Drv/wAd/wAaP+E5t/8AoHXf
/jv+NHs5B7SJ1VFcr/wnNv8A9A67/wDHf8aP+E5t/wDoHXf/AI7/AI0ezkHtInVUVyv/AAnNv/0D
rv8A8d/xo/4Tm3/6B13/AOO/40ezkHtInVUVyv8AwnNv/wBA67/8d/xo/wCE5t/+gdd/+O/40ezk
HtInVUVyv/Cc2/8A0Drv/wAd/wAaP+E5t/8AoHXf/jv+NHs5B7SJ1VY/i2GS48G63DCjPLJYTqiK
MliY2AArN/4Tm3/6B13/AOO/40f8Jzb/APQOu/8Ax3/Gk6Umhxqxi0zktJ1jTNX8XwxabqNpeSHW
YrjbbzK58tdP2s+Afuhvlz68da6HQzaquum+uPs9qHl82bzzDsXccnzAQVx6gjFXP+E5t/8AoHXf
/jv+NM8GB5ZL+6KFFkmYgHqMnOPyNbJWpyT8jJyvOFuhzbm01z4j61YaX4oFvK2k28KR288MnnkG
bKsXV2OAQTtIbDZJ6VneP/EElj4s1O1TxhcaeEi09lgjuok2FpyJAARn7hDnvjGTs+WvYqK5uqfY
3XXz/wCB/keca7PBo3iLSoYdVku4AIdmnjWp0u8tLnzVUuftKkEgo3QL8vXFXfhrFY28GuW8N3LJ
eR6pcieCW8eVol819hKMx2lhznALdSTXdUULT8fxaf6A9fw/C/8AmeNaP4kjgutJvJPFlzfTTeIL
uzZHv1KvBiTaBGuEPPlkHH8SgEAgVjXnibyrG4uLbxfPai80a6kEbaq006XClGRXLnZHKQSDHGil
eQCeCPfqKVtLf1tb/glXXNe39Xv/AMA8T1PXLeIa4IfGd04i0CG+ixqo+a7O/wCYYIx/B+7XCHcM
qcitZtVu9Y8SCSXxfb6W6vby2FsElZruBkRsxqsyxzBm8xT+7cjHbivVqKq+t/63/peiItpb+un/
AA/qwr5u+E339Y+lv/7Ur6Rr5u+E/wB/WPpB/wC1K9XLv4NX/t382cuK6f12I6x9b/11r/uy/wAl
rYrH1v8A11r/ALsv8lr1sF/GXo/yOF7M+raKKK+TPZCiiigAooooAKKKKACiiigAooooAKKKKACi
iigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK
KACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoooo
AKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKADrXiCW
Yu7nUWMhQQI8vC53YYDHXjr1r2+vFLa6gtr6/S48wRXCPEWjUMy/MCDgkZ5X1Fellt+aVuxw421o
37ltvDardeT9sOBPNEzeV02JvyBu5yPpUaeHxIIsXXzO1sMGPgCYE+vbH41cuPEFgb9JIVuWieea
WUuiqyiRAmFAY5wMnkimS65YwrAbUXErI1sWEsaoMQg9MMeTn8PevRUq1l/XU42qWvz/AOAU5NEV
bWSZbonbC8ygx4yFl8vB549f096pWumXV5EZYljEYbZvlmSMFvQFiMn6Vr3Wr6d9geK2a6eQwvCP
NiVRhpd5OQx6dOlU9LvbG1tmWZCs/mbvM+yxz7lx93DnC855APX2rSMqnK2+/YicafNZDk0C4k08
yBdlyl00EiyypGowFwMsRzknjPaqsGj39yZBHBgxyeURI6oS/wDdG4jLcdBzWld6npeorcLcNeRB
757lfLiVsowAwcsMHj3qOfVrLUhML5LiIG6a4UQBWyGABU5Ix90fNz34pRnVtqvw/q45Rp9H/Wv/
AADP06zivL9LSeaSBpGEaFYt3zE4APIwPfn6VKunQGye4a5lBglWO4QQg7d27BU7vm+73xTNKmtL
bUobm5edEhkWRVjjDlsHODllx9f0qyLvT/sFzAZbrfdTJI+IFxGFLdPn+Y/N7Vc3K+nl/wAH8CIq
NtSnqFmLK5WNJDJG8aSo5XaSrKCMjJwefWqlXtVuoLu5iNuZDHHBHEDIoUnaoGcAnHT1qjWkL8qv
uRO19AoooqiQooooAKKKKACvUPAd5D/ZM8BYB45AzZ7Dy0NeX13nw9JFzqBALEGPgd/3SV5eafAj
vy/42bKa5qN74zsrTTr/AEqfRbmya8EiQNI7BWVcLIsm05LZzt4xjB61u6lrOl6NEkuq6lZ2Mbtt
R7qdYgx64BYjJrl7m51oeMrTVk8KapJbLpzwOFntA6uzowGDMAcBTk564xmo9ah1/VZtOuJNCuEh
aO5jmitJ4FuogzKEVpS/yoyglvKbdkKASBz4b0iref5v9D1V8Tv5fkv1Opn17R7WW0iuNWsYZLzB
tUkuEUz5xjYCfmzkdM9RVfQPFGj+JlujpV7DcG1maGVUkViMEgNgE/K2CQe4rh9J0TxDZWGgR22k
alY6hbWtta3TPPbS2kqRvyJF8wsMDcVeMbvm59K6rwdZX+mQ6pZX1jLCP7QuLiKYvGyTJJIzDbhi
wwCM7gOvGap2u/n+a/QOn3frc2I9a0qW+Wxj1Oye7beFgWdTIdhIbC5zwQQfTFQReJtAna6WHXNN
ka0UvchLuMmFQcEvg/KAeua890vw7rGnx6Wlr4UktTFr9zeyYe1CrC6yKhO2TnAkUYGSAh9s5uo+
FPEN9p6JP4Wu55zpFzYvGZ7QQRSsY2j8mMSBUjVlODjfwM5IBqb6X/ra/wDwCrLmtf8Aq9v+CerP
4k0KNZmfWtOUQyrDKWukHlyHojc8McHAPNTXGr6Za6hBp9xqNpDe3HMNvJOqySf7qk5PTtXmeoeH
NVm/tf7N4QnTz/DkemWvz2g2SfNuX/W8L86+3yH2zoReGLqfVJn1bQdTvFvHt7mNk1YxQ27qiDZN
Es2CVaPcGRXzkelVbX+u/wDT/Ajpf+un+dvkek182/CgSb9Y8u3uJuIM+TEz4/1nXA4r6Srwz4BL
Kz+IvLVDxa53MR/z19jXo4OfJh60l/d/MwrR5pRXqc7WPrf+utf92X+S1sVj63/rrX/dl/kte1gv
4y9H+R5z2Z9W0UUV8meyFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRR
RQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFF
ABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUA
FFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFYT6q2mWGgRLAJWvpI7bl9oQeUzl
uhzwh47k9RW7XN3+m3t9o2h3GnrbvdWMkdwkVxKY0k/dMhBYKxHDk/dPIpPyGuvzM+Hx7JNp63I0
tQ0lpZXMafaeCbmUxbSdnG0jOcHI7CpJvHRgW5dtNzHDDqMuRPyxtJAhGNvG4HOc8dMHrWVp3gnX
I9DeG8OnpeQ2llbW6Q3DvHIbaUyguxjBXcSBgK2Bzz0qS08G63eJex6r/Z9qksGoxxm1uXmO67kD
c7o0wFxjvnPaqdru3n/wC1yX8rr7ra/ibMPi6V9VhsZNPRd18lk7rcE7Wa18/cBtGR1Xt6+1aWqe
JNN0i4W3unuXnMfmmO1s5rllTONzCJWKgkHBOM4OOhrmtL8NeIW1+O81OHS4Ldb5L0/ZruSV9y2v
kBMNEgwfvZzx0wetaXiXRdZ1PUEa1kEtiYdnk/2pPYmKTJy+YVJlyCBtYgDbx944U/L+tP8AMhW0
v2X3jZvHFjba61vJIZrB9OhvbeS0tZbh3DtICxEYb5AFXnAAzyeRWjf+LNE002/2i9JE8P2hWghe
ZVi4/eMUUhE5+82B154Nc9pnh7xNoL2RsYtIutmi22nyme6lj2yxF/mUCNty/P0JU8dqs2nhrWPD
7Wp0WWxuSNNh0+Vr0vHsMZYrKoUNu++2UyvQfNVO17L+t/8AgC/4H6X/AFLvibxjZaHp+o+S7zX1
taPOqpayyxIdpKeY6DagOP4mXIq5N4n0y0mit7qaRZiiNIyW8jxQ7unmSKpWP/gRHFY2teHtdli8
QWul/wBmyQ63EfMlupXRoJDCIjhVRt6kKp+8uCT16VR1XwLe3Wo37RCOe21JIxN5uq3dusREaxtm
GIhZlIUHBZD1GcYxK/r+v1G9l/XY0YPGaf8ACQa3DeM0Fhp0sdsif2fOZZpWVT8rYw3LYCKpJA3Z
wRW7pWvWGuRXLadJI7W0nlSpNBJAyPtDbWV1BHBHbvXLa5praJNc65NeWUKrqsN1bm5d1hx9nEBW
Vwp8vPzYY5AO31xVvwPd3GpHxBqpNpKt3fAwvayl4JAkMaHZIQN6hlK7gOSDxQtV6L/L/Ng915kk
3irVLfSdVupNItPtGkSEXsK37FfLESy7o28r522sPlIXnPNacetXH/CRxaZcWcSW91bvcWlxHOXZ
wmwMHQoNh/eDGGbOD0rn7rQ/E9zpHiSL7HpC3WtsylP7QkKQIbdYt27yMscrnG0fWtaLTNWk8V2N
7cQ2UdjY2k0Ebx3LvLKX8rkoYwFA8s/xHqKa3V/60/zB20/r+uoyHxfax+I9S0q/fyzBdxW8DR28
jL88cbDzHAKoSzkLuK5xgZNRan4p+yaZfXFtfWk9xBb38scJtJF3tAcYJ3fwnCt/ezlcAUt94Zvb
n+2dksA+3alaXce5jwkXk7geOv7psdeo5Hbnr3Q55tWn0GO5tWvbix1iXCuSIluZUMRfjIzk9v4T
jOKS1S72/T/hy48t03tdHS6n4sigsnFiyTXkM1rHOPKdoo/NljRlLj5d4V87d2RkEjHXpq4j/hD9
Qs7GTR9OktRpDTW11Gksr74JUmR5VHB3K20sCTkMT1B+XqreXU2lUXNpaRx85aO6ZyPTgxj+dN2t
/XkZLbUu1yPhyPZ4p11s58y6LdOnAH9K66uU0D/kZtY/67t/OkM0rnX2jv5rOy0q91CSDAmNuY1E
ZIyATI6jOCDgZ6imf25qf/Qqar/3+tf/AI9UWjNt1fxJz/zEl/8ASWCmeKb/AFCz0+BrH7SqPcKl
zPa2/nzQREHLpHhtxztH3WwCTg4qm1HSxKTl1LH9uan/ANCpqv8A3+tf/j1H9uan/wBCpqv/AH+t
f/j1YmjeKYo9Ourtta/tiyjuIYEfy1S7ikdxGUmjCoFwxBHyqcZyCRkv1zxZLa6ha29jDdSvDqi2
lzDFGjNPutmlCrk4HJTklcYOSBk0cy7fn5f5jUW1e/5dDX/tzVP+hU1T/v8A2v8A8eo/tzVP+hU1
T/v/AGv/AMeqi/jS3jt4y2m6j9se7+xGxCxmZJfLMgBO/ZgqAQwYj5hkjnBY+NLe+ubaH+ztRt1n
mkthNMkYRZ0DFojhySRsb5gChxgNmlzLsLlff+v6TL39uap/0Kmqf9/7X/49Sr4hmjngjv8ARL+w
jmkWJZpnhZN7cKD5cjEZPAyMZNZHh3xVcatq6WaW9y9idLgvI7u4EYdy5cfOEbHO0cBRyG7YzoeJ
3J0+0Gf+YlY/+lUVUrN2aCScb67f8OdHXgXwNv7mxl10W+j3uoCQW242rwqIseZ97zJE657Z6H2z
77XgfwN0i21SbXWuJb1DCLUr9mvZrcHPmfeEbru6D72e/qa7MP8A7rW/7d/Mzn/Ej8zGrH1v/XWv
+7L/ACWtisfW/wDXWv8Auy/yWvdwX8Zej/I8x7M+raKKK+TPZCiiigAooooAKKKKACiiigAooooA
KKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAo
oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACii
igAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKK
ACscS6pFolgdKs7O6kMSb1urpoABtHIKxvk+2B9a2KxhLqsWi6edKsrO6cwpvF1dtAANo6FY3z+Q
oAgtNa1bU9HS60/S7JrtLiW3uILi+eNEaN2RtrrExYZXjKrwe3Si01rVtT0dLrT9Lsmu0uJbe4gu
L540Ro3ZG2usTFhleMqvB7dKp6Na+KdI0ueL+zdHluJb6e4K/wBpyqirI5f732ckkFsdO2c9qNGt
fFOkaXPF/Zujy3Et9PcFf7TlVFWRy/3vs5JILY6ds57UDdunf8Nf+AXLTWtW1PR0utP0uya7S4lt
7iC4vnjRGjdkba6xMWGV4yq8Ht0otNa1bU9HS60/S7JrtLiW3uILi+eNEaN2RtrrExYZXjKrwe3S
qejWvinSNLni/s3R5biW+nuCv9pyqirI5f732ckkFsdO2c9qNGtfFOkaXPF/Zujy3Et9PcFf7TlV
FWRy/wB77OSSC2OnbOe1AO3Tv+Gv/ALlprWrano6XWn6XZNdpcS29xBcXzxojRuyNtdYmLDK8ZVe
D26Vd0PVZNY0s3L26wXEc0sEsIk3qskbshw2BkZXg4HB6VjaNa+KdI0ueL+zdHluJb6e4K/2nKqK
sjl/vfZySQWx07Zz2q54WsNW03TLyLUoLJJ5Lue5jW2uXkUiR2fBLRqRgtjoemfajuDt07/hr/wC
nN4q1S30nVbqTSLT7RpEhF7Ct+xXyxEsu6NvK+dtrD5SF5zzV6TXNQTWv7OXT7VvtNrJcWEhu2Al
2bMrIPL/AHfMgwRv4B+lYl1ofie50jxJF9j0hbrW2ZSn9oSFIENusW7d5GWOVzjaPrWjLp2vHxDa
36WmmmCwspoIAb1w07v5WNw8rCAeWeQW6jin6/1p/mGmn9f11GjxZeDTLXUH0uAQfbTY3oF2S0Mn
n+TmMeXiRd3OSUOO2eK09O1e6uNcv9KvbOG3mt40niaGcyrJE7Oqk5RdrZQ5HI5HJrnv+Ef8RNoU
emtb6WDPqZvrmQXsh8ofahPtQeT85wMZOzmtnTbDVf8AhKdQ1XUIbOCKW2itoUt7lpWYI8jbmzGu
3IccDPTrQv6+5fqDtrb5ff8A5GZdeO5LeG7kXS0fyI9QkUG5xvFo6qc/IcbiT64wOueLbeLnOrGy
jsFIN7HZq7T4yzWxnyRtOAMBep6k9sHA1Lwd4imubuC0TS2spkv4lmlu5FkC3bKzEoIiMoQQBu+b
jlauaj4a16HXlu9Ki024txex3v8ApV3JC+5bYwFMLE4xjDZz6jHel9ld7fj/AMMU+XW3n/wP6+8n
h8etNZ2twNMAE1nZXLD7R903E3lBR8vIXBOeM4AwM5Cz+OpILWSU6YpeKPUZJFFzxi0bbwdnO4kd
hjnrjnNuvBWt2un2Fvpp0+5aOzsrec3Nw8IDW03mgrtjfIbLDnGODz0p2oeDdcl0Yrbf2e1/PHqM
c8clw6xRi7fdlXEZLbCAOVXPPSm7a28/+AC5eZdrr7ra/ibS+LpG1AWf9nrvOpR2QPn8bWt/P3/d
6gZG3171L4c8Utr8saNZC3EmnW98pE2/iUuCp+UdCnXvntWUnhnXBH/aLJp/9pjUo71bUXT+SVW3
EG0y+XuzjLZ2dcD3qz4K8OarooV9V+xrJFp9vYRrazNKGERclyWRcEl+mDjHU5p6a/L8v8yNOXzs
vvvr+B19cpoH/Izax/13b+db1vLqbSqLm0tI4+ctHdM5HpwYx/OsHQP+Rm1j/ru386kBdPuYoNf8
RQyOFka+SQKepU28Iz9MqR+FS6qsl5HC1lqZs7mCTzEYqXjfggrImRuXBzjIOQDnite/0XStUdW1
DTLK7ZBhTcQLIQPbINU/+EP8Mf8AQuaR/wCAMf8A8TTaT1uSro5ufw+19BfTXuqwHU7oQATwWxji
TyZPMj/dl2J+YnPzcg4GKgk8O3zym8XX7UaidRS/8xrEmLKweSU2eYDgjnO7I9+tdX/wh/hj/oXN
I/8AAGP/AOJo/wCEP8Mf9C5pH/gDH/8AE0WXf8P+D5DvLt+P/AMCDQgLmC8utTSa9Gofb53SDYjk
QtCEVdx2gKV6ljwfXh8WiQxi0H28H7Pqk+of6v73meb8nXjHm9e+3pzxuf8ACH+GP+hc0j/wBj/+
Jo/4Q/wx/wBC5pH/AIAx/wDxNFl3/D/ghzS2/X18vNmDoWhjQ7q1kTUo5YotOisZEaAhnMZYq4O7
5fvnIwe3Iq34huopILCFHBkfUrPao6nFxGx/IAn8K0/+EP8ADH/QuaR/4Ax//E1Ys/D2iadcC4sd
H0+1mAwJILZEYD6gZp6XvcUuaV79TSrw34BXEdu/iLzC3zLa42oW/wCevoK9yrwH4IzRwDxBJNIk
aAWuWdsAf6zvXdhVfDVl/h/MyqO1SPzMisfW/wDXWv8Auy/yWtisfWv9fa/7sv8AJa9zBfxl6P8A
I817M+raKKK+TPZCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK
KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooo
oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACqFxo9jNC0a2kCEj7yxgEfpV+igDlT4Kg
JJ+0zf8AfZpP+EJg/wCfqf8A77NdXRQByn/CEwf8/U//AH2aP+EJg/5+p/8Avs11dFAHKf8ACEwf
8/U//fZo/wCEJg/5+p/++zXV0UAcp/whMH/P1P8A99mj/hCYP+fqf/vs11dFAHKf8ITB/wA/U/8A
32aP+EJg/wCfqf8A77NdXRQByn/CEwf8/U//AH2aP+EJg/5+p/8Avs11dFAHKf8ACEwf8/U//fZo
/wCEJg/5+p/++zXV0UAcp/whMH/P1P8A99mj/hCYP+fqf/vs11dFAHKf8ITB/wA/U/8A32a1NH0K
HSGdo3Z2fqWOTWvRQAUUUUAFFFFABRRRQAUUUUAFfPfwZ66x/wBfGnf+jWr6Er57+DSSumuGFUaR
HspArsVB2u7YyAcdPSvRwv8Au1b/ALd/MwqfxI/MzqyNa/19r/uy/wAlrXrI1r/X2v8Auy/yWvbw
X8Zej/I8x/Cz6sooor5M9oKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK
KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooo
oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArwX4F28876/5IjO1bbO9iP+evoD
XvVeI/s+ff8AEf8Au2n/ALVr0MM7YWs1/d/MxqK9SPzOYrI1r/X2v+7L/Ja16yNa/wBfa/7sv8lr
3MF/GXo/yPLfws+rKKKK+TPaCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiii
gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK
KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoo
ooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK8R/Z8+/4j/3bT/2rXt1eI/s+
ff8AEf8Au2n/ALVrvw/+61v+3fzMZ/xI/M//2Q==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>33987</attachid>
            <date>2009-08-03 10:24:25 -0700</date>
            <delta_ts>2009-08-03 10:24:25 -0700</delta_ts>
            <desc>Chrome, directionality of item (begins with Hebrew) and input field (RTL) are the same.</desc>
            <filename>chrome_item_begin_with_Hebrew.jpg</filename>
            <type>image/jpeg</type>
            <size>25716</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCADABCUDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDLRGkd
URSzMcADvVv+yb8H/j3H/f2P/wCKqLTzjVbU/wC0/wD6Laug319HCDnfW1jxJz5LaGH/AGTf/wDP
uP8Av9H/APFUf2Tf/wDPuP8Av9H/APFVub6N9aewf8z/AAJ9t5GH/ZN//wA+4/7/AEf/AMVR/ZN/
/wA+4/7/AEf/AMVW5vo30ewfd/gHtvIw/wCyb/8A59x/3+j/APiqP7Jv/wDn3H/f6P8A+Krc30b6
XsH3f4B7byMP+yb/AP59x/3+j/8AiqP7Jv8A/n3H/f6P/wCKrc30b6fsH3f4B7byMP8Asm//AOfc
f9/o/wD4qj+yb/8A59x/3+j/APiq3N9G+j2D/mf4B7byMP8Asm//AOfcf9/o/wD4qj+yb/8A59x/
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
N/8AG6PN1P8A587P/wACm/8AjdF5BoRf2fdf8/UP/fg//F0f2fdf8/UP/fg//F1L5up/8+dn/wCB
Tf8AxujzdT/587P/AMCm/wDjdF5BoRf2fdf8/UP/AH4P/wAXR/Z91/z9Q/8Afg//ABdS+bqf/PnZ
/wDgU3/xujzdT/587P8A8Cm/+N0XkGhF/Z91/wA/UP8A34P/AMXR/Z91/wA/UP8A34P/AMXUvm6n
/wA+dn/4FN/8bo83U/8Anzs//Apv/jdF5BoRf2fdf8/UP/fg/wDxdH9n3X/P1D/34P8A8XUvm6n/
AM+dn/4FN/8AG6iubzUbW1muHsrUpEjOwW6bOAM8fu6PeDQP7Puv+fqH/vwf/i6P7Puv+fqH/vwf
/i60qKXMx8qM3+z7r/n6h/78H/4uj+z7r/n6h/78H/4utKijmYcqM3+z7r/n6h/78H/4uj+z7r/n
6h/78H/4utKijmYcqM3+z7r/AJ+of+/B/wDi6P7Puv8An6h/78H/AOLrSoo5mHKjN/s+6/5+of8A
vwf/AIusnxRZ3EXhXVXe4jdRayZVYiCflPfca6isTxh/yJ2r/wDXrJ/KqhJ8yJklys8EP/HzP/vL
/wCgLS0h/wCPmf8A3l/9AWlr3V19X+Z5Xb5BRRRTEFFFFAAn/HzD9W/9AavfvCv/ACKOj/8AXlD/
AOgCvAU/4+Yfq3/oDV794V/5FHR/+vKH/wBAFefjfhXr+iOzC/F8v1Zr0UUV5p2hRRRQAUUUUAFF
FFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUU
UAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQ
AUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAUr7/j703/r5P8A6Kkq7VK+/wCPvTf+vk/+ipKu030EuoUUUUhhRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQBHcTLbW0s7LI6xoXKxoXYgDOAo5J9hya53/hIRqtjrFlNpd/p13BY+cY
rwR5ZHVwrAxuw6owIJBHpW1qtlJqWkXllFdS2klxC8a3ER+eIkYDD3Fcpp3g1PDdrrV8r6erXVh5
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
jLXGl0+TUItN+zS6nc6ZKIEkDu0QkIlXLYQEx42Hd1zu7Uv6/L/NfeFn/Xz/AMmeg1ieMP8AkTtX
/wCvWT+VZHhXxF4l1y8t7q60TyNFvLfz4Zj5SmPIBQZWdzICCediYx0541/GH/Inav8A9esn8quC
akrkyd4s8EP/AB8z/wC8v/oC0tIf+Pmf/eX/ANAWlr3l19X+Z5Pb5BRRRTEFFFFAAn/HzD9W/wDQ
Gr37wr/yKOj/APXlD/6AK8BT/j5h+rf+gNXv3hX/AJFHR/8Aryh/9AFefjfhXr+iOzC/F8v1Zr0U
UV5p2hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAU
UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRR
RQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFF
ABRRRQAUUUUAFFFFABRRRQAUUUUAZeuusdtau7BUW7hLMxwANw5NT/2xpn/QRtP+/wCv+NN1dFks
FR1DI1xAGVhkEeanBp39j6Z/0DrP/vwv+FSoNNyvv/Xcbl0sH9saZ/0EbT/v+v8AjR/bGmf9BG0/
7/r/AI0f2Ppn/QOs/wDvwv8AhVS9i8P6e8SXVpZxmUOUzbA52KWboOMKCab01b/D/gi+Rb/tjTP+
gjaf9/1/xo/tjTP+gjaf9/1/xqpZw6DftIttZ2khjVGb/RgMB13L1HcHNW/7H0z/AKB1n/34X/Ci
z7/h/wAEL3D+2NM/6CNp/wB/1/xo/tjTP+gjaf8Af9f8aP7H0z/oHWf/AH4X/Cj+x9M/6B1n/wB+
F/wos+/4f8EL+Qf2xpn/AEEbT/v+v+NH9saZ/wBBG0/7/r/jR/Y+mf8AQOs/+/C/4Uf2Ppn/AEDr
P/vwv+FFn3/D/ghfyD+2NM/6CNp/3/X/ABo/tjTP+gjaf9/1/wAaP7H0z/oHWf8A34X/AAo/sfTP
+gdZ/wDfhf8ACiz7/h/wQv5B/bGmf9BG0/7/AK/40f2xpn/QRtP+/wCv+NH9j6Z/0DrP/vwv+FH9
j6Z/0DrP/vwv+FFn3/D/AIIX8g/tjTP+gjaf9/1/xo/tjTP+gjaf9/1/xo/sfTP+gdZ/9+F/wo/s
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
12fw7em0CR3svki2uRuJCHzAQShycAo2HOD1xQs/ELWd1pVzqM9tYWlzBfIrwgwW9zKZUMbqhJ+Z
13sASSctgnPPS+X4t/58dH/8GEv/AMYo8vxb/wA+Oj/+DCX/AOMUuSVrfquoc6vf9GecJqEZgW7v
dZvbbUH8N2MlqUuXR7i5/fFRwcyuT/AdwbJyD22bx9Rmk1O9k1O/guodYsrZEiunEcSyLbiRQmdr
Z3t1BweRg8113l+Lf+fHR/8AwYS//GKPL8W/8+Oj/wDgwl/+MVVnzXt+K73/AOADmn/T7WOY8y4j
1MaOl7fNaJrMlsA13K0hjawMm0yFt5+diRk5HGOgrd+Hz2w8BaMtrOZVS1RX3TNIVkA+dSSSRg5G
3tjGBirXl+Lf+fHR/wDwYS//ABijy/Fv/Pjo/wD4MJf/AIxStK1vTqugOaf9Mlznx1p//YNu/wD0
ZbVY8Yf8idq//XrJ/KodK0vVTrY1TVfskbRW728UVtK0gw7IzEsyr/zzXAx61N4w/wCRO1f/AK9Z
P5Vcfiiv63Iezf8AWx4If+Pmf/eX/wBAWlpD/wAfM/8AvL/6AtLXurr6v8zy+3yCiiimIKKKKABP
+PmH6t/6A1e/eFf+RR0f/ryh/wDQBXgKf8fMP1b/ANAavfvCv/Io6P8A9eUP/oArz8b8K9f0R2YX
4vl+rNeiiivNO0KKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooo
oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigChq7rHYK7sFRbiAszHAA81OTTv7Y0z/oI2f/AH/X
/GrtFO6sKzuUv7Y0z/oI2f8A3/X/ABrH182+spZww69ptvbxXUVxMrgSPJ5ciuoVhIoXlcEkN1rp
aKNL3DU4I6S8vm+f4r0ZvtOqRahc+Xa7d3leVtRMznb/AKrkndnd0GKDpLy+b5/ivRm+06pFqFz5
drt3eV5W1EzOdv8AquSd2d3QYrvaKalbb+tv8kO8jgjpLy+b5/ivRm+06pFqFz5drt3eV5W1EzOd
v+q5J3Z3dBig6S8vm/aPFejN9p1SLULny7bbu8rytqJmc7f9VyTuzu6DFd7RQpW2/rb/ACQXkZOo
X2nX2m3VomtQ2zTxNGJ4bhQ8ZIxuU54I6iuQtPDFlax6mY/EGiWs99HCj/YLUW8bGN2fMi+aWfdu
Kv8AMCw4yK9FopaBdnnUHhfT7bSrmzg13QYlnvBdvbRWapZN+6EZRoBL8yHAbG77wBOelIPC2nJo
1ppqa7oclvBJO7WtxaLJaMJX38QiUAFDkKSTgE8d69GoodmLU801Dwdp1/o1ppcniLSZreDT0sQL
y3Wby9oIEsI80COTB5bDZ2r0xVvVPDtjqmsR30viDSJPLmgnje4t1lngaModsUnmARoxTJUL1ZuT
mvQKKd9b/MNTgo/D+nr4pg1qTXtIle3upLiOV4FN0VdXBiaYycoA5CqFGAq+nNzVrCxudeGt6Zrm
k2eoNbfZZJp4UnYR5JBjO9SjfM3qDxlTgV2NFLS1gd27nCzaFpdte217oeuaXZ3UNktgZ7mJLl/K
XOCjb1KvycnkHIypwKJtC0u2vba90PXNLs7qGyWwM9zEly/lLnBRt6lX5OTyDkZU4Fd1RRp/X9eY
anCzaFpdte217oeuaXZ3UNktgZ7mJLl/KXOCjb1KvycnkHIypwKJtC0u2vba90PXNLs7qGyWwM9z
Ely/lLnBRt6lX5OTyDkZU4Fd1RRp/X9eYanCzaFpdte217oeuaXZ3UNktgZ7mJLl/KXOCjb1Kvyc
nkHIypwK2hJpVppFjpljewSLDJbRRqJw7kLInXnJOBk10FFNNA02FFFFSMKKKKACiiigArE8Yf8A
Inav/wBesn8q26xPGH/Inav/ANesn8qqHxImXws8EP8Ax8z/AO8v/oC0tIf+Pmf/AHl/9AWlr311
9X+Z5Pb5BRRRTEFFFFAAn/HzD9W/9AavfvCv/Io6P/15Q/8AoArwFP8Aj5h+rf8AoDV794V/5FHR
/wDryh/9AFefjfhXr+iOzC/F8v1Zr0UUV5p2hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUU
UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRR
QAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAVieMP+RO1f/r1k/lW3
WJ4w/wCRO1f/AK9ZP5VUPiRMvhZ4If8Aj5n/AN5f/QFpaQ/8fM/+8v8A6AtLXvrr6v8AM8nt8goo
opiCiiigD//Z
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>33988</attachid>
            <date>2009-08-03 10:25:44 -0700</date>
            <delta_ts>2009-08-03 10:25:44 -0700</delta_ts>
            <desc>Chrome, directionality of item (begins with &apos;a&apos;) and input field (RTL) are different</desc>
            <filename>chrome_item_begin_with_a.jpg</filename>
            <type>image/jpeg</type>
            <size>27256</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCADABOADASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCzYwWx
0+2ZraFmeJXYvGGOSAepHvVjyLX/AJ9LX/vwn+FVbNsafaD/AKd4/wD0AVNvr6inSg4JtLY8CdSS
k1ck8i1/59LX/vwn+FHkWv8Az6Wv/fhP8KiMyg8sB+NJ5y/31/Or9jT7In2s+7JvItf+fS1/78J/
hR5Fr/z6Wv8A34T/AAqHzl/vr+dHnJ/fX86PY0+yD2k+7JvItf8An0tf+/Cf4UeRa/8APpa/9+E/
wqHzl/vr+dHnr/fX86PY0+yD2k+7JvItf+fS1/78J/hR5Fr/AM+lr/34T/CofPX++v50ecv99fzo
9jT7IPaT7sm8i1/59LX/AL8J/hR5Fr/z6Wv/AH4T/CofOX++v50ecv8AfX86PY0+yD2k+7JvItf+
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
UUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABR
RRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFVY
j+6T/dH8qtVSjP7pP90fyqoiZFJqtjDqMeny3UaXcib0iY4LDJHH4g8VbzivJviT9on8Z2VraQvN
PJZJtSNcsTveu48KWmt2Wk7NbuVlkOPLjzuaMejN3/p6+m0qaUFK+5mp3k1Y2ZDi5XH8SHP4Ef40
7PNRSt/pMf8AuN/NacG+YfWotoO5ycfjPU59KfVrfw2X05QzCZr1VJUHBO3bnt71u6brH22eazub
c2moQcyW7PuyvZ1bA3KfXsaxPBdtFqPw3sbWdS8M0cqOAcZBkfvRY2yWHxFa1jmuZIxo+8CedpSp
MwHBYnA4HFayUbtW2JTejOt3Ubq5i6sPE8niNPs+ueXoz5kf9zEZIsEfu1yvOc8E9ADnJA3dGW54
rNxsO5JurnvE3i238NiGM27XNzNkrGH2gKO5ODj8q17u8t7G0lu7qURQQqXdz2A/z0ryHV7y98ee
J3bSLJ3SGLy413AZQEnexJAGSf5DrWlKmpS97YmcrLTc9c0y9nvrCO4uLKSzlbrC7ZI/H0/AVc3V
yXhXR9ctLqS/16+aWXyfIih8zcFXIJJxxn5R/Wprqw8TyeI0+z655ejODI/7mIyRYI/drlec54J6
AHOSBulxV2kyk9Dp91eJeN+fF19/18p/6Jr2ktzxXivjb/kbb7/r5T/0TW+E+N/11RjiPhX9dDFo
oor0zhCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACoZv8A
XWv/AF3Wpqhm/wBda/8AXdazq/w2XT+NHovwvP7vUP8Arha/+gvXoFvIFUxk4ZWJx9STXnnwybbF
fna7fuLXhELH7snYCu8Zkf79vO31tnP9K82u1zv5fkdtG/L/AF3DVNK03W7dINStEuY0bcoYkEH2
IINXd46DgDoKobIf+fSX/wABn/8AiaNkP/PpL/4DP/8AE1jp3NNexe3/ADD6Uu8VQ2Q/8+kv/gM/
/wATRsh/59Jf/AZ//iaNO49S3HFDC7vGgVnOWPrTbmVfIdM/M4KgfWq2yH/n0l/8Bn/+JpymNDlL
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
v/iaNsP/AD5yf+Ajf/E0cq7hzPsb9FYG2H/nzk/8BG/+Jo2w/wDPnJ/4CN/8TRyruHM+xv0VgbYf
+fOT/wABG/8AiaNsP/PnJ/4CN/8AE0cq7hzPsb9FYG2H/nzk/wDARv8A4mjbD/z5yf8AgI3/AMTR
yruHM+xv1mxuPKT/AHR/KqW2H/nzk/8AARv/AImjZB/z5Sf+Ajf/ABNUkl1E230Lw8sS+bsXzdu3
ft+bHpn0pd4qhsg/585P/ARv/iaNkH/PnJ/4CN/8TT07i1J2cSXIKnIRSCfckcfpTwcGoRIFAAgu
AB2Fu4/pR5v/AExuf/Ad/wDCi6FZnPQ+CLS1iENrrev2sAJKwwXuxFyc8DbV7SfDdppGoTX6XmoX
l3LF5JlvZ/MITIOBwO4Fafm/9Mbn/wAB3/wo83/pjc/+A7/4VTnfqLl8ibNGah83/pjc/wDgO/8A
hR5v/TG5/wDAd/8ACldDsxl/ZW+p2E1ldpvgmXa65x/nmoNF0Ww8P2RtdOiKK53SSOdzyHtk+3p0
/M1a83/pjc/+A7/4Ueb/ANMbn/wHf/Cjm0tcLeRNmjNQ+b/0xuf/AAHf/Cjzf+mNz/4Dv/hRdBZk
2a8Z8af8jXe/9fKf+ia9g83/AKY3P/gO/wDhXj3jI58U3pwRm5TgjB/1PpXThWud/wBdUYV/h/rs
Y1FFFekcQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAVDN
/rrX/rutTVDN/rrX/rutZ1f4bLp/Gj034R/e1H/r2tf5PXp1eY/CP72o/wDXta/yevTq8jE/xH8v
yPQofB9/5hRRRWBsFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAU
UUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRR
RQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFF
ABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABSEhQSSABySaWobv/jyn/65t/KlJ2TY0ruxS/4SHSP+
f+H86P8AhIdI/wCf+H86m0f/AJAlh/17x/8AoIq7Wa9o1e6+7/glPl7f19xmf8JDpH/P/D+dH/CQ
6R/z/wAP51p0U7VO6+7/AIIrx7fj/wAAzP8AhIdI/wCf+H86P+Eh0j/n/h/OtOii1Tuvu/4IXj2/
H/gGZ/wkOkf8/wDD+dH/AAkOkf8AP/D+dadFFqndfd/wQvHt+P8AwDM/4SHSP+f+H86P+Eh0j/n/
AIfzrTootU7r7v8AghePb8f+AZn/AAkOkf8AP/D+dH/CQ6R/z/w/nWnRRap3X3f8ELx7fj/wDM/4
SHSP+f8Ah/Oj/hIdI/5/4fzrTootU7r7v+CF49vx/wCAZn/CQ6R/z/w/nR/wkOkf8/8AD+dadFFq
ndfd/wAELx7fj/wDM/4SHSP+f+H86P8AhIdI/wCf+H8606KLVO6+7/ghePb8f+AZn/CQ6R/z/wAP
51btL62voy9rOkqqcEqehqxXKeA7641PRYb+8k8y6urSzmmfaBudrdCxwOBkk9KV5xkk2tfLy9R2
i07HV0VzGq+IdatPFVtolhpFhcfabaS4jmn1F4eEKBgVEL4OXGOTnnpWjYX+rTtZi60qCNJVkaaa
3vRLHHgjy9pKqXDgk5wMY961WquR5GtRRVaC/tbq6uraGUPNaMqTqAfkZlDAfkQePWgCzRRRQAUU
UUAFeDeOf+Rw1D/r7X/0TXvNeDeOf+Rw1D/r7X/0TXZgvjf9dUc2K+Ff10MOiiivWPPCiiigAooo
oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACoZv9da/9d1qaoZv9da/9
d1rOr/DZdP40em/CP72o/wDXta/yevTq8x+Ef3tR/wCva1/k9enV5GJ/iP5fkehQ+D7/AMwooorA
2CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA
KKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAo
oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACii
igAooooAKKKKACiiigAqG7/48p/+ubfyqao50MtvJGCAWUqM+4qZq8Whx3K2j/8AIEsP+veP/wBB
FXa86tviVZ2FrDZta7mgQRE+YRkqMf3fapP+Fq2P/Pn/AORW/wDiK2jh63Kvcf3Mzdanf4l956DR
Xn3/AAtWx/58/wDyK3/xFH/C1bH/AJ8//Irf/EU/YVv5H9zF7an/ADL7z0GivPv+Fq2P/Pn/AORW
/wDiKP8Ahatj/wA+f/kVv/iKPYVv5H9zD21P+Zfeeg0V59/wtWx/58//ACK3/wARR/wtWx/58/8A
yK3/AMRR7Ct/I/uYe2p/zL7z0GivPv8Ahatj/wA+f/kVv/iKP+Fq2P8Az5/+RW/+Io9hW/kf3MPb
U/5l956DRXn3/C1bH/nz/wDIrf8AxFH/AAtWx/58/wDyK3/xFHsK38j+5h7an/MvvPQaK8+/4WrY
/wDPn/5Fb/4ij/hatj/z5/8AkVv/AIij2Fb+R/cw9tT/AJl956DRXn3/AAtWx/58/wDyK3/xFH/C
1bH/AJ8//Irf/EUewrfyP7mHtqf8y+89Borz7/hatj/z5/8AkVv/AIij/hatj/z5/wDkVv8A4ij2
Fb+R/cw9tT/mX3mb4psbm98XSTwaIRdQX1mUuf7NmmleJWjLPHc7gkSAFlMYBJwxI+Ykb/w42/8A
CIWW4ZX+zbHIxnI+yx9u9Uv+Fq2P/Pn/AORW/wDiKq6D458PaPA8CQzwW6rFFBDGDII0jjCKNzYJ
4UdaiWGrvlSg9+z7WKVenq+ZfeOvrTTdR8beH4LbTtZtNLh0+eJTZ2d5ZJEztEUUtGqbRhWyCQBj
nHFZnxF0d0ezsobXWrvytAubRXs4Ll0MhCCIHywVBYq2c9RgNxiuo/4Wh4e9Lz/v0P8AGj/haHh7
0vP+/Q/xrR4Ws1blfXp3v/mTHEU073X9W/yMLX9C09NA0h7DSDJL5Ly/YrrRJrmK5lZFBM2F3xTZ
AxK3I+bOea2PCemW9j428STy6IbO8upI5op/sZ2mMxR71EwXaT5mSV3ZJBOO9S/8LQ8Pel5/36H+
NH/C0PD3pef9+h/jVfV692+R/cSq1O1uZHI6tYLFq3iO/TSdYnvF1yzmtJTZXUpCKY/MaI7ThcLI
CV4KhR02io7yxVvEkOpyaLqtrMNRuUu/sel3BkMDxyqrtcKpkk3HYQIyFQMBt+UGuy/4Wh4e9Lz/
AL9D/Gj/AIWh4e9Lz/v0P8alYSta3I/u8kv0KeIpt3uv6v8A5nDaFotjCnhhL3QdWKDR54tSWTTb
phI42+WkvyfOBtfapyBgYA+WpLfRp9W0rRYvESeIYLVdKhhtxb6X5zw3CFlk3CSB3hcgoVkG0EA/
NwK7X/haHh70vP8Av0P8aP8AhaHh70vP+/Q/xqvq1Z7wf3ev+Yvb0+6/q3+R19spS1hVvM3BFB80
gvnH8RHBPrivC/HP/I4ah/19r/6Jr0X/AIWh4e9Lz/v0P8a808R3tprGvXV9b3CrFLOJFEisGAEe
3nAPOa6cLRqxm3KL+7zRz16kHFKLMmipNkX/AD9Rfk//AMTRsi/5+ovyf/4mvSs+z+447ojoqTZF
/wA/UX5P/wDE0bIv+fqL8n/+Jos+z+4LojoqTZF/z9Rfk/8A8TRsi/5+ovyf/wCJos+z+4LojoqT
ZF/z9Rfk/wD8TRsi/wCfqL8n/wDiaLPs/uC6I6Kk2Rf8/UX5P/8AE0bIv+fqL8n/APiaLPs/uC6I
6Kk2Rf8AP1F+T/8AxNGyL/n6i/J//iaLPs/uC6I6Kk2Rf8/UX5P/APE0bIv+fqL8n/8AiaLPs/uC
6I6Kk2Rf8/UX5P8A/E0bIv8An6i/J/8A4miz7P7guiOipNkX/P1F+T//ABNGyL/n6i/J/wD4miz7
P7guiOipNkX/AD9Rfk//AMTRsi/5+ovyf/4miz7P7guiOipNkX/P1F+T/wDxNGyL/n6i/J//AImi
z7P7guiOipNkX/P1F+T/APxNGyL/AJ+ovyf/AOJos+z+4LojoqTZF/z9Rfk//wATS+UpR2SeN9gy
QA2cZA7j3pWa6ARVDN/rrX/rutTVDN/rrX/rutZ1f4bLp/Gj034R/e1H/r2tf5PXp1eY/CP72o/9
e1r/ACevTq8jE/xH8vyPQofB9/5hRRRWBsFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQ
AUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB
RRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFF
FFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB81Xn/H9cf8AXRv51BXd
L8M9Zv1F5Fc2AjuB5qhpHyA3Iz8nXml/4VRrv/P3p3/fx/8A4ivpo4ugkk5I8Z0KjexxNtF591FE
RIQ7hcRJuc5P8I7n0FdFc+H7VHsHjguwk8ssbwJcxTv8ig/eUAJ15BHy4J56VrwfC7xFbTxzw32n
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
Q/mQfV6v8pwlFd3/AMKo13/n707/AL+P/wDEUf8ACqNd/wCfvTv+/j//ABFH1yh/Mg+r1f5ThKK7
v/hVGu/8/enf9/H/APiKP+FUa7/z96d/38f/AOIo+uUP5kH1er/KcJRXd/8ACqNd/wCfvTv+/j//
ABFH/CqNd/5+9O/7+P8A/EUfXKH8yD6vV/lOEoru/wDhVGu/8/enf9/H/wDiKP8AhVGu/wDP3p3/
AH8f/wCIo+uUP5kH1er/ACnCUV3f/CqNd/5+9O/7+P8A/EUf8Ko13/n707/v4/8A8RR9cofzIPq9
X+U4SrFr9y4/65j/ANCWuz/4VRrv/P3p3/fx/wD4iqOr+CdS8N6bLeXk9pJG5EQELsTkkHuo4+U1
M8VRkuWMtRqjUjq0czUM3+utf+u61NUM3+utf+u61z1f4bLp/Gj034R/e1H/AK9rX+T16dXmPwj+
9qP/AF7Wv8nr06vIxP8AEfy/I9Ch8H3/AJhRRRWBsFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFF
FABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUU
AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQA
UUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBS0f/AJAlh/17
R/8AoIq7VLR/+QJYf9e0f/oIq7Te4lsVNVu0sNIvLyS4S3SCB5DM8ZkWPAJ3FQQWA64Bya831LUt
UmsNW0u+u79PJk0yeGfU47YSLvusFgIPl2fIpAYBuue1epOiyIyOoZWGCpGQR6VkLoPhvSbR0TSt
Js7Z2RWAt440Ztw2A8AE7sY98Y5pLR3Kuc+NT1UTtog1eZj/AGqLL+0/Ki85V+z+djHl+Vv3fJnb
jB6bqzvEl1fXei67px8SqYrDR5JHnjiixdkmVGEnynG3ywp8sqdxPA4Wu5GhaQNI/skaVYjTf+fP
7Onk9d33MbevPTrzUN9onh9rGL7fpemGzsI28r7Rbx+Xbpj5tuRhFwOcYGBR/X4Di7NP+t/6XkaF
p/x5Qf8AXNf5VNSJt2Lsxsx8u3pj2qC21CyvZbiK1u7eeS3fy50ikDGJv7rAHg+xpt3ZEVZIsUUV
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
/r2tf5PXp1eRif4j+X5HoUPg+/8AMKKKKwNgooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK
KACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoooo
AKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigA
ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACi
iigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK8G8c/8jhqH/X2v/omv
ea8G8c/8jhqH/X2v/omuzBfG/wCuqObFfCv66GHRRRXrHnhRRRQAUUUUAFFFFABRRRQAUUUUAFFF
FABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABUM3+utf8ArutTVDN/rrX/AK7rWdX+Gy6fxo9N+Ef3
tR/69rX+T16dXmPwj+9qP/Xta/yevTq8jE/xH8vyPQofB9/5hRRRWBsFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUU
UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRR
QAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BXg3jn/kcNQ/6+1/9E17zXg3jn/kcNQ/6+1/9E12YL43/XVHNivhX9dDDooor1jzwooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqGb/XWv/XdamqGb/XWv/Xda
zq/w2XT+NH//2Q==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>34161</attachid>
            <date>2009-08-05 12:46:32 -0700</date>
            <delta_ts>2009-08-05 12:46:32 -0700</delta_ts>
            <desc>Safari 4.0.2 display &quot;!BA&quot;</desc>
            <filename>safari_4_0_2.jpg</filename>
            <type>image/jpeg</type>
            <size>31579</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCADVBDsDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDE8l/+
fm5/7/N/jR5L/wDPzc/9/m/xqWive9lD+VHk+0n3IvJf/n5uf+/zf40eS/8Az83P/f5v8aloo9lD
+VB7SfcryqYYXla4udqKWOJm6D8azobszBWl/fenmEsB9M1oah/yDbr/AK4v/I1laXAZ5YIAcGRw
gOM4z3r1Mvp0qcZVWkrdTlxTnNKN9zTjuokH/Hpb/wDfsVIdQjA/49Lb/v0K6G3s9F+xFRAHO7aM
jc7H3IIPbtgDNcvqlkbK7KDPlsodCT/Cf/1GujDZhSxFT2aTT8zmrYKpSgpt3Q86lFn/AI87b/v0
KP7Si/587b/v0K1dO8JwX8Gjg6hLHeasJ/Ij+zAxqYyRh33gjPHIU9ar2OiaVeaHf6m2o3yLYCHz
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
hcq5ozVr+xbL0uP/AAKl/wDiqP7FsvS4/wDAqX/4qjlC5VzRmrX9i2Xpcf8AgVL/APFUf2LZelx/
4FS//FUcoXKuaM1a/sWy9Lj/AMCpf/iqP7FsvS4/8Cpf/iqOULlXNGatf2LZelx/4FS//FUf2LZe
lx/4FS//ABVHKFyrmjNWv7FsvS4/8Cpf/iqP7FsvS4/8Cpf/AIqjlC5VzRmrX9i2Xpcf+BUv/wAV
R/Ytl6XH/gVL/wDFUcoXKuaM1a/sWy9Lj/wKl/8AiqP7FsvS4/8AAqX/AOKo5QuVc0Zq1/Ytl6XH
/gVL/wDFUf2LZelx/wCBUv8A8VRyhcq5ozVr+xbL0uP/AAKl/wDiqP7FsvS4/wDAqX/4qjlC5VzR
mrX9i2Xpcf8AgVL/APFUf2LZelx/4FS//FUcoXKuaM1a/sWy9Lj/AMCpf/iqP7FsvS4/8Cpf/iqO
ULlXNGatf2LZelx/4FS//FUf2LZelx/4FS//ABVHKFyrmjNWv7FsvS4/8Cpf/iqP7FsvS4/8Cpf/
AIqjlC5VzRmrX9i2Xpcf+BUv/wAVR/Ytl6XH/gVL/wDFUcoXKuaM1a/sWy9Lj/wKl/8AiqP7FsvS
4/8AAqX/AOKo5QuVc0Zq1/Ytl6XH/gVL/wDFUf2LZelx/wCBUv8A8VRyhcq5ozVr+xbL0uP/AAKl
/wDiqP7FsvS4/wDAqX/4qjlC5VzRmrX9i2Xpcf8AgVL/APFUf2LZelx/4FS//FUcoXKuaM1a/sWy
9Lj/AMCpf/iqP7FsvS4/8Cpf/iqOULnhfxe/5HTSP+ucP/o16zq1fjHaxWnjfR44t+0xQt88jOc+
a/diayq+mX8Cl/hPJq/HL1CiiipMwooooAKKKKAK+of8g26/64v/ACNetfBv/kTp/wDr8P8A6Kjr
yXUP+Qbdf9cX/ka9a+Df/Imz/wDX4f8A0VHRiv8AcZeqNcP/ABl8z0OiiivnT1AooooAKKKKACii
igAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKK
ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA
KKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAo
oooAKKKKACoLyc21nLMBkouanqlq/wDyCbn/AHKqKvJIUnZM5eyuPE2rW/2u1kgWFmYKGcg8HHpV
j7J4u/5723/fw/4Vd8Gf8i3F/wBdJP8A0I10Fb1KvLNxSWnkYQp80U22cl9k8Xf897b/AL+H/Cj7
J4u/5723/fw/4V1tFT7d9l9xfsV3f3nJfZPF3/Pe2/7+H/Cj7J4u/wCe9t/38P8AhXW0Ue3fZfcH
sV3f3nJfZPF3/Pe2/wC/h/wo+yeLv+e9t/38P+FdbRR7d9l9wexXd/ecl9k8Xf8APe2/7+H/AAo+
yeLv+e9t/wB/D/hXW0Ue3fZfcHsV3f3nJfZPF3/Pe2/7+H/Cj7J4u/5723/fw/4V1tFHt32X3B7F
d395yX2Txd/z3tv+/h/wo+yeLv8Anvbf9/D/AIV1tFHt32X3B7Fd395yX2Txd/z3tv8Av4f8Kgd/
Ecd4lm+o6et1Iu5IDcYdhzyF6kcH8jXaVwviydNM8QS61HCr3lhYGSLeTt/1V22CAehKCrhVvdtL
RX2JdHVJN6vuXfsni7/nvbf9/D/hR9k8Xf8APe2/7+H/AAqKLxTqf9sw2ci2jR/2jHZyFY2BIaz8
/cPmODv478cdeaoW3jfVpbC1uGissyWun3LARP8A8vFw0bKPn7KBg+uTjBwJ9rK9rLp07lex0vd9
9++ht6Bql/JqlzpuobGlh6spyOma6auS0z/ketT+o/8AQRVL4i3Eq6GJyNWshbajaxCW1uXjM8by
oH2rC+5uCVwwBz90d6mulzq3W34hRb5Xfpf8DuqK8+kvdF0/Rbq9jufFMNs99b2g3zXTy796MDtn
y0akttbOAy8DJIrTg+IWn3Om3WpJpuppY20rQGeeJIA0wkEYjAkdSCSRywCjoxUggY7/ANf13NfM
66iuSl8XX6+JtF0seHr+NL6Kd5hKYd8Wx1XPEuMDO44zkFcZOQL+seK7XR9XttK+wajeXtzBJPFH
awZUqmMjexVQee5+uMrkvpcdjeorkNR+Imm6do1trDafqUunTWqXTXKpGiRq/wB1SZHXc/8AsJuP
tyMtn+JGkwTXqmw1dobG6jtbmcWZ2oX27GAJDOCWA+VSe+MEEu2thHY0Vylx8QNJsrC6uL+Keylt
7r7Iba6eGJ2kKCQAM0nl4KHOS49Dg8VreHfENj4n0hNS09iYWdoyCVJVlOCMqSp+qkg9iaQHjXxs
/wCR70b/AK4Q/wDo16xK2/jZ/wAj3o3/AFwh/wDRr1iV9L/y4pf4Tyanxy9QoooqCAooooAKKKKA
K+of8g26/wCuL/yNetfBv/kTZ/8Ar8P/AKKjryXUP+Qbdf8AXF/5GvWvg3/yJs//AF+H/wBFR0Yr
/cZeqNcP/GXzPQ6KKK+dPUCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigA
ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACi
iigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK
KACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKpav/yCbn/cq7Uc8SzwPE/3WGDTi7NM
TV1Yw/Bn/Itxf9dJP/QjXQV4xquqPo2r3enwG5EcMrKNlwVH5Yqn/wAJPcf3rv8A8C2/wr0XgKlV
+0js9en+ZxrFRguR9P67HudFeG/8JPck4DXn/gW3+FOl8R3kMrRSi+jkQ4ZGumBB9CMUv7Mrf1b/
ADH9ch/X/DHuFFeGf8JPcf3rv/wLb/Cj/hJ7j+9d/wDgW3+FP+zK39W/zD67D+v+GPc6K8M/4Se4
/vXf/gW3+FH/AAk9x/eu/wDwLb/Cj+zK39W/zD67D+v+GPc6K8M/4Se4/vXf/gW3+FH/AAk9x/eu
/wDwLb/Cj+zK39W/zD67D+v+GPc6K8M/4Se4/vXf/gW3+FH/AAk9x/eu/wDwLb/Cj+zK39W/zD67
D+v+GPc6K8M/4Se4/vXf/gW3+FH/AAk9x/eu/wDwLb/Cj+zK39W/zD67D+v+GPc64nxFpc+q+Mob
J7e7+wXdi0M1xGv7tMpcLydv3v3nHI69DkY4L/hJ7j+9d/8AgW3+FH/CT3H967/8C2/wq4ZfWjfT
dNdP8yXjIXTXTX+tD0HTPBupwayl9qWs2l1Gtyt2YrewaEmRYPIX5jK/y7ecY69wOKq2vw/v4LmF
JNbtn06JLaEQLYMspit5TLGvmeaRuycFtvIHAFcR/wAJPcf3rv8A8C2/wo/4Se4/vXf/AIFt/hU/
2bWvf/L/ADK+uwtb+vyPRtM/5HrU/qP/AEEVP4m8P6x4gthbRatY20CXcNzHu095GHlsrqpPnKD8
y8nA4OOvNUPABgvLaa+Jf7SzfOHYsccgHJ69D+VdrXHiNKluqt96N6PwX7/qc/4k8P3evaEljDe2
1pcGeGeac2hdXaNlbhQ6kZKL1Y8DHuKmm+FtS0/w7qGmPqen3Ml3dS3G6XTSYsSOWdHjMp3A5Yfe
HB79+rorD+vy/wAkbX/r+vU43TfA8+k3Oj3FnqVujWBuA8X2RjCY5nVmSJfMzGBt+XJYDPTHFaGr
+H9Qv/Ellq9pqVtbi1tZrdYZbNpdxkxliwkXgFV4x688jHRUUNX0EtNjzhPhjfppK2A160f/AIlZ
0wyyaaWaNPn+aLMv7ssGAbru2jpxiebwDrU9tqUT+IdP3X13bXTsuluArQhMADz+h8tM8+vqMegU
Udb/ANdwucV/whOp/wBqX2qDXLdL6W+S9tnSxYJEyx+UyuplO9Wj44KkHkHoK6ywivIbULfXSXNw
Tlnjh8pPoq5YgfVievParNFHkHmeC/Gz/ke9G/64Q/8Ao16xK2/jZ/yPejf9cIf/AEa9YlfS/wDL
il/hPJqfHL1CiiioICiiigAooooAr6h/yDbr/ri/8jXrXwb/AORNn/6/D/6KjryXUP8AkG3X/XF/
5GvWvg1/yJs//X2f/RUdGK/3GXqjXD/xl8z0OiiivnT1AooooAKKKKACiiigAooooAKKKKACiiig
AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC
iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK
KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDx+c
lfiVflSQwa4KkdQfKbGPerlu3/Horn5PM0sgHpnac/pVjUfBGsanr13qtjd2sIe4cxkyOrqVYjPC
8cj1plz4D8WXqqt3rMM6odyiW6lYA+oyte7GrRcI3mlol9x5rhUUpWj3/EpzSSf2TMXZubCctuPV
vtfBPvmuZ12aO41+/micPG87srKeCCetdnceBvF93EYrnXI5oyQSkl3KwyPYrVWX4Z6/NK0st7Yy
SOcs7SyEk+pOytqNehB3c11/EirCpNWUWcNRXbf8Ku1v/n60/wD7+P8A/EUf8Ku1v/n60/8A7+P/
APEV0fXcP/OjH6vV/lOJortv+FXa3/z9af8A9/H/APiKP+FXa3/z9af/AN/H/wDiKPruH/nQfV6v
8pxNFdt/wq7W/wDn60//AL+P/wDEUf8ACrtb/wCfrT/+/j//ABFH13D/AM6D6vV/lOJortv+FXa3
/wA/Wn/9/H/+Io/4Vdrf/P1p/wD38f8A+Io+u4f+dB9Xq/ynE0V23/Crtb/5+tP/AO/j/wDxFH/C
rtb/AOfrT/8Av4//AMRR9dw/86D6vV/lOJortv8AhV2t/wDP1p//AH8f/wCIo/4Vdrf/AD9af/38
f/4ij67h/wCdB9Xq/wApxNFdt/wq7W/+frT/APv4/wD8RR/wq7W/+frT/wDv4/8A8RR9dw/86D6v
V/lLnw5upEvmtgf3bW6sR775K6vxhr8+k6FqEuk3en/2nZQi5a2uVMhMeSBlVdWUE9G6cHg1zXhL
S59F8Wy6fcvG8sVrHuMZJU5Z24yB2NdB44XU7/w3qml6dot3eTT24WJ0lhRGYnpl5ARjHPHcYzzj
5rEyUq0mtm2exRTUEn2OhtjPFYo1/PA8ypmWWOMxIfUhSzED6k1TtvEug3tncXlrremz2tsMzzxX
SMkQ/wBpgcL+NZN/e69q2lX9pb+GHti1lKFGqPbvHLLgBI9scj5By2d2BwOueOXi0DVWvtTmudA1
947uytUEov7VbhZopGO5dsojQjcrKqgIdpyASQcepa2X9djsW8ceGxqem2CaxZSyairtbPHcxsj7
WC4zu5JYkADOSrDtWrfarp2lqG1DULW0Uqz5uJljG0YBPJHA3DJ9x61xlhp3iSLW/D+p6hYzXXki
8gmZTbxyxrK6FHlVXCEgKd3lk+oHOKteIdJuJvH2lavD4fe+jtbC5je5TyAwdsbFG91bPDj0Hmde
WwnovvGrM6K78RaHp/2b7brOnW32pQ1v510ieaDjBXJ+Ycjp61JJrekxXa2kmqWSXLS+QsLXCBzJ
gHYFzndgg464I9a8qfwz4om8ILpM/h+6DnRFslFtcW0ZMy7xieQPuKD5SqqSp3NuHPD7nwtqc1j4
hRPBMytqWoWVwELWfzxx+WZA2JcclHOO5f3OK0vb+t/8hW/r5HqK67o76dNqKarYtYwsVluRcIYk
I4IZs4B5HWrVrd219ax3VncRXFvKN0csLh0ceoI4Nea3Xh/WrvVtSvDomoR2i6tFeJbQ30dvJcR/
ZxC2x4pRtZSN2GKgjjIJrt/DOnQ6ZpHkwadPp6PK8pgubozy7mOWZ2LN8xOTwzD3pLYGePfGz/ke
9G/64Q/+jXrErb+Nn/I96N/1wh/9GvWJX0v/AC4pf4Tyanxy9QoooqCAooooAKKKKAK+of8AINuv
+uL/AMjXrXwa/wCRNn/6+z/6KiryXUP+Qbdf9cX/AJGvWvg1/wAibP8A9fZ/9FRUYr/cZeqNcP8A
xl8z0OiiivnT1AooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiii
gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK
KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDlvEM00HhSRoJpYWfUo4y8TlG2teKrAEcjI
JHHrXKXmq6jFBfzJqF2HW113b+/bAMUy+WQM4BUHAPYcV6CLC21PSLiyu4zJBLNMGAYqf9axBDAg
gggEEEEEcVU07wboeltO1vbTuZ0kjk+03c1xlZDukA8x2xuPLY6980f8H8UXGSVrrqczDeXieI4I
hfXZjTWYYAjXDsDGdO3FSCeRuG7nPPPWsmz1PUW0mylbUr0ubDSJyxuXOXku2Dk887gcEdCMDoBX
dab4L0PSr9b61huzcK24NcX884DbNm7bI7Dds+XOMgcdKZD4F8P29+t7HbXPmqysqNfTtENrF1Hl
l9m1WJIXGAegFVdXT9PwJT923kl+Nx/ifV7vTPskdndWsDzFi2+ynvZWAx9yCEhmHPLZwvHB3ccv
aatrHiHVfDl5aNZ2160GpQySz2suwCOaJC3kllcE7R8rMCueScYPb6podjrBha7W4WSHPly211Lb
yKDjI3xsrYOBkZwcD0FZ7+CdBaG0jW3uofsbTNA9vfTwuhlbdJ86OGO488k1K0C5mweJNa1I6fp1
l/Z9vqMj3a3NxNC8kP8Ao7iNtiB1PzMykZb5Rn73Wujmsn1LR1t9RLwzOimX7DdSRbWHJ2yKVbGf
pkdarTeFdGm0+1svsrxRWmfIa3nkhkjz97EiMH+bJ3c/N3zVqXRrKXSY9MRJre0jVVRLS4ktyoXo
A0bKwH40nqmhdTj9OuLmbT/BGqyXl411fiO2uv8ASZPLlU28rEmPOzduUHcAG461ueFw9tf69pwn
uZrezvUWD7TO8zqrQRuRvcliNzMeScZqeLwho0Mlg0cV0osECWsf26fy4wFKAhN+3dtYjcRnnrVv
SdDsdEW4Fks+biTzZXuLmWd3baFBLSMx6KB17Vbau3/W6G7f1/XyNGiiipEFFFFABRRRQAUUUUAc
jFHj4j3sufvQRLjHoD/jXXVyif8AI/3X/XJP/QRU13bjVvFV1Y3NxdJa2tnBKsdvcPCWeRpQSWQg
8CMYGccmmlcTdjpaK5m80TQtOs5bu8vNSht4hl3fWLoAf+RPwx3qpptr4b1aWSG2udcSeNQzQ3N9
f28m08BtkjKxXORkDGQRT93uL3ux2NFcxe6LoWnW/wBourrVY4t6R7v7Vuz8zsFUcSd2YD8an/4R
bSv+emqf+De6/wDjlHu9w97sdBRXP/8ACK6V/wA9NU/8G91/8cqvHoegySrCLnVElYuFjk1W7R2C
HDEK0gJUEjkccg55FHu9w97sdRRXH69pNro2gX+p2FzqUdzZwPcR+ZqM8qkopbBV3KkHGORXYUml
a6Gm72Z4L8bP+R70b/rhD/6NesStv42f8j3o3/XCH/0a9YlfSf8ALil/hPKqfHL1CiiioICiiigA
ooooAr6h/wAg26/64v8AyNetfBr/AJE2f/r7P/oqKvJdQ/5Bt1/1xf8Aka9a+DX/ACJs/wD19n/0
VFRiv9xl6o1w/wDGXzPQ6KKK+dPUCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK
KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoo
ooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAOa1q9utP8MSTWcxhmbUE
hEgUMVD3YRsBgRnDHqK5y68UazBFezLe58u21lkUxJgNbygRHpngHHoe+TzXYTaZDrGiXFjO8kav
cSMskRG+NlmLKy5BGQwB5BHHQ1m2HgSytTc/atR1DUVniuIit0YgFE7BpSPLjTliB1zjtij/AIP5
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
Oo6brFpaqbpLwxXFi0581YTD94Sp8uwjjHUZz2qXtp/Wv+Qo7a72/GxnQeONUmsLS4MNmDJY6fcS
Dy25e4uPLbHzcAAEgc8kc8cuufGmqwWc7iOyMkEOqyMTG2G+yvtjAG7jOQTyehxjPE134BuRZ2Vt
perw24gtbW2la5szN5n2eTzIyMSJt+bOeuQeMYzTr7wHdXOjrbQ6vDFeul4lxcPZl0dbpt0m1BIC
pBxtyzYA5zmm7a/P/gFJxuu11+Wv4kq+KdROqiyKWuDq0VoH8tuImtfPPG772cjPTHas+38b6tNp
kdwYrISzWOnXCYifCPcTmJ8jfyBgEDI9ya008H3y2xmOrWx1b7cl6tx9ibyQVhEIXyvMzjZn+Pqc
+1VbDwBc22jy2lzq8M1ytta29tNHZmNYxbuZIyyGRi53HnDLkDAx1p6fl+WpKtbzsvvvr+Bd0nxL
f32vQWc0dsIJX1BPkRgw+zzrGhyWI5VueOvTHSurrlPD/hO+0vVRfahqtveFDctEkFm0AVp5BI5J
Mj5GVAA4wOua3hFqf2ksbu08jfkILVt2303eZjPvj8KXRIHa7sYKf8j/AHX/AFyT/wBBFdXXKJ/y
P91/1yT/ANBFdXSEFFFFABRRRQAUUUUAFFFFAHgvxs/5HvRv+uEP/o16xK2/jZ/yPejf9cIf/Rr1
iV9L/wAuKX+E8mp8cvUKKKKggKKKKACiiigCvqH/ACDbr/ri/wDI1618Gv8AkTZ/+vs/+ioq8l1D
/kG3X/XF/wCRr1r4Nf8AImz/APX2f/RUVGK/3GXqjXD/AMZfM9Dooor509QKKKKACiiigAooooAK
KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoo
ooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiii
gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA
CiiigAooooAqTaZZTby1pAXfJLeWM59c4rBfwXbu5YXEwyegY11NFAHKf8ITB/z9T/8AfZo/4QmD
/n6n/wC+zXV0UAcp/wAITB/z9T/99mj/AIQmD/n6n/77NdXRQByn/CEwf8/U/wD32aP+EJg/5+p/
++zXV0UAcp/whMH/AD9T/wDfZo/4QmD/AJ+p/wDvs11dFAHKf8ITB/z9T/8AfZo/4QmD/n6n/wC+
zXV0UAcp/wAITB/z9T/99mj/AIQmD/n6n/77NdXRQByn/CEwf8/U/wD32aP+EJg/5+p/++zXV0UA
cp/whMH/AD9T/wDfZo/4QmD/AJ+p/wDvs11dFAGHpXhuHS7kzrI7uRjLHNblFFABRRRQAUUUUAFF
FFABRRRQB4L8bP8Ake9G/wCuEP8A6NesStv42f8AI96N/wBcIf8A0a9YlfS/8uKX+E8mp8cvUKKK
KggKKKKACiiigCvqH/INuv8Ari/8jXrXwa/5E2f/AK+z/wCioqKKMV/uMvVGuH/jL5nodFFFfOnq
BRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAF
FFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUU
UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRR
QAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFA
BRRRQAUUUUAFFFFABRRRQAUUUUAeC/Gz/ke9G/64Q/8Ao16xKKK+l/5cUv8ACeTU+OXqFFFFQQf/
2Q==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34234</attachid>
            <date>2009-08-06 16:29:36 -0700</date>
            <delta_ts>2009-08-06 18:36:37 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v2</filename>
            <type>text/plain</type>
            <size>17782</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Njg2MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDUgQEAKKzIwMDktMDgtMDYgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSA8c2VsZWN0PiBhbmQgYXV0b2ZpbGwuIEl0CisgICAgICAgIDEuIGludHJvZHVjZXMgYSBu
ZXcgZmxhZyBpbiBXZWJDb3JlOjpQb3B1cENvbnRhaW5lclNldHRpbmdzIHRvCisgICAgICAgICAg
IGRpc3Rpbmd1aXNoIHdoZXRoZXIgdGhlIHdpZHRoIG9mIHRoZSBkcm9wLWRvd24gc2hvdWxkIGJl
IHJlc3RyaWN0ZWQKKyAgICAgICAgICAgb3Igbm90LgorICAgICAgICAgICBGb3IgYXV0b2ZpbGws
IHRoZSB3aWR0aCBvZiB0aGUgZHJvcC1kb3duIGlzIHJlc3RyaWN0ZWQgdG8KKyAgICAgICAgICAg
YmUgdGhlIHNhbWUgYXMgdGhhdCBvZiB0aGUgaW5wdXQgZmllbGQgKHRoZSBuZXcgZmxhZyBpcyBz
ZXQgaW4KKyAgICAgICAgICAgQ2hyb21pdW0ncyBvd24gY29kZSkuIEJ1dCB3aWR0aCBpcyBub3Qg
cmVzdHJpY3RlZCBmb3IgPHNlbGVjdD4uCisgICAgICAgIDIuIHVzZSBkcm9wLWRvd24gaXRlbSdz
IGRpcmVjdGlvbmFsaXR5IHRvIGRpc3BsYXkgZHJvcC1kb3duIGl0ZW1zLgorICAgICAgICAgICBQ
cmV2aW91c2x5LCBkcm9wLWRvd24gaXRlbSBpcyBkaXNwbGF5ZWQgaW4gdGhlIGl0cyBmaXJzdCBz
dHJvbmcKKyAgICAgICAgICAgZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxpdHku
CisgICAgICAgICAgIChkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlvbmFsaXR5IGlzIHNldCBpbiBD
aHJvbWl1bSdzIG93biBjb2RlLgorICAgICAgICAgICBJdCBpcyBzZXQgdGhlIHNhbWUgYXMgdGhl
IGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBlbGVtZW50LiAKKyAgICAgICAgICAgRm9yIGF1dG9maWxs
LCBpdCBpcyB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eSBhcyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVs
ZC4gCisgICAgICAgICAgIEZvciA8c2VsZWN0PiwgaXQgaXMgdGhlIHNhbWUgZGlyZWN0aW9uYWxp
dHkgYXMgdGhhdCBvZiB0aGUgPHNlbGVjdD48b3B0aW9uPikuCisKKworICAgICAgICBTaW5jZSB0
aGUgcGF0Y2ggb25seSBhZmZlY3RzIHRoZSBjaHJvbWl1bSBjbGllbnQsIG5vdCB3ZWJjb3JlIHBh
cnQgb3IKKyAgICAgICAgb3RoZXIgY2xpZW50cy4gTm8gYXV0b21hdGljIHRlc3RzIGlzIHBvc3Np
YmxlLgorCisgICAgICAgICogbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1p
dGVtLWRpcmVjdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBtYW51YWwtdGVzdHMvcG9wdXAt
aXRlbS1kaXJlY3Rpb24taW4tc2VsZWN0aW9uLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRm
b3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBv
cHVwTGlzdEJveDo6cGFpbnRSb3cpOiBJZiBhbiBpdGVtIGlzIGxvbmdlciB0byBmaXQgaW4gYSBs
aXN0IGJveCwgZHJhdyBwYXJ0IG9mIHRoZSB0ZXh0IGFuZCBhcHBlbmQgZWxsaXBzZXMuCisgICAg
ICAgIChXZWJDb3JlOjpQb3B1cExpc3RCb3g6OmxheW91dCk6IFJlc3RyaWN0IHdpZHRoIG9mIGxp
c3QgYm94IGlmIGFwcGxpY2FibGUuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBN
ZW51Q2hyb21pdW0uaDogQWRkIGEgbmV3IGZsYWcgaW4gUG9wdXBDb250YWluZXJTZXR0aW5nIHRv
IGRpc3Rpbmd1aXNoIHdoZXRoZXIgdG8gcmVzdHJpY3Qgd2lkdGggb2YgbGlzdCBib3guCisgICAg
ICAgIChXZWJDb3JlOjpQb3B1cEl0ZW06OlBvcHVwSXRlbSk6IEFkZCBlbGxpcHNlc1dpZHRoIGlm
IGFuIGl0ZW0gY2FuIG5vdCBmaXQgaW4gaXRzIGlucHV0IGZpZWxkJ3Mgd2lkdGggYW5kIG5lZWQg
dHJ1bmNhdGlvbi4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3QmlkaVRleHRXaXRo
aW5XaWR0aCk6IERyYXcgYmlkaSB0ZXh0Cit3aXRoaW4gd2lkdGguCisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4dCk6IAorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oOiBBZGQgYW4gZGVmYXVsdCBwYXJhbWV0ZXIgdG8gZHJh
d0JpZGlUZXh0LCBhbmQgYWRkIGRyYXdCaWRpVGV4dFdpdGhpbldpZHRoLgorCiAyMDA5LTA4LTA2
ICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBE
aW1pdHJpIEdsYXprb3YuCkluZGV4OiBXZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1
cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL21h
bnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRtbAko
cmV2aXNpb24gMCkKKysrIFdlYkNvcmUvbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRo
LWFuZC1pdGVtLWRpcmVjdGlvbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACivv
u788aHRtbD4KKzxoZWFkPgorPE1FVEEgSFRUUC1FUVVJVj0iQ09OVEVOVC1UWVBFIiBDT05URU5U
PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPgorPHRpdGxlPgorVGVzdCB0aGUgcG9wdXAgbGlz
dCBib3gncyB3aWR0aCBhbmQgaXRzIGl0ZW1zJyBkaXNwbGF5IGRpcmVjdGlvbmFsaXR5Cis8L3Rp
dGxlPgorPC9oZWFkPgorPGJvZHk+Cis8cD4KK0F1dG9maWxsIHBvcHVwIGxpc3QgYm94IHNob3Vs
ZCBoYXZlIHRoZSBzYW1lIHdpZHRoIGFzIGl0cyBpbnB1dCBmaWVsZCdzIHdpZHRoLgorSWYgdGhl
IHN1Ym1pdHRlZCBpbnB1dCB0ZXh0IGlzIGxvbmdlciwgaXQgd2lsbCBiZSB0cnVuY2F0ZWQgdG8g
Zml0IGluIHRoZSAKK2lucHV0IGZpZWxkJ3Mgd2lkdGgKKzxwPiBUcnkgdHlwZSBzb21lIGxvbmcg
dGV4dCBpbiB0aGUgIkxhc3QgbmFtZSIgaW5wdXQgYm94LAorICAgU2F5ICJhYmNkIGFiY2QgYWJj
ZCBhYmNkIGFiY2QgYWJjZCIuCit0aGVuIGNsaWNrICJTdWJtaXQiLiBPcGVuIHRoZSBmaWxlIGFn
YWluLCBhbmQgdHlwZSB0aGUgZmlyc3QgbGV0dGVyICJhIiwKK3RoZSBmb3JtIGF1dG9maWxsIHBv
cC11cCBzaG91bGQgc2hvdyB1cCBub3cgd2l0aCB0aGUgd2lkdGggdGhlIHNhbWUgYXMKK3RoZSB3
aWR0aCBvZiB0aGUgaW5wdXQgZmllbGQsIGFuZCB0aGUgdGV4dCAiYWJjZCBhYmNkIGFiY2QgYWJj
ZCBhYmNkIGFiY2QiIGdvdAordHJ1bmNhdGVkIHRvIGZpdCBpbi4KKzxwPiBUcnkgdHlwZSB0aGUg
Zm9sbG93aW5nIHRleHQgaW50byB0aGUgIkZpcnN0IG5hbWUiIGFuZCAiTGFzdCBuYW1lIi4KKzx1
bD4KKzxsaT5hYmNkIGVmZworPGxpPtep16nXqdep16nXqSDXoNeg16DXoNeg16Ag15HXkdeR15HX
kdeR15HXkdeRCis8bGk+YWJjINeQ15DXkCBkZWZnaGlqa2xtbm9wcQorPGxpPteQ15DXkNeQ15DX
kNeQ15DXkNeQICBhYmNkZWZnaGlqa2xtbiDXkdeR15HXkdeR15HXkQorPGxpPmhpIQorPGxpPteQ
15AhCis8L3VsPgorVGhleSBzaG91bGQgYmUgZGlzcGxheWVkIGFzIFJUTCBpbiB0aGUgcG9wdXAg
b2YgIkZpcnN0IG5hbWUiLCAKK2FuZCBzaG91bGQgYmUgZGlzcGxheWVkIGFzIExUUiBpbiB0aGUg
cG9wdXAgb2YgdGhlICJMYXN0IG5hbWUiLgorPGJyPgorPGZvcm0gYWN0aW9uPSJmb3JtX2FjdGlv
bi5hc3AiIG1ldGhvZD0iZ2V0Ij4KKyAgRmlyc3QgbmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5h
bWU9ImZuYW1lIiBkaXI9InJ0bCIvPjxiciAvPgorICBMYXN0IG5hbWU6IDxpbnB1dCB0eXBlPSJ0
ZXh0IiBuYW1lPSJsbmFtZSIgLz48YnIgLz4KKyAgPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9
IlN1Ym1pdCIgLz4KKzwvZm9ybT4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IFdlYkNvcmUvbWFu
dWFsLXRlc3RzL3BvcHVwLWl0ZW0tZGlyZWN0aW9uLWluLXNlbGVjdGlvbi5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvbWFudWFsLXRlc3RzL3BvcHVwLWl0ZW0tZGlyZWN0aW9uLWluLXNlbGVj
dGlvbi5odG1sCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9tYW51YWwtdGVzdHMvcG9wdXAtaXRl
bS1kaXJlY3Rpb24taW4tc2VsZWN0aW9uLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQg
QEAKKzxodG1sPgorPGhlYWQ+Cis8TUVUQSBIVFRQLUVRVUlWPSJDT05URU5ULVRZUEUiIENPTlRF
TlQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+Cis8dGl0bGU+VGVzdCB0aGUgcG9wdXAgaXRl
bSdzIGRpc3BsYXkgZGlyZWN0aW9uYWxpdHkgaW4gc2VsZWN0LCBvcHRpb248L3RpdGxlPgorPC9o
ZWFkPgorPGJvZHk+CitTZWUgYnVnOiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9Mjc4ODkiPjI3ODg5PC9hPi4KKzxQPlRoZSBkaXNwbGF5IG9mIHRoZSBv
cHRpb24gY2hvc2VuIGFuZCB0aGUgZGlzcGxheSBvZiB0aGUgb3B0aW9ucyBpbiB0aGUgcG9wdXAg
bGlzdCBzaG91bGQgYmUgaW4gdGhlIHNhbWUgZGlyZWN0aW9uYWxpdHkuCis8UD4gRm9yIHRoZSBm
b2xsb3dpbmcgTFRSIHNlbGVjdCwgdGhlIGZpcnN0IG9wdGlvbiBpbiB0aGUgc2VsZWN0ZWQgb3B0
aW9uIGJveCBhbmQgaW4gdGhlIHBvcHVwIGxpc3Qgc2hvdWxkIGJlIGRpc3BsYXllZCB3aXRoIEVu
Z2xpc2ggYXQgdGhlIHZlcnkgbGVmdC4KK1RoZSBzZWNvbmQgb3B0aW9uIHNob3VsZCBiZSBkaXNw
bGF5ZWQgd2l0aCBFbmdsaXNoIGF0IHRoZSB2ZXJ5IHJpZ2h0LgorPHNlbGVjdD4KKyAgICAgICAg
PG9wdGlvbj5FbmdsaXNoIGJlZm9yZSDXkNeR16Y8L29wdGlvbj4KKyAgICAgICAgPG9wdGlvbj7X
oteR16jXmdeqINec16TXoNeZIEVuZ2xpc2g8L29wdGlvbj4KKzwvc2VsZWN0PgorPGJyPgorPFA+
IEZvciB0aGUgZm9sbG93aW5nIFJUTCBzZWxlY3QsIHRoZSBmaXJzdCBvcHRpb24gaW4gdGhlIHNl
bGVjdGVkIG9wdGlvbiBib3ggYW5kIGluIHRoZSBwb3B1cCBsaXN0IHNob3VsZCBiZSBkaXNwbGF5
ZWQgd2l0aCBIZWJyZXcgYXQgdGhlIHZlcnkgbGVmdC4KK1RoZSBzZWNvbmQgb3B0aW9uIHNob3Vs
ZCBiZSBkaXNwbGF5ZWQgd2l0aCBFbmdsaXNoIGF0IHRoZSB2ZXJ5IGxlZnQuCis8c2VsZWN0IGRp
cj0icnRsIj4KKyAgICAgICAgPG9wdGlvbj5FbmdsaXNoIGJlZm9yZSDXoteR16jXmdeqPC9vcHRp
b24+CisgICAgICAgIDxvcHRpb24+16LXkdeo15nXqiDXnNek16DXmSBFbmdsaXNoPC9vcHRpb24+
Cis8L3NlbGVjdD4KKzwvYm9keT4KKzwvaHRtbD4KKwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9j
aHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAJKHJldmlzaW9uIDQ2Nzg1KQorKysg
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTY4LDYgKzY4LDcgQEAgc3RhdGljIGNvbnN0IGludCBrTWF4VmlzaWJsZVJvd3Mg
PSAyMDsKIHN0YXRpYyBjb25zdCBpbnQga01heEhlaWdodCA9IDUwMDsKIHN0YXRpYyBjb25zdCBp
bnQga0JvcmRlclNpemUgPSAxOwogc3RhdGljIGNvbnN0IFRpbWVTdGFtcCBrVHlwZUFoZWFkVGlt
ZW91dE1zID0gMTAwMDsKK3N0YXRpYyBjb25zdCBTdHJpbmcga0VsbGlwc2VzID0gIi4uLiI7CiAK
IC8vIFRoZSBzZXR0aW5ncyB1c2VkIGZvciB0aGUgZHJvcCBkb3duIG1lbnUuCiAvLyBUaGlzIGlz
IHRoZSBkZWxlZ2F0ZSB1c2VkIGlmIG5vbmUgaXMgcHJvdmlkZWQuCkBAIC03NSw3ICs3Niw4IEBA
IHN0YXRpYyBjb25zdCBQb3B1cENvbnRhaW5lclNldHRpbmdzIGRyb3AKICAgICB0cnVlLCAvLyBm
b2N1c09uU2hvdwogICAgIHRydWUsIC8vIHNldFRleHRPbkluZGV4Q2hhbmdlCiAgICAgdHJ1ZSwg
Ly8gYWNjZXB0T25BYmFuZG9uCi0gICAgZmFsc2UgLy8gbG9vcFNlbGVjdGlvbk5hdmlnYXRpb24K
KyAgICBmYWxzZSwgLy8gbG9vcFNlbGVjdGlvbk5hdmlnYXRpb24KKyAgICBmYWxzZSAgLy8gcmVz
dHJpY3RXaWR0aE9mTGlzdEJveAogfTsKIAogLy8gVGhpcyBjbGFzcyB1c2VzIFdlYkNvcmUgY29k
ZSB0byBwYWludCBhbmQgaGFuZGxlIGV2ZW50cyBmb3IgYSBkcm9wLWRvd24gbGlzdApAQCAtODIz
LDggKzgyNSwyMyBAQCB2b2lkIFBvcHVwTGlzdEJveDo6cGFpbnRSb3coR3JhcGhpY3NDb250CiAg
ICAgU3RyaW5nIGl0ZW1UZXh0ID0gbV9wb3B1cENsaWVudC0+aXRlbVRleHQocm93SW5kZXgpOwog
ICAgIHVuc2lnbmVkIGxlbmd0aCA9IGl0ZW1UZXh0Lmxlbmd0aCgpOwogICAgIGNvbnN0IFVDaGFy
KiBzdHIgPSBpdGVtVGV4dC5jaGFyYWN0ZXJzKCk7Ci0KLSAgICBUZXh0UnVuIHRleHRSdW4oc3Ry
LCBsZW5ndGgsIGZhbHNlLCAwLCAwLCBpdGVtVGV4dC5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigp
ID09IFdURjo6VW5pY29kZTo6UmlnaHRUb0xlZnQpOworIAorICAgIC8vIFdlIGNvdWxkIGVpdGhl
ciBkaXNwbGF5IHRoZSBpdGVtcyBpbiB0aGUgZHJvcC1kb3duIHVzaW5nIGl0cyBpbnB1dCBmaWVs
ZCdzCisgICAgLy8gZGlyZWN0aW9uYWxpdHkgKGZvciBhdXRvZmlsbCkgb3IgaXRzIHNlbGVjdCBl
bGVtZW50IGRpcmVjdGlvbmFsaXR5IChmb3IgPHNlbGVjdD4pLAorICAgIC8vIE9yIHdlIGNvdWxk
IGRpc3BsYXkgdGhlIGl0ZW1zIGluIHRoZSBkcm9wLWRvd24gdXNpbmcgaGV1cmlzdGljczogc3Vj
aCBhcyAKKyAgICAvLyBpbiBpdHMgZmlyc3Qgc3Ryb25nIGRpcmVjdGlvbmFsaXR5IGNoYXJhY3Rl
cidzIGRpcmVjdGlvbi4KKyAgICAvLyBQbGVhc2UgcmVmZXIgdG8gdGhlIGRpc2N1c3Npb24gKGVz
cGVjaWFsbHkgY29tbWVudCAjNyBhbmQgIzEwKSBpbgorICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OSBmb3IgZGV0YWlsLgorICAgIC8vCisgICAgLy8g
SGVyZSwgSSBjaG9vc2UgdG8gCisgICAgLy8gdXNlIHRoZSBkaXJlY3Rpb24gb2YgdGhlIGlucHV0
IGZpZWxkIChpbiBhdXRvY29tcGxldGUpIG9yIHNlbGVjdGlvbiBvcHRpb24gKGluIDxzZWxlY3Q+
IHRhZykKKyAgICAvLyBhcyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBwb3B1cCBpdGVtcywgaW5zdGVh
ZCBvZiBkZXRlY3RpbmcgdGhlIHBvcHVwIGl0ZW0ncyBkaXJlY3Rpb24gYmFzZWQKKyAgICAvLyBv
biBpdHMgZmlyc3Qgc3Ryb25nLWRpcmVjdGlvbmFsIGNoYXJhY3Rlci4KKyAgICAvLyBJdCBpcyBi
YXNlZCBvbiB0aGUgZm9sbG93aW5nIDIgcmVhc29uczoKKyAgICAvLyAxLiBUbyBrZWVwIHRoZSBk
aXNwbGF5IG9mIGl0bWVzIGluIGRyb3AtZG93biB0aGUgc2FtZSBhcyB0aGUgaXRlbXMgaW4gdGhl
IGVsZW1lbnQuCisgICAgLy8gMi4gRm9yIDxzZWxlY3Q+IHRhZywgdG8ga2VlcCB0aGUgYmVoYXZp
b3IgaW4gc3luYyB3aXRoIEZpcmVGb3ggYW5kIElFLgorICAgIGJvb2wgcnRsID0gc3R5bGUudGV4
dERpcmVjdGlvbigpID09IFJUTDsKKyAgICBUZXh0UnVuIHRleHRSdW4oc3RyLCBsZW5ndGgsIGZh
bHNlLCAwLCAwLCBydGwpOwogCiAgICAgLy8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hv
dWxkIGdldCB0aGUgcGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbgogICAgIC8vIGVsZW1lbnRz
LiAgVGhpcyBwcm9iYWJseSBpbXBsaWVzIGNoYW5nZXMgdG8gUG9wdXBNZW51Q2xpZW50LgpAQCAt
ODM0LDcgKzg1MSwyOCBAQCB2b2lkIFBvcHVwTGlzdEJveDo6cGFpbnRSb3coR3JhcGhpY3NDb250
CiAgICAgICAgIEZvbnQgaXRlbUZvbnQgPSBnZXRSb3dGb250KHJvd0luZGV4KTsKICAgICAgICAg
aW50IHRleHRYID0gbWF4KDAsIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdMZWZ0KCkgLSBt
X3BvcHVwQ2xpZW50LT5jbGllbnRJbnNldExlZnQoKSk7CiAgICAgICAgIGludCB0ZXh0WSA9IHJv
d1JlY3QueSgpICsgaXRlbUZvbnQuYXNjZW50KCkgKyAocm93UmVjdC5oZWlnaHQoKSAtIGl0ZW1G
b250LmhlaWdodCgpKSAvIDI7Ci0gICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRl
eHRSdW4sIEludFBvaW50KHRleHRYLCB0ZXh0WSkpOworICAgICAgICBpbnQgZWxsaXBzZXNXaWR0
aCA9IG1faXRlbXNbcm93SW5kZXhdLT5lbGxpcHNlc1dpZHRoOworICAgICAgICBpZiAoIWVsbGlw
c2VzV2lkdGgpIHsKKyAgICAgICAgICAgIC8vIGxpc3QgYm94IGlzIGxhcmdlIGVub3VnaCB0byBo
b2xkIHRoZSBjb21wbGV0ZWQgaXRlbS4KKyAgICAgICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRl
bUZvbnQsIHRleHRSdW4sIEludFBvaW50KHRleHRYLCB0ZXh0WSkpOworICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgLy8gV2UgbmVlZCB0byByZXNlcnZlIHNwYWNlIGZvciBlbGxpcHNlcyBh
cHBlbmRpbmcgYXQgdGhlIHRydWNhdGVkIGl0ZW0gdGV4dC4KKyAgICAgICAgICAgIC8vIEZpcnN0
LCB3ZSBvbmx5IGRyYXcgcGFydCBvZiBpdGVtIHRleHQgd2hpY2ggY2FuIGZpdCBpbiB0aGUgcGl4
ZWwgd2lkdGgKKyAgICAgICAgICAgIC8vIGV4Y2x1ZGluZyB0aGUgZWxsaXBzZXNXaWR0aC4gT3Ro
ZXJ3aXNlLCB0aGVyZSB3aWxsIGJlIDIgaXNzdWVzOgorICAgICAgICAgICAgLy8gMS4gbm8gd2F5
IHRvIGhvbm9yIGNoYXJhY3RlciBib3VuZGFyeSBvZiB0aGUgdGV4dCB3aGVuIGRyYXdpbmcgZWxs
aXBzZXMuCisgICAgICAgICAgICAvLyAyLiB0aGUgdHJ1bmNhdGVkIHRleHQgb2YgUlRMIHRleHQg
d2lsbCBiZSB0aGUgZW5kaW5nIHBhcnQgb2YgdGhlIHRleHQsCisgICAgICAgICAgICAvLyAgICBp
bnN0ZWFkIG9mIHRoZSBiZWdpbm5pbmcgcGFydC4KKyAgICAgICAgICAgIEludFBvaW50IHN0YXJ0
UG9pbnQgPSBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpOworICAgICAgICAgICAgaWYgKHJ0bCkgIC8v
IG1vdmUgcmlnaHQgdG8gcmVzZXJ2ZSBzcGFjZXMgZm9yIGVsbGlwc2VzIGF0IHRoZSBsZWZ0IG9m
IHRoZSB0ZXh0CisgICAgICAgICAgICAgICAgc3RhcnRQb2ludC5tb3ZlKGVsbGlwc2VzV2lkdGgs
IDApOworICAgICAgICAgICAgZ2MtPmRyYXdCaWRpVGV4dChpdGVtRm9udCwgdGV4dFJ1biwgc3Rh
cnRQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93UmVjdC53aWR0aCgpIC0g
dGV4dFggLSBlbGxpcHNlc1dpZHRoKTsKKyAgICAgICAgICAgIC8vIFRoZW4sIGRyYXcgZWxsaXBz
ZXMuCisgICAgICAgICAgICBpZiAoIXJ0bCkKKyAgICAgICAgICAgICAgICB0ZXh0WCA9IHJvd1Jl
Y3QueCgpICsgcm93UmVjdC53aWR0aCgpIC0gZWxsaXBzZXNXaWR0aDsKKyAgICAgICAgICAgIHRl
eHRZID0gcm93UmVjdC55KCkgKyBpdGVtRm9udC5hc2NlbnQoKTsKKyAgICAgICAgICAgIGdjLT5k
cmF3VGV4dChpdGVtRm9udCwgVGV4dFJ1bihrRWxsaXBzZXMpLCBJbnRQb2ludCh0ZXh0WCwgdGV4
dFkpKTsKKyAgICAgICAgfQogICAgIH0KIH0KIApAQCAtMTA3MiwyOCArMTExMCw3IEBAIHZvaWQg
UG9wdXBMaXN0Qm94Ojp1cGRhdGVGcm9tRWxlbWVudCgpCiAKIHZvaWQgUG9wdXBMaXN0Qm94Ojps
YXlvdXQoKQogewotICAgIC8vIFNpemUgb3VyIGNoaWxkIGl0ZW1zLgotICAgIGludCBiYXNlV2lk
dGggPSAwOwotICAgIGludCBwYWRkaW5nV2lkdGggPSAwOwotICAgIGludCB5ID0gMDsKLSAgICBm
b3IgKGludCBpID0gMDsgaSA8IG51bUl0ZW1zKCk7ICsraSkgewotICAgICAgICBGb250IGl0ZW1G
b250ID0gZ2V0Um93Rm9udChpKTsKLQotICAgICAgICAvLyBQbGFjZSB0aGUgaXRlbSB2ZXJ0aWNh
bGx5LgotICAgICAgICBtX2l0ZW1zW2ldLT55T2Zmc2V0ID0geTsKLSAgICAgICAgeSArPSBpdGVt
Rm9udC5oZWlnaHQoKTsKLQotICAgICAgICAvLyBFbnN1cmUgdGhlIHBvcHVwIGlzIHdpZGUgZW5v
dWdoIHRvIGZpdCB0aGlzIGl0ZW0uCi0gICAgICAgIFN0cmluZyB0ZXh0ID0gbV9wb3B1cENsaWVu
dC0+aXRlbVRleHQoaSk7Ci0gICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpIHsKLSAgICAgICAg
ICAgIGludCB3aWR0aCA9IGl0ZW1Gb250LndpZHRoKFRleHRSdW4odGV4dCkpOwotICAgICAgICAg
ICAgYmFzZVdpZHRoID0gbWF4KGJhc2VXaWR0aCwgd2lkdGgpOwotICAgICAgICB9Ci0gICAgICAg
IC8vIEZJWE1FOiBodHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcgb2Yg
aW5kaXZpZHVhbCBvcHRpb24gZWxlbWVudHMuCi0gICAgICAgIHBhZGRpbmdXaWR0aCA9IG1heChw
YWRkaW5nV2lkdGgsIAotICAgICAgICAgICAgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ0xl
ZnQoKSArIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdSaWdodCgpKTsKLSAgICB9Ci0KKyAg
ICAvLyBDYWxjdWxhdGUgc2Nyb2xsIGJhciB3aWR0aC4KICAgICBpbnQgd2luZG93SGVpZ2h0ID0g
MDsKIAogI2lmIFBMQVRGT1JNKERBUldJTikKQEAgLTExMjQsMTQgKzExNDEsNTAgQEAgdm9pZCBQ
b3B1cExpc3RCb3g6OmxheW91dCgpCiAgICAgaWYgKG1fdmlzaWJsZVJvd3MgPCBudW1JdGVtcygp
KQogICAgICAgICBzY3JvbGxiYXJXaWR0aCA9IFNjcm9sbGJhclRoZW1lOjpuYXRpdmVUaGVtZSgp
LT5zY3JvbGxiYXJUaGlja25lc3MoKTsKIAotICAgIGludCB3aW5kb3dXaWR0aCA9IGJhc2VXaWR0
aCArIHNjcm9sbGJhcldpZHRoICsgcGFkZGluZ1dpZHRoOwotICAgIGludCBjb250ZW50V2lkdGgg
PSBiYXNlV2lkdGg7CisgICAgLy8gU2l6ZSBvdXIgY2hpbGQgaXRlbXMuCisgICAgaW50IGJhc2VX
aWR0aCA9IDA7CisgICAgaW50IHBhZGRpbmdXaWR0aCA9IDA7CisgICAgaW50IHkgPSAwOyAKKyAg
ICBmb3IgKGludCBpID0gMDsgaSA8IG51bUl0ZW1zKCk7ICsraSkgeworICAgICAgICBGb250IGl0
ZW1Gb250ID0gZ2V0Um93Rm9udChpKTsKKworICAgICAgICAvLyBQbGFjZSB0aGUgaXRlbSB2ZXJ0
aWNhbGx5LgorICAgICAgICBtX2l0ZW1zW2ldLT55T2Zmc2V0ID0geTsKKyAgICAgICAgeSArPSBp
dGVtRm9udC5oZWlnaHQoKTsKIAotICAgIGlmICh3aW5kb3dXaWR0aCA8IG1fYmFzZVdpZHRoKSB7
CisgICAgICAgIC8vIEVuc3VyZSB0aGUgcG9wdXAgaXMgd2lkZSBlbm91Z2ggdG8gZml0IHRoaXMg
aXRlbS4KKyAgICAgICAgU3RyaW5nIHRleHQgPSBtX3BvcHVwQ2xpZW50LT5pdGVtVGV4dChpKTsK
KyAgICAgICAgaW50IHdpZHRoID0gMDsKKyAgICAgICAgaWYgKCF0ZXh0LmlzRW1wdHkoKSkgewor
ICAgICAgICAgICAgd2lkdGggPSBpdGVtRm9udC53aWR0aChUZXh0UnVuKHRleHQpKTsKKyAgICAg
ICAgICAgIGJhc2VXaWR0aCA9IG1heChiYXNlV2lkdGgsIHdpZHRoKTsKKyAgICAgICAgfQorICAg
ICAgICAvLyBGSVhNRTogaHR0cDovL2IvMTIxMDQ4MSBXZSBzaG91bGQgZ2V0IHRoZSBwYWRkaW5n
IG9mIGluZGl2aWR1YWwgb3B0aW9uIGVsZW1lbnRzLgorICAgICAgICBwYWRkaW5nV2lkdGggPSBt
YXgocGFkZGluZ1dpZHRoLCAKKyAgICAgICAgICAgIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRp
bmdMZWZ0KCkgKyBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nUmlnaHQoKSk7CisKKyAgICAg
ICAgaWYgKG1fc2V0dGluZ3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveCAmJgorICAgICAgICAgICAg
d2lkdGggPiBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoKSB7Cisg
ICAgICAgICAgICAvLyBFbGxpcHNpcyB3aWxsIGJlIGFwcGVuZGVkIGF0IHRoZSBlbmQgb2YgdGhl
IHRydW5jYXRlZCBlbGVtZW50LgorICAgICAgICAgICAgbV9pdGVtc1tpXS0+ZWxsaXBzZXNXaWR0
aCA9IGl0ZW1Gb250LndpZHRoKFRleHRSdW4oa0VsbGlwc2VzKSk7CisgICAgICAgIH0KKyAgICB9
CisKKyAgICBpbnQgd2luZG93V2lkdGg7CisgICAgaW50IGNvbnRlbnRXaWR0aDsKKyAgICBpZiAo
bV9zZXR0aW5ncy5yZXN0cmljdFdpZHRoT2ZMaXN0Qm94KSB7CiAgICAgICAgIHdpbmRvd1dpZHRo
ID0gbV9iYXNlV2lkdGg7CiAgICAgICAgIGNvbnRlbnRXaWR0aCA9IG1fYmFzZVdpZHRoIC0gc2Ny
b2xsYmFyV2lkdGggLSBwYWRkaW5nV2lkdGg7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgbV9iYXNl
V2lkdGggPSBiYXNlV2lkdGg7CisgICAgICAgIHdpbmRvd1dpZHRoID0gYmFzZVdpZHRoICsgc2Ny
b2xsYmFyV2lkdGggKyBwYWRkaW5nV2lkdGg7CisgICAgICAgIGNvbnRlbnRXaWR0aCA9IGJhc2VX
aWR0aDsKKworICAgICAgICBpZiAod2luZG93V2lkdGggPCBtX2Jhc2VXaWR0aCkgeworICAgICAg
ICAgICAgd2luZG93V2lkdGggPSBtX2Jhc2VXaWR0aDsKKyAgICAgICAgICAgIGNvbnRlbnRXaWR0
aCA9IG1fYmFzZVdpZHRoIC0gc2Nyb2xsYmFyV2lkdGggLSBwYWRkaW5nV2lkdGg7CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICBtX2Jhc2VXaWR0aCA9IGJhc2VXaWR0aDsKKyAgICAgICAg
fQogICAgIH0KIAogICAgIHJlc2l6ZSh3aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0KTsKSW5kZXg6
IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0uaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmgJKHJldmlz
aW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MiwxMSArNTIsMTQgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogICAgICAgICB9OwogCiAgICAgICAgIFBvcHVwSXRlbShjb25zdCBTdHJpbmcmIGxhYmVsLCBU
eXBlIHR5cGUpCi0gICAgICAgICAgICA6IGxhYmVsKGxhYmVsKSwgdHlwZSh0eXBlKSwgeU9mZnNl
dCgwKSB7IH0KKyAgICAgICAgICAgIDogbGFiZWwobGFiZWwpLCB0eXBlKHR5cGUpLCB5T2Zmc2V0
KDApLCBlbGxpcHNlc1dpZHRoKDApIHsgfQogICAgICAgICBTdHJpbmcgbGFiZWw7CiAgICAgICAg
IFR5cGUgdHlwZTsKICAgICAgICAgaW50IHlPZmZzZXQ7ICAvLyB5IG9mZnNldCBvZiB0aGlzIGl0
ZW0sIHJlbGF0aXZlIHRvIHRoZSB0b3Agb2YgdGhlIHBvcHVwLgogICAgICAgICBib29sIGVuYWJs
ZWQ7CisgICAgICAgIC8vIGVsbGlwc2VzIHdpZHRoIGlmIHBvcGxpc3QgYm94IGlzIG5vdCBsb25n
IGVub3VnaCB0byBob2xkIHRoZQorICAgICAgICAvLyBjb21wbGV0ZWQgcG9wdXAgaXRlbSBhbmQg
ZWxsaXBzZXMgbmVlZCB0byBiZSBkcmF3bi4KKyAgICAgICAgaW50IGVsbGlwc2VzV2lkdGg7CiAg
ICAgfTsKIAogICAgIC8vIEZJWE1FOiBPdXIgRnJhbWVsZXNzU2Nyb2xsVmlldyBjbGFzc2VzIHNo
b3VsZCBwcm9iYWJseSBpbXBsZW1lbnQgSG9zdFdpbmRvdyEKQEAgLTg3LDYgKzkwLDExIEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgLy8gdGhlIHVzZXIgcHJlc3NlcyBkb3duL3VwIGFy
cm93IGtleXMgYW5kIHRoZSBsYXN0L2ZpcnN0IGl0ZW0gaXMKICAgICAgICAgLy8gc2VsZWN0ZWQu
CiAgICAgICAgIGJvb2wgbG9vcFNlbGVjdGlvbk5hdmlnYXRpb247CisKKyAgICAgICAgLy8gV2hl
dGVyIHJlc3RyaWN0IHRoZSB3aWR0aCBvZiB0aGUgUG9wdXBMaXN0Qm94IG9yIG5vdC4gV2UgcmVz
dHJpY3QKKyAgICAgICAgLy8gdGhlIHdpZHRoIGZvciBhdXRvY29tcGxldGUgcG9wdXAsIGJ1dCBu
b3QgZm9yIGNvbWJvLWJveGVzCisgICAgICAgIC8vICg8c2VsZWN0PiB0YWcpLgorICAgICAgICBi
b29sIHJlc3RyaWN0V2lkdGhPZkxpc3RCb3g7CiAgICAgfTsKIAogICAgIGNsYXNzIFBvcHVwQ29u
dGFpbmVyIDogcHVibGljIEZyYW1lbGVzc1Njcm9sbFZpZXcgewpJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNwcAkocmV2aXNpb24gNDY3ODUpCisr
KyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTMzNCwxMSArMzM0LDM1IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3VGV4
dChjb25zdCBGb24KIH0KICNlbmRpZgogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0JpZGlU
ZXh0KGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRmxvYXRQb2lu
dCYgcG9pbnQpCit2b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0JpZGlUZXh0V2l0aGluV2lkdGgo
Y29uc3QgRm9udCYgZm9udCwgY29uc3QgVGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdFBvaW50JiBw
b2ludCwgaW50IHdpZHRoKQoreworICAgIC8vIEZpcnN0LCBjYWxjdWxhdGUgdGhlIG51bWJlciBv
ZiBsb2dpY2FsIGNoYXJhY3RlcnMgaW4gdGhlIHRleHQgcnVuIHRoYXQgY2FuIGZpdCB3aXRoaW4g
dGhlIHdpZHRoLgorICAgIC8vIEZJWE1FOiBUaGUgY2FsY3VsYXRpb24gaXMgZG9uZSBjaGFyYWN0
ZXItYnktY2hhcmFjdGVyLgorICAgIC8vICAgICAgICBJdCBjb3VsZCBiZSBkb25lIGJ5IGdlbmVy
YXRpbmcgbG9naWNhbCBydW5zIGZyb20gdmlzdWFsIHJ1bnMgZmlyc3QgYW5kIGNvbXB1dGUgdGhl
IGRpc3BsYXkgd2lkdGggb2YgZWFjaCBsb2dpY2FsIHJ1bi4KKyAgICAvLyAgICAgICAgRG8gSSBu
ZWVkIHRvIGNoYW5nZSB0byB0aGF0IHRvIHNhdmUgcGVyZm9ybWFuY2U/CisgICAgaW50IGk7Cisg
ICAgaW50IHRvdGFsV2lkdGggPSAwOworICAgIFRleHRSdW4gdHJ1bmNhdGVkUnVuID0gcnVuOwor
ICAgIGZvciAoaSA9IDA7IGkgPCBydW4ubGVuZ3RoKCkgLSAxOyArK2kpIHsKKyAgICAgICAgdHJ1
bmNhdGVkUnVuLnNldFRleHQocnVuLmRhdGEoaSksIDEpOworICAgICAgICB0b3RhbFdpZHRoICs9
IGZvbnQuZmxvYXRXaWR0aCh0cnVuY2F0ZWRSdW4pOworICAgICAgICBpZiAoIHRvdGFsV2lkdGgg
PiB3aWR0aCkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyAgICB0cnVuY2F0ZWRSdW4uc2V0
VGV4dChydW4uY2hhcmFjdGVycygpLCBpIC0gMSk7CisgICAgZHJhd0JpZGlUZXh0KGZvbnQsIHRy
dW5jYXRlZFJ1biwgcG9pbnQsIC0xKTsKK30KKwordm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdC
aWRpVGV4dChjb25zdCBGb250JiBmb250LCBjb25zdCBUZXh0UnVuJiBydW4sIGNvbnN0IEZsb2F0
UG9pbnQmIHBvaW50LCBpbnQgd2lkdGgpCiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkK
ICAgICAgICAgcmV0dXJuOwogCisgICAgaWYgKHdpZHRoICE9IC0xICYmIGZvbnQuZmxvYXRXaWR0
aChydW4pID4gd2lkdGgpIHsKKyAgICAgICAgZHJhd0JpZGlUZXh0V2l0aGluV2lkdGgoZm9udCwg
cnVuLCBwb2ludCwgd2lkdGgpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgQmlkaVJl
c29sdmVyPFRleHRSdW5JdGVyYXRvciwgQmlkaUNoYXJhY3RlclJ1bj4gYmlkaVJlc29sdmVyOwog
ICAgIFdURjo6VW5pY29kZTo6RGlyZWN0aW9uIHBhcmFncmFwaERpcmVjdGlvbiA9IHJ1bi5sdHIo
KSA/IFdURjo6VW5pY29kZTo6TGVmdFRvUmlnaHQgOiBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0
OwogCkBAIC0zNTEsNyArMzc1LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4
dChjb25zdAogICAgICAgICByZXR1cm47CiAKICAgICBGbG9hdFBvaW50IGN1cnJQb2ludCA9IHBv
aW50OwotICAgIEJpZGlDaGFyYWN0ZXJSdW4qIGJpZGlSdW4gPSBiaWRpUmVzb2x2ZXIuZmlyc3RS
dW4oKTsKKyAgICBCaWRpQ2hhcmFjdGVyUnVuKiBiaWRpUnVuID0gYmlkaVJlc29sdmVyLmZpcnN0
UnVuKCk7ICAgIAogICAgIHdoaWxlIChiaWRpUnVuKSB7CiAKICAgICAgICAgVGV4dFJ1biBzdWJy
dW4gPSBydW47CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250
ZXh0LmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUwLDcgKzI1MCw4IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXRUZXh0RHJhd2luZ01vZGUoaW50KTsKIAogICAg
ICAgICB2b2lkIGRyYXdUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3QgSW50
UG9pbnQmLCBpbnQgZnJvbSA9IDAsIGludCB0byA9IC0xKTsKLSAgICAgICAgdm9pZCBkcmF3Qmlk
aVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRleHRSdW4mLCBjb25zdCBGbG9hdFBvaW50Jik7Cisg
ICAgICAgIC8vIGRyYXcgdGV4dCB3aXRoaW4gdGhlIHBpeGVsIHdpZHRoLiB3aWR0aCBlcXVhbHMg
dG8gLTEgbWVhbnMgbm8gcGl4ZWwgd2lkdGggbGltaXRhdGlvbi4KKyAgICAgICAgdm9pZCBkcmF3
QmlkaVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRleHRSdW4mLCBjb25zdCBGbG9hdFBvaW50Jiwg
aW50IHdpZHRoID0gLTEpOwogICAgICAgICB2b2lkIGRyYXdIaWdobGlnaHRGb3JUZXh0KGNvbnN0
IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3QgSW50UG9pbnQmLCBpbnQgaCwgY29uc3QgQ29s
b3ImIGJhY2tncm91bmRDb2xvciwgaW50IGZyb20gPSAwLCBpbnQgdG8gPSAtMSk7CiAKICAgICAg
ICAgRmxvYXRSZWN0IHJvdW5kVG9EZXZpY2VQaXhlbHMoY29uc3QgRmxvYXRSZWN0Jik7CkBAIC00
MDYsNiArNDA3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBpbnQgZm9jdXNSaW5n
T2Zmc2V0KCkgY29uc3Q7CiAgICAgICAgIGNvbnN0IFZlY3RvcjxJbnRSZWN0PiYgZm9jdXNSaW5n
UmVjdHMoKSBjb25zdDsKIAorICAgICAgICB2b2lkIGRyYXdCaWRpVGV4dFdpdGhpbldpZHRoKGNv
bnN0IEZvbnQmIGZvbnQsIGNvbnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRmxvYXRQb2ludCYgcG9p
bnQsIGludCB3aWR0aCk7CisKICAgICAgICAgc3RhdGljIEdyYXBoaWNzQ29udGV4dFByaXZhdGUq
IGNyZWF0ZUdyYXBoaWNzQ29udGV4dFByaXZhdGUoKTsKICAgICAgICAgc3RhdGljIHZvaWQgZGVz
dHJveUdyYXBoaWNzQ29udGV4dFByaXZhdGUoR3JhcGhpY3NDb250ZXh0UHJpdmF0ZSopOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34240</attachid>
            <date>2009-08-06 18:11:49 -0700</date>
            <delta_ts>2009-08-07 12:32:11 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v3</filename>
            <type>text/plain</type>
            <size>15985</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Njg3NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDktMDgtMDYgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSA8c2VsZWN0PiBhbmQgYXV0b2ZpbGwuIEl0CisgICAgICAgIDEuIGludHJvZHVjZXMgYSBu
ZXcgZmxhZyBpbiBXZWJDb3JlOjpQb3B1cENvbnRhaW5lclNldHRpbmdzIHRvCisgICAgICAgICAg
IGRpc3Rpbmd1aXNoIHdoZXRoZXIgdGhlIHdpZHRoIG9mIHRoZSBkcm9wLWRvd24gc2hvdWxkIGJl
IHJlc3RyaWN0ZWQKKyAgICAgICAgICAgb3Igbm90LgorICAgICAgICAgICBGb3IgYXV0b2ZpbGws
IHRoZSB3aWR0aCBvZiB0aGUgZHJvcC1kb3duIGlzIHJlc3RyaWN0ZWQgdG8KKyAgICAgICAgICAg
YmUgdGhlIHNhbWUgYXMgdGhhdCBvZiB0aGUgaW5wdXQgZmllbGQgKHRoZSBuZXcgZmxhZyBpcyBz
ZXQgaW4KKyAgICAgICAgICAgQ2hyb21pdW0ncyBvd24gY29kZSkuIEJ1dCB3aWR0aCBpcyBub3Qg
cmVzdHJpY3RlZCBmb3IgPHNlbGVjdD4uCisgICAgICAgIDIuIEZvciBhdXRvZmlsbCwgdXNlIGRy
b3AtZG93biBpdGVtJ3MgZGlyZWN0aW9uYWxpdHkgdG8gZGlzcGxheSBkcm9wLWRvd24gaXRlbXMu
CisgICAgICAgICAgIFByZXZpb3VzbHksIGRyb3AtZG93biBpdGVtIGlzIGRpc3BsYXllZCBpbiB0
aGUgaXRzIGZpcnN0IHN0cm9uZworICAgICAgICAgICBkaXJlY3Rpb25hbCBjaGFyYWN0ZXIncyBk
aXJlY3Rpb25hbGl0eS4KKyAgICAgICAgICAgKGRyb3AtZG93biBpdGVtJ3MgZGlyZWN0aW9uYWxp
dHkgaXMgc2V0IGluIENocm9taXVtJ3Mgb3duIGNvZGUuCisgICAgICAgICAgIEl0IGlzIHNldCB0
aGUgc2FtZSBhcyB0aGUgZGlyZWN0aW9uYWxpdHkgb2YgdGhlIGVsZW1lbnQuIAorICAgICAgICAg
ICBGb3IgYXV0b2ZpbGwsIGl0IGlzIHRoZSBzYW1lIGRpcmVjdGlvbmFsaXR5IGFzIHRoYXQgb2Yg
dGhlIGlucHV0IGZpZWxkLikKKworCisgICAgICAgIFNpbmNlIHRoZSBwYXRjaCBvbmx5IGFmZmVj
dHMgdGhlIGNocm9taXVtIGNsaWVudCwgbm90IHdlYmNvcmUgcGFydCBvcgorICAgICAgICBvdGhl
ciBjbGllbnRzLiBObyBhdXRvbWF0aWMgdGVzdHMgaXMgcG9zc2libGUuCisKKyAgICAgICAgKiBt
YW51YWwtdGVzdHMvYXV0b2ZpbGwtcG9wdXAtd2lkdGgtYW5kLWl0ZW0tZGlyZWN0aW9uLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Oik6CisgICAgICAgIChXZWJDb3JlOjpQb3B1cExpc3RCb3g6
OnBhaW50Um93KTogSWYgYW4gaXRlbSBpcyBsb25nZXIgdG8gZml0IGluIGEgbGlzdCBib3gsIGRy
YXcgcGFydCBvZiB0aGUgdGV4dCBhbmQgYXBwZW5kIGVsbGlwc2VzLgorICAgICAgICAoV2ViQ29y
ZTo6UG9wdXBMaXN0Qm94OjpsYXlvdXQpOiBSZXN0cmljdCB3aWR0aCBvZiBsaXN0IGJveCBpZiBh
cHBsaWNhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVt
Lmg6IEFkZCBhIG5ldyBmbGFnIGluIFBvcHVwQ29udGFpbmVyU2V0dGluZyB0byBkaXN0aW5ndWlz
aCB3aGV0aGVyIHRvIHJlc3RyaWN0IHdpZHRoIG9mIGxpc3QgYm94LgorICAgICAgICAoV2ViQ29y
ZTo6UG9wdXBJdGVtOjpQb3B1cEl0ZW0pOiBBZGQgZWxsaXBzZXNXaWR0aCBpZiBhbiBpdGVtIGNh
biBub3QgZml0IGluIGl0cyBpbnB1dCBmaWVsZCdzIHdpZHRoIGFuZCBuZWVkIHRydW5jYXRpb24u
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6ZHJhd0JpZGlUZXh0V2l0aGluV2lkdGgpOiBE
cmF3IGJpZGkgdGV4dAord2l0aGluIHdpZHRoLgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0OjpkcmF3QmlkaVRleHQpOiAKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFw
aGljc0NvbnRleHQuaDogQWRkIGFuIGRlZmF1bHQgcGFyYW1ldGVyIHRvIGRyYXdCaWRpVGV4dCwg
YW5kIGFkZCBkcmF3QmlkaVRleHRXaXRoaW5XaWR0aC4KKwogMjAwOS0wOC0wNSAgU2ltb24gRnJh
c2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KSW5kZXg6IFdlYkNvcmUvbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRo
LWFuZC1pdGVtLWRpcmVjdGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbWFudWFsLXRl
c3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5odG1sCShyZXZpc2lv
biAwKQorKysgV2ViQ29yZS9tYW51YWwtdGVzdHMvYXV0b2ZpbGwtcG9wdXAtd2lkdGgtYW5kLWl0
ZW0tZGlyZWN0aW9uLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcgQEAKK++7vzxodG1s
PgorPGhlYWQ+Cis8TUVUQSBIVFRQLUVRVUlWPSJDT05URU5ULVRZUEUiIENPTlRFTlQ9InRleHQv
aHRtbDsgY2hhcnNldD1VVEYtOCI+Cis8dGl0bGU+CitUZXN0IHRoZSBwb3B1cCBsaXN0IGJveCdz
IHdpZHRoIGFuZCBpdHMgaXRlbXMnIGRpc3BsYXkgZGlyZWN0aW9uYWxpdHkKKzwvdGl0bGU+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxwPgorQXV0b2ZpbGwgcG9wdXAgbGlzdCBib3ggc2hvdWxkIGhhdmUg
dGhlIHNhbWUgd2lkdGggYXMgaXRzIGlucHV0IGZpZWxkJ3Mgd2lkdGguCitJZiB0aGUgc3VibWl0
dGVkIGlucHV0IHRleHQgaXMgbG9uZ2VyLCBpdCB3aWxsIGJlIHRydW5jYXRlZCB0byBmaXQgaW4g
dGhlIAoraW5wdXQgZmllbGQncyB3aWR0aAorPHA+IFRyeSB0eXBlIHNvbWUgbG9uZyB0ZXh0IGlu
IHRoZSAiTGFzdCBuYW1lIiBpbnB1dCBib3gsCisgICBTYXkgImFiY2QgYWJjZCBhYmNkIGFiY2Qg
YWJjZCBhYmNkIi4KK3RoZW4gY2xpY2sgIlN1Ym1pdCIuIE9wZW4gdGhlIGZpbGUgYWdhaW4sIGFu
ZCB0eXBlIHRoZSBmaXJzdCBsZXR0ZXIgImEiLAordGhlIGZvcm0gYXV0b2ZpbGwgcG9wLXVwIHNo
b3VsZCBzaG93IHVwIG5vdyB3aXRoIHRoZSB3aWR0aCB0aGUgc2FtZSBhcwordGhlIHdpZHRoIG9m
IHRoZSBpbnB1dCBmaWVsZCwgYW5kIHRoZSB0ZXh0ICJhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2Qg
YWJjZCIgZ290Cit0cnVuY2F0ZWQgdG8gZml0IGluLgorPHA+IFRyeSB0eXBlIHRoZSBmb2xsb3dp
bmcgdGV4dCBpbnRvIHRoZSAiRmlyc3QgbmFtZSIgYW5kICJMYXN0IG5hbWUiLgorPHVsPgorPGxp
PmFiY2QgZWZnCis8bGk+16nXqdep16nXqdepINeg16DXoNeg16DXoCDXkdeR15HXkdeR15HXkdeR
15EKKzxsaT5hYmMg15DXkNeQIGRlZmdoaWprbG1ub3BxCis8bGk+15DXkNeQ15DXkNeQ15DXkNeQ
15AgIGFiY2RlZmdoaWprbG1uINeR15HXkdeR15HXkdeRCis8bGk+aGkhCis8bGk+15DXkCEKKzwv
dWw+CitUaGV5IHNob3VsZCBiZSBkaXNwbGF5ZWQgYXMgUlRMIGluIHRoZSBwb3B1cCBvZiAiRmly
c3QgbmFtZSIsIAorYW5kIHNob3VsZCBiZSBkaXNwbGF5ZWQgYXMgTFRSIGluIHRoZSBwb3B1cCBv
ZiB0aGUgIkxhc3QgbmFtZSIuCis8YnI+Cis8Zm9ybSBhY3Rpb249ImZvcm1fYWN0aW9uLmFzcCIg
bWV0aG9kPSJnZXQiPgorICBGaXJzdCBuYW1lOiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZm5h
bWUiIGRpcj0icnRsIi8+PGJyIC8+CisgIExhc3QgbmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5h
bWU9ImxuYW1lIiAvPjxiciAvPgorICA8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iU3VibWl0
IiAvPgorPC9mb3JtPgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9j
aHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAJKHJldmlzaW9uIDQ2Nzg1KQorKysg
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTY4LDYgKzY4LDcgQEAgc3RhdGljIGNvbnN0IGludCBrTWF4VmlzaWJsZVJvd3Mg
PSAyMDsKIHN0YXRpYyBjb25zdCBpbnQga01heEhlaWdodCA9IDUwMDsKIHN0YXRpYyBjb25zdCBp
bnQga0JvcmRlclNpemUgPSAxOwogc3RhdGljIGNvbnN0IFRpbWVTdGFtcCBrVHlwZUFoZWFkVGlt
ZW91dE1zID0gMTAwMDsKK3N0YXRpYyBjb25zdCBTdHJpbmcga0VsbGlwc2VzID0gIi4uLiI7CiAK
IC8vIFRoZSBzZXR0aW5ncyB1c2VkIGZvciB0aGUgZHJvcCBkb3duIG1lbnUuCiAvLyBUaGlzIGlz
IHRoZSBkZWxlZ2F0ZSB1c2VkIGlmIG5vbmUgaXMgcHJvdmlkZWQuCkBAIC03NSw3ICs3Niw4IEBA
IHN0YXRpYyBjb25zdCBQb3B1cENvbnRhaW5lclNldHRpbmdzIGRyb3AKICAgICB0cnVlLCAvLyBm
b2N1c09uU2hvdwogICAgIHRydWUsIC8vIHNldFRleHRPbkluZGV4Q2hhbmdlCiAgICAgdHJ1ZSwg
Ly8gYWNjZXB0T25BYmFuZG9uCi0gICAgZmFsc2UgLy8gbG9vcFNlbGVjdGlvbk5hdmlnYXRpb24K
KyAgICBmYWxzZSwgLy8gbG9vcFNlbGVjdGlvbk5hdmlnYXRpb24KKyAgICBmYWxzZSAgLy8gcmVz
dHJpY3RXaWR0aE9mTGlzdEJveAogfTsKIAogLy8gVGhpcyBjbGFzcyB1c2VzIFdlYkNvcmUgY29k
ZSB0byBwYWludCBhbmQgaGFuZGxlIGV2ZW50cyBmb3IgYSBkcm9wLWRvd24gbGlzdApAQCAtODI0
LDcgKzgyNiwyNSBAQCB2b2lkIFBvcHVwTGlzdEJveDo6cGFpbnRSb3coR3JhcGhpY3NDb250CiAg
ICAgdW5zaWduZWQgbGVuZ3RoID0gaXRlbVRleHQubGVuZ3RoKCk7CiAgICAgY29uc3QgVUNoYXIq
IHN0ciA9IGl0ZW1UZXh0LmNoYXJhY3RlcnMoKTsKIAotICAgIFRleHRSdW4gdGV4dFJ1bihzdHIs
IGxlbmd0aCwgZmFsc2UsIDAsIDAsIGl0ZW1UZXh0LmRlZmF1bHRXcml0aW5nRGlyZWN0aW9uKCkg
PT0gV1RGOjpVbmljb2RlOjpSaWdodFRvTGVmdCk7CisgICAgLy8gV2UgY291bGQgZWl0aGVyIGRp
c3BsYXkgdGhlIGl0ZW1zIGluIHRoZSBkcm9wLWRvd24gdXNpbmcgaXRzIGlucHV0IGZpZWxkJ3MK
KyAgICAvLyBkaXJlY3Rpb25hbGl0eSAoZm9yIGF1dG9maWxsKSBvciBpdHMgc2VsZWN0IGVsZW1l
bnQgZGlyZWN0aW9uYWxpdHkgKGZvciA8c2VsZWN0PiksCisgICAgLy8gT3Igd2UgY291bGQgZGlz
cGxheSB0aGUgaXRlbXMgaW4gdGhlIGRyb3AtZG93biB1c2luZyBoZXVyaXN0aWNzOiBzdWNoIGFz
CisgICAgLy8gaW4gaXRzIGZpcnN0IHN0cm9uZyBkaXJlY3Rpb25hbGl0eSBjaGFyYWN0ZXIncyBk
aXJlY3Rpb24uCisgICAgLy8gUGxlYXNlIHJlZmVyIHRvIHRoZSBkaXNjdXNzaW9uIChlc3BlY2lh
bGx5IGNvbW1lbnQgIzcgYW5kICMxMCkgaW4KKyAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4ODkgZm9yIGRldGFpbC4KKyAgICAvLworICAgIC8vIEZvciBh
dXRvY29tcGxldGUsIHdlIGNob29zZSB0byB1c2UgdGhlIGRpcmVjdGlvbiBvZiB0aGUgaW5wdXQg
ZmllbGQKKyAgICAvLyBhcyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBwb3B1cCBpdGVtcywgaW5zdGVh
ZCBvZiBkZXRlY3RpbmcgdGhlIHBvcHVwIGl0ZW0ncyBkaXJlY3Rpb24gYmFzZWQKKyAgICAvLyBv
biBpdHMgZmlyc3Qgc3Ryb25nLWRpcmVjdGlvbmFsIGNoYXJhY3Rlci4gVGhlIG1haW4gcmVhc29u
IGlzIHRvIGtlZXAgdGhlIGRpc3BsYXkgb2YgaXRlbXMKKyAgICAvLyBpbiBkcm9wLWRvd24gdGhl
IHNhbWUgYXMgdGhlIGl0ZW1zIGluIHRoZSBpbnB1dCBmaWVsZC4KKyAgICAvLworICAgIC8vIEZv
ciA8c2VsZWN0Piwgd2Ugc3RpbGwgdXNlIGhldXJpc3RpY3MgdG8gZGV0ZXJtaW5lIGl0cyBwb3B1
cCBpdGVtJ3MgZGlyZWN0aW9uLgorICAgIGJvb2wgcnRsOworICAgIGlmIChtX3NldHRpbmdzLnJl
c3RyaWN0V2lkdGhPZkxpc3RCb3gpCisgICAgICAgIHJ0bCA9IHN0eWxlLnRleHREaXJlY3Rpb24o
KSA9PSBSVEw7ICAvLyBhdXRvZmlsbAorICAgIGVsc2UKKyAgICAgICAgcnRsID0gaXRlbVRleHQu
ZGVmYXVsdFdyaXRpbmdEaXJlY3Rpb24oKSA9PSBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0OyAg
Ly8gPHNlbGVjdD4KKyAgICBUZXh0UnVuIHRleHRSdW4oc3RyLCBsZW5ndGgsIGZhbHNlLCAwLCAw
LCBydGwpOwogCiAgICAgLy8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0
aGUgcGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbgogICAgIC8vIGVsZW1lbnRzLiAgVGhpcyBw
cm9iYWJseSBpbXBsaWVzIGNoYW5nZXMgdG8gUG9wdXBNZW51Q2xpZW50LgpAQCAtODM0LDcgKzg1
NCwyOCBAQCB2b2lkIFBvcHVwTGlzdEJveDo6cGFpbnRSb3coR3JhcGhpY3NDb250CiAgICAgICAg
IEZvbnQgaXRlbUZvbnQgPSBnZXRSb3dGb250KHJvd0luZGV4KTsKICAgICAgICAgaW50IHRleHRY
ID0gbWF4KDAsIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdMZWZ0KCkgLSBtX3BvcHVwQ2xp
ZW50LT5jbGllbnRJbnNldExlZnQoKSk7CiAgICAgICAgIGludCB0ZXh0WSA9IHJvd1JlY3QueSgp
ICsgaXRlbUZvbnQuYXNjZW50KCkgKyAocm93UmVjdC5oZWlnaHQoKSAtIGl0ZW1Gb250LmhlaWdo
dCgpKSAvIDI7Ci0gICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRleHRSdW4sIElu
dFBvaW50KHRleHRYLCB0ZXh0WSkpOworICAgICAgICBpbnQgZWxsaXBzZXNXaWR0aCA9IG1faXRl
bXNbcm93SW5kZXhdLT5lbGxpcHNlc1dpZHRoOworICAgICAgICBpZiAoIWVsbGlwc2VzV2lkdGgp
IHsKKyAgICAgICAgICAgIC8vIGxpc3QgYm94IGlzIGxhcmdlIGVub3VnaCB0byBob2xkIHRoZSBj
b21wbGV0ZWQgaXRlbS4KKyAgICAgICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRl
eHRSdW4sIEludFBvaW50KHRleHRYLCB0ZXh0WSkpOworICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgLy8gV2UgbmVlZCB0byByZXNlcnZlIHNwYWNlIGZvciBlbGxpcHNlcyBhcHBlbmRpbmcg
YXQgdGhlIHRydWNhdGVkIGl0ZW0gdGV4dC4KKyAgICAgICAgICAgIC8vIEZpcnN0LCB3ZSBvbmx5
IGRyYXcgcGFydCBvZiBpdGVtIHRleHQgd2hpY2ggY2FuIGZpdCBpbiB0aGUgcGl4ZWwgd2lkdGgK
KyAgICAgICAgICAgIC8vIGV4Y2x1ZGluZyB0aGUgZWxsaXBzZXNXaWR0aC4gT3RoZXJ3aXNlLCB0
aGVyZSB3aWxsIGJlIDIgaXNzdWVzOgorICAgICAgICAgICAgLy8gMS4gbm8gd2F5IHRvIGhvbm9y
IGNoYXJhY3RlciBib3VuZGFyeSBvZiB0aGUgdGV4dCB3aGVuIGRyYXdpbmcgZWxsaXBzZXMuCisg
ICAgICAgICAgICAvLyAyLiB0aGUgdHJ1bmNhdGVkIHRleHQgb2YgUlRMIHRleHQgd2lsbCBiZSB0
aGUgZW5kaW5nIHBhcnQgb2YgdGhlIHRleHQsCisgICAgICAgICAgICAvLyAgICBpbnN0ZWFkIG9m
IHRoZSBiZWdpbm5pbmcgcGFydC4KKyAgICAgICAgICAgIEludFBvaW50IHN0YXJ0UG9pbnQgPSBJ
bnRQb2ludCh0ZXh0WCwgdGV4dFkpOworICAgICAgICAgICAgaWYgKHJ0bCkgIC8vIG1vdmUgcmln
aHQgdG8gcmVzZXJ2ZSBzcGFjZXMgZm9yIGVsbGlwc2VzIGF0IHRoZSBsZWZ0IG9mIHRoZSB0ZXh0
CisgICAgICAgICAgICAgICAgc3RhcnRQb2ludC5tb3ZlKGVsbGlwc2VzV2lkdGgsIDApOworICAg
ICAgICAgICAgZ2MtPmRyYXdCaWRpVGV4dChpdGVtRm9udCwgdGV4dFJ1biwgc3RhcnRQb2ludCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93UmVjdC53aWR0aCgpIC0gdGV4dFggLSBl
bGxpcHNlc1dpZHRoKTsKKyAgICAgICAgICAgIC8vIFRoZW4sIGRyYXcgZWxsaXBzZXMuCisgICAg
ICAgICAgICBpZiAoIXJ0bCkKKyAgICAgICAgICAgICAgICB0ZXh0WCA9IHJvd1JlY3QueCgpICsg
cm93UmVjdC53aWR0aCgpIC0gZWxsaXBzZXNXaWR0aDsKKyAgICAgICAgICAgIHRleHRZID0gcm93
UmVjdC55KCkgKyBpdGVtRm9udC5hc2NlbnQoKTsKKyAgICAgICAgICAgIGdjLT5kcmF3VGV4dChp
dGVtRm9udCwgVGV4dFJ1bihrRWxsaXBzZXMpLCBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpKTsKKyAg
ICAgICAgfQogICAgIH0KIH0KIApAQCAtMTA3MiwyOCArMTExMyw3IEBAIHZvaWQgUG9wdXBMaXN0
Qm94Ojp1cGRhdGVGcm9tRWxlbWVudCgpCiAKIHZvaWQgUG9wdXBMaXN0Qm94OjpsYXlvdXQoKQog
ewotICAgIC8vIFNpemUgb3VyIGNoaWxkIGl0ZW1zLgotICAgIGludCBiYXNlV2lkdGggPSAwOwot
ICAgIGludCBwYWRkaW5nV2lkdGggPSAwOwotICAgIGludCB5ID0gMDsKLSAgICBmb3IgKGludCBp
ID0gMDsgaSA8IG51bUl0ZW1zKCk7ICsraSkgewotICAgICAgICBGb250IGl0ZW1Gb250ID0gZ2V0
Um93Rm9udChpKTsKLQotICAgICAgICAvLyBQbGFjZSB0aGUgaXRlbSB2ZXJ0aWNhbGx5LgotICAg
ICAgICBtX2l0ZW1zW2ldLT55T2Zmc2V0ID0geTsKLSAgICAgICAgeSArPSBpdGVtRm9udC5oZWln
aHQoKTsKLQotICAgICAgICAvLyBFbnN1cmUgdGhlIHBvcHVwIGlzIHdpZGUgZW5vdWdoIHRvIGZp
dCB0aGlzIGl0ZW0uCi0gICAgICAgIFN0cmluZyB0ZXh0ID0gbV9wb3B1cENsaWVudC0+aXRlbVRl
eHQoaSk7Ci0gICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpIHsKLSAgICAgICAgICAgIGludCB3
aWR0aCA9IGl0ZW1Gb250LndpZHRoKFRleHRSdW4odGV4dCkpOwotICAgICAgICAgICAgYmFzZVdp
ZHRoID0gbWF4KGJhc2VXaWR0aCwgd2lkdGgpOwotICAgICAgICB9Ci0gICAgICAgIC8vIEZJWE1F
OiBodHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcgb2YgaW5kaXZpZHVh
bCBvcHRpb24gZWxlbWVudHMuCi0gICAgICAgIHBhZGRpbmdXaWR0aCA9IG1heChwYWRkaW5nV2lk
dGgsIAotICAgICAgICAgICAgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ0xlZnQoKSArIG1f
cG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdSaWdodCgpKTsKLSAgICB9Ci0KKyAgICAvLyBDYWxj
dWxhdGUgc2Nyb2xsIGJhciB3aWR0aC4KICAgICBpbnQgd2luZG93SGVpZ2h0ID0gMDsKIAogI2lm
IFBMQVRGT1JNKERBUldJTikKQEAgLTExMjQsMTQgKzExNDQsNDkgQEAgdm9pZCBQb3B1cExpc3RC
b3g6OmxheW91dCgpCiAgICAgaWYgKG1fdmlzaWJsZVJvd3MgPCBudW1JdGVtcygpKQogICAgICAg
ICBzY3JvbGxiYXJXaWR0aCA9IFNjcm9sbGJhclRoZW1lOjpuYXRpdmVUaGVtZSgpLT5zY3JvbGxi
YXJUaGlja25lc3MoKTsKIAotICAgIGludCB3aW5kb3dXaWR0aCA9IGJhc2VXaWR0aCArIHNjcm9s
bGJhcldpZHRoICsgcGFkZGluZ1dpZHRoOwotICAgIGludCBjb250ZW50V2lkdGggPSBiYXNlV2lk
dGg7CisgICAgLy8gU2l6ZSBvdXIgY2hpbGQgaXRlbXMuCisgICAgaW50IGJhc2VXaWR0aCA9IDA7
CisgICAgaW50IHBhZGRpbmdXaWR0aCA9IDA7CisgICAgaW50IHkgPSAwOworICAgIGZvciAoaW50
IGkgPSAwOyBpIDwgbnVtSXRlbXMoKTsgKytpKSB7CisgICAgICAgIEZvbnQgaXRlbUZvbnQgPSBn
ZXRSb3dGb250KGkpOwogCi0gICAgaWYgKHdpbmRvd1dpZHRoIDwgbV9iYXNlV2lkdGgpIHsKKyAg
ICAgICAgLy8gUGxhY2UgdGhlIGl0ZW0gdmVydGljYWxseS4KKyAgICAgICAgbV9pdGVtc1tpXS0+
eU9mZnNldCA9IHk7CisgICAgICAgIHkgKz0gaXRlbUZvbnQuaGVpZ2h0KCk7CisKKyAgICAgICAg
Ly8gRW5zdXJlIHRoZSBwb3B1cCBpcyB3aWRlIGVub3VnaCB0byBmaXQgdGhpcyBpdGVtLgorICAg
ICAgICBTdHJpbmcgdGV4dCA9IG1fcG9wdXBDbGllbnQtPml0ZW1UZXh0KGkpOworICAgICAgICBp
bnQgd2lkdGggPSAwOworICAgICAgICBpZiAoIXRleHQuaXNFbXB0eSgpKSB7CisgICAgICAgICAg
ICB3aWR0aCA9IGl0ZW1Gb250LndpZHRoKFRleHRSdW4odGV4dCkpOworICAgICAgICAgICAgYmFz
ZVdpZHRoID0gbWF4KGJhc2VXaWR0aCwgd2lkdGgpOworICAgICAgICB9CisgICAgICAgIC8vIEZJ
WE1FOiBodHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcgb2YgaW5kaXZp
ZHVhbCBvcHRpb24gZWxlbWVudHMuCisgICAgICAgIHBhZGRpbmdXaWR0aCA9IG1heChwYWRkaW5n
V2lkdGgsCisgICAgICAgICAgICBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nTGVmdCgpICsg
bV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ1JpZ2h0KCkpOworCisgICAgICAgIGlmIChtX3Nl
dHRpbmdzLnJlc3RyaWN0V2lkdGhPZkxpc3RCb3gKKyAgICAgICAgICAgICYmIHdpZHRoID4gbV9i
YXNlV2lkdGggLSBzY3JvbGxiYXJXaWR0aCAtIHBhZGRpbmdXaWR0aCkgeworICAgICAgICAgICAg
Ly8gRWxsaXBzaXMgd2lsbCBiZSBhcHBlbmRlZCBhdCB0aGUgZW5kIG9mIHRoZSB0cnVuY2F0ZWQg
ZWxlbWVudC4KKyAgICAgICAgICAgIG1faXRlbXNbaV0tPmVsbGlwc2VzV2lkdGggPSBpdGVtRm9u
dC53aWR0aChUZXh0UnVuKGtFbGxpcHNlcykpOworICAgICAgICB9CisgICAgfQorCisgICAgaW50
IHdpbmRvd1dpZHRoOworICAgIGludCBjb250ZW50V2lkdGg7CisgICAgaWYgKG1fc2V0dGluZ3Mu
cmVzdHJpY3RXaWR0aE9mTGlzdEJveCkgewogICAgICAgICB3aW5kb3dXaWR0aCA9IG1fYmFzZVdp
ZHRoOwogICAgICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRo
IC0gcGFkZGluZ1dpZHRoOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fYmFzZVdpZHRoID0gYmFz
ZVdpZHRoOworICAgICAgICB3aW5kb3dXaWR0aCA9IGJhc2VXaWR0aCArIHNjcm9sbGJhcldpZHRo
ICsgcGFkZGluZ1dpZHRoOworICAgICAgICBjb250ZW50V2lkdGggPSBiYXNlV2lkdGg7CisKKyAg
ICAgICAgaWYgKHdpbmRvd1dpZHRoIDwgbV9iYXNlV2lkdGgpIHsKKyAgICAgICAgICAgIHdpbmRv
d1dpZHRoID0gbV9iYXNlV2lkdGg7CisgICAgICAgICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VX
aWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoOworICAgICAgICB9IGVsc2UKKyAg
ICAgICAgICAgIG1fYmFzZVdpZHRoID0gYmFzZVdpZHRoOwogICAgIH0KIAogICAgIHJlc2l6ZSh3
aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0KTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21p
dW0vUG9wdXBNZW51Q2hyb21pdW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2No
cm9taXVtL1BvcHVwTWVudUNocm9taXVtLmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9w
bGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC01
MiwxMSArNTIsMTQgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB9OwogCiAgICAgICAg
IFBvcHVwSXRlbShjb25zdCBTdHJpbmcmIGxhYmVsLCBUeXBlIHR5cGUpCi0gICAgICAgICAgICA6
IGxhYmVsKGxhYmVsKSwgdHlwZSh0eXBlKSwgeU9mZnNldCgwKSB7IH0KKyAgICAgICAgICAgIDog
bGFiZWwobGFiZWwpLCB0eXBlKHR5cGUpLCB5T2Zmc2V0KDApLCBlbGxpcHNlc1dpZHRoKDApIHsg
fQogICAgICAgICBTdHJpbmcgbGFiZWw7CiAgICAgICAgIFR5cGUgdHlwZTsKICAgICAgICAgaW50
IHlPZmZzZXQ7ICAvLyB5IG9mZnNldCBvZiB0aGlzIGl0ZW0sIHJlbGF0aXZlIHRvIHRoZSB0b3Ag
b2YgdGhlIHBvcHVwLgogICAgICAgICBib29sIGVuYWJsZWQ7CisgICAgICAgIC8vIGVsbGlwc2Vz
IHdpZHRoIGlmIHBvcGxpc3QgYm94IGlzIG5vdCBsb25nIGVub3VnaCB0byBob2xkIHRoZQorICAg
ICAgICAvLyBjb21wbGV0ZWQgcG9wdXAgaXRlbSBhbmQgZWxsaXBzZXMgbmVlZCB0byBiZSBkcmF3
bi4KKyAgICAgICAgaW50IGVsbGlwc2VzV2lkdGg7CiAgICAgfTsKIAogICAgIC8vIEZJWE1FOiBP
dXIgRnJhbWVsZXNzU2Nyb2xsVmlldyBjbGFzc2VzIHNob3VsZCBwcm9iYWJseSBpbXBsZW1lbnQg
SG9zdFdpbmRvdyEKQEAgLTg3LDYgKzkwLDExIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgLy8gdGhlIHVzZXIgcHJlc3NlcyBkb3duL3VwIGFycm93IGtleXMgYW5kIHRoZSBsYXN0L2Zp
cnN0IGl0ZW0gaXMKICAgICAgICAgLy8gc2VsZWN0ZWQuCiAgICAgICAgIGJvb2wgbG9vcFNlbGVj
dGlvbk5hdmlnYXRpb247CisKKyAgICAgICAgLy8gV2hldGVyIHJlc3RyaWN0IHRoZSB3aWR0aCBv
ZiB0aGUgUG9wdXBMaXN0Qm94IG9yIG5vdC4gV2UgcmVzdHJpY3QKKyAgICAgICAgLy8gdGhlIHdp
ZHRoIGZvciBhdXRvY29tcGxldGUgcG9wdXAsIGJ1dCBub3QgZm9yIGNvbWJvLWJveGVzCisgICAg
ICAgIC8vICg8c2VsZWN0PiB0YWcpLgorICAgICAgICBib29sIHJlc3RyaWN0V2lkdGhPZkxpc3RC
b3g7CiAgICAgfTsKIAogICAgIGNsYXNzIFBvcHVwQ29udGFpbmVyIDogcHVibGljIEZyYW1lbGVz
c1Njcm9sbFZpZXcgewpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0Nv
bnRleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0LmNwcAkocmV2aXNpb24gNDY3ODUpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0dyYXBoaWNzQ29udGV4dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMzNCwxMSArMzM0LDM1
IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3VGV4dChjb25zdCBGb24KIH0KICNlbmRpZgog
Ci12b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0JpZGlUZXh0KGNvbnN0IEZvbnQmIGZvbnQsIGNv
bnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQpCit2b2lkIEdyYXBoaWNz
Q29udGV4dDo6ZHJhd0JpZGlUZXh0V2l0aGluV2lkdGgoY29uc3QgRm9udCYgZm9udCwgY29uc3Qg
VGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdFBvaW50JiBwb2ludCwgaW50IHdpZHRoKQoreworICAg
IC8vIEZpcnN0LCBjYWxjdWxhdGUgdGhlIG51bWJlciBvZiBsb2dpY2FsIGNoYXJhY3RlcnMgaW4g
dGhlIHRleHQgcnVuIHRoYXQgY2FuIGZpdCB3aXRoaW4gdGhlIHdpZHRoLgorICAgIC8vIEZJWE1F
OiBUaGUgY2FsY3VsYXRpb24gaXMgZG9uZSBjaGFyYWN0ZXItYnktY2hhcmFjdGVyLgorICAgIC8v
ICAgICAgICBJdCBjb3VsZCBiZSBkb25lIGJ5IGdlbmVyYXRpbmcgbG9naWNhbCBydW5zIGZyb20g
dmlzdWFsIHJ1bnMgZmlyc3QgYW5kIGNvbXB1dGUgdGhlIGRpc3BsYXkgd2lkdGggb2YgZWFjaCBs
b2dpY2FsIHJ1bi4KKyAgICAvLyAgICAgICAgRG8gSSBuZWVkIHRvIGNoYW5nZSB0byB0aGF0IHRv
IHNhdmUgcGVyZm9ybWFuY2U/CisgICAgaW50IGk7CisgICAgaW50IHRvdGFsV2lkdGggPSAwOwor
ICAgIFRleHRSdW4gdHJ1bmNhdGVkUnVuID0gcnVuOworICAgIGZvciAoaSA9IDA7IGkgPCBydW4u
bGVuZ3RoKCkgLSAxOyArK2kpIHsKKyAgICAgICAgdHJ1bmNhdGVkUnVuLnNldFRleHQocnVuLmRh
dGEoaSksIDEpOworICAgICAgICB0b3RhbFdpZHRoICs9IGZvbnQuZmxvYXRXaWR0aCh0cnVuY2F0
ZWRSdW4pOworICAgICAgICBpZiAoIHRvdGFsV2lkdGggPiB3aWR0aCkKKyAgICAgICAgICAgIGJy
ZWFrOworICAgIH0KKyAgICB0cnVuY2F0ZWRSdW4uc2V0VGV4dChydW4uY2hhcmFjdGVycygpLCBp
IC0gMSk7CisgICAgZHJhd0JpZGlUZXh0KGZvbnQsIHRydW5jYXRlZFJ1biwgcG9pbnQsIC0xKTsK
K30KKwordm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4dChjb25zdCBGb250JiBmb250
LCBjb25zdCBUZXh0UnVuJiBydW4sIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBpbnQgd2lkdGgp
CiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAg
aWYgKHdpZHRoICE9IC0xICYmIGZvbnQuZmxvYXRXaWR0aChydW4pID4gd2lkdGgpIHsKKyAgICAg
ICAgZHJhd0JpZGlUZXh0V2l0aGluV2lkdGgoZm9udCwgcnVuLCBwb2ludCwgd2lkdGgpOworICAg
ICAgICByZXR1cm47CisgICAgfQorCiAgICAgQmlkaVJlc29sdmVyPFRleHRSdW5JdGVyYXRvciwg
QmlkaUNoYXJhY3RlclJ1bj4gYmlkaVJlc29sdmVyOwogICAgIFdURjo6VW5pY29kZTo6RGlyZWN0
aW9uIHBhcmFncmFwaERpcmVjdGlvbiA9IHJ1bi5sdHIoKSA/IFdURjo6VW5pY29kZTo6TGVmdFRv
UmlnaHQgOiBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0OwogCkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAkod29ya2luZyBjb3B5KQpA
QCAtMjUwLDcgKzI1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXRU
ZXh0RHJhd2luZ01vZGUoaW50KTsKIAogICAgICAgICB2b2lkIGRyYXdUZXh0KGNvbnN0IEZvbnQm
LCBjb25zdCBUZXh0UnVuJiwgY29uc3QgSW50UG9pbnQmLCBpbnQgZnJvbSA9IDAsIGludCB0byA9
IC0xKTsKLSAgICAgICAgdm9pZCBkcmF3QmlkaVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRleHRS
dW4mLCBjb25zdCBGbG9hdFBvaW50Jik7CisgICAgICAgIC8vIGRyYXcgdGV4dCB3aXRoaW4gdGhl
IHBpeGVsIHdpZHRoLiB3aWR0aCBlcXVhbHMgdG8gLTEgbWVhbnMgbm8gcGl4ZWwgd2lkdGggbGlt
aXRhdGlvbi4KKyAgICAgICAgdm9pZCBkcmF3QmlkaVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRl
eHRSdW4mLCBjb25zdCBGbG9hdFBvaW50JiwgaW50IHdpZHRoID0gLTEpOwogICAgICAgICB2b2lk
IGRyYXdIaWdobGlnaHRGb3JUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3Qg
SW50UG9pbnQmLCBpbnQgaCwgY29uc3QgQ29sb3ImIGJhY2tncm91bmRDb2xvciwgaW50IGZyb20g
PSAwLCBpbnQgdG8gPSAtMSk7CiAKICAgICAgICAgRmxvYXRSZWN0IHJvdW5kVG9EZXZpY2VQaXhl
bHMoY29uc3QgRmxvYXRSZWN0Jik7CkBAIC00MDYsNiArNDA3LDggQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICBpbnQgZm9jdXNSaW5nT2Zmc2V0KCkgY29uc3Q7CiAgICAgICAgIGNvbnN0
IFZlY3RvcjxJbnRSZWN0PiYgZm9jdXNSaW5nUmVjdHMoKSBjb25zdDsKIAorICAgICAgICB2b2lk
IGRyYXdCaWRpVGV4dFdpdGhpbldpZHRoKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IFRleHRSdW4m
IHJ1biwgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIGludCB3aWR0aCk7CisKICAgICAgICAgc3Rh
dGljIEdyYXBoaWNzQ29udGV4dFByaXZhdGUqIGNyZWF0ZUdyYXBoaWNzQ29udGV4dFByaXZhdGUo
KTsKICAgICAgICAgc3RhdGljIHZvaWQgZGVzdHJveUdyYXBoaWNzQ29udGV4dFByaXZhdGUoR3Jh
cGhpY3NDb250ZXh0UHJpdmF0ZSopOwogCg==
</data>
<flag name="review"
          id="18402"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34313</attachid>
            <date>2009-08-07 12:29:42 -0700</date>
            <delta_ts>2009-08-10 17:25:33 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v4</filename>
            <type>text/plain</type>
            <size>15787</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Njg3NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDktMDgtMDYgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSBhdXRvZmlsbC4gSXQKKyAgICAgICAgMS4gaW50cm9kdWNlcyBhIG5ldyBmbGFnIGluIFdl
YkNvcmU6OlBvcHVwQ29udGFpbmVyU2V0dGluZ3MgdG8KKyAgICAgICAgICAgZGlzdGluZ3Vpc2gg
d2hldGhlciB0aGUgd2lkdGggb2YgdGhlIGRyb3AtZG93biBzaG91bGQgYmUgcmVzdHJpY3RlZAor
ICAgICAgICAgICBvciBub3QuCisgICAgICAgICAgIEZvciBhdXRvZmlsbCwgdGhlIHdpZHRoIG9m
IHRoZSBkcm9wLWRvd24gaXMgcmVzdHJpY3RlZCB0bworICAgICAgICAgICBiZSB0aGUgc2FtZSBh
cyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVsZCAodGhlIG5ldyBmbGFnIGlzIHNldCBpbgorICAgICAg
ICAgICBDaHJvbWl1bSdzIG93biBjb2RlKS4gQnV0IHdpZHRoIGlzIG5vdCByZXN0cmljdGVkIGZv
ciA8c2VsZWN0PiAoc2FtZSBhcyBiZWZvcmUpLgorICAgICAgICAyLiBGb3IgYXV0b2ZpbGwsIHVz
ZSBkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlvbmFsaXR5IHRvIGRpc3BsYXkgZHJvcC1kb3duIGl0
ZW1zLgorICAgICAgICAgICBQcmV2aW91c2x5LCBkcm9wLWRvd24gaXRlbSBpcyBkaXNwbGF5ZWQg
aW4gdGhlIGl0cyBmaXJzdCBzdHJvbmcKKyAgICAgICAgICAgZGlyZWN0aW9uYWwgY2hhcmFjdGVy
J3MgZGlyZWN0aW9uYWxpdHkuCisgICAgICAgICAgIChkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlv
bmFsaXR5IGlzIHNldCBpbiBDaHJvbWl1bSdzIG93biBjb2RlLgorICAgICAgICAgICBJdCBpcyBz
ZXQgdGhlIHNhbWUgYXMgdGhlIGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBlbGVtZW50LiAKKyAgICAg
ICAgICAgRm9yIGF1dG9maWxsLCBpdCBpcyB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eSBhcyB0aGF0
IG9mIHRoZSBpbnB1dCBmaWVsZC4pCisKKworICAgICAgICBTaW5jZSB0aGUgcGF0Y2ggb25seSBh
ZmZlY3RzIHRoZSBjaHJvbWl1bSBjbGllbnQsIG5vdCB3ZWJjb3JlIHBhcnQgb3IKKyAgICAgICAg
b3RoZXIgY2xpZW50cy4gTm8gYXV0b21hdGljIHRlc3RzIGlzIHBvc3NpYmxlLgorCisgICAgICAg
ICogbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjopOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBMaXN0
Qm94OjpwYWludFJvdyk6IElmIGFuIGl0ZW0gaXMgbG9uZ2VyIHRvIGZpdCBpbiBhIGxpc3QgYm94
LCBkcmF3IHBhcnQgb2YgdGhlIHRleHQgYW5kIGFwcGVuZCBlbGxpcHNlcy4KKyAgICAgICAgKFdl
YkNvcmU6OlBvcHVwTGlzdEJveDo6bGF5b3V0KTogUmVzdHJpY3Qgd2lkdGggb2YgbGlzdCBib3gg
aWYgYXBwbGljYWJsZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJv
bWl1bS5oOiBBZGQgYSBuZXcgZmxhZyBpbiBQb3B1cENvbnRhaW5lclNldHRpbmcgdG8gZGlzdGlu
Z3Vpc2ggd2hldGhlciB0byByZXN0cmljdCB3aWR0aCBvZiBsaXN0IGJveC4KKyAgICAgICAgKFdl
YkNvcmU6OlBvcHVwSXRlbTo6UG9wdXBJdGVtKTogQWRkIGVsbGlwc2VzTmVlZGVkIGlmIGFuIGl0
ZW0gY2FuIG5vdCBmaXQgaW4gaXRzIGlucHV0IGZpZWxkJ3Mgd2lkdGggYW5kIG5lZWQgdHJ1bmNh
dGlvbi4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3QmlkaVRleHRXaXRoaW5XaWR0
aCk6IERyYXcgYmlkaSB0ZXh0Cit3aXRoaW4gd2lkdGguCisgICAgICAgIChXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4dCk6IAorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L0dyYXBoaWNzQ29udGV4dC5oOiBBZGQgYW4gZGVmYXVsdCBwYXJhbWV0ZXIgdG8gZHJhd0JpZGlU
ZXh0LCBhbmQgYWRkIGRyYXdCaWRpVGV4dFdpdGhpbldpZHRoLgorCiAyMDA5LTA4LTA1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgpJbmRleDogV2ViQ29yZS9tYW51YWwtdGVzdHMvYXV0b2ZpbGwtcG9wdXAt
d2lkdGgtYW5kLWl0ZW0tZGlyZWN0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9tYW51
YWwtdGVzdHMvYXV0b2ZpbGwtcG9wdXAtd2lkdGgtYW5kLWl0ZW0tZGlyZWN0aW9uLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBXZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1h
bmQtaXRlbS1kaXJlY3Rpb24uaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNyBAQAor77u/
PGh0bWw+Cis8aGVhZD4KKzxNRVRBIEhUVFAtRVFVSVY9IkNPTlRFTlQtVFlQRSIgQ09OVEVOVD0i
dGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ij4KKzx0aXRsZT4KK1Rlc3QgdGhlIHBvcHVwIGxpc3Qg
Ym94J3Mgd2lkdGggYW5kIGl0cyBpdGVtcycgZGlzcGxheSBkaXJlY3Rpb25hbGl0eQorPC90aXRs
ZT4KKzwvaGVhZD4KKzxib2R5PgorPHA+CitBdXRvZmlsbCBwb3B1cCBsaXN0IGJveCBzaG91bGQg
aGF2ZSB0aGUgc2FtZSB3aWR0aCBhcyBpdHMgaW5wdXQgZmllbGQncyB3aWR0aC4KK0lmIHRoZSBz
dWJtaXR0ZWQgaW5wdXQgdGV4dCBpcyBsb25nZXIsIGl0IHdpbGwgYmUgdHJ1bmNhdGVkIHRvIGZp
dCBpbiB0aGUgCitpbnB1dCBmaWVsZCdzIHdpZHRoCis8cD4gVHJ5IHR5cGUgc29tZSBsb25nIHRl
eHQgaW4gdGhlICJMYXN0IG5hbWUiIGlucHV0IGJveCwKKyAgIFNheSAiYWJjZCBhYmNkIGFiY2Qg
YWJjZCBhYmNkIGFiY2QiLgordGhlbiBjbGljayAiU3VibWl0Ii4gT3BlbiB0aGUgZmlsZSBhZ2Fp
biwgYW5kIHR5cGUgdGhlIGZpcnN0IGxldHRlciAiYSIsCit0aGUgZm9ybSBhdXRvZmlsbCBwb3At
dXAgc2hvdWxkIHNob3cgdXAgbm93IHdpdGggdGhlIHdpZHRoIHRoZSBzYW1lIGFzCit0aGUgd2lk
dGggb2YgdGhlIGlucHV0IGZpZWxkLCBhbmQgdGhlIHRleHQgImFiY2QgYWJjZCBhYmNkIGFiY2Qg
YWJjZCBhYmNkIiBnb3QKK3RydW5jYXRlZCB0byBmaXQgaW4uCis8cD4gVHJ5IHR5cGUgdGhlIGZv
bGxvd2luZyB0ZXh0IGludG8gdGhlICJGaXJzdCBuYW1lIiBhbmQgIkxhc3QgbmFtZSIuCis8dWw+
Cis8bGk+YWJjZCBlZmcKKzxsaT7Xqdep16nXqdep16kg16DXoNeg16DXoNegINeR15HXkdeR15HX
kdeR15HXkQorPGxpPmFiYyDXkNeQ15AgZGVmZ2hpamtsbW5vcHEKKzxsaT7XkNeQ15DXkNeQ15DX
kNeQ15DXkCAgYWJjZGVmZ2hpamtsbW4g15HXkdeR15HXkdeR15EKKzxsaT5oaSEKKzxsaT7XkNeQ
IQorPC91bD4KK1RoZXkgc2hvdWxkIGJlIGRpc3BsYXllZCBhcyBSVEwgaW4gdGhlIHBvcHVwIG9m
ICJGaXJzdCBuYW1lIiwgCithbmQgc2hvdWxkIGJlIGRpc3BsYXllZCBhcyBMVFIgaW4gdGhlIHBv
cHVwIG9mIHRoZSAiTGFzdCBuYW1lIi4KKzxicj4KKzxmb3JtIGFjdGlvbj0iZm9ybV9hY3Rpb24u
YXNwIiBtZXRob2Q9ImdldCI+CisgIEZpcnN0IG5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1l
PSJmbmFtZSIgZGlyPSJydGwiLz48YnIgLz4KKyAgTGFzdCBuYW1lOiA8aW5wdXQgdHlwZT0idGV4
dCIgbmFtZT0ibG5hbWUiIC8+PGJyIC8+CisgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJT
dWJtaXQiIC8+Cis8L2Zvcm0+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmNwcAkocmV2aXNpb24gNDY3ODUp
CisrKyBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNzUsNyArNzUsOCBAQCBzdGF0aWMgY29uc3QgUG9wdXBDb250YWluZXJT
ZXR0aW5ncyBkcm9wCiAgICAgdHJ1ZSwgLy8gZm9jdXNPblNob3cKICAgICB0cnVlLCAvLyBzZXRU
ZXh0T25JbmRleENoYW5nZQogICAgIHRydWUsIC8vIGFjY2VwdE9uQWJhbmRvbgotICAgIGZhbHNl
IC8vIGxvb3BTZWxlY3Rpb25OYXZpZ2F0aW9uCisgICAgZmFsc2UsIC8vIGxvb3BTZWxlY3Rpb25O
YXZpZ2F0aW9uCisgICAgZmFsc2UgIC8vIHJlc3RyaWN0V2lkdGhPZkxpc3RCb3gKIH07CiAKIC8v
IFRoaXMgY2xhc3MgdXNlcyBXZWJDb3JlIGNvZGUgdG8gcGFpbnQgYW5kIGhhbmRsZSBldmVudHMg
Zm9yIGEgZHJvcC1kb3duIGxpc3QKQEAgLTgyNCw3ICs4MjUsMjUgQEAgdm9pZCBQb3B1cExpc3RC
b3g6OnBhaW50Um93KEdyYXBoaWNzQ29udAogICAgIHVuc2lnbmVkIGxlbmd0aCA9IGl0ZW1UZXh0
Lmxlbmd0aCgpOwogICAgIGNvbnN0IFVDaGFyKiBzdHIgPSBpdGVtVGV4dC5jaGFyYWN0ZXJzKCk7
CiAKLSAgICBUZXh0UnVuIHRleHRSdW4oc3RyLCBsZW5ndGgsIGZhbHNlLCAwLCAwLCBpdGVtVGV4
dC5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigpID09IFdURjo6VW5pY29kZTo6UmlnaHRUb0xlZnQp
OworICAgIC8vIFdlIGNvdWxkIGVpdGhlciBkaXNwbGF5IHRoZSBpdGVtcyBpbiB0aGUgZHJvcC1k
b3duIHVzaW5nIGl0cyBpbnB1dCBmaWVsZCdzCisgICAgLy8gZGlyZWN0aW9uYWxpdHkgKGZvciBh
dXRvZmlsbCkgb3IgaXRzIHNlbGVjdCBlbGVtZW50IGRpcmVjdGlvbmFsaXR5IChmb3IgPHNlbGVj
dD4pLAorICAgIC8vIE9yIHdlIGNvdWxkIGRpc3BsYXkgdGhlIGl0ZW1zIGluIHRoZSBkcm9wLWRv
d24gdXNpbmcgaGV1cmlzdGljczogc3VjaCBhcworICAgIC8vIGluIGl0cyBmaXJzdCBzdHJvbmcg
ZGlyZWN0aW9uYWxpdHkgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uLgorICAgIC8vIFBsZWFzZSByZWZl
ciB0byB0aGUgZGlzY3Vzc2lvbiAoZXNwZWNpYWxseSBjb21tZW50ICM3IGFuZCAjMTApIGluCisg
ICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODg5IGZvciBk
ZXRhaWwuCisgICAgLy8KKyAgICAvLyBGb3IgYXV0b2NvbXBsZXRlLCB3ZSBjaG9vc2UgdG8gdXNl
IHRoZSBkaXJlY3Rpb24gb2YgdGhlIGlucHV0IGZpZWxkCisgICAgLy8gYXMgdGhlIGRpcmVjdGlv
biBvZiB0aGUgcG9wdXAgaXRlbXMsIGluc3RlYWQgb2YgZGV0ZWN0aW5nIHRoZSBwb3B1cCBpdGVt
J3MgZGlyZWN0aW9uIGJhc2VkCisgICAgLy8gb24gaXRzIGZpcnN0IHN0cm9uZy1kaXJlY3Rpb25h
bCBjaGFyYWN0ZXIuIFRoZSBtYWluIHJlYXNvbiBpcyB0byBrZWVwIHRoZSBkaXNwbGF5IG9mIGl0
ZW1zCisgICAgLy8gaW4gZHJvcC1kb3duIHRoZSBzYW1lIGFzIHRoZSBpdGVtcyBpbiB0aGUgaW5w
dXQgZmllbGQuCisgICAgLy8KKyAgICAvLyBGb3IgPHNlbGVjdD4sIHdlIHN0aWxsIHVzZSBoZXVy
aXN0aWNzIHRvIGRldGVybWluZSBpdHMgcG9wdXAgaXRlbSdzIGRpcmVjdGlvbi4KKyAgICBib29s
IHJ0bDsKKyAgICBpZiAobV9zZXR0aW5ncy5yZXN0cmljdFdpZHRoT2ZMaXN0Qm94KQorICAgICAg
ICBydGwgPSBzdHlsZS50ZXh0RGlyZWN0aW9uKCkgPT0gUlRMOyAgLy8gYXV0b2ZpbGwKKyAgICBl
bHNlCisgICAgICAgIHJ0bCA9IGl0ZW1UZXh0LmRlZmF1bHRXcml0aW5nRGlyZWN0aW9uKCkgPT0g
V1RGOjpVbmljb2RlOjpSaWdodFRvTGVmdDsgIC8vIDxzZWxlY3Q+CisgICAgVGV4dFJ1biB0ZXh0
UnVuKHN0ciwgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgcnRsKTsKIAogICAgIC8vIEZJWE1FOiBodHRw
Oi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcgb2YgaW5kaXZpZHVhbCBvcHRp
b24KICAgICAvLyBlbGVtZW50cy4gIFRoaXMgcHJvYmFibHkgaW1wbGllcyBjaGFuZ2VzIHRvIFBv
cHVwTWVudUNsaWVudC4KQEAgLTgzNCw3ICs4NTMsMzAgQEAgdm9pZCBQb3B1cExpc3RCb3g6OnBh
aW50Um93KEdyYXBoaWNzQ29udAogICAgICAgICBGb250IGl0ZW1Gb250ID0gZ2V0Um93Rm9udChy
b3dJbmRleCk7CiAgICAgICAgIGludCB0ZXh0WCA9IG1heCgwLCBtX3BvcHVwQ2xpZW50LT5jbGll
bnRQYWRkaW5nTGVmdCgpIC0gbV9wb3B1cENsaWVudC0+Y2xpZW50SW5zZXRMZWZ0KCkpOwogICAg
ICAgICBpbnQgdGV4dFkgPSByb3dSZWN0LnkoKSArIGl0ZW1Gb250LmFzY2VudCgpICsgKHJvd1Jl
Y3QuaGVpZ2h0KCkgLSBpdGVtRm9udC5oZWlnaHQoKSkgLyAyOwotICAgICAgICBnYy0+ZHJhd0Jp
ZGlUZXh0KGl0ZW1Gb250LCB0ZXh0UnVuLCBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpKTsKKyAgICAg
ICAgYm9vbCBlbGxpcHNlc05lZWRlZCA9IG1faXRlbXNbcm93SW5kZXhdLT5lbGxpcHNlc05lZWRl
ZDsKKyAgICAgICAgaWYgKCFlbGxpcHNlc05lZWRlZCkgeworICAgICAgICAgICAgLy8gbGlzdCBi
b3ggaXMgbGFyZ2UgZW5vdWdoIHRvIGhvbGQgdGhlIGNvbXBsZXRlZCBpdGVtLgorICAgICAgICAg
ICAgZ2MtPmRyYXdCaWRpVGV4dChpdGVtRm9udCwgdGV4dFJ1biwgSW50UG9pbnQodGV4dFgsIHRl
eHRZKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBXZSBuZWVkIHRvIHJlc2Vy
dmUgc3BhY2UgZm9yIGVsbGlwc2VzIGFwcGVuZGluZyBhdCB0aGUgdHJ1Y2F0ZWQgaXRlbSB0ZXh0
LgorICAgICAgICAgICAgLy8gRmlyc3QsIHdlIG9ubHkgZHJhdyBwYXJ0IG9mIGl0ZW0gdGV4dCB3
aGljaCBjYW4gZml0IGluIHRoZSBwaXhlbCB3aWR0aAorICAgICAgICAgICAgLy8gZXhjbHVkaW5n
IHRoZSBlbGxpcHNlc1dpZHRoLiBPdGhlcndpc2UsIHRoZXJlIHdpbGwgYmUgMiBpc3N1ZXM6Cisg
ICAgICAgICAgICAvLyAxLiBubyB3YXkgdG8gaG9ub3IgY2hhcmFjdGVyIGJvdW5kYXJ5IG9mIHRo
ZSB0ZXh0IHdoZW4gZHJhd2luZyBlbGxpcHNlcy4KKyAgICAgICAgICAgIC8vIDIuIHRoZSB0cnVu
Y2F0ZWQgdGV4dCBvZiBSVEwgdGV4dCB3aWxsIGJlIHRoZSBlbmRpbmcgcGFydCBvZiB0aGUgdGV4
dCwKKyAgICAgICAgICAgIC8vICAgIGluc3RlYWQgb2YgdGhlIGJlZ2lubmluZyBwYXJ0LgorICAg
ICAgICAgICAgY29uc3QgVGV4dFJ1biBlbGxpcHNlc1J1bigiLi4uIik7CisgICAgICAgICAgICBp
bnQgZWxsaXBzZXNXaWR0aCA9IGl0ZW1Gb250LndpZHRoKGVsbGlwc2VzUnVuKTsKKyAgICAgICAg
ICAgIEludFBvaW50IHN0YXJ0UG9pbnQgPSBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpOworICAgICAg
ICAgICAgaWYgKHJ0bCkgIC8vIG1vdmUgcmlnaHQgdG8gcmVzZXJ2ZSBzcGFjZXMgZm9yIGVsbGlw
c2VzIGF0IHRoZSBsZWZ0IG9mIHRoZSB0ZXh0CisgICAgICAgICAgICAgICAgc3RhcnRQb2ludC5t
b3ZlKGVsbGlwc2VzV2lkdGgsIDApOworICAgICAgICAgICAgZ2MtPmRyYXdCaWRpVGV4dChpdGVt
Rm9udCwgdGV4dFJ1biwgc3RhcnRQb2ludCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cm93UmVjdC53aWR0aCgpIC0gdGV4dFggLSBlbGxpcHNlc1dpZHRoKTsKKyAgICAgICAgICAgIC8v
IFRoZW4sIGRyYXcgZWxsaXBzZXMuCisgICAgICAgICAgICBpZiAoIXJ0bCkKKyAgICAgICAgICAg
ICAgICB0ZXh0WCA9IHJvd1JlY3QueCgpICsgcm93UmVjdC53aWR0aCgpIC0gZWxsaXBzZXNXaWR0
aDsKKyAgICAgICAgICAgIHRleHRZID0gcm93UmVjdC55KCkgKyBpdGVtRm9udC5hc2NlbnQoKTsK
KyAgICAgICAgICAgIGdjLT5kcmF3VGV4dChpdGVtRm9udCwgZWxsaXBzZXNSdW4sIEludFBvaW50
KHRleHRYLCB0ZXh0WSkpOworICAgICAgICB9CiAgICAgfQogfQogCkBAIC0xMDcyLDI4ICsxMTE0
LDcgQEAgdm9pZCBQb3B1cExpc3RCb3g6OnVwZGF0ZUZyb21FbGVtZW50KCkKIAogdm9pZCBQb3B1
cExpc3RCb3g6OmxheW91dCgpCiB7Ci0gICAgLy8gU2l6ZSBvdXIgY2hpbGQgaXRlbXMuCi0gICAg
aW50IGJhc2VXaWR0aCA9IDA7Ci0gICAgaW50IHBhZGRpbmdXaWR0aCA9IDA7Ci0gICAgaW50IHkg
PSAwOwotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnVtSXRlbXMoKTsgKytpKSB7Ci0gICAgICAg
IEZvbnQgaXRlbUZvbnQgPSBnZXRSb3dGb250KGkpOwotCi0gICAgICAgIC8vIFBsYWNlIHRoZSBp
dGVtIHZlcnRpY2FsbHkuCi0gICAgICAgIG1faXRlbXNbaV0tPnlPZmZzZXQgPSB5OwotICAgICAg
ICB5ICs9IGl0ZW1Gb250LmhlaWdodCgpOwotCi0gICAgICAgIC8vIEVuc3VyZSB0aGUgcG9wdXAg
aXMgd2lkZSBlbm91Z2ggdG8gZml0IHRoaXMgaXRlbS4KLSAgICAgICAgU3RyaW5nIHRleHQgPSBt
X3BvcHVwQ2xpZW50LT5pdGVtVGV4dChpKTsKLSAgICAgICAgaWYgKCF0ZXh0LmlzRW1wdHkoKSkg
ewotICAgICAgICAgICAgaW50IHdpZHRoID0gaXRlbUZvbnQud2lkdGgoVGV4dFJ1bih0ZXh0KSk7
Ci0gICAgICAgICAgICBiYXNlV2lkdGggPSBtYXgoYmFzZVdpZHRoLCB3aWR0aCk7Ci0gICAgICAg
IH0KLSAgICAgICAgLy8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0aGUg
cGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbiBlbGVtZW50cy4KLSAgICAgICAgcGFkZGluZ1dp
ZHRoID0gbWF4KHBhZGRpbmdXaWR0aCwgCi0gICAgICAgICAgICBtX3BvcHVwQ2xpZW50LT5jbGll
bnRQYWRkaW5nTGVmdCgpICsgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ1JpZ2h0KCkpOwot
ICAgIH0KLQorICAgIC8vIENhbGN1bGF0ZSBzY3JvbGwgYmFyIHdpZHRoLgogICAgIGludCB3aW5k
b3dIZWlnaHQgPSAwOwogCiAjaWYgUExBVEZPUk0oREFSV0lOKQpAQCAtMTEyNCwxNCArMTE0NSw0
OSBAQCB2b2lkIFBvcHVwTGlzdEJveDo6bGF5b3V0KCkKICAgICBpZiAobV92aXNpYmxlUm93cyA8
IG51bUl0ZW1zKCkpCiAgICAgICAgIHNjcm9sbGJhcldpZHRoID0gU2Nyb2xsYmFyVGhlbWU6Om5h
dGl2ZVRoZW1lKCktPnNjcm9sbGJhclRoaWNrbmVzcygpOwogCi0gICAgaW50IHdpbmRvd1dpZHRo
ID0gYmFzZVdpZHRoICsgc2Nyb2xsYmFyV2lkdGggKyBwYWRkaW5nV2lkdGg7Ci0gICAgaW50IGNv
bnRlbnRXaWR0aCA9IGJhc2VXaWR0aDsKKyAgICAvLyBTaXplIG91ciBjaGlsZCBpdGVtcy4KKyAg
ICBpbnQgYmFzZVdpZHRoID0gMDsKKyAgICBpbnQgcGFkZGluZ1dpZHRoID0gMDsKKyAgICBpbnQg
eSA9IDA7CisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1JdGVtcygpOyArK2kpIHsKKyAgICAg
ICAgRm9udCBpdGVtRm9udCA9IGdldFJvd0ZvbnQoaSk7CiAKLSAgICBpZiAod2luZG93V2lkdGgg
PCBtX2Jhc2VXaWR0aCkgeworICAgICAgICAvLyBQbGFjZSB0aGUgaXRlbSB2ZXJ0aWNhbGx5Lgor
ICAgICAgICBtX2l0ZW1zW2ldLT55T2Zmc2V0ID0geTsKKyAgICAgICAgeSArPSBpdGVtRm9udC5o
ZWlnaHQoKTsKKworICAgICAgICAvLyBFbnN1cmUgdGhlIHBvcHVwIGlzIHdpZGUgZW5vdWdoIHRv
IGZpdCB0aGlzIGl0ZW0uCisgICAgICAgIFN0cmluZyB0ZXh0ID0gbV9wb3B1cENsaWVudC0+aXRl
bVRleHQoaSk7CisgICAgICAgIGludCB3aWR0aCA9IDA7CisgICAgICAgIGlmICghdGV4dC5pc0Vt
cHR5KCkpIHsKKyAgICAgICAgICAgIHdpZHRoID0gaXRlbUZvbnQud2lkdGgoVGV4dFJ1bih0ZXh0
KSk7CisgICAgICAgICAgICBiYXNlV2lkdGggPSBtYXgoYmFzZVdpZHRoLCB3aWR0aCk7CisgICAg
ICAgIH0KKyAgICAgICAgLy8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0
aGUgcGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbiBlbGVtZW50cy4KKyAgICAgICAgcGFkZGlu
Z1dpZHRoID0gbWF4KHBhZGRpbmdXaWR0aCwKKyAgICAgICAgICAgIG1fcG9wdXBDbGllbnQtPmNs
aWVudFBhZGRpbmdMZWZ0KCkgKyBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nUmlnaHQoKSk7
CisKKyAgICAgICAgaWYgKG1fc2V0dGluZ3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveAorICAgICAg
ICAgICAgJiYgd2lkdGggPiBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dp
ZHRoKSB7CisgICAgICAgICAgICAvLyBFbGxpcHNpcyB3aWxsIGJlIGFwcGVuZGVkIGF0IHRoZSBl
bmQgb2YgdGhlIHRydW5jYXRlZCBlbGVtZW50LgorICAgICAgICAgICAgbV9pdGVtc1tpXS0+ZWxs
aXBzZXNOZWVkZWQgPSB0cnVlOworICAgICAgICB9CisgICAgfQorCisgICAgaW50IHdpbmRvd1dp
ZHRoOworICAgIGludCBjb250ZW50V2lkdGg7CisgICAgaWYgKG1fc2V0dGluZ3MucmVzdHJpY3RX
aWR0aE9mTGlzdEJveCkgewogICAgICAgICB3aW5kb3dXaWR0aCA9IG1fYmFzZVdpZHRoOwogICAg
ICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGlu
Z1dpZHRoOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fYmFzZVdpZHRoID0gYmFzZVdpZHRoOwor
ICAgICAgICB3aW5kb3dXaWR0aCA9IGJhc2VXaWR0aCArIHNjcm9sbGJhcldpZHRoICsgcGFkZGlu
Z1dpZHRoOworICAgICAgICBjb250ZW50V2lkdGggPSBiYXNlV2lkdGg7CisKKyAgICAgICAgaWYg
KHdpbmRvd1dpZHRoIDwgbV9iYXNlV2lkdGgpIHsKKyAgICAgICAgICAgIHdpbmRvd1dpZHRoID0g
bV9iYXNlV2lkdGg7CisgICAgICAgICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VXaWR0aCAtIHNj
cm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAg
IG1fYmFzZVdpZHRoID0gYmFzZVdpZHRoOwogICAgIH0KIAogICAgIHJlc2l6ZSh3aW5kb3dXaWR0
aCwgd2luZG93SGVpZ2h0KTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBN
ZW51Q2hyb21pdW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1Bv
cHVwTWVudUNocm9taXVtLmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9j
aHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MiwxMSArNTIs
MTkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB9OwogCiAgICAgICAgIFBvcHVwSXRl
bShjb25zdCBTdHJpbmcmIGxhYmVsLCBUeXBlIHR5cGUpCi0gICAgICAgICAgICA6IGxhYmVsKGxh
YmVsKSwgdHlwZSh0eXBlKSwgeU9mZnNldCgwKSB7IH0KKyAgICAgICAgICAgIDogbGFiZWwobGFi
ZWwpCisgICAgICAgICAgICAsIHR5cGUodHlwZSkKKyAgICAgICAgICAgICwgeU9mZnNldCgwKQor
ICAgICAgICAgICAgLCBlbGxpcHNlc05lZWRlZChmYWxzZSkKKyAgICAgICAgeworICAgICAgICB9
CiAgICAgICAgIFN0cmluZyBsYWJlbDsKICAgICAgICAgVHlwZSB0eXBlOwogICAgICAgICBpbnQg
eU9mZnNldDsgIC8vIHkgb2Zmc2V0IG9mIHRoaXMgaXRlbSwgcmVsYXRpdmUgdG8gdGhlIHRvcCBv
ZiB0aGUgcG9wdXAuCiAgICAgICAgIGJvb2wgZW5hYmxlZDsKKyAgICAgICAgLy8gV2hldGhlciB0
aGUgcG9wbGlzdCBib3ggaXMgbm90IGxvbmcgZW5vdWdoIHRvIGhvbGQgdGhlCisgICAgICAgIC8v
IGNvbXBsZXRlZCBwb3B1cCBpdGVtIGFuZCBlbGxpcHNlcyBuZWVkIHRvIGJlIGRyYXduLgorICAg
ICAgICBib29sIGVsbGlwc2VzTmVlZGVkOwogICAgIH07CiAKICAgICAvLyBGSVhNRTogT3VyIEZy
YW1lbGVzc1Njcm9sbFZpZXcgY2xhc3NlcyBzaG91bGQgcHJvYmFibHkgaW1wbGVtZW50IEhvc3RX
aW5kb3chCkBAIC04Nyw2ICs5NSwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8v
IHRoZSB1c2VyIHByZXNzZXMgZG93bi91cCBhcnJvdyBrZXlzIGFuZCB0aGUgbGFzdC9maXJzdCBp
dGVtIGlzCiAgICAgICAgIC8vIHNlbGVjdGVkLgogICAgICAgICBib29sIGxvb3BTZWxlY3Rpb25O
YXZpZ2F0aW9uOworCisgICAgICAgIC8vIFdoZXRlciByZXN0cmljdCB0aGUgd2lkdGggb2YgdGhl
IFBvcHVwTGlzdEJveCBvciBub3QuIFdlIHJlc3RyaWN0CisgICAgICAgIC8vIHRoZSB3aWR0aCBm
b3IgYXV0b2NvbXBsZXRlIHBvcHVwLCBidXQgbm90IGZvciBjb21iby1ib3hlcworICAgICAgICAv
LyAoPHNlbGVjdD4gdGFnKS4KKyAgICAgICAgYm9vbCByZXN0cmljdFdpZHRoT2ZMaXN0Qm94Owog
ICAgIH07CiAKICAgICBjbGFzcyBQb3B1cENvbnRhaW5lciA6IHB1YmxpYyBGcmFtZWxlc3NTY3Jv
bGxWaWV3IHsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29u
dGV4dC5jcHAJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
cmFwaGljc0NvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMzQsMTEgKzMzNCwzNSBAQCB2
b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd1RleHQoY29uc3QgRm9uCiB9CiAjZW5kaWYKIAotdm9p
ZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4dChjb25zdCBGb250JiBmb250LCBjb25zdCBU
ZXh0UnVuJiBydW4sIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50KQordm9pZCBHcmFwaGljc0NvbnRl
eHQ6OmRyYXdCaWRpVGV4dFdpdGhpbldpZHRoKGNvbnN0IEZvbnQmIGZvbnQsIGNvbnN0IFRleHRS
dW4mIHJ1biwgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIGludCB3aWR0aCkKK3sKKyAgICAvLyBG
aXJzdCwgY2FsY3VsYXRlIHRoZSBudW1iZXIgb2YgbG9naWNhbCBjaGFyYWN0ZXJzIGluIHRoZSB0
ZXh0IHJ1biB0aGF0IGNhbiBmaXQgd2l0aGluIHRoZSB3aWR0aC4KKyAgICAvLyBGSVhNRTogVGhl
IGNhbGN1bGF0aW9uIGlzIGRvbmUgY2hhcmFjdGVyLWJ5LWNoYXJhY3Rlci4KKyAgICAvLyAgICAg
ICAgSXQgY291bGQgYmUgZG9uZSBieSBnZW5lcmF0aW5nIGxvZ2ljYWwgcnVucyBmcm9tIHZpc3Vh
bCBydW5zIGZpcnN0IGFuZCBjb21wdXRlIHRoZSBkaXNwbGF5IHdpZHRoIG9mIGVhY2ggbG9naWNh
bCBydW4uCisgICAgLy8gICAgICAgIERvIEkgbmVlZCB0byBjaGFuZ2UgdG8gdGhhdCB0byBzYXZl
IHBlcmZvcm1hbmNlPworICAgIGludCBpOworICAgIGludCB0b3RhbFdpZHRoID0gMDsKKyAgICBU
ZXh0UnVuIHRydW5jYXRlZFJ1biA9IHJ1bjsKKyAgICBmb3IgKGkgPSAwOyBpIDwgcnVuLmxlbmd0
aCgpIC0gMTsgKytpKSB7CisgICAgICAgIHRydW5jYXRlZFJ1bi5zZXRUZXh0KHJ1bi5kYXRhKGkp
LCAxKTsKKyAgICAgICAgdG90YWxXaWR0aCArPSBmb250LmZsb2F0V2lkdGgodHJ1bmNhdGVkUnVu
KTsKKyAgICAgICAgaWYgKHRvdGFsV2lkdGggPiB3aWR0aCkKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgIH0KKyAgICB0cnVuY2F0ZWRSdW4uc2V0VGV4dChydW4uY2hhcmFjdGVycygpLCBpIC0gMSk7
CisgICAgZHJhd0JpZGlUZXh0KGZvbnQsIHRydW5jYXRlZFJ1biwgcG9pbnQsIC0xKTsKK30KKwor
dm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdCaWRpVGV4dChjb25zdCBGb250JiBmb250LCBjb25z
dCBUZXh0UnVuJiBydW4sIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBpbnQgd2lkdGgpCiB7CiAg
ICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAgaWYgKHdp
ZHRoICE9IC0xICYmIGZvbnQuZmxvYXRXaWR0aChydW4pID4gd2lkdGgpIHsKKyAgICAgICAgZHJh
d0JpZGlUZXh0V2l0aGluV2lkdGgoZm9udCwgcnVuLCBwb2ludCwgd2lkdGgpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCiAgICAgQmlkaVJlc29sdmVyPFRleHRSdW5JdGVyYXRvciwgQmlkaUNo
YXJhY3RlclJ1bj4gYmlkaVJlc29sdmVyOwogICAgIFdURjo6VW5pY29kZTo6RGlyZWN0aW9uIHBh
cmFncmFwaERpcmVjdGlvbiA9IHJ1bi5sdHIoKSA/IFdURjo6VW5pY29kZTo6TGVmdFRvUmlnaHQg
OiBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0OwogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUw
LDcgKzI1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXRUZXh0RHJh
d2luZ01vZGUoaW50KTsKIAogICAgICAgICB2b2lkIGRyYXdUZXh0KGNvbnN0IEZvbnQmLCBjb25z
dCBUZXh0UnVuJiwgY29uc3QgSW50UG9pbnQmLCBpbnQgZnJvbSA9IDAsIGludCB0byA9IC0xKTsK
LSAgICAgICAgdm9pZCBkcmF3QmlkaVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRleHRSdW4mLCBj
b25zdCBGbG9hdFBvaW50Jik7CisgICAgICAgIC8vIGRyYXcgdGV4dCB3aXRoaW4gdGhlIHBpeGVs
IHdpZHRoLiB3aWR0aCBlcXVhbHMgdG8gLTEgbWVhbnMgbm8gcGl4ZWwgd2lkdGggbGltaXRhdGlv
bi4KKyAgICAgICAgdm9pZCBkcmF3QmlkaVRleHQoY29uc3QgRm9udCYsIGNvbnN0IFRleHRSdW4m
LCBjb25zdCBGbG9hdFBvaW50JiwgaW50IHdpZHRoID0gLTEpOwogICAgICAgICB2b2lkIGRyYXdI
aWdobGlnaHRGb3JUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3QgSW50UG9p
bnQmLCBpbnQgaCwgY29uc3QgQ29sb3ImIGJhY2tncm91bmRDb2xvciwgaW50IGZyb20gPSAwLCBp
bnQgdG8gPSAtMSk7CiAKICAgICAgICAgRmxvYXRSZWN0IHJvdW5kVG9EZXZpY2VQaXhlbHMoY29u
c3QgRmxvYXRSZWN0Jik7CkBAIC00MDYsNiArNDA3LDggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICBpbnQgZm9jdXNSaW5nT2Zmc2V0KCkgY29uc3Q7CiAgICAgICAgIGNvbnN0IFZlY3Rv
cjxJbnRSZWN0PiYgZm9jdXNSaW5nUmVjdHMoKSBjb25zdDsKIAorICAgICAgICB2b2lkIGRyYXdC
aWRpVGV4dFdpdGhpbldpZHRoKGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3QgRmxv
YXRQb2ludCYsIGludCk7CisKICAgICAgICAgc3RhdGljIEdyYXBoaWNzQ29udGV4dFByaXZhdGUq
IGNyZWF0ZUdyYXBoaWNzQ29udGV4dFByaXZhdGUoKTsKICAgICAgICAgc3RhdGljIHZvaWQgZGVz
dHJveUdyYXBoaWNzQ29udGV4dFByaXZhdGUoR3JhcGhpY3NDb250ZXh0UHJpdmF0ZSopOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34536</attachid>
            <date>2009-08-10 19:36:16 -0700</date>
            <delta_ts>2009-08-11 12:58:42 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v5</filename>
            <type>text/plain</type>
            <size>15278</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NzAxMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDkgQEAKKzIwMDktMDgtMTAgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSBhdXRvZmlsbC4gSXQKKyAgICAgICAgMS4gaW50cm9kdWNlcyBhIG5ldyBmbGFnIGluIFdl
YkNvcmU6OlBvcHVwQ29udGFpbmVyU2V0dGluZ3MgdG8KKyAgICAgICAgICAgZGlzdGluZ3Vpc2gg
d2hldGhlciB0aGUgd2lkdGggb2YgdGhlIGRyb3AtZG93biBzaG91bGQgYmUgcmVzdHJpY3RlZAor
ICAgICAgICAgICBvciBub3QuCisgICAgICAgICAgIEZvciBhdXRvZmlsbCwgdGhlIHdpZHRoIG9m
IHRoZSBkcm9wLWRvd24gaXMgcmVzdHJpY3RlZCB0bworICAgICAgICAgICBiZSB0aGUgc2FtZSBh
cyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVsZCAodGhlIG5ldyBmbGFnIGlzIHNldCBpbgorICAgICAg
ICAgICBDaHJvbWl1bSdzIG93biBjb2RlKS4gQnV0IHdpZHRoIGlzIG5vdCByZXN0cmljdGVkIGZv
ciA8c2VsZWN0PiAoc2FtZSBhcyBiZWZvcmUpLgorICAgICAgICAyLiBpbnRyb2R1Y2UgYSBuZXcg
ZmxhZyBpbiBXZWJDb3JlOjpQb3BDb250YWluZXJTZXR0aW5ncyB0bworICAgICAgICAgICBpbmRp
Y2F0ZSB3aGF0IGhldXJpc3RpY3MgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0ZXh0IGluIGRyb3At
ZG93biBtZW51LgorICAgICAgICAgICBGb3IgYXV0b2ZpbGwsIHVzZSBkcm9wLWRvd24gaXRlbSdz
IGRpcmVjdGlvbmFsaXR5IHRvIGRpc3BsYXkgZHJvcC1kb3duIGl0ZW1zLgorICAgICAgICAgICBQ
cmV2aW91c2x5LCBkcm9wLWRvd24gaXRlbSBpcyBkaXNwbGF5ZWQgaW4gdGhlIGl0cyBmaXJzdCBz
dHJvbmcKKyAgICAgICAgICAgZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxpdHku
CisgICAgICAgICAgIChkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlvbmFsaXR5IGlzIHNldCBpbiBD
aHJvbWl1bSdzIG93biBjb2RlLgorICAgICAgICAgICBJdCBpcyBzZXQgdGhlIHNhbWUgYXMgdGhl
IGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBlbGVtZW50LiAKKyAgICAgICAgICAgRm9yIGF1dG9maWxs
LCBpdCBpcyB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eSBhcyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVs
ZC4pCisgICAgICAgICAgIEZvciA8c2VsZWN0Piwgc3RpbGwgdXNlIHRoZSB0ZXh0J3MgZmlyc3Qg
c3Ryb25nIGRpcmVjdGlvbmFsIGNoYXJhY3RlcidzCisgICAgICAgICAgIGRpcmVjdGlvbmFsaXR5
IHRvIGRpc3BsYXkgdGhlIHRleHQuCisKKworICAgICAgICBTaW5jZSB0aGUgcGF0Y2ggb25seSBh
ZmZlY3RzIHRoZSBjaHJvbWl1bSBjbGllbnQsIG5vdCB3ZWJjb3JlIHBhcnQgb3IKKyAgICAgICAg
b3RoZXIgY2xpZW50cy4gTm8gYXV0b21hdGljIHRlc3RzIGlzIHBvc3NpYmxlLgorCisgICAgICAg
ICogbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjopOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBMaXN0
Qm94OjpwYWludFJvdyk6IElmIGFuIGl0ZW0gaXMgbG9uZ2VyIHRvIGZpdCBpbiBhIGxpc3QgYm94
LCBkcmF3IHBhcnQgb2YgdGhlIHRleHQgYW5kIGFwcGVuZCBlbGxpcHNlcy4KKyAgICAgICAgKFdl
YkNvcmU6OlBvcHVwTGlzdEJveDo6bGF5b3V0KTogUmVzdHJpY3Qgd2lkdGggb2YgbGlzdCBib3gg
aWYgYXBwbGljYWJsZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJv
bWl1bS5oOiAKKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwSXRlbTo6UG9wdXBJdGVtKTogQWRkIGVs
bGlwc2VzTmVlZGVkIGlmIGFuIGl0ZW0gY2FuIG5vdCBmaXQgaW4gaXRzIGlucHV0IGZpZWxkJ3Mg
d2lkdGggYW5kIG5lZWQgdHJ1bmNhdGlvbi4KKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwQ29udGFp
bmVyU2V0dGluZ3M6Oik6IEFkZCAyIG5ldyBmbGFncyBpbiBQb3B1cENvbnRhaW5lclNldHRpbmcg
dG8gZGlzdGluZ3Vpc2ggd2hldGhlciB0byByZXN0cmljdCB3aWR0aCBvZiBsaXN0IGJveCBhbmQg
aG93IHRvIGRpc3BsYXkgdGhlIHRleHQgaW4gZHJvcC1kb3duLgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHQ6OmRyYXdCaWRpVGV4dFdpdGhpbldpZHRoKTogRHJhdyBiaWRpIHRleHQKK3dpdGhp
biB3aWR0aC4KKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6ZHJhd0JpZGlUZXh0
KTogQWRkIDMgZGVmYXVsdCBwYXJhbWV0ZXJzIHRvIGFsbG93IGRyYXcgYmlkaSB0ZXh0IHdpdGhp
biB3aWR0aC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaDog
QWRkIDMgZGVmYXVsdCBwYXJhbWV0ZXJzIHRvIGRyYXdCaWRpVGV4dCwgYW5kIGFkZCBkcmF3Qmlk
aVRleHRXaXRoaW5XaWR0aC4KKwogMjAwOS0wOC0xMCAgQW50aG9ueSBSaWNhdWQgIDxyaWtAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCkluZGV4OiBX
ZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rp
b24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1
cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUv
bWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACivvu788aHRtbD4KKzxoZWFkPgorPE1FVEEg
SFRUUC1FUVVJVj0iQ09OVEVOVC1UWVBFIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRG
LTgiPgorPHRpdGxlPgorVGVzdCB0aGUgcG9wdXAgbGlzdCBib3gncyB3aWR0aCBhbmQgaXRzIGl0
ZW1zJyBkaXNwbGF5IGRpcmVjdGlvbmFsaXR5Cis8L3RpdGxlPgorPC9oZWFkPgorPGJvZHk+Cis8
cD4KK0F1dG9maWxsIHBvcHVwIGxpc3QgYm94IHNob3VsZCBoYXZlIHRoZSBzYW1lIHdpZHRoIGFz
IGl0cyBpbnB1dCBmaWVsZCdzIHdpZHRoLgorSWYgdGhlIHN1Ym1pdHRlZCBpbnB1dCB0ZXh0IGlz
IGxvbmdlciwgaXQgd2lsbCBiZSB0cnVuY2F0ZWQgdG8gZml0IGluIHRoZSAKK2lucHV0IGZpZWxk
J3Mgd2lkdGgKKzxwPiBUcnkgdHlwZSBzb21lIGxvbmcgdGV4dCBpbiB0aGUgIkxhc3QgbmFtZSIg
aW5wdXQgYm94LAorICAgU2F5ICJhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QgYWJjZCIuCit0aGVu
IGNsaWNrICJTdWJtaXQiLiBPcGVuIHRoZSBmaWxlIGFnYWluLCBhbmQgdHlwZSB0aGUgZmlyc3Qg
bGV0dGVyICJhIiwKK3RoZSBmb3JtIGF1dG9maWxsIHBvcC11cCBzaG91bGQgc2hvdyB1cCBub3cg
d2l0aCB0aGUgd2lkdGggdGhlIHNhbWUgYXMKK3RoZSB3aWR0aCBvZiB0aGUgaW5wdXQgZmllbGQs
IGFuZCB0aGUgdGV4dCAiYWJjZCBhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QiIGdvdAordHJ1bmNh
dGVkIHRvIGZpdCBpbi4KKzxwPiBUcnkgdHlwZSB0aGUgZm9sbG93aW5nIHRleHQgaW50byB0aGUg
IkZpcnN0IG5hbWUiIGFuZCAiTGFzdCBuYW1lIi4KKzx1bD4KKzxsaT5hYmNkIGVmZworPGxpPtep
16nXqdep16nXqSDXoNeg16DXoNeg16Ag15HXkdeR15HXkdeR15HXkdeRCis8bGk+YWJjINeQ15DX
kCBkZWZnaGlqa2xtbm9wcQorPGxpPteQ15DXkNeQ15DXkNeQ15DXkNeQICBhYmNkZWZnaGlqa2xt
biDXkdeR15HXkdeR15HXkQorPGxpPmhpIQorPGxpPteQ15AhCis8L3VsPgorVGhleSBzaG91bGQg
YmUgZGlzcGxheWVkIGFzIFJUTCBpbiB0aGUgcG9wdXAgb2YgIkZpcnN0IG5hbWUiLCAKK2FuZCBz
aG91bGQgYmUgZGlzcGxheWVkIGFzIExUUiBpbiB0aGUgcG9wdXAgb2YgdGhlICJMYXN0IG5hbWUi
LgorPGJyPgorPGZvcm0gYWN0aW9uPSJmb3JtX2FjdGlvbi5hc3AiIG1ldGhvZD0iZ2V0Ij4KKyAg
Rmlyc3QgbmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImZuYW1lIiBkaXI9InJ0bCIvPjxi
ciAvPgorICBMYXN0IG5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJsbmFtZSIgLz48YnIg
Lz4KKyAgPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgLz4KKzwvZm9ybT4KKzwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51
Q2hyb21pdW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9w
dXBNZW51Q2hyb21pdW0uY3BwCShyZXZpc2lvbiA0Njc4NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Y2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NSw3ICs3
NSwxMCBAQCBzdGF0aWMgY29uc3QgUG9wdXBDb250YWluZXJTZXR0aW5ncyBkcm9wCiAgICAgdHJ1
ZSwgLy8gZm9jdXNPblNob3cKICAgICB0cnVlLCAvLyBzZXRUZXh0T25JbmRleENoYW5nZQogICAg
IHRydWUsIC8vIGFjY2VwdE9uQWJhbmRvbgotICAgIGZhbHNlIC8vIGxvb3BTZWxlY3Rpb25OYXZp
Z2F0aW9uCisgICAgZmFsc2UsIC8vIGxvb3BTZWxlY3Rpb25OYXZpZ2F0aW9uCisgICAgZmFsc2Us
ICAvLyByZXN0cmljdFdpZHRoT2ZMaXN0Qm94CisgICAgLy8gZGlzcGxheSBpdGVtIHRleHQgaW4g
aXRzIGZpcnN0IHN0cm9uZyBkaXJlY3Rpb25hbCBjaGFyYWN0ZXIncyBkaXJlY3Rpb25hbGl0eS4K
KyAgICBQb3B1cENvbnRhaW5lclNldHRpbmdzOjpGaXJzdFN0cm9uZ0RpcmVjdGlvbmFsQ2hhcmFj
dGVyRGlyZWN0aW9uLAogfTsKIAogLy8gVGhpcyBjbGFzcyB1c2VzIFdlYkNvcmUgY29kZSB0byBw
YWludCBhbmQgaGFuZGxlIGV2ZW50cyBmb3IgYSBkcm9wLWRvd24gbGlzdApAQCAtODI0LDcgKzgy
NywxMyBAQCB2b2lkIFBvcHVwTGlzdEJveDo6cGFpbnRSb3coR3JhcGhpY3NDb250CiAgICAgdW5z
aWduZWQgbGVuZ3RoID0gaXRlbVRleHQubGVuZ3RoKCk7CiAgICAgY29uc3QgVUNoYXIqIHN0ciA9
IGl0ZW1UZXh0LmNoYXJhY3RlcnMoKTsKIAotICAgIFRleHRSdW4gdGV4dFJ1bihzdHIsIGxlbmd0
aCwgZmFsc2UsIDAsIDAsIGl0ZW1UZXh0LmRlZmF1bHRXcml0aW5nRGlyZWN0aW9uKCkgPT0gV1RG
OjpVbmljb2RlOjpSaWdodFRvTGVmdCk7CisgICAgYm9vbCBydGwgPSBmYWxzZTsKKyAgICBpZiAo
bV9zZXR0aW5ncy5pdGVtVGV4dERpcmVjdGlvbmFsaXR5SGludCA9PSBQb3B1cENvbnRhaW5lclNl
dHRpbmdzOjpET01FbGVtZW50RGlyZWN0aW9uKQorICAgICAgICBydGwgPSBzdHlsZS50ZXh0RGly
ZWN0aW9uKCkgPT0gUlRMOworICAgIGVsc2UgaWYgKG1fc2V0dGluZ3MuaXRlbVRleHREaXJlY3Rp
b25hbGl0eUhpbnQgPT0KKyAgICAgICAgICAgICBQb3B1cENvbnRhaW5lclNldHRpbmdzOjpGaXJz
dFN0cm9uZ0RpcmVjdGlvbmFsQ2hhcmFjdGVyRGlyZWN0aW9uKQorICAgICAgICBydGwgPSBpdGVt
VGV4dC5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigpID09IFdURjo6VW5pY29kZTo6UmlnaHRUb0xl
ZnQ7CisgICAgVGV4dFJ1biB0ZXh0UnVuKHN0ciwgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgcnRsKTsK
IAogICAgIC8vIEZJWE1FOiBodHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRp
bmcgb2YgaW5kaXZpZHVhbCBvcHRpb24KICAgICAvLyBlbGVtZW50cy4gIFRoaXMgcHJvYmFibHkg
aW1wbGllcyBjaGFuZ2VzIHRvIFBvcHVwTWVudUNsaWVudC4KQEAgLTgzNCw3ICs4NDMsMTEgQEAg
dm9pZCBQb3B1cExpc3RCb3g6OnBhaW50Um93KEdyYXBoaWNzQ29udAogICAgICAgICBGb250IGl0
ZW1Gb250ID0gZ2V0Um93Rm9udChyb3dJbmRleCk7CiAgICAgICAgIGludCB0ZXh0WCA9IG1heCgw
LCBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nTGVmdCgpIC0gbV9wb3B1cENsaWVudC0+Y2xp
ZW50SW5zZXRMZWZ0KCkpOwogICAgICAgICBpbnQgdGV4dFkgPSByb3dSZWN0LnkoKSArIGl0ZW1G
b250LmFzY2VudCgpICsgKHJvd1JlY3QuaGVpZ2h0KCkgLSBpdGVtRm9udC5oZWlnaHQoKSkgLyAy
OwotICAgICAgICBnYy0+ZHJhd0JpZGlUZXh0KGl0ZW1Gb250LCB0ZXh0UnVuLCBJbnRQb2ludCh0
ZXh0WCwgdGV4dFkpKTsKKyAgICAgICAgYm9vbCBlbGxpcHNlc05lZWRlZCA9IG1faXRlbXNbcm93
SW5kZXhdLT5lbGxpcHNlc05lZWRlZDsKKyAgICAgICAgaWYgKCFlbGxpcHNlc05lZWRlZCkgIC8v
IGxpc3QgYm94IGlzIGxhcmdlIGVub3VnaCB0byBob2xkIHRoZSBjb21wbGV0ZWQgaXRlbS4KKyAg
ICAgICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRleHRSdW4sIEludFBvaW50KHRl
eHRYLCB0ZXh0WSkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBnYy0+ZHJhd0JpZGlUZXh0
KGl0ZW1Gb250LCB0ZXh0UnVuLCBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpLCByb3dSZWN0LndpZHRo
KCkgLSB0ZXh0WCk7CiAgICAgfQogfQogCkBAIC0xMDcyLDI4ICsxMDg1LDcgQEAgdm9pZCBQb3B1
cExpc3RCb3g6OnVwZGF0ZUZyb21FbGVtZW50KCkKIAogdm9pZCBQb3B1cExpc3RCb3g6OmxheW91
dCgpCiB7Ci0gICAgLy8gU2l6ZSBvdXIgY2hpbGQgaXRlbXMuCi0gICAgaW50IGJhc2VXaWR0aCA9
IDA7Ci0gICAgaW50IHBhZGRpbmdXaWR0aCA9IDA7Ci0gICAgaW50IHkgPSAwOwotICAgIGZvciAo
aW50IGkgPSAwOyBpIDwgbnVtSXRlbXMoKTsgKytpKSB7Ci0gICAgICAgIEZvbnQgaXRlbUZvbnQg
PSBnZXRSb3dGb250KGkpOwotCi0gICAgICAgIC8vIFBsYWNlIHRoZSBpdGVtIHZlcnRpY2FsbHku
Ci0gICAgICAgIG1faXRlbXNbaV0tPnlPZmZzZXQgPSB5OwotICAgICAgICB5ICs9IGl0ZW1Gb250
LmhlaWdodCgpOwotCi0gICAgICAgIC8vIEVuc3VyZSB0aGUgcG9wdXAgaXMgd2lkZSBlbm91Z2gg
dG8gZml0IHRoaXMgaXRlbS4KLSAgICAgICAgU3RyaW5nIHRleHQgPSBtX3BvcHVwQ2xpZW50LT5p
dGVtVGV4dChpKTsKLSAgICAgICAgaWYgKCF0ZXh0LmlzRW1wdHkoKSkgewotICAgICAgICAgICAg
aW50IHdpZHRoID0gaXRlbUZvbnQud2lkdGgoVGV4dFJ1bih0ZXh0KSk7Ci0gICAgICAgICAgICBi
YXNlV2lkdGggPSBtYXgoYmFzZVdpZHRoLCB3aWR0aCk7Ci0gICAgICAgIH0KLSAgICAgICAgLy8g
RklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0aGUgcGFkZGluZyBvZiBpbmRp
dmlkdWFsIG9wdGlvbiBlbGVtZW50cy4KLSAgICAgICAgcGFkZGluZ1dpZHRoID0gbWF4KHBhZGRp
bmdXaWR0aCwgCi0gICAgICAgICAgICBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nTGVmdCgp
ICsgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ1JpZ2h0KCkpOwotICAgIH0KLQorICAgIC8v
IENhbGN1bGF0ZSBzY3JvbGwgYmFyIHdpZHRoLgogICAgIGludCB3aW5kb3dIZWlnaHQgPSAwOwog
CiAjaWYgUExBVEZPUk0oREFSV0lOKQpAQCAtMTEyNCwxNCArMTExNiw0OSBAQCB2b2lkIFBvcHVw
TGlzdEJveDo6bGF5b3V0KCkKICAgICBpZiAobV92aXNpYmxlUm93cyA8IG51bUl0ZW1zKCkpCiAg
ICAgICAgIHNjcm9sbGJhcldpZHRoID0gU2Nyb2xsYmFyVGhlbWU6Om5hdGl2ZVRoZW1lKCktPnNj
cm9sbGJhclRoaWNrbmVzcygpOwogCi0gICAgaW50IHdpbmRvd1dpZHRoID0gYmFzZVdpZHRoICsg
c2Nyb2xsYmFyV2lkdGggKyBwYWRkaW5nV2lkdGg7Ci0gICAgaW50IGNvbnRlbnRXaWR0aCA9IGJh
c2VXaWR0aDsKKyAgICAvLyBTaXplIG91ciBjaGlsZCBpdGVtcy4KKyAgICBpbnQgYmFzZVdpZHRo
ID0gMDsKKyAgICBpbnQgcGFkZGluZ1dpZHRoID0gMDsKKyAgICBpbnQgeSA9IDA7CisgICAgZm9y
IChpbnQgaSA9IDA7IGkgPCBudW1JdGVtcygpOyArK2kpIHsKKyAgICAgICAgRm9udCBpdGVtRm9u
dCA9IGdldFJvd0ZvbnQoaSk7CiAKLSAgICBpZiAod2luZG93V2lkdGggPCBtX2Jhc2VXaWR0aCkg
eworICAgICAgICAvLyBQbGFjZSB0aGUgaXRlbSB2ZXJ0aWNhbGx5LgorICAgICAgICBtX2l0ZW1z
W2ldLT55T2Zmc2V0ID0geTsKKyAgICAgICAgeSArPSBpdGVtRm9udC5oZWlnaHQoKTsKKworICAg
ICAgICAvLyBFbnN1cmUgdGhlIHBvcHVwIGlzIHdpZGUgZW5vdWdoIHRvIGZpdCB0aGlzIGl0ZW0u
CisgICAgICAgIFN0cmluZyB0ZXh0ID0gbV9wb3B1cENsaWVudC0+aXRlbVRleHQoaSk7CisgICAg
ICAgIGludCB3aWR0aCA9IDA7CisgICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpIHsKKyAgICAg
ICAgICAgIHdpZHRoID0gaXRlbUZvbnQud2lkdGgoVGV4dFJ1bih0ZXh0KSk7CisgICAgICAgICAg
ICBiYXNlV2lkdGggPSBtYXgoYmFzZVdpZHRoLCB3aWR0aCk7CisgICAgICAgIH0KKyAgICAgICAg
Ly8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0aGUgcGFkZGluZyBvZiBp
bmRpdmlkdWFsIG9wdGlvbiBlbGVtZW50cy4KKyAgICAgICAgcGFkZGluZ1dpZHRoID0gbWF4KHBh
ZGRpbmdXaWR0aCwKKyAgICAgICAgICAgIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdMZWZ0
KCkgKyBtX3BvcHVwQ2xpZW50LT5jbGllbnRQYWRkaW5nUmlnaHQoKSk7CisKKyAgICAgICAgaWYg
KG1fc2V0dGluZ3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveAorICAgICAgICAgICAgJiYgd2lkdGgg
PiBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoKSB7CisgICAgICAg
ICAgICAvLyBFbGxpcHNpcyB3aWxsIGJlIGFwcGVuZGVkIGF0IHRoZSBlbmQgb2YgdGhlIHRydW5j
YXRlZCBlbGVtZW50LgorICAgICAgICAgICAgbV9pdGVtc1tpXS0+ZWxsaXBzZXNOZWVkZWQgPSB0
cnVlOworICAgICAgICB9CisgICAgfQorCisgICAgaW50IHdpbmRvd1dpZHRoOworICAgIGludCBj
b250ZW50V2lkdGg7CisgICAgaWYgKG1fc2V0dGluZ3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveCkg
ewogICAgICAgICB3aW5kb3dXaWR0aCA9IG1fYmFzZVdpZHRoOwogICAgICAgICBjb250ZW50V2lk
dGggPSBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoOwogICAgIH0g
ZWxzZSB7Ci0gICAgICAgIG1fYmFzZVdpZHRoID0gYmFzZVdpZHRoOworICAgICAgICB3aW5kb3dX
aWR0aCA9IGJhc2VXaWR0aCArIHNjcm9sbGJhcldpZHRoICsgcGFkZGluZ1dpZHRoOworICAgICAg
ICBjb250ZW50V2lkdGggPSBiYXNlV2lkdGg7CisKKyAgICAgICAgaWYgKHdpbmRvd1dpZHRoIDwg
bV9iYXNlV2lkdGgpIHsKKyAgICAgICAgICAgIHdpbmRvd1dpZHRoID0gbV9iYXNlV2lkdGg7Cisg
ICAgICAgICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0g
cGFkZGluZ1dpZHRoOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIG1fYmFzZVdpZHRoID0g
YmFzZVdpZHRoOwogICAgIH0KIAogICAgIHJlc2l6ZSh3aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0
KTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0uaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVt
LmgJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1l
bnVDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MiwxMSArNTIsMTkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICB9OwogCiAgICAgICAgIFBvcHVwSXRlbShjb25zdCBTdHJpbmcm
IGxhYmVsLCBUeXBlIHR5cGUpCi0gICAgICAgICAgICA6IGxhYmVsKGxhYmVsKSwgdHlwZSh0eXBl
KSwgeU9mZnNldCgwKSB7IH0KKyAgICAgICAgICAgIDogbGFiZWwobGFiZWwpCisgICAgICAgICAg
ICAsIHR5cGUodHlwZSkKKyAgICAgICAgICAgICwgeU9mZnNldCgwKQorICAgICAgICAgICAgLCBl
bGxpcHNlc05lZWRlZChmYWxzZSkKKyAgICAgICAgeworICAgICAgICB9CiAgICAgICAgIFN0cmlu
ZyBsYWJlbDsKICAgICAgICAgVHlwZSB0eXBlOwogICAgICAgICBpbnQgeU9mZnNldDsgIC8vIHkg
b2Zmc2V0IG9mIHRoaXMgaXRlbSwgcmVsYXRpdmUgdG8gdGhlIHRvcCBvZiB0aGUgcG9wdXAuCiAg
ICAgICAgIGJvb2wgZW5hYmxlZDsKKyAgICAgICAgLy8gV2hldGhlciB0aGUgcG9wbGlzdCBib3gg
aXMgbm90IGxvbmcgZW5vdWdoIHRvIGhvbGQgdGhlCisgICAgICAgIC8vIGNvbXBsZXRlZCBwb3B1
cCBpdGVtIGFuZCBlbGxpcHNlcyBuZWVkIHRvIGJlIGRyYXduLgorICAgICAgICBib29sIGVsbGlw
c2VzTmVlZGVkOwogICAgIH07CiAKICAgICAvLyBGSVhNRTogT3VyIEZyYW1lbGVzc1Njcm9sbFZp
ZXcgY2xhc3NlcyBzaG91bGQgcHJvYmFibHkgaW1wbGVtZW50IEhvc3RXaW5kb3chCkBAIC04Nyw2
ICs5NSwyNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIHRoZSB1c2VyIHByZXNz
ZXMgZG93bi91cCBhcnJvdyBrZXlzIGFuZCB0aGUgbGFzdC9maXJzdCBpdGVtIGlzCiAgICAgICAg
IC8vIHNlbGVjdGVkLgogICAgICAgICBib29sIGxvb3BTZWxlY3Rpb25OYXZpZ2F0aW9uOworCisg
ICAgICAgIC8vIFdoZXRlciByZXN0cmljdCB0aGUgd2lkdGggb2YgdGhlIFBvcHVwTGlzdEJveCBv
ciBub3QuIFdlIHJlc3RyaWN0CisgICAgICAgIC8vIHRoZSB3aWR0aCBmb3IgYXV0b2NvbXBsZXRl
IHBvcHVwLCBidXQgbm90IGZvciBjb21iby1ib3hlcworICAgICAgICAvLyAoPHNlbGVjdD4gdGFn
KS4KKyAgICAgICAgYm9vbCByZXN0cmljdFdpZHRoT2ZMaXN0Qm94OworCisgICAgICAgIC8vIEEg
aGludCBvbiB0aGUgZGlzcGxheSBkaXJlY3Rpb25hbGl0eSBvZiB0aGUgaXRlbSB0ZXh0IGluIHBv
cHVwIG1lbnUuCisgICAgICAgIC8vCisgICAgICAgIC8vIFdlIGNvdWxkIGVpdGhlciBkaXNwbGF5
IHRoZSBpdGVtcyBpbiB0aGUgZHJvcC1kb3duIHVzaW5nIGl0cyBET00gZWxlbWVudCdzCisgICAg
ICAgIC8vIGRpcmVjdGlvbmFsaXR5LCBvciB3ZSBjb3VsZCBkaXNwbGF5IHRoZSBpdGVtcyBpbiB0
aGUgZHJvcC1kb3duIHVzaW5nIGhldXJpc3RpY3M6CisgICAgICAgIC8vIHN1Y2ggYXMgaW4gaXRz
IGZpcnN0IHN0cm9uZyBkaXJlY3Rpb25hbGl0eSBjaGFyYWN0ZXIncyBkaXJlY3Rpb24uCisgICAg
ICAgIC8vIFBsZWFzZSByZWZlciB0byB0aGUgZGlzY3Vzc2lvbiAoZXNwZWNpYWxseSBjb21tZW50
ICM3IGFuZCAjMTApIGluCisgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yNzg4OSBmb3IgZGV0YWlsLgorICAgICAgICBlbnVtIERpcmVjdGlvbmFsaXR5
SGludCB7CisgICAgICAgICAgICAvLyBVc2UgdGhlIERPTSBlbGVtZW50J3MgZGlyZWN0aW9uYWxp
dHkgdG8gZGlzcGxheSB0aGUgaXRlbSB0ZXh0IGluIHBvcHVwIG1lbnUuCisgICAgICAgICAgICBE
T01FbGVtZW50RGlyZWN0aW9uLAorICAgICAgICAgICAgLy8gVXNlIHRoZSBpdGVtIHRleHQncyBm
aXJzdCBzdHJvbmctZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxpdHkKKyAgICAg
ICAgICAgIC8vIHRvIGRpc3BsYXkgdGhlIGl0ZW0gdGV4dCBpbiBwb3B1cCBtZW51LgorICAgICAg
ICAgICAgRmlyc3RTdHJvbmdEaXJlY3Rpb25hbENoYXJhY3RlckRpcmVjdGlvbiwKKyAgICAgICAg
fTsKKyAgICAgICAgRGlyZWN0aW9uYWxpdHlIaW50IGl0ZW1UZXh0RGlyZWN0aW9uYWxpdHlIaW50
OwogICAgIH07CiAKICAgICBjbGFzcyBQb3B1cENvbnRhaW5lciA6IHB1YmxpYyBGcmFtZWxlc3NT
Y3JvbGxWaWV3IHsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250
ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNz
Q29udGV4dC5jcHAJKHJldmlzaW9uIDQ2Nzg1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc0NvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw2ICszMCw3IEBACiAj
aW5jbHVkZSAiR2VuZXJhdG9yLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0UHJpdmF0ZS5o
IgogI2luY2x1ZGUgIkZvbnQuaCIKKyNpbmNsdWRlICJTdHJpbmdUcnVuY2F0b3IuaCIKIAogdXNp
bmcgbmFtZXNwYWNlIHN0ZDsKIApAQCAtMzM0LDExICszMzUsMjYgQEAgdm9pZCBHcmFwaGljc0Nv
bnRleHQ6OmRyYXdUZXh0KGNvbnN0IEZvbgogfQogI2VuZGlmCiAKLXZvaWQgR3JhcGhpY3NDb250
ZXh0OjpkcmF3QmlkaVRleHQoY29uc3QgRm9udCYgZm9udCwgY29uc3QgVGV4dFJ1biYgcnVuLCBj
b25zdCBGbG9hdFBvaW50JiBwb2ludCkKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3QmlkaVRl
eHRXaXRoaW5XaWR0aChjb25zdCBGb250JiBmb250LCBjb25zdCBUZXh0UnVuJiBydW4sIGNvbnN0
IEZsb2F0UG9pbnQmIHBvaW50LCBpbnQgd2lkdGgpCit7CisgICAgLy8gRmlyc3QsIHRydW5jYXRl
IHRleHQuCisgICAgVGV4dFJ1biB0cnVuY2F0ZWRSdW4gPSBydW47ICAvLyBpbmhlcml0cyBvdGhl
ciBwcm9wZXJ0aWVzIGZyb20gcnVuIGV4Y2VwdCB0aGUgdGV4dCBjb250ZW50LgorICAgIFN0cmlu
ZyB0cnVuY2F0ZWRTdHJpbmcgPSBTdHJpbmdUcnVuY2F0b3I6OnJpZ2h0VHJ1bmNhdGUoU3RyaW5n
KHJ1bi5jaGFyYWN0ZXJzKCksIHJ1bi5sZW5ndGgoKSksIHdpZHRoLCBmb250KTsKKyAgICB0cnVu
Y2F0ZWRSdW4uc2V0VGV4dCh0cnVuY2F0ZWRTdHJpbmcuY2hhcmFjdGVycygpLCB0cnVuY2F0ZWRT
dHJpbmcubGVuZ3RoKCkpOworICAgIC8vIERyYXcgdHJ1bmNhdGVkIHRleHQgYWxvbmcgd2l0aCBl
bGxpcHNlcy4KKyAgICBkcmF3QmlkaVRleHQoZm9udCwgdHJ1bmNhdGVkUnVuLCBwb2ludCk7Cit9
CisKK3ZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3QmlkaVRleHQoY29uc3QgRm9udCYgZm9udCwg
Y29uc3QgVGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdFBvaW50JiBwb2ludCwgaW50IHdpZHRoKQog
ewogICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAorICAgIGlm
ICh3aWR0aCAhPSAtMSAmJiBmb250LmZsb2F0V2lkdGgocnVuKSA+IHdpZHRoKSB7CisgICAgICAg
IGRyYXdCaWRpVGV4dFdpdGhpbldpZHRoKGZvbnQsIHJ1biwgcG9pbnQsIHdpZHRoKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKwogICAgIEJpZGlSZXNvbHZlcjxUZXh0UnVuSXRlcmF0b3IsIEJp
ZGlDaGFyYWN0ZXJSdW4+IGJpZGlSZXNvbHZlcjsKICAgICBXVEY6OlVuaWNvZGU6OkRpcmVjdGlv
biBwYXJhZ3JhcGhEaXJlY3Rpb24gPSBydW4ubHRyKCkgPyBXVEY6OlVuaWNvZGU6OkxlZnRUb1Jp
Z2h0IDogV1RGOjpVbmljb2RlOjpSaWdodFRvTGVmdDsKIApJbmRleDogV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCShyZXZpc2lvbiA0Njc4NSkKKysrIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAg
LTI1MCw3ICsyNTAsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc2V0VGV4
dERyYXdpbmdNb2RlKGludCk7CiAKICAgICAgICAgdm9pZCBkcmF3VGV4dChjb25zdCBGb250Jiwg
Y29uc3QgVGV4dFJ1biYsIGNvbnN0IEludFBvaW50JiwgaW50IGZyb20gPSAwLCBpbnQgdG8gPSAt
MSk7Ci0gICAgICAgIHZvaWQgZHJhd0JpZGlUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVu
JiwgY29uc3QgRmxvYXRQb2ludCYpOworICAgICAgICAvLyBkcmF3IHRleHQgd2l0aGluIHRoZSBw
aXhlbCB3aWR0aC4gd2lkdGggZXF1YWxzIHRvIC0xIG1lYW5zIG5vIHBpeGVsIHdpZHRoIGxpbWl0
YXRpb24uCisgICAgICAgIHZvaWQgZHJhd0JpZGlUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0
UnVuJiwgY29uc3QgRmxvYXRQb2ludCYsIGludCB3aWR0aCA9IC0xKTsKICAgICAgICAgdm9pZCBk
cmF3SGlnaGxpZ2h0Rm9yVGV4dChjb25zdCBGb250JiwgY29uc3QgVGV4dFJ1biYsIGNvbnN0IElu
dFBvaW50JiwgaW50IGgsIGNvbnN0IENvbG9yJiBiYWNrZ3JvdW5kQ29sb3IsIGludCBmcm9tID0g
MCwgaW50IHRvID0gLTEpOwogCiAgICAgICAgIEZsb2F0UmVjdCByb3VuZFRvRGV2aWNlUGl4ZWxz
KGNvbnN0IEZsb2F0UmVjdCYpOwpAQCAtNDA2LDYgKzQwNyw4IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgaW50IGZvY3VzUmluZ09mZnNldCgpIGNvbnN0OwogICAgICAgICBjb25zdCBW
ZWN0b3I8SW50UmVjdD4mIGZvY3VzUmluZ1JlY3RzKCkgY29uc3Q7CiAKKyAgICAgICAgdm9pZCBk
cmF3QmlkaVRleHRXaXRoaW5XaWR0aChjb25zdCBGb250JiwgY29uc3QgVGV4dFJ1biYsIGNvbnN0
IEZsb2F0UG9pbnQmLCBpbnQpOworCiAgICAgICAgIHN0YXRpYyBHcmFwaGljc0NvbnRleHRQcml2
YXRlKiBjcmVhdGVHcmFwaGljc0NvbnRleHRQcml2YXRlKCk7CiAgICAgICAgIHN0YXRpYyB2b2lk
IGRlc3Ryb3lHcmFwaGljc0NvbnRleHRQcml2YXRlKEdyYXBoaWNzQ29udGV4dFByaXZhdGUqKTsK
IAo=
</data>
<flag name="review"
          id="18692"
          type_id="1"
          status="-"
          setter="mitz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34585</attachid>
            <date>2009-08-11 12:58:04 -0700</date>
            <delta_ts>2009-08-21 10:52:18 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v6</filename>
            <type>text/plain</type>
            <size>10997</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NzA1MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDcgQEAKKzIwMDktMDgtMTEgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSBhdXRvZmlsbC4gSXQKKyAgICAgICAgMS4gaW50cm9kdWNlcyBhIG5ldyBmbGFnIGluIFdl
YkNvcmU6OlBvcHVwQ29udGFpbmVyU2V0dGluZ3MgdG8KKyAgICAgICAgICAgZGlzdGluZ3Vpc2gg
d2hldGhlciB0aGUgd2lkdGggb2YgdGhlIGRyb3AtZG93biBzaG91bGQgYmUgcmVzdHJpY3RlZAor
ICAgICAgICAgICBvciBub3QuCisgICAgICAgICAgIEZvciBhdXRvZmlsbCwgdGhlIHdpZHRoIG9m
IHRoZSBkcm9wLWRvd24gaXMgcmVzdHJpY3RlZCB0bworICAgICAgICAgICBiZSB0aGUgc2FtZSBh
cyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVsZCAodGhlIG5ldyBmbGFnIGlzIHNldCBpbgorICAgICAg
ICAgICBDaHJvbWl1bSdzIG93biBjb2RlKS4gQnV0IHdpZHRoIGlzIG5vdCByZXN0cmljdGVkIGZv
ciA8c2VsZWN0PiAoc2FtZSBhcyBiZWZvcmUpLgorICAgICAgICAyLiBpbnRyb2R1Y2UgYSBuZXcg
ZmxhZyBpbiBXZWJDb3JlOjpQb3BDb250YWluZXJTZXR0aW5ncyB0bworICAgICAgICAgICBpbmRp
Y2F0ZSB3aGF0IGhldXJpc3RpY3MgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0ZXh0IGluIGRyb3At
ZG93biBtZW51LgorICAgICAgICAgICBGb3IgYXV0b2ZpbGwsIHVzZSBkcm9wLWRvd24gaXRlbSdz
IGRpcmVjdGlvbmFsaXR5IHRvIGRpc3BsYXkgZHJvcC1kb3duIGl0ZW1zLgorICAgICAgICAgICBQ
cmV2aW91c2x5LCBkcm9wLWRvd24gaXRlbSBpcyBkaXNwbGF5ZWQgaW4gdGhlIGl0cyBmaXJzdCBz
dHJvbmcKKyAgICAgICAgICAgZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxpdHku
CisgICAgICAgICAgIChkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlvbmFsaXR5IGlzIHNldCBpbiBD
aHJvbWl1bSdzIG93biBjb2RlLgorICAgICAgICAgICBJdCBpcyBzZXQgdGhlIHNhbWUgYXMgdGhl
IGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBlbGVtZW50LiAKKyAgICAgICAgICAgRm9yIGF1dG9maWxs
LCBpdCBpcyB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eSBhcyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVs
ZC4pCisgICAgICAgICAgIEZvciA8c2VsZWN0Piwgc3RpbGwgdXNlIHRoZSB0ZXh0J3MgZmlyc3Qg
c3Ryb25nIGRpcmVjdGlvbmFsIGNoYXJhY3RlcidzCisgICAgICAgICAgIGRpcmVjdGlvbmFsaXR5
IHRvIGRpc3BsYXkgdGhlIHRleHQuCisKKworICAgICAgICBTaW5jZSB0aGUgcGF0Y2ggb25seSBh
ZmZlY3RzIHRoZSBjaHJvbWl1bSBjbGllbnQsIG5vdCB3ZWJjb3JlIHBhcnQgb3IKKyAgICAgICAg
b3RoZXIgY2xpZW50cy4gTm8gYXV0b21hdGljIHRlc3RzIGlzIHBvc3NpYmxlLgorCisgICAgICAg
ICogbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjopOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBMaXN0
Qm94OjpwYWludFJvdyk6IElmIGxpc3QgYm94IHdpZHRoIGlzIHJlc3RyaWN0ZWQgYW5kIAorICAg
ICAgICBhbiBpdGVtIGlzIGxvbmdlciB0byBmaXQgaW4gYSBsaXN0IGJveCwgdHJ1bmNhdGUgaXQg
YW5kIGRyYXcgcGFydCBvZiB0aGUgdGV4dCBhbmQgYXBwZW5kIGVsbGlwc2VzLgorICAgICAgICAo
V2ViQ29yZTo6UG9wdXBMaXN0Qm94OjpsYXlvdXQpOiBSZXN0cmljdCB3aWR0aCBvZiBsaXN0IGJv
eCBpZiBhcHBsaWNhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNo
cm9taXVtLmg6IAorICAgICAgICAoV2ViQ29yZTo6UG9wdXBJdGVtOjpQb3B1cEl0ZW0pOiBzdHls
ZSBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpQb3B1cENvbnRhaW5lclNldHRpbmdzOjopOiBB
ZGQgMiBuZXcgZmxhZ3MgaW4gUG9wdXBDb250YWluZXJTZXR0aW5nIHRvIAorICAgICAgICBkaXN0
aW5ndWlzaCB3aGV0aGVyIHRvIHJlc3RyaWN0IHdpZHRoIG9mIGxpc3QgYm94IGFuZCAKKyAgICAg
ICAgaW4gd2hhdCBkaXJlY3Rpb25hbGl0eSB0byBkaXNwbGF5IHRoZSB0ZXh0IGluIGRyb3AtZG93
bi4KKwogMjAwOS0wOC0xMSAgSm9zZXBoIFBlY29yYXJvICA8am9lcGVjazAyQGdtYWlsLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCkluZGV4OiBXZWJDb3JlL21h
bnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1h
bmQtaXRlbS1kaXJlY3Rpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvbWFudWFsLXRl
c3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDM3IEBACivvu788aHRtbD4KKzxoZWFkPgorPE1FVEEgSFRUUC1FUVVJ
Vj0iQ09OVEVOVC1UWVBFIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPgorPHRp
dGxlPgorVGVzdCB0aGUgcG9wdXAgbGlzdCBib3gncyB3aWR0aCBhbmQgaXRzIGl0ZW1zJyBkaXNw
bGF5IGRpcmVjdGlvbmFsaXR5Cis8L3RpdGxlPgorPC9oZWFkPgorPGJvZHk+Cis8cD4KK0F1dG9m
aWxsIHBvcHVwIGxpc3QgYm94IHNob3VsZCBoYXZlIHRoZSBzYW1lIHdpZHRoIGFzIGl0cyBpbnB1
dCBmaWVsZCdzIHdpZHRoLgorSWYgdGhlIHN1Ym1pdHRlZCBpbnB1dCB0ZXh0IGlzIGxvbmdlciwg
aXQgd2lsbCBiZSB0cnVuY2F0ZWQgdG8gZml0IGluIHRoZSAKK2lucHV0IGZpZWxkJ3Mgd2lkdGgK
KzxwPiBUcnkgdHlwZSBzb21lIGxvbmcgdGV4dCBpbiB0aGUgIkxhc3QgbmFtZSIgaW5wdXQgYm94
LAorICAgU2F5ICJhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QgYWJjZCIuCit0aGVuIGNsaWNrICJT
dWJtaXQiLiBPcGVuIHRoZSBmaWxlIGFnYWluLCBhbmQgdHlwZSB0aGUgZmlyc3QgbGV0dGVyICJh
IiwKK3RoZSBmb3JtIGF1dG9maWxsIHBvcC11cCBzaG91bGQgc2hvdyB1cCBub3cgd2l0aCB0aGUg
d2lkdGggdGhlIHNhbWUgYXMKK3RoZSB3aWR0aCBvZiB0aGUgaW5wdXQgZmllbGQsIGFuZCB0aGUg
dGV4dCAiYWJjZCBhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QiIGdvdAordHJ1bmNhdGVkIHRvIGZp
dCBpbi4KKzxwPiBUcnkgdHlwZSB0aGUgZm9sbG93aW5nIHRleHQgaW50byB0aGUgIkZpcnN0IG5h
bWUiIGFuZCAiTGFzdCBuYW1lIi4KKzx1bD4KKzxsaT5hYmNkIGVmZworPGxpPtep16nXqdep16nX
qSDXoNeg16DXoNeg16Ag15HXkdeR15HXkdeR15HXkdeRCis8bGk+YWJjINeQ15DXkCBkZWZnaGlq
a2xtbm9wcQorPGxpPteQ15DXkNeQ15DXkNeQ15DXkNeQICBhYmNkZWZnaGlqa2xtbiDXkdeR15HX
kdeR15HXkQorPGxpPmhpIQorPGxpPteQ15AhCis8L3VsPgorVGhleSBzaG91bGQgYmUgZGlzcGxh
eWVkIGFzIFJUTCBpbiB0aGUgcG9wdXAgb2YgIkZpcnN0IG5hbWUiLCAKK2FuZCBzaG91bGQgYmUg
ZGlzcGxheWVkIGFzIExUUiBpbiB0aGUgcG9wdXAgb2YgdGhlICJMYXN0IG5hbWUiLgorPGJyPgor
PGZvcm0gYWN0aW9uPSJmb3JtX2FjdGlvbi5hc3AiIG1ldGhvZD0iZ2V0Ij4KKyAgRmlyc3QgbmFt
ZTogPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImZuYW1lIiBkaXI9InJ0bCIvPjxiciAvPgorICBM
YXN0IG5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJsbmFtZSIgLz48YnIgLz4KKyAgPGlu
cHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgLz4KKzwvZm9ybT4KKzwvYm9keT4KKzwv
aHRtbD4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hy
b21pdW0uY3BwCShyZXZpc2lvbiA0Njc4NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0v
UG9wdXBNZW51Q2hyb21pdW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MCw2ICs1MCw3IEBACiAj
aW5jbHVkZSAiUG9wdXBNZW51LmgiCiAjaW5jbHVkZSAiUmVuZGVyVGhlbWUuaCIKICNpbmNsdWRl
ICJTY3JvbGxiYXJUaGVtZS5oIgorI2luY2x1ZGUgIlN0cmluZ1RydW5jYXRvci5oIgogI2luY2x1
ZGUgIlN5c3RlbVRpbWUuaCIKIAogI2luY2x1ZGUgPHd0Zi9DdXJyZW50VGltZS5oPgpAQCAtNzUs
NyArNzYsMTAgQEAgc3RhdGljIGNvbnN0IFBvcHVwQ29udGFpbmVyU2V0dGluZ3MgZHJvcAogICAg
IHRydWUsIC8vIGZvY3VzT25TaG93CiAgICAgdHJ1ZSwgLy8gc2V0VGV4dE9uSW5kZXhDaGFuZ2UK
ICAgICB0cnVlLCAvLyBhY2NlcHRPbkFiYW5kb24KLSAgICBmYWxzZSAvLyBsb29wU2VsZWN0aW9u
TmF2aWdhdGlvbgorICAgIGZhbHNlLCAvLyBsb29wU2VsZWN0aW9uTmF2aWdhdGlvbgorICAgIGZh
bHNlLCAgLy8gcmVzdHJpY3RXaWR0aE9mTGlzdEJveAorICAgIC8vIGRpc3BsYXkgaXRlbSB0ZXh0
IGluIGl0cyBmaXJzdCBzdHJvbmcgZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxp
dHkuCisgICAgUG9wdXBDb250YWluZXJTZXR0aW5nczo6Rmlyc3RTdHJvbmdEaXJlY3Rpb25hbENo
YXJhY3RlckRpcmVjdGlvbiwKIH07CiAKIC8vIFRoaXMgY2xhc3MgdXNlcyBXZWJDb3JlIGNvZGUg
dG8gcGFpbnQgYW5kIGhhbmRsZSBldmVudHMgZm9yIGEgZHJvcC1kb3duIGxpc3QKQEAgLTgxNywy
NSArODIxLDMyIEBAIHZvaWQgUG9wdXBMaXN0Qm94OjpwYWludFJvdyhHcmFwaGljc0NvbnQKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKKyAgICBpZiAoIXN0eWxlLmlzVmlzaWJsZSgpKQor
ICAgICAgICByZXR1cm47CisKICAgICBnYy0+c2V0RmlsbENvbG9yKHRleHRDb2xvcik7CiAKLSAg
ICAvLyBCdW5jaCBvZiBzaGl0IHRvIGRlYWwgd2l0aCBSVEwgdGV4dC4uLgorICAgIEZvbnQgaXRl
bUZvbnQgPSBnZXRSb3dGb250KHJvd0luZGV4KTsKKyAgICAvLyBGSVhNRTogaHR0cDovL2IvMTIx
MDQ4MSBXZSBzaG91bGQgZ2V0IHRoZSBwYWRkaW5nIG9mIGluZGl2aWR1YWwgb3B0aW9uCisgICAg
Ly8gZWxlbWVudHMuICBUaGlzIHByb2JhYmx5IGltcGxpZXMgY2hhbmdlcyB0byBQb3B1cE1lbnVD
bGllbnQuCisgICAgaW50IHRleHRYID0gbWF4KDAsIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRp
bmdMZWZ0KCkgLSBtX3BvcHVwQ2xpZW50LT5jbGllbnRJbnNldExlZnQoKSk7CisgICAgaW50IHRl
eHRZID0gcm93UmVjdC55KCkgKyBpdGVtRm9udC5hc2NlbnQoKSArIChyb3dSZWN0LmhlaWdodCgp
IC0gaXRlbUZvbnQuaGVpZ2h0KCkpIC8gMjsKKyAgICAvLyBQcmVwYXJlIHRleHQgdG8gYmUgZHJh
d24uCiAgICAgU3RyaW5nIGl0ZW1UZXh0ID0gbV9wb3B1cENsaWVudC0+aXRlbVRleHQocm93SW5k
ZXgpOworICAgIGlmIChtX3NldHRpbmdzLnJlc3RyaWN0V2lkdGhPZkxpc3RCb3gpICAvLyB0cnVu
Y2F0ZSBzdHJpbmcgdG8gZml0IGluLgorICAgICAgICBpdGVtVGV4dCA9IFN0cmluZ1RydW5jYXRv
cjo6cmlnaHRUcnVuY2F0ZShpdGVtVGV4dCwgcm93UmVjdC53aWR0aCgpIC0gdGV4dFgsIGl0ZW1G
b250KTsKICAgICB1bnNpZ25lZCBsZW5ndGggPSBpdGVtVGV4dC5sZW5ndGgoKTsKICAgICBjb25z
dCBVQ2hhciogc3RyID0gaXRlbVRleHQuY2hhcmFjdGVycygpOwotCi0gICAgVGV4dFJ1biB0ZXh0
UnVuKHN0ciwgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgaXRlbVRleHQuZGVmYXVsdFdyaXRpbmdEaXJl
Y3Rpb24oKSA9PSBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0KTsKLQotICAgIC8vIEZJWE1FOiBo
dHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcgb2YgaW5kaXZpZHVhbCBv
cHRpb24KLSAgICAvLyBlbGVtZW50cy4gIFRoaXMgcHJvYmFibHkgaW1wbGllcyBjaGFuZ2VzIHRv
IFBvcHVwTWVudUNsaWVudC4KLQotICAgIC8vIERyYXcgdGhlIGl0ZW0gdGV4dAotICAgIGlmIChz
dHlsZS5pc1Zpc2libGUoKSkgewotICAgICAgICBGb250IGl0ZW1Gb250ID0gZ2V0Um93Rm9udChy
b3dJbmRleCk7Ci0gICAgICAgIGludCB0ZXh0WCA9IG1heCgwLCBtX3BvcHVwQ2xpZW50LT5jbGll
bnRQYWRkaW5nTGVmdCgpIC0gbV9wb3B1cENsaWVudC0+Y2xpZW50SW5zZXRMZWZ0KCkpOwotICAg
ICAgICBpbnQgdGV4dFkgPSByb3dSZWN0LnkoKSArIGl0ZW1Gb250LmFzY2VudCgpICsgKHJvd1Jl
Y3QuaGVpZ2h0KCkgLSBpdGVtRm9udC5oZWlnaHQoKSkgLyAyOwotICAgICAgICBnYy0+ZHJhd0Jp
ZGlUZXh0KGl0ZW1Gb250LCB0ZXh0UnVuLCBJbnRQb2ludCh0ZXh0WCwgdGV4dFkpKTsKLSAgICB9
CisgICAgLy8gUHJlcGFyZSB0aGUgZGlyZWN0aW9uYWxpdHkgdG8gZHJhdyB0ZXh0LgorICAgIGJv
b2wgcnRsID0gZmFsc2U7CisgICAgaWYgKG1fc2V0dGluZ3MuaXRlbVRleHREaXJlY3Rpb25hbGl0
eUhpbnQgPT0gUG9wdXBDb250YWluZXJTZXR0aW5nczo6RE9NRWxlbWVudERpcmVjdGlvbikKKyAg
ICAgICAgcnRsID0gc3R5bGUudGV4dERpcmVjdGlvbigpID09IFJUTDsKKyAgICBlbHNlIGlmICht
X3NldHRpbmdzLml0ZW1UZXh0RGlyZWN0aW9uYWxpdHlIaW50ID09CisgICAgICAgICAgICAgUG9w
dXBDb250YWluZXJTZXR0aW5nczo6Rmlyc3RTdHJvbmdEaXJlY3Rpb25hbENoYXJhY3RlckRpcmVj
dGlvbikKKyAgICAgICAgcnRsID0gaXRlbVRleHQuZGVmYXVsdFdyaXRpbmdEaXJlY3Rpb24oKSA9
PSBXVEY6OlVuaWNvZGU6OlJpZ2h0VG9MZWZ0OworICAgIFRleHRSdW4gdGV4dFJ1bihzdHIsIGxl
bmd0aCwgZmFsc2UsIDAsIDAsIHJ0bCk7CisgICAgLy8gRHJhdyB0aGUgaXRlbSB0ZXh0LgorICAg
IGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRleHRSdW4sIEludFBvaW50KHRleHRYLCB0ZXh0
WSkpOwogfQogCiBGb250IFBvcHVwTGlzdEJveDo6Z2V0Um93Rm9udChpbnQgcm93SW5kZXgpCkBA
IC0xMDkwLDEwICsxMTAxLDExIEBAIHZvaWQgUG9wdXBMaXN0Qm94OjpsYXlvdXQoKQogICAgICAg
ICAgICAgYmFzZVdpZHRoID0gbWF4KGJhc2VXaWR0aCwgd2lkdGgpOwogICAgICAgICB9CiAgICAg
ICAgIC8vIEZJWE1FOiBodHRwOi8vYi8xMjEwNDgxIFdlIHNob3VsZCBnZXQgdGhlIHBhZGRpbmcg
b2YgaW5kaXZpZHVhbCBvcHRpb24gZWxlbWVudHMuCi0gICAgICAgIHBhZGRpbmdXaWR0aCA9IG1h
eChwYWRkaW5nV2lkdGgsIAorICAgICAgICBwYWRkaW5nV2lkdGggPSBtYXgocGFkZGluZ1dpZHRo
LAogICAgICAgICAgICAgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ0xlZnQoKSArIG1fcG9w
dXBDbGllbnQtPmNsaWVudFBhZGRpbmdSaWdodCgpKTsKICAgICB9CiAKKyAgICAvLyBDYWxjdWxh
dGUgc2Nyb2xsIGJhciB3aWR0aC4KICAgICBpbnQgd2luZG93SGVpZ2h0ID0gMDsKIAogI2lmIFBM
QVRGT1JNKERBUldJTikKQEAgLTExMjQsMTQgKzExMzYsMjAgQEAgdm9pZCBQb3B1cExpc3RCb3g6
OmxheW91dCgpCiAgICAgaWYgKG1fdmlzaWJsZVJvd3MgPCBudW1JdGVtcygpKQogICAgICAgICBz
Y3JvbGxiYXJXaWR0aCA9IFNjcm9sbGJhclRoZW1lOjpuYXRpdmVUaGVtZSgpLT5zY3JvbGxiYXJU
aGlja25lc3MoKTsKIAotICAgIGludCB3aW5kb3dXaWR0aCA9IGJhc2VXaWR0aCArIHNjcm9sbGJh
cldpZHRoICsgcGFkZGluZ1dpZHRoOwotICAgIGludCBjb250ZW50V2lkdGggPSBiYXNlV2lkdGg7
Ci0KLSAgICBpZiAod2luZG93V2lkdGggPCBtX2Jhc2VXaWR0aCkgeworICAgIGludCB3aW5kb3dX
aWR0aDsKKyAgICBpbnQgY29udGVudFdpZHRoOworICAgIGlmIChtX3NldHRpbmdzLnJlc3RyaWN0
V2lkdGhPZkxpc3RCb3gpIHsKICAgICAgICAgd2luZG93V2lkdGggPSBtX2Jhc2VXaWR0aDsKICAg
ICAgICAgY29udGVudFdpZHRoID0gbV9iYXNlV2lkdGggLSBzY3JvbGxiYXJXaWR0aCAtIHBhZGRp
bmdXaWR0aDsKICAgICB9IGVsc2UgewotICAgICAgICBtX2Jhc2VXaWR0aCA9IGJhc2VXaWR0aDsK
KyAgICAgICAgd2luZG93V2lkdGggPSBiYXNlV2lkdGggKyBzY3JvbGxiYXJXaWR0aCArIHBhZGRp
bmdXaWR0aDsKKyAgICAgICAgY29udGVudFdpZHRoID0gYmFzZVdpZHRoOworCisgICAgICAgIGlm
ICh3aW5kb3dXaWR0aCA8IG1fYmFzZVdpZHRoKSB7CisgICAgICAgICAgICB3aW5kb3dXaWR0aCA9
IG1fYmFzZVdpZHRoOworICAgICAgICAgICAgY29udGVudFdpZHRoID0gbV9iYXNlV2lkdGggLSBz
Y3JvbGxiYXJXaWR0aCAtIHBhZGRpbmdXaWR0aDsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICBtX2Jhc2VXaWR0aCA9IGJhc2VXaWR0aDsKICAgICB9CiAKICAgICByZXNpemUod2luZG93V2lk
dGgsIHdpbmRvd0hlaWdodCk7CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVw
TWVudUNocm9taXVtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Q
b3B1cE1lbnVDaHJvbWl1bS5oCShyZXZpc2lvbiA0Njc4NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Y2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0uaAkod29ya2luZyBjb3B5KQpAQCAtNTIsNyArNTIs
MTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB9OwogCiAgICAgICAgIFBvcHVwSXRl
bShjb25zdCBTdHJpbmcmIGxhYmVsLCBUeXBlIHR5cGUpCi0gICAgICAgICAgICA6IGxhYmVsKGxh
YmVsKSwgdHlwZSh0eXBlKSwgeU9mZnNldCgwKSB7IH0KKyAgICAgICAgICAgIDogbGFiZWwobGFi
ZWwpCisgICAgICAgICAgICAsIHR5cGUodHlwZSkKKyAgICAgICAgICAgICwgeU9mZnNldCgwKQor
ICAgICAgICB7CisgICAgICAgIH0KICAgICAgICAgU3RyaW5nIGxhYmVsOwogICAgICAgICBUeXBl
IHR5cGU7CiAgICAgICAgIGludCB5T2Zmc2V0OyAgLy8geSBvZmZzZXQgb2YgdGhpcyBpdGVtLCBy
ZWxhdGl2ZSB0byB0aGUgdG9wIG9mIHRoZSBwb3B1cC4KQEAgLTg3LDYgKzkxLDI3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgLy8gdGhlIHVzZXIgcHJlc3NlcyBkb3duL3VwIGFycm93
IGtleXMgYW5kIHRoZSBsYXN0L2ZpcnN0IGl0ZW0gaXMKICAgICAgICAgLy8gc2VsZWN0ZWQuCiAg
ICAgICAgIGJvb2wgbG9vcFNlbGVjdGlvbk5hdmlnYXRpb247CisKKyAgICAgICAgLy8gV2hldGVy
IHJlc3RyaWN0IHRoZSB3aWR0aCBvZiB0aGUgUG9wdXBMaXN0Qm94IG9yIG5vdC4gV2UgcmVzdHJp
Y3QKKyAgICAgICAgLy8gdGhlIHdpZHRoIGZvciBhdXRvY29tcGxldGUgcG9wdXAsIGJ1dCBub3Qg
Zm9yIGNvbWJvLWJveGVzCisgICAgICAgIC8vICg8c2VsZWN0PiB0YWcpLgorICAgICAgICBib29s
IHJlc3RyaWN0V2lkdGhPZkxpc3RCb3g7CisKKyAgICAgICAgLy8gQSBoaW50IG9uIHRoZSBkaXNw
bGF5IGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBpdGVtIHRleHQgaW4gcG9wdXAgbWVudS4KKyAgICAg
ICAgLy8KKyAgICAgICAgLy8gV2UgY291bGQgZWl0aGVyIGRpc3BsYXkgdGhlIGl0ZW1zIGluIHRo
ZSBkcm9wLWRvd24gdXNpbmcgaXRzIERPTSBlbGVtZW50J3MKKyAgICAgICAgLy8gZGlyZWN0aW9u
YWxpdHksIG9yIHdlIGNvdWxkIGRpc3BsYXkgdGhlIGl0ZW1zIGluIHRoZSBkcm9wLWRvd24gdXNp
bmcgaGV1cmlzdGljczoKKyAgICAgICAgLy8gc3VjaCBhcyBpbiBpdHMgZmlyc3Qgc3Ryb25nIGRp
cmVjdGlvbmFsaXR5IGNoYXJhY3RlcidzIGRpcmVjdGlvbi4KKyAgICAgICAgLy8gUGxlYXNlIHJl
ZmVyIHRvIHRoZSBkaXNjdXNzaW9uIChlc3BlY2lhbGx5IGNvbW1lbnQgIzcgYW5kICMxMCkgaW4K
KyAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODg5
IGZvciBkZXRhaWwuCisgICAgICAgIGVudW0gRGlyZWN0aW9uYWxpdHlIaW50IHsKKyAgICAgICAg
ICAgIC8vIFVzZSB0aGUgRE9NIGVsZW1lbnQncyBkaXJlY3Rpb25hbGl0eSB0byBkaXNwbGF5IHRo
ZSBpdGVtIHRleHQgaW4gcG9wdXAgbWVudS4KKyAgICAgICAgICAgIERPTUVsZW1lbnREaXJlY3Rp
b24sCisgICAgICAgICAgICAvLyBVc2UgdGhlIGl0ZW0gdGV4dCdzIGZpcnN0IHN0cm9uZy1kaXJl
Y3Rpb25hbCBjaGFyYWN0ZXIncyBkaXJlY3Rpb25hbGl0eQorICAgICAgICAgICAgLy8gdG8gZGlz
cGxheSB0aGUgaXRlbSB0ZXh0IGluIHBvcHVwIG1lbnUuCisgICAgICAgICAgICBGaXJzdFN0cm9u
Z0RpcmVjdGlvbmFsQ2hhcmFjdGVyRGlyZWN0aW9uLAorICAgICAgICB9OworICAgICAgICBEaXJl
Y3Rpb25hbGl0eUhpbnQgaXRlbVRleHREaXJlY3Rpb25hbGl0eUhpbnQ7CiAgICAgfTsKIAogICAg
IGNsYXNzIFBvcHVwQ29udGFpbmVyIDogcHVibGljIEZyYW1lbGVzc1Njcm9sbFZpZXcgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>38381</attachid>
            <date>2009-08-21 11:03:05 -0700</date>
            <delta_ts>2009-08-21 11:03:05 -0700</delta_ts>
            <desc>patch w/ manual test</desc>
            <filename>27889.v7</filename>
            <type>text/plain</type>
            <size>11476</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NzU4MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDcgQEAKKzIwMDktMDgtMTEgIFhpYW9tZWkgSmkgIDx4amlAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCAi
Q2hyb21pdW0gUlRMIGF1dG9jb21wbGV0ZSBwb3B1cCBpcyBub3QgbGF5b3V0IGNvcnJlY3RseSIu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzg4OQor
CisgICAgICAgIFRoZSBjb21wbGV0ZSBmaXggb2YgdGhlIGlzc3VlIGNvbnNpc3RzIDIgcGFydHM6
IHRoZSBwYXRjaCBpbiB3ZWJraXQKKyAgICAgICAgYW5kIHRoZSBwYXRjaCBpbiBDaHJvbWl1bSdz
IG93biBjb2RlLgorCisgICAgICAgIFRoaXMgd2Via2l0IHBhdGNoIG9ubHkgYWZmZWN0cyBDaHJv
bWl1bSBhdXRvZmlsbC4gSXQKKyAgICAgICAgMS4gaW50cm9kdWNlcyBhIG5ldyBmbGFnIGluIFdl
YkNvcmU6OlBvcHVwQ29udGFpbmVyU2V0dGluZ3MgdG8KKyAgICAgICAgICAgZGlzdGluZ3Vpc2gg
d2hldGhlciB0aGUgd2lkdGggb2YgdGhlIGRyb3AtZG93biBzaG91bGQgYmUgcmVzdHJpY3RlZAor
ICAgICAgICAgICBvciBub3QuCisgICAgICAgICAgIEZvciBhdXRvZmlsbCwgdGhlIHdpZHRoIG9m
IHRoZSBkcm9wLWRvd24gaXMgcmVzdHJpY3RlZCB0bworICAgICAgICAgICBiZSB0aGUgc2FtZSBh
cyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVsZCAodGhlIG5ldyBmbGFnIGlzIHNldCBpbgorICAgICAg
ICAgICBDaHJvbWl1bSdzIG93biBjb2RlKS4gQnV0IHdpZHRoIGlzIG5vdCByZXN0cmljdGVkIGZv
ciA8c2VsZWN0PiAoc2FtZSBhcyBiZWZvcmUpLgorICAgICAgICAyLiBpbnRyb2R1Y2UgYSBuZXcg
ZmxhZyBpbiBXZWJDb3JlOjpQb3BDb250YWluZXJTZXR0aW5ncyB0bworICAgICAgICAgICBpbmRp
Y2F0ZSB3aGF0IGhldXJpc3RpY3MgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0ZXh0IGluIGRyb3At
ZG93biBtZW51LgorICAgICAgICAgICBGb3IgYXV0b2ZpbGwsIHVzZSBkcm9wLWRvd24gaXRlbSdz
IGRpcmVjdGlvbmFsaXR5IHRvIGRpc3BsYXkgZHJvcC1kb3duIGl0ZW1zLgorICAgICAgICAgICBQ
cmV2aW91c2x5LCBkcm9wLWRvd24gaXRlbSBpcyBkaXNwbGF5ZWQgaW4gdGhlIGl0cyBmaXJzdCBz
dHJvbmcKKyAgICAgICAgICAgZGlyZWN0aW9uYWwgY2hhcmFjdGVyJ3MgZGlyZWN0aW9uYWxpdHku
CisgICAgICAgICAgIChkcm9wLWRvd24gaXRlbSdzIGRpcmVjdGlvbmFsaXR5IGlzIHNldCBpbiBD
aHJvbWl1bSdzIG93biBjb2RlLgorICAgICAgICAgICBJdCBpcyBzZXQgdGhlIHNhbWUgYXMgdGhl
IGRpcmVjdGlvbmFsaXR5IG9mIHRoZSBlbGVtZW50LiAKKyAgICAgICAgICAgRm9yIGF1dG9maWxs
LCBpdCBpcyB0aGUgc2FtZSBkaXJlY3Rpb25hbGl0eSBhcyB0aGF0IG9mIHRoZSBpbnB1dCBmaWVs
ZC4pCisgICAgICAgICAgIEZvciA8c2VsZWN0Piwgc3RpbGwgdXNlIHRoZSB0ZXh0J3MgZmlyc3Qg
c3Ryb25nIGRpcmVjdGlvbmFsIGNoYXJhY3RlcidzCisgICAgICAgICAgIGRpcmVjdGlvbmFsaXR5
IHRvIGRpc3BsYXkgdGhlIHRleHQuCisKKworICAgICAgICBTaW5jZSB0aGUgcGF0Y2ggb25seSBh
ZmZlY3RzIHRoZSBjaHJvbWl1bSBjbGllbnQsIG5vdCB3ZWJjb3JlIHBhcnQgb3IKKyAgICAgICAg
b3RoZXIgY2xpZW50cy4gTm8gYXV0b21hdGljIHRlc3RzIGlzIHBvc3NpYmxlLgorCisgICAgICAg
ICogbWFudWFsLXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJvbWl1
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjopOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBMaXN0
Qm94OjpwYWludFJvdyk6IElmIGxpc3QgYm94IHdpZHRoIGlzIHJlc3RyaWN0ZWQgYW5kIAorICAg
ICAgICBhbiBpdGVtIGlzIGxvbmdlciB0byBmaXQgaW4gYSBsaXN0IGJveCwgdHJ1bmNhdGUgaXQg
YW5kIGRyYXcgcGFydCBvZiB0aGUgdGV4dCBhbmQgYXBwZW5kIGVsbGlwc2VzLgorICAgICAgICAo
V2ViQ29yZTo6UG9wdXBMaXN0Qm94OjpsYXlvdXQpOiBSZXN0cmljdCB3aWR0aCBvZiBsaXN0IGJv
eCBpZiBhcHBsaWNhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNo
cm9taXVtLmg6IAorICAgICAgICAoV2ViQ29yZTo6UG9wdXBJdGVtOjpQb3B1cEl0ZW0pOiBzdHls
ZSBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpQb3B1cENvbnRhaW5lclNldHRpbmdzOjopOiBB
ZGQgMiBuZXcgZmxhZ3MgaW4gUG9wdXBDb250YWluZXJTZXR0aW5nIHRvIAorICAgICAgICBkaXN0
aW5ndWlzaCB3aGV0aGVyIHRvIHJlc3RyaWN0IHdpZHRoIG9mIGxpc3QgYm94IGFuZCAKKyAgICAg
ICAgaW4gd2hhdCBkaXJlY3Rpb25hbGl0eSB0byBkaXNwbGF5IHRoZSB0ZXh0IGluIGRyb3AtZG93
bi4KKwogMjAwOS0wOC0yMCAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKGJ1aWxkIGZpeCkuCkluZGV4OiBXZWJDb3Jl
L21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL21hbnVhbC10ZXN0cy9hdXRvZmlsbC1wb3B1cC13aWR0
aC1hbmQtaXRlbS1kaXJlY3Rpb24uaHRtbAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUvbWFudWFs
LXRlc3RzL2F1dG9maWxsLXBvcHVwLXdpZHRoLWFuZC1pdGVtLWRpcmVjdGlvbi5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACivvu788aHRtbD4KKzxoZWFkPgorPE1FVEEgSFRUUC1F
UVVJVj0iQ09OVEVOVC1UWVBFIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPgor
PHRpdGxlPgorVGVzdCB0aGUgcG9wdXAgbGlzdCBib3gncyB3aWR0aCBhbmQgaXRzIGl0ZW1zJyBk
aXNwbGF5IGRpcmVjdGlvbmFsaXR5Cis8L3RpdGxlPgorPC9oZWFkPgorPGJvZHk+Cis8cD4KK0F1
dG9maWxsIHBvcHVwIGxpc3QgYm94IHNob3VsZCBoYXZlIHRoZSBzYW1lIHdpZHRoIGFzIGl0cyBp
bnB1dCBmaWVsZCdzIHdpZHRoLgorSWYgdGhlIHN1Ym1pdHRlZCBpbnB1dCB0ZXh0IGlzIGxvbmdl
ciwgaXQgd2lsbCBiZSB0cnVuY2F0ZWQgdG8gZml0IGluIHRoZSAKK2lucHV0IGZpZWxkJ3Mgd2lk
dGgKKzxwPiBUcnkgdHlwZSBzb21lIGxvbmcgdGV4dCBpbiB0aGUgIkxhc3QgbmFtZSIgaW5wdXQg
Ym94LAorICAgU2F5ICJhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QgYWJjZCIuCit0aGVuIGNsaWNr
ICJTdWJtaXQiLiBPcGVuIHRoZSBmaWxlIGFnYWluLCBhbmQgdHlwZSB0aGUgZmlyc3QgbGV0dGVy
ICJhIiwKK3RoZSBmb3JtIGF1dG9maWxsIHBvcC11cCBzaG91bGQgc2hvdyB1cCBub3cgd2l0aCB0
aGUgd2lkdGggdGhlIHNhbWUgYXMKK3RoZSB3aWR0aCBvZiB0aGUgaW5wdXQgZmllbGQsIGFuZCB0
aGUgdGV4dCAiYWJjZCBhYmNkIGFiY2QgYWJjZCBhYmNkIGFiY2QiIGdvdAordHJ1bmNhdGVkIHRv
IGZpdCBpbi4KKzxwPiBUcnkgdHlwZSB0aGUgZm9sbG93aW5nIHRleHQgaW50byB0aGUgIkZpcnN0
IG5hbWUiIGFuZCAiTGFzdCBuYW1lIi4KKzx1bD4KKzxsaT5hYmNkIGVmZworPGxpPtep16nXqdep
16nXqSDXoNeg16DXoNeg16Ag15HXkdeR15HXkdeR15HXkdeRCis8bGk+YWJjINeQ15DXkCBkZWZn
aGlqa2xtbm9wcQorPGxpPteQ15DXkNeQ15DXkNeQ15DXkNeQICBhYmNkZWZnaGlqa2xtbiDXkdeR
15HXkdeR15HXkQorPGxpPmhpIQorPGxpPteQ15AhCis8L3VsPgorVGhleSBzaG91bGQgYmUgZGlz
cGxheWVkIGFzIFJUTCBpbiB0aGUgcG9wdXAgb2YgIkZpcnN0IG5hbWUiLCAKK2FuZCBzaG91bGQg
YmUgZGlzcGxheWVkIGFzIExUUiBpbiB0aGUgcG9wdXAgb2YgdGhlICJMYXN0IG5hbWUiLgorPGJy
PgorPGZvcm0gYWN0aW9uPSJmb3JtX2FjdGlvbi5hc3AiIG1ldGhvZD0iZ2V0Ij4KKyAgRmlyc3Qg
bmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImZuYW1lIiBkaXI9InJ0bCIvPjxiciAvPgor
ICBMYXN0IG5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJsbmFtZSIgLz48YnIgLz4KKyAg
PGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgLz4KKzwvZm9ybT4KKzwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21p
dW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51
Q2hyb21pdW0uY3BwCShyZXZpc2lvbiA0NzU4MikKKysrIFdlYkNvcmUvcGxhdGZvcm0vY2hyb21p
dW0vUG9wdXBNZW51Q2hyb21pdW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MCw2ICs1MCw3IEBA
CiAjaW5jbHVkZSAiUG9wdXBNZW51LmgiCiAjaW5jbHVkZSAiUmVuZGVyVGhlbWUuaCIKICNpbmNs
dWRlICJTY3JvbGxiYXJUaGVtZS5oIgorI2luY2x1ZGUgIlN0cmluZ1RydW5jYXRvci5oIgogI2lu
Y2x1ZGUgIlN5c3RlbVRpbWUuaCIKIAogI2luY2x1ZGUgPHd0Zi9DdXJyZW50VGltZS5oPgpAQCAt
NzIsMTAgKzczLDEzIEBAIHN0YXRpYyBjb25zdCBUaW1lU3RhbXAga1R5cGVBaGVhZFRpbWVvdXQK
IC8vIFRoZSBzZXR0aW5ncyB1c2VkIGZvciB0aGUgZHJvcCBkb3duIG1lbnUuCiAvLyBUaGlzIGlz
IHRoZSBkZWxlZ2F0ZSB1c2VkIGlmIG5vbmUgaXMgcHJvdmlkZWQuCiBzdGF0aWMgY29uc3QgUG9w
dXBDb250YWluZXJTZXR0aW5ncyBkcm9wRG93blNldHRpbmdzID0gewotICAgIHRydWUsIC8vIGZv
Y3VzT25TaG93Ci0gICAgdHJ1ZSwgLy8gc2V0VGV4dE9uSW5kZXhDaGFuZ2UKLSAgICB0cnVlLCAv
LyBhY2NlcHRPbkFiYW5kb24KLSAgICBmYWxzZSAvLyBsb29wU2VsZWN0aW9uTmF2aWdhdGlvbgor
ICAgIHRydWUsICAgLy8gZm9jdXNPblNob3cKKyAgICB0cnVlLCAgIC8vIHNldFRleHRPbkluZGV4
Q2hhbmdlCisgICAgdHJ1ZSwgICAvLyBhY2NlcHRPbkFiYW5kb24KKyAgICBmYWxzZSwgIC8vIGxv
b3BTZWxlY3Rpb25OYXZpZ2F0aW9uCisgICAgZmFsc2UsICAvLyByZXN0cmljdFdpZHRoT2ZMaXN0
Qm94CisgICAgLy8gZGlzcGxheSBpdGVtIHRleHQgaW4gaXRzIGZpcnN0IHN0cm9uZyBkaXJlY3Rp
b25hbCBjaGFyYWN0ZXIncyBkaXJlY3Rpb25hbGl0eS4KKyAgICBQb3B1cENvbnRhaW5lclNldHRp
bmdzOjpGaXJzdFN0cm9uZ0RpcmVjdGlvbmFsQ2hhcmFjdGVyRGlyZWN0aW9uLAogfTsKIAogLy8g
VGhpcyBjbGFzcyB1c2VzIFdlYkNvcmUgY29kZSB0byBwYWludCBhbmQgaGFuZGxlIGV2ZW50cyBm
b3IgYSBkcm9wLWRvd24gbGlzdApAQCAtODE4LDI1ICs4MjIsMzIgQEAgdm9pZCBQb3B1cExpc3RC
b3g6OnBhaW50Um93KEdyYXBoaWNzQ29udAogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIAor
ICAgIGlmICghc3R5bGUuaXNWaXNpYmxlKCkpCisgICAgICAgIHJldHVybjsKKwogICAgIGdjLT5z
ZXRGaWxsQ29sb3IodGV4dENvbG9yKTsKIAotICAgIC8vIEJ1bmNoIG9mIHNoaXQgdG8gZGVhbCB3
aXRoIFJUTCB0ZXh0Li4uCisgICAgRm9udCBpdGVtRm9udCA9IGdldFJvd0ZvbnQocm93SW5kZXgp
OworICAgIC8vIEZJWE1FOiBodHRwOi8vY3JidWcuY29tLzE5ODcyIFdlIHNob3VsZCBnZXQgdGhl
IHBhZGRpbmcgb2YgaW5kaXZpZHVhbCBvcHRpb24KKyAgICAvLyBlbGVtZW50cy4gIFRoaXMgcHJv
YmFibHkgaW1wbGllcyBjaGFuZ2VzIHRvIFBvcHVwTWVudUNsaWVudC4KKyAgICBpbnQgdGV4dFgg
PSBtYXgoMCwgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGluZ0xlZnQoKSAtIG1fcG9wdXBDbGll
bnQtPmNsaWVudEluc2V0TGVmdCgpKTsKKyAgICBpbnQgdGV4dFkgPSByb3dSZWN0LnkoKSArIGl0
ZW1Gb250LmFzY2VudCgpICsgKHJvd1JlY3QuaGVpZ2h0KCkgLSBpdGVtRm9udC5oZWlnaHQoKSkg
LyAyOworICAgIC8vIFByZXBhcmUgdGV4dCB0byBiZSBkcmF3bi4KICAgICBTdHJpbmcgaXRlbVRl
eHQgPSBtX3BvcHVwQ2xpZW50LT5pdGVtVGV4dChyb3dJbmRleCk7CisgICAgaWYgKG1fc2V0dGlu
Z3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveCkgIC8vIHRydW5jYXRlIHN0cmluZyB0byBmaXQgaW4u
CisgICAgICAgIGl0ZW1UZXh0ID0gU3RyaW5nVHJ1bmNhdG9yOjpyaWdodFRydW5jYXRlKGl0ZW1U
ZXh0LCByb3dSZWN0LndpZHRoKCkgLSB0ZXh0WCwgaXRlbUZvbnQpOwogICAgIHVuc2lnbmVkIGxl
bmd0aCA9IGl0ZW1UZXh0Lmxlbmd0aCgpOwogICAgIGNvbnN0IFVDaGFyKiBzdHIgPSBpdGVtVGV4
dC5jaGFyYWN0ZXJzKCk7Ci0KLSAgICBUZXh0UnVuIHRleHRSdW4oc3RyLCBsZW5ndGgsIGZhbHNl
LCAwLCAwLCBpdGVtVGV4dC5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigpID09IFdURjo6VW5pY29k
ZTo6UmlnaHRUb0xlZnQpOwotCi0gICAgLy8gRklYTUU6IGh0dHA6Ly9iLzEyMTA0ODEgV2Ugc2hv
dWxkIGdldCB0aGUgcGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbgotICAgIC8vIGVsZW1lbnRz
LiAgVGhpcyBwcm9iYWJseSBpbXBsaWVzIGNoYW5nZXMgdG8gUG9wdXBNZW51Q2xpZW50LgotCi0g
ICAgLy8gRHJhdyB0aGUgaXRlbSB0ZXh0Ci0gICAgaWYgKHN0eWxlLmlzVmlzaWJsZSgpKSB7Ci0g
ICAgICAgIEZvbnQgaXRlbUZvbnQgPSBnZXRSb3dGb250KHJvd0luZGV4KTsKLSAgICAgICAgaW50
IHRleHRYID0gbWF4KDAsIG1fcG9wdXBDbGllbnQtPmNsaWVudFBhZGRpbmdMZWZ0KCkgLSBtX3Bv
cHVwQ2xpZW50LT5jbGllbnRJbnNldExlZnQoKSk7Ci0gICAgICAgIGludCB0ZXh0WSA9IHJvd1Jl
Y3QueSgpICsgaXRlbUZvbnQuYXNjZW50KCkgKyAocm93UmVjdC5oZWlnaHQoKSAtIGl0ZW1Gb250
LmhlaWdodCgpKSAvIDI7Ci0gICAgICAgIGdjLT5kcmF3QmlkaVRleHQoaXRlbUZvbnQsIHRleHRS
dW4sIEludFBvaW50KHRleHRYLCB0ZXh0WSkpOwotICAgIH0KKyAgICAvLyBQcmVwYXJlIHRoZSBk
aXJlY3Rpb25hbGl0eSB0byBkcmF3IHRleHQuCisgICAgYm9vbCBydGwgPSBmYWxzZTsKKyAgICBp
ZiAobV9zZXR0aW5ncy5pdGVtVGV4dERpcmVjdGlvbmFsaXR5SGludCA9PSBQb3B1cENvbnRhaW5l
clNldHRpbmdzOjpET01FbGVtZW50RGlyZWN0aW9uKQorICAgICAgICBydGwgPSBzdHlsZS50ZXh0
RGlyZWN0aW9uKCkgPT0gUlRMOworICAgIGVsc2UgaWYgKG1fc2V0dGluZ3MuaXRlbVRleHREaXJl
Y3Rpb25hbGl0eUhpbnQgPT0KKyAgICAgICAgICAgICBQb3B1cENvbnRhaW5lclNldHRpbmdzOjpG
aXJzdFN0cm9uZ0RpcmVjdGlvbmFsQ2hhcmFjdGVyRGlyZWN0aW9uKQorICAgICAgICBydGwgPSBp
dGVtVGV4dC5kZWZhdWx0V3JpdGluZ0RpcmVjdGlvbigpID09IFdURjo6VW5pY29kZTo6UmlnaHRU
b0xlZnQ7CisgICAgVGV4dFJ1biB0ZXh0UnVuKHN0ciwgbGVuZ3RoLCBmYWxzZSwgMCwgMCwgcnRs
KTsKKyAgICAvLyBEcmF3IHRoZSBpdGVtIHRleHQuCisgICAgZ2MtPmRyYXdCaWRpVGV4dChpdGVt
Rm9udCwgdGV4dFJ1biwgSW50UG9pbnQodGV4dFgsIHRleHRZKSk7CiB9CiAKIEZvbnQgUG9wdXBM
aXN0Qm94OjpnZXRSb3dGb250KGludCByb3dJbmRleCkKQEAgLTEwOTEsMTAgKzExMDIsMTEgQEAg
dm9pZCBQb3B1cExpc3RCb3g6OmxheW91dCgpCiAgICAgICAgICAgICBiYXNlV2lkdGggPSBtYXgo
YmFzZVdpZHRoLCB3aWR0aCk7CiAgICAgICAgIH0KICAgICAgICAgLy8gRklYTUU6IGh0dHA6Ly9i
LzEyMTA0ODEgV2Ugc2hvdWxkIGdldCB0aGUgcGFkZGluZyBvZiBpbmRpdmlkdWFsIG9wdGlvbiBl
bGVtZW50cy4KLSAgICAgICAgcGFkZGluZ1dpZHRoID0gbWF4KHBhZGRpbmdXaWR0aCwgCisgICAg
ICAgIHBhZGRpbmdXaWR0aCA9IG1heChwYWRkaW5nV2lkdGgsCiAgICAgICAgICAgICBtX3BvcHVw
Q2xpZW50LT5jbGllbnRQYWRkaW5nTGVmdCgpICsgbV9wb3B1cENsaWVudC0+Y2xpZW50UGFkZGlu
Z1JpZ2h0KCkpOwogICAgIH0KIAorICAgIC8vIENhbGN1bGF0ZSBzY3JvbGwgYmFyIHdpZHRoLgog
ICAgIGludCB3aW5kb3dIZWlnaHQgPSAwOwogCiAjaWYgUExBVEZPUk0oREFSV0lOKQpAQCAtMTEy
NSwxNCArMTEzNywyMCBAQCB2b2lkIFBvcHVwTGlzdEJveDo6bGF5b3V0KCkKICAgICBpZiAobV92
aXNpYmxlUm93cyA8IG51bUl0ZW1zKCkpCiAgICAgICAgIHNjcm9sbGJhcldpZHRoID0gU2Nyb2xs
YmFyVGhlbWU6Om5hdGl2ZVRoZW1lKCktPnNjcm9sbGJhclRoaWNrbmVzcygpOwogCi0gICAgaW50
IHdpbmRvd1dpZHRoID0gYmFzZVdpZHRoICsgc2Nyb2xsYmFyV2lkdGggKyBwYWRkaW5nV2lkdGg7
Ci0gICAgaW50IGNvbnRlbnRXaWR0aCA9IGJhc2VXaWR0aDsKLQotICAgIGlmICh3aW5kb3dXaWR0
aCA8IG1fYmFzZVdpZHRoKSB7CisgICAgaW50IHdpbmRvd1dpZHRoOworICAgIGludCBjb250ZW50
V2lkdGg7CisgICAgaWYgKG1fc2V0dGluZ3MucmVzdHJpY3RXaWR0aE9mTGlzdEJveCkgewogICAg
ICAgICB3aW5kb3dXaWR0aCA9IG1fYmFzZVdpZHRoOwogICAgICAgICBjb250ZW50V2lkdGggPSBt
X2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGluZ1dpZHRoOwogICAgIH0gZWxzZSB7
Ci0gICAgICAgIG1fYmFzZVdpZHRoID0gYmFzZVdpZHRoOworICAgICAgICB3aW5kb3dXaWR0aCA9
IGJhc2VXaWR0aCArIHNjcm9sbGJhcldpZHRoICsgcGFkZGluZ1dpZHRoOworICAgICAgICBjb250
ZW50V2lkdGggPSBiYXNlV2lkdGg7CisKKyAgICAgICAgaWYgKHdpbmRvd1dpZHRoIDwgbV9iYXNl
V2lkdGgpIHsKKyAgICAgICAgICAgIHdpbmRvd1dpZHRoID0gbV9iYXNlV2lkdGg7CisgICAgICAg
ICAgICBjb250ZW50V2lkdGggPSBtX2Jhc2VXaWR0aCAtIHNjcm9sbGJhcldpZHRoIC0gcGFkZGlu
Z1dpZHRoOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIG1fYmFzZVdpZHRoID0gYmFzZVdp
ZHRoOwogICAgIH0KIAogICAgIHJlc2l6ZSh3aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0KTsKSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vUG9wdXBNZW51Q2hyb21pdW0uaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL1BvcHVwTWVudUNocm9taXVtLmgJKHJl
dmlzaW9uIDQ3NTgyKQorKysgV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9Qb3B1cE1lbnVDaHJv
bWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Miw3ICs1MiwxMSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIH07CiAKICAgICAgICAgUG9wdXBJdGVtKGNvbnN0IFN0cmluZyYgbGFiZWws
IFR5cGUgdHlwZSkKLSAgICAgICAgICAgIDogbGFiZWwobGFiZWwpLCB0eXBlKHR5cGUpLCB5T2Zm
c2V0KDApIHsgfQorICAgICAgICAgICAgOiBsYWJlbChsYWJlbCkKKyAgICAgICAgICAgICwgdHlw
ZSh0eXBlKQorICAgICAgICAgICAgLCB5T2Zmc2V0KDApCisgICAgICAgIHsKKyAgICAgICAgfQog
ICAgICAgICBTdHJpbmcgbGFiZWw7CiAgICAgICAgIFR5cGUgdHlwZTsKICAgICAgICAgaW50IHlP
ZmZzZXQ7ICAvLyB5IG9mZnNldCBvZiB0aGlzIGl0ZW0sIHJlbGF0aXZlIHRvIHRoZSB0b3Agb2Yg
dGhlIHBvcHVwLgpAQCAtODMsMTAgKzg3LDMwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgLy8gcmVnYXJkbGVzcyBvZiB0aGlzIHNldHRpbmcuCiAgICAgICAgIGJvb2wgYWNjZXB0T25B
YmFuZG9uOwogCi0gICAgICAgIC8vIFdoZXRoZXIgdGhlIHdlIHNob3VsZCBtb3ZlIHRoZSBzZWxl
Y3Rpb24gdG8gdGhlIGZpcnN0L2xhc3QgaXRlbSB3aGVuCisgICAgICAgIC8vIFdoZXRoZXIgd2Ug
c2hvdWxkIG1vdmUgdGhlIHNlbGVjdGlvbiB0byB0aGUgZmlyc3QvbGFzdCBpdGVtIHdoZW4KICAg
ICAgICAgLy8gdGhlIHVzZXIgcHJlc3NlcyBkb3duL3VwIGFycm93IGtleXMgYW5kIHRoZSBsYXN0
L2ZpcnN0IGl0ZW0gaXMKICAgICAgICAgLy8gc2VsZWN0ZWQuCiAgICAgICAgIGJvb2wgbG9vcFNl
bGVjdGlvbk5hdmlnYXRpb247CisKKyAgICAgICAgLy8gV2hldGhlciB3ZSBzaG91bGQgcmVzdHJp
Y3QgdGhlIHdpZHRoIG9mIHRoZSBQb3B1cExpc3RCb3ggb3Igbm90LgorICAgICAgICAvLyBBdXRv
Y29tcGxldGUgcG9wdXBzIGFyZSByZXN0cmljdGVkLCBjb21iby1ib3hlcyAoc2VsZWN0IHRhZ3Mp
IGFyZW4ndC4KKyAgICAgICAgYm9vbCByZXN0cmljdFdpZHRoT2ZMaXN0Qm94OworCisgICAgICAg
IC8vIEEgaGludCBvbiB0aGUgZGlzcGxheSBkaXJlY3Rpb25hbGl0eSBvZiB0aGUgaXRlbSB0ZXh0
IGluIHBvcHVwIG1lbnUuCisgICAgICAgIC8vCisgICAgICAgIC8vIFdlIGNvdWxkIGVpdGhlciBk
aXNwbGF5IHRoZSBpdGVtcyBpbiB0aGUgZHJvcC1kb3duIHVzaW5nIGl0cyBET00gZWxlbWVudCdz
CisgICAgICAgIC8vIGRpcmVjdGlvbmFsaXR5LCBvciB3ZSBjb3VsZCBkaXNwbGF5IHRoZSBpdGVt
cyBpbiB0aGUgZHJvcC1kb3duIHVzaW5nIGhldXJpc3RpY3M6CisgICAgICAgIC8vIHN1Y2ggYXMg
aW4gaXRzIGZpcnN0IHN0cm9uZyBkaXJlY3Rpb25hbGl0eSBjaGFyYWN0ZXIncyBkaXJlY3Rpb24u
CisgICAgICAgIC8vIFBsZWFzZSByZWZlciB0byB0aGUgZGlzY3Vzc2lvbiAoZXNwZWNpYWxseSBj
b21tZW50ICM3IGFuZCAjMTApIGluCisgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yNzg4OSBmb3IgZGV0YWlscy4KKyAgICAgICAgZW51bSBEaXJlY3Rp
b25hbGl0eUhpbnQgeworICAgICAgICAgICAgLy8gVXNlIHRoZSBET00gZWxlbWVudCdzIGRpcmVj
dGlvbmFsaXR5IHRvIGRpc3BsYXkgdGhlIGl0ZW0gdGV4dCBpbiBwb3B1cCBtZW51LgorICAgICAg
ICAgICAgRE9NRWxlbWVudERpcmVjdGlvbiwKKyAgICAgICAgICAgIC8vIFVzZSB0aGUgaXRlbSB0
ZXh0J3MgZmlyc3Qgc3Ryb25nLWRpcmVjdGlvbmFsIGNoYXJhY3RlcidzIGRpcmVjdGlvbmFsaXR5
CisgICAgICAgICAgICAvLyB0byBkaXNwbGF5IHRoZSBpdGVtIHRleHQgaW4gcG9wdXAgbWVudS4K
KyAgICAgICAgICAgIEZpcnN0U3Ryb25nRGlyZWN0aW9uYWxDaGFyYWN0ZXJEaXJlY3Rpb24sCisg
ICAgICAgIH07CisgICAgICAgIERpcmVjdGlvbmFsaXR5SGludCBpdGVtVGV4dERpcmVjdGlvbmFs
aXR5SGludDsKICAgICB9OwogCiAgICAgY2xhc3MgUG9wdXBDb250YWluZXIgOiBwdWJsaWMgRnJh
bWVsZXNzU2Nyb2xsVmlldyB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>